iobroker.alias-workbench 0.9.0 → 0.9.8
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.
- package/README.md +44 -5
- package/admin/geraetewissen/tasmota-befehle.json +3 -1
- package/admin/i18n/de.json +17 -6
- package/admin/i18n/en.json +17 -6
- package/admin/js/aufzaehlungen.js +11 -1
- package/admin/js/baum.js +90 -32
- package/admin/js/detail.js +18 -3
- package/admin/js/entwurf.js +176 -42
- package/admin/js/enums.js +50 -7
- package/admin/js/ergebnis.js +47 -10
- package/admin/js/katalog.js +12 -3
- package/admin/js/mqtt.js +76 -13
- package/admin/js/musterwahl.js +10 -0
- package/admin/js/objekte.js +29 -3
- package/admin/js/pruefungen.js +10 -2
- package/admin/js/quellentausch.js +31 -2
- package/admin/js/schreiben.js +209 -24
- package/admin/js/sprache.js +51 -7
- package/admin/js/start.js +32 -2
- package/admin/js/vorlagen.js +92 -4
- package/admin/js/vorlagenblatt.js +193 -23
- package/admin/js/werte.js +113 -6
- package/admin/js/zuordnung.js +30 -9
- package/admin/js/zustandsliste.js +14 -10
- package/admin/tab.html +17 -3
- package/admin/vorlagen/hm-dimmer.json +1 -1
- package/admin/vorlagen/hm-schaltaktor-lampe.json +2 -2
- package/admin/vorlagen/hm-schaltaktor-mehrfach.json +2 -2
- package/admin/vorlagen/hm-schaltaktor-steckdose.json +2 -2
- package/io-package.json +27 -1
- package/package.json +1 -1
|
@@ -50,14 +50,14 @@
|
|
|
50
50
|
},
|
|
51
51
|
{
|
|
52
52
|
"name": "ON_TIME",
|
|
53
|
-
"rolle": "level.timer",
|
|
53
|
+
"rolle": "level.timer.off",
|
|
54
54
|
"typ": "number",
|
|
55
55
|
"einheit": "s",
|
|
56
56
|
"lesen": "1.ON_TIME",
|
|
57
57
|
"schreiben": "1.ON_TIME",
|
|
58
58
|
"optional": true,
|
|
59
59
|
"vorgabeAus": true,
|
|
60
|
-
"hinweis": "Einschaltdauer in Sekunden.
|
|
60
|
+
"hinweis": "Einschaltdauer in Sekunden. Der Platz ON_TIME im Muster nimmt ihn auf."
|
|
61
61
|
},
|
|
62
62
|
{
|
|
63
63
|
"name": "INHIBIT",
|
|
@@ -54,14 +54,14 @@
|
|
|
54
54
|
},
|
|
55
55
|
{
|
|
56
56
|
"name": "ON_TIME",
|
|
57
|
-
"rolle": "level.timer",
|
|
57
|
+
"rolle": "level.timer.off",
|
|
58
58
|
"typ": "number",
|
|
59
59
|
"einheit": "s",
|
|
60
60
|
"lesen": "%N%.ON_TIME",
|
|
61
61
|
"schreiben": "%N%.ON_TIME",
|
|
62
62
|
"optional": true,
|
|
63
63
|
"vorgabeAus": true,
|
|
64
|
-
"hinweis": "Einschaltdauer in Sekunden.
|
|
64
|
+
"hinweis": "Einschaltdauer in Sekunden. Der Platz ON_TIME im Muster nimmt ihn auf."
|
|
65
65
|
},
|
|
66
66
|
{
|
|
67
67
|
"name": "INHIBIT",
|
|
@@ -50,14 +50,14 @@
|
|
|
50
50
|
},
|
|
51
51
|
{
|
|
52
52
|
"name": "ON_TIME",
|
|
53
|
-
"rolle": "level.timer",
|
|
53
|
+
"rolle": "level.timer.off",
|
|
54
54
|
"typ": "number",
|
|
55
55
|
"einheit": "s",
|
|
56
56
|
"lesen": "1.ON_TIME",
|
|
57
57
|
"schreiben": "1.ON_TIME",
|
|
58
58
|
"optional": true,
|
|
59
59
|
"vorgabeAus": true,
|
|
60
|
-
"hinweis": "Einschaltdauer in Sekunden.
|
|
60
|
+
"hinweis": "Einschaltdauer in Sekunden. Der Platz ON_TIME im Muster nimmt ihn auf."
|
|
61
61
|
},
|
|
62
62
|
{
|
|
63
63
|
"name": "INHIBIT",
|
package/io-package.json
CHANGED
|
@@ -1,8 +1,34 @@
|
|
|
1
1
|
{
|
|
2
2
|
"common": {
|
|
3
3
|
"name": "alias-workbench",
|
|
4
|
-
"version": "0.9.
|
|
4
|
+
"version": "0.9.8",
|
|
5
5
|
"news": {
|
|
6
|
+
"0.9.8": {
|
|
7
|
+
"en": "* The changelog only lists versions that actually exist on npm. The entries 0.9.1 to 0.9.6 were local intermediate steps and were never published; their content is now summarised under 0.9.7. Found by the repochecker (E2004, E1032)\n* The README no longer explains installation via “install from custom URL” — in the official repository that goes through the adapter list (E6013)\n* `dependabot.yml` gets a seven-day cooldown for npm packages: what appears today is proposed a week later. If a compromised release is pulled within that time, it never arrives here (E8915). And `@types/node` stays on its major version — the types must match the Node release the adapter runs on (E8917)",
|
|
8
|
+
"de": "* Der Changelog nennt nur noch Fassungen, die es auf npm wirklich gibt. Die Einträge 0.9.1 bis 0.9.6 waren lokale Zwischenstände und wurden nie veröffentlicht; ihr Inhalt steht jetzt zusammengefasst bei 0.9.7. Gefunden vom Repochecker (E2004, E1032)\n* Die README erklärt die Installation nicht mehr über „aus eigener URL“ — im offiziellen Repository geht das über die Adapterliste (E6013)\n* `dependabot.yml` bekommt eine Abkühlzeit von sieben Tagen für npm-Pakete: Was heute erscheint, wird erst in einer Woche vorgeschlagen. Wird eine kompromittierte Fassung in dieser Zeit zurückgezogen, kommt sie hier nie an (E8915). Und `@types/node` bleibt bei seiner Hauptversion — die Typen müssen zu der Node-Fassung passen, unter der der Adapter läuft (E8917)",
|
|
9
|
+
"ru": "Приведение в порядок перед подачей в репозиторий ioBroker: в списке изменений остались только версии, действительно существующие на npm (0.9.1–0.9.6 были локальными промежуточными шагами, их содержимое собрано в 0.9.7), README больше не описывает установку по своей ссылке, а dependabot получил семидневную выдержку для npm-пакетов и запрет на смену мажорной версии @types/node.",
|
|
10
|
+
"pt": "Arrumação antes da submissão ao repositório ioBroker: o changelog só lista versões que existem mesmo no npm (0.9.1–0.9.6 eram passos intermédios locais, o seu conteúdo está reunido em 0.9.7), o README já não explica a instalação por URL própria, e o dependabot recebeu sete dias de arrefecimento para pacotes npm e a proibição de saltar a versão maior de @types/node.",
|
|
11
|
+
"nl": "Opruiming voor de aanmelding bij het ioBroker-repository: de changelog noemt alleen nog versies die echt op npm staan (0.9.1–0.9.6 waren lokale tussenstappen, hun inhoud staat samengevat bij 0.9.7), de README legt installatie via een eigen URL niet meer uit, en dependabot kreeg zeven dagen afkoeltijd voor npm-pakketten plus een verbod op majorsprongen van @types/node.",
|
|
12
|
+
"fr": "Rangement avant la soumission au dépôt ioBroker : le changelog ne cite plus que des versions qui existent vraiment sur npm (0.9.1–0.9.6 étaient des étapes locales, leur contenu est résumé sous 0.9.7), le README n'explique plus l'installation par URL personnalisée, et dependabot reçoit sept jours de refroidissement pour les paquets npm ainsi que l'interdiction de changer la version majeure de @types/node.",
|
|
13
|
+
"it": "Riordino prima della candidatura al repository ioBroker: il changelog elenca solo versioni che esistono davvero su npm (0.9.1-0.9.6 erano passi intermedi locali, il loro contenuto e riassunto sotto 0.9.7), il README non spiega piu l'installazione da URL propria, e dependabot riceve sette giorni di raffreddamento per i pacchetti npm e il divieto di saltare la versione maggiore di @types/node.",
|
|
14
|
+
"es": "Ordenacion antes de la solicitud al repositorio de ioBroker: el changelog solo menciona versiones que existen realmente en npm (0.9.1-0.9.6 eran pasos intermedios locales, su contenido esta resumido en 0.9.7), el README ya no explica la instalacion por URL propia, y dependabot recibe siete dias de enfriamiento para paquetes npm y la prohibicion de saltar la version mayor de @types/node.",
|
|
15
|
+
"pl": "Porzadki przed zgloszeniem do repozytorium ioBroker: changelog wymienia juz tylko wersje, ktore naprawde istnieja w npm (0.9.1-0.9.6 byly lokalnymi krokami posrednimi, ich tresc zebrano w 0.9.7), README nie opisuje juz instalacji z wlasnego adresu, a dependabot dostal siedmiodniowy okres wystudzenia dla pakietow npm oraz zakaz zmiany wersji glownej @types/node.",
|
|
16
|
+
"uk": "Впорядкування перед поданням до репозиторію ioBroker: у переліку змін лишилися тільки версії, які справді є на npm (0.9.1–0.9.6 були локальними проміжними кроками, їхній зміст зібрано в 0.9.7), README більше не описує встановлення за власним посиланням, а dependabot отримав семиденну витримку для npm-пакетів і заборону змінювати мажорну версію @types/node.",
|
|
17
|
+
"zh-cn": "提交到 ioBroker 仓库前的整理:更新日志只保留 npm 上真实存在的版本(0.9.1 至 0.9.6 只是本地中间状态,内容已归入 0.9.7),README 不再介绍通过自定义地址安装,dependabot 为 npm 包设置了七天冷却期,并禁止 @types/node 的主版本跳跃。"
|
|
18
|
+
},
|
|
19
|
+
"0.9.7": {
|
|
20
|
+
"en": "Seven packages from a code review — 45 fixes between 0.9.0 and this release. The intermediate steps 0.9.1 to 0.9.6 stayed local and were never published; they are summarised here.\n\n**Data loss and failure paths**\n* An enumeration error now stops a move. Previously the old alias was deleted anyway — and afterwards it was gone while the new one sat in no enumeration at all\n* A partial failure while deleting no longer turns the retry button into a prop: only what really went is dropped\n* Orphaned points are deleted on the second attempt too\n* A load error on the enumerations leaves the previous state standing instead of emptying it — and while they are unknown, nothing is written. Before, one hiccup could drop an alias out of every room and function\n* A load error on your own templates is reported instead of swallowed; otherwise the next save would have replaced an existing template with version 1\n\n**Connection and display**\n* The tab works again after a dropped connection. The admin's WebSocket fires `connect` once per page lifetime and `reconnect` afterwards — nobody listened, and neither object nor state changes arrived\n* Template mode no longer rebuilds itself every second, and where the selection goes, its subscriptions go too\n* “Differs from the alias” now also shows in alias mode — where it says the most\n* Switching sources quickly no longer fetches the wrong value; the source jump list never appears twice\n* Object names follow the admin language; the function match looks at every language and no longer creates a duplicate\n\n**Templates**\n* A broken name hint no longer takes down the whole source view — including the nested form `(a+)+` where the expression engine stalls\n* The formula of a fallback source survives updating, an unknown device type no longer throws\n* Importing checks more than id and states; a hand-typed id no longer replaces someone else's template\n* The `%N%` placeholder only hits the output number now, not every trailing digit\n* The blind gets its STOP: a button press has no state to read, and that case was unknown to template application — **not a single** blind alias ever had one\n* ON_TIME finds its slot (four templates carried the wrong role)\n\n**MQTT and Tasmota**\n* An empty `custom` entry no longer takes anything down, `enabled: false` counts as switched off\n* No more false “cannot publish” for ioBroker.mqtt and sonoff — there, publishing capability is simply unknown, not denied\n* “Answer received” only for a real answer; `Vcc` and `Command` are not commands\n\n**Speed, measured on a production system with 24,786 objects**\n* The search box no longer blocks: **236 ms per keystroke → 0**, the whole tree **263 → 67 ms**\n* A redraw no longer costs half a second — binary search instead of linear scans: drawing a source **15.8 → 1.6 ms**, an alias with 50 points **51.9 → 14.2 ms**\n* A read formula can no longer freeze the tab for good\n* What is subscribed is what is read — before, a single alias could subscribe to half an adapter",
|
|
21
|
+
"de": "Sieben Pakete aus einem Code-Review — 45 behobene Fehler zwischen 0.9.0 und dieser Fassung. Die Zwischenstände 0.9.1 bis 0.9.6 waren lokal und wurden nie veröffentlicht; hier stehen sie zusammengefasst.\n\n**Datenverlust und Fehlerpfade**\n* Ein Fehler an den Aufzählungen hält das Verlegen jetzt auf. Vorher lief das Löschen des alten Alias trotzdem — danach war er weg und der neue stand in keiner Aufzählung mehr\n* Ein Teilfehler beim Löschen macht den Wiederholen-Knopf nicht mehr zur Attrappe: Es wird nur ausgetragen, was wirklich weg ist\n* Verwaiste Punkte werden auch beim zweiten Anlauf gelöscht\n* Ein Ladefehler bei den Aufzählungen lässt den alten Stand stehen, statt ihn zu leeren — und solange sie unbekannt sind, wird nichts geschrieben. Vorher konnte ein Aussetzer beim Laden dazu führen, dass ein Alias aus allen Räumen und Funktionen fiel\n* Ein Ladefehler bei den eigenen Vorlagen wird gemeldet statt verschwiegen; vorher hätte das nächste Speichern eine vorhandene Vorlage mit Version 1 ersetzt\n\n**Verbindung und Anzeige**\n* Nach einem Verbindungsabbruch arbeitet der Reiter wieder. Der WebSocket des Admin feuert `connect` nur einmal pro Seitenleben, danach `reconnect` — das hörte niemand, und es kamen weder Objekt- noch Wertänderungen an\n* Der Vorlagenmodus baut sich nicht mehr im Sekundentakt neu auf, und wo die Auswahl fällt, fallen auch ihre Abos\n* „Weicht vom Alias ab“ erscheint jetzt auch im Aliasmodus — dort, wo die Marke am meisten sagt\n* Ein schneller Quellenwechsel holt keinen fremden Wert mehr, die Quellen-Sprungliste steht nie doppelt\n* Objektnamen folgen der Adminsprache; der Funktionsabgleich sieht alle Sprachfassungen an und legt keinen Doppelgänger mehr an\n\n**Vorlagen**\n* Ein kaputter Namenshinweis legt nicht mehr die ganze Quellenansicht lahm — samt der verschachtelten Form `(a+)+`, an der die Ausdrucks-Maschine hängenbleibt\n* Die Formel einer Ersatzquelle überlebt das Aktualisieren, ein unbekannter Gerätetyp wirft nicht mehr\n* Das Einlesen prüft mehr als Kennung und Zustände; eine von Hand eingetippte Kennung ersetzt keine fremde Vorlage mehr\n* Der Platzhalter `%N%` trifft nur noch die Ausgangsnummer, nicht jede Endziffer\n* Der Rollladen bekommt seinen STOP: Ein Tastendruck hat keinen Zustand zum Lesen, und diesen Fall kannte das Anwenden nicht — **kein einziger** Rollladen-Alias hatte je einen\n* ON_TIME findet seinen Platz (vier Vorlagen trugen die falsche Rolle)\n\n**MQTT und Tasmota**\n* Ein leerer `custom`-Eintrag legt nichts mehr lahm, `enabled: false` gilt als abgeschaltet\n* Kein falsches „kann nicht senden“ mehr bei ioBroker.mqtt und sonoff — dort ist die Sendefähigkeit schlicht unbekannt, nicht verneint\n* „Antwort erhalten“ nur noch bei einer echten Antwort; `Vcc` und `Command` sind keine Befehle\n\n**Tempo, am Produktivsystem mit 24.786 Objekten gemessen**\n* Das Suchfeld blockiert nicht mehr: **236 ms je Anschlag → 0**, der ganze Baum **263 → 67 ms**\n* Ein Neuzeichnen kostet keine halbe Sekunde mehr — Binärsuche statt linearer Scans: Zeichnen einer Quelle **15,8 → 1,6 ms**, eines Alias mit 50 Punkten **51,9 → 14,2 ms**\n* Eine Leseformel kann den Reiter nicht mehr dauerhaft einfrieren\n* Abonniert wird, was gelesen wird — vorher konnte ein einziger Alias den halben Adapter abonnieren",
|
|
22
|
+
"ru": "Скорость на большой системе (измерено на боевой системе с 24 786 объектами): поле поиска больше не блокирует интерфейс (236 мс на нажатие → 0, дерево 263 → 67 мс), перерисовка ускорена за счёт бинарного поиска по отсортированному индексу и обратной карты источник → алиас (алиас 51,9 → 14,2 мс), формулы чтения кешируются и не могут больше намертво подвесить вкладку, счётчик объектов снова обновляется, лишний прогон детектора и пятикратно продублированное правило записи убраны.",
|
|
23
|
+
"pt": "Desempenho num sistema grande (medido no sistema de produção com 24 786 objetos): o campo de pesquisa deixou de bloquear (236 ms por tecla → 0, árvore 263 → 67 ms), o redesenho acelera com pesquisa binária no índice ordenado e um mapa inverso fonte → alias (alias 51,9 → 14,2 ms), as fórmulas de leitura são memorizadas e já não podem congelar o separador, o contador de objetos volta a atualizar, e caíram uma passagem inútil do detetor e a regra de escrita repetida cinco vezes.",
|
|
24
|
+
"nl": "Snelheid op een groot systeem (gemeten op het productiesysteem met 24.786 objecten): het zoekveld blokkeert niet meer (236 ms per toetsaanslag → 0, boom 263 → 67 ms), opnieuw tekenen gaat sneller door binair zoeken in de gesorteerde index en een omgekeerde kaart bron → alias (alias 51,9 → 14,2 ms), leesformules worden onthouden en kunnen het tabblad niet meer blijvend bevriezen, de objectteller loopt weer mee, en een overbodige detectorronde en de vijfvoudig uitgeschreven schrijfregel zijn verdwenen.",
|
|
25
|
+
"fr": "Rapidité sur un grand système (mesuré sur le système de production, 24 786 objets) : le champ de recherche ne bloque plus (236 ms par frappe → 0, arbre 263 → 67 ms), le redessin accélère grâce à une recherche binaire dans l'index trié et à une carte inverse source → alias (alias 51,9 → 14,2 ms), les formules de lecture sont mémorisées et ne peuvent plus figer l'onglet durablement, le compteur d'objets se met à jour de nouveau, et un passage inutile du détecteur ainsi que la règle d'écriture écrite cinq fois ont disparu.",
|
|
26
|
+
"it": "Velocita su un sistema grande (misurato sul sistema di produzione con 24.786 oggetti): il campo di ricerca non blocca piu (236 ms per battuta → 0, albero 263 → 67 ms), il ridisegno accelera grazie alla ricerca binaria sull'indice ordinato e a una mappa inversa sorgente → alias (alias 51,9 → 14,2 ms), le formule di lettura vengono memorizzate e non possono piu congelare la scheda, il contatore degli oggetti torna ad aggiornarsi, e sono spariti un giro inutile del rilevatore e la regola di scrittura ripetuta cinque volte.",
|
|
27
|
+
"es": "Rapidez en un sistema grande (medido en el sistema de produccion con 24.786 objetos): el campo de busqueda ya no bloquea (236 ms por pulsacion → 0, arbol 263 → 67 ms), el redibujado acelera con busqueda binaria sobre el indice ordenado y un mapa inverso fuente → alias (alias 51,9 → 14,2 ms), las formulas de lectura se memorizan y ya no pueden congelar la pestana, el contador de objetos vuelve a actualizarse, y desaparecen una pasada inutil del detector y la regla de escritura repetida cinco veces.",
|
|
28
|
+
"pl": "Szybkosc na duzym systemie (zmierzone na systemie produkcyjnym z 24 786 obiektami): pole wyszukiwania juz nie blokuje (236 ms na nacisniecie → 0, drzewo 263 → 67 ms), przerysowanie przyspiesza dzieki wyszukiwaniu binarnemu po posortowanym indeksie i mapie odwrotnej zrodlo → alias (alias 51,9 → 14,2 ms), formuly odczytu sa zapamietywane i nie moga juz trwale zamrozic karty, licznik obiektow znow sie aktualizuje, a zniknely zbedny przebieg detektora i piciokrotnie powielona regula zapisu.",
|
|
29
|
+
"uk": "Швидкодія на великій системі (виміряно на робочій системі з 24 786 об'єктами): поле пошуку більше не блокує (236 мс на натискання → 0, дерево 263 → 67 мс), перемальовування пришвидшено завдяки двійковому пошуку впорядкованим індексом і зворотній карті джерело → аліас (аліас 51,9 → 14,2 мс), формули читання кешуються й більше не можуть назавжди підвісити вкладку, лічильник об'єктів знову оновлюється, а зайвий прохід детектора та п'ятиразово продубльоване правило запису прибрано.",
|
|
30
|
+
"zh-cn": "大型系统上的速度(在拥有 24.786 个对象的生产系统上实测):搜索框不再卡顿(每次按键 236 毫秒 → 0,整棵树 263 → 67 毫秒),重绘通过对有序索引的二分查找和“来源 → 别名”反向表加速(别名 51,9 → 14,2 毫秒),读取公式的结果会被缓存且不再能长久冻结标签页,对象计数重新同步,多余的一次检测器运行以及重复五遍的写入规则均已移除。"
|
|
31
|
+
},
|
|
6
32
|
"0.9.0": {
|
|
7
33
|
"en": "Several sources behind one alias are now visible: a chip names their count, every row its origin, and the way back leads from each source to the alias. The fields “reads from” and “writes to” show the full id, the pattern names now come from the admin, and values keep running in the alias view. A complete run on the production system brought four findings: the role list was half empty because the detector delivers its slot expressions as text with slashes — 210 roles instead of 232, and BRIGHTNESS without a role in six patterns; and a point the template lists under a different name now keeps its role and its caption at the source.",
|
|
8
34
|
"de": "Mehrere Quellen an einem Alias werden sichtbar: ein Chip nennt ihre Zahl, jede Zeile ihre Herkunft, und der Rückweg führt von jeder Quelle zum Alias. Die Felder „liest aus“ und „schreibt auf“ zeigen die volle Kennung, die Musternamen kommen jetzt aus dem Admin, und am Alias laufen die Werte mit. Der komplette Durchlauf am Produktivsystem brachte vier Befunde: Die Rollenliste war halb leer, weil der Detektor seine Platzausdrücke als Text mit Schrägstrichen liefert — 210 statt 232 Rollen, und BRIGHTNESS ohne Rolle in sechs Mustern; und ein Punkt, den die Vorlage unter anderem Namen führt, behält an der Quelle jetzt seine Rolle und seine Beschriftung.",
|
package/package.json
CHANGED
|
@@ -1,6 +1,6 @@
|
|
|
1
1
|
{
|
|
2
2
|
"name": "iobroker.alias-workbench",
|
|
3
|
-
"version": "0.9.
|
|
3
|
+
"version": "0.9.8",
|
|
4
4
|
"description": "Creates aliases the comfortable way — devices that vis, Alexa and the device adapter understand. Templates do the work: shipped ones for HomeMatic and Tasmota, your own for everything else. Live values while you build, dry run before anything is written.",
|
|
5
5
|
"author": {
|
|
6
6
|
"name": "Ricardo Hipp",
|