codenotch-react 1.0.60 → 1.0.62
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/components/Auml.d.ts +3 -2
- package/dist/components/Auml.d.ts.map +1 -1
- package/dist/components/Auml.js +37 -41
- package/dist/index.d.ts.map +1 -1
- package/dist/index.js +66 -49
- package/dist/models/Codenotch.d.ts +1 -0
- package/dist/models/Codenotch.d.ts.map +1 -1
- package/dist/utils/I18nUtils.d.ts +2 -1
- package/dist/utils/I18nUtils.d.ts.map +1 -1
- package/dist/utils/I18nUtils.js +4 -5
- package/package.json +1 -1
|
@@ -2,6 +2,7 @@ import React from "react";
|
|
|
2
2
|
import { SpaRenderStatus } from '@echino/echino.ui.framework/components/SpaBuilder/common/ISpaRenderProps';
|
|
3
3
|
interface IAumlProps {
|
|
4
4
|
value: string;
|
|
5
|
+
verbose?: boolean;
|
|
5
6
|
}
|
|
6
7
|
interface IAumlState {
|
|
7
8
|
loaded: boolean;
|
|
@@ -11,10 +12,9 @@ export declare class Auml extends React.Component<IAumlProps, IAumlState> {
|
|
|
11
12
|
_refreshTokenTimer: NodeJS.Timeout | undefined;
|
|
12
13
|
constructor(props: IAumlProps);
|
|
13
14
|
componentDidMount(): void;
|
|
15
|
+
registerRefreshToken(): void;
|
|
14
16
|
componentWillUnmount(): void;
|
|
15
17
|
progress(s: SpaRenderStatus): void;
|
|
16
|
-
getLogo(): React.JSX.Element;
|
|
17
|
-
getMode(theme: boolean | undefined): "light" | "dark";
|
|
18
18
|
retrieveInputs(): {
|
|
19
19
|
[k: string]: string;
|
|
20
20
|
};
|
|
@@ -23,6 +23,7 @@ export declare class Auml extends React.Component<IAumlProps, IAumlState> {
|
|
|
23
23
|
msToTime(ms: number): string;
|
|
24
24
|
parseJwt(token: string): any;
|
|
25
25
|
render(): React.JSX.Element;
|
|
26
|
+
renderLoadingContent(): React.JSX.Element;
|
|
26
27
|
refreshExpiredToken(): Promise<void>;
|
|
27
28
|
}
|
|
28
29
|
export {};
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"Auml.d.ts","sourceRoot":"","sources":["../../src/components/Auml.tsx"],"names":[],"mappings":"AAAA,OAAO,KAAK,MAAM,OAAO,CAAC;AAE1B,OAAO,EAAE,eAAe,EAAE,MAAM,0EAA0E,CAAC;
|
|
1
|
+
{"version":3,"file":"Auml.d.ts","sourceRoot":"","sources":["../../src/components/Auml.tsx"],"names":[],"mappings":"AAAA,OAAO,KAAK,MAAM,OAAO,CAAC;AAE1B,OAAO,EAAE,eAAe,EAAE,MAAM,0EAA0E,CAAC;AAW3G,UAAU,UAAU;IAChB,KAAK,EAAE,MAAM,CAAC;IACd,OAAO,CAAC,EAAE,OAAO,CAAC;CACrB;AAED,UAAU,UAAU;IAChB,MAAM,EAAE,OAAO,CAAC;IAChB,gBAAgB,EAAE,OAAO,CAAC;CAC7B;AAED,qBAAa,IAAK,SAAQ,KAAK,CAAC,SAAS,CAAC,UAAU,EAAE,UAAU,CAAC;IAE7D,kBAAkB,EAAE,MAAM,CAAC,OAAO,GAAG,SAAS,CAAC;gBAEnC,KAAK,EAAE,UAAU;IAa7B,iBAAiB;IAIjB,oBAAoB;IAoCpB,oBAAoB;IAOpB,QAAQ,CAAC,CAAC,EAAE,eAAe;IAS3B,cAAc;;;IAMd,wBAAwB,IAAI,MAAM,GAAG,IAAI;IAqCzC,2BAA2B,CAAC,kBAAkB,EAAE,MAAM,GAAG,MAAM;IAO/D,QAAQ,CAAC,EAAE,EAAE,MAAM;IAmBnB,QAAQ,CAAC,KAAK,EAAE,MAAM;IAUtB,MAAM;IAkDN,oBAAoB;IAkBd,mBAAmB;CAoC5B"}
|
package/dist/components/Auml.js
CHANGED
|
@@ -7,6 +7,7 @@ exports.Auml = void 0;
|
|
|
7
7
|
const react_1 = __importDefault(require("react"));
|
|
8
8
|
const SpaRenderWithBrowserRouter_1 = require("@echino/echino.ui.framework/components/SpaBuilder/SpaRender/SpaRenderWithBrowserRouter");
|
|
9
9
|
const I18nUtils_1 = __importDefault(require("../utils/I18nUtils"));
|
|
10
|
+
const index_1 = require("../index");
|
|
10
11
|
class Auml extends react_1.default.Component {
|
|
11
12
|
constructor(props) {
|
|
12
13
|
super(props);
|
|
@@ -20,18 +21,25 @@ class Auml extends react_1.default.Component {
|
|
|
20
21
|
}
|
|
21
22
|
}
|
|
22
23
|
componentDidMount() {
|
|
24
|
+
this.registerRefreshToken();
|
|
25
|
+
}
|
|
26
|
+
registerRefreshToken() {
|
|
23
27
|
try {
|
|
24
28
|
// Setup a method to refresh our access token when it expires
|
|
25
29
|
if (this._refreshTokenTimer) {
|
|
26
30
|
clearTimeout(this._refreshTokenTimer);
|
|
27
31
|
}
|
|
28
32
|
if (user === null) {
|
|
29
|
-
|
|
33
|
+
if (this.props.verbose === true) {
|
|
34
|
+
console.log("No user found, will not refresh the token");
|
|
35
|
+
}
|
|
30
36
|
return;
|
|
31
37
|
}
|
|
32
38
|
let timeToExpireMs = this.getTimeToTokenExpiration();
|
|
33
39
|
if (timeToExpireMs === null) {
|
|
34
|
-
|
|
40
|
+
if (this.props.verbose === true) {
|
|
41
|
+
console.log("No identity token found, attempting refreshing the token in 5 minutes");
|
|
42
|
+
}
|
|
35
43
|
this._refreshTokenTimer = setTimeout(() => this.refreshExpiredToken(), 5 * 60 * 1000);
|
|
36
44
|
return;
|
|
37
45
|
}
|
|
@@ -59,25 +67,6 @@ class Auml extends react_1.default.Component {
|
|
|
59
67
|
this.setState({ loaded: true });
|
|
60
68
|
}
|
|
61
69
|
}
|
|
62
|
-
getLogo() {
|
|
63
|
-
//@ts-ignore
|
|
64
|
-
let tenant = global.tenant;
|
|
65
|
-
if (tenant.logoUrl) {
|
|
66
|
-
return react_1.default.createElement("img", { src: tenant.logoUrl, alt: tenant.displayName });
|
|
67
|
-
}
|
|
68
|
-
else {
|
|
69
|
-
return react_1.default.createElement("div", { className: 'app-loading-title' }, tenant.displayName);
|
|
70
|
-
}
|
|
71
|
-
}
|
|
72
|
-
getMode(theme) {
|
|
73
|
-
if (theme !== undefined) {
|
|
74
|
-
return theme ? 'dark' : 'light';
|
|
75
|
-
}
|
|
76
|
-
if (window.matchMedia && window.matchMedia('(prefers-color-scheme: dark)').matches) {
|
|
77
|
-
return 'dark';
|
|
78
|
-
}
|
|
79
|
-
return 'light';
|
|
80
|
-
}
|
|
81
70
|
// Get input from the query parameters in the url
|
|
82
71
|
retrieveInputs() {
|
|
83
72
|
return Object.fromEntries(new URLSearchParams(window.location.search).entries());
|
|
@@ -101,7 +90,9 @@ class Auml extends react_1.default.Component {
|
|
|
101
90
|
let expires = identityTokenParsed.exp; // Timestamp in second since Unix epoch
|
|
102
91
|
let timeToExpiresMs = expires * 1000 - new Date().getTime();
|
|
103
92
|
let timeToExpireStr = this.msToTime(timeToExpiresMs);
|
|
104
|
-
|
|
93
|
+
if (this.props.verbose === true) {
|
|
94
|
+
console.log(`Token will expire at ${new Date(expires * 1000).toISOString()} (in ${timeToExpireStr}), setting up a timer to refresh it`);
|
|
95
|
+
}
|
|
105
96
|
// Refresh it a bit before the expiration (5 min)
|
|
106
97
|
timeToExpiresMs -= 5 * 60 * 1000;
|
|
107
98
|
return timeToExpiresMs;
|
|
@@ -131,24 +122,10 @@ class Auml extends react_1.default.Component {
|
|
|
131
122
|
}).join(''));
|
|
132
123
|
return JSON.parse(jsonPayload);
|
|
133
124
|
}
|
|
134
|
-
/*
|
|
135
|
-
export interface UserInfo {
|
|
136
|
-
|
|
137
|
-
id: string,
|
|
138
|
-
roles: string[],
|
|
139
|
-
groups: string[],
|
|
140
|
-
email: string,
|
|
141
|
-
firstName: string,
|
|
142
|
-
lastName: string
|
|
143
|
-
}
|
|
144
|
-
*/
|
|
145
125
|
render() {
|
|
146
|
-
//var clusterUrl = this.figureOutClusterUrl();
|
|
147
126
|
let inputs = this.retrieveInputs();
|
|
148
|
-
|
|
149
|
-
|
|
150
|
-
theme = inputs["_theme"].toLowerCase() === "dark";
|
|
151
|
-
}
|
|
127
|
+
const cn = (0, index_1.useCodenotch)();
|
|
128
|
+
let theme = cn.env.theme === "dark";
|
|
152
129
|
let aumlManifest = null;
|
|
153
130
|
try {
|
|
154
131
|
let appManifestObj = JSON.parse(appManifest);
|
|
@@ -157,7 +134,10 @@ export interface UserInfo {
|
|
|
157
134
|
catch { }
|
|
158
135
|
let auml = this.props.value;
|
|
159
136
|
try {
|
|
160
|
-
auml = I18nUtils_1.default.compileAuml(auml);
|
|
137
|
+
auml = I18nUtils_1.default.compileAuml(auml, cn);
|
|
138
|
+
if (this.props.verbose === true) {
|
|
139
|
+
console.log("Compiled AUML with i18n variables: ", auml);
|
|
140
|
+
}
|
|
161
141
|
}
|
|
162
142
|
catch (err) {
|
|
163
143
|
console.error("Error compiling AUML with i18n variables: " + err);
|
|
@@ -165,10 +145,26 @@ export interface UserInfo {
|
|
|
165
145
|
return react_1.default.createElement("div", { className: "app" },
|
|
166
146
|
react_1.default.createElement(SpaRenderWithBrowserRouter_1.SpaRenderWithBrowserRouter, { appDescription: auml, tenant: tenant, serviceName: serviceName, packageVersions: packageVersions, user: user, languages: languages, onProgress: (s) => this.progress(s), input: inputs, theme: theme, manifest: aumlManifest, inspectorEnabled: this.state.inspectorEnabled, children: [] }),
|
|
167
147
|
!this.state.loaded &&
|
|
168
|
-
react_1.default.createElement("div", { className: `app-loading ${
|
|
169
|
-
this.
|
|
148
|
+
react_1.default.createElement("div", { className: `app-loading ${cn.env.theme ?? 'light'}` },
|
|
149
|
+
this.renderLoadingContent(),
|
|
170
150
|
react_1.default.createElement("i", { className: "fas fa-circle-notch fa-spin" })));
|
|
171
151
|
}
|
|
152
|
+
renderLoadingContent() {
|
|
153
|
+
try {
|
|
154
|
+
//@ts-ignore
|
|
155
|
+
let tenant = global.tenant;
|
|
156
|
+
if (tenant.logoUrl) {
|
|
157
|
+
return react_1.default.createElement("img", { src: tenant.logoUrl, alt: tenant.displayName });
|
|
158
|
+
}
|
|
159
|
+
else {
|
|
160
|
+
return react_1.default.createElement("div", { className: 'app-loading-title' }, tenant.displayName);
|
|
161
|
+
}
|
|
162
|
+
}
|
|
163
|
+
catch (e) {
|
|
164
|
+
console.warn("Could not load tenant information: " + e);
|
|
165
|
+
return react_1.default.createElement("div", { className: 'app-loading-title' }, "Loading...");
|
|
166
|
+
}
|
|
167
|
+
}
|
|
172
168
|
async refreshExpiredToken() {
|
|
173
169
|
console.log("Token will expire soon, requesting a new one...");
|
|
174
170
|
// Using the refresh token we ask for a new access token using /portal/login/refresh
|
package/dist/index.d.ts.map
CHANGED
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"index.d.ts","sourceRoot":"","sources":["../src/index.ts"],"names":[],"mappings":"AAIA,OAAO,EAAE,aAAa,EAAE,gBAAgB,EAAE,aAAa,EAAE,MAAM,oBAAoB,CAAC;AAEpF,OAAO,EAAE,IAAI,EAAE,MAAM,mBAAmB,CAAC;AACzC,OAAO,UAAU,MAAM,yBAAyB,CAAC;AAIjD,QAAA,MAAM,GAAG,EAAE,aAAkB,CAAC;AAM9B;;;;GAIG;AACH,iBAAS,IAAI,CAAC,YAAY,EAAE,GAAG,GAAG,IAAI,
|
|
1
|
+
{"version":3,"file":"index.d.ts","sourceRoot":"","sources":["../src/index.ts"],"names":[],"mappings":"AAIA,OAAO,EAAE,aAAa,EAAE,gBAAgB,EAAE,aAAa,EAAE,MAAM,oBAAoB,CAAC;AAEpF,OAAO,EAAE,IAAI,EAAE,MAAM,mBAAmB,CAAC;AACzC,OAAO,UAAU,MAAM,yBAAyB,CAAC;AAIjD,QAAA,MAAM,GAAG,EAAE,aAAkB,CAAC;AAM9B;;;;GAIG;AACH,iBAAS,IAAI,CAAC,YAAY,EAAE,GAAG,GAAG,IAAI,CAyFrC;AAED,iBAAS,IAAI,CAAC,GAAG,EAAE,MAAM,EAAE,GAAG,IAAI,EAAE,GAAG,EAAE,GAAG,MAAM,CAoCjD;AAED;;;GAGG;AACH,iBAAS,YAAY,IAAI,aAAa,CAkLrC;AAED,OAAO,EACH,GAAG,EACH,IAAI,EACJ,YAAY,EACZ,IAAI,EACJ,aAAa,EACb,aAAa,EACb,gBAAgB,EAChB,IAAI,EACJ,UAAU,EACb,CAAC"}
|
package/dist/index.js
CHANGED
|
@@ -27,65 +27,82 @@ const MISSING_TENANT_NAME_ERROR = "Codenotch tenant name is not defined. Please
|
|
|
27
27
|
* @returns {void}
|
|
28
28
|
*/
|
|
29
29
|
function init(envVariables) {
|
|
30
|
-
|
|
31
|
-
|
|
32
|
-
|
|
33
|
-
|
|
34
|
-
|
|
35
|
-
|
|
36
|
-
|
|
37
|
-
|
|
38
|
-
|
|
39
|
-
|
|
40
|
-
|
|
41
|
-
|
|
42
|
-
globalObject[globalKey] = JSON.parse(envVariables[key]);
|
|
43
|
-
console.log(`Codenotch global variable ${globalKey} set!`);
|
|
44
|
-
return;
|
|
45
|
-
}
|
|
46
|
-
else if (key.startsWith("i18n.")) {
|
|
47
|
-
// Special case
|
|
48
|
-
let parts = key.split("."); // i18n.someKey.fr
|
|
49
|
-
let language = parts[parts.length - 1]; // fr
|
|
50
|
-
let keyName = parts.slice(1, parts.length - 1).join("."); // someKey
|
|
51
|
-
i18nLanguages.add(language);
|
|
52
|
-
let value = `${envVariables[key]}`.trim();
|
|
53
|
-
if (value.startsWith('"') && value.endsWith('"')) {
|
|
54
|
-
// Parse like json
|
|
55
|
-
value = JSON.parse(value);
|
|
30
|
+
// Ensure envVariables is an object
|
|
31
|
+
if (typeof envVariables === 'object' && envVariables !== null) {
|
|
32
|
+
let i18nLanguages = new Set();
|
|
33
|
+
Object.keys(envVariables).forEach((key) => {
|
|
34
|
+
try {
|
|
35
|
+
if (key.startsWith('GLOBAL.')) {
|
|
36
|
+
// Global variable, we set it directly on the window object
|
|
37
|
+
let globalKey = key.substring('GLOBAL.'.length);
|
|
38
|
+
let globalObject = typeof window !== 'undefined' ? window : globalThis;
|
|
39
|
+
globalObject[globalKey] = JSON.parse(envVariables[key]);
|
|
40
|
+
console.log(`Codenotch global variable ${globalKey} set!`);
|
|
41
|
+
return;
|
|
56
42
|
}
|
|
57
|
-
|
|
58
|
-
|
|
59
|
-
|
|
60
|
-
|
|
61
|
-
|
|
62
|
-
|
|
63
|
-
|
|
64
|
-
|
|
65
|
-
|
|
66
|
-
|
|
43
|
+
else if (key.startsWith("i18n.")) {
|
|
44
|
+
// Special case
|
|
45
|
+
let parts = key.split("."); // i18n.someKey.fr
|
|
46
|
+
let language = parts[parts.length - 1]; // fr
|
|
47
|
+
let keyName = parts.slice(1, parts.length - 1).join("."); // someKey
|
|
48
|
+
i18nLanguages.add(language);
|
|
49
|
+
let value = `${envVariables[key]}`.trim();
|
|
50
|
+
if (value.startsWith('"') && value.endsWith('"')) {
|
|
51
|
+
// Parse like json
|
|
52
|
+
value = JSON.parse(value);
|
|
67
53
|
}
|
|
68
|
-
|
|
69
|
-
|
|
54
|
+
env.i18n = env.i18n ?? {};
|
|
55
|
+
env.i18n[language] = env.i18n[language] ?? {};
|
|
56
|
+
env.i18n[language][keyName] = value;
|
|
57
|
+
}
|
|
58
|
+
else {
|
|
59
|
+
env[key] = envVariables[key];
|
|
60
|
+
if (['appManifest', 'projectManifest'].includes(key)) {
|
|
61
|
+
// Must be Json
|
|
62
|
+
try {
|
|
63
|
+
env[key] = JSON.parse(envVariables[key]);
|
|
64
|
+
}
|
|
65
|
+
catch (error) {
|
|
66
|
+
console.warn(`Codenotch environment variable ${key} is not a valid JSON string. Using raw value.`);
|
|
67
|
+
}
|
|
70
68
|
}
|
|
69
|
+
console.log(`Codenotch environment variable ${key} set to ${env[key]}`);
|
|
71
70
|
}
|
|
72
|
-
console.log(`Codenotch environment variable ${key} set to ${env[key]}`);
|
|
73
71
|
}
|
|
74
|
-
|
|
75
|
-
|
|
76
|
-
|
|
77
|
-
}
|
|
78
|
-
|
|
79
|
-
|
|
80
|
-
|
|
81
|
-
|
|
82
|
-
|
|
83
|
-
|
|
72
|
+
catch (error) {
|
|
73
|
+
console.error(`Error processing Codenotch environment variable ${key}:`, error);
|
|
74
|
+
}
|
|
75
|
+
});
|
|
76
|
+
if (env.language === undefined) {
|
|
77
|
+
// If current language is not defined, we set it to the first language found in i18n
|
|
78
|
+
if (i18nLanguages.size > 0) {
|
|
79
|
+
env.language = Array.from(i18nLanguages)[0];
|
|
80
|
+
console.log(`Codenotch current language set to ${env.language}`);
|
|
81
|
+
}
|
|
84
82
|
}
|
|
85
83
|
}
|
|
84
|
+
// Instantiate SignalR for further use in the API
|
|
86
85
|
if (env.clusterUrl && env.serviceName) {
|
|
87
86
|
signalR = new SignalR_1.SignalR(env.clusterUrl, env.serviceName, false, env.accessToken);
|
|
88
87
|
}
|
|
88
|
+
// Get theme like AEC does
|
|
89
|
+
try {
|
|
90
|
+
let urlParams = Object.fromEntries(new URLSearchParams(window.location.search).entries());
|
|
91
|
+
if (urlParams["_theme"]) {
|
|
92
|
+
let theme = urlParams["_theme"].toLowerCase();
|
|
93
|
+
if (theme === "light" || theme === "dark") {
|
|
94
|
+
env.theme = theme;
|
|
95
|
+
}
|
|
96
|
+
}
|
|
97
|
+
else if (window.matchMedia && window.matchMedia('(prefers-color-scheme: dark)').matches) {
|
|
98
|
+
env.theme = 'dark';
|
|
99
|
+
}
|
|
100
|
+
else {
|
|
101
|
+
env.theme = 'light';
|
|
102
|
+
}
|
|
103
|
+
}
|
|
104
|
+
catch {
|
|
105
|
+
}
|
|
89
106
|
}
|
|
90
107
|
function i18n(key, ...args) {
|
|
91
108
|
try {
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"Codenotch.d.ts","sourceRoot":"","sources":["../../src/models/Codenotch.ts"],"names":[],"mappings":"AAAA,OAAO,EAAE,eAAe,EAAE,MAAM,yBAAyB,CAAC;AAC1D,OAAO,EAAE,gBAAgB,EAAE,WAAW,EAAE,cAAc,EAAE,MAAM,QAAQ,CAAC;AACvE,OAAO,EAAE,mBAAmB,EAAE,MAAM,qBAAqB,CAAC;AAE1D,MAAM,WAAW,aAAa;IAC1B,OAAO,CAAC,EAAE,MAAM,CAAC;IACjB,UAAU,CAAC,EAAE,MAAM,CAAC;IACpB,WAAW,CAAC,EAAE,MAAM,CAAC;IACrB,UAAU,CAAC,EAAE,MAAM,CAAC;IACpB,WAAW,CAAC,EAAE,MAAM,CAAC;IACrB,OAAO,CAAC,EAAE,MAAM,CAAC;IACjB,IAAI,CAAC,EAAE;QAAE,CAAC,QAAQ,EAAE,MAAM,GAAG;YAAE,CAAC,GAAG,EAAE,MAAM,GAAG,MAAM,CAAA;SAAE,CAAA;KAAE,CAAC;IACzD,QAAQ,CAAC,EAAE,MAAM,CAAC;IAClB,KAAK,CAAC,EAAE,OAAO,GAAG,MAAM,CAAC;IAEzB,WAAW,CAAC,EAAE,mBAAmB,CAAC;IAClC,eAAe,CAAC,EAAE,eAAe,CAAC;
|
|
1
|
+
{"version":3,"file":"Codenotch.d.ts","sourceRoot":"","sources":["../../src/models/Codenotch.ts"],"names":[],"mappings":"AAAA,OAAO,EAAE,eAAe,EAAE,MAAM,yBAAyB,CAAC;AAC1D,OAAO,EAAE,gBAAgB,EAAE,WAAW,EAAE,cAAc,EAAE,MAAM,QAAQ,CAAC;AACvE,OAAO,EAAE,mBAAmB,EAAE,MAAM,qBAAqB,CAAC;AAE1D,MAAM,WAAW,aAAa;IAC1B,OAAO,CAAC,EAAE,MAAM,CAAC;IACjB,UAAU,CAAC,EAAE,MAAM,CAAC;IACpB,WAAW,CAAC,EAAE,MAAM,CAAC;IACrB,UAAU,CAAC,EAAE,MAAM,CAAC;IACpB,WAAW,CAAC,EAAE,MAAM,CAAC;IACrB,OAAO,CAAC,EAAE,MAAM,CAAC;IACjB,IAAI,CAAC,EAAE;QAAE,CAAC,QAAQ,EAAE,MAAM,GAAG;YAAE,CAAC,GAAG,EAAE,MAAM,GAAG,MAAM,CAAA;SAAE,CAAA;KAAE,CAAC;IACzD,QAAQ,CAAC,EAAE,MAAM,CAAC;IAClB,KAAK,CAAC,EAAE,OAAO,GAAG,MAAM,CAAC;IAEzB,WAAW,CAAC,EAAE,mBAAmB,CAAC;IAClC,eAAe,CAAC,EAAE,eAAe,CAAC;IAGlC,CAAC,GAAG,EAAE,MAAM,GAAG,GAAG,CAAC;CACtB;AAED,MAAM,WAAW,aAAa;IAC1B,QAAQ,CAAC,GAAG,EAAE,aAAa,CAAC;IAE5B,QAAQ,CAAC,YAAY,EAAE,CAAC,KAAK,EAAE,MAAM,EAAE,OAAO,CAAC,EAAE,OAAO,KAAK,OAAO,CAAC,GAAG,CAAC,CAAC;IAC1E,QAAQ,CAAC,YAAY,EAAE,CAAC,WAAW,EAAE,MAAM,EAAE,MAAM,EAAE,GAAG,EAAE,WAAW,CAAC,EAAE,MAAM,KAAK,OAAO,CAAC,cAAc,CAAC,CAAC;IAC3G,QAAQ,CAAC,UAAU,EAAE,CAAC,IAAI,EAAE,GAAG,CAAC,OAAO,KAAK,gBAAgB,CAAC;IAC7D,QAAQ,CAAC,cAAc,EAAE,CAAC,YAAY,EAAE,MAAM,KAAK,OAAO,CAAC,MAAM,GAAG,SAAS,CAAC,CAAC;IAC/E,QAAQ,CAAC,iBAAiB,EAAE,CAAC,YAAY,EAAE,MAAM,KAAK,MAAM,CAAC;IAC7D,QAAQ,CAAC,YAAY,EAAE,CAAC,QAAQ,EAAE,MAAM,EAAE,QAAQ,EAAE,CAAC,IAAI,EAAE,gBAAgB,KAAK,IAAI,KAAK,OAAO,CAAC,WAAW,CAAC,CAAC;IAC9G,QAAQ,CAAC,QAAQ,EAAE,CAAC,KAAK,EAAE,OAAO,GAAG,MAAM,KAAK,IAAI,CAAC;IACrD,QAAQ,CAAC,QAAQ,EAAE,MAAM,OAAO,GAAG,MAAM,GAAG,SAAS,CAAC;IACtD,QAAQ,CAAC,WAAW,EAAE,CAAC,IAAI,EAAE,MAAM,KAAK,IAAI,CAAC;IAC7C,QAAQ,CAAC,WAAW,EAAE,MAAM,MAAM,GAAG,SAAS,CAAC;IAC/C,QAAQ,CAAC,YAAY,EAAE,MAAM,MAAM,EAAE,CAAC;IACtC,QAAQ,CAAC,YAAY,EAAE,MAAM;QAAE,CAAC,GAAG,EAAE,MAAM,GAAG,MAAM,CAAA;KAAE,CAAC;IACvD,QAAQ,CAAC,IAAI,EAAE,MAAM,MAAM,CAAC;IAC5B,QAAQ,CAAC,kBAAkB,EAAE,MAAM,eAAe,CAAC;IACnD,QAAQ,CAAC,cAAc,EAAE,MAAM,mBAAmB,GAAG,SAAS,CAAC;CAClE;AAED,MAAM,WAAW,gBAAgB;IAC7B,EAAE,EAAE,MAAM,CAAC;IACX,KAAK,EAAE,MAAM,IAAI,CAAC;CACrB"}
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"I18nUtils.d.ts","sourceRoot":"","sources":["../../src/utils/I18nUtils.ts"],"names":[],"mappings":"
|
|
1
|
+
{"version":3,"file":"I18nUtils.d.ts","sourceRoot":"","sources":["../../src/utils/I18nUtils.ts"],"names":[],"mappings":"AAAA,OAAO,EAAE,aAAa,EAAgB,MAAM,IAAI,CAAC;AAEjD,MAAM,CAAC,OAAO,CAAC,QAAQ,OAAO,SAAS;WAErB,WAAW,CAAC,IAAI,EAAE,MAAM,EAAE,GAAG,EAAE,aAAa,GAAG,MAAM;IAOnE,OAAO,CAAC,MAAM,CAAC,UAAU;CAqB5B"}
|
package/dist/utils/I18nUtils.js
CHANGED
|
@@ -1,13 +1,12 @@
|
|
|
1
1
|
"use strict";
|
|
2
2
|
Object.defineProperty(exports, "__esModule", { value: true });
|
|
3
|
-
const __1 = require("..");
|
|
4
3
|
class I18nUtils {
|
|
5
|
-
static compileAuml(auml) {
|
|
6
|
-
auml = this.injectI18n(auml);
|
|
4
|
+
static compileAuml(auml, api) {
|
|
5
|
+
auml = this.injectI18n(auml, api);
|
|
7
6
|
return auml;
|
|
8
7
|
}
|
|
9
|
-
static injectI18n(auml) {
|
|
10
|
-
let i18n =
|
|
8
|
+
static injectI18n(auml, api) {
|
|
9
|
+
let i18n = api.env.i18n ?? {};
|
|
11
10
|
if (Object.keys(i18n).length === 0) {
|
|
12
11
|
// No i18n variables, return original auml
|
|
13
12
|
return auml;
|