This is an automated email from the ASF dual-hosted git repository.
riemer pushed a commit to branch dev
in repository https://gitbox.apache.org/repos/asf/streampipes.git
The following commit(s) were added to refs/heads/dev by this push:
new 4515c8b9df feat: Add translation to "data download" component (#3517)
4515c8b9df is described below
commit 4515c8b9dfcf057799edcbfc005f4759a9472b70
Author: Marcel Früholz <[email protected]>
AuthorDate: Fri Mar 7 09:01:27 2025 +0100
feat: Add translation to "data download" component (#3517)
* Add translation to "Data download" Module
* Remove formats from translation
---
ui/deployment/i18n/de.json | 33 +-
ui/deployment/i18n/en.json | 33 +-
ui/package-lock.json | 462 ++++-----------------
ui/package.json | 2 +-
.../components/download/download.component.html | 6 +-
.../select-data-missing-values.component.html | 8 +-
.../select-data-range.component.html | 12 +-
.../select-format/select-format.component.html | 28 +-
.../data-download-dialog.component.html | 12 +-
.../shared-ui/src/lib/shared-ui.module.ts | 2 +
10 files changed, 170 insertions(+), 428 deletions(-)
diff --git a/ui/deployment/i18n/de.json b/ui/deployment/i18n/de.json
index ceb9bbc46c..43376d0635 100644
--- a/ui/deployment/i18n/de.json
+++ b/ui/deployment/i18n/de.json
@@ -80,10 +80,6 @@
"False": "Falsch",
"Rounding": "Rundung",
"Inner Radius": "Innerer Radius",
- "Add custom color mapping": "Benutzerdefiniertes Mapping hinzufügen",
- "Add Mapping": "Mapping hinzufügen",
- "Value": "Wert",
- "Remove Mapping": "Mapping entfernen",
"Fields": "Felder",
"Latitude": "Breitengrad",
"Longitude": "Längengrad",
@@ -145,6 +141,10 @@
"Active": "Aktiv",
"Wheel": "Rad",
"Slider": "Slider",
+ "Add custom color mapping": "Benutzerdefiniertes Mapping hinzufügen",
+ "Add Mapping": "Mapping hinzufügen",
+ "Value": "Wert",
+ "Remove Mapping": "Mapping entfernen",
"Charts": "Diagramme",
"New chart": "Neues Diagramm",
"Chart": "Diagramm",
@@ -233,5 +233,28 @@
"Minute": "Minute",
"Hour": "Stunde",
"Day": "Tag",
- "Week": "Woche"
+ "Week": "Woche",
+ "Select Data": "Daten auswählen",
+ "Previous": "Zurück",
+ "Download": "Download",
+ "Select Format": "Format auswählen",
+ "Download Format": "Download-Format",
+ "Delimiter": "Trennzeichen",
+ "Excel template": "Excel Vorlage",
+ "Use uploaded file template": "Hochgeladene Vorlage verwenden",
+ "Choose template": "Vorlage auswählen",
+ "First row index to append data": "Erster Zeilenindex an denen Daten
angehängt werden sollen",
+ "Header column name": "Spaltenname",
+ "Use field key (runtime name) as header column": "Laufzeitname als
Spaltenname verwenden",
+ "Use field label as header column if available": "Label als Spaltenname
verwenden (falls vorhanden)",
+ "Data Range": "Datumsbereich",
+ "Currently configured query": "Aktuell konfigurierte Anfrage",
+ "All data in database": "Alle Daten in der Datenbank",
+ "All data in custom time interval": "Alle Daten im vorgegebenen
Zeitintervall",
+ "From": "Von",
+ "To": "Bis",
+ "Behaviour in case of missing values": "Verhalten im Falle von fehlenden
Daten",
+ "Ignore lines with missing value": "Zeilen ohne Daten ignorieren",
+ "Leave entry empty": "Leer lassen",
+ "Download successful": "Download erfolgreich"
}
diff --git a/ui/deployment/i18n/en.json b/ui/deployment/i18n/en.json
index 90499c0a0e..35053e32ed 100644
--- a/ui/deployment/i18n/en.json
+++ b/ui/deployment/i18n/en.json
@@ -80,10 +80,6 @@
"False": null,
"Rounding": null,
"Inner Radius": null,
- "Add custom color mapping": null,
- "Add Mapping": null,
- "Value": null,
- "Remove Mapping": null,
"Fields": null,
"Latitude": null,
"Longitude": null,
@@ -145,6 +141,10 @@
"Active": null,
"Wheel": null,
"Slider": null,
+ "Add custom color mapping": null,
+ "Add Mapping": null,
+ "Value": null,
+ "Remove Mapping": null,
"Charts": null,
"New chart": null,
"Chart": null,
@@ -233,5 +233,28 @@
"Minute": null,
"Hour": null,
"Day": null,
- "Week": null
+ "Week": null,
+ "Select Data": null,
+ "Previous": null,
+ "Download": null,
+ "Select Format": null,
+ "Download Format": null,
+ "Delimiter": null,
+ "Excel template": null,
+ "Use uploaded file template": null,
+ "Choose template": null,
+ "First row index to append data": null,
+ "Header column name": null,
+ "Use field key (runtime name) as header column": null,
+ "Use field label as header column if available": null,
+ "Data Range": null,
+ "Currently configured query": null,
+ "All data in database": null,
+ "All data in custom time interval": null,
+ "From": null,
+ "To": null,
+ "Behaviour in case of missing values": null,
+ "Ignore lines with missing value": null,
+ "Leave entry empty": null,
+ "Download successful": null
}
diff --git a/ui/package-lock.json b/ui/package-lock.json
index d4dbd860be..fe113ad40b 100644
--- a/ui/package-lock.json
+++ b/ui/package-lock.json
@@ -1704,6 +1704,36 @@
"semver": "bin/semver.js"
}
},
+ "node_modules/@angular/compiler-cli/node_modules/chokidar": {
+ "version": "4.0.3",
+ "resolved": "https://registry.npmjs.org/chokidar/-/chokidar-4.0.3.tgz",
+ "integrity":
"sha512-Qgzu8kfBvo+cA4962jnP1KkS6Dop5NS6g7R5LFYJr4b8Ub94PPQXUksCw9PvXoeXPRRddRNC5C1JQUR2SMGtnA==",
+ "dev": true,
+ "license": "MIT",
+ "dependencies": {
+ "readdirp": "^4.0.1"
+ },
+ "engines": {
+ "node": ">= 14.16.0"
+ },
+ "funding": {
+ "url": "https://paulmillr.com/funding/"
+ }
+ },
+ "node_modules/@angular/compiler-cli/node_modules/readdirp": {
+ "version": "4.1.2",
+ "resolved": "https://registry.npmjs.org/readdirp/-/readdirp-4.1.2.tgz",
+ "integrity":
"sha512-GDhwkLfywWL2s6vEjyhri+eXmfH6j1L7JE27WhqLeYzoh/A3DBaYGEj2H/HFZCn/kMfim73FXxEJTw06WtxQwg==",
+ "dev": true,
+ "license": "MIT",
+ "engines": {
+ "node": ">= 14.18.0"
+ },
+ "funding": {
+ "type": "individual",
+ "url": "https://paulmillr.com/funding/"
+ }
+ },
"node_modules/@angular/core": {
"version": "18.2.13",
"resolved":
"https://registry.npmjs.org/@angular/core/-/core-18.2.13.tgz",
@@ -6290,66 +6320,6 @@
"chokidar": "^3.0.0"
}
},
- "node_modules/@types/browser-sync/node_modules/chokidar": {
- "version": "3.6.0",
- "resolved": "https://registry.npmjs.org/chokidar/-/chokidar-3.6.0.tgz",
- "integrity":
"sha512-7VT13fmjotKpGipCW9JEQAusEPE+Ei8nl6/g4FBAmIm0GOOLMua9NDDo/DWp0ZAxCr3cPq5ZpBqmPAQgDda2Pw==",
- "license": "MIT",
- "dependencies": {
- "anymatch": "~3.1.2",
- "braces": "~3.0.2",
- "glob-parent": "~5.1.2",
- "is-binary-path": "~2.1.0",
- "is-glob": "~4.0.1",
- "normalize-path": "~3.0.0",
- "readdirp": "~3.6.0"
- },
- "engines": {
- "node": ">= 8.10.0"
- },
- "funding": {
- "url": "https://paulmillr.com/funding/"
- },
- "optionalDependencies": {
- "fsevents": "~2.3.2"
- }
- },
- "node_modules/@types/browser-sync/node_modules/glob-parent": {
- "version": "5.1.2",
- "resolved":
"https://registry.npmjs.org/glob-parent/-/glob-parent-5.1.2.tgz",
- "integrity":
"sha512-AOIgSQCepiJYwP3ARnGx+5VnTu2HBYdzbGP45eLw1vr3zB3vZLeyed1sC9hnbcOc9/SrMyM5RPQrkGz4aS9Zow==",
- "license": "ISC",
- "dependencies": {
- "is-glob": "^4.0.1"
- },
- "engines": {
- "node": ">= 6"
- }
- },
- "node_modules/@types/browser-sync/node_modules/picomatch": {
- "version": "2.3.1",
- "resolved": "https://registry.npmjs.org/picomatch/-/picomatch-2.3.1.tgz",
- "integrity":
"sha512-JU3teHTNjmE2VCGFzuY8EXzCDVwEqB2a8fsIvwaStHhAWJEeVd1o1QD80CU6+ZdEXXSLbSsuLwJjkCBWqRQUVA==",
- "license": "MIT",
- "engines": {
- "node": ">=8.6"
- },
- "funding": {
- "url": "https://github.com/sponsors/jonschlinkert"
- }
- },
- "node_modules/@types/browser-sync/node_modules/readdirp": {
- "version": "3.6.0",
- "resolved": "https://registry.npmjs.org/readdirp/-/readdirp-3.6.0.tgz",
- "integrity":
"sha512-hOS089on8RduqdbhvQ5Z37A0ESjsqz6qnRcffsMU3495FuTdqSm+7bhJ29JvIOsBDEEnan5DPu9t3To9VRlMzA==",
- "license": "MIT",
- "dependencies": {
- "picomatch": "^2.2.1"
- },
- "engines": {
- "node": ">=8.10.0"
- }
- },
"node_modules/@types/codemirror": {
"version": "5.60.15",
"resolved":
"https://registry.npmjs.org/@types/codemirror/-/codemirror-5.60.15.tgz",
@@ -8678,66 +8648,6 @@
"stream-throttle": "^0.1.3"
}
},
- "node_modules/browser-sync/node_modules/chokidar": {
- "version": "3.6.0",
- "resolved": "https://registry.npmjs.org/chokidar/-/chokidar-3.6.0.tgz",
- "integrity":
"sha512-7VT13fmjotKpGipCW9JEQAusEPE+Ei8nl6/g4FBAmIm0GOOLMua9NDDo/DWp0ZAxCr3cPq5ZpBqmPAQgDda2Pw==",
- "license": "MIT",
- "dependencies": {
- "anymatch": "~3.1.2",
- "braces": "~3.0.2",
- "glob-parent": "~5.1.2",
- "is-binary-path": "~2.1.0",
- "is-glob": "~4.0.1",
- "normalize-path": "~3.0.0",
- "readdirp": "~3.6.0"
- },
- "engines": {
- "node": ">= 8.10.0"
- },
- "funding": {
- "url": "https://paulmillr.com/funding/"
- },
- "optionalDependencies": {
- "fsevents": "~2.3.2"
- }
- },
- "node_modules/browser-sync/node_modules/glob-parent": {
- "version": "5.1.2",
- "resolved":
"https://registry.npmjs.org/glob-parent/-/glob-parent-5.1.2.tgz",
- "integrity":
"sha512-AOIgSQCepiJYwP3ARnGx+5VnTu2HBYdzbGP45eLw1vr3zB3vZLeyed1sC9hnbcOc9/SrMyM5RPQrkGz4aS9Zow==",
- "license": "ISC",
- "dependencies": {
- "is-glob": "^4.0.1"
- },
- "engines": {
- "node": ">= 6"
- }
- },
- "node_modules/browser-sync/node_modules/picomatch": {
- "version": "2.3.1",
- "resolved": "https://registry.npmjs.org/picomatch/-/picomatch-2.3.1.tgz",
- "integrity":
"sha512-JU3teHTNjmE2VCGFzuY8EXzCDVwEqB2a8fsIvwaStHhAWJEeVd1o1QD80CU6+ZdEXXSLbSsuLwJjkCBWqRQUVA==",
- "license": "MIT",
- "engines": {
- "node": ">=8.6"
- },
- "funding": {
- "url": "https://github.com/sponsors/jonschlinkert"
- }
- },
- "node_modules/browser-sync/node_modules/readdirp": {
- "version": "3.6.0",
- "resolved": "https://registry.npmjs.org/readdirp/-/readdirp-3.6.0.tgz",
- "integrity":
"sha512-hOS089on8RduqdbhvQ5Z37A0ESjsqz6qnRcffsMU3495FuTdqSm+7bhJ29JvIOsBDEEnan5DPu9t3To9VRlMzA==",
- "license": "MIT",
- "dependencies": {
- "picomatch": "^2.2.1"
- },
- "engines": {
- "node": ">=8.10.0"
- }
- },
"node_modules/browserslist": {
"version": "4.24.4",
"resolved":
"https://registry.npmjs.org/browserslist/-/browserslist-4.24.4.tgz",
@@ -9033,19 +8943,39 @@
}
},
"node_modules/chokidar": {
- "version": "4.0.3",
- "resolved": "https://registry.npmjs.org/chokidar/-/chokidar-4.0.3.tgz",
- "integrity":
"sha512-Qgzu8kfBvo+cA4962jnP1KkS6Dop5NS6g7R5LFYJr4b8Ub94PPQXUksCw9PvXoeXPRRddRNC5C1JQUR2SMGtnA==",
- "dev": true,
+ "version": "3.6.0",
+ "resolved": "https://registry.npmjs.org/chokidar/-/chokidar-3.6.0.tgz",
+ "integrity":
"sha512-7VT13fmjotKpGipCW9JEQAusEPE+Ei8nl6/g4FBAmIm0GOOLMua9NDDo/DWp0ZAxCr3cPq5ZpBqmPAQgDda2Pw==",
"license": "MIT",
"dependencies": {
- "readdirp": "^4.0.1"
+ "anymatch": "~3.1.2",
+ "braces": "~3.0.2",
+ "glob-parent": "~5.1.2",
+ "is-binary-path": "~2.1.0",
+ "is-glob": "~4.0.1",
+ "normalize-path": "~3.0.0",
+ "readdirp": "~3.6.0"
},
"engines": {
- "node": ">= 14.16.0"
+ "node": ">= 8.10.0"
},
"funding": {
"url": "https://paulmillr.com/funding/"
+ },
+ "optionalDependencies": {
+ "fsevents": "~2.3.2"
+ }
+ },
+ "node_modules/chokidar/node_modules/glob-parent": {
+ "version": "5.1.2",
+ "resolved":
"https://registry.npmjs.org/glob-parent/-/glob-parent-5.1.2.tgz",
+ "integrity":
"sha512-AOIgSQCepiJYwP3ARnGx+5VnTu2HBYdzbGP45eLw1vr3zB3vZLeyed1sC9hnbcOc9/SrMyM5RPQrkGz4aS9Zow==",
+ "license": "ISC",
+ "dependencies": {
+ "is-glob": "^4.0.1"
+ },
+ "engines": {
+ "node": ">= 6"
}
},
"node_modules/chownr": {
@@ -14726,31 +14656,6 @@
"concat-map": "0.0.1"
}
},
- "node_modules/karma/node_modules/chokidar": {
- "version": "3.6.0",
- "resolved": "https://registry.npmjs.org/chokidar/-/chokidar-3.6.0.tgz",
- "integrity":
"sha512-7VT13fmjotKpGipCW9JEQAusEPE+Ei8nl6/g4FBAmIm0GOOLMua9NDDo/DWp0ZAxCr3cPq5ZpBqmPAQgDda2Pw==",
- "dev": true,
- "license": "MIT",
- "dependencies": {
- "anymatch": "~3.1.2",
- "braces": "~3.0.2",
- "glob-parent": "~5.1.2",
- "is-binary-path": "~2.1.0",
- "is-glob": "~4.0.1",
- "normalize-path": "~3.0.0",
- "readdirp": "~3.6.0"
- },
- "engines": {
- "node": ">= 8.10.0"
- },
- "funding": {
- "url": "https://paulmillr.com/funding/"
- },
- "optionalDependencies": {
- "fsevents": "~2.3.2"
- }
- },
"node_modules/karma/node_modules/cliui": {
"version": "7.0.4",
"resolved": "https://registry.npmjs.org/cliui/-/cliui-7.0.4.tgz",
@@ -14830,19 +14735,6 @@
"url": "https://github.com/sponsors/isaacs"
}
},
- "node_modules/karma/node_modules/glob-parent": {
- "version": "5.1.2",
- "resolved":
"https://registry.npmjs.org/glob-parent/-/glob-parent-5.1.2.tgz",
- "integrity":
"sha512-AOIgSQCepiJYwP3ARnGx+5VnTu2HBYdzbGP45eLw1vr3zB3vZLeyed1sC9hnbcOc9/SrMyM5RPQrkGz4aS9Zow==",
- "dev": true,
- "license": "ISC",
- "dependencies": {
- "is-glob": "^4.0.1"
- },
- "engines": {
- "node": ">= 6"
- }
- },
"node_modules/karma/node_modules/minimatch": {
"version": "3.1.2",
"resolved": "https://registry.npmjs.org/minimatch/-/minimatch-3.1.2.tgz",
@@ -14863,32 +14755,6 @@
"dev": true,
"license": "MIT"
},
- "node_modules/karma/node_modules/picomatch": {
- "version": "2.3.1",
- "resolved": "https://registry.npmjs.org/picomatch/-/picomatch-2.3.1.tgz",
- "integrity":
"sha512-JU3teHTNjmE2VCGFzuY8EXzCDVwEqB2a8fsIvwaStHhAWJEeVd1o1QD80CU6+ZdEXXSLbSsuLwJjkCBWqRQUVA==",
- "dev": true,
- "license": "MIT",
- "engines": {
- "node": ">=8.6"
- },
- "funding": {
- "url": "https://github.com/sponsors/jonschlinkert"
- }
- },
- "node_modules/karma/node_modules/readdirp": {
- "version": "3.6.0",
- "resolved": "https://registry.npmjs.org/readdirp/-/readdirp-3.6.0.tgz",
- "integrity":
"sha512-hOS089on8RduqdbhvQ5Z37A0ESjsqz6qnRcffsMU3495FuTdqSm+7bhJ29JvIOsBDEEnan5DPu9t3To9VRlMzA==",
- "dev": true,
- "license": "MIT",
- "dependencies": {
- "picomatch": "^2.2.1"
- },
- "engines": {
- "node": ">=8.10.0"
- }
- },
"node_modules/karma/node_modules/source-map": {
"version": "0.6.1",
"resolved":
"https://registry.npmjs.org/source-map/-/source-map-0.6.1.tgz",
@@ -17238,31 +17104,6 @@
"node": ">=18"
}
},
- "node_modules/ng-packagr/node_modules/chokidar": {
- "version": "3.6.0",
- "resolved": "https://registry.npmjs.org/chokidar/-/chokidar-3.6.0.tgz",
- "integrity":
"sha512-7VT13fmjotKpGipCW9JEQAusEPE+Ei8nl6/g4FBAmIm0GOOLMua9NDDo/DWp0ZAxCr3cPq5ZpBqmPAQgDda2Pw==",
- "dev": true,
- "license": "MIT",
- "dependencies": {
- "anymatch": "~3.1.2",
- "braces": "~3.0.2",
- "glob-parent": "~5.1.2",
- "is-binary-path": "~2.1.0",
- "is-glob": "~4.0.1",
- "normalize-path": "~3.0.0",
- "readdirp": "~3.6.0"
- },
- "engines": {
- "node": ">= 8.10.0"
- },
- "funding": {
- "url": "https://paulmillr.com/funding/"
- },
- "optionalDependencies": {
- "fsevents": "~2.3.2"
- }
- },
"node_modules/ng-packagr/node_modules/commander": {
"version": "12.1.0",
"resolved":
"https://registry.npmjs.org/commander/-/commander-12.1.0.tgz",
@@ -17352,19 +17193,6 @@
"node": ">=8"
}
},
- "node_modules/ng-packagr/node_modules/glob-parent": {
- "version": "5.1.2",
- "resolved":
"https://registry.npmjs.org/glob-parent/-/glob-parent-5.1.2.tgz",
- "integrity":
"sha512-AOIgSQCepiJYwP3ARnGx+5VnTu2HBYdzbGP45eLw1vr3zB3vZLeyed1sC9hnbcOc9/SrMyM5RPQrkGz4aS9Zow==",
- "dev": true,
- "license": "ISC",
- "dependencies": {
- "is-glob": "^4.0.1"
- },
- "engines": {
- "node": ">= 6"
- }
- },
"node_modules/ng-packagr/node_modules/locate-path": {
"version": "5.0.0",
"resolved":
"https://registry.npmjs.org/locate-path/-/locate-path-5.0.0.tgz",
@@ -17423,19 +17251,6 @@
"node": ">=8"
}
},
- "node_modules/ng-packagr/node_modules/picomatch": {
- "version": "2.3.1",
- "resolved": "https://registry.npmjs.org/picomatch/-/picomatch-2.3.1.tgz",
- "integrity":
"sha512-JU3teHTNjmE2VCGFzuY8EXzCDVwEqB2a8fsIvwaStHhAWJEeVd1o1QD80CU6+ZdEXXSLbSsuLwJjkCBWqRQUVA==",
- "dev": true,
- "license": "MIT",
- "engines": {
- "node": ">=8.6"
- },
- "funding": {
- "url": "https://github.com/sponsors/jonschlinkert"
- }
- },
"node_modules/ng-packagr/node_modules/pkg-dir": {
"version": "4.2.0",
"resolved": "https://registry.npmjs.org/pkg-dir/-/pkg-dir-4.2.0.tgz",
@@ -17449,19 +17264,6 @@
"node": ">=8"
}
},
- "node_modules/ng-packagr/node_modules/readdirp": {
- "version": "3.6.0",
- "resolved": "https://registry.npmjs.org/readdirp/-/readdirp-3.6.0.tgz",
- "integrity":
"sha512-hOS089on8RduqdbhvQ5Z37A0ESjsqz6qnRcffsMU3495FuTdqSm+7bhJ29JvIOsBDEEnan5DPu9t3To9VRlMzA==",
- "dev": true,
- "license": "MIT",
- "dependencies": {
- "picomatch": "^2.2.1"
- },
- "engines": {
- "node": ">=8.10.0"
- }
- },
"node_modules/ng-packagr/node_modules/semver": {
"version": "6.3.1",
"resolved": "https://registry.npmjs.org/semver/-/semver-6.3.1.tgz",
@@ -19142,17 +18944,27 @@
}
},
"node_modules/readdirp": {
- "version": "4.1.2",
- "resolved": "https://registry.npmjs.org/readdirp/-/readdirp-4.1.2.tgz",
- "integrity":
"sha512-GDhwkLfywWL2s6vEjyhri+eXmfH6j1L7JE27WhqLeYzoh/A3DBaYGEj2H/HFZCn/kMfim73FXxEJTw06WtxQwg==",
- "dev": true,
+ "version": "3.6.0",
+ "resolved": "https://registry.npmjs.org/readdirp/-/readdirp-3.6.0.tgz",
+ "integrity":
"sha512-hOS089on8RduqdbhvQ5Z37A0ESjsqz6qnRcffsMU3495FuTdqSm+7bhJ29JvIOsBDEEnan5DPu9t3To9VRlMzA==",
+ "license": "MIT",
+ "dependencies": {
+ "picomatch": "^2.2.1"
+ },
+ "engines": {
+ "node": ">=8.10.0"
+ }
+ },
+ "node_modules/readdirp/node_modules/picomatch": {
+ "version": "2.3.1",
+ "resolved": "https://registry.npmjs.org/picomatch/-/picomatch-2.3.1.tgz",
+ "integrity":
"sha512-JU3teHTNjmE2VCGFzuY8EXzCDVwEqB2a8fsIvwaStHhAWJEeVd1o1QD80CU6+ZdEXXSLbSsuLwJjkCBWqRQUVA==",
"license": "MIT",
"engines": {
- "node": ">= 14.18.0"
+ "node": ">=8.6"
},
"funding": {
- "type": "individual",
- "url": "https://paulmillr.com/funding/"
+ "url": "https://github.com/sponsors/jonschlinkert"
}
},
"node_modules/reflect-metadata": {
@@ -19761,44 +19573,6 @@
}
}
},
- "node_modules/sass/node_modules/chokidar": {
- "version": "3.6.0",
- "resolved": "https://registry.npmjs.org/chokidar/-/chokidar-3.6.0.tgz",
- "integrity":
"sha512-7VT13fmjotKpGipCW9JEQAusEPE+Ei8nl6/g4FBAmIm0GOOLMua9NDDo/DWp0ZAxCr3cPq5ZpBqmPAQgDda2Pw==",
- "dev": true,
- "license": "MIT",
- "dependencies": {
- "anymatch": "~3.1.2",
- "braces": "~3.0.2",
- "glob-parent": "~5.1.2",
- "is-binary-path": "~2.1.0",
- "is-glob": "~4.0.1",
- "normalize-path": "~3.0.0",
- "readdirp": "~3.6.0"
- },
- "engines": {
- "node": ">= 8.10.0"
- },
- "funding": {
- "url": "https://paulmillr.com/funding/"
- },
- "optionalDependencies": {
- "fsevents": "~2.3.2"
- }
- },
- "node_modules/sass/node_modules/glob-parent": {
- "version": "5.1.2",
- "resolved":
"https://registry.npmjs.org/glob-parent/-/glob-parent-5.1.2.tgz",
- "integrity":
"sha512-AOIgSQCepiJYwP3ARnGx+5VnTu2HBYdzbGP45eLw1vr3zB3vZLeyed1sC9hnbcOc9/SrMyM5RPQrkGz4aS9Zow==",
- "dev": true,
- "license": "ISC",
- "dependencies": {
- "is-glob": "^4.0.1"
- },
- "engines": {
- "node": ">= 6"
- }
- },
"node_modules/sass/node_modules/immutable": {
"version": "4.3.7",
"resolved": "https://registry.npmjs.org/immutable/-/immutable-4.3.7.tgz",
@@ -19806,32 +19580,6 @@
"dev": true,
"license": "MIT"
},
- "node_modules/sass/node_modules/picomatch": {
- "version": "2.3.1",
- "resolved": "https://registry.npmjs.org/picomatch/-/picomatch-2.3.1.tgz",
- "integrity":
"sha512-JU3teHTNjmE2VCGFzuY8EXzCDVwEqB2a8fsIvwaStHhAWJEeVd1o1QD80CU6+ZdEXXSLbSsuLwJjkCBWqRQUVA==",
- "dev": true,
- "license": "MIT",
- "engines": {
- "node": ">=8.6"
- },
- "funding": {
- "url": "https://github.com/sponsors/jonschlinkert"
- }
- },
- "node_modules/sass/node_modules/readdirp": {
- "version": "3.6.0",
- "resolved": "https://registry.npmjs.org/readdirp/-/readdirp-3.6.0.tgz",
- "integrity":
"sha512-hOS089on8RduqdbhvQ5Z37A0ESjsqz6qnRcffsMU3495FuTdqSm+7bhJ29JvIOsBDEEnan5DPu9t3To9VRlMzA==",
- "dev": true,
- "license": "MIT",
- "dependencies": {
- "picomatch": "^2.2.1"
- },
- "engines": {
- "node": ">=8.10.0"
- }
- },
"node_modules/sax": {
"version": "1.4.1",
"resolved": "https://registry.npmjs.org/sax/-/sax-1.4.1.tgz",
@@ -22568,31 +22316,6 @@
}
}
},
- "node_modules/webpack-dev-server/node_modules/chokidar": {
- "version": "3.6.0",
- "resolved": "https://registry.npmjs.org/chokidar/-/chokidar-3.6.0.tgz",
- "integrity":
"sha512-7VT13fmjotKpGipCW9JEQAusEPE+Ei8nl6/g4FBAmIm0GOOLMua9NDDo/DWp0ZAxCr3cPq5ZpBqmPAQgDda2Pw==",
- "dev": true,
- "license": "MIT",
- "dependencies": {
- "anymatch": "~3.1.2",
- "braces": "~3.0.2",
- "glob-parent": "~5.1.2",
- "is-binary-path": "~2.1.0",
- "is-glob": "~4.0.1",
- "normalize-path": "~3.0.0",
- "readdirp": "~3.6.0"
- },
- "engines": {
- "node": ">= 8.10.0"
- },
- "funding": {
- "url": "https://paulmillr.com/funding/"
- },
- "optionalDependencies": {
- "fsevents": "~2.3.2"
- }
- },
"node_modules/webpack-dev-server/node_modules/connect-history-api-fallback": {
"version": "2.0.0",
"resolved":
"https://registry.npmjs.org/connect-history-api-fallback/-/connect-history-api-fallback-2.0.0.tgz",
@@ -22603,19 +22326,6 @@
"node": ">=0.8"
}
},
- "node_modules/webpack-dev-server/node_modules/glob-parent": {
- "version": "5.1.2",
- "resolved":
"https://registry.npmjs.org/glob-parent/-/glob-parent-5.1.2.tgz",
- "integrity":
"sha512-AOIgSQCepiJYwP3ARnGx+5VnTu2HBYdzbGP45eLw1vr3zB3vZLeyed1sC9hnbcOc9/SrMyM5RPQrkGz4aS9Zow==",
- "dev": true,
- "license": "ISC",
- "dependencies": {
- "is-glob": "^4.0.1"
- },
- "engines": {
- "node": ">= 6"
- }
- },
"node_modules/webpack-dev-server/node_modules/http-proxy-middleware": {
"version": "2.0.7",
"resolved":
"https://registry.npmjs.org/http-proxy-middleware/-/http-proxy-middleware-2.0.7.tgz",
@@ -22641,32 +22351,6 @@
}
}
},
- "node_modules/webpack-dev-server/node_modules/picomatch": {
- "version": "2.3.1",
- "resolved": "https://registry.npmjs.org/picomatch/-/picomatch-2.3.1.tgz",
- "integrity":
"sha512-JU3teHTNjmE2VCGFzuY8EXzCDVwEqB2a8fsIvwaStHhAWJEeVd1o1QD80CU6+ZdEXXSLbSsuLwJjkCBWqRQUVA==",
- "dev": true,
- "license": "MIT",
- "engines": {
- "node": ">=8.6"
- },
- "funding": {
- "url": "https://github.com/sponsors/jonschlinkert"
- }
- },
- "node_modules/webpack-dev-server/node_modules/readdirp": {
- "version": "3.6.0",
- "resolved": "https://registry.npmjs.org/readdirp/-/readdirp-3.6.0.tgz",
- "integrity":
"sha512-hOS089on8RduqdbhvQ5Z37A0ESjsqz6qnRcffsMU3495FuTdqSm+7bhJ29JvIOsBDEEnan5DPu9t3To9VRlMzA==",
- "dev": true,
- "license": "MIT",
- "dependencies": {
- "picomatch": "^2.2.1"
- },
- "engines": {
- "node": ">=8.10.0"
- }
- },
"node_modules/webpack-dev-server/node_modules/rimraf": {
"version": "5.0.10",
"resolved": "https://registry.npmjs.org/rimraf/-/rimraf-5.0.10.tgz",
diff --git a/ui/package.json b/ui/package.json
index 66cd84d0db..caf1ba5d1f 100644
--- a/ui/package.json
+++ b/ui/package.json
@@ -27,7 +27,7 @@
"test-cypress-smoke": "npx cypress run --spec
'cypress/tests/**/*.smoke.spec.ts' --config baseUrl=http://localhost:8082",
"test-cypress-all": "npx cypress run --spec 'cypress/tests/**/*.spec.ts'
--config baseUrl=http://localhost:8082",
"prepare": "cd ../ && husky install ./ui/.husky",
- "i18n:extract": "ngx-translate-extract --input ./src --output
./deployment/i18n/{en,de}.json -n --clean --format json",
+ "i18n:extract": "ngx-translate-extract --input ./src --input ./projects
--output ./deployment/i18n/{en,de}.json -n --clean --format json",
"i18n:translate": "node ./deployment/i18n-translate.js"
},
"dependencies": {
diff --git
a/ui/projects/streampipes/shared-ui/src/lib/dialog/data-download-dialog/components/download/download.component.html
b/ui/projects/streampipes/shared-ui/src/lib/dialog/data-download-dialog/components/download/download.component.html
index 2e1f30dc39..235bda06b9 100644
---
a/ui/projects/streampipes/shared-ui/src/lib/dialog/data-download-dialog/components/download/download.component.html
+++
b/ui/projects/streampipes/shared-ui/src/lib/dialog/data-download-dialog/components/download/download.component.html
@@ -16,7 +16,7 @@
~
-->
<div fxFlex="100">
- <ng-template matStepLabel>Download</ng-template>
+ <ng-template matStepLabel>{{ 'Download' | translate }}</ng-template>
<div
fxLayout="column"
fxLayoutAlign="center center"
@@ -28,7 +28,7 @@
>{{ downloadProgress.downloadedMBs | number: '1.0-2' }} Mb</label
>
<button mat-button color="warn" (click)="cancelDownload()">
- Cancel
+ {{ 'Cancel' | translate }}
</button>
</div>
<div
@@ -37,6 +37,6 @@
*ngIf="downloadProgress.finished"
>
<mat-icon class="icon-check">check</mat-icon>
- <h5>Download successful</h5>
+ <h5>{{ 'Download successful' | translate }}</h5>
</div>
</div>
diff --git
a/ui/projects/streampipes/shared-ui/src/lib/dialog/data-download-dialog/components/select-data/select-data-missing-values/select-data-missing-values.component.html
b/ui/projects/streampipes/shared-ui/src/lib/dialog/data-download-dialog/components/select-data/select-data-missing-values/select-data-missing-values.component.html
index c507310bd5..aa4a966f02 100644
---
a/ui/projects/streampipes/shared-ui/src/lib/dialog/data-download-dialog/components/select-data/select-data-missing-values/select-data-missing-values.component.html
+++
b/ui/projects/streampipes/shared-ui/src/lib/dialog/data-download-dialog/components/select-data/select-data-missing-values/select-data-missing-values.component.html
@@ -16,7 +16,9 @@
~
-->
-<sp-configuration-box title="Behaviour in case of missing values">
+<sp-configuration-box
+ [title]="'Behaviour in case of missing values' | translate"
+>
<mat-radio-group
class="sp-radio-group"
[(ngModel)]="dataExportConfig.missingValueBehaviour"
@@ -26,14 +28,14 @@
class="sp-radio-button"
data-cy="download-configuration-ignore"
>
- Ignore lines with missing value
+ {{ 'Ignore lines with missing value' | translate }}
</mat-radio-button>
<mat-radio-button
value="empty"
class="sp-radio-button"
data-cy="download-configuration-empty"
>
- Leave entry empty
+ {{ 'Leave entry empty' | translate }}
</mat-radio-button>
</mat-radio-group>
</sp-configuration-box>
diff --git
a/ui/projects/streampipes/shared-ui/src/lib/dialog/data-download-dialog/components/select-data/select-data-range/select-data-range.component.html
b/ui/projects/streampipes/shared-ui/src/lib/dialog/data-download-dialog/components/select-data/select-data-range/select-data-range.component.html
index eeef53fca5..908be2ae17 100644
---
a/ui/projects/streampipes/shared-ui/src/lib/dialog/data-download-dialog/components/select-data/select-data-range/select-data-range.component.html
+++
b/ui/projects/streampipes/shared-ui/src/lib/dialog/data-download-dialog/components/select-data/select-data-range/select-data-range.component.html
@@ -16,7 +16,7 @@
~
-->
-<sp-configuration-box title="Data Range">
+<sp-configuration-box [title]="'Data Range' | translate">
<mat-radio-group
class="sp-radio-group"
[(ngModel)]="dataExportConfig.dataRangeConfiguration"
@@ -27,21 +27,21 @@
data-cy="download-configuration-visible"
*ngIf="dataExplorerDataConfig"
>
- Currently configured query
+ {{ 'Currently configured query' | translate }}
</mat-radio-button>
<mat-radio-button
value="all"
class="sp-radio-button"
data-cy="download-configuration-all"
>
- All data in database
+ {{ 'All data in database' | translate }}
</mat-radio-button>
<mat-radio-button
value="customInterval"
class="sp-radio-button"
data-cy="download-configuration-customInterval"
>
- All data in custom time interval
+ {{ 'All data in custom time interval' | translate }}
</mat-radio-button>
<div
@@ -51,12 +51,12 @@
*ngIf="dataExportConfig.dataRangeConfiguration ===
'customInterval'"
>
<div>
- <h5>From </h5>
+ <h5>{{ 'From' | translate }} </h5>
<sp-date-input [(date)]="dataExportConfig.dateRange.startDate">
</sp-date-input>
</div>
<div>
- <h5>To </h5>
+ <h5>{{ 'To' | translate }}</h5>
<sp-date-input [(date)]="dataExportConfig.dateRange.endDate">
</sp-date-input>
</div>
diff --git
a/ui/projects/streampipes/shared-ui/src/lib/dialog/data-download-dialog/components/select-format/select-format.component.html
b/ui/projects/streampipes/shared-ui/src/lib/dialog/data-download-dialog/components/select-format/select-format.component.html
index ba5fe2b074..b9d4f4d2dc 100644
---
a/ui/projects/streampipes/shared-ui/src/lib/dialog/data-download-dialog/components/select-format/select-format.component.html
+++
b/ui/projects/streampipes/shared-ui/src/lib/dialog/data-download-dialog/components/select-format/select-format.component.html
@@ -16,9 +16,9 @@
~
-->
-<ng-template matStepLabel>Select Format</ng-template>
+<ng-template matStepLabel>{{ 'Select Format' | translate }}</ng-template>
<div>
- <sp-configuration-box title="Download Format">
+ <sp-configuration-box [title]="'Download Format' | translate">
<mat-radio-group
class="sp-radio-group"
[(ngModel)]="formatExportConfig.format"
@@ -42,13 +42,13 @@
class="sp-radio-button"
data-cy="download-configuration-xlsx"
>
- Excel (XLSX)
+ EXCEL (XLSX)
</mat-radio-button>
</mat-radio-group>
</sp-configuration-box>
</div>
<div *ngIf="formatExportConfig.format === 'csv'" class="mt-10">
- <sp-configuration-box title="Delimiter">
+ <sp-configuration-box [title]="'Delimiter' | translate">
<mat-radio-group
[(ngModel)]="formatExportConfig.delimiter"
class="sp-radio-group"
@@ -72,19 +72,19 @@
*ngIf="formatExportConfig.format === 'xlsx' && hasReadFilePrivilege"
fxLayout="column"
>
- <sp-configuration-box title="Excel template">
+ <sp-configuration-box [title]="'Excel template' | translate">
<div fxLayout="column">
<mat-checkbox
[(ngModel)]="formatExportConfig.useTemplate"
[disabled]="excelTemplates.length === 0"
>
- Use uploaded file template
+ {{ 'Use uploaded file template' | translate }}
</mat-checkbox>
@if (formatExportConfig.useTemplate && excelTemplates.length > 0) {
<mat-form-field class="mt-10" color="accent">
<mat-select
[(ngModel)]="formatExportConfig.templateId"
- placeholder="Choose template"
+ [placeholder]="'Choose template' | translate"
>
<mat-option
*ngFor="let template of excelTemplates"
@@ -95,7 +95,9 @@
</mat-select>
</mat-form-field>
<mat-form-field color="accent">
- <mat-label>First row index to append data</mat-label>
+ <mat-label>{{
+ 'First row index to append data' | translate
+ }}</mat-label>
<input
matInput
[(ngModel)]="formatExportConfig.startRow"
@@ -112,7 +114,7 @@
formatExportConfig.format === 'csv'
"
>
- <sp-configuration-box title="Header column name">
+ <sp-configuration-box [title]="'Header column name' | translate">
<mat-radio-group
[(ngModel)]="formatExportConfig.headerColumnName"
class="sp-radio-group"
@@ -121,13 +123,17 @@
value="key"
class="sp-radio-button"
data-cy="download-configuration-column-name-key"
- >Use field key (runtime name) as header column
+ >{{
+ 'Use field key (runtime name) as header column' | translate
+ }}
</mat-radio-button>
<mat-radio-button
value="label"
class="sp-radio-button"
data-cy="download-configuration-column-name-label"
- >Use field label as header column if available
+ >{{
+ 'Use field label as header column if available' | translate
+ }}
</mat-radio-button>
</mat-radio-group>
</sp-configuration-box>
diff --git
a/ui/projects/streampipes/shared-ui/src/lib/dialog/data-download-dialog/data-download-dialog.component.html
b/ui/projects/streampipes/shared-ui/src/lib/dialog/data-download-dialog/data-download-dialog.component.html
index 852a3769e1..6f74f131df 100644
---
a/ui/projects/streampipes/shared-ui/src/lib/dialog/data-download-dialog/data-download-dialog.component.html
+++
b/ui/projects/streampipes/shared-ui/src/lib/dialog/data-download-dialog/data-download-dialog.component.html
@@ -28,7 +28,9 @@
[dataExportConfig]="exportConfig.dataExportConfig"
>
</sp-select-data>
- <ng-template matStepLabel>Select Data</ng-template>
+ <ng-template matStepLabel>{{
+ 'Select Data' | translate
+ }}</ng-template>
</mat-step>
<mat-step>
@@ -53,7 +55,7 @@
style="margin-right: 10px"
(click)="exitDialog()"
>
- Close
+ {{ 'Close' | translate }}
</button>
<button
mat-button
@@ -63,7 +65,7 @@
*ngIf="downloadDialogStepper.selectedIndex === 1"
(click)="previousStep()"
>
- Previous
+ {{ 'Previous' | translate }}
</button>
<button
mat-button
@@ -73,7 +75,7 @@
(click)="nextStep()"
data-cy="download-configuration-next-btn"
>
- Next
+ {{ 'Next' | translate }}
</button>
<button
mat-button
@@ -83,7 +85,7 @@
(click)="downloadData()"
data-cy="download-configuration-download-btn"
>
- Download
+ {{ 'Download' | translate }}
</button>
</div>
</div>
diff --git a/ui/projects/streampipes/shared-ui/src/lib/shared-ui.module.ts
b/ui/projects/streampipes/shared-ui/src/lib/shared-ui.module.ts
index 131f813f35..e4eeca1d76 100644
--- a/ui/projects/streampipes/shared-ui/src/lib/shared-ui.module.ts
+++ b/ui/projects/streampipes/shared-ui/src/lib/shared-ui.module.ts
@@ -82,6 +82,7 @@ import { SpConfigurationBoxComponent } from
'./components/configuration-box/conf
import { DateInputComponent } from
'./components/date-input/date-input.component';
import { MatCheckboxModule } from '@angular/material/checkbox';
import { MatInputModule } from '@angular/material/input';
+import { TranslateModule } from '@ngx-translate/core';
@NgModule({
declarations: [
@@ -148,6 +149,7 @@ import { MatInputModule } from '@angular/material/input';
MatPaginator,
MatRadioModule,
MatSort,
+ TranslateModule.forChild({}),
],
providers: [DefaultMatCalendarRangeStrategy, MatRangeDateSelectionModel],
exports: [