chatbot-nc 2.2.34 → 2.2.36
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/utils/index.d.ts +7 -2
- package/dist/cjs/utils/mcp-oauth.js +14 -14
- package/dist/cjs/utils/mcp-oauth.js.map +1 -1
- package/dist/cjs/utils/oauth.d.ts +7 -2
- package/dist/cjs/utils/oauth.js +60 -25
- package/dist/cjs/utils/oauth.js.map +1 -1
- package/dist/esm/utils/index.d.ts +7 -2
- package/dist/esm/utils/mcp-oauth.js +14 -14
- package/dist/esm/utils/mcp-oauth.js.map +1 -1
- package/dist/esm/utils/oauth.d.ts +7 -2
- package/dist/esm/utils/oauth.js +60 -27
- package/dist/esm/utils/oauth.js.map +1 -1
- package/package.json +1 -1
|
@@ -49,8 +49,13 @@ export declare const Utils: {
|
|
|
49
49
|
jwt: typeof jwt;
|
|
50
50
|
OAuth: {
|
|
51
51
|
discoverOAuthOpenIdMetadata: (providerUrl: string) => Promise<import("../type").OAuthMetadata>;
|
|
52
|
-
|
|
53
|
-
|
|
52
|
+
generatePKCE: (supportedMethods?: string[], code_verifier?: string) => {
|
|
53
|
+
code_verifier: string;
|
|
54
|
+
code_challenge: string | null;
|
|
55
|
+
code_challenge_method: "S256" | "plain" | null;
|
|
56
|
+
};
|
|
57
|
+
GetOAuthAccessToken: (code: string, providerInfo: Record<import("../type").OAuthKeys, string>, code_verfier: string) => Promise<any>;
|
|
58
|
+
GetOAuthToken: (authValue: string) => Promise<any>;
|
|
54
59
|
GetOAuthRefreshToken: (providerInfo: Record<import("../type").OAuthKeys, string>) => Promise<any>;
|
|
55
60
|
SetTokenExpiry: (expiresIn?: number) => Promise<string>;
|
|
56
61
|
};
|
|
@@ -145,7 +145,7 @@ const parseCallback = (url) => {
|
|
|
145
145
|
// return tokenInfo;
|
|
146
146
|
// }
|
|
147
147
|
const GetOAuthMCPAccessToken = async (code, redirect_uri, metaData, clientCredentials, code_verifier) => {
|
|
148
|
-
var _a, _b, _c, _d;
|
|
148
|
+
var _a, _b, _c, _d, _e;
|
|
149
149
|
try {
|
|
150
150
|
let headers = { "Content-Type": 'application/x-www-form-urlencoded' };
|
|
151
151
|
const keys = {
|
|
@@ -153,15 +153,15 @@ const GetOAuthMCPAccessToken = async (code, redirect_uri, metaData, clientCreden
|
|
|
153
153
|
redirect_uri: redirect_uri,
|
|
154
154
|
code
|
|
155
155
|
};
|
|
156
|
-
if (
|
|
157
|
-
keys.client_id = clientCredentials.client_id
|
|
158
|
-
|
|
159
|
-
|
|
160
|
-
else if ((
|
|
156
|
+
if ((_a = metaData === null || metaData === void 0 ? void 0 : metaData.token_endpoint_auth_methods_supported) === null || _a === void 0 ? void 0 : _a.includes('none'))
|
|
157
|
+
keys.client_id = clientCredentials.client_id;
|
|
158
|
+
if (!((_b = metaData === null || metaData === void 0 ? void 0 : metaData.token_endpoint_auth_methods_supported) === null || _b === void 0 ? void 0 : _b.includes('none')) && ((_c = metaData === null || metaData === void 0 ? void 0 : metaData.token_endpoint_auth_methods_supported) === null || _c === void 0 ? void 0 : _c.includes('client_secret_post')))
|
|
159
|
+
keys.client_secret = clientCredentials.client_secret;
|
|
160
|
+
else if ((_d = metaData === null || metaData === void 0 ? void 0 : metaData.token_endpoint_auth_methods_supported) === null || _d === void 0 ? void 0 : _d.includes('client_secret_basic')) {
|
|
161
161
|
const token = Buffer.from(`${clientCredentials.client_id}:${clientCredentials.client_secret}`).toString("base64");
|
|
162
162
|
headers.Authorization = `Basic ${token}`;
|
|
163
163
|
}
|
|
164
|
-
if ((
|
|
164
|
+
if ((_e = metaData === null || metaData === void 0 ? void 0 : metaData.code_challenge_methods_supported) === null || _e === void 0 ? void 0 : _e.length)
|
|
165
165
|
keys.code_verifier = code_verifier;
|
|
166
166
|
const formData = new URLSearchParams(keys);
|
|
167
167
|
let tokenInfo = await axios_1.default.post(metaData.token_endpoint, formData, { headers }).then((res) => {
|
|
@@ -179,18 +179,18 @@ const GetOAuthMCPAccessToken = async (code, redirect_uri, metaData, clientCreden
|
|
|
179
179
|
}
|
|
180
180
|
};
|
|
181
181
|
const GetOAuthMCPRefreshToken = async (metaData, clientCredentials, refresh_token) => {
|
|
182
|
-
var _a, _b, _c;
|
|
182
|
+
var _a, _b, _c, _d;
|
|
183
183
|
try {
|
|
184
184
|
let headers = { "Content-Type": 'application/x-www-form-urlencoded' };
|
|
185
185
|
const keys = {
|
|
186
186
|
grant_type: "refresh_token",
|
|
187
|
-
refresh_token
|
|
187
|
+
refresh_token
|
|
188
188
|
};
|
|
189
|
-
if (
|
|
190
|
-
keys.client_id = clientCredentials.client_id
|
|
191
|
-
|
|
192
|
-
|
|
193
|
-
else if ((
|
|
189
|
+
if ((_a = metaData === null || metaData === void 0 ? void 0 : metaData.token_endpoint_auth_methods_supported) === null || _a === void 0 ? void 0 : _a.includes('none'))
|
|
190
|
+
keys.client_id = clientCredentials.client_id;
|
|
191
|
+
if (!((_b = metaData === null || metaData === void 0 ? void 0 : metaData.token_endpoint_auth_methods_supported) === null || _b === void 0 ? void 0 : _b.includes('none')) && ((_c = metaData === null || metaData === void 0 ? void 0 : metaData.token_endpoint_auth_methods_supported) === null || _c === void 0 ? void 0 : _c.includes('client_secret_post')))
|
|
192
|
+
keys.client_secret = clientCredentials.client_secret;
|
|
193
|
+
else if ((_d = metaData === null || metaData === void 0 ? void 0 : metaData.token_endpoint_auth_methods_supported) === null || _d === void 0 ? void 0 : _d.includes('client_secret_basic')) {
|
|
194
194
|
const token = Buffer.from(`${clientCredentials.client_id}:${clientCredentials.client_secret}`).toString("base64");
|
|
195
195
|
headers.Authorization = `Basic ${token}`;
|
|
196
196
|
}
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"mcp-oauth.js","sourceRoot":"","sources":["../../../utils/mcp-oauth.ts"],"names":[],"mappings":"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
|
|
1
|
+
{"version":3,"file":"mcp-oauth.js","sourceRoot":"","sources":["../../../utils/mcp-oauth.ts"],"names":[],"mappings":";;;;;;AAAA,kDAA0B;AAE1B,uDAA4B;AAI5B,MAAM,6BAA6B,GAAG,KAAK,EAAE,YAAoB,EAA8C,EAAE;IAChH,MAAM,GAAG,GAAG,IAAI,GAAG,CAAC,YAAY,CAAC,CAAA;IACjC,MAAM,oBAAoB,GAAG,IAAI,GAAG,CACnC,uCAAuC,EACvC,GAAG,CACH,CAAA;IAED,qDAAqD;IACrD,MAAM,yBAAyB,GAAG,MAAM,KAAK,CAC5C,oBAAoB,CAAC,QAAQ,EAAE,CAC/B,CAAA;IACD,IAAI,CAAC,yBAAyB,CAAC,EAAE,EAAE,CAAC;QACnC,MAAM,IAAI,KAAK,CACd,+CAA+C;YAC/C,GAAG,yBAAyB,CAAC,MAAM,EAAE,CACrC,CAAA;IACF,CAAC;IAED,MAAM,iBAAiB,GAAG,CAAC,MAAM,yBAAyB,CAAC,IAAI,EAAE,CAAsC,CAAA;IACvG,OAAO,iBAAiB,CAAA;AACzB,CAAC,CAAA;AAED;;GAEG;AACH,MAAM,qBAAqB,GAAG,KAAK,EAAE,YAAoB,EAA6B,EAAE;;IACvF,MAAM,iBAAiB,GAAG,CAAC,MAAM,6BAA6B,CAAC,YAAY,CAAC,CAAsC,CAAA;IAClH,MAAM,WAAW,GAAG,iBAAiB,CAAC,qBAAqB,CAAC;IAE5D,IAAI,CAAC,KAAK,CAAC,OAAO,CAAC,WAAW,CAAC,IAAI,WAAW,CAAC,MAAM,KAAK,CAAC,EAAE,CAAC;QAC7D,MAAM,IAAI,KAAK,CACd,+DAA+D,CAC/D,CAAA;IACF,CAAC;IAED,qCAAqC;IACrC,MAAM,aAAa,GAAG,WAAW,CAAC,CAAC,CAAC,CAAA;IAEpC,uDAAuD;IACvD,MAAM,WAAW,GAAG,IAAI,GAAG,CAC1B,yCAAyC,EACzC,aAAa,CACb,CAAA;IACD,MAAM,gBAAgB,GAAG,MAAM,KAAK,CAAC,WAAW,CAAC,QAAQ,EAAE,CAAC,CAAA;IAE5D,IAAI,CAAC,gBAAgB,CAAC,EAAE,EAAE,CAAC;QAC1B,MAAM,IAAI,KAAK,CACd,iDAAiD;YACjD,GAAG,gBAAgB,CAAC,MAAM,EAAE,CAC5B,CAAA;IACF,CAAC;IAED,MAAM,QAAQ,GAAG,CAAC,MAAM,gBAAgB,CAAC,IAAI,EAAE,CAAqB,CAAC;IAErE,2BAA2B;IAC3B,IAAI,CAAC,QAAQ,CAAC,sBAAsB,IAAI,CAAC,QAAQ,CAAC,cAAc,EAAE,CAAC;QAClE,MAAM,IAAI,KAAK,CAAC,8CAA8C,CAAC,CAAA;IAChE,CAAC;IAED,wCAAwC;IACxC,IAAI,CAAC,CAAA,MAAA,QAAQ,CAAC,gCAAgC,0CAAE,QAAQ,CAAC,MAAM,CAAC,CAAA,EAAE,CAAC;QAClE,OAAO,CAAC,IAAI,CACX,+CAA+C;YAC/C,2BAA2B,CAC3B,CAAA;IACF,CAAC;IAED,OAAO,QAAQ,CAAA;AAChB,CAAC,CAAA;AAED,MAAM,cAAc,GAAG,KAAK,EAAE,QAA0B,EAAE,YAAsB,EAAE,cAAsB,QAAQ,EAA8B,EAAE;;IAC/I,IAAI,CAAC,QAAQ,CAAC,qBAAqB;QAClC,MAAM,IAAI,KAAK,CAAC,qDAAqD,CAAC,CAAA;IAEvE,MAAM,mBAAmB,GAAuB;QAC/C,WAAW,EAAE,WAAW;QACxB,aAAa,EAAE,YAAY;QAC3B,WAAW,EAAE,MAAA,QAAQ,aAAR,QAAQ,uBAAR,QAAQ,CAAE,qBAAqB,mCAAI,CAAC,oBAAoB,EAAE,eAAe,CAAC;QACvF,cAAc,EAAE,MAAA,QAAQ,aAAR,QAAQ,uBAAR,QAAQ,CAAE,wBAAwB,mCAAI,CAAC,MAAM,CAAC;QAC9D,0BAA0B,EAAE,CAAA,MAAA,QAAQ,aAAR,QAAQ,uBAAR,QAAQ,CAAE,qCAAqC,0CAAE,MAAM,MAAI,MAAA,QAAQ,aAAR,QAAQ,uBAAR,QAAQ,CAAE,qCAAqC,0CAAE,QAAQ,CAAC,MAAM,CAAC,CAAA,CAAC,CAAC,CAAC,MAAM,CAAC,CAAC,CAAC,QAAQ,aAAR,QAAQ,uBAAR,QAAQ,CAAE,qCAAqC,CAAE,CAAC,CAAC;KACvN,CAAA;IAED,IAAI,MAAA,QAAQ,aAAR,QAAQ,uBAAR,QAAQ,CAAE,gBAAgB,0CAAE,MAAM;QACrC,mBAAmB,CAAC,KAAK,GAAG,QAAQ,CAAC,gBAAgB,CAAC,IAAI,CAAC,EAAE,CAAC,CAAC;IAEhE,MAAM,QAAQ,GAAG,MAAM,KAAK,CAAC,QAAQ,CAAC,qBAAqB,EAAE;QAC5D,MAAM,EAAE,MAAM;QACd,OAAO,EAAE;YACR,cAAc,EAAE,kBAAkB;YAClC,MAAM,EAAE,kBAAkB;SAC1B;QACD,IAAI,EAAE,IAAI,CAAC,SAAS,CAAC,mBAAmB,CAAC;KACzC,CAAC,CAAA;IAEF,IAAI,CAAC,QAAQ,CAAC,EAAE,EAAE,CAAC;QAClB,MAAM,SAAS,GAAG,MAAM,QAAQ,CAAC,IAAI,EAAE,CAAA;QACvC,MAAM,IAAI,KAAK,CACd,+BAA+B,QAAQ,CAAC,MAAM,MAAM,SAAS,EAAE,CAC/D,CAAA;IACF,CAAC;IACD,MAAM,WAAW,GAAG,CAAC,MAAM,QAAQ,CAAC,IAAI,EAAE,CAAsB,CAAA;IAEhE,6BAA6B;IAC7B,OAAO,WAAW,CAAA;AACnB,CAAC,CAAA;AAED,MAAM,qBAAqB,GAAG,KAAK,EAClC,QAA0B,EAC1B,QAAgB,EAChB,WAAmB,EACnB,KAAa,EACb,aAAsB,EACtB,mBAA4B,EAC5B,QAAiB,EACC,EAAE;;IACpB,IAAI,KAAK,GAAG;QACX,aAAa,EAAE,MAAM;QACrB,SAAS,EAAE,QAAQ;QACnB,YAAY,EAAE,WAAW;QACzB,KAAK,EAAE,KAAK;QACZ,MAAM,EAAE,SAAS;QACjB,aAAa,EAAE,OAAO;KACC,CAAA;IACxB,IAAI,MAAA,QAAQ,aAAR,QAAQ,uBAAR,QAAQ,CAAE,gBAAgB,0CAAE,MAAM;QACrC,KAAK,CAAC,KAAK,GAAG,QAAQ,aAAR,QAAQ,uBAAR,QAAQ,CAAE,gBAAgB,CAAC,IAAI,CAAC,GAAG,CAAC,CAAA;IACnD,IAAI,mBAAmB;QACtB,KAAK,CAAC,cAAc,GAAG,aAAa,CAAC;IACtC,IAAI,mBAAmB;QACtB,KAAK,CAAC,qBAAqB,GAAG,mBAAmB,CAAC;IACnD,IAAI,QAAQ;QACX,KAAK,CAAC,QAAQ,GAAG,QAAQ,CAAC;IAC3B,MAAM,MAAM,GAAG,IAAI,eAAe,CAAC,KAAK,CAAC,CAAA;IAEzC,OAAO,GAAG,QAAQ,CAAC,sBAAsB,IAAI,MAAM,CAAC,QAAQ,EAAE,EAAE,CAAA;AACjE,CAAC,CAAA;AAED,MAAM,cAAc,GAAG,KAAK,EAAE,WAAmB,EAAE,WAAmB,EAAE,YAAoB,EAAE,EAAE;IAC/F,MAAM,MAAM,GAAG,aAAa,CAAC,WAAW,CAAC,CAAA;IAEzC,IAAI,MAAM,CAAC,KAAK,EAAE,CAAC;QAClB,MAAM,IAAI,KAAK,CACd,gBAAgB,MAAM,CAAC,KAAK,KAAK;YACjC,GAAG,MAAM,CAAC,iBAAiB,IAAI,eAAe,EAAE,CAChD,CAAA;IACF,CAAC;IAED,IAAI,MAAM,CAAC,KAAK,KAAK,WAAW,EAAE,CAAC;QAClC,MAAM,IAAI,KAAK,CAAC,gDAAgD,CAAC,CAAA;IAClE,CAAC;IAED,IAAI,CAAC,MAAM,CAAC,IAAI,EAAE,CAAC;QAClB,MAAM,IAAI,KAAK,CAAC,4BAA4B,CAAC,CAAA;IAC9C,CAAC;IAED,OAAO,MAAM,CAAC,IAAI,CAAA;AACnB,CAAC,CAAA;AASD,MAAM,aAAa,GAAG,CAAC,GAAW,EAAkB,EAAE;IACrD,MAAM,SAAS,GAAG,IAAI,eAAe,CAAC,IAAI,GAAG,CAAC,GAAG,CAAC,CAAC,MAAM,CAAC,CAAA;IAC1D,OAAO;QACN,IAAI,EAAE,SAAS,CAAC,GAAG,CAAC,MAAM,CAAC,IAAI,SAAS;QACxC,KAAK,EAAE,SAAS,CAAC,GAAG,CAAC,OAAO,CAAC,IAAI,SAAS;QAC1C,KAAK,EAAE,SAAS,CAAC,GAAG,CAAC,OAAO,CAAC,IAAI,SAAS;QAC1C,iBAAiB,EAAE,SAAS,CAAC,GAAG,CAAC,mBAAmB,CAAC,IAAI,SAAS;KAClE,CAAA;AACF,CAAC,CAAA;AAED,yIAAyI;AACzI,6CAA6C;AAC7C,iEAAiE;AACjE,iBAAiB;AACjB,0EAA0E;AAC1E,uEAAuE;AACvE,sBAAsB;AACtB,KAAK;AACL,2DAA2D;AAC3D,wCAAwC;AAExC,8BAA8B;AAC9B,2EAA2E;AAC3E,uBAAuB;AACvB,kDAAkD;AAClD,wFAAwF;AACxF,qCAAqC;AACrC,yFAAyF;AACzF,uEAAuE;AACvE,qBAAqB;AACrB,KAAK;AACL,qBAAqB;AACrB,IAAI;AAEJ,MAAM,sBAAsB,GAAG,KAAK,EAAE,IAAY,EAAE,YAAoB,EAAE,QAA0C,EAAE,iBAAoC,EAAE,aAAsB,EAAE,EAAE;;IACrL,IAAI,CAAC;QACJ,IAAI,OAAO,GAAG,EAAE,cAAc,EAAE,mCAAmC,EAAS,CAAC;QAC7E,MAAM,IAAI,GAAQ;YACjB,UAAU,EAAE,oBAAoB;YAChC,YAAY,EAAE,YAAY;YAC1B,IAAI;SACJ,CAAC;QAEF,IAAG,MAAA,QAAQ,aAAR,QAAQ,uBAAR,QAAQ,CAAE,qCAAqC,0CAAE,QAAQ,CAAC,MAAM,CAAC;YAC3D,IAAI,CAAC,SAAS,GAAG,iBAAiB,CAAC,SAAS,CAAA;QACrD,IAAI,CAAC,CAAA,MAAA,QAAQ,aAAR,QAAQ,uBAAR,QAAQ,CAAE,qCAAqC,0CAAE,QAAQ,CAAC,MAAM,CAAC,CAAA,KAAI,MAAA,QAAQ,aAAR,QAAQ,uBAAR,QAAQ,CAAE,qCAAqC,0CAAE,QAAQ,CAAC,oBAAoB,CAAC,CAAA;YACxJ,IAAI,CAAC,aAAa,GAAG,iBAAiB,CAAC,aAAa,CAAC;aACjD,IAAI,MAAA,QAAQ,aAAR,QAAQ,uBAAR,QAAQ,CAAE,qCAAqC,0CAAE,QAAQ,CAAC,qBAAqB,CAAC,EAAE,CAAC;YAC3F,MAAM,KAAK,GAAG,MAAM,CAAC,IAAI,CAAC,GAAG,iBAAiB,CAAC,SAAS,IAAI,iBAAiB,CAAC,aAAa,EAAE,CAAC,CAAC,QAAQ,CAAC,QAAQ,CAAC,CAAC;YAClH,OAAO,CAAC,aAAa,GAAG,SAAS,KAAK,EAAE,CAAA;QACzC,CAAC;QAED,IAAI,MAAA,QAAQ,aAAR,QAAQ,uBAAR,QAAQ,CAAE,gCAAgC,0CAAE,MAAM;YACrD,IAAI,CAAC,aAAa,GAAG,aAAa,CAAC;QAEpC,MAAM,QAAQ,GAAG,IAAI,eAAe,CAAC,IAAI,CAAC,CAAC;QAC3C,IAAI,SAAS,GAAG,MAAM,eAAK,CAAC,IAAI,CAAC,QAAQ,CAAC,cAAc,EAAE,QAAQ,EAAE,EAAE,OAAO,EAAE,CAAC,CAAC,IAAI,CAAC,CAAC,GAAG,EAAE,EAAE;YAC7F,OAAO,GAAG,CAAC,IAAI,CAAC;QACjB,CAAC,CAAC,CAAC,KAAK,CAAC,CAAC,GAAG,EAAE,EAAE;YAChB,gBAAG,CAAC,KAAK,CAAC,IAAI,CAAC,SAAS,CAAC,GAAG,CAAC,CAAC,CAAC;YAC/B,gBAAG,CAAC,KAAK,CAAC,yCAAyC,GAAG,GAAG,CAAC,CAAC;YAC3D,MAAM,GAAG,CAAC;QACX,CAAC,CAAQ,CAAC;QAEV,SAAS,GAAG,MAAM,CAAC,MAAM,CAAC,SAAS,EAAE,EAAE,SAAS,EAAE,MAAM,cAAc,CAAC,CAAA,SAAS,aAAT,SAAS,uBAAT,SAAS,CAAE,UAAU,MAAI,SAAS,aAAT,SAAS,uBAAT,SAAS,CAAE,MAAM,CAAA,KAAI,SAAS,aAAT,SAAS,uBAAT,SAAS,CAAE,MAAM,CAAA,CAAC,EAAE,CAAC,CAAA;QAC1I,OAAO,SAAS,CAAC;IAClB,CAAC;IAAC,OAAO,KAAK,EAAE,CAAC;QAChB,MAAM,KAAK,CAAC;IACb,CAAC;AACF,CAAC,CAAA;AAED,MAAM,uBAAuB,GAAG,KAAK,EAAE,QAA0C,EAAE,iBAAoC,EAAE,aAAqB,EAAE,EAAE;;IACjJ,IAAI,CAAC;QACJ,IAAI,OAAO,GAAG,EAAE,cAAc,EAAE,mCAAmC,EAAS,CAAC;QAC7E,MAAM,IAAI,GAAQ;YACjB,UAAU,EAAE,eAAe;YAC3B,aAAa;SACb,CAAC;QAEF,IAAG,MAAA,QAAQ,aAAR,QAAQ,uBAAR,QAAQ,CAAE,qCAAqC,0CAAE,QAAQ,CAAC,MAAM,CAAC;YAC3D,IAAI,CAAC,SAAS,GAAG,iBAAiB,CAAC,SAAS,CAAA;QACrD,IAAI,CAAC,CAAA,MAAA,QAAQ,aAAR,QAAQ,uBAAR,QAAQ,CAAE,qCAAqC,0CAAE,QAAQ,CAAC,MAAM,CAAC,CAAA,KAAI,MAAA,QAAQ,aAAR,QAAQ,uBAAR,QAAQ,CAAE,qCAAqC,0CAAE,QAAQ,CAAC,oBAAoB,CAAC,CAAA;YACxJ,IAAI,CAAC,aAAa,GAAG,iBAAiB,CAAC,aAAa,CAAC;aACjD,IAAI,MAAA,QAAQ,aAAR,QAAQ,uBAAR,QAAQ,CAAE,qCAAqC,0CAAE,QAAQ,CAAC,qBAAqB,CAAC,EAAE,CAAC;YAC3F,MAAM,KAAK,GAAG,MAAM,CAAC,IAAI,CAAC,GAAG,iBAAiB,CAAC,SAAS,IAAI,iBAAiB,CAAC,aAAa,EAAE,CAAC,CAAC,QAAQ,CAAC,QAAQ,CAAC,CAAC;YAClH,OAAO,CAAC,aAAa,GAAG,SAAS,KAAK,EAAE,CAAA;QACzC,CAAC;QAED,MAAM,QAAQ,GAAG,IAAI,eAAe,CAAC,IAAI,CAAC,CAAC;QAC3C,IAAI,SAAS,GAAG,MAAM,eAAK,CAAC,IAAI,CAAC,QAAQ,CAAC,cAAc,EAAE,QAAQ,EAAE,EAAE,OAAO,EAAE,CAAC,CAAC,IAAI,CAAC,CAAC,GAAG,EAAE,EAAE;YAC7F,OAAO,GAAG,CAAC,IAAI,CAAC;QACjB,CAAC,CAAC,CAAC,KAAK,CAAC,CAAC,GAAG,EAAE,EAAE;YAChB,gBAAG,CAAC,KAAK,CAAC,IAAI,CAAC,SAAS,CAAC,GAAG,CAAC,CAAC,CAAC;YAC/B,gBAAG,CAAC,KAAK,CAAC,sCAAsC,GAAG,GAAG,CAAC,CAAC;YACxD,MAAM,GAAG,CAAC;QACX,CAAC,CAAQ,CAAC;QAEV,SAAS,GAAG,MAAM,CAAC,MAAM,CAAC,SAAS,EAAE,EAAE,SAAS,EAAE,MAAM,cAAc,CAAC,CAAA,SAAS,aAAT,SAAS,uBAAT,SAAS,CAAE,UAAU,MAAI,SAAS,aAAT,SAAS,uBAAT,SAAS,CAAE,MAAM,CAAA,KAAI,SAAS,aAAT,SAAS,uBAAT,SAAS,CAAE,MAAM,CAAA,CAAC,EAAE,CAAC,CAAA;QAC1I,OAAO,SAAS,CAAC;IAClB,CAAC;IAAC,OAAO,KAAK,EAAE,CAAC;QAChB,MAAM,KAAK,CAAC;IACb,CAAC;AAEF,CAAC,CAAA;AAED,MAAM,cAAc,GAAG,KAAK,EAAE,YAAoB,IAAI,EAAmB,EAAE;IAC1E,OAAO,CAAC,IAAI,CAAC,GAAG,EAAE,GAAG,CAAC,CAAC,SAAS,GAAG,EAAE,CAAC,GAAG,IAAI,CAAC,CAAC,CAAC,QAAQ,EAAE,CAAC;AAC5D,CAAC,CAAA;AAEY,QAAA,QAAQ,GAAG,EAAE,6BAA6B,EAAE,qBAAqB,EAAE,cAAc,EAAE,qBAAqB,EAAE,cAAc,EAAE,sBAAsB,EAAE,uBAAuB,EAAE,CAAC"}
|
|
@@ -1,8 +1,13 @@
|
|
|
1
1
|
import { OAuthKeys, OAuthMetadata } from "../type";
|
|
2
2
|
export declare const OAuth: {
|
|
3
3
|
discoverOAuthOpenIdMetadata: (providerUrl: string) => Promise<OAuthMetadata>;
|
|
4
|
-
|
|
5
|
-
|
|
4
|
+
generatePKCE: (supportedMethods?: string[], code_verifier?: string) => {
|
|
5
|
+
code_verifier: string;
|
|
6
|
+
code_challenge: string | null;
|
|
7
|
+
code_challenge_method: "S256" | "plain" | null;
|
|
8
|
+
};
|
|
9
|
+
GetOAuthAccessToken: (code: string, providerInfo: Record<OAuthKeys, string>, code_verfier: string) => Promise<any>;
|
|
10
|
+
GetOAuthToken: (authValue: string) => Promise<any>;
|
|
6
11
|
GetOAuthRefreshToken: (providerInfo: Record<OAuthKeys, string>) => Promise<any>;
|
|
7
12
|
SetTokenExpiry: (expiresIn?: number) => Promise<string>;
|
|
8
13
|
};
|
package/dist/cjs/utils/oauth.js
CHANGED
|
@@ -5,6 +5,8 @@ var __importDefault = (this && this.__importDefault) || function (mod) {
|
|
|
5
5
|
Object.defineProperty(exports, "__esModule", { value: true });
|
|
6
6
|
exports.OAuth = void 0;
|
|
7
7
|
const axios_1 = __importDefault(require("axios"));
|
|
8
|
+
const logger_1 = __importDefault(require("../logger"));
|
|
9
|
+
const crypto_1 = require("crypto");
|
|
8
10
|
const OPENID_CONFIGURATION_URLS = {
|
|
9
11
|
// Google
|
|
10
12
|
google: "https://accounts.google.com",
|
|
@@ -100,43 +102,42 @@ const GetOAuthToken = async (authValue) => {
|
|
|
100
102
|
const providerInfo = Object.fromEntries(provisionList.map((item) => [item.Key, item.Value]));
|
|
101
103
|
// 🔹 Step 1: If no token → fetch new one
|
|
102
104
|
if (!providerInfo.Token) {
|
|
103
|
-
|
|
104
|
-
providerInfo.Token = (tokenInfo === null || tokenInfo === void 0 ? void 0 : tokenInfo.access_token) || (tokenInfo === null || tokenInfo === void 0 ? void 0 : tokenInfo.accessToken);
|
|
105
|
-
providerInfo.RefreshToken = (tokenInfo === null || tokenInfo === void 0 ? void 0 : tokenInfo.refresh_token) || (tokenInfo === null || tokenInfo === void 0 ? void 0 : tokenInfo.refreshToken) || null;
|
|
106
|
-
providerInfo.Expire = await SetTokenExpiry(tokenInfo === null || tokenInfo === void 0 ? void 0 : tokenInfo.expires_in);
|
|
105
|
+
return await GetOAuthAccessToken("", providerInfo, "");
|
|
107
106
|
}
|
|
108
107
|
// 🔹 Step 2: Check expiry
|
|
109
108
|
const isExpired = !providerInfo.Expire || Number(providerInfo.Expire) <= Date.now();
|
|
110
109
|
if (isExpired && providerInfo.RefreshToken) {
|
|
111
|
-
|
|
112
|
-
providerInfo.Token = (refreshTokenInfo === null || refreshTokenInfo === void 0 ? void 0 : refreshTokenInfo.access_token) || (refreshTokenInfo === null || refreshTokenInfo === void 0 ? void 0 : refreshTokenInfo.accessToken);
|
|
113
|
-
providerInfo.RefreshToken = (refreshTokenInfo === null || refreshTokenInfo === void 0 ? void 0 : refreshTokenInfo.refresh_token) || (refreshTokenInfo === null || refreshTokenInfo === void 0 ? void 0 : refreshTokenInfo.refreshToken);
|
|
114
|
-
providerInfo.Expire = await SetTokenExpiry(refreshTokenInfo === null || refreshTokenInfo === void 0 ? void 0 : refreshTokenInfo.expires_in);
|
|
110
|
+
return await GetOAuthRefreshToken(providerInfo);
|
|
115
111
|
}
|
|
116
|
-
return providerInfo;
|
|
117
112
|
};
|
|
118
|
-
const GetOAuthAccessToken = async (providerInfo) => {
|
|
113
|
+
const GetOAuthAccessToken = async (code, providerInfo, code_verfier) => {
|
|
119
114
|
try {
|
|
120
|
-
|
|
121
|
-
|
|
122
|
-
return p + `&${c}=${encodeURIComponent(x[c])}`;
|
|
123
|
-
}, Promise.resolve(''));
|
|
124
|
-
let url = providerInfo.AccessTokenURL; //oauth/v3/token if not work
|
|
125
|
-
const formData = await formUrlEncoded({
|
|
115
|
+
let headers = { "Content-Type": 'application/x-www-form-urlencoded' };
|
|
116
|
+
const keys = {
|
|
126
117
|
grant_type: "authorization_code",
|
|
118
|
+
redirect_uri: providerInfo.CallBackURL,
|
|
127
119
|
client_id: providerInfo.ClientId,
|
|
128
120
|
client_secret: providerInfo.ClientSecret,
|
|
129
|
-
|
|
130
|
-
|
|
131
|
-
|
|
132
|
-
|
|
133
|
-
|
|
121
|
+
code
|
|
122
|
+
};
|
|
123
|
+
// if(providerInfo??.includes('none'))
|
|
124
|
+
// keys.client_id = clientCredentials.client_id
|
|
125
|
+
// if (!metaData?.token_endpoint_auth_methods_supported?.includes('none') && metaData?.token_endpoint_auth_methods_supported?.includes('client_secret_post'))
|
|
126
|
+
// keys.client_secret = clientCredentials.client_secret;
|
|
127
|
+
// else if (metaData?.token_endpoint_auth_methods_supported?.includes('client_secret_basic')) {
|
|
128
|
+
// const token = Buffer.from(`${clientCredentials.client_id}:${clientCredentials.client_secret}`).toString("base64");
|
|
129
|
+
// headers.Authorization = `Basic ${token}`
|
|
130
|
+
// }
|
|
131
|
+
let url = providerInfo.AccessTokenURL; //oauth/v3/token if not work
|
|
132
|
+
const formData = new URLSearchParams(keys);
|
|
133
|
+
let tokenInfo = await axios_1.default.post(url, formData, { headers }).then((res) => {
|
|
134
134
|
return res.data;
|
|
135
135
|
}).catch((err) => {
|
|
136
136
|
console.error(JSON.stringify(err));
|
|
137
137
|
console.error("Error in Axios call of Token Validation" + err);
|
|
138
138
|
throw err;
|
|
139
139
|
});
|
|
140
|
+
tokenInfo = Object.assign(tokenInfo, { expire_at: await SetTokenExpiry((tokenInfo === null || tokenInfo === void 0 ? void 0 : tokenInfo.expires_in) || (tokenInfo === null || tokenInfo === void 0 ? void 0 : tokenInfo.expiry) || (tokenInfo === null || tokenInfo === void 0 ? void 0 : tokenInfo.expire)) });
|
|
140
141
|
return tokenInfo;
|
|
141
142
|
}
|
|
142
143
|
catch (error) {
|
|
@@ -145,13 +146,28 @@ const GetOAuthAccessToken = async (providerInfo) => {
|
|
|
145
146
|
};
|
|
146
147
|
const GetOAuthRefreshToken = async (providerInfo) => {
|
|
147
148
|
try {
|
|
148
|
-
let
|
|
149
|
-
const
|
|
149
|
+
let headers = { "Content-Type": 'application/x-www-form-urlencoded' };
|
|
150
|
+
const keys = {
|
|
151
|
+
grant_type: "refresh_token",
|
|
152
|
+
refresh_token: providerInfo.RefreshToken
|
|
153
|
+
};
|
|
154
|
+
// if(metaData?.token_endpoint_auth_methods_supported?.includes('none'))
|
|
155
|
+
// keys.client_id = clientCredentials.client_id
|
|
156
|
+
// if (!metaData?.token_endpoint_auth_methods_supported?.includes('none') && metaData?.token_endpoint_auth_methods_supported?.includes('client_secret_post'))
|
|
157
|
+
// keys.client_secret = clientCredentials.client_secret;
|
|
158
|
+
// else if (metaData?.token_endpoint_auth_methods_supported?.includes('client_secret_basic')) {
|
|
159
|
+
// const token = Buffer.from(`${clientCredentials.client_id}:${clientCredentials.client_secret}`).toString("base64");
|
|
160
|
+
// headers.Authorization = `Basic ${token}`
|
|
161
|
+
// }
|
|
162
|
+
const formData = new URLSearchParams(keys);
|
|
163
|
+
let tokenInfo = await axios_1.default.post(providerInfo.RefreshTokenURL, formData, { headers }).then((res) => {
|
|
150
164
|
return res.data;
|
|
151
165
|
}).catch((err) => {
|
|
152
|
-
|
|
166
|
+
logger_1.default.error(JSON.stringify(err));
|
|
167
|
+
logger_1.default.error("Error in Axios Call of refresh Token" + err);
|
|
153
168
|
throw err;
|
|
154
169
|
});
|
|
170
|
+
tokenInfo = Object.assign(tokenInfo, { expire_at: await SetTokenExpiry((tokenInfo === null || tokenInfo === void 0 ? void 0 : tokenInfo.expires_in) || (tokenInfo === null || tokenInfo === void 0 ? void 0 : tokenInfo.expiry) || (tokenInfo === null || tokenInfo === void 0 ? void 0 : tokenInfo.expire)) });
|
|
155
171
|
return tokenInfo;
|
|
156
172
|
}
|
|
157
173
|
catch (error) {
|
|
@@ -174,5 +190,24 @@ const SetTokenExpiry = async (expiresIn = 1800) => {
|
|
|
174
190
|
// throw error;
|
|
175
191
|
// }
|
|
176
192
|
// }
|
|
177
|
-
|
|
193
|
+
const generatePKCE = (supportedMethods, code_verifier) => {
|
|
194
|
+
if (!code_verifier)
|
|
195
|
+
code_verifier = (0, crypto_1.randomBytes)(32).toString('base64url');
|
|
196
|
+
let code_challenge_method = null;
|
|
197
|
+
if (supportedMethods === null || supportedMethods === void 0 ? void 0 : supportedMethods.includes('S256'))
|
|
198
|
+
code_challenge_method = 'S256';
|
|
199
|
+
else if (supportedMethods === null || supportedMethods === void 0 ? void 0 : supportedMethods.includes('plain'))
|
|
200
|
+
code_challenge_method = 'plain';
|
|
201
|
+
let code_challenge = null;
|
|
202
|
+
if (code_challenge_method === 'S256')
|
|
203
|
+
code_challenge = (0, crypto_1.createHash)('sha256').update(code_verifier).digest('base64url');
|
|
204
|
+
else if (code_challenge_method === 'plain')
|
|
205
|
+
code_challenge = code_verifier;
|
|
206
|
+
return {
|
|
207
|
+
code_verifier,
|
|
208
|
+
code_challenge,
|
|
209
|
+
code_challenge_method
|
|
210
|
+
};
|
|
211
|
+
};
|
|
212
|
+
exports.OAuth = { discoverOAuthOpenIdMetadata, generatePKCE, GetOAuthAccessToken, GetOAuthToken, GetOAuthRefreshToken, SetTokenExpiry };
|
|
178
213
|
//# sourceMappingURL=oauth.js.map
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"oauth.js","sourceRoot":"","sources":["../../../utils/oauth.ts"],"names":[],"mappings":";;;;;;AAAA,kDAA0B;
|
|
1
|
+
{"version":3,"file":"oauth.js","sourceRoot":"","sources":["../../../utils/oauth.ts"],"names":[],"mappings":";;;;;;AAAA,kDAA0B;AAE1B,uDAA4B;AAC5B,mCAAiD;AAEjD,MAAM,yBAAyB,GAA2B;IACxD,SAAS;IACT,MAAM,EAAE,6BAA6B;IAErC,YAAY;IACZ,SAAS,EAAE,+CAA+C;IAC1D,KAAK,EAAE,+CAA+C;IAEtD,YAAY;IACZ,SAAS,EAAE,4BAA4B;IACvC,IAAI,EAAE,4BAA4B;IAClC,UAAU,EAAE,4BAA4B;IAExC,aAAa;IACb,UAAU,EAAE,8BAA8B;IAC1C,kBAAkB,EAAE,6BAA6B;IAEjD,QAAQ;IACR,KAAK,EAAE,mBAAmB;IAE1B,SAAS;IACT,MAAM,EAAE,oBAAoB;IAE5B,SAAS;IACT,MAAM,EAAE,oBAAoB;IAE5B,QAAQ;IACR,KAAK,EAAE,2BAA2B;IAElC,yBAAyB;IACzB,IAAI,EAAE,8BAA8B;IAEpC,0BAA0B;IAC1B,KAAK,EAAE,+BAA+B;IAEtC,4BAA4B;IAC5B,QAAQ,EAAE,uCAAuC;IAEjD,SAAS;IACT,MAAM,EAAE,sBAAsB;IAE9B,UAAU;IACV,OAAO,EAAE,8BAA8B;IAEvC,QAAQ;IACR,KAAK,EAAE,6BAA6B;IAEpC,SAAS;IACT,MAAM,EAAE,wBAAwB;IAEhC,WAAW;IACX,QAAQ,EAAE,0BAA0B;IAEpC,SAAS;IACT,MAAM,EAAE,wBAAwB;IAEhC,UAAU;IACV,OAAO,EAAE,yBAAyB;IAElC,MAAM;IACN,GAAG,EAAE,yBAAyB;IAE9B,SAAS;IACT,MAAM,EAAE,oBAAoB;IAE5B,UAAU;IACV,OAAO,EAAE,qBAAqB;IAE9B,OAAO;IACP,IAAI,EAAE,iBAAiB;IAEvB,eAAe;IACf,WAAW,EAAE,wBAAwB;CACtC,CAAC;AAEF,MAAM,kBAAkB,GAAG,CAAC,QAAgB,EAAU,EAAE;IACtD,IAAI,CAAC;QACH,mBAAmB;QACnB,IAAI,GAAG,CAAC,QAAQ,CAAC,CAAC;QAAC,OAAO,QAAQ,CAAC;IACrC,CAAC;IAAC,WAAM,CAAC;QACP,uBAAuB;QACvB,MAAM,GAAG,GAAG,yBAAyB,CAAC,QAAQ,CAAC,WAAW,EAAE,CAAC,CAAC;QAC9D,IAAI,CAAC,GAAG,EAAE,CAAC;YACT,MAAM,IAAI,KAAK,CAAC,+BAA+B,QAAQ,EAAE,CAAC,CAAC;QAC7D,CAAC;QACD,OAAO,GAAG,CAAC;IACb,CAAC;AACH,CAAC,CAAC;AAEF;;;;GAIG;AACH,MAAM,2BAA2B,GAAG,KAAK,EAAE,WAAmB,EAA0B,EAAE;IACxF,WAAW,GAAG,kBAAkB,CAAC,WAAW,CAAC,CAAA;IAC7C,MAAM,GAAG,GAAG,IAAI,GAAG,CAAC,WAAW,CAAC,CAAA;IAEhC,sBAAsB;IACtB,MAAM,YAAY,GAAG,IAAI,GAAG,CAC1B,mCAAmC,EACnC,GAAG,CACJ,CAAA;IAED,8CAA8C;IAC9C,MAAM,cAAc,GAAG,MAAM,KAAK,CAChC,YAAY,CAAC,QAAQ,EAAE,CACxB,CAAA;IACD,IAAI,CAAC,cAAc,CAAC,EAAE,EAAE,CAAC;QACvB,MAAM,IAAI,KAAK,CACb,wCAAwC;YACxC,GAAG,cAAc,CAAC,MAAM,EAAE,CAC3B,CAAA;IACH,CAAC;IAED,MAAM,QAAQ,GAAG,CAAC,MAAM,cAAc,CAAC,IAAI,EAAE,CAAkB,CAAA;IAC/D,OAAO,QAAQ,CAAA;AACjB,CAAC,CAAA;AAED,MAAM,aAAa,GAAG,KAAK,EAAE,SAAiB,EAAE,EAAE;IAChD,IAAI,CAAC,SAAS;QAAE,MAAM,IAAI,KAAK,CAAC,wBAAwB,CAAC,CAAC;IAE1D,MAAM,aAAa,GAAG,IAAI,CAAC,KAAK,CAAC,SAAS,CAAC,CAAC;IAC5C,IAAI,CAAC,KAAK,CAAC,OAAO,CAAC,aAAa,CAAC;QAAE,OAAO,EAAE,CAAC;IAE7C,MAAM,YAAY,GAAG,MAAM,CAAC,WAAW,CACrC,aAAa,CAAC,GAAG,CAAC,CAAC,IAAS,EAAE,EAAE,CAAC,CAAC,IAAI,CAAC,GAAG,EAAE,IAAI,CAAC,KAAK,CAAC,CAAC,CAC/B,CAAC;IAE5B,yCAAyC;IACzC,IAAI,CAAC,YAAY,CAAC,KAAK,EAAE,CAAC;QACxB,OAAO,MAAM,mBAAmB,CAAC,EAAE,EAAE,YAAY,EAAE,EAAE,CAAC,CAAC;IACzD,CAAC;IAED,0BAA0B;IAC1B,MAAM,SAAS,GAAG,CAAC,YAAY,CAAC,MAAM,IAAI,MAAM,CAAC,YAAY,CAAC,MAAM,CAAC,IAAI,IAAI,CAAC,GAAG,EAAE,CAAC;IACpF,IAAI,SAAS,IAAI,YAAY,CAAC,YAAY,EAAE,CAAC;QAC3C,OAAO,MAAM,oBAAoB,CAAC,YAAY,CAAC,CAAC;IAClD,CAAC;AACH,CAAC,CAAA;AAED,MAAM,mBAAmB,GAAG,KAAK,EAAE,IAAY,EAAE,YAAuC,EAAE,YAAoB,EAAE,EAAE;IAChH,IAAI,CAAC;QACH,IAAI,OAAO,GAAG,EAAE,cAAc,EAAE,mCAAmC,EAAS,CAAC;QAC7E,MAAM,IAAI,GAAQ;YAChB,UAAU,EAAE,oBAAoB;YAChC,YAAY,EAAE,YAAY,CAAC,WAAW;YACtC,SAAS,EAAE,YAAY,CAAC,QAAQ;YAChC,aAAa,EAAE,YAAY,CAAC,YAAY;YACxC,IAAI;SACL,CAAC;QAEF,sCAAsC;QACtC,sDAAsD;QACtD,6JAA6J;QAC7J,yDAAyD;QACzD,+FAA+F;QAC/F,sHAAsH;QACtH,4CAA4C;QAC5C,IAAI;QAEJ,IAAI,GAAG,GAAG,YAAY,CAAC,cAAc,CAAC,CAAE,4BAA4B;QACpE,MAAM,QAAQ,GAAG,IAAI,eAAe,CAAC,IAAI,CAAC,CAAC;QAC3C,IAAI,SAAS,GAAG,MAAM,eAAK,CAAC,IAAI,CAAC,GAAG,EAAE,QAAQ,EAAE,EAAE,OAAO,EAAE,CAAC,CAAC,IAAI,CAAC,CAAC,GAAG,EAAE,EAAE;YACxE,OAAO,GAAG,CAAC,IAAI,CAAC;QAClB,CAAC,CAAC,CAAC,KAAK,CAAC,CAAC,GAAG,EAAE,EAAE;YACf,OAAO,CAAC,KAAK,CAAC,IAAI,CAAC,SAAS,CAAC,GAAG,CAAC,CAAC,CAAC;YACnC,OAAO,CAAC,KAAK,CAAC,yCAAyC,GAAG,GAAG,CAAC,CAAC;YAC/D,MAAM,GAAG,CAAC;QACZ,CAAC,CAAQ,CAAC;QAEV,SAAS,GAAG,MAAM,CAAC,MAAM,CAAC,SAAS,EAAE,EAAE,SAAS,EAAE,MAAM,cAAc,CAAC,CAAA,SAAS,aAAT,SAAS,uBAAT,SAAS,CAAE,UAAU,MAAI,SAAS,aAAT,SAAS,uBAAT,SAAS,CAAE,MAAM,CAAA,KAAI,SAAS,aAAT,SAAS,uBAAT,SAAS,CAAE,MAAM,CAAA,CAAC,EAAE,CAAC,CAAA;QAC1I,OAAO,SAAS,CAAC;IAEnB,CAAC;IAAC,OAAO,KAAK,EAAE,CAAC;QACf,MAAM,KAAK,CAAC;IACd,CAAC;AACH,CAAC,CAAA;AAED,MAAM,oBAAoB,GAAG,KAAK,EAAE,YAAuC,EAAE,EAAE;IAC7E,IAAI,CAAC;QACH,IAAI,OAAO,GAAG,EAAE,cAAc,EAAE,mCAAmC,EAAS,CAAC;QAC7E,MAAM,IAAI,GAAQ;YAChB,UAAU,EAAE,eAAe;YAC3B,aAAa,EAAE,YAAY,CAAC,YAAY;SACzC,CAAC;QAEF,wEAAwE;QACxE,sDAAsD;QACtD,6JAA6J;QAC7J,yDAAyD;QACzD,+FAA+F;QAC/F,sHAAsH;QACtH,4CAA4C;QAC5C,IAAI;QAEJ,MAAM,QAAQ,GAAG,IAAI,eAAe,CAAC,IAAI,CAAC,CAAC;QAC3C,IAAI,SAAS,GAAG,MAAM,eAAK,CAAC,IAAI,CAAC,YAAY,CAAC,eAAe,EAAE,QAAQ,EAAE,EAAE,OAAO,EAAE,CAAC,CAAC,IAAI,CAAC,CAAC,GAAG,EAAE,EAAE;YACjG,OAAO,GAAG,CAAC,IAAI,CAAC;QAClB,CAAC,CAAC,CAAC,KAAK,CAAC,CAAC,GAAG,EAAE,EAAE;YACf,gBAAG,CAAC,KAAK,CAAC,IAAI,CAAC,SAAS,CAAC,GAAG,CAAC,CAAC,CAAC;YAC/B,gBAAG,CAAC,KAAK,CAAC,sCAAsC,GAAG,GAAG,CAAC,CAAC;YACxD,MAAM,GAAG,CAAC;QACZ,CAAC,CAAQ,CAAC;QAEV,SAAS,GAAG,MAAM,CAAC,MAAM,CAAC,SAAS,EAAE,EAAE,SAAS,EAAE,MAAM,cAAc,CAAC,CAAA,SAAS,aAAT,SAAS,uBAAT,SAAS,CAAE,UAAU,MAAI,SAAS,aAAT,SAAS,uBAAT,SAAS,CAAE,MAAM,CAAA,KAAI,SAAS,aAAT,SAAS,uBAAT,SAAS,CAAE,MAAM,CAAA,CAAC,EAAE,CAAC,CAAA;QAC1I,OAAO,SAAS,CAAC;IACnB,CAAC;IAAC,OAAO,KAAK,EAAE,CAAC;QACf,MAAM,KAAK,CAAC;IACd,CAAC;AAEH,CAAC,CAAA;AAED,MAAM,cAAc,GAAG,KAAK,EAAE,YAAoB,IAAI,EAAmB,EAAE;IACzE,OAAO,CAAC,IAAI,CAAC,GAAG,EAAE,GAAG,CAAC,CAAC,SAAS,GAAG,EAAE,CAAC,GAAG,IAAI,CAAC,CAAC,CAAC,QAAQ,EAAE,CAAC;AAC7D,CAAC,CAAA;AAED,0EAA0E;AAC1E,YAAY;AACZ,6CAA6C;AAC7C,gHAAgH;AAChH,iKAAiK;AACjK,yJAAyJ;AACzJ,kFAAkF;AAClF,2PAA2P;AAC3P,wBAAwB;AACxB,0DAA0D;AAC1D,uBAAuB;AACvB,QAAQ;AACR,IAAI;AAGJ,MAAM,YAAY,GAAG,CAAC,gBAA2B,EAAE,aAAsB,EAIvE,EAAE;IACF,IAAI,CAAC,aAAa;QAChB,aAAa,GAAG,IAAA,oBAAW,EAAC,EAAE,CAAC,CAAC,QAAQ,CAAC,WAAW,CAAC,CAAC;IACxD,IAAI,qBAAqB,GAA4B,IAAI,CAAC;IAE1D,IAAI,gBAAgB,aAAhB,gBAAgB,uBAAhB,gBAAgB,CAAE,QAAQ,CAAC,MAAM,CAAC;QACpC,qBAAqB,GAAG,MAAM,CAAC;SAC5B,IAAI,gBAAgB,aAAhB,gBAAgB,uBAAhB,gBAAgB,CAAE,QAAQ,CAAC,OAAO,CAAC;QAC1C,qBAAqB,GAAG,OAAO,CAAC;IAElC,IAAI,cAAc,GAAkB,IAAI,CAAC;IAEzC,IAAI,qBAAqB,KAAK,MAAM;QAClC,cAAc,GAAG,IAAA,mBAAU,EAAC,QAAQ,CAAC,CAAC,MAAM,CAAC,aAAa,CAAC,CAAC,MAAM,CAAC,WAAW,CAAC,CAAC;SAE7E,IAAI,qBAAqB,KAAK,OAAO;QACxC,cAAc,GAAG,aAAa,CAAC;IAEjC,OAAO;QACL,aAAa;QACb,cAAc;QACd,qBAAqB;KACtB,CAAC;AACJ,CAAC,CAAC;AAEW,QAAA,KAAK,GAAG,EAAE,2BAA2B,EAAE,YAAY,EAAE,mBAAmB,EAAE,aAAa,EAAE,oBAAoB,EAAE,cAAc,EAAE,CAAC"}
|
|
@@ -49,8 +49,13 @@ export declare const Utils: {
|
|
|
49
49
|
jwt: typeof jwt;
|
|
50
50
|
OAuth: {
|
|
51
51
|
discoverOAuthOpenIdMetadata: (providerUrl: string) => Promise<import("../type").OAuthMetadata>;
|
|
52
|
-
|
|
53
|
-
|
|
52
|
+
generatePKCE: (supportedMethods?: string[], code_verifier?: string) => {
|
|
53
|
+
code_verifier: string;
|
|
54
|
+
code_challenge: string | null;
|
|
55
|
+
code_challenge_method: "S256" | "plain" | null;
|
|
56
|
+
};
|
|
57
|
+
GetOAuthAccessToken: (code: string, providerInfo: Record<import("../type").OAuthKeys, string>, code_verfier: string) => Promise<any>;
|
|
58
|
+
GetOAuthToken: (authValue: string) => Promise<any>;
|
|
54
59
|
GetOAuthRefreshToken: (providerInfo: Record<import("../type").OAuthKeys, string>) => Promise<any>;
|
|
55
60
|
SetTokenExpiry: (expiresIn?: number) => Promise<string>;
|
|
56
61
|
};
|
|
@@ -148,7 +148,7 @@ const parseCallback = (url) => {
|
|
|
148
148
|
// return tokenInfo;
|
|
149
149
|
// }
|
|
150
150
|
const GetOAuthMCPAccessToken = (code, redirect_uri, metaData, clientCredentials, code_verifier) => __awaiter(void 0, void 0, void 0, function* () {
|
|
151
|
-
var _a, _b, _c, _d;
|
|
151
|
+
var _a, _b, _c, _d, _e;
|
|
152
152
|
try {
|
|
153
153
|
let headers = { "Content-Type": 'application/x-www-form-urlencoded' };
|
|
154
154
|
const keys = {
|
|
@@ -156,15 +156,15 @@ const GetOAuthMCPAccessToken = (code, redirect_uri, metaData, clientCredentials,
|
|
|
156
156
|
redirect_uri: redirect_uri,
|
|
157
157
|
code
|
|
158
158
|
};
|
|
159
|
-
if (
|
|
160
|
-
keys.client_id = clientCredentials.client_id
|
|
161
|
-
|
|
162
|
-
|
|
163
|
-
else if ((
|
|
159
|
+
if ((_a = metaData === null || metaData === void 0 ? void 0 : metaData.token_endpoint_auth_methods_supported) === null || _a === void 0 ? void 0 : _a.includes('none'))
|
|
160
|
+
keys.client_id = clientCredentials.client_id;
|
|
161
|
+
if (!((_b = metaData === null || metaData === void 0 ? void 0 : metaData.token_endpoint_auth_methods_supported) === null || _b === void 0 ? void 0 : _b.includes('none')) && ((_c = metaData === null || metaData === void 0 ? void 0 : metaData.token_endpoint_auth_methods_supported) === null || _c === void 0 ? void 0 : _c.includes('client_secret_post')))
|
|
162
|
+
keys.client_secret = clientCredentials.client_secret;
|
|
163
|
+
else if ((_d = metaData === null || metaData === void 0 ? void 0 : metaData.token_endpoint_auth_methods_supported) === null || _d === void 0 ? void 0 : _d.includes('client_secret_basic')) {
|
|
164
164
|
const token = Buffer.from(`${clientCredentials.client_id}:${clientCredentials.client_secret}`).toString("base64");
|
|
165
165
|
headers.Authorization = `Basic ${token}`;
|
|
166
166
|
}
|
|
167
|
-
if ((
|
|
167
|
+
if ((_e = metaData === null || metaData === void 0 ? void 0 : metaData.code_challenge_methods_supported) === null || _e === void 0 ? void 0 : _e.length)
|
|
168
168
|
keys.code_verifier = code_verifier;
|
|
169
169
|
const formData = new URLSearchParams(keys);
|
|
170
170
|
let tokenInfo = yield axios.post(metaData.token_endpoint, formData, { headers }).then((res) => {
|
|
@@ -182,18 +182,18 @@ const GetOAuthMCPAccessToken = (code, redirect_uri, metaData, clientCredentials,
|
|
|
182
182
|
}
|
|
183
183
|
});
|
|
184
184
|
const GetOAuthMCPRefreshToken = (metaData, clientCredentials, refresh_token) => __awaiter(void 0, void 0, void 0, function* () {
|
|
185
|
-
var _a, _b, _c;
|
|
185
|
+
var _a, _b, _c, _d;
|
|
186
186
|
try {
|
|
187
187
|
let headers = { "Content-Type": 'application/x-www-form-urlencoded' };
|
|
188
188
|
const keys = {
|
|
189
189
|
grant_type: "refresh_token",
|
|
190
|
-
refresh_token
|
|
190
|
+
refresh_token
|
|
191
191
|
};
|
|
192
|
-
if (
|
|
193
|
-
keys.client_id = clientCredentials.client_id
|
|
194
|
-
|
|
195
|
-
|
|
196
|
-
else if ((
|
|
192
|
+
if ((_a = metaData === null || metaData === void 0 ? void 0 : metaData.token_endpoint_auth_methods_supported) === null || _a === void 0 ? void 0 : _a.includes('none'))
|
|
193
|
+
keys.client_id = clientCredentials.client_id;
|
|
194
|
+
if (!((_b = metaData === null || metaData === void 0 ? void 0 : metaData.token_endpoint_auth_methods_supported) === null || _b === void 0 ? void 0 : _b.includes('none')) && ((_c = metaData === null || metaData === void 0 ? void 0 : metaData.token_endpoint_auth_methods_supported) === null || _c === void 0 ? void 0 : _c.includes('client_secret_post')))
|
|
195
|
+
keys.client_secret = clientCredentials.client_secret;
|
|
196
|
+
else if ((_d = metaData === null || metaData === void 0 ? void 0 : metaData.token_endpoint_auth_methods_supported) === null || _d === void 0 ? void 0 : _d.includes('client_secret_basic')) {
|
|
197
197
|
const token = Buffer.from(`${clientCredentials.client_id}:${clientCredentials.client_secret}`).toString("base64");
|
|
198
198
|
headers.Authorization = `Basic ${token}`;
|
|
199
199
|
}
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"mcp-oauth.js","sourceRoot":"","sources":["../../../utils/mcp-oauth.ts"],"names":[],"mappings":";;;;;;;;;AAAA,OAAO,KAAK,MAAM,OAAO,CAAC;AAE1B,OAAO,GAAG,MAAM,WAAW,CAAC;AAI5B,MAAM,6BAA6B,GAAG,CAAO,YAAoB,EAA8C,EAAE;IAChH,MAAM,GAAG,GAAG,IAAI,GAAG,CAAC,YAAY,CAAC,CAAA;IACjC,MAAM,oBAAoB,GAAG,IAAI,GAAG,CACnC,uCAAuC,EACvC,GAAG,CACH,CAAA;IAED,qDAAqD;IACrD,MAAM,yBAAyB,GAAG,MAAM,KAAK,CAC5C,oBAAoB,CAAC,QAAQ,EAAE,CAC/B,CAAA;IACD,IAAI,CAAC,yBAAyB,CAAC,EAAE,EAAE,CAAC;QACnC,MAAM,IAAI,KAAK,CACd,+CAA+C;YAC/C,GAAG,yBAAyB,CAAC,MAAM,EAAE,CACrC,CAAA;IACF,CAAC;IAED,MAAM,iBAAiB,GAAG,CAAC,MAAM,yBAAyB,CAAC,IAAI,EAAE,CAAsC,CAAA;IACvG,OAAO,iBAAiB,CAAA;AACzB,CAAC,CAAA,CAAA;AAED;;GAEG;AACH,MAAM,qBAAqB,GAAG,CAAO,YAAoB,EAA6B,EAAE;;IACvF,MAAM,iBAAiB,GAAG,CAAC,MAAM,6BAA6B,CAAC,YAAY,CAAC,CAAsC,CAAA;IAClH,MAAM,WAAW,GAAG,iBAAiB,CAAC,qBAAqB,CAAC;IAE5D,IAAI,CAAC,KAAK,CAAC,OAAO,CAAC,WAAW,CAAC,IAAI,WAAW,CAAC,MAAM,KAAK,CAAC,EAAE,CAAC;QAC7D,MAAM,IAAI,KAAK,CACd,+DAA+D,CAC/D,CAAA;IACF,CAAC;IAED,qCAAqC;IACrC,MAAM,aAAa,GAAG,WAAW,CAAC,CAAC,CAAC,CAAA;IAEpC,uDAAuD;IACvD,MAAM,WAAW,GAAG,IAAI,GAAG,CAC1B,yCAAyC,EACzC,aAAa,CACb,CAAA;IACD,MAAM,gBAAgB,GAAG,MAAM,KAAK,CAAC,WAAW,CAAC,QAAQ,EAAE,CAAC,CAAA;IAE5D,IAAI,CAAC,gBAAgB,CAAC,EAAE,EAAE,CAAC;QAC1B,MAAM,IAAI,KAAK,CACd,iDAAiD;YACjD,GAAG,gBAAgB,CAAC,MAAM,EAAE,CAC5B,CAAA;IACF,CAAC;IAED,MAAM,QAAQ,GAAG,CAAC,MAAM,gBAAgB,CAAC,IAAI,EAAE,CAAqB,CAAC;IAErE,2BAA2B;IAC3B,IAAI,CAAC,QAAQ,CAAC,sBAAsB,IAAI,CAAC,QAAQ,CAAC,cAAc,EAAE,CAAC;QAClE,MAAM,IAAI,KAAK,CAAC,8CAA8C,CAAC,CAAA;IAChE,CAAC;IAED,wCAAwC;IACxC,IAAI,CAAC,CAAA,MAAA,QAAQ,CAAC,gCAAgC,0CAAE,QAAQ,CAAC,MAAM,CAAC,CAAA,EAAE,CAAC;QAClE,OAAO,CAAC,IAAI,CACX,+CAA+C;YAC/C,2BAA2B,CAC3B,CAAA;IACF,CAAC;IAED,OAAO,QAAQ,CAAA;AAChB,CAAC,CAAA,CAAA;AAED,MAAM,cAAc,GAAG,wCAAuH,EAAE,+EAAlH,QAA0B,EAAE,YAAsB,EAAE,cAAsB,QAAQ;;IAC/G,IAAI,CAAC,QAAQ,CAAC,qBAAqB;QAClC,MAAM,IAAI,KAAK,CAAC,qDAAqD,CAAC,CAAA;IAEvE,MAAM,mBAAmB,GAAuB;QAC/C,WAAW,EAAE,WAAW;QACxB,aAAa,EAAE,YAAY;QAC3B,WAAW,EAAE,MAAA,QAAQ,aAAR,QAAQ,uBAAR,QAAQ,CAAE,qBAAqB,mCAAI,CAAC,oBAAoB,EAAE,eAAe,CAAC;QACvF,cAAc,EAAE,MAAA,QAAQ,aAAR,QAAQ,uBAAR,QAAQ,CAAE,wBAAwB,mCAAI,CAAC,MAAM,CAAC;QAC9D,0BAA0B,EAAE,CAAA,MAAA,QAAQ,aAAR,QAAQ,uBAAR,QAAQ,CAAE,qCAAqC,0CAAE,MAAM,MAAI,MAAA,QAAQ,aAAR,QAAQ,uBAAR,QAAQ,CAAE,qCAAqC,0CAAE,QAAQ,CAAC,MAAM,CAAC,CAAA,CAAC,CAAC,CAAC,MAAM,CAAC,CAAC,CAAC,QAAQ,aAAR,QAAQ,uBAAR,QAAQ,CAAE,qCAAqC,CAAE,CAAC,CAAC;KACvN,CAAA;IAED,IAAI,MAAA,QAAQ,aAAR,QAAQ,uBAAR,QAAQ,CAAE,gBAAgB,0CAAE,MAAM;QACrC,mBAAmB,CAAC,KAAK,GAAG,QAAQ,CAAC,gBAAgB,CAAC,IAAI,CAAC,EAAE,CAAC,CAAC;IAEhE,MAAM,QAAQ,GAAG,MAAM,KAAK,CAAC,QAAQ,CAAC,qBAAqB,EAAE;QAC5D,MAAM,EAAE,MAAM;QACd,OAAO,EAAE;YACR,cAAc,EAAE,kBAAkB;YAClC,MAAM,EAAE,kBAAkB;SAC1B;QACD,IAAI,EAAE,IAAI,CAAC,SAAS,CAAC,mBAAmB,CAAC;KACzC,CAAC,CAAA;IAEF,IAAI,CAAC,QAAQ,CAAC,EAAE,EAAE,CAAC;QAClB,MAAM,SAAS,GAAG,MAAM,QAAQ,CAAC,IAAI,EAAE,CAAA;QACvC,MAAM,IAAI,KAAK,CACd,+BAA+B,QAAQ,CAAC,MAAM,MAAM,SAAS,EAAE,CAC/D,CAAA;IACF,CAAC;IACD,MAAM,WAAW,GAAG,CAAC,MAAM,QAAQ,CAAC,IAAI,EAAE,CAAsB,CAAA;IAEhE,6BAA6B;IAC7B,OAAO,WAAW,CAAA;AACnB,CAAC,CAAA,CAAA;AAED,MAAM,qBAAqB,GAAG,CAC7B,QAA0B,EAC1B,QAAgB,EAChB,WAAmB,EACnB,KAAa,EACb,aAAsB,EACtB,mBAA4B,EAC5B,QAAiB,EACC,EAAE;;IACpB,IAAI,KAAK,GAAG;QACX,aAAa,EAAE,MAAM;QACrB,SAAS,EAAE,QAAQ;QACnB,YAAY,EAAE,WAAW;QACzB,KAAK,EAAE,KAAK;QACZ,MAAM,EAAE,SAAS;QACjB,aAAa,EAAE,OAAO;KACC,CAAA;IACxB,IAAI,MAAA,QAAQ,aAAR,QAAQ,uBAAR,QAAQ,CAAE,gBAAgB,0CAAE,MAAM;QACrC,KAAK,CAAC,KAAK,GAAG,QAAQ,aAAR,QAAQ,uBAAR,QAAQ,CAAE,gBAAgB,CAAC,IAAI,CAAC,GAAG,CAAC,CAAA;IACnD,IAAI,mBAAmB;QACtB,KAAK,CAAC,cAAc,GAAG,aAAa,CAAC;IACtC,IAAI,mBAAmB;QACtB,KAAK,CAAC,qBAAqB,GAAG,mBAAmB,CAAC;IACnD,IAAI,QAAQ;QACX,KAAK,CAAC,QAAQ,GAAG,QAAQ,CAAC;IAC3B,MAAM,MAAM,GAAG,IAAI,eAAe,CAAC,KAAK,CAAC,CAAA;IAEzC,OAAO,GAAG,QAAQ,CAAC,sBAAsB,IAAI,MAAM,CAAC,QAAQ,EAAE,EAAE,CAAA;AACjE,CAAC,CAAA,CAAA;AAED,MAAM,cAAc,GAAG,CAAO,WAAmB,EAAE,WAAmB,EAAE,YAAoB,EAAE,EAAE;IAC/F,MAAM,MAAM,GAAG,aAAa,CAAC,WAAW,CAAC,CAAA;IAEzC,IAAI,MAAM,CAAC,KAAK,EAAE,CAAC;QAClB,MAAM,IAAI,KAAK,CACd,gBAAgB,MAAM,CAAC,KAAK,KAAK;YACjC,GAAG,MAAM,CAAC,iBAAiB,IAAI,eAAe,EAAE,CAChD,CAAA;IACF,CAAC;IAED,IAAI,MAAM,CAAC,KAAK,KAAK,WAAW,EAAE,CAAC;QAClC,MAAM,IAAI,KAAK,CAAC,gDAAgD,CAAC,CAAA;IAClE,CAAC;IAED,IAAI,CAAC,MAAM,CAAC,IAAI,EAAE,CAAC;QAClB,MAAM,IAAI,KAAK,CAAC,4BAA4B,CAAC,CAAA;IAC9C,CAAC;IAED,OAAO,MAAM,CAAC,IAAI,CAAA;AACnB,CAAC,CAAA,CAAA;AASD,MAAM,aAAa,GAAG,CAAC,GAAW,EAAkB,EAAE;IACrD,MAAM,SAAS,GAAG,IAAI,eAAe,CAAC,IAAI,GAAG,CAAC,GAAG,CAAC,CAAC,MAAM,CAAC,CAAA;IAC1D,OAAO;QACN,IAAI,EAAE,SAAS,CAAC,GAAG,CAAC,MAAM,CAAC,IAAI,SAAS;QACxC,KAAK,EAAE,SAAS,CAAC,GAAG,CAAC,OAAO,CAAC,IAAI,SAAS;QAC1C,KAAK,EAAE,SAAS,CAAC,GAAG,CAAC,OAAO,CAAC,IAAI,SAAS;QAC1C,iBAAiB,EAAE,SAAS,CAAC,GAAG,CAAC,mBAAmB,CAAC,IAAI,SAAS;KAClE,CAAA;AACF,CAAC,CAAA;AAED,yIAAyI;AACzI,6CAA6C;AAC7C,iEAAiE;AACjE,iBAAiB;AACjB,0EAA0E;AAC1E,uEAAuE;AACvE,sBAAsB;AACtB,KAAK;AACL,2DAA2D;AAC3D,wCAAwC;AAExC,8BAA8B;AAC9B,2EAA2E;AAC3E,uBAAuB;AACvB,kDAAkD;AAClD,wFAAwF;AACxF,qCAAqC;AACrC,yFAAyF;AACzF,uEAAuE;AACvE,qBAAqB;AACrB,KAAK;AACL,qBAAqB;AACrB,IAAI;AAEJ,MAAM,sBAAsB,GAAG,CAAO,IAAY,EAAE,YAAoB,EAAE,QAA0C,EAAE,iBAAoC,EAAE,aAAsB,EAAE,EAAE;;IACrL,IAAI,CAAC;QACJ,IAAI,OAAO,GAAG,EAAE,cAAc,EAAE,mCAAmC,EAAS,CAAC;QAC7E,MAAM,IAAI,GAAQ;YACjB,UAAU,EAAE,oBAAoB;YAChC,YAAY,EAAE,YAAY;YAC1B,IAAI;SACJ,CAAC;QAEF,
|
|
1
|
+
{"version":3,"file":"mcp-oauth.js","sourceRoot":"","sources":["../../../utils/mcp-oauth.ts"],"names":[],"mappings":";;;;;;;;;AAAA,OAAO,KAAK,MAAM,OAAO,CAAC;AAE1B,OAAO,GAAG,MAAM,WAAW,CAAC;AAI5B,MAAM,6BAA6B,GAAG,CAAO,YAAoB,EAA8C,EAAE;IAChH,MAAM,GAAG,GAAG,IAAI,GAAG,CAAC,YAAY,CAAC,CAAA;IACjC,MAAM,oBAAoB,GAAG,IAAI,GAAG,CACnC,uCAAuC,EACvC,GAAG,CACH,CAAA;IAED,qDAAqD;IACrD,MAAM,yBAAyB,GAAG,MAAM,KAAK,CAC5C,oBAAoB,CAAC,QAAQ,EAAE,CAC/B,CAAA;IACD,IAAI,CAAC,yBAAyB,CAAC,EAAE,EAAE,CAAC;QACnC,MAAM,IAAI,KAAK,CACd,+CAA+C;YAC/C,GAAG,yBAAyB,CAAC,MAAM,EAAE,CACrC,CAAA;IACF,CAAC;IAED,MAAM,iBAAiB,GAAG,CAAC,MAAM,yBAAyB,CAAC,IAAI,EAAE,CAAsC,CAAA;IACvG,OAAO,iBAAiB,CAAA;AACzB,CAAC,CAAA,CAAA;AAED;;GAEG;AACH,MAAM,qBAAqB,GAAG,CAAO,YAAoB,EAA6B,EAAE;;IACvF,MAAM,iBAAiB,GAAG,CAAC,MAAM,6BAA6B,CAAC,YAAY,CAAC,CAAsC,CAAA;IAClH,MAAM,WAAW,GAAG,iBAAiB,CAAC,qBAAqB,CAAC;IAE5D,IAAI,CAAC,KAAK,CAAC,OAAO,CAAC,WAAW,CAAC,IAAI,WAAW,CAAC,MAAM,KAAK,CAAC,EAAE,CAAC;QAC7D,MAAM,IAAI,KAAK,CACd,+DAA+D,CAC/D,CAAA;IACF,CAAC;IAED,qCAAqC;IACrC,MAAM,aAAa,GAAG,WAAW,CAAC,CAAC,CAAC,CAAA;IAEpC,uDAAuD;IACvD,MAAM,WAAW,GAAG,IAAI,GAAG,CAC1B,yCAAyC,EACzC,aAAa,CACb,CAAA;IACD,MAAM,gBAAgB,GAAG,MAAM,KAAK,CAAC,WAAW,CAAC,QAAQ,EAAE,CAAC,CAAA;IAE5D,IAAI,CAAC,gBAAgB,CAAC,EAAE,EAAE,CAAC;QAC1B,MAAM,IAAI,KAAK,CACd,iDAAiD;YACjD,GAAG,gBAAgB,CAAC,MAAM,EAAE,CAC5B,CAAA;IACF,CAAC;IAED,MAAM,QAAQ,GAAG,CAAC,MAAM,gBAAgB,CAAC,IAAI,EAAE,CAAqB,CAAC;IAErE,2BAA2B;IAC3B,IAAI,CAAC,QAAQ,CAAC,sBAAsB,IAAI,CAAC,QAAQ,CAAC,cAAc,EAAE,CAAC;QAClE,MAAM,IAAI,KAAK,CAAC,8CAA8C,CAAC,CAAA;IAChE,CAAC;IAED,wCAAwC;IACxC,IAAI,CAAC,CAAA,MAAA,QAAQ,CAAC,gCAAgC,0CAAE,QAAQ,CAAC,MAAM,CAAC,CAAA,EAAE,CAAC;QAClE,OAAO,CAAC,IAAI,CACX,+CAA+C;YAC/C,2BAA2B,CAC3B,CAAA;IACF,CAAC;IAED,OAAO,QAAQ,CAAA;AAChB,CAAC,CAAA,CAAA;AAED,MAAM,cAAc,GAAG,wCAAuH,EAAE,+EAAlH,QAA0B,EAAE,YAAsB,EAAE,cAAsB,QAAQ;;IAC/G,IAAI,CAAC,QAAQ,CAAC,qBAAqB;QAClC,MAAM,IAAI,KAAK,CAAC,qDAAqD,CAAC,CAAA;IAEvE,MAAM,mBAAmB,GAAuB;QAC/C,WAAW,EAAE,WAAW;QACxB,aAAa,EAAE,YAAY;QAC3B,WAAW,EAAE,MAAA,QAAQ,aAAR,QAAQ,uBAAR,QAAQ,CAAE,qBAAqB,mCAAI,CAAC,oBAAoB,EAAE,eAAe,CAAC;QACvF,cAAc,EAAE,MAAA,QAAQ,aAAR,QAAQ,uBAAR,QAAQ,CAAE,wBAAwB,mCAAI,CAAC,MAAM,CAAC;QAC9D,0BAA0B,EAAE,CAAA,MAAA,QAAQ,aAAR,QAAQ,uBAAR,QAAQ,CAAE,qCAAqC,0CAAE,MAAM,MAAI,MAAA,QAAQ,aAAR,QAAQ,uBAAR,QAAQ,CAAE,qCAAqC,0CAAE,QAAQ,CAAC,MAAM,CAAC,CAAA,CAAC,CAAC,CAAC,MAAM,CAAC,CAAC,CAAC,QAAQ,aAAR,QAAQ,uBAAR,QAAQ,CAAE,qCAAqC,CAAE,CAAC,CAAC;KACvN,CAAA;IAED,IAAI,MAAA,QAAQ,aAAR,QAAQ,uBAAR,QAAQ,CAAE,gBAAgB,0CAAE,MAAM;QACrC,mBAAmB,CAAC,KAAK,GAAG,QAAQ,CAAC,gBAAgB,CAAC,IAAI,CAAC,EAAE,CAAC,CAAC;IAEhE,MAAM,QAAQ,GAAG,MAAM,KAAK,CAAC,QAAQ,CAAC,qBAAqB,EAAE;QAC5D,MAAM,EAAE,MAAM;QACd,OAAO,EAAE;YACR,cAAc,EAAE,kBAAkB;YAClC,MAAM,EAAE,kBAAkB;SAC1B;QACD,IAAI,EAAE,IAAI,CAAC,SAAS,CAAC,mBAAmB,CAAC;KACzC,CAAC,CAAA;IAEF,IAAI,CAAC,QAAQ,CAAC,EAAE,EAAE,CAAC;QAClB,MAAM,SAAS,GAAG,MAAM,QAAQ,CAAC,IAAI,EAAE,CAAA;QACvC,MAAM,IAAI,KAAK,CACd,+BAA+B,QAAQ,CAAC,MAAM,MAAM,SAAS,EAAE,CAC/D,CAAA;IACF,CAAC;IACD,MAAM,WAAW,GAAG,CAAC,MAAM,QAAQ,CAAC,IAAI,EAAE,CAAsB,CAAA;IAEhE,6BAA6B;IAC7B,OAAO,WAAW,CAAA;AACnB,CAAC,CAAA,CAAA;AAED,MAAM,qBAAqB,GAAG,CAC7B,QAA0B,EAC1B,QAAgB,EAChB,WAAmB,EACnB,KAAa,EACb,aAAsB,EACtB,mBAA4B,EAC5B,QAAiB,EACC,EAAE;;IACpB,IAAI,KAAK,GAAG;QACX,aAAa,EAAE,MAAM;QACrB,SAAS,EAAE,QAAQ;QACnB,YAAY,EAAE,WAAW;QACzB,KAAK,EAAE,KAAK;QACZ,MAAM,EAAE,SAAS;QACjB,aAAa,EAAE,OAAO;KACC,CAAA;IACxB,IAAI,MAAA,QAAQ,aAAR,QAAQ,uBAAR,QAAQ,CAAE,gBAAgB,0CAAE,MAAM;QACrC,KAAK,CAAC,KAAK,GAAG,QAAQ,aAAR,QAAQ,uBAAR,QAAQ,CAAE,gBAAgB,CAAC,IAAI,CAAC,GAAG,CAAC,CAAA;IACnD,IAAI,mBAAmB;QACtB,KAAK,CAAC,cAAc,GAAG,aAAa,CAAC;IACtC,IAAI,mBAAmB;QACtB,KAAK,CAAC,qBAAqB,GAAG,mBAAmB,CAAC;IACnD,IAAI,QAAQ;QACX,KAAK,CAAC,QAAQ,GAAG,QAAQ,CAAC;IAC3B,MAAM,MAAM,GAAG,IAAI,eAAe,CAAC,KAAK,CAAC,CAAA;IAEzC,OAAO,GAAG,QAAQ,CAAC,sBAAsB,IAAI,MAAM,CAAC,QAAQ,EAAE,EAAE,CAAA;AACjE,CAAC,CAAA,CAAA;AAED,MAAM,cAAc,GAAG,CAAO,WAAmB,EAAE,WAAmB,EAAE,YAAoB,EAAE,EAAE;IAC/F,MAAM,MAAM,GAAG,aAAa,CAAC,WAAW,CAAC,CAAA;IAEzC,IAAI,MAAM,CAAC,KAAK,EAAE,CAAC;QAClB,MAAM,IAAI,KAAK,CACd,gBAAgB,MAAM,CAAC,KAAK,KAAK;YACjC,GAAG,MAAM,CAAC,iBAAiB,IAAI,eAAe,EAAE,CAChD,CAAA;IACF,CAAC;IAED,IAAI,MAAM,CAAC,KAAK,KAAK,WAAW,EAAE,CAAC;QAClC,MAAM,IAAI,KAAK,CAAC,gDAAgD,CAAC,CAAA;IAClE,CAAC;IAED,IAAI,CAAC,MAAM,CAAC,IAAI,EAAE,CAAC;QAClB,MAAM,IAAI,KAAK,CAAC,4BAA4B,CAAC,CAAA;IAC9C,CAAC;IAED,OAAO,MAAM,CAAC,IAAI,CAAA;AACnB,CAAC,CAAA,CAAA;AASD,MAAM,aAAa,GAAG,CAAC,GAAW,EAAkB,EAAE;IACrD,MAAM,SAAS,GAAG,IAAI,eAAe,CAAC,IAAI,GAAG,CAAC,GAAG,CAAC,CAAC,MAAM,CAAC,CAAA;IAC1D,OAAO;QACN,IAAI,EAAE,SAAS,CAAC,GAAG,CAAC,MAAM,CAAC,IAAI,SAAS;QACxC,KAAK,EAAE,SAAS,CAAC,GAAG,CAAC,OAAO,CAAC,IAAI,SAAS;QAC1C,KAAK,EAAE,SAAS,CAAC,GAAG,CAAC,OAAO,CAAC,IAAI,SAAS;QAC1C,iBAAiB,EAAE,SAAS,CAAC,GAAG,CAAC,mBAAmB,CAAC,IAAI,SAAS;KAClE,CAAA;AACF,CAAC,CAAA;AAED,yIAAyI;AACzI,6CAA6C;AAC7C,iEAAiE;AACjE,iBAAiB;AACjB,0EAA0E;AAC1E,uEAAuE;AACvE,sBAAsB;AACtB,KAAK;AACL,2DAA2D;AAC3D,wCAAwC;AAExC,8BAA8B;AAC9B,2EAA2E;AAC3E,uBAAuB;AACvB,kDAAkD;AAClD,wFAAwF;AACxF,qCAAqC;AACrC,yFAAyF;AACzF,uEAAuE;AACvE,qBAAqB;AACrB,KAAK;AACL,qBAAqB;AACrB,IAAI;AAEJ,MAAM,sBAAsB,GAAG,CAAO,IAAY,EAAE,YAAoB,EAAE,QAA0C,EAAE,iBAAoC,EAAE,aAAsB,EAAE,EAAE;;IACrL,IAAI,CAAC;QACJ,IAAI,OAAO,GAAG,EAAE,cAAc,EAAE,mCAAmC,EAAS,CAAC;QAC7E,MAAM,IAAI,GAAQ;YACjB,UAAU,EAAE,oBAAoB;YAChC,YAAY,EAAE,YAAY;YAC1B,IAAI;SACJ,CAAC;QAEF,IAAG,MAAA,QAAQ,aAAR,QAAQ,uBAAR,QAAQ,CAAE,qCAAqC,0CAAE,QAAQ,CAAC,MAAM,CAAC;YAC3D,IAAI,CAAC,SAAS,GAAG,iBAAiB,CAAC,SAAS,CAAA;QACrD,IAAI,CAAC,CAAA,MAAA,QAAQ,aAAR,QAAQ,uBAAR,QAAQ,CAAE,qCAAqC,0CAAE,QAAQ,CAAC,MAAM,CAAC,CAAA,KAAI,MAAA,QAAQ,aAAR,QAAQ,uBAAR,QAAQ,CAAE,qCAAqC,0CAAE,QAAQ,CAAC,oBAAoB,CAAC,CAAA;YACxJ,IAAI,CAAC,aAAa,GAAG,iBAAiB,CAAC,aAAa,CAAC;aACjD,IAAI,MAAA,QAAQ,aAAR,QAAQ,uBAAR,QAAQ,CAAE,qCAAqC,0CAAE,QAAQ,CAAC,qBAAqB,CAAC,EAAE,CAAC;YAC3F,MAAM,KAAK,GAAG,MAAM,CAAC,IAAI,CAAC,GAAG,iBAAiB,CAAC,SAAS,IAAI,iBAAiB,CAAC,aAAa,EAAE,CAAC,CAAC,QAAQ,CAAC,QAAQ,CAAC,CAAC;YAClH,OAAO,CAAC,aAAa,GAAG,SAAS,KAAK,EAAE,CAAA;QACzC,CAAC;QAED,IAAI,MAAA,QAAQ,aAAR,QAAQ,uBAAR,QAAQ,CAAE,gCAAgC,0CAAE,MAAM;YACrD,IAAI,CAAC,aAAa,GAAG,aAAa,CAAC;QAEpC,MAAM,QAAQ,GAAG,IAAI,eAAe,CAAC,IAAI,CAAC,CAAC;QAC3C,IAAI,SAAS,GAAG,MAAM,KAAK,CAAC,IAAI,CAAC,QAAQ,CAAC,cAAc,EAAE,QAAQ,EAAE,EAAE,OAAO,EAAE,CAAC,CAAC,IAAI,CAAC,CAAC,GAAG,EAAE,EAAE;YAC7F,OAAO,GAAG,CAAC,IAAI,CAAC;QACjB,CAAC,CAAC,CAAC,KAAK,CAAC,CAAC,GAAG,EAAE,EAAE;YAChB,GAAG,CAAC,KAAK,CAAC,IAAI,CAAC,SAAS,CAAC,GAAG,CAAC,CAAC,CAAC;YAC/B,GAAG,CAAC,KAAK,CAAC,yCAAyC,GAAG,GAAG,CAAC,CAAC;YAC3D,MAAM,GAAG,CAAC;QACX,CAAC,CAAQ,CAAC;QAEV,SAAS,GAAG,MAAM,CAAC,MAAM,CAAC,SAAS,EAAE,EAAE,SAAS,EAAE,MAAM,cAAc,CAAC,CAAA,SAAS,aAAT,SAAS,uBAAT,SAAS,CAAE,UAAU,MAAI,SAAS,aAAT,SAAS,uBAAT,SAAS,CAAE,MAAM,CAAA,KAAI,SAAS,aAAT,SAAS,uBAAT,SAAS,CAAE,MAAM,CAAA,CAAC,EAAE,CAAC,CAAA;QAC1I,OAAO,SAAS,CAAC;IAClB,CAAC;IAAC,OAAO,KAAK,EAAE,CAAC;QAChB,MAAM,KAAK,CAAC;IACb,CAAC;AACF,CAAC,CAAA,CAAA;AAED,MAAM,uBAAuB,GAAG,CAAO,QAA0C,EAAE,iBAAoC,EAAE,aAAqB,EAAE,EAAE;;IACjJ,IAAI,CAAC;QACJ,IAAI,OAAO,GAAG,EAAE,cAAc,EAAE,mCAAmC,EAAS,CAAC;QAC7E,MAAM,IAAI,GAAQ;YACjB,UAAU,EAAE,eAAe;YAC3B,aAAa;SACb,CAAC;QAEF,IAAG,MAAA,QAAQ,aAAR,QAAQ,uBAAR,QAAQ,CAAE,qCAAqC,0CAAE,QAAQ,CAAC,MAAM,CAAC;YAC3D,IAAI,CAAC,SAAS,GAAG,iBAAiB,CAAC,SAAS,CAAA;QACrD,IAAI,CAAC,CAAA,MAAA,QAAQ,aAAR,QAAQ,uBAAR,QAAQ,CAAE,qCAAqC,0CAAE,QAAQ,CAAC,MAAM,CAAC,CAAA,KAAI,MAAA,QAAQ,aAAR,QAAQ,uBAAR,QAAQ,CAAE,qCAAqC,0CAAE,QAAQ,CAAC,oBAAoB,CAAC,CAAA;YACxJ,IAAI,CAAC,aAAa,GAAG,iBAAiB,CAAC,aAAa,CAAC;aACjD,IAAI,MAAA,QAAQ,aAAR,QAAQ,uBAAR,QAAQ,CAAE,qCAAqC,0CAAE,QAAQ,CAAC,qBAAqB,CAAC,EAAE,CAAC;YAC3F,MAAM,KAAK,GAAG,MAAM,CAAC,IAAI,CAAC,GAAG,iBAAiB,CAAC,SAAS,IAAI,iBAAiB,CAAC,aAAa,EAAE,CAAC,CAAC,QAAQ,CAAC,QAAQ,CAAC,CAAC;YAClH,OAAO,CAAC,aAAa,GAAG,SAAS,KAAK,EAAE,CAAA;QACzC,CAAC;QAED,MAAM,QAAQ,GAAG,IAAI,eAAe,CAAC,IAAI,CAAC,CAAC;QAC3C,IAAI,SAAS,GAAG,MAAM,KAAK,CAAC,IAAI,CAAC,QAAQ,CAAC,cAAc,EAAE,QAAQ,EAAE,EAAE,OAAO,EAAE,CAAC,CAAC,IAAI,CAAC,CAAC,GAAG,EAAE,EAAE;YAC7F,OAAO,GAAG,CAAC,IAAI,CAAC;QACjB,CAAC,CAAC,CAAC,KAAK,CAAC,CAAC,GAAG,EAAE,EAAE;YAChB,GAAG,CAAC,KAAK,CAAC,IAAI,CAAC,SAAS,CAAC,GAAG,CAAC,CAAC,CAAC;YAC/B,GAAG,CAAC,KAAK,CAAC,sCAAsC,GAAG,GAAG,CAAC,CAAC;YACxD,MAAM,GAAG,CAAC;QACX,CAAC,CAAQ,CAAC;QAEV,SAAS,GAAG,MAAM,CAAC,MAAM,CAAC,SAAS,EAAE,EAAE,SAAS,EAAE,MAAM,cAAc,CAAC,CAAA,SAAS,aAAT,SAAS,uBAAT,SAAS,CAAE,UAAU,MAAI,SAAS,aAAT,SAAS,uBAAT,SAAS,CAAE,MAAM,CAAA,KAAI,SAAS,aAAT,SAAS,uBAAT,SAAS,CAAE,MAAM,CAAA,CAAC,EAAE,CAAC,CAAA;QAC1I,OAAO,SAAS,CAAC;IAClB,CAAC;IAAC,OAAO,KAAK,EAAE,CAAC;QAChB,MAAM,KAAK,CAAC;IACb,CAAC;AAEF,CAAC,CAAA,CAAA;AAED,MAAM,cAAc,GAAG,YAAkD,EAAE,mDAA7C,YAAoB,IAAI;IACrD,OAAO,CAAC,IAAI,CAAC,GAAG,EAAE,GAAG,CAAC,CAAC,SAAS,GAAG,EAAE,CAAC,GAAG,IAAI,CAAC,CAAC,CAAC,QAAQ,EAAE,CAAC;AAC5D,CAAC,CAAA,CAAA;AAED,MAAM,CAAC,MAAM,QAAQ,GAAG,EAAE,6BAA6B,EAAE,qBAAqB,EAAE,cAAc,EAAE,qBAAqB,EAAE,cAAc,EAAE,sBAAsB,EAAE,uBAAuB,EAAE,CAAC"}
|
|
@@ -1,8 +1,13 @@
|
|
|
1
1
|
import { OAuthKeys, OAuthMetadata } from "../type";
|
|
2
2
|
export declare const OAuth: {
|
|
3
3
|
discoverOAuthOpenIdMetadata: (providerUrl: string) => Promise<OAuthMetadata>;
|
|
4
|
-
|
|
5
|
-
|
|
4
|
+
generatePKCE: (supportedMethods?: string[], code_verifier?: string) => {
|
|
5
|
+
code_verifier: string;
|
|
6
|
+
code_challenge: string | null;
|
|
7
|
+
code_challenge_method: "S256" | "plain" | null;
|
|
8
|
+
};
|
|
9
|
+
GetOAuthAccessToken: (code: string, providerInfo: Record<OAuthKeys, string>, code_verfier: string) => Promise<any>;
|
|
10
|
+
GetOAuthToken: (authValue: string) => Promise<any>;
|
|
6
11
|
GetOAuthRefreshToken: (providerInfo: Record<OAuthKeys, string>) => Promise<any>;
|
|
7
12
|
SetTokenExpiry: (expiresIn?: number) => Promise<string>;
|
|
8
13
|
};
|
package/dist/esm/utils/oauth.js
CHANGED
|
@@ -8,6 +8,8 @@ var __awaiter = (this && this.__awaiter) || function (thisArg, _arguments, P, ge
|
|
|
8
8
|
});
|
|
9
9
|
};
|
|
10
10
|
import axios from "axios";
|
|
11
|
+
import log from "../logger";
|
|
12
|
+
import { createHash, randomBytes } from "crypto";
|
|
11
13
|
const OPENID_CONFIGURATION_URLS = {
|
|
12
14
|
// Google
|
|
13
15
|
google: "https://accounts.google.com",
|
|
@@ -103,45 +105,42 @@ const GetOAuthToken = (authValue) => __awaiter(void 0, void 0, void 0, function*
|
|
|
103
105
|
const providerInfo = Object.fromEntries(provisionList.map((item) => [item.Key, item.Value]));
|
|
104
106
|
// 🔹 Step 1: If no token → fetch new one
|
|
105
107
|
if (!providerInfo.Token) {
|
|
106
|
-
|
|
107
|
-
providerInfo.Token = (tokenInfo === null || tokenInfo === void 0 ? void 0 : tokenInfo.access_token) || (tokenInfo === null || tokenInfo === void 0 ? void 0 : tokenInfo.accessToken);
|
|
108
|
-
providerInfo.RefreshToken = (tokenInfo === null || tokenInfo === void 0 ? void 0 : tokenInfo.refresh_token) || (tokenInfo === null || tokenInfo === void 0 ? void 0 : tokenInfo.refreshToken) || null;
|
|
109
|
-
providerInfo.Expire = yield SetTokenExpiry(tokenInfo === null || tokenInfo === void 0 ? void 0 : tokenInfo.expires_in);
|
|
108
|
+
return yield GetOAuthAccessToken("", providerInfo, "");
|
|
110
109
|
}
|
|
111
110
|
// 🔹 Step 2: Check expiry
|
|
112
111
|
const isExpired = !providerInfo.Expire || Number(providerInfo.Expire) <= Date.now();
|
|
113
112
|
if (isExpired && providerInfo.RefreshToken) {
|
|
114
|
-
|
|
115
|
-
providerInfo.Token = (refreshTokenInfo === null || refreshTokenInfo === void 0 ? void 0 : refreshTokenInfo.access_token) || (refreshTokenInfo === null || refreshTokenInfo === void 0 ? void 0 : refreshTokenInfo.accessToken);
|
|
116
|
-
providerInfo.RefreshToken = (refreshTokenInfo === null || refreshTokenInfo === void 0 ? void 0 : refreshTokenInfo.refresh_token) || (refreshTokenInfo === null || refreshTokenInfo === void 0 ? void 0 : refreshTokenInfo.refreshToken);
|
|
117
|
-
providerInfo.Expire = yield SetTokenExpiry(refreshTokenInfo === null || refreshTokenInfo === void 0 ? void 0 : refreshTokenInfo.expires_in);
|
|
113
|
+
return yield GetOAuthRefreshToken(providerInfo);
|
|
118
114
|
}
|
|
119
|
-
return providerInfo;
|
|
120
115
|
});
|
|
121
|
-
const GetOAuthAccessToken = (providerInfo) => __awaiter(void 0, void 0, void 0, function* () {
|
|
116
|
+
const GetOAuthAccessToken = (code, providerInfo, code_verfier) => __awaiter(void 0, void 0, void 0, function* () {
|
|
122
117
|
try {
|
|
123
|
-
|
|
124
|
-
|
|
125
|
-
let p = yield acc;
|
|
126
|
-
return p + `&${c}=${encodeURIComponent(x[c])}`;
|
|
127
|
-
}), Promise.resolve(''));
|
|
128
|
-
});
|
|
129
|
-
let url = providerInfo.AccessTokenURL; //oauth/v3/token if not work
|
|
130
|
-
const formData = yield formUrlEncoded({
|
|
118
|
+
let headers = { "Content-Type": 'application/x-www-form-urlencoded' };
|
|
119
|
+
const keys = {
|
|
131
120
|
grant_type: "authorization_code",
|
|
121
|
+
redirect_uri: providerInfo.CallBackURL,
|
|
132
122
|
client_id: providerInfo.ClientId,
|
|
133
123
|
client_secret: providerInfo.ClientSecret,
|
|
134
|
-
|
|
135
|
-
|
|
136
|
-
|
|
137
|
-
|
|
138
|
-
|
|
124
|
+
code
|
|
125
|
+
};
|
|
126
|
+
// if(providerInfo??.includes('none'))
|
|
127
|
+
// keys.client_id = clientCredentials.client_id
|
|
128
|
+
// if (!metaData?.token_endpoint_auth_methods_supported?.includes('none') && metaData?.token_endpoint_auth_methods_supported?.includes('client_secret_post'))
|
|
129
|
+
// keys.client_secret = clientCredentials.client_secret;
|
|
130
|
+
// else if (metaData?.token_endpoint_auth_methods_supported?.includes('client_secret_basic')) {
|
|
131
|
+
// const token = Buffer.from(`${clientCredentials.client_id}:${clientCredentials.client_secret}`).toString("base64");
|
|
132
|
+
// headers.Authorization = `Basic ${token}`
|
|
133
|
+
// }
|
|
134
|
+
let url = providerInfo.AccessTokenURL; //oauth/v3/token if not work
|
|
135
|
+
const formData = new URLSearchParams(keys);
|
|
136
|
+
let tokenInfo = yield axios.post(url, formData, { headers }).then((res) => {
|
|
139
137
|
return res.data;
|
|
140
138
|
}).catch((err) => {
|
|
141
139
|
console.error(JSON.stringify(err));
|
|
142
140
|
console.error("Error in Axios call of Token Validation" + err);
|
|
143
141
|
throw err;
|
|
144
142
|
});
|
|
143
|
+
tokenInfo = Object.assign(tokenInfo, { expire_at: yield SetTokenExpiry((tokenInfo === null || tokenInfo === void 0 ? void 0 : tokenInfo.expires_in) || (tokenInfo === null || tokenInfo === void 0 ? void 0 : tokenInfo.expiry) || (tokenInfo === null || tokenInfo === void 0 ? void 0 : tokenInfo.expire)) });
|
|
145
144
|
return tokenInfo;
|
|
146
145
|
}
|
|
147
146
|
catch (error) {
|
|
@@ -150,13 +149,28 @@ const GetOAuthAccessToken = (providerInfo) => __awaiter(void 0, void 0, void 0,
|
|
|
150
149
|
});
|
|
151
150
|
const GetOAuthRefreshToken = (providerInfo) => __awaiter(void 0, void 0, void 0, function* () {
|
|
152
151
|
try {
|
|
153
|
-
let
|
|
154
|
-
const
|
|
152
|
+
let headers = { "Content-Type": 'application/x-www-form-urlencoded' };
|
|
153
|
+
const keys = {
|
|
154
|
+
grant_type: "refresh_token",
|
|
155
|
+
refresh_token: providerInfo.RefreshToken
|
|
156
|
+
};
|
|
157
|
+
// if(metaData?.token_endpoint_auth_methods_supported?.includes('none'))
|
|
158
|
+
// keys.client_id = clientCredentials.client_id
|
|
159
|
+
// if (!metaData?.token_endpoint_auth_methods_supported?.includes('none') && metaData?.token_endpoint_auth_methods_supported?.includes('client_secret_post'))
|
|
160
|
+
// keys.client_secret = clientCredentials.client_secret;
|
|
161
|
+
// else if (metaData?.token_endpoint_auth_methods_supported?.includes('client_secret_basic')) {
|
|
162
|
+
// const token = Buffer.from(`${clientCredentials.client_id}:${clientCredentials.client_secret}`).toString("base64");
|
|
163
|
+
// headers.Authorization = `Basic ${token}`
|
|
164
|
+
// }
|
|
165
|
+
const formData = new URLSearchParams(keys);
|
|
166
|
+
let tokenInfo = yield axios.post(providerInfo.RefreshTokenURL, formData, { headers }).then((res) => {
|
|
155
167
|
return res.data;
|
|
156
168
|
}).catch((err) => {
|
|
157
|
-
|
|
169
|
+
log.error(JSON.stringify(err));
|
|
170
|
+
log.error("Error in Axios Call of refresh Token" + err);
|
|
158
171
|
throw err;
|
|
159
172
|
});
|
|
173
|
+
tokenInfo = Object.assign(tokenInfo, { expire_at: yield SetTokenExpiry((tokenInfo === null || tokenInfo === void 0 ? void 0 : tokenInfo.expires_in) || (tokenInfo === null || tokenInfo === void 0 ? void 0 : tokenInfo.expiry) || (tokenInfo === null || tokenInfo === void 0 ? void 0 : tokenInfo.expire)) });
|
|
160
174
|
return tokenInfo;
|
|
161
175
|
}
|
|
162
176
|
catch (error) {
|
|
@@ -179,5 +193,24 @@ const SetTokenExpiry = (...args_1) => __awaiter(void 0, [...args_1], void 0, fun
|
|
|
179
193
|
// throw error;
|
|
180
194
|
// }
|
|
181
195
|
// }
|
|
182
|
-
|
|
196
|
+
const generatePKCE = (supportedMethods, code_verifier) => {
|
|
197
|
+
if (!code_verifier)
|
|
198
|
+
code_verifier = randomBytes(32).toString('base64url');
|
|
199
|
+
let code_challenge_method = null;
|
|
200
|
+
if (supportedMethods === null || supportedMethods === void 0 ? void 0 : supportedMethods.includes('S256'))
|
|
201
|
+
code_challenge_method = 'S256';
|
|
202
|
+
else if (supportedMethods === null || supportedMethods === void 0 ? void 0 : supportedMethods.includes('plain'))
|
|
203
|
+
code_challenge_method = 'plain';
|
|
204
|
+
let code_challenge = null;
|
|
205
|
+
if (code_challenge_method === 'S256')
|
|
206
|
+
code_challenge = createHash('sha256').update(code_verifier).digest('base64url');
|
|
207
|
+
else if (code_challenge_method === 'plain')
|
|
208
|
+
code_challenge = code_verifier;
|
|
209
|
+
return {
|
|
210
|
+
code_verifier,
|
|
211
|
+
code_challenge,
|
|
212
|
+
code_challenge_method
|
|
213
|
+
};
|
|
214
|
+
};
|
|
215
|
+
export const OAuth = { discoverOAuthOpenIdMetadata, generatePKCE, GetOAuthAccessToken, GetOAuthToken, GetOAuthRefreshToken, SetTokenExpiry };
|
|
183
216
|
//# sourceMappingURL=oauth.js.map
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"oauth.js","sourceRoot":"","sources":["../../../utils/oauth.ts"],"names":[],"mappings":";;;;;;;;;AAAA,OAAO,KAAK,MAAM,OAAO,CAAC;
|
|
1
|
+
{"version":3,"file":"oauth.js","sourceRoot":"","sources":["../../../utils/oauth.ts"],"names":[],"mappings":"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"}
|