inviton-powerduck 0.0.4 → 0.0.6

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.
@@ -0,0 +1,11 @@
1
+ import PowerduckState from "../../app/powerduck-state";
2
+
3
+ export default class BoolTranslator {
4
+ static getString(val: boolean): string {
5
+ if (val == true) {
6
+ return PowerduckState.getResourceValue('yes');
7
+ }
8
+
9
+ return PowerduckState.getResourceValue('no');
10
+ }
11
+ }
@@ -0,0 +1,27 @@
1
+ import { DAY } from "./../enums/day";
2
+ import PowerduckState from './../../app/powerduck-state';
3
+ import { capitalize } from "./../utils/capitalize-string";
4
+
5
+ export default class DayTranslator {
6
+ private static _dayMap: { [index: string]: string } = null as any;
7
+
8
+ static getString(day: DAY): string {
9
+ this.initMap();
10
+ return this._dayMap[day];
11
+ }
12
+
13
+ private static initMap() {
14
+ if (this._dayMap != null) {
15
+ return;
16
+ }
17
+
18
+ this._dayMap = {};
19
+ const locale = PowerduckState.getCurrentLanguageCode();
20
+ for (var i = 7; i < 15; i++) {
21
+ const dayDate = new Date(Date.UTC(2015, 5, i));
22
+ const dayName = capitalize(dayDate.toLocaleDateString(locale, { weekday: "long", timeZone: "UTC" }));
23
+ const dayEnumName = dayDate.toLocaleDateString("en", { weekday: "long", timeZone: "UTC" }).toUpperCase();
24
+ this._dayMap[dayEnumName] = dayName;
25
+ }
26
+ }
27
+ }
@@ -0,0 +1,45 @@
1
+ import { Language, LANGUAGE } from "./../enums/language";
2
+
3
+ export default class LanguageEnumNormalizer {
4
+ static getCodedLanguage(lang: Language): LANGUAGE {
5
+ switch (lang) {
6
+ case Language.Slovak:
7
+ return LANGUAGE.sk;
8
+ case Language.English:
9
+ return LANGUAGE.en;
10
+ case Language.Czech:
11
+ return LANGUAGE.cs;
12
+ case Language.German:
13
+ return LANGUAGE.de;
14
+ case Language.Polish:
15
+ return LANGUAGE.pl;
16
+ case Language.Italian:
17
+ return LANGUAGE.it;
18
+ case Language.Hungarian:
19
+ return LANGUAGE.hu;
20
+ default:
21
+ return null as any;
22
+ }
23
+ }
24
+
25
+ static getFrontendLanguage(lang: LANGUAGE): Language {
26
+ switch (lang) {
27
+ case LANGUAGE.sk:
28
+ return Language.Slovak;
29
+ case LANGUAGE.en:
30
+ return Language.English;
31
+ case LANGUAGE.cs:
32
+ return Language.Czech;
33
+ case LANGUAGE.de:
34
+ return Language.German;
35
+ case LANGUAGE.pl:
36
+ return Language.Polish;
37
+ case LANGUAGE.it:
38
+ return Language.Italian;
39
+ case LANGUAGE.hu:
40
+ return Language.Hungarian;
41
+ default:
42
+ return null as any;
43
+ }
44
+ }
45
+ }
@@ -0,0 +1,14 @@
1
+ import { LANGUAGE, Language } from "./../enums/language";
2
+ import { PortalUtils } from "../utils/utils";
3
+ import { LanguageUtils } from "../utils/language-utils";
4
+ import PowerduckState from "../../app/powerduck-state";
5
+
6
+ export default class LanguageTranslator {
7
+ static getString(lang: LANGUAGE | Language) {
8
+ if (PortalUtils.isString(lang)) {
9
+ lang = LanguageUtils.getLanguageEnum(lang as any) as any;
10
+ }
11
+
12
+ return PowerduckState.getResourceValue('language' + lang as any);
13
+ }
14
+ }
@@ -0,0 +1,9 @@
1
+ export enum DAY {
2
+ MONDAY = "MONDAY",
3
+ TUESDAY = "TUESDAY",
4
+ WEDNESDAY = "WEDNESDAY",
5
+ THURSDAY = "THURSDAY",
6
+ FRIDAY = "FRIDAY",
7
+ SATURDAY = "SATURDAY",
8
+ SUNDAY = "SUNDAY",
9
+ }
@@ -0,0 +1,53 @@
1
+ import LocalizedText from './localized-text';
2
+ import LanguageEnumNormalizer from "./enum-translation/language-enum-normalizer";
3
+ import PowerduckState from '../app/powerduck-state';
4
+ import { LANGUAGE } from './enums/language';
5
+ import { isNullOrEmpty } from './utils/is-null-or-empty';
6
+
7
+ export default class LocalizedValueHelper {
8
+ static getLocalizedValue(value: LocalizedText): string {
9
+ if (value == null) {
10
+ return null as any;
11
+ }
12
+
13
+ const lang = LanguageEnumNormalizer.getCodedLanguage(PowerduckState.getCurrentLanguage());
14
+ const inLang = value[lang];
15
+
16
+ if (inLang != null) {
17
+ return inLang;
18
+ }
19
+
20
+ if (lang == LANGUAGE.cs) {
21
+ const fbLang = value[LANGUAGE.sk];
22
+ if (fbLang != null) {
23
+ return fbLang;
24
+ }
25
+ }
26
+
27
+ if (lang == LANGUAGE.sk) {
28
+ const fbLang = value[LANGUAGE.cs];
29
+ if (fbLang != null) {
30
+ return fbLang;
31
+ }
32
+ }
33
+
34
+ const enVal = value[LANGUAGE.en];
35
+ if (enVal != null) {
36
+ return enVal;
37
+ }
38
+
39
+ for (const propKey in value) {
40
+ return value[propKey];
41
+ }
42
+
43
+ return null as any;
44
+ }
45
+
46
+ static validateLocalizedValue(locValArr: LocalizedText): boolean {
47
+ if (isNullOrEmpty(LocalizedValueHelper.getLocalizedValue(locValArr))) {
48
+ return false;
49
+ }
50
+
51
+ return true;
52
+ }
53
+ }
package/package.json CHANGED
@@ -1,6 +1,6 @@
1
1
  {
2
2
  "name": "inviton-powerduck",
3
- "version": "0.0.4",
3
+ "version": "0.0.6",
4
4
  "type": "module",
5
5
  "scripts": {
6
6
  "build": " vite build && vue-tsc --declaration --emitDeclarationOnly",