Skip to content

Latest commit

 

History

History
1170 lines (735 loc) · 59.4 KB

File metadata and controls

1170 lines (735 loc) · 59.4 KB

Changelog

All notable changes to this project will be documented in this file. See commit-and-tag-version for commit guidelines.

4.8.4 (2026-04-06)

Documentation

  • improve monitor control guide for Wayland systems (6ffbf86)

Chores

  • add 'socketclient' to cspell configuration (be5ba42)
  • fix bugs URL in package.json (ad223b5)
  • update dependencies (484f3ca)

Code Refactoring

  • remove useless variable initializations (no-useless-assignment) (d3b9149)

4.8.3 (2026-03-15)

Fixed

  • fix remote UI loading behind a reverse proxy (b040d08), closes #388

Chores

4.8.2 (2026-03-04)

Fixed

Chores

4.8.1 (2026-03-01)

Fixed

  • add-module search filter not working (7c79287)
  • replace AbortSignal.timeout with AbortController in loadList (4388d2f)
  • replace querySelector with getElementById for id containing special chars (8a12e89)

Chores

  • handel cspell issues (2c53dfe)
  • move global declaration for MMSocket to file (1883e01)
  • update devDependencies (e505af7)
  • update icon paths in manifest.json (5791073)

Code Refactoring

  • improve error logging for modules using browser globals in Node.js context (1a0dc7f)

4.8.0 (2026-02-27)

Fixed

  • add timeout and supersede handling to loadList via AbortSignal (2edc9c0)
  • correct lazy-render regressions (7beeb6c)
  • handle object data in handleLoadList empty indicator (43f6a5b)
  • insert overlays before body instead of after it (eddebb4)
  • move brightness/temp overlays outside zoomed body (7157ede)
  • remove nested scroll containers in edit menu (0d79bfe)
  • reset scroll position and keyboard focus on menu navigation (d30342c)

Documentation

  • fix sendSocketNotification -> sendNotification in DELAYED actions example (85fcb94)

Chores

  • simplify demo script command (c2e70f5)
  • update dependencies (f3d113a)

Code Refactoring

  • convert remote scripts to ESM with import map (0ddc7cd)
  • CSS cleanup — remove unused rules, merge duplicates (8e1b8f3)
  • CSS nesting — header-title icons, range/checkbox inputs, badge colors (de01f34)
  • deduplicate slider/picker listeners in attachEditMenuListeners (e6bd86d)
  • deduplicate switch cases in remote-socket.mjs (3c5f0a5)
  • extract shared DOM test fixture into tests/dom/setup.mjs (a24d2f6)
  • introduce action()/getData() helpers for REMOTE_ACTION (31cba19)
  • make buttons in remote.mjs data-driven (03d009b)
  • remove dead code, fix bugs, modernize DOM APIs (80cacab)
  • remove hasClass() wrapper, use classList.contains() directly (15df598)
  • render menu HTML dynamically from JS (7872341)
  • replace 9 hash-nav button handlers with data-hash delegation (fbd39a7)
  • replace createElement chains with template literals in remote.js (9ff33cb)
  • replace deprecated url.parse with request.query (4e6b8a8)
  • replace focus/blur JS listeners with CSS :focus-within (7ca8399)
  • replace hard media queries with fluid clamp() scaling (46e2149)
  • replace pendingResolver with Map and inline hide/show (0b78812)
  • simplify callAfterUpdate using closure instead of waitObject (f02b2e2)
  • simplify code and fix success-popup visibility (09b1d37)
  • simplify config editor helpers in remote.js (0405aa1)
  • split remote.js into topic-focused files (86b39be)
  • streamline remote-modules.mjs (c5f6831)

Tests

  • add unit tests for hasForcedType, getTypeAsString, createConfigInput, updateSliderThumbColor (9e7d4ff)

4.7.0 (2026-02-25)

Added

  • add zoom, background color and font color controls (93b4b81), closes #238

Fixed

  • accept plain strings as notification payload (b49fbcf), closes #383
  • prevent crash when sending notification without payload (cafa299)
  • prevent crashes and duplicate entries in getExternalApiByGuessing (e351b10)

Chores

  • disable max-lines-per-function for test files (bcf80f0)
  • extend cspell words (291f983)
  • update devDependencies (38328ab)

