@alicloud/alfa-react 1.3.3 → 1.4.0-alpha.0
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/index.js +6 -6
- package/es/components/ErrorBoundary/index.js +6 -4
- package/es/createApplication.js +29 -25
- package/es/hooks/beforeLoadHook.js +24 -21
- package/es/hooks/beforeResolveHook.js +5 -14
- package/es/utils/getConsoleConfig.js +5 -11
- package/es/utils/getConsoleGlobal.js +28 -0
- package/es/version.js +1 -1
- package/lib/app.js +1 -1
- package/lib/components/ErrorBoundary/ErrorPanel.d.ts +1 -1
- package/lib/components/ErrorBoundary/index.d.ts +2 -1
- package/lib/components/ErrorBoundary/index.js +6 -4
- package/lib/createApplication.js +30 -25
- package/lib/hooks/beforeLoadHook.js +24 -20
- package/lib/hooks/beforeResolveHook.js +5 -14
- package/lib/types/index.d.ts +1 -0
- package/lib/utils/getConsoleConfig.d.ts +3 -3
- package/lib/utils/getConsoleConfig.js +5 -12
- package/lib/utils/getConsoleGlobal.d.ts +2 -0
- package/lib/utils/getConsoleGlobal.js +41 -0
- package/lib/version.d.ts +1 -1
- package/lib/version.js +1 -1
- package/package.json +3 -3
- package/LICENSE +0 -21
|
@@ -25,7 +25,7 @@ var ErrorBoundary = /*#__PURE__*/function (_React$Component) {
|
|
|
25
25
|
_this = _super.call(this, props);
|
|
26
26
|
_this.state = {
|
|
27
27
|
hasError: false,
|
|
28
|
-
error:
|
|
28
|
+
error: undefined
|
|
29
29
|
};
|
|
30
30
|
return _this;
|
|
31
31
|
}
|
|
@@ -46,8 +46,9 @@ var ErrorBoundary = /*#__PURE__*/function (_React$Component) {
|
|
|
46
46
|
isFunction((_window = window) === null || _window === void 0 ? void 0 : (_window$__bl = _window.__bl) === null || _window$__bl === void 0 ? void 0 : _window$__bl.error) && ((_window2 = window) === null || _window2 === void 0 ? void 0 : (_window2$__bl = _window2.__bl) === null || _window2$__bl === void 0 ? void 0 : _window2$__bl.error(error, errorInfo)); // You can also log the error to an error reporting service in appDidCatch
|
|
47
47
|
|
|
48
48
|
appDidCatch && appDidCatch(error, errorInfo);
|
|
49
|
-
logger === null || logger === void 0 ? void 0 : logger.error({
|
|
50
|
-
|
|
49
|
+
(logger === null || logger === void 0 ? void 0 : logger.error) && logger.error({
|
|
50
|
+
E_CODE: 'RuntimeError',
|
|
51
|
+
E_MSG: error.message,
|
|
51
52
|
E_STACK: error,
|
|
52
53
|
C_STACK: errorInfo
|
|
53
54
|
});
|
|
@@ -58,7 +59,8 @@ var ErrorBoundary = /*#__PURE__*/function (_React$Component) {
|
|
|
58
59
|
var error = this.state.error;
|
|
59
60
|
|
|
60
61
|
if (this.state.hasError) {
|
|
61
|
-
// You can render any custom fallback UI
|
|
62
|
+
if (this.props.fallbackRender) return this.props.fallbackRender(error); // You can render any custom fallback UI
|
|
63
|
+
|
|
62
64
|
return /*#__PURE__*/React.createElement(ErrorPanel, {
|
|
63
65
|
error: error
|
|
64
66
|
});
|
package/es/createApplication.js
CHANGED
|
@@ -11,6 +11,7 @@ function _objectSpread(target) { for (var i = 1; i < arguments.length; i++) { va
|
|
|
11
11
|
import React, { useRef, useEffect, useState, useMemo } from 'react';
|
|
12
12
|
import Loading from './components/Loading';
|
|
13
13
|
import { normalizeName } from './utils';
|
|
14
|
+
import { version as loaderVersion } from './version';
|
|
14
15
|
|
|
15
16
|
/**
|
|
16
17
|
* container for microApp mount
|
|
@@ -44,16 +45,19 @@ export default function createApplication(loader) {
|
|
|
44
45
|
app = _useState2[0],
|
|
45
46
|
setApp = _useState2[1];
|
|
46
47
|
|
|
47
|
-
var appRef = useRef(
|
|
48
|
+
var appRef = useRef(undefined);
|
|
48
49
|
var tagName = normalizeName(props.name);
|
|
49
50
|
var sandbox = useMemo(function () {
|
|
50
51
|
return _objectSpread(_objectSpread({}, customSandbox), {}, {
|
|
52
|
+
// allowResources: [
|
|
53
|
+
// ...(customSandbox?.allowResources || []),
|
|
54
|
+
// /^https?:\/\/at\.alicdn\.com\//,
|
|
55
|
+
// ],
|
|
51
56
|
externalsVars: [].concat(_toConsumableArray((customSandbox === null || customSandbox === void 0 ? void 0 : customSandbox.externalsVars) || []), [// global vars used in ConsoleBase.forApp
|
|
52
57
|
'_console_base_ready_'])
|
|
53
58
|
});
|
|
54
59
|
}, [customSandbox]);
|
|
55
60
|
useEffect(function () {
|
|
56
|
-
// eslint-disable-next-line no-useless-catch
|
|
57
61
|
_asyncToGenerator( /*#__PURE__*/_regeneratorRuntime.mark(function _callee() {
|
|
58
62
|
var _yield$loader$registe, App, logger;
|
|
59
63
|
|
|
@@ -61,15 +65,7 @@ export default function createApplication(loader) {
|
|
|
61
65
|
while (1) {
|
|
62
66
|
switch (_context.prev = _context.next) {
|
|
63
67
|
case 0:
|
|
64
|
-
|
|
65
|
-
_context.next = 2;
|
|
66
|
-
break;
|
|
67
|
-
}
|
|
68
|
-
|
|
69
|
-
return _context.abrupt("return");
|
|
70
|
-
|
|
71
|
-
case 2:
|
|
72
|
-
_context.next = 4;
|
|
68
|
+
_context.next = 2;
|
|
73
69
|
return loader.register({
|
|
74
70
|
entry: entry,
|
|
75
71
|
url: url,
|
|
@@ -89,40 +85,42 @@ export default function createApplication(loader) {
|
|
|
89
85
|
beforeUpdate: beforeUpdate
|
|
90
86
|
});
|
|
91
87
|
|
|
92
|
-
case
|
|
88
|
+
case 2:
|
|
93
89
|
_yield$loader$registe = _context.sent;
|
|
94
90
|
App = _yield$loader$registe.app;
|
|
95
91
|
logger = _yield$loader$registe.logger;
|
|
96
92
|
|
|
97
93
|
if (App) {
|
|
98
|
-
_context.next =
|
|
94
|
+
_context.next = 7;
|
|
99
95
|
break;
|
|
100
96
|
}
|
|
101
97
|
|
|
102
|
-
return _context.abrupt("return", logger === null || logger === void 0 ? void 0 : logger.error({
|
|
98
|
+
return _context.abrupt("return", (logger === null || logger === void 0 ? void 0 : logger.error) && logger.error({
|
|
99
|
+
E_CODE: 'RuntimeError',
|
|
103
100
|
E_MSG: 'load app failed.'
|
|
104
101
|
}));
|
|
105
102
|
|
|
106
|
-
case
|
|
103
|
+
case 7:
|
|
107
104
|
if (appRef.current) {
|
|
108
|
-
_context.next =
|
|
105
|
+
_context.next = 9;
|
|
109
106
|
break;
|
|
110
107
|
}
|
|
111
108
|
|
|
112
|
-
return _context.abrupt("return", logger === null || logger === void 0 ? void 0 : logger.error({
|
|
109
|
+
return _context.abrupt("return", (logger === null || logger === void 0 ? void 0 : logger.error) && logger.error({
|
|
110
|
+
E_CODE: 'RuntimeError',
|
|
113
111
|
E_MSG: 'cannot find container.'
|
|
114
112
|
}));
|
|
115
113
|
|
|
116
|
-
case
|
|
117
|
-
_context.next =
|
|
114
|
+
case 9:
|
|
115
|
+
_context.next = 11;
|
|
118
116
|
return App.mount(appRef.current, {
|
|
119
117
|
customProps: customProps
|
|
120
118
|
});
|
|
121
119
|
|
|
122
|
-
case
|
|
120
|
+
case 11:
|
|
123
121
|
setApp(App);
|
|
124
122
|
|
|
125
|
-
case
|
|
123
|
+
case 12:
|
|
126
124
|
case "end":
|
|
127
125
|
return _context.stop();
|
|
128
126
|
}
|
|
@@ -141,15 +139,21 @@ export default function createApplication(loader) {
|
|
|
141
139
|
app.update(customProps);
|
|
142
140
|
}
|
|
143
141
|
|
|
142
|
+
var dataAttrs = {
|
|
143
|
+
'data-id': version,
|
|
144
|
+
'data-version': version,
|
|
145
|
+
'data-loader': loaderVersion
|
|
146
|
+
};
|
|
144
147
|
return /*#__PURE__*/React.createElement(React.Fragment, null, !app ? /*#__PURE__*/React.createElement(Loading, {
|
|
145
148
|
loading: loading
|
|
146
|
-
}) : null, sandbox && sandbox.disableFakeBody ? /*#__PURE__*/React.createElement(tagName, {
|
|
149
|
+
}) : null, sandbox && sandbox.disableFakeBody ? /*#__PURE__*/React.createElement(tagName, _objectSpread({
|
|
147
150
|
style: style,
|
|
148
151
|
className: className,
|
|
149
|
-
ref: appRef,
|
|
150
|
-
dataId: name
|
|
151
|
-
}) : /*#__PURE__*/React.createElement(tagName, {}, /*#__PURE__*/React.createElement('div', {
|
|
152
152
|
ref: appRef
|
|
153
|
+
}, dataAttrs)) : /*#__PURE__*/React.createElement(tagName, _objectSpread({}, dataAttrs), /*#__PURE__*/React.createElement('div', {
|
|
154
|
+
ref: appRef,
|
|
155
|
+
style: style,
|
|
156
|
+
className: className
|
|
153
157
|
})));
|
|
154
158
|
};
|
|
155
159
|
}
|
|
@@ -7,8 +7,9 @@ function ownKeys(object, enumerableOnly) { var keys = Object.keys(object); if (O
|
|
|
7
7
|
|
|
8
8
|
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; }
|
|
9
9
|
|
|
10
|
-
import { getLocale } from '@alicloud/alfa-core';
|
|
11
|
-
import { getConsoleConfig } from '../utils/getConsoleConfig';
|
|
10
|
+
import { getConfig, getLocale } from '@alicloud/alfa-core';
|
|
11
|
+
import { getConsoleConfig } from '../utils/getConsoleConfig';
|
|
12
|
+
import { getConsoleGlobal } from '../utils/getConsoleGlobal'; // inject consoleConfig & locales after load
|
|
12
13
|
|
|
13
14
|
function afterLoadHook(_x) {
|
|
14
15
|
return _afterLoadHook.apply(this, arguments);
|
|
@@ -16,7 +17,7 @@ function afterLoadHook(_x) {
|
|
|
16
17
|
|
|
17
18
|
function _afterLoadHook() {
|
|
18
19
|
_afterLoadHook = _asyncToGenerator( /*#__PURE__*/_regeneratorRuntime.mark(function _callee(appConfig) {
|
|
19
|
-
var app, logger, defaultConsoleConfig, CONFIG_START_TIME, _yield$Promise$all
|
|
20
|
+
var app, logger, defaultConsoleConfig, defaultConsoleGlobal, CONFIG_START_TIME, configData, _yield$Promise$all, _yield$Promise$all2, consoleConfig, consoleGlobal, messages, CONFIG_END_TIME, i18nMessages, END_TIME;
|
|
20
21
|
|
|
21
22
|
return _regeneratorRuntime.wrap(function _callee$(_context) {
|
|
22
23
|
while (1) {
|
|
@@ -24,39 +25,41 @@ function _afterLoadHook() {
|
|
|
24
25
|
case 0:
|
|
25
26
|
app = appConfig.app, logger = appConfig.logger;
|
|
26
27
|
defaultConsoleConfig = window.ALIYUN_CONSOLE_CONFIG || {};
|
|
28
|
+
defaultConsoleGlobal = window.ALIYUN_CONSOLE_GLOBAL || {};
|
|
27
29
|
CONFIG_START_TIME = Date.now();
|
|
28
|
-
_context.next =
|
|
29
|
-
return
|
|
30
|
-
|
|
31
|
-
|
|
32
|
-
|
|
33
|
-
|
|
34
|
-
|
|
35
|
-
});
|
|
30
|
+
_context.next = 6;
|
|
31
|
+
return getConfig(appConfig);
|
|
32
|
+
|
|
33
|
+
case 6:
|
|
34
|
+
configData = _context.sent;
|
|
35
|
+
_context.next = 9;
|
|
36
|
+
return Promise.all([getConsoleConfig(configData, defaultConsoleConfig), getConsoleGlobal(configData, defaultConsoleGlobal), getLocale(appConfig)]);
|
|
36
37
|
|
|
37
|
-
case
|
|
38
|
-
_yield$Promise$all
|
|
39
|
-
_yield$Promise$
|
|
40
|
-
consoleConfig = _yield$Promise$
|
|
41
|
-
|
|
38
|
+
case 9:
|
|
39
|
+
_yield$Promise$all = _context.sent;
|
|
40
|
+
_yield$Promise$all2 = _slicedToArray(_yield$Promise$all, 3);
|
|
41
|
+
consoleConfig = _yield$Promise$all2[0];
|
|
42
|
+
consoleGlobal = _yield$Promise$all2[1];
|
|
43
|
+
messages = _yield$Promise$all2[2];
|
|
42
44
|
CONFIG_END_TIME = Date.now();
|
|
43
|
-
i18nMessages = _objectSpread(_objectSpread({}, window.ALIYUN_CONSOLE_I18N_MESSAGE), messages);
|
|
45
|
+
i18nMessages = _objectSpread(_objectSpread({}, window.ALIYUN_CONSOLE_I18N_MESSAGE), messages); // inject global variables
|
|
44
46
|
|
|
45
47
|
if (app && app.context) {
|
|
46
48
|
app.context.window.ALIYUN_CONSOLE_CONFIG = consoleConfig;
|
|
47
|
-
app.context.window.
|
|
49
|
+
app.context.window.ALIYUN_CONSOLE_GLOBAL = consoleGlobal;
|
|
50
|
+
app.context.window.ALIYUN_CONSOLE_I18N_MESSAGE = i18nMessages;
|
|
48
51
|
}
|
|
49
52
|
|
|
50
53
|
END_TIME = Date.now();
|
|
51
|
-
logger === null || logger === void 0 ? void 0 : logger.record({
|
|
54
|
+
(logger === null || logger === void 0 ? void 0 : logger.record) && logger.record({
|
|
52
55
|
CONFIG_START_TIME: CONFIG_START_TIME,
|
|
53
56
|
CONFIG_END_TIME: CONFIG_END_TIME,
|
|
54
57
|
END_TIME: END_TIME
|
|
55
58
|
});
|
|
56
|
-
logger === null || logger === void 0 ? void 0 : logger.send();
|
|
59
|
+
(logger === null || logger === void 0 ? void 0 : logger.send) && logger.send();
|
|
57
60
|
return _context.abrupt("return", appConfig);
|
|
58
61
|
|
|
59
|
-
case
|
|
62
|
+
case 21:
|
|
60
63
|
case "end":
|
|
61
64
|
return _context.stop();
|
|
62
65
|
}
|
|
@@ -10,30 +10,21 @@ function beforeResolveHook(_x) {
|
|
|
10
10
|
|
|
11
11
|
function _beforeResolveHook() {
|
|
12
12
|
_beforeResolveHook = _asyncToGenerator( /*#__PURE__*/_regeneratorRuntime.mark(function _callee(appConfig) {
|
|
13
|
-
var
|
|
13
|
+
var logger, START_TIME, MANIFEST_START_TIME, resolvedManifest, MANIFEST_END_TIME;
|
|
14
14
|
return _regeneratorRuntime.wrap(function _callee$(_context) {
|
|
15
15
|
while (1) {
|
|
16
16
|
switch (_context.prev = _context.next) {
|
|
17
17
|
case 0:
|
|
18
|
-
resolvedManifest = appConfig.manifest;
|
|
19
18
|
logger = appConfig.logger;
|
|
20
19
|
START_TIME = Date.now();
|
|
21
20
|
MANIFEST_START_TIME = Date.now();
|
|
22
|
-
|
|
23
|
-
if (resolvedManifest) {
|
|
24
|
-
_context.next = 8;
|
|
25
|
-
break;
|
|
26
|
-
}
|
|
27
|
-
|
|
28
|
-
_context.next = 7;
|
|
21
|
+
_context.next = 5;
|
|
29
22
|
return getManifest(appConfig);
|
|
30
23
|
|
|
31
|
-
case
|
|
24
|
+
case 5:
|
|
32
25
|
resolvedManifest = _context.sent;
|
|
33
|
-
|
|
34
|
-
case 8:
|
|
35
26
|
MANIFEST_END_TIME = Date.now();
|
|
36
|
-
logger === null || logger === void 0 ? void 0 : logger.record({
|
|
27
|
+
(logger === null || logger === void 0 ? void 0 : logger.record) && logger.record({
|
|
37
28
|
LOADER_VERSION: LOADER_VERSION,
|
|
38
29
|
START_TIME: START_TIME,
|
|
39
30
|
MANIFEST_START_TIME: MANIFEST_START_TIME,
|
|
@@ -42,7 +33,7 @@ function _beforeResolveHook() {
|
|
|
42
33
|
appConfig.manifest = resolvedManifest;
|
|
43
34
|
return _context.abrupt("return", appConfig);
|
|
44
35
|
|
|
45
|
-
case
|
|
36
|
+
case 10:
|
|
46
37
|
case "end":
|
|
47
38
|
return _context.stop();
|
|
48
39
|
}
|
|
@@ -6,7 +6,6 @@ function ownKeys(object, enumerableOnly) { var keys = Object.keys(object); if (O
|
|
|
6
6
|
|
|
7
7
|
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; }
|
|
8
8
|
|
|
9
|
-
import { getConfig } from '@alicloud/alfa-core';
|
|
10
9
|
import md5 from 'crypto-js/md5';
|
|
11
10
|
/**
|
|
12
11
|
* transform
|
|
@@ -14,12 +13,13 @@ import md5 from 'crypto-js/md5';
|
|
|
14
13
|
*/
|
|
15
14
|
|
|
16
15
|
var processFeatures = function processFeatures(features) {
|
|
16
|
+
if (!features) return {};
|
|
17
17
|
return Object.keys(features).reduce(function (newFeatures, key) {
|
|
18
18
|
var _ALIYUN_CONSOLE_CONFI;
|
|
19
19
|
|
|
20
|
-
var feature = features[key];
|
|
20
|
+
var feature = features === null || features === void 0 ? void 0 : features[key];
|
|
21
21
|
if (!feature) return newFeatures;
|
|
22
|
-
var uid = ((_ALIYUN_CONSOLE_CONFI = window.ALIYUN_CONSOLE_CONFIG) === null || _ALIYUN_CONSOLE_CONFI === void 0 ? void 0 : _ALIYUN_CONSOLE_CONFI.
|
|
22
|
+
var uid = ((_ALIYUN_CONSOLE_CONFI = window.ALIYUN_CONSOLE_CONFIG) === null || _ALIYUN_CONSOLE_CONFI === void 0 ? void 0 : _ALIYUN_CONSOLE_CONFI.MAIN_ACCOUNT_PK) || '';
|
|
23
23
|
var md5Uid = md5(uid).toString();
|
|
24
24
|
var enableBlockList = feature.enableBlockList,
|
|
25
25
|
enableSampling = feature.enableSampling,
|
|
@@ -59,20 +59,14 @@ var mergeConfigDataWithConsoleConfig = function mergeConfigDataWithConsoleConfig
|
|
|
59
59
|
};
|
|
60
60
|
|
|
61
61
|
export var getConsoleConfig = /*#__PURE__*/function () {
|
|
62
|
-
var _ref = _asyncToGenerator( /*#__PURE__*/_regeneratorRuntime.mark(function _callee(
|
|
63
|
-
var configData;
|
|
62
|
+
var _ref = _asyncToGenerator( /*#__PURE__*/_regeneratorRuntime.mark(function _callee(configData, consoleConfig) {
|
|
64
63
|
return _regeneratorRuntime.wrap(function _callee$(_context) {
|
|
65
64
|
while (1) {
|
|
66
65
|
switch (_context.prev = _context.next) {
|
|
67
66
|
case 0:
|
|
68
|
-
_context.next = 2;
|
|
69
|
-
return getConfig(config);
|
|
70
|
-
|
|
71
|
-
case 2:
|
|
72
|
-
configData = _context.sent;
|
|
73
67
|
return _context.abrupt("return", mergeConfigDataWithConsoleConfig(configData, consoleConfig));
|
|
74
68
|
|
|
75
|
-
case
|
|
69
|
+
case 1:
|
|
76
70
|
case "end":
|
|
77
71
|
return _context.stop();
|
|
78
72
|
}
|
|
@@ -0,0 +1,28 @@
|
|
|
1
|
+
import _defineProperty from "@babel/runtime/helpers/esm/defineProperty";
|
|
2
|
+
import _asyncToGenerator from "@babel/runtime/helpers/esm/asyncToGenerator";
|
|
3
|
+
import _regeneratorRuntime from "@babel/runtime/regenerator";
|
|
4
|
+
|
|
5
|
+
function ownKeys(object, enumerableOnly) { var keys = Object.keys(object); if (Object.getOwnPropertySymbols) { var symbols = Object.getOwnPropertySymbols(object); enumerableOnly && (symbols = symbols.filter(function (sym) { return Object.getOwnPropertyDescriptor(object, sym).enumerable; })), keys.push.apply(keys, symbols); } return keys; }
|
|
6
|
+
|
|
7
|
+
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; }
|
|
8
|
+
|
|
9
|
+
export var getConsoleGlobal = /*#__PURE__*/function () {
|
|
10
|
+
var _ref = _asyncToGenerator( /*#__PURE__*/_regeneratorRuntime.mark(function _callee(configData, global) {
|
|
11
|
+
return _regeneratorRuntime.wrap(function _callee$(_context) {
|
|
12
|
+
while (1) {
|
|
13
|
+
switch (_context.prev = _context.next) {
|
|
14
|
+
case 0:
|
|
15
|
+
return _context.abrupt("return", _objectSpread(_objectSpread({}, global), configData === null || configData === void 0 ? void 0 : configData.GLOBAL_DATA));
|
|
16
|
+
|
|
17
|
+
case 1:
|
|
18
|
+
case "end":
|
|
19
|
+
return _context.stop();
|
|
20
|
+
}
|
|
21
|
+
}
|
|
22
|
+
}, _callee);
|
|
23
|
+
}));
|
|
24
|
+
|
|
25
|
+
return function getConsoleGlobal(_x, _x2) {
|
|
26
|
+
return _ref.apply(this, arguments);
|
|
27
|
+
};
|
|
28
|
+
}();
|
package/es/version.js
CHANGED
|
@@ -1 +1 @@
|
|
|
1
|
-
export var version = '1.
|
|
1
|
+
export var version = '1.4.0-alpha.0';
|
package/lib/app.js
CHANGED
|
@@ -80,7 +80,7 @@ var Application = function Application(props) {
|
|
|
80
80
|
app = _useState4[0],
|
|
81
81
|
setApp = _useState4[1];
|
|
82
82
|
|
|
83
|
-
var appRef = (0, _react.useRef)(
|
|
83
|
+
var appRef = (0, _react.useRef)(undefined);
|
|
84
84
|
(0, _react.useEffect)(function () {
|
|
85
85
|
(0, _asyncToGenerator2.default)( /*#__PURE__*/_regenerator.default.mark(function _callee() {
|
|
86
86
|
var App;
|
|
@@ -1,12 +1,13 @@
|
|
|
1
1
|
import React, { ErrorInfo } from 'react';
|
|
2
2
|
import { AlfaLogger } from '@alicloud/alfa-core';
|
|
3
3
|
interface IProps {
|
|
4
|
+
fallbackRender?: (error?: Error) => Element;
|
|
4
5
|
appDidCatch?: (error?: Error, info?: ErrorInfo) => void;
|
|
5
6
|
logger?: AlfaLogger;
|
|
6
7
|
}
|
|
7
8
|
interface State {
|
|
8
9
|
hasError: boolean;
|
|
9
|
-
error
|
|
10
|
+
error?: Error;
|
|
10
11
|
}
|
|
11
12
|
declare class ErrorBoundary extends React.Component<IProps, State> {
|
|
12
13
|
constructor(props: IProps);
|
|
@@ -39,7 +39,7 @@ var ErrorBoundary = /*#__PURE__*/function (_React$Component) {
|
|
|
39
39
|
_this = _super.call(this, props);
|
|
40
40
|
_this.state = {
|
|
41
41
|
hasError: false,
|
|
42
|
-
error:
|
|
42
|
+
error: undefined
|
|
43
43
|
};
|
|
44
44
|
return _this;
|
|
45
45
|
}
|
|
@@ -60,8 +60,9 @@ var ErrorBoundary = /*#__PURE__*/function (_React$Component) {
|
|
|
60
60
|
(0, _isFunction.default)((_window = window) === null || _window === void 0 ? void 0 : (_window$__bl = _window.__bl) === null || _window$__bl === void 0 ? void 0 : _window$__bl.error) && ((_window2 = window) === null || _window2 === void 0 ? void 0 : (_window2$__bl = _window2.__bl) === null || _window2$__bl === void 0 ? void 0 : _window2$__bl.error(error, errorInfo)); // You can also log the error to an error reporting service in appDidCatch
|
|
61
61
|
|
|
62
62
|
appDidCatch && appDidCatch(error, errorInfo);
|
|
63
|
-
logger === null || logger === void 0 ? void 0 : logger.error({
|
|
64
|
-
|
|
63
|
+
(logger === null || logger === void 0 ? void 0 : logger.error) && logger.error({
|
|
64
|
+
E_CODE: 'RuntimeError',
|
|
65
|
+
E_MSG: error.message,
|
|
65
66
|
E_STACK: error,
|
|
66
67
|
C_STACK: errorInfo
|
|
67
68
|
});
|
|
@@ -72,7 +73,8 @@ var ErrorBoundary = /*#__PURE__*/function (_React$Component) {
|
|
|
72
73
|
var error = this.state.error;
|
|
73
74
|
|
|
74
75
|
if (this.state.hasError) {
|
|
75
|
-
// You can render any custom fallback UI
|
|
76
|
+
if (this.props.fallbackRender) return this.props.fallbackRender(error); // You can render any custom fallback UI
|
|
77
|
+
|
|
76
78
|
return /*#__PURE__*/_react.default.createElement(_ErrorPanel.default, {
|
|
77
79
|
error: error
|
|
78
80
|
});
|
package/lib/createApplication.js
CHANGED
|
@@ -25,6 +25,8 @@ var _Loading = _interopRequireDefault(require("./components/Loading"));
|
|
|
25
25
|
|
|
26
26
|
var _utils = require("./utils");
|
|
27
27
|
|
|
28
|
+
var _version = require("./version");
|
|
29
|
+
|
|
28
30
|
function _getRequireWildcardCache(nodeInterop) { if (typeof WeakMap !== "function") return null; var cacheBabelInterop = new WeakMap(); var cacheNodeInterop = new WeakMap(); return (_getRequireWildcardCache = function _getRequireWildcardCache(nodeInterop) { return nodeInterop ? cacheNodeInterop : cacheBabelInterop; })(nodeInterop); }
|
|
29
31
|
|
|
30
32
|
function _interopRequireWildcard(obj, nodeInterop) { if (!nodeInterop && obj && obj.__esModule) { return obj; } if (obj === null || _typeof(obj) !== "object" && typeof obj !== "function") { return { default: obj }; } var cache = _getRequireWildcardCache(nodeInterop); if (cache && cache.has(obj)) { return cache.get(obj); } var newObj = {}; var hasPropertyDescriptor = Object.defineProperty && Object.getOwnPropertyDescriptor; for (var key in obj) { if (key !== "default" && Object.prototype.hasOwnProperty.call(obj, key)) { var desc = hasPropertyDescriptor ? Object.getOwnPropertyDescriptor(obj, key) : null; if (desc && (desc.get || desc.set)) { Object.defineProperty(newObj, key, desc); } else { newObj[key] = obj[key]; } } } newObj.default = obj; if (cache) { cache.set(obj, newObj); } return newObj; }
|
|
@@ -65,16 +67,19 @@ function createApplication(loader) {
|
|
|
65
67
|
app = _useState2[0],
|
|
66
68
|
setApp = _useState2[1];
|
|
67
69
|
|
|
68
|
-
var appRef = (0, _react.useRef)(
|
|
70
|
+
var appRef = (0, _react.useRef)(undefined);
|
|
69
71
|
var tagName = (0, _utils.normalizeName)(props.name);
|
|
70
72
|
var sandbox = (0, _react.useMemo)(function () {
|
|
71
73
|
return _objectSpread(_objectSpread({}, customSandbox), {}, {
|
|
74
|
+
// allowResources: [
|
|
75
|
+
// ...(customSandbox?.allowResources || []),
|
|
76
|
+
// /^https?:\/\/at\.alicdn\.com\//,
|
|
77
|
+
// ],
|
|
72
78
|
externalsVars: [].concat((0, _toConsumableArray2.default)((customSandbox === null || customSandbox === void 0 ? void 0 : customSandbox.externalsVars) || []), [// global vars used in ConsoleBase.forApp
|
|
73
79
|
'_console_base_ready_'])
|
|
74
80
|
});
|
|
75
81
|
}, [customSandbox]);
|
|
76
82
|
(0, _react.useEffect)(function () {
|
|
77
|
-
// eslint-disable-next-line no-useless-catch
|
|
78
83
|
(0, _asyncToGenerator2.default)( /*#__PURE__*/_regenerator.default.mark(function _callee() {
|
|
79
84
|
var _yield$loader$registe, App, logger;
|
|
80
85
|
|
|
@@ -82,15 +87,7 @@ function createApplication(loader) {
|
|
|
82
87
|
while (1) {
|
|
83
88
|
switch (_context.prev = _context.next) {
|
|
84
89
|
case 0:
|
|
85
|
-
|
|
86
|
-
_context.next = 2;
|
|
87
|
-
break;
|
|
88
|
-
}
|
|
89
|
-
|
|
90
|
-
return _context.abrupt("return");
|
|
91
|
-
|
|
92
|
-
case 2:
|
|
93
|
-
_context.next = 4;
|
|
90
|
+
_context.next = 2;
|
|
94
91
|
return loader.register({
|
|
95
92
|
entry: entry,
|
|
96
93
|
url: url,
|
|
@@ -110,40 +107,42 @@ function createApplication(loader) {
|
|
|
110
107
|
beforeUpdate: beforeUpdate
|
|
111
108
|
});
|
|
112
109
|
|
|
113
|
-
case
|
|
110
|
+
case 2:
|
|
114
111
|
_yield$loader$registe = _context.sent;
|
|
115
112
|
App = _yield$loader$registe.app;
|
|
116
113
|
logger = _yield$loader$registe.logger;
|
|
117
114
|
|
|
118
115
|
if (App) {
|
|
119
|
-
_context.next =
|
|
116
|
+
_context.next = 7;
|
|
120
117
|
break;
|
|
121
118
|
}
|
|
122
119
|
|
|
123
|
-
return _context.abrupt("return", logger === null || logger === void 0 ? void 0 : logger.error({
|
|
120
|
+
return _context.abrupt("return", (logger === null || logger === void 0 ? void 0 : logger.error) && logger.error({
|
|
121
|
+
E_CODE: 'RuntimeError',
|
|
124
122
|
E_MSG: 'load app failed.'
|
|
125
123
|
}));
|
|
126
124
|
|
|
127
|
-
case
|
|
125
|
+
case 7:
|
|
128
126
|
if (appRef.current) {
|
|
129
|
-
_context.next =
|
|
127
|
+
_context.next = 9;
|
|
130
128
|
break;
|
|
131
129
|
}
|
|
132
130
|
|
|
133
|
-
return _context.abrupt("return", logger === null || logger === void 0 ? void 0 : logger.error({
|
|
131
|
+
return _context.abrupt("return", (logger === null || logger === void 0 ? void 0 : logger.error) && logger.error({
|
|
132
|
+
E_CODE: 'RuntimeError',
|
|
134
133
|
E_MSG: 'cannot find container.'
|
|
135
134
|
}));
|
|
136
135
|
|
|
137
|
-
case
|
|
138
|
-
_context.next =
|
|
136
|
+
case 9:
|
|
137
|
+
_context.next = 11;
|
|
139
138
|
return App.mount(appRef.current, {
|
|
140
139
|
customProps: customProps
|
|
141
140
|
});
|
|
142
141
|
|
|
143
|
-
case
|
|
142
|
+
case 11:
|
|
144
143
|
setApp(App);
|
|
145
144
|
|
|
146
|
-
case
|
|
145
|
+
case 12:
|
|
147
146
|
case "end":
|
|
148
147
|
return _context.stop();
|
|
149
148
|
}
|
|
@@ -161,15 +160,21 @@ function createApplication(loader) {
|
|
|
161
160
|
app.update(customProps);
|
|
162
161
|
}
|
|
163
162
|
|
|
163
|
+
var dataAttrs = {
|
|
164
|
+
'data-id': version,
|
|
165
|
+
'data-version': version,
|
|
166
|
+
'data-loader': _version.version
|
|
167
|
+
};
|
|
164
168
|
return /*#__PURE__*/_react.default.createElement(_react.default.Fragment, null, !app ? /*#__PURE__*/_react.default.createElement(_Loading.default, {
|
|
165
169
|
loading: loading
|
|
166
|
-
}) : null, sandbox && sandbox.disableFakeBody ? /*#__PURE__*/_react.default.createElement(tagName, {
|
|
170
|
+
}) : null, sandbox && sandbox.disableFakeBody ? /*#__PURE__*/_react.default.createElement(tagName, _objectSpread({
|
|
167
171
|
style: style,
|
|
168
172
|
className: className,
|
|
169
|
-
ref: appRef,
|
|
170
|
-
dataId: name
|
|
171
|
-
}) : /*#__PURE__*/_react.default.createElement(tagName, {}, /*#__PURE__*/_react.default.createElement('div', {
|
|
172
173
|
ref: appRef
|
|
174
|
+
}, dataAttrs)) : /*#__PURE__*/_react.default.createElement(tagName, _objectSpread({}, dataAttrs), /*#__PURE__*/_react.default.createElement('div', {
|
|
175
|
+
ref: appRef,
|
|
176
|
+
style: style,
|
|
177
|
+
className: className
|
|
173
178
|
})));
|
|
174
179
|
};
|
|
175
180
|
}
|
|
@@ -19,6 +19,8 @@ var _alfaCore = require("@alicloud/alfa-core");
|
|
|
19
19
|
|
|
20
20
|
var _getConsoleConfig = require("../utils/getConsoleConfig");
|
|
21
21
|
|
|
22
|
+
var _getConsoleGlobal = require("../utils/getConsoleGlobal");
|
|
23
|
+
|
|
22
24
|
function ownKeys(object, enumerableOnly) { var keys = Object.keys(object); if (Object.getOwnPropertySymbols) { var symbols = Object.getOwnPropertySymbols(object); enumerableOnly && (symbols = symbols.filter(function (sym) { return Object.getOwnPropertyDescriptor(object, sym).enumerable; })), keys.push.apply(keys, symbols); } return keys; }
|
|
23
25
|
|
|
24
26
|
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) { (0, _defineProperty2.default)(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; }
|
|
@@ -30,7 +32,7 @@ function afterLoadHook(_x) {
|
|
|
30
32
|
|
|
31
33
|
function _afterLoadHook() {
|
|
32
34
|
_afterLoadHook = (0, _asyncToGenerator2.default)( /*#__PURE__*/_regenerator.default.mark(function _callee(appConfig) {
|
|
33
|
-
var app, logger, defaultConsoleConfig, CONFIG_START_TIME, _yield$Promise$all
|
|
35
|
+
var app, logger, defaultConsoleConfig, defaultConsoleGlobal, CONFIG_START_TIME, configData, _yield$Promise$all, _yield$Promise$all2, consoleConfig, consoleGlobal, messages, CONFIG_END_TIME, i18nMessages, END_TIME;
|
|
34
36
|
|
|
35
37
|
return _regenerator.default.wrap(function _callee$(_context) {
|
|
36
38
|
while (1) {
|
|
@@ -38,39 +40,41 @@ function _afterLoadHook() {
|
|
|
38
40
|
case 0:
|
|
39
41
|
app = appConfig.app, logger = appConfig.logger;
|
|
40
42
|
defaultConsoleConfig = window.ALIYUN_CONSOLE_CONFIG || {};
|
|
43
|
+
defaultConsoleGlobal = window.ALIYUN_CONSOLE_GLOBAL || {};
|
|
41
44
|
CONFIG_START_TIME = Date.now();
|
|
42
|
-
_context.next =
|
|
43
|
-
return
|
|
44
|
-
|
|
45
|
-
|
|
46
|
-
|
|
47
|
-
|
|
48
|
-
|
|
49
|
-
|
|
50
|
-
|
|
51
|
-
|
|
52
|
-
_yield$Promise$
|
|
53
|
-
|
|
54
|
-
|
|
55
|
-
messages = _yield$Promise$
|
|
45
|
+
_context.next = 6;
|
|
46
|
+
return (0, _alfaCore.getConfig)(appConfig);
|
|
47
|
+
|
|
48
|
+
case 6:
|
|
49
|
+
configData = _context.sent;
|
|
50
|
+
_context.next = 9;
|
|
51
|
+
return Promise.all([(0, _getConsoleConfig.getConsoleConfig)(configData, defaultConsoleConfig), (0, _getConsoleGlobal.getConsoleGlobal)(configData, defaultConsoleGlobal), (0, _alfaCore.getLocale)(appConfig)]);
|
|
52
|
+
|
|
53
|
+
case 9:
|
|
54
|
+
_yield$Promise$all = _context.sent;
|
|
55
|
+
_yield$Promise$all2 = (0, _slicedToArray2.default)(_yield$Promise$all, 3);
|
|
56
|
+
consoleConfig = _yield$Promise$all2[0];
|
|
57
|
+
consoleGlobal = _yield$Promise$all2[1];
|
|
58
|
+
messages = _yield$Promise$all2[2];
|
|
56
59
|
CONFIG_END_TIME = Date.now();
|
|
57
|
-
i18nMessages = _objectSpread(_objectSpread({}, window.ALIYUN_CONSOLE_I18N_MESSAGE), messages);
|
|
60
|
+
i18nMessages = _objectSpread(_objectSpread({}, window.ALIYUN_CONSOLE_I18N_MESSAGE), messages); // inject global variables
|
|
58
61
|
|
|
59
62
|
if (app && app.context) {
|
|
60
63
|
app.context.window.ALIYUN_CONSOLE_CONFIG = consoleConfig;
|
|
61
|
-
app.context.window.
|
|
64
|
+
app.context.window.ALIYUN_CONSOLE_GLOBAL = consoleGlobal;
|
|
65
|
+
app.context.window.ALIYUN_CONSOLE_I18N_MESSAGE = i18nMessages;
|
|
62
66
|
}
|
|
63
67
|
|
|
64
68
|
END_TIME = Date.now();
|
|
65
|
-
logger === null || logger === void 0 ? void 0 : logger.record({
|
|
69
|
+
(logger === null || logger === void 0 ? void 0 : logger.record) && logger.record({
|
|
66
70
|
CONFIG_START_TIME: CONFIG_START_TIME,
|
|
67
71
|
CONFIG_END_TIME: CONFIG_END_TIME,
|
|
68
72
|
END_TIME: END_TIME
|
|
69
73
|
});
|
|
70
|
-
logger === null || logger === void 0 ? void 0 : logger.send();
|
|
74
|
+
(logger === null || logger === void 0 ? void 0 : logger.send) && logger.send();
|
|
71
75
|
return _context.abrupt("return", appConfig);
|
|
72
76
|
|
|
73
|
-
case
|
|
77
|
+
case 21:
|
|
74
78
|
case "end":
|
|
75
79
|
return _context.stop();
|
|
76
80
|
}
|