@navios/jwt 0.3.0 → 0.3.1

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.
@@ -103,7 +103,7 @@ declare const JwtServiceOptionsSchema: z.ZodObject<{
103
103
  keyid: z.ZodOptional<z.ZodString>;
104
104
  expiresIn: z.ZodOptional<z.ZodUnion<[z.ZodString, z.ZodNumber]>>;
105
105
  notBefore: z.ZodOptional<z.ZodUnion<[z.ZodString, z.ZodNumber]>>;
106
- audience: z.ZodOptional<z.ZodUnion<[z.ZodString, z.ZodArray<z.ZodString, "many">]>>;
106
+ audience: z.ZodOptional<z.ZodUnion<[z.ZodString, z.ZodType<RegExp, z.ZodTypeDef, RegExp>, z.ZodArray<z.ZodUnion<[z.ZodString, z.ZodType<RegExp, z.ZodTypeDef, RegExp>]>, "many">]>>;
107
107
  subject: z.ZodOptional<z.ZodString>;
108
108
  issuer: z.ZodOptional<z.ZodString>;
109
109
  jwtid: z.ZodOptional<z.ZodString>;
@@ -151,7 +151,7 @@ declare const JwtServiceOptionsSchema: z.ZodObject<{
151
151
  keyid?: string | undefined;
152
152
  expiresIn?: string | number | undefined;
153
153
  notBefore?: string | number | undefined;
154
- audience?: string | string[] | undefined;
154
+ audience?: string | RegExp | (string | RegExp)[] | undefined;
155
155
  subject?: string | undefined;
156
156
  issuer?: string | undefined;
157
157
  jwtid?: string | undefined;
@@ -177,7 +177,7 @@ declare const JwtServiceOptionsSchema: z.ZodObject<{
177
177
  keyid?: string | undefined;
178
178
  expiresIn?: string | number | undefined;
179
179
  notBefore?: string | number | undefined;
180
- audience?: string | string[] | undefined;
180
+ audience?: string | RegExp | (string | RegExp)[] | undefined;
181
181
  subject?: string | undefined;
182
182
  issuer?: string | undefined;
183
183
  jwtid?: string | undefined;
@@ -219,7 +219,7 @@ declare const JwtServiceOptionsSchema: z.ZodObject<{
219
219
  }>]>>;
220
220
  verifyOptions: z.ZodOptional<z.ZodObject<{
221
221
  algorithms: z.ZodOptional<z.ZodArray<z.ZodEnum<["HS256", "HS384", "HS512", "RS256", "RS384", "RS512", "ES256", "ES384", "ES512", "PS256", "PS384", "PS512", "none"]>, "many">>;
222
- audience: z.ZodOptional<z.ZodUnion<[z.ZodString, z.ZodType<RegExp, z.ZodTypeDef, RegExp>, z.ZodArray<z.ZodString, "many">]>>;
222
+ audience: z.ZodOptional<z.ZodUnion<[z.ZodString, z.ZodType<RegExp, z.ZodTypeDef, RegExp>, z.ZodArray<z.ZodUnion<[z.ZodString, z.ZodType<RegExp, z.ZodTypeDef, RegExp>]>, "many">]>>;
223
223
  clockTimestamp: z.ZodOptional<z.ZodNumber>;
224
224
  clockTolerance: z.ZodOptional<z.ZodNumber>;
225
225
  complete: z.ZodOptional<z.ZodBoolean>;
@@ -232,7 +232,7 @@ declare const JwtServiceOptionsSchema: z.ZodObject<{
232
232
  maxAge: z.ZodOptional<z.ZodUnion<[z.ZodString, z.ZodNumber]>>;
233
233
  allowInvalidAsymmetricKeyTypes: z.ZodOptional<z.ZodBoolean>;
234
234
  }, "strip", z.ZodTypeAny, {
235
- audience?: string | RegExp | string[] | undefined;
235
+ audience?: string | RegExp | (string | RegExp)[] | undefined;
236
236
  subject?: string | undefined;
237
237
  issuer?: string | string[] | undefined;
238
238
  jwtid?: string | undefined;
@@ -246,7 +246,7 @@ declare const JwtServiceOptionsSchema: z.ZodObject<{
246
246
  nonce?: string | undefined;
247
247
  maxAge?: string | number | undefined;
248
248
  }, {
249
- audience?: string | RegExp | string[] | undefined;
249
+ audience?: string | RegExp | (string | RegExp)[] | undefined;
250
250
  subject?: string | undefined;
251
251
  issuer?: string | string[] | undefined;
252
252
  jwtid?: string | undefined;
@@ -265,7 +265,7 @@ declare const JwtServiceOptionsSchema: z.ZodObject<{
265
265
  keyid: z.ZodOptional<z.ZodString>;
266
266
  expiresIn: z.ZodOptional<z.ZodUnion<[z.ZodString, z.ZodNumber]>>;
267
267
  notBefore: z.ZodOptional<z.ZodUnion<[z.ZodString, z.ZodNumber]>>;
268
- audience: z.ZodOptional<z.ZodUnion<[z.ZodString, z.ZodArray<z.ZodString, "many">]>>;
268
+ audience: z.ZodOptional<z.ZodUnion<[z.ZodString, z.ZodType<RegExp, z.ZodTypeDef, RegExp>, z.ZodArray<z.ZodUnion<[z.ZodString, z.ZodType<RegExp, z.ZodTypeDef, RegExp>]>, "many">]>>;
269
269
  subject: z.ZodOptional<z.ZodString>;
270
270
  issuer: z.ZodOptional<z.ZodString>;
271
271
  jwtid: z.ZodOptional<z.ZodString>;
@@ -313,7 +313,7 @@ declare const JwtServiceOptionsSchema: z.ZodObject<{
313
313
  keyid?: string | undefined;
314
314
  expiresIn?: string | number | undefined;
315
315
  notBefore?: string | number | undefined;
316
- audience?: string | string[] | undefined;
316
+ audience?: string | RegExp | (string | RegExp)[] | undefined;
317
317
  subject?: string | undefined;
318
318
  issuer?: string | undefined;
319
319
  jwtid?: string | undefined;
@@ -339,7 +339,7 @@ declare const JwtServiceOptionsSchema: z.ZodObject<{
339
339
  keyid?: string | undefined;
340
340
  expiresIn?: string | number | undefined;
341
341
  notBefore?: string | number | undefined;
342
- audience?: string | string[] | undefined;
342
+ audience?: string | RegExp | (string | RegExp)[] | undefined;
343
343
  subject?: string | undefined;
344
344
  issuer?: string | undefined;
345
345
  jwtid?: string | undefined;
@@ -362,7 +362,7 @@ declare const JwtServiceOptionsSchema: z.ZodObject<{
362
362
  allowInvalidAsymmetricKeyTypes?: boolean | undefined;
363
363
  }>, z.ZodObject<{
364
364
  algorithms: z.ZodOptional<z.ZodArray<z.ZodEnum<["HS256", "HS384", "HS512", "RS256", "RS384", "RS512", "ES256", "ES384", "ES512", "PS256", "PS384", "PS512", "none"]>, "many">>;
365
- audience: z.ZodOptional<z.ZodUnion<[z.ZodString, z.ZodType<RegExp, z.ZodTypeDef, RegExp>, z.ZodArray<z.ZodString, "many">]>>;
365
+ audience: z.ZodOptional<z.ZodUnion<[z.ZodString, z.ZodType<RegExp, z.ZodTypeDef, RegExp>, z.ZodArray<z.ZodUnion<[z.ZodString, z.ZodType<RegExp, z.ZodTypeDef, RegExp>]>, "many">]>>;
366
366
  clockTimestamp: z.ZodOptional<z.ZodNumber>;
367
367
  clockTolerance: z.ZodOptional<z.ZodNumber>;
368
368
  complete: z.ZodOptional<z.ZodBoolean>;
@@ -375,7 +375,7 @@ declare const JwtServiceOptionsSchema: z.ZodObject<{
375
375
  maxAge: z.ZodOptional<z.ZodUnion<[z.ZodString, z.ZodNumber]>>;
376
376
  allowInvalidAsymmetricKeyTypes: z.ZodOptional<z.ZodBoolean>;
377
377
  }, "strip", z.ZodTypeAny, {
378
- audience?: string | RegExp | string[] | undefined;
378
+ audience?: string | RegExp | (string | RegExp)[] | undefined;
379
379
  subject?: string | undefined;
380
380
  issuer?: string | string[] | undefined;
381
381
  jwtid?: string | undefined;
@@ -389,7 +389,7 @@ declare const JwtServiceOptionsSchema: z.ZodObject<{
389
389
  nonce?: string | undefined;
390
390
  maxAge?: string | number | undefined;
391
391
  }, {
392
- audience?: string | RegExp | string[] | undefined;
392
+ audience?: string | RegExp | (string | RegExp)[] | undefined;
393
393
  subject?: string | undefined;
394
394
  issuer?: string | string[] | undefined;
395
395
  jwtid?: string | undefined;
@@ -439,7 +439,7 @@ declare const JwtServiceOptionsSchema: z.ZodObject<{
439
439
  keyid?: string | undefined;
440
440
  expiresIn?: string | number | undefined;
441
441
  notBefore?: string | number | undefined;
442
- audience?: string | string[] | undefined;
442
+ audience?: string | RegExp | (string | RegExp)[] | undefined;
443
443
  subject?: string | undefined;
444
444
  issuer?: string | undefined;
445
445
  jwtid?: string | undefined;
@@ -470,7 +470,7 @@ declare const JwtServiceOptionsSchema: z.ZodObject<{
470
470
  passphrase: string;
471
471
  } | undefined;
472
472
  verifyOptions?: {
473
- audience?: string | RegExp | string[] | undefined;
473
+ audience?: string | RegExp | (string | RegExp)[] | undefined;
474
474
  subject?: string | undefined;
475
475
  issuer?: string | string[] | undefined;
476
476
  jwtid?: string | undefined;
@@ -489,7 +489,7 @@ declare const JwtServiceOptionsSchema: z.ZodObject<{
489
489
  keyid?: string | undefined;
490
490
  expiresIn?: string | number | undefined;
491
491
  notBefore?: string | number | undefined;
492
- audience?: string | string[] | undefined;
492
+ audience?: string | RegExp | (string | RegExp)[] | undefined;
493
493
  subject?: string | undefined;
494
494
  issuer?: string | undefined;
495
495
  jwtid?: string | undefined;
@@ -511,7 +511,7 @@ declare const JwtServiceOptionsSchema: z.ZodObject<{
511
511
  allowInsecureKeySizes?: boolean | undefined;
512
512
  allowInvalidAsymmetricKeyTypes?: boolean | undefined;
513
513
  } | {
514
- audience?: string | RegExp | string[] | undefined;
514
+ audience?: string | RegExp | (string | RegExp)[] | undefined;
515
515
  subject?: string | undefined;
516
516
  issuer?: string | string[] | undefined;
517
517
  jwtid?: string | undefined;
@@ -541,7 +541,7 @@ declare const JwtServiceOptionsSchema: z.ZodObject<{
541
541
  keyid?: string | undefined;
542
542
  expiresIn?: string | number | undefined;
543
543
  notBefore?: string | number | undefined;
544
- audience?: string | string[] | undefined;
544
+ audience?: string | RegExp | (string | RegExp)[] | undefined;
545
545
  subject?: string | undefined;
546
546
  issuer?: string | undefined;
547
547
  jwtid?: string | undefined;
@@ -572,7 +572,7 @@ declare const JwtServiceOptionsSchema: z.ZodObject<{
572
572
  passphrase: string;
573
573
  } | undefined;
574
574
  verifyOptions?: {
575
- audience?: string | RegExp | string[] | undefined;
575
+ audience?: string | RegExp | (string | RegExp)[] | undefined;
576
576
  subject?: string | undefined;
577
577
  issuer?: string | string[] | undefined;
578
578
  jwtid?: string | undefined;
@@ -591,7 +591,7 @@ declare const JwtServiceOptionsSchema: z.ZodObject<{
591
591
  keyid?: string | undefined;
592
592
  expiresIn?: string | number | undefined;
593
593
  notBefore?: string | number | undefined;
594
- audience?: string | string[] | undefined;
594
+ audience?: string | RegExp | (string | RegExp)[] | undefined;
595
595
  subject?: string | undefined;
596
596
  issuer?: string | undefined;
597
597
  jwtid?: string | undefined;
@@ -613,7 +613,7 @@ declare const JwtServiceOptionsSchema: z.ZodObject<{
613
613
  allowInsecureKeySizes?: boolean | undefined;
614
614
  allowInvalidAsymmetricKeyTypes?: boolean | undefined;
615
615
  } | {
616
- audience?: string | RegExp | string[] | undefined;
616
+ audience?: string | RegExp | (string | RegExp)[] | undefined;
617
617
  subject?: string | undefined;
618
618
  issuer?: string | string[] | undefined;
619
619
  jwtid?: string | undefined;
@@ -647,7 +647,7 @@ algorithm: ZodOptional<ZodEnum<["HS256", "HS384", "HS512", "RS256", "RS384", "RS
647
647
  keyid: ZodOptional<ZodString>;
648
648
  expiresIn: ZodOptional<ZodUnion<[ZodString, ZodNumber]>>;
649
649
  notBefore: ZodOptional<ZodUnion<[ZodString, ZodNumber]>>;
650
- audience: ZodOptional<ZodUnion<[ZodString, ZodArray<ZodString, "many">]>>;
650
+ audience: ZodOptional<ZodUnion<[ZodString, ZodType<RegExp, ZodTypeDef, RegExp>, ZodArray<ZodUnion<[ZodString, ZodType<RegExp, ZodTypeDef, RegExp>]>, "many">]>>;
651
651
  subject: ZodOptional<ZodString>;
652
652
  issuer: ZodOptional<ZodString>;
653
653
  jwtid: ZodOptional<ZodString>;
@@ -695,7 +695,7 @@ algorithm?: "HS256" | "HS384" | "HS512" | "RS256" | "RS384" | "RS512" | "ES256"
695
695
  keyid?: string | undefined;
696
696
  expiresIn?: string | number | undefined;
697
697
  notBefore?: string | number | undefined;
698
- audience?: string | string[] | undefined;
698
+ audience?: string | RegExp | (string | RegExp)[] | undefined;
699
699
  subject?: string | undefined;
700
700
  issuer?: string | undefined;
701
701
  jwtid?: string | undefined;
@@ -721,7 +721,7 @@ algorithm?: "HS256" | "HS384" | "HS512" | "RS256" | "RS384" | "RS512" | "ES256"
721
721
  keyid?: string | undefined;
722
722
  expiresIn?: string | number | undefined;
723
723
  notBefore?: string | number | undefined;
724
- audience?: string | string[] | undefined;
724
+ audience?: string | RegExp | (string | RegExp)[] | undefined;
725
725
  subject?: string | undefined;
726
726
  issuer?: string | undefined;
727
727
  jwtid?: string | undefined;
@@ -763,7 +763,7 @@ passphrase: string;
763
763
  }>]>>;
764
764
  verifyOptions: ZodOptional<ZodObject< {
765
765
  algorithms: ZodOptional<ZodArray<ZodEnum<["HS256", "HS384", "HS512", "RS256", "RS384", "RS512", "ES256", "ES384", "ES512", "PS256", "PS384", "PS512", "none"]>, "many">>;
766
- audience: ZodOptional<ZodUnion<[ZodString, ZodType<RegExp, ZodTypeDef, RegExp>, ZodArray<ZodString, "many">]>>;
766
+ audience: ZodOptional<ZodUnion<[ZodString, ZodType<RegExp, ZodTypeDef, RegExp>, ZodArray<ZodUnion<[ZodString, ZodType<RegExp, ZodTypeDef, RegExp>]>, "many">]>>;
767
767
  clockTimestamp: ZodOptional<ZodNumber>;
768
768
  clockTolerance: ZodOptional<ZodNumber>;
769
769
  complete: ZodOptional<ZodBoolean>;
@@ -776,7 +776,7 @@ subject: ZodOptional<ZodString>;
776
776
  maxAge: ZodOptional<ZodUnion<[ZodString, ZodNumber]>>;
777
777
  allowInvalidAsymmetricKeyTypes: ZodOptional<ZodBoolean>;
778
778
  }, "strip", ZodTypeAny, {
779
- audience?: string | RegExp | string[] | undefined;
779
+ audience?: string | RegExp | (string | RegExp)[] | undefined;
780
780
  subject?: string | undefined;
781
781
  issuer?: string | string[] | undefined;
782
782
  jwtid?: string | undefined;
@@ -790,7 +790,7 @@ ignoreNotBefore?: boolean | undefined;
790
790
  nonce?: string | undefined;
791
791
  maxAge?: string | number | undefined;
792
792
  }, {
793
- audience?: string | RegExp | string[] | undefined;
793
+ audience?: string | RegExp | (string | RegExp)[] | undefined;
794
794
  subject?: string | undefined;
795
795
  issuer?: string | string[] | undefined;
796
796
  jwtid?: string | undefined;
@@ -809,7 +809,7 @@ algorithm: ZodOptional<ZodEnum<["HS256", "HS384", "HS512", "RS256", "RS384", "RS
809
809
  keyid: ZodOptional<ZodString>;
810
810
  expiresIn: ZodOptional<ZodUnion<[ZodString, ZodNumber]>>;
811
811
  notBefore: ZodOptional<ZodUnion<[ZodString, ZodNumber]>>;
812
- audience: ZodOptional<ZodUnion<[ZodString, ZodArray<ZodString, "many">]>>;
812
+ audience: ZodOptional<ZodUnion<[ZodString, ZodType<RegExp, ZodTypeDef, RegExp>, ZodArray<ZodUnion<[ZodString, ZodType<RegExp, ZodTypeDef, RegExp>]>, "many">]>>;
813
813
  subject: ZodOptional<ZodString>;
814
814
  issuer: ZodOptional<ZodString>;
815
815
  jwtid: ZodOptional<ZodString>;
@@ -857,7 +857,7 @@ algorithm?: "HS256" | "HS384" | "HS512" | "RS256" | "RS384" | "RS512" | "ES256"
857
857
  keyid?: string | undefined;
858
858
  expiresIn?: string | number | undefined;
859
859
  notBefore?: string | number | undefined;
860
- audience?: string | string[] | undefined;
860
+ audience?: string | RegExp | (string | RegExp)[] | undefined;
861
861
  subject?: string | undefined;
862
862
  issuer?: string | undefined;
863
863
  jwtid?: string | undefined;
@@ -883,7 +883,7 @@ algorithm?: "HS256" | "HS384" | "HS512" | "RS256" | "RS384" | "RS512" | "ES256"
883
883
  keyid?: string | undefined;
884
884
  expiresIn?: string | number | undefined;
885
885
  notBefore?: string | number | undefined;
886
- audience?: string | string[] | undefined;
886
+ audience?: string | RegExp | (string | RegExp)[] | undefined;
887
887
  subject?: string | undefined;
888
888
  issuer?: string | undefined;
889
889
  jwtid?: string | undefined;
@@ -906,7 +906,7 @@ allowInsecureKeySizes?: boolean | undefined;
906
906
  allowInvalidAsymmetricKeyTypes?: boolean | undefined;
907
907
  }>, ZodObject< {
908
908
  algorithms: ZodOptional<ZodArray<ZodEnum<["HS256", "HS384", "HS512", "RS256", "RS384", "RS512", "ES256", "ES384", "ES512", "PS256", "PS384", "PS512", "none"]>, "many">>;
909
- audience: ZodOptional<ZodUnion<[ZodString, ZodType<RegExp, ZodTypeDef, RegExp>, ZodArray<ZodString, "many">]>>;
909
+ audience: ZodOptional<ZodUnion<[ZodString, ZodType<RegExp, ZodTypeDef, RegExp>, ZodArray<ZodUnion<[ZodString, ZodType<RegExp, ZodTypeDef, RegExp>]>, "many">]>>;
910
910
  clockTimestamp: ZodOptional<ZodNumber>;
911
911
  clockTolerance: ZodOptional<ZodNumber>;
912
912
  complete: ZodOptional<ZodBoolean>;
@@ -919,7 +919,7 @@ subject: ZodOptional<ZodString>;
919
919
  maxAge: ZodOptional<ZodUnion<[ZodString, ZodNumber]>>;
920
920
  allowInvalidAsymmetricKeyTypes: ZodOptional<ZodBoolean>;
921
921
  }, "strip", ZodTypeAny, {
922
- audience?: string | RegExp | string[] | undefined;
922
+ audience?: string | RegExp | (string | RegExp)[] | undefined;
923
923
  subject?: string | undefined;
924
924
  issuer?: string | string[] | undefined;
925
925
  jwtid?: string | undefined;
@@ -933,7 +933,7 @@ ignoreNotBefore?: boolean | undefined;
933
933
  nonce?: string | undefined;
934
934
  maxAge?: string | number | undefined;
935
935
  }, {
936
- audience?: string | RegExp | string[] | undefined;
936
+ audience?: string | RegExp | (string | RegExp)[] | undefined;
937
937
  subject?: string | undefined;
938
938
  issuer?: string | string[] | undefined;
939
939
  jwtid?: string | undefined;
@@ -983,7 +983,7 @@ algorithm?: "HS256" | "HS384" | "HS512" | "RS256" | "RS384" | "RS512" | "ES256"
983
983
  keyid?: string | undefined;
984
984
  expiresIn?: string | number | undefined;
985
985
  notBefore?: string | number | undefined;
986
- audience?: string | string[] | undefined;
986
+ audience?: string | RegExp | (string | RegExp)[] | undefined;
987
987
  subject?: string | undefined;
988
988
  issuer?: string | undefined;
989
989
  jwtid?: string | undefined;
@@ -1014,7 +1014,7 @@ key: string | Buffer<ArrayBufferLike>;
1014
1014
  passphrase: string;
1015
1015
  } | undefined;
1016
1016
  verifyOptions?: {
1017
- audience?: string | RegExp | string[] | undefined;
1017
+ audience?: string | RegExp | (string | RegExp)[] | undefined;
1018
1018
  subject?: string | undefined;
1019
1019
  issuer?: string | string[] | undefined;
1020
1020
  jwtid?: string | undefined;
@@ -1033,7 +1033,7 @@ algorithm?: "HS256" | "HS384" | "HS512" | "RS256" | "RS384" | "RS512" | "ES256"
1033
1033
  keyid?: string | undefined;
1034
1034
  expiresIn?: string | number | undefined;
1035
1035
  notBefore?: string | number | undefined;
1036
- audience?: string | string[] | undefined;
1036
+ audience?: string | RegExp | (string | RegExp)[] | undefined;
1037
1037
  subject?: string | undefined;
1038
1038
  issuer?: string | undefined;
1039
1039
  jwtid?: string | undefined;
@@ -1055,7 +1055,7 @@ encoding?: string | undefined;
1055
1055
  allowInsecureKeySizes?: boolean | undefined;
1056
1056
  allowInvalidAsymmetricKeyTypes?: boolean | undefined;
1057
1057
  } | {
1058
- audience?: string | RegExp | string[] | undefined;
1058
+ audience?: string | RegExp | (string | RegExp)[] | undefined;
1059
1059
  subject?: string | undefined;
1060
1060
  issuer?: string | string[] | undefined;
1061
1061
  jwtid?: string | undefined;
@@ -1085,7 +1085,7 @@ algorithm?: "HS256" | "HS384" | "HS512" | "RS256" | "RS384" | "RS512" | "ES256"
1085
1085
  keyid?: string | undefined;
1086
1086
  expiresIn?: string | number | undefined;
1087
1087
  notBefore?: string | number | undefined;
1088
- audience?: string | string[] | undefined;
1088
+ audience?: string | RegExp | (string | RegExp)[] | undefined;
1089
1089
  subject?: string | undefined;
1090
1090
  issuer?: string | undefined;
1091
1091
  jwtid?: string | undefined;
@@ -1116,7 +1116,7 @@ key: string | Buffer<ArrayBufferLike>;
1116
1116
  passphrase: string;
1117
1117
  } | undefined;
1118
1118
  verifyOptions?: {
1119
- audience?: string | RegExp | string[] | undefined;
1119
+ audience?: string | RegExp | (string | RegExp)[] | undefined;
1120
1120
  subject?: string | undefined;
1121
1121
  issuer?: string | string[] | undefined;
1122
1122
  jwtid?: string | undefined;
@@ -1135,7 +1135,7 @@ algorithm?: "HS256" | "HS384" | "HS512" | "RS256" | "RS384" | "RS512" | "ES256"
1135
1135
  keyid?: string | undefined;
1136
1136
  expiresIn?: string | number | undefined;
1137
1137
  notBefore?: string | number | undefined;
1138
- audience?: string | string[] | undefined;
1138
+ audience?: string | RegExp | (string | RegExp)[] | undefined;
1139
1139
  subject?: string | undefined;
1140
1140
  issuer?: string | undefined;
1141
1141
  jwtid?: string | undefined;
@@ -1157,7 +1157,7 @@ encoding?: string | undefined;
1157
1157
  allowInsecureKeySizes?: boolean | undefined;
1158
1158
  allowInvalidAsymmetricKeyTypes?: boolean | undefined;
1159
1159
  } | {
1160
- audience?: string | RegExp | string[] | undefined;
1160
+ audience?: string | RegExp | (string | RegExp)[] | undefined;
1161
1161
  subject?: string | undefined;
1162
1162
  issuer?: string | string[] | undefined;
1163
1163
  jwtid?: string | undefined;
@@ -1201,7 +1201,9 @@ export { JwtVerifyOptions as JwtVerifyOptions_alias_1 }
1201
1201
 
1202
1202
  export declare const NotBeforeError: typeof jwt.NotBeforeError;
1203
1203
 
1204
- declare function provideJwtService(config: JwtServiceOptions | (() => Promise<JwtServiceOptions>)): BoundInjectionToken<JwtService, typeof JwtServiceOptionsSchema> | FactoryInjectionToken<JwtService, typeof JwtServiceOptionsSchema>;
1204
+ declare function provideJwtService(config: JwtServiceOptions): BoundInjectionToken<JwtService, typeof JwtServiceOptionsSchema>;
1205
+
1206
+ declare function provideJwtService(config: () => Promise<JwtServiceOptions>): FactoryInjectionToken<JwtService, typeof JwtServiceOptionsSchema>;
1205
1207
  export { provideJwtService }
1206
1208
  export { provideJwtService as provideJwtService_alias_1 }
1207
1209
 
@@ -1244,7 +1246,7 @@ declare const SignOptionsSchema: z.ZodObject<{
1244
1246
  keyid: z.ZodOptional<z.ZodString>;
1245
1247
  expiresIn: z.ZodOptional<z.ZodUnion<[z.ZodString, z.ZodNumber]>>;
1246
1248
  notBefore: z.ZodOptional<z.ZodUnion<[z.ZodString, z.ZodNumber]>>;
1247
- audience: z.ZodOptional<z.ZodUnion<[z.ZodString, z.ZodArray<z.ZodString, "many">]>>;
1249
+ audience: z.ZodOptional<z.ZodUnion<[z.ZodString, z.ZodType<RegExp, z.ZodTypeDef, RegExp>, z.ZodArray<z.ZodUnion<[z.ZodString, z.ZodType<RegExp, z.ZodTypeDef, RegExp>]>, "many">]>>;
1248
1250
  subject: z.ZodOptional<z.ZodString>;
1249
1251
  issuer: z.ZodOptional<z.ZodString>;
1250
1252
  jwtid: z.ZodOptional<z.ZodString>;
@@ -1292,7 +1294,7 @@ declare const SignOptionsSchema: z.ZodObject<{
1292
1294
  keyid?: string | undefined;
1293
1295
  expiresIn?: string | number | undefined;
1294
1296
  notBefore?: string | number | undefined;
1295
- audience?: string | string[] | undefined;
1297
+ audience?: string | RegExp | (string | RegExp)[] | undefined;
1296
1298
  subject?: string | undefined;
1297
1299
  issuer?: string | undefined;
1298
1300
  jwtid?: string | undefined;
@@ -1318,7 +1320,7 @@ declare const SignOptionsSchema: z.ZodObject<{
1318
1320
  keyid?: string | undefined;
1319
1321
  expiresIn?: string | number | undefined;
1320
1322
  notBefore?: string | number | undefined;
1321
- audience?: string | string[] | undefined;
1323
+ audience?: string | RegExp | (string | RegExp)[] | undefined;
1322
1324
  subject?: string | undefined;
1323
1325
  issuer?: string | undefined;
1324
1326
  jwtid?: string | undefined;
@@ -1351,7 +1353,7 @@ export { VerifyOptions as VerifyOptions_alias_1 }
1351
1353
 
1352
1354
  declare const VerifyOptionsSchema: z.ZodObject<{
1353
1355
  algorithms: z.ZodOptional<z.ZodArray<z.ZodEnum<["HS256", "HS384", "HS512", "RS256", "RS384", "RS512", "ES256", "ES384", "ES512", "PS256", "PS384", "PS512", "none"]>, "many">>;
1354
- audience: z.ZodOptional<z.ZodUnion<[z.ZodString, z.ZodType<RegExp, z.ZodTypeDef, RegExp>, z.ZodArray<z.ZodString, "many">]>>;
1356
+ audience: z.ZodOptional<z.ZodUnion<[z.ZodString, z.ZodType<RegExp, z.ZodTypeDef, RegExp>, z.ZodArray<z.ZodUnion<[z.ZodString, z.ZodType<RegExp, z.ZodTypeDef, RegExp>]>, "many">]>>;
1355
1357
  clockTimestamp: z.ZodOptional<z.ZodNumber>;
1356
1358
  clockTolerance: z.ZodOptional<z.ZodNumber>;
1357
1359
  complete: z.ZodOptional<z.ZodBoolean>;
@@ -1364,7 +1366,7 @@ declare const VerifyOptionsSchema: z.ZodObject<{
1364
1366
  maxAge: z.ZodOptional<z.ZodUnion<[z.ZodString, z.ZodNumber]>>;
1365
1367
  allowInvalidAsymmetricKeyTypes: z.ZodOptional<z.ZodBoolean>;
1366
1368
  }, "strip", z.ZodTypeAny, {
1367
- audience?: string | RegExp | string[] | undefined;
1369
+ audience?: string | RegExp | (string | RegExp)[] | undefined;
1368
1370
  subject?: string | undefined;
1369
1371
  issuer?: string | string[] | undefined;
1370
1372
  jwtid?: string | undefined;
@@ -1378,7 +1380,7 @@ declare const VerifyOptionsSchema: z.ZodObject<{
1378
1380
  nonce?: string | undefined;
1379
1381
  maxAge?: string | number | undefined;
1380
1382
  }, {
1381
- audience?: string | RegExp | string[] | undefined;
1383
+ audience?: string | RegExp | (string | RegExp)[] | undefined;
1382
1384
  subject?: string | undefined;
1383
1385
  issuer?: string | string[] | undefined;
1384
1386
  jwtid?: string | undefined;
package/lib/index.js CHANGED
@@ -76,7 +76,11 @@ var SignOptionsSchema = zod.z.object({
76
76
  keyid: zod.z.string().optional(),
77
77
  expiresIn: zod.z.union([zod.z.string(), zod.z.number()]).optional(),
78
78
  notBefore: zod.z.union([zod.z.string(), zod.z.number()]).optional(),
79
- audience: zod.z.union([zod.z.string(), zod.z.string().array()]).optional(),
79
+ audience: zod.z.union([
80
+ zod.z.string(),
81
+ zod.z.instanceof(RegExp),
82
+ zod.z.array(zod.z.union([zod.z.string(), zod.z.instanceof(RegExp)]))
83
+ ]).optional(),
80
84
  subject: zod.z.string().optional(),
81
85
  issuer: zod.z.string().optional(),
82
86
  jwtid: zod.z.string().optional(),
@@ -89,7 +93,11 @@ var SignOptionsSchema = zod.z.object({
89
93
  });
90
94
  var VerifyOptionsSchema = zod.z.object({
91
95
  algorithms: AlgorithmType.array().optional(),
92
- audience: zod.z.union([zod.z.string(), zod.z.instanceof(RegExp), zod.z.string().array()]).optional(),
96
+ audience: zod.z.union([
97
+ zod.z.string(),
98
+ zod.z.instanceof(RegExp),
99
+ zod.z.array(zod.z.union([zod.z.string(), zod.z.instanceof(RegExp)]))
100
+ ]).optional(),
93
101
  clockTimestamp: zod.z.number().optional(),
94
102
  clockTolerance: zod.z.number().optional(),
95
103
  complete: zod.z.boolean().optional(),
package/lib/index.js.map CHANGED
@@ -1 +1 @@
1
- {"version":3,"sources":["../src/options/jwt-service.options.mts","../src/jwt.service.mts","../src/jwt-service.provider.mts","../src/index.mts"],"names":["RequestType","z","InjectionToken","Injectable","syncInject","Logger","jwt"],"mappings":"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","file":"index.js","sourcesContent":["import type { Secret as JwtSecret } from 'jsonwebtoken'\n\nimport { z } from 'zod'\n\nexport enum RequestType {\n Sign = 'Sign',\n Verify = 'Verify',\n}\n\nexport const AlgorithmType = z.enum([\n 'HS256',\n 'HS384',\n 'HS512',\n 'RS256',\n 'RS384',\n 'RS512',\n 'ES256',\n 'ES384',\n 'ES512',\n 'PS256',\n 'PS384',\n 'PS512',\n 'none',\n])\n\nexport const JwtHeaderSchema = z.object({\n alg: AlgorithmType.or(z.string()),\n typ: z.string().optional(),\n cty: z.string().optional(),\n crit: z.string().array().optional(),\n kid: z.string().optional(),\n jku: z.string().optional(),\n x5u: z.union([z.string(), z.array(z.string())]).optional(),\n 'x5t#S256': z.string().optional(),\n x5t: z.string().optional(),\n x5c: z.union([z.string(), z.array(z.string())]).optional(),\n})\n\nexport type JwtHeader = z.infer<typeof JwtHeaderSchema>\n\nexport const SignOptionsSchema = z.object({\n algorithm: AlgorithmType.optional(),\n keyid: z.string().optional(),\n expiresIn: z.union([z.string(), z.number()]).optional(),\n notBefore: z.union([z.string(), z.number()]).optional(),\n audience: z.union([z.string(), z.string().array()]).optional(),\n subject: z.string().optional(),\n issuer: z.string().optional(),\n jwtid: z.string().optional(),\n mutatePayload: z.boolean().optional(),\n noTimestamp: z.boolean().optional(),\n header: JwtHeaderSchema.optional(),\n encoding: z.string().optional(),\n allowInsecureKeySizes: z.boolean().optional(),\n allowInvalidAsymmetricKeyTypes: z.boolean().optional(),\n})\n\nexport type SignOptions = z.infer<typeof SignOptionsSchema>\n\nexport const VerifyOptionsSchema = z.object({\n algorithms: AlgorithmType.array().optional(),\n audience: z\n .union([z.string(), z.instanceof(RegExp), z.string().array()])\n .optional(),\n clockTimestamp: z.number().optional(),\n clockTolerance: z.number().optional(),\n complete: z.boolean().optional(),\n issuer: z.union([z.string(), z.string().array()]).optional(),\n ignoreExpiration: z.boolean().optional(),\n ignoreNotBefore: z.boolean().optional(),\n jwtid: z.string().optional(),\n nonce: z.string().optional(),\n subject: z.string().optional(),\n maxAge: z.union([z.string(), z.number()]).optional(),\n allowInvalidAsymmetricKeyTypes: z.boolean().optional(),\n})\n\nexport type VerifyOptions = z.infer<typeof VerifyOptionsSchema>\n\nexport const SecretSchema = z.union([\n z.string(),\n z.instanceof(Buffer),\n z\n .object({\n type: z.string(),\n })\n .passthrough(),\n z.object({\n key: z.union([z.string(), z.instanceof(Buffer)]),\n passphrase: z.string(),\n }),\n])\n\nexport type Secret = z.infer<typeof SecretSchema>\n\nexport const JwtServiceOptionsSchema = z.object({\n signOptions: SignOptionsSchema.optional(),\n secret: z.string().optional(),\n publicKey: z.union([z.string(), z.instanceof(Buffer)]).optional(),\n privateKey: SecretSchema.optional(),\n verifyOptions: VerifyOptionsSchema.optional(),\n secretOrKeyProvider: z\n .function()\n .args(\n z.nativeEnum(RequestType),\n z.any(),\n z.union([SignOptionsSchema, VerifyOptionsSchema]).optional(),\n )\n .returns(z.union([SecretSchema, z.promise(SecretSchema)]))\n .optional(),\n})\n\nexport type JwtServiceOptions = z.infer<typeof JwtServiceOptionsSchema>\n\nexport interface JwtSignOptions extends SignOptions {\n secret?: string | Buffer\n privateKey?: Secret\n}\n\nexport interface JwtVerifyOptions extends VerifyOptions {\n secret?: string | Buffer\n publicKey?: string | Buffer\n}\n\nexport type GetSecretKeyResult = string | Buffer | JwtSecret\n","import { Injectable, InjectionToken, Logger, syncInject } from '@navios/core'\n\nimport jwt from 'jsonwebtoken'\n\nimport type {\n GetSecretKeyResult,\n JwtServiceOptions,\n JwtSignOptions,\n JwtVerifyOptions,\n SignOptions,\n VerifyOptions,\n} from './options/jwt-service.options.mjs'\n\nimport {\n JwtServiceOptionsSchema,\n RequestType,\n} from './options/jwt-service.options.mjs'\n\nexport const JwtServiceToken = InjectionToken.create(\n Symbol.for('JwtService'),\n JwtServiceOptionsSchema,\n)\n\n@Injectable({\n token: JwtServiceToken,\n})\nexport class JwtService {\n logger = syncInject(Logger, {\n context: JwtService.name,\n })\n\n constructor(private readonly options: JwtServiceOptions = {}) {}\n\n sign(\n payload: string,\n options?: Omit<JwtSignOptions, keyof SignOptions>,\n ): string\n sign(payload: Buffer | object, options?: JwtSignOptions): string\n sign(\n payload: string | Buffer | object,\n options: JwtSignOptions = {},\n ): string {\n const signOptions = this.mergeJwtOptions(\n { ...options },\n 'signOptions',\n ) as jwt.SignOptions\n const secret = this.getSecretKey(\n payload,\n options,\n 'privateKey',\n RequestType.Sign,\n )\n\n if (secret instanceof Promise) {\n secret.catch(() => {}) // suppress rejection from async provider\n this.logger.warn(\n 'For async version of \"secretOrKeyProvider\", please use \"signAsync\".',\n )\n throw new Error()\n }\n\n const allowedSignOptKeys = ['secret', 'privateKey']\n const signOptKeys = Object.keys(signOptions)\n if (\n typeof payload === 'string' &&\n signOptKeys.some((k) => !allowedSignOptKeys.includes(k))\n ) {\n throw new Error(\n 'Payload as string is not allowed with the following sign options: ' +\n signOptKeys.join(', '),\n )\n }\n\n return jwt.sign(payload, secret, signOptions)\n }\n\n signAsync(\n payload: string,\n options?: Omit<JwtSignOptions, keyof jwt.SignOptions>,\n ): Promise<string>\n signAsync(payload: Buffer | object, options?: JwtSignOptions): Promise<string>\n signAsync(\n payload: string | Buffer | object,\n options: JwtSignOptions = {},\n ): Promise<string> {\n const signOptions = this.mergeJwtOptions(\n { ...options },\n 'signOptions',\n ) as jwt.SignOptions\n const secret = this.getSecretKey(\n payload,\n options,\n 'privateKey',\n RequestType.Sign,\n )\n\n const allowedSignOptKeys = ['secret', 'privateKey']\n const signOptKeys = Object.keys(signOptions)\n if (\n typeof payload === 'string' &&\n signOptKeys.some((k) => !allowedSignOptKeys.includes(k))\n ) {\n throw new Error(\n 'Payload as string is not allowed with the following sign options: ' +\n signOptKeys.join(', '),\n )\n }\n\n return new Promise((resolve, reject) =>\n Promise.resolve()\n .then(() => secret)\n .then((scrt: GetSecretKeyResult) => {\n jwt.sign(payload, scrt, signOptions, (err, encoded) =>\n err ? reject(err) : resolve(encoded as string),\n )\n }),\n )\n }\n\n verify<T extends object = any>(\n token: string,\n options: JwtVerifyOptions = {},\n ): T {\n const verifyOptions = this.mergeJwtOptions({ ...options }, 'verifyOptions')\n const secret = this.getSecretKey(\n token,\n options,\n 'publicKey',\n RequestType.Verify,\n )\n\n if (secret instanceof Promise) {\n secret.catch(() => {}) // suppress rejection from async provider\n this.logger.warn(\n 'For async version of \"secretOrKeyProvider\", please use \"verifyAsync\".',\n )\n throw new Error()\n }\n\n return jwt.verify(token, secret, verifyOptions) as unknown as T\n }\n\n verifyAsync<T extends object = any>(\n token: string,\n options: JwtVerifyOptions = {},\n ): Promise<T> {\n const verifyOptions = this.mergeJwtOptions({ ...options }, 'verifyOptions')\n const secret = this.getSecretKey(\n token,\n options,\n 'publicKey',\n RequestType.Verify,\n )\n\n return new Promise((resolve, reject) =>\n Promise.resolve()\n .then(() => secret)\n .then((scrt: GetSecretKeyResult) => {\n jwt.verify(token, scrt, verifyOptions, (err, decoded) =>\n err ? reject(err) : resolve(decoded as T),\n )\n })\n .catch(reject),\n )\n }\n\n decode<T = any>(token: string, options?: jwt.DecodeOptions): T {\n return jwt.decode(token, options) as T\n }\n\n private mergeJwtOptions(\n options: JwtVerifyOptions | JwtSignOptions,\n key: 'verifyOptions' | 'signOptions',\n ): VerifyOptions | SignOptions {\n delete options.secret\n if (key === 'signOptions') {\n delete (options as JwtSignOptions).privateKey\n } else {\n delete (options as JwtVerifyOptions).publicKey\n }\n return options\n ? {\n ...(this.options[key] || {}),\n ...options,\n }\n : // @ts-expect-error We check it\n this.options[key]\n }\n\n private getSecretKey(\n token: string | object | Buffer,\n options: JwtVerifyOptions | JwtSignOptions,\n key: 'publicKey' | 'privateKey',\n secretRequestType: RequestType,\n ): GetSecretKeyResult | Promise<GetSecretKeyResult> {\n const secret = this.options.secretOrKeyProvider\n ? this.options.secretOrKeyProvider(secretRequestType, token, options)\n : options?.secret ||\n this.options.secret ||\n (key === 'privateKey'\n ? (options as JwtSignOptions)?.privateKey || this.options.privateKey\n : (options as JwtVerifyOptions)?.publicKey ||\n this.options.publicKey) ||\n this.options[key]\n\n return secret as GetSecretKeyResult\n }\n}\n","import type { BoundInjectionToken, FactoryInjectionToken } from '@navios/core'\n\nimport { InjectionToken } from '@navios/core'\n\nimport type { JwtServiceOptions } from './options/jwt-service.options.mjs'\n\nimport { JwtService, JwtServiceToken } from './jwt.service.mjs'\nimport { JwtServiceOptionsSchema } from './options/jwt-service.options.mjs'\n\nexport function provideJwtService(\n config: JwtServiceOptions | (() => Promise<JwtServiceOptions>),\n):\n | BoundInjectionToken<JwtService, typeof JwtServiceOptionsSchema>\n | FactoryInjectionToken<JwtService, typeof JwtServiceOptionsSchema> {\n if (typeof config === 'function') {\n return InjectionToken.factory(JwtServiceToken, config)\n }\n return InjectionToken.bound(JwtServiceToken, config)\n}\n","import jwt from 'jsonwebtoken'\n\nexport * from './options/jwt-service.options.mjs'\nexport * from './jwt.service.mjs'\nexport * from './jwt-service.provider.mjs'\nexport const TokenExpiredError = jwt.TokenExpiredError\nexport const NotBeforeError = jwt.NotBeforeError\nexport const JsonWebTokenError = jwt.JsonWebTokenError\n"]}
1
+ {"version":3,"sources":["../src/options/jwt-service.options.mts","../src/jwt.service.mts","../src/jwt-service.provider.mts","../src/index.mts"],"names":["RequestType","z","InjectionToken","Injectable","syncInject","Logger","jwt"],"mappings":"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","file":"index.js","sourcesContent":["import type { Secret as JwtSecret } from 'jsonwebtoken'\n\nimport { z } from 'zod'\n\nexport enum RequestType {\n Sign = 'Sign',\n Verify = 'Verify',\n}\n\nexport const AlgorithmType = z.enum([\n 'HS256',\n 'HS384',\n 'HS512',\n 'RS256',\n 'RS384',\n 'RS512',\n 'ES256',\n 'ES384',\n 'ES512',\n 'PS256',\n 'PS384',\n 'PS512',\n 'none',\n])\n\nexport const JwtHeaderSchema = z.object({\n alg: AlgorithmType.or(z.string()),\n typ: z.string().optional(),\n cty: z.string().optional(),\n crit: z.string().array().optional(),\n kid: z.string().optional(),\n jku: z.string().optional(),\n x5u: z.union([z.string(), z.array(z.string())]).optional(),\n 'x5t#S256': z.string().optional(),\n x5t: z.string().optional(),\n x5c: z.union([z.string(), z.array(z.string())]).optional(),\n})\n\nexport type JwtHeader = z.infer<typeof JwtHeaderSchema>\n\nexport const SignOptionsSchema = z.object({\n algorithm: AlgorithmType.optional(),\n keyid: z.string().optional(),\n expiresIn: z.union([z.string(), z.number()]).optional(),\n notBefore: z.union([z.string(), z.number()]).optional(),\n audience: z\n .union([\n z.string(),\n z.instanceof(RegExp),\n z.array(z.union([z.string(), z.instanceof(RegExp)])),\n ])\n .optional(),\n subject: z.string().optional(),\n issuer: z.string().optional(),\n jwtid: z.string().optional(),\n mutatePayload: z.boolean().optional(),\n noTimestamp: z.boolean().optional(),\n header: JwtHeaderSchema.optional(),\n encoding: z.string().optional(),\n allowInsecureKeySizes: z.boolean().optional(),\n allowInvalidAsymmetricKeyTypes: z.boolean().optional(),\n})\n\nexport type SignOptions = z.infer<typeof SignOptionsSchema>\n\nexport const VerifyOptionsSchema = z.object({\n algorithms: AlgorithmType.array().optional(),\n audience: z\n .union([\n z.string(),\n z.instanceof(RegExp),\n z.array(z.union([z.string(), z.instanceof(RegExp)])),\n ])\n .optional(),\n clockTimestamp: z.number().optional(),\n clockTolerance: z.number().optional(),\n complete: z.boolean().optional(),\n issuer: z.union([z.string(), z.string().array()]).optional(),\n ignoreExpiration: z.boolean().optional(),\n ignoreNotBefore: z.boolean().optional(),\n jwtid: z.string().optional(),\n nonce: z.string().optional(),\n subject: z.string().optional(),\n maxAge: z.union([z.string(), z.number()]).optional(),\n allowInvalidAsymmetricKeyTypes: z.boolean().optional(),\n})\n\nexport type VerifyOptions = z.infer<typeof VerifyOptionsSchema>\n\nexport const SecretSchema = z.union([\n z.string(),\n z.instanceof(Buffer),\n z\n .object({\n type: z.string(),\n })\n .passthrough(),\n z.object({\n key: z.union([z.string(), z.instanceof(Buffer)]),\n passphrase: z.string(),\n }),\n])\n\nexport type Secret = z.infer<typeof SecretSchema>\n\nexport const JwtServiceOptionsSchema = z.object({\n signOptions: SignOptionsSchema.optional(),\n secret: z.string().optional(),\n publicKey: z.union([z.string(), z.instanceof(Buffer)]).optional(),\n privateKey: SecretSchema.optional(),\n verifyOptions: VerifyOptionsSchema.optional(),\n secretOrKeyProvider: z\n .function()\n .args(\n z.nativeEnum(RequestType),\n z.any(),\n z.union([SignOptionsSchema, VerifyOptionsSchema]).optional(),\n )\n .returns(z.union([SecretSchema, z.promise(SecretSchema)]))\n .optional(),\n})\n\nexport type JwtServiceOptions = z.infer<typeof JwtServiceOptionsSchema>\n\nexport interface JwtSignOptions extends SignOptions {\n secret?: string | Buffer\n privateKey?: Secret\n}\n\nexport interface JwtVerifyOptions extends VerifyOptions {\n secret?: string | Buffer\n publicKey?: string | Buffer\n}\n\nexport type GetSecretKeyResult = string | Buffer | JwtSecret\n","import { Injectable, InjectionToken, Logger, syncInject } from '@navios/core'\n\nimport jwt from 'jsonwebtoken'\n\nimport type {\n GetSecretKeyResult,\n JwtServiceOptions,\n JwtSignOptions,\n JwtVerifyOptions,\n SignOptions,\n VerifyOptions,\n} from './options/jwt-service.options.mjs'\n\nimport {\n JwtServiceOptionsSchema,\n RequestType,\n} from './options/jwt-service.options.mjs'\n\nexport const JwtServiceToken = InjectionToken.create(\n Symbol.for('JwtService'),\n JwtServiceOptionsSchema,\n)\n\n@Injectable({\n token: JwtServiceToken,\n})\nexport class JwtService {\n logger = syncInject(Logger, {\n context: JwtService.name,\n })\n\n constructor(private readonly options: JwtServiceOptions = {}) {}\n\n sign(\n payload: string,\n options?: Omit<JwtSignOptions, keyof SignOptions>,\n ): string\n sign(payload: Buffer | object, options?: JwtSignOptions): string\n sign(\n payload: string | Buffer | object,\n options: JwtSignOptions = {},\n ): string {\n const signOptions = this.mergeJwtOptions(\n { ...options },\n 'signOptions',\n ) as jwt.SignOptions\n const secret = this.getSecretKey(\n payload,\n options,\n 'privateKey',\n RequestType.Sign,\n )\n\n if (secret instanceof Promise) {\n secret.catch(() => {}) // suppress rejection from async provider\n this.logger.warn(\n 'For async version of \"secretOrKeyProvider\", please use \"signAsync\".',\n )\n throw new Error()\n }\n\n const allowedSignOptKeys = ['secret', 'privateKey']\n const signOptKeys = Object.keys(signOptions)\n if (\n typeof payload === 'string' &&\n signOptKeys.some((k) => !allowedSignOptKeys.includes(k))\n ) {\n throw new Error(\n 'Payload as string is not allowed with the following sign options: ' +\n signOptKeys.join(', '),\n )\n }\n\n return jwt.sign(payload, secret, signOptions)\n }\n\n signAsync(\n payload: string,\n options?: Omit<JwtSignOptions, keyof jwt.SignOptions>,\n ): Promise<string>\n signAsync(payload: Buffer | object, options?: JwtSignOptions): Promise<string>\n signAsync(\n payload: string | Buffer | object,\n options: JwtSignOptions = {},\n ): Promise<string> {\n const signOptions = this.mergeJwtOptions(\n { ...options },\n 'signOptions',\n ) as jwt.SignOptions\n const secret = this.getSecretKey(\n payload,\n options,\n 'privateKey',\n RequestType.Sign,\n )\n\n const allowedSignOptKeys = ['secret', 'privateKey']\n const signOptKeys = Object.keys(signOptions)\n if (\n typeof payload === 'string' &&\n signOptKeys.some((k) => !allowedSignOptKeys.includes(k))\n ) {\n throw new Error(\n 'Payload as string is not allowed with the following sign options: ' +\n signOptKeys.join(', '),\n )\n }\n\n return new Promise((resolve, reject) =>\n Promise.resolve()\n .then(() => secret)\n .then((scrt: GetSecretKeyResult) => {\n jwt.sign(payload, scrt, signOptions, (err, encoded) =>\n err ? reject(err) : resolve(encoded as string),\n )\n }),\n )\n }\n\n verify<T extends object = any>(\n token: string,\n options: JwtVerifyOptions = {},\n ): T {\n const verifyOptions = this.mergeJwtOptions({ ...options }, 'verifyOptions')\n const secret = this.getSecretKey(\n token,\n options,\n 'publicKey',\n RequestType.Verify,\n )\n\n if (secret instanceof Promise) {\n secret.catch(() => {}) // suppress rejection from async provider\n this.logger.warn(\n 'For async version of \"secretOrKeyProvider\", please use \"verifyAsync\".',\n )\n throw new Error()\n }\n\n // @ts-expect-error We check it\n return jwt.verify(token, secret, verifyOptions) as unknown as T\n }\n\n verifyAsync<T extends object = any>(\n token: string,\n options: JwtVerifyOptions = {},\n ): Promise<T> {\n const verifyOptions = this.mergeJwtOptions({ ...options }, 'verifyOptions')\n const secret = this.getSecretKey(\n token,\n options,\n 'publicKey',\n RequestType.Verify,\n )\n\n return new Promise((resolve, reject) =>\n Promise.resolve()\n .then(() => secret)\n .then((scrt: GetSecretKeyResult) => {\n // @ts-expect-error We check it\n jwt.verify(token, scrt, verifyOptions, (err, decoded) =>\n err ? reject(err) : resolve(decoded as T),\n )\n })\n .catch(reject),\n )\n }\n\n decode<T = any>(token: string, options?: jwt.DecodeOptions): T {\n return jwt.decode(token, options) as T\n }\n\n private mergeJwtOptions(\n options: JwtVerifyOptions | JwtSignOptions,\n key: 'verifyOptions' | 'signOptions',\n ): VerifyOptions | SignOptions {\n delete options.secret\n if (key === 'signOptions') {\n delete (options as JwtSignOptions).privateKey\n } else {\n delete (options as JwtVerifyOptions).publicKey\n }\n return options\n ? {\n ...(this.options[key] || {}),\n ...options,\n }\n : // @ts-expect-error We check it\n this.options[key]\n }\n\n private getSecretKey(\n token: string | object | Buffer,\n options: JwtVerifyOptions | JwtSignOptions,\n key: 'publicKey' | 'privateKey',\n secretRequestType: RequestType,\n ): GetSecretKeyResult | Promise<GetSecretKeyResult> {\n const secret = this.options.secretOrKeyProvider\n ? this.options.secretOrKeyProvider(secretRequestType, token, options)\n : options?.secret ||\n this.options.secret ||\n (key === 'privateKey'\n ? (options as JwtSignOptions)?.privateKey || this.options.privateKey\n : (options as JwtVerifyOptions)?.publicKey ||\n this.options.publicKey) ||\n this.options[key]\n\n return secret as GetSecretKeyResult\n }\n}\n","import type { BoundInjectionToken, FactoryInjectionToken } from '@navios/core'\n\nimport { InjectionToken } from '@navios/core'\n\nimport type { JwtServiceOptions } from './options/jwt-service.options.mjs'\n\nimport { JwtService, JwtServiceToken } from './jwt.service.mjs'\nimport { JwtServiceOptionsSchema } from './options/jwt-service.options.mjs'\n\nexport function provideJwtService(\n config: JwtServiceOptions,\n): BoundInjectionToken<JwtService, typeof JwtServiceOptionsSchema>\nexport function provideJwtService(\n config: () => Promise<JwtServiceOptions>,\n): FactoryInjectionToken<JwtService, typeof JwtServiceOptionsSchema>\nexport function provideJwtService(\n config: JwtServiceOptions | (() => Promise<JwtServiceOptions>),\n):\n | BoundInjectionToken<JwtService, typeof JwtServiceOptionsSchema>\n | FactoryInjectionToken<JwtService, typeof JwtServiceOptionsSchema> {\n if (typeof config === 'function') {\n return InjectionToken.factory(JwtServiceToken, config)\n }\n return InjectionToken.bound(JwtServiceToken, config)\n}\n","import jwt from 'jsonwebtoken'\n\nexport * from './options/jwt-service.options.mjs'\nexport * from './jwt.service.mjs'\nexport * from './jwt-service.provider.mjs'\nexport const TokenExpiredError = jwt.TokenExpiredError\nexport const NotBeforeError = jwt.NotBeforeError\nexport const JsonWebTokenError = jwt.JsonWebTokenError\n"]}
package/lib/index.mjs CHANGED
@@ -70,7 +70,11 @@ var SignOptionsSchema = z.object({
70
70
  keyid: z.string().optional(),
71
71
  expiresIn: z.union([z.string(), z.number()]).optional(),
72
72
  notBefore: z.union([z.string(), z.number()]).optional(),
73
- audience: z.union([z.string(), z.string().array()]).optional(),
73
+ audience: z.union([
74
+ z.string(),
75
+ z.instanceof(RegExp),
76
+ z.array(z.union([z.string(), z.instanceof(RegExp)]))
77
+ ]).optional(),
74
78
  subject: z.string().optional(),
75
79
  issuer: z.string().optional(),
76
80
  jwtid: z.string().optional(),
@@ -83,7 +87,11 @@ var SignOptionsSchema = z.object({
83
87
  });
84
88
  var VerifyOptionsSchema = z.object({
85
89
  algorithms: AlgorithmType.array().optional(),
86
- audience: z.union([z.string(), z.instanceof(RegExp), z.string().array()]).optional(),
90
+ audience: z.union([
91
+ z.string(),
92
+ z.instanceof(RegExp),
93
+ z.array(z.union([z.string(), z.instanceof(RegExp)]))
94
+ ]).optional(),
87
95
  clockTimestamp: z.number().optional(),
88
96
  clockTolerance: z.number().optional(),
89
97
  complete: z.boolean().optional(),