Tests

  • improve coverage for systemControl and moduleManager (0c4f4c9)

Continuous Integration

  • add test coverage check to automated tests workflow (7c0086a)

4.6.0 (2026-02-24)

Added

  • add API URL preview to notification menu (c067078)

Chores

4.5.0 (2026-02-24)

Added

  • add showNotificationMenu config option (28f3444)
  • set default value for showModuleApiMenu to true (c1e1a90)

4.4.0 (2026-02-23)

Added

  • restore localStorage for notification form and fix textarea height (845d464)

Fixed

  • fix getActions empty key and action.payload falsy check in api.js (536987b)
  • pass numeric/boolean payloads through handleNotification (eed2f1e)

Chores

  • add missing translations (e056791)
  • add MMM-pages to demo config (e68e424)
  • update dependencies (aa0bf12)

4.3.0 (2026-02-22)

Added

  • add notification sender to remote.html (c364c55), closes #383

4.2.4 (2026-02-21)

Fixed

  • improve error message when API key is missing (88214e4)
  • skip app.relaunch() when running under pm2 to prevent EADDRINUSE loop (e021bc2)

4.2.3 (2026-02-21)

Chores

  • add "someaction" to cspell configuration (b854832)
  • change variable declaration from let to const (03626c5)
  • refine automated tests workflow by specifying unit, integration, and DOM tests (414f10a)
  • update dependencies (2093e9a)

Tests

  • expand unit coverage for core modules (b36b36b)
  • update test script to streamline test execution (648d6be)

4.2.2 (2026-02-07)

Fixed

  • handle undefined module actions with fallback for alert module (b30be3e)

Chores

  • simplify ESLint config and handle linter issues (056801d)

4.2.1 (2026-02-06)

Fixed

  • handle undefined module actions in API endpoints (5a41e4b)

Chores

4.2.0 (2026-01-28)

Added

  • support new default modules path for MM >= 2.35.0 (5109efa), closes #377

Fixed

  • change runner from ubuntu-latest to ubuntu-slim in workflows (58369cd)
  • initialize API routes before modules load to prevent 404 errors (3f9309a)
  • mock electron module for CI environment in systemControl tests (5b0850d)

Chores

  • update devDependencies (fd6c37d)
  • update modules.json.template (765de75)

Code Refactoring

  • handle linter issues after eslint plugin update (f2f2f8d)

4.1.5 (2026-01-06)

Fixed

  • use exact match for specific module instances in API (1c26553)

Chores

  • add "postchangelog" to cspell configuration (77b53a5)

Code Refactoring

  • extract systemControl to lib/systemControl.js (d114eea)

4.1.4 (2026-01-06)

Fixed

  • prevent duplicate HTTP responses for multi-instance modules (aae4801)

Chores

  • switch changelog config format (ba3c058)

Code Refactoring

  • extract module manager to lib/moduleManager.js (bf7d660)

Tests

  • add suppressExpectedErrors functionality to logger for cleaner test output (ca7b536)

4.1.3 (2026-01-04)

Bug Fixes

  • ci: handle missing defaults.js in test environments (494f037)

Code Refactoring

  • remove formatName utility and update related references (642e0fa)

Tests

  • add unit tests for updateModuleApiMenu functionality (96e2607)

4.1.2 (2026-01-04)

Bug Fixes

  • import formatName in API module to resolve TypeError (6b6a002)

Code Refactoring

  • extract config management into lib/configManager.js (9738742)

4.1.1 (2026-01-02)

Bug Fixes

  • remote: display custom menu submenu items correctly (e21736a)
  • remote: enable install button for modules regardless of installation status (6c0d52a)
  • remote: raise z-index for temperature and brightness overlays (bf29c6a), closes #374
  • remote: send response when installing modules without dependencies (a1dc147)

Chores

  • update actions/checkout to v6 in automated tests workflow (f632396)
  • update devDependencies (2ac3f79)

Code Refactoring

  • convert loadDefaultSettings, loadTranslation, and loadCustomMenus to async functions (1502086)
  • convert saveDefaultSettings to async and handle errors (de5f092)
  • convert sync fs operations to async/await (3ecfdf5)
  • remove unused utility functions from node_helper (7b69fd0)

