@cloudbase/oauth 1.2.1-beta → 2.0.0-beta.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.
Files changed (125) hide show
  1. package/.eslintignore +2 -0
  2. package/.eslintrc +26 -0
  3. package/CHANGELOG.md +30 -0
  4. package/Dockerfile +15 -0
  5. package/README.md +183 -0
  6. package/_exmaple/assets/scripts/function/function.ts +99 -0
  7. package/_exmaple/assets/scripts/index.ts +101 -0
  8. package/_exmaple/assets/scripts/request.ts +11 -0
  9. package/_exmaple/index.html +15 -0
  10. package/_exmaple/package.json +33 -0
  11. package/_exmaple/tsconfig.json +71 -0
  12. package/_exmaple/typings.d.ts +0 -0
  13. package/_exmaple/webpack.config.js +42 -0
  14. package/dist/cjs/auth/apis.d.ts +55 -0
  15. package/dist/cjs/auth/apis.js +568 -0
  16. package/{auth → dist/cjs/auth}/consts.d.ts +9 -21
  17. package/dist/cjs/auth/consts.js +61 -0
  18. package/dist/cjs/auth/models.d.ts +354 -0
  19. package/dist/cjs/auth/models.js +3 -0
  20. package/dist/cjs/captcha/captcha.d.ts +35 -0
  21. package/dist/cjs/captcha/captcha.js +267 -0
  22. package/dist/cjs/index.d.ts +14 -0
  23. package/dist/cjs/index.js +63 -0
  24. package/{oauthclient → dist/cjs/oauth2client}/consts.d.ts +22 -1
  25. package/dist/cjs/oauth2client/consts.js +73 -0
  26. package/dist/cjs/oauth2client/interface.d.ts +15 -0
  27. package/dist/cjs/oauth2client/interface.js +10 -0
  28. package/dist/cjs/oauth2client/models.d.ts +47 -0
  29. package/dist/cjs/oauth2client/models.js +3 -0
  30. package/dist/cjs/oauth2client/oauth2client.d.ts +71 -0
  31. package/dist/cjs/oauth2client/oauth2client.js +640 -0
  32. package/dist/cjs/utils/function/single-promise.d.ts +5 -0
  33. package/dist/cjs/utils/function/single-promise.js +89 -0
  34. package/dist/cjs/utils/uuid.d.ts +1 -0
  35. package/dist/cjs/utils/uuid.js +12 -0
  36. package/dist/esm/auth/apis.d.ts +55 -0
  37. package/dist/esm/auth/apis.js +566 -0
  38. package/dist/esm/auth/consts.d.ts +54 -0
  39. package/dist/esm/auth/consts.js +58 -0
  40. package/dist/esm/auth/models.d.ts +354 -0
  41. package/dist/esm/auth/models.js +1 -0
  42. package/dist/esm/captcha/captcha.d.ts +35 -0
  43. package/dist/esm/captcha/captcha.js +264 -0
  44. package/dist/esm/index.d.ts +14 -0
  45. package/dist/esm/index.js +32 -0
  46. package/dist/esm/oauth2client/consts.d.ts +67 -0
  47. package/dist/esm/oauth2client/consts.js +70 -0
  48. package/dist/esm/oauth2client/interface.d.ts +15 -0
  49. package/dist/esm/oauth2client/interface.js +7 -0
  50. package/dist/esm/oauth2client/models.d.ts +47 -0
  51. package/dist/esm/oauth2client/models.js +1 -0
  52. package/dist/esm/oauth2client/oauth2client.d.ts +71 -0
  53. package/dist/esm/oauth2client/oauth2client.js +636 -0
  54. package/dist/esm/utils/function/single-promise.d.ts +5 -0
  55. package/dist/esm/utils/function/single-promise.js +86 -0
  56. package/dist/esm/utils/uuid.d.ts +1 -0
  57. package/dist/esm/utils/uuid.js +8 -0
  58. package/package.json +27 -14
  59. package/publish.sh +2 -0
  60. package/src/auth/apis.ts +642 -0
  61. package/src/auth/consts.ts +57 -0
  62. package/src/auth/models.ts +444 -0
  63. package/src/captcha/captcha.ts +222 -0
  64. package/src/index.ts +49 -0
  65. package/src/oauth2client/consts.ts +69 -0
  66. package/src/oauth2client/interface.ts +57 -0
  67. package/src/oauth2client/models.ts +61 -0
  68. package/src/oauth2client/oauth2client.ts +620 -0
  69. package/src/utils/function/single-promise.ts +40 -0
  70. package/src/utils/uuid.ts +11 -0
  71. package/tsconfig.esm.json +44 -0
  72. package/tsconfig.json +44 -0
  73. package/wiki/README.md +75 -0
  74. package/app/index.d.ts +0 -29
  75. package/app/index.js +0 -50
  76. package/app/index.js.map +0 -1
  77. package/app/internal.d.ts +0 -12
  78. package/app/internal.js +0 -25
  79. package/app/internal.js.map +0 -1
  80. package/app/openuri.d.ts +0 -20
  81. package/app/openuri.js +0 -106
  82. package/app/openuri.js.map +0 -1
  83. package/app/request.d.ts +0 -19
  84. package/app/request.js +0 -52
  85. package/app/request.js.map +0 -1
  86. package/app/storage.d.ts +0 -41
  87. package/app/storage.js +0 -35
  88. package/app/storage.js.map +0 -1
  89. package/auth/consts.js +0 -79
  90. package/auth/consts.js.map +0 -1
  91. package/auth/index.d.ts +0 -242
  92. package/auth/index.js +0 -550
  93. package/auth/index.js.map +0 -1
  94. package/auth/models.d.ts +0 -284
  95. package/auth/models.js +0 -4
  96. package/auth/models.js.map +0 -1
  97. package/captcha/index.d.ts +0 -45
  98. package/captcha/index.js +0 -135
  99. package/captcha/index.js.map +0 -1
  100. package/function/index.d.ts +0 -38
  101. package/function/index.js +0 -80
  102. package/function/index.js.map +0 -1
  103. package/index.d.ts +0 -8
  104. package/index.js +0 -17
  105. package/index.js.map +0 -1
  106. package/oauthclient/consts.js +0 -53
  107. package/oauthclient/consts.js.map +0 -1
  108. package/oauthclient/index.d.ts +0 -18
  109. package/oauthclient/index.js +0 -21
  110. package/oauthclient/index.js.map +0 -1
  111. package/oauthclient/interface.d.ts +0 -29
  112. package/oauthclient/interface.js +0 -10
  113. package/oauthclient/interface.js.map +0 -1
  114. package/oauthclient/models.d.ts +0 -40
  115. package/oauthclient/models.js +0 -3
  116. package/oauthclient/models.js.map +0 -1
  117. package/oauthclient/oauthclient.d.ts +0 -146
  118. package/oauthclient/oauthclient.js +0 -414
  119. package/oauthclient/oauthclient.js.map +0 -1
  120. package/utils/promise.d.ts +0 -18
  121. package/utils/promise.js +0 -48
  122. package/utils/promise.js.map +0 -1
  123. package/utils/uuid.d.ts +0 -5
  124. package/utils/uuid.js +0 -16
  125. package/utils/uuid.js.map +0 -1
