@nauth-toolkit/core 0.1.107 → 0.1.109

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 (96) hide show
  1. package/dist/bootstrap.d.ts.map +1 -1
  2. package/dist/bootstrap.js.map +1 -1
  3. package/dist/dto/admin-remove-device.dto.d.ts +22 -0
  4. package/dist/dto/admin-remove-device.dto.d.ts.map +1 -0
  5. package/dist/dto/{admin-remove-devices.dto.js → admin-remove-device.dto.js} +21 -21
  6. package/dist/dto/admin-remove-device.dto.js.map +1 -0
  7. package/dist/dto/admin-set-preferred-device.dto.d.ts +32 -0
  8. package/dist/dto/admin-set-preferred-device.dto.d.ts.map +1 -0
  9. package/dist/dto/admin-set-preferred-device.dto.js +64 -0
  10. package/dist/dto/admin-set-preferred-device.dto.js.map +1 -0
  11. package/dist/dto/admin-signup-social.dto.d.ts +2 -2
  12. package/dist/dto/admin-signup.dto.d.ts +2 -2
  13. package/dist/dto/challenge-response.dto.d.ts +4 -0
  14. package/dist/dto/challenge-response.dto.d.ts.map +1 -1
  15. package/dist/dto/disable-user.dto.d.ts +2 -2
  16. package/dist/dto/enable-user.dto.d.ts +2 -2
  17. package/dist/dto/get-user-response.dto.d.ts +1 -1
  18. package/dist/dto/get-user-response.dto.js +1 -1
  19. package/dist/dto/get-users.dto.d.ts +2 -2
  20. package/dist/dto/index.d.ts +4 -4
  21. package/dist/dto/index.d.ts.map +1 -1
  22. package/dist/dto/index.js +4 -4
  23. package/dist/dto/index.js.map +1 -1
  24. package/dist/dto/remove-device.dto.d.ts +49 -0
  25. package/dist/dto/remove-device.dto.d.ts.map +1 -0
  26. package/dist/dto/remove-device.dto.js +76 -0
  27. package/dist/dto/remove-device.dto.js.map +1 -0
  28. package/dist/dto/respond-challenge.dto.d.ts +8 -0
  29. package/dist/dto/respond-challenge.dto.d.ts.map +1 -1
  30. package/dist/dto/respond-challenge.dto.js +14 -0
  31. package/dist/dto/respond-challenge.dto.js.map +1 -1
  32. package/dist/dto/set-preferred-device.dto.d.ts +45 -0
  33. package/dist/dto/set-preferred-device.dto.d.ts.map +1 -0
  34. package/dist/dto/set-preferred-device.dto.js +73 -0
  35. package/dist/dto/set-preferred-device.dto.js.map +1 -0
  36. package/dist/dto/setup-mfa.dto.d.ts.map +1 -1
  37. package/dist/dto/setup-mfa.dto.js.map +1 -1
  38. package/dist/dto/user-response.dto.d.ts +3 -3
  39. package/dist/dto/user-response.dto.js +5 -5
  40. package/dist/handlers/client-info.handler.d.ts.map +1 -1
  41. package/dist/handlers/client-info.handler.js.map +1 -1
  42. package/dist/interfaces/provider.interface.d.ts.map +1 -1
  43. package/dist/openapi/components.schemas.json +78 -58
  44. package/dist/schemas/auth-config.schema.d.ts +16 -16
  45. package/dist/services/admin-auth.service.d.ts +5 -5
  46. package/dist/services/admin-auth.service.js +2 -2
  47. package/dist/services/auth-audit.service.d.ts.map +1 -1
  48. package/dist/services/auth-audit.service.js +33 -2
  49. package/dist/services/auth-audit.service.js.map +1 -1
  50. package/dist/services/auth-challenge-helper.service.d.ts.map +1 -1
  51. package/dist/services/auth-challenge-helper.service.js +52 -2
  52. package/dist/services/auth-challenge-helper.service.js.map +1 -1
  53. package/dist/services/auth-service-internal-helpers.d.ts.map +1 -1
  54. package/dist/services/auth-service-internal-helpers.js +35 -0
  55. package/dist/services/auth-service-internal-helpers.js.map +1 -1
  56. package/dist/services/auth.service.d.ts +2 -2
  57. package/dist/services/auth.service.d.ts.map +1 -1
  58. package/dist/services/auth.service.js +3 -2
  59. package/dist/services/auth.service.js.map +1 -1
  60. package/dist/services/email-verification.service.d.ts.map +1 -1
  61. package/dist/services/email-verification.service.js +17 -0
  62. package/dist/services/email-verification.service.js.map +1 -1
  63. package/dist/services/mfa-base.service.d.ts +23 -6
  64. package/dist/services/mfa-base.service.d.ts.map +1 -1
  65. package/dist/services/mfa-base.service.js +70 -18
  66. package/dist/services/mfa-base.service.js.map +1 -1
  67. package/dist/services/mfa.service.d.ts +54 -35
  68. package/dist/services/mfa.service.d.ts.map +1 -1
  69. package/dist/services/mfa.service.js +214 -165
  70. package/dist/services/mfa.service.js.map +1 -1
  71. package/dist/services/phone-verification.service.d.ts.map +1 -1
  72. package/dist/services/phone-verification.service.js +14 -2
  73. package/dist/services/phone-verification.service.js.map +1 -1
  74. package/dist/services/session.service.d.ts +1 -2
  75. package/dist/services/session.service.d.ts.map +1 -1
  76. package/dist/services/session.service.js.map +1 -1
  77. package/dist/services/user.service.d.ts +5 -5
  78. package/dist/services/user.service.d.ts.map +1 -1
  79. package/dist/services/user.service.js +16 -10
  80. package/dist/services/user.service.js.map +1 -1
  81. package/package.json +2 -2
  82. package/dist/dto/admin-remove-devices.dto.d.ts +0 -25
  83. package/dist/dto/admin-remove-devices.dto.d.ts.map +0 -1
  84. package/dist/dto/admin-remove-devices.dto.js.map +0 -1
  85. package/dist/dto/admin-set-preferred-method.dto.d.ts +0 -25
  86. package/dist/dto/admin-set-preferred-method.dto.d.ts.map +0 -1
  87. package/dist/dto/admin-set-preferred-method.dto.js +0 -50
  88. package/dist/dto/admin-set-preferred-method.dto.js.map +0 -1
  89. package/dist/dto/remove-devices.dto.d.ts +0 -48
  90. package/dist/dto/remove-devices.dto.d.ts.map +0 -1
  91. package/dist/dto/remove-devices.dto.js +0 -79
  92. package/dist/dto/remove-devices.dto.js.map +0 -1
  93. package/dist/dto/set-preferred-method.dto.d.ts +0 -44
  94. package/dist/dto/set-preferred-method.dto.d.ts.map +0 -1
  95. package/dist/dto/set-preferred-method.dto.js +0 -75
  96. package/dist/dto/set-preferred-method.dto.js.map +0 -1
