@c8y/ng1-modules 1016.259.0 → 1016.260.0
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/NOTICES +1 -1
- package/core/locales/de.po +129 -45
- package/core/locales/en.po +19 -1
- package/dataBroker/subscriptions/subscriptions.html +1 -1
- package/deviceDatabase4/detail/device-type-detail.component.js +1 -1
- package/deviceDatabase4/device-database.service.js +1 -1
- package/devicemanagement-logViewer/controllers/logViewer.js +1 -1
- package/devicemanagement-logViewer/views/index.html +3 -5
- package/modbusConfiguration4/fieldbus-config.component.js +1 -1
- package/package.json +2 -2
package/NOTICES
CHANGED
|
@@ -2097,7 +2097,7 @@ SOFTWARE
|
|
|
2097
2097
|
|
|
2098
2098
|
-----
|
|
2099
2099
|
|
|
2100
|
-
The following software may be included in this product: @types/acorn, @types/babel__core, @types/babel__generator, @types/babel__template, @types/babel__traverse, @types/body-parser, @types/bonjour, @types/connect, @types/connect-history-api-fallback, @types/cron, @types/eslint, @types/eslint-scope, @types/estree, @types/express, @types/express-serve-static-core, @types/file-saver, @types/glob, @types/graceful-fs, @types/html-minifier-terser, @types/http-proxy, @types/istanbul-lib-coverage, @types/istanbul-reports, @types/jest, @types/jsdom, @types/json-schema, @types/mime, @types/minimatch, @types/node, @types/parse5, @types/prettier, @types/qs, @types/range-parser, @types/resolve, @types/semver, @types/serve-index, @types/serve-static, @types/sinonjs__fake-timers, @types/sizzle, @types/sockjs, @types/stack-utils, @types/tough-cookie, @types/webpack, @types/webpack-dev-server, @types/ws, @types/yargs, @types/yargs-parser, @types/yauzl. A copy of the source code may be downloaded from https://github.com/DefinitelyTyped/DefinitelyTyped.git (@types/acorn), https://github.com/DefinitelyTyped/DefinitelyTyped.git (@types/babel__core), https://github.com/DefinitelyTyped/DefinitelyTyped.git (@types/babel__generator), https://github.com/DefinitelyTyped/DefinitelyTyped.git (@types/babel__template), https://github.com/DefinitelyTyped/DefinitelyTyped.git (@types/babel__traverse), https://github.com/DefinitelyTyped/DefinitelyTyped.git (@types/body-parser), https://github.com/DefinitelyTyped/DefinitelyTyped.git (@types/bonjour), https://github.com/DefinitelyTyped/DefinitelyTyped.git (@types/connect), https://github.com/DefinitelyTyped/DefinitelyTyped.git (@types/connect-history-api-fallback), https://github.com/DefinitelyTyped/DefinitelyTyped.git (@types/cron), https://github.com/DefinitelyTyped/DefinitelyTyped.git (@types/eslint), https://github.com/DefinitelyTyped/DefinitelyTyped.git (@types/eslint-scope), https://github.com/DefinitelyTyped/DefinitelyTyped.git (@types/estree), https://github.com/DefinitelyTyped/DefinitelyTyped.git (@types/express), https://github.com/DefinitelyTyped/DefinitelyTyped.git (@types/express-serve-static-core), https://github.com/DefinitelyTyped/DefinitelyTyped.git (@types/file-saver), https://github.com/DefinitelyTyped/DefinitelyTyped.git (@types/glob), https://github.com/DefinitelyTyped/DefinitelyTyped.git (@types/graceful-fs), https://github.com/DefinitelyTyped/DefinitelyTyped.git (@types/html-minifier-terser), https://github.com/DefinitelyTyped/DefinitelyTyped.git (@types/http-proxy), https://github.com/DefinitelyTyped/DefinitelyTyped.git (@types/istanbul-lib-coverage), https://github.com/DefinitelyTyped/DefinitelyTyped.git (@types/istanbul-reports), https://github.com/DefinitelyTyped/DefinitelyTyped.git (@types/jest), https://github.com/DefinitelyTyped/DefinitelyTyped.git (@types/jsdom), https://github.com/DefinitelyTyped/DefinitelyTyped.git (@types/json-schema), https://github.com/DefinitelyTyped/DefinitelyTyped.git (@types/mime), https://github.com/DefinitelyTyped/DefinitelyTyped.git (@types/minimatch), https://github.com/DefinitelyTyped/DefinitelyTyped.git (@types/node), https://github.com/DefinitelyTyped/DefinitelyTyped.git (@types/parse5), https://github.com/DefinitelyTyped/DefinitelyTyped.git (@types/prettier), https://github.com/DefinitelyTyped/DefinitelyTyped.git (@types/qs), https://github.com/DefinitelyTyped/DefinitelyTyped.git (@types/range-parser), https://github.com/DefinitelyTyped/DefinitelyTyped.git (@types/resolve), https://github.com/DefinitelyTyped/DefinitelyTyped.git (@types/semver), https://github.com/DefinitelyTyped/DefinitelyTyped.git (@types/serve-index), https://github.com/DefinitelyTyped/DefinitelyTyped.git (@types/serve-static), https://github.com/DefinitelyTyped/DefinitelyTyped.git (@types/sinonjs__fake-timers), https://github.com/DefinitelyTyped/DefinitelyTyped.git (@types/sizzle), https://github.com/DefinitelyTyped/DefinitelyTyped.git (@types/sockjs), https://github.com/DefinitelyTyped/DefinitelyTyped.git (@types/stack-utils), https://github.com/DefinitelyTyped/DefinitelyTyped.git (@types/tough-cookie), https://github.com/DefinitelyTyped/DefinitelyTyped.git (@types/webpack), https://github.com/DefinitelyTyped/DefinitelyTyped.git (@types/ws), https://github.com/DefinitelyTyped/DefinitelyTyped.git (@types/yargs), https://github.com/DefinitelyTyped/DefinitelyTyped.git (@types/yargs-parser), https://github.com/DefinitelyTyped/DefinitelyTyped.git (@types/yauzl). This software contains the following license and notice below:
|
|
2100
|
+
The following software may be included in this product: @types/acorn, @types/babel__core, @types/babel__generator, @types/babel__template, @types/babel__traverse, @types/body-parser, @types/bonjour, @types/connect, @types/connect-history-api-fallback, @types/cron, @types/eslint, @types/eslint-scope, @types/estree, @types/express, @types/express-serve-static-core, @types/file-saver, @types/glob, @types/graceful-fs, @types/html-minifier-terser, @types/http-proxy, @types/istanbul-lib-coverage, @types/istanbul-reports, @types/jest, @types/jsdom, @types/json-schema, @types/marked, @types/mime, @types/minimatch, @types/node, @types/parse5, @types/prettier, @types/qs, @types/range-parser, @types/resolve, @types/semver, @types/serve-index, @types/serve-static, @types/sinonjs__fake-timers, @types/sizzle, @types/sockjs, @types/stack-utils, @types/tough-cookie, @types/webpack, @types/webpack-dev-server, @types/ws, @types/yargs, @types/yargs-parser, @types/yauzl. A copy of the source code may be downloaded from https://github.com/DefinitelyTyped/DefinitelyTyped.git (@types/acorn), https://github.com/DefinitelyTyped/DefinitelyTyped.git (@types/babel__core), https://github.com/DefinitelyTyped/DefinitelyTyped.git (@types/babel__generator), https://github.com/DefinitelyTyped/DefinitelyTyped.git (@types/babel__template), https://github.com/DefinitelyTyped/DefinitelyTyped.git (@types/babel__traverse), https://github.com/DefinitelyTyped/DefinitelyTyped.git (@types/body-parser), https://github.com/DefinitelyTyped/DefinitelyTyped.git (@types/bonjour), https://github.com/DefinitelyTyped/DefinitelyTyped.git (@types/connect), https://github.com/DefinitelyTyped/DefinitelyTyped.git (@types/connect-history-api-fallback), https://github.com/DefinitelyTyped/DefinitelyTyped.git (@types/cron), https://github.com/DefinitelyTyped/DefinitelyTyped.git (@types/eslint), https://github.com/DefinitelyTyped/DefinitelyTyped.git (@types/eslint-scope), https://github.com/DefinitelyTyped/DefinitelyTyped.git (@types/estree), https://github.com/DefinitelyTyped/DefinitelyTyped.git (@types/express), https://github.com/DefinitelyTyped/DefinitelyTyped.git (@types/express-serve-static-core), https://github.com/DefinitelyTyped/DefinitelyTyped.git (@types/file-saver), https://github.com/DefinitelyTyped/DefinitelyTyped.git (@types/glob), https://github.com/DefinitelyTyped/DefinitelyTyped.git (@types/graceful-fs), https://github.com/DefinitelyTyped/DefinitelyTyped.git (@types/html-minifier-terser), https://github.com/DefinitelyTyped/DefinitelyTyped.git (@types/http-proxy), https://github.com/DefinitelyTyped/DefinitelyTyped.git (@types/istanbul-lib-coverage), https://github.com/DefinitelyTyped/DefinitelyTyped.git (@types/istanbul-reports), https://github.com/DefinitelyTyped/DefinitelyTyped.git (@types/jest), https://github.com/DefinitelyTyped/DefinitelyTyped.git (@types/jsdom), https://github.com/DefinitelyTyped/DefinitelyTyped.git (@types/json-schema), https://github.com/DefinitelyTyped/DefinitelyTyped.git (@types/marked), https://github.com/DefinitelyTyped/DefinitelyTyped.git (@types/mime), https://github.com/DefinitelyTyped/DefinitelyTyped.git (@types/minimatch), https://github.com/DefinitelyTyped/DefinitelyTyped.git (@types/node), https://github.com/DefinitelyTyped/DefinitelyTyped.git (@types/parse5), https://github.com/DefinitelyTyped/DefinitelyTyped.git (@types/prettier), https://github.com/DefinitelyTyped/DefinitelyTyped.git (@types/qs), https://github.com/DefinitelyTyped/DefinitelyTyped.git (@types/range-parser), https://github.com/DefinitelyTyped/DefinitelyTyped.git (@types/resolve), https://github.com/DefinitelyTyped/DefinitelyTyped.git (@types/semver), https://github.com/DefinitelyTyped/DefinitelyTyped.git (@types/serve-index), https://github.com/DefinitelyTyped/DefinitelyTyped.git (@types/serve-static), https://github.com/DefinitelyTyped/DefinitelyTyped.git (@types/sinonjs__fake-timers), https://github.com/DefinitelyTyped/DefinitelyTyped.git (@types/sizzle), https://github.com/DefinitelyTyped/DefinitelyTyped.git (@types/sockjs), https://github.com/DefinitelyTyped/DefinitelyTyped.git (@types/stack-utils), https://github.com/DefinitelyTyped/DefinitelyTyped.git (@types/tough-cookie), https://github.com/DefinitelyTyped/DefinitelyTyped.git (@types/webpack), https://github.com/DefinitelyTyped/DefinitelyTyped.git (@types/ws), https://github.com/DefinitelyTyped/DefinitelyTyped.git (@types/yargs), https://github.com/DefinitelyTyped/DefinitelyTyped.git (@types/yargs-parser), https://github.com/DefinitelyTyped/DefinitelyTyped.git (@types/yauzl). This software contains the following license and notice below:
|
|
2101
2101
|
|
|
2102
2102
|
MIT License
|
|
2103
2103
|
|
package/core/locales/de.po
CHANGED
|
@@ -2478,6 +2478,9 @@ msgstr "Claim-Namen"
|
|
|
2478
2478
|
msgid "Class 0 ping"
|
|
2479
2479
|
msgstr "Class 0 Ping"
|
|
2480
2480
|
|
|
2481
|
+
msgid "Clean up orphaned plugins"
|
|
2482
|
+
msgstr "Verwaiste Plugins bereinigen"
|
|
2483
|
+
|
|
2481
2484
|
msgid "Clear All Logfiles"
|
|
2482
2485
|
msgstr "Alle Logdateien löschen"
|
|
2483
2486
|
|
|
@@ -3217,6 +3220,9 @@ msgstr "Stammdatenrollen eines anderen Benutzers kopieren"
|
|
|
3217
3220
|
msgid "Copy inventory roles from user"
|
|
3218
3221
|
msgstr "Stammdatenrollen kopieren vom Benutzer"
|
|
3219
3222
|
|
|
3223
|
+
msgid "Copy tenant ID to the clipboard"
|
|
3224
|
+
msgstr "Mandanten-ID in die Zwischenablage kopieren"
|
|
3225
|
+
|
|
3220
3226
|
msgid "Copy to clipboard"
|
|
3221
3227
|
msgstr "In die Zwischenablage kopieren"
|
|
3222
3228
|
|
|
@@ -3253,6 +3259,9 @@ msgstr "Es konnten keine Kindgeräte der Gruppe zugewiesen werden"
|
|
|
3253
3259
|
msgid "Could not assign devices to the group"
|
|
3254
3260
|
msgstr "Es konnten keine Geräte der Gruppe zugewiesen werden"
|
|
3255
3261
|
|
|
3262
|
+
msgid "Could not change the version of plugin."
|
|
3263
|
+
msgstr "Die Plugin-Version konnte nicht geändert werden."
|
|
3264
|
+
|
|
3256
3265
|
msgid "Could not confirm the ownership of {{ fingerprint }} certificate: invalid proof of possession verification code provided, sign unsigned verification code with private key."
|
|
3257
3266
|
msgstr "Der Besitz des {{ fingerprint }}-Zertifikats wurde nicht bestätigt: Ungültiger Verifizierungscode für den Nachweis des Besitzes bereitgestellt, unsignierten Verifizierungscode mit privatem Schlüssel signieren."
|
|
3258
3267
|
|
|
@@ -4411,6 +4420,9 @@ msgstr "Auswahl aufheben"
|
|
|
4411
4420
|
msgid "Desired"
|
|
4412
4421
|
msgstr "Erwartet"
|
|
4413
4422
|
|
|
4423
|
+
msgid "Detailed info"
|
|
4424
|
+
msgstr "Detaillierte Information"
|
|
4425
|
+
|
|
4414
4426
|
msgid "Details"
|
|
4415
4427
|
msgstr "Details"
|
|
4416
4428
|
|
|
@@ -4630,6 +4642,9 @@ msgstr "Gerätezeit"
|
|
|
4630
4642
|
msgid "Device type"
|
|
4631
4643
|
msgstr "Gerätetyp"
|
|
4632
4644
|
|
|
4645
|
+
msgid "Device type cannot be changed on profiles with already defined firmware, software or configuration since they may not be applicable to devices of the new device type."
|
|
4646
|
+
msgstr "Der Gerätetyp kann für Profile, für die bereits eine Firmware, Software oder Konfiguration definiert wurde, nicht geändert werden, da diese für den neuen Gerätetyp möglicherweise nicht geeignet sind."
|
|
4647
|
+
|
|
4633
4648
|
msgid "Device type deleted."
|
|
4634
4649
|
msgstr "Gerätetyp gelöscht."
|
|
4635
4650
|
|
|
@@ -4804,6 +4819,9 @@ msgstr "Anzeigen als"
|
|
|
4804
4819
|
msgid "Display category"
|
|
4805
4820
|
msgstr "Anzeigekategorie"
|
|
4806
4821
|
|
|
4822
|
+
msgid "Display content provided as markdown. You can either upload a file, or provide a file path."
|
|
4823
|
+
msgstr "Inhalt der Markdown-Datei anzeigen. Sie können eine Datei hochladen oder einen Dateipfad angeben."
|
|
4824
|
+
|
|
4807
4825
|
msgid "Display current temperature on device"
|
|
4808
4826
|
msgstr "Die aktuelle Temperatur anzeigen"
|
|
4809
4827
|
|
|
@@ -4855,16 +4873,19 @@ msgstr "Zeigt den Status eines binären Datenpunkts in Echtzeit an"
|
|
|
4855
4873
|
msgid "Displays links to help and service resources."
|
|
4856
4874
|
msgstr "Zeigt Links auf Hilfe- und Service-Dokumente an"
|
|
4857
4875
|
|
|
4876
|
+
msgid "Displays quick links for Device management"
|
|
4877
|
+
msgstr "Zeigt Quick Links für Device Management an"
|
|
4878
|
+
|
|
4858
4879
|
msgid ""
|
|
4859
4880
|
"Displays the button\n"
|
|
4860
|
-
" <button
|
|
4881
|
+
" <button class=\"btn btn-dot btn-icon no-pointer\">\n"
|
|
4861
4882
|
" <i class=\"text-primary dlt-c8y-icon-enter-bottom\"></i>\n"
|
|
4862
4883
|
" </button>\n"
|
|
4863
4884
|
" next to target devices with children. Clicking it displays a list with all child devices of\n"
|
|
4864
4885
|
" the selected target device."
|
|
4865
4886
|
msgstr ""
|
|
4866
4887
|
"Zeigt die Schaltfläche\n"
|
|
4867
|
-
" <button
|
|
4888
|
+
" <button class=\"btn btn-dot btn-icon no-pointer\">\n"
|
|
4868
4889
|
" <i class=\"text-primary dlt-c8y-icon-enter-bottom\"></i>\n"
|
|
4869
4890
|
" </button>\n"
|
|
4870
4891
|
" neben den Zielgeräten mit untergeordneten Geräten an. Klicken Sie auf die Schaltfläche, um eine Liste mit allen untergeordneten Geräten des\n"
|
|
@@ -4930,6 +4951,9 @@ msgstr "Möchten Sie die Verfügbarkeit des Pakets auf \"Geteilt\" setzen? Dadur
|
|
|
4930
4951
|
msgid "Do you want to set version {{version}} as the latest? Deploying a new app will always use this version."
|
|
4931
4952
|
msgstr "Möchten Sie die Version {{version}} als die neueste festlegen? Wenn Sie eine neue Anwendung bereitstellen, wird diese Version verwendet."
|
|
4932
4953
|
|
|
4954
|
+
msgid "Documentation"
|
|
4955
|
+
msgstr "Dokumentation"
|
|
4956
|
+
|
|
4933
4957
|
msgid "Does not match pattern {{ requiredPattern }}"
|
|
4934
4958
|
msgstr "Entspricht nicht dem Muster {{ requiredPattern }}"
|
|
4935
4959
|
|
|
@@ -4975,6 +4999,12 @@ msgstr "Punkte sind nicht zulässig."
|
|
|
4975
4999
|
msgid "Down"
|
|
4976
5000
|
msgstr "Außer Betrieb"
|
|
4977
5001
|
|
|
5002
|
+
msgid "Downgrade"
|
|
5003
|
+
msgstr "Downgrade"
|
|
5004
|
+
|
|
5005
|
+
msgid "Downgrade plugin"
|
|
5006
|
+
msgstr "Plugin-Downgrade durchführen"
|
|
5007
|
+
|
|
4978
5008
|
msgid "Download"
|
|
4979
5009
|
msgstr "Herunterladen"
|
|
4980
5010
|
|
|
@@ -5002,6 +5032,9 @@ msgstr "Herunterladen auf"
|
|
|
5002
5032
|
msgid "Download on the`Google Play`"
|
|
5003
5033
|
msgstr "Herunterladen auf"
|
|
5004
5034
|
|
|
5035
|
+
msgid "Download platform details"
|
|
5036
|
+
msgstr "Plattformdetails herunterladen"
|
|
5037
|
+
|
|
5005
5038
|
msgid "Download template"
|
|
5006
5039
|
msgstr "Template herunterladen"
|
|
5007
5040
|
|
|
@@ -5227,6 +5260,9 @@ msgstr "E-Mail, die einen Tag vor dem Löschen von Daten gesendet wird. Platzhal
|
|
|
5227
5260
|
msgid "Empty simulator"
|
|
5228
5261
|
msgstr "Leerer Simulator"
|
|
5229
5262
|
|
|
5263
|
+
msgid "Empty state"
|
|
5264
|
+
msgstr "Leerzustand"
|
|
5265
|
+
|
|
5230
5266
|
msgid "Enable"
|
|
5231
5267
|
msgstr "Einschalten"
|
|
5232
5268
|
|
|
@@ -7082,9 +7118,6 @@ msgstr "Host"
|
|
|
7082
7118
|
msgid "Host : Port"
|
|
7083
7119
|
msgstr "Host : Port"
|
|
7084
7120
|
|
|
7085
|
-
msgid "Host address"
|
|
7086
|
-
msgstr "Host-Adresse"
|
|
7087
|
-
|
|
7088
7121
|
msgid "Host key"
|
|
7089
7122
|
msgstr "Host-Schlüssel"
|
|
7090
7123
|
|
|
@@ -7606,6 +7639,9 @@ msgstr "LAN"
|
|
|
7606
7639
|
msgid "LAST ACTIVITY"
|
|
7607
7640
|
msgstr "LETZTE AKTIVITÄT"
|
|
7608
7641
|
|
|
7642
|
+
msgid "LATEST`plugin status`"
|
|
7643
|
+
msgstr "LETZTER"
|
|
7644
|
+
|
|
7609
7645
|
msgid "LNS connection name can't be empty."
|
|
7610
7646
|
msgstr "Der LNS-Verbindungsname darf nicht leer sein."
|
|
7611
7647
|
|
|
@@ -8987,6 +9023,9 @@ msgstr "Im erforderlichen Zeitraum wurden keine Daten vom Gerät empfangen."
|
|
|
8987
9023
|
msgid "No data subscriptions to display."
|
|
8988
9024
|
msgstr "Keine Datenabonnements anzuzeigen."
|
|
8989
9025
|
|
|
9026
|
+
msgid "No data to display."
|
|
9027
|
+
msgstr "Keine Daten anzuzeigen."
|
|
9028
|
+
|
|
8990
9029
|
msgid "No delegation"
|
|
8991
9030
|
msgstr "Keine Delegierung"
|
|
8992
9031
|
|
|
@@ -9650,6 +9689,12 @@ msgstr "OPERATION"
|
|
|
9650
9689
|
msgid "OPERATION STATUS"
|
|
9651
9690
|
msgstr "OPERATIONSSTATUS"
|
|
9652
9691
|
|
|
9692
|
+
msgid "ORPHANED`plugin status`"
|
|
9693
|
+
msgstr "VERWAIST"
|
|
9694
|
+
|
|
9695
|
+
msgid "OUTDATED`plugin status`"
|
|
9696
|
+
msgstr "VERALTET"
|
|
9697
|
+
|
|
9653
9698
|
msgid "Object to export"
|
|
9654
9699
|
msgstr "Zu exportierendes Objekt"
|
|
9655
9700
|
|
|
@@ -10352,6 +10397,9 @@ msgstr "Platzhalter: {user}, {exportApi}"
|
|
|
10352
10397
|
msgid "Platform application cannot be added to, nor removed from any tenant."
|
|
10353
10398
|
msgstr "Plattformanwendung kann weder zu einem Mandanten hinzugefügt noch gelöscht werden."
|
|
10354
10399
|
|
|
10400
|
+
msgid "Platform info"
|
|
10401
|
+
msgstr "Plattforminformation"
|
|
10402
|
+
|
|
10355
10403
|
msgid "Please contact your platform administrator."
|
|
10356
10404
|
msgstr "Bitte kontaktieren Sie Ihren Plattform-Administrator."
|
|
10357
10405
|
|
|
@@ -10433,8 +10481,8 @@ msgstr "Mögliche Werte: \"true\", \"false\", oder ein bestimmtes Datum, bis zu
|
|
|
10433
10481
|
msgid "Possible values: URL string, \"false`KEEP_ORIGINAL`\" (hides the link), leave empty (uses the default)"
|
|
10434
10482
|
msgstr "Mögliche Werte: URL-Zeichenkette, \"false\" (verbirgt den Link), leer lassen (nutzt den Standardwert)"
|
|
10435
10483
|
|
|
10436
|
-
msgid "Post
|
|
10437
|
-
msgstr "Post-Operationen gespeichert
|
|
10484
|
+
msgid "Post operations saved"
|
|
10485
|
+
msgstr "Post-Operationen gespeichert"
|
|
10438
10486
|
|
|
10439
10487
|
msgid "Precision loss may occur, check Cloud Fieldbus specification for details."
|
|
10440
10488
|
msgstr "Die Genauigkeit kann vermindert sein. Details finden Sie in der Cloud Fieldbus-Spezifikation."
|
|
@@ -10466,6 +10514,15 @@ msgstr "Vordefinierte Kommandos"
|
|
|
10466
10514
|
msgid "Preferred login mode"
|
|
10467
10515
|
msgstr "Bevorzugter Login-Modus"
|
|
10468
10516
|
|
|
10517
|
+
msgid ""
|
|
10518
|
+
"Prepare your phone and then click\n"
|
|
10519
|
+
" <strong>Next</strong>\n"
|
|
10520
|
+
" below."
|
|
10521
|
+
msgstr ""
|
|
10522
|
+
"Halten Sie Ihr Telefon bereit\n"
|
|
10523
|
+
" und klicken Sie unten auf\n"
|
|
10524
|
+
" <strong>Weiter</strong>."
|
|
10525
|
+
|
|
10469
10526
|
msgid "Presets"
|
|
10470
10527
|
msgstr "Voreinstellungen"
|
|
10471
10528
|
|
|
@@ -10759,6 +10816,9 @@ msgstr "Benutzerdefinierte REST API-Felder"
|
|
|
10759
10816
|
msgid "RETIRED"
|
|
10760
10817
|
msgstr "AUSGELAUFEN"
|
|
10761
10818
|
|
|
10819
|
+
msgid "REVOKED`plugin status`"
|
|
10820
|
+
msgstr "ZURÜCKGESETZT"
|
|
10821
|
+
|
|
10762
10822
|
msgid "RSA public key (X.509 Subject Public Key Info)"
|
|
10763
10823
|
msgstr "Öffentlicher Schlüssel für RSA (X.509 Subject Public Key Info)"
|
|
10764
10824
|
|
|
@@ -11150,9 +11210,6 @@ msgstr "Von der Liste löschen"
|
|
|
11150
11210
|
msgid "Remove permission"
|
|
11151
11211
|
msgstr "Berechtigung entfernen"
|
|
11152
11212
|
|
|
11153
|
-
msgid "Remove plugins"
|
|
11154
|
-
msgstr "Plugins entfernen"
|
|
11155
|
-
|
|
11156
11213
|
msgid "Remove report"
|
|
11157
11214
|
msgstr "Bericht entfernen"
|
|
11158
11215
|
|
|
@@ -11297,6 +11354,9 @@ msgstr "Update zurücksetzen"
|
|
|
11297
11354
|
msgid "Reset branding configuration"
|
|
11298
11355
|
msgstr "Branding-Konfiguration zurücksetzen"
|
|
11299
11356
|
|
|
11357
|
+
msgid "Reset dashboard"
|
|
11358
|
+
msgstr "Dashboard zurücksetzen"
|
|
11359
|
+
|
|
11300
11360
|
msgid "Reset filter"
|
|
11301
11361
|
msgstr "Filter zurücksetzen"
|
|
11302
11362
|
|
|
@@ -11312,6 +11372,9 @@ msgstr "Registrierungsdaten zurücksetzen"
|
|
|
11312
11372
|
msgid "Reset search"
|
|
11313
11373
|
msgstr "Suche zurücksetzen"
|
|
11314
11374
|
|
|
11375
|
+
msgid "Reset`dashboard`"
|
|
11376
|
+
msgstr "Zurücksetzen"
|
|
11377
|
+
|
|
11315
11378
|
msgid "Resource deleted."
|
|
11316
11379
|
msgstr "Ressource gelöscht."
|
|
11317
11380
|
|
|
@@ -11354,9 +11417,6 @@ msgstr "Tracker wird neugestartet"
|
|
|
11354
11417
|
msgid "Restarts`noun`"
|
|
11355
11418
|
msgstr "Neustarts"
|
|
11356
11419
|
|
|
11357
|
-
msgid "Restore dashboard"
|
|
11358
|
-
msgstr "Dashboard wiederherstellen"
|
|
11359
|
-
|
|
11360
11420
|
msgid "Result"
|
|
11361
11421
|
msgstr "Ergebnis"
|
|
11362
11422
|
|
|
@@ -11504,6 +11564,9 @@ msgstr "SMS-ID"
|
|
|
11504
11564
|
msgid "SMS based"
|
|
11505
11565
|
msgstr "SMS-basiert"
|
|
11506
11566
|
|
|
11567
|
+
msgid "SMS content"
|
|
11568
|
+
msgstr "SMS-Inhalt"
|
|
11569
|
+
|
|
11507
11570
|
msgid "SMS for initial configuration sent."
|
|
11508
11571
|
msgstr "SMS zur initialen Konfiguration wurde gesendet."
|
|
11509
11572
|
|
|
@@ -11789,6 +11852,9 @@ msgstr "Das Sicherheitstoken ist erforderlich, wenn das angeschlossene Gerät es
|
|
|
11789
11852
|
msgid "Security`icons-category`"
|
|
11790
11853
|
msgstr "Sicherheit"
|
|
11791
11854
|
|
|
11855
|
+
msgid "See alarms for device \"{{ name }}\""
|
|
11856
|
+
msgstr "Alarme für das Gerät \"{{ name }}\" anzeigen"
|
|
11857
|
+
|
|
11792
11858
|
msgid "See also our Privacy Notice."
|
|
11793
11859
|
msgstr "Weitere Informationen finden Sie in unserem Datenschutzhinweis."
|
|
11794
11860
|
|
|
@@ -11852,9 +11918,15 @@ msgstr "Alle {{ count }} Elemente auswählen"
|
|
|
11852
11918
|
msgid "Select an asset from the list."
|
|
11853
11919
|
msgstr "Ein Asset aus der Liste wählen."
|
|
11854
11920
|
|
|
11921
|
+
msgid "Select an asset with data points from the list."
|
|
11922
|
+
msgstr "Wählen Sie ein Asset mit Datenpunkten aus der Liste aus."
|
|
11923
|
+
|
|
11855
11924
|
msgid "Select an instruction."
|
|
11856
11925
|
msgstr "Anweisung auswählen."
|
|
11857
11926
|
|
|
11927
|
+
msgid "Select another version, as {{ version }} is currently used."
|
|
11928
|
+
msgstr "Wählen Sie eine andere Version, da {{ version }} aktuell verwendet wird."
|
|
11929
|
+
|
|
11858
11930
|
msgid "Select application to duplicate"
|
|
11859
11931
|
msgstr "Zu duplizierende Anwendung auswählen"
|
|
11860
11932
|
|
|
@@ -11867,6 +11939,9 @@ msgstr "Wählen Sie mindestens einen Datentyp für den Export aus."
|
|
|
11867
11939
|
msgid "Select at least one severity."
|
|
11868
11940
|
msgstr "Wählen Sie mindestens einen Schweregrad."
|
|
11869
11941
|
|
|
11942
|
+
msgid "Select below or start typing"
|
|
11943
|
+
msgstr "Wählen Sie unten aus oder suchen Sie mit einer Eingabe"
|
|
11944
|
+
|
|
11870
11945
|
msgid "Select child devices"
|
|
11871
11946
|
msgstr "Kindgeräte auswählen"
|
|
11872
11947
|
|
|
@@ -12098,6 +12173,9 @@ msgstr "Wählen Sie die passenden Plugins für die Installation"
|
|
|
12098
12173
|
msgid "Select the configuration you want to preview"
|
|
12099
12174
|
msgstr "Wählen Sie die Konfiguration aus, die Sie in der Vorschau anzeigen möchten"
|
|
12100
12175
|
|
|
12176
|
+
msgid "Select the global roles for which the dashboard will be available"
|
|
12177
|
+
msgstr "Wählen Sie die globalen Rollen aus, für die das Dashboard verfügbar sein soll"
|
|
12178
|
+
|
|
12101
12179
|
msgid "Select time in the future."
|
|
12102
12180
|
msgstr "Wählen Sie einen Zeitpunkt in der Zukunft aus."
|
|
12103
12181
|
|
|
@@ -12780,6 +12858,12 @@ msgstr "Schwellenwert für Temperatur konfigurieren"
|
|
|
12780
12858
|
msgid "Set up two-factor authentication"
|
|
12781
12859
|
msgstr "Zweifaktor-Authentifizierung einrichten"
|
|
12782
12860
|
|
|
12861
|
+
msgid "Set version"
|
|
12862
|
+
msgstr "Version setzen"
|
|
12863
|
+
|
|
12864
|
+
msgid "Set version for all plugins using the same context path \"{{ contextPath }}\"."
|
|
12865
|
+
msgstr "Version für alle Plugins setzen, die denselben Kontextpfad \"{{ contextPath }}\" verwenden."
|
|
12866
|
+
|
|
12783
12867
|
msgid "Setting"
|
|
12784
12868
|
msgstr "Einstellung"
|
|
12785
12869
|
|
|
@@ -13156,6 +13240,9 @@ msgstr "Größe und Ausrichtung"
|
|
|
13156
13240
|
msgid "Skip"
|
|
13157
13241
|
msgstr "Überspringen"
|
|
13158
13242
|
|
|
13243
|
+
msgid "Skip to content"
|
|
13244
|
+
msgstr "Zum Inhalt springen"
|
|
13245
|
+
|
|
13159
13246
|
msgid "Slash, single or double dots and white space not allowed."
|
|
13160
13247
|
msgstr "Schrägstriche, Punkte und Leerzeichen sind nicht zugelassen."
|
|
13161
13248
|
|
|
@@ -13304,12 +13391,12 @@ msgstr "Ein Fehler ist aufgetreten. Laden Sie die Seite neu oder versuchen Sie s
|
|
|
13304
13391
|
msgid "Sorry, that didn't work"
|
|
13305
13392
|
msgstr "Sorry, das hat nicht funktioniert"
|
|
13306
13393
|
|
|
13307
|
-
msgid "Sort"
|
|
13308
|
-
msgstr "Sortieren"
|
|
13309
|
-
|
|
13310
13394
|
msgid "Sort ascending"
|
|
13311
13395
|
msgstr "Aufsteigend sortieren"
|
|
13312
13396
|
|
|
13397
|
+
msgid "Sort column \"{{ name }}\""
|
|
13398
|
+
msgstr "Spalte \"{{ name }}\" sortieren"
|
|
13399
|
+
|
|
13313
13400
|
msgid "Sort descending"
|
|
13314
13401
|
msgstr "Absteigend sortieren"
|
|
13315
13402
|
|
|
@@ -13723,15 +13810,6 @@ msgstr "Liste von Geräteattributen, z. B. Name, Typ oder Notizen."
|
|
|
13723
13810
|
msgid "Tag has been set."
|
|
13724
13811
|
msgstr "Tag gesetzt."
|
|
13725
13812
|
|
|
13726
|
-
msgid ""
|
|
13727
|
-
"Prepare your phone and then click\n"
|
|
13728
|
-
" <strong>Next</strong>\n"
|
|
13729
|
-
" below."
|
|
13730
|
-
msgstr ""
|
|
13731
|
-
"Halten Sie Ihr Telefon bereit\n"
|
|
13732
|
-
" und klicken Sie unten auf\n"
|
|
13733
|
-
" <strong>Weiter</strong>."
|
|
13734
|
-
|
|
13735
13813
|
msgid "Takes a value between -32768 and 32767 minutes (a negative value indicates that the device is under maintenance)."
|
|
13736
13814
|
msgstr "Nimmt einen Wert zwischen -32768 und 32767 Minuten an (ein negativer Wert bedeutet, dass das Gerät in Wartung ist)."
|
|
13737
13815
|
|
|
@@ -14113,9 +14191,6 @@ msgstr "Die Anzahl der Tage, die ein Passwort gültig sein darf, bevor es zurüc
|
|
|
14113
14191
|
msgid "The number of times before the current password can be reused. Minimum value is 0, preset value is 10."
|
|
14114
14192
|
msgstr "Die Anzahl der Aufrufe, bevor das aktuelle Passwort erneut verwendet werden kann. Der Mindestwert ist 0, der voreingestellte Wert ist 10."
|
|
14115
14193
|
|
|
14116
|
-
msgid "The operation may take several minutes. During this time the application may be unavailable. Do you want to proceed?"
|
|
14117
|
-
msgstr "Der Vorgang kann einige Minuten dauern. Während dieser Zeit kann die Anwendung nicht verfügbar sein. Möchten Sie fortfahren?"
|
|
14118
|
-
|
|
14119
14194
|
msgid "The password of the user that you are currently logged in with."
|
|
14120
14195
|
msgstr "Das Passwort des Benutzers, mit dem Sie gerade angemeldet sind."
|
|
14121
14196
|
|
|
@@ -14275,9 +14350,6 @@ msgstr "Es sind verschiedene voreingestellte Rollen definiert, aber Sie können
|
|
|
14275
14350
|
msgid "There is already a role with the name \"{{name}}\""
|
|
14276
14351
|
msgstr "Eine Rolle mit dem Namen \"{{name}}\" existiert bereits."
|
|
14277
14352
|
|
|
14278
|
-
msgid "There was an error processing the post-operations."
|
|
14279
|
-
msgstr "Bei der Verarbeitung der Post-Operationen ist ein Fehler aufgetreten."
|
|
14280
|
-
|
|
14281
14353
|
msgid "These addresses are already in use."
|
|
14282
14354
|
msgstr "Diese Adressen werden bereits verwendet."
|
|
14283
14355
|
|
|
@@ -14692,6 +14764,9 @@ msgstr "Vertrauenswürdige Zertifikate"
|
|
|
14692
14764
|
msgid "Trusted user agents"
|
|
14693
14765
|
msgstr "Vertrauenswürdige Benutzer-Agenten"
|
|
14694
14766
|
|
|
14767
|
+
msgid "Try another search term."
|
|
14768
|
+
msgstr "Versuchen Sie es mit einem anderen Suchbegriff."
|
|
14769
|
+
|
|
14695
14770
|
msgid "Try changing your search criteria."
|
|
14696
14771
|
msgstr "Ändern Sie Ihre Such- oder Filterkriterien."
|
|
14697
14772
|
|
|
@@ -14780,9 +14855,6 @@ msgstr "UDP"
|
|
|
14780
14855
|
msgid "UDP with queue mode"
|
|
14781
14856
|
msgstr "UDP mit Queue-Modus"
|
|
14782
14857
|
|
|
14783
|
-
msgid "UI"
|
|
14784
|
-
msgstr "UI"
|
|
14785
|
-
|
|
14786
14858
|
msgid "UNSIGNED"
|
|
14787
14859
|
msgstr "UNSIGNED"
|
|
14788
14860
|
|
|
@@ -14816,12 +14888,18 @@ msgstr "Quellpaket kann nicht aufgelöst werden."
|
|
|
14816
14888
|
msgid "Unable to resolve versions of source package."
|
|
14817
14889
|
msgstr "Versionen des Quellpakets können nicht aufgelöst werden."
|
|
14818
14890
|
|
|
14891
|
+
msgid "Unable to retrieve binary with ID: {{ markdownBinaryId }}"
|
|
14892
|
+
msgstr "Die Binärdatei mit der ID {{ markdownBinaryId }} konnte nicht geladen werden."
|
|
14893
|
+
|
|
14819
14894
|
msgid "Unable to retrieve image with id: {{ imageBinaryId }}"
|
|
14820
14895
|
msgstr "Bild mit der ID {{ imageBinaryId }} konnte nicht abgerufen werden"
|
|
14821
14896
|
|
|
14822
14897
|
msgid "Unable to upload image."
|
|
14823
14898
|
msgstr "Hochladen des Bildes fehlgeschlagen."
|
|
14824
14899
|
|
|
14900
|
+
msgid "Unable to upload markdown file."
|
|
14901
|
+
msgstr "Die Markdown-Datei konnte nicht hochgeladen werden."
|
|
14902
|
+
|
|
14825
14903
|
msgid "Unassign"
|
|
14826
14904
|
msgstr "Zuweisung aufheben"
|
|
14827
14905
|
|
|
@@ -14994,6 +15072,9 @@ msgstr "Objekt aktualisieren"
|
|
|
14994
15072
|
msgid "Update maximum credit"
|
|
14995
15073
|
msgstr "Maximales Guthaben aktualisieren"
|
|
14996
15074
|
|
|
15075
|
+
msgid "Update plugin"
|
|
15076
|
+
msgstr "Plugin aktualisieren"
|
|
15077
|
+
|
|
14997
15078
|
msgid "Update protocol configuration"
|
|
14998
15079
|
msgstr "Protokollkonfiguration aktualisieren"
|
|
14999
15080
|
|
|
@@ -15174,6 +15255,9 @@ msgstr "Paketversion verwenden"
|
|
|
15174
15255
|
msgid "Use placeholders carefully."
|
|
15175
15256
|
msgstr "Verwenden Sie Platzhalter mit Bedacht."
|
|
15176
15257
|
|
|
15258
|
+
msgid "Use plugin version"
|
|
15259
|
+
msgstr "Plugin-Version verwenden"
|
|
15260
|
+
|
|
15177
15261
|
msgid "Use reset counters"
|
|
15178
15262
|
msgstr "Reset-Zähler verwenden"
|
|
15179
15263
|
|
|
@@ -15674,15 +15758,15 @@ msgstr "Wöchentlich: {{ weekDay }}, um {{ hour }}:{{ minutes }}."
|
|
|
15674
15758
|
msgid "Welcome"
|
|
15675
15759
|
msgstr "Willkommen"
|
|
15676
15760
|
|
|
15677
|
-
msgid "Welcome to"
|
|
15678
|
-
msgstr "Willkommen zu"
|
|
15679
|
-
|
|
15680
15761
|
msgid "Welcome to Administration"
|
|
15681
15762
|
msgstr "Willkommen zur Administration-Anwendung"
|
|
15682
15763
|
|
|
15683
15764
|
msgid "Welcome to Cockpit"
|
|
15684
15765
|
msgstr "Willkommen zur Cockpit-Anwendung"
|
|
15685
15766
|
|
|
15767
|
+
msgid "Welcome to Device management"
|
|
15768
|
+
msgstr "Willkommen zum Device Management"
|
|
15769
|
+
|
|
15686
15770
|
msgid "Welcome to {{ appName }}"
|
|
15687
15771
|
msgstr "Willkommen bei {{ appName }}"
|
|
15688
15772
|
|
|
@@ -16053,9 +16137,6 @@ msgstr ""
|
|
|
16053
16137
|
" Falls Sie zusätzliche individuelle Optionen konfiguriert haben, werden diese zurückgesetzt.\n"
|
|
16054
16138
|
" Das Standard-Branding wird auf alle Untermandanten angewendet. Möchten Sie fortfahren?"
|
|
16055
16139
|
|
|
16056
|
-
msgid "You are about to remove plugins from application \"{{ humanizedAppName }}\". The operation may take several minutes. During this time the application may be unavailable. Do you want to proceed?"
|
|
16057
|
-
msgstr "Mit dieser Aktion entfernen Sie Plugins aus der Anwendung \"{{ humanizedAppName }}\". Der Vorgang kann einige Minuten dauern. Während dieser Zeit kann die Anwendung nicht verfügbar sein. Möchten Sie fortfahren?"
|
|
16058
|
-
|
|
16059
16140
|
msgid "You are about to remove widget \"{{ widgetTitle }}\" from your dashboard. Do you want to proceed?"
|
|
16060
16141
|
msgstr "Mit dieser Aktion entfernen Sie das Widget \"{{ widgetTitle }}\" aus Ihrem Dashboard. Möchten Sie fortfahren?"
|
|
16061
16142
|
|
|
@@ -16066,6 +16147,9 @@ msgstr ""
|
|
|
16066
16147
|
"Mit dieser Aktion setzen Sie die Branding-Konfiguration auf die zuvor gespeicherten Einstellungen zurück. \n"
|
|
16067
16148
|
" Möchten Sie fortfahren?"
|
|
16068
16149
|
|
|
16150
|
+
msgid "You are about to reset this dashboard. All changes to the dashboard will get lost and cannot be recovered. Do you want to proceed?"
|
|
16151
|
+
msgstr "Mit dieser Aktion setzen Sie das Dashboard zurück. Alle Änderungen am Dashboard gehen verloren und können nicht wiederhergestellt werden. Möchten Sie fortfahren?"
|
|
16152
|
+
|
|
16069
16153
|
msgid "You are about to save changes in the global role which might affect security."
|
|
16070
16154
|
msgstr "Mit dieser Aktion ändern Sie die globale Rolle. Dies kann sich auf die Sicherheit auswirken."
|
|
16071
16155
|
|
|
@@ -16110,8 +16194,8 @@ msgstr ""
|
|
|
16110
16194
|
msgid "You can edit the filter here."
|
|
16111
16195
|
msgstr "Sie können die Filtereinstellungen hier anpassen."
|
|
16112
16196
|
|
|
16113
|
-
msgid "You can enter a set of LWM2M shell commands. Each
|
|
16114
|
-
msgstr "Sie können eine Reihe von LWM2M-Shell-Kommandos eingeben. Jedes
|
|
16197
|
+
msgid "You can enter a set of LWM2M shell commands. Each command will be sent to every newly registered LWM2M device. Each command must be entered in a new line. Use the following syntax for specifying post-registration actions:"
|
|
16198
|
+
msgstr "Sie können eine Reihe von LWM2M-Shell-Kommandos eingeben. Jedes Kommando wird an jedes neu registrierte LWM2M-Gerät gesendet. Jedes Kommando muss in eine neue Zeile eingegeben werden. Verwenden Sie die folgende Syntax, um Aktionen zu spezifizieren, die nach der Registrierung durchgeführt werden sollen:"
|
|
16115
16199
|
|
|
16116
16200
|
msgid "You can provide some examples displayed as placeholder…"
|
|
16117
16201
|
msgstr "Sie können einige Beispiele angeben, die als Platzhalter angezeigt werden…"
|
|
@@ -16186,9 +16270,6 @@ msgstr "Sie haben die maximale Anzahl von {{ versionsLimit }} Paketversionen err
|
|
|
16186
16270
|
msgid "You have two options to connect your smartphone."
|
|
16187
16271
|
msgstr "Sie haben zwei Möglichkeiten, Ihr Smartphone zu verbinden."
|
|
16188
16272
|
|
|
16189
|
-
msgid "You may use the following syntax for specifying post-registration actions:"
|
|
16190
|
-
msgstr "Für Aktionen nach der Registrierung können Sie die folgende Syntax verwenden:"
|
|
16191
|
-
|
|
16192
16273
|
msgid "You must add a target asset or device."
|
|
16193
16274
|
msgstr "Sie müssen ein Ziel-Asset oder -gerät hinzufügen."
|
|
16194
16275
|
|
|
@@ -17211,6 +17292,9 @@ msgstr "Oben"
|
|
|
17211
17292
|
msgid "type"
|
|
17212
17293
|
msgstr "Typ"
|
|
17213
17294
|
|
|
17295
|
+
msgid "unavailable`plugin`"
|
|
17296
|
+
msgstr "Nicht verfügbar"
|
|
17297
|
+
|
|
17214
17298
|
msgid "unique child ID"
|
|
17215
17299
|
msgstr "Eindeutige Kind-ID"
|
|
17216
17300
|
|
package/core/locales/en.po
CHANGED
|
@@ -1,10 +1,10 @@
|
|
|
1
1
|
msgid ""
|
|
2
2
|
msgstr ""
|
|
3
3
|
"Project-Id-Version: c8yui.core\n"
|
|
4
|
-
"Language: en\n"
|
|
5
4
|
"Content-Type: text/plain; charset=UTF-8\n"
|
|
6
5
|
"Content-Transfer-Encoding: 8bit\n"
|
|
7
6
|
"Plural-Forms: nplurals=2; plural=(n != 1);\n"
|
|
7
|
+
"Language: en\n"
|
|
8
8
|
|
|
9
9
|
msgid "1 child active`asset`"
|
|
10
10
|
msgid_plural "{{$count}} children active`asset`"
|
|
@@ -544,6 +544,9 @@ msgstr "Installed"
|
|
|
544
544
|
msgid "Keep unchanged`version`"
|
|
545
545
|
msgstr "Keep unchanged"
|
|
546
546
|
|
|
547
|
+
msgid "LATEST`plugin status`"
|
|
548
|
+
msgstr "LATEST"
|
|
549
|
+
|
|
547
550
|
msgid "Label for active`switch`"
|
|
548
551
|
msgstr "Label for active"
|
|
549
552
|
|
|
@@ -598,6 +601,12 @@ msgstr "OFF"
|
|
|
598
601
|
msgid "ON`status of an option, e.g. realtime`"
|
|
599
602
|
msgstr "ON"
|
|
600
603
|
|
|
604
|
+
msgid "ORPHANED`plugin status`"
|
|
605
|
+
msgstr "ORPHANED"
|
|
606
|
+
|
|
607
|
+
msgid "OUTDATED`plugin status`"
|
|
608
|
+
msgstr "OUTDATED"
|
|
609
|
+
|
|
601
610
|
msgid "Office`icons-category`"
|
|
602
611
|
msgstr "Office"
|
|
603
612
|
|
|
@@ -629,6 +638,9 @@ msgstr "Previous"
|
|
|
629
638
|
msgid "Private`package availability`"
|
|
630
639
|
msgstr "Private"
|
|
631
640
|
|
|
641
|
+
msgid "REVOKED`plugin status`"
|
|
642
|
+
msgstr "REVOKED"
|
|
643
|
+
|
|
632
644
|
msgid "Rates`time intervals`"
|
|
633
645
|
msgstr "Rates"
|
|
634
646
|
|
|
@@ -668,6 +680,9 @@ msgstr "Remove"
|
|
|
668
680
|
msgid "Remove`software`"
|
|
669
681
|
msgstr "Remove"
|
|
670
682
|
|
|
683
|
+
msgid "Reset`dashboard`"
|
|
684
|
+
msgstr "Reset"
|
|
685
|
+
|
|
671
686
|
msgid "Restarts`noun`"
|
|
672
687
|
msgstr "Restarts"
|
|
673
688
|
|
|
@@ -887,6 +902,9 @@ msgstr "to"
|
|
|
887
902
|
msgid "top`vertical alignment`"
|
|
888
903
|
msgstr "top"
|
|
889
904
|
|
|
905
|
+
msgid "unavailable`plugin`"
|
|
906
|
+
msgstr "unavailable"
|
|
907
|
+
|
|
890
908
|
msgid "valid`value`"
|
|
891
909
|
msgstr "valid"
|
|
892
910
|
|
|
@@ -31,7 +31,7 @@
|
|
|
31
31
|
</button>
|
|
32
32
|
</c8y-ui-action-bar-set>
|
|
33
33
|
|
|
34
|
-
<c8y-help src="/users-guide/enterprise-tenant/#data-
|
|
34
|
+
<c8y-help src="/users-guide/enterprise-tenant/#data-broker"></c8y-help>
|
|
35
35
|
|
|
36
36
|
<div class="c8y-empty-state text-center m-t-32" ng-if="vm.isSubscriptionsListEmpty()">
|
|
37
37
|
<h1 c8y-icon="c8y-connector-in c8y-icon-duocolor"></h1>
|
|
@@ -1 +1 @@
|
|
|
1
|
-
"use strict";function _typeof(e){return(_typeof="function"==typeof Symbol&&"symbol"==typeof Symbol.iterator?function(e){return typeof e}:function(e){return e&&"function"==typeof Symbol&&e.constructor===Symbol&&e!==Symbol.prototype?"symbol":typeof e})(e)}function _regeneratorRuntime(){_regeneratorRuntime=function(){return a};var a={},e=Object.prototype,l=e.hasOwnProperty,t="function"==typeof Symbol?Symbol:{},i=t.iterator||"@@iterator",r=t.asyncIterator||"@@asyncIterator",n=t.toStringTag||"@@toStringTag";function o(e,t,r){return Object.defineProperty(e,t,{value:r,enumerable:!0,configurable:!0,writable:!0}),e[t]}try{o({},"")}catch(e){o=function(e,t,r){return e[t]=r}}function c(e,t,r,n){var o,a,c,u,i=t&&t.prototype instanceof d?t:d,s=Object.create(i.prototype),l=new T(n||[]);return s._invoke=(o=e,a=r,c=l,u="suspendedStart",function(e,t){if("executing"===u)throw new Error("Generator is already running");if("completed"===u){if("throw"===e)throw t;return E()}for(c.method=e,c.arg=t;;){var r=c.delegate;if(r){var n=b(r,c);if(n){if(n===f)continue;return n}}if("next"===c.method)c.sent=c._sent=c.arg;else if("throw"===c.method){if("suspendedStart"===u)throw u="completed",c.arg;c.dispatchException(c.arg)}else"return"===c.method&&c.abrupt("return",c.arg);u="executing";var i=p(o,a,c);if("normal"===i.type){if(u=c.done?"completed":"suspendedYield",i.arg===f)continue;return{value:i.arg,done:c.done}}"throw"===i.type&&(u="completed",c.method="throw",c.arg=i.arg)}}),s}function p(e,t,r){try{return{type:"normal",arg:e.call(t,r)}}catch(e){return{type:"throw",arg:e}}}a.wrap=c;var f={};function d(){}function u(){}function s(){}var y={};o(y,i,function(){return this});var h=Object.getPrototypeOf,v=h&&h(h(R([])));v&&v!==e&&l.call(v,i)&&(y=v);var g=s.prototype=d.prototype=Object.create(y);function m(e){["next","throw","return"].forEach(function(t){o(e,t,function(e){return this._invoke(t,e)})})}function w(u,s){var t;this._invoke=function(r,n){function e(){return new s(function(e,t){!function t(e,r,n,i){var o=p(u[e],u,r);if("throw"!==o.type){var a=o.arg,c=a.value;return c&&"object"==_typeof(c)&&l.call(c,"__await")?s.resolve(c.__await).then(function(e){t("next",e,n,i)},function(e){t("throw",e,n,i)}):s.resolve(c).then(function(e){a.value=e,n(a)},function(e){return t("throw",e,n,i)})}i(o.arg)}(r,n,e,t)})}return t=t?t.then(e,e):e()}}function b(e,t){var r=e.iterator[t.method];if(void 0===r){if(t.delegate=null,"throw"===t.method){if(e.iterator.return&&(t.method="return",t.arg=void 0,b(e,t),"throw"===t.method))return f;t.method="throw",t.arg=new TypeError("The iterator does not provide a 'throw' method")}return f}var n=p(r,e.iterator,t.arg);if("throw"===n.type)return t.method="throw",t.arg=n.arg,t.delegate=null,f;var i=n.arg;return i?i.done?(t[e.resultName]=i.value,t.next=e.nextLoc,"return"!==t.method&&(t.method="next",t.arg=void 0),t.delegate=null,f):i:(t.method="throw",t.arg=new TypeError("iterator result is not an object"),t.delegate=null,f)}function _(e){var t={tryLoc:e[0]};1 in e&&(t.catchLoc=e[1]),2 in e&&(t.finallyLoc=e[2],t.afterLoc=e[3]),this.tryEntries.push(t)}function x(e){var t=e.completion||{};t.type="normal",delete t.arg,e.completion=t}function T(e){this.tryEntries=[{tryLoc:"root"}],e.forEach(_,this),this.reset(!0)}function R(t){if(t){var e=t[i];if(e)return e.call(t);if("function"==typeof t.next)return t;if(!isNaN(t.length)){var r=-1,n=function e(){for(;++r<t.length;)if(l.call(t,r))return e.value=t[r],e.done=!1,e;return e.value=void 0,e.done=!0,e};return n.next=n}}return{next:E}}function E(){return{value:void 0,done:!0}}return o(g,"constructor",u.prototype=s),o(s,"constructor",u),u.displayName=o(s,n,"GeneratorFunction"),a.isGeneratorFunction=function(e){var t="function"==typeof e&&e.constructor;return!!t&&(t===u||"GeneratorFunction"===(t.displayName||t.name))},a.mark=function(e){return Object.setPrototypeOf?Object.setPrototypeOf(e,s):(e.__proto__=s,o(e,n,"GeneratorFunction")),e.prototype=Object.create(g),e},a.awrap=function(e){return{__await:e}},m(w.prototype),o(w.prototype,r,function(){return this}),a.AsyncIterator=w,a.async=function(e,t,r,n,i){void 0===i&&(i=Promise);var o=new w(c(e,t,r,n),i);return a.isGeneratorFunction(t)?o:o.next().then(function(e){return e.done?e.value:o.next()})},m(g),o(g,n,"Generator"),o(g,i,function(){return this}),o(g,"toString",function(){return"[object Generator]"}),a.keys=function(r){var n=[];for(var e in r)n.push(e);return n.reverse(),function e(){for(;n.length;){var t=n.pop();if(t in r)return e.value=t,e.done=!1,e}return e.done=!0,e}},a.values=R,T.prototype={constructor:T,reset:function(e){if(this.prev=0,this.next=0,this.sent=this._sent=void 0,this.done=!1,this.delegate=null,this.method="next",this.arg=void 0,this.tryEntries.forEach(x),!e)for(var t in this)"t"===t.charAt(0)&&l.call(this,t)&&!isNaN(+t.slice(1))&&(this[t]=void 0)},stop:function(){this.done=!0;var e=this.tryEntries[0].completion;if("throw"===e.type)throw e.arg;return this.rval},dispatchException:function(r){if(this.done)throw r;var n=this;function e(e,t){return o.type="throw",o.arg=r,n.next=e,t&&(n.method="next",n.arg=void 0),!!t}for(var t=this.tryEntries.length-1;0<=t;--t){var i=this.tryEntries[t],o=i.completion;if("root"===i.tryLoc)return e("end");if(i.tryLoc<=this.prev){var a=l.call(i,"catchLoc"),c=l.call(i,"finallyLoc");if(a&&c){if(this.prev<i.catchLoc)return e(i.catchLoc,!0);if(this.prev<i.finallyLoc)return e(i.finallyLoc)}else if(a){if(this.prev<i.catchLoc)return e(i.catchLoc,!0)}else{if(!c)throw new Error("try statement without catch or finally");if(this.prev<i.finallyLoc)return e(i.finallyLoc)}}}},abrupt:function(e,t){for(var r=this.tryEntries.length-1;0<=r;--r){var n=this.tryEntries[r];if(n.tryLoc<=this.prev&&l.call(n,"finallyLoc")&&this.prev<n.finallyLoc){var i=n;break}}i&&("break"===e||"continue"===e)&&i.tryLoc<=t&&t<=i.finallyLoc&&(i=null);var o=i?i.completion:{};return o.type=e,o.arg=t,i?(this.method="next",this.next=i.finallyLoc,f):this.complete(o)},complete:function(e,t){if("throw"===e.type)throw e.arg;return"break"===e.type||"continue"===e.type?this.next=e.arg:"return"===e.type?(this.rval=this.arg=e.arg,this.method="return",this.next="end"):"normal"===e.type&&t&&(this.next=t),f},finish:function(e){for(var t=this.tryEntries.length-1;0<=t;--t){var r=this.tryEntries[t];if(r.finallyLoc===e)return this.complete(r.completion,r.afterLoc),x(r),f}},catch:function(e){for(var t=this.tryEntries.length-1;0<=t;--t){var r=this.tryEntries[t];if(r.tryLoc===e){var n=r.completion;if("throw"===n.type){var i=n.arg;x(r)}return i}}throw new Error("illegal catch attempt")},delegateYield:function(e,t,r){return this.delegate={iterator:R(e),resultName:t,nextLoc:r},"next"===this.method&&(this.arg=void 0),f}},a}!function(){function e(a,e,n,r,i,c,t,o,u,s,l){var p=this,f=p.id,d=!0;function y(r){var n,i;return _regeneratorRuntime().async(function(e){for(;;)switch(e.prev=e.next){case 0:return e.next=2,_regeneratorRuntime().awrap((t=r,h()?c.getEmptyDeviceType():c.getDeviceType(t)));case 2:n=e.sent,i=n.fieldbusType,_.assign(p,{deviceType:n,formValue:{fieldbusType:i},features:_.find(p.deviceTypesFeatures,{fieldbusType:i})}),a.$apply();case 6:case"end":return e.stop()}var t},null,null,null,Promise)}function h(){return"new"===f}function v(){p.deviceType.name?t.changeTitle({title:p.deviceType.name},{skipTitleTranslation:!0}):t.changeTitle({title:s("New device type")})}function g(e){return x(e,c.addElementId(c.getEmptyDiscreteOutput()),p.deviceType.c8y_Coils)}function m(e){return x(e,c.addElementId(c.getEmptyDiscreteInput()),p.deviceType.c8y_Coils)}function w(e){return T(e,c.addElementId(c.getEmptyHoldingRegister(p.deviceType)),p.deviceType.c8y_Registers)}function b(e){return T(e,c.addElementId(c.getEmptyInputRegister()),p.deviceType.c8y_Registers)}function x(e,t,r){return R("DiscreteIO",e,t,r)}function T(e,t,r){return R("Register",e,t,r)}function R(t,r,n,i){var o;return _regeneratorRuntime().async(function(e){for(;;)switch(e.prev=e.next){case 0:return e.prev=0,e.next=3,_regeneratorRuntime().awrap(c["edit".concat(t,"WithUI")](r||n,p.deviceType));case 3:o=e.sent,E(r,i,o),I(),e.next=11;break;case 8:e.prev=8,e.t0=e.catch(0),e.t0&&"escape key press"!==e.t0&&u.danger(e.t0);case 11:a.$apply();case 12:case"end":return e.stop()}},null,null,[[0,8]],Promise)}function E(e,t,r){(_.get(p.features,"holdingRegisters.number.useHex",!1)&&!r.number.startsWith("0x")&&(r.number="0x".concat(r.number)),e)?t[_.indexOf(t,e)]=r:t.push(r)}function D(t,r,n){return _regeneratorRuntime().async(function(e){for(;;)switch(e.prev=e.next){case 0:return e.prev=0,e.next=3,_regeneratorRuntime().awrap(o({title:s("Delete item"),body:l.getString(n,t),labels:{ok:s("Delete")},status:"danger"}));case 3:i.removeFromList(r,t),I(),e.next=10;break;case 7:e.prev=7,e.t0=e.catch(0),e.t0&&u.danger(e.t0);case 10:a.$apply();case 11:case"end":return e.stop()}},null,null,[[0,7]],Promise)}function L(){var t,r;return _regeneratorRuntime().async(function(e){for(;;)switch(e.prev=e.next){case 0:return e.prev=0,e.next=3,_regeneratorRuntime().awrap(o({title:s("Confirm device type change?"),body:l.getString("By changing device type, all changes will be lost. Do you really want to proceed?")}));case 3:return c.removeAllElements(p.deviceType),I(),t=p.formValue.fieldbusType,p.deviceType.fieldbusType=t,e.abrupt("return",t);case 10:return e.prev=10,e.t0=e.catch(0),r=p.deviceType.fieldbusType,p.formValue.fieldbusType=r,e.abrupt("return",r);case 15:case"end":return e.stop()}},null,null,[[0,10]],Promise)}function I(){var e=p.deviceType;_.assign(p,{discreteOutputsCategorized:c.getDiscreteOutputsCategorized(e),discreteInputsCategorized:c.getDiscreteInputsCategorized(e),holdingRegistersCategorized:c.getHoldingRegistersCategorized(e),inputRegistersCategorized:c.getInputRegistersCategorized(e)})}_.assign(p,{$onInit:function(){return _regeneratorRuntime().async(function(e){for(;;)switch(e.prev=e.next){case 0:return e.next=2,_regeneratorRuntime().awrap(_regeneratorRuntime().async(function(e){for(;;)switch(e.prev=e.next){case 0:return e.next=2,_regeneratorRuntime().awrap(c.getFeaturesManifestsAsync());case 2:p.deviceTypesFeatures=e.sent,a.$apply();case 4:case"end":return e.stop()}},null,null,null,Promise));case 2:return e.next=4,_regeneratorRuntime().awrap(y(f));case 4:I(),v(),a.$apply();case 7:case"end":return e.stop()}},null,null,null,Promise)},isNew:h,isEmpty:_.isEmpty,editDiscreteOutput:g,editDiscreteInput:m,editHoldingRegister:w,editInputRegister:b,addDiscreteOutput:g,addDiscreteInput:m,addHoldingRegister:w,addInputRegister:b,removeDiscreteOutput:function(e){return D(e,p.deviceType.c8y_Coils,s('Do you really want to remove "{{name}}"?'))},removeDiscreteInput:function(e){return D(e,p.deviceType.c8y_Coils,s('Do you really want to remove "{{name}}"?'))},removeHoldingRegister:function(e){return D(e,p.deviceType.c8y_Registers,s('Do you really want to remove "{{name}}"?'))},removeInputRegister:function(e){return D(e,p.deviceType.c8y_Registers,s('Do you really want to remove "{{name}}"?'))},save:function(t){return _regeneratorRuntime().async(function(e){for(;;)switch(e.prev=e.next){case 0:return e.prev=0,e.next=3,_regeneratorRuntime().awrap(c.save(t));case 3:u.success(s("Device type saved.")),d=!0,r.path("/deviceprotocols"),e.next=11;break;case 8:e.prev=8,e.t0=e.catch(0),u.danger(e.t0.errorMessage);case 11:a.$apply();case 12:case"end":return e.stop()}},null,null,[[0,8]],Promise)},saveDisabled:function(){var e=p.deviceType;return _.get(p,"deviceTypeForm.$invalid")||!e||_.isEmpty(e.c8y_Coils)&&_.isEmpty(e.c8y_Registers)},changeDeviceType:function(){if(p.deviceType.fieldbusType)!function(){var t;_regeneratorRuntime().async(function(e){for(;;)switch(e.prev=e.next){case 0:return e.next=2,_regeneratorRuntime().awrap(L());case 2:t=e.sent,p.features=_.find(p.deviceTypesFeatures,{fieldbusType:t}),a.$apply();case 5:case"end":return e.stop()}},null,null,null,Promise)}();else{var e=p.formValue.fieldbusType;p.deviceType.fieldbusType=e,p.features=_.find(p.deviceTypesFeatures,{fieldbusType:e})}},messageIdSources:c.MessageIdSources,toggleMainEdit:function(){p.editingMain=!p.editingMain}}),e.$watch("vm.deviceType",function(e,t){t&&e!==t&&(d=!1)},!0),e.$on("$locationChangeStart",function(t,r){return _regeneratorRuntime().async(function(e){for(;;)switch(e.prev=e.next){case 0:if(d){e.next=13;break}return t.preventDefault(),e.prev=2,e.next=5,_regeneratorRuntime().awrap(o({title:s("Discard changes"),body:s("You are about to leave this page and discard the changes made. Do you want to proceed?"),status:"warning",labels:{ok:s("Discard")}}));case 5:d=!0,n.location.href=r,a.$apply(),e.next=13;break;case 10:e.prev=10,e.t0=e.catch(2),e.t0&&u.danger(e.t0);case 13:case"end":return e.stop()}},null,null,[[2,10]],Promise)})}e.$inject=["$rootScope","$scope","$window","$location","c8yBase","c8yDeviceDatabase","c8yTitle","c8yModal","c8yAlert","gettext","gettextCatalog"],angular.module("c8y.deviceDatabase4").component("c8yDeviceTypeDetail",{templateUrl:":::PLUGIN_PATH:::/detail/device-type-detail.html",bindings:{id:"<"},controllerAs:"vm",controller:e})}();
|
|
1
|
+
"use strict";function _typeof(e){return(_typeof="function"==typeof Symbol&&"symbol"==typeof Symbol.iterator?function(e){return typeof e}:function(e){return e&&"function"==typeof Symbol&&e.constructor===Symbol&&e!==Symbol.prototype?"symbol":typeof e})(e)}function _regeneratorRuntime(){_regeneratorRuntime=function(){return a};var a={},e=Object.prototype,l=e.hasOwnProperty,t="function"==typeof Symbol?Symbol:{},o=t.iterator||"@@iterator",r=t.asyncIterator||"@@asyncIterator",n=t.toStringTag||"@@toStringTag";function i(e,t,r){return Object.defineProperty(e,t,{value:r,enumerable:!0,configurable:!0,writable:!0}),e[t]}try{i({},"")}catch(e){i=function(e,t,r){return e[t]=r}}function c(e,t,r,n){var i,a,c,u,o=t&&t.prototype instanceof d?t:d,s=Object.create(o.prototype),l=new T(n||[]);return s._invoke=(i=e,a=r,c=l,u="suspendedStart",function(e,t){if("executing"===u)throw new Error("Generator is already running");if("completed"===u){if("throw"===e)throw t;return E()}for(c.method=e,c.arg=t;;){var r=c.delegate;if(r){var n=_(r,c);if(n){if(n===f)continue;return n}}if("next"===c.method)c.sent=c._sent=c.arg;else if("throw"===c.method){if("suspendedStart"===u)throw u="completed",c.arg;c.dispatchException(c.arg)}else"return"===c.method&&c.abrupt("return",c.arg);u="executing";var o=p(i,a,c);if("normal"===o.type){if(u=c.done?"completed":"suspendedYield",o.arg===f)continue;return{value:o.arg,done:c.done}}"throw"===o.type&&(u="completed",c.method="throw",c.arg=o.arg)}}),s}function p(e,t,r){try{return{type:"normal",arg:e.call(t,r)}}catch(e){return{type:"throw",arg:e}}}a.wrap=c;var f={};function d(){}function u(){}function s(){}var y={};i(y,o,function(){return this});var g=Object.getPrototypeOf,h=g&&g(g(R([])));h&&h!==e&&l.call(h,o)&&(y=h);var v=s.prototype=d.prototype=Object.create(y);function m(e){["next","throw","return"].forEach(function(t){i(e,t,function(e){return this._invoke(t,e)})})}function w(u,s){var t;this._invoke=function(r,n){function e(){return new s(function(e,t){!function t(e,r,n,o){var i=p(u[e],u,r);if("throw"!==i.type){var a=i.arg,c=a.value;return c&&"object"==_typeof(c)&&l.call(c,"__await")?s.resolve(c.__await).then(function(e){t("next",e,n,o)},function(e){t("throw",e,n,o)}):s.resolve(c).then(function(e){a.value=e,n(a)},function(e){return t("throw",e,n,o)})}o(i.arg)}(r,n,e,t)})}return t=t?t.then(e,e):e()}}function _(e,t){var r=e.iterator[t.method];if(void 0===r){if(t.delegate=null,"throw"===t.method){if(e.iterator.return&&(t.method="return",t.arg=void 0,_(e,t),"throw"===t.method))return f;t.method="throw",t.arg=new TypeError("The iterator does not provide a 'throw' method")}return f}var n=p(r,e.iterator,t.arg);if("throw"===n.type)return t.method="throw",t.arg=n.arg,t.delegate=null,f;var o=n.arg;return o?o.done?(t[e.resultName]=o.value,t.next=e.nextLoc,"return"!==t.method&&(t.method="next",t.arg=void 0),t.delegate=null,f):o:(t.method="throw",t.arg=new TypeError("iterator result is not an object"),t.delegate=null,f)}function b(e){var t={tryLoc:e[0]};1 in e&&(t.catchLoc=e[1]),2 in e&&(t.finallyLoc=e[2],t.afterLoc=e[3]),this.tryEntries.push(t)}function x(e){var t=e.completion||{};t.type="normal",delete t.arg,e.completion=t}function T(e){this.tryEntries=[{tryLoc:"root"}],e.forEach(b,this),this.reset(!0)}function R(t){if(t){var e=t[o];if(e)return e.call(t);if("function"==typeof t.next)return t;if(!isNaN(t.length)){var r=-1,n=function e(){for(;++r<t.length;)if(l.call(t,r))return e.value=t[r],e.done=!1,e;return e.value=void 0,e.done=!0,e};return n.next=n}}return{next:E}}function E(){return{value:void 0,done:!0}}return i(v,"constructor",u.prototype=s),i(s,"constructor",u),u.displayName=i(s,n,"GeneratorFunction"),a.isGeneratorFunction=function(e){var t="function"==typeof e&&e.constructor;return!!t&&(t===u||"GeneratorFunction"===(t.displayName||t.name))},a.mark=function(e){return Object.setPrototypeOf?Object.setPrototypeOf(e,s):(e.__proto__=s,i(e,n,"GeneratorFunction")),e.prototype=Object.create(v),e},a.awrap=function(e){return{__await:e}},m(w.prototype),i(w.prototype,r,function(){return this}),a.AsyncIterator=w,a.async=function(e,t,r,n,o){void 0===o&&(o=Promise);var i=new w(c(e,t,r,n),o);return a.isGeneratorFunction(t)?i:i.next().then(function(e){return e.done?e.value:i.next()})},m(v),i(v,n,"Generator"),i(v,o,function(){return this}),i(v,"toString",function(){return"[object Generator]"}),a.keys=function(r){var n=[];for(var e in r)n.push(e);return n.reverse(),function e(){for(;n.length;){var t=n.pop();if(t in r)return e.value=t,e.done=!1,e}return e.done=!0,e}},a.values=R,T.prototype={constructor:T,reset:function(e){if(this.prev=0,this.next=0,this.sent=this._sent=void 0,this.done=!1,this.delegate=null,this.method="next",this.arg=void 0,this.tryEntries.forEach(x),!e)for(var t in this)"t"===t.charAt(0)&&l.call(this,t)&&!isNaN(+t.slice(1))&&(this[t]=void 0)},stop:function(){this.done=!0;var e=this.tryEntries[0].completion;if("throw"===e.type)throw e.arg;return this.rval},dispatchException:function(r){if(this.done)throw r;var n=this;function e(e,t){return i.type="throw",i.arg=r,n.next=e,t&&(n.method="next",n.arg=void 0),!!t}for(var t=this.tryEntries.length-1;0<=t;--t){var o=this.tryEntries[t],i=o.completion;if("root"===o.tryLoc)return e("end");if(o.tryLoc<=this.prev){var a=l.call(o,"catchLoc"),c=l.call(o,"finallyLoc");if(a&&c){if(this.prev<o.catchLoc)return e(o.catchLoc,!0);if(this.prev<o.finallyLoc)return e(o.finallyLoc)}else if(a){if(this.prev<o.catchLoc)return e(o.catchLoc,!0)}else{if(!c)throw new Error("try statement without catch or finally");if(this.prev<o.finallyLoc)return e(o.finallyLoc)}}}},abrupt:function(e,t){for(var r=this.tryEntries.length-1;0<=r;--r){var n=this.tryEntries[r];if(n.tryLoc<=this.prev&&l.call(n,"finallyLoc")&&this.prev<n.finallyLoc){var o=n;break}}o&&("break"===e||"continue"===e)&&o.tryLoc<=t&&t<=o.finallyLoc&&(o=null);var i=o?o.completion:{};return i.type=e,i.arg=t,o?(this.method="next",this.next=o.finallyLoc,f):this.complete(i)},complete:function(e,t){if("throw"===e.type)throw e.arg;return"break"===e.type||"continue"===e.type?this.next=e.arg:"return"===e.type?(this.rval=this.arg=e.arg,this.method="return",this.next="end"):"normal"===e.type&&t&&(this.next=t),f},finish:function(e){for(var t=this.tryEntries.length-1;0<=t;--t){var r=this.tryEntries[t];if(r.finallyLoc===e)return this.complete(r.completion,r.afterLoc),x(r),f}},catch:function(e){for(var t=this.tryEntries.length-1;0<=t;--t){var r=this.tryEntries[t];if(r.tryLoc===e){var n=r.completion;if("throw"===n.type){var o=n.arg;x(r)}return o}}throw new Error("illegal catch attempt")},delegateYield:function(e,t,r){return this.delegate={iterator:R(e),resultName:t,nextLoc:r},"next"===this.method&&(this.arg=void 0),f}},a}!function(){function e(a,e,n,o,i,c,t,u,s,l,p){var f=this,r=f.id,d=!0;function y(r){var n,o;return _regeneratorRuntime().async(function(e){for(;;)switch(e.prev=e.next){case 0:return e.next=2,_regeneratorRuntime().awrap((t=r,g()?c.getEmptyDeviceType():c.getDeviceType(t)));case 2:n=e.sent,o=n.fieldbusType,_.assign(f,{deviceType:n,formValue:{fieldbusType:o},features:_.find(f.deviceTypesFeatures,{fieldbusType:o})}),a.$apply();case 6:case"end":return e.stop()}var t},null,null,null,Promise)}function g(){return"new"===r}function h(){f.deviceType.name?t.changeTitle({title:f.deviceType.name},{skipTitleTranslation:!0}):t.changeTitle({title:l("New device type")})}function v(e){return x(e,c.addElementId(c.getEmptyDiscreteOutput()),f.deviceType.c8y_Coils)}function m(e){return x(e,c.addElementId(c.getEmptyDiscreteInput()),f.deviceType.c8y_Coils)}function w(e){return T(e,c.addElementId(c.getEmptyHoldingRegister(f.deviceType)),f.deviceType.c8y_Registers)}function b(e){return T(e,c.addElementId(c.getEmptyInputRegister()),f.deviceType.c8y_Registers)}function x(e,t,r){return R("DiscreteIO",e,t,r)}function T(e,t,r){return R("Register",e,t,r)}function R(t,r,n,o){var i;return _regeneratorRuntime().async(function(e){for(;;)switch(e.prev=e.next){case 0:return e.prev=0,e.next=3,_regeneratorRuntime().awrap(c["edit".concat(t,"WithUI")](r||n,f.deviceType));case 3:i=e.sent,E(r,o,i),I(),e.next=11;break;case 8:e.prev=8,e.t0=e.catch(0),e.t0&&"escape key press"!==e.t0&&s.danger(e.t0);case 11:a.$apply();case 12:case"end":return e.stop()}},null,null,[[0,8]],Promise)}function E(e,t,r){(_.get(f.features,"holdingRegisters.number.useHex",!1)&&!r.number.startsWith("0x")&&(r.number="0x".concat(r.number)),e)?t[_.indexOf(t,e)]=r:t.push(r)}function D(t,r,n){return _regeneratorRuntime().async(function(e){for(;;)switch(e.prev=e.next){case 0:return e.prev=0,e.next=3,_regeneratorRuntime().awrap(u({title:l("Delete item"),body:p.getString(n,t),labels:{ok:l("Delete")},status:"danger"}));case 3:i.removeFromList(r,t),I(),e.next=10;break;case 7:e.prev=7,e.t0=e.catch(0),e.t0&&s.danger(e.t0);case 10:a.$apply();case 11:case"end":return e.stop()}},null,null,[[0,7]],Promise)}function L(){var t,r;return _regeneratorRuntime().async(function(e){for(;;)switch(e.prev=e.next){case 0:return e.prev=0,e.next=3,_regeneratorRuntime().awrap(u({title:l("Confirm device type change?"),body:p.getString("By changing device type, all changes will be lost. Do you really want to proceed?")}));case 3:return c.removeAllElements(f.deviceType),I(),t=f.formValue.fieldbusType,f.deviceType.fieldbusType=t,e.abrupt("return",t);case 10:return e.prev=10,e.t0=e.catch(0),r=f.deviceType.fieldbusType,f.formValue.fieldbusType=r,e.abrupt("return",r);case 15:case"end":return e.stop()}},null,null,[[0,10]],Promise)}function I(){var e=f.deviceType;_.assign(f,{discreteOutputsCategorized:c.getDiscreteOutputsCategorized(e),discreteInputsCategorized:c.getDiscreteInputsCategorized(e),holdingRegistersCategorized:c.getHoldingRegistersCategorized(e),inputRegistersCategorized:c.getInputRegistersCategorized(e)})}_.assign(f,{$onInit:function(){return _regeneratorRuntime().async(function(e){for(;;)switch(e.prev=e.next){case 0:return e.next=2,_regeneratorRuntime().awrap(_regeneratorRuntime().async(function(e){for(;;)switch(e.prev=e.next){case 0:return e.next=2,_regeneratorRuntime().awrap(c.getFeaturesManifestsAsync());case 2:f.deviceTypesFeatures=e.sent,a.$apply();case 4:case"end":return e.stop()}},null,null,null,Promise));case 2:return e.next=4,_regeneratorRuntime().awrap(y(r));case 4:I(),h(),a.$apply();case 7:case"end":return e.stop()}},null,null,null,Promise)},isNew:g,isEmpty:_.isEmpty,editDiscreteOutput:v,editDiscreteInput:m,editHoldingRegister:w,editInputRegister:b,addDiscreteOutput:v,addDiscreteInput:m,addHoldingRegister:w,addInputRegister:b,removeDiscreteOutput:function(e){return D(e,f.deviceType.c8y_Coils,l('Do you really want to remove "{{name}}"?'))},removeDiscreteInput:function(e){return D(e,f.deviceType.c8y_Coils,l('Do you really want to remove "{{name}}"?'))},removeHoldingRegister:function(e){return D(e,f.deviceType.c8y_Registers,l('Do you really want to remove "{{name}}"?'))},removeInputRegister:function(e){return D(e,f.deviceType.c8y_Registers,l('Do you really want to remove "{{name}}"?'))},save:function(t){var r;return _regeneratorRuntime().async(function(e){for(;;)switch(e.prev=e.next){case 0:return _.get(t,"c8y_MessageIdConfiguration.source")||(r=_.get(f.features.configuration,"messageIdConfiguration[0].value"),_.set(t,"c8y_MessageIdConfiguration.source",r)),e.prev=1,e.next=4,_regeneratorRuntime().awrap(c.save(t));case 4:s.success(l("Device type saved.")),d=!0,o.path("/deviceprotocols"),e.next=12;break;case 9:e.prev=9,e.t0=e.catch(1),s.danger(e.t0.errorMessage);case 12:a.$apply();case 13:case"end":return e.stop()}},null,null,[[1,9]],Promise)},saveDisabled:function(){var e=f.deviceType;return _.get(f,"deviceTypeForm.$invalid")||!e||_.isEmpty(e.c8y_Coils)&&_.isEmpty(e.c8y_Registers)},changeDeviceType:function(){if(f.deviceType.fieldbusType)!function(){var t;_regeneratorRuntime().async(function(e){for(;;)switch(e.prev=e.next){case 0:return e.next=2,_regeneratorRuntime().awrap(L());case 2:t=e.sent,f.features=_.find(f.deviceTypesFeatures,{fieldbusType:t}),a.$apply();case 5:case"end":return e.stop()}},null,null,null,Promise)}();else{var e=f.formValue.fieldbusType;f.deviceType.fieldbusType=e,f.features=_.find(f.deviceTypesFeatures,{fieldbusType:e})}},messageIdSources:c.MessageIdSources,toggleMainEdit:function(){f.editingMain=!f.editingMain}}),e.$watch("vm.deviceType",function(e,t){t&&e!==t&&(d=!1)},!0),e.$on("$locationChangeStart",function(t,r){return _regeneratorRuntime().async(function(e){for(;;)switch(e.prev=e.next){case 0:if(d){e.next=13;break}return t.preventDefault(),e.prev=2,e.next=5,_regeneratorRuntime().awrap(u({title:l("Discard changes"),body:l("You are about to leave this page and discard the changes made. Do you want to proceed?"),status:"warning",labels:{ok:l("Discard")}}));case 5:d=!0,n.location.href=r,a.$apply(),e.next=13;break;case 10:e.prev=10,e.t0=e.catch(2),e.t0&&s.danger(e.t0);case 13:case"end":return e.stop()}},null,null,[[2,10]],Promise)})}e.$inject=["$rootScope","$scope","$window","$location","c8yBase","c8yDeviceDatabase","c8yTitle","c8yModal","c8yAlert","gettext","gettextCatalog"],angular.module("c8y.deviceDatabase4").component("c8yDeviceTypeDetail",{templateUrl:":::PLUGIN_PATH:::/detail/device-type-detail.html",bindings:{id:"<"},controllerAs:"vm",controller:e})}();
|
|
@@ -1 +1 @@
|
|
|
1
|
-
"use strict";function _typeof(e){return(_typeof="function"==typeof Symbol&&"symbol"==typeof Symbol.iterator?function(e){return typeof e}:function(e){return e&&"function"==typeof Symbol&&e.constructor===Symbol&&e!==Symbol.prototype?"symbol":typeof e})(e)}function _slicedToArray(e,t){return _arrayWithHoles(e)||_iterableToArrayLimit(e,t)||_unsupportedIterableToArray(e,t)||_nonIterableRest()}function _nonIterableRest(){throw new TypeError("Invalid attempt to destructure non-iterable instance.\nIn order to be iterable, non-array objects must have a [Symbol.iterator]() method.")}function _iterableToArrayLimit(e,t){var n=null==e?null:"undefined"!=typeof Symbol&&e[Symbol.iterator]||e["@@iterator"];if(null!=n){var r,a,i=[],u=!0,o=!1;try{for(n=n.call(e);!(u=(r=n.next()).done)&&(i.push(r.value),!t||i.length!==t);u=!0);}catch(e){o=!0,a=e}finally{try{u||null==n.return||n.return()}finally{if(o)throw a}}return i}}function _arrayWithHoles(e){if(Array.isArray(e))return e}function _regeneratorRuntime(){_regeneratorRuntime=function(){return u};var u={},e=Object.prototype,l=e.hasOwnProperty,t="function"==typeof Symbol?Symbol:{},a=t.iterator||"@@iterator",n=t.asyncIterator||"@@asyncIterator",r=t.toStringTag||"@@toStringTag";function i(e,t,n){return Object.defineProperty(e,t,{value:n,enumerable:!0,configurable:!0,writable:!0}),e[t]}try{i({},"")}catch(e){i=function(e,t,n){return e[t]=n}}function o(e,t,n,r){var i,u,o,s,a=t&&t.prototype instanceof f?t:f,c=Object.create(a.prototype),l=new S(r||[]);return c._invoke=(i=e,u=n,o=l,s="suspendedStart",function(e,t){if("executing"===s)throw new Error("Generator is already running");if("completed"===s){if("throw"===e)throw t;return R()}for(o.method=e,o.arg=t;;){var n=o.delegate;if(n){var r=b(n,o);if(r){if(r===m)continue;return r}}if("next"===o.method)o.sent=o._sent=o.arg;else if("throw"===o.method){if("suspendedStart"===s)throw s="completed",o.arg;o.dispatchException(o.arg)}else"return"===o.method&&o.abrupt("return",o.arg);s="executing";var a=p(i,u,o);if("normal"===a.type){if(s=o.done?"completed":"suspendedYield",a.arg===m)continue;return{value:a.arg,done:o.done}}"throw"===a.type&&(s="completed",o.method="throw",o.arg=a.arg)}}),c}function p(e,t,n){try{return{type:"normal",arg:e.call(t,n)}}catch(e){return{type:"throw",arg:e}}}u.wrap=o;var m={};function f(){}function s(){}function c(){}var d={};i(d,a,function(){return this});var y=Object.getPrototypeOf,g=y&&y(y(w([])));g&&g!==e&&l.call(g,a)&&(d=g);var _=c.prototype=f.prototype=Object.create(d);function v(e){["next","throw","return"].forEach(function(t){i(e,t,function(e){return this._invoke(t,e)})})}function h(s,c){var t;this._invoke=function(n,r){function e(){return new c(function(e,t){!function t(e,n,r,a){var i=p(s[e],s,n);if("throw"!==i.type){var u=i.arg,o=u.value;return o&&"object"==_typeof(o)&&l.call(o,"__await")?c.resolve(o.__await).then(function(e){t("next",e,r,a)},function(e){t("throw",e,r,a)}):c.resolve(o).then(function(e){u.value=e,r(u)},function(e){return t("throw",e,r,a)})}a(i.arg)}(n,r,e,t)})}return t=t?t.then(e,e):e()}}function b(e,t){var n=e.iterator[t.method];if(void 0===n){if(t.delegate=null,"throw"===t.method){if(e.iterator.return&&(t.method="return",t.arg=void 0,b(e,t),"throw"===t.method))return m;t.method="throw",t.arg=new TypeError("The iterator does not provide a 'throw' method")}return m}var r=p(n,e.iterator,t.arg);if("throw"===r.type)return t.method="throw",t.arg=r.arg,t.delegate=null,m;var a=r.arg;return a?a.done?(t[e.resultName]=a.value,t.next=e.nextLoc,"return"!==t.method&&(t.method="next",t.arg=void 0),t.delegate=null,m):a:(t.method="throw",t.arg=new TypeError("iterator result is not an object"),t.delegate=null,m)}function T(e){var t={tryLoc:e[0]};1 in e&&(t.catchLoc=e[1]),2 in e&&(t.finallyLoc=e[2],t.afterLoc=e[3]),this.tryEntries.push(t)}function M(e){var t=e.completion||{};t.type="normal",delete t.arg,e.completion=t}function S(e){this.tryEntries=[{tryLoc:"root"}],e.forEach(T,this),this.reset(!0)}function w(t){if(t){var e=t[a];if(e)return e.call(t);if("function"==typeof t.next)return t;if(!isNaN(t.length)){var n=-1,r=function e(){for(;++n<t.length;)if(l.call(t,n))return e.value=t[n],e.done=!1,e;return e.value=void 0,e.done=!0,e};return r.next=r}}return{next:R}}function R(){return{value:void 0,done:!0}}return i(_,"constructor",s.prototype=c),i(c,"constructor",s),s.displayName=i(c,r,"GeneratorFunction"),u.isGeneratorFunction=function(e){var t="function"==typeof e&&e.constructor;return!!t&&(t===s||"GeneratorFunction"===(t.displayName||t.name))},u.mark=function(e){return Object.setPrototypeOf?Object.setPrototypeOf(e,c):(e.__proto__=c,i(e,r,"GeneratorFunction")),e.prototype=Object.create(_),e},u.awrap=function(e){return{__await:e}},v(h.prototype),i(h.prototype,n,function(){return this}),u.AsyncIterator=h,u.async=function(e,t,n,r,a){void 0===a&&(a=Promise);var i=new h(o(e,t,n,r),a);return u.isGeneratorFunction(t)?i:i.next().then(function(e){return e.done?e.value:i.next()})},v(_),i(_,r,"Generator"),i(_,a,function(){return this}),i(_,"toString",function(){return"[object Generator]"}),u.keys=function(n){var r=[];for(var e in n)r.push(e);return r.reverse(),function e(){for(;r.length;){var t=r.pop();if(t in n)return e.value=t,e.done=!1,e}return e.done=!0,e}},u.values=w,S.prototype={constructor:S,reset:function(e){if(this.prev=0,this.next=0,this.sent=this._sent=void 0,this.done=!1,this.delegate=null,this.method="next",this.arg=void 0,this.tryEntries.forEach(M),!e)for(var t in this)"t"===t.charAt(0)&&l.call(this,t)&&!isNaN(+t.slice(1))&&(this[t]=void 0)},stop:function(){this.done=!0;var e=this.tryEntries[0].completion;if("throw"===e.type)throw e.arg;return this.rval},dispatchException:function(n){if(this.done)throw n;var r=this;function e(e,t){return i.type="throw",i.arg=n,r.next=e,t&&(r.method="next",r.arg=void 0),!!t}for(var t=this.tryEntries.length-1;0<=t;--t){var a=this.tryEntries[t],i=a.completion;if("root"===a.tryLoc)return e("end");if(a.tryLoc<=this.prev){var u=l.call(a,"catchLoc"),o=l.call(a,"finallyLoc");if(u&&o){if(this.prev<a.catchLoc)return e(a.catchLoc,!0);if(this.prev<a.finallyLoc)return e(a.finallyLoc)}else if(u){if(this.prev<a.catchLoc)return e(a.catchLoc,!0)}else{if(!o)throw new Error("try statement without catch or finally");if(this.prev<a.finallyLoc)return e(a.finallyLoc)}}}},abrupt:function(e,t){for(var n=this.tryEntries.length-1;0<=n;--n){var r=this.tryEntries[n];if(r.tryLoc<=this.prev&&l.call(r,"finallyLoc")&&this.prev<r.finallyLoc){var a=r;break}}a&&("break"===e||"continue"===e)&&a.tryLoc<=t&&t<=a.finallyLoc&&(a=null);var i=a?a.completion:{};return i.type=e,i.arg=t,a?(this.method="next",this.next=a.finallyLoc,m):this.complete(i)},complete:function(e,t){if("throw"===e.type)throw e.arg;return"break"===e.type||"continue"===e.type?this.next=e.arg:"return"===e.type?(this.rval=this.arg=e.arg,this.method="return",this.next="end"):"normal"===e.type&&t&&(this.next=t),m},finish:function(e){for(var t=this.tryEntries.length-1;0<=t;--t){var n=this.tryEntries[t];if(n.finallyLoc===e)return this.complete(n.completion,n.afterLoc),M(n),m}},catch:function(e){for(var t=this.tryEntries.length-1;0<=t;--t){var n=this.tryEntries[t];if(n.tryLoc===e){var r=n.completion;if("throw"===r.type){var a=r.arg;M(n)}return a}}throw new Error("illegal catch attempt")},delegateYield:function(e,t,n){return this.delegate={iterator:w(e),resultName:t,nextLoc:n},"next"===this.method&&(this.arg=void 0),m}},u}function _toConsumableArray(e){return _arrayWithoutHoles(e)||_iterableToArray(e)||_unsupportedIterableToArray(e)||_nonIterableSpread()}function _nonIterableSpread(){throw new TypeError("Invalid attempt to spread non-iterable instance.\nIn order to be iterable, non-array objects must have a [Symbol.iterator]() method.")}function _unsupportedIterableToArray(e,t){if(e){if("string"==typeof e)return _arrayLikeToArray(e,t);var n=Object.prototype.toString.call(e).slice(8,-1);return"Object"===n&&e.constructor&&(n=e.constructor.name),"Map"===n||"Set"===n?Array.from(e):"Arguments"===n||/^(?:Ui|I)nt(?:8|16|32)(?:Clamped)?Array$/.test(n)?_arrayLikeToArray(e,t):void 0}}function _iterableToArray(e){if("undefined"!=typeof Symbol&&null!=e[Symbol.iterator]||null!=e["@@iterator"])return Array.from(e)}function _arrayWithoutHoles(e){if(Array.isArray(e))return _arrayLikeToArray(e)}function _arrayLikeToArray(e,t){(null==t||t>e.length)&&(t=e.length);for(var n=0,r=new Array(t);n<t;n++)r[n]=e[n];return r}function _objectSpread(t){for(var e=1;e<arguments.length;e++){var n=null!=arguments[e]?Object(arguments[e]):{},r=Object.keys(n);"function"==typeof Object.getOwnPropertySymbols&&r.push.apply(r,Object.getOwnPropertySymbols(n).filter(function(e){return Object.getOwnPropertyDescriptor(n,e).enumerable})),r.forEach(function(e){_defineProperty(t,e,n[e])})}return t}function _defineProperty(e,t,n){return t in e?Object.defineProperty(e,t,{value:n,enumerable:!0,configurable:!0,writable:!0}):e[t]=n,e}!function(){function e(u,s,e,o,t,c,a,i,n,l,r){var p={name:"feature-fieldbus4"},m=e.has("FIELDBUS_UI_VERSION")?e.get("FIELDBUS_UI_VERSION"):4,f="c8y_IsDeviceType",d="c8y_ModbusDeviceType",y="%%",g=o.createEnum(["DISCRETE_IO","REGISTER"]),v=o.createEnum([{name:"FPORT",label:"FPort"},{name:"PAYLOAD",label:"Payload"}]),h=o.dataFilePath("devicetypes"),b={common:{name:null},deviceType:{c8y_Coils:[],c8y_Registers:[]},element:{number:null},discreteIO:{},discreteOutput:{input:!1},discreteInput:{input:!0},register:{multiplier:1,divisor:1,offset:0,decimalPlaces:0,startBit:0,noBits:16,unit:"",signed:!1},canbusRegister:{noBits:64,offset:0},canopenRegister:{},holdingRegister:{input:!1},inputRegister:{input:!0}},T=[],M=[];return{ElementType:g,MessageIdSources:v,metaDefaults:{discreteIO:{enumValues:[{value:0,label:"0"},{value:1,label:"1"}]}},registerFeaturesManifest:function(e){var t=u.resolve(e);T.push(t),t.then(function(e){e&&M.push(e)})},areAnyFeaturesManifestsRegistered:function(){return S().then(function(e){return 0<e.length})},getFeaturesManifestsAsync:S,getFeaturesManifests:function(){return M},getDeviceTypeFeatures:$e,getElementTypeLabel:function(e,t){var n,r=_.get(e,"meta.type");if(r){var a=_.get(e,"input");if(r===g.DISCRETE_IO)n=l(a?"Discrete input":"Coil (discrete output)");else if(r===g.REGISTER)if(a)n=l("Input register");else{var i=$e(t);n=_.get(i,"holdingRegisters.elementTypeLabel",l("Holding register"))}}return n},getFieldbusVersion:U,getEmptyDeviceType:function(){var e=b.common,t=b.deviceType;return _.cloneDeep(_objectSpread({},e,t))},getAvailableDeviceTypes:function(t,n){var r,a,i,u;return _regeneratorRuntime().async(function(e){for(;;)switch(e.prev=e.next){case 0:return!0,r={},a={__and:[{__or:[{__has:f},{type:d}]},{fieldbusType:{__in:_.map(M,"fieldbusType")}}]},_.isEmpty(t)||(a.__and=[].concat(_toConsumableArray(a.__and),[t])),i=o.createListMapper(function(e){return R(e)}),e.next=7,_regeneratorRuntime().awrap(c.listQuery(a,r,!0,n).then(i));case 7:return u=e.sent,e.abrupt("return",u);case 9:case"end":return e.stop()}},null,null,null,Promise)},getDeviceTypeFromDevice:function(e){var t=_.flatten(_.map(M,"deviceFragments")),n=_.head(_.compact(_.at(e,t))),r=_.get(n,"type"),a=r&&r.match(/\/inventory\/managedObjects\/(\d+)/),i=_.nth(a,1);if(i)return w(i);return u.resolve(null)},getFieldbusVersionFromDevice:function(e){var t=_.map(M,"deviceConfiguration.fragment"),n=_.head(_.compact(_.at(e,t)));return _.get(n,"maxFieldbusVersion",4)},getDeviceType:w,save:O,exportDeviceTypeAndSaveAs:function(e){var t="".concat(e.name,".json"),n=JSON.stringify(function(e){return e.c8y_ModbusDeviceTypeInfo=function(e){return _.omit(_objectSpread({},_.get(e,"c8y_ModbusDeviceTypeInfo",{}),{name:e.name,minFieldbusUI:m,fieldbusType:e.fieldbusType}),["id","category","description"])}(e),e.c8y_Coils=_.map(e.c8y_Coils,Z),e.c8y_Registers=_.map(e.c8y_Registers,Z),_.pick(e,["c8y_ModbusDeviceTypeInfo","c8y_Coils","c8y_Registers","c8y_useServerTime","c8y_MessageIdConfiguration"])}(e),null,2),r=new Blob([n],{type:"application/json"});window.saveAs(r,t)},importDeviceTypeWithUI:function(){return n({component:"c8yImportDeviceTypeModal"}).then(O)},getPredefinedDeviceTypeInfos:function(){var n,r;return _regeneratorRuntime().async(function(e){for(;;)switch(e.prev=e.next){case 0:if(void 0,t=Je(),n=t&&_.map(t)){e.next=8;break}return r="".concat(h,"/index.json"),e.t0=o,e.next=6,_regeneratorRuntime().awrap(s.get(r));case 6:e.t1=e.sent,n=e.t0.getResData.call(e.t0,e.t1);case 8:return e.abrupt("return",_.flow([ee,te])(n));case 9:case"end":return e.stop()}var t},null,null,null,Promise)},isDeviceTypeSupported:ne,isDeviceTypeSupportedAsync:function(n){return S().then(function(e){return _.map(e,"fieldbusType")}).then(function(e){var t=Ge(n);return _.includes(e,t)})},getPredefinedDeviceType:He,downloadPredefinedDeviceTypeAndSaveAs:function(t){var n,r,a,i,u,o;return _regeneratorRuntime().async(function(e){for(;;)switch(e.prev=e.next){case 0:return n="".concat(t,".json"),r="predefinedDeviceTypesUrl/".concat(n),e.next=4,_regeneratorRuntime().awrap(s.get(r));case 4:a=e.sent,i=JSON.stringify(a.data,null,2),u=a.headers("Content-Type"),o=new Blob([i],{type:u}),window.saveAs(o,n);case 9:case"end":return e.stop()}},null,null,null,Promise)},upgradeDeviceType:R,getElementsWithMeta:function(t){var e=_.get(t,"c8y_Coils",[]),n=_.get(t,"c8y_Registers",[]);return _.union(_.map(e,function(e){return re(e)}),_.map(n,function(e){return de(e,t)}))},addDiscreteIOsMeta:function(e){if(e)return e.c8y_Coils=_.map(e.c8y_Coils,re),e;return},addDiscreteIOMeta:re,removeDiscreteIOMeta:function(e){var t=e;t.meta&&(t=_.flow([ce,le,pe,me,fe])(t),_.unset(t,"meta"));return t},addRegistersMeta:function(t){if(t)return t.c8y_Registers=_.map(t.c8y_Registers,function(e){return de(e,t)}),t;return},addRegisterMeta:de,removeRegisterMeta:function(e){var t=e;e.meta&&(t=_.flow([Ee,De,Oe,Ae,je,xe,Ce,Ue,Ne,Le])(e),_.unset(t,"meta"));return t},removeAllElements:function(e){e.c8y_Registers=[],e.c8y_Coils=[]},getElementRefId:function(e){var t=_.compact(ke(e));return _.head(t)},findElementBestMatchingRefId:function(e,t,n){return _(e).chain().map(function(e){return{score:function(e,t,n){var r=e.meta.type.value===n,a=ke(e),i=_.findIndex(a,_.negate(_.isUndefined)),u=_.indexOf(a,t);return r&&0<=u?i-u:void 0}(e,t,n),element:e}}).reject(function(e){return _.isUndefined(e.score)}).orderBy("score").head().get("element").value()},getDiscreteOutputsCategorized:function(e){return _(e.c8y_Coils).reject("input").groupBy(Ve).value()},getDiscreteInputsCategorized:function(e){return _(e.c8y_Coils).filter("input").groupBy(Ve).value()},getHoldingRegistersCategorized:function(e){return _(e.c8y_Registers).reject("input").groupBy(Ve).value()},getInputRegistersCategorized:function(e){return _(e.c8y_Registers).filter("input").groupBy(Ve).value()},getEmptyDiscreteOutput:function(){return _.cloneDeep(_objectSpread({},b.common,b.element,b.discreteIO,b.discreteOutput))},getEmptyDiscreteInput:function(){return _.cloneDeep(_objectSpread({},b.common,b.element,b.discreteIO,b.discreteInput))},getEmptyHoldingRegister:function(e){return"canbus"!==e.fieldbusType?"canopen"!==e.fieldbusType?_.cloneDeep(_objectSpread({},b.common,b.element,b.register,b.holdingRegister)):_.cloneDeep(_objectSpread({},b.common,b.canopenRegister)):_.cloneDeep(_objectSpread({},b.common,b.element,b.register,b.canbusRegister,b.holdingRegister))},getEmptyInputRegister:function(){return _.cloneDeep(_objectSpread({},b.common,b.element,b.register,b.inputRegister))},editDiscreteIOWithUI:function(e,t){return n({component:"c8yConfigureDiscreteIOModal",title:Be(e),resolve:_objectSpread({title:function(){return Be(e)}},Fe(e,t.c8y_Coils,t))})},editRegisterWithUI:function(e,t){return n({component:"c8yConfigureRegisterModal",resolve:_objectSpread({title:function(){return function(e,t){var n=$e(t);if(e.input)return e.name?r.getString('Edit input register: "{{name}}"',e):l("New input register");if(e.name)return r.getString(_.get(n,"holdingRegisters.editRegisterModalTitle",l('Edit holding register: "{{name}}"')),e);return _.get(n,"holdingRegisters.newRegisterModalTitle",l("New holding register"))}(e,t)}},Fe(e,t.c8y_Registers,t))})},addEmptyEnumValue:function(e){e.meta.enumValues=e.meta.enumValues||[],e.meta.enumValues.push({value:null,label:null})},removeEnumValue:function(e,t){e.meta.enumValues=_.without(e.meta.enumValues,t)},areOverlappingRegisters:function(e,t,n){var r=We(e,n),a=We(t,n),i=Math.max(r.start,a.start),u=Math.min(r.end,a.end);return i<=u},getValuesRange:we,openFieldbusSelector:function(e){return n({component:"c8ySelectFieldbusPropertyModal",resolve:{modalParams:function(){return _.defaults(e,{})}}})},downloadPredefinedDeviceTypeHref:function(n){var r,a;return _regeneratorRuntime().async(function(e){for(;;)switch(e.prev=e.next){case 0:return r=n.id||n,e.next=3,_regeneratorRuntime().awrap(He(r));case 3:return a=e.sent,e.abrupt("return",(t=a,window.btoa(unescape(encodeURIComponent(JSON.stringify(t,null,2))))));case 5:case"end":return e.stop()}var t},null,null,null,Promise)},predefinedDeviceTypeHrefFilename:function(e){return"".concat(e.id,".json")},isFieldbusDevice:function(t){return _.some(M,function(e){return _.some(e.deviceFragments,function(e){return _.has(t,e)})})},isFeatureFieldbus4Available:function(){return t.isSubscribed(p)},addElementId:L};function S(){return u.all(T).then(_.compact)}function w(t){var n;return _regeneratorRuntime().async(function(e){for(;;)switch(e.prev=e.next){case 0:return e.t0=o,e.next=3,_regeneratorRuntime().awrap(c.detail(t));case 3:return e.t1=e.sent,n=e.t0.getResData.call(e.t0,e.t1),e.abrupt("return",R(n));case 6:case"end":return e.stop()}},null,null,null,Promise)}function R(e){return _.flow([I,E,D,x,C])(e)}function I(e){return _.forEach(e.c8y_Coils,function(e){!e.enumValues&&e.statusMapping&&_.isArray(e.statusMapping.enumValues)&&(e.enumValues={0:e.statusMapping.enumValues[0],1:e.statusMapping.enumValues[1]},_.unset(e,"statusMapping.enumValues")),_.isUndefined(e.input)&&(e.input=b.discreteOutput.input)}),e}function E(e){var r=$e(e);return _.forEach(e.c8y_Registers,function(e){var t=e.input?"inputRegisters":"holdingRegisters",n=_.get(r,t,{});_.get(n,"startBit")&&_.defaults(e,{startBit:b.register.startBit}),_.get(n,"noBits")&&_.defaults(e,{noBits:b.register.noBits}),_.get(n,"options.signed")&&_.defaults(e,{signed:b.register.signed}),!e.unit&&e.measurementMapping&&e.measurementMapping.unit&&(e.unit=e.measurementMapping.unit,_.unset(e,"measurementMapping.unit")),_.isUndefined(e.input)&&(e.input=b.holdingRegister.input)}),e}function D(e){return e.fieldbusType=Ge(e),e}function O(r){var t;return _regeneratorRuntime().async(function(e){for(;;)switch(e.prev=e.next){case 0:return t=_.flow([j,x,N,k,P,V,C,A])(r),e.abrupt("return",c.save(t).then(o.getResData).then(function(e){return r.id?e:(t=e,_regeneratorRuntime().async(function(e){for(;;)switch(e.prev=e.next){case 0:return e.prev=0,e.next=3,_regeneratorRuntime().awrap(i.createIdentity(t,{type:"c8y_SmartRestDeviceIdentifier",externalId:t.name},{silentError:!0}));case 3:return e.abrupt("return",e.sent);case 6:return e.prev=6,e.t0=e.catch(0),n=u.reject.bind(u,{errorMessage:e.t0.data.message}),e.abrupt("return",c.remove(t).then(n,n));case 10:case"end":return e.stop()}},null,null,[[0,6]],Promise)).then(function(){return e});var t,n}));case 2:case"end":return e.stop()}},null,null,null,Promise)}function A(e){return c.addGlobalFlag(e,!0)}function j(e){if(!e.type){var t=$e(e);e.type=_.get(t,"type",d)}return e}function x(e){return _.set(e,f,{})}function C(e){return _.set(e,"fieldbusVersion",U(e))}function U(t){var e=$e(t).versions,n=_.findLast(e,function(e){return _.some(e.checks,function(e){return e(t)})});return _.get(n,"number",4)}function N(e){return e.c8y_Coils=_.map(e.c8y_Coils,L),e.c8y_Registers=_.map(e.c8y_Registers,L),e}function L(e){return e.id||(e.id=String(Math.random()).substr(2)),e}function k(e){return e.c8y_Coils=_.orderBy(e.c8y_Coils,["input","number"]),e.c8y_Registers=_.orderBy(e.c8y_Registers,["input","number","startBit","index","subIndex"]),e}function P(e){var t=$e(e);return!!_.get(t,"configuration.messageIdConfiguration.length")&&(e.c8y_MessageTypes=function(n){return _.reduce(["c8y_Registers","c8y_Coils"],function(e,t){return _.merge(e,function(t,r){var e=_.groupBy(t[r],"messageTypeId"),n=_.mapValues(e,function(e){return _.map(e,function(e){return _.indexOf(t[r],e)})});return _.reduce(n,function(e,t,n){return e[n]={},e[n][r]=t,e},{})}(n,t))},{})}(e)),e}function V(e){var t=function(e){var t=$e(e).customizeSmartRestTemplates||_.identity,n={requestTemplates:_.flattenDeep([function(e){return{msgId:100,method:"PUT",contentType:"application/vnd.com.nsn.cumulocity.managedObject+json",placeholder:y,resourceUri:"/inventory/managedObjects/".concat(y),templateString:Y([{key:"c8y_CoilStatus",value:new K(B(e.c8y_Coils).map(function(e){return{key:e.name,value:y,raw:!0}}).value())}]),values:["UNSIGNED"].concat(_toConsumableArray(B(e.c8y_Coils).map(function(){return"UNSIGNED"}).value()))}}(e),function(e){return{msgId:101,method:"PUT",contentType:"application/vnd.com.nsn.cumulocity.managedObject+json",placeholder:y,resourceUri:"/inventory/managedObjects/".concat(y),templateString:Y([{key:"c8y_RegisterStatus",value:new K(B(e.c8y_Registers).map(function(e){return{key:e.name,value:y,raw:!0}}).value())}]),values:["UNSIGNED"].concat(_toConsumableArray(B(e.c8y_Registers).map(function(){return"NUMBER"}).value()))}}(e),[F(102,"EXECUTING"),F(103,"SUCCESSFUL"),F(104,"FAILED")],function(e){return _.flow([$,J,z])({deviceType:e,msgId:300,templates:[]}).templates}(e)]),responseTemplates:_.flattenDeep([{msgId:200,condition:"$.c8y_SetCoil",pattern:["$.id","$.c8y_SetCoil.address","$.c8y_SetCoil.input","$.c8y_SetCoil.coil","$.c8y_SetCoil.value"]},{msgId:201,condition:"$.c8y_SetRegister",pattern:["$.id","$.c8y_SetRegister.ipAddress","$.c8y_SetRegister.address","$.c8y_SetRegister.input","$.c8y_SetRegister.register","$.c8y_SetRegister.startBit","$.c8y_SetRegister.noBits","$.c8y_SetRegister.value"]},{msgId:202,condition:"$.c8y_ModbusDevice",pattern:["$.id","$.deviceId","$.c8y_ModbusDevice.id","$.c8y_ModbusDevice.address","$.c8y_ModbusDevice.type","$.c8y_ModbusDevice.protocol"]},{msgId:203,condition:"$.c8y_ModbusSource",pattern:["$.id"]}])};return t(n,e)}(e);return _.set(e,"com_cumulocity_model_smartrest_SmartRestTemplate",t)}function B(e){return _(e).filter("statusMapping.status")}function F(e,t){return{msgId:e,method:"PUT",contentType:"application/vnd.com.nsn.cumulocity.operation+json",placeholder:y,resourceUri:"/devicecontrol/operations/".concat(y),templateString:Y({status:t}),values:["UNSIGNED"]}}function $(e){var t=e.deviceType,n=e.msgId,r=e.templates,a=_.filter(t.c8y_Coils,"alarmMapping"),i=_.filter(t.c8y_Registers,"alarmMapping"),u=$e(t),o=u.getCoilSource||W,s=u.getRegisterSource||H,c=n;return _.forEach(a,function(e){r.push(G(c,t,e.alarmMapping,o(e))),e.alarmMapping.raiseAlarmTemplate=c,c+=1}),_.forEach(i,function(e){r.push(G(c,t,e.alarmMapping,s(e))),e.alarmMapping.raiseAlarmTemplate=c,c+=1}),{deviceType:t,templates:r,msgId:c}}function G(e,t,n,r){return{msgId:e,method:"POST",contentType:"application/vnd.com.nsn.cumulocity.alarm+json",accept:"application/vnd.com.nsn.cumulocity.alarm+json",placeholder:y,resourceUri:"/alarm/alarms",templateString:Y([{key:"source",value:{id:y}},{key:"type",value:n.type},{key:"status",value:a.status.ACTIVE},{key:"severity",value:n.severity},{key:"time",value:y},{key:"text",value:n.text},{key:r.key,value:r.value}]),values:["UNSIGNED",q(t)]}}function W(e){return{key:"c8y_ModbusSource",value:{coil:_.pick(e,"input","number")}}}function H(e){return{key:"c8y_ModbusSource",value:{register:_.pick(e,["input","number","startBit","noBits"])}}}function J(e){var r=e.deviceType,t=e.msgId,a=e.templates,n=_([].concat(_toConsumableArray(r.c8y_Coils),_toConsumableArray(r.c8y_Registers))).filter("measurementMapping").groupBy("measurementMapping.type").value(),i=t;return _.forEach(n,function(e,t){var n=_.map(e,function(e){return _.set(e.measurementMapping,"unit",e.unit||e.measurementMapping.unit)});a.push(function(e,t,n,i){return{msgId:e,method:"POST",contentType:"application/vnd.com.nsn.cumulocity.measurement+json",placeholder:y,resourceUri:"/measurement/measurements",templateString:Y(function(){var r=n,a=_defineProperty({source:{id:y},time:y,type:r},r,{});return _.forEach(i,function(e){var t=e.series,n=e.unit;a[r][t]={value:"%n",unit:n}}),a}()),values:["UNSIGNED",q(t)].concat(_toConsumableArray(_.map(i,function(){return"NUMBER"})))}}(i,r,t,n)),_.forEach(n,function(e){e.sendMeasurementTemplate=i,_.unset(e,"unit")}),i+=1}),{deviceType:r,templates:a,msgId:i}}function z(e){var t=e.deviceType,n=e.msgId,r=e.templates,a=[].concat(_toConsumableArray(t.c8y_Coils),_toConsumableArray(t.c8y_Registers)),i=n;return _.forEach(a,function(e){_.isUndefined(e.eventMapping)||(r.push(function(e,t,n,r){return{msgId:e,method:"POST",contentType:"application/vnd.com.nsn.cumulocity.event+json",placeholder:y,resourceUri:"/event/events",templateString:Y([{key:"source",value:{id:y}},{key:"time",value:y},{key:"type",value:r.type},{key:"text",value:r.text},{key:n.name,value:y,raw:!0}]),values:["UNSIGNED",q(t),"NUMBER"]}}(i,t,e,e.eventMapping)),e.eventMapping.eventTemplate=i,i+=1)}),{deviceType:t,templates:r,msgId:i}}function q(e){return e.c8y_useServerTime?"NOW":"DATE"}function Y(e,t){var n;return e instanceof K?n=Q(e.kvObj):_.isArray(e)?n=Q(e):_.isObjectLike(e)&&(n=angular.toJson(e)),n=n.replace(/"%n"/g,t||y)}function Q(e){var t=_.map(e,X);return"{".concat(t.join(","),"}")}function X(e){var t,n=e.key,r=e.value,a=e.raw,i={};return(t=r instanceof K?(i[n]=":::INNER_OBJECT_STRING:::",JSON.stringify(i).replace('":::INNER_OBJECT_STRING:::"',Q(r.kvObj))):a?(i[n]=":::RAW_VALUE:::",JSON.stringify(i).replace('":::RAW_VALUE:::"',r)):(i[n]=r,JSON.stringify(i))).substr(1,t.length-2)}function K(e){this.kvObj=e}function Z(e){return e.eventMapping&&(e.eventMapping=_.omit(e.eventMapping,["eventTemplate"])),e.alarmMapping&&(e.alarmMapping=_.omit(e.alarmMapping,["raiseAlarmTemplate"])),e.measurementMapping&&(e.measurementMapping=_.omit(e.measurementMapping,["sendMeasurementTemplate"])),_.omit(e,["id","originalName","originalNumber","originalStartBit","meta"])}function ee(e){return _.filter(e,function(e){return ne(e)})}function te(e){return _.filter(e,function(e){return e.minFieldbusUI<=m})}function ne(e){var t=_.map(M,"fieldbusType"),n=Ge(e);return _.includes(t,n)}function re(e){return e.meta=e.meta||{},_.flow([ae,ie,ue,oe,se])(e)}function ae(e){return e.meta.type=e.meta.type||g.DISCRETE_IO,e}function ie(e){return e.meta.enumType=e.meta.enumType||!!e.enumValues,e.meta.enumValues=e.meta.enumValues||e.enumValues&&_.map(e.enumValues,_e),e}function ue(e){var t=_.get(e,"statusMapping.status");return e.meta.showStatus=e.meta.showStatus||"read"===t||"write"===t,e.meta.updateStatus=e.meta.updateStatus||"write"===t,e}function oe(e){var t=_.get(e,"alarmMapping.raiseAlarmTemplate");return e.meta.raiseAlarm=e.meta.raiseAlarm||!_.isUndefined(t),e}function se(e){var t=_.get(e,"eventMapping.eventTemplate");return e.meta.sendEvent=e.meta.sendEvent||!_.isUndefined(t),e}function ce(e){return e.meta.type=void 0,e}function le(r){return r.meta.enumType?(r.enumValues={},_.forEach(r.meta.enumValues,function(e){var t=e.value,n=e.label;r.enumValues[t]=n})):r.enumValues=void 0,r}function pe(e){return e.meta.showStatus||e.meta.updateStatus?(e.statusMapping=e.statusMapping||{},e.meta.showStatus&&(e.statusMapping.status="read"),e.meta.updateStatus&&(e.statusMapping.status="write")):e.statusMapping=void 0,e}function me(e){return e.meta.raiseAlarm?(e.alarmMapping=e.alarmMapping||{},e.alarmMapping.raiseAlarmTemplate=null):e.alarmMapping=void 0,e}function fe(e){return e.meta.sendEvent?(e.eventMapping=e.eventMapping||{},e.eventMapping.eventTemplate=null):e.eventMapping=void 0,e}function de(e,t){return e.meta=e.meta||{},_.flow([ye,ge,ve,he,be,Te,Me,function(e){return function(e,t){var n=$e(t)[e.input?"inputRegisters":"holdingRegisters"],r=_.get(n,"dataType.choices",[]);return e.meta.dataType=e.meta.dataType||_.find(r.values(),{value:e.dataType}),e}(e,t)},function(e){return function(e,t){var n=$e(t)[e.input?"inputRegisters":"holdingRegisters"],r=_.get(n,"accessType.choices",[]);return e.meta.accessType=e.meta.accessType||_.find(r.values(),{value:e.accessType}),e}(e,t)},Se])(e)}function ye(e){return e.meta.type=e.meta.type||g.REGISTER,e}function ge(e){return e.meta.enumType=e.meta.enumType||!!e.enumValues,e.meta.enumValues=e.meta.enumValues||e.enumValues&&_.map(e.enumValues,_e),e}function _e(e,t){return{label:e,value:parseFloat(t)}}function ve(e){var t=_.get(e,"statusMapping.status");return e.meta.showStatus=e.meta.showStatus||"read"===t||"write"===t,e.meta.updateStatus=e.meta.updateStatus||"write"===t,e}function he(e){var t=_.get(e,"measurementMapping.sendMeasurementTemplate");return e.meta.sendMeasurement=e.meta.sendMeasurement||!_.isUndefined(t),e}function be(e){var t=_.get(e,"alarmMapping.raiseAlarmTemplate");return e.meta.raiseAlarm=e.meta.raiseAlarm||!_.isUndefined(t),e}function Te(e){var t=_.get(e,"eventMapping.eventTemplate");return e.meta.sendEvent=e.meta.sendEvent||!_.isUndefined(t),e}function Me(e){return e.meta.sendManagedObjectUpdate=e.meta.sendManagedObjectUpdate||!!e.managedObjectMapping,e}function Se(e){return e.meta.valuesRange=e.meta.valuesRange||we(e),e}function we(e){var t,n=_.get(e.meta,"dataType",{}),r=_.get(n,"baseValuesRange",{}),a=Re([n.divisor,e.divisor,1]),i=Re([n.multiplier,e.multiplier,1]),u=Re([n.decimalPlaces,e.decimalPlaces,0]),o=Re([n.noBits,e.noBits]),s=Re([n.signed,e.signed,!1]),c=r.min,l=r.max;return _.isUndefined(u)||null===u||_.isUndefined(i)||_.isUndefined(a)||(t=Ie(i*Math.pow(10,-u)/a)),_.isUndefined(s)||_.isUndefined(o)||_.isUndefined(t)||(_.isUndefined(c)&&(c=Ie((s?-Math.pow(2,o-1):0)*t)),_.isUndefined(l)&&(l=Ie((s?Math.pow(2,o-1)-1:Math.pow(2,o)-1)*t))),{base:{decimalPlaces:_.isNull(u)?void 0:u,step:t,min:c,max:l},custom:{decimalPlaces:_.isNull(u)?void 0:u,step:t,min:Math.max(c,e.min||c),max:Math.min(l,e.max||l)},mask:{min:0,max:Math.pow(2,o)},possiblePrecisionLoss:function(e,t){var n=53<e,r=!_.isUndefined(t)&&10<=function(e){return Math.floor(e)!==e?(_slicedToArray(e.toString().split("."),2)[1]||"").length:0}(t);return n||r}(o,t)}}function Re(e){return _.head(_.reject(e,_.isUndefined))}function Ie(e){var t=Math.pow(10,10);return Math.round(e*t)/t}function Ee(e){return e.meta.type=void 0,e}function De(r){return r.meta.enumType?(r.enumValues={},_.forEach(r.meta.enumValues,function(e){var t=e.value,n=e.label;r.enumValues[t]=n})):r.enumValues=void 0,r}function Oe(e){return e.meta.showStatus||e.meta.updateStatus?(e.statusMapping=e.statusMapping||{},e.meta.showStatus&&(e.statusMapping.status="read"),e.meta.updateStatus&&(e.statusMapping.status="write")):e.statusMapping=void 0,e}function Ae(e){return e.meta.sendMeasurement?(e.measurementMapping=e.measurementMapping||{},e.measurementMapping.sendMeasurementTemplate=null):e.measurementMapping=void 0,e}function je(e){return e.meta.raiseAlarm?(e.alarmMapping=e.alarmMapping||{},e.alarmMapping.raiseAlarmTemplate=null):e.alarmMapping=void 0,e}function xe(e){return e.meta.sendEvent?(e.eventMapping=e.eventMapping||{},e.eventMapping.eventTemplate=null):e.eventMapping=void 0,e}function Ce(e){return e.meta.sendManagedObjectUpdate?e.managedObjectMapping=e.managedObjectMapping||{}:e.managedObjectMapping=void 0,e}function Ue(e){return e.meta.dataType?e.dataType=e.meta.dataType.value:e.dataType=void 0,e}function Ne(e){return e.meta.accessType?e.accessType=e.meta.accessType.value:e.accessType=void 0,e}function Le(e){return e.meta.valuesRange=void 0,e}function ke(e){return[function(e){return _.get(e,"id")}(e),function(e){return Pe(e,["input","number","startBit"])}(e),function(e){return Pe(e,["input","number"])}(e),function(e){return Pe(e,["number"])}(e)]}function Pe(e,t){var n=_.map(t,_.propertyOf(e));if(_.every(n,_.negate(_.isUndefined)))return n.join(",")}function Ve(e){return e.category||""}function Be(e){return e.input?e.name?r.getString('Edit discrete input: "{{name}}"',e):l("New discrete input"):e.name?r.getString('Edit coil: "{{name}}"',e):l("New coil")}function Fe(e,t,n){return{element:function(){return _.cloneDeep(function(e){if(e)return _objectSpread({},e,{meta:{original:_.cloneDeep(e)}});return}(e))},existingElements:function(){return _.cloneDeep(t)},existingCategories:function(){return _.cloneDeep(function(e){return _([].concat(_toConsumableArray(_.get(e,"c8y_Coils",[])),_toConsumableArray(_.get(e,"c8y_Registers",[])))).filter("category").map("category").uniq().map(function(e){return{name:e}}).value()}(n))},deviceType:function(){return _.cloneDeep(n)},fieldbusType:function(){return Ge(n)},features:function(){return $e(n)}}}function $e(e){return _.find(M,{fieldbusType:Ge(e)})||{}}function Ge(e){return e.fieldbusType||"modbus"}function We(e,t){var n=e.number,r=e.startBit,a=e.noBits,i=n*_.get(t,"noBits.base",_.get(t,"noBits.max"))+r;return{start:i,end:i+a-1}}function He(r){var a,i;return _regeneratorRuntime().async(function(e){for(;;)switch(e.prev=e.next){case 0:if(t=r,void 0,n=(Je()||{})[t],a=n&&_.clone(n._item)){e.next=8;break}return i="".concat(h,"/").concat(r,".json"),e.t0=o,e.next=6,_regeneratorRuntime().awrap(s.get(i));case 6:return e.t1=e.sent,e.abrupt("return",e.t0.getResData.call(e.t0,e.t1));case 8:return e.abrupt("return",a);case 9:case"end":return e.stop()}var t,n},null,null,null,Promise)}function Je(){return _.get(window,"c8y.collections.devicetypes")}}e.$inject=["$q","$http","$injector","c8yBase","c8yTenant","c8yInventory","c8yAlarms","c8yIdentity","c8yModal","gettext","gettextCatalog"],angular.module("c8y.deviceDatabase4").factory("c8yDeviceDatabase",e)}();
|
|
1
|
+
"use strict";function _typeof(e){return(_typeof="function"==typeof Symbol&&"symbol"==typeof Symbol.iterator?function(e){return typeof e}:function(e){return e&&"function"==typeof Symbol&&e.constructor===Symbol&&e!==Symbol.prototype?"symbol":typeof e})(e)}function _slicedToArray(e,t){return _arrayWithHoles(e)||_iterableToArrayLimit(e,t)||_unsupportedIterableToArray(e,t)||_nonIterableRest()}function _nonIterableRest(){throw new TypeError("Invalid attempt to destructure non-iterable instance.\nIn order to be iterable, non-array objects must have a [Symbol.iterator]() method.")}function _iterableToArrayLimit(e,t){var n=null==e?null:"undefined"!=typeof Symbol&&e[Symbol.iterator]||e["@@iterator"];if(null!=n){var r,a,i=[],u=!0,o=!1;try{for(n=n.call(e);!(u=(r=n.next()).done)&&(i.push(r.value),!t||i.length!==t);u=!0);}catch(e){o=!0,a=e}finally{try{u||null==n.return||n.return()}finally{if(o)throw a}}return i}}function _arrayWithHoles(e){if(Array.isArray(e))return e}function _regeneratorRuntime(){_regeneratorRuntime=function(){return u};var u={},e=Object.prototype,l=e.hasOwnProperty,t="function"==typeof Symbol?Symbol:{},a=t.iterator||"@@iterator",n=t.asyncIterator||"@@asyncIterator",r=t.toStringTag||"@@toStringTag";function i(e,t,n){return Object.defineProperty(e,t,{value:n,enumerable:!0,configurable:!0,writable:!0}),e[t]}try{i({},"")}catch(e){i=function(e,t,n){return e[t]=n}}function o(e,t,n,r){var i,u,o,s,a=t&&t.prototype instanceof f?t:f,c=Object.create(a.prototype),l=new S(r||[]);return c._invoke=(i=e,u=n,o=l,s="suspendedStart",function(e,t){if("executing"===s)throw new Error("Generator is already running");if("completed"===s){if("throw"===e)throw t;return R()}for(o.method=e,o.arg=t;;){var n=o.delegate;if(n){var r=b(n,o);if(r){if(r===m)continue;return r}}if("next"===o.method)o.sent=o._sent=o.arg;else if("throw"===o.method){if("suspendedStart"===s)throw s="completed",o.arg;o.dispatchException(o.arg)}else"return"===o.method&&o.abrupt("return",o.arg);s="executing";var a=p(i,u,o);if("normal"===a.type){if(s=o.done?"completed":"suspendedYield",a.arg===m)continue;return{value:a.arg,done:o.done}}"throw"===a.type&&(s="completed",o.method="throw",o.arg=a.arg)}}),c}function p(e,t,n){try{return{type:"normal",arg:e.call(t,n)}}catch(e){return{type:"throw",arg:e}}}u.wrap=o;var m={};function f(){}function s(){}function c(){}var d={};i(d,a,function(){return this});var y=Object.getPrototypeOf,g=y&&y(y(w([])));g&&g!==e&&l.call(g,a)&&(d=g);var _=c.prototype=f.prototype=Object.create(d);function v(e){["next","throw","return"].forEach(function(t){i(e,t,function(e){return this._invoke(t,e)})})}function h(s,c){var t;this._invoke=function(n,r){function e(){return new c(function(e,t){!function t(e,n,r,a){var i=p(s[e],s,n);if("throw"!==i.type){var u=i.arg,o=u.value;return o&&"object"==_typeof(o)&&l.call(o,"__await")?c.resolve(o.__await).then(function(e){t("next",e,r,a)},function(e){t("throw",e,r,a)}):c.resolve(o).then(function(e){u.value=e,r(u)},function(e){return t("throw",e,r,a)})}a(i.arg)}(n,r,e,t)})}return t=t?t.then(e,e):e()}}function b(e,t){var n=e.iterator[t.method];if(void 0===n){if(t.delegate=null,"throw"===t.method){if(e.iterator.return&&(t.method="return",t.arg=void 0,b(e,t),"throw"===t.method))return m;t.method="throw",t.arg=new TypeError("The iterator does not provide a 'throw' method")}return m}var r=p(n,e.iterator,t.arg);if("throw"===r.type)return t.method="throw",t.arg=r.arg,t.delegate=null,m;var a=r.arg;return a?a.done?(t[e.resultName]=a.value,t.next=e.nextLoc,"return"!==t.method&&(t.method="next",t.arg=void 0),t.delegate=null,m):a:(t.method="throw",t.arg=new TypeError("iterator result is not an object"),t.delegate=null,m)}function T(e){var t={tryLoc:e[0]};1 in e&&(t.catchLoc=e[1]),2 in e&&(t.finallyLoc=e[2],t.afterLoc=e[3]),this.tryEntries.push(t)}function M(e){var t=e.completion||{};t.type="normal",delete t.arg,e.completion=t}function S(e){this.tryEntries=[{tryLoc:"root"}],e.forEach(T,this),this.reset(!0)}function w(t){if(t){var e=t[a];if(e)return e.call(t);if("function"==typeof t.next)return t;if(!isNaN(t.length)){var n=-1,r=function e(){for(;++n<t.length;)if(l.call(t,n))return e.value=t[n],e.done=!1,e;return e.value=void 0,e.done=!0,e};return r.next=r}}return{next:R}}function R(){return{value:void 0,done:!0}}return i(_,"constructor",s.prototype=c),i(c,"constructor",s),s.displayName=i(c,r,"GeneratorFunction"),u.isGeneratorFunction=function(e){var t="function"==typeof e&&e.constructor;return!!t&&(t===s||"GeneratorFunction"===(t.displayName||t.name))},u.mark=function(e){return Object.setPrototypeOf?Object.setPrototypeOf(e,c):(e.__proto__=c,i(e,r,"GeneratorFunction")),e.prototype=Object.create(_),e},u.awrap=function(e){return{__await:e}},v(h.prototype),i(h.prototype,n,function(){return this}),u.AsyncIterator=h,u.async=function(e,t,n,r,a){void 0===a&&(a=Promise);var i=new h(o(e,t,n,r),a);return u.isGeneratorFunction(t)?i:i.next().then(function(e){return e.done?e.value:i.next()})},v(_),i(_,r,"Generator"),i(_,a,function(){return this}),i(_,"toString",function(){return"[object Generator]"}),u.keys=function(n){var r=[];for(var e in n)r.push(e);return r.reverse(),function e(){for(;r.length;){var t=r.pop();if(t in n)return e.value=t,e.done=!1,e}return e.done=!0,e}},u.values=w,S.prototype={constructor:S,reset:function(e){if(this.prev=0,this.next=0,this.sent=this._sent=void 0,this.done=!1,this.delegate=null,this.method="next",this.arg=void 0,this.tryEntries.forEach(M),!e)for(var t in this)"t"===t.charAt(0)&&l.call(this,t)&&!isNaN(+t.slice(1))&&(this[t]=void 0)},stop:function(){this.done=!0;var e=this.tryEntries[0].completion;if("throw"===e.type)throw e.arg;return this.rval},dispatchException:function(n){if(this.done)throw n;var r=this;function e(e,t){return i.type="throw",i.arg=n,r.next=e,t&&(r.method="next",r.arg=void 0),!!t}for(var t=this.tryEntries.length-1;0<=t;--t){var a=this.tryEntries[t],i=a.completion;if("root"===a.tryLoc)return e("end");if(a.tryLoc<=this.prev){var u=l.call(a,"catchLoc"),o=l.call(a,"finallyLoc");if(u&&o){if(this.prev<a.catchLoc)return e(a.catchLoc,!0);if(this.prev<a.finallyLoc)return e(a.finallyLoc)}else if(u){if(this.prev<a.catchLoc)return e(a.catchLoc,!0)}else{if(!o)throw new Error("try statement without catch or finally");if(this.prev<a.finallyLoc)return e(a.finallyLoc)}}}},abrupt:function(e,t){for(var n=this.tryEntries.length-1;0<=n;--n){var r=this.tryEntries[n];if(r.tryLoc<=this.prev&&l.call(r,"finallyLoc")&&this.prev<r.finallyLoc){var a=r;break}}a&&("break"===e||"continue"===e)&&a.tryLoc<=t&&t<=a.finallyLoc&&(a=null);var i=a?a.completion:{};return i.type=e,i.arg=t,a?(this.method="next",this.next=a.finallyLoc,m):this.complete(i)},complete:function(e,t){if("throw"===e.type)throw e.arg;return"break"===e.type||"continue"===e.type?this.next=e.arg:"return"===e.type?(this.rval=this.arg=e.arg,this.method="return",this.next="end"):"normal"===e.type&&t&&(this.next=t),m},finish:function(e){for(var t=this.tryEntries.length-1;0<=t;--t){var n=this.tryEntries[t];if(n.finallyLoc===e)return this.complete(n.completion,n.afterLoc),M(n),m}},catch:function(e){for(var t=this.tryEntries.length-1;0<=t;--t){var n=this.tryEntries[t];if(n.tryLoc===e){var r=n.completion;if("throw"===r.type){var a=r.arg;M(n)}return a}}throw new Error("illegal catch attempt")},delegateYield:function(e,t,n){return this.delegate={iterator:w(e),resultName:t,nextLoc:n},"next"===this.method&&(this.arg=void 0),m}},u}function _toConsumableArray(e){return _arrayWithoutHoles(e)||_iterableToArray(e)||_unsupportedIterableToArray(e)||_nonIterableSpread()}function _nonIterableSpread(){throw new TypeError("Invalid attempt to spread non-iterable instance.\nIn order to be iterable, non-array objects must have a [Symbol.iterator]() method.")}function _unsupportedIterableToArray(e,t){if(e){if("string"==typeof e)return _arrayLikeToArray(e,t);var n=Object.prototype.toString.call(e).slice(8,-1);return"Object"===n&&e.constructor&&(n=e.constructor.name),"Map"===n||"Set"===n?Array.from(e):"Arguments"===n||/^(?:Ui|I)nt(?:8|16|32)(?:Clamped)?Array$/.test(n)?_arrayLikeToArray(e,t):void 0}}function _iterableToArray(e){if("undefined"!=typeof Symbol&&null!=e[Symbol.iterator]||null!=e["@@iterator"])return Array.from(e)}function _arrayWithoutHoles(e){if(Array.isArray(e))return _arrayLikeToArray(e)}function _arrayLikeToArray(e,t){(null==t||t>e.length)&&(t=e.length);for(var n=0,r=new Array(t);n<t;n++)r[n]=e[n];return r}function _objectSpread(t){for(var e=1;e<arguments.length;e++){var n=null!=arguments[e]?Object(arguments[e]):{},r=Object.keys(n);"function"==typeof Object.getOwnPropertySymbols&&r.push.apply(r,Object.getOwnPropertySymbols(n).filter(function(e){return Object.getOwnPropertyDescriptor(n,e).enumerable})),r.forEach(function(e){_defineProperty(t,e,n[e])})}return t}function _defineProperty(e,t,n){return t in e?Object.defineProperty(e,t,{value:n,enumerable:!0,configurable:!0,writable:!0}):e[t]=n,e}!function(){function e(u,s,e,c,t,l,a,i,n,o,r){var p={name:"feature-fieldbus4"},m=e.has("FIELDBUS_UI_VERSION")?e.get("FIELDBUS_UI_VERSION"):4,f="c8y_IsDeviceType",d="c8y_ModbusDeviceType",y="%%",g=c.createEnum(["DISCRETE_IO","REGISTER"]),v=c.createEnum([{name:"FPORT",label:"FPort"},{name:"PAYLOAD",label:"Payload"}]),h=c.dataFilePath("devicetypes"),b={common:{name:null},deviceType:{c8y_Coils:[],c8y_Registers:[]},element:{number:null},discreteIO:{},discreteOutput:{input:!1},discreteInput:{input:!0},register:{multiplier:1,divisor:1,offset:0,decimalPlaces:0,startBit:0,noBits:16,unit:"",signed:!1},canbusRegister:{noBits:64,offset:0},canopenRegister:{},holdingRegister:{input:!1},inputRegister:{input:!0}},T=[],M=[];return{ElementType:g,MessageIdSources:v,metaDefaults:{discreteIO:{enumValues:[{value:0,label:"0"},{value:1,label:"1"}]}},registerFeaturesManifest:function(e){var t=u.resolve(e);T.push(t),t.then(function(e){e&&M.push(e)})},areAnyFeaturesManifestsRegistered:function(){return S().then(function(e){return 0<e.length})},getFeaturesManifestsAsync:S,getFeaturesManifests:function(){return M},getDeviceTypeFeatures:$e,getElementTypeLabel:function(e,t){var n,r=_.get(e,"meta.type");if(r){var a=_.get(e,"input");if(r===g.DISCRETE_IO)n=o(a?"Discrete input":"Coil (discrete output)");else if(r===g.REGISTER)if(a)n=o("Input register");else{var i=$e(t);n=_.get(i,"holdingRegisters.elementTypeLabel",o("Holding register"))}}return n},getFieldbusVersion:U,getEmptyDeviceType:function(){var e=b.common,t=b.deviceType;return _.cloneDeep(_objectSpread({},e,t))},getAvailableDeviceTypes:function(t){var n,r,a,i,u,o=arguments;return _regeneratorRuntime().async(function(e){for(;;)switch(e.prev=e.next){case 0:return n=1<o.length&&void 0!==o[1]?o[1]:{},r=2<o.length?o[2]:void 0,!0,a={__and:[{__or:[{__has:f},{type:d}]},{fieldbusType:{__in:_.map(M,"fieldbusType")}}]},_.isEmpty(t)||(a.__and=[].concat(_toConsumableArray(a.__and),[t])),i=c.createListMapper(function(e){return R(e)}),e.next=8,_regeneratorRuntime().awrap(l.listQuery(a,n,!0,r).then(i));case 8:return u=e.sent,e.abrupt("return",u);case 10:case"end":return e.stop()}},null,null,null,Promise)},getDeviceTypeFromDevice:function(e){var t=_.flatten(_.map(M,"deviceFragments")),n=_.head(_.compact(_.at(e,t))),r=_.get(n,"type"),a=r&&r.match(/\/inventory\/managedObjects\/(\d+)/),i=_.nth(a,1);if(i)return w(i);return u.resolve(null)},getFieldbusVersionFromDevice:function(e){var t=_.map(M,"deviceConfiguration.fragment"),n=_.head(_.compact(_.at(e,t)));return _.get(n,"maxFieldbusVersion",4)},getDeviceType:w,save:O,exportDeviceTypeAndSaveAs:function(e){var t="".concat(e.name,".json"),n=JSON.stringify(function(e){return e.c8y_ModbusDeviceTypeInfo=function(e){return _.omit(_objectSpread({},_.get(e,"c8y_ModbusDeviceTypeInfo",{}),{name:e.name,minFieldbusUI:m,fieldbusType:e.fieldbusType}),["id","category","description"])}(e),e.c8y_Coils=_.map(e.c8y_Coils,Z),e.c8y_Registers=_.map(e.c8y_Registers,Z),_.pick(e,["c8y_ModbusDeviceTypeInfo","c8y_Coils","c8y_Registers","c8y_useServerTime","c8y_MessageIdConfiguration"])}(e),null,2),r=new Blob([n],{type:"application/json"});window.saveAs(r,t)},importDeviceTypeWithUI:function(){return n({component:"c8yImportDeviceTypeModal"}).then(O)},getPredefinedDeviceTypeInfos:function(){var n,r;return _regeneratorRuntime().async(function(e){for(;;)switch(e.prev=e.next){case 0:if(void 0,t=Je(),n=t&&_.map(t)){e.next=8;break}return r="".concat(h,"/index.json"),e.t0=c,e.next=6,_regeneratorRuntime().awrap(s.get(r));case 6:e.t1=e.sent,n=e.t0.getResData.call(e.t0,e.t1);case 8:return e.abrupt("return",_.flow([ee,te])(n));case 9:case"end":return e.stop()}var t},null,null,null,Promise)},isDeviceTypeSupported:ne,isDeviceTypeSupportedAsync:function(n){return S().then(function(e){return _.map(e,"fieldbusType")}).then(function(e){var t=Ge(n);return _.includes(e,t)})},getPredefinedDeviceType:He,downloadPredefinedDeviceTypeAndSaveAs:function(t){var n,r,a,i,u,o;return _regeneratorRuntime().async(function(e){for(;;)switch(e.prev=e.next){case 0:return n="".concat(t,".json"),r="predefinedDeviceTypesUrl/".concat(n),e.next=4,_regeneratorRuntime().awrap(s.get(r));case 4:a=e.sent,i=JSON.stringify(a.data,null,2),u=a.headers("Content-Type"),o=new Blob([i],{type:u}),window.saveAs(o,n);case 9:case"end":return e.stop()}},null,null,null,Promise)},upgradeDeviceType:R,getElementsWithMeta:function(t){var e=_.get(t,"c8y_Coils",[]),n=_.get(t,"c8y_Registers",[]);return _.union(_.map(e,function(e){return re(e)}),_.map(n,function(e){return de(e,t)}))},addDiscreteIOsMeta:function(e){if(e)return e.c8y_Coils=_.map(e.c8y_Coils,re),e;return},addDiscreteIOMeta:re,removeDiscreteIOMeta:function(e){var t=e;t.meta&&(t=_.flow([ce,le,pe,me,fe])(t),_.unset(t,"meta"));return t},addRegistersMeta:function(t){if(t)return t.c8y_Registers=_.map(t.c8y_Registers,function(e){return de(e,t)}),t;return},addRegisterMeta:de,removeRegisterMeta:function(e){var t=e;e.meta&&(t=_.flow([Ee,De,Oe,Ae,je,xe,Ce,Ue,Ne,Le])(e),_.unset(t,"meta"));return t},removeAllElements:function(e){e.c8y_Registers=[],e.c8y_Coils=[]},getElementRefId:function(e){var t=_.compact(ke(e));return _.head(t)},findElementBestMatchingRefId:function(e,t,n){return _(e).chain().map(function(e){return{score:function(e,t,n){var r=e.meta.type.value===n,a=ke(e),i=_.findIndex(a,_.negate(_.isUndefined)),u=_.indexOf(a,t);return r&&0<=u?i-u:void 0}(e,t,n),element:e}}).reject(function(e){return _.isUndefined(e.score)}).orderBy("score").head().get("element").value()},getDiscreteOutputsCategorized:function(e){return _(e.c8y_Coils).reject("input").groupBy(Ve).value()},getDiscreteInputsCategorized:function(e){return _(e.c8y_Coils).filter("input").groupBy(Ve).value()},getHoldingRegistersCategorized:function(e){return _(e.c8y_Registers).reject("input").groupBy(Ve).value()},getInputRegistersCategorized:function(e){return _(e.c8y_Registers).filter("input").groupBy(Ve).value()},getEmptyDiscreteOutput:function(){return _.cloneDeep(_objectSpread({},b.common,b.element,b.discreteIO,b.discreteOutput))},getEmptyDiscreteInput:function(){return _.cloneDeep(_objectSpread({},b.common,b.element,b.discreteIO,b.discreteInput))},getEmptyHoldingRegister:function(e){return"canbus"!==e.fieldbusType?"canopen"!==e.fieldbusType?_.cloneDeep(_objectSpread({},b.common,b.element,b.register,b.holdingRegister)):_.cloneDeep(_objectSpread({},b.common,b.canopenRegister)):_.cloneDeep(_objectSpread({},b.common,b.element,b.register,b.canbusRegister,b.holdingRegister))},getEmptyInputRegister:function(){return _.cloneDeep(_objectSpread({},b.common,b.element,b.register,b.inputRegister))},editDiscreteIOWithUI:function(e,t){return n({component:"c8yConfigureDiscreteIOModal",title:Be(e),resolve:_objectSpread({title:function(){return Be(e)}},Fe(e,t.c8y_Coils,t))})},editRegisterWithUI:function(e,t){return n({component:"c8yConfigureRegisterModal",resolve:_objectSpread({title:function(){return function(e,t){var n=$e(t);if(e.input)return e.name?r.getString('Edit input register: "{{name}}"',e):o("New input register");if(e.name)return r.getString(_.get(n,"holdingRegisters.editRegisterModalTitle",o('Edit holding register: "{{name}}"')),e);return _.get(n,"holdingRegisters.newRegisterModalTitle",o("New holding register"))}(e,t)}},Fe(e,t.c8y_Registers,t))})},addEmptyEnumValue:function(e){e.meta.enumValues=e.meta.enumValues||[],e.meta.enumValues.push({value:null,label:null})},removeEnumValue:function(e,t){e.meta.enumValues=_.without(e.meta.enumValues,t)},areOverlappingRegisters:function(e,t,n){var r=We(e,n),a=We(t,n),i=Math.max(r.start,a.start),u=Math.min(r.end,a.end);return i<=u},getValuesRange:we,openFieldbusSelector:function(e){return n({component:"c8ySelectFieldbusPropertyModal",resolve:{modalParams:function(){return _.defaults(e,{})}}})},downloadPredefinedDeviceTypeHref:function(n){var r,a;return _regeneratorRuntime().async(function(e){for(;;)switch(e.prev=e.next){case 0:return r=n.id||n,e.next=3,_regeneratorRuntime().awrap(He(r));case 3:return a=e.sent,e.abrupt("return",(t=a,window.btoa(unescape(encodeURIComponent(JSON.stringify(t,null,2))))));case 5:case"end":return e.stop()}var t},null,null,null,Promise)},predefinedDeviceTypeHrefFilename:function(e){return"".concat(e.id,".json")},isFieldbusDevice:function(t){return _.some(M,function(e){return _.some(e.deviceFragments,function(e){return _.has(t,e)})})},isFeatureFieldbus4Available:function(){return t.isSubscribed(p)},addElementId:L};function S(){return u.all(T).then(_.compact)}function w(t){var n;return _regeneratorRuntime().async(function(e){for(;;)switch(e.prev=e.next){case 0:return e.t0=c,e.next=3,_regeneratorRuntime().awrap(l.detail(t));case 3:return e.t1=e.sent,n=e.t0.getResData.call(e.t0,e.t1),e.abrupt("return",R(n));case 6:case"end":return e.stop()}},null,null,null,Promise)}function R(e){return _.flow([I,E,D,x,C])(e)}function I(e){return _.forEach(e.c8y_Coils,function(e){!e.enumValues&&e.statusMapping&&_.isArray(e.statusMapping.enumValues)&&(e.enumValues={0:e.statusMapping.enumValues[0],1:e.statusMapping.enumValues[1]},_.unset(e,"statusMapping.enumValues")),_.isUndefined(e.input)&&(e.input=b.discreteOutput.input)}),e}function E(e){var r=$e(e);return _.forEach(e.c8y_Registers,function(e){var t=e.input?"inputRegisters":"holdingRegisters",n=_.get(r,t,{});_.get(n,"startBit")&&_.defaults(e,{startBit:b.register.startBit}),_.get(n,"noBits")&&_.defaults(e,{noBits:b.register.noBits}),_.get(n,"options.signed")&&_.defaults(e,{signed:b.register.signed}),!e.unit&&e.measurementMapping&&e.measurementMapping.unit&&(e.unit=e.measurementMapping.unit,_.unset(e,"measurementMapping.unit")),_.isUndefined(e.input)&&(e.input=b.holdingRegister.input)}),e}function D(e){return e.fieldbusType=Ge(e),e}function O(r){var t;return _regeneratorRuntime().async(function(e){for(;;)switch(e.prev=e.next){case 0:return t=_.flow([j,x,N,k,P,V,C,A])(r),e.abrupt("return",l.save(t).then(c.getResData).then(function(e){return r.id?e:(t=e,_regeneratorRuntime().async(function(e){for(;;)switch(e.prev=e.next){case 0:return e.prev=0,e.next=3,_regeneratorRuntime().awrap(i.createIdentity(t,{type:"c8y_SmartRestDeviceIdentifier",externalId:t.name},{silentError:!0}));case 3:return e.abrupt("return",e.sent);case 6:return e.prev=6,e.t0=e.catch(0),n=u.reject.bind(u,{errorMessage:e.t0.data.message}),e.abrupt("return",l.remove(t).then(n,n));case 10:case"end":return e.stop()}},null,null,[[0,6]],Promise)).then(function(){return e});var t,n}));case 2:case"end":return e.stop()}},null,null,null,Promise)}function A(e){return l.addGlobalFlag(e,!0)}function j(e){if(!e.type){var t=$e(e);e.type=_.get(t,"type",d)}return e}function x(e){return _.set(e,f,{})}function C(e){return _.set(e,"fieldbusVersion",U(e))}function U(t){var e=$e(t).versions,n=_.findLast(e,function(e){return _.some(e.checks,function(e){return e(t)})});return _.get(n,"number",4)}function N(e){return e.c8y_Coils=_.map(e.c8y_Coils,L),e.c8y_Registers=_.map(e.c8y_Registers,L),e}function L(e){return e.id||(e.id=String(Math.random()).substr(2)),e}function k(e){return e.c8y_Coils=_.orderBy(e.c8y_Coils,["input","number"]),e.c8y_Registers=_.orderBy(e.c8y_Registers,["input","number","startBit","index","subIndex"]),e}function P(e){var t=$e(e);return!!_.get(t,"configuration.messageIdConfiguration.length")&&(e.c8y_MessageTypes=function(n){return _.reduce(["c8y_Registers","c8y_Coils"],function(e,t){return _.merge(e,function(t,r){var e=_.groupBy(t[r],"messageTypeId"),n=_.mapValues(e,function(e){return _.map(e,function(e){return _.indexOf(t[r],e)})});return _.reduce(n,function(e,t,n){return e[n]={},e[n][r]=t,e},{})}(n,t))},{})}(e)),e}function V(e){var t=function(e){var t=$e(e).customizeSmartRestTemplates||_.identity,n={requestTemplates:_.flattenDeep([function(e){return{msgId:100,method:"PUT",contentType:"application/vnd.com.nsn.cumulocity.managedObject+json",placeholder:y,resourceUri:"/inventory/managedObjects/".concat(y),templateString:Y([{key:"c8y_CoilStatus",value:new K(B(e.c8y_Coils).map(function(e){return{key:e.name,value:y,raw:!0}}).value())}]),values:["UNSIGNED"].concat(_toConsumableArray(B(e.c8y_Coils).map(function(){return"UNSIGNED"}).value()))}}(e),function(e){return{msgId:101,method:"PUT",contentType:"application/vnd.com.nsn.cumulocity.managedObject+json",placeholder:y,resourceUri:"/inventory/managedObjects/".concat(y),templateString:Y([{key:"c8y_RegisterStatus",value:new K(B(e.c8y_Registers).map(function(e){return{key:e.name,value:y,raw:!0}}).value())}]),values:["UNSIGNED"].concat(_toConsumableArray(B(e.c8y_Registers).map(function(){return"NUMBER"}).value()))}}(e),[F(102,"EXECUTING"),F(103,"SUCCESSFUL"),F(104,"FAILED")],function(e){return _.flow([$,J,z])({deviceType:e,msgId:300,templates:[]}).templates}(e)]),responseTemplates:_.flattenDeep([{msgId:200,condition:"$.c8y_SetCoil",pattern:["$.id","$.c8y_SetCoil.address","$.c8y_SetCoil.input","$.c8y_SetCoil.coil","$.c8y_SetCoil.value"]},{msgId:201,condition:"$.c8y_SetRegister",pattern:["$.id","$.c8y_SetRegister.ipAddress","$.c8y_SetRegister.address","$.c8y_SetRegister.input","$.c8y_SetRegister.register","$.c8y_SetRegister.startBit","$.c8y_SetRegister.noBits","$.c8y_SetRegister.value"]},{msgId:202,condition:"$.c8y_ModbusDevice",pattern:["$.id","$.deviceId","$.c8y_ModbusDevice.id","$.c8y_ModbusDevice.address","$.c8y_ModbusDevice.type","$.c8y_ModbusDevice.protocol"]},{msgId:203,condition:"$.c8y_ModbusSource",pattern:["$.id"]}])};return t(n,e)}(e);return _.set(e,"com_cumulocity_model_smartrest_SmartRestTemplate",t)}function B(e){return _(e).filter("statusMapping.status")}function F(e,t){return{msgId:e,method:"PUT",contentType:"application/vnd.com.nsn.cumulocity.operation+json",placeholder:y,resourceUri:"/devicecontrol/operations/".concat(y),templateString:Y({status:t}),values:["UNSIGNED"]}}function $(e){var t=e.deviceType,n=e.msgId,r=e.templates,a=_.filter(t.c8y_Coils,"alarmMapping"),i=_.filter(t.c8y_Registers,"alarmMapping"),u=$e(t),o=u.getCoilSource||W,s=u.getRegisterSource||H,c=n;return _.forEach(a,function(e){r.push(G(c,t,e.alarmMapping,o(e))),e.alarmMapping.raiseAlarmTemplate=c,c+=1}),_.forEach(i,function(e){r.push(G(c,t,e.alarmMapping,s(e))),e.alarmMapping.raiseAlarmTemplate=c,c+=1}),{deviceType:t,templates:r,msgId:c}}function G(e,t,n,r){return{msgId:e,method:"POST",contentType:"application/vnd.com.nsn.cumulocity.alarm+json",accept:"application/vnd.com.nsn.cumulocity.alarm+json",placeholder:y,resourceUri:"/alarm/alarms",templateString:Y([{key:"source",value:{id:y}},{key:"type",value:n.type},{key:"status",value:a.status.ACTIVE},{key:"severity",value:n.severity},{key:"time",value:y},{key:"text",value:n.text},{key:r.key,value:r.value}]),values:["UNSIGNED",q(t)]}}function W(e){return{key:"c8y_ModbusSource",value:{coil:_.pick(e,"input","number")}}}function H(e){return{key:"c8y_ModbusSource",value:{register:_.pick(e,["input","number","startBit","noBits"])}}}function J(e){var r=e.deviceType,t=e.msgId,a=e.templates,n=_([].concat(_toConsumableArray(r.c8y_Coils),_toConsumableArray(r.c8y_Registers))).filter("measurementMapping").groupBy("measurementMapping.type").value(),i=t;return _.forEach(n,function(e,t){var n=_.map(e,function(e){return _.set(e.measurementMapping,"unit",e.unit||e.measurementMapping.unit)});a.push(function(e,t,n,i){return{msgId:e,method:"POST",contentType:"application/vnd.com.nsn.cumulocity.measurement+json",placeholder:y,resourceUri:"/measurement/measurements",templateString:Y(function(){var r=n,a=_defineProperty({source:{id:y},time:y,type:r},r,{});return _.forEach(i,function(e){var t=e.series,n=e.unit;a[r][t]={value:"%n",unit:n}}),a}()),values:["UNSIGNED",q(t)].concat(_toConsumableArray(_.map(i,function(){return"NUMBER"})))}}(i,r,t,n)),_.forEach(n,function(e){e.sendMeasurementTemplate=i,_.unset(e,"unit")}),i+=1}),{deviceType:r,templates:a,msgId:i}}function z(e){var t=e.deviceType,n=e.msgId,r=e.templates,a=[].concat(_toConsumableArray(t.c8y_Coils),_toConsumableArray(t.c8y_Registers)),i=n;return _.forEach(a,function(e){_.isUndefined(e.eventMapping)||(r.push(function(e,t,n,r){return{msgId:e,method:"POST",contentType:"application/vnd.com.nsn.cumulocity.event+json",placeholder:y,resourceUri:"/event/events",templateString:Y([{key:"source",value:{id:y}},{key:"time",value:y},{key:"type",value:r.type},{key:"text",value:r.text},{key:n.name,value:y,raw:!0}]),values:["UNSIGNED",q(t),"NUMBER"]}}(i,t,e,e.eventMapping)),e.eventMapping.eventTemplate=i,i+=1)}),{deviceType:t,templates:r,msgId:i}}function q(e){return e.c8y_useServerTime?"NOW":"DATE"}function Y(e,t){var n;return e instanceof K?n=Q(e.kvObj):_.isArray(e)?n=Q(e):_.isObjectLike(e)&&(n=angular.toJson(e)),n=n.replace(/"%n"/g,t||y)}function Q(e){var t=_.map(e,X);return"{".concat(t.join(","),"}")}function X(e){var t,n=e.key,r=e.value,a=e.raw,i={};return(t=r instanceof K?(i[n]=":::INNER_OBJECT_STRING:::",JSON.stringify(i).replace('":::INNER_OBJECT_STRING:::"',Q(r.kvObj))):a?(i[n]=":::RAW_VALUE:::",JSON.stringify(i).replace('":::RAW_VALUE:::"',r)):(i[n]=r,JSON.stringify(i))).substr(1,t.length-2)}function K(e){this.kvObj=e}function Z(e){return e.eventMapping&&(e.eventMapping=_.omit(e.eventMapping,["eventTemplate"])),e.alarmMapping&&(e.alarmMapping=_.omit(e.alarmMapping,["raiseAlarmTemplate"])),e.measurementMapping&&(e.measurementMapping=_.omit(e.measurementMapping,["sendMeasurementTemplate"])),_.omit(e,["id","originalName","originalNumber","originalStartBit","meta"])}function ee(e){return _.filter(e,function(e){return ne(e)})}function te(e){return _.filter(e,function(e){return e.minFieldbusUI<=m})}function ne(e){var t=_.map(M,"fieldbusType"),n=Ge(e);return _.includes(t,n)}function re(e){return e.meta=e.meta||{},_.flow([ae,ie,ue,oe,se])(e)}function ae(e){return e.meta.type=e.meta.type||g.DISCRETE_IO,e}function ie(e){return e.meta.enumType=e.meta.enumType||!!e.enumValues,e.meta.enumValues=e.meta.enumValues||e.enumValues&&_.map(e.enumValues,_e),e}function ue(e){var t=_.get(e,"statusMapping.status");return e.meta.showStatus=e.meta.showStatus||"read"===t||"write"===t,e.meta.updateStatus=e.meta.updateStatus||"write"===t,e}function oe(e){var t=_.get(e,"alarmMapping.raiseAlarmTemplate");return e.meta.raiseAlarm=e.meta.raiseAlarm||!_.isUndefined(t),e}function se(e){var t=_.get(e,"eventMapping.eventTemplate");return e.meta.sendEvent=e.meta.sendEvent||!_.isUndefined(t),e}function ce(e){return e.meta.type=void 0,e}function le(r){return r.meta.enumType?(r.enumValues={},_.forEach(r.meta.enumValues,function(e){var t=e.value,n=e.label;r.enumValues[t]=n})):r.enumValues=void 0,r}function pe(e){return e.meta.showStatus||e.meta.updateStatus?(e.statusMapping=e.statusMapping||{},e.meta.showStatus&&(e.statusMapping.status="read"),e.meta.updateStatus&&(e.statusMapping.status="write")):e.statusMapping=void 0,e}function me(e){return e.meta.raiseAlarm?(e.alarmMapping=e.alarmMapping||{},e.alarmMapping.raiseAlarmTemplate=null):e.alarmMapping=void 0,e}function fe(e){return e.meta.sendEvent?(e.eventMapping=e.eventMapping||{},e.eventMapping.eventTemplate=null):e.eventMapping=void 0,e}function de(e,t){return e.meta=e.meta||{},_.flow([ye,ge,ve,he,be,Te,Me,function(e){return function(e,t){var n=$e(t)[e.input?"inputRegisters":"holdingRegisters"],r=_.get(n,"dataType.choices",[]);return e.meta.dataType=e.meta.dataType||_.find(r.values(),{value:e.dataType}),e}(e,t)},function(e){return function(e,t){var n=$e(t)[e.input?"inputRegisters":"holdingRegisters"],r=_.get(n,"accessType.choices",[]);return e.meta.accessType=e.meta.accessType||_.find(r.values(),{value:e.accessType}),e}(e,t)},Se])(e)}function ye(e){return e.meta.type=e.meta.type||g.REGISTER,e}function ge(e){return e.meta.enumType=e.meta.enumType||!!e.enumValues,e.meta.enumValues=e.meta.enumValues||e.enumValues&&_.map(e.enumValues,_e),e}function _e(e,t){return{label:e,value:parseFloat(t)}}function ve(e){var t=_.get(e,"statusMapping.status");return e.meta.showStatus=e.meta.showStatus||"read"===t||"write"===t,e.meta.updateStatus=e.meta.updateStatus||"write"===t,e}function he(e){var t=_.get(e,"measurementMapping.sendMeasurementTemplate");return e.meta.sendMeasurement=e.meta.sendMeasurement||!_.isUndefined(t),e}function be(e){var t=_.get(e,"alarmMapping.raiseAlarmTemplate");return e.meta.raiseAlarm=e.meta.raiseAlarm||!_.isUndefined(t),e}function Te(e){var t=_.get(e,"eventMapping.eventTemplate");return e.meta.sendEvent=e.meta.sendEvent||!_.isUndefined(t),e}function Me(e){return e.meta.sendManagedObjectUpdate=e.meta.sendManagedObjectUpdate||!!e.managedObjectMapping,e}function Se(e){return e.meta.valuesRange=e.meta.valuesRange||we(e),e}function we(e){var t,n=_.get(e.meta,"dataType",{}),r=_.get(n,"baseValuesRange",{}),a=Re([n.divisor,e.divisor,1]),i=Re([n.multiplier,e.multiplier,1]),u=Re([n.decimalPlaces,e.decimalPlaces,0]),o=Re([n.noBits,e.noBits]),s=Re([n.signed,e.signed,!1]),c=r.min,l=r.max;return _.isUndefined(u)||null===u||_.isUndefined(i)||_.isUndefined(a)||(t=Ie(i*Math.pow(10,-u)/a)),_.isUndefined(s)||_.isUndefined(o)||_.isUndefined(t)||(_.isUndefined(c)&&(c=Ie((s?-Math.pow(2,o-1):0)*t)),_.isUndefined(l)&&(l=Ie((s?Math.pow(2,o-1)-1:Math.pow(2,o)-1)*t))),{base:{decimalPlaces:_.isNull(u)?void 0:u,step:t,min:c,max:l},custom:{decimalPlaces:_.isNull(u)?void 0:u,step:t,min:Math.max(c,e.min||c),max:Math.min(l,e.max||l)},mask:{min:0,max:Math.pow(2,o)},possiblePrecisionLoss:function(e,t){var n=53<e,r=!_.isUndefined(t)&&10<=function(e){return Math.floor(e)!==e?(_slicedToArray(e.toString().split("."),2)[1]||"").length:0}(t);return n||r}(o,t)}}function Re(e){return _.head(_.reject(e,_.isUndefined))}function Ie(e){var t=Math.pow(10,10);return Math.round(e*t)/t}function Ee(e){return e.meta.type=void 0,e}function De(r){return r.meta.enumType?(r.enumValues={},_.forEach(r.meta.enumValues,function(e){var t=e.value,n=e.label;r.enumValues[t]=n})):r.enumValues=void 0,r}function Oe(e){return e.meta.showStatus||e.meta.updateStatus?(e.statusMapping=e.statusMapping||{},e.meta.showStatus&&(e.statusMapping.status="read"),e.meta.updateStatus&&(e.statusMapping.status="write")):e.statusMapping=void 0,e}function Ae(e){return e.meta.sendMeasurement?(e.measurementMapping=e.measurementMapping||{},e.measurementMapping.sendMeasurementTemplate=null):e.measurementMapping=void 0,e}function je(e){return e.meta.raiseAlarm?(e.alarmMapping=e.alarmMapping||{},e.alarmMapping.raiseAlarmTemplate=null):e.alarmMapping=void 0,e}function xe(e){return e.meta.sendEvent?(e.eventMapping=e.eventMapping||{},e.eventMapping.eventTemplate=null):e.eventMapping=void 0,e}function Ce(e){return e.meta.sendManagedObjectUpdate?e.managedObjectMapping=e.managedObjectMapping||{}:e.managedObjectMapping=void 0,e}function Ue(e){return e.meta.dataType?e.dataType=e.meta.dataType.value:e.dataType=void 0,e}function Ne(e){return e.meta.accessType?e.accessType=e.meta.accessType.value:e.accessType=void 0,e}function Le(e){return e.meta.valuesRange=void 0,e}function ke(e){return[function(e){return _.get(e,"id")}(e),function(e){return Pe(e,["input","number","startBit"])}(e),function(e){return Pe(e,["input","number"])}(e),function(e){return Pe(e,["number"])}(e)]}function Pe(e,t){var n=_.map(t,_.propertyOf(e));if(_.every(n,_.negate(_.isUndefined)))return n.join(",")}function Ve(e){return e.category||""}function Be(e){return e.input?e.name?r.getString('Edit discrete input: "{{name}}"',e):o("New discrete input"):e.name?r.getString('Edit coil: "{{name}}"',e):o("New coil")}function Fe(e,t,n){return{element:function(){return _.cloneDeep(function(e){if(e)return _objectSpread({},e,{meta:{original:_.cloneDeep(e)}});return}(e))},existingElements:function(){return _.cloneDeep(t)},existingCategories:function(){return _.cloneDeep(function(e){return _([].concat(_toConsumableArray(_.get(e,"c8y_Coils",[])),_toConsumableArray(_.get(e,"c8y_Registers",[])))).filter("category").map("category").uniq().map(function(e){return{name:e}}).value()}(n))},deviceType:function(){return _.cloneDeep(n)},fieldbusType:function(){return Ge(n)},features:function(){return $e(n)}}}function $e(e){return _.find(M,{fieldbusType:Ge(e)})||{}}function Ge(e){return e.fieldbusType||"modbus"}function We(e,t){var n=e.number,r=e.startBit,a=e.noBits,i=n*_.get(t,"noBits.base",_.get(t,"noBits.max"))+r;return{start:i,end:i+a-1}}function He(r){var a,i;return _regeneratorRuntime().async(function(e){for(;;)switch(e.prev=e.next){case 0:if(t=r,void 0,n=(Je()||{})[t],a=n&&_.clone(n._item)){e.next=8;break}return i="".concat(h,"/").concat(r,".json"),e.t0=c,e.next=6,_regeneratorRuntime().awrap(s.get(i));case 6:return e.t1=e.sent,e.abrupt("return",e.t0.getResData.call(e.t0,e.t1));case 8:return e.abrupt("return",a);case 9:case"end":return e.stop()}var t,n},null,null,null,Promise)}function Je(){return _.get(window,"c8y.collections.devicetypes")}}e.$inject=["$q","$http","$injector","c8yBase","c8yTenant","c8yInventory","c8yAlarms","c8yIdentity","c8yModal","gettext","gettextCatalog"],angular.module("c8y.deviceDatabase4").factory("c8yDeviceDatabase",e)}();
|
|
@@ -1 +1 @@
|
|
|
1
|
-
"use strict";!function(){function e(
|
|
1
|
+
"use strict";!function(){function e(o,n,i,e,s,t,a,l,r,u,c,f,d){var g=this,m="YYYY-MM-DDTHH:mm:ssZZ";function p(){o.filters={dateFrom:moment().subtract(1,"day"),dateTo:moment(),logFile:o.logTypes[0]&&o.logTypes[0].name||null,maximumLines:1e3},g.filters=o.filters}function y(e){var t=_.assign({deviceId:n.deviceId,fragmentType:"c8y_LogfileRequest",dateFrom:new Date(0).toISOString(),revert:!0,withTotalPages:!0},e);return a.list(t).then(h)}function h(e,t){o.operations&&!t||(o.operations=[]),e.forEach(function(e){o.operations.push(e)}),o.paging=e.paging}function L(){_.get(o.paging,"refresh")&&(o.realtimeAnimation=!1,o.refreshLoading=!0,o.paging.refresh().then(_.partialRight(h,!0)).finally(function(){o.refreshLoading=!1}),o.paging=null)}function v(e){if(e.c8y_LogfileRequest.file){var t=s.getIdFromUrl(e.c8y_LogfileRequest.file);if(t)return s.removeBinary(t)}return!1}function C(e){var t={id:e.id,status:e.status,c8y_LogfileRequest:null};return a.save(t)}function R(e){F(e)?o.selectedLog=e:o.selectedLog=void 0}function F(e){return e.c8y_LogfileRequest&&e.c8y_LogfileRequest.file}function q(e){return e&&"SUCCESSFUL"===e.status}function T(e){return e&&"FAILED"===e.status}function D(e,t){t&&!e?(g.shouldClose="disabled",i(function(){g.shouldClose="outsideClick"})):g.shouldClose="outsideClick"}o.requestLogfile=function(e){var t={deviceId:n.deviceId,description:c("Log file request"),c8y_LogfileRequest:{dateFrom:moment(e.dateFrom).format(m),dateTo:moment(e.dateTo).format(m),logFile:e.logFile,searchText:e.searchText||"",maximumLines:e.maximumLines}};a.createWithNotifications(t).then(function(e){e.created.then(L),e.completed.then(function(e){e.status===a.status.SUCCESSFUL?(_.assign(t,e),R(t)):e.status===a.status.FAILED&&"Operation cancelled by user."!==e.failureReason&&(e.failureReason?u.danger(f('Could not load file: "{{failureReason | translate}}".',e)):u.danger(c("Could not load file.")))},_.noop,function(e){_.assign(t,e),R(t)}).then(L)})},o.hasLogFile=F,o.selectLogfile=R,o.isBinary=function(e){return e&&e.c8y_LogfileRequest&&e.c8y_LogfileRequest.file&&!!s.getIdFromUrl(e.c8y_LogfileRequest.file)},o.download=d.download,o.cancel=function(e){return"PENDING"===e.status&&a.cancel(e).then(function(){return u.success(c("Log file request cancelled."))}).then(L)},o.remove=function(e){return r({title:c("Delete log file"),body:c("You are about to delete this log file. Do you want to proceed?"),status:"danger",labels:{ok:c("Delete")}}).then(_.partial(v,e)).then(_.partial(C,e)).then(function(){return u.success(c("Log file deleted."))}).then(L)},o.statusIcon=function(e){return a.getStyle(e).icon},o.statusClass=function(e){return a.getStyle(e).cls},o.isSuccessful=q,o.isPending=function(e){return e&&"PENDING"===e.status},o.isFailed=T,o.isCompleted=function(e){return q(e)||T(e)},o.refresh=L,o.loadNext=function(e){o.paging.loading=!0,(e?y({pageSize:e}):o.paging.next().then(h)).finally(function(){o.paging.loading=!1})},o.getOperationDesc=function(e){return e.description||c("no description available")},o.$watch("vm.datePickerToOpen",D),o.$watch("vm.datePickerFromOpen",D),o.$watch("vm.logtypeSelect.open",function(e){e||(g.shouldClose="disabled",i(function(){g.shouldClose="outsideClick"}))}),g.shouldClose="outsideClick",g.datePickerToOpen=!1,g.datePickerFromOpen=!1,t.detail(n.deviceId).then(e.getResData).then(function(e){o.logTypes=_.map(e.c8y_SupportedLogs,function(e){return{name:e}}),g.logTypes=o.logTypes}).then(p),y();var S=o.$id,I="/operations/".concat(n.deviceId),w=l.realtimeActions();_.forOwn(w,function(e){l.addListener(S,I,e,function(e,t){if(_.has(t,"c8y_LogfileRequest")){L();var n=o.selectedLog;n&&n.id===t.id&&e===w.UPDATE&&(n.c8y_LogfileRequest=t.c8y_LogfileRequest)}})}),l.start(S,I),o.$on("$destroy",function(){l.stop(S,I),l.destroySubscription(S,I)})}e.$inject=["$scope","$routeParams","$timeout","c8yBase","c8yBinary","c8yDevices","c8yDeviceControl","c8yRealtime","c8yModal","c8yAlert","gettext","gettextCatalog","logViewer"],angular.module("c8y.logViewer").controller("logViewerCtrl",e)}();
|
|
@@ -22,31 +22,29 @@
|
|
|
22
22
|
<ul class="dropdown-menu dropdown-menu-right dropdown-menu-action-bar" uib-dropdown-menu>
|
|
23
23
|
<li class="dropdown-form">
|
|
24
24
|
<form name="logRequestForm" class="form">
|
|
25
|
-
<div class="form-group c8y-datetime-picker">
|
|
25
|
+
<div class="form-group c8y-datetime-picker" data-cy="fromDatePicker">
|
|
26
26
|
<label>{{ 'From`date`' | translate }}</label>
|
|
27
27
|
<c8y-date-time-picker
|
|
28
28
|
is-open="vm.datePickerFromOpen"
|
|
29
29
|
ng-model="vm.filters.dateFrom"
|
|
30
30
|
placeholder="{{ 'From`date`' | translate }}"
|
|
31
31
|
max-date="vm.filters.dateTo"
|
|
32
|
-
append-to-body="true"
|
|
33
32
|
></c8y-date-time-picker>
|
|
34
33
|
</div>
|
|
35
34
|
|
|
36
|
-
<div class="form-group c8y-datetime-picker">
|
|
35
|
+
<div class="form-group c8y-datetime-picker" data-cy="toDatePicker">
|
|
37
36
|
<label>{{ 'To`date`' | translate }}</label>
|
|
38
37
|
<c8y-date-time-picker
|
|
39
38
|
is-open="vm.datePickerToOpen"
|
|
40
39
|
ng-model="vm.filters.dateTo"
|
|
41
40
|
placeholder="{{ 'To`date`' | translate }}"
|
|
42
41
|
min-date="vm.filters.dateFrom"
|
|
43
|
-
append-to-body="true"
|
|
44
42
|
></c8y-date-time-picker>
|
|
45
43
|
</div>
|
|
46
44
|
|
|
47
45
|
<div class="form-group">
|
|
48
46
|
<label translate>Type of log</label>
|
|
49
|
-
<ui-select ng-model="vm.filters.logFile" required>
|
|
47
|
+
<ui-select ng-init="vm.logtypeSelect = $select" ng-model="vm.filters.logFile" required>
|
|
50
48
|
<ui-select-match
|
|
51
49
|
title="{{ $select.selected.name }}"
|
|
52
50
|
placeholder="{{ 'Type of log' | translate }}"
|
|
@@ -1 +1 @@
|
|
|
1
|
-
"use strict";function _slicedToArray(e,t){return _arrayWithHoles(e)||_iterableToArrayLimit(e,t)||_unsupportedIterableToArray(e,t)||_nonIterableRest()}function _nonIterableRest(){throw new TypeError("Invalid attempt to destructure non-iterable instance.\nIn order to be iterable, non-array objects must have a [Symbol.iterator]() method.")}function _unsupportedIterableToArray(e,t){if(e){if("string"==typeof e)return _arrayLikeToArray(e,t);var i=Object.prototype.toString.call(e).slice(8,-1);return"Object"===i&&e.constructor&&(i=e.constructor.name),"Map"===i||"Set"===i?Array.from(e):"Arguments"===i||/^(?:Ui|I)nt(?:8|16|32)(?:Clamped)?Array$/.test(i)?_arrayLikeToArray(e,t):void 0}}function _arrayLikeToArray(e,t){(null==t||t>e.length)&&(t=e.length);for(var i=0,n=new Array(t);i<t;i++)n[i]=e[i];return n}function _iterableToArrayLimit(e,t){var i=null==e?null:"undefined"!=typeof Symbol&&e[Symbol.iterator]||e["@@iterator"];if(null!=i){var n,r,a=[],o=!0,s=!1;try{for(i=i.call(e);!(o=(n=i.next()).done)&&(a.push(n.value),!t||a.length!==t);o=!0);}catch(e){s=!0,r=e}finally{try{o||null==i.return||i.return()}finally{if(s)throw r}}return a}}function _arrayWithHoles(e){if(Array.isArray(e))return e}function _defineProperty(e,t,i){return t in e?Object.defineProperty(e,t,{value:i,enumerable:!0,configurable:!0,writable:!0}):e[t]=i,e}!function(){function e(e,a,i,t,d,o,n,r,s,u,c,l,f,y,v,p){var g,A=this,m=i.deviceId,b={types:[]},I={IS_REQUIRED:"required",ADDRESS_IN_USE:"address-in-use",ADDRESSES_IN_USE:"addresses-in-use",ADDRESS_INVALID:"address-invalid",POLLING_RATE_LARGER_THAN_TRANSMIT_RATE:"polling-rate-larger-than-transmit-rate",ONLY_NATURAL_NUMBERS_ALLOWED:"only-natural-numbers-allowed",IPADDRESS_INVALID_FORMAT:"ip",INVALID_URL:"invalid-url",NODE_IN_USE:"node-in-use",NODE_OUT_OF_RANGE:"node-out-of-range",IP_RANGE:"ip-range",PORT_INVALID:"port-invalid",IP_RANGE_MAXLIMIT:"ip-range-maxlimit",ENGINEID_IN_USE:"engineid-in-use",IS_MIN:"min"},D=(_defineProperty(g={},I.IS_REQUIRED,v("This field is required.")),_defineProperty(g,I.ADDRESS_IN_USE,v("This address is already in use.")),_defineProperty(g,I.ADDRESSES_IN_USE,v("These addresses are already in use.")),_defineProperty(g,I.ADDRESS_INVALID,v("Addresses from 248 up to 254 are not allowed.")),_defineProperty(g,I.POLLING_RATE_LARGER_THAN_TRANSMIT_RATE,v("Polling rate must be equal to or smaller than transmit rate.")),_defineProperty(g,I.ONLY_NATURAL_NUMBERS_ALLOWED,v("Only natural numbers allowed.")),_defineProperty(g,I.IPADDRESS_INVALID_FORMAT,v("The IP address format is invalid.")),_defineProperty(g,I.INVALID_URL,v("The URL format is invalid. The only supported protocols are http, https and opc.tcp.")),_defineProperty(g,I.NODE_IN_USE,v("This node id is already in use.")),_defineProperty(g,I.IP_RANGE,v("Invalid IP address range.")),_defineProperty(g,I.PORT_INVALID,v("Invalid port number.")),_defineProperty(g,I.IP_RANGE_MAXLIMIT,v("Max. 30 IP addresses in total allowed.")),_defineProperty(g,I.NODE_OUT_OF_RANGE,v("Only node ID(s) between 1 and 127 are allowed.")),_defineProperty(g,I.ENGINEID_IN_USE,v("This engine ID is already in use.")),_defineProperty(g,I.IS_MIN,v("Value cannot be lower than minimum.")),g);function P(){var i=A.device;return _.assign(A,{hasSerialConfigOperation:r.supportsOperation(i,"c8y_SerialConfiguration"),hasFieldBusConfigOperation:function(e){return L()&&r.supportsOperation(e,"c8y_CanConfiguration")||O()&&r.supportsOperation(e,"c8y_ModbusConfiguration")||M()&&r.supportsOperation(e,"c8y_OPCUAConfiguration")||U()&&r.supportsOperation(e,"c8y_ProfibusConfiguration")||w()&&r.supportsOperation(e,"c8y_CANopenConfiguration")||V()&&r.supportsOperation(e,"c8y_SNMPConfiguration")}(i),serialConfiguration:function(e){return _.get(e,"c8y_SerialConfiguration",{})}(i),fieldbusConfiguration:function(e){var t={};e&&(O()?t=e.c8y_ModbusConfiguration:L()?t=e.c8y_CanConfiguration:M()?(e.c8y_OPCUAGateway&&(e.c8y_OPCUAGateway.transmitRate=e.c8y_OPCUAGateway.transmitRate||0,_.unset(e,"c8y_OPCUAGateway.userIdentityPassword")),t=e.c8y_OPCUAGateway):U()?(_.defaultsDeep(e,{c8y_ProfibusConfiguration:{baudRate:v("automatic")}}),t=e.c8y_ProfibusConfiguration):w()?t=e.c8y_CANopenConfiguration:V()&&(e.c8y_SNMPGateway&&(e.c8y_SNMPGateway.transmitRate=e.c8y_SNMPGateway.transmitRate||0,_.unset(e,"c8y_SNMPGateway.userIdentityPassword")),t=e.c8y_SNMPGateway));return t}(i)}),c.getAvailableDeviceTypes().then(function(e){var t=c.getFieldbusVersionFromDevice(i);_.set(A.fieldbusConfiguration,"maxFieldbusVersion",t),b.types=_(e).filter(function(e){return e.fieldbusVersion<=t}).filter(function(e){var t=e.fieldbusType;return O()&&"modbus"===t||L()&&"canbus"===t||M()&&"opcua"===t||U()&&"profibus"===t||w()&&"canopen"===t||V()&&"snmp"===t}).value()})}function S(){var e=function(e){var t=n.timeOrderFilter(e||{});return _.assign(t,_.pick(i,"deviceId")),t.revert=!0,t}({pageSize:1,fragmentType:"c8y_SnmpAutoDiscovery",status:"EXECUTING"});return o.list(e).then(N).then(h)}function N(e){var i=_slicedToArray(e,1)[0];if(i){A.autoDiscoveryInProgress=!0;var n=a.defer(),t="operation".concat(i.id),r="/operations/".concat(i.deviceId);return l.getStatus(t,r)&&l.destroySubscription(t,r),l.addListener(t,r,"UPDATE",function(e,t){t.id===i.id&&(t.status===o.status.SUCCESSFUL||t.status===o.status.FAILED?n.resolve(t):n.notify(t))}),l.start(t,r),a.when({completed:n.promise})}return!1}function R(){return r.childDevices(m).then(function(e){var t=V()?_.orderBy(e,["name"],["asc"]):e;A.devices=_.map(t,function(e){var t;return O()&&e.c8y_ModbusDevice?t=function(e){var t=C({device:e,fieldbusDeviceFragment:"c8y_ModbusDevice"});return{id:e.id,name:e.name,deviceType:_.get(t,"name"),address:e.c8y_ModbusDevice.address,ipAddress:e.c8y_ModbusDevice.ipAddress,protocol:e.c8y_ModbusDevice.protocol}}(e):L()&&e.c8y_CanDevice?t=function(e){var t=C({device:e,fieldbusDeviceFragment:"c8y_CanDevice"});return{id:e.id,name:e.name,deviceType:_.get(t,"name")}}(e):M()&&e.c8y_OPCUADevice?t=function(e){var t=C({device:e,fieldbusDeviceFragment:"c8y_OPCUADevice"});return{id:e.id,name:e.name,deviceType:_.get(t,"name"),directoryPath:e.c8y_OPCUADevice.browsePath}}(e):U()&&e.c8y_ProfibusDevice?t=function(e){var t=C({device:e,fieldbusDeviceFragment:"c8y_ProfibusDevice"});return{id:e.id,name:e.name,deviceType:_.get(t,"name")}}(e):w()&&e.c8y_CANopenDevice?t=function(e){var t=C({device:e,fieldbusDeviceFragment:"c8y_CANopenDevice"});return{id:e.id,name:e.name,deviceType:_.get(t,"name"),nodeId:e.c8y_CANopenDevice.nodeId}}(e):V()&&e.c8y_SNMPDevice&&(t=function(e){var t=C({device:e,fieldbusDeviceFragment:"c8y_SNMPDevice"});return{id:e.id,name:e.name,deviceType:_.get(t,"name"),ipAddress:e.c8y_SNMPDevice.ipAddress,port:e.c8y_SNMPDevice.port,version:e.c8y_SNMPDevice.version,auth:_.get(e.c8y_SNMPDevice,"auth",{})}}(e)),t})})}function C(e){var i=e.device,n=e.fieldbusDeviceFragment;return _(b.types).find(function(e){var t=e.id;return _.get(i,"".concat(n,".type"))==="/inventory/managedObjects/".concat(t)})}function E(){var e=A.fieldbusCommunicationForm;e.$setPristine(),e.$setUntouched()}function T(e){var t,i=e.split("-").map(function(e){return e.trim()}),n=y.validation.ip.pattern,r=y.validation.ipV6.pattern;if(2===i.length){var a=_slicedToArray(i,2),o=a[0],s=a[1],u=n.test(o)&&n.test(s),c=r.test(o)&&r.test(s);if(u||c)try{t=new d.Ip.Range(o,s)}catch(e){}}return t}function h(e){e.completed.then(function(e){e.status===o.status.SUCCESSFUL?(u.success(v("Autodiscovery completed.")),A.autoDiscoveryInProgress=!1):e.status===o.status.FAILED&&(e.failureReason?u.danger(p.getString('Autodiscovery failed due to: "{{ failureReason | translate }}".',e)):u.danger(v("Autodiscovery failed.")),A.autoDiscoveryInProgress=!1)},_.noop,function(){u.success(v("Autodiscovery in progress."))}).then(R)}function O(){return"modbus"===A.tab}function L(){return"canbus"===A.tab}function M(){return"opcua"===A.tab}function U(){return"profibus"===A.tab}function w(){return"canopen"===A.tab}function V(){return"snmp"===A.tab}_.assign(A,{$onInit:function(){r.detail(m).then(n.getResData).then(function(e){O()?_.defaults(e.c8y_SerialConfiguration,{baudRate:19200,dataBits:8,parity:"E",stopBits:1}):L()&&(A.serialConfigurationOptions.baudRates=[1e5,125e3,25e4,5e5,1e6]),A.device=e}).then(P).then(R).then(S)},shouldShowSerialPanel:function(){return O()&&_.get(A,"device.c8y_SerialConfiguration")},isModbusTab:O,isCanBusTab:L,isOPCUATab:M,isProfibusTab:U,isCanOpenTab:w,isSNMPTab:V,getFieldValidationHints:_.curryRight(n.validationHints)(D),serialConfigurationOptions:{baudRates:[110,300,600,1200,2400,4800,9600,14400,19200,38400,57600,115200,25e4,460800,5e5,921600,1e6],dataBits:[8],parities:["N","E","O"],stopBits:[1,2]},fieldbusConfigurationOptions:{baudRates:[{value:1e3,label:"1 Mbit/s"},{value:800,label:"800 kbit/s"},{value:500,label:"500 kbit/s"},{value:250,label:"250 kbit/s"},{value:125,label:"125 kbit/s"},{value:50,label:"50 kbit/s"},{value:20,label:"20 kbit/s"},{value:10,label:"10 kbit/s"}]},deviceConfigurationOptions:b,fieldErrors:I,fieldErrorsToMessages:D,saveSerialConfig:function(){(function(e){return o.create({deviceId:e.id,description:v("Set serial configuration"),c8y_SerialConfiguration:e.c8y_SerialConfiguration})})(A.device).then(function(){return u.success(v("Settings will be applied."))})},saveFieldbusConfig:function(){(function(e){var t=a.resolve();O()&&e.c8y_ModbusConfiguration?t=function(e){return o.create({deviceId:e.id,description:v("Set modbus configuration"),c8y_ModbusConfiguration:_.omit(e.c8y_ModbusConfiguration,["maxFieldbusVersion"])})}(e):L()?t=function(e){return o.create({deviceId:e.id,description:v("Set CAN Bus configuration"),c8y_CanConfiguration:_.omit(e.c8y_CanConfiguration,["maxFieldbusVersion"])})}(e):M()?t=function(e){var t=e.c8y_OPCUAGateway.transmitRate,i=_.merge(_.cloneDeep(e),{c8y_OPCUAGateway:{transmitRate:0===t?void 0:t}});return r.update(_.pick(i,["id","c8y_OPCUAGateway"]))}(e):U()?t=function(e){return o.create({deviceId:e.id,description:v("Set Profibus configuration"),c8y_ProfibusConfiguration:_.pick(e.c8y_ProfibusConfiguration,["transmitRate","slaveAddress"])})}(e):w()?t=function(e){return o.create({deviceId:e.id,description:v("Set CAN Open configuration"),c8y_CANopenConfiguration:_.omit(e.c8y_CANopenConfiguration,["maxFieldbusVersion"])})}(e):V()&&(t=function(e){var t=e.c8y_SNMPGateway.transmitRate,i=_.merge(_.cloneDeep(e),{c8y_SNMPGateway:{transmitRate:0===t?void 0:t}});return r.update(_.pick(i,["id","c8y_SNMPGateway"])).then(E)}(e));return t})(A.device).then(function(){return u.success(v("Settings will be applied."))})},invalid:function(e,t){(O()||M())&&function(e){var t=A[e],i=t.pollingRate;if(i){var n=t.transmitRate,r=!0,a=!0,o=i.$modelValue<=n.$modelValue;M()&&0===n.$modelValue&&(o=!0),(!_.isInteger(n.$modelValue)||n.$modelValue<=0)&&(r=!1),(!_.isInteger(i.$modelValue)||i.$modelValue<=0)&&(a=!1),n.$setValidity(I.ONLY_NATURAL_NUMBERS_ALLOWED,r),n.$setValidity(I.POLLING_RATE_LARGER_THAN_TRANSMIT_RATE,o),i.$setValidity(I.ONLY_NATURAL_NUMBERS_ALLOWED,a),i.$setValidity(I.POLLING_RATE_LARGER_THAN_TRANSMIT_RATE,o)}}(e);M()&&function(e){var t=A[e].OPCUAUrl,i=y.validation.opcuaBrowsePath.pattern,n=t.$modelValue;t.$setValidity(I.INVALID_URL,!n||i.test(n))}(e);V()&&function(e){var t=A[e].ipRange,i=t.$modelValue;if(i){var n=i.split(",").map(function(e){return e.trim()}),r=_.every(n,T);t.$setValidity(I.IP_RANGE,r),r&&function(e){var t=e.$modelValue,i=!0,n=!0,r=BigInt(30);if(t){var a=BigInt(0),o=t.split(",");_.forEach(o,function(e){var t=T(e);t||(i=!1),a+=BigInt(t.countIps())}),(r<a||a<-r)&&(n=!1)}e.$setValidity(I.IP_RANGE,i),e.$setValidity(I.IP_RANGE_MAXLIMIT,n)}(t)}}(e);return n.invalid(A,e,t)},reloadDevices:R,onClickDelete:function(e){s({title:v("Delete device"),body:p.getString('You are about to delete device "{{name}}". Do you want to proceed?',e),size:"sm",labels:{ok:v("Delete")},status:"danger"}).then(function(){return r.remove(e)}).then(function(){return w()?f.onRemove(A.device,e):a.resolve()}).then(function(){A.devices=_.without(A.devices,e),r.update({id:A.device.id}),u.success(v("Device deleted."))}).catch(function(e){e&&u.danger(e)})},navigateToDetail:function(e){t.url("device/".concat(e.id))},triggerAutodiscovery:function(e){A.autoDiscoveryInProgress=!0;var t=e.ipRange.$modelValue;if(t){var i={deviceId:m,description:v("Autodiscovery request"),c8y_SnmpAutoDiscovery:{ipRange:t}};o.createWithNotifications(i).then(h)}},autoDiscoveryInProgress:!1,canTriggerAutodiscovery:function(e){return A.autoDiscoveryInProgress||e.ipRange.$dirty||_.isEmpty(e.ipRange.$modelValue)}})}e.$inject=["$rootScope","$q","$routeParams","$location","$window","c8yDeviceControl","c8yBase","c8yDevices","c8yModal","c8yAlert","c8yDeviceDatabase","c8yRealtime","c8yCanopenDevice","c8yConfig","gettext","gettextCatalog"],angular.module("c8y.modbusConfiguration4").component("c8yFieldbusConfig",{templateUrl:":::PLUGIN_PATH:::/fieldbus-config.html",bindings:{tab:"@"},controllerAs:"vm",controller:e})}();
|
|
1
|
+
"use strict";function _slicedToArray(e,t){return _arrayWithHoles(e)||_iterableToArrayLimit(e,t)||_unsupportedIterableToArray(e,t)||_nonIterableRest()}function _nonIterableRest(){throw new TypeError("Invalid attempt to destructure non-iterable instance.\nIn order to be iterable, non-array objects must have a [Symbol.iterator]() method.")}function _unsupportedIterableToArray(e,t){if(e){if("string"==typeof e)return _arrayLikeToArray(e,t);var i=Object.prototype.toString.call(e).slice(8,-1);return"Object"===i&&e.constructor&&(i=e.constructor.name),"Map"===i||"Set"===i?Array.from(e):"Arguments"===i||/^(?:Ui|I)nt(?:8|16|32)(?:Clamped)?Array$/.test(i)?_arrayLikeToArray(e,t):void 0}}function _arrayLikeToArray(e,t){(null==t||t>e.length)&&(t=e.length);for(var i=0,n=new Array(t);i<t;i++)n[i]=e[i];return n}function _iterableToArrayLimit(e,t){var i=null==e?null:"undefined"!=typeof Symbol&&e[Symbol.iterator]||e["@@iterator"];if(null!=i){var n,r,a=[],o=!0,s=!1;try{for(i=i.call(e);!(o=(n=i.next()).done)&&(a.push(n.value),!t||a.length!==t);o=!0);}catch(e){s=!0,r=e}finally{try{o||null==i.return||i.return()}finally{if(s)throw r}}return a}}function _arrayWithHoles(e){if(Array.isArray(e))return e}function _defineProperty(e,t,i){return t in e?Object.defineProperty(e,t,{value:i,enumerable:!0,configurable:!0,writable:!0}):e[t]=i,e}!function(){function e(e,a,i,t,d,o,n,r,s,u,c,l,f,y,v,p){var g,A=this,m=i.deviceId,b={types:[]},I={IS_REQUIRED:"required",ADDRESS_IN_USE:"address-in-use",ADDRESSES_IN_USE:"addresses-in-use",ADDRESS_INVALID:"address-invalid",POLLING_RATE_LARGER_THAN_TRANSMIT_RATE:"polling-rate-larger-than-transmit-rate",ONLY_NATURAL_NUMBERS_ALLOWED:"only-natural-numbers-allowed",IPADDRESS_INVALID_FORMAT:"ip",INVALID_URL:"invalid-url",NODE_IN_USE:"node-in-use",NODE_OUT_OF_RANGE:"node-out-of-range",IP_RANGE:"ip-range",PORT_INVALID:"port-invalid",IP_RANGE_MAXLIMIT:"ip-range-maxlimit",ENGINEID_IN_USE:"engineid-in-use",IS_MIN:"min"},D=(_defineProperty(g={},I.IS_REQUIRED,v("This field is required.")),_defineProperty(g,I.ADDRESS_IN_USE,v("This address is already in use.")),_defineProperty(g,I.ADDRESSES_IN_USE,v("These addresses are already in use.")),_defineProperty(g,I.ADDRESS_INVALID,v("Addresses from 248 up to 254 are not allowed.")),_defineProperty(g,I.POLLING_RATE_LARGER_THAN_TRANSMIT_RATE,v("Polling rate must be equal to or smaller than transmit rate.")),_defineProperty(g,I.ONLY_NATURAL_NUMBERS_ALLOWED,v("Only natural numbers allowed.")),_defineProperty(g,I.IPADDRESS_INVALID_FORMAT,v("The IP address format is invalid.")),_defineProperty(g,I.INVALID_URL,v("The URL format is invalid. The only supported protocols are http, https and opc.tcp.")),_defineProperty(g,I.NODE_IN_USE,v("This node id is already in use.")),_defineProperty(g,I.IP_RANGE,v("Invalid IP address range.")),_defineProperty(g,I.PORT_INVALID,v("Invalid port number.")),_defineProperty(g,I.IP_RANGE_MAXLIMIT,v("Max. 30 IP addresses in total allowed.")),_defineProperty(g,I.NODE_OUT_OF_RANGE,v("Only node ID(s) between 1 and 127 are allowed.")),_defineProperty(g,I.ENGINEID_IN_USE,v("This engine ID is already in use.")),_defineProperty(g,I.IS_MIN,v("Value cannot be lower than minimum.")),g);function P(){var i=A.device,e={};_.assign(A,{hasSerialConfigOperation:r.supportsOperation(i,"c8y_SerialConfiguration"),hasFieldBusConfigOperation:function(e){return L()&&r.supportsOperation(e,"c8y_CanConfiguration")||O()&&r.supportsOperation(e,"c8y_ModbusConfiguration")||M()&&r.supportsOperation(e,"c8y_OPCUAConfiguration")||U()&&r.supportsOperation(e,"c8y_ProfibusConfiguration")||w()&&r.supportsOperation(e,"c8y_CANopenConfiguration")||V()&&r.supportsOperation(e,"c8y_SNMPConfiguration")}(i),serialConfiguration:function(e){return _.get(e,"c8y_SerialConfiguration",{})}(i),fieldbusConfiguration:function(e){var t={};e&&(O()?t=e.c8y_ModbusConfiguration:L()?t=e.c8y_CanConfiguration:M()?(e.c8y_OPCUAGateway&&(e.c8y_OPCUAGateway.transmitRate=e.c8y_OPCUAGateway.transmitRate||0,_.unset(e,"c8y_OPCUAGateway.userIdentityPassword")),t=e.c8y_OPCUAGateway):U()?(_.defaultsDeep(e,{c8y_ProfibusConfiguration:{baudRate:v("automatic")}}),t=e.c8y_ProfibusConfiguration):w()?t=e.c8y_CANopenConfiguration:V()&&(e.c8y_SNMPGateway&&(e.c8y_SNMPGateway.transmitRate=e.c8y_SNMPGateway.transmitRate||0,_.unset(e,"c8y_SNMPGateway.userIdentityPassword")),t=e.c8y_SNMPGateway));return t}(i)}),(V()||O())&&(e={pageSize:2e3});var t=A.tab;return c.getAvailableDeviceTypes({fieldbusType:t},e).then(function(e){var t=c.getFieldbusVersionFromDevice(i);_.set(A.fieldbusConfiguration,"maxFieldbusVersion",t),b.types=_.filter(e,function(e){return e.fieldbusVersion<=t})})}function S(){var e=function(e){var t=n.timeOrderFilter(e||{});return _.assign(t,_.pick(i,"deviceId")),t.revert=!0,t}({pageSize:1,fragmentType:"c8y_SnmpAutoDiscovery",status:"EXECUTING"});return o.list(e).then(N).then(h)}function N(e){var i=_slicedToArray(e,1)[0];if(i){A.autoDiscoveryInProgress=!0;var n=a.defer(),t="operation".concat(i.id),r="/operations/".concat(i.deviceId);return l.getStatus(t,r)&&l.destroySubscription(t,r),l.addListener(t,r,"UPDATE",function(e,t){t.id===i.id&&(t.status===o.status.SUCCESSFUL||t.status===o.status.FAILED?n.resolve(t):n.notify(t))}),l.start(t,r),a.when({completed:n.promise})}return!1}function R(){return r.childDevices(m).then(function(e){var t=V()?_.orderBy(e,["name"],["asc"]):e;A.devices=_.map(t,function(e){var t;return O()&&e.c8y_ModbusDevice?t=function(e){var t=C({device:e,fieldbusDeviceFragment:"c8y_ModbusDevice"});return{id:e.id,name:e.name,deviceType:_.get(t,"name"),address:e.c8y_ModbusDevice.address,ipAddress:e.c8y_ModbusDevice.ipAddress,protocol:e.c8y_ModbusDevice.protocol}}(e):L()&&e.c8y_CanDevice?t=function(e){var t=C({device:e,fieldbusDeviceFragment:"c8y_CanDevice"});return{id:e.id,name:e.name,deviceType:_.get(t,"name")}}(e):M()&&e.c8y_OPCUADevice?t=function(e){var t=C({device:e,fieldbusDeviceFragment:"c8y_OPCUADevice"});return{id:e.id,name:e.name,deviceType:_.get(t,"name"),directoryPath:e.c8y_OPCUADevice.browsePath}}(e):U()&&e.c8y_ProfibusDevice?t=function(e){var t=C({device:e,fieldbusDeviceFragment:"c8y_ProfibusDevice"});return{id:e.id,name:e.name,deviceType:_.get(t,"name")}}(e):w()&&e.c8y_CANopenDevice?t=function(e){var t=C({device:e,fieldbusDeviceFragment:"c8y_CANopenDevice"});return{id:e.id,name:e.name,deviceType:_.get(t,"name"),nodeId:e.c8y_CANopenDevice.nodeId}}(e):V()&&e.c8y_SNMPDevice&&(t=function(e){var t=C({device:e,fieldbusDeviceFragment:"c8y_SNMPDevice"});return{id:e.id,name:e.name,deviceType:_.get(t,"name"),ipAddress:e.c8y_SNMPDevice.ipAddress,port:e.c8y_SNMPDevice.port,version:e.c8y_SNMPDevice.version,auth:_.get(e.c8y_SNMPDevice,"auth",{})}}(e)),t})})}function C(e){var i=e.device,n=e.fieldbusDeviceFragment;return _(b.types).find(function(e){var t=e.id;return _.get(i,"".concat(n,".type"))==="/inventory/managedObjects/".concat(t)})}function E(){var e=A.fieldbusCommunicationForm;e.$setPristine(),e.$setUntouched()}function T(e){var t,i=e.split("-").map(function(e){return e.trim()}),n=y.validation.ip.pattern,r=y.validation.ipV6.pattern;if(2===i.length){var a=_slicedToArray(i,2),o=a[0],s=a[1],u=n.test(o)&&n.test(s),c=r.test(o)&&r.test(s);if(u||c)try{t=new d.Ip.Range(o,s)}catch(e){}}return t}function h(e){e.completed.then(function(e){e.status===o.status.SUCCESSFUL?(u.success(v("Autodiscovery completed.")),A.autoDiscoveryInProgress=!1):e.status===o.status.FAILED&&(e.failureReason?u.danger(p.getString('Autodiscovery failed due to: "{{ failureReason | translate }}".',e)):u.danger(v("Autodiscovery failed.")),A.autoDiscoveryInProgress=!1)},_.noop,function(){u.success(v("Autodiscovery in progress."))}).then(R)}function O(){return"modbus"===A.tab}function L(){return"canbus"===A.tab}function M(){return"opcua"===A.tab}function U(){return"profibus"===A.tab}function w(){return"canopen"===A.tab}function V(){return"snmp"===A.tab}_.assign(A,{$onInit:function(){r.detail(m).then(n.getResData).then(function(e){O()?_.defaults(e.c8y_SerialConfiguration,{baudRate:19200,dataBits:8,parity:"E",stopBits:1}):L()&&(A.serialConfigurationOptions.baudRates=[1e5,125e3,25e4,5e5,1e6]),A.device=e}).then(P).then(R).then(S)},shouldShowSerialPanel:function(){return O()&&_.get(A,"device.c8y_SerialConfiguration")},isModbusTab:O,isCanBusTab:L,isOPCUATab:M,isProfibusTab:U,isCanOpenTab:w,isSNMPTab:V,getFieldValidationHints:_.curryRight(n.validationHints)(D),serialConfigurationOptions:{baudRates:[110,300,600,1200,2400,4800,9600,14400,19200,38400,57600,115200,25e4,460800,5e5,921600,1e6],dataBits:[8],parities:["N","E","O"],stopBits:[1,2]},fieldbusConfigurationOptions:{baudRates:[{value:1e3,label:"1 Mbit/s"},{value:800,label:"800 kbit/s"},{value:500,label:"500 kbit/s"},{value:250,label:"250 kbit/s"},{value:125,label:"125 kbit/s"},{value:50,label:"50 kbit/s"},{value:20,label:"20 kbit/s"},{value:10,label:"10 kbit/s"}]},deviceConfigurationOptions:b,fieldErrors:I,fieldErrorsToMessages:D,saveSerialConfig:function(){(function(e){return o.create({deviceId:e.id,description:v("Set serial configuration"),c8y_SerialConfiguration:e.c8y_SerialConfiguration})})(A.device).then(function(){return u.success(v("Settings will be applied."))})},saveFieldbusConfig:function(){(function(e){var t=a.resolve();O()&&e.c8y_ModbusConfiguration?t=function(e){return o.create({deviceId:e.id,description:v("Set modbus configuration"),c8y_ModbusConfiguration:_.omit(e.c8y_ModbusConfiguration,["maxFieldbusVersion"])})}(e):L()?t=function(e){return o.create({deviceId:e.id,description:v("Set CAN Bus configuration"),c8y_CanConfiguration:_.omit(e.c8y_CanConfiguration,["maxFieldbusVersion"])})}(e):M()?t=function(e){var t=e.c8y_OPCUAGateway.transmitRate,i=_.merge(_.cloneDeep(e),{c8y_OPCUAGateway:{transmitRate:0===t?void 0:t}});return r.update(_.pick(i,["id","c8y_OPCUAGateway"]))}(e):U()?t=function(e){return o.create({deviceId:e.id,description:v("Set Profibus configuration"),c8y_ProfibusConfiguration:_.pick(e.c8y_ProfibusConfiguration,["transmitRate","slaveAddress"])})}(e):w()?t=function(e){return o.create({deviceId:e.id,description:v("Set CAN Open configuration"),c8y_CANopenConfiguration:_.omit(e.c8y_CANopenConfiguration,["maxFieldbusVersion"])})}(e):V()&&(t=function(e){var t=e.c8y_SNMPGateway.transmitRate,i=_.merge(_.cloneDeep(e),{c8y_SNMPGateway:{transmitRate:0===t?void 0:t}});return r.update(_.pick(i,["id","c8y_SNMPGateway"])).then(E)}(e));return t})(A.device).then(function(){return u.success(v("Settings will be applied."))})},invalid:function(e,t){(O()||M())&&function(e){var t=A[e],i=t.pollingRate;if(i){var n=t.transmitRate,r=!0,a=!0,o=i.$modelValue<=n.$modelValue;M()&&0===n.$modelValue&&(o=!0),(!_.isInteger(n.$modelValue)||n.$modelValue<=0)&&(r=!1),(!_.isInteger(i.$modelValue)||i.$modelValue<=0)&&(a=!1),n.$setValidity(I.ONLY_NATURAL_NUMBERS_ALLOWED,r),n.$setValidity(I.POLLING_RATE_LARGER_THAN_TRANSMIT_RATE,o),i.$setValidity(I.ONLY_NATURAL_NUMBERS_ALLOWED,a),i.$setValidity(I.POLLING_RATE_LARGER_THAN_TRANSMIT_RATE,o)}}(e);M()&&function(e){var t=A[e].OPCUAUrl,i=y.validation.opcuaBrowsePath.pattern,n=t.$modelValue;t.$setValidity(I.INVALID_URL,!n||i.test(n))}(e);V()&&function(e){var t=A[e].ipRange,i=t.$modelValue;if(i){var n=i.split(",").map(function(e){return e.trim()}),r=_.every(n,T);t.$setValidity(I.IP_RANGE,r),r&&function(e){var t=e.$modelValue,i=!0,n=!0,r=BigInt(30);if(t){var a=BigInt(0),o=t.split(",");_.forEach(o,function(e){var t=T(e);t||(i=!1),a+=BigInt(t.countIps())}),(r<a||a<-r)&&(n=!1)}e.$setValidity(I.IP_RANGE,i),e.$setValidity(I.IP_RANGE_MAXLIMIT,n)}(t)}}(e);return n.invalid(A,e,t)},reloadDevices:R,onClickDelete:function(e){s({title:v("Delete device"),body:p.getString('You are about to delete device "{{name}}". Do you want to proceed?',e),size:"sm",labels:{ok:v("Delete")},status:"danger"}).then(function(){return r.remove(e)}).then(function(){return w()?f.onRemove(A.device,e):a.resolve()}).then(function(){A.devices=_.without(A.devices,e),r.update({id:A.device.id}),u.success(v("Device deleted."))}).catch(function(e){e&&u.danger(e)})},navigateToDetail:function(e){t.url("device/".concat(e.id))},triggerAutodiscovery:function(e){A.autoDiscoveryInProgress=!0;var t=e.ipRange.$modelValue;if(t){var i={deviceId:m,description:v("Autodiscovery request"),c8y_SnmpAutoDiscovery:{ipRange:t}};o.createWithNotifications(i).then(h)}},autoDiscoveryInProgress:!1,canTriggerAutodiscovery:function(e){return A.autoDiscoveryInProgress||e.ipRange.$dirty||_.isEmpty(e.ipRange.$modelValue)}})}e.$inject=["$rootScope","$q","$routeParams","$location","$window","c8yDeviceControl","c8yBase","c8yDevices","c8yModal","c8yAlert","c8yDeviceDatabase","c8yRealtime","c8yCanopenDevice","c8yConfig","gettext","gettextCatalog"],angular.module("c8y.modbusConfiguration4").component("c8yFieldbusConfig",{templateUrl:":::PLUGIN_PATH:::/fieldbus-config.html",bindings:{tab:"@"},controllerAs:"vm",controller:e})}();
|
package/package.json
CHANGED
|
@@ -1,12 +1,12 @@
|
|
|
1
1
|
{
|
|
2
2
|
"name": "@c8y/ng1-modules",
|
|
3
|
-
"version": "1016.
|
|
3
|
+
"version": "1016.260.0",
|
|
4
4
|
"license": "Apache-2.0",
|
|
5
5
|
"author": "Cumulocity",
|
|
6
6
|
"description": "AngularJS modules for Cumulocity IoT applications.",
|
|
7
7
|
"dependencies": {
|
|
8
8
|
"@claviska/jquery-minicolors": "2.3.6",
|
|
9
|
-
"ace-builds": "1.
|
|
9
|
+
"ace-builds": "1.14.0",
|
|
10
10
|
"angular": "1.6.9",
|
|
11
11
|
"angular-animate": "1.6.9",
|
|
12
12
|
"angular-cron-jobs": "1.4.0",
|