@cloudbase/oauth 0.0.5-alpha.0 → 0.1.1-alpha
This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
- package/CHANGELOG.md +30 -0
- package/README.md +137 -5
- package/app/index.d.ts +28 -0
- package/app/index.js +54 -0
- package/app/index.js.map +1 -0
- package/app/internal.d.ts +12 -0
- package/app/internal.js +25 -0
- package/app/internal.js.map +1 -0
- package/app/openuri.d.ts +20 -0
- package/app/openuri.js +104 -0
- package/app/openuri.js.map +1 -0
- package/app/request.d.ts +18 -0
- package/app/request.js +44 -0
- package/app/request.js.map +1 -0
- package/app/storage.d.ts +41 -0
- package/app/storage.js +35 -0
- package/app/storage.js.map +1 -0
- package/{dist/auth → auth}/consts.d.ts +21 -1
- package/auth/consts.js +57 -0
- package/auth/consts.js.map +1 -0
- package/auth/index.d.ts +193 -0
- package/auth/index.js +403 -0
- package/auth/index.js.map +1 -0
- package/{dist/auth → auth}/models.d.ts +35 -25
- package/auth/models.js +3 -0
- package/auth/models.js.map +1 -0
- package/captcha/index.d.ts +45 -0
- package/captcha/index.js +133 -0
- package/captcha/index.js.map +1 -0
- package/index.d.ts +8 -0
- package/index.js +17 -0
- package/index.js.map +1 -0
- package/{dist/oauth2client → oauthclient}/consts.d.ts +1 -22
- package/oauthclient/consts.js +53 -0
- package/oauthclient/consts.js.map +1 -0
- package/oauthclient/index.d.ts +18 -0
- package/oauthclient/index.js +21 -0
- package/oauthclient/index.js.map +1 -0
- package/oauthclient/interface.d.ts +25 -0
- package/oauthclient/interface.js +10 -0
- package/oauthclient/interface.js.map +1 -0
- package/{dist/oauth2client → oauthclient}/models.d.ts +5 -13
- package/oauthclient/models.js +3 -0
- package/oauthclient/models.js.map +1 -0
- package/oauthclient/oauthclient.d.ts +142 -0
- package/oauthclient/oauthclient.js +399 -0
- package/oauthclient/oauthclient.js.map +1 -0
- package/package.json +29 -33
- package/utils/single-promise.d.ts +18 -0
- package/utils/single-promise.js +48 -0
- package/utils/single-promise.js.map +1 -0
- package/utils/uuid.d.ts +5 -0
- package/utils/uuid.js +16 -0
- package/utils/uuid.js.map +1 -0
- package/.eslintignore +0 -2
- package/.eslintrc +0 -26
- package/dist/auth/apis.d.ts +0 -44
- package/dist/auth/apis.js +0 -448
- package/dist/auth/consts.js +0 -35
- package/dist/auth/models.js +0 -3
- package/dist/captcha/captcha.d.ts +0 -35
- package/dist/captcha/captcha.js +0 -262
- package/dist/index.d.ts +0 -9
- package/dist/index.js +0 -234
- package/dist/oauth2client/consts.js +0 -73
- package/dist/oauth2client/interface.d.ts +0 -15
- package/dist/oauth2client/interface.js +0 -10
- package/dist/oauth2client/models.js +0 -3
- package/dist/oauth2client/oauth2client.d.ts +0 -70
- package/dist/oauth2client/oauth2client.js +0 -618
- package/dist/utils/function/single-promise.d.ts +0 -5
- package/dist/utils/function/single-promise.js +0 -89
- package/dist/utils/uuid.d.ts +0 -1
- package/dist/utils/uuid.js +0 -12
- package/src/auth/apis.ts +0 -507
- package/src/auth/consts.ts +0 -30
- package/src/auth/models.ts +0 -178
- package/src/captcha/captcha.ts +0 -217
- package/src/index.ts +0 -162
- package/src/oauth2client/consts.ts +0 -69
- package/src/oauth2client/interface.ts +0 -57
- package/src/oauth2client/models.ts +0 -61
- package/src/oauth2client/oauth2client.ts +0 -606
- package/src/utils/function/single-promise.ts +0 -40
- package/src/utils/uuid.ts +0 -11
- package/tsconfig.json +0 -44
package/dist/auth/consts.js
DELETED
|
@@ -1,35 +0,0 @@
|
|
|
1
|
-
"use strict";
|
|
2
|
-
Object.defineProperty(exports, "__esModule", { value: true });
|
|
3
|
-
exports.VerificationUsages = exports.ApiUrls = void 0;
|
|
4
|
-
var ApiUrls;
|
|
5
|
-
(function (ApiUrls) {
|
|
6
|
-
ApiUrls["AUTH_SIGN_IN_URL"] = "/auth/v1/signin";
|
|
7
|
-
ApiUrls["AUTH_SIGN_IN_ANONYMOUSLY_URL"] = "/auth/v1/signin/anonymously";
|
|
8
|
-
ApiUrls["AUTH_SIGN_IN_WITH_PROVIDER_URL"] = "/auth/v1/signin/with/provider";
|
|
9
|
-
ApiUrls["AUTH_SIGN_UP_URL"] = "/auth/v1/signup";
|
|
10
|
-
ApiUrls["AUTH_TOKEN_URL"] = "/auth/v1/token";
|
|
11
|
-
ApiUrls["AUTH_REVOKE_URL"] = "/auth/v1/revoke";
|
|
12
|
-
ApiUrls["PROVIDER_BIND_URL"] = "/auth/v1/user/provider/bind";
|
|
13
|
-
ApiUrls["PROVIDER_TOKEN_URL"] = "/auth/v1/provider/token";
|
|
14
|
-
ApiUrls["PROVIDER_URI_URL"] = "/auth/v1/provider/uri";
|
|
15
|
-
ApiUrls["USER_ME_URL"] = "/auth/v1/user/me";
|
|
16
|
-
ApiUrls["USER_QUERY_URL"] = "/auth/v1/user/query";
|
|
17
|
-
ApiUrls["USER_PRIFILE_URL"] = "/auth/v1/user/profile";
|
|
18
|
-
ApiUrls["USER_TRANS_BY_PROVIDER_URL"] = "/auth/v1/user/trans/by/provider";
|
|
19
|
-
ApiUrls["VERIFICATION_URL"] = "/auth/v1/verification";
|
|
20
|
-
ApiUrls["VERIFY_URL"] = "/auth/v1/verification/verify";
|
|
21
|
-
ApiUrls["PROVIDER_LIST"] = "/auth/v1/user/provider";
|
|
22
|
-
ApiUrls["PROVIDER_UNBIND_URL"] = "/auth/v1/user/provider";
|
|
23
|
-
ApiUrls["CHECK_PWD_URL"] = "/auth/v1/user/sudo";
|
|
24
|
-
ApiUrls["BIND_PHONE_URL"] = "/auth/v1/user/contact";
|
|
25
|
-
ApiUrls["AUTH_SET_PASSWORD"] = "/auth/v1/user/password";
|
|
26
|
-
})(ApiUrls = exports.ApiUrls || (exports.ApiUrls = {}));
|
|
27
|
-
var VerificationUsages;
|
|
28
|
-
(function (VerificationUsages) {
|
|
29
|
-
VerificationUsages["REGISTER"] = "REGISTER";
|
|
30
|
-
VerificationUsages["SIGN_IN"] = "SIGN_IN";
|
|
31
|
-
VerificationUsages["PASSWORD_RESET"] = "PASSWORD_RESET";
|
|
32
|
-
VerificationUsages["EMAIL_ADDRESS_CHANGE"] = "EMAIL_ADDRESS_CHANGE";
|
|
33
|
-
VerificationUsages["PHONE_NUMBER_CHANGE"] = "PHONE_NUMBER_CHANGE";
|
|
34
|
-
})(VerificationUsages = exports.VerificationUsages || (exports.VerificationUsages = {}));
|
|
35
|
-
//# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoiY29uc3RzLmpzIiwic291cmNlUm9vdCI6IiIsInNvdXJjZXMiOlsiLi4vLi4vc3JjL2F1dGgvY29uc3RzLnRzIl0sIm5hbWVzIjpbXSwibWFwcGluZ3MiOiI7OztBQUFBLElBQVksT0FxQlg7QUFyQkQsV0FBWSxPQUFPO0lBQ2pCLCtDQUFvQyxDQUFBO0lBQ3BDLHVFQUE0RCxDQUFBO0lBQzVELDJFQUFnRSxDQUFBO0lBQ2hFLCtDQUFvQyxDQUFBO0lBQ3BDLDRDQUFpQyxDQUFBO0lBQ2pDLDhDQUFtQyxDQUFBO0lBQ25DLDREQUFpRCxDQUFBO0lBQ2pELHlEQUE4QyxDQUFBO0lBQzlDLHFEQUEwQyxDQUFBO0lBQzFDLDJDQUFnQyxDQUFBO0lBQ2hDLGlEQUFzQyxDQUFBO0lBQ3RDLHFEQUEwQyxDQUFBO0lBQzFDLHlFQUE4RCxDQUFBO0lBQzlELHFEQUEwQyxDQUFBO0lBQzFDLHNEQUEyQyxDQUFBO0lBQzNDLG1EQUF3QyxDQUFBO0lBQ3hDLHlEQUE4QyxDQUFBO0lBQzlDLCtDQUFvQyxDQUFBO0lBQ3BDLG1EQUF3QyxDQUFBO0lBQ3hDLHVEQUE0QyxDQUFBO0FBQzlDLENBQUMsRUFyQlcsT0FBTyxHQUFQLGVBQU8sS0FBUCxlQUFPLFFBcUJsQjtBQUVELElBQVksa0JBTVg7QUFORCxXQUFZLGtCQUFrQjtJQUM1QiwyQ0FBcUIsQ0FBQTtJQUNyQix5Q0FBbUIsQ0FBQTtJQUNuQix1REFBaUMsQ0FBQTtJQUNqQyxtRUFBNkMsQ0FBQTtJQUM3QyxpRUFBMkMsQ0FBQTtBQUM3QyxDQUFDLEVBTlcsa0JBQWtCLEdBQWxCLDBCQUFrQixLQUFsQiwwQkFBa0IsUUFNN0IiLCJzb3VyY2VzQ29udGVudCI6WyJleHBvcnQgZW51bSBBcGlVcmxzIHtcbiAgQVVUSF9TSUdOX0lOX1VSTCA9ICcvYXV0aC92MS9zaWduaW4nLFxuICBBVVRIX1NJR05fSU5fQU5PTllNT1VTTFlfVVJMID0gJy9hdXRoL3YxL3NpZ25pbi9hbm9ueW1vdXNseScsXG4gIEFVVEhfU0lHTl9JTl9XSVRIX1BST1ZJREVSX1VSTCA9ICcvYXV0aC92MS9zaWduaW4vd2l0aC9wcm92aWRlcicsXG4gIEFVVEhfU0lHTl9VUF9VUkwgPSAnL2F1dGgvdjEvc2lnbnVwJyxcbiAgQVVUSF9UT0tFTl9VUkwgPSAnL2F1dGgvdjEvdG9rZW4nLFxuICBBVVRIX1JFVk9LRV9VUkwgPSAnL2F1dGgvdjEvcmV2b2tlJyxcbiAgUFJPVklERVJfQklORF9VUkwgPSAnL2F1dGgvdjEvdXNlci9wcm92aWRlci9iaW5kJyxcbiAgUFJPVklERVJfVE9LRU5fVVJMID0gJy9hdXRoL3YxL3Byb3ZpZGVyL3Rva2VuJyxcbiAgUFJPVklERVJfVVJJX1VSTCA9ICcvYXV0aC92MS9wcm92aWRlci91cmknLFxuICBVU0VSX01FX1VSTCA9ICcvYXV0aC92MS91c2VyL21lJyxcbiAgVVNFUl9RVUVSWV9VUkwgPSAnL2F1dGgvdjEvdXNlci9xdWVyeScsXG4gIFVTRVJfUFJJRklMRV9VUkwgPSAnL2F1dGgvdjEvdXNlci9wcm9maWxlJyxcbiAgVVNFUl9UUkFOU19CWV9QUk9WSURFUl9VUkwgPSAnL2F1dGgvdjEvdXNlci90cmFucy9ieS9wcm92aWRlcicsXG4gIFZFUklGSUNBVElPTl9VUkwgPSAnL2F1dGgvdjEvdmVyaWZpY2F0aW9uJyxcbiAgVkVSSUZZX1VSTCA9ICcvYXV0aC92MS92ZXJpZmljYXRpb24vdmVyaWZ5JyxcbiAgUFJPVklERVJfTElTVCA9ICcvYXV0aC92MS91c2VyL3Byb3ZpZGVyJyxcbiAgUFJPVklERVJfVU5CSU5EX1VSTCA9ICcvYXV0aC92MS91c2VyL3Byb3ZpZGVyJyxcbiAgQ0hFQ0tfUFdEX1VSTCA9ICcvYXV0aC92MS91c2VyL3N1ZG8nLFxuICBCSU5EX1BIT05FX1VSTCA9ICcvYXV0aC92MS91c2VyL2NvbnRhY3QnLFxuICBBVVRIX1NFVF9QQVNTV09SRCA9ICcvYXV0aC92MS91c2VyL3Bhc3N3b3JkJyxcbn1cblxuZXhwb3J0IGVudW0gVmVyaWZpY2F0aW9uVXNhZ2VzIHtcbiAgUkVHSVNURVIgPSAnUkVHSVNURVInLFxuICBTSUdOX0lOID0gJ1NJR05fSU4nLFxuICBQQVNTV09SRF9SRVNFVCA9ICdQQVNTV09SRF9SRVNFVCcsXG4gIEVNQUlMX0FERFJFU1NfQ0hBTkdFID0gJ0VNQUlMX0FERFJFU1NfQ0hBTkdFJyxcbiAgUEhPTkVfTlVNQkVSX0NIQU5HRSA9ICdQSE9ORV9OVU1CRVJfQ0hBTkdFJyxcbn1cbiJdfQ==
|
package/dist/auth/models.js
DELETED
|
@@ -1,3 +0,0 @@
|
|
|
1
|
-
"use strict";
|
|
2
|
-
Object.defineProperty(exports, "__esModule", { value: true });
|
|
3
|
-
//# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoibW9kZWxzLmpzIiwic291cmNlUm9vdCI6IiIsInNvdXJjZXMiOlsiLi4vLi4vc3JjL2F1dGgvbW9kZWxzLnRzIl0sIm5hbWVzIjpbXSwibWFwcGluZ3MiOiIiLCJzb3VyY2VzQ29udGVudCI6WyJpbnRlcmZhY2UgQmFzZVJlcXVlc3Qge1xuICBjbGllbnRfaWQ/OiBzdHJpbmc7XG59XG5cbmV4cG9ydCBpbnRlcmZhY2UgU2lnbkluUmVxdWVzdCBleHRlbmRzIEJhc2VSZXF1ZXN0IHtcbiAgdXNlcm5hbWU/OiBzdHJpbmc7XG4gIHBhc3N3b3JkPzogc3RyaW5nO1xuICB2ZXJpZmljYXRpb25fY29kZT86IHN0cmluZztcbiAgdmVyaWZpY2F0aW9uX3Rva2VuPzogc3RyaW5nO1xufVxuXG5leHBvcnQgaW50ZXJmYWNlIFNpZ25JbldpdGhQcm92aWRlclJlcXVlc3QgZXh0ZW5kcyBCYXNlUmVxdWVzdCB7XG4gIHByb3ZpZGVyX3Rva2VuOiBzdHJpbmc7XG59XG5cbmV4cG9ydCBpbnRlcmZhY2UgU2lnblVwUmVxdWVzdCBleHRlbmRzIEJhc2VSZXF1ZXN0IHtcbiAgcGhvbmVfbnVtYmVyPzogc3RyaW5nO1xuICBlbWFpbD86IHN0cmluZztcblxuICB2ZXJpZmljYXRpb25fY29kZT86IHN0cmluZztcbiAgdmVyaWZpY2F0aW9uX3Rva2VuPzogc3RyaW5nO1xuICBwcm92aWRlcl90b2tlbj86IHN0cmluZztcblxuICBwYXNzd29yZD86IHN0cmluZztcbiAgbmFtZT86IHN0cmluZztcbiAgZ2VuZGVyPzogc3RyaW5nO1xuICBwaWN0dXJlPzogc3RyaW5nO1xuICBsb2NhbGU/OiBzdHJpbmc7XG59XG5cbmV4cG9ydCBpbnRlcmZhY2UgR2V0VmVyaWZpY2F0aW9uUmVxdWVzdCBleHRlbmRzIEJhc2VSZXF1ZXN0IHtcbiAgcGhvbmVfbnVtYmVyPzogc3RyaW5nO1xuICBlbWFpbD86IHN0cmluZztcbiAgdGFyZ2V0Pzogc3RyaW5nIHwgJ0FOWSc7XG4gIHVzYWdlPzogc3RyaW5nO1xufVxuXG5leHBvcnQgaW50ZXJmYWNlIEdldFZlcmlmaWNhdGlvblJlc3BvbnNlIHtcbiAgdmVyaWZpY2F0aW9uX2lkPzogc3RyaW5nO1xuICBpc191c2VyPzogYm9vbGVhbiB8IGZhbHNlO1xufVxuXG5leHBvcnQgaW50ZXJmYWNlIFZlcmlmeVJlc3BvbnNlIHtcbiAgdmVyaWZpY2F0aW9uX3Rva2VuPzogc3RyaW5nO1xufVxuXG5leHBvcnQgaW50ZXJmYWNlIFZlcmlmeVJlcXVlc3QgZXh0ZW5kcyBCYXNlUmVxdWVzdCB7XG4gIHZlcmlmaWNhdGlvbl9jb2RlOiBzdHJpbmc7XG4gIHZlcmlmaWNhdGlvbl9pZD86IHN0cmluZztcbn1cblxuZXhwb3J0IGludGVyZmFjZSBQcm92aWRlckJpbmRSZXF1ZXN0IHtcbiAgcHJvdmlkZXJfdG9rZW46IHN0cmluZztcbn1cblxuZXhwb3J0IGludGVyZmFjZSBHcmFudFByb3ZpZGVyVG9rZW5SZXF1ZXN0IGV4dGVuZHMgQmFzZVJlcXVlc3Qge1xuICBwcm92aWRlcl9pZDogc3RyaW5nO1xuICBwcm92aWRlcl9yZWRpcmVjdF91cmk/OiBzdHJpbmc7XG4gIHByb3ZpZGVyX2NvZGU/OiBzdHJpbmc7XG4gIHByb3ZpZGVyX2FjY2Vzc190b2tlbj86IHN0cmluZztcbiAgcHJvdmlkZXJfaWRfdG9rZW4/OiBzdHJpbmc7XG59XG5cbmV4cG9ydCBpbnRlcmZhY2UgR3JhbnRQcm92aWRlclRva2VuUmVzcG9uc2Uge1xuICBwcm92aWRlcl90b2tlbjogc3RyaW5nO1xuICBleHBpcmVzX2luOiBudW1iZXI7XG59XG5cbmV4cG9ydCBpbnRlcmZhY2UgUGF0Y2hQcm92aWRlclRva2VuUmVxdWVzdCBleHRlbmRzIEJhc2VSZXF1ZXN0IHtcbiAgcHJvdmlkZXJfdG9rZW46IHN0cmluZztcbiAgcHJvdmlkZXJfcGFyYW1zOiB7XG4gICAgZW5jcnlwdGVkRGF0YTogc3RyaW5nO1xuICAgIGl2OiBzdHJpbmc7XG4gIH07XG59XG5cbmV4cG9ydCBpbnRlcmZhY2UgUGF0Y2hQcm92aWRlclRva2VuUmVzcG9uc2Uge1xuICBwcm92aWRlcl90b2tlbjogc3RyaW5nO1xuICBleHBpcmVzX2luOiBudW1iZXI7XG4gIHByb3ZpZGVyX3Byb2ZpbGU6IFByb3ZpZGVyUHJvZmlsZTtcbn1cblxuZXhwb3J0IGludGVyZmFjZSBHZW5Qcm92aWRlclJlZGlyZWN0VXJpUmVxdWVzdCB7XG4gIHByb3ZpZGVyX2lkOiBzdHJpbmc7XG4gIHByb3ZpZGVyX3JlZGlyZWN0X3VyaTogc3RyaW5nO1xuICBzdGF0ZTogc3RyaW5nO1xuICBvdGhlcl9wYXJhbXM/OiB7XG4gICAgc2lnbl9vdXRfdXJpPzogc3RyaW5nO1xuICB9O1xufVxuXG5leHBvcnQgaW50ZXJmYWNlIEdlblByb3ZpZGVyUmVkaXJlY3RVcmlSZXNwb25zZSB7XG4gIHVyaTogc3RyaW5nO1xuICBzaWdub3V0X3VyaT86IHN0cmluZztcbn1cblxuZXhwb3J0IGludGVyZmFjZSBCaW5kV2l0aFByb3ZpZGVyUmVxdWVzdCBleHRlbmRzIEJhc2VSZXF1ZXN0IHtcbiAgcHJvdmlkZXJfdG9rZW46IHN0cmluZztcbn1cblxuZXhwb3J0IGludGVyZmFjZSBCaW5kV2l0aFByb3ZpZGVyUmVxdWVzdCB7XG4gIHByb3ZpZGVyX3Rva2VuOiBzdHJpbmc7XG59XG5cbmV4cG9ydCBpbnRlcmZhY2UgVXNlclByb2ZpbGVQcm92aWRlciB7XG4gIGlkPzogc3RyaW5nO1xuICBwcm92aWRlcl91c2VyX2lkPzogc3RyaW5nO1xuICBuYW1lPzogc3RyaW5nO1xufVxuXG5leHBvcnQgaW50ZXJmYWNlIFVzZXJQcm9maWxlIHtcbiAgbmFtZT86IHN0cmluZztcbiAgcGljdHVyZT86IHN0cmluZztcbiAgYXZhdGFyVXJsPzogc3RyaW5nO1xuICB1c2VybmFtZT86IHN0cmluZztcbiAgZW1haWw/OiBzdHJpbmc7XG4gIGVtYWlsX3ZlcmlmaWVkPzogYm9vbGVhbjtcbiAgcGhvbmVfbnVtYmVyPzogc3RyaW5nO1xuICBwcm92aWRlcnM/OiBbVXNlclByb2ZpbGVQcm92aWRlcl07XG4gIGdlbmRlcj86IHN0cmluZztcbiAgYmlydGhkYXRlPzogc3RyaW5nO1xuICB6b25laW5mbz86IHN0cmluZztcbiAgbG9jYWxlPzogc3RyaW5nO1xuICBjcmVhdGVkX2Zyb20/OiBzdHJpbmc7XG4gIHN1Yj86IHN0cmluZ1xuICB1aWQ/OiBzdHJpbmdcbn1cblxuZXhwb3J0IHR5cGUgVXNlckluZm8gPSBVc2VyUHJvZmlsZTtcblxuZXhwb3J0IGludGVyZmFjZSBQcm92aWRlclByb2ZpbGUge1xuICBwcm92aWRlcl9pZDogc3RyaW5nO1xuICBwaG9uZV9udW1iZXI/OiBzdHJpbmc7XG59XG5cbmV4cG9ydCBpbnRlcmZhY2UgVHJhbnNCeVByb3ZpZGVyUmVxdWVzdCB7XG4gIHByb3ZpZGVyX3Rva2VuOiBzdHJpbmc7XG59XG5cbmV4cG9ydCBpbnRlcmZhY2UgR3JhbnRUb2tlblJlcXVlc3QgZXh0ZW5kcyBCYXNlUmVxdWVzdCB7XG4gIGNsaWVudF9zZWNyZXQ/OiBzdHJpbmc7XG4gIGNvZGU/OiBzdHJpbmc7XG4gIGdyYW50X3R5cGU/OiBzdHJpbmc7XG4gIHJlZGlyZWN0X3VyaT86IHN0cmluZztcbiAgbm9uY2U/OiBzdHJpbmc7XG4gIHJlZnJlc2hfdG9rZW4/OiBzdHJpbmc7XG4gIHNjb3BlPzogc3RyaW5nO1xufVxuXG5leHBvcnQgaW50ZXJmYWNlIFVuYmluZFByb3ZpZGVyUmVxdWVzdCBleHRlbmRzIEJhc2VSZXF1ZXN0IHtcbiAgcHJvdmlkZXJfaWQ6IHN0cmluZztcbn1cblxuZXhwb3J0IGludGVyZmFjZSBDaGVja1Bhc3N3b3JkclJlcXVlc3QgZXh0ZW5kcyBCYXNlUmVxdWVzdCB7XG4gIHBhc3N3b3JkOiBzdHJpbmc7XG59XG5cbmV4cG9ydCBpbnRlcmZhY2UgQmluZFBob25lUmVxdWVzdCBleHRlbmRzIEJhc2VSZXF1ZXN0IHtcbiAgcGhvbmVfbnVtYmVyOiBzdHJpbmc7XG4gIHN1ZG9fdG9rZW46IHN0cmluZztcbiAgdmVyaWZpY2F0aW9uX3Rva2VuOiBzdHJpbmc7XG59XG5cbmV4cG9ydCBpbnRlcmZhY2UgU2V0UGFzc3dvcmRSZXF1ZXN0IGV4dGVuZHMgQmFzZVJlcXVlc3Qge1xuICBuZXdfcGFzc3dvcmQ6IHN0cmluZztcbiAgc3Vkb190b2tlbjogc3RyaW5nO1xufVxuXG5leHBvcnQgaW50ZXJmYWNlIENoYW5nZUJpbmRlZFByb3ZpZGVyUmVxdWVzdCBleHRlbmRzIEJhc2VSZXF1ZXN0IHtcbiAgdHJhbnNfdG9rZW46IHN0cmluZztcbiAgcHJvdmlkZXJfaWQ6IHN0cmluZztcbn1cblxuZXhwb3J0IHR5cGUgQ2hhbmdlQmluZGVkUHJvdmlkZXJSZXNwb25zZSA9IEJhc2VSZXF1ZXN0XG5cbmV4cG9ydCBpbnRlcmZhY2UgUXVlcnlVc2VyUHJvZmlsZVJlcSBleHRlbmRzIEJhc2VSZXF1ZXN0IHtcbiAgYXBwZW5kZWRfcGFyYW1zOiBzdHJpbmc7XG59XG4iXX0=
|
|
@@ -1,35 +0,0 @@
|
|
|
1
|
-
import { SimpleStorage, RequestFunction } from '../oauth2client/interface';
|
|
2
|
-
import { AuthClientRequestOptions } from "../oauth2client/models";
|
|
3
|
-
export interface CaptchaOptions {
|
|
4
|
-
clientId: string;
|
|
5
|
-
request: RequestFunction;
|
|
6
|
-
storage: SimpleStorage;
|
|
7
|
-
openURIWithCallback?: OpenURIWithCallbackFuction;
|
|
8
|
-
}
|
|
9
|
-
declare type OpenURIWithCallbackFuction = (url: string) => Promise<CaptchaToken>;
|
|
10
|
-
export interface CaptchaToken {
|
|
11
|
-
captcha_token: string;
|
|
12
|
-
expires_in: number;
|
|
13
|
-
expires_at?: Date | null;
|
|
14
|
-
}
|
|
15
|
-
export interface CaptchaRequestOptions extends AuthClientRequestOptions {
|
|
16
|
-
withCaptcha?: boolean;
|
|
17
|
-
}
|
|
18
|
-
export interface GetCaptchaResponse {
|
|
19
|
-
captcha_token?: string;
|
|
20
|
-
expires_in?: number;
|
|
21
|
-
url?: string;
|
|
22
|
-
}
|
|
23
|
-
export declare class Captcha {
|
|
24
|
-
private _config;
|
|
25
|
-
private _tokenSectionName;
|
|
26
|
-
constructor(opts: CaptchaOptions);
|
|
27
|
-
request<T>(url: string, options?: CaptchaRequestOptions): Promise<T>;
|
|
28
|
-
private _getDefaultOpenURIWithCallback;
|
|
29
|
-
private _defaultOpenURIWithCallback;
|
|
30
|
-
private _getCaptchaToken;
|
|
31
|
-
private _appendCaptchaTokenToURL;
|
|
32
|
-
private _saveCaptchaToken;
|
|
33
|
-
private _findCaptchaToken;
|
|
34
|
-
}
|
|
35
|
-
export {};
|
package/dist/captcha/captcha.js
DELETED
|
@@ -1,262 +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.Captcha = void 0;
|
|
40
|
-
var oauth2client_1 = require("../oauth2client/oauth2client");
|
|
41
|
-
var GET_CAPTCHA_URL = '/auth/v1/captcha/init';
|
|
42
|
-
var Captcha = (function () {
|
|
43
|
-
function Captcha(opts) {
|
|
44
|
-
if (!opts.openURIWithCallback) {
|
|
45
|
-
opts.openURIWithCallback = this._getDefaultOpenURIWithCallback();
|
|
46
|
-
}
|
|
47
|
-
if (!opts.storage) {
|
|
48
|
-
opts.storage = oauth2client_1.defaultStorage;
|
|
49
|
-
}
|
|
50
|
-
this._config = opts;
|
|
51
|
-
this._tokenSectionName = 'captcha_' + opts.clientId;
|
|
52
|
-
}
|
|
53
|
-
Captcha.prototype.request = function (url, options) {
|
|
54
|
-
return __awaiter(this, void 0, void 0, function () {
|
|
55
|
-
var state, reqURL, err_1;
|
|
56
|
-
return __generator(this, function (_a) {
|
|
57
|
-
switch (_a.label) {
|
|
58
|
-
case 0:
|
|
59
|
-
if (!options) {
|
|
60
|
-
options = {};
|
|
61
|
-
}
|
|
62
|
-
if (!options.method) {
|
|
63
|
-
options.method = 'GET';
|
|
64
|
-
}
|
|
65
|
-
state = options.method + ":" + url;
|
|
66
|
-
reqURL = url;
|
|
67
|
-
if (!options.withCaptcha) return [3, 2];
|
|
68
|
-
return [4, this._appendCaptchaTokenToURL(url, state, false)];
|
|
69
|
-
case 1:
|
|
70
|
-
reqURL = _a.sent();
|
|
71
|
-
_a.label = 2;
|
|
72
|
-
case 2:
|
|
73
|
-
_a.trys.push([2, 3, , 7]);
|
|
74
|
-
return [2, this._config.request(reqURL, options)];
|
|
75
|
-
case 3:
|
|
76
|
-
err_1 = _a.sent();
|
|
77
|
-
if (!(err_1.error === 'captcha_required' || err_1.error === 'captcha_invalid')) return [3, 5];
|
|
78
|
-
return [4, this._appendCaptchaTokenToURL(url, state, err_1.error === 'captcha_invalid')];
|
|
79
|
-
case 4:
|
|
80
|
-
url = _a.sent();
|
|
81
|
-
return [2, this._config.request(url, options)];
|
|
82
|
-
case 5: return [2, Promise.reject(err_1)];
|
|
83
|
-
case 6: return [3, 7];
|
|
84
|
-
case 7: return [2];
|
|
85
|
-
}
|
|
86
|
-
});
|
|
87
|
-
});
|
|
88
|
-
};
|
|
89
|
-
Captcha.prototype._getDefaultOpenURIWithCallback = function () {
|
|
90
|
-
if (window.location.search.indexOf('__captcha') > 0) {
|
|
91
|
-
document.body.style.display = 'none';
|
|
92
|
-
}
|
|
93
|
-
if (document.getElementById('captcha_panel_wrap') === null) {
|
|
94
|
-
var elementDiv = document.createElement('div');
|
|
95
|
-
elementDiv.style.cssText =
|
|
96
|
-
'background-color: rgba(0, 0, 0, 0.7);position: fixed;left: 0px;right: 0px;top: 0px;bottom: 0px;padding: 9vw 0 0 0;display: none;z-index:100;';
|
|
97
|
-
elementDiv.setAttribute('id', 'captcha_panel_wrap');
|
|
98
|
-
document.body.appendChild(elementDiv);
|
|
99
|
-
}
|
|
100
|
-
return this._defaultOpenURIWithCallback;
|
|
101
|
-
};
|
|
102
|
-
Captcha.prototype._defaultOpenURIWithCallback = function (url) {
|
|
103
|
-
return __awaiter(this, void 0, void 0, function () {
|
|
104
|
-
var target, iframe;
|
|
105
|
-
return __generator(this, function (_a) {
|
|
106
|
-
target = document.getElementById('captcha_panel_wrap'), iframe = document.createElement('iframe');
|
|
107
|
-
target.innerHTML = '';
|
|
108
|
-
iframe.setAttribute('src', url);
|
|
109
|
-
iframe.setAttribute('id', 'review-panel-iframe');
|
|
110
|
-
iframe.style.cssText = 'min-width:355px;display:block;height:355px;margin:0 auto;background-color: rgb(255, 255, 255);border: none;';
|
|
111
|
-
target.appendChild(iframe);
|
|
112
|
-
target.style.display = 'block';
|
|
113
|
-
return [2, new Promise(function (resolve, reject) {
|
|
114
|
-
iframe.onload = function () {
|
|
115
|
-
try {
|
|
116
|
-
var windowLocation = window.location;
|
|
117
|
-
var iframeLocation = iframe.contentWindow.location;
|
|
118
|
-
if (iframeLocation.host +
|
|
119
|
-
iframeLocation.pathname ===
|
|
120
|
-
windowLocation.host +
|
|
121
|
-
windowLocation.pathname) {
|
|
122
|
-
target.style.display = 'none';
|
|
123
|
-
var iframeUrlParams = new URLSearchParams(iframeLocation.search);
|
|
124
|
-
var captchToken = iframeUrlParams.get('captcha_token');
|
|
125
|
-
if (captchToken) {
|
|
126
|
-
return resolve({
|
|
127
|
-
captcha_token: captchToken,
|
|
128
|
-
expires_in: Number(iframeUrlParams.get('expires_in'))
|
|
129
|
-
});
|
|
130
|
-
}
|
|
131
|
-
return reject({
|
|
132
|
-
error: iframeUrlParams.get('error'),
|
|
133
|
-
error_description: iframeUrlParams.get('error_description')
|
|
134
|
-
});
|
|
135
|
-
}
|
|
136
|
-
else {
|
|
137
|
-
target.style.display = 'block';
|
|
138
|
-
}
|
|
139
|
-
}
|
|
140
|
-
catch (error) {
|
|
141
|
-
target.style.display = 'block';
|
|
142
|
-
}
|
|
143
|
-
};
|
|
144
|
-
})];
|
|
145
|
-
});
|
|
146
|
-
});
|
|
147
|
-
};
|
|
148
|
-
Captcha.prototype._getCaptchaToken = function (forceNewToken, state) {
|
|
149
|
-
return __awaiter(this, void 0, void 0, function () {
|
|
150
|
-
var captchaToken_1, redirectURL, captchaTokenResp, captchaToken_2, captchaToken;
|
|
151
|
-
return __generator(this, function (_a) {
|
|
152
|
-
switch (_a.label) {
|
|
153
|
-
case 0:
|
|
154
|
-
if (!!forceNewToken) return [3, 2];
|
|
155
|
-
return [4, this._findCaptchaToken()];
|
|
156
|
-
case 1:
|
|
157
|
-
captchaToken_1 = _a.sent();
|
|
158
|
-
if (captchaToken_1) {
|
|
159
|
-
return [2, captchaToken_1];
|
|
160
|
-
}
|
|
161
|
-
_a.label = 2;
|
|
162
|
-
case 2:
|
|
163
|
-
redirectURL = window.location.origin + window.location.pathname + "?__captcha=on";
|
|
164
|
-
return [4, this._config.request(GET_CAPTCHA_URL, {
|
|
165
|
-
method: 'POST',
|
|
166
|
-
body: {
|
|
167
|
-
client_id: this._config.clientId,
|
|
168
|
-
redirect_uri: redirectURL,
|
|
169
|
-
state: state
|
|
170
|
-
},
|
|
171
|
-
withCredentials: false,
|
|
172
|
-
})];
|
|
173
|
-
case 3:
|
|
174
|
-
captchaTokenResp = _a.sent();
|
|
175
|
-
if (captchaTokenResp.captcha_token) {
|
|
176
|
-
captchaToken_2 = {
|
|
177
|
-
captcha_token: captchaTokenResp.captcha_token,
|
|
178
|
-
expires_in: captchaTokenResp.expires_in,
|
|
179
|
-
};
|
|
180
|
-
this._saveCaptchaToken(captchaToken_2);
|
|
181
|
-
return [2, captchaTokenResp.captcha_token];
|
|
182
|
-
}
|
|
183
|
-
return [4, this._config.openURIWithCallback(captchaTokenResp.url)];
|
|
184
|
-
case 4:
|
|
185
|
-
captchaToken = _a.sent();
|
|
186
|
-
this._saveCaptchaToken(captchaToken);
|
|
187
|
-
return [2, captchaToken.captcha_token];
|
|
188
|
-
}
|
|
189
|
-
});
|
|
190
|
-
});
|
|
191
|
-
};
|
|
192
|
-
Captcha.prototype._appendCaptchaTokenToURL = function (url, state, forceNewToken) {
|
|
193
|
-
return __awaiter(this, void 0, void 0, function () {
|
|
194
|
-
var captchaToken;
|
|
195
|
-
return __generator(this, function (_a) {
|
|
196
|
-
switch (_a.label) {
|
|
197
|
-
case 0: return [4, this._getCaptchaToken(forceNewToken, state)];
|
|
198
|
-
case 1:
|
|
199
|
-
captchaToken = _a.sent();
|
|
200
|
-
if (url.indexOf("?") > 0) {
|
|
201
|
-
url += "&captcha_token=" + captchaToken;
|
|
202
|
-
}
|
|
203
|
-
else {
|
|
204
|
-
url += "?captcha_token=" + captchaToken;
|
|
205
|
-
}
|
|
206
|
-
return [2, url];
|
|
207
|
-
}
|
|
208
|
-
});
|
|
209
|
-
});
|
|
210
|
-
};
|
|
211
|
-
Captcha.prototype._saveCaptchaToken = function (token) {
|
|
212
|
-
return __awaiter(this, void 0, void 0, function () {
|
|
213
|
-
var tokenStr;
|
|
214
|
-
return __generator(this, function (_a) {
|
|
215
|
-
switch (_a.label) {
|
|
216
|
-
case 0:
|
|
217
|
-
token.expires_at = new Date(Date.now() + (token.expires_in - 10) * 1000);
|
|
218
|
-
tokenStr = JSON.stringify(token);
|
|
219
|
-
return [4, this._config.storage.setItem(this._tokenSectionName, tokenStr)];
|
|
220
|
-
case 1:
|
|
221
|
-
_a.sent();
|
|
222
|
-
return [2];
|
|
223
|
-
}
|
|
224
|
-
});
|
|
225
|
-
});
|
|
226
|
-
};
|
|
227
|
-
Captcha.prototype._findCaptchaToken = function () {
|
|
228
|
-
return __awaiter(this, void 0, void 0, function () {
|
|
229
|
-
var tokenStr, captchaToken, isExpired, error_1;
|
|
230
|
-
return __generator(this, function (_a) {
|
|
231
|
-
switch (_a.label) {
|
|
232
|
-
case 0: return [4, this._config.storage.getItem(this._tokenSectionName)];
|
|
233
|
-
case 1:
|
|
234
|
-
tokenStr = _a.sent();
|
|
235
|
-
if (!(tokenStr !== undefined && tokenStr !== null)) return [3, 5];
|
|
236
|
-
_a.label = 2;
|
|
237
|
-
case 2:
|
|
238
|
-
_a.trys.push([2, 3, , 5]);
|
|
239
|
-
captchaToken = JSON.parse(tokenStr);
|
|
240
|
-
if (captchaToken && captchaToken.expires_at) {
|
|
241
|
-
captchaToken.expires_at = new Date(captchaToken.expires_at);
|
|
242
|
-
}
|
|
243
|
-
isExpired = captchaToken.expires_at < new Date();
|
|
244
|
-
if (isExpired) {
|
|
245
|
-
return [2, null];
|
|
246
|
-
}
|
|
247
|
-
return [2, captchaToken.captcha_token];
|
|
248
|
-
case 3:
|
|
249
|
-
error_1 = _a.sent();
|
|
250
|
-
return [4, this._config.storage.removeItem(this._tokenSectionName)];
|
|
251
|
-
case 4:
|
|
252
|
-
_a.sent();
|
|
253
|
-
return [2, null];
|
|
254
|
-
case 5: return [2, null];
|
|
255
|
-
}
|
|
256
|
-
});
|
|
257
|
-
});
|
|
258
|
-
};
|
|
259
|
-
return Captcha;
|
|
260
|
-
}());
|
|
261
|
-
exports.Captcha = Captcha;
|
|
262
|
-
//# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoiY2FwdGNoYS5qcyIsInNvdXJjZVJvb3QiOiIiLCJzb3VyY2VzIjpbIi4uLy4uL3NyYy9jYXB0Y2hhL2NhcHRjaGEudHMiXSwibmFtZXMiOltdLCJtYXBwaW5ncyI6Ijs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7O0FBRUEsNkRBQTREO0FBNEI1RCxJQUFNLGVBQWUsR0FBRyx1QkFBdUIsQ0FBQTtBQUUvQztJQVFJLGlCQUFZLElBQW9CO1FBQzVCLElBQUksQ0FBQyxJQUFJLENBQUMsbUJBQW1CLEVBQUU7WUFDM0IsSUFBSSxDQUFDLG1CQUFtQixHQUFHLElBQUksQ0FBQyw4QkFBOEIsRUFBRSxDQUFBO1NBQ25FO1FBQ0QsSUFBSSxDQUFDLElBQUksQ0FBQyxPQUFPLEVBQUU7WUFDZixJQUFJLENBQUMsT0FBTyxHQUFHLDZCQUFjLENBQUE7U0FDaEM7UUFDRCxJQUFJLENBQUMsT0FBTyxHQUFHLElBQUksQ0FBQTtRQUNuQixJQUFJLENBQUMsaUJBQWlCLEdBQUcsVUFBVSxHQUFHLElBQUksQ0FBQyxRQUFRLENBQUE7SUFDdkQsQ0FBQztJQU9ZLHlCQUFPLEdBQXBCLFVBQ0ksR0FBVyxFQUNYLE9BQStCOzs7Ozs7d0JBRS9CLElBQUksQ0FBQyxPQUFPLEVBQUU7NEJBQ1YsT0FBTyxHQUFHLEVBQUUsQ0FBQzt5QkFDaEI7d0JBQ0QsSUFBSSxDQUFDLE9BQU8sQ0FBQyxNQUFNLEVBQUU7NEJBQ2pCLE9BQU8sQ0FBQyxNQUFNLEdBQUcsS0FBSyxDQUFBO3lCQUN6Qjt3QkFDSyxLQUFLLEdBQUcsT0FBTyxDQUFDLE1BQU0sR0FBRyxHQUFHLEdBQUcsR0FBRyxDQUFBO3dCQUNwQyxNQUFNLEdBQUcsR0FBRyxDQUFDOzZCQUNiLE9BQU8sQ0FBQyxXQUFXLEVBQW5CLGNBQW1CO3dCQUNWLFdBQU0sSUFBSSxDQUFDLHdCQUF3QixDQUFDLEdBQUcsRUFBRSxLQUFLLEVBQUUsS0FBSyxDQUFDLEVBQUE7O3dCQUEvRCxNQUFNLEdBQUcsU0FBc0QsQ0FBQzs7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dGlvbn0gZnJvbSAnLi4vb2F1dGgyY2xpZW50L2ludGVyZmFjZSc7XG5pbXBvcnQge0F1dGhDbGllbnRSZXF1ZXN0T3B0aW9uc30gZnJvbSBcIi4uL29hdXRoMmNsaWVudC9tb2RlbHNcIjtcbmltcG9ydCB7ZGVmYXVsdFN0b3JhZ2V9IGZyb20gXCIuLi9vYXV0aDJjbGllbnQvb2F1dGgyY2xpZW50XCI7XG5cbmV4cG9ydCBpbnRlcmZhY2UgQ2FwdGNoYU9wdGlvbnMge1xuICAgIGNsaWVudElkOiBzdHJpbmdcbiAgICByZXF1ZXN0OiBSZXF1ZXN0RnVuY3Rpb247XG4gICAgc3RvcmFnZTogU2ltcGxlU3RvcmFnZTtcbiAgICAvLyDmiZPlvIDnvZHpobXlubbpgJrov4dVUkzlm57osIPojrflj5YgQ2FwdGNoYVRva2Vu77yM6ZKI5a+55LiN6YCa55qE5bmz5Y+w77yM6K+l5Ye95pWw5Y+v5Lul6Ieq5a6a5LmJ5a6e546wLCDpu5jorqTpm4bmiJDmtY/op4jlmajnq6/orqTor4FcbiAgICBvcGVuVVJJV2l0aENhbGxiYWNrPzogT3BlblVSSVdpdGhDYWxsYmFja0Z1Y3Rpb247XG59XG5cbnR5cGUgT3BlblVSSVdpdGhDYWxsYmFja0Z1Y3Rpb24gPSAodXJsOiBzdHJpbmcpID0+IFByb21pc2U8Q2FwdGNoYVRva2VuPjtcblxuZXhwb3J0IGludGVyZmFjZSBDYXB0Y2hhVG9rZW4ge1xuICAgIGNhcHRjaGFfdG9rZW46IHN0cmluZ1xuICAgIGV4cGlyZXNfaW46IG51bWJlclxuICAgIGV4cGlyZXNfYXQ/OiBEYXRlIHwgbnVsbDtcbn1cblxuZXhwb3J0IGludGVyZmFjZSBDYXB0Y2hhUmVxdWVzdE9wdGlvbnMgZXh0ZW5kcyBBdXRoQ2xpZW50UmVxdWVzdE9wdGlvbnMge1xuICAgIHdpdGhDYXB0Y2hhPzogYm9vbGVhbjtcbn1cblxuZXhwb3J0IGludGVyZmFjZSBHZXRDYXB0Y2hhUmVzcG9uc2Uge1xuICAgIGNhcHRjaGFfdG9rZW4/OiBzdHJpbmdcbiAgICBleHBpcmVzX2luPzogbnVtYmVyXG4gICAgdXJsPzogc3RyaW5nXG59XG5cbmNvbnN0IEdFVF9DQVBUQ0hBX1VSTCA9ICcvYXV0aC92MS9jYXB0Y2hhL2luaXQnXG5cbmV4cG9ydCBjbGFzcyBDYXB0Y2hhIHtcbiAgICBwcml2YXRlIF9jb25maWc6IENhcHRjaGFPcHRpb25zO1xuICAgIHByaXZhdGUgX3Rva2VuU2VjdGlvbk5hbWU6IHN0cmluZztcblxuICAgIC8qKlxuICAgICAqIGNvbnN0cnVjdG9yXG4gICAgICogQHBhcmFtIHtDYXB0Y2hhT3B0aW9uc30gb3B0c1xuICAgICAqL1xuICAgIGNvbnN0cnVjdG9yKG9wdHM6IENhcHRjaGFPcHRpb25zKSB7XG4gICAgICAgIGlmICghb3B0cy5vcGVuVVJJV2l0aENhbGxiYWNrKSB7XG4gICAgICAgICAgICBvcHRzLm9wZW5VUklXaXRoQ2FsbGJhY2sgPSB0aGlzLl9nZXREZWZhdWx0T3BlblVSSVdpdGhDYWxsYmFjaygpXG4gICAgICAgIH1cbiAgICAgICAgaWYgKCFvcHRzLnN0b3JhZ2UpIHtcbiAgICAgICAgICAgIG9wdHMuc3RvcmFnZSA9IGRlZmF1bHRTdG9yYWdlXG4gICAgICAgIH1cbiAgICAgICAgdGhpcy5fY29uZmlnID0gb3B0c1xuICAgICAgICB0aGlzLl90b2tlblNlY3Rpb25OYW1lID0gJ2NhcHRjaGFfJyArIG9wdHMuY2xpZW50SWRcbiAgICB9XG5cbiAgICAvKipcbiAgICAgKiByZXF1ZXN0IGh0dHAgbGlrZSBzaW1wbGUgZmV0Y2ggYXBpLCBleHA6cmVxdWVzdCgnL3YxL3VzZXIvbWUnLCB7d2l0aENyZWRlbnRpYWxzOnRydWV9KVxuICAgICAqIEBwYXJhbSB7c3RyaW5nfSB1cmxcbiAgICAgKiBAcGFyYW0ge0F1dGhDbGllbnRSZXF1ZXN0T3B0aW9uc30gb3B0aW9uc1xuICAgICAqL1xuICAgIHB1YmxpYyBhc3luYyByZXF1ZXN0PFQ+KFxuICAgICAgICB1cmw6IHN0cmluZyxcbiAgICAgICAgb3B0aW9ucz86IENhcHRjaGFSZXF1ZXN0T3B0aW9ucyxcbiAgICApOiBQcm9taXNlPFQ+IHtcbiAgICAgICAgaWYgKCFvcHRpb25zKSB7XG4gICAgICAgICAgICBvcHRpb25zID0ge307XG4gICAgICAgIH1cbiAgICAgICAgaWYgKCFvcHRpb25zLm1ldGhvZCkge1xuICAgICAgICAgICAgb3B0aW9ucy5tZXRob2QgPSAnR0VUJ1xuICAgICAgICB9XG4gICAgICAgIGNvbnN0IHN0YXRlID0gb3B0aW9ucy5tZXRob2QgKyBcIjpcIiArIHVybFxuICAgICAgICBsZXQgcmVxVVJMID0gdXJsO1xuICAgICAgICBpZiAob3B0aW9ucy53aXRoQ2FwdGNoYSkge1xuICAgICAgICAgICAgcmVxVVJMID0gYXdhaXQgdGhpcy5fYXBwZW5kQ2FwdGNoYVRva2VuVG9VUkwodXJsLCBzdGF0ZSwgZmFsc2UpO1xuICAgICAgICB9XG4gICAgICAgIHRyeSB7XG4gICAgICAgICAgICByZXR1cm4gdGhpcy5fY29uZmlnLnJlcXVlc3Q8VD4ocmVxVVJMLCBvcHRpb25zKVxuICAgICAgICB9IGNhdGNoIChlcnIpIHtcbiAgICAgICAgICAgIGlmIChlcnIuZXJyb3IgPT09ICdjYXB0Y2hhX3JlcXVpcmVkJyB8fCBlcnIuZXJyb3IgPT09ICdjYXB0Y2hhX2ludmFsaWQnKSB7XG4gICAgICAgICAgICAgICAgdXJsID0gYXdhaXQgdGhpcy5fYXBwZW5kQ2FwdGNoYVRva2VuVG9VUkwodXJsLCBzdGF0ZSwgZXJyLmVycm9yID09PSAnY2FwdGNoYV9pbnZhbGlkJylcbiAgICAgICAgICAgICAgICByZXR1cm4gdGhpcy5fY29uZmlnLnJlcXVlc3Q8VD4odXJsLCBvcHRpb25zKVxuICAgICAgICAgICAgfSBlbHNlIHtcbiAgICAgICAgICAgICAgICByZXR1cm4gUHJvbWlzZS5yZWplY3QoZXJyKVxuICAgICAgICAgICAgfVxuICAgICAgICB9XG4gICAgfVxuXG4gICAgcHJpdmF0ZSBfZ2V0RGVmYXVsdE9wZW5VUklXaXRoQ2FsbGJhY2soKTogT3BlblVSSVdpdGhDYWxsYmFja0Z1Y3Rpb24ge1xuICAgICAgICBpZiAod2luZG93LmxvY2F0aW9uLnNlYXJjaC5pbmRleE9mKCdfX2NhcHRjaGEnKSA+IDApIHtcbiAgICAgICAgICAgIGRvY3VtZW50LmJvZHkuc3R5bGUuZGlzcGxheSA9ICdub25lJztcbiAgICAgICAgfVxuICAgICAgICBpZiAoZG9jdW1lbnQuZ2V0RWxlbWVudEJ5SWQoJ2NhcHRjaGFfcGFuZWxfd3JhcCcpID09PSBudWxsKSB7XG4gICAgICAgICAgICB2YXIgZWxlbWVudERpdiA9IGRvY3VtZW50LmNyZWF0ZUVsZW1lbnQoJ2RpdicpO1xuICAgICAgICAgICAgZWxlbWVudERpdi5zdHlsZS5jc3NUZXh0ID1cbiAgICAgICAgICAgICAgICAnYmFja2dyb3VuZC1jb2xvcjogcmdiYSgwLCAwLCAwLCAwLjcpO3Bvc2l0aW9uOiBmaXhlZDtsZWZ0OiAwcHg7cmlnaHQ6IDBweDt0b3A6IDBweDtib3R0b206IDBweDtwYWRkaW5nOiA5dncgMCAwIDA7ZGlzcGxheTogbm9uZTt6LWluZGV4OjEwMDsnO1xuICAgICAgICAgICAgZWxlbWVudERpdi5zZXRBdHRyaWJ1dGUoJ2lkJywgJ2NhcHRjaGFfcGFuZWxfd3JhcCcpO1xuICAgICAgICAgICAgZG9jdW1lbnQuYm9keS5hcHBlbmRDaGlsZChlbGVtZW50RGl2KTtcbiAgICAgICAgfVxuICAgICAgICByZXR1cm4gdGhpcy5fZGVmYXVsdE9wZW5VUklXaXRoQ2FsbGJhY2tcbiAgICB9XG5cbiAgICAvKipcbiAgICAgKiDpu5jorqTpgJrov4fmtY/op4jlmajmiZPlvIDnvZHpobXlubbojrflj5blm57osINcbiAgICAgKi9cbiAgICBwcml2YXRlIGFzeW5jIF9kZWZhdWx0T3BlblVSSVdpdGhDYWxsYmFjayh1cmw6IHN0cmluZyk6IFByb21pc2U8Q2FwdGNoYVRva2VuPiB7XG4gICAgICAgIGNvbnN0IHRhcmdldCA9IGRvY3VtZW50LmdldEVsZW1lbnRCeUlkKCdjYXB0Y2hhX3BhbmVsX3dyYXAnKSxcbiAgICAgICAgICAgIGlmcmFtZSA9IGRvY3VtZW50LmNyZWF0ZUVsZW1lbnQoJ2lmcmFtZScpXG4gICAgICAgIHRhcmdldC5pbm5lckhUTUwgPSAnJztcbiAgICAgICAgaWZyYW1lLnNldEF0dHJpYnV0ZSgnc3JjJywgdXJsKVxuICAgICAgICBpZnJhbWUuc2V0QXR0cmlidXRlKCdpZCcsICdyZXZpZXctcGFuZWwtaWZyYW1lJylcbiAgICAgICAgaWZyYW1lLnN0eWxlLmNzc1RleHQgPSAnbWluLXdpZHRoOjM1NXB4O2Rpc3BsYXk6YmxvY2s7aGVpZ2h0OjM1NXB4O21hcmdpbjowIGF1dG87YmFja2dyb3VuZC1jb2xvcjogcmdiKDI1NSwgMjU1LCAyNTUpO2JvcmRlcjogbm9uZTsnO1xuICAgICAgICB0YXJnZXQuYXBwZW5kQ2hpbGQoaWZyYW1lKTtcbiAgICAgICAgdGFyZ2V0LnN0eWxlLmRpc3BsYXkgPSAnYmxvY2snO1xuICAgICAgICByZXR1cm4gbmV3IFByb21pc2U8Q2FwdGNoYVRva2VuPigocmVzb2x2ZSwgcmVqZWN0KSA9PiB7XG4gICAgICAgICAgICBpZnJhbWUub25sb2FkID0gZnVuY3Rpb24gKCkge1xuICAgICAgICAgICAgICAgIHRyeSB7XG4gICAgICAgICAgICAgICAgICAgIHZhciB3aW5kb3dMb2NhdGlvbiA9IHdpbmRvdy5sb2NhdGlvbjtcbiAgICAgICAgICAgICAgICAgICAgdmFyIGlmcmFtZUxvY2F0aW9uID0gaWZyYW1lLmNvbnRlbnRXaW5kb3cubG9jYXRpb247XG4gICAgICAgICAgICAgICAgICAgIGlmIChcbiAgICAgICAgICAgICAgICAgICAgICAgIGlmcmFtZUxvY2F0aW9uLmhvc3QgK1xuICAgICAgICAgICAgICAgICAgICAgICAgaWZyYW1lTG9jYXRpb24ucGF0aG5hbWUgPT09XG4gICAgICAgICAgICAgICAgICAgICAgICB3aW5kb3dMb2NhdGlvbi5ob3N0ICtcbiAgICAgICAgICAgICAgICAgICAgICAgIHdpbmRvd0xvY2F0aW9uLnBhdGhuYW1lXG4gICAgICAgICAgICAgICAgICAgICkge1xuICAgICAgICAgICAgICAgICAgICAgICAgdGFyZ2V0LnN0eWxlLmRpc3BsYXkgPSAnbm9uZSc7XG4gICAgICAgICAgICAgICAgICAgICAgICBjb25zdCBpZnJhbWVVcmxQYXJhbXMgPSBuZXcgVVJMU2VhcmNoUGFyYW1zKGlmcmFtZUxvY2F0aW9uLnNlYXJjaCk7XG4gICAgICAgICAgICAgICAgICAgICAgICBjb25zdCBjYXB0Y2hUb2tlbiA9IGlmcmFtZVVybFBhcmFtcy5nZXQoJ2NhcHRjaGFfdG9rZW4nKTtcbiAgICAgICAgICAgICAgICAgICAgICAgIGlmIChjYXB0Y2hUb2tlbikge1xuICAgICAgICAgICAgICAgICAgICAgICAgICAgIHJldHVybiByZXNvbHZlKHtcbiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgY2FwdGNoYV90b2tlbjogY2FwdGNoVG9rZW4sXG4gICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIGV4cGlyZXNfaW46IE51bWJlcihpZnJhbWVVcmxQYXJhbXMuZ2V0KCdleHBpcmVzX2luJykpXG4gICAgICAgICAgICAgICAgICAgICAgICAgICAgfSlcbiAgICAgICAgICAgICAgICAgICAgICAgIH1cbiAgICAgICAgICAgICAgICAgICAgICAgIHJldHVybiByZWplY3Qoe1xuICAgICAgICAgICAgICAgICAgICAgICAgICAgIGVycm9yOiBpZnJhbWVVcmxQYXJhbXMuZ2V0KCdlcnJvcicpLFxuICAgICAgICAgICAgICAgICAgICAgICAgICAgIGVycm9yX2Rlc2NyaXB0aW9uOiBpZnJhbWVVcmxQYXJhbXMuZ2V0KCdlcnJvcl9kZXNjcmlwdGlvbicpXG4gICAgICAgICAgICAgICAgICAgICAgICB9KVxuICAgICAgICAgICAgICAgICAgICB9IGVsc2Uge1xuICAgICAgICAgICAgICAgICAgICAgICAgdGFyZ2V0LnN0eWxlLmRpc3BsYXkgPSAnYmxvY2snO1xuICAgICAgICAgICAgICAgICAgICB9XG4gICAgICAgICAgICAgICAgfSBjYXRjaCAoZXJyb3IpIHtcbiAgICAgICAgICAgICAgICAgICAgdGFyZ2V0LnN0eWxlLmRpc3BsYXkgPSAnYmxvY2snO1xuICAgICAgICAgICAgICAgIH1cbiAgICAgICAgICAgIH07XG4gICAgICAgIH0pXG4gICAgfVxuICAgIC8qKlxuICAgICAqIF9nZXRDYXB0Y2hhVG9rZW4g6I635Y+WY2FwdGNoYVRva2VuXG4gICAgICovXG4gICAgcHJpdmF0ZSBhc3luYyBfZ2V0Q2FwdGNoYVRva2VuKGZvcmNlTmV3VG9rZW46IGJvb2xlYW4sIHN0YXRlOiBzdHJpbmcpOiBQcm9taXNlPHN0cmluZz4ge1xuICAgICAgICBpZiAoIWZvcmNlTmV3VG9rZW4pIHtcbiAgICAgICAgICAgIC8vIOWmguaenOacrOWcsOWtmOWcqO+8jOWImeebtOaOpei/lOWbnlxuICAgICAgICAgICAgY29uc3QgY2FwdGNoYVRva2VuID0gYXdhaXQgdGhpcy5fZmluZENhcHRjaGFUb2tlbigpXG4gICAgICAgICAgICBpZiAoY2FwdGNoYVRva2VuKSB7XG4gICAgICAgICAgICAgICAgcmV0dXJuIGNhcHRjaGFUb2tlblxuICAgICAgICAgICAgfVxuICAgICAgICB9XG4gICAgICAgIGNvbnN0IHJlZGlyZWN0VVJMID0gd2luZG93LmxvY2F0aW9uLm9yaWdpbiArIHdpbmRvdy5sb2NhdGlvbi5wYXRobmFtZSArIFwiP19fY2FwdGNoYT1vblwiXG4gICAgICAgIGNvbnN0IGNhcHRjaGFUb2tlblJlc3AgPSBhd2FpdCB0aGlzLl9jb25maWcucmVxdWVzdDxHZXRDYXB0Y2hhUmVzcG9uc2U+KEdFVF9DQVBUQ0hBX1VSTCwge1xuICAgICAgICAgICAgbWV0aG9kOiAnUE9TVCcsXG4gICAgICAgICAgICBib2R5OiB7XG4gICAgICAgICAgICAgICAgY2xpZW50X2lkOiB0aGlzLl9jb25maWcuY2xpZW50SWQsXG4gICAgICAgICAgICAgICAgcmVkaXJlY3RfdXJpOiByZWRpcmVjdFVSTCxcbiAgICAgICAgICAgICAgICBzdGF0ZTogc3RhdGVcbiAgICAgICAgICAgIH0sXG4gICAgICAgICAgICB3aXRoQ3JlZGVudGlhbHM6IGZhbHNlLFxuICAgICAgICB9KVxuICAgICAgICBpZiAoY2FwdGNoYVRva2VuUmVzcC5jYXB0Y2hhX3Rva2VuKSB7XG4gICAgICAgICAgICBjb25zdCBjYXB0Y2hhVG9rZW4gPSB7XG4gICAgICAgICAgICAgICAgY2FwdGNoYV90b2tlbjogY2FwdGNoYVRva2VuUmVzcC5jYXB0Y2hhX3Rva2VuLFxuICAgICAgICAgICAgICAgIGV4cGlyZXNfaW46IGNhcHRjaGFUb2tlblJlc3AuZXhwaXJlc19pbixcbiAgICAgICAgICAgIH1cbiAgICAgICAgICAgIHRoaXMuX3NhdmVDYXB0Y2hhVG9rZW4oY2FwdGNoYVRva2VuKVxuICAgICAgICAgICAgcmV0dXJuIGNhcHRjaGFUb2tlblJlc3AuY2FwdGNoYV90b2tlblxuICAgICAgICB9XG4gICAgICAgIGNvbnN0IGNhcHRjaGFUb2tlbiA9IGF3YWl0IHRoaXMuX2NvbmZpZy5vcGVuVVJJV2l0aENhbGxiYWNrKGNhcHRjaGFUb2tlblJlc3AudXJsKVxuICAgICAgICB0aGlzLl9zYXZlQ2FwdGNoYVRva2VuKGNhcHRjaGFUb2tlbilcbiAgICAgICAgcmV0dXJuIGNhcHRjaGFUb2tlbi5jYXB0Y2hhX3Rva2VuXG4gICAgfVxuXG4gICAgcHJpdmF0ZSBhc3luYyBfYXBwZW5kQ2FwdGNoYVRva2VuVG9VUkwodXJsOiBzdHJpbmcsIHN0YXRlOiBzdHJpbmcsIGZvcmNlTmV3VG9rZW46IGJvb2xlYW4pOiBQcm9taXNlPHN0cmluZz4ge1xuICAgICAgICBjb25zdCBjYXB0Y2hhVG9rZW4gPSBhd2FpdCB0aGlzLl9nZXRDYXB0Y2hhVG9rZW4oZm9yY2VOZXdUb2tlbiwgc3RhdGUpO1xuICAgICAgICBpZiAodXJsLmluZGV4T2YoXCI/XCIpID4gMCkge1xuICAgICAgICAgICAgdXJsICs9IFwiJmNhcHRjaGFfdG9rZW49XCIgKyBjYXB0Y2hhVG9rZW5cbiAgICAgICAgfSBlbHNlIHtcbiAgICAgICAgICAgIHVybCArPSBcIj9jYXB0Y2hhX3Rva2VuPVwiICsgY2FwdGNoYVRva2VuXG4gICAgICAgIH1cbiAgICAgICAgcmV0dXJuIHVybFxuICAgIH1cblxuICAgIHByaXZhdGUgYXN5bmMgX3NhdmVDYXB0Y2hhVG9rZW4odG9rZW46IENhcHRjaGFUb2tlbikge1xuICAgICAgICB0b2tlbi5leHBpcmVzX2F0ID0gbmV3IERhdGUoXG4gICAgICAgICAgICBEYXRlLm5vdygpICsgKHRva2VuLmV4cGlyZXNfaW4gLSAxMCkgKiAxMDAwLFxuICAgICAgICApO1xuICAgICAgICBjb25zdCB0b2tlblN0cjogc3RyaW5nID0gSlNPTi5zdHJpbmdpZnkodG9rZW4pO1xuICAgICAgICBhd2FpdCB0aGlzLl9jb25maWcuc3RvcmFnZS5zZXRJdGVtKHRoaXMuX3Rva2VuU2VjdGlvbk5hbWUsIHRva2VuU3RyKTtcbiAgICB9XG5cbiAgICBwcml2YXRlIGFzeW5jIF9maW5kQ2FwdGNoYVRva2VuKCk6IFByb21pc2U8c3RyaW5nPiB7XG4gICAgICAgIGNvbnN0IHRva2VuU3RyOiBzdHJpbmcgPSBhd2FpdCB0aGlzLl9jb25maWcuc3RvcmFnZS5nZXRJdGVtKFxuICAgICAgICAgICAgdGhpcy5fdG9rZW5TZWN0aW9uTmFtZSxcbiAgICAgICAgKTtcbiAgICAgICAgaWYgKHRva2VuU3RyICE9PSB1bmRlZmluZWQgJiYgdG9rZW5TdHIgIT09IG51bGwpIHtcbiAgICAgICAgICAgIHRyeSB7XG4gICAgICAgICAgICAgICAgY29uc3QgY2FwdGNoYVRva2VuID0gSlNPTi5wYXJzZSh0b2tlblN0cik7XG4gICAgICAgICAgICAgICAgaWYgKGNhcHRjaGFUb2tlbiAmJiBjYXB0Y2hhVG9rZW4uZXhwaXJlc19hdCkge1xuICAgICAgICAgICAgICAgICAgICBjYXB0Y2hhVG9rZW4uZXhwaXJlc19hdCA9IG5ldyBEYXRlKGNhcHRjaGFUb2tlbi5leHBpcmVzX2F0KTtcbiAgICAgICAgICAgICAgICB9XG4gICAgICAgICAgICAgICAgY29uc3QgaXNFeHBpcmVkID0gY2FwdGNoYVRva2VuLmV4cGlyZXNfYXQgPCBuZXcgRGF0ZSgpO1xuICAgICAgICAgICAgICAgIGlmIChpc0V4cGlyZWQpIHtcbiAgICAgICAgICAgICAgICAgICAgcmV0dXJuIG51bGxcbiAgICAgICAgICAgICAgICB9XG4gICAgICAgICAgICAgICAgcmV0dXJuIGNhcHRjaGFUb2tlbi5jYXB0Y2hhX3Rva2VuXG4gICAgICAgICAgICB9IGNhdGNoIChlcnJvcikge1xuICAgICAgICAgICAgICAgIGF3YWl0IHRoaXMuX2NvbmZpZy5zdG9yYWdlLnJlbW92ZUl0ZW0odGhpcy5fdG9rZW5TZWN0aW9uTmFtZSk7XG4gICAgICAgICAgICAgICAgcmV0dXJuIG51bGxcbiAgICAgICAgICAgIH1cbiAgICAgICAgfVxuICAgICAgICByZXR1cm4gbnVsbFxuICAgIH1cbn0iXX0=
|
package/dist/index.d.ts
DELETED
|
@@ -1,9 +0,0 @@
|
|
|
1
|
-
import { ICloudbase } from '@cloudbase/types';
|
|
2
|
-
export { Syntax, ErrorType } from './oauth2client/consts';
|
|
3
|
-
export { defaultStorage, defaultRequest, ToResponseErrorOptions, toResponseError, generateRequestId, OAuth2Client, } from './oauth2client/oauth2client';
|
|
4
|
-
export { AuthClient, SimpleStorage } from './oauth2client/interface';
|
|
5
|
-
export { Credentials, ResponseError, OAuth2ClientOptions, AuthClientRequestOptions, } from './oauth2client/models';
|
|
6
|
-
export { AuthOptions, Auth } from './auth/apis';
|
|
7
|
-
import * as authModels from './auth/models';
|
|
8
|
-
export { authModels };
|
|
9
|
-
export declare function registerOAuth(app: Pick<ICloudbase, 'registerComponent'>): void;
|