@fdm-monster/server 1.5.0-rc2 → 1.5.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.
Files changed (61) hide show
  1. package/README.md +2 -1
  2. package/dist/constants/authorization.constants.js +12 -0
  3. package/dist/constants/authorization.constants.js.map +1 -1
  4. package/dist/container.js +2 -1
  5. package/dist/container.js.map +1 -1
  6. package/dist/container.tokens.js +3 -1
  7. package/dist/container.tokens.js.map +1 -1
  8. package/dist/controllers/auth.controller.js +9 -5
  9. package/dist/controllers/auth.controller.js.map +1 -1
  10. package/dist/controllers/first-time-setup.controller.js +1 -3
  11. package/dist/controllers/first-time-setup.controller.js.map +1 -1
  12. package/dist/controllers/user.controller.js +72 -9
  13. package/dist/controllers/user.controller.js.map +1 -1
  14. package/dist/controllers/validation/user-controller.validation.js +3 -2
  15. package/dist/controllers/validation/user-controller.validation.js.map +1 -1
  16. package/dist/exceptions/job.exceptions.js.map +1 -1
  17. package/dist/exceptions/runtime.exceptions.js +3 -10
  18. package/dist/exceptions/runtime.exceptions.js.map +1 -1
  19. package/dist/middleware/authenticate.js +7 -4
  20. package/dist/middleware/authenticate.js.map +1 -1
  21. package/dist/middleware/{exception.handler.js → exception.filter.js} +6 -11
  22. package/dist/middleware/exception.filter.js.map +1 -0
  23. package/dist/middleware/global.middleware.js +1 -1
  24. package/dist/middleware/global.middleware.js.map +1 -1
  25. package/dist/middleware/passport.js +45 -16
  26. package/dist/middleware/passport.js.map +1 -1
  27. package/dist/server.constants.js +8 -2
  28. package/dist/server.constants.js.map +1 -1
  29. package/dist/server.host.js +3 -3
  30. package/dist/server.host.js.map +1 -1
  31. package/dist/services/authentication/auth.service.js +26 -15
  32. package/dist/services/authentication/auth.service.js.map +1 -1
  33. package/dist/services/authentication/refresh-token.service.js +3 -2
  34. package/dist/services/authentication/refresh-token.service.js.map +1 -1
  35. package/dist/services/authentication/role.service.js +6 -0
  36. package/dist/services/authentication/role.service.js.map +1 -1
  37. package/dist/services/authentication/user.service.js +33 -12
  38. package/dist/services/authentication/user.service.js.map +1 -1
  39. package/dist/services/influxdb-v2/influx-db-v2-base.service.js +4 -8
  40. package/dist/services/influxdb-v2/influx-db-v2-base.service.js.map +1 -1
  41. package/dist/services/interfaces/refresh-token.dto.js +20 -0
  42. package/dist/services/interfaces/refresh-token.dto.js.map +1 -0
  43. package/dist/services/interfaces/role.dto.js +16 -0
  44. package/dist/services/interfaces/role.dto.js.map +1 -0
  45. package/dist/services/octoprint/octoprint-sockio.adapter.js +7 -11
  46. package/dist/services/octoprint/octoprint-sockio.adapter.js.map +1 -1
  47. package/dist/services/settings.service.js +2 -29
  48. package/dist/services/settings.service.js.map +1 -1
  49. package/dist/services/validators/printer-service.validation.js +1 -1
  50. package/dist/services/validators/printer-service.validation.js.map +1 -1
  51. package/dist/services/validators/user-service.validation.js +1 -1
  52. package/dist/services/validators/user-service.validation.js.map +1 -1
  53. package/dist/state/settings.store.js +1 -1
  54. package/dist/state/settings.store.js.map +1 -1
  55. package/dist/state/socket-io.gateway.js +30 -3
  56. package/dist/state/socket-io.gateway.js.map +1 -1
  57. package/dist/tasks/boot.task.js +3 -3
  58. package/dist/tasks/boot.task.js.map +1 -1
  59. package/package.json +36 -36
  60. package/dist/middleware/exception.handler.js.map +0 -1
  61. package/src/index.ts +0 -19
