axiodb 10.8.11 → 11.9.13

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 (74) hide show
  1. package/README.md +447 -315
  2. package/lib/Services/Auth/AuthEvents.service.d.ts +15 -0
  3. package/lib/Services/Auth/AuthEvents.service.js +17 -0
  4. package/lib/Services/Auth/AuthEvents.service.js.map +1 -0
  5. package/lib/Services/Auth/AuthService.service.js +4 -0
  6. package/lib/Services/Auth/AuthService.service.js.map +1 -1
  7. package/lib/Services/Auth/LoginRateLimiter.service.d.ts +35 -0
  8. package/lib/Services/Auth/LoginRateLimiter.service.js +89 -0
  9. package/lib/Services/Auth/LoginRateLimiter.service.js.map +1 -0
  10. package/lib/Services/Collection/collection.operation.d.ts +6 -0
  11. package/lib/Services/Collection/collection.operation.js +10 -0
  12. package/lib/Services/Collection/collection.operation.js.map +1 -1
  13. package/lib/Services/Index/Index.service.d.ts +20 -0
  14. package/lib/Services/Index/Index.service.js +25 -1
  15. package/lib/Services/Index/Index.service.js.map +1 -1
  16. package/lib/Services/Indexation.operation.d.ts +4 -0
  17. package/lib/Services/Indexation.operation.js +13 -4
  18. package/lib/Services/Indexation.operation.js.map +1 -1
  19. package/lib/client/AxioDBCloud.client.d.ts +20 -1
  20. package/lib/client/AxioDBCloud.client.js +54 -3
  21. package/lib/client/AxioDBCloud.client.js.map +1 -1
  22. package/lib/client/CollectionProxy.d.ts +4 -0
  23. package/lib/client/CollectionProxy.js +11 -0
  24. package/lib/client/CollectionProxy.js.map +1 -1
  25. package/lib/client/types/client.types.d.ts +8 -0
  26. package/lib/client/types/client.types.js.map +1 -1
  27. package/lib/config/Interfaces/Operation/Indexation.operation.interface.d.ts +2 -0
  28. package/lib/config/Keys/Permissions.d.ts +13 -0
  29. package/lib/config/Keys/Permissions.js +21 -1
  30. package/lib/config/Keys/Permissions.js.map +1 -1
  31. package/lib/server/config/keys.js +26 -0
  32. package/lib/server/config/keys.js.map +1 -1
  33. package/lib/server/controller/Auth/Auth.controller.js +9 -0
  34. package/lib/server/controller/Auth/Auth.controller.js.map +1 -1
  35. package/lib/server/controller/Index/Index.controller.d.ts +35 -0
  36. package/lib/server/controller/Index/Index.controller.js +148 -0
  37. package/lib/server/controller/Index/Index.controller.js.map +1 -0
  38. package/lib/server/router/Router.js +6 -0
  39. package/lib/server/router/Router.js.map +1 -1
  40. package/lib/server/router/Routers/Index.routes.d.ts +7 -0
  41. package/lib/server/router/Routers/Index.routes.js +38 -0
  42. package/lib/server/router/Routers/Index.routes.js.map +1 -0
  43. package/lib/tcp/config/keys.d.ts +8 -0
  44. package/lib/tcp/config/keys.js +8 -0
  45. package/lib/tcp/config/keys.js.map +1 -1
  46. package/lib/tcp/config/permissions.d.ts +16 -0
  47. package/lib/tcp/config/permissions.js +46 -0
  48. package/lib/tcp/config/permissions.js.map +1 -0
  49. package/lib/tcp/config/protocol.js +13 -0
  50. package/lib/tcp/config/protocol.js.map +1 -1
  51. package/lib/tcp/config/server.d.ts +1 -1
  52. package/lib/tcp/config/server.js +28 -6
  53. package/lib/tcp/config/server.js.map +1 -1
  54. package/lib/tcp/connection/ConnectionManager.d.ts +19 -0
  55. package/lib/tcp/connection/ConnectionManager.js +31 -0
  56. package/lib/tcp/connection/ConnectionManager.js.map +1 -1
  57. package/lib/tcp/connection/RequestContext.d.ts +4 -1
  58. package/lib/tcp/connection/RequestContext.js +4 -1
  59. package/lib/tcp/connection/RequestContext.js.map +1 -1
  60. package/lib/tcp/handler/CommandHandler.d.ts +5 -1
  61. package/lib/tcp/handler/CommandHandler.js +34 -4
  62. package/lib/tcp/handler/CommandHandler.js.map +1 -1
  63. package/lib/tcp/handler/handlers/Auth.handler.d.ts +16 -0
  64. package/lib/tcp/handler/handlers/Auth.handler.js +91 -0
  65. package/lib/tcp/handler/handlers/Auth.handler.js.map +1 -0
  66. package/lib/tcp/handler/handlers/Operation.handler.d.ts +4 -0
  67. package/lib/tcp/handler/handlers/Operation.handler.js +27 -0
  68. package/lib/tcp/handler/handlers/Operation.handler.js.map +1 -1
  69. package/lib/tcp/types/command.types.d.ts +2 -0
  70. package/lib/tcp/types/command.types.js +5 -0
  71. package/lib/tcp/types/command.types.js.map +1 -1
  72. package/lib/tcp/types/protocol.types.d.ts +2 -0
  73. package/lib/tcp/types/protocol.types.js.map +1 -1
  74. package/package.json +1 -1
@@ -47,6 +47,9 @@ class AxioDBCloud extends events_1.EventEmitter {
47
47
  reconnectDelay: (options === null || options === void 0 ? void 0 : options.reconnectDelay) || 1000,
48
48
  heartbeatInterval: (options === null || options === void 0 ? void 0 : options.heartbeatInterval) || 30000,
49
49
  };
50
+ if ((options === null || options === void 0 ? void 0 : options.username) && (options === null || options === void 0 ? void 0 : options.password)) {
51
+ this.credentials = { username: options.username, password: options.password };
52
+ }
50
53
  }
