mirror of
https://github.com/MichMich/MagicMirror.git
synced 2025-06-28 20:22:53 +00:00
Merge branch 'develop' into pr/bryanzzhu/2060
This commit is contained in:
commit
26b8f8d0d5
62
CHANGELOG.md
62
CHANGELOG.md
@ -5,40 +5,58 @@ This project adheres to [Semantic Versioning](https://semver.org/).
|
|||||||
|
|
||||||
❤️ **Donate:** Enjoying MagicMirror²? [Please consider a donation!](https://magicmirror.builders/donate) With your help we can continue to improve the MagicMirror²
|
❤️ **Donate:** Enjoying MagicMirror²? [Please consider a donation!](https://magicmirror.builders/donate) With your help we can continue to improve the MagicMirror²
|
||||||
|
|
||||||
## [2.12.0] - Unreleased (Develop Branch)
|
## [2.13.0] - Unreleased (Develop Branch - Please add your contributions to this release.)
|
||||||
|
|
||||||
_This release is scheduled to be released on 2020-07-01._
|
_This release is scheduled to be released on 2020-10-01._
|
||||||
|
|
||||||
### Added
|
### Added
|
||||||
|
|
||||||
- Added option to config the level of logging
|
|
||||||
- Added prettier for an even cleaner codebase
|
|
||||||
- Hide Sunrise/Sunset in Weather module
|
|
||||||
- Added Met Office DataHub (UK) provider
|
|
||||||
|
|
||||||
### Updated
|
### Updated
|
||||||
|
|
||||||
- Cleaned up alert module code
|
|
||||||
- Cleaned up check_config code
|
|
||||||
- Replaced grunt-based linters with their non-grunt equivalents
|
|
||||||
- Switch to most of the eslint:recommended rules and fix warnings
|
|
||||||
- Replaced insecure links with https ones
|
|
||||||
- Cleaned up all "no-undef" warnings from eslint
|
|
||||||
- Added location title wrapping for calendar module
|
|
||||||
|
|
||||||
### Deleted
|
### Deleted
|
||||||
|
|
||||||
- Removed truetype (ttf) fonts
|
### Fixed
|
||||||
|
|
||||||
|
- Fix the use of "maxNumberOfDays" in the module "weatherforecast depending on the endpoint (forecast/daily or forecast)". [#2018](https://github.com/MichMich/MagicMirror/issues/2018)
|
||||||
|
|
||||||
|
## [2.12.0] - 2020-07-01
|
||||||
|
|
||||||
|
Special thanks to the following contributors: @AndreKoepke, @andrezibaia, @bryanzzhu, @chamakura, @DarthBrento, @Ekristoffe, @khassel, @Legion2, @ndom91, @radokristof, @rejas, @XBCreepinJesus & @ZoneMR.
|
||||||
|
|
||||||
|
ℹ️ **Note:** This update uses new dependencies. Please update using the following command: `git pull && npm install`.
|
||||||
|
|
||||||
|
### Added
|
||||||
|
|
||||||
|
- Added option to config the level of logging.
|
||||||
|
- Added prettier for an even cleaner codebase.
|
||||||
|
- Hide Sunrise/Sunset in Weather module.
|
||||||
|
- Hide Sunrise/Sunset in Current Weather module.
|
||||||
|
- Added Met Office DataHub (UK) provider.
|
||||||
|
|
||||||
|
### Updated
|
||||||
|
|
||||||
|
- Cleaned up alert module code.
|
||||||
|
- Cleaned up check_config code.
|
||||||
|
- Replaced grunt-based linters with their non-grunt equivalents.
|
||||||
|
- Switch to most of the eslint:recommended rules and fix warnings.
|
||||||
|
- Replaced insecure links with https ones.
|
||||||
|
- Cleaned up all "no-undef" warnings from eslint.
|
||||||
|
- Added location title wrapping for calendar module.
|
||||||
|
- Updated the BG translation.
|
||||||
|
|
||||||
|
### Deleted
|
||||||
|
|
||||||
|
- Removed truetype (ttf) fonts.
|
||||||
|
|
||||||
### Fixed
|
### Fixed
|
||||||
|
|
||||||
- The broken modules due to Socket.io change from last release [#1973](https://github.com/MichMich/MagicMirror/issues/1973)
|
- The broken modules due to Socket.io change from last release. [#1973](https://github.com/MichMich/MagicMirror/issues/1973)
|
||||||
- Add backward compatibility for old module code in socketclient.js [#1973](https://github.com/MichMich/MagicMirror/issues/1973)
|
- Add backward compatibility for old module code in socketclient.js. [#1973](https://github.com/MichMich/MagicMirror/issues/1973)
|
||||||
- Support multiple instances of calendar module with different config [#1109](https://github.com/MichMich/MagicMirror/issues/1109)
|
- Support multiple instances of calendar module with different config. [#1109](https://github.com/MichMich/MagicMirror/issues/1109)
|
||||||
- Fix the use of "maxNumberOfDays" in the module "weatherforecast" [#2018](https://github.com/MichMich/MagicMirror/issues/2018)
|
- Fix the use of "maxNumberOfDays" in the module "weatherforecast". [#2018](https://github.com/MichMich/MagicMirror/issues/2018)
|
||||||
- Throw error when check_config fails [#1928](https://github.com/MichMich/MagicMirror/issues/1928)
|
- Throw error when check_config fails. [#1928](https://github.com/MichMich/MagicMirror/issues/1928)
|
||||||
- Bug fix related to 'maxEntries' not displaying Calendar events. [#2050](https://github.com/MichMich/MagicMirror/issues/2050)
|
- Bug fix related to 'maxEntries' not displaying Calendar events. [#2050](https://github.com/MichMich/MagicMirror/issues/2050)
|
||||||
- Updated ical library to latest version [#1926](https://github.com/MichMich/MagicMirror/issues/1926)
|
- Updated ical library to latest version. [#1926](https://github.com/MichMich/MagicMirror/issues/1926)
|
||||||
|
|
||||||
## [2.11.0] - 2020-04-01
|
## [2.11.0] - 2020-04-01
|
||||||
|
|
||||||
|
@ -52,10 +52,12 @@ Module.register("clock", {
|
|||||||
|
|
||||||
//Calculate how many ms should pass until next update depending on if seconds is displayed or not
|
//Calculate how many ms should pass until next update depending on if seconds is displayed or not
|
||||||
var delayCalculator = function (reducedSeconds) {
|
var delayCalculator = function (reducedSeconds) {
|
||||||
|
var EXTRA_DELAY = 50; //Deliberate imperceptable delay to prevent off-by-one timekeeping errors
|
||||||
|
|
||||||
if (self.config.displaySeconds) {
|
if (self.config.displaySeconds) {
|
||||||
return 1000 - moment().milliseconds();
|
return 1000 - moment().milliseconds() + EXTRA_DELAY;
|
||||||
} else {
|
} else {
|
||||||
return (60 - reducedSeconds) * 1000 - moment().milliseconds();
|
return (60 - reducedSeconds) * 1000 - moment().milliseconds() + EXTRA_DELAY;
|
||||||
}
|
}
|
||||||
};
|
};
|
||||||
|
|
||||||
@ -65,7 +67,7 @@ Module.register("clock", {
|
|||||||
|
|
||||||
//If seconds is displayed CLOCK_SECOND-notification should be sent (but not when CLOCK_MINUTE-notification is sent)
|
//If seconds is displayed CLOCK_SECOND-notification should be sent (but not when CLOCK_MINUTE-notification is sent)
|
||||||
if (self.config.displaySeconds) {
|
if (self.config.displaySeconds) {
|
||||||
self.second = (self.second + 1) % 60;
|
self.second = moment().second();
|
||||||
if (self.second !== 0) {
|
if (self.second !== 0) {
|
||||||
self.sendNotification("CLOCK_SECOND", self.second);
|
self.sendNotification("CLOCK_SECOND", self.second);
|
||||||
setTimeout(notificationTimer, delayCalculator(0));
|
setTimeout(notificationTimer, delayCalculator(0));
|
||||||
@ -74,7 +76,7 @@ Module.register("clock", {
|
|||||||
}
|
}
|
||||||
|
|
||||||
//If minute changed or seconds isn't displayed send CLOCK_MINUTE-notification
|
//If minute changed or seconds isn't displayed send CLOCK_MINUTE-notification
|
||||||
self.minute = (self.minute + 1) % 60;
|
self.minute = moment().minute();
|
||||||
self.sendNotification("CLOCK_MINUTE", self.minute);
|
self.sendNotification("CLOCK_MINUTE", self.minute);
|
||||||
setTimeout(notificationTimer, delayCalculator(0));
|
setTimeout(notificationTimer, delayCalculator(0));
|
||||||
};
|
};
|
||||||
|
@ -23,6 +23,7 @@ Module.register("currentweather", {
|
|||||||
lang: config.language,
|
lang: config.language,
|
||||||
decimalSymbol: ".",
|
decimalSymbol: ".",
|
||||||
showHumidity: false,
|
showHumidity: false,
|
||||||
|
showSun: true,
|
||||||
degreeLabel: false,
|
degreeLabel: false,
|
||||||
showIndoorTemperature: false,
|
showIndoorTemperature: false,
|
||||||
showIndoorHumidity: false,
|
showIndoorHumidity: false,
|
||||||
@ -155,13 +156,15 @@ Module.register("currentweather", {
|
|||||||
small.appendChild(humidityIcon);
|
small.appendChild(humidityIcon);
|
||||||
}
|
}
|
||||||
|
|
||||||
var sunriseSunsetIcon = document.createElement("span");
|
if (this.config.showSun) {
|
||||||
sunriseSunsetIcon.className = "wi dimmed " + this.sunriseSunsetIcon;
|
var sunriseSunsetIcon = document.createElement("span");
|
||||||
small.appendChild(sunriseSunsetIcon);
|
sunriseSunsetIcon.className = "wi dimmed " + this.sunriseSunsetIcon;
|
||||||
|
small.appendChild(sunriseSunsetIcon);
|
||||||
|
|
||||||
var sunriseSunsetTime = document.createElement("span");
|
var sunriseSunsetTime = document.createElement("span");
|
||||||
sunriseSunsetTime.innerHTML = " " + this.sunriseSunsetTime;
|
sunriseSunsetTime.innerHTML = " " + this.sunriseSunsetTime;
|
||||||
small.appendChild(sunriseSunsetTime);
|
small.appendChild(sunriseSunsetTime);
|
||||||
|
}
|
||||||
|
|
||||||
wrapper.appendChild(small);
|
wrapper.appendChild(small);
|
||||||
},
|
},
|
||||||
|
@ -294,7 +294,15 @@ Module.register("weatherforecast", {
|
|||||||
return;
|
return;
|
||||||
}
|
}
|
||||||
|
|
||||||
params += "&cnt=" + (this.config.maxNumberOfDays < 1 || this.config.maxNumberOfDays > 17 ? 7 : this.config.maxNumberOfDays);
|
let numberOfDays;
|
||||||
|
if (this.config.forecastEndpoint === "forecast") {
|
||||||
|
numberOfDays = this.config.maxNumberOfDays < 1 || this.config.maxNumberOfDays > 5 ? 5 : this.config.maxNumberOfDays;
|
||||||
|
// don't get forecasts for the 6th day, as it would not represent the whole day
|
||||||
|
numberOfDays = numberOfDays * 8 - (Math.floor(new Date().getHours() / 3) % 8);
|
||||||
|
} else {
|
||||||
|
numberOfDays = this.config.maxNumberOfDays < 1 || this.config.maxNumberOfDays > 17 ? 7 : this.config.maxNumberOfDays;
|
||||||
|
}
|
||||||
|
params += "&cnt=" + numberOfDays;
|
||||||
|
|
||||||
params += "&units=" + this.config.units;
|
params += "&units=" + this.config.units;
|
||||||
params += "&lang=" + this.config.lang;
|
params += "&lang=" + this.config.lang;
|
||||||
|
2
package-lock.json
generated
2
package-lock.json
generated
@ -1,6 +1,6 @@
|
|||||||
{
|
{
|
||||||
"name": "magicmirror",
|
"name": "magicmirror",
|
||||||
"version": "2.12.0-develop",
|
"version": "2.13.0-develop",
|
||||||
"lockfileVersion": 1,
|
"lockfileVersion": 1,
|
||||||
"requires": true,
|
"requires": true,
|
||||||
"dependencies": {
|
"dependencies": {
|
||||||
|
@ -1,6 +1,6 @@
|
|||||||
{
|
{
|
||||||
"name": "magicmirror",
|
"name": "magicmirror",
|
||||||
"version": "2.12.0-develop",
|
"version": "2.13.0-develop",
|
||||||
"description": "The open source modular smart mirror platform.",
|
"description": "The open source modular smart mirror platform.",
|
||||||
"main": "js/electron.js",
|
"main": "js/electron.js",
|
||||||
"scripts": {
|
"scripts": {
|
||||||
|
@ -1,10 +1,10 @@
|
|||||||
{
|
{
|
||||||
"LOADING": "Зареждане …",
|
"LOADING": "Зареждане на …",
|
||||||
|
|
||||||
"TODAY": "Днес",
|
"TODAY": "Днес",
|
||||||
"TOMORROW": "Утре",
|
"TOMORROW": "Утре",
|
||||||
"DAYAFTERTOMORROW": "Вдругиден",
|
"DAYAFTERTOMORROW": "Вдругиден",
|
||||||
"RUNNING": "Свършва на",
|
"RUNNING": "Свършва след",
|
||||||
"EMPTY": "Няма предстоящи събития.",
|
"EMPTY": "Няма предстоящи събития.",
|
||||||
|
|
||||||
"WEEK": "Седмица {weekNumber}",
|
"WEEK": "Седмица {weekNumber}",
|
||||||
@ -26,8 +26,8 @@
|
|||||||
"NW": "СЗ",
|
"NW": "СЗ",
|
||||||
"NNW": "ССЗ",
|
"NNW": "ССЗ",
|
||||||
|
|
||||||
"UPDATE_NOTIFICATION": "Налична актуализация за MagicMirror².",
|
"UPDATE_NOTIFICATION": "Налична е актуализация за MagicMirror².",
|
||||||
"UPDATE_NOTIFICATION_MODULE": "Налична актуализация за {MODULE_NAME} модул.",
|
"UPDATE_NOTIFICATION_MODULE": "Налична е актуализация за модула „{MODULE_NAME}“.",
|
||||||
"UPDATE_INFO_SINGLE": "Текущата инсталация е изостанала с {COMMIT_COUNT} commit къмита на клон {BRANCH_NAME}.",
|
"UPDATE_INFO_SINGLE": "Инсталираната версия е с {COMMIT_COUNT} ревизия назад от клона „{BRANCH_NAME}“.",
|
||||||
"UPDATE_INFO_MULTIPLE": "Текущата инсталация е изостанала с {COMMIT_COUNT} commits къмита на клон {BRANCH_NAME}."
|
"UPDATE_INFO_MULTIPLE": "Инсталираната версия е с {COMMIT_COUNT} ревизии назад от клона „{BRANCH_NAME}“."
|
||||||
}
|
}
|
||||||
|
Loading…
x
Reference in New Issue
Block a user