bright-client 0.4.1 → 0.5.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/dist/index.cjs CHANGED
@@ -277,9 +277,11 @@ var BrightClient = class {
277
277
  async deleteIndex(id) {
278
278
  return this.request(`/indexes/${id}`, { method: "DELETE" });
279
279
  }
280
- async addDocuments(indexId, documents, format = "jsoneachrow") {
280
+ async addDocuments(indexId, documents, options) {
281
281
  const body = documents.map((doc) => JSON.stringify(doc)).join("\n");
282
- const params = new URLSearchParams({ format });
282
+ const params = new URLSearchParams();
283
+ params.append("format", options?.format || "jsoneachrow");
284
+ if (options?.primaryKey) params.append("primaryKey", options.primaryKey);
283
285
  return this.request(`/indexes/${indexId}/documents?${params}`, {
284
286
  method: "POST",
285
287
  body
@@ -316,7 +318,7 @@ var BrightClient = class {
316
318
  id: indexId,
317
319
  update: (config) => this.updateIndex(indexId, config),
318
320
  delete: () => this.deleteIndex(indexId),
319
- addDocuments: (documents, format) => this.addDocuments(indexId, documents, format),
321
+ addDocuments: (documents, options) => this.addDocuments(indexId, documents, options),
320
322
  updateDocument: (documentId, updates) => this.updateDocument(indexId, documentId, updates),
321
323
  deleteDocument: (documentId) => this.deleteDocument(indexId, documentId),
322
324
  deleteDocuments: (options) => this.deleteDocuments(indexId, options),
package/dist/index.d.cts CHANGED
@@ -123,7 +123,10 @@ interface IndexHandle<T = Record<string, any>> {
123
123
  readonly id: string;
124
124
  update(config: Partial<IndexConfig>): Promise<IndexConfig>;
125
125
  delete(): Promise<void>;
126
- addDocuments(documents: T[], format?: 'jsoneachrow'): Promise<{
126
+ addDocuments(documents: T[], options?: {
127
+ format?: 'jsoneachrow';
128
+ primaryKey?: string;
129
+ }): Promise<{
127
130
  indexed: number;
128
131
  }>;
129
132
  updateDocument(documentId: string, updates: Partial<T>): Promise<T>;
@@ -143,7 +146,10 @@ declare class BrightClient {
143
146
  createIndex(id: string, primaryKey?: string): Promise<IndexConfig>;
144
147
  updateIndex(id: string, config: Partial<IndexConfig>): Promise<IndexConfig>;
145
148
  deleteIndex(id: string): Promise<void>;
146
- addDocuments<T = Record<string, any>>(indexId: string, documents: T[], format?: 'jsoneachrow'): Promise<{
149
+ addDocuments<T = Record<string, any>>(indexId: string, documents: T[], options?: {
150
+ format?: 'jsoneachrow';
151
+ primaryKey?: string;
152
+ }): Promise<{
147
153
  indexed: number;
148
154
  }>;
149
155
  updateDocument<T = Record<string, any>>(indexId: string, documentId: string, updates: Partial<T>): Promise<T>;
@@ -1 +1 @@
1
- {"version":3,"file":"index.d.cts","names":[],"sources":["../src/errors.ts","../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
@@ -123,7 +123,10 @@ interface IndexHandle<T = Record<string, any>> {
123
123
  readonly id: string;
124
124
  update(config: Partial<IndexConfig>): Promise<IndexConfig>;
125
125
  delete(): Promise<void>;
126
- addDocuments(documents: T[], format?: 'jsoneachrow'): Promise<{
126
+ addDocuments(documents: T[], options?: {
127
+ format?: 'jsoneachrow';
128
+ primaryKey?: string;
129
+ }): Promise<{
127
130
  indexed: number;
128
131
  }>;
129
132
  updateDocument(documentId: string, updates: Partial<T>): Promise<T>;
@@ -143,7 +146,10 @@ declare class BrightClient {
143
146
  createIndex(id: string, primaryKey?: string): Promise<IndexConfig>;
144
147
  updateIndex(id: string, config: Partial<IndexConfig>): Promise<IndexConfig>;
145
148
  deleteIndex(id: string): Promise<void>;
146
- addDocuments<T = Record<string, any>>(indexId: string, documents: T[], format?: 'jsoneachrow'): Promise<{
149
+ addDocuments<T = Record<string, any>>(indexId: string, documents: T[], options?: {
150
+ format?: 'jsoneachrow';
151
+ primaryKey?: string;
152
+ }): Promise<{
147
153
  indexed: number;
148
154
  }>;
149
155
  updateDocument<T = Record<string, any>>(indexId: string, documentId: string, updates: Partial<T>): Promise<T>;
@@ -1 +1 @@
1
- {"version":3,"file":"index.d.mts","names":[],"sources":["../src/errors.ts","../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
@@ -276,9 +276,11 @@ var BrightClient = class {
276
276
  async deleteIndex(id) {
277
277
  return this.request(`/indexes/${id}`, { method: "DELETE" });
278
278
  }
279
- async addDocuments(indexId, documents, format = "jsoneachrow") {
279
+ async addDocuments(indexId, documents, options) {
280
280
  const body = documents.map((doc) => JSON.stringify(doc)).join("\n");
281
- const params = new URLSearchParams({ format });
281
+ const params = new URLSearchParams();
282
+ params.append("format", options?.format || "jsoneachrow");
283
+ if (options?.primaryKey) params.append("primaryKey", options.primaryKey);
282
284
  return this.request(`/indexes/${indexId}/documents?${params}`, {
283
285
  method: "POST",
284
286
  body
@@ -315,7 +317,7 @@ var BrightClient = class {
315
317
  id: indexId,
316
318
  update: (config) => this.updateIndex(indexId, config),
317
319
  delete: () => this.deleteIndex(indexId),
318
- addDocuments: (documents, format) => this.addDocuments(indexId, documents, format),
320
+ addDocuments: (documents, options) => this.addDocuments(indexId, documents, options),
319
321
  updateDocument: (documentId, updates) => this.updateDocument(indexId, documentId, updates),
320
322
  deleteDocument: (documentId) => this.deleteDocument(indexId, documentId),
321
323
  deleteDocuments: (options) => this.deleteDocuments(indexId, options),
@@ -1 +1 @@
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 apiKey?: 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 apiKey?: string;\n private fetchFn: typeof fetch;\n\n constructor(options: BrightClientOptions) {\n this.baseUrl = options.baseUrl.replace(/\\/$/, '');\n this.apiKey = options.apiKey;\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 ...(this.apiKey ? { Authorization: `Bearer ${this.apiKey}` } : {}),\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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"}
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 apiKey?: 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[], options?: { format?: 'jsoneachrow'; primaryKey?: string }): 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 apiKey?: string;\n private fetchFn: typeof fetch;\n\n constructor(options: BrightClientOptions) {\n this.baseUrl = options.baseUrl.replace(/\\/$/, '');\n this.apiKey = options.apiKey;\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 ...(this.apiKey ? { Authorization: `Bearer ${this.apiKey}` } : {}),\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 options?: { format?: 'jsoneachrow'; primaryKey?: string }\n ): Promise<{ indexed: number }> {\n const body = documents.map(doc => JSON.stringify(doc)).join('\\n');\n const params = new URLSearchParams();\n\n params.append('format', options?.format || 'jsoneachrow');\n if (options?.primaryKey) {\n params.append('primaryKey', options.primaryKey);\n }\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, options) => this.addDocuments<T>(indexId, documents, options),\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.4.1",
3
+ "version": "0.5.0",
4
4
  "description": "TypeScript client library for Bright search database",
5
5
  "main": "dist/index.cjs",
6
6
  "module": "dist/index.mjs",