Tests

  • add unit tests for findBestBackupSlot functionality (0b0caac)

4.1.0 (2025-12-21)

Features

  • enforce JSDoc and add central type definitions (e3f8222)

Bug Fixes

  • i18n: add missing translation keys and remove 6 unused keys (d69c8bd)

Chores

  • correct command in postinstall script for generating API key (e0b9e96)
  • update contributors format in package.json (e4ac809)

Code Refactoring

  • adopt upstream 3rd-party-modules schema (368747e)
  • remove PM2 dependency, add universal process manager support (1ebc12f)
  • rename folder to directory for constancy (d998dcf)

Tests

  • add comprehensive tests for translation completeness and usage (c6202a8)

4.0.3 (2025-12-20)

Bug Fixes

  • ensure smooth transition on first brightness/temp change (f49da0c)

Code Refactoring

  • remove installer.sh and simplify installation (2d2ee30)

4.0.2 (2025-12-20)

Bug Fixes

  • add express as devDependency for CI tests (890933f)
  • load saved brightness/temp values on remote page refresh (4fa33fe)
  • preserve backdrop-filter during brightness transitions (2c7d56d), closes #373
  • ui: fix scrolling and consistent header height on small displays (46f3e4a)

Chores

  • require Node.js >= 22.0.0 (0ba3598)

Tests

  • add test suite to GitHub Actions (8029896)

4.0.1 (2025-12-19)

Bug Fixes

  • restore custom menu functionality after refactoring (90520dc)

Chores

  • add 'navbutton' and 'qrcode' to cspell configuration (8f3dc99)

4.0.0 (2025-12-19)

This release is a huge step forward in modernizing the MMM-Remote-Control module, both in terms of user interface and code quality.

For users the most outstanding changes are the complete overhaul of the MMM-Remote-Control remote user interface and the new QR code feature - which simplifies connecting to the remote control interface via mobile devices.

There are also many under-the-hood improvements, including a comprehensive refactor of the codebase to modern JavaScript standards, enhanced error handling, and a significant expansion of the test suite to ensure reliability and maintainability going forward.

There should be no breaking changes in this release, but due to the extent of the changes, we decided for a major release and recommend testing the module thoroughly after updating.

Features

  • add pointer-events: none to temperature overlay to allow clicks/touch events to pass through (30adf0e)
  • add changelog button to module list (a3ea01f)
  • add demo configuration file and add package.json script (1110865)
  • add DOM tests and fix lockStrings handling (aa7a3c8)
  • add PWA support (ee2ccfa)
  • add QR code display and menu header icons (467372e)
  • add status badges and i18n for Classes menu (20485df)
  • remote: add descriptions and repository buttons to add-module-menu (c2e7388)
  • remote: add modern SVG favicon (a3ccd57)
  • remote: add repository buttons to settings-menu (635aab0)
  • remote: enhance menu headers with icons, sort main menu and new updates icon (e672c11)

Bug Fixes

  • correct null check for alert button element (4df9f8f)
  • ensure callback execution on module hide/show actions (5518aa4)
  • ensure handleManageClasses always sends response (cecb0ed)
  • implement queue system for module update checks (d2f95bd)
  • improve changelog display on module updates (4226482)
  • preserve backdrop-filter effect during brightness transitions (f5eeb77), closes #373
  • resolve git pull fast-forward errors during module updates (1910faa)
  • update config backup tests and correct findBestBackupSlot logic (d654505)

Chores

  • add eslint-plugin-jsdoc and improve documentation (057c075)
  • raise coverage thresholds and add improvement strategy (30e40de)
  • setup commit-and-tag-version (533257b)

Documentation

  • add JSDoc for intentional error handling behavior (3c62105)

