diff --git a/docs/widgets.md b/docs/widgets.md index bbfff1d8..562f1fd8 100644 --- a/docs/widgets.md +++ b/docs/widgets.md @@ -46,6 +46,7 @@ Dashy has support for displaying dynamic content in the form of widgets. There a - [Pi Hole Queries](#pi-hole-queries) - [Recent Traffic](#recent-traffic) - [Stat Ping Statuses](#stat-ping-statuses) + - [Synology Download Station](#synology-download-station) - **[System Resource Monitoring](#system-resource-monitoring)** - [CPU Usage Current](#current-cpu-usage) - [CPU Usage Per Core](#cpu-usage-per-core) @@ -1325,6 +1326,41 @@ Displays the current and recent uptime of your running services, via a self-host --- +### Synology Download Station + +Displays the current downloads/torrents tasks of your Synology NAS + +

+ +##### Options + +**Field** | **Type** | **Required** | **Description** +--- | --- | --- | --- +**`hostname`** | `string` | Required | The URL to your Synology NAS, without a trailing slash +**`username`** | `string` | Required | The username of a user on your synology NAS. You will see only this user download station tasks if he is not part of the administrator group. Currently don't support OTP protected accounts. +**`password`** | `string` | Required | The password of the account specified above. + +##### Example + +```yaml +- type: synology-download + options: + hostname: http://192.168.1.1:8080 + username: dashy + password: totally-secure-password + + +``` + +##### Info +- **CORS**: 🟠 Proxied +- **Auth**: 🟢 Required +- **Price**: 🟢 Free +- **Host**: Self-Hosted (see [Synology](https://www.synology.com/en-us)) +- **Privacy**: _See [Synology Privacy Statement](https://www.synology.com/en-us/company/legal/privacy)_ + +--- + ## System Resource Monitoring The easiest method for displaying system info and resource usage in Dashy is with [Glances](https://nicolargo.github.io/glances/). diff --git a/src/assets/locales/en.json b/src/assets/locales/en.json index 741fcbc9..d70594ca 100644 --- a/src/assets/locales/en.json +++ b/src/assets/locales/en.json @@ -290,6 +290,15 @@ "tfl-status": { "good-service-all": "Good Service on all Lines", "good-service-rest": "Good Service on all other Lines" + }, + "synology-download": { + "download": "Download", + "upload": "Upload", + "downloaded": "Downloaded", + "uploaded": "Uploaded", + "remaining": "Remaining", + "up": "Up", + "down": "Down" } } } \ No newline at end of file diff --git a/src/components/Charts/PercentageChart.vue b/src/components/Charts/PercentageChart.vue index d4b4b539..0a2ba53c 100644 --- a/src/components/Charts/PercentageChart.vue +++ b/src/components/Charts/PercentageChart.vue @@ -13,7 +13,7 @@ > -
+
@@ -31,6 +31,10 @@ export default { type: Boolean, default: true, }, + showLegend: { + type: Boolean, + default: true, + }, height: { number: Boolean, default: 1, diff --git a/src/components/Widgets/SynologyDownload.vue b/src/components/Widgets/SynologyDownload.vue new file mode 100644 index 00000000..aa82089e --- /dev/null +++ b/src/components/Widgets/SynologyDownload.vue @@ -0,0 +1,176 @@ + + + + + diff --git a/src/components/Widgets/WidgetBase.vue b/src/components/Widgets/WidgetBase.vue index ac288d4f..089fc226 100644 --- a/src/components/Widgets/WidgetBase.vue +++ b/src/components/Widgets/WidgetBase.vue @@ -349,6 +349,13 @@ @error="handleError" :ref="widgetRef" /> + import('@/components/Widgets/SportsScores.vue'), StatPing: () => import('@/components/Widgets/StatPing.vue'), StockPriceChart: () => import('@/components/Widgets/StockPriceChart.vue'), + SynologyDownload: () => import('@/components/Widgets/SynologyDownload.vue'), SystemInfo: () => import('@/components/Widgets/SystemInfo.vue'), TflStatus: () => import('@/components/Widgets/TflStatus.vue'), WalletBalance: () => import('@/components/Widgets/WalletBalance.vue'),