51
54
  /**
52
55
  * Parse connection string: axiodb://host:port
@@ -90,14 +93,31 @@ class AxioDBCloud extends events_1.EventEmitter {
90
93
  reject(new Error('Connection timeout'));
91
94
  }, this.options.timeout);
92
95
  // Connect to server
93
- this.socket.connect(this.port, this.host, () => {
96
+ this.socket.connect(this.port, this.host, () => __awaiter(this, void 0, void 0, function* () {
97
+ var _a;
94
98
  clearTimeout(connectionTimeout);
95
99
  this.connectionState = client_types_1.ConnectionState.CONNECTED;
96
100
  this.reconnectAttempt = 0;
97
101
  this.startHeartbeat();
98
102
  this.emit('connected');
99
- resolve();
100
- });
103
+ if (!this.credentials) {
104
+ resolve();
105
+ return;
106
+ }
107
+ try {
108
+ yield this.performAuthenticate(this.credentials.username, this.credentials.password);
109
+ resolve();
110
+ }
111
+ catch (authError) {
112
+ // Mirror disconnect()'s guard: prevent handleDisconnection's auto-reconnect
113
+ // from retrying the same bad credentials up to `reconnectAttempts` times.
114
+ this.reconnectAttempt = this.options.reconnectAttempts;
115
+ this.connectionState = client_types_1.ConnectionState.FAILED;
116
+ this.stopHeartbeat();
117
+ (_a = this.socket) === null || _a === void 0 ? void 0 : _a.destroy();
118
+ reject(authError);
119
+ }
120
+ }));
101
121
  // Handle connection errors
102
122
  this.socket.once('error', (error) => {
103
123
  clearTimeout(connectionTimeout);
@@ -107,6 +127,37 @@ class AxioDBCloud extends events_1.EventEmitter {
107
127
  });
108
128
  });
109
129
  }
130
+ /**
131
+ * Authenticate with username/password (same RBAC users as the GUI Control Server).
132
+ * Only required when the server was started with `TCPAuth: true`.
133
+ *
134
+ * Stashes the credentials so a later automatic reconnect replays login - otherwise a
135
+ * network blip after a runtime `login()` call would silently leave the reconnected
136
+ * socket unauthenticated.
137
+ */
138
+ login(username, password) {
139
+ return __awaiter(this, void 0, void 0, function* () {
140
+ const authUser = yield this.performAuthenticate(username, password);
141
+ this.credentials = { username, password };
142
+ return authUser;
143
+ });
144
+ }
145
+ /**
146
+ * Sends the AUTHENTICATE command and stores the resulting identity.
147
+ */
148
+ performAuthenticate(username, password) {
149
+ return __awaiter(this, void 0, void 0, function* () {
150
+ const result = yield this.sendCommand(command_types_1.CommandType.AUTHENTICATE, { username, password });
151
+ this.authUser = result;
152
+ return this.authUser;
153
+ });
154
+ }
155
+ /**
156
+ * The currently authenticated identity, if `login()` (or constructor credentials) succeeded.
157
+ */
158
+ get authenticatedUser() {
159
+ return this.authUser;
160
+ }
110
161
  /**
111
162
  * Setup socket event handlers
112
163
  */
@@ -1 +1 @@
1
- {"version":3,"file":"AxioDBCloud.client.js","sourceRoot":"","sources":["../../source/client/AxioDBCloud.client.ts"],"names":[],"mappings":"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"}
1
+ {"version":3,"file":"AxioDBCloud.client.js","sourceRoot":"","sources":["../../source/client/AxioDBCloud.client.ts"],"names":[],"mappings":"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"}
@@ -48,6 +48,10 @@ export default class CollectionProxy {
48
48
  * Drop an index
49
49
  */
50
50
  dropIndex(indexName: string): Promise<any>;
51
+ /**
52
+ * List all indexes registered on this collection
53
+ */
54
+ listIndexes(): Promise<any>;
51
55
  /**
52
56
  * Get collection name
53
57
  */
@@ -110,6 +110,17 @@ class CollectionProxy {
110
110
  });
111
111
  });
112
112
  }
113
+ /**
114
+ * List all indexes registered on this collection
115
+ */
116
+ listIndexes() {
117
+ return __awaiter(this, void 0, void 0, function* () {
118
+ return yield this.client.sendCommand(command_types_1.CommandType.LIST_INDEXES, {
119
+ dbName: this.dbName,
120
+ collectionName: this.collectionName,
121
+ });
122
+ });
123
+ }
113
124
  /**
114
125
  * Get collection name
115
126
  */