@@ -1 +1 @@
1
- {"version":3,"file":"bootstrap.d.ts","sourceRoot":"","sources":["../src/bootstrap.ts"],"names":[],"mappings":"AAAA;;;;;;;;;;;;;;;;;;;;;;;;;;;GA2BG;AAEH,OAAO,EAAE,UAAU,EAAE,MAAM,SAAS,CAAC;AACrC,OAAO,EAAE,WAAW,EAAE,MAAM,+BAA+B,CAAC;AAC5D,OAAO,EAAE,WAAW,EAAE,MAAM,sBAAsB,CAAC;AAGnD,OAAO,EAAE,YAAY,EAA+B,MAAM,uBAAuB,CAAC;AASlF,OAAO,EAAE,WAAW,EAAE,MAAM,yBAAyB,CAAC;AAKtD,OAAO,EAAgB,aAAa,EAAE,MAAM,6BAA6B,CAAC;AAE1E,OAAO,EAAkB,oBAAoB,EAAE,MAAM,2BAA2B,CAAC;AAGjF,OAAO,EAAE,UAAU,EAAE,MAAM,oCAAoC,CAAC;AAChE,OAAO,EAAE,KAAK,EAAE,MAAM,iCAAiC,CAAC;AAOxD;;GAEG;AACH,MAAM,WAAW,YAAY;IAC3B,0BAA0B;IAC1B,MAAM,EAAE,WAAW,CAAC;IAEpB,yBAAyB;IACzB,UAAU,EAAE,UAAU,CAAC;IAEvB;;;OAGG;IACH,OAAO,CAAC,EAAE,YAAY,CAAC;CACxB;AAED;;;;;;;GAOG;AACH,MAAM,WAAW,aAAa,CAAC,WAAW,GAAG,OAAO,EAAE,OAAO,GAAG,OAAO,CACrE,SAAQ,IAAI,CAAC,aAAa,EAAE,kBAAkB,GAAG,4BAA4B,CAAC,EAAE,oBAAoB;IACpG,0CAA0C;IAC1C,UAAU,EAAE;QACV,6CAA6C;QAC7C,UAAU,EAAE,WAAW,CAAC;QACxB,yBAAyB;QACzB,IAAI,EAAE,WAAW,CAAC;QAClB,sBAAsB;QACtB,IAAI,EAAE,WAAW,CAAC;QAClB,4CAA4C;QAC5C,aAAa,EAAE,WAAW,CAAC;KAC5B,CAAC;IAEF,oBAAoB;IACpB,OAAO,EAAE;QACP,2CAA2C;QAC3C,MAAM,EAAE,MAAM,OAAO,CAAC;QACtB,yDAAyD;QACzD,WAAW,EAAE,CAAC,OAAO,CAAC,EAAE;YAAE,IAAI,CAAC,EAAE,OAAO,CAAA;SAAE,KAAK,OAAO,CAAC;QACvD,qCAAqC;QACrC,YAAY,EAAE,MAAM,OAAO,CAAC;QAC5B,mCAAmC;QACnC,aAAa,EAAE,CAAC,IAAI,EAAE,MAAM,GAAG,SAAS,KAAK,OAAO,CAAC;QACrD,+CAA+C;QAC/C,aAAa,EAAE,MAAM,OAAO,CAAC;QAC7B,kDAAkD;QAClD,gBAAgB,EAAE,MAAM,OAAO,CAAC;QAChC,qCAAqC;QACrC,cAAc,EAAE,MAAM,KAAK,GAAG,SAAS,CAAC;QACxC,6BAA6B;QAC7B,iBAAiB,EAAE,MAAM,MAAM,GAAG,MAAM,GAAG,SAAS,CAAC;QACrD,sBAAsB;QACtB,aAAa,EAAE,MAAM,UAAU,GAAG,SAAS,CAAC;KAC7C,CAAC;IAEF,6BAA6B;IAC7B,OAAO,EAAE,YAAY,CAAC;IAEtB,oBAAoB;IACpB,MAAM,EAAE,WAAW,CAAC;IAEpB,sBAAsB;IACtB,MAAM,EAAE,WAAW,CAAC;IAEpB,gCAAgC;IAChC,WAAW,CAAC,EAAE,WAAW,CAAC;CAC3B;AAMD;;;;GAIG;AACH,qBAAa,KAAK;IAChB;;;;;;;;;;;;;;OAcG;WACU,MAAM,CAAC,OAAO,EAAE,YAAY,GAAG,OAAO,CAAC,aAAa,CAAC;CAmRnE"}
1
+ {"version":3,"file":"bootstrap.d.ts","sourceRoot":"","sources":["../src/bootstrap.ts"],"names":[],"mappings":"AAAA;;;;;;;;;;;;;;;;;;;;;;;;;;;GA2BG;AAEH,OAAO,EAAE,UAAU,EAAE,MAAM,SAAS,CAAC;AACrC,OAAO,EAAE,WAAW,EAAE,MAAM,+BAA+B,CAAC;AAC5D,OAAO,EAAE,WAAW,EAAE,MAAM,sBAAsB,CAAC;AAGnD,OAAO,EAAE,YAAY,EAA+B,MAAM,uBAAuB,CAAC;AASlF,OAAO,EAAE,WAAW,EAAE,MAAM,yBAAyB,CAAC;AAKtD,OAAO,EAAgB,aAAa,EAAE,MAAM,6BAA6B,CAAC;AAE1E,OAAO,EAAkB,oBAAoB,EAAE,MAAM,2BAA2B,CAAC;AAGjF,OAAO,EAAE,UAAU,EAAE,MAAM,oCAAoC,CAAC;AAChE,OAAO,EAAE,KAAK,EAAE,MAAM,iCAAiC,CAAC;AAOxD;;GAEG;AACH,MAAM,WAAW,YAAY;IAC3B,0BAA0B;IAC1B,MAAM,EAAE,WAAW,CAAC;IAEpB,yBAAyB;IACzB,UAAU,EAAE,UAAU,CAAC;IAEvB;;;OAGG;IACH,OAAO,CAAC,EAAE,YAAY,CAAC;CACxB;AAED;;;;;;;GAOG;AACH,MAAM,WAAW,aAAa,CAAC,WAAW,GAAG,OAAO,EAAE,OAAO,GAAG,OAAO,CACrE,SAAQ,IAAI,CAAC,aAAa,EAAE,kBAAkB,GAAG,4BAA4B,CAAC,EAAE,oBAAoB;IACpG,0CAA0C;IAC1C,UAAU,EAAE;QACV,6CAA6C;QAC7C,UAAU,EAAE,WAAW,CAAC;QACxB,yBAAyB;QACzB,IAAI,EAAE,WAAW,CAAC;QAClB,sBAAsB;QACtB,IAAI,EAAE,WAAW,CAAC;QAClB,4CAA4C;QAC5C,aAAa,EAAE,WAAW,CAAC;KAC5B,CAAC;IAEF,oBAAoB;IACpB,OAAO,EAAE;QACP,2CAA2C;QAC3C,MAAM,EAAE,MAAM,OAAO,CAAC;QACtB,yDAAyD;QACzD,WAAW,EAAE,CAAC,OAAO,CAAC,EAAE;YAAE,IAAI,CAAC,EAAE,OAAO,CAAA;SAAE,KAAK,OAAO,CAAC;QACvD,qCAAqC;QACrC,YAAY,EAAE,MAAM,OAAO,CAAC;QAC5B,mCAAmC;QACnC,aAAa,EAAE,CAAC,IAAI,EAAE,MAAM,GAAG,SAAS,KAAK,OAAO,CAAC;QACrD,+CAA+C;QAC/C,aAAa,EAAE,MAAM,OAAO,CAAC;QAC7B,kDAAkD;QAClD,gBAAgB,EAAE,MAAM,OAAO,CAAC;QAChC,qCAAqC;QACrC,cAAc,EAAE,MAAM,KAAK,GAAG,SAAS,CAAC;QACxC,6BAA6B;QAC7B,iBAAiB,EAAE,MAAM,MAAM,GAAG,MAAM,GAAG,SAAS,CAAC;QACrD,sBAAsB;QACtB,aAAa,EAAE,MAAM,UAAU,GAAG,SAAS,CAAC;KAC7C,CAAC;IAEF,6BAA6B;IAC7B,OAAO,EAAE,YAAY,CAAC;IAEtB,oBAAoB;IACpB,MAAM,EAAE,WAAW,CAAC;IAEpB,sBAAsB;IACtB,MAAM,EAAE,WAAW,CAAC;IAEpB,gCAAgC;IAChC,WAAW,CAAC,EAAE,WAAW,CAAC;CAC3B;AAMD;;;;GAIG;AACH,qBAAa,KAAK;IAChB;;;;;;;;;;;;;;OAcG;WACU,MAAM,CAAC,OAAO,EAAE,YAAY,GAAG,OAAO,CAAC,aAAa,CAAC;CAwRnE"}
@@ -1 +1 @@
1
- {"version":3,"file":"bootstrap.js","sourceRoot":"","sources":["../src/bootstrap.ts"],"names":[],"mappings":";AAAA;;;;;;;;;;;;;;;;;;;;;;;;;;;GA2BG;;;AAIH,uDAAmD;AACnD,kEAA8D;AAC9D,+DAAyD;AAEzD,gEAA4D;AAC5D,6DAAyD;AAEzD,WAAW;AACX,wEAAmE;AACnE,0DAAsD;AACtD,8EAAyE;AACzE,0DAAsD;AACtD,0DAAsD;AAEtD,gBAAgB;AAChB,qEAAiE;AACjE,6DAAyD;AACzD,+DAA0E;AAC1E,6DAAkE;AAClE,2DAAiF;AACjF,6EAAiF;AACjF,yCAAiF;AAGjF,gGAAkF;AAgFlF,+EAA+E;AAC/E,wBAAwB;AACxB,+EAA+E;AAE/E;;;;GAIG;AACH,MAAa,KAAK;IAChB;;;;;;;;;;;;;;OAcG;IACH,MAAM,CAAC,KAAK,CAAC,MAAM,CAAC,OAAqB;QACvC,MAAM,EAAE,MAAM,EAAE,UAAU,EAAE,GAAG,OAAO,CAAC;QACvC,MAAM,OAAO,GAAG,OAAO,CAAC,OAAO,IAAI,IAAI,gCAAc,EAAE,CAAC;QAExD,MAAM,MAAM,GAAG,IAAI,0BAAW,CAAC,MAAM,CAAC,MAAM,CAAC,CAAC;QAC9C,MAAM,CAAC,GAAG,CAAC,2BAA2B,OAAO,CAAC,IAAI,KAAK,CAAC,CAAC;QAEzD,2EAA2E;QAC3E,2EAA2E;QAC3E,2EAA2E;QAC3E,MAAM,IAAA,kDAA2B,EAAC,MAAM,EAAE,UAAU,EAAE,MAAM,CAAC,CAAC;QAE9D,2EAA2E;QAC3E,uCAAuC;QACvC,2EAA2E;QAC3E,MAAM,KAAK,GAAG,IAAA,kCAAe,EAAC,UAAU,CAAC,CAAC;QAE1C,MAAM,OAAO,GAAG,MAAM,IAAA,0BAAW,EAAC,MAAM,EAAE,KAAK,CAAC,mBAAmB,EAAE,KAAK,CAAC,qBAAqB,EAAE,MAAM,CAAC,CAAC;QAE1G,2EAA2E;QAC3E,yBAAyB;QACzB,2EAA2E;QAC3E,MAAM,aAAa,GAAG,MAAM,CAAC,aAAa,CAAC;QAC3C,MAAM,WAAW,GAAG,MAAM,CAAC,WAAW,CAAC;QACvC,MAAM,QAAQ,GAAkB,IAAA,4BAAY,EAAC,MAAM,EAAE,KAAK,EAAE,OAAO,EAAE,MAAM,EAAE,aAAa,EAAE,WAAW,CAAC,CAAC;QAEzG,2EAA2E;QAC3E,wCAAwC;QACxC,2EAA2E;QAC3E,MAAM,cAAc,GAAG,IAAI,iCAAsB,CAC/C,QAAQ,CAAC,oBAAoB,EAC7B,QAAQ,CAAC,0BAA0B,EACnC,QAAQ,CAAC,iBAAiB,EAC1B,MAAM,CACP,CAAC;QACF,MAAM,YAAY,GAAG,IAAI,sCAA2B,CAAC,cAAc,EAAE,MAAM,CAAC,CAAC;QAE7E,IAAI,QAAQ,CAAC,0BAA0B,EAAE,CAAC;YACvC,QAAQ,CAAC,0BAAiE,CAAC,YAAY,GAAG,YAAY,CAAC;YACvG,QAAQ,CAAC,0BAAiE,CAAC,cAAc,GAAG,cAAc,CAAC;QAC9G,CAAC;aAAM,CAAC;YACN,MAAM,IAAI,gCAAc,CAAC,gCAAa,CAAC,cAAc,EAAE,6CAA6C,CAAC,CAAC;QACxG,CAAC;QAED,2EAA2E;QAC3E,qCAAqC;QACrC,2EAA2E;QAC3E,MAAM,oBAAoB,GAAG,IAAI,sDAAoB,CAAC,OAAO,EAAE,MAAM,CAAC,CAAC;QAEvE,IAAI,MAAM,CAAC,GAAG,EAAE,OAAO,IAAI,QAAQ,CAAC,UAAU,EAAE,CAAC;YAC/C,MAAM,IAAA,mCAAoB,EACxB,MAAM,EACN,QAAQ,CAAC,UAAU,EACnB,KAAK,CAAC,mBAAoB,EAC1B,KAAK,CAAC,cAAc,EACpB,MAAM,EACN,QAAQ,CAAC,eAAe,EACxB,QAAQ,CAAC,wBAAwB,EACjC,QAAQ,CAAC,wBAAwB,EACjC,QAAQ,CAAC,gBAAgB,EACzB,QAAQ,CAAC,YAAY,EACrB,QAAQ,CAAC,iBAAiB,CAC3B,CAAC;QACJ,CAAC;QAED,MAAM,eAAe,GAAyB,MAAM,IAAA,4BAAc,EAChE,MAAM,EACN,QAAQ,CAAC,sBAAsB,EAC/B,QAAQ,CAAC,WAAW,EACpB,QAAQ,CAAC,iBAAiB,EAC1B,QAAQ,CAAC,UAAU,EACnB,QAAQ,CAAC,cAAc,EACvB,QAAQ,CAAC,0BAA0B,EACnC,QAAQ,CAAC,iBAAiB,EAC1B,MAAM,EACN,oBAAoB,EACpB,KAAK,CAAC,cAAc,EACpB,QAAQ,CAAC,wBAAwB,EACjC,QAAQ,CAAC,YAAY,EACrB,QAAQ,CAAC,oBAAoB,EAC7B,KAAK,CAAC,8BAA8B,EACpC,QAAQ,CAAC,YAAY,CACtB,CAAC;QAEF,2EAA2E;QAC3E,qBAAqB;QACrB,2EAA2E;QAC3E,MAAM,iBAAiB,GAAG,IAAI,uCAAiB,CAAC,QAAQ,CAAC,iBAAiB,EAAE,MAAM,EAAE,QAAQ,CAAC,kBAAkB,EAAE,MAAM,CAAC,CAAC;QAEzH,MAAM,WAAW,GAAG,IAAI,0BAAW,CACjC,QAAQ,CAAC,UAAU,EACnB,QAAQ,CAAC,cAAc,EACvB,QAAQ,CAAC,WAAW,EACpB,MAAM,EACN,MAAM,CACP,CAAC;QAEF,MAAM,oBAAoB,GAAG,IAAI,6CAAoB,CAAC,MAAM,EAAE,MAAM,CAAC,CAAC;QAEtE,kDAAkD;QAClD,MAAM,WAAW,GACf,MAAM,CAAC,aAAa,EAAE,MAAM,KAAK,SAAS,IAAI,MAAM,CAAC,aAAa,EAAE,MAAM,KAAK,QAAQ;YACrF,CAAC,CAAC,IAAI,0BAAW,CAAC,MAAM,CAAC;YACzB,CAAC,CAAC,SAAS,CAAC;QAEhB,MAAM,WAAW,GAAG,WAAW,CAAC,CAAC,CAAC,IAAI,0BAAW,CAAC,WAAW,EAAE,MAAM,EAAE,MAAM,CAAC,CAAC,CAAC,CAAC,IAAI,CAAC;QAEtF,2EAA2E;QAC3E,sCAAsC;QACtC,2EAA2E;QAC3E,MAAM,UAAU,GAAG;YACjB,iDAAiD;YACjD,UAAU,EAAE,OAAO,CAAC,kBAAkB,CAAC,YAAY,EAAE,iBAAiB,CAAC,MAAM,CAAC,IAAI,CAAC,iBAAiB,CAAC,EAAE;gBACrG,kBAAkB,EAAE,IAAI;aACzB,CAAC;YAEF,eAAe;YACf,IAAI,EAAE,OAAO,CAAC,kBAAkB,CAAC,MAAM,EAAE,WAAW,CAAC,MAAM,CAAC,IAAI,CAAC,WAAW,CAAC,CAAC;YAE9E,mCAAmC;YACnC,IAAI,EAAE,WAAW;gBACf,CAAC,CAAC,OAAO,CAAC,kBAAkB,CAAC,MAAM,EAAE,WAAW,CAAC,MAAM,CAAC,IAAI,CAAC,WAAW,CAAC,CAAC;gBAC1E,CAAC,CAAC,OAAO,CAAC,kBAAkB,CAAC,MAAM,EAAE,KAAK,EAAE,IAAkB,EAAE,IAAmB,EAAE,IAAgB,EAAE,EAAE;oBACrG,MAAM,IAAI,EAAE,CAAC;gBACf,CAAC,CAAC;YAEN,wCAAwC;YACxC,aAAa,EAAE,OAAO,CAAC,2BAA2B,CAChD,oBAAoB,CAAC,cAAc,CAAC,IAAI,CAAC,oBAAoB,CAAC,CAC/D;SACF,CAAC;QAEF,2EAA2E;QAC3E,oBAAoB;QACpB,2EAA2E;QAC3E,MAAM,OAAO,GAAG;YACd;;eAEG;YACH,MAAM,EAAE,GAAG,EAAE,CACX,OAAO,CAAC,kBAAkB,CAAC,QAAQ,EAAE,CAAC,GAAiB,EAAE,IAAmB,EAAE,IAAgB,EAAE,EAAE;gBAChG,GAAG,CAAC,UAAU,CAAC,WAAW,GAAG,IAAI,CAAC;gBAClC,OAAO,IAAI,EAAE,CAAC;YAChB,CAAC,CAAC;YAEJ;;;;eAIG;YACH,WAAW,EAAE,CAAC,OAA4B,EAAE,EAAE,CAC5C,OAAO,CAAC,kBAAkB,CAAC,aAAa,EAAE,CAAC,GAAiB,EAAE,GAAkB,EAAE,IAAgB,EAAE,EAAE;gBACpG,gDAAgD;gBAChD,IAAI,OAAO,EAAE,IAAI,KAAK,KAAK,IAAI,GAAG,CAAC,UAAU,CAAC,cAAc,EAAE,CAAC;oBAC7D,MAAM,GAAG,CAAC,UAAU,CAAC,cAAc,CAAC;gBACtC,CAAC;gBAED,yBAAyB;gBACzB,IAAI,CAAC,GAAG,CAAC,UAAU,CAAC,IAAI,EAAE,CAAC;oBACzB,GAAG,CAAC,MAAM,CAAC,GAAG,CAAC,CAAC,IAAI,CAAC;wBACnB,UAAU,EAAE,GAAG;wBACf,KAAK,EAAE,cAAc;wBACrB,OAAO,EAAE,yBAAyB;wBAClC,IAAI,EAAE,eAAe;qBACtB,CAAC,CAAC;oBACH,OAAO;gBACT,CAAC;gBAED,OAAO,IAAI,EAAE,CAAC;YAChB,CAAC,CAAC;YAEJ;;;;;eAKG;YACH,YAAY,EAAE,GAAG,EAAE,CACjB,OAAO,CAAC,kBAAkB,CAAC,cAAc,EAAE,CAAC,IAAkB,EAAE,IAAmB,EAAE,IAAgB,EAAE,EAAE;gBACvG,OAAO,IAAI,EAAE,CAAC;YAChB,CAAC,CAAC;YAEJ;;eAEG;YACH,aAAa,EAAE,CAAC,IAAwB,EAAE,EAAE,CAC1C,OAAO,CAAC,kBAAkB,CACxB,qBAAqB,EACrB,CAAC,GAAiB,EAAE,IAAmB,EAAE,IAAgB,EAAE,EAAE;gBAC3D,GAAG,CAAC,UAAU,CAAC,kBAAkB,GAAG,IAAI,CAAC;gBACzC,OAAO,IAAI,EAAE,CAAC;YAChB,CAAC,CACF;YAEH;;;;;;;;;;;;;;;;;;;;eAoBG;YACH,aAAa,EAAE,GAAG,EAAE,CAClB,OAAO,CAAC,kBAAkB,CAAC,eAAe,EAAE,CAAC,GAAiB,EAAE,IAAmB,EAAE,IAAgB,EAAE,EAAE;gBACvG,GAAG,CAAC,UAAU,CAAC,kBAAkB,GAAG,IAAI,CAAC;gBACzC,OAAO,IAAI,EAAE,CAAC;YAChB,CAAC,CAAC;YAEJ;;;;;;;;;;;;;;;;;;;;eAoBG;YACH,gBAAgB,EAAE,GAAG,EAAE,CACrB,OAAO,CAAC,kBAAkB,CAAC,kBAAkB,EAAE,CAAC,GAAiB,EAAE,IAAmB,EAAE,IAAgB,EAAE,EAAE;gBAC1G,GAAG,CAAC,UAAU,CAAC,qBAAqB,GAAG,IAAI,CAAC;gBAC5C,OAAO,IAAI,EAAE,CAAC;YAChB,CAAC,CAAC;YAEJ,6CAA6C;YAC7C,cAAc,EAAE,GAAG,EAAE,CAAC,gCAAc,CAAC,GAAG,CAAQ,cAAc,CAAC;YAC/D,iBAAiB,EAAE,GAAG,EAAE,CAAC,gCAAc,CAAC,GAAG,CAAkB,iBAAiB,CAAC;YAC/E,aAAa,EAAE,GAAG,EAAE,CAAC,gCAAc,CAAC,GAAG,CAAa,aAAa,CAAC;SACnE,CAAC;QAEF,2EAA2E;QAC3E,+BAA+B;QAC/B,2EAA2E;QAE3E,4CAA4C;QAC5C,MAAM,EAAE,gBAAgB,EAAE,0BAA0B,EAAE,GAAG,cAAc,EAAE,GAAG,QAAQ,CAAC;QAErF,MAAM,CAAC,GAAG,CAAC,uCAAuC,OAAO,CAAC,IAAI,EAAE,CAAC,CAAC;QAElE,OAAO;YACL,GAAG,cAAc;YACjB,GAAG,eAAe;YAClB,UAAU;YACV,OAAO;YACP,OAAO;YACP,MAAM;YACN,MAAM;YACN,iBAAiB,EAAE,QAAQ,CAAC,iBAAiB;YAC7C,WAAW;SACZ,CAAC;IACJ,CAAC;CACF;AAnSD,sBAmSC"}
1
+ {"version":3,"file":"bootstrap.js","sourceRoot":"","sources":["../src/bootstrap.ts"],"names":[],"mappings":"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"}
@@ -0,0 +1,22 @@
1
+ import { RemoveDeviceResponseDTO } from './remove-device.dto';
2
+ /**
3
+ * Admin DTO for removing a single MFA device by device ID.
4
+ *
5
+ * Admin APIs are allowed to target any user's device.
6
+ * This DTO is intentionally minimal: it only requires the `deviceId`.
7
+ *
8
+ * @example
9
+ * ```typescript
10
+ * const result = await mfaService.adminRemoveDevice({ deviceId: 123 });
11
+ * ```
12
+ */
13
+ export declare class AdminRemoveDeviceDTO {
14
+ /**
15
+ * MFA device numeric ID.
16
+ *
17
+ * @example 123
18
+ */
19
+ deviceId: number;
20
+ }
21
+ export { RemoveDeviceResponseDTO };
22
+ //# sourceMappingURL=admin-remove-device.dto.d.ts.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"admin-remove-device.dto.d.ts","sourceRoot":"","sources":["../../src/dto/admin-remove-device.dto.ts"],"names":[],"mappings":"AAEA,OAAO,EAAE,uBAAuB,EAAE,MAAM,qBAAqB,CAAC;AAE9D;;;;;;;;;;GAUG;AACH,qBAAa,oBAAoB;IAC/B;;;;OAIG;IAWH,QAAQ,EAAG,MAAM,CAAC;CACnB;AAED,OAAO,EAAE,uBAAuB,EAAE,CAAC"}
@@ -9,42 +9,42 @@ var __metadata = (this && this.__metadata) || function (k, v) {
9
9
  if (typeof Reflect === "object" && typeof Reflect.metadata === "function") return Reflect.metadata(k, v);
10
10
  };
