bright-client 0.2.0 → 0.4.0

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.
package/README.md CHANGED
@@ -1,6 +1,6 @@
1
1
  # Bright JS
2
2
 
3
- TypeScript/JavaScript client library for [Bright](https://github.com/nnstd/bright) full-search database.
3
+ TypeScript/JavaScript client library for [Bright](https://github.com/nnstd/bright) full-text search database.
4
4
 
5
5
  ## Installation
6
6
 
package/dist/index.cjs CHANGED
@@ -1,4 +1,244 @@
1
1
 
2
+ //#region src/errors.ts
3
+ var BrightError = class BrightError extends Error {
4
+ constructor(message, statusCode, code, details) {
5
+ super(message);
6
+ this.name = "BrightError";
7
+ this.code = code;
8
+ this.statusCode = statusCode;
9
+ this.details = details;
10
+ Object.setPrototypeOf(this, BrightError.prototype);
11
+ }
12
+ toJSON() {
13
+ return {
14
+ error: this.message,
15
+ code: this.code,
16
+ details: this.details,
17
+ statusCode: this.statusCode
18
+ };
19
+ }
20
+ };
21
+ var ValidationError = class ValidationError extends BrightError {
22
+ constructor(message, code, details) {
23
+ super(message, 400, code, details);
24
+ this.name = "ValidationError";
25
+ Object.setPrototypeOf(this, ValidationError.prototype);
26
+ }
27
+ };
28
+ var MissingParameterError = class MissingParameterError extends ValidationError {
29
+ constructor(message, details) {
30
+ super(message, "MISSING_PARAMETER", details);
31
+ this.name = "MissingParameterError";
32
+ Object.setPrototypeOf(this, MissingParameterError.prototype);
33
+ }
34
+ };
35
+ var InvalidParameterError = class InvalidParameterError extends ValidationError {
36
+ constructor(message, details) {
37
+ super(message, "INVALID_PARAMETER", details);
38
+ this.name = "InvalidParameterError";
39
+ Object.setPrototypeOf(this, InvalidParameterError.prototype);
40
+ }
41
+ };
42
+ var InvalidRequestBodyError = class InvalidRequestBodyError extends ValidationError {
43
+ constructor(message, details) {
44
+ super(message, "INVALID_REQUEST_BODY", details);
45
+ this.name = "InvalidRequestBodyError";
46
+ Object.setPrototypeOf(this, InvalidRequestBodyError.prototype);
47
+ }
48
+ };
49
+ var ConflictingParametersError = class ConflictingParametersError extends ValidationError {
50
+ constructor(message, details) {
51
+ super(message, "CONFLICTING_PARAMETERS", details);
52
+ this.name = "ConflictingParametersError";
53
+ Object.setPrototypeOf(this, ConflictingParametersError.prototype);
54
+ }
55
+ };
56
+ var InvalidFormatError = class InvalidFormatError extends ValidationError {
57
+ constructor(message, details) {
58
+ super(message, "INVALID_FORMAT", details);
59
+ this.name = "InvalidFormatError";
60
+ Object.setPrototypeOf(this, InvalidFormatError.prototype);
61
+ }
62
+ };
63
+ var ParseError = class ParseError extends ValidationError {
64
+ constructor(message, details) {
65
+ super(message, "PARSE_ERROR", details);
66
+ this.name = "ParseError";
67
+ Object.setPrototypeOf(this, ParseError.prototype);
68
+ }
69
+ };
70
+ var NotFoundError = class NotFoundError extends BrightError {
71
+ constructor(message, code, details) {
72
+ super(message, 404, code, details);
73
+ this.name = "NotFoundError";
74
+ Object.setPrototypeOf(this, NotFoundError.prototype);
75
+ }
76
+ };
77
+ var IndexNotFoundError = class IndexNotFoundError extends NotFoundError {
78
+ constructor(message, details) {
79
+ super(message, "INDEX_NOT_FOUND", details);
80
+ this.name = "IndexNotFoundError";
81
+ Object.setPrototypeOf(this, IndexNotFoundError.prototype);
82
+ }
83
+ };
84
+ var DocumentNotFoundError = class DocumentNotFoundError extends NotFoundError {
85
+ constructor(message, details) {
86
+ super(message, "DOCUMENT_NOT_FOUND", details);
87
+ this.name = "DocumentNotFoundError";
88
+ Object.setPrototypeOf(this, DocumentNotFoundError.prototype);
89
+ }
90
+ };
91
+ var ClusterError = class ClusterError extends BrightError {
92
+ constructor(message, statusCode, code, details) {
93
+ super(message, statusCode, code, details);
94
+ this.name = "ClusterError";
95
+ Object.setPrototypeOf(this, ClusterError.prototype);
96
+ }
97
+ };
98
+ var NotLeaderError = class NotLeaderError extends ClusterError {
99
+ constructor(message, leaderUrl, details) {
100
+ super(message, 307, "NOT_LEADER", details);
101
+ this.name = "NotLeaderError";
102
+ this.leaderUrl = leaderUrl;
103
+ Object.setPrototypeOf(this, NotLeaderError.prototype);
104
+ }
105
+ };
106
+ var ClusterUnavailableError = class ClusterUnavailableError extends ClusterError {
107
+ constructor(message, details) {
108
+ super(message, 503, "CLUSTER_UNAVAILABLE", details);
109
+ this.name = "ClusterUnavailableError";
110
+ Object.setPrototypeOf(this, ClusterUnavailableError.prototype);
111
+ }
112
+ };
113
+ var AuthorizationError = class AuthorizationError extends BrightError {
114
+ constructor(message, code, details) {
115
+ super(message, 403, code, details);
116
+ this.name = "AuthorizationError";
117
+ Object.setPrototypeOf(this, AuthorizationError.prototype);
118
+ }
119
+ };
120
+ var InsufficientPermissionsError = class InsufficientPermissionsError extends AuthorizationError {
121
+ constructor(message, details) {
122
+ super(message, "INSUFFICIENT_PERMISSIONS", details);
123
+ this.name = "InsufficientPermissionsError";
124
+ Object.setPrototypeOf(this, InsufficientPermissionsError.prototype);
125
+ }
126
+ };
127
+ var LeaderOnlyOperationError = class LeaderOnlyOperationError extends AuthorizationError {
128
+ constructor(message, details) {
129
+ super(message, "LEADER_ONLY_OPERATION", details);
130
+ this.name = "LeaderOnlyOperationError";
131
+ Object.setPrototypeOf(this, LeaderOnlyOperationError.prototype);
132
+ }
133
+ };
134
+ var ConflictError = class ConflictError extends BrightError {
135
+ constructor(message, code, details) {
136
+ super(message, 409, code, details);
137
+ this.name = "ConflictError";
138
+ Object.setPrototypeOf(this, ConflictError.prototype);
139
+ }
140
+ };
141
+ var ResourceAlreadyExistsError = class ResourceAlreadyExistsError extends ConflictError {
142
+ constructor(message, details) {
143
+ super(message, "RESOURCE_ALREADY_EXISTS", details);
144
+ this.name = "ResourceAlreadyExistsError";
145
+ Object.setPrototypeOf(this, ResourceAlreadyExistsError.prototype);
146
+ }
147
+ };
148
+ var InternalError = class InternalError extends BrightError {
149
+ constructor(message, code, details) {
150
+ super(message, 500, code, details);
151
+ this.name = "InternalError";
152
+ Object.setPrototypeOf(this, InternalError.prototype);
153
+ }
154
+ };
155
+ var UuidGenerationFailedError = class UuidGenerationFailedError extends InternalError {
156
+ constructor(message, details) {
157
+ super(message, "UUID_GENERATION_FAILED", details);
158
+ this.name = "UuidGenerationFailedError";
159
+ Object.setPrototypeOf(this, UuidGenerationFailedError.prototype);
160
+ }
161
+ };
162
+ var SerializationFailedError = class SerializationFailedError extends InternalError {
163
+ constructor(message, details) {
164
+ super(message, "SERIALIZATION_FAILED", details);
165
+ this.name = "SerializationFailedError";
166
+ Object.setPrototypeOf(this, SerializationFailedError.prototype);
167
+ }
168
+ };
169
+ var RaftApplyFailedError = class RaftApplyFailedError extends InternalError {
170
+ constructor(message, details) {
171
+ super(message, "RAFT_APPLY_FAILED", details);
172
+ this.name = "RaftApplyFailedError";
173
+ Object.setPrototypeOf(this, RaftApplyFailedError.prototype);
174
+ }
175
+ };
176
+ var IndexOperationFailedError = class IndexOperationFailedError extends InternalError {
177
+ constructor(message, details) {
178
+ super(message, "INDEX_OPERATION_FAILED", details);
179
+ this.name = "IndexOperationFailedError";
180
+ Object.setPrototypeOf(this, IndexOperationFailedError.prototype);
181
+ }
182
+ };
183
+ var DocumentOperationFailedError = class DocumentOperationFailedError extends InternalError {
184
+ constructor(message, details) {
185
+ super(message, "DOCUMENT_OPERATION_FAILED", details);
186
+ this.name = "DocumentOperationFailedError";
187
+ Object.setPrototypeOf(this, DocumentOperationFailedError.prototype);
188
+ }
189
+ };
190
+ var BatchOperationFailedError = class BatchOperationFailedError extends InternalError {
191
+ constructor(message, details) {
192
+ super(message, "BATCH_OPERATION_FAILED", details);
193
+ this.name = "BatchOperationFailedError";
194
+ Object.setPrototypeOf(this, BatchOperationFailedError.prototype);
195
+ }
196
+ };
197
+ var SearchFailedError = class SearchFailedError extends InternalError {
198
+ constructor(message, details) {
199
+ super(message, "SEARCH_FAILED", details);
200
+ this.name = "SearchFailedError";
201
+ Object.setPrototypeOf(this, SearchFailedError.prototype);
202
+ }
203
+ };
204
+ function createBrightError(statusCode, errorResponse) {
205
+ const { error: message, code, details } = errorResponse;
206
+ if (code) switch (code) {
207
+ case "MISSING_PARAMETER": return new MissingParameterError(message, details);
208
+ case "INVALID_PARAMETER": return new InvalidParameterError(message, details);
209
+ case "INVALID_REQUEST_BODY": return new InvalidRequestBodyError(message, details);
210
+ case "CONFLICTING_PARAMETERS": return new ConflictingParametersError(message, details);
211
+ case "INVALID_FORMAT": return new InvalidFormatError(message, details);
212
+ case "PARSE_ERROR": return new ParseError(message, details);
213
+ case "INDEX_NOT_FOUND": return new IndexNotFoundError(message, details);
214
+ case "DOCUMENT_NOT_FOUND": return new DocumentNotFoundError(message, details);
215
+ case "NOT_LEADER": return new NotLeaderError(message, details?.leaderUrl, details);
216
+ case "CLUSTER_UNAVAILABLE": return new ClusterUnavailableError(message, details);
217
+ case "INSUFFICIENT_PERMISSIONS": return new InsufficientPermissionsError(message, details);
218
+ case "LEADER_ONLY_OPERATION": return new LeaderOnlyOperationError(message, details);
219
+ case "RESOURCE_ALREADY_EXISTS": return new ResourceAlreadyExistsError(message, details);
220
+ case "UUID_GENERATION_FAILED": return new UuidGenerationFailedError(message, details);
221
+ case "SERIALIZATION_FAILED": return new SerializationFailedError(message, details);
222
+ case "RAFT_APPLY_FAILED": return new RaftApplyFailedError(message, details);
223
+ case "INDEX_OPERATION_FAILED": return new IndexOperationFailedError(message, details);
224
+ case "DOCUMENT_OPERATION_FAILED": return new DocumentOperationFailedError(message, details);
225
+ case "BATCH_OPERATION_FAILED": return new BatchOperationFailedError(message, details);
226
+ case "SEARCH_FAILED": return new SearchFailedError(message, details);
227
+ case "INTERNAL_ERROR": return new InternalError(message, code, details);
228
+ }
229
+ switch (statusCode) {
230
+ case 400: return new ValidationError(message, code, details);
231
+ case 404: return new NotFoundError(message, code, details);
232
+ case 403: return new AuthorizationError(message, code, details);
233
+ case 409: return new ConflictError(message, code, details);
234
+ case 307:
235
+ case 503: return new ClusterError(message, statusCode, code, details);
236
+ case 500: return new InternalError(message, code, details);
237
+ default: return new BrightError(message, statusCode, code, details);
238
+ }
239
+ }
240
+
241
+ //#endregion
2
242
  //#region src/index.ts
3
243
  var BrightClient = class {
4
244
  constructor(options) {
@@ -15,8 +255,8 @@ var BrightClient = class {
15
255
  }
16
256
  });
17
257
  if (!response.ok) {
18
- const error = await response.json().catch(() => ({ error: response.statusText }));
19
- throw new Error(error.error || `HTTP ${response.status}`);
258
+ const errorResponse = await response.json().catch(() => ({ error: response.statusText }));
259
+ throw createBrightError(response.status, errorResponse);
20
260
  }
21
261
  if (response.status === 204) return;
22
262
  return response.json();
@@ -87,5 +327,33 @@ function createClient(options) {
87
327
  }
88
328
 
89
329
  //#endregion
330
+ exports.AuthorizationError = AuthorizationError;
331
+ exports.BatchOperationFailedError = BatchOperationFailedError;
90
332
  exports.BrightClient = BrightClient;
333
+ exports.BrightError = BrightError;
334
+ exports.ClusterError = ClusterError;
335
+ exports.ClusterUnavailableError = ClusterUnavailableError;
336
+ exports.ConflictError = ConflictError;
337
+ exports.ConflictingParametersError = ConflictingParametersError;
338
+ exports.DocumentNotFoundError = DocumentNotFoundError;
339
+ exports.DocumentOperationFailedError = DocumentOperationFailedError;
340
+ exports.IndexNotFoundError = IndexNotFoundError;
341
+ exports.IndexOperationFailedError = IndexOperationFailedError;
342
+ exports.InsufficientPermissionsError = InsufficientPermissionsError;
343
+ exports.InternalError = InternalError;
344
+ exports.InvalidFormatError = InvalidFormatError;
345
+ exports.InvalidParameterError = InvalidParameterError;
346
+ exports.InvalidRequestBodyError = InvalidRequestBodyError;
347
+ exports.LeaderOnlyOperationError = LeaderOnlyOperationError;
348
+ exports.MissingParameterError = MissingParameterError;
349
+ exports.NotFoundError = NotFoundError;
350
+ exports.NotLeaderError = NotLeaderError;
351
+ exports.ParseError = ParseError;
352
+ exports.RaftApplyFailedError = RaftApplyFailedError;
353
+ exports.ResourceAlreadyExistsError = ResourceAlreadyExistsError;
354
+ exports.SearchFailedError = SearchFailedError;
355
+ exports.SerializationFailedError = SerializationFailedError;
356
+ exports.UuidGenerationFailedError = UuidGenerationFailedError;
357
+ exports.ValidationError = ValidationError;
358
+ exports.createBrightError = createBrightError;
91
359
  exports.createClient = createClient;
package/dist/index.d.cts CHANGED
@@ -1,3 +1,100 @@
1
+ //#region src/errors.d.ts
2
+ type ErrorCode = 'MISSING_PARAMETER' | 'INVALID_PARAMETER' | 'INVALID_REQUEST_BODY' | 'CONFLICTING_PARAMETERS' | 'INVALID_FORMAT' | 'PARSE_ERROR' | 'INDEX_NOT_FOUND' | 'DOCUMENT_NOT_FOUND' | 'NOT_LEADER' | 'CLUSTER_UNAVAILABLE' | 'INSUFFICIENT_PERMISSIONS' | 'LEADER_ONLY_OPERATION' | 'RESOURCE_ALREADY_EXISTS' | 'UUID_GENERATION_FAILED' | 'SERIALIZATION_FAILED' | 'RAFT_APPLY_FAILED' | 'INDEX_OPERATION_FAILED' | 'DOCUMENT_OPERATION_FAILED' | 'BATCH_OPERATION_FAILED' | 'SEARCH_FAILED' | 'INTERNAL_ERROR';
3
+ interface BrightErrorResponse {
4
+ error: string;
5
+ code?: ErrorCode;
6
+ details?: Record<string, any>;
7
+ }
8
+ declare class BrightError extends Error {
9
+ readonly code?: ErrorCode;
10
+ readonly statusCode: number;
11
+ readonly details?: Record<string, any>;
12
+ constructor(message: string, statusCode: number, code?: ErrorCode, details?: Record<string, any>);
13
+ toJSON(): BrightErrorResponse & {
14
+ statusCode: number;
15
+ };
16
+ }
17
+ declare class ValidationError extends BrightError {
18
+ constructor(message: string, code?: ErrorCode, details?: Record<string, any>);
19
+ }
20
+ declare class MissingParameterError extends ValidationError {
21
+ constructor(message: string, details?: Record<string, any>);
22
+ }
23
+ declare class InvalidParameterError extends ValidationError {
24
+ constructor(message: string, details?: Record<string, any>);
25
+ }
26
+ declare class InvalidRequestBodyError extends ValidationError {
27
+ constructor(message: string, details?: Record<string, any>);
28
+ }
29
+ declare class ConflictingParametersError extends ValidationError {
30
+ constructor(message: string, details?: Record<string, any>);
31
+ }
32
+ declare class InvalidFormatError extends ValidationError {
33
+ constructor(message: string, details?: Record<string, any>);
34
+ }
35
+ declare class ParseError extends ValidationError {
36
+ constructor(message: string, details?: Record<string, any>);
37
+ }
38
+ declare class NotFoundError extends BrightError {
39
+ constructor(message: string, code?: ErrorCode, details?: Record<string, any>);
40
+ }
41
+ declare class IndexNotFoundError extends NotFoundError {
42
+ constructor(message: string, details?: Record<string, any>);
43
+ }
44
+ declare class DocumentNotFoundError extends NotFoundError {
45
+ constructor(message: string, details?: Record<string, any>);
46
+ }
47
+ declare class ClusterError extends BrightError {
48
+ constructor(message: string, statusCode: number, code?: ErrorCode, details?: Record<string, any>);
49
+ }
50
+ declare class NotLeaderError extends ClusterError {
51
+ readonly leaderUrl?: string;
52
+ constructor(message: string, leaderUrl?: string, details?: Record<string, any>);
53
+ }
54
+ declare class ClusterUnavailableError extends ClusterError {
55
+ constructor(message: string, details?: Record<string, any>);
56
+ }
57
+ declare class AuthorizationError extends BrightError {
58
+ constructor(message: string, code?: ErrorCode, details?: Record<string, any>);
59
+ }
60
+ declare class InsufficientPermissionsError extends AuthorizationError {
61
+ constructor(message: string, details?: Record<string, any>);
62
+ }
63
+ declare class LeaderOnlyOperationError extends AuthorizationError {
64
+ constructor(message: string, details?: Record<string, any>);
65
+ }
66
+ declare class ConflictError extends BrightError {
67
+ constructor(message: string, code?: ErrorCode, details?: Record<string, any>);
68
+ }
69
+ declare class ResourceAlreadyExistsError extends ConflictError {
70
+ constructor(message: string, details?: Record<string, any>);
71
+ }
72
+ declare class InternalError extends BrightError {
73
+ constructor(message: string, code?: ErrorCode, details?: Record<string, any>);
74
+ }
75
+ declare class UuidGenerationFailedError extends InternalError {
76
+ constructor(message: string, details?: Record<string, any>);
77
+ }
78
+ declare class SerializationFailedError extends InternalError {
79
+ constructor(message: string, details?: Record<string, any>);
80
+ }
81
+ declare class RaftApplyFailedError extends InternalError {
82
+ constructor(message: string, details?: Record<string, any>);
83
+ }
84
+ declare class IndexOperationFailedError extends InternalError {
85
+ constructor(message: string, details?: Record<string, any>);
86
+ }
87
+ declare class DocumentOperationFailedError extends InternalError {
88
+ constructor(message: string, details?: Record<string, any>);
89
+ }
90
+ declare class BatchOperationFailedError extends InternalError {
91
+ constructor(message: string, details?: Record<string, any>);
92
+ }
93
+ declare class SearchFailedError extends InternalError {
94
+ constructor(message: string, details?: Record<string, any>);
95
+ }
96
+ declare function createBrightError(statusCode: number, errorResponse: BrightErrorResponse): BrightError;
97
+ //#endregion
1
98
  //#region src/index.d.ts
2
99
  interface IndexConfig {
3
100
  id: string;
@@ -58,5 +155,5 @@ declare class BrightClient {
58
155
  }
59
156
  declare function createClient(options: BrightClientOptions): BrightClient;
60
157
  //#endregion
61
- export { BrightClient, BrightClientOptions, IndexConfig, IndexHandle, SearchParams, SearchResponse, createClient };
158
+ export { AuthorizationError, BatchOperationFailedError, BrightClient, BrightClientOptions, BrightError, BrightErrorResponse, ClusterError, ClusterUnavailableError, ConflictError, ConflictingParametersError, DocumentNotFoundError, DocumentOperationFailedError, ErrorCode, IndexConfig, IndexHandle, IndexNotFoundError, IndexOperationFailedError, InsufficientPermissionsError, InternalError, InvalidFormatError, InvalidParameterError, InvalidRequestBodyError, LeaderOnlyOperationError, MissingParameterError, NotFoundError, NotLeaderError, ParseError, RaftApplyFailedError, ResourceAlreadyExistsError, SearchFailedError, SearchParams, SearchResponse, SerializationFailedError, UuidGenerationFailedError, ValidationError, createBrightError, createClient };
62
159
  //# sourceMappingURL=index.d.cts.map
@@ -1 +1 @@
1
- {"version":3,"file":"index.d.cts","names":[],"sources":["../src/index.ts"],"sourcesContent":[],"mappings":"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"}
1
+ {"version":3,"file":"index.d.cts","names":[],"sources":["../src/errors.ts","../src/index.ts"],"sourcesContent":[],"mappings":"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"}
package/dist/index.d.mts CHANGED
@@ -1,3 +1,100 @@
1
+ //#region src/errors.d.ts
2
+ type ErrorCode = 'MISSING_PARAMETER' | 'INVALID_PARAMETER' | 'INVALID_REQUEST_BODY' | 'CONFLICTING_PARAMETERS' | 'INVALID_FORMAT' | 'PARSE_ERROR' | 'INDEX_NOT_FOUND' | 'DOCUMENT_NOT_FOUND' | 'NOT_LEADER' | 'CLUSTER_UNAVAILABLE' | 'INSUFFICIENT_PERMISSIONS' | 'LEADER_ONLY_OPERATION' | 'RESOURCE_ALREADY_EXISTS' | 'UUID_GENERATION_FAILED' | 'SERIALIZATION_FAILED' | 'RAFT_APPLY_FAILED' | 'INDEX_OPERATION_FAILED' | 'DOCUMENT_OPERATION_FAILED' | 'BATCH_OPERATION_FAILED' | 'SEARCH_FAILED' | 'INTERNAL_ERROR';
3
+ interface BrightErrorResponse {
4
+ error: string;
5
+ code?: ErrorCode;
6
+ details?: Record<string, any>;
7
+ }
8
+ declare class BrightError extends Error {
9
+ readonly code?: ErrorCode;
10
+ readonly statusCode: number;
11
+ readonly details?: Record<string, any>;
12
+ constructor(message: string, statusCode: number, code?: ErrorCode, details?: Record<string, any>);
13
+ toJSON(): BrightErrorResponse & {
14
+ statusCode: number;
15
+ };
16
+ }
17
+ declare class ValidationError extends BrightError {
18
+ constructor(message: string, code?: ErrorCode, details?: Record<string, any>);
19
+ }
20
+ declare class MissingParameterError extends ValidationError {
21
+ constructor(message: string, details?: Record<string, any>);
22
+ }
23
+ declare class InvalidParameterError extends ValidationError {
24
+ constructor(message: string, details?: Record<string, any>);
25
+ }
26
+ declare class InvalidRequestBodyError extends ValidationError {
27
+ constructor(message: string, details?: Record<string, any>);
28
+ }
29
+ declare class ConflictingParametersError extends ValidationError {
30
+ constructor(message: string, details?: Record<string, any>);
31
+ }
32
+ declare class InvalidFormatError extends ValidationError {
33
+ constructor(message: string, details?: Record<string, any>);
34
+ }
35
+ declare class ParseError extends ValidationError {
36
+ constructor(message: string, details?: Record<string, any>);
37
+ }
38
+ declare class NotFoundError extends BrightError {
39
+ constructor(message: string, code?: ErrorCode, details?: Record<string, any>);
40
+ }
41
+ declare class IndexNotFoundError extends NotFoundError {
42
+ constructor(message: string, details?: Record<string, any>);
43
+ }
44
+ declare class DocumentNotFoundError extends NotFoundError {
45
+ constructor(message: string, details?: Record<string, any>);
46
+ }
47
+ declare class ClusterError extends BrightError {
48
+ constructor(message: string, statusCode: number, code?: ErrorCode, details?: Record<string, any>);
49
+ }
50
+ declare class NotLeaderError extends ClusterError {
51
+ readonly leaderUrl?: string;
52
+ constructor(message: string, leaderUrl?: string, details?: Record<string, any>);
53
+ }
54
+ declare class ClusterUnavailableError extends ClusterError {
55
+ constructor(message: string, details?: Record<string, any>);
56
+ }
57
+ declare class AuthorizationError extends BrightError {
58
+ constructor(message: string, code?: ErrorCode, details?: Record<string, any>);
59
+ }
60
+ declare class InsufficientPermissionsError extends AuthorizationError {
61
+ constructor(message: string, details?: Record<string, any>);
62
+ }
63
+ declare class LeaderOnlyOperationError extends AuthorizationError {
64
+ constructor(message: string, details?: Record<string, any>);
65
+ }
66
+ declare class ConflictError extends BrightError {
67
+ constructor(message: string, code?: ErrorCode, details?: Record<string, any>);
68
+ }
69
+ declare class ResourceAlreadyExistsError extends ConflictError {
70
+ constructor(message: string, details?: Record<string, any>);
71
+ }
72
+ declare class InternalError extends BrightError {
73
+ constructor(message: string, code?: ErrorCode, details?: Record<string, any>);
74
+ }
75
+ declare class UuidGenerationFailedError extends InternalError {
76
+ constructor(message: string, details?: Record<string, any>);
77
+ }
78
+ declare class SerializationFailedError extends InternalError {
79
+ constructor(message: string, details?: Record<string, any>);
80
+ }
81
+ declare class RaftApplyFailedError extends InternalError {
82
+ constructor(message: string, details?: Record<string, any>);
83
+ }
84
+ declare class IndexOperationFailedError extends InternalError {
85
+ constructor(message: string, details?: Record<string, any>);
86
+ }
87
+ declare class DocumentOperationFailedError extends InternalError {
88
+ constructor(message: string, details?: Record<string, any>);
89
+ }
90
+ declare class BatchOperationFailedError extends InternalError {
91
+ constructor(message: string, details?: Record<string, any>);
92
+ }
93
+ declare class SearchFailedError extends InternalError {
94
+ constructor(message: string, details?: Record<string, any>);
95
+ }
96
+ declare function createBrightError(statusCode: number, errorResponse: BrightErrorResponse): BrightError;
97
+ //#endregion
1
98
  //#region src/index.d.ts
2
99
  interface IndexConfig {
3
100
  id: string;
@@ -58,5 +155,5 @@ declare class BrightClient {
58
155
  }
59
156
  declare function createClient(options: BrightClientOptions): BrightClient;
60
157
  //#endregion
61
- export { BrightClient, BrightClientOptions, IndexConfig, IndexHandle, SearchParams, SearchResponse, createClient };
158
+ export { AuthorizationError, BatchOperationFailedError, BrightClient, BrightClientOptions, BrightError, BrightErrorResponse, ClusterError, ClusterUnavailableError, ConflictError, ConflictingParametersError, DocumentNotFoundError, DocumentOperationFailedError, ErrorCode, IndexConfig, IndexHandle, IndexNotFoundError, IndexOperationFailedError, InsufficientPermissionsError, InternalError, InvalidFormatError, InvalidParameterError, InvalidRequestBodyError, LeaderOnlyOperationError, MissingParameterError, NotFoundError, NotLeaderError, ParseError, RaftApplyFailedError, ResourceAlreadyExistsError, SearchFailedError, SearchParams, SearchResponse, SerializationFailedError, UuidGenerationFailedError, ValidationError, createBrightError, createClient };
62
159
  //# sourceMappingURL=index.d.mts.map
@@ -1 +1 @@
1
- {"version":3,"file":"index.d.mts","names":[],"sources":["../src/index.ts"],"sourcesContent":[],"mappings":"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"}
1
+ {"version":3,"file":"index.d.mts","names":[],"sources":["../src/errors.ts","../src/index.ts"],"sourcesContent":[],"mappings":"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"}
package/dist/index.mjs CHANGED
@@ -1,3 +1,243 @@
1
+ //#region src/errors.ts
2
+ var BrightError = class BrightError extends Error {
3
+ constructor(message, statusCode, code, details) {
4
+ super(message);
5
+ this.name = "BrightError";
6
+ this.code = code;
7
+ this.statusCode = statusCode;
8
+ this.details = details;
9
+ Object.setPrototypeOf(this, BrightError.prototype);
10
+ }
11
+ toJSON() {
12
+ return {
13
+ error: this.message,
14
+ code: this.code,
15
+ details: this.details,
16
+ statusCode: this.statusCode
17
+ };
18
+ }
19
+ };
20
+ var ValidationError = class ValidationError extends BrightError {
21
+ constructor(message, code, details) {
22
+ super(message, 400, code, details);
23
+ this.name = "ValidationError";
24
+ Object.setPrototypeOf(this, ValidationError.prototype);
25
+ }
26
+ };
27
+ var MissingParameterError = class MissingParameterError extends ValidationError {
28
+ constructor(message, details) {
29
+ super(message, "MISSING_PARAMETER", details);
30
+ this.name = "MissingParameterError";
31
+ Object.setPrototypeOf(this, MissingParameterError.prototype);
32
+ }
33
+ };
34
+ var InvalidParameterError = class InvalidParameterError extends ValidationError {
35
+ constructor(message, details) {
36
+ super(message, "INVALID_PARAMETER", details);
37
+ this.name = "InvalidParameterError";
38
+ Object.setPrototypeOf(this, InvalidParameterError.prototype);
39
+ }
40
+ };
41
+ var InvalidRequestBodyError = class InvalidRequestBodyError extends ValidationError {
42
+ constructor(message, details) {
43
+ super(message, "INVALID_REQUEST_BODY", details);
44
+ this.name = "InvalidRequestBodyError";
45
+ Object.setPrototypeOf(this, InvalidRequestBodyError.prototype);
46
+ }
47
+ };
48
+ var ConflictingParametersError = class ConflictingParametersError extends ValidationError {
49
+ constructor(message, details) {
50
+ super(message, "CONFLICTING_PARAMETERS", details);
51
+ this.name = "ConflictingParametersError";
52
+ Object.setPrototypeOf(this, ConflictingParametersError.prototype);
53
+ }
54
+ };
55
+ var InvalidFormatError = class InvalidFormatError extends ValidationError {
56
+ constructor(message, details) {
57
+ super(message, "INVALID_FORMAT", details);
58
+ this.name = "InvalidFormatError";
59
+ Object.setPrototypeOf(this, InvalidFormatError.prototype);
60
+ }
61
+ };
62
+ var ParseError = class ParseError extends ValidationError {
63
+ constructor(message, details) {
64
+ super(message, "PARSE_ERROR", details);
65
+ this.name = "ParseError";
66
+ Object.setPrototypeOf(this, ParseError.prototype);
67
+ }
68
+ };
69
+ var NotFoundError = class NotFoundError extends BrightError {
70
+ constructor(message, code, details) {
71
+ super(message, 404, code, details);
72
+ this.name = "NotFoundError";
73
+ Object.setPrototypeOf(this, NotFoundError.prototype);
74
+ }
75
+ };
76
+ var IndexNotFoundError = class IndexNotFoundError extends NotFoundError {
77
+ constructor(message, details) {
78
+ super(message, "INDEX_NOT_FOUND", details);
79
+ this.name = "IndexNotFoundError";
80
+ Object.setPrototypeOf(this, IndexNotFoundError.prototype);
81
+ }
82
+ };
83
+ var DocumentNotFoundError = class DocumentNotFoundError extends NotFoundError {
84
+ constructor(message, details) {
85
+ super(message, "DOCUMENT_NOT_FOUND", details);
86
+ this.name = "DocumentNotFoundError";
87
+ Object.setPrototypeOf(this, DocumentNotFoundError.prototype);
88
+ }
89
+ };
90
+ var ClusterError = class ClusterError extends BrightError {
91
+ constructor(message, statusCode, code, details) {
92
+ super(message, statusCode, code, details);
93
+ this.name = "ClusterError";
94
+ Object.setPrototypeOf(this, ClusterError.prototype);
95
+ }
96
+ };
97
+ var NotLeaderError = class NotLeaderError extends ClusterError {
98
+ constructor(message, leaderUrl, details) {
99
+ super(message, 307, "NOT_LEADER", details);
100
+ this.name = "NotLeaderError";
101
+ this.leaderUrl = leaderUrl;
102
+ Object.setPrototypeOf(this, NotLeaderError.prototype);
103
+ }
104
+ };
105
+ var ClusterUnavailableError = class ClusterUnavailableError extends ClusterError {
106
+ constructor(message, details) {
107
+ super(message, 503, "CLUSTER_UNAVAILABLE", details);
108
+ this.name = "ClusterUnavailableError";
109
+ Object.setPrototypeOf(this, ClusterUnavailableError.prototype);
110
+ }
111
+ };
112
+ var AuthorizationError = class AuthorizationError extends BrightError {
113
+ constructor(message, code, details) {
114
+ super(message, 403, code, details);
115
+ this.name = "AuthorizationError";
116
+ Object.setPrototypeOf(this, AuthorizationError.prototype);
117
+ }
118
+ };
119
+ var InsufficientPermissionsError = class InsufficientPermissionsError extends AuthorizationError {
120
+ constructor(message, details) {
121
+ super(message, "INSUFFICIENT_PERMISSIONS", details);
122
+ this.name = "InsufficientPermissionsError";
123
+ Object.setPrototypeOf(this, InsufficientPermissionsError.prototype);
124
+ }
125
+ };
126
+ var LeaderOnlyOperationError = class LeaderOnlyOperationError extends AuthorizationError {
127
+ constructor(message, details) {
128
+ super(message, "LEADER_ONLY_OPERATION", details);
129
+ this.name = "LeaderOnlyOperationError";
130
+ Object.setPrototypeOf(this, LeaderOnlyOperationError.prototype);
131
+ }
132
+ };
133
+ var ConflictError = class ConflictError extends BrightError {
134
+ constructor(message, code, details) {
135
+ super(message, 409, code, details);
136
+ this.name = "ConflictError";
137
+ Object.setPrototypeOf(this, ConflictError.prototype);
138
+ }
139
+ };
140
+ var ResourceAlreadyExistsError = class ResourceAlreadyExistsError extends ConflictError {
141
+ constructor(message, details) {
142
+ super(message, "RESOURCE_ALREADY_EXISTS", details);
143
+ this.name = "ResourceAlreadyExistsError";
144
+ Object.setPrototypeOf(this, ResourceAlreadyExistsError.prototype);
145
+ }
146
+ };
147
+ var InternalError = class InternalError extends BrightError {
148
+ constructor(message, code, details) {
149
+ super(message, 500, code, details);
150
+ this.name = "InternalError";
151
+ Object.setPrototypeOf(this, InternalError.prototype);
152
+ }
153
+ };
154
+ var UuidGenerationFailedError = class UuidGenerationFailedError extends InternalError {
155
+ constructor(message, details) {
156
+ super(message, "UUID_GENERATION_FAILED", details);
157
+ this.name = "UuidGenerationFailedError";
158
+ Object.setPrototypeOf(this, UuidGenerationFailedError.prototype);
159
+ }
160
+ };
161
+ var SerializationFailedError = class SerializationFailedError extends InternalError {
162
+ constructor(message, details) {
163
+ super(message, "SERIALIZATION_FAILED", details);
164
+ this.name = "SerializationFailedError";
165
+ Object.setPrototypeOf(this, SerializationFailedError.prototype);
166
+ }
167
+ };
168
+ var RaftApplyFailedError = class RaftApplyFailedError extends InternalError {
169
+ constructor(message, details) {
170
+ super(message, "RAFT_APPLY_FAILED", details);
171
+ this.name = "RaftApplyFailedError";
172
+ Object.setPrototypeOf(this, RaftApplyFailedError.prototype);
173
+ }
174
+ };
175
+ var IndexOperationFailedError = class IndexOperationFailedError extends InternalError {
176
+ constructor(message, details) {
177
+ super(message, "INDEX_OPERATION_FAILED", details);
178
+ this.name = "IndexOperationFailedError";
179
+ Object.setPrototypeOf(this, IndexOperationFailedError.prototype);
180
+ }
181
+ };
182
+ var DocumentOperationFailedError = class DocumentOperationFailedError extends InternalError {
183
+ constructor(message, details) {
184
+ super(message, "DOCUMENT_OPERATION_FAILED", details);
185
+ this.name = "DocumentOperationFailedError";
186
+ Object.setPrototypeOf(this, DocumentOperationFailedError.prototype);
187
+ }
188
+ };
189
+ var BatchOperationFailedError = class BatchOperationFailedError extends InternalError {
190
+ constructor(message, details) {
191
+ super(message, "BATCH_OPERATION_FAILED", details);
192
+ this.name = "BatchOperationFailedError";
193
+ Object.setPrototypeOf(this, BatchOperationFailedError.prototype);
194
+ }
195
+ };
196
+ var SearchFailedError = class SearchFailedError extends InternalError {
197
+ constructor(message, details) {
198
+ super(message, "SEARCH_FAILED", details);
199
+ this.name = "SearchFailedError";
200
+ Object.setPrototypeOf(this, SearchFailedError.prototype);
201
+ }
202
+ };
203
+ function createBrightError(statusCode, errorResponse) {
204
+ const { error: message, code, details } = errorResponse;
205
+ if (code) switch (code) {
206
+ case "MISSING_PARAMETER": return new MissingParameterError(message, details);
207
+ case "INVALID_PARAMETER": return new InvalidParameterError(message, details);
208
+ case "INVALID_REQUEST_BODY": return new InvalidRequestBodyError(message, details);
209
+ case "CONFLICTING_PARAMETERS": return new ConflictingParametersError(message, details);
210
+ case "INVALID_FORMAT": return new InvalidFormatError(message, details);
211
+ case "PARSE_ERROR": return new ParseError(message, details);
212
+ case "INDEX_NOT_FOUND": return new IndexNotFoundError(message, details);
213
+ case "DOCUMENT_NOT_FOUND": return new DocumentNotFoundError(message, details);
214
+ case "NOT_LEADER": return new NotLeaderError(message, details?.leaderUrl, details);
215
+ case "CLUSTER_UNAVAILABLE": return new ClusterUnavailableError(message, details);
216
+ case "INSUFFICIENT_PERMISSIONS": return new InsufficientPermissionsError(message, details);
217
+ case "LEADER_ONLY_OPERATION": return new LeaderOnlyOperationError(message, details);
218
+ case "RESOURCE_ALREADY_EXISTS": return new ResourceAlreadyExistsError(message, details);
219
+ case "UUID_GENERATION_FAILED": return new UuidGenerationFailedError(message, details);
220
+ case "SERIALIZATION_FAILED": return new SerializationFailedError(message, details);
221
+ case "RAFT_APPLY_FAILED": return new RaftApplyFailedError(message, details);
222
+ case "INDEX_OPERATION_FAILED": return new IndexOperationFailedError(message, details);
223
+ case "DOCUMENT_OPERATION_FAILED": return new DocumentOperationFailedError(message, details);
224
+ case "BATCH_OPERATION_FAILED": return new BatchOperationFailedError(message, details);
225
+ case "SEARCH_FAILED": return new SearchFailedError(message, details);
226
+ case "INTERNAL_ERROR": return new InternalError(message, code, details);
227
+ }
228
+ switch (statusCode) {
229
+ case 400: return new ValidationError(message, code, details);
230
+ case 404: return new NotFoundError(message, code, details);
231
+ case 403: return new AuthorizationError(message, code, details);
232
+ case 409: return new ConflictError(message, code, details);
233
+ case 307:
234
+ case 503: return new ClusterError(message, statusCode, code, details);
235
+ case 500: return new InternalError(message, code, details);
236
+ default: return new BrightError(message, statusCode, code, details);
237
+ }
238
+ }
239
+
240
+ //#endregion
1
241
  //#region src/index.ts
2
242
  var BrightClient = class {
3
243
  constructor(options) {
@@ -14,8 +254,8 @@ var BrightClient = class {
14
254
  }
15
255
  });
16
256
  if (!response.ok) {
17
- const error = await response.json().catch(() => ({ error: response.statusText }));
18
- throw new Error(error.error || `HTTP ${response.status}`);
257
+ const errorResponse = await response.json().catch(() => ({ error: response.statusText }));
258
+ throw createBrightError(response.status, errorResponse);
19
259
  }
20
260
  if (response.status === 204) return;
21
261
  return response.json();
@@ -86,5 +326,5 @@ function createClient(options) {
86
326
  }
87
327
 
88
328
  //#endregion
89
- export { BrightClient, createClient };
329
+ export { AuthorizationError, BatchOperationFailedError, BrightClient, BrightError, ClusterError, ClusterUnavailableError, ConflictError, ConflictingParametersError, DocumentNotFoundError, DocumentOperationFailedError, IndexNotFoundError, IndexOperationFailedError, InsufficientPermissionsError, InternalError, InvalidFormatError, InvalidParameterError, InvalidRequestBodyError, LeaderOnlyOperationError, MissingParameterError, NotFoundError, NotLeaderError, ParseError, RaftApplyFailedError, ResourceAlreadyExistsError, SearchFailedError, SerializationFailedError, UuidGenerationFailedError, ValidationError, createBrightError, createClient };
90
330
  //# sourceMappingURL=index.mjs.map
@@ -1 +1 @@
1
- {"version":3,"file":"index.mjs","names":[],"sources":["../src/index.ts"],"sourcesContent":["export interface IndexConfig {\n id: string;\n primaryKey?: string;\n}\n\nexport interface SearchParams {\n q?: string;\n offset?: number;\n limit?: number;\n page?: number;\n sort?: string[];\n attributesToRetrieve?: string[];\n attributesToExclude?: string[];\n}\n\nexport interface SearchResponse<T = Record<string, any>> {\n hits: T[];\n totalHits: number;\n totalPages: number;\n}\n\nexport interface BrightClientOptions {\n baseUrl: string;\n fetch?: typeof fetch;\n}\n\nexport interface IndexHandle<T = Record<string, any>> {\n readonly id: string;\n\n // Index operations\n update(config: Partial<IndexConfig>): Promise<IndexConfig>;\n delete(): Promise<void>;\n\n // Document operations\n addDocuments(documents: T[], format?: 'jsoneachrow'): Promise<{ indexed: number }>;\n updateDocument(documentId: string, updates: Partial<T>): Promise<T>;\n deleteDocument(documentId: string): Promise<void>;\n deleteDocuments(options: { ids?: string[]; filter?: string }): Promise<void>;\n\n // Search\n search(params?: SearchParams): Promise<SearchResponse<T>>;\n}\n\nexport class BrightClient {\n private baseUrl: string;\n private fetchFn: typeof fetch;\n\n constructor(options: BrightClientOptions) {\n this.baseUrl = options.baseUrl.replace(/\\/$/, '');\n this.fetchFn = options.fetch || globalThis.fetch;\n }\n\n private async request<T>(\n path: string,\n options?: RequestInit\n ): Promise<T> {\n const url = `${this.baseUrl}${path}`;\n const response = await this.fetchFn(url, {\n ...options,\n headers: {\n 'Content-Type': 'application/json',\n ...options?.headers,\n },\n });\n\n if (!response.ok) {\n const error = await response.json().catch(() => ({ error: response.statusText }));\n throw new Error(error.error || `HTTP ${response.status}`);\n }\n\n if (response.status === 204) {\n return undefined as T;\n }\n\n return response.json();\n }\n\n // Index Management\n\n async createIndex(id: string, primaryKey?: string): Promise<IndexConfig> {\n const params = new URLSearchParams({ id });\n if (primaryKey) params.append('primaryKey', primaryKey);\n \n return this.request<IndexConfig>(`/indexes?${params}`, {\n method: 'POST',\n });\n }\n\n async updateIndex(id: string, config: Partial<IndexConfig>): Promise<IndexConfig> {\n return this.request<IndexConfig>(`/indexes/${id}`, {\n method: 'PATCH',\n body: JSON.stringify(config),\n });\n }\n\n async deleteIndex(id: string): Promise<void> {\n return this.request<void>(`/indexes/${id}`, {\n method: 'DELETE',\n });\n }\n\n // Document Operations\n\n async addDocuments<T = Record<string, any>>(\n indexId: string,\n documents: T[],\n format: 'jsoneachrow' = 'jsoneachrow'\n ): Promise<{ indexed: number }> {\n const body = documents.map(doc => JSON.stringify(doc)).join('\\n');\n const params = new URLSearchParams({ format });\n\n return this.request<{ indexed: number }>(`/indexes/${indexId}/documents?${params}`, {\n method: 'POST',\n body,\n });\n }\n\n async updateDocument<T = Record<string, any>>(\n indexId: string,\n documentId: string,\n updates: Partial<T>\n ): Promise<T> {\n return this.request<T>(`/indexes/${indexId}/documents/${documentId}`, {\n method: 'PATCH',\n body: JSON.stringify(updates),\n });\n }\n\n async deleteDocument(indexId: string, documentId: string): Promise<void> {\n return this.request<void>(`/indexes/${indexId}/documents/${documentId}`, {\n method: 'DELETE',\n });\n }\n\n async deleteDocuments(\n indexId: string,\n options: { ids?: string[]; filter?: string }\n ): Promise<void> {\n const params = new URLSearchParams();\n \n if (options.ids) {\n options.ids.forEach(id => params.append('ids[]', id));\n }\n \n if (options.filter) {\n params.append('filter', options.filter);\n }\n \n return this.request<void>(`/indexes/${indexId}/documents?${params}`, {\n method: 'DELETE',\n });\n }\n\n // Search\n\n async search<T = Record<string, any>>(\n indexId: string,\n params?: SearchParams\n ): Promise<SearchResponse<T>> {\n const searchParams = new URLSearchParams();\n\n if (params?.q) searchParams.append('q', params.q);\n if (params?.offset) searchParams.append('offset', params.offset.toString());\n if (params?.limit) searchParams.append('limit', params.limit.toString());\n if (params?.page) searchParams.append('page', params.page.toString());\n\n if (params?.sort) {\n params.sort.forEach(s => searchParams.append('sort[]', s));\n }\n\n if (params?.attributesToRetrieve) {\n params.attributesToRetrieve.forEach(attr =>\n searchParams.append('attributesToRetrieve[]', attr)\n );\n }\n\n if (params?.attributesToExclude) {\n params.attributesToExclude.forEach(attr =>\n searchParams.append('attributesToExclude[]', attr)\n );\n }\n\n return this.request<SearchResponse<T>>(`/indexes/${indexId}/searches?${searchParams}`, {\n method: 'POST',\n });\n }\n\n // Typed Index Handle\n\n index<T = Record<string, any>>(indexId: string): IndexHandle<T> {\n return {\n id: indexId,\n\n update: (config) => this.updateIndex(indexId, config),\n delete: () => this.deleteIndex(indexId),\n\n addDocuments: (documents, format) => this.addDocuments<T>(indexId, documents, format),\n updateDocument: (documentId, updates) => this.updateDocument<T>(indexId, documentId, updates),\n deleteDocument: (documentId) => this.deleteDocument(indexId, documentId),\n deleteDocuments: (options) => this.deleteDocuments(indexId, options),\n\n search: (params) => this.search<T>(indexId, params),\n };\n }\n}\n\n// Convenience function\nexport function createClient(options: BrightClientOptions): BrightClient {\n return new BrightClient(options);\n}\n"],"mappings":"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"}
1
+ {"version":3,"file":"index.mjs","names":[],"sources":["../src/errors.ts","../src/index.ts"],"sourcesContent":["export type ErrorCode =\n // Validation Errors (400)\n | 'MISSING_PARAMETER'\n | 'INVALID_PARAMETER'\n | 'INVALID_REQUEST_BODY'\n | 'CONFLICTING_PARAMETERS'\n | 'INVALID_FORMAT'\n | 'PARSE_ERROR'\n // Not Found Errors (404)\n | 'INDEX_NOT_FOUND'\n | 'DOCUMENT_NOT_FOUND'\n // Cluster Errors (307/503)\n | 'NOT_LEADER'\n | 'CLUSTER_UNAVAILABLE'\n // Authorization Errors (403)\n | 'INSUFFICIENT_PERMISSIONS'\n | 'LEADER_ONLY_OPERATION'\n // Resource Conflict Errors (409)\n | 'RESOURCE_ALREADY_EXISTS'\n // Internal Errors (500)\n | 'UUID_GENERATION_FAILED'\n | 'SERIALIZATION_FAILED'\n | 'RAFT_APPLY_FAILED'\n | 'INDEX_OPERATION_FAILED'\n | 'DOCUMENT_OPERATION_FAILED'\n | 'BATCH_OPERATION_FAILED'\n | 'SEARCH_FAILED'\n | 'INTERNAL_ERROR';\n\nexport interface BrightErrorResponse {\n error: string;\n code?: ErrorCode;\n details?: Record<string, any>;\n}\n\nexport class BrightError extends Error {\n public readonly code?: ErrorCode;\n public readonly statusCode: number;\n public readonly details?: Record<string, any>;\n\n constructor(message: string, statusCode: number, code?: ErrorCode, details?: Record<string, any>) {\n super(message);\n this.name = 'BrightError';\n this.code = code;\n this.statusCode = statusCode;\n this.details = details;\n Object.setPrototypeOf(this, BrightError.prototype);\n }\n\n toJSON(): BrightErrorResponse & { statusCode: number } {\n return {\n error: this.message,\n code: this.code,\n details: this.details,\n statusCode: this.statusCode,\n };\n }\n}\n\n// Validation Errors (400)\nexport class ValidationError extends BrightError {\n constructor(message: string, code?: ErrorCode, details?: Record<string, any>) {\n super(message, 400, code, details);\n this.name = 'ValidationError';\n Object.setPrototypeOf(this, ValidationError.prototype);\n }\n}\n\nexport class MissingParameterError extends ValidationError {\n constructor(message: string, details?: Record<string, any>) {\n super(message, 'MISSING_PARAMETER', details);\n this.name = 'MissingParameterError';\n Object.setPrototypeOf(this, MissingParameterError.prototype);\n }\n}\n\nexport class InvalidParameterError extends ValidationError {\n constructor(message: string, details?: Record<string, any>) {\n super(message, 'INVALID_PARAMETER', details);\n this.name = 'InvalidParameterError';\n Object.setPrototypeOf(this, InvalidParameterError.prototype);\n }\n}\n\nexport class InvalidRequestBodyError extends ValidationError {\n constructor(message: string, details?: Record<string, any>) {\n super(message, 'INVALID_REQUEST_BODY', details);\n this.name = 'InvalidRequestBodyError';\n Object.setPrototypeOf(this, InvalidRequestBodyError.prototype);\n }\n}\n\nexport class ConflictingParametersError extends ValidationError {\n constructor(message: string, details?: Record<string, any>) {\n super(message, 'CONFLICTING_PARAMETERS', details);\n this.name = 'ConflictingParametersError';\n Object.setPrototypeOf(this, ConflictingParametersError.prototype);\n }\n}\n\nexport class InvalidFormatError extends ValidationError {\n constructor(message: string, details?: Record<string, any>) {\n super(message, 'INVALID_FORMAT', details);\n this.name = 'InvalidFormatError';\n Object.setPrototypeOf(this, InvalidFormatError.prototype);\n }\n}\n\nexport class ParseError extends ValidationError {\n constructor(message: string, details?: Record<string, any>) {\n super(message, 'PARSE_ERROR', details);\n this.name = 'ParseError';\n Object.setPrototypeOf(this, ParseError.prototype);\n }\n}\n\n// Not Found Errors (404)\nexport class NotFoundError extends BrightError {\n constructor(message: string, code?: ErrorCode, details?: Record<string, any>) {\n super(message, 404, code, details);\n this.name = 'NotFoundError';\n Object.setPrototypeOf(this, NotFoundError.prototype);\n }\n}\n\nexport class IndexNotFoundError extends NotFoundError {\n constructor(message: string, details?: Record<string, any>) {\n super(message, 'INDEX_NOT_FOUND', details);\n this.name = 'IndexNotFoundError';\n Object.setPrototypeOf(this, IndexNotFoundError.prototype);\n }\n}\n\nexport class DocumentNotFoundError extends NotFoundError {\n constructor(message: string, details?: Record<string, any>) {\n super(message, 'DOCUMENT_NOT_FOUND', details);\n this.name = 'DocumentNotFoundError';\n Object.setPrototypeOf(this, DocumentNotFoundError.prototype);\n }\n}\n\n// Cluster Errors\nexport class ClusterError extends BrightError {\n constructor(message: string, statusCode: number, code?: ErrorCode, details?: Record<string, any>) {\n super(message, statusCode, code, details);\n this.name = 'ClusterError';\n Object.setPrototypeOf(this, ClusterError.prototype);\n }\n}\n\nexport class NotLeaderError extends ClusterError {\n public readonly leaderUrl?: string;\n\n constructor(message: string, leaderUrl?: string, details?: Record<string, any>) {\n super(message, 307, 'NOT_LEADER', details);\n this.name = 'NotLeaderError';\n this.leaderUrl = leaderUrl;\n Object.setPrototypeOf(this, NotLeaderError.prototype);\n }\n}\n\nexport class ClusterUnavailableError extends ClusterError {\n constructor(message: string, details?: Record<string, any>) {\n super(message, 503, 'CLUSTER_UNAVAILABLE', details);\n this.name = 'ClusterUnavailableError';\n Object.setPrototypeOf(this, ClusterUnavailableError.prototype);\n }\n}\n\n// Authorization Errors (403)\nexport class AuthorizationError extends BrightError {\n constructor(message: string, code?: ErrorCode, details?: Record<string, any>) {\n super(message, 403, code, details);\n this.name = 'AuthorizationError';\n Object.setPrototypeOf(this, AuthorizationError.prototype);\n }\n}\n\nexport class InsufficientPermissionsError extends AuthorizationError {\n constructor(message: string, details?: Record<string, any>) {\n super(message, 'INSUFFICIENT_PERMISSIONS', details);\n this.name = 'InsufficientPermissionsError';\n Object.setPrototypeOf(this, InsufficientPermissionsError.prototype);\n }\n}\n\nexport class LeaderOnlyOperationError extends AuthorizationError {\n constructor(message: string, details?: Record<string, any>) {\n super(message, 'LEADER_ONLY_OPERATION', details);\n this.name = 'LeaderOnlyOperationError';\n Object.setPrototypeOf(this, LeaderOnlyOperationError.prototype);\n }\n}\n\n// Resource Conflict Errors (409)\nexport class ConflictError extends BrightError {\n constructor(message: string, code?: ErrorCode, details?: Record<string, any>) {\n super(message, 409, code, details);\n this.name = 'ConflictError';\n Object.setPrototypeOf(this, ConflictError.prototype);\n }\n}\n\nexport class ResourceAlreadyExistsError extends ConflictError {\n constructor(message: string, details?: Record<string, any>) {\n super(message, 'RESOURCE_ALREADY_EXISTS', details);\n this.name = 'ResourceAlreadyExistsError';\n Object.setPrototypeOf(this, ResourceAlreadyExistsError.prototype);\n }\n}\n\n// Internal Errors (500)\nexport class InternalError extends BrightError {\n constructor(message: string, code?: ErrorCode, details?: Record<string, any>) {\n super(message, 500, code, details);\n this.name = 'InternalError';\n Object.setPrototypeOf(this, InternalError.prototype);\n }\n}\n\nexport class UuidGenerationFailedError extends InternalError {\n constructor(message: string, details?: Record<string, any>) {\n super(message, 'UUID_GENERATION_FAILED', details);\n this.name = 'UuidGenerationFailedError';\n Object.setPrototypeOf(this, UuidGenerationFailedError.prototype);\n }\n}\n\nexport class SerializationFailedError extends InternalError {\n constructor(message: string, details?: Record<string, any>) {\n super(message, 'SERIALIZATION_FAILED', details);\n this.name = 'SerializationFailedError';\n Object.setPrototypeOf(this, SerializationFailedError.prototype);\n }\n}\n\nexport class RaftApplyFailedError extends InternalError {\n constructor(message: string, details?: Record<string, any>) {\n super(message, 'RAFT_APPLY_FAILED', details);\n this.name = 'RaftApplyFailedError';\n Object.setPrototypeOf(this, RaftApplyFailedError.prototype);\n }\n}\n\nexport class IndexOperationFailedError extends InternalError {\n constructor(message: string, details?: Record<string, any>) {\n super(message, 'INDEX_OPERATION_FAILED', details);\n this.name = 'IndexOperationFailedError';\n Object.setPrototypeOf(this, IndexOperationFailedError.prototype);\n }\n}\n\nexport class DocumentOperationFailedError extends InternalError {\n constructor(message: string, details?: Record<string, any>) {\n super(message, 'DOCUMENT_OPERATION_FAILED', details);\n this.name = 'DocumentOperationFailedError';\n Object.setPrototypeOf(this, DocumentOperationFailedError.prototype);\n }\n}\n\nexport class BatchOperationFailedError extends InternalError {\n constructor(message: string, details?: Record<string, any>) {\n super(message, 'BATCH_OPERATION_FAILED', details);\n this.name = 'BatchOperationFailedError';\n Object.setPrototypeOf(this, BatchOperationFailedError.prototype);\n }\n}\n\nexport class SearchFailedError extends InternalError {\n constructor(message: string, details?: Record<string, any>) {\n super(message, 'SEARCH_FAILED', details);\n this.name = 'SearchFailedError';\n Object.setPrototypeOf(this, SearchFailedError.prototype);\n }\n}\n\n// Error factory function to create appropriate error instances\nexport function createBrightError(\n statusCode: number,\n errorResponse: BrightErrorResponse\n): BrightError {\n const { error: message, code, details } = errorResponse;\n\n // Match by error code first\n if (code) {\n switch (code) {\n // Validation Errors\n case 'MISSING_PARAMETER':\n return new MissingParameterError(message, details);\n case 'INVALID_PARAMETER':\n return new InvalidParameterError(message, details);\n case 'INVALID_REQUEST_BODY':\n return new InvalidRequestBodyError(message, details);\n case 'CONFLICTING_PARAMETERS':\n return new ConflictingParametersError(message, details);\n case 'INVALID_FORMAT':\n return new InvalidFormatError(message, details);\n case 'PARSE_ERROR':\n return new ParseError(message, details);\n\n // Not Found Errors\n case 'INDEX_NOT_FOUND':\n return new IndexNotFoundError(message, details);\n case 'DOCUMENT_NOT_FOUND':\n return new DocumentNotFoundError(message, details);\n\n // Cluster Errors\n case 'NOT_LEADER':\n return new NotLeaderError(message, details?.leaderUrl, details);\n case 'CLUSTER_UNAVAILABLE':\n return new ClusterUnavailableError(message, details);\n\n // Authorization Errors\n case 'INSUFFICIENT_PERMISSIONS':\n return new InsufficientPermissionsError(message, details);\n case 'LEADER_ONLY_OPERATION':\n return new LeaderOnlyOperationError(message, details);\n\n // Conflict Errors\n case 'RESOURCE_ALREADY_EXISTS':\n return new ResourceAlreadyExistsError(message, details);\n\n // Internal Errors\n case 'UUID_GENERATION_FAILED':\n return new UuidGenerationFailedError(message, details);\n case 'SERIALIZATION_FAILED':\n return new SerializationFailedError(message, details);\n case 'RAFT_APPLY_FAILED':\n return new RaftApplyFailedError(message, details);\n case 'INDEX_OPERATION_FAILED':\n return new IndexOperationFailedError(message, details);\n case 'DOCUMENT_OPERATION_FAILED':\n return new DocumentOperationFailedError(message, details);\n case 'BATCH_OPERATION_FAILED':\n return new BatchOperationFailedError(message, details);\n case 'SEARCH_FAILED':\n return new SearchFailedError(message, details);\n case 'INTERNAL_ERROR':\n return new InternalError(message, code, details);\n }\n }\n\n // Fallback to status code\n switch (statusCode) {\n case 400:\n return new ValidationError(message, code, details);\n case 404:\n return new NotFoundError(message, code, details);\n case 403:\n return new AuthorizationError(message, code, details);\n case 409:\n return new ConflictError(message, code, details);\n case 307:\n case 503:\n return new ClusterError(message, statusCode, code, details);\n case 500:\n return new InternalError(message, code, details);\n default:\n return new BrightError(message, statusCode, code, details);\n }\n}\n","import { BrightErrorResponse, createBrightError } from './errors';\n\n// Re-export all error classes\nexport * from './errors';\n\nexport interface IndexConfig {\n id: string;\n primaryKey?: string;\n}\n\nexport interface SearchParams {\n q?: string;\n offset?: number;\n limit?: number;\n page?: number;\n sort?: string[];\n attributesToRetrieve?: string[];\n attributesToExclude?: string[];\n}\n\nexport interface SearchResponse<T = Record<string, any>> {\n hits: T[];\n totalHits: number;\n totalPages: number;\n}\n\nexport interface BrightClientOptions {\n baseUrl: string;\n fetch?: typeof fetch;\n}\n\nexport interface IndexHandle<T = Record<string, any>> {\n readonly id: string;\n\n // Index operations\n update(config: Partial<IndexConfig>): Promise<IndexConfig>;\n delete(): Promise<void>;\n\n // Document operations\n addDocuments(documents: T[], format?: 'jsoneachrow'): Promise<{ indexed: number }>;\n updateDocument(documentId: string, updates: Partial<T>): Promise<T>;\n deleteDocument(documentId: string): Promise<void>;\n deleteDocuments(options: { ids?: string[]; filter?: string }): Promise<void>;\n\n // Search\n search(params?: SearchParams): Promise<SearchResponse<T>>;\n}\n\nexport class BrightClient {\n private baseUrl: string;\n private fetchFn: typeof fetch;\n\n constructor(options: BrightClientOptions) {\n this.baseUrl = options.baseUrl.replace(/\\/$/, '');\n this.fetchFn = options.fetch || globalThis.fetch;\n }\n\n private async request<T>(\n path: string,\n options?: RequestInit\n ): Promise<T> {\n const url = `${this.baseUrl}${path}`;\n const response = await this.fetchFn(url, {\n ...options,\n headers: {\n 'Content-Type': 'application/json',\n ...options?.headers,\n },\n });\n\n if (!response.ok) {\n const errorResponse: BrightErrorResponse = await response\n .json()\n .catch(() => ({ error: response.statusText }));\n throw createBrightError(response.status, errorResponse);\n }\n\n if (response.status === 204) {\n return undefined as T;\n }\n\n return response.json();\n }\n\n // Index Management\n\n async createIndex(id: string, primaryKey?: string): Promise<IndexConfig> {\n const params = new URLSearchParams({ id });\n if (primaryKey) params.append('primaryKey', primaryKey);\n \n return this.request<IndexConfig>(`/indexes?${params}`, {\n method: 'POST',\n });\n }\n\n async updateIndex(id: string, config: Partial<IndexConfig>): Promise<IndexConfig> {\n return this.request<IndexConfig>(`/indexes/${id}`, {\n method: 'PATCH',\n body: JSON.stringify(config),\n });\n }\n\n async deleteIndex(id: string): Promise<void> {\n return this.request<void>(`/indexes/${id}`, {\n method: 'DELETE',\n });\n }\n\n // Document Operations\n\n async addDocuments<T = Record<string, any>>(\n indexId: string,\n documents: T[],\n format: 'jsoneachrow' = 'jsoneachrow'\n ): Promise<{ indexed: number }> {\n const body = documents.map(doc => JSON.stringify(doc)).join('\\n');\n const params = new URLSearchParams({ format });\n\n return this.request<{ indexed: number }>(`/indexes/${indexId}/documents?${params}`, {\n method: 'POST',\n body,\n });\n }\n\n async updateDocument<T = Record<string, any>>(\n indexId: string,\n documentId: string,\n updates: Partial<T>\n ): Promise<T> {\n return this.request<T>(`/indexes/${indexId}/documents/${documentId}`, {\n method: 'PATCH',\n body: JSON.stringify(updates),\n });\n }\n\n async deleteDocument(indexId: string, documentId: string): Promise<void> {\n return this.request<void>(`/indexes/${indexId}/documents/${documentId}`, {\n method: 'DELETE',\n });\n }\n\n async deleteDocuments(\n indexId: string,\n options: { ids?: string[]; filter?: string }\n ): Promise<void> {\n const params = new URLSearchParams();\n \n if (options.ids) {\n options.ids.forEach(id => params.append('ids[]', id));\n }\n \n if (options.filter) {\n params.append('filter', options.filter);\n }\n \n return this.request<void>(`/indexes/${indexId}/documents?${params}`, {\n method: 'DELETE',\n });\n }\n\n // Search\n\n async search<T = Record<string, any>>(\n indexId: string,\n params?: SearchParams\n ): Promise<SearchResponse<T>> {\n const searchParams = new URLSearchParams();\n\n if (params?.q) searchParams.append('q', params.q);\n if (params?.offset) searchParams.append('offset', params.offset.toString());\n if (params?.limit) searchParams.append('limit', params.limit.toString());\n if (params?.page) searchParams.append('page', params.page.toString());\n\n if (params?.sort) {\n params.sort.forEach(s => searchParams.append('sort[]', s));\n }\n\n if (params?.attributesToRetrieve) {\n params.attributesToRetrieve.forEach(attr =>\n searchParams.append('attributesToRetrieve[]', attr)\n );\n }\n\n if (params?.attributesToExclude) {\n params.attributesToExclude.forEach(attr =>\n searchParams.append('attributesToExclude[]', attr)\n );\n }\n\n return this.request<SearchResponse<T>>(`/indexes/${indexId}/searches?${searchParams}`, {\n method: 'POST',\n });\n }\n\n // Typed Index Handle\n\n index<T = Record<string, any>>(indexId: string): IndexHandle<T> {\n return {\n id: indexId,\n\n update: (config) => this.updateIndex(indexId, config),\n delete: () => this.deleteIndex(indexId),\n\n addDocuments: (documents, format) => this.addDocuments<T>(indexId, documents, format),\n updateDocument: (documentId, updates) => this.updateDocument<T>(indexId, documentId, updates),\n deleteDocument: (documentId) => this.deleteDocument(indexId, documentId),\n deleteDocuments: (options) => this.deleteDocuments(indexId, options),\n\n search: (params) => this.search<T>(indexId, params),\n };\n }\n}\n\n// Convenience function\nexport function createClient(options: BrightClientOptions): BrightClient {\n return new BrightClient(options);\n}\n"],"mappings":"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"}
package/package.json CHANGED
@@ -1,6 +1,6 @@
1
1
  {
2
2
  "name": "bright-client",
3
- "version": "0.2.0",
3
+ "version": "0.4.0",
4
4
  "description": "TypeScript client library for Bright search database",
5
5
  "main": "dist/index.cjs",
6
6
  "module": "dist/index.mjs",