@volontariapp/auth 2.1.16-snap-e3bade7 → 3.0.0-snap-55be23a

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 (72) hide show
  1. package/CHANGELOG.md +5 -4
  2. package/dist/auth.module.d.ts +3 -0
  3. package/dist/auth.module.d.ts.map +1 -1
  4. package/dist/auth.module.js +60 -10
  5. package/dist/auth.module.js.map +1 -1
  6. package/dist/constants/index.d.ts +2 -0
  7. package/dist/constants/index.d.ts.map +1 -1
  8. package/dist/constants/index.js +2 -0
  9. package/dist/constants/index.js.map +1 -1
  10. package/dist/decorators/public.decorator.d.ts +2 -0
  11. package/dist/decorators/public.decorator.d.ts.map +1 -0
  12. package/dist/decorators/public.decorator.js +4 -0
  13. package/dist/decorators/public.decorator.js.map +1 -0
  14. package/dist/decorators/refresh-token.decorator.d.ts +2 -0
  15. package/dist/decorators/refresh-token.decorator.d.ts.map +1 -0
  16. package/dist/decorators/refresh-token.decorator.js +7 -0
  17. package/dist/decorators/refresh-token.decorator.js.map +1 -0
  18. package/dist/guards/access-token.guard.d.ts +3 -1
  19. package/dist/guards/access-token.guard.d.ts.map +1 -1
  20. package/dist/guards/access-token.guard.js +25 -5
  21. package/dist/guards/access-token.guard.js.map +1 -1
  22. package/dist/index.d.ts +2 -0
  23. package/dist/index.d.ts.map +1 -1
  24. package/dist/index.js +2 -0
  25. package/dist/index.js.map +1 -1
  26. package/dist/interceptors/grpc-internal.interceptor.d.ts +3 -3
  27. package/dist/interceptors/grpc-internal.interceptor.d.ts.map +1 -1
  28. package/dist/interceptors/grpc-internal.interceptor.js +10 -7
  29. package/dist/interceptors/grpc-internal.interceptor.js.map +1 -1
  30. package/dist/middlewares/access-token.middleware.d.ts.map +1 -1
  31. package/dist/middlewares/access-token.middleware.js +3 -0
  32. package/dist/middlewares/access-token.middleware.js.map +1 -1
  33. package/dist/middlewares/refresh-token.middleware.d.ts.map +1 -1
  34. package/dist/middlewares/refresh-token.middleware.js +9 -1
  35. package/dist/middlewares/refresh-token.middleware.js.map +1 -1
  36. package/dist/services/grpc-metadata.helper.d.ts +1 -1
  37. package/dist/services/grpc-metadata.helper.d.ts.map +1 -1
  38. package/dist/services/grpc-metadata.helper.js +2 -1
  39. package/dist/services/grpc-metadata.helper.js.map +1 -1
  40. package/dist/test/example/public-test.controller.d.ts +23 -0
  41. package/dist/test/example/public-test.controller.d.ts.map +1 -0
  42. package/dist/test/example/public-test.controller.js +83 -0
  43. package/dist/test/example/public-test.controller.js.map +1 -0
  44. package/dist/test/integration/full-auth-flow.int.spec.js +31 -10
  45. package/dist/test/integration/full-auth-flow.int.spec.js.map +1 -1
  46. package/dist/test/integration/public-bypass.int.spec.d.ts +2 -0
  47. package/dist/test/integration/public-bypass.int.spec.d.ts.map +1 -0
  48. package/dist/test/integration/public-bypass.int.spec.js +127 -0
  49. package/dist/test/integration/public-bypass.int.spec.js.map +1 -0
  50. package/dist/test/unit/access-token.guard.unit.spec.d.ts +2 -0
  51. package/dist/test/unit/access-token.guard.unit.spec.d.ts.map +1 -0
  52. package/dist/test/unit/access-token.guard.unit.spec.js +69 -0
  53. package/dist/test/unit/access-token.guard.unit.spec.js.map +1 -0
  54. package/dist/test/unit/access-token.middleware.unit.spec.d.ts +2 -0
  55. package/dist/test/unit/access-token.middleware.unit.spec.d.ts.map +1 -0
  56. package/dist/test/unit/access-token.middleware.unit.spec.js +65 -0
  57. package/dist/test/unit/access-token.middleware.unit.spec.js.map +1 -0
  58. package/dist/test/unit/grpc-internal.interceptor.unit.spec.js +14 -7
  59. package/dist/test/unit/grpc-internal.interceptor.unit.spec.js.map +1 -1
  60. package/dist/test/unit/grpc-metadata.helper.unit.spec.d.ts +2 -0
  61. package/dist/test/unit/grpc-metadata.helper.unit.spec.d.ts.map +1 -0
  62. package/dist/test/unit/grpc-metadata.helper.unit.spec.js +25 -0
  63. package/dist/test/unit/grpc-metadata.helper.unit.spec.js.map +1 -0
  64. package/dist/test/unit/refresh-token.guard.unit.spec.d.ts +2 -0
  65. package/dist/test/unit/refresh-token.guard.unit.spec.d.ts.map +1 -0
  66. package/dist/test/unit/refresh-token.guard.unit.spec.js +43 -0
  67. package/dist/test/unit/refresh-token.guard.unit.spec.js.map +1 -0
  68. package/dist/test/unit/refresh-token.middleware.unit.spec.d.ts +2 -0
  69. package/dist/test/unit/refresh-token.middleware.unit.spec.d.ts.map +1 -0
  70. package/dist/test/unit/refresh-token.middleware.unit.spec.js +44 -0
  71. package/dist/test/unit/refresh-token.middleware.unit.spec.js.map +1 -0
  72. package/package.json +2 -2
