Compare commits
47 Commits
Author | SHA1 | Date | |
---|---|---|---|
|
ef1a16516f | ||
|
f570ed36e8 | ||
|
8bcd23c0ea | ||
|
b3d6d582d9 | ||
|
bfcda76819 | ||
|
6a48143b20 | ||
|
05ca174df8 | ||
|
a7349d574d | ||
|
3e0a048e28 | ||
|
54031da417 | ||
|
fcedefe815 | ||
|
c35a27eda6 | ||
|
b6b8fa27d5 | ||
|
59a0aae887 | ||
|
0698ce07fd | ||
|
77e4dd6c41 | ||
|
db90eddf31 | ||
|
a8f060578a | ||
|
8621b66203 | ||
|
cff6be6af0 | ||
|
57b4518b61 | ||
|
de13191674 | ||
|
6b609a1877 | ||
|
901c536974 | ||
|
f719caab4b | ||
|
6a1e5e9e40 | ||
|
4b30c22cfb | ||
|
6384d0ea8c | ||
|
77f832447e | ||
|
d7eadd03f2 | ||
|
c7b55f6edb | ||
|
48b98eb55a | ||
|
7d318a688c | ||
|
93b5b98f23 | ||
|
f27737158c | ||
|
63bcb03abd | ||
|
660c91e230 | ||
|
594a8c9494 | ||
|
83dee56266 | ||
|
4e2f3ad68a | ||
|
36d1293759 | ||
|
6ba75c93e4 | ||
|
ef8074b9cb | ||
|
ad5d15b0c3 | ||
|
aa7d5e4586 | ||
|
e2c0fda4c9 | ||
|
b42105fabe |
43
.github/workflows/build-linux.yml
vendored
Normal file
43
.github/workflows/build-linux.yml
vendored
Normal file
@@ -0,0 +1,43 @@
|
||||
# This workflow will do a clean install of node dependencies, build the source code and run tests across different versions of node
|
||||
# For more information see: https://help.github.com/actions/language-and-framework-guides/using-nodejs-with-github-actions
|
||||
|
||||
name: Linux build
|
||||
|
||||
on:
|
||||
release:
|
||||
types:
|
||||
- created
|
||||
|
||||
jobs:
|
||||
build:
|
||||
|
||||
runs-on: ubuntu-latest
|
||||
|
||||
strategy:
|
||||
matrix:
|
||||
node-version: [14.x]
|
||||
# See supported Node.js release schedule at https://nodejs.org/en/about/releases/
|
||||
|
||||
steps:
|
||||
- uses: actions/checkout@v2
|
||||
- uses: actions/setup-node@v2
|
||||
with:
|
||||
node-version: ${{ matrix.node-version }}
|
||||
- run: cd app && yarn
|
||||
- run: cd app && yarn build:all
|
||||
- uses: shogo82148/actions-upload-release-asset@v1
|
||||
with:
|
||||
upload_url: ${{ github.event.release.upload_url }}
|
||||
asset_path: "build/*.zip"
|
||||
- uses: shogo82148/actions-upload-release-asset@v1
|
||||
with:
|
||||
upload_url: ${{ github.event.release.upload_url }}
|
||||
asset_path: "build/*.snap"
|
||||
- uses: shogo82148/actions-upload-release-asset@v1
|
||||
with:
|
||||
upload_url: ${{ github.event.release.upload_url }}
|
||||
asset_path: "build/*.deb"
|
||||
- uses: shogo82148/actions-upload-release-asset@v1
|
||||
with:
|
||||
upload_url: ${{ github.event.release.upload_url }}
|
||||
asset_path: "build/*.AppImage"
|
42
.github/workflows/build-macos.yml
vendored
Normal file
42
.github/workflows/build-macos.yml
vendored
Normal file
@@ -0,0 +1,42 @@
|
||||
# This workflow will do a clean install of node dependencies, build the source code and run tests across different versions of node
|
||||
# For more information see: https://help.github.com/actions/language-and-framework-guides/using-nodejs-with-github-actions
|
||||
|
||||
name: macOS build
|
||||
|
||||
on:
|
||||
release:
|
||||
types:
|
||||
- created
|
||||
|
||||
jobs:
|
||||
build:
|
||||
|
||||
runs-on: macos-latest
|
||||
environment:
|
||||
name: build
|
||||
env:
|
||||
APPLEID: ${{ secrets.APPLEID }}
|
||||
APPLEIDPASS: ${{ secrets.APPLEIDPASS }}
|
||||
CSC_KEY_PASSWORD: ${{ secrets.CSC_KEY_PASSWORD }}
|
||||
CSC_LINK: ${{ secrets.CSC_LINK}}
|
||||
|
||||
strategy:
|
||||
matrix:
|
||||
node-version: [14.x]
|
||||
# See supported Node.js release schedule at https://nodejs.org/en/about/releases/
|
||||
|
||||
steps:
|
||||
- uses: actions/checkout@v2
|
||||
- uses: actions/setup-node@v2
|
||||
with:
|
||||
node-version: ${{ matrix.node-version }}
|
||||
- run: cd app && yarn
|
||||
- run: cd app && yarn build:all
|
||||
- uses: shogo82148/actions-upload-release-asset@v1
|
||||
with:
|
||||
upload_url: ${{ github.event.release.upload_url }}
|
||||
asset_path: "build/*.zip"
|
||||
- uses: shogo82148/actions-upload-release-asset@v1
|
||||
with:
|
||||
upload_url: ${{ github.event.release.upload_url }}
|
||||
asset_path: "build/*.dmg"
|
35
.github/workflows/build.yml
vendored
Normal file
35
.github/workflows/build.yml
vendored
Normal file
@@ -0,0 +1,35 @@
|
||||
# This workflow will do a clean install of node dependencies, build the source code and run tests across different versions of node
|
||||
# For more information see: https://help.github.com/actions/language-and-framework-guides/using-nodejs-with-github-actions
|
||||
|
||||
name: Windows build
|
||||
|
||||
on:
|
||||
release:
|
||||
types:
|
||||
- created
|
||||
|
||||
jobs:
|
||||
build:
|
||||
|
||||
runs-on: windows-latest
|
||||
|
||||
strategy:
|
||||
matrix:
|
||||
node-version: [14.x]
|
||||
# See supported Node.js release schedule at https://nodejs.org/en/about/releases/
|
||||
|
||||
steps:
|
||||
- uses: actions/checkout@v2
|
||||
- uses: actions/setup-node@v2
|
||||
with:
|
||||
node-version: ${{ matrix.node-version }}
|
||||
- run: cd app && yarn
|
||||
- run: cd app && yarn build:all
|
||||
- uses: shogo82148/actions-upload-release-asset@v1
|
||||
with:
|
||||
upload_url: ${{ github.event.release.upload_url }}
|
||||
asset_path: "build/*.exe"
|
||||
- uses: shogo82148/actions-upload-release-asset@v1
|
||||
with:
|
||||
upload_url: ${{ github.event.release.upload_url }}
|
||||
asset_path: "build/*.appx"
|
6
.gitignore
vendored
6
.gitignore
vendored
@@ -32,4 +32,8 @@ app/view/no-NO
|
||||
app/view/zh-CN
|
||||
app/view/ru-RU
|
||||
app/view/zh-TW
|
||||
app/view/pt-BR
|
||||
app/view/pt-BR
|
||||
app/build.js
|
||||
app/view/make/make.js
|
||||
app/view/make/makeCli.ts
|
||||
app/.env
|
||||
|
49
.travis.yml
49
.travis.yml
@@ -1,54 +1,19 @@
|
||||
os:
|
||||
- windows
|
||||
- linux
|
||||
- osx
|
||||
matrix:
|
||||
include:
|
||||
- os: osx
|
||||
osx_image: xcode11.3
|
||||
language: node_js
|
||||
env:
|
||||
- YARN_GPG=no
|
||||
node_js:
|
||||
- '12.17.0'
|
||||
- '14.16.1'
|
||||
cache:
|
||||
yarn: true
|
||||
script: node -v
|
||||
before_deploy:
|
||||
- yarn global add electron-builder
|
||||
- yarn global add browserify
|
||||
- cd app
|
||||
- VERSION=$(cat package.json | grep version | head -1 | awk -F= "{ print $2 }" | sed 's/[version:,\",]//g' | tr -d '[[:space:]]')
|
||||
- yarn install --no-lockfile --prod
|
||||
- yarn construct:store
|
||||
- if [ "$TRAVIS_OS_NAME" = "osx" ];then electron-builder --mac -p never;else :;fi
|
||||
- if [ "$TRAVIS_OS_NAME" = "osx" ];then cd ../build;else :;fi
|
||||
- if [ "$TRAVIS_OS_NAME" = "osx" ];then mv *.dmg TheDesk-$VERSION-store.dmg;else :;fi
|
||||
- if [ "$TRAVIS_OS_NAME" = "osx" ];then cd ../app;else :;fi
|
||||
- if [ "$TRAVIS_OS_NAME" = "linux" ];then electron-builder --linux snap:x64 -p never;else :;fi
|
||||
- if [ "$TRAVIS_OS_NAME" = "linux" ];then cd ../build;else :;fi
|
||||
- if [ "$TRAVIS_OS_NAME" = "linux" ];then mv *.snap TheDesk-$VERSION-store.snap;else :;fi
|
||||
- if [ "$TRAVIS_OS_NAME" = "linux" ];then cd ../app;else :;fi
|
||||
- if [ "$TRAVIS_OS_NAME" = "windows" ];then yarn add electron-builder;else :;fi
|
||||
- if [ "$TRAVIS_OS_NAME" = "windows" ];then electron-builder --win appx:x64 -p never ;else :;fi
|
||||
- if [ "$TRAVIS_OS_NAME" = "windows" ];then cd ../build;else :;fi
|
||||
- if [ "$TRAVIS_OS_NAME" = "windows" ];then mv *.appx TheDesk-$VERSION-store.appx;else :;fi
|
||||
- if [ "$TRAVIS_OS_NAME" = "windows" ];then cd ../app;else :;fi
|
||||
- yarn construct
|
||||
- if [ "$TRAVIS_OS_NAME" = "osx" ];then electron-builder --mac -p never;else :;fi
|
||||
- if [ "$TRAVIS_OS_NAME" = "linux" ];then electron-builder --linux --x64 -p never;else :;fi
|
||||
- if [ "$TRAVIS_OS_NAME" = "linux" ];then cd ../build;else :;fi
|
||||
- if [ "$TRAVIS_OS_NAME" = "linux" ];then ls;else :;fi
|
||||
- if [ "$TRAVIS_OS_NAME" = "linux" ];then mv thedesk-*.zip thedesk.zip;else :;fi
|
||||
- if [ "$TRAVIS_OS_NAME" = "linux" ];then cd ../app;else :;fi
|
||||
- if [ "$TRAVIS_OS_NAME" = "windows" ];then electron-builder --win --ia32 -p never;else :;fi
|
||||
- if [ "$TRAVIS_OS_NAME" = "windows" ];then cd ../build;else :;fi
|
||||
- if [ "$TRAVIS_OS_NAME" = "windows" ];then ls;else :;fi
|
||||
- if [ "$TRAVIS_OS_NAME" = "windows" ];then mv TheDesk-setup.exe TheDesk-setup-ia32.exe;else :;fi
|
||||
- if [ "$TRAVIS_OS_NAME" = "windows" ];then mv *$VERSION.exe TheDesk-ia32.exe;else :;fi
|
||||
- if [ "$TRAVIS_OS_NAME" = "windows" ];then cd ../app;else :;fi
|
||||
- if [ "$TRAVIS_OS_NAME" = "windows" ];then electron-builder --win --x64 -p never;else :;fi
|
||||
- if [ "$TRAVIS_OS_NAME" = "windows" ];then cd ../build;else :;fi
|
||||
- if [ "$TRAVIS_OS_NAME" = "windows" ];then ls;else :;fi
|
||||
- if [ "$TRAVIS_OS_NAME" = "windows" ];then mv ../build/TheDesk-setup.exe ../build/TheDesk-setup.exe;else :;fi
|
||||
- if [ "$TRAVIS_OS_NAME" = "windows" ];then mv ../build/*$VERSION.exe ../build/TheDesk.exe;else :;fi
|
||||
- if [ "$TRAVIS_OS_NAME" = "windows" ];then cd ../app;else :;fi
|
||||
- yarn
|
||||
- yarn build:all
|
||||
- cd ../
|
||||
- ls build
|
||||
deploy:
|
||||
|
175
README.md
175
README.md
@@ -1,9 +1,14 @@
|
||||
<img src="https://thedesk.top/img/top.png" width="300" align="left">
|
||||
<img src="https://thedesk.top/img/desk.png" width="150" align="right">
|
||||
|
||||
# TheDesk
|
||||
**English** | [日本語](README_ja.md)
|
||||
|
||||
[](https://travis-ci.org/cutls/TheDesk)
|
||||
<div align="center">
|
||||
|
||||
<img src="https://thedesk.top/img/desk.png" width="150" align="center">
|
||||
|
||||
<h1 align="center">TheDesk</h1>
|
||||
|
||||
[](https://github.com/cutls/TheDesk/actions/workflows/build.yml)
|
||||
[](https://github.com/cutls/TheDesk/actions/workflows/build-linux.yml)
|
||||
[](https://github.com/cutls/TheDesk/actions/workflows/build-macos.yml)
|
||||
[](https://translate.thedesk.top/project/thedesk)
|
||||
[](https://bit.ly/31zqMmZ)
|
||||
[](https://github.com/cutls/TheDesk/releases)
|
||||
@@ -13,156 +18,40 @@ Mastodon/Misskey client for PC(Windows/Linux/macOS)
|
||||
|
||||
Download:[TheDesk](https://thedesk.top)
|
||||
|
||||
On GitHub Releases, `-store.*` assets are made for some application store or manager(Snapcraft, Homebrew, Microsoft Store).
|
||||
They do not check the latest version(Which you can get the latest ver or not depends on the store)
|
||||
</div>
|
||||
|
||||
<a href="https://www.patreon.com/cutls"><img src="https://c5.patreon.com/external/logo/become_a_patron_button@2x.png" alt="Become a Patron!" width="160"></a>
|
||||
<a href="https://liberapay.com/cutls/donate"><img alt="Donate using Liberapay" src="https://liberapay.com/assets/widgets/donate.svg"></a>
|
||||

|
||||
|
||||
## License
|
||||
## Build and Development
|
||||
|
||||
[GNU General Public License v3.0](https://github.com/cutls/TheDesk/blob/master/LICENSE)
|
||||
See [Wiki](https://github.com/cutls/TheDesk/wiki)
|
||||
|
||||
The icon is provided under [Creative Commons BY-NC-SA](https://creativecommons.org/licenses/by-nc-sa/4.0/)
|
||||
[Press Kit](https://d2upiril6ywqp9.cloudfront.net/press/TheDesk+PressKit.zip)
|
||||
|
||||
* [PNG 512x512](https://d2upiril6ywqp9.cloudfront.net/press/thedesk.png)
|
||||
* [SVG 4095x4096](https://d2upiril6ywqp9.cloudfront.net/press/thedesk-fullcolor.svg)
|
||||
* [ico 256x256](https://d2upiril6ywqp9.cloudfront.net/press/thedesk.ico)
|
||||
* [icns old](https://d2upiril6ywqp9.cloudfront.net/press/thedesk.icns)
|
||||
* [Illustrator .ai](https://d2upiril6ywqp9.cloudfront.net/press/thedesk.ai)
|
||||
|
||||
The default sounds of notifications is provided [Creative Commons BY](https://creativecommons.org/licenses/by/4.0/)
|
||||
|
||||
## Privacy Policy
|
||||
|
||||
* [プライバシーポリシー(Privacy Policy(ja))](https://thedesk.top/priv.html)
|
||||
|
||||
## Language
|
||||
|
||||
* 日本語(Japanese)
|
||||
* 日本語, 関西(Japanese, Kansai)
|
||||
* English
|
||||
* български(Bulgarian) with [translate project](https://translate.thedesk.top/project/thedesk/bg)
|
||||
* Česky(Czech) with [translate project](https://translate.thedesk.top/project/thedesk/cs)
|
||||
* Deutsch(German) with [translate project](https://translate.thedesk.top/project/thedesk/de)
|
||||
* Español, argentina(Spanish, Argentina) with [translate project](https://translate.thedesk.top/project/thedesk/es-AR)
|
||||
* italiano(Italian) with [translate project](https://translate.thedesk.top/project/thedesk/it-IT)
|
||||
|
||||
### Translation
|
||||
## Translation
|
||||
|
||||
Crowdin project is available! Visit: https://translate.thedesk.top
|
||||
|
||||
### Run on developer mode
|
||||
|
||||
`npm run dev` on `app` folder.(before you should run `yarn construct` to make HTML views)
|
||||
|
||||
If you change HTML or language files, you should rub to `yarn construct`. Or `yarn watchview` can always watch and construct such files with 1 process.
|
||||
|
||||
## Contributors
|
||||
|
||||
Build for macOS(Now: Travis CI)
|
||||
|
||||
* [toneji](https://minohdon.jp/@toneji)
|
||||
|
||||
Build for Linux(Now: Travis CI)
|
||||
|
||||
* [popn_ja](https://popon.pptdn.jp/@popn_ja)
|
||||
|
||||
Fellow coder
|
||||
|
||||
* [kPherox](https://pl.kpherox.dev/kPherox)
|
||||
|
||||
## Build
|
||||
|
||||
You should use `yarn` but you can use also `npm`, but if you build on Windows, you should strongly use `yarn`
|
||||
`yarn ***` and `npm run ***` has the same meaning,
|
||||
|
||||
### npm
|
||||
|
||||
```sh
|
||||
git clone https://github.com/cutls/TheDesk
|
||||
cd TheDesk/app
|
||||
npm install
|
||||
npm install --only=dev
|
||||
npm run construct
|
||||
```
|
||||
|
||||
### yarn
|
||||
|
||||
```sh
|
||||
git clone https://github.com/cutls/TheDesk
|
||||
cd TheDesk/app
|
||||
# Linux or macOS
|
||||
yarn install --no-lockfile
|
||||
# Windows
|
||||
yarn install
|
||||
|
||||
yarn construct
|
||||
```
|
||||
|
||||
run `yarn dev` to launch developer version with console(click `view`)
|
||||
|
||||
### electron-builder(Recommended)
|
||||
Use scripts(they can work well with npm, **yarn**).
|
||||
|
||||
```sh
|
||||
# Build for current platform
|
||||
yarn build
|
||||
|
||||
# Select build target
|
||||
## Windows
|
||||
yarn build:win
|
||||
|
||||
## Windows and Linux (The macOS target should run on macOS. So, this option hasn't include the build for macOS)
|
||||
yarn build:all
|
||||
```
|
||||
|
||||
|
||||
Config is all on package.json
|
||||
|
||||
### electron-packager
|
||||
`yarn --D electron-rebuild`
|
||||
|
||||
Linux/macOS
|
||||
`./node_modules/.bin/electron-rebuild`
|
||||
Windows
|
||||
`.\node_modules\.bin\electron-rebuild.cmd`
|
||||
|
||||
To install Python 2.x and Visual C++ for Windows, before running `npm install --save-dev electron-rebuild`
|
||||
`npm install --global windows-build-tools`
|
||||
|
||||
Windows
|
||||
```
|
||||
electron-packager ./app TheDesk --executable-name="TheDesk" --app-copyright="Copyright (c) TheDesk 2018 Cutls.com 2015 All Right Reserved" --win32metadata.CompanyName="TheDesk&Cutls.com" --win32metadata.FileDescription="TheDesk" --win32metadata.OriginalFilename="TheDesk" --win32metadata.InternalName="TheDesk" --win32metadata.ProductName="TheDesk" --platform=win32 --arch=all --electron-version=4.0.5 --icon=.\app\thedesk.ico --overwrite
|
||||
```
|
||||
Linux
|
||||
```
|
||||
electron-packager ./app TheDesk --executable-name="TheDesk" --app-copyright="Copyright (c) TheDesk 2018 Cutls.com 2015 All Right Reserved" --platform=linux --arch=x64,ia32 --electron-version=4.0.5 --overwrite
|
||||
```
|
||||
macOS
|
||||
```
|
||||
electron-packager ./app TheDesk --executable-name="TheDesk" --app-copyright="Copyright (c) TheDesk 2018 Cutls.com 2015 All Right Reserved" --platform=darwin --arch=all --electron-version=4.0.5 --icon=./app/icon.icns --overwrite
|
||||
```
|
||||
|
||||
### PWA support
|
||||
|
||||
TheDesk is a web-based app, so you can run it on a browser. Of course, the main stream is as Electron. Some features won't work as well as Electron.
|
||||
|
||||
You can run `npm run build:pwa` to build as PWA, including `manifest.json` and the ServiceWorker.
|
||||
|
||||
**You have to rename `node_modules` to `dependencies` to run as a web application. (restricted by Netlify, but always you should do to run as PWA)**
|
||||
|
||||
Check the app on Chrome or Firefox: [Here](https://app.thedesk.top) (it follows the `master` branch, so not stable.)
|
||||
[](https://app.netlify.com/sites/thedesk/deploys)
|
||||
|
||||
## Pleroma support
|
||||
|
||||
Did you find a bug with Pleroma accounts?
|
||||
Pleroma **does not** follow Mastodon API rules completely although Pleroma developers say so.
|
||||
Please write issues to improve TheDesk affinity with Pleroma.
|
||||
|
||||
## Vulnerabilities when `yarn install`???
|
||||
## License
|
||||
|
||||
No, if your npm says materialize-css has vulnerabilities(CVE-2019-11002/3/4), look at [here](https://github.com/Dogfalo/materialize/issues/6286) under discussion, but I do not think this report is really fatal.
|
||||
* [GNU General Public License v3.0](https://github.com/cutls/TheDesk/blob/master/LICENSE)
|
||||
* [License of other assets](https://github.com/cutls/TheDesk/wiki/License-of-other-assets)
|
||||
* [プライバシーポリシー(Privacy Policy(ja))](https://thedesk.top/priv.html)
|
||||
|
||||
## 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
|
||||
|
||||
## Support
|
||||
|
||||
<a href="https://www.patreon.com/cutls"><img src="https://c5.patreon.com/external/logo/become_a_patron_button@2x.png" alt="Become a Patron!" height="30"></a>
|
||||
<a href="https://liberapay.com/cutls/donate"><img alt="Donate using Liberapay" src="https://liberapay.com/assets/widgets/donate.svg" height="30"></a>
|
||||
<a href="https://cutls.fanbox.cc"><img alt="PixivFANBOX" src="https://thedesk.top/img/fanbox.png" height="30"></a>
|
||||
|
||||
Or [others](https://cutls.dev) to support me.
|
||||
|
176
README_ja.md
176
README_ja.md
@@ -1,9 +1,14 @@
|
||||
<img src="https://thedesk.top/img/top.png" width="300" align="left">
|
||||
<img src="https://thedesk.top/img/desk.png" width="150" align="right">
|
||||
|
||||
# TheDesk
|
||||
[English](README.md) | **日本語**
|
||||
|
||||
[](https://travis-ci.org/cutls/TheDesk)
|
||||
<div align="center">
|
||||
|
||||
<img src="https://thedesk.top/img/desk.png" width="150" align="center">
|
||||
|
||||
<h1 align="center">TheDesk</h1>
|
||||
|
||||
[](https://github.com/cutls/TheDesk/actions/workflows/build.yml)
|
||||
[](https://github.com/cutls/TheDesk/actions/workflows/build-linux.yml)
|
||||
[](https://github.com/cutls/TheDesk/actions/workflows/build-macos.yml)
|
||||
[](https://translate.thedesk.top/project/thedesk)
|
||||
[](https://bit.ly/31zqMmZ)
|
||||
[](https://github.com/cutls/TheDesk/releases)
|
||||
@@ -12,149 +17,17 @@ Mastodon/Misskey client for PC(Windows/Linux/macOS)
|
||||
オープンソースSNSマストドン/MisskeyのPC向けクライアント
|
||||
Download:[TheDesk](https://thedesk.top)
|
||||
|
||||
[Pixiv FANBOX](https://www.pixiv.net/fanbox/creator/28105985)
|
||||
|
||||
`-store.*`とあるアセットはストアやパッケージマネージャ向けのもので、アップデートの確認をソフト本体で行いません。
|
||||
</div>
|
||||
|
||||

|
||||
|
||||
## ライセンス
|
||||
|
||||
[GNU General Public License v3.0](https://github.com/cutls/TheDesk/blob/master/LICENSE)
|
||||
|
||||
アイコンは[クリエイティブ・コモンズ 表示-非営利-継承](https://creativecommons.org/licenses/by-nc-sa/4.0/)で提供されています。
|
||||
[プレスキット](https://d2upiril6ywqp9.cloudfront.net/press/TheDesk+PressKit.zip)
|
||||
|
||||
* [PNG 512x512](https://d2upiril6ywqp9.cloudfront.net/press/thedesk.png)
|
||||
* [SVG 4095x4096](https://d2upiril6ywqp9.cloudfront.net/press/thedesk-fullcolor.svg)
|
||||
* [ico 256x256](https://d2upiril6ywqp9.cloudfront.net/press/thedesk.ico)
|
||||
* [icns old](https://d2upiril6ywqp9.cloudfront.net/press/thedesk.icns)
|
||||
* [Illustrator .ai](https://d2upiril6ywqp9.cloudfront.net/press/thedesk.ai)
|
||||
|
||||
標準の通知音は [Creative Commons BY](https://creativecommons.org/licenses/by/4.0/) で提供されています。
|
||||
|
||||
## プライバシーポリシー
|
||||
|
||||
* [プライバシーポリシー](https://thedesk.top/priv.html)
|
||||
|
||||
## 言語
|
||||
|
||||
* 日本語
|
||||
* 日本語(関西)
|
||||
* English(英語)
|
||||
* ドイツ語, チェコ語, ブルガリア語, イタリア語, スペイン語アルゼンチン方言 (from [Crowdin](https://translate.thedesk.top))
|
||||
|
||||
### 翻訳
|
||||
## 翻訳
|
||||
|
||||
Crowdinから翻訳に参加してみませんか?: https://translate.thedesk.top
|
||||
|
||||
以下、`yarn ***`は全て`npm run ***`で実行できます。(yarnが推奨)
|
||||
## ビルドと開発
|
||||
|
||||
### デベロッパーモード
|
||||
|
||||
`yarn dev`を`app`フォルダ内で実行。
|
||||
ただし、最初に`yarn construct`必須。
|
||||
|
||||
watchモード(ホットリロードはしません): `yarn construct`の代わりに`yarn watchview`
|
||||
HTMLや言語定義の変更について、このコマンドで継続監視します。その他のアセットの変更には不要です。
|
||||
プロセス1つを占拠するので、`yarn dev`は他のプロセスで行ってください。
|
||||
|
||||
## 主なコントリビューター
|
||||
|
||||
macOSビルダー(現在はTravis CI)
|
||||
|
||||
* [とねぢ](https://minohdon.jp/@toneji)
|
||||
|
||||
Linuxビルダー(現在はTravis CI)
|
||||
|
||||
* [ぽぷんじゃ](https://popon.pptdn.jp/@popn_ja)
|
||||
|
||||
コーダー
|
||||
|
||||
* [kPherox](https://pl.kpherox.dev/kPherox)
|
||||
|
||||
## ビルド
|
||||
|
||||
npmでもyarnでも好きな方を選んでください。Windows環境ではyarnを強く推奨します。
|
||||
|
||||
### npm
|
||||
|
||||
```sh
|
||||
git clone https://github.com/cutls/TheDesk
|
||||
cd TheDesk/app
|
||||
npm install
|
||||
npm install --only=dev
|
||||
npm run construct
|
||||
```
|
||||
|
||||
### yarn
|
||||
|
||||
```sh
|
||||
git clone https://github.com/cutls/TheDesk
|
||||
cd TheDesk/app
|
||||
# Linux or macOS
|
||||
yarn install --no-lockfile
|
||||
# Windows
|
||||
yarn install
|
||||
|
||||
yarn construct
|
||||
```
|
||||
|
||||
### electron-builder(推奨)
|
||||
|
||||
scriptsを利用します
|
||||
|
||||
```sh
|
||||
# 実行している環境向けにビルド
|
||||
yarn build
|
||||
|
||||
# ターゲットを指定してビルド
|
||||
## Windows
|
||||
yarn build:win
|
||||
|
||||
## macOS向けのビルドにはmacOSで実行する必要があるためこのコマンドではビルドされません
|
||||
yarn build:all
|
||||
```
|
||||
|
||||
|
||||
ビルド設定はすべてpackage.jsonに記載しています。
|
||||
|
||||
### electron-packager(非推奨)
|
||||
`yarn -D electron-rebuild`
|
||||
|
||||
Linux/macOS
|
||||
`./node_modules/.bin/electron-rebuild`
|
||||
Windows
|
||||
`.\node_modules\.bin\electron-rebuild.cmd`
|
||||
|
||||
WindowsでPython 2.xやVisualC++を一発でインストールできるツールもあります(`npm install --save-dev electron-rebuild`の前に)
|
||||
`npm install --global windows-build-tools`
|
||||
|
||||
日本語話者向けですが、macOSビルドにはXCodeが要るとの情報があります。([とねぢ](https://minohdon.jp/@toneji)氏談)
|
||||
|
||||
Windows
|
||||
```
|
||||
electron-packager ./app TheDesk --executable-name="TheDesk" --app-copyright="Copyright (c) TheDesk 2018 Cutls.com 2015 All Right Reserved" --win32metadata.CompanyName="TheDesk&Cutls.com" --win32metadata.FileDescription="TheDesk" --win32metadata.OriginalFilename="TheDesk" --win32metadata.InternalName="TheDesk" --win32metadata.ProductName="TheDesk" --platform=win32 --arch=all --electron-version=4.0.5 --icon=.\app\thedesk.ico --overwrite
|
||||
```
|
||||
Linux
|
||||
```
|
||||
electron-packager ./app TheDesk --executable-name="TheDesk" --app-copyright="Copyright (c) TheDesk 2018 Cutls.com 2015 All Right Reserved" --platform=linux --arch=x64,ia32 --electron-version=4.0.5 --overwrite
|
||||
```
|
||||
macOS
|
||||
```
|
||||
electron-packager ./app TheDesk --executable-name="TheDesk" --app-copyright="Copyright (c) TheDesk 2018 Cutls.com 2015 All Right Reserved" --platform=darwin --arch=all --electron-version=4.0.5 --icon=./app/icon.icns --overwrite
|
||||
```
|
||||
|
||||
### PWAとして実行
|
||||
|
||||
TheDeskはウェブ技術を使用して作られているので、ブラウザで動かすこともできます。もちろん、Electron向けに設計されているので一部機能は動きません。
|
||||
|
||||
`yarn build:pwa`でビルドできます。PWAに必要な`manifest.json`やサービスワーカーなども用意されています。
|
||||
|
||||
**`node_modules`を`dependencies`にリネームしないと動きません。(Netlifyの制限ですが、Netlify以外で動かす場合にも必須です)**
|
||||
|
||||
ChromeまたはFirefoxでチェック: [こちら](https://app.thedesk.top) (`master`ブランチに追従しています。不安定です。)
|
||||
[](https://app.netlify.com/sites/thedesk/deploys)
|
||||
[Wiki](https://github.com/cutls/TheDesk/wiki)を参照。
|
||||
|
||||
## Pleromaのサポート
|
||||
|
||||
@@ -165,7 +38,22 @@ Issuesに書いてある問題についてはなるべく対処しますので
|
||||
|
||||
[TheDesk - マストドン日本語ウィキ](https://ja.mstdn.wiki/TheDesk)
|
||||
|
||||
## `yarn install`したら脆弱性あるって言われた
|
||||
## ライセンス
|
||||
|
||||
materialize-cssの脆弱性(CVE-2019-11002/3/4)については[こちら](https://github.com/Dogfalo/materialize/issues/6286)で本当に脆弱性かどうか議論しています。
|
||||
実際には害が無いものと思われます。
|
||||
* [GNU General Public License v3.0](https://github.com/cutls/TheDesk/blob/master/LICENSE)
|
||||
* [License of other assets](https://github.com/cutls/TheDesk/wiki/License-of-other-assets)
|
||||
* [プライバシーポリシー](https://thedesk.top/priv.html)
|
||||
|
||||
## 主なコントリビューター
|
||||
|
||||
* <img src="https://user-images.githubusercontent.com/17561618/66582029-162df380-ebbc-11e9-8a6f-1832b3a35d89.png" width="20">[とねぢ](https://minohdon.jp/@toneji) macOSビルダー(現在はTravis CI)
|
||||
* <img src="https://avatars3.githubusercontent.com/u/24523508?s=88&v=4" width="20">[ぽぷんじゃ](https://popon.pptdn.jp/@popn_ja) Linuxビルダー(現在は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)
|
||||
|
||||
## 支援
|
||||
|
||||
<a href="https://www.patreon.com/cutls"><img src="https://c5.patreon.com/external/logo/become_a_patron_button@2x.png" alt="Become a Patron!" height="30"></a>
|
||||
<a href="https://liberapay.com/cutls/donate"><img alt="Donate using Liberapay" src="https://liberapay.com/assets/widgets/donate.svg" height="30"></a>
|
||||
<a href="https://cutls.fanbox.cc"><img alt="PixivFANBOX" src="https://thedesk.top/img/fanbox.png" height="30"></a>
|
||||
|
||||
[その他の支援法](https://cutls.dev)
|
14
app/build.d.ts
vendored
Normal file
14
app/build.d.ts
vendored
Normal file
@@ -0,0 +1,14 @@
|
||||
declare function _exports(options?: {
|
||||
onlyStore?: boolean;
|
||||
withStore?: boolean;
|
||||
withIa32?: boolean;
|
||||
withArm64?: boolean;
|
||||
windows?: boolean;
|
||||
linux?: boolean;
|
||||
macOS?: boolean;
|
||||
skipWindows?: boolean;
|
||||
skipLinux?: boolean;
|
||||
skipMacOS?: boolean;
|
||||
unnotarize?: boolean;
|
||||
}): void;
|
||||
export = _exports;
|
297
app/build.js
297
app/build.js
@@ -1,112 +1,225 @@
|
||||
const builder = require("electron-builder");
|
||||
const fs = require('fs');
|
||||
const os = process.platform;
|
||||
const builder = require('electron-builder')
|
||||
const path = require('path')
|
||||
const fs = require('fs')
|
||||
const basefile = __dirname + '/'
|
||||
const package = fs.readFileSync(basefile + 'package.json')
|
||||
const data = JSON.parse(package)
|
||||
const version = data.version
|
||||
const codename = data.codename
|
||||
const ver = `${version} (${codename})`
|
||||
const construct = require('./view/make/make.js')
|
||||
const { platform, arch } = process
|
||||
const Platform = builder.Platform
|
||||
const Arch = builder.Arch
|
||||
const targets = new Map();
|
||||
const archToType = new Map();
|
||||
const pref = {
|
||||
productName: "TheDesk",
|
||||
appId: "top.thedesk",
|
||||
asarUnpack: [
|
||||
"node_modules/itunes-nowplaying-mac"
|
||||
],
|
||||
const artifactName = 'TheDesk-setup-${arch}.${ext}'
|
||||
const config = {
|
||||
productName: 'TheDesk',
|
||||
appId: 'top.thedesk',
|
||||
asarUnpack: ['node_modules/itunes-nowplaying-mac', 'main/script'],
|
||||
afterSign: 'build/notarize.js',
|
||||
directories: {
|
||||
output: "../build/"
|
||||
output: '../build',
|
||||
},
|
||||
win: {
|
||||
icon: "build/thedesk.ico",
|
||||
target: [
|
||||
"nsis",
|
||||
"portable",
|
||||
"appx"
|
||||
]
|
||||
icon: 'build/thedesk.ico',
|
||||
target: ['nsis', 'appx', 'portable'],
|
||||
publish: []
|
||||
},
|
||||
appx: {
|
||||
identityName: "53491Cutls.TheDesk",
|
||||
applicationId: "Cutls.TheDesk",
|
||||
publisherDisplayName: "Cutls",
|
||||
publisher: "CN=629757F5-A5EE-474F-9562-B304A89A9FD1",
|
||||
languages: [
|
||||
"JA-JP",
|
||||
"EN-US"
|
||||
]
|
||||
identityName: '53491Cutls.TheDesk',
|
||||
applicationId: 'Cutls.TheDesk',
|
||||
publisherDisplayName: 'Cutls',
|
||||
publisher: 'CN=629757F5-A5EE-474F-9562-B304A89A9FD1',
|
||||
languages: ['JA-JP', 'EN-US'],
|
||||
},
|
||||
nsis: {
|
||||
oneClick: false,
|
||||
allowToChangeInstallationDirectory: true
|
||||
allowToChangeInstallationDirectory: true,
|
||||
artifactName: 'TheDesk-setup-${arch}.${ext}',
|
||||
},
|
||||
linux: {
|
||||
icon: "build/icons",
|
||||
target: [
|
||||
"zip",
|
||||
"snap"
|
||||
],
|
||||
category: "Network"
|
||||
target: ['zip', 'appImage', 'snap', 'deb'],
|
||||
category: 'Network',
|
||||
},
|
||||
mac: {
|
||||
target: [
|
||||
"dmg",
|
||||
"zip"
|
||||
]
|
||||
hardenedRuntime: true,
|
||||
gatekeeperAssess: false,
|
||||
entitlements: 'build/entitlements.mac.plist',
|
||||
entitlementsInherit: 'build/entitlements.mac.plist',
|
||||
},
|
||||
electronDownload: {
|
||||
version: "5.0.1"
|
||||
dmg: {
|
||||
sign: false,
|
||||
},
|
||||
electronVersion: "5.0.1"
|
||||
}
|
||||
const json = JSON.parse(fs.readFileSync("package.json", 'utf8'));
|
||||
const version = json.version;
|
||||
|
||||
|
||||
if (os == "win32") {
|
||||
archToType.set(Arch.ia32, []);
|
||||
targets.set(Platform.WINDOWS, archToType);
|
||||
} else if (os == "linux") {
|
||||
archToType.set(Arch.x64, []);
|
||||
archToType.set(Arch.ia32, []);
|
||||
targets.set(Platform.LINUX, archToType);
|
||||
} else if (os == "darwin") {
|
||||
archToType.set(Arch.x64, []);
|
||||
targets.set(Platform.MAC, archToType);
|
||||
} else {
|
||||
async function build(os, arch, config) {
|
||||
let targets = new Map()
|
||||
let archToType = new Map()
|
||||
archToType.set(arch, [])
|
||||
targets.set(os, archToType)
|
||||
await builder.build({
|
||||
targets: targets,
|
||||
config: config,
|
||||
publish: 'never'
|
||||
})
|
||||
}
|
||||
async function cmd(options) {
|
||||
if (isTrue(options, 'help', 'h')) {
|
||||
return console.log(help())
|
||||
}
|
||||
if (isTrue(options, 'onlyStore') || isTrue(options, 'withStore')) {
|
||||
console.log('start building for application stores')
|
||||
construct(ver, basefile, false, true)
|
||||
if ((platform == 'win32' && !isTrue(options, 'skiWindows')) || isTrue(options, 'windows', 'w')) {
|
||||
if ((isTrue(options, 'withIa32') && arch == 'x64') || arch == 'ia32') {
|
||||
config.nsis.artifactName = artifactName.replace('${arch}', 'ia32')
|
||||
await build(Platform.WINDOWS, Arch.ia32, config)
|
||||
fs.renameSync(
|
||||
`../build/TheDesk ${version}.exe`,
|
||||
'../build/TheDesk-ia32-store.exe'
|
||||
)
|
||||
fs.renameSync(
|
||||
`../build/TheDesk-setup-ia32.exe`,
|
||||
'../build/TheDesk-setup-ia32-store.exe'
|
||||
)
|
||||
}
|
||||
if (arch == 'x64') {
|
||||
config.nsis.artifactName = artifactName.replace('${arch}', 'x64')
|
||||
await build(Platform.WINDOWS, Arch.x64, config)
|
||||
fs.renameSync(
|
||||
`../build/TheDesk ${version}.exe`,
|
||||
'../build/TheDesk-store.exe'
|
||||
)
|
||||
fs.renameSync(
|
||||
`../build/TheDesk-setup-x64.exe`,
|
||||
'../build/TheDesk-setup-store.exe'
|
||||
)
|
||||
}
|
||||
}
|
||||
if ((platform == 'linux' && !isTrue(options, 'skipLinux')) || isTrue(options, 'linux', 'l')) {
|
||||
if (arch == 'ia32') {
|
||||
await build(Platform.LINUX, Arch.ia32, config)
|
||||
}
|
||||
if ((isTrue(options, 'withIa32') && arch == 'x64')) {
|
||||
console.log('snapcraft does not curretly support builing i386 on amd64')
|
||||
}
|
||||
if (arch == 'x64') {
|
||||
await build(Platform.LINUX, Arch.x64, config)
|
||||
if (!isTrue(options, 'onlyStore')) {
|
||||
fs.renameSync(
|
||||
`../build/thedesk_${version}_amd64.snap`,
|
||||
`../build/thedesk_${version}_amd64-store.snap`
|
||||
)
|
||||
}
|
||||
}
|
||||
}
|
||||
}
|
||||
if (!isTrue(options, 'onlyStore')) {
|
||||
console.log('start building for normal usage')
|
||||
construct(ver, basefile, false, false)
|
||||
if ((platform == 'win32' && !isTrue(options, 'skiWindows')) || isTrue(options, 'windows', 'w')) {
|
||||
if ((isTrue(options, 'withIa32') && arch == 'x64') || arch == 'ia32') {
|
||||
config.nsis.artifactName = artifactName.replace('${arch}', 'ia32')
|
||||
await build(Platform.WINDOWS, Arch.ia32, config)
|
||||
fs.renameSync(
|
||||
`../build/TheDesk ${version}.exe`,
|
||||
'../build/TheDesk-ia32.exe'
|
||||
)
|
||||
}
|
||||
if (arch == 'x64') {
|
||||
config.nsis.artifactName = artifactName.replace('${arch}', 'x64')
|
||||
await build(Platform.WINDOWS, Arch.x64, config)
|
||||
fs.renameSync(
|
||||
`../build/TheDesk ${version}.exe`,
|
||||
'../build/TheDesk.exe'
|
||||
)
|
||||
fs.renameSync(
|
||||
`../build/TheDesk-setup-x64.exe`,
|
||||
'../build/TheDesk-setup.exe'
|
||||
)
|
||||
}
|
||||
if ((isTrue(options, 'withArm64') && arch == 'x64') || arch == 'arm64') {
|
||||
await build(Platform.WINDOWS, Arch.arm64, config)
|
||||
fs.renameSync(
|
||||
`../build/TheDesk ${version}.exe`,
|
||||
'../build/TheDesk-arm64.exe'
|
||||
)
|
||||
}
|
||||
}
|
||||
if ((platform == 'linux' && !isTrue(options, 'skipLinux')) || isTrue(options, 'linux', 'l')) {
|
||||
if (arch == 'ia32') {
|
||||
await build(Platform.LINUX, Arch.ia32, config)
|
||||
}
|
||||
if (isTrue(options, 'withIa32') && arch == 'x64') {
|
||||
console.log('snapcraft does not curretly support builing i386 on amd64')
|
||||
}
|
||||
if (arch == 'x64') {
|
||||
await build(Platform.LINUX, Arch.x64, config)
|
||||
fs.renameSync(
|
||||
`../build/thedesk_${version}_amd64.snap`,
|
||||
`../build/thedesk_${version}_amd64-normal.snap`
|
||||
)
|
||||
if (isTrue(options, 'onlyStore') || isTrue(options, 'withStore')) {
|
||||
fs.renameSync(
|
||||
`../build/thedesk_${version}_amd64-store.snap`,
|
||||
`../build/thedesk_${version}_amd64.snap`
|
||||
)
|
||||
}
|
||||
}
|
||||
}
|
||||
if (platform == 'darwin' && !isTrue(options, 'skipMacOS')) {
|
||||
if(isTrue(options, 'unnotarize')) delete config.afterSign
|
||||
await build(Platform.MAC, Arch.x64, config)
|
||||
}
|
||||
}
|
||||
}
|
||||
function isTrue(options, long, short) {
|
||||
const { argv } = process
|
||||
if (options ? options[long] : 0) return true
|
||||
if (argv.includes(`--${long}`)) return true
|
||||
if (short && argv.includes(`-${short}`)) return true
|
||||
return false
|
||||
}
|
||||
builder.build({
|
||||
targets: targets,
|
||||
config: pref
|
||||
})
|
||||
.then(() => {
|
||||
console.log("Done on "+os)
|
||||
if (os == "win32") {
|
||||
console.log("Windows")
|
||||
fs.renameSync('../build/TheDesk ' + version + '.exe', '../build/TheDesk-ia32.exe');
|
||||
fs.renameSync('../build/TheDesk Setup ' + version + '.exe', '../build/TheDesk-setup-ia32.exe');
|
||||
retry()
|
||||
}else if (os == "linux") {
|
||||
console.log("Linux")
|
||||
fs.renameSync('../build/thedesk-' + version + '.zip', '../build/TheDesk.zip');
|
||||
fs.renameSync('../build/TheDesk Setup ' + version + '.exe', '../build/TheDesk-setup-ia32.exe');
|
||||
}
|
||||
})
|
||||
.catch((error) => {
|
||||
// handle error
|
||||
})
|
||||
function retry(){
|
||||
console.log("Windows x64")
|
||||
const targetsAlt = new Map();
|
||||
const archToTypeAlt = new Map();
|
||||
targetsAlt.set(Platform.WINDOWS, archToTypeAlt);
|
||||
archToTypeAlt.set(Arch.x64, []);
|
||||
builder.build({
|
||||
targets: targetsAlt,
|
||||
config: pref
|
||||
})
|
||||
.then(() => {
|
||||
fs.renameSync('../build/TheDesk Setup ' + version + '.exe', '../build/TheDesk-setup.exe');
|
||||
fs.renameSync('../build/TheDesk ' + version + '.exe', '../build/TheDesk.exe');
|
||||
})
|
||||
.catch((error) => {
|
||||
// handle error
|
||||
})
|
||||
}
|
||||
function help() {
|
||||
return `
|
||||
TheDesk Builder command tool
|
||||
yarn build [options] (or node build.js [options])
|
||||
yarn build:[preset] (check package.json)
|
||||
|
||||
--help or -h: show help
|
||||
|
||||
[Build for other platforms]
|
||||
--windows (-w)
|
||||
--linux (-l)
|
||||
|
||||
--skipWindows
|
||||
--skipLinux
|
||||
--skipMacOS
|
||||
To skip building for itself platform.
|
||||
|
||||
|
||||
[only Windows, Linux]
|
||||
--onlyStore: application store of platforms assets(without update check)
|
||||
--withStore: application store assets and normal version
|
||||
|
||||
[only Windows]
|
||||
|
||||
--withIa32: ia32 build on x64 system(if your machine is ia32, it will be built if this arg is not passed)
|
||||
--withArm64(beta) arm64 build on x64 system(if your machine is arm64, it will be built if this arg is not passed, and not build store build for arm64)
|
||||
|
||||
[only macOS]
|
||||
--unnotarize: Without notarize
|
||||
`
|
||||
}
|
||||
|
||||
/**
|
||||
* Builder
|
||||
* @module builder
|
||||
* @param {Object} [options] - Options
|
||||
* @param {boolean} [options.onlyStore] - App Store of platforms assets(without update check)
|
||||
* @param {boolean} [options.withStore] - App Store of platforms assets(without update check) assets and normal version
|
||||
* @param {boolean} [options.withIa32] - [Windows only] ia32 build on x64 system(if your machine is ia32, it will be built if this arg is not passed)
|
||||
* @param {boolean} [options.withArm64] - [Windows only(beta)] arm64 build on x64 system(if your machine is arm64, it will be built if this arg is not passed, and not build store build for arm64)
|
||||
* @return {void}
|
||||
*/
|
||||
module.exports = cmd
|
8
app/build/entitlements.mac.plist
Normal file
8
app/build/entitlements.mac.plist
Normal file
@@ -0,0 +1,8 @@
|
||||
<?xml version="1.0" encoding="UTF-8"?>
|
||||
<!DOCTYPE plist PUBLIC "-//Apple//DTD PLIST 1.0//EN" "http://www.apple.com/DTDs/PropertyList-1.0.dtd">
|
||||
<plist version="1.0">
|
||||
<dict>
|
||||
<key>com.apple.security.cs.allow-unsigned-executable-memory</key>
|
||||
<true/>
|
||||
</dict>
|
||||
</plist>
|
23
app/build/notarize.js
Normal file
23
app/build/notarize.js
Normal file
@@ -0,0 +1,23 @@
|
||||
require('dotenv').config()
|
||||
const { notarize } = require('electron-notarize')
|
||||
|
||||
// Notarizeをしない場合、下のuseNotarizeをtrueからfalseに変更してください。
|
||||
const useNotarize = true
|
||||
|
||||
|
||||
exports.default = async function notarizing(context) {
|
||||
const { electronPlatformName, appOutDir } = context
|
||||
if (electronPlatformName !== 'darwin' || !useNotarize) return
|
||||
const appName = context.packager.appInfo.productFilename
|
||||
console.log(`start notarize: ${appOutDir}/${appName}.app`)
|
||||
try {
|
||||
return await notarize({
|
||||
appBundleId: 'top.thedesk',
|
||||
appPath: `${appOutDir}/${appName}.app`,
|
||||
appleId: process.env.APPLEID,
|
||||
appleIdPassword: process.env.APPLEIDPASS,
|
||||
})
|
||||
} catch (e) {
|
||||
throw console.log(e)
|
||||
}
|
||||
}
|
2
app/buildCli.js
Normal file
2
app/buildCli.js
Normal file
@@ -0,0 +1,2 @@
|
||||
const cmd = require('./build')
|
||||
cmd()
|
@@ -103,7 +103,6 @@ option {
|
||||
cursor: pointer;
|
||||
}
|
||||
.badge {
|
||||
min-width: 0 !important;
|
||||
margin-left: 0.4rem !important;
|
||||
}
|
||||
.unvisible {
|
||||
@@ -499,13 +498,24 @@ textarea {
|
||||
font-size: 1rem !important;
|
||||
font-family: inherit;
|
||||
}
|
||||
.swal2-popup {
|
||||
.swal2-popup, .swal2-header {
|
||||
background-color: var(--subcolor) !important;
|
||||
}
|
||||
.swal2-title,
|
||||
.swal2-content {
|
||||
color: var(--text) !important;
|
||||
}
|
||||
h2.swal2-title {
|
||||
margin: 0;
|
||||
line-height: 100%;
|
||||
}
|
||||
.swal2-close:focus {
|
||||
background-color: inherit !important;
|
||||
box-shadow: none !important;
|
||||
}
|
||||
.swal2-actions {
|
||||
background-color: var(--modalfooter);
|
||||
}
|
||||
#src-contents svg {
|
||||
margin-right: 0.4rem;
|
||||
}
|
||||
|
8
app/css/sweetalert2-material.min.css
vendored
Normal file
8
app/css/sweetalert2-material.min.css
vendored
Normal file
File diff suppressed because one or more lines are too long
@@ -260,7 +260,7 @@ iframe,
|
||||
width: 100%;
|
||||
display: grid;
|
||||
grid-template-columns: 3.3rem 2fr 1fr;
|
||||
grid-template-rows: auto 1.6rem 1fr auto 2.5rem;
|
||||
grid-template-rows: auto 1.6rem 1fr auto 1.9rem;
|
||||
grid-template-areas: 'notice notice notice' 'icon display_name display_name' 'space toot toot' 'space additional additional' 'vis actions side';
|
||||
}
|
||||
.hide-actions {
|
||||
@@ -353,15 +353,26 @@ iframe,
|
||||
.area-actions {
|
||||
padding: 0;
|
||||
margin: 0;
|
||||
top: -0.4rem;
|
||||
position: relative;
|
||||
display: flex;
|
||||
justify-content: space-around;
|
||||
max-width: 100%;
|
||||
grid-area: actions;
|
||||
}
|
||||
.area-actions .btn-flat {
|
||||
height: 1rem;
|
||||
line-height: 1rem;
|
||||
}
|
||||
.area-actions .btn-flat,
|
||||
.area-vis i,
|
||||
.area-side .btn-flat {
|
||||
margin: 0;
|
||||
}
|
||||
.area-side i {
|
||||
line-height: initial;
|
||||
}
|
||||
|
||||
.area-vis {
|
||||
margin: 0.4rem;
|
||||
margin: 0.2rem;
|
||||
grid-area: vis;
|
||||
text-align: center;
|
||||
}
|
||||
@@ -534,6 +545,18 @@ p:not(:last-child) {
|
||||
grid-template-rows: 2.3rem 2.3rem;
|
||||
grid-template-areas: 'notice notice_name notice_name a2' 'notice a1 sta a3' 'notf-box notf-box notf-box notf-box';
|
||||
}
|
||||
.small-header.notice-box {
|
||||
min-height: 2rem;
|
||||
grid-template-columns: 2.3rem 1fr 5rem 2rem 2rem;
|
||||
grid-template-rows: 1.8rem;
|
||||
grid-template-areas: 'notice notice_name a1 a3 a2';
|
||||
}
|
||||
.small-header.has-notf.notice-box {
|
||||
min-height: 2rem;
|
||||
grid-template-columns: 2.3rem 1fr 8rem 5rem 2rem 2rem;
|
||||
grid-template-rows: 1.8rem;
|
||||
grid-template-areas: 'notice notice_name sta a1 a3 a2';
|
||||
}
|
||||
.emp {
|
||||
font-weight: bold;
|
||||
text-decoration: underline;
|
||||
@@ -542,6 +565,25 @@ p:not(:last-child) {
|
||||
.area-notice {
|
||||
grid-area: notice;
|
||||
}
|
||||
.small-header .area-notice {
|
||||
margin: 0;
|
||||
}
|
||||
.small-header .area-sta {
|
||||
display: none;
|
||||
}
|
||||
.small-header.has-notf .area-sta {
|
||||
overflow-x: scroll;
|
||||
overflow-y: hidden;
|
||||
height: 2rem;
|
||||
width: 8rem;
|
||||
display: flex;
|
||||
}
|
||||
.area-sta .hide {
|
||||
display: inline-block !important;
|
||||
}
|
||||
.small-header .area-sta::-webkit-scrollbar {
|
||||
height: 5px;
|
||||
}
|
||||
|
||||
.area-notice_name {
|
||||
grid-area: notice_name;
|
||||
@@ -558,6 +600,10 @@ p:not(:last-child) {
|
||||
grid-area: a1;
|
||||
}
|
||||
.area-sta {
|
||||
display: none;
|
||||
}
|
||||
.has-notf .area-sta {
|
||||
display: block;
|
||||
text-align: center;
|
||||
grid-area: sta;
|
||||
}
|
||||
@@ -624,8 +670,7 @@ p:not(:last-child) {
|
||||
border: thin solid gray;
|
||||
border-bottom: 2px solid white;
|
||||
grid-area: notf-box;
|
||||
box-shadow: 0 8px 10px 1px rgba(0, 0, 0, 0.14), 0 3px 14px 2px rgba(0, 0, 0, 0.12),
|
||||
0 5px 5px -3px rgba(0, 0, 0, 0.3), 0px -10px 10px 0px rgba(0, 0, 0, 0.3) inset;
|
||||
box-shadow: 0 8px 10px 1px rgba(0, 0, 0, 0.14), 0 3px 14px 2px rgba(0, 0, 0, 0.12), 0 5px 5px -3px rgba(0, 0, 0, 0.3), 0px -10px 10px 0px rgba(0, 0, 0, 0.3) inset;
|
||||
}
|
||||
.notf-indv-box label span {
|
||||
padding-left: 23px !important;
|
||||
@@ -639,9 +684,12 @@ p:not(:last-child) {
|
||||
height: 70px;
|
||||
text-align: center;
|
||||
}
|
||||
.notf-exclude-btn {
|
||||
border: 1px solid;
|
||||
}
|
||||
.notf-exclude-btn:hover {
|
||||
background-color: inherit !important;
|
||||
border: 1px solid;
|
||||
filter: brightness(70%);
|
||||
}
|
||||
.type-b {
|
||||
display: none;
|
||||
@@ -756,7 +804,9 @@ p:not(:last-child) {
|
||||
width: 100%;
|
||||
height: 100%;
|
||||
}
|
||||
.fav_ct, .rt_ct, .rep_ct {
|
||||
.fav_ct,
|
||||
.rt_ct,
|
||||
.rep_ct {
|
||||
font-size: 1.1rem;
|
||||
}
|
||||
.shared.selectedToot {
|
||||
@@ -856,6 +906,14 @@ audio {
|
||||
.box .ui-resizable-se {
|
||||
display: none !important;
|
||||
}
|
||||
.small-header .top-icon {
|
||||
font-size: 2rem !important;
|
||||
padding-top: 0%;
|
||||
}
|
||||
.top-icon {
|
||||
font-size: 40px !important;
|
||||
padding-top: 25%;
|
||||
}
|
||||
.announcement {
|
||||
padding: 0.38rem;
|
||||
border-bottom: 1px solid;
|
||||
@@ -883,4 +941,4 @@ audio {
|
||||
}
|
||||
.reactionsPack {
|
||||
display: flex;
|
||||
}
|
||||
}
|
||||
|
6
app/gitHash.js
Normal file
6
app/gitHash.js
Normal file
@@ -0,0 +1,6 @@
|
||||
const fs = require('fs')
|
||||
const execSync = require('child_process').execSync
|
||||
const gitHash = execSync('git rev-parse HEAD')
|
||||
.toString()
|
||||
.trim()
|
||||
fs.writeFileSync('git', gitHash)
|
@@ -537,9 +537,10 @@ function multiSelector(parseC) {
|
||||
}
|
||||
last = last + ''
|
||||
var sel
|
||||
const webview = localStorage.getItem('webview_setting') === 'true'
|
||||
if (obj.length < 1) {
|
||||
$('#src-acct-sel').html('<option value="tootsearch">Tootsearch</option>')
|
||||
$('#add-acct-sel').html('<option value="noauth">' + lang.lang_login_noauth + '</option>')
|
||||
$('#add-acct-sel').html('<option value="noauth">' + lang.lang_login_noauth + `</option>${webview ? `<option value="webview">TweetDeck</option>` : ''}`)
|
||||
} else {
|
||||
Object.keys(obj).forEach(function (key) {
|
||||
var acct = obj[key]
|
||||
@@ -610,7 +611,7 @@ function multiSelector(parseC) {
|
||||
$('#add-acct-sel').append(
|
||||
'<option value="noauth">' +
|
||||
lang.lang_login_noauth +
|
||||
'</option><!--option value="webview">Twitter</option-->'
|
||||
`</option>${webview ? `<option value="webview">TweetDeck</option>` : ''}`
|
||||
)
|
||||
$('#dir-acct-sel').append('<option value="noauth">' + lang.lang_login_noauth + '</option>')
|
||||
}
|
||||
|
@@ -205,8 +205,6 @@ function multiDel(target) {
|
||||
text: obj[target]['user'] + '@' + obj[target]['domain'] + lang.lang_manager_confirm,
|
||||
type: 'warning',
|
||||
showCancelButton: true,
|
||||
confirmButtonColor: '#3085d6',
|
||||
cancelButtonColor: '#d33',
|
||||
confirmButtonText: lang.lang_yesno,
|
||||
cancelButtonText: lang.lang_no
|
||||
}).then(result => {
|
||||
@@ -299,8 +297,6 @@ function multiDel2(target) {
|
||||
text: obj[target]['user'] + '@' + obj[target]['domain'] + lang.lang_manager_confirm,
|
||||
type: 'warning',
|
||||
showCancelButton: true,
|
||||
confirmButtonColor: '#3085d6',
|
||||
cancelButtonColor: '#d33',
|
||||
confirmButtonText: lang.lang_yesno,
|
||||
cancelButtonText: lang.lang_no
|
||||
}).then(result => {
|
||||
|
@@ -198,6 +198,8 @@ onmessage = function (e) {
|
||||
type: 'info',
|
||||
title: e.data[1]
|
||||
})
|
||||
} else if (e.data[0] == 'twitterLoginComplete') {
|
||||
location.reload()
|
||||
}
|
||||
}
|
||||
/* PWA */
|
||||
|
@@ -3,7 +3,7 @@ window.onload = function () {
|
||||
initPostbox()
|
||||
connection()
|
||||
initPlugin(plugins)
|
||||
if(localStorage.getItem('control-center-np')) $('#ccnp').removeClass('hide')
|
||||
if (localStorage.getItem('control-center-np')) $('#ccnp').removeClass('hide')
|
||||
}
|
||||
$.strip_tags = function (str, allowed) {
|
||||
if (!str) {
|
||||
@@ -290,3 +290,23 @@ function statusModel(now) {
|
||||
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], '*')
|
||||
}
|
||||
})
|
||||
}
|
||||
function initWebviewEvent() {
|
||||
if (document.querySelector('webview')) { webviewFinder() } else {
|
||||
const timerWV = setInterval(function () {
|
||||
document.querySelector('webview')
|
||||
? (webviewFinder(), clearInterval(timerWV))
|
||||
: console.log('まだロード中')
|
||||
}, 500)
|
||||
}
|
||||
}
|
@@ -54,6 +54,8 @@ onmessage = function(e) {
|
||||
ipc.send('theme-json-request', e.data[1])
|
||||
} else if (e.data[0] == 'ha') {
|
||||
ipc.send('ha', e.data[1])
|
||||
} else if (e.data[0] == 'webviewSetting') {
|
||||
ipc.send('webview', e.data[1])
|
||||
} else if (e.data[0] == 'frameSet') {
|
||||
ipc.send('frameSet', e.data[1])
|
||||
} else if (e.data[0] == 'ua') {
|
||||
@@ -64,7 +66,9 @@ onmessage = function(e) {
|
||||
console.log('NowPlaying')
|
||||
ipc.send('itunes', e.data[1])
|
||||
} else if (e.data[0] == 'themeCSSRequest') {
|
||||
ipc.send('theme-css-request', e.data[1])
|
||||
ipc.send('theme-css-request', e.data)
|
||||
} else if (e.data[0] == 'themeCSSPreview') {
|
||||
ipc.send('theme-css-request', e.data)
|
||||
} else if (e.data[0] == 'customCSSRequest') {
|
||||
ipc.send('custom-css-request', e.data[1])
|
||||
} else if (e.data[0] == 'downloadButton') {
|
||||
@@ -77,6 +81,8 @@ onmessage = function(e) {
|
||||
ipc.send('copy', e.data[1])
|
||||
} else if (e.data[0] == 'log') {
|
||||
ipc.send('log', e.data[1])
|
||||
} else if (e.data[0] == 'twitterLogin') {
|
||||
ipc.send('twitterLogin', e.data[1])
|
||||
}
|
||||
}
|
||||
//version.js
|
||||
@@ -227,9 +233,6 @@ ipc.on('asReadEnd', function(event, arg) {
|
||||
ipc.on('accessibility', function(event, arg) {
|
||||
postMessage(['accessibility', 'true'], '*')
|
||||
})
|
||||
var webviewDom = document.getElementById('webview')
|
||||
if (webviewDom) {
|
||||
webviewDom.addEventListener('new-window', function(e) {
|
||||
shell.openExternal(e.url)
|
||||
})
|
||||
}
|
||||
ipc.on('twitterLoginComplete', function(event, arg) {
|
||||
postMessage(['twitterLoginComplete', ''], '*')
|
||||
})
|
||||
|
@@ -276,8 +276,6 @@ function deleteImage(key) {
|
||||
title: lang.lang_postimg_delete,
|
||||
type: 'warning',
|
||||
showCancelButton: true,
|
||||
confirmButtonColor: '#3085d6',
|
||||
cancelButtonColor: '#d33',
|
||||
confirmButtonText: lang.lang_yesno,
|
||||
cancelButtonText: lang.lang_no
|
||||
}).then(result => {
|
||||
|
@@ -55,8 +55,6 @@ function post(mode, postvis, dry) {
|
||||
text: lang.lang_post_cwtxt + plus,
|
||||
type: 'info',
|
||||
showCancelButton: true,
|
||||
confirmButtonColor: '#3085d6',
|
||||
cancelButtonColor: '#3085d6',
|
||||
confirmButtonText: lang.lang_post_btn2,
|
||||
cancelButtonText: lang.lang_post_btn3,
|
||||
showCloseButton: true,
|
||||
|
@@ -259,8 +259,6 @@ function block(acct_id) {
|
||||
text: '',
|
||||
type: 'warning',
|
||||
showCancelButton: true,
|
||||
confirmButtonColor: '#3085d6',
|
||||
cancelButtonColor: '#d33',
|
||||
confirmButtonText: lang.lang_yesno,
|
||||
cancelButtonText: lang.lang_no
|
||||
}).then(result => {
|
||||
@@ -312,8 +310,6 @@ function muteDo(acct_id) {
|
||||
text: '',
|
||||
type: 'warning',
|
||||
showCancelButton: true,
|
||||
confirmButtonColor: '#3085d6',
|
||||
cancelButtonColor: '#d33',
|
||||
confirmButtonText: lang.lang_yesno,
|
||||
cancelButtonText: lang.lang_no
|
||||
}).then(result => {
|
||||
@@ -393,8 +389,6 @@ function redraft(id, acct_id) {
|
||||
text: lang.lang_status_redraft,
|
||||
type: 'warning',
|
||||
showCancelButton: true,
|
||||
confirmButtonColor: '#3085d6',
|
||||
cancelButtonColor: '#d33',
|
||||
confirmButtonText: lang.lang_yesno,
|
||||
cancelButtonText: lang.lang_no
|
||||
}).then(result => {
|
||||
|
@@ -415,6 +415,7 @@ function notfCanceler(acct) {
|
||||
$('.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)
|
||||
}
|
||||
|
@@ -290,6 +290,7 @@ function parse(obj, mix, acct_id, tlid, popup, mutefilter, type, onlyContent) {
|
||||
$('.notf-reply_' + acct_id).text(replyct * 1 - -1)
|
||||
localStorage.setItem('notf-reply_' + acct_id, replyct * 1 - -1)
|
||||
$('.notf-reply_' + acct_id).removeClass('hide')
|
||||
$(`.boxIn[data-acct=${acct_id}] .notice-box`).addClass('has-notf')
|
||||
var sound = localStorage.getItem('replySound')
|
||||
if (sound == 'default') {
|
||||
var file = '../../source/notif3.wav'
|
||||
@@ -299,6 +300,7 @@ function parse(obj, mix, acct_id, tlid, popup, mutefilter, type, onlyContent) {
|
||||
$('.notf-bt_' + acct_id).text(btct * 1 - -1)
|
||||
localStorage.setItem('notf-bt_' + acct_id, btct * 1 - -1)
|
||||
$('.notf-bt_' + acct_id).removeClass('hide')
|
||||
$(`.boxIn[data-acct=${acct_id}] .notice-box`).addClass('has-notf')
|
||||
var sound = localStorage.getItem('btSound')
|
||||
if (sound == 'default') {
|
||||
var file = '../../source/notif2.wav'
|
||||
@@ -308,6 +310,7 @@ function parse(obj, mix, acct_id, tlid, popup, mutefilter, type, onlyContent) {
|
||||
$('.notf-fav_' + acct_id).text(favct * 1 - -1)
|
||||
localStorage.setItem('notf-fav_' + acct_id, favct * 1 - -1)
|
||||
$('.notf-fav_' + acct_id).removeClass('hide')
|
||||
$(`.boxIn[data-acct=${acct_id}] .notice-box`).addClass('has-notf')
|
||||
var sound = localStorage.getItem('favSound')
|
||||
if (sound == 'default') {
|
||||
var file = '../../source/notif.wav'
|
||||
@@ -1370,8 +1373,6 @@ function client(name) {
|
||||
text: name + lang.lang_parse_clienttxt,
|
||||
type: 'info',
|
||||
showCancelButton: true,
|
||||
confirmButtonColor: '#3085d6',
|
||||
cancelButtonColor: '#3085d6',
|
||||
confirmButtonText: lang.lang_parse_clientmute,
|
||||
cancelButtonText: lang.lang_parse_clientemp,
|
||||
showCloseButton: true,
|
||||
|
@@ -1331,6 +1331,7 @@ function asReadEnd() {
|
||||
Swal.fire({
|
||||
title: lang.lang_tl_postmarkers_title,
|
||||
html: lang.lang_tl_postmarkers,
|
||||
showConfirmButton: false,
|
||||
timer: 3000,
|
||||
onBeforeOpen: () => {
|
||||
Swal.showLoading()
|
||||
|
@@ -185,6 +185,7 @@ function parseColumn(target, dontclose) {
|
||||
}
|
||||
var html = webviewParse('https://tweetdeck.twitter.com', key, insert, icnsert, css)
|
||||
$('#timeline-container').append(html)
|
||||
initWebviewEvent()
|
||||
} else if (acct.type == 'tootsearch') {
|
||||
if (!acct.left_fold) {
|
||||
basekey = key
|
||||
@@ -325,6 +326,7 @@ function parseColumn(target, dontclose) {
|
||||
} else {
|
||||
markers = false
|
||||
}
|
||||
const smallHeader = localStorage.getItem('smallHeader') === 'yes'
|
||||
if (!markers) {
|
||||
unread = ''
|
||||
}
|
||||
@@ -371,10 +373,9 @@ function parseColumn(target, dontclose) {
|
||||
}
|
||||
var html = `
|
||||
<div class="boxIn" id="timeline_box_${key}_box" tlid="${key}" data-acct="${acct.domain}" style="${addHeight}">
|
||||
<div class="notice-box z-depth-2" id="menu_${key}" style="${insert}">
|
||||
<div class="notice-box ${smallHeader ? 'small-header' : ''} z-depth-2" id="menu_${key}" style="${insert}">
|
||||
<div class="area-notice">
|
||||
<i class="material-icons waves-effect ${isMisRed} notice_icon_acct_${acct.domain}" id="notice_icon_${key}" ${notf_attr}
|
||||
style="font-size:40px; padding-top:25%;"
|
||||
<i class="material-icons waves-effect ${isMisRed} notice_icon_acct_${acct.domain} top-icon" id="notice_icon_${key}" ${notf_attr}
|
||||
onclick="checkStr('${acct.type}','${data}','${acct.domain}', '${key}', '${delc}','${voice}',null)"
|
||||
title="${lang.lang_layout_gotop}" aria-hidden="true">
|
||||
</i>
|
||||
@@ -397,10 +398,10 @@ function parseColumn(target, dontclose) {
|
||||
${if_tag_btn}
|
||||
</div>
|
||||
<div class="area-sta">
|
||||
<span class="new badge teal notf-reply_${acct.domain} hide" data-badge-caption="Reply" aria-hidden="true">0</span>
|
||||
<span class="new badge yellow black-text notf-fav_${acct.domain} hide" data-badge-caption="Fav" aria-hidden="true">0</span>
|
||||
<span class="new badge teal notf-reply_${acct.domain} hide" data-badge-caption="Rp" aria-hidden="true">0</span>
|
||||
<span class="new badge yellow black-text notf-fav_${acct.domain} hide" data-badge-caption="Fv" aria-hidden="true">0</span>
|
||||
<span class="new badge blue notf-bt_${acct.domain} hide" data-badge-caption="BT" aria-hidden="true">0</span>
|
||||
<span class="new badge orange notf-follow_${acct.domain} hide" data-badge-caption="Follow" aria-hidden="true">0</span>
|
||||
<span class="new badge orange notf-follow_${acct.domain} hide" data-badge-caption="Fw" aria-hidden="true">0</span>
|
||||
</div>
|
||||
<div class="area-a2">
|
||||
<a onclick="removeColumn('${key}')" class="setting nex">
|
||||
@@ -643,8 +644,6 @@ function removeColumn(tlid) {
|
||||
text: lang.lang_layout_deleteColumnDesc,
|
||||
type: 'warning',
|
||||
showCancelButton: true,
|
||||
confirmButtonColor: '#3085d6',
|
||||
cancelButtonColor: '#d33',
|
||||
confirmButtonText: lang.lang_yesno,
|
||||
cancelButtonText: lang.lang_no,
|
||||
}).then((result) => {
|
||||
|
@@ -5,26 +5,29 @@ var envView = new Vue({
|
||||
methods: {
|
||||
complete: function (i, val) {
|
||||
var ls = envView.config[i]
|
||||
let header = ls.text.head
|
||||
if (!ls.data) {
|
||||
ls = [ls]
|
||||
} else {
|
||||
ls = ls.data
|
||||
}
|
||||
for (var j = 0; j < ls.length; j++) {
|
||||
M.toast({ html: 'Complete', displayLength: 3000 })
|
||||
var id = ls[j].id
|
||||
var val = $('#' + id).val()
|
||||
localStorage.setItem(ls[j].storage, val)
|
||||
}
|
||||
if (ls == 'ha') {
|
||||
if (ls[0].id == 'ha') {
|
||||
hardwareAcceleration(val)
|
||||
}
|
||||
if (ls == 'ua_setting') {
|
||||
if (ls[0].id == 'webview') {
|
||||
postMessage(['webviewSetting', val], '*')
|
||||
}
|
||||
if (ls[0].id == 'ua_setting') {
|
||||
useragent(val)
|
||||
}
|
||||
if (ls == 'frame') {
|
||||
if (ls[0].id == 'frame') {
|
||||
frameSet(val)
|
||||
}
|
||||
M.toast({ html: `Updated: ${header}`, displayLength: 3000 })
|
||||
return true
|
||||
},
|
||||
},
|
||||
@@ -35,6 +38,7 @@ var tlView = new Vue({
|
||||
methods: {
|
||||
complete: function (i, val) {
|
||||
var ls = tlView.config[i]
|
||||
let header = ls.text.head
|
||||
if (val) {
|
||||
localStorage.setItem(ls.storage, val)
|
||||
} else {
|
||||
@@ -44,12 +48,12 @@ var tlView = new Vue({
|
||||
ls = ls.data
|
||||
}
|
||||
for (var j = 0; j < ls.length; j++) {
|
||||
M.toast({ html: 'Complete', displayLength: 3000 })
|
||||
var id = ls[j].id
|
||||
var val = $('#' + id).val()
|
||||
localStorage.setItem(ls[j].storage, val)
|
||||
}
|
||||
}
|
||||
M.toast({ html: `Updated: ${header}`, displayLength: 3000 })
|
||||
return true
|
||||
},
|
||||
},
|
||||
@@ -64,6 +68,7 @@ var postView = new Vue({
|
||||
methods: {
|
||||
complete: function (i, val) {
|
||||
var ls = postView.config[i]
|
||||
let header = ls.text.head
|
||||
if (val) {
|
||||
localStorage.setItem(ls.storage, val)
|
||||
} else {
|
||||
@@ -79,6 +84,7 @@ var postView = new Vue({
|
||||
localStorage.setItem(ls[j].storage, val)
|
||||
}
|
||||
}
|
||||
M.toast({ html: `Updated: ${header}`, displayLength: 3000 })
|
||||
return true
|
||||
},
|
||||
},
|
||||
@@ -302,17 +308,16 @@ function oksload() {
|
||||
function changeLang() {
|
||||
const lang = $('#langsel-sel').val()
|
||||
console.log(lang)
|
||||
if(lang) postMessage(['lang', lang], '*')
|
||||
if (lang) postMessage(['lang', lang], '*')
|
||||
}
|
||||
function exportSettings() {
|
||||
var exp = exportSettingsCore()
|
||||
$('#imp-exp').val(JSON5.stringify(exp))
|
||||
Swal.fire({
|
||||
title: lang.lang_setting_exportwarn,
|
||||
title: 'Warning',
|
||||
text: lang.lang_setting_exportwarn,
|
||||
type: 'warning',
|
||||
showCancelButton: true,
|
||||
confirmButtonColor: '#3085d6',
|
||||
cancelButtonColor: '#d33',
|
||||
confirmButtonText: lang.lang_yesno,
|
||||
cancelButtonText: lang.lang_no,
|
||||
}).then((result) => {
|
||||
@@ -387,20 +392,19 @@ function exportSettingsCore() {
|
||||
return exp
|
||||
}
|
||||
function importSettings() {
|
||||
if ($('#imp-exp').val()) {
|
||||
importSettingsCore(JSON5.parse($('#imp-exp').val()))
|
||||
return false
|
||||
}
|
||||
Swal.fire({
|
||||
title: lang.lang_setting_importwarn,
|
||||
title: 'Warning',
|
||||
text: lang.lang_setting_importwarn,
|
||||
type: 'warning',
|
||||
showCancelButton: true,
|
||||
confirmButtonColor: '#3085d6',
|
||||
cancelButtonColor: '#d33',
|
||||
confirmButtonText: lang.lang_yesno,
|
||||
cancelButtonText: lang.lang_no,
|
||||
}).then((result) => {
|
||||
if (result.value) {
|
||||
if ($('#imp-exp').val()) {
|
||||
importSettingsCore(JSON5.parse($('#imp-exp').val()))
|
||||
return false
|
||||
}
|
||||
postMessage(['importSettings', ''], '*')
|
||||
}
|
||||
})
|
||||
@@ -549,9 +553,9 @@ function copyColor(from, to) {
|
||||
i++
|
||||
}
|
||||
}
|
||||
function customComp() {
|
||||
function customComp(preview) {
|
||||
var nameC = $('#custom_name').val()
|
||||
if (!nameC) {
|
||||
if (!nameC && !preview) {
|
||||
return false
|
||||
}
|
||||
var descC = $('#custom_desc').val()
|
||||
@@ -583,7 +587,7 @@ function customComp() {
|
||||
if (id == 'add_new' || defaults.includes(id)) {
|
||||
id = makeCID()
|
||||
}
|
||||
localStorage.setItem('customtheme-id', id)
|
||||
if (!preview) localStorage.setItem('customtheme-id', id)
|
||||
var json = {
|
||||
name: nameC,
|
||||
author: my,
|
||||
@@ -600,38 +604,18 @@ function customComp() {
|
||||
version: '2'
|
||||
}
|
||||
$('#custom_json').val(JSON.stringify(json))
|
||||
let timerInterval
|
||||
Swal.fire({
|
||||
title: 'Saving...',
|
||||
html: '',
|
||||
timer: 1000,
|
||||
timerProgressBar: true,
|
||||
onBeforeOpen: () => {
|
||||
Swal.showLoading()
|
||||
},
|
||||
onClose: () => {
|
||||
clearInterval(timerInterval)
|
||||
}
|
||||
}).then((result) => {
|
||||
themes()
|
||||
ctLoad()
|
||||
if (preview) {
|
||||
postMessage(['themeCSSPreview', json], '*')
|
||||
} else {
|
||||
$('#custom-edit-sel').val(id)
|
||||
$('select').formSelect()
|
||||
Swal.fire({
|
||||
title: 'Refreshing...',
|
||||
html: '',
|
||||
timer: 1000,
|
||||
timerProgressBar: true,
|
||||
onBeforeOpen: () => {
|
||||
Swal.showLoading()
|
||||
},
|
||||
onClose: () => {
|
||||
clearInterval(timerInterval)
|
||||
}
|
||||
}).then((result) => {
|
||||
$('#custom-edit-sel').val(id)
|
||||
$('select').formSelect()
|
||||
type: 'success',
|
||||
title: 'Saved',
|
||||
})
|
||||
})
|
||||
postMessage(['themeJsonCreate', JSON.stringify(json)], '*')
|
||||
postMessage(['themeJsonCreate', JSON.stringify(json)], '*')
|
||||
}
|
||||
|
||||
}
|
||||
function deleteIt() {
|
||||
var id = $('#custom-sel-sel').val()
|
||||
@@ -787,13 +771,14 @@ function completePlugin(comp) {
|
||||
var pgns = localStorage.getItem('plugins')
|
||||
var args = JSON.parse(pgns ? pgns : '[]')
|
||||
var id = $('#plugin').attr('data-id')
|
||||
|
||||
|
||||
var inputPlugin = editor.getValue()
|
||||
var meta = getMeta(inputPlugin)
|
||||
if (!meta.data) {
|
||||
Swal.fire({
|
||||
icon: 'error',
|
||||
title: `error on line ${meta.location.start.line}`,
|
||||
title: 'Syntax Error',
|
||||
text: `error on line ${meta.location.start.line}`,
|
||||
text: meta,
|
||||
})
|
||||
return false
|
||||
@@ -801,7 +786,7 @@ function completePlugin(comp) {
|
||||
if (!meta.data.name || !meta.data.version || !meta.data.event || !meta.data.author) {
|
||||
Swal.fire({
|
||||
icon: 'error',
|
||||
title: 'error',
|
||||
title: 'Meta data error',
|
||||
title: 'Syntax Error of META DATA',
|
||||
})
|
||||
return false
|
||||
@@ -821,7 +806,7 @@ function completePlugin(comp) {
|
||||
}
|
||||
var ss = args
|
||||
localStorage.setItem('plugins', JSON.stringify(ss))
|
||||
if(comp) return false
|
||||
if (comp) return false
|
||||
$('#plugin').attr('data-id', 'add_new')
|
||||
editor.setValue('', -1)
|
||||
pluginLoad()
|
||||
@@ -832,7 +817,8 @@ function testExecTrg() {
|
||||
if (meta.location) {
|
||||
Swal.fire({
|
||||
icon: 'error',
|
||||
title: `error on line ${meta.location.start.line}`,
|
||||
title: 'Error',
|
||||
text: `error on line ${meta.location.start.line}`,
|
||||
text: meta,
|
||||
})
|
||||
return false
|
||||
@@ -920,13 +906,13 @@ function checkupd() {
|
||||
if (newest == ver) {
|
||||
Swal.fire({
|
||||
type: 'info',
|
||||
title: lang.lang_setting_noupd,
|
||||
text: lang.lang_setting_noupd,
|
||||
html: ver,
|
||||
})
|
||||
} else if (ver.indexOf('beta') != -1 || winstore) {
|
||||
Swal.fire({
|
||||
type: 'info',
|
||||
title: lang.lang_setting_thisisbeta,
|
||||
text: lang.lang_setting_thisisbeta,
|
||||
html: ver,
|
||||
})
|
||||
} else {
|
||||
|
@@ -166,7 +166,7 @@ function nowplaying(mode) {
|
||||
} else {
|
||||
Swal.fire({
|
||||
type: 'info',
|
||||
title: lang.lang_spotify_acct,
|
||||
text: lang.lang_spotify_acct,
|
||||
})
|
||||
}
|
||||
} else if (mode == 'itunes') {
|
||||
@@ -239,7 +239,7 @@ function nowplaying(mode) {
|
||||
} else {
|
||||
Swal.fire({
|
||||
type: 'info',
|
||||
title: lang.lang_spotify_acct,
|
||||
text: lang.lang_spotify_acct,
|
||||
})
|
||||
}
|
||||
}
|
||||
|
@@ -226,7 +226,7 @@ function spotifytips() {
|
||||
} else {
|
||||
Swal.fire({
|
||||
type: 'info',
|
||||
title: lang.lang_spotify_acct
|
||||
text: lang.lang_spotify_acct
|
||||
})
|
||||
tips('ver')
|
||||
return false
|
||||
|
11
app/main.js
11
app/main.js
@@ -123,6 +123,7 @@ function createWindow() {
|
||||
var info_path = join(app.getPath('userData'), 'window-size.json')
|
||||
var max_info_path = join(app.getPath('userData'), 'max-window-size.json')
|
||||
var ha_path = join(app.getPath('userData'), 'hardwareAcceleration')
|
||||
var wv_path = join(app.getPath('userData'), 'webview')
|
||||
var ua_path = join(app.getPath('userData'), 'useragent')
|
||||
try {
|
||||
fs.readFileSync(ha_path, 'utf8')
|
||||
@@ -131,6 +132,8 @@ function createWindow() {
|
||||
} catch {
|
||||
if (!packaged) console.log('enabled: Hardware Acceleration')
|
||||
}
|
||||
let webviewEnabled = false
|
||||
if(fs.existsSync(wv_path, 'utf8')) webviewEnabled = true
|
||||
var window_size
|
||||
try {
|
||||
window_size = JSON.parse(fs.readFileSync(info_path, 'utf8'))
|
||||
@@ -156,7 +159,7 @@ function createWindow() {
|
||||
var bit = process.arch
|
||||
var arg = {
|
||||
webPreferences: {
|
||||
webviewTag: true,
|
||||
webviewTag: webviewEnabled,
|
||||
nodeIntegration: false,
|
||||
contextIsolation: true,
|
||||
spellcheck: false,
|
||||
@@ -236,7 +239,7 @@ function createWindow() {
|
||||
e.preventDefault()
|
||||
}
|
||||
const promise = new Promise(function (resolve) {
|
||||
mainWindow.webContents.send('asReadEnd', '')
|
||||
mainWindow.send('asReadEnd', '')
|
||||
let wait = 3000
|
||||
const url = mainWindow.webContents.getURL()
|
||||
if(!url.match(/index.html/)) wait = 0
|
||||
@@ -283,7 +286,7 @@ function createWindow() {
|
||||
})
|
||||
mainWindow.on('minimize', function () {
|
||||
writePos(mainWindow)
|
||||
mainWindow.webContents.send('asRead', '')
|
||||
mainWindow.send('asRead', '')
|
||||
})
|
||||
|
||||
var platform = process.platform
|
||||
@@ -319,7 +322,7 @@ function mouseTrack(mainWindow) {
|
||||
if (unchanged > 60 && !locked) {
|
||||
unchanged = 0
|
||||
locked = true
|
||||
mainWindow.webContents.send('asRead', '')
|
||||
mainWindow.send('asRead', '')
|
||||
}
|
||||
}
|
||||
x = xNow
|
||||
|
@@ -10,7 +10,7 @@ function css(mainWindow) {
|
||||
|
||||
ipc.on('custom-css-create', function (e, arg) {
|
||||
fs.writeFileSync(customcss, arg);
|
||||
e.sender.webContents.send('custom-css-create-complete', "");
|
||||
e.sender.send('custom-css-create-complete', "");
|
||||
})
|
||||
ipc.on('custom-css-request', function (e, arg) {
|
||||
try {
|
||||
@@ -18,29 +18,29 @@ function css(mainWindow) {
|
||||
} catch (e) {
|
||||
var css = "";
|
||||
}
|
||||
e.sender.webContents.send('custom-css-response', css);
|
||||
e.sender.send('custom-css-response', css);
|
||||
})
|
||||
ipc.on('theme-json-create', function (e, arg) {
|
||||
var themecss = join(app.getPath("userData"), JSON5.parse(arg)["id"] +
|
||||
".thedesktheme");
|
||||
fs.writeFileSync(themecss, JSON5.stringify(JSON5.parse(arg)));
|
||||
if (JSON5.parse(arg)["id"]) {
|
||||
e.sender.webContents.send('theme-json-create-complete', "");
|
||||
e.sender.send('theme-json-create-complete', "");
|
||||
} else {
|
||||
e.sender.webContents.send('theme-json-create-complete', "error");
|
||||
e.sender.send('theme-json-create-complete', "error");
|
||||
}
|
||||
})
|
||||
ipc.on('theme-json-delete', function (e, arg) {
|
||||
try{
|
||||
try {
|
||||
var themecss = join(app.getPath("userData"), arg);
|
||||
console.log(themecss);
|
||||
fs.unlink(themecss, function (err) {
|
||||
e.sender.webContents.send('theme-json-delete-complete', "");
|
||||
e.sender.send('theme-json-delete-complete', "");
|
||||
});
|
||||
} catch {
|
||||
e.sender.webContents.send('theme-json-delete-complete', 'cannot delete');
|
||||
e.sender.send('theme-json-delete-complete', 'cannot delete');
|
||||
}
|
||||
|
||||
|
||||
})
|
||||
ipc.on('theme-json-request', function (e, arg) {
|
||||
try {
|
||||
@@ -52,15 +52,19 @@ function css(mainWindow) {
|
||||
var raw = fs.readFileSync(themecss, 'utf8')
|
||||
var json = JSON5.parse(raw)
|
||||
}
|
||||
e.sender.webContents.send('theme-json-response', [json, raw]);
|
||||
e.sender.send('theme-json-response', [json, raw]);
|
||||
})
|
||||
ipc.on('theme-css-request', function (e, arg) {
|
||||
try {
|
||||
var themecss = join(app.getAppPath(), '/source/themes', arg)
|
||||
var json = JSON5.parse(fs.readFileSync(themecss, 'utf8'))
|
||||
} catch {
|
||||
var themecss = join(app.getPath("userData"), arg)
|
||||
var json = JSON5.parse(fs.readFileSync(themecss, 'utf8'))
|
||||
ipc.on('theme-css-request', function (e, args) {
|
||||
if (args[0] === 'themeCSSPreview') {
|
||||
var json = args[1]
|
||||
} else {
|
||||
try {
|
||||
var themecss = join(app.getAppPath(), '/source/themes', args[1])
|
||||
var json = JSON5.parse(fs.readFileSync(themecss, 'utf8'))
|
||||
} catch {
|
||||
var themecss = join(app.getPath("userData"), args[1])
|
||||
var json = JSON5.parse(fs.readFileSync(themecss, 'utf8'))
|
||||
}
|
||||
}
|
||||
|
||||
try {
|
||||
@@ -149,7 +153,7 @@ function css(mainWindow) {
|
||||
} else {
|
||||
var css = compatibleTheme(json)
|
||||
}
|
||||
e.sender.webContents.send('theme-css-response', css);
|
||||
e.sender.send('theme-css-response', css);
|
||||
} catch (e) {
|
||||
var css = "";
|
||||
}
|
||||
@@ -270,7 +274,7 @@ function css(mainWindow) {
|
||||
default: false
|
||||
})
|
||||
}
|
||||
e.sender.webContents.send('theme-json-list-response', themes);
|
||||
e.sender.send('theme-json-list-response', themes);
|
||||
})
|
||||
}
|
||||
exports.css = css;
|
||||
|
@@ -41,19 +41,19 @@ function dl(mainWindow, lang_path, base, dirname) {
|
||||
//アプデDL
|
||||
ipc.on('download-btn', async (e, args) => {
|
||||
function dl(url, file, dir, e) {
|
||||
e.sender.webContents.send('mess', 'Start...')
|
||||
e.sender.send('mess', 'Start...')
|
||||
const opts = {
|
||||
directory: dir,
|
||||
filename: file,
|
||||
openFolderWhenDone: true,
|
||||
onProgress: function(event) {
|
||||
e.sender.webContents.send('prog', [event, args[2]])
|
||||
e.sender.send('prog', [event, args[2]])
|
||||
},
|
||||
saveAs: false
|
||||
}
|
||||
download(updatewin, url, opts)
|
||||
.then(dl => {
|
||||
e.sender.webContents.send('mess', 'ダウンロードが完了しました。')
|
||||
e.sender.send('mess', 'ダウンロードが完了しました。')
|
||||
app.quit()
|
||||
})
|
||||
.catch(console.error)
|
||||
@@ -111,7 +111,7 @@ function dl(mainWindow, lang_path, base, dirname) {
|
||||
filename: name,
|
||||
openFolderWhenDone: false,
|
||||
onProgress: function(e) {
|
||||
event.sender.webContents.send('general-dl-prog', e)
|
||||
event.sender.send('general-dl-prog', e)
|
||||
},
|
||||
saveAs: false
|
||||
}
|
||||
@@ -126,7 +126,7 @@ function dl(mainWindow, lang_path, base, dirname) {
|
||||
} else {
|
||||
var name = dir
|
||||
}
|
||||
event.sender.webContents.send('general-dl-message', name)
|
||||
event.sender.send('general-dl-message', name)
|
||||
})
|
||||
.catch(console.error)
|
||||
})
|
||||
|
@@ -26,14 +26,14 @@ function img(mainWindow, dir) {
|
||||
for (var i = 0; i < fileNames.length; i++) {
|
||||
var path = fileNames[i]
|
||||
var bin = fs.readFileSync(path, 'base64')
|
||||
e.sender.webContents.send('resizeJudgement', [bin, 'new'])
|
||||
e.sender.send('resizeJudgement', [bin, 'new'])
|
||||
}
|
||||
})
|
||||
ipc.on('bmp-image', (e, args) => {
|
||||
Jimp.read(args[0], function (err, lenna) {
|
||||
if (err) throw err
|
||||
lenna.getBase64(Jimp.MIME_PNG, function (err, src) {
|
||||
e.sender.webContents.send('bmp-img-comp', [src, args[1]])
|
||||
e.sender.send('bmp-img-comp', [src, args[1]])
|
||||
})
|
||||
})
|
||||
})
|
||||
@@ -49,7 +49,7 @@ function img(mainWindow, dir) {
|
||||
Jimp.read(decodedFile, function (err, lenna) {
|
||||
if (err) throw err
|
||||
lenna.scaleToFit(args[1], args[1]).getBase64(Jimp[use], function (err, src) {
|
||||
e.sender.webContents.send('bmp-img-comp', [src, args[1]])
|
||||
e.sender.send('bmp-img-comp', [src, args[1]])
|
||||
})
|
||||
})
|
||||
})
|
||||
@@ -71,12 +71,12 @@ function img(mainWindow, dir) {
|
||||
var ave = (color.r + color.g + color.b) / 3
|
||||
if (ave > 128) {
|
||||
image.print(font, left, top, args[1]).getBase64(Jimp.MIME_PNG, function (err, src) {
|
||||
e.sender.webContents.send('bmp-img-comp', [src, args[1], true])
|
||||
e.sender.send('bmp-img-comp', [src, args[1], true])
|
||||
})
|
||||
} else {
|
||||
Jimp.loadFont(Jimp.FONT_SANS_16_WHITE).then((font) => {
|
||||
image.print(font, left, top, args[1]).getBase64(Jimp.MIME_PNG, function (err, src) {
|
||||
e.sender.webContents.send('bmp-img-comp', [src, args[1], true])
|
||||
e.sender.send('bmp-img-comp', [src, args[1], true])
|
||||
})
|
||||
})
|
||||
}
|
||||
|
@@ -16,7 +16,7 @@ function np(mainWindow) {
|
||||
title: title,
|
||||
anynp: true
|
||||
}
|
||||
e.sender.webContents.send('itunes-np', ret)
|
||||
e.sender.send('itunes-np', ret)
|
||||
} else {
|
||||
|
||||
try {
|
||||
@@ -27,16 +27,16 @@ function np(mainWindow) {
|
||||
if(artwork) {
|
||||
const base64 = artwork.toString('base64')
|
||||
value.artwork = base64
|
||||
e.sender.webContents.send('itunes-np', value)
|
||||
e.sender.send('itunes-np', value)
|
||||
}
|
||||
} catch (error) {
|
||||
console.error(error)
|
||||
e.sender.webContents.send('itunes-np', value)
|
||||
e.sender.send('itunes-np', value)
|
||||
}
|
||||
|
||||
} catch (error) {
|
||||
console.error(error)
|
||||
e.sender.webContents.send('itunes-np', error)
|
||||
e.sender.send('itunes-np', error)
|
||||
}
|
||||
}
|
||||
})
|
||||
|
Binary file not shown.
@@ -9,6 +9,7 @@ function system(mainWindow, dir, lang, dirname) {
|
||||
const clipboard = electron.clipboard
|
||||
var tmp_img = join(app.getPath('userData'), 'tmp.png')
|
||||
var ha_path = join(app.getPath('userData'), 'hardwareAcceleration')
|
||||
var wv_path = join(app.getPath('userData'), 'webview')
|
||||
var ua_path = join(app.getPath('userData'), 'useragent')
|
||||
var lang_path = join(app.getPath('userData'), 'language')
|
||||
var log_dir_path = join(app.getPath('userData'), 'logs')
|
||||
@@ -35,13 +36,13 @@ function system(mainWindow, dir, lang, dirname) {
|
||||
} catch {
|
||||
var gitHash = null
|
||||
}
|
||||
e.sender.webContents.send('platform', [process.platform, process.arch, process.version, process.versions.chrome, process.versions.electron, gitHash])
|
||||
e.sender.send('platform', [process.platform, process.arch, process.version, process.versions.chrome, process.versions.electron, gitHash])
|
||||
})
|
||||
//言語
|
||||
ipc.on('lang', function (e, arg) {
|
||||
console.log('set:' + arg)
|
||||
fs.writeFileSync(lang_path, arg)
|
||||
e.sender.webContents.send('langres', arg)
|
||||
e.sender.send('langres', arg)
|
||||
})
|
||||
//エクスポートのダイアログ
|
||||
ipc.on('exportSettings', function (e, args) {
|
||||
@@ -53,7 +54,7 @@ function system(mainWindow, dir, lang, dirname) {
|
||||
if (!savedFiles) {
|
||||
return false
|
||||
}
|
||||
e.sender.webContents.send('exportSettingsFile', savedFiles)
|
||||
e.sender.send('exportSettingsFile', savedFiles)
|
||||
})
|
||||
//インポートのダイアログ
|
||||
ipc.on('importSettings', function (e, args) {
|
||||
@@ -66,7 +67,7 @@ function system(mainWindow, dir, lang, dirname) {
|
||||
if (!fileNames) {
|
||||
return false
|
||||
}
|
||||
e.sender.webContents.send('config', JSON5.parse(fs.readFileSync(fileNames[0], 'utf8')))
|
||||
e.sender.send('config', JSON5.parse(fs.readFileSync(fileNames[0], 'utf8')))
|
||||
})
|
||||
//保存フォルダのダイアログ
|
||||
ipc.on('savefolder', function (e, args) {
|
||||
@@ -77,7 +78,7 @@ function system(mainWindow, dir, lang, dirname) {
|
||||
properties: ['openDirectory'],
|
||||
}
|
||||
)
|
||||
e.sender.webContents.send('savefolder', fileNames[0])
|
||||
e.sender.send('savefolder', fileNames[0])
|
||||
})
|
||||
//カスタムサウンドのダイアログ
|
||||
ipc.on('customSound', function (e, arg) {
|
||||
@@ -92,7 +93,7 @@ function system(mainWindow, dir, lang, dirname) {
|
||||
],
|
||||
}
|
||||
)
|
||||
e.sender.webContents.send('customSoundRender', [arg, fileNames[0]])
|
||||
e.sender.send('customSoundRender', [arg, fileNames[0]])
|
||||
})
|
||||
|
||||
//ハードウェアアクセラレーションの無効化
|
||||
@@ -100,7 +101,16 @@ function system(mainWindow, dir, lang, dirname) {
|
||||
if (arg == 'true') {
|
||||
fs.writeFileSync(ha_path, arg)
|
||||
} else {
|
||||
fs.unlink(ha_path, function (err) {})
|
||||
fs.unlink(ha_path, function (err) { })
|
||||
}
|
||||
app.relaunch()
|
||||
app.exit()
|
||||
})
|
||||
ipc.on('webview', function (e, arg) {
|
||||
if (arg == 'true') {
|
||||
fs.writeFileSync(wv_path, arg)
|
||||
} else {
|
||||
fs.unlink(wv_path, function (err) { })
|
||||
}
|
||||
app.relaunch()
|
||||
app.exit()
|
||||
@@ -108,7 +118,7 @@ function system(mainWindow, dir, lang, dirname) {
|
||||
//ユーザーエージェント
|
||||
ipc.on('ua', function (e, arg) {
|
||||
if (arg == '') {
|
||||
fs.unlink(ua_path, function (err) {})
|
||||
fs.unlink(ua_path, function (err) { })
|
||||
} else {
|
||||
fs.writeFileSync(ua_path, arg)
|
||||
}
|
||||
@@ -124,7 +134,7 @@ function system(mainWindow, dir, lang, dirname) {
|
||||
//スクリーンリーダー
|
||||
ipc.on('acsCheck', function (e, arg) {
|
||||
if (app.accessibilitySupportEnabled) {
|
||||
mainWindow.webContents.send('accessibility', 'true')
|
||||
mainWindow.send('accessibility', 'true')
|
||||
}
|
||||
})
|
||||
ipc.on('quit', (e, args) => {
|
||||
@@ -188,8 +198,8 @@ function system(mainWindow, dir, lang, dirname) {
|
||||
})
|
||||
function mems() {
|
||||
var mem = os.totalmem() - os.freemem()
|
||||
if (mainWindow && event.webContents) {
|
||||
event.webContents.send('memory', [mem, os.cpus()[0].model, os.totalmem(), os.cpus().length, os.uptime()])
|
||||
if (mainWindow && event) {
|
||||
event.send('memory', [mem, os.cpus()[0].model, os.totalmem(), os.cpus().length, os.uptime()])
|
||||
}
|
||||
}
|
||||
ipc.on('endmem', (e, arg) => {
|
||||
@@ -200,7 +210,7 @@ function system(mainWindow, dir, lang, dirname) {
|
||||
|
||||
ipc.on('export', (e, args) => {
|
||||
fs.writeFileSync(args[0], JSON5.stringify(args[1]))
|
||||
e.sender.webContents.send('exportAllComplete', '')
|
||||
e.sender.send('exportAllComplete', '')
|
||||
})
|
||||
//フォント
|
||||
function object_array_sort(data, key, order, fn) {
|
||||
@@ -239,7 +249,7 @@ function system(mainWindow, dir, lang, dirname) {
|
||||
var SystemFonts = require('system-font-families').default
|
||||
var fm = new SystemFonts()
|
||||
const fontList = fm.getFontsSync()
|
||||
e.sender.webContents.send('font-list', fontList)
|
||||
e.sender.send('font-list', fontList)
|
||||
})
|
||||
//コピー
|
||||
ipc.on('copy', (e, arg) => {
|
||||
@@ -276,7 +286,7 @@ function system(mainWindow, dir, lang, dirname) {
|
||||
logs = todayLog + yestLog + yest2Log
|
||||
})
|
||||
logs = yest2Log + yestLog + todayLog
|
||||
e.sender.webContents.send('logData', logs)
|
||||
e.sender.send('logData', logs)
|
||||
})
|
||||
})
|
||||
|
||||
@@ -299,5 +309,28 @@ function system(mainWindow, dir, lang, dirname) {
|
||||
})
|
||||
}
|
||||
})
|
||||
|
||||
ipc.on('twitterLogin', (e, args) => {
|
||||
const window = new BrowserWindow({
|
||||
webPreferences: {
|
||||
webviewTag: false,
|
||||
nodeIntegration: false,
|
||||
contextIsolation: true,
|
||||
preload: join(dirname, 'js', 'platform', 'preload.js'),
|
||||
},
|
||||
width: 414,
|
||||
height: 736,
|
||||
})
|
||||
const login = `https://mobile.twitter.com/login?hide_message=true&redirect_after_login=https%3A%2F%2Ftweetdeck.twitter.com%2F%3Fvia_twitter_login%3Dtrue`
|
||||
const logout = `https://mobile.twitter.com/logout?redirect_after_logout=https%3A%2F%2Ftweetdeck.twitter.com%2F`
|
||||
window.loadURL(args ? logout : login)
|
||||
window.webContents.on('did-navigate', () => {
|
||||
const url = window.webContents.getURL()
|
||||
if (url.match("https://tweetdeck.twitter.com")) {
|
||||
window.close()
|
||||
e.sender.send('twitterLoginComplete', '')
|
||||
}
|
||||
})
|
||||
})
|
||||
}
|
||||
exports.system = system
|
||||
|
@@ -1,26 +1,24 @@
|
||||
{
|
||||
"name": "thedesk",
|
||||
"version": "22.1.1",
|
||||
"version": "22.2.0",
|
||||
"codename": "Koume",
|
||||
"description": "TheDesk is a Mastodon client for PC.",
|
||||
"repository": "https://github.com/cutls/TheDesk",
|
||||
"main": "main.js",
|
||||
"scripts": {
|
||||
"test": "echo \"Error: no test specified\" && exit 1",
|
||||
"construct": "cd view/make && node make --automatic && cd ../../ && browserify aiscript.js -o js/platform/aiscript.js",
|
||||
"construct:store": "cd view/make && node make --automatic --store && cd ../../ && browserify aiscript.js -o js/platform/aiscript.js",
|
||||
"dev": "npx electron ./ --dev",
|
||||
"dist": "build --linux snap",
|
||||
"watchview": "node view/make/make.js --automatic --watch",
|
||||
"build:js": "node build.js",
|
||||
"build": "node view/make/make.js --automatic && npx electron-builder",
|
||||
"build:pwa": "node view/make/make.js --automatic --pwa",
|
||||
"build:win:web": "node view/make/make.js --automatic && npx electron-builder --win",
|
||||
"build:win:msstore": "node view/make/make.js --automatic --store && npx electron-builder --win appx",
|
||||
"build:linux:web": "node view/make/make.js --automatic && npx electron-builder --linux",
|
||||
"build:linux:snapstore": "node view/make/make.js --automatic --store && npx electron-builder --linux",
|
||||
"build:mac:web": "node view/make/make.js --automatic && npx electron-builder --mac",
|
||||
"build:mac:homebrew": "node view/make/make.js --automatic --store && npx electron-builder --mac",
|
||||
"postinstall": "run-s util:*",
|
||||
"util:hash": "node gitHash.js",
|
||||
"util:browserify": "browserify aiscript.js -o js/platform/aiscript.js",
|
||||
"construct": "node view/make/makeCli.js",
|
||||
"construct:store": "node view/make/makeCli.js --store",
|
||||
"dev": "run-p dev:*",
|
||||
"dev:run": "electron ./ --dev",
|
||||
"dev:watchview": "node view/make/makeCli.js --watch",
|
||||
"build": "node buildCli.js",
|
||||
"build:pwa": "node view/make/makeCli.js --pwa",
|
||||
"build:all:x64": "node buildCli.js --withStore",
|
||||
"build:all": "node buildCli.js --withStore --withIa32 --withArm64",
|
||||
"lint:fix": "eslint js --fix",
|
||||
"lint": "eslint js"
|
||||
},
|
||||
@@ -62,6 +60,7 @@
|
||||
"@fortawesome/fontawesome-free": "^5.15.2",
|
||||
"@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",
|
||||
"jimp": "^0.16.1",
|
||||
"jquery": "^3.6.0",
|
||||
"jquery-ui-dist": "^1.12.1",
|
||||
@@ -74,70 +73,19 @@
|
||||
"system-font-families": "^0.4.1",
|
||||
"vue": "^2.6.12"
|
||||
},
|
||||
"optionalDependencies": {
|
||||
"itunes-nowplaying-mac": "0.3.1"
|
||||
},
|
||||
"devDependencies": {
|
||||
"browserify": "^17.0.0",
|
||||
"chokidar": "^3.5.1",
|
||||
"electron": "^10.2.0",
|
||||
"dotenv": "^8.2.0",
|
||||
"electron": "^12.0.2",
|
||||
"electron-builder": "^22.10.5",
|
||||
"electron-notarize": "^1.0.0",
|
||||
"electron-rebuild": "^2.3.5",
|
||||
"eslint": "^7.23.0",
|
||||
"npm-run-all": "^4.1.5",
|
||||
"readline-sync": "1.4.10"
|
||||
},
|
||||
"build": {
|
||||
"productName": "TheDesk",
|
||||
"appId": "top.thedesk",
|
||||
"asarUnpack": [
|
||||
"node_modules/itunes-nowplaying-mac",
|
||||
"main/script"
|
||||
],
|
||||
"directories": {
|
||||
"output": "../build"
|
||||
},
|
||||
"win": {
|
||||
"icon": "build/thedesk.ico",
|
||||
"target": [
|
||||
"nsis",
|
||||
"appx",
|
||||
"portable"
|
||||
]
|
||||
},
|
||||
"appx": {
|
||||
"identityName": "53491Cutls.TheDesk",
|
||||
"applicationId": "Cutls.TheDesk",
|
||||
"publisherDisplayName": "Cutls",
|
||||
"publisher": "CN=629757F5-A5EE-474F-9562-B304A89A9FD1",
|
||||
"languages": [
|
||||
"JA-JP",
|
||||
"EN-US"
|
||||
]
|
||||
},
|
||||
"nsis": {
|
||||
"oneClick": false,
|
||||
"allowToChangeInstallationDirectory": true,
|
||||
"artifactName": "TheDesk-setup.${ext}"
|
||||
},
|
||||
"linux": {
|
||||
"icon": "build/icons",
|
||||
"target": [
|
||||
"zip",
|
||||
"appImage",
|
||||
"snap",
|
||||
"deb"
|
||||
],
|
||||
"category": "Network"
|
||||
},
|
||||
"mac": {
|
||||
"target": [
|
||||
"dmg",
|
||||
"zip"
|
||||
]
|
||||
},
|
||||
"electronDownload": {
|
||||
"version": "9.0.5"
|
||||
},
|
||||
"electronVersion": "9.0.5"
|
||||
"resolutions": {
|
||||
"@types/fs-extra": "9.0.11"
|
||||
}
|
||||
}
|
||||
|
@@ -11,6 +11,7 @@
|
||||
<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@@
|
||||
@@ -28,7 +29,7 @@
|
||||
<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.all.min.js"></script>
|
||||
<script type="text/javascript" src="../../@@node_base@@/sweetalert2/dist/sweetalert2.min.js"></script>
|
||||
<script>
|
||||
var misskeytoken = false
|
||||
</script>
|
||||
|
@@ -12,6 +12,7 @@
|
||||
<link href="../../css/post.css" rel="stylesheet" type="text/css" />
|
||||
<link href="../../css/master.css" type="text/css" rel="stylesheet" />
|
||||
<link href="../../css/sort.css" rel="stylesheet" type="text/css" />
|
||||
<link href="../../css/sweetalert2-material.min.css" type="text/css" rel="stylesheet">
|
||||
<link href="../../@@node_base@@/@fortawesome/fontawesome-free/css/all.min.css" type="text/css" rel="stylesheet" />
|
||||
<meta charset="utf-8" />
|
||||
@@comment-start@@
|
||||
@@ -783,38 +784,27 @@
|
||||
<a href="https://thedesk.top" target="_blank">HP</a><br />
|
||||
<a href="https://github.com/cutls/TheDesk" target="_blank">GitHub</a><br />
|
||||
<br />
|
||||
<div id="release-22-1-1_Koume" class="release-do" style="display:none; ">
|
||||
<div id="release-22-2-0_Koume" class="release-do" style="display:none; ">
|
||||
<br />
|
||||
<a href="https://ja.mstdn.
|
||||
wiki/TheDesk" target="_blank">機能一覧</a><br />
|
||||
Pixiv
|
||||
FanboxやPatreonでは支援者様限定で様々なTheDeskに関する記事をご覧いただけます。最低月一更新。<br />
|
||||
困ったときは、<a href="https://docs.thedesk.top">TheDesk Docs</a>をご覧ください。
|
||||
<h5>Release Note 22.1.1 (Koume)</h5>
|
||||
<!--上のdivのidも変えてね-->
|
||||
・Fediversearchを使用するように <a onclick="udgEx('Cutls@cutls.com','main')" class="contributor"><img
|
||||
src="https://media.thedesk.top/accounts/avatars/000/000/001/original/d34ef8bb49d5e011.png">cutls</a>
|
||||
<a onclick="udgEx('popn_ja@popon.pptdn.jp','main')" class="contributor"><img
|
||||
src="https://avatars3.githubusercontent.com/u/24523508?s=88&v=4">kaias1jp</a><br>
|
||||
・コンテキストツール(エアリプチェッカー)をデフォルトで無効に(#445) <a onclick="udgEx('Cutls@cutls.com','main')"
|
||||
class="contributor"><img
|
||||
<h5>Release Note 22.2.0 (Koume)</h5>
|
||||
<!--上のdivのidや1行上のところも変えてね-->
|
||||
・TweetDeck機能の復活 <a onclick="udgEx('Cutls@cutls.com','main')" class="contributor"><img
|
||||
src="https://media.thedesk.top/accounts/avatars/000/000/001/original/d34ef8bb49d5e011.png">cutls</a><br>
|
||||
・Pleromaでリフレッシュトークンの更新がうまくいかない不具合を修正 <a onclick="udgEx('Cutls@cutls.com','main')"
|
||||
class="contributor"><img
|
||||
・頒布されるmacOS向けビルドにNotarize(公証)を追加 <a onclick="udgEx('Cutls@cutls.com','main')" class="contributor"><img
|
||||
src="https://media.thedesk.top/accounts/avatars/000/000/001/original/d34ef8bb49d5e011.png">cutls</a><br>
|
||||
・Mastodonでいきなりアクセストークンが無効化してしまう不具合を修正 <a onclick="udgEx('Cutls@cutls.com','main')"
|
||||
class="contributor"><img
|
||||
・ARM版Windows向けビルドの試験頒布 <a onclick="udgEx('Cutls@cutls.com','main')" class="contributor"><img
|
||||
src="https://media.thedesk.top/accounts/avatars/000/000/001/original/d34ef8bb49d5e011.png">cutls</a><br>
|
||||
・カラム横幅設定が効かない不具合を修正 <a onclick="udgEx('Cutls@cutls.com','main')" class="contributor"><img
|
||||
・ダイアログのデザイン変更 <a onclick="udgEx('Cutls@cutls.com','main')" class="contributor"><img
|
||||
src="https://media.thedesk.top/accounts/avatars/000/000/001/original/d34ef8bb49d5e011.png">cutls</a><br>
|
||||
・一部別ドメイン提供のストリーミングで、ストリーミングに接続できない不具合を修正 <a onclick="udgEx('Cutls@cutls.com','main')"
|
||||
class="contributor"><img
|
||||
・各カラムのヘッダーの高さを減らせるように <a onclick="udgEx('Cutls@cutls.com','main')" class="contributor"><img
|
||||
src="https://media.thedesk.top/accounts/avatars/000/000/001/original/d34ef8bb49d5e011.png">cutls</a><br>
|
||||
・フランス語をbetaから標準翻訳に <a onclick="udgEx('Cutls@cutls.com','main')" class="contributor"><img
|
||||
src="https://media.thedesk.top/accounts/avatars/000/000/001/original/d34ef8bb49d5e011.png">cutls</a><br>
|
||||
・AiScriptエディタにシンタックスハイライトを導入 <a onclick="udgEx('Cutls@cutls.com','main')" class="contributor"><img
|
||||
src="https://media.thedesk.top/accounts/avatars/000/000/001/original/d34ef8bb49d5e011.png">cutls</a><br>
|
||||
|
||||
<h5>ご注意ください</h5>
|
||||
・TweetDeck連携は環境設定から有効にしてからご利用いただけます。
|
||||
</div>
|
||||
<div id="release-en" style="display:none">
|
||||
<h5>Let's make it native!</h5>
|
||||
@@ -1259,7 +1249,7 @@
|
||||
<script type="text/javascript" src="../../js/common/keyshortcut.js"></script>
|
||||
<script type="text/javascript" src="../../js/common/modal.js"></script>
|
||||
<script type="text/javascript" src="../../@@node_base@@/jquery-ui-dist/jquery-ui.min.js"></script>
|
||||
<script type="text/javascript" src="../../@@node_base@@/sweetalert2/dist/sweetalert2.all.min.js"></script>
|
||||
<script type="text/javascript" src="../../@@node_base@@/sweetalert2/dist/sweetalert2.min.js"></script>
|
||||
<script type="text/javascript" src="../../js/platform/punycode.js"></script>
|
||||
<script type="text/javascript" src="../../js/ui/tips.js"></script>
|
||||
<script src="https://twemoji.maxcdn.com/2/twemoji.min.js?2.7"></script>
|
||||
|
@@ -9,6 +9,7 @@
|
||||
"default": "Default",
|
||||
"change": "Change",
|
||||
"select": "Select",
|
||||
"exec": "Exec",
|
||||
"env": "System Preferences",
|
||||
"setlang": "Languages",
|
||||
"backup": "Import and export of preferences",
|
||||
@@ -17,6 +18,8 @@
|
||||
"export": "Export",
|
||||
"hardwareAcceleration": "Disable hardware acceleration",
|
||||
"hardwareAccelerationWarn": "Auto restarted",
|
||||
"webview": "Webview Integration",
|
||||
"webviewWarn": "To use TweetDeck Integration, please turn on. You should understand it may lessen security level.",
|
||||
"theme": "Themes",
|
||||
"popup": "Popup notification",
|
||||
"popupwarn": "Hide to set \"0\"",
|
||||
|
@@ -9,6 +9,7 @@
|
||||
"default": "Default",
|
||||
"change": "Change",
|
||||
"select": "Select",
|
||||
"exec": "Exec",
|
||||
"env": "System Preferences",
|
||||
"setlang": "Languages",
|
||||
"backup": "Import and export of preferences",
|
||||
@@ -17,6 +18,8 @@
|
||||
"export": "Export",
|
||||
"hardwareAcceleration": "Disable hardware acceleration",
|
||||
"hardwareAccelerationWarn": "Auto restarted",
|
||||
"webview": "Webview Integration",
|
||||
"webviewWarn": "To use TweetDeck Integration, please turn on. You should understand it may lessen security level.",
|
||||
"theme": "Themes",
|
||||
"popup": "Popup notification",
|
||||
"popupwarn": "Hide to set \"0\"",
|
||||
|
@@ -9,6 +9,7 @@
|
||||
"default": "По подразбиране",
|
||||
"change": "Промяна",
|
||||
"select": "Избери",
|
||||
"exec": "Exec",
|
||||
"env": "Системни предпочитания",
|
||||
"setlang": "Езици",
|
||||
"backup": "Внос и износ на предпочитания",
|
||||
@@ -17,6 +18,8 @@
|
||||
"export": "Износ",
|
||||
"hardwareAcceleration": "Деактивиране на хардуерното ускорение",
|
||||
"hardwareAccelerationWarn": "Автоматичното рестартиране",
|
||||
"webview": "Webview Integration",
|
||||
"webviewWarn": "To use TweetDeck Integration, please turn on. You should understand it may lessen security level.",
|
||||
"theme": "Теми",
|
||||
"popup": "Известие с изскачащ прозорец (за Windows)",
|
||||
"popupwarn": "Скрито ако е зададено на „0“",
|
||||
|
@@ -232,6 +232,7 @@
|
||||
"lang_parse_html": "Show embed HTML",
|
||||
"lang_parse_notffilter": "Show this user's notifications",
|
||||
"lang_parse_hidden": "Unvisible quoted toot",
|
||||
"lang_parse_disconnected": "Streaming has been disconnected(retry after 3s)",
|
||||
"lang_misskeyparse_renote": "Repost",
|
||||
"lang_misskeyparse_renoteqt": "Renote",
|
||||
"lang_misskeyparse_reaction": "Reaction",
|
||||
|
@@ -9,6 +9,7 @@
|
||||
"default": "Default",
|
||||
"change": "Change",
|
||||
"select": "Select",
|
||||
"exec": "Exec",
|
||||
"env": "System Preferences",
|
||||
"setlang": "Languages",
|
||||
"backup": "Import and export of preferences",
|
||||
@@ -17,6 +18,8 @@
|
||||
"export": "Export",
|
||||
"hardwareAcceleration": "Disable hardware acceleration",
|
||||
"hardwareAccelerationWarn": "Auto restarted",
|
||||
"webview": "Webview Integration",
|
||||
"webviewWarn": "To use TweetDeck Integration, please turn on. You should understand it may lessen security level.",
|
||||
"theme": "Themes",
|
||||
"popup": "Popup notification",
|
||||
"popupwarn": "Hide to set \"0\"",
|
||||
|
@@ -9,6 +9,7 @@
|
||||
"default": "Default",
|
||||
"change": "Změnit",
|
||||
"select": "Vybrat",
|
||||
"exec": "Exec",
|
||||
"env": "Systémové předvolby",
|
||||
"setlang": "Jazyky",
|
||||
"backup": "Import a export předvoleb",
|
||||
@@ -17,6 +18,8 @@
|
||||
"export": "Export",
|
||||
"hardwareAcceleration": "Disable hardware acceleration",
|
||||
"hardwareAccelerationWarn": "Auto restarted",
|
||||
"webview": "Webview Integration",
|
||||
"webviewWarn": "To use TweetDeck Integration, please turn on. You should understand it may lessen security level.",
|
||||
"theme": "Motivy",
|
||||
"popup": "Popupová oznámení (na Windows)",
|
||||
"popupwarn": "Hide to set \"0\"",
|
||||
|
@@ -9,6 +9,7 @@
|
||||
"default": "Default",
|
||||
"change": "Change",
|
||||
"select": "Select",
|
||||
"exec": "Exec",
|
||||
"env": "System Preferences",
|
||||
"setlang": "Languages",
|
||||
"backup": "Import and export of preferences",
|
||||
@@ -17,6 +18,8 @@
|
||||
"export": "Export",
|
||||
"hardwareAcceleration": "Disable hardware acceleration",
|
||||
"hardwareAccelerationWarn": "Auto restarted",
|
||||
"webview": "Webview Integration",
|
||||
"webviewWarn": "To use TweetDeck Integration, please turn on. You should understand it may lessen security level.",
|
||||
"theme": "Themes",
|
||||
"popup": "Popup notification",
|
||||
"popupwarn": "Hide to set \"0\"",
|
||||
|
@@ -9,6 +9,7 @@
|
||||
"default": "Standard",
|
||||
"change": "Ändern",
|
||||
"select": "Auswahl",
|
||||
"exec": "Exec",
|
||||
"env": "Systemeinstellungen",
|
||||
"setlang": "Sprachen",
|
||||
"backup": "Import und Export von Einstellungen",
|
||||
@@ -17,6 +18,8 @@
|
||||
"export": "Exportieren",
|
||||
"hardwareAcceleration": "Hardwarebeschleunigung deaktivieren",
|
||||
"hardwareAccelerationWarn": "Automatischer Neustart",
|
||||
"webview": "Webview Integration",
|
||||
"webviewWarn": "To use TweetDeck Integration, please turn on. You should understand it may lessen security level.",
|
||||
"theme": "Designs",
|
||||
"popup": "Popup-Benachrichtigung(unter Windows)",
|
||||
"popupwarn": "Bei \"0\" Ausgeschaltet.",
|
||||
|
@@ -9,6 +9,7 @@
|
||||
"default": "Default",
|
||||
"change": "Change",
|
||||
"select": "Select",
|
||||
"exec": "Exec",
|
||||
"env": "System Preferences",
|
||||
"setlang": "Languages",
|
||||
"backup": "Import and export of preferences",
|
||||
@@ -17,6 +18,8 @@
|
||||
"export": "Export",
|
||||
"hardwareAcceleration": "Disable hardware acceleration",
|
||||
"hardwareAccelerationWarn": "Auto restarted",
|
||||
"webview": "Webview Integration",
|
||||
"webviewWarn": "To use TweetDeck Integration, please turn on. You should understand it may lessen security level.",
|
||||
"theme": "Themes",
|
||||
"popup": "Popup notification",
|
||||
"popupwarn": "Hide to set \"0\"",
|
||||
|
@@ -9,6 +9,7 @@
|
||||
"default": "crwdns3918:0crwdne3918:0",
|
||||
"change": "crwdns3920:0crwdne3920:0",
|
||||
"select": "crwdns3922:0crwdne3922:0",
|
||||
"exec": "crwdns4576:0crwdne4576:0",
|
||||
"env": "crwdns3924:0crwdne3924:0",
|
||||
"setlang": "crwdns3926:0crwdne3926:0",
|
||||
"backup": "crwdns3928:0crwdne3928:0",
|
||||
@@ -17,6 +18,8 @@
|
||||
"export": "crwdns3932:0crwdne3932:0",
|
||||
"hardwareAcceleration": "crwdns3934:0crwdne3934:0",
|
||||
"hardwareAccelerationWarn": "crwdns3936:0crwdne3936:0",
|
||||
"webview": "crwdns4578:0crwdne4578:0",
|
||||
"webviewWarn": "crwdns4580:0crwdne4580:0",
|
||||
"theme": "crwdns3938:0crwdne3938:0",
|
||||
"popup": "crwdns3940:0crwdne3940:0",
|
||||
"popupwarn": "crwdns3942:0crwdne3942:0",
|
||||
|
@@ -18,6 +18,8 @@
|
||||
"export": "Export",
|
||||
"hardwareAcceleration": "Disable hardware acceleration",
|
||||
"hardwareAccelerationWarn": "Auto restarted",
|
||||
"webview": "Webview Integration",
|
||||
"webviewWarn": "To use TweetDeck Integration, please turn on. You should understand it may lessen security level.",
|
||||
"theme": "Themes",
|
||||
"popup": "Popup notification",
|
||||
"popupwarn": "Hide to set \"0\"",
|
||||
@@ -70,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\"",
|
||||
@@ -117,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)",
|
||||
|
@@ -9,6 +9,7 @@
|
||||
"default": "Predeterminado",
|
||||
"change": "Cambiar",
|
||||
"select": "Seleccionar",
|
||||
"exec": "Exec",
|
||||
"env": "Configuración del sistema",
|
||||
"setlang": "Idiomas",
|
||||
"backup": "Importación y exportación de la configuración",
|
||||
@@ -17,6 +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.",
|
||||
"theme": "Temas",
|
||||
"popup": "Ventana emergente de notificaciones (en Windows)",
|
||||
"popupwarn": "Establecer \"0\" para ocultar",
|
||||
|
@@ -9,6 +9,7 @@
|
||||
"default": "Default",
|
||||
"change": "Cambiar",
|
||||
"select": "Seleccionar",
|
||||
"exec": "Exec",
|
||||
"env": "Preferencias del sistema",
|
||||
"setlang": "Idiomas",
|
||||
"backup": "Importación y exportación de la configuración",
|
||||
@@ -17,6 +18,8 @@
|
||||
"export": "Exportar",
|
||||
"hardwareAcceleration": "Deshabilitar la aceleración por hardware",
|
||||
"hardwareAccelerationWarn": "Reinicio automático",
|
||||
"webview": "Webview Integration",
|
||||
"webviewWarn": "To use TweetDeck Integration, please turn on. You should understand it may lessen security level.",
|
||||
"theme": "Temas",
|
||||
"popup": "Notificación emergente (en Windows)",
|
||||
"popupwarn": "Ocultar para establecer \"0\"",
|
||||
|
@@ -9,6 +9,7 @@
|
||||
"default": "Default",
|
||||
"change": "Change",
|
||||
"select": "Select",
|
||||
"exec": "Exec",
|
||||
"env": "System Preferences",
|
||||
"setlang": "Languages",
|
||||
"backup": "Import and export of preferences",
|
||||
@@ -17,6 +18,8 @@
|
||||
"export": "Export",
|
||||
"hardwareAcceleration": "Disable hardware acceleration",
|
||||
"hardwareAccelerationWarn": "Auto restarted",
|
||||
"webview": "Webview Integration",
|
||||
"webviewWarn": "To use TweetDeck Integration, please turn on. You should understand it may lessen security level.",
|
||||
"theme": "Themes",
|
||||
"popup": "Popup notification",
|
||||
"popupwarn": "Hide to set \"0\"",
|
||||
|
@@ -9,6 +9,7 @@
|
||||
"default": "Par défaut",
|
||||
"change": "Modifier",
|
||||
"select": "Sélectionner",
|
||||
"exec": "Exec",
|
||||
"env": "Préférences système",
|
||||
"setlang": "Langues",
|
||||
"backup": "Importer et exporter les préférences",
|
||||
@@ -17,6 +18,8 @@
|
||||
"export": "Exporter",
|
||||
"hardwareAcceleration": "Désactiver l'accélération matérielle",
|
||||
"hardwareAccelerationWarn": "Redémarrage Automatique",
|
||||
"webview": "Webview Integration",
|
||||
"webviewWarn": "To use TweetDeck Integration, please turn on. You should understand it may lessen security level.",
|
||||
"theme": "Thèmes",
|
||||
"popup": "Notification pop-up",
|
||||
"popupwarn": "\"0\" pour cacher",
|
||||
|
@@ -9,6 +9,7 @@
|
||||
"default": "Default",
|
||||
"change": "Change",
|
||||
"select": "Select",
|
||||
"exec": "Exec",
|
||||
"env": "System Preferences",
|
||||
"setlang": "Languages",
|
||||
"backup": "Import and export of preferences",
|
||||
@@ -17,6 +18,8 @@
|
||||
"export": "Export",
|
||||
"hardwareAcceleration": "Disable hardware acceleration",
|
||||
"hardwareAccelerationWarn": "Auto restarted",
|
||||
"webview": "Webview Integration",
|
||||
"webviewWarn": "To use TweetDeck Integration, please turn on. You should understand it may lessen security level.",
|
||||
"theme": "Themes",
|
||||
"popup": "Popup notification",
|
||||
"popupwarn": "Hide to set \"0\"",
|
||||
|
@@ -9,6 +9,7 @@
|
||||
"default": "Default",
|
||||
"change": "Change",
|
||||
"select": "Select",
|
||||
"exec": "Exec",
|
||||
"env": "System Preferences",
|
||||
"setlang": "Languages",
|
||||
"backup": "Import and export of preferences",
|
||||
@@ -17,6 +18,8 @@
|
||||
"export": "Export",
|
||||
"hardwareAcceleration": "Disable hardware acceleration",
|
||||
"hardwareAccelerationWarn": "Auto restarted",
|
||||
"webview": "Webview Integration",
|
||||
"webviewWarn": "To use TweetDeck Integration, please turn on. You should understand it may lessen security level.",
|
||||
"theme": "Themes",
|
||||
"popup": "Popup notification",
|
||||
"popupwarn": "Hide to set \"0\"",
|
||||
|
@@ -9,6 +9,7 @@
|
||||
"default": "Predefinito",
|
||||
"change": "Cambia",
|
||||
"select": "Seleziona",
|
||||
"exec": "Exec",
|
||||
"env": "Preferenze Di Sistema",
|
||||
"setlang": "Lingue",
|
||||
"backup": "Importazione ed esportazione delle preferenze",
|
||||
@@ -17,6 +18,8 @@
|
||||
"export": "Esporta",
|
||||
"hardwareAcceleration": "Disabilita accelerazione hardware",
|
||||
"hardwareAccelerationWarn": "Riavvio automatico",
|
||||
"webview": "Webview Integration",
|
||||
"webviewWarn": "To use TweetDeck Integration, please turn on. You should understand it may lessen security level.",
|
||||
"theme": "Temi",
|
||||
"popup": "Notifica popup",
|
||||
"popupwarn": "Nascondi per impostare \"0\"",
|
||||
|
@@ -17,6 +17,8 @@
|
||||
"export": "エクスポート",
|
||||
"hardwareAcceleration": "ハードウェアアクセラレーションの無効化",
|
||||
"hardwareAccelerationWarn": "表示(特に設定画面)があかんときは「はい」を選んでな。再起動入るで。",
|
||||
"webview": "Webviewの使用",
|
||||
"webviewWarn": "TweetDeck使いたかったら「はい」にしてほしいんやけど、セキュリティ的には結構あかんやつやから、使わんのやったらちゃんと「いいえ」にしといてな。再起動入るで。",
|
||||
"theme": "テーマの設定",
|
||||
"popup": "新規通知のポップアップお知らせの表示秒数",
|
||||
"popupwarn": "0にしたら出さへん",
|
||||
@@ -68,6 +70,7 @@
|
||||
"name": "名前",
|
||||
"desc": "説明",
|
||||
"customImport": "カスタムテーマのインポート",
|
||||
"preview": "プレビュー",
|
||||
"delete": "削除",
|
||||
"timeline": "タイムラインの設定",
|
||||
"timemode": "時間表記設定",
|
||||
@@ -116,6 +119,7 @@
|
||||
"remote_imgWarn": "プレビューはログインサーバーのキャッシュからどちらにしろ取得する。ビューワーのみに適用されるで。",
|
||||
"moreContextMode": "コンテキストツール",
|
||||
"moreContextModeWarn": "トゥート詳細の、トゥート前後のトゥートを表示する機能",
|
||||
"smallHeader": "カラムのヘッダーの高さを小さくする",
|
||||
"replySound": "リプライの通知音",
|
||||
"favSound": "お気に入り登録の通知音",
|
||||
"btSound": "ブーストの通知音",
|
||||
|
@@ -18,6 +18,8 @@
|
||||
"export": "エクスポート",
|
||||
"hardwareAcceleration": "ハードウェアアクセラレーションの無効化",
|
||||
"hardwareAccelerationWarn": "表示(特に設定画面)が乱れる場合に「はい」を選択してください。自動で再起動します。",
|
||||
"webview": "Webviewの使用",
|
||||
"webviewWarn": "TweetDeckを埋め込むために必要です。セキュリティに影響するため、使用しないときは「いいえ」を選択してください。自動で再起動します。",
|
||||
"theme": "テーマの設定",
|
||||
"popup": "新規通知のポップアップお知らせの表示秒数",
|
||||
"popupwarn": "0に設定すると表示されません",
|
||||
@@ -70,6 +72,7 @@
|
||||
"desc": "説明",
|
||||
"customImport": "カスタムテーマのインポート",
|
||||
"delete": "削除",
|
||||
"preview": "プレビュー",
|
||||
"timeline": "タイムラインの設定",
|
||||
"timemode": "時間表記設定",
|
||||
"relativetime": "相対時間の例:\"1分前\",\"3日前\"",
|
||||
@@ -115,6 +118,7 @@
|
||||
"markerswarn": "Mastodon 3.0相当以上。WebUIと対応クライアントで共有されます。",
|
||||
"remote_img": "画像をリモートから取得",
|
||||
"remote_imgWarn": "プレビューはログインサーバーのキャッシュから取得されます。ビューワーのみに適用されます。",
|
||||
"smallHeader": "カラムのヘッダーの高さを小さくする",
|
||||
"replySound": "リプライの通知音",
|
||||
"favSound": "お気に入り登録の通知音",
|
||||
"btSound": "ブーストの通知音",
|
||||
|
@@ -9,6 +9,7 @@
|
||||
"default": "Default",
|
||||
"change": "Change",
|
||||
"select": "Select",
|
||||
"exec": "Exec",
|
||||
"env": "System Preferences",
|
||||
"setlang": "Languages",
|
||||
"backup": "Import and export of preferences",
|
||||
@@ -17,6 +18,8 @@
|
||||
"export": "Export",
|
||||
"hardwareAcceleration": "Disable hardware acceleration",
|
||||
"hardwareAccelerationWarn": "Auto restarted",
|
||||
"webview": "Webview Integration",
|
||||
"webviewWarn": "To use TweetDeck Integration, please turn on. You should understand it may lessen security level.",
|
||||
"theme": "Themes",
|
||||
"popup": "Popup notification",
|
||||
"popupwarn": "Hide to set \"0\"",
|
||||
|
@@ -9,6 +9,7 @@
|
||||
"default": "Default",
|
||||
"change": "Change",
|
||||
"select": "Select",
|
||||
"exec": "Exec",
|
||||
"env": "System Preferences",
|
||||
"setlang": "Languages",
|
||||
"backup": "Import and export of preferences",
|
||||
@@ -17,6 +18,8 @@
|
||||
"export": "Export",
|
||||
"hardwareAcceleration": "Disable hardware acceleration",
|
||||
"hardwareAccelerationWarn": "Auto restarted",
|
||||
"webview": "Webview Integration",
|
||||
"webviewWarn": "To use TweetDeck Integration, please turn on. You should understand it may lessen security level.",
|
||||
"theme": "Themes",
|
||||
"popup": "Popup notification",
|
||||
"popupwarn": "Hide to set \"0\"",
|
||||
|
@@ -9,6 +9,7 @@
|
||||
"default": "Standard",
|
||||
"change": "Endre",
|
||||
"select": "Velg",
|
||||
"exec": "Exec",
|
||||
"env": "System Preferences",
|
||||
"setlang": "Språk",
|
||||
"backup": "Import and export of preferences",
|
||||
@@ -17,6 +18,8 @@
|
||||
"export": "Eksporter",
|
||||
"hardwareAcceleration": "Slå av maskinvareakselerasjon",
|
||||
"hardwareAccelerationWarn": "Auto restarted",
|
||||
"webview": "Webview Integration",
|
||||
"webviewWarn": "To use TweetDeck Integration, please turn on. You should understand it may lessen security level.",
|
||||
"theme": "Temaer",
|
||||
"popup": "Popup notification",
|
||||
"popupwarn": "Hide to set \"0\"",
|
||||
|
@@ -9,6 +9,7 @@
|
||||
"default": "Default",
|
||||
"change": "Zmień",
|
||||
"select": "Wybierz",
|
||||
"exec": "Exec",
|
||||
"env": "Ustawienia systemowe",
|
||||
"setlang": "Języki",
|
||||
"backup": "Import i eksport preferencji",
|
||||
@@ -17,6 +18,8 @@
|
||||
"export": "Eksport",
|
||||
"hardwareAcceleration": "Wyłącz przyspieszanie sprzętowe",
|
||||
"hardwareAccelerationWarn": "Auto restarted",
|
||||
"webview": "Webview Integration",
|
||||
"webviewWarn": "To use TweetDeck Integration, please turn on. You should understand it may lessen security level.",
|
||||
"theme": "Motywy",
|
||||
"popup": "Wyskakujące powiadomienia",
|
||||
"popupwarn": "Hide to set \"0\"",
|
||||
|
@@ -9,6 +9,7 @@
|
||||
"default": "Padrão",
|
||||
"change": "Change",
|
||||
"select": "Select",
|
||||
"exec": "Exec",
|
||||
"env": "System Preferences",
|
||||
"setlang": "Languages",
|
||||
"backup": "Import and export of preferences",
|
||||
@@ -17,6 +18,8 @@
|
||||
"export": "Export",
|
||||
"hardwareAcceleration": "Disable hardware acceleration",
|
||||
"hardwareAccelerationWarn": "Auto restarted",
|
||||
"webview": "Webview Integration",
|
||||
"webviewWarn": "To use TweetDeck Integration, please turn on. You should understand it may lessen security level.",
|
||||
"theme": "Themes",
|
||||
"popup": "Popup notification",
|
||||
"popupwarn": "Hide to set \"0\"",
|
||||
|
@@ -9,6 +9,7 @@
|
||||
"default": "Default",
|
||||
"change": "Change",
|
||||
"select": "Select",
|
||||
"exec": "Exec",
|
||||
"env": "System Preferences",
|
||||
"setlang": "Languages",
|
||||
"backup": "Import and export of preferences",
|
||||
@@ -17,6 +18,8 @@
|
||||
"export": "Export",
|
||||
"hardwareAcceleration": "Disable hardware acceleration",
|
||||
"hardwareAccelerationWarn": "Auto restarted",
|
||||
"webview": "Webview Integration",
|
||||
"webviewWarn": "To use TweetDeck Integration, please turn on. You should understand it may lessen security level.",
|
||||
"theme": "Themes",
|
||||
"popup": "Popup notification",
|
||||
"popupwarn": "Hide to set \"0\"",
|
||||
|
@@ -9,6 +9,7 @@
|
||||
"default": "Default",
|
||||
"change": "Change",
|
||||
"select": "Select",
|
||||
"exec": "Exec",
|
||||
"env": "System Preferences",
|
||||
"setlang": "Languages",
|
||||
"backup": "Import and export of preferences",
|
||||
@@ -17,6 +18,8 @@
|
||||
"export": "Export",
|
||||
"hardwareAcceleration": "Disable hardware acceleration",
|
||||
"hardwareAccelerationWarn": "Auto restarted",
|
||||
"webview": "Webview Integration",
|
||||
"webviewWarn": "To use TweetDeck Integration, please turn on. You should understand it may lessen security level.",
|
||||
"theme": "Themes",
|
||||
"popup": "Popup notification",
|
||||
"popupwarn": "Hide to set \"0\"",
|
||||
|
@@ -9,6 +9,7 @@
|
||||
"default": "Default",
|
||||
"change": "Изменить",
|
||||
"select": "Выбрать",
|
||||
"exec": "Exec",
|
||||
"env": "Системные настройки",
|
||||
"setlang": "Языки",
|
||||
"backup": "Импорт и экспорт предпочтений",
|
||||
@@ -17,6 +18,8 @@
|
||||
"export": "Экспорт",
|
||||
"hardwareAcceleration": "Отключить аппаратное ускорение",
|
||||
"hardwareAccelerationWarn": "Автоперезапуск",
|
||||
"webview": "Webview Integration",
|
||||
"webviewWarn": "To use TweetDeck Integration, please turn on. You should understand it may lessen security level.",
|
||||
"theme": "Темы",
|
||||
"popup": "Всплывающие уведомления (на Windows)",
|
||||
"popupwarn": "Скрыть для установки \"0\"",
|
||||
|
@@ -9,6 +9,7 @@
|
||||
"default": "Default",
|
||||
"change": "Change",
|
||||
"select": "තෝරන්න",
|
||||
"exec": "Exec",
|
||||
"env": "System Preferences",
|
||||
"setlang": "භාෂාව",
|
||||
"backup": "Import and export of preferences",
|
||||
@@ -17,6 +18,8 @@
|
||||
"export": "Export",
|
||||
"hardwareAcceleration": "Disable hardware acceleration",
|
||||
"hardwareAccelerationWarn": "Auto restarted",
|
||||
"webview": "Webview Integration",
|
||||
"webviewWarn": "To use TweetDeck Integration, please turn on. You should understand it may lessen security level.",
|
||||
"theme": "තේමාවන්",
|
||||
"popup": "Popup notification",
|
||||
"popupwarn": "Hide to set \"0\"",
|
||||
|
@@ -9,6 +9,7 @@
|
||||
"default": "Default",
|
||||
"change": "Change",
|
||||
"select": "Select",
|
||||
"exec": "Exec",
|
||||
"env": "System Preferences",
|
||||
"setlang": "Languages",
|
||||
"backup": "Import and export of preferences",
|
||||
@@ -17,6 +18,8 @@
|
||||
"export": "Export",
|
||||
"hardwareAcceleration": "Disable hardware acceleration",
|
||||
"hardwareAccelerationWarn": "Auto restarted",
|
||||
"webview": "Webview Integration",
|
||||
"webviewWarn": "To use TweetDeck Integration, please turn on. You should understand it may lessen security level.",
|
||||
"theme": "Themes",
|
||||
"popup": "Popup notification",
|
||||
"popupwarn": "Hide to set \"0\"",
|
||||
|
@@ -9,6 +9,7 @@
|
||||
"default": "Default",
|
||||
"change": "Change",
|
||||
"select": "Select",
|
||||
"exec": "Exec",
|
||||
"env": "System Preferences",
|
||||
"setlang": "Languages",
|
||||
"backup": "Import and export of preferences",
|
||||
@@ -17,6 +18,8 @@
|
||||
"export": "Export",
|
||||
"hardwareAcceleration": "Disable hardware acceleration",
|
||||
"hardwareAccelerationWarn": "Auto restarted",
|
||||
"webview": "Webview Integration",
|
||||
"webviewWarn": "To use TweetDeck Integration, please turn on. You should understand it may lessen security level.",
|
||||
"theme": "Themes",
|
||||
"popup": "Popup notification",
|
||||
"popupwarn": "Hide to set \"0\"",
|
||||
|
@@ -9,6 +9,7 @@
|
||||
"default": "Default",
|
||||
"change": "Change",
|
||||
"select": "Select",
|
||||
"exec": "Exec",
|
||||
"env": "System Preferences",
|
||||
"setlang": "Languages",
|
||||
"backup": "Import and export of preferences",
|
||||
@@ -17,6 +18,8 @@
|
||||
"export": "Export",
|
||||
"hardwareAcceleration": "Disable hardware acceleration",
|
||||
"hardwareAccelerationWarn": "Auto restarted",
|
||||
"webview": "Webview Integration",
|
||||
"webviewWarn": "To use TweetDeck Integration, please turn on. You should understand it may lessen security level.",
|
||||
"theme": "Themes",
|
||||
"popup": "Popup notification",
|
||||
"popupwarn": "Hide to set \"0\"",
|
||||
|
@@ -9,6 +9,7 @@
|
||||
"default": "Default",
|
||||
"change": "Change",
|
||||
"select": "Select",
|
||||
"exec": "Exec",
|
||||
"env": "System Preferences",
|
||||
"setlang": "Languages",
|
||||
"backup": "Import and export of preferences",
|
||||
@@ -17,6 +18,8 @@
|
||||
"export": "Export",
|
||||
"hardwareAcceleration": "Disable hardware acceleration",
|
||||
"hardwareAccelerationWarn": "Auto restarted",
|
||||
"webview": "Webview Integration",
|
||||
"webviewWarn": "To use TweetDeck Integration, please turn on. You should understand it may lessen security level.",
|
||||
"theme": "Themes",
|
||||
"popup": "Popup notification",
|
||||
"popupwarn": "Hide to set \"0\"",
|
||||
|
@@ -9,6 +9,7 @@
|
||||
"default": "Default",
|
||||
"change": "Change",
|
||||
"select": "Select",
|
||||
"exec": "Exec",
|
||||
"env": "System Preferences",
|
||||
"setlang": "Languages",
|
||||
"backup": "Import and export of preferences",
|
||||
@@ -17,6 +18,8 @@
|
||||
"export": "Export",
|
||||
"hardwareAcceleration": "Disable hardware acceleration",
|
||||
"hardwareAccelerationWarn": "Auto restarted",
|
||||
"webview": "Webview Integration",
|
||||
"webviewWarn": "To use TweetDeck Integration, please turn on. You should understand it may lessen security level.",
|
||||
"theme": "Themes",
|
||||
"popup": "Popup notification",
|
||||
"popupwarn": "Hide to set \"0\"",
|
||||
|
@@ -9,6 +9,7 @@
|
||||
"default": "默认",
|
||||
"change": "Change",
|
||||
"select": "Select",
|
||||
"exec": "Exec",
|
||||
"env": "System Preferences",
|
||||
"setlang": "Languages",
|
||||
"backup": "Import and export of preferences",
|
||||
@@ -17,6 +18,8 @@
|
||||
"export": "Export",
|
||||
"hardwareAcceleration": "Disable hardware acceleration",
|
||||
"hardwareAccelerationWarn": "Auto restarted",
|
||||
"webview": "Webview Integration",
|
||||
"webviewWarn": "To use TweetDeck Integration, please turn on. You should understand it may lessen security level.",
|
||||
"theme": "Themes",
|
||||
"popup": "Popup notification(on Windows)",
|
||||
"popupwarn": "Hide to set \"0\"",
|
||||
|
@@ -9,6 +9,7 @@
|
||||
"default": "預設",
|
||||
"change": "Change",
|
||||
"select": "Select",
|
||||
"exec": "Exec",
|
||||
"env": "System Preferences",
|
||||
"setlang": "Languages",
|
||||
"backup": "Import and export of preferences",
|
||||
@@ -17,6 +18,8 @@
|
||||
"export": "Export",
|
||||
"hardwareAcceleration": "Disable hardware acceleration",
|
||||
"hardwareAccelerationWarn": "Auto restarted",
|
||||
"webview": "Webview Integration",
|
||||
"webviewWarn": "To use TweetDeck Integration, please turn on. You should understand it may lessen security level.",
|
||||
"theme": "Themes",
|
||||
"popup": "Popup notification",
|
||||
"popupwarn": "Hide to set \"0\"",
|
||||
|
2
app/view/make/make.d.ts
vendored
Normal file
2
app/view/make/make.d.ts
vendored
Normal file
@@ -0,0 +1,2 @@
|
||||
export = construct;
|
||||
declare function construct(ver: any, basefile: any, pwa: any, store: any): void;
|
@@ -1,35 +1,13 @@
|
||||
const fs = require('fs')
|
||||
const path = require('path')
|
||||
const basefile = path.join(__dirname, '../../')
|
||||
const package = fs.readFileSync(basefile + 'package.json')
|
||||
const data = JSON.parse(package)
|
||||
const version = data.version
|
||||
const codename = data.codename
|
||||
let ver = `${version} (${codename})`
|
||||
if (process.argv.indexOf('--automatic') === -1) {
|
||||
let input = require('readline-sync').question('version string [empty: ' + ver + ' (default)]? ')
|
||||
if (input) {
|
||||
ver = input
|
||||
}
|
||||
}
|
||||
var pwa = false
|
||||
if (process.argv.indexOf('--pwa') > 0) {
|
||||
var pwa = true
|
||||
}
|
||||
var store = false
|
||||
if (process.argv.indexOf('--store') > 0) {
|
||||
var store = true
|
||||
}
|
||||
|
||||
function main(ver, basefile, pwa, store) {
|
||||
function construct(ver, basefile, pwa, store) {
|
||||
const execSync = require('child_process').execSync
|
||||
let gitHash = execSync('git rev-parse HEAD')
|
||||
.toString()
|
||||
.trim()
|
||||
fs.writeFileSync(basefile + 'git', gitHash)
|
||||
console.log('Constructing view files ' + ver)
|
||||
const langs = ['ja', 'ja-KS', 'en', 'bg', 'cs', 'de',
|
||||
'es-AR', 'it-IT', 'zh-CN', 'zh-TW', 'fr-FR', 'no-NO', 'pt-BR', 'ru-RU', 'es-ES','pl-PL', 'ps']
|
||||
'es-AR', 'it-IT', 'zh-CN', 'fr-FR', 'zh-TW', 'no-NO', 'pt-BR', 'ru-RU', 'es-ES','pl-PL', 'ps']
|
||||
const langsh = [
|
||||
'日本語',
|
||||
'日本語(関西)',
|
||||
@@ -172,23 +150,4 @@ function main(ver, basefile, pwa, store) {
|
||||
}
|
||||
}
|
||||
}
|
||||
main(ver, basefile, pwa, store)
|
||||
|
||||
//if --watch, to yarn dev
|
||||
if (process.argv.indexOf('--watch') !== -1) {
|
||||
const chokidar = require('chokidar')
|
||||
console.log(
|
||||
'watch mode(not hot-watch): when construction files are changed, refresh view files but not reload. Please reload manually.'
|
||||
)
|
||||
const watcher = chokidar.watch(basefile + 'view/make', {
|
||||
ignored: 'view/make/make.js',
|
||||
persistent: true
|
||||
})
|
||||
watcher.on('ready', function () {
|
||||
console.log('watching...')
|
||||
watcher.on('change', function (path) {
|
||||
console.log(path + ' changed.')
|
||||
main(ver, basefile)
|
||||
})
|
||||
})
|
||||
}
|
||||
module.exports = construct
|
44
app/view/make/makeCli.js
Normal file
44
app/view/make/makeCli.js
Normal file
@@ -0,0 +1,44 @@
|
||||
const fs = require('fs')
|
||||
const path = require('path')
|
||||
const construct = require('./make.js')
|
||||
const basefile = path.join(__dirname, '../../')
|
||||
const package = fs.readFileSync(basefile + 'package.json')
|
||||
const data = JSON.parse(package)
|
||||
const version = data.version
|
||||
const codename = data.codename
|
||||
let ver = `${version} (${codename})`
|
||||
if (process.argv.indexOf('--prompt') != -1) {
|
||||
let input = require('readline-sync').question('version string [empty: ' + ver + ' (default)]? ')
|
||||
if (input) {
|
||||
ver = input
|
||||
}
|
||||
}
|
||||
var pwa = false
|
||||
if (process.argv.indexOf('--pwa') > 0) {
|
||||
var pwa = true
|
||||
}
|
||||
var store = false
|
||||
if (process.argv.indexOf('--store') > 0) {
|
||||
var store = true
|
||||
}
|
||||
|
||||
construct(ver, basefile, pwa, store)
|
||||
|
||||
//if --watch, to yarn dev
|
||||
if (process.argv.indexOf('--watch') !== -1) {
|
||||
const chokidar = require('chokidar')
|
||||
console.log(
|
||||
'watch mode(not hot-watch): when construction files are changed, refresh view files but not reload. Please reload manually.'
|
||||
)
|
||||
const watcher = chokidar.watch(basefile + 'view/make', {
|
||||
ignored: 'view/make/make.js',
|
||||
persistent: true
|
||||
})
|
||||
watcher.on('ready', function () {
|
||||
console.log('watching...')
|
||||
watcher.on('change', function (path) {
|
||||
console.log(path + ' changed.')
|
||||
construct(ver, basefile)
|
||||
})
|
||||
})
|
||||
}
|
@@ -15,6 +15,8 @@
|
||||
<link href="../../css/themes.css" type="text/css" rel="stylesheet">
|
||||
<link href="../../css/pickr.css" type="text/css" rel="stylesheet">
|
||||
<link href="../../css/master.css" type="text/css" rel="stylesheet">
|
||||
<link href="../../css/tl.css" type="text/css" rel="stylesheet">
|
||||
<link href="../../css/sweetalert2-material.min.css" type="text/css" rel="stylesheet">
|
||||
<link href="../../@@node_base@@/@fortawesome/fontawesome-free/css/all.min.css" type="text/css" rel="stylesheet">
|
||||
<meta charset="utf-8">
|
||||
<style>
|
||||
@@ -42,7 +44,7 @@
|
||||
<script src="../../@@node_base@@/json5/dist/index.min.js"></script>
|
||||
<script src="../../@@node_base@@/vue/dist/vue.min.js"></script>
|
||||
<script type="text/javascript" src="setting.vue.js"></script>
|
||||
<script type="text/javascript" src="../../@@node_base@@/sweetalert2/dist/sweetalert2.all.min.js"></script>
|
||||
<script type="text/javascript" src="../../@@node_base@@/sweetalert2/dist/sweetalert2.min.js"></script>
|
||||
<script>function renderMem() { return false; }</script>
|
||||
|
||||
<h4>@@setting@@</h4>
|
||||
@@ -287,6 +289,7 @@
|
||||
<input type="color" id="color-picker13_value">
|
||||
</div>
|
||||
</div><br /><br />
|
||||
<button class="btn waves-effect blue" onclick="customComp(true)">@@preview@@</button><br /><br />
|
||||
<button class="btn-large waves-effect" onclick="customComp()">@@change@@</button> <button
|
||||
class="btn waves-effect red disabled" id="delTheme" onclick="deleteIt()">@@delete@@</button><br><br>
|
||||
<input type="text" style="width:22rem;height:40px;" id="custom_json" class="materialize-textarea"
|
||||
@@ -295,6 +298,84 @@
|
||||
<input type="text" style="width:22rem;height:40px;" id="custom_import" class="materialize-textarea"
|
||||
placeholder="JSON/JSON5 style">
|
||||
<button class="btn waves-effect" onclick="customImp()">@@import@@</button><br>
|
||||
<h4>@@preview@@</h4>
|
||||
<div style="max-width: 500px" class="cvo">
|
||||
<div class="area-notice grid"><span class="gray sharesta"><span class=" pointer big-text "><i class="fas fa-filter">
|
||||
</i></span>
|
||||
<span class="cbadge cbadge-hover"><i class="far fa-clock"></i>
|
||||
0:00:00
|
||||
</span>
|
||||
<i class="big-text fas fa-star yellow-text"></i>
|
||||
<a class="pointer grey-text">
|
||||
TheDesk(@thedesk@b.thedesk.tld)
|
||||
</a></span></div>
|
||||
<div class="area-icon grid">
|
||||
<a user="thedesk" class="udg">
|
||||
<img draggable="false" src="../../img/desk.svg" width="40" class="prof-img" user="TheDesk"
|
||||
onerror="this.src='../../img/loading.svg'" alt="" loading="lazy">
|
||||
</a>
|
||||
<a user="Cutls@misskey.io" class="udg">
|
||||
<img draggable="false" src="../../img/desk.svg" width="20" class="notf-icon prof-img" user="TheDesk" alt=""
|
||||
loading="lazy">
|
||||
</a>
|
||||
</div>
|
||||
<div class="area-display_name grid">
|
||||
<div class="flex-name">
|
||||
<span class="user">TheDesk<img class="emoji" draggable="false" alt="👀" src="https://twemoji.maxcdn.com/v/13.0.2/72x72/1f440.png"></span>
|
||||
<span class="sml gray" style="overflow: hidden;white-space: nowrap;text-overflow: ellipsis; cursor:text;">
|
||||
@thedesk@a.thedesk.tld <i class="fas fa-lock red-text"></i>
|
||||
</span>
|
||||
</div>
|
||||
<div class="flex-time">
|
||||
<span class="cbadge cbadge-hover pointer waves-effect">
|
||||
<i class="far fa-clock"></i>0:00:00
|
||||
</span>
|
||||
</div>
|
||||
</div>
|
||||
<div class="area-toot grid">
|
||||
<div class="toot ">
|
||||
<p>Toot</p>
|
||||
</div>
|
||||
|
||||
</div>
|
||||
<div class="area-vis grid"><span><i class="text-darken-3 material-icons gray sml vis-data pointer">
|
||||
public
|
||||
</i></span></div>
|
||||
<div class="area-actions grid">
|
||||
<div class="action type-a ">
|
||||
<a class="waves-effect waves-dark btn-flat actct rep-btn" style="padding:0">
|
||||
<i class="fas fa-share"></i>
|
||||
<span class="rep_ct">1</span>
|
||||
</a>
|
||||
</div>
|
||||
<div class="action type-a ">
|
||||
<a class="waves-effect waves-dark btn-flat actct bt-btn" style="padding:0">
|
||||
<i class="fas fa-retweet"></i>
|
||||
<span class="rt_ct">0</span>
|
||||
</a>
|
||||
</div>
|
||||
<div class="action type-a ">
|
||||
<a class="waves-effect waves-dark btn-flat actct fav-btn" style="padding:0">
|
||||
<i class="fas text-darken-3 fa-star"></i>
|
||||
<span class="fav_ct">1</span>
|
||||
</a>
|
||||
</div>
|
||||
</div>
|
||||
<div class="area-side">
|
||||
<div class="action ">
|
||||
<a onclick="toggleAction(this)" data-target="dropdown_0ugtorxe"
|
||||
class="ctxMenu waves-effect waves-dark btn-flat" style="padding:0" id="trigger_0ugtorxe">
|
||||
<i class="text-darken-3 material-icons act-icon" aria-hidden="true">expand_more</i>
|
||||
<span class="voice">Other actions</span>
|
||||
</a>
|
||||
</div>
|
||||
<div class="action ">
|
||||
<a class="waves-effect waves-dark btn-flat details " style="padding:0">
|
||||
<i class="text-darken-3 material-icons" aria-hidden="true">menu_open</i></a>
|
||||
</div>
|
||||
</div>
|
||||
</div>
|
||||
|
||||
</li>
|
||||
<li>
|
||||
<div class="collapsible-header">
|
||||
@@ -405,7 +486,7 @@
|
||||
style="height: 1.5rem; margin-left: 0.4rem; margin-right: 0.4rem;">@@plugin@@
|
||||
</div>
|
||||
<div class="collapsible-body">
|
||||
<a href="https://github.com/cutls/TheDesk/blob/master/plugin.md">@@howToWritePlugin@@</a><br />
|
||||
<a href="https://github.com/cutls/TheDesk/wiki/プラグイン">@@howToWritePlugin@@</a><br />
|
||||
<div id="plugin" data-id="add_new" style="height: 600px"></div>
|
||||
<button class="btn waves-effect" style="width:7.7rem;" onclick="completePlugin()">@@change@@</button>
|
||||
<button class="btn waves-effect red disabled plugin_delete" style="width:7.7rem;"
|
||||
|
@@ -154,6 +154,26 @@ var envConstruction = [
|
||||
desc: '@@useragentWarn@@'
|
||||
}
|
||||
},
|
||||
{
|
||||
id: 'webview',
|
||||
storage: 'webview_setting',
|
||||
checkbox: true,
|
||||
setValue: false,
|
||||
text: {
|
||||
head: '@@webview@@',
|
||||
desc: '@@webviewWarn@@',
|
||||
checkbox: [
|
||||
{
|
||||
text: '@@yes@@',
|
||||
value: 'true'
|
||||
},
|
||||
{
|
||||
text: '@@no@@',
|
||||
value: 'false'
|
||||
}
|
||||
]
|
||||
}
|
||||
},
|
||||
{
|
||||
id: 'srcUrl',
|
||||
storage: 'srcUrl',
|
||||
@@ -464,6 +484,17 @@ var tlConstruction = [
|
||||
checkbox: yesno
|
||||
}
|
||||
},
|
||||
{
|
||||
id: 'small-header',
|
||||
storage: 'smallHeader',
|
||||
checkbox: true,
|
||||
setValue: 'no',
|
||||
text: {
|
||||
head: '@@smallHeader@@',
|
||||
desc: '',
|
||||
checkbox: yesno
|
||||
}
|
||||
},
|
||||
{
|
||||
id: 'replySound',
|
||||
storage: 'replySound',
|
||||
|
@@ -11,6 +11,7 @@
|
||||
<link href="../../css/userdata.css" rel="stylesheet" type="text/css" />
|
||||
<link href="../../node_modules/@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" />
|
||||
<!--
|
||||
@@ -20,7 +21,7 @@
|
||||
</script>
|
||||
<script type="text/javascript" src="https://cdn.crowdin.com/jipt/jipt.js"></script>
|
||||
-->
|
||||
<script>var pwa = false;</script> <script>var store = false;</script>
|
||||
<script>var pwa = false;</script> <script>var store = true;</script>
|
||||
</head>
|
||||
|
||||
<body id="mainView" class="">
|
||||
@@ -28,7 +29,7 @@
|
||||
<script type="text/javascript" src="../../js/platform/first.js"></script>
|
||||
<script type="text/javascript" src="../../node_modules/materialize-css/dist/js/materialize.js"></script>
|
||||
<script type="text/javascript" src="main.js"></script>
|
||||
<script type="text/javascript" src="../../node_modules/sweetalert2/dist/sweetalert2.all.min.js"></script>
|
||||
<script type="text/javascript" src="../../node_modules/sweetalert2/dist/sweetalert2.min.js"></script>
|
||||
<script>
|
||||
var misskeytoken = false
|
||||
</script>
|
||||
|
@@ -12,6 +12,7 @@
|
||||
<link href="../../css/post.css" rel="stylesheet" type="text/css" />
|
||||
<link href="../../css/master.css" type="text/css" rel="stylesheet" />
|
||||
<link href="../../css/sort.css" rel="stylesheet" type="text/css" />
|
||||
<link href="../../css/sweetalert2-material.min.css" type="text/css" rel="stylesheet">
|
||||
<link href="../../node_modules/@fortawesome/fontawesome-free/css/all.min.css" type="text/css" rel="stylesheet" />
|
||||
<meta charset="utf-8" />
|
||||
<!--
|
||||
@@ -20,13 +21,13 @@
|
||||
_jipt.push(['project', 'thedesk'])
|
||||
</script>
|
||||
<script type="text/javascript" src="https://cdn.crowdin.com/jipt/jipt.js"></script>
|
||||
--> <script>var pwa = false;</script> <script>var store = false;</script>
|
||||
--> <script>var pwa = false;</script> <script>var store = true;</script>
|
||||
</head>
|
||||
|
||||
<body class="">
|
||||
<script>
|
||||
var ver = '22.1.1 (Koume)'
|
||||
var gitHash = '6e75ea7f374fe887b8956bcb9bdac5524133b865'
|
||||
var ver = '22.2.0 (Koume)'
|
||||
var gitHash = 'f570ed36e876bfe2f9d21a6350c1f22f22980c89'
|
||||
//betaを入れるとバージョンチェックしない
|
||||
//var ver="beta";
|
||||
var acct_id = 0
|
||||
@@ -783,38 +784,27 @@
|
||||
<a href="https://thedesk.top" target="_blank">HP</a><br />
|
||||
<a href="https://github.com/cutls/TheDesk" target="_blank">GitHub</a><br />
|
||||
<br />
|
||||
<div id="release-22-1-1_Koume" class="release-do" style="display:none; ">
|
||||
<div id="release-22-2-0_Koume" class="release-do" style="display:none; ">
|
||||
<br />
|
||||
<a href="https://ja.mstdn.
|
||||
wiki/TheDesk" target="_blank">機能一覧</a><br />
|
||||
Pixiv
|
||||
FanboxやPatreonでは支援者様限定で様々なTheDeskに関する記事をご覧いただけます。最低月一更新。<br />
|
||||
困ったときは、<a href="https://docs.thedesk.top">TheDesk Docs</a>をご覧ください。
|
||||
<h5>Release Note 22.1.1 (Koume)</h5>
|
||||
<!--上のdivのidも変えてね-->
|
||||
・Fediversearchを使用するように <a onclick="udgEx('Cutls@cutls.com','main')" class="contributor"><img
|
||||
src="https://media.thedesk.top/accounts/avatars/000/000/001/original/d34ef8bb49d5e011.png">cutls</a>
|
||||
<a onclick="udgEx('popn_ja@popon.pptdn.jp','main')" class="contributor"><img
|
||||
src="https://avatars3.githubusercontent.com/u/24523508?s=88&v=4">kaias1jp</a><br>
|
||||
・コンテキストツール(エアリプチェッカー)をデフォルトで無効に(#445) <a onclick="udgEx('Cutls@cutls.com','main')"
|
||||
class="contributor"><img
|
||||
<h5>Release Note 22.2.0 (Koume)</h5>
|
||||
<!--上のdivのidや1行上のところも変えてね-->
|
||||
・TweetDeck機能の復活 <a onclick="udgEx('Cutls@cutls.com','main')" class="contributor"><img
|
||||
src="https://media.thedesk.top/accounts/avatars/000/000/001/original/d34ef8bb49d5e011.png">cutls</a><br>
|
||||
・Pleromaでリフレッシュトークンの更新がうまくいかない不具合を修正 <a onclick="udgEx('Cutls@cutls.com','main')"
|
||||
class="contributor"><img
|
||||
・頒布されるmacOS向けビルドにNotarize(公証)を追加 <a onclick="udgEx('Cutls@cutls.com','main')" class="contributor"><img
|
||||
src="https://media.thedesk.top/accounts/avatars/000/000/001/original/d34ef8bb49d5e011.png">cutls</a><br>
|
||||
・Mastodonでいきなりアクセストークンが無効化してしまう不具合を修正 <a onclick="udgEx('Cutls@cutls.com','main')"
|
||||
class="contributor"><img
|
||||
・ARM版Windows向けビルドの試験頒布 <a onclick="udgEx('Cutls@cutls.com','main')" class="contributor"><img
|
||||
src="https://media.thedesk.top/accounts/avatars/000/000/001/original/d34ef8bb49d5e011.png">cutls</a><br>
|
||||
・カラム横幅設定が効かない不具合を修正 <a onclick="udgEx('Cutls@cutls.com','main')" class="contributor"><img
|
||||
・ダイアログのデザイン変更 <a onclick="udgEx('Cutls@cutls.com','main')" class="contributor"><img
|
||||
src="https://media.thedesk.top/accounts/avatars/000/000/001/original/d34ef8bb49d5e011.png">cutls</a><br>
|
||||
・一部別ドメイン提供のストリーミングで、ストリーミングに接続できない不具合を修正 <a onclick="udgEx('Cutls@cutls.com','main')"
|
||||
class="contributor"><img
|
||||
・各カラムのヘッダーの高さを減らせるように <a onclick="udgEx('Cutls@cutls.com','main')" class="contributor"><img
|
||||
src="https://media.thedesk.top/accounts/avatars/000/000/001/original/d34ef8bb49d5e011.png">cutls</a><br>
|
||||
・フランス語をbetaから標準翻訳に <a onclick="udgEx('Cutls@cutls.com','main')" class="contributor"><img
|
||||
src="https://media.thedesk.top/accounts/avatars/000/000/001/original/d34ef8bb49d5e011.png">cutls</a><br>
|
||||
・AiScriptエディタにシンタックスハイライトを導入 <a onclick="udgEx('Cutls@cutls.com','main')" class="contributor"><img
|
||||
src="https://media.thedesk.top/accounts/avatars/000/000/001/original/d34ef8bb49d5e011.png">cutls</a><br>
|
||||
|
||||
<h5>ご注意ください</h5>
|
||||
・TweetDeck連携は環境設定から有効にしてからご利用いただけます。
|
||||
</div>
|
||||
<div id="release-en" style="display:none">
|
||||
<h5>Let's make it native!</h5>
|
||||
@@ -1259,7 +1249,7 @@
|
||||
<script type="text/javascript" src="../../js/common/keyshortcut.js"></script>
|
||||
<script type="text/javascript" src="../../js/common/modal.js"></script>
|
||||
<script type="text/javascript" src="../../node_modules/jquery-ui-dist/jquery-ui.min.js"></script>
|
||||
<script type="text/javascript" src="../../node_modules/sweetalert2/dist/sweetalert2.all.min.js"></script>
|
||||
<script type="text/javascript" src="../../node_modules/sweetalert2/dist/sweetalert2.min.js"></script>
|
||||
<script type="text/javascript" src="../../js/platform/punycode.js"></script>
|
||||
<script type="text/javascript" src="../../js/ui/tips.js"></script>
|
||||
<script src="https://twemoji.maxcdn.com/2/twemoji.min.js?2.7"></script>
|
||||
|
@@ -15,6 +15,8 @@
|
||||
<link href="../../css/themes.css" type="text/css" rel="stylesheet">
|
||||
<link href="../../css/pickr.css" type="text/css" rel="stylesheet">
|
||||
<link href="../../css/master.css" type="text/css" rel="stylesheet">
|
||||
<link href="../../css/tl.css" type="text/css" rel="stylesheet">
|
||||
<link href="../../css/sweetalert2-material.min.css" type="text/css" rel="stylesheet">
|
||||
<link href="../../node_modules/@fortawesome/fontawesome-free/css/all.min.css" type="text/css" rel="stylesheet">
|
||||
<meta charset="utf-8">
|
||||
<style>
|
||||
@@ -31,7 +33,7 @@
|
||||
}
|
||||
</style>
|
||||
<script>var pwa = false;</script>
|
||||
<script>var store = false;</script>
|
||||
<script>var store = true;</script>
|
||||
</head>
|
||||
|
||||
<body id="mainView" style="overflow-y:scroll" class="">
|
||||
@@ -42,7 +44,7 @@
|
||||
<script src="../../node_modules/json5/dist/index.min.js"></script>
|
||||
<script src="../../node_modules/vue/dist/vue.min.js"></script>
|
||||
<script type="text/javascript" src="setting.vue.js"></script>
|
||||
<script type="text/javascript" src="../../node_modules/sweetalert2/dist/sweetalert2.all.min.js"></script>
|
||||
<script type="text/javascript" src="../../node_modules/sweetalert2/dist/sweetalert2.min.js"></script>
|
||||
<script>function renderMem() { return false; }</script>
|
||||
|
||||
<h4>Ustawienia</h4>
|
||||
@@ -55,7 +57,7 @@
|
||||
<h5>Języki</h5>
|
||||
<div style="display: flex;">
|
||||
<div style="width: 22rem;" id="langsel">
|
||||
<select id="langsel-sel"><option value="ja">日本語</option><option value="ja-KS">日本語(関西)</option><option value="en">English</option><option value="bg">български</option><option value="cs">Česky</option><option value="de">Deutsch</option><option value="es-AR">Español, argentina</option><option value="it-IT">italiano</option><option value="zh-CN">简体中文</option><option value="zh-TW">français</option><option value="fr-FR">繁體中文(β)</option><option value="no-NO">norsk(β)</option><option value="pt-BR">Português, brasileiro(β)</option><option value="ru-RU">русский(β)</option><option value="es-ES">Español(β)</option><option value="pl-PL">Polskie(β)</option><option value="ps">Crowdin translate system(beta)</option></select>
|
||||
<select id="langsel-sel"><option value="ja">日本語</option><option value="ja-KS">日本語(関西)</option><option value="en">English</option><option value="bg">български</option><option value="cs">Česky</option><option value="de">Deutsch</option><option value="es-AR">Español, argentina</option><option value="it-IT">italiano</option><option value="zh-CN">简体中文</option><option value="fr-FR">français</option><option value="zh-TW">繁體中文(β)</option><option value="no-NO">norsk(β)</option><option value="pt-BR">Português, brasileiro(β)</option><option value="ru-RU">русский(β)</option><option value="es-ES">Español(β)</option><option value="pl-PL">Polskie(β)</option><option value="ps">Crowdin translate system(beta)</option></select>
|
||||
</div>
|
||||
<button class="btn waves-effect" onclick="changeLang()">Zmień</button>
|
||||
</div>
|
||||
@@ -287,6 +289,7 @@
|
||||
<input type="color" id="color-picker13_value">
|
||||
</div>
|
||||
</div><br /><br />
|
||||
<button class="btn waves-effect blue" onclick="customComp(true)">Preview</button><br /><br />
|
||||
<button class="btn-large waves-effect" onclick="customComp()">Zmień</button> <button
|
||||
class="btn waves-effect red disabled" id="delTheme" onclick="deleteIt()">Delete</button><br><br>
|
||||
<input type="text" style="width:22rem;height:40px;" id="custom_json" class="materialize-textarea"
|
||||
@@ -295,6 +298,84 @@
|
||||
<input type="text" style="width:22rem;height:40px;" id="custom_import" class="materialize-textarea"
|
||||
placeholder="JSON/JSON5 style">
|
||||
<button class="btn waves-effect" onclick="customImp()">Import</button><br>
|
||||
<h4>Preview</h4>
|
||||
<div style="max-width: 500px" class="cvo">
|
||||
<div class="area-notice grid"><span class="gray sharesta"><span class=" pointer big-text "><i class="fas fa-filter">
|
||||
</i></span>
|
||||
<span class="cbadge cbadge-hover"><i class="far fa-clock"></i>
|
||||
0:00:00
|
||||
</span>
|
||||
<i class="big-text fas fa-star yellow-text"></i>
|
||||
<a class="pointer grey-text">
|
||||
TheDesk(@thedesk@b.thedesk.tld)
|
||||
</a></span></div>
|
||||
<div class="area-icon grid">
|
||||
<a user="thedesk" class="udg">
|
||||
<img draggable="false" src="../../img/desk.svg" width="40" class="prof-img" user="TheDesk"
|
||||
onerror="this.src='../../img/loading.svg'" alt="" loading="lazy">
|
||||
</a>
|
||||
<a user="Cutls@misskey.io" class="udg">
|
||||
<img draggable="false" src="../../img/desk.svg" width="20" class="notf-icon prof-img" user="TheDesk" alt=""
|
||||
loading="lazy">
|
||||
</a>
|
||||
</div>
|
||||
<div class="area-display_name grid">
|
||||
<div class="flex-name">
|
||||
<span class="user">TheDesk<img class="emoji" draggable="false" alt="👀" src="https://twemoji.maxcdn.com/v/13.0.2/72x72/1f440.png"></span>
|
||||
<span class="sml gray" style="overflow: hidden;white-space: nowrap;text-overflow: ellipsis; cursor:text;">
|
||||
@thedesk@a.thedesk.tld <i class="fas fa-lock red-text"></i>
|
||||
</span>
|
||||
</div>
|
||||
<div class="flex-time">
|
||||
<span class="cbadge cbadge-hover pointer waves-effect">
|
||||
<i class="far fa-clock"></i>0:00:00
|
||||
</span>
|
||||
</div>
|
||||
</div>
|
||||
<div class="area-toot grid">
|
||||
<div class="toot ">
|
||||
<p>Toot</p>
|
||||
</div>
|
||||
|
||||
</div>
|
||||
<div class="area-vis grid"><span><i class="text-darken-3 material-icons gray sml vis-data pointer">
|
||||
public
|
||||
</i></span></div>
|
||||
<div class="area-actions grid">
|
||||
<div class="action type-a ">
|
||||
<a class="waves-effect waves-dark btn-flat actct rep-btn" style="padding:0">
|
||||
<i class="fas fa-share"></i>
|
||||
<span class="rep_ct">1</span>
|
||||
</a>
|
||||
</div>
|
||||
<div class="action type-a ">
|
||||
<a class="waves-effect waves-dark btn-flat actct bt-btn" style="padding:0">
|
||||
<i class="fas fa-retweet"></i>
|
||||
<span class="rt_ct">0</span>
|
||||
</a>
|
||||
</div>
|
||||
<div class="action type-a ">
|
||||
<a class="waves-effect waves-dark btn-flat actct fav-btn" style="padding:0">
|
||||
<i class="fas text-darken-3 fa-star"></i>
|
||||
<span class="fav_ct">1</span>
|
||||
</a>
|
||||
</div>
|
||||
</div>
|
||||
<div class="area-side">
|
||||
<div class="action ">
|
||||
<a onclick="toggleAction(this)" data-target="dropdown_0ugtorxe"
|
||||
class="ctxMenu waves-effect waves-dark btn-flat" style="padding:0" id="trigger_0ugtorxe">
|
||||
<i class="text-darken-3 material-icons act-icon" aria-hidden="true">expand_more</i>
|
||||
<span class="voice">Other actions</span>
|
||||
</a>
|
||||
</div>
|
||||
<div class="action ">
|
||||
<a class="waves-effect waves-dark btn-flat details " style="padding:0">
|
||||
<i class="text-darken-3 material-icons" aria-hidden="true">menu_open</i></a>
|
||||
</div>
|
||||
</div>
|
||||
</div>
|
||||
|
||||
</li>
|
||||
<li>
|
||||
<div class="collapsible-header">
|
||||
@@ -405,7 +486,7 @@
|
||||
style="height: 1.5rem; margin-left: 0.4rem; margin-right: 0.4rem;">Wtyczki
|
||||
</div>
|
||||
<div class="collapsible-body">
|
||||
<a href="https://github.com/cutls/TheDesk/blob/master/plugin.md">Japanese docs of AiScript TheDesk plugins</a><br />
|
||||
<a href="https://github.com/cutls/TheDesk/wiki/プラグイン">Japanese docs of AiScript TheDesk plugins</a><br />
|
||||
<div id="plugin" data-id="add_new" style="height: 600px"></div>
|
||||
<button class="btn waves-effect" style="width:7.7rem;" onclick="completePlugin()">Zmień</button>
|
||||
<button class="btn waves-effect red disabled plugin_delete" style="width:7.7rem;"
|
||||
@@ -609,7 +690,7 @@
|
||||
style="width:100%; max-width:40rem;"><img src="../../img/desk_full.svg" class="left" width="25"
|
||||
style="padding-top:5px;">Main author: Cutls@cutls.com</a>
|
||||
<br>
|
||||
TheDesk @ <a href="https://github.com/cutls/TheDesk/commits/6e75ea7f374fe887b8956bcb9bdac5524133b865">6e75ea7f374fe887b8956bcb9bdac5524133b865</a> - <a
|
||||
TheDesk @ <a href="https://github.com/cutls/TheDesk/commits/f570ed36e876bfe2f9d21a6350c1f22f22980c89">f570ed36e876bfe2f9d21a6350c1f22f22980c89</a> - <a
|
||||
onclick="checkupd(); return localStorage.removeItem('new-ver-skip'); location.href='index.html';"
|
||||
class="pointer pwa">Sprawdź aktualizacje</a><br>
|
||||
<br>
|
||||
@@ -619,7 +700,7 @@
|
||||
<img src="https://status.cutls.com/badge-service?site=thedesk.top">
|
||||
</a><br>
|
||||
<h5>OSS License</h5>
|
||||
<a href="https://app.fossa.com/projects/git%2Bgithub.com%2Fcutls%2FTheDesk/refs/branch/master/6e75ea7f374fe887b8956bcb9bdac5524133b865"
|
||||
<a href="https://app.fossa.com/projects/git%2Bgithub.com%2Fcutls%2FTheDesk/refs/branch/master/f570ed36e876bfe2f9d21a6350c1f22f22980c89"
|
||||
alt="FOSSA Status"><img
|
||||
src="https://app.fossa.com/api/projects/git%2Bgithub.com%2Fcutls%2FTheDesk.svg?type=small" /></a>
|
||||
<br>
|
||||
|
@@ -154,6 +154,26 @@ var envConstruction = [
|
||||
desc: 'Restart when changed'
|
||||
}
|
||||
},
|
||||
{
|
||||
id: 'webview',
|
||||
storage: 'webview_setting',
|
||||
checkbox: true,
|
||||
setValue: false,
|
||||
text: {
|
||||
head: 'Webview Integration',
|
||||
desc: 'To use TweetDeck Integration, please turn on. You should understand it may lessen security level.',
|
||||
checkbox: [
|
||||
{
|
||||
text: 'Tak',
|
||||
value: 'true'
|
||||
},
|
||||
{
|
||||
text: 'Nie',
|
||||
value: 'false'
|
||||
}
|
||||
]
|
||||
}
|
||||
},
|
||||
{
|
||||
id: 'srcUrl',
|
||||
storage: 'srcUrl',
|
||||
@@ -464,6 +484,17 @@ var tlConstruction = [
|
||||
checkbox: yesno
|
||||
}
|
||||
},
|
||||
{
|
||||
id: 'small-header',
|
||||
storage: 'smallHeader',
|
||||
checkbox: true,
|
||||
setValue: 'no',
|
||||
text: {
|
||||
head: 'Minimize column headers',
|
||||
desc: '',
|
||||
checkbox: yesno
|
||||
}
|
||||
},
|
||||
{
|
||||
id: 'replySound',
|
||||
storage: 'replySound',
|
||||
|
323
app/yarn.lock
323
app/yarn.lock
@@ -441,10 +441,10 @@
|
||||
resolved "https://registry.yarnpkg.com/@types/debug/-/debug-4.1.5.tgz#b14efa8852b7768d898906613c23f688713e02cd"
|
||||
integrity sha512-Q1y515GcOdTHgagaVFhHnIFQ38ygs/kmxdNpvpou+raI9UO3YZcHDngBSYKQklcKlvA7iuQlmIKbzvmxcOE9CQ==
|
||||
|
||||
"@types/fs-extra@^9.0.7":
|
||||
version "9.0.8"
|
||||
resolved "https://registry.yarnpkg.com/@types/fs-extra/-/fs-extra-9.0.8.tgz#32c3c07ddf8caa5020f84b5f65a48470519f78ba"
|
||||
integrity sha512-bnlTVTwq03Na7DpWxFJ1dvnORob+Otb8xHyUqUWhqvz/Ksg8+JXPlR52oeMSZ37YEOa5PyccbgUNutiQdi13TA==
|
||||
"@types/fs-extra@9.0.11", "@types/fs-extra@^9.0.7":
|
||||
version "9.0.11"
|
||||
resolved "https://registry.yarnpkg.com/@types/fs-extra/-/fs-extra-9.0.11.tgz#8cc99e103499eab9f347dbc6ca4e99fb8d2c2b87"
|
||||
integrity sha512-mZsifGG4QeQ7hlkhO56u7zt/ycBgGxSVsFI/6lGTU34VtwkiqrrSDgw0+ygs8kFGWcXnFQWMrzF2h7TtDFNixA==
|
||||
dependencies:
|
||||
"@types/node" "*"
|
||||
|
||||
@@ -478,10 +478,10 @@
|
||||
resolved "https://registry.yarnpkg.com/@types/node/-/node-13.11.0.tgz#390ea202539c61c8fa6ba4428b57e05bc36dc47b"
|
||||
integrity sha512-uM4mnmsIIPK/yeO+42F2RQhGUIs39K2RFmugcJANppXe6J1nvH87PvzPZYpza7Xhhs8Yn9yIAVdLZ84z61+0xQ==
|
||||
|
||||
"@types/node@^12.0.12":
|
||||
version "12.12.8"
|
||||
resolved "https://registry.yarnpkg.com/@types/node/-/node-12.12.8.tgz#dab418655af39ce2fa99286a0bed21ef8072ac9d"
|
||||
integrity sha512-XLla8N+iyfjvsa0KKV+BP/iGSoTmwxsu5Ci5sM33z9TjohF72DEz95iNvD6pPmemvbQgxAv/909G73gUn8QR7w==
|
||||
"@types/node@^14.6.2":
|
||||
version "14.14.37"
|
||||
resolved "https://registry.yarnpkg.com/@types/node/-/node-14.14.37.tgz#a3dd8da4eb84a996c36e331df98d82abd76b516e"
|
||||
integrity sha512-XYmBiy+ohOR4Lh5jE379fV2IU+6Jn4g5qASinhitfyO71b/sCo6MKsMLF5tc7Zf2CE8hViVQyYSobJNke8OvUw==
|
||||
|
||||
"@types/plist@^3.0.1":
|
||||
version "3.0.2"
|
||||
@@ -1165,6 +1165,14 @@ call-bind@^1.0.0:
|
||||
function-bind "^1.1.1"
|
||||
get-intrinsic "^1.0.0"
|
||||
|
||||
call-bind@^1.0.2:
|
||||
version "1.0.2"
|
||||
resolved "https://registry.yarnpkg.com/call-bind/-/call-bind-1.0.2.tgz#b1d4e89e688119c3c9a903ad30abb2f6a919be3c"
|
||||
integrity sha512-7O+FbCihrB5WGbFYesctwmTKae6rOiIzmz1icreWJ+0aA7LJfuqhEso2T9ncpcFtzMQtzXf2QGGueWJGTYsqrA==
|
||||
dependencies:
|
||||
function-bind "^1.1.1"
|
||||
get-intrinsic "^1.0.2"
|
||||
|
||||
callsites@^3.0.0:
|
||||
version "3.1.0"
|
||||
resolved "https://registry.yarnpkg.com/callsites/-/callsites-3.1.0.tgz#b3630abd8943432f54b3f0519238e33cd7df2f73"
|
||||
@@ -1188,7 +1196,7 @@ chalk@4.0.0:
|
||||
ansi-styles "^4.1.0"
|
||||
supports-color "^7.1.0"
|
||||
|
||||
chalk@^2.0.0, chalk@^2.4.2:
|
||||
chalk@^2.0.0, chalk@^2.4.1, chalk@^2.4.2:
|
||||
version "2.4.2"
|
||||
resolved "https://registry.yarnpkg.com/chalk/-/chalk-2.4.2.tgz#cd42541677a54333cf541a49108c1432b44c9424"
|
||||
integrity sha512-Mti+f9lpJNcwF4tWV8/OrTTtF1gZi+f8FqlyAdouralcFWFQWF2+NgCHShjkCb+IFBLq9buZwE1xckQU4peSuQ==
|
||||
@@ -1480,6 +1488,17 @@ create-hmac@^1.1.0, create-hmac@^1.1.4, create-hmac@^1.1.7:
|
||||
safe-buffer "^5.0.1"
|
||||
sha.js "^2.4.8"
|
||||
|
||||
cross-spawn@^6.0.5:
|
||||
version "6.0.5"
|
||||
resolved "https://registry.yarnpkg.com/cross-spawn/-/cross-spawn-6.0.5.tgz#4a5ec7c64dfae22c3a14124dbacdee846d80cbc4"
|
||||
integrity sha512-eTVLrBSt7fjbDygz805pMnstIs2VTBNkRm0qxZd+M7A5XDdxVRWO5MxGBXZhjY4cqLYLdtrGqRf8mBPmzwSpWQ==
|
||||
dependencies:
|
||||
nice-try "^1.0.4"
|
||||
path-key "^2.0.1"
|
||||
semver "^5.5.0"
|
||||
shebang-command "^1.2.0"
|
||||
which "^1.2.9"
|
||||
|
||||
cross-spawn@^7.0.1, cross-spawn@^7.0.2:
|
||||
version "7.0.3"
|
||||
resolved "https://registry.yarnpkg.com/cross-spawn/-/cross-spawn-7.0.3.tgz#f73a85b9d5d41d045551c177e2882d4ac85728a6"
|
||||
@@ -1839,6 +1858,14 @@ electron-dl@^3.2.1:
|
||||
pupa "^2.0.1"
|
||||
unused-filename "^2.1.0"
|
||||
|
||||
electron-notarize@^1.0.0:
|
||||
version "1.0.0"
|
||||
resolved "https://registry.yarnpkg.com/electron-notarize/-/electron-notarize-1.0.0.tgz#bc925b1ccc3f79e58e029e8c4706572b01a9fd8f"
|
||||
integrity sha512-dsib1IAquMn0onCrNMJ6gtEIZn/azG8hZMCYOuZIMVMUeRMgBYHK1s5TK9P8xAcrAjh/2aN5WYHzgVSWX314og==
|
||||
dependencies:
|
||||
debug "^4.1.1"
|
||||
fs-extra "^9.0.1"
|
||||
|
||||
electron-publish@22.10.5:
|
||||
version "22.10.5"
|
||||
resolved "https://registry.yarnpkg.com/electron-publish/-/electron-publish-22.10.5.tgz#9cbe46266b6c79d8c6e99840755682e2262d3543"
|
||||
@@ -1871,13 +1898,13 @@ electron-rebuild@^2.3.5:
|
||||
tar "^6.0.5"
|
||||
yargs "^16.0.0"
|
||||
|
||||
electron@^10.2.0:
|
||||
version "10.2.0"
|
||||
resolved "https://registry.yarnpkg.com/electron/-/electron-10.2.0.tgz#4b00f0907b28aca4b93661bb53ce9a4f8ad32201"
|
||||
integrity sha512-GBUyq8dwUqXPkCTkoID+eZ5Pm9GFlLUd2eSoGe8UOaHeW68SgCf5t75/uGHraQ1OIz/0qniyH5M4ebWEHGppyQ==
|
||||
electron@^12.0.2:
|
||||
version "12.0.2"
|
||||
resolved "https://registry.yarnpkg.com/electron/-/electron-12.0.2.tgz#d92be205f1937627bd6718aad44ac161382b4c2d"
|
||||
integrity sha512-14luh9mGzfL4e0sncyy0+kW37IU7Y0Y1tvI97FDRSW0ZBQxi5cmAwSs5dmPmNBFBIGtzkaGaEB01j9RjZuCmow==
|
||||
dependencies:
|
||||
"@electron/get" "^1.0.1"
|
||||
"@types/node" "^12.0.12"
|
||||
"@types/node" "^14.6.2"
|
||||
extract-zip "^1.0.3"
|
||||
|
||||
elliptic@^6.5.3:
|
||||
@@ -1937,6 +1964,13 @@ errlop@^4.0.0:
|
||||
resolved "https://registry.yarnpkg.com/errlop/-/errlop-4.1.0.tgz#8e7b8f4f1bf0a6feafce4d14f0c0cf4bf5ef036b"
|
||||
integrity sha512-vul6gGBuVt0M2TPi1/WrcL86+Hb3Q2Tpu3TME3sbVhZrYf7J1ZMHCodI25RQKCVurh56qTfvgM0p3w5cT4reSQ==
|
||||
|
||||
error-ex@^1.3.1:
|
||||
version "1.3.2"
|
||||
resolved "https://registry.yarnpkg.com/error-ex/-/error-ex-1.3.2.tgz#b4ac40648107fdcdcfae242f428bea8a14d4f1bf"
|
||||
integrity sha512-7dFHNmqeFSEt2ZBsCriorKnn3Z2pj+fd9kmI6QoWw4//DL+icEBfc0U7qJCisqrTsKTjw4fNFy2pW9OqStD84g==
|
||||
dependencies:
|
||||
is-arrayish "^0.2.1"
|
||||
|
||||
es-abstract@^1.13.0, es-abstract@^1.5.1:
|
||||
version "1.16.0"
|
||||
resolved "https://registry.yarnpkg.com/es-abstract/-/es-abstract-1.16.0.tgz#d3a26dc9c3283ac9750dca569586e976d9dcc06d"
|
||||
@@ -1970,6 +2004,28 @@ es-abstract@^1.17.4, es-abstract@^1.17.5:
|
||||
string.prototype.trimend "^1.0.1"
|
||||
string.prototype.trimstart "^1.0.1"
|
||||
|
||||
es-abstract@^1.18.0-next.2:
|
||||
version "1.18.0"
|
||||
resolved "https://registry.yarnpkg.com/es-abstract/-/es-abstract-1.18.0.tgz#ab80b359eecb7ede4c298000390bc5ac3ec7b5a4"
|
||||
integrity sha512-LJzK7MrQa8TS0ja2w3YNLzUgJCGPdPOV1yVvezjNnS89D+VR08+Szt2mz3YB2Dck/+w5tfIq/RoUAFqJJGM2yw==
|
||||
dependencies:
|
||||
call-bind "^1.0.2"
|
||||
es-to-primitive "^1.2.1"
|
||||
function-bind "^1.1.1"
|
||||
get-intrinsic "^1.1.1"
|
||||
has "^1.0.3"
|
||||
has-symbols "^1.0.2"
|
||||
is-callable "^1.2.3"
|
||||
is-negative-zero "^2.0.1"
|
||||
is-regex "^1.1.2"
|
||||
is-string "^1.0.5"
|
||||
object-inspect "^1.9.0"
|
||||
object-keys "^1.1.1"
|
||||
object.assign "^4.1.2"
|
||||
string.prototype.trimend "^1.0.4"
|
||||
string.prototype.trimstart "^1.0.4"
|
||||
unbox-primitive "^1.0.0"
|
||||
|
||||
es-to-primitive@^1.2.0, es-to-primitive@^1.2.1:
|
||||
version "1.2.1"
|
||||
resolved "https://registry.yarnpkg.com/es-to-primitive/-/es-to-primitive-1.2.1.tgz#e55cd4c9cdc188bcefb03b366c736323fc5c898a"
|
||||
@@ -2361,6 +2417,15 @@ get-intrinsic@^1.0.0:
|
||||
has "^1.0.3"
|
||||
has-symbols "^1.0.1"
|
||||
|
||||
get-intrinsic@^1.0.2, get-intrinsic@^1.1.1:
|
||||
version "1.1.1"
|
||||
resolved "https://registry.yarnpkg.com/get-intrinsic/-/get-intrinsic-1.1.1.tgz#15f59f376f855c446963948f0d24cd3637b4abc6"
|
||||
integrity sha512-kWZrnVM42QCiEA2Ig1bG8zjoIMOgxWwYCEeNdwY6Tv/cOSeGpcoX4pXHfKUxNKVoArnrEr2e9srnAxxGIraS9Q==
|
||||
dependencies:
|
||||
function-bind "^1.1.1"
|
||||
has "^1.0.3"
|
||||
has-symbols "^1.0.1"
|
||||
|
||||
get-stream@^4.1.0:
|
||||
version "4.1.0"
|
||||
resolved "https://registry.yarnpkg.com/get-stream/-/get-stream-4.1.0.tgz#c1b255575f3dc21d59bfc79cd3d2b46b1c3a54b5"
|
||||
@@ -2537,6 +2602,11 @@ har-validator@~5.1.3:
|
||||
ajv "^6.12.3"
|
||||
har-schema "^2.0.0"
|
||||
|
||||
has-bigints@^1.0.1:
|
||||
version "1.0.1"
|
||||
resolved "https://registry.yarnpkg.com/has-bigints/-/has-bigints-1.0.1.tgz#64fe6acb020673e3b78db035a5af69aa9d07b113"
|
||||
integrity sha512-LSBS2LjbNBTf6287JEbEzvJgftkF5qFkmCo9hDRpAzKhUOlJ+hx8dd4USs00SgsUNwc4617J9ki5YtEClM2ffA==
|
||||
|
||||
has-flag@^3.0.0:
|
||||
version "3.0.0"
|
||||
resolved "https://registry.yarnpkg.com/has-flag/-/has-flag-3.0.0.tgz#b5d454dc2199ae225699f3467e5a07f3b955bafd"
|
||||
@@ -2557,6 +2627,11 @@ has-symbols@^1.0.1:
|
||||
resolved "https://registry.yarnpkg.com/has-symbols/-/has-symbols-1.0.1.tgz#9f5214758a44196c406d9bd76cebf81ec2dd31e8"
|
||||
integrity sha512-PLcsoqu++dmEIZB+6totNFKq/7Do+Z0u4oT0zKOJNl3lYK6vGwwu2hjHs+68OEZbTjiUE9bgOABXbP/GvrS0Kg==
|
||||
|
||||
has-symbols@^1.0.2:
|
||||
version "1.0.2"
|
||||
resolved "https://registry.yarnpkg.com/has-symbols/-/has-symbols-1.0.2.tgz#165d3070c00309752a1236a479331e3ac56f1423"
|
||||
integrity sha512-chXa79rL/UC2KlX17jo3vRGz0azaWEx5tGqZg5pO3NUyEJVB17dMruQlzCCOfUvElghKcm5194+BCRvi2Rv/Gw==
|
||||
|
||||
has-unicode@^2.0.0:
|
||||
version "2.0.1"
|
||||
resolved "https://registry.yarnpkg.com/has-unicode/-/has-unicode-2.0.1.tgz#e0e6fe6a28cf51138855e086d1691e771de2a8b9"
|
||||
@@ -2600,6 +2675,11 @@ hmac-drbg@^1.0.1:
|
||||
minimalistic-assert "^1.0.0"
|
||||
minimalistic-crypto-utils "^1.0.1"
|
||||
|
||||
hosted-git-info@^2.1.4:
|
||||
version "2.8.9"
|
||||
resolved "https://registry.yarnpkg.com/hosted-git-info/-/hosted-git-info-2.8.9.tgz#dffc0bf9a21c02209090f2aa69429e1414daf3f9"
|
||||
integrity sha512-mxIDAb9Lsm6DoOJ7xH+5+X4y1LU/4Hi50L9C5sIswK3JzULS4bwk1FvjdBgvYR4bzT4tuUQiC15FE2f5HbLvYw==
|
||||
|
||||
hosted-git-info@^3.0.6, hosted-git-info@^3.0.8:
|
||||
version "3.0.8"
|
||||
resolved "https://registry.yarnpkg.com/hosted-git-info/-/hosted-git-info-3.0.8.tgz#6e35d4cc87af2c5f816e4cb9ce350ba87a3f370d"
|
||||
@@ -2772,6 +2852,16 @@ is-arguments@^1.0.4:
|
||||
resolved "https://registry.yarnpkg.com/is-arguments/-/is-arguments-1.0.4.tgz#3faf966c7cba0ff437fb31f6250082fcf0448cf3"
|
||||
integrity sha512-xPh0Rmt8NE65sNzvyUmWgI1tz3mKq74lGA0mL8LYZcoIzKOzDh6HmrYm3d18k60nHerC8A9Km8kYu87zfSFnLA==
|
||||
|
||||
is-arrayish@^0.2.1:
|
||||
version "0.2.1"
|
||||
resolved "https://registry.yarnpkg.com/is-arrayish/-/is-arrayish-0.2.1.tgz#77c99840527aa8ecb1a8ba697b80645a7a926a9d"
|
||||
integrity sha1-d8mYQFJ6qOyxqLppe4BkWnqSap0=
|
||||
|
||||
is-bigint@^1.0.1:
|
||||
version "1.0.1"
|
||||
resolved "https://registry.yarnpkg.com/is-bigint/-/is-bigint-1.0.1.tgz#6923051dfcbc764278540b9ce0e6b3213aa5ebc2"
|
||||
integrity sha512-J0ELF4yHFxHy0cmSxZuheDOz2luOdVvqjwmEcj8H/L1JHeuEDSDbeRP+Dk9kFVk5RTFzbucJ2Kb9F7ixY2QaCg==
|
||||
|
||||
is-binary-path@~2.1.0:
|
||||
version "2.1.0"
|
||||
resolved "https://registry.yarnpkg.com/is-binary-path/-/is-binary-path-2.1.0.tgz#ea1f7f3b80f064236e83470f86c09c254fb45b09"
|
||||
@@ -2801,6 +2891,11 @@ is-callable@^1.2.2:
|
||||
resolved "https://registry.yarnpkg.com/is-callable/-/is-callable-1.2.2.tgz#c7c6715cd22d4ddb48d3e19970223aceabb080d9"
|
||||
integrity sha512-dnMqspv5nU3LoewK2N/y7KLtxtakvTuaCsU9FU50/QDmdbHNy/4/JuRtMHqRU22o3q+W89YQndQEeCVwK+3qrA==
|
||||
|
||||
is-callable@^1.2.3:
|
||||
version "1.2.3"
|
||||
resolved "https://registry.yarnpkg.com/is-callable/-/is-callable-1.2.3.tgz#8b1e0500b73a1d76c70487636f368e519de8db8e"
|
||||
integrity sha512-J1DcMe8UYTBSrKezuIUTUwjXsho29693unXM2YhJUTR2txK/eG47bvNa/wipPFmZFgr/N6f1GA66dv0mEyTIyQ==
|
||||
|
||||
is-ci@^2.0.0:
|
||||
version "2.0.0"
|
||||
resolved "https://registry.yarnpkg.com/is-ci/-/is-ci-2.0.0.tgz#6bc6334181810e04b5c22b3d589fdca55026404c"
|
||||
@@ -2808,7 +2903,7 @@ is-ci@^2.0.0:
|
||||
dependencies:
|
||||
ci-info "^2.0.0"
|
||||
|
||||
is-core-module@^2.1.0:
|
||||
is-core-module@^2.1.0, is-core-module@^2.2.0:
|
||||
version "2.2.0"
|
||||
resolved "https://registry.yarnpkg.com/is-core-module/-/is-core-module-2.2.0.tgz#97037ef3d52224d85163f5597b2b63d9afed981a"
|
||||
integrity sha512-XRAfAdyyY5F5cOXn7hYQDqh2Xmii+DEfIcQGxK/uNwMHhIkPWO0g8msXcbzLe+MpGoR951MlqM/2iIlU4vKDdQ==
|
||||
@@ -2872,6 +2967,11 @@ is-interactive@^1.0.0:
|
||||
resolved "https://registry.yarnpkg.com/is-interactive/-/is-interactive-1.0.0.tgz#cea6e6ae5c870a7b0a0004070b7b587e0252912e"
|
||||
integrity sha512-2HvIEKRoqS62guEC+qBjpvRubdX910WCMuJTZ+I9yvqKU2/12eSL549HMwtabb4oupdj2sMP50k+XJfB/8JE6w==
|
||||
|
||||
is-negative-zero@^2.0.1:
|
||||
version "2.0.1"
|
||||
resolved "https://registry.yarnpkg.com/is-negative-zero/-/is-negative-zero-2.0.1.tgz#3de746c18dda2319241a53675908d8f766f11c24"
|
||||
integrity sha512-2z6JzQvZRa9A2Y7xC6dQQm4FSTSTNWjKIYYTt4246eMTJmIo0Q+ZyOsU66X8lxK1AbB92dFeglPLrhwpeRKO6w==
|
||||
|
||||
is-npm@^5.0.0:
|
||||
version "5.0.0"
|
||||
resolved "https://registry.yarnpkg.com/is-npm/-/is-npm-5.0.0.tgz#43e8d65cc56e1b67f8d47262cf667099193f45a8"
|
||||
@@ -2921,6 +3021,14 @@ is-regex@^1.1.1:
|
||||
dependencies:
|
||||
has-symbols "^1.0.1"
|
||||
|
||||
is-regex@^1.1.2:
|
||||
version "1.1.2"
|
||||
resolved "https://registry.yarnpkg.com/is-regex/-/is-regex-1.1.2.tgz#81c8ebde4db142f2cf1c53fc86d6a45788266251"
|
||||
integrity sha512-axvdhb5pdhEVThqJzYXwMlVuZwC+FF2DpcOhTS+y/8jVq4trxyPgfcwIxIKiyeuLlSQYKkmUaPQJ8ZE4yNKXDg==
|
||||
dependencies:
|
||||
call-bind "^1.0.2"
|
||||
has-symbols "^1.0.1"
|
||||
|
||||
is-string@^1.0.5:
|
||||
version "1.0.5"
|
||||
resolved "https://registry.yarnpkg.com/is-string/-/is-string-1.0.5.tgz#40493ed198ef3ff477b8c7f92f644ec82a5cd3a6"
|
||||
@@ -2933,6 +3041,13 @@ is-symbol@^1.0.2:
|
||||
dependencies:
|
||||
has-symbols "^1.0.0"
|
||||
|
||||
is-symbol@^1.0.3:
|
||||
version "1.0.3"
|
||||
resolved "https://registry.yarnpkg.com/is-symbol/-/is-symbol-1.0.3.tgz#38e1014b9e6329be0de9d24a414fd7441ec61937"
|
||||
integrity sha512-OwijhaRSgqvhm/0ZdAcXNZt9lYdKFpcRDT5ULUuYXPoT794UNOdU+gpT6Rzo7b4V2HUl/op6GqY894AZwv9faQ==
|
||||
dependencies:
|
||||
has-symbols "^1.0.1"
|
||||
|
||||
is-typed-array@^1.1.3:
|
||||
version "1.1.3"
|
||||
resolved "https://registry.yarnpkg.com/is-typed-array/-/is-typed-array-1.1.3.tgz#a4ff5a5e672e1a55f99c7f54e59597af5c1df04d"
|
||||
@@ -2977,10 +3092,9 @@ istextorbinary@^5.12.0:
|
||||
editions "^6.1.0"
|
||||
textextensions "^5.11.0"
|
||||
|
||||
itunes-nowplaying-mac@0.3.1:
|
||||
version "0.3.1"
|
||||
resolved "https://registry.yarnpkg.com/itunes-nowplaying-mac/-/itunes-nowplaying-mac-0.3.1.tgz#3f5ee853aef843e66c20ae10b9439303bc1a4986"
|
||||
integrity sha512-kZ/ef1rMzl/CMc1RBh3z99wqijxQgz5Vn1gLCrE1OqRwj9bq2vbgeIqWjJC8iDWZHRolizdTPfKMAbp8yKYFTQ==
|
||||
"itunes-nowplaying-mac@https://github.com/cutls/itunes-nowplaying-mac/releases/download/v0.4.0/itunes-nowplaying-mac-0.4.0.tgz":
|
||||
version "0.4.0"
|
||||
resolved "https://github.com/cutls/itunes-nowplaying-mac/releases/download/v0.4.0/itunes-nowplaying-mac-0.4.0.tgz#f309bb7417ad7dfc811b432ee4655722a9a370c7"
|
||||
|
||||
jake@^10.6.1:
|
||||
version "10.8.2"
|
||||
@@ -3053,6 +3167,11 @@ json-buffer@3.0.1:
|
||||
resolved "https://registry.yarnpkg.com/json-buffer/-/json-buffer-3.0.1.tgz#9338802a30d3b6605fbe0613e094008ca8c05a13"
|
||||
integrity sha512-4bV5BfR2mqfQTJm+V5tPPdf+ZpuhiIvTuAB5g8kcrXOZpTT/QwwVRWBywX1ozr6lEuPdbHxwaJlm9G6mI2sfSQ==
|
||||
|
||||
json-parse-better-errors@^1.0.1:
|
||||
version "1.0.2"
|
||||
resolved "https://registry.yarnpkg.com/json-parse-better-errors/-/json-parse-better-errors-1.0.2.tgz#bb867cfb3450e69107c131d1c514bab3dc8bcaa9"
|
||||
integrity sha512-mrqyZKfX5EhL7hvqcV6WG1yYjnjeuYDzDhhcAAUrq8Po85NBQBJP+ZDUT75qZQ98IkUoBqdkExkukOU7Ts2wrw==
|
||||
|
||||
json-schema-traverse@^0.4.1:
|
||||
version "0.4.1"
|
||||
resolved "https://registry.yarnpkg.com/json-schema-traverse/-/json-schema-traverse-0.4.1.tgz#69f6a87d9513ab8bb8fe63bdb0979c448e684660"
|
||||
@@ -3177,6 +3296,16 @@ load-bmfont@^1.3.1, load-bmfont@^1.4.0:
|
||||
xhr "^2.0.1"
|
||||
xtend "^4.0.0"
|
||||
|
||||
load-json-file@^4.0.0:
|
||||
version "4.0.0"
|
||||
resolved "https://registry.yarnpkg.com/load-json-file/-/load-json-file-4.0.0.tgz#2f5f45ab91e33216234fd53adab668eb4ec0993b"
|
||||
integrity sha1-L19Fq5HjMhYjT9U62rZo607AmTs=
|
||||
dependencies:
|
||||
graceful-fs "^4.1.2"
|
||||
parse-json "^4.0.0"
|
||||
pify "^3.0.0"
|
||||
strip-bom "^3.0.0"
|
||||
|
||||
lodash.clonedeep@^4.5.0:
|
||||
version "4.5.0"
|
||||
resolved "https://registry.yarnpkg.com/lodash.clonedeep/-/lodash.clonedeep-4.5.0.tgz#e23f3f9c4f8fbdde872529c1071857a086e5ccef"
|
||||
@@ -3265,6 +3394,11 @@ md5.js@^1.3.4:
|
||||
inherits "^2.0.1"
|
||||
safe-buffer "^5.1.2"
|
||||
|
||||
memorystream@^0.3.1:
|
||||
version "0.3.1"
|
||||
resolved "https://registry.yarnpkg.com/memorystream/-/memorystream-0.3.1.tgz#86d7090b30ce455d63fbae12dda51a47ddcaf9b2"
|
||||
integrity sha1-htcJCzDORV1j+64S3aUaR93K+bI=
|
||||
|
||||
miller-rabin@^4.0.0:
|
||||
version "4.0.1"
|
||||
resolved "https://registry.yarnpkg.com/miller-rabin/-/miller-rabin-4.0.1.tgz#f080351c865b0dc562a8462966daa53543c78a4d"
|
||||
@@ -3458,6 +3592,11 @@ needle@^2.2.1:
|
||||
iconv-lite "^0.4.4"
|
||||
sax "^1.2.4"
|
||||
|
||||
nice-try@^1.0.4:
|
||||
version "1.0.5"
|
||||
resolved "https://registry.yarnpkg.com/nice-try/-/nice-try-1.0.5.tgz#a3378a7696ce7d223e88fc9b764bd7ef1089e366"
|
||||
integrity sha512-1nh45deeb5olNY7eX82BkPO7SSxR5SSYJiPTrTdFUVYwAl8CKMA5N9PjTYkHiRjisVcxcQ1HXdLhx2qxxJzLNQ==
|
||||
|
||||
node-abi@^2.19.2:
|
||||
version "2.19.3"
|
||||
resolved "https://registry.yarnpkg.com/node-abi/-/node-abi-2.19.3.tgz#252f5dcab12dad1b5503b2d27eddd4733930282d"
|
||||
@@ -3510,6 +3649,16 @@ nopt@^4.0.1, nopt@^4.0.3:
|
||||
abbrev "1"
|
||||
osenv "^0.1.4"
|
||||
|
||||
normalize-package-data@^2.3.2:
|
||||
version "2.5.0"
|
||||
resolved "https://registry.yarnpkg.com/normalize-package-data/-/normalize-package-data-2.5.0.tgz#e66db1838b200c1dfc233225d12cb36520e234a8"
|
||||
integrity sha512-/5CMN3T0R4XTj4DcGaexo+roZSdSFW/0AOOTROrjxzCG1wrWXEsGbRKevjlIL+ZDE4sZlJr5ED4YW0yqmkK+eA==
|
||||
dependencies:
|
||||
hosted-git-info "^2.1.4"
|
||||
resolve "^1.10.0"
|
||||
semver "2 || 3 || 4 || 5"
|
||||
validate-npm-package-license "^3.0.1"
|
||||
|
||||
normalize-package-data@^3.0.0:
|
||||
version "3.0.0"
|
||||
resolved "https://registry.yarnpkg.com/normalize-package-data/-/normalize-package-data-3.0.0.tgz#1f8a7c423b3d2e85eb36985eaf81de381d01301a"
|
||||
@@ -3559,6 +3708,21 @@ npm-packlist@^1.1.6:
|
||||
npm-bundled "^1.0.1"
|
||||
npm-normalize-package-bin "^1.0.1"
|
||||
|
||||
npm-run-all@^4.1.5:
|
||||
version "4.1.5"
|
||||
resolved "https://registry.yarnpkg.com/npm-run-all/-/npm-run-all-4.1.5.tgz#04476202a15ee0e2e214080861bff12a51d98fba"
|
||||
integrity sha512-Oo82gJDAVcaMdi3nuoKFavkIHBRVqQ1qvMb+9LHk/cF4P6B2m8aP04hGf7oL6wZ9BuGwX1onlLhpuoofSyoQDQ==
|
||||
dependencies:
|
||||
ansi-styles "^3.2.1"
|
||||
chalk "^2.4.1"
|
||||
cross-spawn "^6.0.5"
|
||||
memorystream "^0.3.1"
|
||||
minimatch "^3.0.4"
|
||||
pidtree "^0.3.0"
|
||||
read-pkg "^3.0.0"
|
||||
shell-quote "^1.6.1"
|
||||
string.prototype.padend "^3.0.0"
|
||||
|
||||
npmlog@^4.0.2, npmlog@^4.1.2:
|
||||
version "4.1.2"
|
||||
resolved "https://registry.yarnpkg.com/npmlog/-/npmlog-4.1.2.tgz#08a7f2a8bf734604779a9efa4ad5cc717abb954b"
|
||||
@@ -3594,12 +3758,17 @@ object-inspect@^1.8.0:
|
||||
resolved "https://registry.yarnpkg.com/object-inspect/-/object-inspect-1.8.0.tgz#df807e5ecf53a609cc6bfe93eac3cc7be5b3a9d0"
|
||||
integrity sha512-jLdtEOB112fORuypAyl/50VRVIBIdVQOSUUGQHzJ4xBSbit81zRarz7GThkEFZy1RceYrWYcPcBFPQwHyAc1gA==
|
||||
|
||||
object-inspect@^1.9.0:
|
||||
version "1.9.0"
|
||||
resolved "https://registry.yarnpkg.com/object-inspect/-/object-inspect-1.9.0.tgz#c90521d74e1127b67266ded3394ad6116986533a"
|
||||
integrity sha512-i3Bp9iTqwhaLZBxGkRfo5ZbE07BQRT7MGu8+nNgwW9ItGp1TzCTw2DLEoWwjClxBjOFI/hWljTAmYGCEwmtnOw==
|
||||
|
||||
object-keys@^1.0.12, object-keys@^1.1.1:
|
||||
version "1.1.1"
|
||||
resolved "https://registry.yarnpkg.com/object-keys/-/object-keys-1.1.1.tgz#1c47f272df277f3b1daf061677d9c82e2322c60e"
|
||||
integrity sha512-NuAESUOUMrlIXOfHKzD6bpPu3tYt3xvjNdRIQ+FeT0lNb4K8WR70CaDxhuNguS2XG+GjkyMwOzsN5ZktImfhLA==
|
||||
|
||||
object.assign@^4.1.1:
|
||||
object.assign@^4.1.1, object.assign@^4.1.2:
|
||||
version "4.1.2"
|
||||
resolved "https://registry.yarnpkg.com/object.assign/-/object.assign-4.1.2.tgz#0ed54a342eceb37b38ff76eb831a0e788cb63940"
|
||||
integrity sha512-ixT2L5THXsApyiUPYKmW+2EHpXXe5Ii3M+f4e+aJFAHao5amFRW6J0OO6c/LU8Be47utCx2GL89hxGB6XSmKuQ==
|
||||
@@ -3766,6 +3935,14 @@ parse-headers@^2.0.0:
|
||||
for-each "^0.3.3"
|
||||
string.prototype.trim "^1.1.2"
|
||||
|
||||
parse-json@^4.0.0:
|
||||
version "4.0.0"
|
||||
resolved "https://registry.yarnpkg.com/parse-json/-/parse-json-4.0.0.tgz#be35f5425be1f7f6c747184f98a788cb99477ee0"
|
||||
integrity sha1-vjX1Qlvh9/bHRxhPmKeIy5lHfuA=
|
||||
dependencies:
|
||||
error-ex "^1.3.1"
|
||||
json-parse-better-errors "^1.0.1"
|
||||
|
||||
parse-srcset@^1.0.2:
|
||||
version "1.0.2"
|
||||
resolved "https://registry.yarnpkg.com/parse-srcset/-/parse-srcset-1.0.2.tgz#f2bd221f6cc970a938d88556abc589caaaa2bde1"
|
||||
@@ -3786,6 +3963,11 @@ path-is-absolute@^1.0.0, path-is-absolute@^1.0.1:
|
||||
resolved "https://registry.yarnpkg.com/path-is-absolute/-/path-is-absolute-1.0.1.tgz#174b9268735534ffbc7ace6bf53a5a9e1b5c5f5f"
|
||||
integrity sha1-F0uSaHNVNP+8es5r9TpanhtcX18=
|
||||
|
||||
path-key@^2.0.1:
|
||||
version "2.0.1"
|
||||
resolved "https://registry.yarnpkg.com/path-key/-/path-key-2.0.1.tgz#411cadb574c5a140d3a4b1910d40d80cc9f40b40"
|
||||
integrity sha1-QRyttXTFoUDTpLGRDUDYDMn0C0A=
|
||||
|
||||
path-key@^3.1.0:
|
||||
version "3.1.1"
|
||||
resolved "https://registry.yarnpkg.com/path-key/-/path-key-3.1.1.tgz#581f6ade658cbba65a0d3380de7753295054f375"
|
||||
@@ -3801,6 +3983,13 @@ path-platform@~0.11.15:
|
||||
resolved "https://registry.yarnpkg.com/path-platform/-/path-platform-0.11.15.tgz#e864217f74c36850f0852b78dc7bf7d4a5721bf2"
|
||||
integrity sha1-6GQhf3TDaFDwhSt43Hv31KVyG/I=
|
||||
|
||||
path-type@^3.0.0:
|
||||
version "3.0.0"
|
||||
resolved "https://registry.yarnpkg.com/path-type/-/path-type-3.0.0.tgz#cef31dc8e0a1a3bb0d105c0cd97cf3bf47f4e36f"
|
||||
integrity sha512-T2ZUsdZFHgA3u4e5PfPbjd7HDDpxPnQb5jN0SrDsjNSuVXHJqtwTnWqG0B1jZrgmJ/7lj1EmVIByWt1gxGkWvg==
|
||||
dependencies:
|
||||
pify "^3.0.0"
|
||||
|
||||
pbkdf2@^3.0.3:
|
||||
version "3.1.1"
|
||||
resolved "https://registry.yarnpkg.com/pbkdf2/-/pbkdf2-3.1.1.tgz#cb8724b0fada984596856d1a6ebafd3584654b94"
|
||||
@@ -3837,6 +4026,11 @@ picomatch@^2.2.1:
|
||||
resolved "https://registry.yarnpkg.com/picomatch/-/picomatch-2.2.2.tgz#21f333e9b6b8eaff02468f5146ea406d345f4dad"
|
||||
integrity sha512-q0M/9eZHzmr0AulXyPwNfZjtwZ/RBZlbN3K3CErVrk50T2ASYI7Bye0EvekFY3IP1Nt2DHu0re+V2ZHIpMkuWg==
|
||||
|
||||
pidtree@^0.3.0:
|
||||
version "0.3.1"
|
||||
resolved "https://registry.yarnpkg.com/pidtree/-/pidtree-0.3.1.tgz#ef09ac2cc0533df1f3250ccf2c4d366b0d12114a"
|
||||
integrity sha512-qQbW94hLHEqCg7nhby4yRC7G2+jYHY4Rguc2bjw7Uug4GIJuu1tvf2uHaZv5Q8zdt+WKJ6qK1FOI6amaWUo5FA==
|
||||
|
||||
pify@^3.0.0:
|
||||
version "3.0.0"
|
||||
resolved "https://registry.yarnpkg.com/pify/-/pify-3.0.0.tgz#e5a4acd2c101fdf3d9a4d07f0dbc4db49dd28176"
|
||||
@@ -4024,6 +4218,15 @@ read-only-stream@^2.0.0:
|
||||
dependencies:
|
||||
readable-stream "^2.0.2"
|
||||
|
||||
read-pkg@^3.0.0:
|
||||
version "3.0.0"
|
||||
resolved "https://registry.yarnpkg.com/read-pkg/-/read-pkg-3.0.0.tgz#9cbc686978fee65d16c00e2b19c237fcf6e38389"
|
||||
integrity sha1-nLxoaXj+5l0WwA4rGcI3/Pbjg4k=
|
||||
dependencies:
|
||||
load-json-file "^4.0.0"
|
||||
normalize-package-data "^2.3.2"
|
||||
path-type "^3.0.0"
|
||||
|
||||
readable-stream@^2.0.2, readable-stream@^2.3.5, readable-stream@~2.3.6:
|
||||
version "2.3.7"
|
||||
resolved "https://registry.yarnpkg.com/readable-stream/-/readable-stream-2.3.7.tgz#1eca1cf711aef814c04f62252a36a62f6cb23b57"
|
||||
@@ -4160,6 +4363,14 @@ resolve@^1.1.4, resolve@^1.17.0, resolve@^1.4.0:
|
||||
is-core-module "^2.1.0"
|
||||
path-parse "^1.0.6"
|
||||
|
||||
resolve@^1.10.0:
|
||||
version "1.20.0"
|
||||
resolved "https://registry.yarnpkg.com/resolve/-/resolve-1.20.0.tgz#629a013fb3f70755d6f0b7935cc1c2c5378b1975"
|
||||
integrity sha512-wENBPt4ySzg4ybFQW2TT1zMQucPK95HSh/nq2CFTZVOGut2+pQvSsgtda4d26YrYcr067wjbmzOG8byDPBX63A==
|
||||
dependencies:
|
||||
is-core-module "^2.2.0"
|
||||
path-parse "^1.0.6"
|
||||
|
||||
responselike@^1.0.2:
|
||||
version "1.0.2"
|
||||
resolved "https://registry.yarnpkg.com/responselike/-/responselike-1.0.2.tgz#918720ef3b631c5642be068f15ade5a46f4ba1e7"
|
||||
@@ -4278,7 +4489,7 @@ semver-diff@^3.1.1:
|
||||
dependencies:
|
||||
semver "^6.3.0"
|
||||
|
||||
semver@^5.3.0, semver@^5.4.1:
|
||||
"semver@2 || 3 || 4 || 5", semver@^5.3.0, semver@^5.4.1, semver@^5.5.0:
|
||||
version "5.7.1"
|
||||
resolved "https://registry.yarnpkg.com/semver/-/semver-5.7.1.tgz#a954f931aeba508d307bbf069eff0c01c96116f7"
|
||||
integrity sha512-sauaDf/PZdVgrLTNYHRtpXa1iRiKcaebiKQ1BJdpQlWH2lCvexQdX55snPFyK7QzpudqbCI0qXFfOasHdyNDGQ==
|
||||
@@ -4327,6 +4538,13 @@ shasum-object@^1.0.0:
|
||||
dependencies:
|
||||
fast-safe-stringify "^2.0.7"
|
||||
|
||||
shebang-command@^1.2.0:
|
||||
version "1.2.0"
|
||||
resolved "https://registry.yarnpkg.com/shebang-command/-/shebang-command-1.2.0.tgz#44aac65b695b03398968c39f363fee5deafdf1ea"
|
||||
integrity sha1-RKrGW2lbAzmJaMOfNj/uXer98eo=
|
||||
dependencies:
|
||||
shebang-regex "^1.0.0"
|
||||
|
||||
shebang-command@^2.0.0:
|
||||
version "2.0.0"
|
||||
resolved "https://registry.yarnpkg.com/shebang-command/-/shebang-command-2.0.0.tgz#ccd0af4f8835fbdc265b82461aaf0c36663f34ea"
|
||||
@@ -4334,6 +4552,11 @@ shebang-command@^2.0.0:
|
||||
dependencies:
|
||||
shebang-regex "^3.0.0"
|
||||
|
||||
shebang-regex@^1.0.0:
|
||||
version "1.0.0"
|
||||
resolved "https://registry.yarnpkg.com/shebang-regex/-/shebang-regex-1.0.0.tgz#da42f49740c0b42db2ca9728571cb190c98efea3"
|
||||
integrity sha1-2kL0l0DAtC2yypcoVxyxkMmO/qM=
|
||||
|
||||
shebang-regex@^3.0.0:
|
||||
version "3.0.0"
|
||||
resolved "https://registry.yarnpkg.com/shebang-regex/-/shebang-regex-3.0.0.tgz#ae16f1644d873ecad843b0307b143362d4c42172"
|
||||
@@ -4532,6 +4755,15 @@ string-width@^4.0.0, string-width@^4.1.0, string-width@^4.2.0:
|
||||
is-fullwidth-code-point "^3.0.0"
|
||||
strip-ansi "^6.0.0"
|
||||
|
||||
string.prototype.padend@^3.0.0:
|
||||
version "3.1.2"
|
||||
resolved "https://registry.yarnpkg.com/string.prototype.padend/-/string.prototype.padend-3.1.2.tgz#6858ca4f35c5268ebd5e8615e1327d55f59ee311"
|
||||
integrity sha512-/AQFLdYvePENU3W5rgurfWSMU6n+Ww8n/3cUt7E+vPBB/D7YDG8x+qjoFs4M/alR2bW7Qg6xMjVwWUOvuQ0XpQ==
|
||||
dependencies:
|
||||
call-bind "^1.0.2"
|
||||
define-properties "^1.1.3"
|
||||
es-abstract "^1.18.0-next.2"
|
||||
|
||||
string.prototype.trim@^1.1.2:
|
||||
version "1.2.0"
|
||||
resolved "https://registry.yarnpkg.com/string.prototype.trim/-/string.prototype.trim-1.2.0.tgz#75a729b10cfc1be439543dae442129459ce61e3d"
|
||||
@@ -4549,6 +4781,14 @@ string.prototype.trimend@^1.0.1:
|
||||
call-bind "^1.0.0"
|
||||
define-properties "^1.1.3"
|
||||
|
||||
string.prototype.trimend@^1.0.4:
|
||||
version "1.0.4"
|
||||
resolved "https://registry.yarnpkg.com/string.prototype.trimend/-/string.prototype.trimend-1.0.4.tgz#e75ae90c2942c63504686c18b287b4a0b1a45f80"
|
||||
integrity sha512-y9xCjw1P23Awk8EvTpcyL2NIr1j7wJ39f+k6lvRnSMz+mz9CGz9NYPelDk42kOz6+ql8xjfK8oYzy3jAP5QU5A==
|
||||
dependencies:
|
||||
call-bind "^1.0.2"
|
||||
define-properties "^1.1.3"
|
||||
|
||||
string.prototype.trimleft@^2.1.0:
|
||||
version "2.1.0"
|
||||
resolved "https://registry.yarnpkg.com/string.prototype.trimleft/-/string.prototype.trimleft-2.1.0.tgz#6cc47f0d7eb8d62b0f3701611715a3954591d634"
|
||||
@@ -4573,6 +4813,14 @@ string.prototype.trimstart@^1.0.1:
|
||||
call-bind "^1.0.0"
|
||||
define-properties "^1.1.3"
|
||||
|
||||
string.prototype.trimstart@^1.0.4:
|
||||
version "1.0.4"
|
||||
resolved "https://registry.yarnpkg.com/string.prototype.trimstart/-/string.prototype.trimstart-1.0.4.tgz#b36399af4ab2999b4c9c648bd7a3fb2bb26feeed"
|
||||
integrity sha512-jh6e984OBfvxS50tdY2nRZnoC5/mLFKOREQfw8t5yytkoUsJRNxvI/E39qu1sD0OtWI3OC0XgKSmcWwziwYuZw==
|
||||
dependencies:
|
||||
call-bind "^1.0.2"
|
||||
define-properties "^1.1.3"
|
||||
|
||||
string_decoder@^1.1.1:
|
||||
version "1.3.0"
|
||||
resolved "https://registry.yarnpkg.com/string_decoder/-/string_decoder-1.3.0.tgz#42f114594a46cf1a8e30b0a84f56c78c3edac21e"
|
||||
@@ -4622,6 +4870,11 @@ strip-ansi@^6.0.0:
|
||||
dependencies:
|
||||
ansi-regex "^5.0.0"
|
||||
|
||||
strip-bom@^3.0.0:
|
||||
version "3.0.0"
|
||||
resolved "https://registry.yarnpkg.com/strip-bom/-/strip-bom-3.0.0.tgz#2334c18e9c759f7bdd56fdef7e9ae3d588e68ed3"
|
||||
integrity sha1-IzTBjpx1n3vdVv3vfprj1YjmjtM=
|
||||
|
||||
strip-json-comments@^3.1.0, strip-json-comments@^3.1.1:
|
||||
version "3.1.1"
|
||||
resolved "https://registry.yarnpkg.com/strip-json-comments/-/strip-json-comments-3.1.1.tgz#31f1281b3832630434831c310c01cccda8cbe006"
|
||||
@@ -4855,6 +5108,16 @@ umd@^3.0.0:
|
||||
resolved "https://registry.yarnpkg.com/umd/-/umd-3.0.3.tgz#aa9fe653c42b9097678489c01000acb69f0b26cf"
|
||||
integrity sha512-4IcGSufhFshvLNcMCV80UnQVlZ5pMOC8mvNPForqwA4+lzYQuetTESLDQkeLmihq8bRcnpbQa48Wb8Lh16/xow==
|
||||
|
||||
unbox-primitive@^1.0.0:
|
||||
version "1.0.1"
|
||||
resolved "https://registry.yarnpkg.com/unbox-primitive/-/unbox-primitive-1.0.1.tgz#085e215625ec3162574dc8859abee78a59b14471"
|
||||
integrity sha512-tZU/3NqK3dA5gpE1KtyiJUrEB0lxnGkMFHptJ7q6ewdZ8s12QrODwNbhIJStmJkd1QDXa1NRA8aF2A1zk/Ypyw==
|
||||
dependencies:
|
||||
function-bind "^1.1.1"
|
||||
has-bigints "^1.0.1"
|
||||
has-symbols "^1.0.2"
|
||||
which-boxed-primitive "^1.0.2"
|
||||
|
||||
undeclared-identifiers@^1.1.2:
|
||||
version "1.1.3"
|
||||
resolved "https://registry.yarnpkg.com/undeclared-identifiers/-/undeclared-identifiers-1.1.3.tgz#9254c1d37bdac0ac2b52de4b6722792d2a91e30f"
|
||||
@@ -5043,6 +5306,17 @@ wcwidth@^1.0.1:
|
||||
dependencies:
|
||||
defaults "^1.0.3"
|
||||
|
||||
which-boxed-primitive@^1.0.2:
|
||||
version "1.0.2"
|
||||
resolved "https://registry.yarnpkg.com/which-boxed-primitive/-/which-boxed-primitive-1.0.2.tgz#13757bc89b209b049fe5d86430e21cf40a89a8e6"
|
||||
integrity sha512-bwZdv0AKLpplFY2KZRX6TvyuN7ojjr7lwkg6ml0roIy9YeuSr7JS372qlNW18UQYzgYK9ziGcerWqZOmEn9VNg==
|
||||
dependencies:
|
||||
is-bigint "^1.0.1"
|
||||
is-boolean-object "^1.1.0"
|
||||
is-number-object "^1.0.4"
|
||||
is-string "^1.0.5"
|
||||
is-symbol "^1.0.3"
|
||||
|
||||
which-typed-array@^1.1.2:
|
||||
version "1.1.2"
|
||||
resolved "https://registry.yarnpkg.com/which-typed-array/-/which-typed-array-1.1.2.tgz#e5f98e56bda93e3dac196b01d47c1156679c00b2"
|
||||
@@ -5055,6 +5329,13 @@ which-typed-array@^1.1.2:
|
||||
has-symbols "^1.0.1"
|
||||
is-typed-array "^1.1.3"
|
||||
|
||||
which@^1.2.9:
|
||||
version "1.3.1"
|
||||
resolved "https://registry.yarnpkg.com/which/-/which-1.3.1.tgz#a45043d54f5805316da8d62f9f50918d3da70b0a"
|
||||
integrity sha512-HxJdYWq1MTIQbJ3nw0cqssHoTNU267KlrDuGZ1WYlxDStUtKUhOaJmh112/TZmHxxUfuJqPXSOm7tDyas0OSIQ==
|
||||
dependencies:
|
||||
isexe "^2.0.0"
|
||||
|
||||
which@^2.0.1, which@^2.0.2:
|
||||
version "2.0.2"
|
||||
resolved "https://registry.yarnpkg.com/which/-/which-2.0.2.tgz#7c6a8dd0a636a0327e10b59c9286eee93f3f51b1"
|
||||
|
251
plugin.md
251
plugin.md
@@ -1,250 +1 @@
|
||||
# TheDesk Plugin
|
||||
|
||||
[AiScript](https://github.com/syuilo/aiscript)で書きます。
|
||||
|
||||
[AiScript の書き方](https://github.com/syuilo/aiscript/blob/master/docs/get-started.md)
|
||||
|
||||
## メタデータ
|
||||
|
||||
```
|
||||
### {
|
||||
manifest: 1
|
||||
name: "マイ・ファースト・プラグイン"
|
||||
version: 1
|
||||
event: "buttonOnPostbox"
|
||||
author: "Cutls P"
|
||||
apiGet: no
|
||||
}
|
||||
```
|
||||
|
||||
これを冒頭に入れます。
|
||||
|
||||
**AiScriptのbooleanはyesかnoです**
|
||||
|
||||
- manifest
|
||||
1 を指定してください。無ければ 1 とみなします。
|
||||
- version
|
||||
数字でも文字列でも好きに使ってください。TheDesk 側では全く参照しません。
|
||||
- dangerHtml: boolean
|
||||
`TheDesk:changeText`にアクセスするために必要です。
|
||||
- apiGet: boolean
|
||||
`TheDesk:api`または`TheDesk:getRequest`に GET メソッドでアクセスするときに必要です。
|
||||
- apiPost: boolean
|
||||
`TheDesk:api`に POST/PUT/DELETE メソッドでアクセスするときや、`postExec`を実行するときに必要です。
|
||||
- shortcut: number
|
||||
Alt+{number の keycode}で発火できるようにします。[キーコード一覧](https://shanabrian.com/web/javascript/keycode.php)
|
||||
`event`が`init`, `buttonOnBottom`, `buttonOnPostbox`, `none`のときにのみ有効です。
|
||||
- interval: number
|
||||
`event`が`tips`のとき、更新間隔をミリ秒で指定します。
|
||||
|
||||
### event
|
||||
|
||||
event に設定できるもの
|
||||
|
||||
- `buttonOnPostbox`
|
||||
投稿フォームの…(90° 回転)で出てくるメニュー内に表示されます
|
||||
- `buttonOnToot`
|
||||
トゥートの詳細メニューに表示されます
|
||||
- `init`
|
||||
起動時(なるべく早い段階で)
|
||||
- `buttonOnBottom`
|
||||
メニューボタン(画面下部)の右に追加されます。
|
||||
- `tips`
|
||||
TheDesk Tipsに追加します。
|
||||
- `none`
|
||||
明示しません。ショートカットでのみ発火します。
|
||||
|
||||
追加予定…
|
||||
|
||||
## 変数
|
||||
|
||||
### buttonOnToot のとき
|
||||
|
||||
- DATA
|
||||
|
||||
```
|
||||
{
|
||||
id: "トゥートのID文字列",
|
||||
acct_id: "アカウントのTheDesk内部ID"
|
||||
}
|
||||
```
|
||||
|
||||
- TOOT
|
||||
|
||||
トゥートの API を叩いた時と同じオブジェクトが返ります。なお、プラグインが実行されてから取得します。
|
||||
プラグインの実行ボタン押下から実行までの時間差はこれによるものです。
|
||||
|
||||
### buttonOnPostbox のとき
|
||||
|
||||
- POST
|
||||
投稿するときのオブジェクトがそのまま入りますが、`TheDeskAcctId`という TheDesk が内部で扱うアカウントの ID(string)が入ったプロパティが追加されます。
|
||||
- ACCT_ID
|
||||
TheDesk が内部で扱うアカウントの ID(string)
|
||||
|
||||
## 関数
|
||||
|
||||
### TheDesk:dialog(title: string, text: string, type?: string)
|
||||
|
||||
type のデフォルトは'info'で、他に'error','question','success'などがある
|
||||
|
||||
### TheDesk:confirm(title: string, text: string, type?: string)
|
||||
|
||||
type のデフォルトは'info'で、他に'error','question','success'などがある
|
||||
返り値は boolean(true|false)
|
||||
|
||||
### TheDesk:css(query: string, attr: string, val: string)
|
||||
|
||||
jQuery の`$(query).css(attr, val)`に相当
|
||||
|
||||
### TheDesk:openLink(url: string)
|
||||
|
||||
リンクを無確認で開きます。
|
||||
|
||||
### TheDesk:api(method: 'GET'|'POST'|'PUT'|'DELETE', endpoint: string, body: string | null, acct_id: string)
|
||||
|
||||
endpoint は`v1`から書いてください。(`v1/accounts...`)
|
||||
|
||||
返り値は json のオブジェクト。
|
||||
|
||||
### TheDesk:getRequest(endpoint: string, json: boolean)
|
||||
|
||||
endpoint は`https://` を省いて書いてください。(HTTPSにリクエストを限定するため)
|
||||
返り値は`json`がtrueなら json のオブジェクト。falseならstring(テキストとして処理)
|
||||
|
||||
### TheDesk:changeText(body: string)
|
||||
|
||||
`buttonOnToot`で使用可能
|
||||
|
||||
該当トゥート(や他タイムラインの同一トゥート)のテキストを書き換えます。
|
||||
`dangerHtml`を true にしてください。
|
||||
HTML を引数にすることに留意してください。
|
||||
|
||||
p, span, br, a タグを利用できます。また、a タグには'href', 'class', 'rel', 'target'属性以外を入れることはできず、
|
||||
href の最初が javascript:で始まるものも利用できません。
|
||||
### TheDesk:refreshTipsView(body: string)
|
||||
|
||||
`tips`で使用可能
|
||||
|
||||
Tipsのコンテンツを書き換えます。
|
||||
`dangerHtml`を true にしてください。
|
||||
HTML を引数にすることに留意してください。
|
||||
|
||||
p, span, br, a, img タグを利用できます。また、a タグには'href', 'class', 'rel', 'target', 'style'属性以外を入れることはできず、
|
||||
href の最初が javascript:で始まるものも利用できません。また、p, span, imgにはstyleを使用できます(imgは当然srcも可)
|
||||
|
||||
### TheDesk:postText(text: string)
|
||||
|
||||
`buttonOnPostbox`で使用可能
|
||||
|
||||
トゥートボックスの中身を書き換えます。
|
||||
|
||||
### TheDesk:postCW(force: boolean, text: string)
|
||||
|
||||
`buttonOnPostbox`で使用可能
|
||||
|
||||
CW を切り替えます。force はデフォルトで false で、true にするとオンに、false にするとトグルになります。
|
||||
text には警告文を入れます。
|
||||
|
||||
### TheDesk:postNSFW(force: boolean)
|
||||
|
||||
`buttonOnPostbox`で使用可能
|
||||
|
||||
NSFW を切り替えます。force はデフォルトで false で、true にするとオンに、false にするとトグルになります。
|
||||
|
||||
### TheDesk:postVis(vis: 'public'|'unlisted'|'private'|'direct')
|
||||
|
||||
`buttonOnPostbox`で使用可能
|
||||
|
||||
公開範囲を変更します。
|
||||
|
||||
### TheDesk:postClearbox(force: boolean)
|
||||
|
||||
`buttonOnPostbox`で使用可能
|
||||
|
||||
投稿ボックスをクリアします。
|
||||
|
||||
### TheDesk:postExec()
|
||||
|
||||
`buttonOnPostbox`で使用可能
|
||||
|
||||
`apiPost`を true にしてください。
|
||||
トゥートボタンを押したのと同じ挙動をします。
|
||||
|
||||
## 実例
|
||||
|
||||
### 1
|
||||
|
||||
https://misskey.io/@syuilo/pages/bebeyo を TheDesk で使用できるようにするためには…(勝手に改造)
|
||||
|
||||
```
|
||||
### {
|
||||
name: "ベベヨ"
|
||||
version: 1
|
||||
event: "buttonOnPostbox"
|
||||
author: "syuilo"
|
||||
}
|
||||
|
||||
#chars =
|
||||
Str:split("ア,イ,ウ,エ,オ,カ,キ,ク,ケ,コ,サ,シ,ス,セ,ソ,タ,チ,ツ,テ,ト,ナ,ニ,ヌ,ネ,ノ,ハ,ヒ,フ,ヘ,ホ,マ,ミ,ム,メ,モ,ヤ,ユ,ヨ,ガ,ギ,グ,ゲ,ゴ,ザ,ジ,ズ,ゼ,ゾ,ダ,ヂ,ヅ,デ,ド,バ,ビ,ブ,ベ,ボ,パ,ピ,プ,ペ,ポ", ",")
|
||||
#yos = ["オ", "ニョ"]
|
||||
#suffixes = ["オオオオオオオ", "ナーラ", "ンチーノ"]
|
||||
$text <- _
|
||||
|
||||
@do() {
|
||||
#char1 = chars[Math:rnd(1, Arr:len(chars))]
|
||||
#char2 = chars[Math:rnd(1, Arr:len(chars))]
|
||||
#yo = ? (Math:rnd(0, 2) = 0) { yos[Math:rnd(1, Arr:len(yos))] } ... { "ヨ" }
|
||||
#n = ? (Math:rnd(0, 2) = 0) { "ン" } ... { "" }
|
||||
#suffix = ? (Math:rnd(0, 2) = 0) { suffixes[Math:rnd(1, Arr:len(suffixes))] } ... { "" }
|
||||
text <- `{char1}{char2}{n}{yo}{suffix}`
|
||||
TheDesk:postText(text)
|
||||
}
|
||||
|
||||
do()
|
||||
```
|
||||
|
||||
最初のメタデータを追加します。
|
||||
また、do 関数の最下部の`TheDesk:postText(text)`で、TheDesk の投稿ボックスに結果を挿入しています。
|
||||
|
||||
### 2
|
||||
|
||||
Cat にするやつ(ユーザーがいちいち押さないと変換されないし、タグごと変わってしまうのであまりよくない)
|
||||
|
||||
```
|
||||
### {
|
||||
name: "nyaize"
|
||||
version: 1
|
||||
event: "buttonOnToot"
|
||||
author: "Cutls P"
|
||||
dangerHtml: yes
|
||||
}
|
||||
|
||||
#toot = TOOT.content
|
||||
#nyaized = Str:replace(toot, "な", "にゃ")
|
||||
|
||||
TheDesk:changeText(nyaized)
|
||||
```
|
||||
|
||||
### 3
|
||||
|
||||
BitFlyerのAPIを利用してTips部に3秒ごとにビットコインの価格を表示するやつ
|
||||
https://1m.cutls.com/@Cutls/105525654999148930
|
||||
|
||||
```
|
||||
### {
|
||||
name: "Bitcoinの値段を3秒ごとにTipsに表示するやつ"
|
||||
version: 1
|
||||
event: "tips"
|
||||
author: "Cutls P"
|
||||
dangerHtml: yes
|
||||
apiGet: yes
|
||||
interval: 3000
|
||||
}
|
||||
|
||||
#json = TheDesk:getRequest("bitflyer.com/api/echo/price", yes)
|
||||
#ask = json.ask
|
||||
#mid = json.mid
|
||||
#bid = json.bid
|
||||
#text = `ASK: {ask} / MID: {mid} / BID: {bid}`
|
||||
TheDesk:refreshTipsView(text)
|
||||
```
|
||||
Moved to [Wiki](https://github.com/cutls/TheDesk/wiki/プラグイン)
|
@@ -1,34 +0,0 @@
|
||||
os: windows
|
||||
language: node_js
|
||||
node_js:
|
||||
- '10.15.2'
|
||||
script: node -v
|
||||
before_deploy:
|
||||
- cd app
|
||||
- npm install electron-builder -g
|
||||
- npm install
|
||||
- electron-builder --win --ia32
|
||||
- mv ../build/TheDesk-setup.exe ../TheDesk-setup-ia32.exe
|
||||
- mv ../build/TheDesk*.exe ../TheDesk-ia32.exe
|
||||
- electron-builder --win --x64
|
||||
- mv ../build/TheDesk-setup.exe ../TheDesk-setup.exe
|
||||
- mv ../build/TheDesk*.exe ../TheDesk.exe
|
||||
- cd ../
|
||||
- ls
|
||||
after_deploy: ls
|
||||
deploy:
|
||||
skip_cleanup: true
|
||||
provider: releases
|
||||
api_key:
|
||||
secure: jndR02p5KRTtcJk18b3YsXL2cC+yzEf1AOqXdpWciF8f3lO5oY01jlxd17xdHIcK7VywSsLVZpLToSdqAoIEhJ5OxEQ/FmA3FlmbwwD6ou13gLa4VGIvsBHveCmKGjVu0Z++atIy76tZYU1SOWFWv4B0ZhnVz2ca2VZynvLgw3YNsPJH7rHO966GXgRkGYJAJ4UvLg3sj/iztVh2FSfbUj5IGO1e/JHJO63wAo1MSQtRjkutVgl/djnBLC6vbL4YHkM3Ynpkx/YQEcxwrmeY0Ra8D5yYDq4MNIDMmZahWC+k4u2eA2Cj2ifBFNxbZvTN75vLwRBp6DsTNHsiqkXrSPDBdNeet31RbwTQ6LtsK8jqmL4S/59dmLcj7uCU2WxyBLPbJdbdZWlqW2ZQvfQY8QVAYy7S3MiHQWQN0oP5wqXk89jcgR42ig/zsqFNPpXHM4mExR7l/gDLPg0j9c3XEF6sWtk3FmJN1i4+B+9kn09b6UKlV7EFPKp8XcFNrz4ZcE9/I8lKwsqLVG2jAXIk7Z9LwDRcAmK5eG348X5zwFtOY6raKIvRw2cn92bPnEI+55v8A4WANS2647GFTgxHj30D0d/sOZmJ5BS34zpdWTgE0AlKg7sOqkncjqoW5J5zCh5Ow7b3KXvEvlAts44mAag8tZTectxMP4iguXvTnv4=
|
||||
file:
|
||||
- TheDesk.exe
|
||||
- TheDesk-setup.exe
|
||||
- TheDesk-ia32.exe
|
||||
- TheDesk-setup-ia32.exe
|
||||
on:
|
||||
repo: cutls/TheDesk
|
||||
branches:
|
||||
only:
|
||||
- master
|
||||
|
Reference in New Issue
Block a user