@next-core/brick-kit 2.147.1 → 2.148.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/CHANGELOG.md CHANGED
@@ -3,6 +3,28 @@
3
3
  All notable changes to this project will be documented in this file.
4
4
  See [Conventional Commits](https://conventionalcommits.org) for commit guidelines.
5
5
 
6
+ # [2.148.0](https://github.com/easyops-cn/next-core/compare/@next-core/brick-kit@2.147.2...@next-core/brick-kit@2.148.0) (2022-10-11)
7
+
8
+
9
+ ### Features
10
+
11
+ * support emit render info ([2bac5d0](https://github.com/easyops-cn/next-core/commit/2bac5d018e265025c69440c63178ea9711cce679))
12
+
13
+
14
+
15
+
16
+
17
+ ## [2.147.2](https://github.com/easyops-cn/next-core/compare/@next-core/brick-kit@2.147.1...@next-core/brick-kit@2.147.2) (2022-10-11)
18
+
19
+
20
+ ### Bug Fixes
21
+
22
+ * **FlowApi:** fix download api without data must pass data argument ([a2fcfc4](https://github.com/easyops-cn/next-core/commit/a2fcfc430f13f1ec385f53eeedfab843ac5adc6b))
23
+
24
+
25
+
26
+
27
+
6
28
  ## [2.147.1](https://github.com/easyops-cn/next-core/compare/@next-core/brick-kit@2.147.0...@next-core/brick-kit@2.147.1) (2022-10-09)
7
29
 
8
30
  **Note:** Version bump only for package @next-core/brick-kit
@@ -6138,12 +6138,12 @@
6138
6138
  function isCustomApiProvider(provider) {
6139
6139
  return provider.includes("@");
6140
6140
  }
6141
- function getArgsOfCustomApi(_x, _x2) {
6141
+ function getArgsOfCustomApi(_x, _x2, _x3) {
6142
6142
  return _getArgsOfCustomApi.apply(this, arguments);
6143
6143
  }
6144
6144
 
6145
6145
  function _getArgsOfCustomApi() {
6146
- _getArgsOfCustomApi = _asyncToGenerator__default["default"](function* (provider, originalArgs) {
6146
+ _getArgsOfCustomApi = _asyncToGenerator__default["default"](function* (provider, originalArgs, method) {
6147
6147
  if (!isCustomApiProvider(provider)) {
6148
6148
  return originalArgs;
6149
6149
  }
@@ -6156,15 +6156,15 @@
6156
6156
  }
6157
6157
 
6158
6158
  var apiProfile = getApiProfileFromApiDefinition(provider, apiDefinition);
6159
- return getApiArgsFromApiProfile(apiProfile, originalArgs);
6159
+ return getApiArgsFromApiProfile(apiProfile, originalArgs, method);
6160
6160
  });
6161
6161
  return _getArgsOfCustomApi.apply(this, arguments);
6162
6162
  }
6163
6163
 
6164
- function getApiArgsFromApiProfile(_ref, originalArgs) {
6164
+ function getApiArgsFromApiProfile(_ref, originalArgs, method) {
6165
6165
  var {
6166
6166
  uri,
6167
- method,
6167
+ method: apiMethod,
6168
6168
  ext_fields,
6169
6169
  name,
6170
6170
  namespace,
@@ -6174,9 +6174,10 @@
6174
6174
  isFileType,
6175
6175
  request
6176
6176
  } = _ref;
6177
+ var isDownload = isFileType && method === "saveAs";
6177
6178
  var fileName;
6178
6179
 
6179
- if (isFileType) {
6180
+ if (isDownload) {
6180
6181
  fileName = originalArgs.shift();
6181
6182
  }
6182
6183
 
@@ -6184,20 +6185,14 @@
6184
6185
  url,
6185
6186
  args
6186
6187
  } = getTransformedUriAndRestArgs(uri, originalArgs, name, namespace, serviceName, version);
6187
- return isFileType ? [fileName, {
6188
+ return [...(isDownload ? [fileName] : []), {
6188
6189
  url,
6189
- method,
6190
- ext_fields,
6191
- responseWrapper: false,
6192
- request
6193
- }, ...args, {
6194
- responseType: "blob"
6195
- }] : [{
6196
- url,
6197
- method,
6190
+ originalUri: uri,
6191
+ method: apiMethod,
6198
6192
  ext_fields,
6199
6193
  responseWrapper,
6200
- request
6194
+ request,
6195
+ isFileType
6201
6196
  }, ...args];
6202
6197
  }
6203
6198
 
@@ -6254,7 +6249,7 @@
6254
6249
  return promise;
6255
6250
  }
6256
6251
 
6257
- function _fetchFlowApiDefinition(_x3) {
6252
+ function _fetchFlowApiDefinition(_x4) {
6258
6253
  return _fetchFlowApiDefinition2.apply(this, arguments);
6259
6254
  }
6260
6255
 
@@ -6868,7 +6863,7 @@
6868
6863
  var computedArgs = argsFactory(handler.args, context, event, options);
6869
6864
 
6870
6865
  if (isUseProviderHandler(handler)) {
6871
- computedArgs = yield getArgsOfCustomApi(handler.useProvider, computedArgs);
6866
+ computedArgs = yield getArgsOfCustomApi(handler.useProvider, computedArgs, method);
6872
6867
  }
6873
6868
 
6874
6869
  return target[method](...computedArgs);
@@ -7297,35 +7292,36 @@
7297
7292
  }
7298
7293
 
7299
7294
  var CUSTOM_API_PROVIDER = "brick-kit.provider-custom-api";
7300
- function processExtFields(ext_fields) {
7301
- var hasFields = type => {
7302
- return ext_fields.some(item => item.source === type);
7303
- };
7304
7295
 
7305
- var hasQueryParams = hasFields("query");
7306
- var HasBodyParams = hasFields("body");
7296
+ function hasFields(ext_fields, type) {
7297
+ return ext_fields.some(item => item.source === type);
7298
+ }
7299
+
7300
+ function processExtFields(ext_fields) {
7301
+ var hasQueryParams = hasFields(ext_fields, "query");
7302
+ var hasBodyParams = hasFields(ext_fields, "body");
7307
7303
 
7308
7304
  for (var _len = arguments.length, args = new Array(_len > 1 ? _len - 1 : 0), _key = 1; _key < _len; _key++) {
7309
7305
  args[_key - 1] = arguments[_key];
7310
7306
  }
7311
7307
 
7312
- if (hasQueryParams && HasBodyParams) {
7313
- var [_data, params, _options] = args;
7314
- return {
7315
- data: _data,
7316
- options: _objectSpread__default["default"]({
7317
- params: params
7318
- }, _options)
7319
- };
7320
- }
7321
-
7322
7308
  if (hasQueryParams) {
7323
- var [_params, _options2] = args;
7309
+ if (hasBodyParams) {
7310
+ var [_data, _params, _options2] = args;
7311
+ return {
7312
+ data: _data,
7313
+ options: _objectSpread__default["default"]({
7314
+ params: _params
7315
+ }, _options2)
7316
+ };
7317
+ }
7318
+
7319
+ var [params, _options] = args;
7324
7320
  return {
7325
7321
  data: {},
7326
7322
  options: _objectSpread__default["default"]({
7327
- params: _params
7328
- }, _options2)
7323
+ params: params
7324
+ }, _options)
7329
7325
  };
7330
7326
  } // only hasBodyParams or default
7331
7327
 
@@ -7394,12 +7390,17 @@
7394
7390
  _CustomApi = _asyncToGenerator__default["default"](function* (_ref2) {
7395
7391
  var {
7396
7392
  url,
7393
+ originalUri,
7397
7394
  method = "GET",
7398
7395
  responseWrapper = true,
7399
7396
  ext_fields = [],
7400
- request
7397
+ request,
7398
+ isFileType
7401
7399
  } = _ref2;
7402
7400
  var isSimpleRequest = ["get", "delete", "head"].includes(method.toLowerCase());
7401
+ var defaultOptions = isFileType ? {
7402
+ responseType: "blob"
7403
+ } : {};
7403
7404
  var response;
7404
7405
 
7405
7406
  for (var _len2 = arguments.length, args = new Array(_len2 > 1 ? _len2 - 1 : 0), _key2 = 1; _key2 < _len2; _key2++) {
@@ -7407,17 +7408,28 @@
7407
7408
  }
7408
7409
 
7409
7410
  if (isSimpleRequest) {
7410
- var [data, options] = args;
7411
- response = yield brickHttp.http.simpleRequest(method, url, _objectSpread__default["default"]({
7412
- params: data
7413
- }, options));
7411
+ var _originalUri$match$le, _originalUri$match, _request$fields$lengt, _request$fields;
7412
+
7413
+ var noParams = originalUri && request ? ((_originalUri$match$le = (_originalUri$match = originalUri.match(/:([^/]+)/g)) === null || _originalUri$match === void 0 ? void 0 : _originalUri$match.length) !== null && _originalUri$match$le !== void 0 ? _originalUri$match$le : 0) === ((_request$fields$lengt = (_request$fields = request.fields) === null || _request$fields === void 0 ? void 0 : _request$fields.length) !== null && _request$fields$lengt !== void 0 ? _request$fields$lengt : 0) : false;
7414
+ var params;
7415
+ var options;
7416
+
7417
+ if (noParams) {
7418
+ [options] = args;
7419
+ } else {
7420
+ [params, options] = args;
7421
+ }
7422
+
7423
+ response = yield brickHttp.http.simpleRequest(method, url, _objectSpread__default["default"](_objectSpread__default["default"]({
7424
+ params
7425
+ }, defaultOptions), options));
7414
7426
  } else {
7415
7427
  var isUploadType = hasFileType(request);
7416
7428
  var result = processExtFields(ext_fields, ...args);
7417
- response = yield brickHttp.http.requestWithBody(method, url, isUploadType ? transformFormData(result.data) : result.data, result.options);
7429
+ response = yield brickHttp.http.requestWithBody(method, url, isUploadType ? transformFormData(result.data) : result.data, _objectSpread__default["default"](_objectSpread__default["default"]({}, defaultOptions), result.options));
7418
7430
  }
7419
7431
 
7420
- return responseWrapper ? response.data : response;
7432
+ return (isFileType ? false : responseWrapper) ? response.data : response;
7421
7433
  });
7422
7434
  return _CustomApi.apply(this, arguments);
7423
7435
  }
@@ -11643,7 +11655,7 @@
11643
11655
  } else {
11644
11656
  promise = _asyncToGenerator__default["default"](function* () {
11645
11657
  if (useProvider) {
11646
- actualArgs = yield getArgsOfCustomApi(useProvider, actualArgs);
11658
+ actualArgs = yield getArgsOfCustomApi(useProvider, actualArgs, method);
11647
11659
  }
11648
11660
 
11649
11661
  return providerBrick[method](...actualArgs);
@@ -12143,7 +12155,8 @@
12143
12155
  }
12144
12156
 
12145
12157
  var history = getHistory();
12146
- history.unblock(); // Create the page tracker before page load.
12158
+ history.unblock();
12159
+ var renderStartTime = performance.now(); // Create the page tracker before page load.
12147
12160
  // And the API Analyzer maybe disabled.
12148
12161
 
12149
12162
  var pageTracker = (_apiAnalyzer$getInsta = easyopsAnalytics.apiAnalyzer.getInstance()) === null || _apiAnalyzer$getInsta === void 0 ? void 0 : _apiAnalyzer$getInsta.pageTracker();
@@ -12381,6 +12394,8 @@
12381
12394
  // we say *page found*, otherwise, *page not found*.
12382
12395
 
12383
12396
  if (route && route.type !== "routes" || failed) {
12397
+ var _this3$kernel$bootstr, _this3$kernel$bootstr2;
12398
+
12384
12399
  main.length > 0 && mountTree(main, mountPoints.main);
12385
12400
  portal.length > 0 && mountTree(portal, mountPoints.portal);
12386
12401
  afterMountTree(mountPoints.main);
@@ -12409,7 +12424,29 @@
12409
12424
  path: locationContext.getCurrentMatch().path,
12410
12425
  username: getAuth().username,
12411
12426
  pageTitle: document.title
12412
- }); // analytics page_view event
12427
+ });
12428
+ var renderTime = performance.now() - renderStartTime;
12429
+ var {
12430
+ loadTime = 0,
12431
+ loadInfoPage
12432
+ } = (_this3$kernel$bootstr = (_this3$kernel$bootstr2 = _this3.kernel.bootstrapData.settings) === null || _this3$kernel$bootstr2 === void 0 ? void 0 : _this3$kernel$bootstr2.misc) !== null && _this3$kernel$bootstr !== void 0 ? _this3$kernel$bootstr : {};
12433
+
12434
+ if (currentApp.isBuildPush && loadTime > 0 && renderTime > loadTime) {
12435
+ var getSecond = time => Math.floor(time * 100) / 100;
12436
+
12437
+ window.dispatchEvent(new CustomEvent("app.bar.tips", {
12438
+ detail: [_objectSpread__default["default"]({
12439
+ text: "\u60A8\u7684\u9875\u9762\u5B58\u5728\u6027\u80FD\u95EE\u9898, \u5F53\u524D\u9875\u9762\u6E32\u67D3\u65F6\u95F4\u4E3A: ".concat(getSecond(renderTime / 1000), " \u79D2, \u89C4\u5B9A\u9608\u503C\u4E3A: ").concat(getSecond(loadTime / 1000), " \u79D2; \u60A8\u5DF2\u8D85\u8FC7, \u8BF7\u60A8\u9488\u5BF9\u8BE5\u9875\u9762\u8FDB\u884C\u6027\u80FD\u4F18\u5316!"),
12440
+ closeable: false
12441
+ }, loadInfoPage ? {
12442
+ info: {
12443
+ label: "查看详情",
12444
+ url: loadInfoPage
12445
+ }
12446
+ } : {})]
12447
+ }));
12448
+ } // analytics page_view event
12449
+
12413
12450
 
12414
12451
  easyopsAnalytics.userAnalytics.event("page_view", _objectSpread__default["default"]({
12415
12452
  micro_app_id: _this3.kernel.currentApp.id,