Code Refactoring

  • convert function expressions to arrow functions for consistency (097a0b6)
  • convert HTMLCollections to Arrays for better compatibility (9315724)
  • modernize answerPost with async/await and promises (16f4473)
  • modernize callAfterUpdate with ES6+ features (74060f7)
  • modernize for loops to modern iteration patterns (c145f03)
  • modernize JavaScript codebase to ES2020+ standards (82cf674)
  • modernize module update workflow with async/await (7145ae5)
  • modernize Swagger UI documentation (72acc35)
  • modernize updateModule() git operations (0317e80)
  • preserve original module names (dfd029f)
  • remote: comprehensive UI/UX modernization and code quality improvements (5174ae4)
  • remote: harmonize styling for result lists (5f14b16)
  • remote: modernize add-entry handling (f794f82)
  • remote: move links menu buttons to menu-nav for consistent layout (1c95add)
  • remote: reorganize menu navigation for improved structure and clarity (9d2a039)
  • remote: replace className manipulation with classList (f091102)
  • remove module prefix from log messages (76c2246)
  • remove unused formatLabel function and simplify label creation (8462322)
  • replace if-chain with action handler map in executeQuery (c20a864)
  • replace if-chain with data handler map in answerGet (162cba3)
  • replace unmaintained showdown with marked (0e3db68)
  • simplify handleGetClasses with optional chaining (959cfb0)
  • simplify loadList to always return Promise (d3991a3)
  • translations: rename "delete" action to "remove" and optimize styles (388d677)

Tests

  • add alert handling and userPresence GET tests (103c5ab)
  • add answerGet data assembly logic tests (dba9de4)
  • add comprehensive coverage for mergeData logic (8853af5)
  • add contract tests for /api/saves endpoint (62cd0d6)
  • add coverage for core executeQuery actions (batch 1) (f057f94)
  • add coverage for executeQuery actions (b4eae48)
  • add edge case coverage for answerModuleApi (0e5afe2)
  • add error-path tests for executeQuery (2def992)
  • add GET endpoint tests for brightness, temp, and defaultConfig (7adb73a)
  • add HTTP-layer smoke tests for API endpoints (f85693d)
  • add schema validation for /api/module/available (273fde2)
  • clean up test suite hygiene (ce66c63)
  • coverage: expand unit tests for core helpers and handlers (8c7cea0)
  • migrate timer mocking to Node's native mock.timers (45dafb0)

3.3.2 - 2025-12-13

Changed

  • chore: update devDependencies
  • chore: handle prettier issue
  • chore: handle cspell issues
  • docs: update API documentation link in README
  • fix(api): allow POST requests without Content-Type header when body is empty

3.3.1 - 2025-12-12

Changed

  • chore: update dependencies
  • docs: migrate wiki to docs/guide, simplify README

3.3.0 - 2025-11-10

Added

  • feat: improve notification UX and PM2 error handling

Changed

  • chore: update dependencies
  • chore: update Node.js setup action to v6
  • docs: npm run -> node --run
  • test: suppress noisy logs during test execution
  • refactor: Switch module list from Wiki markdown to JSON API - solves #336

Fixed

  • fix: add null checks to prevent appendChild TypeError - fixes #327
  • fix: add null-safety for configData.moduleData access
  • fix: use cross-platform Node.js script for postinstall - fixes #360
  • fix: use dynamic config path instead of hardcoded value - fixes #328

3.2.7 - 2025-10-09

Added

  • tests: expand unit coverage for API helpers, delayed execution, persistence flows, and notification routing
  • docs: add tests/README.md to document the current stack, coverage focus, and roadmap

Changed

  • tests: raise coverage thresholds and include API/**/*.js in instrumentation while trimming brittle Express wiring suites
  • docs: refresh README badges and testing guidance to point contributors at the new documentation
  • chore: update dependencies

3.2.6 - 2025-10-01

Changed

  • chore: add simple-git-hooks and lint-staged for pre-commit linting
  • chore: update dependencies
  • chore: update Node.js setup action to version 5
  • chore: update stale action to version 10
  • refactor: enhance issue templates for bug reports and feature requests

3.2.5 - 2025-09-21

Changed

  • chore: update devDependencies
  • docs: switch from npm run to node --run
  • refactor: switch to swagger-ui-dist; remove overrides; silence install warnings

3.2.4 - 2025-09-09

Added

  • feat(tests): add initial unit test & coverage foundation

Changed

  • chore: update dependencies
  • refactor(css): remove redundant -webkit-appearance property

Fixed

  • chore: add prismjs override to resolve npm audit issue
  • fix(ui): correct alignment of stacked monitor/edit icons and text spacing

3.2.3 - 2025-09-01