@@ -0,0 +1,44 @@
1
+ import { describe, it, expect, beforeEach, jest } from '@jest/globals';
2
+ import { RefreshTokenMiddleware } from '../../middlewares/refresh-token.middleware.js';
3
+ import { Logger } from '@volontariapp/logger';
4
+ describe('RefreshTokenMiddleware (Unit)', () => {
5
+ let middleware;
6
+ beforeEach(() => {
7
+ jest.restoreAllMocks();
8
+ middleware = new RefreshTokenMiddleware();
9
+ jest.spyOn(Logger.prototype, 'debug').mockImplementation(() => { });
10
+ jest.spyOn(Logger.prototype, 'warn').mockImplementation(() => { });
11
+ });
12
+ it('should extract token from Authorization header', () => {
13
+ const req = {
14
+ headers: {
15
+ authorization: 'Bearer refresh-token-123',
16
+ },
17
+ };
18
+ const next = jest.fn();
19
+ middleware.use(req, {}, next);
20
+ expect(req).toHaveProperty('refreshToken', 'refresh-token-123');
21
+ expect(next).toHaveBeenCalled();
22
+ });
23
+ it('should extract token from cookies', () => {
24
+ const req = {
25
+ headers: {},
26
+ cookies: {
27
+ refreshToken: 'cookie-refresh-token',
28
+ },
29
+ };
30
+ const next = jest.fn();
31
+ middleware.use(req, {}, next);
32
+ expect(req).toHaveProperty('refreshToken', 'cookie-refresh-token');
33
+ expect(next).toHaveBeenCalled();
34
+ });
35
+ it('should log warning if no refresh token is found', () => {
36
+ const req = { headers: {} };
37
+ const next = jest.fn();
38
+ const warnSpy = jest.spyOn(Logger.prototype, 'warn');
39
+ middleware.use(req, {}, next);
40
+ expect(req).not.toHaveProperty('refreshToken');
41
+ expect(warnSpy).toHaveBeenCalledWith('No refresh token found in headers or cookies');
42
+ });
43
+ });
44
+ //# sourceMappingURL=refresh-token.middleware.unit.spec.js.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"refresh-token.middleware.unit.spec.js","sourceRoot":"","sources":["../../../src/test/unit/refresh-token.middleware.unit.spec.ts"],"names":[],"mappings":"AAAA,OAAO,EAAE,QAAQ,EAAE,EAAE,EAAE,MAAM,EAAE,UAAU,EAAE,IAAI,EAAE,MAAM,eAAe,CAAC;AACvE,OAAO,EAAE,sBAAsB,EAAE,MAAM,+CAA+C,CAAC;AACvF,OAAO,EAAE,MAAM,EAAE,MAAM,sBAAsB,CAAC;AAE9C,QAAQ,CAAC,+BAA+B,EAAE,GAAG,EAAE;IAC7C,IAAI,UAAkC,CAAC;IAEvC,UAAU,CAAC,GAAG,EAAE;QACd,IAAI,CAAC,eAAe,EAAE,CAAC;QACvB,UAAU,GAAG,IAAI,sBAAsB,EAAE,CAAC;QAC1C,IAAI,CAAC,KAAK,CAAC,MAAM,CAAC,SAAS,EAAE,OAAO,CAAC,CAAC,kBAAkB,CAAC,GAAG,EAAE,GAAE,CAAC,CAAC,CAAC;QACnE,IAAI,CAAC,KAAK,CAAC,MAAM,CAAC,SAAS,EAAE,MAAM,CAAC,CAAC,kBAAkB,CAAC,GAAG,EAAE,GAAE,CAAC,CAAC,CAAC;IACpE,CAAC,CAAC,CAAC;IAEH,EAAE,CAAC,gDAAgD,EAAE,GAAG,EAAE;QACxD,MAAM,GAAG,GAAG;YACV,OAAO,EAAE;gBACP,aAAa,EAAE,0BAA0B;aAC1C;SACF,CAAC;QACF,MAAM,IAAI,GAAG,IAAI,CAAC,EAAE,EAAE,CAAC;QAEvB,UAAU,CAAC,GAAG,CAAC,GAAG,EAAE,EAAE,EAAE,IAAI,CAAC,CAAC;QAE9B,MAAM,CAAC,GAAG,CAAC,CAAC,cAAc,CAAC,cAAc,EAAE,mBAAmB,CAAC,CAAC;QAChE,MAAM,CAAC,IAAI,CAAC,CAAC,gBAAgB,EAAE,CAAC;IAClC,CAAC,CAAC,CAAC;IAEH,EAAE,CAAC,mCAAmC,EAAE,GAAG,EAAE;QAC3C,MAAM,GAAG,GAAG;YACV,OAAO,EAAE,EAAE;YACX,OAAO,EAAE;gBACP,YAAY,EAAE,sBAAsB;aACrC;SACF,CAAC;QACF,MAAM,IAAI,GAAG,IAAI,CAAC,EAAE,EAAE,CAAC;QAEvB,UAAU,CAAC,GAAG,CAAC,GAAG,EAAE,EAAE,EAAE,IAAI,CAAC,CAAC;QAE9B,MAAM,CAAC,GAAG,CAAC,CAAC,cAAc,CAAC,cAAc,EAAE,sBAAsB,CAAC,CAAC;QACnE,MAAM,CAAC,IAAI,CAAC,CAAC,gBAAgB,EAAE,CAAC;IAClC,CAAC,CAAC,CAAC;IAEH,EAAE,CAAC,iDAAiD,EAAE,GAAG,EAAE;QACzD,MAAM,GAAG,GAAG,EAAE,OAAO,EAAE,EAAE,EAAE,CAAC;QAC5B,MAAM,IAAI,GAAG,IAAI,CAAC,EAAE,EAAE,CAAC;QACvB,MAAM,OAAO,GAAG,IAAI,CAAC,KAAK,CAAC,MAAM,CAAC,SAAS,EAAE,MAAM,CAAC,CAAC;QAErD,UAAU,CAAC,GAAG,CAAC,GAAG,EAAE,EAAE,EAAE,IAAI,CAAC,CAAC;QAE9B,MAAM,CAAC,GAAG,CAAC,CAAC,GAAG,CAAC,cAAc,CAAC,cAAc,CAAC,CAAC;QAC/C,MAAM,CAAC,OAAO,CAAC,CAAC,oBAAoB,CAAC,8CAA8C,CAAC,CAAC;IACvF,CAAC,CAAC,CAAC;AACL,CAAC,CAAC,CAAC"}
package/package.json CHANGED
@@ -1,6 +1,6 @@
1
1
  {
2
2
  "name": "@volontariapp/auth",
3
- "version": "2.1.16-snap-e3bade7",
3
+ "version": "3.0.0-snap-55be23a",
4
4
  "publishConfig": {
5
5
  "access": "public",
6
6
  "provenance": true
@@ -36,7 +36,7 @@
36
36
  },
37
37
  "dependencies": {
38
38
  "@volontariapp/errors": "0.5.0",
39
- "@volontariapp/errors-nest": "0.10.1-snap-e3bade7",
39
+ "@volontariapp/errors-nest": "0.10.0",
40
40
  "@volontariapp/logger": "0.2.3",
41
41
  "jose": "^6.2.2",
42
42
  "reflect-metadata": "^0.2.2",