@nsshunt/stsutils 1.15.11 → 1.15.13

This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
Files changed (44) hide show
  1. package/dist/stsutils.mjs +4595 -0
  2. package/dist/stsutils.umd.js +6 -0
  3. package/package.json +10 -3
  4. package/.eslintrc.json +0 -27
  5. package/.github/dependabot.yml +0 -13
  6. package/.github/workflows/npm-publish.yml +0 -54
  7. package/babel.config.json +0 -6
  8. package/build.sh +0 -29
  9. package/dist/errorhandling.js +0 -15
  10. package/dist/errorhandling.js.map +0 -1
  11. package/dist/index.js +0 -36
  12. package/dist/index.js.map +0 -1
  13. package/dist/oauth2terms.js +0 -101
  14. package/dist/oauth2terms.js.map +0 -1
  15. package/dist/sleep.js +0 -13
  16. package/dist/sleep.js.map +0 -1
  17. package/dist/stsoptionsbase.js +0 -24
  18. package/dist/stsoptionsbase.js.map +0 -1
  19. package/dist/stsutils.test.js +0 -8
  20. package/dist/stsutils.test.js.map +0 -1
  21. package/dist/validate.js +0 -41
  22. package/dist/validate.js.map +0 -1
  23. package/src/errorhandling.ts +0 -24
  24. package/src/index.ts +0 -25
  25. package/src/oauth2terms.ts +0 -98
  26. package/src/sleep.ts +0 -8
  27. package/src/stsoptionsbase.ts +0 -27
  28. package/src/stsutils.test.js +0 -10
  29. package/src/validate.ts +0 -39
  30. package/tsconfig.json +0 -14
  31. package/types/errorhandling.d.ts +0 -12
  32. package/types/errorhandling.d.ts.map +0 -1
  33. package/types/index.d.ts +0 -11
  34. package/types/index.d.ts.map +0 -1
  35. package/types/oauth2terms.d.ts +0 -64
  36. package/types/oauth2terms.d.ts.map +0 -1
  37. package/types/sleep.d.ts +0 -3
  38. package/types/sleep.d.ts.map +0 -1
  39. package/types/stsoptionsbase.d.ts +0 -7
  40. package/types/stsoptionsbase.d.ts.map +0 -1
  41. package/types/stsutils.test.d.ts +0 -1
  42. package/types/stsutils.test.d.ts.map +0 -1
  43. package/types/validate.d.ts +0 -5
  44. package/types/validate.d.ts.map +0 -1
