@alicloud/alfa-core 1.4.0-alpha.0 → 1.4.0-alpha.3
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/LICENSE +21 -0
- package/dist/index.js +4 -4
- package/es/base.js +3 -2
- package/es/index.js +5 -4
- package/es/utils/cacheManager.js +4 -4
- package/es/utils/env.js +16 -0
- package/es/utils/getAlfaLocale.js +19 -10
- package/es/utils/getConfig.js +75 -0
- package/es/utils/getI18nMessages.js +71 -0
- package/es/utils/getManifest.js +125 -0
- package/es/utils/getRelease.js +77 -0
- package/es/utils/index.js +2 -97
- package/es/utils/interceptors/responseInterceptor.js +4 -4
- package/es/utils/locale.js +22 -0
- package/es/utils/logger.js +10 -4
- package/lib/base.js +2 -1
- package/lib/index.d.ts +5 -4
- package/lib/index.js +24 -8
- package/lib/types/index.d.ts +4 -4
- package/lib/utils/cacheManager.js +4 -4
- package/lib/utils/env.d.ts +6 -0
- package/lib/utils/env.js +25 -0
- package/lib/utils/{getAlfaConfig.d.ts → getConfig.d.ts} +0 -0
- package/lib/utils/{getAlfaConfig.js → getConfig.js} +2 -2
- package/lib/utils/{getAlfaLocale.d.ts → getI18nMessages.d.ts} +1 -1
- package/lib/utils/{getAlfaLocale.js → getI18nMessages.js} +27 -18
- package/lib/utils/{getAlfaManifest.d.ts → getManifest.d.ts} +1 -1
- package/lib/utils/{getAlfaManifest.js → getManifest.js} +52 -10
- package/lib/utils/getRelease.d.ts +9 -0
- package/lib/utils/getRelease.js +94 -0
- package/lib/utils/index.d.ts +3 -28
- package/lib/utils/index.js +13 -112
- package/lib/utils/interceptors/responseInterceptor.js +4 -4
- package/lib/utils/locale.d.ts +5 -0
- package/lib/utils/locale.js +30 -0
- package/lib/utils/logger.js +10 -4
- package/package.json +3 -3
- package/lib/utils/getAlfaRelease.d.ts +0 -2
- package/lib/utils/getAlfaRelease.js +0 -58
package/es/base.js
CHANGED
|
@@ -9,13 +9,13 @@ function ownKeys(object, enumerableOnly) { var keys = Object.keys(object); if (O
|
|
|
9
9
|
function _objectSpread(target) { for (var i = 1; i < arguments.length; i++) { var source = null != arguments[i] ? arguments[i] : {}; i % 2 ? ownKeys(Object(source), !0).forEach(function (key) { _defineProperty(target, key, source[key]); }) : Object.getOwnPropertyDescriptors ? Object.defineProperties(target, Object.getOwnPropertyDescriptors(source)) : ownKeys(Object(source)).forEach(function (key) { Object.defineProperty(target, key, Object.getOwnPropertyDescriptor(source, key)); }); } return target; }
|
|
10
10
|
|
|
11
11
|
import { createMicroApp } from '@alicloud/console-os-kernal';
|
|
12
|
-
import { getManifestFromConfig, getURL,
|
|
12
|
+
import { getManifestFromConfig, getURL, getEnv } from './utils';
|
|
13
13
|
import Hook from './utils/hookManager';
|
|
14
14
|
import Logger from './utils/logger';
|
|
15
15
|
|
|
16
16
|
var mergeConfig = function mergeConfig(appConfig, logger) {
|
|
17
17
|
return _objectSpread(_objectSpread({}, appConfig), {}, {
|
|
18
|
-
env: appConfig.env
|
|
18
|
+
env: getEnv(appConfig.env),
|
|
19
19
|
logger: appConfig.logger || logger
|
|
20
20
|
});
|
|
21
21
|
};
|
|
@@ -48,6 +48,7 @@ var BaseLoader = /*#__PURE__*/function () {
|
|
|
48
48
|
}
|
|
49
49
|
|
|
50
50
|
logger.error({
|
|
51
|
+
E_CODE: 'RuntimeError',
|
|
51
52
|
E_MSG: 'cannot find config before start.'
|
|
52
53
|
});
|
|
53
54
|
return _context.abrupt("return", Promise.reject(new Error('[alfa-core] cannot find config before start.')));
|
package/es/index.js
CHANGED
|
@@ -1,8 +1,9 @@
|
|
|
1
1
|
export { createMicroApp } from './createMicroApp';
|
|
2
|
-
export { getRelease } from './utils/
|
|
3
|
-
export { getManifest } from './utils/
|
|
4
|
-
export { getConfig } from './utils/
|
|
5
|
-
export {
|
|
2
|
+
export { getRelease } from './utils/getRelease';
|
|
3
|
+
export { getManifest } from './utils/getManifest';
|
|
4
|
+
export { getConfig } from './utils/getConfig';
|
|
5
|
+
export { getI18nMessages } from './utils/getI18nMessages';
|
|
6
|
+
export { getLocale, getEnv } from './utils';
|
|
6
7
|
export { default as BaseLoader } from './base';
|
|
7
8
|
export { default as Logger } from './utils/logger';
|
|
8
9
|
export * from './utils/index';
|
package/es/utils/cacheManager.js
CHANGED
|
@@ -25,7 +25,7 @@ var Cache = /*#__PURE__*/function () {
|
|
|
25
25
|
key: "getRemote",
|
|
26
26
|
value: function () {
|
|
27
27
|
var _getRemote = _asyncToGenerator( /*#__PURE__*/_regeneratorRuntime.mark(function _callee(url) {
|
|
28
|
-
var value, _yield$value, _data, _yield$
|
|
28
|
+
var value, _yield$value, _data, _yield$this$store$url, data, result;
|
|
29
29
|
|
|
30
30
|
return _regeneratorRuntime.wrap(function _callee$(_context) {
|
|
31
31
|
while (1) {
|
|
@@ -65,11 +65,11 @@ var Cache = /*#__PURE__*/function () {
|
|
|
65
65
|
case 11:
|
|
66
66
|
this.store[url] = request.get(url);
|
|
67
67
|
_context.next = 14;
|
|
68
|
-
return
|
|
68
|
+
return this.store[url];
|
|
69
69
|
|
|
70
70
|
case 14:
|
|
71
|
-
_yield$
|
|
72
|
-
data = _yield$
|
|
71
|
+
_yield$this$store$url = _context.sent;
|
|
72
|
+
data = _yield$this$store$url.data;
|
|
73
73
|
result = data;
|
|
74
74
|
if (result) this.store[url] = result;
|
|
75
75
|
return _context.abrupt("return", result);
|
package/es/utils/env.js
ADDED
|
@@ -0,0 +1,16 @@
|
|
|
1
|
+
/**
|
|
2
|
+
* get alfa env
|
|
3
|
+
* @returns
|
|
4
|
+
*/
|
|
5
|
+
export var getEnv = function getEnv(value) {
|
|
6
|
+
var _window, _window$ALIYUN_CONSOL;
|
|
7
|
+
|
|
8
|
+
if (value) return value;
|
|
9
|
+
|
|
10
|
+
if (process.env.NODE_ENV === 'development') {
|
|
11
|
+
return 'local';
|
|
12
|
+
} // default return prod
|
|
13
|
+
|
|
14
|
+
|
|
15
|
+
return ((_window = window) === null || _window === void 0 ? void 0 : (_window$ALIYUN_CONSOL = _window.ALIYUN_CONSOLE_CONFIG) === null || _window$ALIYUN_CONSOL === void 0 ? void 0 : _window$ALIYUN_CONSOL.fEnv) || 'prod';
|
|
16
|
+
};
|
|
@@ -28,32 +28,41 @@ export var getLocale = /*#__PURE__*/function () {
|
|
|
28
28
|
localeVersion = ((_releaseConfig$distT = releaseConfig['dist-tags']) === null || _releaseConfig$distT === void 0 ? void 0 : _releaseConfig$distT['locales-latest']) || '';
|
|
29
29
|
localeEntry = (_releaseConfig$locale = releaseConfig['locales-versions']) === null || _releaseConfig$locale === void 0 ? void 0 : (_releaseConfig$locale2 = _releaseConfig$locale[localeVersion]) === null || _releaseConfig$locale2 === void 0 ? void 0 : _releaseConfig$locale2[locale];
|
|
30
30
|
messages = {};
|
|
31
|
-
|
|
32
|
-
|
|
31
|
+
|
|
32
|
+
if (localeVersion) {
|
|
33
|
+
_context.next = 10;
|
|
34
|
+
break;
|
|
35
|
+
}
|
|
36
|
+
|
|
37
|
+
return _context.abrupt("return", messages);
|
|
38
|
+
|
|
39
|
+
case 10:
|
|
40
|
+
_context.prev = 10;
|
|
41
|
+
_context.next = 13;
|
|
33
42
|
return cache.getRemote(localeEntry);
|
|
34
43
|
|
|
35
|
-
case
|
|
44
|
+
case 13:
|
|
36
45
|
messages = _context.sent;
|
|
37
|
-
_context.next =
|
|
46
|
+
_context.next = 19;
|
|
38
47
|
break;
|
|
39
48
|
|
|
40
|
-
case
|
|
41
|
-
_context.prev =
|
|
42
|
-
_context.t0 = _context["catch"](
|
|
49
|
+
case 16:
|
|
50
|
+
_context.prev = 16;
|
|
51
|
+
_context.t0 = _context["catch"](10);
|
|
43
52
|
(logger === null || logger === void 0 ? void 0 : logger.error) && logger.error({
|
|
44
53
|
E_CODE: 'GetLocaleError',
|
|
45
54
|
E_MSG: _context.t0.message
|
|
46
55
|
});
|
|
47
56
|
|
|
48
|
-
case
|
|
57
|
+
case 19:
|
|
49
58
|
return _context.abrupt("return", messages);
|
|
50
59
|
|
|
51
|
-
case
|
|
60
|
+
case 20:
|
|
52
61
|
case "end":
|
|
53
62
|
return _context.stop();
|
|
54
63
|
}
|
|
55
64
|
}
|
|
56
|
-
}, _callee, null, [[
|
|
65
|
+
}, _callee, null, [[10, 16]]);
|
|
57
66
|
}));
|
|
58
67
|
|
|
59
68
|
return function getLocale(_x) {
|
|
@@ -0,0 +1,75 @@
|
|
|
1
|
+
import _asyncToGenerator from "@babel/runtime/helpers/esm/asyncToGenerator";
|
|
2
|
+
import _regeneratorRuntime from "@babel/runtime/regenerator";
|
|
3
|
+
import { getRelease } from './getRelease';
|
|
4
|
+
import cache from './cacheManager';
|
|
5
|
+
var defaultConfig = {
|
|
6
|
+
ALL_CHANNEL_FEATURE_STATUS: {},
|
|
7
|
+
ALL_CHANNEL_LINKS: {},
|
|
8
|
+
ALL_FEATURE_STATUS: {},
|
|
9
|
+
GLOBAL_DATA: {}
|
|
10
|
+
};
|
|
11
|
+
/**
|
|
12
|
+
* 获取 Alfa 平台配置的 Config
|
|
13
|
+
* @param config
|
|
14
|
+
* @returns
|
|
15
|
+
*/
|
|
16
|
+
|
|
17
|
+
export var getConfig = /*#__PURE__*/function () {
|
|
18
|
+
var _ref = _asyncToGenerator( /*#__PURE__*/_regeneratorRuntime.mark(function _callee(config) {
|
|
19
|
+
var _releaseConfig$distT, _releaseConfig$config, _releaseConfig$config2;
|
|
20
|
+
|
|
21
|
+
var releaseConfig, logger, configVersion, configEntry, configData;
|
|
22
|
+
return _regeneratorRuntime.wrap(function _callee$(_context) {
|
|
23
|
+
while (1) {
|
|
24
|
+
switch (_context.prev = _context.next) {
|
|
25
|
+
case 0:
|
|
26
|
+
_context.next = 2;
|
|
27
|
+
return getRelease(config);
|
|
28
|
+
|
|
29
|
+
case 2:
|
|
30
|
+
releaseConfig = _context.sent;
|
|
31
|
+
logger = config.logger;
|
|
32
|
+
configVersion = ((_releaseConfig$distT = releaseConfig['dist-tags']) === null || _releaseConfig$distT === void 0 ? void 0 : _releaseConfig$distT['config-latest']) || '';
|
|
33
|
+
configEntry = (_releaseConfig$config = releaseConfig['config-versions']) === null || _releaseConfig$config === void 0 ? void 0 : (_releaseConfig$config2 = _releaseConfig$config[configVersion]) === null || _releaseConfig$config2 === void 0 ? void 0 : _releaseConfig$config2.entry;
|
|
34
|
+
configData = defaultConfig; // when config is not valid, return empty
|
|
35
|
+
|
|
36
|
+
if (!(!configVersion || !configEntry)) {
|
|
37
|
+
_context.next = 9;
|
|
38
|
+
break;
|
|
39
|
+
}
|
|
40
|
+
|
|
41
|
+
return _context.abrupt("return", configData);
|
|
42
|
+
|
|
43
|
+
case 9:
|
|
44
|
+
_context.prev = 9;
|
|
45
|
+
_context.next = 12;
|
|
46
|
+
return cache.getRemote(configEntry);
|
|
47
|
+
|
|
48
|
+
case 12:
|
|
49
|
+
configData = _context.sent;
|
|
50
|
+
_context.next = 18;
|
|
51
|
+
break;
|
|
52
|
+
|
|
53
|
+
case 15:
|
|
54
|
+
_context.prev = 15;
|
|
55
|
+
_context.t0 = _context["catch"](9);
|
|
56
|
+
(logger === null || logger === void 0 ? void 0 : logger.error) && logger.error({
|
|
57
|
+
E_CODE: 'GetConfigError',
|
|
58
|
+
E_MSG: _context.t0.message
|
|
59
|
+
});
|
|
60
|
+
|
|
61
|
+
case 18:
|
|
62
|
+
return _context.abrupt("return", configData);
|
|
63
|
+
|
|
64
|
+
case 19:
|
|
65
|
+
case "end":
|
|
66
|
+
return _context.stop();
|
|
67
|
+
}
|
|
68
|
+
}
|
|
69
|
+
}, _callee, null, [[9, 15]]);
|
|
70
|
+
}));
|
|
71
|
+
|
|
72
|
+
return function getConfig(_x) {
|
|
73
|
+
return _ref.apply(this, arguments);
|
|
74
|
+
};
|
|
75
|
+
}();
|
|
@@ -0,0 +1,71 @@
|
|
|
1
|
+
import _asyncToGenerator from "@babel/runtime/helpers/esm/asyncToGenerator";
|
|
2
|
+
import _regeneratorRuntime from "@babel/runtime/regenerator";
|
|
3
|
+
import { getLocale } from './locale';
|
|
4
|
+
import { getRelease } from './getRelease';
|
|
5
|
+
import cache from './cacheManager';
|
|
6
|
+
/**
|
|
7
|
+
* 获取国际化文案
|
|
8
|
+
* @param config
|
|
9
|
+
* @returns
|
|
10
|
+
*/
|
|
11
|
+
|
|
12
|
+
export var getI18nMessages = /*#__PURE__*/function () {
|
|
13
|
+
var _ref = _asyncToGenerator( /*#__PURE__*/_regeneratorRuntime.mark(function _callee(config) {
|
|
14
|
+
var _releaseConfig$distT, _releaseConfig$locale, _releaseConfig$locale2;
|
|
15
|
+
|
|
16
|
+
var releaseConfig, logger, locale, localeVersion, localeEntry, messages;
|
|
17
|
+
return _regeneratorRuntime.wrap(function _callee$(_context) {
|
|
18
|
+
while (1) {
|
|
19
|
+
switch (_context.prev = _context.next) {
|
|
20
|
+
case 0:
|
|
21
|
+
_context.next = 2;
|
|
22
|
+
return getRelease(config);
|
|
23
|
+
|
|
24
|
+
case 2:
|
|
25
|
+
releaseConfig = _context.sent;
|
|
26
|
+
logger = config.logger;
|
|
27
|
+
locale = getLocale(config.locale);
|
|
28
|
+
localeVersion = ((_releaseConfig$distT = releaseConfig['dist-tags']) === null || _releaseConfig$distT === void 0 ? void 0 : _releaseConfig$distT['locales-latest']) || '';
|
|
29
|
+
localeEntry = (_releaseConfig$locale = releaseConfig['locales-versions']) === null || _releaseConfig$locale === void 0 ? void 0 : (_releaseConfig$locale2 = _releaseConfig$locale[localeVersion]) === null || _releaseConfig$locale2 === void 0 ? void 0 : _releaseConfig$locale2[locale];
|
|
30
|
+
messages = {};
|
|
31
|
+
|
|
32
|
+
if (localeVersion) {
|
|
33
|
+
_context.next = 10;
|
|
34
|
+
break;
|
|
35
|
+
}
|
|
36
|
+
|
|
37
|
+
return _context.abrupt("return", messages);
|
|
38
|
+
|
|
39
|
+
case 10:
|
|
40
|
+
_context.prev = 10;
|
|
41
|
+
_context.next = 13;
|
|
42
|
+
return cache.getRemote(localeEntry);
|
|
43
|
+
|
|
44
|
+
case 13:
|
|
45
|
+
messages = _context.sent;
|
|
46
|
+
_context.next = 19;
|
|
47
|
+
break;
|
|
48
|
+
|
|
49
|
+
case 16:
|
|
50
|
+
_context.prev = 16;
|
|
51
|
+
_context.t0 = _context["catch"](10);
|
|
52
|
+
(logger === null || logger === void 0 ? void 0 : logger.error) && logger.error({
|
|
53
|
+
E_CODE: 'GetLocaleError',
|
|
54
|
+
E_MSG: _context.t0.message
|
|
55
|
+
});
|
|
56
|
+
|
|
57
|
+
case 19:
|
|
58
|
+
return _context.abrupt("return", messages);
|
|
59
|
+
|
|
60
|
+
case 20:
|
|
61
|
+
case "end":
|
|
62
|
+
return _context.stop();
|
|
63
|
+
}
|
|
64
|
+
}
|
|
65
|
+
}, _callee, null, [[10, 16]]);
|
|
66
|
+
}));
|
|
67
|
+
|
|
68
|
+
return function getI18nMessages(_x) {
|
|
69
|
+
return _ref.apply(this, arguments);
|
|
70
|
+
};
|
|
71
|
+
}();
|
|
@@ -0,0 +1,125 @@
|
|
|
1
|
+
import _asyncToGenerator from "@babel/runtime/helpers/esm/asyncToGenerator";
|
|
2
|
+
import _defineProperty from "@babel/runtime/helpers/esm/defineProperty";
|
|
3
|
+
import _regeneratorRuntime from "@babel/runtime/regenerator";
|
|
4
|
+
import { getRelease } from './getRelease';
|
|
5
|
+
import cache from './cacheManager';
|
|
6
|
+
var devHostname = '//dev.g.alicdn.com/';
|
|
7
|
+
|
|
8
|
+
var replaceHost = function replaceHost(origin) {
|
|
9
|
+
return origin.replace('//g.alicdn.com/', devHostname);
|
|
10
|
+
};
|
|
11
|
+
/**
|
|
12
|
+
* format url in manifest json
|
|
13
|
+
* @param manifest
|
|
14
|
+
*/
|
|
15
|
+
|
|
16
|
+
|
|
17
|
+
var formatManifest = function formatManifest(manifestContent, manifestUrl) {
|
|
18
|
+
var _entrypoints$entrypoi;
|
|
19
|
+
|
|
20
|
+
if (manifestUrl.indexOf(devHostname) === -1) return manifestContent;
|
|
21
|
+
var name = manifestContent.name,
|
|
22
|
+
resources = manifestContent.resources,
|
|
23
|
+
runtime = manifestContent.runtime,
|
|
24
|
+
externals = manifestContent.externals,
|
|
25
|
+
entrypoints = manifestContent.entrypoints;
|
|
26
|
+
var entrypoint = Object.keys(entrypoints)[0];
|
|
27
|
+
return {
|
|
28
|
+
name: name,
|
|
29
|
+
resources: Object.keys(resources).reduce(function (map, key) {
|
|
30
|
+
map[key] = replaceHost(resources[key]);
|
|
31
|
+
return map;
|
|
32
|
+
}, {}),
|
|
33
|
+
runtime: runtime,
|
|
34
|
+
externals: externals,
|
|
35
|
+
entrypoints: _defineProperty({}, entrypoint, {
|
|
36
|
+
css: (_entrypoints$entrypoi = entrypoints[entrypoint].css) === null || _entrypoints$entrypoi === void 0 ? void 0 : _entrypoints$entrypoi.map(replaceHost),
|
|
37
|
+
js: entrypoints[entrypoint].js.map(replaceHost)
|
|
38
|
+
})
|
|
39
|
+
};
|
|
40
|
+
};
|
|
41
|
+
|
|
42
|
+
export var getManifest = /*#__PURE__*/function () {
|
|
43
|
+
var _ref = _asyncToGenerator( /*#__PURE__*/_regeneratorRuntime.mark(function _callee(config) {
|
|
44
|
+
var _releaseConfig$distT;
|
|
45
|
+
|
|
46
|
+
var releaseConfig, latestVersion, manifest, logger, entry, _config$version, version, _releaseConfig$distT2, _releaseConfig$versio, result;
|
|
47
|
+
|
|
48
|
+
return _regeneratorRuntime.wrap(function _callee$(_context) {
|
|
49
|
+
while (1) {
|
|
50
|
+
switch (_context.prev = _context.next) {
|
|
51
|
+
case 0:
|
|
52
|
+
_context.next = 2;
|
|
53
|
+
return getRelease(config);
|
|
54
|
+
|
|
55
|
+
case 2:
|
|
56
|
+
releaseConfig = _context.sent;
|
|
57
|
+
latestVersion = (_releaseConfig$distT = releaseConfig['dist-tags']) === null || _releaseConfig$distT === void 0 ? void 0 : _releaseConfig$distT.latest;
|
|
58
|
+
manifest = config.manifest, logger = config.logger;
|
|
59
|
+
entry = ''; // if user has custom manifest
|
|
60
|
+
|
|
61
|
+
if (!manifest) {
|
|
62
|
+
_context.next = 12;
|
|
63
|
+
break;
|
|
64
|
+
}
|
|
65
|
+
|
|
66
|
+
if (!(typeof manifest !== 'string')) {
|
|
67
|
+
_context.next = 9;
|
|
68
|
+
break;
|
|
69
|
+
}
|
|
70
|
+
|
|
71
|
+
return _context.abrupt("return", manifest);
|
|
72
|
+
|
|
73
|
+
case 9:
|
|
74
|
+
entry = manifest;
|
|
75
|
+
_context.next = 14;
|
|
76
|
+
break;
|
|
77
|
+
|
|
78
|
+
case 12:
|
|
79
|
+
_config$version = config.version, version = _config$version === void 0 ? latestVersion : _config$version;
|
|
80
|
+
|
|
81
|
+
if (version) {
|
|
82
|
+
// if version is in dist-tags, return value
|
|
83
|
+
if ((_releaseConfig$distT2 = releaseConfig['dist-tags']) !== null && _releaseConfig$distT2 !== void 0 && _releaseConfig$distT2[version]) {
|
|
84
|
+
version = releaseConfig['dist-tags'][version] || '';
|
|
85
|
+
}
|
|
86
|
+
|
|
87
|
+
entry = ((_releaseConfig$versio = releaseConfig.versions) === null || _releaseConfig$versio === void 0 ? void 0 : _releaseConfig$versio[version].entry) || '';
|
|
88
|
+
}
|
|
89
|
+
|
|
90
|
+
case 14:
|
|
91
|
+
_context.prev = 14;
|
|
92
|
+
_context.next = 17;
|
|
93
|
+
return cache.getRemote(entry);
|
|
94
|
+
|
|
95
|
+
case 17:
|
|
96
|
+
result = _context.sent;
|
|
97
|
+
(logger === null || logger === void 0 ? void 0 : logger.setContext) && logger.setContext({
|
|
98
|
+
manifest: JSON.stringify(result)
|
|
99
|
+
});
|
|
100
|
+
return _context.abrupt("return", formatManifest(result, entry));
|
|
101
|
+
|
|
102
|
+
case 22:
|
|
103
|
+
_context.prev = 22;
|
|
104
|
+
_context.t0 = _context["catch"](14);
|
|
105
|
+
(logger === null || logger === void 0 ? void 0 : logger.error) && logger.error({
|
|
106
|
+
E_CODE: 'GetManifestError',
|
|
107
|
+
E_MSG: _context.t0.message,
|
|
108
|
+
data: JSON.stringify(releaseConfig)
|
|
109
|
+
});
|
|
110
|
+
|
|
111
|
+
case 25:
|
|
112
|
+
return _context.abrupt("return", '');
|
|
113
|
+
|
|
114
|
+
case 26:
|
|
115
|
+
case "end":
|
|
116
|
+
return _context.stop();
|
|
117
|
+
}
|
|
118
|
+
}
|
|
119
|
+
}, _callee, null, [[14, 22]]);
|
|
120
|
+
}));
|
|
121
|
+
|
|
122
|
+
return function getManifest(_x) {
|
|
123
|
+
return _ref.apply(this, arguments);
|
|
124
|
+
};
|
|
125
|
+
}();
|
|
@@ -0,0 +1,77 @@
|
|
|
1
|
+
import _asyncToGenerator from "@babel/runtime/helpers/esm/asyncToGenerator";
|
|
2
|
+
import _regeneratorRuntime from "@babel/runtime/regenerator";
|
|
3
|
+
import cache from './cacheManager';
|
|
4
|
+
import { getEnv } from './env';
|
|
5
|
+
/**
|
|
6
|
+
* get alfa release url
|
|
7
|
+
* @param appId
|
|
8
|
+
* @param env
|
|
9
|
+
* @returns
|
|
10
|
+
*/
|
|
11
|
+
|
|
12
|
+
export var getReleaseUrl = function getReleaseUrl(name, env) {
|
|
13
|
+
var cdnUrl = "https://cws.alicdn.com/Release/alfa/".concat(name, "/release.json");
|
|
14
|
+
var cdnPreUrl = "https://cws2.alicdn.com/Prepub/alfa/".concat(name, "/release.json");
|
|
15
|
+
|
|
16
|
+
switch (env) {
|
|
17
|
+
case 'local':
|
|
18
|
+
return process.env.ALFA_RELEASE_URL || cdnPreUrl;
|
|
19
|
+
|
|
20
|
+
case 'daily':
|
|
21
|
+
return cdnPreUrl;
|
|
22
|
+
|
|
23
|
+
case 'pre':
|
|
24
|
+
return cdnPreUrl;
|
|
25
|
+
|
|
26
|
+
case 'prod':
|
|
27
|
+
return cdnUrl;
|
|
28
|
+
|
|
29
|
+
default:
|
|
30
|
+
break;
|
|
31
|
+
}
|
|
32
|
+
|
|
33
|
+
return undefined;
|
|
34
|
+
};
|
|
35
|
+
export var getRelease = /*#__PURE__*/function () {
|
|
36
|
+
var _ref = _asyncToGenerator( /*#__PURE__*/_regeneratorRuntime.mark(function _callee(config) {
|
|
37
|
+
var logger, name, env, releaseConfig;
|
|
38
|
+
return _regeneratorRuntime.wrap(function _callee$(_context) {
|
|
39
|
+
while (1) {
|
|
40
|
+
switch (_context.prev = _context.next) {
|
|
41
|
+
case 0:
|
|
42
|
+
logger = config.logger, name = config.name;
|
|
43
|
+
env = getEnv(config.env);
|
|
44
|
+
_context.prev = 2;
|
|
45
|
+
_context.next = 5;
|
|
46
|
+
return cache.getRemote(getReleaseUrl(name, env));
|
|
47
|
+
|
|
48
|
+
case 5:
|
|
49
|
+
releaseConfig = _context.sent;
|
|
50
|
+
(logger === null || logger === void 0 ? void 0 : logger.setContext) && logger.setContext({
|
|
51
|
+
release: JSON.stringify(releaseConfig)
|
|
52
|
+
});
|
|
53
|
+
return _context.abrupt("return", releaseConfig);
|
|
54
|
+
|
|
55
|
+
case 10:
|
|
56
|
+
_context.prev = 10;
|
|
57
|
+
_context.t0 = _context["catch"](2);
|
|
58
|
+
(logger === null || logger === void 0 ? void 0 : logger.error) && logger.error({
|
|
59
|
+
E_CODE: 'GetReleaseError',
|
|
60
|
+
E_MSG: _context.t0.message
|
|
61
|
+
});
|
|
62
|
+
|
|
63
|
+
case 13:
|
|
64
|
+
return _context.abrupt("return", {});
|
|
65
|
+
|
|
66
|
+
case 14:
|
|
67
|
+
case "end":
|
|
68
|
+
return _context.stop();
|
|
69
|
+
}
|
|
70
|
+
}
|
|
71
|
+
}, _callee, null, [[2, 10]]);
|
|
72
|
+
}));
|
|
73
|
+
|
|
74
|
+
return function getRelease(_x) {
|
|
75
|
+
return _ref.apply(this, arguments);
|
|
76
|
+
};
|
|
77
|
+
}();
|
package/es/utils/index.js
CHANGED
|
@@ -1,100 +1,5 @@
|
|
|
1
|
-
|
|
2
|
-
|
|
3
|
-
* @returns
|
|
4
|
-
*/
|
|
5
|
-
export var getAlfaEnv = function getAlfaEnv() {
|
|
6
|
-
var _window, _window$ALIYUN_CONSOL;
|
|
7
|
-
|
|
8
|
-
if (process.env.NODE_ENV === 'development') {
|
|
9
|
-
return 'local';
|
|
10
|
-
} // default return prod
|
|
11
|
-
|
|
12
|
-
|
|
13
|
-
return ((_window = window) === null || _window === void 0 ? void 0 : (_window$ALIYUN_CONSOL = _window.ALIYUN_CONSOLE_CONFIG) === null || _window$ALIYUN_CONSOL === void 0 ? void 0 : _window$ALIYUN_CONSOL.fEnv) || 'prod';
|
|
14
|
-
};
|
|
15
|
-
/**
|
|
16
|
-
* get alfa Locale and replace '-' to '_'
|
|
17
|
-
* example: en-US => en_US
|
|
18
|
-
* @returns
|
|
19
|
-
*/
|
|
20
|
-
|
|
21
|
-
export var getAlfaLocale = function getAlfaLocale() {
|
|
22
|
-
var _window2, _window2$ALIYUN_CONSO;
|
|
23
|
-
|
|
24
|
-
var locale = (((_window2 = window) === null || _window2 === void 0 ? void 0 : (_window2$ALIYUN_CONSO = _window2.ALIYUN_CONSOLE_CONFIG) === null || _window2$ALIYUN_CONSO === void 0 ? void 0 : _window2$ALIYUN_CONSO.LOCALE) || '').replace('-', '_');
|
|
25
|
-
if (['zh_CN', 'en_US', 'ja_JP', 'zh_TW', 'zh-HK'].includes(locale)) return locale;
|
|
26
|
-
return 'en_US';
|
|
27
|
-
};
|
|
28
|
-
/**
|
|
29
|
-
* get alfa release url
|
|
30
|
-
* @param appId
|
|
31
|
-
* @param env
|
|
32
|
-
* @returns
|
|
33
|
-
*/
|
|
34
|
-
|
|
35
|
-
export var getReleaseUrl = function getReleaseUrl(name, env) {
|
|
36
|
-
var cdnUrl = "https://cws.alicdn.com/Release/alfa/".concat(name, "/release.json");
|
|
37
|
-
var cdnPreUrl = "https://cws2.alicdn.com/Prepub/alfa/".concat(name, "/release.json");
|
|
38
|
-
|
|
39
|
-
switch (env) {
|
|
40
|
-
case 'local':
|
|
41
|
-
return process.env.ALFA_RELEASE_URL || cdnPreUrl;
|
|
42
|
-
|
|
43
|
-
case 'daily':
|
|
44
|
-
return cdnPreUrl;
|
|
45
|
-
|
|
46
|
-
case 'pre':
|
|
47
|
-
return cdnPreUrl;
|
|
48
|
-
|
|
49
|
-
case 'prod':
|
|
50
|
-
return cdnUrl;
|
|
51
|
-
|
|
52
|
-
default:
|
|
53
|
-
break;
|
|
54
|
-
}
|
|
55
|
-
|
|
56
|
-
return undefined;
|
|
57
|
-
};
|
|
58
|
-
/**
|
|
59
|
-
* get alfa config url
|
|
60
|
-
* @param appId
|
|
61
|
-
* @param env
|
|
62
|
-
* @returns
|
|
63
|
-
*/
|
|
64
|
-
|
|
65
|
-
export var getConfigUrl = function getConfigUrl(name, env) {
|
|
66
|
-
var configUrl = "https://cws.alicdn.com/Release/alfa-products/".concat(name, "/config.json");
|
|
67
|
-
var configPreUrl = "https://cws2.alicdn.com/Prepub/alfa-products/".concat(name, "/config.json");
|
|
68
|
-
|
|
69
|
-
switch (env) {
|
|
70
|
-
case 'local':
|
|
71
|
-
return configPreUrl;
|
|
72
|
-
|
|
73
|
-
case 'daily':
|
|
74
|
-
return configPreUrl;
|
|
75
|
-
|
|
76
|
-
case 'pre':
|
|
77
|
-
return configPreUrl;
|
|
78
|
-
|
|
79
|
-
case 'prod':
|
|
80
|
-
return configUrl;
|
|
81
|
-
|
|
82
|
-
default:
|
|
83
|
-
break;
|
|
84
|
-
}
|
|
85
|
-
|
|
86
|
-
return undefined;
|
|
87
|
-
};
|
|
88
|
-
export var resolveReleaseUrl = function resolveReleaseUrl(config) {
|
|
89
|
-
var name = config.name,
|
|
90
|
-
env = config.env;
|
|
91
|
-
return getReleaseUrl(name, env || getAlfaEnv());
|
|
92
|
-
};
|
|
93
|
-
export var resolveConfigUrl = function resolveConfigUrl(config) {
|
|
94
|
-
var name = config.name,
|
|
95
|
-
env = config.env;
|
|
96
|
-
return getConfigUrl(name, env || getAlfaEnv());
|
|
97
|
-
};
|
|
1
|
+
export { getEnv } from './env';
|
|
2
|
+
export { getLocale } from './locale';
|
|
98
3
|
export var getURL = function getURL(appConfig) {
|
|
99
4
|
var entry = appConfig.entry;
|
|
100
5
|
var url = '';
|
|
@@ -3,7 +3,7 @@ import _regeneratorRuntime from "@babel/runtime/regenerator";
|
|
|
3
3
|
import axios from 'axios';
|
|
4
4
|
|
|
5
5
|
function isManifest(url, data) {
|
|
6
|
-
if (
|
|
6
|
+
if (/\.manifest.json$/.exec(url) && data) {
|
|
7
7
|
if (data.name && data.entrypoints && data.resources) {
|
|
8
8
|
return true;
|
|
9
9
|
}
|
|
@@ -17,8 +17,7 @@ function isRelease(url, data) {
|
|
|
17
17
|
var _data$distTags, _data$versions;
|
|
18
18
|
|
|
19
19
|
var latestVersion = (_data$distTags = data['dist-tags']) === null || _data$distTags === void 0 ? void 0 : _data$distTags.latest;
|
|
20
|
-
|
|
21
|
-
if (latestVersion && entryFile) return true;
|
|
20
|
+
if (latestVersion && (_data$versions = data.versions) !== null && _data$versions !== void 0 && _data$versions[latestVersion].entry) return true;
|
|
22
21
|
}
|
|
23
22
|
|
|
24
23
|
return false;
|
|
@@ -90,12 +89,13 @@ function _responseInterceptor() {
|
|
|
90
89
|
|
|
91
90
|
case 12:
|
|
92
91
|
error = new Error();
|
|
92
|
+
error.message = 'responseDataIllegal';
|
|
93
93
|
error.code = '0';
|
|
94
94
|
error.config = config;
|
|
95
95
|
error.response = response;
|
|
96
96
|
throw error;
|
|
97
97
|
|
|
98
|
-
case
|
|
98
|
+
case 18:
|
|
99
99
|
case "end":
|
|
100
100
|
return _context.stop();
|
|
101
101
|
}
|
|
@@ -0,0 +1,22 @@
|
|
|
1
|
+
var globalLocale = 'en_US';
|
|
2
|
+
/**
|
|
3
|
+
* x-X-Y to x_X_Y
|
|
4
|
+
* @param key
|
|
5
|
+
* @returns
|
|
6
|
+
*/
|
|
7
|
+
|
|
8
|
+
var formatLocale = function formatLocale(key) {
|
|
9
|
+
return key === null || key === void 0 ? void 0 : key.replace('-', '_');
|
|
10
|
+
};
|
|
11
|
+
/**
|
|
12
|
+
* getLocale
|
|
13
|
+
* @returns
|
|
14
|
+
*/
|
|
15
|
+
|
|
16
|
+
|
|
17
|
+
export var getLocale = function getLocale(key) {
|
|
18
|
+
var _window, _window$ALIYUN_CONSOL;
|
|
19
|
+
|
|
20
|
+
var locale = formatLocale(key || ((_window = window) === null || _window === void 0 ? void 0 : (_window$ALIYUN_CONSOL = _window.ALIYUN_CONSOLE_CONFIG) === null || _window$ALIYUN_CONSOL === void 0 ? void 0 : _window$ALIYUN_CONSOL.LOCALE));
|
|
21
|
+
return locale || globalLocale;
|
|
22
|
+
};
|
package/es/utils/logger.js
CHANGED
|
@@ -59,7 +59,8 @@ var Logger = /*#__PURE__*/function () {
|
|
|
59
59
|
key: "debug",
|
|
60
60
|
value: function debug(params) {
|
|
61
61
|
// do not log debug message in production env
|
|
62
|
-
if (this.context.
|
|
62
|
+
if (this.context.ENV === 'prod') return; // TODO: debug with devtools
|
|
63
|
+
|
|
63
64
|
console.log('DEBUG', this.mergeData(params));
|
|
64
65
|
}
|
|
65
66
|
}, {
|
|
@@ -80,9 +81,14 @@ var Logger = /*#__PURE__*/function () {
|
|
|
80
81
|
}, {
|
|
81
82
|
key: "track",
|
|
82
83
|
value: function track(method, topic, params) {
|
|
83
|
-
// do not track during development
|
|
84
|
-
|
|
85
|
-
|
|
84
|
+
var data = this.mergeData(params); // do not track during development
|
|
85
|
+
|
|
86
|
+
if (this.context.ENV !== 'prod') {
|
|
87
|
+
console[method](topic, data);
|
|
88
|
+
return;
|
|
89
|
+
}
|
|
90
|
+
|
|
91
|
+
logger[method](topic, data);
|
|
86
92
|
}
|
|
87
93
|
}]);
|
|
88
94
|
|