Changed

  • chore: move "type" field to the correct position in package.json
  • chore: remove engines field from package.json
  • chore: remove unnecessary languageOptions from CSS configuration in ESLint
  • chore: update dependencies

3.2.2 - 2025-08-19

Changed

  • chore: update actions/checkout to v5 in automated tests workflow
  • chore: add dependabot config for GitHub Actions and npm updates
  • chore: update dependencies

3.2.1 - 2025-07-11

Changed

  • chore: update dependencies

3.2.0 - 2025-05-30

Added

  • style: add transition effect for brightness and temperature change

Changed

  • chore: add missing "type" field in package.json
  • chore: update dependencies
  • refactor: replace git checkout with git switch for branch/tag navigation
  • style: simplify range input CSS

Fixed

  • fix: add onerror handling for CSS file loading due to path changes in MagicMirror 2.32.0

3.1.13 - 2025-05-24

Changed

  • chore: switch stale workflow schedule to twice a week
  • chore: update dependencies
  • refactor: use fs.constants.F_OK for file access checks

3.1.12 - 2025-05-20

Fixed

  • docs: correct config file path
  • fix: ignore settings.json to prevent merge conflicts. This was accidentally removed in commit 6d7c85b12c8dce2ec772f9a9b1892b098576872f.
  • fix: set brightness and temp for saving into settings.json and offering in API

Changed

  • refactor: centralize config path retrieval in combineConfig and answerPost

3.1.11 - 2025-05-18

Fixed

  • fix: support Express v4 and v5 - to fix issue #340
    • The issue was introduced in 3.1.9, when the module was updated to be compatible with Express v5.
    • Since the new route definitions are not compatible with Express v4, the module will now check the version of Express and use the appropriate route definitions.

3.1.10 - 2025-05-18

Changed

  • chore: re-add Prettier config (was removed in 3.1.9, but caused issues in GitHub actions)
  • chore: update devDependencies
  • docs: move images to own directory
  • docs: update screenshots and add screenshot heading to README

3.1.9 - 2025-05-17

Changed

  • chore: review linter setup
  • chore: update devDependencies
  • chore: update log messages for module default retrieval outputs
  • docs: update URL to own wiki
  • refactor: replace body-parser with express's built-in body parsing
  • refactor: update route definitions and improve response handling to be compatible with express v5 (without this MMM-Remote-Control would not work with the next release of MagicMirror²)
  • refactor: update scripts to use node --run

Fixed

  • fix: replace not working discussions URL with forum URL

3.1.8 - 2025-04-27

