axiodb 9.7.8 → 10.8.11

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 (151) hide show
  1. package/README.md +22 -0
  2. package/lib/Helper/Console.helper.js.map +1 -1
  3. package/lib/Helper/Converter.helper.js.map +1 -1
  4. package/lib/Helper/Crypto.helper.js.map +1 -1
  5. package/lib/Helper/CryptoGraphy.helper.js.map +1 -1
  6. package/lib/Helper/DocumentLoader.helper.js.map +1 -1
  7. package/lib/Helper/PathSanitizer.helper.js.map +1 -1
  8. package/lib/Helper/UniqueGenerator.helper.js.map +1 -1
  9. package/lib/Helper/response.helper.js.map +1 -1
  10. package/lib/Memory/memory.operation.js.map +1 -1
  11. package/lib/Services/Aggregation/Aggregation.Operation.js.map +1 -1
  12. package/lib/Services/Auth/AuthSeeder.service.d.ts +16 -0
  13. package/lib/Services/Auth/AuthSeeder.service.js +99 -0
  14. package/lib/Services/Auth/AuthSeeder.service.js.map +1 -0
  15. package/lib/Services/Auth/AuthService.service.d.ts +53 -0
  16. package/lib/Services/Auth/AuthService.service.js +217 -0
  17. package/lib/Services/Auth/AuthService.service.js.map +1 -0
  18. package/lib/Services/Auth/ConfigDatabase.service.d.ts +22 -0
  19. package/lib/Services/Auth/ConfigDatabase.service.js +47 -0
  20. package/lib/Services/Auth/ConfigDatabase.service.js.map +1 -0
  21. package/lib/Services/Auth/CookieCodec.helper.d.ts +10 -0
  22. package/lib/Services/Auth/CookieCodec.helper.js +30 -0
  23. package/lib/Services/Auth/CookieCodec.helper.js.map +1 -0
  24. package/lib/Services/Auth/PasswordHasher.helper.d.ts +9 -0
  25. package/lib/Services/Auth/PasswordHasher.helper.js +54 -0
  26. package/lib/Services/Auth/PasswordHasher.helper.js.map +1 -0
  27. package/lib/Services/Auth/PermissionChecker.helper.d.ts +21 -0
  28. package/lib/Services/Auth/PermissionChecker.helper.js +41 -0
  29. package/lib/Services/Auth/PermissionChecker.helper.js.map +1 -0
  30. package/lib/Services/Auth/SessionStore.service.d.ts +23 -0
  31. package/lib/Services/Auth/SessionStore.service.js +96 -0
  32. package/lib/Services/Auth/SessionStore.service.js.map +1 -0
  33. package/lib/Services/CRUD Operation/Create.operation.js.map +1 -1
  34. package/lib/Services/CRUD Operation/Delete.operation.js.map +1 -1
  35. package/lib/Services/CRUD Operation/Reader.operation.js +4 -3
  36. package/lib/Services/CRUD Operation/Reader.operation.js.map +1 -1
  37. package/lib/Services/CRUD Operation/Update.operation.js.map +1 -1
  38. package/lib/Services/Collection/collection.operation.d.ts +1 -1
  39. package/lib/Services/Collection/collection.operation.js.map +1 -1
  40. package/lib/Services/Database/database.operation.js.map +1 -1
  41. package/lib/Services/Index/DeleteIndex.service.js.map +1 -1
  42. package/lib/Services/Index/Index.service.js.map +1 -1
  43. package/lib/Services/Index/IndexCache.service.js.map +1 -1
  44. package/lib/Services/Index/InsertIndex.service.js.map +1 -1
  45. package/lib/Services/Index/ReadIndex.service.js.map +1 -1
  46. package/lib/Services/Indexation.operation.js +8 -3
  47. package/lib/Services/Indexation.operation.js.map +1 -1
  48. package/lib/Services/Transaction/LockManager.service.js.map +1 -1
  49. package/lib/Services/Transaction/Session.service.js.map +1 -1
  50. package/lib/Services/Transaction/Transaction.service.js.map +1 -1
  51. package/lib/Services/Transaction/TransactionIndexManager.service.js.map +1 -1
  52. package/lib/Services/Transaction/TransactionRegistry.service.js.map +1 -1
  53. package/lib/Services/Transaction/WriteAheadLog.service.js.map +1 -1
  54. package/lib/client/AggregationProxy.js.map +1 -1
  55. package/lib/client/AxioDBCloud.client.js.map +1 -1
  56. package/lib/client/CollectionProxy.js.map +1 -1
  57. package/lib/client/DatabaseProxy.js.map +1 -1
  58. package/lib/client/DeleteOperationProxy.js.map +1 -1
  59. package/lib/client/ReaderProxy.js.map +1 -1
  60. package/lib/client/UpdateOperationProxy.js.map +1 -1
  61. package/lib/client/types/client.types.js.map +1 -1
  62. package/lib/config/DB.js.map +1 -1
  63. package/lib/config/Interfaces/Auth/auth.interface.d.ts +70 -0
  64. package/lib/config/Interfaces/Auth/auth.interface.js +4 -0
  65. package/lib/config/Interfaces/Auth/auth.interface.js.map +1 -0
  66. package/lib/config/Keys/Keys.js.map +1 -1
  67. package/lib/config/Keys/Permissions.d.ts +51 -0
  68. package/lib/config/Keys/Permissions.js +101 -0
  69. package/lib/config/Keys/Permissions.js.map +1 -0
  70. package/lib/config/Keys/StatusCode.js.map +1 -1
  71. package/lib/engine/Filesystem/FileManager.js.map +1 -1
  72. package/lib/engine/Filesystem/FolderManager.js.map +1 -1
  73. package/lib/engine/cli/worker_process.js.map +1 -1
  74. package/lib/server/config/PortFreeChecker.js.map +1 -1
  75. package/lib/server/config/keys.d.ts +2 -2
  76. package/lib/server/config/keys.js +83 -1
  77. package/lib/server/config/keys.js.map +1 -1
  78. package/lib/server/config/server.js +6 -0
  79. package/lib/server/config/server.js.map +1 -1
  80. package/lib/server/controller/Auth/Auth.controller.d.ts +12 -0
  81. package/lib/server/controller/Auth/Auth.controller.js +153 -0
  82. package/lib/server/controller/Auth/Auth.controller.js.map +1 -0
  83. package/lib/server/controller/Auth/RoleManagement.controller.d.ts +9 -0
  84. package/lib/server/controller/Auth/RoleManagement.controller.js +89 -0
  85. package/lib/server/controller/Auth/RoleManagement.controller.js.map +1 -0
  86. package/lib/server/controller/Auth/UserManagement.controller.d.ts +11 -0
  87. package/lib/server/controller/Auth/UserManagement.controller.js +122 -0
  88. package/lib/server/controller/Auth/UserManagement.controller.js.map +1 -0
  89. package/lib/server/controller/Collections/Collection.controller.js +10 -0
  90. package/lib/server/controller/Collections/Collection.controller.js.map +1 -1
  91. package/lib/server/controller/Database/Databse.controller.js +17 -0
  92. package/lib/server/controller/Database/Databse.controller.js.map +1 -1
  93. package/lib/server/controller/Operation/CRUD.controller.js +31 -0
  94. package/lib/server/controller/Operation/CRUD.controller.js.map +1 -1
  95. package/lib/server/controller/Stats.controller.js.map +1 -1
  96. package/lib/server/helper/filesCounterInFolder.helper.js.map +1 -1
  97. package/lib/server/helper/responseBuilder.helper.d.ts +8 -0
  98. package/lib/server/helper/responseBuilder.helper.js +11 -1
  99. package/lib/server/helper/responseBuilder.helper.js.map +1 -1
  100. package/lib/server/middleware/auth.middleware.d.ts +14 -0
  101. package/lib/server/middleware/auth.middleware.js +64 -0
  102. package/lib/server/middleware/auth.middleware.js.map +1 -0
  103. package/lib/server/middleware/permission.middleware.d.ts +6 -0
  104. package/lib/server/middleware/permission.middleware.js +36 -0
  105. package/lib/server/middleware/permission.middleware.js.map +1 -0
  106. package/lib/server/public/AxioControl/.vite/manifest.json +2 -2
  107. package/lib/server/public/AxioControl/.vite/ssr-manifest.json +10 -0
  108. package/lib/server/public/AxioControl/AXioDB.png +0 -0
  109. package/lib/server/public/AxioControl/assets/index-D3V1EZ2f.css +1 -0
  110. package/lib/server/public/AxioControl/assets/index-DyJg6FRw.js +75 -0
  111. package/lib/server/public/AxioControl/index.html +2 -2
  112. package/lib/server/public/AxioControl/manifest.webmanifest +1 -1
  113. package/lib/server/public/AxioControl/sw.js +1 -1
  114. package/lib/server/router/Router.js +12 -1
  115. package/lib/server/router/Router.js.map +1 -1
  116. package/lib/server/router/Routers/Auth.routes.d.ts +2 -0
  117. package/lib/server/router/Routers/Auth.routes.js +27 -0
  118. package/lib/server/router/Routers/Auth.routes.js.map +1 -0
  119. package/lib/server/router/Routers/Collection.routes.js +20 -3
  120. package/lib/server/router/Routers/Collection.routes.js.map +1 -1
  121. package/lib/server/router/Routers/DB.routes.js +8 -5
  122. package/lib/server/router/Routers/DB.routes.js.map +1 -1
  123. package/lib/server/router/Routers/Operation.routes.js +31 -10
  124. package/lib/server/router/Routers/Operation.routes.js.map +1 -1
  125. package/lib/server/router/Routers/RoleManagement.routes.d.ts +2 -0
  126. package/lib/server/router/Routers/RoleManagement.routes.js +28 -0
  127. package/lib/server/router/Routers/RoleManagement.routes.js.map +1 -0
  128. package/lib/server/router/Routers/UserManagement.routes.d.ts +2 -0
  129. package/lib/server/router/Routers/UserManagement.routes.js +38 -0
  130. package/lib/server/router/Routers/UserManagement.routes.js.map +1 -0
  131. package/lib/tcp/config/keys.d.ts +23 -23
  132. package/lib/tcp/config/keys.js.map +1 -1
  133. package/lib/tcp/config/protocol.js.map +1 -1
  134. package/lib/tcp/config/server.js.map +1 -1
  135. package/lib/tcp/connection/ConnectionManager.js.map +1 -1
  136. package/lib/tcp/connection/RequestContext.js.map +1 -1
  137. package/lib/tcp/handler/CommandHandler.js.map +1 -1
  138. package/lib/tcp/handler/handlers/Collection.handler.js.map +1 -1
  139. package/lib/tcp/handler/handlers/DB.handler.js.map +1 -1
  140. package/lib/tcp/handler/handlers/Operation.handler.js.map +1 -1
  141. package/lib/tcp/types/command.types.js.map +1 -1
  142. package/lib/tcp/types/protocol.types.js.map +1 -1
  143. package/lib/utility/BufferLoaderWithWorker.utils.js.map +1 -1
  144. package/lib/utility/Searcher.utils.js.map +1 -1
  145. package/lib/utility/SortData.utils.js.map +1 -1
  146. package/lib/utility/ZipUnzip.utils.js.map +1 -1
  147. package/package.json +3 -2
  148. package/.dockerignore +0 -73
  149. package/lib/server/public/AxioControl/assets/index-BRkVgnlw.js +0 -75
  150. package/lib/server/public/AxioControl/assets/index-C8TNGVxT.css +0 -1
  151. package/lib/server/public/AxioControl/icons/AXioDB.png +0 -0
