asab_webui_components 25.4.1 → 25.4.2
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/dist/index.js +7 -0
- package/dist/utils/translateFromContent.js +49 -0
- package/package.json +1 -1
package/dist/index.js
CHANGED
|
@@ -280,6 +280,12 @@ Object.defineProperty(exports, "timeToStringRelative", {
|
|
|
280
280
|
return _timeToStringRelative.timeToStringRelative;
|
|
281
281
|
}
|
|
282
282
|
});
|
|
283
|
+
Object.defineProperty(exports, "translateFromContent", {
|
|
284
|
+
enumerable: true,
|
|
285
|
+
get: function get() {
|
|
286
|
+
return _translateFromContent.translateFromContent;
|
|
287
|
+
}
|
|
288
|
+
});
|
|
283
289
|
Object.defineProperty(exports, "useDateFNSLocale", {
|
|
284
290
|
enumerable: true,
|
|
285
291
|
get: function get() {
|
|
@@ -335,6 +341,7 @@ var _classifyIPAddress = require("./utils/classifyIPAddress.js");
|
|
|
335
341
|
var _itemExtensionHandler = require("./utils/itemExtensionHandler.js");
|
|
336
342
|
var _removeFileExtension = require("./utils/removeFileExtension.js");
|
|
337
343
|
var _deepMerge = require("./utils/deepMerge.js");
|
|
344
|
+
var _translateFromContent = require("./utils/translateFromContent.js");
|
|
338
345
|
var _problemMarkers = require("./utils/monaco/problemMarkers.js");
|
|
339
346
|
var _ResultCard = require("./components/ResultCard/ResultCard");
|
|
340
347
|
var _AdvancedCard = require("./components/AdvancedCard/AdvancedCard.js");
|
|
@@ -0,0 +1,49 @@
|
|
|
1
|
+
"use strict";
|
|
2
|
+
|
|
3
|
+
var _interopRequireDefault = require("@babel/runtime/helpers/interopRequireDefault");
|
|
4
|
+
Object.defineProperty(exports, "__esModule", {
|
|
5
|
+
value: true
|
|
6
|
+
});
|
|
7
|
+
exports.translateFromContent = translateFromContent;
|
|
8
|
+
var _i18next = _interopRequireDefault(require("i18next"));
|
|
9
|
+
// Translates content based on the current language setting
|
|
10
|
+
// Handles translation of content objects that contain language-specific text
|
|
11
|
+
function translateFromContent(content) {
|
|
12
|
+
var currentLang = (_i18next.default === null || _i18next.default === void 0 ? void 0 : _i18next.default.language) || 'c';
|
|
13
|
+
var errorMessage = _i18next.default.t("General|Content cannot be translated - invalid format");
|
|
14
|
+
|
|
15
|
+
// If the content is a string, return it as-is
|
|
16
|
+
if (typeof content === 'string') {
|
|
17
|
+
return content;
|
|
18
|
+
}
|
|
19
|
+
|
|
20
|
+
// If content is null, not an object, or is an array, return error message
|
|
21
|
+
if (!content || typeof content !== 'object' || Array.isArray(content)) {
|
|
22
|
+
console.warn(errorMessage + " " + content);
|
|
23
|
+
return errorMessage;
|
|
24
|
+
}
|
|
25
|
+
|
|
26
|
+
// Normalize keys to lowercase
|
|
27
|
+
var normalizedKeys = Object.keys(content).reduce((acc, key) => {
|
|
28
|
+
acc[key.toLowerCase()] = content[key];
|
|
29
|
+
return acc;
|
|
30
|
+
}, {});
|
|
31
|
+
|
|
32
|
+
// If the normalizedKeys object is empty, return empty string
|
|
33
|
+
if (Object.keys(normalizedKeys).length === 0) {
|
|
34
|
+
console.warn('Content for translation is empty');
|
|
35
|
+
return '';
|
|
36
|
+
}
|
|
37
|
+
|
|
38
|
+
/* Try to get text in current language
|
|
39
|
+
if not found try fallback 'c' language
|
|
40
|
+
otherwise return error message */
|
|
41
|
+
if (typeof normalizedKeys[currentLang] === 'string') {
|
|
42
|
+
return normalizedKeys[currentLang];
|
|
43
|
+
}
|
|
44
|
+
if (typeof normalizedKeys['c'] === 'string') {
|
|
45
|
+
return normalizedKeys['c'];
|
|
46
|
+
}
|
|
47
|
+
console.warn(content);
|
|
48
|
+
return errorMessage;
|
|
49
|
+
}
|