@@ -1,101 +0,0 @@
1
- "use strict";
2
- Object.defineProperty(exports, "__esModule", { value: true });
3
- exports.compareParameterTypes = exports.OAuth2ParameterErrorType = exports.OIDCAddressClaim = exports.OIDCStandardClaim = exports.OAuth2ParameterType = void 0;
4
- // Ref: https://datatracker.ietf.org/doc/html/rfc6749#appendix-A
5
- var OAuth2ParameterType;
6
- (function (OAuth2ParameterType) {
7
- OAuth2ParameterType["AUDIENCE"] = "AUDIENCE";
8
- OAuth2ParameterType["CLIENT_ID"] = "client_id";
9
- OAuth2ParameterType["CLIENT_SECRET"] = "client_secret";
10
- OAuth2ParameterType["RESPONSE_TYPE"] = "response_type";
11
- OAuth2ParameterType["SCOPE"] = "scope";
12
- OAuth2ParameterType["STATE"] = "state";
13
- OAuth2ParameterType["REDIRECT_URI"] = "redirect_uri";
14
- OAuth2ParameterType["ERROR"] = "error";
15
- OAuth2ParameterType["ERROR_DESCRIPTION"] = "error_description";
16
- OAuth2ParameterType["ERROR_CODES"] = "error_codes";
17
- OAuth2ParameterType["ERROR_URI"] = "error_uri";
18
- OAuth2ParameterType["GRANT_TYPE"] = "grant_type";
19
- OAuth2ParameterType["CODE"] = "code";
20
- OAuth2ParameterType["ACCESS_TOKEN"] = "access_token";
21
- OAuth2ParameterType["TOKEN_TYPE"] = "token_type";
22
- OAuth2ParameterType["EXPIRES_IN"] = "expires_in";
23
- OAuth2ParameterType["USERNAME"] = "username";
24
- OAuth2ParameterType["PASSWORD"] = "password";
25
- OAuth2ParameterType["REFRESH_TOKEN"] = "refresh_token";
26
- OAuth2ParameterType["RESPONSE_MODE"] = "response_mode";
27
- OAuth2ParameterType["TIMESTAMP"] = "timestamp";
28
- OAuth2ParameterType["TRACE_ID"] = "trace_id";
29
- OAuth2ParameterType["CORRELATION_ID"] = "correlation_id"; // STS Extension
30
- })(OAuth2ParameterType = exports.OAuth2ParameterType || (exports.OAuth2ParameterType = {}));
31
- // OIDC Standard Claims
32
- // Ref: https://openid.net/specs/openid-connect-core-1_0.html#Claims
33
- var OIDCStandardClaim;
34
- (function (OIDCStandardClaim) {
35
- OIDCStandardClaim["SUB"] = "sub";
36
- OIDCStandardClaim["NAME"] = "name";
37
- OIDCStandardClaim["GIVEN_NAME"] = "given_name";
38
- OIDCStandardClaim["FAMILY_NAME"] = "family_name";
39
- OIDCStandardClaim["MIDDLE_NAME"] = "middle_name";
40
- OIDCStandardClaim["NICKNAME"] = "nickname";
41
- OIDCStandardClaim["PREFERRED_USERNAME"] = "preferred_username";
42
- OIDCStandardClaim["PROFILE"] = "profile";
43
- OIDCStandardClaim["PICTURE"] = "picture";
44
- OIDCStandardClaim["WEBSITE"] = "website";
45
- OIDCStandardClaim["EMAIL"] = "email";
46
- OIDCStandardClaim["EMAIL_VERIFIED"] = "email_verified";
47
- OIDCStandardClaim["GENDER"] = "gender";
48
- OIDCStandardClaim["BIRTHDATE"] = "birthdate";
49
- OIDCStandardClaim["ZONEINFO"] = "zoneinfo";
50
- OIDCStandardClaim["LOCALE"] = "locale";
51
- OIDCStandardClaim["PHONE_NUMBER"] = "phone_number";
52
- OIDCStandardClaim["PHONE_NUMBER_VERIFIED"] = "phone_number_verified";
53
- OIDCStandardClaim["ADDRESS"] = "address";
54
- OIDCStandardClaim["CLIENT_SECRET"] = "client_secret";
55
- OIDCStandardClaim["NONCE"] = "nonce"; // STS Extension
56
- })(OIDCStandardClaim = exports.OIDCStandardClaim || (exports.OIDCStandardClaim = {}));
57
- var OIDCAddressClaim;
58
- (function (OIDCAddressClaim) {
59
- OIDCAddressClaim["FORMATTED"] = "formatted";
60
- OIDCAddressClaim["STREET_ADDRESS"] = "street_address";
61
- OIDCAddressClaim["LOCALITY"] = "locality";
62
- OIDCAddressClaim["REGION"] = "region";
63
- OIDCAddressClaim["COUNTRY"] = "country";
64
- })(OIDCAddressClaim = exports.OIDCAddressClaim || (exports.OIDCAddressClaim = {}));
65
- class OAuth2ParameterErrorType {
66
- static NOT_EQUAL = {
67
- code: 'STS_OAUTH2_ERR_0001',
68
- description: 'Parameter values not equal.'
69
- };
70
- static NOT_PRESENT = {
71
- code: 'STS_OAUTH2_ERR_0002',
72
- description: 'Parameter not provided.'
73
- };
74
- static INVALID_FORMAT = {
75
- code: 'STS_OAUTH2_ERR_0003',
76
- description: 'Parameter value format invalid.'
77
- };
78
- static EXPIRED = {
79
- code: 'STS_OAUTH2_ERR_0004',
80
- description: 'Parameter value expired.'
81
- };
82
- }
83
- exports.OAuth2ParameterErrorType = OAuth2ParameterErrorType;
84
- function compareParameterTypes(source1, source2, authParameterTypes) {
85
- const errors = [];
86
- for (let i = 0; i < authParameterTypes.length; i++) {
87
- const authParameterType = authParameterTypes[i];
88
- if (source1[i].localeCompare(source2[i]) !== 0) {
89
- const error = {
90
- error: OAuth2ParameterErrorType.NOT_EQUAL.code,
91
- error_description: OAuth2ParameterErrorType.NOT_EQUAL.description,
92
- timestamp: Date.now(),
93
- details: `${OAuth2ParameterErrorType.NOT_EQUAL.description}: Parameter: [${authParameterType}]`
94
- };
95
- errors.push(error);
96
- }
97
- }
98
- return errors;
99
- }
100
- exports.compareParameterTypes = compareParameterTypes;
101
- //# sourceMappingURL=oauth2terms.js.map
@@ -1 +0,0 @@
1
- {"version":3,"file":"oauth2terms.js","sourceRoot":"","sources":["../src/oauth2terms.ts"],"names":[],"mappings":";;;AAEA,gEAAgE;AAChE,IAAY,mBAwBX;AAxBD,WAAY,mBAAmB;IAC9B,4CAAqB,CAAA;IACrB,8CAAuB,CAAA;IACvB,sDAA+B,CAAA;IAC/B,sDAA+B,CAAA;IAC/B,sCAAe,CAAA;IACf,sCAAe,CAAA;IACf,oDAA6B,CAAA;IAC7B,sCAAe,CAAA;IACf,8DAAuC,CAAA;IACvC,kDAA2B,CAAA;IAC3B,8CAAuB,CAAA;IACvB,gDAAyB,CAAA;IACzB,oCAAa,CAAA;IACb,oDAA6B,CAAA;IAC7B,gDAAyB,CAAA;IACzB,gDAAyB,CAAA;IACzB,4CAAqB,CAAA;IACrB,4CAAqB,CAAA;IACrB,sDAA+B,CAAA;IAC/B,sDAA+B,CAAA;IAC/B,8CAAuB,CAAA;IACvB,4CAAqB,CAAA;IACrB,wDAAiC,CAAA,CAAC,gBAAgB;AACnD,CAAC,EAxBW,mBAAmB,GAAnB,2BAAmB,KAAnB,2BAAmB,QAwB9B;AAED,uBAAuB;AACvB,oEAAoE;AACpE,IAAY,iBAsBX;AAtBD,WAAY,iBAAiB;IAC5B,gCAAW,CAAA;IACX,kCAAa,CAAA;IACb,8CAAyB,CAAA;IACzB,gDAA2B,CAAA;IAC3B,gDAA2B,CAAA;IAC3B,0CAAqB,CAAA;IACrB,8DAAyC,CAAA;IACzC,wCAAmB,CAAA;IACnB,wCAAmB,CAAA;IACnB,wCAAmB,CAAA;IACnB,oCAAe,CAAA;IACf,sDAAiC,CAAA;IACjC,sCAAiB,CAAA;IACjB,4CAAuB,CAAA;IACvB,0CAAqB,CAAA;IACrB,sCAAiB,CAAA;IACjB,kDAA6B,CAAA;IAC7B,oEAA+C,CAAA;IAC/C,wCAAmB,CAAA;IACnB,oDAA+B,CAAA;IAC/B,oCAAe,CAAA,CAAC,gBAAgB;AACjC,CAAC,EAtBW,iBAAiB,GAAjB,yBAAiB,KAAjB,yBAAiB,QAsB5B;AAED,IAAY,gBAMX;AAND,WAAY,gBAAgB;IAC3B,2CAAuB,CAAA;IACvB,qDAAiC,CAAA;IACjC,yCAAqB,CAAA;IACrB,qCAAiB,CAAA;IACjB,uCAAmB,CAAA;AACpB,CAAC,EANW,gBAAgB,GAAhB,wBAAgB,KAAhB,wBAAgB,QAM3B;AAED,MAAa,wBAAwB;IACjC,MAAM,CAAU,SAAS,GAAc;QACnC,IAAI,EAAE,qBAAqB;QAC3B,WAAW,EAAE,6BAA6B;KAC7C,CAAA;IACD,MAAM,CAAU,WAAW,GAAc;QACrC,IAAI,EAAE,qBAAqB;QAC3B,WAAW,EAAE,yBAAyB;KACzC,CAAA;IACD,MAAM,CAAU,cAAc,GAAc;QACxC,IAAI,EAAE,qBAAqB;QAC3B,WAAW,EAAE,iCAAiC;KACjD,CAAA;IACD,MAAM,CAAU,OAAO,GAAc;QACjC,IAAI,EAAE,qBAAqB;QAC3B,WAAW,EAAE,0BAA0B;KAC1C,CAAA;;AAhBL,4DAiBC;AAED,SAAgB,qBAAqB,CAAC,OAAiB,EAAE,OAAiB,EAAE,kBAAyC;IACjH,MAAM,MAAM,GAAmB,EAAG,CAAC;IACnC,KAAK,IAAI,CAAC,GAAC,CAAC,EAAG,CAAC,GAAG,kBAAkB,CAAC,MAAM,EAAE,CAAC,EAAE,EAAE;QAC/C,MAAM,iBAAiB,GAAG,kBAAkB,CAAC,CAAC,CAAC,CAAC;QAChD,IAAI,OAAO,CAAC,CAAC,CAAC,CAAC,aAAa,CAAC,OAAO,CAAC,CAAC,CAAC,CAAC,KAAK,CAAC,EAAE;YAC5C,MAAM,KAAK,GAAiB;gBACxB,KAAK,EAAE,wBAAwB,CAAC,SAAS,CAAC,IAAI;gBAC9C,iBAAiB,EAAE,wBAAwB,CAAC,SAAS,CAAC,WAAW;gBACjE,SAAS,EAAE,IAAI,CAAC,GAAG,EAAE;gBACrB,OAAO,EAAE,GAAG,wBAAwB,CAAC,SAAS,CAAC,WAAW,iBAAiB,iBAAiB,GAAG;aAClG,CAAA;YACD,MAAM,CAAC,IAAI,CAAC,KAAK,CAAC,CAAC;SACtB;KACJ;IACD,OAAO,MAAM,CAAC;AAClB,CAAC;AAfD,sDAeC"}
package/dist/sleep.js DELETED
@@ -1,13 +0,0 @@
1
- "use strict";
2
- Object.defineProperty(exports, "__esModule", { value: true });
3
- exports.JestSleep = exports.Sleep = void 0;
4
- async function Sleep(milliseconds = 1000) {
5
- return new Promise(resolve => setTimeout(resolve, milliseconds));
6
- }
7
- exports.Sleep = Sleep;
8
- // poolsleep is required to avoid JEST reporting unclosed handles during shutdown of all tests
9
- async function JestSleep() {
10
- return Sleep(100);
11
- }
12
- exports.JestSleep = JestSleep;
13
- //# sourceMappingURL=sleep.js.map
package/dist/sleep.js.map DELETED
@@ -1 +0,0 @@
1
- {"version":3,"file":"sleep.js","sourceRoot":"","sources":["../src/sleep.ts"],"names":[],"mappings":";;;AAAO,KAAK,UAAU,KAAK,CAAC,YAAY,GAAG,IAAI;IAC3C,OAAO,IAAI,OAAO,CAAC,OAAO,CAAC,EAAE,CAAC,UAAU,CAAC,OAAO,EAAE,YAAY,CAAC,CAAC,CAAA;AACpE,CAAC;AAFD,sBAEC;AAED,8FAA8F;AACvF,KAAK,UAAU,SAAS;IAC3B,OAAO,KAAK,CAAC,GAAG,CAAC,CAAC;AACtB,CAAC;AAFD,8BAEC"}
@@ -1,24 +0,0 @@
1
- "use strict";
2
- Object.defineProperty(exports, "__esModule", { value: true });
3
- exports.STSOptionsBase = void 0;
4
- const validate_js_1 = require("./validate.js");
5
- class STSOptionsBase {
6
- _options;
7
- constructor(options = null) {
8
- this._options = options;
9
- if (options !== null) {
10
- if (typeof options.validator === 'undefined') {
11
- //console.log(JSON.stringify(options));
12
- //console.trace("Options Here ------------------------------------------------------------------------------------------")
13
- }
14
- else {
15
- (0, validate_js_1.Validate)(options.validator, options);
16
- }
17
- }
18
- }
19
- get options() {
20
- return this._options;
21
- }
22
- }
23
- exports.STSOptionsBase = STSOptionsBase;
24
- //# sourceMappingURL=stsoptionsbase.js.map
@@ -1 +0,0 @@
1
- {"version":3,"file":"stsoptionsbase.js","sourceRoot":"","sources":["../src/stsoptionsbase.ts"],"names":[],"mappings":";;;AAAA,+CAAwC;AAIxC,MAAa,cAAc;IAEf,QAAQ,CAAoB;IAEpC,YAAY,UAA6B,IAAI;QAEzC,IAAI,CAAC,QAAQ,GAAG,OAAO,CAAC;QAExB,IAAI,OAAO,KAAK,IAAI,EAAE;YAClB,IAAI,OAAO,OAAO,CAAC,SAAS,KAAK,WAAW,EAAE;gBAC1C,uCAAuC;gBACvC,0HAA0H;aAC7H;iBAAM;gBACH,IAAA,sBAAQ,EAAC,OAAO,CAAC,SAAmB,EAAE,OAAO,CAAC,CAAC;aAClD;SACJ;IACL,CAAC;IAED,IAAI,OAAO;QAEP,OAAO,IAAI,CAAC,QAAQ,CAAC;IACzB,CAAC;CACJ;AAtBD,wCAsBC"}
@@ -1,8 +0,0 @@
1
- "use strict";
2
- describe("Test Latency Controller", () => {
3
- test('Testing Module', async () => {
4
- expect.assertions(1);
5
- expect(1).toEqual(1);
6
- });
7
- });
8
- //# sourceMappingURL=stsutils.test.js.map
@@ -1 +0,0 @@
1
- {"version":3,"file":"stsutils.test.js","sourceRoot":"","sources":["../src/stsutils.test.js"],"names":[],"mappings":";AACA,QAAQ,CAAC,yBAAyB,EAAE,GAAG,EAAE;IAErC,IAAI,CAAC,gBAAgB,EAAE,KAAK,IAAI,EAAE;QAE9B,MAAM,CAAC,UAAU,CAAC,CAAC,CAAC,CAAC;QACrB,MAAM,CAAC,CAAC,CAAC,CAAC,OAAO,CAAC,CAAC,CAAC,CAAC;IACzB,CAAC,CAAC,CAAC;AACP,CAAC,CAAC,CAAC"}
package/dist/validate.js DELETED
@@ -1,41 +0,0 @@
1
- "use strict";
2
- var __importDefault = (this && this.__importDefault) || function (mod) {
3
- return (mod && mod.__esModule) ? mod : { "default": mod };
4
- };
5
- Object.defineProperty(exports, "__esModule", { value: true });
6
- exports.Validate = exports.AddSchema = void 0;
7
- const jtd_1 = __importDefault(require("ajv/dist/jtd"));
8
- const ajv = new jtd_1.default();
9
- const _Validate = (validator, payload) => {
10
- const valid = validator(payload);
11
- if (!valid) {
12
- return validator.errors;
13
- }
14
- else {
15
- return null;
16
- }
17
- /*
18
- console.error(validator.errors);
19
- console.trace('Invalid Schema');
20
- console.log('Payload:-');
21
- console.log(JSON.stringify(payload));
22
- process.exit(1);
23
- */
24
- };
25
- function AddSchema(name, schema) {
26
- ajv.addSchema(schema, name);
27
- /*
28
- return (payload) => {
29
- const validator = ajv.getSchema(name)
30
- _Validate(validator, payload)
31
- }*/
32
- }
33
- exports.AddSchema = AddSchema;
34
- function Validate(name, payload) {
35
- const validator = ajv.getSchema(name);
36
- if (validator) {
37
- return _Validate(validator, payload);
38
- }
39
- }
40
- exports.Validate = Validate;
41
- //# sourceMappingURL=validate.js.map
@@ -1 +0,0 @@
1
- {"version":3,"file":"validate.js","sourceRoot":"","sources":["../src/validate.ts"],"names":[],"mappings":";;;;;;AAAA,uDAA0C;AAK1C,MAAM,GAAG,GAAG,IAAI,aAAG,EAAE,CAAC;AAEtB,MAAM,SAAS,GAAG,CAAC,SAAuC,EAAE,OAAmB,EAAkB,EAAE;IAC/F,MAAM,KAAK,GAAY,SAAS,CAAC,OAAO,CAAY,CAAC;IACrD,IAAI,CAAC,KAAK,EAAE;QACR,OAAO,SAAS,CAAC,MAAM,CAAC;KAC3B;SAAM;QACH,OAAO,IAAI,CAAC;KACf;IACD;;;;;;UAMA;AACJ,CAAC,CAAC;AAEF,SAAgB,SAAS,CAAC,IAAY,EAAE,MAAc;IAClD,GAAG,CAAC,SAAS,CAAC,MAAM,EAAE,IAAI,CAAC,CAAC;IAC5B;;;;OAIA;AAEJ,CAAC;AARD,8BAQC;AAED,SAAgB,QAAQ,CAAC,IAAY,EAAE,OAAmB;IACtD,MAAM,SAAS,GAA6C,GAAG,CAAC,SAAS,CAAC,IAAI,CAAC,CAAA;IAC/E,IAAI,SAAS,EAAE;QACX,OAAO,SAAS,CAAC,SAAS,EAAE,OAAO,CAAC,CAAC;KACxC;AACL,CAAC;AALD,4BAKC"}
@@ -1,24 +0,0 @@
1
- export type errorCode = {
2
- code: string
3
- description: string
4
- }
5
-
6
- export type errorPayload = {
7
- error: string,
8
- error_description: string,
9
- timestamp: number,
10
- //trace_id: "255d1aef-8c98-452f-ac51-23d051240864", //@@
11
- //correlation_id: "fb3d2015-bc17-4bb9-bb85-30c5cf1aaaa7", //@@
12
- details?: unknown
13
- }
14
-
15
- export function GetErrorPayload(errorCode: errorCode, details: unknown = null): errorPayload {
16
- return {
17
- error: errorCode.code,
18
- error_description: errorCode.description,
19
- timestamp: Date.now(),
20
- //trace_id: "255d1aef-8c98-452f-ac51-23d051240864", //@@
21
- //correlation_id: "fb3d2015-bc17-4bb9-bb85-30c5cf1aaaa7", //@@
22
- details: details
23
- }
24
- }
package/src/index.ts DELETED
@@ -1,25 +0,0 @@
1
- /*
2
- export interface JSONObject {
3
- [x: string]: string | number | boolean | string[] | number[] | boolean[] | Array<JSONObject> | JSONObject | ((p: any) => any) | undefined
4
- }
5
- // This also works :-
6
- //interface JSONObject2 extends Record<string, string | number | string[] | Array<JSONObject2> | JSONObject2> {};
7
- */
8
-
9
- export interface JSONObject {
10
- // eslint-disable-next-line @typescript-eslint/no-explicit-any
11
- [x: string]: any | JSONObject | undefined
12
- }
13
-
14
- export * from './errorhandling'
15
- export * from './stsoptionsbase'
16
- export * from './sleep'
17
- export * from './validate'
18
- export * from './oauth2terms'
19
-
20
- // eslint-disable-next-line @typescript-eslint/no-explicit-any
21
- export const $stsgd: Record<string, any> = { };
22
-
23
- export function $stsgdf<T>(): Record<string, T> {
24
- return $stsgd as Record<string, T>;
25
- }
@@ -1,98 +0,0 @@
1
- import { errorCode, errorPayload } from './errorhandling'
2
-
3
- // Ref: https://datatracker.ietf.org/doc/html/rfc6749#appendix-A
4
- export enum OAuth2ParameterType {
5
- AUDIENCE = 'AUDIENCE', // STS Extension
6
- CLIENT_ID = 'client_id',
7
- CLIENT_SECRET = 'client_secret',
8
- RESPONSE_TYPE = 'response_type',
9
- SCOPE = 'scope',
10
- STATE = 'state',
11
- REDIRECT_URI = 'redirect_uri',
12
- ERROR = 'error',
13
- ERROR_DESCRIPTION = 'error_description',
14
- ERROR_CODES = 'error_codes', // STS Extension
15
- ERROR_URI = 'error_uri',
16
- GRANT_TYPE = 'grant_type',
17
- CODE = 'code',
18
- ACCESS_TOKEN = 'access_token',
19
- TOKEN_TYPE = 'token_type',
20
- EXPIRES_IN = 'expires_in',
21
- USERNAME = 'username',
22
- PASSWORD = 'password',
23
- REFRESH_TOKEN = 'refresh_token',
24
- RESPONSE_MODE = 'response_mode', // STS Extension
25
- TIMESTAMP = 'timestamp', // STS Extension
26
- TRACE_ID = 'trace_id', // STS Extension
27
- CORRELATION_ID = 'correlation_id' // STS Extension
28
- }
29
-
30
- // OIDC Standard Claims
31
- // Ref: https://openid.net/specs/openid-connect-core-1_0.html#Claims
32
- export enum OIDCStandardClaim {
33
- SUB = 'sub',
34
- NAME = 'name',
35
- GIVEN_NAME = 'given_name',
36
- FAMILY_NAME = 'family_name',
37
- MIDDLE_NAME = 'middle_name',
38
- NICKNAME = 'nickname',
39
- PREFERRED_USERNAME = 'preferred_username',
40
- PROFILE = 'profile',
41
- PICTURE = 'picture',
42
- WEBSITE = 'website',
43
- EMAIL = 'email',
44
- EMAIL_VERIFIED = 'email_verified',
45
- GENDER = 'gender',
46
- BIRTHDATE = 'birthdate',
47
- ZONEINFO = 'zoneinfo',
48
- LOCALE = 'locale',
49
- PHONE_NUMBER = 'phone_number',
50
- PHONE_NUMBER_VERIFIED = 'phone_number_verified',
51
- ADDRESS = 'address',
52
- CLIENT_SECRET = 'client_secret',
53
- NONCE = 'nonce' // STS Extension
54
- }
55
-
56
- export enum OIDCAddressClaim {
57
- FORMATTED = 'formatted',
58
- STREET_ADDRESS = 'street_address',
59
- LOCALITY = 'locality',
60
- REGION = 'region',
61
- COUNTRY = 'country'
62
- }
63
-
64
- export class OAuth2ParameterErrorType {
65
- static readonly NOT_EQUAL: errorCode = {
66
- code: 'STS_OAUTH2_ERR_0001',
67
- description: 'Parameter values not equal.'
68
- }
69
- static readonly NOT_PRESENT: errorCode = {
70
- code: 'STS_OAUTH2_ERR_0002',
71
- description: 'Parameter not provided.'
72
- }
73
- static readonly INVALID_FORMAT: errorCode = {
74
- code: 'STS_OAUTH2_ERR_0003',
75
- description: 'Parameter value format invalid.'
76
- }
77
- static readonly EXPIRED: errorCode = {
78
- code: 'STS_OAUTH2_ERR_0004',
79
- description: 'Parameter value expired.'
80
- }
81
- }
82
-
83
- export function compareParameterTypes(source1: string[], source2: string[], authParameterTypes: OAuth2ParameterType[]): errorPayload[] {
84
- const errors: errorPayload[] = [ ];
85
- for (let i=0 ; i < authParameterTypes.length; i++) {
86
- const authParameterType = authParameterTypes[i];
87
- if (source1[i].localeCompare(source2[i]) !== 0) {
88
- const error: errorPayload = {
89
- error: OAuth2ParameterErrorType.NOT_EQUAL.code,
90
- error_description: OAuth2ParameterErrorType.NOT_EQUAL.description,
91
- timestamp: Date.now(),
92
- details: `${OAuth2ParameterErrorType.NOT_EQUAL.description}: Parameter: [${authParameterType}]`
93
- }
94
- errors.push(error);
95
- }
96
- }
97
- return errors;
98
- }
package/src/sleep.ts DELETED
@@ -1,8 +0,0 @@
1
- export async function Sleep(milliseconds = 1000): Promise<void> {
2
- return new Promise(resolve => setTimeout(resolve, milliseconds))
3
- }
4
-
5
- // poolsleep is required to avoid JEST reporting unclosed handles during shutdown of all tests
6
- export async function JestSleep(): Promise<void> {
7
- return Sleep(100);
8
- }
@@ -1,27 +0,0 @@
1
- import { Validate } from './validate.js'
2
-
3
- import { JSONObject } from './index'
4
-
5
- export class STSOptionsBase
6
- {
7
- private _options: JSONObject | null;
8
-
9
- constructor(options: JSONObject | null = null)
10
- {
11
- this._options = options;
12
-
13
- if (options !== null) {
14
- if (typeof options.validator === 'undefined') {
15
- //console.log(JSON.stringify(options));
16
- //console.trace("Options Here ------------------------------------------------------------------------------------------")
17
- } else {
18
- Validate(options.validator as string, options);
19
- }
20
- }
21
- }
22
-
23
- get options()
24
- {
25
- return this._options;
26
- }
27
- }
@@ -1,10 +0,0 @@
1
-
2
- describe("Test Latency Controller", () =>
3
- {
4
- test('Testing Module', async () =>
5
- {
6
- expect.assertions(1);
7
- expect(1).toEqual(1);
8
- });
9
- });
10
-
package/src/validate.ts DELETED
@@ -1,39 +0,0 @@
1
- import Ajv, { Schema } from 'ajv/dist/jtd'
2
-
3
- import { JSONObject } from './index'
4
- import { AnyValidateFunction } from 'ajv/dist/core';
5
-
6
- const ajv = new Ajv();
7
-
8
- const _Validate = (validator: AnyValidateFunction<unknown>, payload: JSONObject): unknown | null => {
9
- const valid: boolean = validator(payload) as boolean;
10
- if (!valid) {
11
- return validator.errors;
12
- } else {
13
- return null;
14
- }
15
- /*
16
- console.error(validator.errors);
17
- console.trace('Invalid Schema');
18
- console.log('Payload:-');
19
- console.log(JSON.stringify(payload));
20
- process.exit(1);
21
- */
22
- };
23
-
24
- export function AddSchema(name: string, schema: Schema): void {
25
- ajv.addSchema(schema, name);
26
- /*
27
- return (payload) => {
28
- const validator = ajv.getSchema(name)
29
- _Validate(validator, payload)
30
- }*/
31
-
32
- }
33
-
34
- export function Validate(name: string, payload: JSONObject): unknown {
35
- const validator: AnyValidateFunction<unknown> | undefined = ajv.getSchema(name)
36
- if (validator) {
37
- return _Validate(validator, payload);
38
- }
39
- }
package/tsconfig.json DELETED
@@ -1,14 +0,0 @@
1
- {
2
- "extends": "@tsconfig/node18/tsconfig.json",
3
- "include": ["src/**/*"],
4
- "exclude": ["node_modules", "**/node_modules/**/*", "**/*.spec.ts"],
5
- "compilerOptions": {
6
- "moduleResolution": "node",
7
- "sourceMap": true,
8
- "outDir": "dist",
9
- "allowJs": true,
10
- "declaration": true,
11
- "declarationDir": "./types",
12
- "declarationMap": true
13
- }
14
- }
@@ -1,12 +0,0 @@
1
- export type errorCode = {
2
- code: string;
3
- description: string;
4
- };
5
- export type errorPayload = {
6
- error: string;
7
- error_description: string;
8
- timestamp: number;
9
- details?: unknown;
10
- };
11
- export declare function GetErrorPayload(errorCode: errorCode, details?: unknown): errorPayload;
12
- //# sourceMappingURL=errorhandling.d.ts.map
@@ -1 +0,0 @@
1
- {"version":3,"file":"errorhandling.d.ts","sourceRoot":"","sources":["../src/errorhandling.ts"],"names":[],"mappings":"AAAA,MAAM,MAAM,SAAS,GAAG;IACvB,IAAI,EAAE,MAAM,CAAA;IACZ,WAAW,EAAE,MAAM,CAAA;CACnB,CAAA;AAED,MAAM,MAAM,YAAY,GAAG;IAC1B,KAAK,EAAE,MAAM,CAAC;IACd,iBAAiB,EAAE,MAAM,CAAC;IAC1B,SAAS,EAAE,MAAM,CAAC;IAGlB,OAAO,CAAC,EAAE,OAAO,CAAA;CACjB,CAAA;AAED,wBAAgB,eAAe,CAAC,SAAS,EAAE,SAAS,EAAE,OAAO,GAAE,OAAc,GAAG,YAAY,CAS3F"}
package/types/index.d.ts DELETED
@@ -1,11 +0,0 @@
1
- export interface JSONObject {
2
- [x: string]: any | JSONObject | undefined;
3
- }
4
- export * from './errorhandling';
5
- export * from './stsoptionsbase';
6
- export * from './sleep';
7
- export * from './validate';
8
- export * from './oauth2terms';
9
- export declare const $stsgd: Record<string, any>;
10
- export declare function $stsgdf<T>(): Record<string, T>;
11
- //# sourceMappingURL=index.d.ts.map
@@ -1 +0,0 @@
1
- {"version":3,"file":"index.d.ts","sourceRoot":"","sources":["../src/index.ts"],"names":[],"mappings":"AAQA,MAAM,WAAW,UAAU;IAEvB,CAAC,CAAC,EAAE,MAAM,GAAG,GAAG,GAAG,UAAU,GAAG,SAAS,CAAA;CAC5C;AAED,cAAc,iBAAiB,CAAA;AAC/B,cAAc,kBAAkB,CAAA;AAChC,cAAc,SAAS,CAAA;AACvB,cAAc,YAAY,CAAA;AAC1B,cAAc,eAAe,CAAA;AAG7B,eAAO,MAAM,MAAM,EAAE,MAAM,CAAC,MAAM,EAAE,GAAG,CAAO,CAAC;AAE/C,wBAAgB,OAAO,CAAC,CAAC,KAAK,MAAM,CAAC,MAAM,EAAE,CAAC,CAAC,CAE9C"}
@@ -1,64 +0,0 @@
1
- import { errorCode, errorPayload } from './errorhandling';
2
- export declare enum OAuth2ParameterType {
3
- AUDIENCE = "AUDIENCE",
4
- CLIENT_ID = "client_id",
5
- CLIENT_SECRET = "client_secret",
6
- RESPONSE_TYPE = "response_type",
7
- SCOPE = "scope",
8
- STATE = "state",
9
- REDIRECT_URI = "redirect_uri",
10
- ERROR = "error",
11
- ERROR_DESCRIPTION = "error_description",
12
- ERROR_CODES = "error_codes",
13
- ERROR_URI = "error_uri",
14
- GRANT_TYPE = "grant_type",
15
- CODE = "code",
16
- ACCESS_TOKEN = "access_token",
17
- TOKEN_TYPE = "token_type",
18
- EXPIRES_IN = "expires_in",
19
- USERNAME = "username",
20
- PASSWORD = "password",
21
- REFRESH_TOKEN = "refresh_token",
22
- RESPONSE_MODE = "response_mode",
23
- TIMESTAMP = "timestamp",
24
- TRACE_ID = "trace_id",
25
- CORRELATION_ID = "correlation_id"
26
- }
27
- export declare enum OIDCStandardClaim {
28
- SUB = "sub",
29
- NAME = "name",
30
- GIVEN_NAME = "given_name",
31
- FAMILY_NAME = "family_name",
32
- MIDDLE_NAME = "middle_name",
33
- NICKNAME = "nickname",
34
- PREFERRED_USERNAME = "preferred_username",
35
- PROFILE = "profile",
36
- PICTURE = "picture",
37
- WEBSITE = "website",
38
- EMAIL = "email",
39
- EMAIL_VERIFIED = "email_verified",
40
- GENDER = "gender",
41
- BIRTHDATE = "birthdate",
42
- ZONEINFO = "zoneinfo",
43
- LOCALE = "locale",
44
- PHONE_NUMBER = "phone_number",
45
- PHONE_NUMBER_VERIFIED = "phone_number_verified",
46
- ADDRESS = "address",
47
- CLIENT_SECRET = "client_secret",
48
- NONCE = "nonce"
49
- }
50
- export declare enum OIDCAddressClaim {
51
- FORMATTED = "formatted",
52
- STREET_ADDRESS = "street_address",
53
- LOCALITY = "locality",
54
- REGION = "region",
55
- COUNTRY = "country"
56
- }
57
- export declare class OAuth2ParameterErrorType {
58
- static readonly NOT_EQUAL: errorCode;
59
- static readonly NOT_PRESENT: errorCode;
60
- static readonly INVALID_FORMAT: errorCode;
61
- static readonly EXPIRED: errorCode;
62
- }
63
- export declare function compareParameterTypes(source1: string[], source2: string[], authParameterTypes: OAuth2ParameterType[]): errorPayload[];
64
- //# sourceMappingURL=oauth2terms.d.ts.map
@@ -1 +0,0 @@
1
- {"version":3,"file":"oauth2terms.d.ts","sourceRoot":"","sources":["../src/oauth2terms.ts"],"names":[],"mappings":"AAAA,OAAO,EAAE,SAAS,EAAE,YAAY,EAAE,MAAM,iBAAiB,CAAA;AAGzD,oBAAY,mBAAmB;IAC9B,QAAQ,aAAa;IACrB,SAAS,cAAc;IACvB,aAAa,kBAAkB;IAC/B,aAAa,kBAAkB;IAC/B,KAAK,UAAU;IACf,KAAK,UAAU;IACf,YAAY,iBAAiB;IAC7B,KAAK,UAAU;IACf,iBAAiB,sBAAsB;IACvC,WAAW,gBAAgB;IAC3B,SAAS,cAAc;IACvB,UAAU,eAAe;IACzB,IAAI,SAAS;IACb,YAAY,iBAAiB;IAC7B,UAAU,eAAe;IACzB,UAAU,eAAe;IACzB,QAAQ,aAAa;IACrB,QAAQ,aAAa;IACrB,aAAa,kBAAkB;IAC/B,aAAa,kBAAkB;IAC/B,SAAS,cAAc;IACvB,QAAQ,aAAa;IACrB,cAAc,mBAAmB;CACjC;AAID,oBAAY,iBAAiB;IAC5B,GAAG,QAAQ;IACX,IAAI,SAAS;IACb,UAAU,eAAe;IACzB,WAAW,gBAAgB;IAC3B,WAAW,gBAAgB;IAC3B,QAAQ,aAAa;IACrB,kBAAkB,uBAAuB;IACzC,OAAO,YAAY;IACnB,OAAO,YAAY;IACnB,OAAO,YAAY;IACnB,KAAK,UAAU;IACf,cAAc,mBAAmB;IACjC,MAAM,WAAW;IACjB,SAAS,cAAc;IACvB,QAAQ,aAAa;IACrB,MAAM,WAAW;IACjB,YAAY,iBAAiB;IAC7B,qBAAqB,0BAA0B;IAC/C,OAAO,YAAY;IACnB,aAAa,kBAAkB;IAC/B,KAAK,UAAU;CACf;AAED,oBAAY,gBAAgB;IAC3B,SAAS,cAAc;IACvB,cAAc,mBAAmB;IACjC,QAAQ,aAAa;IACrB,MAAM,WAAW;IACjB,OAAO,YAAY;CACnB;AAED,qBAAa,wBAAwB;IACjC,MAAM,CAAC,QAAQ,CAAC,SAAS,EAAE,SAAS,CAGnC;IACD,MAAM,CAAC,QAAQ,CAAC,WAAW,EAAE,SAAS,CAGrC;IACD,MAAM,CAAC,QAAQ,CAAC,cAAc,EAAE,SAAS,CAGxC;IACD,MAAM,CAAC,QAAQ,CAAC,OAAO,EAAE,SAAS,CAGjC;CACJ;AAED,wBAAgB,qBAAqB,CAAC,OAAO,EAAE,MAAM,EAAE,EAAE,OAAO,EAAE,MAAM,EAAE,EAAE,kBAAkB,EAAE,mBAAmB,EAAE,GAAG,YAAY,EAAE,CAerI"}
package/types/sleep.d.ts DELETED
@@ -1,3 +0,0 @@
1
- export declare function Sleep(milliseconds?: number): Promise<void>;
2
- export declare function JestSleep(): Promise<void>;
3
- //# sourceMappingURL=sleep.d.ts.map
@@ -1 +0,0 @@
1
- {"version":3,"file":"sleep.d.ts","sourceRoot":"","sources":["../src/sleep.ts"],"names":[],"mappings":"AAAA,wBAAsB,KAAK,CAAC,YAAY,SAAO,GAAG,OAAO,CAAC,IAAI,CAAC,CAE9D;AAGD,wBAAsB,SAAS,IAAI,OAAO,CAAC,IAAI,CAAC,CAE/C"}
@@ -1,7 +0,0 @@
1
- import { JSONObject } from './index';
2
- export declare class STSOptionsBase {
3
- private _options;
4
- constructor(options?: JSONObject | null);
5
- get options(): JSONObject | null;
6
- }
7
- //# sourceMappingURL=stsoptionsbase.d.ts.map
@@ -1 +0,0 @@
1
- {"version":3,"file":"stsoptionsbase.d.ts","sourceRoot":"","sources":["../src/stsoptionsbase.ts"],"names":[],"mappings":"AAEA,OAAO,EAAE,UAAU,EAAE,MAAM,SAAS,CAAA;AAEpC,qBAAa,cAAc;IAEvB,OAAO,CAAC,QAAQ,CAAoB;gBAExB,OAAO,GAAE,UAAU,GAAG,IAAW;IAc7C,IAAI,OAAO,sBAGV;CACJ"}
@@ -1 +0,0 @@
1
- //# sourceMappingURL=stsutils.test.d.ts.map
@@ -1 +0,0 @@
1
- {"version":3,"file":"stsutils.test.d.ts","sourceRoot":"","sources":["../src/stsutils.test.js"],"names":[],"mappings":""}
@@ -1,5 +0,0 @@
1
- import { Schema } from 'ajv/dist/jtd';
2
- import { JSONObject } from './index';
3
- export declare function AddSchema(name: string, schema: Schema): void;
4
- export declare function Validate(name: string, payload: JSONObject): unknown;
5
- //# sourceMappingURL=validate.d.ts.map
@@ -1 +0,0 @@
1
- {"version":3,"file":"validate.d.ts","sourceRoot":"","sources":["../src/validate.ts"],"names":[],"mappings":"AAAA,OAAY,EAAE,MAAM,EAAE,MAAM,cAAc,CAAA;AAE1C,OAAO,EAAE,UAAU,EAAE,MAAM,SAAS,CAAA;AAqBpC,wBAAgB,SAAS,CAAC,IAAI,EAAE,MAAM,EAAE,MAAM,EAAE,MAAM,GAAG,IAAI,CAQ5D;AAED,wBAAgB,QAAQ,CAAC,IAAI,EAAE,MAAM,EAAE,OAAO,EAAE,UAAU,GAAG,OAAO,CAKnE"}