@cloudbase/auth 2.5.49-beta.2 → 2.5.49-beta.3

This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
@@ -0,0 +1,2 @@
1
+ import type { AuthOptions } from '@cloudbase/oauth';
2
+ export declare const useAuthAdapter: (config: AuthOptions) => any;
@@ -0,0 +1,177 @@
1
+ var __assign = (this && this.__assign) || function () {
2
+ __assign = Object.assign || function(t) {
3
+ for (var s, i = 1, n = arguments.length; i < n; i++) {
4
+ s = arguments[i];
5
+ for (var p in s) if (Object.prototype.hasOwnProperty.call(s, p))
6
+ t[p] = s[p];
7
+ }
8
+ return t;
9
+ };
10
+ return __assign.apply(this, arguments);
11
+ };
12
+ var __awaiter = (this && this.__awaiter) || function (thisArg, _arguments, P, generator) {
13
+ function adopt(value) { return value instanceof P ? value : new P(function (resolve) { resolve(value); }); }
14
+ return new (P || (P = Promise))(function (resolve, reject) {
15
+ function fulfilled(value) { try { step(generator.next(value)); } catch (e) { reject(e); } }
16
+ function rejected(value) { try { step(generator["throw"](value)); } catch (e) { reject(e); } }
17
+ function step(result) { result.done ? resolve(result.value) : adopt(result.value).then(fulfilled, rejected); }
18
+ step((generator = generator.apply(thisArg, _arguments || [])).next());
19
+ });
20
+ };
21
+ var __generator = (this && this.__generator) || function (thisArg, body) {
22
+ var _ = { label: 0, sent: function() { if (t[0] & 1) throw t[1]; return t[1]; }, trys: [], ops: [] }, f, y, t, g;
23
+ return g = { next: verb(0), "throw": verb(1), "return": verb(2) }, typeof Symbol === "function" && (g[Symbol.iterator] = function() { return this; }), g;
24
+ function verb(n) { return function (v) { return step([n, v]); }; }
25
+ function step(op) {
26
+ if (f) throw new TypeError("Generator is already executing.");
27
+ while (g && (g = 0, op[0] && (_ = 0)), _) try {
28
+ if (f = 1, y && (t = op[0] & 2 ? y["return"] : op[0] ? y["throw"] || ((t = y["return"]) && t.call(y), 0) : y.next) && !(t = t.call(y, op[1])).done) return t;
29
+ if (y = 0, t) op = [op[0] & 2, t.value];
30
+ switch (op[0]) {
31
+ case 0: case 1: t = op; break;
32
+ case 4: _.label++; return { value: op[1], done: false };
33
+ case 5: _.label++; y = op[1]; op = [0]; continue;
34
+ case 7: op = _.ops.pop(); _.trys.pop(); continue;
35
+ default:
36
+ if (!(t = _.trys, t = t.length > 0 && t[t.length - 1]) && (op[0] === 6 || op[0] === 2)) { _ = 0; continue; }
37
+ if (op[0] === 3 && (!t || (op[1] > t[0] && op[1] < t[3]))) { _.label = op[1]; break; }
38
+ if (op[0] === 6 && _.label < t[1]) { _.label = t[1]; t = op; break; }
39
+ if (t && _.label < t[2]) { _.label = t[2]; _.ops.push(op); break; }
40
+ if (t[2]) _.ops.pop();
41
+ _.trys.pop(); continue;
42
+ }
43
+ op = body.call(thisArg, _);
44
+ } catch (e) { op = [6, e]; y = 0; } finally { f = t = 0; }
45
+ if (op[0] & 5) throw op[1]; return { value: op[0] ? op[1] : void 0, done: true };
46
+ }
47
+ };
48
+ import { adapterForWxMp } from './utilities';
49
+ var OauthClientStorageBase = (function () {
50
+ function OauthClientStorageBase(config) {
51
+ this.localStorage = (config === null || config === void 0 ? void 0 : config.localStorage) || globalThis.localStorage;
52
+ }
53
+ OauthClientStorageBase.prototype.getItem = function (key) {
54
+ return __awaiter(this, void 0, void 0, function () {
55
+ return __generator(this, function (_a) {
56
+ return [2, this.localStorage.getItem(key)];
57
+ });
58
+ });
59
+ };
60
+ OauthClientStorageBase.prototype.removeItem = function (key) {
61
+ return __awaiter(this, void 0, void 0, function () {
62
+ return __generator(this, function (_a) {
63
+ this.localStorage.removeItem(key);
64
+ return [2];
65
+ });
66
+ });
67
+ };
68
+ OauthClientStorageBase.prototype.setItem = function (key, value) {
69
+ return __awaiter(this, void 0, void 0, function () {
70
+ return __generator(this, function (_a) {
71
+ this.localStorage.setItem(key, value);
72
+ return [2];
73
+ });
74
+ });
75
+ };
76
+ OauthClientStorageBase.prototype.getItemSync = function (key) {
77
+ return this.localStorage.getItem(key);
78
+ };
79
+ OauthClientStorageBase.prototype.setItemSync = function (key, value) {
80
+ this.localStorage.setItem(key, value);
81
+ };
82
+ OauthClientStorageBase.prototype.removeItemSync = function (key) {
83
+ this.localStorage.removeItem(key);
84
+ };
85
+ return OauthClientStorageBase;
86
+ }());
87
+ var URL_REG = /^[^:]+:\/\/[^/]+(\/[^?#]+)/;
88
+ function generateOauthClientRequest(reqClass) {
89
+ return function (url, options) {
90
+ var _a;
91
+ return __awaiter(this, void 0, void 0, function () {
92
+ var requestId;
93
+ return __generator(this, function (_b) {
94
+ requestId = (_a = options === null || options === void 0 ? void 0 : options.headers) === null || _a === void 0 ? void 0 : _a['x-request-id'];
95
+ return [2, new Promise(function (resolve, reject) {
96
+ var copyOptions = Object.assign({}, options);
97
+ if (copyOptions.body && typeof copyOptions.body !== 'string') {
98
+ copyOptions.body = JSON.stringify(copyOptions.body);
99
+ }
100
+ var task = wx.request({
101
+ url: url,
102
+ data: copyOptions.body,
103
+ timeout: reqClass._timeout,
104
+ method: copyOptions.method || 'GET',
105
+ header: copyOptions.headers,
106
+ success: function (res) {
107
+ if (res.code) {
108
+ res = {
109
+ error: res.code,
110
+ error_description: res.message || res.code,
111
+ request_id: res.requestId,
112
+ };
113
+ }
114
+ if (!res.request_id) {
115
+ res.request_id = res.request_id || requestId;
116
+ }
117
+ if (res.error) {
118
+ res.error_uri = getUrlPath(url);
119
+ reject(res);
120
+ }
121
+ resolve(res.data || {});
122
+ },
123
+ fail: function (err) {
124
+ reject({
125
+ error: 'unreachable',
126
+ error_description: err.message,
127
+ });
128
+ },
129
+ complete: function (err) {
130
+ if (!err || !err.errMsg) {
131
+ return;
132
+ }
133
+ if (!reqClass._timeout || reqClass._restrictedMethods.indexOf('request') === -1) {
134
+ return;
135
+ }
136
+ var errMsg = err.errMsg;
137
+ if (errMsg === 'request:fail timeout') {
138
+ console.warn(reqClass._timeoutMsg);
139
+ try {
140
+ task.abort();
141
+ }
142
+ catch (e) { }
143
+ }
144
+ },
145
+ });
146
+ })];
147
+ });
148
+ });
149
+ };
150
+ }
151
+ function getUrlPath(url) {
152
+ return URL_REG.test(url) ? RegExp.$1 : url;
153
+ }
154
+ export var useAuthAdapter = function (config) {
155
+ if (!adapterForWxMp.isMatch() || (config.storage && config.baseRequest))
156
+ return config;
157
+ var authOptions = {};
158
+ try {
159
+ var _a = adapterForWxMp.genAdapter(), localStorage_1 = _a.localStorage, ReqClass = _a.reqClass;
160
+ if (localStorage_1) {
161
+ authOptions.storage = new OauthClientStorageBase({ localStorage: localStorage_1 });
162
+ }
163
+ if (ReqClass) {
164
+ var reqClass = new ReqClass({
165
+ timeout: 10000,
166
+ restrictedMethods: ['get', 'post', 'upload', 'download', 'request'],
167
+ });
168
+ authOptions.request = generateOauthClientRequest(reqClass);
169
+ }
170
+ return __assign(__assign({}, config), authOptions);
171
+ }
172
+ catch (e) {
173
+ console.error('adapter generate fail:', e);
174
+ }
175
+ return config;
176
+ };
177
+ //# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoiYWRhcHRlci5qcyIsInNvdXJjZVJvb3QiOiIiLCJzb3VyY2VzIjpbIi4uLy4uL3NyYy9hZGFwdGVyLnRzIl0sIm5hbWVzIjpbXSwibWFwcGluZ3MiOiI7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7O0FBQUEsT0FBTyxFQUFFLGNBQWMsRUFBRSxNQUFNLGFBQWEsQ0FBQTtBQUs1QztJQUVFLGdDQUFZLE1BQXFEO1FBQy9ELElBQUksQ0FBQyxZQUFZLEdBQUcsQ0FBQSxNQUFNLGFBQU4sTUFBTSx1QkFBTixNQUFNLENBQUUsWUFBWSxLQUFLLFVBQWtCLENBQUMsWUFBWSxDQUFBO0lBQzlFLENBQUM7SUFNSyx3Q0FBTyxHQUFiLFVBQWMsR0FBVzs7O2dCQUN2QixXQUFPLElBQUksQ0FBQyxZQUFZLENBQUMsT0FBTyxDQUFDLEdBQUcsQ0FBQyxFQUFBOzs7S0FDdEM7SUFPSywyQ0FBVSxHQUFoQixVQUFpQixHQUFXOzs7Z0JBQzFCLElBQUksQ0FBQyxZQUFZLENBQUMsVUFBVSxDQUFDLEdBQUcsQ0FBQyxDQUFBOzs7O0tBQ2xDO0lBUUssd0NBQU8sR0FBYixVQUFjLEdBQVcsRUFBRSxLQUFhOzs7Z0JBQ3RDLElBQUksQ0FBQyxZQUFZLENBQUMsT0FBTyxDQUFDLEdBQUcsRUFBRSxLQUFLLENBQUMsQ0FBQTs7OztLQUN0QztJQUVELDRDQUFXLEdBQVgsVUFBWSxHQUFXO1FBQ3JCLE9BQU8sSUFBSSxDQUFDLFlBQVksQ0FBQyxPQUFPLENBQUMsR0FBRyxDQUFDLENBQUE7SUFDdkMsQ0FBQztJQUVELDRDQUFXLEdBQVgsVUFBWSxHQUFXLEVBQUUsS0FBYTtRQUNwQyxJQUFJLENBQUMsWUFBWSxDQUFDLE9BQU8sQ0FBQyxHQUFHLEVBQUUsS0FBSyxDQUFDLENBQUE7SUFDdkMsQ0FBQztJQUVELCtDQUFjLEdBQWQsVUFBZSxHQUFXO1FBQ3hCLElBQUksQ0FBQyxZQUFZLENBQUMsVUFBVSxDQUFDLEdBQUcsQ0FBQyxDQUFBO0lBQ25DLENB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Q0FBQyxHQUFHLENBQUMsQ0FBQyxDQUFDLENBQUMsTUFBTSxDQUFDLEVBQUUsQ0FBQyxDQUFDLENBQUMsR0FBRyxDQUFBO0FBQzVDLENBQUM7QUFFRCxNQUFNLENBQUMsSUFBTSxjQUFjLEdBQUcsVUFBQyxNQUFtQjtJQUNoRCxJQUFJLENBQUMsY0FBYyxDQUFDLE9BQU8sRUFBRSxJQUFJLENBQUMsTUFBTSxDQUFDLE9BQU8sSUFBSSxNQUFNLENBQUMsV0FBVyxDQUFDO1FBQUUsT0FBTyxNQUFNLENBQUE7SUFFdEYsSUFBTSxXQUFXLEdBQVEsRUFBRSxDQUFBO0lBQzNCLElBQUk7UUFDSSxJQUFBLEtBQXVDLGNBQWMsQ0FBQyxVQUFVLEVBQUUsRUFBaEUsY0FBWSxrQkFBQSxFQUFZLFFBQVEsY0FBZ0MsQ0FBQTtRQUN4RSxJQUFJLGNBQVksRUFBRTtZQUNoQixXQUFXLENBQUMsT0FBTyxHQUFHLElBQUksc0JBQXNCLENBQUMsRUFBRSxZQUFZLGdCQUFBLEVBQUUsQ0FBQyxDQUFBO1NBQ25FO1FBQ0QsSUFBSSxRQUFRLEVBQUU7WUFDWixJQUFNLFFBQVEsR0FBRyxJQUFJLFFBQVEsQ0FBQztnQkFDNUIsT0FBTyxFQUFFLEtBQUs7Z0JBQ2QsaUJBQWlCLEVBQUUsQ0FBQyxLQUFLLEVBQUUsTUFBTSxFQUFFLFFBQVEsRUFBRSxVQUFVLEVBQUUsU0FBUyxDQUFDO2FBQ3BFLENBQUMsQ0FBQTtZQUNGLFdBQVcsQ0FBQyxPQUFPLEdBQUcsMEJBQTBCLENBQUMsUUFBUSxDQUFDLENBQUE7U0FDM0Q7UUFFRCw2QkFBWSxNQUFNLEdBQUssV0FBVyxFQUFFO0tBQ3JDO0lBQUMsT0FBTyxDQUFDLEVBQUU7UUFDVixPQUFPLENBQUMsS0FBSyxDQUFDLHdCQUF3QixFQUFFLENBQUMsQ0FBQyxDQUFBO0tBQzNDO0lBRUQsT0FBTyxNQUFNLENBQUE7QUFDZixDQUFDLENBQUEiLCJzb3VyY2VzQ29udGVudCI6WyJpbXBvcnQgeyBhZGFwdGVyRm9yV3hNcCB9IGZyb20gJy4vdXRpbGl0aWVzJ1xuaW1wb3J0IHR5cGUgeyBBdXRoT3B0aW9ucyB9IGZyb20gJ0BjbG91ZGJhc2Uvb2F1dGgnXG5cbmRlY2xhcmUgY29uc3Qgd3g6IGFueVxuXG5jbGFzcyBPYXV0aENsaWVudFN0b3JhZ2VCYXNlIHtcbiAgcHVibGljIHJlYWRvbmx5IGxvY2FsU3RvcmFnZVxuICBjb25zdHJ1Y3Rvcihjb25maWc/OiB7IGxvY2FsU3RvcmFnZTogYW55IC8qIFN0b3JhZ2VJbnRlcmZhY2UgKi8gfSkge1xuICAgIHRoaXMubG9jYWxTdG9yYWdlID0gY29uZmlnPy5sb2NhbFN0b3JhZ2UgfHwgKGdsb2JhbFRoaXMgYXMgYW55KS5sb2NhbFN0b3JhZ2VcbiAgfVxuICAvKipcbiAgICogR2V0IEl0ZW1cbiAgICogQHBhcmFtIHtzdHJpbmd9IGtleVxuICAgKiBAcmV0dXJuIHtQcm9taXNlPHN0cmluZyB8IG51bGw+fVxuICAgKi9cbiAgYXN5bmMgZ2V0SXRlbShrZXk6IHN0cmluZyk6IFByb21pc2U8c3RyaW5nIHwgbnVsbD4ge1xuICAgIHJldHVybiB0aGlzLmxvY2FsU3RvcmFnZS5nZXRJdGVtKGtleSlcbiAgfVxuXG4gIC8qKlxuICAgKiBSZW1vdmUgSXRlbS5cbiAgICogQHBhcmFtIHtzdHJpbmd9IGtleVxuICAgKiBAcmV0dXJuIHtQcm9taXNlPHZvaWQ+fVxuICAgKi9cbiAgYXN5bmMgcmVtb3ZlSXRlbShrZXk6IHN0cmluZykge1xuICAgIHRoaXMubG9jYWxTdG9yYWdlLnJlbW92ZUl0ZW0oa2V5KVxuICB9XG5cbiAgLyoqXG4gICAqIFNldCBJdGVtLlxuICAgKiBAcGFyYW0ge3N0cmluZ30ga2V5XG4gICAqIEBwYXJhbSB7c3RyaW5nfSB2YWx1ZVxuICAgKiBAcmV0dXJuIHtQcm9taXNlPHZvaWQ+fVxuICAgKi9cbiAgYXN5bmMgc2V0SXRlbShrZXk6IHN0cmluZywgdmFsdWU6IHN0cmluZyk6IFByb21pc2U8dm9pZD4ge1xuICAgIHRoaXMubG9jYWxTdG9yYWdlLnNldEl0ZW0oa2V5LCB2YWx1ZSlcbiAgfVxuXG4gIGdldEl0ZW1TeW5jKGtleTogc3RyaW5nKTogc3RyaW5nIHwgbnVsbCB7XG4gICAgcmV0dXJuIHRoaXMubG9jYWxTdG9yYWdlLmdldEl0ZW0oa2V5KVxuICB9XG5cbiAgc2V0SXRlbVN5bmMoa2V5OiBzdHJpbmcsIHZhbHVlOiBzdHJpbmcpIHtcbiAgICB0aGlzLmxvY2FsU3RvcmFnZS5zZXRJdGVtKGtleSwgdmFsdWUpXG4gIH1cblxuICByZW1vdmVJdGVtU3luYyhrZXk6IHN0cmluZykge1xuICAgIHRoaXMubG9jYWxTdG9yYWdlLnJlbW92ZUl0ZW0oa2V5KVxuICB9XG59XG5cbi8qKlxuICogY29weSB0byBnaXRAZ2l0LndvYS5jb206UUJhc2UvbGNhcC9kYXRhc291cmNlLmdpdC9wYWNrYWdlcy9jbG91ZC1zZGsvY29tbW9uXG4gKiDlkIzmraXkv67mlLlcbiAqL1xuY29uc3QgVVJMX1JFRyA9IC9eW146XSs6XFwvXFwvW14vXSsoXFwvW14/I10rKS9cblxuZnVuY3Rpb24gZ2VuZXJhdGVPYXV0aENsaWVudFJlcXVlc3QocmVxQ2xhc3MpIHtcbiAgcmV0dXJuIGFzeW5jIGZ1bmN0aW9uIChcbiAgICB1cmw6IHN0cmluZyxcbiAgICBvcHRpb25zPzoge1xuICAgICAgYm9keT86IGFueSB8IG51bGxcbiAgICAgIGhlYWRlcnM/OiBhbnkgfCBudWxsXG4gICAgICBtZXRob2Q/OiBzdHJpbmdcbiAgICAgIFtrZXk6IHN0cmluZ106IGFueVxuICAgIH0sXG4gICkge1xuICAgIGNvbnN0IHJlcXVlc3RJZCA9IG9wdGlvbnM/LmhlYWRlcnM/LlsneC1yZXF1ZXN0LWlkJ11cblxuICAgIHJldHVybiBuZXcgUHJvbWlzZSgocmVzb2x2ZSwgcmVqZWN0KSA9PiB7XG4gICAgICAvLyBPYmplY3RzIG11c3QgYmUgY29waWVkIHRvIHByZXZlbnQgbW9kaWZpY2F0aW9uIG9mIGRhdGEgc3VjaCBhcyBib2R5LlxuICAgICAgY29uc3QgY29weU9wdGlvbnMgPSBPYmplY3QuYXNzaWduKHt9LCBvcHRpb25zKVxuICAgICAgaWYgKGNvcHlPcHRpb25zLmJvZHkgJiYgdHlwZW9mIGNvcHlPcHRpb25zLmJvZHkgIT09ICdzdHJpbmcnKSB7XG4gICAgICAgIGNvcHlPcHRpb25zLmJvZHkgPSBKU09OLnN0cmluZ2lmeShjb3B5T3B0aW9ucy5ib2R5KVxuICAgICAgfVxuXG4gICAgICBjb25zdCB0YXNrID0gd3gucmVxdWVzdCh7XG4gICAgICAgIHVybCxcbiAgICAgICAgZGF0YTogY29weU9wdGlvbnMuYm9keSxcbiAgICAgICAgdGltZW91dDogcmVxQ2xhc3MuX3RpbWVvdXQsXG4gICAgICAgIG1ldGhvZDogY29weU9wdGlvbnMubWV0aG9kIHx8ICdHRVQnLFxuICAgICAgICBoZWFkZXI6IGNvcHlPcHRpb25zLmhlYWRlcnMsXG4gICAgICAgIHN1Y2Nlc3MocmVzKSB7XG4gICAgICAgICAgaWYgKHJlcy5jb2RlKSB7XG4gICAgICAgICAgICByZXMgPSB7XG4gICAgICAgICAgICAgIGVycm9yOiByZXMuY29kZSxcbiAgICAgICAgICAgICAgZXJyb3JfZGVzY3JpcHRpb246IHJlcy5tZXNzYWdlIHx8IHJlcy5jb2RlLFxuICAgICAgICAgICAgICByZXF1ZXN0X2lkOiByZXMucmVxdWVzdElkLFxuICAgICAgICAgICAgfVxuICAgICAgICAgIH1cblxuICAgICAgICAgIGlmICghcmVzLnJlcXVlc3RfaWQpIHtcbiAgICAgICAgICAgIHJlcy5yZXF1ZXN0X2lkID0gcmVzLnJlcXVlc3RfaWQgfHwgcmVxdWVzdElkXG4gICAgICAgICAgfVxuXG4gICAgICAgICAgaWYgKHJlcy5lcnJvcikge1xuICAgICAgICAgICAgcmVzLmVycm9yX3VyaSA9IGdldFVybFBhdGgodXJsKVxuICAgICAgICAgICAgcmVqZWN0KHJlcylcbiAgICAgICAgICB9XG4gICAgICAgICAgcmVzb2x2ZShyZXMuZGF0YSB8fCB7fSlcbiAgICAgICAgfSxcbiAgICAgICAgZmFpbChlcnIpIHtcbiAgICAgICAgICByZWplY3Qoe1xuICAgICAgICAgICAgZXJyb3I6ICd1bnJlYWNoYWJsZScsXG4gICAgICAgICAgICBlcnJvcl9kZXNjcmlwdGlvbjogKGVyciBhcyBFcnJvcikubWVzc2FnZSxcbiAgICAgICAgICB9KVxuICAgICAgICB9LFxuICAgICAgICBjb21wbGV0ZShlcnIpIHtcbiAgICAgICAgICBpZiAoIWVyciB8fCAhZXJyLmVyck1zZykge1xuICAgICAgICAgICAgcmV0dXJuXG4gICAgICAgICAgfVxuICAgICAgICAgIGlmICghcmVxQ2xhc3MuX3RpbWVvdXQgfHwgcmVxQ2xhc3MuX3Jlc3RyaWN0ZWRNZXRob2RzLmluZGV4T2YoJ3JlcXVlc3QnKSA9PT0gLTEpIHtcbiAgICAgICAgICAgIHJldHVyblxuICAgICAgICAgIH1cbiAgICAgICAgICBjb25zdCB7IGVyck1zZyB9ID0gZXJyXG4gICAgICAgICAgaWYgKGVyck1zZyA9PT0gJ3JlcXVlc3Q6ZmFpbCB0aW1lb3V0Jykge1xuICAgICAgICAgICAgY29uc29sZS53YXJuKHJlcUNsYXNzLl90aW1lb3V0TXNnKVxuICAgICAgICAgICAgdHJ5IHtcbiAgICAgICAgICAgICAgdGFzay5hYm9ydCgpXG4gICAgICAgICAgICB9IGNhdGNoIChlKSB7fVxuICAgICAgICAgIH1cbiAgICAgICAgfSxcbiAgICAgIH0pXG4gICAgfSlcbiAgfVxufVxuXG4vKipcbiAqIEdldCB1cmwgcGF0aC5cbiAqIEBwYXJhbSB7c3RyaW5nfSB1cmxcbiAqIEByZXR1cm4ge3N0cmluZ31cbiAqL1xuZnVuY3Rpb24gZ2V0VXJsUGF0aCh1cmw6IHN0cmluZykge1xuICAvLyByZXR1cm4gcGF0aCBpZiBtYXRjaGVkLCBvciBvcmlnaW5hbCB1cmxcbiAgcmV0dXJuIFVSTF9SRUcudGVzdCh1cmwpID8gUmVnRXhwLiQxIDogdXJsXG59XG5cbmV4cG9ydCBjb25zdCB1c2VBdXRoQWRhcHRlciA9IChjb25maWc6IEF1dGhPcHRpb25zKSA9PiB7XG4gIGlmICghYWRhcHRlckZvcld4TXAuaXNNYXRjaCgpIHx8IChjb25maWcuc3RvcmFnZSAmJiBjb25maWcuYmFzZVJlcXVlc3QpKSByZXR1cm4gY29uZmlnXG5cbiAgY29uc3QgYXV0aE9wdGlvbnM6IGFueSA9IHt9XG4gIHRyeSB7XG4gICAgY29uc3QgeyBsb2NhbFN0b3JhZ2UsIHJlcUNsYXNzOiBSZXFDbGFzcyB9ID0gYWRhcHRlckZvcld4TXAuZ2VuQWRhcHRlcigpXG4gICAgaWYgKGxvY2FsU3RvcmFnZSkge1xuICAgICAgYXV0aE9wdGlvbnMuc3RvcmFnZSA9IG5ldyBPYXV0aENsaWVudFN0b3JhZ2VCYXNlKHsgbG9jYWxTdG9yYWdlIH0pXG4gICAgfVxuICAgIGlmIChSZXFDbGFzcykge1xuICAgICAgY29uc3QgcmVxQ2xhc3MgPSBuZXcgUmVxQ2xhc3Moe1xuICAgICAgICB0aW1lb3V0OiAxMDAwMCxcbiAgICAgICAgcmVzdHJpY3RlZE1ldGhvZHM6IFsnZ2V0JywgJ3Bvc3QnLCAndXBsb2FkJywgJ2Rvd25sb2FkJywgJ3JlcXVlc3QnXSxcbiAgICAgIH0pXG4gICAgICBhdXRoT3B0aW9ucy5yZXF1ZXN0ID0gZ2VuZXJhdGVPYXV0aENsaWVudFJlcXVlc3QocmVxQ2xhc3MpXG4gICAgfVxuXG4gICAgcmV0dXJuIHsgLi4uY29uZmlnLCAuLi5hdXRoT3B0aW9ucyB9XG4gIH0gY2F0Y2ggKGUpIHtcbiAgICBjb25zb2xlLmVycm9yKCdhZGFwdGVyIGdlbmVyYXRlIGZhaWw6JywgZSlcbiAgfVxuXG4gIHJldHVybiBjb25maWdcbn1cbiJdfQ==
@@ -0,0 +1,148 @@
1
+ import type { ICloudbase, ICloudbaseConfig } from '@cloudbase/types';
2
+ import type { ICloudbaseCache } from '@cloudbase/types/cache';
3
+ import type { ICloudbaseRequest } from '@cloudbase/types/request';
4
+ import type { ICloudbaseAuthConfig, IUser, IUserInfo, ILoginState } from '@cloudbase/types/auth';
5
+ import { authModels, CloudbaseOAuth, AuthOptions, Credentials } from '@cloudbase/oauth';
6
+ import type { ProviderSubType } from '@cloudbase/oauth/dist/cjs/auth/models';
7
+ interface UserInfo {
8
+ uid?: string;
9
+ gender?: string;
10
+ picture?: string;
11
+ email?: string;
12
+ email_verified?: boolean;
13
+ phone_number?: string;
14
+ username?: string;
15
+ name?: string;
16
+ birthdate?: string;
17
+ zoneinfo?: string;
18
+ locale?: string;
19
+ sub?: string;
20
+ created_from?: string;
21
+ }
22
+ interface IUserOptions {
23
+ cache: ICloudbaseCache;
24
+ oauthInstance: CloudbaseOAuth;
25
+ }
26
+ interface ILoginStateOptions extends IUserOptions {
27
+ envId: string;
28
+ }
29
+ export declare class LoginState implements ILoginState {
30
+ user: IUser;
31
+ oauthLoginState: any;
32
+ private oauthInstance;
33
+ private cache;
34
+ constructor(options: ILoginStateOptions);
35
+ checkLocalState(): void;
36
+ checkLocalStateAsync(): Promise<void>;
37
+ }
38
+ declare class Auth {
39
+ private readonly config;
40
+ private readonly cache;
41
+ private oauthInstance;
42
+ constructor(config: ICloudbaseAuthConfig & {
43
+ cache: ICloudbaseCache;
44
+ request?: ICloudbaseRequest;
45
+ runtime?: string;
46
+ });
47
+ bindPhoneNumber(params: authModels.BindPhoneRequest): Promise<void>;
48
+ unbindProvider(params: authModels.UnbindProviderRequest): Promise<void>;
49
+ bindEmail(params: authModels.BindEmailRequest): Promise<void>;
50
+ verify(params: authModels.VerifyRequest): Promise<authModels.VerifyResponse>;
51
+ getVerification(params: authModels.GetVerificationRequest): Promise<authModels.GetVerificationResponse>;
52
+ get currentUser(): IUser;
53
+ getCurrentUser(): Promise<IUser>;
54
+ signInAnonymously(data?: {
55
+ provider_token?: string;
56
+ }): Promise<LoginState>;
57
+ signInWithOpenId({ useWxCloud }?: {
58
+ useWxCloud?: boolean;
59
+ }): Promise<LoginState>;
60
+ signInWithUnionId(): Promise<LoginState>;
61
+ signInWithPhoneAuth({ phoneCode }: {
62
+ phoneCode?: string;
63
+ }): Promise<LoginState>;
64
+ signInWithSms({ verificationInfo, verificationCode, phoneNum, bindInfo, }: {
65
+ verificationInfo?: {
66
+ id: string;
67
+ isUser: boolean;
68
+ };
69
+ verificationCode?: string;
70
+ phoneNum?: string;
71
+ bindInfo?: any;
72
+ }): Promise<LoginState>;
73
+ setCustomSignFunc(getTickFn: authModels.GetCustomSignTicketFn): void;
74
+ signInWithCustomTicket(params?: {
75
+ version?: string;
76
+ }): Promise<LoginState>;
77
+ signIn(params: authModels.SignInRequest): Promise<LoginState>;
78
+ signUp(params: authModels.SignUpRequest): Promise<LoginState>;
79
+ setPassword(params: authModels.SetPasswordRequest): Promise<void>;
80
+ isUsernameRegistered(username: string): Promise<boolean>;
81
+ signOut(): Promise<void>;
82
+ hasLoginState(): LoginState | null;
83
+ getLoginState(): Promise<LoginState>;
84
+ getUserInfo(params?: {
85
+ version?: string;
86
+ }): Promise<IUserInfo>;
87
+ getWedaUserInfo(): Promise<any>;
88
+ updateUserBasicInfo(params: authModels.ModifyUserBasicInfoRequest): Promise<void>;
89
+ getAuthHeader(): {};
90
+ bindWithProvider(params: authModels.BindWithProviderRequest): Promise<void>;
91
+ queryUser(queryObj: authModels.QueryUserProfileRequest): Promise<authModels.QueryUserProfileResponse>;
92
+ getAccessToken(): Promise<{
93
+ accessToken: string;
94
+ env: string;
95
+ }>;
96
+ grantProviderToken(params: authModels.GrantProviderTokenRequest): Promise<authModels.GrantProviderTokenResponse>;
97
+ patchProviderToken(params: authModels.PatchProviderTokenRequest): Promise<authModels.PatchProviderTokenResponse>;
98
+ signInWithProvider(params: authModels.SignInWithProviderRequest): Promise<LoginState>;
99
+ signInWithWechat(params?: any): Promise<LoginState>;
100
+ grantToken(params: authModels.GrantTokenRequest): Promise<LoginState>;
101
+ genProviderRedirectUri(params: authModels.GenProviderRedirectUriRequest): Promise<authModels.GenProviderRedirectUriResponse>;
102
+ resetPassword(params: authModels.ResetPasswordRequest): Promise<void>;
103
+ deviceAuthorize(params: authModels.DeviceAuthorizeRequest): Promise<authModels.DeviceAuthorizeResponse>;
104
+ sudo(params: authModels.SudoRequest): Promise<authModels.SudoResponse>;
105
+ deleteMe(params: authModels.WithSudoRequest): Promise<authModels.UserProfile>;
106
+ getProviders(): Promise<authModels.UserProfileProvider>;
107
+ loginScope(): Promise<string>;
108
+ loginGroups(): Promise<string[]>;
109
+ onLoginStateChanged(callback: Function): Promise<void>;
110
+ refreshTokenForce(params: {
111
+ version?: string;
112
+ }): Promise<Credentials>;
113
+ getCredentials(): Promise<Credentials>;
114
+ setCredentials(credentials: Credentials): Promise<void>;
115
+ getProviderSubType(): Promise<ProviderSubType>;
116
+ createCaptchaData(params: {
117
+ state: string;
118
+ redirect_uri?: string;
119
+ }): Promise<{
120
+ captcha_token: string;
121
+ expires_in: number;
122
+ }>;
123
+ verifyCaptchaData(params: {
124
+ token: string;
125
+ key: string;
126
+ }): Promise<{
127
+ captcha_token: string;
128
+ expires_in: number;
129
+ }>;
130
+ getMiniProgramQrCode(params: authModels.GetMiniProgramQrCodeRequest): Promise<authModels.GetMiniProgramQrCodeResponse>;
131
+ getMiniProgramQrCodeStatus(params: authModels.GetMiniProgramQrCodeStatusRequest): Promise<authModels.GetMiniProgramQrCodeStatusResponse>;
132
+ private createLoginState;
133
+ }
134
+ type TInitAuthOptions = Pick<ICloudbaseAuthConfig, 'region' | 'persistence'> & Partial<AuthOptions>;
135
+ export declare function generateAuthInstance(config: TInitAuthOptions, options?: {
136
+ clientId: ICloudbaseConfig['clientId'];
137
+ env: ICloudbaseConfig['env'];
138
+ apiOrigin: string;
139
+ cache?: ICloudbaseCache;
140
+ platform?: ICloudbase['platform'];
141
+ app?: ICloudbase;
142
+ debug?: ICloudbaseAuthConfig['debug'];
143
+ }): {
144
+ authInstance: Auth;
145
+ oauthInstance: CloudbaseOAuth;
146
+ };
147
+ export { UserInfo, Auth };
148
+ export declare function registerAuth(app: Pick<ICloudbase, 'registerComponent'>): void;