@@ -1 +1 @@
1
- {"version":3,"file":"CollectionProxy.js","sourceRoot":"","sources":["../../source/client/CollectionProxy.ts"],"names":[],"mappings":";;;;;;;;;;;;;;AACA,8DAAyD;AACzD,gEAAwC;AACxC,kFAA0D;AAC1D,kFAA0D;AAC1D,0EAAkD;AAElD;;;GAGG;AACH;IAKE,YAAY,MAAmB,EAAE,MAAc,EAAE,cAAsB;QACrE,IAAI,CAAC,MAAM,GAAG,MAAM,CAAC;QACrB,IAAI,CAAC,MAAM,GAAG,MAAM,CAAC;QACrB,IAAI,CAAC,cAAc,GAAG,cAAc,CAAC;IACvC,CAAC;IAED;;OAEG;IACG,MAAM,CAAC,IAAY;;YACvB,OAAO,MAAM,IAAI,CAAC,MAAM,CAAC,WAAW,CAAC,2BAAW,CAAC,eAAe,EAAE;gBAChE,MAAM,EAAE,IAAI,CAAC,MAAM;gBACnB,cAAc,EAAE,IAAI,CAAC,cAAc;gBACnC,IAAI;aACL,CAAC,CAAC;QACL,CAAC;KAAA;IAED;;OAEG;IACG,UAAU,CAAC,SAAmB;;YAClC,OAAO,MAAM,IAAI,CAAC,MAAM,CAAC,WAAW,CAAC,2BAAW,CAAC,qBAAqB,EAAE;gBACtE,MAAM,EAAE,IAAI,CAAC,MAAM;gBACnB,cAAc,EAAE,IAAI,CAAC,cAAc;gBACnC,SAAS;aACV,CAAC,CAAC;QACL,CAAC;KAAA;IAED;;OAEG;IACH,KAAK,CAAC,KAAa;QACjB,OAAO,IAAI,qBAAW,CAAC,IAAI,CAAC,MAAM,EAAE,IAAI,CAAC,MAAM,EAAE,IAAI,CAAC,cAAc,EAAE,KAAK,CAAC,CAAC;IAC/E,CAAC;IAED;;OAEG;IACH,MAAM,CAAC,KAAa;QAClB,OAAO,IAAI,8BAAoB,CAAC,IAAI,CAAC,MAAM,EAAE,IAAI,CAAC,MAAM,EAAE,IAAI,CAAC,cAAc,EAAE,KAAK,CAAC,CAAC;IACxF,CAAC;IAED;;OAEG;IACH,MAAM,CAAC,KAAa;QAClB,OAAO,IAAI,8BAAoB,CAAC,IAAI,CAAC,MAAM,EAAE,IAAI,CAAC,MAAM,EAAE,IAAI,CAAC,cAAc,EAAE,KAAK,CAAC,CAAC;IACxF,CAAC;IAED;;OAEG;IACH,SAAS,CAAC,QAAkB;QAC1B,OAAO,IAAI,0BAAgB,CAAC,IAAI,CAAC,MAAM,EAAE,IAAI,CAAC,MAAM,EAAE,IAAI,CAAC,cAAc,EAAE,QAAQ,CAAC,CAAC;IACvF,CAAC;IAED;;OAEG;IACG,cAAc;;YAClB,OAAO,MAAM,IAAI,CAAC,MAAM,CAAC,WAAW,CAAC,2BAAW,CAAC,eAAe,EAAE;gBAChE,MAAM,EAAE,IAAI,CAAC,MAAM;gBACnB,cAAc,EAAE,IAAI,CAAC,cAAc;aACpC,CAAC,CAAC;QACL,CAAC;KAAA;IAED;;OAEG;IACG,QAAQ,CAAC,GAAG,UAAoB;;YACpC,OAAO,MAAM,IAAI,CAAC,MAAM,CAAC,WAAW,CAAC,2BAAW,CAAC,YAAY,EAAE;gBAC7D,MAAM,EAAE,IAAI,CAAC,MAAM;gBACnB,cAAc,EAAE,IAAI,CAAC,cAAc;gBACnC,UAAU;aACX,CAAC,CAAC;QACL,CAAC;KAAA;IAED;;OAEG;IACG,SAAS,CAAC,SAAiB;;YAC/B,OAAO,MAAM,IAAI,CAAC,MAAM,CAAC,WAAW,CAAC,2BAAW,CAAC,UAAU,EAAE;gBAC3D,MAAM,EAAE,IAAI,CAAC,MAAM;gBACnB,cAAc,EAAE,IAAI,CAAC,cAAc;gBACnC,SAAS;aACV,CAAC,CAAC;QACL,CAAC;KAAA;IAED;;OAEG;IACH,IAAI,IAAI;QACN,OAAO,IAAI,CAAC,cAAc,CAAC;IAC7B,CAAC;CACF"}
1
+ {"version":3,"file":"CollectionProxy.js","sourceRoot":"","sources":["../../source/client/CollectionProxy.ts"],"names":[],"mappings":";;;;;;;;;;;;;;AACA,8DAAyD;AACzD,gEAAwC;AACxC,kFAA0D;AAC1D,kFAA0D;AAC1D,0EAAkD;AAElD;;;GAGG;AACH;IAKE,YAAY,MAAmB,EAAE,MAAc,EAAE,cAAsB;QACrE,IAAI,CAAC,MAAM,GAAG,MAAM,CAAC;QACrB,IAAI,CAAC,MAAM,GAAG,MAAM,CAAC;QACrB,IAAI,CAAC,cAAc,GAAG,cAAc,CAAC;IACvC,CAAC;IAED;;OAEG;IACG,MAAM,CAAC,IAAY;;YACvB,OAAO,MAAM,IAAI,CAAC,MAAM,CAAC,WAAW,CAAC,2BAAW,CAAC,eAAe,EAAE;gBAChE,MAAM,EAAE,IAAI,CAAC,MAAM;gBACnB,cAAc,EAAE,IAAI,CAAC,cAAc;gBACnC,IAAI;aACL,CAAC,CAAC;QACL,CAAC;KAAA;IAED;;OAEG;IACG,UAAU,CAAC,SAAmB;;YAClC,OAAO,MAAM,IAAI,CAAC,MAAM,CAAC,WAAW,CAAC,2BAAW,CAAC,qBAAqB,EAAE;gBACtE,MAAM,EAAE,IAAI,CAAC,MAAM;gBACnB,cAAc,EAAE,IAAI,CAAC,cAAc;gBACnC,SAAS;aACV,CAAC,CAAC;QACL,CAAC;KAAA;IAED;;OAEG;IACH,KAAK,CAAC,KAAa;QACjB,OAAO,IAAI,qBAAW,CAAC,IAAI,CAAC,MAAM,EAAE,IAAI,CAAC,MAAM,EAAE,IAAI,CAAC,cAAc,EAAE,KAAK,CAAC,CAAC;IAC/E,CAAC;IAED;;OAEG;IACH,MAAM,CAAC,KAAa;QAClB,OAAO,IAAI,8BAAoB,CAAC,IAAI,CAAC,MAAM,EAAE,IAAI,CAAC,MAAM,EAAE,IAAI,CAAC,cAAc,EAAE,KAAK,CAAC,CAAC;IACxF,CAAC;IAED;;OAEG;IACH,MAAM,CAAC,KAAa;QAClB,OAAO,IAAI,8BAAoB,CAAC,IAAI,CAAC,MAAM,EAAE,IAAI,CAAC,MAAM,EAAE,IAAI,CAAC,cAAc,EAAE,KAAK,CAAC,CAAC;IACxF,CAAC;IAED;;OAEG;IACH,SAAS,CAAC,QAAkB;QAC1B,OAAO,IAAI,0BAAgB,CAAC,IAAI,CAAC,MAAM,EAAE,IAAI,CAAC,MAAM,EAAE,IAAI,CAAC,cAAc,EAAE,QAAQ,CAAC,CAAC;IACvF,CAAC;IAED;;OAEG;IACG,cAAc;;YAClB,OAAO,MAAM,IAAI,CAAC,MAAM,CAAC,WAAW,CAAC,2BAAW,CAAC,eAAe,EAAE;gBAChE,MAAM,EAAE,IAAI,CAAC,MAAM;gBACnB,cAAc,EAAE,IAAI,CAAC,cAAc;aACpC,CAAC,CAAC;QACL,CAAC;KAAA;IAED;;OAEG;IACG,QAAQ,CAAC,GAAG,UAAoB;;YACpC,OAAO,MAAM,IAAI,CAAC,MAAM,CAAC,WAAW,CAAC,2BAAW,CAAC,YAAY,EAAE;gBAC7D,MAAM,EAAE,IAAI,CAAC,MAAM;gBACnB,cAAc,EAAE,IAAI,CAAC,cAAc;gBACnC,UAAU;aACX,CAAC,CAAC;QACL,CAAC;KAAA;IAED;;OAEG;IACG,SAAS,CAAC,SAAiB;;YAC/B,OAAO,MAAM,IAAI,CAAC,MAAM,CAAC,WAAW,CAAC,2BAAW,CAAC,UAAU,EAAE;gBAC3D,MAAM,EAAE,IAAI,CAAC,MAAM;gBACnB,cAAc,EAAE,IAAI,CAAC,cAAc;gBACnC,SAAS;aACV,CAAC,CAAC;QACL,CAAC;KAAA;IAED;;OAEG;IACG,WAAW;;YACf,OAAO,MAAM,IAAI,CAAC,MAAM,CAAC,WAAW,CAAC,2BAAW,CAAC,YAAY,EAAE;gBAC7D,MAAM,EAAE,IAAI,CAAC,MAAM;gBACnB,cAAc,EAAE,IAAI,CAAC,cAAc;aACpC,CAAC,CAAC;QACL,CAAC;KAAA;IAED;;OAEG;IACH,IAAI,IAAI;QACN,OAAO,IAAI,CAAC,cAAc,CAAC;IAC7B,CAAC;CACF"}
@@ -9,6 +9,14 @@ export interface AxioDBCloudOptions {
9
9
  reconnectAttempts?: number;
10
10
  reconnectDelay?: number;
11
11
  heartbeatInterval?: number;
12
+ username?: string;
13
+ password?: string;
14
+ }
15
+ /** Public shape returned by a successful AUTHENTICATE command. */
16
+ export interface AuthenticatedUser {
17
+ username: string;
18
+ role: string;
19
+ mustChangePassword: boolean;
12
20
  }
13
21
  /**
14
22
  * Connection state
@@ -1 +1 @@
1
- {"version":3,"file":"client.types.js","sourceRoot":"","sources":["../../../source/client/types/client.types.ts"],"names":[],"mappings":";AAAA;;GAEG;;;AAYH;;GAEG;AACH,IAAY,eAMX;AAND,WAAY,eAAe;IACzB,gDAA6B,CAAA;IAC7B,4CAAyB,CAAA;IACzB,0CAAuB,CAAA;IACvB,gDAA6B,CAAA;IAC7B,oCAAiB,CAAA;AACnB,CAAC,EANW,eAAe,aAAf,eAAe,GAAf,eAAe,QAM1B"}
1
+ {"version":3,"file":"client.types.js","sourceRoot":"","sources":["../../../source/client/types/client.types.ts"],"names":[],"mappings":";AAAA;;GAEG;;;AAqBH;;GAEG;AACH,IAAY,eAMX;AAND,WAAY,eAAe;IACzB,gDAA6B,CAAA;IAC7B,4CAAyB,CAAA;IACzB,0CAAuB,CAAA;IACvB,gDAA6B,CAAA;IAC7B,oCAAiB,CAAA;AACnB,CAAC,EANW,eAAe,aAAf,eAAe,GAAf,eAAe,QAM1B"}
@@ -4,6 +4,8 @@ export interface AxioDBOptions {
4
4
  RootName?: string;
5
5
  CustomPath?: string;
6
6
  TCP?: boolean;
7
+ /** Require username/password authentication (same RBAC users as the GUI) for TCP connections. Defaults to false. */
8
+ TCPAuth?: boolean;
7
9
  }
