You signed in with another tab or window. Reload to refresh your session.You signed out in another tab or window. Reload to refresh your session.You switched accounts on another tab or window. Reload to refresh your session.Dismiss alert
Copy file name to clipboardExpand all lines: sign.js
+34-30Lines changed: 34 additions & 30 deletions
Original file line number
Diff line number
Diff line change
@@ -14,46 +14,50 @@ function validAlgorithm(alg) {
14
14
returnSUPPORTED_ALGS.includes(alg)
15
15
}
16
16
17
+
constTimespanScheme={isValid: function(value){returnisInteger(value)||(isString(value)&&value);},message: 'should be a number of seconds or string representing a timespan'}
18
+
constStringScheme={isValid: isString,message: 'must be a string'}
19
+
constBooleanScheme={isValid: isBoolean,message: 'must be a boolean'}
20
+
17
21
constsign_options_schema={
18
-
expiresIn: {isValid: function(value){returnisInteger(value)||(isString(value)&&value);},message: '"expiresIn" should be a number of seconds or string representing a timespan'},
19
-
notBefore: {isValid: function(value){returnisInteger(value)||(isString(value)&&value);},message: '"notBefore" should be a number of seconds or string representing a timespan'},
20
-
audience: {isValid: function(value){returnisString(value)||Array.isArray(value);},message: '"audience" must be a string or array'},
21
-
algorithm: {isValid: validAlgorithm,message: '"algorithm" must be a valid string enum value'},
22
-
header: {isValid: isPlainObject,message: '"header" must be an object'},
23
-
encoding: {isValid: isString,message: '"encoding" must be a string'},
24
-
issuer: {isValid: isString,message: '"issuer" must be a string'},
25
-
subject: {isValid: isString,message: '"subject" must be a string'},
26
-
jwtid: {isValid: isString,message: '"jwtid" must be a string'},
27
-
noTimestamp: {isValid: isBoolean,message: '"noTimestamp" must be a boolean'},
28
-
keyid: {isValid: isString,message: '"keyid" must be a string'},
29
-
mutatePayload: {isValid: isBoolean,message: '"mutatePayload" must be a boolean'},
30
-
allowInsecureKeySizes: {isValid: isBoolean,message: '"allowInsecureKeySizes" must be a boolean'},
31
-
allowInvalidAsymmetricKeyTypes: {isValid: isBoolean,message: '"allowInvalidAsymmetricKeyTypes" must be a boolean'}
22
+
expiresIn: TimespanScheme,
23
+
notBefore: TimespanScheme,
24
+
audience: {isValid: function(value){returnisString(value)||Array.isArray(value);},message: 'must be a string or array'},
25
+
algorithm: {isValid: validAlgorithm,message: 'must be a valid string enum value'},
26
+
header: {isValid: isPlainObject,message: 'must be an object'},
27
+
encoding: StringScheme,
28
+
issuer: StringScheme,
29
+
subject: StringScheme,
30
+
jwtid: StringScheme,
31
+
noTimestamp: BooleanScheme,
32
+
keyid: StringScheme,
33
+
mutatePayload: BooleanScheme,
34
+
allowInsecureKeySizes: BooleanScheme,
35
+
allowInvalidAsymmetricKeyTypes: BooleanScheme
32
36
};
33
37
38
+
constSecondClaim={isValid: isNumber,message: 'should be a number of seconds'}
34
39
constregistered_claims_schema={
35
-
iat: {isValid: isNumber,message: '"iat" should be a number of seconds'},
36
-
exp: {isValid: isNumber,message: '"exp" should be a number of seconds'},
37
-
nbf: {isValid: isNumber,message: '"nbf" should be a number of seconds'}
0 commit comments