@next-core/brick-kit 2.108.0 → 2.109.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,17 @@
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.109.0](https://github.com/easyops-cn/next-core/compare/@next-core/brick-kit@2.108.0...@next-core/brick-kit@2.109.0) (2022-03-22)
7
+
8
+
9
+ ### Features
10
+
11
+ * React组件支持调用skd生成的provider ([aced8ff](https://github.com/easyops-cn/next-core/commit/aced8ffc0d05f5f700169ee06525c5a56e309fe3))
12
+
13
+
14
+
15
+
16
+
6
17
  # [2.108.0](https://github.com/easyops-cn/next-core/compare/@next-core/brick-kit@2.107.4...@next-core/brick-kit@2.108.0) (2022-03-18)
7
18
 
8
19
 
@@ -13194,7 +13194,7 @@
13194
13194
  });
13195
13195
  }, {});
13196
13196
 
13197
- var _excluded$1 = ["body"];
13197
+ var _excluded$1 = ["args"];
13198
13198
  function useProviderArgs(providerOrParamsOrGlobalOptions, gloabalOptionsOrDeps, deps) {
13199
13199
  var provider = React.useMemo(() => {
13200
13200
  if (typeof providerOrParamsOrGlobalOptions === "string") {
@@ -13222,13 +13222,13 @@
13222
13222
  return acc;
13223
13223
  }, {}),
13224
13224
  {
13225
- body = null
13225
+ args = null
13226
13226
  } = _reduce,
13227
13227
  restOptions = _objectWithoutProperties__default["default"](_reduce, _excluded$1);
13228
13228
 
13229
13229
  return {
13230
13230
  options: _objectSpread__default["default"]({}, restOptions),
13231
- body
13231
+ args
13232
13232
  };
13233
13233
  }, [options]);
13234
13234
  var dependencies = React.useMemo(() => {
@@ -13255,29 +13255,72 @@
13255
13255
  };
13256
13256
  }
13257
13257
 