package/README.md CHANGED
@@ -61,7 +61,7 @@ Please join the discord, but stay professional and proactive!
61
61
  These are the people involved in the project. Find the meaning of the emoji keys [here](https://allcontributors.org/docs/en/emoji-key).
62
62
 
63
63
  <!-- ALL-CONTRIBUTORS-BADGE:START - Do not remove or modify this section -->
64
- [![All Contributors](https://img.shields.io/badge/all_contributors-9-orange.svg?style=flat-square)](#contributors-)
64
+ [![All Contributors](https://img.shields.io/badge/all_contributors-10-orange.svg?style=flat-square)](#contributors-)
65
65
  <!-- ALL-CONTRIBUTORS-BADGE:END -->
66
66
 
67
67
  <!-- ALL-CONTRIBUTORS-LIST:START - Do not remove or modify this section -->
@@ -81,6 +81,7 @@ These are the people involved in the project. Find the meaning of the emoji keys
81
81
  <tr>
82
82
  <td align="center" valign="top" width="14.28%"><a href="http://www.tophattwaffle.com"><img src="https://avatars.githubusercontent.com/u/6774125?v=4?s=80" width="80px;" alt="tophattwaffle"/><br /><sub><b>tophattwaffle</b></sub></a><br /><a href="https://github.com/fdm-monster/fdm-monster/issues?q=author%3Atophattwaffle" title="Bug reports">🐛</a> <a href="#ideas-tophattwaffle" title="Ideas, Planning, & Feedback">🤔</a></td>
83
83
  <td align="center" valign="top" width="14.28%"><a href="https://github.com/rmhenn"><img src="https://avatars.githubusercontent.com/u/22482801?v=4?s=80" width="80px;" alt="rmhenn"/><br /><sub><b>rmhenn</b></sub></a><br /><a href="#ideas-rmhenn" title="Ideas, Planning, & Feedback">🤔</a> <a href="https://github.com/fdm-monster/fdm-monster/issues?q=author%3Armhenn" title="Bug reports">🐛</a></td>
84
+ <td align="center" valign="top" width="14.28%"><a href="https://github.com/cyrixdx4"><img src="https://avatars.githubusercontent.com/u/62126724?v=4?s=80" width="80px;" alt="cyrixdx4"/><br /><sub><b>cyrixdx4</b></sub></a><br /><a href="https://github.com/fdm-monster/fdm-monster/issues?q=author%3Acyrixdx4" title="Bug reports">🐛</a></td>
84
85
  </tr>
85
86
  </tbody>
86
87
  </table>
@@ -9,6 +9,9 @@ function _export(target, all) {
9
9
  });
10
10
  }
11
11
  _export(exports, {
12
+ AUTH_ERROR_REASON: function() {
13
+ return AUTH_ERROR_REASON;
14
+ },
12
15
  PERMS: function() {
13
16
  return PERMS;
14
17
  },
@@ -35,6 +38,15 @@ const _lodash = require("lodash");
35
38
  function serializePerm(group, perm) {
36
39
  return `${group}.${perm}`;
37
40
  }
41
+ const AUTH_ERROR_REASON = {
42
+ // Before login
43
+ IncorrectCredentials: "IncorrectCredentials",
44
+ InvalidOrExpiredRefreshToken: "InvalidOrExpiredRefreshToken",
45
+ InvalidOrExpiredAuthToken: "InvalidOrExpiredAuthToken",
46
+ PasswordChangeRequired: "PasswordChangeRequired",
47
+ LoginRequired: "LoginRequired",
48
+ AccountNotVerified: "AccountNotVerified"
49
+ };
38
50
  const PERM_GROUP = {
39
51
  PrinterFiles: "PrinterFiles",
40
52
  PrinterSettings: "PrinterSettings",
@@ -1 +1 @@
1
- {"version":3,"sources":["../../src/constants/authorization.constants.ts"],"names":["PERMS","PERM_GROUP","ROLES","ROLE_PERMS","allPerms","flattenPermissionDefinition","serializePerm","group","perm","PrinterFiles","PrinterSettings","Floors","PrintCompletion","ServerInfo","Default","Get","Delete","Clear","Upload","Actions","List","Create","Update","permissions","key","Object","values","permissionName","push","Error","ADMIN","OPERATOR","GUEST","union"],"mappings":";;;;;;;;;;;IAcaA,KAAK;eAALA;;IARAC,UAAU;eAAVA;;IAuDAC,KAAK;eAALA;;IAMAC,UAAU;eAAVA;;IAXGC,QAAQ;eAARA;;IAXAC,2BAA2B;eAA3BA;;IA3CAC,aAAa;eAAbA;;;wBAFM;AAEf,SAASA,cAAcC,KAAa,EAAEC,IAAY;IACvD,OAAO,CAAC,EAAED,MAAM,CAAC,EAAEC,KAAK,CAAC;AAC3B;AAEO,MAAMP,aAAa;IACxBQ,cAAc;IACdC,iBAAiB;IACjBC,QAAQ;IACRC,iBAAiB;IACjBC,YAAY;AACd;AAEO,MAAMb,QAAgD;IAC3D,CAACC,WAAWQ,YAAY,CAAC,EAAE;QACzBK,SAASR,cAAcL,WAAWQ,YAAY,EAAE;QAChDM,KAAKT,cAAcL,WAAWQ,YAAY,EAAE;QAC5CO,QAAQV,cAAcL,WAAWQ,YAAY,EAAE;QAC/CQ,OAAOX,cAAcL,WAAWQ,YAAY,EAAE;QAC9CS,QAAQZ,cAAcL,WAAWQ,YAAY,EAAE;QAC/CU,SAASb,cAAcL,WAAWQ,YAAY,EAAE;IAClD;IACA,CAACR,WAAWW,eAAe,CAAC,EAAE;QAC5BE,SAASR,cAAcL,WAAWW,eAAe,EAAE;QACnDQ,MAAMd,cAAcL,WAAWW,eAAe,EAAE;IAClD;IACA,CAACX,WAAWU,MAAM,CAAC,EAAE;QACnBG,SAASR,cAAcL,WAAWU,MAAM,EAAE;QAC1CS,MAAMd,cAAcL,WAAWU,MAAM,EAAE;QACvCI,KAAKT,cAAcL,WAAWU,MAAM,EAAE;QACtCU,QAAQf,cAAcL,WAAWU,MAAM,EAAE;QACzCW,QAAQhB,cAAcL,WAAWU,MAAM,EAAE;QACzCK,QAAQV,cAAcL,WAAWU,MAAM,EAAE;IAC3C;IACA,CAACV,WAAWS,eAAe,CAAC,EAAE;QAC5BI,SAASR,cAAcL,WAAWS,eAAe,EAAE;QACnDK,KAAKT,cAAcL,WAAWS,eAAe,EAAE;IACjD;IACA,CAACT,WAAWY,UAAU,CAAC,EAAE;QACvBC,SAASR,cAAcL,WAAWY,UAAU,EAAE;QAC9CE,KAAKT,cAAcL,WAAWY,UAAU,EAAE;IAC5C;AACF;AAEO,SAASR;IACd,MAAMkB,cAAc,EAAE;IACtB,KAAK,IAAIC,OAAOC,OAAOC,MAAM,CAACzB,YAAa;QACzC,KAAK,IAAI0B,kBAAkBF,OAAOC,MAAM,CAAC1B,KAAK,CAACwB,IAAI,EAAG;YACpDD,YAAYK,IAAI,CAACD;QACnB;IACF;IAEA,OAAOJ;AACT;AAEO,SAASnB,SAASG,KAAa;IACpC,IAAI,CAACA,SAAS,CAACP,KAAK,CAACO,MAAM,EAAE,MAAM,IAAIsB,MAAM,CAAC,uBAAuB,EAAEtB,MAAM,eAAe,CAAC;IAC7F,OAAOkB,OAAOC,MAAM,CAAC1B,KAAK,CAACO,MAAM;AACnC;AAEO,MAAML,QAAQ;IACnB4B,OAAO;IACPC,UAAU;IACVC,OAAO;AACT;AAEO,MAAM7B,aAAuC;IAClD,CAACD,MAAM4B,KAAK,CAAC,EAAEG,IAAAA,aAAK,EAClB7B,SAASH,WAAWU,MAAM,GAC1BP,SAASH,WAAWQ,YAAY,GAChCL,SAASH,WAAWW,eAAe,GACnCR,SAASH,WAAWS,eAAe,GACnCN,SAASH,WAAWY,UAAU;IAEhC,CAACX,MAAM6B,QAAQ,CAAC,EAAEE,IAAAA,aAAK,EAAC7B,SAASH,WAAWQ,YAAY,GAAGL,SAASH,WAAWW,eAAe,GAAGR,SAASH,WAAWU,MAAM;IAC3H,CAACT,MAAM8B,KAAK,CAAC,EAAE,EAAE;AACnB"}
1
+ {"version":3,"sources":["../../src/constants/authorization.constants.ts"],"names":["AUTH_ERROR_REASON","PERMS","PERM_GROUP","ROLES","ROLE_PERMS","allPerms","flattenPermissionDefinition","serializePerm","group","perm","IncorrectCredentials","InvalidOrExpiredRefreshToken","InvalidOrExpiredAuthToken","PasswordChangeRequired","LoginRequired","AccountNotVerified","PrinterFiles","PrinterSettings","Floors","PrintCompletion","ServerInfo","Default","Get","Delete","Clear","Upload","Actions","List","Create","Update","permissions","key","Object","values","permissionName","push","Error","ADMIN","OPERATOR","GUEST","union"],"mappings":"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"}
package/dist/container.js CHANGED
@@ -82,7 +82,8 @@ function configureContainer() {
82
82
  container.register({
83
83
  // -- asValue/asFunction constants --
84
84
  [_containertokens.DITokens.serverTasks]: (0, _awilix.asValue)(_tasks.ServerTasks),
85
- [_containertokens.DITokens.appDefaultRole]: (0, _awilix.asValue)(_authorizationconstants.ROLES.GUEST),
85
+ // TODO change the role to a non-admin role in the future once GUEST/OPERATOR have more meaningful permissions
86
+ [_containertokens.DITokens.appDefaultRole]: (0, _awilix.asValue)(_authorizationconstants.ROLES.ADMIN),
86
87
  [_containertokens.DITokens.appDefaultRoleNoLogin]: (0, _awilix.asValue)(_authorizationconstants.ROLES.ADMIN),
87
88
  [_containertokens.DITokens.serverVersion]: (0, _awilix.asFunction)(()=>{
88
89
  return process.env[_serverconstants.AppConstants.VERSION_KEY];
@@ -1 +1 @@
1
- {"version":3,"sources":["../src/container.ts"],"names":["configureContainer","container","createContainer","injectionMode","InjectionMode","PROXY","register","DITokens","serverTasks","asValue","ServerTasks","appDefaultRole","ROLES","GUEST","appDefaultRoleNoLogin","ADMIN","serverVersion","asFunction","process","env","AppConstants","VERSION_KEY","socketFactory","asClass","SocketFactory","transient","serverHost","ServerHost","singleton","settingsStore","SettingsStore","settingsService","SettingsService","configService","ConfigService","authService","AuthService","refreshTokenService","RefreshTokenService","userService","UserService","roleService","RoleService","permissionService","PermissionService","jwtService","JwtService","loggerFactory","LoggerFactory","taskManagerService","TaskManagerService","toadScheduler","ToadScheduler","eventEmitter2","configureEventEmitter","cacheManager","configureCacheManager","serverReleaseService","ServerReleaseService","monsterPiService","MonsterPiService","serverUpdateService","ServerUpdateService","githubService","GithubService","octokitService","cradle","config","Octokit","auth","get","GITHUB_PAT","clientBundleService","ClientBundleService","logDumpService","LogDumpService","simpleGitService","simpleGit","httpClient","axios","create","maxBodyLength","maxContentLength","socketIoGateway","SocketIoGateway","multerService","MulterService","printerService","PrinterService","printerFilesService","PrinterFilesService","floorService","FloorService","yamlService","YamlService","printCompletionService","PrintCompletionService","octoPrintApiService","OctoPrintApiService","cameraStreamService","CameraStreamService","batchCallService","BatchCallService","pluginFirmwareUpdateService","PluginFirmwareUpdateService","octoPrintSockIoAdapter","OctoPrintSockIoAdapter","floorStore","FloorStore","pluginRepositoryCache","PluginRepositoryCache","fileCache","FileCache","fileUploadTrackerCache","FileUploadTrackerCache","filesStore","FilesStore","printerCache","PrinterCache","printerEventsCache","PrinterEventsCache","printerSocketStore","PrinterSocketStore","testPrinterSocketStore","TestPrinterSocketStore","customGCodeService","CustomGcodeService","influxDbV2BaseService","InfluxDbV2BaseService","bootTask","BootTask","softwareUpdateTask","SoftwareUpdateTask","socketIoTask","SocketIoTask","clientDistDownloadTask","ClientDistDownloadTask","printCompletionSocketIoTask","PrintCompletionSocketIoTask","printerWebsocketTask","PrinterWebsocketTask","printerWebsocketRestoreTask","PrinterWebsocketRestoreTask","printerFileCleanTask","PrinterFileCleanTask"],"mappings":"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"}
1
+ {"version":3,"sources":["../src/container.ts"],"names":["configureContainer","container","createContainer","injectionMode","InjectionMode","PROXY","register","DITokens","serverTasks","asValue","ServerTasks","appDefaultRole","ROLES","ADMIN","appDefaultRoleNoLogin","serverVersion","asFunction","process","env","AppConstants","VERSION_KEY","socketFactory","asClass","SocketFactory","transient","serverHost","ServerHost","singleton","settingsStore","SettingsStore","settingsService","SettingsService","configService","ConfigService","authService","AuthService","refreshTokenService","RefreshTokenService","userService","UserService","roleService","RoleService","permissionService","PermissionService","jwtService","JwtService","loggerFactory","LoggerFactory","taskManagerService","TaskManagerService","toadScheduler","ToadScheduler","eventEmitter2","configureEventEmitter","cacheManager","configureCacheManager","serverReleaseService","ServerReleaseService","monsterPiService","MonsterPiService","serverUpdateService","ServerUpdateService","githubService","GithubService","octokitService","cradle","config","Octokit","auth","get","GITHUB_PAT","clientBundleService","ClientBundleService","logDumpService","LogDumpService","simpleGitService","simpleGit","httpClient","axios","create","maxBodyLength","maxContentLength","socketIoGateway","SocketIoGateway","multerService","MulterService","printerService","PrinterService","printerFilesService","PrinterFilesService","floorService","FloorService","yamlService","YamlService","printCompletionService","PrintCompletionService","octoPrintApiService","OctoPrintApiService","cameraStreamService","CameraStreamService","batchCallService","BatchCallService","pluginFirmwareUpdateService","PluginFirmwareUpdateService","octoPrintSockIoAdapter","OctoPrintSockIoAdapter","floorStore","FloorStore","pluginRepositoryCache","PluginRepositoryCache","fileCache","FileCache","fileUploadTrackerCache","FileUploadTrackerCache","filesStore","FilesStore","printerCache","PrinterCache","printerEventsCache","PrinterEventsCache","printerSocketStore","PrinterSocketStore","testPrinterSocketStore","TestPrinterSocketStore","customGCodeService","CustomGcodeService","influxDbV2BaseService","InfluxDbV2BaseService","bootTask","BootTask","softwareUpdateTask","SoftwareUpdateTask","socketIoTask","SocketIoTask","clientDistDownloadTask","ClientDistDownloadTask","printCompletionSocketIoTask","PrintCompletionSocketIoTask","printerWebsocketTask","PrinterWebsocketTask","printerWebsocketRestoreTask","PrinterWebsocketRestoreTask","printerFileCleanTask","PrinterFileCleanTask"],"mappings":"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"}
@@ -11,9 +11,10 @@ Object.defineProperty(exports, "DITokens", {
11
11
  const DITokens = {
12
12
  // Values
13
13
  serverVersion: "serverVersion",
14
+ isTypeormMode: "isTypeormMode",
14
15
  appDefaultRole: "appDefaultRole",
15
16
  appDefaultRoleNoLogin: "appDefaultRoleNoLogin",
16
- // Dynamically registered
17
+ typeormService: "typeormService",
17
18
  // Instances
18
19
  serverHost: "serverHost",
19
20
  loggerFactory: "loggerFactory",
@@ -27,6 +28,7 @@ const DITokens = {
27
28
  eventEmitter2: "eventEmitter2",
28
29
  cacheManager: "cacheManager",
29
30
  printerService: "printerService",
31
+ floorPositionService: "floorPositionService",
30
32
  printCompletionService: "printCompletionService",
31
33
  floorService: "floorService",
32
34
  yamlService: "yamlService",
@@ -1 +1 @@
1
- {"version":3,"sources":["../src/container.tokens.ts"],"names":["DITokens","serverVersion","appDefaultRole","appDefaultRoleNoLogin","serverHost","loggerFactory","httpClient","socketIoGateway","simpleGitService","multerService","configService","taskManagerService","toadScheduler","eventEmitter2","cacheManager","printerService","printCompletionService","floorService","yamlService","settingsService","serverReleaseService","monsterPiService","serverUpdateService","githubService","octokitService","clientBundleService","logDumpService","userTokenService","authService","refreshTokenService","userService","permissionService","jwtService","roleService","octoPrintApiService","cameraStreamService","socketFactory","batchCallService","pluginRepositoryCache","pluginFirmwareUpdateService","influxDbV2BaseService","systemInfoBundleService","printerFilesService","customGCodeService","settingsStore","printerCache","printerEventsCache","printerSocketStore","testPrinterSocketStore","octoPrintLogsCache","filesStore","octoPrintSockIoAdapter","floorStore","fileCache","fileUploadTrackerCache","serverTasks","bootTask","softwareUpdateTask","clientDistDownloadTask","socketIoTask","printCompletionSocketIoTask","printerWebsocketTask","printerWebsocketRestoreTask","printerFileCleanTask"],"mappings":";;;;+BAAaA;;;eAAAA;;;AAAN,MAAMA,WAAW;IACtB,SAAS;IACTC,eAAe;IACfC,gBAAgB;IAChBC,uBAAuB;IACvB,yBAAyB;IACzB,YAAY;IACZC,YAAY;IACZC,eAAe;IACfC,YAAY;IACZC,iBAAiB;IACjBC,kBAAkB;IAClBC,eAAe;IACfC,eAAe;IACfC,oBAAoB;IACpBC,eAAe;IACfC,eAAe;IACfC,cAAc;IACdC,gBAAgB;IAChBC,wBAAwB;IACxBC,cAAc;IACdC,aAAa;IACbC,iBAAiB;IACjBC,sBAAsB;IACtBC,kBAAkB;IAClBC,qBAAqB;IACrBC,eAAe;IACfC,gBAAgB;IAChBC,qBAAqB;IACrBC,gBAAgB;IAChBC,kBAAkB;IAClBC,aAAa;IACbC,qBAAqB;IACrBC,aAAa;IACbC,mBAAmB;IACnBC,YAAY;IACZC,aAAa;IACbC,qBAAqB;IACrBC,qBAAqB;IACrBC,eAAe;IACfC,kBAAkB;IAClBC,uBAAuB;IACvBC,6BAA6B;IAC7BC,uBAAuB;IACvBC,yBAAyB;IACzBC,qBAAqB;IACrBC,oBAAoB;IACpB,gBAAgB;IAChBC,eAAe;IACfC,cAAc;IACdC,oBAAoB;IACpBC,oBAAoB;IACpBC,wBAAwB;IACxBC,oBAAoB;IACpBC,YAAY;IACZC,wBAAwB;IACxB,SAAS;IACTC,YAAY;IACZC,WAAW;IACXC,wBAAwB;IACxB,QAAQ;IACRC,aAAa;IACbC,UAAU;IACVC,oBAAoB;IACpBC,wBAAwB;IACxBC,cAAc;IACdC,6BAA6B;IAC7BC,sBAAsB;IACtBC,6BAA6B;IAC7BC,sBAAsB;AACxB"}
1
+ {"version":3,"sources":["../src/container.tokens.ts"],"names":["DITokens","serverVersion","isTypeormMode","appDefaultRole","appDefaultRoleNoLogin","typeormService","serverHost","loggerFactory","httpClient","socketIoGateway","simpleGitService","multerService","configService","taskManagerService","toadScheduler","eventEmitter2","cacheManager","printerService","floorPositionService","printCompletionService","floorService","yamlService","settingsService","serverReleaseService","monsterPiService","serverUpdateService","githubService","octokitService","clientBundleService","logDumpService","userTokenService","authService","refreshTokenService","userService","permissionService","jwtService","roleService","octoPrintApiService","cameraStreamService","socketFactory","batchCallService","pluginRepositoryCache","pluginFirmwareUpdateService","influxDbV2BaseService","systemInfoBundleService","printerFilesService","customGCodeService","settingsStore","printerCache","printerEventsCache","printerSocketStore","testPrinterSocketStore","octoPrintLogsCache","filesStore","octoPrintSockIoAdapter","floorStore","fileCache","fileUploadTrackerCache","serverTasks","bootTask","softwareUpdateTask","clientDistDownloadTask","socketIoTask","printCompletionSocketIoTask","printerWebsocketTask","printerWebsocketRestoreTask","printerFileCleanTask"],"mappings":";;;;+BAAaA;;;eAAAA;;;AAAN,MAAMA,WAAW;IACtB,SAAS;IACTC,eAAe;IACfC,eAAe;IACfC,gBAAgB;IAChBC,uBAAuB;IACvBC,gBAAgB;IAChB,YAAY;IACZC,YAAY;IACZC,eAAe;IACfC,YAAY;IACZC,iBAAiB;IACjBC,kBAAkB;IAClBC,eAAe;IACfC,eAAe;IACfC,oBAAoB;IACpBC,eAAe;IACfC,eAAe;IACfC,cAAc;IACdC,gBAAgB;IAChBC,sBAAsB;IACtBC,wBAAwB;IACxBC,cAAc;IACdC,aAAa;IACbC,iBAAiB;IACjBC,sBAAsB;IACtBC,kBAAkB;IAClBC,qBAAqB;IACrBC,eAAe;IACfC,gBAAgB;IAChBC,qBAAqB;IACrBC,gBAAgB;IAChBC,kBAAkB;IAClBC,aAAa;IACbC,qBAAqB;IACrBC,aAAa;IACbC,mBAAmB;IACnBC,YAAY;IACZC,aAAa;IACbC,qBAAqB;IACrBC,qBAAqB;IACrBC,eAAe;IACfC,kBAAkB;IAClBC,uBAAuB;IACvBC,6BAA6B;IAC7BC,uBAAuB;IACvBC,yBAAyB;IACzBC,qBAAqB;IACrBC,oBAAoB;IACpB,gBAAgB;IAChBC,eAAe;IACfC,cAAc;IACdC,oBAAoB;IACpBC,oBAAoB;IACpBC,wBAAwB;IACxBC,oBAAoB;IACpBC,YAAY;IACZC,wBAAwB;IACxB,SAAS;IACTC,YAAY;IACZC,WAAW;IACXC,wBAAwB;IACxB,QAAQ;IACRC,aAAa;IACbC,UAAU;IACVC,oBAAoB;IACpBC,wBAAwB;IACxBC,cAAc;IACdC,6BAA6B;IAC7BC,sBAAsB;IACtBC,6BAA6B;IAC7BC,sBAAsB;AACxB"}
@@ -30,11 +30,13 @@ class AuthController {
30
30
  userService;
31
31
  roleService;
32
32
  logger;
33
- constructor({ authService, settingsStore, userService, roleService, loggerFactory }){
33
+ configService;
34
+ constructor({ authService, settingsStore, userService, roleService, loggerFactory, configService }){
34
35
  this.authService = authService;
35
36
  this.settingsStore = settingsStore;
36
37
  this.userService = userService;
37
38
  this.roleService = roleService;
39
+ this.configService = configService;
38
40
  this.logger = loggerFactory(AuthController.name);
39
41
  }
40
42
  async login(req, res) {
@@ -43,13 +45,15 @@ class AuthController {
43
45
  return res.send(tokens);
44
46
  }
45
47
  async getLoginRequired(req, res) {
46
- const isLoginRequired = await this.settingsStore.getLoginRequired();
48
+ const loginRequired = await this.settingsStore.getLoginRequired();
47
49
  const registration = this.settingsStore.isRegistrationEnabled();
48
50
  const wizardState = this.settingsStore.getWizardState();
49
- return res.send({
50
- loginRequired: isLoginRequired,
51
+ const isDemoMode = this.configService.isDemoMode();
52
+ res.send({
53
+ loginRequired,
51
54
  registration,
52
- wizardState
55
+ wizardState,
56
+ isDemoMode
53
57
  });
54
58
  }
55
59
  async verifyLogin(req, res) {
@@ -1 +1 @@
1
- {"version":3,"sources":["../../src/controllers/auth.controller.ts"],"names":["AuthController","authService","settingsStore","userService","roleService","logger","constructor","loggerFactory","name","login","req","res","log","ip","headers","tokens","loginUser","body","username","password","send","getLoginRequired","isLoginRequired","registration","isRegistrationEnabled","wizardState","getWizardState","loginRequired","verifyLogin","success","needsPasswordChange","authenticated","isAuthenticated","user","refreshLogin","refreshToken","validateMiddleware","refreshTokenRules","idToken","renewLoginByRefreshToken","token","logout","end","jwtToken","authorization","replace","undefined","userId","id","logoutUserId","register","registrationEnabled","BadRequestException","registerUserRules","toLowerCase","includes","roles","getAppDefaultRoleIds","result","isDemoUser","isRootUser","isVerified","userDto","toDto","createController","prefix","AppConstants","apiRoute","post","demoUserNotAllowedInterceptor","get","before","authenticate"],"mappings":";;;;;;;;;;;IAgBaA,cAAc;eAAdA;;IAmHb,OAYK;eAZL;;;+BAnIiC;mCACG;iCACP;4BACM;0CACD;0CACA;8BACL;gCAQiB;AAEvC,MAAMA;IACXC,YAA0B;IAC1BC,cAA6B;IAC7BC,YAA0B;IAC1BC,YAA0B;IAC1BC,OAAsB;IAEtBC,YAAY,EACVL,WAAW,EACXC,aAAa,EACbC,WAAW,EACXC,WAAW,EACXG,aAAa,EAOd,CAAE;QACD,IAAI,CAACN,WAAW,GAAGA;QACnB,IAAI,CAACC,aAAa,GAAGA;QACrB,IAAI,CAACC,WAAW,GAAGA;QACnB,IAAI,CAACC,WAAW,GAAGA;QACnB,IAAI,CAACC,MAAM,GAAGE,cAAcP,eAAeQ,IAAI;IACjD;IAEA,MAAMC,MAAMC,GAAY,EAAEC,GAAa,EAAE;QACvC,IAAI,CAACN,MAAM,CAACO,GAAG,CAAC,CAAC,sBAAsB,EAAEF,IAAIG,EAAE,CAAC,gBAAgB,EAAEH,IAAII,OAAO,CAAC,aAAa,CAAC,CAAC;QAC7F,MAAMC,SAAS,MAAM,IAAI,CAACd,WAAW,CAACe,SAAS,CAACN,IAAIO,IAAI,CAACC,QAAQ,EAAER,IAAIO,IAAI,CAACE,QAAQ;QACpF,OAAOR,IAAIS,IAAI,CAACL;IAClB;IAEA,MAAMM,iBAAiBX,GAAY,EAAEC,GAAa,EAAE;QAClD,MAAMW,kBAAkB,MAAM,IAAI,CAACpB,aAAa,CAACmB,gBAAgB;QACjE,MAAME,eAAe,IAAI,CAACrB,aAAa,CAACsB,qBAAqB;QAC7D,MAAMC,cAAc,IAAI,CAACvB,aAAa,CAACwB,cAAc;QACrD,OAAOf,IAAIS,IAAI,CAAC;YAAEO,eAAeL;YAAiBC;YAAcE;QAAY;IAC9E;IAEA,MAAMG,YAAYlB,GAAY,EAAEC,GAAa,EAAE;QAC7C,OAAOA,IAAIS,IAAI,CAAC;YAAES,SAAS;QAAK;IAClC;IAEA,MAAMC,oBAAoBpB,GAAY,EAAEC,GAAa,EAAE;QACrD,MAAMY,eAAe,IAAI,CAACrB,aAAa,CAACsB,qBAAqB;QAC7D,MAAMF,kBAAkB,MAAM,IAAI,CAACpB,aAAa,CAACmB,gBAAgB;QACjE,IAAI,CAACC,iBAAiB;YACpB,OAAOX,IAAIS,IAAI,CAAC;gBAAEO,eAAeL;gBAAiBC;gBAAcO,qBAAqB;gBAAOC,eAAe;YAAK;QAClH;QAEA,IAAIrB,IAAIsB,eAAe,IAAI;YACzB,OAAOrB,IAAIS,IAAI,CAAC;gBACdO,eAAeL;gBACfC;gBACAO,qBAAqBpB,IAAIuB,IAAI,EAAEH;gBAC/BC,eAAe;YACjB;QACF;QAEA,OAAOpB,IAAIS,IAAI,CAAC;YAAEO,eAAeL;YAAiBQ,qBAAqB;YAAMC,eAAe;QAAM;IACpG;IAEA,MAAMG,aAAaxB,GAAY,EAAEC,GAAa,EAAE;QAC9C,MAAM,EAAEwB,YAAY,EAAE,GAAG,MAAMC,IAAAA,8BAAkB,EAAC1B,KAAK2B,2CAAiB;QACxE,IAAI,CAAChC,MAAM,CAACO,GAAG,CAAC,CAAC,8BAA8B,EAAEF,IAAIG,EAAE,CAAC,gBAAgB,EAAEH,IAAII,OAAO,CAAC,aAAa,CAAC,CAAC;QACrG,MAAMwB,UAAU,MAAM,IAAI,CAACrC,WAAW,CAACsC,wBAAwB,CAACJ;QAChE,OAAOxB,IAAIS,IAAI,CAAC;YAAEoB,OAAOF;QAAQ;IACnC;IAEA,MAAMG,OAAO/B,GAAY,EAAEC,GAAa,EAAE;QACxC,MAAMW,kBAAkB,MAAM,IAAI,CAACpB,aAAa,CAACmB,gBAAgB;QACjE,IAAI,CAACC,iBAAiB;YACpB,OAAOX,IAAI+B,GAAG;QAChB;QAEA,wBAAwB;QACxB,MAAMC,WAAWjC,IAAII,OAAO,CAAC8B,aAAa,EAAEC,QAAQ,WAAW,OAAOC;QACtE,MAAMC,SAASrC,IAAIuB,IAAI,CAACe,EAAE;QAC1B,MAAM,IAAI,CAAC/C,WAAW,CAACgD,YAAY,CAACF,QAAQJ;QAC5ChC,IAAI+B,GAAG;IACT;IAEA,MAAMQ,SAASxC,GAAY,EAAEC,GAAa,EAAE;QAC1C,IAAIwC,sBAAsB,IAAI,CAACjD,aAAa,CAACsB,qBAAqB;QAClE,IAAI,CAAC2B,qBAAqB;YACxB,MAAM,IAAIC,sCAAmB,CAAC;QAChC;QACA,MAAM,EAAElC,QAAQ,EAAEC,QAAQ,EAAE,GAAG,MAAMiB,IAAAA,8BAAkB,EAAC1B,KAAK2C,2CAAiB;QAC9E,IAAInC,SAASoC,WAAW,GAAGC,QAAQ,CAAC,UAAU;YAC5C,MAAM,IAAIH,sCAAmB,CAAC;QAChC;QACA,IAAIlC,SAASoC,WAAW,GAAGC,QAAQ,CAAC,SAAS;YAC3C,MAAM,IAAIH,sCAAmB,CAAC;QAChC;QACA,IAAIlC,SAASoC,WAAW,OAAO,QAAQ;YACrC,MAAM,IAAIF,sCAAmB,CAAC;QAChC;QAEA,MAAMI,QAAQ,MAAM,IAAI,CAACpD,WAAW,CAACqD,oBAAoB;QACzD,MAAMC,SAAS,MAAM,IAAI,CAACvD,WAAW,CAAC+C,QAAQ,CAAC;YAC7ChC;YACAC;YACAqC;YACA1B,qBAAqB;YACrB6B,YAAY;YACZC,YAAY;YACZ,0CAA0C;YAC1CC,YAAY;QACd;QACA,MAAMC,UAAU,IAAI,CAAC3D,WAAW,CAAC4D,KAAK,CAACL;QACvC/C,IAAIS,IAAI,CAAC0C;IACX;AACF;MAEA,WAAeE,IAAAA,+BAAgB,EAAChE,gBAC7BiE,MAAM,CAACC,6BAAY,CAACC,QAAQ,GAAG,SAC/BC,IAAI,CAAC,aAAa,YAAYC,6CAA6B,EAC3DD,IAAI,CAAC,UAAU,SACfE,GAAG,CAAC,mBAAmB,oBACvBF,IAAI,CAAC,0BAA0B,uBAC/BA,IAAI,CAAC,YAAY,gBACjBA,IAAI,CAAC,WAAW,eAAe;IAC9BG,QAAQ;QAACC,IAAAA,0BAAY;KAAG;AAC1B,GACCJ,IAAI,CAAC,WAAW,UAAU;IACzBG,QAAQ;QAACC,IAAAA,0BAAY;KAAG;AAC1B"}
1
+ {"version":3,"sources":["../../src/controllers/auth.controller.ts"],"names":["AuthController","authService","settingsStore","userService","roleService","logger","configService","constructor","loggerFactory","name","login","req","res","log","ip","headers","tokens","loginUser","body","username","password","send","getLoginRequired","loginRequired","registration","isRegistrationEnabled","wizardState","getWizardState","isDemoMode","verifyLogin","success","needsPasswordChange","isLoginRequired","authenticated","isAuthenticated","user","refreshLogin","refreshToken","validateMiddleware","refreshTokenRules","idToken","renewLoginByRefreshToken","token","logout","end","jwtToken","authorization","replace","undefined","userId","id","logoutUserId","register","registrationEnabled","BadRequestException","registerUserRules","toLowerCase","includes","roles","getAppDefaultRoleIds","result","isDemoUser","isRootUser","isVerified","userDto","toDto","createController","prefix","AppConstants","apiRoute","post","demoUserNotAllowedInterceptor","get","before","authenticate"],"mappings":"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"}
@@ -43,9 +43,7 @@ class FirstTimeSetupController {
43
43
  async completeWizard(req, res) {
44
44
  const { loginRequired, registration, rootUsername, rootPassword } = await (0, _validators.validateMiddleware)(req, _settingvalidation.wizardSettingsRules);
45
45
  if (this.settingsStore.isWizardCompleted()) {
46
- throw new _runtimeexceptions.AuthorizationError({
47
- reason: "Wizard already completed"
48
- });
46
+ throw new _runtimeexceptions.ForbiddenError("Wizard already completed");
49
47
  }
50
48
  const role = await this.roleService.getSynchronizedRoleByName(_authorizationconstants.ROLES.ADMIN);
51
49
  const user = await this.userService.findRawByUsername(rootUsername?.toLowerCase());
@@ -1 +1 @@
1
- {"version":3,"sources":["../../src/controllers/first-time-setup.controller.ts"],"names":["FirstTimeSetupController","userService","roleService","settingsStore","constructor","validateWizard","req","res","loginRequired","registration","rootUsername","rootPassword","validateMiddleware","wizardSettingsRules","role","getSynchronizedRoleByName","ROLES","ADMIN","user","findRawByUsername","toLowerCase","BadRequestException","send","completeWizard","isWizardCompleted","AuthorizationError","reason","register","username","password","roles","id","isRootUser","isVerified","isDemoUser","needsPasswordChange","setLoginRequired","setRegistrationEnabled","setWizardCompleted","AppConstants","currentWizardVersion","createController","prefix","apiRoute","post"],"mappings":";;;;;;;;;;;IAWaA,wBAAwB;eAAxBA;;IA8Db,OAGuC;eAHvC;;;+BAzEiC;iCACJ;4BACM;mCACC;mCACoB;wCAClC;AAMf,MAAMA;IACXC,YAA0B;IAC1BC,YAA0B;IAC1BC,cAA6B;IAE7BC,YAAY,EACVD,aAAa,EACbD,WAAW,EACXD,WAAW,EAKZ,CAAE;QACD,IAAI,CAACE,aAAa,GAAGA;QACrB,IAAI,CAACD,WAAW,GAAGA;QACnB,IAAI,CAACD,WAAW,GAAGA;IACrB;IAEA,MAAMI,eAAeC,GAAY,EAAEC,GAAa,EAAE;QAChD,MAAM,EAAEC,aAAa,EAAEC,YAAY,EAAEC,YAAY,EAAEC,YAAY,EAAE,GAAG,MAAMC,IAAAA,8BAAkB,EAACN,KAAKO,sCAAmB;QAErH,MAAMC,OAAO,MAAM,IAAI,CAACZ,WAAW,CAACa,yBAAyB,CAACC,6BAAK,CAACC,KAAK;QACzE,MAAMC,OAAO,MAAM,IAAI,CAACjB,WAAW,CAACkB,iBAAiB,CAACT,cAAcU;QACpE,IAAI,CAAC,CAACF,MAAM;YACV,MAAM,IAAIG,sCAAmB,CAAC;QAChC;QAEA,OAAOd,IAAIe,IAAI;IACjB;IAEA,MAAMC,eAAejB,GAAY,EAAEC,GAAa,EAAE;QAChD,MAAM,EAAEC,aAAa,EAAEC,YAAY,EAAEC,YAAY,EAAEC,YAAY,EAAE,GAAG,MAAMC,IAAAA,8BAAkB,EAACN,KAAKO,sCAAmB;QAErH,IAAI,IAAI,CAACV,aAAa,CAACqB,iBAAiB,IAAI;YAC1C,MAAM,IAAIC,qCAAkB,CAAC;gBAAEC,QAAQ;YAA2B;QACpE;QAEA,MAAMZ,OAAO,MAAM,IAAI,CAACZ,WAAW,CAACa,yBAAyB,CAACC,6BAAK,CAACC,KAAK;QAEzE,MAAMC,OAAO,MAAM,IAAI,CAACjB,WAAW,CAACkB,iBAAiB,CAACT,cAAcU;QACpE,IAAI,CAAC,CAACF,MAAM;YACV,MAAM,IAAIG,sCAAmB,CAAC;QAChC;QAEA,MAAM,IAAI,CAACpB,WAAW,CAAC0B,QAAQ,CAAC;YAC9BC,UAAUlB;YACVmB,UAAUlB;YACVmB,OAAO;gBAAChB,KAAKiB,EAAE;aAAC;YAChBC,YAAY;YACZC,YAAY;YACZC,YAAY;YACZC,qBAAqB;QACvB;QACA,MAAM,IAAI,CAAChC,aAAa,CAACiC,gBAAgB,CAAC5B;QAC1C,MAAM,IAAI,CAACL,aAAa,CAACkC,sBAAsB,CAAC5B;QAChD,MAAM,IAAI,CAACN,aAAa,CAACmC,kBAAkB,CAACC,6BAAY,CAACC,oBAAoB;QAE7E,OAAOjC,IAAIe,IAAI;IACjB;AACF;MAEA,WAAemB,IAAAA,+BAAgB,EAACzC,0BAC7B0C,MAAM,CAACH,6BAAY,CAACI,QAAQ,GAAG,qBAC/BC,IAAI,CAAC,aAAa,kBAClBA,IAAI,CAAC,aAAa"}
1
+ {"version":3,"sources":["../../src/controllers/first-time-setup.controller.ts"],"names":["FirstTimeSetupController","userService","roleService","settingsStore","constructor","validateWizard","req","res","loginRequired","registration","rootUsername","rootPassword","validateMiddleware","wizardSettingsRules","role","getSynchronizedRoleByName","ROLES","ADMIN","user","findRawByUsername","toLowerCase","BadRequestException","send","completeWizard","isWizardCompleted","ForbiddenError","register","username","password","roles","id","isRootUser","isVerified","isDemoUser","needsPasswordChange","setLoginRequired","setRegistrationEnabled","setWizardCompleted","AppConstants","currentWizardVersion","createController","prefix","apiRoute","post"],"mappings":";;;;;;;;;;;IAWaA,wBAAwB;eAAxBA;;IA8Db,OAGuC;eAHvC;;;+BAzEiC;iCACJ;4BACM;mCACC;mCACgB;wCAC9B;AAMf,MAAMA;IACXC,YAA0B;IAC1BC,YAA0B;IAC1BC,cAA6B;IAE7BC,YAAY,EACVD,aAAa,EACbD,WAAW,EACXD,WAAW,EAKZ,CAAE;QACD,IAAI,CAACE,aAAa,GAAGA;QACrB,IAAI,CAACD,WAAW,GAAGA;QACnB,IAAI,CAACD,WAAW,GAAGA;IACrB;IAEA,MAAMI,eAAeC,GAAY,EAAEC,GAAa,EAAE;QAChD,MAAM,EAAEC,aAAa,EAAEC,YAAY,EAAEC,YAAY,EAAEC,YAAY,EAAE,GAAG,MAAMC,IAAAA,8BAAkB,EAACN,KAAKO,sCAAmB;QAErH,MAAMC,OAAO,MAAM,IAAI,CAACZ,WAAW,CAACa,yBAAyB,CAACC,6BAAK,CAACC,KAAK;QACzE,MAAMC,OAAO,MAAM,IAAI,CAACjB,WAAW,CAACkB,iBAAiB,CAACT,cAAcU;QACpE,IAAI,CAAC,CAACF,MAAM;YACV,MAAM,IAAIG,sCAAmB,CAAC;QAChC;QAEA,OAAOd,IAAIe,IAAI;IACjB;IAEA,MAAMC,eAAejB,GAAY,EAAEC,GAAa,EAAE;QAChD,MAAM,EAAEC,aAAa,EAAEC,YAAY,EAAEC,YAAY,EAAEC,YAAY,EAAE,GAAG,MAAMC,IAAAA,8BAAkB,EAACN,KAAKO,sCAAmB;QAErH,IAAI,IAAI,CAACV,aAAa,CAACqB,iBAAiB,IAAI;YAC1C,MAAM,IAAIC,iCAAc,CAAC;QAC3B;QAEA,MAAMX,OAAO,MAAM,IAAI,CAACZ,WAAW,CAACa,yBAAyB,CAACC,6BAAK,CAACC,KAAK;QAEzE,MAAMC,OAAO,MAAM,IAAI,CAACjB,WAAW,CAACkB,iBAAiB,CAACT,cAAcU;QACpE,IAAI,CAAC,CAACF,MAAM;YACV,MAAM,IAAIG,sCAAmB,CAAC;QAChC;QAEA,MAAM,IAAI,CAACpB,WAAW,CAACyB,QAAQ,CAAC;YAC9BC,UAAUjB;YACVkB,UAAUjB;YACVkB,OAAO;gBAACf,KAAKgB,EAAE;aAAC;YAChBC,YAAY;YACZC,YAAY;YACZC,YAAY;YACZC,qBAAqB;QACvB;QACA,MAAM,IAAI,CAAC/B,aAAa,CAACgC,gBAAgB,CAAC3B;QAC1C,MAAM,IAAI,CAACL,aAAa,CAACiC,sBAAsB,CAAC3B;QAChD,MAAM,IAAI,CAACN,aAAa,CAACkC,kBAAkB,CAACC,6BAAY,CAACC,oBAAoB;QAE7E,OAAOhC,IAAIe,IAAI;IACjB;AACF;MAEA,WAAekB,IAAAA,+BAAgB,EAACxC,0BAC7ByC,MAAM,CAACH,6BAAY,CAACI,QAAQ,GAAG,qBAC/BC,IAAI,CAAC,aAAa,kBAClBA,IAAI,CAAC,aAAa"}
@@ -24,12 +24,21 @@ const _validators = require("../handlers/validators");
24
24
  const _genericvalidation = require("./validation/generic.validation");
25
25
  const _runtimeexceptions = require("../exceptions/runtime.exceptions");
26
26
  const _demomiddleware = require("../middleware/demo.middleware");
27
+ const _errorutils = require("../utils/error.utils");
27
28
  class UserController {
28
29
  userService;
30
+ roleService;
29
31
  configService;
30
- constructor({ userService, configService }){
32
+ authService;
33
+ settingsStore;
34
+ logger;
35
+ constructor({ userService, configService, roleService, settingsStore, authService, loggerFactory }){
31
36
  this.userService = userService;
32
37
  this.configService = configService;
38
+ this.roleService = roleService;
39
+ this.authService = authService;
40
+ this.settingsStore = settingsStore;
41
+ this.logger = loggerFactory(UserController.name);
33
42
  }
34
43
  async profile(req, res) {
35
44
  if (!req.user?.id) {
@@ -43,10 +52,21 @@ class UserController {
43
52
  const users = await this.userService.listUsers();
44
53
  res.send(users.map((u)=>this.userService.toDto(u)));
45
54
  }
55
+ async listRoles(req, res) {
56
+ const roleDtos = this.roleService.roles.map((r)=>this.roleService.toDto(r));
57
+ res.send(roleDtos);
58
+ }
46
59
  async delete(req, res) {
47
60
  const { id } = await (0, _validators.validateInput)(req.params, _genericvalidation.idRules);
48
- if (req.user?.id === id) {
49
- throw new _runtimeexceptions.InternalServerException("Not allowed to delete your own account");
61
+ const ownUserId = req.user?.id;
62
+ if (ownUserId) {
63
+ if (ownUserId === id) {
64
+ throw new _runtimeexceptions.ForbiddenError("Not allowed to delete own account");
65
+ }
66
+ }
67
+ const isRootUser = await this.userService.isUserRootUser(id);
68
+ if (isRootUser) {
69
+ throw new _runtimeexceptions.ForbiddenError("Not allowed to delete root user");
50
70
  }
51
71
  if (this.configService.isDemoMode()) {
52
72
  const demoUserId = await this.userService.getDemoUserId();
@@ -55,6 +75,11 @@ class UserController {
55
75
  }
56
76
  }
57
77
  await this.userService.deleteUser(id);
78
+ try {
79
+ await this.authService.logoutUserId(id);
80
+ } catch (e) {
81
+ this.logger.error((0, _errorutils.errorSummary)(e));
82
+ }
58
83
  res.send();
59
84
  }
60
85
  async get(req, res) {
@@ -64,8 +89,8 @@ class UserController {
64
89
  }
65
90
  async changeUsername(req, res) {
66
91
  const { id } = await (0, _validators.validateInput)(req.params, _genericvalidation.idRules);
67
- if (req.user?.id !== id) {
68
- throw new _runtimeexceptions.InternalServerException("Not allowed to change username of other users");
92
+ if (req.user?.id !== id && await this.settingsStore.getLoginRequired()) {
93
+ throw new _runtimeexceptions.ForbiddenError("Not allowed to change username of other users");
69
94
  }
70
95
  const { username } = await (0, _validators.validateInput)(req.body, {
71
96
  username: "required|string"
@@ -75,8 +100,8 @@ class UserController {
75
100
  }
76
101
  async changePassword(req, res) {
77
102
  const { id } = await (0, _validators.validateInput)(req.params, _genericvalidation.idRules);
78
- if (req.user?.id !== id) {
79
- throw new _runtimeexceptions.InternalServerException("Not allowed to change password of other users");
103
+ if (req.user?.id !== id && await this.settingsStore.getLoginRequired()) {
104
+ throw new _runtimeexceptions.ForbiddenError("Not allowed to change password of other users");
80
105
  }
81
106
  const { oldPassword, newPassword } = await (0, _validators.validateInput)(req.body, {
82
107
  oldPassword: "required|string",
@@ -87,16 +112,49 @@ class UserController {
87
112
  }
88
113
  async setVerified(req, res) {
89
114
  const { id } = await (0, _validators.validateInput)(req.params, _genericvalidation.idRules);
115
+ const ownUserId = req.user?.id;
116
+ if (ownUserId) {
117
+ if (ownUserId === id) {
118
+ throw new _runtimeexceptions.ForbiddenError("Not allowed to change own verified status");
119
+ }
120
+ }
121
+ const isRootUser = await this.userService.isUserRootUser(id);
122
+ if (isRootUser) {
123
+ throw new _runtimeexceptions.ForbiddenError("Not allowed to change root user to unverified");
124
+ }
90
125
  const { isVerified } = await (0, _validators.validateInput)(req.body, {
91
126
  isVerified: "required|boolean"
92
127
  });
93
128
  await this.userService.setVerifiedById(id, isVerified);
129
+ // Note: this makes it impossible for the UI to determine if the user is verified or not
130
+ // if (!isVerified) {
131
+ // try {
132
+ // await this.authService.logoutUserId(id);
133
+ // } catch (e) {
134
+ // this.logger.error(errorSummary(e));
135
+ // }
136
+ // }
137
+ res.send();
138
+ }
139
+ async setRootUser(req, res) {
140
+ const { id } = await (0, _validators.validateInput)(req.params, _genericvalidation.idRules);
141
+ const userId = req.user?.id;
142
+ if (req.user?.id) {
143
+ const isRootUser = await this.userService.isUserRootUser(userId);
144
+ if (!isRootUser) {
145
+ throw new _runtimeexceptions.ForbiddenError("Not allowed to change owner (root user) without being owner yourself");
146
+ }
147
+ }
148
+ const { isRootUser } = await (0, _validators.validateInput)(req.body, {
149
+ isRootUser: "required|boolean"
150
+ });
151
+ await this.userService.setIsRootUserById(id, isRootUser);
94
152
  res.send();
95
153
  }
96
154
  throwIfDemoMode() {
97
155
  const isDemoMode = this.configService.isDemoMode();
98
156
  if (isDemoMode) {
99
- throw new _runtimeexceptions.InternalServerException("Not allowed in demo mode");
157
+ throw new _runtimeexceptions.ForbiddenError("Not allowed in demo mode");
100
158
  }
101
159
  }
102
160
  }
@@ -108,7 +166,7 @@ const _default = (0, _awilixexpress.createController)(UserController).prefix(_se
108
166
  _authorizationconstants.ROLES.ADMIN
109
167
  ])
110
168
  ]
111
- }).get("/profile", "profile").get("/:id", "get", {
169
+ }).get("/roles", "listRoles", {}).get("/profile", "profile").get("/:id", "get", {
112
170
  before: [
113
171
  (0, _authenticate.authorizeRoles)([
114
172
  _authorizationconstants.ROLES.ADMIN
@@ -121,6 +179,11 @@ const _default = (0, _awilixexpress.createController)(UserController).prefix(_se
121
179
  ]),
122
180
  _demomiddleware.demoUserNotAllowed
123
181
  ]
182
+ })// Has root user validation
183
+ .post("/:id/set-root-user", "setRootUser", {
184
+ before: [
185
+ _demomiddleware.demoUserNotAllowed
186
+ ]
124
187
  }).post("/:id/set-verified", "setVerified", {
125
188
  before: [
126
189
  (0, _authenticate.authorizeRoles)([
@@ -1 +1 @@
1
- {"version":3,"sources":["../../src/controllers/user.controller.ts"],"names":["UserController","userService","configService","constructor","profile","req","res","user","id","send","getUser","toDto","list","users","listUsers","map","u","delete","validateInput","params","idRules","InternalServerException","isDemoMode","demoUserId","getDemoUserId","throwIfDemoMode","deleteUser","get","changeUsername","username","body","updateUsernameById","changePassword","oldPassword","newPassword","updatePasswordById","setVerified","isVerified","setVerifiedById","createController","prefix","AppConstants","apiRoute","before","authenticate","authorizeRoles","ROLES","ADMIN","demoUserNotAllowed","post","demoUserNotAllowedInterceptor"],"mappings":"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"}
1
+ {"version":3,"sources":["../../src/controllers/user.controller.ts"],"names":["UserController","userService","roleService","configService","authService","settingsStore","logger","constructor","loggerFactory","name","profile","req","res","user","id","send","getUser","toDto","list","users","listUsers","map","u","listRoles","roleDtos","roles","r","delete","validateInput","params","idRules","ownUserId","ForbiddenError","isRootUser","isUserRootUser","isDemoMode","demoUserId","getDemoUserId","throwIfDemoMode","deleteUser","logoutUserId","e","error","errorSummary","get","changeUsername","getLoginRequired","username","body","updateUsernameById","changePassword","oldPassword","newPassword","updatePasswordById","setVerified","isVerified","setVerifiedById","setRootUser","userId","setIsRootUserById","createController","prefix","AppConstants","apiRoute","before","authenticate","authorizeRoles","ROLES","ADMIN","demoUserNotAllowed","post","demoUserNotAllowedInterceptor"],"mappings":"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"}
@@ -8,9 +8,10 @@ Object.defineProperty(exports, "registerUserRules", {
8
8
  return registerUserRules;
9
9
  }
10
10
  });
11
+ const _serverconstants = require("../../server.constants");
11
12
  const registerUserRules = {
12
- username: "required|string",
13
- password: "required|string"
13
+ username: `required|string|minLength:${_serverconstants.AppConstants.DEFAULT_USERNAME_MINLEN}`,
14
+ password: `required|string|minLength:${_serverconstants.AppConstants.DEFAULT_PASSWORD_MINLEN}`
14
15
  };
15
16
 
16
17
  //# sourceMappingURL=user-controller.validation.js.map
@@ -1 +1 @@
1
- {"version":3,"sources":["../../../src/controllers/validation/user-controller.validation.ts"],"names":["registerUserRules","username","password"],"mappings":";;;;+BAAaA;;;eAAAA;;;AAAN,MAAMA,oBAAoB;IAC/BC,UAAU;IACVC,UAAU;AACZ"}
1
+ {"version":3,"sources":["../../../src/controllers/validation/user-controller.validation.ts"],"names":["registerUserRules","username","AppConstants","DEFAULT_USERNAME_MINLEN","password","DEFAULT_PASSWORD_MINLEN"],"mappings":";;;;+BAEaA;;;eAAAA;;;iCAFgB;AAEtB,MAAMA,oBAAoB;IAC/BC,UAAU,CAAC,0BAA0B,EAAEC,6BAAY,CAACC,uBAAuB,CAAC,CAAC;IAC7EC,UAAU,CAAC,0BAA0B,EAAEF,6BAAY,CAACG,uBAAuB,CAAC,CAAC;AAC/E"}
@@ -1 +1 @@
1
- {"version":3,"sources":["../../src/exceptions/job.exceptions.ts"],"names":["JobValidationException","Error","constructor","message","taskId","name"],"mappings":";;;;+BAAaA;;;eAAAA;;;AAAN,MAAMA,+BAA+BC;IAC1CC,YAAYC,OAAO,EAAEC,MAAM,CAAE;QAC3B,KAAK,CAACD;QACN,IAAI,CAACE,IAAI,GAAG,CAAC,oBAAoB,EAAED,UAAU,YAAY,CAAC,CAAC;IAC7D;AACF"}
1
+ {"version":3,"sources":["../../src/exceptions/job.exceptions.ts"],"names":["JobValidationException","Error","constructor","message","taskId","name"],"mappings":";;;;+BAAaA;;;eAAAA;;;AAAN,MAAMA,+BAA+BC;IAC1CC,YAAYC,OAAe,EAAEC,MAAc,CAAE;QAC3C,KAAK,CAACD;QACN,IAAI,CAACE,IAAI,GAAG,CAAC,oBAAoB,EAAED,UAAU,YAAY,CAAC,CAAC;IAC7D;AACF"}
@@ -33,9 +33,6 @@ _export(exports, {
33
33
  NotImplementedException: function() {
34
34
  return NotImplementedException;
35
35
  },
36
- PasswordChangeRequiredError: function() {
37
- return PasswordChangeRequiredError;
38
- },
39
36
  ValidationException: function() {
40
37
  return ValidationException;
41
38
  }
@@ -47,9 +44,11 @@ class NotImplementedException extends Error {
47
44
  }
48
45
  }
49
46
  class AuthenticationError extends Error {
50
- constructor(error){
47
+ reasonCode;
48
+ constructor(error, reasonCode = ""){
51
49
  super(error);
52
50
  this.name = AuthenticationError.name;
51
+ this.reasonCode = reasonCode;
53
52
  }
54
53
  }
55
54
  class ForbiddenError extends Error {
@@ -58,12 +57,6 @@ class ForbiddenError extends Error {
58
57
  this.name = ForbiddenError.name;
59
58
  }
60
59
  }
61
- class PasswordChangeRequiredError extends Error {
62
- constructor(){
63
- super("Password change required");
64
- this.name = PasswordChangeRequiredError.name;
65
- }
66
- }
67
60
  class AuthorizationError extends Error {
68
61
  permissions = [];
69
62
  roles = [];
@@ -1 +1 @@
1
- {"version":3,"sources":["../../src/exceptions/runtime.exceptions.ts"],"names":["AuthenticationError","AuthorizationError","BadRequestException","ExternalServiceError","ForbiddenError","InternalServerException","NotFoundException","NotImplementedException","PasswordChangeRequiredError","ValidationException","Error","constructor","message","name","error","permissions","roles","reason","path","errors","validationObject","JSON","stringify","responseObject","stack"],"mappings":";;;;;;;;;;;IAOaA,mBAAmB;eAAnBA;;IAqBAC,kBAAkB;eAAlBA;;IAcAC,mBAAmB;eAAnBA;;IA2BAC,oBAAoB;eAApBA;;IAvDAC,cAAc;eAAdA;;IAiEAC,uBAAuB;eAAvBA;;IA9BAC,iBAAiB;eAAjBA;;IAjDAC,uBAAuB;eAAvBA;;IAqBAC,2BAA2B;eAA3BA;;IAsCAC,mBAAmB;eAAnBA;;;AA3DN,MAAMF,gCAAgCG;IAC3CC,YAAYC,OAAgB,CAAE;QAC5B,KAAK,CAACA;QACN,IAAI,CAACC,IAAI,GAAGN,wBAAwBM,IAAI;IAC1C;AACF;AAEO,MAAMb,4BAA4BU;IACvCC,YAAYG,KAAc,CAAE;QAC1B,KAAK,CAACA;QACN,IAAI,CAACD,IAAI,GAAGb,oBAAoBa,IAAI;IACtC;AACF;AAEO,MAAMT,uBAAuBM;IAClCC,YAAYG,KAAc,CAAE;QAC1B,KAAK,CAACA;QACN,IAAI,CAACD,IAAI,GAAGT,eAAeS,IAAI;IACjC;AACF;AAEO,MAAML,oCAAoCE;IAC/CC,aAAc;QACZ,KAAK,CAAC;QACN,IAAI,CAACE,IAAI,GAAGL,4BAA4BK,IAAI;IAC9C;AACF;AAEO,MAAMZ,2BAA2BS;IACtCK,cAAyB,EAAE,CAAC;IAC5BC,QAAmB,EAAE,CAAC;IACtBC,OAAgB;IAEhBN,YAAY,EAAEI,WAAW,EAAEC,KAAK,EAAEC,MAAM,EAAiE,CAAE;QACzG,KAAK,CAAC;QACN,IAAI,CAACJ,IAAI,GAAGZ,mBAAmBY,IAAI;QACnC,IAAI,CAACI,MAAM,GAAGA;QACd,IAAI,CAACF,WAAW,GAAGA;QACnB,IAAI,CAACC,KAAK,GAAGA;IACf;AACF;AAEO,MAAMd,4BAA4BQ;IACvCC,YAAYC,OAAe,CAAE;QAC3B,KAAK,CAACA;QACN,IAAI,CAACC,IAAI,GAAGX,oBAAoBW,IAAI;IACtC;AACF;AAEO,MAAMP,0BAA0BI;IACrCQ,KAAc;IAEdP,YAAYC,OAAe,EAAEM,IAAa,CAAE;QAC1C,KAAK,CAACN;QACN,IAAI,CAACC,IAAI,GAAGP,kBAAkBO,IAAI;QAClC,IAAI,CAACK,IAAI,GAAGA;IACd;AACF;AAEO,MAAMT,4BAA4BC;IACvCS,OAAY;IAEZR,YAAYS,gBAAqB,CAAE;QACjC,KAAK,CAACC,KAAKC,SAAS,CAACF;QACrB,IAAI,CAACP,IAAI,GAAGJ,oBAAoBI,IAAI;QACpC,IAAI,CAACM,MAAM,GAAGC;IAChB;AACF;AAEO,MAAMjB,6BAA6BO;IACxCI,MAAW;IAEXH,YAAYY,cAAmB,CAAE;QAC/B,KAAK,CAACF,KAAKC,SAAS,CAACC;QACrB,IAAI,CAACV,IAAI,GAAGV,qBAAqBU,IAAI;QACrC,IAAI,CAACC,KAAK,GAAGS;IACf;AACF;AAEO,MAAMlB,gCAAgCK;IAC3CC,YAAYC,OAAe,EAAEY,KAAW,CAAE;QACxC,KAAK,CAACZ;QACN,IAAI,CAACC,IAAI,GAAGR,wBAAwBQ,IAAI;QACxC,IAAI,CAACW,KAAK,GAAGA;IACf;AACF"}
1
+ {"version":3,"sources":["../../src/exceptions/runtime.exceptions.ts"],"names":["AuthenticationError","AuthorizationError","BadRequestException","ExternalServiceError","ForbiddenError","InternalServerException","NotFoundException","NotImplementedException","ValidationException","Error","constructor","message","name","reasonCode","error","permissions","roles","reason","path","errors","validationObject","JSON","stringify","responseObject","stack"],"mappings":";;;;;;;;;;;IAOaA,mBAAmB;eAAnBA;;IAgBAC,kBAAkB;eAAlBA;;IAcAC,mBAAmB;eAAnBA;;IA2BAC,oBAAoB;eAApBA;;IAhDAC,cAAc;eAAdA;;IA0DAC,uBAAuB;eAAvBA;;IA9BAC,iBAAiB;eAAjBA;;IA5CAC,uBAAuB;eAAvBA;;IAsDAC,mBAAmB;eAAnBA;;;AAtDN,MAAMD,gCAAgCE;IAC3CC,YAAYC,OAAgB,CAAE;QAC5B,KAAK,CAACA;QACN,IAAI,CAACC,IAAI,GAAGL,wBAAwBK,IAAI;IAC1C;AACF;AAEO,MAAMZ,4BAA4BS;IACvCI,WAAmB;IACnBH,YAAYI,KAAc,EAAED,aAAa,EAAE,CAAE;QAC3C,KAAK,CAACC;QACN,IAAI,CAACF,IAAI,GAAGZ,oBAAoBY,IAAI;QACpC,IAAI,CAACC,UAAU,GAAGA;IACpB;AACF;AAEO,MAAMT,uBAAuBK;IAClCC,YAAYI,KAAc,CAAE;QAC1B,KAAK,CAACA;QACN,IAAI,CAACF,IAAI,GAAGR,eAAeQ,IAAI;IACjC;AACF;AAEO,MAAMX,2BAA2BQ;IACtCM,cAAyB,EAAE,CAAC;IAC5BC,QAAmB,EAAE,CAAC;IACtBC,OAAgB;IAEhBP,YAAY,EAAEK,WAAW,EAAEC,KAAK,EAAEC,MAAM,EAAiE,CAAE;QACzG,KAAK,CAAC;QACN,IAAI,CAACL,IAAI,GAAGX,mBAAmBW,IAAI;QACnC,IAAI,CAACK,MAAM,GAAGA;QACd,IAAI,CAACF,WAAW,GAAGA;QACnB,IAAI,CAACC,KAAK,GAAGA;IACf;AACF;AAEO,MAAMd,4BAA4BO;IACvCC,YAAYC,OAAe,CAAE;QAC3B,KAAK,CAACA;QACN,IAAI,CAACC,IAAI,GAAGV,oBAAoBU,IAAI;IACtC;AACF;AAEO,MAAMN,0BAA0BG;IACrCS,KAAc;IAEdR,YAAYC,OAAe,EAAEO,IAAa,CAAE;QAC1C,KAAK,CAACP;QACN,IAAI,CAACC,IAAI,GAAGN,kBAAkBM,IAAI;QAClC,IAAI,CAACM,IAAI,GAAGA;IACd;AACF;AAEO,MAAMV,4BAA4BC;IACvCU,OAAY;IAEZT,YAAYU,gBAAqB,CAAE;QACjC,KAAK,CAACC,KAAKC,SAAS,CAACF;QACrB,IAAI,CAACR,IAAI,GAAGJ,oBAAoBI,IAAI;QACpC,IAAI,CAACO,MAAM,GAAGC;IAChB;AACF;AAEO,MAAMjB,6BAA6BM;IACxCK,MAAW;IAEXJ,YAAYa,cAAmB,CAAE;QAC/B,KAAK,CAACF,KAAKC,SAAS,CAACC;QACrB,IAAI,CAACX,IAAI,GAAGT,qBAAqBS,IAAI;QACrC,IAAI,CAACE,KAAK,GAAGS;IACf;AACF;AAEO,MAAMlB,gCAAgCI;IAC3CC,YAAYC,OAAe,EAAEa,KAAW,CAAE;QACxC,KAAK,CAACb;QACN,IAAI,CAACC,IAAI,GAAGP,wBAAwBO,IAAI;QACxC,IAAI,CAACY,KAAK,GAAGA;IACf;AACF"}
@@ -24,6 +24,7 @@ _export(exports, {
24
24
  });
25
25
  const _awilixexpress = require("awilix-express");
26
26
  const _runtimeexceptions = require("../exceptions/runtime.exceptions");
27
+ const _authorizationconstants = require("../constants/authorization.constants");
27
28
  function authorizePermission(permission) {
28
29
  return (0, _awilixexpress.inject)(({ permissionService, roleService })=>async (req, res, next)=>{
29
30
  if (!req.roles?.length) {
@@ -44,25 +45,27 @@ function authorizePermission(permission) {
44
45
  next();
45
46
  });
46
47
  }
47
- const authenticate = ()=>(0, _awilixexpress.inject)(({ settingsStore, authService })=>async (req, res, next)=>{
48
+ const authenticate = ()=>(0, _awilixexpress.inject)(({ settingsStore, authService, loggerFactory })=>async (req, res, next)=>{
49
+ const logger = loggerFactory("Middleware:authenticate");
48
50
  const isLoginRequired = await settingsStore.getLoginRequired();
49
51
  if (!isLoginRequired) {
50
52
  return next();
51
53
  }
52
54
  // Check if a password change is required
53
55
  if (req.user?.needsPasswordChange) {
54
- throw new _runtimeexceptions.PasswordChangeRequiredError();
56
+ throw new _runtimeexceptions.AuthenticationError("Password change required", _authorizationconstants.AUTH_ERROR_REASON.PasswordChangeRequired);
55
57
  }
56
58
  // Check if a logout was called
57
59
  const bearer = req.headers.authorization?.replace("Bearer ", "") || undefined;
58
60
  const isJwtBlacklisted = authService.isJwtTokenBlacklisted(bearer);
59
61
  if (!!bearer?.length && isJwtBlacklisted) {
60
- throw new _runtimeexceptions.AuthenticationError("Not authenticated");
62
+ throw new _runtimeexceptions.AuthenticationError("Not authenticated", _authorizationconstants.AUTH_ERROR_REASON.LoginRequired);
61
63
  }
62
64
  if (req.isAuthenticated()) {
63
65
  return next();
64
66
  }
65
- throw new _runtimeexceptions.AuthenticationError("Not authenticated");
67
+ logger.log(`Not authenticated for route: ${req.originalUrl}`);
68
+ throw new _runtimeexceptions.AuthenticationError("Not authenticated", _authorizationconstants.AUTH_ERROR_REASON.InvalidOrExpiredAuthToken);
66
69
  });
67
70
  const authorizeRoles = (roles, subset = true)=>(0, _awilixexpress.inject)(({ roleService })=>async (req, res, next)=>{
68
71
  if (!roleService.authorizeRoles(roles, req.roles, subset)) {
@@ -1 +1 @@
1
- {"version":3,"sources":["../../src/middleware/authenticate.ts"],"names":["authenticate","authorizePermission","authorizeRoles","withPermission","permission","inject","permissionService","roleService","req","res","next","roles","length","AuthorizationError","permissions","assignedPermissions","getRolesPermissions","settingsStore","authService","isLoginRequired","getLoginRequired","user","needsPasswordChange","PasswordChangeRequiredError","bearer","headers","authorization","replace","undefined","isJwtBlacklisted","isJwtTokenBlacklisted","AuthenticationError","isAuthenticated","subset","before"],"mappings":";;;;;;;;;;;IAmBaA,YAAY;eAAZA;;IAfGC,mBAAmB;eAAnBA;;IAwCHC,cAAc;eAAdA;;IASGC,cAAc;eAAdA;;;+BArDO;mCAC8D;AAG9E,SAASF,oBAAoBG,UAAkB;IACpD,OAAOC,IAAAA,qBAAM,EAAC,CAAC,EAAEC,iBAAiB,EAAEC,WAAW,EAAE,GAAK,OAAOC,KAAcC,KAAeC;YACxF,IAAI,CAACF,IAAIG,KAAK,EAAEC,QAAQ;gBACtB,MAAM,IAAIC,qCAAkB,CAAC;oBAAEC,aAAa;wBAACV;qBAAW;gBAAC;YAC3D;YAEA,MAAMW,sBAAsBR,YAAYS,mBAAmB,CAACR,IAAIG,KAAK;YACrE,IAAI,CAACL,kBAAkBL,mBAAmB,CAACG,YAAYW,sBAAsB;gBAC3E,MAAM,IAAIF,qCAAkB,CAAC;oBAAEC,aAAa;wBAACV;qBAAW;gBAAC;YAC3D;YAEAM;QACF;AACF;AAEO,MAAMV,eAAe,IAC1BK,IAAAA,qBAAM,EAAC,CAAC,EAAEY,aAAa,EAAEC,WAAW,EAAE,GAAK,OAAOV,KAAcC,KAAeC;YAC7E,MAAMS,kBAAkB,MAAMF,cAAcG,gBAAgB;YAC5D,IAAI,CAACD,iBAAiB;gBACpB,OAAOT;YACT;YAEA,yCAAyC;YACzC,IAAIF,IAAIa,IAAI,EAAEC,qBAAqB;gBACjC,MAAM,IAAIC,8CAA2B;YACvC;YAEA,+BAA+B;YAC/B,MAAMC,SAAShB,IAAIiB,OAAO,CAACC,aAAa,EAAEC,QAAQ,WAAW,OAAOC;YACpE,MAAMC,mBAAmBX,YAAYY,qBAAqB,CAACN;YAC3D,IAAI,CAAC,CAACA,QAAQZ,UAAUiB,kBAAkB;gBACxC,MAAM,IAAIE,sCAAmB,CAAC;YAChC;YAEA,IAAIvB,IAAIwB,eAAe,IAAI;gBACzB,OAAOtB;YACT;YAEA,MAAM,IAAIqB,sCAAmB,CAAC;QAChC;AACK,MAAM7B,iBAAiB,CAACS,OAAiBsB,SAAS,IAAI,GAC3D5B,IAAAA,qBAAM,EAAC,CAAC,EAAEE,WAAW,EAAE,GAAK,OAAOC,KAAcC,KAAeC;YAC9D,IAAI,CAACH,YAAYL,cAAc,CAACS,OAAOH,IAAIG,KAAK,EAAEsB,SAAS;gBACzD,MAAM,IAAIpB,qCAAkB,CAAC;oBAAEF;gBAAM;YACvC;YAEAD;QACF;AAEK,SAASP,eAAeC,UAAkB;IAC/C,OAAO;QACL8B,QAAQ;YAACjC,oBAAoBG;SAAY;IAC3C;AACF"}
1
+ {"version":3,"sources":["../../src/middleware/authenticate.ts"],"names":["authenticate","authorizePermission","authorizeRoles","withPermission","permission","inject","permissionService","roleService","req","res","next","roles","length","AuthorizationError","permissions","assignedPermissions","getRolesPermissions","settingsStore","authService","loggerFactory","logger","isLoginRequired","getLoginRequired","user","needsPasswordChange","AuthenticationError","AUTH_ERROR_REASON","PasswordChangeRequired","bearer","headers","authorization","replace","undefined","isJwtBlacklisted","isJwtTokenBlacklisted","LoginRequired","isAuthenticated","log","originalUrl","InvalidOrExpiredAuthToken","subset","before"],"mappings":";;;;;;;;;;;IAuBaA,YAAY;eAAZA;;IAfGC,mBAAmB;eAAnBA;;IAqDHC,cAAc;eAAdA;;IASGC,cAAc;eAAdA;;;+BAtEO;mCACiC;wCAEtB;AAK3B,SAASF,oBAAoBG,UAAkB;IACpD,OAAOC,IAAAA,qBAAM,EAAC,CAAC,EAAEC,iBAAiB,EAAEC,WAAW,EAAE,GAAK,OAAOC,KAAcC,KAAeC;YACxF,IAAI,CAACF,IAAIG,KAAK,EAAEC,QAAQ;gBACtB,MAAM,IAAIC,qCAAkB,CAAC;oBAAEC,aAAa;wBAACV;qBAAW;gBAAC;YAC3D;YAEA,MAAMW,sBAAsBR,YAAYS,mBAAmB,CAACR,IAAIG,KAAK;YACrE,IAAI,CAACL,kBAAkBL,mBAAmB,CAACG,YAAYW,sBAAsB;gBAC3E,MAAM,IAAIF,qCAAkB,CAAC;oBAAEC,aAAa;wBAACV;qBAAW;gBAAC;YAC3D;YAEAM;QACF;AACF;AAEO,MAAMV,eAAe,IAC1BK,IAAAA,qBAAM,EACJ,CAAC,EACGY,aAAa,EACbC,WAAW,EACXC,aAAa,EAKd,GACD,OAAOX,KAAcC,KAAeC;YAClC,MAAMU,SAASD,cAAc;YAC7B,MAAME,kBAAkB,MAAMJ,cAAcK,gBAAgB;YAC5D,IAAI,CAACD,iBAAiB;gBACpB,OAAOX;YACT;YAEA,yCAAyC;YACzC,IAAIF,IAAIe,IAAI,EAAEC,qBAAqB;gBACjC,MAAM,IAAIC,sCAAmB,CAAC,4BAA4BC,yCAAiB,CAACC,sBAAsB;YACpG;YAEA,+BAA+B;YAC/B,MAAMC,SAASpB,IAAIqB,OAAO,CAACC,aAAa,EAAEC,QAAQ,WAAW,OAAOC;YACpE,MAAMC,mBAAmBf,YAAYgB,qBAAqB,CAACN;YAC3D,IAAI,CAAC,CAACA,QAAQhB,UAAUqB,kBAAkB;gBACxC,MAAM,IAAIR,sCAAmB,CAAC,qBAAqBC,yCAAiB,CAACS,aAAa;YACpF;YAEA,IAAI3B,IAAI4B,eAAe,IAAI;gBACzB,OAAO1B;YACT;YAEAU,OAAOiB,GAAG,CAAC,CAAC,6BAA6B,EAAE7B,IAAI8B,WAAW,CAAC,CAAC;YAC5D,MAAM,IAAIb,sCAAmB,CAAC,qBAAqBC,yCAAiB,CAACa,yBAAyB;QAChG;AAEC,MAAMrC,iBAAiB,CAACS,OAAiB6B,SAAS,IAAI,GAC3DnC,IAAAA,qBAAM,EAAC,CAAC,EAAEE,WAAW,EAAE,GAAK,OAAOC,KAAcC,KAAeC;YAC9D,IAAI,CAACH,YAAYL,cAAc,CAACS,OAAOH,IAAIG,KAAK,EAAE6B,SAAS;gBACzD,MAAM,IAAI3B,qCAAkB,CAAC;oBAAEF;gBAAM;YACvC;YAEAD;QACF;AAEK,SAASP,eAAeC,UAAkB;IAC/C,OAAO;QACLqC,QAAQ;YAACxC,oBAAoBG;SAAY;IAC3C;AACF"}