11
11
  Object.defineProperty(exports, "__esModule", { value: true });
12
- exports.RemoveDevicesResponseDTO = exports.AdminRemoveDevicesDTO = void 0;
13
- const class_validator_1 = require("class-validator");
12
+ exports.RemoveDeviceResponseDTO = exports.AdminRemoveDeviceDTO = void 0;
14
13
  const class_transformer_1 = require("class-transformer");
15
- const remove_devices_dto_1 = require("./remove-devices.dto");
16
- Object.defineProperty(exports, "RemoveDevicesResponseDTO", { enumerable: true, get: function () { return remove_devices_dto_1.RemoveDevicesResponseDTO; } });
14
+ const class_validator_1 = require("class-validator");
15
+ const remove_device_dto_1 = require("./remove-device.dto");
16
+ Object.defineProperty(exports, "RemoveDeviceResponseDTO", { enumerable: true, get: function () { return remove_device_dto_1.RemoveDeviceResponseDTO; } });
17
17
  /**
18
- * Admin DTO for removing MFA devices for a specific user
18
+ * Admin DTO for removing a single MFA device by device ID.
19
19
  *
20
- * Admin APIs must explicitly target a user via `sub`.
21
- * This DTO mirrors {@link RemoveDevicesDTO} but adds `sub`.
20
+ * Admin APIs are allowed to target any user's device.
21
+ * This DTO is intentionally minimal: it only requires the `deviceId`.
22
22
  *
23
23
  * @example
24
24
  * ```typescript
25
- * const result = await mfaService.adminRemoveDevices({
26
- * sub: 'a21b654c-2746-4168-acee-c175083a65cd',
27
- * methodType: 'totp',
28
- * });
25
+ * const result = await mfaService.adminRemoveDevice({ deviceId: 123 });
29
26
  * ```
30
27
  */
