homebridge-flume 3.1.2 → 3.1.3

This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
Files changed (43) hide show
  1. package/CHANGELOG.md +13 -0
  2. package/README.md +4 -2
  3. package/dist/homebridge/platform.js +3 -3
  4. package/dist/homebridge/platform.js.map +1 -1
  5. package/dist/homebridge/settings.d.ts +1 -0
  6. package/dist/homebridge/settings.js +1 -0
  7. package/dist/homebridge/settings.js.map +1 -1
  8. package/dist/homebridge-ui/public/index.html +8 -1
  9. package/dist/homebridge-ui/public/ui.js +1 -1
  10. package/dist/i18n/{zz.d.ts → de.d.ts} +2 -28
  11. package/dist/i18n/de.js +71 -0
  12. package/dist/i18n/de.js.map +1 -0
  13. package/dist/i18n/en.js +7 -7
  14. package/dist/i18n/en.js.map +1 -1
  15. package/dist/i18n/i18n.d.ts +2 -2
  16. package/dist/i18n/i18n.js +6 -6
  17. package/dist/model/api.d.ts +1 -0
  18. package/dist/model/api.js +27 -11
  19. package/dist/model/api.js.map +1 -1
  20. package/dist/model/device.d.ts +2 -2
  21. package/dist/model/device.js +6 -7
  22. package/dist/model/device.js.map +1 -1
  23. package/dist/model/types.d.ts +10 -14
  24. package/dist/model/types.js +8 -0
  25. package/dist/model/types.js.map +1 -1
  26. package/package.json +2 -2
  27. package/.gitattributes +0 -2
  28. package/dist/i18n/zz.js +0 -32
  29. package/dist/i18n/zz.js.map +0 -1
  30. package/eslint.config.ts +0 -35
  31. package/example_responses/auth.json +0 -18
  32. package/example_responses/get_device_data.json +0 -24
  33. package/example_responses/get_devices.json +0 -34
  34. package/example_responses/get_leak_data.json +0 -15
  35. package/example_responses/get_locations.json +0 -29
  36. package/example_responses/get_usage_data.json +0 -29
  37. package/example_responses/jwt.json +0 -9
  38. package/img/banner.png +0 -0
  39. package/img/icon.png +0 -0
  40. package/img/screenshot_1.png +0 -0
  41. package/img/screenshot_2.png +0 -0
  42. package/img/screenshot_3.png +0 -0
  43. package/src/homebridge-ui/public/index.html +0 -17