13258
- var cache = new Map();
13259
- function fetchProviderArgs(_x) {
13258
+ var cache$1 = new Map();
13259
+ function fetchProviderArgs(_x, _x2) {
13260
13260
  return _fetchProviderArgs.apply(this, arguments);
13261
13261
  }
13262
13262
 
13263
13263
  function _fetchProviderArgs() {
13264
- _fetchProviderArgs = _asyncToGenerator__default["default"](function* (provider) {
13265
- for (var _len = arguments.length, originalArgs = new Array(_len > 1 ? _len - 1 : 0), _key = 1; _key < _len; _key++) {
13266
- originalArgs[_key - 1] = arguments[_key];
13264
+ _fetchProviderArgs = _asyncToGenerator__default["default"](function* (provider, args) {
13265
+ for (var _len = arguments.length, originalArgs = new Array(_len > 2 ? _len - 2 : 0), _key = 2; _key < _len; _key++) {
13266
+ originalArgs[_key - 2] = arguments[_key];
13267
13267
  }
13268
13268
 
13269
13269
  var cacheKey = JSON.stringify({
13270
13270
  provider,
13271
+ args,
13271
13272
  originalArgs
13272
13273
  });
13273
- if (cache.has(cacheKey)) return cache.get(cacheKey);
13274
- var args = yield getArgsOfCustomApi(provider, originalArgs);
13275
- cache.set(cacheKey, args);
13276
- return args;
13274
+ if (cache$1.has(cacheKey)) return cache$1.get(cacheKey);
13275
+ var actualArgs = yield getArgsOfCustomApi(provider, [...args, ...originalArgs]);
13276
+ cache$1.set(cacheKey, actualArgs);
13277
+ return actualArgs;
13277
13278
  });
13278
13279
  return _fetchProviderArgs.apply(this, arguments);
13279
13280
  }
13280
13281
 
13282
+ var cache = new Map();
13283
+ function fetch(_x) {
13284
+ return _fetch.apply(this, arguments);
13285
+ }
13286
+
13287
+ function _fetch() {
13288
+ _fetch = _asyncToGenerator__default["default"](function* (provider) {
13289
+ for (var _len = arguments.length, args = new Array(_len > 1 ? _len - 1 : 0), _key = 1; _key < _len; _key++) {
13290
+ args[_key - 1] = arguments[_key];
13291
+ }
13292
+
13293
+ var cacheKey = JSON.stringify({
13294
+ provider,
13295
+ args
13296
+ });
13297
+ var promise;
13298
+
13299
+ if (cache.has(cacheKey)) {
13300
+ promise = cache.get(cacheKey);
13301
+ } else {
13302
+ promise = _asyncToGenerator__default["default"](function* () {
13303
+ if (!isCustomApiProvider(provider)) {
13304
+ var providerBrick = yield _internalApiGetProviderBrick(provider);
13305
+ var providerTagName = providerBrick.tagName.toLowerCase();
13306
+
13307
+ if (!customElements.get(providerTagName)) {
13308
+ throw new Error("Provider not defined: \"".concat(providerTagName, "\", please make sure the related package is installed."));
13309
+ }
13310
+
13311
+ return providerBrick["resolve"](...args);
13312
+ }
13313
+
13314
+ return CustomApi(...args);
13315
+ })();
13316
+ cache.set(cacheKey, promise);
13317
+ }
13318
+
13319
+ return promise;
13320
+ });
13321
+ return _fetch.apply(this, arguments);
13322
+ }
13323
+
13281
13324
  var _excluded = ["onError", "transform", "suspense"];
13282
13325
  function useProvider() {
13283
13326
  var {
@@ -13306,7 +13349,12 @@
13306
13349
  try {
13307
13350
  error.current = undefined;
13308
13351
  if (!suspense) setLoading(true);
13309
- var newRes = yield CustomApi(...arguments);
13352
+
13353
+ for (var _len = arguments.length, args = new Array(_len), _key = 0; _key < _len; _key++) {
13354
+ args[_key] = arguments[_key];
13355
+ }
13356
+
13357
+ var newRes = yield fetch(provider, ...args);
13310
13358
  response.current = newRes;
13311
13359
  data.current = transform(data.current, newRes);
13312
13360
  } catch (e) {
@@ -13318,25 +13366,25 @@
13318
13366
  return data.current;
13319
13367
  }), [provider, customOptions, dependencies, requestInit, suspense, transform, defaults.data, onError]);
13320
13368
  var makeFetch = React.useCallback( /*#__PURE__*/function () {
13321
- var _ref2 = _asyncToGenerator__default["default"](function* (providerOrBody, body) {
13369
+ var _ref2 = _asyncToGenerator__default["default"](function* (providerOrBody, args) {
13322
13370
  var providerStr = provider;
13323
- var data = {};
13371
+ var providerArgs = [];
13324
13372
 
13325
13373
  if (lodash.isString(providerOrBody)) {
13326
13374
  providerStr = providerOrBody;
13327
13375
  }
13328
13376
 
13329
13377
  if (lodash.isObject(providerOrBody)) {
13330
- data = providerOrBody;
13331
- } else if (lodash.isObject(body)) {
13332
- data = body;
13378
+ providerArgs = providerOrBody;
13379
+ } else if (lodash.isObject(args)) {
13380
+ providerArgs = args;
13333
13381
  }
13334
13382
 
13335
- var args = yield fetchProviderArgs(providerStr, data, requestInit.options);
13383
+ var actualArgs = yield fetchProviderArgs(providerStr, providerArgs, requestInit.options);
13336
13384
 
13337
13385
  if (suspense) {
13338
13386
  return _asyncToGenerator__default["default"](function* () {
13339
- suspender.current = doFetch(...args).then(newData => {
13387
+ suspender.current = doFetch(...actualArgs).then(newData => {
13340
13388
  suspenseStatus.current = "success";
13341
13389
  return newData;
13342
13390
  }, error => {
@@ -13349,7 +13397,7 @@
13349
13397
  })();
13350
13398
  }
13351
13399
 
13352
- return doFetch(...args);
13400
+ return doFetch(...actualArgs);
13353
13401
  });
13354
13402
 
13355
13403
  return function (_x, _x2) {
@@ -13383,7 +13431,7 @@
13383
13431
  mounted.current = true;
13384
13432
 
13385
13433
  if (Array.isArray(dependencies) && provider) {
13386
- request.query(provider, requestInit.body);
13434
+ request.query(provider, requestInit.args);
13387
13435
  }
13388
13436
 
13389
13437
  return () => mounted.current = false;