@next-core/runtime 1.4.3 → 1.5.1
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/cjs/Dialog.js +2 -3
- package/dist/cjs/Dialog.js.map +1 -1
- package/dist/cjs/Notification.js +2 -3
- package/dist/cjs/Notification.js.map +1 -1
- package/dist/cjs/index.js.map +1 -1
- package/dist/cjs/internal/CustomTemplates/expandCustomTemplate.js +2 -1
- package/dist/cjs/internal/CustomTemplates/expandCustomTemplate.js.map +1 -1
- package/dist/cjs/internal/CustomTemplates/utils.js.map +1 -1
- package/dist/cjs/internal/FormRenderer/constants.js +11 -0
- package/dist/cjs/internal/FormRenderer/constants.js.map +1 -0
- package/dist/cjs/internal/FormRenderer/expandFormRenderer.js +122 -0
- package/dist/cjs/internal/FormRenderer/expandFormRenderer.js.map +1 -0
- package/dist/cjs/internal/FormRenderer/getDefaultProperties.js +165 -0
- package/dist/cjs/internal/FormRenderer/getDefaultProperties.js.map +1 -0
- package/dist/cjs/internal/FormRenderer/interfaces.js +6 -0
- package/dist/cjs/internal/FormRenderer/interfaces.js.map +1 -0
- package/dist/cjs/internal/FormRenderer/utils.js +20 -0
- package/dist/cjs/internal/FormRenderer/utils.js.map +1 -0
- package/dist/cjs/internal/Renderer.js +38 -9
- package/dist/cjs/internal/Renderer.js.map +1 -1
- package/dist/cjs/internal/Router.js +5 -4
- package/dist/cjs/internal/Router.js.map +1 -1
- package/dist/cjs/internal/Runtime.js +72 -32
- package/dist/cjs/internal/Runtime.js.map +1 -1
- package/dist/cjs/internal/bindListeners.js +9 -2
- package/dist/cjs/internal/bindListeners.js.map +1 -1
- package/dist/cjs/internal/bootstrapData.js.map +1 -1
- package/dist/cjs/internal/compute/evaluate.js +21 -6
- package/dist/cjs/internal/compute/evaluate.js.map +1 -1
- package/dist/cjs/internal/compute/listenOnTrackingContext.js +7 -9
- package/dist/cjs/internal/compute/listenOnTrackingContext.js.map +1 -1
- package/dist/cjs/internal/data/DataStore.js +2 -2
- package/dist/cjs/internal/data/DataStore.js.map +1 -1
- package/dist/cjs/internal/fulfilStoryboard.js +27 -0
- package/dist/cjs/internal/fulfilStoryboard.js.map +1 -0
- package/dist/cjs/internal/interfaces.js.map +1 -1
- package/dist/cjs/internal/secret_internals.js +6 -15
- package/dist/cjs/internal/secret_internals.js.map +1 -1
- package/dist/esm/Dialog.js +2 -3
- package/dist/esm/Dialog.js.map +1 -1
- package/dist/esm/Notification.js +2 -3
- package/dist/esm/Notification.js.map +1 -1
- package/dist/esm/index.js.map +1 -1
- package/dist/esm/internal/CustomTemplates/expandCustomTemplate.js +2 -1
- package/dist/esm/internal/CustomTemplates/expandCustomTemplate.js.map +1 -1
- package/dist/esm/internal/CustomTemplates/utils.js.map +1 -1
- package/dist/esm/internal/FormRenderer/constants.js +3 -0
- package/dist/esm/internal/FormRenderer/constants.js.map +1 -0
- package/dist/esm/internal/FormRenderer/expandFormRenderer.js +111 -0
- package/dist/esm/internal/FormRenderer/expandFormRenderer.js.map +1 -0
- package/dist/esm/internal/FormRenderer/getDefaultProperties.js +136 -0
- package/dist/esm/internal/FormRenderer/getDefaultProperties.js.map +1 -0
- package/dist/esm/internal/FormRenderer/interfaces.js +2 -0
- package/dist/esm/internal/FormRenderer/interfaces.js.map +1 -0
- package/dist/esm/internal/FormRenderer/utils.js +15 -0
- package/dist/esm/internal/FormRenderer/utils.js.map +1 -0
- package/dist/esm/internal/Renderer.js +48 -16
- package/dist/esm/internal/Renderer.js.map +1 -1
- package/dist/esm/internal/Router.js +4 -3
- package/dist/esm/internal/Router.js.map +1 -1
- package/dist/esm/internal/Runtime.js +70 -29
- package/dist/esm/internal/Runtime.js.map +1 -1
- package/dist/esm/internal/bindListeners.js +9 -2
- package/dist/esm/internal/bindListeners.js.map +1 -1
- package/dist/esm/internal/bootstrapData.js.map +1 -1
- package/dist/esm/internal/compute/evaluate.js +22 -9
- package/dist/esm/internal/compute/evaluate.js.map +1 -1
- package/dist/esm/internal/compute/listenOnTrackingContext.js +7 -9
- package/dist/esm/internal/compute/listenOnTrackingContext.js.map +1 -1
- package/dist/esm/internal/data/DataStore.js +2 -2
- package/dist/esm/internal/data/DataStore.js.map +1 -1
- package/dist/esm/internal/fulfilStoryboard.js +34 -0
- package/dist/esm/internal/fulfilStoryboard.js.map +1 -0
- package/dist/esm/internal/interfaces.js.map +1 -1
- package/dist/esm/internal/secret_internals.js +7 -13
- package/dist/esm/internal/secret_internals.js.map +1 -1
- package/dist/types/Dialog.d.ts +1 -1
- package/dist/types/Notification.d.ts +1 -1
- package/dist/types/index.d.ts +1 -1
- package/dist/types/internal/CustomTemplates/expandCustomTemplate.d.ts +1 -1
- package/dist/types/internal/FormRenderer/constants.d.ts +7 -0
- package/dist/types/internal/FormRenderer/expandFormRenderer.d.ts +3 -0
- package/dist/types/internal/FormRenderer/getDefaultProperties.d.ts +2 -0
- package/dist/types/internal/FormRenderer/interfaces.d.ts +30 -0
- package/dist/types/internal/FormRenderer/utils.d.ts +5 -0
- package/dist/types/internal/Renderer.d.ts +2 -3
- package/dist/types/internal/Runtime.d.ts +11 -2
- package/dist/types/internal/bootstrapData.d.ts +1 -1
- package/dist/types/internal/fulfilStoryboard.d.ts +2 -0
- package/dist/types/internal/interfaces.d.ts +6 -0
- package/dist/types/internal/secret_internals.d.ts +1 -4
- package/package.json +6 -6
- package/dist/cjs/internal/loadBootstrapData.js +0 -227
- package/dist/cjs/internal/loadBootstrapData.js.map +0 -1
- package/dist/cjs/internal/loadCheckLogin.js +0 -17
- package/dist/cjs/internal/loadCheckLogin.js.map +0 -1
- package/dist/esm/internal/loadBootstrapData.js +0 -244
- package/dist/esm/internal/loadBootstrapData.js.map +0 -1
- package/dist/esm/internal/loadCheckLogin.js +0 -18
- package/dist/esm/internal/loadCheckLogin.js.map +0 -1
- package/dist/types/internal/loadBootstrapData.d.ts +0 -10
- package/dist/types/internal/loadCheckLogin.d.ts +0 -1
|
@@ -1,227 +0,0 @@
|
|
|
1
|
-
"use strict";
|
|
2
|
-
|
|
3
|
-
Object.defineProperty(exports, "__esModule", {
|
|
4
|
-
value: true
|
|
5
|
-
});
|
|
6
|
-
exports.fulfilStoryboard = fulfilStoryboard;
|
|
7
|
-
exports.loadBootstrapData = loadBootstrapData;
|
|
8
|
-
exports.safeGetRuntimeMicroAppStandalone = safeGetRuntimeMicroAppStandalone;
|
|
9
|
-
var _apiGatewaySdk = require("@next-api-sdk/api-gateway-sdk");
|
|
10
|
-
var _http = require("@next-core/http");
|
|
11
|
-
var _i18n = require("@next-core/i18n");
|
|
12
|
-
var _general = require("@next-core/utils/general");
|
|
13
|
-
var _lodash = require("lodash");
|
|
14
|
-
var _jsYaml = require("js-yaml");
|
|
15
|
-
var _microAppStandaloneSdk = require("@next-api-sdk/micro-app-standalone-sdk");
|
|
16
|
-
var _registerAppI18n = require("./registerAppI18n.js");
|
|
17
|
-
async function loadBootstrapData() {
|
|
18
|
-
const data = await (window.STANDALONE_MICRO_APPS ? standaloneBootstrap() : (0, _apiGatewaySdk.BootstrapV2Api_bootstrapV2)({
|
|
19
|
-
appFields: "defaultConfig,userConfig,locales,name,homepage,id,currentVersion,installStatus,internal,status,icons,standaloneMode",
|
|
20
|
-
ignoreTemplateFields: "templates",
|
|
21
|
-
ignoreBrickFields: "bricks,processors,providers,editors"
|
|
22
|
-
}));
|
|
23
|
-
for (const {
|
|
24
|
-
app
|
|
25
|
-
} of data.storyboards) {
|
|
26
|
-
if (app.locales) {
|
|
27
|
-
// Prefix to avoid conflict between brick package's i18n namespace.
|
|
28
|
-
const ns = `tmp/${app.id}`;
|
|
29
|
-
// Support any languages in `app.locales`.
|
|
30
|
-
Object.entries(app.locales).forEach(([lang, resources]) => {
|
|
31
|
-
_i18n.i18n.addResourceBundle(lang, ns, resources);
|
|
32
|
-
});
|
|
33
|
-
// Use `app.name` as the fallback `app.localeName`.
|
|
34
|
-
app.localeName = _i18n.i18n.getFixedT(null, ns)("name", app.name);
|
|
35
|
-
// Remove the temporary i18n resource bundles.
|
|
36
|
-
Object.keys(app.locales).forEach(lang => {
|
|
37
|
-
_i18n.i18n.removeResourceBundle(lang, ns);
|
|
38
|
-
});
|
|
39
|
-
} else {
|
|
40
|
-
app.localeName = app.name;
|
|
41
|
-
}
|
|
42
|
-
}
|
|
43
|
-
if ((0, _general.isObject)(data.settings)) {
|
|
44
|
-
(0, _general.deepFreeze)(data.settings);
|
|
45
|
-
}
|
|
46
|
-
data.brickPackages = (0, _general.deepFreeze)(data.brickPackages);
|
|
47
|
-
return data;
|
|
48
|
-
}
|
|
49
|
-
async function standaloneBootstrap() {
|
|
50
|
-
const requests = [
|
|
51
|
-
// eslint-disable-next-line @typescript-eslint/no-non-null-assertion
|
|
52
|
-
_http.http.get(window.BOOTSTRAP_FILE), _http.http.get(`${window.APP_ROOT}conf.yaml`, {
|
|
53
|
-
responseType: "text"
|
|
54
|
-
}), (0, _apiGatewaySdk.BootstrapStandaloneApi_runtimeStandalone)().catch(error => {
|
|
55
|
-
// make it not crash when the backend service is not updated.
|
|
56
|
-
// eslint-disable-next-line no-console
|
|
57
|
-
console.warn("request runtime api from api-gateway failed: ", error, ", something might went wrong running standalone micro app");
|
|
58
|
-
})];
|
|
59
|
-
if (!window.NO_AUTH_GUARD) {
|
|
60
|
-
let matches;
|
|
61
|
-
const appId = window.APP_ID || (window.APP_ROOT && (matches = window.APP_ROOT.match(/^(?:(?:\/next)?\/)?sa-static\/([^/]+)\/versions\//)) ? matches[1] : null);
|
|
62
|
-
if (appId) {
|
|
63
|
-
// No need to wait.
|
|
64
|
-
safeGetRuntimeMicroAppStandalone(appId);
|
|
65
|
-
}
|
|
66
|
-
}
|
|
67
|
-
const [bootstrapResult, confString, runtimeData] = await Promise.all(requests);
|
|
68
|
-
mergeConf(bootstrapResult, confString);
|
|
69
|
-
mergeRuntimeSettings(bootstrapResult, runtimeData === null || runtimeData === void 0 ? void 0 : runtimeData.settings);
|
|
70
|
-
return bootstrapResult;
|
|
71
|
-
}
|
|
72
|
-
function mergeConf(bootstrapResult, confString) {
|
|
73
|
-
let conf;
|
|
74
|
-
try {
|
|
75
|
-
conf = confString ? (0, _jsYaml.safeLoad)(confString, {
|
|
76
|
-
schema: _jsYaml.JSON_SCHEMA,
|
|
77
|
-
json: true
|
|
78
|
-
}) : undefined;
|
|
79
|
-
} catch (error) {
|
|
80
|
-
// eslint-disable-next-line no-console
|
|
81
|
-
console.error("Parse conf.yaml failed", error);
|
|
82
|
-
throw new Error("Invalid conf.yaml");
|
|
83
|
-
}
|
|
84
|
-
if (conf) {
|
|
85
|
-
const {
|
|
86
|
-
sys_settings,
|
|
87
|
-
user_config,
|
|
88
|
-
user_config_by_apps
|
|
89
|
-
} = conf;
|
|
90
|
-
if (sys_settings) {
|
|
91
|
-
const {
|
|
92
|
-
feature_flags: featureFlags,
|
|
93
|
-
...rest
|
|
94
|
-
} = sys_settings;
|
|
95
|
-
bootstrapResult.settings = {
|
|
96
|
-
featureFlags,
|
|
97
|
-
...rest
|
|
98
|
-
};
|
|
99
|
-
}
|
|
100
|
-
if (user_config && bootstrapResult.storyboards.length === 1) {
|
|
101
|
-
bootstrapResult.storyboards[0].app.userConfig = user_config;
|
|
102
|
-
} else if (user_config_by_apps) {
|
|
103
|
-
for (const {
|
|
104
|
-
app
|
|
105
|
-
} of bootstrapResult.storyboards) {
|
|
106
|
-
if ((0, _general.hasOwnProperty)(user_config_by_apps, app.id)) {
|
|
107
|
-
app.userConfig = user_config_by_apps[app.id];
|
|
108
|
-
}
|
|
109
|
-
}
|
|
110
|
-
}
|
|
111
|
-
}
|
|
112
|
-
}
|
|
113
|
-
function mergeRuntimeSettings(bootstrapResult, runtimeSettings) {
|
|
114
|
-
var _bootstrapResult$sett;
|
|
115
|
-
if (!runtimeSettings) {
|
|
116
|
-
return;
|
|
117
|
-
}
|
|
118
|
-
// Merge Feature Flags & Misc
|
|
119
|
-
const {
|
|
120
|
-
featureFlags,
|
|
121
|
-
misc,
|
|
122
|
-
...rest
|
|
123
|
-
} = runtimeSettings;
|
|
124
|
-
const settings = (_bootstrapResult$sett = bootstrapResult.settings) !== null && _bootstrapResult$sett !== void 0 ? _bootstrapResult$sett : bootstrapResult.settings = {};
|
|
125
|
-
settings.featureFlags = {
|
|
126
|
-
...settings.featureFlags,
|
|
127
|
-
...featureFlags
|
|
128
|
-
};
|
|
129
|
-
settings.misc = {
|
|
130
|
-
...settings.misc,
|
|
131
|
-
...misc
|
|
132
|
-
};
|
|
133
|
-
Object.assign(settings, rest);
|
|
134
|
-
}
|
|
135
|
-
const appRuntimeDataMap = new Map();
|
|
136
|
-
async function safeGetRuntimeMicroAppStandalone(appId) {
|
|
137
|
-
if (appRuntimeDataMap.has(appId)) {
|
|
138
|
-
return appRuntimeDataMap.get(appId);
|
|
139
|
-
}
|
|
140
|
-
const promise = (0, _microAppStandaloneSdk.RuntimeApi_runtimeMicroAppStandalone)(appId).catch(error => {
|
|
141
|
-
// make it not crash when the backend service is not updated.
|
|
142
|
-
// eslint-disable-next-line no-console
|
|
143
|
-
console.warn("request standalone runtime api from micro-app-standalone failed: ", error, ", something might went wrong running standalone micro app");
|
|
144
|
-
});
|
|
145
|
-
appRuntimeDataMap.set(appId, promise);
|
|
146
|
-
return promise;
|
|
147
|
-
}
|
|
148
|
-
async function fulfilStoryboard(storyboard) {
|
|
149
|
-
if (storyboard.$$fulfilled) {
|
|
150
|
-
return;
|
|
151
|
-
}
|
|
152
|
-
if (!storyboard.$$fulfilling) {
|
|
153
|
-
storyboard.$$fulfilling = doFulfilStoryboard(storyboard);
|
|
154
|
-
}
|
|
155
|
-
return storyboard.$$fulfilling;
|
|
156
|
-
}
|
|
157
|
-
async function doFulfilStoryboard(storyboard) {
|
|
158
|
-
if (window.STANDALONE_MICRO_APPS) {
|
|
159
|
-
Object.assign(storyboard, {
|
|
160
|
-
$$fulfilled: true,
|
|
161
|
-
$$fulfilling: null
|
|
162
|
-
});
|
|
163
|
-
if (!window.NO_AUTH_GUARD) {
|
|
164
|
-
let appRuntimeData;
|
|
165
|
-
try {
|
|
166
|
-
// Note: the request maybe have fired already during bootstrap.
|
|
167
|
-
appRuntimeData = await safeGetRuntimeMicroAppStandalone(storyboard.app.id);
|
|
168
|
-
} catch (error) {
|
|
169
|
-
// make it not crash when the backend service is not updated.
|
|
170
|
-
// eslint-disable-next-line no-console
|
|
171
|
-
console.warn("request standalone runtime api from micro-app-standalone failed: ", error, ", something might went wrong running standalone micro app");
|
|
172
|
-
}
|
|
173
|
-
if (appRuntimeData) {
|
|
174
|
-
const {
|
|
175
|
-
userConfig,
|
|
176
|
-
injectMenus
|
|
177
|
-
} = appRuntimeData;
|
|
178
|
-
// Merge `app.defaultConfig` and `app.userConfig` to `app.config`.
|
|
179
|
-
storyboard.app.userConfig = {
|
|
180
|
-
...storyboard.app.userConfig,
|
|
181
|
-
...userConfig
|
|
182
|
-
};
|
|
183
|
-
|
|
184
|
-
// Initialize `overrideApp.config` in `injectMenus`
|
|
185
|
-
initializeInjectMenus(injectMenus);
|
|
186
|
-
|
|
187
|
-
// get inject menus (Actually, appRuntimeData contains both main and inject menus)
|
|
188
|
-
storyboard.meta = {
|
|
189
|
-
...storyboard.meta,
|
|
190
|
-
injectMenus
|
|
191
|
-
};
|
|
192
|
-
}
|
|
193
|
-
}
|
|
194
|
-
} else {
|
|
195
|
-
const {
|
|
196
|
-
routes,
|
|
197
|
-
meta,
|
|
198
|
-
app
|
|
199
|
-
} = await (0, _apiGatewaySdk.BootstrapV2Api_getAppStoryboardV2)(storyboard.app.id, {});
|
|
200
|
-
Object.assign(storyboard, {
|
|
201
|
-
routes,
|
|
202
|
-
meta,
|
|
203
|
-
app: {
|
|
204
|
-
...storyboard.app,
|
|
205
|
-
...app
|
|
206
|
-
},
|
|
207
|
-
$$fulfilled: true,
|
|
208
|
-
$$fulfilling: null
|
|
209
|
-
});
|
|
210
|
-
}
|
|
211
|
-
(0, _registerAppI18n.registerAppI18n)(storyboard);
|
|
212
|
-
initializeAppConfig(storyboard.app);
|
|
213
|
-
}
|
|
214
|
-
function initializeAppConfig(app) {
|
|
215
|
-
app.config = (0, _general.deepFreeze)((0, _lodash.merge)({}, app.defaultConfig, app.userConfig));
|
|
216
|
-
}
|
|
217
|
-
function initializeInjectMenus(menus) {
|
|
218
|
-
if (!Array.isArray(menus)) {
|
|
219
|
-
return;
|
|
220
|
-
}
|
|
221
|
-
for (const menu of menus) {
|
|
222
|
-
if (menu.overrideApp) {
|
|
223
|
-
initializeAppConfig(menu.overrideApp);
|
|
224
|
-
}
|
|
225
|
-
}
|
|
226
|
-
}
|
|
227
|
-
//# sourceMappingURL=loadBootstrapData.js.map
|
|
@@ -1 +0,0 @@
|
|
|
1
|
-
{"version":3,"file":"loadBootstrapData.js","names":["_apiGatewaySdk","require","_http","_i18n","_general","_lodash","_jsYaml","_microAppStandaloneSdk","_registerAppI18n","loadBootstrapData","data","window","STANDALONE_MICRO_APPS","standaloneBootstrap","BootstrapV2Api_bootstrapV2","appFields","ignoreTemplateFields","ignoreBrickFields","app","storyboards","locales","ns","id","Object","entries","forEach","lang","resources","i18n","addResourceBundle","localeName","getFixedT","name","keys","removeResourceBundle","isObject","settings","deepFreeze","brickPackages","requests","http","get","BOOTSTRAP_FILE","APP_ROOT","responseType","BootstrapStandaloneApi_runtimeStandalone","catch","error","console","warn","NO_AUTH_GUARD","matches","appId","APP_ID","match","safeGetRuntimeMicroAppStandalone","bootstrapResult","confString","runtimeData","Promise","all","mergeConf","mergeRuntimeSettings","conf","safeLoad","schema","JSON_SCHEMA","json","undefined","Error","sys_settings","user_config","user_config_by_apps","feature_flags","featureFlags","rest","length","userConfig","hasOwnProperty","runtimeSettings","_bootstrapResult$sett","misc","assign","appRuntimeDataMap","Map","has","promise","RuntimeApi_runtimeMicroAppStandalone","set","fulfilStoryboard","storyboard","$$fulfilled","$$fulfilling","doFulfilStoryboard","appRuntimeData","injectMenus","initializeInjectMenus","meta","routes","BootstrapV2Api_getAppStoryboardV2","registerAppI18n","initializeAppConfig","config","merge","defaultConfig","menus","Array","isArray","menu","overrideApp"],"sources":["../../../src/internal/loadBootstrapData.ts"],"sourcesContent":["import {\n BootstrapStandaloneApi_runtimeStandalone,\n BootstrapV2Api_bootstrapV2,\n BootstrapV2Api_getAppStoryboardV2,\n} from \"@next-api-sdk/api-gateway-sdk\";\nimport { http } from \"@next-core/http\";\nimport type {\n BootstrapData,\n BootstrapSettings,\n MicroApp,\n RuntimeStoryboard,\n} from \"@next-core/types\";\nimport { i18n } from \"@next-core/i18n\";\nimport { deepFreeze, hasOwnProperty, isObject } from \"@next-core/utils/general\";\nimport { merge } from \"lodash\";\nimport { JSON_SCHEMA, safeLoad } from \"js-yaml\";\nimport { RuntimeApi_runtimeMicroAppStandalone } from \"@next-api-sdk/micro-app-standalone-sdk\";\nimport { registerAppI18n } from \"./registerAppI18n.js\";\nimport { MenuRawData } from \"./menu/interfaces.js\";\n\ninterface StandaloneConf {\n /** The same as `auth.bootstrap.sys_settings` in api gateway conf. */\n sys_settings: StandaloneSettings;\n\n /** For fully standalone micro-apps. */\n user_config?: Record<string, unknown>;\n\n /** For mixed standalone micro-apps. */\n user_config_by_apps?: UserConfigByApps;\n}\n\ntype UserConfigByApps = Record<string, Record<string, unknown>>;\n\ninterface StandaloneSettings extends Omit<BootstrapSettings, \"featureFlags\"> {\n feature_flags: Record<string, boolean>;\n}\n\nexport async function loadBootstrapData(): Promise<BootstrapData> {\n const data = await (window.STANDALONE_MICRO_APPS\n ? standaloneBootstrap()\n : (BootstrapV2Api_bootstrapV2({\n appFields:\n \"defaultConfig,userConfig,locales,name,homepage,id,currentVersion,installStatus,internal,status,icons,standaloneMode\",\n ignoreTemplateFields: \"templates\",\n ignoreBrickFields: \"bricks,processors,providers,editors\",\n }) as Promise<BootstrapData>));\n\n for (const { app } of data.storyboards) {\n if (app.locales) {\n // Prefix to avoid conflict between brick package's i18n namespace.\n const ns = `tmp/${app.id}`;\n // Support any languages in `app.locales`.\n Object.entries(app.locales).forEach(([lang, resources]) => {\n i18n.addResourceBundle(lang, ns, resources);\n });\n // Use `app.name` as the fallback `app.localeName`.\n app.localeName = i18n.getFixedT(null, ns)(\"name\", app.name) as string;\n // Remove the temporary i18n resource bundles.\n Object.keys(app.locales).forEach((lang) => {\n i18n.removeResourceBundle(lang, ns);\n });\n } else {\n app.localeName = app.name;\n }\n }\n\n if (isObject(data.settings)) {\n deepFreeze(data.settings);\n }\n data.brickPackages = deepFreeze(data.brickPackages);\n\n return data;\n}\n\nasync function standaloneBootstrap(): Promise<BootstrapData> {\n const requests = [\n // eslint-disable-next-line @typescript-eslint/no-non-null-assertion\n http.get<BootstrapData>(window.BOOTSTRAP_FILE!),\n http.get<string>(`${window.APP_ROOT}conf.yaml`, {\n responseType: \"text\",\n }),\n BootstrapStandaloneApi_runtimeStandalone().catch((error) => {\n // make it not crash when the backend service is not updated.\n // eslint-disable-next-line no-console\n console.warn(\n \"request runtime api from api-gateway failed: \",\n error,\n \", something might went wrong running standalone micro app\"\n );\n }),\n ] as const;\n\n if (!window.NO_AUTH_GUARD) {\n let matches: string[] | null;\n const appId =\n window.APP_ID ||\n (window.APP_ROOT &&\n (matches = window.APP_ROOT.match(\n /^(?:(?:\\/next)?\\/)?sa-static\\/([^/]+)\\/versions\\//\n ))\n ? matches[1]\n : null);\n if (appId) {\n // No need to wait.\n safeGetRuntimeMicroAppStandalone(appId);\n }\n }\n\n const [bootstrapResult, confString, runtimeData] = await Promise.all(\n requests\n );\n\n mergeConf(bootstrapResult, confString);\n\n mergeRuntimeSettings(bootstrapResult, runtimeData?.settings);\n\n return bootstrapResult;\n}\n\nfunction mergeConf(bootstrapResult: BootstrapData, confString: string) {\n let conf: StandaloneConf | undefined;\n try {\n conf = confString\n ? (safeLoad(confString, {\n schema: JSON_SCHEMA,\n json: true,\n }) as StandaloneConf)\n : undefined;\n } catch (error) {\n // eslint-disable-next-line no-console\n console.error(\"Parse conf.yaml failed\", error);\n throw new Error(\"Invalid conf.yaml\");\n }\n\n if (conf) {\n const { sys_settings, user_config, user_config_by_apps } = conf;\n if (sys_settings) {\n const { feature_flags: featureFlags, ...rest } = sys_settings;\n bootstrapResult.settings = {\n featureFlags,\n ...rest,\n } as BootstrapSettings;\n }\n if (user_config && bootstrapResult.storyboards.length === 1) {\n bootstrapResult.storyboards[0].app.userConfig = user_config;\n } else if (user_config_by_apps) {\n for (const { app } of bootstrapResult.storyboards) {\n if (hasOwnProperty(user_config_by_apps, app.id)) {\n app.userConfig = user_config_by_apps[app.id];\n }\n }\n }\n }\n}\n\nfunction mergeRuntimeSettings(\n bootstrapResult: BootstrapData,\n runtimeSettings: BootstrapSettings | undefined\n) {\n if (!runtimeSettings) {\n return;\n }\n // Merge Feature Flags & Misc\n const { featureFlags, misc, ...rest } = runtimeSettings;\n const settings = (bootstrapResult.settings ??= {});\n settings.featureFlags = {\n ...settings.featureFlags,\n ...featureFlags,\n };\n settings.misc = {\n ...settings.misc,\n ...misc,\n };\n Object.assign(settings, rest);\n}\n\nconst appRuntimeDataMap = new Map<\n string,\n Promise<RuntimeMicroAppStandaloneData | undefined>\n>();\n\ninterface RuntimeMicroAppStandaloneData {\n userConfig?: Record<string, unknown>;\n injectMenus?: MenuRawData[];\n}\n\nexport async function safeGetRuntimeMicroAppStandalone(appId: string) {\n if (appRuntimeDataMap.has(appId)) {\n return appRuntimeDataMap.get(appId);\n }\n const promise = RuntimeApi_runtimeMicroAppStandalone(appId).catch((error) => {\n // make it not crash when the backend service is not updated.\n // eslint-disable-next-line no-console\n console.warn(\n \"request standalone runtime api from micro-app-standalone failed: \",\n error,\n \", something might went wrong running standalone micro app\"\n );\n }) as Promise<RuntimeMicroAppStandaloneData | undefined>;\n appRuntimeDataMap.set(appId, promise);\n return promise;\n}\n\nexport async function fulfilStoryboard(storyboard: RuntimeStoryboard) {\n if (storyboard.$$fulfilled) {\n return;\n }\n if (!storyboard.$$fulfilling) {\n storyboard.$$fulfilling = doFulfilStoryboard(storyboard);\n }\n return storyboard.$$fulfilling;\n}\n\nasync function doFulfilStoryboard(storyboard: RuntimeStoryboard) {\n if (window.STANDALONE_MICRO_APPS) {\n Object.assign(storyboard, {\n $$fulfilled: true,\n $$fulfilling: null,\n });\n if (!window.NO_AUTH_GUARD) {\n let appRuntimeData: RuntimeMicroAppStandaloneData | void;\n try {\n // Note: the request maybe have fired already during bootstrap.\n appRuntimeData = await safeGetRuntimeMicroAppStandalone(\n storyboard.app.id\n );\n } catch (error) {\n // make it not crash when the backend service is not updated.\n // eslint-disable-next-line no-console\n console.warn(\n \"request standalone runtime api from micro-app-standalone failed: \",\n error,\n \", something might went wrong running standalone micro app\"\n );\n }\n if (appRuntimeData) {\n const { userConfig, injectMenus } = appRuntimeData;\n // Merge `app.defaultConfig` and `app.userConfig` to `app.config`.\n storyboard.app.userConfig = {\n ...storyboard.app.userConfig,\n ...userConfig,\n };\n\n // Initialize `overrideApp.config` in `injectMenus`\n initializeInjectMenus(injectMenus);\n\n // get inject menus (Actually, appRuntimeData contains both main and inject menus)\n storyboard.meta = {\n ...storyboard.meta,\n injectMenus,\n };\n }\n }\n } else {\n const { routes, meta, app } = await BootstrapV2Api_getAppStoryboardV2(\n storyboard.app.id,\n {}\n );\n Object.assign(storyboard, {\n routes,\n meta,\n app: { ...storyboard.app, ...app },\n $$fulfilled: true,\n $$fulfilling: null,\n });\n }\n\n registerAppI18n(storyboard);\n\n initializeAppConfig(storyboard.app);\n}\n\nfunction initializeAppConfig(app: MicroApp) {\n app.config = deepFreeze(merge({}, app.defaultConfig, app.userConfig));\n}\n\nfunction initializeInjectMenus(menus: MenuRawData[] | undefined) {\n if (!Array.isArray(menus)) {\n return;\n }\n for (const menu of menus) {\n if (menu.overrideApp) {\n initializeAppConfig(menu.overrideApp);\n }\n }\n}\n"],"mappings":"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"}
|
|
@@ -1,17 +0,0 @@
|
|
|
1
|
-
"use strict";
|
|
2
|
-
|
|
3
|
-
Object.defineProperty(exports, "__esModule", {
|
|
4
|
-
value: true
|
|
5
|
-
});
|
|
6
|
-
exports.loadCheckLogin = loadCheckLogin;
|
|
7
|
-
var _apiGatewaySdk = require("@next-api-sdk/api-gateway-sdk");
|
|
8
|
-
var _auth = require("../auth.js");
|
|
9
|
-
async function loadCheckLogin() {
|
|
10
|
-
if (!window.NO_AUTH_GUARD) {
|
|
11
|
-
const auth = await (0, _apiGatewaySdk.AuthApi_checkLogin)();
|
|
12
|
-
if (auth.loggedIn) {
|
|
13
|
-
(0, _auth.authenticate)(auth);
|
|
14
|
-
}
|
|
15
|
-
}
|
|
16
|
-
}
|
|
17
|
-
//# sourceMappingURL=loadCheckLogin.js.map
|
|
@@ -1 +0,0 @@
|
|
|
1
|
-
{"version":3,"file":"loadCheckLogin.js","names":["_apiGatewaySdk","require","_auth","loadCheckLogin","window","NO_AUTH_GUARD","auth","AuthApi_checkLogin","loggedIn","authenticate"],"sources":["../../../src/internal/loadCheckLogin.ts"],"sourcesContent":["import { AuthApi_checkLogin } from \"@next-api-sdk/api-gateway-sdk\";\nimport { authenticate } from \"../auth.js\";\n\nexport async function loadCheckLogin(): Promise<void> {\n if (!window.NO_AUTH_GUARD) {\n const auth = await AuthApi_checkLogin();\n if (auth.loggedIn) {\n authenticate(auth);\n }\n }\n}\n"],"mappings":";;;;;;AAAA,IAAAA,cAAA,GAAAC,OAAA;AACA,IAAAC,KAAA,GAAAD,OAAA;AAEO,eAAeE,cAAcA,CAAA,EAAkB;EACpD,IAAI,CAACC,MAAM,CAACC,aAAa,EAAE;IACzB,MAAMC,IAAI,GAAG,MAAM,IAAAC,iCAAkB,GAAE;IACvC,IAAID,IAAI,CAACE,QAAQ,EAAE;MACjB,IAAAC,kBAAY,EAACH,IAAI,CAAC;IACpB;EACF;AACF"}
|
|
@@ -1,244 +0,0 @@
|
|
|
1
|
-
import _objectSpread from "@babel/runtime/helpers/objectSpread2";
|
|
2
|
-
import _objectWithoutProperties from "@babel/runtime/helpers/objectWithoutProperties";
|
|
3
|
-
import _asyncToGenerator from "@babel/runtime/helpers/asyncToGenerator";
|
|
4
|
-
var _excluded = ["feature_flags"],
|
|
5
|
-
_excluded2 = ["featureFlags", "misc"];
|
|
6
|
-
import { BootstrapStandaloneApi_runtimeStandalone, BootstrapV2Api_bootstrapV2, BootstrapV2Api_getAppStoryboardV2 } from "@next-api-sdk/api-gateway-sdk";
|
|
7
|
-
import { http } from "@next-core/http";
|
|
8
|
-
import { i18n } from "@next-core/i18n";
|
|
9
|
-
import { deepFreeze, hasOwnProperty, isObject } from "@next-core/utils/general";
|
|
10
|
-
import { merge } from "lodash";
|
|
11
|
-
import { JSON_SCHEMA, safeLoad } from "js-yaml";
|
|
12
|
-
import { RuntimeApi_runtimeMicroAppStandalone } from "@next-api-sdk/micro-app-standalone-sdk";
|
|
13
|
-
import { registerAppI18n } from "./registerAppI18n.js";
|
|
14
|
-
export function loadBootstrapData() {
|
|
15
|
-
return _loadBootstrapData.apply(this, arguments);
|
|
16
|
-
}
|
|
17
|
-
function _loadBootstrapData() {
|
|
18
|
-
_loadBootstrapData = _asyncToGenerator(function* () {
|
|
19
|
-
var data = yield window.STANDALONE_MICRO_APPS ? standaloneBootstrap() : BootstrapV2Api_bootstrapV2({
|
|
20
|
-
appFields: "defaultConfig,userConfig,locales,name,homepage,id,currentVersion,installStatus,internal,status,icons,standaloneMode",
|
|
21
|
-
ignoreTemplateFields: "templates",
|
|
22
|
-
ignoreBrickFields: "bricks,processors,providers,editors"
|
|
23
|
-
});
|
|
24
|
-
var _loop = function* () {
|
|
25
|
-
if (app.locales) {
|
|
26
|
-
// Prefix to avoid conflict between brick package's i18n namespace.
|
|
27
|
-
var ns = "tmp/".concat(app.id);
|
|
28
|
-
// Support any languages in `app.locales`.
|
|
29
|
-
Object.entries(app.locales).forEach(_ref => {
|
|
30
|
-
var [lang, resources] = _ref;
|
|
31
|
-
i18n.addResourceBundle(lang, ns, resources);
|
|
32
|
-
});
|
|
33
|
-
// Use `app.name` as the fallback `app.localeName`.
|
|
34
|
-
app.localeName = i18n.getFixedT(null, ns)("name", app.name);
|
|
35
|
-
// Remove the temporary i18n resource bundles.
|
|
36
|
-
Object.keys(app.locales).forEach(lang => {
|
|
37
|
-
i18n.removeResourceBundle(lang, ns);
|
|
38
|
-
});
|
|
39
|
-
} else {
|
|
40
|
-
app.localeName = app.name;
|
|
41
|
-
}
|
|
42
|
-
};
|
|
43
|
-
for (var {
|
|
44
|
-
app
|
|
45
|
-
} of data.storyboards) {
|
|
46
|
-
yield* _loop();
|
|
47
|
-
}
|
|
48
|
-
if (isObject(data.settings)) {
|
|
49
|
-
deepFreeze(data.settings);
|
|
50
|
-
}
|
|
51
|
-
data.brickPackages = deepFreeze(data.brickPackages);
|
|
52
|
-
return data;
|
|
53
|
-
});
|
|
54
|
-
return _loadBootstrapData.apply(this, arguments);
|
|
55
|
-
}
|
|
56
|
-
function standaloneBootstrap() {
|
|
57
|
-
return _standaloneBootstrap.apply(this, arguments);
|
|
58
|
-
}
|
|
59
|
-
function _standaloneBootstrap() {
|
|
60
|
-
_standaloneBootstrap = _asyncToGenerator(function* () {
|
|
61
|
-
var requests = [
|
|
62
|
-
// eslint-disable-next-line @typescript-eslint/no-non-null-assertion
|
|
63
|
-
http.get(window.BOOTSTRAP_FILE), http.get("".concat(window.APP_ROOT, "conf.yaml"), {
|
|
64
|
-
responseType: "text"
|
|
65
|
-
}), BootstrapStandaloneApi_runtimeStandalone().catch(error => {
|
|
66
|
-
// make it not crash when the backend service is not updated.
|
|
67
|
-
// eslint-disable-next-line no-console
|
|
68
|
-
console.warn("request runtime api from api-gateway failed: ", error, ", something might went wrong running standalone micro app");
|
|
69
|
-
})];
|
|
70
|
-
if (!window.NO_AUTH_GUARD) {
|
|
71
|
-
var matches;
|
|
72
|
-
var appId = window.APP_ID || (window.APP_ROOT && (matches = window.APP_ROOT.match(/^(?:(?:\/next)?\/)?sa-static\/([^/]+)\/versions\//)) ? matches[1] : null);
|
|
73
|
-
if (appId) {
|
|
74
|
-
// No need to wait.
|
|
75
|
-
safeGetRuntimeMicroAppStandalone(appId);
|
|
76
|
-
}
|
|
77
|
-
}
|
|
78
|
-
var [bootstrapResult, confString, runtimeData] = yield Promise.all(requests);
|
|
79
|
-
mergeConf(bootstrapResult, confString);
|
|
80
|
-
mergeRuntimeSettings(bootstrapResult, runtimeData === null || runtimeData === void 0 ? void 0 : runtimeData.settings);
|
|
81
|
-
return bootstrapResult;
|
|
82
|
-
});
|
|
83
|
-
return _standaloneBootstrap.apply(this, arguments);
|
|
84
|
-
}
|
|
85
|
-
function mergeConf(bootstrapResult, confString) {
|
|
86
|
-
var conf;
|
|
87
|
-
try {
|
|
88
|
-
conf = confString ? safeLoad(confString, {
|
|
89
|
-
schema: JSON_SCHEMA,
|
|
90
|
-
json: true
|
|
91
|
-
}) : undefined;
|
|
92
|
-
} catch (error) {
|
|
93
|
-
// eslint-disable-next-line no-console
|
|
94
|
-
console.error("Parse conf.yaml failed", error);
|
|
95
|
-
throw new Error("Invalid conf.yaml");
|
|
96
|
-
}
|
|
97
|
-
if (conf) {
|
|
98
|
-
var {
|
|
99
|
-
sys_settings,
|
|
100
|
-
user_config,
|
|
101
|
-
user_config_by_apps
|
|
102
|
-
} = conf;
|
|
103
|
-
if (sys_settings) {
|
|
104
|
-
var {
|
|
105
|
-
feature_flags: featureFlags
|
|
106
|
-
} = sys_settings,
|
|
107
|
-
rest = _objectWithoutProperties(sys_settings, _excluded);
|
|
108
|
-
bootstrapResult.settings = _objectSpread({
|
|
109
|
-
featureFlags
|
|
110
|
-
}, rest);
|
|
111
|
-
}
|
|
112
|
-
if (user_config && bootstrapResult.storyboards.length === 1) {
|
|
113
|
-
bootstrapResult.storyboards[0].app.userConfig = user_config;
|
|
114
|
-
} else if (user_config_by_apps) {
|
|
115
|
-
for (var {
|
|
116
|
-
app
|
|
117
|
-
} of bootstrapResult.storyboards) {
|
|
118
|
-
if (hasOwnProperty(user_config_by_apps, app.id)) {
|
|
119
|
-
app.userConfig = user_config_by_apps[app.id];
|
|
120
|
-
}
|
|
121
|
-
}
|
|
122
|
-
}
|
|
123
|
-
}
|
|
124
|
-
}
|
|
125
|
-
function mergeRuntimeSettings(bootstrapResult, runtimeSettings) {
|
|
126
|
-
var _bootstrapResult$sett;
|
|
127
|
-
if (!runtimeSettings) {
|
|
128
|
-
return;
|
|
129
|
-
}
|
|
130
|
-
// Merge Feature Flags & Misc
|
|
131
|
-
var {
|
|
132
|
-
featureFlags,
|
|
133
|
-
misc
|
|
134
|
-
} = runtimeSettings,
|
|
135
|
-
rest = _objectWithoutProperties(runtimeSettings, _excluded2);
|
|
136
|
-
var settings = (_bootstrapResult$sett = bootstrapResult.settings) !== null && _bootstrapResult$sett !== void 0 ? _bootstrapResult$sett : bootstrapResult.settings = {};
|
|
137
|
-
settings.featureFlags = _objectSpread(_objectSpread({}, settings.featureFlags), featureFlags);
|
|
138
|
-
settings.misc = _objectSpread(_objectSpread({}, settings.misc), misc);
|
|
139
|
-
Object.assign(settings, rest);
|
|
140
|
-
}
|
|
141
|
-
var appRuntimeDataMap = new Map();
|
|
142
|
-
export function safeGetRuntimeMicroAppStandalone(_x) {
|
|
143
|
-
return _safeGetRuntimeMicroAppStandalone.apply(this, arguments);
|
|
144
|
-
}
|
|
145
|
-
function _safeGetRuntimeMicroAppStandalone() {
|
|
146
|
-
_safeGetRuntimeMicroAppStandalone = _asyncToGenerator(function* (appId) {
|
|
147
|
-
if (appRuntimeDataMap.has(appId)) {
|
|
148
|
-
return appRuntimeDataMap.get(appId);
|
|
149
|
-
}
|
|
150
|
-
var promise = RuntimeApi_runtimeMicroAppStandalone(appId).catch(error => {
|
|
151
|
-
// make it not crash when the backend service is not updated.
|
|
152
|
-
// eslint-disable-next-line no-console
|
|
153
|
-
console.warn("request standalone runtime api from micro-app-standalone failed: ", error, ", something might went wrong running standalone micro app");
|
|
154
|
-
});
|
|
155
|
-
appRuntimeDataMap.set(appId, promise);
|
|
156
|
-
return promise;
|
|
157
|
-
});
|
|
158
|
-
return _safeGetRuntimeMicroAppStandalone.apply(this, arguments);
|
|
159
|
-
}
|
|
160
|
-
export function fulfilStoryboard(_x2) {
|
|
161
|
-
return _fulfilStoryboard.apply(this, arguments);
|
|
162
|
-
}
|
|
163
|
-
function _fulfilStoryboard() {
|
|
164
|
-
_fulfilStoryboard = _asyncToGenerator(function* (storyboard) {
|
|
165
|
-
if (storyboard.$$fulfilled) {
|
|
166
|
-
return;
|
|
167
|
-
}
|
|
168
|
-
if (!storyboard.$$fulfilling) {
|
|
169
|
-
storyboard.$$fulfilling = doFulfilStoryboard(storyboard);
|
|
170
|
-
}
|
|
171
|
-
return storyboard.$$fulfilling;
|
|
172
|
-
});
|
|
173
|
-
return _fulfilStoryboard.apply(this, arguments);
|
|
174
|
-
}
|
|
175
|
-
function doFulfilStoryboard(_x3) {
|
|
176
|
-
return _doFulfilStoryboard.apply(this, arguments);
|
|
177
|
-
}
|
|
178
|
-
function _doFulfilStoryboard() {
|
|
179
|
-
_doFulfilStoryboard = _asyncToGenerator(function* (storyboard) {
|
|
180
|
-
if (window.STANDALONE_MICRO_APPS) {
|
|
181
|
-
Object.assign(storyboard, {
|
|
182
|
-
$$fulfilled: true,
|
|
183
|
-
$$fulfilling: null
|
|
184
|
-
});
|
|
185
|
-
if (!window.NO_AUTH_GUARD) {
|
|
186
|
-
var appRuntimeData;
|
|
187
|
-
try {
|
|
188
|
-
// Note: the request maybe have fired already during bootstrap.
|
|
189
|
-
appRuntimeData = yield safeGetRuntimeMicroAppStandalone(storyboard.app.id);
|
|
190
|
-
} catch (error) {
|
|
191
|
-
// make it not crash when the backend service is not updated.
|
|
192
|
-
// eslint-disable-next-line no-console
|
|
193
|
-
console.warn("request standalone runtime api from micro-app-standalone failed: ", error, ", something might went wrong running standalone micro app");
|
|
194
|
-
}
|
|
195
|
-
if (appRuntimeData) {
|
|
196
|
-
var {
|
|
197
|
-
userConfig,
|
|
198
|
-
injectMenus
|
|
199
|
-
} = appRuntimeData;
|
|
200
|
-
// Merge `app.defaultConfig` and `app.userConfig` to `app.config`.
|
|
201
|
-
storyboard.app.userConfig = _objectSpread(_objectSpread({}, storyboard.app.userConfig), userConfig);
|
|
202
|
-
|
|
203
|
-
// Initialize `overrideApp.config` in `injectMenus`
|
|
204
|
-
initializeInjectMenus(injectMenus);
|
|
205
|
-
|
|
206
|
-
// get inject menus (Actually, appRuntimeData contains both main and inject menus)
|
|
207
|
-
storyboard.meta = _objectSpread(_objectSpread({}, storyboard.meta), {}, {
|
|
208
|
-
injectMenus
|
|
209
|
-
});
|
|
210
|
-
}
|
|
211
|
-
}
|
|
212
|
-
} else {
|
|
213
|
-
var {
|
|
214
|
-
routes,
|
|
215
|
-
meta,
|
|
216
|
-
app
|
|
217
|
-
} = yield BootstrapV2Api_getAppStoryboardV2(storyboard.app.id, {});
|
|
218
|
-
Object.assign(storyboard, {
|
|
219
|
-
routes,
|
|
220
|
-
meta,
|
|
221
|
-
app: _objectSpread(_objectSpread({}, storyboard.app), app),
|
|
222
|
-
$$fulfilled: true,
|
|
223
|
-
$$fulfilling: null
|
|
224
|
-
});
|
|
225
|
-
}
|
|
226
|
-
registerAppI18n(storyboard);
|
|
227
|
-
initializeAppConfig(storyboard.app);
|
|
228
|
-
});
|
|
229
|
-
return _doFulfilStoryboard.apply(this, arguments);
|
|
230
|
-
}
|
|
231
|
-
function initializeAppConfig(app) {
|
|
232
|
-
app.config = deepFreeze(merge({}, app.defaultConfig, app.userConfig));
|
|
233
|
-
}
|
|
234
|
-
function initializeInjectMenus(menus) {
|
|
235
|
-
if (!Array.isArray(menus)) {
|
|
236
|
-
return;
|
|
237
|
-
}
|
|
238
|
-
for (var menu of menus) {
|
|
239
|
-
if (menu.overrideApp) {
|
|
240
|
-
initializeAppConfig(menu.overrideApp);
|
|
241
|
-
}
|
|
242
|
-
}
|
|
243
|
-
}
|
|
244
|
-
//# sourceMappingURL=loadBootstrapData.js.map
|
|
@@ -1 +0,0 @@
|
|
|
1
|
-
{"version":3,"file":"loadBootstrapData.js","names":["BootstrapStandaloneApi_runtimeStandalone","BootstrapV2Api_bootstrapV2","BootstrapV2Api_getAppStoryboardV2","http","i18n","deepFreeze","hasOwnProperty","isObject","merge","JSON_SCHEMA","safeLoad","RuntimeApi_runtimeMicroAppStandalone","registerAppI18n","loadBootstrapData","_loadBootstrapData","apply","arguments","_asyncToGenerator","data","window","STANDALONE_MICRO_APPS","standaloneBootstrap","appFields","ignoreTemplateFields","ignoreBrickFields","_loop","app","locales","ns","concat","id","Object","entries","forEach","_ref","lang","resources","addResourceBundle","localeName","getFixedT","name","keys","removeResourceBundle","storyboards","settings","brickPackages","_standaloneBootstrap","requests","get","BOOTSTRAP_FILE","APP_ROOT","responseType","catch","error","console","warn","NO_AUTH_GUARD","matches","appId","APP_ID","match","safeGetRuntimeMicroAppStandalone","bootstrapResult","confString","runtimeData","Promise","all","mergeConf","mergeRuntimeSettings","conf","schema","json","undefined","Error","sys_settings","user_config","user_config_by_apps","feature_flags","featureFlags","rest","_objectWithoutProperties","_excluded","_objectSpread","length","userConfig","runtimeSettings","_bootstrapResult$sett","misc","_excluded2","assign","appRuntimeDataMap","Map","_x","_safeGetRuntimeMicroAppStandalone","has","promise","set","fulfilStoryboard","_x2","_fulfilStoryboard","storyboard","$$fulfilled","$$fulfilling","doFulfilStoryboard","_x3","_doFulfilStoryboard","appRuntimeData","injectMenus","initializeInjectMenus","meta","routes","initializeAppConfig","config","defaultConfig","menus","Array","isArray","menu","overrideApp"],"sources":["../../../src/internal/loadBootstrapData.ts"],"sourcesContent":["import {\n BootstrapStandaloneApi_runtimeStandalone,\n BootstrapV2Api_bootstrapV2,\n BootstrapV2Api_getAppStoryboardV2,\n} from \"@next-api-sdk/api-gateway-sdk\";\nimport { http } from \"@next-core/http\";\nimport type {\n BootstrapData,\n BootstrapSettings,\n MicroApp,\n RuntimeStoryboard,\n} from \"@next-core/types\";\nimport { i18n } from \"@next-core/i18n\";\nimport { deepFreeze, hasOwnProperty, isObject } from \"@next-core/utils/general\";\nimport { merge } from \"lodash\";\nimport { JSON_SCHEMA, safeLoad } from \"js-yaml\";\nimport { RuntimeApi_runtimeMicroAppStandalone } from \"@next-api-sdk/micro-app-standalone-sdk\";\nimport { registerAppI18n } from \"./registerAppI18n.js\";\nimport { MenuRawData } from \"./menu/interfaces.js\";\n\ninterface StandaloneConf {\n /** The same as `auth.bootstrap.sys_settings` in api gateway conf. */\n sys_settings: StandaloneSettings;\n\n /** For fully standalone micro-apps. */\n user_config?: Record<string, unknown>;\n\n /** For mixed standalone micro-apps. */\n user_config_by_apps?: UserConfigByApps;\n}\n\ntype UserConfigByApps = Record<string, Record<string, unknown>>;\n\ninterface StandaloneSettings extends Omit<BootstrapSettings, \"featureFlags\"> {\n feature_flags: Record<string, boolean>;\n}\n\nexport async function loadBootstrapData(): Promise<BootstrapData> {\n const data = await (window.STANDALONE_MICRO_APPS\n ? standaloneBootstrap()\n : (BootstrapV2Api_bootstrapV2({\n appFields:\n \"defaultConfig,userConfig,locales,name,homepage,id,currentVersion,installStatus,internal,status,icons,standaloneMode\",\n ignoreTemplateFields: \"templates\",\n ignoreBrickFields: \"bricks,processors,providers,editors\",\n }) as Promise<BootstrapData>));\n\n for (const { app } of data.storyboards) {\n if (app.locales) {\n // Prefix to avoid conflict between brick package's i18n namespace.\n const ns = `tmp/${app.id}`;\n // Support any languages in `app.locales`.\n Object.entries(app.locales).forEach(([lang, resources]) => {\n i18n.addResourceBundle(lang, ns, resources);\n });\n // Use `app.name` as the fallback `app.localeName`.\n app.localeName = i18n.getFixedT(null, ns)(\"name\", app.name) as string;\n // Remove the temporary i18n resource bundles.\n Object.keys(app.locales).forEach((lang) => {\n i18n.removeResourceBundle(lang, ns);\n });\n } else {\n app.localeName = app.name;\n }\n }\n\n if (isObject(data.settings)) {\n deepFreeze(data.settings);\n }\n data.brickPackages = deepFreeze(data.brickPackages);\n\n return data;\n}\n\nasync function standaloneBootstrap(): Promise<BootstrapData> {\n const requests = [\n // eslint-disable-next-line @typescript-eslint/no-non-null-assertion\n http.get<BootstrapData>(window.BOOTSTRAP_FILE!),\n http.get<string>(`${window.APP_ROOT}conf.yaml`, {\n responseType: \"text\",\n }),\n BootstrapStandaloneApi_runtimeStandalone().catch((error) => {\n // make it not crash when the backend service is not updated.\n // eslint-disable-next-line no-console\n console.warn(\n \"request runtime api from api-gateway failed: \",\n error,\n \", something might went wrong running standalone micro app\"\n );\n }),\n ] as const;\n\n if (!window.NO_AUTH_GUARD) {\n let matches: string[] | null;\n const appId =\n window.APP_ID ||\n (window.APP_ROOT &&\n (matches = window.APP_ROOT.match(\n /^(?:(?:\\/next)?\\/)?sa-static\\/([^/]+)\\/versions\\//\n ))\n ? matches[1]\n : null);\n if (appId) {\n // No need to wait.\n safeGetRuntimeMicroAppStandalone(appId);\n }\n }\n\n const [bootstrapResult, confString, runtimeData] = await Promise.all(\n requests\n );\n\n mergeConf(bootstrapResult, confString);\n\n mergeRuntimeSettings(bootstrapResult, runtimeData?.settings);\n\n return bootstrapResult;\n}\n\nfunction mergeConf(bootstrapResult: BootstrapData, confString: string) {\n let conf: StandaloneConf | undefined;\n try {\n conf = confString\n ? (safeLoad(confString, {\n schema: JSON_SCHEMA,\n json: true,\n }) as StandaloneConf)\n : undefined;\n } catch (error) {\n // eslint-disable-next-line no-console\n console.error(\"Parse conf.yaml failed\", error);\n throw new Error(\"Invalid conf.yaml\");\n }\n\n if (conf) {\n const { sys_settings, user_config, user_config_by_apps } = conf;\n if (sys_settings) {\n const { feature_flags: featureFlags, ...rest } = sys_settings;\n bootstrapResult.settings = {\n featureFlags,\n ...rest,\n } as BootstrapSettings;\n }\n if (user_config && bootstrapResult.storyboards.length === 1) {\n bootstrapResult.storyboards[0].app.userConfig = user_config;\n } else if (user_config_by_apps) {\n for (const { app } of bootstrapResult.storyboards) {\n if (hasOwnProperty(user_config_by_apps, app.id)) {\n app.userConfig = user_config_by_apps[app.id];\n }\n }\n }\n }\n}\n\nfunction mergeRuntimeSettings(\n bootstrapResult: BootstrapData,\n runtimeSettings: BootstrapSettings | undefined\n) {\n if (!runtimeSettings) {\n return;\n }\n // Merge Feature Flags & Misc\n const { featureFlags, misc, ...rest } = runtimeSettings;\n const settings = (bootstrapResult.settings ??= {});\n settings.featureFlags = {\n ...settings.featureFlags,\n ...featureFlags,\n };\n settings.misc = {\n ...settings.misc,\n ...misc,\n };\n Object.assign(settings, rest);\n}\n\nconst appRuntimeDataMap = new Map<\n string,\n Promise<RuntimeMicroAppStandaloneData | undefined>\n>();\n\ninterface RuntimeMicroAppStandaloneData {\n userConfig?: Record<string, unknown>;\n injectMenus?: MenuRawData[];\n}\n\nexport async function safeGetRuntimeMicroAppStandalone(appId: string) {\n if (appRuntimeDataMap.has(appId)) {\n return appRuntimeDataMap.get(appId);\n }\n const promise = RuntimeApi_runtimeMicroAppStandalone(appId).catch((error) => {\n // make it not crash when the backend service is not updated.\n // eslint-disable-next-line no-console\n console.warn(\n \"request standalone runtime api from micro-app-standalone failed: \",\n error,\n \", something might went wrong running standalone micro app\"\n );\n }) as Promise<RuntimeMicroAppStandaloneData | undefined>;\n appRuntimeDataMap.set(appId, promise);\n return promise;\n}\n\nexport async function fulfilStoryboard(storyboard: RuntimeStoryboard) {\n if (storyboard.$$fulfilled) {\n return;\n }\n if (!storyboard.$$fulfilling) {\n storyboard.$$fulfilling = doFulfilStoryboard(storyboard);\n }\n return storyboard.$$fulfilling;\n}\n\nasync function doFulfilStoryboard(storyboard: RuntimeStoryboard) {\n if (window.STANDALONE_MICRO_APPS) {\n Object.assign(storyboard, {\n $$fulfilled: true,\n $$fulfilling: null,\n });\n if (!window.NO_AUTH_GUARD) {\n let appRuntimeData: RuntimeMicroAppStandaloneData | void;\n try {\n // Note: the request maybe have fired already during bootstrap.\n appRuntimeData = await safeGetRuntimeMicroAppStandalone(\n storyboard.app.id\n );\n } catch (error) {\n // make it not crash when the backend service is not updated.\n // eslint-disable-next-line no-console\n console.warn(\n \"request standalone runtime api from micro-app-standalone failed: \",\n error,\n \", something might went wrong running standalone micro app\"\n );\n }\n if (appRuntimeData) {\n const { userConfig, injectMenus } = appRuntimeData;\n // Merge `app.defaultConfig` and `app.userConfig` to `app.config`.\n storyboard.app.userConfig = {\n ...storyboard.app.userConfig,\n ...userConfig,\n };\n\n // Initialize `overrideApp.config` in `injectMenus`\n initializeInjectMenus(injectMenus);\n\n // get inject menus (Actually, appRuntimeData contains both main and inject menus)\n storyboard.meta = {\n ...storyboard.meta,\n injectMenus,\n };\n }\n }\n } else {\n const { routes, meta, app } = await BootstrapV2Api_getAppStoryboardV2(\n storyboard.app.id,\n {}\n );\n Object.assign(storyboard, {\n routes,\n meta,\n app: { ...storyboard.app, ...app },\n $$fulfilled: true,\n $$fulfilling: null,\n });\n }\n\n registerAppI18n(storyboard);\n\n initializeAppConfig(storyboard.app);\n}\n\nfunction initializeAppConfig(app: MicroApp) {\n app.config = deepFreeze(merge({}, app.defaultConfig, app.userConfig));\n}\n\nfunction initializeInjectMenus(menus: MenuRawData[] | undefined) {\n if (!Array.isArray(menus)) {\n return;\n }\n for (const menu of menus) {\n if (menu.overrideApp) {\n initializeAppConfig(menu.overrideApp);\n }\n }\n}\n"],"mappings":"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"}
|
|
@@ -1,18 +0,0 @@
|
|
|
1
|
-
import _asyncToGenerator from "@babel/runtime/helpers/asyncToGenerator";
|
|
2
|
-
import { AuthApi_checkLogin } from "@next-api-sdk/api-gateway-sdk";
|
|
3
|
-
import { authenticate } from "../auth.js";
|
|
4
|
-
export function loadCheckLogin() {
|
|
5
|
-
return _loadCheckLogin.apply(this, arguments);
|
|
6
|
-
}
|
|
7
|
-
function _loadCheckLogin() {
|
|
8
|
-
_loadCheckLogin = _asyncToGenerator(function* () {
|
|
9
|
-
if (!window.NO_AUTH_GUARD) {
|
|
10
|
-
var auth = yield AuthApi_checkLogin();
|
|
11
|
-
if (auth.loggedIn) {
|
|
12
|
-
authenticate(auth);
|
|
13
|
-
}
|
|
14
|
-
}
|
|
15
|
-
});
|
|
16
|
-
return _loadCheckLogin.apply(this, arguments);
|
|
17
|
-
}
|
|
18
|
-
//# sourceMappingURL=loadCheckLogin.js.map
|
|
@@ -1 +0,0 @@
|
|
|
1
|
-
{"version":3,"file":"loadCheckLogin.js","names":["AuthApi_checkLogin","authenticate","loadCheckLogin","_loadCheckLogin","apply","arguments","_asyncToGenerator","window","NO_AUTH_GUARD","auth","loggedIn"],"sources":["../../../src/internal/loadCheckLogin.ts"],"sourcesContent":["import { AuthApi_checkLogin } from \"@next-api-sdk/api-gateway-sdk\";\nimport { authenticate } from \"../auth.js\";\n\nexport async function loadCheckLogin(): Promise<void> {\n if (!window.NO_AUTH_GUARD) {\n const auth = await AuthApi_checkLogin();\n if (auth.loggedIn) {\n authenticate(auth);\n }\n }\n}\n"],"mappings":";AAAA,SAASA,kBAAkB,QAAQ,+BAA+B;AAClE,SAASC,YAAY,QAAQ,YAAY;AAEzC,gBAAsBC,cAAcA,CAAA;EAAA,OAAAC,eAAA,CAAAC,KAAA,OAAAC,SAAA;AAAA;AAOnC,SAAAF,gBAAA;EAAAA,eAAA,GAAAG,iBAAA,CAPM,aAA+C;IACpD,IAAI,CAACC,MAAM,CAACC,aAAa,EAAE;MACzB,IAAMC,IAAI,SAAST,kBAAkB,EAAE;MACvC,IAAIS,IAAI,CAACC,QAAQ,EAAE;QACjBT,YAAY,CAACQ,IAAI,CAAC;MACpB;IACF;EACF,CAAC;EAAA,OAAAN,eAAA,CAAAC,KAAA,OAAAC,SAAA;AAAA"}
|
|
@@ -1,10 +0,0 @@
|
|
|
1
|
-
import type { BootstrapData, RuntimeStoryboard } from "@next-core/types";
|
|
2
|
-
import { MenuRawData } from "./menu/interfaces.js";
|
|
3
|
-
export declare function loadBootstrapData(): Promise<BootstrapData>;
|
|
4
|
-
interface RuntimeMicroAppStandaloneData {
|
|
5
|
-
userConfig?: Record<string, unknown>;
|
|
6
|
-
injectMenus?: MenuRawData[];
|
|
7
|
-
}
|
|
8
|
-
export declare function safeGetRuntimeMicroAppStandalone(appId: string): Promise<RuntimeMicroAppStandaloneData | undefined>;
|
|
9
|
-
export declare function fulfilStoryboard(storyboard: RuntimeStoryboard): Promise<void>;
|
|
10
|
-
export {};
|
|
@@ -1 +0,0 @@
|
|
|
1
|
-
export declare function loadCheckLogin(): Promise<void>;
|