package/CHANGELOG.md CHANGED
@@ -6,6 +6,19 @@ Would you like to see Homebridge Flume in your language? Please consider [gettin
6
6
 
7
7
  All notable changes to homebridge-flume will be documented in this file.
8
8
 
9
+ ## 3.1.3 (2025-07-14)
10
+
11
+ ### Added
12
+ - Deutsche Übersetzungen – Danke, [@LexifOder](https://github.com/sponsors/LexifOder)!
13
+
14
+ ### Fixed
15
+ - Config UI in dark mode
16
+
17
+ ### Changed
18
+ - Use unread notifications as indication of leaks, low battery, or connection issues
19
+ - Updated dependencies
20
+ - Force cache miss for ui.js in config UI for each version update
21
+
9
22
  ## 3.1.2 (2025-06-22)
10
23
 
11
24
  ### Changed
package/README.md CHANGED
@@ -64,10 +64,12 @@ Using the Homebridge Config UI is the easiest way to set up this plugin. However
64
64
 
65
65
  ## Credits
66
66
 
67
- @weallknowwhoisatfaulthere for earlier work done [homebridge-flume-water-sensor](https://www.npmjs.com/package/homebridge-flume-water-sensor)
67
+ [@LexifOder](https://github.com/sponsors/LexifOder) for German translations
68
+
69
+ [Keryan Belahcene](https://www.instagram.com/keryan.me) for creating the [Flume](https://github.com/homebridge-plugins/homebridge-flume) header logo
68
70
 
69
71
  [@bwp91](https://github.com/sponsors/bwp91) for creating and maintaining this plugin for years despite not even owning a Flume device
70
72
 
71
- [Keryan Belahcene](https://www.instagram.com/keryan.me) for creating the [Flume](https://github.com/homebridge-plugins/homebridge-flume) header logo
73
+ @weallknowwhoisatfaulthere for earlier work done [homebridge-flume-water-sensor](https://www.npmjs.com/package/homebridge-flume-water-sensor)
72
74
 
73
75
  And to the amazing creators/contributors of [Homebridge](https://homebridge.io) who made this plugin possible!
@@ -1,5 +1,5 @@
1
1
  import { FlumeAccessory } from './accessory.js';
2
- import { PLATFORM_ALIAS, PLUGIN_NAME } from './settings.js';
2
+ import { PLATFORM_ALIAS, PLUGIN_NAME, PROJECT_HOMEPAGE } from './settings.js';
3
3
  import { setLanguage, strings } from '../i18n/i18n.js';
4
4
  import { FlumeAPI } from '../model/api.js';
5
5
  import { VolumeUnits } from '../model/types.js';
@@ -16,7 +16,7 @@ export class FlumePlatform {
16
16
  this.api = api;
17
17
  const userLang = Intl.DateTimeFormat().resolvedOptions().locale.split('-')[0];
18
18
  setLanguage(userLang);
19
- this.log.info('v%s | System %s | Node %s | HB v%s | HAPNodeJS v%s', getVersion(), process.platform, process.version, api.serverVersion, api.hap.HAPLibraryVersion());
19
+ this.log.info('v%s | %s | Node %s | HB v%s | HAP v%s | Lang %s', getVersion(), process.platform, process.version, api.serverVersion, api.hap.HAPLibraryVersion(), userLang);
20
20
  this.api.on('didFinishLaunching', () => this.didFinishLaunching());
21
21
  this.api.on('shutdown', () => this.shutdown());
22
22
  }
@@ -26,7 +26,7 @@ export class FlumePlatform {
26
26
  !this.config.clientId ||
27
27
  !this.config.clientSecret ||
28
28
  !this.config.refreshInterval) {
29
- this.log.error(strings.errors.badConfig);
29
+ this.log.error(strings.errors.badConfig, PROJECT_HOMEPAGE);
30
30
  return;
31
31
  }
32
32
  this.flumeAPI = await FlumeAPI.connect(this.config.username, this.config.password, this.config.clientId, this.config.clientSecret, this.config.refreshInterval, this.config.units ?? VolumeUnits.GALLONS, this.api.user.persistPath(), this.log, this.config.verbose);
@@ -1 +1 @@
1
- {"version":3,"file":"platform.js","sourceRoot":"","sources":["../../src/homebridge/platform.ts"],"names":[],"mappings":"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"}
1
+ {"version":3,"file":"platform.js","sourceRoot":"","sources":["../../src/homebridge/platform.ts"],"names":[],"mappings":"AAEA,OAAO,EAAE,cAAc,EAAE,MAAM,gBAAgB,CAAC;AAChD,OAAO,EAAE,cAAc,EAAE,WAAW,EAAE,gBAAgB,EAAE,MAAM,eAAe,CAAC;AAE9E,OAAO,EAAE,WAAW,EAAE,OAAO,EAAE,MAAM,iBAAiB,CAAC;AAEvD,OAAO,EAAE,QAAQ,EAAE,MAAM,iBAAiB,CAAC;AAE3C,OAAO,EAAE,WAAW,EAAE,MAAM,mBAAmB,CAAC;AAEhD,OAAO,UAAU,MAAM,qBAAqB,CAAC;AAE7C,MAAM,OAAO,aAAa;IAOb;IACA;IACA;IAPH,QAAQ,GAAoB,IAAI,CAAC;IAExB,WAAW,GAAmC,IAAI,GAAG,EAAE,CAAC;IAEzE,YACW,GAAW,EACX,MAAsB,EACtB,GAAQ;QAFR,QAAG,GAAH,GAAG,CAAQ;QACX,WAAM,GAAN,MAAM,CAAgB;QACtB,QAAG,GAAH,GAAG,CAAK;QAGjB,MAAM,QAAQ,GAAG,IAAI,CAAC,cAAc,EAAE,CAAC,eAAe,EAAE,CAAC,MAAM,CAAC,KAAK,CAAC,GAAG,CAAC,CAAC,CAAC,CAAC,CAAC;QAC9E,WAAW,CAAC,QAAQ,CAAC,CAAC;QAEtB,IAAI,CAAC,GAAG,CAAC,IAAI,CACX,iDAAiD,EACjD,UAAU,EAAE,EACZ,OAAO,CAAC,QAAQ,EAChB,OAAO,CAAC,OAAO,EACf,GAAG,CAAC,aAAa,EACjB,GAAG,CAAC,GAAG,CAAC,iBAAiB,EAAE,EAC3B,QAAQ,CACT,CAAC;QAEF,IAAI,CAAC,GAAG,CAAC,EAAE,CAAC,oBAAoB,EAAE,GAAG,EAAE,CAAC,IAAI,CAAC,kBAAkB,EAAE,CAAC,CAAC;QACnE,IAAI,CAAC,GAAG,CAAC,EAAE,CAAC,UAAU,EAAE,GAAG,EAAE,CAAC,IAAI,CAAC,QAAQ,EAAE,CAAC,CAAC;IACjD,CAAC;IAEO,KAAK,CAAC,kBAAkB;QAE9B,IACE,CAAC,IAAI,CAAC,MAAM,CAAC,QAAQ;YACrB,CAAC,IAAI,CAAC,MAAM,CAAC,QAAQ;YACrB,CAAC,IAAI,CAAC,MAAM,CAAC,QAAQ;YACrB,CAAC,IAAI,CAAC,MAAM,CAAC,YAAY;YACzB,CAAC,IAAI,CAAC,MAAM,CAAC,eAAe,EAC5B,CAAC;YACD,IAAI,CAAC,GAAG,CAAC,KAAK,CAAC,OAAO,CAAC,MAAM,CAAC,SAAS,EAAE,gBAAgB,CAAC,CAAC;YAC3D,OAAO;QACT,CAAC;QAED,IAAI,CAAC,QAAQ,GAAG,MAAM,QAAQ,CAAC,OAAO,CACpC,IAAI,CAAC,MAAM,CAAC,QAAQ,EACpB,IAAI,CAAC,MAAM,CAAC,QAAQ,EACpB,IAAI,CAAC,MAAM,CAAC,QAAQ,EACpB,IAAI,CAAC,MAAM,CAAC,YAAY,EACxB,IAAI,CAAC,MAAM,CAAC,eAAe,EAC3B,IAAI,CAAC,MAAM,CAAC,KAAK,IAAI,WAAW,CAAC,OAAO,EACxC,IAAI,CAAC,GAAG,CAAC,IAAI,CAAC,WAAW,EAAE,EAC3B,IAAI,CAAC,GAAG,EACR,IAAI,CAAC,MAAM,CAAC,OAAO,CACpB,CAAC;QAEF,MAAM,WAAW,GAAG,IAAI,GAAG,EAAU,CAAC;QACtC,MAAM,cAAc,GAAG,IAAI,GAAG,CAAC,IAAI,CAAC,MAAM,CAAC,cAAc,IAAI,EAAE,CAAC,CAAC;QACjE,MAAM,OAAO,GAAG,IAAI,CAAC,QAAQ,CAAC,OAAO,CAAC,MAAM,CAAC,CAAC,MAAc,EAAE,EAAE,CAAC,CAAC,cAAc,CAAC,GAAG,CAAC,MAAM,CAAC,EAAE,CAAC,CAAC,CAAC;QACjG,IAAI,OAAO,CAAC,MAAM,KAAK,CAAC,EAAE,CAAC;YACzB,IAAI,CAAC,WAAW,CAAC,OAAO,CAAC,CAAC,SAAS,EAAE,EAAE,CAAC,IAAI,CAAC,eAAe,CAAC,SAAS,CAAC,CAAC,CAAC;YACzE,IAAI,CAAC,GAAG,CAAC,IAAI,CAAC,OAAO,CAAC,MAAM,CAAC,SAAS,CAAC,CAAC;YACxC,IAAI,CAAC,QAAQ,EAAE,CAAC;YAChB,OAAO;QACT,CAAC;QAED,OAAO,CAAC,OAAO,CAAC,CAAC,MAAM,EAAE,EAAE;YACzB,WAAW,CAAC,GAAG,CAAC,MAAM,CAAC,EAAE,CAAC,CAAC;YAC3B,IAAI,CAAC,mBAAmB,CAAC,MAAM,CAAC,CAAC;QACnC,CAAC,CAAC,CAAC;QAEH,IAAI,CAAC,WAAW,CAAC,OAAO,CAAC,CAAC,SAAS,EAAE,EAAE;YACrC,IAAI,CAAC,WAAW,CAAC,GAAG,CAAC,SAAS,CAAC,OAAO,CAAC,QAAQ,CAAC,EAAE,CAAC;gBACjD,IAAI,CAAC,eAAe,CAAC,SAAS,CAAC,CAAC;YAClC,CAAC;QACH,CAAC,CAAC,CAAC;QAEH,MAAM,SAAS,GAAG,IAAI,CAAC,KAAK,CAAC,IAAI,CAAC,MAAM,EAAE,GAAG,OAAO,CAAC,OAAO,CAAC,OAAO,CAAC,MAAM,CAAC,CAAC;QAC7E,IAAI,CAAC,GAAG,CAAC,IAAI,CAAC,OAAO,CAAC,OAAO,CAAC,QAAQ,EAAE,OAAO,CAAC,OAAO,CAAC,OAAO,CAAC,SAAS,CAAC,CAAC,CAAC;IAC9E,CAAC;IAEO,QAAQ;QACd,IAAI,CAAC,QAAQ,EAAE,QAAQ,EAAE,CAAC;IAC5B,CAAC;IAEO,mBAAmB,CAAC,MAAc;QAExC,MAAM,IAAI,GAAG,IAAI,CAAC,GAAG,CAAC,GAAG,CAAC,IAAI,CAAC,QAAQ,CAAC,MAAM,CAAC,EAAE,CAAC,CAAC;QACnD,MAAM,IAAI,GAAG,IAAI,CAAC,QAAQ,EAAE,aAAa,CAAC,GAAG,CAAC,MAAM,CAAC,UAAU,CAAC,CAAC;QAEjE,IAAI,SAAS,GAAG,IAAI,CAAC,WAAW,CAAC,GAAG,CAAC,IAAI,CAAC,CAAC;QAC3C,IAAI,CAAC,SAAS,EAAE,CAAC;YAEf,IAAI,IAAI,EAAE,CAAC;gBACT,IAAI,CAAC,GAAG,CAAC,IAAI,CAAC,YAAY,EAAE,OAAO,CAAC,OAAO,CAAC,SAAS,EAAE,IAAI,EAAE,MAAM,CAAC,EAAE,CAAC,CAAC;YAC1E,CAAC;iBAAM,CAAC;gBACN,IAAI,CAAC,GAAG,CAAC,IAAI,CAAC,SAAS,EAAE,OAAO,CAAC,OAAO,CAAC,SAAS,EAAE,MAAM,CAAC,EAAE,CAAC,CAAC;YACjE,CAAC;YAED,SAAS,GAAG,IAAI,IAAI,CAAC,GAAG,CAAC,iBAAiB,CAAC,OAAO,CAAC,OAAO,CAAC,KAAK,EAAE,IAAI,CAAC,CAAC;YACxE,SAAS,CAAC,OAAO,CAAC,QAAQ,GAAG,MAAM,CAAC,EAAE,CAAC;YACvC,SAAS,CAAC,OAAO,CAAC,UAAU,GAAG,IAAI,CAAC;YAEpC,IAAI,CAAC,GAAG,CAAC,2BAA2B,CAAC,WAAW,EAAE,cAAc,EAAE,CAAC,SAAS,CAAC,CAAC,CAAC;YAC/E,IAAI,CAAC,WAAW,CAAC,GAAG,CAAC,IAAI,EAAE,SAAS,CAAC,CAAC;QAExC,CAAC;aAAM,IAAI,CAAC,SAAS,CAAC,OAAO,CAAC,UAAU,EAAE,CAAC;YACzC,SAAS,CAAC,OAAO,CAAC,UAAU,GAAG,IAAI,CAAC;YACpC,IAAI,CAAC,GAAG,CAAC,yBAAyB,CAAC,CAAC,SAAS,CAAC,CAAC,CAAC;QAClD,CAAC;QAED,MAAM,KAAK,GAAG,IAAI,CAAC,MAAM,CAAC,KAAK,IAAI,WAAW,CAAC,OAAO,CAAC;QACvD,IAAI,cAAc,CAAC,IAAI,EAAE,SAAS,EAAE,MAAM,EAAG,IAAI,EAAE,KAAK,EAAE,IAAI,CAAC,MAAM,CAAC,oBAAoB,CAAC,CAAC;IAC9F,CAAC;IAED,kBAAkB,CAAC,SAA4B;QAC7C,IAAI,CAAC,GAAG,CAAC,IAAI,CAAC,OAAO,CAAC,OAAO,CAAC,eAAe,EAAE,SAAS,CAAC,OAAO,CAAC,UAAU,IAAI,SAAS,CAAC,OAAO,CAAC,QAAQ,CAAC,CAAC;QAC3G,IAAI,CAAC,WAAW,CAAC,GAAG,CAAC,SAAS,CAAC,IAAI,EAAE,SAAS,CAAC,CAAC;IAClD,CAAC;IAEO,eAAe,CAAC,SAA4B;QAClD,IAAI,CAAC,GAAG,CAAC,IAAI,CAAC,OAAO,CAAC,OAAO,CAAC,YAAY,EAAE,SAAS,CAAC,OAAO,CAAC,UAAU,IAAI,SAAS,CAAC,OAAO,CAAC,QAAQ,CAAC,CAAC;QACxG,IAAI,CAAC,GAAG,CAAC,6BAA6B,CAAC,WAAW,EAAE,cAAc,EAAE,CAAC,SAAS,CAAC,CAAC,CAAC;QACjF,IAAI,CAAC,WAAW,CAAC,MAAM,CAAC,SAAS,CAAC,IAAI,CAAC,CAAC;IAC1C,CAAC;CACF"}
@@ -1,2 +1,3 @@
1
1
  export declare const PLATFORM_ALIAS = "Flume";
2
2
  export declare const PLUGIN_NAME = "homebridge-flume";
3
+ export declare const PROJECT_HOMEPAGE = "https://github.com/mpatfield/homebridge-flume/";
@@ -1,3 +1,4 @@
1
1
  export const PLATFORM_ALIAS = 'Flume';
2
2
  export const PLUGIN_NAME = 'homebridge-flume';
3
+ export const PROJECT_HOMEPAGE = 'https://github.com/mpatfield/homebridge-flume/';
3
4
  //# sourceMappingURL=settings.js.map
@@ -1 +1 @@
1
- {"version":3,"file":"settings.js","sourceRoot":"","sources":["../../src/homebridge/settings.ts"],"names":[],"mappings":"AAAA,MAAM,CAAC,MAAM,cAAc,GAAG,OAAO,CAAC;AACtC,MAAM,CAAC,MAAM,WAAW,GAAG,kBAAkB,CAAC"}
1
+ {"version":3,"file":"settings.js","sourceRoot":"","sources":["../../src/homebridge/settings.ts"],"names":[],"mappings":"AAAA,MAAM,CAAC,MAAM,cAAc,GAAG,OAAO,CAAC;AACtC,MAAM,CAAC,MAAM,WAAW,GAAG,kBAAkB,CAAC;AAC9C,MAAM,CAAC,MAAM,gBAAgB,GAAG,gDAAgD,CAAC"}
@@ -1,3 +1,10 @@
1
+ <style>
2
+ .dark-mode {
3
+ background-color: #242424;
4
+ color: lightgrey;
5
+ }
6
+ </style>
7
+
1
8
  <p class="text-center">
2
9
  <img
3
10
  src="https://github.com/mpatfield/homebridge-flume/blob/latest/img/banner.png?raw=true"
@@ -14,4 +21,4 @@
14
21
  </br><button type="button" class="btn btn-primary" id="introContinue" i18n="continue", i18n_replace="arrow"></button>
15
22
  </div>
16
23
 
17
- <script src="ui.js"></script>
24
+ <script src="ui.js?v=3.1.3"></script>
@@ -1 +1 @@
1
- "use strict";(()=>{var d={arrow:"&rarr;",flume:'<a target="_blank" href="https://portal.flumetech.com/">Flume</a>',github:'<a target="_blank" href="https://github.com/mpatfield/homebridge-flume/">GitHub</a>'},m=e=>{document.querySelectorAll("[i18n]").forEach(t=>{let n=t.getAttribute("i18n"),o=e.config[n],s=t.getAttribute("i18n_replace");s&&(o=o.replace("%s",d[s])),t.innerHTML=o})},u=(e,t)=>{let n=!1,o=["span","label","legend","option","p"];Array.from(window.parent.document.querySelectorAll(o.join(","))).sort((i,r)=>o.indexOf(i.tagName.toLowerCase())-o.indexOf(r.tagName.toLowerCase())).forEach(i=>{let r=i.innerHTML;r=r.replaceAll(/\$\{config\.(title|description|enumNames)\.([^}]+)\}/g,(l,a,c)=>e.config[a]&&typeof e.config[a]=="object"&&c in e.config[a]?e.config[a][c]:l),i.innerHTML!==r&&(i.innerHTML=r,n=!0)}),n&&t?.disconnect()},g=async e=>{homebridge.showSpinner(),document.getElementById("pageIntro").style.display="none",document.getElementById("support").style.display="block";let t=new MutationObserver(()=>{u(e,t)});t.observe(window.parent.document.body,{childList:!0,subtree:!0}),await homebridge.showSchemaForm(),homebridge.hideSpinner()},h=e=>{document.getElementById("introContinue").addEventListener("click",async()=>{g(e)}),document.getElementById("pageIntro").style.display="block",homebridge.hideSpinner()};(async()=>{homebridge.showSpinner();try{let e=await homebridge.i18nCurrentLang(),t=await homebridge.request("i18n",e);m(t);let n=await homebridge.getPluginConfig();n.length?await g(t):(n.push({name:t.brand}),await homebridge.updatePluginConfig(n),h(t))}catch(e){homebridge.toast.error(e.message),homebridge.hideSpinner()}})();})();
1
+ "use strict";(()=>{var g="https://github.com/mpatfield/homebridge-flume/";var d={arrow:"&rarr;",flume:'<a target="_blank" href="https://portal.flumetech.com/">Flume</a>',github:`<a target="_blank" href="${g}">GitHub</a>`},u=e=>{document.querySelectorAll("[i18n]").forEach(t=>{let n=t.getAttribute("i18n"),o=e.config[n],s=t.getAttribute("i18n_replace");s&&(o=o.replace("%s",d[s])),t.innerHTML=o})},f=(e,t)=>{let n=!1,o=["span","label","legend","option","p"];Array.from(window.parent.document.querySelectorAll(o.join(","))).sort((i,r)=>o.indexOf(i.tagName.toLowerCase())-o.indexOf(r.tagName.toLowerCase())).forEach(i=>{let r=i.innerHTML;r=r.replaceAll(/\$\{config\.(title|description|enumNames)\.([^}]+)\}/g,(m,a,c)=>e.config[a]&&typeof e.config[a]=="object"&&c in e.config[a]?e.config[a][c]:m),i.innerHTML!==r&&(i.innerHTML=r,n=!0)}),n&&t?.disconnect()},l=async e=>{homebridge.showSpinner(),document.getElementById("pageIntro").style.display="none",document.getElementById("support").style.display="block";let t=new MutationObserver(()=>{f(e,t)});t.observe(window.parent.document.body,{childList:!0,subtree:!0}),await homebridge.showSchemaForm(),homebridge.hideSpinner()},h=e=>{document.getElementById("introContinue").addEventListener("click",async()=>{l(e)}),document.getElementById("pageIntro").style.display="block",homebridge.hideSpinner()};(async()=>{homebridge.showSpinner();try{let e=await homebridge.i18nCurrentLang(),t=await homebridge.request("i18n",e);u(t);let n=await homebridge.getPluginConfig();n.length?await l(t):(n.push({name:t.general.brand}),await homebridge.updatePluginConfig(n),h(t))}catch(e){homebridge.toast.error(e.message),homebridge.hideSpinner()}})();})();
@@ -1,4 +1,4 @@
1
- declare const zz: {
1
+ declare const de: {
2
2
  config: {
3
3
  continue: string;
4
4
  needed: string;
@@ -62,31 +62,5 @@ declare const zz: {
62
62
  leakDetected: string;
63
63
  leakNotDetected: string;
64
64
  };
65
- } & {
66
- config: {
67
- support: string;
68
- description: {
69
- disableDeviceLogging: string;
70
- };
71
- enumNames: {
72
- liters: string;
73
- };
74
- title: {
75
- clientSecret: string;
76
- };
77
- };
78
- customChar: {
79
- lastMonth: string;
80
- };
81
- general: {
82
- brand: string;
83
- redacted: string;
84
- };
85
- startup: {
86
- complete: string;
87
- };
88
- status: {
89
- leakNotDetected: string;
90
- };
91
65
  };
92
- export default zz;
66
+ export default de;
@@ -0,0 +1,71 @@
1
+ const de = {
2
+ config: {
3
+ continue: 'Continue %s',
4
+ needed: 'Sie benötigen Ihren Benutzernamen, Ihr Passwort und Ihre Client-ID/Geheimnis von %s',
5
+ support: 'Für Hilfe und Unterstützung besuchen Sie bitte %s',
6
+ thankYou: 'Danke für die Installation homebridge-flume',
7
+ description: {
8
+ clientSecret: 'Ihre Flume-Client-ID und Ihr Client-Secret finden Sie unter https://portal.flumetech.com',
9
+ disableDeviceLogging: 'Wenn wahr, werden Änderungen am Zubehörstatus nicht protokolliert',
10
+ excludeDevices: 'Suchen Sie in den Protokollen nach "Neues Gerät hinzufügen: [Geräte-ID]"',
11
+ refreshInterval: 'Anzahl der Minuten zwischen den Anfragen an Flume nach Leckinformationen',
12
+ units: 'Volumeneinheiten, die für benutzerdefinierte Merkmale verwendet werden',
13
+ verbose: 'Zusätzliche Debug-Protokollierung aktivieren',
14
+ },
15
+ enumNames: {
16
+ gallons: 'Gallonen',
17
+ liters: 'Liter',
18
+ cubicFeet: 'Kubikfuß',
19
+ cubicMeters: 'Kubikmeter',
20
+ },
21
+ title: {
22
+ clientId: 'Client ID',
23
+ clientSecret: 'Kundengeheimnis',
24
+ deviceId: 'Geräte-ID',
25
+ disableDeviceLogging: 'Geräteprotokollierung Deaktivieren',
26
+ excludeDevices: 'Geräte ausschließen',
27
+ password: 'Flume-Passwort',
28
+ refreshInterval: 'Intervall Aktualisierung',
29
+ units: 'Einheiten',
30
+ username: 'Flume-Benutzername',
31
+ verbose: 'Verbose',
32
+ },
33
+ },
34
+ customChar: {
35
+ lastMonth: 'Letzten Monat',
36
+ monthUsage: 'Diesen Monat',
37
+ todayUsage: 'Heute',
38
+ },
39
+ errors: {
40
+ badConfig: 'Eine oder mehrere erforderliche Variablen fehlen in der Konfiguration. Bitte überprüfen Sie die Dokumentation.',
41
+ httpRetry: 'Anfrage fehlgeschlagen. Erneuter Versuch in %s Minuten...',
42
+ noDataReceived: 'Keine Daten von http-Anfrage erhalten',
43
+ noDevices: 'Es wurden keine Geräte in Ihrem Konto gefunden',
44
+ noRefreshToken: 'Es wurde kein Aktualisierungstoken abgerufen. Führen Sie stattdessen volle Auth durch...',
45
+ },
46
+ general: {
47
+ brand: 'Flume',
48
+ redacted: '****Redigiert****',
49
+ },
50
+ startup: {
51
+ complete: '✓ Einrichtung abgeschlossen.',
52
+ newDevice: 'Neues Gerät hinzufügen:',
53
+ removeDevice: 'Gerät entfernen:',
54
+ restoringDevice: 'Gerät wiederherstellen:',
55
+ welcome: [
56
+ 'Bitte ★ dieses Plugin auf GitHub, wenn Sie es nützlich finden! https://github.com/mpatfield/homebridge-flume',
57
+ 'Möchten Sie dieses Plugin sponsern? https://github.com/sponsors/mpatfield',
58
+ 'Bitte bewerten Sie uns auf HOOBS! https://plugins.hoobs.org/plugin/homebridge-flume',
59
+ ],
60
+ },
61
+ status: {
62
+ batteryLow: 'Die Batterie ist fast leer',
63
+ batteryNormal: 'Batterie ist normal',
64
+ connectionFault: 'Keine Verbindung gefunden',
65
+ connectionNormal: 'Verbindung wiederhergestellt',
66
+ leakDetected: 'Leck erkannt!',
67
+ leakNotDetected: 'Keine Lecks festgestellt',
68
+ },
69
+ };
70
+ export default de;
71
+ //# sourceMappingURL=de.js.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"de.js","sourceRoot":"","sources":["../../src/i18n/de.ts"],"names":[],"mappings":"AAAA,MAAM,EAAE,GAAG;IAET,MAAM,EAAE;QAEN,QAAQ,EAAE,aAAa;QACvB,MAAM,EAAE,qFAAqF;QAC7F,OAAO,EAAE,mDAAmD;QAC5D,QAAQ,EAAE,6CAA6C;QAEvD,WAAW,EAAE;YACX,YAAY,EAAE,0FAA0F;YACxG,oBAAoB,EAAE,mEAAmE;YACzF,cAAc,EAAE,0EAA0E;YAC1F,eAAe,EAAE,0EAA0E;YAC3F,KAAK,EAAE,wEAAwE;YAC/E,OAAO,EAAE,8CAA8C;SACxD;QAED,SAAS,EAAE;YACT,OAAO,EAAE,UAAU;YACnB,MAAM,EAAE,OAAO;YACf,SAAS,EAAE,UAAU;YACrB,WAAW,EAAE,YAAY;SAC1B;QAED,KAAK,EAAE;YACL,QAAQ,EAAE,WAAW;YACrB,YAAY,EAAE,iBAAiB;YAC/B,QAAQ,EAAE,WAAW;YACrB,oBAAoB,EAAE,oCAAoC;YAC1D,cAAc,EAAE,qBAAqB;YACrC,QAAQ,EAAE,gBAAgB;YAC1B,eAAe,EAAE,0BAA0B;YAC3C,KAAK,EAAE,WAAW;YAClB,QAAQ,EAAE,oBAAoB;YAC9B,OAAO,EAAE,SAAS;SACnB;KACF;IAED,UAAU,EAAE;QACV,SAAS,EAAE,eAAe;QAC1B,UAAU,EAAE,cAAc;QAC1B,UAAU,EAAE,OAAO;KACpB;IAED,MAAM,EAAE;QACN,SAAS,EAAE,gHAAgH;QAC3H,SAAS,EAAE,2DAA2D;QACtE,cAAc,EAAE,uCAAuC;QACvD,SAAS,EAAE,gDAAgD;QAC3D,cAAc,EAAE,0FAA0F;KAC3G;IAED,OAAO,EAAE;QACP,KAAK,EAAE,OAAO;QACd,QAAQ,EAAE,mBAAmB;KAC9B;IAED,OAAO,EAAE;QACP,QAAQ,EAAE,8BAA8B;QACxC,SAAS,EAAE,yBAAyB;QACpC,YAAY,EAAE,kBAAkB;QAChC,eAAe,EAAE,yBAAyB;QAC1C,OAAO,EAAE;YACP,8GAA8G;YAC9G,2EAA2E;YAC3E,qFAAqF;SACtF;KACF;IAED,MAAM,EAAE;QACN,UAAU,EAAE,4BAA4B;QACxC,aAAa,EAAE,qBAAqB;QACpC,eAAe,EAAE,2BAA2B;QAC5C,gBAAgB,EAAE,8BAA8B;QAChD,YAAY,EAAE,eAAe;QAC7B,eAAe,EAAE,0BAA0B;KAC5C;CACF,CAAC;AAEF,eAAe,EAAE,CAAC"}
package/dist/i18n/en.js CHANGED
@@ -1,13 +1,13 @@
1
1
  const en = {
2
2
  config: {
3
- continue: 'Continue %s',
4
- needed: 'You will need your username, password, and Client ID/Secret from %s',
5
- support: 'For help and support please visit %s',
3
+ continue: 'Continue %s', // (arrow emoji) →
4
+ needed: 'You will need your username, password, and Client ID/Secret from %s', // url
5
+ support: 'For help and support please visit %s', // url
6
6
  thankYou: 'Thank you for installing homebridge-flume',
7
7
  description: {
8
8
  clientSecret: 'Your Flume Client ID and Client Secret can be found at https://portal.flumetech.com',
9
- disableDeviceLogging: 'If true then accessory status changes will not be logged',
10
- excludeDevices: 'List of devices to exclude from HomeKit -- look for "Adding new device: [Device ID]" in the logs',
9
+ disableDeviceLogging: 'If true, then accessory status changes will not be logged',
10
+ excludeDevices: 'Look for "Adding new device: [Device ID]" in the logs',
11
11
  refreshInterval: 'Number of minutes between requests to Flume for leak information',
12
12
  units: 'Volume units to use for custom characteristics',
13
13
  verbose: 'Enable additional debug logging',
@@ -37,8 +37,8 @@ const en = {
37
37
  todayUsage: 'Today',
38
38
  },
39
39
  errors: {
40
- badConfig: 'One or more required variables are missing from the config. Please check the documentation. https://github.com/mpatfield/homebridge-flume',
41
- httpRetry: 'Request failed. Retrying in %s minutes…',
40
+ badConfig: 'One or more required variables are missing from the config. Please check the documentation.',
41
+ httpRetry: 'Request failed. Retrying in %s minutes…', // number
42
42
  noDataReceived: 'No data received from http request',
43
43
  noDevices: 'No devices were found in your account',
44
44
  noRefreshToken: 'No refresh token has been retrieved. Performing full auth instead…',
@@ -1 +1 @@
1
- {"version":3,"file":"en.js","sourceRoot":"","sources":["../../src/i18n/en.ts"],"names":[],"mappings":"AAAA,MAAM,EAAE,GAAG;IAET,MAAM,EAAE;QAEN,QAAQ,EAAE,aAAa;QACvB,MAAM,EAAE,qEAAqE;QAC7E,OAAO,EAAE,sCAAsC;QAC/C,QAAQ,EAAE,2CAA2C;QAErD,WAAW,EAAE;YACX,YAAY,EAAE,qFAAqF;YACnG,oBAAoB,EAAE,0DAA0D;YAChF,cAAc,EAAE,kGAAkG;YAClH,eAAe,EAAE,kEAAkE;YACnF,KAAK,EAAE,gDAAgD;YACvD,OAAO,EAAE,iCAAiC;SAC3C;QAED,SAAS,EAAE;YACT,OAAO,EAAE,SAAS;YAClB,MAAM,EAAE,QAAQ;YAChB,SAAS,EAAE,YAAY;YACvB,WAAW,EAAE,cAAc;SAC5B;QAED,KAAK,EAAE;YACL,QAAQ,EAAE,WAAW;YACrB,YAAY,EAAE,eAAe;YAC7B,QAAQ,EAAE,WAAW;YACrB,oBAAoB,EAAE,wBAAwB;YAC9C,cAAc,EAAE,iBAAiB;YACjC,QAAQ,EAAE,gBAAgB;YAC1B,eAAe,EAAE,kBAAkB;YACnC,KAAK,EAAE,OAAO;YACd,QAAQ,EAAE,gBAAgB;YAC1B,OAAO,EAAE,SAAS;SACnB;KACF;IAED,UAAU,EAAE;QACV,SAAS,EAAE,YAAY;QACvB,UAAU,EAAE,YAAY;QACxB,UAAU,EAAE,OAAO;KACpB;IAED,MAAM,EAAE;QACN,SAAS,EAAE,2IAA2I;QACtJ,SAAS,EAAE,yCAAyC;QACpD,cAAc,EAAE,oCAAoC;QACpD,SAAS,EAAE,uCAAuC;QAClD,cAAc,EAAE,oEAAoE;KACrF;IAED,OAAO,EAAE;QACP,KAAK,EAAE,OAAO;QACd,QAAQ,EAAE,kBAAkB;KAC7B;IAED,OAAO,EAAE;QACP,QAAQ,EAAE,mBAAmB;QAC7B,SAAS,EAAE,oBAAoB;QAC/B,YAAY,EAAE,kBAAkB;QAChC,eAAe,EAAE,mBAAmB;QACpC,OAAO,EAAE;YACP,4GAA4G;YAC5G,8EAA8E;YAC9E,4EAA4E;YAC5E,qHAAqH;SACtH;KACF;IAED,MAAM,EAAE;QACN,UAAU,EAAE,gBAAgB;QAC5B,aAAa,EAAE,mBAAmB;QAClC,eAAe,EAAE,wBAAwB;QACzC,gBAAgB,EAAE,qBAAqB;QACvC,YAAY,EAAE,gBAAgB;QAC9B,eAAe,EAAE,mBAAmB;KACrC;CACF,CAAC;AAEF,eAAe,EAAE,CAAC"}
1
+ {"version":3,"file":"en.js","sourceRoot":"","sources":["../../src/i18n/en.ts"],"names":[],"mappings":"AAAA,MAAM,EAAE,GAAG;IAET,MAAM,EAAE;QAEN,QAAQ,EAAE,aAAa,EAAE,kBAAkB;QAC3C,MAAM,EAAE,qEAAqE,EAAE,MAAM;QACrF,OAAO,EAAE,sCAAsC,EAAE,MAAM;QACvD,QAAQ,EAAE,2CAA2C;QAErD,WAAW,EAAE;YACX,YAAY,EAAE,qFAAqF;YACnG,oBAAoB,EAAE,2DAA2D;YACjF,cAAc,EAAE,uDAAuD;YACvE,eAAe,EAAE,kEAAkE;YACnF,KAAK,EAAE,gDAAgD;YACvD,OAAO,EAAE,iCAAiC;SAC3C;QAED,SAAS,EAAE;YACT,OAAO,EAAE,SAAS;YAClB,MAAM,EAAE,QAAQ;YAChB,SAAS,EAAE,YAAY;YACvB,WAAW,EAAE,cAAc;SAC5B;QAED,KAAK,EAAE;YACL,QAAQ,EAAE,WAAW;YACrB,YAAY,EAAE,eAAe;YAC7B,QAAQ,EAAE,WAAW;YACrB,oBAAoB,EAAE,wBAAwB;YAC9C,cAAc,EAAE,iBAAiB;YACjC,QAAQ,EAAE,gBAAgB;YAC1B,eAAe,EAAE,kBAAkB;YACnC,KAAK,EAAE,OAAO;YACd,QAAQ,EAAE,gBAAgB;YAC1B,OAAO,EAAE,SAAS;SACnB;KACF;IAED,UAAU,EAAE;QACV,SAAS,EAAE,YAAY;QACvB,UAAU,EAAE,YAAY;QACxB,UAAU,EAAE,OAAO;KACpB;IAED,MAAM,EAAE;QACN,SAAS,EAAE,6FAA6F;QACxG,SAAS,EAAE,yCAAyC,EAAE,SAAS;QAC/D,cAAc,EAAE,oCAAoC;QACpD,SAAS,EAAE,uCAAuC;QAClD,cAAc,EAAE,oEAAoE;KACrF;IAED,OAAO,EAAE;QACP,KAAK,EAAE,OAAO;QACd,QAAQ,EAAE,kBAAkB;KAC7B;IAED,OAAO,EAAE;QACP,QAAQ,EAAE,mBAAmB;QAC7B,SAAS,EAAE,oBAAoB;QAC/B,YAAY,EAAE,kBAAkB;QAChC,eAAe,EAAE,mBAAmB;QACpC,OAAO,EAAE;YACP,4GAA4G;YAC5G,8EAA8E;YAC9E,4EAA4E;YAC5E,qHAAqH;SACtH;KACF;IAED,MAAM,EAAE;QACN,UAAU,EAAE,gBAAgB;QAC5B,aAAa,EAAE,mBAAmB;QAClC,eAAe,EAAE,wBAAwB;QACzC,gBAAgB,EAAE,qBAAqB;QACvC,YAAY,EAAE,gBAAgB;QAC9B,eAAe,EAAE,mBAAmB;KACrC;CACF,CAAC;AAEF,eAAe,EAAE,CAAC"}
@@ -1,7 +1,7 @@
1
1
  import en from './en.js';
2
2
  export declare enum Language {
3
- EN = "en",
4
- ZZ = "zz"
3
+ DE = "de",
4
+ EN = "en"
5
5
  }
6
6
  export type Translation = typeof en;
7
7
  export declare function getLanguage(): Language;
package/dist/i18n/i18n.js CHANGED
@@ -1,13 +1,13 @@
1
+ import de from './de.js';
1
2
  import en from './en.js';
2
- import zz from './zz.js';
3
3
  export var Language;
4
4
  (function (Language) {
5
+ Language["DE"] = "de";
5
6
  Language["EN"] = "en";
6
- Language["ZZ"] = "zz";
7
7
  })(Language || (Language = {}));
8
8
  const Translations = {
9
+ [Language.DE]: de,
9
10
  [Language.EN]: en,
10
- [Language.ZZ]: zz,
11
11
  };
12
12
  let currentLanguage = Language.EN;
13
13
  export function getLanguage() {
@@ -16,12 +16,12 @@ export function getLanguage() {
16
16
  export function setLanguage(i18nLang) {
17
17
  let language = Language.EN;
18
18
  switch (i18nLang) {
19
+ case Language.DE:
20
+ language = Language.DE;
21
+ break;
19
22
  case Language.EN:
20
23
  language = Language.EN;
21
24
  break;
22
- case Language.ZZ:
23
- language = Language.ZZ;
24
- break;
25
25
  }
26
26
  currentLanguage = Translations[language] ? language : Language.EN;
27
27
  }
@@ -30,6 +30,7 @@ export declare class FlumeAPI {
30
30
  private refreshAuthIfNecessary;
31
31
  private startSyncTimer;
32
32
  private getLocations;
33
+ private getUnreadNotifications;
33
34
  private getDevices;
34
35
  private getDeviceData;
35
36
  getLeakData(deviceId: string): Promise<Types.LeakData | null>;
package/dist/model/api.js CHANGED
@@ -4,12 +4,16 @@ import { Device } from './device.js';
4
4
  import * as Types from './types.js';
5
5
  import { strings } from '../i18n/i18n.js';
6
6
  import { MINUTE, SECOND } from '../tools/time.js';
7
- const URL_AUTH = 'https://api.flumetech.com/oauth/token';
8
- const URL_GET_LOCATIONS = 'https://api.flumewater.com/users/%s/locations';
9
- const URL_GET_DEVICES = 'https://api.flumetech.com/users/%s/devices?list_shared=true';
10
- const URL_GET_DEVICE = 'https://api.flumetech.com/users/%s/devices/%s';
11
- const URL_WATER_USAGE = 'https://api.flumetech.com/users/%s/devices/%s/query';
12
- const URL_LEAK_INFO = 'https://api.flumetech.com/users/%s/devices/%s/leaks/active';
7
+ const URL_BASE = 'https://api.flumewater.com';
8
+ const URL_USERS = `${URL_BASE}/users/%s`;
9
+ const URL_DEVICES = `${URL_USERS}/devices`;
10
+ const URL_DEVICE = `${URL_DEVICES}/%s`;
11
+ const URL_AUTH = `${URL_BASE}/oauth/token`;
12
+ const URL_GET_LOCATIONS = `${URL_USERS}/locations`;
13
+ const URL_GET_DEVICES = `${URL_DEVICES}?list_shared=true`;
14
+ const URL_GET_NOTIFICATIONS = `${URL_USERS}/notifications?device_id=%s`;
15
+ const URL_WATER_USAGE = `${URL_DEVICE}/query`;
16
+ const URL_LEAK_INFO = `${URL_DEVICE}/leaks/active`;
13
17
  const HTTP_TIMEOUT = 10 * SECOND;
14
18
  const HTTP_RETRY_CODES = [
15
19
  'ERR_NETWORK', // General network error in Axios
@@ -196,6 +200,20 @@ export class FlumeAPI {
196
200
  });
197
201
  return true;
198
202
  }
203
+ async getUnreadNotifications(deviceId) {
204
+ await this.refreshAuthIfNecessary();
205
+ const notificationDatum = await this.do(this.getUnreadNotifications.name, null, true, true, URL_GET_NOTIFICATIONS, this.auth?.userId, deviceId);
206
+ if (!notificationDatum) {
207
+ return null;
208
+ }
209
+ const response = new Set();
210
+ notificationDatum.forEach(notification => {
211
+ if (!notification.read) {
212
+ response.add(notification.type);
213
+ }
214
+ });
215
+ return response;
216
+ }
199
217
  async getDevices() {
200
218
  await this.refreshAuthIfNecessary();
201
219
  const deviceDatum = await this.do(this.getDevices.name, null, true, true, URL_GET_DEVICES, this.auth?.userId);
@@ -211,7 +229,7 @@ export class FlumeAPI {
211
229
  return true;
212
230
  }
213
231
  async getDeviceData(deviceId) {
214
- const deviceData = await this.do(this.getDeviceData.name, null, false, false, URL_GET_DEVICE, this.auth?.userId, deviceId);
232
+ const deviceData = await this.do(this.getDeviceData.name, null, false, false, URL_DEVICE, this.auth?.userId, deviceId);
215
233
  if (!deviceData) {
216
234
  return null;
217
235
  }
@@ -268,15 +286,13 @@ export class FlumeAPI {
268
286
  await this.refreshAuthIfNecessary();
269
287
  for (const device of this._devices.values()) {
270
288
  const id = device.id;
271
- let deviceData = null;
272
289
  let usageData = null;
273
290
  if (Date.now() - this.lastFullRefresh > FULL_REFRESH_INTERVAL) {
274
- deviceData = await this.getDeviceData(id);
275
291
  usageData = await this.getUsageData(id);
276
292
  this.lastFullRefresh = Date.now();
277
293
  }
278
- const leakData = await this.getLeakData(id);
279
- device.update(deviceData, leakData, usageData);
294
+ const unreadNotifications = await this.getUnreadNotifications(id);
295
+ device.update(unreadNotifications, usageData);
280
296
  }
281
297
  ;
282
298
  }
@@ -1 +1 @@
1
- {"version":3,"file":"api.js","sourceRoot":"","sources":["../../src/model/api.ts"],"names":[],"mappings":"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"}
1
+ {"version":3,"file":"api.js","sourceRoot":"","sources":["../../src/model/api.ts"],"names":[],"mappings":"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"}
@@ -1,4 +1,4 @@
1
- import { DeviceData, LeakData, UsageData } from './types.js';
1
+ import { DeviceData, NotificationType, UsageData } from './types.js';
2
2
  export declare class Device {
3
3
  readonly id: string;
4
4
  readonly locationId: string;
@@ -12,5 +12,5 @@ export declare class Device {
12
12
  private _onUpdateCallback;
13
13
  constructor(data: DeviceData);
14
14
  setOnUpdateCallback(callback: (serialNumber: string) => void): void;
15
- update(deviceData: DeviceData | null, leakData: LeakData | null, usageData: UsageData | null): void;
15
+ update(unreadNotifications: Set<NotificationType> | null, usageData: UsageData | null): void;
16
16
  }
@@ -1,3 +1,4 @@
1
+ import { NotificationType } from './types.js';
1
2
  const BATTERY_LEVEL_LOW = 'low';
2
3
  export class Device {
3
4
  id;
@@ -20,13 +21,11 @@ export class Device {
20
21
  setOnUpdateCallback(callback) {
21
22
  this._onUpdateCallback = callback;
22
23
  }
23
- update(deviceData, leakData, usageData) {
24
- if (deviceData) {
25
- this.isBatteryLow = deviceData.battery_level === BATTERY_LEVEL_LOW;
26
- this.isDisconnected = !deviceData.connected;
27
- }
28
- if (leakData) {
29
- this.isLeakDetected = leakData.active;
24
+ update(unreadNotifications, usageData) {
25
+ if (unreadNotifications) {
26
+ this.isBatteryLow = unreadNotifications.has(NotificationType.BATTERY);
27
+ this.isDisconnected = unreadNotifications.has(NotificationType.HEARTBEAT);
28
+ this.isLeakDetected = unreadNotifications.has(NotificationType.USAGE_ALERT) || unreadNotifications.has(NotificationType.BUDGET);
30
29
  }
31
30
  if (usageData) {
32
31
  this.usageToday = usageData.today[0]?.value || 0;
@@ -1 +1 @@
1
- {"version":3,"file":"device.js","sourceRoot":"","sources":["../../src/model/device.ts"],"names":[],"mappings":"AAEA,MAAM,iBAAiB,GAAG,KAAK,CAAC;AAEhC,MAAM,OAAO,MAAM;IAER,EAAE,CAAS;IACX,UAAU,CAAS;IACnB,WAAW,CAAS;IAE7B,YAAY,CAAU;IACtB,cAAc,CAAU;IAExB,cAAc,GAAY,KAAK,CAAC;IAEhC,UAAU,GAAW,CAAC,CAAC;IACvB,UAAU,GAAW,CAAC,CAAC;IACvB,cAAc,GAAW,CAAC,CAAC;IAEnB,iBAAiB,GAAkC,IAAI,CAAC;IAEhE,YAAY,IAAgB;QAC1B,IAAI,CAAC,EAAE,GAAG,IAAI,CAAC,EAAE,CAAC;QAClB,IAAI,CAAC,UAAU,GAAG,IAAI,CAAC,WAAW,CAAC;QACnC,IAAI,CAAC,WAAW,GAAG,IAAI,CAAC,OAAO,CAAC;QAChC,IAAI,CAAC,cAAc,GAAG,CAAC,IAAI,CAAC,SAAS,CAAC;QACtC,IAAI,CAAC,YAAY,GAAG,IAAI,CAAC,aAAa,KAAK,iBAAiB,CAAC;IAC/D,CAAC;IAED,mBAAmB,CAAC,QAAwC;QAC1D,IAAI,CAAC,iBAAiB,GAAG,QAAQ,CAAC;IACpC,CAAC;IAED,MAAM,CAAC,UAA6B,EAAE,QAAyB,EAAE,SAA2B;QAE1F,IAAI,UAAU,EAAE,CAAC;YACf,IAAI,CAAC,YAAY,GAAG,UAAU,CAAC,aAAa,KAAK,iBAAiB,CAAC;YACnE,IAAI,CAAC,cAAc,GAAG,CAAC,UAAU,CAAC,SAAS,CAAC;QAC9C,CAAC;QAED,IAAI,QAAQ,EAAE,CAAC;YACb,IAAI,CAAC,cAAc,GAAG,QAAQ,CAAC,MAAM,CAAC;QACxC,CAAC;QAED,IAAI,SAAS,EAAE,CAAC;YACd,IAAI,CAAC,UAAU,GAAG,SAAS,CAAC,KAAK,CAAC,CAAC,CAAC,EAAE,KAAK,IAAI,CAAC,CAAC;YACjD,IAAI,CAAC,UAAU,GAAG,SAAS,CAAC,KAAK,CAAC,CAAC,CAAC,EAAE,KAAK,IAAI,CAAC,CAAC;YACjD,IAAI,CAAC,cAAc,GAAG,SAAS,CAAC,SAAS,CAAC,CAAC,CAAC,EAAE,KAAK,IAAI,CAAC,CAAC;QAC3D,CAAC;QAED,IAAI,IAAI,CAAC,iBAAiB,EAAE,CAAC;YAC3B,IAAI,CAAC,iBAAiB,CAAC,IAAI,CAAC,EAAE,CAAC,CAAC;QAClC,CAAC;IACH,CAAC;CACF"}
1
+ {"version":3,"file":"device.js","sourceRoot":"","sources":["../../src/model/device.ts"],"names":[],"mappings":"AAAA,OAAO,EAAc,gBAAgB,EAAa,MAAM,YAAY,CAAC;AAErE,MAAM,iBAAiB,GAAG,KAAK,CAAC;AAEhC,MAAM,OAAO,MAAM;IAER,EAAE,CAAS;IACX,UAAU,CAAS;IACnB,WAAW,CAAS;IAE7B,YAAY,CAAU;IACtB,cAAc,CAAU;IAExB,cAAc,GAAY,KAAK,CAAC;IAEhC,UAAU,GAAW,CAAC,CAAC;IACvB,UAAU,GAAW,CAAC,CAAC;IACvB,cAAc,GAAW,CAAC,CAAC;IAEnB,iBAAiB,GAAkC,IAAI,CAAC;IAEhE,YAAY,IAAgB;QAC1B,IAAI,CAAC,EAAE,GAAG,IAAI,CAAC,EAAE,CAAC;QAClB,IAAI,CAAC,UAAU,GAAG,IAAI,CAAC,WAAW,CAAC;QACnC,IAAI,CAAC,WAAW,GAAG,IAAI,CAAC,OAAO,CAAC;QAChC,IAAI,CAAC,cAAc,GAAG,CAAC,IAAI,CAAC,SAAS,CAAC;QACtC,IAAI,CAAC,YAAY,GAAG,IAAI,CAAC,aAAa,KAAK,iBAAiB,CAAC;IAC/D,CAAC;IAED,mBAAmB,CAAC,QAAwC;QAC1D,IAAI,CAAC,iBAAiB,GAAG,QAAQ,CAAC;IACpC,CAAC;IAED,MAAM,CAAC,mBAAiD,EAAE,SAA2B;QAEnF,IAAI,mBAAmB,EAAE,CAAC;YACxB,IAAI,CAAC,YAAY,GAAG,mBAAmB,CAAC,GAAG,CAAC,gBAAgB,CAAC,OAAO,CAAC,CAAC;YACtE,IAAI,CAAC,cAAc,GAAG,mBAAmB,CAAC,GAAG,CAAC,gBAAgB,CAAC,SAAS,CAAC,CAAC;YAC1E,IAAI,CAAC,cAAc,GAAG,mBAAmB,CAAC,GAAG,CAAC,gBAAgB,CAAC,WAAW,CAAC,IAAI,mBAAmB,CAAC,GAAG,CAAC,gBAAgB,CAAC,MAAM,CAAC,CAAC;QAClI,CAAC;QAED,IAAI,SAAS,EAAE,CAAC;YACd,IAAI,CAAC,UAAU,GAAG,SAAS,CAAC,KAAK,CAAC,CAAC,CAAC,EAAE,KAAK,IAAI,CAAC,CAAC;YACjD,IAAI,CAAC,UAAU,GAAG,SAAS,CAAC,KAAK,CAAC,CAAC,CAAC,EAAE,KAAK,IAAI,CAAC,CAAC;YACjD,IAAI,CAAC,cAAc,GAAG,SAAS,CAAC,SAAS,CAAC,CAAC,CAAC,EAAE,KAAK,IAAI,CAAC,CAAC;QAC3D,CAAC;QAED,IAAI,IAAI,CAAC,iBAAiB,EAAE,CAAC;YAC3B,IAAI,CAAC,iBAAiB,CAAC,IAAI,CAAC,EAAE,CAAC,CAAC;QAClC,CAAC;IACH,CAAC;CACF"}
@@ -6,27 +6,29 @@ export declare enum VolumeUnits {
6
6
  CUBIC_FEET = "CUBIC_FEET",
7
7
  CUBIC_METERS = "CUBIC_METERS"
8
8
  }
9
+ export declare enum NotificationType {
10
+ USAGE_ALERT = 1,
11
+ BUDGET = 2,
12
+ GENERAL = 4,
13
+ HEARTBEAT = 8,
14
+ BATTERY = 16
15
+ }
9
16
  export interface FlumeResponse<T> extends AxiosResponse {
10
17
  data: T[];
11
18
  }
12
- export type TokenResponse = {
13
- data: TokenData[];
14
- };
15
19
  export type TokenData = {
16
20
  token_type: string;
17
21
  access_token: string;
18
22
  expires_in: number;
19
23
  refresh_token: string;
20
24
  };
21
- export type LocationsResponse = {
22
- data: LocationData[];
23
- };
24
25
  export type LocationData = {
25
26
  id: string;
26
27
  name: string;
27
28
  };
28
- export type DeviceResponse = {
29
- data: DeviceData[];
29
+ export type NotificationData = {
30
+ type: NotificationType;
31
+ read: boolean;
30
32
  };
31
33
  export type DeviceData = {
32
34
  id: string;
@@ -36,15 +38,9 @@ export type DeviceData = {
36
38
  battery_level: string;
37
39
  connected: boolean;
38
40
  };
39
- export type LeakResponse = {
40
- data: LeakData[];
41
- };
42
41
  export type LeakData = {
43
42
  active: boolean;
44
43
  };
45
- export type UsageResponse = {
46
- data: UsageData[];
47
- };
48
44
  export type UsageData = {
49
45
  today: {
50
46
  value: number;
@@ -6,4 +6,12 @@ export var VolumeUnits;
6
6
  VolumeUnits["CUBIC_FEET"] = "CUBIC_FEET";
7
7
  VolumeUnits["CUBIC_METERS"] = "CUBIC_METERS";
8
8
  })(VolumeUnits || (VolumeUnits = {}));
9
+ export var NotificationType;
10
+ (function (NotificationType) {
11
+ NotificationType[NotificationType["USAGE_ALERT"] = 1] = "USAGE_ALERT";
12
+ NotificationType[NotificationType["BUDGET"] = 2] = "BUDGET";
13
+ NotificationType[NotificationType["GENERAL"] = 4] = "GENERAL";
14
+ NotificationType[NotificationType["HEARTBEAT"] = 8] = "HEARTBEAT";
15
+ NotificationType[NotificationType["BATTERY"] = 16] = "BATTERY";
16
+ })(NotificationType || (NotificationType = {}));
9
17
  //# sourceMappingURL=types.js.map
@@ -1 +1 @@
1
- {"version":3,"file":"types.js","sourceRoot":"","sources":["../../src/model/types.ts"],"names":[],"mappings":"AAEA,MAAM,CAAC,MAAM,cAAc,GAAG,CAAC,cAAc,EAAE,SAAS,EAAE,WAAW,EAAE,WAAW,EAAE,IAAI,EAAE,eAAe,EAAE,SAAS,CAAC,CAAC;AAEtH,MAAM,CAAN,IAAY,WAKX;AALD,WAAY,WAAW;IACrB,kCAAmB,CAAA;IACnB,gCAAiB,CAAA;IACjB,wCAAyB,CAAA;IACzB,4CAA6B,CAAA;AAC/B,CAAC,EALW,WAAW,KAAX,WAAW,QAKtB"}
1
+ {"version":3,"file":"types.js","sourceRoot":"","sources":["../../src/model/types.ts"],"names":[],"mappings":"AAEA,MAAM,CAAC,MAAM,cAAc,GAAG,CAAC,cAAc,EAAE,SAAS,EAAE,WAAW,EAAE,WAAW,EAAE,IAAI,EAAE,eAAe,EAAE,SAAS,CAAC,CAAC;AAEtH,MAAM,CAAN,IAAY,WAKX;AALD,WAAY,WAAW;IACrB,kCAAmB,CAAA;IACnB,gCAAiB,CAAA;IACjB,wCAAyB,CAAA;IACzB,4CAA6B,CAAA;AAC/B,CAAC,EALW,WAAW,KAAX,WAAW,QAKtB;AAED,MAAM,CAAN,IAAY,gBAMX;AAND,WAAY,gBAAgB;IAC1B,qEAAe,CAAA;IACf,2DAAU,CAAA;IACV,6DAAW,CAAA;IACX,iEAAa,CAAA;IACb,8DAAY,CAAA;AACd,CAAC,EANW,gBAAgB,KAAhB,gBAAgB,QAM3B"}
package/package.json CHANGED
@@ -2,7 +2,7 @@
2
2
  "name": "homebridge-flume",
3
3
  "alias": "Flume",
4
4
  "displayName": "Flume",
5
- "version": "3.1.2",
5
+ "version": "3.1.3",
6
6
  "author": {
7
7
  "name": "mpatfield"
8
8
  },
@@ -31,7 +31,7 @@
31
31
  ],
32
32
  "scripts": {
33
33
  "build": "rimraf ./dist && tsc && npm run build:html && npm run build:ui",
34
- "build:html": "mkdir ./dist/homebridge-ui/public && cp -r ./src/homebridge-ui/public/* ./dist/homebridge-ui/public/",
34
+ "build:html": "node --loader ts-node/esm ./scripts/build-html.ts",
35
35
  "build:ui": "esbuild src/homebridge-ui/ui.ts --bundle --outfile=dist/homebridge-ui/public/ui.js --minify",
36
36
  "lint": "eslint . --max-warnings=0",
37
37
  "prepublishOnly": "npm run lint && npm run build"
package/.gitattributes DELETED
@@ -1,2 +0,0 @@
1
- # Auto detect text files and perform LF normalization
2
- * text=auto
package/dist/i18n/zz.js DELETED
@@ -1,32 +0,0 @@
1
- import merge from 'lodash.merge';
2
- import en from './en.js';
3
- const overrides = {
4
- config: {
5
- support: 'Zzzz zzz zzzz zz zzzzz zzzzzz zzzzz zzzz %s',
6
- description: {
7
- disableDeviceLogging: 'Zz zzzz zzzz zzz zzzzzzzz zzzzz zzzzzz zzzz zzz zzzzzz',
8
- },
9
- enumNames: {
10
- liters: 'Zzzzzz',
11
- },
12
- title: {
13
- clientSecret: 'Zzzzzz Zzzzz',
14
- },
15
- },
16
- customChar: {
17
- lastMonth: 'Zzzz Zzzzz',
18
- },
19
- general: {
20
- brand: 'Zzzzz',
21
- redacted: '****zzzzzzzz****',
22
- },
23
- startup: {
24
- complete: '✓ Zzzzz zzzzzzzz.',
25
- },
26
- status: {
27
- leakNotDetected: 'Zz zzzzz zzzzzzzz',
28
- },
29
- };
30
- const zz = merge({}, en, overrides);
31
- export default zz;
32
- //# sourceMappingURL=zz.js.map
@@ -1 +0,0 @@
1
- {"version":3,"file":"zz.js","sourceRoot":"","sources":["../../src/i18n/zz.ts"],"names":[],"mappings":"AAAA,OAAO,KAAK,MAAM,cAAc,CAAC;AAEjC,OAAO,EAAE,MAAM,SAAS,CAAC;AAEzB,MAAM,SAAS,GAAG;IAEhB,MAAM,EAAE;QACN,OAAO,EAAE,6CAA6C;QAEtD,WAAW,EAAE;YACX,oBAAoB,EAAE,wDAAwD;SAC/E;QAED,SAAS,EAAE;YACT,MAAM,EAAE,QAAQ;SACjB;QAED,KAAK,EAAE;YACL,YAAY,EAAE,cAAc;SAC7B;KACF;IAED,UAAU,EAAE;QACV,SAAS,EAAE,YAAY;KACxB;IAED,OAAO,EAAE;QACP,KAAK,EAAE,OAAO;QACd,QAAQ,EAAE,kBAAkB;KAC7B;IAED,OAAO,EAAE;QACP,QAAQ,EAAE,mBAAmB;KAC9B;IAED,MAAM,EAAE;QACN,eAAe,EAAE,mBAAmB;KACrC;CACF,CAAC;AAEF,MAAM,EAAE,GAAG,KAAK,CAAC,EAAE,EAAE,EAAE,EAAE,SAAS,CAAC,CAAC;AAEpC,eAAe,EAAE,CAAC"}
package/eslint.config.ts DELETED
@@ -1,35 +0,0 @@
1
- import eslint from '@eslint/js';
2
- import tseslint from 'typescript-eslint';
3
-
4
- export default tseslint.config(
5
- {
6
- ignores: ['dist/**'],
7
- },
8
- {
9
- rules: {
10
- 'quotes': ['error', 'single'],
11
- 'indent': ['error', 2, { 'SwitchCase': 0 }],
12
- 'linebreak-style': ['error', 'unix'],
13
- 'semi': ['error', 'always'],
14
- 'comma-dangle': ['error', 'always-multiline'],
15
- 'dot-notation': 'error',
16
- 'eqeqeq': ['error', 'smart'],
17
- 'curly': ['error', 'all'],
18
- 'brace-style': ['error'],
19
- 'prefer-arrow-callback': 'warn',
20
- 'max-len': ['warn', 160],
21
- 'object-curly-spacing': ['error', 'always'],
22
- 'no-use-before-define': 'off',
23
- '@typescript-eslint/no-use-before-define': ['error', { 'classes': false, 'enums': false }],
24
- '@typescript-eslint/no-unused-vars': ['error', { 'caughtErrors': 'none' }],
25
- },
26
- },
27
- {
28
- languageOptions: {
29
- ecmaVersion: 2022,
30
- sourceType: 'module',
31
- },
32
- },
33
- eslint.configs.recommended,
34
- ...tseslint.configs.recommended,
35
- );
@@ -1,18 +0,0 @@
1
- {
2
- "success": true,
3
- "code": 602,
4
- "message": "Request OK",
5
- "http_code": 200,
6
- "http_message": "OK",
7
- "detailed": null,
8
- "data": [
9
- {
10
- "token_type": "bearer",
11
- "access_token": "*** redacted ***",
12
- "expires_in": 604800,
13
- "refresh_token": "*** redacted ***"
14
- }
15
- ],
16
- "count": 1,
17
- "pagination": null
18
- }
@@ -1,24 +0,0 @@
1
- {
2
- "success":true,
3
- "code":602,
4
- "message":"Request OK",
5
- "http_code":200,
6
- "http_message":"OK",
7
- "detailed":null,
8
- "data":[
9
- {
10
- "id":"12345",
11
- "type":2,
12
- "location_id":12345,
13
- "user_id":12345,
14
- "bridge_id":"12345",
15
- "oriented":true,
16
- "last_seen":"2025-05-22T02:33:47.000Z",
17
- "connected":true,
18
- "battery_level":"high",
19
- "product":"flume2.5"
20
- }
21
- ],
22
- "count":1,
23
- "pagination":null
24
- }
@@ -1,34 +0,0 @@
1
- {
2
- "success":true,
3
- "code":602,
4
- "message":"Request OK",
5
- "http_code":200,
6
- "http_message":"OK",
7
- "detailed":null,
8
- "data":[
9
- {
10
- "id":"12345",
11
- "type":2,
12
- "location_id":12345,
13
- "user_id":12345,
14
- "bridge_id":"12345",
15
- "oriented":true,
16
- "last_seen":"2025-05-22T02:07:38.000Z",
17
- "connected":true,
18
- "battery_level":"high",
19
- "product":"flume2.5"
20
- },
21
- {
22
- "id":"12345",
23
- "type":1,
24
- "location_id":12345,
25
- "user_id":12345,
26
- "bridge_id":null,
27
- "last_seen":"2025-05-22T01:55:24.000Z",
28
- "connected":true,
29
- "product":"flume2.5"
30
- }
31
- ],
32
- "count":1,
33
- "pagination":null
34
- }
@@ -1,15 +0,0 @@
1
- {
2
- "success":true,
3
- "code":602,
4
- "message":"Request OK",
5
- "http_code":200,
6
- "http_message":"OK",
7
- "detailed":null,
8
- "data":[
9
- {
10
- "active":false
11
- }
12
- ],
13
- "count":1,
14
- "pagination":null
15
- }
@@ -1,29 +0,0 @@
1
- {
2
- "success":true,
3
- "code":602,
4
- "message":"Request OK",
5
- "http_code":200,
6
- "http_message":"OK",
7
- "detailed":null,
8
- "data":[
9
- {
10
- "id":12345,
11
- "user_id":12345,
12
- "name":"Home",
13
- "primary_location":true,
14
- "address":"123 Fake Street",
15
- "address_2":"",
16
- "city":"Nowhere",
17
- "state":"ZZ",
18
- "postal_code":"12345",
19
- "country":"United States",
20
- "tz":"America/Los_Angeles",
21
- "installation":"DONE",
22
- "insurer_id":99,
23
- "building_type":"SINGLE_FAMILY_HOME",
24
- "away_mode":false
25
- }
26
- ],
27
- "count":1,
28
- "pagination":null
29
- }
@@ -1,29 +0,0 @@
1
- {
2
- "success":true,
3
- "code":602,
4
- "message":"Request OK",
5
- "http_code":200,
6
- "http_message":"OK",
7
- "detailed":null,
8
- "data":[
9
- {
10
- "today":[
11
- {
12
- "value":78.2837489
13
- }
14
- ],
15
- "month":[
16
- {
17
- "value":1526.52965208
18
- }
19
- ],
20
- "lastMonth":[
21
- {
22
- "value":4415.10830484
23
- }
24
- ]
25
- }
26
- ],
27
- "count":0,
28
- "pagination":null
29
- }
@@ -1,9 +0,0 @@
1
- {
2
- "user_id": 12345,
3
- "type": "USER",
4
- "scope": [ "read:personal", "update:personal", "query:personal" ],
5
- "iat": 0,
6
- "exp": 0,
7
- "iss": "flume_oauth",
8
- "sub": ""
9
- }
package/img/banner.png DELETED
Binary file
package/img/icon.png DELETED
Binary file
Binary file
Binary file
Binary file
@@ -1,17 +0,0 @@
1
- <p class="text-center">
2
- <img
3
- src="https://github.com/mpatfield/homebridge-flume/blob/latest/img/banner.png?raw=true"
4
- alt="homebridge-flume"
5
- style="width: 60%;"
6
- />
7
- </p>
8
- <div id="support" class="text-center" style="display: none;">
9
- <p i18n="support" i18n_replace="github"></p>
10
- </div>
11
- <div id="pageIntro" class="text-center" style="display: none;">
12
- <p class="lead" i18n="thankYou"></p>
13
- <p i18n="needed" i18n_replace="flume"></p>
14
- </br><button type="button" class="btn btn-primary" id="introContinue" i18n="continue", i18n_replace="arrow"></button>
15
- </div>
16
-
17
- <script src="ui.js"></script>