@cloudbase/auth 1.6.1 → 2.0.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/cjs/index.d.ts +50 -96
- package/dist/cjs/index.js +411 -679
- package/dist/esm/index.d.ts +50 -96
- package/dist/esm/index.js +412 -676
- package/package.json +52 -54
- package/src/index.ts +413 -650
- package/dist/cjs/constants.d.ts +0 -11
- package/dist/cjs/constants.js +0 -16
- package/dist/cjs/providers/anonymousAuthProvider.d.ts +0 -15
- package/dist/cjs/providers/anonymousAuthProvider.js +0 -255
- package/dist/cjs/providers/base.d.ts +0 -20
- package/dist/cjs/providers/base.js +0 -158
- package/dist/cjs/providers/customAuthProvider.d.ts +0 -5
- package/dist/cjs/providers/customAuthProvider.js +0 -149
- package/dist/cjs/providers/emailAuthProvider.d.ts +0 -9
- package/dist/cjs/providers/emailAuthProvider.js +0 -248
- package/dist/cjs/providers/phoneAuthProvider.d.ts +0 -17
- package/dist/cjs/providers/phoneAuthProvider.js +0 -217
- package/dist/cjs/providers/usernameAuthProvider.d.ts +0 -5
- package/dist/cjs/providers/usernameAuthProvider.js +0 -168
- package/dist/cjs/providers/weixinAuthProvider.d.ts +0 -28
- package/dist/cjs/providers/weixinAuthProvider.js +0 -294
- package/dist/esm/constants.d.ts +0 -11
- package/dist/esm/constants.js +0 -13
- package/dist/esm/providers/anonymousAuthProvider.d.ts +0 -15
- package/dist/esm/providers/anonymousAuthProvider.js +0 -252
- package/dist/esm/providers/base.d.ts +0 -20
- package/dist/esm/providers/base.js +0 -155
- package/dist/esm/providers/customAuthProvider.d.ts +0 -5
- package/dist/esm/providers/customAuthProvider.js +0 -146
- package/dist/esm/providers/emailAuthProvider.d.ts +0 -9
- package/dist/esm/providers/emailAuthProvider.js +0 -245
- package/dist/esm/providers/phoneAuthProvider.d.ts +0 -17
- package/dist/esm/providers/phoneAuthProvider.js +0 -214
- package/dist/esm/providers/usernameAuthProvider.d.ts +0 -5
- package/dist/esm/providers/usernameAuthProvider.js +0 -165
- package/dist/esm/providers/weixinAuthProvider.d.ts +0 -28
- package/dist/esm/providers/weixinAuthProvider.js +0 -291
- package/src/constants.ts +0 -11
- package/src/providers/anonymousAuthProvider.ts +0 -125
- package/src/providers/base.ts +0 -66
- package/src/providers/customAuthProvider.ts +0 -68
- package/src/providers/emailAuthProvider.ts +0 -139
- package/src/providers/phoneAuthProvider.ts +0 -130
- package/src/providers/usernameAuthProvider.ts +0 -76
- package/src/providers/weixinAuthProvider.ts +0 -193
package/dist/cjs/constants.d.ts
DELETED
package/dist/cjs/constants.js
DELETED
|
@@ -1,16 +0,0 @@
|
|
|
1
|
-
"use strict";
|
|
2
|
-
Object.defineProperty(exports, "__esModule", { value: true });
|
|
3
|
-
exports.LOGINTYPE = void 0;
|
|
4
|
-
var LOGINTYPE;
|
|
5
|
-
(function (LOGINTYPE) {
|
|
6
|
-
LOGINTYPE["ANONYMOUS"] = "ANONYMOUS";
|
|
7
|
-
LOGINTYPE["WECHAT"] = "WECHAT";
|
|
8
|
-
LOGINTYPE["WECHAT_PUBLIC"] = "WECHAT-PUBLIC";
|
|
9
|
-
LOGINTYPE["WECHAT_OPEN"] = "WECHAT-OPEN";
|
|
10
|
-
LOGINTYPE["CUSTOM"] = "CUSTOM";
|
|
11
|
-
LOGINTYPE["EMAIL"] = "EMAIL";
|
|
12
|
-
LOGINTYPE["USERNAME"] = "USERNAME";
|
|
13
|
-
LOGINTYPE["NULL"] = "NULL";
|
|
14
|
-
LOGINTYPE["PHONE"] = "PHONE";
|
|
15
|
-
})(LOGINTYPE = exports.LOGINTYPE || (exports.LOGINTYPE = {}));
|
|
16
|
-
//# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoiY29uc3RhbnRzLmpzIiwic291cmNlUm9vdCI6IiIsInNvdXJjZXMiOlsiLi4vLi4vc3JjL2NvbnN0YW50cy50cyJdLCJuYW1lcyI6W10sIm1hcHBpbmdzIjoiOzs7QUFBQSxJQUFZLFNBVVg7QUFWRCxXQUFZLFNBQVM7SUFDbkIsb0NBQXVCLENBQUE7SUFDdkIsOEJBQWlCLENBQUE7SUFDakIsNENBQStCLENBQUE7SUFDL0Isd0NBQTJCLENBQUE7SUFDM0IsOEJBQWlCLENBQUE7SUFDakIsNEJBQWUsQ0FBQTtJQUNmLGtDQUFxQixDQUFBO0lBQ3JCLDBCQUFhLENBQUE7SUFDYiw0QkFBZSxDQUFBO0FBQ2pCLENBQUMsRUFWVyxTQUFTLEdBQVQsaUJBQVMsS0FBVCxpQkFBUyxRQVVwQiIsInNvdXJjZXNDb250ZW50IjpbImV4cG9ydCBlbnVtIExPR0lOVFlQRSB7XG4gIEFOT05ZTU9VUyA9ICdBTk9OWU1PVVMnLFxuICBXRUNIQVQgPSAnV0VDSEFUJyxcbiAgV0VDSEFUX1BVQkxJQyA9ICdXRUNIQVQtUFVCTElDJyxcbiAgV0VDSEFUX09QRU4gPSAnV0VDSEFULU9QRU4nLFxuICBDVVNUT00gPSAnQ1VTVE9NJyxcbiAgRU1BSUwgPSAnRU1BSUwnLFxuICBVU0VSTkFNRSA9ICdVU0VSTkFNRScsXG4gIE5VTEwgPSAnTlVMTCcsXG4gIFBIT05FID0gJ1BIT05FJ1xufVxuIl19
|
|
@@ -1,15 +0,0 @@
|
|
|
1
|
-
import { AuthProvider } from './base';
|
|
2
|
-
import { ICloudbaseAuthConfig, ILoginState } from '@cloudbase/types/auth';
|
|
3
|
-
import { ICloudbaseCache } from '@cloudbase/types/cache';
|
|
4
|
-
import { ICloudbaseRequest } from '@cloudbase/types/request';
|
|
5
|
-
export declare class AnonymousAuthProvider extends AuthProvider {
|
|
6
|
-
constructor(config: ICloudbaseAuthConfig & {
|
|
7
|
-
cache: ICloudbaseCache;
|
|
8
|
-
request: ICloudbaseRequest;
|
|
9
|
-
});
|
|
10
|
-
signIn(): Promise<ILoginState>;
|
|
11
|
-
linkAndRetrieveDataWithTicket(ticket: string): Promise<ILoginState>;
|
|
12
|
-
private _setAnonymousUUID;
|
|
13
|
-
private _clearAnonymousUUID;
|
|
14
|
-
private _onConverted;
|
|
15
|
-
}
|
|
@@ -1,255 +0,0 @@
|
|
|
1
|
-
"use strict";
|
|
2
|
-
var __extends = (this && this.__extends) || (function () {
|
|
3
|
-
var extendStatics = function (d, b) {
|
|
4
|
-
extendStatics = Object.setPrototypeOf ||
|
|
5
|
-
({ __proto__: [] } instanceof Array && function (d, b) { d.__proto__ = b; }) ||
|
|
6
|
-
function (d, b) { for (var p in b) if (b.hasOwnProperty(p)) d[p] = b[p]; };
|
|
7
|
-
return extendStatics(d, b);
|
|
8
|
-
};
|
|
9
|
-
return function (d, b) {
|
|
10
|
-
extendStatics(d, b);
|
|
11
|
-
function __() { this.constructor = d; }
|
|
12
|
-
d.prototype = b === null ? Object.create(b) : (__.prototype = b.prototype, new __());
|
|
13
|
-
};
|
|
14
|
-
})();
|
|
15
|
-
var __decorate = (this && this.__decorate) || function (decorators, target, key, desc) {
|
|
16
|
-
var c = arguments.length, r = c < 3 ? target : desc === null ? desc = Object.getOwnPropertyDescriptor(target, key) : desc, d;
|
|
17
|
-
if (typeof Reflect === "object" && typeof Reflect.decorate === "function") r = Reflect.decorate(decorators, target, key, desc);
|
|
18
|
-
else for (var i = decorators.length - 1; i >= 0; i--) if (d = decorators[i]) r = (c < 3 ? d(r) : c > 3 ? d(target, key, r) : d(target, key)) || r;
|
|
19
|
-
return c > 3 && r && Object.defineProperty(target, key, r), r;
|
|
20
|
-
};
|
|
21
|
-
var __metadata = (this && this.__metadata) || function (k, v) {
|
|
22
|
-
if (typeof Reflect === "object" && typeof Reflect.metadata === "function") return Reflect.metadata(k, v);
|
|
23
|
-
};
|
|
24
|
-
var __awaiter = (this && this.__awaiter) || function (thisArg, _arguments, P, generator) {
|
|
25
|
-
function adopt(value) { return value instanceof P ? value : new P(function (resolve) { resolve(value); }); }
|
|
26
|
-
return new (P || (P = Promise))(function (resolve, reject) {
|
|
27
|
-
function fulfilled(value) { try { step(generator.next(value)); } catch (e) { reject(e); } }
|
|
28
|
-
function rejected(value) { try { step(generator["throw"](value)); } catch (e) { reject(e); } }
|
|
29
|
-
function step(result) { result.done ? resolve(result.value) : adopt(result.value).then(fulfilled, rejected); }
|
|
30
|
-
step((generator = generator.apply(thisArg, _arguments || [])).next());
|
|
31
|
-
});
|
|
32
|
-
};
|
|
33
|
-
var __generator = (this && this.__generator) || function (thisArg, body) {
|
|
34
|
-
var _ = { label: 0, sent: function() { if (t[0] & 1) throw t[1]; return t[1]; }, trys: [], ops: [] }, f, y, t, g;
|
|
35
|
-
return g = { next: verb(0), "throw": verb(1), "return": verb(2) }, typeof Symbol === "function" && (g[Symbol.iterator] = function() { return this; }), g;
|
|
36
|
-
function verb(n) { return function (v) { return step([n, v]); }; }
|
|
37
|
-
function step(op) {
|
|
38
|
-
if (f) throw new TypeError("Generator is already executing.");
|
|
39
|
-
while (_) try {
|
|
40
|
-
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;
|
|
41
|
-
if (y = 0, t) op = [op[0] & 2, t.value];
|
|
42
|
-
switch (op[0]) {
|
|
43
|
-
case 0: case 1: t = op; break;
|
|
44
|
-
case 4: _.label++; return { value: op[1], done: false };
|
|
45
|
-
case 5: _.label++; y = op[1]; op = [0]; continue;
|
|
46
|
-
case 7: op = _.ops.pop(); _.trys.pop(); continue;
|
|
47
|
-
default:
|
|
48
|
-
if (!(t = _.trys, t = t.length > 0 && t[t.length - 1]) && (op[0] === 6 || op[0] === 2)) { _ = 0; continue; }
|
|
49
|
-
if (op[0] === 3 && (!t || (op[1] > t[0] && op[1] < t[3]))) { _.label = op[1]; break; }
|
|
50
|
-
if (op[0] === 6 && _.label < t[1]) { _.label = t[1]; t = op; break; }
|
|
51
|
-
if (t && _.label < t[2]) { _.label = t[2]; _.ops.push(op); break; }
|
|
52
|
-
if (t[2]) _.ops.pop();
|
|
53
|
-
_.trys.pop(); continue;
|
|
54
|
-
}
|
|
55
|
-
op = body.call(thisArg, _);
|
|
56
|
-
} catch (e) { op = [6, e]; y = 0; } finally { f = t = 0; }
|
|
57
|
-
if (op[0] & 5) throw op[1]; return { value: op[0] ? op[1] : void 0, done: true };
|
|
58
|
-
}
|
|
59
|
-
};
|
|
60
|
-
Object.defineProperty(exports, "__esModule", { value: true });
|
|
61
|
-
exports.AnonymousAuthProvider = void 0;
|
|
62
|
-
var base_1 = require("./base");
|
|
63
|
-
var utilities_1 = require("@cloudbase/utilities");
|
|
64
|
-
var constants_1 = require("../constants");
|
|
65
|
-
var __1 = require("..");
|
|
66
|
-
var ERRORS = utilities_1.constants.ERRORS, COMMUNITY_SITE_URL = utilities_1.constants.COMMUNITY_SITE_URL;
|
|
67
|
-
var throwError = utilities_1.utils.throwError, isString = utilities_1.utils.isString;
|
|
68
|
-
var addEventListener = utilities_1.events.addEventListener;
|
|
69
|
-
var catchErrorsDecorator = utilities_1.helpers.catchErrorsDecorator;
|
|
70
|
-
var AnonymousAuthProvider = (function (_super) {
|
|
71
|
-
__extends(AnonymousAuthProvider, _super);
|
|
72
|
-
function AnonymousAuthProvider(config) {
|
|
73
|
-
var _this = _super.call(this, config) || this;
|
|
74
|
-
_this._onConverted = _this._onConverted.bind(_this);
|
|
75
|
-
addEventListener(__1.EVENTS.ANONYMOUS_CONVERTED, _this._onConverted);
|
|
76
|
-
return _this;
|
|
77
|
-
}
|
|
78
|
-
AnonymousAuthProvider.prototype.signIn = function () {
|
|
79
|
-
return __awaiter(this, void 0, void 0, function () {
|
|
80
|
-
var _a, anonymousUuidKey, refreshTokenKey, anonymous_uuid, refresh_token, res, loginState;
|
|
81
|
-
return __generator(this, function (_b) {
|
|
82
|
-
switch (_b.label) {
|
|
83
|
-
case 0: return [4, this._cache.updatePersistenceAsync('local')];
|
|
84
|
-
case 1:
|
|
85
|
-
_b.sent();
|
|
86
|
-
_a = this._cache.keys, anonymousUuidKey = _a.anonymousUuidKey, refreshTokenKey = _a.refreshTokenKey;
|
|
87
|
-
return [4, this._cache.getStoreAsync(anonymousUuidKey)];
|
|
88
|
-
case 2:
|
|
89
|
-
anonymous_uuid = _b.sent();
|
|
90
|
-
return [4, this._cache.getStoreAsync(refreshTokenKey)];
|
|
91
|
-
case 3:
|
|
92
|
-
refresh_token = _b.sent();
|
|
93
|
-
return [4, this._request.send('auth.signInAnonymously', {
|
|
94
|
-
anonymous_uuid: anonymous_uuid,
|
|
95
|
-
refresh_token: refresh_token
|
|
96
|
-
})];
|
|
97
|
-
case 4:
|
|
98
|
-
res = _b.sent();
|
|
99
|
-
if (!(res.uuid && res.refresh_token)) return [3, 10];
|
|
100
|
-
return [4, this._setAnonymousUUID(res.uuid)];
|
|
101
|
-
case 5:
|
|
102
|
-
_b.sent();
|
|
103
|
-
return [4, this.setRefreshToken(res.refresh_token)];
|
|
104
|
-
case 6:
|
|
105
|
-
_b.sent();
|
|
106
|
-
return [4, this._request.refreshAccessToken()];
|
|
107
|
-
case 7:
|
|
108
|
-
_b.sent();
|
|
109
|
-
__1.eventBus.fire(__1.EVENTS.LOGIN_TYPE_CHANGED, {
|
|
110
|
-
env: this._config.env,
|
|
111
|
-
loginType: constants_1.LOGINTYPE.ANONYMOUS,
|
|
112
|
-
persistence: 'local'
|
|
113
|
-
});
|
|
114
|
-
__1.eventBus.fire(__1.EVENTS.LOGIN_STATE_CHANGED);
|
|
115
|
-
loginState = new __1.LoginState({
|
|
116
|
-
envId: this._config.env,
|
|
117
|
-
cache: this._cache,
|
|
118
|
-
request: this._request
|
|
119
|
-
});
|
|
120
|
-
return [4, loginState.checkLocalStateAsync()];
|
|
121
|
-
case 8:
|
|
122
|
-
_b.sent();
|
|
123
|
-
return [4, loginState.user.refresh()];
|
|
124
|
-
case 9:
|
|
125
|
-
_b.sent();
|
|
126
|
-
return [2, loginState];
|
|
127
|
-
case 10: throw new Error(JSON.stringify({
|
|
128
|
-
code: ERRORS.OPERATION_FAIL,
|
|
129
|
-
msg: JSON.stringify(res) || 'anonymous signIn failed'
|
|
130
|
-
}));
|
|
131
|
-
}
|
|
132
|
-
});
|
|
133
|
-
});
|
|
134
|
-
};
|
|
135
|
-
AnonymousAuthProvider.prototype.linkAndRetrieveDataWithTicket = function (ticket) {
|
|
136
|
-
return __awaiter(this, void 0, void 0, function () {
|
|
137
|
-
var _a, anonymousUuidKey, refreshTokenKey, anonymous_uuid, refresh_token, res, loginState;
|
|
138
|
-
return __generator(this, function (_b) {
|
|
139
|
-
switch (_b.label) {
|
|
140
|
-
case 0:
|
|
141
|
-
if (!isString(ticket)) {
|
|
142
|
-
throwError(ERRORS.INVALID_PARAMS, 'ticket must be a string');
|
|
143
|
-
}
|
|
144
|
-
_a = this._cache.keys, anonymousUuidKey = _a.anonymousUuidKey, refreshTokenKey = _a.refreshTokenKey;
|
|
145
|
-
return [4, this._cache.getStoreAsync(anonymousUuidKey)];
|
|
146
|
-
case 1:
|
|
147
|
-
anonymous_uuid = _b.sent();
|
|
148
|
-
return [4, this._cache.getStoreAsync(refreshTokenKey)];
|
|
149
|
-
case 2:
|
|
150
|
-
refresh_token = _b.sent();
|
|
151
|
-
return [4, this._request.send('auth.linkAndRetrieveDataWithTicket', {
|
|
152
|
-
anonymous_uuid: anonymous_uuid,
|
|
153
|
-
refresh_token: refresh_token,
|
|
154
|
-
ticket: ticket
|
|
155
|
-
})];
|
|
156
|
-
case 3:
|
|
157
|
-
res = _b.sent();
|
|
158
|
-
if (!res.refresh_token) return [3, 8];
|
|
159
|
-
return [4, this._clearAnonymousUUID()];
|
|
160
|
-
case 4:
|
|
161
|
-
_b.sent();
|
|
162
|
-
return [4, this.setRefreshToken(res.refresh_token)];
|
|
163
|
-
case 5:
|
|
164
|
-
_b.sent();
|
|
165
|
-
return [4, this._request.refreshAccessToken()];
|
|
166
|
-
case 6:
|
|
167
|
-
_b.sent();
|
|
168
|
-
__1.eventBus.fire(__1.EVENTS.ANONYMOUS_CONVERTED, { env: this._config.env });
|
|
169
|
-
__1.eventBus.fire(__1.EVENTS.LOGIN_TYPE_CHANGED, { loginType: constants_1.LOGINTYPE.CUSTOM, persistence: 'local' });
|
|
170
|
-
loginState = new __1.LoginState({
|
|
171
|
-
envId: this._config.env,
|
|
172
|
-
cache: this._cache,
|
|
173
|
-
request: this._request
|
|
174
|
-
});
|
|
175
|
-
return [4, loginState.checkLocalStateAsync()];
|
|
176
|
-
case 7:
|
|
177
|
-
_b.sent();
|
|
178
|
-
return [2, loginState];
|
|
179
|
-
case 8:
|
|
180
|
-
throwError(ERRORS.OPERATION_FAIL, JSON.stringify(res) || 'linkAndRetrieveDataWithTicket failed');
|
|
181
|
-
_b.label = 9;
|
|
182
|
-
case 9: return [2];
|
|
183
|
-
}
|
|
184
|
-
});
|
|
185
|
-
});
|
|
186
|
-
};
|
|
187
|
-
AnonymousAuthProvider.prototype._setAnonymousUUID = function (id) {
|
|
188
|
-
return __awaiter(this, void 0, void 0, function () {
|
|
189
|
-
var _a, anonymousUuidKey, loginTypeKey;
|
|
190
|
-
return __generator(this, function (_b) {
|
|
191
|
-
switch (_b.label) {
|
|
192
|
-
case 0:
|
|
193
|
-
_a = this._cache.keys, anonymousUuidKey = _a.anonymousUuidKey, loginTypeKey = _a.loginTypeKey;
|
|
194
|
-
return [4, this._cache.removeStoreAsync(anonymousUuidKey)];
|
|
195
|
-
case 1:
|
|
196
|
-
_b.sent();
|
|
197
|
-
return [4, this._cache.setStoreAsync(anonymousUuidKey, id)];
|
|
198
|
-
case 2:
|
|
199
|
-
_b.sent();
|
|
200
|
-
return [4, this._cache.setStoreAsync(loginTypeKey, constants_1.LOGINTYPE.ANONYMOUS)];
|
|
201
|
-
case 3:
|
|
202
|
-
_b.sent();
|
|
203
|
-
return [2];
|
|
204
|
-
}
|
|
205
|
-
});
|
|
206
|
-
});
|
|
207
|
-
};
|
|
208
|
-
AnonymousAuthProvider.prototype._clearAnonymousUUID = function () {
|
|
209
|
-
return __awaiter(this, void 0, void 0, function () {
|
|
210
|
-
return __generator(this, function (_a) {
|
|
211
|
-
switch (_a.label) {
|
|
212
|
-
case 0: return [4, this._cache.removeStoreAsync(this._cache.keys.anonymousUuidKey)];
|
|
213
|
-
case 1:
|
|
214
|
-
_a.sent();
|
|
215
|
-
return [2];
|
|
216
|
-
}
|
|
217
|
-
});
|
|
218
|
-
});
|
|
219
|
-
};
|
|
220
|
-
AnonymousAuthProvider.prototype._onConverted = function (ev) {
|
|
221
|
-
return __awaiter(this, void 0, void 0, function () {
|
|
222
|
-
var env;
|
|
223
|
-
return __generator(this, function (_a) {
|
|
224
|
-
switch (_a.label) {
|
|
225
|
-
case 0:
|
|
226
|
-
env = ev.data.env;
|
|
227
|
-
if (env !== this._config.env) {
|
|
228
|
-
return [2];
|
|
229
|
-
}
|
|
230
|
-
return [4, this._cache.updatePersistenceAsync(this._config.persistence)];
|
|
231
|
-
case 1:
|
|
232
|
-
_a.sent();
|
|
233
|
-
return [2];
|
|
234
|
-
}
|
|
235
|
-
});
|
|
236
|
-
});
|
|
237
|
-
};
|
|
238
|
-
__decorate([
|
|
239
|
-
catchErrorsDecorator({
|
|
240
|
-
title: '匿名登录失败',
|
|
241
|
-
messages: [
|
|
242
|
-
'请确认以下各项:',
|
|
243
|
-
' 1 - 当前环境是否开启了匿名登录',
|
|
244
|
-
' 2 - 调用 auth().anonymouseProvider().signIn() 的语法或参数是否正确',
|
|
245
|
-
"\u5982\u679C\u95EE\u9898\u4F9D\u7136\u5B58\u5728\uFF0C\u5EFA\u8BAE\u5230\u5B98\u65B9\u95EE\u7B54\u793E\u533A\u63D0\u95EE\u6216\u5BFB\u627E\u5E2E\u52A9\uFF1A" + COMMUNITY_SITE_URL
|
|
246
|
-
]
|
|
247
|
-
}),
|
|
248
|
-
__metadata("design:type", Function),
|
|
249
|
-
__metadata("design:paramtypes", []),
|
|
250
|
-
__metadata("design:returntype", Promise)
|
|
251
|
-
], AnonymousAuthProvider.prototype, "signIn", null);
|
|
252
|
-
return AnonymousAuthProvider;
|
|
253
|
-
}(base_1.AuthProvider));
|
|
254
|
-
exports.AnonymousAuthProvider = AnonymousAuthProvider;
|
|
255
|
-
//# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoiYW5vbnltb3VzQXV0aFByb3ZpZGVyLmpzIiwic291cmNlUm9vdCI6IiIsInNvdXJjZXMiOlsiLi4vLi4vLi4vc3JjL3Byb3ZpZGVycy9hbm9ueW1vdXNBdXRoUHJvdmlkZXIudHMiXSwibmFtZXMiOltdLCJtYXBwaW5ncyI6Ijs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7OztBQUFBLCtCQUFzQztBQUV0QyxrREFBeUU7QUFHekUsMENBQXlDO0FBQ3pDLHdCQUFrRDtBQUUxQyxJQUFBLE1BQU0sR0FBeUIscUJBQVMsT0FBbEMsRUFBRSxrQkFBa0IsR0FBSyxxQkFBUyxtQkFBZCxDQUFlO0FBQ3pDLElBQUEsVUFBVSxHQUFlLGlCQUFLLFdBQXBCLEVBQUUsUUFBUSxHQUFLLGlCQUFLLFNBQVYsQ0FBVztBQUMvQixJQUFBLGdCQUFnQixHQUFLLGtCQUFNLGlCQUFYLENBQVk7QUFDNUIsSUFBQSxvQkFBb0IsR0FBSyxtQkFBTyxxQkFBWixDQUFhO0FBRXpDO0lBQTJDLHlDQUFZO0lBQ3JELCtCQUFZLE1BQTZFO1FBQXpGLFlBQ0Usa0JBQU0sTUFBTSxDQUFDLFNBS2Q7UUFIQyxLQUFJLENBQUMsWUFBWSxHQUFHLEtBQUksQ0FBQyxZQUFZLENBQUMsSUFBSSxDQUFDLEtBQUksQ0FBQyxDQUFDO1FBRWpELGdCQUFnQixDQUFDLFVBQU0sQ0FBQyxtQkFBbUIsRUFBRSxLQUFJLENBQUMsWUFBWSxDQUFDLENBQUM7O0lBQ2xFLENBQUM7SUFXWSxzQ0FBTSxHQUFuQjs7Ozs7NEJBRUUsV0FBTSxJQUFJLENBQUMsTUFBTSxDQUFDLHNCQUFzQixDQUFDLE9BQU8sQ0FBQyxFQUFBOzt3QkFBakQsU0FBaUQsQ0FBQzt3QkFDNUMsS0FBd0MsSUFBSSxDQUFDLE1BQU0sQ0FBQyxJQUFJLEVBQXRELGdCQUFnQixzQkFBQSxFQUFFLGVBQWUscUJBQUEsQ0FBc0I7d0JBRXhDLFdBQU0sSUFBSSxDQUFDLE1BQU0sQ0FBQyxhQUFh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QyxFQUFBOzt3QkFBcEQsU0FBb0QsQ0FBQzt3QkFDckQsV0FBTSxJQUFJLENBQUMsTUFBTSxDQUFDLGFBQWEsQ0FBQyxnQkFBZ0IsRUFBRSxFQUFFLENBQUMsRUFBQTs7d0JBQXJELFNBQXFELENBQUM7d0JBQ3RELFdBQU0sSUFBSSxDQUFDLE1BQU0sQ0FBQyxhQUFhLENBQUMsWUFBWSxFQUFFLHFCQUFTLENBQUMsU0FBUyxDQUFDLEVBQUE7O3dCQUFsRSxTQUFrRSxDQUFDOzs7OztLQUNwRTtJQUNhLG1EQUFtQixHQUFqQzs7Ozs0QkFDRSxXQUFNLElBQUksQ0FBQyxNQUFNLENBQUMsZ0JBQWdCLENBQUMsSUFBSSxDQUFDLE1BQU0sQ0FBQyxJQUFJLENBQUMsZ0JBQWdCLENBQUMsRUFBQTs7d0JBQXJFLFNBQXFFLENBQUM7Ozs7O0tBQ3ZFO0lBQ2EsNENBQVksR0FBMUIsVUFBMkIsRUFBRTs7Ozs7O3dCQUNuQixHQUFHLEdBQUssRUFBRSxDQUFDLElBQUksSUFBWixDQUFhO3dCQUN4QixJQUFJLEdBQUcsS0FBSyxJQUFJLENBQUMsT0FBTyxDQUFDLEdBQUcsRUFBRTs0QkFDNUIsV0FBTzt5QkFDUjt3QkFFRCxXQUFNLElBQUksQ0FBQyxNQUFNLENBQUMsc0JBQXNCLENBQUMsSUFBSSxDQUFDLE9BQU8sQ0FBQyxXQUFXLENBQUMsRUFBQTs7d0JBQWxFLFNBQWtFLENBQUM7Ozs7O0tBQ3BFO0lBNUZEO1FBVEMsb0JBQW9CLENBQUM7WUFDcEIsS0FBSyxFQUFFLFFBQVE7WUFDZixRQUFRLEVBQUU7Z0JBQ1IsVUFBVTtnQkFDVixxQkFBcUI7Z0JBQ3JCLDBEQUEwRDtnQkFDMUQsaUtBQTZCLGtCQUFvQjthQUNsRDtTQUNGLENBQUM7Ozs7dURBeUNEO0lBcURILDRCQUFDO0NBQUEsQUEvR0QsQ0FBMkMsbUJBQVksR0ErR3REO0FBL0dZLHNEQUFxQiIsInNvdXJjZXNDb250ZW50IjpbImltcG9ydCB7IEF1dGhQcm92aWRlciB9IGZyb20gJy4vYmFzZSc7XG5pbXBvcnQgeyBJQ2xvdWRiYXNlQXV0aENvbmZpZywgSUxvZ2luU3RhdGUgfSBmcm9tICdAY2xvdWRiYXNlL3R5cGVzL2F1dGgnO1xuaW1wb3J0IHsgY29uc3RhbnRzLCB1dGlscywgaGVscGVycywgZXZlbnRzIH0gZnJvbSAnQGNsb3VkYmFzZS91dGlsaXRpZXMnO1xuaW1wb3J0IHsgSUNsb3VkYmFzZUNhY2hlIH0gZnJvbSAnQGNsb3VkYmFzZS90eXBlcy9jYWNoZSc7XG5pbXBvcnQgeyBJQ2xvdWRiYXNlUmVxdWVzdCB9IGZyb20gJ0BjbG91ZGJhc2UvdHlwZXMvcmVxdWVzdCc7XG5pbXBvcnQgeyBMT0dJTlRZUEUgfSBmcm9tICcuLi9jb25zdGFudHMnO1xuaW1wb3J0IHsgRVZFTlRTLCBldmVudEJ1cywgTG9naW5TdGF0ZSB9IGZyb20gJy4uJztcblxuY29uc3QgeyBFUlJPUlMsIENPTU1VTklUWV9TSVRFX1VSTCB9ID0gY29uc3RhbnRzO1xuY29uc3QgeyB0aHJvd0Vycm9yLCBpc1N0cmluZyB9ID0gdXRpbHM7XG5jb25zdCB7IGFkZEV2ZW50TGlzdGVuZXIgfSA9IGV2ZW50cztcbmNvbnN0IHsgY2F0Y2hFcnJvcnNEZWNvcmF0b3IgfSA9IGhlbHBlcnM7XG5cbmV4cG9ydCBjbGFzcyBBbm9ueW1vdXNBdXRoUHJvdmlkZXIgZXh0ZW5kcyBBdXRoUHJvdmlkZXIge1xuICBjb25zdHJ1Y3Rvcihjb25maWc6SUNsb3VkYmFzZUF1dGhDb25maWcme2NhY2hlOklDbG91ZGJhc2VDYWNoZSxyZXF1ZXN0OklDbG91ZGJhc2VSZXF1ZXN0fSl7XG4gICAgc3VwZXIoY29uZmlnKTtcblxuICAgIHRoaXMuX29uQ29udmVydGVkID0gdGhpcy5fb25Db252ZXJ0ZWQuYmluZCh0aGlzKTtcbiAgICAvLyDnm5HlkKzovazmraPkuovku7ZcbiAgICBhZGRFdmVudExpc3RlbmVyKEVWRU5UUy5BTk9OWU1PVVNfQ09OVkVSVEVELCB0aGlzLl9vbkNvbnZlcnRlZCk7XG4gIH1cblxuICBAY2F0Y2hFcnJvcnNEZWNvcmF0b3Ioe1xuICAgIHRpdGxlOiAn5Yy/5ZCN55m75b2V5aSx6LSlJyxcbiAgICBtZXNzYWdlczogW1xuICAgICAgJ+ivt+ehruiupOS7peS4i+WQhOmhue+8micsXG4gICAgICAnICAxIC0g5b2T5YmN546v5aKD5piv5ZCm5byA5ZCv5LqG5Yy/5ZCN55m75b2VJyxcbiAgICAgICcgIDIgLSDosIPnlKggYXV0aCgpLmFub255bW91c2VQcm92aWRlcigpLnNpZ25JbigpIOeahOivreazleaIluWPguaVsOaYr+WQpuato+ehricsXG4gICAgICBg5aaC5p6c6Zeu6aKY5L6d54S25a2Y5Zyo77yM5bu66K6u5Yiw5a6Y5pa56Zeu562U56S+5Yy65o+Q6Zeu5oiW5a+75om+5biu5Yqp77yaJHtDT01NVU5JVFlfU0lURV9VUkx9YFxuICAgIF1cbiAgfSlcbiAgcHVibGljIGFzeW5jIHNpZ25JbigpOlByb21pc2U8SUxvZ2luU3RhdGU+IHtcbiAgICAvLyDljL/lkI3nmbvlvZXliY3ov4Hnp7tjYWNoZeWIsGxvY2Fsc3RvcmFnZVxuICAgIGF3YWl0IHRoaXMuX2NhY2hlLnVwZGF0ZVBlcnNpc3RlbmNlQXN5bmMoJ2xvY2FsJyk7XG4gICAgY29uc3QgeyBhbm9ueW1vdXNVdWlkS2V5LCByZWZyZXNoVG9rZW5LZXkgfSA9IHRoaXMuX2NhY2hlLmtleXM7XG4gICAgLy8g5aaC5p6c5pys5Zyw5a2Y5pyJdWlk5YiZ5Yy/5ZCN55m75b2V5pe25Lyg57uZc2VydmVyXG4gICAgY29uc3QgYW5vbnltb3VzX3V1aWQgPSBhd2FpdCB0aGlzLl9jYWNoZS5nZXRTdG9yZUFzeW5jKGFub255bW91c1V1aWRLZXkpO1xuICAgIC8vIOatpOWkhGNhY2hl5Li65Z+657G7cHJvcGVydHlcbiAgICBjb25zdCByZWZyZXNoX3Rva2VuID0gYXdhaXQgdGhpcy5fY2FjaGUuZ2V0U3RvcmVBc3luYyhyZWZyZXNoVG9rZW5LZXkpO1xuXG4gICAgY29uc3QgcmVzID0gYXdhaXQgdGhpcy5fcmVxdWVzdC5zZW5kKCdhdXRoLnNpZ25JbkFub255bW91c2x5Jywge1xuICAgICAgYW5vbnltb3VzX3V1aWQsXG4gICAgICByZWZyZXNoX3Rva2VuXG4gICAgfSk7XG4gICAgaWYgKHJlcy51dWlkICYmIHJlcy5yZWZyZXNoX3Rva2VuKSB7XG4gICAgICBhd2FpdCB0aGlzLl9zZXRBbm9ueW1vdXNVVUlEKHJlcy51dWlkKTtcbiAgICAgIGF3YWl0IHRoaXMuc2V0UmVmcmVzaFRva2VuKHJlcy5yZWZyZXNoX3Rva2VuKTtcbiAgICAgIGF3YWl0IHRoaXMuX3JlcXVlc3QucmVmcmVzaEFjY2Vzc1Rva2VuKCk7XG5cbiAgICAgIGV2ZW50QnVzLmZpcmUoRVZFTlRTLkxPR0lOX1RZUEVfQ0hBTkdFRCwge1xuICAgICAgICBlbnY6IHRoaXMuX2NvbmZpZy5lbnYsXG4gICAgICAgIGxvZ2luVHlwZTogTE9HSU5UWVBFLkFOT05ZTU9VUyxcbiAgICAgICAgcGVyc2lzdGVuY2U6ICdsb2NhbCdcbiAgICAgIH0pO1xuXG4gICAgICBldmVudEJ1cy5maXJlKEVWRU5UUy5MT0dJTl9TVEFURV9DSEFOR0VEKTtcblxuICAgICAgY29uc3QgbG9naW5TdGF0ZSA9IG5ldyBMb2dpblN0YXRlKHtcbiAgICAgICAgZW52SWQ6IHRoaXMuX2NvbmZpZy5lbnYsXG4gICAgICAgIGNhY2hlOiB0aGlzLl9jYWNoZSxcbiAgICAgICAgcmVxdWVzdDogdGhpcy5fcmVxdWVzdFxuICAgICAgfSk7XG4gICAgICBhd2FpdCBsb2dpblN0YXRlLmNoZWNrTG9jYWxTdGF0ZUFzeW5jKCk7XG4gICAgICBhd2FpdCBsb2dpblN0YXRlLnVzZXIucmVmcmVzaCgpO1xuICAgICAgcmV0dXJuIGxvZ2luU3RhdGU7XG4gICAgfSBlbHNlIHtcbiAgICAgIHRocm93IG5ldyBFcnJvcihKU09OLnN0cmluZ2lmeSh7XG4gICAgICAgIGNvZGU6IEVSUk9SUy5PUEVSQVRJT05fRkFJTCxcbiAgICAgICAgbXNnOiBKU09OLnN0cmluZ2lmeShyZXMpfHwnYW5vbnltb3VzIHNpZ25JbiBmYWlsZWQnXG4gICAgICB9KSk7XG4gICAgfVxuICB9XG4gIC8qKlxuICAgKiDljL/lkI3ovazmraNcbiAgICogQHBhcmFtIHRpY2tldCBcbiAgICovXG4gIHB1YmxpYyBhc3luYyBsaW5rQW5kUmV0cmlldmVEYXRhV2l0aFRpY2tldCh0aWNrZXQ6IHN0cmluZyk6UHJvbWlzZTxJTG9naW5TdGF0ZT4ge1xuICAgIGlmKCFpc1N0cmluZyh0aWNrZXQpKXtcbiAgICAgIHRocm93RXJyb3IoRVJST1JTLklOVkFMSURfUEFSQU1TLCd0aWNrZXQgbXVzdCBiZSBhIHN0cmluZycpO1xuICAgIH1cbiAgICBjb25zdCB7IGFub255bW91c1V1aWRLZXksIHJlZnJlc2hUb2tlbktleSB9ID0gdGhpcy5fY2FjaGUua2V5cztcbiAgICBjb25zdCBhbm9ueW1vdXNfdXVpZCA9IGF3YWl0IHRoaXMuX2NhY2hlLmdldFN0b3JlQXN5bmMoYW5vbnltb3VzVXVpZEtleSk7XG4gICAgY29uc3QgcmVmcmVzaF90b2tlbiA9IGF3YWl0IHRoaXMuX2NhY2hlLmdldFN0b3JlQXN5bmMocmVmcmVzaFRva2VuS2V5KTtcbiAgICBjb25zdCByZXMgPSBhd2FpdCB0aGlzLl9yZXF1ZXN0LnNlbmQoJ2F1dGgubGlua0FuZFJldHJpZXZlRGF0YVdpdGhUaWNrZXQnLCB7XG4gICAgICBhbm9ueW1vdXNfdXVpZCxcbiAgICAgIHJlZnJlc2hfdG9rZW4sXG4gICAgICB0aWNrZXRcbiAgICB9KTtcbiAgICBpZiAocmVzLnJlZnJlc2hfdG9rZW4pIHtcbiAgICAgIC8vIOi9rOato+WQjua4hemZpOacrOWcsOS/neWtmOeahOWMv+WQjXV1aWRcbiAgICAgIGF3YWl0IHRoaXMuX2NsZWFyQW5vbnltb3VzVVVJRCgpO1xuICAgICAgYXdhaXQgdGhpcy5zZXRSZWZyZXNoVG9rZW4ocmVzLnJlZnJlc2hfdG9rZW4pO1xuICAgICAgYXdhaXQgdGhpcy5fcmVxdWVzdC5yZWZyZXNoQWNjZXNzVG9rZW4oKTtcbiAgICAgIGV2ZW50QnVzLmZpcmUoRVZFTlRTLkFOT05ZTU9VU19DT05WRVJURUQsIHsgZW52OiB0aGlzLl9jb25maWcuZW52IH0pO1xuICAgICAgZXZlbnRCdXMuZmlyZShFVkVOVFMuTE9HSU5fVFlQRV9DSEFOR0VELCB7IGxvZ2luVHlwZTogTE9HSU5UWVBFLkNVU1RPTSwgcGVyc2lzdGVuY2U6ICdsb2NhbCcgfSk7XG4gICAgICBjb25zdCBsb2dpblN0YXRlID0gbmV3IExvZ2luU3RhdGUoe1xuICAgICAgICBlbnZJZDogdGhpcy5fY29uZmlnLmVudixcbiAgICAgICAgY2FjaGU6IHRoaXMuX2NhY2hlLFxuICAgICAgICByZXF1ZXN0OiB0aGlzLl9yZXF1ZXN0XG4gICAgICB9KTtcbiAgICAgIGF3YWl0IGxvZ2luU3RhdGUuY2hlY2tMb2NhbFN0YXRlQXN5bmMoKTtcbiAgICAgIFxuICAgICAgcmV0dXJuIGxvZ2luU3RhdGU7XG4gICAgfSBlbHNlIHtcbiAgICAgIHRocm93RXJyb3IoRVJST1JTLk9QRVJBVElPTl9GQUlMLEpTT04uc3RyaW5naWZ5KHJlcyl8fCdsaW5rQW5kUmV0cmlldmVEYXRhV2l0aFRpY2tldCBmYWlsZWQnKTtcbiAgICB9XG4gIH1cbiAgcHJpdmF0ZSBhc3luYyBfc2V0QW5vbnltb3VzVVVJRChpZDogc3RyaW5nKSB7XG4gICAgY29uc3QgeyBhbm9ueW1vdXNVdWlkS2V5LCBsb2dpblR5cGVLZXkgfSA9IHRoaXMuX2NhY2hlLmtleXM7XG4gICAgYXdhaXQgdGhpcy5fY2FjaGUucmVtb3ZlU3RvcmVBc3luYyhhbm9ueW1vdXNVdWlkS2V5KTtcbiAgICBhd2FpdCB0aGlzLl9jYWNoZS5zZXRTdG9yZUFzeW5jKGFub255bW91c1V1aWRLZXksIGlkKTtcbiAgICBhd2FpdCB0aGlzLl9jYWNoZS5zZXRTdG9yZUFzeW5jKGxvZ2luVHlwZUtleSwgTE9HSU5UWVBFLkFOT05ZTU9VUyk7XG4gIH1cbiAgcHJpdmF0ZSBhc3luYyBfY2xlYXJBbm9ueW1vdXNVVUlEKCkge1xuICAgIGF3YWl0IHRoaXMuX2NhY2hlLnJlbW92ZVN0b3JlQXN5bmModGhpcy5fY2FjaGUua2V5cy5hbm9ueW1vdXNVdWlkS2V5KTtcbiAgfVxuICBwcml2YXRlIGFzeW5jIF9vbkNvbnZlcnRlZChldikge1xuICAgIGNvbnN0IHsgZW52IH0gPSBldi5kYXRhO1xuICAgIGlmIChlbnYgIT09IHRoaXMuX2NvbmZpZy5lbnYpIHtcbiAgICAgIHJldHVybjtcbiAgICB9XG4gICAgLy8g5Yy/5ZCN6L2s5q2j5ZCO6L+B56e7Y2FjaGVcbiAgICBhd2FpdCB0aGlzLl9jYWNoZS51cGRhdGVQZXJzaXN0ZW5jZUFzeW5jKHRoaXMuX2NvbmZpZy5wZXJzaXN0ZW5jZSk7XG4gIH1cbn0iXX0=
|
|
@@ -1,20 +0,0 @@
|
|
|
1
|
-
import { ICloudbaseConfig } from '@cloudbase/types';
|
|
2
|
-
import { ICloudbaseCache } from '@cloudbase/types/cache';
|
|
3
|
-
import { ICloudbaseRequest } from '@cloudbase/types/request';
|
|
4
|
-
import { ICloudbaseAuthConfig } from '@cloudbase/types/auth';
|
|
5
|
-
import { LoginState } from '..';
|
|
6
|
-
export declare abstract class AuthProvider {
|
|
7
|
-
protected readonly _config: ICloudbaseConfig;
|
|
8
|
-
protected readonly _cache: ICloudbaseCache;
|
|
9
|
-
protected readonly _request: ICloudbaseRequest;
|
|
10
|
-
constructor(config: ICloudbaseAuthConfig & {
|
|
11
|
-
cache: ICloudbaseCache;
|
|
12
|
-
request: ICloudbaseRequest;
|
|
13
|
-
});
|
|
14
|
-
protected checkLocalLoginState(): Promise<LoginState>;
|
|
15
|
-
protected setRefreshToken(refreshToken: string): Promise<void>;
|
|
16
|
-
protected setAccessToken(accessToken: string, accessTokenExpire: string): Promise<void>;
|
|
17
|
-
protected refreshUserInfo(): Promise<any>;
|
|
18
|
-
protected setLocalUserInfo(userInfo: any): Promise<void>;
|
|
19
|
-
abstract signIn(...args: any[]): Promise<any>;
|
|
20
|
-
}
|
|
@@ -1,158 +0,0 @@
|
|
|
1
|
-
"use strict";
|
|
2
|
-
var __awaiter = (this && this.__awaiter) || function (thisArg, _arguments, P, generator) {
|
|
3
|
-
function adopt(value) { return value instanceof P ? value : new P(function (resolve) { resolve(value); }); }
|
|
4
|
-
return new (P || (P = Promise))(function (resolve, reject) {
|
|
5
|
-
function fulfilled(value) { try { step(generator.next(value)); } catch (e) { reject(e); } }
|
|
6
|
-
function rejected(value) { try { step(generator["throw"](value)); } catch (e) { reject(e); } }
|
|
7
|
-
function step(result) { result.done ? resolve(result.value) : adopt(result.value).then(fulfilled, rejected); }
|
|
8
|
-
step((generator = generator.apply(thisArg, _arguments || [])).next());
|
|
9
|
-
});
|
|
10
|
-
};
|
|
11
|
-
var __generator = (this && this.__generator) || function (thisArg, body) {
|
|
12
|
-
var _ = { label: 0, sent: function() { if (t[0] & 1) throw t[1]; return t[1]; }, trys: [], ops: [] }, f, y, t, g;
|
|
13
|
-
return g = { next: verb(0), "throw": verb(1), "return": verb(2) }, typeof Symbol === "function" && (g[Symbol.iterator] = function() { return this; }), g;
|
|
14
|
-
function verb(n) { return function (v) { return step([n, v]); }; }
|
|
15
|
-
function step(op) {
|
|
16
|
-
if (f) throw new TypeError("Generator is already executing.");
|
|
17
|
-
while (_) try {
|
|
18
|
-
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;
|
|
19
|
-
if (y = 0, t) op = [op[0] & 2, t.value];
|
|
20
|
-
switch (op[0]) {
|
|
21
|
-
case 0: case 1: t = op; break;
|
|
22
|
-
case 4: _.label++; return { value: op[1], done: false };
|
|
23
|
-
case 5: _.label++; y = op[1]; op = [0]; continue;
|
|
24
|
-
case 7: op = _.ops.pop(); _.trys.pop(); continue;
|
|
25
|
-
default:
|
|
26
|
-
if (!(t = _.trys, t = t.length > 0 && t[t.length - 1]) && (op[0] === 6 || op[0] === 2)) { _ = 0; continue; }
|
|
27
|
-
if (op[0] === 3 && (!t || (op[1] > t[0] && op[1] < t[3]))) { _.label = op[1]; break; }
|
|
28
|
-
if (op[0] === 6 && _.label < t[1]) { _.label = t[1]; t = op; break; }
|
|
29
|
-
if (t && _.label < t[2]) { _.label = t[2]; _.ops.push(op); break; }
|
|
30
|
-
if (t[2]) _.ops.pop();
|
|
31
|
-
_.trys.pop(); continue;
|
|
32
|
-
}
|
|
33
|
-
op = body.call(thisArg, _);
|
|
34
|
-
} catch (e) { op = [6, e]; y = 0; } finally { f = t = 0; }
|
|
35
|
-
if (op[0] & 5) throw op[1]; return { value: op[0] ? op[1] : void 0, done: true };
|
|
36
|
-
}
|
|
37
|
-
};
|
|
38
|
-
Object.defineProperty(exports, "__esModule", { value: true });
|
|
39
|
-
exports.AuthProvider = void 0;
|
|
40
|
-
var __1 = require("..");
|
|
41
|
-
var AuthProvider = (function () {
|
|
42
|
-
function AuthProvider(config) {
|
|
43
|
-
this._config = config;
|
|
44
|
-
this._cache = config.cache;
|
|
45
|
-
this._request = config.request;
|
|
46
|
-
}
|
|
47
|
-
AuthProvider.prototype.checkLocalLoginState = function () {
|
|
48
|
-
return __awaiter(this, void 0, void 0, function () {
|
|
49
|
-
var _a, accessTokenKey, accessTokenExpireKey, accessToken, accessTokenExpire, loginState;
|
|
50
|
-
return __generator(this, function (_b) {
|
|
51
|
-
switch (_b.label) {
|
|
52
|
-
case 0:
|
|
53
|
-
_a = this._cache.keys, accessTokenKey = _a.accessTokenKey, accessTokenExpireKey = _a.accessTokenExpireKey;
|
|
54
|
-
return [4, this._cache.getStoreAsync(accessTokenKey)];
|
|
55
|
-
case 1:
|
|
56
|
-
accessToken = _b.sent();
|
|
57
|
-
return [4, this._cache.getStoreAsync(accessTokenExpireKey)];
|
|
58
|
-
case 2:
|
|
59
|
-
accessTokenExpire = _b.sent();
|
|
60
|
-
if (!accessToken) return [3, 7];
|
|
61
|
-
if (!(accessTokenExpire && accessTokenExpire > Date.now())) return [3, 4];
|
|
62
|
-
loginState = new __1.LoginState({
|
|
63
|
-
envId: this._config.env,
|
|
64
|
-
cache: this._cache,
|
|
65
|
-
request: this._request
|
|
66
|
-
});
|
|
67
|
-
return [4, loginState.checkLocalStateAsync()];
|
|
68
|
-
case 3:
|
|
69
|
-
_b.sent();
|
|
70
|
-
return [2, loginState];
|
|
71
|
-
case 4: return [4, this._cache.removeStoreAsync(accessTokenKey)];
|
|
72
|
-
case 5:
|
|
73
|
-
_b.sent();
|
|
74
|
-
return [4, this._cache.removeStoreAsync(accessTokenExpireKey)];
|
|
75
|
-
case 6:
|
|
76
|
-
_b.sent();
|
|
77
|
-
_b.label = 7;
|
|
78
|
-
case 7: return [2];
|
|
79
|
-
}
|
|
80
|
-
});
|
|
81
|
-
});
|
|
82
|
-
};
|
|
83
|
-
AuthProvider.prototype.setRefreshToken = function (refreshToken) {
|
|
84
|
-
return __awaiter(this, void 0, void 0, function () {
|
|
85
|
-
var _a, accessTokenKey, accessTokenExpireKey, refreshTokenKey;
|
|
86
|
-
return __generator(this, function (_b) {
|
|
87
|
-
switch (_b.label) {
|
|
88
|
-
case 0:
|
|
89
|
-
_a = this._cache.keys, accessTokenKey = _a.accessTokenKey, accessTokenExpireKey = _a.accessTokenExpireKey, refreshTokenKey = _a.refreshTokenKey;
|
|
90
|
-
return [4, this._cache.removeStoreAsync(accessTokenKey)];
|
|
91
|
-
case 1:
|
|
92
|
-
_b.sent();
|
|
93
|
-
return [4, this._cache.removeStoreAsync(accessTokenExpireKey)];
|
|
94
|
-
case 2:
|
|
95
|
-
_b.sent();
|
|
96
|
-
return [4, this._cache.setStoreAsync(refreshTokenKey, refreshToken)];
|
|
97
|
-
case 3:
|
|
98
|
-
_b.sent();
|
|
99
|
-
return [2];
|
|
100
|
-
}
|
|
101
|
-
});
|
|
102
|
-
});
|
|
103
|
-
};
|
|
104
|
-
AuthProvider.prototype.setAccessToken = function (accessToken, accessTokenExpire) {
|
|
105
|
-
return __awaiter(this, void 0, void 0, function () {
|
|
106
|
-
var _a, accessTokenKey, accessTokenExpireKey;
|
|
107
|
-
return __generator(this, function (_b) {
|
|
108
|
-
switch (_b.label) {
|
|
109
|
-
case 0:
|
|
110
|
-
_a = this._cache.keys, accessTokenKey = _a.accessTokenKey, accessTokenExpireKey = _a.accessTokenExpireKey;
|
|
111
|
-
return [4, this._cache.setStoreAsync(accessTokenKey, accessToken)];
|
|
112
|
-
case 1:
|
|
113
|
-
_b.sent();
|
|
114
|
-
return [4, this._cache.setStoreAsync(accessTokenExpireKey, accessTokenExpire)];
|
|
115
|
-
case 2:
|
|
116
|
-
_b.sent();
|
|
117
|
-
return [2];
|
|
118
|
-
}
|
|
119
|
-
});
|
|
120
|
-
});
|
|
121
|
-
};
|
|
122
|
-
AuthProvider.prototype.refreshUserInfo = function () {
|
|
123
|
-
return __awaiter(this, void 0, void 0, function () {
|
|
124
|
-
var action, userInfo;
|
|
125
|
-
return __generator(this, function (_a) {
|
|
126
|
-
switch (_a.label) {
|
|
127
|
-
case 0:
|
|
128
|
-
action = 'auth.getUserInfo';
|
|
129
|
-
return [4, this._request.send(action, {})];
|
|
130
|
-
case 1:
|
|
131
|
-
userInfo = (_a.sent()).data;
|
|
132
|
-
return [4, this.setLocalUserInfo(userInfo)];
|
|
133
|
-
case 2:
|
|
134
|
-
_a.sent();
|
|
135
|
-
return [2, userInfo];
|
|
136
|
-
}
|
|
137
|
-
});
|
|
138
|
-
});
|
|
139
|
-
};
|
|
140
|
-
AuthProvider.prototype.setLocalUserInfo = function (userInfo) {
|
|
141
|
-
return __awaiter(this, void 0, void 0, function () {
|
|
142
|
-
var userInfoKey;
|
|
143
|
-
return __generator(this, function (_a) {
|
|
144
|
-
switch (_a.label) {
|
|
145
|
-
case 0:
|
|
146
|
-
userInfoKey = this._cache.keys.userInfoKey;
|
|
147
|
-
return [4, this._cache.setStoreAsync(userInfoKey, userInfo)];
|
|
148
|
-
case 1:
|
|
149
|
-
_a.sent();
|
|
150
|
-
return [2];
|
|
151
|
-
}
|
|
152
|
-
});
|
|
153
|
-
});
|
|
154
|
-
};
|
|
155
|
-
return AuthProvider;
|
|
156
|
-
}());
|
|
157
|
-
exports.AuthProvider = AuthProvider;
|
|
158
|
-
//# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoiYmFzZS5qcyIsInNvdXJjZVJvb3QiOiIiLCJzb3VyY2VzIjpbIi4uLy4uLy4uL3NyYy9wcm92aWRlcnMvYmFzZS50cyJdLCJuYW1lcyI6W10sIm1hcHBpbmdzIjoiOzs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7QUFJQSx3QkFBZ0M7QUFFaEM7SUFLRSxzQkFBWSxNQUE4RTtRQUN4RixJQUFJLENBQUMsT0FBTyxHQUFHLE1BQU0sQ0FBQztRQUN0QixJQUFJLENBQUMsTUFBTSxHQUFHLE1BQU0sQ0FBQyxLQUFLLENBQUM7UUFDM0IsSUFBSSxDQUFDLFFBQVEsR0FBRyxNQUFNLENBQUMsT0FBTyxDQUFDO0lBQ2pDLENBQUM7SUFJZSwyQ0FBb0IsR0FBcEM7Ozs7Ozt3QkFDUSxLQUEyQyxJQUFJLENBQUMsTUFBTSxDQUFDLElBQUksRUFBekQsY0FBYyxvQkFBQSxFQUFFLG9CQUFvQiwwQkFBQSxDQUFzQjt3QkFDOUMsV0FBTSxJQUFJLENBQUMsTUFBTSxDQUFDLGFBQWEsQ0FBQyxjQUFjLENBQUMsRUFBQTs7d0JBQTdELFdBQVcsR0FBRyxTQUErQzt3QkFDekMsV0FBTSxJQUFJLENBQUMsTUFBTSxDQUFDLGFBQWEsQ0FBQyxvQkFBb0IsQ0FBQyxFQUFBOzt3QkFBekUsaUJBQWlCLEdBQUcsU0FBcUQ7NkJBRTNFLFdBQVcsRUFBWCxjQUFXOzZCQUNULENBQUEsaUJBQWlCLElBQUksaUJBQWlCLEdBQUcsSUFBSSxDQUFDLEdBQUcsRUFBRSxDQUFBLEVBQW5ELGNBQW1EO3dCQUUvQyxVQUFVLEdBQUcsSUFBSSxjQUFVLENBQUM7NEJBQ2hDLEtBQUssRUFBRSxJQUFJLENBQUMsT0FBTyxDQUFDLEdBQUc7NEJBQ3ZCLEtBQUssRUFBRSxJQUFJLENBQUMsTUFBTTs0QkFDbEIsT0FBTyxFQUFFLElBQUksQ0FBQyxRQUFRO3lCQUN2QixDQUFDLENBQUM7d0JBQ0gsV0FBTSxVQUFVLENBQUMsb0JBQW9CLEVBQUUsRUFBQTs7d0JBQXZDLFNBQXVDLENBQUM7d0JBRXhDLFdBQU8sVUFBVSxFQUFDOzRCQUdsQixXQUFNLElBQUksQ0FBQyxNQUFNLENBQUMsZ0JBQWdCLENBQUMsY0FBYyxDQUFDLEVBQUE7O3dCQUFsRCxTQUFrRCxDQUFDO3dCQUNuRCxXQUFNLElBQUksQ0FBQyxNQUFNLENBQUMsZ0JBQWdCLENBQUMsb0JBQW9CLENBQUMsRUFBQTs7d0JBQXhELFNBQXdELENBQUM7Ozs7OztLQUc5RDtJQUNlLHNDQUFlLEdBQS9CLFVBQWdDLFlBQW1COzs7Ozs7d0JBQzNDLEtBQTRELElBQUksQ0FBQyxNQUFNLENBQUMsSUFBSSxFQUExRSxjQUFjLG9CQUFBLEVBQUUsb0JBQW9CLDBCQUFBLEVBQUUsZUFBZSxxQkFBQSxDQUFzQjt3QkFFbkYsV0FBTSxJQUFJLENBQUMsTUFBTSxDQUFDLGdCQUFnQixDQUFDLGNBQWMsQ0FBQyxFQUFBOzt3QkFBbEQsU0FBa0QsQ0FBQzt3QkFDbkQsV0FBTSxJQUFJLENBQUMsTUFBTSxDQUFDLGdCQUFnQixDQUFDLG9CQUFvQixDQUFDLEVBQUE7O3dCQUF4RCxTQUF3RCxDQUFDO3dCQUN6RCxXQUFNLElBQUksQ0FBQyxNQUFNLENBQUMsYUFBYSxDQUFDLGVBQWUsRUFBRSxZQUFZLENBQUMsRUFBQTs7d0JBQTlELFNBQThELENBQUM7Ozs7O0tBQ2hFO0lBQ2UscUNBQWMsR0FBOUIsVUFBK0IsV0FBa0IsRUFBRSxpQkFBd0I7Ozs7Ozt3QkFDbkUsS0FBMkMsSUFBSSxDQUFDLE1BQU0sQ0FBQyxJQUFJLEVBQXpELGNBQWMsb0JBQUEsRUFBRSxvQkFBb0IsMEJBQUEsQ0FBc0I7d0JBQ2xFLFdBQU0sSUFBSSxDQUFDLE1BQU0sQ0FBQyxhQUFhLENBQUMsY0FBYyxFQUFFLFdBQVcsQ0FBQyxFQUFBOzt3QkFBNUQsU0FBNEQsQ0FBQzt3QkFDN0QsV0FBTSxJQUFJLENBQUMsTUFBTSxDQUFDLGFBQWEsQ0FBQyxvQkFBb0IsRUFBRSxpQkFBaUIsQ0FBQyxFQUFBOzt3QkFBeEUsU0FBd0UsQ0FBQzs7Ozs7S0FDMUU7SUFDZSxzQ0FBZSxHQUEvQjs7Ozs7O3dCQUNRLE1BQU0sR0FBRyxrQkFBa0IsQ0FBQzt3QkFDUCxXQUFNLElBQUksQ0FBQyxRQUFRLENBQUMsSUFBSSxDQUFDLE1BQU0sRUFBRSxFQUFFLENBQUMsRUFBQTs7d0JBQWpELFFBQVEsR0FBSyxDQUFBLFNBQW9DLENBQUEsS0FBekM7d0JBQ3RCLFdBQU0sSUFBSSxDQUFDLGdCQUFnQixDQUFDLFFBQVEsQ0FBQyxFQUFBOzt3QkFBckMsU0FBcUMsQ0FBQzt3QkFDdEMsV0FBTyxRQUFRLEVBQUM7Ozs7S0FDakI7SUFDZSx1Q0FBZ0IsR0FBaEMsVUFBaUMsUUFBUTs7Ozs7O3dCQUMvQixXQUFXLEdBQUssSUFBSSxDQUFDLE1BQU0sQ0FBQyxJQUFJLFlBQXJCLENBQXNCO3dCQUN6QyxXQUFNLElBQUksQ0FBQyxNQUFNLENBQUMsYUFBYSxDQUFDLFdBQVcsRUFBRSxRQUFRLENBQUMsRUFBQTs7d0JBQXRELFNBQXNELENBQUM7Ozs7O0tBQ3hEO0lBRUgsbUJBQUM7QUFBRCxDQUFDLEFBM0RELElBMkRDO0FBM0RxQixvQ0FBWSIsInNvdXJjZXNDb250ZW50IjpbImltcG9ydCB7IElDbG91ZGJhc2VDb25maWcgfSBmcm9tICdAY2xvdWRiYXNlL3R5cGVzJztcbmltcG9ydCB7IElDbG91ZGJhc2VDYWNoZSB9IGZyb20gJ0BjbG91ZGJhc2UvdHlwZXMvY2FjaGUnO1xuaW1wb3J0IHsgSUNsb3VkYmFzZVJlcXVlc3QgfSBmcm9tICdAY2xvdWRiYXNlL3R5cGVzL3JlcXVlc3QnO1xuaW1wb3J0IHsgSUNsb3VkYmFzZUF1dGhDb25maWcgfSBmcm9tICdAY2xvdWRiYXNlL3R5cGVzL2F1dGgnO1xuaW1wb3J0IHsgTG9naW5TdGF0ZSB9IGZyb20gJy4uJztcblxuZXhwb3J0IGFic3RyYWN0IGNsYXNzIEF1dGhQcm92aWRlciB7XG4gIHByb3RlY3RlZCByZWFkb25seSBfY29uZmlnOiBJQ2xvdWRiYXNlQ29uZmlnO1xuICBwcm90ZWN0ZWQgcmVhZG9ubHkgX2NhY2hlOiBJQ2xvdWRiYXNlQ2FjaGU7XG4gIHByb3RlY3RlZCByZWFkb25seSBfcmVxdWVzdDogSUNsb3VkYmFzZVJlcXVlc3Q7XG5cbiAgY29uc3RydWN0b3IoY29uZmlnOiBJQ2xvdWRiYXNlQXV0aENvbmZpZyZ7Y2FjaGU6SUNsb3VkYmFzZUNhY2hlLHJlcXVlc3Q6SUNsb3VkYmFzZVJlcXVlc3R9KSB7XG4gICAgdGhpcy5fY29uZmlnID0gY29uZmlnO1xuICAgIHRoaXMuX2NhY2hlID0gY29uZmlnLmNhY2hlO1xuICAgIHRoaXMuX3JlcXVlc3QgPSBjb25maWcucmVxdWVzdDtcbiAgfVxuICAvKipcbiAgICog5Yik5pat5pys5Zyw5piv5ZCm5bey57uP5pyJ55m75b2V5oCB77yM5aaC5p6c5pyJ5LiU5rKh6L+H5pyf77yM5YiZ6L+U5ZuedHJ1Ze+8jOWQpuWImea4heeQhuacrOWcsOeZu+W9leaAgVxuICAgKi9cbiAgcHJvdGVjdGVkIGFzeW5jIGNoZWNrTG9jYWxMb2dpblN0YXRlKCkge1xuICAgIGNvbnN0IHsgYWNjZXNzVG9rZW5LZXksIGFjY2Vzc1Rva2VuRXhwaXJlS2V5IH0gPSB0aGlzLl9jYWNoZS5rZXlzO1xuICAgIGNvbnN0IGFjY2Vzc1Rva2VuID0gYXdhaXQgdGhpcy5fY2FjaGUuZ2V0U3RvcmVBc3luYyhhY2Nlc3NUb2tlbktleSk7XG4gICAgY29uc3QgYWNjZXNzVG9rZW5FeHBpcmUgPSBhd2FpdCB0aGlzLl9jYWNoZS5nZXRTdG9yZUFzeW5jKGFjY2Vzc1Rva2VuRXhwaXJlS2V5KTtcblxuICAgIGlmIChhY2Nlc3NUb2tlbikge1xuICAgICAgaWYgKGFjY2Vzc1Rva2VuRXhwaXJlICYmIGFjY2Vzc1Rva2VuRXhwaXJlID4gRGF0ZS5ub3coKSkge1xuICAgICAgICAvLyBhY2Nlc3PlrZjlnKjkuJTmsqHmnInov4fmnJ/vvIzpgqPkuYjnm7TmjqXov5Tlm55cbiAgICAgICAgY29uc3QgbG9naW5TdGF0ZSA9IG5ldyBMb2dpblN0YXRlKHtcbiAgICAgICAgICBlbnZJZDogdGhpcy5fY29uZmlnLmVudixcbiAgICAgICAgICBjYWNoZTogdGhpcy5fY2FjaGUsXG4gICAgICAgICAgcmVxdWVzdDogdGhpcy5fcmVxdWVzdFxuICAgICAgICB9KTtcbiAgICAgICAgYXdhaXQgbG9naW5TdGF0ZS5jaGVja0xvY2FsU3RhdGVBc3luYygpO1xuICAgICAgICBcbiAgICAgICAgcmV0dXJuIGxvZ2luU3RhdGU7XG4gICAgICB9IGVsc2Uge1xuICAgICAgICAvLyBhY2Nlc3MgdG9rZW7lrZjlnKjkvYbmmK/ov4fmnJ/kuobvvIzpgqPkuYjliKDpmaTmjonph43mlrDmi4lcbiAgICAgICAgYXdhaXQgdGhpcy5fY2FjaGUucmVtb3ZlU3RvcmVBc3luYyhhY2Nlc3NUb2tlbktleSk7XG4gICAgICAgIGF3YWl0IHRoaXMuX2NhY2hlLnJlbW92ZVN0b3JlQXN5bmMoYWNjZXNzVG9rZW5FeHBpcmVLZXkpO1xuICAgICAgfVxuICAgIH1cbiAgfVxuICBwcm90ZWN0ZWQgYXN5bmMgc2V0UmVmcmVzaFRva2VuKHJlZnJlc2hUb2tlbjpzdHJpbmcpIHtcbiAgICBjb25zdCB7IGFjY2Vzc1Rva2VuS2V5LCBhY2Nlc3NUb2tlbkV4cGlyZUtleSwgcmVmcmVzaFRva2VuS2V5IH0gPSB0aGlzLl9jYWNoZS5rZXlzO1xuICAgIC8vIHJlZnJlc2ggdG9rZW7orr7nva7liY3vvIzlhYjmuIXmjokgYWNjZXNzIHRva2VuXG4gICAgYXdhaXQgdGhpcy5fY2FjaGUucmVtb3ZlU3RvcmVBc3luYyhhY2Nlc3NUb2tlbktleSk7XG4gICAgYXdhaXQgdGhpcy5fY2FjaGUucmVtb3ZlU3RvcmVBc3luYyhhY2Nlc3NUb2tlbkV4cGlyZUtleSk7XG4gICAgYXdhaXQgdGhpcy5fY2FjaGUuc2V0U3RvcmVBc3luYyhyZWZyZXNoVG9rZW5LZXksIHJlZnJlc2hUb2tlbik7XG4gIH1cbiAgcHJvdGVjdGVkIGFzeW5jIHNldEFjY2Vzc1Rva2VuKGFjY2Vzc1Rva2VuOnN0cmluZywgYWNjZXNzVG9rZW5FeHBpcmU6c3RyaW5nKSB7XG4gICAgY29uc3QgeyBhY2Nlc3NUb2tlbktleSwgYWNjZXNzVG9rZW5FeHBpcmVLZXkgfSA9IHRoaXMuX2NhY2hlLmtleXM7XG4gICAgYXdhaXQgdGhpcy5fY2FjaGUuc2V0U3RvcmVBc3luYyhhY2Nlc3NUb2tlbktleSwgYWNjZXNzVG9rZW4pO1xuICAgIGF3YWl0IHRoaXMuX2NhY2hlLnNldFN0b3JlQXN5bmMoYWNjZXNzVG9rZW5FeHBpcmVLZXksIGFjY2Vzc1Rva2VuRXhwaXJlKTtcbiAgfVxuICBwcm90ZWN0ZWQgYXN5bmMgcmVmcmVzaFVzZXJJbmZvKCkge1xuICAgIGNvbnN0IGFjdGlvbiA9ICdhdXRoLmdldFVzZXJJbmZvJztcbiAgICBjb25zdCB7IGRhdGE6IHVzZXJJbmZvIH0gPSBhd2FpdCB0aGlzLl9yZXF1ZXN0LnNlbmQoYWN0aW9uLCB7fSk7XG4gICAgYXdhaXQgdGhpcy5zZXRMb2NhbFVzZXJJbmZvKHVzZXJJbmZvKTtcbiAgICByZXR1cm4gdXNlckluZm87XG4gIH1cbiAgcHJvdGVjdGVkIGFzeW5jIHNldExvY2FsVXNlckluZm8odXNlckluZm8pIHtcbiAgICBjb25zdCB7IHVzZXJJbmZvS2V5IH0gPSB0aGlzLl9jYWNoZS5rZXlzO1xuICAgIGF3YWl0IHRoaXMuX2NhY2hlLnNldFN0b3JlQXN5bmModXNlckluZm9LZXksIHVzZXJJbmZvKTtcbiAgfVxuICBhYnN0cmFjdCBzaWduSW4oLi4uYXJnczphbnlbXSk6UHJvbWlzZTxhbnk+O1xufSJdfQ==
|