Changed

  • refactor: choose installation command depending on the existence of package-lock.json and package.json This also fixes a problem that occurred with modules with package.json but without package-lock.json during installation with npm ci.
  • refactor: don't save header to config file if not set
  • refactor: get module defaults also from browser to handle bundled modules better (this will fix #331)
  • chore: update devDependencies

Fixed

  • fix: get default config while adding a module
  • fix: don't save module position if not set. Since MM meanwhile checks the position values, an error message appears without this fix.

3.1.7 - 2025-04-27

Changed

  • refactor: replace jQuery with vanilla JavaScript
  • refactor: reorder #alert styles to remove rule from stylelint config
  • chore: replace npm install with npm ci --omit=dev for less update issues and improved performance
  • chore: update devDependencies

3.1.6 - 2025-04-13

Changed

  • refactor: replace XMLHttpRequest by fetch
  • chore: update English and German translations
  • chore: more detailed logging
  • chore: update dependencies
  • chore: update ESLint configuration to use new import plugin structure
  • chore: adjust ESLint rules
  • docs: rephrase introduction in README

3.1.5 - 2025-03-26

Fixed

  • fix: Refactor setBrightness and setTemp. To fix #322.

Changed

  • refactor: var -> let
  • chore: Update devDependencies
  • chore: Update modules.json.template

3.1.4 - 2025-03-22

Fixed

  • fix: Prevent merge conflicts with modules.json while updating MMM-Remote-Control via git pull (#323)

Changed

  • chore: Update devDependencies
  • chore: Refactor error logging in node_helper.js to include module context
  • chore: Update bug report template to reflect new version placeholders

3.1.3 - 2025-03-20

Fixed

  • fix: Only remove classesButton when it's there. There was a console error when returning to the main menu from a sub page.

Changed

  • chore: Remove unused background-color from MMM-Remote-Control.css
  • chore: Use vw and vh instead of 100% in MMM-Remote-Control.css

3.1.2 - 2025-03-11

Fixed

  • Fix temperature overlay to fit fullscreen

Changed

  • Update dependencies
  • Remove old remote-control-overlay definition
  • Simplify stylelint-prettier configuration

3.1.1 - 2025-03-09

Changed

  • Handle cspell issues
  • Refactor setBrightness Use filter instead an overlay
  • Optimize slider - Allow 0 for brightness - Set default to center
  • Handle linter warnings
  • Refactor

3.1.0 - 2025-03-09

Added

  • Added Color Temperature changing feature (#296) by @Andoramb

3.0.1 - 2025-03-09

Fixed

  • Solve issue when not using standard config file (#320) by @dangherve

Changed

  • chore: Add @stylistic/eslint-plugin and handle linter issues
  • chore: Replace eslint-plugin-import with eslint-plugin-import-x
  • chore: Update devDependencies

3.0.0 - 2025-03-04

There shouldn't be any breaking changes in this release. But since there are a some changes, which could lead to unexpected behavior, we decided to bump the major version.

Fixed

  • Fix action endpoint for modules #292

Changed

  • Use npm package for jQuery, showdown and swagger-ui (and switch to current versions)
  • Update dependencies
  • Handle some linter issues
  • Drop Google fonts for API page

Added

  • Add compare links to CHANGELOG
  • Add Code of Conduct

2.5.4 - 2025-03-03

Added

  • Add prettier, markdownlint and stylelint to CI

Changed

  • Update dependencies

Fixed

  • Fix linting and formatter issues

2.5.3 - 2025-01-20

Fixed

  • Fix download_modules.js script to automatically download the modules list from the MagicMirror² wiki. This will fix #301.

Changed

  • Replace node-fetch by internal fetch API
  • Replace old python 2 script download_modules.py by JavaScript script, you can run it with node --run download_modules to download the modules list from the MagicMirror² wiki.
  • Update uuid. This will fix #318.

2.5.2 - 2025-01-18

Fixed

  • Fixed an issue with bundled modules (reported in #302) - the defaults of some bundled modules could not be read.
  • Fixed/Updated some URLs.

Changed

  • Replaced lodash with built-in JavaScript functions.
  • Format and handle some linting issues in node_helper.js.
  • Switch LICENSE file to markdown for better readability.
  • Update devDependencies.

2.5.1 - 2024-12-17

Fixed

  • An error in the installation script. (Since MagicMirror² v2.27.0, the string used as TEST_STRING in installer.sh has changed and the installer script was not able to detect the MagicMirror² directory.)

2.5.0 - 2024-11-20

Added

  • Added a spell checker and fixed problems that were found (#308).
  • Added JavaScript linting (for the start with soft rules) (#310).
  • Added GitHub workflow for linting and spell checking on every push and pull request (#310).
  • Added Turkish language (#305)

2.4.0 - 2024-10-08

Fixed

  • Module fixing. Thanks @khassel (#307)

2.3.8 - 2023-10-03

Added

  • node-fetch now added to package.json (#293)

Fixed

  • Module name lookup now working as expected (#289)
  • QOL Code Cleaning (#287)

2.3.7 - 2022-10-13

Added

  • Header name to identify instances of modules (#283)

Fixed

  • API now grabs a single module, instead of every instance of the module (#282)

2.3.6 - 2021-08-01

Fixed

  • API now updates the modules list

2.3.5 - 2021-07-08

Added

  • Simplified Chinese translation
  • 'PM2 not installed' warning

2.3.4 - 2021-04-21

Added

  • Now you can use MANAGE_CLASSES to use them between modules, instead of just the API

Fixed

  • Classes now detects when you're using identifiers and names in the same action (#259)

2.3.3 - 2021-04-05

Changed

  • request is deprecated inside MM package. Now using node-fetch (#257)

2.3.2 - 2021-02-19

Fixed

  • value now travels along with the payload when slide or input it's used on Custom Menus. (#251)

Changed

  • If you use slide or input, and you add a string payload, it'll now be available in the string object of the payload.

2.3.1 - 2020-12-29

Fixed

  • Find it's not defined inside some Electron instances (#242 and #235)
  • undefined modules generated by the disabled tag are now handled. (MagicMirrorOrg/MagicMirror#2382)

2.3.0 - 2020-12-23

Added

  • Custom Shell Commands for everyone! (#159)
  • Custom Menus: User Input Field (#181) and Sliders

Fixed

  • "TV is off" now detected (#234)
  • Toggle and Status Monitor working as expected (#234)

Changed

  • Now the system used for turn on and off the screen will be vcgencmd (#227 and more)

2.2.2 - 2020-11-24

Fixed

  • Module Installation now working
  • iframe now working (#161)

2.2.1 - 2020-11-18

Fixed

  • Module Identifier now working as expected (#229)
  • Update Installation seems to work

2.2.0 - 2020-11-16

Fixed

  • Default values now removed from backup (#12)
  • Custom Menus now works as expected
  • API working, not well implemented in the past
  • API userPresence now working as expected

Added

  • Updates now show if there's an update available every day (#52)
  • Templates for issues and PRs, and also stale for auto management of issues.
  • Close Dev Tools (#119)
  • Undo Config Implementation (Beta)
  • Classes to show, hide or toggle multiple modules at once (#34)
  • Classes and saves API
  • Changelog of every module updated
  • Showdown implemented in order to show changelog markdown.
  • secureEndpoint config to bypass the non-apikey limitation. This could be dangerous, use it with caution.
  • Added POST support for Monitor API (#200)
  • Added endpoint to edit config file (#206)
  • Endpoint /api/docs now shows you the documentation available for the API. You can test your mirror right there!

Changed

  • lodash required. Do npm install on the Remote Control module.
  • Alert button don't show up when Alert module isn't active
  • The way monitor turn on and off (#225)
  • Now hide, show or toggle modules also accept arrays
  • /api/test can be reach without any apiKey
  • /api/modules/installed and /available are now /api/module/installed and /available
  • ApiKey required in order to change substantial things on the Mirror
  • Some Endpoints are gonna be deprecated in the future. You can see those inside /api/docs, in the Legacy menu.

Removed

  • /api/modules it's no longer available, you can use /api/module instead.
  • Postman collection deprecated ~ (Sorry n.n)

2.1.0 - 2020-11-01

Hello! Ezequiel here. Just wanted to say thanks for trust in me, in the past days I made a lot of changes into the code, adding some functions that'll surely be in a future release, and also putting everything together in my fork. I answered almost every issue raised, and tried to help every person that use this module. Today, I'm glad to be able to share everything I learned to all of you. I apologize for some fast and uncommented commits, I just thought that some things needed to be fixed ASAP. See you in future commits, issues and PRs :D

Fixed

  • A typo in es translation
  • A few typos in README.md (#134 and #149) and API/README.md (#179)
  • Delayed commands should now work (#190)
  • Typo on remote_action (#184)
  • IP now showing (#194)
  • MM restart button don't just stop anymore (#126)
  • Saving config should work as expected now (#153)
  • installer.sh now detects where's the node installation (#222)

Added

  • Danish translation (#157)
  • Italian translation (#162)
  • Port now showing according to config.js (#98)
  • Custom commands for shutdown and reboot

Changed

  • Overwrite of local changes when updating from a repository
  • Now requires MagicMirror² version 2.12

2.0.1 - 2020-10-28

Huge thanks to @ezeholz who has offered to maintain the module from now on! Credit for this (and future) versions and releases goes to @ezeholz (unless noted otherwise).

Now requires MagicMirror² version 2.7.

Fixed

  • Path to font awesome icons
  • A few typos in ca and es translations
  • Updates to remote.html to support new basePath feature in MM config.js, follow up to this MM issue, related to #185

2.0.0 - 2019-02-21

Huge shout out to shbatm for his work on this new major version, which brings a new API, custom menus and commands and lots of other stuff:

Added

  • REST API interface for controlling all aspects of the MagicMirror² from HTTP RESTful-style GET and POST calls, based on principles from MMM-Api
  • Live daily updates of modules.json from the MagicMirror² wiki, based on principles from MMM-Remote-Control-Repository.
  • Incorporated some features found in MMM-OnScreenMenu that were not originally in this module.
    • Monitor (Connected Screen) On-Off Status and Toggle
    • Delayed calls ("DELAYED" Query option and .../delay API paths)
    • If using Electron: Open Dev Tools, Minimize, Toggle Fullscreen
  • Configuration Option to send custom shell commands to use. Currently, only custom monitor on/off/status commands are supported.
  • Module Control menu - Automatically generated from the API to control the different modules you have installed, based on their notificationReceived function.
  • Custom menu items. See Custom Menu Items in README
  • Norsk bokmål translation

Changed

  • Updates to remote.html and the node_helper.js to use direct SocketIO communication back and forth instead of separate HTTP calls.
    • Future framework for following PM2 logs and more live update options.
  • General clean-up and standardization of status reporting for GET and POST calls, to original URLs and to new API URLs.
  • Updated to ES2015 (ES Version 6) function calls in most locations.
  • Added USER_PRESENCE controls from AgP42
  • Added/updated french translations from BKeyport and Mysh3ll
  • Added SHOW/HIDE/TOGGLE ALL modules option per request from Rene1709

Upcoming Changes

  • Add additional MMM-OnScreenMenu features:
    • Moving modules' positions
  • PM2 Log Follower / Terminal Window
  • Added Notification Echo option to config to echo all Module Notifications to the remote's DevTools console for debugging.
  • Allow for text input in the Module Controls menu to be able to provide a notification payload.

1.1.5 - 2018-05-14

Added

  • French translation

Fixed

  • Updated documentation to new MagicMirror² version
  • Fix error on updating MagicMirror²

1.1.4 - 2017-09-17

Added

  • Dutch translation
  • Updating a module tries to install dependencies with npm install
  • Module identifier is shown if a module is locked with lock strings
  • Confirmation dialog before restart and shutdown

Fixed

  • Internal save file format and mistakenly hiding modules which were hidden by other modules
  • Restart should work for new installations

Changed

  • German translation for power menu changed from "Ausschalten" to "Energieoptionen"

1.1.3 - 2017-04-23

Added

  • Portuguese translation
  • Indonesian translation
  • Support for iOS Icon and Webapp

Changed

  • Installation no longer needs a temporary file

Fixed

1.1.2 - 2017-02-01

Note: Since version 1.1.0 this module uses (new) dependencies, check the Updating section in the README.md.

Added

  • Swedish translation

Changed

  • Installation process updated in README.md
  • Automatic installer/updater includes hint to restart MagicMirror²

Fixed

  • Issues with not applying shown and hidden status correctly to modules
  • Issues where lockstrings were missing
  • Modules sometimes did not show correctly in the UI as hidden or shown:
    • This is due to a bug in MagicMirror²
    • PR #659 to fix this was made in the project, will be released in the next version

1.1.1 - 2017-01-26

Changed

  • Updated internal list of available modules

1.1.0 - 2017-01-26

Added

  • First version of installer script
  • Menu to send Alerts and/or Notifications to your mirror
  • Menu to update your MagicMirror² installation and your modules (through git pull)
  • Menu to change the config.js
    • Modules can be installed, added, removed, configured
    • There will be backups of the five last versions of the config.js in the config directory
    • Some of these parts are hidden behind an "experimental" warning, do not ignore that warning
  • NOTIFICATION action, see README.md for details

Changed

  • Menu structure
    • Old "Edit" and "Settings" are now under "Edit view"
  • Smaller font sizes in lists

Fixed

  • Issues coming from disabled modules since MM version 2.1.0

1.0.0 - 2016-10-24 - First Official Release

Added

  • Changelog
  • New buttons in user interface
    • Hide/show all modules
    • Link to MagicMirror² homepage
    • Option to adapt brightness (making the mirror brighter than 100% can be limited to certain modules)
  • Contributing hints
  • Internal versioning of saved config (current version: 1)
  • Added action MODULE_DATA to return module data in JSON format

Changed

  • Internal timeout for commands increased from 5 to 8 seconds
  • Symbols for display on and off
  • Internal changes in preparation for MagicMirror² version 2.1.0

0.1.0 - 2016-09-30

Initial release of the Remote Control module.