@cloudbase/functions 3.0.0 → 3.0.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/index.js CHANGED
@@ -66,14 +66,14 @@ var COMPONENT_NAME = 'functions';
66
66
  var CloudbaseFunctions = (function () {
67
67
  function CloudbaseFunctions() {
68
68
  }
69
- CloudbaseFunctions.prototype.callFunction = function (options, callback) {
70
- var _a, _b;
69
+ CloudbaseFunctions.prototype.callFunction = function (options, callback, customReqOpts) {
70
+ var _a, _b, _c;
71
71
  return __awaiter(this, void 0, void 0, function () {
72
- var name, data, query, parse, search, type, _c, path, method, _d, header, jsonData, requestId, result, action, params, request, res, result, e_1;
73
- return __generator(this, function (_e) {
74
- switch (_e.label) {
72
+ var name, data, query, parse, search, type, _d, path, method, _e, header, jsonData, requestId, result, _f, request, config, action, params, res, response, result, e_1;
73
+ return __generator(this, function (_g) {
74
+ switch (_g.label) {
75
75
  case 0:
76
- name = options.name, data = options.data, query = options.query, parse = options.parse, search = options.search, type = options.type, _c = options.path, path = _c === void 0 ? '' : _c, method = options.method, _d = options.header, header = _d === void 0 ? {} : _d;
76
+ name = options.name, data = options.data, query = options.query, parse = options.parse, search = options.search, type = options.type, _d = options.path, path = _d === void 0 ? '' : _d, method = options.method, _e = options.header, header = _e === void 0 ? {} : _e;
77
77
  if (!name) {
78
78
  throw new Error(JSON.stringify({
79
79
  code: ERRORS.INVALID_PARAMS,
@@ -99,12 +99,13 @@ var CloudbaseFunctions = (function () {
99
99
  header: __assign(__assign({}, header), { 'X-Request-Id': requestId }),
100
100
  })];
101
101
  case 1:
102
- result = _e.sent();
102
+ result = _g.sent();
103
103
  return [2, {
104
104
  result: result,
105
105
  requestId: requestId,
106
106
  }];
107
107
  case 2:
108
+ _f = this, request = _f.request, config = _f.config;
108
109
  action = 'functions.invokeFunction';
109
110
  params = {
110
111
  inQuery: query,
@@ -113,20 +114,34 @@ var CloudbaseFunctions = (function () {
113
114
  function_name: name,
114
115
  request_data: jsonData,
115
116
  };
116
- request = this.request;
117
- _e.label = 3;
117
+ res = {};
118
+ _g.label = 3;
118
119
  case 3:
119
- _e.trys.push([3, 5, , 6]);
120
- return [4, request.send(action, params, {
121
- defaultQuery: ((_a = data === null || data === void 0 ? void 0 : data.params) === null || _a === void 0 ? void 0 : _a.action) ? { action: (_b = data === null || data === void 0 ? void 0 : data.params) === null || _b === void 0 ? void 0 : _b.action } : {},
122
- })];
120
+ _g.trys.push([3, 8, , 9]);
121
+ if (!(config.endPointMode === 'GATEWAY')) return [3, 5];
122
+ return [4, request.gateWay(__assign(__assign({}, options), { path: 'functions' }), customReqOpts)];
123
123
  case 4:
124
- res = _e.sent();
124
+ response = _g.sent();
125
+ res = __assign({ requestId: response.requestId }, (((_a = response.data) === null || _a === void 0 ? void 0 : _a.code)
126
+ ? response.data
127
+ : {
128
+ data: {
129
+ response_data: response.data,
130
+ },
131
+ }));
132
+ return [3, 7];
133
+ case 5: return [4, request.send(action, params, {
134
+ defaultQuery: ((_b = data === null || data === void 0 ? void 0 : data.params) === null || _b === void 0 ? void 0 : _b.action) ? { action: (_c = data === null || data === void 0 ? void 0 : data.params) === null || _c === void 0 ? void 0 : _c.action } : {},
135
+ }, customReqOpts)];
136
+ case 6:
137
+ res = _g.sent();
138
+ _g.label = 7;
139
+ case 7:
125
140
  if (res.code) {
126
141
  return [2, execCallback(callback, null, res)];
127
142
  }
128
143
  result = res.data.response_data;
129
- if (parse) {
144
+ if (parse || config.endPointMode === 'GATEWAY') {
130
145
  return [2, execCallback(callback, null, {
131
146
  result: result,
132
147
  requestId: res.requestId,
@@ -142,12 +157,12 @@ var CloudbaseFunctions = (function () {
142
157
  catch (e) {
143
158
  execCallback(callback, new Error("[".concat(getSdkName(), "][").concat(ERRORS.INVALID_PARAMS, "][").concat(COMPONENT_NAME, ".callFunction] response data must be json")));
144
159
  }
145
- return [3, 6];
146
- case 5:
147
- e_1 = _e.sent();
160
+ return [3, 9];
161
+ case 8:
162
+ e_1 = _g.sent();
148
163
  execCallback(callback, e_1);
149
- return [3, 6];
150
- case 6: return [2];
164
+ return [3, 9];
165
+ case 9: return [2];
151
166
  }
152
167
  });
153
168
  });
@@ -168,7 +183,7 @@ var CloudbaseFunctions = (function () {
168
183
  ],
169
184
  }),
170
185
  __metadata("design:type", Function),
171
- __metadata("design:paramtypes", [Object, Function]),
186
+ __metadata("design:paramtypes", [Object, Function, Object]),
172
187
  __metadata("design:returntype", Promise)
173
188
  ], CloudbaseFunctions.prototype, "callFunction", null);
174
189
  return CloudbaseFunctions;
@@ -193,4 +208,4 @@ function registerFunctions(app) {
193
208
  }
194
209
  }
195
210
  exports.registerFunctions = registerFunctions;
196
- //# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoiaW5kZXguanMiLCJzb3VyY2VSb290IjoiIiwic291cmNlcyI6WyIuLi8uLi9zcmMvaW5kZXgudHMiXSwibmFtZXMiOltdLCJtYXBwaW5ncyI6Ijs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7QUFHQSxrREFBZ0U7QUFDaEUsZ0RBQXNEO0FBSTlDLElBQUEsVUFBVSxHQUFpQyxxQkFBUyxXQUExQyxFQUFFLE1BQU0sR0FBeUIscUJBQVMsT0FBbEMsRUFBRSxrQkFBa0IsR0FBSyxxQkFBUyxtQkFBZCxDQUFjO0FBQ3BELElBQUEsWUFBWSxHQUFLLGlCQUFLLGFBQVYsQ0FBVTtBQUN0QixJQUFBLG9CQUFvQixHQUFLLG1CQUFPLHFCQUFaLENBQVk7QUFFeEMsSUFBTSxjQUFjLEdBQUcsV0FBVyxDQUFBO0FBRWxDO0lBQUE7SUE2RkEsQ0FBQztJQTlFYyx5Q0FBWSxHQUFaLFVBQWEsT0FBNkIsRUFBRSxRQUFtQjs7Ozs7Ozt3QkFDbEUsSUFBSSxHQUF1RSxPQUFPLEtBQTlFLEVBQUUsSUFBSSxHQUFpRSxPQUFPLEtBQXhFLEVBQUUsS0FBSyxHQUEwRCxPQUFPLE1BQWpFLEVBQUUsS0FBSyxHQUFtRCxPQUFPLE1BQTFELEVBQUUsTUFBTSxHQUEyQyxPQUFPLE9BQWxELEVBQUUsSUFBSSxHQUFxQyxPQUFPLEtBQTVDLEVBQUUsS0FBbUMsT0FBTyxLQUFqQyxFQUFULElBQUksbUJBQUcsRUFBRSxLQUFBLEVBQUUsTUFBTSxHQUFrQixPQUFPLE9BQXpCLEVBQUUsS0FBZ0IsT0FBTyxPQUFaLEVBQVgsTUFBTSxtQkFBRyxFQUFFLEtBQUEsQ0FBWTt3QkFFMUYsSUFBSSxDQUFDLElBQUksRUFBRTs0QkFDVCxNQUFNLElBQUksS0FBSyxDQUFDLElBQUksQ0FBQyxTQUFTLENBQUM7Z0NBQzdCLElBQUksRUFBRSxNQUFNLENBQUMsY0FBYztnQ0FDM0IsR0FBRyxFQUFFLFdBQUksY0FBYyx5Q0FBc0M7NkJBQzlELENBQUMs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LFdBQVc7Z0JBQ3RCLFVBQVUsRUFBRSxjQUFjO2FBQzNCO1lBQ0QsS0FBSyxFQUFFLFFBQVE7WUFDZixRQUFRLEVBQUU7Z0JBQ1IsVUFBVTtnQkFDVixvQ0FBb0M7Z0JBQ3BDLG9CQUFvQjtnQkFDcEIsMkJBQTJCO2dCQUMzQixzS0FBNkIsa0JBQWtCLENBQUU7YUFDbEQ7U0FDRixDQUFDOztpREFDa0UsUUFBUTs7MERBNkUzRTtJQUNILHlCQUFDO0NBQUEsQUE3RkQsSUE2RkM7QUFFRCxJQUFNLGtCQUFrQixHQUFHLElBQUksa0JBQWtCLEVBQUUsQ0FBQTtBQUVuRCxJQUFNLFNBQVMsR0FBd0I7SUFDckMsSUFBSSxFQUFFLGNBQWM7SUFDcEIsTUFBTSxFQUFFO1FBQ04sWUFBWSxFQUFFLGtCQUFrQixDQUFDLFlBQVk7S0FDOUM7Q0FDRixDQUFBO0FBQ0QsSUFBSTtJQUNGLFNBQVMsQ0FBQyxpQkFBaUIsQ0FBQyxTQUFTLENBQUMsQ0FBQTtDQUN2QztBQUFDLE9BQU8sQ0FBQyxFQUFFLEdBQUU7QUFFZCxTQUFnQixpQkFBaUIsQ0FBQyxHQUEwQztJQUMxRSxJQUFJO1FBQ0YsR0FBRyxDQUFDLGlCQUFpQixDQUFDLFNBQVMsQ0FBQyxDQUFBO0tBQ2pDO0lBQUMsT0FBTyxDQUFDLEVBQUU7UUFDVixPQUFPLENBQUMsSUFBSSxDQUFDLENBQUMsQ0FBQyxDQUFBO0tBQ2hCO0FBQ0gsQ0FBQztBQU5ELDhDQU1DIiwic291cmNlc0NvbnRlbnQiOlsiaW1wb3J0IHsgSUNsb3VkYmFzZSB9IGZyb20gJ0BjbG91ZGJhc2UvdHlwZXMnXG5pbXBvcnQgeyBJQ2xvdWRiYXNlQ29tcG9uZW50IH0gZnJvbSAnQGNsb3VkYmFzZS90eXBlcy9jb21wb25lbnQnXG5pbXBvcnQgeyBJQ2FsbEZ1bmN0aW9uT3B0aW9ucyB9IGZyb20gJ0BjbG91ZGJhc2UvdHlwZXMvZnVuY3Rpb25zJ1xuaW1wb3J0IHsgY29uc3RhbnRzLCB1dGlscywgaGVscGVycyB9IGZyb20gJ0BjbG91ZGJhc2UvdXRpbGl0aWVzJ1xuaW1wb3J0IHsgcmVxdWVzdENvbnRhaW5lciB9IGZyb20gJ0BjbG91ZGJhc2UvY2xvdWRydW4nXG5cbmRlY2xhcmUgY29uc3QgY2xvdWRiYXNlOiBJQ2xvdWRiYXNlXG5cbmNvbnN0IHsgZ2V0U2RrTmFtZSwgRVJST1JTLCBDT01NVU5JVFlfU0lURV9VUkwgfSA9IGNvbnN0YW50c1xuY29uc3QgeyBleGVjQ2FsbGJhY2sgfSA9IHV0aWxzXG5jb25zdCB7IGNhdGNoRXJyb3JzRGVjb3JhdG9yIH0gPSBoZWxwZXJzXG5cbmNvbnN0IENPTVBPTkVOVF9OQU1FID0gJ2Z1bmN0aW9ucydcblxuY2xhc3MgQ2xvdWRiYXNlRnVuY3Rpb25zIHtcbiAgQGNhdGNoRXJyb3JzRGVjb3JhdG9yKHtcbiAgICBjdXN0b21JbmZvOiB7XG4gICAgICBjbGFzc05hbWU6ICdDbG91ZGJhc2UnLFxuICAgICAgbWV0aG9kTmFtZTogJ2NhbGxGdW5jdGlvbicsXG4gICAgfSxcbiAgICB0aXRsZTogJ+WHveaVsOiwg+eUqOWksei0pScsXG4gICAgbWVzc2FnZXM6IFtcbiAgICAgICfor7fnoa7orqTku6XkuIvlkITpobnvvJonLFxuICAgICAgJyAgMSAtIOiwg+eUqCBjYWxsRnVuY3Rpb24oKSDnmoTor63ms5XmiJblj4LmlbDmmK/lkKbmraPnoa4nLFxuICAgICAgJyAgMiAtIOW9k+WJjeeOr+Wig+S4i+aYr+WQpuWtmOWcqOatpOWHveaVsCcsXG4gICAgICAnICAzIC0g5Ye95pWw5a6J5YWo6KeE5YiZ5piv5ZCm6ZmQ5Yi25LqG5b2T5YmN55m75b2V54q25oCB6K6/6ZeuJyxcbiAgICAgIGDlpoLmnpzpl67popjkvp3nhLblrZjlnKjvvIzlu7rorq7liLDlrpjmlrnpl67nrZTnpL7ljLrmj5Dpl67miJblr7vmib7luK7liqnvvJoke0NPTU1VTklUWV9TSVRFX1VSTH1gLFxuICAgIF0sXG4gIH0pXG4gIHB1YmxpYyBhc3luYyBjYWxsRnVuY3Rpb24ob3B0aW9uczogSUNhbGxGdW5jdGlvbk9wdGlvbnMsIGNhbGxiYWNrPzogRnVuY3Rpb24pIHtcbiAgICBjb25zdCB7IG5hbWUsIGRhdGEsIHF1ZXJ5LCBwYXJzZSwgc2VhcmNoLCB0eXBlLCBwYXRoID0gJycsIG1ldGhvZCwgaGVhZGVyID0ge30gfSA9IG9wdGlvbnNcblxuICAgIGlmICghbmFtZSkge1xuICAgICAgdGhyb3cgbmV3IEVycm9yKEpTT04uc3RyaW5naWZ5KHtcbiAgICAgICAgY29kZTogRVJST1JTLklOVkFMSURfUEFSQU1TLFxuICAgICAgICBtc2c6IGBbJHtDT01QT05FTlRfTkFNRX0uY2FsbEZ1bmN0aW9uXSBpbnZhbGlkIGZ1bmN0aW9uIG5hbWVgLFxuICAgICAgfSksKVxuICAgIH1cbiAgICBsZXQganNvbkRhdGFcbiAgICB0cnkge1xuICAgICAganNvbkRhdGEgPSBkYXRhID8gSlNPTi5zdHJpbmdpZnkoZGF0YSkgOiAnJ1xuICAgIH0gY2F0Y2ggKGUpIHtcbiAgICAgIHRocm93IG5ldyBFcnJvcihKU09OLnN0cmluZ2lmeSh7XG4gICAgICAgIGNvZGU6IEVSUk9SUy5JTlZBTElEX1BBUkFNUyxcbiAgICAgICAgbXNnOiBgWyR7Q09NUE9ORU5UX05BTUV9LmNhbGxGdW5jdGlvbl0gaW52YWxpZCBkYXRhYCxcbiAgICAgIH0pLClcbiAgICB9XG5cbiAgICBpZiAodHlwZSA9PT0gJ2Nsb3VkcnVuJykge1xuICAgICAgY29uc3QgcmVxdWVzdElkID0gdXRpbHMuZ2VuZXJhdGVSZXF1ZXN0SWQoKVxuICAgICAgY29uc3QgcmVzdWx0ID0gYXdhaXQgcmVxdWVzdENvbnRhaW5lci5jYWxsKHRoaXMsIHtcbiAgICAgICAgbmFtZSxcbiAgICAgICAgZGF0YToganNvbkRhdGEsXG4gICAgICAgIHBhdGgsXG4gICAgICAgIG1ldGhvZCxcbiAgICAgICAgaGVhZGVyOiB7IC4uLmhlYWRlciwgJ1gtUmVxdWVzdC1JZCc6IHJlcXVlc3RJZCB9LFxuICAgICAgfSlcblxuICAgICAgcmV0dXJuIHtcbiAgICAgICAgcmVzdWx0LFxuICAgICAgICByZXF1ZXN0SWQsXG4gICAgICB9XG4gICAgfVxuXG4gICAgY29uc3QgYWN0aW9uID0gJ2Z1bmN0aW9ucy5pbnZva2VGdW5jdGlvbidcblxuICAgIGNvbnN0IHBhcmFtcyA9IHtcbiAgICAgIGluUXVlcnk6IHF1ZXJ5LFxuICAgICAgcGFyc2UsXG4gICAgICBzZWFyY2gsXG4gICAgICBmdW5jdGlvbl9uYW1lOiBuYW1lLFxuICAgICAgcmVxdWVzdF9kYXRhOiBqc29uRGF0YSxcbiAgICB9XG4gICAgLy8gQHRzLWlnbm9yZVxuICAgIGNvbnN0IHsgcmVxdWVzdCB9ID0gdGhpc1xuXG4gICAgdHJ5IHtcbiAgICAgIGNvbnN0IHJlcyA9IGF3YWl0IHJlcXVlc3Quc2VuZChhY3Rpb24sIHBhcmFtcywge1xuICAgICAgICBkZWZhdWx0UXVlcnk6IGRhdGE/LnBhcmFtcz8uYWN0aW9uID8geyBhY3Rpb246IGRhdGE/LnBhcmFtcz8uYWN0aW9uIH0gOiB7fSxcbiAgICAgIH0pXG4gICAgICBpZiAocmVzLmNvZGUpIHtcbiAgICAgICAgcmV0dXJuIGV4ZWNDYWxsYmFjayhjYWxsYmFjaywgbnVsbCwgcmVzKVxuICAgICAgfVxuICAgICAgbGV0IHJlc3VsdCA9IHJlcy5kYXRhLnJlc3BvbnNlX2RhdGFcbiAgICAgIC8vIHBhcnNlIOS4uiB0cnVlIOaXtuacjeWKoeerr+ino+aekCBKU09O77yMU0RLIOS4jeWGjeasoeino+aekFxuICAgICAgaWYgKHBhcnNlKSB7XG4gICAgICAgIHJldHVybiBleGVjQ2FsbGJhY2soY2FsbGJhY2ssIG51bGwsIHtcbiAgICAgICAgICByZXN1bHQsXG4gICAgICAgICAgcmVxdWVzdElkOiByZXMucmVxdWVzdElkLFxuICAgICAgICB9KVxuICAgICAgfVxuICAgICAgdHJ5IHtcbiAgICAgICAgcmVzdWx0ID0gSlNPTi5wYXJzZShyZXMuZGF0YS5yZXNwb25zZV9kYXRhKVxuICAgICAgICByZXR1cm4gZXhlY0NhbGxiYWNrKGNhbGxiYWNrLCBudWxsLCB7XG4gICAgICAgICAgcmVzdWx0LFxuICAgICAgICAgIHJlcXVlc3RJZDogcmVzLnJlcXVlc3RJZCxcbiAgICAgICAgfSlcbiAgICAgIH0gY2F0Y2ggKGUpIHtcbiAgICAgICAgZXhlY0NhbGxiYWNrKFxuICAgICAgICAgIGNhbGxiYWNrLFxuICAgICAgICAgIG5ldyBFcnJvcihgWyR7Z2V0U2RrTmFtZSgpfV1bJHtFUlJPUlMuSU5WQUxJRF9QQVJBTVN9XVske0NPTVBPTkVOVF9OQU1FfS5jYWxsRnVuY3Rpb25dIHJlc3BvbnNlIGRhdGEgbXVzdCBiZSBqc29uYCwpLFxuICAgICAgICApXG4gICAgICB9XG4gICAgfSBjYXRjaCAoZSkge1xuICAgICAgZXhlY0NhbGxiYWNrKGNhbGxiYWNrLCBlKVxuICAgIH1cbiAgfVxufVxuXG5jb25zdCBjbG91ZGJhc2VGdW5jdGlvbnMgPSBuZXcgQ2xvdWRiYXNlRnVuY3Rpb25zKClcblxuY29uc3QgY29tcG9uZW50OiBJQ2xvdWRiYXNlQ29tcG9uZW50ID0ge1xuICBuYW1lOiBDT01QT05FTlRfTkFNRSxcbiAgZW50aXR5OiB7XG4gICAgY2FsbEZ1bmN0aW9uOiBjbG91ZGJhc2VGdW5jdGlvbnMuY2FsbEZ1bmN0aW9uLFxuICB9LFxufVxudHJ5IHtcbiAgY2xvdWRiYXNlLnJlZ2lzdGVyQ29tcG9uZW50KGNvbXBvbmVudClcbn0gY2F0Y2ggKGUpIHt9XG5cbmV4cG9ydCBmdW5jdGlvbiByZWdpc3RlckZ1bmN0aW9ucyhhcHA6IFBpY2s8SUNsb3VkYmFzZSwgJ3JlZ2lzdGVyQ29tcG9uZW50Jz4pIHtcbiAgdHJ5IHtcbiAgICBhcHAucmVnaXN0ZXJDb21wb25lbnQoY29tcG9uZW50KVxuICB9IGNhdGNoIChlKSB7XG4gICAgY29uc29sZS53YXJuKGUpXG4gIH1cbn1cbiJdfQ==
211
+ //# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoiaW5kZXguanMiLCJzb3VyY2VSb290IjoiIiwic291cmNlcyI6WyIuLi8uLi9zcmMvaW5kZXgudHMiXSwibmFtZXMiOltdLCJtYXBwaW5ncyI6Ijs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7QUFHQSxrREFBZ0U7QUFDaEUsZ0RBQXNEO0FBSTlDLElBQUEsVUFBVSxHQUFpQyxxQkFBUyxXQUExQyxFQUFFLE1BQU0sR0FBeUIscUJBQVMsT0FBbEMsRUFBRSxrQkFBa0IsR0FBSyxxQkFBUyxtQkFBZCxDQUFjO0FBQ3BELElBQUEsWUFBWSxHQUFLLGlCQUFLLGFBQVYsQ0FBVTtBQUN0QixJQUFBLG9CQUFvQixHQUFLLG1CQUFPLHFCQUFaLENBQVk7QUFFeEMsSUFBTSxjQUFjLEdBQUcsV0FBVyxDQUFBO0FBRWxDO0lBQUE7SUFpSEEsQ0FBQztJQWxHYyx5Q0FBWSxHQUFaLFVBQWEsT0FBNkIsRUFBRSxRQUFtQixFQUFFLGFBQThCOzs7Ozs7O3dCQUNsRyxJQUFJLEdBQXVFLE9BQU8sS0FBOUUsRUFBRSxJQUFJLEdBQWlFLE9BQU8sS0FBeEUsRUFBRSxLQUFLLEdBQTBELE9BQU8sTUFBakUsRUFBRSxLQUFLLEdBQW1ELE9BQU8sTUFBMUQsRUFBRSxNQUFNLEdBQTJDLE9BQU8sT0FBbEQsRUFBRSxJQUFJLEdBQXFDLE9BQU8sS0FBNUMsRUFBRSxLQUFtQyxPQUFPLEtBQWpDLEVBQVQsSUFBSSxtQkFBRyxFQUFFLEtBQUEsRUFBRSxNQUFNLEdBQWtCLE9BQU8sT0FBekIsRUFBRSxLQUFnQixPQUFPLE9BQVosRUFBWCxNQUFNLG1CQUFHLEVBQUUsS0FBQSxDQUFZO3dCQUUxRixJQUFJLENBQUMsSUFBSSxFQUFFOzRCQUNULE1BQU0sSUFBSSxLQUFLLENBQUMsSUFBSSxDQUFDLFNBQVMsQ0FBQztnQ0FDN0IsSUFBSSxFQUFFLE1BQU0sQ0FBQyxjQUFjO2dDQUMzQixHQUFHLEVBQUUsV0FBSSxjQUFjLHlDQUFzQzs2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QUMsT0FBTyxDQUFDLEVBQUUsR0FBRTtBQUVkLFNBQWdCLGlCQUFpQixDQUFDLEdBQTBDO0lBQzFFLElBQUk7UUFDRixHQUFHLENBQUMsaUJBQWlCLENBQUMsU0FBUyxDQUFDLENBQUE7S0FDakM7SUFBQyxPQUFPLENBQUMsRUFBRTtRQUNWLE9BQU8sQ0FBQyxJQUFJLENBQUMsQ0FBQyxDQUFDLENBQUE7S0FDaEI7QUFDSCxDQUFDO0FBTkQsOENBTUMiLCJzb3VyY2VzQ29udGVudCI6WyJpbXBvcnQgeyBJQ2xvdWRiYXNlIH0gZnJvbSAnQGNsb3VkYmFzZS90eXBlcydcbmltcG9ydCB7IElDbG91ZGJhc2VDb21wb25lbnQgfSBmcm9tICdAY2xvdWRiYXNlL3R5cGVzL2NvbXBvbmVudCdcbmltcG9ydCB7IElDYWxsRnVuY3Rpb25PcHRpb25zLCBJQ3VzdG9tUmVxT3B0cyB9IGZyb20gJ0BjbG91ZGJhc2UvdHlwZXMvZnVuY3Rpb25zJ1xuaW1wb3J0IHsgY29uc3RhbnRzLCB1dGlscywgaGVscGVycyB9IGZyb20gJ0BjbG91ZGJhc2UvdXRpbGl0aWVzJ1xuaW1wb3J0IHsgcmVxdWVzdENvbnRhaW5lciB9IGZyb20gJ0BjbG91ZGJhc2UvY2xvdWRydW4nXG5cbmRlY2xhcmUgY29uc3QgY2xvdWRiYXNlOiBJQ2xvdWRiYXNlXG5cbmNvbnN0IHsgZ2V0U2RrTmFtZSwgRVJST1JTLCBDT01NVU5JVFlfU0lURV9VUkwgfSA9IGNvbnN0YW50c1xuY29uc3QgeyBleGVjQ2FsbGJhY2sgfSA9IHV0aWxzXG5jb25zdCB7IGNhdGNoRXJyb3JzRGVjb3JhdG9yIH0gPSBoZWxwZXJzXG5cbmNvbnN0IENPTVBPTkVOVF9OQU1FID0gJ2Z1bmN0aW9ucydcblxuY2xhc3MgQ2xvdWRiYXNlRnVuY3Rpb25zIHtcbiAgQGNhdGNoRXJyb3JzRGVjb3JhdG9yKHtcbiAgICBjdXN0b21JbmZvOiB7XG4gICAgICBjbGFzc05hbWU6ICdDbG91ZGJhc2UnLFxuICAgICAgbWV0aG9kTmFtZTogJ2NhbGxGdW5jdGlvbicsXG4gICAgfSxcbiAgICB0aXRsZTogJ+WHveaVsOiwg+eUqOWksei0pScsXG4gICAgbWVzc2FnZXM6IFtcbiAgICAgICfor7fnoa7orqTku6XkuIvlkITpobnvvJonLFxuICAgICAgJyAgMSAtIOiwg+eUqCBjYWxsRnVuY3Rpb24oKSDnmoTor63ms5XmiJblj4LmlbDmmK/lkKbmraPnoa4nLFxuICAgICAgJyAgMiAtIOW9k+WJjeeOr+Wig+S4i+aYr+WQpuWtmOWcqOatpOWHveaVsCcsXG4gICAgICAnICAzIC0g5Ye95pWw5a6J5YWo6KeE5YiZ5piv5ZCm6ZmQ5Yi25LqG5b2T5YmN55m75b2V54q25oCB6K6/6ZeuJyxcbiAgICAgIGDlpoLmnpzpl67popjkvp3nhLblrZjlnKjvvIzlu7rorq7liLDlrpjmlrnpl67nrZTnpL7ljLrmj5Dpl67miJblr7vmib7luK7liqnvvJoke0NPTU1VTklUWV9TSVRFX1VSTH1gLFxuICAgIF0sXG4gIH0pXG4gIHB1YmxpYyBhc3luYyBjYWxsRnVuY3Rpb24ob3B0aW9uczogSUNhbGxGdW5jdGlvbk9wdGlvbnMsIGNhbGxiYWNrPzogRnVuY3Rpb24sIGN1c3RvbVJlcU9wdHM/OiBJQ3VzdG9tUmVxT3B0cykge1xuICAgIGNvbnN0IHsgbmFtZSwgZGF0YSwgcXVlcnksIHBhcnNlLCBzZWFyY2gsIHR5cGUsIHBhdGggPSAnJywgbWV0aG9kLCBoZWFkZXIgPSB7fSB9ID0gb3B0aW9uc1xuXG4gICAgaWYgKCFuYW1lKSB7XG4gICAgICB0aHJvdyBuZXcgRXJyb3IoSlNPTi5zdHJpbmdpZnkoe1xuICAgICAgICBjb2RlOiBFUlJPUlMuSU5WQUxJRF9QQVJBTVMsXG4gICAgICAgIG1zZzogYFske0NPTVBPTkVOVF9OQU1FfS5jYWxsRnVuY3Rpb25dIGludmFsaWQgZnVuY3Rpb24gbmFtZWAsXG4gICAgICB9KSwpXG4gICAgfVxuICAgIGxldCBqc29uRGF0YVxuICAgIHRyeSB7XG4gICAgICBqc29uRGF0YSA9IGRhdGEgPyBKU09OLnN0cmluZ2lmeShkYXRhKSA6ICcnXG4gICAgfSBjYXRjaCAoZSkge1xuICAgICAgdGhyb3cgbmV3IEVycm9yKEpTT04uc3RyaW5naWZ5KHtcbiAgICAgICAgY29kZTogRVJST1JTLklOVkFMSURfUEFSQU1TLFxuICAgICAgICBtc2c6IGBbJHtDT01QT05FTlRfTkFNRX0uY2FsbEZ1bmN0aW9uXSBpbnZhbGlkIGRhdGFgLFxuICAgICAgfSksKVxuICAgIH1cblxuICAgIGlmICh0eXBlID09PSAnY2xvdWRydW4nKSB7XG4gICAgICBjb25zdCByZXF1ZXN0SWQgPSB1dGlscy5nZW5lcmF0ZVJlcXVlc3RJZCgpXG4gICAgICBjb25zdCByZXN1bHQgPSBhd2FpdCByZXF1ZXN0Q29udGFpbmVyLmNhbGwodGhpcywge1xuICAgICAgICBuYW1lLFxuICAgICAgICBkYXRhOiBqc29uRGF0YSxcbiAgICAgICAgcGF0aCxcbiAgICAgICAgbWV0aG9kLFxuICAgICAgICBoZWFkZXI6IHsgLi4uaGVhZGVyLCAnWC1SZXF1ZXN0LUlkJzogcmVxdWVzdElkIH0sXG4gICAgICB9KVxuXG4gICAgICByZXR1cm4ge1xuICAgICAgICByZXN1bHQsXG4gICAgICAgIHJlcXVlc3RJZCxcbiAgICAgIH1cbiAgICB9XG5cbiAgICAvLyBAdHMtaWdub3JlXG4gICAgY29uc3QgeyByZXF1ZXN0LCBjb25maWcgfSA9IHRoaXNcbiAgICBjb25zdCBhY3Rpb24gPSAnZnVuY3Rpb25zLmludm9rZUZ1bmN0aW9uJ1xuICAgIGNvbnN0IHBhcmFtcyA9IHtcbiAgICAgIGluUXVlcnk6IHF1ZXJ5LFxuICAgICAgcGFyc2UsXG4gICAgICBzZWFyY2gsXG4gICAgICBmdW5jdGlvbl9uYW1lOiBuYW1lLFxuICAgICAgcmVxdWVzdF9kYXRhOiBqc29uRGF0YSxcbiAgICB9XG4gICAgbGV0IHJlczogYW55ID0ge31cblxuICAgIHRyeSB7XG4gICAgICBpZiAoY29uZmlnLmVuZFBvaW50TW9kZSA9PT0gJ0dBVEVXQVknKSB7XG4gICAgICAgIGNvbnN0IHJlc3BvbnNlID0gYXdhaXQgcmVxdWVzdC5nYXRlV2F5KHsgLi4ub3B0aW9ucywgcGF0aDogJ2Z1bmN0aW9ucycgfSwgY3VzdG9tUmVxT3B0cylcblxuICAgICAgICByZXMgPSB7XG4gICAgICAgICAgcmVxdWVzdElkOiByZXNwb25zZS5yZXF1ZXN0SWQsXG4gICAgICAgICAgLi4uKHJlc3BvbnNlLmRhdGE/LmNvZGVcbiAgICAgICAgICAgID8gcmVzcG9uc2UuZGF0YVxuICAgICAgICAgICAgOiB7XG4gICAgICAgICAgICAgIGRhdGE6IHtcbiAgICAgICAgICAgICAgICByZXNwb25zZV9kYXRhOiByZXNwb25zZS5kYXRhLFxuICAgICAgICAgICAgICB9LFxuICAgICAgICAgICAgfSksXG4gICAgICAgIH1cbiAgICAgIH0gZWxzZSB7XG4gICAgICAgIHJlcyA9IGF3YWl0IHJlcXVlc3Quc2VuZChcbiAgICAgICAgICBhY3Rpb24sXG4gICAgICAgICAgcGFyYW1zLFxuICAgICAgICAgIHtcbiAgICAgICAgICAgIGRlZmF1bHRRdWVyeTogZGF0YT8ucGFyYW1zPy5hY3Rpb24gPyB7IGFjdGlvbjogZGF0YT8ucGFyYW1zPy5hY3Rpb24gfSA6IHt9LFxuICAgICAgICAgIH0sXG4gICAgICAgICAgY3VzdG9tUmVxT3B0cyxcbiAgICAgICAgKVxuICAgICAgfVxuICAgICAgaWYgKHJlcy5jb2RlKSB7XG4gICAgICAgIHJldHVybiBleGVjQ2FsbGJhY2soY2FsbGJhY2ssIG51bGwsIHJlcylcbiAgICAgIH1cbiAgICAgIGxldCByZXN1bHQgPSByZXMuZGF0YS5yZXNwb25zZV9kYXRhXG4gICAgICAvLyBwYXJzZSDkuLogdHJ1ZSDml7bmnI3liqHnq6/op6PmnpAgSlNPTu+8jFNESyDkuI3lho3mrKHop6PmnpBcbiAgICAgIGlmIChwYXJzZSB8fCBjb25maWcuZW5kUG9pbnRNb2RlID09PSAnR0FURVdBWScpIHtcbiAgICAgICAgcmV0dXJuIGV4ZWNDYWxsYmFjayhjYWxsYmFjaywgbnVsbCwge1xuICAgICAgICAgIHJlc3VsdCxcbiAgICAgICAgICByZXF1ZXN0SWQ6IHJlcy5yZXF1ZXN0SWQsXG4gICAgICAgIH0pXG4gICAgICB9XG4gICAgICB0cnkge1xuICAgICAgICByZXN1bHQgPSBKU09OLnBhcnNlKHJlcy5kYXRhLnJlc3BvbnNlX2RhdGEpXG4gICAgICAgIHJldHVybiBleGVjQ2FsbGJhY2soY2FsbGJhY2ssIG51bGwsIHtcbiAgICAgICAgICByZXN1bHQsXG4gICAgICAgICAgcmVxdWVzdElkOiByZXMucmVxdWVzdElkLFxuICAgICAgICB9KVxuICAgICAgfSBjYXRjaCAoZSkge1xuICAgICAgICBleGVjQ2FsbGJhY2soXG4gICAgICAgICAgY2FsbGJhY2ssXG4gICAgICAgICAgbmV3IEVycm9yKGBbJHtnZXRTZGtOYW1lKCl9XVske0VSUk9SUy5JTlZBTElEX1BBUkFNU31dWyR7Q09NUE9ORU5UX05BTUV9LmNhbGxGdW5jdGlvbl0gcmVzcG9uc2UgZGF0YSBtdXN0IGJlIGpzb25gLCksXG4gICAgICAgIClcbiAgICAgIH1cbiAgICB9IGNhdGNoIChlKSB7XG4gICAgICBleGVjQ2FsbGJhY2soY2FsbGJhY2ssIGUpXG4gICAgfVxuICB9XG59XG5cbmNvbnN0IGNsb3VkYmFzZUZ1bmN0aW9ucyA9IG5ldyBDbG91ZGJhc2VGdW5jdGlvbnMoKVxuXG5jb25zdCBjb21wb25lbnQ6IElDbG91ZGJhc2VDb21wb25lbnQgPSB7XG4gIG5hbWU6IENPTVBPTkVOVF9OQU1FLFxuICBlbnRpdHk6IHtcbiAgICBjYWxsRnVuY3Rpb246IGNsb3VkYmFzZUZ1bmN0aW9ucy5jYWxsRnVuY3Rpb24sXG4gIH0sXG59XG50cnkge1xuICBjbG91ZGJhc2UucmVnaXN0ZXJDb21wb25lbnQoY29tcG9uZW50KVxufSBjYXRjaCAoZSkge31cblxuZXhwb3J0IGZ1bmN0aW9uIHJlZ2lzdGVyRnVuY3Rpb25zKGFwcDogUGljazxJQ2xvdWRiYXNlLCAncmVnaXN0ZXJDb21wb25lbnQnPikge1xuICB0cnkge1xuICAgIGFwcC5yZWdpc3RlckNvbXBvbmVudChjb21wb25lbnQpXG4gIH0gY2F0Y2ggKGUpIHtcbiAgICBjb25zb2xlLndhcm4oZSlcbiAgfVxufVxuIl19
package/dist/esm/index.js CHANGED
@@ -63,14 +63,14 @@ var COMPONENT_NAME = 'functions';
63
63
  var CloudbaseFunctions = (function () {
64
64
  function CloudbaseFunctions() {
65
65
  }
66
- CloudbaseFunctions.prototype.callFunction = function (options, callback) {
67
- var _a, _b;
66
+ CloudbaseFunctions.prototype.callFunction = function (options, callback, customReqOpts) {
67
+ var _a, _b, _c;
68
68
  return __awaiter(this, void 0, void 0, function () {
69
- var name, data, query, parse, search, type, _c, path, method, _d, header, jsonData, requestId, result, action, params, request, res, result, e_1;
70
- return __generator(this, function (_e) {
71
- switch (_e.label) {
69
+ var name, data, query, parse, search, type, _d, path, method, _e, header, jsonData, requestId, result, _f, request, config, action, params, res, response, result, e_1;
70
+ return __generator(this, function (_g) {
71
+ switch (_g.label) {
72
72
  case 0:
73
- name = options.name, data = options.data, query = options.query, parse = options.parse, search = options.search, type = options.type, _c = options.path, path = _c === void 0 ? '' : _c, method = options.method, _d = options.header, header = _d === void 0 ? {} : _d;
73
+ name = options.name, data = options.data, query = options.query, parse = options.parse, search = options.search, type = options.type, _d = options.path, path = _d === void 0 ? '' : _d, method = options.method, _e = options.header, header = _e === void 0 ? {} : _e;
74
74
  if (!name) {
75
75
  throw new Error(JSON.stringify({
76
76
  code: ERRORS.INVALID_PARAMS,
@@ -96,12 +96,13 @@ var CloudbaseFunctions = (function () {
96
96
  header: __assign(__assign({}, header), { 'X-Request-Id': requestId }),
97
97
  })];
98
98
  case 1:
99
- result = _e.sent();
99
+ result = _g.sent();
100
100
  return [2, {
101
101
  result: result,
102
102
  requestId: requestId,
103
103
  }];
104
104
  case 2:
105
+ _f = this, request = _f.request, config = _f.config;
105
106
  action = 'functions.invokeFunction';
106
107
  params = {
107
108
  inQuery: query,
@@ -110,20 +111,34 @@ var CloudbaseFunctions = (function () {
110
111
  function_name: name,
111
112
  request_data: jsonData,
112
113
  };
113
- request = this.request;
114
- _e.label = 3;
114
+ res = {};
115
+ _g.label = 3;
115
116
  case 3:
116
- _e.trys.push([3, 5, , 6]);
117
- return [4, request.send(action, params, {
118
- defaultQuery: ((_a = data === null || data === void 0 ? void 0 : data.params) === null || _a === void 0 ? void 0 : _a.action) ? { action: (_b = data === null || data === void 0 ? void 0 : data.params) === null || _b === void 0 ? void 0 : _b.action } : {},
119
- })];
117
+ _g.trys.push([3, 8, , 9]);
118
+ if (!(config.endPointMode === 'GATEWAY')) return [3, 5];
119
+ return [4, request.gateWay(__assign(__assign({}, options), { path: 'functions' }), customReqOpts)];
120
120
  case 4:
121
- res = _e.sent();
121
+ response = _g.sent();
122
+ res = __assign({ requestId: response.requestId }, (((_a = response.data) === null || _a === void 0 ? void 0 : _a.code)
123
+ ? response.data
124
+ : {
125
+ data: {
126
+ response_data: response.data,
127
+ },
128
+ }));
129
+ return [3, 7];
130
+ case 5: return [4, request.send(action, params, {
131
+ defaultQuery: ((_b = data === null || data === void 0 ? void 0 : data.params) === null || _b === void 0 ? void 0 : _b.action) ? { action: (_c = data === null || data === void 0 ? void 0 : data.params) === null || _c === void 0 ? void 0 : _c.action } : {},
132
+ }, customReqOpts)];
133
+ case 6:
134
+ res = _g.sent();
135
+ _g.label = 7;
136
+ case 7:
122
137
  if (res.code) {
123
138
  return [2, execCallback(callback, null, res)];
124
139
  }
125
140
  result = res.data.response_data;
126
- if (parse) {
141
+ if (parse || config.endPointMode === 'GATEWAY') {
127
142
  return [2, execCallback(callback, null, {
128
143
  result: result,
129
144
  requestId: res.requestId,
@@ -139,12 +154,12 @@ var CloudbaseFunctions = (function () {
139
154
  catch (e) {
140
155
  execCallback(callback, new Error("[".concat(getSdkName(), "][").concat(ERRORS.INVALID_PARAMS, "][").concat(COMPONENT_NAME, ".callFunction] response data must be json")));
141
156
  }
142
- return [3, 6];
143
- case 5:
144
- e_1 = _e.sent();
157
+ return [3, 9];
158
+ case 8:
159
+ e_1 = _g.sent();
145
160
  execCallback(callback, e_1);
146
- return [3, 6];
147
- case 6: return [2];
161
+ return [3, 9];
162
+ case 9: return [2];
148
163
  }
149
164
  });
150
165
  });
@@ -165,7 +180,7 @@ var CloudbaseFunctions = (function () {
165
180
  ],
166
181
  }),
167
182
  __metadata("design:type", Function),
168
- __metadata("design:paramtypes", [Object, Function]),
183
+ __metadata("design:paramtypes", [Object, Function, Object]),
169
184
  __metadata("design:returntype", Promise)
170
185
  ], CloudbaseFunctions.prototype, "callFunction", null);
171
186
  return CloudbaseFunctions;
@@ -189,4 +204,4 @@ export function registerFunctions(app) {
189
204
  console.warn(e);
190
205
  }
191
206
  }
192
- //# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoiaW5kZXguanMiLCJzb3VyY2VSb290IjoiIiwic291cmNlcyI6WyIuLi8uLi9zcmMvaW5kZXgudHMiXSwibmFtZXMiOltdLCJtYXBwaW5ncyI6Ijs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7QUFHQSxPQUFPLEVBQUUsU0FBUyxFQUFFLEtBQUssRUFBRSxPQUFPLEVBQUUsTUFBTSxzQkFBc0IsQ0FBQTtBQUNoRSxPQUFPLEVBQUUsZ0JBQWdCLEVBQUUsTUFBTSxxQkFBcUIsQ0FBQTtBQUk5QyxJQUFBLFVBQVUsR0FBaUMsU0FBUyxXQUExQyxFQUFFLE1BQU0sR0FBeUIsU0FBUyxPQUFsQyxFQUFFLGtCQUFrQixHQUFLLFNBQVMsbUJBQWQsQ0FBYztBQUNwRCxJQUFBLFlBQVksR0FBSyxLQUFLLGFBQVYsQ0FBVTtBQUN0QixJQUFBLG9CQUFvQixHQUFLLE9BQU8scUJBQVosQ0FBWTtBQUV4QyxJQUFNLGNBQWMsR0FBRyxXQUFXLENBQUE7QUFFbEM7SUFBQTtJQTZGQSxDQUFDO0lBOUVjLHlDQUFZLEdBQVosVUFBYSxPQUE2QixFQUFFLFFBQW1COzs7Ozs7O3dCQUNsRSxJQUFJLEdBQXVFLE9BQU8sS0FBOUUsRUFBRSxJQUFJLEdBQWlFLE9BQU8sS0FBeEUsRUFBRSxLQUFLLEdBQTBELE9BQU8sTUFBakUsRUFBRSxLQUFLLEdBQW1ELE9BQU8sTUFBMUQsRUFBRSxNQUFNLEdBQTJDLE9BQU8sT0FBbEQsRUFBRSxJQUFJLEdBQXFDLE9BQU8sS0FBNUMsRUFBRSxLQUFtQyxPQUFPLEtBQWpDLEVBQVQsSUFBSSxtQkFBRyxFQUFFLEtBQUEsRUFBRSxNQUFNLEdBQWtCLE9BQU8sT0FBekIsRUFBRSxLQUFnQixPQUFPLE9BQVosRUFBWCxNQUFNLG1CQUFHLEVBQUUsS0FBQSxDQUFZO3dCQUUxRixJQUFJLENBQUMsSUFBSSxFQUFFOzRCQUNULE1BQU0sSUFBSSxLQUFLLENBQUMsSUFBSSxDQUFDLFNBQVMsQ0FBQztnQ0FDN0IsSUFBSSxFQUFFLE1BQU0sQ0FBQyxjQUFjO2dDQUMzQixHQUFHLEVBQUUsV0FBSSxjQUFjLHlDQUFzQzs2QkFDOUQsQ0FBQyxDQUFFLENBQUE7eUJBQ0w7d0JBRUQsSUFBSTs0QkFDRixRQUFRLEdBQUcsSUFBSSxDQUFDLENBQUMsQ0FBQyxJQUFJLENBQUMsU0FBUyxDQUFDLElBQUksQ0FBQyxDQUFDLENBQUMsQ0FBQyxFQUFFLENBQUE7eUJBQzVDO3dCQUFDLE9BQU8sQ0FBQyxFQUFFOzRCQUNWLE1BQU0sSUFBSSxLQUFLLENBQUMsSUFBSSxDQUFDLFNBQVMsQ0FBQztnQ0FDN0IsSUFBSSxFQUFFLE1BQU0sQ0FBQyxjQUFjO2dDQUMzQixHQUFHLEVBQUUsV0FBSSxjQUFjLGdDQUE2Qjs2QkFDckQsQ0FBQyxDQUFFLENBQUE7eUJBQ0w7NkJBRUcsQ0FBQSxJQUFJLEtBQUssVUFBVSxDQUFBLEVBQW5CLGNBQW1CO3dCQUNmLFNBQVMsR0FBRyxLQUFLLENBQUMsaUJBQWlCLEVBQUUsQ0FBQTt3QkFDNUIsV0FBTSxnQkFBZ0IsQ0FBQyxJQUFJLENBQUMsSUFBSSxFQUFFO2dDQUMvQyxJQUFJLE1BQUE7Z0NBQ0osSUFBSSxFQUFFLFFBQVE7Z0NBQ2QsSUFBSSxNQUFBO2dDQUNKLE1BQU0sUUFBQTtnQ0FDTixNQUFNLHdCQUFPLE1BQU0sS0FBRSxjQUFjLEVBQUUsU0FBUyxHQUFFOzZCQUNqRCxDQUFDLEVBQUE7O3dCQU5JLE1BQU0sR0FBRyxTQU1iO3dCQUVGLFdBQU87Z0NBQ0wsTUFBTSxRQUFBO2dDQUNOLFNBQVMsV0FBQTs2QkFDVixFQUFBOzt3QkFHRyxNQUFNLEdBQUcsMEJBQTBCLENBQUE7d0JBRW5DLE1BQU0sR0FBRzs0QkFDYixPQUFPLEVBQUUsS0FBSzs0QkFDZCxLQUFLLE9BQUE7NEJBQ0wsTUFBTSxRQUFBOzRCQUNOLGFBQWEsRUFBRSxJQUFJOzRCQUNuQixZQUFZLEVBQUUsUUFBUTt5QkFDdkIsQ0FBQTt3QkFFTyxPQUFPLEdBQUssSUFBSSxRQUFULENBQVM7Ozs7d0JBR1YsV0FBTSxPQUFPLENBQUMsSUFBSSxDQUFDLE1BQU0sRUFBRSxNQUFNLEVBQUU7Z0NBQzdDLFlBQVksRUFBRSxDQUFBLE1BQUEsSUFBSSxhQUFKLElBQUksdUJBQUosSUFBSSxDQUFFLE1BQU0sMENBQUUsTUFBTSxFQUFDLENBQUMsQ0FBQyxFQUFFLE1BQU0sRUFBRSxNQUFBLElBQUksYUFBSixJQUFJLHVCQUFKLElBQUksQ0FBRSxNQUFNLDBDQUFFLE1BQU0sRUFBRSxDQUFDLENBQUMsQ0FBQyxFQUFFOzZCQUMzRSxDQUFDLEVBQUE7O3dCQUZJLEdBQUcsR0FBRyxTQUVWO3dCQUNGLElBQUksR0FBRyxDQUFDLElBQUksRUFBRTs0QkFDWixXQUFPLFlBQVksQ0FBQyxRQUFRLEVBQUUsSUFBSSxFQUFFLEdBQUcsQ0FBQyxFQUFBO3lCQUN6Qzt3QkFDRyxNQUFNLEdBQUcsR0FBRyxDQUFDLElBQUksQ0FBQyxhQUFhLENBQUE7d0JBRW5DLElBQUksS0FBSyxFQUFFOzRCQUNULFdBQU8sWUFBWSxDQUFDLFFBQVEsRUFBRSxJQUFJLEVBQUU7b0NBQ2xDLE1BQU0sUUFBQTtvQ0FDTixTQUFTLEVBQUUsR0FBRyxDQUFDLFNBQVM7aUNBQ3pCLENBQUMsRUFBQTt5QkFDSDt3QkFDRCxJQUFJOzRCQUNGLE1BQU0sR0FBRyxJQUFJLENBQUMsS0FBSyxDQUFDLEdBQUcsQ0FBQyxJQUFJLENBQUMsYUFBYSxDQUFDLENBQUE7NEJBQzNDLFdBQU8sWUFBWSxDQUFDLFFBQVEsRUFBRSxJQUFJLEVBQUU7b0NBQ2xDLE1BQU0sUUFBQTtvQ0FDTixTQUFTLEVBQUUsR0FBRyxDQUFDLFNBQVM7aUNBQ3pCLENBQUMsRUFBQTt5QkFDSDt3QkFBQyxPQUFPLENBQUMsRUFBRTs0QkFDVixZQUFZLENBQ1YsUUFBUSxFQUNSLElBQUksS0FBSyxDQUFDLFdBQUksVUFBVSxFQUFFLGVBQUssTUFBTSxDQUFDLGNBQWMsZUFBSyxjQUFjLDhDQUEyQyxDQUFFLENBQ3JILENBQUE7eUJBQ0Y7Ozs7d0JBRUQsWUFBWSxDQUFDLFFBQVEsRUFBRSxHQUFDLENBQUMsQ0FBQTs7Ozs7O0tBRTVCO0lBN0VZO1FBZFosb0JBQW9CLENBQUM7WUFDcEIsVUFBVSxFQUFFO2dCQUNWLFNBQVMsRUFBRSxXQUFXO2dCQUN0QixVQUFVLEVBQUUsY0FBYzthQUMzQjtZQUNELEtBQUssRUFBRSxRQUFRO1lBQ2YsUUFBUSxFQUFFO2dCQUNSLFVBQVU7Z0JBQ1Ysb0NBQW9DO2dCQUNwQyxvQkFBb0I7Z0JBQ3BCLDJCQUEyQjtnQkFDM0Isc0tBQTZCLGtCQUFrQixDQUFFO2FBQ2xEO1NBQ0YsQ0FBQzs7aURBQ2tFLFFBQVE7OzBEQTZFM0U7SUFDSCx5QkFBQztDQUFBLEFBN0ZELElBNkZDO0FBRUQsSUFBTSxrQkFBa0IsR0FBRyxJQUFJLGtCQUFrQixFQUFFLENBQUE7QUFFbkQsSUFBTSxTQUFTLEdBQXdCO0lBQ3JDLElBQUksRUFBRSxjQUFjO0lBQ3BCLE1BQU0sRUFBRTtRQUNOLFlBQVksRUFBRSxrQkFBa0IsQ0FBQyxZQUFZO0tBQzlDO0NBQ0YsQ0FBQTtBQUNELElBQUk7SUFDRixTQUFTLENBQUMsaUJBQWlCLENBQUMsU0FBUyxDQUFDLENBQUE7Q0FDdkM7QUFBQyxPQUFPLENBQUMsRUFBRSxHQUFFO0FBRWQsTUFBTSxVQUFVLGlCQUFpQixDQUFDLEdBQTBDO0lBQzFFLElBQUk7UUFDRixHQUFHLENBQUMsaUJBQWlCLENBQUMsU0FBUyxDQUFDLENBQUE7S0FDakM7SUFBQyxPQUFPLENBQUMsRUFBRTtRQUNWLE9BQU8sQ0FBQyxJQUFJLENBQUMsQ0FBQyxDQUFDLENBQUE7S0FDaEI7QUFDSCxDQUFDIiwic291cmNlc0NvbnRlbnQiOlsiaW1wb3J0IHsgSUNsb3VkYmFzZSB9IGZyb20gJ0BjbG91ZGJhc2UvdHlwZXMnXG5pbXBvcnQgeyBJQ2xvdWRiYXNlQ29tcG9uZW50IH0gZnJvbSAnQGNsb3VkYmFzZS90eXBlcy9jb21wb25lbnQnXG5pbXBvcnQgeyBJQ2FsbEZ1bmN0aW9uT3B0aW9ucyB9IGZyb20gJ0BjbG91ZGJhc2UvdHlwZXMvZnVuY3Rpb25zJ1xuaW1wb3J0IHsgY29uc3RhbnRzLCB1dGlscywgaGVscGVycyB9IGZyb20gJ0BjbG91ZGJhc2UvdXRpbGl0aWVzJ1xuaW1wb3J0IHsgcmVxdWVzdENvbnRhaW5lciB9IGZyb20gJ0BjbG91ZGJhc2UvY2xvdWRydW4nXG5cbmRlY2xhcmUgY29uc3QgY2xvdWRiYXNlOiBJQ2xvdWRiYXNlXG5cbmNvbnN0IHsgZ2V0U2RrTmFtZSwgRVJST1JTLCBDT01NVU5JVFlfU0lURV9VUkwgfSA9IGNvbnN0YW50c1xuY29uc3QgeyBleGVjQ2FsbGJhY2sgfSA9IHV0aWxzXG5jb25zdCB7IGNhdGNoRXJyb3JzRGVjb3JhdG9yIH0gPSBoZWxwZXJzXG5cbmNvbnN0IENPTVBPTkVOVF9OQU1FID0gJ2Z1bmN0aW9ucydcblxuY2xhc3MgQ2xvdWRiYXNlRnVuY3Rpb25zIHtcbiAgQGNhdGNoRXJyb3JzRGVjb3JhdG9yKHtcbiAgICBjdXN0b21JbmZvOiB7XG4gICAgICBjbGFzc05hbWU6ICdDbG91ZGJhc2UnLFxuICAgICAgbWV0aG9kTmFtZTogJ2NhbGxGdW5jdGlvbicsXG4gICAgfSxcbiAgICB0aXRsZTogJ+WHveaVsOiwg+eUqOWksei0pScsXG4gICAgbWVzc2FnZXM6IFtcbiAgICAgICfor7fnoa7orqTku6XkuIvlkITpobnvvJonLFxuICAgICAgJyAgMSAtIOiwg+eUqCBjYWxsRnVuY3Rpb24oKSDnmoTor63ms5XmiJblj4LmlbDmmK/lkKbmraPnoa4nLFxuICAgICAgJyAgMiAtIOW9k+WJjeeOr+Wig+S4i+aYr+WQpuWtmOWcqOatpOWHveaVsCcsXG4gICAgICAnICAzIC0g5Ye95pWw5a6J5YWo6KeE5YiZ5piv5ZCm6ZmQ5Yi25LqG5b2T5YmN55m75b2V54q25oCB6K6/6ZeuJyxcbiAgICAgIGDlpoLmnpzpl67popjkvp3nhLblrZjlnKjvvIzlu7rorq7liLDlrpjmlrnpl67nrZTnpL7ljLrmj5Dpl67miJblr7vmib7luK7liqnvvJoke0NPTU1VTklUWV9TSVRFX1VSTH1gLFxuICAgIF0sXG4gIH0pXG4gIHB1YmxpYyBhc3luYyBjYWxsRnVuY3Rpb24ob3B0aW9uczogSUNhbGxGdW5jdGlvbk9wdGlvbnMsIGNhbGxiYWNrPzogRnVuY3Rpb24pIHtcbiAgICBjb25zdCB7IG5hbWUsIGRhdGEsIHF1ZXJ5LCBwYXJzZSwgc2VhcmNoLCB0eXBlLCBwYXRoID0gJycsIG1ldGhvZCwgaGVhZGVyID0ge30gfSA9IG9wdGlvbnNcblxuICAgIGlmICghbmFtZSkge1xuICAgICAgdGhyb3cgbmV3IEVycm9yKEpTT04uc3RyaW5naWZ5KHtcbiAgICAgICAgY29kZTogRVJST1JTLklOVkFMSURfUEFSQU1TLFxuICAgICAgICBtc2c6IGBbJHtDT01QT05FTlRfTkFNRX0uY2FsbEZ1bmN0aW9uXSBpbnZhbGlkIGZ1bmN0aW9uIG5hbWVgLFxuICAgICAgfSksKVxuICAgIH1cbiAgICBsZXQganNvbkRhdGFcbiAgICB0cnkge1xuICAgICAganNvbkRhdGEgPSBkYXRhID8gSlNPTi5zdHJpbmdpZnkoZGF0YSkgOiAnJ1xuICAgIH0gY2F0Y2ggKGUpIHtcbiAgICAgIHRocm93IG5ldyBFcnJvcihKU09OLnN0cmluZ2lmeSh7XG4gICAgICAgIGNvZGU6IEVSUk9SUy5JTlZBTElEX1BBUkFNUyxcbiAgICAgICAgbXNnOiBgWyR7Q09NUE9ORU5UX05BTUV9LmNhbGxGdW5jdGlvbl0gaW52YWxpZCBkYXRhYCxcbiAgICAgIH0pLClcbiAgICB9XG5cbiAgICBpZiAodHlwZSA9PT0gJ2Nsb3VkcnVuJykge1xuICAgICAgY29uc3QgcmVxdWVzdElkID0gdXRpbHMuZ2VuZXJhdGVSZXF1ZXN0SWQoKVxuICAgICAgY29uc3QgcmVzdWx0ID0gYXdhaXQgcmVxdWVzdENvbnRhaW5lci5jYWxsKHRoaXMsIHtcbiAgICAgICAgbmFtZSxcbiAgICAgICAgZGF0YToganNvbkRhdGEsXG4gICAgICAgIHBhdGgsXG4gICAgICAgIG1ldGhvZCxcbiAgICAgICAgaGVhZGVyOiB7IC4uLmhlYWRlciwgJ1gtUmVxdWVzdC1JZCc6IHJlcXVlc3RJZCB9LFxuICAgICAgfSlcblxuICAgICAgcmV0dXJuIHtcbiAgICAgICAgcmVzdWx0LFxuICAgICAgICByZXF1ZXN0SWQsXG4gICAgICB9XG4gICAgfVxuXG4gICAgY29uc3QgYWN0aW9uID0gJ2Z1bmN0aW9ucy5pbnZva2VGdW5jdGlvbidcblxuICAgIGNvbnN0IHBhcmFtcyA9IHtcbiAgICAgIGluUXVlcnk6IHF1ZXJ5LFxuICAgICAgcGFyc2UsXG4gICAgICBzZWFyY2gsXG4gICAgICBmdW5jdGlvbl9uYW1lOiBuYW1lLFxuICAgICAgcmVxdWVzdF9kYXRhOiBqc29uRGF0YSxcbiAgICB9XG4gICAgLy8gQHRzLWlnbm9yZVxuICAgIGNvbnN0IHsgcmVxdWVzdCB9ID0gdGhpc1xuXG4gICAgdHJ5IHtcbiAgICAgIGNvbnN0IHJlcyA9IGF3YWl0IHJlcXVlc3Quc2VuZChhY3Rpb24sIHBhcmFtcywge1xuICAgICAgICBkZWZhdWx0UXVlcnk6IGRhdGE/LnBhcmFtcz8uYWN0aW9uID8geyBhY3Rpb246IGRhdGE/LnBhcmFtcz8uYWN0aW9uIH0gOiB7fSxcbiAgICAgIH0pXG4gICAgICBpZiAocmVzLmNvZGUpIHtcbiAgICAgICAgcmV0dXJuIGV4ZWNDYWxsYmFjayhjYWxsYmFjaywgbnVsbCwgcmVzKVxuICAgICAgfVxuICAgICAgbGV0IHJlc3VsdCA9IHJlcy5kYXRhLnJlc3BvbnNlX2RhdGFcbiAgICAgIC8vIHBhcnNlIOS4uiB0cnVlIOaXtuacjeWKoeerr+ino+aekCBKU09O77yMU0RLIOS4jeWGjeasoeino+aekFxuICAgICAgaWYgKHBhcnNlKSB7XG4gICAgICAgIHJldHVybiBleGVjQ2FsbGJhY2soY2FsbGJhY2ssIG51bGwsIHtcbiAgICAgICAgICByZXN1bHQsXG4gICAgICAgICAgcmVxdWVzdElkOiByZXMucmVxdWVzdElkLFxuICAgICAgICB9KVxuICAgICAgfVxuICAgICAgdHJ5IHtcbiAgICAgICAgcmVzdWx0ID0gSlNPTi5wYXJzZShyZXMuZGF0YS5yZXNwb25zZV9kYXRhKVxuICAgICAgICByZXR1cm4gZXhlY0NhbGxiYWNrKGNhbGxiYWNrLCBudWxsLCB7XG4gICAgICAgICAgcmVzdWx0LFxuICAgICAgICAgIHJlcXVlc3RJZDogcmVzLnJlcXVlc3RJZCxcbiAgICAgICAgfSlcbiAgICAgIH0gY2F0Y2ggKGUpIHtcbiAgICAgICAgZXhlY0NhbGxiYWNrKFxuICAgICAgICAgIGNhbGxiYWNrLFxuICAgICAgICAgIG5ldyBFcnJvcihgWyR7Z2V0U2RrTmFtZSgpfV1bJHtFUlJPUlMuSU5WQUxJRF9QQVJBTVN9XVske0NPTVBPTkVOVF9OQU1FfS5jYWxsRnVuY3Rpb25dIHJlc3BvbnNlIGRhdGEgbXVzdCBiZSBqc29uYCwpLFxuICAgICAgICApXG4gICAgICB9XG4gICAgfSBjYXRjaCAoZSkge1xuICAgICAgZXhlY0NhbGxiYWNrKGNhbGxiYWNrLCBlKVxuICAgIH1cbiAgfVxufVxuXG5jb25zdCBjbG91ZGJhc2VGdW5jdGlvbnMgPSBuZXcgQ2xvdWRiYXNlRnVuY3Rpb25zKClcblxuY29uc3QgY29tcG9uZW50OiBJQ2xvdWRiYXNlQ29tcG9uZW50ID0ge1xuICBuYW1lOiBDT01QT05FTlRfTkFNRSxcbiAgZW50aXR5OiB7XG4gICAgY2FsbEZ1bmN0aW9uOiBjbG91ZGJhc2VGdW5jdGlvbnMuY2FsbEZ1bmN0aW9uLFxuICB9LFxufVxudHJ5IHtcbiAgY2xvdWRiYXNlLnJlZ2lzdGVyQ29tcG9uZW50KGNvbXBvbmVudClcbn0gY2F0Y2ggKGUpIHt9XG5cbmV4cG9ydCBmdW5jdGlvbiByZWdpc3RlckZ1bmN0aW9ucyhhcHA6IFBpY2s8SUNsb3VkYmFzZSwgJ3JlZ2lzdGVyQ29tcG9uZW50Jz4pIHtcbiAgdHJ5IHtcbiAgICBhcHAucmVnaXN0ZXJDb21wb25lbnQoY29tcG9uZW50KVxuICB9IGNhdGNoIChlKSB7XG4gICAgY29uc29sZS53YXJuKGUpXG4gIH1cbn1cbiJdfQ==
207
+ //# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoiaW5kZXguanMiLCJzb3VyY2VSb290IjoiIiwic291cmNlcyI6WyIuLi8uLi9zcmMvaW5kZXgudHMiXSwibmFtZXMiOltdLCJtYXBwaW5ncyI6Ijs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7QUFHQSxPQUFPLEVBQUUsU0FBUyxFQUFFLEtBQUssRUFBRSxPQUFPLEVBQUUsTUFBTSxzQkFBc0IsQ0FBQTtBQUNoRSxPQUFPLEVBQUUsZ0JBQWdCLEVBQUUsTUFBTSxxQkFBcUIsQ0FBQTtBQUk5QyxJQUFBLFVBQVUsR0FBaUMsU0FBUyxXQUExQyxFQUFFLE1BQU0sR0FBeUIsU0FBUyxPQUFsQyxFQUFFLGtCQUFrQixHQUFLLFNBQVMsbUJBQWQsQ0FBYztBQUNwRCxJQUFBLFlBQVksR0FBSyxLQUFLLGFBQVYsQ0FBVTtBQUN0QixJQUFBLG9CQUFvQixHQUFLLE9BQU8scUJBQVosQ0FBWTtBQUV4QyxJQUFNLGNBQWMsR0FBRyxXQUFXLENBQUE7QUFFbEM7SUFBQTtJQWlIQSxDQUFDO0lBbEdjLHlDQUFZLEdBQVosVUFBYSxPQUE2QixFQUFFLFFBQW1CLEVBQUUsYUFBOEI7Ozs7Ozs7d0JBQ2xHLElBQUksR0FBdUUsT0FBTyxLQUE5RSxFQUFFLElBQUksR0FBaUUsT0FBTyxLQUF4RSxFQUFFLEtBQUssR0FBMEQsT0FBTyxNQUFqRSxFQUFFLEtBQUssR0FBbUQsT0FBTyxNQUExRCxFQUFFLE1BQU0sR0FBMkMsT0FBTyxPQUFsRCxFQUFFLElBQUksR0FBcUMsT0FBTyxLQUE1QyxFQUFFLEtBQW1DLE9BQU8sS0FBakMsRUFBVCxJQUFJLG1CQUFHLEVBQUUsS0FBQSxFQUFFLE1BQU0sR0FBa0IsT0FBTyxPQUF6QixFQUFFLEtBQWdCLE9BQU8sT0FBWixFQUFYLE1BQU0sbUJBQUcsRUFBRSxLQUFBLENBQVk7d0JBRTFGLElBQUksQ0FBQyxJQUFJLEVBQUU7NEJBQ1QsTUFBTSxJQUFJLEtBQUssQ0FBQyxJQUFJLENBQUMsU0FBUyxDQUFDO2dDQUM3QixJQUFJLEVBQUUsTUFBTSxDQUFDLGNBQWM7Z0NBQzNCLEdBQUcsRUFBRSxXQUFJLGNBQWMseUNBQXNDOzZCQUM5RCxDQUFDLENBQUUsQ0FBQTt5QkFDTDt3QkFFRCxJQUFJOzRCQUNGLFFBQVEsR0FBRyxJQUFJLENBQUMsQ0FBQyxDQUFDLElBQUksQ0FBQyxTQUFTLENBQUMsSUFBSSxDQUFDLENBQUMsQ0FBQyxDQUFDLEVBQUUsQ0FBQTt5QkFDNUM7d0JBQUMsT0FBTyxDQUFDLEVBQUU7NEJBQ1YsTUFBTSxJQUFJLEtBQUssQ0FBQyxJQUFJLENBQUMsU0FBUyxDQUFDO2dDQUM3QixJQUFJLEVBQUUsTUFBTSxDQUFDLGNBQWM7Z0NBQzNCLEdBQUcsRUFBRSxXQUFJLGNBQWMsZ0NBQTZCOzZCQUNyRCxDQUFDLENBQUUsQ0FBQTt5QkFDTDs2QkFFRyxDQUFBLElBQUksS0FBSyxVQUFVLENBQUEsRUFBbkIsY0FBbUI7d0JBQ2YsU0FBUyxHQUFHLEtBQUssQ0FBQyxpQkFBaUIsRUFBRSxDQUFBO3dCQUM1QixXQUFNLGdCQUFnQixDQUFDLElBQUksQ0FBQyxJQUFJLEVBQUU7Z0NBQy9DLElBQUksTUFBQTtnQ0FDSixJQUFJLEVBQUUsUUFBUTtnQ0FDZCxJQUFJLE1BQUE7Z0NBQ0osTUFBTSxRQUFBO2dDQUNOLE1BQU0sd0JBQU8sTUFBTSxLQUFFLGNBQWMsRUFBRSxTQUFTLEdBQUU7NkJBQ2pELENBQUMsRUFBQTs7d0JBTkksTUFBTSxHQUFHLFNBTWI7d0JBRUYsV0FBTztnQ0FDTCxNQUFNLFFBQUE7Z0NBQ04sU0FBUyxXQUFBOzZCQUNWLEVBQUE7O3dCQUlHLEtBQXNCLElBQUksRUFBeEIsT0FBTyxhQUFBLEVBQUUsTUFBTSxZQUFBLENBQVM7d0JBQzFCLE1BQU0sR0FBRywwQkFBMEIsQ0FBQTt3QkFDbkMsTUFBTSxHQUFHOzRCQUNiLE9BQU8sRUFBRSxLQUFLOzRCQUNkLEtBQUssT0FBQTs0QkFDTCxNQUFNLFFBQUE7NEJBQ04sYUFBYSxFQUFFLElBQUk7NEJBQ25CLFlBQVksRUFBRSxRQUFRO3lCQUN2QixDQUFBO3dCQUNHLEdBQUcsR0FBUSxFQUFFLENBQUE7Ozs7NkJBR1gsQ0FBQSxNQUFNLENBQUMsWUFBWSxLQUFLLFNBQVMsQ0FBQSxFQUFqQyxjQUFpQzt3QkFDbEIsV0FBTSxPQUFPLENBQUMsT0FBTyx1QkFBTSxPQUFPLEtBQUUsSUFBSSxFQUFFLFdBQVcsS0FBSSxhQUFhLENBQUMsRUFBQTs7d0JBQWxGLFFBQVEsR0FBRyxTQUF1RTt3QkFFeEYsR0FBRyxjQUNELFNBQVMsRUFBRSxRQUFRLENBQUMsU0FBUyxJQUMxQixDQUFDLENBQUEsTUFBQSxRQUFRLENBQUMsSUFBSSwwQ0FBRSxJQUFJOzRCQUNyQixDQUFDLENBQUMsUUFBUSxDQUFDLElBQUk7NEJBQ2YsQ0FBQyxDQUFDO2dDQUNBLElBQUksRUFBRTtvQ0FDSixhQUFhLEVBQUUsUUFBUSxDQUFDLElBQUk7aUNBQzdCOzZCQUNGLENBQUMsQ0FDTCxDQUFBOzs0QkFFSyxXQUFNLE9BQU8sQ0FBQyxJQUFJLENBQ3RCLE1BQU0sRUFDTixNQUFNLEVBQ047NEJBQ0UsWUFBWSxFQUFFLENBQUEsTUFBQSxJQUFJLGFBQUosSUFBSSx1QkFBSixJQUFJLENBQUUsTUFBTSwwQ0FBRSxNQUFNLEVBQUMsQ0FBQyxDQUFDLEVBQUUsTUFBTSxFQUFFLE1BQUEsSUFBSSxhQUFKLElBQUksdUJBQUosSUFBSSxDQUFFLE1BQU0sMENBQUUsTUFBTSxFQUFFLENBQUMsQ0FBQyxDQUFDLEVBQUU7eUJBQzNFLEVBQ0QsYUFBYSxDQUNkLEVBQUE7O3dCQVBELEdBQUcsR0FBRyxTQU9MLENBQUE7Ozt3QkFFSCxJQUFJLEdBQUcsQ0FBQyxJQUFJLEVBQUU7NEJBQ1osV0FBTyxZQUFZLENBQUMsUUFBUSxFQUFFLElBQUksRUFBRSxHQUFHLENBQUMsRUFBQTt5QkFDekM7d0JBQ0csTUFBTSxHQUFHLEdBQUcsQ0FBQyxJQUFJLENBQUMsYUFBYSxDQUFBO3dCQUVuQyxJQUFJLEtBQUssSUFBSSxNQUFNLENBQUMsWUFBWSxLQUFLLFNBQVMsRUFBRTs0QkFDOUMsV0FBTyxZQUFZLENBQUMsUUFBUSxFQUFFLElBQUksRUFBRTtvQ0FDbEMsTUFBTSxRQUFBO29DQUNOLFNBQVMsRUFBRSxHQUFHLENBQUMsU0FBUztpQ0FDekIsQ0FBQyxFQUFBO3lCQUNIO3dCQUNELElBQUk7NEJBQ0YsTUFBTSxHQUFHLElBQUksQ0FBQyxLQUFLLENBQUMsR0FBRyxDQUFDLElBQUksQ0FBQyxhQUFhLENBQUMsQ0FBQTs0QkFDM0MsV0FBTyxZQUFZLENBQUMsUUFBUSxFQUFFLElBQUksRUFBRTtvQ0FDbEMsTUFBTSxRQUFBO29DQUNOLFNBQVMsRUFBRSxHQUFHLENBQUMsU0FBUztpQ0FDekIsQ0FBQyxFQUFBO3lCQUNIO3dCQUFDLE9BQU8sQ0FBQyxFQUFFOzRCQUNWLFlBQVksQ0FDVixRQUFRLEVBQ1IsSUFBSSxLQUFLLENBQUMsV0FBSSxVQUFVLEVBQUUsZUFBSyxNQUFNLENBQUMsY0FBYyxlQUFLLGNBQWMsOENBQTJDLENBQUUsQ0FDckgsQ0FBQTt5QkFDRjs7Ozt3QkFFRCxZQUFZLENBQUMsUUFBUSxFQUFFLEdBQUMsQ0FBQyxDQUFBOzs7Ozs7S0FFNUI7SUFqR1k7UUFkWixvQkFBb0IsQ0FBQztZQUNwQixVQUFVLEVBQUU7Z0JBQ1YsU0FBUyxFQUFFLFdBQVc7Z0JBQ3RCLFVBQVUsRUFBRSxjQUFjO2FBQzNCO1lBQ0QsS0FBSyxFQUFFLFFBQVE7WUFDZixRQUFRLEVBQUU7Z0JBQ1IsVUFBVTtnQkFDVixvQ0FBb0M7Z0JBQ3BDLG9CQUFvQjtnQkFDcEIsMkJBQTJCO2dCQUMzQixzS0FBNkIsa0JBQWtCLENBQUU7YUFDbEQ7U0FDRixDQUFDOztpREFDa0UsUUFBUTs7MERBaUczRTtJQUNILHlCQUFDO0NBQUEsQUFqSEQsSUFpSEM7QUFFRCxJQUFNLGtCQUFrQixHQUFHLElBQUksa0JBQWtCLEVBQUUsQ0FBQTtBQUVuRCxJQUFNLFNBQVMsR0FBd0I7SUFDckMsSUFBSSxFQUFFLGNBQWM7SUFDcEIsTUFBTSxFQUFFO1FBQ04sWUFBWSxFQUFFLGtCQUFrQixDQUFDLFlBQVk7S0FDOUM7Q0FDRixDQUFBO0FBQ0QsSUFBSTtJQUNGLFNBQVMsQ0FBQyxpQkFBaUIsQ0FBQyxTQUFTLENBQUMsQ0FBQTtDQUN2QztBQUFDLE9BQU8sQ0FBQyxFQUFFLEdBQUU7QUFFZCxNQUFNLFVBQVUsaUJBQWlCLENBQUMsR0FBMEM7SUFDMUUsSUFBSTtRQUNGLEdBQUcsQ0FBQyxpQkFBaUIsQ0FBQyxTQUFTLENBQUMsQ0FBQTtLQUNqQztJQUFDLE9BQU8sQ0FBQyxFQUFFO1FBQ1YsT0FBTyxDQUFDLElBQUksQ0FBQyxDQUFDLENBQUMsQ0FBQTtLQUNoQjtBQUNILENBQUMiLCJzb3VyY2VzQ29udGVudCI6WyJpbXBvcnQgeyBJQ2xvdWRiYXNlIH0gZnJvbSAnQGNsb3VkYmFzZS90eXBlcydcbmltcG9ydCB7IElDbG91ZGJhc2VDb21wb25lbnQgfSBmcm9tICdAY2xvdWRiYXNlL3R5cGVzL2NvbXBvbmVudCdcbmltcG9ydCB7IElDYWxsRnVuY3Rpb25PcHRpb25zLCBJQ3VzdG9tUmVxT3B0cyB9IGZyb20gJ0BjbG91ZGJhc2UvdHlwZXMvZnVuY3Rpb25zJ1xuaW1wb3J0IHsgY29uc3RhbnRzLCB1dGlscywgaGVscGVycyB9IGZyb20gJ0BjbG91ZGJhc2UvdXRpbGl0aWVzJ1xuaW1wb3J0IHsgcmVxdWVzdENvbnRhaW5lciB9IGZyb20gJ0BjbG91ZGJhc2UvY2xvdWRydW4nXG5cbmRlY2xhcmUgY29uc3QgY2xvdWRiYXNlOiBJQ2xvdWRiYXNlXG5cbmNvbnN0IHsgZ2V0U2RrTmFtZSwgRVJST1JTLCBDT01NVU5JVFlfU0lURV9VUkwgfSA9IGNvbnN0YW50c1xuY29uc3QgeyBleGVjQ2FsbGJhY2sgfSA9IHV0aWxzXG5jb25zdCB7IGNhdGNoRXJyb3JzRGVjb3JhdG9yIH0gPSBoZWxwZXJzXG5cbmNvbnN0IENPTVBPTkVOVF9OQU1FID0gJ2Z1bmN0aW9ucydcblxuY2xhc3MgQ2xvdWRiYXNlRnVuY3Rpb25zIHtcbiAgQGNhdGNoRXJyb3JzRGVjb3JhdG9yKHtcbiAgICBjdXN0b21JbmZvOiB7XG4gICAgICBjbGFzc05hbWU6ICdDbG91ZGJhc2UnLFxuICAgICAgbWV0aG9kTmFtZTogJ2NhbGxGdW5jdGlvbicsXG4gICAgfSxcbiAgICB0aXRsZTogJ+WHveaVsOiwg+eUqOWksei0pScsXG4gICAgbWVzc2FnZXM6IFtcbiAgICAgICfor7fnoa7orqTku6XkuIvlkITpobnvvJonLFxuICAgICAgJyAgMSAtIOiwg+eUqCBjYWxsRnVuY3Rpb24oKSDnmoTor63ms5XmiJblj4LmlbDmmK/lkKbmraPnoa4nLFxuICAgICAgJyAgMiAtIOW9k+WJjeeOr+Wig+S4i+aYr+WQpuWtmOWcqOatpOWHveaVsCcsXG4gICAgICAnICAzIC0g5Ye95pWw5a6J5YWo6KeE5YiZ5piv5ZCm6ZmQ5Yi25LqG5b2T5YmN55m75b2V54q25oCB6K6/6ZeuJyxcbiAgICAgIGDlpoLmnpzpl67popjkvp3nhLblrZjlnKjvvIzlu7rorq7liLDlrpjmlrnpl67nrZTnpL7ljLrmj5Dpl67miJblr7vmib7luK7liqnvvJoke0NPTU1VTklUWV9TSVRFX1VSTH1gLFxuICAgIF0sXG4gIH0pXG4gIHB1YmxpYyBhc3luYyBjYWxsRnVuY3Rpb24ob3B0aW9uczogSUNhbGxGdW5jdGlvbk9wdGlvbnMsIGNhbGxiYWNrPzogRnVuY3Rpb24sIGN1c3RvbVJlcU9wdHM/OiBJQ3VzdG9tUmVxT3B0cykge1xuICAgIGNvbnN0IHsgbmFtZSwgZGF0YSwgcXVlcnksIHBhcnNlLCBzZWFyY2gsIHR5cGUsIHBhdGggPSAnJywgbWV0aG9kLCBoZWFkZXIgPSB7fSB9ID0gb3B0aW9uc1xuXG4gICAgaWYgKCFuYW1lKSB7XG4gICAgICB0aHJvdyBuZXcgRXJyb3IoSlNPTi5zdHJpbmdpZnkoe1xuICAgICAgICBjb2RlOiBFUlJPUlMuSU5WQUxJRF9QQVJBTVMsXG4gICAgICAgIG1zZzogYFske0NPTVBPTkVOVF9OQU1FfS5jYWxsRnVuY3Rpb25dIGludmFsaWQgZnVuY3Rpb24gbmFtZWAsXG4gICAgICB9KSwpXG4gICAgfVxuICAgIGxldCBqc29uRGF0YVxuICAgIHRyeSB7XG4gICAgICBqc29uRGF0YSA9IGRhdGEgPyBKU09OLnN0cmluZ2lmeShkYXRhKSA6ICcnXG4gICAgfSBjYXRjaCAoZSkge1xuICAgICAgdGhyb3cgbmV3IEVycm9yKEpTT04uc3RyaW5naWZ5KHtcbiAgICAgICAgY29kZTogRVJST1JTLklOVkFMSURfUEFSQU1TLFxuICAgICAgICBtc2c6IGBbJHtDT01QT05FTlRfTkFNRX0uY2FsbEZ1bmN0aW9uXSBpbnZhbGlkIGRhdGFgLFxuICAgICAgfSksKVxuICAgIH1cblxuICAgIGlmICh0eXBlID09PSAnY2xvdWRydW4nKSB7XG4gICAgICBjb25zdCByZXF1ZXN0SWQgPSB1dGlscy5nZW5lcmF0ZVJlcXVlc3RJZCgpXG4gICAgICBjb25zdCByZXN1bHQgPSBhd2FpdCByZXF1ZXN0Q29udGFpbmVyLmNhbGwodGhpcywge1xuICAgICAgICBuYW1lLFxuICAgICAgICBkYXRhOiBqc29uRGF0YSxcbiAgICAgICAgcGF0aCxcbiAgICAgICAgbWV0aG9kLFxuICAgICAgICBoZWFkZXI6IHsgLi4uaGVhZGVyLCAnWC1SZXF1ZXN0LUlkJzogcmVxdWVzdElkIH0sXG4gICAgICB9KVxuXG4gICAgICByZXR1cm4ge1xuICAgICAgICByZXN1bHQsXG4gICAgICAgIHJlcXVlc3RJZCxcbiAgICAgIH1cbiAgICB9XG5cbiAgICAvLyBAdHMtaWdub3JlXG4gICAgY29uc3QgeyByZXF1ZXN0LCBjb25maWcgfSA9IHRoaXNcbiAgICBjb25zdCBhY3Rpb24gPSAnZnVuY3Rpb25zLmludm9rZUZ1bmN0aW9uJ1xuICAgIGNvbnN0IHBhcmFtcyA9IHtcbiAgICAgIGluUXVlcnk6IHF1ZXJ5LFxuICAgICAgcGFyc2UsXG4gICAgICBzZWFyY2gsXG4gICAgICBmdW5jdGlvbl9uYW1lOiBuYW1lLFxuICAgICAgcmVxdWVzdF9kYXRhOiBqc29uRGF0YSxcbiAgICB9XG4gICAgbGV0IHJlczogYW55ID0ge31cblxuICAgIHRyeSB7XG4gICAgICBpZiAoY29uZmlnLmVuZFBvaW50TW9kZSA9PT0gJ0dBVEVXQVknKSB7XG4gICAgICAgIGNvbnN0IHJlc3BvbnNlID0gYXdhaXQgcmVxdWVzdC5nYXRlV2F5KHsgLi4ub3B0aW9ucywgcGF0aDogJ2Z1bmN0aW9ucycgfSwgY3VzdG9tUmVxT3B0cylcblxuICAgICAgICByZXMgPSB7XG4gICAgICAgICAgcmVxdWVzdElkOiByZXNwb25zZS5yZXF1ZXN0SWQsXG4gICAgICAgICAgLi4uKHJlc3BvbnNlLmRhdGE/LmNvZGVcbiAgICAgICAgICAgID8gcmVzcG9uc2UuZGF0YVxuICAgICAgICAgICAgOiB7XG4gICAgICAgICAgICAgIGRhdGE6IHtcbiAgICAgICAgICAgICAgICByZXNwb25zZV9kYXRhOiByZXNwb25zZS5kYXRhLFxuICAgICAgICAgICAgICB9LFxuICAgICAgICAgICAgfSksXG4gICAgICAgIH1cbiAgICAgIH0gZWxzZSB7XG4gICAgICAgIHJlcyA9IGF3YWl0IHJlcXVlc3Quc2VuZChcbiAgICAgICAgICBhY3Rpb24sXG4gICAgICAgICAgcGFyYW1zLFxuICAgICAgICAgIHtcbiAgICAgICAgICAgIGRlZmF1bHRRdWVyeTogZGF0YT8ucGFyYW1zPy5hY3Rpb24gPyB7IGFjdGlvbjogZGF0YT8ucGFyYW1zPy5hY3Rpb24gfSA6IHt9LFxuICAgICAgICAgIH0sXG4gICAgICAgICAgY3VzdG9tUmVxT3B0cyxcbiAgICAgICAgKVxuICAgICAgfVxuICAgICAgaWYgKHJlcy5jb2RlKSB7XG4gICAgICAgIHJldHVybiBleGVjQ2FsbGJhY2soY2FsbGJhY2ssIG51bGwsIHJlcylcbiAgICAgIH1cbiAgICAgIGxldCByZXN1bHQgPSByZXMuZGF0YS5yZXNwb25zZV9kYXRhXG4gICAgICAvLyBwYXJzZSDkuLogdHJ1ZSDml7bmnI3liqHnq6/op6PmnpAgSlNPTu+8jFNESyDkuI3lho3mrKHop6PmnpBcbiAgICAgIGlmIChwYXJzZSB8fCBjb25maWcuZW5kUG9pbnRNb2RlID09PSAnR0FURVdBWScpIHtcbiAgICAgICAgcmV0dXJuIGV4ZWNDYWxsYmFjayhjYWxsYmFjaywgbnVsbCwge1xuICAgICAgICAgIHJlc3VsdCxcbiAgICAgICAgICByZXF1ZXN0SWQ6IHJlcy5yZXF1ZXN0SWQsXG4gICAgICAgIH0pXG4gICAgICB9XG4gICAgICB0cnkge1xuICAgICAgICByZXN1bHQgPSBKU09OLnBhcnNlKHJlcy5kYXRhLnJlc3BvbnNlX2RhdGEpXG4gICAgICAgIHJldHVybiBleGVjQ2FsbGJhY2soY2FsbGJhY2ssIG51bGwsIHtcbiAgICAgICAgICByZXN1bHQsXG4gICAgICAgICAgcmVxdWVzdElkOiByZXMucmVxdWVzdElkLFxuICAgICAgICB9KVxuICAgICAgfSBjYXRjaCAoZSkge1xuICAgICAgICBleGVjQ2FsbGJhY2soXG4gICAgICAgICAgY2FsbGJhY2ssXG4gICAgICAgICAgbmV3IEVycm9yKGBbJHtnZXRTZGtOYW1lKCl9XVske0VSUk9SUy5JTlZBTElEX1BBUkFNU31dWyR7Q09NUE9ORU5UX05BTUV9LmNhbGxGdW5jdGlvbl0gcmVzcG9uc2UgZGF0YSBtdXN0IGJlIGpzb25gLCksXG4gICAgICAgIClcbiAgICAgIH1cbiAgICB9IGNhdGNoIChlKSB7XG4gICAgICBleGVjQ2FsbGJhY2soY2FsbGJhY2ssIGUpXG4gICAgfVxuICB9XG59XG5cbmNvbnN0IGNsb3VkYmFzZUZ1bmN0aW9ucyA9IG5ldyBDbG91ZGJhc2VGdW5jdGlvbnMoKVxuXG5jb25zdCBjb21wb25lbnQ6IElDbG91ZGJhc2VDb21wb25lbnQgPSB7XG4gIG5hbWU6IENPTVBPTkVOVF9OQU1FLFxuICBlbnRpdHk6IHtcbiAgICBjYWxsRnVuY3Rpb246IGNsb3VkYmFzZUZ1bmN0aW9ucy5jYWxsRnVuY3Rpb24sXG4gIH0sXG59XG50cnkge1xuICBjbG91ZGJhc2UucmVnaXN0ZXJDb21wb25lbnQoY29tcG9uZW50KVxufSBjYXRjaCAoZSkge31cblxuZXhwb3J0IGZ1bmN0aW9uIHJlZ2lzdGVyRnVuY3Rpb25zKGFwcDogUGljazxJQ2xvdWRiYXNlLCAncmVnaXN0ZXJDb21wb25lbnQnPikge1xuICB0cnkge1xuICAgIGFwcC5yZWdpc3RlckNvbXBvbmVudChjb21wb25lbnQpXG4gIH0gY2F0Y2ggKGUpIHtcbiAgICBjb25zb2xlLndhcm4oZSlcbiAgfVxufVxuIl19
package/package.json CHANGED
@@ -1,6 +1,6 @@
1
1
  {
2
2
  "name": "@cloudbase/functions",
3
- "version": "3.0.0",
3
+ "version": "3.0.1",
4
4
  "description": "cloudbase javascript sdk functions componets",
5
5
  "main": "dist/cjs/index.js",
6
6
  "module": "dist/esm/index.js",
@@ -30,9 +30,9 @@
30
30
  "license": "Apache-2.0",
31
31
  "dependencies": {
32
32
  "@cloudbase/adapter-interface": "^0.7.1",
33
- "@cloudbase/cloudrun": "3.0.0",
34
- "@cloudbase/types": "3.0.0",
35
- "@cloudbase/utilities": "3.0.0"
33
+ "@cloudbase/cloudrun": "3.0.1",
34
+ "@cloudbase/types": "3.0.1",
35
+ "@cloudbase/utilities": "3.0.1"
36
36
  },
37
- "gitHead": "a70e7266db7be901d909b1fa63c1651e2a7943e4"
37
+ "gitHead": "a29767afc9a2b16cd632074c7c751abcf81746ed"
38
38
  }
package/src/index.ts CHANGED
@@ -1,6 +1,6 @@
1
1
  import { ICloudbase } from '@cloudbase/types'
2
2
  import { ICloudbaseComponent } from '@cloudbase/types/component'
3
- import { ICallFunctionOptions } from '@cloudbase/types/functions'
3
+ import { ICallFunctionOptions, ICustomReqOpts } from '@cloudbase/types/functions'
4
4
  import { constants, utils, helpers } from '@cloudbase/utilities'
5
5
  import { requestContainer } from '@cloudbase/cloudrun'
6
6
 
@@ -27,7 +27,7 @@ class CloudbaseFunctions {
27
27
  `如果问题依然存在,建议到官方问答社区提问或寻找帮助:${COMMUNITY_SITE_URL}`,
28
28
  ],
29
29
  })
30
- public async callFunction(options: ICallFunctionOptions, callback?: Function) {
30
+ public async callFunction(options: ICallFunctionOptions, callback?: Function, customReqOpts?: ICustomReqOpts) {
31
31
  const { name, data, query, parse, search, type, path = '', method, header = {} } = options
32
32
 
33
33
  if (!name) {
@@ -62,8 +62,9 @@ class CloudbaseFunctions {
62
62
  }
63
63
  }
64
64
 
65
+ // @ts-ignore
66
+ const { request, config } = this
65
67
  const action = 'functions.invokeFunction'
66
-
67
68
  const params = {
68
69
  inQuery: query,
69
70
  parse,
@@ -71,19 +72,38 @@ class CloudbaseFunctions {
71
72
  function_name: name,
72
73
  request_data: jsonData,
73
74
  }
74
- // @ts-ignore
75
- const { request } = this
75
+ let res: any = {}
76
76
 
77
77
  try {
78
- const res = await request.send(action, params, {
79
- defaultQuery: data?.params?.action ? { action: data?.params?.action } : {},
80
- })
78
+ if (config.endPointMode === 'GATEWAY') {
79
+ const response = await request.gateWay({ ...options, path: 'functions' }, customReqOpts)
80
+
81
+ res = {
82
+ requestId: response.requestId,
83
+ ...(response.data?.code
84
+ ? response.data
85
+ : {
86
+ data: {
87
+ response_data: response.data,
88
+ },
89
+ }),
90
+ }
91
+ } else {
92
+ res = await request.send(
93
+ action,
94
+ params,
95
+ {
96
+ defaultQuery: data?.params?.action ? { action: data?.params?.action } : {},
97
+ },
98
+ customReqOpts,
99
+ )
100
+ }
81
101
  if (res.code) {
82
102
  return execCallback(callback, null, res)
83
103
  }
84
104
  let result = res.data.response_data
85
105
  // parse 为 true 时服务端解析 JSON,SDK 不再次解析
86
- if (parse) {
106
+ if (parse || config.endPointMode === 'GATEWAY') {
87
107
  return execCallback(callback, null, {
88
108
  result,
89
109
  requestId: res.requestId,
package/tsconfig.json CHANGED
@@ -1,7 +1,7 @@
1
1
  {
2
2
  "extends": "../../tsconfig.base.json",
3
3
  "compilerOptions": {
4
- "module": "commonjs",
4
+ "module": "node16",
5
5
  "outDir": "dist/cjs",
6
6
  "rootDir": "src",
7
7
  },