package/README.md CHANGED
@@ -63,6 +63,7 @@ SQLite is great, but it requires native bindings that break in Electron and cros
63
63
  - **Transaction Support:** ACID-compliant transactions with savepoints, rollback, and Write-Ahead Logging (WAL)
64
64
  - **Single Instance Architecture:** Unified management for unlimited databases, collections, and documents
65
65
  - **Web-Based GUI Dashboard:** Visual database administration, query execution, and real-time monitoring at `localhost:27018`
66
+ - **Role-Based Access Control:** Built-in login for the Control Server with Super Admin/Admin/View roles and per-permission enforcement
66
67
  - **AxioDBCloud Remote Access:** TCP-based client for connecting to AxioDB from anywhere—Docker, Cloud, or local network
67
68
  - **Zero-Configuration Setup:** Serverless architecture—install and start building instantly
68
69
  - **Custom Database Path:** Flexible storage locations for better project organization
@@ -254,6 +255,27 @@ const db = new AxioDB({ GUI: true, RootName: "MyDB", CustomPath: "./custom/path"
254
255
 
255
256
  Access the GUI at `http://localhost:27018` when enabled.
256
257
 
258
+ ### Authentication & Access Control (v9.8+)
259
+
260
+ The Control Server ships with built-in login and role-based access control (RBAC). On first start with `GUI: true`, AxioDB seeds a reserved `config` database (hidden from the regular database list) containing three collections—`users`, `roles`, `permissions`—and a default account:
261
+
262
+ ```
263
+ Username: admin
264
+ Password: admin
265
+ ```
266
+
267
+ You'll be forced to change this password on first login (this applies to every account, not just the default one). Three predefined roles are seeded automatically:
268
+
269
+ | Role | Access |
270
+ |------|--------|
271
+ | **Super Admin** | Full access, including creating users/roles |
272
+ | **Admin** | Full database/collection/document access, no user or role management |
273
+ | **View** | Read-only access to databases, collections, and documents |
274
+
275
+ A Super Admin can create additional roles from the predefined permission catalogue and create new users with any role. Sessions are held only in server memory (never persisted to disk) and are tied to an httpOnly cookie, so restarting the server logs everyone out.
276
+
277
+ > **Security note:** RBAC protects the Control Server's HTTP API; it is still intended for trusted local/network access, not public internet exposure.
278
+
257
279
  ---
258
280
 
259
281
  ## ⚙️ Architecture & Internal Mechanisms
@@ -1 +1 @@
1
- {"version":3,"file":"Console.helper.js","sourceRoot":"","sources":["../../source/Helper/Console.helper.ts"],"names":[],"mappings":";;AAAA,+EAA+E;AAC/E,MAAM,IAAI,GAAG;IACX,KAAK,EAAE,UAAU;IACjB,GAAG,EAAE,UAAU;IACf,KAAK,EAAE,SAAS;CACjB,CAAC;AAEF,SAAS,GAAG,CAAC,KAAa,EAAE,OAAkB;IAC5C,KAAK,MAAM,IAAI,IAAI,OAAO,EAAE,CAAC;QAC3B,OAAO,CAAC,GAAG,CAAC,GAAG,KAAK,GAAG,IAAI,GAAG,IAAI,CAAC,KAAK,EAAE,CAAC,CAAC;IAC9C,CAAC;AACH,CAAC;AAED,MAAqB,OAAO;IAC1B,MAAM,CAAC,KAAK,CAAC,GAAG,OAAkB;QAChC,GAAG,CAAC,IAAI,CAAC,KAAK,EAAE,OAAO,CAAC,CAAC;IAC3B,CAAC;IAED,MAAM,CAAC,GAAG,CAAC,GAAG,OAAkB;QAC9B,GAAG,CAAC,IAAI,CAAC,GAAG,EAAE,OAAO,CAAC,CAAC;IACzB,CAAC;CACF;AARD,0BAQC"}
1
+ {"version":3,"file":"Console.helper.js","sourceRoot":"","sources":["../../source/Helper/Console.helper.ts"],"names":[],"mappings":";;AAAA,+EAA+E;AAC/E,MAAM,IAAI,GAAG;IACX,KAAK,EAAE,UAAU;IACjB,GAAG,EAAE,UAAU;IACf,KAAK,EAAE,SAAS;CACjB,CAAC;AAEF,SAAS,GAAG,CAAC,KAAa,EAAE,OAAkB;IAC5C,KAAK,MAAM,IAAI,IAAI,OAAO,EAAE,CAAC;QAC3B,OAAO,CAAC,GAAG,CAAC,GAAG,KAAK,GAAG,IAAI,GAAG,IAAI,CAAC,KAAK,EAAE,CAAC,CAAC;IAC9C,CAAC;AACH,CAAC;AAED;IACE,MAAM,CAAC,KAAK,CAAC,GAAG,OAAkB;QAChC,GAAG,CAAC,IAAI,CAAC,KAAK,EAAE,OAAO,CAAC,CAAC;IAC3B,CAAC;IAED,MAAM,CAAC,GAAG,CAAC,GAAG,OAAkB;QAC9B,GAAG,CAAC,IAAI,CAAC,GAAG,EAAE,OAAO,CAAC,CAAC;IACzB,CAAC;CACF"}
@@ -1 +1 @@
1
- {"version":3,"file":"Converter.helper.js","sourceRoot":"","sources":["../../source/Helper/Converter.helper.ts"],"names":[],"mappings":";;AAAA,uDAAuD;AACvD,MAAqB,SAAS;IAC5B,MAAM,CAAC,QAAQ;QACb,MAAM,IAAI,KAAK,CAAC,yBAAyB,CAAC,CAAC;IAC7C,CAAC;IACD,gBAAe,CAAC,CAAC,oBAAoB;IAErC;;;;OAIG;IACI,SAAS,CAAC,KAAa;QAC5B,OAAO,KAAK,KAAK,MAAM,CAAC;IAC1B,CAAC;IAED;;;;OAIG;IAEI,QAAQ,CAAC,KAAa;QAC3B,OAAO,QAAQ,CAAC,KAAK,CAAC,CAAC;IACzB,CAAC;IAED;;;;OAIG;IACI,QAAQ,CAAC,KAAa;QAC3B,OAAO,IAAI,CAAC,KAAK,CAAC,KAAK,CAAC,CAAC;IAC3B,CAAC;IAED;;;;OAIG;IACI,QAAQ,CAAC,KAAa;QAC3B,OAAO,IAAI,CAAC,SAAS,CAAC,KAAK,CAAC,CAAC;IAC/B,CAAC;IAED;;;;OAIG;IAEI,aAAa,CAAC,KAAa;QAChC,OAAO,KAAK,CAAC,KAAK,CAAC,GAAG,CAAC,CAAC;IAC1B,CAAC;CACF;AApDD,4BAoDC"}
1
+ {"version":3,"file":"Converter.helper.js","sourceRoot":"","sources":["../../source/Helper/Converter.helper.ts"],"names":[],"mappings":";;AAAA,uDAAuD;AACvD;IACE,MAAM,CAAC,QAAQ;QACb,MAAM,IAAI,KAAK,CAAC,yBAAyB,CAAC,CAAC;IAC7C,CAAC;IACD,gBAAe,CAAC,CAAC,oBAAoB;IAErC;;;;OAIG;IACI,SAAS,CAAC,KAAa;QAC5B,OAAO,KAAK,KAAK,MAAM,CAAC;IAC1B,CAAC;IAED;;;;OAIG;IAEI,QAAQ,CAAC,KAAa;QAC3B,OAAO,QAAQ,CAAC,KAAK,CAAC,CAAC;IACzB,CAAC;IAED;;;;OAIG;IACI,QAAQ,CAAC,KAAa;QAC3B,OAAO,IAAI,CAAC,KAAK,CAAC,KAAK,CAAC,CAAC;IAC3B,CAAC;IAED;;;;OAIG;IACI,QAAQ,CAAC,KAAa;QAC3B,OAAO,IAAI,CAAC,SAAS,CAAC,KAAK,CAAC,CAAC;IAC/B,CAAC;IAED;;;;OAIG;IAEI,aAAa,CAAC,KAAa;QAChC,OAAO,KAAK,CAAC,KAAK,CAAC,GAAG,CAAC,CAAC;IAC1B,CAAC;CACF"}
@@ -1 +1 @@
1
- {"version":3,"file":"Crypto.helper.js","sourceRoot":"","sources":["../../source/Helper/Crypto.helper.ts"],"names":[],"mappings":";;;;;;;;;;;;;;;AAAA,uDAAuD;AACvD,cAAc;AACd,qCAA6C;AAC7C,wEAA+C;AAE/C,gFAAiD;AACjD,0EAA2C;AAE3C;;GAEG;AACH,MAAa,YAAY;IAsBvB;;;OAGG;IACH,YAAY,aAAsB;QAnBlC;;WAEG;QACc,mBAAc,GAAmB,IAAI,yBAAc,EAAE,CAAC;QAOvE;;WAEG;QACc,cAAS,GAAG,IAAI,0BAAS,EAAE,CAAC;QAO3C,IAAI,CAAC,aAAa,GAAG,aAAa,IAAI,GAAG,IAAA,kBAAQ,GAAE,IAAI,IAAA,kBAAQ,GAAE,EAAE,CAAC;QACpE,IAAI,CAAC,cAAc,GAAG,IAAI,yBAAc,EAAE,CAAC;QAC3C,IAAI,CAAC,YAAY,GAAG,IAAI,6BAAY,CAAC,IAAI,CAAC,aAAa,CAAC,CAAC;QACzD,IAAI,CAAC,SAAS,GAAG,IAAI,0BAAS,EAAE,CAAC;IACnC,CAAC;IAED,UAAU;IACV;;;;OAIG;IACU,gBAAgB,CAC3B,aAAqB;;YAErB,IAAI,CAAC,aAAa,GAAG,aAAa,CAAC;YACnC,OAAO,IAAI,CAAC,cAAc,CAAC,OAAO,CAChC,0CAA0C,CAC3C,CAAC;QACJ,CAAC;KAAA;IAED;;;;OAIG;IACU,OAAO,CAAC,IAAY;;YAC/B,OAAO,MAAM,IAAI,CAAC,YAAY,CAAC,OAAO,CAAC,IAAI,CAAC,CAAC;QAC/C,CAAC;KAAA;IAED;;;;OAIG;IACU,OAAO,CAAC,IAAY;;YAC/B,OAAO,IAAI,CAAC,SAAS,CAAC,QAAQ,CAAC,MAAM,IAAI,CAAC,YAAY,CAAC,OAAO,CAAC,IAAI,CAAC,CAAC,CAAC;QACxE,CAAC;KAAA;IAED;;;;OAIG;IACI,WAAW,CAAC,IAAY;QAC7B,OAAO,IAAI,CAAC,YAAY,CAAC,WAAW,CAAC,IAAI,CAAC,CAAC;IAC7C,CAAC;IAED;;;;OAIG;IACI,WAAW,CAAC,IAAY;QAC7B,OAAO,IAAI,CAAC,SAAS,CAAC,QAAQ,CAAC,IAAI,CAAC,YAAY,CAAC,WAAW,CAAC,IAAI,CAAC,CAAC,CAAC;IACtE,CAAC;CACF;AAnFD,oCAmFC"}
1
+ {"version":3,"file":"Crypto.helper.js","sourceRoot":"","sources":["../../source/Helper/Crypto.helper.ts"],"names":[],"mappings":";;;;;;;;;;;;;;;AAAA,uDAAuD;AACvD,cAAc;AACd,qCAA6C;AAC7C,wEAA+C;AAE/C,gFAAiD;AACjD,0EAA2C;AAE3C;;GAEG;AACH;IAsBE;;;OAGG;IACH,YAAY,aAAsB;QAnBlC;;WAEG;QACc,mBAAc,GAAmB,IAAI,yBAAc,EAAE,CAAC;QAOvE;;WAEG;QACc,cAAS,GAAG,IAAI,0BAAS,EAAE,CAAC;QAO3C,IAAI,CAAC,aAAa,GAAG,aAAa,IAAI,GAAG,IAAA,kBAAQ,GAAE,IAAI,IAAA,kBAAQ,GAAE,EAAE,CAAC;QACpE,IAAI,CAAC,cAAc,GAAG,IAAI,yBAAc,EAAE,CAAC;QAC3C,IAAI,CAAC,YAAY,GAAG,IAAI,6BAAY,CAAC,IAAI,CAAC,aAAa,CAAC,CAAC;QACzD,IAAI,CAAC,SAAS,GAAG,IAAI,0BAAS,EAAE,CAAC;IACnC,CAAC;IAED,UAAU;IACV;;;;OAIG;IACU,gBAAgB,CAC3B,aAAqB;;YAErB,IAAI,CAAC,aAAa,GAAG,aAAa,CAAC;YACnC,OAAO,IAAI,CAAC,cAAc,CAAC,OAAO,CAChC,0CAA0C,CAC3C,CAAC;QACJ,CAAC;KAAA;IAED;;;;OAIG;IACU,OAAO,CAAC,IAAY;;YAC/B,OAAO,MAAM,IAAI,CAAC,YAAY,CAAC,OAAO,CAAC,IAAI,CAAC,CAAC;QAC/C,CAAC;KAAA;IAED;;;;OAIG;IACU,OAAO,CAAC,IAAY;;YAC/B,OAAO,IAAI,CAAC,SAAS,CAAC,QAAQ,CAAC,MAAM,IAAI,CAAC,YAAY,CAAC,OAAO,CAAC,IAAI,CAAC,CAAC,CAAC;QACxE,CAAC;KAAA;IAED;;;;OAIG;IACI,WAAW,CAAC,IAAY;QAC7B,OAAO,IAAI,CAAC,YAAY,CAAC,WAAW,CAAC,IAAI,CAAC,CAAC;IAC7C,CAAC;IAED;;;;OAIG;IACI,WAAW,CAAC,IAAY;QAC7B,OAAO,IAAI,CAAC,SAAS,CAAC,QAAQ,CAAC,IAAI,CAAC,YAAY,CAAC,WAAW,CAAC,IAAI,CAAC,CAAC,CAAC;IACtE,CAAC;CACF"}
@@ -1 +1 @@
1
- {"version":3,"file":"CryptoGraphy.helper.js","sourceRoot":"","sources":["../../source/Helper/CryptoGraphy.helper.ts"],"names":[],"mappings":";;;;;;;;;;;;;;AAAA,0DAAiC;AAEjC;;;;;;GAMG;AACH,MAAqB,YAAY;IAC/B,YAA6B,GAAW;QAAX,QAAG,GAAH,GAAG,CAAQ;IAAG,CAAC;IAEtC,OAAO,CAAC,IAAa;;YACzB,OAAO,IAAI,CAAC,WAAW,CAAC,IAAI,CAAC,CAAC;QAChC,CAAC;KAAA;IAEK,OAAO,CAAC,IAAY;;YACxB,OAAO,IAAI,CAAC,WAAW,CAAC,IAAI,CAAC,CAAC;QAChC,CAAC;KAAA;IAED,WAAW,CAAC,IAAa;QACvB,IAAI,CAAC,IAAI,CAAC,GAAG,EAAE,CAAC;YACd,MAAM,IAAI,KAAK,CAAC,aAAa,CAAC,CAAC;QACjC,CAAC;QACD,OAAO,mBAAQ,CAAC,GAAG,CAAC,OAAO,CAAC,IAAI,CAAC,SAAS,CAAC,IAAI,CAAC,EAAE,IAAI,CAAC,GAAG,CAAC,CAAC,QAAQ,EAAE,CAAC;IACzE,CAAC;IAED,WAAW,CAAC,IAAY;QACtB,IAAI,CAAC,IAAI,CAAC,GAAG,EAAE,CAAC;YACd,MAAM,IAAI,KAAK,CAAC,aAAa,CAAC,CAAC;QACjC,CAAC;QACD,MAAM,KAAK,GAAG,mBAAQ,CAAC,GAAG,CAAC,OAAO,CAAC,IAAI,EAAE,IAAI,CAAC,GAAG,CAAC,CAAC;QACnD,OAAO,KAAK,CAAC,QAAQ,CAAC,mBAAQ,CAAC,GAAG,CAAC,IAAI,CAAC,CAAC;IAC3C,CAAC;CACF;AAzBD,+BAyBC"}
1
+ {"version":3,"file":"CryptoGraphy.helper.js","sourceRoot":"","sources":["../../source/Helper/CryptoGraphy.helper.ts"],"names":[],"mappings":";;;;;;;;;;;;;;AAAA,0DAAiC;AAEjC;;;;;;GAMG;AACH;IACE,YAA6B,GAAW;mBAAX,GAAG;IAAW,CAAC;IAEtC,OAAO,CAAC,IAAa;;YACzB,OAAO,IAAI,CAAC,WAAW,CAAC,IAAI,CAAC,CAAC;QAChC,CAAC;KAAA;IAEK,OAAO,CAAC,IAAY;;YACxB,OAAO,IAAI,CAAC,WAAW,CAAC,IAAI,CAAC,CAAC;QAChC,CAAC;KAAA;IAED,WAAW,CAAC,IAAa;QACvB,IAAI,CAAC,IAAI,CAAC,GAAG,EAAE,CAAC;YACd,MAAM,IAAI,KAAK,CAAC,aAAa,CAAC,CAAC;QACjC,CAAC;QACD,OAAO,mBAAQ,CAAC,GAAG,CAAC,OAAO,CAAC,IAAI,CAAC,SAAS,CAAC,IAAI,CAAC,EAAE,IAAI,CAAC,GAAG,CAAC,CAAC,QAAQ,EAAE,CAAC;IACzE,CAAC;IAED,WAAW,CAAC,IAAY;QACtB,IAAI,CAAC,IAAI,CAAC,GAAG,EAAE,CAAC;YACd,MAAM,IAAI,KAAK,CAAC,aAAa,CAAC,CAAC;QACjC,CAAC;QACD,MAAM,KAAK,GAAG,mBAAQ,CAAC,GAAG,CAAC,OAAO,CAAC,IAAI,EAAE,IAAI,CAAC,GAAG,CAAC,CAAC;QACnD,OAAO,KAAK,CAAC,QAAQ,CAAC,mBAAQ,CAAC,GAAG,CAAC,IAAI,CAAC,CAAC;IAC3C,CAAC;CACF"}
@@ -1 +1 @@
1
- {"version":3,"file":"DocumentLoader.helper.js","sourceRoot":"","sources":["../../source/Helper/DocumentLoader.helper.ts"],"names":[],"mappings":";;;;;;;;;;;;;;AACA,uFAA+D;AAC/D,2GAAuE;AACvE,wEAA+C;AAE/C;;;;;;;GAOG;AACH,MAAqB,cAAc;IAGjC;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;OA+BG;IACH,MAAM,CAAO,aAAa;6DACxB,cAAsB,EACtB,aAAsB,EACtB,cAAuB,KAAK,EAC5B,aAAwB,EACxB,kBAA2B,KAAK;YAEhC,IAAI,CAAC;gBACH,MAAM,aAAa,GAAa,EAAE,CAAC;gBAEnC,IAAI,aAAa,KAAK,SAAS,EAAE,CAAC;oBAChC,yBAAyB;oBACzB,aAAa,CAAC,IAAI,CAAC,GAAG,aAAa,CAAC,CAAC;gBACvC,CAAC;qBAAM,CAAC;oBACN,mCAAmC;oBACnC,MAAM,YAAY,GAAG,MAAM,IAAI,uBAAa,EAAE,CAAC,aAAa,CAAC,cAAc,CAAC,CAAC;oBAE7E,IAAI,MAAM,IAAI,YAAY,EAAE,CAAC;wBAC3B,gCAAgC;wBAChC,MAAM,WAAW,GAAG,YAAY,CAAC,IAAI,CAAC,MAAM,CAAC,CAAC,IAAY,EAAE,EAAE,CAC5D,IAAI,CAAC,QAAQ,CAAC,SAAS,CAAC,CACzB,CAAC;wBACF,aAAa,CAAC,IAAI,CAAC,GAAG,WAAW,CAAC,CAAC;oBACrC,CAAC;yBAAM,CAAC;wBACN,OAAO,IAAI,CAAC,cAAc,CAAC,KAAK,CAAC,0BAA0B,CAAC,CAAC;oBAC/D,CAAC;gBACH,CAAC;gBAED,4DAA4D;gBAC5D,MAAM,UAAU,GAAG,MAAM,IAAA,sCAAgB,EACvC,aAAa,EACb,aAAa,EACb,cAAc,EACd,WAAW,EACX,eAAe,CAChB,CAAC;gBAEF,OAAO,IAAI,CAAC,cAAc,CAAC,OAAO,CAAC,UAAU,CAAC,CAAC;YACjD,CAAC;YAAC,OAAO,KAAK,EAAE,CAAC;gBACf,OAAO,IAAI,CAAC,cAAc,CAAC,KAAK,CAAC,KAAK,CAAC,CAAC;YAC1C,CAAC;QACH,CAAC;KAAA;;AA3EuB,6BAAc,GAAG,IAAI,yBAAc,EAAE,CAAC;kBAD3C,cAAc"}
1
+ {"version":3,"file":"DocumentLoader.helper.js","sourceRoot":"","sources":["../../source/Helper/DocumentLoader.helper.ts"],"names":[],"mappings":";;;;;;;;;;;;;;AACA,uFAA+D;AAC/D,2GAAuE;AACvE,wEAA+C;AAE/C;;;;;;;GAOG;AACH,MAAqB,cAAc;IAGjC;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;OA+BG;IACH,MAAM,CAAO,aAAa;6DACxB,cAAsB,EACtB,aAAsB,EACtB,WAAW,GAAY,KAAK,EAC5B,aAAwB,EACxB,eAAe,GAAY,KAAK;YAEhC,IAAI,CAAC;gBACH,MAAM,aAAa,GAAa,EAAE,CAAC;gBAEnC,IAAI,aAAa,KAAK,SAAS,EAAE,CAAC;oBAChC,yBAAyB;oBACzB,aAAa,CAAC,IAAI,CAAC,GAAG,aAAa,CAAC,CAAC;gBACvC,CAAC;qBAAM,CAAC;oBACN,mCAAmC;oBACnC,MAAM,YAAY,GAAG,MAAM,IAAI,uBAAa,EAAE,CAAC,aAAa,CAAC,cAAc,CAAC,CAAC;oBAE7E,IAAI,MAAM,IAAI,YAAY,EAAE,CAAC;wBAC3B,gCAAgC;wBAChC,MAAM,WAAW,GAAG,YAAY,CAAC,IAAI,CAAC,MAAM,CAAC,CAAC,IAAY,EAAE,EAAE,CAC5D,IAAI,CAAC,QAAQ,CAAC,SAAS,CAAC,CACzB,CAAC;wBACF,aAAa,CAAC,IAAI,CAAC,GAAG,WAAW,CAAC,CAAC;oBACrC,CAAC;yBAAM,CAAC;wBACN,OAAO,IAAI,CAAC,cAAc,CAAC,KAAK,CAAC,0BAA0B,CAAC,CAAC;oBAC/D,CAAC;gBACH,CAAC;gBAED,4DAA4D;gBAC5D,MAAM,UAAU,GAAG,MAAM,IAAA,sCAAgB,EACvC,aAAa,EACb,aAAa,EACb,cAAc,EACd,WAAW,EACX,eAAe,CAChB,CAAC;gBAEF,OAAO,IAAI,CAAC,cAAc,CAAC,OAAO,CAAC,UAAU,CAAC,CAAC;YACjD,CAAC;YAAC,OAAO,KAAK,EAAE,CAAC;gBACf,OAAO,IAAI,CAAC,cAAc,CAAC,KAAK,CAAC,KAAK,CAAC,CAAC;YAC1C,CAAC;QACH,CAAC;KAAA;CACF;AA5EyB,6BAAc,GAAG,IAAI,yBAAc,EAAE,CAAC"}
@@ -1 +1 @@
1
- {"version":3,"file":"PathSanitizer.helper.js","sourceRoot":"","sources":["../../source/Helper/PathSanitizer.helper.ts"],"names":[],"mappings":";;;;;AAAA,gDAAwB;AAExB;;;;;;;;;;GAUG;AACH,MAAqB,aAAa;IAChC;;;;;;;;;;;;;;;;OAgBG;IACH,MAAM,CAAC,qBAAqB,CAAC,SAAiB;QAC5C,IAAI,CAAC,SAAS,IAAI,OAAO,SAAS,KAAK,QAAQ,EAAE,CAAC;YAChD,MAAM,IAAI,KAAK,CAAC,oDAAoD,CAAC,CAAC;QACxE,CAAC;QAED,0CAA0C;QAC1C,IAAI,SAAS,GAAG,SAAS;aACtB,OAAO,CAAC,OAAO,EAAE,GAAG,CAAC,CAAI,+BAA+B;aACxD,OAAO,CAAC,KAAK,EAAE,GAAG,CAAC,CAAM,iCAAiC;aAC1D,OAAO,CAAC,KAAK,EAAE,GAAG,CAAC,CAAM,oCAAoC;aAC7D,OAAO,CAAC,KAAK,EAAE,GAAG,CAAC,CAAC,CAAK,oBAAoB;QAEhD,2EAA2E;QAC3E,oEAAoE;QACpE,SAAS,GAAG,SAAS,CAAC,OAAO,CAAC,kBAAkB,EAAE,GAAG,CAAC,CAAC;QAEvD,uBAAuB;QACvB,IAAI,SAAS,CAAC,MAAM,KAAK,CAAC,EAAE,CAAC;YAC3B,MAAM,IAAI,KAAK,CAAC,oEAAoE,CAAC,CAAC;QACxF,CAAC;QAED,qEAAqE;QACrE,IAAI,SAAS,CAAC,UAAU,CAAC,GAAG,CAAC,EAAE,CAAC;YAC9B,SAAS,GAAG,GAAG,GAAG,SAAS,CAAC,SAAS,CAAC,CAAC,CAAC,CAAC;QAC3C,CAAC;QAED,OAAO,SAAS,CAAC;IACnB,CAAC;IAED;;;;;;;;;;;;;;;;;OAiBG;IACH,MAAM,CAAC,YAAY,CAAC,QAAgB,EAAE,QAAgB;QACpD,MAAM,YAAY,GAAG,cAAI,CAAC,OAAO,CAAC,QAAQ,CAAC,CAAC;QAC5C,MAAM,YAAY,GAAG,cAAI,CAAC,OAAO,CAAC,QAAQ,CAAC,CAAC;QAE5C,IAAI,CAAC,YAAY,CAAC,UAAU,CAAC,YAAY,CAAC,EAAE,CAAC;YAC3C,MAAM,IAAI,KAAK,CAAC,qDAAqD,CAAC,CAAC;QACzE,CAAC;IACH,CAAC;IAED;;;;;;;;;;;;;;;;;OAiBG;IACH,MAAM,CAAC,QAAQ,CAAC,QAAgB,EAAE,GAAG,UAAoB;QACvD,0BAA0B;QAC1B,MAAM,mBAAmB,GAAG,UAAU,CAAC,GAAG,CAAC,CAAC,CAAC,EAAE,CAAC,IAAI,CAAC,qBAAqB,CAAC,CAAC,CAAC,CAAC,CAAC;QAE/E,oEAAoE;QACpE,MAAM,QAAQ,GAAG,cAAI,CAAC,IAAI,CAAC,QAAQ,EAAE,GAAG,mBAAmB,CAAC,CAAC;QAE7D,wDAAwD;QACxD,IAAI,CAAC,YAAY,CAAC,QAAQ,EAAE,QAAQ,CAAC,CAAC;QAEtC,OAAO,QAAQ,CAAC;IAClB,CAAC;CACF;AAxGD,gCAwGC"}
1
+ {"version":3,"file":"PathSanitizer.helper.js","sourceRoot":"","sources":["../../source/Helper/PathSanitizer.helper.ts"],"names":[],"mappings":";;;;;AAAA,gDAAwB;AAExB;;;;;;;;;;GAUG;AACH;IACE;;;;;;;;;;;;;;;;OAgBG;IACH,MAAM,CAAC,qBAAqB,CAAC,SAAiB;QAC5C,IAAI,CAAC,SAAS,IAAI,OAAO,SAAS,KAAK,QAAQ,EAAE,CAAC;YAChD,MAAM,IAAI,KAAK,CAAC,oDAAoD,CAAC,CAAC;QACxE,CAAC;QAED,0CAA0C;QAC1C,IAAI,SAAS,GAAG,SAAS;aACtB,OAAO,CAAC,OAAO,EAAE,GAAG,CAAC,CAAI,+BAA+B;aACxD,OAAO,CAAC,KAAK,EAAE,GAAG,CAAC,CAAM,iCAAiC;aAC1D,OAAO,CAAC,KAAK,EAAE,GAAG,CAAC,CAAM,oCAAoC;aAC7D,OAAO,CAAC,KAAK,EAAE,GAAG,CAAC,CAAC,CAAK,oBAAoB;QAEhD,2EAA2E;QAC3E,oEAAoE;QACpE,SAAS,GAAG,SAAS,CAAC,OAAO,CAAC,kBAAkB,EAAE,GAAG,CAAC,CAAC;QAEvD,uBAAuB;QACvB,IAAI,SAAS,CAAC,MAAM,KAAK,CAAC,EAAE,CAAC;YAC3B,MAAM,IAAI,KAAK,CAAC,oEAAoE,CAAC,CAAC;QACxF,CAAC;QAED,qEAAqE;QACrE,IAAI,SAAS,CAAC,UAAU,CAAC,GAAG,CAAC,EAAE,CAAC;YAC9B,SAAS,GAAG,GAAG,GAAG,SAAS,CAAC,SAAS,CAAC,CAAC,CAAC,CAAC;QAC3C,CAAC;QAED,OAAO,SAAS,CAAC;IACnB,CAAC;IAED;;;;;;;;;;;;;;;;;OAiBG;IACH,MAAM,CAAC,YAAY,CAAC,QAAgB,EAAE,QAAgB;QACpD,MAAM,YAAY,GAAG,cAAI,CAAC,OAAO,CAAC,QAAQ,CAAC,CAAC;QAC5C,MAAM,YAAY,GAAG,cAAI,CAAC,OAAO,CAAC,QAAQ,CAAC,CAAC;QAE5C,IAAI,CAAC,YAAY,CAAC,UAAU,CAAC,YAAY,CAAC,EAAE,CAAC;YAC3C,MAAM,IAAI,KAAK,CAAC,qDAAqD,CAAC,CAAC;QACzE,CAAC;IACH,CAAC;IAED;;;;;;;;;;;;;;;;;OAiBG;IACH,MAAM,CAAC,QAAQ,CAAC,QAAgB,EAAE,GAAG,UAAoB;QACvD,0BAA0B;QAC1B,MAAM,mBAAmB,GAAG,UAAU,CAAC,GAAG,CAAC,CAAC,CAAC,EAAE,CAAC,IAAI,CAAC,qBAAqB,CAAC,CAAC,CAAC,CAAC,CAAC;QAE/E,oEAAoE;QACpE,MAAM,QAAQ,GAAG,cAAI,CAAC,IAAI,CAAC,QAAQ,EAAE,GAAG,mBAAmB,CAAC,CAAC;QAE7D,wDAAwD;QACxD,IAAI,CAAC,YAAY,CAAC,QAAQ,EAAE,QAAQ,CAAC,CAAC;QAEtC,OAAO,QAAQ,CAAC;IAClB,CAAC;CACF"}
@@ -1 +1 @@
1
- {"version":3,"file":"UniqueGenerator.helper.js","sourceRoot":"","sources":["../../source/Helper/UniqueGenerator.helper.ts"],"names":[],"mappings":";;AAAA,mCAAmC;AAEnC,MAAM,OAAO,GAAG,4BAA4B,CAAC;AAE7C;;GAEG;AACH,MAAqB,eAAe;IAClC,YAA6B,MAAc;QAAd,WAAM,GAAN,MAAM,CAAQ;IAAG,CAAC;IAE/C;;;OAGG;IACH,UAAU,CAAC,SAAS,GAAG,KAAK;QAC1B,IAAI,MAAM,GAAG,EAAE,CAAC;QAChB,KAAK,IAAI,CAAC,GAAG,CAAC,EAAE,CAAC,GAAG,IAAI,CAAC,MAAM,EAAE,CAAC,EAAE,EAAE,CAAC;YACrC,MAAM,IAAI,OAAO,CAAC,IAAA,kBAAS,EAAC,OAAO,CAAC,MAAM,CAAC,CAAC,CAAC;QAC/C,CAAC;QACD,OAAO,SAAS,CAAC,CAAC,CAAC,MAAM,CAAC,WAAW,EAAE,CAAC,CAAC,CAAC,MAAM,CAAC;IACnD,CAAC;CACF;AAdD,kCAcC"}
1
+ {"version":3,"file":"UniqueGenerator.helper.js","sourceRoot":"","sources":["../../source/Helper/UniqueGenerator.helper.ts"],"names":[],"mappings":";;AAAA,mCAAmC;AAEnC,MAAM,OAAO,GAAG,4BAA4B,CAAC;AAE7C;;GAEG;AACH;IACE,YAA6B,MAAc;sBAAd,MAAM;IAAW,CAAC;IAE/C;;;OAGG;IACH,UAAU,CAAC,SAAS,GAAG,KAAK;QAC1B,IAAI,MAAM,GAAG,EAAE,CAAC;QAChB,KAAK,IAAI,CAAC,GAAG,CAAC,EAAE,CAAC,GAAG,IAAI,CAAC,MAAM,EAAE,CAAC,EAAE,EAAE,CAAC;YACrC,MAAM,IAAI,OAAO,CAAC,IAAA,kBAAS,EAAC,OAAO,CAAC,MAAM,CAAC,CAAC,CAAC;QAC/C,CAAC;QACD,OAAO,SAAS,CAAC,CAAC,CAAC,MAAM,CAAC,WAAW,EAAE,CAAC,CAAC,CAAC,MAAM,CAAC;IACnD,CAAC;CACF"}
@@ -1 +1 @@
1
- {"version":3,"file":"response.helper.js","sourceRoot":"","sources":["../../source/Helper/response.helper.ts"],"names":[],"mappings":";;;;;;;;;;;AAAA,sCAAsC;AACtC,0DAAwD;AAQxD,uDAAuD;AACvD;;;;;;;;;;;;;;;;;;;GAmBG;AACH;;;;;;;;;;;;;;;GAeG;AACH,MAAqB,cAAc;IAKjC;QACE,IAAI,CAAC,UAAU,GAAG,wBAAW,CAAC,EAAE,CAAC;QACjC,IAAI,CAAC,SAAS,GAAG,wBAAW,CAAC,qBAAqB,CAAC;IACrD,CAAC;IAED;;;;;OAKG;IACU,OAAO,CAAC,IAAU;;YAC7B,OAAO;gBACL,UAAU,EAAE,IAAI,CAAC,UAAU;gBAC3B,MAAM,EAAE,IAAI;gBACZ,IAAI,EAAE,IAAI;aACX,CAAC;QACJ,CAAC;KAAA;IAED;;;;;OAKG;IACU,KAAK,CAAC,OAAa;;YAC9B,OAAO;gBACL,UAAU,EAAE,IAAI,CAAC,SAAS;gBAC1B,MAAM,EAAE,KAAK;gBACb,OAAO,EAAE,OAAO;aACjB,CAAC;QACJ,CAAC;KAAA;CACF;AArCD,iCAqCC"}
1
+ {"version":3,"file":"response.helper.js","sourceRoot":"","sources":["../../source/Helper/response.helper.ts"],"names":[],"mappings":";;;;;;;;;;;AAAA,sCAAsC;AACtC,0DAAwD;AAQxD,uDAAuD;AACvD;;;;;;;;;;;;;;;;;;;GAmBG;AACH;;;;;;;;;;;;;;;GAeG;AACH;IAKE;QACE,IAAI,CAAC,UAAU,GAAG,wBAAW,CAAC,EAAE,CAAC;QACjC,IAAI,CAAC,SAAS,GAAG,wBAAW,CAAC,qBAAqB,CAAC;IACrD,CAAC;IAED;;;;;OAKG;IACU,OAAO,CAAC,IAAU;;YAC7B,OAAO;gBACL,UAAU,EAAE,IAAI,CAAC,UAAU;gBAC3B,MAAM,EAAE,IAAI;gBACZ,IAAI,EAAE,IAAI;aACX,CAAC;QACJ,CAAC;KAAA;IAED;;;;;OAKG;IACU,KAAK,CAAC,OAAa;;YAC9B,OAAO;gBACL,UAAU,EAAE,IAAI,CAAC,SAAS;gBAC1B,MAAM,EAAE,KAAK;gBACb,OAAO,EAAE,OAAO;aACjB,CAAC;QACJ,CAAC;KAAA;CACF"}
@@ -1 +1 @@
1
- {"version":3,"file":"memory.operation.js","sourceRoot":"","sources":["../../source/Memory/memory.operation.ts"],"names":[],"mappings":"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"}
1
+ {"version":3,"file":"memory.operation.js","sourceRoot":"","sources":["../../source/Memory/memory.operation.ts"],"names":[],"mappings":"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"}
@@ -1 +1 @@
1
- {"version":3,"file":"Aggregation.Operation.js","sourceRoot":"","sources":["../../../source/Services/Aggregation/Aggregation.Operation.ts"],"names":[],"mappings":"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"}
1
+ {"version":3,"file":"Aggregation.Operation.js","sourceRoot":"","sources":["../../../source/Services/Aggregation/Aggregation.Operation.ts"],"names":[],"mappings":";;;;;;;;;;;;;;AAAA,mFAA0D;AAC1D,8DAA0D;AAK1D,+FAAgE;AAChE,qFAAsD;AACtD,iFAAkD;AAClD,kEAAuD;AAevD;;;;;;;;GAQG;AACH;IAYE,YACE,cAAsB,EACtB,IAAY,EACZ,QAAwB,EACxB,WAAW,GAAY,KAAK,EAC5B,aAAsB;QAhBxB,6BAA6B;QACrB,YAAO,GAAU,EAAE,CAAC;QAiB1B,IAAI,CAAC,cAAc,GAAG,cAAc,CAAC;QACrC,IAAI,CAAC,IAAI,GAAG,IAAI,CAAC;QACjB,IAAI,CAAC,WAAW,GAAG,WAAW,CAAC;QAC/B,IAAI,CAAC,aAAa,GAAG,aAAa,CAAC;QACnC,IAAI,CAAC,OAAO,GAAG,EAAE,CAAC;QAClB,IAAI,CAAC,QAAQ,GAAG,QAAQ,CAAC;QACzB,IAAI,CAAC,cAAc,GAAG,IAAI,yBAAc,EAAE,CAAC;QAC3C,IAAI,CAAC,SAAS,GAAG,IAAI,0BAAS,EAAE,CAAC;QACjC,IAAI,CAAC,cAAc,GAAG,IAAI,4BAAY,CAAC,IAAI,CAAC,aAAa,CAAC,CAAC;IAC7D,CAAC;IAED;;;;;;;;;;;;;;;;;;OAkBG;IACU,IAAI;;YACf,IAAI,CAAC,KAAK,CAAC,OAAO,CAAC,IAAI,CAAC,QAAQ,CAAC,EAAE,CAAC;gBAClC,MAAM,IAAI,KAAK,CAAC,kDAAkD,CAAC,CAAC;YACtE,CAAC;YACD,IAAI,CAAC,IAAI,CAAC,QAAQ,CAAC,CAAC,CAAC,IAAI,CAAC,IAAI,CAAC,QAAQ,CAAC,CAAC,CAAC,CAAC,MAAM,EAAE,CAAC;gBAClD,MAAM,IAAI,KAAK,CAAC,6CAA6C,CAAC,CAAA;YAChE,CAAC;YAED,IAAI,IAAI,CAAC,QAAQ,CAAC,MAAM,EAAE,CAAC;gBACzB,MAAM,SAAS,GAAG,MAAM,IAAI,6BAAS,CAAC,IAAI,CAAC,IAAI,CAAC,CAAC,gBAAgB,CAAC,IAAI,CAAC,QAAQ,CAAC,MAAM,CAAC,CAAA;gBACvF,IAAI,SAAS,CAAC,MAAM,GAAG,CAAC,EAAE,CAAC;oBACzB,6BAA6B;oBAC7B,MAAM,IAAI,CAAC,oBAAoB,CAAC,SAAS,CAAC,CAAC;gBAC7C,CAAC;qBACI,CAAC;oBACJ,wDAAwD;oBACxD,MAAM,IAAI,CAAC,oBAAoB,EAAE,CAAC,IAAI,CAAC,CAAC,QAAQ,EAAE,EAAE;;wBAClD,IAAI,MAAM,IAAI,QAAQ,EAAE,CAAC;4BACvB,wBAAO,CAAC,KAAK,CACX,GAAG,MAAA,QAAQ,aAAR,QAAQ,uBAAR,QAAQ,CAAE,IAAI,0CAAE,MAAM,mCAAmC,CAC7D,CAAC;wBACJ,CAAC;oBACH,CAAC,CAAC,CAAC;gBACL,CAAC;YACH,CAAC;iBACI,CAAC;gBACJ,wDAAwD;gBACxD,MAAM,IAAI,CAAC,oBAAoB,EAAE,CAAC,IAAI,CAAC,CAAC,QAAQ,EAAE,EAAE;;oBAClD,IAAI,MAAM,IAAI,QAAQ,EAAE,CAAC;wBACvB,wBAAO,CAAC,KAAK,CACX,GAAG,MAAA,QAAQ,aAAR,QAAQ,uBAAR,QAAQ,CAAE,IAAI,0CAAE,MAAM,mCAAmC,CAC7D,CAAC;oBACJ,CAAC;gBACH,CAAC,CAAC,CAAC;YACL,CAAC;YAGD,IAAI,MAAM,GAAG,CAAC,GAAG,IAAI,CAAC,OAAO,CAAC,CAAC;YAE/B,KAAK,MAAM,KAAK,IAAI,IAAI,CAAC,QAAQ,EAAE,CAAC;gBAClC,IAAI,KAAK,CAAC,MAAM,EAAE,CAAC;oBACjB,MAAM,GAAG,MAAM,CAAC,MAAM,CAAC,CAAC,IAAI,EAAE,EAAE;wBAC9B,OAAO,MAAM,CAAC,OAAO,CAAC,KAAK,CAAC,MAAM,CAAC,CAAC,KAAK,CAAC,CAAC,CAAC,GAAG,EAAE,KAAK,CAAC,EAAE,EAAE;;4BACzD,MAAM,SAAS,SAAG,IAAI,CAAC,GAAG,CAAC,mCAAI,EAAE,CAAC,CAAC,0BAA0B;4BAE7D,IACE,OAAO,KAAK,KAAK,QAAQ;gCACzB,OAAO,KAAK,KAAK,QAAQ;gCACzB,OAAO,KAAK,KAAK,SAAS,EAC1B,CAAC;gCACD,OAAO,SAAS,KAAK,KAAK,CAAC;4BAC7B,CAAC;4BAED,IAAI,OAAO,KAAK,KAAK,QAAQ,IAAI,KAAK,KAAK,IAAI,EAAE,CAAC;gCAChD,IAAI,KAAK,YAAY,MAAM,EAAE,CAAC;oCAC5B,OAAO,KAAK,CAAC,IAAI,CAAC,SAAS,CAAC,CAAC;gCAC/B,CAAC;gCACD,IAAI,QAAQ,IAAI,KAAK,EAAE,CAAC;oCACtB,MAAM,YAAY,GAAG,KAAK,CAAC,MAAM,CAAC;oCAClC,MAAM,YAAY,GAChB,UAAU,IAAI,KAAK,CAAC,CAAC,CAAE,KAAK,CAAC,QAAmB,CAAC,CAAC,CAAC,EAAE,CAAC;oCACxD,IAAI,CAAC;wCACH,MAAM,KAAK,GAAG,IAAI,MAAM,CAAC,MAAM,CAAC,YAAY,CAAC,EAAE,YAAY,CAAC,CAAC;wCAC7D,OAAO,KAAK,CAAC,IAAI,CAAC,SAAS,CAAC,CAAC;oCAC/B,CAAC;oCAAC,OAAO,KAAK,EAAE,CAAC;wCACf,wBAAO,CAAC,GAAG,CACT,kBAAkB,YAAY,kBAAkB,YAAY,EAAE,EAC9D,KAAK,CACN,CAAC;wCACF,OAAO,KAAK,CAAC;oCACf,CAAC;gCACH,CAAC;gCACD,uBAAuB;gCACvB,IAAI,MAAM,IAAI,KAAK,EAAE,CAAC;oCACpB,OAAO,SAAS,IAAK,KAAa,CAAC,IAAI,CAAC;gCAC1C,CAAC;gCACD,IAAI,KAAK,IAAI,KAAK,EAAE,CAAC;oCACnB,OAAO,SAAS,GAAI,KAAa,CAAC,GAAG,CAAC;gCACxC,CAAC;gCACD,IAAI,MAAM,IAAI,KAAK,EAAE,CAAC;oCACpB,OAAO,SAAS,IAAK,KAAa,CAAC,IAAI,CAAC;gCAC1C,CAAC;gCACD,IAAI,KAAK,IAAI,KAAK,EAAE,CAAC;oCACnB,OAAO,SAAS,GAAI,KAAa,CAAC,GAAG,CAAC;gCACxC,CAAC;gCACD,IAAI,KAAK,IAAI,KAAK,EAAE,CAAC;oCACnB,OAAO,SAAS,KAAM,KAAa,CAAC,GAAG,CAAC;gCAC1C,CAAC;gCACD,IAAI,KAAK,IAAI,KAAK,EAAE,CAAC;oCACnB,OAAO,KAAK,CAAC,OAAO,CAAE,KAAa,CAAC,GAAG,CAAC,IAAK,KAAa,CAAC,GAAG,CAAC,QAAQ,CAAC,SAAS,CAAC,CAAC;gCACrF,CAAC;gCACD,IAAI,MAAM,IAAI,KAAK,EAAE,CAAC;oCACpB,OAAO,KAAK,CAAC,OAAO,CAAE,KAAa,CAAC,IAAI,CAAC,IAAI,CAAE,KAAa,CAAC,IAAI,CAAC,QAAQ,CAAC,SAAS,CAAC,CAAC;gCACxF,CAAC;4BACH,CAAC;4BACD,OAAO,KAAK,CAAC;wBACf,CAAC,CAAC,CAAC;oBACL,CAAC,CAAC,CAAC;gBACL,CAAC;gBACD,IAAI,KAAK,CAAC,MAAM,EAAE,CAAC;oBACjB,MAAM,WAAW,GAAwB,EAAE,CAAC;oBAC5C,KAAK,MAAM,IAAI,IAAI,MAAM,EAAE,CAAC;wBAC1B,IAAI,QAAQ,CAAC;wBAEb,IAAI,OAAO,KAAK,CAAC,MAAM,CAAC,GAAG,KAAK,QAAQ,EAAE,CAAC;4BACzC,QAAQ,GAAG,KAAK,CAAC,MAAM,CAAC,GAAG,CAAC,UAAU,CAAC,GAAG,CAAC;gCACzC,CAAC,CAAC,IAAI,CAAC,KAAK,CAAC,MAAM,CAAC,GAAG,CAAC,SAAS,CAAC,CAAC,CAAC,CAAC;gCACrC,CAAC,CAAC,KAAK,CAAC,MAAM,CAAC,GAAG,CAAC;wBACvB,CAAC;6BAAM,IAAI,OAAO,KAAK,CAAC,MAAM,CAAC,GAAG,KAAK,QAAQ,EAAE,CAAC;4BAChD,QAAQ,GAAG,IAAI,CAAC,SAAS,CACvB,MAAM,CAAC,OAAO,CAAC,KAAK,CAAC,MAAM,CAAC,GAAG,CAAC,CAAC,MAAM,CACrC,CAAC,GAAG,EAAE,CAAC,CAAC,EAAE,CAAC,CAAC,EAAE,EAAE;gCACd,MAAM,SAAS,GAAI,CAAY,CAAC,OAAO,CAAC,GAAG,EAAE,EAAE,CAAC,CAAC;gCACjD,GAAG,CAAC,CAAC,CAAC,GAAG,IAAI,CAAC,SAAS,CAAC,CAAC;gCACzB,OAAO,GAAG,CAAC;4BACb,CAAC,EACD,EAAyB,CAC1B,CACF,CAAC;wBACJ,CAAC;6BAAM,CAAC;4BACN,QAAQ,GAAG,MAAM,CAAC;wBACpB,CAAC;wBAED,IAAI,CAAC,WAAW,CAAC,QAAQ,CAAC,EAAE,CAAC;4BAC3B,WAAW,CAAC,QAAQ,CAAC,GAAG,EAAE,GAAG,EAAE,QAAQ,EAAE,CAAC;wBAC5C,CAAC;wBAED,KAAK,MAAM,CAAC,GAAG,EAAE,SAAS,CAAC,IAAI,MAAM,CAAC,OAAO,CAAC,KAAK,CAAC,MAAM,CAGvD,EAAE,CAAC;4BACJ,IAAI,GAAG,KAAK,KAAK;gCAAE,SAAS;4BAC5B,IAAI,SAAS,CAAC,IAAI,EAAE,CAAC;gCACnB,MAAM,KAAK,GAAG,SAAS,CAAC,IAAI,CAAC,OAAO,CAAC,GAAG,EAAE,EAAE,CAAC,CAAC;gCAC9C,WAAW,CAAC,QAAQ,CAAC,CAAC,GAAG,CAAC,GAAG,WAAW,CAAC,QAAQ,CAAC,CAAC,GAAG,CAAC,IAAI;oCACzD,GAAG,EAAE,CAAC;oCACN,KAAK,EAAE,CAAC;iCACT,CAAC;gCACF,WAAW,CAAC,QAAQ,CAAC,CAAC,GAAG,CAAC,CAAC,GAAG,IAAI,IAAI,CAAC,KAAK,CAAC,CAAC;gCAC9C,WAAW,CAAC,QAAQ,CAAC,CAAC,GAAG,CAAC,CAAC,KAAK,IAAI,CAAC,CAAC;4BACxC,CAAC;4BACD,IAAI,SAAS,CAAC,IAAI,EAAE,CAAC;gCACnB,MAAM,KAAK,GAAG,SAAS,CAAC,IAAI,CAAC,OAAO,CAAC,GAAG,EAAE,EAAE,CAAC,CAAC;gCAC9C,WAAW,CAAC,QAAQ,CAAC,CAAC,GAAG,CAAC;oCACxB,CAAC,WAAW,CAAC,QAAQ,CAAC,CAAC,GAAG,CAAC,IAAI,CAAC,CAAC,GAAG,IAAI,CAAC,KAAK,CAAC,CAAC;4BACpD,CAAC;wBACH,CAAC;oBACH,CAAC;oBACD,MAAM,GAAG,MAAM,CAAC,MAAM,CAAC,WAAW,CAAC,CAAC,GAAG,CAAC,CAAC,KAAK,EAAE,EAAE;wBAChD,KAAK,MAAM,GAAG,IAAI,KAAK,EAAE,CAAC;4BACxB,IAAI,KAAK,CAAC,GAAG,CAAC,IAAI,KAAK,CAAC,GAAG,CAAC,CAAC,GAAG,KAAK,SAAS,EAAE,CAAC;gCAC/C,KAAK,CAAC,GAAG,CAAC,GAAG,KAAK,CAAC,GAAG,CAAC,CAAC,GAAG,GAAG,KAAK,CAAC,GAAG,CAAC,CAAC,KAAK,CAAC;4BACjD,CAAC;wBACH,CAAC;wBACD,OAAO,KAAK,CAAC;oBACf,CAAC,CAAC,CAAC;gBACL,CAAC;gBACD,IAAI,KAAK,CAAC,KAAK,EAAE,CAAC;oBAChB,MAAM,CAAC,CAAC,GAAG,EAAE,KAAK,CAAC,CAAC,GAAG,MAAM,CAAC,OAAO,CAAC,KAAK,CAAC,KAAK,CAAC,CAAC;oBACnD,MAAM,QAAQ,GAAG,MAAM,CAAC,KAAK,CAAC,CAAC;oBAC/B,MAAM,CAAC,IAAI,CAAC,CAAC,CAAC,EAAE,CAAC,EAAE,EAAE;wBACnB,IAAI,CAAC,CAAC,GAAG,CAAC,GAAG,CAAC,CAAC,GAAG,CAAC;4BAAE,OAAO,CAAC,QAAQ,CAAC;wBACtC,IAAI,CAAC,CAAC,GAAG,CAAC,GAAG,CAAC,CAAC,GAAG,CAAC;4BAAE,OAAO,QAAQ,CAAC;wBACrC,OAAO,CAAC,CAAC;oBACX,CAAC,CAAC,CAAC;gBACL,CAAC;gBACD,IAAI,KAAK,CAAC,QAAQ,EAAE,CAAC;oBACnB,MAAM,GAAG,MAAM,CAAC,GAAG,CAAC,CAAC,IAAI,EAAE,EAAE;wBAC3B,MAAM,SAAS,GAA2B,EAAE,CAAC;wBAC7C,KAAK,MAAM,GAAG,IAAI,KAAK,CAAC,QAAQ,EAAE,CAAC;4BACjC,IAAI,KAAK,CAAC,QAAQ,CAAC,GAAG,CAAC,KAAK,CAAC,EAAE,CAAC;gCAC9B,SAAS,CAAC,GAAG,CAAC,GAAG,IAAI,CAAC,GAAG,CAAC,CAAC;4BAC7B,CAAC;wBACH,CAAC;wBACD,OAAO,SAAS,CAAC;oBACnB,CAAC,CAAC,CAAC;gBACL,CAAC;gBACD,IAAI,KAAK,CAAC,MAAM,EAAE,CAAC;oBACjB,MAAM,GAAG,MAAM,CAAC,KAAK,CAAC,CAAC,EAAE,KAAK,CAAC,MAAM,CAAC,CAAC;gBACzC,CAAC;gBACD,IAAI,KAAK,CAAC,KAAK,EAAE,CAAC;oBAChB,MAAM,GAAG,MAAM,CAAC,KAAK,CAAC,KAAK,CAAC,KAAK,CAAC,CAAC;gBACrC,CAAC;gBACD,IAAI,KAAK,CAAC,OAAO,EAAE,CAAC;oBAClB,MAAM,KAAK,GAAG,KAAK,CAAC,OAAO,CAAC,OAAO,CAAC,GAAG,EAAE,EAAE,CAAC,CAAC;oBAC7C,MAAM,GAAG,MAAM,CAAC,OAAO,CAAC,CAAC,IAAI,EAAE,EAAE;wBAC/B,OAAO,KAAK,CAAC,OAAO,CAAC,IAAI,CAAC,KAAK,CAAC,CAAC;4BAC/B,CAAC,CAAC,IAAI,CAAC,KAAK,CAAC,CAAC,GAAG,CAAC,CAAC,KAAK,EAAE,EAAE,CAAC,iCAAM,IAAI,KAAE,CAAC,KAAK,CAAC,EAAE,KAAK,IAAG,CAAC;4BAC3D,CAAC,CAAC,CAAC,IAAI,CAAC,CAAC;oBACb,CAAC,CAAC,CAAC;gBACL,CAAC;gBACD,IAAI,KAAK,CAAC,UAAU,EAAE,CAAC;oBACrB,MAAM,GAAG,MAAM,CAAC,GAAG,CAAC,CAAC,IAAI,EAAE,EAAE,CAAC,iCAAM,IAAI,GAAK,KAAK,CAAC,UAAU,EAAG,CAAC,CAAC;gBACpE,CAAC;YACH,CAAC;YAED,OAAO,IAAI,CAAC,cAAc,CAAC,OAAO,CAAC,MAAM,CAAC,CAAC;QAC7C,CAAC;KAAA;IAED;;;;;;;;;;;;;OAaG;IACW,oBAAoB,CAAC,oBAA2C;;YAG5E,wEAAwE;YACxE,MAAM,MAAM,GAAG,MAAM,+BAAc,CAAC,aAAa,CAC/C,IAAI,CAAC,IAAI,EACT,IAAI,CAAC,aAAa,EAClB,IAAI,CAAC,WAAW,EAChB,oBAAoB,EACpB,KAAK,CAAE,yCAAyC;aACjD,CAAC;YAEF,wCAAwC;YACxC,IAAI,MAAM,IAAI,MAAM,EAAE,CAAC;gBACrB,IAAI,CAAC,OAAO,GAAG,MAAM,CAAC,IAAI,CAAC;YAC7B,CAAC;YAED,OAAO,MAAM,CAAC;QAChB,CAAC;KAAA;CACF"}
@@ -0,0 +1,16 @@
1
+ import { AxioDB } from "../Indexation.operation";
2
+ /**
3
+ * Idempotently creates the `config` database and its `users`/`roles`/`permissions`
4
+ * collections on first control-server start, then hydrates PermissionChecker's
5
+ * in-memory role->permissions cache on every boot (including subsequent restarts,
6
+ * where seeding itself is a no-op but the cache still needs rebuilding).
7
+ */
8
+ export default class AuthSeeder {
9
+ private readonly axioDBInstance;
10
+ constructor(axioDBInstance: AxioDB);
11
+ seedIfNeeded(): Promise<void>;
12
+ private seedPermissions;
13
+ private seedRoles;
14
+ private seedDefaultAdmin;
15
+ private hydratePermissionCache;
16
+ }
@@ -0,0 +1,99 @@
1
+ "use strict";
2
+ var __awaiter = (this && this.__awaiter) || function (thisArg, _arguments, P, generator) {
3
+ function adopt(value) { return value instanceof P ? value : new P(function (resolve) { resolve(value); }); }
4
+ return new (P || (P = Promise))(function (resolve, reject) {
5
+ function fulfilled(value) { try { step(generator.next(value)); } catch (e) { reject(e); } }
6
+ function rejected(value) { try { step(generator["throw"](value)); } catch (e) { reject(e); } }
7
+ function step(result) { result.done ? resolve(result.value) : adopt(result.value).then(fulfilled, rejected); }
8
+ step((generator = generator.apply(thisArg, _arguments || [])).next());
9
+ });
10
+ };
11
+ var __importDefault = (this && this.__importDefault) || function (mod) {
12
+ return (mod && mod.__esModule) ? mod : { "default": mod };
13
+ };
14
+ Object.defineProperty(exports, "__esModule", { value: true });
15
+ const PasswordHasher_helper_1 = __importDefault(require("./PasswordHasher.helper"));
16
+ const ConfigDatabase_service_1 = __importDefault(require("./ConfigDatabase.service"));
17
+ const PermissionChecker_helper_1 = __importDefault(require("./PermissionChecker.helper"));
18
+ const Permissions_1 = require("../../config/Keys/Permissions");
19
+ /**
20
+ * Idempotently creates the `config` database and its `users`/`roles`/`permissions`
21
+ * collections on first control-server start, then hydrates PermissionChecker's
22
+ * in-memory role->permissions cache on every boot (including subsequent restarts,
23
+ * where seeding itself is a no-op but the cache still needs rebuilding).
24
+ */
25
+ class AuthSeeder {
26
+ constructor(axioDBInstance) {
27
+ this.axioDBInstance = axioDBInstance;
28
+ }
29
+ seedIfNeeded() {
30
+ return __awaiter(this, void 0, void 0, function* () {
31
+ var _a;
32
+ const configDB = yield this.axioDBInstance.createDB(Permissions_1.RESERVED_DB_NAME);
33
+ const usersCollection = yield configDB.createCollection(Permissions_1.CONFIG_USERS_COLLECTION);
34
+ const rolesCollection = yield configDB.createCollection(Permissions_1.CONFIG_ROLES_COLLECTION);
35
+ const permissionsCollection = yield configDB.createCollection(Permissions_1.CONFIG_PERMISSIONS_COLLECTION);
36
+ ConfigDatabase_service_1.default.setCollections(usersCollection, rolesCollection, permissionsCollection);
37
+ // totalDocuments() counts the collection's "indexes" subfolder as an entry, so it
38
+ // reports a non-zero count even when no real document has been inserted yet - use
39
+ // an actual document query (filtered to real .axiodb files) to detect prior seeding.
40
+ const existingUsers = yield usersCollection.query({}).Limit(1).exec();
41
+ const alreadySeeded = "data" in existingUsers &&
42
+ Array.isArray((_a = existingUsers.data) === null || _a === void 0 ? void 0 : _a.documents) &&
43
+ existingUsers.data.documents.length > 0;
44
+ if (!alreadySeeded) {
45
+ yield this.seedPermissions(permissionsCollection);
46
+ yield this.seedRoles(rolesCollection);
47
+ yield this.seedDefaultAdmin(usersCollection);
48
+ }
49
+ yield this.hydratePermissionCache(rolesCollection);
50
+ });
51
+ }
52
+ seedPermissions(permissionsCollection) {
53
+ return __awaiter(this, void 0, void 0, function* () {
54
+ const documents = Permissions_1.PERMISSION_CATALOGUE.map((entry) => ({
55
+ key: entry.key,
56
+ group: entry.group,
57
+ description: entry.description,
58
+ }));
59
+ yield permissionsCollection.insertMany(documents);
60
+ });
61
+ }
62
+ seedRoles(rolesCollection) {
63
+ return __awaiter(this, void 0, void 0, function* () {
64
+ const now = new Date().toISOString();
65
+ const documents = Permissions_1.PREDEFINED_ROLES.map((role) => ({
66
+ roleName: role.roleName,
67
+ permissions: role.permissions,
68
+ isSystemRole: true,
69
+ createdAt: now,
70
+ }));
71
+ yield rolesCollection.insertMany(documents);
72
+ });
73
+ }
74
+ seedDefaultAdmin(usersCollection) {
75
+ return __awaiter(this, void 0, void 0, function* () {
76
+ const passwordHash = yield PasswordHasher_helper_1.default.hashPassword(Permissions_1.DEFAULT_ADMIN_PASSWORD);
77
+ const document = {
78
+ username: Permissions_1.DEFAULT_ADMIN_USERNAME,
79
+ passwordHash,
80
+ role: Permissions_1.SUPER_ADMIN_ROLE,
81
+ mustChangePassword: true,
82
+ isActive: true,
83
+ createdAt: new Date().toISOString(),
84
+ };
85
+ yield usersCollection.insert(document);
86
+ });
87
+ }
88
+ hydratePermissionCache(rolesCollection) {
89
+ return __awaiter(this, void 0, void 0, function* () {
90
+ const result = yield rolesCollection.query({}).Limit(1000).exec();
91
+ if ("data" in result && result.data && Array.isArray(result.data.documents)) {
92
+ const roles = result.data.documents;
93
+ PermissionChecker_helper_1.default.hydrate(roles.map((role) => ({ roleName: role.roleName, permissions: role.permissions })));
94
+ }
95
+ });
96
+ }
97
+ }
98
+ exports.default = AuthSeeder;
99
+ //# sourceMappingURL=AuthSeeder.service.js.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"AuthSeeder.service.js","sourceRoot":"","sources":["../../../source/Services/Auth/AuthSeeder.service.ts"],"names":[],"mappings":"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"}
@@ -0,0 +1,53 @@
1
+ import { UserDocument, RoleDocument } from "../../config/Interfaces/Auth/auth.interface";
2
+ export interface AuthResult {
3
+ success: boolean;
4
+ message: string;
5
+ user?: UserDocument;
6
+ }
7
+ export interface MutationResult {
8
+ success: boolean;
9
+ message: string;
10
+ /** True when the failure means "this already exists" (HTTP 409) rather than a validation failure (HTTP 400). */
11
+ conflict?: boolean;
12
+ }
13
+ export interface SafeUser {
14
+ username: string;
15
+ role: string;
16
+ mustChangePassword: boolean;
17
+ isActive: boolean;
18
+ createdAt: string;
19
+ }
20
+ /**
21
+ * Business logic for login, password management, and user/role administration.
22
+ * Backed entirely by AxioDB's own Collection API against the `config` database
23
+ * (see ConfigDatabase.service.ts) - no separate storage mechanism.
24
+ */
25
+ export default class AuthService {
26
+ login(username: string, password: string): Promise<AuthResult>;
27
+ findUserByUsername(username: string): Promise<UserDocument | null>;
28
+ listUsers(): Promise<SafeUser[]>;
29
+ createUser(username: string, password: string, role: string): Promise<MutationResult>;
30
+ changeOwnPassword(username: string, currentPassword: string, newPassword: string): Promise<{
31
+ success: boolean;
32
+ message: string;
33
+ }>;
34
+ resetUserPassword(username: string, newPassword: string): Promise<{
35
+ success: boolean;
36
+ message: string;
37
+ }>;
38
+ updateUserRole(username: string, newRole: string): Promise<{
39
+ success: boolean;
40
+ message: string;
41
+ }>;
42
+ deleteUser(username: string): Promise<{
43
+ success: boolean;
44
+ message: string;
45
+ }>;
46
+ createRole(roleName: string, permissions: string[]): Promise<MutationResult>;
47
+ listRoles(): Promise<RoleDocument[]>;
48
+ /**
49
+ * Rejects an operation that would leave zero active Super Admin users behind,
50
+ * preventing a permanent RBAC lockout.
51
+ */
52
+ private assertNotLastSuperAdmin;
53
+ }
@@ -0,0 +1,217 @@
1
+ "use strict";
2
+ var __awaiter = (this && this.__awaiter) || function (thisArg, _arguments, P, generator) {
3
+ function adopt(value) { return value instanceof P ? value : new P(function (resolve) { resolve(value); }); }
4
+ return new (P || (P = Promise))(function (resolve, reject) {
5
+ function fulfilled(value) { try { step(generator.next(value)); } catch (e) { reject(e); } }
6
+ function rejected(value) { try { step(generator["throw"](value)); } catch (e) { reject(e); } }
7
+ function step(result) { result.done ? resolve(result.value) : adopt(result.value).then(fulfilled, rejected); }
8
+ step((generator = generator.apply(thisArg, _arguments || [])).next());
9
+ });
10
+ };
11
+ var __importDefault = (this && this.__importDefault) || function (mod) {
12
+ return (mod && mod.__esModule) ? mod : { "default": mod };
13
+ };
14
+ Object.defineProperty(exports, "__esModule", { value: true });
15
+ const PasswordHasher_helper_1 = __importDefault(require("./PasswordHasher.helper"));
16
+ const ConfigDatabase_service_1 = __importDefault(require("./ConfigDatabase.service"));
17
+ const PermissionChecker_helper_1 = __importDefault(require("./PermissionChecker.helper"));
18
+ const SessionStore_service_1 = __importDefault(require("./SessionStore.service"));
19
+ const Permissions_1 = require("../../config/Keys/Permissions");
20
+ /**
21
+ * Business logic for login, password management, and user/role administration.
22
+ * Backed entirely by AxioDB's own Collection API against the `config` database
23
+ * (see ConfigDatabase.service.ts) - no separate storage mechanism.
24
+ */
25
+ class AuthService {
26
+ login(username, password) {
27
+ return __awaiter(this, void 0, void 0, function* () {
28
+ const user = yield this.findUserByUsername(username);
29
+ if (!user || user.isActive === false) {
30
+ return { success: false, message: "Invalid username or password" };
31
+ }
32
+ const passwordMatches = yield PasswordHasher_helper_1.default.verifyPassword(password, user.passwordHash);
33
+ if (!passwordMatches) {
34
+ return { success: false, message: "Invalid username or password" };
35
+ }
36
+ return { success: true, message: "Login successful", user };
37
+ });
38
+ }
39
+ findUserByUsername(username) {
40
+ return __awaiter(this, void 0, void 0, function* () {
41
+ const result = yield ConfigDatabase_service_1.default.getUsersCollection()
42
+ .query({ username })
43
+ .findOne(true)
44
+ .exec();
45
+ if ("data" in result && result.data && result.data.documents) {
46
+ return result.data.documents;
47
+ }
48
+ return null;
49
+ });
50
+ }
51
+ listUsers() {
52
+ return __awaiter(this, void 0, void 0, function* () {
53
+ var _a;
54
+ const result = yield ConfigDatabase_service_1.default.getUsersCollection().query({}).Limit(1000).exec();
55
+ if (!("data" in result) || !((_a = result.data) === null || _a === void 0 ? void 0 : _a.documents)) {
56
+ return [];
57
+ }
58
+ const users = result.data.documents;
59
+ return users.map((user) => ({
60
+ username: user.username,
61
+ role: user.role,
62
+ mustChangePassword: user.mustChangePassword,
63
+ isActive: user.isActive,
64
+ createdAt: user.createdAt,
65
+ }));
66
+ });
67
+ }
68
+ createUser(username, password, role) {
69
+ return __awaiter(this, void 0, void 0, function* () {
70
+ if (!PermissionChecker_helper_1.default.roleExists(role)) {
71
+ return { success: false, message: `Role "${role}" does not exist` };
72
+ }
73
+ const existingUser = yield this.findUserByUsername(username);
74
+ if (existingUser) {
75
+ return { success: false, message: "Username already exists", conflict: true };
76
+ }
77
+ const passwordHash = yield PasswordHasher_helper_1.default.hashPassword(password);
78
+ const document = {
79
+ username,
80
+ passwordHash,
81
+ role,
82
+ mustChangePassword: true,
83
+ isActive: true,
84
+ createdAt: new Date().toISOString(),
85
+ };
86
+ yield ConfigDatabase_service_1.default.getUsersCollection().insert(document);
87
+ return { success: true, message: "User created successfully" };
88
+ });
89
+ }
90
+ changeOwnPassword(username, currentPassword, newPassword) {
91
+ return __awaiter(this, void 0, void 0, function* () {
92
+ const user = yield this.findUserByUsername(username);
93
+ if (!user) {
94
+ return { success: false, message: "User not found" };
95
+ }
96
+ const currentPasswordMatches = yield PasswordHasher_helper_1.default.verifyPassword(currentPassword, user.passwordHash);
97
+ if (!currentPasswordMatches) {
98
+ return { success: false, message: "Current password is incorrect" };
99
+ }
100
+ const passwordHash = yield PasswordHasher_helper_1.default.hashPassword(newPassword);
101
+ yield ConfigDatabase_service_1.default.getUsersCollection()
102
+ .update({ username })
103
+ .UpdateOne({ passwordHash, mustChangePassword: false });
104
+ return { success: true, message: "Password changed successfully" };
105
+ });
106
+ }
107
+ resetUserPassword(username, newPassword) {
108
+ return __awaiter(this, void 0, void 0, function* () {
109
+ const user = yield this.findUserByUsername(username);
110
+ if (!user) {
111
+ return { success: false, message: "User not found" };
112
+ }
113
+ const passwordHash = yield PasswordHasher_helper_1.default.hashPassword(newPassword);
114
+ yield ConfigDatabase_service_1.default.getUsersCollection()
115
+ .update({ username })
116
+ .UpdateOne({ passwordHash, mustChangePassword: true });
117
+ SessionStore_service_1.default.revokeSessionsForUser(username);
118
+ return { success: true, message: "Password reset successfully" };
119
+ });
120
+ }
121
+ updateUserRole(username, newRole) {
122
+ return __awaiter(this, void 0, void 0, function* () {
123
+ if (!PermissionChecker_helper_1.default.roleExists(newRole)) {
124
+ return { success: false, message: `Role "${newRole}" does not exist` };
125
+ }
126
+ const user = yield this.findUserByUsername(username);
127
+ if (!user) {
128
+ return { success: false, message: "User not found" };
129
+ }
130
+ if (user.role === Permissions_1.SUPER_ADMIN_ROLE && newRole !== Permissions_1.SUPER_ADMIN_ROLE) {
131
+ const lastAdminGuard = yield this.assertNotLastSuperAdmin(username);
132
+ if (!lastAdminGuard.success) {
133
+ return lastAdminGuard;
134
+ }
135
+ }
136
+ yield ConfigDatabase_service_1.default.getUsersCollection()
137
+ .update({ username })
138
+ .UpdateOne({ role: newRole });
139
+ SessionStore_service_1.default.revokeSessionsForUser(username);
140
+ return { success: true, message: "Role updated successfully" };
141
+ });
142
+ }
143
+ deleteUser(username) {
144
+ return __awaiter(this, void 0, void 0, function* () {
145
+ const user = yield this.findUserByUsername(username);
146
+ if (!user) {
147
+ return { success: false, message: "User not found" };
148
+ }
149
+ if (user.role === Permissions_1.SUPER_ADMIN_ROLE) {
150
+ const lastAdminGuard = yield this.assertNotLastSuperAdmin(username);
151
+ if (!lastAdminGuard.success) {
152
+ return lastAdminGuard;
153
+ }
154
+ }
155
+ yield ConfigDatabase_service_1.default.getUsersCollection().delete({ username }).deleteOne();
156
+ SessionStore_service_1.default.revokeSessionsForUser(username);
157
+ return { success: true, message: "User deleted successfully" };
158
+ });
159
+ }
160
+ createRole(roleName, permissions) {
161
+ return __awaiter(this, void 0, void 0, function* () {
162
+ if (PermissionChecker_helper_1.default.roleExists(roleName)) {
163
+ return { success: false, message: "Role already exists", conflict: true };
164
+ }
165
+ const invalidPermissions = permissions.filter((key) => !Permissions_1.ALL_PERMISSION_KEYS.includes(key));
166
+ if (invalidPermissions.length > 0) {
167
+ return {
168
+ success: false,
169
+ message: `Unknown permission key(s): ${invalidPermissions.join(", ")}`,
170
+ };
171
+ }
172
+ const document = {
173
+ roleName,
174
+ permissions,
175
+ isSystemRole: false,
176
+ createdAt: new Date().toISOString(),
177
+ };
178
+ yield ConfigDatabase_service_1.default.getRolesCollection().insert(document);
179
+ PermissionChecker_helper_1.default.setRolePermissions(roleName, permissions);
180
+ return { success: true, message: "Role created successfully" };
181
+ });
182
+ }
183
+ listRoles() {
184
+ return __awaiter(this, void 0, void 0, function* () {
185
+ var _a;
186
+ const result = yield ConfigDatabase_service_1.default.getRolesCollection().query({}).Limit(1000).exec();
187
+ if (!("data" in result) || !((_a = result.data) === null || _a === void 0 ? void 0 : _a.documents)) {
188
+ return [];
189
+ }
190
+ return result.data.documents;
191
+ });
192
+ }
193
+ /**
194
+ * Rejects an operation that would leave zero active Super Admin users behind,
195
+ * preventing a permanent RBAC lockout.
196
+ */
197
+ assertNotLastSuperAdmin(excludingUsername) {
198
+ return __awaiter(this, void 0, void 0, function* () {
199
+ var _a;
200
+ const result = yield ConfigDatabase_service_1.default.getUsersCollection()
201
+ .query({ role: Permissions_1.SUPER_ADMIN_ROLE })
202
+ .Limit(1000)
203
+ .exec();
204
+ const superAdmins = "data" in result && ((_a = result.data) === null || _a === void 0 ? void 0 : _a.documents) ? result.data.documents : [];
205
+ const remaining = superAdmins.filter((user) => user.username !== excludingUsername && user.isActive !== false);
206
+ if (remaining.length === 0) {
207
+ return {
208
+ success: false,
209
+ message: "Cannot remove the last remaining Super Admin",
210
+ };
211
+ }
212
+ return { success: true, message: "OK" };
213
+ });
214
+ }
215
+ }
216
+ exports.default = AuthService;
217
+ //# sourceMappingURL=AuthService.service.js.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"AuthService.service.js","sourceRoot":"","sources":["../../../source/Services/Auth/AuthService.service.ts"],"names":[],"mappings":"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"}
@@ -0,0 +1,22 @@
1
+ import Collection from "../Collection/collection.operation";
2
+ /**
3
+ * Holds long-lived references to the `config` database's `users`/`roles`/`permissions`
4
+ * collections. Collection instances are reused across requests instead of being
5
+ * recreated per call, since each `Collection` eagerly loads its index cache on
6
+ * construction - recreating it per request would repeatedly reload indexes for
7
+ * no benefit.
8
+ */
9
+ declare class ConfigDatabase {
10
+ private static instance;
11
+ private usersCollection;
12
+ private rolesCollection;
13
+ private permissionsCollection;
14
+ static getInstance(): ConfigDatabase;
15
+ setCollections(usersCollection: Collection, rolesCollection: Collection, permissionsCollection: Collection): void;
16
+ isInitialized(): boolean;
17
+ getUsersCollection(): Collection;
18
+ getRolesCollection(): Collection;
19
+ getPermissionsCollection(): Collection;
20
+ }
21
+ declare const _default: ConfigDatabase;
22
+ export default _default;