@magmamath/frontend-config 1.1.2-rc.6 → 1.1.2-rc.8
This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
- package/dist/common.constants-ClvjFWRr.d.mts +81 -0
- package/dist/common.constants-ClvjFWRr.d.ts +81 -0
- package/dist/index.d.mts +3 -81
- package/dist/index.d.ts +3 -81
- package/dist/translation/index.d.mts +41 -0
- package/dist/translation/index.d.ts +41 -0
- package/dist/translation/index.js +98 -0
- package/dist/translation/index.js.map +1 -0
- package/dist/translation/index.mjs +91 -0
- package/dist/translation/index.mjs.map +1 -0
- package/package.json +22 -2
|
@@ -0,0 +1,81 @@
|
|
|
1
|
+
declare enum Platform {
|
|
2
|
+
STUDENTS_WEB = "STUDENTS",
|
|
3
|
+
TEACHERS_WEB = "TEACHERS",
|
|
4
|
+
DISTRICT_DASHBOARD = "DISTRICT",
|
|
5
|
+
AUTH_WEB = "AUTH_WEB",
|
|
6
|
+
WEB_ADMIN = "WEB_ADMIN",
|
|
7
|
+
MOBILE = "MOBILE"
|
|
8
|
+
}
|
|
9
|
+
declare enum Environment {
|
|
10
|
+
MARS = "MARS",
|
|
11
|
+
VENUS = "VENUS",
|
|
12
|
+
PROD = "PROD"
|
|
13
|
+
}
|
|
14
|
+
declare enum PlatformBuildTarget {
|
|
15
|
+
PLUTO = "pluto",
|
|
16
|
+
MARS = "mars",
|
|
17
|
+
VENUS = "pre-release",
|
|
18
|
+
PROD = "production"
|
|
19
|
+
}
|
|
20
|
+
declare enum Locale {
|
|
21
|
+
US = "en-SE",
|
|
22
|
+
SE = "sv-SE",
|
|
23
|
+
GB = "en-GB",
|
|
24
|
+
CA = "en-CA",
|
|
25
|
+
SCT = "en-SCT",
|
|
26
|
+
DE = "de-DE"
|
|
27
|
+
}
|
|
28
|
+
declare enum Source {
|
|
29
|
+
MATTEAPPEN = 0,
|
|
30
|
+
SKOLON = 1,
|
|
31
|
+
SKOLFEDERATION = 2,
|
|
32
|
+
GOOGLE = 3,
|
|
33
|
+
MICROSOFT = 4,
|
|
34
|
+
CLEVER = 5,
|
|
35
|
+
APPLE = 6,
|
|
36
|
+
MATHSYNC = 7,
|
|
37
|
+
CLASSLINK = 8,
|
|
38
|
+
EDUCLOUD = 9,
|
|
39
|
+
EGIL = 10,
|
|
40
|
+
WONDE = 12,
|
|
41
|
+
SCHOOLOGY = 13,
|
|
42
|
+
SEEMIS = 14,
|
|
43
|
+
IMPORT = 15,
|
|
44
|
+
CANVAS = 16
|
|
45
|
+
}
|
|
46
|
+
declare enum LoginSource {
|
|
47
|
+
MAGMA = 0,
|
|
48
|
+
CLEVER = 1,
|
|
49
|
+
CLASS_LINK = 2,
|
|
50
|
+
SKOLON = 3,
|
|
51
|
+
SKOLFEDERATION = 4,
|
|
52
|
+
GOOGLE = 5,
|
|
53
|
+
MICROSOFT = 6,
|
|
54
|
+
APPLE = 7,
|
|
55
|
+
SCHOOLOGY = 8,
|
|
56
|
+
MY_LOGIN = 9
|
|
57
|
+
}
|
|
58
|
+
declare enum SSO {
|
|
59
|
+
APPLE = "APPLE",
|
|
60
|
+
GOOGLE = "GOOGLE",
|
|
61
|
+
MICROSOFT = "MICROSOFT",
|
|
62
|
+
CLEVER = "CLEVER",
|
|
63
|
+
SCHOOLOGY = "SCHOOLOGY",
|
|
64
|
+
CLASS_LINK = "CLASS_LINK",
|
|
65
|
+
SKOLFEDERATION = "SKOLFEDERATION",
|
|
66
|
+
SKOLON = "SKOLON",
|
|
67
|
+
WONDE = "WONDE",
|
|
68
|
+
CANVAS = "CANVAS",
|
|
69
|
+
QR_CODE = "QR_CODE"
|
|
70
|
+
}
|
|
71
|
+
declare enum ApiRegion {
|
|
72
|
+
MAIN = "MAIN",
|
|
73
|
+
CANADA = "CANADA"
|
|
74
|
+
}
|
|
75
|
+
declare enum QRCodeSize {
|
|
76
|
+
DEFAULT = "default",
|
|
77
|
+
MEDIUM = "medium",
|
|
78
|
+
LARGE = "large"
|
|
79
|
+
}
|
|
80
|
+
|
|
81
|
+
export { ApiRegion as A, Environment as E, LoginSource as L, Platform as P, QRCodeSize as Q, SSO as S, Locale as a, PlatformBuildTarget as b, Source as c };
|
|
@@ -0,0 +1,81 @@
|
|
|
1
|
+
declare enum Platform {
|
|
2
|
+
STUDENTS_WEB = "STUDENTS",
|
|
3
|
+
TEACHERS_WEB = "TEACHERS",
|
|
4
|
+
DISTRICT_DASHBOARD = "DISTRICT",
|
|
5
|
+
AUTH_WEB = "AUTH_WEB",
|
|
6
|
+
WEB_ADMIN = "WEB_ADMIN",
|
|
7
|
+
MOBILE = "MOBILE"
|
|
8
|
+
}
|
|
9
|
+
declare enum Environment {
|
|
10
|
+
MARS = "MARS",
|
|
11
|
+
VENUS = "VENUS",
|
|
12
|
+
PROD = "PROD"
|
|
13
|
+
}
|
|
14
|
+
declare enum PlatformBuildTarget {
|
|
15
|
+
PLUTO = "pluto",
|
|
16
|
+
MARS = "mars",
|
|
17
|
+
VENUS = "pre-release",
|
|
18
|
+
PROD = "production"
|
|
19
|
+
}
|
|
20
|
+
declare enum Locale {
|
|
21
|
+
US = "en-SE",
|
|
22
|
+
SE = "sv-SE",
|
|
23
|
+
GB = "en-GB",
|
|
24
|
+
CA = "en-CA",
|
|
25
|
+
SCT = "en-SCT",
|
|
26
|
+
DE = "de-DE"
|
|
27
|
+
}
|
|
28
|
+
declare enum Source {
|
|
29
|
+
MATTEAPPEN = 0,
|
|
30
|
+
SKOLON = 1,
|
|
31
|
+
SKOLFEDERATION = 2,
|
|
32
|
+
GOOGLE = 3,
|
|
33
|
+
MICROSOFT = 4,
|
|
34
|
+
CLEVER = 5,
|
|
35
|
+
APPLE = 6,
|
|
36
|
+
MATHSYNC = 7,
|
|
37
|
+
CLASSLINK = 8,
|
|
38
|
+
EDUCLOUD = 9,
|
|
39
|
+
EGIL = 10,
|
|
40
|
+
WONDE = 12,
|
|
41
|
+
SCHOOLOGY = 13,
|
|
42
|
+
SEEMIS = 14,
|
|
43
|
+
IMPORT = 15,
|
|
44
|
+
CANVAS = 16
|
|
45
|
+
}
|
|
46
|
+
declare enum LoginSource {
|
|
47
|
+
MAGMA = 0,
|
|
48
|
+
CLEVER = 1,
|
|
49
|
+
CLASS_LINK = 2,
|
|
50
|
+
SKOLON = 3,
|
|
51
|
+
SKOLFEDERATION = 4,
|
|
52
|
+
GOOGLE = 5,
|
|
53
|
+
MICROSOFT = 6,
|
|
54
|
+
APPLE = 7,
|
|
55
|
+
SCHOOLOGY = 8,
|
|
56
|
+
MY_LOGIN = 9
|
|
57
|
+
}
|
|
58
|
+
declare enum SSO {
|
|
59
|
+
APPLE = "APPLE",
|
|
60
|
+
GOOGLE = "GOOGLE",
|
|
61
|
+
MICROSOFT = "MICROSOFT",
|
|
62
|
+
CLEVER = "CLEVER",
|
|
63
|
+
SCHOOLOGY = "SCHOOLOGY",
|
|
64
|
+
CLASS_LINK = "CLASS_LINK",
|
|
65
|
+
SKOLFEDERATION = "SKOLFEDERATION",
|
|
66
|
+
SKOLON = "SKOLON",
|
|
67
|
+
WONDE = "WONDE",
|
|
68
|
+
CANVAS = "CANVAS",
|
|
69
|
+
QR_CODE = "QR_CODE"
|
|
70
|
+
}
|
|
71
|
+
declare enum ApiRegion {
|
|
72
|
+
MAIN = "MAIN",
|
|
73
|
+
CANADA = "CANADA"
|
|
74
|
+
}
|
|
75
|
+
declare enum QRCodeSize {
|
|
76
|
+
DEFAULT = "default",
|
|
77
|
+
MEDIUM = "medium",
|
|
78
|
+
LARGE = "large"
|
|
79
|
+
}
|
|
80
|
+
|
|
81
|
+
export { ApiRegion as A, Environment as E, LoginSource as L, Platform as P, QRCodeSize as Q, SSO as S, Locale as a, PlatformBuildTarget as b, Source as c };
|
package/dist/index.d.mts
CHANGED
|
@@ -1,3 +1,5 @@
|
|
|
1
|
+
import { S as SSO, L as LoginSource, a as Locale, E as Environment, P as Platform, b as PlatformBuildTarget, Q as QRCodeSize, A as ApiRegion } from './common.constants-ClvjFWRr.mjs';
|
|
2
|
+
export { c as Source } from './common.constants-ClvjFWRr.mjs';
|
|
1
3
|
import { ComponentType } from 'react';
|
|
2
4
|
import * as effector from 'effector';
|
|
3
5
|
|
|
@@ -37,86 +39,6 @@ declare const MomentDateLocale: {
|
|
|
37
39
|
DE: string;
|
|
38
40
|
};
|
|
39
41
|
|
|
40
|
-
declare enum Platform {
|
|
41
|
-
STUDENTS_WEB = "STUDENTS",
|
|
42
|
-
TEACHERS_WEB = "TEACHERS",
|
|
43
|
-
DISTRICT_DASHBOARD = "DISTRICT",
|
|
44
|
-
AUTH_WEB = "AUTH_WEB",
|
|
45
|
-
WEB_ADMIN = "WEB_ADMIN",
|
|
46
|
-
MOBILE = "MOBILE"
|
|
47
|
-
}
|
|
48
|
-
declare enum Environment {
|
|
49
|
-
MARS = "MARS",
|
|
50
|
-
VENUS = "VENUS",
|
|
51
|
-
PROD = "PROD"
|
|
52
|
-
}
|
|
53
|
-
declare enum PlatformBuildTarget {
|
|
54
|
-
PLUTO = "pluto",
|
|
55
|
-
MARS = "mars",
|
|
56
|
-
VENUS = "pre-release",
|
|
57
|
-
PROD = "production"
|
|
58
|
-
}
|
|
59
|
-
declare enum Locale {
|
|
60
|
-
US = "en-SE",
|
|
61
|
-
SE = "sv-SE",
|
|
62
|
-
GB = "en-GB",
|
|
63
|
-
CA = "en-CA",
|
|
64
|
-
SCT = "en-SCT",
|
|
65
|
-
DE = "de-DE"
|
|
66
|
-
}
|
|
67
|
-
declare enum Source {
|
|
68
|
-
MATTEAPPEN = 0,
|
|
69
|
-
SKOLON = 1,
|
|
70
|
-
SKOLFEDERATION = 2,
|
|
71
|
-
GOOGLE = 3,
|
|
72
|
-
MICROSOFT = 4,
|
|
73
|
-
CLEVER = 5,
|
|
74
|
-
APPLE = 6,
|
|
75
|
-
MATHSYNC = 7,
|
|
76
|
-
CLASSLINK = 8,
|
|
77
|
-
EDUCLOUD = 9,
|
|
78
|
-
EGIL = 10,
|
|
79
|
-
WONDE = 12,
|
|
80
|
-
SCHOOLOGY = 13,
|
|
81
|
-
SEEMIS = 14,
|
|
82
|
-
IMPORT = 15,
|
|
83
|
-
CANVAS = 16
|
|
84
|
-
}
|
|
85
|
-
declare enum LoginSource {
|
|
86
|
-
MAGMA = 0,
|
|
87
|
-
CLEVER = 1,
|
|
88
|
-
CLASS_LINK = 2,
|
|
89
|
-
SKOLON = 3,
|
|
90
|
-
SKOLFEDERATION = 4,
|
|
91
|
-
GOOGLE = 5,
|
|
92
|
-
MICROSOFT = 6,
|
|
93
|
-
APPLE = 7,
|
|
94
|
-
SCHOOLOGY = 8,
|
|
95
|
-
MY_LOGIN = 9
|
|
96
|
-
}
|
|
97
|
-
declare enum SSO {
|
|
98
|
-
APPLE = "APPLE",
|
|
99
|
-
GOOGLE = "GOOGLE",
|
|
100
|
-
MICROSOFT = "MICROSOFT",
|
|
101
|
-
CLEVER = "CLEVER",
|
|
102
|
-
SCHOOLOGY = "SCHOOLOGY",
|
|
103
|
-
CLASS_LINK = "CLASS_LINK",
|
|
104
|
-
SKOLFEDERATION = "SKOLFEDERATION",
|
|
105
|
-
SKOLON = "SKOLON",
|
|
106
|
-
WONDE = "WONDE",
|
|
107
|
-
CANVAS = "CANVAS",
|
|
108
|
-
QR_CODE = "QR_CODE"
|
|
109
|
-
}
|
|
110
|
-
declare enum ApiRegion {
|
|
111
|
-
MAIN = "MAIN",
|
|
112
|
-
CANADA = "CANADA"
|
|
113
|
-
}
|
|
114
|
-
declare enum QRCodeSize {
|
|
115
|
-
DEFAULT = "default",
|
|
116
|
-
MEDIUM = "medium",
|
|
117
|
-
LARGE = "large"
|
|
118
|
-
}
|
|
119
|
-
|
|
120
42
|
declare enum MatrixMode {
|
|
121
43
|
SKILL = "SKILL",
|
|
122
44
|
STANDARD = "STANDARD"
|
|
@@ -869,4 +791,4 @@ declare class AppConfigManager<P extends Platform, L extends Locale> {
|
|
|
869
791
|
};
|
|
870
792
|
}
|
|
871
793
|
|
|
872
|
-
export { ApiRegion, AppConfigManager, type AuthWebBaseVars, type AuthWebVars, type AuthWebVarsPreset, type CalendarConfig, CalendarLocale, type CommonGrades, DE_CALENDAR_CONFIG, DateFormat, DateLocale, type DistrictCommon, type DistrictDashboardVars, type DistrictLocaleConfig, type DistrictWebVarsPreset, DrawboardCoinVariant, EN_CALENDAR_CONFIG, type EnvPreset, Environment, type EnvironmentVars, Grade, type GradeData, type HighSchoolGrades, type KeyboardConfig, KeyboardCurrencyVariant, KeyboardPreset, KeyboardTimeVariant, LANGUAGES_CONFIG, LANGUAGES_LIST, Language, type LanguageConfig, Locale, type LocaleLanguageData, LoginSource, MOST_USED_LANGUAGES, MatrixMode, type MobileBaseVars, type MobileCommon, type MobileLocaleConfig, type MobileVars, type MobileVarsPreset, MomentDateLocale, MultiplicationSymbol, NumberDecimalSeparator, NumberGroupingSeparator, PRIORITY_LANGUAGES, Platform, PlatformBuildTarget, type PrimaryGrades, type ProblemCreatorConfig, ProblemCreatorDescriptionVariant, type ProblemCreatorKeyboardConfig, ProblemCreatorKeyboardPreset, ProblemCreatorMathEntryVariant, QRCodeSize, SE_CALENDAR_CONFIG, SSO, type SSOByLocale, type SSOConfig, type SSOVariant, type SSO_DE, type SSO_SE, type SSO_UK, type SSO_US,
|
|
794
|
+
export { ApiRegion, AppConfigManager, type AuthWebBaseVars, type AuthWebVars, type AuthWebVarsPreset, type CalendarConfig, CalendarLocale, type CommonGrades, DE_CALENDAR_CONFIG, DateFormat, DateLocale, type DistrictCommon, type DistrictDashboardVars, type DistrictLocaleConfig, type DistrictWebVarsPreset, DrawboardCoinVariant, EN_CALENDAR_CONFIG, type EnvPreset, Environment, type EnvironmentVars, Grade, type GradeData, type HighSchoolGrades, type KeyboardConfig, KeyboardCurrencyVariant, KeyboardPreset, KeyboardTimeVariant, LANGUAGES_CONFIG, LANGUAGES_LIST, Language, type LanguageConfig, Locale, type LocaleLanguageData, LoginSource, MOST_USED_LANGUAGES, MatrixMode, type MobileBaseVars, type MobileCommon, type MobileLocaleConfig, type MobileVars, type MobileVarsPreset, MomentDateLocale, MultiplicationSymbol, NumberDecimalSeparator, NumberGroupingSeparator, PRIORITY_LANGUAGES, Platform, PlatformBuildTarget, type PrimaryGrades, type ProblemCreatorConfig, ProblemCreatorDescriptionVariant, type ProblemCreatorKeyboardConfig, ProblemCreatorKeyboardPreset, ProblemCreatorMathEntryVariant, QRCodeSize, SE_CALENDAR_CONFIG, SSO, type SSOByLocale, type SSOConfig, type SSOVariant, type SSO_DE, type SSO_SE, type SSO_UK, type SSO_US, type StudentsLocaleConfig, type StudentsWebCommon, type StudentsWebVars, type StudentsWebVarsPreset, TTSOverrideSymbol, type TeachersLocaleConfig, type TeachersWebCommon, type TeachersWebVars, type TeachersWebVarsPreset, TreeLevel, buildTargetToEnvironment };
|
package/dist/index.d.ts
CHANGED
|
@@ -1,3 +1,5 @@
|
|
|
1
|
+
import { S as SSO, L as LoginSource, a as Locale, E as Environment, P as Platform, b as PlatformBuildTarget, Q as QRCodeSize, A as ApiRegion } from './common.constants-ClvjFWRr.js';
|
|
2
|
+
export { c as Source } from './common.constants-ClvjFWRr.js';
|
|
1
3
|
import { ComponentType } from 'react';
|
|
2
4
|
import * as effector from 'effector';
|
|
3
5
|
|
|
@@ -37,86 +39,6 @@ declare const MomentDateLocale: {
|
|
|
37
39
|
DE: string;
|
|
38
40
|
};
|
|
39
41
|
|
|
40
|
-
declare enum Platform {
|
|
41
|
-
STUDENTS_WEB = "STUDENTS",
|
|
42
|
-
TEACHERS_WEB = "TEACHERS",
|
|
43
|
-
DISTRICT_DASHBOARD = "DISTRICT",
|
|
44
|
-
AUTH_WEB = "AUTH_WEB",
|
|
45
|
-
WEB_ADMIN = "WEB_ADMIN",
|
|
46
|
-
MOBILE = "MOBILE"
|
|
47
|
-
}
|
|
48
|
-
declare enum Environment {
|
|
49
|
-
MARS = "MARS",
|
|
50
|
-
VENUS = "VENUS",
|
|
51
|
-
PROD = "PROD"
|
|
52
|
-
}
|
|
53
|
-
declare enum PlatformBuildTarget {
|
|
54
|
-
PLUTO = "pluto",
|
|
55
|
-
MARS = "mars",
|
|
56
|
-
VENUS = "pre-release",
|
|
57
|
-
PROD = "production"
|
|
58
|
-
}
|
|
59
|
-
declare enum Locale {
|
|
60
|
-
US = "en-SE",
|
|
61
|
-
SE = "sv-SE",
|
|
62
|
-
GB = "en-GB",
|
|
63
|
-
CA = "en-CA",
|
|
64
|
-
SCT = "en-SCT",
|
|
65
|
-
DE = "de-DE"
|
|
66
|
-
}
|
|
67
|
-
declare enum Source {
|
|
68
|
-
MATTEAPPEN = 0,
|
|
69
|
-
SKOLON = 1,
|
|
70
|
-
SKOLFEDERATION = 2,
|
|
71
|
-
GOOGLE = 3,
|
|
72
|
-
MICROSOFT = 4,
|
|
73
|
-
CLEVER = 5,
|
|
74
|
-
APPLE = 6,
|
|
75
|
-
MATHSYNC = 7,
|
|
76
|
-
CLASSLINK = 8,
|
|
77
|
-
EDUCLOUD = 9,
|
|
78
|
-
EGIL = 10,
|
|
79
|
-
WONDE = 12,
|
|
80
|
-
SCHOOLOGY = 13,
|
|
81
|
-
SEEMIS = 14,
|
|
82
|
-
IMPORT = 15,
|
|
83
|
-
CANVAS = 16
|
|
84
|
-
}
|
|
85
|
-
declare enum LoginSource {
|
|
86
|
-
MAGMA = 0,
|
|
87
|
-
CLEVER = 1,
|
|
88
|
-
CLASS_LINK = 2,
|
|
89
|
-
SKOLON = 3,
|
|
90
|
-
SKOLFEDERATION = 4,
|
|
91
|
-
GOOGLE = 5,
|
|
92
|
-
MICROSOFT = 6,
|
|
93
|
-
APPLE = 7,
|
|
94
|
-
SCHOOLOGY = 8,
|
|
95
|
-
MY_LOGIN = 9
|
|
96
|
-
}
|
|
97
|
-
declare enum SSO {
|
|
98
|
-
APPLE = "APPLE",
|
|
99
|
-
GOOGLE = "GOOGLE",
|
|
100
|
-
MICROSOFT = "MICROSOFT",
|
|
101
|
-
CLEVER = "CLEVER",
|
|
102
|
-
SCHOOLOGY = "SCHOOLOGY",
|
|
103
|
-
CLASS_LINK = "CLASS_LINK",
|
|
104
|
-
SKOLFEDERATION = "SKOLFEDERATION",
|
|
105
|
-
SKOLON = "SKOLON",
|
|
106
|
-
WONDE = "WONDE",
|
|
107
|
-
CANVAS = "CANVAS",
|
|
108
|
-
QR_CODE = "QR_CODE"
|
|
109
|
-
}
|
|
110
|
-
declare enum ApiRegion {
|
|
111
|
-
MAIN = "MAIN",
|
|
112
|
-
CANADA = "CANADA"
|
|
113
|
-
}
|
|
114
|
-
declare enum QRCodeSize {
|
|
115
|
-
DEFAULT = "default",
|
|
116
|
-
MEDIUM = "medium",
|
|
117
|
-
LARGE = "large"
|
|
118
|
-
}
|
|
119
|
-
|
|
120
42
|
declare enum MatrixMode {
|
|
121
43
|
SKILL = "SKILL",
|
|
122
44
|
STANDARD = "STANDARD"
|
|
@@ -869,4 +791,4 @@ declare class AppConfigManager<P extends Platform, L extends Locale> {
|
|
|
869
791
|
};
|
|
870
792
|
}
|
|
871
793
|
|
|
872
|
-
export { ApiRegion, AppConfigManager, type AuthWebBaseVars, type AuthWebVars, type AuthWebVarsPreset, type CalendarConfig, CalendarLocale, type CommonGrades, DE_CALENDAR_CONFIG, DateFormat, DateLocale, type DistrictCommon, type DistrictDashboardVars, type DistrictLocaleConfig, type DistrictWebVarsPreset, DrawboardCoinVariant, EN_CALENDAR_CONFIG, type EnvPreset, Environment, type EnvironmentVars, Grade, type GradeData, type HighSchoolGrades, type KeyboardConfig, KeyboardCurrencyVariant, KeyboardPreset, KeyboardTimeVariant, LANGUAGES_CONFIG, LANGUAGES_LIST, Language, type LanguageConfig, Locale, type LocaleLanguageData, LoginSource, MOST_USED_LANGUAGES, MatrixMode, type MobileBaseVars, type MobileCommon, type MobileLocaleConfig, type MobileVars, type MobileVarsPreset, MomentDateLocale, MultiplicationSymbol, NumberDecimalSeparator, NumberGroupingSeparator, PRIORITY_LANGUAGES, Platform, PlatformBuildTarget, type PrimaryGrades, type ProblemCreatorConfig, ProblemCreatorDescriptionVariant, type ProblemCreatorKeyboardConfig, ProblemCreatorKeyboardPreset, ProblemCreatorMathEntryVariant, QRCodeSize, SE_CALENDAR_CONFIG, SSO, type SSOByLocale, type SSOConfig, type SSOVariant, type SSO_DE, type SSO_SE, type SSO_UK, type SSO_US,
|
|
794
|
+
export { ApiRegion, AppConfigManager, type AuthWebBaseVars, type AuthWebVars, type AuthWebVarsPreset, type CalendarConfig, CalendarLocale, type CommonGrades, DE_CALENDAR_CONFIG, DateFormat, DateLocale, type DistrictCommon, type DistrictDashboardVars, type DistrictLocaleConfig, type DistrictWebVarsPreset, DrawboardCoinVariant, EN_CALENDAR_CONFIG, type EnvPreset, Environment, type EnvironmentVars, Grade, type GradeData, type HighSchoolGrades, type KeyboardConfig, KeyboardCurrencyVariant, KeyboardPreset, KeyboardTimeVariant, LANGUAGES_CONFIG, LANGUAGES_LIST, Language, type LanguageConfig, Locale, type LocaleLanguageData, LoginSource, MOST_USED_LANGUAGES, MatrixMode, type MobileBaseVars, type MobileCommon, type MobileLocaleConfig, type MobileVars, type MobileVarsPreset, MomentDateLocale, MultiplicationSymbol, NumberDecimalSeparator, NumberGroupingSeparator, PRIORITY_LANGUAGES, Platform, PlatformBuildTarget, type PrimaryGrades, type ProblemCreatorConfig, ProblemCreatorDescriptionVariant, type ProblemCreatorKeyboardConfig, ProblemCreatorKeyboardPreset, ProblemCreatorMathEntryVariant, QRCodeSize, SE_CALENDAR_CONFIG, SSO, type SSOByLocale, type SSOConfig, type SSOVariant, type SSO_DE, type SSO_SE, type SSO_UK, type SSO_US, type StudentsLocaleConfig, type StudentsWebCommon, type StudentsWebVars, type StudentsWebVarsPreset, TTSOverrideSymbol, type TeachersLocaleConfig, type TeachersWebCommon, type TeachersWebVars, type TeachersWebVarsPreset, TreeLevel, buildTargetToEnvironment };
|
|
@@ -0,0 +1,41 @@
|
|
|
1
|
+
import { InitOptions } from 'i18next';
|
|
2
|
+
import { a as Locale } from '../common.constants-ClvjFWRr.mjs';
|
|
3
|
+
|
|
4
|
+
type TolgeeConfig = {
|
|
5
|
+
isDev: boolean;
|
|
6
|
+
cdnHost: string;
|
|
7
|
+
projectId: string;
|
|
8
|
+
apiUrl?: string;
|
|
9
|
+
apiKey?: string;
|
|
10
|
+
};
|
|
11
|
+
type TranslationManagerOptions = {
|
|
12
|
+
tolgee: TolgeeConfig;
|
|
13
|
+
i18nOptions?: InitOptions;
|
|
14
|
+
localStorageKey?: string;
|
|
15
|
+
};
|
|
16
|
+
declare class TranslationManager {
|
|
17
|
+
private readonly tolgee;
|
|
18
|
+
private readonly i18nOptions;
|
|
19
|
+
private readonly localStorageKey?;
|
|
20
|
+
private initPromise;
|
|
21
|
+
constructor({ tolgee, i18nOptions, localStorageKey }: TranslationManagerOptions);
|
|
22
|
+
readonly setLanguage: (locale: Locale) => Promise<void>;
|
|
23
|
+
private readonly persistLocale;
|
|
24
|
+
private readonly ensureInitialized;
|
|
25
|
+
private readonly init;
|
|
26
|
+
private readonly createBaseTolgeeInstance;
|
|
27
|
+
private readonly initTolgeeCDN;
|
|
28
|
+
private readonly initTolgeeDevTools;
|
|
29
|
+
}
|
|
30
|
+
|
|
31
|
+
declare enum TranslationNamespace {
|
|
32
|
+
STUDENTS_WEB = "students-web",
|
|
33
|
+
TEACHERS_WEB = "teachers-web",
|
|
34
|
+
DISTRICT_DASH = "district-dash",
|
|
35
|
+
AUTH_WEB = "auth-web",
|
|
36
|
+
MAGMAMATH_FEATURES = "magmamath-features",
|
|
37
|
+
DRAW_BOARD = "drawboard",
|
|
38
|
+
STUDENTS_FEATURES = "students-features"
|
|
39
|
+
}
|
|
40
|
+
|
|
41
|
+
export { TranslationManager, TranslationNamespace };
|
|
@@ -0,0 +1,41 @@
|
|
|
1
|
+
import { InitOptions } from 'i18next';
|
|
2
|
+
import { a as Locale } from '../common.constants-ClvjFWRr.js';
|
|
3
|
+
|
|
4
|
+
type TolgeeConfig = {
|
|
5
|
+
isDev: boolean;
|
|
6
|
+
cdnHost: string;
|
|
7
|
+
projectId: string;
|
|
8
|
+
apiUrl?: string;
|
|
9
|
+
apiKey?: string;
|
|
10
|
+
};
|
|
11
|
+
type TranslationManagerOptions = {
|
|
12
|
+
tolgee: TolgeeConfig;
|
|
13
|
+
i18nOptions?: InitOptions;
|
|
14
|
+
localStorageKey?: string;
|
|
15
|
+
};
|
|
16
|
+
declare class TranslationManager {
|
|
17
|
+
private readonly tolgee;
|
|
18
|
+
private readonly i18nOptions;
|
|
19
|
+
private readonly localStorageKey?;
|
|
20
|
+
private initPromise;
|
|
21
|
+
constructor({ tolgee, i18nOptions, localStorageKey }: TranslationManagerOptions);
|
|
22
|
+
readonly setLanguage: (locale: Locale) => Promise<void>;
|
|
23
|
+
private readonly persistLocale;
|
|
24
|
+
private readonly ensureInitialized;
|
|
25
|
+
private readonly init;
|
|
26
|
+
private readonly createBaseTolgeeInstance;
|
|
27
|
+
private readonly initTolgeeCDN;
|
|
28
|
+
private readonly initTolgeeDevTools;
|
|
29
|
+
}
|
|
30
|
+
|
|
31
|
+
declare enum TranslationNamespace {
|
|
32
|
+
STUDENTS_WEB = "students-web",
|
|
33
|
+
TEACHERS_WEB = "teachers-web",
|
|
34
|
+
DISTRICT_DASH = "district-dash",
|
|
35
|
+
AUTH_WEB = "auth-web",
|
|
36
|
+
MAGMAMATH_FEATURES = "magmamath-features",
|
|
37
|
+
DRAW_BOARD = "drawboard",
|
|
38
|
+
STUDENTS_FEATURES = "students-features"
|
|
39
|
+
}
|
|
40
|
+
|
|
41
|
+
export { TranslationManager, TranslationNamespace };
|
|
@@ -0,0 +1,98 @@
|
|
|
1
|
+
'use strict';
|
|
2
|
+
|
|
3
|
+
var i18n = require('i18next');
|
|
4
|
+
var reactI18next = require('react-i18next');
|
|
5
|
+
var i18next = require('@tolgee/i18next');
|
|
6
|
+
|
|
7
|
+
function _interopDefault (e) { return e && e.__esModule ? e : { default: e }; }
|
|
8
|
+
|
|
9
|
+
var i18n__default = /*#__PURE__*/_interopDefault(i18n);
|
|
10
|
+
|
|
11
|
+
// src/translation/TranslationManager.ts
|
|
12
|
+
var TOLGEE_DEV_TIMEOUT_MS = 3e3;
|
|
13
|
+
var DEFAULT_I18N_OPTIONS = {
|
|
14
|
+
fallbackLng: void 0,
|
|
15
|
+
load: "currentOnly",
|
|
16
|
+
react: {
|
|
17
|
+
useSuspense: false
|
|
18
|
+
}
|
|
19
|
+
};
|
|
20
|
+
var TranslationManager = class {
|
|
21
|
+
tolgee;
|
|
22
|
+
i18nOptions;
|
|
23
|
+
localStorageKey;
|
|
24
|
+
initPromise = null;
|
|
25
|
+
constructor({ tolgee, i18nOptions = {}, localStorageKey }) {
|
|
26
|
+
this.tolgee = tolgee;
|
|
27
|
+
this.i18nOptions = i18nOptions;
|
|
28
|
+
this.localStorageKey = localStorageKey;
|
|
29
|
+
}
|
|
30
|
+
setLanguage = async (locale) => {
|
|
31
|
+
this.persistLocale(locale);
|
|
32
|
+
await this.ensureInitialized(locale);
|
|
33
|
+
if (i18n__default.default.language !== locale) {
|
|
34
|
+
await i18n__default.default.changeLanguage(locale);
|
|
35
|
+
}
|
|
36
|
+
};
|
|
37
|
+
persistLocale = (locale) => {
|
|
38
|
+
if (!this.localStorageKey) return;
|
|
39
|
+
localStorage.setItem(this.localStorageKey, locale);
|
|
40
|
+
};
|
|
41
|
+
ensureInitialized = async (locale) => {
|
|
42
|
+
if (!this.initPromise) {
|
|
43
|
+
this.initPromise = this.init(locale).catch((error) => {
|
|
44
|
+
this.initPromise = null;
|
|
45
|
+
throw error;
|
|
46
|
+
});
|
|
47
|
+
}
|
|
48
|
+
await this.initPromise;
|
|
49
|
+
};
|
|
50
|
+
init = async (locale) => {
|
|
51
|
+
const tolgee = this.tolgee.isDev ? await this.initTolgeeDevTools() : this.initTolgeeCDN();
|
|
52
|
+
await i18next.withTolgee(i18n__default.default, tolgee).use(reactI18next.initReactI18next).init({
|
|
53
|
+
...DEFAULT_I18N_OPTIONS,
|
|
54
|
+
...this.i18nOptions,
|
|
55
|
+
lng: locale
|
|
56
|
+
});
|
|
57
|
+
};
|
|
58
|
+
createBaseTolgeeInstance = () => {
|
|
59
|
+
return i18next.Tolgee().use(i18next.I18nextPlugin()).use(
|
|
60
|
+
i18next.BackendFetch({
|
|
61
|
+
prefix: `${this.tolgee.cdnHost}/${this.tolgee.projectId}`
|
|
62
|
+
})
|
|
63
|
+
);
|
|
64
|
+
};
|
|
65
|
+
initTolgeeCDN = () => {
|
|
66
|
+
return this.createBaseTolgeeInstance().init();
|
|
67
|
+
};
|
|
68
|
+
initTolgeeDevTools = async () => {
|
|
69
|
+
const [{ InContextTools }, { DevBackend }] = await Promise.all([
|
|
70
|
+
import('@tolgee/web/tools'),
|
|
71
|
+
import('@tolgee/i18next')
|
|
72
|
+
]);
|
|
73
|
+
return this.createBaseTolgeeInstance().use(DevBackend()).use(InContextTools()).init({
|
|
74
|
+
apiUrl: this.tolgee.apiUrl,
|
|
75
|
+
apiKey: this.tolgee.apiKey,
|
|
76
|
+
fetch: (input, init) => {
|
|
77
|
+
return fetch(input, { ...init, signal: AbortSignal.timeout(TOLGEE_DEV_TIMEOUT_MS) });
|
|
78
|
+
}
|
|
79
|
+
});
|
|
80
|
+
};
|
|
81
|
+
};
|
|
82
|
+
|
|
83
|
+
// src/translation/translation.constants.ts
|
|
84
|
+
var TranslationNamespace = /* @__PURE__ */ ((TranslationNamespace2) => {
|
|
85
|
+
TranslationNamespace2["STUDENTS_WEB"] = "students-web";
|
|
86
|
+
TranslationNamespace2["TEACHERS_WEB"] = "teachers-web";
|
|
87
|
+
TranslationNamespace2["DISTRICT_DASH"] = "district-dash";
|
|
88
|
+
TranslationNamespace2["AUTH_WEB"] = "auth-web";
|
|
89
|
+
TranslationNamespace2["MAGMAMATH_FEATURES"] = "magmamath-features";
|
|
90
|
+
TranslationNamespace2["DRAW_BOARD"] = "drawboard";
|
|
91
|
+
TranslationNamespace2["STUDENTS_FEATURES"] = "students-features";
|
|
92
|
+
return TranslationNamespace2;
|
|
93
|
+
})(TranslationNamespace || {});
|
|
94
|
+
|
|
95
|
+
exports.TranslationManager = TranslationManager;
|
|
96
|
+
exports.TranslationNamespace = TranslationNamespace;
|
|
97
|
+
//# sourceMappingURL=index.js.map
|
|
98
|
+
//# sourceMappingURL=index.js.map
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"sources":["../../src/translation/TranslationManager.ts","../../src/translation/translation.constants.ts"],"names":["i18n","withTolgee","initReactI18next","Tolgee","I18nextPlugin","BackendFetch","TranslationNamespace"],"mappings":"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","file":"index.js","sourcesContent":["import i18n, { InitOptions } from 'i18next'\nimport { initReactI18next } from 'react-i18next'\nimport type { TolgeeInstance } from '@tolgee/i18next'\nimport { BackendFetch, I18nextPlugin, Tolgee, withTolgee } from '@tolgee/i18next'\nimport { Locale } from '../shared/constants/common.constants'\n\nconst TOLGEE_DEV_TIMEOUT_MS = 3000\n\nconst DEFAULT_I18N_OPTIONS: InitOptions = {\n fallbackLng: undefined,\n load: 'currentOnly',\n react: {\n useSuspense: false,\n },\n}\n\ntype TolgeeConfig = {\n isDev: boolean\n cdnHost: string\n projectId: string\n apiUrl?: string\n apiKey?: string\n}\n\ntype TranslationManagerOptions = {\n tolgee: TolgeeConfig\n i18nOptions?: InitOptions\n localStorageKey?: string\n}\n\nexport class TranslationManager {\n private readonly tolgee: TolgeeConfig\n private readonly i18nOptions: InitOptions\n private readonly localStorageKey?: string\n private initPromise: Promise<void> | null = null\n\n constructor({ tolgee, i18nOptions = {}, localStorageKey }: TranslationManagerOptions) {\n this.tolgee = tolgee\n this.i18nOptions = i18nOptions\n this.localStorageKey = localStorageKey\n }\n\n public readonly setLanguage = async (locale: Locale) => {\n this.persistLocale(locale)\n await this.ensureInitialized(locale)\n\n if (i18n.language !== locale) {\n await i18n.changeLanguage(locale)\n }\n }\n\n private readonly persistLocale = (locale: Locale) => {\n if (!this.localStorageKey) return\n localStorage.setItem(this.localStorageKey, locale)\n }\n\n private readonly ensureInitialized = async (locale: Locale) => {\n if (!this.initPromise) {\n this.initPromise = this.init(locale).catch((error) => {\n this.initPromise = null\n throw error\n })\n }\n await this.initPromise\n }\n\n private readonly init = async (locale: Locale) => {\n const tolgee = this.tolgee.isDev ? await this.initTolgeeDevTools() : this.initTolgeeCDN()\n\n await withTolgee(i18n, tolgee)\n .use(initReactI18next)\n .init({\n ...DEFAULT_I18N_OPTIONS,\n ...this.i18nOptions,\n lng: locale,\n })\n }\n\n private readonly createBaseTolgeeInstance = () => {\n return Tolgee()\n .use(I18nextPlugin())\n .use(\n BackendFetch({\n prefix: `${this.tolgee.cdnHost}/${this.tolgee.projectId}`,\n })\n )\n }\n\n private readonly initTolgeeCDN = () => {\n return this.createBaseTolgeeInstance().init()\n }\n\n private readonly initTolgeeDevTools = async (): Promise<TolgeeInstance> => {\n const [{ InContextTools }, { DevBackend }] = await Promise.all([\n import('@tolgee/web/tools'),\n import('@tolgee/i18next'),\n ])\n\n return this.createBaseTolgeeInstance()\n .use(DevBackend())\n .use(InContextTools())\n .init({\n apiUrl: this.tolgee.apiUrl,\n apiKey: this.tolgee.apiKey,\n fetch: (input, init) => {\n return fetch(input, { ...init, signal: AbortSignal.timeout(TOLGEE_DEV_TIMEOUT_MS) })\n },\n })\n }\n}\n","export enum TranslationNamespace {\n STUDENTS_WEB = 'students-web',\n TEACHERS_WEB = 'teachers-web',\n DISTRICT_DASH = 'district-dash',\n AUTH_WEB = 'auth-web',\n MAGMAMATH_FEATURES = 'magmamath-features',\n DRAW_BOARD = 'drawboard',\n STUDENTS_FEATURES = 'students-features',\n}\n"]}
|
|
@@ -0,0 +1,91 @@
|
|
|
1
|
+
import i18n from 'i18next';
|
|
2
|
+
import { initReactI18next } from 'react-i18next';
|
|
3
|
+
import { withTolgee, Tolgee, I18nextPlugin, BackendFetch } from '@tolgee/i18next';
|
|
4
|
+
|
|
5
|
+
// src/translation/TranslationManager.ts
|
|
6
|
+
var TOLGEE_DEV_TIMEOUT_MS = 3e3;
|
|
7
|
+
var DEFAULT_I18N_OPTIONS = {
|
|
8
|
+
fallbackLng: void 0,
|
|
9
|
+
load: "currentOnly",
|
|
10
|
+
react: {
|
|
11
|
+
useSuspense: false
|
|
12
|
+
}
|
|
13
|
+
};
|
|
14
|
+
var TranslationManager = class {
|
|
15
|
+
tolgee;
|
|
16
|
+
i18nOptions;
|
|
17
|
+
localStorageKey;
|
|
18
|
+
initPromise = null;
|
|
19
|
+
constructor({ tolgee, i18nOptions = {}, localStorageKey }) {
|
|
20
|
+
this.tolgee = tolgee;
|
|
21
|
+
this.i18nOptions = i18nOptions;
|
|
22
|
+
this.localStorageKey = localStorageKey;
|
|
23
|
+
}
|
|
24
|
+
setLanguage = async (locale) => {
|
|
25
|
+
this.persistLocale(locale);
|
|
26
|
+
await this.ensureInitialized(locale);
|
|
27
|
+
if (i18n.language !== locale) {
|
|
28
|
+
await i18n.changeLanguage(locale);
|
|
29
|
+
}
|
|
30
|
+
};
|
|
31
|
+
persistLocale = (locale) => {
|
|
32
|
+
if (!this.localStorageKey) return;
|
|
33
|
+
localStorage.setItem(this.localStorageKey, locale);
|
|
34
|
+
};
|
|
35
|
+
ensureInitialized = async (locale) => {
|
|
36
|
+
if (!this.initPromise) {
|
|
37
|
+
this.initPromise = this.init(locale).catch((error) => {
|
|
38
|
+
this.initPromise = null;
|
|
39
|
+
throw error;
|
|
40
|
+
});
|
|
41
|
+
}
|
|
42
|
+
await this.initPromise;
|
|
43
|
+
};
|
|
44
|
+
init = async (locale) => {
|
|
45
|
+
const tolgee = this.tolgee.isDev ? await this.initTolgeeDevTools() : this.initTolgeeCDN();
|
|
46
|
+
await withTolgee(i18n, tolgee).use(initReactI18next).init({
|
|
47
|
+
...DEFAULT_I18N_OPTIONS,
|
|
48
|
+
...this.i18nOptions,
|
|
49
|
+
lng: locale
|
|
50
|
+
});
|
|
51
|
+
};
|
|
52
|
+
createBaseTolgeeInstance = () => {
|
|
53
|
+
return Tolgee().use(I18nextPlugin()).use(
|
|
54
|
+
BackendFetch({
|
|
55
|
+
prefix: `${this.tolgee.cdnHost}/${this.tolgee.projectId}`
|
|
56
|
+
})
|
|
57
|
+
);
|
|
58
|
+
};
|
|
59
|
+
initTolgeeCDN = () => {
|
|
60
|
+
return this.createBaseTolgeeInstance().init();
|
|
61
|
+
};
|
|
62
|
+
initTolgeeDevTools = async () => {
|
|
63
|
+
const [{ InContextTools }, { DevBackend }] = await Promise.all([
|
|
64
|
+
import('@tolgee/web/tools'),
|
|
65
|
+
import('@tolgee/i18next')
|
|
66
|
+
]);
|
|
67
|
+
return this.createBaseTolgeeInstance().use(DevBackend()).use(InContextTools()).init({
|
|
68
|
+
apiUrl: this.tolgee.apiUrl,
|
|
69
|
+
apiKey: this.tolgee.apiKey,
|
|
70
|
+
fetch: (input, init) => {
|
|
71
|
+
return fetch(input, { ...init, signal: AbortSignal.timeout(TOLGEE_DEV_TIMEOUT_MS) });
|
|
72
|
+
}
|
|
73
|
+
});
|
|
74
|
+
};
|
|
75
|
+
};
|
|
76
|
+
|
|
77
|
+
// src/translation/translation.constants.ts
|
|
78
|
+
var TranslationNamespace = /* @__PURE__ */ ((TranslationNamespace2) => {
|
|
79
|
+
TranslationNamespace2["STUDENTS_WEB"] = "students-web";
|
|
80
|
+
TranslationNamespace2["TEACHERS_WEB"] = "teachers-web";
|
|
81
|
+
TranslationNamespace2["DISTRICT_DASH"] = "district-dash";
|
|
82
|
+
TranslationNamespace2["AUTH_WEB"] = "auth-web";
|
|
83
|
+
TranslationNamespace2["MAGMAMATH_FEATURES"] = "magmamath-features";
|
|
84
|
+
TranslationNamespace2["DRAW_BOARD"] = "drawboard";
|
|
85
|
+
TranslationNamespace2["STUDENTS_FEATURES"] = "students-features";
|
|
86
|
+
return TranslationNamespace2;
|
|
87
|
+
})(TranslationNamespace || {});
|
|
88
|
+
|
|
89
|
+
export { TranslationManager, TranslationNamespace };
|
|
90
|
+
//# sourceMappingURL=index.mjs.map
|
|
91
|
+
//# sourceMappingURL=index.mjs.map
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"sources":["../../src/translation/TranslationManager.ts","../../src/translation/translation.constants.ts"],"names":["TranslationNamespace"],"mappings":"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","file":"index.mjs","sourcesContent":["import i18n, { InitOptions } from 'i18next'\nimport { initReactI18next } from 'react-i18next'\nimport type { TolgeeInstance } from '@tolgee/i18next'\nimport { BackendFetch, I18nextPlugin, Tolgee, withTolgee } from '@tolgee/i18next'\nimport { Locale } from '../shared/constants/common.constants'\n\nconst TOLGEE_DEV_TIMEOUT_MS = 3000\n\nconst DEFAULT_I18N_OPTIONS: InitOptions = {\n fallbackLng: undefined,\n load: 'currentOnly',\n react: {\n useSuspense: false,\n },\n}\n\ntype TolgeeConfig = {\n isDev: boolean\n cdnHost: string\n projectId: string\n apiUrl?: string\n apiKey?: string\n}\n\ntype TranslationManagerOptions = {\n tolgee: TolgeeConfig\n i18nOptions?: InitOptions\n localStorageKey?: string\n}\n\nexport class TranslationManager {\n private readonly tolgee: TolgeeConfig\n private readonly i18nOptions: InitOptions\n private readonly localStorageKey?: string\n private initPromise: Promise<void> | null = null\n\n constructor({ tolgee, i18nOptions = {}, localStorageKey }: TranslationManagerOptions) {\n this.tolgee = tolgee\n this.i18nOptions = i18nOptions\n this.localStorageKey = localStorageKey\n }\n\n public readonly setLanguage = async (locale: Locale) => {\n this.persistLocale(locale)\n await this.ensureInitialized(locale)\n\n if (i18n.language !== locale) {\n await i18n.changeLanguage(locale)\n }\n }\n\n private readonly persistLocale = (locale: Locale) => {\n if (!this.localStorageKey) return\n localStorage.setItem(this.localStorageKey, locale)\n }\n\n private readonly ensureInitialized = async (locale: Locale) => {\n if (!this.initPromise) {\n this.initPromise = this.init(locale).catch((error) => {\n this.initPromise = null\n throw error\n })\n }\n await this.initPromise\n }\n\n private readonly init = async (locale: Locale) => {\n const tolgee = this.tolgee.isDev ? await this.initTolgeeDevTools() : this.initTolgeeCDN()\n\n await withTolgee(i18n, tolgee)\n .use(initReactI18next)\n .init({\n ...DEFAULT_I18N_OPTIONS,\n ...this.i18nOptions,\n lng: locale,\n })\n }\n\n private readonly createBaseTolgeeInstance = () => {\n return Tolgee()\n .use(I18nextPlugin())\n .use(\n BackendFetch({\n prefix: `${this.tolgee.cdnHost}/${this.tolgee.projectId}`,\n })\n )\n }\n\n private readonly initTolgeeCDN = () => {\n return this.createBaseTolgeeInstance().init()\n }\n\n private readonly initTolgeeDevTools = async (): Promise<TolgeeInstance> => {\n const [{ InContextTools }, { DevBackend }] = await Promise.all([\n import('@tolgee/web/tools'),\n import('@tolgee/i18next'),\n ])\n\n return this.createBaseTolgeeInstance()\n .use(DevBackend())\n .use(InContextTools())\n .init({\n apiUrl: this.tolgee.apiUrl,\n apiKey: this.tolgee.apiKey,\n fetch: (input, init) => {\n return fetch(input, { ...init, signal: AbortSignal.timeout(TOLGEE_DEV_TIMEOUT_MS) })\n },\n })\n }\n}\n","export enum TranslationNamespace {\n STUDENTS_WEB = 'students-web',\n TEACHERS_WEB = 'teachers-web',\n DISTRICT_DASH = 'district-dash',\n AUTH_WEB = 'auth-web',\n MAGMAMATH_FEATURES = 'magmamath-features',\n DRAW_BOARD = 'drawboard',\n STUDENTS_FEATURES = 'students-features',\n}\n"]}
|
package/package.json
CHANGED
|
@@ -1,9 +1,21 @@
|
|
|
1
1
|
{
|
|
2
2
|
"name": "@magmamath/frontend-config",
|
|
3
|
-
"version": "1.1.2-rc.
|
|
3
|
+
"version": "1.1.2-rc.8",
|
|
4
4
|
"main": "./dist/index.js",
|
|
5
5
|
"module": "./dist/index.mjs",
|
|
6
6
|
"types": "./dist/index.d.ts",
|
|
7
|
+
"exports": {
|
|
8
|
+
".": {
|
|
9
|
+
"types": "./dist/index.d.ts",
|
|
10
|
+
"import": "./dist/index.mjs",
|
|
11
|
+
"require": "./dist/index.js"
|
|
12
|
+
},
|
|
13
|
+
"./translation": {
|
|
14
|
+
"types": "./dist/translation/index.d.ts",
|
|
15
|
+
"import": "./dist/translation/index.mjs",
|
|
16
|
+
"require": "./dist/translation/index.js"
|
|
17
|
+
}
|
|
18
|
+
},
|
|
7
19
|
"license": "ISC",
|
|
8
20
|
"files": [
|
|
9
21
|
"dist/**"
|
|
@@ -21,17 +33,25 @@
|
|
|
21
33
|
},
|
|
22
34
|
"peerDependencies": {
|
|
23
35
|
"effector": "^23.4.4",
|
|
36
|
+
"i18next": ">=23",
|
|
24
37
|
"react": "^18",
|
|
25
38
|
"react-dom": "^18",
|
|
26
|
-
"react-
|
|
39
|
+
"react-i18next": ">=14",
|
|
40
|
+
"react-native-svg": "15.13.0",
|
|
41
|
+
"@tolgee/i18next": ">=5",
|
|
42
|
+
"@tolgee/web": ">=5"
|
|
27
43
|
},
|
|
28
44
|
"dependencies": {},
|
|
29
45
|
"devDependencies": {
|
|
46
|
+
"@tolgee/i18next": "^5.0.0",
|
|
47
|
+
"@tolgee/web": "^5.0.0",
|
|
30
48
|
"@types/node": "^18.0.0",
|
|
31
49
|
"@types/react": "^19.2.2",
|
|
32
50
|
"effector": "^23.4.4",
|
|
33
51
|
"eslint": "^8.57.0",
|
|
52
|
+
"i18next": "^23.0.0",
|
|
34
53
|
"react": "^18",
|
|
54
|
+
"react-i18next": "^14.0.0",
|
|
35
55
|
"react-native-svg": "15.13.0",
|
|
36
56
|
"rimraf": "^5.0.0",
|
|
37
57
|
"tsup": "^8.0.0",
|