31
- class AdminRemoveDevicesDTO extends remove_devices_dto_1.RemoveDevicesDTO {
28
+ class AdminRemoveDeviceDTO {
32
29
  /**
33
- * Target user's unique identifier (UUID v4)
30
+ * MFA device numeric ID.
34
31
  *
35
- * @example "a21b654c-2746-4168-acee-c175083a65cd"
32
+ * @example 123
36
33
  */
37
- sub;
34
+ deviceId;
38
35
  }
39
- exports.AdminRemoveDevicesDTO = AdminRemoveDevicesDTO;
36
+ exports.AdminRemoveDeviceDTO = AdminRemoveDeviceDTO;
40
37
  __decorate([
41
- (0, class_validator_1.IsUUID)('4', { message: 'User sub must be a valid UUID v4 format' }),
42
38
  (0, class_transformer_1.Transform)(({ value }) => {
43
39
  if (typeof value === 'string') {
44
- return value.trim().toLowerCase();
40
+ const trimmed = value.trim();
41
+ const parsed = Number(trimmed);
42
+ return Number.isFinite(parsed) ? parsed : value;
45
43
  }
46
44
  return value;
47
45
  }),
48
- __metadata("design:type", String)
49
- ], AdminRemoveDevicesDTO.prototype, "sub", void 0);
50
- //# sourceMappingURL=admin-remove-devices.dto.js.map
46
+ (0, class_validator_1.IsInt)({ message: 'deviceId must be an integer' }),
47
+ (0, class_validator_1.Min)(1, { message: 'deviceId must be at least 1' }),
48
+ __metadata("design:type", Number)
49
+ ], AdminRemoveDeviceDTO.prototype, "deviceId", void 0);
50
+ //# sourceMappingURL=admin-remove-device.dto.js.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"admin-remove-device.dto.js","sourceRoot":"","sources":["../../src/dto/admin-remove-device.dto.ts"],"names":[],"mappings":";;;;;;;;;;;;AAAA,yDAA8C;AAC9C,qDAA6C;AAC7C,2DAA8D;AAgCrD,wGAhCA,2CAAuB,OAgCA;AA9BhC;;;;;;;;;;GAUG;AACH,MAAa,oBAAoB;IAC/B;;;;OAIG;IAWH,QAAQ,CAAU;CACnB;AAjBD,oDAiBC;AADC;IAVC,IAAA,6BAAS,EAAC,CAAC,EAAE,KAAK,EAAE,EAAE,EAAE;QACvB,IAAI,OAAO,KAAK,KAAK,QAAQ,EAAE,CAAC;YAC9B,MAAM,OAAO,GAAG,KAAK,CAAC,IAAI,EAAE,CAAC;YAC7B,MAAM,MAAM,GAAG,MAAM,CAAC,OAAO,CAAC,CAAC;YAC/B,OAAO,MAAM,CAAC,QAAQ,CAAC,MAAM,CAAC,CAAC,CAAC,CAAC,MAAM,CAAC,CAAC,CAAC,KAAK,CAAC;QAClD,CAAC;QACD,OAAO,KAAK,CAAC;IACf,CAAC,CAAC;IACD,IAAA,uBAAK,EAAC,EAAE,OAAO,EAAE,6BAA6B,EAAE,CAAC;IACjD,IAAA,qBAAG,EAAC,CAAC,EAAE,EAAE,OAAO,EAAE,6BAA6B,EAAE,CAAC;;sDACjC"}
@@ -0,0 +1,32 @@
1
+ /**
2
+ * DTO for admin setting a user's preferred MFA device.
3
+ *
4
+ * @example
5
+ * ```typescript
6
+ * const dto: AdminSetPreferredDeviceDTO = {
7
+ * sub: 'user-uuid',
8
+ * deviceId: 123
9
+ * };
10
+ * ```
11
+ */
12
+ export declare class AdminSetPreferredDeviceDTO {
13
+ /**
14
+ * User identifier (UUID).
15
+ */
16
+ sub: string;
17
+ /**
18
+ * MFA device ID to set as preferred.
19
+ * Automatically converted from string path parameters to number.
20
+ */
21
+ deviceId: number;
22
+ }
23
+ /**
24
+ * Response DTO for admin setting preferred device.
25
+ */
26
+ export declare class AdminSetPreferredDeviceResponseDTO {
27
+ /**
28
+ * Success message.
29
+ */
30
+ message: string;
31
+ }
32
+ //# sourceMappingURL=admin-set-preferred-device.dto.d.ts.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"admin-set-preferred-device.dto.d.ts","sourceRoot":"","sources":["../../src/dto/admin-set-preferred-device.dto.ts"],"names":[],"mappings":"AAGA;;;;;;;;;;GAUG;AACH,qBAAa,0BAA0B;IACrC;;OAEG;IAEH,GAAG,EAAG,MAAM,CAAC;IAEb;;;OAGG;IAUH,QAAQ,EAAG,MAAM,CAAC;CACnB;AAED;;GAEG;AACH,qBAAa,kCAAkC;IAC7C;;OAEG;IACH,OAAO,EAAG,MAAM,CAAC;CAClB"}
@@ -0,0 +1,64 @@
1
+ "use strict";
2
+ var __decorate = (this && this.__decorate) || function (decorators, target, key, desc) {
3
+ var c = arguments.length, r = c < 3 ? target : desc === null ? desc = Object.getOwnPropertyDescriptor(target, key) : desc, d;
4
+ if (typeof Reflect === "object" && typeof Reflect.decorate === "function") r = Reflect.decorate(decorators, target, key, desc);
5
+ else for (var i = decorators.length - 1; i >= 0; i--) if (d = decorators[i]) r = (c < 3 ? d(r) : c > 3 ? d(target, key, r) : d(target, key)) || r;
6
+ return c > 3 && r && Object.defineProperty(target, key, r), r;
7
+ };
8
+ var __metadata = (this && this.__metadata) || function (k, v) {
9
+ if (typeof Reflect === "object" && typeof Reflect.metadata === "function") return Reflect.metadata(k, v);
10
+ };
11
+ Object.defineProperty(exports, "__esModule", { value: true });
12
+ exports.AdminSetPreferredDeviceResponseDTO = exports.AdminSetPreferredDeviceDTO = void 0;
13
+ const class_validator_1 = require("class-validator");
14
+ const class_transformer_1 = require("class-transformer");
15
+ /**
16
+ * DTO for admin setting a user's preferred MFA device.
17
+ *
18
+ * @example
19
+ * ```typescript
20
+ * const dto: AdminSetPreferredDeviceDTO = {
21
+ * sub: 'user-uuid',
22
+ * deviceId: 123
23
+ * };
24
+ * ```
25
+ */
26
+ class AdminSetPreferredDeviceDTO {
27
+ /**
28
+ * User identifier (UUID).
29
+ */
30
+ sub;
31
+ /**
32
+ * MFA device ID to set as preferred.
33
+ * Automatically converted from string path parameters to number.
34
+ */
35
+ deviceId;
36
+ }
37
+ exports.AdminSetPreferredDeviceDTO = AdminSetPreferredDeviceDTO;
38
+ __decorate([
39
+ (0, class_validator_1.IsString)({ message: 'User identifier must be a string' }),
40
+ __metadata("design:type", String)
41
+ ], AdminSetPreferredDeviceDTO.prototype, "sub", void 0);
42
+ __decorate([
43
+ (0, class_transformer_1.Transform)(({ value }) => {
44
+ if (typeof value === 'string') {
45
+ const parsed = Number(value);
46
+ return Number.isFinite(parsed) ? parsed : value;
47
+ }
48
+ return value;
49
+ }),
50
+ (0, class_validator_1.IsInt)({ message: 'Device ID must be an integer' }),
51
+ (0, class_validator_1.IsPositive)({ message: 'Device ID must be positive' }),
52
+ __metadata("design:type", Number)
53
+ ], AdminSetPreferredDeviceDTO.prototype, "deviceId", void 0);
54
+ /**
55
+ * Response DTO for admin setting preferred device.
56
+ */
57
+ class AdminSetPreferredDeviceResponseDTO {
58
+ /**
59
+ * Success message.
60
+ */
61
+ message;
62
+ }
63
+ exports.AdminSetPreferredDeviceResponseDTO = AdminSetPreferredDeviceResponseDTO;
64
+ //# sourceMappingURL=admin-set-preferred-device.dto.js.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"admin-set-preferred-device.dto.js","sourceRoot":"","sources":["../../src/dto/admin-set-preferred-device.dto.ts"],"names":[],"mappings":";;;;;;;;;;;;AAAA,qDAA8D;AAC9D,yDAA8C;AAE9C;;;;;;;;;;GAUG;AACH,MAAa,0BAA0B;IACrC;;OAEG;IAEH,GAAG,CAAU;IAEb;;;OAGG;IAUH,QAAQ,CAAU;CACnB;AArBD,gEAqBC;AAhBC;IADC,IAAA,0BAAQ,EAAC,EAAE,OAAO,EAAE,kCAAkC,EAAE,CAAC;;uDAC7C;AAeb;IATC,IAAA,6BAAS,EAAC,CAAC,EAAE,KAAK,EAAE,EAAE,EAAE;QACvB,IAAI,OAAO,KAAK,KAAK,QAAQ,EAAE,CAAC;YAC9B,MAAM,MAAM,GAAG,MAAM,CAAC,KAAK,CAAC,CAAC;YAC7B,OAAO,MAAM,CAAC,QAAQ,CAAC,MAAM,CAAC,CAAC,CAAC,CAAC,MAAM,CAAC,CAAC,CAAC,KAAK,CAAC;QAClD,CAAC;QACD,OAAO,KAAK,CAAC;IACf,CAAC,CAAC;IACD,IAAA,uBAAK,EAAC,EAAE,OAAO,EAAE,8BAA8B,EAAE,CAAC;IAClD,IAAA,4BAAU,EAAC,EAAE,OAAO,EAAE,4BAA4B,EAAE,CAAC;;4DACpC;AAGpB;;GAEG;AACH,MAAa,kCAAkC;IAC7C;;OAEG;IACH,OAAO,CAAU;CAClB;AALD,gFAKC"}
@@ -1,4 +1,4 @@
1
- import { UserResponseDto } from './user-response.dto';
1
+ import { UserResponseDTO } from './user-response.dto';
2
2
  /**
3
3
  * DTO for administrative social user import with override capabilities
4
4
  *
@@ -250,6 +250,6 @@ export declare class AdminSignupSocialResponseDTO {
250
250
  * - No MFA secrets
251
251
  * - No internal tracking fields
252
252
  */