package/auth/index.js DELETED
@@ -1,550 +0,0 @@
1
- 'use strict';
2
- Object.defineProperty(exports, "__esModule", { value: true });
3
- exports.Auth = exports.getAuth = exports.DeviceAuthorizeState = exports.VerificationUsages = exports.ErrorType = void 0;
4
- const consts_1 = require("./consts");
5
- const oauthclient_1 = require("../oauthclient");
6
- const captcha_1 = require("../captcha");
7
- const internal_1 = require("../app/internal");
8
- var consts_2 = require("./consts");
9
- Object.defineProperty(exports, "ErrorType", { enumerable: true, get: function () { return consts_2.ErrorType; } });
10
- Object.defineProperty(exports, "VerificationUsages", { enumerable: true, get: function () { return consts_2.VerificationUsages; } });
11
- Object.defineProperty(exports, "DeviceAuthorizeState", { enumerable: true, get: function () { return consts_2.DeviceAuthorizeState; } });
12
- /**
13
- * Returns the existing `Auth` instance that is associated with the app
14
- */
15
- function getAuth(app, initOptions) {
16
- return internal_1._getComponent(app, "auth", () => {
17
- const credentialsClient = oauthclient_1.getOAuthClient(app, initOptions);
18
- const baseRequest = credentialsClient.request.bind(credentialsClient);
19
- const captcha = captcha_1.getCaptcha(app, { request: baseRequest });
20
- return new Auth({
21
- credentialsClient: credentialsClient,
22
- captcha: captcha
23
- });
24
- });
25
- }
26
- exports.getAuth = getAuth;
27
- /**
28
- * Auth
29
- */
30
- class Auth {
31
- /**
32
- * constructor
33
- * @param {AuthOptions} opts
34
- */
35
- constructor(opts) {
36
- this.request = opts.captcha.request.bind(opts.captcha);
37
- this.credentialsClient = opts.credentialsClient;
38
- }
39
- /**
40
- * Sign in.
41
- * @param {SignInRequest} params A SignInRequest Object.
42
- * @return {Promise<Credentials>} A Promise<Credentials> object.
43
- */
44
- async signIn(params) {
45
- const credentials = await this.request(consts_1.ApiUrls.AUTH_SIGN_IN_URL, {
46
- method: 'POST',
47
- withBasicAuth: true,
48
- body: params
49
- });
50
- await this.credentialsClient.setCredentials(credentials);
51
- return Promise.resolve(credentials);
52
- }
53
- /**
54
- * Sign in Anonymously
55
- * @return {Promise<Credentials>} A Promise<Credentials> object.
56
- */
57
- async signInAnonymously() {
58
- const credentials = await this.request(consts_1.ApiUrls.AUTH_SIGN_IN_ANONYMOUSLY_URL, {
59
- method: 'POST',
60
- withBasicAuth: true,
61
- body: {}
62
- });
63
- await this.credentialsClient.setCredentials(credentials);
64
- return Promise.resolve(credentials);
65
- }
66
- /**
67
- * Sign up.
68
- * @param {SignUpRequest} params A SignUpRequest Object.
69
- * @return {Promise<Credentials>} A Promise<Credentials> object.
70
- */
71
- async signUp(params) {
72
- const data = await this.request(consts_1.ApiUrls.AUTH_SIGN_UP_URL, {
73
- method: 'POST',
74
- withBasicAuth: true,
75
- body: params,
76
- });
77
- await this.credentialsClient.setCredentials(data);
78
- return Promise.resolve(data);
79
- }
80
- /**
81
- * Sign out.
82
- * @return {Object} A Promise<void> object.
83
- */
84
- async signOut() {
85
- try {
86
- await this.request(consts_1.ApiUrls.AUTH_REVOKE_URL, {
87
- method: 'POST',
88
- withCredentials: true,
89
- });
90
- }
91
- catch (err) {
92
- if (err.error !== oauthclient_1.ErrorType.UNAUTHENTICATED) {
93
- console.log("sign_out_error", err);
94
- }
95
- }
96
- await this.credentialsClient.setCredentials();
97
- return;
98
- }
99
- /**
100
- * Revoke All Devices
101
- * @return {Object} A Promise<void> object.
102
- */
103
- async revokeAllDevices() {
104
- await this.request(consts_1.ApiUrls.AUTH_REVOKE_ALL_URL, {
105
- method: 'DELETE',
106
- withCredentials: true,
107
- });
108
- }
109
- /**
110
- * Revoke Device
111
- * @return {Object} A Promise<void> object.
112
- */
113
- async revokeDevice(params) {
114
- await this.request(consts_1.ApiUrls.AUTHORIZED_DEVICES_DELETE_URL + params.device_id, {
115
- method: 'DELETE',
116
- withCredentials: true,
117
- });
118
- }
119
- /**
120
- * Send the VerificationCode.
121
- * @param {SendVerificationCodeRequest} params A GetVerificationRequest Object.
122
- * @return {Promise<SendVerificationCodeResponse>} A Promise<GetVerificationResponse> object.
123
- */
124
- async sendVerificationCode(params) {
125
- let withBasicAuth = false;
126
- let withCredentials = false;
127
- // 发送短信时,如果时给当前用户发,则需要带上鉴权信息
128
- if (params.target == 'CUR_USER') {
129
- withCredentials = true;
130
- }
131
- else {
132
- const hasLogin = await this.hasLoginState();
133
- if (hasLogin) {
134
- withCredentials = true;
135
- }
136
- else {
137
- withBasicAuth = true;
138
- }
139
- }
140
- return this.request(consts_1.ApiUrls.VERIFICATION_URL, {
141
- method: 'POST',
142
- withBasicAuth: withBasicAuth,
143
- withCredentials: withCredentials,
144
- body: params,
145
- withCaptcha: true
146
- });
147
- }
148
- /**
149
- * Verify the code
150
- * @param {VerifyRequest} params A VerifyRequest Object.
151
- * @return {Promise<VerifyResponse>} A Promise<VerifyResponse> object.
152
- */
153
- async verify(params) {
154
- return this.request(consts_1.ApiUrls.VERIFY_URL, {
155
- method: 'POST',
156
- withBasicAuth: true,
157
- body: params,
158
- });
159
- }
160
- /**
161
- * Reset Password
162
- * @param params A ResetPasswordRequest Object
163
- */
164
- async resetPassword(params) {
165
- return this.request(consts_1.ApiUrls.RESET_PASSWORD_URL, {
166
- method: 'POST',
167
- withBasicAuth: true,
168
- body: params,
169
- });
170
- }
171
- /**
172
- * Gen provider redirect uri.
173
- * @param {GenProviderRedirectUriRequest} params A GenProviderRedirectUriRequest object.
174
- * @return {Promise<GenProviderRedirectUriResponse>} A Promise<GenProviderRedirectUriResponse> object.
175
- */
176
- async genProviderRedirectUri(params) {
177
- const otherParams = params.other_params;
178
- delete params.other_params;
179
- let url = `${consts_1.ApiUrls.PROVIDER_URI_URL}?${Auth.parseParamsToSearch(params)}`;
180
- if (otherParams) {
181
- otherParams.forEach((value, key) => {
182
- url += `&other_params[${key}]=${encodeURIComponent(value)}`;
183
- });
184
- }
185
- return this.request(url, {
186
- method: 'GET',
187
- withBasicAuth: true,
188
- });
189
- }
190
- /**
191
- * Grant provider token.
192
- * @param {GrantProviderTokenRequest} params A GrantProviderTokenRequest object.
193
- * @return {Promise<GrantProviderTokenResponse>} A Promise<GrantProviderTokenResponse> object.
194
- */
195
- async grantProviderToken(params) {
196
- return this.request(consts_1.ApiUrls.PROVIDER_TOKEN_URL, {
197
- method: 'POST',
198
- withBasicAuth: true,
199
- body: params,
200
- });
201
- }
202
- /**
203
- * Grant provider token.
204
- * @param {PatchProviderTokenRequest} params A PatchProviderTokenRequest object.
205
- * @return {Promise<PatchProviderTokenResponse>} A Promise<PatchProviderTokenResponse> object.
206
- */
207
- async patchProviderToken(params) {
208
- return this.request(consts_1.ApiUrls.PROVIDER_TOKEN_URL, {
209
- method: 'PATCH',
210
- withBasicAuth: true,
211
- body: params,
212
- });
213
- }
214
- /**
215
- * Signin with provider request.
216
- * @param {SignInWithProviderRequest} params A SignInWithProviderRequest object.
217
- * @return {Promise<Credentials>} A Promise<Credentials> object.
218
- */
219
- async signInWithProvider(params) {
220
- const credentials = await this.request(consts_1.ApiUrls.AUTH_SIGN_IN_WITH_PROVIDER_URL, {
221
- method: 'POST',
222
- withBasicAuth: true,
223
- body: params,
224
- });
225
- await this.credentialsClient.setCredentials(credentials);
226
- return Promise.resolve(credentials);
227
- }
228
- /**
229
- * Bind with provider
230
- * @param {BindWithProviderRequest} params A BindWithProviderRequest object.
231
- * @return {Promise<void>} A Promise<void> object.
232
- */
233
- async bindWithProvider(params) {
234
- return this.request(consts_1.ApiUrls.PROVIDER_BIND_URL, {
235
- method: 'POST',
236
- withBasicAuth: true,
237
- body: params,
238
- withCredentials: true,
239
- });
240
- }
241
- /**
242
- * Get the user profile.
243
- * @return {Promise<UserProfile>} A Promise<UserProfile> object.
244
- */
245
- async getUserProfile() {
246
- return this.request(consts_1.ApiUrls.USER_ME_URL, {
247
- method: 'GET',
248
- withCredentials: true,
249
- });
250
- }
251
- /**
252
- * Get the user profile.
253
- * @return {Promise<UserProfile>} A Promise<UserProfile> object.
254
- */
255
- async updateUserProfile(params) {
256
- return this.request(consts_1.ApiUrls.USER_ME_URL, {
257
- method: 'PATCH',
258
- withCredentials: true,
259
- body: params,
260
- });
261
- }
262
- /**
263
- * hasLoginState check if has login state
264
- * @return {Promise<boolean>} A Promise<boolean> object.
265
- */
266
- async hasLoginState() {
267
- try {
268
- await this.credentialsClient.getAccessToken();
269
- return true;
270
- }
271
- catch (err) {
272
- if (err.error === oauthclient_1.ErrorType.UNAUTHENTICATED) {
273
- return false;
274
- }
275
- return Promise.reject(err);
276
- }
277
- }
278
- /**
279
- * loginScope return scope of current token
280
- * @return {Promise<string>} A Promise<string> object.
281
- */
282
- async loginScope() {
283
- return this.credentialsClient.getScope();
284
- }
285
- /**
286
- * Trans by provider.
287
- * @param {TransByProviderRequest} params A TransByProviderRequest object.
288
- * @return {Promise<Credentials>} A Promise<Credentials> object.
289
- */
290
- async transByProvider(params) {
291
- return this.request(consts_1.ApiUrls.USER_TRANS_BY_PROVIDER_URL, {
292
- method: 'PATCH',
293
- body: params,
294
- withCredentials: true,
295
- });
296
- }
297
- /**
298
- * Grant token.
299
- * @param {GrantTokenRequest} params A GrantTokenRequest object.
300
- * @return {Promise<Credentials>} A Promise<Credentials> object.
301
- */
302
- async grantToken(params) {
303
- const credentials = await this.request(consts_1.ApiUrls.AUTH_TOKEN_URL, {
304
- method: 'POST',
305
- withBasicAuth: true,
306
- body: params,
307
- });
308
- await this.credentialsClient.setCredentials(credentials);
309
- return Promise.resolve(credentials);
310
- }
311
- /**
312
- * Get the provide list.
313
- * @return {Promise<ProvidersResponse>} A Promise<UserProfileProviderList> object.
314
- */
315
- async getProviders() {
316
- return this.request(consts_1.ApiUrls.PROVIDER_LIST_URL, {
317
- method: 'GET',
318
- withCredentials: true,
319
- });
320
- }
321
- /**
322
- * check if username is exist
323
- * @param params CheckIfUserExistRequest
324
- */
325
- async checkIfUserExist(params) {
326
- const url = `${consts_1.ApiUrls.USER_ME_URL}?${Auth.parseParamsToSearch(params)}`;
327
- return this.request(url, {
328
- method: 'GET',
329
- });
330
- }
331
- /**
332
- * unbind provider.
333
- * @param {UnbindProviderRequest} params
334
- * @return {Promise<void>}
335
- */
336
- async unbindProvider(params) {
337
- return this.request(`${consts_1.ApiUrls.PROVIDER_UNBIND_URL}/${params.provider_id}`, {
338
- method: 'DELETE',
339
- withCredentials: true,
340
- });
341
- }
342
- /**
343
- * check Password.
344
- * @param {CheckPasswordRequest} params
345
- * @return {Promise<void>}
346
- */
347
- async checkPassword(params) {
348
- return this.request(`${consts_1.ApiUrls.SUDO_URL}`, {
349
- method: 'POST',
350
- withCredentials: true,
351
- body: params,
352
- });
353
- }
354
- /**
355
- * Edit Contact 修改 手机号 或 邮箱
356
- * @param {EditContactRequest} params
357
- * @return {Promise<void>}
358
- */
359
- async editContact(params) {
360
- return this.request(`${consts_1.ApiUrls.EDIT_CONTACT_URL}`, {
361
- method: 'PATCH',
362
- withCredentials: true,
363
- body: params,
364
- });
365
- }
366
- /**
367
- * Set Password.
368
- * @param {SetPasswordRequest} params
369
- * @return {Promise<void>}
370
- */
371
- async setPassword(params) {
372
- return this.request(`${consts_1.ApiUrls.AUTH_SET_PASSWORD_URL}`, {
373
- method: 'PATCH',
374
- withCredentials: true,
375
- body: params,
376
- });
377
- }
378
- /**
379
- * updatePasswordByOld 使用旧密码修改密码,如果已经绑定手机号,请先:sudo,再修改密码
380
- * @param {UpdatePasswordRequest} params
381
- * @return {Promise<void>}
382
- */
383
- async updatePasswordByOld(params) {
384
- const sudoToken = await this.sudo({ password: params.old_password });
385
- return this.setPassword({
386
- sudo_token: sudoToken.sudo_token,
387
- new_password: params.new_password,
388
- });
389
- }
390
- /**
391
- * sudo
392
- * @param {sudo} params
393
- * @return {Promise<SudoResponse>}
394
- */
395
- async sudo(params) {
396
- return this.request(`${consts_1.ApiUrls.SUDO_URL}`, {
397
- method: 'POST',
398
- withCredentials: true,
399
- body: params,
400
- });
401
- }
402
- /**
403
- * Get the current user verification.
404
- * @param {SendVerificationCodeRequest} params A SendVerificationCodeToCurrentUser Object.
405
- * @return {Promise<SendVerificationCodeResponse>} A Promise<SendVerificationCodeResponse> object.
406
- */
407
- async SendVerificationCodeToCurrentUser(params) {
408
- params.target = 'CUR_USER';
409
- return this.request(consts_1.ApiUrls.VERIFICATION_URL, {
410
- method: 'POST',
411
- body: params,
412
- withCredentials: true,
413
- withCaptcha: true
414
- });
415
- }
416
- /**
417
- * change Bound provider.
418
- * @param {ChangeBoundProviderRequest} params A GetVerificationRequest Object.
419
- * @return {Promise<ChangeBoundProviderResponse>} A Promise<GetVerificationResponse> object.
420
- */
421
- async changeBoundProvider(params) {
422
- return this.request(`${consts_1.ApiUrls.PROVIDER_LIST_URL}/${params.provider_id}/trans`, {
423
- method: 'POST',
424
- body: {
425
- provider_trans_token: params.trans_token,
426
- },
427
- withCredentials: true,
428
- });
429
- }
430
- /**
431
- * set the user profile.
432
- * @param {UserProfile} params A UserProfile Object.
433
- * @return {Promise<UserProfile>} A Promise<UserProfile> object.
434
- */
435
- async setUserProfile(params) {
436
- return this.request(consts_1.ApiUrls.USER_PROFILE_URL, {
437
- method: 'PATCH',
438
- body: params,
439
- withCredentials: true,
440
- });
441
- }
442
- /**
443
- * Delete me
444
- * @param params
445
- */
446
- async deleteMe(params) {
447
- const url = `${consts_1.ApiUrls.USER_ME_URL}?${Auth.parseParamsToSearch(params)}`;
448
- return this.request(url, {
449
- method: 'DELETE',
450
- withCredentials: true,
451
- });
452
- }
453
- /**
454
- * setCustomSignFunc set the get ticket function
455
- * @param getTickFn
456
- */
457
- setCustomSignFunc(getTickFn) {
458
- this._getCustomSignTicketFn = getTickFn;
459
- }
460
- /**
461
- * SignInWithCustomTicket custom signIn
462
- * @constructor
463
- */
464
- async SignInWithCustomTicket() {
465
- const customSignTicketFn = this._getCustomSignTicketFn;
466
- if (!customSignTicketFn) {
467
- return Promise.reject({
468
- "error": "failed_precondition",
469
- "error_description": "please use setCustomSignFunc to set custom sign function",
470
- });
471
- }
472
- const customTicket = await customSignTicketFn();
473
- return this.signInWithProvider({
474
- provider_id: 'custom',
475
- provider_token: customTicket
476
- });
477
- }
478
- /**
479
- * queryUserProfile query user profile
480
- * @param params queryUserProfile query user profile
481
- */
482
- async queryUserProfile(params) {
483
- const url = `${consts_1.ApiUrls.USER_QUERY_URL}?${Auth.parseParamsToSearch(params)}`;
484
- return this.request(url, {
485
- method: 'GET',
486
- withCredentials: true,
487
- });
488
- }
489
- /**
490
- * Authorize oauth Authorize
491
- * @param params
492
- * @constructor
493
- */
494
- async authorize(params) {
495
- return this.request(consts_1.ApiUrls.AUTHORIZE_URL, {
496
- method: 'POST',
497
- withCredentials: true,
498
- body: params,
499
- });
500
- }
501
- /**
502
- * authorize device
503
- * @param params
504
- */
505
- async authorizeDevice(params) {
506
- return this.request(consts_1.ApiUrls.AUTHORIZE_DEVICE_URL, {
507
- method: 'POST',
508
- withCredentials: true,
509
- body: params,
510
- });
511
- }
512
- async deviceAuthorize(params) {
513
- return this.request(consts_1.ApiUrls.AUTHORIZE_DEVICE_CODE_URL, {
514
- method: 'POST',
515
- withBasicAuth: true,
516
- body: params,
517
- });
518
- }
519
- /**
520
- * OAuth get authorize info
521
- * @param params
522
- * @constructor
523
- */
524
- async authorizeInfo(params) {
525
- const url = `${consts_1.ApiUrls.AUTHORIZE_INFO_URL}?${Auth.parseParamsToSearch(params)}`;
526
- let withBasicAuth = true;
527
- let withCredentials = false;
528
- const hasLogin = await this.hasLoginState();
529
- if (hasLogin) {
530
- withCredentials = true;
531
- withBasicAuth = false;
532
- }
533
- return this.request(url, {
534
- method: 'GET',
535
- withBasicAuth: withBasicAuth,
536
- withCredentials: withCredentials,
537
- });
538
- }
539
- static parseParamsToSearch(params) {
540
- for (let key in params) {
541
- if (!params[key]) {
542
- delete params[key];
543
- }
544
- }
545
- const searchParams = new URLSearchParams(params);
546
- return searchParams.toString();
547
- }
548
- }
549
- exports.Auth = Auth;
550
- //# sourceMappingURL=index.js.map
package/auth/index.js.map DELETED
@@ -1 +0,0 @@
1
- {"version":3,"file":"index.js","sourceRoot":"","sources":["../../src/auth/index.ts"],"names":[],"mappings":"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"}