8
10
  export interface FinalDatabaseInfo {
9
11
  CurrentPath: string;
@@ -21,6 +21,9 @@ export declare const PERMISSIONS: {
21
21
  readonly USER_DELETE: "user:delete";
22
22
  readonly ROLE_VIEW: "role:view";
23
23
  readonly ROLE_CREATE: "role:create";
24
+ readonly INDEX_VIEW: "index:view";
25
+ readonly INDEX_CREATE: "index:create";
26
+ readonly INDEX_DELETE: "index:delete";
24
27
  };
25
28
  export type PermissionKey = (typeof PERMISSIONS)[keyof typeof PERMISSIONS];
26
29
  interface PermissionCatalogueEntry {
@@ -48,4 +51,14 @@ export declare const DEFAULT_ADMIN_PASSWORD = "admin";
48
51
  export declare const SESSION_COOKIE_NAME = "axiodb_session";
49
52
  export declare const SESSION_TTL_MS: number;
50
53
  export declare const SESSION_SWEEP_INTERVAL_MS: number;
54
+ /**
55
+ * Login rate limiting - shared by the GUI's /auth/login route and the TCP AUTHENTICATE
56
+ * command (see LoginRateLimiter.service.ts). Tracked per client IP: after
57
+ * LOGIN_RATE_LIMIT_MAX_ATTEMPTS failures within LOGIN_RATE_LIMIT_WINDOW_MS, that IP is
58
+ * locked out for LOGIN_RATE_LIMIT_COOLDOWN_MS.
59
+ */
60
+ export declare const LOGIN_RATE_LIMIT_MAX_ATTEMPTS = 5;
61
+ export declare const LOGIN_RATE_LIMIT_WINDOW_MS: number;
62
+ export declare const LOGIN_RATE_LIMIT_COOLDOWN_MS: number;
63
+ export declare const LOGIN_RATE_LIMIT_SWEEP_INTERVAL_MS: number;
51
64
  export {};
@@ -1,7 +1,7 @@
1
1
  "use strict";
2
2
  // Predefined permission catalogue and role matrix for the Control Server's RBAC system.
3
3
  Object.defineProperty(exports, "__esModule", { value: true });
4
- exports.SESSION_SWEEP_INTERVAL_MS = exports.SESSION_TTL_MS = exports.SESSION_COOKIE_NAME = exports.DEFAULT_ADMIN_PASSWORD = exports.DEFAULT_ADMIN_USERNAME = exports.CONFIG_PERMISSIONS_COLLECTION = exports.CONFIG_ROLES_COLLECTION = exports.CONFIG_USERS_COLLECTION = exports.RESERVED_DB_NAME = exports.PREDEFINED_ROLES = exports.VIEW_ROLE = exports.ADMIN_ROLE = exports.SUPER_ADMIN_ROLE = exports.ALL_PERMISSION_KEYS = exports.PERMISSION_CATALOGUE = exports.PERMISSIONS = void 0;
4
+ exports.LOGIN_RATE_LIMIT_SWEEP_INTERVAL_MS = exports.LOGIN_RATE_LIMIT_COOLDOWN_MS = exports.LOGIN_RATE_LIMIT_WINDOW_MS = exports.LOGIN_RATE_LIMIT_MAX_ATTEMPTS = exports.SESSION_SWEEP_INTERVAL_MS = exports.SESSION_TTL_MS = exports.SESSION_COOKIE_NAME = exports.DEFAULT_ADMIN_PASSWORD = exports.DEFAULT_ADMIN_USERNAME = exports.CONFIG_PERMISSIONS_COLLECTION = exports.CONFIG_ROLES_COLLECTION = exports.CONFIG_USERS_COLLECTION = exports.RESERVED_DB_NAME = exports.PREDEFINED_ROLES = exports.VIEW_ROLE = exports.ADMIN_ROLE = exports.SUPER_ADMIN_ROLE = exports.ALL_PERMISSION_KEYS = exports.PERMISSION_CATALOGUE = exports.PERMISSIONS = void 0;
5
5
  exports.isReservedDatabaseName = isReservedDatabaseName;
6
6
  exports.PERMISSIONS = {
7
7
  DB_VIEW: "db:view",
@@ -26,6 +26,9 @@ exports.PERMISSIONS = {
26
26
  USER_DELETE: "user:delete",
27
27
  ROLE_VIEW: "role:view",
28
28
  ROLE_CREATE: "role:create",
29
+ INDEX_VIEW: "index:view",
30
+ INDEX_CREATE: "index:create",
31
+ INDEX_DELETE: "index:delete",
29
32
  };
30
33
  exports.PERMISSION_CATALOGUE = [
31
34
  { key: exports.PERMISSIONS.DB_VIEW, group: "Database", description: "View the list of databases and dashboard database counts" },
@@ -50,6 +53,9 @@ exports.PERMISSION_CATALOGUE = [
50
53
  { key: exports.PERMISSIONS.USER_DELETE, group: "User Management", description: "Delete a user" },
51
54
  { key: exports.PERMISSIONS.ROLE_VIEW, group: "Role Management", description: "View the list of roles and the permission catalogue" },
52
55
  { key: exports.PERMISSIONS.ROLE_CREATE, group: "Role Management", description: "Create new roles from the predefined permission catalogue" },
56
+ { key: exports.PERMISSIONS.INDEX_VIEW, group: "Index", description: "View the list of indexes on a collection" },
57
+ { key: exports.PERMISSIONS.INDEX_CREATE, group: "Index", description: "Create new indexes on a collection" },
58
+ { key: exports.PERMISSIONS.INDEX_DELETE, group: "Index", description: "Delete an index from a collection" },
53
59
  ];
54
60
  exports.ALL_PERMISSION_KEYS = exports.PERMISSION_CATALOGUE.map((entry) => entry.key);
55
61
  const DATA_PLANE_PERMISSIONS = [
@@ -68,6 +74,9 @@ const DATA_PLANE_PERMISSIONS = [
68
74
  exports.PERMISSIONS.DOCUMENT_DELETE,
69
75
  exports.PERMISSIONS.DOCUMENT_AGGREGATE,
70
76
  exports.PERMISSIONS.DASHBOARD_VIEW,
77
+ exports.PERMISSIONS.INDEX_VIEW,
78
+ exports.PERMISSIONS.INDEX_CREATE,
79
+ exports.PERMISSIONS.INDEX_DELETE,
71
80
  ];
72
81
  const VIEW_ONLY_PERMISSIONS = [
73
82
  exports.PERMISSIONS.DB_VIEW,
@@ -76,6 +85,7 @@ const VIEW_ONLY_PERMISSIONS = [
76
85
  exports.PERMISSIONS.DOCUMENT_QUERY,
77
86
  exports.PERMISSIONS.DOCUMENT_AGGREGATE,
78
87
  exports.PERMISSIONS.DASHBOARD_VIEW,
88
+ exports.PERMISSIONS.INDEX_VIEW,
79
89
  ];
80
90
  exports.SUPER_ADMIN_ROLE = "Super Admin";
81
91
  exports.ADMIN_ROLE = "Admin";
@@ -98,4 +108,14 @@ exports.DEFAULT_ADMIN_PASSWORD = "admin";
98
108
  exports.SESSION_COOKIE_NAME = "axiodb_session";
99
109
  exports.SESSION_TTL_MS = 24 * 60 * 60 * 1000; // 24 hours
100
110
  exports.SESSION_SWEEP_INTERVAL_MS = 5 * 60 * 1000; // 5 minutes
111
+ /**
112
+ * Login rate limiting - shared by the GUI's /auth/login route and the TCP AUTHENTICATE
113
+ * command (see LoginRateLimiter.service.ts). Tracked per client IP: after
114
+ * LOGIN_RATE_LIMIT_MAX_ATTEMPTS failures within LOGIN_RATE_LIMIT_WINDOW_MS, that IP is
115
+ * locked out for LOGIN_RATE_LIMIT_COOLDOWN_MS.
116
+ */
117
+ exports.LOGIN_RATE_LIMIT_MAX_ATTEMPTS = 5;
118
+ exports.LOGIN_RATE_LIMIT_WINDOW_MS = 15 * 60 * 1000; // 15 minutes
119
+ exports.LOGIN_RATE_LIMIT_COOLDOWN_MS = 15 * 60 * 1000; // 15 minutes
120
+ exports.LOGIN_RATE_LIMIT_SWEEP_INTERVAL_MS = 5 * 60 * 1000; // 5 minutes
101
121
  //# sourceMappingURL=Permissions.js.map
@@ -1 +1 @@
1
- {"version":3,"file":"Permissions.js","sourceRoot":"","sources":["../../../source/config/Keys/Permissions.ts"],"names":[],"mappings":"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"}
1
+ {"version":3,"file":"Permissions.js","sourceRoot":"","sources":["../../../source/config/Keys/Permissions.ts"],"names":[],"mappings":"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"}
@@ -121,6 +121,32 @@ exports.AvailableRoutes = [
121
121
  },
122
122
  ],
123
123
  },
124
+ {
125
+ groupName: "Index",
126
+ description: "Index Management Endpoints",
127
+ Paths: [
128
+ {
129
+ method: "GET",
130
+ path: "/api/index/list/?dbName&collectionName",
131
+ description: "List all indexes registered on a collection",
132
+ },
133
+ {
134
+ method: "POST",
135
+ path: "/api/index/create/",
136
+ description: "Create one or more indexes on a collection",
137
+ payload: {
138
+ dbName: "string",
139
+ collectionName: "string",
140
+ fieldNames: "array",
141
+ },
142
+ },
143
+ {
144
+ method: "DELETE",
145
+ path: "/api/index/delete/?dbName&collectionName&indexName",
146
+ description: "Delete an index from a collection",
147
+ },
148
+ ],
149
+ },
124
150
  {
125
151
  groupName: "CRUD Operations",
126
152
  description: "CRUD Operations Endpoints",
@@ -1 +1 @@
1
- {"version":3,"file":"keys.js","sourceRoot":"","sources":["../../../source/server/config/keys.ts"],"names":[],"mappings":"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"}
1
+ {"version":3,"file":"keys.js","sourceRoot":"","sources":["../../../source/server/config/keys.ts"],"names":[],"mappings":";;;;;;AAAA,uDAAuD;AACvD,gDAAwB;AAExB,IAAY,UASX;AATD,WAAY,UAAU;IACpB,+CAAY,CAAA;IACZ,mCAAqB,CAAA;IACrB,wCAA0B,CAAA;IAC1B,kDAAoC,CAAA;IACpC,oDAAsC,CAAA;IACtC,uEAAyD,CAAA;IACzD,iDAAwB,IAAI,CAAC,GAAG,EAAE,2BAAA,CAAA;IAClC,uEAAsB,CAAA;AACxB,CAAC,EATW,UAAU,aAAV,UAAU,GAAV,UAAU,QASrB;AAED,kBAAkB;AAClB,+EAA+E;AAC/E,gFAAgF;AAChF,6EAA6E;AAC7E,6DAA6D;AAChD,QAAA,WAAW,GAAG;IACzB,MAAM,EAAE,CAAC,uBAAuB,EAAE,wBAAwB,CAAC;IAC3D,OAAO,EAAE,CAAC,KAAK,EAAE,MAAM,EAAE,KAAK,EAAE,OAAO,EAAE,MAAM,EAAE,QAAQ,CAAC;IAC1D,eAAe,EAAE,CAAC,cAAc,EAAE,eAAe,CAAC;IAClD,eAAe,EAAE,CAAC,gBAAgB,EAAE,kBAAkB,CAAC;IACvD,OAAO,EAAE,KAAK,EAAE,sBAAsB;IACtC,iBAAiB,EAAE,IAAI;CACxB,CAAC;AAEW,QAAA,UAAU,GAAW,cAAI,CAAC,OAAO,CAC5C,SAAS,EACT,uBAAuB,CACxB,CAAC;AAcF,SAAS;AACI,QAAA,eAAe,GAA0B;IACpD;QACE,SAAS,EAAE,aAAa;QACxB,WAAW,EAAE,uBAAuB;QACpC,KAAK,EAAE;YACL;gBACE,MAAM,EAAE,KAAK;gBACb,IAAI,EAAE,WAAW;gBACjB,WAAW,EAAE,2CAA2C;aACzD;YACD;gBACE,MAAM,EAAE,KAAK;gBACb,IAAI,EAAE,aAAa;gBACnB,WAAW,EAAE,+CAA+C;aAC7D;YACD;gBACE,MAAM,EAAE,KAAK;gBACb,IAAI,EAAE,aAAa;gBACnB,WAAW,EAAE,+BAA+B;aAC7C;SACF;KACF;IACD;QACE,SAAS,EAAE,UAAU;QACrB,WAAW,EAAE,+BAA+B;QAC5C,KAAK,EAAE;YACL;gBACE,MAAM,EAAE,KAAK;gBACb,IAAI,EAAE,oBAAoB;gBAC1B,WAAW,EAAE,6BAA6B;aAC3C;YACD;gBACE,MAAM,EAAE,MAAM;gBACd,IAAI,EAAE,0BAA0B;gBAChC,WAAW,EAAE,uBAAuB;gBACpC,OAAO,EAAE;oBACP,IAAI,EAAE,QAAQ;iBACf;aACF;YACD;gBACE,MAAM,EAAE,QAAQ;gBAChB,IAAI,EAAE,0BAA0B;gBAChC,WAAW,EAAE,mBAAmB;gBAChC,OAAO,EAAE;oBACP,IAAI,EAAE,QAAQ;iBACf;aACF;YACD;gBACE,MAAM,EAAE,KAAK;gBACb,IAAI,EAAE,iCAAiC;gBACvC,WAAW,EAAE,wCAAwC;aACtD;YACD;gBACE,MAAM,EAAE,MAAM;gBACd,IAAI,EAAE,0BAA0B;gBAChC,WAAW,EAAE,0CAA0C;gBACvD,OAAO,EAAE;oBACP,IAAI,EAAE,MAAM;iBACb;aACF;SACF;KACF;IACD;QACE,SAAS,EAAE,YAAY;QACvB,WAAW,EAAE,iCAAiC;QAC9C,KAAK,EAAE;YACL;gBACE,MAAM,EAAE,KAAK;gBACb,IAAI,EAAE,mCAAmC;gBACzC,WAAW,EAAE,+BAA+B;aAC7C;YACD;gBACE,MAAM,EAAE,MAAM;gBACd,IAAI,EAAE,oCAAoC;gBAC1C,WAAW,EAAE,yBAAyB;gBACtC,OAAO,EAAE;oBACP,MAAM,EAAE,QAAQ;oBAChB,cAAc,EAAE,QAAQ;oBACxB,MAAM,EAAE,SAAS;oBACjB,GAAG,EAAE,QAAQ;iBACd;aACF;YACD;gBACE,MAAM,EAAE,QAAQ;gBAChB,IAAI,EAAE,0DAA0D;gBAChE,WAAW,EAAE,qBAAqB;aACnC;SACF;KACF;IACD;QACE,SAAS,EAAE,OAAO;QAClB,WAAW,EAAE,4BAA4B;QACzC,KAAK,EAAE;YACL;gBACE,MAAM,EAAE,KAAK;gBACb,IAAI,EAAE,wCAAwC;gBAC9C,WAAW,EAAE,6CAA6C;aAC3D;YACD;gBACE,MAAM,EAAE,MAAM;gBACd,IAAI,EAAE,oBAAoB;gBAC1B,WAAW,EAAE,4CAA4C;gBACzD,OAAO,EAAE;oBACP,MAAM,EAAE,QAAQ;oBAChB,cAAc,EAAE,QAAQ;oBACxB,UAAU,EAAE,OAAO;iBACpB;aACF;YACD;gBACE,MAAM,EAAE,QAAQ;gBAChB,IAAI,EAAE,oDAAoD;gBAC1D,WAAW,EAAE,mCAAmC;aACjD;SACF;KACF;IACD;QACE,SAAS,EAAE,iBAAiB;QAC5B,WAAW,EAAE,2BAA2B;QACxC,KAAK,EAAE;YACL;gBACE,MAAM,EAAE,KAAK;gBACb,WAAW,EAAE,qCAAqC;gBAClD,IAAI,EAAE,gDAAgD;aACvD;YACD;gBACE,MAAM,EAAE,MAAM;gBACd,WAAW,EAAE,8CAA8C;gBAC3D,IAAI,EAAE,yDAAyD;gBAC/D,OAAO,EAAE;oBACP,KAAK,EAAE,QAAQ;iBAChB;aACF;YACD;gBACE,MAAM,EAAE,KAAK;gBACb,WAAW,EAAE,gDAAgD;gBAC7D,IAAI,EAAE,4DAA4D;aACnE;YACD;gBACE,MAAM,EAAE,MAAM;gBACd,WAAW,EAAE,uCAAuC;gBACpD,IAAI,EAAE,8CAA8C;gBACpD,OAAO,EAAE;oBACP,QAAQ,EAAE,iCAAiC;iBAC5C;aACF;YACD;gBACE,MAAM,EAAE,MAAM;gBACd,WAAW,EAAE,uCAAuC;gBACpD,IAAI,EAAE,mDAAmD;gBACzD,OAAO,EAAE;oBACP,SAAS,EAAE,0CAA0C;iBACtD;aACF;YACD;gBACE,MAAM,EAAE,KAAK;gBACb,WAAW,EAAE,mDAAmD;gBAChE,IAAI,EAAE,+DAA+D;gBACrE,OAAO,EAAE;oBACP,QAAQ,EAAE,iCAAiC;iBAC5C;aACF;YACD;gBACE,MAAM,EAAE,KAAK;gBACb,WAAW,EAAE,sDAAsD;gBACnE,IAAI,EAAE,8DAA8D;gBACpE,OAAO,EAAE;oBACP,KAAK,EAAE,QAAQ;oBACf,MAAM,EAAE,QAAQ;iBACjB;aACF;YACD;gBACE,MAAM,EAAE,QAAQ;gBAChB,WAAW,EAAE,mDAAmD;gBAChE,IAAI,EAAE,+DAA+D;aACtE;YACD;gBACE,MAAM,EAAE,QAAQ;gBAChB,WAAW,EAAE,sDAAsD;gBACnE,IAAI,EAAE,yEAAyE;gBAC/E,OAAO,EAAE;oBACP,KAAK,EAAE,QAAQ;iBAChB;aACF;YACD;gBACE,MAAM,EAAE,MAAM;gBACd,WAAW,EACT,gFAAgF;gBAClF,IAAI,EAAE,iDAAiD;gBACvD,OAAO,EAAE;oBACP,WAAW,EAAE,OAAO;iBACrB;aACF;SACF;KACF;IACD;QACE,SAAS,EAAE,gBAAgB;QAC3B,WAAW,EAAE,qDAAqD;QAClE,KAAK,EAAE;YACL;gBACE,MAAM,EAAE,MAAM;gBACd,IAAI,EAAE,iBAAiB;gBACvB,WAAW,EAAE,yDAAyD;gBACtE,OAAO,EAAE,EAAE,QAAQ,EAAE,QAAQ,EAAE,QAAQ,EAAE,QAAQ,EAAE;aACpD;YACD;gBACE,MAAM,EAAE,MAAM;gBACd,IAAI,EAAE,kBAAkB;gBACxB,WAAW,EAAE,yBAAyB;aACvC;YACD;gBACE,MAAM,EAAE,KAAK;gBACb,IAAI,EAAE,cAAc;gBACpB,WAAW,EAAE,6DAA6D;aAC3E;YACD;gBACE,MAAM,EAAE,OAAO;gBACf,IAAI,EAAE,2BAA2B;gBACjC,WAAW,EAAE,wCAAwC;gBACrD,OAAO,EAAE,EAAE,eAAe,EAAE,QAAQ,EAAE,WAAW,EAAE,QAAQ,EAAE;aAC9D;SACF;KACF;IACD;QACE,SAAS,EAAE,wBAAwB;QACnC,WAAW,EAAE,yDAAyD;QACtE,KAAK,EAAE;YACL;gBACE,MAAM,EAAE,KAAK;gBACb,IAAI,EAAE,iBAAiB;gBACvB,WAAW,EAAE,gBAAgB;aAC9B;YACD;gBACE,MAAM,EAAE,MAAM;gBACd,IAAI,EAAE,iBAAiB;gBACvB,WAAW,EAAE,mBAAmB;gBAChC,OAAO,EAAE,EAAE,QAAQ,EAAE,QAAQ,EAAE,QAAQ,EAAE,QAAQ,EAAE,IAAI,EAAE,QAAQ,EAAE;aACpE;YACD;gBACE,MAAM,EAAE,OAAO;gBACf,IAAI,EAAE,gCAAgC;gBACtC,WAAW,EAAE,+BAA+B;gBAC5C,OAAO,EAAE,EAAE,IAAI,EAAE,QAAQ,EAAE;aAC5B;YACD;gBACE,MAAM,EAAE,OAAO;gBACf,IAAI,EAAE,0CAA0C;gBAChD,WAAW,EAAE,uDAAuD;gBACpE,OAAO,EAAE,EAAE,WAAW,EAAE,QAAQ,EAAE;aACnC;YACD;gBACE,MAAM,EAAE,QAAQ;gBAChB,IAAI,EAAE,2BAA2B;gBACjC,WAAW,EAAE,eAAe;aAC7B;YACD;gBACE,MAAM,EAAE,KAAK;gBACb,IAAI,EAAE,iBAAiB;gBACvB,WAAW,EAAE,gBAAgB;aAC9B;YACD;gBACE,MAAM,EAAE,MAAM;gBACd,IAAI,EAAE,iBAAiB;gBACvB,WAAW,EAAE,4DAA4D;gBACzE,OAAO,EAAE,EAAE,QAAQ,EAAE,QAAQ,EAAE,WAAW,EAAE,OAAO,EAAE;aACtD;YACD;gBACE,MAAM,EAAE,KAAK;gBACb,IAAI,EAAE,6BAA6B;gBACnC,WAAW,EAAE,+CAA+C;aAC7D;SACF;KACF;CACF,CAAC;AAWW,QAAA,UAAU,GAAmB;IACxC,IAAI,EAAE,YAAY;IAClB,WAAW,EAAE,mBAAmB;IAChC,OAAO,EAAE,OAAO;IAChB,KAAK,EAAE,6BAA6B;IACpC,QAAQ,EAAE,2CAA2C;IACrD,MAAM,EAAE,8BAA8B;CACvC,CAAC"}
@@ -51,6 +51,8 @@ const AuthService_service_1 = __importDefault(require("../../../Services/Auth/Au
51
51
  const SessionStore_service_1 = __importDefault(require("../../../Services/Auth/SessionStore.service"));
52
52
  const CookieCodec_helper_1 = __importDefault(require("../../../Services/Auth/CookieCodec.helper"));
53
53
  const PermissionChecker_helper_1 = __importDefault(require("../../../Services/Auth/PermissionChecker.helper"));
54
+ const AuthEvents_service_1 = __importDefault(require("../../../Services/Auth/AuthEvents.service"));
55
+ const LoginRateLimiter_service_1 = __importDefault(require("../../../Services/Auth/LoginRateLimiter.service"));
54
56
  const Permissions_1 = require("../../../config/Keys/Permissions");
55
57
  const MIN_PASSWORD_LENGTH = 4;
56
58
  class AuthController {
@@ -66,10 +68,16 @@ class AuthController {
66
68
  if (!password || typeof password !== "string") {
67
69
  return (0, responseBuilder_helper_1.sendResponse)(reply, (0, responseBuilder_helper_1.default)(StatusCode_1.StatusCodes.BAD_REQUEST, "Password is required"));
68
70
  }
71
+ const cooldownRemaining = LoginRateLimiter_service_1.default.getCooldownRemaining(request.ip);
72
+ if (cooldownRemaining > 0) {
73
+ return (0, responseBuilder_helper_1.sendResponse)(reply, (0, responseBuilder_helper_1.default)(StatusCode_1.StatusCodes.TOO_MANY_REQUESTS, `Too many failed login attempts. Try again in ${Math.ceil(cooldownRemaining / 1000)}s.`));
74
+ }
69
75
  const result = yield this.authService.login(username, password);
70
76
  if (!result.success || !result.user) {
77
+ LoginRateLimiter_service_1.default.recordFailure(request.ip);
71
78
  return (0, responseBuilder_helper_1.sendResponse)(reply, (0, responseBuilder_helper_1.default)(StatusCode_1.StatusCodes.UNAUTHORIZED, result.message));
72
79
  }
80
+ LoginRateLimiter_service_1.default.recordSuccess(request.ip);
73
81
  const session = SessionStore_service_1.default.createSession(result.user.username, result.user.role, result.user.mustChangePassword);
74
82
  this.setSessionCookie(reply, session.sid);
75
83
  return (0, responseBuilder_helper_1.sendResponse)(reply, (0, responseBuilder_helper_1.default)(StatusCode_1.StatusCodes.OK, "Login successful", {
@@ -123,6 +131,7 @@ class AuthController {
123
131
  }
124
132
  // Rotate the session so a still-live cookie can't keep referencing the old password state.
125
133
  SessionStore_service_1.default.revokeSessionsForUser(authUser.username);
134
+ AuthEvents_service_1.default.emit("user-revoked", authUser.username);
126
135
  const session = SessionStore_service_1.default.createSession(authUser.username, authUser.role, false);
127
136
  this.setSessionCookie(reply, session.sid);
128
137
  return (0, responseBuilder_helper_1.sendResponse)(reply, (0, responseBuilder_helper_1.default)(StatusCode_1.StatusCodes.OK, "Password changed successfully", {
@@ -1 +1 @@
1
- {"version":3,"file":"Auth.controller.js","sourceRoot":"","sources":["../../../../source/server/controller/Auth/Auth.controller.ts"],"names":[],"mappings":"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"}
1
+ {"version":3,"file":"Auth.controller.js","sourceRoot":"","sources":["../../../../source/server/controller/Auth/Auth.controller.ts"],"names":[],"mappings":"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"}
@@ -0,0 +1,35 @@
1
+ import { AxioDB } from "../../../Services/Indexation.operation";
2
+ import { ResponseBuilder } from "../../helper/responseBuilder.helper";
3
+ import { FastifyRequest } from "fastify";
4
+ /**
5
+ * Controller class for managing indexes on a collection in AxioDB.
6
+ *
7
+ * This class provides methods for listing, creating, and deleting indexes on a
8
+ * collection within the AxioDB instance. It acts as an interface between the API
9
+ * routes and the AxioDB instance.
10
+ */
11
+ export default class IndexController {
12
+ private AxioDBInstance;
13
+ constructor(AxioDBInstance: AxioDB);
14
+ /**
15
+ * Lists all indexes registered on the specified collection.
16
+ *
17
+ * @param request - The Fastify request object containing `dbName`/`collectionName` query parameters
18
+ * @returns A ResponseBuilder object containing the list of index metadata entries
19
+ */
20
+ getIndexes(request: FastifyRequest): Promise<ResponseBuilder>;
21
+ /**
22
+ * Creates one or more indexes on the specified collection.
23
+ *
24
+ * @param request - The Fastify request object containing `dbName`/`collectionName`/`fieldNames` in the body
25
+ * @returns A ResponseBuilder object with appropriate status code and message
26
+ */
27
+ createIndex(request: FastifyRequest): Promise<ResponseBuilder>;
28
+ /**
29
+ * Deletes an index from the specified collection.
30
+ *
31
+ * @param request - The Fastify request object containing `dbName`/`collectionName`/`indexName` query parameters
32
+ * @returns A ResponseBuilder object with appropriate status code and message
33
+ */
34
+ deleteIndex(request: FastifyRequest): Promise<ResponseBuilder>;
35
+ }
@@ -0,0 +1,148 @@
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 StatusCode_1 = require("../../../config/Keys/StatusCode");
16
+ const responseBuilder_helper_1 = __importDefault(require("../../helper/responseBuilder.helper"));
17
+ const Permissions_1 = require("../../../config/Keys/Permissions");
18
+ /**
19
+ * Controller class for managing indexes on a collection in AxioDB.
20
+ *
21
+ * This class provides methods for listing, creating, and deleting indexes on a
22
+ * collection within the AxioDB instance. It acts as an interface between the API
23
+ * routes and the AxioDB instance.
24
+ */
25
+ class IndexController {
26
+ constructor(AxioDBInstance) {
27
+ this.AxioDBInstance = AxioDBInstance;
28
+ }
29
+ /**
30
+ * Lists all indexes registered on the specified collection.
31
+ *
32
+ * @param request - The Fastify request object containing `dbName`/`collectionName` query parameters
33
+ * @returns A ResponseBuilder object containing the list of index metadata entries
34
+ */
35
+ getIndexes(request) {
36
+ return __awaiter(this, void 0, void 0, function* () {
37
+ const { dbName, collectionName } = request.query;
38
+ if (!dbName || typeof dbName !== "string") {
39
+ return (0, responseBuilder_helper_1.default)(StatusCode_1.StatusCodes.BAD_REQUEST, "Invalid database name");
40
+ }
41
+ if (!collectionName || typeof collectionName !== "string") {
42
+ return (0, responseBuilder_helper_1.default)(StatusCode_1.StatusCodes.BAD_REQUEST, "Invalid collection name");
43
+ }
44
+ if ((0, Permissions_1.isReservedDatabaseName)(dbName)) {
45
+ return (0, responseBuilder_helper_1.default)(StatusCode_1.StatusCodes.FORBIDDEN, "This is a reserved system database");
46
+ }
47
+ const databaseInstance = yield this.AxioDBInstance.createDB(dbName);
48
+ const isCollectionExists = yield databaseInstance.isCollectionExists(collectionName);
49
+ if (!isCollectionExists) {
50
+ return (0, responseBuilder_helper_1.default)(StatusCode_1.StatusCodes.NOT_FOUND, "Collection not found");
51
+ }
52
+ try {
53
+ const collection = yield databaseInstance.createCollection(collectionName);
54
+ const result = yield collection.getIndexes();
55
+ if ("message" in result && result.message) {
56
+ return (0, responseBuilder_helper_1.default)(StatusCode_1.StatusCodes.INTERNAL_SERVER_ERROR, result.message);
57
+ }
58
+ return (0, responseBuilder_helper_1.default)(StatusCode_1.StatusCodes.OK, "Indexes retrieved successfully", result.data);
59
+ }
60
+ catch (error) {
61
+ console.error("Error retrieving indexes:", error);
62
+ return (0, responseBuilder_helper_1.default)(StatusCode_1.StatusCodes.INTERNAL_SERVER_ERROR, "Failed to retrieve indexes");
63
+ }
64
+ });
65
+ }
66
+ /**
67
+ * Creates one or more indexes on the specified collection.
68
+ *
69
+ * @param request - The Fastify request object containing `dbName`/`collectionName`/`fieldNames` in the body
70
+ * @returns A ResponseBuilder object with appropriate status code and message
71
+ */
72
+ createIndex(request) {
73
+ return __awaiter(this, void 0, void 0, function* () {
74
+ const { dbName, collectionName, fieldNames } = request.body;
75
+ if (!dbName || typeof dbName !== "string") {
76
+ return (0, responseBuilder_helper_1.default)(StatusCode_1.StatusCodes.BAD_REQUEST, "Invalid database name");
77
+ }
78
+ if (!collectionName || typeof collectionName !== "string") {
79
+ return (0, responseBuilder_helper_1.default)(StatusCode_1.StatusCodes.BAD_REQUEST, "Invalid collection name");
80
+ }
81
+ if (!Array.isArray(fieldNames) || fieldNames.length === 0) {
82
+ return (0, responseBuilder_helper_1.default)(StatusCode_1.StatusCodes.BAD_REQUEST, "fieldNames must be a non-empty array");
83
+ }
84
+ if ((0, Permissions_1.isReservedDatabaseName)(dbName)) {
85
+ return (0, responseBuilder_helper_1.default)(StatusCode_1.StatusCodes.FORBIDDEN, "This is a reserved system database");
86
+ }
87
+ const databaseInstance = yield this.AxioDBInstance.createDB(dbName);
88
+ const isCollectionExists = yield databaseInstance.isCollectionExists(collectionName);
89
+ if (!isCollectionExists) {
90
+ return (0, responseBuilder_helper_1.default)(StatusCode_1.StatusCodes.NOT_FOUND, "Collection not found");
91
+ }
92
+ try {
93
+ const collection = yield databaseInstance.createCollection(collectionName);
94
+ const result = yield collection.newIndex(...fieldNames);
95
+ const message = result && "message" in result && result.message
96
+ ? result.message
97
+ : "Index created successfully";
98
+ return (0, responseBuilder_helper_1.default)(StatusCode_1.StatusCodes.CREATED, message, result === null || result === void 0 ? void 0 : result.data);
99
+ }
100
+ catch (error) {
101
+ console.error("Error creating index:", error);
102
+ return (0, responseBuilder_helper_1.default)(StatusCode_1.StatusCodes.INTERNAL_SERVER_ERROR, "Failed to create index");
103
+ }
104
+ });
105
+ }
106
+ /**
107
+ * Deletes an index from the specified collection.
108
+ *
109
+ * @param request - The Fastify request object containing `dbName`/`collectionName`/`indexName` query parameters
110
+ * @returns A ResponseBuilder object with appropriate status code and message
111
+ */
112
+ deleteIndex(request) {
113
+ return __awaiter(this, void 0, void 0, function* () {
114
+ const { dbName, collectionName, indexName } = request.query;
115
+ if (!dbName || typeof dbName !== "string") {
116
+ return (0, responseBuilder_helper_1.default)(StatusCode_1.StatusCodes.BAD_REQUEST, "Invalid database name");
117
+ }
118
+ if (!collectionName || typeof collectionName !== "string") {
119
+ return (0, responseBuilder_helper_1.default)(StatusCode_1.StatusCodes.BAD_REQUEST, "Invalid collection name");
120
+ }
121
+ if (!indexName || typeof indexName !== "string") {
122
+ return (0, responseBuilder_helper_1.default)(StatusCode_1.StatusCodes.BAD_REQUEST, "Invalid index name");
123
+ }
124
+ if ((0, Permissions_1.isReservedDatabaseName)(dbName)) {
125
+ return (0, responseBuilder_helper_1.default)(StatusCode_1.StatusCodes.FORBIDDEN, "This is a reserved system database");
126
+ }
127
+ const databaseInstance = yield this.AxioDBInstance.createDB(dbName);
128
+ const isCollectionExists = yield databaseInstance.isCollectionExists(collectionName);
129
+ if (!isCollectionExists) {
130
+ return (0, responseBuilder_helper_1.default)(StatusCode_1.StatusCodes.NOT_FOUND, "Collection not found");
131
+ }
132
+ try {
133
+ const collection = yield databaseInstance.createCollection(collectionName);
134
+ const result = yield collection.dropIndex(indexName);
135
+ if ("message" in result && result.message) {
136
+ return (0, responseBuilder_helper_1.default)(StatusCode_1.StatusCodes.NOT_FOUND, result.message);
137
+ }
138
+ return (0, responseBuilder_helper_1.default)(StatusCode_1.StatusCodes.OK, "Index deleted successfully", result.data);
139
+ }
140
+ catch (error) {
141
+ console.error("Error deleting index:", error);
142
+ return (0, responseBuilder_helper_1.default)(StatusCode_1.StatusCodes.INTERNAL_SERVER_ERROR, "Failed to delete index");
143
+ }
144
+ });
145
+ }
146
+ }
147
+ exports.default = IndexController;
148
+ //# sourceMappingURL=Index.controller.js.map