253
- user: UserResponseDto;
253
+ user: UserResponseDTO;
254
254
  }
255
255
  //# sourceMappingURL=admin-signup-social.dto.d.ts.map
@@ -1,4 +1,4 @@
1
- import { UserResponseDto } from './user-response.dto';
1
+ import { UserResponseDTO } from './user-response.dto';
2
2
  /**
3
3
  * DTO for administrative user creation with override capabilities
4
4
  *
@@ -182,7 +182,7 @@ export declare class AdminSignupResponseDTO {
182
182
  * - No MFA secrets
183
183
  * - No internal tracking fields
184
184
  */
185
- user: UserResponseDto;
185
+ user: UserResponseDTO;
186
186
  /**
187
187
  * Generated password (only present if generatePassword was true)
188
188
  *
@@ -83,6 +83,8 @@ export interface VerifyMFACodeResponse extends BaseChallengeResponse {
83
83
  method: 'sms' | 'totp' | 'backup';
84
84
  /** Verification code */
85
85
  code: string;
86
+ /** Optional device ID for methods that support multiple devices (TOTP) */
87
+ deviceId?: number;
86
88
  }
87
89
  /**
88
90
  * Response for MFA verification with passkey
@@ -103,6 +105,8 @@ export interface VerifyMFAPasskeyResponse extends BaseChallengeResponse {
103
105
  method: 'passkey';
104
106
  /** WebAuthn credential from navigator.credentials.get() */
105
107
  credential: Record<string, unknown>;
108
+ /** Optional device ID for methods that support multiple devices (Passkey) */
109
+ deviceId?: number;
106
110
  }
107
111
  /**
108
112
  * Response for forced password change challenge
@@ -1 +1 @@
1
- {"version":3,"file":"challenge-response.dto.d.ts","sourceRoot":"","sources":["../../src/dto/challenge-response.dto.ts"],"names":[],"mappings":"AAAA;;;;;;;GAOG;AAMH;;GAEG;AACH,MAAM,WAAW,qBAAqB;IACpC,8BAA8B;IAC9B,OAAO,EAAE,MAAM,CAAC;CACjB;AAMD;;;;;;;;;;;GAWG;AACH,MAAM,WAAW,mBAAoB,SAAQ,qBAAqB;IAChE,IAAI,EAAE,cAAc,CAAC;IACrB,8CAA8C;IAC9C,IAAI,EAAE,MAAM,CAAC;CACd;AAMD;;;;;;;;;;;GAWG;AACH,MAAM,WAAW,oBAAqB,SAAQ,qBAAqB;IACjE,IAAI,EAAE,cAAc,CAAC;IACrB,mCAAmC;IACnC,KAAK,EAAE,MAAM,CAAC;CACf;AAED;;;;;;;;;;;GAWG;AACH,MAAM,WAAW,mBAAoB,SAAQ,qBAAqB;IAChE,IAAI,EAAE,cAAc,CAAC;IACrB,8CAA8C;IAC9C,IAAI,EAAE,MAAM,CAAC;CACd;AAMD;;;;;;;;;;;;GAYG;AACH,MAAM,WAAW,qBAAsB,SAAQ,qBAAqB;IAClE,IAAI,EAAE,cAAc,CAAC;IACrB,4BAA4B;IAC5B,MAAM,EAAE,KAAK,GAAG,MAAM,GAAG,QAAQ,CAAC;IAClC,wBAAwB;IACxB,IAAI,EAAE,MAAM,CAAC;CACd;AAED;;;;;;;;;;;;GAYG;AACH,MAAM,WAAW,wBAAyB,SAAQ,qBAAqB;IACrE,IAAI,EAAE,cAAc,CAAC;IACrB,qBAAqB;IACrB,MAAM,EAAE,SAAS,CAAC;IAClB,2DAA2D;IAC3D,UAAU,EAAE,MAAM,CAAC,MAAM,EAAE,OAAO,CAAC,CAAC;CACrC;AAMD;;;;;;;;;;;GAWG;AACH,MAAM,WAAW,2BAA4B,SAAQ,qBAAqB;IACxE,IAAI,EAAE,uBAAuB,CAAC;IAC9B,iDAAiD;IACjD,WAAW,EAAE,MAAM,CAAC;CACrB;AAMD;;;;;;;;;;;;;;;;;;;;;;;;;;;;;GA6BG;AACH,MAAM,WAAW,gBAAiB,SAAQ,qBAAqB;IAC7D,IAAI,EAAE,oBAAoB,CAAC;IAC3B,8BAA8B;IAC9B,MAAM,EAAE,KAAK,GAAG,OAAO,GAAG,MAAM,GAAG,SAAS,CAAC;IAC7C;;;;;OAKG;IACH,SAAS,EAAE,MAAM,CAAC,MAAM,EAAE,OAAO,CAAC,CAAC;CACpC;AAMD;;;;;;;;;;;;;;;;;;;;;;;GAuBG;AACH,MAAM,MAAM,qBAAqB,GAC7B,mBAAmB,GACnB,oBAAoB,GACpB,mBAAmB,GACnB,qBAAqB,GACrB,wBAAwB,GACxB,2BAA2B,GAC3B,gBAAgB,CAAC"}
1
+ {"version":3,"file":"challenge-response.dto.d.ts","sourceRoot":"","sources":["../../src/dto/challenge-response.dto.ts"],"names":[],"mappings":"AAAA;;;;;;;GAOG;AAMH;;GAEG;AACH,MAAM,WAAW,qBAAqB;IACpC,8BAA8B;IAC9B,OAAO,EAAE,MAAM,CAAC;CACjB;AAMD;;;;;;;;;;;GAWG;AACH,MAAM,WAAW,mBAAoB,SAAQ,qBAAqB;IAChE,IAAI,EAAE,cAAc,CAAC;IACrB,8CAA8C;IAC9C,IAAI,EAAE,MAAM,CAAC;CACd;AAMD;;;;;;;;;;;GAWG;AACH,MAAM,WAAW,oBAAqB,SAAQ,qBAAqB;IACjE,IAAI,EAAE,cAAc,CAAC;IACrB,mCAAmC;IACnC,KAAK,EAAE,MAAM,CAAC;CACf;AAED;;;;;;;;;;;GAWG;AACH,MAAM,WAAW,mBAAoB,SAAQ,qBAAqB;IAChE,IAAI,EAAE,cAAc,CAAC;IACrB,8CAA8C;IAC9C,IAAI,EAAE,MAAM,CAAC;CACd;AAMD;;;;;;;;;;;;GAYG;AACH,MAAM,WAAW,qBAAsB,SAAQ,qBAAqB;IAClE,IAAI,EAAE,cAAc,CAAC;IACrB,4BAA4B;IAC5B,MAAM,EAAE,KAAK,GAAG,MAAM,GAAG,QAAQ,CAAC;IAClC,wBAAwB;IACxB,IAAI,EAAE,MAAM,CAAC;IACb,0EAA0E;IAC1E,QAAQ,CAAC,EAAE,MAAM,CAAC;CACnB;AAED;;;;;;;;;;;;GAYG;AACH,MAAM,WAAW,wBAAyB,SAAQ,qBAAqB;IACrE,IAAI,EAAE,cAAc,CAAC;IACrB,qBAAqB;IACrB,MAAM,EAAE,SAAS,CAAC;IAClB,2DAA2D;IAC3D,UAAU,EAAE,MAAM,CAAC,MAAM,EAAE,OAAO,CAAC,CAAC;IACpC,6EAA6E;IAC7E,QAAQ,CAAC,EAAE,MAAM,CAAC;CACnB;AAMD;;;;;;;;;;;GAWG;AACH,MAAM,WAAW,2BAA4B,SAAQ,qBAAqB;IACxE,IAAI,EAAE,uBAAuB,CAAC;IAC9B,iDAAiD;IACjD,WAAW,EAAE,MAAM,CAAC;CACrB;AAMD;;;;;;;;;;;;;;;;;;;;;;;;;;;;;GA6BG;AACH,MAAM,WAAW,gBAAiB,SAAQ,qBAAqB;IAC7D,IAAI,EAAE,oBAAoB,CAAC;IAC3B,8BAA8B;IAC9B,MAAM,EAAE,KAAK,GAAG,OAAO,GAAG,MAAM,GAAG,SAAS,CAAC;IAC7C;;;;;OAKG;IACH,SAAS,EAAE,MAAM,CAAC,MAAM,EAAE,OAAO,CAAC,CAAC;CACpC;AAMD;;;;;;;;;;;;;;;;;;;;;;;GAuBG;AACH,MAAM,MAAM,qBAAqB,GAC7B,mBAAmB,GACnB,oBAAoB,GACpB,mBAAmB,GACnB,qBAAqB,GACrB,wBAAwB,GACxB,2BAA2B,GAC3B,gBAAgB,CAAC"}
@@ -1,4 +1,4 @@
1
- import { UserResponseDto } from './user-response.dto';
1
+ import { UserResponseDTO } from './user-response.dto';
2
2
  /**
3
3
  * DTO for administrative permanent account locking
4
4
  *
@@ -52,7 +52,7 @@ export declare class DisableUserResponseDTO {
52
52
  /**
53
53
  * Sanitized user object with updated lock status
54
54
  */
55
- user: UserResponseDto;
55
+ user: UserResponseDTO;
56
56
  /**
57
57
  * Number of sessions revoked (forced logout)
58
58
  */
@@ -1,4 +1,4 @@
1
- import { UserResponseDto } from './user-response.dto';
1
+ import { UserResponseDTO } from './user-response.dto';
2
2
  /**
3
3
  * DTO for administrative account unlocking
4
4
  *
@@ -39,6 +39,6 @@ export declare class EnableUserResponseDTO {
39
39
  /**
40
40
  * Sanitized user object with updated lock status
41
41
  */
42
- user: UserResponseDto;
42
+ user: UserResponseDTO;
43
43
  }
44
44
  //# sourceMappingURL=enable-user.dto.d.ts.map
@@ -12,5 +12,5 @@
12
12
  * // Returns: UserResponseDto | null
