UNPKG

vespa-ts

Version:

A reusable TypeScript package for interacting with Vespa search engine with dependency injection support

60 lines (57 loc) 1.91 kB
'use strict'; var VespaDbOp; (function (VespaDbOp) { VespaDbOp["Search"] = "Search"; })(VespaDbOp || (VespaDbOp = {})); var DbOp; (function (DbOp) { DbOp["Create"] = "Create"; DbOp["READ"] = "Read"; DbOp["Update"] = "Update"; DbOp["Delete"] = "Delete"; })(DbOp || (DbOp = {})); class VespaError extends Error { constructor({ message, sources, op, docId, cause }) { let fullMessage = `${message}: for source ${sources} and op: ${op}`; if (docId) fullMessage += ` for docId: ${docId}`; super(fullMessage, { cause }); Error.captureStackTrace(this, this.constructor); } } class ErrorDeletingDocuments extends VespaError { constructor(errorOpts) { super({ ...errorOpts, op: DbOp.READ }); this.name = this.constructor.name; } } class ErrorRetrievingDocuments extends VespaError { constructor(vespaErrOpts) { let { message, cause } = vespaErrOpts; if (!message) { message = "Error retrieving documents"; } super({ ...vespaErrOpts, message, cause, op: DbOp.READ }); this.name = this.constructor.name; } } class ErrorPerformingSearch extends VespaError { constructor(vespaErrOpts) { super({ ...vespaErrOpts, op: VespaDbOp.Search }); this.name = this.constructor.name; } } class ErrorInsertingDocument extends VespaError { constructor(vespaErrOpts) { let { message, cause } = vespaErrOpts; if (!message) { message = `Error inserting document`; } super({ ...vespaErrOpts, message, cause, op: DbOp.Create }); this.name = this.constructor.name; } } exports.ErrorDeletingDocuments = ErrorDeletingDocuments; exports.ErrorInsertingDocument = ErrorInsertingDocument; exports.ErrorPerformingSearch = ErrorPerformingSearch; exports.ErrorRetrievingDocuments = ErrorRetrievingDocuments;