13
13
  * ```
14
14
  */
15
- export { UserResponseDto as GetUserResponseDTO } from './user-response.dto';
15
+ export { UserResponseDTO as GetUserResponseDTO } from './user-response.dto';
16
16
  //# sourceMappingURL=get-user-response.dto.d.ts.map
@@ -17,5 +17,5 @@ Object.defineProperty(exports, "__esModule", { value: true });
17
17
  exports.GetUserResponseDTO = void 0;
18
18
  // Re-export UserResponseDto for consistency
19
19
  var user_response_dto_1 = require("./user-response.dto");
20
- Object.defineProperty(exports, "GetUserResponseDTO", { enumerable: true, get: function () { return user_response_dto_1.UserResponseDto; } });
20
+ Object.defineProperty(exports, "GetUserResponseDTO", { enumerable: true, get: function () { return user_response_dto_1.UserResponseDTO; } });
21
21
  //# sourceMappingURL=get-user-response.dto.js.map
@@ -1,4 +1,4 @@
1
- import { UserResponseDto } from './user-response.dto';
1
+ import { UserResponseDTO } from './user-response.dto';
2
2
  /**
3
3
  * Date filter with operator support
4
4
  *
@@ -140,7 +140,7 @@ export declare class GetUsersResponseDTO {
140
140
  /**
141
141
  * Array of sanitized user objects
142
142
  */
143
- users: UserResponseDto[];
143
+ users: UserResponseDTO[];
144
144
  /**
145
145
  * Pagination metadata
146
146
  */
@@ -34,11 +34,11 @@ export * from './admin-get-mfa-status.dto';
34
34
  export * from './get-user-devices.dto';
35
35
  export * from './has-provider.dto';
36
36
  export * from './list-providers-response.dto';
37
- export * from './remove-devices.dto';
38
- export * from './admin-remove-devices.dto';
37
+ export * from './remove-device.dto';
38
+ export * from './admin-remove-device.dto';
39
39
  export * from './set-mfa-exemption.dto';
40
- export * from './set-preferred-method.dto';
41
- export * from './admin-set-preferred-method.dto';
40
+ export * from './set-preferred-device.dto';
41
+ export * from './admin-set-preferred-device.dto';
42
42
  export * from './setup-mfa.dto';
43
43
  export * from './verify-mfa-code.dto';
44
44
  export * from './get-client-info.dto';
@@ -1 +1 @@
1
- {"version":3,"file":"index.d.ts","sourceRoot":"","sources":["../../src/dto/index.ts"],"names":[],"mappings":"AACA,cAAc,cAAc,CAAC;AAC7B,cAAc,oBAAoB,CAAC;AACnC,cAAc,2BAA2B,CAAC;AAC1C,cAAc,mBAAmB,CAAC;AAClC,cAAc,iBAAiB,CAAC;AAChC,cAAc,oBAAoB,CAAC;AACnC,cAAc,mBAAmB,CAAC;AAClC,cAAc,aAAa,CAAC;AAC5B,cAAc,uBAAuB,CAAC;AACtC,cAAc,gCAAgC,CAAC;AAC/C,cAAc,qBAAqB,CAAC;AACpC,cAAc,mBAAmB,CAAC;AAClC,cAAc,8BAA8B,CAAC;AAC7C,cAAc,oCAAoC,CAAC;AACnD,cAAc,sCAAsC,CAAC;AACrD,cAAc,oBAAoB,CAAC;AACnC,cAAc,oBAAoB,CAAC;AACnC,cAAc,2BAA2B,CAAC;AAC1C,cAAc,sBAAsB,CAAC;AACrC,cAAc,uBAAuB,CAAC;AACtC,cAAc,+BAA+B,CAAC;AAC9C,cAAc,qBAAqB,CAAC;AACpC,cAAc,qBAAqB,CAAC;AACpC,cAAc,sBAAsB,CAAC;AACrC,cAAc,0BAA0B,CAAC;AACzC,cAAc,yBAAyB,CAAC;AACxC,cAAc,sBAAsB,CAAC;AACrC,cAAc,+BAA+B,CAAC;AAC9C,cAAc,0BAA0B,CAAC;AACzC,cAAc,mCAAmC,CAAC;AAClD,cAAc,6BAA6B,CAAC;AAC5C,cAAc,sBAAsB,CAAC;AACrC,cAAc,4BAA4B,CAAC;AAC3C,cAAc,wBAAwB,CAAC;AACvC,cAAc,oBAAoB,CAAC;AACnC,cAAc,+BAA+B,CAAC;AAC9C,cAAc,sBAAsB,CAAC;AACrC,cAAc,4BAA4B,CAAC;AAC3C,cAAc,yBAAyB,CAAC;AACxC,cAAc,4BAA4B,CAAC;AAC3C,cAAc,kCAAkC,CAAC;AACjD,cAAc,iBAAiB,CAAC;AAChC,cAAc,uBAAuB,CAAC;AACtC,cAAc,uBAAuB,CAAC;AACtC,cAAc,+BAA+B,CAAC;AAC9C,cAAc,+BAA+B,CAAC;AAC9C,cAAc,iCAAiC,CAAC;AAChD,cAAc,+BAA+B,CAAC;AAC9C,cAAc,mBAAmB,CAAC;AAClC,cAAc,4BAA4B,CAAC;AAC3C,cAAc,yBAAyB,CAAC;AACxC,cAAc,sBAAsB,CAAC;AACrC,cAAc,yBAAyB,CAAC;AACxC,cAAc,cAAc,CAAC;AAC7B,cAAc,uBAAuB,CAAC;AACtC,cAAc,kBAAkB,CAAC;AACjC,cAAc,2BAA2B,CAAC;AAC1C,cAAc,wBAAwB,CAAC;AACvC,cAAc,yBAAyB,CAAC;AACxC,cAAc,kCAAkC,CAAC;AACjD,cAAc,sBAAsB,CAAC;AACrC,cAAc,+BAA+B,CAAC;AAC9C,cAAc,4BAA4B,CAAC;AAC3C,cAAc,gCAAgC,CAAC;AAC/C,cAAc,yCAAyC,CAAC;AACxD,cAAc,0BAA0B,CAAC;AACzC,cAAc,4BAA4B,CAAC;AAE3C,cAAc,6BAA6B,CAAC;AAC5C,cAAc,kCAAkC,CAAC;AACjD,cAAc,6BAA6B,CAAC;AAC5C,cAAc,sCAAsC,CAAC;AACrD,cAAc,6BAA6B,CAAC;AAC5C,cAAc,mCAAmC,CAAC;AAClD,cAAc,mCAAmC,CAAC;AAElD,cAAc,mBAAmB,CAAC;AAClC,cAAc,uBAAuB,CAAC"}
1
+ {"version":3,"file":"index.d.ts","sourceRoot":"","sources":["../../src/dto/index.ts"],"names":[],"mappings":"AACA,cAAc,cAAc,CAAC;AAC7B,cAAc,oBAAoB,CAAC;AACnC,cAAc,2BAA2B,CAAC;AAC1C,cAAc,mBAAmB,CAAC;AAClC,cAAc,iBAAiB,CAAC;AAChC,cAAc,oBAAoB,CAAC;AACnC,cAAc,mBAAmB,CAAC;AAClC,cAAc,aAAa,CAAC;AAC5B,cAAc,uBAAuB,CAAC;AACtC,cAAc,gCAAgC,CAAC;AAC/C,cAAc,qBAAqB,CAAC;AACpC,cAAc,mBAAmB,CAAC;AAClC,cAAc,8BAA8B,CAAC;AAC7C,cAAc,oCAAoC,CAAC;AACnD,cAAc,sCAAsC,CAAC;AACrD,cAAc,oBAAoB,CAAC;AACnC,cAAc,oBAAoB,CAAC;AACnC,cAAc,2BAA2B,CAAC;AAC1C,cAAc,sBAAsB,CAAC;AACrC,cAAc,uBAAuB,CAAC;AACtC,cAAc,+BAA+B,CAAC;AAC9C,cAAc,qBAAqB,CAAC;AACpC,cAAc,qBAAqB,CAAC;AACpC,cAAc,sBAAsB,CAAC;AACrC,cAAc,0BAA0B,CAAC;AACzC,cAAc,yBAAyB,CAAC;AACxC,cAAc,sBAAsB,CAAC;AACrC,cAAc,+BAA+B,CAAC;AAC9C,cAAc,0BAA0B,CAAC;AACzC,cAAc,mCAAmC,CAAC;AAClD,cAAc,6BAA6B,CAAC;AAC5C,cAAc,sBAAsB,CAAC;AACrC,cAAc,4BAA4B,CAAC;AAC3C,cAAc,wBAAwB,CAAC;AACvC,cAAc,oBAAoB,CAAC;AACnC,cAAc,+BAA+B,CAAC;AAC9C,cAAc,qBAAqB,CAAC;AACpC,cAAc,2BAA2B,CAAC;AAC1C,cAAc,yBAAyB,CAAC;AACxC,cAAc,4BAA4B,CAAC;AAC3C,cAAc,kCAAkC,CAAC;AACjD,cAAc,iBAAiB,CAAC;AAChC,cAAc,uBAAuB,CAAC;AACtC,cAAc,uBAAuB,CAAC;AACtC,cAAc,+BAA+B,CAAC;AAC9C,cAAc,+BAA+B,CAAC;AAC9C,cAAc,iCAAiC,CAAC;AAChD,cAAc,+BAA+B,CAAC;AAC9C,cAAc,mBAAmB,CAAC;AAClC,cAAc,4BAA4B,CAAC;AAC3C,cAAc,yBAAyB,CAAC;AACxC,cAAc,sBAAsB,CAAC;AACrC,cAAc,yBAAyB,CAAC;AACxC,cAAc,cAAc,CAAC;AAC7B,cAAc,uBAAuB,CAAC;AACtC,cAAc,kBAAkB,CAAC;AACjC,cAAc,2BAA2B,CAAC;AAC1C,cAAc,wBAAwB,CAAC;AACvC,cAAc,yBAAyB,CAAC;AACxC,cAAc,kCAAkC,CAAC;AACjD,cAAc,sBAAsB,CAAC;AACrC,cAAc,+BAA+B,CAAC;AAC9C,cAAc,4BAA4B,CAAC;AAC3C,cAAc,gCAAgC,CAAC;AAC/C,cAAc,yCAAyC,CAAC;AACxD,cAAc,0BAA0B,CAAC;AACzC,cAAc,4BAA4B,CAAC;AAE3C,cAAc,6BAA6B,CAAC;AAC5C,cAAc,kCAAkC,CAAC;AACjD,cAAc,6BAA6B,CAAC;AAC5C,cAAc,sCAAsC,CAAC;AACrD,cAAc,6BAA6B,CAAC;AAC5C,cAAc,mCAAmC,CAAC;AAClD,cAAc,mCAAmC,CAAC;AAElD,cAAc,mBAAmB,CAAC;AAClC,cAAc,uBAAuB,CAAC"}
package/dist/dto/index.js CHANGED
@@ -51,11 +51,11 @@ __exportStar(require("./admin-get-mfa-status.dto"), exports);
51
51
  __exportStar(require("./get-user-devices.dto"), exports);
52
52
  __exportStar(require("./has-provider.dto"), exports);
53
53
  __exportStar(require("./list-providers-response.dto"), exports);
54
- __exportStar(require("./remove-devices.dto"), exports);
55
- __exportStar(require("./admin-remove-devices.dto"), exports);
54
+ __exportStar(require("./remove-device.dto"), exports);
55
+ __exportStar(require("./admin-remove-device.dto"), exports);
56
56
  __exportStar(require("./set-mfa-exemption.dto"), exports);
57
- __exportStar(require("./set-preferred-method.dto"), exports);
58
- __exportStar(require("./admin-set-preferred-method.dto"), exports);
57
+ __exportStar(require("./set-preferred-device.dto"), exports);
58
+ __exportStar(require("./admin-set-preferred-device.dto"), exports);
59
59
  __exportStar(require("./setup-mfa.dto"), exports);
60
60
  __exportStar(require("./verify-mfa-code.dto"), exports);
61
61
  __exportStar(require("./get-client-info.dto"), exports);
@@ -1 +1 @@
1
- {"version":3,"file":"index.js","sourceRoot":"","sources":["../../src/dto/index.ts"],"names":[],"mappings":";;;;;;;;;;;;;;;;AAAA,iBAAiB;AACjB,+CAA6B;AAC7B,qDAAmC;AACnC,4DAA0C;AAC1C,oDAAkC;AAClC,kDAAgC;AAChC,qDAAmC;AACnC,oDAAkC;AAClC,8CAA4B;AAC5B,wDAAsC;AACtC,iEAA+C;AAC/C,sDAAoC;AACpC,oDAAkC;AAClC,+DAA6C;AAC7C,qEAAmD;AACnD,uEAAqD;AACrD,qDAAmC;AACnC,qDAAmC;AACnC,4DAA0C;AAC1C,uDAAqC;AACrC,wDAAsC;AACtC,gEAA8C;AAC9C,sDAAoC;AACpC,sDAAoC;AACpC,uDAAqC;AACrC,2DAAyC;AACzC,0DAAwC;AACxC,uDAAqC;AACrC,gEAA8C;AAC9C,2DAAyC;AACzC,oEAAkD;AAClD,8DAA4C;AAC5C,uDAAqC;AACrC,6DAA2C;AAC3C,yDAAuC;AACvC,qDAAmC;AACnC,gEAA8C;AAC9C,uDAAqC;AACrC,6DAA2C;AAC3C,0DAAwC;AACxC,6DAA2C;AAC3C,mEAAiD;AACjD,kDAAgC;AAChC,wDAAsC;AACtC,wDAAsC;AACtC,gEAA8C;AAC9C,gEAA8C;AAC9C,kEAAgD;AAChD,gEAA8C;AAC9C,oDAAkC;AAClC,6DAA2C;AAC3C,0DAAwC;AACxC,uDAAqC;AACrC,0DAAwC;AACxC,+CAA6B;AAC7B,wDAAsC;AACtC,mDAAiC;AACjC,4DAA0C;AAC1C,yDAAuC;AACvC,0DAAwC;AACxC,mEAAiD;AACjD,uDAAqC;AACrC,gEAA8C;AAC9C,6DAA2C;AAC3C,iEAA+C;AAC/C,0EAAwD;AACxD,2DAAyC;AACzC,6DAA2C;AAC3C,+EAA+E;AAC/E,8DAA4C;AAC5C,mEAAiD;AACjD,8DAA4C;AAC5C,uEAAqD;AACrD,8DAA4C;AAC5C,oEAAkD;AAClD,oEAAkD;AAElD,oDAAkC;AAClC,wDAAsC;AAEtC,+DAA+D;AAC/D,+CAA+C;AAC/C,mCAAmC"}
1
+ {"version":3,"file":"index.js","sourceRoot":"","sources":["../../src/dto/index.ts"],"names":[],"mappings":";;;;;;;;;;;;;;;;AAAA,iBAAiB;AACjB,+CAA6B;AAC7B,qDAAmC;AACnC,4DAA0C;AAC1C,oDAAkC;AAClC,kDAAgC;AAChC,qDAAmC;AACnC,oDAAkC;AAClC,8CAA4B;AAC5B,wDAAsC;AACtC,iEAA+C;AAC/C,sDAAoC;AACpC,oDAAkC;AAClC,+DAA6C;AAC7C,qEAAmD;AACnD,uEAAqD;AACrD,qDAAmC;AACnC,qDAAmC;AACnC,4DAA0C;AAC1C,uDAAqC;AACrC,wDAAsC;AACtC,gEAA8C;AAC9C,sDAAoC;AACpC,sDAAoC;AACpC,uDAAqC;AACrC,2DAAyC;AACzC,0DAAwC;AACxC,uDAAqC;AACrC,gEAA8C;AAC9C,2DAAyC;AACzC,oEAAkD;AAClD,8DAA4C;AAC5C,uDAAqC;AACrC,6DAA2C;AAC3C,yDAAuC;AACvC,qDAAmC;AACnC,gEAA8C;AAC9C,sDAAoC;AACpC,4DAA0C;AAC1C,0DAAwC;AACxC,6DAA2C;AAC3C,mEAAiD;AACjD,kDAAgC;AAChC,wDAAsC;AACtC,wDAAsC;AACtC,gEAA8C;AAC9C,gEAA8C;AAC9C,kEAAgD;AAChD,gEAA8C;AAC9C,oDAAkC;AAClC,6DAA2C;AAC3C,0DAAwC;AACxC,uDAAqC;AACrC,0DAAwC;AACxC,+CAA6B;AAC7B,wDAAsC;AACtC,mDAAiC;AACjC,4DAA0C;AAC1C,yDAAuC;AACvC,0DAAwC;AACxC,mEAAiD;AACjD,uDAAqC;AACrC,gEAA8C;AAC9C,6DAA2C;AAC3C,iEAA+C;AAC/C,0EAAwD;AACxD,2DAAyC;AACzC,6DAA2C;AAC3C,+EAA+E;AAC/E,8DAA4C;AAC5C,mEAAiD;AACjD,8DAA4C;AAC5C,uEAAqD;AACrD,8DAA4C;AAC5C,oEAAkD;AAClD,oEAAkD;AAElD,oDAAkC;AAClC,wDAAsC;AAEtC,+DAA+D;AAC/D,+CAA+C;AAC/C,mCAAmC"}
@@ -0,0 +1,49 @@
1
+ /**
2
+ * DTO for removing a single MFA device by ID
3
+ *
4
+ * Used to remove one enrolled MFA device for the current authenticated user.
5
+ * This is important when users can register multiple devices per method
6
+ * (e.g., multiple TOTP authenticators and multiple passkeys).
7
+ *
8
+ * @example
9
+ * ```typescript
10
+ * const result = await mfaService.removeDevice({ deviceId: 123 });
11
+ * // { removedDeviceId: 123, removedMethod: 'passkey', mfaDisabled: false }
12
+ * ```
13
+ */
14
+ import { MFADeviceMethod } from '../enums/mfa-method.enum';
15
+ /**
16
+ * DTO for removing a single MFA device
17
+ */
18
+ export declare class RemoveDeviceDTO {
19
+ /**
20
+ * MFA device ID to remove
21
+ *
22
+ * Validation:
23
+ * - Must be a positive integer
24
+ *
25
+ * Sanitization:
26
+ * - Strings are converted to numbers (useful for path params)
27
+ *
28
+ * @example 123
29
+ */
30
+ deviceId: number;
31
+ }
32
+ /**
33
+ * Response DTO for removing a single MFA device
34
+ */
35
+ export declare class RemoveDeviceResponseDTO {
36
+ /**
37
+ * ID of the removed device
38
+ */
39
+ removedDeviceId: number;
40
+ /**
41
+ * MFA method type of the removed device
42
+ */
43
+ removedMethod: MFADeviceMethod;
44
+ /**
45
+ * Whether MFA was disabled (when this was the last remaining device)
46
+ */
47
+ mfaDisabled: boolean;
48
+ }
49
+ //# sourceMappingURL=remove-device.dto.d.ts.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"remove-device.dto.d.ts","sourceRoot":"","sources":["../../src/dto/remove-device.dto.ts"],"names":[],"mappings":"AAAA;;;;;;;;;;;;GAYG;AAIH,OAAO,EAAE,eAAe,EAAE,MAAM,0BAA0B,CAAC;AAE3D;;GAEG;AACH,qBAAa,eAAe;IAC1B;;;;;;;;;;OAUG;IAUH,QAAQ,EAAG,MAAM,CAAC;CACnB;AAED;;GAEG;AACH,qBAAa,uBAAuB;IAClC;;OAEG;IACH,eAAe,EAAG,MAAM,CAAC;IAEzB;;OAEG;IACH,aAAa,EAAG,eAAe,CAAC;IAEhC;;OAEG;IACH,WAAW,EAAG,OAAO,CAAC;CACvB"}
@@ -0,0 +1,76 @@
1
+ "use strict";
2
+ /**
3
+ * DTO for removing a single MFA device by ID
4
+ *
5
+ * Used to remove one enrolled MFA device for the current authenticated user.
6
+ * This is important when users can register multiple devices per method
7
+ * (e.g., multiple TOTP authenticators and multiple passkeys).
8
+ *
9
+ * @example
10
+ * ```typescript
11
+ * const result = await mfaService.removeDevice({ deviceId: 123 });
12
+ * // { removedDeviceId: 123, removedMethod: 'passkey', mfaDisabled: false }
13
+ * ```
14
+ */
15
+ var __decorate = (this && this.__decorate) || function (decorators, target, key, desc) {
16
+ var c = arguments.length, r = c < 3 ? target : desc === null ? desc = Object.getOwnPropertyDescriptor(target, key) : desc, d;
17
+ if (typeof Reflect === "object" && typeof Reflect.decorate === "function") r = Reflect.decorate(decorators, target, key, desc);
18
+ else for (var i = decorators.length - 1; i >= 0; i--) if (d = decorators[i]) r = (c < 3 ? d(r) : c > 3 ? d(target, key, r) : d(target, key)) || r;
19
+ return c > 3 && r && Object.defineProperty(target, key, r), r;
20
+ };
21
+ var __metadata = (this && this.__metadata) || function (k, v) {
22
+ if (typeof Reflect === "object" && typeof Reflect.metadata === "function") return Reflect.metadata(k, v);
23
+ };
24
+ Object.defineProperty(exports, "__esModule", { value: true });
25
+ exports.RemoveDeviceResponseDTO = exports.RemoveDeviceDTO = void 0;
26
+ const class_transformer_1 = require("class-transformer");
27
+ const class_validator_1 = require("class-validator");
28
+ /**
29
+ * DTO for removing a single MFA device
30
+ */
31
+ class RemoveDeviceDTO {
32
+ /**
33
+ * MFA device ID to remove
34
+ *
35
+ * Validation:
36
+ * - Must be a positive integer
37
+ *
38
+ * Sanitization:
39
+ * - Strings are converted to numbers (useful for path params)
40
+ *
41
+ * @example 123
42
+ */
43
+ deviceId;
44
+ }
45
+ exports.RemoveDeviceDTO = RemoveDeviceDTO;
46
+ __decorate([
47
+ (0, class_transformer_1.Transform)(({ value }) => {
48
+ if (typeof value === 'string') {
49
+ const parsed = Number(value);
50
+ return Number.isFinite(parsed) ? parsed : value;
51
+ }
52
+ return value;
53
+ }),
54
+ (0, class_validator_1.IsInt)({ message: 'Device ID must be an integer' }),
55
+ (0, class_validator_1.Min)(1, { message: 'Device ID must be a positive integer' }),
56
+ __metadata("design:type", Number)
57
+ ], RemoveDeviceDTO.prototype, "deviceId", void 0);
58
+ /**
59
+ * Response DTO for removing a single MFA device
60
+ */
61
+ class RemoveDeviceResponseDTO {
62
+ /**
63
+ * ID of the removed device
64
+ */
65
+ removedDeviceId;
66
+ /**
67
+ * MFA method type of the removed device
68
+ */
69
+ removedMethod;
70
+ /**
71
+ * Whether MFA was disabled (when this was the last remaining device)
72
+ */
73
+ mfaDisabled;
74
+ }
75
+ exports.RemoveDeviceResponseDTO = RemoveDeviceResponseDTO;
76
+ //# sourceMappingURL=remove-device.dto.js.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"remove-device.dto.js","sourceRoot":"","sources":["../../src/dto/remove-device.dto.ts"],"names":[],"mappings":";AAAA;;;;;;;;;;;;GAYG;;;;;;;;;;;;AAEH,yDAA8C;AAC9C,qDAA6C;AAG7C;;GAEG;AACH,MAAa,eAAe;IAC1B;;;;;;;;;;OAUG;IAUH,QAAQ,CAAU;CACnB;AAtBD,0CAsBC;AADC;IATC,IAAA,6BAAS,EAAC,CAAC,EAAE,KAAK,EAAE,EAAE,EAAE;QACvB,IAAI,OAAO,KAAK,KAAK,QAAQ,EAAE,CAAC;YAC9B,MAAM,MAAM,GAAG,MAAM,CAAC,KAAK,CAAC,CAAC;YAC7B,OAAO,MAAM,CAAC,QAAQ,CAAC,MAAM,CAAC,CAAC,CAAC,CAAC,MAAM,CAAC,CAAC,CAAC,KAAK,CAAC;QAClD,CAAC;QACD,OAAO,KAAK,CAAC;IACf,CAAC,CAAC;IACD,IAAA,uBAAK,EAAC,EAAE,OAAO,EAAE,8BAA8B,EAAE,CAAC;IAClD,IAAA,qBAAG,EAAC,CAAC,EAAE,EAAE,OAAO,EAAE,sCAAsC,EAAE,CAAC;;iDAC1C;AAGpB;;GAEG;AACH,MAAa,uBAAuB;IAClC;;OAEG;IACH,eAAe,CAAU;IAEzB;;OAEG;IACH,aAAa,CAAmB;IAEhC;;OAEG;IACH,WAAW,CAAW;CACvB;AAfD,0DAeC"}
@@ -141,6 +141,14 @@ export declare class RespondChallengeDTO {
141
141
  * - Contains WebAuthn credential from navigator.credentials.get()
142
142
  */
143
143
  credential?: Record<string, unknown>;
144
+ /**
145
+ * Optional device ID for MFA_REQUIRED when method supports multiple devices (TOTP, Passkey)
146
+ *
147
+ * Validation:
148
+ * - Must be a positive integer if provided
149
+ * - Optional field (maintains backward compatibility)
150
+ */
151
+ deviceId?: number;
144
152
  /**
145
153
  * MFA setup data (method-specific)
146
154
  * Required for MFA_SETUP_REQUIRED challenge
@@ -1 +1 @@
1
- {"version":3,"file":"respond-challenge.dto.d.ts","sourceRoot":"","sources":["../../src/dto/respond-challenge.dto.ts"],"names":[],"mappings":"AAAA;;;;;;;;;;;;;;;GAeG;AAKH;;GAEG;AACH,oBAAY,aAAa;IACvB,YAAY,iBAAiB;IAC7B,YAAY,iBAAiB;IAC7B,YAAY,iBAAiB;IAC7B,qBAAqB,0BAA0B;IAC/C,kBAAkB,uBAAuB;CAC1C;AAED;;GAEG;AACH,oBAAY,aAAa;IACvB,GAAG,QAAQ;IACX,KAAK,UAAU;IACf,IAAI,SAAS;IACb,OAAO,YAAY;IACnB,MAAM,WAAW;CAClB;AAED;;;;;;;;;;;;;;;;;;;;;;;GAuBG;AACH,qBAAa,mBAAmB;IAC9B;;;;;;;;;;;;;;OAcG;IAQH,OAAO,EAAG,MAAM,CAAC;IAEjB;;;OAGG;IAKH,IAAI,EAAG,aAAa,CAAC;IAMrB;;;;;;;;;;;;;OAaG;IAUH,IAAI,CAAC,EAAE,MAAM,CAAC;IAMd;;;;;;;;;;;;;OAaG;IAaH,KAAK,CAAC,EAAE,MAAM,CAAC;IAMf;;;;;;;;;;OAUG;IAKH,WAAW,CAAC,EAAE,MAAM,CAAC;IAMrB;;;;;;;;OAQG;IAGH,MAAM,CAAC,EAAE,aAAa,CAAC;IAEvB;;;;;;;OAOG;IAGH,UAAU,CAAC,EAAE,MAAM,CAAC,MAAM,EAAE,OAAO,CAAC,CAAC;IAMrC;;;;;;;;;;;;;OAaG;IAGH,SAAS,CAAC,EAAE,MAAM,CAAC,MAAM,EAAE,OAAO,CAAC,CAAC;CACrC;AAED;;;;;;;;;;;GAWG;AACH,yBAAiB,0BAA0B,CAAC;IAC1C,SAAgB,mBAAmB,CAAC,GAAG,EAAE,mBAAmB,GAAG,OAAO,CAErE;IAED,SAAgB,iBAAiB,CAAC,GAAG,EAAE,mBAAmB,GAAG,OAAO,CAEnE;IAED,SAAgB,mBAAmB,CAAC,GAAG,EAAE,mBAAmB,GAAG,OAAO,CAErE;IAED,SAAgB,gBAAgB,CAAC,GAAG,EAAE,mBAAmB,GAAG,OAAO,CAElE;IAED,SAAgB,iBAAiB,CAAC,GAAG,EAAE,mBAAmB,GAAG,OAAO,CAEnE;IAED,SAAgB,UAAU,CAAC,GAAG,EAAE,mBAAmB,GAAG,OAAO,CAE5D;CACF"}
1
+ {"version":3,"file":"respond-challenge.dto.d.ts","sourceRoot":"","sources":["../../src/dto/respond-challenge.dto.ts"],"names":[],"mappings":"AAAA;;;;;;;;;;;;;;;GAeG;AAiBH;;GAEG;AACH,oBAAY,aAAa;IACvB,YAAY,iBAAiB;IAC7B,YAAY,iBAAiB;IAC7B,YAAY,iBAAiB;IAC7B,qBAAqB,0BAA0B;IAC/C,kBAAkB,uBAAuB;CAC1C;AAED;;GAEG;AACH,oBAAY,aAAa;IACvB,GAAG,QAAQ;IACX,KAAK,UAAU;IACf,IAAI,SAAS;IACb,OAAO,YAAY;IACnB,MAAM,WAAW;CAClB;AAED;;;;;;;;;;;;;;;;;;;;;;;GAuBG;AACH,qBAAa,mBAAmB;IAC9B;;;;;;;;;;;;;;OAcG;IAQH,OAAO,EAAG,MAAM,CAAC;IAEjB;;;OAGG;IAKH,IAAI,EAAG,aAAa,CAAC;IAMrB;;;;;;;;;;;;;OAaG;IAUH,IAAI,CAAC,EAAE,MAAM,CAAC;IAMd;;;;;;;;;;;;;OAaG;IAaH,KAAK,CAAC,EAAE,MAAM,CAAC;IAMf;;;;;;;;;;OAUG;IAKH,WAAW,CAAC,EAAE,MAAM,CAAC;IAMrB;;;;;;;;OAQG;IAGH,MAAM,CAAC,EAAE,aAAa,CAAC;IAEvB;;;;;;;OAOG;IAGH,UAAU,CAAC,EAAE,MAAM,CAAC,MAAM,EAAE,OAAO,CAAC,CAAC;IAErC;;;;;;OAMG;IAIH,QAAQ,CAAC,EAAE,MAAM,CAAC;IAMlB;;;;;;;;;;;;;OAaG;IAGH,SAAS,CAAC,EAAE,MAAM,CAAC,MAAM,EAAE,OAAO,CAAC,CAAC;CACrC;AAED;;;;;;;;;;;GAWG;AACH,yBAAiB,0BAA0B,CAAC;IAC1C,SAAgB,mBAAmB,CAAC,GAAG,EAAE,mBAAmB,GAAG,OAAO,CAErE;IAED,SAAgB,iBAAiB,CAAC,GAAG,EAAE,mBAAmB,GAAG,OAAO,CAEnE;IAED,SAAgB,mBAAmB,CAAC,GAAG,EAAE,mBAAmB,GAAG,OAAO,CAErE;IAED,SAAgB,gBAAgB,CAAC,GAAG,EAAE,mBAAmB,GAAG,OAAO,CAElE;IAED,SAAgB,iBAAiB,CAAC,GAAG,EAAE,mBAAmB,GAAG,OAAO,CAEnE;IAED,SAAgB,UAAU,CAAC,GAAG,EAAE,mBAAmB,GAAG,OAAO,CAE5D;CACF"}
@@ -169,6 +169,14 @@ class RespondChallengeDTO {
169
169
  * - Contains WebAuthn credential from navigator.credentials.get()
170
170
  */
171
171
  credential;
172
+ /**
173
+ * Optional device ID for MFA_REQUIRED when method supports multiple devices (TOTP, Passkey)
174
+ *
175
+ * Validation:
176
+ * - Must be a positive integer if provided
177
+ * - Optional field (maintains backward compatibility)
178
+ */
179
+ deviceId;
172
180
  // ============================================================================
173
181
  // MFA_SETUP_REQUIRED
174
182
  // ============================================================================
@@ -246,6 +254,12 @@ __decorate([
246
254
  (0, class_validator_1.IsObject)({ message: 'Credential must be an object' }),
247
255
  __metadata("design:type", Object)
248
256
  ], RespondChallengeDTO.prototype, "credential", void 0);
257
+ __decorate([
258
+ (0, class_validator_1.IsOptional)(),
259
+ (0, class_validator_1.ValidateIf)((o) => o.type === ChallengeType.MFA_REQUIRED),
260
+ (0, class_validator_1.IsInt)({ message: 'Device ID must be a number' }),
261
+ __metadata("design:type", Number)
262
+ ], RespondChallengeDTO.prototype, "deviceId", void 0);
249
263
  __decorate([
250
264
  (0, class_validator_1.ValidateIf)((o) => o.type === ChallengeType.MFA_SETUP_REQUIRED),
251
265
  (0, class_validator_1.IsObject)({ message: 'Setup data must be an object' }),