diff --git a/dist/typesense.js b/dist/typesense.js index a2014542..2e52ca09 100644 --- a/dist/typesense.js +++ b/dist/typesense.js @@ -2,2944 +2,1626 @@ var Typesense; /******/ (() => { // webpackBootstrap /******/ var __webpack_modules__ = ({ -/***/ "./src/Typesense/Alias.ts": -/*!********************************!*\ - !*** ./src/Typesense/Alias.ts ***! - \********************************/ -/***/ ((__unused_webpack_module, __webpack_exports__, __webpack_require__) => { +/***/ "./node_modules/.pnpm/@babel+runtime@7.26.9/node_modules/@babel/runtime/helpers/esm/arrayLikeToArray.js": +/*!**************************************************************************************************************!*\ + !*** ./node_modules/.pnpm/@babel+runtime@7.26.9/node_modules/@babel/runtime/helpers/esm/arrayLikeToArray.js ***! + \**************************************************************************************************************/ +/***/ ((__unused_webpack___webpack_module__, __webpack_exports__, __webpack_require__) => { "use strict"; __webpack_require__.r(__webpack_exports__); /* harmony export */ __webpack_require__.d(__webpack_exports__, { -/* harmony export */ "default": () => (/* binding */ Alias) +/* harmony export */ "default": () => (/* binding */ _arrayLikeToArray) /* harmony export */ }); -/* harmony import */ var _babel_runtime_helpers_asyncToGenerator__WEBPACK_IMPORTED_MODULE_0__ = __webpack_require__(/*! @babel/runtime/helpers/asyncToGenerator */ "./node_modules/@babel/runtime/helpers/esm/asyncToGenerator.js"); -/* harmony import */ var _babel_runtime_helpers_classCallCheck__WEBPACK_IMPORTED_MODULE_1__ = __webpack_require__(/*! @babel/runtime/helpers/classCallCheck */ "./node_modules/@babel/runtime/helpers/esm/classCallCheck.js"); -/* harmony import */ var _babel_runtime_helpers_createClass__WEBPACK_IMPORTED_MODULE_2__ = __webpack_require__(/*! @babel/runtime/helpers/createClass */ "./node_modules/@babel/runtime/helpers/esm/createClass.js"); -/* harmony import */ var _babel_runtime_regenerator__WEBPACK_IMPORTED_MODULE_3__ = __webpack_require__(/*! @babel/runtime/regenerator */ "./node_modules/@babel/runtime/regenerator/index.js"); -/* harmony import */ var _babel_runtime_regenerator__WEBPACK_IMPORTED_MODULE_3___default = /*#__PURE__*/__webpack_require__.n(_babel_runtime_regenerator__WEBPACK_IMPORTED_MODULE_3__); -/* harmony import */ var _Aliases__WEBPACK_IMPORTED_MODULE_4__ = __webpack_require__(/*! ./Aliases */ "./src/Typesense/Aliases.ts"); +function _arrayLikeToArray(r, a) { + (null == a || a > r.length) && (a = r.length); + for (var e = 0, n = Array(a); e < a; e++) n[e] = r[e]; + return n; +} +/***/ }), +/***/ "./node_modules/.pnpm/@babel+runtime@7.26.9/node_modules/@babel/runtime/helpers/esm/arrayWithHoles.js": +/*!************************************************************************************************************!*\ + !*** ./node_modules/.pnpm/@babel+runtime@7.26.9/node_modules/@babel/runtime/helpers/esm/arrayWithHoles.js ***! + \************************************************************************************************************/ +/***/ ((__unused_webpack___webpack_module__, __webpack_exports__, __webpack_require__) => { +"use strict"; +__webpack_require__.r(__webpack_exports__); +/* harmony export */ __webpack_require__.d(__webpack_exports__, { +/* harmony export */ "default": () => (/* binding */ _arrayWithHoles) +/* harmony export */ }); +function _arrayWithHoles(r) { + if (Array.isArray(r)) return r; +} -var Alias = /*#__PURE__*/function () { - function Alias(name, apiCall) { - (0,_babel_runtime_helpers_classCallCheck__WEBPACK_IMPORTED_MODULE_1__["default"])(this, Alias); - this.name = name; - this.apiCall = apiCall; - } - (0,_babel_runtime_helpers_createClass__WEBPACK_IMPORTED_MODULE_2__["default"])(Alias, [{ - key: "retrieve", - value: function () { - var _retrieve = (0,_babel_runtime_helpers_asyncToGenerator__WEBPACK_IMPORTED_MODULE_0__["default"])( /*#__PURE__*/_babel_runtime_regenerator__WEBPACK_IMPORTED_MODULE_3___default().mark(function _callee() { - return _babel_runtime_regenerator__WEBPACK_IMPORTED_MODULE_3___default().wrap(function _callee$(_context) { - while (1) switch (_context.prev = _context.next) { - case 0: - return _context.abrupt("return", this.apiCall.get(this.endpointPath())); - case 1: - case "end": - return _context.stop(); - } - }, _callee, this); - })); - function retrieve() { - return _retrieve.apply(this, arguments); - } - return retrieve; - }() - }, { - key: "delete", - value: function () { - var _delete2 = (0,_babel_runtime_helpers_asyncToGenerator__WEBPACK_IMPORTED_MODULE_0__["default"])( /*#__PURE__*/_babel_runtime_regenerator__WEBPACK_IMPORTED_MODULE_3___default().mark(function _callee2() { - return _babel_runtime_regenerator__WEBPACK_IMPORTED_MODULE_3___default().wrap(function _callee2$(_context2) { - while (1) switch (_context2.prev = _context2.next) { - case 0: - return _context2.abrupt("return", this.apiCall.delete(this.endpointPath())); - case 1: - case "end": - return _context2.stop(); - } - }, _callee2, this); - })); - function _delete() { - return _delete2.apply(this, arguments); - } - return _delete; - }() - }, { - key: "endpointPath", - value: function endpointPath() { - return "".concat(_Aliases__WEBPACK_IMPORTED_MODULE_4__["default"].RESOURCEPATH, "/").concat(encodeURIComponent(this.name)); - } - }]); - return Alias; -}(); + +/***/ }), + +/***/ "./node_modules/.pnpm/@babel+runtime@7.26.9/node_modules/@babel/runtime/helpers/esm/arrayWithoutHoles.js": +/*!***************************************************************************************************************!*\ + !*** ./node_modules/.pnpm/@babel+runtime@7.26.9/node_modules/@babel/runtime/helpers/esm/arrayWithoutHoles.js ***! + \***************************************************************************************************************/ +/***/ ((__unused_webpack___webpack_module__, __webpack_exports__, __webpack_require__) => { + +"use strict"; +__webpack_require__.r(__webpack_exports__); +/* harmony export */ __webpack_require__.d(__webpack_exports__, { +/* harmony export */ "default": () => (/* binding */ _arrayWithoutHoles) +/* harmony export */ }); +/* harmony import */ var _arrayLikeToArray_js__WEBPACK_IMPORTED_MODULE_0__ = __webpack_require__(/*! ./arrayLikeToArray.js */ "./node_modules/.pnpm/@babel+runtime@7.26.9/node_modules/@babel/runtime/helpers/esm/arrayLikeToArray.js"); + +function _arrayWithoutHoles(r) { + if (Array.isArray(r)) return (0,_arrayLikeToArray_js__WEBPACK_IMPORTED_MODULE_0__["default"])(r); +} /***/ }), -/***/ "./src/Typesense/Aliases.ts": -/*!**********************************!*\ - !*** ./src/Typesense/Aliases.ts ***! - \**********************************/ -/***/ ((__unused_webpack_module, __webpack_exports__, __webpack_require__) => { +/***/ "./node_modules/.pnpm/@babel+runtime@7.26.9/node_modules/@babel/runtime/helpers/esm/assertThisInitialized.js": +/*!*******************************************************************************************************************!*\ + !*** ./node_modules/.pnpm/@babel+runtime@7.26.9/node_modules/@babel/runtime/helpers/esm/assertThisInitialized.js ***! + \*******************************************************************************************************************/ +/***/ ((__unused_webpack___webpack_module__, __webpack_exports__, __webpack_require__) => { "use strict"; __webpack_require__.r(__webpack_exports__); /* harmony export */ __webpack_require__.d(__webpack_exports__, { -/* harmony export */ "default": () => (/* binding */ Aliases) +/* harmony export */ "default": () => (/* binding */ _assertThisInitialized) /* harmony export */ }); -/* harmony import */ var _babel_runtime_helpers_asyncToGenerator__WEBPACK_IMPORTED_MODULE_0__ = __webpack_require__(/*! @babel/runtime/helpers/asyncToGenerator */ "./node_modules/@babel/runtime/helpers/esm/asyncToGenerator.js"); -/* harmony import */ var _babel_runtime_helpers_classCallCheck__WEBPACK_IMPORTED_MODULE_1__ = __webpack_require__(/*! @babel/runtime/helpers/classCallCheck */ "./node_modules/@babel/runtime/helpers/esm/classCallCheck.js"); -/* harmony import */ var _babel_runtime_helpers_createClass__WEBPACK_IMPORTED_MODULE_2__ = __webpack_require__(/*! @babel/runtime/helpers/createClass */ "./node_modules/@babel/runtime/helpers/esm/createClass.js"); -/* harmony import */ var _babel_runtime_regenerator__WEBPACK_IMPORTED_MODULE_3__ = __webpack_require__(/*! @babel/runtime/regenerator */ "./node_modules/@babel/runtime/regenerator/index.js"); -/* harmony import */ var _babel_runtime_regenerator__WEBPACK_IMPORTED_MODULE_3___default = /*#__PURE__*/__webpack_require__.n(_babel_runtime_regenerator__WEBPACK_IMPORTED_MODULE_3__); +function _assertThisInitialized(e) { + if (void 0 === e) throw new ReferenceError("this hasn't been initialised - super() hasn't been called"); + return e; +} +/***/ }), +/***/ "./node_modules/.pnpm/@babel+runtime@7.26.9/node_modules/@babel/runtime/helpers/esm/asyncToGenerator.js": +/*!**************************************************************************************************************!*\ + !*** ./node_modules/.pnpm/@babel+runtime@7.26.9/node_modules/@babel/runtime/helpers/esm/asyncToGenerator.js ***! + \**************************************************************************************************************/ +/***/ ((__unused_webpack___webpack_module__, __webpack_exports__, __webpack_require__) => { -var RESOURCEPATH = "/aliases"; -var Aliases = /*#__PURE__*/function () { - function Aliases(apiCall) { - (0,_babel_runtime_helpers_classCallCheck__WEBPACK_IMPORTED_MODULE_1__["default"])(this, Aliases); - this.apiCall = apiCall; +"use strict"; +__webpack_require__.r(__webpack_exports__); +/* harmony export */ __webpack_require__.d(__webpack_exports__, { +/* harmony export */ "default": () => (/* binding */ _asyncToGenerator) +/* harmony export */ }); +function asyncGeneratorStep(n, t, e, r, o, a, c) { + try { + var i = n[a](c), + u = i.value; + } catch (n) { + return void e(n); } - (0,_babel_runtime_helpers_createClass__WEBPACK_IMPORTED_MODULE_2__["default"])(Aliases, [{ - key: "upsert", - value: function () { - var _upsert = (0,_babel_runtime_helpers_asyncToGenerator__WEBPACK_IMPORTED_MODULE_0__["default"])( /*#__PURE__*/_babel_runtime_regenerator__WEBPACK_IMPORTED_MODULE_3___default().mark(function _callee(name, mapping) { - return _babel_runtime_regenerator__WEBPACK_IMPORTED_MODULE_3___default().wrap(function _callee$(_context) { - while (1) switch (_context.prev = _context.next) { - case 0: - return _context.abrupt("return", this.apiCall.put(this.endpointPath(name), mapping)); - case 1: - case "end": - return _context.stop(); - } - }, _callee, this); - })); - function upsert(_x, _x2) { - return _upsert.apply(this, arguments); + i.done ? t(u) : Promise.resolve(u).then(r, o); +} +function _asyncToGenerator(n) { + return function () { + var t = this, + e = arguments; + return new Promise(function (r, o) { + var a = n.apply(t, e); + function _next(n) { + asyncGeneratorStep(a, r, o, _next, _throw, "next", n); } - return upsert; - }() - }, { - key: "retrieve", - value: function () { - var _retrieve = (0,_babel_runtime_helpers_asyncToGenerator__WEBPACK_IMPORTED_MODULE_0__["default"])( /*#__PURE__*/_babel_runtime_regenerator__WEBPACK_IMPORTED_MODULE_3___default().mark(function _callee2() { - return _babel_runtime_regenerator__WEBPACK_IMPORTED_MODULE_3___default().wrap(function _callee2$(_context2) { - while (1) switch (_context2.prev = _context2.next) { - case 0: - return _context2.abrupt("return", this.apiCall.get(RESOURCEPATH)); - case 1: - case "end": - return _context2.stop(); - } - }, _callee2, this); - })); - function retrieve() { - return _retrieve.apply(this, arguments); + function _throw(n) { + asyncGeneratorStep(a, r, o, _next, _throw, "throw", n); } - return retrieve; - }() - }, { - key: "endpointPath", - value: function endpointPath(aliasName) { - return "".concat(Aliases.RESOURCEPATH, "/").concat(encodeURIComponent(aliasName)); - } - }], [{ - key: "RESOURCEPATH", - get: function get() { - return RESOURCEPATH; - } - }]); - return Aliases; -}(); + _next(void 0); + }); + }; +} /***/ }), -/***/ "./src/Typesense/Analytics.ts": -/*!************************************!*\ - !*** ./src/Typesense/Analytics.ts ***! - \************************************/ -/***/ ((__unused_webpack_module, __webpack_exports__, __webpack_require__) => { +/***/ "./node_modules/.pnpm/@babel+runtime@7.26.9/node_modules/@babel/runtime/helpers/esm/classCallCheck.js": +/*!************************************************************************************************************!*\ + !*** ./node_modules/.pnpm/@babel+runtime@7.26.9/node_modules/@babel/runtime/helpers/esm/classCallCheck.js ***! + \************************************************************************************************************/ +/***/ ((__unused_webpack___webpack_module__, __webpack_exports__, __webpack_require__) => { "use strict"; __webpack_require__.r(__webpack_exports__); /* harmony export */ __webpack_require__.d(__webpack_exports__, { -/* harmony export */ "default": () => (/* binding */ Analytics) +/* harmony export */ "default": () => (/* binding */ _classCallCheck) /* harmony export */ }); -/* harmony import */ var _babel_runtime_helpers_classCallCheck__WEBPACK_IMPORTED_MODULE_0__ = __webpack_require__(/*! @babel/runtime/helpers/classCallCheck */ "./node_modules/@babel/runtime/helpers/esm/classCallCheck.js"); -/* harmony import */ var _babel_runtime_helpers_createClass__WEBPACK_IMPORTED_MODULE_1__ = __webpack_require__(/*! @babel/runtime/helpers/createClass */ "./node_modules/@babel/runtime/helpers/esm/createClass.js"); -/* harmony import */ var _babel_runtime_helpers_defineProperty__WEBPACK_IMPORTED_MODULE_2__ = __webpack_require__(/*! @babel/runtime/helpers/defineProperty */ "./node_modules/@babel/runtime/helpers/esm/defineProperty.js"); -/* harmony import */ var _AnalyticsRules__WEBPACK_IMPORTED_MODULE_3__ = __webpack_require__(/*! ./AnalyticsRules */ "./src/Typesense/AnalyticsRules.ts"); -/* harmony import */ var _AnalyticsRule__WEBPACK_IMPORTED_MODULE_4__ = __webpack_require__(/*! ./AnalyticsRule */ "./src/Typesense/AnalyticsRule.ts"); -/* harmony import */ var _AnalyticsEvents__WEBPACK_IMPORTED_MODULE_5__ = __webpack_require__(/*! ./AnalyticsEvents */ "./src/Typesense/AnalyticsEvents.ts"); +function _classCallCheck(a, n) { + if (!(a instanceof n)) throw new TypeError("Cannot call a class as a function"); +} +/***/ }), +/***/ "./node_modules/.pnpm/@babel+runtime@7.26.9/node_modules/@babel/runtime/helpers/esm/construct.js": +/*!*******************************************************************************************************!*\ + !*** ./node_modules/.pnpm/@babel+runtime@7.26.9/node_modules/@babel/runtime/helpers/esm/construct.js ***! + \*******************************************************************************************************/ +/***/ ((__unused_webpack___webpack_module__, __webpack_exports__, __webpack_require__) => { +"use strict"; +__webpack_require__.r(__webpack_exports__); +/* harmony export */ __webpack_require__.d(__webpack_exports__, { +/* harmony export */ "default": () => (/* binding */ _construct) +/* harmony export */ }); +/* harmony import */ var _isNativeReflectConstruct_js__WEBPACK_IMPORTED_MODULE_0__ = __webpack_require__(/*! ./isNativeReflectConstruct.js */ "./node_modules/.pnpm/@babel+runtime@7.26.9/node_modules/@babel/runtime/helpers/esm/isNativeReflectConstruct.js"); +/* harmony import */ var _setPrototypeOf_js__WEBPACK_IMPORTED_MODULE_1__ = __webpack_require__(/*! ./setPrototypeOf.js */ "./node_modules/.pnpm/@babel+runtime@7.26.9/node_modules/@babel/runtime/helpers/esm/setPrototypeOf.js"); -var RESOURCEPATH = "/analytics"; -var Analytics = /*#__PURE__*/function () { - function Analytics(apiCall) { - (0,_babel_runtime_helpers_classCallCheck__WEBPACK_IMPORTED_MODULE_0__["default"])(this, Analytics); - (0,_babel_runtime_helpers_defineProperty__WEBPACK_IMPORTED_MODULE_2__["default"])(this, "individualAnalyticsRules", {}); - this.apiCall = apiCall; - this.apiCall = apiCall; - this._analyticsRules = new _AnalyticsRules__WEBPACK_IMPORTED_MODULE_3__["default"](this.apiCall); - this._analyticsEvents = new _AnalyticsEvents__WEBPACK_IMPORTED_MODULE_5__["default"](this.apiCall); +function _construct(t, e, r) { + if ((0,_isNativeReflectConstruct_js__WEBPACK_IMPORTED_MODULE_0__["default"])()) return Reflect.construct.apply(null, arguments); + var o = [null]; + o.push.apply(o, e); + var p = new (t.bind.apply(t, o))(); + return r && (0,_setPrototypeOf_js__WEBPACK_IMPORTED_MODULE_1__["default"])(p, r.prototype), p; +} + + +/***/ }), + +/***/ "./node_modules/.pnpm/@babel+runtime@7.26.9/node_modules/@babel/runtime/helpers/esm/createClass.js": +/*!*********************************************************************************************************!*\ + !*** ./node_modules/.pnpm/@babel+runtime@7.26.9/node_modules/@babel/runtime/helpers/esm/createClass.js ***! + \*********************************************************************************************************/ +/***/ ((__unused_webpack___webpack_module__, __webpack_exports__, __webpack_require__) => { + +"use strict"; +__webpack_require__.r(__webpack_exports__); +/* harmony export */ __webpack_require__.d(__webpack_exports__, { +/* harmony export */ "default": () => (/* binding */ _createClass) +/* harmony export */ }); +/* harmony import */ var _toPropertyKey_js__WEBPACK_IMPORTED_MODULE_0__ = __webpack_require__(/*! ./toPropertyKey.js */ "./node_modules/.pnpm/@babel+runtime@7.26.9/node_modules/@babel/runtime/helpers/esm/toPropertyKey.js"); + +function _defineProperties(e, r) { + for (var t = 0; t < r.length; t++) { + var o = r[t]; + o.enumerable = o.enumerable || !1, o.configurable = !0, "value" in o && (o.writable = !0), Object.defineProperty(e, (0,_toPropertyKey_js__WEBPACK_IMPORTED_MODULE_0__["default"])(o.key), o); } - (0,_babel_runtime_helpers_createClass__WEBPACK_IMPORTED_MODULE_1__["default"])(Analytics, [{ - key: "rules", - value: function rules(id) { - if (id === undefined) { - return this._analyticsRules; - } else { - if (this.individualAnalyticsRules[id] === undefined) { - this.individualAnalyticsRules[id] = new _AnalyticsRule__WEBPACK_IMPORTED_MODULE_4__["default"](id, this.apiCall); - } - return this.individualAnalyticsRules[id]; - } - } - }, { - key: "events", - value: function events() { - return this._analyticsEvents; - } - }], [{ - key: "RESOURCEPATH", - get: function get() { - return RESOURCEPATH; - } - }]); - return Analytics; -}(); +} +function _createClass(e, r, t) { + return r && _defineProperties(e.prototype, r), t && _defineProperties(e, t), Object.defineProperty(e, "prototype", { + writable: !1 + }), e; +} /***/ }), -/***/ "./src/Typesense/AnalyticsEvents.ts": -/*!******************************************!*\ - !*** ./src/Typesense/AnalyticsEvents.ts ***! - \******************************************/ -/***/ ((__unused_webpack_module, __webpack_exports__, __webpack_require__) => { +/***/ "./node_modules/.pnpm/@babel+runtime@7.26.9/node_modules/@babel/runtime/helpers/esm/defineProperty.js": +/*!************************************************************************************************************!*\ + !*** ./node_modules/.pnpm/@babel+runtime@7.26.9/node_modules/@babel/runtime/helpers/esm/defineProperty.js ***! + \************************************************************************************************************/ +/***/ ((__unused_webpack___webpack_module__, __webpack_exports__, __webpack_require__) => { "use strict"; __webpack_require__.r(__webpack_exports__); /* harmony export */ __webpack_require__.d(__webpack_exports__, { -/* harmony export */ "default": () => (/* binding */ AnalyticsEvents) +/* harmony export */ "default": () => (/* binding */ _defineProperty) /* harmony export */ }); -/* harmony import */ var _babel_runtime_helpers_asyncToGenerator__WEBPACK_IMPORTED_MODULE_0__ = __webpack_require__(/*! @babel/runtime/helpers/asyncToGenerator */ "./node_modules/@babel/runtime/helpers/esm/asyncToGenerator.js"); -/* harmony import */ var _babel_runtime_helpers_classCallCheck__WEBPACK_IMPORTED_MODULE_1__ = __webpack_require__(/*! @babel/runtime/helpers/classCallCheck */ "./node_modules/@babel/runtime/helpers/esm/classCallCheck.js"); -/* harmony import */ var _babel_runtime_helpers_createClass__WEBPACK_IMPORTED_MODULE_2__ = __webpack_require__(/*! @babel/runtime/helpers/createClass */ "./node_modules/@babel/runtime/helpers/esm/createClass.js"); -/* harmony import */ var _babel_runtime_regenerator__WEBPACK_IMPORTED_MODULE_3__ = __webpack_require__(/*! @babel/runtime/regenerator */ "./node_modules/@babel/runtime/regenerator/index.js"); -/* harmony import */ var _babel_runtime_regenerator__WEBPACK_IMPORTED_MODULE_3___default = /*#__PURE__*/__webpack_require__.n(_babel_runtime_regenerator__WEBPACK_IMPORTED_MODULE_3__); +/* harmony import */ var _toPropertyKey_js__WEBPACK_IMPORTED_MODULE_0__ = __webpack_require__(/*! ./toPropertyKey.js */ "./node_modules/.pnpm/@babel+runtime@7.26.9/node_modules/@babel/runtime/helpers/esm/toPropertyKey.js"); +function _defineProperty(e, r, t) { + return (r = (0,_toPropertyKey_js__WEBPACK_IMPORTED_MODULE_0__["default"])(r)) in e ? Object.defineProperty(e, r, { + value: t, + enumerable: !0, + configurable: !0, + writable: !0 + }) : e[r] = t, e; +} +/***/ }), -var RESOURCEPATH = "/analytics/events"; -var AnalyticsEvents = /*#__PURE__*/function () { - function AnalyticsEvents(apiCall) { - (0,_babel_runtime_helpers_classCallCheck__WEBPACK_IMPORTED_MODULE_1__["default"])(this, AnalyticsEvents); - this.apiCall = apiCall; - this.apiCall = apiCall; - } - (0,_babel_runtime_helpers_createClass__WEBPACK_IMPORTED_MODULE_2__["default"])(AnalyticsEvents, [{ - key: "create", - value: function () { - var _create = (0,_babel_runtime_helpers_asyncToGenerator__WEBPACK_IMPORTED_MODULE_0__["default"])( /*#__PURE__*/_babel_runtime_regenerator__WEBPACK_IMPORTED_MODULE_3___default().mark(function _callee(params) { - return _babel_runtime_regenerator__WEBPACK_IMPORTED_MODULE_3___default().wrap(function _callee$(_context) { - while (1) switch (_context.prev = _context.next) { - case 0: - return _context.abrupt("return", this.apiCall.post(this.endpointPath(), params)); - case 1: - case "end": - return _context.stop(); - } - }, _callee, this); - })); - function create(_x) { - return _create.apply(this, arguments); - } - return create; - }() - }, { - key: "endpointPath", - value: function endpointPath(operation) { - return "".concat(AnalyticsEvents.RESOURCEPATH).concat(operation === undefined ? "" : "/" + encodeURIComponent(operation)); - } - }], [{ - key: "RESOURCEPATH", - get: function get() { - return RESOURCEPATH; - } - }]); - return AnalyticsEvents; -}(); +/***/ "./node_modules/.pnpm/@babel+runtime@7.26.9/node_modules/@babel/runtime/helpers/esm/getPrototypeOf.js": +/*!************************************************************************************************************!*\ + !*** ./node_modules/.pnpm/@babel+runtime@7.26.9/node_modules/@babel/runtime/helpers/esm/getPrototypeOf.js ***! + \************************************************************************************************************/ +/***/ ((__unused_webpack___webpack_module__, __webpack_exports__, __webpack_require__) => { + +"use strict"; +__webpack_require__.r(__webpack_exports__); +/* harmony export */ __webpack_require__.d(__webpack_exports__, { +/* harmony export */ "default": () => (/* binding */ _getPrototypeOf) +/* harmony export */ }); +function _getPrototypeOf(t) { + return _getPrototypeOf = Object.setPrototypeOf ? Object.getPrototypeOf.bind() : function (t) { + return t.__proto__ || Object.getPrototypeOf(t); + }, _getPrototypeOf(t); +} /***/ }), -/***/ "./src/Typesense/AnalyticsRule.ts": -/*!****************************************!*\ - !*** ./src/Typesense/AnalyticsRule.ts ***! - \****************************************/ -/***/ ((__unused_webpack_module, __webpack_exports__, __webpack_require__) => { +/***/ "./node_modules/.pnpm/@babel+runtime@7.26.9/node_modules/@babel/runtime/helpers/esm/inherits.js": +/*!******************************************************************************************************!*\ + !*** ./node_modules/.pnpm/@babel+runtime@7.26.9/node_modules/@babel/runtime/helpers/esm/inherits.js ***! + \******************************************************************************************************/ +/***/ ((__unused_webpack___webpack_module__, __webpack_exports__, __webpack_require__) => { "use strict"; __webpack_require__.r(__webpack_exports__); /* harmony export */ __webpack_require__.d(__webpack_exports__, { -/* harmony export */ "default": () => (/* binding */ AnalyticsRule) +/* harmony export */ "default": () => (/* binding */ _inherits) /* harmony export */ }); -/* harmony import */ var _babel_runtime_helpers_asyncToGenerator__WEBPACK_IMPORTED_MODULE_0__ = __webpack_require__(/*! @babel/runtime/helpers/asyncToGenerator */ "./node_modules/@babel/runtime/helpers/esm/asyncToGenerator.js"); -/* harmony import */ var _babel_runtime_helpers_classCallCheck__WEBPACK_IMPORTED_MODULE_1__ = __webpack_require__(/*! @babel/runtime/helpers/classCallCheck */ "./node_modules/@babel/runtime/helpers/esm/classCallCheck.js"); -/* harmony import */ var _babel_runtime_helpers_createClass__WEBPACK_IMPORTED_MODULE_2__ = __webpack_require__(/*! @babel/runtime/helpers/createClass */ "./node_modules/@babel/runtime/helpers/esm/createClass.js"); -/* harmony import */ var _babel_runtime_regenerator__WEBPACK_IMPORTED_MODULE_3__ = __webpack_require__(/*! @babel/runtime/regenerator */ "./node_modules/@babel/runtime/regenerator/index.js"); -/* harmony import */ var _babel_runtime_regenerator__WEBPACK_IMPORTED_MODULE_3___default = /*#__PURE__*/__webpack_require__.n(_babel_runtime_regenerator__WEBPACK_IMPORTED_MODULE_3__); -/* harmony import */ var _AnalyticsRules__WEBPACK_IMPORTED_MODULE_4__ = __webpack_require__(/*! ./AnalyticsRules */ "./src/Typesense/AnalyticsRules.ts"); +/* harmony import */ var _setPrototypeOf_js__WEBPACK_IMPORTED_MODULE_0__ = __webpack_require__(/*! ./setPrototypeOf.js */ "./node_modules/.pnpm/@babel+runtime@7.26.9/node_modules/@babel/runtime/helpers/esm/setPrototypeOf.js"); +function _inherits(t, e) { + if ("function" != typeof e && null !== e) throw new TypeError("Super expression must either be null or a function"); + t.prototype = Object.create(e && e.prototype, { + constructor: { + value: t, + writable: !0, + configurable: !0 + } + }), Object.defineProperty(t, "prototype", { + writable: !1 + }), e && (0,_setPrototypeOf_js__WEBPACK_IMPORTED_MODULE_0__["default"])(t, e); +} +/***/ }), +/***/ "./node_modules/.pnpm/@babel+runtime@7.26.9/node_modules/@babel/runtime/helpers/esm/isNativeFunction.js": +/*!**************************************************************************************************************!*\ + !*** ./node_modules/.pnpm/@babel+runtime@7.26.9/node_modules/@babel/runtime/helpers/esm/isNativeFunction.js ***! + \**************************************************************************************************************/ +/***/ ((__unused_webpack___webpack_module__, __webpack_exports__, __webpack_require__) => { -var AnalyticsRule = /*#__PURE__*/function () { - function AnalyticsRule(name, apiCall) { - (0,_babel_runtime_helpers_classCallCheck__WEBPACK_IMPORTED_MODULE_1__["default"])(this, AnalyticsRule); - this.name = name; - this.apiCall = apiCall; +"use strict"; +__webpack_require__.r(__webpack_exports__); +/* harmony export */ __webpack_require__.d(__webpack_exports__, { +/* harmony export */ "default": () => (/* binding */ _isNativeFunction) +/* harmony export */ }); +function _isNativeFunction(t) { + try { + return -1 !== Function.toString.call(t).indexOf("[native code]"); + } catch (n) { + return "function" == typeof t; } - (0,_babel_runtime_helpers_createClass__WEBPACK_IMPORTED_MODULE_2__["default"])(AnalyticsRule, [{ - key: "retrieve", - value: function () { - var _retrieve = (0,_babel_runtime_helpers_asyncToGenerator__WEBPACK_IMPORTED_MODULE_0__["default"])( /*#__PURE__*/_babel_runtime_regenerator__WEBPACK_IMPORTED_MODULE_3___default().mark(function _callee() { - return _babel_runtime_regenerator__WEBPACK_IMPORTED_MODULE_3___default().wrap(function _callee$(_context) { - while (1) switch (_context.prev = _context.next) { - case 0: - return _context.abrupt("return", this.apiCall.get(this.endpointPath())); - case 1: - case "end": - return _context.stop(); - } - }, _callee, this); - })); - function retrieve() { - return _retrieve.apply(this, arguments); - } - return retrieve; - }() - }, { - key: "delete", - value: function () { - var _delete2 = (0,_babel_runtime_helpers_asyncToGenerator__WEBPACK_IMPORTED_MODULE_0__["default"])( /*#__PURE__*/_babel_runtime_regenerator__WEBPACK_IMPORTED_MODULE_3___default().mark(function _callee2() { - return _babel_runtime_regenerator__WEBPACK_IMPORTED_MODULE_3___default().wrap(function _callee2$(_context2) { - while (1) switch (_context2.prev = _context2.next) { - case 0: - return _context2.abrupt("return", this.apiCall.delete(this.endpointPath())); - case 1: - case "end": - return _context2.stop(); - } - }, _callee2, this); - })); - function _delete() { - return _delete2.apply(this, arguments); - } - return _delete; - }() - }, { - key: "endpointPath", - value: function endpointPath() { - return "".concat(_AnalyticsRules__WEBPACK_IMPORTED_MODULE_4__["default"].RESOURCEPATH, "/").concat(encodeURIComponent(this.name)); - } - }]); - return AnalyticsRule; -}(); +} /***/ }), -/***/ "./src/Typesense/AnalyticsRules.ts": -/*!*****************************************!*\ - !*** ./src/Typesense/AnalyticsRules.ts ***! - \*****************************************/ -/***/ ((__unused_webpack_module, __webpack_exports__, __webpack_require__) => { +/***/ "./node_modules/.pnpm/@babel+runtime@7.26.9/node_modules/@babel/runtime/helpers/esm/isNativeReflectConstruct.js": +/*!**********************************************************************************************************************!*\ + !*** ./node_modules/.pnpm/@babel+runtime@7.26.9/node_modules/@babel/runtime/helpers/esm/isNativeReflectConstruct.js ***! + \**********************************************************************************************************************/ +/***/ ((__unused_webpack___webpack_module__, __webpack_exports__, __webpack_require__) => { "use strict"; __webpack_require__.r(__webpack_exports__); /* harmony export */ __webpack_require__.d(__webpack_exports__, { -/* harmony export */ "default": () => (/* binding */ AnalyticsRules) +/* harmony export */ "default": () => (/* binding */ _isNativeReflectConstruct) /* harmony export */ }); -/* harmony import */ var _babel_runtime_helpers_asyncToGenerator__WEBPACK_IMPORTED_MODULE_0__ = __webpack_require__(/*! @babel/runtime/helpers/asyncToGenerator */ "./node_modules/@babel/runtime/helpers/esm/asyncToGenerator.js"); -/* harmony import */ var _babel_runtime_helpers_classCallCheck__WEBPACK_IMPORTED_MODULE_1__ = __webpack_require__(/*! @babel/runtime/helpers/classCallCheck */ "./node_modules/@babel/runtime/helpers/esm/classCallCheck.js"); -/* harmony import */ var _babel_runtime_helpers_createClass__WEBPACK_IMPORTED_MODULE_2__ = __webpack_require__(/*! @babel/runtime/helpers/createClass */ "./node_modules/@babel/runtime/helpers/esm/createClass.js"); -/* harmony import */ var _babel_runtime_regenerator__WEBPACK_IMPORTED_MODULE_3__ = __webpack_require__(/*! @babel/runtime/regenerator */ "./node_modules/@babel/runtime/regenerator/index.js"); -/* harmony import */ var _babel_runtime_regenerator__WEBPACK_IMPORTED_MODULE_3___default = /*#__PURE__*/__webpack_require__.n(_babel_runtime_regenerator__WEBPACK_IMPORTED_MODULE_3__); +function _isNativeReflectConstruct() { + try { + var t = !Boolean.prototype.valueOf.call(Reflect.construct(Boolean, [], function () {})); + } catch (t) {} + return (_isNativeReflectConstruct = function _isNativeReflectConstruct() { + return !!t; + })(); +} +/***/ }), +/***/ "./node_modules/.pnpm/@babel+runtime@7.26.9/node_modules/@babel/runtime/helpers/esm/iterableToArray.js": +/*!*************************************************************************************************************!*\ + !*** ./node_modules/.pnpm/@babel+runtime@7.26.9/node_modules/@babel/runtime/helpers/esm/iterableToArray.js ***! + \*************************************************************************************************************/ +/***/ ((__unused_webpack___webpack_module__, __webpack_exports__, __webpack_require__) => { -var RESOURCEPATH = "/analytics/rules"; -var AnalyticsRules = /*#__PURE__*/function () { - function AnalyticsRules(apiCall) { - (0,_babel_runtime_helpers_classCallCheck__WEBPACK_IMPORTED_MODULE_1__["default"])(this, AnalyticsRules); - this.apiCall = apiCall; - this.apiCall = apiCall; - } - (0,_babel_runtime_helpers_createClass__WEBPACK_IMPORTED_MODULE_2__["default"])(AnalyticsRules, [{ - key: "upsert", - value: function () { - var _upsert = (0,_babel_runtime_helpers_asyncToGenerator__WEBPACK_IMPORTED_MODULE_0__["default"])( /*#__PURE__*/_babel_runtime_regenerator__WEBPACK_IMPORTED_MODULE_3___default().mark(function _callee(name, params) { - return _babel_runtime_regenerator__WEBPACK_IMPORTED_MODULE_3___default().wrap(function _callee$(_context) { - while (1) switch (_context.prev = _context.next) { - case 0: - return _context.abrupt("return", this.apiCall.put(this.endpointPath(name), params)); - case 1: - case "end": - return _context.stop(); - } - }, _callee, this); - })); - function upsert(_x, _x2) { - return _upsert.apply(this, arguments); - } - return upsert; - }() - }, { - key: "retrieve", - value: function () { - var _retrieve = (0,_babel_runtime_helpers_asyncToGenerator__WEBPACK_IMPORTED_MODULE_0__["default"])( /*#__PURE__*/_babel_runtime_regenerator__WEBPACK_IMPORTED_MODULE_3___default().mark(function _callee2() { - return _babel_runtime_regenerator__WEBPACK_IMPORTED_MODULE_3___default().wrap(function _callee2$(_context2) { - while (1) switch (_context2.prev = _context2.next) { - case 0: - return _context2.abrupt("return", this.apiCall.get(this.endpointPath())); - case 1: - case "end": - return _context2.stop(); - } - }, _callee2, this); - })); - function retrieve() { - return _retrieve.apply(this, arguments); +"use strict"; +__webpack_require__.r(__webpack_exports__); +/* harmony export */ __webpack_require__.d(__webpack_exports__, { +/* harmony export */ "default": () => (/* binding */ _iterableToArray) +/* harmony export */ }); +function _iterableToArray(r) { + if ("undefined" != typeof Symbol && null != r[Symbol.iterator] || null != r["@@iterator"]) return Array.from(r); +} + + +/***/ }), + +/***/ "./node_modules/.pnpm/@babel+runtime@7.26.9/node_modules/@babel/runtime/helpers/esm/iterableToArrayLimit.js": +/*!******************************************************************************************************************!*\ + !*** ./node_modules/.pnpm/@babel+runtime@7.26.9/node_modules/@babel/runtime/helpers/esm/iterableToArrayLimit.js ***! + \******************************************************************************************************************/ +/***/ ((__unused_webpack___webpack_module__, __webpack_exports__, __webpack_require__) => { + +"use strict"; +__webpack_require__.r(__webpack_exports__); +/* harmony export */ __webpack_require__.d(__webpack_exports__, { +/* harmony export */ "default": () => (/* binding */ _iterableToArrayLimit) +/* harmony export */ }); +function _iterableToArrayLimit(r, l) { + var t = null == r ? null : "undefined" != typeof Symbol && r[Symbol.iterator] || r["@@iterator"]; + if (null != t) { + var e, + n, + i, + u, + a = [], + f = !0, + o = !1; + try { + if (i = (t = t.call(r)).next, 0 === l) { + if (Object(t) !== t) return; + f = !1; + } else for (; !(f = (e = i.call(t)).done) && (a.push(e.value), a.length !== l); f = !0); + } catch (r) { + o = !0, n = r; + } finally { + try { + if (!f && null != t["return"] && (u = t["return"](), Object(u) !== u)) return; + } finally { + if (o) throw n; } - return retrieve; - }() - }, { - key: "endpointPath", - value: function endpointPath(operation) { - return "".concat(AnalyticsRules.RESOURCEPATH).concat(operation === undefined ? "" : "/" + encodeURIComponent(operation)); - } - }], [{ - key: "RESOURCEPATH", - get: function get() { - return RESOURCEPATH; } - }]); - return AnalyticsRules; -}(); + return a; + } +} /***/ }), -/***/ "./src/Typesense/ApiCall.ts": -/*!**********************************!*\ - !*** ./src/Typesense/ApiCall.ts ***! - \**********************************/ -/***/ ((__unused_webpack_module, __webpack_exports__, __webpack_require__) => { +/***/ "./node_modules/.pnpm/@babel+runtime@7.26.9/node_modules/@babel/runtime/helpers/esm/nonIterableRest.js": +/*!*************************************************************************************************************!*\ + !*** ./node_modules/.pnpm/@babel+runtime@7.26.9/node_modules/@babel/runtime/helpers/esm/nonIterableRest.js ***! + \*************************************************************************************************************/ +/***/ ((__unused_webpack___webpack_module__, __webpack_exports__, __webpack_require__) => { "use strict"; __webpack_require__.r(__webpack_exports__); /* harmony export */ __webpack_require__.d(__webpack_exports__, { -/* harmony export */ "default": () => (/* binding */ ApiCall) +/* harmony export */ "default": () => (/* binding */ _nonIterableRest) /* harmony export */ }); -/* harmony import */ var _babel_runtime_helpers_typeof__WEBPACK_IMPORTED_MODULE_0__ = __webpack_require__(/*! @babel/runtime/helpers/typeof */ "./node_modules/@babel/runtime/helpers/esm/typeof.js"); -/* harmony import */ var _babel_runtime_helpers_asyncToGenerator__WEBPACK_IMPORTED_MODULE_1__ = __webpack_require__(/*! @babel/runtime/helpers/asyncToGenerator */ "./node_modules/@babel/runtime/helpers/esm/asyncToGenerator.js"); -/* harmony import */ var _babel_runtime_helpers_classCallCheck__WEBPACK_IMPORTED_MODULE_2__ = __webpack_require__(/*! @babel/runtime/helpers/classCallCheck */ "./node_modules/@babel/runtime/helpers/esm/classCallCheck.js"); -/* harmony import */ var _babel_runtime_helpers_createClass__WEBPACK_IMPORTED_MODULE_3__ = __webpack_require__(/*! @babel/runtime/helpers/createClass */ "./node_modules/@babel/runtime/helpers/esm/createClass.js"); -/* harmony import */ var _babel_runtime_regenerator__WEBPACK_IMPORTED_MODULE_4__ = __webpack_require__(/*! @babel/runtime/regenerator */ "./node_modules/@babel/runtime/regenerator/index.js"); -/* harmony import */ var _babel_runtime_regenerator__WEBPACK_IMPORTED_MODULE_4___default = /*#__PURE__*/__webpack_require__.n(_babel_runtime_regenerator__WEBPACK_IMPORTED_MODULE_4__); -/* harmony import */ var axios__WEBPACK_IMPORTED_MODULE_9__ = __webpack_require__(/*! axios */ "./node_modules/axios/lib/axios.js"); -/* harmony import */ var http__WEBPACK_IMPORTED_MODULE_5__ = __webpack_require__(/*! http */ "?e89d"); -/* harmony import */ var http__WEBPACK_IMPORTED_MODULE_5___default = /*#__PURE__*/__webpack_require__.n(http__WEBPACK_IMPORTED_MODULE_5__); -/* harmony import */ var https__WEBPACK_IMPORTED_MODULE_6__ = __webpack_require__(/*! https */ "?77e4"); -/* harmony import */ var https__WEBPACK_IMPORTED_MODULE_6___default = /*#__PURE__*/__webpack_require__.n(https__WEBPACK_IMPORTED_MODULE_6__); -/* harmony import */ var _Errors__WEBPACK_IMPORTED_MODULE_7__ = __webpack_require__(/*! ./Errors */ "./src/Typesense/Errors/index.ts"); -/* harmony import */ var _Errors_TypesenseError__WEBPACK_IMPORTED_MODULE_8__ = __webpack_require__(/*! ./Errors/TypesenseError */ "./src/Typesense/Errors/TypesenseError.ts"); +function _nonIterableRest() { + throw new TypeError("Invalid attempt to destructure non-iterable instance.\nIn order to be iterable, non-array objects must have a [Symbol.iterator]() method."); +} +/***/ }), +/***/ "./node_modules/.pnpm/@babel+runtime@7.26.9/node_modules/@babel/runtime/helpers/esm/nonIterableSpread.js": +/*!***************************************************************************************************************!*\ + !*** ./node_modules/.pnpm/@babel+runtime@7.26.9/node_modules/@babel/runtime/helpers/esm/nonIterableSpread.js ***! + \***************************************************************************************************************/ +/***/ ((__unused_webpack___webpack_module__, __webpack_exports__, __webpack_require__) => { +"use strict"; +__webpack_require__.r(__webpack_exports__); +/* harmony export */ __webpack_require__.d(__webpack_exports__, { +/* harmony export */ "default": () => (/* binding */ _nonIterableSpread) +/* harmony export */ }); +function _nonIterableSpread() { + throw new TypeError("Invalid attempt to spread non-iterable instance.\nIn order to be iterable, non-array objects must have a [Symbol.iterator]() method."); +} +/***/ }), +/***/ "./node_modules/.pnpm/@babel+runtime@7.26.9/node_modules/@babel/runtime/helpers/esm/possibleConstructorReturn.js": +/*!***********************************************************************************************************************!*\ + !*** ./node_modules/.pnpm/@babel+runtime@7.26.9/node_modules/@babel/runtime/helpers/esm/possibleConstructorReturn.js ***! + \***********************************************************************************************************************/ +/***/ ((__unused_webpack___webpack_module__, __webpack_exports__, __webpack_require__) => { +"use strict"; +__webpack_require__.r(__webpack_exports__); +/* harmony export */ __webpack_require__.d(__webpack_exports__, { +/* harmony export */ "default": () => (/* binding */ _possibleConstructorReturn) +/* harmony export */ }); +/* harmony import */ var _typeof_js__WEBPACK_IMPORTED_MODULE_0__ = __webpack_require__(/*! ./typeof.js */ "./node_modules/.pnpm/@babel+runtime@7.26.9/node_modules/@babel/runtime/helpers/esm/typeof.js"); +/* harmony import */ var _assertThisInitialized_js__WEBPACK_IMPORTED_MODULE_1__ = __webpack_require__(/*! ./assertThisInitialized.js */ "./node_modules/.pnpm/@babel+runtime@7.26.9/node_modules/@babel/runtime/helpers/esm/assertThisInitialized.js"); -var APIKEYHEADERNAME = "X-TYPESENSE-API-KEY"; -var HEALTHY = true; -var UNHEALTHY = false; -var isNodeJSEnvironment = typeof process !== "undefined" && process.versions != null && process.versions.node != null; -var ApiCall = /*#__PURE__*/function () { - function ApiCall(configuration) { - (0,_babel_runtime_helpers_classCallCheck__WEBPACK_IMPORTED_MODULE_2__["default"])(this, ApiCall); - this.configuration = configuration; - this.apiKey = this.configuration.apiKey; - this.nodes = this.configuration.nodes == null ? this.configuration.nodes : JSON.parse(JSON.stringify(this.configuration.nodes)); // Make a copy, since we'll be adding additional metadata to the nodes - this.nearestNode = this.configuration.nearestNode == null ? this.configuration.nearestNode : JSON.parse(JSON.stringify(this.configuration.nearestNode)); - this.connectionTimeoutSeconds = this.configuration.connectionTimeoutSeconds; - this.healthcheckIntervalSeconds = this.configuration.healthcheckIntervalSeconds; - this.numRetriesPerRequest = this.configuration.numRetries; - this.retryIntervalSeconds = this.configuration.retryIntervalSeconds; - this.sendApiKeyAsQueryParam = this.configuration.sendApiKeyAsQueryParam; - this.additionalUserHeaders = this.configuration.additionalHeaders; - this.logger = this.configuration.logger; - this.initializeMetadataForNodes(); - this.currentNodeIndex = -1; - } - (0,_babel_runtime_helpers_createClass__WEBPACK_IMPORTED_MODULE_3__["default"])(ApiCall, [{ - key: "get", - value: function () { - var _get = (0,_babel_runtime_helpers_asyncToGenerator__WEBPACK_IMPORTED_MODULE_1__["default"])( /*#__PURE__*/_babel_runtime_regenerator__WEBPACK_IMPORTED_MODULE_4___default().mark(function _callee(endpoint) { - var queryParameters, - _ref, - _ref$abortSignal, - abortSignal, - _ref$responseType, - responseType, - _args = arguments; - return _babel_runtime_regenerator__WEBPACK_IMPORTED_MODULE_4___default().wrap(function _callee$(_context) { - while (1) switch (_context.prev = _context.next) { - case 0: - queryParameters = _args.length > 1 && _args[1] !== undefined ? _args[1] : {}; - _ref = _args.length > 2 && _args[2] !== undefined ? _args[2] : {}, _ref$abortSignal = _ref.abortSignal, abortSignal = _ref$abortSignal === void 0 ? null : _ref$abortSignal, _ref$responseType = _ref.responseType, responseType = _ref$responseType === void 0 ? undefined : _ref$responseType; - return _context.abrupt("return", this.performRequest("get", endpoint, { - queryParameters: queryParameters, - abortSignal: abortSignal, - responseType: responseType - })); - case 3: - case "end": - return _context.stop(); - } - }, _callee, this); - })); - function get(_x) { - return _get.apply(this, arguments); - } - return get; - }() - }, { - key: "delete", - value: function () { - var _delete2 = (0,_babel_runtime_helpers_asyncToGenerator__WEBPACK_IMPORTED_MODULE_1__["default"])( /*#__PURE__*/_babel_runtime_regenerator__WEBPACK_IMPORTED_MODULE_4___default().mark(function _callee2(endpoint) { - var queryParameters, - _args2 = arguments; - return _babel_runtime_regenerator__WEBPACK_IMPORTED_MODULE_4___default().wrap(function _callee2$(_context2) { - while (1) switch (_context2.prev = _context2.next) { - case 0: - queryParameters = _args2.length > 1 && _args2[1] !== undefined ? _args2[1] : {}; - return _context2.abrupt("return", this.performRequest("delete", endpoint, { - queryParameters: queryParameters - })); - case 2: - case "end": - return _context2.stop(); - } - }, _callee2, this); - })); - function _delete(_x2) { - return _delete2.apply(this, arguments); - } - return _delete; - }() - }, { - key: "post", - value: function () { - var _post = (0,_babel_runtime_helpers_asyncToGenerator__WEBPACK_IMPORTED_MODULE_1__["default"])( /*#__PURE__*/_babel_runtime_regenerator__WEBPACK_IMPORTED_MODULE_4___default().mark(function _callee3(endpoint) { - var bodyParameters, - queryParameters, - additionalHeaders, - _args3 = arguments; - return _babel_runtime_regenerator__WEBPACK_IMPORTED_MODULE_4___default().wrap(function _callee3$(_context3) { - while (1) switch (_context3.prev = _context3.next) { - case 0: - bodyParameters = _args3.length > 1 && _args3[1] !== undefined ? _args3[1] : {}; - queryParameters = _args3.length > 2 && _args3[2] !== undefined ? _args3[2] : {}; - additionalHeaders = _args3.length > 3 && _args3[3] !== undefined ? _args3[3] : {}; - return _context3.abrupt("return", this.performRequest("post", endpoint, { - queryParameters: queryParameters, - bodyParameters: bodyParameters, - additionalHeaders: additionalHeaders - })); - case 4: - case "end": - return _context3.stop(); - } - }, _callee3, this); - })); - function post(_x3) { - return _post.apply(this, arguments); - } - return post; - }() - }, { - key: "put", - value: function () { - var _put = (0,_babel_runtime_helpers_asyncToGenerator__WEBPACK_IMPORTED_MODULE_1__["default"])( /*#__PURE__*/_babel_runtime_regenerator__WEBPACK_IMPORTED_MODULE_4___default().mark(function _callee4(endpoint) { - var bodyParameters, - queryParameters, - _args4 = arguments; - return _babel_runtime_regenerator__WEBPACK_IMPORTED_MODULE_4___default().wrap(function _callee4$(_context4) { - while (1) switch (_context4.prev = _context4.next) { - case 0: - bodyParameters = _args4.length > 1 && _args4[1] !== undefined ? _args4[1] : {}; - queryParameters = _args4.length > 2 && _args4[2] !== undefined ? _args4[2] : {}; - return _context4.abrupt("return", this.performRequest("put", endpoint, { - queryParameters: queryParameters, - bodyParameters: bodyParameters - })); - case 3: - case "end": - return _context4.stop(); - } - }, _callee4, this); - })); - function put(_x4) { - return _put.apply(this, arguments); - } - return put; - }() - }, { - key: "patch", - value: function () { - var _patch = (0,_babel_runtime_helpers_asyncToGenerator__WEBPACK_IMPORTED_MODULE_1__["default"])( /*#__PURE__*/_babel_runtime_regenerator__WEBPACK_IMPORTED_MODULE_4___default().mark(function _callee5(endpoint) { - var bodyParameters, - queryParameters, - _args5 = arguments; - return _babel_runtime_regenerator__WEBPACK_IMPORTED_MODULE_4___default().wrap(function _callee5$(_context5) { - while (1) switch (_context5.prev = _context5.next) { - case 0: - bodyParameters = _args5.length > 1 && _args5[1] !== undefined ? _args5[1] : {}; - queryParameters = _args5.length > 2 && _args5[2] !== undefined ? _args5[2] : {}; - return _context5.abrupt("return", this.performRequest("patch", endpoint, { - queryParameters: queryParameters, - bodyParameters: bodyParameters - })); - case 3: - case "end": - return _context5.stop(); - } - }, _callee5, this); - })); - function patch(_x5) { - return _patch.apply(this, arguments); - } - return patch; - }() - }, { - key: "getAdapter", - value: function getAdapter() { - if (!this.configuration.axiosAdapter) return undefined; - if (typeof this.configuration.axiosAdapter === "function") return this.configuration.axiosAdapter; - var isCloudflareWorkers = typeof navigator !== "undefined" && navigator.userAgent === "Cloudflare-Workers"; - return isCloudflareWorkers ? axios__WEBPACK_IMPORTED_MODULE_9__["default"].getAdapter(this.configuration.axiosAdapter).bind(globalThis) : axios__WEBPACK_IMPORTED_MODULE_9__["default"].getAdapter(this.configuration.axiosAdapter); - } - }, { - key: "performRequest", - value: function () { - var _performRequest = (0,_babel_runtime_helpers_asyncToGenerator__WEBPACK_IMPORTED_MODULE_1__["default"])( /*#__PURE__*/_babel_runtime_regenerator__WEBPACK_IMPORTED_MODULE_4___default().mark(function _callee6(requestType, endpoint, _ref2) { - var _this = this; - var _ref2$queryParameters, queryParameters, _ref2$bodyParameters, bodyParameters, _ref2$additionalHeade, additionalHeaders, _ref2$abortSignal, abortSignal, _ref2$responseType, responseType, _ref2$skipConnectionT, skipConnectionTimeout, _ref2$enableKeepAlive, enableKeepAlive, requestNumber, lastException, wasAborted, _loop, _ret, numTries; - return _babel_runtime_regenerator__WEBPACK_IMPORTED_MODULE_4___default().wrap(function _callee6$(_context7) { - while (1) switch (_context7.prev = _context7.next) { - case 0: - _ref2$queryParameters = _ref2.queryParameters, queryParameters = _ref2$queryParameters === void 0 ? null : _ref2$queryParameters, _ref2$bodyParameters = _ref2.bodyParameters, bodyParameters = _ref2$bodyParameters === void 0 ? null : _ref2$bodyParameters, _ref2$additionalHeade = _ref2.additionalHeaders, additionalHeaders = _ref2$additionalHeade === void 0 ? {} : _ref2$additionalHeade, _ref2$abortSignal = _ref2.abortSignal, abortSignal = _ref2$abortSignal === void 0 ? null : _ref2$abortSignal, _ref2$responseType = _ref2.responseType, responseType = _ref2$responseType === void 0 ? undefined : _ref2$responseType, _ref2$skipConnectionT = _ref2.skipConnectionTimeout, skipConnectionTimeout = _ref2$skipConnectionT === void 0 ? false : _ref2$skipConnectionT, _ref2$enableKeepAlive = _ref2.enableKeepAlive, enableKeepAlive = _ref2$enableKeepAlive === void 0 ? undefined : _ref2$enableKeepAlive; - this.configuration.validate(); - requestNumber = Date.now(); - wasAborted = false; - this.logger.debug("Request #".concat(requestNumber, ": Performing ").concat(requestType.toUpperCase(), " request: ").concat(endpoint)); - _loop = /*#__PURE__*/_babel_runtime_regenerator__WEBPACK_IMPORTED_MODULE_4___default().mark(function _loop() { - var node, abortListener, requestOptions, cancelToken, source, response, _response$data, _response$data2, _error$code, _error$response; - return _babel_runtime_regenerator__WEBPACK_IMPORTED_MODULE_4___default().wrap(function _loop$(_context6) { - while (1) switch (_context6.prev = _context6.next) { - case 0: - node = _this.getNextNode(requestNumber); - _this.logger.debug("Request #".concat(requestNumber, ": Attempting ").concat(requestType.toUpperCase(), " request Try #").concat(numTries, " to Node ").concat(node.index)); - if (!(abortSignal && abortSignal.aborted)) { - _context6.next = 4; - break; - } - return _context6.abrupt("return", { - v: Promise.reject(new Error("Request aborted by caller.")) - }); - case 4: - _context6.prev = 4; - requestOptions = { - adapter: _this.getAdapter(), - method: requestType, - url: _this.uriFor(endpoint, node), - headers: Object.assign({}, _this.defaultHeaders(), additionalHeaders, _this.additionalUserHeaders), - maxContentLength: Infinity, - maxBodyLength: Infinity, - responseType: responseType, - validateStatus: function validateStatus(status) { - /* Override default validateStatus, which only considers 2xx a success. - In our case, if the server returns any HTTP code, we will handle it below. - We do this to be able to raise custom errors based on response code. - */ - return status > 0; - }, - transformResponse: [function (data, headers) { - var transformedData = data; - if (headers !== undefined && typeof data === "string" && headers["content-type"] && headers["content-type"].startsWith("application/json")) { - transformedData = JSON.parse(data); - } - return transformedData; - }] - }; - if (skipConnectionTimeout !== true) { - requestOptions.timeout = _this.connectionTimeoutSeconds * 1000; - } - if (queryParameters && Object.keys(queryParameters).length !== 0) { - requestOptions.params = queryParameters; - } - if (_this.sendApiKeyAsQueryParam) { - requestOptions.params = requestOptions.params || {}; - requestOptions.params["x-typesense-api-key"] = _this.apiKey; - } - if (_this.configuration.httpAgent) { - _this.logger.debug("Request #".concat(requestNumber, ": Using custom httpAgent")); - requestOptions.httpAgent = _this.configuration.httpAgent; - } else if (enableKeepAlive === true) { - if (!isNodeJSEnvironment) { - _this.logger.warn("Request #".concat(requestNumber, ": Cannot use custom httpAgent in a browser environment to enable keepAlive")); - } else { - _this.logger.debug("Request #".concat(requestNumber, ": Enabling KeepAlive")); - requestOptions.httpAgent = new http__WEBPACK_IMPORTED_MODULE_5__.Agent({ - keepAlive: true - }); - } - } - if (_this.configuration.httpsAgent) { - _this.logger.debug("Request #".concat(requestNumber, ": Using custom httpsAgent")); - requestOptions.httpsAgent = _this.configuration.httpsAgent; - } else if (enableKeepAlive === true) { - if (!isNodeJSEnvironment) { - _this.logger.warn("Request #".concat(requestNumber, ": Cannot use custom httpAgent in a browser environment to enable keepAlive")); - } else { - _this.logger.debug("Request #".concat(requestNumber, ": Enabling keepAlive")); - requestOptions.httpsAgent = new https__WEBPACK_IMPORTED_MODULE_6__.Agent({ - keepAlive: true - }); - } - } - if (_this.configuration.paramsSerializer) { - _this.logger.debug("Request #".concat(requestNumber, ": Using custom paramsSerializer")); - requestOptions.paramsSerializer = _this.configuration.paramsSerializer; - } - if (bodyParameters && (typeof bodyParameters === "string" && bodyParameters.length !== 0 || (0,_babel_runtime_helpers_typeof__WEBPACK_IMPORTED_MODULE_0__["default"])(bodyParameters) === "object" && Object.keys(bodyParameters).length !== 0)) { - requestOptions.data = bodyParameters; - } - - // Translate from user-provided AbortController to the Axios request cancel mechanism. - if (abortSignal) { - cancelToken = axios__WEBPACK_IMPORTED_MODULE_9__["default"].CancelToken; - source = cancelToken.source(); - abortListener = function abortListener() { - wasAborted = true; - source.cancel(); - }; - abortSignal.addEventListener("abort", abortListener); - requestOptions.cancelToken = source.token; - } - _context6.next = 16; - return (0,axios__WEBPACK_IMPORTED_MODULE_9__["default"])(requestOptions); - case 16: - response = _context6.sent; - if (response.status >= 1 && response.status <= 499) { - // Treat any status code > 0 and < 500 to be an indication that node is healthy - // We exclude 0 since some clients return 0 when request fails - _this.setNodeHealthcheck(node, HEALTHY); - } - _this.logger.debug("Request #".concat(requestNumber, ": Request to Node ").concat(node.index, " was made. Response Code was ").concat(response.status, ".")); - if (!(response.status >= 200 && response.status < 300)) { - _context6.next = 23; - break; - } - return _context6.abrupt("return", { - v: Promise.resolve(response.data) - }); - case 23: - if (!(response.status < 500)) { - _context6.next = 27; - break; - } - return _context6.abrupt("return", { - v: Promise.reject(_this.customErrorForResponse(response, (_response$data = response.data) === null || _response$data === void 0 ? void 0 : _response$data.message, requestOptions.data)) - }); - case 27: - throw _this.customErrorForResponse(response, (_response$data2 = response.data) === null || _response$data2 === void 0 ? void 0 : _response$data2.message, requestOptions.data); - case 28: - _context6.next = 40; - break; - case 30: - _context6.prev = 30; - _context6.t0 = _context6["catch"](4); - // This block handles retries for HTTPStatus > 500 and network layer issues like connection timeouts - if (!wasAborted) { - _this.setNodeHealthcheck(node, UNHEALTHY); - } - lastException = _context6.t0; - _this.logger.warn("Request #".concat(requestNumber, ": Request to Node ").concat(node.index, " failed due to \"").concat((_error$code = _context6.t0 === null || _context6.t0 === void 0 ? void 0 : _context6.t0.code) !== null && _error$code !== void 0 ? _error$code : "", " ").concat(_context6.t0.message).concat(_context6.t0.response == null ? "" : " - " + JSON.stringify((_error$response = _context6.t0.response) === null || _error$response === void 0 ? void 0 : _error$response.data), "\"")); - // this.logger.debug(error.stack) - if (!wasAborted) { - _context6.next = 37; - break; - } - return _context6.abrupt("return", { - v: Promise.reject(new Error("Request aborted by caller.")) - }); - case 37: - if (numTries < _this.numRetriesPerRequest + 1) { - _this.logger.warn("Request #".concat(requestNumber, ": Sleeping for ").concat(_this.retryIntervalSeconds, "s and then retrying request...")); - } - _context6.next = 40; - return _this.timer(_this.retryIntervalSeconds); - case 40: - _context6.prev = 40; - if (abortSignal && abortListener) { - abortSignal.removeEventListener("abort", abortListener); - } - return _context6.finish(40); - case 43: - case "end": - return _context6.stop(); - } - }, _loop, null, [[4, 30, 40, 43]]); - }); - numTries = 1; - case 7: - if (!(numTries <= this.numRetriesPerRequest + 1)) { - _context7.next = 15; - break; - } - return _context7.delegateYield(_loop(), "t0", 9); - case 9: - _ret = _context7.t0; - if (!_ret) { - _context7.next = 12; - break; - } - return _context7.abrupt("return", _ret.v); - case 12: - numTries++; - _context7.next = 7; - break; - case 15: - this.logger.debug("Request #".concat(requestNumber, ": No retries left. Raising last error")); - return _context7.abrupt("return", Promise.reject(lastException)); - case 17: - case "end": - return _context7.stop(); - } - }, _callee6, this); - })); - function performRequest(_x6, _x7, _x8) { - return _performRequest.apply(this, arguments); - } - return performRequest; - }() // Attempts to find the next healthy node, looping through the list of nodes once. - // But if no healthy nodes are found, it will just return the next node, even if it's unhealthy - // so we can try the request for good measure, in case that node has become healthy since - }, { - key: "getNextNode", - value: function getNextNode() { - var requestNumber = arguments.length > 0 && arguments[0] !== undefined ? arguments[0] : 0; - // Check if nearestNode is set and is healthy, if so return it - if (this.nearestNode != null) { - this.logger.debug("Request #".concat(requestNumber, ": Nodes Health: Node ").concat(this.nearestNode.index, " is ").concat(this.nearestNode.isHealthy === true ? "Healthy" : "Unhealthy")); - if (this.nearestNode.isHealthy === true || this.nodeDueForHealthcheck(this.nearestNode, requestNumber)) { - this.logger.debug("Request #".concat(requestNumber, ": Updated current node to Node ").concat(this.nearestNode.index)); - return this.nearestNode; - } - this.logger.debug("Request #".concat(requestNumber, ": Falling back to individual nodes")); - } - - // Fallback to nodes as usual - this.logger.debug("Request #".concat(requestNumber, ": Nodes Health: ").concat(this.nodes.map(function (node) { - return "Node ".concat(node.index, " is ").concat(node.isHealthy === true ? "Healthy" : "Unhealthy"); - }).join(" || "))); - var candidateNode = this.nodes[0]; - for (var i = 0; i <= this.nodes.length; i++) { - this.currentNodeIndex = (this.currentNodeIndex + 1) % this.nodes.length; - candidateNode = this.nodes[this.currentNodeIndex]; - if (candidateNode.isHealthy === true || this.nodeDueForHealthcheck(candidateNode, requestNumber)) { - this.logger.debug("Request #".concat(requestNumber, ": Updated current node to Node ").concat(candidateNode.index)); - return candidateNode; - } - } - - // None of the nodes are marked healthy, but some of them could have become healthy since last health check. - // So we will just return the next node. - this.logger.debug("Request #".concat(requestNumber, ": No healthy nodes were found. Returning the next node, Node ").concat(candidateNode.index)); - return candidateNode; - } - }, { - key: "nodeDueForHealthcheck", - value: function nodeDueForHealthcheck(node) { - var requestNumber = arguments.length > 1 && arguments[1] !== undefined ? arguments[1] : 0; - var isDueForHealthcheck = Date.now() - node.lastAccessTimestamp > this.healthcheckIntervalSeconds * 1000; - if (isDueForHealthcheck) { - this.logger.debug("Request #".concat(requestNumber, ": Node ").concat(node.index, " has exceeded healtcheckIntervalSeconds of ").concat(this.healthcheckIntervalSeconds, ". Adding it back into rotation.")); - } - return isDueForHealthcheck; - } - }, { - key: "initializeMetadataForNodes", - value: function initializeMetadataForNodes() { - var _this2 = this; - if (this.nearestNode != null) { - this.nearestNode.index = "nearestNode"; - this.setNodeHealthcheck(this.nearestNode, HEALTHY); - } - this.nodes.forEach(function (node, i) { - node.index = i; - _this2.setNodeHealthcheck(node, HEALTHY); - }); - } - }, { - key: "setNodeHealthcheck", - value: function setNodeHealthcheck(node, isHealthy) { - node.isHealthy = isHealthy; - node.lastAccessTimestamp = Date.now(); - } - }, { - key: "uriFor", - value: function uriFor(endpoint, node) { - if (node.url != null) { - return "".concat(node.url).concat(endpoint); - } - return "".concat(node.protocol, "://").concat(node.host, ":").concat(node.port).concat(node.path).concat(endpoint); - } - }, { - key: "defaultHeaders", - value: function defaultHeaders() { - var defaultHeaders = {}; - if (!this.sendApiKeyAsQueryParam) { - defaultHeaders[APIKEYHEADERNAME] = this.apiKey; - } - defaultHeaders["Content-Type"] = "application/json"; - return defaultHeaders; - } - }, { - key: "timer", - value: function () { - var _timer = (0,_babel_runtime_helpers_asyncToGenerator__WEBPACK_IMPORTED_MODULE_1__["default"])( /*#__PURE__*/_babel_runtime_regenerator__WEBPACK_IMPORTED_MODULE_4___default().mark(function _callee7(seconds) { - return _babel_runtime_regenerator__WEBPACK_IMPORTED_MODULE_4___default().wrap(function _callee7$(_context8) { - while (1) switch (_context8.prev = _context8.next) { - case 0: - return _context8.abrupt("return", new Promise(function (resolve) { - return setTimeout(resolve, seconds * 1000); - })); - case 1: - case "end": - return _context8.stop(); - } - }, _callee7); - })); - function timer(_x9) { - return _timer.apply(this, arguments); - } - return timer; - }() - }, { - key: "customErrorForResponse", - value: function customErrorForResponse(response, messageFromServer, httpBody) { - var errorMessage = "Request failed with HTTP code ".concat(response.status); - if (typeof messageFromServer === "string" && messageFromServer.trim() !== "") { - errorMessage += " | Server said: ".concat(messageFromServer); - } - var error = new _Errors_TypesenseError__WEBPACK_IMPORTED_MODULE_8__["default"](errorMessage, httpBody, response.status); - if (response.status === 400) { - error = new _Errors__WEBPACK_IMPORTED_MODULE_7__.RequestMalformed(errorMessage); - } else if (response.status === 401) { - error = new _Errors__WEBPACK_IMPORTED_MODULE_7__.RequestUnauthorized(errorMessage); - } else if (response.status === 404) { - error = new _Errors__WEBPACK_IMPORTED_MODULE_7__.ObjectNotFound(errorMessage); - } else if (response.status === 409) { - error = new _Errors__WEBPACK_IMPORTED_MODULE_7__.ObjectAlreadyExists(errorMessage); - } else if (response.status === 422) { - error = new _Errors__WEBPACK_IMPORTED_MODULE_7__.ObjectUnprocessable(errorMessage); - } else if (response.status >= 500 && response.status <= 599) { - error = new _Errors__WEBPACK_IMPORTED_MODULE_7__.ServerError(errorMessage); - } else { - error = new _Errors__WEBPACK_IMPORTED_MODULE_7__.HTTPError(errorMessage); - } - return error; - } - }]); - return ApiCall; -}(); - - -/***/ }), - -/***/ "./src/Typesense/Client.ts": -/*!*********************************!*\ - !*** ./src/Typesense/Client.ts ***! - \*********************************/ -/***/ ((__unused_webpack_module, __webpack_exports__, __webpack_require__) => { - -"use strict"; -__webpack_require__.r(__webpack_exports__); -/* harmony export */ __webpack_require__.d(__webpack_exports__, { -/* harmony export */ "default": () => (/* binding */ Client) -/* harmony export */ }); -/* harmony import */ var _babel_runtime_helpers_classCallCheck__WEBPACK_IMPORTED_MODULE_0__ = __webpack_require__(/*! @babel/runtime/helpers/classCallCheck */ "./node_modules/@babel/runtime/helpers/esm/classCallCheck.js"); -/* harmony import */ var _babel_runtime_helpers_createClass__WEBPACK_IMPORTED_MODULE_1__ = __webpack_require__(/*! @babel/runtime/helpers/createClass */ "./node_modules/@babel/runtime/helpers/esm/createClass.js"); -/* harmony import */ var _Configuration__WEBPACK_IMPORTED_MODULE_2__ = __webpack_require__(/*! ./Configuration */ "./src/Typesense/Configuration.ts"); -/* harmony import */ var _ApiCall__WEBPACK_IMPORTED_MODULE_3__ = __webpack_require__(/*! ./ApiCall */ "./src/Typesense/ApiCall.ts"); -/* harmony import */ var _Collections__WEBPACK_IMPORTED_MODULE_4__ = __webpack_require__(/*! ./Collections */ "./src/Typesense/Collections.ts"); -/* harmony import */ var _Collection__WEBPACK_IMPORTED_MODULE_5__ = __webpack_require__(/*! ./Collection */ "./src/Typesense/Collection.ts"); -/* harmony import */ var _Aliases__WEBPACK_IMPORTED_MODULE_6__ = __webpack_require__(/*! ./Aliases */ "./src/Typesense/Aliases.ts"); -/* harmony import */ var _Alias__WEBPACK_IMPORTED_MODULE_7__ = __webpack_require__(/*! ./Alias */ "./src/Typesense/Alias.ts"); -/* harmony import */ var _Keys__WEBPACK_IMPORTED_MODULE_8__ = __webpack_require__(/*! ./Keys */ "./src/Typesense/Keys.ts"); -/* harmony import */ var _Key__WEBPACK_IMPORTED_MODULE_9__ = __webpack_require__(/*! ./Key */ "./src/Typesense/Key.ts"); -/* harmony import */ var _Debug__WEBPACK_IMPORTED_MODULE_10__ = __webpack_require__(/*! ./Debug */ "./src/Typesense/Debug.ts"); -/* harmony import */ var _Metrics__WEBPACK_IMPORTED_MODULE_11__ = __webpack_require__(/*! ./Metrics */ "./src/Typesense/Metrics.ts"); -/* harmony import */ var _Stats__WEBPACK_IMPORTED_MODULE_12__ = __webpack_require__(/*! ./Stats */ "./src/Typesense/Stats.ts"); -/* harmony import */ var _Health__WEBPACK_IMPORTED_MODULE_13__ = __webpack_require__(/*! ./Health */ "./src/Typesense/Health.ts"); -/* harmony import */ var _Operations__WEBPACK_IMPORTED_MODULE_14__ = __webpack_require__(/*! ./Operations */ "./src/Typesense/Operations.ts"); -/* harmony import */ var _MultiSearch__WEBPACK_IMPORTED_MODULE_15__ = __webpack_require__(/*! ./MultiSearch */ "./src/Typesense/MultiSearch.ts"); -/* harmony import */ var _Presets__WEBPACK_IMPORTED_MODULE_16__ = __webpack_require__(/*! ./Presets */ "./src/Typesense/Presets.ts"); -/* harmony import */ var _Preset__WEBPACK_IMPORTED_MODULE_17__ = __webpack_require__(/*! ./Preset */ "./src/Typesense/Preset.ts"); -/* harmony import */ var _Analytics__WEBPACK_IMPORTED_MODULE_18__ = __webpack_require__(/*! ./Analytics */ "./src/Typesense/Analytics.ts"); -/* harmony import */ var _Stopwords__WEBPACK_IMPORTED_MODULE_19__ = __webpack_require__(/*! ./Stopwords */ "./src/Typesense/Stopwords.ts"); -/* harmony import */ var _Stopword__WEBPACK_IMPORTED_MODULE_20__ = __webpack_require__(/*! ./Stopword */ "./src/Typesense/Stopword.ts"); -/* harmony import */ var _Conversations__WEBPACK_IMPORTED_MODULE_21__ = __webpack_require__(/*! ./Conversations */ "./src/Typesense/Conversations.ts"); -/* harmony import */ var _Conversation__WEBPACK_IMPORTED_MODULE_22__ = __webpack_require__(/*! ./Conversation */ "./src/Typesense/Conversation.ts"); -/* harmony import */ var _Stemming__WEBPACK_IMPORTED_MODULE_23__ = __webpack_require__(/*! ./Stemming */ "./src/Typesense/Stemming.ts"); - - -/* eslint-disable no-dupe-class-members */ - - - - - - - - - - - - - - - - - - - - - - - -var Client = /*#__PURE__*/function () { - function Client(options) { - var _options$sendApiKeyAs; - (0,_babel_runtime_helpers_classCallCheck__WEBPACK_IMPORTED_MODULE_0__["default"])(this, Client); - options.sendApiKeyAsQueryParam = (_options$sendApiKeyAs = options.sendApiKeyAsQueryParam) !== null && _options$sendApiKeyAs !== void 0 ? _options$sendApiKeyAs : false; - this.configuration = new _Configuration__WEBPACK_IMPORTED_MODULE_2__["default"](options); - this.apiCall = new _ApiCall__WEBPACK_IMPORTED_MODULE_3__["default"](this.configuration); - this.debug = new _Debug__WEBPACK_IMPORTED_MODULE_10__["default"](this.apiCall); - this.metrics = new _Metrics__WEBPACK_IMPORTED_MODULE_11__["default"](this.apiCall); - this.stats = new _Stats__WEBPACK_IMPORTED_MODULE_12__["default"](this.apiCall); - this.health = new _Health__WEBPACK_IMPORTED_MODULE_13__["default"](this.apiCall); - this.operations = new _Operations__WEBPACK_IMPORTED_MODULE_14__["default"](this.apiCall); - this.multiSearch = new _MultiSearch__WEBPACK_IMPORTED_MODULE_15__["default"](this.apiCall, this.configuration); - this._collections = new _Collections__WEBPACK_IMPORTED_MODULE_4__["default"](this.apiCall); - this.individualCollections = {}; - this._aliases = new _Aliases__WEBPACK_IMPORTED_MODULE_6__["default"](this.apiCall); - this.individualAliases = {}; - this._keys = new _Keys__WEBPACK_IMPORTED_MODULE_8__["default"](this.apiCall); - this.individualKeys = {}; - this._presets = new _Presets__WEBPACK_IMPORTED_MODULE_16__["default"](this.apiCall); - this.individualPresets = {}; - this._stopwords = new _Stopwords__WEBPACK_IMPORTED_MODULE_19__["default"](this.apiCall); - this.individualStopwords = {}; - this.analytics = new _Analytics__WEBPACK_IMPORTED_MODULE_18__["default"](this.apiCall); - this.stemming = new _Stemming__WEBPACK_IMPORTED_MODULE_23__["default"](this.apiCall); - this._conversations = new _Conversations__WEBPACK_IMPORTED_MODULE_21__["default"](this.apiCall); - this.individualConversations = {}; - } - (0,_babel_runtime_helpers_createClass__WEBPACK_IMPORTED_MODULE_1__["default"])(Client, [{ - key: "collections", - value: function collections(collectionName) { - if (collectionName === undefined) { - return this._collections; - } else { - if (this.individualCollections[collectionName] === undefined) { - this.individualCollections[collectionName] = new _Collection__WEBPACK_IMPORTED_MODULE_5__["default"](collectionName, this.apiCall, this.configuration); - } - return this.individualCollections[collectionName]; - } - } - }, { - key: "aliases", - value: function aliases(aliasName) { - if (aliasName === undefined) { - return this._aliases; - } else { - if (this.individualAliases[aliasName] === undefined) { - this.individualAliases[aliasName] = new _Alias__WEBPACK_IMPORTED_MODULE_7__["default"](aliasName, this.apiCall); - } - return this.individualAliases[aliasName]; - } - } - }, { - key: "keys", - value: function keys(id) { - if (id === undefined) { - return this._keys; - } else { - if (this.individualKeys[id] === undefined) { - this.individualKeys[id] = new _Key__WEBPACK_IMPORTED_MODULE_9__["default"](id, this.apiCall); - } - return this.individualKeys[id]; - } - } - }, { - key: "presets", - value: function presets(id) { - if (id === undefined) { - return this._presets; - } else { - if (this.individualPresets[id] === undefined) { - this.individualPresets[id] = new _Preset__WEBPACK_IMPORTED_MODULE_17__["default"](id, this.apiCall); - } - return this.individualPresets[id]; - } - } - }, { - key: "stopwords", - value: function stopwords(id) { - if (id === undefined) { - return this._stopwords; - } else { - if (this.individualStopwords[id] === undefined) { - this.individualStopwords[id] = new _Stopword__WEBPACK_IMPORTED_MODULE_20__["default"](id, this.apiCall); - } - return this.individualStopwords[id]; - } - } - }, { - key: "conversations", - value: function conversations(id) { - if (id === undefined) { - return this._conversations; - } else { - if (this.individualConversations[id] === undefined) { - this.individualConversations[id] = new _Conversation__WEBPACK_IMPORTED_MODULE_22__["default"](id, this.apiCall); - } - return this.individualConversations[id]; - } - } - }]); - return Client; -}(); - - -/***/ }), - -/***/ "./src/Typesense/Collection.ts": -/*!*************************************!*\ - !*** ./src/Typesense/Collection.ts ***! - \*************************************/ -/***/ ((__unused_webpack_module, __webpack_exports__, __webpack_require__) => { - -"use strict"; -__webpack_require__.r(__webpack_exports__); -/* harmony export */ __webpack_require__.d(__webpack_exports__, { -/* harmony export */ "default": () => (/* binding */ Collection) -/* harmony export */ }); -/* harmony import */ var _babel_runtime_helpers_asyncToGenerator__WEBPACK_IMPORTED_MODULE_0__ = __webpack_require__(/*! @babel/runtime/helpers/asyncToGenerator */ "./node_modules/@babel/runtime/helpers/esm/asyncToGenerator.js"); -/* harmony import */ var _babel_runtime_helpers_classCallCheck__WEBPACK_IMPORTED_MODULE_1__ = __webpack_require__(/*! @babel/runtime/helpers/classCallCheck */ "./node_modules/@babel/runtime/helpers/esm/classCallCheck.js"); -/* harmony import */ var _babel_runtime_helpers_createClass__WEBPACK_IMPORTED_MODULE_2__ = __webpack_require__(/*! @babel/runtime/helpers/createClass */ "./node_modules/@babel/runtime/helpers/esm/createClass.js"); -/* harmony import */ var _babel_runtime_helpers_defineProperty__WEBPACK_IMPORTED_MODULE_3__ = __webpack_require__(/*! @babel/runtime/helpers/defineProperty */ "./node_modules/@babel/runtime/helpers/esm/defineProperty.js"); -/* harmony import */ var _babel_runtime_regenerator__WEBPACK_IMPORTED_MODULE_4__ = __webpack_require__(/*! @babel/runtime/regenerator */ "./node_modules/@babel/runtime/regenerator/index.js"); -/* harmony import */ var _babel_runtime_regenerator__WEBPACK_IMPORTED_MODULE_4___default = /*#__PURE__*/__webpack_require__.n(_babel_runtime_regenerator__WEBPACK_IMPORTED_MODULE_4__); -/* harmony import */ var _Collections__WEBPACK_IMPORTED_MODULE_5__ = __webpack_require__(/*! ./Collections */ "./src/Typesense/Collections.ts"); -/* harmony import */ var _Documents__WEBPACK_IMPORTED_MODULE_6__ = __webpack_require__(/*! ./Documents */ "./src/Typesense/Documents.ts"); -/* harmony import */ var _Errors__WEBPACK_IMPORTED_MODULE_7__ = __webpack_require__(/*! ./Errors */ "./src/Typesense/Errors/index.ts"); -/* harmony import */ var _Overrides__WEBPACK_IMPORTED_MODULE_8__ = __webpack_require__(/*! ./Overrides */ "./src/Typesense/Overrides.ts"); -/* harmony import */ var _Override__WEBPACK_IMPORTED_MODULE_9__ = __webpack_require__(/*! ./Override */ "./src/Typesense/Override.ts"); -/* harmony import */ var _Synonyms__WEBPACK_IMPORTED_MODULE_10__ = __webpack_require__(/*! ./Synonyms */ "./src/Typesense/Synonyms.ts"); -/* harmony import */ var _Synonym__WEBPACK_IMPORTED_MODULE_11__ = __webpack_require__(/*! ./Synonym */ "./src/Typesense/Synonym.ts"); -/* harmony import */ var _Document__WEBPACK_IMPORTED_MODULE_12__ = __webpack_require__(/*! ./Document */ "./src/Typesense/Document.ts"); - - - - - - - - - - - - - -var Collection = /*#__PURE__*/function () { - function Collection(name, apiCall, configuration) { - (0,_babel_runtime_helpers_classCallCheck__WEBPACK_IMPORTED_MODULE_1__["default"])(this, Collection); - (0,_babel_runtime_helpers_defineProperty__WEBPACK_IMPORTED_MODULE_3__["default"])(this, "individualDocuments", {}); - (0,_babel_runtime_helpers_defineProperty__WEBPACK_IMPORTED_MODULE_3__["default"])(this, "individualOverrides", {}); - (0,_babel_runtime_helpers_defineProperty__WEBPACK_IMPORTED_MODULE_3__["default"])(this, "individualSynonyms", {}); - this.name = name; - this.apiCall = apiCall; - this.configuration = configuration; - this.name = name; - this.apiCall = apiCall; - this.configuration = configuration; - this._documents = new _Documents__WEBPACK_IMPORTED_MODULE_6__["default"](this.name, this.apiCall, this.configuration); - this._overrides = new _Overrides__WEBPACK_IMPORTED_MODULE_8__["default"](this.name, this.apiCall); - this._synonyms = new _Synonyms__WEBPACK_IMPORTED_MODULE_10__["default"](this.name, this.apiCall); - } - (0,_babel_runtime_helpers_createClass__WEBPACK_IMPORTED_MODULE_2__["default"])(Collection, [{ - key: "retrieve", - value: function () { - var _retrieve = (0,_babel_runtime_helpers_asyncToGenerator__WEBPACK_IMPORTED_MODULE_0__["default"])( /*#__PURE__*/_babel_runtime_regenerator__WEBPACK_IMPORTED_MODULE_4___default().mark(function _callee() { - return _babel_runtime_regenerator__WEBPACK_IMPORTED_MODULE_4___default().wrap(function _callee$(_context) { - while (1) switch (_context.prev = _context.next) { - case 0: - return _context.abrupt("return", this.apiCall.get(this.endpointPath())); - case 1: - case "end": - return _context.stop(); - } - }, _callee, this); - })); - function retrieve() { - return _retrieve.apply(this, arguments); - } - return retrieve; - }() - }, { - key: "update", - value: function () { - var _update = (0,_babel_runtime_helpers_asyncToGenerator__WEBPACK_IMPORTED_MODULE_0__["default"])( /*#__PURE__*/_babel_runtime_regenerator__WEBPACK_IMPORTED_MODULE_4___default().mark(function _callee2(schema) { - return _babel_runtime_regenerator__WEBPACK_IMPORTED_MODULE_4___default().wrap(function _callee2$(_context2) { - while (1) switch (_context2.prev = _context2.next) { - case 0: - return _context2.abrupt("return", this.apiCall.patch(this.endpointPath(), schema)); - case 1: - case "end": - return _context2.stop(); - } - }, _callee2, this); - })); - function update(_x) { - return _update.apply(this, arguments); - } - return update; - }() - }, { - key: "delete", - value: function () { - var _delete2 = (0,_babel_runtime_helpers_asyncToGenerator__WEBPACK_IMPORTED_MODULE_0__["default"])( /*#__PURE__*/_babel_runtime_regenerator__WEBPACK_IMPORTED_MODULE_4___default().mark(function _callee3() { - var options, - _args3 = arguments; - return _babel_runtime_regenerator__WEBPACK_IMPORTED_MODULE_4___default().wrap(function _callee3$(_context3) { - while (1) switch (_context3.prev = _context3.next) { - case 0: - options = _args3.length > 0 && _args3[0] !== undefined ? _args3[0] : {}; - return _context3.abrupt("return", this.apiCall.delete(this.endpointPath(), options)); - case 2: - case "end": - return _context3.stop(); - } - }, _callee3, this); - })); - function _delete() { - return _delete2.apply(this, arguments); - } - return _delete; - }() - }, { - key: "exists", - value: function () { - var _exists = (0,_babel_runtime_helpers_asyncToGenerator__WEBPACK_IMPORTED_MODULE_0__["default"])( /*#__PURE__*/_babel_runtime_regenerator__WEBPACK_IMPORTED_MODULE_4___default().mark(function _callee4() { - return _babel_runtime_regenerator__WEBPACK_IMPORTED_MODULE_4___default().wrap(function _callee4$(_context4) { - while (1) switch (_context4.prev = _context4.next) { - case 0: - _context4.prev = 0; - _context4.next = 3; - return this.retrieve(); - case 3: - return _context4.abrupt("return", true); - case 6: - _context4.prev = 6; - _context4.t0 = _context4["catch"](0); - if (!(_context4.t0 instanceof _Errors__WEBPACK_IMPORTED_MODULE_7__.ObjectNotFound)) { - _context4.next = 10; - break; - } - return _context4.abrupt("return", false); - case 10: - throw _context4.t0; - case 11: - case "end": - return _context4.stop(); - } - }, _callee4, this, [[0, 6]]); - })); - function exists() { - return _exists.apply(this, arguments); - } - return exists; - }() - }, { - key: "documents", - value: function documents(documentId) { - if (!documentId) { - return this._documents; - } else { - if (this.individualDocuments[documentId] === undefined) { - this.individualDocuments[documentId] = new _Document__WEBPACK_IMPORTED_MODULE_12__.Document(this.name, documentId, this.apiCall); - } - return this.individualDocuments[documentId]; - } - } - }, { - key: "overrides", - value: function overrides(overrideId) { - if (overrideId === undefined) { - return this._overrides; - } else { - if (this.individualOverrides[overrideId] === undefined) { - this.individualOverrides[overrideId] = new _Override__WEBPACK_IMPORTED_MODULE_9__["default"](this.name, overrideId, this.apiCall); - } - return this.individualOverrides[overrideId]; - } - } - }, { - key: "synonyms", - value: function synonyms(synonymId) { - if (synonymId === undefined) { - return this._synonyms; - } else { - if (this.individualSynonyms[synonymId] === undefined) { - this.individualSynonyms[synonymId] = new _Synonym__WEBPACK_IMPORTED_MODULE_11__["default"](this.name, synonymId, this.apiCall); - } - return this.individualSynonyms[synonymId]; - } - } - }, { - key: "endpointPath", - value: function endpointPath() { - return "".concat(_Collections__WEBPACK_IMPORTED_MODULE_5__["default"].RESOURCEPATH, "/").concat(encodeURIComponent(this.name)); - } - }]); - return Collection; -}(); - - -/***/ }), - -/***/ "./src/Typesense/Collections.ts": -/*!**************************************!*\ - !*** ./src/Typesense/Collections.ts ***! - \**************************************/ -/***/ ((__unused_webpack_module, __webpack_exports__, __webpack_require__) => { - -"use strict"; -__webpack_require__.r(__webpack_exports__); -/* harmony export */ __webpack_require__.d(__webpack_exports__, { -/* harmony export */ "default": () => (/* binding */ Collections) -/* harmony export */ }); -/* harmony import */ var _babel_runtime_helpers_asyncToGenerator__WEBPACK_IMPORTED_MODULE_0__ = __webpack_require__(/*! @babel/runtime/helpers/asyncToGenerator */ "./node_modules/@babel/runtime/helpers/esm/asyncToGenerator.js"); -/* harmony import */ var _babel_runtime_helpers_classCallCheck__WEBPACK_IMPORTED_MODULE_1__ = __webpack_require__(/*! @babel/runtime/helpers/classCallCheck */ "./node_modules/@babel/runtime/helpers/esm/classCallCheck.js"); -/* harmony import */ var _babel_runtime_helpers_createClass__WEBPACK_IMPORTED_MODULE_2__ = __webpack_require__(/*! @babel/runtime/helpers/createClass */ "./node_modules/@babel/runtime/helpers/esm/createClass.js"); -/* harmony import */ var _babel_runtime_regenerator__WEBPACK_IMPORTED_MODULE_3__ = __webpack_require__(/*! @babel/runtime/regenerator */ "./node_modules/@babel/runtime/regenerator/index.js"); -/* harmony import */ var _babel_runtime_regenerator__WEBPACK_IMPORTED_MODULE_3___default = /*#__PURE__*/__webpack_require__.n(_babel_runtime_regenerator__WEBPACK_IMPORTED_MODULE_3__); - - - - -/** - * Defines the schema for creating a collection in Typesense. - * - * If the `src_name` property in `Options` is a string, the `fields` prop is optional, and only used for embedding fields. - * Otherwise, `fields` will be required. - */ - -var RESOURCEPATH = "/collections"; -var Collections = /*#__PURE__*/function () { - function Collections(apiCall) { - (0,_babel_runtime_helpers_classCallCheck__WEBPACK_IMPORTED_MODULE_1__["default"])(this, Collections); - this.apiCall = apiCall; - } - (0,_babel_runtime_helpers_createClass__WEBPACK_IMPORTED_MODULE_2__["default"])(Collections, [{ - key: "create", - value: function () { - var _create = (0,_babel_runtime_helpers_asyncToGenerator__WEBPACK_IMPORTED_MODULE_0__["default"])( /*#__PURE__*/_babel_runtime_regenerator__WEBPACK_IMPORTED_MODULE_3___default().mark(function _callee(schema, options) { - return _babel_runtime_regenerator__WEBPACK_IMPORTED_MODULE_3___default().wrap(function _callee$(_context) { - while (1) switch (_context.prev = _context.next) { - case 0: - return _context.abrupt("return", this.apiCall.post(RESOURCEPATH, schema, options)); - case 1: - case "end": - return _context.stop(); - } - }, _callee, this); - })); - function create(_x, _x2) { - return _create.apply(this, arguments); - } - return create; - }() - }, { - key: "retrieve", - value: function () { - var _retrieve = (0,_babel_runtime_helpers_asyncToGenerator__WEBPACK_IMPORTED_MODULE_0__["default"])( /*#__PURE__*/_babel_runtime_regenerator__WEBPACK_IMPORTED_MODULE_3___default().mark(function _callee2() { - var options, - _args2 = arguments; - return _babel_runtime_regenerator__WEBPACK_IMPORTED_MODULE_3___default().wrap(function _callee2$(_context2) { - while (1) switch (_context2.prev = _context2.next) { - case 0: - options = _args2.length > 0 && _args2[0] !== undefined ? _args2[0] : {}; - return _context2.abrupt("return", this.apiCall.get(RESOURCEPATH, options)); - case 2: - case "end": - return _context2.stop(); - } - }, _callee2, this); - })); - function retrieve() { - return _retrieve.apply(this, arguments); - } - return retrieve; - }() - }], [{ - key: "RESOURCEPATH", - get: function get() { - return RESOURCEPATH; - } - }]); - return Collections; -}(); - - -/***/ }), - -/***/ "./src/Typesense/Configuration.ts": -/*!****************************************!*\ - !*** ./src/Typesense/Configuration.ts ***! - \****************************************/ -/***/ ((__unused_webpack_module, __webpack_exports__, __webpack_require__) => { - -"use strict"; -__webpack_require__.r(__webpack_exports__); -/* harmony export */ __webpack_require__.d(__webpack_exports__, { -/* harmony export */ "default": () => (/* binding */ Configuration) -/* harmony export */ }); -/* harmony import */ var _babel_runtime_helpers_defineProperty__WEBPACK_IMPORTED_MODULE_0__ = __webpack_require__(/*! @babel/runtime/helpers/defineProperty */ "./node_modules/@babel/runtime/helpers/esm/defineProperty.js"); -/* harmony import */ var _babel_runtime_helpers_classCallCheck__WEBPACK_IMPORTED_MODULE_1__ = __webpack_require__(/*! @babel/runtime/helpers/classCallCheck */ "./node_modules/@babel/runtime/helpers/esm/classCallCheck.js"); -/* harmony import */ var _babel_runtime_helpers_createClass__WEBPACK_IMPORTED_MODULE_2__ = __webpack_require__(/*! @babel/runtime/helpers/createClass */ "./node_modules/@babel/runtime/helpers/esm/createClass.js"); -/* harmony import */ var loglevel__WEBPACK_IMPORTED_MODULE_3__ = __webpack_require__(/*! loglevel */ "./node_modules/loglevel/lib/loglevel.js"); -/* harmony import */ var loglevel__WEBPACK_IMPORTED_MODULE_3___default = /*#__PURE__*/__webpack_require__.n(loglevel__WEBPACK_IMPORTED_MODULE_3__); -/* harmony import */ var _Errors__WEBPACK_IMPORTED_MODULE_4__ = __webpack_require__(/*! ./Errors */ "./src/Typesense/Errors/index.ts"); - - - -function ownKeys(e, r) { var t = Object.keys(e); if (Object.getOwnPropertySymbols) { var o = Object.getOwnPropertySymbols(e); r && (o = o.filter(function (r) { return Object.getOwnPropertyDescriptor(e, r).enumerable; })), t.push.apply(t, o); } return t; } -function _objectSpread(e) { for (var r = 1; r < arguments.length; r++) { var t = null != arguments[r] ? arguments[r] : {}; r % 2 ? ownKeys(Object(t), !0).forEach(function (r) { (0,_babel_runtime_helpers_defineProperty__WEBPACK_IMPORTED_MODULE_0__["default"])(e, r, t[r]); }) : Object.getOwnPropertyDescriptors ? Object.defineProperties(e, Object.getOwnPropertyDescriptors(t)) : ownKeys(Object(t)).forEach(function (r) { Object.defineProperty(e, r, Object.getOwnPropertyDescriptor(t, r)); }); } return e; } - - -var Configuration = /*#__PURE__*/function () { - function Configuration(options) { - var _this = this; - (0,_babel_runtime_helpers_classCallCheck__WEBPACK_IMPORTED_MODULE_1__["default"])(this, Configuration); - this.nodes = options.nodes || []; - this.nodes = this.nodes.map(function (node) { - return _this.setDefaultPathInNode(node); - }).map(function (node) { - return _this.setDefaultPortInNode(node); - }).map(function (node) { - return _objectSpread({}, node); - }); // Make a deep copy - - if (options.randomizeNodes == null) { - options.randomizeNodes = true; - } - if (options.randomizeNodes === true) { - this.shuffleArray(this.nodes); - } - this.nearestNode = options.nearestNode; - this.nearestNode = this.setDefaultPathInNode(this.nearestNode); - this.nearestNode = this.setDefaultPortInNode(this.nearestNode); - this.connectionTimeoutSeconds = options.connectionTimeoutSeconds || options.timeoutSeconds || 5; - this.healthcheckIntervalSeconds = options.healthcheckIntervalSeconds || 60; - this.numRetries = (options.numRetries !== undefined && options.numRetries >= 0 ? options.numRetries : this.nodes.length + (this.nearestNode == null ? 0 : 1)) || 3; - this.retryIntervalSeconds = options.retryIntervalSeconds || 0.1; - this.apiKey = options.apiKey; - this.sendApiKeyAsQueryParam = options.sendApiKeyAsQueryParam; // We will set a default for this in Client and SearchClient - - this.cacheSearchResultsForSeconds = options.cacheSearchResultsForSeconds || 0; // Disable client-side cache by default - this.useServerSideSearchCache = options.useServerSideSearchCache || false; - this.axiosAdapter = options.axiosAdapter; - this.logger = options.logger || loglevel__WEBPACK_IMPORTED_MODULE_3__; - this.logLevel = options.logLevel || "warn"; - this.logger.setLevel(this.logLevel); - this.additionalHeaders = options.additionalHeaders; - this.httpAgent = options.httpAgent; - this.httpsAgent = options.httpsAgent; - this.paramsSerializer = options.paramsSerializer; - this.showDeprecationWarnings(options); - this.validate(); - } - (0,_babel_runtime_helpers_createClass__WEBPACK_IMPORTED_MODULE_2__["default"])(Configuration, [{ - key: "validate", - value: function validate() { - if (this.nodes == null || this.nodes.length === 0 || this.validateNodes()) { - throw new _Errors__WEBPACK_IMPORTED_MODULE_4__.MissingConfigurationError("Ensure that nodes[].protocol, nodes[].host and nodes[].port are set"); - } - if (this.nearestNode != null && this.isNodeMissingAnyParameters(this.nearestNode)) { - throw new _Errors__WEBPACK_IMPORTED_MODULE_4__.MissingConfigurationError("Ensure that nearestNodes.protocol, nearestNodes.host and nearestNodes.port are set"); - } - if (this.apiKey == null) { - throw new _Errors__WEBPACK_IMPORTED_MODULE_4__.MissingConfigurationError("Ensure that apiKey is set"); - } - return true; - } - }, { - key: "validateNodes", - value: function validateNodes() { - var _this2 = this; - return this.nodes.some(function (node) { - return _this2.isNodeMissingAnyParameters(node); - }); - } - }, { - key: "isNodeMissingAnyParameters", - value: function isNodeMissingAnyParameters(node) { - return !["protocol", "host", "port", "path"].every(function (key) { - return node.hasOwnProperty(key); - }) && node["url"] == null; - } - }, { - key: "setDefaultPathInNode", - value: function setDefaultPathInNode(node) { - if (node != null && !node.hasOwnProperty("path")) { - node["path"] = ""; - } - return node; - } - }, { - key: "setDefaultPortInNode", - value: function setDefaultPortInNode(node) { - if (node != null && !node.hasOwnProperty("port") && node.hasOwnProperty("protocol")) { - switch (node["protocol"]) { - case "https": - node["port"] = 443; - break; - case "http": - node["port"] = 80; - break; - } - } - return node; - } - }, { - key: "showDeprecationWarnings", - value: function showDeprecationWarnings(options) { - if (options.timeoutSeconds) { - this.logger.warn("Deprecation warning: timeoutSeconds is now renamed to connectionTimeoutSeconds"); - } - if (options.masterNode) { - this.logger.warn("Deprecation warning: masterNode is now consolidated to nodes, starting with Typesense Server v0.12"); - } - if (options.readReplicaNodes) { - this.logger.warn("Deprecation warning: readReplicaNodes is now consolidated to nodes, starting with Typesense Server v0.12"); - } - } - }, { - key: "shuffleArray", - value: function shuffleArray(array) { - for (var i = array.length - 1; i > 0; i--) { - var j = Math.floor(Math.random() * (i + 1)); - var _ref = [array[j], array[i]]; - array[i] = _ref[0]; - array[j] = _ref[1]; - } - } - }]); - return Configuration; -}(); - - -/***/ }), - -/***/ "./src/Typesense/Conversation.ts": -/*!***************************************!*\ - !*** ./src/Typesense/Conversation.ts ***! - \***************************************/ -/***/ ((__unused_webpack_module, __webpack_exports__, __webpack_require__) => { - -"use strict"; -__webpack_require__.r(__webpack_exports__); -/* harmony export */ __webpack_require__.d(__webpack_exports__, { -/* harmony export */ "default": () => (/* binding */ Conversation) -/* harmony export */ }); -/* harmony import */ var _babel_runtime_helpers_asyncToGenerator__WEBPACK_IMPORTED_MODULE_0__ = __webpack_require__(/*! @babel/runtime/helpers/asyncToGenerator */ "./node_modules/@babel/runtime/helpers/esm/asyncToGenerator.js"); -/* harmony import */ var _babel_runtime_helpers_classCallCheck__WEBPACK_IMPORTED_MODULE_1__ = __webpack_require__(/*! @babel/runtime/helpers/classCallCheck */ "./node_modules/@babel/runtime/helpers/esm/classCallCheck.js"); -/* harmony import */ var _babel_runtime_helpers_createClass__WEBPACK_IMPORTED_MODULE_2__ = __webpack_require__(/*! @babel/runtime/helpers/createClass */ "./node_modules/@babel/runtime/helpers/esm/createClass.js"); -/* harmony import */ var _babel_runtime_regenerator__WEBPACK_IMPORTED_MODULE_3__ = __webpack_require__(/*! @babel/runtime/regenerator */ "./node_modules/@babel/runtime/regenerator/index.js"); -/* harmony import */ var _babel_runtime_regenerator__WEBPACK_IMPORTED_MODULE_3___default = /*#__PURE__*/__webpack_require__.n(_babel_runtime_regenerator__WEBPACK_IMPORTED_MODULE_3__); -/* harmony import */ var _Conversations__WEBPACK_IMPORTED_MODULE_4__ = __webpack_require__(/*! ./Conversations */ "./src/Typesense/Conversations.ts"); - - - - - -var Conversation = /*#__PURE__*/function () { - function Conversation(id, apiCall) { - (0,_babel_runtime_helpers_classCallCheck__WEBPACK_IMPORTED_MODULE_1__["default"])(this, Conversation); - this.id = id; - this.apiCall = apiCall; - } - (0,_babel_runtime_helpers_createClass__WEBPACK_IMPORTED_MODULE_2__["default"])(Conversation, [{ - key: "retrieve", - value: function () { - var _retrieve = (0,_babel_runtime_helpers_asyncToGenerator__WEBPACK_IMPORTED_MODULE_0__["default"])( /*#__PURE__*/_babel_runtime_regenerator__WEBPACK_IMPORTED_MODULE_3___default().mark(function _callee() { - return _babel_runtime_regenerator__WEBPACK_IMPORTED_MODULE_3___default().wrap(function _callee$(_context) { - while (1) switch (_context.prev = _context.next) { - case 0: - return _context.abrupt("return", this.apiCall.get(this.endpointPath())); - case 1: - case "end": - return _context.stop(); - } - }, _callee, this); - })); - function retrieve() { - return _retrieve.apply(this, arguments); - } - return retrieve; - }() - }, { - key: "update", - value: function () { - var _update = (0,_babel_runtime_helpers_asyncToGenerator__WEBPACK_IMPORTED_MODULE_0__["default"])( /*#__PURE__*/_babel_runtime_regenerator__WEBPACK_IMPORTED_MODULE_3___default().mark(function _callee2(params) { - return _babel_runtime_regenerator__WEBPACK_IMPORTED_MODULE_3___default().wrap(function _callee2$(_context2) { - while (1) switch (_context2.prev = _context2.next) { - case 0: - return _context2.abrupt("return", this.apiCall.put(this.endpointPath(), params)); - case 1: - case "end": - return _context2.stop(); - } - }, _callee2, this); - })); - function update(_x) { - return _update.apply(this, arguments); - } - return update; - }() - }, { - key: "delete", - value: function () { - var _delete2 = (0,_babel_runtime_helpers_asyncToGenerator__WEBPACK_IMPORTED_MODULE_0__["default"])( /*#__PURE__*/_babel_runtime_regenerator__WEBPACK_IMPORTED_MODULE_3___default().mark(function _callee3() { - return _babel_runtime_regenerator__WEBPACK_IMPORTED_MODULE_3___default().wrap(function _callee3$(_context3) { - while (1) switch (_context3.prev = _context3.next) { - case 0: - return _context3.abrupt("return", this.apiCall.delete(this.endpointPath())); - case 1: - case "end": - return _context3.stop(); - } - }, _callee3, this); - })); - function _delete() { - return _delete2.apply(this, arguments); - } - return _delete; - }() - }, { - key: "endpointPath", - value: function endpointPath() { - return "".concat(_Conversations__WEBPACK_IMPORTED_MODULE_4__["default"].RESOURCEPATH, "/").concat(encodeURIComponent(this.id)); - } - }]); - return Conversation; -}(); - - -/***/ }), - -/***/ "./src/Typesense/ConversationModel.ts": -/*!********************************************!*\ - !*** ./src/Typesense/ConversationModel.ts ***! - \********************************************/ -/***/ ((__unused_webpack_module, __webpack_exports__, __webpack_require__) => { - -"use strict"; -__webpack_require__.r(__webpack_exports__); -/* harmony export */ __webpack_require__.d(__webpack_exports__, { -/* harmony export */ "default": () => (/* binding */ ConversationModel) -/* harmony export */ }); -/* harmony import */ var _babel_runtime_helpers_asyncToGenerator__WEBPACK_IMPORTED_MODULE_0__ = __webpack_require__(/*! @babel/runtime/helpers/asyncToGenerator */ "./node_modules/@babel/runtime/helpers/esm/asyncToGenerator.js"); -/* harmony import */ var _babel_runtime_helpers_classCallCheck__WEBPACK_IMPORTED_MODULE_1__ = __webpack_require__(/*! @babel/runtime/helpers/classCallCheck */ "./node_modules/@babel/runtime/helpers/esm/classCallCheck.js"); -/* harmony import */ var _babel_runtime_helpers_createClass__WEBPACK_IMPORTED_MODULE_2__ = __webpack_require__(/*! @babel/runtime/helpers/createClass */ "./node_modules/@babel/runtime/helpers/esm/createClass.js"); -/* harmony import */ var _babel_runtime_regenerator__WEBPACK_IMPORTED_MODULE_3__ = __webpack_require__(/*! @babel/runtime/regenerator */ "./node_modules/@babel/runtime/regenerator/index.js"); -/* harmony import */ var _babel_runtime_regenerator__WEBPACK_IMPORTED_MODULE_3___default = /*#__PURE__*/__webpack_require__.n(_babel_runtime_regenerator__WEBPACK_IMPORTED_MODULE_3__); -/* harmony import */ var _ConversationModels__WEBPACK_IMPORTED_MODULE_4__ = __webpack_require__(/*! ./ConversationModels */ "./src/Typesense/ConversationModels.ts"); - - - - - -var ConversationModel = /*#__PURE__*/function () { - function ConversationModel(id, apiCall) { - (0,_babel_runtime_helpers_classCallCheck__WEBPACK_IMPORTED_MODULE_1__["default"])(this, ConversationModel); - this.id = id; - this.apiCall = apiCall; - } - (0,_babel_runtime_helpers_createClass__WEBPACK_IMPORTED_MODULE_2__["default"])(ConversationModel, [{ - key: "update", - value: function () { - var _update = (0,_babel_runtime_helpers_asyncToGenerator__WEBPACK_IMPORTED_MODULE_0__["default"])( /*#__PURE__*/_babel_runtime_regenerator__WEBPACK_IMPORTED_MODULE_3___default().mark(function _callee(params) { - return _babel_runtime_regenerator__WEBPACK_IMPORTED_MODULE_3___default().wrap(function _callee$(_context) { - while (1) switch (_context.prev = _context.next) { - case 0: - return _context.abrupt("return", this.apiCall.put(this.endpointPath(), params)); - case 1: - case "end": - return _context.stop(); - } - }, _callee, this); - })); - function update(_x) { - return _update.apply(this, arguments); - } - return update; - }() - }, { - key: "retrieve", - value: function () { - var _retrieve = (0,_babel_runtime_helpers_asyncToGenerator__WEBPACK_IMPORTED_MODULE_0__["default"])( /*#__PURE__*/_babel_runtime_regenerator__WEBPACK_IMPORTED_MODULE_3___default().mark(function _callee2() { - return _babel_runtime_regenerator__WEBPACK_IMPORTED_MODULE_3___default().wrap(function _callee2$(_context2) { - while (1) switch (_context2.prev = _context2.next) { - case 0: - return _context2.abrupt("return", this.apiCall.get(this.endpointPath())); - case 1: - case "end": - return _context2.stop(); - } - }, _callee2, this); - })); - function retrieve() { - return _retrieve.apply(this, arguments); - } - return retrieve; - }() - }, { - key: "delete", - value: function () { - var _delete2 = (0,_babel_runtime_helpers_asyncToGenerator__WEBPACK_IMPORTED_MODULE_0__["default"])( /*#__PURE__*/_babel_runtime_regenerator__WEBPACK_IMPORTED_MODULE_3___default().mark(function _callee3() { - return _babel_runtime_regenerator__WEBPACK_IMPORTED_MODULE_3___default().wrap(function _callee3$(_context3) { - while (1) switch (_context3.prev = _context3.next) { - case 0: - return _context3.abrupt("return", this.apiCall.delete(this.endpointPath())); - case 1: - case "end": - return _context3.stop(); - } - }, _callee3, this); - })); - function _delete() { - return _delete2.apply(this, arguments); - } - return _delete; - }() - }, { - key: "endpointPath", - value: function endpointPath() { - return "".concat(_ConversationModels__WEBPACK_IMPORTED_MODULE_4__["default"].RESOURCEPATH, "/").concat(encodeURIComponent(this.id)); - } - }]); - return ConversationModel; -}(); - - -/***/ }), - -/***/ "./src/Typesense/ConversationModels.ts": -/*!*********************************************!*\ - !*** ./src/Typesense/ConversationModels.ts ***! - \*********************************************/ -/***/ ((__unused_webpack_module, __webpack_exports__, __webpack_require__) => { - -"use strict"; -__webpack_require__.r(__webpack_exports__); -/* harmony export */ __webpack_require__.d(__webpack_exports__, { -/* harmony export */ "default": () => (/* binding */ ConversationModels) -/* harmony export */ }); -/* harmony import */ var _babel_runtime_helpers_asyncToGenerator__WEBPACK_IMPORTED_MODULE_0__ = __webpack_require__(/*! @babel/runtime/helpers/asyncToGenerator */ "./node_modules/@babel/runtime/helpers/esm/asyncToGenerator.js"); -/* harmony import */ var _babel_runtime_helpers_classCallCheck__WEBPACK_IMPORTED_MODULE_1__ = __webpack_require__(/*! @babel/runtime/helpers/classCallCheck */ "./node_modules/@babel/runtime/helpers/esm/classCallCheck.js"); -/* harmony import */ var _babel_runtime_helpers_createClass__WEBPACK_IMPORTED_MODULE_2__ = __webpack_require__(/*! @babel/runtime/helpers/createClass */ "./node_modules/@babel/runtime/helpers/esm/createClass.js"); -/* harmony import */ var _babel_runtime_regenerator__WEBPACK_IMPORTED_MODULE_3__ = __webpack_require__(/*! @babel/runtime/regenerator */ "./node_modules/@babel/runtime/regenerator/index.js"); -/* harmony import */ var _babel_runtime_regenerator__WEBPACK_IMPORTED_MODULE_3___default = /*#__PURE__*/__webpack_require__.n(_babel_runtime_regenerator__WEBPACK_IMPORTED_MODULE_3__); - - - - -var RESOURCEPATH = "/conversations/models"; -var ConversationModels = /*#__PURE__*/function () { - function ConversationModels(apiCall) { - (0,_babel_runtime_helpers_classCallCheck__WEBPACK_IMPORTED_MODULE_1__["default"])(this, ConversationModels); - this.apiCall = apiCall; - this.apiCall = apiCall; - } - (0,_babel_runtime_helpers_createClass__WEBPACK_IMPORTED_MODULE_2__["default"])(ConversationModels, [{ - key: "create", - value: function () { - var _create = (0,_babel_runtime_helpers_asyncToGenerator__WEBPACK_IMPORTED_MODULE_0__["default"])( /*#__PURE__*/_babel_runtime_regenerator__WEBPACK_IMPORTED_MODULE_3___default().mark(function _callee(params) { - return _babel_runtime_regenerator__WEBPACK_IMPORTED_MODULE_3___default().wrap(function _callee$(_context) { - while (1) switch (_context.prev = _context.next) { - case 0: - return _context.abrupt("return", this.apiCall.post(this.endpointPath(), params)); - case 1: - case "end": - return _context.stop(); - } - }, _callee, this); - })); - function create(_x) { - return _create.apply(this, arguments); - } - return create; - }() - }, { - key: "retrieve", - value: function () { - var _retrieve = (0,_babel_runtime_helpers_asyncToGenerator__WEBPACK_IMPORTED_MODULE_0__["default"])( /*#__PURE__*/_babel_runtime_regenerator__WEBPACK_IMPORTED_MODULE_3___default().mark(function _callee2() { - return _babel_runtime_regenerator__WEBPACK_IMPORTED_MODULE_3___default().wrap(function _callee2$(_context2) { - while (1) switch (_context2.prev = _context2.next) { - case 0: - return _context2.abrupt("return", this.apiCall.get(this.endpointPath())); - case 1: - case "end": - return _context2.stop(); - } - }, _callee2, this); - })); - function retrieve() { - return _retrieve.apply(this, arguments); - } - return retrieve; - }() - }, { - key: "endpointPath", - value: function endpointPath(operation) { - return "".concat(ConversationModels.RESOURCEPATH).concat(operation === undefined ? "" : "/" + encodeURIComponent(operation)); - } - }], [{ - key: "RESOURCEPATH", - get: function get() { - return RESOURCEPATH; - } - }]); - return ConversationModels; -}(); - - -/***/ }), - -/***/ "./src/Typesense/Conversations.ts": -/*!****************************************!*\ - !*** ./src/Typesense/Conversations.ts ***! - \****************************************/ -/***/ ((__unused_webpack_module, __webpack_exports__, __webpack_require__) => { - -"use strict"; -__webpack_require__.r(__webpack_exports__); -/* harmony export */ __webpack_require__.d(__webpack_exports__, { -/* harmony export */ "default": () => (/* binding */ Conversations) -/* harmony export */ }); -/* harmony import */ var _babel_runtime_helpers_asyncToGenerator__WEBPACK_IMPORTED_MODULE_0__ = __webpack_require__(/*! @babel/runtime/helpers/asyncToGenerator */ "./node_modules/@babel/runtime/helpers/esm/asyncToGenerator.js"); -/* harmony import */ var _babel_runtime_helpers_classCallCheck__WEBPACK_IMPORTED_MODULE_1__ = __webpack_require__(/*! @babel/runtime/helpers/classCallCheck */ "./node_modules/@babel/runtime/helpers/esm/classCallCheck.js"); -/* harmony import */ var _babel_runtime_helpers_createClass__WEBPACK_IMPORTED_MODULE_2__ = __webpack_require__(/*! @babel/runtime/helpers/createClass */ "./node_modules/@babel/runtime/helpers/esm/createClass.js"); -/* harmony import */ var _babel_runtime_helpers_defineProperty__WEBPACK_IMPORTED_MODULE_3__ = __webpack_require__(/*! @babel/runtime/helpers/defineProperty */ "./node_modules/@babel/runtime/helpers/esm/defineProperty.js"); -/* harmony import */ var _babel_runtime_regenerator__WEBPACK_IMPORTED_MODULE_4__ = __webpack_require__(/*! @babel/runtime/regenerator */ "./node_modules/@babel/runtime/regenerator/index.js"); -/* harmony import */ var _babel_runtime_regenerator__WEBPACK_IMPORTED_MODULE_4___default = /*#__PURE__*/__webpack_require__.n(_babel_runtime_regenerator__WEBPACK_IMPORTED_MODULE_4__); -/* harmony import */ var _ConversationModels__WEBPACK_IMPORTED_MODULE_5__ = __webpack_require__(/*! ./ConversationModels */ "./src/Typesense/ConversationModels.ts"); -/* harmony import */ var _ConversationModel__WEBPACK_IMPORTED_MODULE_6__ = __webpack_require__(/*! ./ConversationModel */ "./src/Typesense/ConversationModel.ts"); - - - - - - - -var RESOURCEPATH = "/conversations"; -var Conversations = /*#__PURE__*/function () { - function Conversations(apiCall) { - (0,_babel_runtime_helpers_classCallCheck__WEBPACK_IMPORTED_MODULE_1__["default"])(this, Conversations); - (0,_babel_runtime_helpers_defineProperty__WEBPACK_IMPORTED_MODULE_3__["default"])(this, "individualConversationModels", {}); - this.apiCall = apiCall; - this.apiCall = apiCall; - this._conversationsModels = new _ConversationModels__WEBPACK_IMPORTED_MODULE_5__["default"](this.apiCall); - } - (0,_babel_runtime_helpers_createClass__WEBPACK_IMPORTED_MODULE_2__["default"])(Conversations, [{ - key: "retrieve", - value: function () { - var _retrieve = (0,_babel_runtime_helpers_asyncToGenerator__WEBPACK_IMPORTED_MODULE_0__["default"])( /*#__PURE__*/_babel_runtime_regenerator__WEBPACK_IMPORTED_MODULE_4___default().mark(function _callee() { - return _babel_runtime_regenerator__WEBPACK_IMPORTED_MODULE_4___default().wrap(function _callee$(_context) { - while (1) switch (_context.prev = _context.next) { - case 0: - return _context.abrupt("return", this.apiCall.get(RESOURCEPATH)); - case 1: - case "end": - return _context.stop(); - } - }, _callee, this); - })); - function retrieve() { - return _retrieve.apply(this, arguments); - } - return retrieve; - }() - }, { - key: "models", - value: function models(id) { - if (id === undefined) { - return this._conversationsModels; - } else { - if (this.individualConversationModels[id] === undefined) { - this.individualConversationModels[id] = new _ConversationModel__WEBPACK_IMPORTED_MODULE_6__["default"](id, this.apiCall); - } - return this.individualConversationModels[id]; - } - } - }], [{ - key: "RESOURCEPATH", - get: function get() { - return RESOURCEPATH; - } - }]); - return Conversations; -}(); - - -/***/ }), - -/***/ "./src/Typesense/Debug.ts": -/*!********************************!*\ - !*** ./src/Typesense/Debug.ts ***! - \********************************/ -/***/ ((__unused_webpack_module, __webpack_exports__, __webpack_require__) => { - -"use strict"; -__webpack_require__.r(__webpack_exports__); -/* harmony export */ __webpack_require__.d(__webpack_exports__, { -/* harmony export */ "default": () => (/* binding */ Debug) -/* harmony export */ }); -/* harmony import */ var _babel_runtime_helpers_asyncToGenerator__WEBPACK_IMPORTED_MODULE_0__ = __webpack_require__(/*! @babel/runtime/helpers/asyncToGenerator */ "./node_modules/@babel/runtime/helpers/esm/asyncToGenerator.js"); -/* harmony import */ var _babel_runtime_helpers_classCallCheck__WEBPACK_IMPORTED_MODULE_1__ = __webpack_require__(/*! @babel/runtime/helpers/classCallCheck */ "./node_modules/@babel/runtime/helpers/esm/classCallCheck.js"); -/* harmony import */ var _babel_runtime_helpers_createClass__WEBPACK_IMPORTED_MODULE_2__ = __webpack_require__(/*! @babel/runtime/helpers/createClass */ "./node_modules/@babel/runtime/helpers/esm/createClass.js"); -/* harmony import */ var _babel_runtime_regenerator__WEBPACK_IMPORTED_MODULE_3__ = __webpack_require__(/*! @babel/runtime/regenerator */ "./node_modules/@babel/runtime/regenerator/index.js"); -/* harmony import */ var _babel_runtime_regenerator__WEBPACK_IMPORTED_MODULE_3___default = /*#__PURE__*/__webpack_require__.n(_babel_runtime_regenerator__WEBPACK_IMPORTED_MODULE_3__); - - - - -var RESOURCEPATH = "/debug"; -var Debug = /*#__PURE__*/function () { - function Debug(apiCall) { - (0,_babel_runtime_helpers_classCallCheck__WEBPACK_IMPORTED_MODULE_1__["default"])(this, Debug); - this.apiCall = apiCall; - } - (0,_babel_runtime_helpers_createClass__WEBPACK_IMPORTED_MODULE_2__["default"])(Debug, [{ - key: "retrieve", - value: function () { - var _retrieve = (0,_babel_runtime_helpers_asyncToGenerator__WEBPACK_IMPORTED_MODULE_0__["default"])( /*#__PURE__*/_babel_runtime_regenerator__WEBPACK_IMPORTED_MODULE_3___default().mark(function _callee() { - return _babel_runtime_regenerator__WEBPACK_IMPORTED_MODULE_3___default().wrap(function _callee$(_context) { - while (1) switch (_context.prev = _context.next) { - case 0: - return _context.abrupt("return", this.apiCall.get(RESOURCEPATH)); - case 1: - case "end": - return _context.stop(); - } - }, _callee, this); - })); - function retrieve() { - return _retrieve.apply(this, arguments); - } - return retrieve; - }() - }]); - return Debug; -}(); - - -/***/ }), - -/***/ "./src/Typesense/Document.ts": -/*!***********************************!*\ - !*** ./src/Typesense/Document.ts ***! - \***********************************/ -/***/ ((__unused_webpack_module, __webpack_exports__, __webpack_require__) => { - -"use strict"; -__webpack_require__.r(__webpack_exports__); -/* harmony export */ __webpack_require__.d(__webpack_exports__, { -/* harmony export */ Document: () => (/* binding */ Document) -/* harmony export */ }); -/* harmony import */ var _babel_runtime_helpers_asyncToGenerator__WEBPACK_IMPORTED_MODULE_0__ = __webpack_require__(/*! @babel/runtime/helpers/asyncToGenerator */ "./node_modules/@babel/runtime/helpers/esm/asyncToGenerator.js"); -/* harmony import */ var _babel_runtime_helpers_classCallCheck__WEBPACK_IMPORTED_MODULE_1__ = __webpack_require__(/*! @babel/runtime/helpers/classCallCheck */ "./node_modules/@babel/runtime/helpers/esm/classCallCheck.js"); -/* harmony import */ var _babel_runtime_helpers_createClass__WEBPACK_IMPORTED_MODULE_2__ = __webpack_require__(/*! @babel/runtime/helpers/createClass */ "./node_modules/@babel/runtime/helpers/esm/createClass.js"); -/* harmony import */ var _babel_runtime_regenerator__WEBPACK_IMPORTED_MODULE_3__ = __webpack_require__(/*! @babel/runtime/regenerator */ "./node_modules/@babel/runtime/regenerator/index.js"); -/* harmony import */ var _babel_runtime_regenerator__WEBPACK_IMPORTED_MODULE_3___default = /*#__PURE__*/__webpack_require__.n(_babel_runtime_regenerator__WEBPACK_IMPORTED_MODULE_3__); -/* harmony import */ var _Collections__WEBPACK_IMPORTED_MODULE_4__ = __webpack_require__(/*! ./Collections */ "./src/Typesense/Collections.ts"); -/* harmony import */ var _Documents__WEBPACK_IMPORTED_MODULE_5__ = __webpack_require__(/*! ./Documents */ "./src/Typesense/Documents.ts"); - - - - - - -var Document = /*#__PURE__*/function () { - function Document(collectionName, documentId, apiCall) { - (0,_babel_runtime_helpers_classCallCheck__WEBPACK_IMPORTED_MODULE_1__["default"])(this, Document); - this.collectionName = collectionName; - this.documentId = documentId; - this.apiCall = apiCall; - } - (0,_babel_runtime_helpers_createClass__WEBPACK_IMPORTED_MODULE_2__["default"])(Document, [{ - key: "retrieve", - value: function () { - var _retrieve = (0,_babel_runtime_helpers_asyncToGenerator__WEBPACK_IMPORTED_MODULE_0__["default"])( /*#__PURE__*/_babel_runtime_regenerator__WEBPACK_IMPORTED_MODULE_3___default().mark(function _callee() { - return _babel_runtime_regenerator__WEBPACK_IMPORTED_MODULE_3___default().wrap(function _callee$(_context) { - while (1) switch (_context.prev = _context.next) { - case 0: - return _context.abrupt("return", this.apiCall.get(this.endpointPath())); - case 1: - case "end": - return _context.stop(); - } - }, _callee, this); - })); - function retrieve() { - return _retrieve.apply(this, arguments); - } - return retrieve; - }() - }, { - key: "delete", - value: function () { - var _delete2 = (0,_babel_runtime_helpers_asyncToGenerator__WEBPACK_IMPORTED_MODULE_0__["default"])( /*#__PURE__*/_babel_runtime_regenerator__WEBPACK_IMPORTED_MODULE_3___default().mark(function _callee2(options) { - return _babel_runtime_regenerator__WEBPACK_IMPORTED_MODULE_3___default().wrap(function _callee2$(_context2) { - while (1) switch (_context2.prev = _context2.next) { - case 0: - return _context2.abrupt("return", this.apiCall.delete(this.endpointPath(), options)); - case 1: - case "end": - return _context2.stop(); - } - }, _callee2, this); - })); - function _delete(_x) { - return _delete2.apply(this, arguments); - } - return _delete; - }() - }, { - key: "update", - value: function () { - var _update = (0,_babel_runtime_helpers_asyncToGenerator__WEBPACK_IMPORTED_MODULE_0__["default"])( /*#__PURE__*/_babel_runtime_regenerator__WEBPACK_IMPORTED_MODULE_3___default().mark(function _callee3(partialDocument) { - var options, - _args3 = arguments; - return _babel_runtime_regenerator__WEBPACK_IMPORTED_MODULE_3___default().wrap(function _callee3$(_context3) { - while (1) switch (_context3.prev = _context3.next) { - case 0: - options = _args3.length > 1 && _args3[1] !== undefined ? _args3[1] : {}; - return _context3.abrupt("return", this.apiCall.patch(this.endpointPath(), partialDocument, options)); - case 2: - case "end": - return _context3.stop(); - } - }, _callee3, this); - })); - function update(_x2) { - return _update.apply(this, arguments); - } - return update; - }() - }, { - key: "endpointPath", - value: function endpointPath() { - return "".concat(_Collections__WEBPACK_IMPORTED_MODULE_4__["default"].RESOURCEPATH, "/").concat(encodeURIComponent(this.collectionName)).concat(_Documents__WEBPACK_IMPORTED_MODULE_5__["default"].RESOURCEPATH, "/").concat(encodeURIComponent(this.documentId)); - } - }]); - return Document; -}(); +function _possibleConstructorReturn(t, e) { + if (e && ("object" == (0,_typeof_js__WEBPACK_IMPORTED_MODULE_0__["default"])(e) || "function" == typeof e)) return e; + if (void 0 !== e) throw new TypeError("Derived constructors may only return object or undefined"); + return (0,_assertThisInitialized_js__WEBPACK_IMPORTED_MODULE_1__["default"])(t); +} + /***/ }), -/***/ "./src/Typesense/Documents.ts": -/*!************************************!*\ - !*** ./src/Typesense/Documents.ts ***! - \************************************/ -/***/ ((__unused_webpack_module, __webpack_exports__, __webpack_require__) => { +/***/ "./node_modules/.pnpm/@babel+runtime@7.26.9/node_modules/@babel/runtime/helpers/esm/readOnlyError.js": +/*!***********************************************************************************************************!*\ + !*** ./node_modules/.pnpm/@babel+runtime@7.26.9/node_modules/@babel/runtime/helpers/esm/readOnlyError.js ***! + \***********************************************************************************************************/ +/***/ ((__unused_webpack___webpack_module__, __webpack_exports__, __webpack_require__) => { "use strict"; __webpack_require__.r(__webpack_exports__); /* harmony export */ __webpack_require__.d(__webpack_exports__, { -/* harmony export */ arrayableParams: () => (/* binding */ arrayableParams), -/* harmony export */ "default": () => (/* binding */ Documents) +/* harmony export */ "default": () => (/* binding */ _readOnlyError) /* harmony export */ }); -/* harmony import */ var _babel_runtime_helpers_asyncToGenerator__WEBPACK_IMPORTED_MODULE_0__ = __webpack_require__(/*! @babel/runtime/helpers/asyncToGenerator */ "./node_modules/@babel/runtime/helpers/esm/asyncToGenerator.js"); -/* harmony import */ var _babel_runtime_helpers_classCallCheck__WEBPACK_IMPORTED_MODULE_1__ = __webpack_require__(/*! @babel/runtime/helpers/classCallCheck */ "./node_modules/@babel/runtime/helpers/esm/classCallCheck.js"); -/* harmony import */ var _babel_runtime_helpers_createClass__WEBPACK_IMPORTED_MODULE_2__ = __webpack_require__(/*! @babel/runtime/helpers/createClass */ "./node_modules/@babel/runtime/helpers/esm/createClass.js"); -/* harmony import */ var _babel_runtime_helpers_possibleConstructorReturn__WEBPACK_IMPORTED_MODULE_3__ = __webpack_require__(/*! @babel/runtime/helpers/possibleConstructorReturn */ "./node_modules/@babel/runtime/helpers/esm/possibleConstructorReturn.js"); -/* harmony import */ var _babel_runtime_helpers_getPrototypeOf__WEBPACK_IMPORTED_MODULE_4__ = __webpack_require__(/*! @babel/runtime/helpers/getPrototypeOf */ "./node_modules/@babel/runtime/helpers/esm/getPrototypeOf.js"); -/* harmony import */ var _babel_runtime_helpers_inherits__WEBPACK_IMPORTED_MODULE_5__ = __webpack_require__(/*! @babel/runtime/helpers/inherits */ "./node_modules/@babel/runtime/helpers/esm/inherits.js"); -/* harmony import */ var _babel_runtime_regenerator__WEBPACK_IMPORTED_MODULE_6__ = __webpack_require__(/*! @babel/runtime/regenerator */ "./node_modules/@babel/runtime/regenerator/index.js"); -/* harmony import */ var _babel_runtime_regenerator__WEBPACK_IMPORTED_MODULE_6___default = /*#__PURE__*/__webpack_require__.n(_babel_runtime_regenerator__WEBPACK_IMPORTED_MODULE_6__); -/* harmony import */ var _Errors__WEBPACK_IMPORTED_MODULE_7__ = __webpack_require__(/*! ./Errors */ "./src/Typesense/Errors/index.ts"); -/* harmony import */ var _SearchOnlyDocuments__WEBPACK_IMPORTED_MODULE_8__ = __webpack_require__(/*! ./SearchOnlyDocuments */ "./src/Typesense/SearchOnlyDocuments.ts"); +function _readOnlyError(r) { + throw new TypeError('"' + r + '" is read-only'); +} + +/***/ }), +/***/ "./node_modules/.pnpm/@babel+runtime@7.26.9/node_modules/@babel/runtime/helpers/esm/setPrototypeOf.js": +/*!************************************************************************************************************!*\ + !*** ./node_modules/.pnpm/@babel+runtime@7.26.9/node_modules/@babel/runtime/helpers/esm/setPrototypeOf.js ***! + \************************************************************************************************************/ +/***/ ((__unused_webpack___webpack_module__, __webpack_exports__, __webpack_require__) => { +"use strict"; +__webpack_require__.r(__webpack_exports__); +/* harmony export */ __webpack_require__.d(__webpack_exports__, { +/* harmony export */ "default": () => (/* binding */ _setPrototypeOf) +/* harmony export */ }); +function _setPrototypeOf(t, e) { + return _setPrototypeOf = Object.setPrototypeOf ? Object.setPrototypeOf.bind() : function (t, e) { + return t.__proto__ = e, t; + }, _setPrototypeOf(t, e); +} +/***/ }), +/***/ "./node_modules/.pnpm/@babel+runtime@7.26.9/node_modules/@babel/runtime/helpers/esm/slicedToArray.js": +/*!***********************************************************************************************************!*\ + !*** ./node_modules/.pnpm/@babel+runtime@7.26.9/node_modules/@babel/runtime/helpers/esm/slicedToArray.js ***! + \***********************************************************************************************************/ +/***/ ((__unused_webpack___webpack_module__, __webpack_exports__, __webpack_require__) => { -function _callSuper(t, o, e) { return o = (0,_babel_runtime_helpers_getPrototypeOf__WEBPACK_IMPORTED_MODULE_4__["default"])(o), (0,_babel_runtime_helpers_possibleConstructorReturn__WEBPACK_IMPORTED_MODULE_3__["default"])(t, _isNativeReflectConstruct() ? Reflect.construct(o, e || [], (0,_babel_runtime_helpers_getPrototypeOf__WEBPACK_IMPORTED_MODULE_4__["default"])(t).constructor) : o.apply(t, e)); } -function _isNativeReflectConstruct() { try { var t = !Boolean.prototype.valueOf.call(Reflect.construct(Boolean, [], function () {})); } catch (t) {} return (_isNativeReflectConstruct = function _isNativeReflectConstruct() { return !!t; })(); } +"use strict"; +__webpack_require__.r(__webpack_exports__); +/* harmony export */ __webpack_require__.d(__webpack_exports__, { +/* harmony export */ "default": () => (/* binding */ _slicedToArray) +/* harmony export */ }); +/* harmony import */ var _arrayWithHoles_js__WEBPACK_IMPORTED_MODULE_0__ = __webpack_require__(/*! ./arrayWithHoles.js */ "./node_modules/.pnpm/@babel+runtime@7.26.9/node_modules/@babel/runtime/helpers/esm/arrayWithHoles.js"); +/* harmony import */ var _iterableToArrayLimit_js__WEBPACK_IMPORTED_MODULE_1__ = __webpack_require__(/*! ./iterableToArrayLimit.js */ "./node_modules/.pnpm/@babel+runtime@7.26.9/node_modules/@babel/runtime/helpers/esm/iterableToArrayLimit.js"); +/* harmony import */ var _unsupportedIterableToArray_js__WEBPACK_IMPORTED_MODULE_2__ = __webpack_require__(/*! ./unsupportedIterableToArray.js */ "./node_modules/.pnpm/@babel+runtime@7.26.9/node_modules/@babel/runtime/helpers/esm/unsupportedIterableToArray.js"); +/* harmony import */ var _nonIterableRest_js__WEBPACK_IMPORTED_MODULE_3__ = __webpack_require__(/*! ./nonIterableRest.js */ "./node_modules/.pnpm/@babel+runtime@7.26.9/node_modules/@babel/runtime/helpers/esm/nonIterableRest.js"); -// Todo: use generic to extract filter_by values -var arrayableParams = { - query_by: "query_by", - query_by_weights: "query_by_weights", - facet_by: "facet_by", - group_by: "group_by", - include_fields: "include_fields", - exclude_fields: "exclude_fields", - highlight_fields: "highlight_fields", - highlight_full_fields: "highlight_full_fields", - pinned_hits: "pinned_hits", - hidden_hits: "hidden_hits", - infix: "infix", - override_tags: "override_tags", - num_typos: "num_typos", - prefix: "prefix", - sort_by: "sort_by" -}; +function _slicedToArray(r, e) { + return (0,_arrayWithHoles_js__WEBPACK_IMPORTED_MODULE_0__["default"])(r) || (0,_iterableToArrayLimit_js__WEBPACK_IMPORTED_MODULE_1__["default"])(r, e) || (0,_unsupportedIterableToArray_js__WEBPACK_IMPORTED_MODULE_2__["default"])(r, e) || (0,_nonIterableRest_js__WEBPACK_IMPORTED_MODULE_3__["default"])(); +} -// Todo: we could infer whether this is a grouped response by adding the search params as a generic -var isNodeJSEnvironment = typeof process !== "undefined" && process.versions != null && process.versions.node != null; -var Documents = /*#__PURE__*/function (_ref) { - (0,_babel_runtime_helpers_inherits__WEBPACK_IMPORTED_MODULE_5__["default"])(Documents, _ref); - function Documents(collectionName, apiCall, configuration) { - (0,_babel_runtime_helpers_classCallCheck__WEBPACK_IMPORTED_MODULE_1__["default"])(this, Documents); - return _callSuper(this, Documents, [collectionName, apiCall, configuration]); +/***/ }), + +/***/ "./node_modules/.pnpm/@babel+runtime@7.26.9/node_modules/@babel/runtime/helpers/esm/toConsumableArray.js": +/*!***************************************************************************************************************!*\ + !*** ./node_modules/.pnpm/@babel+runtime@7.26.9/node_modules/@babel/runtime/helpers/esm/toConsumableArray.js ***! + \***************************************************************************************************************/ +/***/ ((__unused_webpack___webpack_module__, __webpack_exports__, __webpack_require__) => { + +"use strict"; +__webpack_require__.r(__webpack_exports__); +/* harmony export */ __webpack_require__.d(__webpack_exports__, { +/* harmony export */ "default": () => (/* binding */ _toConsumableArray) +/* harmony export */ }); +/* harmony import */ var _arrayWithoutHoles_js__WEBPACK_IMPORTED_MODULE_0__ = __webpack_require__(/*! ./arrayWithoutHoles.js */ "./node_modules/.pnpm/@babel+runtime@7.26.9/node_modules/@babel/runtime/helpers/esm/arrayWithoutHoles.js"); +/* harmony import */ var _iterableToArray_js__WEBPACK_IMPORTED_MODULE_1__ = __webpack_require__(/*! ./iterableToArray.js */ "./node_modules/.pnpm/@babel+runtime@7.26.9/node_modules/@babel/runtime/helpers/esm/iterableToArray.js"); +/* harmony import */ var _unsupportedIterableToArray_js__WEBPACK_IMPORTED_MODULE_2__ = __webpack_require__(/*! ./unsupportedIterableToArray.js */ "./node_modules/.pnpm/@babel+runtime@7.26.9/node_modules/@babel/runtime/helpers/esm/unsupportedIterableToArray.js"); +/* harmony import */ var _nonIterableSpread_js__WEBPACK_IMPORTED_MODULE_3__ = __webpack_require__(/*! ./nonIterableSpread.js */ "./node_modules/.pnpm/@babel+runtime@7.26.9/node_modules/@babel/runtime/helpers/esm/nonIterableSpread.js"); + + + + +function _toConsumableArray(r) { + return (0,_arrayWithoutHoles_js__WEBPACK_IMPORTED_MODULE_0__["default"])(r) || (0,_iterableToArray_js__WEBPACK_IMPORTED_MODULE_1__["default"])(r) || (0,_unsupportedIterableToArray_js__WEBPACK_IMPORTED_MODULE_2__["default"])(r) || (0,_nonIterableSpread_js__WEBPACK_IMPORTED_MODULE_3__["default"])(); +} + + +/***/ }), + +/***/ "./node_modules/.pnpm/@babel+runtime@7.26.9/node_modules/@babel/runtime/helpers/esm/toPrimitive.js": +/*!*********************************************************************************************************!*\ + !*** ./node_modules/.pnpm/@babel+runtime@7.26.9/node_modules/@babel/runtime/helpers/esm/toPrimitive.js ***! + \*********************************************************************************************************/ +/***/ ((__unused_webpack___webpack_module__, __webpack_exports__, __webpack_require__) => { + +"use strict"; +__webpack_require__.r(__webpack_exports__); +/* harmony export */ __webpack_require__.d(__webpack_exports__, { +/* harmony export */ "default": () => (/* binding */ toPrimitive) +/* harmony export */ }); +/* harmony import */ var _typeof_js__WEBPACK_IMPORTED_MODULE_0__ = __webpack_require__(/*! ./typeof.js */ "./node_modules/.pnpm/@babel+runtime@7.26.9/node_modules/@babel/runtime/helpers/esm/typeof.js"); + +function toPrimitive(t, r) { + if ("object" != (0,_typeof_js__WEBPACK_IMPORTED_MODULE_0__["default"])(t) || !t) return t; + var e = t[Symbol.toPrimitive]; + if (void 0 !== e) { + var i = e.call(t, r || "default"); + if ("object" != (0,_typeof_js__WEBPACK_IMPORTED_MODULE_0__["default"])(i)) return i; + throw new TypeError("@@toPrimitive must return a primitive value."); } - (0,_babel_runtime_helpers_createClass__WEBPACK_IMPORTED_MODULE_2__["default"])(Documents, [{ - key: "create", - value: function () { - var _create = (0,_babel_runtime_helpers_asyncToGenerator__WEBPACK_IMPORTED_MODULE_0__["default"])( /*#__PURE__*/_babel_runtime_regenerator__WEBPACK_IMPORTED_MODULE_6___default().mark(function _callee(document) { - var options, - _args = arguments; - return _babel_runtime_regenerator__WEBPACK_IMPORTED_MODULE_6___default().wrap(function _callee$(_context) { - while (1) switch (_context.prev = _context.next) { - case 0: - options = _args.length > 1 && _args[1] !== undefined ? _args[1] : {}; - if (document) { - _context.next = 3; - break; - } - throw new Error("No document provided"); - case 3: - return _context.abrupt("return", this.apiCall.post(this.endpointPath(), document, options)); - case 4: - case "end": - return _context.stop(); - } - }, _callee, this); - })); - function create(_x) { - return _create.apply(this, arguments); - } - return create; - }() - }, { - key: "upsert", - value: function () { - var _upsert = (0,_babel_runtime_helpers_asyncToGenerator__WEBPACK_IMPORTED_MODULE_0__["default"])( /*#__PURE__*/_babel_runtime_regenerator__WEBPACK_IMPORTED_MODULE_6___default().mark(function _callee2(document) { - var options, - _args2 = arguments; - return _babel_runtime_regenerator__WEBPACK_IMPORTED_MODULE_6___default().wrap(function _callee2$(_context2) { - while (1) switch (_context2.prev = _context2.next) { - case 0: - options = _args2.length > 1 && _args2[1] !== undefined ? _args2[1] : {}; - if (document) { - _context2.next = 3; - break; - } - throw new Error("No document provided"); - case 3: - return _context2.abrupt("return", this.apiCall.post(this.endpointPath(), document, Object.assign({}, options, { - action: "upsert" - }))); - case 4: - case "end": - return _context2.stop(); - } - }, _callee2, this); - })); - function upsert(_x2) { - return _upsert.apply(this, arguments); - } - return upsert; - }() - }, { - key: "update", - value: function () { - var _update = (0,_babel_runtime_helpers_asyncToGenerator__WEBPACK_IMPORTED_MODULE_0__["default"])( /*#__PURE__*/_babel_runtime_regenerator__WEBPACK_IMPORTED_MODULE_6___default().mark(function _callee3(document) { - var options, - _args3 = arguments; - return _babel_runtime_regenerator__WEBPACK_IMPORTED_MODULE_6___default().wrap(function _callee3$(_context3) { - while (1) switch (_context3.prev = _context3.next) { - case 0: - options = _args3.length > 1 && _args3[1] !== undefined ? _args3[1] : {}; - if (document) { - _context3.next = 3; - break; - } - throw new Error("No document provided"); - case 3: - if (!(options["filter_by"] != null)) { - _context3.next = 7; - break; - } - return _context3.abrupt("return", this.apiCall.patch(this.endpointPath(), document, Object.assign({}, options))); - case 7: - return _context3.abrupt("return", this.apiCall.post(this.endpointPath(), document, Object.assign({}, options, { - action: "update" - }))); - case 8: - case "end": - return _context3.stop(); - } - }, _callee3, this); - })); - function update(_x3) { - return _update.apply(this, arguments); - } - return update; - }() - }, { - key: "delete", - value: function () { - var _delete2 = (0,_babel_runtime_helpers_asyncToGenerator__WEBPACK_IMPORTED_MODULE_0__["default"])( /*#__PURE__*/_babel_runtime_regenerator__WEBPACK_IMPORTED_MODULE_6___default().mark(function _callee4() { - var query, - _args4 = arguments; - return _babel_runtime_regenerator__WEBPACK_IMPORTED_MODULE_6___default().wrap(function _callee4$(_context4) { - while (1) switch (_context4.prev = _context4.next) { - case 0: - query = _args4.length > 0 && _args4[0] !== undefined ? _args4[0] : {}; - return _context4.abrupt("return", this.apiCall.delete(this.endpointPath(), query)); - case 2: - case "end": - return _context4.stop(); - } - }, _callee4, this); - })); - function _delete() { - return _delete2.apply(this, arguments); - } - return _delete; - }() - }, { - key: "createMany", - value: function () { - var _createMany = (0,_babel_runtime_helpers_asyncToGenerator__WEBPACK_IMPORTED_MODULE_0__["default"])( /*#__PURE__*/_babel_runtime_regenerator__WEBPACK_IMPORTED_MODULE_6___default().mark(function _callee5(documents) { - var options, - _args5 = arguments; - return _babel_runtime_regenerator__WEBPACK_IMPORTED_MODULE_6___default().wrap(function _callee5$(_context5) { - while (1) switch (_context5.prev = _context5.next) { - case 0: - options = _args5.length > 1 && _args5[1] !== undefined ? _args5[1] : {}; - this.configuration.logger.warn("createMany is deprecated and will be removed in a future version. Use import instead, which now takes both an array of documents or a JSONL string of documents"); - return _context5.abrupt("return", this.import(documents, options)); - case 3: - case "end": - return _context5.stop(); - } - }, _callee5, this); - })); - function createMany(_x4) { - return _createMany.apply(this, arguments); + return ("string" === r ? String : Number)(t); +} + + +/***/ }), + +/***/ "./node_modules/.pnpm/@babel+runtime@7.26.9/node_modules/@babel/runtime/helpers/esm/toPropertyKey.js": +/*!***********************************************************************************************************!*\ + !*** ./node_modules/.pnpm/@babel+runtime@7.26.9/node_modules/@babel/runtime/helpers/esm/toPropertyKey.js ***! + \***********************************************************************************************************/ +/***/ ((__unused_webpack___webpack_module__, __webpack_exports__, __webpack_require__) => { + +"use strict"; +__webpack_require__.r(__webpack_exports__); +/* harmony export */ __webpack_require__.d(__webpack_exports__, { +/* harmony export */ "default": () => (/* binding */ toPropertyKey) +/* harmony export */ }); +/* harmony import */ var _typeof_js__WEBPACK_IMPORTED_MODULE_0__ = __webpack_require__(/*! ./typeof.js */ "./node_modules/.pnpm/@babel+runtime@7.26.9/node_modules/@babel/runtime/helpers/esm/typeof.js"); +/* harmony import */ var _toPrimitive_js__WEBPACK_IMPORTED_MODULE_1__ = __webpack_require__(/*! ./toPrimitive.js */ "./node_modules/.pnpm/@babel+runtime@7.26.9/node_modules/@babel/runtime/helpers/esm/toPrimitive.js"); + + +function toPropertyKey(t) { + var i = (0,_toPrimitive_js__WEBPACK_IMPORTED_MODULE_1__["default"])(t, "string"); + return "symbol" == (0,_typeof_js__WEBPACK_IMPORTED_MODULE_0__["default"])(i) ? i : i + ""; +} + + +/***/ }), + +/***/ "./node_modules/.pnpm/@babel+runtime@7.26.9/node_modules/@babel/runtime/helpers/esm/typeof.js": +/*!****************************************************************************************************!*\ + !*** ./node_modules/.pnpm/@babel+runtime@7.26.9/node_modules/@babel/runtime/helpers/esm/typeof.js ***! + \****************************************************************************************************/ +/***/ ((__unused_webpack___webpack_module__, __webpack_exports__, __webpack_require__) => { + +"use strict"; +__webpack_require__.r(__webpack_exports__); +/* harmony export */ __webpack_require__.d(__webpack_exports__, { +/* harmony export */ "default": () => (/* binding */ _typeof) +/* harmony export */ }); +function _typeof(o) { + "@babel/helpers - typeof"; + + return _typeof = "function" == typeof Symbol && "symbol" == typeof Symbol.iterator ? function (o) { + return typeof o; + } : function (o) { + return o && "function" == typeof Symbol && o.constructor === Symbol && o !== Symbol.prototype ? "symbol" : typeof o; + }, _typeof(o); +} + + +/***/ }), + +/***/ "./node_modules/.pnpm/@babel+runtime@7.26.9/node_modules/@babel/runtime/helpers/esm/unsupportedIterableToArray.js": +/*!************************************************************************************************************************!*\ + !*** ./node_modules/.pnpm/@babel+runtime@7.26.9/node_modules/@babel/runtime/helpers/esm/unsupportedIterableToArray.js ***! + \************************************************************************************************************************/ +/***/ ((__unused_webpack___webpack_module__, __webpack_exports__, __webpack_require__) => { + +"use strict"; +__webpack_require__.r(__webpack_exports__); +/* harmony export */ __webpack_require__.d(__webpack_exports__, { +/* harmony export */ "default": () => (/* binding */ _unsupportedIterableToArray) +/* harmony export */ }); +/* harmony import */ var _arrayLikeToArray_js__WEBPACK_IMPORTED_MODULE_0__ = __webpack_require__(/*! ./arrayLikeToArray.js */ "./node_modules/.pnpm/@babel+runtime@7.26.9/node_modules/@babel/runtime/helpers/esm/arrayLikeToArray.js"); + +function _unsupportedIterableToArray(r, a) { + if (r) { + if ("string" == typeof r) return (0,_arrayLikeToArray_js__WEBPACK_IMPORTED_MODULE_0__["default"])(r, a); + var t = {}.toString.call(r).slice(8, -1); + return "Object" === t && r.constructor && (t = r.constructor.name), "Map" === t || "Set" === t ? Array.from(r) : "Arguments" === t || /^(?:Ui|I)nt(?:8|16|32)(?:Clamped)?Array$/.test(t) ? (0,_arrayLikeToArray_js__WEBPACK_IMPORTED_MODULE_0__["default"])(r, a) : void 0; + } +} + + +/***/ }), + +/***/ "./node_modules/.pnpm/@babel+runtime@7.26.9/node_modules/@babel/runtime/helpers/esm/wrapNativeSuper.js": +/*!*************************************************************************************************************!*\ + !*** ./node_modules/.pnpm/@babel+runtime@7.26.9/node_modules/@babel/runtime/helpers/esm/wrapNativeSuper.js ***! + \*************************************************************************************************************/ +/***/ ((__unused_webpack___webpack_module__, __webpack_exports__, __webpack_require__) => { + +"use strict"; +__webpack_require__.r(__webpack_exports__); +/* harmony export */ __webpack_require__.d(__webpack_exports__, { +/* harmony export */ "default": () => (/* binding */ _wrapNativeSuper) +/* harmony export */ }); +/* harmony import */ var _getPrototypeOf_js__WEBPACK_IMPORTED_MODULE_0__ = __webpack_require__(/*! ./getPrototypeOf.js */ "./node_modules/.pnpm/@babel+runtime@7.26.9/node_modules/@babel/runtime/helpers/esm/getPrototypeOf.js"); +/* harmony import */ var _setPrototypeOf_js__WEBPACK_IMPORTED_MODULE_1__ = __webpack_require__(/*! ./setPrototypeOf.js */ "./node_modules/.pnpm/@babel+runtime@7.26.9/node_modules/@babel/runtime/helpers/esm/setPrototypeOf.js"); +/* harmony import */ var _isNativeFunction_js__WEBPACK_IMPORTED_MODULE_2__ = __webpack_require__(/*! ./isNativeFunction.js */ "./node_modules/.pnpm/@babel+runtime@7.26.9/node_modules/@babel/runtime/helpers/esm/isNativeFunction.js"); +/* harmony import */ var _construct_js__WEBPACK_IMPORTED_MODULE_3__ = __webpack_require__(/*! ./construct.js */ "./node_modules/.pnpm/@babel+runtime@7.26.9/node_modules/@babel/runtime/helpers/esm/construct.js"); + + + + +function _wrapNativeSuper(t) { + var r = "function" == typeof Map ? new Map() : void 0; + return _wrapNativeSuper = function _wrapNativeSuper(t) { + if (null === t || !(0,_isNativeFunction_js__WEBPACK_IMPORTED_MODULE_2__["default"])(t)) return t; + if ("function" != typeof t) throw new TypeError("Super expression must either be null or a function"); + if (void 0 !== r) { + if (r.has(t)) return r.get(t); + r.set(t, Wrapper); + } + function Wrapper() { + return (0,_construct_js__WEBPACK_IMPORTED_MODULE_3__["default"])(t, arguments, (0,_getPrototypeOf_js__WEBPACK_IMPORTED_MODULE_0__["default"])(this).constructor); + } + return Wrapper.prototype = Object.create(t.prototype, { + constructor: { + value: Wrapper, + enumerable: !1, + writable: !0, + configurable: !0 } - return createMany; - }() - /** - * Import a set of documents in a batch. - * @param {string|Array} documents - Can be a JSONL string of documents or an array of document objects. - * @param options - * @return {string|Array} Returns a JSONL string if the input was a JSONL string, otherwise it returns an array of results. - */ - }, { - key: "import", - value: function () { - var _import2 = (0,_babel_runtime_helpers_asyncToGenerator__WEBPACK_IMPORTED_MODULE_0__["default"])( /*#__PURE__*/_babel_runtime_regenerator__WEBPACK_IMPORTED_MODULE_6___default().mark(function _callee6(documents) { - var options, - documentsInJSONLFormat, - resultsInJSONLFormat, - resultsInJSONFormat, - failedItems, - _args6 = arguments; - return _babel_runtime_regenerator__WEBPACK_IMPORTED_MODULE_6___default().wrap(function _callee6$(_context6) { - while (1) switch (_context6.prev = _context6.next) { - case 0: - options = _args6.length > 1 && _args6[1] !== undefined ? _args6[1] : {}; - if (!Array.isArray(documents)) { - _context6.next = 15; - break; - } - if (!(documents.length === 0)) { - _context6.next = 4; - break; - } - throw new _Errors__WEBPACK_IMPORTED_MODULE_7__.RequestMalformed("No documents provided"); - case 4: - _context6.prev = 4; - documentsInJSONLFormat = documents.map(function (document) { - return JSON.stringify(document); - }).join("\n"); - _context6.next = 13; - break; - case 8: - _context6.prev = 8; - _context6.t0 = _context6["catch"](4); - if (!(_context6.t0 instanceof RangeError && _context6.t0.message.includes("Too many properties to enumerate"))) { - _context6.next = 12; - break; - } - throw new Error("".concat(_context6.t0, "\n It looks like you have reached a Node.js limit that restricts the number of keys in an Object: https://stackoverflow.com/questions/9282869/are-there-limits-to-the-number-of-properties-in-a-javascript-object\n\n Please try reducing the number of keys in your document, or using CURL to import your data.\n ")); - case 12: - throw new Error(_context6.t0); - case 13: - _context6.next = 18; - break; - case 15: - documentsInJSONLFormat = documents; - if (!isEmptyString(documentsInJSONLFormat)) { - _context6.next = 18; - break; - } - throw new _Errors__WEBPACK_IMPORTED_MODULE_7__.RequestMalformed("No documents provided"); - case 18: - _context6.next = 20; - return this.apiCall.performRequest("post", this.endpointPath("import"), { - queryParameters: options, - bodyParameters: documentsInJSONLFormat, - additionalHeaders: { - "Content-Type": "text/plain" - }, - skipConnectionTimeout: true, - // We never want to client-side-timeout on an import and retry, since imports are syncronous and we want to let them take as long as it takes to complete fully - enableKeepAlive: isNodeJSEnvironment ? true : false // This is to prevent ECONNRESET socket hang up errors. Reference: https://github.com/axios/axios/issues/2936#issuecomment-779439991 - }); - case 20: - resultsInJSONLFormat = _context6.sent; - if (!Array.isArray(documents)) { - _context6.next = 31; - break; - } - resultsInJSONFormat = resultsInJSONLFormat.split("\n").map(function (r) { - return JSON.parse(r); - }); - failedItems = resultsInJSONFormat.filter(function (r) { - return r.success === false; - }); - if (!(failedItems.length > 0)) { - _context6.next = 28; - break; - } - throw new _Errors__WEBPACK_IMPORTED_MODULE_7__.ImportError("".concat(resultsInJSONFormat.length - failedItems.length, " documents imported successfully, ").concat(failedItems.length, " documents failed during import. Use `error.importResults` from the raised exception to get a detailed error reason for each document."), resultsInJSONFormat, { - documentsInJSONLFormat: documentsInJSONLFormat, - options: options, - failedItems: failedItems, - successCount: resultsInJSONFormat.length - failedItems.length - }); - case 28: - return _context6.abrupt("return", resultsInJSONFormat); - case 29: - _context6.next = 32; - break; - case 31: - return _context6.abrupt("return", resultsInJSONLFormat); - case 32: - case "end": - return _context6.stop(); - } - }, _callee6, this, [[4, 8]]); - })); - function _import(_x5) { - return _import2.apply(this, arguments); + }), (0,_setPrototypeOf_js__WEBPACK_IMPORTED_MODULE_1__["default"])(Wrapper, t); + }, _wrapNativeSuper(t); +} + + +/***/ }), + +/***/ "./node_modules/.pnpm/@babel+runtime@7.26.9/node_modules/@babel/runtime/helpers/regeneratorRuntime.js": +/*!************************************************************************************************************!*\ + !*** ./node_modules/.pnpm/@babel+runtime@7.26.9/node_modules/@babel/runtime/helpers/regeneratorRuntime.js ***! + \************************************************************************************************************/ +/***/ ((module, __unused_webpack_exports, __webpack_require__) => { + +var _typeof = (__webpack_require__(/*! ./typeof.js */ "./node_modules/.pnpm/@babel+runtime@7.26.9/node_modules/@babel/runtime/helpers/typeof.js")["default"]); +function _regeneratorRuntime() { + "use strict"; /*! regenerator-runtime -- Copyright (c) 2014-present, Facebook, Inc. -- license (MIT): https://github.com/facebook/regenerator/blob/main/LICENSE */ + module.exports = _regeneratorRuntime = function _regeneratorRuntime() { + return e; + }, module.exports.__esModule = true, module.exports["default"] = module.exports; + var t, + e = {}, + r = Object.prototype, + n = r.hasOwnProperty, + o = Object.defineProperty || function (t, e, r) { + t[e] = r.value; + }, + i = "function" == typeof Symbol ? Symbol : {}, + a = i.iterator || "@@iterator", + c = i.asyncIterator || "@@asyncIterator", + u = i.toStringTag || "@@toStringTag"; + function define(t, e, r) { + return Object.defineProperty(t, e, { + value: r, + enumerable: !0, + configurable: !0, + writable: !0 + }), t[e]; + } + try { + define({}, ""); + } catch (t) { + define = function define(t, e, r) { + return t[e] = r; + }; + } + function wrap(t, e, r, n) { + var i = e && e.prototype instanceof Generator ? e : Generator, + a = Object.create(i.prototype), + c = new Context(n || []); + return o(a, "_invoke", { + value: makeInvokeMethod(t, r, c) + }), a; + } + function tryCatch(t, e, r) { + try { + return { + type: "normal", + arg: t.call(e, r) + }; + } catch (t) { + return { + type: "throw", + arg: t + }; + } + } + e.wrap = wrap; + var h = "suspendedStart", + l = "suspendedYield", + f = "executing", + s = "completed", + y = {}; + function Generator() {} + function GeneratorFunction() {} + function GeneratorFunctionPrototype() {} + var p = {}; + define(p, a, function () { + return this; + }); + var d = Object.getPrototypeOf, + v = d && d(d(values([]))); + v && v !== r && n.call(v, a) && (p = v); + var g = GeneratorFunctionPrototype.prototype = Generator.prototype = Object.create(p); + function defineIteratorMethods(t) { + ["next", "throw", "return"].forEach(function (e) { + define(t, e, function (t) { + return this._invoke(e, t); + }); + }); + } + function AsyncIterator(t, e) { + function invoke(r, o, i, a) { + var c = tryCatch(t[r], t, o); + if ("throw" !== c.type) { + var u = c.arg, + h = u.value; + return h && "object" == _typeof(h) && n.call(h, "__await") ? e.resolve(h.__await).then(function (t) { + invoke("next", t, i, a); + }, function (t) { + invoke("throw", t, i, a); + }) : e.resolve(h).then(function (t) { + u.value = t, i(u); + }, function (t) { + return invoke("throw", t, i, a); + }); } - return _import; - }() - /** - * Imports documents from a NodeJS readable stream of JSONL. - */ - }, { - key: "importStream", - value: (function () { - var _importStream = (0,_babel_runtime_helpers_asyncToGenerator__WEBPACK_IMPORTED_MODULE_0__["default"])( /*#__PURE__*/_babel_runtime_regenerator__WEBPACK_IMPORTED_MODULE_6___default().mark(function _callee7(readableStream) { - var options, - resultsInJSONLFormat, - resultsInJSONFormat, - failedItems, - _args7 = arguments; - return _babel_runtime_regenerator__WEBPACK_IMPORTED_MODULE_6___default().wrap(function _callee7$(_context7) { - while (1) switch (_context7.prev = _context7.next) { - case 0: - options = _args7.length > 1 && _args7[1] !== undefined ? _args7[1] : {}; - _context7.next = 3; - return this.apiCall.performRequest("post", this.endpointPath("import"), { - queryParameters: options, - bodyParameters: readableStream, - additionalHeaders: { - "Content-Type": "text/plain" - }, - skipConnectionTimeout: true, - // We never want to client-side-timeout on an import and retry, since imports are syncronous and we want to let them take as long as it takes to complete fully - enableKeepAlive: isNodeJSEnvironment ? true : false // This is to prevent ECONNRESET socket hang up errors. Reference: https://github.com/axios/axios/issues/2936#issuecomment-779439991 - }); - case 3: - resultsInJSONLFormat = _context7.sent; - resultsInJSONFormat = resultsInJSONLFormat.split("\n").map(function (r) { - return JSON.parse(r); - }); - failedItems = resultsInJSONFormat.filter(function (r) { - return r.success === false; - }); - if (!(failedItems.length > 0)) { - _context7.next = 10; - break; - } - throw new _Errors__WEBPACK_IMPORTED_MODULE_7__.ImportError("".concat(resultsInJSONFormat.length - failedItems.length, " documents imported successfully, ").concat(failedItems.length, " documents failed during import. Use `error.importResults` from the raised exception to get a detailed error reason for each document."), resultsInJSONFormat, { - documentsInJSONLFormat: readableStream, - options: options, - failedItems: failedItems, - successCount: resultsInJSONFormat.length - failedItems.length - }); - case 10: - return _context7.abrupt("return", resultsInJSONFormat); - case 11: - case "end": - return _context7.stop(); - } - }, _callee7, this); - })); - function importStream(_x6) { - return _importStream.apply(this, arguments); + a(c.arg); + } + var r; + o(this, "_invoke", { + value: function value(t, n) { + function callInvokeWithMethodAndArg() { + return new e(function (e, r) { + invoke(t, n, e, r); + }); + } + return r = r ? r.then(callInvokeWithMethodAndArg, callInvokeWithMethodAndArg) : callInvokeWithMethodAndArg(); } - return importStream; - }() - /** - * Returns a JSONL string for all the documents in this collection - */ - ) - }, { - key: "export", - value: (function () { - var _export2 = (0,_babel_runtime_helpers_asyncToGenerator__WEBPACK_IMPORTED_MODULE_0__["default"])( /*#__PURE__*/_babel_runtime_regenerator__WEBPACK_IMPORTED_MODULE_6___default().mark(function _callee8() { - var options, - _args8 = arguments; - return _babel_runtime_regenerator__WEBPACK_IMPORTED_MODULE_6___default().wrap(function _callee8$(_context8) { - while (1) switch (_context8.prev = _context8.next) { - case 0: - options = _args8.length > 0 && _args8[0] !== undefined ? _args8[0] : {}; - return _context8.abrupt("return", this.apiCall.get(this.endpointPath("export"), options)); - case 2: - case "end": - return _context8.stop(); + }); + } + function makeInvokeMethod(e, r, n) { + var o = h; + return function (i, a) { + if (o === f) throw Error("Generator is already running"); + if (o === s) { + if ("throw" === i) throw a; + return { + value: t, + done: !0 + }; + } + for (n.method = i, n.arg = a;;) { + var c = n.delegate; + if (c) { + var u = maybeInvokeDelegate(c, n); + if (u) { + if (u === y) continue; + return u; } - }, _callee8, this); - })); - function _export() { - return _export2.apply(this, arguments); + } + if ("next" === n.method) n.sent = n._sent = n.arg;else if ("throw" === n.method) { + if (o === h) throw o = s, n.arg; + n.dispatchException(n.arg); + } else "return" === n.method && n.abrupt("return", n.arg); + o = f; + var p = tryCatch(e, r, n); + if ("normal" === p.type) { + if (o = n.done ? s : l, p.arg === y) continue; + return { + value: p.arg, + done: n.done + }; + } + "throw" === p.type && (o = s, n.method = "throw", n.arg = p.arg); + } + }; + } + function maybeInvokeDelegate(e, r) { + var n = r.method, + o = e.iterator[n]; + if (o === t) return r.delegate = null, "throw" === n && e.iterator["return"] && (r.method = "return", r.arg = t, maybeInvokeDelegate(e, r), "throw" === r.method) || "return" !== n && (r.method = "throw", r.arg = new TypeError("The iterator does not provide a '" + n + "' method")), y; + var i = tryCatch(o, e.iterator, r.arg); + if ("throw" === i.type) return r.method = "throw", r.arg = i.arg, r.delegate = null, y; + var a = i.arg; + return a ? a.done ? (r[e.resultName] = a.value, r.next = e.nextLoc, "return" !== r.method && (r.method = "next", r.arg = t), r.delegate = null, y) : a : (r.method = "throw", r.arg = new TypeError("iterator result is not an object"), r.delegate = null, y); + } + function pushTryEntry(t) { + var e = { + tryLoc: t[0] + }; + 1 in t && (e.catchLoc = t[1]), 2 in t && (e.finallyLoc = t[2], e.afterLoc = t[3]), this.tryEntries.push(e); + } + function resetTryEntry(t) { + var e = t.completion || {}; + e.type = "normal", delete e.arg, t.completion = e; + } + function Context(t) { + this.tryEntries = [{ + tryLoc: "root" + }], t.forEach(pushTryEntry, this), this.reset(!0); + } + function values(e) { + if (e || "" === e) { + var r = e[a]; + if (r) return r.call(e); + if ("function" == typeof e.next) return e; + if (!isNaN(e.length)) { + var o = -1, + i = function next() { + for (; ++o < e.length;) if (n.call(e, o)) return next.value = e[o], next.done = !1, next; + return next.value = t, next.done = !0, next; + }; + return i.next = i; + } + } + throw new TypeError(_typeof(e) + " is not iterable"); + } + return GeneratorFunction.prototype = GeneratorFunctionPrototype, o(g, "constructor", { + value: GeneratorFunctionPrototype, + configurable: !0 + }), o(GeneratorFunctionPrototype, "constructor", { + value: GeneratorFunction, + configurable: !0 + }), GeneratorFunction.displayName = define(GeneratorFunctionPrototype, u, "GeneratorFunction"), e.isGeneratorFunction = function (t) { + var e = "function" == typeof t && t.constructor; + return !!e && (e === GeneratorFunction || "GeneratorFunction" === (e.displayName || e.name)); + }, e.mark = function (t) { + return Object.setPrototypeOf ? Object.setPrototypeOf(t, GeneratorFunctionPrototype) : (t.__proto__ = GeneratorFunctionPrototype, define(t, u, "GeneratorFunction")), t.prototype = Object.create(g), t; + }, e.awrap = function (t) { + return { + __await: t + }; + }, defineIteratorMethods(AsyncIterator.prototype), define(AsyncIterator.prototype, c, function () { + return this; + }), e.AsyncIterator = AsyncIterator, e.async = function (t, r, n, o, i) { + void 0 === i && (i = Promise); + var a = new AsyncIterator(wrap(t, r, n, o), i); + return e.isGeneratorFunction(r) ? a : a.next().then(function (t) { + return t.done ? t.value : a.next(); + }); + }, defineIteratorMethods(g), define(g, u, "Generator"), define(g, a, function () { + return this; + }), define(g, "toString", function () { + return "[object Generator]"; + }), e.keys = function (t) { + var e = Object(t), + r = []; + for (var n in e) r.push(n); + return r.reverse(), function next() { + for (; r.length;) { + var t = r.pop(); + if (t in e) return next.value = t, next.done = !1, next; + } + return next.done = !0, next; + }; + }, e.values = values, Context.prototype = { + constructor: Context, + reset: function reset(e) { + if (this.prev = 0, this.next = 0, this.sent = this._sent = t, this.done = !1, this.delegate = null, this.method = "next", this.arg = t, this.tryEntries.forEach(resetTryEntry), !e) for (var r in this) "t" === r.charAt(0) && n.call(this, r) && !isNaN(+r.slice(1)) && (this[r] = t); + }, + stop: function stop() { + this.done = !0; + var t = this.tryEntries[0].completion; + if ("throw" === t.type) throw t.arg; + return this.rval; + }, + dispatchException: function dispatchException(e) { + if (this.done) throw e; + var r = this; + function handle(n, o) { + return a.type = "throw", a.arg = e, r.next = n, o && (r.method = "next", r.arg = t), !!o; + } + for (var o = this.tryEntries.length - 1; o >= 0; --o) { + var i = this.tryEntries[o], + a = i.completion; + if ("root" === i.tryLoc) return handle("end"); + if (i.tryLoc <= this.prev) { + var c = n.call(i, "catchLoc"), + u = n.call(i, "finallyLoc"); + if (c && u) { + if (this.prev < i.catchLoc) return handle(i.catchLoc, !0); + if (this.prev < i.finallyLoc) return handle(i.finallyLoc); + } else if (c) { + if (this.prev < i.catchLoc) return handle(i.catchLoc, !0); + } else { + if (!u) throw Error("try statement without catch or finally"); + if (this.prev < i.finallyLoc) return handle(i.finallyLoc); + } + } } - return _export; - }() - /** - * Returns a NodeJS readable stream of JSONL for all the documents in this collection. - */ - ) - }, { - key: "exportStream", - value: (function () { - var _exportStream = (0,_babel_runtime_helpers_asyncToGenerator__WEBPACK_IMPORTED_MODULE_0__["default"])( /*#__PURE__*/_babel_runtime_regenerator__WEBPACK_IMPORTED_MODULE_6___default().mark(function _callee9() { - var options, - _args9 = arguments; - return _babel_runtime_regenerator__WEBPACK_IMPORTED_MODULE_6___default().wrap(function _callee9$(_context9) { - while (1) switch (_context9.prev = _context9.next) { - case 0: - options = _args9.length > 0 && _args9[0] !== undefined ? _args9[0] : {}; - return _context9.abrupt("return", this.apiCall.get(this.endpointPath("export"), options, { - responseType: "stream" - })); - case 2: - case "end": - return _context9.stop(); + }, + abrupt: function abrupt(t, e) { + for (var r = this.tryEntries.length - 1; r >= 0; --r) { + var o = this.tryEntries[r]; + if (o.tryLoc <= this.prev && n.call(o, "finallyLoc") && this.prev < o.finallyLoc) { + var i = o; + break; + } + } + i && ("break" === t || "continue" === t) && i.tryLoc <= e && e <= i.finallyLoc && (i = null); + var a = i ? i.completion : {}; + return a.type = t, a.arg = e, i ? (this.method = "next", this.next = i.finallyLoc, y) : this.complete(a); + }, + complete: function complete(t, e) { + if ("throw" === t.type) throw t.arg; + return "break" === t.type || "continue" === t.type ? this.next = t.arg : "return" === t.type ? (this.rval = this.arg = t.arg, this.method = "return", this.next = "end") : "normal" === t.type && e && (this.next = e), y; + }, + finish: function finish(t) { + for (var e = this.tryEntries.length - 1; e >= 0; --e) { + var r = this.tryEntries[e]; + if (r.finallyLoc === t) return this.complete(r.completion, r.afterLoc), resetTryEntry(r), y; + } + }, + "catch": function _catch(t) { + for (var e = this.tryEntries.length - 1; e >= 0; --e) { + var r = this.tryEntries[e]; + if (r.tryLoc === t) { + var n = r.completion; + if ("throw" === n.type) { + var o = n.arg; + resetTryEntry(r); } - }, _callee9, this); - })); - function exportStream() { - return _exportStream.apply(this, arguments); + return o; + } } - return exportStream; - }()) - }]); - return Documents; -}(_SearchOnlyDocuments__WEBPACK_IMPORTED_MODULE_8__.SearchOnlyDocuments); + throw Error("illegal catch attempt"); + }, + delegateYield: function delegateYield(e, r, n) { + return this.delegate = { + iterator: values(e), + resultName: r, + nextLoc: n + }, "next" === this.method && (this.arg = t), y; + } + }, e; +} +module.exports = _regeneratorRuntime, module.exports.__esModule = true, module.exports["default"] = module.exports; -function isEmptyString(str) { - return str == null || str === "" || str.length === 0; +/***/ }), + +/***/ "./node_modules/.pnpm/@babel+runtime@7.26.9/node_modules/@babel/runtime/helpers/typeof.js": +/*!************************************************************************************************!*\ + !*** ./node_modules/.pnpm/@babel+runtime@7.26.9/node_modules/@babel/runtime/helpers/typeof.js ***! + \************************************************************************************************/ +/***/ ((module) => { + +function _typeof(o) { + "@babel/helpers - typeof"; + + return module.exports = _typeof = "function" == typeof Symbol && "symbol" == typeof Symbol.iterator ? function (o) { + return typeof o; + } : function (o) { + return o && "function" == typeof Symbol && o.constructor === Symbol && o !== Symbol.prototype ? "symbol" : typeof o; + }, module.exports.__esModule = true, module.exports["default"] = module.exports, _typeof(o); } +module.exports = _typeof, module.exports.__esModule = true, module.exports["default"] = module.exports; /***/ }), -/***/ "./src/Typesense/Errors/HTTPError.ts": -/*!*******************************************!*\ - !*** ./src/Typesense/Errors/HTTPError.ts ***! - \*******************************************/ -/***/ ((__unused_webpack_module, __webpack_exports__, __webpack_require__) => { +/***/ "./node_modules/.pnpm/@babel+runtime@7.26.9/node_modules/@babel/runtime/regenerator/index.js": +/*!***************************************************************************************************!*\ + !*** ./node_modules/.pnpm/@babel+runtime@7.26.9/node_modules/@babel/runtime/regenerator/index.js ***! + \***************************************************************************************************/ +/***/ ((module, __unused_webpack_exports, __webpack_require__) => { + +// TODO(Babel 8): Remove this file. + +var runtime = __webpack_require__(/*! ../helpers/regeneratorRuntime */ "./node_modules/.pnpm/@babel+runtime@7.26.9/node_modules/@babel/runtime/helpers/regeneratorRuntime.js")(); +module.exports = runtime; + +// Copied from https://github.com/facebook/regenerator/blob/main/packages/runtime/runtime.js#L736= +try { + regeneratorRuntime = runtime; +} catch (accidentalStrictMode) { + if (typeof globalThis === "object") { + globalThis.regeneratorRuntime = runtime; + } else { + Function("r", "regeneratorRuntime = r")(runtime); + } +} + + +/***/ }), + +/***/ "./node_modules/.pnpm/axios@1.7.9/node_modules/axios/lib/adapters/adapters.js": +/*!************************************************************************************!*\ + !*** ./node_modules/.pnpm/axios@1.7.9/node_modules/axios/lib/adapters/adapters.js ***! + \************************************************************************************/ +/***/ ((__unused_webpack___webpack_module__, __webpack_exports__, __webpack_require__) => { "use strict"; __webpack_require__.r(__webpack_exports__); /* harmony export */ __webpack_require__.d(__webpack_exports__, { -/* harmony export */ "default": () => (/* binding */ HTTPError) +/* harmony export */ "default": () => (__WEBPACK_DEFAULT_EXPORT__) /* harmony export */ }); -/* harmony import */ var _babel_runtime_helpers_createClass__WEBPACK_IMPORTED_MODULE_0__ = __webpack_require__(/*! @babel/runtime/helpers/createClass */ "./node_modules/@babel/runtime/helpers/esm/createClass.js"); -/* harmony import */ var _babel_runtime_helpers_classCallCheck__WEBPACK_IMPORTED_MODULE_1__ = __webpack_require__(/*! @babel/runtime/helpers/classCallCheck */ "./node_modules/@babel/runtime/helpers/esm/classCallCheck.js"); -/* harmony import */ var _babel_runtime_helpers_possibleConstructorReturn__WEBPACK_IMPORTED_MODULE_2__ = __webpack_require__(/*! @babel/runtime/helpers/possibleConstructorReturn */ "./node_modules/@babel/runtime/helpers/esm/possibleConstructorReturn.js"); -/* harmony import */ var _babel_runtime_helpers_getPrototypeOf__WEBPACK_IMPORTED_MODULE_3__ = __webpack_require__(/*! @babel/runtime/helpers/getPrototypeOf */ "./node_modules/@babel/runtime/helpers/esm/getPrototypeOf.js"); -/* harmony import */ var _babel_runtime_helpers_inherits__WEBPACK_IMPORTED_MODULE_4__ = __webpack_require__(/*! @babel/runtime/helpers/inherits */ "./node_modules/@babel/runtime/helpers/esm/inherits.js"); -/* harmony import */ var _TypesenseError__WEBPACK_IMPORTED_MODULE_5__ = __webpack_require__(/*! ./TypesenseError */ "./src/Typesense/Errors/TypesenseError.ts"); +/* harmony import */ var _utils_js__WEBPACK_IMPORTED_MODULE_3__ = __webpack_require__(/*! ../utils.js */ "./node_modules/.pnpm/axios@1.7.9/node_modules/axios/lib/utils.js"); +/* harmony import */ var _http_js__WEBPACK_IMPORTED_MODULE_0__ = __webpack_require__(/*! ./http.js */ "./node_modules/.pnpm/axios@1.7.9/node_modules/axios/lib/helpers/null.js"); +/* harmony import */ var _xhr_js__WEBPACK_IMPORTED_MODULE_1__ = __webpack_require__(/*! ./xhr.js */ "./node_modules/.pnpm/axios@1.7.9/node_modules/axios/lib/adapters/xhr.js"); +/* harmony import */ var _fetch_js__WEBPACK_IMPORTED_MODULE_2__ = __webpack_require__(/*! ./fetch.js */ "./node_modules/.pnpm/axios@1.7.9/node_modules/axios/lib/adapters/fetch.js"); +/* harmony import */ var _core_AxiosError_js__WEBPACK_IMPORTED_MODULE_4__ = __webpack_require__(/*! ../core/AxiosError.js */ "./node_modules/.pnpm/axios@1.7.9/node_modules/axios/lib/core/AxiosError.js"); -function _callSuper(t, o, e) { return o = (0,_babel_runtime_helpers_getPrototypeOf__WEBPACK_IMPORTED_MODULE_3__["default"])(o), (0,_babel_runtime_helpers_possibleConstructorReturn__WEBPACK_IMPORTED_MODULE_2__["default"])(t, _isNativeReflectConstruct() ? Reflect.construct(o, e || [], (0,_babel_runtime_helpers_getPrototypeOf__WEBPACK_IMPORTED_MODULE_3__["default"])(t).constructor) : o.apply(t, e)); } -function _isNativeReflectConstruct() { try { var t = !Boolean.prototype.valueOf.call(Reflect.construct(Boolean, [], function () {})); } catch (t) {} return (_isNativeReflectConstruct = function _isNativeReflectConstruct() { return !!t; })(); } -var HTTPError = /*#__PURE__*/function (_TypesenseError) { - (0,_babel_runtime_helpers_inherits__WEBPACK_IMPORTED_MODULE_4__["default"])(HTTPError, _TypesenseError); - function HTTPError() { - (0,_babel_runtime_helpers_classCallCheck__WEBPACK_IMPORTED_MODULE_1__["default"])(this, HTTPError); - return _callSuper(this, HTTPError, arguments); +const knownAdapters = { + http: _http_js__WEBPACK_IMPORTED_MODULE_0__["default"], + xhr: _xhr_js__WEBPACK_IMPORTED_MODULE_1__["default"], + fetch: _fetch_js__WEBPACK_IMPORTED_MODULE_2__["default"] +} + +_utils_js__WEBPACK_IMPORTED_MODULE_3__["default"].forEach(knownAdapters, (fn, value) => { + if (fn) { + try { + Object.defineProperty(fn, 'name', {value}); + } catch (e) { + // eslint-disable-next-line no-empty + } + Object.defineProperty(fn, 'adapterName', {value}); } - return (0,_babel_runtime_helpers_createClass__WEBPACK_IMPORTED_MODULE_0__["default"])(HTTPError); -}(_TypesenseError__WEBPACK_IMPORTED_MODULE_5__["default"]); +}); + +const renderReason = (reason) => `- ${reason}`; + +const isResolvedHandle = (adapter) => _utils_js__WEBPACK_IMPORTED_MODULE_3__["default"].isFunction(adapter) || adapter === null || adapter === false; + +/* harmony default export */ const __WEBPACK_DEFAULT_EXPORT__ = ({ + getAdapter: (adapters) => { + adapters = _utils_js__WEBPACK_IMPORTED_MODULE_3__["default"].isArray(adapters) ? adapters : [adapters]; + + const {length} = adapters; + let nameOrAdapter; + let adapter; + + const rejectedReasons = {}; + + for (let i = 0; i < length; i++) { + nameOrAdapter = adapters[i]; + let id; + + adapter = nameOrAdapter; + + if (!isResolvedHandle(nameOrAdapter)) { + adapter = knownAdapters[(id = String(nameOrAdapter)).toLowerCase()]; + + if (adapter === undefined) { + throw new _core_AxiosError_js__WEBPACK_IMPORTED_MODULE_4__["default"](`Unknown adapter '${id}'`); + } + } + + if (adapter) { + break; + } + + rejectedReasons[id || '#' + i] = adapter; + } + + if (!adapter) { + + const reasons = Object.entries(rejectedReasons) + .map(([id, state]) => `adapter ${id} ` + + (state === false ? 'is not supported by the environment' : 'is not available in the build') + ); + + let s = length ? + (reasons.length > 1 ? 'since :\n' + reasons.map(renderReason).join('\n') : ' ' + renderReason(reasons[0])) : + 'as no adapter specified'; + + throw new _core_AxiosError_js__WEBPACK_IMPORTED_MODULE_4__["default"]( + `There is no suitable adapter to dispatch the request ` + s, + 'ERR_NOT_SUPPORT' + ); + } + + return adapter; + }, + adapters: knownAdapters +}); /***/ }), -/***/ "./src/Typesense/Errors/ImportError.ts": -/*!*********************************************!*\ - !*** ./src/Typesense/Errors/ImportError.ts ***! - \*********************************************/ -/***/ ((__unused_webpack_module, __webpack_exports__, __webpack_require__) => { +/***/ "./node_modules/.pnpm/axios@1.7.9/node_modules/axios/lib/adapters/fetch.js": +/*!*********************************************************************************!*\ + !*** ./node_modules/.pnpm/axios@1.7.9/node_modules/axios/lib/adapters/fetch.js ***! + \*********************************************************************************/ +/***/ ((__unused_webpack___webpack_module__, __webpack_exports__, __webpack_require__) => { + +"use strict"; +__webpack_require__.r(__webpack_exports__); +/* harmony export */ __webpack_require__.d(__webpack_exports__, { +/* harmony export */ "default": () => (__WEBPACK_DEFAULT_EXPORT__) +/* harmony export */ }); +/* harmony import */ var _platform_index_js__WEBPACK_IMPORTED_MODULE_0__ = __webpack_require__(/*! ../platform/index.js */ "./node_modules/.pnpm/axios@1.7.9/node_modules/axios/lib/platform/index.js"); +/* harmony import */ var _utils_js__WEBPACK_IMPORTED_MODULE_1__ = __webpack_require__(/*! ../utils.js */ "./node_modules/.pnpm/axios@1.7.9/node_modules/axios/lib/utils.js"); +/* harmony import */ var _core_AxiosError_js__WEBPACK_IMPORTED_MODULE_2__ = __webpack_require__(/*! ../core/AxiosError.js */ "./node_modules/.pnpm/axios@1.7.9/node_modules/axios/lib/core/AxiosError.js"); +/* harmony import */ var _helpers_composeSignals_js__WEBPACK_IMPORTED_MODULE_4__ = __webpack_require__(/*! ../helpers/composeSignals.js */ "./node_modules/.pnpm/axios@1.7.9/node_modules/axios/lib/helpers/composeSignals.js"); +/* harmony import */ var _helpers_trackStream_js__WEBPACK_IMPORTED_MODULE_6__ = __webpack_require__(/*! ../helpers/trackStream.js */ "./node_modules/.pnpm/axios@1.7.9/node_modules/axios/lib/helpers/trackStream.js"); +/* harmony import */ var _core_AxiosHeaders_js__WEBPACK_IMPORTED_MODULE_8__ = __webpack_require__(/*! ../core/AxiosHeaders.js */ "./node_modules/.pnpm/axios@1.7.9/node_modules/axios/lib/core/AxiosHeaders.js"); +/* harmony import */ var _helpers_progressEventReducer_js__WEBPACK_IMPORTED_MODULE_5__ = __webpack_require__(/*! ../helpers/progressEventReducer.js */ "./node_modules/.pnpm/axios@1.7.9/node_modules/axios/lib/helpers/progressEventReducer.js"); +/* harmony import */ var _helpers_resolveConfig_js__WEBPACK_IMPORTED_MODULE_3__ = __webpack_require__(/*! ../helpers/resolveConfig.js */ "./node_modules/.pnpm/axios@1.7.9/node_modules/axios/lib/helpers/resolveConfig.js"); +/* harmony import */ var _core_settle_js__WEBPACK_IMPORTED_MODULE_7__ = __webpack_require__(/*! ../core/settle.js */ "./node_modules/.pnpm/axios@1.7.9/node_modules/axios/lib/core/settle.js"); + + + + + + + + + + +const isFetchSupported = typeof fetch === 'function' && typeof Request === 'function' && typeof Response === 'function'; +const isReadableStreamSupported = isFetchSupported && typeof ReadableStream === 'function'; + +// used only inside the fetch adapter +const encodeText = isFetchSupported && (typeof TextEncoder === 'function' ? + ((encoder) => (str) => encoder.encode(str))(new TextEncoder()) : + async (str) => new Uint8Array(await new Response(str).arrayBuffer()) +); + +const test = (fn, ...args) => { + try { + return !!fn(...args); + } catch (e) { + return false + } +} + +const supportsRequestStream = isReadableStreamSupported && test(() => { + let duplexAccessed = false; + + const hasContentType = new Request(_platform_index_js__WEBPACK_IMPORTED_MODULE_0__["default"].origin, { + body: new ReadableStream(), + method: 'POST', + get duplex() { + duplexAccessed = true; + return 'half'; + }, + }).headers.has('Content-Type'); + + return duplexAccessed && !hasContentType; +}); + +const DEFAULT_CHUNK_SIZE = 64 * 1024; + +const supportsResponseStream = isReadableStreamSupported && + test(() => _utils_js__WEBPACK_IMPORTED_MODULE_1__["default"].isReadableStream(new Response('').body)); -"use strict"; -__webpack_require__.r(__webpack_exports__); -/* harmony export */ __webpack_require__.d(__webpack_exports__, { -/* harmony export */ "default": () => (/* binding */ ImportError) -/* harmony export */ }); -/* harmony import */ var _babel_runtime_helpers_createClass__WEBPACK_IMPORTED_MODULE_0__ = __webpack_require__(/*! @babel/runtime/helpers/createClass */ "./node_modules/@babel/runtime/helpers/esm/createClass.js"); -/* harmony import */ var _babel_runtime_helpers_classCallCheck__WEBPACK_IMPORTED_MODULE_1__ = __webpack_require__(/*! @babel/runtime/helpers/classCallCheck */ "./node_modules/@babel/runtime/helpers/esm/classCallCheck.js"); -/* harmony import */ var _babel_runtime_helpers_possibleConstructorReturn__WEBPACK_IMPORTED_MODULE_2__ = __webpack_require__(/*! @babel/runtime/helpers/possibleConstructorReturn */ "./node_modules/@babel/runtime/helpers/esm/possibleConstructorReturn.js"); -/* harmony import */ var _babel_runtime_helpers_getPrototypeOf__WEBPACK_IMPORTED_MODULE_3__ = __webpack_require__(/*! @babel/runtime/helpers/getPrototypeOf */ "./node_modules/@babel/runtime/helpers/esm/getPrototypeOf.js"); -/* harmony import */ var _babel_runtime_helpers_inherits__WEBPACK_IMPORTED_MODULE_4__ = __webpack_require__(/*! @babel/runtime/helpers/inherits */ "./node_modules/@babel/runtime/helpers/esm/inherits.js"); -/* harmony import */ var _TypesenseError__WEBPACK_IMPORTED_MODULE_5__ = __webpack_require__(/*! ./TypesenseError */ "./src/Typesense/Errors/TypesenseError.ts"); +const resolvers = { + stream: supportsResponseStream && ((res) => res.body) +}; +isFetchSupported && (((res) => { + ['text', 'arrayBuffer', 'blob', 'formData', 'stream'].forEach(type => { + !resolvers[type] && (resolvers[type] = _utils_js__WEBPACK_IMPORTED_MODULE_1__["default"].isFunction(res[type]) ? (res) => res[type]() : + (_, config) => { + throw new _core_AxiosError_js__WEBPACK_IMPORTED_MODULE_2__["default"](`Response type '${type}' is not supported`, _core_AxiosError_js__WEBPACK_IMPORTED_MODULE_2__["default"].ERR_NOT_SUPPORT, config); + }) + }); +})(new Response)); +const getBodyLength = async (body) => { + if (body == null) { + return 0; + } + if(_utils_js__WEBPACK_IMPORTED_MODULE_1__["default"].isBlob(body)) { + return body.size; + } -function _callSuper(t, o, e) { return o = (0,_babel_runtime_helpers_getPrototypeOf__WEBPACK_IMPORTED_MODULE_3__["default"])(o), (0,_babel_runtime_helpers_possibleConstructorReturn__WEBPACK_IMPORTED_MODULE_2__["default"])(t, _isNativeReflectConstruct() ? Reflect.construct(o, e || [], (0,_babel_runtime_helpers_getPrototypeOf__WEBPACK_IMPORTED_MODULE_3__["default"])(t).constructor) : o.apply(t, e)); } -function _isNativeReflectConstruct() { try { var t = !Boolean.prototype.valueOf.call(Reflect.construct(Boolean, [], function () {})); } catch (t) {} return (_isNativeReflectConstruct = function _isNativeReflectConstruct() { return !!t; })(); } + if(_utils_js__WEBPACK_IMPORTED_MODULE_1__["default"].isSpecCompliantForm(body)) { + const _request = new Request(_platform_index_js__WEBPACK_IMPORTED_MODULE_0__["default"].origin, { + method: 'POST', + body, + }); + return (await _request.arrayBuffer()).byteLength; + } -var ImportError = /*#__PURE__*/function (_TypesenseError) { - (0,_babel_runtime_helpers_inherits__WEBPACK_IMPORTED_MODULE_4__["default"])(ImportError, _TypesenseError); - function ImportError(message, importResults, payload) { - var _this; - (0,_babel_runtime_helpers_classCallCheck__WEBPACK_IMPORTED_MODULE_1__["default"])(this, ImportError); - _this = _callSuper(this, ImportError, [message]); - _this.importResults = importResults; - _this.payload = payload; - return _this; + if(_utils_js__WEBPACK_IMPORTED_MODULE_1__["default"].isArrayBufferView(body) || _utils_js__WEBPACK_IMPORTED_MODULE_1__["default"].isArrayBuffer(body)) { + return body.byteLength; } - return (0,_babel_runtime_helpers_createClass__WEBPACK_IMPORTED_MODULE_0__["default"])(ImportError); -}(_TypesenseError__WEBPACK_IMPORTED_MODULE_5__["default"]); + if(_utils_js__WEBPACK_IMPORTED_MODULE_1__["default"].isURLSearchParams(body)) { + body = body + ''; + } -/***/ }), + if(_utils_js__WEBPACK_IMPORTED_MODULE_1__["default"].isString(body)) { + return (await encodeText(body)).byteLength; + } +} -/***/ "./src/Typesense/Errors/MissingConfigurationError.ts": -/*!***********************************************************!*\ - !*** ./src/Typesense/Errors/MissingConfigurationError.ts ***! - \***********************************************************/ -/***/ ((__unused_webpack_module, __webpack_exports__, __webpack_require__) => { +const resolveBodyLength = async (headers, body) => { + const length = _utils_js__WEBPACK_IMPORTED_MODULE_1__["default"].toFiniteNumber(headers.getContentLength()); -"use strict"; -__webpack_require__.r(__webpack_exports__); -/* harmony export */ __webpack_require__.d(__webpack_exports__, { -/* harmony export */ "default": () => (/* binding */ MissingConfigurationError) -/* harmony export */ }); -/* harmony import */ var _babel_runtime_helpers_createClass__WEBPACK_IMPORTED_MODULE_0__ = __webpack_require__(/*! @babel/runtime/helpers/createClass */ "./node_modules/@babel/runtime/helpers/esm/createClass.js"); -/* harmony import */ var _babel_runtime_helpers_classCallCheck__WEBPACK_IMPORTED_MODULE_1__ = __webpack_require__(/*! @babel/runtime/helpers/classCallCheck */ "./node_modules/@babel/runtime/helpers/esm/classCallCheck.js"); -/* harmony import */ var _babel_runtime_helpers_possibleConstructorReturn__WEBPACK_IMPORTED_MODULE_2__ = __webpack_require__(/*! @babel/runtime/helpers/possibleConstructorReturn */ "./node_modules/@babel/runtime/helpers/esm/possibleConstructorReturn.js"); -/* harmony import */ var _babel_runtime_helpers_getPrototypeOf__WEBPACK_IMPORTED_MODULE_3__ = __webpack_require__(/*! @babel/runtime/helpers/getPrototypeOf */ "./node_modules/@babel/runtime/helpers/esm/getPrototypeOf.js"); -/* harmony import */ var _babel_runtime_helpers_inherits__WEBPACK_IMPORTED_MODULE_4__ = __webpack_require__(/*! @babel/runtime/helpers/inherits */ "./node_modules/@babel/runtime/helpers/esm/inherits.js"); -/* harmony import */ var _TypesenseError__WEBPACK_IMPORTED_MODULE_5__ = __webpack_require__(/*! ./TypesenseError */ "./src/Typesense/Errors/TypesenseError.ts"); + return length == null ? getBodyLength(body) : length; +} +/* harmony default export */ const __WEBPACK_DEFAULT_EXPORT__ = (isFetchSupported && (async (config) => { + let { + url, + method, + data, + signal, + cancelToken, + timeout, + onDownloadProgress, + onUploadProgress, + responseType, + headers, + withCredentials = 'same-origin', + fetchOptions + } = (0,_helpers_resolveConfig_js__WEBPACK_IMPORTED_MODULE_3__["default"])(config); + responseType = responseType ? (responseType + '').toLowerCase() : 'text'; + let composedSignal = (0,_helpers_composeSignals_js__WEBPACK_IMPORTED_MODULE_4__["default"])([signal, cancelToken && cancelToken.toAbortSignal()], timeout); + let request; -function _callSuper(t, o, e) { return o = (0,_babel_runtime_helpers_getPrototypeOf__WEBPACK_IMPORTED_MODULE_3__["default"])(o), (0,_babel_runtime_helpers_possibleConstructorReturn__WEBPACK_IMPORTED_MODULE_2__["default"])(t, _isNativeReflectConstruct() ? Reflect.construct(o, e || [], (0,_babel_runtime_helpers_getPrototypeOf__WEBPACK_IMPORTED_MODULE_3__["default"])(t).constructor) : o.apply(t, e)); } -function _isNativeReflectConstruct() { try { var t = !Boolean.prototype.valueOf.call(Reflect.construct(Boolean, [], function () {})); } catch (t) {} return (_isNativeReflectConstruct = function _isNativeReflectConstruct() { return !!t; })(); } + const unsubscribe = composedSignal && composedSignal.unsubscribe && (() => { + composedSignal.unsubscribe(); + }); -var MissingConfigurationError = /*#__PURE__*/function (_TypesenseError) { - (0,_babel_runtime_helpers_inherits__WEBPACK_IMPORTED_MODULE_4__["default"])(MissingConfigurationError, _TypesenseError); - function MissingConfigurationError() { - (0,_babel_runtime_helpers_classCallCheck__WEBPACK_IMPORTED_MODULE_1__["default"])(this, MissingConfigurationError); - return _callSuper(this, MissingConfigurationError, arguments); - } - return (0,_babel_runtime_helpers_createClass__WEBPACK_IMPORTED_MODULE_0__["default"])(MissingConfigurationError); -}(_TypesenseError__WEBPACK_IMPORTED_MODULE_5__["default"]); + let requestContentLength; + try { + if ( + onUploadProgress && supportsRequestStream && method !== 'get' && method !== 'head' && + (requestContentLength = await resolveBodyLength(headers, data)) !== 0 + ) { + let _request = new Request(url, { + method: 'POST', + body: data, + duplex: "half" + }); -/***/ }), + let contentTypeHeader; -/***/ "./src/Typesense/Errors/ObjectAlreadyExists.ts": -/*!*****************************************************!*\ - !*** ./src/Typesense/Errors/ObjectAlreadyExists.ts ***! - \*****************************************************/ -/***/ ((__unused_webpack_module, __webpack_exports__, __webpack_require__) => { + if (_utils_js__WEBPACK_IMPORTED_MODULE_1__["default"].isFormData(data) && (contentTypeHeader = _request.headers.get('content-type'))) { + headers.setContentType(contentTypeHeader) + } -"use strict"; -__webpack_require__.r(__webpack_exports__); -/* harmony export */ __webpack_require__.d(__webpack_exports__, { -/* harmony export */ "default": () => (/* binding */ ObjectAlreadyExists) -/* harmony export */ }); -/* harmony import */ var _babel_runtime_helpers_createClass__WEBPACK_IMPORTED_MODULE_0__ = __webpack_require__(/*! @babel/runtime/helpers/createClass */ "./node_modules/@babel/runtime/helpers/esm/createClass.js"); -/* harmony import */ var _babel_runtime_helpers_classCallCheck__WEBPACK_IMPORTED_MODULE_1__ = __webpack_require__(/*! @babel/runtime/helpers/classCallCheck */ "./node_modules/@babel/runtime/helpers/esm/classCallCheck.js"); -/* harmony import */ var _babel_runtime_helpers_possibleConstructorReturn__WEBPACK_IMPORTED_MODULE_2__ = __webpack_require__(/*! @babel/runtime/helpers/possibleConstructorReturn */ "./node_modules/@babel/runtime/helpers/esm/possibleConstructorReturn.js"); -/* harmony import */ var _babel_runtime_helpers_getPrototypeOf__WEBPACK_IMPORTED_MODULE_3__ = __webpack_require__(/*! @babel/runtime/helpers/getPrototypeOf */ "./node_modules/@babel/runtime/helpers/esm/getPrototypeOf.js"); -/* harmony import */ var _babel_runtime_helpers_inherits__WEBPACK_IMPORTED_MODULE_4__ = __webpack_require__(/*! @babel/runtime/helpers/inherits */ "./node_modules/@babel/runtime/helpers/esm/inherits.js"); -/* harmony import */ var _TypesenseError__WEBPACK_IMPORTED_MODULE_5__ = __webpack_require__(/*! ./TypesenseError */ "./src/Typesense/Errors/TypesenseError.ts"); + if (_request.body) { + const [onProgress, flush] = (0,_helpers_progressEventReducer_js__WEBPACK_IMPORTED_MODULE_5__.progressEventDecorator)( + requestContentLength, + (0,_helpers_progressEventReducer_js__WEBPACK_IMPORTED_MODULE_5__.progressEventReducer)((0,_helpers_progressEventReducer_js__WEBPACK_IMPORTED_MODULE_5__.asyncDecorator)(onUploadProgress)) + ); + data = (0,_helpers_trackStream_js__WEBPACK_IMPORTED_MODULE_6__.trackStream)(_request.body, DEFAULT_CHUNK_SIZE, onProgress, flush); + } + } + if (!_utils_js__WEBPACK_IMPORTED_MODULE_1__["default"].isString(withCredentials)) { + withCredentials = withCredentials ? 'include' : 'omit'; + } + // Cloudflare Workers throws when credentials are defined + // see https://github.com/cloudflare/workerd/issues/902 + const isCredentialsSupported = "credentials" in Request.prototype; + request = new Request(url, { + ...fetchOptions, + signal: composedSignal, + method: method.toUpperCase(), + headers: headers.normalize().toJSON(), + body: data, + duplex: "half", + credentials: isCredentialsSupported ? withCredentials : undefined + }); + let response = await fetch(request); -function _callSuper(t, o, e) { return o = (0,_babel_runtime_helpers_getPrototypeOf__WEBPACK_IMPORTED_MODULE_3__["default"])(o), (0,_babel_runtime_helpers_possibleConstructorReturn__WEBPACK_IMPORTED_MODULE_2__["default"])(t, _isNativeReflectConstruct() ? Reflect.construct(o, e || [], (0,_babel_runtime_helpers_getPrototypeOf__WEBPACK_IMPORTED_MODULE_3__["default"])(t).constructor) : o.apply(t, e)); } -function _isNativeReflectConstruct() { try { var t = !Boolean.prototype.valueOf.call(Reflect.construct(Boolean, [], function () {})); } catch (t) {} return (_isNativeReflectConstruct = function _isNativeReflectConstruct() { return !!t; })(); } + const isStreamResponse = supportsResponseStream && (responseType === 'stream' || responseType === 'response'); -var ObjectAlreadyExists = /*#__PURE__*/function (_TypesenseError) { - (0,_babel_runtime_helpers_inherits__WEBPACK_IMPORTED_MODULE_4__["default"])(ObjectAlreadyExists, _TypesenseError); - function ObjectAlreadyExists() { - (0,_babel_runtime_helpers_classCallCheck__WEBPACK_IMPORTED_MODULE_1__["default"])(this, ObjectAlreadyExists); - return _callSuper(this, ObjectAlreadyExists, arguments); - } - return (0,_babel_runtime_helpers_createClass__WEBPACK_IMPORTED_MODULE_0__["default"])(ObjectAlreadyExists); -}(_TypesenseError__WEBPACK_IMPORTED_MODULE_5__["default"]); + if (supportsResponseStream && (onDownloadProgress || (isStreamResponse && unsubscribe))) { + const options = {}; + ['status', 'statusText', 'headers'].forEach(prop => { + options[prop] = response[prop]; + }); -/***/ }), + const responseContentLength = _utils_js__WEBPACK_IMPORTED_MODULE_1__["default"].toFiniteNumber(response.headers.get('content-length')); -/***/ "./src/Typesense/Errors/ObjectNotFound.ts": -/*!************************************************!*\ - !*** ./src/Typesense/Errors/ObjectNotFound.ts ***! - \************************************************/ -/***/ ((__unused_webpack_module, __webpack_exports__, __webpack_require__) => { + const [onProgress, flush] = onDownloadProgress && (0,_helpers_progressEventReducer_js__WEBPACK_IMPORTED_MODULE_5__.progressEventDecorator)( + responseContentLength, + (0,_helpers_progressEventReducer_js__WEBPACK_IMPORTED_MODULE_5__.progressEventReducer)((0,_helpers_progressEventReducer_js__WEBPACK_IMPORTED_MODULE_5__.asyncDecorator)(onDownloadProgress), true) + ) || []; -"use strict"; -__webpack_require__.r(__webpack_exports__); -/* harmony export */ __webpack_require__.d(__webpack_exports__, { -/* harmony export */ "default": () => (/* binding */ ObjectNotFound) -/* harmony export */ }); -/* harmony import */ var _babel_runtime_helpers_createClass__WEBPACK_IMPORTED_MODULE_0__ = __webpack_require__(/*! @babel/runtime/helpers/createClass */ "./node_modules/@babel/runtime/helpers/esm/createClass.js"); -/* harmony import */ var _babel_runtime_helpers_classCallCheck__WEBPACK_IMPORTED_MODULE_1__ = __webpack_require__(/*! @babel/runtime/helpers/classCallCheck */ "./node_modules/@babel/runtime/helpers/esm/classCallCheck.js"); -/* harmony import */ var _babel_runtime_helpers_possibleConstructorReturn__WEBPACK_IMPORTED_MODULE_2__ = __webpack_require__(/*! @babel/runtime/helpers/possibleConstructorReturn */ "./node_modules/@babel/runtime/helpers/esm/possibleConstructorReturn.js"); -/* harmony import */ var _babel_runtime_helpers_getPrototypeOf__WEBPACK_IMPORTED_MODULE_3__ = __webpack_require__(/*! @babel/runtime/helpers/getPrototypeOf */ "./node_modules/@babel/runtime/helpers/esm/getPrototypeOf.js"); -/* harmony import */ var _babel_runtime_helpers_inherits__WEBPACK_IMPORTED_MODULE_4__ = __webpack_require__(/*! @babel/runtime/helpers/inherits */ "./node_modules/@babel/runtime/helpers/esm/inherits.js"); -/* harmony import */ var _TypesenseError__WEBPACK_IMPORTED_MODULE_5__ = __webpack_require__(/*! ./TypesenseError */ "./src/Typesense/Errors/TypesenseError.ts"); + response = new Response( + (0,_helpers_trackStream_js__WEBPACK_IMPORTED_MODULE_6__.trackStream)(response.body, DEFAULT_CHUNK_SIZE, onProgress, () => { + flush && flush(); + unsubscribe && unsubscribe(); + }), + options + ); + } + responseType = responseType || 'text'; + let responseData = await resolvers[_utils_js__WEBPACK_IMPORTED_MODULE_1__["default"].findKey(resolvers, responseType) || 'text'](response, config); + !isStreamResponse && unsubscribe && unsubscribe(); + return await new Promise((resolve, reject) => { + (0,_core_settle_js__WEBPACK_IMPORTED_MODULE_7__["default"])(resolve, reject, { + data: responseData, + headers: _core_AxiosHeaders_js__WEBPACK_IMPORTED_MODULE_8__["default"].from(response.headers), + status: response.status, + statusText: response.statusText, + config, + request + }) + }) + } catch (err) { + unsubscribe && unsubscribe(); -function _callSuper(t, o, e) { return o = (0,_babel_runtime_helpers_getPrototypeOf__WEBPACK_IMPORTED_MODULE_3__["default"])(o), (0,_babel_runtime_helpers_possibleConstructorReturn__WEBPACK_IMPORTED_MODULE_2__["default"])(t, _isNativeReflectConstruct() ? Reflect.construct(o, e || [], (0,_babel_runtime_helpers_getPrototypeOf__WEBPACK_IMPORTED_MODULE_3__["default"])(t).constructor) : o.apply(t, e)); } -function _isNativeReflectConstruct() { try { var t = !Boolean.prototype.valueOf.call(Reflect.construct(Boolean, [], function () {})); } catch (t) {} return (_isNativeReflectConstruct = function _isNativeReflectConstruct() { return !!t; })(); } + if (err && err.name === 'TypeError' && /fetch/i.test(err.message)) { + throw Object.assign( + new _core_AxiosError_js__WEBPACK_IMPORTED_MODULE_2__["default"]('Network Error', _core_AxiosError_js__WEBPACK_IMPORTED_MODULE_2__["default"].ERR_NETWORK, config, request), + { + cause: err.cause || err + } + ) + } -var ObjectNotFound = /*#__PURE__*/function (_TypesenseError) { - (0,_babel_runtime_helpers_inherits__WEBPACK_IMPORTED_MODULE_4__["default"])(ObjectNotFound, _TypesenseError); - function ObjectNotFound() { - (0,_babel_runtime_helpers_classCallCheck__WEBPACK_IMPORTED_MODULE_1__["default"])(this, ObjectNotFound); - return _callSuper(this, ObjectNotFound, arguments); + throw _core_AxiosError_js__WEBPACK_IMPORTED_MODULE_2__["default"].from(err, err && err.code, config, request); } - return (0,_babel_runtime_helpers_createClass__WEBPACK_IMPORTED_MODULE_0__["default"])(ObjectNotFound); -}(_TypesenseError__WEBPACK_IMPORTED_MODULE_5__["default"]); +})); + + /***/ }), -/***/ "./src/Typesense/Errors/ObjectUnprocessable.ts": -/*!*****************************************************!*\ - !*** ./src/Typesense/Errors/ObjectUnprocessable.ts ***! - \*****************************************************/ -/***/ ((__unused_webpack_module, __webpack_exports__, __webpack_require__) => { +/***/ "./node_modules/.pnpm/axios@1.7.9/node_modules/axios/lib/adapters/xhr.js": +/*!*******************************************************************************!*\ + !*** ./node_modules/.pnpm/axios@1.7.9/node_modules/axios/lib/adapters/xhr.js ***! + \*******************************************************************************/ +/***/ ((__unused_webpack___webpack_module__, __webpack_exports__, __webpack_require__) => { "use strict"; __webpack_require__.r(__webpack_exports__); /* harmony export */ __webpack_require__.d(__webpack_exports__, { -/* harmony export */ "default": () => (/* binding */ ObjectUnprocessable) +/* harmony export */ "default": () => (__WEBPACK_DEFAULT_EXPORT__) /* harmony export */ }); -/* harmony import */ var _babel_runtime_helpers_createClass__WEBPACK_IMPORTED_MODULE_0__ = __webpack_require__(/*! @babel/runtime/helpers/createClass */ "./node_modules/@babel/runtime/helpers/esm/createClass.js"); -/* harmony import */ var _babel_runtime_helpers_classCallCheck__WEBPACK_IMPORTED_MODULE_1__ = __webpack_require__(/*! @babel/runtime/helpers/classCallCheck */ "./node_modules/@babel/runtime/helpers/esm/classCallCheck.js"); -/* harmony import */ var _babel_runtime_helpers_possibleConstructorReturn__WEBPACK_IMPORTED_MODULE_2__ = __webpack_require__(/*! @babel/runtime/helpers/possibleConstructorReturn */ "./node_modules/@babel/runtime/helpers/esm/possibleConstructorReturn.js"); -/* harmony import */ var _babel_runtime_helpers_getPrototypeOf__WEBPACK_IMPORTED_MODULE_3__ = __webpack_require__(/*! @babel/runtime/helpers/getPrototypeOf */ "./node_modules/@babel/runtime/helpers/esm/getPrototypeOf.js"); -/* harmony import */ var _babel_runtime_helpers_inherits__WEBPACK_IMPORTED_MODULE_4__ = __webpack_require__(/*! @babel/runtime/helpers/inherits */ "./node_modules/@babel/runtime/helpers/esm/inherits.js"); -/* harmony import */ var _TypesenseError__WEBPACK_IMPORTED_MODULE_5__ = __webpack_require__(/*! ./TypesenseError */ "./src/Typesense/Errors/TypesenseError.ts"); +/* harmony import */ var _utils_js__WEBPACK_IMPORTED_MODULE_5__ = __webpack_require__(/*! ./../utils.js */ "./node_modules/.pnpm/axios@1.7.9/node_modules/axios/lib/utils.js"); +/* harmony import */ var _core_settle_js__WEBPACK_IMPORTED_MODULE_2__ = __webpack_require__(/*! ./../core/settle.js */ "./node_modules/.pnpm/axios@1.7.9/node_modules/axios/lib/core/settle.js"); +/* harmony import */ var _defaults_transitional_js__WEBPACK_IMPORTED_MODULE_4__ = __webpack_require__(/*! ../defaults/transitional.js */ "./node_modules/.pnpm/axios@1.7.9/node_modules/axios/lib/defaults/transitional.js"); +/* harmony import */ var _core_AxiosError_js__WEBPACK_IMPORTED_MODULE_3__ = __webpack_require__(/*! ../core/AxiosError.js */ "./node_modules/.pnpm/axios@1.7.9/node_modules/axios/lib/core/AxiosError.js"); +/* harmony import */ var _cancel_CanceledError_js__WEBPACK_IMPORTED_MODULE_7__ = __webpack_require__(/*! ../cancel/CanceledError.js */ "./node_modules/.pnpm/axios@1.7.9/node_modules/axios/lib/cancel/CanceledError.js"); +/* harmony import */ var _helpers_parseProtocol_js__WEBPACK_IMPORTED_MODULE_8__ = __webpack_require__(/*! ../helpers/parseProtocol.js */ "./node_modules/.pnpm/axios@1.7.9/node_modules/axios/lib/helpers/parseProtocol.js"); +/* harmony import */ var _platform_index_js__WEBPACK_IMPORTED_MODULE_9__ = __webpack_require__(/*! ../platform/index.js */ "./node_modules/.pnpm/axios@1.7.9/node_modules/axios/lib/platform/index.js"); +/* harmony import */ var _core_AxiosHeaders_js__WEBPACK_IMPORTED_MODULE_1__ = __webpack_require__(/*! ../core/AxiosHeaders.js */ "./node_modules/.pnpm/axios@1.7.9/node_modules/axios/lib/core/AxiosHeaders.js"); +/* harmony import */ var _helpers_progressEventReducer_js__WEBPACK_IMPORTED_MODULE_6__ = __webpack_require__(/*! ../helpers/progressEventReducer.js */ "./node_modules/.pnpm/axios@1.7.9/node_modules/axios/lib/helpers/progressEventReducer.js"); +/* harmony import */ var _helpers_resolveConfig_js__WEBPACK_IMPORTED_MODULE_0__ = __webpack_require__(/*! ../helpers/resolveConfig.js */ "./node_modules/.pnpm/axios@1.7.9/node_modules/axios/lib/helpers/resolveConfig.js"); -function _callSuper(t, o, e) { return o = (0,_babel_runtime_helpers_getPrototypeOf__WEBPACK_IMPORTED_MODULE_3__["default"])(o), (0,_babel_runtime_helpers_possibleConstructorReturn__WEBPACK_IMPORTED_MODULE_2__["default"])(t, _isNativeReflectConstruct() ? Reflect.construct(o, e || [], (0,_babel_runtime_helpers_getPrototypeOf__WEBPACK_IMPORTED_MODULE_3__["default"])(t).constructor) : o.apply(t, e)); } -function _isNativeReflectConstruct() { try { var t = !Boolean.prototype.valueOf.call(Reflect.construct(Boolean, [], function () {})); } catch (t) {} return (_isNativeReflectConstruct = function _isNativeReflectConstruct() { return !!t; })(); } - -var ObjectUnprocessable = /*#__PURE__*/function (_TypesenseError) { - (0,_babel_runtime_helpers_inherits__WEBPACK_IMPORTED_MODULE_4__["default"])(ObjectUnprocessable, _TypesenseError); - function ObjectUnprocessable() { - (0,_babel_runtime_helpers_classCallCheck__WEBPACK_IMPORTED_MODULE_1__["default"])(this, ObjectUnprocessable); - return _callSuper(this, ObjectUnprocessable, arguments); - } - return (0,_babel_runtime_helpers_createClass__WEBPACK_IMPORTED_MODULE_0__["default"])(ObjectUnprocessable); -}(_TypesenseError__WEBPACK_IMPORTED_MODULE_5__["default"]); - -/***/ }), - -/***/ "./src/Typesense/Errors/RequestMalformed.ts": -/*!**************************************************!*\ - !*** ./src/Typesense/Errors/RequestMalformed.ts ***! - \**************************************************/ -/***/ ((__unused_webpack_module, __webpack_exports__, __webpack_require__) => { -"use strict"; -__webpack_require__.r(__webpack_exports__); -/* harmony export */ __webpack_require__.d(__webpack_exports__, { -/* harmony export */ "default": () => (/* binding */ RequestMalformed) -/* harmony export */ }); -/* harmony import */ var _babel_runtime_helpers_createClass__WEBPACK_IMPORTED_MODULE_0__ = __webpack_require__(/*! @babel/runtime/helpers/createClass */ "./node_modules/@babel/runtime/helpers/esm/createClass.js"); -/* harmony import */ var _babel_runtime_helpers_classCallCheck__WEBPACK_IMPORTED_MODULE_1__ = __webpack_require__(/*! @babel/runtime/helpers/classCallCheck */ "./node_modules/@babel/runtime/helpers/esm/classCallCheck.js"); -/* harmony import */ var _babel_runtime_helpers_possibleConstructorReturn__WEBPACK_IMPORTED_MODULE_2__ = __webpack_require__(/*! @babel/runtime/helpers/possibleConstructorReturn */ "./node_modules/@babel/runtime/helpers/esm/possibleConstructorReturn.js"); -/* harmony import */ var _babel_runtime_helpers_getPrototypeOf__WEBPACK_IMPORTED_MODULE_3__ = __webpack_require__(/*! @babel/runtime/helpers/getPrototypeOf */ "./node_modules/@babel/runtime/helpers/esm/getPrototypeOf.js"); -/* harmony import */ var _babel_runtime_helpers_inherits__WEBPACK_IMPORTED_MODULE_4__ = __webpack_require__(/*! @babel/runtime/helpers/inherits */ "./node_modules/@babel/runtime/helpers/esm/inherits.js"); -/* harmony import */ var _TypesenseError__WEBPACK_IMPORTED_MODULE_5__ = __webpack_require__(/*! ./TypesenseError */ "./src/Typesense/Errors/TypesenseError.ts"); +const isXHRAdapterSupported = typeof XMLHttpRequest !== 'undefined'; -function _callSuper(t, o, e) { return o = (0,_babel_runtime_helpers_getPrototypeOf__WEBPACK_IMPORTED_MODULE_3__["default"])(o), (0,_babel_runtime_helpers_possibleConstructorReturn__WEBPACK_IMPORTED_MODULE_2__["default"])(t, _isNativeReflectConstruct() ? Reflect.construct(o, e || [], (0,_babel_runtime_helpers_getPrototypeOf__WEBPACK_IMPORTED_MODULE_3__["default"])(t).constructor) : o.apply(t, e)); } -function _isNativeReflectConstruct() { try { var t = !Boolean.prototype.valueOf.call(Reflect.construct(Boolean, [], function () {})); } catch (t) {} return (_isNativeReflectConstruct = function _isNativeReflectConstruct() { return !!t; })(); } +/* harmony default export */ const __WEBPACK_DEFAULT_EXPORT__ = (isXHRAdapterSupported && function (config) { + return new Promise(function dispatchXhrRequest(resolve, reject) { + const _config = (0,_helpers_resolveConfig_js__WEBPACK_IMPORTED_MODULE_0__["default"])(config); + let requestData = _config.data; + const requestHeaders = _core_AxiosHeaders_js__WEBPACK_IMPORTED_MODULE_1__["default"].from(_config.headers).normalize(); + let {responseType, onUploadProgress, onDownloadProgress} = _config; + let onCanceled; + let uploadThrottled, downloadThrottled; + let flushUpload, flushDownload; -var RequestMalformed = /*#__PURE__*/function (_TypesenseError) { - (0,_babel_runtime_helpers_inherits__WEBPACK_IMPORTED_MODULE_4__["default"])(RequestMalformed, _TypesenseError); - function RequestMalformed() { - (0,_babel_runtime_helpers_classCallCheck__WEBPACK_IMPORTED_MODULE_1__["default"])(this, RequestMalformed); - return _callSuper(this, RequestMalformed, arguments); - } - return (0,_babel_runtime_helpers_createClass__WEBPACK_IMPORTED_MODULE_0__["default"])(RequestMalformed); -}(_TypesenseError__WEBPACK_IMPORTED_MODULE_5__["default"]); + function done() { + flushUpload && flushUpload(); // flush events + flushDownload && flushDownload(); // flush events + _config.cancelToken && _config.cancelToken.unsubscribe(onCanceled); -/***/ }), + _config.signal && _config.signal.removeEventListener('abort', onCanceled); + } -/***/ "./src/Typesense/Errors/RequestUnauthorized.ts": -/*!*****************************************************!*\ - !*** ./src/Typesense/Errors/RequestUnauthorized.ts ***! - \*****************************************************/ -/***/ ((__unused_webpack_module, __webpack_exports__, __webpack_require__) => { + let request = new XMLHttpRequest(); -"use strict"; -__webpack_require__.r(__webpack_exports__); -/* harmony export */ __webpack_require__.d(__webpack_exports__, { -/* harmony export */ "default": () => (/* binding */ RequestUnauthorized) -/* harmony export */ }); -/* harmony import */ var _babel_runtime_helpers_createClass__WEBPACK_IMPORTED_MODULE_0__ = __webpack_require__(/*! @babel/runtime/helpers/createClass */ "./node_modules/@babel/runtime/helpers/esm/createClass.js"); -/* harmony import */ var _babel_runtime_helpers_classCallCheck__WEBPACK_IMPORTED_MODULE_1__ = __webpack_require__(/*! @babel/runtime/helpers/classCallCheck */ "./node_modules/@babel/runtime/helpers/esm/classCallCheck.js"); -/* harmony import */ var _babel_runtime_helpers_possibleConstructorReturn__WEBPACK_IMPORTED_MODULE_2__ = __webpack_require__(/*! @babel/runtime/helpers/possibleConstructorReturn */ "./node_modules/@babel/runtime/helpers/esm/possibleConstructorReturn.js"); -/* harmony import */ var _babel_runtime_helpers_getPrototypeOf__WEBPACK_IMPORTED_MODULE_3__ = __webpack_require__(/*! @babel/runtime/helpers/getPrototypeOf */ "./node_modules/@babel/runtime/helpers/esm/getPrototypeOf.js"); -/* harmony import */ var _babel_runtime_helpers_inherits__WEBPACK_IMPORTED_MODULE_4__ = __webpack_require__(/*! @babel/runtime/helpers/inherits */ "./node_modules/@babel/runtime/helpers/esm/inherits.js"); -/* harmony import */ var _TypesenseError__WEBPACK_IMPORTED_MODULE_5__ = __webpack_require__(/*! ./TypesenseError */ "./src/Typesense/Errors/TypesenseError.ts"); + request.open(_config.method.toUpperCase(), _config.url, true); + // Set the request timeout in MS + request.timeout = _config.timeout; + function onloadend() { + if (!request) { + return; + } + // Prepare the response + const responseHeaders = _core_AxiosHeaders_js__WEBPACK_IMPORTED_MODULE_1__["default"].from( + 'getAllResponseHeaders' in request && request.getAllResponseHeaders() + ); + const responseData = !responseType || responseType === 'text' || responseType === 'json' ? + request.responseText : request.response; + const response = { + data: responseData, + status: request.status, + statusText: request.statusText, + headers: responseHeaders, + config, + request + }; + (0,_core_settle_js__WEBPACK_IMPORTED_MODULE_2__["default"])(function _resolve(value) { + resolve(value); + done(); + }, function _reject(err) { + reject(err); + done(); + }, response); + // Clean up request + request = null; + } -function _callSuper(t, o, e) { return o = (0,_babel_runtime_helpers_getPrototypeOf__WEBPACK_IMPORTED_MODULE_3__["default"])(o), (0,_babel_runtime_helpers_possibleConstructorReturn__WEBPACK_IMPORTED_MODULE_2__["default"])(t, _isNativeReflectConstruct() ? Reflect.construct(o, e || [], (0,_babel_runtime_helpers_getPrototypeOf__WEBPACK_IMPORTED_MODULE_3__["default"])(t).constructor) : o.apply(t, e)); } -function _isNativeReflectConstruct() { try { var t = !Boolean.prototype.valueOf.call(Reflect.construct(Boolean, [], function () {})); } catch (t) {} return (_isNativeReflectConstruct = function _isNativeReflectConstruct() { return !!t; })(); } + if ('onloadend' in request) { + // Use onloadend if available + request.onloadend = onloadend; + } else { + // Listen for ready state to emulate onloadend + request.onreadystatechange = function handleLoad() { + if (!request || request.readyState !== 4) { + return; + } -var RequestUnauthorized = /*#__PURE__*/function (_TypesenseError) { - (0,_babel_runtime_helpers_inherits__WEBPACK_IMPORTED_MODULE_4__["default"])(RequestUnauthorized, _TypesenseError); - function RequestUnauthorized() { - (0,_babel_runtime_helpers_classCallCheck__WEBPACK_IMPORTED_MODULE_1__["default"])(this, RequestUnauthorized); - return _callSuper(this, RequestUnauthorized, arguments); - } - return (0,_babel_runtime_helpers_createClass__WEBPACK_IMPORTED_MODULE_0__["default"])(RequestUnauthorized); -}(_TypesenseError__WEBPACK_IMPORTED_MODULE_5__["default"]); + // The request errored out and we didn't get a response, this will be + // handled by onerror instead + // With one exception: request that using file: protocol, most browsers + // will return status as 0 even though it's a successful request + if (request.status === 0 && !(request.responseURL && request.responseURL.indexOf('file:') === 0)) { + return; + } + // readystate handler is calling before onerror or ontimeout handlers, + // so we should call onloadend on the next 'tick' + setTimeout(onloadend); + }; + } + // Handle browser request cancellation (as opposed to a manual cancellation) + request.onabort = function handleAbort() { + if (!request) { + return; + } -/***/ }), + reject(new _core_AxiosError_js__WEBPACK_IMPORTED_MODULE_3__["default"]('Request aborted', _core_AxiosError_js__WEBPACK_IMPORTED_MODULE_3__["default"].ECONNABORTED, config, request)); -/***/ "./src/Typesense/Errors/ServerError.ts": -/*!*********************************************!*\ - !*** ./src/Typesense/Errors/ServerError.ts ***! - \*********************************************/ -/***/ ((__unused_webpack_module, __webpack_exports__, __webpack_require__) => { + // Clean up request + request = null; + }; -"use strict"; -__webpack_require__.r(__webpack_exports__); -/* harmony export */ __webpack_require__.d(__webpack_exports__, { -/* harmony export */ "default": () => (/* binding */ ServerError) -/* harmony export */ }); -/* harmony import */ var _babel_runtime_helpers_createClass__WEBPACK_IMPORTED_MODULE_0__ = __webpack_require__(/*! @babel/runtime/helpers/createClass */ "./node_modules/@babel/runtime/helpers/esm/createClass.js"); -/* harmony import */ var _babel_runtime_helpers_classCallCheck__WEBPACK_IMPORTED_MODULE_1__ = __webpack_require__(/*! @babel/runtime/helpers/classCallCheck */ "./node_modules/@babel/runtime/helpers/esm/classCallCheck.js"); -/* harmony import */ var _babel_runtime_helpers_possibleConstructorReturn__WEBPACK_IMPORTED_MODULE_2__ = __webpack_require__(/*! @babel/runtime/helpers/possibleConstructorReturn */ "./node_modules/@babel/runtime/helpers/esm/possibleConstructorReturn.js"); -/* harmony import */ var _babel_runtime_helpers_getPrototypeOf__WEBPACK_IMPORTED_MODULE_3__ = __webpack_require__(/*! @babel/runtime/helpers/getPrototypeOf */ "./node_modules/@babel/runtime/helpers/esm/getPrototypeOf.js"); -/* harmony import */ var _babel_runtime_helpers_inherits__WEBPACK_IMPORTED_MODULE_4__ = __webpack_require__(/*! @babel/runtime/helpers/inherits */ "./node_modules/@babel/runtime/helpers/esm/inherits.js"); -/* harmony import */ var _TypesenseError__WEBPACK_IMPORTED_MODULE_5__ = __webpack_require__(/*! ./TypesenseError */ "./src/Typesense/Errors/TypesenseError.ts"); + // Handle low level network errors + request.onerror = function handleError() { + // Real errors are hidden from us by the browser + // onerror should only fire if it's a network error + reject(new _core_AxiosError_js__WEBPACK_IMPORTED_MODULE_3__["default"]('Network Error', _core_AxiosError_js__WEBPACK_IMPORTED_MODULE_3__["default"].ERR_NETWORK, config, request)); + // Clean up request + request = null; + }; + // Handle timeout + request.ontimeout = function handleTimeout() { + let timeoutErrorMessage = _config.timeout ? 'timeout of ' + _config.timeout + 'ms exceeded' : 'timeout exceeded'; + const transitional = _config.transitional || _defaults_transitional_js__WEBPACK_IMPORTED_MODULE_4__["default"]; + if (_config.timeoutErrorMessage) { + timeoutErrorMessage = _config.timeoutErrorMessage; + } + reject(new _core_AxiosError_js__WEBPACK_IMPORTED_MODULE_3__["default"]( + timeoutErrorMessage, + transitional.clarifyTimeoutError ? _core_AxiosError_js__WEBPACK_IMPORTED_MODULE_3__["default"].ETIMEDOUT : _core_AxiosError_js__WEBPACK_IMPORTED_MODULE_3__["default"].ECONNABORTED, + config, + request)); + // Clean up request + request = null; + }; + // Remove Content-Type if data is undefined + requestData === undefined && requestHeaders.setContentType(null); -function _callSuper(t, o, e) { return o = (0,_babel_runtime_helpers_getPrototypeOf__WEBPACK_IMPORTED_MODULE_3__["default"])(o), (0,_babel_runtime_helpers_possibleConstructorReturn__WEBPACK_IMPORTED_MODULE_2__["default"])(t, _isNativeReflectConstruct() ? Reflect.construct(o, e || [], (0,_babel_runtime_helpers_getPrototypeOf__WEBPACK_IMPORTED_MODULE_3__["default"])(t).constructor) : o.apply(t, e)); } -function _isNativeReflectConstruct() { try { var t = !Boolean.prototype.valueOf.call(Reflect.construct(Boolean, [], function () {})); } catch (t) {} return (_isNativeReflectConstruct = function _isNativeReflectConstruct() { return !!t; })(); } + // Add headers to the request + if ('setRequestHeader' in request) { + _utils_js__WEBPACK_IMPORTED_MODULE_5__["default"].forEach(requestHeaders.toJSON(), function setRequestHeader(val, key) { + request.setRequestHeader(key, val); + }); + } -var ServerError = /*#__PURE__*/function (_TypesenseError) { - (0,_babel_runtime_helpers_inherits__WEBPACK_IMPORTED_MODULE_4__["default"])(ServerError, _TypesenseError); - function ServerError() { - (0,_babel_runtime_helpers_classCallCheck__WEBPACK_IMPORTED_MODULE_1__["default"])(this, ServerError); - return _callSuper(this, ServerError, arguments); - } - return (0,_babel_runtime_helpers_createClass__WEBPACK_IMPORTED_MODULE_0__["default"])(ServerError); -}(_TypesenseError__WEBPACK_IMPORTED_MODULE_5__["default"]); + // Add withCredentials to request if needed + if (!_utils_js__WEBPACK_IMPORTED_MODULE_5__["default"].isUndefined(_config.withCredentials)) { + request.withCredentials = !!_config.withCredentials; + } + // Add responseType to request if needed + if (responseType && responseType !== 'json') { + request.responseType = _config.responseType; + } -/***/ }), + // Handle progress if needed + if (onDownloadProgress) { + ([downloadThrottled, flushDownload] = (0,_helpers_progressEventReducer_js__WEBPACK_IMPORTED_MODULE_6__.progressEventReducer)(onDownloadProgress, true)); + request.addEventListener('progress', downloadThrottled); + } -/***/ "./src/Typesense/Errors/TypesenseError.ts": -/*!************************************************!*\ - !*** ./src/Typesense/Errors/TypesenseError.ts ***! - \************************************************/ -/***/ ((__unused_webpack_module, __webpack_exports__, __webpack_require__) => { + // Not all browsers support upload events + if (onUploadProgress && request.upload) { + ([uploadThrottled, flushUpload] = (0,_helpers_progressEventReducer_js__WEBPACK_IMPORTED_MODULE_6__.progressEventReducer)(onUploadProgress)); -"use strict"; -__webpack_require__.r(__webpack_exports__); -/* harmony export */ __webpack_require__.d(__webpack_exports__, { -/* harmony export */ "default": () => (/* binding */ TypesenseError) -/* harmony export */ }); -/* harmony import */ var _babel_runtime_helpers_createClass__WEBPACK_IMPORTED_MODULE_0__ = __webpack_require__(/*! @babel/runtime/helpers/createClass */ "./node_modules/@babel/runtime/helpers/esm/createClass.js"); -/* harmony import */ var _babel_runtime_helpers_classCallCheck__WEBPACK_IMPORTED_MODULE_1__ = __webpack_require__(/*! @babel/runtime/helpers/classCallCheck */ "./node_modules/@babel/runtime/helpers/esm/classCallCheck.js"); -/* harmony import */ var _babel_runtime_helpers_possibleConstructorReturn__WEBPACK_IMPORTED_MODULE_2__ = __webpack_require__(/*! @babel/runtime/helpers/possibleConstructorReturn */ "./node_modules/@babel/runtime/helpers/esm/possibleConstructorReturn.js"); -/* harmony import */ var _babel_runtime_helpers_getPrototypeOf__WEBPACK_IMPORTED_MODULE_3__ = __webpack_require__(/*! @babel/runtime/helpers/getPrototypeOf */ "./node_modules/@babel/runtime/helpers/esm/getPrototypeOf.js"); -/* harmony import */ var _babel_runtime_helpers_assertThisInitialized__WEBPACK_IMPORTED_MODULE_4__ = __webpack_require__(/*! @babel/runtime/helpers/assertThisInitialized */ "./node_modules/@babel/runtime/helpers/esm/assertThisInitialized.js"); -/* harmony import */ var _babel_runtime_helpers_inherits__WEBPACK_IMPORTED_MODULE_5__ = __webpack_require__(/*! @babel/runtime/helpers/inherits */ "./node_modules/@babel/runtime/helpers/esm/inherits.js"); -/* harmony import */ var _babel_runtime_helpers_wrapNativeSuper__WEBPACK_IMPORTED_MODULE_6__ = __webpack_require__(/*! @babel/runtime/helpers/wrapNativeSuper */ "./node_modules/@babel/runtime/helpers/esm/wrapNativeSuper.js"); + request.upload.addEventListener('progress', uploadThrottled); + request.upload.addEventListener('loadend', flushUpload); + } + if (_config.cancelToken || _config.signal) { + // Handle cancellation + // eslint-disable-next-line func-names + onCanceled = cancel => { + if (!request) { + return; + } + reject(!cancel || cancel.type ? new _cancel_CanceledError_js__WEBPACK_IMPORTED_MODULE_7__["default"](null, config, request) : cancel); + request.abort(); + request = null; + }; + _config.cancelToken && _config.cancelToken.subscribe(onCanceled); + if (_config.signal) { + _config.signal.aborted ? onCanceled() : _config.signal.addEventListener('abort', onCanceled); + } + } + const protocol = (0,_helpers_parseProtocol_js__WEBPACK_IMPORTED_MODULE_8__["default"])(_config.url); + if (protocol && _platform_index_js__WEBPACK_IMPORTED_MODULE_9__["default"].protocols.indexOf(protocol) === -1) { + reject(new _core_AxiosError_js__WEBPACK_IMPORTED_MODULE_3__["default"]('Unsupported protocol ' + protocol + ':', _core_AxiosError_js__WEBPACK_IMPORTED_MODULE_3__["default"].ERR_BAD_REQUEST, config)); + return; + } -function _callSuper(t, o, e) { return o = (0,_babel_runtime_helpers_getPrototypeOf__WEBPACK_IMPORTED_MODULE_3__["default"])(o), (0,_babel_runtime_helpers_possibleConstructorReturn__WEBPACK_IMPORTED_MODULE_2__["default"])(t, _isNativeReflectConstruct() ? Reflect.construct(o, e || [], (0,_babel_runtime_helpers_getPrototypeOf__WEBPACK_IMPORTED_MODULE_3__["default"])(t).constructor) : o.apply(t, e)); } -function _isNativeReflectConstruct() { try { var t = !Boolean.prototype.valueOf.call(Reflect.construct(Boolean, [], function () {})); } catch (t) {} return (_isNativeReflectConstruct = function _isNativeReflectConstruct() { return !!t; })(); } -var TypesenseError = /*#__PURE__*/function (_Error) { - (0,_babel_runtime_helpers_inherits__WEBPACK_IMPORTED_MODULE_5__["default"])(TypesenseError, _Error); - // Source: https://stackoverflow.com/a/58417721/123545 - function TypesenseError(message, httpBody, httpStatus) { - var _this; - (0,_babel_runtime_helpers_classCallCheck__WEBPACK_IMPORTED_MODULE_1__["default"])(this, TypesenseError); - _this = _callSuper(this, TypesenseError, [message]); - _this.name = (this instanceof TypesenseError ? this.constructor : void 0).name; - _this.httpBody = httpBody; - _this.httpStatus = httpStatus; - Object.setPrototypeOf((0,_babel_runtime_helpers_assertThisInitialized__WEBPACK_IMPORTED_MODULE_4__["default"])(_this), (this instanceof TypesenseError ? this.constructor : void 0).prototype); - return _this; - } - return (0,_babel_runtime_helpers_createClass__WEBPACK_IMPORTED_MODULE_0__["default"])(TypesenseError); -}( /*#__PURE__*/(0,_babel_runtime_helpers_wrapNativeSuper__WEBPACK_IMPORTED_MODULE_6__["default"])(Error)); + // Send the request + request.send(requestData || null); + }); +}); /***/ }), -/***/ "./src/Typesense/Errors/index.ts": -/*!***************************************!*\ - !*** ./src/Typesense/Errors/index.ts ***! - \***************************************/ -/***/ ((__unused_webpack_module, __webpack_exports__, __webpack_require__) => { - -"use strict"; -__webpack_require__.r(__webpack_exports__); -/* harmony export */ __webpack_require__.d(__webpack_exports__, { -/* harmony export */ HTTPError: () => (/* reexport safe */ _HTTPError__WEBPACK_IMPORTED_MODULE_0__["default"]), -/* harmony export */ ImportError: () => (/* reexport safe */ _ImportError__WEBPACK_IMPORTED_MODULE_8__["default"]), -/* harmony export */ MissingConfigurationError: () => (/* reexport safe */ _MissingConfigurationError__WEBPACK_IMPORTED_MODULE_1__["default"]), -/* harmony export */ ObjectAlreadyExists: () => (/* reexport safe */ _ObjectAlreadyExists__WEBPACK_IMPORTED_MODULE_2__["default"]), -/* harmony export */ ObjectNotFound: () => (/* reexport safe */ _ObjectNotFound__WEBPACK_IMPORTED_MODULE_3__["default"]), -/* harmony export */ ObjectUnprocessable: () => (/* reexport safe */ _ObjectUnprocessable__WEBPACK_IMPORTED_MODULE_4__["default"]), -/* harmony export */ RequestMalformed: () => (/* reexport safe */ _RequestMalformed__WEBPACK_IMPORTED_MODULE_5__["default"]), -/* harmony export */ RequestUnauthorized: () => (/* reexport safe */ _RequestUnauthorized__WEBPACK_IMPORTED_MODULE_6__["default"]), -/* harmony export */ ServerError: () => (/* reexport safe */ _ServerError__WEBPACK_IMPORTED_MODULE_7__["default"]), -/* harmony export */ TypesenseError: () => (/* reexport safe */ _TypesenseError__WEBPACK_IMPORTED_MODULE_9__["default"]) -/* harmony export */ }); -/* harmony import */ var _HTTPError__WEBPACK_IMPORTED_MODULE_0__ = __webpack_require__(/*! ./HTTPError */ "./src/Typesense/Errors/HTTPError.ts"); -/* harmony import */ var _MissingConfigurationError__WEBPACK_IMPORTED_MODULE_1__ = __webpack_require__(/*! ./MissingConfigurationError */ "./src/Typesense/Errors/MissingConfigurationError.ts"); -/* harmony import */ var _ObjectAlreadyExists__WEBPACK_IMPORTED_MODULE_2__ = __webpack_require__(/*! ./ObjectAlreadyExists */ "./src/Typesense/Errors/ObjectAlreadyExists.ts"); -/* harmony import */ var _ObjectNotFound__WEBPACK_IMPORTED_MODULE_3__ = __webpack_require__(/*! ./ObjectNotFound */ "./src/Typesense/Errors/ObjectNotFound.ts"); -/* harmony import */ var _ObjectUnprocessable__WEBPACK_IMPORTED_MODULE_4__ = __webpack_require__(/*! ./ObjectUnprocessable */ "./src/Typesense/Errors/ObjectUnprocessable.ts"); -/* harmony import */ var _RequestMalformed__WEBPACK_IMPORTED_MODULE_5__ = __webpack_require__(/*! ./RequestMalformed */ "./src/Typesense/Errors/RequestMalformed.ts"); -/* harmony import */ var _RequestUnauthorized__WEBPACK_IMPORTED_MODULE_6__ = __webpack_require__(/*! ./RequestUnauthorized */ "./src/Typesense/Errors/RequestUnauthorized.ts"); -/* harmony import */ var _ServerError__WEBPACK_IMPORTED_MODULE_7__ = __webpack_require__(/*! ./ServerError */ "./src/Typesense/Errors/ServerError.ts"); -/* harmony import */ var _ImportError__WEBPACK_IMPORTED_MODULE_8__ = __webpack_require__(/*! ./ImportError */ "./src/Typesense/Errors/ImportError.ts"); -/* harmony import */ var _TypesenseError__WEBPACK_IMPORTED_MODULE_9__ = __webpack_require__(/*! ./TypesenseError */ "./src/Typesense/Errors/TypesenseError.ts"); +/***/ "./node_modules/.pnpm/axios@1.7.9/node_modules/axios/lib/axios.js": +/*!************************************************************************!*\ + !*** ./node_modules/.pnpm/axios@1.7.9/node_modules/axios/lib/axios.js ***! + \************************************************************************/ +/***/ ((__unused_webpack___webpack_module__, __webpack_exports__, __webpack_require__) => { +"use strict"; +__webpack_require__.r(__webpack_exports__); +/* harmony export */ __webpack_require__.d(__webpack_exports__, { +/* harmony export */ "default": () => (__WEBPACK_DEFAULT_EXPORT__) +/* harmony export */ }); +/* harmony import */ var _utils_js__WEBPACK_IMPORTED_MODULE_2__ = __webpack_require__(/*! ./utils.js */ "./node_modules/.pnpm/axios@1.7.9/node_modules/axios/lib/utils.js"); +/* harmony import */ var _helpers_bind_js__WEBPACK_IMPORTED_MODULE_1__ = __webpack_require__(/*! ./helpers/bind.js */ "./node_modules/.pnpm/axios@1.7.9/node_modules/axios/lib/helpers/bind.js"); +/* harmony import */ var _core_Axios_js__WEBPACK_IMPORTED_MODULE_0__ = __webpack_require__(/*! ./core/Axios.js */ "./node_modules/.pnpm/axios@1.7.9/node_modules/axios/lib/core/Axios.js"); +/* harmony import */ var _core_mergeConfig_js__WEBPACK_IMPORTED_MODULE_3__ = __webpack_require__(/*! ./core/mergeConfig.js */ "./node_modules/.pnpm/axios@1.7.9/node_modules/axios/lib/core/mergeConfig.js"); +/* harmony import */ var _defaults_index_js__WEBPACK_IMPORTED_MODULE_4__ = __webpack_require__(/*! ./defaults/index.js */ "./node_modules/.pnpm/axios@1.7.9/node_modules/axios/lib/defaults/index.js"); +/* harmony import */ var _helpers_formDataToJSON_js__WEBPACK_IMPORTED_MODULE_14__ = __webpack_require__(/*! ./helpers/formDataToJSON.js */ "./node_modules/.pnpm/axios@1.7.9/node_modules/axios/lib/helpers/formDataToJSON.js"); +/* harmony import */ var _cancel_CanceledError_js__WEBPACK_IMPORTED_MODULE_5__ = __webpack_require__(/*! ./cancel/CanceledError.js */ "./node_modules/.pnpm/axios@1.7.9/node_modules/axios/lib/cancel/CanceledError.js"); +/* harmony import */ var _cancel_CancelToken_js__WEBPACK_IMPORTED_MODULE_6__ = __webpack_require__(/*! ./cancel/CancelToken.js */ "./node_modules/.pnpm/axios@1.7.9/node_modules/axios/lib/cancel/CancelToken.js"); +/* harmony import */ var _cancel_isCancel_js__WEBPACK_IMPORTED_MODULE_7__ = __webpack_require__(/*! ./cancel/isCancel.js */ "./node_modules/.pnpm/axios@1.7.9/node_modules/axios/lib/cancel/isCancel.js"); +/* harmony import */ var _env_data_js__WEBPACK_IMPORTED_MODULE_8__ = __webpack_require__(/*! ./env/data.js */ "./node_modules/.pnpm/axios@1.7.9/node_modules/axios/lib/env/data.js"); +/* harmony import */ var _helpers_toFormData_js__WEBPACK_IMPORTED_MODULE_9__ = __webpack_require__(/*! ./helpers/toFormData.js */ "./node_modules/.pnpm/axios@1.7.9/node_modules/axios/lib/helpers/toFormData.js"); +/* harmony import */ var _core_AxiosError_js__WEBPACK_IMPORTED_MODULE_10__ = __webpack_require__(/*! ./core/AxiosError.js */ "./node_modules/.pnpm/axios@1.7.9/node_modules/axios/lib/core/AxiosError.js"); +/* harmony import */ var _helpers_spread_js__WEBPACK_IMPORTED_MODULE_11__ = __webpack_require__(/*! ./helpers/spread.js */ "./node_modules/.pnpm/axios@1.7.9/node_modules/axios/lib/helpers/spread.js"); +/* harmony import */ var _helpers_isAxiosError_js__WEBPACK_IMPORTED_MODULE_12__ = __webpack_require__(/*! ./helpers/isAxiosError.js */ "./node_modules/.pnpm/axios@1.7.9/node_modules/axios/lib/helpers/isAxiosError.js"); +/* harmony import */ var _core_AxiosHeaders_js__WEBPACK_IMPORTED_MODULE_13__ = __webpack_require__(/*! ./core/AxiosHeaders.js */ "./node_modules/.pnpm/axios@1.7.9/node_modules/axios/lib/core/AxiosHeaders.js"); +/* harmony import */ var _adapters_adapters_js__WEBPACK_IMPORTED_MODULE_15__ = __webpack_require__(/*! ./adapters/adapters.js */ "./node_modules/.pnpm/axios@1.7.9/node_modules/axios/lib/adapters/adapters.js"); +/* harmony import */ var _helpers_HttpStatusCode_js__WEBPACK_IMPORTED_MODULE_16__ = __webpack_require__(/*! ./helpers/HttpStatusCode.js */ "./node_modules/.pnpm/axios@1.7.9/node_modules/axios/lib/helpers/HttpStatusCode.js"); @@ -2951,3167 +1633,3084 @@ __webpack_require__.r(__webpack_exports__); -/***/ }), -/***/ "./src/Typesense/Health.ts": -/*!*********************************!*\ - !*** ./src/Typesense/Health.ts ***! - \*********************************/ -/***/ ((__unused_webpack_module, __webpack_exports__, __webpack_require__) => { -"use strict"; -__webpack_require__.r(__webpack_exports__); -/* harmony export */ __webpack_require__.d(__webpack_exports__, { -/* harmony export */ "default": () => (/* binding */ Health) -/* harmony export */ }); -/* harmony import */ var _babel_runtime_helpers_asyncToGenerator__WEBPACK_IMPORTED_MODULE_0__ = __webpack_require__(/*! @babel/runtime/helpers/asyncToGenerator */ "./node_modules/@babel/runtime/helpers/esm/asyncToGenerator.js"); -/* harmony import */ var _babel_runtime_helpers_classCallCheck__WEBPACK_IMPORTED_MODULE_1__ = __webpack_require__(/*! @babel/runtime/helpers/classCallCheck */ "./node_modules/@babel/runtime/helpers/esm/classCallCheck.js"); -/* harmony import */ var _babel_runtime_helpers_createClass__WEBPACK_IMPORTED_MODULE_2__ = __webpack_require__(/*! @babel/runtime/helpers/createClass */ "./node_modules/@babel/runtime/helpers/esm/createClass.js"); -/* harmony import */ var _babel_runtime_regenerator__WEBPACK_IMPORTED_MODULE_3__ = __webpack_require__(/*! @babel/runtime/regenerator */ "./node_modules/@babel/runtime/regenerator/index.js"); -/* harmony import */ var _babel_runtime_regenerator__WEBPACK_IMPORTED_MODULE_3___default = /*#__PURE__*/__webpack_require__.n(_babel_runtime_regenerator__WEBPACK_IMPORTED_MODULE_3__); -var RESOURCEPATH = "/health"; -var Health = /*#__PURE__*/function () { - function Health(apiCall) { - (0,_babel_runtime_helpers_classCallCheck__WEBPACK_IMPORTED_MODULE_1__["default"])(this, Health); - this.apiCall = apiCall; - } - (0,_babel_runtime_helpers_createClass__WEBPACK_IMPORTED_MODULE_2__["default"])(Health, [{ - key: "retrieve", - value: function () { - var _retrieve = (0,_babel_runtime_helpers_asyncToGenerator__WEBPACK_IMPORTED_MODULE_0__["default"])( /*#__PURE__*/_babel_runtime_regenerator__WEBPACK_IMPORTED_MODULE_3___default().mark(function _callee() { - return _babel_runtime_regenerator__WEBPACK_IMPORTED_MODULE_3___default().wrap(function _callee$(_context) { - while (1) switch (_context.prev = _context.next) { - case 0: - return _context.abrupt("return", this.apiCall.get(RESOURCEPATH)); - case 1: - case "end": - return _context.stop(); - } - }, _callee, this); - })); - function retrieve() { - return _retrieve.apply(this, arguments); - } - return retrieve; - }() - }]); - return Health; -}(); -/***/ }), -/***/ "./src/Typesense/Key.ts": -/*!******************************!*\ - !*** ./src/Typesense/Key.ts ***! - \******************************/ -/***/ ((__unused_webpack_module, __webpack_exports__, __webpack_require__) => { +/** + * Create an instance of Axios + * + * @param {Object} defaultConfig The default config for the instance + * + * @returns {Axios} A new instance of Axios + */ +function createInstance(defaultConfig) { + const context = new _core_Axios_js__WEBPACK_IMPORTED_MODULE_0__["default"](defaultConfig); + const instance = (0,_helpers_bind_js__WEBPACK_IMPORTED_MODULE_1__["default"])(_core_Axios_js__WEBPACK_IMPORTED_MODULE_0__["default"].prototype.request, context); -"use strict"; -__webpack_require__.r(__webpack_exports__); -/* harmony export */ __webpack_require__.d(__webpack_exports__, { -/* harmony export */ "default": () => (/* binding */ Key) -/* harmony export */ }); -/* harmony import */ var _babel_runtime_helpers_asyncToGenerator__WEBPACK_IMPORTED_MODULE_0__ = __webpack_require__(/*! @babel/runtime/helpers/asyncToGenerator */ "./node_modules/@babel/runtime/helpers/esm/asyncToGenerator.js"); -/* harmony import */ var _babel_runtime_helpers_classCallCheck__WEBPACK_IMPORTED_MODULE_1__ = __webpack_require__(/*! @babel/runtime/helpers/classCallCheck */ "./node_modules/@babel/runtime/helpers/esm/classCallCheck.js"); -/* harmony import */ var _babel_runtime_helpers_createClass__WEBPACK_IMPORTED_MODULE_2__ = __webpack_require__(/*! @babel/runtime/helpers/createClass */ "./node_modules/@babel/runtime/helpers/esm/createClass.js"); -/* harmony import */ var _babel_runtime_regenerator__WEBPACK_IMPORTED_MODULE_3__ = __webpack_require__(/*! @babel/runtime/regenerator */ "./node_modules/@babel/runtime/regenerator/index.js"); -/* harmony import */ var _babel_runtime_regenerator__WEBPACK_IMPORTED_MODULE_3___default = /*#__PURE__*/__webpack_require__.n(_babel_runtime_regenerator__WEBPACK_IMPORTED_MODULE_3__); -/* harmony import */ var _Keys__WEBPACK_IMPORTED_MODULE_4__ = __webpack_require__(/*! ./Keys */ "./src/Typesense/Keys.ts"); + // Copy axios.prototype to instance + _utils_js__WEBPACK_IMPORTED_MODULE_2__["default"].extend(instance, _core_Axios_js__WEBPACK_IMPORTED_MODULE_0__["default"].prototype, context, {allOwnKeys: true}); + // Copy context to instance + _utils_js__WEBPACK_IMPORTED_MODULE_2__["default"].extend(instance, context, null, {allOwnKeys: true}); + // Factory for creating new instances + instance.create = function create(instanceConfig) { + return createInstance((0,_core_mergeConfig_js__WEBPACK_IMPORTED_MODULE_3__["default"])(defaultConfig, instanceConfig)); + }; + return instance; +} +// Create the default instance to be exported +const axios = createInstance(_defaults_index_js__WEBPACK_IMPORTED_MODULE_4__["default"]); -var Key = /*#__PURE__*/function () { - function Key(id, apiCall) { - (0,_babel_runtime_helpers_classCallCheck__WEBPACK_IMPORTED_MODULE_1__["default"])(this, Key); - this.id = id; - this.apiCall = apiCall; - } - (0,_babel_runtime_helpers_createClass__WEBPACK_IMPORTED_MODULE_2__["default"])(Key, [{ - key: "retrieve", - value: function () { - var _retrieve = (0,_babel_runtime_helpers_asyncToGenerator__WEBPACK_IMPORTED_MODULE_0__["default"])( /*#__PURE__*/_babel_runtime_regenerator__WEBPACK_IMPORTED_MODULE_3___default().mark(function _callee() { - return _babel_runtime_regenerator__WEBPACK_IMPORTED_MODULE_3___default().wrap(function _callee$(_context) { - while (1) switch (_context.prev = _context.next) { - case 0: - return _context.abrupt("return", this.apiCall.get(this.endpointPath())); - case 1: - case "end": - return _context.stop(); - } - }, _callee, this); - })); - function retrieve() { - return _retrieve.apply(this, arguments); - } - return retrieve; - }() - }, { - key: "delete", - value: function () { - var _delete2 = (0,_babel_runtime_helpers_asyncToGenerator__WEBPACK_IMPORTED_MODULE_0__["default"])( /*#__PURE__*/_babel_runtime_regenerator__WEBPACK_IMPORTED_MODULE_3___default().mark(function _callee2() { - return _babel_runtime_regenerator__WEBPACK_IMPORTED_MODULE_3___default().wrap(function _callee2$(_context2) { - while (1) switch (_context2.prev = _context2.next) { - case 0: - return _context2.abrupt("return", this.apiCall.delete(this.endpointPath())); - case 1: - case "end": - return _context2.stop(); - } - }, _callee2, this); - })); - function _delete() { - return _delete2.apply(this, arguments); - } - return _delete; - }() - }, { - key: "endpointPath", - value: function endpointPath() { - return "".concat(_Keys__WEBPACK_IMPORTED_MODULE_4__["default"].RESOURCEPATH, "/").concat(encodeURIComponent(this.id)); - } - }]); - return Key; -}(); +// Expose Axios class to allow class inheritance +axios.Axios = _core_Axios_js__WEBPACK_IMPORTED_MODULE_0__["default"]; + +// Expose Cancel & CancelToken +axios.CanceledError = _cancel_CanceledError_js__WEBPACK_IMPORTED_MODULE_5__["default"]; +axios.CancelToken = _cancel_CancelToken_js__WEBPACK_IMPORTED_MODULE_6__["default"]; +axios.isCancel = _cancel_isCancel_js__WEBPACK_IMPORTED_MODULE_7__["default"]; +axios.VERSION = _env_data_js__WEBPACK_IMPORTED_MODULE_8__.VERSION; +axios.toFormData = _helpers_toFormData_js__WEBPACK_IMPORTED_MODULE_9__["default"]; + +// Expose AxiosError class +axios.AxiosError = _core_AxiosError_js__WEBPACK_IMPORTED_MODULE_10__["default"]; + +// alias for CanceledError for backward compatibility +axios.Cancel = axios.CanceledError; + +// Expose all/spread +axios.all = function all(promises) { + return Promise.all(promises); +}; + +axios.spread = _helpers_spread_js__WEBPACK_IMPORTED_MODULE_11__["default"]; + +// Expose isAxiosError +axios.isAxiosError = _helpers_isAxiosError_js__WEBPACK_IMPORTED_MODULE_12__["default"]; + +// Expose mergeConfig +axios.mergeConfig = _core_mergeConfig_js__WEBPACK_IMPORTED_MODULE_3__["default"]; + +axios.AxiosHeaders = _core_AxiosHeaders_js__WEBPACK_IMPORTED_MODULE_13__["default"]; + +axios.formToJSON = thing => (0,_helpers_formDataToJSON_js__WEBPACK_IMPORTED_MODULE_14__["default"])(_utils_js__WEBPACK_IMPORTED_MODULE_2__["default"].isHTMLForm(thing) ? new FormData(thing) : thing); + +axios.getAdapter = _adapters_adapters_js__WEBPACK_IMPORTED_MODULE_15__["default"].getAdapter; + +axios.HttpStatusCode = _helpers_HttpStatusCode_js__WEBPACK_IMPORTED_MODULE_16__["default"]; + +axios.default = axios; + +// this module should only have a default export +/* harmony default export */ const __WEBPACK_DEFAULT_EXPORT__ = (axios); /***/ }), -/***/ "./src/Typesense/Keys.ts": -/*!*******************************!*\ - !*** ./src/Typesense/Keys.ts ***! - \*******************************/ -/***/ ((__unused_webpack_module, __webpack_exports__, __webpack_require__) => { +/***/ "./node_modules/.pnpm/axios@1.7.9/node_modules/axios/lib/cancel/CancelToken.js": +/*!*************************************************************************************!*\ + !*** ./node_modules/.pnpm/axios@1.7.9/node_modules/axios/lib/cancel/CancelToken.js ***! + \*************************************************************************************/ +/***/ ((__unused_webpack___webpack_module__, __webpack_exports__, __webpack_require__) => { "use strict"; __webpack_require__.r(__webpack_exports__); /* harmony export */ __webpack_require__.d(__webpack_exports__, { -/* harmony export */ "default": () => (/* binding */ Keys) +/* harmony export */ "default": () => (__WEBPACK_DEFAULT_EXPORT__) /* harmony export */ }); -/* harmony import */ var _babel_runtime_helpers_asyncToGenerator__WEBPACK_IMPORTED_MODULE_0__ = __webpack_require__(/*! @babel/runtime/helpers/asyncToGenerator */ "./node_modules/@babel/runtime/helpers/esm/asyncToGenerator.js"); -/* harmony import */ var _babel_runtime_helpers_classCallCheck__WEBPACK_IMPORTED_MODULE_1__ = __webpack_require__(/*! @babel/runtime/helpers/classCallCheck */ "./node_modules/@babel/runtime/helpers/esm/classCallCheck.js"); -/* harmony import */ var _babel_runtime_helpers_createClass__WEBPACK_IMPORTED_MODULE_2__ = __webpack_require__(/*! @babel/runtime/helpers/createClass */ "./node_modules/@babel/runtime/helpers/esm/createClass.js"); -/* harmony import */ var _babel_runtime_regenerator__WEBPACK_IMPORTED_MODULE_3__ = __webpack_require__(/*! @babel/runtime/regenerator */ "./node_modules/@babel/runtime/regenerator/index.js"); -/* harmony import */ var _babel_runtime_regenerator__WEBPACK_IMPORTED_MODULE_3___default = /*#__PURE__*/__webpack_require__.n(_babel_runtime_regenerator__WEBPACK_IMPORTED_MODULE_3__); -/* harmony import */ var crypto__WEBPACK_IMPORTED_MODULE_4__ = __webpack_require__(/*! crypto */ "?4bf0"); -/* harmony import */ var crypto__WEBPACK_IMPORTED_MODULE_4___default = /*#__PURE__*/__webpack_require__.n(crypto__WEBPACK_IMPORTED_MODULE_4__); -/* harmony import */ var _Utils__WEBPACK_IMPORTED_MODULE_5__ = __webpack_require__(/*! ./Utils */ "./src/Typesense/Utils.ts"); +/* harmony import */ var _CanceledError_js__WEBPACK_IMPORTED_MODULE_0__ = __webpack_require__(/*! ./CanceledError.js */ "./node_modules/.pnpm/axios@1.7.9/node_modules/axios/lib/cancel/CanceledError.js"); +/** + * A `CancelToken` is an object that can be used to request cancellation of an operation. + * + * @param {Function} executor The executor function. + * + * @returns {CancelToken} + */ +class CancelToken { + constructor(executor) { + if (typeof executor !== 'function') { + throw new TypeError('executor must be a function.'); + } + let resolvePromise; -var RESOURCEPATH = "/keys"; -var Keys = /*#__PURE__*/function () { - function Keys(apiCall) { - (0,_babel_runtime_helpers_classCallCheck__WEBPACK_IMPORTED_MODULE_1__["default"])(this, Keys); - this.apiCall = apiCall; - this.apiCall = apiCall; - } - (0,_babel_runtime_helpers_createClass__WEBPACK_IMPORTED_MODULE_2__["default"])(Keys, [{ - key: "create", - value: function () { - var _create = (0,_babel_runtime_helpers_asyncToGenerator__WEBPACK_IMPORTED_MODULE_0__["default"])( /*#__PURE__*/_babel_runtime_regenerator__WEBPACK_IMPORTED_MODULE_3___default().mark(function _callee(params) { - return _babel_runtime_regenerator__WEBPACK_IMPORTED_MODULE_3___default().wrap(function _callee$(_context) { - while (1) switch (_context.prev = _context.next) { - case 0: - return _context.abrupt("return", this.apiCall.post(Keys.RESOURCEPATH, params)); - case 1: - case "end": - return _context.stop(); - } - }, _callee, this); - })); - function create(_x) { - return _create.apply(this, arguments); - } - return create; - }() - }, { - key: "retrieve", - value: function () { - var _retrieve = (0,_babel_runtime_helpers_asyncToGenerator__WEBPACK_IMPORTED_MODULE_0__["default"])( /*#__PURE__*/_babel_runtime_regenerator__WEBPACK_IMPORTED_MODULE_3___default().mark(function _callee2() { - return _babel_runtime_regenerator__WEBPACK_IMPORTED_MODULE_3___default().wrap(function _callee2$(_context2) { - while (1) switch (_context2.prev = _context2.next) { - case 0: - return _context2.abrupt("return", this.apiCall.get(RESOURCEPATH)); - case 1: - case "end": - return _context2.stop(); - } - }, _callee2, this); - })); - function retrieve() { - return _retrieve.apply(this, arguments); - } - return retrieve; - }() - }, { - key: "generateScopedSearchKey", - value: function generateScopedSearchKey(searchKey, parameters) { - // Note: only a key generated with the `documents:search` action will be - // accepted by the server, when usined with the search endpoint. - var normalizedParams = (0,_Utils__WEBPACK_IMPORTED_MODULE_5__.normalizeArrayableParams)(parameters); - var paramsJSON = JSON.stringify(normalizedParams); - var digest = Buffer.from((0,crypto__WEBPACK_IMPORTED_MODULE_4__.createHmac)("sha256", searchKey).update(paramsJSON).digest("base64")); - var keyPrefix = searchKey.substr(0, 4); - var rawScopedKey = "".concat(digest).concat(keyPrefix).concat(paramsJSON); - return Buffer.from(rawScopedKey).toString("base64"); - } - }], [{ - key: "RESOURCEPATH", - get: function get() { - return RESOURCEPATH; - } - }]); - return Keys; -}(); + this.promise = new Promise(function promiseExecutor(resolve) { + resolvePromise = resolve; + }); + + const token = this; + // eslint-disable-next-line func-names + this.promise.then(cancel => { + if (!token._listeners) return; -/***/ }), + let i = token._listeners.length; -/***/ "./src/Typesense/Metrics.ts": -/*!**********************************!*\ - !*** ./src/Typesense/Metrics.ts ***! - \**********************************/ -/***/ ((__unused_webpack_module, __webpack_exports__, __webpack_require__) => { + while (i-- > 0) { + token._listeners[i](cancel); + } + token._listeners = null; + }); -"use strict"; -__webpack_require__.r(__webpack_exports__); -/* harmony export */ __webpack_require__.d(__webpack_exports__, { -/* harmony export */ "default": () => (/* binding */ Metrics) -/* harmony export */ }); -/* harmony import */ var _babel_runtime_helpers_asyncToGenerator__WEBPACK_IMPORTED_MODULE_0__ = __webpack_require__(/*! @babel/runtime/helpers/asyncToGenerator */ "./node_modules/@babel/runtime/helpers/esm/asyncToGenerator.js"); -/* harmony import */ var _babel_runtime_helpers_classCallCheck__WEBPACK_IMPORTED_MODULE_1__ = __webpack_require__(/*! @babel/runtime/helpers/classCallCheck */ "./node_modules/@babel/runtime/helpers/esm/classCallCheck.js"); -/* harmony import */ var _babel_runtime_helpers_createClass__WEBPACK_IMPORTED_MODULE_2__ = __webpack_require__(/*! @babel/runtime/helpers/createClass */ "./node_modules/@babel/runtime/helpers/esm/createClass.js"); -/* harmony import */ var _babel_runtime_regenerator__WEBPACK_IMPORTED_MODULE_3__ = __webpack_require__(/*! @babel/runtime/regenerator */ "./node_modules/@babel/runtime/regenerator/index.js"); -/* harmony import */ var _babel_runtime_regenerator__WEBPACK_IMPORTED_MODULE_3___default = /*#__PURE__*/__webpack_require__.n(_babel_runtime_regenerator__WEBPACK_IMPORTED_MODULE_3__); + // eslint-disable-next-line func-names + this.promise.then = onfulfilled => { + let _resolve; + // eslint-disable-next-line func-names + const promise = new Promise(resolve => { + token.subscribe(resolve); + _resolve = resolve; + }).then(onfulfilled); + promise.cancel = function reject() { + token.unsubscribe(_resolve); + }; + return promise; + }; + executor(function cancel(message, config, request) { + if (token.reason) { + // Cancellation has already been requested + return; + } -var RESOURCEPATH = "/metrics.json"; -var Metrics = /*#__PURE__*/function () { - function Metrics(apiCall) { - (0,_babel_runtime_helpers_classCallCheck__WEBPACK_IMPORTED_MODULE_1__["default"])(this, Metrics); - this.apiCall = apiCall; + token.reason = new _CanceledError_js__WEBPACK_IMPORTED_MODULE_0__["default"](message, config, request); + resolvePromise(token.reason); + }); } - (0,_babel_runtime_helpers_createClass__WEBPACK_IMPORTED_MODULE_2__["default"])(Metrics, [{ - key: "retrieve", - value: function () { - var _retrieve = (0,_babel_runtime_helpers_asyncToGenerator__WEBPACK_IMPORTED_MODULE_0__["default"])( /*#__PURE__*/_babel_runtime_regenerator__WEBPACK_IMPORTED_MODULE_3___default().mark(function _callee() { - return _babel_runtime_regenerator__WEBPACK_IMPORTED_MODULE_3___default().wrap(function _callee$(_context) { - while (1) switch (_context.prev = _context.next) { - case 0: - return _context.abrupt("return", this.apiCall.get(RESOURCEPATH)); - case 1: - case "end": - return _context.stop(); - } - }, _callee, this); - })); - function retrieve() { - return _retrieve.apply(this, arguments); - } - return retrieve; - }() - }]); - return Metrics; -}(); + /** + * Throws a `CanceledError` if cancellation has been requested. + */ + throwIfRequested() { + if (this.reason) { + throw this.reason; + } + } -/***/ }), + /** + * Subscribe to the cancel signal + */ -/***/ "./src/Typesense/MultiSearch.ts": -/*!**************************************!*\ - !*** ./src/Typesense/MultiSearch.ts ***! - \**************************************/ -/***/ ((__unused_webpack_module, __webpack_exports__, __webpack_require__) => { + subscribe(listener) { + if (this.reason) { + listener(this.reason); + return; + } -"use strict"; -__webpack_require__.r(__webpack_exports__); -/* harmony export */ __webpack_require__.d(__webpack_exports__, { -/* harmony export */ "default": () => (/* binding */ MultiSearch) -/* harmony export */ }); -/* harmony import */ var _babel_runtime_helpers_defineProperty__WEBPACK_IMPORTED_MODULE_0__ = __webpack_require__(/*! @babel/runtime/helpers/defineProperty */ "./node_modules/@babel/runtime/helpers/esm/defineProperty.js"); -/* harmony import */ var _babel_runtime_helpers_asyncToGenerator__WEBPACK_IMPORTED_MODULE_1__ = __webpack_require__(/*! @babel/runtime/helpers/asyncToGenerator */ "./node_modules/@babel/runtime/helpers/esm/asyncToGenerator.js"); -/* harmony import */ var _babel_runtime_helpers_classCallCheck__WEBPACK_IMPORTED_MODULE_2__ = __webpack_require__(/*! @babel/runtime/helpers/classCallCheck */ "./node_modules/@babel/runtime/helpers/esm/classCallCheck.js"); -/* harmony import */ var _babel_runtime_helpers_createClass__WEBPACK_IMPORTED_MODULE_3__ = __webpack_require__(/*! @babel/runtime/helpers/createClass */ "./node_modules/@babel/runtime/helpers/esm/createClass.js"); -/* harmony import */ var _babel_runtime_regenerator__WEBPACK_IMPORTED_MODULE_4__ = __webpack_require__(/*! @babel/runtime/regenerator */ "./node_modules/@babel/runtime/regenerator/index.js"); -/* harmony import */ var _babel_runtime_regenerator__WEBPACK_IMPORTED_MODULE_4___default = /*#__PURE__*/__webpack_require__.n(_babel_runtime_regenerator__WEBPACK_IMPORTED_MODULE_4__); -/* harmony import */ var _RequestWithCache__WEBPACK_IMPORTED_MODULE_5__ = __webpack_require__(/*! ./RequestWithCache */ "./src/Typesense/RequestWithCache.ts"); -/* harmony import */ var _Utils__WEBPACK_IMPORTED_MODULE_6__ = __webpack_require__(/*! ./Utils */ "./src/Typesense/Utils.ts"); + if (this._listeners) { + this._listeners.push(listener); + } else { + this._listeners = [listener]; + } + } + /** + * Unsubscribe from the cancel signal + */ + unsubscribe(listener) { + if (!this._listeners) { + return; + } + const index = this._listeners.indexOf(listener); + if (index !== -1) { + this._listeners.splice(index, 1); + } + } + toAbortSignal() { + const controller = new AbortController(); + const abort = (err) => { + controller.abort(err); + }; -function ownKeys(e, r) { var t = Object.keys(e); if (Object.getOwnPropertySymbols) { var o = Object.getOwnPropertySymbols(e); r && (o = o.filter(function (r) { return Object.getOwnPropertyDescriptor(e, r).enumerable; })), t.push.apply(t, o); } return t; } -function _objectSpread(e) { for (var r = 1; r < arguments.length; r++) { var t = null != arguments[r] ? arguments[r] : {}; r % 2 ? ownKeys(Object(t), !0).forEach(function (r) { (0,_babel_runtime_helpers_defineProperty__WEBPACK_IMPORTED_MODULE_0__["default"])(e, r, t[r]); }) : Object.getOwnPropertyDescriptors ? Object.defineProperties(e, Object.getOwnPropertyDescriptors(t)) : ownKeys(Object(t)).forEach(function (r) { Object.defineProperty(e, r, Object.getOwnPropertyDescriptor(t, r)); }); } return e; } + this.subscribe(abort); + controller.signal.unsubscribe = () => this.unsubscribe(abort); -var RESOURCEPATH = "/multi_search"; -var MultiSearch = /*#__PURE__*/function () { - function MultiSearch(apiCall, configuration) { - var useTextContentType = arguments.length > 2 && arguments[2] !== undefined ? arguments[2] : false; - (0,_babel_runtime_helpers_classCallCheck__WEBPACK_IMPORTED_MODULE_2__["default"])(this, MultiSearch); - this.apiCall = apiCall; - this.configuration = configuration; - this.useTextContentType = useTextContentType; - this.requestWithCache = new _RequestWithCache__WEBPACK_IMPORTED_MODULE_5__["default"](); + return controller.signal; } - (0,_babel_runtime_helpers_createClass__WEBPACK_IMPORTED_MODULE_3__["default"])(MultiSearch, [{ - key: "clearCache", - value: function clearCache() { - this.requestWithCache.clearCache(); - } - }, { - key: "perform", - value: function () { - var _perform = (0,_babel_runtime_helpers_asyncToGenerator__WEBPACK_IMPORTED_MODULE_1__["default"])( /*#__PURE__*/_babel_runtime_regenerator__WEBPACK_IMPORTED_MODULE_4___default().mark(function _callee(searchRequests) { - var commonParams, - _ref, - _ref$cacheSearchResul, - cacheSearchResultsForSeconds, - additionalHeaders, - additionalQueryParams, - queryParams, - normalizedSearchRequests, - normalizedQueryParams, - _args = arguments; - return _babel_runtime_regenerator__WEBPACK_IMPORTED_MODULE_4___default().wrap(function _callee$(_context) { - while (1) switch (_context.prev = _context.next) { - case 0: - commonParams = _args.length > 1 && _args[1] !== undefined ? _args[1] : {}; - _ref = _args.length > 2 && _args[2] !== undefined ? _args[2] : {}, _ref$cacheSearchResul = _ref.cacheSearchResultsForSeconds, cacheSearchResultsForSeconds = _ref$cacheSearchResul === void 0 ? this.configuration.cacheSearchResultsForSeconds : _ref$cacheSearchResul; - additionalHeaders = {}; - if (this.useTextContentType) { - additionalHeaders["content-type"] = "text/plain"; - } - additionalQueryParams = {}; - if (this.configuration.useServerSideSearchCache === true) { - additionalQueryParams["use_cache"] = true; - } - queryParams = _objectSpread(_objectSpread({}, commonParams), additionalQueryParams); - normalizedSearchRequests = _objectSpread(_objectSpread({}, searchRequests), {}, { - searches: searchRequests.searches.map(_Utils__WEBPACK_IMPORTED_MODULE_6__.normalizeArrayableParams) - }); - normalizedQueryParams = (0,_Utils__WEBPACK_IMPORTED_MODULE_6__.normalizeArrayableParams)(queryParams); - return _context.abrupt("return", this.requestWithCache.perform(this.apiCall, this.apiCall.post, [RESOURCEPATH, normalizedSearchRequests, normalizedQueryParams, additionalHeaders], { - cacheResponseForSeconds: cacheSearchResultsForSeconds - })); - case 10: - case "end": - return _context.stop(); - } - }, _callee, this); - })); - function perform(_x) { - return _perform.apply(this, arguments); - } - return perform; - }() - }]); - return MultiSearch; -}(); + + /** + * Returns an object that contains a new `CancelToken` and a function that, when called, + * cancels the `CancelToken`. + */ + static source() { + let cancel; + const token = new CancelToken(function executor(c) { + cancel = c; + }); + return { + token, + cancel + }; + } +} + +/* harmony default export */ const __WEBPACK_DEFAULT_EXPORT__ = (CancelToken); /***/ }), -/***/ "./src/Typesense/Operations.ts": -/*!*************************************!*\ - !*** ./src/Typesense/Operations.ts ***! - \*************************************/ -/***/ ((__unused_webpack_module, __webpack_exports__, __webpack_require__) => { +/***/ "./node_modules/.pnpm/axios@1.7.9/node_modules/axios/lib/cancel/CanceledError.js": +/*!***************************************************************************************!*\ + !*** ./node_modules/.pnpm/axios@1.7.9/node_modules/axios/lib/cancel/CanceledError.js ***! + \***************************************************************************************/ +/***/ ((__unused_webpack___webpack_module__, __webpack_exports__, __webpack_require__) => { "use strict"; __webpack_require__.r(__webpack_exports__); /* harmony export */ __webpack_require__.d(__webpack_exports__, { -/* harmony export */ "default": () => (/* binding */ Operations) +/* harmony export */ "default": () => (__WEBPACK_DEFAULT_EXPORT__) /* harmony export */ }); -/* harmony import */ var _babel_runtime_helpers_asyncToGenerator__WEBPACK_IMPORTED_MODULE_0__ = __webpack_require__(/*! @babel/runtime/helpers/asyncToGenerator */ "./node_modules/@babel/runtime/helpers/esm/asyncToGenerator.js"); -/* harmony import */ var _babel_runtime_helpers_classCallCheck__WEBPACK_IMPORTED_MODULE_1__ = __webpack_require__(/*! @babel/runtime/helpers/classCallCheck */ "./node_modules/@babel/runtime/helpers/esm/classCallCheck.js"); -/* harmony import */ var _babel_runtime_helpers_createClass__WEBPACK_IMPORTED_MODULE_2__ = __webpack_require__(/*! @babel/runtime/helpers/createClass */ "./node_modules/@babel/runtime/helpers/esm/createClass.js"); -/* harmony import */ var _babel_runtime_regenerator__WEBPACK_IMPORTED_MODULE_3__ = __webpack_require__(/*! @babel/runtime/regenerator */ "./node_modules/@babel/runtime/regenerator/index.js"); -/* harmony import */ var _babel_runtime_regenerator__WEBPACK_IMPORTED_MODULE_3___default = /*#__PURE__*/__webpack_require__.n(_babel_runtime_regenerator__WEBPACK_IMPORTED_MODULE_3__); +/* harmony import */ var _core_AxiosError_js__WEBPACK_IMPORTED_MODULE_0__ = __webpack_require__(/*! ../core/AxiosError.js */ "./node_modules/.pnpm/axios@1.7.9/node_modules/axios/lib/core/AxiosError.js"); +/* harmony import */ var _utils_js__WEBPACK_IMPORTED_MODULE_1__ = __webpack_require__(/*! ../utils.js */ "./node_modules/.pnpm/axios@1.7.9/node_modules/axios/lib/utils.js"); -var RESOURCEPATH = "/operations"; -var Operations = /*#__PURE__*/function () { - function Operations(apiCall) { - (0,_babel_runtime_helpers_classCallCheck__WEBPACK_IMPORTED_MODULE_1__["default"])(this, Operations); - this.apiCall = apiCall; - } - (0,_babel_runtime_helpers_createClass__WEBPACK_IMPORTED_MODULE_2__["default"])(Operations, [{ - key: "perform", - value: function () { - var _perform = (0,_babel_runtime_helpers_asyncToGenerator__WEBPACK_IMPORTED_MODULE_0__["default"])( /*#__PURE__*/_babel_runtime_regenerator__WEBPACK_IMPORTED_MODULE_3___default().mark(function _callee(operationName) { - var queryParameters, - _args = arguments; - return _babel_runtime_regenerator__WEBPACK_IMPORTED_MODULE_3___default().wrap(function _callee$(_context) { - while (1) switch (_context.prev = _context.next) { - case 0: - queryParameters = _args.length > 1 && _args[1] !== undefined ? _args[1] : {}; - return _context.abrupt("return", this.apiCall.post("".concat(RESOURCEPATH, "/").concat(operationName), {}, queryParameters)); - case 2: - case "end": - return _context.stop(); - } - }, _callee, this); - })); - function perform(_x) { - return _perform.apply(this, arguments); - } - return perform; - }() - }]); - return Operations; -}(); + +/** + * A `CanceledError` is an object that is thrown when an operation is canceled. + * + * @param {string=} message The message. + * @param {Object=} config The config. + * @param {Object=} request The request. + * + * @returns {CanceledError} The created error. + */ +function CanceledError(message, config, request) { + // eslint-disable-next-line no-eq-null,eqeqeq + _core_AxiosError_js__WEBPACK_IMPORTED_MODULE_0__["default"].call(this, message == null ? 'canceled' : message, _core_AxiosError_js__WEBPACK_IMPORTED_MODULE_0__["default"].ERR_CANCELED, config, request); + this.name = 'CanceledError'; +} + +_utils_js__WEBPACK_IMPORTED_MODULE_1__["default"].inherits(CanceledError, _core_AxiosError_js__WEBPACK_IMPORTED_MODULE_0__["default"], { + __CANCEL__: true +}); + +/* harmony default export */ const __WEBPACK_DEFAULT_EXPORT__ = (CanceledError); + + +/***/ }), + +/***/ "./node_modules/.pnpm/axios@1.7.9/node_modules/axios/lib/cancel/isCancel.js": +/*!**********************************************************************************!*\ + !*** ./node_modules/.pnpm/axios@1.7.9/node_modules/axios/lib/cancel/isCancel.js ***! + \**********************************************************************************/ +/***/ ((__unused_webpack___webpack_module__, __webpack_exports__, __webpack_require__) => { + +"use strict"; +__webpack_require__.r(__webpack_exports__); +/* harmony export */ __webpack_require__.d(__webpack_exports__, { +/* harmony export */ "default": () => (/* binding */ isCancel) +/* harmony export */ }); + + +function isCancel(value) { + return !!(value && value.__CANCEL__); +} /***/ }), -/***/ "./src/Typesense/Override.ts": -/*!***********************************!*\ - !*** ./src/Typesense/Override.ts ***! - \***********************************/ -/***/ ((__unused_webpack_module, __webpack_exports__, __webpack_require__) => { +/***/ "./node_modules/.pnpm/axios@1.7.9/node_modules/axios/lib/core/Axios.js": +/*!*****************************************************************************!*\ + !*** ./node_modules/.pnpm/axios@1.7.9/node_modules/axios/lib/core/Axios.js ***! + \*****************************************************************************/ +/***/ ((__unused_webpack___webpack_module__, __webpack_exports__, __webpack_require__) => { "use strict"; __webpack_require__.r(__webpack_exports__); /* harmony export */ __webpack_require__.d(__webpack_exports__, { -/* harmony export */ "default": () => (/* binding */ Override) +/* harmony export */ "default": () => (__WEBPACK_DEFAULT_EXPORT__) /* harmony export */ }); -/* harmony import */ var _babel_runtime_helpers_asyncToGenerator__WEBPACK_IMPORTED_MODULE_0__ = __webpack_require__(/*! @babel/runtime/helpers/asyncToGenerator */ "./node_modules/@babel/runtime/helpers/esm/asyncToGenerator.js"); -/* harmony import */ var _babel_runtime_helpers_classCallCheck__WEBPACK_IMPORTED_MODULE_1__ = __webpack_require__(/*! @babel/runtime/helpers/classCallCheck */ "./node_modules/@babel/runtime/helpers/esm/classCallCheck.js"); -/* harmony import */ var _babel_runtime_helpers_createClass__WEBPACK_IMPORTED_MODULE_2__ = __webpack_require__(/*! @babel/runtime/helpers/createClass */ "./node_modules/@babel/runtime/helpers/esm/createClass.js"); -/* harmony import */ var _babel_runtime_regenerator__WEBPACK_IMPORTED_MODULE_3__ = __webpack_require__(/*! @babel/runtime/regenerator */ "./node_modules/@babel/runtime/regenerator/index.js"); -/* harmony import */ var _babel_runtime_regenerator__WEBPACK_IMPORTED_MODULE_3___default = /*#__PURE__*/__webpack_require__.n(_babel_runtime_regenerator__WEBPACK_IMPORTED_MODULE_3__); -/* harmony import */ var _Collections__WEBPACK_IMPORTED_MODULE_4__ = __webpack_require__(/*! ./Collections */ "./src/Typesense/Collections.ts"); -/* harmony import */ var _Overrides__WEBPACK_IMPORTED_MODULE_5__ = __webpack_require__(/*! ./Overrides */ "./src/Typesense/Overrides.ts"); +/* harmony import */ var _utils_js__WEBPACK_IMPORTED_MODULE_3__ = __webpack_require__(/*! ./../utils.js */ "./node_modules/.pnpm/axios@1.7.9/node_modules/axios/lib/utils.js"); +/* harmony import */ var _helpers_buildURL_js__WEBPACK_IMPORTED_MODULE_7__ = __webpack_require__(/*! ../helpers/buildURL.js */ "./node_modules/.pnpm/axios@1.7.9/node_modules/axios/lib/helpers/buildURL.js"); +/* harmony import */ var _InterceptorManager_js__WEBPACK_IMPORTED_MODULE_1__ = __webpack_require__(/*! ./InterceptorManager.js */ "./node_modules/.pnpm/axios@1.7.9/node_modules/axios/lib/core/InterceptorManager.js"); +/* harmony import */ var _dispatchRequest_js__WEBPACK_IMPORTED_MODULE_5__ = __webpack_require__(/*! ./dispatchRequest.js */ "./node_modules/.pnpm/axios@1.7.9/node_modules/axios/lib/core/dispatchRequest.js"); +/* harmony import */ var _mergeConfig_js__WEBPACK_IMPORTED_MODULE_2__ = __webpack_require__(/*! ./mergeConfig.js */ "./node_modules/.pnpm/axios@1.7.9/node_modules/axios/lib/core/mergeConfig.js"); +/* harmony import */ var _buildFullPath_js__WEBPACK_IMPORTED_MODULE_6__ = __webpack_require__(/*! ./buildFullPath.js */ "./node_modules/.pnpm/axios@1.7.9/node_modules/axios/lib/core/buildFullPath.js"); +/* harmony import */ var _helpers_validator_js__WEBPACK_IMPORTED_MODULE_0__ = __webpack_require__(/*! ../helpers/validator.js */ "./node_modules/.pnpm/axios@1.7.9/node_modules/axios/lib/helpers/validator.js"); +/* harmony import */ var _AxiosHeaders_js__WEBPACK_IMPORTED_MODULE_4__ = __webpack_require__(/*! ./AxiosHeaders.js */ "./node_modules/.pnpm/axios@1.7.9/node_modules/axios/lib/core/AxiosHeaders.js"); -var Override = /*#__PURE__*/function () { - function Override(collectionName, overrideId, apiCall) { - (0,_babel_runtime_helpers_classCallCheck__WEBPACK_IMPORTED_MODULE_1__["default"])(this, Override); - this.collectionName = collectionName; - this.overrideId = overrideId; - this.apiCall = apiCall; + + + + + +const validators = _helpers_validator_js__WEBPACK_IMPORTED_MODULE_0__["default"].validators; + +/** + * Create a new instance of Axios + * + * @param {Object} instanceConfig The default config for the instance + * + * @return {Axios} A new instance of Axios + */ +class Axios { + constructor(instanceConfig) { + this.defaults = instanceConfig; + this.interceptors = { + request: new _InterceptorManager_js__WEBPACK_IMPORTED_MODULE_1__["default"](), + response: new _InterceptorManager_js__WEBPACK_IMPORTED_MODULE_1__["default"]() + }; } - (0,_babel_runtime_helpers_createClass__WEBPACK_IMPORTED_MODULE_2__["default"])(Override, [{ - key: "retrieve", - value: function () { - var _retrieve = (0,_babel_runtime_helpers_asyncToGenerator__WEBPACK_IMPORTED_MODULE_0__["default"])( /*#__PURE__*/_babel_runtime_regenerator__WEBPACK_IMPORTED_MODULE_3___default().mark(function _callee() { - return _babel_runtime_regenerator__WEBPACK_IMPORTED_MODULE_3___default().wrap(function _callee$(_context) { - while (1) switch (_context.prev = _context.next) { - case 0: - return _context.abrupt("return", this.apiCall.get(this.endpointPath())); - case 1: - case "end": - return _context.stop(); - } - }, _callee, this); - })); - function retrieve() { - return _retrieve.apply(this, arguments); - } - return retrieve; - }() - }, { - key: "delete", - value: function () { - var _delete2 = (0,_babel_runtime_helpers_asyncToGenerator__WEBPACK_IMPORTED_MODULE_0__["default"])( /*#__PURE__*/_babel_runtime_regenerator__WEBPACK_IMPORTED_MODULE_3___default().mark(function _callee2() { - return _babel_runtime_regenerator__WEBPACK_IMPORTED_MODULE_3___default().wrap(function _callee2$(_context2) { - while (1) switch (_context2.prev = _context2.next) { - case 0: - return _context2.abrupt("return", this.apiCall.delete(this.endpointPath())); - case 1: - case "end": - return _context2.stop(); + + /** + * Dispatch a request + * + * @param {String|Object} configOrUrl The config specific for this request (merged with this.defaults) + * @param {?Object} config + * + * @returns {Promise} The Promise to be fulfilled + */ + async request(configOrUrl, config) { + try { + return await this._request(configOrUrl, config); + } catch (err) { + if (err instanceof Error) { + let dummy = {}; + + Error.captureStackTrace ? Error.captureStackTrace(dummy) : (dummy = new Error()); + + // slice off the Error: ... line + const stack = dummy.stack ? dummy.stack.replace(/^.+\n/, '') : ''; + try { + if (!err.stack) { + err.stack = stack; + // match without the 2 top stack lines + } else if (stack && !String(err.stack).endsWith(stack.replace(/^.+\n.+\n/, ''))) { + err.stack += '\n' + stack } - }, _callee2, this); - })); - function _delete() { - return _delete2.apply(this, arguments); + } catch (e) { + // ignore the case where "stack" is an un-writable property + } } - return _delete; - }() - }, { - key: "endpointPath", - value: function endpointPath() { - return "".concat(_Collections__WEBPACK_IMPORTED_MODULE_4__["default"].RESOURCEPATH, "/").concat(encodeURIComponent(this.collectionName)).concat(_Overrides__WEBPACK_IMPORTED_MODULE_5__["default"].RESOURCEPATH, "/").concat(encodeURIComponent(this.overrideId)); + + throw err; } - }]); - return Override; -}(); + } + _request(configOrUrl, config) { + /*eslint no-param-reassign:0*/ + // Allow for axios('example/url'[, config]) a la fetch API + if (typeof configOrUrl === 'string') { + config = config || {}; + config.url = configOrUrl; + } else { + config = configOrUrl || {}; + } -/***/ }), + config = (0,_mergeConfig_js__WEBPACK_IMPORTED_MODULE_2__["default"])(this.defaults, config); -/***/ "./src/Typesense/Overrides.ts": -/*!************************************!*\ - !*** ./src/Typesense/Overrides.ts ***! - \************************************/ -/***/ ((__unused_webpack_module, __webpack_exports__, __webpack_require__) => { + const {transitional, paramsSerializer, headers} = config; -"use strict"; -__webpack_require__.r(__webpack_exports__); -/* harmony export */ __webpack_require__.d(__webpack_exports__, { -/* harmony export */ "default": () => (/* binding */ Overrides) -/* harmony export */ }); -/* harmony import */ var _babel_runtime_helpers_asyncToGenerator__WEBPACK_IMPORTED_MODULE_0__ = __webpack_require__(/*! @babel/runtime/helpers/asyncToGenerator */ "./node_modules/@babel/runtime/helpers/esm/asyncToGenerator.js"); -/* harmony import */ var _babel_runtime_helpers_classCallCheck__WEBPACK_IMPORTED_MODULE_1__ = __webpack_require__(/*! @babel/runtime/helpers/classCallCheck */ "./node_modules/@babel/runtime/helpers/esm/classCallCheck.js"); -/* harmony import */ var _babel_runtime_helpers_createClass__WEBPACK_IMPORTED_MODULE_2__ = __webpack_require__(/*! @babel/runtime/helpers/createClass */ "./node_modules/@babel/runtime/helpers/esm/createClass.js"); -/* harmony import */ var _babel_runtime_regenerator__WEBPACK_IMPORTED_MODULE_3__ = __webpack_require__(/*! @babel/runtime/regenerator */ "./node_modules/@babel/runtime/regenerator/index.js"); -/* harmony import */ var _babel_runtime_regenerator__WEBPACK_IMPORTED_MODULE_3___default = /*#__PURE__*/__webpack_require__.n(_babel_runtime_regenerator__WEBPACK_IMPORTED_MODULE_3__); -/* harmony import */ var _Collections__WEBPACK_IMPORTED_MODULE_4__ = __webpack_require__(/*! ./Collections */ "./src/Typesense/Collections.ts"); + if (transitional !== undefined) { + _helpers_validator_js__WEBPACK_IMPORTED_MODULE_0__["default"].assertOptions(transitional, { + silentJSONParsing: validators.transitional(validators.boolean), + forcedJSONParsing: validators.transitional(validators.boolean), + clarifyTimeoutError: validators.transitional(validators.boolean) + }, false); + } + if (paramsSerializer != null) { + if (_utils_js__WEBPACK_IMPORTED_MODULE_3__["default"].isFunction(paramsSerializer)) { + config.paramsSerializer = { + serialize: paramsSerializer + } + } else { + _helpers_validator_js__WEBPACK_IMPORTED_MODULE_0__["default"].assertOptions(paramsSerializer, { + encode: validators.function, + serialize: validators.function + }, true); + } + } + _helpers_validator_js__WEBPACK_IMPORTED_MODULE_0__["default"].assertOptions(config, { + baseUrl: validators.spelling('baseURL'), + withXsrfToken: validators.spelling('withXSRFToken') + }, true); + // Set config.method + config.method = (config.method || this.defaults.method || 'get').toLowerCase(); + // Flatten headers + let contextHeaders = headers && _utils_js__WEBPACK_IMPORTED_MODULE_3__["default"].merge( + headers.common, + headers[config.method] + ); -var RESOURCEPATH = "/overrides"; -var Overrides = /*#__PURE__*/function () { - function Overrides(collectionName, apiCall) { - (0,_babel_runtime_helpers_classCallCheck__WEBPACK_IMPORTED_MODULE_1__["default"])(this, Overrides); - this.collectionName = collectionName; - this.apiCall = apiCall; - } - (0,_babel_runtime_helpers_createClass__WEBPACK_IMPORTED_MODULE_2__["default"])(Overrides, [{ - key: "upsert", - value: function () { - var _upsert = (0,_babel_runtime_helpers_asyncToGenerator__WEBPACK_IMPORTED_MODULE_0__["default"])( /*#__PURE__*/_babel_runtime_regenerator__WEBPACK_IMPORTED_MODULE_3___default().mark(function _callee(overrideId, params) { - return _babel_runtime_regenerator__WEBPACK_IMPORTED_MODULE_3___default().wrap(function _callee$(_context) { - while (1) switch (_context.prev = _context.next) { - case 0: - return _context.abrupt("return", this.apiCall.put(this.endpointPath(overrideId), params)); - case 1: - case "end": - return _context.stop(); - } - }, _callee, this); - })); - function upsert(_x, _x2) { - return _upsert.apply(this, arguments); + headers && _utils_js__WEBPACK_IMPORTED_MODULE_3__["default"].forEach( + ['delete', 'get', 'head', 'post', 'put', 'patch', 'common'], + (method) => { + delete headers[method]; } - return upsert; - }() - }, { - key: "retrieve", - value: function () { - var _retrieve = (0,_babel_runtime_helpers_asyncToGenerator__WEBPACK_IMPORTED_MODULE_0__["default"])( /*#__PURE__*/_babel_runtime_regenerator__WEBPACK_IMPORTED_MODULE_3___default().mark(function _callee2() { - return _babel_runtime_regenerator__WEBPACK_IMPORTED_MODULE_3___default().wrap(function _callee2$(_context2) { - while (1) switch (_context2.prev = _context2.next) { - case 0: - return _context2.abrupt("return", this.apiCall.get(this.endpointPath())); - case 1: - case "end": - return _context2.stop(); - } - }, _callee2, this); - })); - function retrieve() { - return _retrieve.apply(this, arguments); + ); + + config.headers = _AxiosHeaders_js__WEBPACK_IMPORTED_MODULE_4__["default"].concat(contextHeaders, headers); + + // filter out skipped interceptors + const requestInterceptorChain = []; + let synchronousRequestInterceptors = true; + this.interceptors.request.forEach(function unshiftRequestInterceptors(interceptor) { + if (typeof interceptor.runWhen === 'function' && interceptor.runWhen(config) === false) { + return; } - return retrieve; - }() - }, { - key: "endpointPath", - value: function endpointPath(operation) { - return "".concat(_Collections__WEBPACK_IMPORTED_MODULE_4__["default"].RESOURCEPATH, "/").concat(this.collectionName).concat(Overrides.RESOURCEPATH).concat(operation === undefined ? "" : "/" + encodeURIComponent(operation)); - } - }], [{ - key: "RESOURCEPATH", - get: function get() { - return RESOURCEPATH; + + synchronousRequestInterceptors = synchronousRequestInterceptors && interceptor.synchronous; + + requestInterceptorChain.unshift(interceptor.fulfilled, interceptor.rejected); + }); + + const responseInterceptorChain = []; + this.interceptors.response.forEach(function pushResponseInterceptors(interceptor) { + responseInterceptorChain.push(interceptor.fulfilled, interceptor.rejected); + }); + + let promise; + let i = 0; + let len; + + if (!synchronousRequestInterceptors) { + const chain = [_dispatchRequest_js__WEBPACK_IMPORTED_MODULE_5__["default"].bind(this), undefined]; + chain.unshift.apply(chain, requestInterceptorChain); + chain.push.apply(chain, responseInterceptorChain); + len = chain.length; + + promise = Promise.resolve(config); + + while (i < len) { + promise = promise.then(chain[i++], chain[i++]); + } + + return promise; } - }]); - return Overrides; -}(); + len = requestInterceptorChain.length; -/***/ }), + let newConfig = config; -/***/ "./src/Typesense/Preset.ts": -/*!*********************************!*\ - !*** ./src/Typesense/Preset.ts ***! - \*********************************/ -/***/ ((__unused_webpack_module, __webpack_exports__, __webpack_require__) => { + i = 0; -"use strict"; -__webpack_require__.r(__webpack_exports__); -/* harmony export */ __webpack_require__.d(__webpack_exports__, { -/* harmony export */ "default": () => (/* binding */ Preset) -/* harmony export */ }); -/* harmony import */ var _babel_runtime_helpers_asyncToGenerator__WEBPACK_IMPORTED_MODULE_0__ = __webpack_require__(/*! @babel/runtime/helpers/asyncToGenerator */ "./node_modules/@babel/runtime/helpers/esm/asyncToGenerator.js"); -/* harmony import */ var _babel_runtime_helpers_classCallCheck__WEBPACK_IMPORTED_MODULE_1__ = __webpack_require__(/*! @babel/runtime/helpers/classCallCheck */ "./node_modules/@babel/runtime/helpers/esm/classCallCheck.js"); -/* harmony import */ var _babel_runtime_helpers_createClass__WEBPACK_IMPORTED_MODULE_2__ = __webpack_require__(/*! @babel/runtime/helpers/createClass */ "./node_modules/@babel/runtime/helpers/esm/createClass.js"); -/* harmony import */ var _babel_runtime_regenerator__WEBPACK_IMPORTED_MODULE_3__ = __webpack_require__(/*! @babel/runtime/regenerator */ "./node_modules/@babel/runtime/regenerator/index.js"); -/* harmony import */ var _babel_runtime_regenerator__WEBPACK_IMPORTED_MODULE_3___default = /*#__PURE__*/__webpack_require__.n(_babel_runtime_regenerator__WEBPACK_IMPORTED_MODULE_3__); -/* harmony import */ var _Presets__WEBPACK_IMPORTED_MODULE_4__ = __webpack_require__(/*! ./Presets */ "./src/Typesense/Presets.ts"); + while (i < len) { + const onFulfilled = requestInterceptorChain[i++]; + const onRejected = requestInterceptorChain[i++]; + try { + newConfig = onFulfilled(newConfig); + } catch (error) { + onRejected.call(this, error); + break; + } + } + try { + promise = _dispatchRequest_js__WEBPACK_IMPORTED_MODULE_5__["default"].call(this, newConfig); + } catch (error) { + return Promise.reject(error); + } + i = 0; + len = responseInterceptorChain.length; + while (i < len) { + promise = promise.then(responseInterceptorChain[i++], responseInterceptorChain[i++]); + } + return promise; + } -var Preset = /*#__PURE__*/function () { - function Preset(presetId, apiCall) { - (0,_babel_runtime_helpers_classCallCheck__WEBPACK_IMPORTED_MODULE_1__["default"])(this, Preset); - this.presetId = presetId; - this.apiCall = apiCall; + getUri(config) { + config = (0,_mergeConfig_js__WEBPACK_IMPORTED_MODULE_2__["default"])(this.defaults, config); + const fullPath = (0,_buildFullPath_js__WEBPACK_IMPORTED_MODULE_6__["default"])(config.baseURL, config.url); + return (0,_helpers_buildURL_js__WEBPACK_IMPORTED_MODULE_7__["default"])(fullPath, config.params, config.paramsSerializer); } - (0,_babel_runtime_helpers_createClass__WEBPACK_IMPORTED_MODULE_2__["default"])(Preset, [{ - key: "retrieve", - value: function () { - var _retrieve = (0,_babel_runtime_helpers_asyncToGenerator__WEBPACK_IMPORTED_MODULE_0__["default"])( /*#__PURE__*/_babel_runtime_regenerator__WEBPACK_IMPORTED_MODULE_3___default().mark(function _callee() { - return _babel_runtime_regenerator__WEBPACK_IMPORTED_MODULE_3___default().wrap(function _callee$(_context) { - while (1) switch (_context.prev = _context.next) { - case 0: - return _context.abrupt("return", this.apiCall.get(this.endpointPath())); - case 1: - case "end": - return _context.stop(); - } - }, _callee, this); - })); - function retrieve() { - return _retrieve.apply(this, arguments); - } - return retrieve; - }() - }, { - key: "delete", - value: function () { - var _delete2 = (0,_babel_runtime_helpers_asyncToGenerator__WEBPACK_IMPORTED_MODULE_0__["default"])( /*#__PURE__*/_babel_runtime_regenerator__WEBPACK_IMPORTED_MODULE_3___default().mark(function _callee2() { - return _babel_runtime_regenerator__WEBPACK_IMPORTED_MODULE_3___default().wrap(function _callee2$(_context2) { - while (1) switch (_context2.prev = _context2.next) { - case 0: - return _context2.abrupt("return", this.apiCall.delete(this.endpointPath())); - case 1: - case "end": - return _context2.stop(); - } - }, _callee2, this); +} + +// Provide aliases for supported request methods +_utils_js__WEBPACK_IMPORTED_MODULE_3__["default"].forEach(['delete', 'get', 'head', 'options'], function forEachMethodNoData(method) { + /*eslint func-names:0*/ + Axios.prototype[method] = function(url, config) { + return this.request((0,_mergeConfig_js__WEBPACK_IMPORTED_MODULE_2__["default"])(config || {}, { + method, + url, + data: (config || {}).data + })); + }; +}); + +_utils_js__WEBPACK_IMPORTED_MODULE_3__["default"].forEach(['post', 'put', 'patch'], function forEachMethodWithData(method) { + /*eslint func-names:0*/ + + function generateHTTPMethod(isForm) { + return function httpMethod(url, data, config) { + return this.request((0,_mergeConfig_js__WEBPACK_IMPORTED_MODULE_2__["default"])(config || {}, { + method, + headers: isForm ? { + 'Content-Type': 'multipart/form-data' + } : {}, + url, + data })); - function _delete() { - return _delete2.apply(this, arguments); - } - return _delete; - }() - }, { - key: "endpointPath", - value: function endpointPath() { - return "".concat(_Presets__WEBPACK_IMPORTED_MODULE_4__["default"].RESOURCEPATH, "/").concat(encodeURIComponent(this.presetId)); - } - }]); - return Preset; -}(); + }; + } + + Axios.prototype[method] = generateHTTPMethod(); + + Axios.prototype[method + 'Form'] = generateHTTPMethod(true); +}); + +/* harmony default export */ const __WEBPACK_DEFAULT_EXPORT__ = (Axios); /***/ }), -/***/ "./src/Typesense/Presets.ts": -/*!**********************************!*\ - !*** ./src/Typesense/Presets.ts ***! - \**********************************/ -/***/ ((__unused_webpack_module, __webpack_exports__, __webpack_require__) => { +/***/ "./node_modules/.pnpm/axios@1.7.9/node_modules/axios/lib/core/AxiosError.js": +/*!**********************************************************************************!*\ + !*** ./node_modules/.pnpm/axios@1.7.9/node_modules/axios/lib/core/AxiosError.js ***! + \**********************************************************************************/ +/***/ ((__unused_webpack___webpack_module__, __webpack_exports__, __webpack_require__) => { "use strict"; __webpack_require__.r(__webpack_exports__); /* harmony export */ __webpack_require__.d(__webpack_exports__, { -/* harmony export */ "default": () => (/* binding */ Presets) +/* harmony export */ "default": () => (__WEBPACK_DEFAULT_EXPORT__) /* harmony export */ }); -/* harmony import */ var _babel_runtime_helpers_typeof__WEBPACK_IMPORTED_MODULE_0__ = __webpack_require__(/*! @babel/runtime/helpers/typeof */ "./node_modules/@babel/runtime/helpers/esm/typeof.js"); -/* harmony import */ var _babel_runtime_helpers_asyncToGenerator__WEBPACK_IMPORTED_MODULE_1__ = __webpack_require__(/*! @babel/runtime/helpers/asyncToGenerator */ "./node_modules/@babel/runtime/helpers/esm/asyncToGenerator.js"); -/* harmony import */ var _babel_runtime_helpers_classCallCheck__WEBPACK_IMPORTED_MODULE_2__ = __webpack_require__(/*! @babel/runtime/helpers/classCallCheck */ "./node_modules/@babel/runtime/helpers/esm/classCallCheck.js"); -/* harmony import */ var _babel_runtime_helpers_createClass__WEBPACK_IMPORTED_MODULE_3__ = __webpack_require__(/*! @babel/runtime/helpers/createClass */ "./node_modules/@babel/runtime/helpers/esm/createClass.js"); -/* harmony import */ var _babel_runtime_regenerator__WEBPACK_IMPORTED_MODULE_4__ = __webpack_require__(/*! @babel/runtime/regenerator */ "./node_modules/@babel/runtime/regenerator/index.js"); -/* harmony import */ var _babel_runtime_regenerator__WEBPACK_IMPORTED_MODULE_4___default = /*#__PURE__*/__webpack_require__.n(_babel_runtime_regenerator__WEBPACK_IMPORTED_MODULE_4__); -/* harmony import */ var _Utils__WEBPACK_IMPORTED_MODULE_5__ = __webpack_require__(/*! ./Utils */ "./src/Typesense/Utils.ts"); +/* harmony import */ var _utils_js__WEBPACK_IMPORTED_MODULE_0__ = __webpack_require__(/*! ../utils.js */ "./node_modules/.pnpm/axios@1.7.9/node_modules/axios/lib/utils.js"); +/** + * Create an Error with the specified message, config, error code, request and response. + * + * @param {string} message The error message. + * @param {string} [code] The error code (for example, 'ECONNABORTED'). + * @param {Object} [config] The config. + * @param {Object} [request] The request. + * @param {Object} [response] The response. + * + * @returns {Error} The created error. + */ +function AxiosError(message, code, config, request, response) { + Error.call(this); + if (Error.captureStackTrace) { + Error.captureStackTrace(this, this.constructor); + } else { + this.stack = (new Error()).stack; + } -var RESOURCEPATH = "/presets"; -var Presets = /*#__PURE__*/function () { - function Presets(apiCall) { - (0,_babel_runtime_helpers_classCallCheck__WEBPACK_IMPORTED_MODULE_2__["default"])(this, Presets); - this.apiCall = apiCall; + this.message = message; + this.name = 'AxiosError'; + code && (this.code = code); + config && (this.config = config); + request && (this.request = request); + if (response) { + this.response = response; + this.status = response.status ? response.status : null; } - (0,_babel_runtime_helpers_createClass__WEBPACK_IMPORTED_MODULE_3__["default"])(Presets, [{ - key: "upsert", - value: function () { - var _upsert = (0,_babel_runtime_helpers_asyncToGenerator__WEBPACK_IMPORTED_MODULE_1__["default"])( /*#__PURE__*/_babel_runtime_regenerator__WEBPACK_IMPORTED_MODULE_4___default().mark(function _callee(presetId, params) { - var _normalizedParams, normalizedParams; - return _babel_runtime_regenerator__WEBPACK_IMPORTED_MODULE_4___default().wrap(function _callee$(_context) { - while (1) switch (_context.prev = _context.next) { - case 0: - if (!((0,_babel_runtime_helpers_typeof__WEBPACK_IMPORTED_MODULE_0__["default"])(params.value) === "object" && "searches" in params.value)) { - _context.next = 3; - break; - } - _normalizedParams = params.value.searches.map(function (search) { - return (0,_Utils__WEBPACK_IMPORTED_MODULE_5__.normalizeArrayableParams)(search); - }); - return _context.abrupt("return", this.apiCall.put(this.endpointPath(presetId), { - value: { - searches: _normalizedParams - } - })); - case 3: - normalizedParams = (0,_Utils__WEBPACK_IMPORTED_MODULE_5__.normalizeArrayableParams)(params.value); - return _context.abrupt("return", this.apiCall.put(this.endpointPath(presetId), { - value: normalizedParams - })); - case 5: - case "end": - return _context.stop(); - } - }, _callee, this); - })); - function upsert(_x, _x2) { - return _upsert.apply(this, arguments); - } - return upsert; - }() - }, { - key: "retrieve", - value: function () { - var _retrieve = (0,_babel_runtime_helpers_asyncToGenerator__WEBPACK_IMPORTED_MODULE_1__["default"])( /*#__PURE__*/_babel_runtime_regenerator__WEBPACK_IMPORTED_MODULE_4___default().mark(function _callee2() { - return _babel_runtime_regenerator__WEBPACK_IMPORTED_MODULE_4___default().wrap(function _callee2$(_context2) { - while (1) switch (_context2.prev = _context2.next) { - case 0: - return _context2.abrupt("return", this.apiCall.get(this.endpointPath())); - case 1: - case "end": - return _context2.stop(); - } - }, _callee2, this); - })); - function retrieve() { - return _retrieve.apply(this, arguments); - } - return retrieve; - }() - }, { - key: "endpointPath", - value: function endpointPath(operation) { - return "".concat(Presets.RESOURCEPATH).concat(operation === undefined ? "" : "/" + encodeURIComponent(operation)); - } - }], [{ - key: "RESOURCEPATH", - get: function get() { - return RESOURCEPATH; - } - }]); - return Presets; -}(); +} + +_utils_js__WEBPACK_IMPORTED_MODULE_0__["default"].inherits(AxiosError, Error, { + toJSON: function toJSON() { + return { + // Standard + message: this.message, + name: this.name, + // Microsoft + description: this.description, + number: this.number, + // Mozilla + fileName: this.fileName, + lineNumber: this.lineNumber, + columnNumber: this.columnNumber, + stack: this.stack, + // Axios + config: _utils_js__WEBPACK_IMPORTED_MODULE_0__["default"].toJSONObject(this.config), + code: this.code, + status: this.status + }; + } +}); + +const prototype = AxiosError.prototype; +const descriptors = {}; + +[ + 'ERR_BAD_OPTION_VALUE', + 'ERR_BAD_OPTION', + 'ECONNABORTED', + 'ETIMEDOUT', + 'ERR_NETWORK', + 'ERR_FR_TOO_MANY_REDIRECTS', + 'ERR_DEPRECATED', + 'ERR_BAD_RESPONSE', + 'ERR_BAD_REQUEST', + 'ERR_CANCELED', + 'ERR_NOT_SUPPORT', + 'ERR_INVALID_URL' +// eslint-disable-next-line func-names +].forEach(code => { + descriptors[code] = {value: code}; +}); + +Object.defineProperties(AxiosError, descriptors); +Object.defineProperty(prototype, 'isAxiosError', {value: true}); + +// eslint-disable-next-line func-names +AxiosError.from = (error, code, config, request, response, customProps) => { + const axiosError = Object.create(prototype); + + _utils_js__WEBPACK_IMPORTED_MODULE_0__["default"].toFlatObject(error, axiosError, function filter(obj) { + return obj !== Error.prototype; + }, prop => { + return prop !== 'isAxiosError'; + }); + + AxiosError.call(axiosError, error.message, code, config, request, response); + + axiosError.cause = error; + + axiosError.name = error.name; + + customProps && Object.assign(axiosError, customProps); + + return axiosError; +}; + +/* harmony default export */ const __WEBPACK_DEFAULT_EXPORT__ = (AxiosError); /***/ }), -/***/ "./src/Typesense/RequestWithCache.ts": -/*!*******************************************!*\ - !*** ./src/Typesense/RequestWithCache.ts ***! - \*******************************************/ -/***/ ((__unused_webpack_module, __webpack_exports__, __webpack_require__) => { +/***/ "./node_modules/.pnpm/axios@1.7.9/node_modules/axios/lib/core/AxiosHeaders.js": +/*!************************************************************************************!*\ + !*** ./node_modules/.pnpm/axios@1.7.9/node_modules/axios/lib/core/AxiosHeaders.js ***! + \************************************************************************************/ +/***/ ((__unused_webpack___webpack_module__, __webpack_exports__, __webpack_require__) => { "use strict"; __webpack_require__.r(__webpack_exports__); /* harmony export */ __webpack_require__.d(__webpack_exports__, { -/* harmony export */ "default": () => (/* binding */ RequestWithCache) +/* harmony export */ "default": () => (__WEBPACK_DEFAULT_EXPORT__) /* harmony export */ }); -/* harmony import */ var _babel_runtime_helpers_toConsumableArray__WEBPACK_IMPORTED_MODULE_0__ = __webpack_require__(/*! @babel/runtime/helpers/toConsumableArray */ "./node_modules/@babel/runtime/helpers/esm/toConsumableArray.js"); -/* harmony import */ var _babel_runtime_helpers_asyncToGenerator__WEBPACK_IMPORTED_MODULE_1__ = __webpack_require__(/*! @babel/runtime/helpers/asyncToGenerator */ "./node_modules/@babel/runtime/helpers/esm/asyncToGenerator.js"); -/* harmony import */ var _babel_runtime_helpers_classCallCheck__WEBPACK_IMPORTED_MODULE_2__ = __webpack_require__(/*! @babel/runtime/helpers/classCallCheck */ "./node_modules/@babel/runtime/helpers/esm/classCallCheck.js"); -/* harmony import */ var _babel_runtime_helpers_createClass__WEBPACK_IMPORTED_MODULE_3__ = __webpack_require__(/*! @babel/runtime/helpers/createClass */ "./node_modules/@babel/runtime/helpers/esm/createClass.js"); -/* harmony import */ var _babel_runtime_helpers_defineProperty__WEBPACK_IMPORTED_MODULE_4__ = __webpack_require__(/*! @babel/runtime/helpers/defineProperty */ "./node_modules/@babel/runtime/helpers/esm/defineProperty.js"); -/* harmony import */ var _babel_runtime_regenerator__WEBPACK_IMPORTED_MODULE_5__ = __webpack_require__(/*! @babel/runtime/regenerator */ "./node_modules/@babel/runtime/regenerator/index.js"); -/* harmony import */ var _babel_runtime_regenerator__WEBPACK_IMPORTED_MODULE_5___default = /*#__PURE__*/__webpack_require__.n(_babel_runtime_regenerator__WEBPACK_IMPORTED_MODULE_5__); +/* harmony import */ var _utils_js__WEBPACK_IMPORTED_MODULE_0__ = __webpack_require__(/*! ../utils.js */ "./node_modules/.pnpm/axios@1.7.9/node_modules/axios/lib/utils.js"); +/* harmony import */ var _helpers_parseHeaders_js__WEBPACK_IMPORTED_MODULE_1__ = __webpack_require__(/*! ../helpers/parseHeaders.js */ "./node_modules/.pnpm/axios@1.7.9/node_modules/axios/lib/helpers/parseHeaders.js"); +const $internals = Symbol('internals'); -var defaultCacheResponseForSeconds = 2 * 60; -var defaultMaxSize = 100; -var RequestWithCache = /*#__PURE__*/function () { - function RequestWithCache() { - (0,_babel_runtime_helpers_classCallCheck__WEBPACK_IMPORTED_MODULE_2__["default"])(this, RequestWithCache); - (0,_babel_runtime_helpers_defineProperty__WEBPACK_IMPORTED_MODULE_4__["default"])(this, "responseCache", new Map()); - (0,_babel_runtime_helpers_defineProperty__WEBPACK_IMPORTED_MODULE_4__["default"])(this, "responsePromiseCache", new Map()); +function normalizeHeader(header) { + return header && String(header).trim().toLowerCase(); +} + +function normalizeValue(value) { + if (value === false || value == null) { + return value; } - (0,_babel_runtime_helpers_createClass__WEBPACK_IMPORTED_MODULE_3__["default"])(RequestWithCache, [{ - key: "clearCache", - value: function clearCache() { - this.responseCache = new Map(); - this.responsePromiseCache = new Map(); - } - // Todo: should probably be passed a callback instead, or an apiCall instance. Types are messy this way - }, { - key: "perform", - value: function () { - var _perform = (0,_babel_runtime_helpers_asyncToGenerator__WEBPACK_IMPORTED_MODULE_1__["default"])( /*#__PURE__*/_babel_runtime_regenerator__WEBPACK_IMPORTED_MODULE_5___default().mark(function _callee(requestContext, requestFunction, requestFunctionArguments, cacheOptions) { - var _cacheOptions$cacheRe, cacheResponseForSeconds, _cacheOptions$maxSize, maxSize, isCacheDisabled, requestFunctionArgumentsJSON, cacheEntry, now, isEntryValid, cachePromiseEntry, _isEntryValid, responsePromise, response, isCacheOverMaxSize, oldestEntry, isResponsePromiseCacheOverMaxSize, _oldestEntry; - return _babel_runtime_regenerator__WEBPACK_IMPORTED_MODULE_5___default().wrap(function _callee$(_context) { - while (1) switch (_context.prev = _context.next) { - case 0: - _cacheOptions$cacheRe = cacheOptions.cacheResponseForSeconds, cacheResponseForSeconds = _cacheOptions$cacheRe === void 0 ? defaultCacheResponseForSeconds : _cacheOptions$cacheRe, _cacheOptions$maxSize = cacheOptions.maxSize, maxSize = _cacheOptions$maxSize === void 0 ? defaultMaxSize : _cacheOptions$maxSize; - isCacheDisabled = cacheResponseForSeconds <= 0 || maxSize <= 0; - if (!isCacheDisabled) { - _context.next = 4; - break; - } - return _context.abrupt("return", requestFunction.call.apply(requestFunction, [requestContext].concat((0,_babel_runtime_helpers_toConsumableArray__WEBPACK_IMPORTED_MODULE_0__["default"])(requestFunctionArguments)))); - case 4: - requestFunctionArgumentsJSON = JSON.stringify(requestFunctionArguments); - cacheEntry = this.responseCache.get(requestFunctionArgumentsJSON); - now = Date.now(); - if (!cacheEntry) { - _context.next = 16; - break; - } - isEntryValid = now - cacheEntry.requestTimestamp < cacheResponseForSeconds * 1000; - if (!isEntryValid) { - _context.next = 15; - break; - } - this.responseCache.delete(requestFunctionArgumentsJSON); - this.responseCache.set(requestFunctionArgumentsJSON, cacheEntry); - return _context.abrupt("return", Promise.resolve(cacheEntry.response)); - case 15: - this.responseCache.delete(requestFunctionArgumentsJSON); - case 16: - cachePromiseEntry = this.responsePromiseCache.get(requestFunctionArgumentsJSON); - if (!cachePromiseEntry) { - _context.next = 26; - break; - } - _isEntryValid = now - cachePromiseEntry.requestTimestamp < cacheResponseForSeconds * 1000; - if (!_isEntryValid) { - _context.next = 25; - break; - } - this.responsePromiseCache.delete(requestFunctionArgumentsJSON); - this.responsePromiseCache.set(requestFunctionArgumentsJSON, cachePromiseEntry); - return _context.abrupt("return", cachePromiseEntry.responsePromise); - case 25: - this.responsePromiseCache.delete(requestFunctionArgumentsJSON); - case 26: - responsePromise = requestFunction.call.apply(requestFunction, [requestContext].concat((0,_babel_runtime_helpers_toConsumableArray__WEBPACK_IMPORTED_MODULE_0__["default"])(requestFunctionArguments))); - this.responsePromiseCache.set(requestFunctionArgumentsJSON, { - requestTimestamp: now, - responsePromise: responsePromise - }); - _context.next = 30; - return responsePromise; - case 30: - response = _context.sent; - this.responseCache.set(requestFunctionArgumentsJSON, { - requestTimestamp: now, - response: response - }); - isCacheOverMaxSize = this.responseCache.size > maxSize; - if (isCacheOverMaxSize) { - oldestEntry = this.responseCache.keys().next().value; - if (oldestEntry) { - this.responseCache.delete(oldestEntry); - } - } - isResponsePromiseCacheOverMaxSize = this.responsePromiseCache.size > maxSize; - if (isResponsePromiseCacheOverMaxSize) { - _oldestEntry = this.responsePromiseCache.keys().next().value; - if (_oldestEntry) { - this.responsePromiseCache.delete(_oldestEntry); - } - } - return _context.abrupt("return", response); - case 37: - case "end": - return _context.stop(); - } - }, _callee, this); - })); - function perform(_x, _x2, _x3, _x4) { - return _perform.apply(this, arguments); - } - return perform; - }() - }]); - return RequestWithCache; -}(); + return _utils_js__WEBPACK_IMPORTED_MODULE_0__["default"].isArray(value) ? value.map(normalizeValue) : String(value); +} +function parseTokens(str) { + const tokens = Object.create(null); + const tokensRE = /([^\s,;=]+)\s*(?:=\s*([^,;]+))?/g; + let match; -/***/ }), + while ((match = tokensRE.exec(str))) { + tokens[match[1]] = match[2]; + } -/***/ "./src/Typesense/SearchClient.ts": -/*!***************************************!*\ - !*** ./src/Typesense/SearchClient.ts ***! - \***************************************/ -/***/ ((__unused_webpack_module, __webpack_exports__, __webpack_require__) => { + return tokens; +} -"use strict"; -__webpack_require__.r(__webpack_exports__); -/* harmony export */ __webpack_require__.d(__webpack_exports__, { -/* harmony export */ "default": () => (/* binding */ SearchClient) -/* harmony export */ }); -/* harmony import */ var _babel_runtime_helpers_slicedToArray__WEBPACK_IMPORTED_MODULE_0__ = __webpack_require__(/*! @babel/runtime/helpers/slicedToArray */ "./node_modules/@babel/runtime/helpers/esm/slicedToArray.js"); -/* harmony import */ var _babel_runtime_helpers_classCallCheck__WEBPACK_IMPORTED_MODULE_1__ = __webpack_require__(/*! @babel/runtime/helpers/classCallCheck */ "./node_modules/@babel/runtime/helpers/esm/classCallCheck.js"); -/* harmony import */ var _babel_runtime_helpers_createClass__WEBPACK_IMPORTED_MODULE_2__ = __webpack_require__(/*! @babel/runtime/helpers/createClass */ "./node_modules/@babel/runtime/helpers/esm/createClass.js"); -/* harmony import */ var _Configuration__WEBPACK_IMPORTED_MODULE_3__ = __webpack_require__(/*! ./Configuration */ "./src/Typesense/Configuration.ts"); -/* harmony import */ var _ApiCall__WEBPACK_IMPORTED_MODULE_4__ = __webpack_require__(/*! ./ApiCall */ "./src/Typesense/ApiCall.ts"); -/* harmony import */ var _MultiSearch__WEBPACK_IMPORTED_MODULE_5__ = __webpack_require__(/*! ./MultiSearch */ "./src/Typesense/MultiSearch.ts"); -/* harmony import */ var _SearchOnlyCollection__WEBPACK_IMPORTED_MODULE_6__ = __webpack_require__(/*! ./SearchOnlyCollection */ "./src/Typesense/SearchOnlyCollection.ts"); +const isValidHeaderName = (str) => /^[-_a-zA-Z0-9^`|~,!#$%&'*+.]+$/.test(str.trim()); +function matchHeaderValue(context, value, header, filter, isHeaderNameFilter) { + if (_utils_js__WEBPACK_IMPORTED_MODULE_0__["default"].isFunction(filter)) { + return filter.call(this, value, header); + } + if (isHeaderNameFilter) { + value = header; + } + if (!_utils_js__WEBPACK_IMPORTED_MODULE_0__["default"].isString(value)) return; + if (_utils_js__WEBPACK_IMPORTED_MODULE_0__["default"].isString(filter)) { + return value.indexOf(filter) !== -1; + } + if (_utils_js__WEBPACK_IMPORTED_MODULE_0__["default"].isRegExp(filter)) { + return filter.test(value); + } +} +function formatHeader(header) { + return header.trim() + .toLowerCase().replace(/([a-z\d])(\w*)/g, (w, char, str) => { + return char.toUpperCase() + str; + }); +} -var SearchClient = /*#__PURE__*/function () { - function SearchClient(options) { - var _options$sendApiKeyAs; - (0,_babel_runtime_helpers_classCallCheck__WEBPACK_IMPORTED_MODULE_1__["default"])(this, SearchClient); - options.sendApiKeyAsQueryParam = (_options$sendApiKeyAs = options.sendApiKeyAsQueryParam) !== null && _options$sendApiKeyAs !== void 0 ? _options$sendApiKeyAs : true; - if (options.sendApiKeyAsQueryParam === true && (options.apiKey || "").length > 2000) { - console.warn("[typesense] API Key is longer than 2000 characters which is over the allowed limit, so disabling sending it as a query parameter."); - options.sendApiKeyAsQueryParam = false; - } - this.configuration = new _Configuration__WEBPACK_IMPORTED_MODULE_3__["default"](options); - this.apiCall = new _ApiCall__WEBPACK_IMPORTED_MODULE_4__["default"](this.configuration); - this.multiSearch = new _MultiSearch__WEBPACK_IMPORTED_MODULE_5__["default"](this.apiCall, this.configuration, true); - this.individualCollections = {}; +function buildAccessors(obj, header) { + const accessorName = _utils_js__WEBPACK_IMPORTED_MODULE_0__["default"].toCamelCase(' ' + header); + + ['get', 'set', 'has'].forEach(methodName => { + Object.defineProperty(obj, methodName + accessorName, { + value: function(arg1, arg2, arg3) { + return this[methodName].call(this, header, arg1, arg2, arg3); + }, + configurable: true + }); + }); +} + +class AxiosHeaders { + constructor(headers) { + headers && this.set(headers); } - (0,_babel_runtime_helpers_createClass__WEBPACK_IMPORTED_MODULE_2__["default"])(SearchClient, [{ - key: "clearCache", - value: function clearCache() { - this.multiSearch.clearCache(); - // eslint-disable-next-line @typescript-eslint/no-unused-vars - Object.entries(this.individualCollections).forEach(function (_ref) { - var _ref2 = (0,_babel_runtime_helpers_slicedToArray__WEBPACK_IMPORTED_MODULE_0__["default"])(_ref, 2), - _ = _ref2[0], - collection = _ref2[1]; - collection.documents().clearCache(); - }); + set(header, valueOrRewrite, rewrite) { + const self = this; + + function setHeader(_value, _header, _rewrite) { + const lHeader = normalizeHeader(_header); + + if (!lHeader) { + throw new Error('header name must be a non-empty string'); + } + + const key = _utils_js__WEBPACK_IMPORTED_MODULE_0__["default"].findKey(self, lHeader); + + if(!key || self[key] === undefined || _rewrite === true || (_rewrite === undefined && self[key] !== false)) { + self[key || _header] = normalizeValue(_value); + } } - }, { - key: "collections", - value: function collections(collectionName) { - if (!collectionName) { - throw new Error("Typesense.SearchClient only supports search operations, so the collectionName that needs to " + "be searched must be specified. Use Typesense.Client if you need to access the collection object."); - } else { - if (this.individualCollections[collectionName] === undefined) { - this.individualCollections[collectionName] = new _SearchOnlyCollection__WEBPACK_IMPORTED_MODULE_6__.SearchOnlyCollection(collectionName, this.apiCall, this.configuration); - } - return this.individualCollections[collectionName]; + + const setHeaders = (headers, _rewrite) => + _utils_js__WEBPACK_IMPORTED_MODULE_0__["default"].forEach(headers, (_value, _header) => setHeader(_value, _header, _rewrite)); + + if (_utils_js__WEBPACK_IMPORTED_MODULE_0__["default"].isPlainObject(header) || header instanceof this.constructor) { + setHeaders(header, valueOrRewrite) + } else if(_utils_js__WEBPACK_IMPORTED_MODULE_0__["default"].isString(header) && (header = header.trim()) && !isValidHeaderName(header)) { + setHeaders((0,_helpers_parseHeaders_js__WEBPACK_IMPORTED_MODULE_1__["default"])(header), valueOrRewrite); + } else if (_utils_js__WEBPACK_IMPORTED_MODULE_0__["default"].isHeaders(header)) { + for (const [key, value] of header.entries()) { + setHeader(value, key, rewrite); } + } else { + header != null && setHeader(valueOrRewrite, header, rewrite); } - }]); - return SearchClient; -}(); + return this; + } -/***/ }), + get(header, parser) { + header = normalizeHeader(header); -/***/ "./src/Typesense/SearchOnlyCollection.ts": -/*!***********************************************!*\ - !*** ./src/Typesense/SearchOnlyCollection.ts ***! - \***********************************************/ -/***/ ((__unused_webpack_module, __webpack_exports__, __webpack_require__) => { + if (header) { + const key = _utils_js__WEBPACK_IMPORTED_MODULE_0__["default"].findKey(this, header); -"use strict"; -__webpack_require__.r(__webpack_exports__); -/* harmony export */ __webpack_require__.d(__webpack_exports__, { -/* harmony export */ SearchOnlyCollection: () => (/* binding */ SearchOnlyCollection) -/* harmony export */ }); -/* harmony import */ var _babel_runtime_helpers_classCallCheck__WEBPACK_IMPORTED_MODULE_0__ = __webpack_require__(/*! @babel/runtime/helpers/classCallCheck */ "./node_modules/@babel/runtime/helpers/esm/classCallCheck.js"); -/* harmony import */ var _babel_runtime_helpers_createClass__WEBPACK_IMPORTED_MODULE_1__ = __webpack_require__(/*! @babel/runtime/helpers/createClass */ "./node_modules/@babel/runtime/helpers/esm/createClass.js"); -/* harmony import */ var _SearchOnlyDocuments__WEBPACK_IMPORTED_MODULE_2__ = __webpack_require__(/*! ./SearchOnlyDocuments */ "./src/Typesense/SearchOnlyDocuments.ts"); + if (key) { + const value = this[key]; + if (!parser) { + return value; + } + if (parser === true) { + return parseTokens(value); + } -var SearchOnlyCollection = /*#__PURE__*/function () { - function SearchOnlyCollection(name, apiCall, configuration) { - (0,_babel_runtime_helpers_classCallCheck__WEBPACK_IMPORTED_MODULE_0__["default"])(this, SearchOnlyCollection); - this.name = name; - this.apiCall = apiCall; - this.configuration = configuration; - this._documents = new _SearchOnlyDocuments__WEBPACK_IMPORTED_MODULE_2__.SearchOnlyDocuments(this.name, this.apiCall, this.configuration); - } - (0,_babel_runtime_helpers_createClass__WEBPACK_IMPORTED_MODULE_1__["default"])(SearchOnlyCollection, [{ - key: "documents", - value: function documents() { - return this._documents; - } - }]); - return SearchOnlyCollection; -}(); + if (_utils_js__WEBPACK_IMPORTED_MODULE_0__["default"].isFunction(parser)) { + return parser.call(this, value, key); + } -/***/ }), + if (_utils_js__WEBPACK_IMPORTED_MODULE_0__["default"].isRegExp(parser)) { + return parser.exec(value); + } -/***/ "./src/Typesense/SearchOnlyDocuments.ts": -/*!**********************************************!*\ - !*** ./src/Typesense/SearchOnlyDocuments.ts ***! - \**********************************************/ -/***/ ((__unused_webpack_module, __webpack_exports__, __webpack_require__) => { + throw new TypeError('parser must be boolean|regexp|function'); + } + } + } -"use strict"; -__webpack_require__.r(__webpack_exports__); -/* harmony export */ __webpack_require__.d(__webpack_exports__, { -/* harmony export */ SearchOnlyDocuments: () => (/* binding */ SearchOnlyDocuments) -/* harmony export */ }); -/* harmony import */ var _babel_runtime_helpers_asyncToGenerator__WEBPACK_IMPORTED_MODULE_0__ = __webpack_require__(/*! @babel/runtime/helpers/asyncToGenerator */ "./node_modules/@babel/runtime/helpers/esm/asyncToGenerator.js"); -/* harmony import */ var _babel_runtime_helpers_classCallCheck__WEBPACK_IMPORTED_MODULE_1__ = __webpack_require__(/*! @babel/runtime/helpers/classCallCheck */ "./node_modules/@babel/runtime/helpers/esm/classCallCheck.js"); -/* harmony import */ var _babel_runtime_helpers_createClass__WEBPACK_IMPORTED_MODULE_2__ = __webpack_require__(/*! @babel/runtime/helpers/createClass */ "./node_modules/@babel/runtime/helpers/esm/createClass.js"); -/* harmony import */ var _babel_runtime_helpers_defineProperty__WEBPACK_IMPORTED_MODULE_3__ = __webpack_require__(/*! @babel/runtime/helpers/defineProperty */ "./node_modules/@babel/runtime/helpers/esm/defineProperty.js"); -/* harmony import */ var _babel_runtime_regenerator__WEBPACK_IMPORTED_MODULE_4__ = __webpack_require__(/*! @babel/runtime/regenerator */ "./node_modules/@babel/runtime/regenerator/index.js"); -/* harmony import */ var _babel_runtime_regenerator__WEBPACK_IMPORTED_MODULE_4___default = /*#__PURE__*/__webpack_require__.n(_babel_runtime_regenerator__WEBPACK_IMPORTED_MODULE_4__); -/* harmony import */ var _RequestWithCache__WEBPACK_IMPORTED_MODULE_5__ = __webpack_require__(/*! ./RequestWithCache */ "./src/Typesense/RequestWithCache.ts"); -/* harmony import */ var _Collections__WEBPACK_IMPORTED_MODULE_6__ = __webpack_require__(/*! ./Collections */ "./src/Typesense/Collections.ts"); -/* harmony import */ var _Utils__WEBPACK_IMPORTED_MODULE_7__ = __webpack_require__(/*! ./Utils */ "./src/Typesense/Utils.ts"); + has(header, matcher) { + header = normalizeHeader(header); + if (header) { + const key = _utils_js__WEBPACK_IMPORTED_MODULE_0__["default"].findKey(this, header); + return !!(key && this[key] !== undefined && (!matcher || matchHeaderValue(this, this[key], key, matcher))); + } + return false; + } + delete(header, matcher) { + const self = this; + let deleted = false; + function deleteHeader(_header) { + _header = normalizeHeader(_header); + if (_header) { + const key = _utils_js__WEBPACK_IMPORTED_MODULE_0__["default"].findKey(self, _header); + if (key && (!matcher || matchHeaderValue(self, self[key], key, matcher))) { + delete self[key]; -var RESOURCEPATH = "/documents"; -var SearchOnlyDocuments = /*#__PURE__*/function () { - function SearchOnlyDocuments(collectionName, apiCall, configuration) { - (0,_babel_runtime_helpers_classCallCheck__WEBPACK_IMPORTED_MODULE_1__["default"])(this, SearchOnlyDocuments); - (0,_babel_runtime_helpers_defineProperty__WEBPACK_IMPORTED_MODULE_3__["default"])(this, "requestWithCache", new _RequestWithCache__WEBPACK_IMPORTED_MODULE_5__["default"]()); - this.collectionName = collectionName; - this.apiCall = apiCall; - this.configuration = configuration; - } - (0,_babel_runtime_helpers_createClass__WEBPACK_IMPORTED_MODULE_2__["default"])(SearchOnlyDocuments, [{ - key: "clearCache", - value: function clearCache() { - this.requestWithCache.clearCache(); - } - }, { - key: "search", - value: function () { - var _search = (0,_babel_runtime_helpers_asyncToGenerator__WEBPACK_IMPORTED_MODULE_0__["default"])( /*#__PURE__*/_babel_runtime_regenerator__WEBPACK_IMPORTED_MODULE_4___default().mark(function _callee(searchParameters) { - var _ref, - _ref$cacheSearchResul, - cacheSearchResultsForSeconds, - _ref$abortSignal, - abortSignal, - additionalQueryParams, - normalizedParams, - queryParams, - _args = arguments; - return _babel_runtime_regenerator__WEBPACK_IMPORTED_MODULE_4___default().wrap(function _callee$(_context) { - while (1) switch (_context.prev = _context.next) { - case 0: - _ref = _args.length > 1 && _args[1] !== undefined ? _args[1] : {}, _ref$cacheSearchResul = _ref.cacheSearchResultsForSeconds, cacheSearchResultsForSeconds = _ref$cacheSearchResul === void 0 ? this.configuration.cacheSearchResultsForSeconds : _ref$cacheSearchResul, _ref$abortSignal = _ref.abortSignal, abortSignal = _ref$abortSignal === void 0 ? null : _ref$abortSignal; - additionalQueryParams = {}; - if (this.configuration.useServerSideSearchCache === true) { - additionalQueryParams["use_cache"] = true; - } - normalizedParams = (0,_Utils__WEBPACK_IMPORTED_MODULE_7__.normalizeArrayableParams)(searchParameters); - queryParams = Object.assign({}, additionalQueryParams, normalizedParams); - return _context.abrupt("return", this.requestWithCache.perform(this.apiCall, this.apiCall.get, [this.endpointPath("search"), queryParams, { - abortSignal: abortSignal - }], { - cacheResponseForSeconds: cacheSearchResultsForSeconds - })); - case 6: - case "end": - return _context.stop(); - } - }, _callee, this); - })); - function search(_x) { - return _search.apply(this, arguments); + deleted = true; + } } - return search; - }() - }, { - key: "endpointPath", - value: function endpointPath(operation) { - return "".concat(_Collections__WEBPACK_IMPORTED_MODULE_6__["default"].RESOURCEPATH, "/").concat(this.collectionName).concat(RESOURCEPATH).concat(operation === undefined ? "" : "/" + operation); } - }], [{ - key: "RESOURCEPATH", - get: function get() { - return RESOURCEPATH; + + if (_utils_js__WEBPACK_IMPORTED_MODULE_0__["default"].isArray(header)) { + header.forEach(deleteHeader); + } else { + deleteHeader(header); } - }]); - return SearchOnlyDocuments; -}(); -/***/ }), + return deleted; + } -/***/ "./src/Typesense/Stats.ts": -/*!********************************!*\ - !*** ./src/Typesense/Stats.ts ***! - \********************************/ -/***/ ((__unused_webpack_module, __webpack_exports__, __webpack_require__) => { + clear(matcher) { + const keys = Object.keys(this); + let i = keys.length; + let deleted = false; -"use strict"; -__webpack_require__.r(__webpack_exports__); -/* harmony export */ __webpack_require__.d(__webpack_exports__, { -/* harmony export */ "default": () => (/* binding */ Metrics) -/* harmony export */ }); -/* harmony import */ var _babel_runtime_helpers_asyncToGenerator__WEBPACK_IMPORTED_MODULE_0__ = __webpack_require__(/*! @babel/runtime/helpers/asyncToGenerator */ "./node_modules/@babel/runtime/helpers/esm/asyncToGenerator.js"); -/* harmony import */ var _babel_runtime_helpers_classCallCheck__WEBPACK_IMPORTED_MODULE_1__ = __webpack_require__(/*! @babel/runtime/helpers/classCallCheck */ "./node_modules/@babel/runtime/helpers/esm/classCallCheck.js"); -/* harmony import */ var _babel_runtime_helpers_createClass__WEBPACK_IMPORTED_MODULE_2__ = __webpack_require__(/*! @babel/runtime/helpers/createClass */ "./node_modules/@babel/runtime/helpers/esm/createClass.js"); -/* harmony import */ var _babel_runtime_regenerator__WEBPACK_IMPORTED_MODULE_3__ = __webpack_require__(/*! @babel/runtime/regenerator */ "./node_modules/@babel/runtime/regenerator/index.js"); -/* harmony import */ var _babel_runtime_regenerator__WEBPACK_IMPORTED_MODULE_3___default = /*#__PURE__*/__webpack_require__.n(_babel_runtime_regenerator__WEBPACK_IMPORTED_MODULE_3__); + while (i--) { + const key = keys[i]; + if(!matcher || matchHeaderValue(this, this[key], key, matcher, true)) { + delete this[key]; + deleted = true; + } + } + return deleted; + } + normalize(format) { + const self = this; + const headers = {}; + _utils_js__WEBPACK_IMPORTED_MODULE_0__["default"].forEach(this, (value, header) => { + const key = _utils_js__WEBPACK_IMPORTED_MODULE_0__["default"].findKey(headers, header); -var RESOURCEPATH = "/stats.json"; -var Metrics = /*#__PURE__*/function () { - function Metrics(apiCall) { - (0,_babel_runtime_helpers_classCallCheck__WEBPACK_IMPORTED_MODULE_1__["default"])(this, Metrics); - this.apiCall = apiCall; - } - (0,_babel_runtime_helpers_createClass__WEBPACK_IMPORTED_MODULE_2__["default"])(Metrics, [{ - key: "retrieve", - value: function () { - var _retrieve = (0,_babel_runtime_helpers_asyncToGenerator__WEBPACK_IMPORTED_MODULE_0__["default"])( /*#__PURE__*/_babel_runtime_regenerator__WEBPACK_IMPORTED_MODULE_3___default().mark(function _callee() { - return _babel_runtime_regenerator__WEBPACK_IMPORTED_MODULE_3___default().wrap(function _callee$(_context) { - while (1) switch (_context.prev = _context.next) { - case 0: - return _context.abrupt("return", this.apiCall.get(RESOURCEPATH)); - case 1: - case "end": - return _context.stop(); - } - }, _callee, this); - })); - function retrieve() { - return _retrieve.apply(this, arguments); + if (key) { + self[key] = normalizeValue(value); + delete self[header]; + return; + } + + const normalized = format ? formatHeader(header) : String(header).trim(); + + if (normalized !== header) { + delete self[header]; } - return retrieve; - }() - }]); - return Metrics; -}(); + self[normalized] = normalizeValue(value); -/***/ }), + headers[normalized] = true; + }); -/***/ "./src/Typesense/Stemming.ts": -/*!***********************************!*\ - !*** ./src/Typesense/Stemming.ts ***! - \***********************************/ -/***/ ((__unused_webpack_module, __webpack_exports__, __webpack_require__) => { + return this; + } -"use strict"; -__webpack_require__.r(__webpack_exports__); -/* harmony export */ __webpack_require__.d(__webpack_exports__, { -/* harmony export */ "default": () => (/* binding */ Stemming) -/* harmony export */ }); -/* harmony import */ var _babel_runtime_helpers_classCallCheck__WEBPACK_IMPORTED_MODULE_0__ = __webpack_require__(/*! @babel/runtime/helpers/classCallCheck */ "./node_modules/@babel/runtime/helpers/esm/classCallCheck.js"); -/* harmony import */ var _babel_runtime_helpers_createClass__WEBPACK_IMPORTED_MODULE_1__ = __webpack_require__(/*! @babel/runtime/helpers/createClass */ "./node_modules/@babel/runtime/helpers/esm/createClass.js"); -/* harmony import */ var _babel_runtime_helpers_defineProperty__WEBPACK_IMPORTED_MODULE_2__ = __webpack_require__(/*! @babel/runtime/helpers/defineProperty */ "./node_modules/@babel/runtime/helpers/esm/defineProperty.js"); -/* harmony import */ var _StemmingDictionaries__WEBPACK_IMPORTED_MODULE_3__ = __webpack_require__(/*! ./StemmingDictionaries */ "./src/Typesense/StemmingDictionaries.ts"); -/* harmony import */ var _StemmingDictionary__WEBPACK_IMPORTED_MODULE_4__ = __webpack_require__(/*! ./StemmingDictionary */ "./src/Typesense/StemmingDictionary.ts"); + concat(...targets) { + return this.constructor.concat(this, ...targets); + } + toJSON(asStrings) { + const obj = Object.create(null); + _utils_js__WEBPACK_IMPORTED_MODULE_0__["default"].forEach(this, (value, header) => { + value != null && value !== false && (obj[header] = asStrings && _utils_js__WEBPACK_IMPORTED_MODULE_0__["default"].isArray(value) ? value.join(', ') : value); + }); + return obj; + } + [Symbol.iterator]() { + return Object.entries(this.toJSON())[Symbol.iterator](); + } -var RESOURCEPATH = "/stemming"; -var Stemming = /*#__PURE__*/function () { - function Stemming(apiCall) { - (0,_babel_runtime_helpers_classCallCheck__WEBPACK_IMPORTED_MODULE_0__["default"])(this, Stemming); - (0,_babel_runtime_helpers_defineProperty__WEBPACK_IMPORTED_MODULE_2__["default"])(this, "individualStemmingDictionaries", {}); - this.apiCall = apiCall; - this.apiCall = apiCall; - this._stemmingDictionaries = new _StemmingDictionaries__WEBPACK_IMPORTED_MODULE_3__["default"](this.apiCall); + toString() { + return Object.entries(this.toJSON()).map(([header, value]) => header + ': ' + value).join('\n'); } - (0,_babel_runtime_helpers_createClass__WEBPACK_IMPORTED_MODULE_1__["default"])(Stemming, [{ - key: "dictionaries", - value: function dictionaries(id) { - if (id === undefined) { - return this._stemmingDictionaries; - } else { - if (this.individualStemmingDictionaries[id] === undefined) { - this.individualStemmingDictionaries[id] = new _StemmingDictionary__WEBPACK_IMPORTED_MODULE_4__["default"](id, this.apiCall); - } - return this.individualStemmingDictionaries[id]; - } - } - }], [{ - key: "RESOURCEPATH", - get: function get() { - return RESOURCEPATH; - } - }]); - return Stemming; -}(); + get [Symbol.toStringTag]() { + return 'AxiosHeaders'; + } -/***/ }), + static from(thing) { + return thing instanceof this ? thing : new this(thing); + } -/***/ "./src/Typesense/StemmingDictionaries.ts": -/*!***********************************************!*\ - !*** ./src/Typesense/StemmingDictionaries.ts ***! - \***********************************************/ -/***/ ((__unused_webpack_module, __webpack_exports__, __webpack_require__) => { + static concat(first, ...targets) { + const computed = new this(first); -"use strict"; -__webpack_require__.r(__webpack_exports__); -/* harmony export */ __webpack_require__.d(__webpack_exports__, { -/* harmony export */ "default": () => (/* binding */ StemmingDictionaries) -/* harmony export */ }); -/* harmony import */ var _babel_runtime_helpers_asyncToGenerator__WEBPACK_IMPORTED_MODULE_0__ = __webpack_require__(/*! @babel/runtime/helpers/asyncToGenerator */ "./node_modules/@babel/runtime/helpers/esm/asyncToGenerator.js"); -/* harmony import */ var _babel_runtime_helpers_classCallCheck__WEBPACK_IMPORTED_MODULE_1__ = __webpack_require__(/*! @babel/runtime/helpers/classCallCheck */ "./node_modules/@babel/runtime/helpers/esm/classCallCheck.js"); -/* harmony import */ var _babel_runtime_helpers_createClass__WEBPACK_IMPORTED_MODULE_2__ = __webpack_require__(/*! @babel/runtime/helpers/createClass */ "./node_modules/@babel/runtime/helpers/esm/createClass.js"); -/* harmony import */ var _babel_runtime_regenerator__WEBPACK_IMPORTED_MODULE_3__ = __webpack_require__(/*! @babel/runtime/regenerator */ "./node_modules/@babel/runtime/regenerator/index.js"); -/* harmony import */ var _babel_runtime_regenerator__WEBPACK_IMPORTED_MODULE_3___default = /*#__PURE__*/__webpack_require__.n(_babel_runtime_regenerator__WEBPACK_IMPORTED_MODULE_3__); + targets.forEach((target) => computed.set(target)); + return computed; + } + static accessor(header) { + const internals = this[$internals] = (this[$internals] = { + accessors: {} + }); + const accessors = internals.accessors; + const prototype = this.prototype; -var RESOURCEPATH = "/stemming/dictionaries"; -var StemmingDictionaries = /*#__PURE__*/function () { - function StemmingDictionaries(apiCall) { - (0,_babel_runtime_helpers_classCallCheck__WEBPACK_IMPORTED_MODULE_1__["default"])(this, StemmingDictionaries); - this.apiCall = apiCall; - this.apiCall = apiCall; - } - (0,_babel_runtime_helpers_createClass__WEBPACK_IMPORTED_MODULE_2__["default"])(StemmingDictionaries, [{ - key: "upsert", - value: function () { - var _upsert = (0,_babel_runtime_helpers_asyncToGenerator__WEBPACK_IMPORTED_MODULE_0__["default"])( /*#__PURE__*/_babel_runtime_regenerator__WEBPACK_IMPORTED_MODULE_3___default().mark(function _callee(id, wordRootCombinations) { - var wordRootCombinationsInJSONLFormat, resultsInJSONLFormat; - return _babel_runtime_regenerator__WEBPACK_IMPORTED_MODULE_3___default().wrap(function _callee$(_context) { - while (1) switch (_context.prev = _context.next) { - case 0: - wordRootCombinationsInJSONLFormat = Array.isArray(wordRootCombinations) ? wordRootCombinations.map(function (combo) { - return JSON.stringify(combo); - }).join("\n") : wordRootCombinations; - _context.next = 3; - return this.apiCall.performRequest("post", this.endpointPath("import"), { - queryParameters: { - id: id - }, - bodyParameters: wordRootCombinationsInJSONLFormat, - additionalHeaders: { - "Content-Type": "text/plain" - }, - skipConnectionTimeout: true - }); - case 3: - resultsInJSONLFormat = _context.sent; - return _context.abrupt("return", Array.isArray(wordRootCombinations) ? resultsInJSONLFormat.split("\n").map(function (line) { - return JSON.parse(line); - }) : resultsInJSONLFormat); - case 5: - case "end": - return _context.stop(); - } - }, _callee, this); - })); - function upsert(_x, _x2) { - return _upsert.apply(this, arguments); - } - return upsert; - }() - }, { - key: "retrieve", - value: function () { - var _retrieve = (0,_babel_runtime_helpers_asyncToGenerator__WEBPACK_IMPORTED_MODULE_0__["default"])( /*#__PURE__*/_babel_runtime_regenerator__WEBPACK_IMPORTED_MODULE_3___default().mark(function _callee2() { - return _babel_runtime_regenerator__WEBPACK_IMPORTED_MODULE_3___default().wrap(function _callee2$(_context2) { - while (1) switch (_context2.prev = _context2.next) { - case 0: - return _context2.abrupt("return", this.apiCall.get(this.endpointPath())); - case 1: - case "end": - return _context2.stop(); - } - }, _callee2, this); - })); - function retrieve() { - return _retrieve.apply(this, arguments); + function defineAccessor(_header) { + const lHeader = normalizeHeader(_header); + + if (!accessors[lHeader]) { + buildAccessors(prototype, _header); + accessors[lHeader] = true; } - return retrieve; - }() - }, { - key: "endpointPath", - value: function endpointPath(operation) { - return operation === undefined ? "".concat(StemmingDictionaries.RESOURCEPATH) : "".concat(StemmingDictionaries.RESOURCEPATH, "/").concat(encodeURIComponent(operation)); } - }], [{ - key: "RESOURCEPATH", - get: function get() { - return RESOURCEPATH; + + _utils_js__WEBPACK_IMPORTED_MODULE_0__["default"].isArray(header) ? header.forEach(defineAccessor) : defineAccessor(header); + + return this; + } +} + +AxiosHeaders.accessor(['Content-Type', 'Content-Length', 'Accept', 'Accept-Encoding', 'User-Agent', 'Authorization']); + +// reserved names hotfix +_utils_js__WEBPACK_IMPORTED_MODULE_0__["default"].reduceDescriptors(AxiosHeaders.prototype, ({value}, key) => { + let mapped = key[0].toUpperCase() + key.slice(1); // map `set` => `Set` + return { + get: () => value, + set(headerValue) { + this[mapped] = headerValue; } - }]); - return StemmingDictionaries; -}(); + } +}); + +_utils_js__WEBPACK_IMPORTED_MODULE_0__["default"].freezeMethods(AxiosHeaders); + +/* harmony default export */ const __WEBPACK_DEFAULT_EXPORT__ = (AxiosHeaders); /***/ }), -/***/ "./src/Typesense/StemmingDictionary.ts": -/*!*********************************************!*\ - !*** ./src/Typesense/StemmingDictionary.ts ***! - \*********************************************/ -/***/ ((__unused_webpack_module, __webpack_exports__, __webpack_require__) => { +/***/ "./node_modules/.pnpm/axios@1.7.9/node_modules/axios/lib/core/InterceptorManager.js": +/*!******************************************************************************************!*\ + !*** ./node_modules/.pnpm/axios@1.7.9/node_modules/axios/lib/core/InterceptorManager.js ***! + \******************************************************************************************/ +/***/ ((__unused_webpack___webpack_module__, __webpack_exports__, __webpack_require__) => { "use strict"; __webpack_require__.r(__webpack_exports__); /* harmony export */ __webpack_require__.d(__webpack_exports__, { -/* harmony export */ "default": () => (/* binding */ StemmingDictionary) +/* harmony export */ "default": () => (__WEBPACK_DEFAULT_EXPORT__) /* harmony export */ }); -/* harmony import */ var _babel_runtime_helpers_asyncToGenerator__WEBPACK_IMPORTED_MODULE_0__ = __webpack_require__(/*! @babel/runtime/helpers/asyncToGenerator */ "./node_modules/@babel/runtime/helpers/esm/asyncToGenerator.js"); -/* harmony import */ var _babel_runtime_helpers_classCallCheck__WEBPACK_IMPORTED_MODULE_1__ = __webpack_require__(/*! @babel/runtime/helpers/classCallCheck */ "./node_modules/@babel/runtime/helpers/esm/classCallCheck.js"); -/* harmony import */ var _babel_runtime_helpers_createClass__WEBPACK_IMPORTED_MODULE_2__ = __webpack_require__(/*! @babel/runtime/helpers/createClass */ "./node_modules/@babel/runtime/helpers/esm/createClass.js"); -/* harmony import */ var _babel_runtime_regenerator__WEBPACK_IMPORTED_MODULE_3__ = __webpack_require__(/*! @babel/runtime/regenerator */ "./node_modules/@babel/runtime/regenerator/index.js"); -/* harmony import */ var _babel_runtime_regenerator__WEBPACK_IMPORTED_MODULE_3___default = /*#__PURE__*/__webpack_require__.n(_babel_runtime_regenerator__WEBPACK_IMPORTED_MODULE_3__); -/* harmony import */ var _StemmingDictionaries__WEBPACK_IMPORTED_MODULE_4__ = __webpack_require__(/*! ./StemmingDictionaries */ "./src/Typesense/StemmingDictionaries.ts"); +/* harmony import */ var _utils_js__WEBPACK_IMPORTED_MODULE_0__ = __webpack_require__(/*! ./../utils.js */ "./node_modules/.pnpm/axios@1.7.9/node_modules/axios/lib/utils.js"); +class InterceptorManager { + constructor() { + this.handlers = []; + } -var StemmingDictionary = /*#__PURE__*/function () { - function StemmingDictionary(id, apiCall) { - (0,_babel_runtime_helpers_classCallCheck__WEBPACK_IMPORTED_MODULE_1__["default"])(this, StemmingDictionary); - this.id = id; - this.apiCall = apiCall; + /** + * Add a new interceptor to the stack + * + * @param {Function} fulfilled The function to handle `then` for a `Promise` + * @param {Function} rejected The function to handle `reject` for a `Promise` + * + * @return {Number} An ID used to remove interceptor later + */ + use(fulfilled, rejected, options) { + this.handlers.push({ + fulfilled, + rejected, + synchronous: options ? options.synchronous : false, + runWhen: options ? options.runWhen : null + }); + return this.handlers.length - 1; } - (0,_babel_runtime_helpers_createClass__WEBPACK_IMPORTED_MODULE_2__["default"])(StemmingDictionary, [{ - key: "retrieve", - value: function () { - var _retrieve = (0,_babel_runtime_helpers_asyncToGenerator__WEBPACK_IMPORTED_MODULE_0__["default"])( /*#__PURE__*/_babel_runtime_regenerator__WEBPACK_IMPORTED_MODULE_3___default().mark(function _callee() { - return _babel_runtime_regenerator__WEBPACK_IMPORTED_MODULE_3___default().wrap(function _callee$(_context) { - while (1) switch (_context.prev = _context.next) { - case 0: - return _context.abrupt("return", this.apiCall.get(this.endpointPath())); - case 1: - case "end": - return _context.stop(); - } - }, _callee, this); - })); - function retrieve() { - return _retrieve.apply(this, arguments); - } - return retrieve; - }() - }, { - key: "endpointPath", - value: function endpointPath() { - return "".concat(_StemmingDictionaries__WEBPACK_IMPORTED_MODULE_4__["default"].RESOURCEPATH, "/").concat(encodeURIComponent(this.id)); + + /** + * Remove an interceptor from the stack + * + * @param {Number} id The ID that was returned by `use` + * + * @returns {Boolean} `true` if the interceptor was removed, `false` otherwise + */ + eject(id) { + if (this.handlers[id]) { + this.handlers[id] = null; + } + } + + /** + * Clear all interceptors from the stack + * + * @returns {void} + */ + clear() { + if (this.handlers) { + this.handlers = []; } - }]); - return StemmingDictionary; -}(); + } + + /** + * Iterate over all the registered interceptors + * + * This method is particularly useful for skipping over any + * interceptors that may have become `null` calling `eject`. + * + * @param {Function} fn The function to call for each interceptor + * + * @returns {void} + */ + forEach(fn) { + _utils_js__WEBPACK_IMPORTED_MODULE_0__["default"].forEach(this.handlers, function forEachHandler(h) { + if (h !== null) { + fn(h); + } + }); + } +} + +/* harmony default export */ const __WEBPACK_DEFAULT_EXPORT__ = (InterceptorManager); /***/ }), -/***/ "./src/Typesense/Stopword.ts": -/*!***********************************!*\ - !*** ./src/Typesense/Stopword.ts ***! - \***********************************/ -/***/ ((__unused_webpack_module, __webpack_exports__, __webpack_require__) => { +/***/ "./node_modules/.pnpm/axios@1.7.9/node_modules/axios/lib/core/buildFullPath.js": +/*!*************************************************************************************!*\ + !*** ./node_modules/.pnpm/axios@1.7.9/node_modules/axios/lib/core/buildFullPath.js ***! + \*************************************************************************************/ +/***/ ((__unused_webpack___webpack_module__, __webpack_exports__, __webpack_require__) => { "use strict"; __webpack_require__.r(__webpack_exports__); /* harmony export */ __webpack_require__.d(__webpack_exports__, { -/* harmony export */ "default": () => (/* binding */ Stopword) +/* harmony export */ "default": () => (/* binding */ buildFullPath) /* harmony export */ }); -/* harmony import */ var _babel_runtime_helpers_asyncToGenerator__WEBPACK_IMPORTED_MODULE_0__ = __webpack_require__(/*! @babel/runtime/helpers/asyncToGenerator */ "./node_modules/@babel/runtime/helpers/esm/asyncToGenerator.js"); -/* harmony import */ var _babel_runtime_helpers_classCallCheck__WEBPACK_IMPORTED_MODULE_1__ = __webpack_require__(/*! @babel/runtime/helpers/classCallCheck */ "./node_modules/@babel/runtime/helpers/esm/classCallCheck.js"); -/* harmony import */ var _babel_runtime_helpers_createClass__WEBPACK_IMPORTED_MODULE_2__ = __webpack_require__(/*! @babel/runtime/helpers/createClass */ "./node_modules/@babel/runtime/helpers/esm/createClass.js"); -/* harmony import */ var _babel_runtime_regenerator__WEBPACK_IMPORTED_MODULE_3__ = __webpack_require__(/*! @babel/runtime/regenerator */ "./node_modules/@babel/runtime/regenerator/index.js"); -/* harmony import */ var _babel_runtime_regenerator__WEBPACK_IMPORTED_MODULE_3___default = /*#__PURE__*/__webpack_require__.n(_babel_runtime_regenerator__WEBPACK_IMPORTED_MODULE_3__); -/* harmony import */ var _Stopwords__WEBPACK_IMPORTED_MODULE_4__ = __webpack_require__(/*! ./Stopwords */ "./src/Typesense/Stopwords.ts"); +/* harmony import */ var _helpers_isAbsoluteURL_js__WEBPACK_IMPORTED_MODULE_0__ = __webpack_require__(/*! ../helpers/isAbsoluteURL.js */ "./node_modules/.pnpm/axios@1.7.9/node_modules/axios/lib/helpers/isAbsoluteURL.js"); +/* harmony import */ var _helpers_combineURLs_js__WEBPACK_IMPORTED_MODULE_1__ = __webpack_require__(/*! ../helpers/combineURLs.js */ "./node_modules/.pnpm/axios@1.7.9/node_modules/axios/lib/helpers/combineURLs.js"); -var Stopword = /*#__PURE__*/function () { - function Stopword(stopwordId, apiCall) { - (0,_babel_runtime_helpers_classCallCheck__WEBPACK_IMPORTED_MODULE_1__["default"])(this, Stopword); - this.stopwordId = stopwordId; - this.apiCall = apiCall; +/** + * Creates a new URL by combining the baseURL with the requestedURL, + * only when the requestedURL is not already an absolute URL. + * If the requestURL is absolute, this function returns the requestedURL untouched. + * + * @param {string} baseURL The base URL + * @param {string} requestedURL Absolute or relative URL to combine + * + * @returns {string} The combined full path + */ +function buildFullPath(baseURL, requestedURL) { + if (baseURL && !(0,_helpers_isAbsoluteURL_js__WEBPACK_IMPORTED_MODULE_0__["default"])(requestedURL)) { + return (0,_helpers_combineURLs_js__WEBPACK_IMPORTED_MODULE_1__["default"])(baseURL, requestedURL); } - (0,_babel_runtime_helpers_createClass__WEBPACK_IMPORTED_MODULE_2__["default"])(Stopword, [{ - key: "retrieve", - value: function () { - var _retrieve = (0,_babel_runtime_helpers_asyncToGenerator__WEBPACK_IMPORTED_MODULE_0__["default"])( /*#__PURE__*/_babel_runtime_regenerator__WEBPACK_IMPORTED_MODULE_3___default().mark(function _callee() { - return _babel_runtime_regenerator__WEBPACK_IMPORTED_MODULE_3___default().wrap(function _callee$(_context) { - while (1) switch (_context.prev = _context.next) { - case 0: - return _context.abrupt("return", this.apiCall.get(this.endpointPath())); - case 1: - case "end": - return _context.stop(); - } - }, _callee, this); - })); - function retrieve() { - return _retrieve.apply(this, arguments); - } - return retrieve; - }() - }, { - key: "delete", - value: function () { - var _delete2 = (0,_babel_runtime_helpers_asyncToGenerator__WEBPACK_IMPORTED_MODULE_0__["default"])( /*#__PURE__*/_babel_runtime_regenerator__WEBPACK_IMPORTED_MODULE_3___default().mark(function _callee2() { - return _babel_runtime_regenerator__WEBPACK_IMPORTED_MODULE_3___default().wrap(function _callee2$(_context2) { - while (1) switch (_context2.prev = _context2.next) { - case 0: - return _context2.abrupt("return", this.apiCall.delete(this.endpointPath())); - case 1: - case "end": - return _context2.stop(); - } - }, _callee2, this); - })); - function _delete() { - return _delete2.apply(this, arguments); - } - return _delete; - }() - }, { - key: "endpointPath", - value: function endpointPath() { - return "".concat(_Stopwords__WEBPACK_IMPORTED_MODULE_4__["default"].RESOURCEPATH, "/").concat(encodeURIComponent(this.stopwordId)); - } - }]); - return Stopword; -}(); + return requestedURL; +} /***/ }), -/***/ "./src/Typesense/Stopwords.ts": -/*!************************************!*\ - !*** ./src/Typesense/Stopwords.ts ***! - \************************************/ -/***/ ((__unused_webpack_module, __webpack_exports__, __webpack_require__) => { +/***/ "./node_modules/.pnpm/axios@1.7.9/node_modules/axios/lib/core/dispatchRequest.js": +/*!***************************************************************************************!*\ + !*** ./node_modules/.pnpm/axios@1.7.9/node_modules/axios/lib/core/dispatchRequest.js ***! + \***************************************************************************************/ +/***/ ((__unused_webpack___webpack_module__, __webpack_exports__, __webpack_require__) => { "use strict"; __webpack_require__.r(__webpack_exports__); /* harmony export */ __webpack_require__.d(__webpack_exports__, { -/* harmony export */ "default": () => (/* binding */ Stopwords) +/* harmony export */ "default": () => (/* binding */ dispatchRequest) /* harmony export */ }); -/* harmony import */ var _babel_runtime_helpers_asyncToGenerator__WEBPACK_IMPORTED_MODULE_0__ = __webpack_require__(/*! @babel/runtime/helpers/asyncToGenerator */ "./node_modules/@babel/runtime/helpers/esm/asyncToGenerator.js"); -/* harmony import */ var _babel_runtime_helpers_classCallCheck__WEBPACK_IMPORTED_MODULE_1__ = __webpack_require__(/*! @babel/runtime/helpers/classCallCheck */ "./node_modules/@babel/runtime/helpers/esm/classCallCheck.js"); -/* harmony import */ var _babel_runtime_helpers_createClass__WEBPACK_IMPORTED_MODULE_2__ = __webpack_require__(/*! @babel/runtime/helpers/createClass */ "./node_modules/@babel/runtime/helpers/esm/createClass.js"); -/* harmony import */ var _babel_runtime_regenerator__WEBPACK_IMPORTED_MODULE_3__ = __webpack_require__(/*! @babel/runtime/regenerator */ "./node_modules/@babel/runtime/regenerator/index.js"); -/* harmony import */ var _babel_runtime_regenerator__WEBPACK_IMPORTED_MODULE_3___default = /*#__PURE__*/__webpack_require__.n(_babel_runtime_regenerator__WEBPACK_IMPORTED_MODULE_3__); +/* harmony import */ var _transformData_js__WEBPACK_IMPORTED_MODULE_2__ = __webpack_require__(/*! ./transformData.js */ "./node_modules/.pnpm/axios@1.7.9/node_modules/axios/lib/core/transformData.js"); +/* harmony import */ var _cancel_isCancel_js__WEBPACK_IMPORTED_MODULE_5__ = __webpack_require__(/*! ../cancel/isCancel.js */ "./node_modules/.pnpm/axios@1.7.9/node_modules/axios/lib/cancel/isCancel.js"); +/* harmony import */ var _defaults_index_js__WEBPACK_IMPORTED_MODULE_4__ = __webpack_require__(/*! ../defaults/index.js */ "./node_modules/.pnpm/axios@1.7.9/node_modules/axios/lib/defaults/index.js"); +/* harmony import */ var _cancel_CanceledError_js__WEBPACK_IMPORTED_MODULE_0__ = __webpack_require__(/*! ../cancel/CanceledError.js */ "./node_modules/.pnpm/axios@1.7.9/node_modules/axios/lib/cancel/CanceledError.js"); +/* harmony import */ var _core_AxiosHeaders_js__WEBPACK_IMPORTED_MODULE_1__ = __webpack_require__(/*! ../core/AxiosHeaders.js */ "./node_modules/.pnpm/axios@1.7.9/node_modules/axios/lib/core/AxiosHeaders.js"); +/* harmony import */ var _adapters_adapters_js__WEBPACK_IMPORTED_MODULE_3__ = __webpack_require__(/*! ../adapters/adapters.js */ "./node_modules/.pnpm/axios@1.7.9/node_modules/axios/lib/adapters/adapters.js"); -var RESOURCEPATH = "/stopwords"; -var Stopwords = /*#__PURE__*/function () { - function Stopwords(apiCall) { - (0,_babel_runtime_helpers_classCallCheck__WEBPACK_IMPORTED_MODULE_1__["default"])(this, Stopwords); - this.apiCall = apiCall; - } - (0,_babel_runtime_helpers_createClass__WEBPACK_IMPORTED_MODULE_2__["default"])(Stopwords, [{ - key: "upsert", - value: function () { - var _upsert = (0,_babel_runtime_helpers_asyncToGenerator__WEBPACK_IMPORTED_MODULE_0__["default"])( /*#__PURE__*/_babel_runtime_regenerator__WEBPACK_IMPORTED_MODULE_3___default().mark(function _callee(stopwordId, params) { - return _babel_runtime_regenerator__WEBPACK_IMPORTED_MODULE_3___default().wrap(function _callee$(_context) { - while (1) switch (_context.prev = _context.next) { - case 0: - return _context.abrupt("return", this.apiCall.put(this.endpointPath(stopwordId), params)); - case 1: - case "end": - return _context.stop(); - } - }, _callee, this); - })); - function upsert(_x, _x2) { - return _upsert.apply(this, arguments); - } - return upsert; - }() - }, { - key: "retrieve", - value: function () { - var _retrieve = (0,_babel_runtime_helpers_asyncToGenerator__WEBPACK_IMPORTED_MODULE_0__["default"])( /*#__PURE__*/_babel_runtime_regenerator__WEBPACK_IMPORTED_MODULE_3___default().mark(function _callee2() { - return _babel_runtime_regenerator__WEBPACK_IMPORTED_MODULE_3___default().wrap(function _callee2$(_context2) { - while (1) switch (_context2.prev = _context2.next) { - case 0: - return _context2.abrupt("return", this.apiCall.get(this.endpointPath())); - case 1: - case "end": - return _context2.stop(); - } - }, _callee2, this); - })); - function retrieve() { - return _retrieve.apply(this, arguments); - } - return retrieve; - }() - }, { - key: "endpointPath", - value: function endpointPath(operation) { - return "".concat(Stopwords.RESOURCEPATH).concat(operation === undefined ? "" : "/" + encodeURIComponent(operation)); - } - }], [{ - key: "RESOURCEPATH", - get: function get() { - return RESOURCEPATH; - } - }]); - return Stopwords; -}(); -/***/ }), -/***/ "./src/Typesense/Synonym.ts": -/*!**********************************!*\ - !*** ./src/Typesense/Synonym.ts ***! - \**********************************/ -/***/ ((__unused_webpack_module, __webpack_exports__, __webpack_require__) => { -"use strict"; -__webpack_require__.r(__webpack_exports__); -/* harmony export */ __webpack_require__.d(__webpack_exports__, { -/* harmony export */ "default": () => (/* binding */ Synonym) -/* harmony export */ }); -/* harmony import */ var _babel_runtime_helpers_asyncToGenerator__WEBPACK_IMPORTED_MODULE_0__ = __webpack_require__(/*! @babel/runtime/helpers/asyncToGenerator */ "./node_modules/@babel/runtime/helpers/esm/asyncToGenerator.js"); -/* harmony import */ var _babel_runtime_helpers_classCallCheck__WEBPACK_IMPORTED_MODULE_1__ = __webpack_require__(/*! @babel/runtime/helpers/classCallCheck */ "./node_modules/@babel/runtime/helpers/esm/classCallCheck.js"); -/* harmony import */ var _babel_runtime_helpers_createClass__WEBPACK_IMPORTED_MODULE_2__ = __webpack_require__(/*! @babel/runtime/helpers/createClass */ "./node_modules/@babel/runtime/helpers/esm/createClass.js"); -/* harmony import */ var _babel_runtime_regenerator__WEBPACK_IMPORTED_MODULE_3__ = __webpack_require__(/*! @babel/runtime/regenerator */ "./node_modules/@babel/runtime/regenerator/index.js"); -/* harmony import */ var _babel_runtime_regenerator__WEBPACK_IMPORTED_MODULE_3___default = /*#__PURE__*/__webpack_require__.n(_babel_runtime_regenerator__WEBPACK_IMPORTED_MODULE_3__); -/* harmony import */ var _Collections__WEBPACK_IMPORTED_MODULE_4__ = __webpack_require__(/*! ./Collections */ "./src/Typesense/Collections.ts"); -/* harmony import */ var _Synonyms__WEBPACK_IMPORTED_MODULE_5__ = __webpack_require__(/*! ./Synonyms */ "./src/Typesense/Synonyms.ts"); +/** + * Throws a `CanceledError` if cancellation has been requested. + * + * @param {Object} config The config that is to be used for the request + * + * @returns {void} + */ +function throwIfCancellationRequested(config) { + if (config.cancelToken) { + config.cancelToken.throwIfRequested(); + } + if (config.signal && config.signal.aborted) { + throw new _cancel_CanceledError_js__WEBPACK_IMPORTED_MODULE_0__["default"](null, config); + } +} +/** + * Dispatch a request to the server using the configured adapter. + * + * @param {object} config The config that is to be used for the request + * + * @returns {Promise} The Promise to be fulfilled + */ +function dispatchRequest(config) { + throwIfCancellationRequested(config); + config.headers = _core_AxiosHeaders_js__WEBPACK_IMPORTED_MODULE_1__["default"].from(config.headers); + // Transform request data + config.data = _transformData_js__WEBPACK_IMPORTED_MODULE_2__["default"].call( + config, + config.transformRequest + ); -var Synonym = /*#__PURE__*/function () { - function Synonym(collectionName, synonymId, apiCall) { - (0,_babel_runtime_helpers_classCallCheck__WEBPACK_IMPORTED_MODULE_1__["default"])(this, Synonym); - this.collectionName = collectionName; - this.synonymId = synonymId; - this.apiCall = apiCall; + if (['post', 'put', 'patch'].indexOf(config.method) !== -1) { + config.headers.setContentType('application/x-www-form-urlencoded', false); } - (0,_babel_runtime_helpers_createClass__WEBPACK_IMPORTED_MODULE_2__["default"])(Synonym, [{ - key: "retrieve", - value: function () { - var _retrieve = (0,_babel_runtime_helpers_asyncToGenerator__WEBPACK_IMPORTED_MODULE_0__["default"])( /*#__PURE__*/_babel_runtime_regenerator__WEBPACK_IMPORTED_MODULE_3___default().mark(function _callee() { - return _babel_runtime_regenerator__WEBPACK_IMPORTED_MODULE_3___default().wrap(function _callee$(_context) { - while (1) switch (_context.prev = _context.next) { - case 0: - return _context.abrupt("return", this.apiCall.get(this.endpointPath())); - case 1: - case "end": - return _context.stop(); - } - }, _callee, this); - })); - function retrieve() { - return _retrieve.apply(this, arguments); - } - return retrieve; - }() - }, { - key: "delete", - value: function () { - var _delete2 = (0,_babel_runtime_helpers_asyncToGenerator__WEBPACK_IMPORTED_MODULE_0__["default"])( /*#__PURE__*/_babel_runtime_regenerator__WEBPACK_IMPORTED_MODULE_3___default().mark(function _callee2() { - return _babel_runtime_regenerator__WEBPACK_IMPORTED_MODULE_3___default().wrap(function _callee2$(_context2) { - while (1) switch (_context2.prev = _context2.next) { - case 0: - return _context2.abrupt("return", this.apiCall.delete(this.endpointPath())); - case 1: - case "end": - return _context2.stop(); - } - }, _callee2, this); - })); - function _delete() { - return _delete2.apply(this, arguments); + + const adapter = _adapters_adapters_js__WEBPACK_IMPORTED_MODULE_3__["default"].getAdapter(config.adapter || _defaults_index_js__WEBPACK_IMPORTED_MODULE_4__["default"].adapter); + + return adapter(config).then(function onAdapterResolution(response) { + throwIfCancellationRequested(config); + + // Transform response data + response.data = _transformData_js__WEBPACK_IMPORTED_MODULE_2__["default"].call( + config, + config.transformResponse, + response + ); + + response.headers = _core_AxiosHeaders_js__WEBPACK_IMPORTED_MODULE_1__["default"].from(response.headers); + + return response; + }, function onAdapterRejection(reason) { + if (!(0,_cancel_isCancel_js__WEBPACK_IMPORTED_MODULE_5__["default"])(reason)) { + throwIfCancellationRequested(config); + + // Transform response data + if (reason && reason.response) { + reason.response.data = _transformData_js__WEBPACK_IMPORTED_MODULE_2__["default"].call( + config, + config.transformResponse, + reason.response + ); + reason.response.headers = _core_AxiosHeaders_js__WEBPACK_IMPORTED_MODULE_1__["default"].from(reason.response.headers); } - return _delete; - }() - }, { - key: "endpointPath", - value: function endpointPath() { - return "".concat(_Collections__WEBPACK_IMPORTED_MODULE_4__["default"].RESOURCEPATH, "/").concat(encodeURIComponent(this.collectionName)).concat(_Synonyms__WEBPACK_IMPORTED_MODULE_5__["default"].RESOURCEPATH, "/").concat(encodeURIComponent(this.synonymId)); } - }]); - return Synonym; -}(); + + return Promise.reject(reason); + }); +} /***/ }), -/***/ "./src/Typesense/Synonyms.ts": -/*!***********************************!*\ - !*** ./src/Typesense/Synonyms.ts ***! - \***********************************/ -/***/ ((__unused_webpack_module, __webpack_exports__, __webpack_require__) => { +/***/ "./node_modules/.pnpm/axios@1.7.9/node_modules/axios/lib/core/mergeConfig.js": +/*!***********************************************************************************!*\ + !*** ./node_modules/.pnpm/axios@1.7.9/node_modules/axios/lib/core/mergeConfig.js ***! + \***********************************************************************************/ +/***/ ((__unused_webpack___webpack_module__, __webpack_exports__, __webpack_require__) => { "use strict"; __webpack_require__.r(__webpack_exports__); /* harmony export */ __webpack_require__.d(__webpack_exports__, { -/* harmony export */ "default": () => (/* binding */ Synonyms) +/* harmony export */ "default": () => (/* binding */ mergeConfig) /* harmony export */ }); -/* harmony import */ var _babel_runtime_helpers_asyncToGenerator__WEBPACK_IMPORTED_MODULE_0__ = __webpack_require__(/*! @babel/runtime/helpers/asyncToGenerator */ "./node_modules/@babel/runtime/helpers/esm/asyncToGenerator.js"); -/* harmony import */ var _babel_runtime_helpers_classCallCheck__WEBPACK_IMPORTED_MODULE_1__ = __webpack_require__(/*! @babel/runtime/helpers/classCallCheck */ "./node_modules/@babel/runtime/helpers/esm/classCallCheck.js"); -/* harmony import */ var _babel_runtime_helpers_createClass__WEBPACK_IMPORTED_MODULE_2__ = __webpack_require__(/*! @babel/runtime/helpers/createClass */ "./node_modules/@babel/runtime/helpers/esm/createClass.js"); -/* harmony import */ var _babel_runtime_regenerator__WEBPACK_IMPORTED_MODULE_3__ = __webpack_require__(/*! @babel/runtime/regenerator */ "./node_modules/@babel/runtime/regenerator/index.js"); -/* harmony import */ var _babel_runtime_regenerator__WEBPACK_IMPORTED_MODULE_3___default = /*#__PURE__*/__webpack_require__.n(_babel_runtime_regenerator__WEBPACK_IMPORTED_MODULE_3__); -/* harmony import */ var _Collections__WEBPACK_IMPORTED_MODULE_4__ = __webpack_require__(/*! ./Collections */ "./src/Typesense/Collections.ts"); +/* harmony import */ var _utils_js__WEBPACK_IMPORTED_MODULE_1__ = __webpack_require__(/*! ../utils.js */ "./node_modules/.pnpm/axios@1.7.9/node_modules/axios/lib/utils.js"); +/* harmony import */ var _AxiosHeaders_js__WEBPACK_IMPORTED_MODULE_0__ = __webpack_require__(/*! ./AxiosHeaders.js */ "./node_modules/.pnpm/axios@1.7.9/node_modules/axios/lib/core/AxiosHeaders.js"); -var RESOURCEPATH = "/synonyms"; -var Synonyms = /*#__PURE__*/function () { - function Synonyms(collectionName, apiCall) { - (0,_babel_runtime_helpers_classCallCheck__WEBPACK_IMPORTED_MODULE_1__["default"])(this, Synonyms); - this.collectionName = collectionName; - this.apiCall = apiCall; +const headersToObject = (thing) => thing instanceof _AxiosHeaders_js__WEBPACK_IMPORTED_MODULE_0__["default"] ? { ...thing } : thing; + +/** + * Config-specific merge-function which creates a new config-object + * by merging two configuration objects together. + * + * @param {Object} config1 + * @param {Object} config2 + * + * @returns {Object} New object resulting from merging config2 to config1 + */ +function mergeConfig(config1, config2) { + // eslint-disable-next-line no-param-reassign + config2 = config2 || {}; + const config = {}; + + function getMergedValue(target, source, prop, caseless) { + if (_utils_js__WEBPACK_IMPORTED_MODULE_1__["default"].isPlainObject(target) && _utils_js__WEBPACK_IMPORTED_MODULE_1__["default"].isPlainObject(source)) { + return _utils_js__WEBPACK_IMPORTED_MODULE_1__["default"].merge.call({caseless}, target, source); + } else if (_utils_js__WEBPACK_IMPORTED_MODULE_1__["default"].isPlainObject(source)) { + return _utils_js__WEBPACK_IMPORTED_MODULE_1__["default"].merge({}, source); + } else if (_utils_js__WEBPACK_IMPORTED_MODULE_1__["default"].isArray(source)) { + return source.slice(); + } + return source; } - (0,_babel_runtime_helpers_createClass__WEBPACK_IMPORTED_MODULE_2__["default"])(Synonyms, [{ - key: "upsert", - value: function () { - var _upsert = (0,_babel_runtime_helpers_asyncToGenerator__WEBPACK_IMPORTED_MODULE_0__["default"])( /*#__PURE__*/_babel_runtime_regenerator__WEBPACK_IMPORTED_MODULE_3___default().mark(function _callee(synonymId, params) { - return _babel_runtime_regenerator__WEBPACK_IMPORTED_MODULE_3___default().wrap(function _callee$(_context) { - while (1) switch (_context.prev = _context.next) { - case 0: - return _context.abrupt("return", this.apiCall.put(this.endpointPath(synonymId), params)); - case 1: - case "end": - return _context.stop(); - } - }, _callee, this); - })); - function upsert(_x, _x2) { - return _upsert.apply(this, arguments); - } - return upsert; - }() - }, { - key: "retrieve", - value: function () { - var _retrieve = (0,_babel_runtime_helpers_asyncToGenerator__WEBPACK_IMPORTED_MODULE_0__["default"])( /*#__PURE__*/_babel_runtime_regenerator__WEBPACK_IMPORTED_MODULE_3___default().mark(function _callee2() { - return _babel_runtime_regenerator__WEBPACK_IMPORTED_MODULE_3___default().wrap(function _callee2$(_context2) { - while (1) switch (_context2.prev = _context2.next) { - case 0: - return _context2.abrupt("return", this.apiCall.get(this.endpointPath())); - case 1: - case "end": - return _context2.stop(); - } - }, _callee2, this); - })); - function retrieve() { - return _retrieve.apply(this, arguments); - } - return retrieve; - }() - }, { - key: "endpointPath", - value: function endpointPath(operation) { - return "".concat(_Collections__WEBPACK_IMPORTED_MODULE_4__["default"].RESOURCEPATH, "/").concat(encodeURIComponent(this.collectionName)).concat(Synonyms.RESOURCEPATH).concat(operation === undefined ? "" : "/" + encodeURIComponent(operation)); + + // eslint-disable-next-line consistent-return + function mergeDeepProperties(a, b, prop , caseless) { + if (!_utils_js__WEBPACK_IMPORTED_MODULE_1__["default"].isUndefined(b)) { + return getMergedValue(a, b, prop , caseless); + } else if (!_utils_js__WEBPACK_IMPORTED_MODULE_1__["default"].isUndefined(a)) { + return getMergedValue(undefined, a, prop , caseless); } - }], [{ - key: "RESOURCEPATH", - get: function get() { - return RESOURCEPATH; + } + + // eslint-disable-next-line consistent-return + function valueFromConfig2(a, b) { + if (!_utils_js__WEBPACK_IMPORTED_MODULE_1__["default"].isUndefined(b)) { + return getMergedValue(undefined, b); } - }]); - return Synonyms; -}(); + } + + // eslint-disable-next-line consistent-return + function defaultToConfig2(a, b) { + if (!_utils_js__WEBPACK_IMPORTED_MODULE_1__["default"].isUndefined(b)) { + return getMergedValue(undefined, b); + } else if (!_utils_js__WEBPACK_IMPORTED_MODULE_1__["default"].isUndefined(a)) { + return getMergedValue(undefined, a); + } + } + + // eslint-disable-next-line consistent-return + function mergeDirectKeys(a, b, prop) { + if (prop in config2) { + return getMergedValue(a, b); + } else if (prop in config1) { + return getMergedValue(undefined, a); + } + } + + const mergeMap = { + url: valueFromConfig2, + method: valueFromConfig2, + data: valueFromConfig2, + baseURL: defaultToConfig2, + transformRequest: defaultToConfig2, + transformResponse: defaultToConfig2, + paramsSerializer: defaultToConfig2, + timeout: defaultToConfig2, + timeoutMessage: defaultToConfig2, + withCredentials: defaultToConfig2, + withXSRFToken: defaultToConfig2, + adapter: defaultToConfig2, + responseType: defaultToConfig2, + xsrfCookieName: defaultToConfig2, + xsrfHeaderName: defaultToConfig2, + onUploadProgress: defaultToConfig2, + onDownloadProgress: defaultToConfig2, + decompress: defaultToConfig2, + maxContentLength: defaultToConfig2, + maxBodyLength: defaultToConfig2, + beforeRedirect: defaultToConfig2, + transport: defaultToConfig2, + httpAgent: defaultToConfig2, + httpsAgent: defaultToConfig2, + cancelToken: defaultToConfig2, + socketPath: defaultToConfig2, + responseEncoding: defaultToConfig2, + validateStatus: mergeDirectKeys, + headers: (a, b , prop) => mergeDeepProperties(headersToObject(a), headersToObject(b),prop, true) + }; + + _utils_js__WEBPACK_IMPORTED_MODULE_1__["default"].forEach(Object.keys(Object.assign({}, config1, config2)), function computeConfigValue(prop) { + const merge = mergeMap[prop] || mergeDeepProperties; + const configValue = merge(config1[prop], config2[prop], prop); + (_utils_js__WEBPACK_IMPORTED_MODULE_1__["default"].isUndefined(configValue) && merge !== mergeDirectKeys) || (config[prop] = configValue); + }); + + return config; +} /***/ }), -/***/ "./src/Typesense/Utils.ts": -/*!********************************!*\ - !*** ./src/Typesense/Utils.ts ***! - \********************************/ -/***/ ((__unused_webpack_module, __webpack_exports__, __webpack_require__) => { +/***/ "./node_modules/.pnpm/axios@1.7.9/node_modules/axios/lib/core/settle.js": +/*!******************************************************************************!*\ + !*** ./node_modules/.pnpm/axios@1.7.9/node_modules/axios/lib/core/settle.js ***! + \******************************************************************************/ +/***/ ((__unused_webpack___webpack_module__, __webpack_exports__, __webpack_require__) => { "use strict"; __webpack_require__.r(__webpack_exports__); /* harmony export */ __webpack_require__.d(__webpack_exports__, { -/* harmony export */ normalizeArrayableParams: () => (/* binding */ normalizeArrayableParams) +/* harmony export */ "default": () => (/* binding */ settle) /* harmony export */ }); -/* harmony import */ var _babel_runtime_helpers_defineProperty__WEBPACK_IMPORTED_MODULE_0__ = __webpack_require__(/*! @babel/runtime/helpers/defineProperty */ "./node_modules/@babel/runtime/helpers/esm/defineProperty.js"); -/* harmony import */ var _Documents__WEBPACK_IMPORTED_MODULE_1__ = __webpack_require__(/*! ./Documents */ "./src/Typesense/Documents.ts"); +/* harmony import */ var _AxiosError_js__WEBPACK_IMPORTED_MODULE_0__ = __webpack_require__(/*! ./AxiosError.js */ "./node_modules/.pnpm/axios@1.7.9/node_modules/axios/lib/core/AxiosError.js"); -function ownKeys(e, r) { var t = Object.keys(e); if (Object.getOwnPropertySymbols) { var o = Object.getOwnPropertySymbols(e); r && (o = o.filter(function (r) { return Object.getOwnPropertyDescriptor(e, r).enumerable; })), t.push.apply(t, o); } return t; } -function _objectSpread(e) { for (var r = 1; r < arguments.length; r++) { var t = null != arguments[r] ? arguments[r] : {}; r % 2 ? ownKeys(Object(t), !0).forEach(function (r) { (0,_babel_runtime_helpers_defineProperty__WEBPACK_IMPORTED_MODULE_0__["default"])(e, r, t[r]); }) : Object.getOwnPropertyDescriptors ? Object.defineProperties(e, Object.getOwnPropertyDescriptors(t)) : ownKeys(Object(t)).forEach(function (r) { Object.defineProperty(e, r, Object.getOwnPropertyDescriptor(t, r)); }); } return e; } -function hasNoArrayValues(params) { - return Object.keys(_Documents__WEBPACK_IMPORTED_MODULE_1__.arrayableParams).filter(function (key) { - return params[key] !== undefined; - }).every(function (key) { - return isNonArrayValue(params[key]); - }); -} -function normalizeArrayableParams(params) { - var result = _objectSpread({}, params); - var transformedValues = Object.keys(_Documents__WEBPACK_IMPORTED_MODULE_1__.arrayableParams).filter(function (key) { - return Array.isArray(result[key]); - }).map(function (key) { - result[key] = result[key].join(","); - return key; - }); - if (!transformedValues.length && hasNoArrayValues(result)) { - return result; - } - if (!hasNoArrayValues(result)) { - throw new Error("Failed to normalize arrayable params: ".concat(JSON.stringify(result))); + + +/** + * Resolve or reject a Promise based on response status. + * + * @param {Function} resolve A function that resolves the promise. + * @param {Function} reject A function that rejects the promise. + * @param {object} response The response. + * + * @returns {object} The response. + */ +function settle(resolve, reject, response) { + const validateStatus = response.config.validateStatus; + if (!response.status || !validateStatus || validateStatus(response.status)) { + resolve(response); + } else { + reject(new _AxiosError_js__WEBPACK_IMPORTED_MODULE_0__["default"]( + 'Request failed with status code ' + response.status, + [_AxiosError_js__WEBPACK_IMPORTED_MODULE_0__["default"].ERR_BAD_REQUEST, _AxiosError_js__WEBPACK_IMPORTED_MODULE_0__["default"].ERR_BAD_RESPONSE][Math.floor(response.status / 100) - 4], + response.config, + response.request, + response + )); } - return result; -} -function isNonArrayValue(value) { - return !Array.isArray(value); } -/***/ }), -/***/ "./node_modules/loglevel/lib/loglevel.js": -/*!***********************************************!*\ - !*** ./node_modules/loglevel/lib/loglevel.js ***! - \***********************************************/ -/***/ (function(module, exports, __webpack_require__) { +/***/ }), + +/***/ "./node_modules/.pnpm/axios@1.7.9/node_modules/axios/lib/core/transformData.js": +/*!*************************************************************************************!*\ + !*** ./node_modules/.pnpm/axios@1.7.9/node_modules/axios/lib/core/transformData.js ***! + \*************************************************************************************/ +/***/ ((__unused_webpack___webpack_module__, __webpack_exports__, __webpack_require__) => { + +"use strict"; +__webpack_require__.r(__webpack_exports__); +/* harmony export */ __webpack_require__.d(__webpack_exports__, { +/* harmony export */ "default": () => (/* binding */ transformData) +/* harmony export */ }); +/* harmony import */ var _utils_js__WEBPACK_IMPORTED_MODULE_2__ = __webpack_require__(/*! ./../utils.js */ "./node_modules/.pnpm/axios@1.7.9/node_modules/axios/lib/utils.js"); +/* harmony import */ var _defaults_index_js__WEBPACK_IMPORTED_MODULE_0__ = __webpack_require__(/*! ../defaults/index.js */ "./node_modules/.pnpm/axios@1.7.9/node_modules/axios/lib/defaults/index.js"); +/* harmony import */ var _core_AxiosHeaders_js__WEBPACK_IMPORTED_MODULE_1__ = __webpack_require__(/*! ../core/AxiosHeaders.js */ "./node_modules/.pnpm/axios@1.7.9/node_modules/axios/lib/core/AxiosHeaders.js"); + + -var __WEBPACK_AMD_DEFINE_FACTORY__, __WEBPACK_AMD_DEFINE_RESULT__;/* -* loglevel - https://github.com/pimterry/loglevel -* -* Copyright (c) 2013 Tim Perry -* Licensed under the MIT license. -*/ -(function (root, definition) { - "use strict"; - if (true) { - !(__WEBPACK_AMD_DEFINE_FACTORY__ = (definition), - __WEBPACK_AMD_DEFINE_RESULT__ = (typeof __WEBPACK_AMD_DEFINE_FACTORY__ === 'function' ? - (__WEBPACK_AMD_DEFINE_FACTORY__.call(exports, __webpack_require__, exports, module)) : - __WEBPACK_AMD_DEFINE_FACTORY__), - __WEBPACK_AMD_DEFINE_RESULT__ !== undefined && (module.exports = __WEBPACK_AMD_DEFINE_RESULT__)); - } else {} -}(this, function () { - "use strict"; - // Slightly dubious tricks to cut down minimized file size - var noop = function() {}; - var undefinedType = "undefined"; - var isIE = (typeof window !== undefinedType) && (typeof window.navigator !== undefinedType) && ( - /Trident\/|MSIE /.test(window.navigator.userAgent) - ); - var logMethods = [ - "trace", - "debug", - "info", - "warn", - "error" - ]; - var _loggersByName = {}; - var defaultLogger = null; +/** + * Transform the data for a request or a response + * + * @param {Array|Function} fns A single function or Array of functions + * @param {?Object} response The response object + * + * @returns {*} The resulting transformed data + */ +function transformData(fns, response) { + const config = this || _defaults_index_js__WEBPACK_IMPORTED_MODULE_0__["default"]; + const context = response || config; + const headers = _core_AxiosHeaders_js__WEBPACK_IMPORTED_MODULE_1__["default"].from(context.headers); + let data = context.data; - // Cross-browser bind equivalent that works at least back to IE6 - function bindMethod(obj, methodName) { - var method = obj[methodName]; - if (typeof method.bind === 'function') { - return method.bind(obj); - } else { - try { - return Function.prototype.bind.call(method, obj); - } catch (e) { - // Missing bind shim or IE8 + Modernizr, fallback to wrapping - return function() { - return Function.prototype.apply.apply(method, [obj, arguments]); - }; - } - } - } + _utils_js__WEBPACK_IMPORTED_MODULE_2__["default"].forEach(fns, function transform(fn) { + data = fn.call(config, data, headers.normalize(), response ? response.status : undefined); + }); - // Trace() doesn't print the message in IE, so for that case we need to wrap it - function traceForIE() { - if (console.log) { - if (console.log.apply) { - console.log.apply(console, arguments); - } else { - // In old IE, native console methods themselves don't have apply(). - Function.prototype.apply.apply(console.log, [console, arguments]); - } - } - if (console.trace) console.trace(); - } + headers.normalize(); - // Build the best logging method possible for this env - // Wherever possible we want to bind, not wrap, to preserve stack traces - function realMethod(methodName) { - if (methodName === 'debug') { - methodName = 'log'; - } + return data; +} - if (typeof console === undefinedType) { - return false; // No method possible, for now - fixed later by enableLoggingWhenConsoleArrives - } else if (methodName === 'trace' && isIE) { - return traceForIE; - } else if (console[methodName] !== undefined) { - return bindMethod(console, methodName); - } else if (console.log !== undefined) { - return bindMethod(console, 'log'); - } else { - return noop; - } - } - // These private functions always need `this` to be set properly +/***/ }), - function replaceLoggingMethods() { - /*jshint validthis:true */ - var level = this.getLevel(); +/***/ "./node_modules/.pnpm/axios@1.7.9/node_modules/axios/lib/defaults/index.js": +/*!*********************************************************************************!*\ + !*** ./node_modules/.pnpm/axios@1.7.9/node_modules/axios/lib/defaults/index.js ***! + \*********************************************************************************/ +/***/ ((__unused_webpack___webpack_module__, __webpack_exports__, __webpack_require__) => { - // Replace the actual methods. - for (var i = 0; i < logMethods.length; i++) { - var methodName = logMethods[i]; - this[methodName] = (i < level) ? - noop : - this.methodFactory(methodName, level, this.name); - } +"use strict"; +__webpack_require__.r(__webpack_exports__); +/* harmony export */ __webpack_require__.d(__webpack_exports__, { +/* harmony export */ "default": () => (__WEBPACK_DEFAULT_EXPORT__) +/* harmony export */ }); +/* harmony import */ var _utils_js__WEBPACK_IMPORTED_MODULE_0__ = __webpack_require__(/*! ../utils.js */ "./node_modules/.pnpm/axios@1.7.9/node_modules/axios/lib/utils.js"); +/* harmony import */ var _core_AxiosError_js__WEBPACK_IMPORTED_MODULE_5__ = __webpack_require__(/*! ../core/AxiosError.js */ "./node_modules/.pnpm/axios@1.7.9/node_modules/axios/lib/core/AxiosError.js"); +/* harmony import */ var _transitional_js__WEBPACK_IMPORTED_MODULE_1__ = __webpack_require__(/*! ./transitional.js */ "./node_modules/.pnpm/axios@1.7.9/node_modules/axios/lib/defaults/transitional.js"); +/* harmony import */ var _helpers_toFormData_js__WEBPACK_IMPORTED_MODULE_4__ = __webpack_require__(/*! ../helpers/toFormData.js */ "./node_modules/.pnpm/axios@1.7.9/node_modules/axios/lib/helpers/toFormData.js"); +/* harmony import */ var _helpers_toURLEncodedForm_js__WEBPACK_IMPORTED_MODULE_3__ = __webpack_require__(/*! ../helpers/toURLEncodedForm.js */ "./node_modules/.pnpm/axios@1.7.9/node_modules/axios/lib/helpers/toURLEncodedForm.js"); +/* harmony import */ var _platform_index_js__WEBPACK_IMPORTED_MODULE_6__ = __webpack_require__(/*! ../platform/index.js */ "./node_modules/.pnpm/axios@1.7.9/node_modules/axios/lib/platform/index.js"); +/* harmony import */ var _helpers_formDataToJSON_js__WEBPACK_IMPORTED_MODULE_2__ = __webpack_require__(/*! ../helpers/formDataToJSON.js */ "./node_modules/.pnpm/axios@1.7.9/node_modules/axios/lib/helpers/formDataToJSON.js"); - // Define log.log as an alias for log.debug - this.log = this.debug; - // Return any important warnings. - if (typeof console === undefinedType && level < this.levels.SILENT) { - return "No console available for logging"; - } - } - // In old IE versions, the console isn't present until you first open it. - // We build realMethod() replacements here that regenerate logging methods - function enableLoggingWhenConsoleArrives(methodName) { - return function () { - if (typeof console !== undefinedType) { - replaceLoggingMethods.call(this); - this[methodName].apply(this, arguments); - } - }; - } - // By default, we use closely bound real methods wherever possible, and - // otherwise we wait for a console to appear, and then try again. - function defaultMethodFactory(methodName, _level, _loggerName) { - /*jshint validthis:true */ - return realMethod(methodName) || - enableLoggingWhenConsoleArrives.apply(this, arguments); - } - function Logger(name, factory) { - // Private instance variables. - var self = this; - /** - * The level inherited from a parent logger (or a global default). We - * cache this here rather than delegating to the parent so that it stays - * in sync with the actual logging methods that we have installed (the - * parent could change levels but we might not have rebuilt the loggers - * in this child yet). - * @type {number} - */ - var inheritedLevel; - /** - * The default level for this logger, if any. If set, this overrides - * `inheritedLevel`. - * @type {number|null} - */ - var defaultLevel; - /** - * A user-specific level for this logger. If set, this overrides - * `defaultLevel`. - * @type {number|null} - */ - var userLevel; - var storageKey = "loglevel"; - if (typeof name === "string") { - storageKey += ":" + name; - } else if (typeof name === "symbol") { - storageKey = undefined; - } - function persistLevelIfPossible(levelNum) { - var levelName = (logMethods[levelNum] || 'silent').toUpperCase(); - if (typeof window === undefinedType || !storageKey) return; - // Use localStorage if available - try { - window.localStorage[storageKey] = levelName; - return; - } catch (ignore) {} - // Use session cookie as fallback - try { - window.document.cookie = - encodeURIComponent(storageKey) + "=" + levelName + ";"; - } catch (ignore) {} +/** + * It takes a string, tries to parse it, and if it fails, it returns the stringified version + * of the input + * + * @param {any} rawValue - The value to be stringified. + * @param {Function} parser - A function that parses a string into a JavaScript object. + * @param {Function} encoder - A function that takes a value and returns a string. + * + * @returns {string} A stringified version of the rawValue. + */ +function stringifySafely(rawValue, parser, encoder) { + if (_utils_js__WEBPACK_IMPORTED_MODULE_0__["default"].isString(rawValue)) { + try { + (parser || JSON.parse)(rawValue); + return _utils_js__WEBPACK_IMPORTED_MODULE_0__["default"].trim(rawValue); + } catch (e) { + if (e.name !== 'SyntaxError') { + throw e; } + } + } - function getPersistedLevel() { - var storedLevel; + return (encoder || JSON.stringify)(rawValue); +} - if (typeof window === undefinedType || !storageKey) return; +const defaults = { - try { - storedLevel = window.localStorage[storageKey]; - } catch (ignore) {} + transitional: _transitional_js__WEBPACK_IMPORTED_MODULE_1__["default"], - // Fallback to cookies if local storage gives us nothing - if (typeof storedLevel === undefinedType) { - try { - var cookie = window.document.cookie; - var cookieName = encodeURIComponent(storageKey); - var location = cookie.indexOf(cookieName + "="); - if (location !== -1) { - storedLevel = /^([^;]+)/.exec( - cookie.slice(location + cookieName.length + 1) - )[1]; - } - } catch (ignore) {} - } + adapter: ['xhr', 'http', 'fetch'], + + transformRequest: [function transformRequest(data, headers) { + const contentType = headers.getContentType() || ''; + const hasJSONContentType = contentType.indexOf('application/json') > -1; + const isObjectPayload = _utils_js__WEBPACK_IMPORTED_MODULE_0__["default"].isObject(data); + + if (isObjectPayload && _utils_js__WEBPACK_IMPORTED_MODULE_0__["default"].isHTMLForm(data)) { + data = new FormData(data); + } + + const isFormData = _utils_js__WEBPACK_IMPORTED_MODULE_0__["default"].isFormData(data); + + if (isFormData) { + return hasJSONContentType ? JSON.stringify((0,_helpers_formDataToJSON_js__WEBPACK_IMPORTED_MODULE_2__["default"])(data)) : data; + } + + if (_utils_js__WEBPACK_IMPORTED_MODULE_0__["default"].isArrayBuffer(data) || + _utils_js__WEBPACK_IMPORTED_MODULE_0__["default"].isBuffer(data) || + _utils_js__WEBPACK_IMPORTED_MODULE_0__["default"].isStream(data) || + _utils_js__WEBPACK_IMPORTED_MODULE_0__["default"].isFile(data) || + _utils_js__WEBPACK_IMPORTED_MODULE_0__["default"].isBlob(data) || + _utils_js__WEBPACK_IMPORTED_MODULE_0__["default"].isReadableStream(data) + ) { + return data; + } + if (_utils_js__WEBPACK_IMPORTED_MODULE_0__["default"].isArrayBufferView(data)) { + return data.buffer; + } + if (_utils_js__WEBPACK_IMPORTED_MODULE_0__["default"].isURLSearchParams(data)) { + headers.setContentType('application/x-www-form-urlencoded;charset=utf-8', false); + return data.toString(); + } - // If the stored level is not valid, treat it as if nothing was stored. - if (self.levels[storedLevel] === undefined) { - storedLevel = undefined; - } + let isFileList; - return storedLevel; + if (isObjectPayload) { + if (contentType.indexOf('application/x-www-form-urlencoded') > -1) { + return (0,_helpers_toURLEncodedForm_js__WEBPACK_IMPORTED_MODULE_3__["default"])(data, this.formSerializer).toString(); } - function clearPersistedLevel() { - if (typeof window === undefinedType || !storageKey) return; - - // Use localStorage if available - try { - window.localStorage.removeItem(storageKey); - } catch (ignore) {} + if ((isFileList = _utils_js__WEBPACK_IMPORTED_MODULE_0__["default"].isFileList(data)) || contentType.indexOf('multipart/form-data') > -1) { + const _FormData = this.env && this.env.FormData; - // Use session cookie as fallback - try { - window.document.cookie = - encodeURIComponent(storageKey) + "=; expires=Thu, 01 Jan 1970 00:00:00 UTC"; - } catch (ignore) {} + return (0,_helpers_toFormData_js__WEBPACK_IMPORTED_MODULE_4__["default"])( + isFileList ? {'files[]': data} : data, + _FormData && new _FormData(), + this.formSerializer + ); } + } - function normalizeLevel(input) { - var level = input; - if (typeof level === "string" && self.levels[level.toUpperCase()] !== undefined) { - level = self.levels[level.toUpperCase()]; - } - if (typeof level === "number" && level >= 0 && level <= self.levels.SILENT) { - return level; - } else { - throw new TypeError("log.setLevel() called with invalid level: " + input); - } - } + if (isObjectPayload || hasJSONContentType ) { + headers.setContentType('application/json', false); + return stringifySafely(data); + } - /* - * - * Public logger API - see https://github.com/pimterry/loglevel for details - * - */ + return data; + }], - self.name = name; + transformResponse: [function transformResponse(data) { + const transitional = this.transitional || defaults.transitional; + const forcedJSONParsing = transitional && transitional.forcedJSONParsing; + const JSONRequested = this.responseType === 'json'; - self.levels = { "TRACE": 0, "DEBUG": 1, "INFO": 2, "WARN": 3, - "ERROR": 4, "SILENT": 5}; + if (_utils_js__WEBPACK_IMPORTED_MODULE_0__["default"].isResponse(data) || _utils_js__WEBPACK_IMPORTED_MODULE_0__["default"].isReadableStream(data)) { + return data; + } - self.methodFactory = factory || defaultMethodFactory; + if (data && _utils_js__WEBPACK_IMPORTED_MODULE_0__["default"].isString(data) && ((forcedJSONParsing && !this.responseType) || JSONRequested)) { + const silentJSONParsing = transitional && transitional.silentJSONParsing; + const strictJSONParsing = !silentJSONParsing && JSONRequested; - self.getLevel = function () { - if (userLevel != null) { - return userLevel; - } else if (defaultLevel != null) { - return defaultLevel; - } else { - return inheritedLevel; + try { + return JSON.parse(data); + } catch (e) { + if (strictJSONParsing) { + if (e.name === 'SyntaxError') { + throw _core_AxiosError_js__WEBPACK_IMPORTED_MODULE_5__["default"].from(e, _core_AxiosError_js__WEBPACK_IMPORTED_MODULE_5__["default"].ERR_BAD_RESPONSE, this, null, this.response); } - }; + throw e; + } + } + } - self.setLevel = function (level, persist) { - userLevel = normalizeLevel(level); - if (persist !== false) { // defaults to true - persistLevelIfPossible(userLevel); - } + return data; + }], - // NOTE: in v2, this should call rebuild(), which updates children. - return replaceLoggingMethods.call(self); - }; + /** + * A timeout in milliseconds to abort a request. If set to 0 (default) a + * timeout is not created. + */ + timeout: 0, - self.setDefaultLevel = function (level) { - defaultLevel = normalizeLevel(level); - if (!getPersistedLevel()) { - self.setLevel(level, false); - } - }; + xsrfCookieName: 'XSRF-TOKEN', + xsrfHeaderName: 'X-XSRF-TOKEN', - self.resetLevel = function () { - userLevel = null; - clearPersistedLevel(); - replaceLoggingMethods.call(self); - }; + maxContentLength: -1, + maxBodyLength: -1, - self.enableAll = function(persist) { - self.setLevel(self.levels.TRACE, persist); - }; + env: { + FormData: _platform_index_js__WEBPACK_IMPORTED_MODULE_6__["default"].classes.FormData, + Blob: _platform_index_js__WEBPACK_IMPORTED_MODULE_6__["default"].classes.Blob + }, - self.disableAll = function(persist) { - self.setLevel(self.levels.SILENT, persist); - }; + validateStatus: function validateStatus(status) { + return status >= 200 && status < 300; + }, - self.rebuild = function () { - if (defaultLogger !== self) { - inheritedLevel = normalizeLevel(defaultLogger.getLevel()); - } - replaceLoggingMethods.call(self); + headers: { + common: { + 'Accept': 'application/json, text/plain, */*', + 'Content-Type': undefined + } + } +}; - if (defaultLogger === self) { - for (var childName in _loggersByName) { - _loggersByName[childName].rebuild(); - } - } - }; +_utils_js__WEBPACK_IMPORTED_MODULE_0__["default"].forEach(['delete', 'get', 'head', 'post', 'put', 'patch'], (method) => { + defaults.headers[method] = {}; +}); - // Initialize all the internal levels. - inheritedLevel = normalizeLevel( - defaultLogger ? defaultLogger.getLevel() : "WARN" - ); - var initialLevel = getPersistedLevel(); - if (initialLevel != null) { - userLevel = normalizeLevel(initialLevel); - } - replaceLoggingMethods.call(self); - } +/* harmony default export */ const __WEBPACK_DEFAULT_EXPORT__ = (defaults); - /* - * - * Top-level API - * - */ - defaultLogger = new Logger(); +/***/ }), - defaultLogger.getLogger = function getLogger(name) { - if ((typeof name !== "symbol" && typeof name !== "string") || name === "") { - throw new TypeError("You must supply a name when creating a logger."); - } +/***/ "./node_modules/.pnpm/axios@1.7.9/node_modules/axios/lib/defaults/transitional.js": +/*!****************************************************************************************!*\ + !*** ./node_modules/.pnpm/axios@1.7.9/node_modules/axios/lib/defaults/transitional.js ***! + \****************************************************************************************/ +/***/ ((__unused_webpack___webpack_module__, __webpack_exports__, __webpack_require__) => { - var logger = _loggersByName[name]; - if (!logger) { - logger = _loggersByName[name] = new Logger( - name, - defaultLogger.methodFactory - ); - } - return logger; - }; +"use strict"; +__webpack_require__.r(__webpack_exports__); +/* harmony export */ __webpack_require__.d(__webpack_exports__, { +/* harmony export */ "default": () => (__WEBPACK_DEFAULT_EXPORT__) +/* harmony export */ }); - // Grab the current global log variable in case of overwrite - var _log = (typeof window !== undefinedType) ? window.log : undefined; - defaultLogger.noConflict = function() { - if (typeof window !== undefinedType && - window.log === defaultLogger) { - window.log = _log; - } - return defaultLogger; - }; +/* harmony default export */ const __WEBPACK_DEFAULT_EXPORT__ = ({ + silentJSONParsing: true, + forcedJSONParsing: true, + clarifyTimeoutError: false +}); - defaultLogger.getLoggers = function getLoggers() { - return _loggersByName; - }; - // ES6 default export, for compatibility - defaultLogger['default'] = defaultLogger; +/***/ }), - return defaultLogger; -})); +/***/ "./node_modules/.pnpm/axios@1.7.9/node_modules/axios/lib/env/data.js": +/*!***************************************************************************!*\ + !*** ./node_modules/.pnpm/axios@1.7.9/node_modules/axios/lib/env/data.js ***! + \***************************************************************************/ +/***/ ((__unused_webpack___webpack_module__, __webpack_exports__, __webpack_require__) => { +"use strict"; +__webpack_require__.r(__webpack_exports__); +/* harmony export */ __webpack_require__.d(__webpack_exports__, { +/* harmony export */ VERSION: () => (/* binding */ VERSION) +/* harmony export */ }); +const VERSION = "1.7.9"; /***/ }), -/***/ "?4bf0": -/*!************************!*\ - !*** crypto (ignored) ***! - \************************/ -/***/ (() => { +/***/ "./node_modules/.pnpm/axios@1.7.9/node_modules/axios/lib/helpers/AxiosURLSearchParams.js": +/*!***********************************************************************************************!*\ + !*** ./node_modules/.pnpm/axios@1.7.9/node_modules/axios/lib/helpers/AxiosURLSearchParams.js ***! + \***********************************************************************************************/ +/***/ ((__unused_webpack___webpack_module__, __webpack_exports__, __webpack_require__) => { + +"use strict"; +__webpack_require__.r(__webpack_exports__); +/* harmony export */ __webpack_require__.d(__webpack_exports__, { +/* harmony export */ "default": () => (__WEBPACK_DEFAULT_EXPORT__) +/* harmony export */ }); +/* harmony import */ var _toFormData_js__WEBPACK_IMPORTED_MODULE_0__ = __webpack_require__(/*! ./toFormData.js */ "./node_modules/.pnpm/axios@1.7.9/node_modules/axios/lib/helpers/toFormData.js"); + + + + +/** + * It encodes a string by replacing all characters that are not in the unreserved set with + * their percent-encoded equivalents + * + * @param {string} str - The string to encode. + * + * @returns {string} The encoded string. + */ +function encode(str) { + const charMap = { + '!': '%21', + "'": '%27', + '(': '%28', + ')': '%29', + '~': '%7E', + '%20': '+', + '%00': '\x00' + }; + return encodeURIComponent(str).replace(/[!'()~]|%20|%00/g, function replacer(match) { + return charMap[match]; + }); +} -/* (ignored) */ +/** + * It takes a params object and converts it to a FormData object + * + * @param {Object} params - The parameters to be converted to a FormData object. + * @param {Object} options - The options object passed to the Axios constructor. + * + * @returns {void} + */ +function AxiosURLSearchParams(params, options) { + this._pairs = []; -/***/ }), + params && (0,_toFormData_js__WEBPACK_IMPORTED_MODULE_0__["default"])(params, this, options); +} -/***/ "?e89d": -/*!**********************!*\ - !*** http (ignored) ***! - \**********************/ -/***/ (() => { +const prototype = AxiosURLSearchParams.prototype; -/* (ignored) */ +prototype.append = function append(name, value) { + this._pairs.push([name, value]); +}; -/***/ }), +prototype.toString = function toString(encoder) { + const _encode = encoder ? function(value) { + return encoder.call(this, value, encode); + } : encode; -/***/ "?77e4": -/*!***********************!*\ - !*** https (ignored) ***! - \***********************/ -/***/ (() => { + return this._pairs.map(function each(pair) { + return _encode(pair[0]) + '=' + _encode(pair[1]); + }, '').join('&'); +}; + +/* harmony default export */ const __WEBPACK_DEFAULT_EXPORT__ = (AxiosURLSearchParams); -/* (ignored) */ /***/ }), -/***/ "./node_modules/@babel/runtime/helpers/regeneratorRuntime.js": -/*!*******************************************************************!*\ - !*** ./node_modules/@babel/runtime/helpers/regeneratorRuntime.js ***! - \*******************************************************************/ -/***/ ((module, __unused_webpack_exports, __webpack_require__) => { +/***/ "./node_modules/.pnpm/axios@1.7.9/node_modules/axios/lib/helpers/HttpStatusCode.js": +/*!*****************************************************************************************!*\ + !*** ./node_modules/.pnpm/axios@1.7.9/node_modules/axios/lib/helpers/HttpStatusCode.js ***! + \*****************************************************************************************/ +/***/ ((__unused_webpack___webpack_module__, __webpack_exports__, __webpack_require__) => { -var _typeof = (__webpack_require__(/*! ./typeof.js */ "./node_modules/@babel/runtime/helpers/typeof.js")["default"]); -function _regeneratorRuntime() { - "use strict"; /*! regenerator-runtime -- Copyright (c) 2014-present, Facebook, Inc. -- license (MIT): https://github.com/facebook/regenerator/blob/main/LICENSE */ - module.exports = _regeneratorRuntime = function _regeneratorRuntime() { - return e; - }, module.exports.__esModule = true, module.exports["default"] = module.exports; - var t, - e = {}, - r = Object.prototype, - n = r.hasOwnProperty, - o = Object.defineProperty || function (t, e, r) { - t[e] = r.value; - }, - i = "function" == typeof Symbol ? Symbol : {}, - a = i.iterator || "@@iterator", - c = i.asyncIterator || "@@asyncIterator", - u = i.toStringTag || "@@toStringTag"; - function define(t, e, r) { - return Object.defineProperty(t, e, { - value: r, - enumerable: !0, - configurable: !0, - writable: !0 - }), t[e]; - } - try { - define({}, ""); - } catch (t) { - define = function define(t, e, r) { - return t[e] = r; - }; - } - function wrap(t, e, r, n) { - var i = e && e.prototype instanceof Generator ? e : Generator, - a = Object.create(i.prototype), - c = new Context(n || []); - return o(a, "_invoke", { - value: makeInvokeMethod(t, r, c) - }), a; - } - function tryCatch(t, e, r) { - try { - return { - type: "normal", - arg: t.call(e, r) - }; - } catch (t) { - return { - type: "throw", - arg: t - }; - } - } - e.wrap = wrap; - var h = "suspendedStart", - l = "suspendedYield", - f = "executing", - s = "completed", - y = {}; - function Generator() {} - function GeneratorFunction() {} - function GeneratorFunctionPrototype() {} - var p = {}; - define(p, a, function () { - return this; - }); - var d = Object.getPrototypeOf, - v = d && d(d(values([]))); - v && v !== r && n.call(v, a) && (p = v); - var g = GeneratorFunctionPrototype.prototype = Generator.prototype = Object.create(p); - function defineIteratorMethods(t) { - ["next", "throw", "return"].forEach(function (e) { - define(t, e, function (t) { - return this._invoke(e, t); - }); - }); - } - function AsyncIterator(t, e) { - function invoke(r, o, i, a) { - var c = tryCatch(t[r], t, o); - if ("throw" !== c.type) { - var u = c.arg, - h = u.value; - return h && "object" == _typeof(h) && n.call(h, "__await") ? e.resolve(h.__await).then(function (t) { - invoke("next", t, i, a); - }, function (t) { - invoke("throw", t, i, a); - }) : e.resolve(h).then(function (t) { - u.value = t, i(u); - }, function (t) { - return invoke("throw", t, i, a); - }); - } - a(c.arg); - } - var r; - o(this, "_invoke", { - value: function value(t, n) { - function callInvokeWithMethodAndArg() { - return new e(function (e, r) { - invoke(t, n, e, r); - }); - } - return r = r ? r.then(callInvokeWithMethodAndArg, callInvokeWithMethodAndArg) : callInvokeWithMethodAndArg(); - } - }); - } - function makeInvokeMethod(e, r, n) { - var o = h; - return function (i, a) { - if (o === f) throw new Error("Generator is already running"); - if (o === s) { - if ("throw" === i) throw a; - return { - value: t, - done: !0 - }; - } - for (n.method = i, n.arg = a;;) { - var c = n.delegate; - if (c) { - var u = maybeInvokeDelegate(c, n); - if (u) { - if (u === y) continue; - return u; - } - } - if ("next" === n.method) n.sent = n._sent = n.arg;else if ("throw" === n.method) { - if (o === h) throw o = s, n.arg; - n.dispatchException(n.arg); - } else "return" === n.method && n.abrupt("return", n.arg); - o = f; - var p = tryCatch(e, r, n); - if ("normal" === p.type) { - if (o = n.done ? s : l, p.arg === y) continue; - return { - value: p.arg, - done: n.done - }; - } - "throw" === p.type && (o = s, n.method = "throw", n.arg = p.arg); - } - }; - } - function maybeInvokeDelegate(e, r) { - var n = r.method, - o = e.iterator[n]; - if (o === t) return r.delegate = null, "throw" === n && e.iterator["return"] && (r.method = "return", r.arg = t, maybeInvokeDelegate(e, r), "throw" === r.method) || "return" !== n && (r.method = "throw", r.arg = new TypeError("The iterator does not provide a '" + n + "' method")), y; - var i = tryCatch(o, e.iterator, r.arg); - if ("throw" === i.type) return r.method = "throw", r.arg = i.arg, r.delegate = null, y; - var a = i.arg; - return a ? a.done ? (r[e.resultName] = a.value, r.next = e.nextLoc, "return" !== r.method && (r.method = "next", r.arg = t), r.delegate = null, y) : a : (r.method = "throw", r.arg = new TypeError("iterator result is not an object"), r.delegate = null, y); +"use strict"; +__webpack_require__.r(__webpack_exports__); +/* harmony export */ __webpack_require__.d(__webpack_exports__, { +/* harmony export */ "default": () => (__WEBPACK_DEFAULT_EXPORT__) +/* harmony export */ }); +const HttpStatusCode = { + Continue: 100, + SwitchingProtocols: 101, + Processing: 102, + EarlyHints: 103, + Ok: 200, + Created: 201, + Accepted: 202, + NonAuthoritativeInformation: 203, + NoContent: 204, + ResetContent: 205, + PartialContent: 206, + MultiStatus: 207, + AlreadyReported: 208, + ImUsed: 226, + MultipleChoices: 300, + MovedPermanently: 301, + Found: 302, + SeeOther: 303, + NotModified: 304, + UseProxy: 305, + Unused: 306, + TemporaryRedirect: 307, + PermanentRedirect: 308, + BadRequest: 400, + Unauthorized: 401, + PaymentRequired: 402, + Forbidden: 403, + NotFound: 404, + MethodNotAllowed: 405, + NotAcceptable: 406, + ProxyAuthenticationRequired: 407, + RequestTimeout: 408, + Conflict: 409, + Gone: 410, + LengthRequired: 411, + PreconditionFailed: 412, + PayloadTooLarge: 413, + UriTooLong: 414, + UnsupportedMediaType: 415, + RangeNotSatisfiable: 416, + ExpectationFailed: 417, + ImATeapot: 418, + MisdirectedRequest: 421, + UnprocessableEntity: 422, + Locked: 423, + FailedDependency: 424, + TooEarly: 425, + UpgradeRequired: 426, + PreconditionRequired: 428, + TooManyRequests: 429, + RequestHeaderFieldsTooLarge: 431, + UnavailableForLegalReasons: 451, + InternalServerError: 500, + NotImplemented: 501, + BadGateway: 502, + ServiceUnavailable: 503, + GatewayTimeout: 504, + HttpVersionNotSupported: 505, + VariantAlsoNegotiates: 506, + InsufficientStorage: 507, + LoopDetected: 508, + NotExtended: 510, + NetworkAuthenticationRequired: 511, +}; + +Object.entries(HttpStatusCode).forEach(([key, value]) => { + HttpStatusCode[value] = key; +}); + +/* harmony default export */ const __WEBPACK_DEFAULT_EXPORT__ = (HttpStatusCode); + + +/***/ }), + +/***/ "./node_modules/.pnpm/axios@1.7.9/node_modules/axios/lib/helpers/bind.js": +/*!*******************************************************************************!*\ + !*** ./node_modules/.pnpm/axios@1.7.9/node_modules/axios/lib/helpers/bind.js ***! + \*******************************************************************************/ +/***/ ((__unused_webpack___webpack_module__, __webpack_exports__, __webpack_require__) => { + +"use strict"; +__webpack_require__.r(__webpack_exports__); +/* harmony export */ __webpack_require__.d(__webpack_exports__, { +/* harmony export */ "default": () => (/* binding */ bind) +/* harmony export */ }); + + +function bind(fn, thisArg) { + return function wrap() { + return fn.apply(thisArg, arguments); + }; +} + + +/***/ }), + +/***/ "./node_modules/.pnpm/axios@1.7.9/node_modules/axios/lib/helpers/buildURL.js": +/*!***********************************************************************************!*\ + !*** ./node_modules/.pnpm/axios@1.7.9/node_modules/axios/lib/helpers/buildURL.js ***! + \***********************************************************************************/ +/***/ ((__unused_webpack___webpack_module__, __webpack_exports__, __webpack_require__) => { + +"use strict"; +__webpack_require__.r(__webpack_exports__); +/* harmony export */ __webpack_require__.d(__webpack_exports__, { +/* harmony export */ "default": () => (/* binding */ buildURL) +/* harmony export */ }); +/* harmony import */ var _utils_js__WEBPACK_IMPORTED_MODULE_0__ = __webpack_require__(/*! ../utils.js */ "./node_modules/.pnpm/axios@1.7.9/node_modules/axios/lib/utils.js"); +/* harmony import */ var _helpers_AxiosURLSearchParams_js__WEBPACK_IMPORTED_MODULE_1__ = __webpack_require__(/*! ../helpers/AxiosURLSearchParams.js */ "./node_modules/.pnpm/axios@1.7.9/node_modules/axios/lib/helpers/AxiosURLSearchParams.js"); + + + + + +/** + * It replaces all instances of the characters `:`, `$`, `,`, `+`, `[`, and `]` with their + * URI encoded counterparts + * + * @param {string} val The value to be encoded. + * + * @returns {string} The encoded value. + */ +function encode(val) { + return encodeURIComponent(val). + replace(/%3A/gi, ':'). + replace(/%24/g, '$'). + replace(/%2C/gi, ','). + replace(/%20/g, '+'). + replace(/%5B/gi, '['). + replace(/%5D/gi, ']'); +} + +/** + * Build a URL by appending params to the end + * + * @param {string} url The base of the url (e.g., http://www.google.com) + * @param {object} [params] The params to be appended + * @param {?(object|Function)} options + * + * @returns {string} The formatted url + */ +function buildURL(url, params, options) { + /*eslint no-param-reassign:0*/ + if (!params) { + return url; } - function pushTryEntry(t) { - var e = { - tryLoc: t[0] + + const _encode = options && options.encode || encode; + + if (_utils_js__WEBPACK_IMPORTED_MODULE_0__["default"].isFunction(options)) { + options = { + serialize: options }; - 1 in t && (e.catchLoc = t[1]), 2 in t && (e.finallyLoc = t[2], e.afterLoc = t[3]), this.tryEntries.push(e); - } - function resetTryEntry(t) { - var e = t.completion || {}; - e.type = "normal", delete e.arg, t.completion = e; - } - function Context(t) { - this.tryEntries = [{ - tryLoc: "root" - }], t.forEach(pushTryEntry, this), this.reset(!0); + } + + const serializeFn = options && options.serialize; + + let serializedParams; + + if (serializeFn) { + serializedParams = serializeFn(params, options); + } else { + serializedParams = _utils_js__WEBPACK_IMPORTED_MODULE_0__["default"].isURLSearchParams(params) ? + params.toString() : + new _helpers_AxiosURLSearchParams_js__WEBPACK_IMPORTED_MODULE_1__["default"](params, options).toString(_encode); } - function values(e) { - if (e || "" === e) { - var r = e[a]; - if (r) return r.call(e); - if ("function" == typeof e.next) return e; - if (!isNaN(e.length)) { - var o = -1, - i = function next() { - for (; ++o < e.length;) if (n.call(e, o)) return next.value = e[o], next.done = !1, next; - return next.value = t, next.done = !0, next; - }; - return i.next = i; - } + + if (serializedParams) { + const hashmarkIndex = url.indexOf("#"); + + if (hashmarkIndex !== -1) { + url = url.slice(0, hashmarkIndex); } - throw new TypeError(_typeof(e) + " is not iterable"); + url += (url.indexOf('?') === -1 ? '?' : '&') + serializedParams; } - return GeneratorFunction.prototype = GeneratorFunctionPrototype, o(g, "constructor", { - value: GeneratorFunctionPrototype, - configurable: !0 - }), o(GeneratorFunctionPrototype, "constructor", { - value: GeneratorFunction, - configurable: !0 - }), GeneratorFunction.displayName = define(GeneratorFunctionPrototype, u, "GeneratorFunction"), e.isGeneratorFunction = function (t) { - var e = "function" == typeof t && t.constructor; - return !!e && (e === GeneratorFunction || "GeneratorFunction" === (e.displayName || e.name)); - }, e.mark = function (t) { - return Object.setPrototypeOf ? Object.setPrototypeOf(t, GeneratorFunctionPrototype) : (t.__proto__ = GeneratorFunctionPrototype, define(t, u, "GeneratorFunction")), t.prototype = Object.create(g), t; - }, e.awrap = function (t) { - return { - __await: t - }; - }, defineIteratorMethods(AsyncIterator.prototype), define(AsyncIterator.prototype, c, function () { - return this; - }), e.AsyncIterator = AsyncIterator, e.async = function (t, r, n, o, i) { - void 0 === i && (i = Promise); - var a = new AsyncIterator(wrap(t, r, n, o), i); - return e.isGeneratorFunction(r) ? a : a.next().then(function (t) { - return t.done ? t.value : a.next(); - }); - }, defineIteratorMethods(g), define(g, u, "Generator"), define(g, a, function () { - return this; - }), define(g, "toString", function () { - return "[object Generator]"; - }), e.keys = function (t) { - var e = Object(t), - r = []; - for (var n in e) r.push(n); - return r.reverse(), function next() { - for (; r.length;) { - var t = r.pop(); - if (t in e) return next.value = t, next.done = !1, next; - } - return next.done = !0, next; - }; - }, e.values = values, Context.prototype = { - constructor: Context, - reset: function reset(e) { - if (this.prev = 0, this.next = 0, this.sent = this._sent = t, this.done = !1, this.delegate = null, this.method = "next", this.arg = t, this.tryEntries.forEach(resetTryEntry), !e) for (var r in this) "t" === r.charAt(0) && n.call(this, r) && !isNaN(+r.slice(1)) && (this[r] = t); - }, - stop: function stop() { - this.done = !0; - var t = this.tryEntries[0].completion; - if ("throw" === t.type) throw t.arg; - return this.rval; - }, - dispatchException: function dispatchException(e) { - if (this.done) throw e; - var r = this; - function handle(n, o) { - return a.type = "throw", a.arg = e, r.next = n, o && (r.method = "next", r.arg = t), !!o; - } - for (var o = this.tryEntries.length - 1; o >= 0; --o) { - var i = this.tryEntries[o], - a = i.completion; - if ("root" === i.tryLoc) return handle("end"); - if (i.tryLoc <= this.prev) { - var c = n.call(i, "catchLoc"), - u = n.call(i, "finallyLoc"); - if (c && u) { - if (this.prev < i.catchLoc) return handle(i.catchLoc, !0); - if (this.prev < i.finallyLoc) return handle(i.finallyLoc); - } else if (c) { - if (this.prev < i.catchLoc) return handle(i.catchLoc, !0); - } else { - if (!u) throw new Error("try statement without catch or finally"); - if (this.prev < i.finallyLoc) return handle(i.finallyLoc); - } - } - } - }, - abrupt: function abrupt(t, e) { - for (var r = this.tryEntries.length - 1; r >= 0; --r) { - var o = this.tryEntries[r]; - if (o.tryLoc <= this.prev && n.call(o, "finallyLoc") && this.prev < o.finallyLoc) { - var i = o; - break; - } + + return url; +} + + +/***/ }), + +/***/ "./node_modules/.pnpm/axios@1.7.9/node_modules/axios/lib/helpers/combineURLs.js": +/*!**************************************************************************************!*\ + !*** ./node_modules/.pnpm/axios@1.7.9/node_modules/axios/lib/helpers/combineURLs.js ***! + \**************************************************************************************/ +/***/ ((__unused_webpack___webpack_module__, __webpack_exports__, __webpack_require__) => { + +"use strict"; +__webpack_require__.r(__webpack_exports__); +/* harmony export */ __webpack_require__.d(__webpack_exports__, { +/* harmony export */ "default": () => (/* binding */ combineURLs) +/* harmony export */ }); + + +/** + * Creates a new URL by combining the specified URLs + * + * @param {string} baseURL The base URL + * @param {string} relativeURL The relative URL + * + * @returns {string} The combined URL + */ +function combineURLs(baseURL, relativeURL) { + return relativeURL + ? baseURL.replace(/\/?\/$/, '') + '/' + relativeURL.replace(/^\/+/, '') + : baseURL; +} + + +/***/ }), + +/***/ "./node_modules/.pnpm/axios@1.7.9/node_modules/axios/lib/helpers/composeSignals.js": +/*!*****************************************************************************************!*\ + !*** ./node_modules/.pnpm/axios@1.7.9/node_modules/axios/lib/helpers/composeSignals.js ***! + \*****************************************************************************************/ +/***/ ((__unused_webpack___webpack_module__, __webpack_exports__, __webpack_require__) => { + +"use strict"; +__webpack_require__.r(__webpack_exports__); +/* harmony export */ __webpack_require__.d(__webpack_exports__, { +/* harmony export */ "default": () => (__WEBPACK_DEFAULT_EXPORT__) +/* harmony export */ }); +/* harmony import */ var _cancel_CanceledError_js__WEBPACK_IMPORTED_MODULE_1__ = __webpack_require__(/*! ../cancel/CanceledError.js */ "./node_modules/.pnpm/axios@1.7.9/node_modules/axios/lib/cancel/CanceledError.js"); +/* harmony import */ var _core_AxiosError_js__WEBPACK_IMPORTED_MODULE_0__ = __webpack_require__(/*! ../core/AxiosError.js */ "./node_modules/.pnpm/axios@1.7.9/node_modules/axios/lib/core/AxiosError.js"); +/* harmony import */ var _utils_js__WEBPACK_IMPORTED_MODULE_2__ = __webpack_require__(/*! ../utils.js */ "./node_modules/.pnpm/axios@1.7.9/node_modules/axios/lib/utils.js"); + + + + +const composeSignals = (signals, timeout) => { + const {length} = (signals = signals ? signals.filter(Boolean) : []); + + if (timeout || length) { + let controller = new AbortController(); + + let aborted; + + const onabort = function (reason) { + if (!aborted) { + aborted = true; + unsubscribe(); + const err = reason instanceof Error ? reason : this.reason; + controller.abort(err instanceof _core_AxiosError_js__WEBPACK_IMPORTED_MODULE_0__["default"] ? err : new _cancel_CanceledError_js__WEBPACK_IMPORTED_MODULE_1__["default"](err instanceof Error ? err.message : err)); } - i && ("break" === t || "continue" === t) && i.tryLoc <= e && e <= i.finallyLoc && (i = null); - var a = i ? i.completion : {}; - return a.type = t, a.arg = e, i ? (this.method = "next", this.next = i.finallyLoc, y) : this.complete(a); + } + + let timer = timeout && setTimeout(() => { + timer = null; + onabort(new _core_AxiosError_js__WEBPACK_IMPORTED_MODULE_0__["default"](`timeout ${timeout} of ms exceeded`, _core_AxiosError_js__WEBPACK_IMPORTED_MODULE_0__["default"].ETIMEDOUT)) + }, timeout) + + const unsubscribe = () => { + if (signals) { + timer && clearTimeout(timer); + timer = null; + signals.forEach(signal => { + signal.unsubscribe ? signal.unsubscribe(onabort) : signal.removeEventListener('abort', onabort); + }); + signals = null; + } + } + + signals.forEach((signal) => signal.addEventListener('abort', onabort)); + + const {signal} = controller; + + signal.unsubscribe = () => _utils_js__WEBPACK_IMPORTED_MODULE_2__["default"].asap(unsubscribe); + + return signal; + } +} + +/* harmony default export */ const __WEBPACK_DEFAULT_EXPORT__ = (composeSignals); + + +/***/ }), + +/***/ "./node_modules/.pnpm/axios@1.7.9/node_modules/axios/lib/helpers/cookies.js": +/*!**********************************************************************************!*\ + !*** ./node_modules/.pnpm/axios@1.7.9/node_modules/axios/lib/helpers/cookies.js ***! + \**********************************************************************************/ +/***/ ((__unused_webpack___webpack_module__, __webpack_exports__, __webpack_require__) => { + +"use strict"; +__webpack_require__.r(__webpack_exports__); +/* harmony export */ __webpack_require__.d(__webpack_exports__, { +/* harmony export */ "default": () => (__WEBPACK_DEFAULT_EXPORT__) +/* harmony export */ }); +/* harmony import */ var _utils_js__WEBPACK_IMPORTED_MODULE_1__ = __webpack_require__(/*! ./../utils.js */ "./node_modules/.pnpm/axios@1.7.9/node_modules/axios/lib/utils.js"); +/* harmony import */ var _platform_index_js__WEBPACK_IMPORTED_MODULE_0__ = __webpack_require__(/*! ../platform/index.js */ "./node_modules/.pnpm/axios@1.7.9/node_modules/axios/lib/platform/index.js"); + + + +/* harmony default export */ const __WEBPACK_DEFAULT_EXPORT__ = (_platform_index_js__WEBPACK_IMPORTED_MODULE_0__["default"].hasStandardBrowserEnv ? + + // Standard browser envs support document.cookie + { + write(name, value, expires, path, domain, secure) { + const cookie = [name + '=' + encodeURIComponent(value)]; + + _utils_js__WEBPACK_IMPORTED_MODULE_1__["default"].isNumber(expires) && cookie.push('expires=' + new Date(expires).toGMTString()); + + _utils_js__WEBPACK_IMPORTED_MODULE_1__["default"].isString(path) && cookie.push('path=' + path); + + _utils_js__WEBPACK_IMPORTED_MODULE_1__["default"].isString(domain) && cookie.push('domain=' + domain); + + secure === true && cookie.push('secure'); + + document.cookie = cookie.join('; '); }, - complete: function complete(t, e) { - if ("throw" === t.type) throw t.arg; - return "break" === t.type || "continue" === t.type ? this.next = t.arg : "return" === t.type ? (this.rval = this.arg = t.arg, this.method = "return", this.next = "end") : "normal" === t.type && e && (this.next = e), y; + + read(name) { + const match = document.cookie.match(new RegExp('(^|;\\s*)(' + name + ')=([^;]*)')); + return (match ? decodeURIComponent(match[3]) : null); }, - finish: function finish(t) { - for (var e = this.tryEntries.length - 1; e >= 0; --e) { - var r = this.tryEntries[e]; - if (r.finallyLoc === t) return this.complete(r.completion, r.afterLoc), resetTryEntry(r), y; - } + + remove(name) { + this.write(name, '', Date.now() - 86400000); + } + } + + : + + // Non-standard browser env (web workers, react-native) lack needed support. + { + write() {}, + read() { + return null; }, - "catch": function _catch(t) { - for (var e = this.tryEntries.length - 1; e >= 0; --e) { - var r = this.tryEntries[e]; - if (r.tryLoc === t) { - var n = r.completion; - if ("throw" === n.type) { - var o = n.arg; - resetTryEntry(r); - } - return o; - } + remove() {} + }); + + + +/***/ }), + +/***/ "./node_modules/.pnpm/axios@1.7.9/node_modules/axios/lib/helpers/formDataToJSON.js": +/*!*****************************************************************************************!*\ + !*** ./node_modules/.pnpm/axios@1.7.9/node_modules/axios/lib/helpers/formDataToJSON.js ***! + \*****************************************************************************************/ +/***/ ((__unused_webpack___webpack_module__, __webpack_exports__, __webpack_require__) => { + +"use strict"; +__webpack_require__.r(__webpack_exports__); +/* harmony export */ __webpack_require__.d(__webpack_exports__, { +/* harmony export */ "default": () => (__WEBPACK_DEFAULT_EXPORT__) +/* harmony export */ }); +/* harmony import */ var _utils_js__WEBPACK_IMPORTED_MODULE_0__ = __webpack_require__(/*! ../utils.js */ "./node_modules/.pnpm/axios@1.7.9/node_modules/axios/lib/utils.js"); + + + + +/** + * It takes a string like `foo[x][y][z]` and returns an array like `['foo', 'x', 'y', 'z'] + * + * @param {string} name - The name of the property to get. + * + * @returns An array of strings. + */ +function parsePropPath(name) { + // foo[x][y][z] + // foo.x.y.z + // foo-x-y-z + // foo x y z + return _utils_js__WEBPACK_IMPORTED_MODULE_0__["default"].matchAll(/\w+|\[(\w*)]/g, name).map(match => { + return match[0] === '[]' ? '' : match[1] || match[0]; + }); +} + +/** + * Convert an array to an object. + * + * @param {Array} arr - The array to convert to an object. + * + * @returns An object with the same keys and values as the array. + */ +function arrayToObject(arr) { + const obj = {}; + const keys = Object.keys(arr); + let i; + const len = keys.length; + let key; + for (i = 0; i < len; i++) { + key = keys[i]; + obj[key] = arr[key]; + } + return obj; +} + +/** + * It takes a FormData object and returns a JavaScript object + * + * @param {string} formData The FormData object to convert to JSON. + * + * @returns {Object | null} The converted object. + */ +function formDataToJSON(formData) { + function buildPath(path, value, target, index) { + let name = path[index++]; + + if (name === '__proto__') return true; + + const isNumericKey = Number.isFinite(+name); + const isLast = index >= path.length; + name = !name && _utils_js__WEBPACK_IMPORTED_MODULE_0__["default"].isArray(target) ? target.length : name; + + if (isLast) { + if (_utils_js__WEBPACK_IMPORTED_MODULE_0__["default"].hasOwnProp(target, name)) { + target[name] = [target[name], value]; + } else { + target[name] = value; } - throw new Error("illegal catch attempt"); - }, - delegateYield: function delegateYield(e, r, n) { - return this.delegate = { - iterator: values(e), - resultName: r, - nextLoc: n - }, "next" === this.method && (this.arg = t), y; + + return !isNumericKey; } - }, e; + + if (!target[name] || !_utils_js__WEBPACK_IMPORTED_MODULE_0__["default"].isObject(target[name])) { + target[name] = []; + } + + const result = buildPath(path, value, target[name], index); + + if (result && _utils_js__WEBPACK_IMPORTED_MODULE_0__["default"].isArray(target[name])) { + target[name] = arrayToObject(target[name]); + } + + return !isNumericKey; + } + + if (_utils_js__WEBPACK_IMPORTED_MODULE_0__["default"].isFormData(formData) && _utils_js__WEBPACK_IMPORTED_MODULE_0__["default"].isFunction(formData.entries)) { + const obj = {}; + + _utils_js__WEBPACK_IMPORTED_MODULE_0__["default"].forEachEntry(formData, (name, value) => { + buildPath(parsePropPath(name), value, obj, 0); + }); + + return obj; + } + + return null; } -module.exports = _regeneratorRuntime, module.exports.__esModule = true, module.exports["default"] = module.exports; + +/* harmony default export */ const __WEBPACK_DEFAULT_EXPORT__ = (formDataToJSON); + /***/ }), -/***/ "./node_modules/@babel/runtime/helpers/typeof.js": -/*!*******************************************************!*\ - !*** ./node_modules/@babel/runtime/helpers/typeof.js ***! - \*******************************************************/ -/***/ ((module) => { +/***/ "./node_modules/.pnpm/axios@1.7.9/node_modules/axios/lib/helpers/isAbsoluteURL.js": +/*!****************************************************************************************!*\ + !*** ./node_modules/.pnpm/axios@1.7.9/node_modules/axios/lib/helpers/isAbsoluteURL.js ***! + \****************************************************************************************/ +/***/ ((__unused_webpack___webpack_module__, __webpack_exports__, __webpack_require__) => { -function _typeof(o) { - "@babel/helpers - typeof"; +"use strict"; +__webpack_require__.r(__webpack_exports__); +/* harmony export */ __webpack_require__.d(__webpack_exports__, { +/* harmony export */ "default": () => (/* binding */ isAbsoluteURL) +/* harmony export */ }); - return (module.exports = _typeof = "function" == typeof Symbol && "symbol" == typeof Symbol.iterator ? function (o) { - return typeof o; - } : function (o) { - return o && "function" == typeof Symbol && o.constructor === Symbol && o !== Symbol.prototype ? "symbol" : typeof o; - }, module.exports.__esModule = true, module.exports["default"] = module.exports), _typeof(o); + +/** + * Determines whether the specified URL is absolute + * + * @param {string} url The URL to test + * + * @returns {boolean} True if the specified URL is absolute, otherwise false + */ +function isAbsoluteURL(url) { + // A URL is considered absolute if it begins with "://" or "//" (protocol-relative URL). + // RFC 3986 defines scheme name as a sequence of characters beginning with a letter and followed + // by any combination of letters, digits, plus, period, or hyphen. + return /^([a-z][a-z\d+\-.]*:)?\/\//i.test(url); } -module.exports = _typeof, module.exports.__esModule = true, module.exports["default"] = module.exports; + /***/ }), -/***/ "./node_modules/@babel/runtime/regenerator/index.js": -/*!**********************************************************!*\ - !*** ./node_modules/@babel/runtime/regenerator/index.js ***! - \**********************************************************/ -/***/ ((module, __unused_webpack_exports, __webpack_require__) => { +/***/ "./node_modules/.pnpm/axios@1.7.9/node_modules/axios/lib/helpers/isAxiosError.js": +/*!***************************************************************************************!*\ + !*** ./node_modules/.pnpm/axios@1.7.9/node_modules/axios/lib/helpers/isAxiosError.js ***! + \***************************************************************************************/ +/***/ ((__unused_webpack___webpack_module__, __webpack_exports__, __webpack_require__) => { -// TODO(Babel 8): Remove this file. +"use strict"; +__webpack_require__.r(__webpack_exports__); +/* harmony export */ __webpack_require__.d(__webpack_exports__, { +/* harmony export */ "default": () => (/* binding */ isAxiosError) +/* harmony export */ }); +/* harmony import */ var _utils_js__WEBPACK_IMPORTED_MODULE_0__ = __webpack_require__(/*! ./../utils.js */ "./node_modules/.pnpm/axios@1.7.9/node_modules/axios/lib/utils.js"); -var runtime = __webpack_require__(/*! ../helpers/regeneratorRuntime */ "./node_modules/@babel/runtime/helpers/regeneratorRuntime.js")(); -module.exports = runtime; -// Copied from https://github.com/facebook/regenerator/blob/main/packages/runtime/runtime.js#L736= -try { - regeneratorRuntime = runtime; -} catch (accidentalStrictMode) { - if (typeof globalThis === "object") { - globalThis.regeneratorRuntime = runtime; - } else { - Function("r", "regeneratorRuntime = r")(runtime); - } + + +/** + * Determines whether the payload is an error thrown by Axios + * + * @param {*} payload The value to test + * + * @returns {boolean} True if the payload is an error thrown by Axios, otherwise false + */ +function isAxiosError(payload) { + return _utils_js__WEBPACK_IMPORTED_MODULE_0__["default"].isObject(payload) && (payload.isAxiosError === true); } /***/ }), -/***/ "./node_modules/@babel/runtime/helpers/esm/arrayLikeToArray.js": -/*!*********************************************************************!*\ - !*** ./node_modules/@babel/runtime/helpers/esm/arrayLikeToArray.js ***! - \*********************************************************************/ +/***/ "./node_modules/.pnpm/axios@1.7.9/node_modules/axios/lib/helpers/isURLSameOrigin.js": +/*!******************************************************************************************!*\ + !*** ./node_modules/.pnpm/axios@1.7.9/node_modules/axios/lib/helpers/isURLSameOrigin.js ***! + \******************************************************************************************/ /***/ ((__unused_webpack___webpack_module__, __webpack_exports__, __webpack_require__) => { "use strict"; __webpack_require__.r(__webpack_exports__); /* harmony export */ __webpack_require__.d(__webpack_exports__, { -/* harmony export */ "default": () => (/* binding */ _arrayLikeToArray) +/* harmony export */ "default": () => (__WEBPACK_DEFAULT_EXPORT__) /* harmony export */ }); -function _arrayLikeToArray(arr, len) { - if (len == null || len > arr.length) len = arr.length; - for (var i = 0, arr2 = new Array(len); i < len; i++) arr2[i] = arr[i]; - return arr2; -} +/* harmony import */ var _platform_index_js__WEBPACK_IMPORTED_MODULE_0__ = __webpack_require__(/*! ../platform/index.js */ "./node_modules/.pnpm/axios@1.7.9/node_modules/axios/lib/platform/index.js"); + + +/* harmony default export */ const __WEBPACK_DEFAULT_EXPORT__ = (_platform_index_js__WEBPACK_IMPORTED_MODULE_0__["default"].hasStandardBrowserEnv ? ((origin, isMSIE) => (url) => { + url = new URL(url, _platform_index_js__WEBPACK_IMPORTED_MODULE_0__["default"].origin); + + return ( + origin.protocol === url.protocol && + origin.host === url.host && + (isMSIE || origin.port === url.port) + ); +})( + new URL(_platform_index_js__WEBPACK_IMPORTED_MODULE_0__["default"].origin), + _platform_index_js__WEBPACK_IMPORTED_MODULE_0__["default"].navigator && /(msie|trident)/i.test(_platform_index_js__WEBPACK_IMPORTED_MODULE_0__["default"].navigator.userAgent) +) : () => true); + /***/ }), -/***/ "./node_modules/@babel/runtime/helpers/esm/arrayWithHoles.js": -/*!*******************************************************************!*\ - !*** ./node_modules/@babel/runtime/helpers/esm/arrayWithHoles.js ***! - \*******************************************************************/ +/***/ "./node_modules/.pnpm/axios@1.7.9/node_modules/axios/lib/helpers/null.js": +/*!*******************************************************************************!*\ + !*** ./node_modules/.pnpm/axios@1.7.9/node_modules/axios/lib/helpers/null.js ***! + \*******************************************************************************/ /***/ ((__unused_webpack___webpack_module__, __webpack_exports__, __webpack_require__) => { "use strict"; __webpack_require__.r(__webpack_exports__); /* harmony export */ __webpack_require__.d(__webpack_exports__, { -/* harmony export */ "default": () => (/* binding */ _arrayWithHoles) +/* harmony export */ "default": () => (__WEBPACK_DEFAULT_EXPORT__) /* harmony export */ }); -function _arrayWithHoles(arr) { - if (Array.isArray(arr)) return arr; -} +// eslint-disable-next-line strict +/* harmony default export */ const __WEBPACK_DEFAULT_EXPORT__ = (null); + /***/ }), -/***/ "./node_modules/@babel/runtime/helpers/esm/arrayWithoutHoles.js": -/*!**********************************************************************!*\ - !*** ./node_modules/@babel/runtime/helpers/esm/arrayWithoutHoles.js ***! - \**********************************************************************/ +/***/ "./node_modules/.pnpm/axios@1.7.9/node_modules/axios/lib/helpers/parseHeaders.js": +/*!***************************************************************************************!*\ + !*** ./node_modules/.pnpm/axios@1.7.9/node_modules/axios/lib/helpers/parseHeaders.js ***! + \***************************************************************************************/ /***/ ((__unused_webpack___webpack_module__, __webpack_exports__, __webpack_require__) => { "use strict"; __webpack_require__.r(__webpack_exports__); /* harmony export */ __webpack_require__.d(__webpack_exports__, { -/* harmony export */ "default": () => (/* binding */ _arrayWithoutHoles) +/* harmony export */ "default": () => (__WEBPACK_DEFAULT_EXPORT__) /* harmony export */ }); -/* harmony import */ var _arrayLikeToArray_js__WEBPACK_IMPORTED_MODULE_0__ = __webpack_require__(/*! ./arrayLikeToArray.js */ "./node_modules/@babel/runtime/helpers/esm/arrayLikeToArray.js"); +/* harmony import */ var _utils_js__WEBPACK_IMPORTED_MODULE_0__ = __webpack_require__(/*! ./../utils.js */ "./node_modules/.pnpm/axios@1.7.9/node_modules/axios/lib/utils.js"); + + + + +// RawAxiosHeaders whose duplicates are ignored by node +// c.f. https://nodejs.org/api/http.html#http_message_headers +const ignoreDuplicateOf = _utils_js__WEBPACK_IMPORTED_MODULE_0__["default"].toObjectSet([ + 'age', 'authorization', 'content-length', 'content-type', 'etag', + 'expires', 'from', 'host', 'if-modified-since', 'if-unmodified-since', + 'last-modified', 'location', 'max-forwards', 'proxy-authorization', + 'referer', 'retry-after', 'user-agent' +]); + +/** + * Parse headers into an object + * + * ``` + * Date: Wed, 27 Aug 2014 08:58:49 GMT + * Content-Type: application/json + * Connection: keep-alive + * Transfer-Encoding: chunked + * ``` + * + * @param {String} rawHeaders Headers needing to be parsed + * + * @returns {Object} Headers parsed into an object + */ +/* harmony default export */ const __WEBPACK_DEFAULT_EXPORT__ = (rawHeaders => { + const parsed = {}; + let key; + let val; + let i; + + rawHeaders && rawHeaders.split('\n').forEach(function parser(line) { + i = line.indexOf(':'); + key = line.substring(0, i).trim().toLowerCase(); + val = line.substring(i + 1).trim(); + + if (!key || (parsed[key] && ignoreDuplicateOf[key])) { + return; + } + + if (key === 'set-cookie') { + if (parsed[key]) { + parsed[key].push(val); + } else { + parsed[key] = [val]; + } + } else { + parsed[key] = parsed[key] ? parsed[key] + ', ' + val : val; + } + }); + + return parsed; +}); -function _arrayWithoutHoles(arr) { - if (Array.isArray(arr)) return (0,_arrayLikeToArray_js__WEBPACK_IMPORTED_MODULE_0__["default"])(arr); -} /***/ }), -/***/ "./node_modules/@babel/runtime/helpers/esm/assertThisInitialized.js": -/*!**************************************************************************!*\ - !*** ./node_modules/@babel/runtime/helpers/esm/assertThisInitialized.js ***! - \**************************************************************************/ +/***/ "./node_modules/.pnpm/axios@1.7.9/node_modules/axios/lib/helpers/parseProtocol.js": +/*!****************************************************************************************!*\ + !*** ./node_modules/.pnpm/axios@1.7.9/node_modules/axios/lib/helpers/parseProtocol.js ***! + \****************************************************************************************/ /***/ ((__unused_webpack___webpack_module__, __webpack_exports__, __webpack_require__) => { "use strict"; __webpack_require__.r(__webpack_exports__); /* harmony export */ __webpack_require__.d(__webpack_exports__, { -/* harmony export */ "default": () => (/* binding */ _assertThisInitialized) +/* harmony export */ "default": () => (/* binding */ parseProtocol) /* harmony export */ }); -function _assertThisInitialized(self) { - if (self === void 0) { - throw new ReferenceError("this hasn't been initialised - super() hasn't been called"); - } - return self; + + +function parseProtocol(url) { + const match = /^([-+\w]{1,25})(:?\/\/|:)/.exec(url); + return match && match[1] || ''; } + /***/ }), -/***/ "./node_modules/@babel/runtime/helpers/esm/asyncToGenerator.js": -/*!*********************************************************************!*\ - !*** ./node_modules/@babel/runtime/helpers/esm/asyncToGenerator.js ***! - \*********************************************************************/ +/***/ "./node_modules/.pnpm/axios@1.7.9/node_modules/axios/lib/helpers/progressEventReducer.js": +/*!***********************************************************************************************!*\ + !*** ./node_modules/.pnpm/axios@1.7.9/node_modules/axios/lib/helpers/progressEventReducer.js ***! + \***********************************************************************************************/ /***/ ((__unused_webpack___webpack_module__, __webpack_exports__, __webpack_require__) => { "use strict"; __webpack_require__.r(__webpack_exports__); /* harmony export */ __webpack_require__.d(__webpack_exports__, { -/* harmony export */ "default": () => (/* binding */ _asyncToGenerator) +/* harmony export */ asyncDecorator: () => (/* binding */ asyncDecorator), +/* harmony export */ progressEventDecorator: () => (/* binding */ progressEventDecorator), +/* harmony export */ progressEventReducer: () => (/* binding */ progressEventReducer) /* harmony export */ }); -function asyncGeneratorStep(gen, resolve, reject, _next, _throw, key, arg) { - try { - var info = gen[key](arg); - var value = info.value; - } catch (error) { - reject(error); - return; - } - if (info.done) { - resolve(value); - } else { - Promise.resolve(value).then(_next, _throw); - } +/* harmony import */ var _speedometer_js__WEBPACK_IMPORTED_MODULE_0__ = __webpack_require__(/*! ./speedometer.js */ "./node_modules/.pnpm/axios@1.7.9/node_modules/axios/lib/helpers/speedometer.js"); +/* harmony import */ var _throttle_js__WEBPACK_IMPORTED_MODULE_1__ = __webpack_require__(/*! ./throttle.js */ "./node_modules/.pnpm/axios@1.7.9/node_modules/axios/lib/helpers/throttle.js"); +/* harmony import */ var _utils_js__WEBPACK_IMPORTED_MODULE_2__ = __webpack_require__(/*! ../utils.js */ "./node_modules/.pnpm/axios@1.7.9/node_modules/axios/lib/utils.js"); + + + + +const progressEventReducer = (listener, isDownloadStream, freq = 3) => { + let bytesNotified = 0; + const _speedometer = (0,_speedometer_js__WEBPACK_IMPORTED_MODULE_0__["default"])(50, 250); + + return (0,_throttle_js__WEBPACK_IMPORTED_MODULE_1__["default"])(e => { + const loaded = e.loaded; + const total = e.lengthComputable ? e.total : undefined; + const progressBytes = loaded - bytesNotified; + const rate = _speedometer(progressBytes); + const inRange = loaded <= total; + + bytesNotified = loaded; + + const data = { + loaded, + total, + progress: total ? (loaded / total) : undefined, + bytes: progressBytes, + rate: rate ? rate : undefined, + estimated: rate && total && inRange ? (total - loaded) / rate : undefined, + event: e, + lengthComputable: total != null, + [isDownloadStream ? 'download' : 'upload']: true + }; + + listener(data); + }, freq); } -function _asyncToGenerator(fn) { - return function () { - var self = this, - args = arguments; - return new Promise(function (resolve, reject) { - var gen = fn.apply(self, args); - function _next(value) { - asyncGeneratorStep(gen, resolve, reject, _next, _throw, "next", value); - } - function _throw(err) { - asyncGeneratorStep(gen, resolve, reject, _next, _throw, "throw", err); - } - _next(undefined); - }); - }; + +const progressEventDecorator = (total, throttled) => { + const lengthComputable = total != null; + + return [(loaded) => throttled[0]({ + lengthComputable, + total, + loaded + }), throttled[1]]; } +const asyncDecorator = (fn) => (...args) => _utils_js__WEBPACK_IMPORTED_MODULE_2__["default"].asap(() => fn(...args)); + + /***/ }), -/***/ "./node_modules/@babel/runtime/helpers/esm/classCallCheck.js": -/*!*******************************************************************!*\ - !*** ./node_modules/@babel/runtime/helpers/esm/classCallCheck.js ***! - \*******************************************************************/ +/***/ "./node_modules/.pnpm/axios@1.7.9/node_modules/axios/lib/helpers/resolveConfig.js": +/*!****************************************************************************************!*\ + !*** ./node_modules/.pnpm/axios@1.7.9/node_modules/axios/lib/helpers/resolveConfig.js ***! + \****************************************************************************************/ /***/ ((__unused_webpack___webpack_module__, __webpack_exports__, __webpack_require__) => { "use strict"; __webpack_require__.r(__webpack_exports__); /* harmony export */ __webpack_require__.d(__webpack_exports__, { -/* harmony export */ "default": () => (/* binding */ _classCallCheck) +/* harmony export */ "default": () => (__WEBPACK_DEFAULT_EXPORT__) /* harmony export */ }); -function _classCallCheck(instance, Constructor) { - if (!(instance instanceof Constructor)) { - throw new TypeError("Cannot call a class as a function"); +/* harmony import */ var _platform_index_js__WEBPACK_IMPORTED_MODULE_5__ = __webpack_require__(/*! ../platform/index.js */ "./node_modules/.pnpm/axios@1.7.9/node_modules/axios/lib/platform/index.js"); +/* harmony import */ var _utils_js__WEBPACK_IMPORTED_MODULE_4__ = __webpack_require__(/*! ../utils.js */ "./node_modules/.pnpm/axios@1.7.9/node_modules/axios/lib/utils.js"); +/* harmony import */ var _isURLSameOrigin_js__WEBPACK_IMPORTED_MODULE_6__ = __webpack_require__(/*! ./isURLSameOrigin.js */ "./node_modules/.pnpm/axios@1.7.9/node_modules/axios/lib/helpers/isURLSameOrigin.js"); +/* harmony import */ var _cookies_js__WEBPACK_IMPORTED_MODULE_7__ = __webpack_require__(/*! ./cookies.js */ "./node_modules/.pnpm/axios@1.7.9/node_modules/axios/lib/helpers/cookies.js"); +/* harmony import */ var _core_buildFullPath_js__WEBPACK_IMPORTED_MODULE_3__ = __webpack_require__(/*! ../core/buildFullPath.js */ "./node_modules/.pnpm/axios@1.7.9/node_modules/axios/lib/core/buildFullPath.js"); +/* harmony import */ var _core_mergeConfig_js__WEBPACK_IMPORTED_MODULE_0__ = __webpack_require__(/*! ../core/mergeConfig.js */ "./node_modules/.pnpm/axios@1.7.9/node_modules/axios/lib/core/mergeConfig.js"); +/* harmony import */ var _core_AxiosHeaders_js__WEBPACK_IMPORTED_MODULE_1__ = __webpack_require__(/*! ../core/AxiosHeaders.js */ "./node_modules/.pnpm/axios@1.7.9/node_modules/axios/lib/core/AxiosHeaders.js"); +/* harmony import */ var _buildURL_js__WEBPACK_IMPORTED_MODULE_2__ = __webpack_require__(/*! ./buildURL.js */ "./node_modules/.pnpm/axios@1.7.9/node_modules/axios/lib/helpers/buildURL.js"); + + + + + + + + + +/* harmony default export */ const __WEBPACK_DEFAULT_EXPORT__ = ((config) => { + const newConfig = (0,_core_mergeConfig_js__WEBPACK_IMPORTED_MODULE_0__["default"])({}, config); + + let {data, withXSRFToken, xsrfHeaderName, xsrfCookieName, headers, auth} = newConfig; + + newConfig.headers = headers = _core_AxiosHeaders_js__WEBPACK_IMPORTED_MODULE_1__["default"].from(headers); + + newConfig.url = (0,_buildURL_js__WEBPACK_IMPORTED_MODULE_2__["default"])((0,_core_buildFullPath_js__WEBPACK_IMPORTED_MODULE_3__["default"])(newConfig.baseURL, newConfig.url), config.params, config.paramsSerializer); + + // HTTP basic authentication + if (auth) { + headers.set('Authorization', 'Basic ' + + btoa((auth.username || '') + ':' + (auth.password ? unescape(encodeURIComponent(auth.password)) : '')) + ); } -} -/***/ }), + let contentType; -/***/ "./node_modules/@babel/runtime/helpers/esm/construct.js": -/*!**************************************************************!*\ - !*** ./node_modules/@babel/runtime/helpers/esm/construct.js ***! - \**************************************************************/ -/***/ ((__unused_webpack___webpack_module__, __webpack_exports__, __webpack_require__) => { + if (_utils_js__WEBPACK_IMPORTED_MODULE_4__["default"].isFormData(data)) { + if (_platform_index_js__WEBPACK_IMPORTED_MODULE_5__["default"].hasStandardBrowserEnv || _platform_index_js__WEBPACK_IMPORTED_MODULE_5__["default"].hasStandardBrowserWebWorkerEnv) { + headers.setContentType(undefined); // Let the browser set it + } else if ((contentType = headers.getContentType()) !== false) { + // fix semicolon duplication issue for ReactNative FormData implementation + const [type, ...tokens] = contentType ? contentType.split(';').map(token => token.trim()).filter(Boolean) : []; + headers.setContentType([type || 'multipart/form-data', ...tokens].join('; ')); + } + } -"use strict"; -__webpack_require__.r(__webpack_exports__); -/* harmony export */ __webpack_require__.d(__webpack_exports__, { -/* harmony export */ "default": () => (/* binding */ _construct) -/* harmony export */ }); -/* harmony import */ var _setPrototypeOf_js__WEBPACK_IMPORTED_MODULE_0__ = __webpack_require__(/*! ./setPrototypeOf.js */ "./node_modules/@babel/runtime/helpers/esm/setPrototypeOf.js"); -/* harmony import */ var _isNativeReflectConstruct_js__WEBPACK_IMPORTED_MODULE_1__ = __webpack_require__(/*! ./isNativeReflectConstruct.js */ "./node_modules/@babel/runtime/helpers/esm/isNativeReflectConstruct.js"); + // Add xsrf header + // This is only done if running in a standard browser environment. + // Specifically not if we're in a web worker, or react-native. + + if (_platform_index_js__WEBPACK_IMPORTED_MODULE_5__["default"].hasStandardBrowserEnv) { + withXSRFToken && _utils_js__WEBPACK_IMPORTED_MODULE_4__["default"].isFunction(withXSRFToken) && (withXSRFToken = withXSRFToken(newConfig)); + + if (withXSRFToken || (withXSRFToken !== false && (0,_isURLSameOrigin_js__WEBPACK_IMPORTED_MODULE_6__["default"])(newConfig.url))) { + // Add xsrf header + const xsrfValue = xsrfHeaderName && xsrfCookieName && _cookies_js__WEBPACK_IMPORTED_MODULE_7__["default"].read(xsrfCookieName); + + if (xsrfValue) { + headers.set(xsrfHeaderName, xsrfValue); + } + } + } + + return newConfig; +}); -function _construct(t, e, r) { - if ((0,_isNativeReflectConstruct_js__WEBPACK_IMPORTED_MODULE_1__["default"])()) return Reflect.construct.apply(null, arguments); - var o = [null]; - o.push.apply(o, e); - var p = new (t.bind.apply(t, o))(); - return r && (0,_setPrototypeOf_js__WEBPACK_IMPORTED_MODULE_0__["default"])(p, r.prototype), p; -} /***/ }), -/***/ "./node_modules/@babel/runtime/helpers/esm/createClass.js": -/*!****************************************************************!*\ - !*** ./node_modules/@babel/runtime/helpers/esm/createClass.js ***! - \****************************************************************/ +/***/ "./node_modules/.pnpm/axios@1.7.9/node_modules/axios/lib/helpers/speedometer.js": +/*!**************************************************************************************!*\ + !*** ./node_modules/.pnpm/axios@1.7.9/node_modules/axios/lib/helpers/speedometer.js ***! + \**************************************************************************************/ /***/ ((__unused_webpack___webpack_module__, __webpack_exports__, __webpack_require__) => { "use strict"; __webpack_require__.r(__webpack_exports__); /* harmony export */ __webpack_require__.d(__webpack_exports__, { -/* harmony export */ "default": () => (/* binding */ _createClass) +/* harmony export */ "default": () => (__WEBPACK_DEFAULT_EXPORT__) /* harmony export */ }); -/* harmony import */ var _toPropertyKey_js__WEBPACK_IMPORTED_MODULE_0__ = __webpack_require__(/*! ./toPropertyKey.js */ "./node_modules/@babel/runtime/helpers/esm/toPropertyKey.js"); -function _defineProperties(target, props) { - for (var i = 0; i < props.length; i++) { - var descriptor = props[i]; - descriptor.enumerable = descriptor.enumerable || false; - descriptor.configurable = true; - if ("value" in descriptor) descriptor.writable = true; - Object.defineProperty(target, (0,_toPropertyKey_js__WEBPACK_IMPORTED_MODULE_0__["default"])(descriptor.key), descriptor); - } -} -function _createClass(Constructor, protoProps, staticProps) { - if (protoProps) _defineProperties(Constructor.prototype, protoProps); - if (staticProps) _defineProperties(Constructor, staticProps); - Object.defineProperty(Constructor, "prototype", { - writable: false - }); - return Constructor; -} -/***/ }), +/** + * Calculate data maxRate + * @param {Number} [samplesCount= 10] + * @param {Number} [min= 1000] + * @returns {Function} + */ +function speedometer(samplesCount, min) { + samplesCount = samplesCount || 10; + const bytes = new Array(samplesCount); + const timestamps = new Array(samplesCount); + let head = 0; + let tail = 0; + let firstSampleTS; + + min = min !== undefined ? min : 1000; + + return function push(chunkLength) { + const now = Date.now(); + + const startedAt = timestamps[tail]; + + if (!firstSampleTS) { + firstSampleTS = now; + } + + bytes[head] = chunkLength; + timestamps[head] = now; + + let i = tail; + let bytesCount = 0; + + while (i !== head) { + bytesCount += bytes[i++]; + i = i % samplesCount; + } + + head = (head + 1) % samplesCount; + + if (head === tail) { + tail = (tail + 1) % samplesCount; + } -/***/ "./node_modules/@babel/runtime/helpers/esm/defineProperty.js": -/*!*******************************************************************!*\ - !*** ./node_modules/@babel/runtime/helpers/esm/defineProperty.js ***! - \*******************************************************************/ -/***/ ((__unused_webpack___webpack_module__, __webpack_exports__, __webpack_require__) => { + if (now - firstSampleTS < min) { + return; + } -"use strict"; -__webpack_require__.r(__webpack_exports__); -/* harmony export */ __webpack_require__.d(__webpack_exports__, { -/* harmony export */ "default": () => (/* binding */ _defineProperty) -/* harmony export */ }); -/* harmony import */ var _toPropertyKey_js__WEBPACK_IMPORTED_MODULE_0__ = __webpack_require__(/*! ./toPropertyKey.js */ "./node_modules/@babel/runtime/helpers/esm/toPropertyKey.js"); + const passed = startedAt && now - startedAt; -function _defineProperty(obj, key, value) { - key = (0,_toPropertyKey_js__WEBPACK_IMPORTED_MODULE_0__["default"])(key); - if (key in obj) { - Object.defineProperty(obj, key, { - value: value, - enumerable: true, - configurable: true, - writable: true - }); - } else { - obj[key] = value; - } - return obj; + return passed ? Math.round(bytesCount * 1000 / passed) : undefined; + }; } +/* harmony default export */ const __WEBPACK_DEFAULT_EXPORT__ = (speedometer); + + /***/ }), -/***/ "./node_modules/@babel/runtime/helpers/esm/getPrototypeOf.js": -/*!*******************************************************************!*\ - !*** ./node_modules/@babel/runtime/helpers/esm/getPrototypeOf.js ***! - \*******************************************************************/ +/***/ "./node_modules/.pnpm/axios@1.7.9/node_modules/axios/lib/helpers/spread.js": +/*!*********************************************************************************!*\ + !*** ./node_modules/.pnpm/axios@1.7.9/node_modules/axios/lib/helpers/spread.js ***! + \*********************************************************************************/ /***/ ((__unused_webpack___webpack_module__, __webpack_exports__, __webpack_require__) => { "use strict"; __webpack_require__.r(__webpack_exports__); /* harmony export */ __webpack_require__.d(__webpack_exports__, { -/* harmony export */ "default": () => (/* binding */ _getPrototypeOf) +/* harmony export */ "default": () => (/* binding */ spread) /* harmony export */ }); -function _getPrototypeOf(o) { - _getPrototypeOf = Object.setPrototypeOf ? Object.getPrototypeOf.bind() : function _getPrototypeOf(o) { - return o.__proto__ || Object.getPrototypeOf(o); + + +/** + * Syntactic sugar for invoking a function and expanding an array for arguments. + * + * Common use case would be to use `Function.prototype.apply`. + * + * ```js + * function f(x, y, z) {} + * var args = [1, 2, 3]; + * f.apply(null, args); + * ``` + * + * With `spread` this example can be re-written. + * + * ```js + * spread(function(x, y, z) {})([1, 2, 3]); + * ``` + * + * @param {Function} callback + * + * @returns {Function} + */ +function spread(callback) { + return function wrap(arr) { + return callback.apply(null, arr); }; - return _getPrototypeOf(o); } + /***/ }), -/***/ "./node_modules/@babel/runtime/helpers/esm/inherits.js": -/*!*************************************************************!*\ - !*** ./node_modules/@babel/runtime/helpers/esm/inherits.js ***! - \*************************************************************/ +/***/ "./node_modules/.pnpm/axios@1.7.9/node_modules/axios/lib/helpers/throttle.js": +/*!***********************************************************************************!*\ + !*** ./node_modules/.pnpm/axios@1.7.9/node_modules/axios/lib/helpers/throttle.js ***! + \***********************************************************************************/ /***/ ((__unused_webpack___webpack_module__, __webpack_exports__, __webpack_require__) => { "use strict"; __webpack_require__.r(__webpack_exports__); /* harmony export */ __webpack_require__.d(__webpack_exports__, { -/* harmony export */ "default": () => (/* binding */ _inherits) +/* harmony export */ "default": () => (__WEBPACK_DEFAULT_EXPORT__) /* harmony export */ }); -/* harmony import */ var _setPrototypeOf_js__WEBPACK_IMPORTED_MODULE_0__ = __webpack_require__(/*! ./setPrototypeOf.js */ "./node_modules/@babel/runtime/helpers/esm/setPrototypeOf.js"); +/** + * Throttle decorator + * @param {Function} fn + * @param {Number} freq + * @return {Function} + */ +function throttle(fn, freq) { + let timestamp = 0; + let threshold = 1000 / freq; + let lastArgs; + let timer; -function _inherits(subClass, superClass) { - if (typeof superClass !== "function" && superClass !== null) { - throw new TypeError("Super expression must either be null or a function"); + const invoke = (args, now = Date.now()) => { + timestamp = now; + lastArgs = null; + if (timer) { + clearTimeout(timer); + timer = null; + } + fn.apply(null, args); } - subClass.prototype = Object.create(superClass && superClass.prototype, { - constructor: { - value: subClass, - writable: true, - configurable: true + + const throttled = (...args) => { + const now = Date.now(); + const passed = now - timestamp; + if ( passed >= threshold) { + invoke(args, now); + } else { + lastArgs = args; + if (!timer) { + timer = setTimeout(() => { + timer = null; + invoke(lastArgs) + }, threshold - passed); + } } - }); - Object.defineProperty(subClass, "prototype", { - writable: false - }); - if (superClass) (0,_setPrototypeOf_js__WEBPACK_IMPORTED_MODULE_0__["default"])(subClass, superClass); + } + + const flush = () => lastArgs && invoke(lastArgs); + + return [throttled, flush]; } +/* harmony default export */ const __WEBPACK_DEFAULT_EXPORT__ = (throttle); + + /***/ }), -/***/ "./node_modules/@babel/runtime/helpers/esm/isNativeFunction.js": -/*!*********************************************************************!*\ - !*** ./node_modules/@babel/runtime/helpers/esm/isNativeFunction.js ***! - \*********************************************************************/ +/***/ "./node_modules/.pnpm/axios@1.7.9/node_modules/axios/lib/helpers/toFormData.js": +/*!*************************************************************************************!*\ + !*** ./node_modules/.pnpm/axios@1.7.9/node_modules/axios/lib/helpers/toFormData.js ***! + \*************************************************************************************/ /***/ ((__unused_webpack___webpack_module__, __webpack_exports__, __webpack_require__) => { "use strict"; __webpack_require__.r(__webpack_exports__); /* harmony export */ __webpack_require__.d(__webpack_exports__, { -/* harmony export */ "default": () => (/* binding */ _isNativeFunction) +/* harmony export */ "default": () => (__WEBPACK_DEFAULT_EXPORT__) /* harmony export */ }); -function _isNativeFunction(fn) { - try { - return Function.toString.call(fn).indexOf("[native code]") !== -1; - } catch (e) { - return typeof fn === "function"; - } -} +/* harmony import */ var _utils_js__WEBPACK_IMPORTED_MODULE_0__ = __webpack_require__(/*! ../utils.js */ "./node_modules/.pnpm/axios@1.7.9/node_modules/axios/lib/utils.js"); +/* harmony import */ var _core_AxiosError_js__WEBPACK_IMPORTED_MODULE_2__ = __webpack_require__(/*! ../core/AxiosError.js */ "./node_modules/.pnpm/axios@1.7.9/node_modules/axios/lib/core/AxiosError.js"); +/* harmony import */ var _platform_node_classes_FormData_js__WEBPACK_IMPORTED_MODULE_1__ = __webpack_require__(/*! ../platform/node/classes/FormData.js */ "./node_modules/.pnpm/axios@1.7.9/node_modules/axios/lib/helpers/null.js"); -/***/ }), -/***/ "./node_modules/@babel/runtime/helpers/esm/isNativeReflectConstruct.js": -/*!*****************************************************************************!*\ - !*** ./node_modules/@babel/runtime/helpers/esm/isNativeReflectConstruct.js ***! - \*****************************************************************************/ -/***/ ((__unused_webpack___webpack_module__, __webpack_exports__, __webpack_require__) => { -"use strict"; -__webpack_require__.r(__webpack_exports__); -/* harmony export */ __webpack_require__.d(__webpack_exports__, { -/* harmony export */ "default": () => (/* binding */ _isNativeReflectConstruct) -/* harmony export */ }); -function _isNativeReflectConstruct() { - try { - var t = !Boolean.prototype.valueOf.call(Reflect.construct(Boolean, [], function () {})); - } catch (t) {} - return (_isNativeReflectConstruct = function _isNativeReflectConstruct() { - return !!t; - })(); -} -/***/ }), +// temporary hotfix to avoid circular references until AxiosURLSearchParams is refactored -/***/ "./node_modules/@babel/runtime/helpers/esm/iterableToArray.js": -/*!********************************************************************!*\ - !*** ./node_modules/@babel/runtime/helpers/esm/iterableToArray.js ***! - \********************************************************************/ -/***/ ((__unused_webpack___webpack_module__, __webpack_exports__, __webpack_require__) => { -"use strict"; -__webpack_require__.r(__webpack_exports__); -/* harmony export */ __webpack_require__.d(__webpack_exports__, { -/* harmony export */ "default": () => (/* binding */ _iterableToArray) -/* harmony export */ }); -function _iterableToArray(iter) { - if (typeof Symbol !== "undefined" && iter[Symbol.iterator] != null || iter["@@iterator"] != null) return Array.from(iter); +/** + * Determines if the given thing is a array or js object. + * + * @param {string} thing - The object or array to be visited. + * + * @returns {boolean} + */ +function isVisitable(thing) { + return _utils_js__WEBPACK_IMPORTED_MODULE_0__["default"].isPlainObject(thing) || _utils_js__WEBPACK_IMPORTED_MODULE_0__["default"].isArray(thing); } -/***/ }), +/** + * It removes the brackets from the end of a string + * + * @param {string} key - The key of the parameter. + * + * @returns {string} the key without the brackets. + */ +function removeBrackets(key) { + return _utils_js__WEBPACK_IMPORTED_MODULE_0__["default"].endsWith(key, '[]') ? key.slice(0, -2) : key; +} -/***/ "./node_modules/@babel/runtime/helpers/esm/iterableToArrayLimit.js": -/*!*************************************************************************!*\ - !*** ./node_modules/@babel/runtime/helpers/esm/iterableToArrayLimit.js ***! - \*************************************************************************/ -/***/ ((__unused_webpack___webpack_module__, __webpack_exports__, __webpack_require__) => { +/** + * It takes a path, a key, and a boolean, and returns a string + * + * @param {string} path - The path to the current key. + * @param {string} key - The key of the current object being iterated over. + * @param {string} dots - If true, the key will be rendered with dots instead of brackets. + * + * @returns {string} The path to the current key. + */ +function renderKey(path, key, dots) { + if (!path) return key; + return path.concat(key).map(function each(token, i) { + // eslint-disable-next-line no-param-reassign + token = removeBrackets(token); + return !dots && i ? '[' + token + ']' : token; + }).join(dots ? '.' : ''); +} -"use strict"; -__webpack_require__.r(__webpack_exports__); -/* harmony export */ __webpack_require__.d(__webpack_exports__, { -/* harmony export */ "default": () => (/* binding */ _iterableToArrayLimit) -/* harmony export */ }); -function _iterableToArrayLimit(r, l) { - var t = null == r ? null : "undefined" != typeof Symbol && r[Symbol.iterator] || r["@@iterator"]; - if (null != t) { - var e, - n, - i, - u, - a = [], - f = !0, - o = !1; - try { - if (i = (t = t.call(r)).next, 0 === l) { - if (Object(t) !== t) return; - f = !1; - } else for (; !(f = (e = i.call(t)).done) && (a.push(e.value), a.length !== l); f = !0); - } catch (r) { - o = !0, n = r; - } finally { - try { - if (!f && null != t["return"] && (u = t["return"](), Object(u) !== u)) return; - } finally { - if (o) throw n; - } - } - return a; - } +/** + * If the array is an array and none of its elements are visitable, then it's a flat array. + * + * @param {Array} arr - The array to check + * + * @returns {boolean} + */ +function isFlatArray(arr) { + return _utils_js__WEBPACK_IMPORTED_MODULE_0__["default"].isArray(arr) && !arr.some(isVisitable); } -/***/ }), +const predicates = _utils_js__WEBPACK_IMPORTED_MODULE_0__["default"].toFlatObject(_utils_js__WEBPACK_IMPORTED_MODULE_0__["default"], {}, null, function filter(prop) { + return /^is[A-Z]/.test(prop); +}); -/***/ "./node_modules/@babel/runtime/helpers/esm/nonIterableRest.js": -/*!********************************************************************!*\ - !*** ./node_modules/@babel/runtime/helpers/esm/nonIterableRest.js ***! - \********************************************************************/ -/***/ ((__unused_webpack___webpack_module__, __webpack_exports__, __webpack_require__) => { +/** + * Convert a data object to FormData + * + * @param {Object} obj + * @param {?Object} [formData] + * @param {?Object} [options] + * @param {Function} [options.visitor] + * @param {Boolean} [options.metaTokens = true] + * @param {Boolean} [options.dots = false] + * @param {?Boolean} [options.indexes = false] + * + * @returns {Object} + **/ -"use strict"; -__webpack_require__.r(__webpack_exports__); -/* harmony export */ __webpack_require__.d(__webpack_exports__, { -/* harmony export */ "default": () => (/* binding */ _nonIterableRest) -/* harmony export */ }); -function _nonIterableRest() { - throw new TypeError("Invalid attempt to destructure non-iterable instance.\nIn order to be iterable, non-array objects must have a [Symbol.iterator]() method."); -} +/** + * It converts an object into a FormData object + * + * @param {Object} obj - The object to convert to form data. + * @param {string} formData - The FormData object to append to. + * @param {Object} options + * + * @returns + */ +function toFormData(obj, formData, options) { + if (!_utils_js__WEBPACK_IMPORTED_MODULE_0__["default"].isObject(obj)) { + throw new TypeError('target must be an object'); + } -/***/ }), + // eslint-disable-next-line no-param-reassign + formData = formData || new (_platform_node_classes_FormData_js__WEBPACK_IMPORTED_MODULE_1__["default"] || FormData)(); + + // eslint-disable-next-line no-param-reassign + options = _utils_js__WEBPACK_IMPORTED_MODULE_0__["default"].toFlatObject(options, { + metaTokens: true, + dots: false, + indexes: false + }, false, function defined(option, source) { + // eslint-disable-next-line no-eq-null,eqeqeq + return !_utils_js__WEBPACK_IMPORTED_MODULE_0__["default"].isUndefined(source[option]); + }); -/***/ "./node_modules/@babel/runtime/helpers/esm/nonIterableSpread.js": -/*!**********************************************************************!*\ - !*** ./node_modules/@babel/runtime/helpers/esm/nonIterableSpread.js ***! - \**********************************************************************/ -/***/ ((__unused_webpack___webpack_module__, __webpack_exports__, __webpack_require__) => { + const metaTokens = options.metaTokens; + // eslint-disable-next-line no-use-before-define + const visitor = options.visitor || defaultVisitor; + const dots = options.dots; + const indexes = options.indexes; + const _Blob = options.Blob || typeof Blob !== 'undefined' && Blob; + const useBlob = _Blob && _utils_js__WEBPACK_IMPORTED_MODULE_0__["default"].isSpecCompliantForm(formData); -"use strict"; -__webpack_require__.r(__webpack_exports__); -/* harmony export */ __webpack_require__.d(__webpack_exports__, { -/* harmony export */ "default": () => (/* binding */ _nonIterableSpread) -/* harmony export */ }); -function _nonIterableSpread() { - throw new TypeError("Invalid attempt to spread non-iterable instance.\nIn order to be iterable, non-array objects must have a [Symbol.iterator]() method."); -} + if (!_utils_js__WEBPACK_IMPORTED_MODULE_0__["default"].isFunction(visitor)) { + throw new TypeError('visitor must be a function'); + } -/***/ }), + function convertValue(value) { + if (value === null) return ''; -/***/ "./node_modules/@babel/runtime/helpers/esm/possibleConstructorReturn.js": -/*!******************************************************************************!*\ - !*** ./node_modules/@babel/runtime/helpers/esm/possibleConstructorReturn.js ***! - \******************************************************************************/ -/***/ ((__unused_webpack___webpack_module__, __webpack_exports__, __webpack_require__) => { + if (_utils_js__WEBPACK_IMPORTED_MODULE_0__["default"].isDate(value)) { + return value.toISOString(); + } -"use strict"; -__webpack_require__.r(__webpack_exports__); -/* harmony export */ __webpack_require__.d(__webpack_exports__, { -/* harmony export */ "default": () => (/* binding */ _possibleConstructorReturn) -/* harmony export */ }); -/* harmony import */ var _typeof_js__WEBPACK_IMPORTED_MODULE_0__ = __webpack_require__(/*! ./typeof.js */ "./node_modules/@babel/runtime/helpers/esm/typeof.js"); -/* harmony import */ var _assertThisInitialized_js__WEBPACK_IMPORTED_MODULE_1__ = __webpack_require__(/*! ./assertThisInitialized.js */ "./node_modules/@babel/runtime/helpers/esm/assertThisInitialized.js"); + if (!useBlob && _utils_js__WEBPACK_IMPORTED_MODULE_0__["default"].isBlob(value)) { + throw new _core_AxiosError_js__WEBPACK_IMPORTED_MODULE_2__["default"]('Blob is not supported. Use a Buffer instead.'); + } + if (_utils_js__WEBPACK_IMPORTED_MODULE_0__["default"].isArrayBuffer(value) || _utils_js__WEBPACK_IMPORTED_MODULE_0__["default"].isTypedArray(value)) { + return useBlob && typeof Blob === 'function' ? new Blob([value]) : Buffer.from(value); + } -function _possibleConstructorReturn(self, call) { - if (call && ((0,_typeof_js__WEBPACK_IMPORTED_MODULE_0__["default"])(call) === "object" || typeof call === "function")) { - return call; - } else if (call !== void 0) { - throw new TypeError("Derived constructors may only return object or undefined"); + return value; } - return (0,_assertThisInitialized_js__WEBPACK_IMPORTED_MODULE_1__["default"])(self); -} -/***/ }), + /** + * Default visitor. + * + * @param {*} value + * @param {String|Number} key + * @param {Array} path + * @this {FormData} + * + * @returns {boolean} return true to visit the each prop of the value recursively + */ + function defaultVisitor(value, key, path) { + let arr = value; -/***/ "./node_modules/@babel/runtime/helpers/esm/setPrototypeOf.js": -/*!*******************************************************************!*\ - !*** ./node_modules/@babel/runtime/helpers/esm/setPrototypeOf.js ***! - \*******************************************************************/ -/***/ ((__unused_webpack___webpack_module__, __webpack_exports__, __webpack_require__) => { + if (value && !path && typeof value === 'object') { + if (_utils_js__WEBPACK_IMPORTED_MODULE_0__["default"].endsWith(key, '{}')) { + // eslint-disable-next-line no-param-reassign + key = metaTokens ? key : key.slice(0, -2); + // eslint-disable-next-line no-param-reassign + value = JSON.stringify(value); + } else if ( + (_utils_js__WEBPACK_IMPORTED_MODULE_0__["default"].isArray(value) && isFlatArray(value)) || + ((_utils_js__WEBPACK_IMPORTED_MODULE_0__["default"].isFileList(value) || _utils_js__WEBPACK_IMPORTED_MODULE_0__["default"].endsWith(key, '[]')) && (arr = _utils_js__WEBPACK_IMPORTED_MODULE_0__["default"].toArray(value)) + )) { + // eslint-disable-next-line no-param-reassign + key = removeBrackets(key); -"use strict"; -__webpack_require__.r(__webpack_exports__); -/* harmony export */ __webpack_require__.d(__webpack_exports__, { -/* harmony export */ "default": () => (/* binding */ _setPrototypeOf) -/* harmony export */ }); -function _setPrototypeOf(o, p) { - _setPrototypeOf = Object.setPrototypeOf ? Object.setPrototypeOf.bind() : function _setPrototypeOf(o, p) { - o.__proto__ = p; - return o; - }; - return _setPrototypeOf(o, p); -} + arr.forEach(function each(el, index) { + !(_utils_js__WEBPACK_IMPORTED_MODULE_0__["default"].isUndefined(el) || el === null) && formData.append( + // eslint-disable-next-line no-nested-ternary + indexes === true ? renderKey([key], index, dots) : (indexes === null ? key : key + '[]'), + convertValue(el) + ); + }); + return false; + } + } -/***/ }), + if (isVisitable(value)) { + return true; + } -/***/ "./node_modules/@babel/runtime/helpers/esm/slicedToArray.js": -/*!******************************************************************!*\ - !*** ./node_modules/@babel/runtime/helpers/esm/slicedToArray.js ***! - \******************************************************************/ -/***/ ((__unused_webpack___webpack_module__, __webpack_exports__, __webpack_require__) => { + formData.append(renderKey(path, key, dots), convertValue(value)); -"use strict"; -__webpack_require__.r(__webpack_exports__); -/* harmony export */ __webpack_require__.d(__webpack_exports__, { -/* harmony export */ "default": () => (/* binding */ _slicedToArray) -/* harmony export */ }); -/* harmony import */ var _arrayWithHoles_js__WEBPACK_IMPORTED_MODULE_0__ = __webpack_require__(/*! ./arrayWithHoles.js */ "./node_modules/@babel/runtime/helpers/esm/arrayWithHoles.js"); -/* harmony import */ var _iterableToArrayLimit_js__WEBPACK_IMPORTED_MODULE_1__ = __webpack_require__(/*! ./iterableToArrayLimit.js */ "./node_modules/@babel/runtime/helpers/esm/iterableToArrayLimit.js"); -/* harmony import */ var _unsupportedIterableToArray_js__WEBPACK_IMPORTED_MODULE_2__ = __webpack_require__(/*! ./unsupportedIterableToArray.js */ "./node_modules/@babel/runtime/helpers/esm/unsupportedIterableToArray.js"); -/* harmony import */ var _nonIterableRest_js__WEBPACK_IMPORTED_MODULE_3__ = __webpack_require__(/*! ./nonIterableRest.js */ "./node_modules/@babel/runtime/helpers/esm/nonIterableRest.js"); + return false; + } + const stack = []; + const exposedHelpers = Object.assign(predicates, { + defaultVisitor, + convertValue, + isVisitable + }); + function build(value, path) { + if (_utils_js__WEBPACK_IMPORTED_MODULE_0__["default"].isUndefined(value)) return; -function _slicedToArray(arr, i) { - return (0,_arrayWithHoles_js__WEBPACK_IMPORTED_MODULE_0__["default"])(arr) || (0,_iterableToArrayLimit_js__WEBPACK_IMPORTED_MODULE_1__["default"])(arr, i) || (0,_unsupportedIterableToArray_js__WEBPACK_IMPORTED_MODULE_2__["default"])(arr, i) || (0,_nonIterableRest_js__WEBPACK_IMPORTED_MODULE_3__["default"])(); -} + if (stack.indexOf(value) !== -1) { + throw Error('Circular reference detected in ' + path.join('.')); + } -/***/ }), + stack.push(value); -/***/ "./node_modules/@babel/runtime/helpers/esm/toConsumableArray.js": -/*!**********************************************************************!*\ - !*** ./node_modules/@babel/runtime/helpers/esm/toConsumableArray.js ***! - \**********************************************************************/ -/***/ ((__unused_webpack___webpack_module__, __webpack_exports__, __webpack_require__) => { + _utils_js__WEBPACK_IMPORTED_MODULE_0__["default"].forEach(value, function each(el, key) { + const result = !(_utils_js__WEBPACK_IMPORTED_MODULE_0__["default"].isUndefined(el) || el === null) && visitor.call( + formData, el, _utils_js__WEBPACK_IMPORTED_MODULE_0__["default"].isString(key) ? key.trim() : key, path, exposedHelpers + ); -"use strict"; -__webpack_require__.r(__webpack_exports__); -/* harmony export */ __webpack_require__.d(__webpack_exports__, { -/* harmony export */ "default": () => (/* binding */ _toConsumableArray) -/* harmony export */ }); -/* harmony import */ var _arrayWithoutHoles_js__WEBPACK_IMPORTED_MODULE_0__ = __webpack_require__(/*! ./arrayWithoutHoles.js */ "./node_modules/@babel/runtime/helpers/esm/arrayWithoutHoles.js"); -/* harmony import */ var _iterableToArray_js__WEBPACK_IMPORTED_MODULE_1__ = __webpack_require__(/*! ./iterableToArray.js */ "./node_modules/@babel/runtime/helpers/esm/iterableToArray.js"); -/* harmony import */ var _unsupportedIterableToArray_js__WEBPACK_IMPORTED_MODULE_2__ = __webpack_require__(/*! ./unsupportedIterableToArray.js */ "./node_modules/@babel/runtime/helpers/esm/unsupportedIterableToArray.js"); -/* harmony import */ var _nonIterableSpread_js__WEBPACK_IMPORTED_MODULE_3__ = __webpack_require__(/*! ./nonIterableSpread.js */ "./node_modules/@babel/runtime/helpers/esm/nonIterableSpread.js"); + if (result === true) { + build(el, path ? path.concat(key) : [key]); + } + }); + stack.pop(); + } + if (!_utils_js__WEBPACK_IMPORTED_MODULE_0__["default"].isObject(obj)) { + throw new TypeError('data must be an object'); + } + build(obj); -function _toConsumableArray(arr) { - return (0,_arrayWithoutHoles_js__WEBPACK_IMPORTED_MODULE_0__["default"])(arr) || (0,_iterableToArray_js__WEBPACK_IMPORTED_MODULE_1__["default"])(arr) || (0,_unsupportedIterableToArray_js__WEBPACK_IMPORTED_MODULE_2__["default"])(arr) || (0,_nonIterableSpread_js__WEBPACK_IMPORTED_MODULE_3__["default"])(); + return formData; } +/* harmony default export */ const __WEBPACK_DEFAULT_EXPORT__ = (toFormData); + + /***/ }), -/***/ "./node_modules/@babel/runtime/helpers/esm/toPrimitive.js": -/*!****************************************************************!*\ - !*** ./node_modules/@babel/runtime/helpers/esm/toPrimitive.js ***! - \****************************************************************/ +/***/ "./node_modules/.pnpm/axios@1.7.9/node_modules/axios/lib/helpers/toURLEncodedForm.js": +/*!*******************************************************************************************!*\ + !*** ./node_modules/.pnpm/axios@1.7.9/node_modules/axios/lib/helpers/toURLEncodedForm.js ***! + \*******************************************************************************************/ /***/ ((__unused_webpack___webpack_module__, __webpack_exports__, __webpack_require__) => { "use strict"; __webpack_require__.r(__webpack_exports__); /* harmony export */ __webpack_require__.d(__webpack_exports__, { -/* harmony export */ "default": () => (/* binding */ toPrimitive) +/* harmony export */ "default": () => (/* binding */ toURLEncodedForm) /* harmony export */ }); -/* harmony import */ var _typeof_js__WEBPACK_IMPORTED_MODULE_0__ = __webpack_require__(/*! ./typeof.js */ "./node_modules/@babel/runtime/helpers/esm/typeof.js"); +/* harmony import */ var _utils_js__WEBPACK_IMPORTED_MODULE_2__ = __webpack_require__(/*! ../utils.js */ "./node_modules/.pnpm/axios@1.7.9/node_modules/axios/lib/utils.js"); +/* harmony import */ var _toFormData_js__WEBPACK_IMPORTED_MODULE_0__ = __webpack_require__(/*! ./toFormData.js */ "./node_modules/.pnpm/axios@1.7.9/node_modules/axios/lib/helpers/toFormData.js"); +/* harmony import */ var _platform_index_js__WEBPACK_IMPORTED_MODULE_1__ = __webpack_require__(/*! ../platform/index.js */ "./node_modules/.pnpm/axios@1.7.9/node_modules/axios/lib/platform/index.js"); -function toPrimitive(t, r) { - if ("object" != (0,_typeof_js__WEBPACK_IMPORTED_MODULE_0__["default"])(t) || !t) return t; - var e = t[Symbol.toPrimitive]; - if (void 0 !== e) { - var i = e.call(t, r || "default"); - if ("object" != (0,_typeof_js__WEBPACK_IMPORTED_MODULE_0__["default"])(i)) return i; - throw new TypeError("@@toPrimitive must return a primitive value."); - } - return ("string" === r ? String : Number)(t); -} -/***/ }), -/***/ "./node_modules/@babel/runtime/helpers/esm/toPropertyKey.js": -/*!******************************************************************!*\ - !*** ./node_modules/@babel/runtime/helpers/esm/toPropertyKey.js ***! - \******************************************************************/ -/***/ ((__unused_webpack___webpack_module__, __webpack_exports__, __webpack_require__) => { -"use strict"; -__webpack_require__.r(__webpack_exports__); -/* harmony export */ __webpack_require__.d(__webpack_exports__, { -/* harmony export */ "default": () => (/* binding */ toPropertyKey) -/* harmony export */ }); -/* harmony import */ var _typeof_js__WEBPACK_IMPORTED_MODULE_0__ = __webpack_require__(/*! ./typeof.js */ "./node_modules/@babel/runtime/helpers/esm/typeof.js"); -/* harmony import */ var _toPrimitive_js__WEBPACK_IMPORTED_MODULE_1__ = __webpack_require__(/*! ./toPrimitive.js */ "./node_modules/@babel/runtime/helpers/esm/toPrimitive.js"); -function toPropertyKey(t) { - var i = (0,_toPrimitive_js__WEBPACK_IMPORTED_MODULE_1__["default"])(t, "string"); - return "symbol" == (0,_typeof_js__WEBPACK_IMPORTED_MODULE_0__["default"])(i) ? i : String(i); +function toURLEncodedForm(data, options) { + return (0,_toFormData_js__WEBPACK_IMPORTED_MODULE_0__["default"])(data, new _platform_index_js__WEBPACK_IMPORTED_MODULE_1__["default"].classes.URLSearchParams(), Object.assign({ + visitor: function(value, key, path, helpers) { + if (_platform_index_js__WEBPACK_IMPORTED_MODULE_1__["default"].isNode && _utils_js__WEBPACK_IMPORTED_MODULE_2__["default"].isBuffer(value)) { + this.append(key, value.toString('base64')); + return false; + } + + return helpers.defaultVisitor.apply(this, arguments); + } + }, options)); } + /***/ }), -/***/ "./node_modules/@babel/runtime/helpers/esm/typeof.js": -/*!***********************************************************!*\ - !*** ./node_modules/@babel/runtime/helpers/esm/typeof.js ***! - \***********************************************************/ +/***/ "./node_modules/.pnpm/axios@1.7.9/node_modules/axios/lib/helpers/trackStream.js": +/*!**************************************************************************************!*\ + !*** ./node_modules/.pnpm/axios@1.7.9/node_modules/axios/lib/helpers/trackStream.js ***! + \**************************************************************************************/ /***/ ((__unused_webpack___webpack_module__, __webpack_exports__, __webpack_require__) => { "use strict"; __webpack_require__.r(__webpack_exports__); /* harmony export */ __webpack_require__.d(__webpack_exports__, { -/* harmony export */ "default": () => (/* binding */ _typeof) +/* harmony export */ readBytes: () => (/* binding */ readBytes), +/* harmony export */ streamChunk: () => (/* binding */ streamChunk), +/* harmony export */ trackStream: () => (/* binding */ trackStream) /* harmony export */ }); -function _typeof(o) { - "@babel/helpers - typeof"; - return _typeof = "function" == typeof Symbol && "symbol" == typeof Symbol.iterator ? function (o) { - return typeof o; - } : function (o) { - return o && "function" == typeof Symbol && o.constructor === Symbol && o !== Symbol.prototype ? "symbol" : typeof o; - }, _typeof(o); -} +const streamChunk = function* (chunk, chunkSize) { + let len = chunk.byteLength; -/***/ }), + if (!chunkSize || len < chunkSize) { + yield chunk; + return; + } -/***/ "./node_modules/@babel/runtime/helpers/esm/unsupportedIterableToArray.js": -/*!*******************************************************************************!*\ - !*** ./node_modules/@babel/runtime/helpers/esm/unsupportedIterableToArray.js ***! - \*******************************************************************************/ -/***/ ((__unused_webpack___webpack_module__, __webpack_exports__, __webpack_require__) => { + let pos = 0; + let end; -"use strict"; -__webpack_require__.r(__webpack_exports__); -/* harmony export */ __webpack_require__.d(__webpack_exports__, { -/* harmony export */ "default": () => (/* binding */ _unsupportedIterableToArray) -/* harmony export */ }); -/* harmony import */ var _arrayLikeToArray_js__WEBPACK_IMPORTED_MODULE_0__ = __webpack_require__(/*! ./arrayLikeToArray.js */ "./node_modules/@babel/runtime/helpers/esm/arrayLikeToArray.js"); + while (pos < len) { + end = pos + chunkSize; + yield chunk.slice(pos, end); + pos = end; + } +} -function _unsupportedIterableToArray(o, minLen) { - if (!o) return; - if (typeof o === "string") return (0,_arrayLikeToArray_js__WEBPACK_IMPORTED_MODULE_0__["default"])(o, minLen); - var n = Object.prototype.toString.call(o).slice(8, -1); - if (n === "Object" && o.constructor) n = o.constructor.name; - if (n === "Map" || n === "Set") return Array.from(o); - if (n === "Arguments" || /^(?:Ui|I)nt(?:8|16|32)(?:Clamped)?Array$/.test(n)) return (0,_arrayLikeToArray_js__WEBPACK_IMPORTED_MODULE_0__["default"])(o, minLen); +const readBytes = async function* (iterable, chunkSize) { + for await (const chunk of readStream(iterable)) { + yield* streamChunk(chunk, chunkSize); + } } -/***/ }), +const readStream = async function* (stream) { + if (stream[Symbol.asyncIterator]) { + yield* stream; + return; + } -/***/ "./node_modules/@babel/runtime/helpers/esm/wrapNativeSuper.js": -/*!********************************************************************!*\ - !*** ./node_modules/@babel/runtime/helpers/esm/wrapNativeSuper.js ***! - \********************************************************************/ -/***/ ((__unused_webpack___webpack_module__, __webpack_exports__, __webpack_require__) => { + const reader = stream.getReader(); + try { + for (;;) { + const {done, value} = await reader.read(); + if (done) { + break; + } + yield value; + } + } finally { + await reader.cancel(); + } +} -"use strict"; -__webpack_require__.r(__webpack_exports__); -/* harmony export */ __webpack_require__.d(__webpack_exports__, { -/* harmony export */ "default": () => (/* binding */ _wrapNativeSuper) -/* harmony export */ }); -/* harmony import */ var _getPrototypeOf_js__WEBPACK_IMPORTED_MODULE_0__ = __webpack_require__(/*! ./getPrototypeOf.js */ "./node_modules/@babel/runtime/helpers/esm/getPrototypeOf.js"); -/* harmony import */ var _setPrototypeOf_js__WEBPACK_IMPORTED_MODULE_1__ = __webpack_require__(/*! ./setPrototypeOf.js */ "./node_modules/@babel/runtime/helpers/esm/setPrototypeOf.js"); -/* harmony import */ var _isNativeFunction_js__WEBPACK_IMPORTED_MODULE_2__ = __webpack_require__(/*! ./isNativeFunction.js */ "./node_modules/@babel/runtime/helpers/esm/isNativeFunction.js"); -/* harmony import */ var _construct_js__WEBPACK_IMPORTED_MODULE_3__ = __webpack_require__(/*! ./construct.js */ "./node_modules/@babel/runtime/helpers/esm/construct.js"); +const trackStream = (stream, chunkSize, onProgress, onFinish) => { + const iterator = readBytes(stream, chunkSize); + let bytes = 0; + let done; + let _onFinish = (e) => { + if (!done) { + done = true; + onFinish && onFinish(e); + } + } + return new ReadableStream({ + async pull(controller) { + try { + const {done, value} = await iterator.next(); + if (done) { + _onFinish(); + controller.close(); + return; + } -function _wrapNativeSuper(Class) { - var _cache = typeof Map === "function" ? new Map() : undefined; - _wrapNativeSuper = function _wrapNativeSuper(Class) { - if (Class === null || !(0,_isNativeFunction_js__WEBPACK_IMPORTED_MODULE_2__["default"])(Class)) return Class; - if (typeof Class !== "function") { - throw new TypeError("Super expression must either be null or a function"); - } - if (typeof _cache !== "undefined") { - if (_cache.has(Class)) return _cache.get(Class); - _cache.set(Class, Wrapper); - } - function Wrapper() { - return (0,_construct_js__WEBPACK_IMPORTED_MODULE_3__["default"])(Class, arguments, (0,_getPrototypeOf_js__WEBPACK_IMPORTED_MODULE_0__["default"])(this).constructor); + let len = value.byteLength; + if (onProgress) { + let loadedBytes = bytes += len; + onProgress(loadedBytes); + } + controller.enqueue(new Uint8Array(value)); + } catch (err) { + _onFinish(err); + throw err; + } + }, + cancel(reason) { + _onFinish(reason); + return iterator.return(); } - Wrapper.prototype = Object.create(Class.prototype, { - constructor: { - value: Wrapper, - enumerable: false, - writable: true, - configurable: true - } - }); - return (0,_setPrototypeOf_js__WEBPACK_IMPORTED_MODULE_1__["default"])(Wrapper, Class); - }; - return _wrapNativeSuper(Class); + }, { + highWaterMark: 2 + }) } + /***/ }), -/***/ "./node_modules/axios/lib/adapters/adapters.js": -/*!*****************************************************!*\ - !*** ./node_modules/axios/lib/adapters/adapters.js ***! - \*****************************************************/ +/***/ "./node_modules/.pnpm/axios@1.7.9/node_modules/axios/lib/helpers/validator.js": +/*!************************************************************************************!*\ + !*** ./node_modules/.pnpm/axios@1.7.9/node_modules/axios/lib/helpers/validator.js ***! + \************************************************************************************/ /***/ ((__unused_webpack___webpack_module__, __webpack_exports__, __webpack_require__) => { "use strict"; @@ -6119,98 +4718,115 @@ __webpack_require__.r(__webpack_exports__); /* harmony export */ __webpack_require__.d(__webpack_exports__, { /* harmony export */ "default": () => (__WEBPACK_DEFAULT_EXPORT__) /* harmony export */ }); -/* harmony import */ var _utils_js__WEBPACK_IMPORTED_MODULE_3__ = __webpack_require__(/*! ../utils.js */ "./node_modules/axios/lib/utils.js"); -/* harmony import */ var _http_js__WEBPACK_IMPORTED_MODULE_0__ = __webpack_require__(/*! ./http.js */ "./node_modules/axios/lib/helpers/null.js"); -/* harmony import */ var _xhr_js__WEBPACK_IMPORTED_MODULE_1__ = __webpack_require__(/*! ./xhr.js */ "./node_modules/axios/lib/adapters/xhr.js"); -/* harmony import */ var _fetch_js__WEBPACK_IMPORTED_MODULE_2__ = __webpack_require__(/*! ./fetch.js */ "./node_modules/axios/lib/adapters/fetch.js"); -/* harmony import */ var _core_AxiosError_js__WEBPACK_IMPORTED_MODULE_4__ = __webpack_require__(/*! ../core/AxiosError.js */ "./node_modules/axios/lib/core/AxiosError.js"); - +/* harmony import */ var _env_data_js__WEBPACK_IMPORTED_MODULE_0__ = __webpack_require__(/*! ../env/data.js */ "./node_modules/.pnpm/axios@1.7.9/node_modules/axios/lib/env/data.js"); +/* harmony import */ var _core_AxiosError_js__WEBPACK_IMPORTED_MODULE_1__ = __webpack_require__(/*! ../core/AxiosError.js */ "./node_modules/.pnpm/axios@1.7.9/node_modules/axios/lib/core/AxiosError.js"); -const knownAdapters = { - http: _http_js__WEBPACK_IMPORTED_MODULE_0__["default"], - xhr: _xhr_js__WEBPACK_IMPORTED_MODULE_1__["default"], - fetch: _fetch_js__WEBPACK_IMPORTED_MODULE_2__["default"] -} +const validators = {}; -_utils_js__WEBPACK_IMPORTED_MODULE_3__["default"].forEach(knownAdapters, (fn, value) => { - if (fn) { - try { - Object.defineProperty(fn, 'name', {value}); - } catch (e) { - // eslint-disable-next-line no-empty - } - Object.defineProperty(fn, 'adapterName', {value}); - } +// eslint-disable-next-line func-names +['object', 'boolean', 'number', 'function', 'string', 'symbol'].forEach((type, i) => { + validators[type] = function validator(thing) { + return typeof thing === type || 'a' + (i < 1 ? 'n ' : ' ') + type; + }; }); -const renderReason = (reason) => `- ${reason}`; - -const isResolvedHandle = (adapter) => _utils_js__WEBPACK_IMPORTED_MODULE_3__["default"].isFunction(adapter) || adapter === null || adapter === false; - -/* harmony default export */ const __WEBPACK_DEFAULT_EXPORT__ = ({ - getAdapter: (adapters) => { - adapters = _utils_js__WEBPACK_IMPORTED_MODULE_3__["default"].isArray(adapters) ? adapters : [adapters]; +const deprecatedWarnings = {}; - const {length} = adapters; - let nameOrAdapter; - let adapter; +/** + * Transitional option validator + * + * @param {function|boolean?} validator - set to false if the transitional option has been removed + * @param {string?} version - deprecated version / removed since version + * @param {string?} message - some message with additional info + * + * @returns {function} + */ +validators.transitional = function transitional(validator, version, message) { + function formatMessage(opt, desc) { + return '[Axios v' + _env_data_js__WEBPACK_IMPORTED_MODULE_0__.VERSION + '] Transitional option \'' + opt + '\'' + desc + (message ? '. ' + message : ''); + } - const rejectedReasons = {}; + // eslint-disable-next-line func-names + return (value, opt, opts) => { + if (validator === false) { + throw new _core_AxiosError_js__WEBPACK_IMPORTED_MODULE_1__["default"]( + formatMessage(opt, ' has been removed' + (version ? ' in ' + version : '')), + _core_AxiosError_js__WEBPACK_IMPORTED_MODULE_1__["default"].ERR_DEPRECATED + ); + } - for (let i = 0; i < length; i++) { - nameOrAdapter = adapters[i]; - let id; + if (version && !deprecatedWarnings[opt]) { + deprecatedWarnings[opt] = true; + // eslint-disable-next-line no-console + console.warn( + formatMessage( + opt, + ' has been deprecated since v' + version + ' and will be removed in the near future' + ) + ); + } - adapter = nameOrAdapter; + return validator ? validator(value, opt, opts) : true; + }; +}; - if (!isResolvedHandle(nameOrAdapter)) { - adapter = knownAdapters[(id = String(nameOrAdapter)).toLowerCase()]; +validators.spelling = function spelling(correctSpelling) { + return (value, opt) => { + // eslint-disable-next-line no-console + console.warn(`${opt} is likely a misspelling of ${correctSpelling}`); + return true; + } +}; - if (adapter === undefined) { - throw new _core_AxiosError_js__WEBPACK_IMPORTED_MODULE_4__["default"](`Unknown adapter '${id}'`); - } - } +/** + * Assert object's properties type + * + * @param {object} options + * @param {object} schema + * @param {boolean?} allowUnknown + * + * @returns {object} + */ - if (adapter) { - break; +function assertOptions(options, schema, allowUnknown) { + if (typeof options !== 'object') { + throw new _core_AxiosError_js__WEBPACK_IMPORTED_MODULE_1__["default"]('options must be an object', _core_AxiosError_js__WEBPACK_IMPORTED_MODULE_1__["default"].ERR_BAD_OPTION_VALUE); + } + const keys = Object.keys(options); + let i = keys.length; + while (i-- > 0) { + const opt = keys[i]; + const validator = schema[opt]; + if (validator) { + const value = options[opt]; + const result = value === undefined || validator(value, opt, options); + if (result !== true) { + throw new _core_AxiosError_js__WEBPACK_IMPORTED_MODULE_1__["default"]('option ' + opt + ' must be ' + result, _core_AxiosError_js__WEBPACK_IMPORTED_MODULE_1__["default"].ERR_BAD_OPTION_VALUE); } - - rejectedReasons[id || '#' + i] = adapter; + continue; } - - if (!adapter) { - - const reasons = Object.entries(rejectedReasons) - .map(([id, state]) => `adapter ${id} ` + - (state === false ? 'is not supported by the environment' : 'is not available in the build') - ); - - let s = length ? - (reasons.length > 1 ? 'since :\n' + reasons.map(renderReason).join('\n') : ' ' + renderReason(reasons[0])) : - 'as no adapter specified'; - - throw new _core_AxiosError_js__WEBPACK_IMPORTED_MODULE_4__["default"]( - `There is no suitable adapter to dispatch the request ` + s, - 'ERR_NOT_SUPPORT' - ); + if (allowUnknown !== true) { + throw new _core_AxiosError_js__WEBPACK_IMPORTED_MODULE_1__["default"]('Unknown option ' + opt, _core_AxiosError_js__WEBPACK_IMPORTED_MODULE_1__["default"].ERR_BAD_OPTION); } + } +} - return adapter; - }, - adapters: knownAdapters +/* harmony default export */ const __WEBPACK_DEFAULT_EXPORT__ = ({ + assertOptions, + validators }); /***/ }), -/***/ "./node_modules/axios/lib/adapters/fetch.js": -/*!**************************************************!*\ - !*** ./node_modules/axios/lib/adapters/fetch.js ***! - \**************************************************/ +/***/ "./node_modules/.pnpm/axios@1.7.9/node_modules/axios/lib/platform/browser/classes/Blob.js": +/*!************************************************************************************************!*\ + !*** ./node_modules/.pnpm/axios@1.7.9/node_modules/axios/lib/platform/browser/classes/Blob.js ***! + \************************************************************************************************/ /***/ ((__unused_webpack___webpack_module__, __webpack_exports__, __webpack_require__) => { "use strict"; @@ -6218,1624 +4834,2336 @@ __webpack_require__.r(__webpack_exports__); /* harmony export */ __webpack_require__.d(__webpack_exports__, { /* harmony export */ "default": () => (__WEBPACK_DEFAULT_EXPORT__) /* harmony export */ }); -/* harmony import */ var _platform_index_js__WEBPACK_IMPORTED_MODULE_0__ = __webpack_require__(/*! ../platform/index.js */ "./node_modules/axios/lib/platform/index.js"); -/* harmony import */ var _utils_js__WEBPACK_IMPORTED_MODULE_1__ = __webpack_require__(/*! ../utils.js */ "./node_modules/axios/lib/utils.js"); -/* harmony import */ var _core_AxiosError_js__WEBPACK_IMPORTED_MODULE_2__ = __webpack_require__(/*! ../core/AxiosError.js */ "./node_modules/axios/lib/core/AxiosError.js"); -/* harmony import */ var _helpers_composeSignals_js__WEBPACK_IMPORTED_MODULE_4__ = __webpack_require__(/*! ../helpers/composeSignals.js */ "./node_modules/axios/lib/helpers/composeSignals.js"); -/* harmony import */ var _helpers_trackStream_js__WEBPACK_IMPORTED_MODULE_6__ = __webpack_require__(/*! ../helpers/trackStream.js */ "./node_modules/axios/lib/helpers/trackStream.js"); -/* harmony import */ var _core_AxiosHeaders_js__WEBPACK_IMPORTED_MODULE_8__ = __webpack_require__(/*! ../core/AxiosHeaders.js */ "./node_modules/axios/lib/core/AxiosHeaders.js"); -/* harmony import */ var _helpers_progressEventReducer_js__WEBPACK_IMPORTED_MODULE_5__ = __webpack_require__(/*! ../helpers/progressEventReducer.js */ "./node_modules/axios/lib/helpers/progressEventReducer.js"); -/* harmony import */ var _helpers_resolveConfig_js__WEBPACK_IMPORTED_MODULE_3__ = __webpack_require__(/*! ../helpers/resolveConfig.js */ "./node_modules/axios/lib/helpers/resolveConfig.js"); -/* harmony import */ var _core_settle_js__WEBPACK_IMPORTED_MODULE_7__ = __webpack_require__(/*! ../core/settle.js */ "./node_modules/axios/lib/core/settle.js"); +/* harmony default export */ const __WEBPACK_DEFAULT_EXPORT__ = (typeof Blob !== 'undefined' ? Blob : null); +/***/ }), +/***/ "./node_modules/.pnpm/axios@1.7.9/node_modules/axios/lib/platform/browser/classes/FormData.js": +/*!****************************************************************************************************!*\ + !*** ./node_modules/.pnpm/axios@1.7.9/node_modules/axios/lib/platform/browser/classes/FormData.js ***! + \****************************************************************************************************/ +/***/ ((__unused_webpack___webpack_module__, __webpack_exports__, __webpack_require__) => { +"use strict"; +__webpack_require__.r(__webpack_exports__); +/* harmony export */ __webpack_require__.d(__webpack_exports__, { +/* harmony export */ "default": () => (__WEBPACK_DEFAULT_EXPORT__) +/* harmony export */ }); +/* harmony default export */ const __WEBPACK_DEFAULT_EXPORT__ = (typeof FormData !== 'undefined' ? FormData : null); -const isFetchSupported = typeof fetch === 'function' && typeof Request === 'function' && typeof Response === 'function'; -const isReadableStreamSupported = isFetchSupported && typeof ReadableStream === 'function'; +/***/ }), -// used only inside the fetch adapter -const encodeText = isFetchSupported && (typeof TextEncoder === 'function' ? - ((encoder) => (str) => encoder.encode(str))(new TextEncoder()) : - async (str) => new Uint8Array(await new Response(str).arrayBuffer()) -); +/***/ "./node_modules/.pnpm/axios@1.7.9/node_modules/axios/lib/platform/browser/classes/URLSearchParams.js": +/*!***********************************************************************************************************!*\ + !*** ./node_modules/.pnpm/axios@1.7.9/node_modules/axios/lib/platform/browser/classes/URLSearchParams.js ***! + \***********************************************************************************************************/ +/***/ ((__unused_webpack___webpack_module__, __webpack_exports__, __webpack_require__) => { -const test = (fn, ...args) => { - try { - return !!fn(...args); - } catch (e) { - return false - } -} +"use strict"; +__webpack_require__.r(__webpack_exports__); +/* harmony export */ __webpack_require__.d(__webpack_exports__, { +/* harmony export */ "default": () => (__WEBPACK_DEFAULT_EXPORT__) +/* harmony export */ }); +/* harmony import */ var _helpers_AxiosURLSearchParams_js__WEBPACK_IMPORTED_MODULE_0__ = __webpack_require__(/*! ../../../helpers/AxiosURLSearchParams.js */ "./node_modules/.pnpm/axios@1.7.9/node_modules/axios/lib/helpers/AxiosURLSearchParams.js"); -const supportsRequestStream = isReadableStreamSupported && test(() => { - let duplexAccessed = false; - const hasContentType = new Request(_platform_index_js__WEBPACK_IMPORTED_MODULE_0__["default"].origin, { - body: new ReadableStream(), - method: 'POST', - get duplex() { - duplexAccessed = true; - return 'half'; - }, - }).headers.has('Content-Type'); - return duplexAccessed && !hasContentType; -}); +/* harmony default export */ const __WEBPACK_DEFAULT_EXPORT__ = (typeof URLSearchParams !== 'undefined' ? URLSearchParams : _helpers_AxiosURLSearchParams_js__WEBPACK_IMPORTED_MODULE_0__["default"]); -const DEFAULT_CHUNK_SIZE = 64 * 1024; -const supportsResponseStream = isReadableStreamSupported && - test(() => _utils_js__WEBPACK_IMPORTED_MODULE_1__["default"].isReadableStream(new Response('').body)); +/***/ }), +/***/ "./node_modules/.pnpm/axios@1.7.9/node_modules/axios/lib/platform/browser/index.js": +/*!*****************************************************************************************!*\ + !*** ./node_modules/.pnpm/axios@1.7.9/node_modules/axios/lib/platform/browser/index.js ***! + \*****************************************************************************************/ +/***/ ((__unused_webpack___webpack_module__, __webpack_exports__, __webpack_require__) => { -const resolvers = { - stream: supportsResponseStream && ((res) => res.body) -}; +"use strict"; +__webpack_require__.r(__webpack_exports__); +/* harmony export */ __webpack_require__.d(__webpack_exports__, { +/* harmony export */ "default": () => (__WEBPACK_DEFAULT_EXPORT__) +/* harmony export */ }); +/* harmony import */ var _classes_URLSearchParams_js__WEBPACK_IMPORTED_MODULE_0__ = __webpack_require__(/*! ./classes/URLSearchParams.js */ "./node_modules/.pnpm/axios@1.7.9/node_modules/axios/lib/platform/browser/classes/URLSearchParams.js"); +/* harmony import */ var _classes_FormData_js__WEBPACK_IMPORTED_MODULE_1__ = __webpack_require__(/*! ./classes/FormData.js */ "./node_modules/.pnpm/axios@1.7.9/node_modules/axios/lib/platform/browser/classes/FormData.js"); +/* harmony import */ var _classes_Blob_js__WEBPACK_IMPORTED_MODULE_2__ = __webpack_require__(/*! ./classes/Blob.js */ "./node_modules/.pnpm/axios@1.7.9/node_modules/axios/lib/platform/browser/classes/Blob.js"); -isFetchSupported && (((res) => { - ['text', 'arrayBuffer', 'blob', 'formData', 'stream'].forEach(type => { - !resolvers[type] && (resolvers[type] = _utils_js__WEBPACK_IMPORTED_MODULE_1__["default"].isFunction(res[type]) ? (res) => res[type]() : - (_, config) => { - throw new _core_AxiosError_js__WEBPACK_IMPORTED_MODULE_2__["default"](`Response type '${type}' is not supported`, _core_AxiosError_js__WEBPACK_IMPORTED_MODULE_2__["default"].ERR_NOT_SUPPORT, config); - }) - }); -})(new Response)); -const getBodyLength = async (body) => { - if (body == null) { - return 0; - } - if(_utils_js__WEBPACK_IMPORTED_MODULE_1__["default"].isBlob(body)) { - return body.size; - } - if(_utils_js__WEBPACK_IMPORTED_MODULE_1__["default"].isSpecCompliantForm(body)) { - return (await new Request(body).arrayBuffer()).byteLength; - } +/* harmony default export */ const __WEBPACK_DEFAULT_EXPORT__ = ({ + isBrowser: true, + classes: { + URLSearchParams: _classes_URLSearchParams_js__WEBPACK_IMPORTED_MODULE_0__["default"], + FormData: _classes_FormData_js__WEBPACK_IMPORTED_MODULE_1__["default"], + Blob: _classes_Blob_js__WEBPACK_IMPORTED_MODULE_2__["default"] + }, + protocols: ['http', 'https', 'file', 'blob', 'url', 'data'] +}); - if(_utils_js__WEBPACK_IMPORTED_MODULE_1__["default"].isArrayBufferView(body) || _utils_js__WEBPACK_IMPORTED_MODULE_1__["default"].isArrayBuffer(body)) { - return body.byteLength; - } - if(_utils_js__WEBPACK_IMPORTED_MODULE_1__["default"].isURLSearchParams(body)) { - body = body + ''; - } +/***/ }), - if(_utils_js__WEBPACK_IMPORTED_MODULE_1__["default"].isString(body)) { - return (await encodeText(body)).byteLength; - } -} +/***/ "./node_modules/.pnpm/axios@1.7.9/node_modules/axios/lib/platform/common/utils.js": +/*!****************************************************************************************!*\ + !*** ./node_modules/.pnpm/axios@1.7.9/node_modules/axios/lib/platform/common/utils.js ***! + \****************************************************************************************/ +/***/ ((__unused_webpack___webpack_module__, __webpack_exports__, __webpack_require__) => { -const resolveBodyLength = async (headers, body) => { - const length = _utils_js__WEBPACK_IMPORTED_MODULE_1__["default"].toFiniteNumber(headers.getContentLength()); +"use strict"; +__webpack_require__.r(__webpack_exports__); +/* harmony export */ __webpack_require__.d(__webpack_exports__, { +/* harmony export */ hasBrowserEnv: () => (/* binding */ hasBrowserEnv), +/* harmony export */ hasStandardBrowserEnv: () => (/* binding */ hasStandardBrowserEnv), +/* harmony export */ hasStandardBrowserWebWorkerEnv: () => (/* binding */ hasStandardBrowserWebWorkerEnv), +/* harmony export */ navigator: () => (/* binding */ _navigator), +/* harmony export */ origin: () => (/* binding */ origin) +/* harmony export */ }); +const hasBrowserEnv = typeof window !== 'undefined' && typeof document !== 'undefined'; + +const _navigator = typeof navigator === 'object' && navigator || undefined; + +/** + * Determine if we're running in a standard browser environment + * + * This allows axios to run in a web worker, and react-native. + * Both environments support XMLHttpRequest, but not fully standard globals. + * + * web workers: + * typeof window -> undefined + * typeof document -> undefined + * + * react-native: + * navigator.product -> 'ReactNative' + * nativescript + * navigator.product -> 'NativeScript' or 'NS' + * + * @returns {boolean} + */ +const hasStandardBrowserEnv = hasBrowserEnv && + (!_navigator || ['ReactNative', 'NativeScript', 'NS'].indexOf(_navigator.product) < 0); - return length == null ? getBodyLength(body) : length; -} +/** + * Determine if we're running in a standard browser webWorker environment + * + * Although the `isStandardBrowserEnv` method indicates that + * `allows axios to run in a web worker`, the WebWorker will still be + * filtered out due to its judgment standard + * `typeof window !== 'undefined' && typeof document !== 'undefined'`. + * This leads to a problem when axios post `FormData` in webWorker + */ +const hasStandardBrowserWebWorkerEnv = (() => { + return ( + typeof WorkerGlobalScope !== 'undefined' && + // eslint-disable-next-line no-undef + self instanceof WorkerGlobalScope && + typeof self.importScripts === 'function' + ); +})(); -/* harmony default export */ const __WEBPACK_DEFAULT_EXPORT__ = (isFetchSupported && (async (config) => { - let { - url, - method, - data, - signal, - cancelToken, - timeout, - onDownloadProgress, - onUploadProgress, - responseType, - headers, - withCredentials = 'same-origin', - fetchOptions - } = (0,_helpers_resolveConfig_js__WEBPACK_IMPORTED_MODULE_3__["default"])(config); +const origin = hasBrowserEnv && window.location.href || 'http://localhost'; - responseType = responseType ? (responseType + '').toLowerCase() : 'text'; - let [composedSignal, stopTimeout] = (signal || cancelToken || timeout) ? - (0,_helpers_composeSignals_js__WEBPACK_IMPORTED_MODULE_4__["default"])([signal, cancelToken], timeout) : []; - let finished, request; - const onFinish = () => { - !finished && setTimeout(() => { - composedSignal && composedSignal.unsubscribe(); - }); +/***/ }), - finished = true; - } +/***/ "./node_modules/.pnpm/axios@1.7.9/node_modules/axios/lib/platform/index.js": +/*!*********************************************************************************!*\ + !*** ./node_modules/.pnpm/axios@1.7.9/node_modules/axios/lib/platform/index.js ***! + \*********************************************************************************/ +/***/ ((__unused_webpack___webpack_module__, __webpack_exports__, __webpack_require__) => { - let requestContentLength; +"use strict"; +__webpack_require__.r(__webpack_exports__); +/* harmony export */ __webpack_require__.d(__webpack_exports__, { +/* harmony export */ "default": () => (__WEBPACK_DEFAULT_EXPORT__) +/* harmony export */ }); +/* harmony import */ var _node_index_js__WEBPACK_IMPORTED_MODULE_1__ = __webpack_require__(/*! ./node/index.js */ "./node_modules/.pnpm/axios@1.7.9/node_modules/axios/lib/platform/browser/index.js"); +/* harmony import */ var _common_utils_js__WEBPACK_IMPORTED_MODULE_0__ = __webpack_require__(/*! ./common/utils.js */ "./node_modules/.pnpm/axios@1.7.9/node_modules/axios/lib/platform/common/utils.js"); - try { - if ( - onUploadProgress && supportsRequestStream && method !== 'get' && method !== 'head' && - (requestContentLength = await resolveBodyLength(headers, data)) !== 0 - ) { - let _request = new Request(url, { - method: 'POST', - body: data, - duplex: "half" - }); - let contentTypeHeader; - if (_utils_js__WEBPACK_IMPORTED_MODULE_1__["default"].isFormData(data) && (contentTypeHeader = _request.headers.get('content-type'))) { - headers.setContentType(contentTypeHeader) - } +/* harmony default export */ const __WEBPACK_DEFAULT_EXPORT__ = ({ + ..._common_utils_js__WEBPACK_IMPORTED_MODULE_0__, + ..._node_index_js__WEBPACK_IMPORTED_MODULE_1__["default"] +}); - if (_request.body) { - const [onProgress, flush] = (0,_helpers_progressEventReducer_js__WEBPACK_IMPORTED_MODULE_5__.progressEventDecorator)( - requestContentLength, - (0,_helpers_progressEventReducer_js__WEBPACK_IMPORTED_MODULE_5__.progressEventReducer)((0,_helpers_progressEventReducer_js__WEBPACK_IMPORTED_MODULE_5__.asyncDecorator)(onUploadProgress)) - ); - data = (0,_helpers_trackStream_js__WEBPACK_IMPORTED_MODULE_6__.trackStream)(_request.body, DEFAULT_CHUNK_SIZE, onProgress, flush, encodeText); - } - } +/***/ }), - if (!_utils_js__WEBPACK_IMPORTED_MODULE_1__["default"].isString(withCredentials)) { - withCredentials = withCredentials ? 'include' : 'omit'; - } +/***/ "./node_modules/.pnpm/axios@1.7.9/node_modules/axios/lib/utils.js": +/*!************************************************************************!*\ + !*** ./node_modules/.pnpm/axios@1.7.9/node_modules/axios/lib/utils.js ***! + \************************************************************************/ +/***/ ((__unused_webpack___webpack_module__, __webpack_exports__, __webpack_require__) => { - // Cloudflare Workers throws when credentials are defined - // see https://github.com/cloudflare/workerd/issues/902 - const isCredentialsSupported = "credentials" in Request.prototype; - request = new Request(url, { - ...fetchOptions, - signal: composedSignal, - method: method.toUpperCase(), - headers: headers.normalize().toJSON(), - body: data, - duplex: "half", - credentials: isCredentialsSupported ? withCredentials : undefined - }); +"use strict"; +__webpack_require__.r(__webpack_exports__); +/* harmony export */ __webpack_require__.d(__webpack_exports__, { +/* harmony export */ "default": () => (__WEBPACK_DEFAULT_EXPORT__) +/* harmony export */ }); +/* harmony import */ var _helpers_bind_js__WEBPACK_IMPORTED_MODULE_0__ = __webpack_require__(/*! ./helpers/bind.js */ "./node_modules/.pnpm/axios@1.7.9/node_modules/axios/lib/helpers/bind.js"); - let response = await fetch(request); - const isStreamResponse = supportsResponseStream && (responseType === 'stream' || responseType === 'response'); - if (supportsResponseStream && (onDownloadProgress || isStreamResponse)) { - const options = {}; - ['status', 'statusText', 'headers'].forEach(prop => { - options[prop] = response[prop]; - }); +// utils is a library of generic helper functions non-specific to axios - const responseContentLength = _utils_js__WEBPACK_IMPORTED_MODULE_1__["default"].toFiniteNumber(response.headers.get('content-length')); +const {toString} = Object.prototype; +const {getPrototypeOf} = Object; - const [onProgress, flush] = onDownloadProgress && (0,_helpers_progressEventReducer_js__WEBPACK_IMPORTED_MODULE_5__.progressEventDecorator)( - responseContentLength, - (0,_helpers_progressEventReducer_js__WEBPACK_IMPORTED_MODULE_5__.progressEventReducer)((0,_helpers_progressEventReducer_js__WEBPACK_IMPORTED_MODULE_5__.asyncDecorator)(onDownloadProgress), true) - ) || []; +const kindOf = (cache => thing => { + const str = toString.call(thing); + return cache[str] || (cache[str] = str.slice(8, -1).toLowerCase()); +})(Object.create(null)); - response = new Response( - (0,_helpers_trackStream_js__WEBPACK_IMPORTED_MODULE_6__.trackStream)(response.body, DEFAULT_CHUNK_SIZE, onProgress, () => { - flush && flush(); - isStreamResponse && onFinish(); - }, encodeText), - options - ); - } +const kindOfTest = (type) => { + type = type.toLowerCase(); + return (thing) => kindOf(thing) === type +} - responseType = responseType || 'text'; +const typeOfTest = type => thing => typeof thing === type; - let responseData = await resolvers[_utils_js__WEBPACK_IMPORTED_MODULE_1__["default"].findKey(resolvers, responseType) || 'text'](response, config); +/** + * Determine if a value is an Array + * + * @param {Object} val The value to test + * + * @returns {boolean} True if value is an Array, otherwise false + */ +const {isArray} = Array; - !isStreamResponse && onFinish(); +/** + * Determine if a value is undefined + * + * @param {*} val The value to test + * + * @returns {boolean} True if the value is undefined, otherwise false + */ +const isUndefined = typeOfTest('undefined'); - stopTimeout && stopTimeout(); +/** + * Determine if a value is a Buffer + * + * @param {*} val The value to test + * + * @returns {boolean} True if value is a Buffer, otherwise false + */ +function isBuffer(val) { + return val !== null && !isUndefined(val) && val.constructor !== null && !isUndefined(val.constructor) + && isFunction(val.constructor.isBuffer) && val.constructor.isBuffer(val); +} - return await new Promise((resolve, reject) => { - (0,_core_settle_js__WEBPACK_IMPORTED_MODULE_7__["default"])(resolve, reject, { - data: responseData, - headers: _core_AxiosHeaders_js__WEBPACK_IMPORTED_MODULE_8__["default"].from(response.headers), - status: response.status, - statusText: response.statusText, - config, - request - }) - }) - } catch (err) { - onFinish(); +/** + * Determine if a value is an ArrayBuffer + * + * @param {*} val The value to test + * + * @returns {boolean} True if value is an ArrayBuffer, otherwise false + */ +const isArrayBuffer = kindOfTest('ArrayBuffer'); - if (err && err.name === 'TypeError' && /fetch/i.test(err.message)) { - throw Object.assign( - new _core_AxiosError_js__WEBPACK_IMPORTED_MODULE_2__["default"]('Network Error', _core_AxiosError_js__WEBPACK_IMPORTED_MODULE_2__["default"].ERR_NETWORK, config, request), - { - cause: err.cause || err - } - ) - } - throw _core_AxiosError_js__WEBPACK_IMPORTED_MODULE_2__["default"].from(err, err && err.code, config, request); +/** + * Determine if a value is a view on an ArrayBuffer + * + * @param {*} val The value to test + * + * @returns {boolean} True if value is a view on an ArrayBuffer, otherwise false + */ +function isArrayBufferView(val) { + let result; + if ((typeof ArrayBuffer !== 'undefined') && (ArrayBuffer.isView)) { + result = ArrayBuffer.isView(val); + } else { + result = (val) && (val.buffer) && (isArrayBuffer(val.buffer)); } -})); - + return result; +} +/** + * Determine if a value is a String + * + * @param {*} val The value to test + * + * @returns {boolean} True if value is a String, otherwise false + */ +const isString = typeOfTest('string'); +/** + * Determine if a value is a Function + * + * @param {*} val The value to test + * @returns {boolean} True if value is a Function, otherwise false + */ +const isFunction = typeOfTest('function'); -/***/ }), +/** + * Determine if a value is a Number + * + * @param {*} val The value to test + * + * @returns {boolean} True if value is a Number, otherwise false + */ +const isNumber = typeOfTest('number'); -/***/ "./node_modules/axios/lib/adapters/xhr.js": -/*!************************************************!*\ - !*** ./node_modules/axios/lib/adapters/xhr.js ***! - \************************************************/ -/***/ ((__unused_webpack___webpack_module__, __webpack_exports__, __webpack_require__) => { +/** + * Determine if a value is an Object + * + * @param {*} thing The value to test + * + * @returns {boolean} True if value is an Object, otherwise false + */ +const isObject = (thing) => thing !== null && typeof thing === 'object'; -"use strict"; -__webpack_require__.r(__webpack_exports__); -/* harmony export */ __webpack_require__.d(__webpack_exports__, { -/* harmony export */ "default": () => (__WEBPACK_DEFAULT_EXPORT__) -/* harmony export */ }); -/* harmony import */ var _utils_js__WEBPACK_IMPORTED_MODULE_5__ = __webpack_require__(/*! ./../utils.js */ "./node_modules/axios/lib/utils.js"); -/* harmony import */ var _core_settle_js__WEBPACK_IMPORTED_MODULE_2__ = __webpack_require__(/*! ./../core/settle.js */ "./node_modules/axios/lib/core/settle.js"); -/* harmony import */ var _defaults_transitional_js__WEBPACK_IMPORTED_MODULE_4__ = __webpack_require__(/*! ../defaults/transitional.js */ "./node_modules/axios/lib/defaults/transitional.js"); -/* harmony import */ var _core_AxiosError_js__WEBPACK_IMPORTED_MODULE_3__ = __webpack_require__(/*! ../core/AxiosError.js */ "./node_modules/axios/lib/core/AxiosError.js"); -/* harmony import */ var _cancel_CanceledError_js__WEBPACK_IMPORTED_MODULE_7__ = __webpack_require__(/*! ../cancel/CanceledError.js */ "./node_modules/axios/lib/cancel/CanceledError.js"); -/* harmony import */ var _helpers_parseProtocol_js__WEBPACK_IMPORTED_MODULE_8__ = __webpack_require__(/*! ../helpers/parseProtocol.js */ "./node_modules/axios/lib/helpers/parseProtocol.js"); -/* harmony import */ var _platform_index_js__WEBPACK_IMPORTED_MODULE_9__ = __webpack_require__(/*! ../platform/index.js */ "./node_modules/axios/lib/platform/index.js"); -/* harmony import */ var _core_AxiosHeaders_js__WEBPACK_IMPORTED_MODULE_1__ = __webpack_require__(/*! ../core/AxiosHeaders.js */ "./node_modules/axios/lib/core/AxiosHeaders.js"); -/* harmony import */ var _helpers_progressEventReducer_js__WEBPACK_IMPORTED_MODULE_6__ = __webpack_require__(/*! ../helpers/progressEventReducer.js */ "./node_modules/axios/lib/helpers/progressEventReducer.js"); -/* harmony import */ var _helpers_resolveConfig_js__WEBPACK_IMPORTED_MODULE_0__ = __webpack_require__(/*! ../helpers/resolveConfig.js */ "./node_modules/axios/lib/helpers/resolveConfig.js"); +/** + * Determine if a value is a Boolean + * + * @param {*} thing The value to test + * @returns {boolean} True if value is a Boolean, otherwise false + */ +const isBoolean = thing => thing === true || thing === false; +/** + * Determine if a value is a plain Object + * + * @param {*} val The value to test + * + * @returns {boolean} True if value is a plain Object, otherwise false + */ +const isPlainObject = (val) => { + if (kindOf(val) !== 'object') { + return false; + } + const prototype = getPrototypeOf(val); + return (prototype === null || prototype === Object.prototype || Object.getPrototypeOf(prototype) === null) && !(Symbol.toStringTag in val) && !(Symbol.iterator in val); +} +/** + * Determine if a value is a Date + * + * @param {*} val The value to test + * + * @returns {boolean} True if value is a Date, otherwise false + */ +const isDate = kindOfTest('Date'); +/** + * Determine if a value is a File + * + * @param {*} val The value to test + * + * @returns {boolean} True if value is a File, otherwise false + */ +const isFile = kindOfTest('File'); +/** + * Determine if a value is a Blob + * + * @param {*} val The value to test + * + * @returns {boolean} True if value is a Blob, otherwise false + */ +const isBlob = kindOfTest('Blob'); +/** + * Determine if a value is a FileList + * + * @param {*} val The value to test + * + * @returns {boolean} True if value is a File, otherwise false + */ +const isFileList = kindOfTest('FileList'); +/** + * Determine if a value is a Stream + * + * @param {*} val The value to test + * + * @returns {boolean} True if value is a Stream, otherwise false + */ +const isStream = (val) => isObject(val) && isFunction(val.pipe); +/** + * Determine if a value is a FormData + * + * @param {*} thing The value to test + * + * @returns {boolean} True if value is an FormData, otherwise false + */ +const isFormData = (thing) => { + let kind; + return thing && ( + (typeof FormData === 'function' && thing instanceof FormData) || ( + isFunction(thing.append) && ( + (kind = kindOf(thing)) === 'formdata' || + // detect form-data instance + (kind === 'object' && isFunction(thing.toString) && thing.toString() === '[object FormData]') + ) + ) + ) +} +/** + * Determine if a value is a URLSearchParams object + * + * @param {*} val The value to test + * + * @returns {boolean} True if value is a URLSearchParams object, otherwise false + */ +const isURLSearchParams = kindOfTest('URLSearchParams'); +const [isReadableStream, isRequest, isResponse, isHeaders] = ['ReadableStream', 'Request', 'Response', 'Headers'].map(kindOfTest); -const isXHRAdapterSupported = typeof XMLHttpRequest !== 'undefined'; +/** + * Trim excess whitespace off the beginning and end of a string + * + * @param {String} str The String to trim + * + * @returns {String} The String freed of excess whitespace + */ +const trim = (str) => str.trim ? + str.trim() : str.replace(/^[\s\uFEFF\xA0]+|[\s\uFEFF\xA0]+$/g, ''); -/* harmony default export */ const __WEBPACK_DEFAULT_EXPORT__ = (isXHRAdapterSupported && function (config) { - return new Promise(function dispatchXhrRequest(resolve, reject) { - const _config = (0,_helpers_resolveConfig_js__WEBPACK_IMPORTED_MODULE_0__["default"])(config); - let requestData = _config.data; - const requestHeaders = _core_AxiosHeaders_js__WEBPACK_IMPORTED_MODULE_1__["default"].from(_config.headers).normalize(); - let {responseType, onUploadProgress, onDownloadProgress} = _config; - let onCanceled; - let uploadThrottled, downloadThrottled; - let flushUpload, flushDownload; +/** + * Iterate over an Array or an Object invoking a function for each item. + * + * If `obj` is an Array callback will be called passing + * the value, index, and complete array for each item. + * + * If 'obj' is an Object callback will be called passing + * the value, key, and complete object for each property. + * + * @param {Object|Array} obj The object to iterate + * @param {Function} fn The callback to invoke for each item + * + * @param {Boolean} [allOwnKeys = false] + * @returns {any} + */ +function forEach(obj, fn, {allOwnKeys = false} = {}) { + // Don't bother if no value provided + if (obj === null || typeof obj === 'undefined') { + return; + } - function done() { - flushUpload && flushUpload(); // flush events - flushDownload && flushDownload(); // flush events + let i; + let l; - _config.cancelToken && _config.cancelToken.unsubscribe(onCanceled); + // Force an array if not already something iterable + if (typeof obj !== 'object') { + /*eslint no-param-reassign:0*/ + obj = [obj]; + } - _config.signal && _config.signal.removeEventListener('abort', onCanceled); + if (isArray(obj)) { + // Iterate over array values + for (i = 0, l = obj.length; i < l; i++) { + fn.call(null, obj[i], i, obj); } + } else { + // Iterate over object keys + const keys = allOwnKeys ? Object.getOwnPropertyNames(obj) : Object.keys(obj); + const len = keys.length; + let key; - let request = new XMLHttpRequest(); - - request.open(_config.method.toUpperCase(), _config.url, true); + for (i = 0; i < len; i++) { + key = keys[i]; + fn.call(null, obj[key], key, obj); + } + } +} - // Set the request timeout in MS - request.timeout = _config.timeout; +function findKey(obj, key) { + key = key.toLowerCase(); + const keys = Object.keys(obj); + let i = keys.length; + let _key; + while (i-- > 0) { + _key = keys[i]; + if (key === _key.toLowerCase()) { + return _key; + } + } + return null; +} - function onloadend() { - if (!request) { - return; - } - // Prepare the response - const responseHeaders = _core_AxiosHeaders_js__WEBPACK_IMPORTED_MODULE_1__["default"].from( - 'getAllResponseHeaders' in request && request.getAllResponseHeaders() - ); - const responseData = !responseType || responseType === 'text' || responseType === 'json' ? - request.responseText : request.response; - const response = { - data: responseData, - status: request.status, - statusText: request.statusText, - headers: responseHeaders, - config, - request - }; +const _global = (() => { + /*eslint no-undef:0*/ + if (typeof globalThis !== "undefined") return globalThis; + return typeof self !== "undefined" ? self : (typeof window !== 'undefined' ? window : global) +})(); - (0,_core_settle_js__WEBPACK_IMPORTED_MODULE_2__["default"])(function _resolve(value) { - resolve(value); - done(); - }, function _reject(err) { - reject(err); - done(); - }, response); +const isContextDefined = (context) => !isUndefined(context) && context !== _global; - // Clean up request - request = null; +/** + * Accepts varargs expecting each argument to be an object, then + * immutably merges the properties of each object and returns result. + * + * When multiple objects contain the same key the later object in + * the arguments list will take precedence. + * + * Example: + * + * ```js + * var result = merge({foo: 123}, {foo: 456}); + * console.log(result.foo); // outputs 456 + * ``` + * + * @param {Object} obj1 Object to merge + * + * @returns {Object} Result of all merge properties + */ +function merge(/* obj1, obj2, obj3, ... */) { + const {caseless} = isContextDefined(this) && this || {}; + const result = {}; + const assignValue = (val, key) => { + const targetKey = caseless && findKey(result, key) || key; + if (isPlainObject(result[targetKey]) && isPlainObject(val)) { + result[targetKey] = merge(result[targetKey], val); + } else if (isPlainObject(val)) { + result[targetKey] = merge({}, val); + } else if (isArray(val)) { + result[targetKey] = val.slice(); + } else { + result[targetKey] = val; } + } - if ('onloadend' in request) { - // Use onloadend if available - request.onloadend = onloadend; + for (let i = 0, l = arguments.length; i < l; i++) { + arguments[i] && forEach(arguments[i], assignValue); + } + return result; +} + +/** + * Extends object a by mutably adding to it the properties of object b. + * + * @param {Object} a The object to be extended + * @param {Object} b The object to copy properties from + * @param {Object} thisArg The object to bind function to + * + * @param {Boolean} [allOwnKeys] + * @returns {Object} The resulting value of object a + */ +const extend = (a, b, thisArg, {allOwnKeys}= {}) => { + forEach(b, (val, key) => { + if (thisArg && isFunction(val)) { + a[key] = (0,_helpers_bind_js__WEBPACK_IMPORTED_MODULE_0__["default"])(val, thisArg); } else { - // Listen for ready state to emulate onloadend - request.onreadystatechange = function handleLoad() { - if (!request || request.readyState !== 4) { - return; - } - - // The request errored out and we didn't get a response, this will be - // handled by onerror instead - // With one exception: request that using file: protocol, most browsers - // will return status as 0 even though it's a successful request - if (request.status === 0 && !(request.responseURL && request.responseURL.indexOf('file:') === 0)) { - return; - } - // readystate handler is calling before onerror or ontimeout handlers, - // so we should call onloadend on the next 'tick' - setTimeout(onloadend); - }; + a[key] = val; } + }, {allOwnKeys}); + return a; +} - // Handle browser request cancellation (as opposed to a manual cancellation) - request.onabort = function handleAbort() { - if (!request) { - return; - } - - reject(new _core_AxiosError_js__WEBPACK_IMPORTED_MODULE_3__["default"]('Request aborted', _core_AxiosError_js__WEBPACK_IMPORTED_MODULE_3__["default"].ECONNABORTED, config, request)); +/** + * Remove byte order marker. This catches EF BB BF (the UTF-8 BOM) + * + * @param {string} content with BOM + * + * @returns {string} content value without BOM + */ +const stripBOM = (content) => { + if (content.charCodeAt(0) === 0xFEFF) { + content = content.slice(1); + } + return content; +} - // Clean up request - request = null; - }; +/** + * Inherit the prototype methods from one constructor into another + * @param {function} constructor + * @param {function} superConstructor + * @param {object} [props] + * @param {object} [descriptors] + * + * @returns {void} + */ +const inherits = (constructor, superConstructor, props, descriptors) => { + constructor.prototype = Object.create(superConstructor.prototype, descriptors); + constructor.prototype.constructor = constructor; + Object.defineProperty(constructor, 'super', { + value: superConstructor.prototype + }); + props && Object.assign(constructor.prototype, props); +} - // Handle low level network errors - request.onerror = function handleError() { - // Real errors are hidden from us by the browser - // onerror should only fire if it's a network error - reject(new _core_AxiosError_js__WEBPACK_IMPORTED_MODULE_3__["default"]('Network Error', _core_AxiosError_js__WEBPACK_IMPORTED_MODULE_3__["default"].ERR_NETWORK, config, request)); +/** + * Resolve object with deep prototype chain to a flat object + * @param {Object} sourceObj source object + * @param {Object} [destObj] + * @param {Function|Boolean} [filter] + * @param {Function} [propFilter] + * + * @returns {Object} + */ +const toFlatObject = (sourceObj, destObj, filter, propFilter) => { + let props; + let i; + let prop; + const merged = {}; - // Clean up request - request = null; - }; + destObj = destObj || {}; + // eslint-disable-next-line no-eq-null,eqeqeq + if (sourceObj == null) return destObj; - // Handle timeout - request.ontimeout = function handleTimeout() { - let timeoutErrorMessage = _config.timeout ? 'timeout of ' + _config.timeout + 'ms exceeded' : 'timeout exceeded'; - const transitional = _config.transitional || _defaults_transitional_js__WEBPACK_IMPORTED_MODULE_4__["default"]; - if (_config.timeoutErrorMessage) { - timeoutErrorMessage = _config.timeoutErrorMessage; + do { + props = Object.getOwnPropertyNames(sourceObj); + i = props.length; + while (i-- > 0) { + prop = props[i]; + if ((!propFilter || propFilter(prop, sourceObj, destObj)) && !merged[prop]) { + destObj[prop] = sourceObj[prop]; + merged[prop] = true; } - reject(new _core_AxiosError_js__WEBPACK_IMPORTED_MODULE_3__["default"]( - timeoutErrorMessage, - transitional.clarifyTimeoutError ? _core_AxiosError_js__WEBPACK_IMPORTED_MODULE_3__["default"].ETIMEDOUT : _core_AxiosError_js__WEBPACK_IMPORTED_MODULE_3__["default"].ECONNABORTED, - config, - request)); - - // Clean up request - request = null; - }; + } + sourceObj = filter !== false && getPrototypeOf(sourceObj); + } while (sourceObj && (!filter || filter(sourceObj, destObj)) && sourceObj !== Object.prototype); - // Remove Content-Type if data is undefined - requestData === undefined && requestHeaders.setContentType(null); + return destObj; +} - // Add headers to the request - if ('setRequestHeader' in request) { - _utils_js__WEBPACK_IMPORTED_MODULE_5__["default"].forEach(requestHeaders.toJSON(), function setRequestHeader(val, key) { - request.setRequestHeader(key, val); - }); - } +/** + * Determines whether a string ends with the characters of a specified string + * + * @param {String} str + * @param {String} searchString + * @param {Number} [position= 0] + * + * @returns {boolean} + */ +const endsWith = (str, searchString, position) => { + str = String(str); + if (position === undefined || position > str.length) { + position = str.length; + } + position -= searchString.length; + const lastIndex = str.indexOf(searchString, position); + return lastIndex !== -1 && lastIndex === position; +} - // Add withCredentials to request if needed - if (!_utils_js__WEBPACK_IMPORTED_MODULE_5__["default"].isUndefined(_config.withCredentials)) { - request.withCredentials = !!_config.withCredentials; - } - // Add responseType to request if needed - if (responseType && responseType !== 'json') { - request.responseType = _config.responseType; - } +/** + * Returns new array from array like object or null if failed + * + * @param {*} [thing] + * + * @returns {?Array} + */ +const toArray = (thing) => { + if (!thing) return null; + if (isArray(thing)) return thing; + let i = thing.length; + if (!isNumber(i)) return null; + const arr = new Array(i); + while (i-- > 0) { + arr[i] = thing[i]; + } + return arr; +} - // Handle progress if needed - if (onDownloadProgress) { - ([downloadThrottled, flushDownload] = (0,_helpers_progressEventReducer_js__WEBPACK_IMPORTED_MODULE_6__.progressEventReducer)(onDownloadProgress, true)); - request.addEventListener('progress', downloadThrottled); - } +/** + * Checking if the Uint8Array exists and if it does, it returns a function that checks if the + * thing passed in is an instance of Uint8Array + * + * @param {TypedArray} + * + * @returns {Array} + */ +// eslint-disable-next-line func-names +const isTypedArray = (TypedArray => { + // eslint-disable-next-line func-names + return thing => { + return TypedArray && thing instanceof TypedArray; + }; +})(typeof Uint8Array !== 'undefined' && getPrototypeOf(Uint8Array)); - // Not all browsers support upload events - if (onUploadProgress && request.upload) { - ([uploadThrottled, flushUpload] = (0,_helpers_progressEventReducer_js__WEBPACK_IMPORTED_MODULE_6__.progressEventReducer)(onUploadProgress)); +/** + * For each entry in the object, call the function with the key and value. + * + * @param {Object} obj - The object to iterate over. + * @param {Function} fn - The function to call for each entry. + * + * @returns {void} + */ +const forEachEntry = (obj, fn) => { + const generator = obj && obj[Symbol.iterator]; - request.upload.addEventListener('progress', uploadThrottled); + const iterator = generator.call(obj); - request.upload.addEventListener('loadend', flushUpload); - } + let result; - if (_config.cancelToken || _config.signal) { - // Handle cancellation - // eslint-disable-next-line func-names - onCanceled = cancel => { - if (!request) { - return; - } - reject(!cancel || cancel.type ? new _cancel_CanceledError_js__WEBPACK_IMPORTED_MODULE_7__["default"](null, config, request) : cancel); - request.abort(); - request = null; - }; + while ((result = iterator.next()) && !result.done) { + const pair = result.value; + fn.call(obj, pair[0], pair[1]); + } +} - _config.cancelToken && _config.cancelToken.subscribe(onCanceled); - if (_config.signal) { - _config.signal.aborted ? onCanceled() : _config.signal.addEventListener('abort', onCanceled); - } - } +/** + * It takes a regular expression and a string, and returns an array of all the matches + * + * @param {string} regExp - The regular expression to match against. + * @param {string} str - The string to search. + * + * @returns {Array} + */ +const matchAll = (regExp, str) => { + let matches; + const arr = []; - const protocol = (0,_helpers_parseProtocol_js__WEBPACK_IMPORTED_MODULE_8__["default"])(_config.url); + while ((matches = regExp.exec(str)) !== null) { + arr.push(matches); + } - if (protocol && _platform_index_js__WEBPACK_IMPORTED_MODULE_9__["default"].protocols.indexOf(protocol) === -1) { - reject(new _core_AxiosError_js__WEBPACK_IMPORTED_MODULE_3__["default"]('Unsupported protocol ' + protocol + ':', _core_AxiosError_js__WEBPACK_IMPORTED_MODULE_3__["default"].ERR_BAD_REQUEST, config)); - return; - } + return arr; +} +/* Checking if the kindOfTest function returns true when passed an HTMLFormElement. */ +const isHTMLForm = kindOfTest('HTMLFormElement'); - // Send the request - request.send(requestData || null); - }); -}); +const toCamelCase = str => { + return str.toLowerCase().replace(/[-_\s]([a-z\d])(\w*)/g, + function replacer(m, p1, p2) { + return p1.toUpperCase() + p2; + } + ); +}; +/* Creating a function that will check if an object has a property. */ +const hasOwnProperty = (({hasOwnProperty}) => (obj, prop) => hasOwnProperty.call(obj, prop))(Object.prototype); -/***/ }), +/** + * Determine if a value is a RegExp object + * + * @param {*} val The value to test + * + * @returns {boolean} True if value is a RegExp object, otherwise false + */ +const isRegExp = kindOfTest('RegExp'); -/***/ "./node_modules/axios/lib/axios.js": -/*!*****************************************!*\ - !*** ./node_modules/axios/lib/axios.js ***! - \*****************************************/ -/***/ ((__unused_webpack___webpack_module__, __webpack_exports__, __webpack_require__) => { +const reduceDescriptors = (obj, reducer) => { + const descriptors = Object.getOwnPropertyDescriptors(obj); + const reducedDescriptors = {}; -"use strict"; -__webpack_require__.r(__webpack_exports__); -/* harmony export */ __webpack_require__.d(__webpack_exports__, { -/* harmony export */ "default": () => (__WEBPACK_DEFAULT_EXPORT__) -/* harmony export */ }); -/* harmony import */ var _utils_js__WEBPACK_IMPORTED_MODULE_2__ = __webpack_require__(/*! ./utils.js */ "./node_modules/axios/lib/utils.js"); -/* harmony import */ var _helpers_bind_js__WEBPACK_IMPORTED_MODULE_1__ = __webpack_require__(/*! ./helpers/bind.js */ "./node_modules/axios/lib/helpers/bind.js"); -/* harmony import */ var _core_Axios_js__WEBPACK_IMPORTED_MODULE_0__ = __webpack_require__(/*! ./core/Axios.js */ "./node_modules/axios/lib/core/Axios.js"); -/* harmony import */ var _core_mergeConfig_js__WEBPACK_IMPORTED_MODULE_3__ = __webpack_require__(/*! ./core/mergeConfig.js */ "./node_modules/axios/lib/core/mergeConfig.js"); -/* harmony import */ var _defaults_index_js__WEBPACK_IMPORTED_MODULE_4__ = __webpack_require__(/*! ./defaults/index.js */ "./node_modules/axios/lib/defaults/index.js"); -/* harmony import */ var _helpers_formDataToJSON_js__WEBPACK_IMPORTED_MODULE_14__ = __webpack_require__(/*! ./helpers/formDataToJSON.js */ "./node_modules/axios/lib/helpers/formDataToJSON.js"); -/* harmony import */ var _cancel_CanceledError_js__WEBPACK_IMPORTED_MODULE_5__ = __webpack_require__(/*! ./cancel/CanceledError.js */ "./node_modules/axios/lib/cancel/CanceledError.js"); -/* harmony import */ var _cancel_CancelToken_js__WEBPACK_IMPORTED_MODULE_6__ = __webpack_require__(/*! ./cancel/CancelToken.js */ "./node_modules/axios/lib/cancel/CancelToken.js"); -/* harmony import */ var _cancel_isCancel_js__WEBPACK_IMPORTED_MODULE_7__ = __webpack_require__(/*! ./cancel/isCancel.js */ "./node_modules/axios/lib/cancel/isCancel.js"); -/* harmony import */ var _env_data_js__WEBPACK_IMPORTED_MODULE_8__ = __webpack_require__(/*! ./env/data.js */ "./node_modules/axios/lib/env/data.js"); -/* harmony import */ var _helpers_toFormData_js__WEBPACK_IMPORTED_MODULE_9__ = __webpack_require__(/*! ./helpers/toFormData.js */ "./node_modules/axios/lib/helpers/toFormData.js"); -/* harmony import */ var _core_AxiosError_js__WEBPACK_IMPORTED_MODULE_10__ = __webpack_require__(/*! ./core/AxiosError.js */ "./node_modules/axios/lib/core/AxiosError.js"); -/* harmony import */ var _helpers_spread_js__WEBPACK_IMPORTED_MODULE_11__ = __webpack_require__(/*! ./helpers/spread.js */ "./node_modules/axios/lib/helpers/spread.js"); -/* harmony import */ var _helpers_isAxiosError_js__WEBPACK_IMPORTED_MODULE_12__ = __webpack_require__(/*! ./helpers/isAxiosError.js */ "./node_modules/axios/lib/helpers/isAxiosError.js"); -/* harmony import */ var _core_AxiosHeaders_js__WEBPACK_IMPORTED_MODULE_13__ = __webpack_require__(/*! ./core/AxiosHeaders.js */ "./node_modules/axios/lib/core/AxiosHeaders.js"); -/* harmony import */ var _adapters_adapters_js__WEBPACK_IMPORTED_MODULE_15__ = __webpack_require__(/*! ./adapters/adapters.js */ "./node_modules/axios/lib/adapters/adapters.js"); -/* harmony import */ var _helpers_HttpStatusCode_js__WEBPACK_IMPORTED_MODULE_16__ = __webpack_require__(/*! ./helpers/HttpStatusCode.js */ "./node_modules/axios/lib/helpers/HttpStatusCode.js"); + forEach(descriptors, (descriptor, name) => { + let ret; + if ((ret = reducer(descriptor, name, obj)) !== false) { + reducedDescriptors[name] = ret || descriptor; + } + }); + Object.defineProperties(obj, reducedDescriptors); +} +/** + * Makes all methods read-only + * @param {Object} obj + */ +const freezeMethods = (obj) => { + reduceDescriptors(obj, (descriptor, name) => { + // skip restricted props in strict mode + if (isFunction(obj) && ['arguments', 'caller', 'callee'].indexOf(name) !== -1) { + return false; + } + const value = obj[name]; + if (!isFunction(value)) return; + descriptor.enumerable = false; + if ('writable' in descriptor) { + descriptor.writable = false; + return; + } + if (!descriptor.set) { + descriptor.set = () => { + throw Error('Can not rewrite read-only method \'' + name + '\''); + }; + } + }); +} +const toObjectSet = (arrayOrString, delimiter) => { + const obj = {}; + const define = (arr) => { + arr.forEach(value => { + obj[value] = true; + }); + } + isArray(arrayOrString) ? define(arrayOrString) : define(String(arrayOrString).split(delimiter)); + return obj; +} +const noop = () => {} +const toFiniteNumber = (value, defaultValue) => { + return value != null && Number.isFinite(value = +value) ? value : defaultValue; +} +const ALPHA = 'abcdefghijklmnopqrstuvwxyz' +const DIGIT = '0123456789'; +const ALPHABET = { + DIGIT, + ALPHA, + ALPHA_DIGIT: ALPHA + ALPHA.toUpperCase() + DIGIT +} +const generateString = (size = 16, alphabet = ALPHABET.ALPHA_DIGIT) => { + let str = ''; + const {length} = alphabet; + while (size--) { + str += alphabet[Math.random() * length|0] + } + return str; +} /** - * Create an instance of Axios + * If the thing is a FormData object, return true, otherwise return false. * - * @param {Object} defaultConfig The default config for the instance + * @param {unknown} thing - The thing to check. * - * @returns {Axios} A new instance of Axios + * @returns {boolean} */ -function createInstance(defaultConfig) { - const context = new _core_Axios_js__WEBPACK_IMPORTED_MODULE_0__["default"](defaultConfig); - const instance = (0,_helpers_bind_js__WEBPACK_IMPORTED_MODULE_1__["default"])(_core_Axios_js__WEBPACK_IMPORTED_MODULE_0__["default"].prototype.request, context); - - // Copy axios.prototype to instance - _utils_js__WEBPACK_IMPORTED_MODULE_2__["default"].extend(instance, _core_Axios_js__WEBPACK_IMPORTED_MODULE_0__["default"].prototype, context, {allOwnKeys: true}); - - // Copy context to instance - _utils_js__WEBPACK_IMPORTED_MODULE_2__["default"].extend(instance, context, null, {allOwnKeys: true}); - - // Factory for creating new instances - instance.create = function create(instanceConfig) { - return createInstance((0,_core_mergeConfig_js__WEBPACK_IMPORTED_MODULE_3__["default"])(defaultConfig, instanceConfig)); - }; - - return instance; +function isSpecCompliantForm(thing) { + return !!(thing && isFunction(thing.append) && thing[Symbol.toStringTag] === 'FormData' && thing[Symbol.iterator]); } -// Create the default instance to be exported -const axios = createInstance(_defaults_index_js__WEBPACK_IMPORTED_MODULE_4__["default"]); - -// Expose Axios class to allow class inheritance -axios.Axios = _core_Axios_js__WEBPACK_IMPORTED_MODULE_0__["default"]; - -// Expose Cancel & CancelToken -axios.CanceledError = _cancel_CanceledError_js__WEBPACK_IMPORTED_MODULE_5__["default"]; -axios.CancelToken = _cancel_CancelToken_js__WEBPACK_IMPORTED_MODULE_6__["default"]; -axios.isCancel = _cancel_isCancel_js__WEBPACK_IMPORTED_MODULE_7__["default"]; -axios.VERSION = _env_data_js__WEBPACK_IMPORTED_MODULE_8__.VERSION; -axios.toFormData = _helpers_toFormData_js__WEBPACK_IMPORTED_MODULE_9__["default"]; - -// Expose AxiosError class -axios.AxiosError = _core_AxiosError_js__WEBPACK_IMPORTED_MODULE_10__["default"]; +const toJSONObject = (obj) => { + const stack = new Array(10); -// alias for CanceledError for backward compatibility -axios.Cancel = axios.CanceledError; + const visit = (source, i) => { -// Expose all/spread -axios.all = function all(promises) { - return Promise.all(promises); -}; + if (isObject(source)) { + if (stack.indexOf(source) >= 0) { + return; + } -axios.spread = _helpers_spread_js__WEBPACK_IMPORTED_MODULE_11__["default"]; + if(!('toJSON' in source)) { + stack[i] = source; + const target = isArray(source) ? [] : {}; -// Expose isAxiosError -axios.isAxiosError = _helpers_isAxiosError_js__WEBPACK_IMPORTED_MODULE_12__["default"]; + forEach(source, (value, key) => { + const reducedValue = visit(value, i + 1); + !isUndefined(reducedValue) && (target[key] = reducedValue); + }); -// Expose mergeConfig -axios.mergeConfig = _core_mergeConfig_js__WEBPACK_IMPORTED_MODULE_3__["default"]; + stack[i] = undefined; -axios.AxiosHeaders = _core_AxiosHeaders_js__WEBPACK_IMPORTED_MODULE_13__["default"]; + return target; + } + } -axios.formToJSON = thing => (0,_helpers_formDataToJSON_js__WEBPACK_IMPORTED_MODULE_14__["default"])(_utils_js__WEBPACK_IMPORTED_MODULE_2__["default"].isHTMLForm(thing) ? new FormData(thing) : thing); + return source; + } -axios.getAdapter = _adapters_adapters_js__WEBPACK_IMPORTED_MODULE_15__["default"].getAdapter; + return visit(obj, 0); +} -axios.HttpStatusCode = _helpers_HttpStatusCode_js__WEBPACK_IMPORTED_MODULE_16__["default"]; +const isAsyncFn = kindOfTest('AsyncFunction'); -axios.default = axios; +const isThenable = (thing) => + thing && (isObject(thing) || isFunction(thing)) && isFunction(thing.then) && isFunction(thing.catch); -// this module should only have a default export -/* harmony default export */ const __WEBPACK_DEFAULT_EXPORT__ = (axios); +// original code +// https://github.com/DigitalBrainJS/AxiosPromise/blob/16deab13710ec09779922131f3fa5954320f83ab/lib/utils.js#L11-L34 +const _setImmediate = ((setImmediateSupported, postMessageSupported) => { + if (setImmediateSupported) { + return setImmediate; + } -/***/ }), + return postMessageSupported ? ((token, callbacks) => { + _global.addEventListener("message", ({source, data}) => { + if (source === _global && data === token) { + callbacks.length && callbacks.shift()(); + } + }, false); -/***/ "./node_modules/axios/lib/cancel/CancelToken.js": -/*!******************************************************!*\ - !*** ./node_modules/axios/lib/cancel/CancelToken.js ***! - \******************************************************/ -/***/ ((__unused_webpack___webpack_module__, __webpack_exports__, __webpack_require__) => { + return (cb) => { + callbacks.push(cb); + _global.postMessage(token, "*"); + } + })(`axios@${Math.random()}`, []) : (cb) => setTimeout(cb); +})( + typeof setImmediate === 'function', + isFunction(_global.postMessage) +); -"use strict"; -__webpack_require__.r(__webpack_exports__); -/* harmony export */ __webpack_require__.d(__webpack_exports__, { -/* harmony export */ "default": () => (__WEBPACK_DEFAULT_EXPORT__) -/* harmony export */ }); -/* harmony import */ var _CanceledError_js__WEBPACK_IMPORTED_MODULE_0__ = __webpack_require__(/*! ./CanceledError.js */ "./node_modules/axios/lib/cancel/CanceledError.js"); +const asap = typeof queueMicrotask !== 'undefined' ? + queueMicrotask.bind(_global) : ( typeof process !== 'undefined' && process.nextTick || _setImmediate); +// ********************* +/* harmony default export */ const __WEBPACK_DEFAULT_EXPORT__ = ({ + isArray, + isArrayBuffer, + isBuffer, + isFormData, + isArrayBufferView, + isString, + isNumber, + isBoolean, + isObject, + isPlainObject, + isReadableStream, + isRequest, + isResponse, + isHeaders, + isUndefined, + isDate, + isFile, + isBlob, + isRegExp, + isFunction, + isStream, + isURLSearchParams, + isTypedArray, + isFileList, + forEach, + merge, + extend, + trim, + stripBOM, + inherits, + toFlatObject, + kindOf, + kindOfTest, + endsWith, + toArray, + forEachEntry, + matchAll, + isHTMLForm, + hasOwnProperty, + hasOwnProp: hasOwnProperty, // an alias to avoid ESLint no-prototype-builtins detection + reduceDescriptors, + freezeMethods, + toObjectSet, + toCamelCase, + noop, + toFiniteNumber, + findKey, + global: _global, + isContextDefined, + ALPHABET, + generateString, + isSpecCompliantForm, + toJSONObject, + isAsyncFn, + isThenable, + setImmediate: _setImmediate, + asap +}); -/** - * A `CancelToken` is an object that can be used to request cancellation of an operation. - * - * @param {Function} executor The executor function. - * - * @returns {CancelToken} - */ -class CancelToken { - constructor(executor) { - if (typeof executor !== 'function') { - throw new TypeError('executor must be a function.'); - } +/***/ }), - let resolvePromise; +/***/ "./node_modules/.pnpm/loglevel@1.9.2/node_modules/loglevel/lib/loglevel.js": +/*!*********************************************************************************!*\ + !*** ./node_modules/.pnpm/loglevel@1.9.2/node_modules/loglevel/lib/loglevel.js ***! + \*********************************************************************************/ +/***/ (function(module, exports, __webpack_require__) { - this.promise = new Promise(function promiseExecutor(resolve) { - resolvePromise = resolve; - }); +var __WEBPACK_AMD_DEFINE_FACTORY__, __WEBPACK_AMD_DEFINE_RESULT__;/* +* loglevel - https://github.com/pimterry/loglevel +* +* Copyright (c) 2013 Tim Perry +* Licensed under the MIT license. +*/ +(function (root, definition) { + "use strict"; + if (true) { + !(__WEBPACK_AMD_DEFINE_FACTORY__ = (definition), + __WEBPACK_AMD_DEFINE_RESULT__ = (typeof __WEBPACK_AMD_DEFINE_FACTORY__ === 'function' ? + (__WEBPACK_AMD_DEFINE_FACTORY__.call(exports, __webpack_require__, exports, module)) : + __WEBPACK_AMD_DEFINE_FACTORY__), + __WEBPACK_AMD_DEFINE_RESULT__ !== undefined && (module.exports = __WEBPACK_AMD_DEFINE_RESULT__)); + } else {} +}(this, function () { + "use strict"; - const token = this; + // Slightly dubious tricks to cut down minimized file size + var noop = function() {}; + var undefinedType = "undefined"; + var isIE = (typeof window !== undefinedType) && (typeof window.navigator !== undefinedType) && ( + /Trident\/|MSIE /.test(window.navigator.userAgent) + ); - // eslint-disable-next-line func-names - this.promise.then(cancel => { - if (!token._listeners) return; + var logMethods = [ + "trace", + "debug", + "info", + "warn", + "error" + ]; - let i = token._listeners.length; + var _loggersByName = {}; + var defaultLogger = null; - while (i-- > 0) { - token._listeners[i](cancel); - } - token._listeners = null; - }); + // Cross-browser bind equivalent that works at least back to IE6 + function bindMethod(obj, methodName) { + var method = obj[methodName]; + if (typeof method.bind === 'function') { + return method.bind(obj); + } else { + try { + return Function.prototype.bind.call(method, obj); + } catch (e) { + // Missing bind shim or IE8 + Modernizr, fallback to wrapping + return function() { + return Function.prototype.apply.apply(method, [obj, arguments]); + }; + } + } + } - // eslint-disable-next-line func-names - this.promise.then = onfulfilled => { - let _resolve; - // eslint-disable-next-line func-names - const promise = new Promise(resolve => { - token.subscribe(resolve); - _resolve = resolve; - }).then(onfulfilled); + // Trace() doesn't print the message in IE, so for that case we need to wrap it + function traceForIE() { + if (console.log) { + if (console.log.apply) { + console.log.apply(console, arguments); + } else { + // In old IE, native console methods themselves don't have apply(). + Function.prototype.apply.apply(console.log, [console, arguments]); + } + } + if (console.trace) console.trace(); + } - promise.cancel = function reject() { - token.unsubscribe(_resolve); - }; + // Build the best logging method possible for this env + // Wherever possible we want to bind, not wrap, to preserve stack traces + function realMethod(methodName) { + if (methodName === 'debug') { + methodName = 'log'; + } - return promise; - }; + if (typeof console === undefinedType) { + return false; // No method possible, for now - fixed later by enableLoggingWhenConsoleArrives + } else if (methodName === 'trace' && isIE) { + return traceForIE; + } else if (console[methodName] !== undefined) { + return bindMethod(console, methodName); + } else if (console.log !== undefined) { + return bindMethod(console, 'log'); + } else { + return noop; + } + } - executor(function cancel(message, config, request) { - if (token.reason) { - // Cancellation has already been requested - return; - } + // These private functions always need `this` to be set properly - token.reason = new _CanceledError_js__WEBPACK_IMPORTED_MODULE_0__["default"](message, config, request); - resolvePromise(token.reason); - }); - } + function replaceLoggingMethods() { + /*jshint validthis:true */ + var level = this.getLevel(); - /** - * Throws a `CanceledError` if cancellation has been requested. - */ - throwIfRequested() { - if (this.reason) { - throw this.reason; - } - } + // Replace the actual methods. + for (var i = 0; i < logMethods.length; i++) { + var methodName = logMethods[i]; + this[methodName] = (i < level) ? + noop : + this.methodFactory(methodName, level, this.name); + } - /** - * Subscribe to the cancel signal - */ + // Define log.log as an alias for log.debug + this.log = this.debug; - subscribe(listener) { - if (this.reason) { - listener(this.reason); - return; + // Return any important warnings. + if (typeof console === undefinedType && level < this.levels.SILENT) { + return "No console available for logging"; + } } - if (this._listeners) { - this._listeners.push(listener); - } else { - this._listeners = [listener]; + // In old IE versions, the console isn't present until you first open it. + // We build realMethod() replacements here that regenerate logging methods + function enableLoggingWhenConsoleArrives(methodName) { + return function () { + if (typeof console !== undefinedType) { + replaceLoggingMethods.call(this); + this[methodName].apply(this, arguments); + } + }; } - } - - /** - * Unsubscribe from the cancel signal - */ - unsubscribe(listener) { - if (!this._listeners) { - return; - } - const index = this._listeners.indexOf(listener); - if (index !== -1) { - this._listeners.splice(index, 1); + // By default, we use closely bound real methods wherever possible, and + // otherwise we wait for a console to appear, and then try again. + function defaultMethodFactory(methodName, _level, _loggerName) { + /*jshint validthis:true */ + return realMethod(methodName) || + enableLoggingWhenConsoleArrives.apply(this, arguments); } - } - - /** - * Returns an object that contains a new `CancelToken` and a function that, when called, - * cancels the `CancelToken`. - */ - static source() { - let cancel; - const token = new CancelToken(function executor(c) { - cancel = c; - }); - return { - token, - cancel - }; - } -} -/* harmony default export */ const __WEBPACK_DEFAULT_EXPORT__ = (CancelToken); + function Logger(name, factory) { + // Private instance variables. + var self = this; + /** + * The level inherited from a parent logger (or a global default). We + * cache this here rather than delegating to the parent so that it stays + * in sync with the actual logging methods that we have installed (the + * parent could change levels but we might not have rebuilt the loggers + * in this child yet). + * @type {number} + */ + var inheritedLevel; + /** + * The default level for this logger, if any. If set, this overrides + * `inheritedLevel`. + * @type {number|null} + */ + var defaultLevel; + /** + * A user-specific level for this logger. If set, this overrides + * `defaultLevel`. + * @type {number|null} + */ + var userLevel; + var storageKey = "loglevel"; + if (typeof name === "string") { + storageKey += ":" + name; + } else if (typeof name === "symbol") { + storageKey = undefined; + } -/***/ }), + function persistLevelIfPossible(levelNum) { + var levelName = (logMethods[levelNum] || 'silent').toUpperCase(); -/***/ "./node_modules/axios/lib/cancel/CanceledError.js": -/*!********************************************************!*\ - !*** ./node_modules/axios/lib/cancel/CanceledError.js ***! - \********************************************************/ -/***/ ((__unused_webpack___webpack_module__, __webpack_exports__, __webpack_require__) => { + if (typeof window === undefinedType || !storageKey) return; -"use strict"; -__webpack_require__.r(__webpack_exports__); -/* harmony export */ __webpack_require__.d(__webpack_exports__, { -/* harmony export */ "default": () => (__WEBPACK_DEFAULT_EXPORT__) -/* harmony export */ }); -/* harmony import */ var _core_AxiosError_js__WEBPACK_IMPORTED_MODULE_0__ = __webpack_require__(/*! ../core/AxiosError.js */ "./node_modules/axios/lib/core/AxiosError.js"); -/* harmony import */ var _utils_js__WEBPACK_IMPORTED_MODULE_1__ = __webpack_require__(/*! ../utils.js */ "./node_modules/axios/lib/utils.js"); + // Use localStorage if available + try { + window.localStorage[storageKey] = levelName; + return; + } catch (ignore) {} + // Use session cookie as fallback + try { + window.document.cookie = + encodeURIComponent(storageKey) + "=" + levelName + ";"; + } catch (ignore) {} + } + function getPersistedLevel() { + var storedLevel; + if (typeof window === undefinedType || !storageKey) return; + try { + storedLevel = window.localStorage[storageKey]; + } catch (ignore) {} -/** - * A `CanceledError` is an object that is thrown when an operation is canceled. - * - * @param {string=} message The message. - * @param {Object=} config The config. - * @param {Object=} request The request. - * - * @returns {CanceledError} The created error. - */ -function CanceledError(message, config, request) { - // eslint-disable-next-line no-eq-null,eqeqeq - _core_AxiosError_js__WEBPACK_IMPORTED_MODULE_0__["default"].call(this, message == null ? 'canceled' : message, _core_AxiosError_js__WEBPACK_IMPORTED_MODULE_0__["default"].ERR_CANCELED, config, request); - this.name = 'CanceledError'; -} + // Fallback to cookies if local storage gives us nothing + if (typeof storedLevel === undefinedType) { + try { + var cookie = window.document.cookie; + var cookieName = encodeURIComponent(storageKey); + var location = cookie.indexOf(cookieName + "="); + if (location !== -1) { + storedLevel = /^([^;]+)/.exec( + cookie.slice(location + cookieName.length + 1) + )[1]; + } + } catch (ignore) {} + } -_utils_js__WEBPACK_IMPORTED_MODULE_1__["default"].inherits(CanceledError, _core_AxiosError_js__WEBPACK_IMPORTED_MODULE_0__["default"], { - __CANCEL__: true -}); + // If the stored level is not valid, treat it as if nothing was stored. + if (self.levels[storedLevel] === undefined) { + storedLevel = undefined; + } -/* harmony default export */ const __WEBPACK_DEFAULT_EXPORT__ = (CanceledError); + return storedLevel; + } + function clearPersistedLevel() { + if (typeof window === undefinedType || !storageKey) return; -/***/ }), + // Use localStorage if available + try { + window.localStorage.removeItem(storageKey); + } catch (ignore) {} -/***/ "./node_modules/axios/lib/cancel/isCancel.js": -/*!***************************************************!*\ - !*** ./node_modules/axios/lib/cancel/isCancel.js ***! - \***************************************************/ -/***/ ((__unused_webpack___webpack_module__, __webpack_exports__, __webpack_require__) => { + // Use session cookie as fallback + try { + window.document.cookie = + encodeURIComponent(storageKey) + "=; expires=Thu, 01 Jan 1970 00:00:00 UTC"; + } catch (ignore) {} + } -"use strict"; -__webpack_require__.r(__webpack_exports__); -/* harmony export */ __webpack_require__.d(__webpack_exports__, { -/* harmony export */ "default": () => (/* binding */ isCancel) -/* harmony export */ }); + function normalizeLevel(input) { + var level = input; + if (typeof level === "string" && self.levels[level.toUpperCase()] !== undefined) { + level = self.levels[level.toUpperCase()]; + } + if (typeof level === "number" && level >= 0 && level <= self.levels.SILENT) { + return level; + } else { + throw new TypeError("log.setLevel() called with invalid level: " + input); + } + } + /* + * + * Public logger API - see https://github.com/pimterry/loglevel for details + * + */ -function isCancel(value) { - return !!(value && value.__CANCEL__); -} + self.name = name; + self.levels = { "TRACE": 0, "DEBUG": 1, "INFO": 2, "WARN": 3, + "ERROR": 4, "SILENT": 5}; -/***/ }), + self.methodFactory = factory || defaultMethodFactory; -/***/ "./node_modules/axios/lib/core/Axios.js": -/*!**********************************************!*\ - !*** ./node_modules/axios/lib/core/Axios.js ***! - \**********************************************/ -/***/ ((__unused_webpack___webpack_module__, __webpack_exports__, __webpack_require__) => { + self.getLevel = function () { + if (userLevel != null) { + return userLevel; + } else if (defaultLevel != null) { + return defaultLevel; + } else { + return inheritedLevel; + } + }; -"use strict"; -__webpack_require__.r(__webpack_exports__); -/* harmony export */ __webpack_require__.d(__webpack_exports__, { -/* harmony export */ "default": () => (__WEBPACK_DEFAULT_EXPORT__) -/* harmony export */ }); -/* harmony import */ var _utils_js__WEBPACK_IMPORTED_MODULE_3__ = __webpack_require__(/*! ./../utils.js */ "./node_modules/axios/lib/utils.js"); -/* harmony import */ var _helpers_buildURL_js__WEBPACK_IMPORTED_MODULE_7__ = __webpack_require__(/*! ../helpers/buildURL.js */ "./node_modules/axios/lib/helpers/buildURL.js"); -/* harmony import */ var _InterceptorManager_js__WEBPACK_IMPORTED_MODULE_1__ = __webpack_require__(/*! ./InterceptorManager.js */ "./node_modules/axios/lib/core/InterceptorManager.js"); -/* harmony import */ var _dispatchRequest_js__WEBPACK_IMPORTED_MODULE_5__ = __webpack_require__(/*! ./dispatchRequest.js */ "./node_modules/axios/lib/core/dispatchRequest.js"); -/* harmony import */ var _mergeConfig_js__WEBPACK_IMPORTED_MODULE_2__ = __webpack_require__(/*! ./mergeConfig.js */ "./node_modules/axios/lib/core/mergeConfig.js"); -/* harmony import */ var _buildFullPath_js__WEBPACK_IMPORTED_MODULE_6__ = __webpack_require__(/*! ./buildFullPath.js */ "./node_modules/axios/lib/core/buildFullPath.js"); -/* harmony import */ var _helpers_validator_js__WEBPACK_IMPORTED_MODULE_0__ = __webpack_require__(/*! ../helpers/validator.js */ "./node_modules/axios/lib/helpers/validator.js"); -/* harmony import */ var _AxiosHeaders_js__WEBPACK_IMPORTED_MODULE_4__ = __webpack_require__(/*! ./AxiosHeaders.js */ "./node_modules/axios/lib/core/AxiosHeaders.js"); + self.setLevel = function (level, persist) { + userLevel = normalizeLevel(level); + if (persist !== false) { // defaults to true + persistLevelIfPossible(userLevel); + } + // NOTE: in v2, this should call rebuild(), which updates children. + return replaceLoggingMethods.call(self); + }; + self.setDefaultLevel = function (level) { + defaultLevel = normalizeLevel(level); + if (!getPersistedLevel()) { + self.setLevel(level, false); + } + }; + self.resetLevel = function () { + userLevel = null; + clearPersistedLevel(); + replaceLoggingMethods.call(self); + }; + self.enableAll = function(persist) { + self.setLevel(self.levels.TRACE, persist); + }; + self.disableAll = function(persist) { + self.setLevel(self.levels.SILENT, persist); + }; + self.rebuild = function () { + if (defaultLogger !== self) { + inheritedLevel = normalizeLevel(defaultLogger.getLevel()); + } + replaceLoggingMethods.call(self); + if (defaultLogger === self) { + for (var childName in _loggersByName) { + _loggersByName[childName].rebuild(); + } + } + }; + // Initialize all the internal levels. + inheritedLevel = normalizeLevel( + defaultLogger ? defaultLogger.getLevel() : "WARN" + ); + var initialLevel = getPersistedLevel(); + if (initialLevel != null) { + userLevel = normalizeLevel(initialLevel); + } + replaceLoggingMethods.call(self); + } + /* + * + * Top-level API + * + */ + defaultLogger = new Logger(); -const validators = _helpers_validator_js__WEBPACK_IMPORTED_MODULE_0__["default"].validators; + defaultLogger.getLogger = function getLogger(name) { + if ((typeof name !== "symbol" && typeof name !== "string") || name === "") { + throw new TypeError("You must supply a name when creating a logger."); + } -/** - * Create a new instance of Axios - * - * @param {Object} instanceConfig The default config for the instance - * - * @return {Axios} A new instance of Axios - */ -class Axios { - constructor(instanceConfig) { - this.defaults = instanceConfig; - this.interceptors = { - request: new _InterceptorManager_js__WEBPACK_IMPORTED_MODULE_1__["default"](), - response: new _InterceptorManager_js__WEBPACK_IMPORTED_MODULE_1__["default"]() + var logger = _loggersByName[name]; + if (!logger) { + logger = _loggersByName[name] = new Logger( + name, + defaultLogger.methodFactory + ); + } + return logger; }; - } - /** - * Dispatch a request - * - * @param {String|Object} configOrUrl The config specific for this request (merged with this.defaults) - * @param {?Object} config - * - * @returns {Promise} The Promise to be fulfilled - */ - async request(configOrUrl, config) { - try { - return await this._request(configOrUrl, config); - } catch (err) { - if (err instanceof Error) { - let dummy; + // Grab the current global log variable in case of overwrite + var _log = (typeof window !== undefinedType) ? window.log : undefined; + defaultLogger.noConflict = function() { + if (typeof window !== undefinedType && + window.log === defaultLogger) { + window.log = _log; + } - Error.captureStackTrace ? Error.captureStackTrace(dummy = {}) : (dummy = new Error()); + return defaultLogger; + }; - // slice off the Error: ... line - const stack = dummy.stack ? dummy.stack.replace(/^.+\n/, '') : ''; - try { - if (!err.stack) { - err.stack = stack; - // match without the 2 top stack lines - } else if (stack && !String(err.stack).endsWith(stack.replace(/^.+\n.+\n/, ''))) { - err.stack += '\n' + stack - } - } catch (e) { - // ignore the case where "stack" is an un-writable property - } - } + defaultLogger.getLoggers = function getLoggers() { + return _loggersByName; + }; - throw err; - } - } + // ES6 default export, for compatibility + defaultLogger['default'] = defaultLogger; - _request(configOrUrl, config) { - /*eslint no-param-reassign:0*/ - // Allow for axios('example/url'[, config]) a la fetch API - if (typeof configOrUrl === 'string') { - config = config || {}; - config.url = configOrUrl; - } else { - config = configOrUrl || {}; - } + return defaultLogger; +})); - config = (0,_mergeConfig_js__WEBPACK_IMPORTED_MODULE_2__["default"])(this.defaults, config); - const {transitional, paramsSerializer, headers} = config; +/***/ }), - if (transitional !== undefined) { - _helpers_validator_js__WEBPACK_IMPORTED_MODULE_0__["default"].assertOptions(transitional, { - silentJSONParsing: validators.transitional(validators.boolean), - forcedJSONParsing: validators.transitional(validators.boolean), - clarifyTimeoutError: validators.transitional(validators.boolean) - }, false); - } +/***/ "./src/Typesense/Alias.ts": +/*!********************************!*\ + !*** ./src/Typesense/Alias.ts ***! + \********************************/ +/***/ ((__unused_webpack_module, __webpack_exports__, __webpack_require__) => { - if (paramsSerializer != null) { - if (_utils_js__WEBPACK_IMPORTED_MODULE_3__["default"].isFunction(paramsSerializer)) { - config.paramsSerializer = { - serialize: paramsSerializer - } - } else { - _helpers_validator_js__WEBPACK_IMPORTED_MODULE_0__["default"].assertOptions(paramsSerializer, { - encode: validators.function, - serialize: validators.function - }, true); - } - } +"use strict"; +__webpack_require__.r(__webpack_exports__); +/* harmony export */ __webpack_require__.d(__webpack_exports__, { +/* harmony export */ "default": () => (/* binding */ Alias) +/* harmony export */ }); +/* harmony import */ var _babel_runtime_helpers_asyncToGenerator__WEBPACK_IMPORTED_MODULE_0__ = __webpack_require__(/*! @babel/runtime/helpers/asyncToGenerator */ "./node_modules/.pnpm/@babel+runtime@7.26.9/node_modules/@babel/runtime/helpers/esm/asyncToGenerator.js"); +/* harmony import */ var _babel_runtime_helpers_classCallCheck__WEBPACK_IMPORTED_MODULE_1__ = __webpack_require__(/*! @babel/runtime/helpers/classCallCheck */ "./node_modules/.pnpm/@babel+runtime@7.26.9/node_modules/@babel/runtime/helpers/esm/classCallCheck.js"); +/* harmony import */ var _babel_runtime_helpers_createClass__WEBPACK_IMPORTED_MODULE_2__ = __webpack_require__(/*! @babel/runtime/helpers/createClass */ "./node_modules/.pnpm/@babel+runtime@7.26.9/node_modules/@babel/runtime/helpers/esm/createClass.js"); +/* harmony import */ var _babel_runtime_regenerator__WEBPACK_IMPORTED_MODULE_3__ = __webpack_require__(/*! @babel/runtime/regenerator */ "./node_modules/.pnpm/@babel+runtime@7.26.9/node_modules/@babel/runtime/regenerator/index.js"); +/* harmony import */ var _babel_runtime_regenerator__WEBPACK_IMPORTED_MODULE_3___default = /*#__PURE__*/__webpack_require__.n(_babel_runtime_regenerator__WEBPACK_IMPORTED_MODULE_3__); +/* harmony import */ var _Aliases__WEBPACK_IMPORTED_MODULE_4__ = __webpack_require__(/*! ./Aliases */ "./src/Typesense/Aliases.ts"); - // Set config.method - config.method = (config.method || this.defaults.method || 'get').toLowerCase(); - // Flatten headers - let contextHeaders = headers && _utils_js__WEBPACK_IMPORTED_MODULE_3__["default"].merge( - headers.common, - headers[config.method] - ); - headers && _utils_js__WEBPACK_IMPORTED_MODULE_3__["default"].forEach( - ['delete', 'get', 'head', 'post', 'put', 'patch', 'common'], - (method) => { - delete headers[method]; - } - ); - config.headers = _AxiosHeaders_js__WEBPACK_IMPORTED_MODULE_4__["default"].concat(contextHeaders, headers); - // filter out skipped interceptors - const requestInterceptorChain = []; - let synchronousRequestInterceptors = true; - this.interceptors.request.forEach(function unshiftRequestInterceptors(interceptor) { - if (typeof interceptor.runWhen === 'function' && interceptor.runWhen(config) === false) { - return; +var Alias = /*#__PURE__*/function () { + function Alias(name, apiCall) { + (0,_babel_runtime_helpers_classCallCheck__WEBPACK_IMPORTED_MODULE_1__["default"])(this, Alias); + this.name = name; + this.apiCall = apiCall; + } + return (0,_babel_runtime_helpers_createClass__WEBPACK_IMPORTED_MODULE_2__["default"])(Alias, [{ + key: "retrieve", + value: function () { + var _retrieve = (0,_babel_runtime_helpers_asyncToGenerator__WEBPACK_IMPORTED_MODULE_0__["default"])(/*#__PURE__*/_babel_runtime_regenerator__WEBPACK_IMPORTED_MODULE_3___default().mark(function _callee() { + return _babel_runtime_regenerator__WEBPACK_IMPORTED_MODULE_3___default().wrap(function _callee$(_context) { + while (1) switch (_context.prev = _context.next) { + case 0: + return _context.abrupt("return", this.apiCall.get(this.endpointPath())); + case 1: + case "end": + return _context.stop(); + } + }, _callee, this); + })); + function retrieve() { + return _retrieve.apply(this, arguments); + } + return retrieve; + }() + }, { + key: "delete", + value: function () { + var _delete2 = (0,_babel_runtime_helpers_asyncToGenerator__WEBPACK_IMPORTED_MODULE_0__["default"])(/*#__PURE__*/_babel_runtime_regenerator__WEBPACK_IMPORTED_MODULE_3___default().mark(function _callee2() { + return _babel_runtime_regenerator__WEBPACK_IMPORTED_MODULE_3___default().wrap(function _callee2$(_context2) { + while (1) switch (_context2.prev = _context2.next) { + case 0: + return _context2.abrupt("return", this.apiCall.delete(this.endpointPath())); + case 1: + case "end": + return _context2.stop(); + } + }, _callee2, this); + })); + function _delete() { + return _delete2.apply(this, arguments); } + return _delete; + }() + }, { + key: "endpointPath", + value: function endpointPath() { + return "".concat(_Aliases__WEBPACK_IMPORTED_MODULE_4__["default"].RESOURCEPATH, "/").concat(encodeURIComponent(this.name)); + } + }]); +}(); - synchronousRequestInterceptors = synchronousRequestInterceptors && interceptor.synchronous; - requestInterceptorChain.unshift(interceptor.fulfilled, interceptor.rejected); - }); +/***/ }), - const responseInterceptorChain = []; - this.interceptors.response.forEach(function pushResponseInterceptors(interceptor) { - responseInterceptorChain.push(interceptor.fulfilled, interceptor.rejected); - }); +/***/ "./src/Typesense/Aliases.ts": +/*!**********************************!*\ + !*** ./src/Typesense/Aliases.ts ***! + \**********************************/ +/***/ ((__unused_webpack_module, __webpack_exports__, __webpack_require__) => { - let promise; - let i = 0; - let len; +"use strict"; +__webpack_require__.r(__webpack_exports__); +/* harmony export */ __webpack_require__.d(__webpack_exports__, { +/* harmony export */ "default": () => (/* binding */ Aliases) +/* harmony export */ }); +/* harmony import */ var _babel_runtime_helpers_asyncToGenerator__WEBPACK_IMPORTED_MODULE_0__ = __webpack_require__(/*! @babel/runtime/helpers/asyncToGenerator */ "./node_modules/.pnpm/@babel+runtime@7.26.9/node_modules/@babel/runtime/helpers/esm/asyncToGenerator.js"); +/* harmony import */ var _babel_runtime_helpers_classCallCheck__WEBPACK_IMPORTED_MODULE_1__ = __webpack_require__(/*! @babel/runtime/helpers/classCallCheck */ "./node_modules/.pnpm/@babel+runtime@7.26.9/node_modules/@babel/runtime/helpers/esm/classCallCheck.js"); +/* harmony import */ var _babel_runtime_helpers_createClass__WEBPACK_IMPORTED_MODULE_2__ = __webpack_require__(/*! @babel/runtime/helpers/createClass */ "./node_modules/.pnpm/@babel+runtime@7.26.9/node_modules/@babel/runtime/helpers/esm/createClass.js"); +/* harmony import */ var _babel_runtime_regenerator__WEBPACK_IMPORTED_MODULE_3__ = __webpack_require__(/*! @babel/runtime/regenerator */ "./node_modules/.pnpm/@babel+runtime@7.26.9/node_modules/@babel/runtime/regenerator/index.js"); +/* harmony import */ var _babel_runtime_regenerator__WEBPACK_IMPORTED_MODULE_3___default = /*#__PURE__*/__webpack_require__.n(_babel_runtime_regenerator__WEBPACK_IMPORTED_MODULE_3__); - if (!synchronousRequestInterceptors) { - const chain = [_dispatchRequest_js__WEBPACK_IMPORTED_MODULE_5__["default"].bind(this), undefined]; - chain.unshift.apply(chain, requestInterceptorChain); - chain.push.apply(chain, responseInterceptorChain); - len = chain.length; - promise = Promise.resolve(config); - while (i < len) { - promise = promise.then(chain[i++], chain[i++]); - } - return promise; +var RESOURCEPATH = "/aliases"; +var Aliases = /*#__PURE__*/function () { + function Aliases(apiCall) { + (0,_babel_runtime_helpers_classCallCheck__WEBPACK_IMPORTED_MODULE_1__["default"])(this, Aliases); + this.apiCall = apiCall; + } + return (0,_babel_runtime_helpers_createClass__WEBPACK_IMPORTED_MODULE_2__["default"])(Aliases, [{ + key: "upsert", + value: function () { + var _upsert = (0,_babel_runtime_helpers_asyncToGenerator__WEBPACK_IMPORTED_MODULE_0__["default"])(/*#__PURE__*/_babel_runtime_regenerator__WEBPACK_IMPORTED_MODULE_3___default().mark(function _callee(name, mapping) { + return _babel_runtime_regenerator__WEBPACK_IMPORTED_MODULE_3___default().wrap(function _callee$(_context) { + while (1) switch (_context.prev = _context.next) { + case 0: + return _context.abrupt("return", this.apiCall.put(this.endpointPath(name), mapping)); + case 1: + case "end": + return _context.stop(); + } + }, _callee, this); + })); + function upsert(_x, _x2) { + return _upsert.apply(this, arguments); + } + return upsert; + }() + }, { + key: "retrieve", + value: function () { + var _retrieve = (0,_babel_runtime_helpers_asyncToGenerator__WEBPACK_IMPORTED_MODULE_0__["default"])(/*#__PURE__*/_babel_runtime_regenerator__WEBPACK_IMPORTED_MODULE_3___default().mark(function _callee2() { + return _babel_runtime_regenerator__WEBPACK_IMPORTED_MODULE_3___default().wrap(function _callee2$(_context2) { + while (1) switch (_context2.prev = _context2.next) { + case 0: + return _context2.abrupt("return", this.apiCall.get(RESOURCEPATH)); + case 1: + case "end": + return _context2.stop(); + } + }, _callee2, this); + })); + function retrieve() { + return _retrieve.apply(this, arguments); + } + return retrieve; + }() + }, { + key: "endpointPath", + value: function endpointPath(aliasName) { + return "".concat(Aliases.RESOURCEPATH, "/").concat(encodeURIComponent(aliasName)); + } + }], [{ + key: "RESOURCEPATH", + get: function get() { + return RESOURCEPATH; } + }]); +}(); - len = requestInterceptorChain.length; - let newConfig = config; +/***/ }), - i = 0; +/***/ "./src/Typesense/Analytics.ts": +/*!************************************!*\ + !*** ./src/Typesense/Analytics.ts ***! + \************************************/ +/***/ ((__unused_webpack_module, __webpack_exports__, __webpack_require__) => { - while (i < len) { - const onFulfilled = requestInterceptorChain[i++]; - const onRejected = requestInterceptorChain[i++]; - try { - newConfig = onFulfilled(newConfig); - } catch (error) { - onRejected.call(this, error); - break; - } - } +"use strict"; +__webpack_require__.r(__webpack_exports__); +/* harmony export */ __webpack_require__.d(__webpack_exports__, { +/* harmony export */ "default": () => (/* binding */ Analytics) +/* harmony export */ }); +/* harmony import */ var _babel_runtime_helpers_classCallCheck__WEBPACK_IMPORTED_MODULE_0__ = __webpack_require__(/*! @babel/runtime/helpers/classCallCheck */ "./node_modules/.pnpm/@babel+runtime@7.26.9/node_modules/@babel/runtime/helpers/esm/classCallCheck.js"); +/* harmony import */ var _babel_runtime_helpers_createClass__WEBPACK_IMPORTED_MODULE_1__ = __webpack_require__(/*! @babel/runtime/helpers/createClass */ "./node_modules/.pnpm/@babel+runtime@7.26.9/node_modules/@babel/runtime/helpers/esm/createClass.js"); +/* harmony import */ var _babel_runtime_helpers_defineProperty__WEBPACK_IMPORTED_MODULE_2__ = __webpack_require__(/*! @babel/runtime/helpers/defineProperty */ "./node_modules/.pnpm/@babel+runtime@7.26.9/node_modules/@babel/runtime/helpers/esm/defineProperty.js"); +/* harmony import */ var _AnalyticsRules__WEBPACK_IMPORTED_MODULE_3__ = __webpack_require__(/*! ./AnalyticsRules */ "./src/Typesense/AnalyticsRules.ts"); +/* harmony import */ var _AnalyticsRule__WEBPACK_IMPORTED_MODULE_4__ = __webpack_require__(/*! ./AnalyticsRule */ "./src/Typesense/AnalyticsRule.ts"); +/* harmony import */ var _AnalyticsEvents__WEBPACK_IMPORTED_MODULE_5__ = __webpack_require__(/*! ./AnalyticsEvents */ "./src/Typesense/AnalyticsEvents.ts"); - try { - promise = _dispatchRequest_js__WEBPACK_IMPORTED_MODULE_5__["default"].call(this, newConfig); - } catch (error) { - return Promise.reject(error); - } - i = 0; - len = responseInterceptorChain.length; - while (i < len) { - promise = promise.then(responseInterceptorChain[i++], responseInterceptorChain[i++]); - } - return promise; - } - getUri(config) { - config = (0,_mergeConfig_js__WEBPACK_IMPORTED_MODULE_2__["default"])(this.defaults, config); - const fullPath = (0,_buildFullPath_js__WEBPACK_IMPORTED_MODULE_6__["default"])(config.baseURL, config.url); - return (0,_helpers_buildURL_js__WEBPACK_IMPORTED_MODULE_7__["default"])(fullPath, config.params, config.paramsSerializer); - } -} -// Provide aliases for supported request methods -_utils_js__WEBPACK_IMPORTED_MODULE_3__["default"].forEach(['delete', 'get', 'head', 'options'], function forEachMethodNoData(method) { - /*eslint func-names:0*/ - Axios.prototype[method] = function(url, config) { - return this.request((0,_mergeConfig_js__WEBPACK_IMPORTED_MODULE_2__["default"])(config || {}, { - method, - url, - data: (config || {}).data - })); - }; -}); +var RESOURCEPATH = "/analytics"; +var Analytics = /*#__PURE__*/function () { + function Analytics(apiCall) { + (0,_babel_runtime_helpers_classCallCheck__WEBPACK_IMPORTED_MODULE_0__["default"])(this, Analytics); + (0,_babel_runtime_helpers_defineProperty__WEBPACK_IMPORTED_MODULE_2__["default"])(this, "individualAnalyticsRules", {}); + this.apiCall = apiCall; + this.apiCall = apiCall; + this._analyticsRules = new _AnalyticsRules__WEBPACK_IMPORTED_MODULE_3__["default"](this.apiCall); + this._analyticsEvents = new _AnalyticsEvents__WEBPACK_IMPORTED_MODULE_5__["default"](this.apiCall); + } + return (0,_babel_runtime_helpers_createClass__WEBPACK_IMPORTED_MODULE_1__["default"])(Analytics, [{ + key: "rules", + value: function rules(id) { + if (id === undefined) { + return this._analyticsRules; + } else { + if (this.individualAnalyticsRules[id] === undefined) { + this.individualAnalyticsRules[id] = new _AnalyticsRule__WEBPACK_IMPORTED_MODULE_4__["default"](id, this.apiCall); + } + return this.individualAnalyticsRules[id]; + } + } + }, { + key: "events", + value: function events() { + return this._analyticsEvents; + } + }], [{ + key: "RESOURCEPATH", + get: function get() { + return RESOURCEPATH; + } + }]); +}(); -_utils_js__WEBPACK_IMPORTED_MODULE_3__["default"].forEach(['post', 'put', 'patch'], function forEachMethodWithData(method) { - /*eslint func-names:0*/ - function generateHTTPMethod(isForm) { - return function httpMethod(url, data, config) { - return this.request((0,_mergeConfig_js__WEBPACK_IMPORTED_MODULE_2__["default"])(config || {}, { - method, - headers: isForm ? { - 'Content-Type': 'multipart/form-data' - } : {}, - url, - data - })); - }; - } +/***/ }), - Axios.prototype[method] = generateHTTPMethod(); +/***/ "./src/Typesense/AnalyticsEvents.ts": +/*!******************************************!*\ + !*** ./src/Typesense/AnalyticsEvents.ts ***! + \******************************************/ +/***/ ((__unused_webpack_module, __webpack_exports__, __webpack_require__) => { - Axios.prototype[method + 'Form'] = generateHTTPMethod(true); -}); +"use strict"; +__webpack_require__.r(__webpack_exports__); +/* harmony export */ __webpack_require__.d(__webpack_exports__, { +/* harmony export */ "default": () => (/* binding */ AnalyticsEvents) +/* harmony export */ }); +/* harmony import */ var _babel_runtime_helpers_asyncToGenerator__WEBPACK_IMPORTED_MODULE_0__ = __webpack_require__(/*! @babel/runtime/helpers/asyncToGenerator */ "./node_modules/.pnpm/@babel+runtime@7.26.9/node_modules/@babel/runtime/helpers/esm/asyncToGenerator.js"); +/* harmony import */ var _babel_runtime_helpers_classCallCheck__WEBPACK_IMPORTED_MODULE_1__ = __webpack_require__(/*! @babel/runtime/helpers/classCallCheck */ "./node_modules/.pnpm/@babel+runtime@7.26.9/node_modules/@babel/runtime/helpers/esm/classCallCheck.js"); +/* harmony import */ var _babel_runtime_helpers_createClass__WEBPACK_IMPORTED_MODULE_2__ = __webpack_require__(/*! @babel/runtime/helpers/createClass */ "./node_modules/.pnpm/@babel+runtime@7.26.9/node_modules/@babel/runtime/helpers/esm/createClass.js"); +/* harmony import */ var _babel_runtime_regenerator__WEBPACK_IMPORTED_MODULE_3__ = __webpack_require__(/*! @babel/runtime/regenerator */ "./node_modules/.pnpm/@babel+runtime@7.26.9/node_modules/@babel/runtime/regenerator/index.js"); +/* harmony import */ var _babel_runtime_regenerator__WEBPACK_IMPORTED_MODULE_3___default = /*#__PURE__*/__webpack_require__.n(_babel_runtime_regenerator__WEBPACK_IMPORTED_MODULE_3__); -/* harmony default export */ const __WEBPACK_DEFAULT_EXPORT__ = (Axios); + + + +var RESOURCEPATH = "/analytics/events"; +var AnalyticsEvents = /*#__PURE__*/function () { + function AnalyticsEvents(apiCall) { + (0,_babel_runtime_helpers_classCallCheck__WEBPACK_IMPORTED_MODULE_1__["default"])(this, AnalyticsEvents); + this.apiCall = apiCall; + this.apiCall = apiCall; + } + return (0,_babel_runtime_helpers_createClass__WEBPACK_IMPORTED_MODULE_2__["default"])(AnalyticsEvents, [{ + key: "create", + value: function () { + var _create = (0,_babel_runtime_helpers_asyncToGenerator__WEBPACK_IMPORTED_MODULE_0__["default"])(/*#__PURE__*/_babel_runtime_regenerator__WEBPACK_IMPORTED_MODULE_3___default().mark(function _callee(params) { + return _babel_runtime_regenerator__WEBPACK_IMPORTED_MODULE_3___default().wrap(function _callee$(_context) { + while (1) switch (_context.prev = _context.next) { + case 0: + return _context.abrupt("return", this.apiCall.post(this.endpointPath(), params)); + case 1: + case "end": + return _context.stop(); + } + }, _callee, this); + })); + function create(_x) { + return _create.apply(this, arguments); + } + return create; + }() + }, { + key: "endpointPath", + value: function endpointPath(operation) { + return "".concat(AnalyticsEvents.RESOURCEPATH).concat(operation === undefined ? "" : "/" + encodeURIComponent(operation)); + } + }], [{ + key: "RESOURCEPATH", + get: function get() { + return RESOURCEPATH; + } + }]); +}(); /***/ }), -/***/ "./node_modules/axios/lib/core/AxiosError.js": -/*!***************************************************!*\ - !*** ./node_modules/axios/lib/core/AxiosError.js ***! - \***************************************************/ -/***/ ((__unused_webpack___webpack_module__, __webpack_exports__, __webpack_require__) => { +/***/ "./src/Typesense/AnalyticsRule.ts": +/*!****************************************!*\ + !*** ./src/Typesense/AnalyticsRule.ts ***! + \****************************************/ +/***/ ((__unused_webpack_module, __webpack_exports__, __webpack_require__) => { "use strict"; __webpack_require__.r(__webpack_exports__); /* harmony export */ __webpack_require__.d(__webpack_exports__, { -/* harmony export */ "default": () => (__WEBPACK_DEFAULT_EXPORT__) +/* harmony export */ "default": () => (/* binding */ AnalyticsRule) /* harmony export */ }); -/* harmony import */ var _utils_js__WEBPACK_IMPORTED_MODULE_0__ = __webpack_require__(/*! ../utils.js */ "./node_modules/axios/lib/utils.js"); - - +/* harmony import */ var _babel_runtime_helpers_asyncToGenerator__WEBPACK_IMPORTED_MODULE_0__ = __webpack_require__(/*! @babel/runtime/helpers/asyncToGenerator */ "./node_modules/.pnpm/@babel+runtime@7.26.9/node_modules/@babel/runtime/helpers/esm/asyncToGenerator.js"); +/* harmony import */ var _babel_runtime_helpers_classCallCheck__WEBPACK_IMPORTED_MODULE_1__ = __webpack_require__(/*! @babel/runtime/helpers/classCallCheck */ "./node_modules/.pnpm/@babel+runtime@7.26.9/node_modules/@babel/runtime/helpers/esm/classCallCheck.js"); +/* harmony import */ var _babel_runtime_helpers_createClass__WEBPACK_IMPORTED_MODULE_2__ = __webpack_require__(/*! @babel/runtime/helpers/createClass */ "./node_modules/.pnpm/@babel+runtime@7.26.9/node_modules/@babel/runtime/helpers/esm/createClass.js"); +/* harmony import */ var _babel_runtime_regenerator__WEBPACK_IMPORTED_MODULE_3__ = __webpack_require__(/*! @babel/runtime/regenerator */ "./node_modules/.pnpm/@babel+runtime@7.26.9/node_modules/@babel/runtime/regenerator/index.js"); +/* harmony import */ var _babel_runtime_regenerator__WEBPACK_IMPORTED_MODULE_3___default = /*#__PURE__*/__webpack_require__.n(_babel_runtime_regenerator__WEBPACK_IMPORTED_MODULE_3__); +/* harmony import */ var _AnalyticsRules__WEBPACK_IMPORTED_MODULE_4__ = __webpack_require__(/*! ./AnalyticsRules */ "./src/Typesense/AnalyticsRules.ts"); -/** - * Create an Error with the specified message, config, error code, request and response. - * - * @param {string} message The error message. - * @param {string} [code] The error code (for example, 'ECONNABORTED'). - * @param {Object} [config] The config. - * @param {Object} [request] The request. - * @param {Object} [response] The response. - * - * @returns {Error} The created error. - */ -function AxiosError(message, code, config, request, response) { - Error.call(this); - if (Error.captureStackTrace) { - Error.captureStackTrace(this, this.constructor); - } else { - this.stack = (new Error()).stack; - } - this.message = message; - this.name = 'AxiosError'; - code && (this.code = code); - config && (this.config = config); - request && (this.request = request); - if (response) { - this.response = response; - this.status = response.status ? response.status : null; - } -} -_utils_js__WEBPACK_IMPORTED_MODULE_0__["default"].inherits(AxiosError, Error, { - toJSON: function toJSON() { - return { - // Standard - message: this.message, - name: this.name, - // Microsoft - description: this.description, - number: this.number, - // Mozilla - fileName: this.fileName, - lineNumber: this.lineNumber, - columnNumber: this.columnNumber, - stack: this.stack, - // Axios - config: _utils_js__WEBPACK_IMPORTED_MODULE_0__["default"].toJSONObject(this.config), - code: this.code, - status: this.status - }; +var AnalyticsRule = /*#__PURE__*/function () { + function AnalyticsRule(name, apiCall) { + (0,_babel_runtime_helpers_classCallCheck__WEBPACK_IMPORTED_MODULE_1__["default"])(this, AnalyticsRule); + this.name = name; + this.apiCall = apiCall; } -}); - -const prototype = AxiosError.prototype; -const descriptors = {}; - -[ - 'ERR_BAD_OPTION_VALUE', - 'ERR_BAD_OPTION', - 'ECONNABORTED', - 'ETIMEDOUT', - 'ERR_NETWORK', - 'ERR_FR_TOO_MANY_REDIRECTS', - 'ERR_DEPRECATED', - 'ERR_BAD_RESPONSE', - 'ERR_BAD_REQUEST', - 'ERR_CANCELED', - 'ERR_NOT_SUPPORT', - 'ERR_INVALID_URL' -// eslint-disable-next-line func-names -].forEach(code => { - descriptors[code] = {value: code}; -}); - -Object.defineProperties(AxiosError, descriptors); -Object.defineProperty(prototype, 'isAxiosError', {value: true}); + return (0,_babel_runtime_helpers_createClass__WEBPACK_IMPORTED_MODULE_2__["default"])(AnalyticsRule, [{ + key: "retrieve", + value: function () { + var _retrieve = (0,_babel_runtime_helpers_asyncToGenerator__WEBPACK_IMPORTED_MODULE_0__["default"])(/*#__PURE__*/_babel_runtime_regenerator__WEBPACK_IMPORTED_MODULE_3___default().mark(function _callee() { + return _babel_runtime_regenerator__WEBPACK_IMPORTED_MODULE_3___default().wrap(function _callee$(_context) { + while (1) switch (_context.prev = _context.next) { + case 0: + return _context.abrupt("return", this.apiCall.get(this.endpointPath())); + case 1: + case "end": + return _context.stop(); + } + }, _callee, this); + })); + function retrieve() { + return _retrieve.apply(this, arguments); + } + return retrieve; + }() + }, { + key: "delete", + value: function () { + var _delete2 = (0,_babel_runtime_helpers_asyncToGenerator__WEBPACK_IMPORTED_MODULE_0__["default"])(/*#__PURE__*/_babel_runtime_regenerator__WEBPACK_IMPORTED_MODULE_3___default().mark(function _callee2() { + return _babel_runtime_regenerator__WEBPACK_IMPORTED_MODULE_3___default().wrap(function _callee2$(_context2) { + while (1) switch (_context2.prev = _context2.next) { + case 0: + return _context2.abrupt("return", this.apiCall.delete(this.endpointPath())); + case 1: + case "end": + return _context2.stop(); + } + }, _callee2, this); + })); + function _delete() { + return _delete2.apply(this, arguments); + } + return _delete; + }() + }, { + key: "endpointPath", + value: function endpointPath() { + return "".concat(_AnalyticsRules__WEBPACK_IMPORTED_MODULE_4__["default"].RESOURCEPATH, "/").concat(encodeURIComponent(this.name)); + } + }]); +}(); -// eslint-disable-next-line func-names -AxiosError.from = (error, code, config, request, response, customProps) => { - const axiosError = Object.create(prototype); - _utils_js__WEBPACK_IMPORTED_MODULE_0__["default"].toFlatObject(error, axiosError, function filter(obj) { - return obj !== Error.prototype; - }, prop => { - return prop !== 'isAxiosError'; - }); +/***/ }), - AxiosError.call(axiosError, error.message, code, config, request, response); +/***/ "./src/Typesense/AnalyticsRules.ts": +/*!*****************************************!*\ + !*** ./src/Typesense/AnalyticsRules.ts ***! + \*****************************************/ +/***/ ((__unused_webpack_module, __webpack_exports__, __webpack_require__) => { - axiosError.cause = error; +"use strict"; +__webpack_require__.r(__webpack_exports__); +/* harmony export */ __webpack_require__.d(__webpack_exports__, { +/* harmony export */ "default": () => (/* binding */ AnalyticsRules) +/* harmony export */ }); +/* harmony import */ var _babel_runtime_helpers_asyncToGenerator__WEBPACK_IMPORTED_MODULE_0__ = __webpack_require__(/*! @babel/runtime/helpers/asyncToGenerator */ "./node_modules/.pnpm/@babel+runtime@7.26.9/node_modules/@babel/runtime/helpers/esm/asyncToGenerator.js"); +/* harmony import */ var _babel_runtime_helpers_classCallCheck__WEBPACK_IMPORTED_MODULE_1__ = __webpack_require__(/*! @babel/runtime/helpers/classCallCheck */ "./node_modules/.pnpm/@babel+runtime@7.26.9/node_modules/@babel/runtime/helpers/esm/classCallCheck.js"); +/* harmony import */ var _babel_runtime_helpers_createClass__WEBPACK_IMPORTED_MODULE_2__ = __webpack_require__(/*! @babel/runtime/helpers/createClass */ "./node_modules/.pnpm/@babel+runtime@7.26.9/node_modules/@babel/runtime/helpers/esm/createClass.js"); +/* harmony import */ var _babel_runtime_regenerator__WEBPACK_IMPORTED_MODULE_3__ = __webpack_require__(/*! @babel/runtime/regenerator */ "./node_modules/.pnpm/@babel+runtime@7.26.9/node_modules/@babel/runtime/regenerator/index.js"); +/* harmony import */ var _babel_runtime_regenerator__WEBPACK_IMPORTED_MODULE_3___default = /*#__PURE__*/__webpack_require__.n(_babel_runtime_regenerator__WEBPACK_IMPORTED_MODULE_3__); - axiosError.name = error.name; - customProps && Object.assign(axiosError, customProps); - return axiosError; -}; -/* harmony default export */ const __WEBPACK_DEFAULT_EXPORT__ = (AxiosError); +var RESOURCEPATH = "/analytics/rules"; +var AnalyticsRules = /*#__PURE__*/function () { + function AnalyticsRules(apiCall) { + (0,_babel_runtime_helpers_classCallCheck__WEBPACK_IMPORTED_MODULE_1__["default"])(this, AnalyticsRules); + this.apiCall = apiCall; + this.apiCall = apiCall; + } + return (0,_babel_runtime_helpers_createClass__WEBPACK_IMPORTED_MODULE_2__["default"])(AnalyticsRules, [{ + key: "upsert", + value: function () { + var _upsert = (0,_babel_runtime_helpers_asyncToGenerator__WEBPACK_IMPORTED_MODULE_0__["default"])(/*#__PURE__*/_babel_runtime_regenerator__WEBPACK_IMPORTED_MODULE_3___default().mark(function _callee(name, params) { + return _babel_runtime_regenerator__WEBPACK_IMPORTED_MODULE_3___default().wrap(function _callee$(_context) { + while (1) switch (_context.prev = _context.next) { + case 0: + return _context.abrupt("return", this.apiCall.put(this.endpointPath(name), params)); + case 1: + case "end": + return _context.stop(); + } + }, _callee, this); + })); + function upsert(_x, _x2) { + return _upsert.apply(this, arguments); + } + return upsert; + }() + }, { + key: "retrieve", + value: function () { + var _retrieve = (0,_babel_runtime_helpers_asyncToGenerator__WEBPACK_IMPORTED_MODULE_0__["default"])(/*#__PURE__*/_babel_runtime_regenerator__WEBPACK_IMPORTED_MODULE_3___default().mark(function _callee2() { + return _babel_runtime_regenerator__WEBPACK_IMPORTED_MODULE_3___default().wrap(function _callee2$(_context2) { + while (1) switch (_context2.prev = _context2.next) { + case 0: + return _context2.abrupt("return", this.apiCall.get(this.endpointPath())); + case 1: + case "end": + return _context2.stop(); + } + }, _callee2, this); + })); + function retrieve() { + return _retrieve.apply(this, arguments); + } + return retrieve; + }() + }, { + key: "endpointPath", + value: function endpointPath(operation) { + return "".concat(AnalyticsRules.RESOURCEPATH).concat(operation === undefined ? "" : "/" + encodeURIComponent(operation)); + } + }], [{ + key: "RESOURCEPATH", + get: function get() { + return RESOURCEPATH; + } + }]); +}(); /***/ }), -/***/ "./node_modules/axios/lib/core/AxiosHeaders.js": -/*!*****************************************************!*\ - !*** ./node_modules/axios/lib/core/AxiosHeaders.js ***! - \*****************************************************/ -/***/ ((__unused_webpack___webpack_module__, __webpack_exports__, __webpack_require__) => { +/***/ "./src/Typesense/ApiCall.ts": +/*!**********************************!*\ + !*** ./src/Typesense/ApiCall.ts ***! + \**********************************/ +/***/ ((__unused_webpack_module, __webpack_exports__, __webpack_require__) => { "use strict"; __webpack_require__.r(__webpack_exports__); /* harmony export */ __webpack_require__.d(__webpack_exports__, { -/* harmony export */ "default": () => (__WEBPACK_DEFAULT_EXPORT__) +/* harmony export */ "default": () => (/* binding */ ApiCall) /* harmony export */ }); -/* harmony import */ var _utils_js__WEBPACK_IMPORTED_MODULE_0__ = __webpack_require__(/*! ../utils.js */ "./node_modules/axios/lib/utils.js"); -/* harmony import */ var _helpers_parseHeaders_js__WEBPACK_IMPORTED_MODULE_1__ = __webpack_require__(/*! ../helpers/parseHeaders.js */ "./node_modules/axios/lib/helpers/parseHeaders.js"); - - - - - -const $internals = Symbol('internals'); - -function normalizeHeader(header) { - return header && String(header).trim().toLowerCase(); -} - -function normalizeValue(value) { - if (value === false || value == null) { - return value; - } - - return _utils_js__WEBPACK_IMPORTED_MODULE_0__["default"].isArray(value) ? value.map(normalizeValue) : String(value); -} - -function parseTokens(str) { - const tokens = Object.create(null); - const tokensRE = /([^\s,;=]+)\s*(?:=\s*([^,;]+))?/g; - let match; - - while ((match = tokensRE.exec(str))) { - tokens[match[1]] = match[2]; - } +/* harmony import */ var _babel_runtime_helpers_readOnlyError__WEBPACK_IMPORTED_MODULE_0__ = __webpack_require__(/*! @babel/runtime/helpers/readOnlyError */ "./node_modules/.pnpm/@babel+runtime@7.26.9/node_modules/@babel/runtime/helpers/esm/readOnlyError.js"); +/* harmony import */ var _babel_runtime_helpers_typeof__WEBPACK_IMPORTED_MODULE_1__ = __webpack_require__(/*! @babel/runtime/helpers/typeof */ "./node_modules/.pnpm/@babel+runtime@7.26.9/node_modules/@babel/runtime/helpers/esm/typeof.js"); +/* harmony import */ var _babel_runtime_helpers_asyncToGenerator__WEBPACK_IMPORTED_MODULE_2__ = __webpack_require__(/*! @babel/runtime/helpers/asyncToGenerator */ "./node_modules/.pnpm/@babel+runtime@7.26.9/node_modules/@babel/runtime/helpers/esm/asyncToGenerator.js"); +/* harmony import */ var _babel_runtime_helpers_classCallCheck__WEBPACK_IMPORTED_MODULE_3__ = __webpack_require__(/*! @babel/runtime/helpers/classCallCheck */ "./node_modules/.pnpm/@babel+runtime@7.26.9/node_modules/@babel/runtime/helpers/esm/classCallCheck.js"); +/* harmony import */ var _babel_runtime_helpers_createClass__WEBPACK_IMPORTED_MODULE_4__ = __webpack_require__(/*! @babel/runtime/helpers/createClass */ "./node_modules/.pnpm/@babel+runtime@7.26.9/node_modules/@babel/runtime/helpers/esm/createClass.js"); +/* harmony import */ var _babel_runtime_regenerator__WEBPACK_IMPORTED_MODULE_5__ = __webpack_require__(/*! @babel/runtime/regenerator */ "./node_modules/.pnpm/@babel+runtime@7.26.9/node_modules/@babel/runtime/regenerator/index.js"); +/* harmony import */ var _babel_runtime_regenerator__WEBPACK_IMPORTED_MODULE_5___default = /*#__PURE__*/__webpack_require__.n(_babel_runtime_regenerator__WEBPACK_IMPORTED_MODULE_5__); +/* harmony import */ var axios__WEBPACK_IMPORTED_MODULE_10__ = __webpack_require__(/*! axios */ "./node_modules/.pnpm/axios@1.7.9/node_modules/axios/lib/axios.js"); +/* harmony import */ var http__WEBPACK_IMPORTED_MODULE_6__ = __webpack_require__(/*! http */ "?e89d"); +/* harmony import */ var http__WEBPACK_IMPORTED_MODULE_6___default = /*#__PURE__*/__webpack_require__.n(http__WEBPACK_IMPORTED_MODULE_6__); +/* harmony import */ var https__WEBPACK_IMPORTED_MODULE_7__ = __webpack_require__(/*! https */ "?77e4"); +/* harmony import */ var https__WEBPACK_IMPORTED_MODULE_7___default = /*#__PURE__*/__webpack_require__.n(https__WEBPACK_IMPORTED_MODULE_7__); +/* harmony import */ var _Errors__WEBPACK_IMPORTED_MODULE_8__ = __webpack_require__(/*! ./Errors */ "./src/Typesense/Errors/index.ts"); +/* harmony import */ var _Errors_TypesenseError__WEBPACK_IMPORTED_MODULE_9__ = __webpack_require__(/*! ./Errors/TypesenseError */ "./src/Typesense/Errors/TypesenseError.ts"); - return tokens; -} -const isValidHeaderName = (str) => /^[-_a-zA-Z0-9^`|~,!#$%&'*+.]+$/.test(str.trim()); -function matchHeaderValue(context, value, header, filter, isHeaderNameFilter) { - if (_utils_js__WEBPACK_IMPORTED_MODULE_0__["default"].isFunction(filter)) { - return filter.call(this, value, header); - } - if (isHeaderNameFilter) { - value = header; - } - if (!_utils_js__WEBPACK_IMPORTED_MODULE_0__["default"].isString(value)) return; - if (_utils_js__WEBPACK_IMPORTED_MODULE_0__["default"].isString(filter)) { - return value.indexOf(filter) !== -1; - } - if (_utils_js__WEBPACK_IMPORTED_MODULE_0__["default"].isRegExp(filter)) { - return filter.test(value); - } -} -function formatHeader(header) { - return header.trim() - .toLowerCase().replace(/([a-z\d])(\w*)/g, (w, char, str) => { - return char.toUpperCase() + str; - }); -} -function buildAccessors(obj, header) { - const accessorName = _utils_js__WEBPACK_IMPORTED_MODULE_0__["default"].toCamelCase(' ' + header); - ['get', 'set', 'has'].forEach(methodName => { - Object.defineProperty(obj, methodName + accessorName, { - value: function(arg1, arg2, arg3) { - return this[methodName].call(this, header, arg1, arg2, arg3); - }, - configurable: true - }); - }); -} -class AxiosHeaders { - constructor(headers) { - headers && this.set(headers); +var APIKEYHEADERNAME = "X-TYPESENSE-API-KEY"; +var HEALTHY = true; +var UNHEALTHY = false; +var isNodeJSEnvironment = typeof process !== "undefined" && process.versions != null && process.versions.node != null; +var ApiCall = /*#__PURE__*/function () { + function ApiCall(configuration) { + (0,_babel_runtime_helpers_classCallCheck__WEBPACK_IMPORTED_MODULE_3__["default"])(this, ApiCall); + this.configuration = configuration; + this.apiKey = this.configuration.apiKey; + this.nodes = this.configuration.nodes == null ? this.configuration.nodes : JSON.parse(JSON.stringify(this.configuration.nodes)); // Make a copy, since we'll be adding additional metadata to the nodes + this.nearestNode = this.configuration.nearestNode == null ? this.configuration.nearestNode : JSON.parse(JSON.stringify(this.configuration.nearestNode)); + this.connectionTimeoutSeconds = this.configuration.connectionTimeoutSeconds; + this.healthcheckIntervalSeconds = this.configuration.healthcheckIntervalSeconds; + this.numRetriesPerRequest = this.configuration.numRetries; + this.retryIntervalSeconds = this.configuration.retryIntervalSeconds; + this.sendApiKeyAsQueryParam = this.configuration.sendApiKeyAsQueryParam; + this.additionalUserHeaders = this.configuration.additionalHeaders; + this.logger = this.configuration.logger; + this.initializeMetadataForNodes(); + this.currentNodeIndex = -1; } - - set(header, valueOrRewrite, rewrite) { - const self = this; - - function setHeader(_value, _header, _rewrite) { - const lHeader = normalizeHeader(_header); - - if (!lHeader) { - throw new Error('header name must be a non-empty string'); + return (0,_babel_runtime_helpers_createClass__WEBPACK_IMPORTED_MODULE_4__["default"])(ApiCall, [{ + key: "get", + value: function () { + var _get = (0,_babel_runtime_helpers_asyncToGenerator__WEBPACK_IMPORTED_MODULE_2__["default"])(/*#__PURE__*/_babel_runtime_regenerator__WEBPACK_IMPORTED_MODULE_5___default().mark(function _callee(endpoint) { + var queryParameters, + _ref, + _ref$abortSignal, + abortSignal, + _ref$responseType, + responseType, + _args = arguments; + return _babel_runtime_regenerator__WEBPACK_IMPORTED_MODULE_5___default().wrap(function _callee$(_context) { + while (1) switch (_context.prev = _context.next) { + case 0: + queryParameters = _args.length > 1 && _args[1] !== undefined ? _args[1] : {}; + _ref = _args.length > 2 && _args[2] !== undefined ? _args[2] : {}, _ref$abortSignal = _ref.abortSignal, abortSignal = _ref$abortSignal === void 0 ? null : _ref$abortSignal, _ref$responseType = _ref.responseType, responseType = _ref$responseType === void 0 ? undefined : _ref$responseType; + return _context.abrupt("return", this.performRequest("get", endpoint, { + queryParameters: queryParameters, + abortSignal: abortSignal, + responseType: responseType + })); + case 3: + case "end": + return _context.stop(); + } + }, _callee, this); + })); + function get(_x) { + return _get.apply(this, arguments); } - - const key = _utils_js__WEBPACK_IMPORTED_MODULE_0__["default"].findKey(self, lHeader); - - if(!key || self[key] === undefined || _rewrite === true || (_rewrite === undefined && self[key] !== false)) { - self[key || _header] = normalizeValue(_value); + return get; + }() + }, { + key: "delete", + value: function () { + var _delete2 = (0,_babel_runtime_helpers_asyncToGenerator__WEBPACK_IMPORTED_MODULE_2__["default"])(/*#__PURE__*/_babel_runtime_regenerator__WEBPACK_IMPORTED_MODULE_5___default().mark(function _callee2(endpoint) { + var queryParameters, + _args2 = arguments; + return _babel_runtime_regenerator__WEBPACK_IMPORTED_MODULE_5___default().wrap(function _callee2$(_context2) { + while (1) switch (_context2.prev = _context2.next) { + case 0: + queryParameters = _args2.length > 1 && _args2[1] !== undefined ? _args2[1] : {}; + return _context2.abrupt("return", this.performRequest("delete", endpoint, { + queryParameters: queryParameters + })); + case 2: + case "end": + return _context2.stop(); + } + }, _callee2, this); + })); + function _delete(_x2) { + return _delete2.apply(this, arguments); + } + return _delete; + }() + }, { + key: "post", + value: function () { + var _post = (0,_babel_runtime_helpers_asyncToGenerator__WEBPACK_IMPORTED_MODULE_2__["default"])(/*#__PURE__*/_babel_runtime_regenerator__WEBPACK_IMPORTED_MODULE_5___default().mark(function _callee3(endpoint) { + var bodyParameters, + queryParameters, + additionalHeaders, + _args3 = arguments; + return _babel_runtime_regenerator__WEBPACK_IMPORTED_MODULE_5___default().wrap(function _callee3$(_context3) { + while (1) switch (_context3.prev = _context3.next) { + case 0: + bodyParameters = _args3.length > 1 && _args3[1] !== undefined ? _args3[1] : {}; + queryParameters = _args3.length > 2 && _args3[2] !== undefined ? _args3[2] : {}; + additionalHeaders = _args3.length > 3 && _args3[3] !== undefined ? _args3[3] : {}; + return _context3.abrupt("return", this.performRequest("post", endpoint, { + queryParameters: queryParameters, + bodyParameters: bodyParameters, + additionalHeaders: additionalHeaders + })); + case 4: + case "end": + return _context3.stop(); + } + }, _callee3, this); + })); + function post(_x3) { + return _post.apply(this, arguments); + } + return post; + }() + }, { + key: "put", + value: function () { + var _put = (0,_babel_runtime_helpers_asyncToGenerator__WEBPACK_IMPORTED_MODULE_2__["default"])(/*#__PURE__*/_babel_runtime_regenerator__WEBPACK_IMPORTED_MODULE_5___default().mark(function _callee4(endpoint) { + var bodyParameters, + queryParameters, + _args4 = arguments; + return _babel_runtime_regenerator__WEBPACK_IMPORTED_MODULE_5___default().wrap(function _callee4$(_context4) { + while (1) switch (_context4.prev = _context4.next) { + case 0: + bodyParameters = _args4.length > 1 && _args4[1] !== undefined ? _args4[1] : {}; + queryParameters = _args4.length > 2 && _args4[2] !== undefined ? _args4[2] : {}; + return _context4.abrupt("return", this.performRequest("put", endpoint, { + queryParameters: queryParameters, + bodyParameters: bodyParameters + })); + case 3: + case "end": + return _context4.stop(); + } + }, _callee4, this); + })); + function put(_x4) { + return _put.apply(this, arguments); + } + return put; + }() + }, { + key: "patch", + value: function () { + var _patch = (0,_babel_runtime_helpers_asyncToGenerator__WEBPACK_IMPORTED_MODULE_2__["default"])(/*#__PURE__*/_babel_runtime_regenerator__WEBPACK_IMPORTED_MODULE_5___default().mark(function _callee5(endpoint) { + var bodyParameters, + queryParameters, + _args5 = arguments; + return _babel_runtime_regenerator__WEBPACK_IMPORTED_MODULE_5___default().wrap(function _callee5$(_context5) { + while (1) switch (_context5.prev = _context5.next) { + case 0: + bodyParameters = _args5.length > 1 && _args5[1] !== undefined ? _args5[1] : {}; + queryParameters = _args5.length > 2 && _args5[2] !== undefined ? _args5[2] : {}; + return _context5.abrupt("return", this.performRequest("patch", endpoint, { + queryParameters: queryParameters, + bodyParameters: bodyParameters + })); + case 3: + case "end": + return _context5.stop(); + } + }, _callee5, this); + })); + function patch(_x5) { + return _patch.apply(this, arguments); } + return patch; + }() + }, { + key: "getAdapter", + value: function getAdapter() { + if (!this.configuration.axiosAdapter) return undefined; + if (typeof this.configuration.axiosAdapter === "function") return this.configuration.axiosAdapter; + var isCloudflareWorkers = typeof navigator !== "undefined" && navigator.userAgent === "Cloudflare-Workers"; + return isCloudflareWorkers ? axios__WEBPACK_IMPORTED_MODULE_10__["default"].getAdapter(this.configuration.axiosAdapter).bind(globalThis) : axios__WEBPACK_IMPORTED_MODULE_10__["default"].getAdapter(this.configuration.axiosAdapter); } + }, { + key: "performRequest", + value: function () { + var _performRequest = (0,_babel_runtime_helpers_asyncToGenerator__WEBPACK_IMPORTED_MODULE_2__["default"])(/*#__PURE__*/_babel_runtime_regenerator__WEBPACK_IMPORTED_MODULE_5___default().mark(function _callee6(requestType, endpoint, _ref2) { + var _this = this; + var _ref2$queryParameters, queryParameters, _ref2$bodyParameters, bodyParameters, _ref2$additionalHeade, additionalHeaders, _ref2$abortSignal, abortSignal, _ref2$responseType, responseType, _ref2$skipConnectionT, skipConnectionTimeout, _ref2$enableKeepAlive, enableKeepAlive, requestNumber, lastException, wasAborted, _loop, _ret, numTries; + return _babel_runtime_regenerator__WEBPACK_IMPORTED_MODULE_5___default().wrap(function _callee6$(_context7) { + while (1) switch (_context7.prev = _context7.next) { + case 0: + _ref2$queryParameters = _ref2.queryParameters, queryParameters = _ref2$queryParameters === void 0 ? null : _ref2$queryParameters, _ref2$bodyParameters = _ref2.bodyParameters, bodyParameters = _ref2$bodyParameters === void 0 ? null : _ref2$bodyParameters, _ref2$additionalHeade = _ref2.additionalHeaders, additionalHeaders = _ref2$additionalHeade === void 0 ? {} : _ref2$additionalHeade, _ref2$abortSignal = _ref2.abortSignal, abortSignal = _ref2$abortSignal === void 0 ? null : _ref2$abortSignal, _ref2$responseType = _ref2.responseType, responseType = _ref2$responseType === void 0 ? undefined : _ref2$responseType, _ref2$skipConnectionT = _ref2.skipConnectionTimeout, skipConnectionTimeout = _ref2$skipConnectionT === void 0 ? false : _ref2$skipConnectionT, _ref2$enableKeepAlive = _ref2.enableKeepAlive, enableKeepAlive = _ref2$enableKeepAlive === void 0 ? undefined : _ref2$enableKeepAlive; + this.configuration.validate(); + requestNumber = Date.now(); + wasAborted = false; + this.logger.debug("Request #".concat(requestNumber, ": Performing ").concat(requestType.toUpperCase(), " request: ").concat(endpoint)); + _loop = /*#__PURE__*/_babel_runtime_regenerator__WEBPACK_IMPORTED_MODULE_5___default().mark(function _loop() { + var node, abortListener, requestOptions, cancelToken, source, response, _response$data, _response$data2, _error$code, _error$response; + return _babel_runtime_regenerator__WEBPACK_IMPORTED_MODULE_5___default().wrap(function _loop$(_context6) { + while (1) switch (_context6.prev = _context6.next) { + case 0: + node = _this.getNextNode(requestNumber); + _this.logger.debug("Request #".concat(requestNumber, ": Attempting ").concat(requestType.toUpperCase(), " request Try #").concat(numTries, " to Node ").concat(node.index)); + if (!(abortSignal && abortSignal.aborted)) { + _context6.next = 4; + break; + } + return _context6.abrupt("return", { + v: Promise.reject(new Error("Request aborted by caller.")) + }); + case 4: + _context6.prev = 4; + requestOptions = { + adapter: _this.getAdapter(), + method: requestType, + url: _this.uriFor(endpoint, node), + headers: Object.assign({}, _this.defaultHeaders(), additionalHeaders, _this.additionalUserHeaders), + maxContentLength: Infinity, + maxBodyLength: Infinity, + responseType: responseType, + validateStatus: function validateStatus(status) { + /* Override default validateStatus, which only considers 2xx a success. + In our case, if the server returns any HTTP code, we will handle it below. + We do this to be able to raise custom errors based on response code. + */ + return status > 0; + }, + transformResponse: [function (data, headers) { + var transformedData = data; + if (headers !== undefined && typeof data === "string" && headers["content-type"] && headers["content-type"].startsWith("application/json")) { + transformedData = JSON.parse(data); + } + return transformedData; + }] + }; + if (skipConnectionTimeout !== true) { + requestOptions.timeout = _this.connectionTimeoutSeconds * 1000; + } + if (queryParameters && Object.keys(queryParameters).length !== 0) { + requestOptions.params = queryParameters; + } + if (_this.sendApiKeyAsQueryParam) { + requestOptions.params = requestOptions.params || {}; + requestOptions.params["x-typesense-api-key"] = _this.apiKey; + } + if (_this.configuration.httpAgent) { + _this.logger.debug("Request #".concat(requestNumber, ": Using custom httpAgent")); + requestOptions.httpAgent = _this.configuration.httpAgent; + } else if (enableKeepAlive === true) { + if (!isNodeJSEnvironment) { + _this.logger.warn("Request #".concat(requestNumber, ": Cannot use custom httpAgent in a browser environment to enable keepAlive")); + } else { + _this.logger.debug("Request #".concat(requestNumber, ": Enabling KeepAlive")); + requestOptions.httpAgent = new http__WEBPACK_IMPORTED_MODULE_6__.Agent({ + keepAlive: true + }); + } + } + if (_this.configuration.httpsAgent) { + _this.logger.debug("Request #".concat(requestNumber, ": Using custom httpsAgent")); + requestOptions.httpsAgent = _this.configuration.httpsAgent; + } else if (enableKeepAlive === true) { + if (!isNodeJSEnvironment) { + _this.logger.warn("Request #".concat(requestNumber, ": Cannot use custom httpAgent in a browser environment to enable keepAlive")); + } else { + _this.logger.debug("Request #".concat(requestNumber, ": Enabling keepAlive")); + requestOptions.httpsAgent = new https__WEBPACK_IMPORTED_MODULE_7__.Agent({ + keepAlive: true + }); + } + } + if (_this.configuration.paramsSerializer) { + _this.logger.debug("Request #".concat(requestNumber, ": Using custom paramsSerializer")); + requestOptions.paramsSerializer = _this.configuration.paramsSerializer; + } + if (bodyParameters && (typeof bodyParameters === "string" && bodyParameters.length !== 0 || (0,_babel_runtime_helpers_typeof__WEBPACK_IMPORTED_MODULE_1__["default"])(bodyParameters) === "object" && Object.keys(bodyParameters).length !== 0)) { + requestOptions.data = bodyParameters; + } - const setHeaders = (headers, _rewrite) => - _utils_js__WEBPACK_IMPORTED_MODULE_0__["default"].forEach(headers, (_value, _header) => setHeader(_value, _header, _rewrite)); - - if (_utils_js__WEBPACK_IMPORTED_MODULE_0__["default"].isPlainObject(header) || header instanceof this.constructor) { - setHeaders(header, valueOrRewrite) - } else if(_utils_js__WEBPACK_IMPORTED_MODULE_0__["default"].isString(header) && (header = header.trim()) && !isValidHeaderName(header)) { - setHeaders((0,_helpers_parseHeaders_js__WEBPACK_IMPORTED_MODULE_1__["default"])(header), valueOrRewrite); - } else if (_utils_js__WEBPACK_IMPORTED_MODULE_0__["default"].isHeaders(header)) { - for (const [key, value] of header.entries()) { - setHeader(value, key, rewrite); + // Translate from user-provided AbortController to the Axios request cancel mechanism. + if (abortSignal) { + cancelToken = axios__WEBPACK_IMPORTED_MODULE_10__["default"].CancelToken; + source = cancelToken.source(); + abortListener = function abortListener() { + wasAborted = true; + source.cancel(); + }; + abortSignal.addEventListener("abort", abortListener); + requestOptions.cancelToken = source.token; + } + _context6.next = 16; + return (0,axios__WEBPACK_IMPORTED_MODULE_10__["default"])(requestOptions); + case 16: + response = _context6.sent; + if (response.status >= 1 && response.status <= 499) { + // Treat any status code > 0 and < 500 to be an indication that node is healthy + // We exclude 0 since some clients return 0 when request fails + _this.setNodeHealthcheck(node, HEALTHY); + } + _this.logger.debug("Request #".concat(requestNumber, ": Request to Node ").concat(node.index, " was made. Response Code was ").concat(response.status, ".")); + if (!(response.status >= 200 && response.status < 300)) { + _context6.next = 23; + break; + } + return _context6.abrupt("return", { + v: Promise.resolve(response.data) + }); + case 23: + if (!(response.status < 500)) { + _context6.next = 27; + break; + } + return _context6.abrupt("return", { + v: Promise.reject(_this.customErrorForResponse(response, (_response$data = response.data) === null || _response$data === void 0 ? void 0 : _response$data.message, requestOptions.data)) + }); + case 27: + throw _this.customErrorForResponse(response, (_response$data2 = response.data) === null || _response$data2 === void 0 ? void 0 : _response$data2.message, requestOptions.data); + case 28: + _context6.next = 40; + break; + case 30: + _context6.prev = 30; + _context6.t0 = _context6["catch"](4); + // This block handles retries for HTTPStatus > 500 and network layer issues like connection timeouts + if (!wasAborted) { + _this.setNodeHealthcheck(node, UNHEALTHY); + } + lastException = _context6.t0; + _this.logger.warn("Request #".concat(requestNumber, ": Request to Node ").concat(node.index, " failed due to \"").concat((_error$code = _context6.t0 === null || _context6.t0 === void 0 ? void 0 : _context6.t0.code) !== null && _error$code !== void 0 ? _error$code : "", " ").concat(_context6.t0.message).concat(_context6.t0.response == null ? "" : " - " + JSON.stringify((_error$response = _context6.t0.response) === null || _error$response === void 0 ? void 0 : _error$response.data), "\"")); + // this.logger.debug(error.stack) + if (!wasAborted) { + _context6.next = 37; + break; + } + return _context6.abrupt("return", { + v: Promise.reject(new Error("Request aborted by caller.")) + }); + case 37: + if (numTries < _this.numRetriesPerRequest + 1) { + _this.logger.warn("Request #".concat(requestNumber, ": Sleeping for ").concat(_this.retryIntervalSeconds, "s and then retrying request...")); + } + _context6.next = 40; + return _this.timer(_this.retryIntervalSeconds); + case 40: + _context6.prev = 40; + if (abortSignal && abortListener) { + abortSignal.removeEventListener("abort", abortListener); + } + return _context6.finish(40); + case 43: + case "end": + return _context6.stop(); + } + }, _loop, null, [[4, 30, 40, 43]]); + }); + numTries = 1; + case 7: + if (!(numTries <= this.numRetriesPerRequest + 1)) { + _context7.next = 15; + break; + } + return _context7.delegateYield(_loop(), "t0", 9); + case 9: + _ret = _context7.t0; + if (!_ret) { + _context7.next = 12; + break; + } + return _context7.abrupt("return", _ret.v); + case 12: + numTries++; + _context7.next = 7; + break; + case 15: + this.logger.debug("Request #".concat(requestNumber, ": No retries left. Raising last error")); + return _context7.abrupt("return", Promise.reject(lastException)); + case 17: + case "end": + return _context7.stop(); + } + }, _callee6, this); + })); + function performRequest(_x6, _x7, _x8) { + return _performRequest.apply(this, arguments); } - } else { - header != null && setHeader(valueOrRewrite, header, rewrite); - } - - return this; - } - - get(header, parser) { - header = normalizeHeader(header); - - if (header) { - const key = _utils_js__WEBPACK_IMPORTED_MODULE_0__["default"].findKey(this, header); - - if (key) { - const value = this[key]; - - if (!parser) { - return value; - } - - if (parser === true) { - return parseTokens(value); - } - - if (_utils_js__WEBPACK_IMPORTED_MODULE_0__["default"].isFunction(parser)) { - return parser.call(this, value, key); - } - - if (_utils_js__WEBPACK_IMPORTED_MODULE_0__["default"].isRegExp(parser)) { - return parser.exec(value); + return performRequest; + }() // Attempts to find the next healthy node, looping through the list of nodes once. + // But if no healthy nodes are found, it will just return the next node, even if it's unhealthy + // so we can try the request for good measure, in case that node has become healthy since + }, { + key: "getNextNode", + value: function getNextNode() { + var requestNumber = arguments.length > 0 && arguments[0] !== undefined ? arguments[0] : 0; + // Check if nearestNode is set and is healthy, if so return it + if (this.nearestNode != null) { + this.logger.debug("Request #".concat(requestNumber, ": Nodes Health: Node ").concat(this.nearestNode.index, " is ").concat(this.nearestNode.isHealthy === true ? "Healthy" : "Unhealthy")); + if (this.nearestNode.isHealthy === true || this.nodeDueForHealthcheck(this.nearestNode, requestNumber)) { + this.logger.debug("Request #".concat(requestNumber, ": Updated current node to Node ").concat(this.nearestNode.index)); + return this.nearestNode; } - - throw new TypeError('parser must be boolean|regexp|function'); + this.logger.debug("Request #".concat(requestNumber, ": Falling back to individual nodes")); } - } - } - - has(header, matcher) { - header = normalizeHeader(header); - - if (header) { - const key = _utils_js__WEBPACK_IMPORTED_MODULE_0__["default"].findKey(this, header); - - return !!(key && this[key] !== undefined && (!matcher || matchHeaderValue(this, this[key], key, matcher))); - } - - return false; - } - - delete(header, matcher) { - const self = this; - let deleted = false; - - function deleteHeader(_header) { - _header = normalizeHeader(_header); - if (_header) { - const key = _utils_js__WEBPACK_IMPORTED_MODULE_0__["default"].findKey(self, _header); - - if (key && (!matcher || matchHeaderValue(self, self[key], key, matcher))) { - delete self[key]; - - deleted = true; + // Fallback to nodes as usual + this.logger.debug("Request #".concat(requestNumber, ": Nodes Health: ").concat(this.nodes.map(function (node) { + return "Node ".concat(node.index, " is ").concat(node.isHealthy === true ? "Healthy" : "Unhealthy"); + }).join(" || "))); + var candidateNode = this.nodes[0]; + for (var i = 0; i <= this.nodes.length; i++) { + this.currentNodeIndex = (this.currentNodeIndex + 1) % this.nodes.length; + candidateNode = this.nodes[this.currentNodeIndex]; + if (candidateNode.isHealthy === true || this.nodeDueForHealthcheck(candidateNode, requestNumber)) { + this.logger.debug("Request #".concat(requestNumber, ": Updated current node to Node ").concat(candidateNode.index)); + return candidateNode; } } - } - if (_utils_js__WEBPACK_IMPORTED_MODULE_0__["default"].isArray(header)) { - header.forEach(deleteHeader); - } else { - deleteHeader(header); + // None of the nodes are marked healthy, but some of them could have become healthy since last health check. + // So we will just return the next node. + this.logger.debug("Request #".concat(requestNumber, ": No healthy nodes were found. Returning the next node, Node ").concat(candidateNode.index)); + return candidateNode; } - - return deleted; - } - - clear(matcher) { - const keys = Object.keys(this); - let i = keys.length; - let deleted = false; - - while (i--) { - const key = keys[i]; - if(!matcher || matchHeaderValue(this, this[key], key, matcher, true)) { - delete this[key]; - deleted = true; + }, { + key: "nodeDueForHealthcheck", + value: function nodeDueForHealthcheck(node) { + var requestNumber = arguments.length > 1 && arguments[1] !== undefined ? arguments[1] : 0; + var isDueForHealthcheck = Date.now() - node.lastAccessTimestamp > this.healthcheckIntervalSeconds * 1000; + if (isDueForHealthcheck) { + this.logger.debug("Request #".concat(requestNumber, ": Node ").concat(node.index, " has exceeded healtcheckIntervalSeconds of ").concat(this.healthcheckIntervalSeconds, ". Adding it back into rotation.")); } + return isDueForHealthcheck; } - - return deleted; - } - - normalize(format) { - const self = this; - const headers = {}; - - _utils_js__WEBPACK_IMPORTED_MODULE_0__["default"].forEach(this, (value, header) => { - const key = _utils_js__WEBPACK_IMPORTED_MODULE_0__["default"].findKey(headers, header); - - if (key) { - self[key] = normalizeValue(value); - delete self[header]; - return; - } - - const normalized = format ? formatHeader(header) : String(header).trim(); - - if (normalized !== header) { - delete self[header]; - } - - self[normalized] = normalizeValue(value); - - headers[normalized] = true; - }); - - return this; - } - - concat(...targets) { - return this.constructor.concat(this, ...targets); - } - - toJSON(asStrings) { - const obj = Object.create(null); - - _utils_js__WEBPACK_IMPORTED_MODULE_0__["default"].forEach(this, (value, header) => { - value != null && value !== false && (obj[header] = asStrings && _utils_js__WEBPACK_IMPORTED_MODULE_0__["default"].isArray(value) ? value.join(', ') : value); - }); - - return obj; - } - - [Symbol.iterator]() { - return Object.entries(this.toJSON())[Symbol.iterator](); - } - - toString() { - return Object.entries(this.toJSON()).map(([header, value]) => header + ': ' + value).join('\n'); - } - - get [Symbol.toStringTag]() { - return 'AxiosHeaders'; - } - - static from(thing) { - return thing instanceof this ? thing : new this(thing); - } - - static concat(first, ...targets) { - const computed = new this(first); - - targets.forEach((target) => computed.set(target)); - - return computed; - } - - static accessor(header) { - const internals = this[$internals] = (this[$internals] = { - accessors: {} - }); - - const accessors = internals.accessors; - const prototype = this.prototype; - - function defineAccessor(_header) { - const lHeader = normalizeHeader(_header); - - if (!accessors[lHeader]) { - buildAccessors(prototype, _header); - accessors[lHeader] = true; + }, { + key: "initializeMetadataForNodes", + value: function initializeMetadataForNodes() { + var _this2 = this; + if (this.nearestNode != null) { + this.nearestNode.index = "nearestNode"; + this.setNodeHealthcheck(this.nearestNode, HEALTHY); } + this.nodes.forEach(function (node, i) { + node.index = i; + _this2.setNodeHealthcheck(node, HEALTHY); + }); } - - _utils_js__WEBPACK_IMPORTED_MODULE_0__["default"].isArray(header) ? header.forEach(defineAccessor) : defineAccessor(header); - - return this; - } -} - -AxiosHeaders.accessor(['Content-Type', 'Content-Length', 'Accept', 'Accept-Encoding', 'User-Agent', 'Authorization']); - -// reserved names hotfix -_utils_js__WEBPACK_IMPORTED_MODULE_0__["default"].reduceDescriptors(AxiosHeaders.prototype, ({value}, key) => { - let mapped = key[0].toUpperCase() + key.slice(1); // map `set` => `Set` - return { - get: () => value, - set(headerValue) { - this[mapped] = headerValue; + }, { + key: "setNodeHealthcheck", + value: function setNodeHealthcheck(node, isHealthy) { + node.isHealthy = isHealthy; + node.lastAccessTimestamp = Date.now(); } - } -}); - -_utils_js__WEBPACK_IMPORTED_MODULE_0__["default"].freezeMethods(AxiosHeaders); - -/* harmony default export */ const __WEBPACK_DEFAULT_EXPORT__ = (AxiosHeaders); - - -/***/ }), - -/***/ "./node_modules/axios/lib/core/InterceptorManager.js": -/*!***********************************************************!*\ - !*** ./node_modules/axios/lib/core/InterceptorManager.js ***! - \***********************************************************/ -/***/ ((__unused_webpack___webpack_module__, __webpack_exports__, __webpack_require__) => { - -"use strict"; -__webpack_require__.r(__webpack_exports__); -/* harmony export */ __webpack_require__.d(__webpack_exports__, { -/* harmony export */ "default": () => (__WEBPACK_DEFAULT_EXPORT__) -/* harmony export */ }); -/* harmony import */ var _utils_js__WEBPACK_IMPORTED_MODULE_0__ = __webpack_require__(/*! ./../utils.js */ "./node_modules/axios/lib/utils.js"); - - - - -class InterceptorManager { - constructor() { - this.handlers = []; - } - - /** - * Add a new interceptor to the stack - * - * @param {Function} fulfilled The function to handle `then` for a `Promise` - * @param {Function} rejected The function to handle `reject` for a `Promise` - * - * @return {Number} An ID used to remove interceptor later - */ - use(fulfilled, rejected, options) { - this.handlers.push({ - fulfilled, - rejected, - synchronous: options ? options.synchronous : false, - runWhen: options ? options.runWhen : null - }); - return this.handlers.length - 1; - } - - /** - * Remove an interceptor from the stack - * - * @param {Number} id The ID that was returned by `use` - * - * @returns {Boolean} `true` if the interceptor was removed, `false` otherwise - */ - eject(id) { - if (this.handlers[id]) { - this.handlers[id] = null; + }, { + key: "uriFor", + value: function uriFor(endpoint, node) { + if (node.url != null) { + return "".concat(node.url).concat(endpoint); + } + return "".concat(node.protocol, "://").concat(node.host, ":").concat(node.port).concat(node.path).concat(endpoint); } - } - - /** - * Clear all interceptors from the stack - * - * @returns {void} - */ - clear() { - if (this.handlers) { - this.handlers = []; + }, { + key: "defaultHeaders", + value: function defaultHeaders() { + var defaultHeaders = {}; + if (!this.sendApiKeyAsQueryParam) { + defaultHeaders[APIKEYHEADERNAME] = this.apiKey; + } + defaultHeaders["Content-Type"] = "application/json"; + return defaultHeaders; } - } - - /** - * Iterate over all the registered interceptors - * - * This method is particularly useful for skipping over any - * interceptors that may have become `null` calling `eject`. - * - * @param {Function} fn The function to call for each interceptor - * - * @returns {void} - */ - forEach(fn) { - _utils_js__WEBPACK_IMPORTED_MODULE_0__["default"].forEach(this.handlers, function forEachHandler(h) { - if (h !== null) { - fn(h); + }, { + key: "timer", + value: function () { + var _timer = (0,_babel_runtime_helpers_asyncToGenerator__WEBPACK_IMPORTED_MODULE_2__["default"])(/*#__PURE__*/_babel_runtime_regenerator__WEBPACK_IMPORTED_MODULE_5___default().mark(function _callee7(seconds) { + return _babel_runtime_regenerator__WEBPACK_IMPORTED_MODULE_5___default().wrap(function _callee7$(_context8) { + while (1) switch (_context8.prev = _context8.next) { + case 0: + return _context8.abrupt("return", new Promise(function (resolve) { + return setTimeout(resolve, seconds * 1000); + })); + case 1: + case "end": + return _context8.stop(); + } + }, _callee7); + })); + function timer(_x9) { + return _timer.apply(this, arguments); } - }); - } -} - -/* harmony default export */ const __WEBPACK_DEFAULT_EXPORT__ = (InterceptorManager); + return timer; + }() + }, { + key: "customErrorForResponse", + value: function customErrorForResponse(response, messageFromServer, httpBody) { + var errorMessage = "Request failed with HTTP code ".concat(response.status); + if (typeof messageFromServer === "string" && messageFromServer.trim() !== "") { + errorMessage += " | Server said: ".concat(messageFromServer); + } + var error = new _Errors_TypesenseError__WEBPACK_IMPORTED_MODULE_9__["default"](errorMessage, httpBody, response.status); + if (response.status === 400) { + error = new _Errors__WEBPACK_IMPORTED_MODULE_8__.RequestMalformed(errorMessage); + } else if (response.status === 401) { + error = new _Errors__WEBPACK_IMPORTED_MODULE_8__.RequestUnauthorized(errorMessage); + } else if (response.status === 404) { + error = new _Errors__WEBPACK_IMPORTED_MODULE_8__.ObjectNotFound(errorMessage); + } else if (response.status === 409) { + error = new _Errors__WEBPACK_IMPORTED_MODULE_8__.ObjectAlreadyExists(errorMessage); + } else if (response.status === 422) { + error = new _Errors__WEBPACK_IMPORTED_MODULE_8__.ObjectUnprocessable(errorMessage); + } else if (response.status >= 500 && response.status <= 599) { + error = new _Errors__WEBPACK_IMPORTED_MODULE_8__.ServerError(errorMessage); + } else { + error = new _Errors__WEBPACK_IMPORTED_MODULE_8__.HTTPError(errorMessage); + } + return error; + } + }]); +}(); /***/ }), -/***/ "./node_modules/axios/lib/core/buildFullPath.js": -/*!******************************************************!*\ - !*** ./node_modules/axios/lib/core/buildFullPath.js ***! - \******************************************************/ -/***/ ((__unused_webpack___webpack_module__, __webpack_exports__, __webpack_require__) => { +/***/ "./src/Typesense/Client.ts": +/*!*********************************!*\ + !*** ./src/Typesense/Client.ts ***! + \*********************************/ +/***/ ((__unused_webpack_module, __webpack_exports__, __webpack_require__) => { "use strict"; __webpack_require__.r(__webpack_exports__); /* harmony export */ __webpack_require__.d(__webpack_exports__, { -/* harmony export */ "default": () => (/* binding */ buildFullPath) +/* harmony export */ "default": () => (/* binding */ Client) /* harmony export */ }); -/* harmony import */ var _helpers_isAbsoluteURL_js__WEBPACK_IMPORTED_MODULE_0__ = __webpack_require__(/*! ../helpers/isAbsoluteURL.js */ "./node_modules/axios/lib/helpers/isAbsoluteURL.js"); -/* harmony import */ var _helpers_combineURLs_js__WEBPACK_IMPORTED_MODULE_1__ = __webpack_require__(/*! ../helpers/combineURLs.js */ "./node_modules/axios/lib/helpers/combineURLs.js"); - - - - +/* harmony import */ var _babel_runtime_helpers_classCallCheck__WEBPACK_IMPORTED_MODULE_0__ = __webpack_require__(/*! @babel/runtime/helpers/classCallCheck */ "./node_modules/.pnpm/@babel+runtime@7.26.9/node_modules/@babel/runtime/helpers/esm/classCallCheck.js"); +/* harmony import */ var _babel_runtime_helpers_createClass__WEBPACK_IMPORTED_MODULE_1__ = __webpack_require__(/*! @babel/runtime/helpers/createClass */ "./node_modules/.pnpm/@babel+runtime@7.26.9/node_modules/@babel/runtime/helpers/esm/createClass.js"); +/* harmony import */ var _Configuration__WEBPACK_IMPORTED_MODULE_2__ = __webpack_require__(/*! ./Configuration */ "./src/Typesense/Configuration.ts"); +/* harmony import */ var _ApiCall__WEBPACK_IMPORTED_MODULE_3__ = __webpack_require__(/*! ./ApiCall */ "./src/Typesense/ApiCall.ts"); +/* harmony import */ var _Collections__WEBPACK_IMPORTED_MODULE_4__ = __webpack_require__(/*! ./Collections */ "./src/Typesense/Collections.ts"); +/* harmony import */ var _Collection__WEBPACK_IMPORTED_MODULE_5__ = __webpack_require__(/*! ./Collection */ "./src/Typesense/Collection.ts"); +/* harmony import */ var _Aliases__WEBPACK_IMPORTED_MODULE_6__ = __webpack_require__(/*! ./Aliases */ "./src/Typesense/Aliases.ts"); +/* harmony import */ var _Alias__WEBPACK_IMPORTED_MODULE_7__ = __webpack_require__(/*! ./Alias */ "./src/Typesense/Alias.ts"); +/* harmony import */ var _Keys__WEBPACK_IMPORTED_MODULE_8__ = __webpack_require__(/*! ./Keys */ "./src/Typesense/Keys.ts"); +/* harmony import */ var _Key__WEBPACK_IMPORTED_MODULE_9__ = __webpack_require__(/*! ./Key */ "./src/Typesense/Key.ts"); +/* harmony import */ var _Debug__WEBPACK_IMPORTED_MODULE_10__ = __webpack_require__(/*! ./Debug */ "./src/Typesense/Debug.ts"); +/* harmony import */ var _Metrics__WEBPACK_IMPORTED_MODULE_11__ = __webpack_require__(/*! ./Metrics */ "./src/Typesense/Metrics.ts"); +/* harmony import */ var _Stats__WEBPACK_IMPORTED_MODULE_12__ = __webpack_require__(/*! ./Stats */ "./src/Typesense/Stats.ts"); +/* harmony import */ var _Health__WEBPACK_IMPORTED_MODULE_13__ = __webpack_require__(/*! ./Health */ "./src/Typesense/Health.ts"); +/* harmony import */ var _Operations__WEBPACK_IMPORTED_MODULE_14__ = __webpack_require__(/*! ./Operations */ "./src/Typesense/Operations.ts"); +/* harmony import */ var _MultiSearch__WEBPACK_IMPORTED_MODULE_15__ = __webpack_require__(/*! ./MultiSearch */ "./src/Typesense/MultiSearch.ts"); +/* harmony import */ var _Presets__WEBPACK_IMPORTED_MODULE_16__ = __webpack_require__(/*! ./Presets */ "./src/Typesense/Presets.ts"); +/* harmony import */ var _Preset__WEBPACK_IMPORTED_MODULE_17__ = __webpack_require__(/*! ./Preset */ "./src/Typesense/Preset.ts"); +/* harmony import */ var _Analytics__WEBPACK_IMPORTED_MODULE_18__ = __webpack_require__(/*! ./Analytics */ "./src/Typesense/Analytics.ts"); +/* harmony import */ var _Stopwords__WEBPACK_IMPORTED_MODULE_19__ = __webpack_require__(/*! ./Stopwords */ "./src/Typesense/Stopwords.ts"); +/* harmony import */ var _Stopword__WEBPACK_IMPORTED_MODULE_20__ = __webpack_require__(/*! ./Stopword */ "./src/Typesense/Stopword.ts"); +/* harmony import */ var _Conversations__WEBPACK_IMPORTED_MODULE_21__ = __webpack_require__(/*! ./Conversations */ "./src/Typesense/Conversations.ts"); +/* harmony import */ var _Conversation__WEBPACK_IMPORTED_MODULE_22__ = __webpack_require__(/*! ./Conversation */ "./src/Typesense/Conversation.ts"); +/* harmony import */ var _Stemming__WEBPACK_IMPORTED_MODULE_23__ = __webpack_require__(/*! ./Stemming */ "./src/Typesense/Stemming.ts"); -/** - * Creates a new URL by combining the baseURL with the requestedURL, - * only when the requestedURL is not already an absolute URL. - * If the requestURL is absolute, this function returns the requestedURL untouched. - * - * @param {string} baseURL The base URL - * @param {string} requestedURL Absolute or relative URL to combine - * - * @returns {string} The combined full path - */ -function buildFullPath(baseURL, requestedURL) { - if (baseURL && !(0,_helpers_isAbsoluteURL_js__WEBPACK_IMPORTED_MODULE_0__["default"])(requestedURL)) { - return (0,_helpers_combineURLs_js__WEBPACK_IMPORTED_MODULE_1__["default"])(baseURL, requestedURL); - } - return requestedURL; -} +/* eslint-disable no-dupe-class-members */ -/***/ }), -/***/ "./node_modules/axios/lib/core/dispatchRequest.js": -/*!********************************************************!*\ - !*** ./node_modules/axios/lib/core/dispatchRequest.js ***! - \********************************************************/ -/***/ ((__unused_webpack___webpack_module__, __webpack_exports__, __webpack_require__) => { -"use strict"; -__webpack_require__.r(__webpack_exports__); -/* harmony export */ __webpack_require__.d(__webpack_exports__, { -/* harmony export */ "default": () => (/* binding */ dispatchRequest) -/* harmony export */ }); -/* harmony import */ var _transformData_js__WEBPACK_IMPORTED_MODULE_2__ = __webpack_require__(/*! ./transformData.js */ "./node_modules/axios/lib/core/transformData.js"); -/* harmony import */ var _cancel_isCancel_js__WEBPACK_IMPORTED_MODULE_5__ = __webpack_require__(/*! ../cancel/isCancel.js */ "./node_modules/axios/lib/cancel/isCancel.js"); -/* harmony import */ var _defaults_index_js__WEBPACK_IMPORTED_MODULE_4__ = __webpack_require__(/*! ../defaults/index.js */ "./node_modules/axios/lib/defaults/index.js"); -/* harmony import */ var _cancel_CanceledError_js__WEBPACK_IMPORTED_MODULE_0__ = __webpack_require__(/*! ../cancel/CanceledError.js */ "./node_modules/axios/lib/cancel/CanceledError.js"); -/* harmony import */ var _core_AxiosHeaders_js__WEBPACK_IMPORTED_MODULE_1__ = __webpack_require__(/*! ../core/AxiosHeaders.js */ "./node_modules/axios/lib/core/AxiosHeaders.js"); -/* harmony import */ var _adapters_adapters_js__WEBPACK_IMPORTED_MODULE_3__ = __webpack_require__(/*! ../adapters/adapters.js */ "./node_modules/axios/lib/adapters/adapters.js"); @@ -7845,3021 +7173,3676 @@ __webpack_require__.r(__webpack_exports__); -/** - * Throws a `CanceledError` if cancellation has been requested. - * - * @param {Object} config The config that is to be used for the request - * - * @returns {void} - */ -function throwIfCancellationRequested(config) { - if (config.cancelToken) { - config.cancelToken.throwIfRequested(); - } - if (config.signal && config.signal.aborted) { - throw new _cancel_CanceledError_js__WEBPACK_IMPORTED_MODULE_0__["default"](null, config); - } -} -/** - * Dispatch a request to the server using the configured adapter. - * - * @param {object} config The config that is to be used for the request - * - * @returns {Promise} The Promise to be fulfilled - */ -function dispatchRequest(config) { - throwIfCancellationRequested(config); - config.headers = _core_AxiosHeaders_js__WEBPACK_IMPORTED_MODULE_1__["default"].from(config.headers); - // Transform request data - config.data = _transformData_js__WEBPACK_IMPORTED_MODULE_2__["default"].call( - config, - config.transformRequest - ); - if (['post', 'put', 'patch'].indexOf(config.method) !== -1) { - config.headers.setContentType('application/x-www-form-urlencoded', false); - } - const adapter = _adapters_adapters_js__WEBPACK_IMPORTED_MODULE_3__["default"].getAdapter(config.adapter || _defaults_index_js__WEBPACK_IMPORTED_MODULE_4__["default"].adapter); - return adapter(config).then(function onAdapterResolution(response) { - throwIfCancellationRequested(config); - // Transform response data - response.data = _transformData_js__WEBPACK_IMPORTED_MODULE_2__["default"].call( - config, - config.transformResponse, - response - ); - response.headers = _core_AxiosHeaders_js__WEBPACK_IMPORTED_MODULE_1__["default"].from(response.headers); - return response; - }, function onAdapterRejection(reason) { - if (!(0,_cancel_isCancel_js__WEBPACK_IMPORTED_MODULE_5__["default"])(reason)) { - throwIfCancellationRequested(config); - // Transform response data - if (reason && reason.response) { - reason.response.data = _transformData_js__WEBPACK_IMPORTED_MODULE_2__["default"].call( - config, - config.transformResponse, - reason.response - ); - reason.response.headers = _core_AxiosHeaders_js__WEBPACK_IMPORTED_MODULE_1__["default"].from(reason.response.headers); +var Client = /*#__PURE__*/function () { + function Client(options) { + var _options$sendApiKeyAs; + (0,_babel_runtime_helpers_classCallCheck__WEBPACK_IMPORTED_MODULE_0__["default"])(this, Client); + options.sendApiKeyAsQueryParam = (_options$sendApiKeyAs = options.sendApiKeyAsQueryParam) !== null && _options$sendApiKeyAs !== void 0 ? _options$sendApiKeyAs : false; + this.configuration = new _Configuration__WEBPACK_IMPORTED_MODULE_2__["default"](options); + this.apiCall = new _ApiCall__WEBPACK_IMPORTED_MODULE_3__["default"](this.configuration); + this.debug = new _Debug__WEBPACK_IMPORTED_MODULE_10__["default"](this.apiCall); + this.metrics = new _Metrics__WEBPACK_IMPORTED_MODULE_11__["default"](this.apiCall); + this.stats = new _Stats__WEBPACK_IMPORTED_MODULE_12__["default"](this.apiCall); + this.health = new _Health__WEBPACK_IMPORTED_MODULE_13__["default"](this.apiCall); + this.operations = new _Operations__WEBPACK_IMPORTED_MODULE_14__["default"](this.apiCall); + this.multiSearch = new _MultiSearch__WEBPACK_IMPORTED_MODULE_15__["default"](this.apiCall, this.configuration); + this._collections = new _Collections__WEBPACK_IMPORTED_MODULE_4__["default"](this.apiCall); + this.individualCollections = {}; + this._aliases = new _Aliases__WEBPACK_IMPORTED_MODULE_6__["default"](this.apiCall); + this.individualAliases = {}; + this._keys = new _Keys__WEBPACK_IMPORTED_MODULE_8__["default"](this.apiCall); + this.individualKeys = {}; + this._presets = new _Presets__WEBPACK_IMPORTED_MODULE_16__["default"](this.apiCall); + this.individualPresets = {}; + this._stopwords = new _Stopwords__WEBPACK_IMPORTED_MODULE_19__["default"](this.apiCall); + this.individualStopwords = {}; + this.analytics = new _Analytics__WEBPACK_IMPORTED_MODULE_18__["default"](this.apiCall); + this.stemming = new _Stemming__WEBPACK_IMPORTED_MODULE_23__["default"](this.apiCall); + this._conversations = new _Conversations__WEBPACK_IMPORTED_MODULE_21__["default"](this.apiCall); + this.individualConversations = {}; + } + return (0,_babel_runtime_helpers_createClass__WEBPACK_IMPORTED_MODULE_1__["default"])(Client, [{ + key: "collections", + value: function collections(collectionName) { + if (collectionName === undefined) { + return this._collections; + } else { + if (this.individualCollections[collectionName] === undefined) { + this.individualCollections[collectionName] = new _Collection__WEBPACK_IMPORTED_MODULE_5__["default"](collectionName, this.apiCall, this.configuration); + } + return this.individualCollections[collectionName]; + } + } + }, { + key: "aliases", + value: function aliases(aliasName) { + if (aliasName === undefined) { + return this._aliases; + } else { + if (this.individualAliases[aliasName] === undefined) { + this.individualAliases[aliasName] = new _Alias__WEBPACK_IMPORTED_MODULE_7__["default"](aliasName, this.apiCall); + } + return this.individualAliases[aliasName]; + } + } + }, { + key: "keys", + value: function keys(id) { + if (id === undefined) { + return this._keys; + } else { + if (this.individualKeys[id] === undefined) { + this.individualKeys[id] = new _Key__WEBPACK_IMPORTED_MODULE_9__["default"](id, this.apiCall); + } + return this.individualKeys[id]; + } + } + }, { + key: "presets", + value: function presets(id) { + if (id === undefined) { + return this._presets; + } else { + if (this.individualPresets[id] === undefined) { + this.individualPresets[id] = new _Preset__WEBPACK_IMPORTED_MODULE_17__["default"](id, this.apiCall); + } + return this.individualPresets[id]; } } - - return Promise.reject(reason); - }); -} + }, { + key: "stopwords", + value: function stopwords(id) { + if (id === undefined) { + return this._stopwords; + } else { + if (this.individualStopwords[id] === undefined) { + this.individualStopwords[id] = new _Stopword__WEBPACK_IMPORTED_MODULE_20__["default"](id, this.apiCall); + } + return this.individualStopwords[id]; + } + } + }, { + key: "conversations", + value: function conversations(id) { + if (id === undefined) { + return this._conversations; + } else { + if (this.individualConversations[id] === undefined) { + this.individualConversations[id] = new _Conversation__WEBPACK_IMPORTED_MODULE_22__["default"](id, this.apiCall); + } + return this.individualConversations[id]; + } + } + }]); +}(); /***/ }), -/***/ "./node_modules/axios/lib/core/mergeConfig.js": -/*!****************************************************!*\ - !*** ./node_modules/axios/lib/core/mergeConfig.js ***! - \****************************************************/ -/***/ ((__unused_webpack___webpack_module__, __webpack_exports__, __webpack_require__) => { +/***/ "./src/Typesense/Collection.ts": +/*!*************************************!*\ + !*** ./src/Typesense/Collection.ts ***! + \*************************************/ +/***/ ((__unused_webpack_module, __webpack_exports__, __webpack_require__) => { "use strict"; __webpack_require__.r(__webpack_exports__); /* harmony export */ __webpack_require__.d(__webpack_exports__, { -/* harmony export */ "default": () => (/* binding */ mergeConfig) +/* harmony export */ "default": () => (/* binding */ Collection) /* harmony export */ }); -/* harmony import */ var _utils_js__WEBPACK_IMPORTED_MODULE_1__ = __webpack_require__(/*! ../utils.js */ "./node_modules/axios/lib/utils.js"); -/* harmony import */ var _AxiosHeaders_js__WEBPACK_IMPORTED_MODULE_0__ = __webpack_require__(/*! ./AxiosHeaders.js */ "./node_modules/axios/lib/core/AxiosHeaders.js"); - - - - - -const headersToObject = (thing) => thing instanceof _AxiosHeaders_js__WEBPACK_IMPORTED_MODULE_0__["default"] ? { ...thing } : thing; - -/** - * Config-specific merge-function which creates a new config-object - * by merging two configuration objects together. - * - * @param {Object} config1 - * @param {Object} config2 - * - * @returns {Object} New object resulting from merging config2 to config1 - */ -function mergeConfig(config1, config2) { - // eslint-disable-next-line no-param-reassign - config2 = config2 || {}; - const config = {}; - - function getMergedValue(target, source, caseless) { - if (_utils_js__WEBPACK_IMPORTED_MODULE_1__["default"].isPlainObject(target) && _utils_js__WEBPACK_IMPORTED_MODULE_1__["default"].isPlainObject(source)) { - return _utils_js__WEBPACK_IMPORTED_MODULE_1__["default"].merge.call({caseless}, target, source); - } else if (_utils_js__WEBPACK_IMPORTED_MODULE_1__["default"].isPlainObject(source)) { - return _utils_js__WEBPACK_IMPORTED_MODULE_1__["default"].merge({}, source); - } else if (_utils_js__WEBPACK_IMPORTED_MODULE_1__["default"].isArray(source)) { - return source.slice(); - } - return source; - } - - // eslint-disable-next-line consistent-return - function mergeDeepProperties(a, b, caseless) { - if (!_utils_js__WEBPACK_IMPORTED_MODULE_1__["default"].isUndefined(b)) { - return getMergedValue(a, b, caseless); - } else if (!_utils_js__WEBPACK_IMPORTED_MODULE_1__["default"].isUndefined(a)) { - return getMergedValue(undefined, a, caseless); - } - } - - // eslint-disable-next-line consistent-return - function valueFromConfig2(a, b) { - if (!_utils_js__WEBPACK_IMPORTED_MODULE_1__["default"].isUndefined(b)) { - return getMergedValue(undefined, b); - } - } +/* harmony import */ var _babel_runtime_helpers_asyncToGenerator__WEBPACK_IMPORTED_MODULE_0__ = __webpack_require__(/*! @babel/runtime/helpers/asyncToGenerator */ "./node_modules/.pnpm/@babel+runtime@7.26.9/node_modules/@babel/runtime/helpers/esm/asyncToGenerator.js"); +/* harmony import */ var _babel_runtime_helpers_classCallCheck__WEBPACK_IMPORTED_MODULE_1__ = __webpack_require__(/*! @babel/runtime/helpers/classCallCheck */ "./node_modules/.pnpm/@babel+runtime@7.26.9/node_modules/@babel/runtime/helpers/esm/classCallCheck.js"); +/* harmony import */ var _babel_runtime_helpers_createClass__WEBPACK_IMPORTED_MODULE_2__ = __webpack_require__(/*! @babel/runtime/helpers/createClass */ "./node_modules/.pnpm/@babel+runtime@7.26.9/node_modules/@babel/runtime/helpers/esm/createClass.js"); +/* harmony import */ var _babel_runtime_helpers_defineProperty__WEBPACK_IMPORTED_MODULE_3__ = __webpack_require__(/*! @babel/runtime/helpers/defineProperty */ "./node_modules/.pnpm/@babel+runtime@7.26.9/node_modules/@babel/runtime/helpers/esm/defineProperty.js"); +/* harmony import */ var _babel_runtime_regenerator__WEBPACK_IMPORTED_MODULE_4__ = __webpack_require__(/*! @babel/runtime/regenerator */ "./node_modules/.pnpm/@babel+runtime@7.26.9/node_modules/@babel/runtime/regenerator/index.js"); +/* harmony import */ var _babel_runtime_regenerator__WEBPACK_IMPORTED_MODULE_4___default = /*#__PURE__*/__webpack_require__.n(_babel_runtime_regenerator__WEBPACK_IMPORTED_MODULE_4__); +/* harmony import */ var _Collections__WEBPACK_IMPORTED_MODULE_5__ = __webpack_require__(/*! ./Collections */ "./src/Typesense/Collections.ts"); +/* harmony import */ var _Documents__WEBPACK_IMPORTED_MODULE_6__ = __webpack_require__(/*! ./Documents */ "./src/Typesense/Documents.ts"); +/* harmony import */ var _Errors__WEBPACK_IMPORTED_MODULE_7__ = __webpack_require__(/*! ./Errors */ "./src/Typesense/Errors/index.ts"); +/* harmony import */ var _Overrides__WEBPACK_IMPORTED_MODULE_8__ = __webpack_require__(/*! ./Overrides */ "./src/Typesense/Overrides.ts"); +/* harmony import */ var _Override__WEBPACK_IMPORTED_MODULE_9__ = __webpack_require__(/*! ./Override */ "./src/Typesense/Override.ts"); +/* harmony import */ var _Synonyms__WEBPACK_IMPORTED_MODULE_10__ = __webpack_require__(/*! ./Synonyms */ "./src/Typesense/Synonyms.ts"); +/* harmony import */ var _Synonym__WEBPACK_IMPORTED_MODULE_11__ = __webpack_require__(/*! ./Synonym */ "./src/Typesense/Synonym.ts"); +/* harmony import */ var _Document__WEBPACK_IMPORTED_MODULE_12__ = __webpack_require__(/*! ./Document */ "./src/Typesense/Document.ts"); - // eslint-disable-next-line consistent-return - function defaultToConfig2(a, b) { - if (!_utils_js__WEBPACK_IMPORTED_MODULE_1__["default"].isUndefined(b)) { - return getMergedValue(undefined, b); - } else if (!_utils_js__WEBPACK_IMPORTED_MODULE_1__["default"].isUndefined(a)) { - return getMergedValue(undefined, a); - } - } - // eslint-disable-next-line consistent-return - function mergeDirectKeys(a, b, prop) { - if (prop in config2) { - return getMergedValue(a, b); - } else if (prop in config1) { - return getMergedValue(undefined, a); - } - } - const mergeMap = { - url: valueFromConfig2, - method: valueFromConfig2, - data: valueFromConfig2, - baseURL: defaultToConfig2, - transformRequest: defaultToConfig2, - transformResponse: defaultToConfig2, - paramsSerializer: defaultToConfig2, - timeout: defaultToConfig2, - timeoutMessage: defaultToConfig2, - withCredentials: defaultToConfig2, - withXSRFToken: defaultToConfig2, - adapter: defaultToConfig2, - responseType: defaultToConfig2, - xsrfCookieName: defaultToConfig2, - xsrfHeaderName: defaultToConfig2, - onUploadProgress: defaultToConfig2, - onDownloadProgress: defaultToConfig2, - decompress: defaultToConfig2, - maxContentLength: defaultToConfig2, - maxBodyLength: defaultToConfig2, - beforeRedirect: defaultToConfig2, - transport: defaultToConfig2, - httpAgent: defaultToConfig2, - httpsAgent: defaultToConfig2, - cancelToken: defaultToConfig2, - socketPath: defaultToConfig2, - responseEncoding: defaultToConfig2, - validateStatus: mergeDirectKeys, - headers: (a, b) => mergeDeepProperties(headersToObject(a), headersToObject(b), true) - }; - _utils_js__WEBPACK_IMPORTED_MODULE_1__["default"].forEach(Object.keys(Object.assign({}, config1, config2)), function computeConfigValue(prop) { - const merge = mergeMap[prop] || mergeDeepProperties; - const configValue = merge(config1[prop], config2[prop], prop); - (_utils_js__WEBPACK_IMPORTED_MODULE_1__["default"].isUndefined(configValue) && merge !== mergeDirectKeys) || (config[prop] = configValue); - }); - return config; -} -/***/ }), -/***/ "./node_modules/axios/lib/core/settle.js": -/*!***********************************************!*\ - !*** ./node_modules/axios/lib/core/settle.js ***! - \***********************************************/ -/***/ ((__unused_webpack___webpack_module__, __webpack_exports__, __webpack_require__) => { -"use strict"; -__webpack_require__.r(__webpack_exports__); -/* harmony export */ __webpack_require__.d(__webpack_exports__, { -/* harmony export */ "default": () => (/* binding */ settle) -/* harmony export */ }); -/* harmony import */ var _AxiosError_js__WEBPACK_IMPORTED_MODULE_0__ = __webpack_require__(/*! ./AxiosError.js */ "./node_modules/axios/lib/core/AxiosError.js"); -/** - * Resolve or reject a Promise based on response status. - * - * @param {Function} resolve A function that resolves the promise. - * @param {Function} reject A function that rejects the promise. - * @param {object} response The response. - * - * @returns {object} The response. - */ -function settle(resolve, reject, response) { - const validateStatus = response.config.validateStatus; - if (!response.status || !validateStatus || validateStatus(response.status)) { - resolve(response); - } else { - reject(new _AxiosError_js__WEBPACK_IMPORTED_MODULE_0__["default"]( - 'Request failed with status code ' + response.status, - [_AxiosError_js__WEBPACK_IMPORTED_MODULE_0__["default"].ERR_BAD_REQUEST, _AxiosError_js__WEBPACK_IMPORTED_MODULE_0__["default"].ERR_BAD_RESPONSE][Math.floor(response.status / 100) - 4], - response.config, - response.request, - response - )); +var Collection = /*#__PURE__*/function () { + function Collection(name, apiCall, configuration) { + (0,_babel_runtime_helpers_classCallCheck__WEBPACK_IMPORTED_MODULE_1__["default"])(this, Collection); + (0,_babel_runtime_helpers_defineProperty__WEBPACK_IMPORTED_MODULE_3__["default"])(this, "individualDocuments", {}); + (0,_babel_runtime_helpers_defineProperty__WEBPACK_IMPORTED_MODULE_3__["default"])(this, "individualOverrides", {}); + (0,_babel_runtime_helpers_defineProperty__WEBPACK_IMPORTED_MODULE_3__["default"])(this, "individualSynonyms", {}); + this.name = name; + this.apiCall = apiCall; + this.configuration = configuration; + this.name = name; + this.apiCall = apiCall; + this.configuration = configuration; + this._documents = new _Documents__WEBPACK_IMPORTED_MODULE_6__["default"](this.name, this.apiCall, this.configuration); + this._overrides = new _Overrides__WEBPACK_IMPORTED_MODULE_8__["default"](this.name, this.apiCall); + this._synonyms = new _Synonyms__WEBPACK_IMPORTED_MODULE_10__["default"](this.name, this.apiCall); } -} + return (0,_babel_runtime_helpers_createClass__WEBPACK_IMPORTED_MODULE_2__["default"])(Collection, [{ + key: "retrieve", + value: function () { + var _retrieve = (0,_babel_runtime_helpers_asyncToGenerator__WEBPACK_IMPORTED_MODULE_0__["default"])(/*#__PURE__*/_babel_runtime_regenerator__WEBPACK_IMPORTED_MODULE_4___default().mark(function _callee() { + return _babel_runtime_regenerator__WEBPACK_IMPORTED_MODULE_4___default().wrap(function _callee$(_context) { + while (1) switch (_context.prev = _context.next) { + case 0: + return _context.abrupt("return", this.apiCall.get(this.endpointPath())); + case 1: + case "end": + return _context.stop(); + } + }, _callee, this); + })); + function retrieve() { + return _retrieve.apply(this, arguments); + } + return retrieve; + }() + }, { + key: "update", + value: function () { + var _update = (0,_babel_runtime_helpers_asyncToGenerator__WEBPACK_IMPORTED_MODULE_0__["default"])(/*#__PURE__*/_babel_runtime_regenerator__WEBPACK_IMPORTED_MODULE_4___default().mark(function _callee2(schema) { + return _babel_runtime_regenerator__WEBPACK_IMPORTED_MODULE_4___default().wrap(function _callee2$(_context2) { + while (1) switch (_context2.prev = _context2.next) { + case 0: + return _context2.abrupt("return", this.apiCall.patch(this.endpointPath(), schema)); + case 1: + case "end": + return _context2.stop(); + } + }, _callee2, this); + })); + function update(_x) { + return _update.apply(this, arguments); + } + return update; + }() + }, { + key: "delete", + value: function () { + var _delete2 = (0,_babel_runtime_helpers_asyncToGenerator__WEBPACK_IMPORTED_MODULE_0__["default"])(/*#__PURE__*/_babel_runtime_regenerator__WEBPACK_IMPORTED_MODULE_4___default().mark(function _callee3() { + var options, + _args3 = arguments; + return _babel_runtime_regenerator__WEBPACK_IMPORTED_MODULE_4___default().wrap(function _callee3$(_context3) { + while (1) switch (_context3.prev = _context3.next) { + case 0: + options = _args3.length > 0 && _args3[0] !== undefined ? _args3[0] : {}; + return _context3.abrupt("return", this.apiCall.delete(this.endpointPath(), options)); + case 2: + case "end": + return _context3.stop(); + } + }, _callee3, this); + })); + function _delete() { + return _delete2.apply(this, arguments); + } + return _delete; + }() + }, { + key: "exists", + value: function () { + var _exists = (0,_babel_runtime_helpers_asyncToGenerator__WEBPACK_IMPORTED_MODULE_0__["default"])(/*#__PURE__*/_babel_runtime_regenerator__WEBPACK_IMPORTED_MODULE_4___default().mark(function _callee4() { + return _babel_runtime_regenerator__WEBPACK_IMPORTED_MODULE_4___default().wrap(function _callee4$(_context4) { + while (1) switch (_context4.prev = _context4.next) { + case 0: + _context4.prev = 0; + _context4.next = 3; + return this.retrieve(); + case 3: + return _context4.abrupt("return", true); + case 6: + _context4.prev = 6; + _context4.t0 = _context4["catch"](0); + if (!(_context4.t0 instanceof _Errors__WEBPACK_IMPORTED_MODULE_7__.ObjectNotFound)) { + _context4.next = 10; + break; + } + return _context4.abrupt("return", false); + case 10: + throw _context4.t0; + case 11: + case "end": + return _context4.stop(); + } + }, _callee4, this, [[0, 6]]); + })); + function exists() { + return _exists.apply(this, arguments); + } + return exists; + }() + }, { + key: "documents", + value: function documents(documentId) { + if (!documentId) { + return this._documents; + } else { + if (this.individualDocuments[documentId] === undefined) { + this.individualDocuments[documentId] = new _Document__WEBPACK_IMPORTED_MODULE_12__.Document(this.name, documentId, this.apiCall); + } + return this.individualDocuments[documentId]; + } + } + }, { + key: "overrides", + value: function overrides(overrideId) { + if (overrideId === undefined) { + return this._overrides; + } else { + if (this.individualOverrides[overrideId] === undefined) { + this.individualOverrides[overrideId] = new _Override__WEBPACK_IMPORTED_MODULE_9__["default"](this.name, overrideId, this.apiCall); + } + return this.individualOverrides[overrideId]; + } + } + }, { + key: "synonyms", + value: function synonyms(synonymId) { + if (synonymId === undefined) { + return this._synonyms; + } else { + if (this.individualSynonyms[synonymId] === undefined) { + this.individualSynonyms[synonymId] = new _Synonym__WEBPACK_IMPORTED_MODULE_11__["default"](this.name, synonymId, this.apiCall); + } + return this.individualSynonyms[synonymId]; + } + } + }, { + key: "endpointPath", + value: function endpointPath() { + return "".concat(_Collections__WEBPACK_IMPORTED_MODULE_5__["default"].RESOURCEPATH, "/").concat(encodeURIComponent(this.name)); + } + }]); +}(); /***/ }), -/***/ "./node_modules/axios/lib/core/transformData.js": -/*!******************************************************!*\ - !*** ./node_modules/axios/lib/core/transformData.js ***! - \******************************************************/ -/***/ ((__unused_webpack___webpack_module__, __webpack_exports__, __webpack_require__) => { +/***/ "./src/Typesense/Collections.ts": +/*!**************************************!*\ + !*** ./src/Typesense/Collections.ts ***! + \**************************************/ +/***/ ((__unused_webpack_module, __webpack_exports__, __webpack_require__) => { "use strict"; __webpack_require__.r(__webpack_exports__); /* harmony export */ __webpack_require__.d(__webpack_exports__, { -/* harmony export */ "default": () => (/* binding */ transformData) +/* harmony export */ "default": () => (/* binding */ Collections) /* harmony export */ }); -/* harmony import */ var _utils_js__WEBPACK_IMPORTED_MODULE_2__ = __webpack_require__(/*! ./../utils.js */ "./node_modules/axios/lib/utils.js"); -/* harmony import */ var _defaults_index_js__WEBPACK_IMPORTED_MODULE_0__ = __webpack_require__(/*! ../defaults/index.js */ "./node_modules/axios/lib/defaults/index.js"); -/* harmony import */ var _core_AxiosHeaders_js__WEBPACK_IMPORTED_MODULE_1__ = __webpack_require__(/*! ../core/AxiosHeaders.js */ "./node_modules/axios/lib/core/AxiosHeaders.js"); - - +/* harmony import */ var _babel_runtime_helpers_asyncToGenerator__WEBPACK_IMPORTED_MODULE_0__ = __webpack_require__(/*! @babel/runtime/helpers/asyncToGenerator */ "./node_modules/.pnpm/@babel+runtime@7.26.9/node_modules/@babel/runtime/helpers/esm/asyncToGenerator.js"); +/* harmony import */ var _babel_runtime_helpers_classCallCheck__WEBPACK_IMPORTED_MODULE_1__ = __webpack_require__(/*! @babel/runtime/helpers/classCallCheck */ "./node_modules/.pnpm/@babel+runtime@7.26.9/node_modules/@babel/runtime/helpers/esm/classCallCheck.js"); +/* harmony import */ var _babel_runtime_helpers_createClass__WEBPACK_IMPORTED_MODULE_2__ = __webpack_require__(/*! @babel/runtime/helpers/createClass */ "./node_modules/.pnpm/@babel+runtime@7.26.9/node_modules/@babel/runtime/helpers/esm/createClass.js"); +/* harmony import */ var _babel_runtime_regenerator__WEBPACK_IMPORTED_MODULE_3__ = __webpack_require__(/*! @babel/runtime/regenerator */ "./node_modules/.pnpm/@babel+runtime@7.26.9/node_modules/@babel/runtime/regenerator/index.js"); +/* harmony import */ var _babel_runtime_regenerator__WEBPACK_IMPORTED_MODULE_3___default = /*#__PURE__*/__webpack_require__.n(_babel_runtime_regenerator__WEBPACK_IMPORTED_MODULE_3__); /** - * Transform the data for a request or a response - * - * @param {Array|Function} fns A single function or Array of functions - * @param {?Object} response The response object + * Defines the schema for creating a collection in Typesense. * - * @returns {*} The resulting transformed data + * If the `src_name` property in `Options` is a string, the `fields` prop is optional, and only used for embedding fields. + * Otherwise, `fields` will be required. */ -function transformData(fns, response) { - const config = this || _defaults_index_js__WEBPACK_IMPORTED_MODULE_0__["default"]; - const context = response || config; - const headers = _core_AxiosHeaders_js__WEBPACK_IMPORTED_MODULE_1__["default"].from(context.headers); - let data = context.data; - - _utils_js__WEBPACK_IMPORTED_MODULE_2__["default"].forEach(fns, function transform(fn) { - data = fn.call(config, data, headers.normalize(), response ? response.status : undefined); - }); - - headers.normalize(); - return data; -} +var RESOURCEPATH = "/collections"; +var Collections = /*#__PURE__*/function () { + function Collections(apiCall) { + (0,_babel_runtime_helpers_classCallCheck__WEBPACK_IMPORTED_MODULE_1__["default"])(this, Collections); + this.apiCall = apiCall; + } + return (0,_babel_runtime_helpers_createClass__WEBPACK_IMPORTED_MODULE_2__["default"])(Collections, [{ + key: "create", + value: function () { + var _create = (0,_babel_runtime_helpers_asyncToGenerator__WEBPACK_IMPORTED_MODULE_0__["default"])(/*#__PURE__*/_babel_runtime_regenerator__WEBPACK_IMPORTED_MODULE_3___default().mark(function _callee(schema, options) { + return _babel_runtime_regenerator__WEBPACK_IMPORTED_MODULE_3___default().wrap(function _callee$(_context) { + while (1) switch (_context.prev = _context.next) { + case 0: + return _context.abrupt("return", this.apiCall.post(RESOURCEPATH, schema, options)); + case 1: + case "end": + return _context.stop(); + } + }, _callee, this); + })); + function create(_x, _x2) { + return _create.apply(this, arguments); + } + return create; + }() + }, { + key: "retrieve", + value: function () { + var _retrieve = (0,_babel_runtime_helpers_asyncToGenerator__WEBPACK_IMPORTED_MODULE_0__["default"])(/*#__PURE__*/_babel_runtime_regenerator__WEBPACK_IMPORTED_MODULE_3___default().mark(function _callee2() { + var options, + _args2 = arguments; + return _babel_runtime_regenerator__WEBPACK_IMPORTED_MODULE_3___default().wrap(function _callee2$(_context2) { + while (1) switch (_context2.prev = _context2.next) { + case 0: + options = _args2.length > 0 && _args2[0] !== undefined ? _args2[0] : {}; + return _context2.abrupt("return", this.apiCall.get(RESOURCEPATH, options)); + case 2: + case "end": + return _context2.stop(); + } + }, _callee2, this); + })); + function retrieve() { + return _retrieve.apply(this, arguments); + } + return retrieve; + }() + }], [{ + key: "RESOURCEPATH", + get: function get() { + return RESOURCEPATH; + } + }]); +}(); /***/ }), -/***/ "./node_modules/axios/lib/defaults/index.js": -/*!**************************************************!*\ - !*** ./node_modules/axios/lib/defaults/index.js ***! - \**************************************************/ -/***/ ((__unused_webpack___webpack_module__, __webpack_exports__, __webpack_require__) => { +/***/ "./src/Typesense/Configuration.ts": +/*!****************************************!*\ + !*** ./src/Typesense/Configuration.ts ***! + \****************************************/ +/***/ ((__unused_webpack_module, __webpack_exports__, __webpack_require__) => { "use strict"; __webpack_require__.r(__webpack_exports__); /* harmony export */ __webpack_require__.d(__webpack_exports__, { -/* harmony export */ "default": () => (__WEBPACK_DEFAULT_EXPORT__) +/* harmony export */ "default": () => (/* binding */ Configuration) /* harmony export */ }); -/* harmony import */ var _utils_js__WEBPACK_IMPORTED_MODULE_0__ = __webpack_require__(/*! ../utils.js */ "./node_modules/axios/lib/utils.js"); -/* harmony import */ var _core_AxiosError_js__WEBPACK_IMPORTED_MODULE_5__ = __webpack_require__(/*! ../core/AxiosError.js */ "./node_modules/axios/lib/core/AxiosError.js"); -/* harmony import */ var _transitional_js__WEBPACK_IMPORTED_MODULE_1__ = __webpack_require__(/*! ./transitional.js */ "./node_modules/axios/lib/defaults/transitional.js"); -/* harmony import */ var _helpers_toFormData_js__WEBPACK_IMPORTED_MODULE_4__ = __webpack_require__(/*! ../helpers/toFormData.js */ "./node_modules/axios/lib/helpers/toFormData.js"); -/* harmony import */ var _helpers_toURLEncodedForm_js__WEBPACK_IMPORTED_MODULE_3__ = __webpack_require__(/*! ../helpers/toURLEncodedForm.js */ "./node_modules/axios/lib/helpers/toURLEncodedForm.js"); -/* harmony import */ var _platform_index_js__WEBPACK_IMPORTED_MODULE_6__ = __webpack_require__(/*! ../platform/index.js */ "./node_modules/axios/lib/platform/index.js"); -/* harmony import */ var _helpers_formDataToJSON_js__WEBPACK_IMPORTED_MODULE_2__ = __webpack_require__(/*! ../helpers/formDataToJSON.js */ "./node_modules/axios/lib/helpers/formDataToJSON.js"); - - - - - - - - - - -/** - * It takes a string, tries to parse it, and if it fails, it returns the stringified version - * of the input - * - * @param {any} rawValue - The value to be stringified. - * @param {Function} parser - A function that parses a string into a JavaScript object. - * @param {Function} encoder - A function that takes a value and returns a string. - * - * @returns {string} A stringified version of the rawValue. - */ -function stringifySafely(rawValue, parser, encoder) { - if (_utils_js__WEBPACK_IMPORTED_MODULE_0__["default"].isString(rawValue)) { - try { - (parser || JSON.parse)(rawValue); - return _utils_js__WEBPACK_IMPORTED_MODULE_0__["default"].trim(rawValue); - } catch (e) { - if (e.name !== 'SyntaxError') { - throw e; - } - } - } - - return (encoder || JSON.stringify)(rawValue); -} - -const defaults = { - - transitional: _transitional_js__WEBPACK_IMPORTED_MODULE_1__["default"], +/* harmony import */ var _babel_runtime_helpers_defineProperty__WEBPACK_IMPORTED_MODULE_0__ = __webpack_require__(/*! @babel/runtime/helpers/defineProperty */ "./node_modules/.pnpm/@babel+runtime@7.26.9/node_modules/@babel/runtime/helpers/esm/defineProperty.js"); +/* harmony import */ var _babel_runtime_helpers_classCallCheck__WEBPACK_IMPORTED_MODULE_1__ = __webpack_require__(/*! @babel/runtime/helpers/classCallCheck */ "./node_modules/.pnpm/@babel+runtime@7.26.9/node_modules/@babel/runtime/helpers/esm/classCallCheck.js"); +/* harmony import */ var _babel_runtime_helpers_createClass__WEBPACK_IMPORTED_MODULE_2__ = __webpack_require__(/*! @babel/runtime/helpers/createClass */ "./node_modules/.pnpm/@babel+runtime@7.26.9/node_modules/@babel/runtime/helpers/esm/createClass.js"); +/* harmony import */ var loglevel__WEBPACK_IMPORTED_MODULE_3__ = __webpack_require__(/*! loglevel */ "./node_modules/.pnpm/loglevel@1.9.2/node_modules/loglevel/lib/loglevel.js"); +/* harmony import */ var loglevel__WEBPACK_IMPORTED_MODULE_3___default = /*#__PURE__*/__webpack_require__.n(loglevel__WEBPACK_IMPORTED_MODULE_3__); +/* harmony import */ var _Errors__WEBPACK_IMPORTED_MODULE_4__ = __webpack_require__(/*! ./Errors */ "./src/Typesense/Errors/index.ts"); - adapter: ['xhr', 'http', 'fetch'], - transformRequest: [function transformRequest(data, headers) { - const contentType = headers.getContentType() || ''; - const hasJSONContentType = contentType.indexOf('application/json') > -1; - const isObjectPayload = _utils_js__WEBPACK_IMPORTED_MODULE_0__["default"].isObject(data); - if (isObjectPayload && _utils_js__WEBPACK_IMPORTED_MODULE_0__["default"].isHTMLForm(data)) { - data = new FormData(data); - } +function ownKeys(e, r) { var t = Object.keys(e); if (Object.getOwnPropertySymbols) { var o = Object.getOwnPropertySymbols(e); r && (o = o.filter(function (r) { return Object.getOwnPropertyDescriptor(e, r).enumerable; })), t.push.apply(t, o); } return t; } +function _objectSpread(e) { for (var r = 1; r < arguments.length; r++) { var t = null != arguments[r] ? arguments[r] : {}; r % 2 ? ownKeys(Object(t), !0).forEach(function (r) { (0,_babel_runtime_helpers_defineProperty__WEBPACK_IMPORTED_MODULE_0__["default"])(e, r, t[r]); }) : Object.getOwnPropertyDescriptors ? Object.defineProperties(e, Object.getOwnPropertyDescriptors(t)) : ownKeys(Object(t)).forEach(function (r) { Object.defineProperty(e, r, Object.getOwnPropertyDescriptor(t, r)); }); } return e; } - const isFormData = _utils_js__WEBPACK_IMPORTED_MODULE_0__["default"].isFormData(data); - if (isFormData) { - return hasJSONContentType ? JSON.stringify((0,_helpers_formDataToJSON_js__WEBPACK_IMPORTED_MODULE_2__["default"])(data)) : data; - } +var Configuration = /*#__PURE__*/function () { + function Configuration(options) { + var _this = this; + (0,_babel_runtime_helpers_classCallCheck__WEBPACK_IMPORTED_MODULE_1__["default"])(this, Configuration); + this.nodes = options.nodes || []; + this.nodes = this.nodes.map(function (node) { + return _this.setDefaultPathInNode(node); + }).map(function (node) { + return _this.setDefaultPortInNode(node); + }).map(function (node) { + return _objectSpread({}, node); + }); // Make a deep copy - if (_utils_js__WEBPACK_IMPORTED_MODULE_0__["default"].isArrayBuffer(data) || - _utils_js__WEBPACK_IMPORTED_MODULE_0__["default"].isBuffer(data) || - _utils_js__WEBPACK_IMPORTED_MODULE_0__["default"].isStream(data) || - _utils_js__WEBPACK_IMPORTED_MODULE_0__["default"].isFile(data) || - _utils_js__WEBPACK_IMPORTED_MODULE_0__["default"].isBlob(data) || - _utils_js__WEBPACK_IMPORTED_MODULE_0__["default"].isReadableStream(data) - ) { - return data; - } - if (_utils_js__WEBPACK_IMPORTED_MODULE_0__["default"].isArrayBufferView(data)) { - return data.buffer; + if (options.randomizeNodes == null) { + options.randomizeNodes = true; } - if (_utils_js__WEBPACK_IMPORTED_MODULE_0__["default"].isURLSearchParams(data)) { - headers.setContentType('application/x-www-form-urlencoded;charset=utf-8', false); - return data.toString(); + if (options.randomizeNodes === true) { + this.shuffleArray(this.nodes); } + this.nearestNode = options.nearestNode; + this.nearestNode = this.setDefaultPathInNode(this.nearestNode); + this.nearestNode = this.setDefaultPortInNode(this.nearestNode); + this.connectionTimeoutSeconds = options.connectionTimeoutSeconds || options.timeoutSeconds || 5; + this.healthcheckIntervalSeconds = options.healthcheckIntervalSeconds || 60; + this.numRetries = (options.numRetries !== undefined && options.numRetries >= 0 ? options.numRetries : this.nodes.length + (this.nearestNode == null ? 0 : 1)) || 3; + this.retryIntervalSeconds = options.retryIntervalSeconds || 0.1; + this.apiKey = options.apiKey; + this.sendApiKeyAsQueryParam = options.sendApiKeyAsQueryParam; // We will set a default for this in Client and SearchClient - let isFileList; - - if (isObjectPayload) { - if (contentType.indexOf('application/x-www-form-urlencoded') > -1) { - return (0,_helpers_toURLEncodedForm_js__WEBPACK_IMPORTED_MODULE_3__["default"])(data, this.formSerializer).toString(); + this.cacheSearchResultsForSeconds = options.cacheSearchResultsForSeconds || 0; // Disable client-side cache by default + this.useServerSideSearchCache = options.useServerSideSearchCache || false; + this.axiosAdapter = options.axiosAdapter; + this.logger = options.logger || loglevel__WEBPACK_IMPORTED_MODULE_3__; + this.logLevel = options.logLevel || "warn"; + this.logger.setLevel(this.logLevel); + this.additionalHeaders = options.additionalHeaders; + this.httpAgent = options.httpAgent; + this.httpsAgent = options.httpsAgent; + this.paramsSerializer = options.paramsSerializer; + this.showDeprecationWarnings(options); + this.validate(); + } + return (0,_babel_runtime_helpers_createClass__WEBPACK_IMPORTED_MODULE_2__["default"])(Configuration, [{ + key: "validate", + value: function validate() { + if (this.nodes == null || this.nodes.length === 0 || this.validateNodes()) { + throw new _Errors__WEBPACK_IMPORTED_MODULE_4__.MissingConfigurationError("Ensure that nodes[].protocol, nodes[].host and nodes[].port are set"); } - - if ((isFileList = _utils_js__WEBPACK_IMPORTED_MODULE_0__["default"].isFileList(data)) || contentType.indexOf('multipart/form-data') > -1) { - const _FormData = this.env && this.env.FormData; - - return (0,_helpers_toFormData_js__WEBPACK_IMPORTED_MODULE_4__["default"])( - isFileList ? {'files[]': data} : data, - _FormData && new _FormData(), - this.formSerializer - ); + if (this.nearestNode != null && this.isNodeMissingAnyParameters(this.nearestNode)) { + throw new _Errors__WEBPACK_IMPORTED_MODULE_4__.MissingConfigurationError("Ensure that nearestNodes.protocol, nearestNodes.host and nearestNodes.port are set"); + } + if (this.apiKey == null) { + throw new _Errors__WEBPACK_IMPORTED_MODULE_4__.MissingConfigurationError("Ensure that apiKey is set"); } + return true; } - - if (isObjectPayload || hasJSONContentType ) { - headers.setContentType('application/json', false); - return stringifySafely(data); + }, { + key: "validateNodes", + value: function validateNodes() { + var _this2 = this; + return this.nodes.some(function (node) { + return _this2.isNodeMissingAnyParameters(node); + }); } - - return data; - }], - - transformResponse: [function transformResponse(data) { - const transitional = this.transitional || defaults.transitional; - const forcedJSONParsing = transitional && transitional.forcedJSONParsing; - const JSONRequested = this.responseType === 'json'; - - if (_utils_js__WEBPACK_IMPORTED_MODULE_0__["default"].isResponse(data) || _utils_js__WEBPACK_IMPORTED_MODULE_0__["default"].isReadableStream(data)) { - return data; + }, { + key: "isNodeMissingAnyParameters", + value: function isNodeMissingAnyParameters(node) { + return !["protocol", "host", "port", "path"].every(function (key) { + return node.hasOwnProperty(key); + }) && node["url"] == null; } - - if (data && _utils_js__WEBPACK_IMPORTED_MODULE_0__["default"].isString(data) && ((forcedJSONParsing && !this.responseType) || JSONRequested)) { - const silentJSONParsing = transitional && transitional.silentJSONParsing; - const strictJSONParsing = !silentJSONParsing && JSONRequested; - - try { - return JSON.parse(data); - } catch (e) { - if (strictJSONParsing) { - if (e.name === 'SyntaxError') { - throw _core_AxiosError_js__WEBPACK_IMPORTED_MODULE_5__["default"].from(e, _core_AxiosError_js__WEBPACK_IMPORTED_MODULE_5__["default"].ERR_BAD_RESPONSE, this, null, this.response); - } - throw e; + }, { + key: "setDefaultPathInNode", + value: function setDefaultPathInNode(node) { + if (node != null && !node.hasOwnProperty("path")) { + node["path"] = ""; + } + return node; + } + }, { + key: "setDefaultPortInNode", + value: function setDefaultPortInNode(node) { + if (node != null && !node.hasOwnProperty("port") && node.hasOwnProperty("protocol")) { + switch (node["protocol"]) { + case "https": + node["port"] = 443; + break; + case "http": + node["port"] = 80; + break; } } + return node; } - - return data; - }], - - /** - * A timeout in milliseconds to abort a request. If set to 0 (default) a - * timeout is not created. - */ - timeout: 0, - - xsrfCookieName: 'XSRF-TOKEN', - xsrfHeaderName: 'X-XSRF-TOKEN', - - maxContentLength: -1, - maxBodyLength: -1, - - env: { - FormData: _platform_index_js__WEBPACK_IMPORTED_MODULE_6__["default"].classes.FormData, - Blob: _platform_index_js__WEBPACK_IMPORTED_MODULE_6__["default"].classes.Blob - }, - - validateStatus: function validateStatus(status) { - return status >= 200 && status < 300; - }, - - headers: { - common: { - 'Accept': 'application/json, text/plain, */*', - 'Content-Type': undefined + }, { + key: "showDeprecationWarnings", + value: function showDeprecationWarnings(options) { + if (options.timeoutSeconds) { + this.logger.warn("Deprecation warning: timeoutSeconds is now renamed to connectionTimeoutSeconds"); + } + if (options.masterNode) { + this.logger.warn("Deprecation warning: masterNode is now consolidated to nodes, starting with Typesense Server v0.12"); + } + if (options.readReplicaNodes) { + this.logger.warn("Deprecation warning: readReplicaNodes is now consolidated to nodes, starting with Typesense Server v0.12"); + } } - } -}; - -_utils_js__WEBPACK_IMPORTED_MODULE_0__["default"].forEach(['delete', 'get', 'head', 'post', 'put', 'patch'], (method) => { - defaults.headers[method] = {}; -}); - -/* harmony default export */ const __WEBPACK_DEFAULT_EXPORT__ = (defaults); + }, { + key: "shuffleArray", + value: function shuffleArray(array) { + for (var i = array.length - 1; i > 0; i--) { + var j = Math.floor(Math.random() * (i + 1)); + var _ref = [array[j], array[i]]; + array[i] = _ref[0]; + array[j] = _ref[1]; + } + } + }]); +}(); /***/ }), -/***/ "./node_modules/axios/lib/defaults/transitional.js": -/*!*********************************************************!*\ - !*** ./node_modules/axios/lib/defaults/transitional.js ***! - \*********************************************************/ -/***/ ((__unused_webpack___webpack_module__, __webpack_exports__, __webpack_require__) => { +/***/ "./src/Typesense/Conversation.ts": +/*!***************************************!*\ + !*** ./src/Typesense/Conversation.ts ***! + \***************************************/ +/***/ ((__unused_webpack_module, __webpack_exports__, __webpack_require__) => { "use strict"; __webpack_require__.r(__webpack_exports__); /* harmony export */ __webpack_require__.d(__webpack_exports__, { -/* harmony export */ "default": () => (__WEBPACK_DEFAULT_EXPORT__) +/* harmony export */ "default": () => (/* binding */ Conversation) /* harmony export */ }); +/* harmony import */ var _babel_runtime_helpers_asyncToGenerator__WEBPACK_IMPORTED_MODULE_0__ = __webpack_require__(/*! @babel/runtime/helpers/asyncToGenerator */ "./node_modules/.pnpm/@babel+runtime@7.26.9/node_modules/@babel/runtime/helpers/esm/asyncToGenerator.js"); +/* harmony import */ var _babel_runtime_helpers_classCallCheck__WEBPACK_IMPORTED_MODULE_1__ = __webpack_require__(/*! @babel/runtime/helpers/classCallCheck */ "./node_modules/.pnpm/@babel+runtime@7.26.9/node_modules/@babel/runtime/helpers/esm/classCallCheck.js"); +/* harmony import */ var _babel_runtime_helpers_createClass__WEBPACK_IMPORTED_MODULE_2__ = __webpack_require__(/*! @babel/runtime/helpers/createClass */ "./node_modules/.pnpm/@babel+runtime@7.26.9/node_modules/@babel/runtime/helpers/esm/createClass.js"); +/* harmony import */ var _babel_runtime_regenerator__WEBPACK_IMPORTED_MODULE_3__ = __webpack_require__(/*! @babel/runtime/regenerator */ "./node_modules/.pnpm/@babel+runtime@7.26.9/node_modules/@babel/runtime/regenerator/index.js"); +/* harmony import */ var _babel_runtime_regenerator__WEBPACK_IMPORTED_MODULE_3___default = /*#__PURE__*/__webpack_require__.n(_babel_runtime_regenerator__WEBPACK_IMPORTED_MODULE_3__); +/* harmony import */ var _Conversations__WEBPACK_IMPORTED_MODULE_4__ = __webpack_require__(/*! ./Conversations */ "./src/Typesense/Conversations.ts"); -/* harmony default export */ const __WEBPACK_DEFAULT_EXPORT__ = ({ - silentJSONParsing: true, - forcedJSONParsing: true, - clarifyTimeoutError: false -}); -/***/ }), -/***/ "./node_modules/axios/lib/env/data.js": -/*!********************************************!*\ - !*** ./node_modules/axios/lib/env/data.js ***! - \********************************************/ -/***/ ((__unused_webpack___webpack_module__, __webpack_exports__, __webpack_require__) => { +var Conversation = /*#__PURE__*/function () { + function Conversation(id, apiCall) { + (0,_babel_runtime_helpers_classCallCheck__WEBPACK_IMPORTED_MODULE_1__["default"])(this, Conversation); + this.id = id; + this.apiCall = apiCall; + } + return (0,_babel_runtime_helpers_createClass__WEBPACK_IMPORTED_MODULE_2__["default"])(Conversation, [{ + key: "retrieve", + value: function () { + var _retrieve = (0,_babel_runtime_helpers_asyncToGenerator__WEBPACK_IMPORTED_MODULE_0__["default"])(/*#__PURE__*/_babel_runtime_regenerator__WEBPACK_IMPORTED_MODULE_3___default().mark(function _callee() { + return _babel_runtime_regenerator__WEBPACK_IMPORTED_MODULE_3___default().wrap(function _callee$(_context) { + while (1) switch (_context.prev = _context.next) { + case 0: + return _context.abrupt("return", this.apiCall.get(this.endpointPath())); + case 1: + case "end": + return _context.stop(); + } + }, _callee, this); + })); + function retrieve() { + return _retrieve.apply(this, arguments); + } + return retrieve; + }() + }, { + key: "update", + value: function () { + var _update = (0,_babel_runtime_helpers_asyncToGenerator__WEBPACK_IMPORTED_MODULE_0__["default"])(/*#__PURE__*/_babel_runtime_regenerator__WEBPACK_IMPORTED_MODULE_3___default().mark(function _callee2(params) { + return _babel_runtime_regenerator__WEBPACK_IMPORTED_MODULE_3___default().wrap(function _callee2$(_context2) { + while (1) switch (_context2.prev = _context2.next) { + case 0: + return _context2.abrupt("return", this.apiCall.put(this.endpointPath(), params)); + case 1: + case "end": + return _context2.stop(); + } + }, _callee2, this); + })); + function update(_x) { + return _update.apply(this, arguments); + } + return update; + }() + }, { + key: "delete", + value: function () { + var _delete2 = (0,_babel_runtime_helpers_asyncToGenerator__WEBPACK_IMPORTED_MODULE_0__["default"])(/*#__PURE__*/_babel_runtime_regenerator__WEBPACK_IMPORTED_MODULE_3___default().mark(function _callee3() { + return _babel_runtime_regenerator__WEBPACK_IMPORTED_MODULE_3___default().wrap(function _callee3$(_context3) { + while (1) switch (_context3.prev = _context3.next) { + case 0: + return _context3.abrupt("return", this.apiCall.delete(this.endpointPath())); + case 1: + case "end": + return _context3.stop(); + } + }, _callee3, this); + })); + function _delete() { + return _delete2.apply(this, arguments); + } + return _delete; + }() + }, { + key: "endpointPath", + value: function endpointPath() { + return "".concat(_Conversations__WEBPACK_IMPORTED_MODULE_4__["default"].RESOURCEPATH, "/").concat(encodeURIComponent(this.id)); + } + }]); +}(); -"use strict"; -__webpack_require__.r(__webpack_exports__); -/* harmony export */ __webpack_require__.d(__webpack_exports__, { -/* harmony export */ VERSION: () => (/* binding */ VERSION) -/* harmony export */ }); -const VERSION = "1.7.5"; /***/ }), -/***/ "./node_modules/axios/lib/helpers/AxiosURLSearchParams.js": -/*!****************************************************************!*\ - !*** ./node_modules/axios/lib/helpers/AxiosURLSearchParams.js ***! - \****************************************************************/ -/***/ ((__unused_webpack___webpack_module__, __webpack_exports__, __webpack_require__) => { +/***/ "./src/Typesense/ConversationModel.ts": +/*!********************************************!*\ + !*** ./src/Typesense/ConversationModel.ts ***! + \********************************************/ +/***/ ((__unused_webpack_module, __webpack_exports__, __webpack_require__) => { "use strict"; __webpack_require__.r(__webpack_exports__); /* harmony export */ __webpack_require__.d(__webpack_exports__, { -/* harmony export */ "default": () => (__WEBPACK_DEFAULT_EXPORT__) +/* harmony export */ "default": () => (/* binding */ ConversationModel) /* harmony export */ }); -/* harmony import */ var _toFormData_js__WEBPACK_IMPORTED_MODULE_0__ = __webpack_require__(/*! ./toFormData.js */ "./node_modules/axios/lib/helpers/toFormData.js"); - - - - -/** - * It encodes a string by replacing all characters that are not in the unreserved set with - * their percent-encoded equivalents - * - * @param {string} str - The string to encode. - * - * @returns {string} The encoded string. - */ -function encode(str) { - const charMap = { - '!': '%21', - "'": '%27', - '(': '%28', - ')': '%29', - '~': '%7E', - '%20': '+', - '%00': '\x00' - }; - return encodeURIComponent(str).replace(/[!'()~]|%20|%00/g, function replacer(match) { - return charMap[match]; - }); -} - -/** - * It takes a params object and converts it to a FormData object - * - * @param {Object} params - The parameters to be converted to a FormData object. - * @param {Object} options - The options object passed to the Axios constructor. - * - * @returns {void} - */ -function AxiosURLSearchParams(params, options) { - this._pairs = []; - - params && (0,_toFormData_js__WEBPACK_IMPORTED_MODULE_0__["default"])(params, this, options); -} +/* harmony import */ var _babel_runtime_helpers_asyncToGenerator__WEBPACK_IMPORTED_MODULE_0__ = __webpack_require__(/*! @babel/runtime/helpers/asyncToGenerator */ "./node_modules/.pnpm/@babel+runtime@7.26.9/node_modules/@babel/runtime/helpers/esm/asyncToGenerator.js"); +/* harmony import */ var _babel_runtime_helpers_classCallCheck__WEBPACK_IMPORTED_MODULE_1__ = __webpack_require__(/*! @babel/runtime/helpers/classCallCheck */ "./node_modules/.pnpm/@babel+runtime@7.26.9/node_modules/@babel/runtime/helpers/esm/classCallCheck.js"); +/* harmony import */ var _babel_runtime_helpers_createClass__WEBPACK_IMPORTED_MODULE_2__ = __webpack_require__(/*! @babel/runtime/helpers/createClass */ "./node_modules/.pnpm/@babel+runtime@7.26.9/node_modules/@babel/runtime/helpers/esm/createClass.js"); +/* harmony import */ var _babel_runtime_regenerator__WEBPACK_IMPORTED_MODULE_3__ = __webpack_require__(/*! @babel/runtime/regenerator */ "./node_modules/.pnpm/@babel+runtime@7.26.9/node_modules/@babel/runtime/regenerator/index.js"); +/* harmony import */ var _babel_runtime_regenerator__WEBPACK_IMPORTED_MODULE_3___default = /*#__PURE__*/__webpack_require__.n(_babel_runtime_regenerator__WEBPACK_IMPORTED_MODULE_3__); +/* harmony import */ var _ConversationModels__WEBPACK_IMPORTED_MODULE_4__ = __webpack_require__(/*! ./ConversationModels */ "./src/Typesense/ConversationModels.ts"); -const prototype = AxiosURLSearchParams.prototype; -prototype.append = function append(name, value) { - this._pairs.push([name, value]); -}; -prototype.toString = function toString(encoder) { - const _encode = encoder ? function(value) { - return encoder.call(this, value, encode); - } : encode; - return this._pairs.map(function each(pair) { - return _encode(pair[0]) + '=' + _encode(pair[1]); - }, '').join('&'); -}; -/* harmony default export */ const __WEBPACK_DEFAULT_EXPORT__ = (AxiosURLSearchParams); +var ConversationModel = /*#__PURE__*/function () { + function ConversationModel(id, apiCall) { + (0,_babel_runtime_helpers_classCallCheck__WEBPACK_IMPORTED_MODULE_1__["default"])(this, ConversationModel); + this.id = id; + this.apiCall = apiCall; + } + return (0,_babel_runtime_helpers_createClass__WEBPACK_IMPORTED_MODULE_2__["default"])(ConversationModel, [{ + key: "update", + value: function () { + var _update = (0,_babel_runtime_helpers_asyncToGenerator__WEBPACK_IMPORTED_MODULE_0__["default"])(/*#__PURE__*/_babel_runtime_regenerator__WEBPACK_IMPORTED_MODULE_3___default().mark(function _callee(params) { + return _babel_runtime_regenerator__WEBPACK_IMPORTED_MODULE_3___default().wrap(function _callee$(_context) { + while (1) switch (_context.prev = _context.next) { + case 0: + return _context.abrupt("return", this.apiCall.put(this.endpointPath(), params)); + case 1: + case "end": + return _context.stop(); + } + }, _callee, this); + })); + function update(_x) { + return _update.apply(this, arguments); + } + return update; + }() + }, { + key: "retrieve", + value: function () { + var _retrieve = (0,_babel_runtime_helpers_asyncToGenerator__WEBPACK_IMPORTED_MODULE_0__["default"])(/*#__PURE__*/_babel_runtime_regenerator__WEBPACK_IMPORTED_MODULE_3___default().mark(function _callee2() { + return _babel_runtime_regenerator__WEBPACK_IMPORTED_MODULE_3___default().wrap(function _callee2$(_context2) { + while (1) switch (_context2.prev = _context2.next) { + case 0: + return _context2.abrupt("return", this.apiCall.get(this.endpointPath())); + case 1: + case "end": + return _context2.stop(); + } + }, _callee2, this); + })); + function retrieve() { + return _retrieve.apply(this, arguments); + } + return retrieve; + }() + }, { + key: "delete", + value: function () { + var _delete2 = (0,_babel_runtime_helpers_asyncToGenerator__WEBPACK_IMPORTED_MODULE_0__["default"])(/*#__PURE__*/_babel_runtime_regenerator__WEBPACK_IMPORTED_MODULE_3___default().mark(function _callee3() { + return _babel_runtime_regenerator__WEBPACK_IMPORTED_MODULE_3___default().wrap(function _callee3$(_context3) { + while (1) switch (_context3.prev = _context3.next) { + case 0: + return _context3.abrupt("return", this.apiCall.delete(this.endpointPath())); + case 1: + case "end": + return _context3.stop(); + } + }, _callee3, this); + })); + function _delete() { + return _delete2.apply(this, arguments); + } + return _delete; + }() + }, { + key: "endpointPath", + value: function endpointPath() { + return "".concat(_ConversationModels__WEBPACK_IMPORTED_MODULE_4__["default"].RESOURCEPATH, "/").concat(encodeURIComponent(this.id)); + } + }]); +}(); /***/ }), -/***/ "./node_modules/axios/lib/helpers/HttpStatusCode.js": -/*!**********************************************************!*\ - !*** ./node_modules/axios/lib/helpers/HttpStatusCode.js ***! - \**********************************************************/ -/***/ ((__unused_webpack___webpack_module__, __webpack_exports__, __webpack_require__) => { +/***/ "./src/Typesense/ConversationModels.ts": +/*!*********************************************!*\ + !*** ./src/Typesense/ConversationModels.ts ***! + \*********************************************/ +/***/ ((__unused_webpack_module, __webpack_exports__, __webpack_require__) => { "use strict"; __webpack_require__.r(__webpack_exports__); /* harmony export */ __webpack_require__.d(__webpack_exports__, { -/* harmony export */ "default": () => (__WEBPACK_DEFAULT_EXPORT__) +/* harmony export */ "default": () => (/* binding */ ConversationModels) /* harmony export */ }); -const HttpStatusCode = { - Continue: 100, - SwitchingProtocols: 101, - Processing: 102, - EarlyHints: 103, - Ok: 200, - Created: 201, - Accepted: 202, - NonAuthoritativeInformation: 203, - NoContent: 204, - ResetContent: 205, - PartialContent: 206, - MultiStatus: 207, - AlreadyReported: 208, - ImUsed: 226, - MultipleChoices: 300, - MovedPermanently: 301, - Found: 302, - SeeOther: 303, - NotModified: 304, - UseProxy: 305, - Unused: 306, - TemporaryRedirect: 307, - PermanentRedirect: 308, - BadRequest: 400, - Unauthorized: 401, - PaymentRequired: 402, - Forbidden: 403, - NotFound: 404, - MethodNotAllowed: 405, - NotAcceptable: 406, - ProxyAuthenticationRequired: 407, - RequestTimeout: 408, - Conflict: 409, - Gone: 410, - LengthRequired: 411, - PreconditionFailed: 412, - PayloadTooLarge: 413, - UriTooLong: 414, - UnsupportedMediaType: 415, - RangeNotSatisfiable: 416, - ExpectationFailed: 417, - ImATeapot: 418, - MisdirectedRequest: 421, - UnprocessableEntity: 422, - Locked: 423, - FailedDependency: 424, - TooEarly: 425, - UpgradeRequired: 426, - PreconditionRequired: 428, - TooManyRequests: 429, - RequestHeaderFieldsTooLarge: 431, - UnavailableForLegalReasons: 451, - InternalServerError: 500, - NotImplemented: 501, - BadGateway: 502, - ServiceUnavailable: 503, - GatewayTimeout: 504, - HttpVersionNotSupported: 505, - VariantAlsoNegotiates: 506, - InsufficientStorage: 507, - LoopDetected: 508, - NotExtended: 510, - NetworkAuthenticationRequired: 511, -}; - -Object.entries(HttpStatusCode).forEach(([key, value]) => { - HttpStatusCode[value] = key; -}); - -/* harmony default export */ const __WEBPACK_DEFAULT_EXPORT__ = (HttpStatusCode); - - -/***/ }), +/* harmony import */ var _babel_runtime_helpers_asyncToGenerator__WEBPACK_IMPORTED_MODULE_0__ = __webpack_require__(/*! @babel/runtime/helpers/asyncToGenerator */ "./node_modules/.pnpm/@babel+runtime@7.26.9/node_modules/@babel/runtime/helpers/esm/asyncToGenerator.js"); +/* harmony import */ var _babel_runtime_helpers_classCallCheck__WEBPACK_IMPORTED_MODULE_1__ = __webpack_require__(/*! @babel/runtime/helpers/classCallCheck */ "./node_modules/.pnpm/@babel+runtime@7.26.9/node_modules/@babel/runtime/helpers/esm/classCallCheck.js"); +/* harmony import */ var _babel_runtime_helpers_createClass__WEBPACK_IMPORTED_MODULE_2__ = __webpack_require__(/*! @babel/runtime/helpers/createClass */ "./node_modules/.pnpm/@babel+runtime@7.26.9/node_modules/@babel/runtime/helpers/esm/createClass.js"); +/* harmony import */ var _babel_runtime_regenerator__WEBPACK_IMPORTED_MODULE_3__ = __webpack_require__(/*! @babel/runtime/regenerator */ "./node_modules/.pnpm/@babel+runtime@7.26.9/node_modules/@babel/runtime/regenerator/index.js"); +/* harmony import */ var _babel_runtime_regenerator__WEBPACK_IMPORTED_MODULE_3___default = /*#__PURE__*/__webpack_require__.n(_babel_runtime_regenerator__WEBPACK_IMPORTED_MODULE_3__); -/***/ "./node_modules/axios/lib/helpers/bind.js": -/*!************************************************!*\ - !*** ./node_modules/axios/lib/helpers/bind.js ***! - \************************************************/ -/***/ ((__unused_webpack___webpack_module__, __webpack_exports__, __webpack_require__) => { -"use strict"; -__webpack_require__.r(__webpack_exports__); -/* harmony export */ __webpack_require__.d(__webpack_exports__, { -/* harmony export */ "default": () => (/* binding */ bind) -/* harmony export */ }); -function bind(fn, thisArg) { - return function wrap() { - return fn.apply(thisArg, arguments); - }; -} +var RESOURCEPATH = "/conversations/models"; +var ConversationModels = /*#__PURE__*/function () { + function ConversationModels(apiCall) { + (0,_babel_runtime_helpers_classCallCheck__WEBPACK_IMPORTED_MODULE_1__["default"])(this, ConversationModels); + this.apiCall = apiCall; + this.apiCall = apiCall; + } + return (0,_babel_runtime_helpers_createClass__WEBPACK_IMPORTED_MODULE_2__["default"])(ConversationModels, [{ + key: "create", + value: function () { + var _create = (0,_babel_runtime_helpers_asyncToGenerator__WEBPACK_IMPORTED_MODULE_0__["default"])(/*#__PURE__*/_babel_runtime_regenerator__WEBPACK_IMPORTED_MODULE_3___default().mark(function _callee(params) { + return _babel_runtime_regenerator__WEBPACK_IMPORTED_MODULE_3___default().wrap(function _callee$(_context) { + while (1) switch (_context.prev = _context.next) { + case 0: + return _context.abrupt("return", this.apiCall.post(this.endpointPath(), params)); + case 1: + case "end": + return _context.stop(); + } + }, _callee, this); + })); + function create(_x) { + return _create.apply(this, arguments); + } + return create; + }() + }, { + key: "retrieve", + value: function () { + var _retrieve = (0,_babel_runtime_helpers_asyncToGenerator__WEBPACK_IMPORTED_MODULE_0__["default"])(/*#__PURE__*/_babel_runtime_regenerator__WEBPACK_IMPORTED_MODULE_3___default().mark(function _callee2() { + return _babel_runtime_regenerator__WEBPACK_IMPORTED_MODULE_3___default().wrap(function _callee2$(_context2) { + while (1) switch (_context2.prev = _context2.next) { + case 0: + return _context2.abrupt("return", this.apiCall.get(this.endpointPath())); + case 1: + case "end": + return _context2.stop(); + } + }, _callee2, this); + })); + function retrieve() { + return _retrieve.apply(this, arguments); + } + return retrieve; + }() + }, { + key: "endpointPath", + value: function endpointPath(operation) { + return "".concat(ConversationModels.RESOURCEPATH).concat(operation === undefined ? "" : "/" + encodeURIComponent(operation)); + } + }], [{ + key: "RESOURCEPATH", + get: function get() { + return RESOURCEPATH; + } + }]); +}(); /***/ }), -/***/ "./node_modules/axios/lib/helpers/buildURL.js": -/*!****************************************************!*\ - !*** ./node_modules/axios/lib/helpers/buildURL.js ***! - \****************************************************/ -/***/ ((__unused_webpack___webpack_module__, __webpack_exports__, __webpack_require__) => { +/***/ "./src/Typesense/Conversations.ts": +/*!****************************************!*\ + !*** ./src/Typesense/Conversations.ts ***! + \****************************************/ +/***/ ((__unused_webpack_module, __webpack_exports__, __webpack_require__) => { "use strict"; __webpack_require__.r(__webpack_exports__); /* harmony export */ __webpack_require__.d(__webpack_exports__, { -/* harmony export */ "default": () => (/* binding */ buildURL) +/* harmony export */ "default": () => (/* binding */ Conversations) /* harmony export */ }); -/* harmony import */ var _utils_js__WEBPACK_IMPORTED_MODULE_0__ = __webpack_require__(/*! ../utils.js */ "./node_modules/axios/lib/utils.js"); -/* harmony import */ var _helpers_AxiosURLSearchParams_js__WEBPACK_IMPORTED_MODULE_1__ = __webpack_require__(/*! ../helpers/AxiosURLSearchParams.js */ "./node_modules/axios/lib/helpers/AxiosURLSearchParams.js"); - - +/* harmony import */ var _babel_runtime_helpers_asyncToGenerator__WEBPACK_IMPORTED_MODULE_0__ = __webpack_require__(/*! @babel/runtime/helpers/asyncToGenerator */ "./node_modules/.pnpm/@babel+runtime@7.26.9/node_modules/@babel/runtime/helpers/esm/asyncToGenerator.js"); +/* harmony import */ var _babel_runtime_helpers_classCallCheck__WEBPACK_IMPORTED_MODULE_1__ = __webpack_require__(/*! @babel/runtime/helpers/classCallCheck */ "./node_modules/.pnpm/@babel+runtime@7.26.9/node_modules/@babel/runtime/helpers/esm/classCallCheck.js"); +/* harmony import */ var _babel_runtime_helpers_createClass__WEBPACK_IMPORTED_MODULE_2__ = __webpack_require__(/*! @babel/runtime/helpers/createClass */ "./node_modules/.pnpm/@babel+runtime@7.26.9/node_modules/@babel/runtime/helpers/esm/createClass.js"); +/* harmony import */ var _babel_runtime_helpers_defineProperty__WEBPACK_IMPORTED_MODULE_3__ = __webpack_require__(/*! @babel/runtime/helpers/defineProperty */ "./node_modules/.pnpm/@babel+runtime@7.26.9/node_modules/@babel/runtime/helpers/esm/defineProperty.js"); +/* harmony import */ var _babel_runtime_regenerator__WEBPACK_IMPORTED_MODULE_4__ = __webpack_require__(/*! @babel/runtime/regenerator */ "./node_modules/.pnpm/@babel+runtime@7.26.9/node_modules/@babel/runtime/regenerator/index.js"); +/* harmony import */ var _babel_runtime_regenerator__WEBPACK_IMPORTED_MODULE_4___default = /*#__PURE__*/__webpack_require__.n(_babel_runtime_regenerator__WEBPACK_IMPORTED_MODULE_4__); +/* harmony import */ var _ConversationModels__WEBPACK_IMPORTED_MODULE_5__ = __webpack_require__(/*! ./ConversationModels */ "./src/Typesense/ConversationModels.ts"); +/* harmony import */ var _ConversationModel__WEBPACK_IMPORTED_MODULE_6__ = __webpack_require__(/*! ./ConversationModel */ "./src/Typesense/ConversationModel.ts"); -/** - * It replaces all instances of the characters `:`, `$`, `,`, `+`, `[`, and `]` with their - * URI encoded counterparts - * - * @param {string} val The value to be encoded. - * - * @returns {string} The encoded value. - */ -function encode(val) { - return encodeURIComponent(val). - replace(/%3A/gi, ':'). - replace(/%24/g, '$'). - replace(/%2C/gi, ','). - replace(/%20/g, '+'). - replace(/%5B/gi, '['). - replace(/%5D/gi, ']'); -} -/** - * Build a URL by appending params to the end - * - * @param {string} url The base of the url (e.g., http://www.google.com) - * @param {object} [params] The params to be appended - * @param {?object} options - * - * @returns {string} The formatted url - */ -function buildURL(url, params, options) { - /*eslint no-param-reassign:0*/ - if (!params) { - return url; - } - - const _encode = options && options.encode || encode; - const serializeFn = options && options.serialize; - let serializedParams; - if (serializeFn) { - serializedParams = serializeFn(params, options); - } else { - serializedParams = _utils_js__WEBPACK_IMPORTED_MODULE_0__["default"].isURLSearchParams(params) ? - params.toString() : - new _helpers_AxiosURLSearchParams_js__WEBPACK_IMPORTED_MODULE_1__["default"](params, options).toString(_encode); +var RESOURCEPATH = "/conversations"; +var Conversations = /*#__PURE__*/function () { + function Conversations(apiCall) { + (0,_babel_runtime_helpers_classCallCheck__WEBPACK_IMPORTED_MODULE_1__["default"])(this, Conversations); + (0,_babel_runtime_helpers_defineProperty__WEBPACK_IMPORTED_MODULE_3__["default"])(this, "individualConversationModels", {}); + this.apiCall = apiCall; + this.apiCall = apiCall; + this._conversationsModels = new _ConversationModels__WEBPACK_IMPORTED_MODULE_5__["default"](this.apiCall); } - - if (serializedParams) { - const hashmarkIndex = url.indexOf("#"); - - if (hashmarkIndex !== -1) { - url = url.slice(0, hashmarkIndex); + return (0,_babel_runtime_helpers_createClass__WEBPACK_IMPORTED_MODULE_2__["default"])(Conversations, [{ + key: "retrieve", + value: function () { + var _retrieve = (0,_babel_runtime_helpers_asyncToGenerator__WEBPACK_IMPORTED_MODULE_0__["default"])(/*#__PURE__*/_babel_runtime_regenerator__WEBPACK_IMPORTED_MODULE_4___default().mark(function _callee() { + return _babel_runtime_regenerator__WEBPACK_IMPORTED_MODULE_4___default().wrap(function _callee$(_context) { + while (1) switch (_context.prev = _context.next) { + case 0: + return _context.abrupt("return", this.apiCall.get(RESOURCEPATH)); + case 1: + case "end": + return _context.stop(); + } + }, _callee, this); + })); + function retrieve() { + return _retrieve.apply(this, arguments); + } + return retrieve; + }() + }, { + key: "models", + value: function models(id) { + if (id === undefined) { + return this._conversationsModels; + } else { + if (this.individualConversationModels[id] === undefined) { + this.individualConversationModels[id] = new _ConversationModel__WEBPACK_IMPORTED_MODULE_6__["default"](id, this.apiCall); + } + return this.individualConversationModels[id]; + } } - url += (url.indexOf('?') === -1 ? '?' : '&') + serializedParams; - } - - return url; -} + }], [{ + key: "RESOURCEPATH", + get: function get() { + return RESOURCEPATH; + } + }]); +}(); /***/ }), -/***/ "./node_modules/axios/lib/helpers/combineURLs.js": -/*!*******************************************************!*\ - !*** ./node_modules/axios/lib/helpers/combineURLs.js ***! - \*******************************************************/ -/***/ ((__unused_webpack___webpack_module__, __webpack_exports__, __webpack_require__) => { +/***/ "./src/Typesense/Debug.ts": +/*!********************************!*\ + !*** ./src/Typesense/Debug.ts ***! + \********************************/ +/***/ ((__unused_webpack_module, __webpack_exports__, __webpack_require__) => { "use strict"; __webpack_require__.r(__webpack_exports__); /* harmony export */ __webpack_require__.d(__webpack_exports__, { -/* harmony export */ "default": () => (/* binding */ combineURLs) +/* harmony export */ "default": () => (/* binding */ Debug) /* harmony export */ }); +/* harmony import */ var _babel_runtime_helpers_asyncToGenerator__WEBPACK_IMPORTED_MODULE_0__ = __webpack_require__(/*! @babel/runtime/helpers/asyncToGenerator */ "./node_modules/.pnpm/@babel+runtime@7.26.9/node_modules/@babel/runtime/helpers/esm/asyncToGenerator.js"); +/* harmony import */ var _babel_runtime_helpers_classCallCheck__WEBPACK_IMPORTED_MODULE_1__ = __webpack_require__(/*! @babel/runtime/helpers/classCallCheck */ "./node_modules/.pnpm/@babel+runtime@7.26.9/node_modules/@babel/runtime/helpers/esm/classCallCheck.js"); +/* harmony import */ var _babel_runtime_helpers_createClass__WEBPACK_IMPORTED_MODULE_2__ = __webpack_require__(/*! @babel/runtime/helpers/createClass */ "./node_modules/.pnpm/@babel+runtime@7.26.9/node_modules/@babel/runtime/helpers/esm/createClass.js"); +/* harmony import */ var _babel_runtime_regenerator__WEBPACK_IMPORTED_MODULE_3__ = __webpack_require__(/*! @babel/runtime/regenerator */ "./node_modules/.pnpm/@babel+runtime@7.26.9/node_modules/@babel/runtime/regenerator/index.js"); +/* harmony import */ var _babel_runtime_regenerator__WEBPACK_IMPORTED_MODULE_3___default = /*#__PURE__*/__webpack_require__.n(_babel_runtime_regenerator__WEBPACK_IMPORTED_MODULE_3__); -/** - * Creates a new URL by combining the specified URLs - * - * @param {string} baseURL The base URL - * @param {string} relativeURL The relative URL - * - * @returns {string} The combined URL - */ -function combineURLs(baseURL, relativeURL) { - return relativeURL - ? baseURL.replace(/\/?\/$/, '') + '/' + relativeURL.replace(/^\/+/, '') - : baseURL; -} + + +var RESOURCEPATH = "/debug"; +var Debug = /*#__PURE__*/function () { + function Debug(apiCall) { + (0,_babel_runtime_helpers_classCallCheck__WEBPACK_IMPORTED_MODULE_1__["default"])(this, Debug); + this.apiCall = apiCall; + } + return (0,_babel_runtime_helpers_createClass__WEBPACK_IMPORTED_MODULE_2__["default"])(Debug, [{ + key: "retrieve", + value: function () { + var _retrieve = (0,_babel_runtime_helpers_asyncToGenerator__WEBPACK_IMPORTED_MODULE_0__["default"])(/*#__PURE__*/_babel_runtime_regenerator__WEBPACK_IMPORTED_MODULE_3___default().mark(function _callee() { + return _babel_runtime_regenerator__WEBPACK_IMPORTED_MODULE_3___default().wrap(function _callee$(_context) { + while (1) switch (_context.prev = _context.next) { + case 0: + return _context.abrupt("return", this.apiCall.get(RESOURCEPATH)); + case 1: + case "end": + return _context.stop(); + } + }, _callee, this); + })); + function retrieve() { + return _retrieve.apply(this, arguments); + } + return retrieve; + }() + }]); +}(); /***/ }), -/***/ "./node_modules/axios/lib/helpers/composeSignals.js": -/*!**********************************************************!*\ - !*** ./node_modules/axios/lib/helpers/composeSignals.js ***! - \**********************************************************/ -/***/ ((__unused_webpack___webpack_module__, __webpack_exports__, __webpack_require__) => { +/***/ "./src/Typesense/Document.ts": +/*!***********************************!*\ + !*** ./src/Typesense/Document.ts ***! + \***********************************/ +/***/ ((__unused_webpack_module, __webpack_exports__, __webpack_require__) => { "use strict"; __webpack_require__.r(__webpack_exports__); /* harmony export */ __webpack_require__.d(__webpack_exports__, { -/* harmony export */ "default": () => (__WEBPACK_DEFAULT_EXPORT__) +/* harmony export */ Document: () => (/* binding */ Document) /* harmony export */ }); -/* harmony import */ var _cancel_CanceledError_js__WEBPACK_IMPORTED_MODULE_1__ = __webpack_require__(/*! ../cancel/CanceledError.js */ "./node_modules/axios/lib/cancel/CanceledError.js"); -/* harmony import */ var _core_AxiosError_js__WEBPACK_IMPORTED_MODULE_0__ = __webpack_require__(/*! ../core/AxiosError.js */ "./node_modules/axios/lib/core/AxiosError.js"); - +/* harmony import */ var _babel_runtime_helpers_asyncToGenerator__WEBPACK_IMPORTED_MODULE_0__ = __webpack_require__(/*! @babel/runtime/helpers/asyncToGenerator */ "./node_modules/.pnpm/@babel+runtime@7.26.9/node_modules/@babel/runtime/helpers/esm/asyncToGenerator.js"); +/* harmony import */ var _babel_runtime_helpers_classCallCheck__WEBPACK_IMPORTED_MODULE_1__ = __webpack_require__(/*! @babel/runtime/helpers/classCallCheck */ "./node_modules/.pnpm/@babel+runtime@7.26.9/node_modules/@babel/runtime/helpers/esm/classCallCheck.js"); +/* harmony import */ var _babel_runtime_helpers_createClass__WEBPACK_IMPORTED_MODULE_2__ = __webpack_require__(/*! @babel/runtime/helpers/createClass */ "./node_modules/.pnpm/@babel+runtime@7.26.9/node_modules/@babel/runtime/helpers/esm/createClass.js"); +/* harmony import */ var _babel_runtime_regenerator__WEBPACK_IMPORTED_MODULE_3__ = __webpack_require__(/*! @babel/runtime/regenerator */ "./node_modules/.pnpm/@babel+runtime@7.26.9/node_modules/@babel/runtime/regenerator/index.js"); +/* harmony import */ var _babel_runtime_regenerator__WEBPACK_IMPORTED_MODULE_3___default = /*#__PURE__*/__webpack_require__.n(_babel_runtime_regenerator__WEBPACK_IMPORTED_MODULE_3__); +/* harmony import */ var _Collections__WEBPACK_IMPORTED_MODULE_4__ = __webpack_require__(/*! ./Collections */ "./src/Typesense/Collections.ts"); +/* harmony import */ var _Documents__WEBPACK_IMPORTED_MODULE_5__ = __webpack_require__(/*! ./Documents */ "./src/Typesense/Documents.ts"); -const composeSignals = (signals, timeout) => { - let controller = new AbortController(); - let aborted; - const onabort = function (cancel) { - if (!aborted) { - aborted = true; - unsubscribe(); - const err = cancel instanceof Error ? cancel : this.reason; - controller.abort(err instanceof _core_AxiosError_js__WEBPACK_IMPORTED_MODULE_0__["default"] ? err : new _cancel_CanceledError_js__WEBPACK_IMPORTED_MODULE_1__["default"](err instanceof Error ? err.message : err)); - } - } - let timer = timeout && setTimeout(() => { - onabort(new _core_AxiosError_js__WEBPACK_IMPORTED_MODULE_0__["default"](`timeout ${timeout} of ms exceeded`, _core_AxiosError_js__WEBPACK_IMPORTED_MODULE_0__["default"].ETIMEDOUT)) - }, timeout) - const unsubscribe = () => { - if (signals) { - timer && clearTimeout(timer); - timer = null; - signals.forEach(signal => { - signal && - (signal.removeEventListener ? signal.removeEventListener('abort', onabort) : signal.unsubscribe(onabort)); - }); - signals = null; +var Document = /*#__PURE__*/function () { + function Document(collectionName, documentId, apiCall) { + (0,_babel_runtime_helpers_classCallCheck__WEBPACK_IMPORTED_MODULE_1__["default"])(this, Document); + this.collectionName = collectionName; + this.documentId = documentId; + this.apiCall = apiCall; + } + return (0,_babel_runtime_helpers_createClass__WEBPACK_IMPORTED_MODULE_2__["default"])(Document, [{ + key: "retrieve", + value: function () { + var _retrieve = (0,_babel_runtime_helpers_asyncToGenerator__WEBPACK_IMPORTED_MODULE_0__["default"])(/*#__PURE__*/_babel_runtime_regenerator__WEBPACK_IMPORTED_MODULE_3___default().mark(function _callee() { + return _babel_runtime_regenerator__WEBPACK_IMPORTED_MODULE_3___default().wrap(function _callee$(_context) { + while (1) switch (_context.prev = _context.next) { + case 0: + return _context.abrupt("return", this.apiCall.get(this.endpointPath())); + case 1: + case "end": + return _context.stop(); + } + }, _callee, this); + })); + function retrieve() { + return _retrieve.apply(this, arguments); + } + return retrieve; + }() + }, { + key: "delete", + value: function () { + var _delete2 = (0,_babel_runtime_helpers_asyncToGenerator__WEBPACK_IMPORTED_MODULE_0__["default"])(/*#__PURE__*/_babel_runtime_regenerator__WEBPACK_IMPORTED_MODULE_3___default().mark(function _callee2(options) { + return _babel_runtime_regenerator__WEBPACK_IMPORTED_MODULE_3___default().wrap(function _callee2$(_context2) { + while (1) switch (_context2.prev = _context2.next) { + case 0: + return _context2.abrupt("return", this.apiCall.delete(this.endpointPath(), options)); + case 1: + case "end": + return _context2.stop(); + } + }, _callee2, this); + })); + function _delete(_x) { + return _delete2.apply(this, arguments); + } + return _delete; + }() + }, { + key: "update", + value: function () { + var _update = (0,_babel_runtime_helpers_asyncToGenerator__WEBPACK_IMPORTED_MODULE_0__["default"])(/*#__PURE__*/_babel_runtime_regenerator__WEBPACK_IMPORTED_MODULE_3___default().mark(function _callee3(partialDocument) { + var options, + _args3 = arguments; + return _babel_runtime_regenerator__WEBPACK_IMPORTED_MODULE_3___default().wrap(function _callee3$(_context3) { + while (1) switch (_context3.prev = _context3.next) { + case 0: + options = _args3.length > 1 && _args3[1] !== undefined ? _args3[1] : {}; + return _context3.abrupt("return", this.apiCall.patch(this.endpointPath(), partialDocument, options)); + case 2: + case "end": + return _context3.stop(); + } + }, _callee3, this); + })); + function update(_x2) { + return _update.apply(this, arguments); + } + return update; + }() + }, { + key: "endpointPath", + value: function endpointPath() { + return "".concat(_Collections__WEBPACK_IMPORTED_MODULE_4__["default"].RESOURCEPATH, "/").concat(encodeURIComponent(this.collectionName)).concat(_Documents__WEBPACK_IMPORTED_MODULE_5__["default"].RESOURCEPATH, "/").concat(encodeURIComponent(this.documentId)); } - } - - signals.forEach((signal) => signal && signal.addEventListener && signal.addEventListener('abort', onabort)); - - const {signal} = controller; - - signal.unsubscribe = unsubscribe; - - return [signal, () => { - timer && clearTimeout(timer); - timer = null; - }]; -} - -/* harmony default export */ const __WEBPACK_DEFAULT_EXPORT__ = (composeSignals); - + }]); +}(); /***/ }), -/***/ "./node_modules/axios/lib/helpers/cookies.js": -/*!***************************************************!*\ - !*** ./node_modules/axios/lib/helpers/cookies.js ***! - \***************************************************/ -/***/ ((__unused_webpack___webpack_module__, __webpack_exports__, __webpack_require__) => { +/***/ "./src/Typesense/Documents.ts": +/*!************************************!*\ + !*** ./src/Typesense/Documents.ts ***! + \************************************/ +/***/ ((__unused_webpack_module, __webpack_exports__, __webpack_require__) => { "use strict"; __webpack_require__.r(__webpack_exports__); /* harmony export */ __webpack_require__.d(__webpack_exports__, { -/* harmony export */ "default": () => (__WEBPACK_DEFAULT_EXPORT__) +/* harmony export */ "default": () => (/* binding */ Documents) /* harmony export */ }); -/* harmony import */ var _utils_js__WEBPACK_IMPORTED_MODULE_1__ = __webpack_require__(/*! ./../utils.js */ "./node_modules/axios/lib/utils.js"); -/* harmony import */ var _platform_index_js__WEBPACK_IMPORTED_MODULE_0__ = __webpack_require__(/*! ../platform/index.js */ "./node_modules/axios/lib/platform/index.js"); - - - -/* harmony default export */ const __WEBPACK_DEFAULT_EXPORT__ = (_platform_index_js__WEBPACK_IMPORTED_MODULE_0__["default"].hasStandardBrowserEnv ? - - // Standard browser envs support document.cookie - { - write(name, value, expires, path, domain, secure) { - const cookie = [name + '=' + encodeURIComponent(value)]; - - _utils_js__WEBPACK_IMPORTED_MODULE_1__["default"].isNumber(expires) && cookie.push('expires=' + new Date(expires).toGMTString()); - - _utils_js__WEBPACK_IMPORTED_MODULE_1__["default"].isString(path) && cookie.push('path=' + path); - - _utils_js__WEBPACK_IMPORTED_MODULE_1__["default"].isString(domain) && cookie.push('domain=' + domain); - - secure === true && cookie.push('secure'); - - document.cookie = cookie.join('; '); - }, - - read(name) { - const match = document.cookie.match(new RegExp('(^|;\\s*)(' + name + ')=([^;]*)')); - return (match ? decodeURIComponent(match[3]) : null); - }, - - remove(name) { - this.write(name, '', Date.now() - 86400000); - } - } +/* harmony import */ var _babel_runtime_helpers_asyncToGenerator__WEBPACK_IMPORTED_MODULE_0__ = __webpack_require__(/*! @babel/runtime/helpers/asyncToGenerator */ "./node_modules/.pnpm/@babel+runtime@7.26.9/node_modules/@babel/runtime/helpers/esm/asyncToGenerator.js"); +/* harmony import */ var _babel_runtime_helpers_classCallCheck__WEBPACK_IMPORTED_MODULE_1__ = __webpack_require__(/*! @babel/runtime/helpers/classCallCheck */ "./node_modules/.pnpm/@babel+runtime@7.26.9/node_modules/@babel/runtime/helpers/esm/classCallCheck.js"); +/* harmony import */ var _babel_runtime_helpers_createClass__WEBPACK_IMPORTED_MODULE_2__ = __webpack_require__(/*! @babel/runtime/helpers/createClass */ "./node_modules/.pnpm/@babel+runtime@7.26.9/node_modules/@babel/runtime/helpers/esm/createClass.js"); +/* harmony import */ var _babel_runtime_helpers_possibleConstructorReturn__WEBPACK_IMPORTED_MODULE_3__ = __webpack_require__(/*! @babel/runtime/helpers/possibleConstructorReturn */ "./node_modules/.pnpm/@babel+runtime@7.26.9/node_modules/@babel/runtime/helpers/esm/possibleConstructorReturn.js"); +/* harmony import */ var _babel_runtime_helpers_getPrototypeOf__WEBPACK_IMPORTED_MODULE_4__ = __webpack_require__(/*! @babel/runtime/helpers/getPrototypeOf */ "./node_modules/.pnpm/@babel+runtime@7.26.9/node_modules/@babel/runtime/helpers/esm/getPrototypeOf.js"); +/* harmony import */ var _babel_runtime_helpers_inherits__WEBPACK_IMPORTED_MODULE_5__ = __webpack_require__(/*! @babel/runtime/helpers/inherits */ "./node_modules/.pnpm/@babel+runtime@7.26.9/node_modules/@babel/runtime/helpers/esm/inherits.js"); +/* harmony import */ var _babel_runtime_regenerator__WEBPACK_IMPORTED_MODULE_6__ = __webpack_require__(/*! @babel/runtime/regenerator */ "./node_modules/.pnpm/@babel+runtime@7.26.9/node_modules/@babel/runtime/regenerator/index.js"); +/* harmony import */ var _babel_runtime_regenerator__WEBPACK_IMPORTED_MODULE_6___default = /*#__PURE__*/__webpack_require__.n(_babel_runtime_regenerator__WEBPACK_IMPORTED_MODULE_6__); +/* harmony import */ var _Errors__WEBPACK_IMPORTED_MODULE_7__ = __webpack_require__(/*! ./Errors */ "./src/Typesense/Errors/index.ts"); +/* harmony import */ var _SearchOnlyDocuments__WEBPACK_IMPORTED_MODULE_8__ = __webpack_require__(/*! ./SearchOnlyDocuments */ "./src/Typesense/SearchOnlyDocuments.ts"); - : - // Non-standard browser env (web workers, react-native) lack needed support. - { - write() {}, - read() { - return null; - }, - remove() {} - }); -/***/ }), -/***/ "./node_modules/axios/lib/helpers/formDataToJSON.js": -/*!**********************************************************!*\ - !*** ./node_modules/axios/lib/helpers/formDataToJSON.js ***! - \**********************************************************/ -/***/ ((__unused_webpack___webpack_module__, __webpack_exports__, __webpack_require__) => { -"use strict"; -__webpack_require__.r(__webpack_exports__); -/* harmony export */ __webpack_require__.d(__webpack_exports__, { -/* harmony export */ "default": () => (__WEBPACK_DEFAULT_EXPORT__) -/* harmony export */ }); -/* harmony import */ var _utils_js__WEBPACK_IMPORTED_MODULE_0__ = __webpack_require__(/*! ../utils.js */ "./node_modules/axios/lib/utils.js"); +function _callSuper(t, o, e) { return o = (0,_babel_runtime_helpers_getPrototypeOf__WEBPACK_IMPORTED_MODULE_4__["default"])(o), (0,_babel_runtime_helpers_possibleConstructorReturn__WEBPACK_IMPORTED_MODULE_3__["default"])(t, _isNativeReflectConstruct() ? Reflect.construct(o, e || [], (0,_babel_runtime_helpers_getPrototypeOf__WEBPACK_IMPORTED_MODULE_4__["default"])(t).constructor) : o.apply(t, e)); } +function _isNativeReflectConstruct() { try { var t = !Boolean.prototype.valueOf.call(Reflect.construct(Boolean, [], function () {})); } catch (t) {} return (_isNativeReflectConstruct = function _isNativeReflectConstruct() { return !!t; })(); } +// Todo: use generic to extract filter_by values -/** - * It takes a string like `foo[x][y][z]` and returns an array like `['foo', 'x', 'y', 'z'] - * - * @param {string} name - The name of the property to get. - * - * @returns An array of strings. - */ -function parsePropPath(name) { - // foo[x][y][z] - // foo.x.y.z - // foo-x-y-z - // foo x y z - return _utils_js__WEBPACK_IMPORTED_MODULE_0__["default"].matchAll(/\w+|\[(\w*)]/g, name).map(match => { - return match[0] === '[]' ? '' : match[1] || match[0]; - }); -} +// Todo: we could infer whether this is a grouped response by adding the search params as a generic -/** - * Convert an array to an object. - * - * @param {Array} arr - The array to convert to an object. - * - * @returns An object with the same keys and values as the array. - */ -function arrayToObject(arr) { - const obj = {}; - const keys = Object.keys(arr); - let i; - const len = keys.length; - let key; - for (i = 0; i < len; i++) { - key = keys[i]; - obj[key] = arr[key]; +var isNodeJSEnvironment = typeof process !== "undefined" && process.versions != null && process.versions.node != null; +var Documents = /*#__PURE__*/function (_ref) { + function Documents(collectionName, apiCall, configuration) { + (0,_babel_runtime_helpers_classCallCheck__WEBPACK_IMPORTED_MODULE_1__["default"])(this, Documents); + return _callSuper(this, Documents, [collectionName, apiCall, configuration]); } - return obj; -} - -/** - * It takes a FormData object and returns a JavaScript object - * - * @param {string} formData The FormData object to convert to JSON. - * - * @returns {Object | null} The converted object. - */ -function formDataToJSON(formData) { - function buildPath(path, value, target, index) { - let name = path[index++]; - - if (name === '__proto__') return true; - - const isNumericKey = Number.isFinite(+name); - const isLast = index >= path.length; - name = !name && _utils_js__WEBPACK_IMPORTED_MODULE_0__["default"].isArray(target) ? target.length : name; - - if (isLast) { - if (_utils_js__WEBPACK_IMPORTED_MODULE_0__["default"].hasOwnProp(target, name)) { - target[name] = [target[name], value]; - } else { - target[name] = value; + (0,_babel_runtime_helpers_inherits__WEBPACK_IMPORTED_MODULE_5__["default"])(Documents, _ref); + return (0,_babel_runtime_helpers_createClass__WEBPACK_IMPORTED_MODULE_2__["default"])(Documents, [{ + key: "create", + value: function () { + var _create = (0,_babel_runtime_helpers_asyncToGenerator__WEBPACK_IMPORTED_MODULE_0__["default"])(/*#__PURE__*/_babel_runtime_regenerator__WEBPACK_IMPORTED_MODULE_6___default().mark(function _callee(document) { + var options, + _args = arguments; + return _babel_runtime_regenerator__WEBPACK_IMPORTED_MODULE_6___default().wrap(function _callee$(_context) { + while (1) switch (_context.prev = _context.next) { + case 0: + options = _args.length > 1 && _args[1] !== undefined ? _args[1] : {}; + if (document) { + _context.next = 3; + break; + } + throw new Error("No document provided"); + case 3: + return _context.abrupt("return", this.apiCall.post(this.endpointPath(), document, options)); + case 4: + case "end": + return _context.stop(); + } + }, _callee, this); + })); + function create(_x) { + return _create.apply(this, arguments); + } + return create; + }() + }, { + key: "upsert", + value: function () { + var _upsert = (0,_babel_runtime_helpers_asyncToGenerator__WEBPACK_IMPORTED_MODULE_0__["default"])(/*#__PURE__*/_babel_runtime_regenerator__WEBPACK_IMPORTED_MODULE_6___default().mark(function _callee2(document) { + var options, + _args2 = arguments; + return _babel_runtime_regenerator__WEBPACK_IMPORTED_MODULE_6___default().wrap(function _callee2$(_context2) { + while (1) switch (_context2.prev = _context2.next) { + case 0: + options = _args2.length > 1 && _args2[1] !== undefined ? _args2[1] : {}; + if (document) { + _context2.next = 3; + break; + } + throw new Error("No document provided"); + case 3: + return _context2.abrupt("return", this.apiCall.post(this.endpointPath(), document, Object.assign({}, options, { + action: "upsert" + }))); + case 4: + case "end": + return _context2.stop(); + } + }, _callee2, this); + })); + function upsert(_x2) { + return _upsert.apply(this, arguments); + } + return upsert; + }() + }, { + key: "update", + value: function () { + var _update = (0,_babel_runtime_helpers_asyncToGenerator__WEBPACK_IMPORTED_MODULE_0__["default"])(/*#__PURE__*/_babel_runtime_regenerator__WEBPACK_IMPORTED_MODULE_6___default().mark(function _callee3(document) { + var options, + _args3 = arguments; + return _babel_runtime_regenerator__WEBPACK_IMPORTED_MODULE_6___default().wrap(function _callee3$(_context3) { + while (1) switch (_context3.prev = _context3.next) { + case 0: + options = _args3.length > 1 && _args3[1] !== undefined ? _args3[1] : {}; + if (document) { + _context3.next = 3; + break; + } + throw new Error("No document provided"); + case 3: + if (!(options["filter_by"] != null)) { + _context3.next = 7; + break; + } + return _context3.abrupt("return", this.apiCall.patch(this.endpointPath(), document, Object.assign({}, options))); + case 7: + return _context3.abrupt("return", this.apiCall.post(this.endpointPath(), document, Object.assign({}, options, { + action: "update" + }))); + case 8: + case "end": + return _context3.stop(); + } + }, _callee3, this); + })); + function update(_x3) { + return _update.apply(this, arguments); + } + return update; + }() + }, { + key: "delete", + value: function () { + var _delete2 = (0,_babel_runtime_helpers_asyncToGenerator__WEBPACK_IMPORTED_MODULE_0__["default"])(/*#__PURE__*/_babel_runtime_regenerator__WEBPACK_IMPORTED_MODULE_6___default().mark(function _callee4() { + var query, + _args4 = arguments; + return _babel_runtime_regenerator__WEBPACK_IMPORTED_MODULE_6___default().wrap(function _callee4$(_context4) { + while (1) switch (_context4.prev = _context4.next) { + case 0: + query = _args4.length > 0 && _args4[0] !== undefined ? _args4[0] : {}; + return _context4.abrupt("return", this.apiCall.delete(this.endpointPath(), query)); + case 2: + case "end": + return _context4.stop(); + } + }, _callee4, this); + })); + function _delete() { + return _delete2.apply(this, arguments); + } + return _delete; + }() + }, { + key: "createMany", + value: function () { + var _createMany = (0,_babel_runtime_helpers_asyncToGenerator__WEBPACK_IMPORTED_MODULE_0__["default"])(/*#__PURE__*/_babel_runtime_regenerator__WEBPACK_IMPORTED_MODULE_6___default().mark(function _callee5(documents) { + var options, + _args5 = arguments; + return _babel_runtime_regenerator__WEBPACK_IMPORTED_MODULE_6___default().wrap(function _callee5$(_context5) { + while (1) switch (_context5.prev = _context5.next) { + case 0: + options = _args5.length > 1 && _args5[1] !== undefined ? _args5[1] : {}; + this.configuration.logger.warn("createMany is deprecated and will be removed in a future version. Use import instead, which now takes both an array of documents or a JSONL string of documents"); + return _context5.abrupt("return", this.import(documents, options)); + case 3: + case "end": + return _context5.stop(); + } + }, _callee5, this); + })); + function createMany(_x4) { + return _createMany.apply(this, arguments); } - - return !isNumericKey; - } - - if (!target[name] || !_utils_js__WEBPACK_IMPORTED_MODULE_0__["default"].isObject(target[name])) { - target[name] = []; - } - - const result = buildPath(path, value, target[name], index); - - if (result && _utils_js__WEBPACK_IMPORTED_MODULE_0__["default"].isArray(target[name])) { - target[name] = arrayToObject(target[name]); - } - - return !isNumericKey; - } - - if (_utils_js__WEBPACK_IMPORTED_MODULE_0__["default"].isFormData(formData) && _utils_js__WEBPACK_IMPORTED_MODULE_0__["default"].isFunction(formData.entries)) { - const obj = {}; - - _utils_js__WEBPACK_IMPORTED_MODULE_0__["default"].forEachEntry(formData, (name, value) => { - buildPath(parsePropPath(name), value, obj, 0); - }); - - return obj; - } - - return null; -} - -/* harmony default export */ const __WEBPACK_DEFAULT_EXPORT__ = (formDataToJSON); - - -/***/ }), - -/***/ "./node_modules/axios/lib/helpers/isAbsoluteURL.js": -/*!*********************************************************!*\ - !*** ./node_modules/axios/lib/helpers/isAbsoluteURL.js ***! - \*********************************************************/ -/***/ ((__unused_webpack___webpack_module__, __webpack_exports__, __webpack_require__) => { - -"use strict"; -__webpack_require__.r(__webpack_exports__); -/* harmony export */ __webpack_require__.d(__webpack_exports__, { -/* harmony export */ "default": () => (/* binding */ isAbsoluteURL) -/* harmony export */ }); - - -/** - * Determines whether the specified URL is absolute - * - * @param {string} url The URL to test - * - * @returns {boolean} True if the specified URL is absolute, otherwise false - */ -function isAbsoluteURL(url) { - // A URL is considered absolute if it begins with "://" or "//" (protocol-relative URL). - // RFC 3986 defines scheme name as a sequence of characters beginning with a letter and followed - // by any combination of letters, digits, plus, period, or hyphen. - return /^([a-z][a-z\d+\-.]*:)?\/\//i.test(url); -} - - -/***/ }), - -/***/ "./node_modules/axios/lib/helpers/isAxiosError.js": -/*!********************************************************!*\ - !*** ./node_modules/axios/lib/helpers/isAxiosError.js ***! - \********************************************************/ -/***/ ((__unused_webpack___webpack_module__, __webpack_exports__, __webpack_require__) => { - -"use strict"; -__webpack_require__.r(__webpack_exports__); -/* harmony export */ __webpack_require__.d(__webpack_exports__, { -/* harmony export */ "default": () => (/* binding */ isAxiosError) -/* harmony export */ }); -/* harmony import */ var _utils_js__WEBPACK_IMPORTED_MODULE_0__ = __webpack_require__(/*! ./../utils.js */ "./node_modules/axios/lib/utils.js"); - - - - -/** - * Determines whether the payload is an error thrown by Axios - * - * @param {*} payload The value to test - * - * @returns {boolean} True if the payload is an error thrown by Axios, otherwise false - */ -function isAxiosError(payload) { - return _utils_js__WEBPACK_IMPORTED_MODULE_0__["default"].isObject(payload) && (payload.isAxiosError === true); -} - - -/***/ }), - -/***/ "./node_modules/axios/lib/helpers/isURLSameOrigin.js": -/*!***********************************************************!*\ - !*** ./node_modules/axios/lib/helpers/isURLSameOrigin.js ***! - \***********************************************************/ -/***/ ((__unused_webpack___webpack_module__, __webpack_exports__, __webpack_require__) => { - -"use strict"; -__webpack_require__.r(__webpack_exports__); -/* harmony export */ __webpack_require__.d(__webpack_exports__, { -/* harmony export */ "default": () => (__WEBPACK_DEFAULT_EXPORT__) -/* harmony export */ }); -/* harmony import */ var _utils_js__WEBPACK_IMPORTED_MODULE_1__ = __webpack_require__(/*! ./../utils.js */ "./node_modules/axios/lib/utils.js"); -/* harmony import */ var _platform_index_js__WEBPACK_IMPORTED_MODULE_0__ = __webpack_require__(/*! ../platform/index.js */ "./node_modules/axios/lib/platform/index.js"); - - - - - -/* harmony default export */ const __WEBPACK_DEFAULT_EXPORT__ = (_platform_index_js__WEBPACK_IMPORTED_MODULE_0__["default"].hasStandardBrowserEnv ? - -// Standard browser envs have full support of the APIs needed to test -// whether the request URL is of the same origin as current location. - (function standardBrowserEnv() { - const msie = _platform_index_js__WEBPACK_IMPORTED_MODULE_0__["default"].navigator && /(msie|trident)/i.test(_platform_index_js__WEBPACK_IMPORTED_MODULE_0__["default"].navigator.userAgent); - const urlParsingNode = document.createElement('a'); - let originURL; - + return createMany; + }() + /** + * Import a set of documents in a batch. + * @param {string|Array} documents - Can be a JSONL string of documents or an array of document objects. + * @param options + * @return {string|Array} Returns a JSONL string if the input was a JSONL string, otherwise it returns an array of results. + */ + }, { + key: "import", + value: function () { + var _import2 = (0,_babel_runtime_helpers_asyncToGenerator__WEBPACK_IMPORTED_MODULE_0__["default"])(/*#__PURE__*/_babel_runtime_regenerator__WEBPACK_IMPORTED_MODULE_6___default().mark(function _callee6(documents) { + var options, + documentsInJSONLFormat, + resultsInJSONLFormat, + resultsInJSONFormat, + failedItems, + _args6 = arguments; + return _babel_runtime_regenerator__WEBPACK_IMPORTED_MODULE_6___default().wrap(function _callee6$(_context6) { + while (1) switch (_context6.prev = _context6.next) { + case 0: + options = _args6.length > 1 && _args6[1] !== undefined ? _args6[1] : {}; + if (!Array.isArray(documents)) { + _context6.next = 15; + break; + } + if (!(documents.length === 0)) { + _context6.next = 4; + break; + } + throw new _Errors__WEBPACK_IMPORTED_MODULE_7__.RequestMalformed("No documents provided"); + case 4: + _context6.prev = 4; + documentsInJSONLFormat = documents.map(function (document) { + return JSON.stringify(document); + }).join("\n"); + _context6.next = 13; + break; + case 8: + _context6.prev = 8; + _context6.t0 = _context6["catch"](4); + if (!(_context6.t0 instanceof RangeError && _context6.t0.message.includes("Too many properties to enumerate"))) { + _context6.next = 12; + break; + } + throw new Error("".concat(_context6.t0, "\n It looks like you have reached a Node.js limit that restricts the number of keys in an Object: https://stackoverflow.com/questions/9282869/are-there-limits-to-the-number-of-properties-in-a-javascript-object\n\n Please try reducing the number of keys in your document, or using CURL to import your data.\n ")); + case 12: + throw new Error(_context6.t0); + case 13: + _context6.next = 18; + break; + case 15: + documentsInJSONLFormat = documents; + if (!isEmptyString(documentsInJSONLFormat)) { + _context6.next = 18; + break; + } + throw new _Errors__WEBPACK_IMPORTED_MODULE_7__.RequestMalformed("No documents provided"); + case 18: + _context6.next = 20; + return this.apiCall.performRequest("post", this.endpointPath("import"), { + queryParameters: options, + bodyParameters: documentsInJSONLFormat, + additionalHeaders: { + "Content-Type": "text/plain" + }, + skipConnectionTimeout: true, + // We never want to client-side-timeout on an import and retry, since imports are syncronous and we want to let them take as long as it takes to complete fully + enableKeepAlive: isNodeJSEnvironment ? true : false // This is to prevent ECONNRESET socket hang up errors. Reference: https://github.com/axios/axios/issues/2936#issuecomment-779439991 + }); + case 20: + resultsInJSONLFormat = _context6.sent; + if (!Array.isArray(documents)) { + _context6.next = 31; + break; + } + resultsInJSONFormat = resultsInJSONLFormat.split("\n").map(function (r) { + return JSON.parse(r); + }); + failedItems = resultsInJSONFormat.filter(function (r) { + return r.success === false; + }); + if (!(failedItems.length > 0)) { + _context6.next = 28; + break; + } + throw new _Errors__WEBPACK_IMPORTED_MODULE_7__.ImportError("".concat(resultsInJSONFormat.length - failedItems.length, " documents imported successfully, ").concat(failedItems.length, " documents failed during import. Use `error.importResults` from the raised exception to get a detailed error reason for each document."), resultsInJSONFormat, { + documentsInJSONLFormat: documentsInJSONLFormat, + options: options, + failedItems: failedItems, + successCount: resultsInJSONFormat.length - failedItems.length + }); + case 28: + return _context6.abrupt("return", resultsInJSONFormat); + case 29: + _context6.next = 32; + break; + case 31: + return _context6.abrupt("return", resultsInJSONLFormat); + case 32: + case "end": + return _context6.stop(); + } + }, _callee6, this, [[4, 8]]); + })); + function _import(_x5) { + return _import2.apply(this, arguments); + } + return _import; + }() + /** + * Imports documents from a NodeJS readable stream of JSONL. + */ + }, { + key: "importStream", + value: (function () { + var _importStream = (0,_babel_runtime_helpers_asyncToGenerator__WEBPACK_IMPORTED_MODULE_0__["default"])(/*#__PURE__*/_babel_runtime_regenerator__WEBPACK_IMPORTED_MODULE_6___default().mark(function _callee7(readableStream) { + var options, + resultsInJSONLFormat, + resultsInJSONFormat, + failedItems, + _args7 = arguments; + return _babel_runtime_regenerator__WEBPACK_IMPORTED_MODULE_6___default().wrap(function _callee7$(_context7) { + while (1) switch (_context7.prev = _context7.next) { + case 0: + options = _args7.length > 1 && _args7[1] !== undefined ? _args7[1] : {}; + _context7.next = 3; + return this.apiCall.performRequest("post", this.endpointPath("import"), { + queryParameters: options, + bodyParameters: readableStream, + additionalHeaders: { + "Content-Type": "text/plain" + }, + skipConnectionTimeout: true, + // We never want to client-side-timeout on an import and retry, since imports are syncronous and we want to let them take as long as it takes to complete fully + enableKeepAlive: isNodeJSEnvironment ? true : false // This is to prevent ECONNRESET socket hang up errors. Reference: https://github.com/axios/axios/issues/2936#issuecomment-779439991 + }); + case 3: + resultsInJSONLFormat = _context7.sent; + resultsInJSONFormat = resultsInJSONLFormat.split("\n").map(function (r) { + return JSON.parse(r); + }); + failedItems = resultsInJSONFormat.filter(function (r) { + return r.success === false; + }); + if (!(failedItems.length > 0)) { + _context7.next = 10; + break; + } + throw new _Errors__WEBPACK_IMPORTED_MODULE_7__.ImportError("".concat(resultsInJSONFormat.length - failedItems.length, " documents imported successfully, ").concat(failedItems.length, " documents failed during import. Use `error.importResults` from the raised exception to get a detailed error reason for each document."), resultsInJSONFormat, { + documentsInJSONLFormat: readableStream, + options: options, + failedItems: failedItems, + successCount: resultsInJSONFormat.length - failedItems.length + }); + case 10: + return _context7.abrupt("return", resultsInJSONFormat); + case 11: + case "end": + return _context7.stop(); + } + }, _callee7, this); + })); + function importStream(_x6) { + return _importStream.apply(this, arguments); + } + return importStream; + }() /** - * Parse a URL to discover its components - * - * @param {String} url The URL to be parsed - * @returns {Object} - */ - function resolveURL(url) { - let href = url; - - if (msie) { - // IE needs attribute set twice to normalize properties - urlParsingNode.setAttribute('href', href); - href = urlParsingNode.href; + * Returns a JSONL string for all the documents in this collection + */ + ) + }, { + key: "export", + value: (function () { + var _export2 = (0,_babel_runtime_helpers_asyncToGenerator__WEBPACK_IMPORTED_MODULE_0__["default"])(/*#__PURE__*/_babel_runtime_regenerator__WEBPACK_IMPORTED_MODULE_6___default().mark(function _callee8() { + var options, + _args8 = arguments; + return _babel_runtime_regenerator__WEBPACK_IMPORTED_MODULE_6___default().wrap(function _callee8$(_context8) { + while (1) switch (_context8.prev = _context8.next) { + case 0: + options = _args8.length > 0 && _args8[0] !== undefined ? _args8[0] : {}; + return _context8.abrupt("return", this.apiCall.get(this.endpointPath("export"), options)); + case 2: + case "end": + return _context8.stop(); + } + }, _callee8, this); + })); + function _export() { + return _export2.apply(this, arguments); } - - urlParsingNode.setAttribute('href', href); - - // urlParsingNode provides the UrlUtils interface - http://url.spec.whatwg.org/#urlutils - return { - href: urlParsingNode.href, - protocol: urlParsingNode.protocol ? urlParsingNode.protocol.replace(/:$/, '') : '', - host: urlParsingNode.host, - search: urlParsingNode.search ? urlParsingNode.search.replace(/^\?/, '') : '', - hash: urlParsingNode.hash ? urlParsingNode.hash.replace(/^#/, '') : '', - hostname: urlParsingNode.hostname, - port: urlParsingNode.port, - pathname: (urlParsingNode.pathname.charAt(0) === '/') ? - urlParsingNode.pathname : - '/' + urlParsingNode.pathname - }; - } - - originURL = resolveURL(window.location.href); - + return _export; + }() /** - * Determine if a URL shares the same origin as the current location - * - * @param {String} requestURL The URL to test - * @returns {boolean} True if URL shares the same origin, otherwise false - */ - return function isURLSameOrigin(requestURL) { - const parsed = (_utils_js__WEBPACK_IMPORTED_MODULE_1__["default"].isString(requestURL)) ? resolveURL(requestURL) : requestURL; - return (parsed.protocol === originURL.protocol && - parsed.host === originURL.host); - }; - })() : - - // Non standard browser envs (web workers, react-native) lack needed support. - (function nonStandardBrowserEnv() { - return function isURLSameOrigin() { - return true; - }; - })()); - - -/***/ }), - -/***/ "./node_modules/axios/lib/helpers/null.js": -/*!************************************************!*\ - !*** ./node_modules/axios/lib/helpers/null.js ***! - \************************************************/ -/***/ ((__unused_webpack___webpack_module__, __webpack_exports__, __webpack_require__) => { + * Returns a NodeJS readable stream of JSONL for all the documents in this collection. + */ + ) + }, { + key: "exportStream", + value: (function () { + var _exportStream = (0,_babel_runtime_helpers_asyncToGenerator__WEBPACK_IMPORTED_MODULE_0__["default"])(/*#__PURE__*/_babel_runtime_regenerator__WEBPACK_IMPORTED_MODULE_6___default().mark(function _callee9() { + var options, + _args9 = arguments; + return _babel_runtime_regenerator__WEBPACK_IMPORTED_MODULE_6___default().wrap(function _callee9$(_context9) { + while (1) switch (_context9.prev = _context9.next) { + case 0: + options = _args9.length > 0 && _args9[0] !== undefined ? _args9[0] : {}; + return _context9.abrupt("return", this.apiCall.get(this.endpointPath("export"), options, { + responseType: "stream" + })); + case 2: + case "end": + return _context9.stop(); + } + }, _callee9, this); + })); + function exportStream() { + return _exportStream.apply(this, arguments); + } + return exportStream; + }()) + }]); +}(_SearchOnlyDocuments__WEBPACK_IMPORTED_MODULE_8__.SearchOnlyDocuments); -"use strict"; -__webpack_require__.r(__webpack_exports__); -/* harmony export */ __webpack_require__.d(__webpack_exports__, { -/* harmony export */ "default": () => (__WEBPACK_DEFAULT_EXPORT__) -/* harmony export */ }); -// eslint-disable-next-line strict -/* harmony default export */ const __WEBPACK_DEFAULT_EXPORT__ = (null); +function isEmptyString(str) { + return str == null || str === "" || str.length === 0; +} +/** + * @deprecated Import from './Types' instead + */ /***/ }), -/***/ "./node_modules/axios/lib/helpers/parseHeaders.js": -/*!********************************************************!*\ - !*** ./node_modules/axios/lib/helpers/parseHeaders.js ***! - \********************************************************/ -/***/ ((__unused_webpack___webpack_module__, __webpack_exports__, __webpack_require__) => { +/***/ "./src/Typesense/Errors/HTTPError.ts": +/*!*******************************************!*\ + !*** ./src/Typesense/Errors/HTTPError.ts ***! + \*******************************************/ +/***/ ((__unused_webpack_module, __webpack_exports__, __webpack_require__) => { "use strict"; __webpack_require__.r(__webpack_exports__); /* harmony export */ __webpack_require__.d(__webpack_exports__, { -/* harmony export */ "default": () => (__WEBPACK_DEFAULT_EXPORT__) +/* harmony export */ "default": () => (/* binding */ HTTPError) /* harmony export */ }); -/* harmony import */ var _utils_js__WEBPACK_IMPORTED_MODULE_0__ = __webpack_require__(/*! ./../utils.js */ "./node_modules/axios/lib/utils.js"); - - - - -// RawAxiosHeaders whose duplicates are ignored by node -// c.f. https://nodejs.org/api/http.html#http_message_headers -const ignoreDuplicateOf = _utils_js__WEBPACK_IMPORTED_MODULE_0__["default"].toObjectSet([ - 'age', 'authorization', 'content-length', 'content-type', 'etag', - 'expires', 'from', 'host', 'if-modified-since', 'if-unmodified-since', - 'last-modified', 'location', 'max-forwards', 'proxy-authorization', - 'referer', 'retry-after', 'user-agent' -]); - -/** - * Parse headers into an object - * - * ``` - * Date: Wed, 27 Aug 2014 08:58:49 GMT - * Content-Type: application/json - * Connection: keep-alive - * Transfer-Encoding: chunked - * ``` - * - * @param {String} rawHeaders Headers needing to be parsed - * - * @returns {Object} Headers parsed into an object - */ -/* harmony default export */ const __WEBPACK_DEFAULT_EXPORT__ = (rawHeaders => { - const parsed = {}; - let key; - let val; - let i; - - rawHeaders && rawHeaders.split('\n').forEach(function parser(line) { - i = line.indexOf(':'); - key = line.substring(0, i).trim().toLowerCase(); - val = line.substring(i + 1).trim(); - - if (!key || (parsed[key] && ignoreDuplicateOf[key])) { - return; - } - - if (key === 'set-cookie') { - if (parsed[key]) { - parsed[key].push(val); - } else { - parsed[key] = [val]; - } - } else { - parsed[key] = parsed[key] ? parsed[key] + ', ' + val : val; - } - }); - - return parsed; -}); +/* harmony import */ var _babel_runtime_helpers_createClass__WEBPACK_IMPORTED_MODULE_0__ = __webpack_require__(/*! @babel/runtime/helpers/createClass */ "./node_modules/.pnpm/@babel+runtime@7.26.9/node_modules/@babel/runtime/helpers/esm/createClass.js"); +/* harmony import */ var _babel_runtime_helpers_classCallCheck__WEBPACK_IMPORTED_MODULE_1__ = __webpack_require__(/*! @babel/runtime/helpers/classCallCheck */ "./node_modules/.pnpm/@babel+runtime@7.26.9/node_modules/@babel/runtime/helpers/esm/classCallCheck.js"); +/* harmony import */ var _babel_runtime_helpers_possibleConstructorReturn__WEBPACK_IMPORTED_MODULE_2__ = __webpack_require__(/*! @babel/runtime/helpers/possibleConstructorReturn */ "./node_modules/.pnpm/@babel+runtime@7.26.9/node_modules/@babel/runtime/helpers/esm/possibleConstructorReturn.js"); +/* harmony import */ var _babel_runtime_helpers_getPrototypeOf__WEBPACK_IMPORTED_MODULE_3__ = __webpack_require__(/*! @babel/runtime/helpers/getPrototypeOf */ "./node_modules/.pnpm/@babel+runtime@7.26.9/node_modules/@babel/runtime/helpers/esm/getPrototypeOf.js"); +/* harmony import */ var _babel_runtime_helpers_inherits__WEBPACK_IMPORTED_MODULE_4__ = __webpack_require__(/*! @babel/runtime/helpers/inherits */ "./node_modules/.pnpm/@babel+runtime@7.26.9/node_modules/@babel/runtime/helpers/esm/inherits.js"); +/* harmony import */ var _TypesenseError__WEBPACK_IMPORTED_MODULE_5__ = __webpack_require__(/*! ./TypesenseError */ "./src/Typesense/Errors/TypesenseError.ts"); -/***/ }), -/***/ "./node_modules/axios/lib/helpers/parseProtocol.js": -/*!*********************************************************!*\ - !*** ./node_modules/axios/lib/helpers/parseProtocol.js ***! - \*********************************************************/ -/***/ ((__unused_webpack___webpack_module__, __webpack_exports__, __webpack_require__) => { -"use strict"; -__webpack_require__.r(__webpack_exports__); -/* harmony export */ __webpack_require__.d(__webpack_exports__, { -/* harmony export */ "default": () => (/* binding */ parseProtocol) -/* harmony export */ }); +function _callSuper(t, o, e) { return o = (0,_babel_runtime_helpers_getPrototypeOf__WEBPACK_IMPORTED_MODULE_3__["default"])(o), (0,_babel_runtime_helpers_possibleConstructorReturn__WEBPACK_IMPORTED_MODULE_2__["default"])(t, _isNativeReflectConstruct() ? Reflect.construct(o, e || [], (0,_babel_runtime_helpers_getPrototypeOf__WEBPACK_IMPORTED_MODULE_3__["default"])(t).constructor) : o.apply(t, e)); } +function _isNativeReflectConstruct() { try { var t = !Boolean.prototype.valueOf.call(Reflect.construct(Boolean, [], function () {})); } catch (t) {} return (_isNativeReflectConstruct = function _isNativeReflectConstruct() { return !!t; })(); } -function parseProtocol(url) { - const match = /^([-+\w]{1,25})(:?\/\/|:)/.exec(url); - return match && match[1] || ''; -} +var HTTPError = /*#__PURE__*/function (_TypesenseError) { + function HTTPError() { + (0,_babel_runtime_helpers_classCallCheck__WEBPACK_IMPORTED_MODULE_1__["default"])(this, HTTPError); + return _callSuper(this, HTTPError, arguments); + } + (0,_babel_runtime_helpers_inherits__WEBPACK_IMPORTED_MODULE_4__["default"])(HTTPError, _TypesenseError); + return (0,_babel_runtime_helpers_createClass__WEBPACK_IMPORTED_MODULE_0__["default"])(HTTPError); +}(_TypesenseError__WEBPACK_IMPORTED_MODULE_5__["default"]); /***/ }), -/***/ "./node_modules/axios/lib/helpers/progressEventReducer.js": -/*!****************************************************************!*\ - !*** ./node_modules/axios/lib/helpers/progressEventReducer.js ***! - \****************************************************************/ -/***/ ((__unused_webpack___webpack_module__, __webpack_exports__, __webpack_require__) => { +/***/ "./src/Typesense/Errors/ImportError.ts": +/*!*********************************************!*\ + !*** ./src/Typesense/Errors/ImportError.ts ***! + \*********************************************/ +/***/ ((__unused_webpack_module, __webpack_exports__, __webpack_require__) => { "use strict"; __webpack_require__.r(__webpack_exports__); /* harmony export */ __webpack_require__.d(__webpack_exports__, { -/* harmony export */ asyncDecorator: () => (/* binding */ asyncDecorator), -/* harmony export */ progressEventDecorator: () => (/* binding */ progressEventDecorator), -/* harmony export */ progressEventReducer: () => (/* binding */ progressEventReducer) +/* harmony export */ "default": () => (/* binding */ ImportError) /* harmony export */ }); -/* harmony import */ var _speedometer_js__WEBPACK_IMPORTED_MODULE_0__ = __webpack_require__(/*! ./speedometer.js */ "./node_modules/axios/lib/helpers/speedometer.js"); -/* harmony import */ var _throttle_js__WEBPACK_IMPORTED_MODULE_1__ = __webpack_require__(/*! ./throttle.js */ "./node_modules/axios/lib/helpers/throttle.js"); -/* harmony import */ var _utils_js__WEBPACK_IMPORTED_MODULE_2__ = __webpack_require__(/*! ../utils.js */ "./node_modules/axios/lib/utils.js"); - - - - -const progressEventReducer = (listener, isDownloadStream, freq = 3) => { - let bytesNotified = 0; - const _speedometer = (0,_speedometer_js__WEBPACK_IMPORTED_MODULE_0__["default"])(50, 250); - - return (0,_throttle_js__WEBPACK_IMPORTED_MODULE_1__["default"])(e => { - const loaded = e.loaded; - const total = e.lengthComputable ? e.total : undefined; - const progressBytes = loaded - bytesNotified; - const rate = _speedometer(progressBytes); - const inRange = loaded <= total; +/* harmony import */ var _babel_runtime_helpers_createClass__WEBPACK_IMPORTED_MODULE_0__ = __webpack_require__(/*! @babel/runtime/helpers/createClass */ "./node_modules/.pnpm/@babel+runtime@7.26.9/node_modules/@babel/runtime/helpers/esm/createClass.js"); +/* harmony import */ var _babel_runtime_helpers_classCallCheck__WEBPACK_IMPORTED_MODULE_1__ = __webpack_require__(/*! @babel/runtime/helpers/classCallCheck */ "./node_modules/.pnpm/@babel+runtime@7.26.9/node_modules/@babel/runtime/helpers/esm/classCallCheck.js"); +/* harmony import */ var _babel_runtime_helpers_possibleConstructorReturn__WEBPACK_IMPORTED_MODULE_2__ = __webpack_require__(/*! @babel/runtime/helpers/possibleConstructorReturn */ "./node_modules/.pnpm/@babel+runtime@7.26.9/node_modules/@babel/runtime/helpers/esm/possibleConstructorReturn.js"); +/* harmony import */ var _babel_runtime_helpers_getPrototypeOf__WEBPACK_IMPORTED_MODULE_3__ = __webpack_require__(/*! @babel/runtime/helpers/getPrototypeOf */ "./node_modules/.pnpm/@babel+runtime@7.26.9/node_modules/@babel/runtime/helpers/esm/getPrototypeOf.js"); +/* harmony import */ var _babel_runtime_helpers_inherits__WEBPACK_IMPORTED_MODULE_4__ = __webpack_require__(/*! @babel/runtime/helpers/inherits */ "./node_modules/.pnpm/@babel+runtime@7.26.9/node_modules/@babel/runtime/helpers/esm/inherits.js"); +/* harmony import */ var _TypesenseError__WEBPACK_IMPORTED_MODULE_5__ = __webpack_require__(/*! ./TypesenseError */ "./src/Typesense/Errors/TypesenseError.ts"); - bytesNotified = loaded; - const data = { - loaded, - total, - progress: total ? (loaded / total) : undefined, - bytes: progressBytes, - rate: rate ? rate : undefined, - estimated: rate && total && inRange ? (total - loaded) / rate : undefined, - event: e, - lengthComputable: total != null, - [isDownloadStream ? 'download' : 'upload']: true - }; - listener(data); - }, freq); -} -const progressEventDecorator = (total, throttled) => { - const lengthComputable = total != null; - return [(loaded) => throttled[0]({ - lengthComputable, - total, - loaded - }), throttled[1]]; -} +function _callSuper(t, o, e) { return o = (0,_babel_runtime_helpers_getPrototypeOf__WEBPACK_IMPORTED_MODULE_3__["default"])(o), (0,_babel_runtime_helpers_possibleConstructorReturn__WEBPACK_IMPORTED_MODULE_2__["default"])(t, _isNativeReflectConstruct() ? Reflect.construct(o, e || [], (0,_babel_runtime_helpers_getPrototypeOf__WEBPACK_IMPORTED_MODULE_3__["default"])(t).constructor) : o.apply(t, e)); } +function _isNativeReflectConstruct() { try { var t = !Boolean.prototype.valueOf.call(Reflect.construct(Boolean, [], function () {})); } catch (t) {} return (_isNativeReflectConstruct = function _isNativeReflectConstruct() { return !!t; })(); } -const asyncDecorator = (fn) => (...args) => _utils_js__WEBPACK_IMPORTED_MODULE_2__["default"].asap(() => fn(...args)); +var ImportError = /*#__PURE__*/function (_TypesenseError) { + function ImportError(message, importResults, payload) { + var _this; + (0,_babel_runtime_helpers_classCallCheck__WEBPACK_IMPORTED_MODULE_1__["default"])(this, ImportError); + _this = _callSuper(this, ImportError, [message]); + _this.importResults = importResults; + _this.payload = payload; + return _this; + } + (0,_babel_runtime_helpers_inherits__WEBPACK_IMPORTED_MODULE_4__["default"])(ImportError, _TypesenseError); + return (0,_babel_runtime_helpers_createClass__WEBPACK_IMPORTED_MODULE_0__["default"])(ImportError); +}(_TypesenseError__WEBPACK_IMPORTED_MODULE_5__["default"]); /***/ }), -/***/ "./node_modules/axios/lib/helpers/resolveConfig.js": -/*!*********************************************************!*\ - !*** ./node_modules/axios/lib/helpers/resolveConfig.js ***! - \*********************************************************/ -/***/ ((__unused_webpack___webpack_module__, __webpack_exports__, __webpack_require__) => { +/***/ "./src/Typesense/Errors/MissingConfigurationError.ts": +/*!***********************************************************!*\ + !*** ./src/Typesense/Errors/MissingConfigurationError.ts ***! + \***********************************************************/ +/***/ ((__unused_webpack_module, __webpack_exports__, __webpack_require__) => { "use strict"; __webpack_require__.r(__webpack_exports__); /* harmony export */ __webpack_require__.d(__webpack_exports__, { -/* harmony export */ "default": () => (__WEBPACK_DEFAULT_EXPORT__) +/* harmony export */ "default": () => (/* binding */ MissingConfigurationError) /* harmony export */ }); -/* harmony import */ var _platform_index_js__WEBPACK_IMPORTED_MODULE_5__ = __webpack_require__(/*! ../platform/index.js */ "./node_modules/axios/lib/platform/index.js"); -/* harmony import */ var _utils_js__WEBPACK_IMPORTED_MODULE_4__ = __webpack_require__(/*! ../utils.js */ "./node_modules/axios/lib/utils.js"); -/* harmony import */ var _isURLSameOrigin_js__WEBPACK_IMPORTED_MODULE_6__ = __webpack_require__(/*! ./isURLSameOrigin.js */ "./node_modules/axios/lib/helpers/isURLSameOrigin.js"); -/* harmony import */ var _cookies_js__WEBPACK_IMPORTED_MODULE_7__ = __webpack_require__(/*! ./cookies.js */ "./node_modules/axios/lib/helpers/cookies.js"); -/* harmony import */ var _core_buildFullPath_js__WEBPACK_IMPORTED_MODULE_3__ = __webpack_require__(/*! ../core/buildFullPath.js */ "./node_modules/axios/lib/core/buildFullPath.js"); -/* harmony import */ var _core_mergeConfig_js__WEBPACK_IMPORTED_MODULE_0__ = __webpack_require__(/*! ../core/mergeConfig.js */ "./node_modules/axios/lib/core/mergeConfig.js"); -/* harmony import */ var _core_AxiosHeaders_js__WEBPACK_IMPORTED_MODULE_1__ = __webpack_require__(/*! ../core/AxiosHeaders.js */ "./node_modules/axios/lib/core/AxiosHeaders.js"); -/* harmony import */ var _buildURL_js__WEBPACK_IMPORTED_MODULE_2__ = __webpack_require__(/*! ./buildURL.js */ "./node_modules/axios/lib/helpers/buildURL.js"); - - - +/* harmony import */ var _babel_runtime_helpers_createClass__WEBPACK_IMPORTED_MODULE_0__ = __webpack_require__(/*! @babel/runtime/helpers/createClass */ "./node_modules/.pnpm/@babel+runtime@7.26.9/node_modules/@babel/runtime/helpers/esm/createClass.js"); +/* harmony import */ var _babel_runtime_helpers_classCallCheck__WEBPACK_IMPORTED_MODULE_1__ = __webpack_require__(/*! @babel/runtime/helpers/classCallCheck */ "./node_modules/.pnpm/@babel+runtime@7.26.9/node_modules/@babel/runtime/helpers/esm/classCallCheck.js"); +/* harmony import */ var _babel_runtime_helpers_possibleConstructorReturn__WEBPACK_IMPORTED_MODULE_2__ = __webpack_require__(/*! @babel/runtime/helpers/possibleConstructorReturn */ "./node_modules/.pnpm/@babel+runtime@7.26.9/node_modules/@babel/runtime/helpers/esm/possibleConstructorReturn.js"); +/* harmony import */ var _babel_runtime_helpers_getPrototypeOf__WEBPACK_IMPORTED_MODULE_3__ = __webpack_require__(/*! @babel/runtime/helpers/getPrototypeOf */ "./node_modules/.pnpm/@babel+runtime@7.26.9/node_modules/@babel/runtime/helpers/esm/getPrototypeOf.js"); +/* harmony import */ var _babel_runtime_helpers_inherits__WEBPACK_IMPORTED_MODULE_4__ = __webpack_require__(/*! @babel/runtime/helpers/inherits */ "./node_modules/.pnpm/@babel+runtime@7.26.9/node_modules/@babel/runtime/helpers/esm/inherits.js"); +/* harmony import */ var _TypesenseError__WEBPACK_IMPORTED_MODULE_5__ = __webpack_require__(/*! ./TypesenseError */ "./src/Typesense/Errors/TypesenseError.ts"); +function _callSuper(t, o, e) { return o = (0,_babel_runtime_helpers_getPrototypeOf__WEBPACK_IMPORTED_MODULE_3__["default"])(o), (0,_babel_runtime_helpers_possibleConstructorReturn__WEBPACK_IMPORTED_MODULE_2__["default"])(t, _isNativeReflectConstruct() ? Reflect.construct(o, e || [], (0,_babel_runtime_helpers_getPrototypeOf__WEBPACK_IMPORTED_MODULE_3__["default"])(t).constructor) : o.apply(t, e)); } +function _isNativeReflectConstruct() { try { var t = !Boolean.prototype.valueOf.call(Reflect.construct(Boolean, [], function () {})); } catch (t) {} return (_isNativeReflectConstruct = function _isNativeReflectConstruct() { return !!t; })(); } -/* harmony default export */ const __WEBPACK_DEFAULT_EXPORT__ = ((config) => { - const newConfig = (0,_core_mergeConfig_js__WEBPACK_IMPORTED_MODULE_0__["default"])({}, config); +var MissingConfigurationError = /*#__PURE__*/function (_TypesenseError) { + function MissingConfigurationError() { + (0,_babel_runtime_helpers_classCallCheck__WEBPACK_IMPORTED_MODULE_1__["default"])(this, MissingConfigurationError); + return _callSuper(this, MissingConfigurationError, arguments); + } + (0,_babel_runtime_helpers_inherits__WEBPACK_IMPORTED_MODULE_4__["default"])(MissingConfigurationError, _TypesenseError); + return (0,_babel_runtime_helpers_createClass__WEBPACK_IMPORTED_MODULE_0__["default"])(MissingConfigurationError); +}(_TypesenseError__WEBPACK_IMPORTED_MODULE_5__["default"]); - let {data, withXSRFToken, xsrfHeaderName, xsrfCookieName, headers, auth} = newConfig; - newConfig.headers = headers = _core_AxiosHeaders_js__WEBPACK_IMPORTED_MODULE_1__["default"].from(headers); +/***/ }), - newConfig.url = (0,_buildURL_js__WEBPACK_IMPORTED_MODULE_2__["default"])((0,_core_buildFullPath_js__WEBPACK_IMPORTED_MODULE_3__["default"])(newConfig.baseURL, newConfig.url), config.params, config.paramsSerializer); +/***/ "./src/Typesense/Errors/ObjectAlreadyExists.ts": +/*!*****************************************************!*\ + !*** ./src/Typesense/Errors/ObjectAlreadyExists.ts ***! + \*****************************************************/ +/***/ ((__unused_webpack_module, __webpack_exports__, __webpack_require__) => { - // HTTP basic authentication - if (auth) { - headers.set('Authorization', 'Basic ' + - btoa((auth.username || '') + ':' + (auth.password ? unescape(encodeURIComponent(auth.password)) : '')) - ); - } +"use strict"; +__webpack_require__.r(__webpack_exports__); +/* harmony export */ __webpack_require__.d(__webpack_exports__, { +/* harmony export */ "default": () => (/* binding */ ObjectAlreadyExists) +/* harmony export */ }); +/* harmony import */ var _babel_runtime_helpers_createClass__WEBPACK_IMPORTED_MODULE_0__ = __webpack_require__(/*! @babel/runtime/helpers/createClass */ "./node_modules/.pnpm/@babel+runtime@7.26.9/node_modules/@babel/runtime/helpers/esm/createClass.js"); +/* harmony import */ var _babel_runtime_helpers_classCallCheck__WEBPACK_IMPORTED_MODULE_1__ = __webpack_require__(/*! @babel/runtime/helpers/classCallCheck */ "./node_modules/.pnpm/@babel+runtime@7.26.9/node_modules/@babel/runtime/helpers/esm/classCallCheck.js"); +/* harmony import */ var _babel_runtime_helpers_possibleConstructorReturn__WEBPACK_IMPORTED_MODULE_2__ = __webpack_require__(/*! @babel/runtime/helpers/possibleConstructorReturn */ "./node_modules/.pnpm/@babel+runtime@7.26.9/node_modules/@babel/runtime/helpers/esm/possibleConstructorReturn.js"); +/* harmony import */ var _babel_runtime_helpers_getPrototypeOf__WEBPACK_IMPORTED_MODULE_3__ = __webpack_require__(/*! @babel/runtime/helpers/getPrototypeOf */ "./node_modules/.pnpm/@babel+runtime@7.26.9/node_modules/@babel/runtime/helpers/esm/getPrototypeOf.js"); +/* harmony import */ var _babel_runtime_helpers_inherits__WEBPACK_IMPORTED_MODULE_4__ = __webpack_require__(/*! @babel/runtime/helpers/inherits */ "./node_modules/.pnpm/@babel+runtime@7.26.9/node_modules/@babel/runtime/helpers/esm/inherits.js"); +/* harmony import */ var _TypesenseError__WEBPACK_IMPORTED_MODULE_5__ = __webpack_require__(/*! ./TypesenseError */ "./src/Typesense/Errors/TypesenseError.ts"); - let contentType; - if (_utils_js__WEBPACK_IMPORTED_MODULE_4__["default"].isFormData(data)) { - if (_platform_index_js__WEBPACK_IMPORTED_MODULE_5__["default"].hasStandardBrowserEnv || _platform_index_js__WEBPACK_IMPORTED_MODULE_5__["default"].hasStandardBrowserWebWorkerEnv) { - headers.setContentType(undefined); // Let the browser set it - } else if ((contentType = headers.getContentType()) !== false) { - // fix semicolon duplication issue for ReactNative FormData implementation - const [type, ...tokens] = contentType ? contentType.split(';').map(token => token.trim()).filter(Boolean) : []; - headers.setContentType([type || 'multipart/form-data', ...tokens].join('; ')); - } - } - // Add xsrf header - // This is only done if running in a standard browser environment. - // Specifically not if we're in a web worker, or react-native. - if (_platform_index_js__WEBPACK_IMPORTED_MODULE_5__["default"].hasStandardBrowserEnv) { - withXSRFToken && _utils_js__WEBPACK_IMPORTED_MODULE_4__["default"].isFunction(withXSRFToken) && (withXSRFToken = withXSRFToken(newConfig)); - if (withXSRFToken || (withXSRFToken !== false && (0,_isURLSameOrigin_js__WEBPACK_IMPORTED_MODULE_6__["default"])(newConfig.url))) { - // Add xsrf header - const xsrfValue = xsrfHeaderName && xsrfCookieName && _cookies_js__WEBPACK_IMPORTED_MODULE_7__["default"].read(xsrfCookieName); +function _callSuper(t, o, e) { return o = (0,_babel_runtime_helpers_getPrototypeOf__WEBPACK_IMPORTED_MODULE_3__["default"])(o), (0,_babel_runtime_helpers_possibleConstructorReturn__WEBPACK_IMPORTED_MODULE_2__["default"])(t, _isNativeReflectConstruct() ? Reflect.construct(o, e || [], (0,_babel_runtime_helpers_getPrototypeOf__WEBPACK_IMPORTED_MODULE_3__["default"])(t).constructor) : o.apply(t, e)); } +function _isNativeReflectConstruct() { try { var t = !Boolean.prototype.valueOf.call(Reflect.construct(Boolean, [], function () {})); } catch (t) {} return (_isNativeReflectConstruct = function _isNativeReflectConstruct() { return !!t; })(); } - if (xsrfValue) { - headers.set(xsrfHeaderName, xsrfValue); - } - } +var ObjectAlreadyExists = /*#__PURE__*/function (_TypesenseError) { + function ObjectAlreadyExists() { + (0,_babel_runtime_helpers_classCallCheck__WEBPACK_IMPORTED_MODULE_1__["default"])(this, ObjectAlreadyExists); + return _callSuper(this, ObjectAlreadyExists, arguments); } - - return newConfig; -}); - + (0,_babel_runtime_helpers_inherits__WEBPACK_IMPORTED_MODULE_4__["default"])(ObjectAlreadyExists, _TypesenseError); + return (0,_babel_runtime_helpers_createClass__WEBPACK_IMPORTED_MODULE_0__["default"])(ObjectAlreadyExists); +}(_TypesenseError__WEBPACK_IMPORTED_MODULE_5__["default"]); /***/ }), -/***/ "./node_modules/axios/lib/helpers/speedometer.js": -/*!*******************************************************!*\ - !*** ./node_modules/axios/lib/helpers/speedometer.js ***! - \*******************************************************/ -/***/ ((__unused_webpack___webpack_module__, __webpack_exports__, __webpack_require__) => { +/***/ "./src/Typesense/Errors/ObjectNotFound.ts": +/*!************************************************!*\ + !*** ./src/Typesense/Errors/ObjectNotFound.ts ***! + \************************************************/ +/***/ ((__unused_webpack_module, __webpack_exports__, __webpack_require__) => { "use strict"; __webpack_require__.r(__webpack_exports__); /* harmony export */ __webpack_require__.d(__webpack_exports__, { -/* harmony export */ "default": () => (__WEBPACK_DEFAULT_EXPORT__) +/* harmony export */ "default": () => (/* binding */ ObjectNotFound) /* harmony export */ }); +/* harmony import */ var _babel_runtime_helpers_createClass__WEBPACK_IMPORTED_MODULE_0__ = __webpack_require__(/*! @babel/runtime/helpers/createClass */ "./node_modules/.pnpm/@babel+runtime@7.26.9/node_modules/@babel/runtime/helpers/esm/createClass.js"); +/* harmony import */ var _babel_runtime_helpers_classCallCheck__WEBPACK_IMPORTED_MODULE_1__ = __webpack_require__(/*! @babel/runtime/helpers/classCallCheck */ "./node_modules/.pnpm/@babel+runtime@7.26.9/node_modules/@babel/runtime/helpers/esm/classCallCheck.js"); +/* harmony import */ var _babel_runtime_helpers_possibleConstructorReturn__WEBPACK_IMPORTED_MODULE_2__ = __webpack_require__(/*! @babel/runtime/helpers/possibleConstructorReturn */ "./node_modules/.pnpm/@babel+runtime@7.26.9/node_modules/@babel/runtime/helpers/esm/possibleConstructorReturn.js"); +/* harmony import */ var _babel_runtime_helpers_getPrototypeOf__WEBPACK_IMPORTED_MODULE_3__ = __webpack_require__(/*! @babel/runtime/helpers/getPrototypeOf */ "./node_modules/.pnpm/@babel+runtime@7.26.9/node_modules/@babel/runtime/helpers/esm/getPrototypeOf.js"); +/* harmony import */ var _babel_runtime_helpers_inherits__WEBPACK_IMPORTED_MODULE_4__ = __webpack_require__(/*! @babel/runtime/helpers/inherits */ "./node_modules/.pnpm/@babel+runtime@7.26.9/node_modules/@babel/runtime/helpers/esm/inherits.js"); +/* harmony import */ var _TypesenseError__WEBPACK_IMPORTED_MODULE_5__ = __webpack_require__(/*! ./TypesenseError */ "./src/Typesense/Errors/TypesenseError.ts"); -/** - * Calculate data maxRate - * @param {Number} [samplesCount= 10] - * @param {Number} [min= 1000] - * @returns {Function} - */ -function speedometer(samplesCount, min) { - samplesCount = samplesCount || 10; - const bytes = new Array(samplesCount); - const timestamps = new Array(samplesCount); - let head = 0; - let tail = 0; - let firstSampleTS; - min = min !== undefined ? min : 1000; - return function push(chunkLength) { - const now = Date.now(); - const startedAt = timestamps[tail]; +function _callSuper(t, o, e) { return o = (0,_babel_runtime_helpers_getPrototypeOf__WEBPACK_IMPORTED_MODULE_3__["default"])(o), (0,_babel_runtime_helpers_possibleConstructorReturn__WEBPACK_IMPORTED_MODULE_2__["default"])(t, _isNativeReflectConstruct() ? Reflect.construct(o, e || [], (0,_babel_runtime_helpers_getPrototypeOf__WEBPACK_IMPORTED_MODULE_3__["default"])(t).constructor) : o.apply(t, e)); } +function _isNativeReflectConstruct() { try { var t = !Boolean.prototype.valueOf.call(Reflect.construct(Boolean, [], function () {})); } catch (t) {} return (_isNativeReflectConstruct = function _isNativeReflectConstruct() { return !!t; })(); } - if (!firstSampleTS) { - firstSampleTS = now; - } +var ObjectNotFound = /*#__PURE__*/function (_TypesenseError) { + function ObjectNotFound() { + (0,_babel_runtime_helpers_classCallCheck__WEBPACK_IMPORTED_MODULE_1__["default"])(this, ObjectNotFound); + return _callSuper(this, ObjectNotFound, arguments); + } + (0,_babel_runtime_helpers_inherits__WEBPACK_IMPORTED_MODULE_4__["default"])(ObjectNotFound, _TypesenseError); + return (0,_babel_runtime_helpers_createClass__WEBPACK_IMPORTED_MODULE_0__["default"])(ObjectNotFound); +}(_TypesenseError__WEBPACK_IMPORTED_MODULE_5__["default"]); - bytes[head] = chunkLength; - timestamps[head] = now; - let i = tail; - let bytesCount = 0; +/***/ }), - while (i !== head) { - bytesCount += bytes[i++]; - i = i % samplesCount; - } +/***/ "./src/Typesense/Errors/ObjectUnprocessable.ts": +/*!*****************************************************!*\ + !*** ./src/Typesense/Errors/ObjectUnprocessable.ts ***! + \*****************************************************/ +/***/ ((__unused_webpack_module, __webpack_exports__, __webpack_require__) => { - head = (head + 1) % samplesCount; +"use strict"; +__webpack_require__.r(__webpack_exports__); +/* harmony export */ __webpack_require__.d(__webpack_exports__, { +/* harmony export */ "default": () => (/* binding */ ObjectUnprocessable) +/* harmony export */ }); +/* harmony import */ var _babel_runtime_helpers_createClass__WEBPACK_IMPORTED_MODULE_0__ = __webpack_require__(/*! @babel/runtime/helpers/createClass */ "./node_modules/.pnpm/@babel+runtime@7.26.9/node_modules/@babel/runtime/helpers/esm/createClass.js"); +/* harmony import */ var _babel_runtime_helpers_classCallCheck__WEBPACK_IMPORTED_MODULE_1__ = __webpack_require__(/*! @babel/runtime/helpers/classCallCheck */ "./node_modules/.pnpm/@babel+runtime@7.26.9/node_modules/@babel/runtime/helpers/esm/classCallCheck.js"); +/* harmony import */ var _babel_runtime_helpers_possibleConstructorReturn__WEBPACK_IMPORTED_MODULE_2__ = __webpack_require__(/*! @babel/runtime/helpers/possibleConstructorReturn */ "./node_modules/.pnpm/@babel+runtime@7.26.9/node_modules/@babel/runtime/helpers/esm/possibleConstructorReturn.js"); +/* harmony import */ var _babel_runtime_helpers_getPrototypeOf__WEBPACK_IMPORTED_MODULE_3__ = __webpack_require__(/*! @babel/runtime/helpers/getPrototypeOf */ "./node_modules/.pnpm/@babel+runtime@7.26.9/node_modules/@babel/runtime/helpers/esm/getPrototypeOf.js"); +/* harmony import */ var _babel_runtime_helpers_inherits__WEBPACK_IMPORTED_MODULE_4__ = __webpack_require__(/*! @babel/runtime/helpers/inherits */ "./node_modules/.pnpm/@babel+runtime@7.26.9/node_modules/@babel/runtime/helpers/esm/inherits.js"); +/* harmony import */ var _TypesenseError__WEBPACK_IMPORTED_MODULE_5__ = __webpack_require__(/*! ./TypesenseError */ "./src/Typesense/Errors/TypesenseError.ts"); - if (head === tail) { - tail = (tail + 1) % samplesCount; - } - if (now - firstSampleTS < min) { - return; - } - const passed = startedAt && now - startedAt; - return passed ? Math.round(bytesCount * 1000 / passed) : undefined; - }; -} -/* harmony default export */ const __WEBPACK_DEFAULT_EXPORT__ = (speedometer); +function _callSuper(t, o, e) { return o = (0,_babel_runtime_helpers_getPrototypeOf__WEBPACK_IMPORTED_MODULE_3__["default"])(o), (0,_babel_runtime_helpers_possibleConstructorReturn__WEBPACK_IMPORTED_MODULE_2__["default"])(t, _isNativeReflectConstruct() ? Reflect.construct(o, e || [], (0,_babel_runtime_helpers_getPrototypeOf__WEBPACK_IMPORTED_MODULE_3__["default"])(t).constructor) : o.apply(t, e)); } +function _isNativeReflectConstruct() { try { var t = !Boolean.prototype.valueOf.call(Reflect.construct(Boolean, [], function () {})); } catch (t) {} return (_isNativeReflectConstruct = function _isNativeReflectConstruct() { return !!t; })(); } + +var ObjectUnprocessable = /*#__PURE__*/function (_TypesenseError) { + function ObjectUnprocessable() { + (0,_babel_runtime_helpers_classCallCheck__WEBPACK_IMPORTED_MODULE_1__["default"])(this, ObjectUnprocessable); + return _callSuper(this, ObjectUnprocessable, arguments); + } + (0,_babel_runtime_helpers_inherits__WEBPACK_IMPORTED_MODULE_4__["default"])(ObjectUnprocessable, _TypesenseError); + return (0,_babel_runtime_helpers_createClass__WEBPACK_IMPORTED_MODULE_0__["default"])(ObjectUnprocessable); +}(_TypesenseError__WEBPACK_IMPORTED_MODULE_5__["default"]); /***/ }), -/***/ "./node_modules/axios/lib/helpers/spread.js": +/***/ "./src/Typesense/Errors/RequestMalformed.ts": /*!**************************************************!*\ - !*** ./node_modules/axios/lib/helpers/spread.js ***! + !*** ./src/Typesense/Errors/RequestMalformed.ts ***! \**************************************************/ -/***/ ((__unused_webpack___webpack_module__, __webpack_exports__, __webpack_require__) => { +/***/ ((__unused_webpack_module, __webpack_exports__, __webpack_require__) => { "use strict"; __webpack_require__.r(__webpack_exports__); /* harmony export */ __webpack_require__.d(__webpack_exports__, { -/* harmony export */ "default": () => (/* binding */ spread) +/* harmony export */ "default": () => (/* binding */ RequestMalformed) /* harmony export */ }); +/* harmony import */ var _babel_runtime_helpers_createClass__WEBPACK_IMPORTED_MODULE_0__ = __webpack_require__(/*! @babel/runtime/helpers/createClass */ "./node_modules/.pnpm/@babel+runtime@7.26.9/node_modules/@babel/runtime/helpers/esm/createClass.js"); +/* harmony import */ var _babel_runtime_helpers_classCallCheck__WEBPACK_IMPORTED_MODULE_1__ = __webpack_require__(/*! @babel/runtime/helpers/classCallCheck */ "./node_modules/.pnpm/@babel+runtime@7.26.9/node_modules/@babel/runtime/helpers/esm/classCallCheck.js"); +/* harmony import */ var _babel_runtime_helpers_possibleConstructorReturn__WEBPACK_IMPORTED_MODULE_2__ = __webpack_require__(/*! @babel/runtime/helpers/possibleConstructorReturn */ "./node_modules/.pnpm/@babel+runtime@7.26.9/node_modules/@babel/runtime/helpers/esm/possibleConstructorReturn.js"); +/* harmony import */ var _babel_runtime_helpers_getPrototypeOf__WEBPACK_IMPORTED_MODULE_3__ = __webpack_require__(/*! @babel/runtime/helpers/getPrototypeOf */ "./node_modules/.pnpm/@babel+runtime@7.26.9/node_modules/@babel/runtime/helpers/esm/getPrototypeOf.js"); +/* harmony import */ var _babel_runtime_helpers_inherits__WEBPACK_IMPORTED_MODULE_4__ = __webpack_require__(/*! @babel/runtime/helpers/inherits */ "./node_modules/.pnpm/@babel+runtime@7.26.9/node_modules/@babel/runtime/helpers/esm/inherits.js"); +/* harmony import */ var _TypesenseError__WEBPACK_IMPORTED_MODULE_5__ = __webpack_require__(/*! ./TypesenseError */ "./src/Typesense/Errors/TypesenseError.ts"); -/** - * Syntactic sugar for invoking a function and expanding an array for arguments. - * - * Common use case would be to use `Function.prototype.apply`. - * - * ```js - * function f(x, y, z) {} - * var args = [1, 2, 3]; - * f.apply(null, args); - * ``` - * - * With `spread` this example can be re-written. - * - * ```js - * spread(function(x, y, z) {})([1, 2, 3]); - * ``` - * - * @param {Function} callback - * - * @returns {Function} - */ -function spread(callback) { - return function wrap(arr) { - return callback.apply(null, arr); - }; -} - -/***/ }), -/***/ "./node_modules/axios/lib/helpers/throttle.js": -/*!****************************************************!*\ - !*** ./node_modules/axios/lib/helpers/throttle.js ***! - \****************************************************/ -/***/ ((__unused_webpack___webpack_module__, __webpack_exports__, __webpack_require__) => { -"use strict"; -__webpack_require__.r(__webpack_exports__); -/* harmony export */ __webpack_require__.d(__webpack_exports__, { -/* harmony export */ "default": () => (__WEBPACK_DEFAULT_EXPORT__) -/* harmony export */ }); -/** - * Throttle decorator - * @param {Function} fn - * @param {Number} freq - * @return {Function} - */ -function throttle(fn, freq) { - let timestamp = 0; - let threshold = 1000 / freq; - let lastArgs; - let timer; +function _callSuper(t, o, e) { return o = (0,_babel_runtime_helpers_getPrototypeOf__WEBPACK_IMPORTED_MODULE_3__["default"])(o), (0,_babel_runtime_helpers_possibleConstructorReturn__WEBPACK_IMPORTED_MODULE_2__["default"])(t, _isNativeReflectConstruct() ? Reflect.construct(o, e || [], (0,_babel_runtime_helpers_getPrototypeOf__WEBPACK_IMPORTED_MODULE_3__["default"])(t).constructor) : o.apply(t, e)); } +function _isNativeReflectConstruct() { try { var t = !Boolean.prototype.valueOf.call(Reflect.construct(Boolean, [], function () {})); } catch (t) {} return (_isNativeReflectConstruct = function _isNativeReflectConstruct() { return !!t; })(); } - const invoke = (args, now = Date.now()) => { - timestamp = now; - lastArgs = null; - if (timer) { - clearTimeout(timer); - timer = null; - } - fn.apply(null, args); +var RequestMalformed = /*#__PURE__*/function (_TypesenseError) { + function RequestMalformed() { + (0,_babel_runtime_helpers_classCallCheck__WEBPACK_IMPORTED_MODULE_1__["default"])(this, RequestMalformed); + return _callSuper(this, RequestMalformed, arguments); } + (0,_babel_runtime_helpers_inherits__WEBPACK_IMPORTED_MODULE_4__["default"])(RequestMalformed, _TypesenseError); + return (0,_babel_runtime_helpers_createClass__WEBPACK_IMPORTED_MODULE_0__["default"])(RequestMalformed); +}(_TypesenseError__WEBPACK_IMPORTED_MODULE_5__["default"]); - const throttled = (...args) => { - const now = Date.now(); - const passed = now - timestamp; - if ( passed >= threshold) { - invoke(args, now); - } else { - lastArgs = args; - if (!timer) { - timer = setTimeout(() => { - timer = null; - invoke(lastArgs) - }, threshold - passed); - } - } - } - const flush = () => lastArgs && invoke(lastArgs); +/***/ }), + +/***/ "./src/Typesense/Errors/RequestUnauthorized.ts": +/*!*****************************************************!*\ + !*** ./src/Typesense/Errors/RequestUnauthorized.ts ***! + \*****************************************************/ +/***/ ((__unused_webpack_module, __webpack_exports__, __webpack_require__) => { + +"use strict"; +__webpack_require__.r(__webpack_exports__); +/* harmony export */ __webpack_require__.d(__webpack_exports__, { +/* harmony export */ "default": () => (/* binding */ RequestUnauthorized) +/* harmony export */ }); +/* harmony import */ var _babel_runtime_helpers_createClass__WEBPACK_IMPORTED_MODULE_0__ = __webpack_require__(/*! @babel/runtime/helpers/createClass */ "./node_modules/.pnpm/@babel+runtime@7.26.9/node_modules/@babel/runtime/helpers/esm/createClass.js"); +/* harmony import */ var _babel_runtime_helpers_classCallCheck__WEBPACK_IMPORTED_MODULE_1__ = __webpack_require__(/*! @babel/runtime/helpers/classCallCheck */ "./node_modules/.pnpm/@babel+runtime@7.26.9/node_modules/@babel/runtime/helpers/esm/classCallCheck.js"); +/* harmony import */ var _babel_runtime_helpers_possibleConstructorReturn__WEBPACK_IMPORTED_MODULE_2__ = __webpack_require__(/*! @babel/runtime/helpers/possibleConstructorReturn */ "./node_modules/.pnpm/@babel+runtime@7.26.9/node_modules/@babel/runtime/helpers/esm/possibleConstructorReturn.js"); +/* harmony import */ var _babel_runtime_helpers_getPrototypeOf__WEBPACK_IMPORTED_MODULE_3__ = __webpack_require__(/*! @babel/runtime/helpers/getPrototypeOf */ "./node_modules/.pnpm/@babel+runtime@7.26.9/node_modules/@babel/runtime/helpers/esm/getPrototypeOf.js"); +/* harmony import */ var _babel_runtime_helpers_inherits__WEBPACK_IMPORTED_MODULE_4__ = __webpack_require__(/*! @babel/runtime/helpers/inherits */ "./node_modules/.pnpm/@babel+runtime@7.26.9/node_modules/@babel/runtime/helpers/esm/inherits.js"); +/* harmony import */ var _TypesenseError__WEBPACK_IMPORTED_MODULE_5__ = __webpack_require__(/*! ./TypesenseError */ "./src/Typesense/Errors/TypesenseError.ts"); + - return [throttled, flush]; -} -/* harmony default export */ const __WEBPACK_DEFAULT_EXPORT__ = (throttle); + + +function _callSuper(t, o, e) { return o = (0,_babel_runtime_helpers_getPrototypeOf__WEBPACK_IMPORTED_MODULE_3__["default"])(o), (0,_babel_runtime_helpers_possibleConstructorReturn__WEBPACK_IMPORTED_MODULE_2__["default"])(t, _isNativeReflectConstruct() ? Reflect.construct(o, e || [], (0,_babel_runtime_helpers_getPrototypeOf__WEBPACK_IMPORTED_MODULE_3__["default"])(t).constructor) : o.apply(t, e)); } +function _isNativeReflectConstruct() { try { var t = !Boolean.prototype.valueOf.call(Reflect.construct(Boolean, [], function () {})); } catch (t) {} return (_isNativeReflectConstruct = function _isNativeReflectConstruct() { return !!t; })(); } + +var RequestUnauthorized = /*#__PURE__*/function (_TypesenseError) { + function RequestUnauthorized() { + (0,_babel_runtime_helpers_classCallCheck__WEBPACK_IMPORTED_MODULE_1__["default"])(this, RequestUnauthorized); + return _callSuper(this, RequestUnauthorized, arguments); + } + (0,_babel_runtime_helpers_inherits__WEBPACK_IMPORTED_MODULE_4__["default"])(RequestUnauthorized, _TypesenseError); + return (0,_babel_runtime_helpers_createClass__WEBPACK_IMPORTED_MODULE_0__["default"])(RequestUnauthorized); +}(_TypesenseError__WEBPACK_IMPORTED_MODULE_5__["default"]); /***/ }), -/***/ "./node_modules/axios/lib/helpers/toFormData.js": -/*!******************************************************!*\ - !*** ./node_modules/axios/lib/helpers/toFormData.js ***! - \******************************************************/ -/***/ ((__unused_webpack___webpack_module__, __webpack_exports__, __webpack_require__) => { +/***/ "./src/Typesense/Errors/ServerError.ts": +/*!*********************************************!*\ + !*** ./src/Typesense/Errors/ServerError.ts ***! + \*********************************************/ +/***/ ((__unused_webpack_module, __webpack_exports__, __webpack_require__) => { "use strict"; __webpack_require__.r(__webpack_exports__); /* harmony export */ __webpack_require__.d(__webpack_exports__, { -/* harmony export */ "default": () => (__WEBPACK_DEFAULT_EXPORT__) +/* harmony export */ "default": () => (/* binding */ ServerError) /* harmony export */ }); -/* harmony import */ var _utils_js__WEBPACK_IMPORTED_MODULE_0__ = __webpack_require__(/*! ../utils.js */ "./node_modules/axios/lib/utils.js"); -/* harmony import */ var _core_AxiosError_js__WEBPACK_IMPORTED_MODULE_2__ = __webpack_require__(/*! ../core/AxiosError.js */ "./node_modules/axios/lib/core/AxiosError.js"); -/* harmony import */ var _platform_node_classes_FormData_js__WEBPACK_IMPORTED_MODULE_1__ = __webpack_require__(/*! ../platform/node/classes/FormData.js */ "./node_modules/axios/lib/helpers/null.js"); +/* harmony import */ var _babel_runtime_helpers_createClass__WEBPACK_IMPORTED_MODULE_0__ = __webpack_require__(/*! @babel/runtime/helpers/createClass */ "./node_modules/.pnpm/@babel+runtime@7.26.9/node_modules/@babel/runtime/helpers/esm/createClass.js"); +/* harmony import */ var _babel_runtime_helpers_classCallCheck__WEBPACK_IMPORTED_MODULE_1__ = __webpack_require__(/*! @babel/runtime/helpers/classCallCheck */ "./node_modules/.pnpm/@babel+runtime@7.26.9/node_modules/@babel/runtime/helpers/esm/classCallCheck.js"); +/* harmony import */ var _babel_runtime_helpers_possibleConstructorReturn__WEBPACK_IMPORTED_MODULE_2__ = __webpack_require__(/*! @babel/runtime/helpers/possibleConstructorReturn */ "./node_modules/.pnpm/@babel+runtime@7.26.9/node_modules/@babel/runtime/helpers/esm/possibleConstructorReturn.js"); +/* harmony import */ var _babel_runtime_helpers_getPrototypeOf__WEBPACK_IMPORTED_MODULE_3__ = __webpack_require__(/*! @babel/runtime/helpers/getPrototypeOf */ "./node_modules/.pnpm/@babel+runtime@7.26.9/node_modules/@babel/runtime/helpers/esm/getPrototypeOf.js"); +/* harmony import */ var _babel_runtime_helpers_inherits__WEBPACK_IMPORTED_MODULE_4__ = __webpack_require__(/*! @babel/runtime/helpers/inherits */ "./node_modules/.pnpm/@babel+runtime@7.26.9/node_modules/@babel/runtime/helpers/esm/inherits.js"); +/* harmony import */ var _TypesenseError__WEBPACK_IMPORTED_MODULE_5__ = __webpack_require__(/*! ./TypesenseError */ "./src/Typesense/Errors/TypesenseError.ts"); -// temporary hotfix to avoid circular references until AxiosURLSearchParams is refactored +function _callSuper(t, o, e) { return o = (0,_babel_runtime_helpers_getPrototypeOf__WEBPACK_IMPORTED_MODULE_3__["default"])(o), (0,_babel_runtime_helpers_possibleConstructorReturn__WEBPACK_IMPORTED_MODULE_2__["default"])(t, _isNativeReflectConstruct() ? Reflect.construct(o, e || [], (0,_babel_runtime_helpers_getPrototypeOf__WEBPACK_IMPORTED_MODULE_3__["default"])(t).constructor) : o.apply(t, e)); } +function _isNativeReflectConstruct() { try { var t = !Boolean.prototype.valueOf.call(Reflect.construct(Boolean, [], function () {})); } catch (t) {} return (_isNativeReflectConstruct = function _isNativeReflectConstruct() { return !!t; })(); } -/** - * Determines if the given thing is a array or js object. - * - * @param {string} thing - The object or array to be visited. - * - * @returns {boolean} - */ -function isVisitable(thing) { - return _utils_js__WEBPACK_IMPORTED_MODULE_0__["default"].isPlainObject(thing) || _utils_js__WEBPACK_IMPORTED_MODULE_0__["default"].isArray(thing); -} +var ServerError = /*#__PURE__*/function (_TypesenseError) { + function ServerError() { + (0,_babel_runtime_helpers_classCallCheck__WEBPACK_IMPORTED_MODULE_1__["default"])(this, ServerError); + return _callSuper(this, ServerError, arguments); + } + (0,_babel_runtime_helpers_inherits__WEBPACK_IMPORTED_MODULE_4__["default"])(ServerError, _TypesenseError); + return (0,_babel_runtime_helpers_createClass__WEBPACK_IMPORTED_MODULE_0__["default"])(ServerError); +}(_TypesenseError__WEBPACK_IMPORTED_MODULE_5__["default"]); -/** - * It removes the brackets from the end of a string - * - * @param {string} key - The key of the parameter. - * - * @returns {string} the key without the brackets. - */ -function removeBrackets(key) { - return _utils_js__WEBPACK_IMPORTED_MODULE_0__["default"].endsWith(key, '[]') ? key.slice(0, -2) : key; -} -/** - * It takes a path, a key, and a boolean, and returns a string - * - * @param {string} path - The path to the current key. - * @param {string} key - The key of the current object being iterated over. - * @param {string} dots - If true, the key will be rendered with dots instead of brackets. - * - * @returns {string} The path to the current key. - */ -function renderKey(path, key, dots) { - if (!path) return key; - return path.concat(key).map(function each(token, i) { - // eslint-disable-next-line no-param-reassign - token = removeBrackets(token); - return !dots && i ? '[' + token + ']' : token; - }).join(dots ? '.' : ''); -} +/***/ }), -/** - * If the array is an array and none of its elements are visitable, then it's a flat array. - * - * @param {Array} arr - The array to check - * - * @returns {boolean} - */ -function isFlatArray(arr) { - return _utils_js__WEBPACK_IMPORTED_MODULE_0__["default"].isArray(arr) && !arr.some(isVisitable); -} +/***/ "./src/Typesense/Errors/TypesenseError.ts": +/*!************************************************!*\ + !*** ./src/Typesense/Errors/TypesenseError.ts ***! + \************************************************/ +/***/ ((__unused_webpack_module, __webpack_exports__, __webpack_require__) => { -const predicates = _utils_js__WEBPACK_IMPORTED_MODULE_0__["default"].toFlatObject(_utils_js__WEBPACK_IMPORTED_MODULE_0__["default"], {}, null, function filter(prop) { - return /^is[A-Z]/.test(prop); -}); +"use strict"; +__webpack_require__.r(__webpack_exports__); +/* harmony export */ __webpack_require__.d(__webpack_exports__, { +/* harmony export */ "default": () => (/* binding */ TypesenseError) +/* harmony export */ }); +/* harmony import */ var _babel_runtime_helpers_createClass__WEBPACK_IMPORTED_MODULE_0__ = __webpack_require__(/*! @babel/runtime/helpers/createClass */ "./node_modules/.pnpm/@babel+runtime@7.26.9/node_modules/@babel/runtime/helpers/esm/createClass.js"); +/* harmony import */ var _babel_runtime_helpers_classCallCheck__WEBPACK_IMPORTED_MODULE_1__ = __webpack_require__(/*! @babel/runtime/helpers/classCallCheck */ "./node_modules/.pnpm/@babel+runtime@7.26.9/node_modules/@babel/runtime/helpers/esm/classCallCheck.js"); +/* harmony import */ var _babel_runtime_helpers_possibleConstructorReturn__WEBPACK_IMPORTED_MODULE_2__ = __webpack_require__(/*! @babel/runtime/helpers/possibleConstructorReturn */ "./node_modules/.pnpm/@babel+runtime@7.26.9/node_modules/@babel/runtime/helpers/esm/possibleConstructorReturn.js"); +/* harmony import */ var _babel_runtime_helpers_getPrototypeOf__WEBPACK_IMPORTED_MODULE_3__ = __webpack_require__(/*! @babel/runtime/helpers/getPrototypeOf */ "./node_modules/.pnpm/@babel+runtime@7.26.9/node_modules/@babel/runtime/helpers/esm/getPrototypeOf.js"); +/* harmony import */ var _babel_runtime_helpers_inherits__WEBPACK_IMPORTED_MODULE_4__ = __webpack_require__(/*! @babel/runtime/helpers/inherits */ "./node_modules/.pnpm/@babel+runtime@7.26.9/node_modules/@babel/runtime/helpers/esm/inherits.js"); +/* harmony import */ var _babel_runtime_helpers_wrapNativeSuper__WEBPACK_IMPORTED_MODULE_5__ = __webpack_require__(/*! @babel/runtime/helpers/wrapNativeSuper */ "./node_modules/.pnpm/@babel+runtime@7.26.9/node_modules/@babel/runtime/helpers/esm/wrapNativeSuper.js"); -/** - * Convert a data object to FormData - * - * @param {Object} obj - * @param {?Object} [formData] - * @param {?Object} [options] - * @param {Function} [options.visitor] - * @param {Boolean} [options.metaTokens = true] - * @param {Boolean} [options.dots = false] - * @param {?Boolean} [options.indexes = false] - * - * @returns {Object} - **/ -/** - * It converts an object into a FormData object - * - * @param {Object} obj - The object to convert to form data. - * @param {string} formData - The FormData object to append to. - * @param {Object} options - * - * @returns - */ -function toFormData(obj, formData, options) { - if (!_utils_js__WEBPACK_IMPORTED_MODULE_0__["default"].isObject(obj)) { - throw new TypeError('target must be an object'); - } - // eslint-disable-next-line no-param-reassign - formData = formData || new (_platform_node_classes_FormData_js__WEBPACK_IMPORTED_MODULE_1__["default"] || FormData)(); - // eslint-disable-next-line no-param-reassign - options = _utils_js__WEBPACK_IMPORTED_MODULE_0__["default"].toFlatObject(options, { - metaTokens: true, - dots: false, - indexes: false - }, false, function defined(option, source) { - // eslint-disable-next-line no-eq-null,eqeqeq - return !_utils_js__WEBPACK_IMPORTED_MODULE_0__["default"].isUndefined(source[option]); - }); - const metaTokens = options.metaTokens; - // eslint-disable-next-line no-use-before-define - const visitor = options.visitor || defaultVisitor; - const dots = options.dots; - const indexes = options.indexes; - const _Blob = options.Blob || typeof Blob !== 'undefined' && Blob; - const useBlob = _Blob && _utils_js__WEBPACK_IMPORTED_MODULE_0__["default"].isSpecCompliantForm(formData); - if (!_utils_js__WEBPACK_IMPORTED_MODULE_0__["default"].isFunction(visitor)) { - throw new TypeError('visitor must be a function'); +function _callSuper(t, o, e) { return o = (0,_babel_runtime_helpers_getPrototypeOf__WEBPACK_IMPORTED_MODULE_3__["default"])(o), (0,_babel_runtime_helpers_possibleConstructorReturn__WEBPACK_IMPORTED_MODULE_2__["default"])(t, _isNativeReflectConstruct() ? Reflect.construct(o, e || [], (0,_babel_runtime_helpers_getPrototypeOf__WEBPACK_IMPORTED_MODULE_3__["default"])(t).constructor) : o.apply(t, e)); } +function _isNativeReflectConstruct() { try { var t = !Boolean.prototype.valueOf.call(Reflect.construct(Boolean, [], function () {})); } catch (t) {} return (_isNativeReflectConstruct = function _isNativeReflectConstruct() { return !!t; })(); } +var TypesenseError = /*#__PURE__*/function (_Error) { + // Source: https://stackoverflow.com/a/58417721/123545 + function TypesenseError(message, httpBody, httpStatus) { + var _this; + (0,_babel_runtime_helpers_classCallCheck__WEBPACK_IMPORTED_MODULE_1__["default"])(this, TypesenseError); + _this = _callSuper(this, TypesenseError, [message]); + _this.name = (this instanceof TypesenseError ? this.constructor : void 0).name; + _this.httpBody = httpBody; + _this.httpStatus = httpStatus; + Object.setPrototypeOf(_this, (this instanceof TypesenseError ? this.constructor : void 0).prototype); + return _this; } + (0,_babel_runtime_helpers_inherits__WEBPACK_IMPORTED_MODULE_4__["default"])(TypesenseError, _Error); + return (0,_babel_runtime_helpers_createClass__WEBPACK_IMPORTED_MODULE_0__["default"])(TypesenseError); +}(/*#__PURE__*/(0,_babel_runtime_helpers_wrapNativeSuper__WEBPACK_IMPORTED_MODULE_5__["default"])(Error)); - function convertValue(value) { - if (value === null) return ''; - if (_utils_js__WEBPACK_IMPORTED_MODULE_0__["default"].isDate(value)) { - return value.toISOString(); - } +/***/ }), - if (!useBlob && _utils_js__WEBPACK_IMPORTED_MODULE_0__["default"].isBlob(value)) { - throw new _core_AxiosError_js__WEBPACK_IMPORTED_MODULE_2__["default"]('Blob is not supported. Use a Buffer instead.'); - } +/***/ "./src/Typesense/Errors/index.ts": +/*!***************************************!*\ + !*** ./src/Typesense/Errors/index.ts ***! + \***************************************/ +/***/ ((__unused_webpack_module, __webpack_exports__, __webpack_require__) => { - if (_utils_js__WEBPACK_IMPORTED_MODULE_0__["default"].isArrayBuffer(value) || _utils_js__WEBPACK_IMPORTED_MODULE_0__["default"].isTypedArray(value)) { - return useBlob && typeof Blob === 'function' ? new Blob([value]) : Buffer.from(value); - } +"use strict"; +__webpack_require__.r(__webpack_exports__); +/* harmony export */ __webpack_require__.d(__webpack_exports__, { +/* harmony export */ HTTPError: () => (/* reexport safe */ _HTTPError__WEBPACK_IMPORTED_MODULE_0__["default"]), +/* harmony export */ ImportError: () => (/* reexport safe */ _ImportError__WEBPACK_IMPORTED_MODULE_8__["default"]), +/* harmony export */ MissingConfigurationError: () => (/* reexport safe */ _MissingConfigurationError__WEBPACK_IMPORTED_MODULE_1__["default"]), +/* harmony export */ ObjectAlreadyExists: () => (/* reexport safe */ _ObjectAlreadyExists__WEBPACK_IMPORTED_MODULE_2__["default"]), +/* harmony export */ ObjectNotFound: () => (/* reexport safe */ _ObjectNotFound__WEBPACK_IMPORTED_MODULE_3__["default"]), +/* harmony export */ ObjectUnprocessable: () => (/* reexport safe */ _ObjectUnprocessable__WEBPACK_IMPORTED_MODULE_4__["default"]), +/* harmony export */ RequestMalformed: () => (/* reexport safe */ _RequestMalformed__WEBPACK_IMPORTED_MODULE_5__["default"]), +/* harmony export */ RequestUnauthorized: () => (/* reexport safe */ _RequestUnauthorized__WEBPACK_IMPORTED_MODULE_6__["default"]), +/* harmony export */ ServerError: () => (/* reexport safe */ _ServerError__WEBPACK_IMPORTED_MODULE_7__["default"]), +/* harmony export */ TypesenseError: () => (/* reexport safe */ _TypesenseError__WEBPACK_IMPORTED_MODULE_9__["default"]) +/* harmony export */ }); +/* harmony import */ var _HTTPError__WEBPACK_IMPORTED_MODULE_0__ = __webpack_require__(/*! ./HTTPError */ "./src/Typesense/Errors/HTTPError.ts"); +/* harmony import */ var _MissingConfigurationError__WEBPACK_IMPORTED_MODULE_1__ = __webpack_require__(/*! ./MissingConfigurationError */ "./src/Typesense/Errors/MissingConfigurationError.ts"); +/* harmony import */ var _ObjectAlreadyExists__WEBPACK_IMPORTED_MODULE_2__ = __webpack_require__(/*! ./ObjectAlreadyExists */ "./src/Typesense/Errors/ObjectAlreadyExists.ts"); +/* harmony import */ var _ObjectNotFound__WEBPACK_IMPORTED_MODULE_3__ = __webpack_require__(/*! ./ObjectNotFound */ "./src/Typesense/Errors/ObjectNotFound.ts"); +/* harmony import */ var _ObjectUnprocessable__WEBPACK_IMPORTED_MODULE_4__ = __webpack_require__(/*! ./ObjectUnprocessable */ "./src/Typesense/Errors/ObjectUnprocessable.ts"); +/* harmony import */ var _RequestMalformed__WEBPACK_IMPORTED_MODULE_5__ = __webpack_require__(/*! ./RequestMalformed */ "./src/Typesense/Errors/RequestMalformed.ts"); +/* harmony import */ var _RequestUnauthorized__WEBPACK_IMPORTED_MODULE_6__ = __webpack_require__(/*! ./RequestUnauthorized */ "./src/Typesense/Errors/RequestUnauthorized.ts"); +/* harmony import */ var _ServerError__WEBPACK_IMPORTED_MODULE_7__ = __webpack_require__(/*! ./ServerError */ "./src/Typesense/Errors/ServerError.ts"); +/* harmony import */ var _ImportError__WEBPACK_IMPORTED_MODULE_8__ = __webpack_require__(/*! ./ImportError */ "./src/Typesense/Errors/ImportError.ts"); +/* harmony import */ var _TypesenseError__WEBPACK_IMPORTED_MODULE_9__ = __webpack_require__(/*! ./TypesenseError */ "./src/Typesense/Errors/TypesenseError.ts"); - return value; - } - /** - * Default visitor. - * - * @param {*} value - * @param {String|Number} key - * @param {Array} path - * @this {FormData} - * - * @returns {boolean} return true to visit the each prop of the value recursively - */ - function defaultVisitor(value, key, path) { - let arr = value; - if (value && !path && typeof value === 'object') { - if (_utils_js__WEBPACK_IMPORTED_MODULE_0__["default"].endsWith(key, '{}')) { - // eslint-disable-next-line no-param-reassign - key = metaTokens ? key : key.slice(0, -2); - // eslint-disable-next-line no-param-reassign - value = JSON.stringify(value); - } else if ( - (_utils_js__WEBPACK_IMPORTED_MODULE_0__["default"].isArray(value) && isFlatArray(value)) || - ((_utils_js__WEBPACK_IMPORTED_MODULE_0__["default"].isFileList(value) || _utils_js__WEBPACK_IMPORTED_MODULE_0__["default"].endsWith(key, '[]')) && (arr = _utils_js__WEBPACK_IMPORTED_MODULE_0__["default"].toArray(value)) - )) { - // eslint-disable-next-line no-param-reassign - key = removeBrackets(key); - arr.forEach(function each(el, index) { - !(_utils_js__WEBPACK_IMPORTED_MODULE_0__["default"].isUndefined(el) || el === null) && formData.append( - // eslint-disable-next-line no-nested-ternary - indexes === true ? renderKey([key], index, dots) : (indexes === null ? key : key + '[]'), - convertValue(el) - ); - }); - return false; - } - } - if (isVisitable(value)) { - return true; - } - formData.append(renderKey(path, key, dots), convertValue(value)); - return false; - } - const stack = []; - const exposedHelpers = Object.assign(predicates, { - defaultVisitor, - convertValue, - isVisitable - }); - function build(value, path) { - if (_utils_js__WEBPACK_IMPORTED_MODULE_0__["default"].isUndefined(value)) return; - if (stack.indexOf(value) !== -1) { - throw Error('Circular reference detected in ' + path.join('.')); - } - stack.push(value); +/***/ }), + +/***/ "./src/Typesense/Health.ts": +/*!*********************************!*\ + !*** ./src/Typesense/Health.ts ***! + \*********************************/ +/***/ ((__unused_webpack_module, __webpack_exports__, __webpack_require__) => { + +"use strict"; +__webpack_require__.r(__webpack_exports__); +/* harmony export */ __webpack_require__.d(__webpack_exports__, { +/* harmony export */ "default": () => (/* binding */ Health) +/* harmony export */ }); +/* harmony import */ var _babel_runtime_helpers_asyncToGenerator__WEBPACK_IMPORTED_MODULE_0__ = __webpack_require__(/*! @babel/runtime/helpers/asyncToGenerator */ "./node_modules/.pnpm/@babel+runtime@7.26.9/node_modules/@babel/runtime/helpers/esm/asyncToGenerator.js"); +/* harmony import */ var _babel_runtime_helpers_classCallCheck__WEBPACK_IMPORTED_MODULE_1__ = __webpack_require__(/*! @babel/runtime/helpers/classCallCheck */ "./node_modules/.pnpm/@babel+runtime@7.26.9/node_modules/@babel/runtime/helpers/esm/classCallCheck.js"); +/* harmony import */ var _babel_runtime_helpers_createClass__WEBPACK_IMPORTED_MODULE_2__ = __webpack_require__(/*! @babel/runtime/helpers/createClass */ "./node_modules/.pnpm/@babel+runtime@7.26.9/node_modules/@babel/runtime/helpers/esm/createClass.js"); +/* harmony import */ var _babel_runtime_regenerator__WEBPACK_IMPORTED_MODULE_3__ = __webpack_require__(/*! @babel/runtime/regenerator */ "./node_modules/.pnpm/@babel+runtime@7.26.9/node_modules/@babel/runtime/regenerator/index.js"); +/* harmony import */ var _babel_runtime_regenerator__WEBPACK_IMPORTED_MODULE_3___default = /*#__PURE__*/__webpack_require__.n(_babel_runtime_regenerator__WEBPACK_IMPORTED_MODULE_3__); + + + + +var RESOURCEPATH = "/health"; +var Health = /*#__PURE__*/function () { + function Health(apiCall) { + (0,_babel_runtime_helpers_classCallCheck__WEBPACK_IMPORTED_MODULE_1__["default"])(this, Health); + this.apiCall = apiCall; + } + return (0,_babel_runtime_helpers_createClass__WEBPACK_IMPORTED_MODULE_2__["default"])(Health, [{ + key: "retrieve", + value: function () { + var _retrieve = (0,_babel_runtime_helpers_asyncToGenerator__WEBPACK_IMPORTED_MODULE_0__["default"])(/*#__PURE__*/_babel_runtime_regenerator__WEBPACK_IMPORTED_MODULE_3___default().mark(function _callee() { + return _babel_runtime_regenerator__WEBPACK_IMPORTED_MODULE_3___default().wrap(function _callee$(_context) { + while (1) switch (_context.prev = _context.next) { + case 0: + return _context.abrupt("return", this.apiCall.get(RESOURCEPATH)); + case 1: + case "end": + return _context.stop(); + } + }, _callee, this); + })); + function retrieve() { + return _retrieve.apply(this, arguments); + } + return retrieve; + }() + }]); +}(); + + +/***/ }), - _utils_js__WEBPACK_IMPORTED_MODULE_0__["default"].forEach(value, function each(el, key) { - const result = !(_utils_js__WEBPACK_IMPORTED_MODULE_0__["default"].isUndefined(el) || el === null) && visitor.call( - formData, el, _utils_js__WEBPACK_IMPORTED_MODULE_0__["default"].isString(key) ? key.trim() : key, path, exposedHelpers - ); +/***/ "./src/Typesense/Key.ts": +/*!******************************!*\ + !*** ./src/Typesense/Key.ts ***! + \******************************/ +/***/ ((__unused_webpack_module, __webpack_exports__, __webpack_require__) => { - if (result === true) { - build(el, path ? path.concat(key) : [key]); - } - }); +"use strict"; +__webpack_require__.r(__webpack_exports__); +/* harmony export */ __webpack_require__.d(__webpack_exports__, { +/* harmony export */ "default": () => (/* binding */ Key) +/* harmony export */ }); +/* harmony import */ var _babel_runtime_helpers_asyncToGenerator__WEBPACK_IMPORTED_MODULE_0__ = __webpack_require__(/*! @babel/runtime/helpers/asyncToGenerator */ "./node_modules/.pnpm/@babel+runtime@7.26.9/node_modules/@babel/runtime/helpers/esm/asyncToGenerator.js"); +/* harmony import */ var _babel_runtime_helpers_classCallCheck__WEBPACK_IMPORTED_MODULE_1__ = __webpack_require__(/*! @babel/runtime/helpers/classCallCheck */ "./node_modules/.pnpm/@babel+runtime@7.26.9/node_modules/@babel/runtime/helpers/esm/classCallCheck.js"); +/* harmony import */ var _babel_runtime_helpers_createClass__WEBPACK_IMPORTED_MODULE_2__ = __webpack_require__(/*! @babel/runtime/helpers/createClass */ "./node_modules/.pnpm/@babel+runtime@7.26.9/node_modules/@babel/runtime/helpers/esm/createClass.js"); +/* harmony import */ var _babel_runtime_regenerator__WEBPACK_IMPORTED_MODULE_3__ = __webpack_require__(/*! @babel/runtime/regenerator */ "./node_modules/.pnpm/@babel+runtime@7.26.9/node_modules/@babel/runtime/regenerator/index.js"); +/* harmony import */ var _babel_runtime_regenerator__WEBPACK_IMPORTED_MODULE_3___default = /*#__PURE__*/__webpack_require__.n(_babel_runtime_regenerator__WEBPACK_IMPORTED_MODULE_3__); +/* harmony import */ var _Keys__WEBPACK_IMPORTED_MODULE_4__ = __webpack_require__(/*! ./Keys */ "./src/Typesense/Keys.ts"); - stack.pop(); - } - if (!_utils_js__WEBPACK_IMPORTED_MODULE_0__["default"].isObject(obj)) { - throw new TypeError('data must be an object'); - } - build(obj); - return formData; -} -/* harmony default export */ const __WEBPACK_DEFAULT_EXPORT__ = (toFormData); +var Key = /*#__PURE__*/function () { + function Key(id, apiCall) { + (0,_babel_runtime_helpers_classCallCheck__WEBPACK_IMPORTED_MODULE_1__["default"])(this, Key); + this.id = id; + this.apiCall = apiCall; + } + return (0,_babel_runtime_helpers_createClass__WEBPACK_IMPORTED_MODULE_2__["default"])(Key, [{ + key: "retrieve", + value: function () { + var _retrieve = (0,_babel_runtime_helpers_asyncToGenerator__WEBPACK_IMPORTED_MODULE_0__["default"])(/*#__PURE__*/_babel_runtime_regenerator__WEBPACK_IMPORTED_MODULE_3___default().mark(function _callee() { + return _babel_runtime_regenerator__WEBPACK_IMPORTED_MODULE_3___default().wrap(function _callee$(_context) { + while (1) switch (_context.prev = _context.next) { + case 0: + return _context.abrupt("return", this.apiCall.get(this.endpointPath())); + case 1: + case "end": + return _context.stop(); + } + }, _callee, this); + })); + function retrieve() { + return _retrieve.apply(this, arguments); + } + return retrieve; + }() + }, { + key: "delete", + value: function () { + var _delete2 = (0,_babel_runtime_helpers_asyncToGenerator__WEBPACK_IMPORTED_MODULE_0__["default"])(/*#__PURE__*/_babel_runtime_regenerator__WEBPACK_IMPORTED_MODULE_3___default().mark(function _callee2() { + return _babel_runtime_regenerator__WEBPACK_IMPORTED_MODULE_3___default().wrap(function _callee2$(_context2) { + while (1) switch (_context2.prev = _context2.next) { + case 0: + return _context2.abrupt("return", this.apiCall.delete(this.endpointPath())); + case 1: + case "end": + return _context2.stop(); + } + }, _callee2, this); + })); + function _delete() { + return _delete2.apply(this, arguments); + } + return _delete; + }() + }, { + key: "endpointPath", + value: function endpointPath() { + return "".concat(_Keys__WEBPACK_IMPORTED_MODULE_4__["default"].RESOURCEPATH, "/").concat(encodeURIComponent(this.id)); + } + }]); +}(); /***/ }), -/***/ "./node_modules/axios/lib/helpers/toURLEncodedForm.js": -/*!************************************************************!*\ - !*** ./node_modules/axios/lib/helpers/toURLEncodedForm.js ***! - \************************************************************/ -/***/ ((__unused_webpack___webpack_module__, __webpack_exports__, __webpack_require__) => { +/***/ "./src/Typesense/Keys.ts": +/*!*******************************!*\ + !*** ./src/Typesense/Keys.ts ***! + \*******************************/ +/***/ ((__unused_webpack_module, __webpack_exports__, __webpack_require__) => { "use strict"; __webpack_require__.r(__webpack_exports__); /* harmony export */ __webpack_require__.d(__webpack_exports__, { -/* harmony export */ "default": () => (/* binding */ toURLEncodedForm) +/* harmony export */ "default": () => (/* binding */ Keys) /* harmony export */ }); -/* harmony import */ var _utils_js__WEBPACK_IMPORTED_MODULE_2__ = __webpack_require__(/*! ../utils.js */ "./node_modules/axios/lib/utils.js"); -/* harmony import */ var _toFormData_js__WEBPACK_IMPORTED_MODULE_0__ = __webpack_require__(/*! ./toFormData.js */ "./node_modules/axios/lib/helpers/toFormData.js"); -/* harmony import */ var _platform_index_js__WEBPACK_IMPORTED_MODULE_1__ = __webpack_require__(/*! ../platform/index.js */ "./node_modules/axios/lib/platform/index.js"); +/* harmony import */ var _babel_runtime_helpers_asyncToGenerator__WEBPACK_IMPORTED_MODULE_0__ = __webpack_require__(/*! @babel/runtime/helpers/asyncToGenerator */ "./node_modules/.pnpm/@babel+runtime@7.26.9/node_modules/@babel/runtime/helpers/esm/asyncToGenerator.js"); +/* harmony import */ var _babel_runtime_helpers_classCallCheck__WEBPACK_IMPORTED_MODULE_1__ = __webpack_require__(/*! @babel/runtime/helpers/classCallCheck */ "./node_modules/.pnpm/@babel+runtime@7.26.9/node_modules/@babel/runtime/helpers/esm/classCallCheck.js"); +/* harmony import */ var _babel_runtime_helpers_createClass__WEBPACK_IMPORTED_MODULE_2__ = __webpack_require__(/*! @babel/runtime/helpers/createClass */ "./node_modules/.pnpm/@babel+runtime@7.26.9/node_modules/@babel/runtime/helpers/esm/createClass.js"); +/* harmony import */ var _babel_runtime_regenerator__WEBPACK_IMPORTED_MODULE_3__ = __webpack_require__(/*! @babel/runtime/regenerator */ "./node_modules/.pnpm/@babel+runtime@7.26.9/node_modules/@babel/runtime/regenerator/index.js"); +/* harmony import */ var _babel_runtime_regenerator__WEBPACK_IMPORTED_MODULE_3___default = /*#__PURE__*/__webpack_require__.n(_babel_runtime_regenerator__WEBPACK_IMPORTED_MODULE_3__); +/* harmony import */ var crypto__WEBPACK_IMPORTED_MODULE_4__ = __webpack_require__(/*! crypto */ "?4bf0"); +/* harmony import */ var crypto__WEBPACK_IMPORTED_MODULE_4___default = /*#__PURE__*/__webpack_require__.n(crypto__WEBPACK_IMPORTED_MODULE_4__); +/* harmony import */ var _Utils__WEBPACK_IMPORTED_MODULE_5__ = __webpack_require__(/*! ./Utils */ "./src/Typesense/Utils.ts"); -function toURLEncodedForm(data, options) { - return (0,_toFormData_js__WEBPACK_IMPORTED_MODULE_0__["default"])(data, new _platform_index_js__WEBPACK_IMPORTED_MODULE_1__["default"].classes.URLSearchParams(), Object.assign({ - visitor: function(value, key, path, helpers) { - if (_platform_index_js__WEBPACK_IMPORTED_MODULE_1__["default"].isNode && _utils_js__WEBPACK_IMPORTED_MODULE_2__["default"].isBuffer(value)) { - this.append(key, value.toString('base64')); - return false; +var RESOURCEPATH = "/keys"; +var Keys = /*#__PURE__*/function () { + function Keys(apiCall) { + (0,_babel_runtime_helpers_classCallCheck__WEBPACK_IMPORTED_MODULE_1__["default"])(this, Keys); + this.apiCall = apiCall; + this.apiCall = apiCall; + } + return (0,_babel_runtime_helpers_createClass__WEBPACK_IMPORTED_MODULE_2__["default"])(Keys, [{ + key: "create", + value: function () { + var _create = (0,_babel_runtime_helpers_asyncToGenerator__WEBPACK_IMPORTED_MODULE_0__["default"])(/*#__PURE__*/_babel_runtime_regenerator__WEBPACK_IMPORTED_MODULE_3___default().mark(function _callee(params) { + return _babel_runtime_regenerator__WEBPACK_IMPORTED_MODULE_3___default().wrap(function _callee$(_context) { + while (1) switch (_context.prev = _context.next) { + case 0: + return _context.abrupt("return", this.apiCall.post(Keys.RESOURCEPATH, params)); + case 1: + case "end": + return _context.stop(); + } + }, _callee, this); + })); + function create(_x) { + return _create.apply(this, arguments); } - - return helpers.defaultVisitor.apply(this, arguments); + return create; + }() + }, { + key: "retrieve", + value: function () { + var _retrieve = (0,_babel_runtime_helpers_asyncToGenerator__WEBPACK_IMPORTED_MODULE_0__["default"])(/*#__PURE__*/_babel_runtime_regenerator__WEBPACK_IMPORTED_MODULE_3___default().mark(function _callee2() { + return _babel_runtime_regenerator__WEBPACK_IMPORTED_MODULE_3___default().wrap(function _callee2$(_context2) { + while (1) switch (_context2.prev = _context2.next) { + case 0: + return _context2.abrupt("return", this.apiCall.get(RESOURCEPATH)); + case 1: + case "end": + return _context2.stop(); + } + }, _callee2, this); + })); + function retrieve() { + return _retrieve.apply(this, arguments); + } + return retrieve; + }() + }, { + key: "generateScopedSearchKey", + value: function generateScopedSearchKey(searchKey, parameters) { + // Note: only a key generated with the `documents:search` action will be + // accepted by the server, when usined with the search endpoint. + var normalizedParams = (0,_Utils__WEBPACK_IMPORTED_MODULE_5__.normalizeArrayableParams)(parameters); + var paramsJSON = JSON.stringify(normalizedParams); + var digest = Buffer.from((0,crypto__WEBPACK_IMPORTED_MODULE_4__.createHmac)("sha256", searchKey).update(paramsJSON).digest("base64")); + var keyPrefix = searchKey.substr(0, 4); + var rawScopedKey = "".concat(digest).concat(keyPrefix).concat(paramsJSON); + return Buffer.from(rawScopedKey).toString("base64"); } - }, options)); -} + }], [{ + key: "RESOURCEPATH", + get: function get() { + return RESOURCEPATH; + } + }]); +}(); /***/ }), -/***/ "./node_modules/axios/lib/helpers/trackStream.js": -/*!*******************************************************!*\ - !*** ./node_modules/axios/lib/helpers/trackStream.js ***! - \*******************************************************/ -/***/ ((__unused_webpack___webpack_module__, __webpack_exports__, __webpack_require__) => { +/***/ "./src/Typesense/Metrics.ts": +/*!**********************************!*\ + !*** ./src/Typesense/Metrics.ts ***! + \**********************************/ +/***/ ((__unused_webpack_module, __webpack_exports__, __webpack_require__) => { "use strict"; __webpack_require__.r(__webpack_exports__); /* harmony export */ __webpack_require__.d(__webpack_exports__, { -/* harmony export */ readBytes: () => (/* binding */ readBytes), -/* harmony export */ streamChunk: () => (/* binding */ streamChunk), -/* harmony export */ trackStream: () => (/* binding */ trackStream) +/* harmony export */ "default": () => (/* binding */ Metrics) /* harmony export */ }); +/* harmony import */ var _babel_runtime_helpers_asyncToGenerator__WEBPACK_IMPORTED_MODULE_0__ = __webpack_require__(/*! @babel/runtime/helpers/asyncToGenerator */ "./node_modules/.pnpm/@babel+runtime@7.26.9/node_modules/@babel/runtime/helpers/esm/asyncToGenerator.js"); +/* harmony import */ var _babel_runtime_helpers_classCallCheck__WEBPACK_IMPORTED_MODULE_1__ = __webpack_require__(/*! @babel/runtime/helpers/classCallCheck */ "./node_modules/.pnpm/@babel+runtime@7.26.9/node_modules/@babel/runtime/helpers/esm/classCallCheck.js"); +/* harmony import */ var _babel_runtime_helpers_createClass__WEBPACK_IMPORTED_MODULE_2__ = __webpack_require__(/*! @babel/runtime/helpers/createClass */ "./node_modules/.pnpm/@babel+runtime@7.26.9/node_modules/@babel/runtime/helpers/esm/createClass.js"); +/* harmony import */ var _babel_runtime_regenerator__WEBPACK_IMPORTED_MODULE_3__ = __webpack_require__(/*! @babel/runtime/regenerator */ "./node_modules/.pnpm/@babel+runtime@7.26.9/node_modules/@babel/runtime/regenerator/index.js"); +/* harmony import */ var _babel_runtime_regenerator__WEBPACK_IMPORTED_MODULE_3___default = /*#__PURE__*/__webpack_require__.n(_babel_runtime_regenerator__WEBPACK_IMPORTED_MODULE_3__); -const streamChunk = function* (chunk, chunkSize) { - let len = chunk.byteLength; - if (!chunkSize || len < chunkSize) { - yield chunk; - return; + + +var RESOURCEPATH = "/metrics.json"; +var Metrics = /*#__PURE__*/function () { + function Metrics(apiCall) { + (0,_babel_runtime_helpers_classCallCheck__WEBPACK_IMPORTED_MODULE_1__["default"])(this, Metrics); + this.apiCall = apiCall; } + return (0,_babel_runtime_helpers_createClass__WEBPACK_IMPORTED_MODULE_2__["default"])(Metrics, [{ + key: "retrieve", + value: function () { + var _retrieve = (0,_babel_runtime_helpers_asyncToGenerator__WEBPACK_IMPORTED_MODULE_0__["default"])(/*#__PURE__*/_babel_runtime_regenerator__WEBPACK_IMPORTED_MODULE_3___default().mark(function _callee() { + return _babel_runtime_regenerator__WEBPACK_IMPORTED_MODULE_3___default().wrap(function _callee$(_context) { + while (1) switch (_context.prev = _context.next) { + case 0: + return _context.abrupt("return", this.apiCall.get(RESOURCEPATH)); + case 1: + case "end": + return _context.stop(); + } + }, _callee, this); + })); + function retrieve() { + return _retrieve.apply(this, arguments); + } + return retrieve; + }() + }]); +}(); + + +/***/ }), + +/***/ "./src/Typesense/MultiSearch.ts": +/*!**************************************!*\ + !*** ./src/Typesense/MultiSearch.ts ***! + \**************************************/ +/***/ ((__unused_webpack_module, __webpack_exports__, __webpack_require__) => { - let pos = 0; - let end; +"use strict"; +__webpack_require__.r(__webpack_exports__); +/* harmony export */ __webpack_require__.d(__webpack_exports__, { +/* harmony export */ "default": () => (/* binding */ MultiSearch) +/* harmony export */ }); +/* harmony import */ var _babel_runtime_helpers_defineProperty__WEBPACK_IMPORTED_MODULE_0__ = __webpack_require__(/*! @babel/runtime/helpers/defineProperty */ "./node_modules/.pnpm/@babel+runtime@7.26.9/node_modules/@babel/runtime/helpers/esm/defineProperty.js"); +/* harmony import */ var _babel_runtime_helpers_asyncToGenerator__WEBPACK_IMPORTED_MODULE_1__ = __webpack_require__(/*! @babel/runtime/helpers/asyncToGenerator */ "./node_modules/.pnpm/@babel+runtime@7.26.9/node_modules/@babel/runtime/helpers/esm/asyncToGenerator.js"); +/* harmony import */ var _babel_runtime_helpers_classCallCheck__WEBPACK_IMPORTED_MODULE_2__ = __webpack_require__(/*! @babel/runtime/helpers/classCallCheck */ "./node_modules/.pnpm/@babel+runtime@7.26.9/node_modules/@babel/runtime/helpers/esm/classCallCheck.js"); +/* harmony import */ var _babel_runtime_helpers_createClass__WEBPACK_IMPORTED_MODULE_3__ = __webpack_require__(/*! @babel/runtime/helpers/createClass */ "./node_modules/.pnpm/@babel+runtime@7.26.9/node_modules/@babel/runtime/helpers/esm/createClass.js"); +/* harmony import */ var _babel_runtime_regenerator__WEBPACK_IMPORTED_MODULE_4__ = __webpack_require__(/*! @babel/runtime/regenerator */ "./node_modules/.pnpm/@babel+runtime@7.26.9/node_modules/@babel/runtime/regenerator/index.js"); +/* harmony import */ var _babel_runtime_regenerator__WEBPACK_IMPORTED_MODULE_4___default = /*#__PURE__*/__webpack_require__.n(_babel_runtime_regenerator__WEBPACK_IMPORTED_MODULE_4__); +/* harmony import */ var _RequestWithCache__WEBPACK_IMPORTED_MODULE_5__ = __webpack_require__(/*! ./RequestWithCache */ "./src/Typesense/RequestWithCache.ts"); +/* harmony import */ var _Utils__WEBPACK_IMPORTED_MODULE_6__ = __webpack_require__(/*! ./Utils */ "./src/Typesense/Utils.ts"); - while (pos < len) { - end = pos + chunkSize; - yield chunk.slice(pos, end); - pos = end; - } -} -const readBytes = async function* (iterable, chunkSize, encode) { - for await (const chunk of iterable) { - yield* streamChunk(ArrayBuffer.isView(chunk) ? chunk : (await encode(String(chunk))), chunkSize); - } -} -const trackStream = (stream, chunkSize, onProgress, onFinish, encode) => { - const iterator = readBytes(stream, chunkSize, encode); - let bytes = 0; - let done; - let _onFinish = (e) => { - if (!done) { - done = true; - onFinish && onFinish(e); - } - } - return new ReadableStream({ - async pull(controller) { - try { - const {done, value} = await iterator.next(); +function ownKeys(e, r) { var t = Object.keys(e); if (Object.getOwnPropertySymbols) { var o = Object.getOwnPropertySymbols(e); r && (o = o.filter(function (r) { return Object.getOwnPropertyDescriptor(e, r).enumerable; })), t.push.apply(t, o); } return t; } +function _objectSpread(e) { for (var r = 1; r < arguments.length; r++) { var t = null != arguments[r] ? arguments[r] : {}; r % 2 ? ownKeys(Object(t), !0).forEach(function (r) { (0,_babel_runtime_helpers_defineProperty__WEBPACK_IMPORTED_MODULE_0__["default"])(e, r, t[r]); }) : Object.getOwnPropertyDescriptors ? Object.defineProperties(e, Object.getOwnPropertyDescriptors(t)) : ownKeys(Object(t)).forEach(function (r) { Object.defineProperty(e, r, Object.getOwnPropertyDescriptor(t, r)); }); } return e; } - if (done) { - _onFinish(); - controller.close(); - return; - } - let len = value.byteLength; - if (onProgress) { - let loadedBytes = bytes += len; - onProgress(loadedBytes); - } - controller.enqueue(new Uint8Array(value)); - } catch (err) { - _onFinish(err); - throw err; - } - }, - cancel(reason) { - _onFinish(reason); - return iterator.return(); +var RESOURCEPATH = "/multi_search"; +var MultiSearch = /*#__PURE__*/function () { + function MultiSearch(apiCall, configuration) { + var useTextContentType = arguments.length > 2 && arguments[2] !== undefined ? arguments[2] : false; + (0,_babel_runtime_helpers_classCallCheck__WEBPACK_IMPORTED_MODULE_2__["default"])(this, MultiSearch); + this.apiCall = apiCall; + this.configuration = configuration; + this.useTextContentType = useTextContentType; + this.requestWithCache = new _RequestWithCache__WEBPACK_IMPORTED_MODULE_5__["default"](); + } + return (0,_babel_runtime_helpers_createClass__WEBPACK_IMPORTED_MODULE_3__["default"])(MultiSearch, [{ + key: "clearCache", + value: function clearCache() { + this.requestWithCache.clearCache(); } }, { - highWaterMark: 2 - }) -} + key: "perform", + value: function () { + var _perform = (0,_babel_runtime_helpers_asyncToGenerator__WEBPACK_IMPORTED_MODULE_1__["default"])(/*#__PURE__*/_babel_runtime_regenerator__WEBPACK_IMPORTED_MODULE_4___default().mark(function _callee(searchRequests) { + var commonParams, + _ref, + _ref$cacheSearchResul, + cacheSearchResultsForSeconds, + additionalHeaders, + additionalQueryParams, + queryParams, + normalizedSearchRequests, + normalizedQueryParams, + _args = arguments; + return _babel_runtime_regenerator__WEBPACK_IMPORTED_MODULE_4___default().wrap(function _callee$(_context) { + while (1) switch (_context.prev = _context.next) { + case 0: + commonParams = _args.length > 1 && _args[1] !== undefined ? _args[1] : {}; + _ref = _args.length > 2 && _args[2] !== undefined ? _args[2] : {}, _ref$cacheSearchResul = _ref.cacheSearchResultsForSeconds, cacheSearchResultsForSeconds = _ref$cacheSearchResul === void 0 ? this.configuration.cacheSearchResultsForSeconds : _ref$cacheSearchResul; + additionalHeaders = {}; + if (this.useTextContentType) { + additionalHeaders["content-type"] = "text/plain"; + } + additionalQueryParams = {}; + if (this.configuration.useServerSideSearchCache === true) { + additionalQueryParams["use_cache"] = true; + } + queryParams = _objectSpread(_objectSpread({}, commonParams), additionalQueryParams); + normalizedSearchRequests = _objectSpread(_objectSpread({}, searchRequests), {}, { + searches: searchRequests.searches.map(_Utils__WEBPACK_IMPORTED_MODULE_6__.normalizeArrayableParams) + }); + normalizedQueryParams = (0,_Utils__WEBPACK_IMPORTED_MODULE_6__.normalizeArrayableParams)(queryParams); + return _context.abrupt("return", this.requestWithCache.perform(this.apiCall, this.apiCall.post, [RESOURCEPATH, normalizedSearchRequests, normalizedQueryParams, additionalHeaders], { + cacheResponseForSeconds: cacheSearchResultsForSeconds + })); + case 10: + case "end": + return _context.stop(); + } + }, _callee, this); + })); + function perform(_x) { + return _perform.apply(this, arguments); + } + return perform; + }() + }]); +}(); /***/ }), -/***/ "./node_modules/axios/lib/helpers/validator.js": -/*!*****************************************************!*\ - !*** ./node_modules/axios/lib/helpers/validator.js ***! - \*****************************************************/ -/***/ ((__unused_webpack___webpack_module__, __webpack_exports__, __webpack_require__) => { +/***/ "./src/Typesense/Operations.ts": +/*!*************************************!*\ + !*** ./src/Typesense/Operations.ts ***! + \*************************************/ +/***/ ((__unused_webpack_module, __webpack_exports__, __webpack_require__) => { "use strict"; __webpack_require__.r(__webpack_exports__); /* harmony export */ __webpack_require__.d(__webpack_exports__, { -/* harmony export */ "default": () => (__WEBPACK_DEFAULT_EXPORT__) +/* harmony export */ "default": () => (/* binding */ Operations) /* harmony export */ }); -/* harmony import */ var _env_data_js__WEBPACK_IMPORTED_MODULE_0__ = __webpack_require__(/*! ../env/data.js */ "./node_modules/axios/lib/env/data.js"); -/* harmony import */ var _core_AxiosError_js__WEBPACK_IMPORTED_MODULE_1__ = __webpack_require__(/*! ../core/AxiosError.js */ "./node_modules/axios/lib/core/AxiosError.js"); +/* harmony import */ var _babel_runtime_helpers_asyncToGenerator__WEBPACK_IMPORTED_MODULE_0__ = __webpack_require__(/*! @babel/runtime/helpers/asyncToGenerator */ "./node_modules/.pnpm/@babel+runtime@7.26.9/node_modules/@babel/runtime/helpers/esm/asyncToGenerator.js"); +/* harmony import */ var _babel_runtime_helpers_classCallCheck__WEBPACK_IMPORTED_MODULE_1__ = __webpack_require__(/*! @babel/runtime/helpers/classCallCheck */ "./node_modules/.pnpm/@babel+runtime@7.26.9/node_modules/@babel/runtime/helpers/esm/classCallCheck.js"); +/* harmony import */ var _babel_runtime_helpers_createClass__WEBPACK_IMPORTED_MODULE_2__ = __webpack_require__(/*! @babel/runtime/helpers/createClass */ "./node_modules/.pnpm/@babel+runtime@7.26.9/node_modules/@babel/runtime/helpers/esm/createClass.js"); +/* harmony import */ var _babel_runtime_regenerator__WEBPACK_IMPORTED_MODULE_3__ = __webpack_require__(/*! @babel/runtime/regenerator */ "./node_modules/.pnpm/@babel+runtime@7.26.9/node_modules/@babel/runtime/regenerator/index.js"); +/* harmony import */ var _babel_runtime_regenerator__WEBPACK_IMPORTED_MODULE_3___default = /*#__PURE__*/__webpack_require__.n(_babel_runtime_regenerator__WEBPACK_IMPORTED_MODULE_3__); +var RESOURCEPATH = "/operations"; +var Operations = /*#__PURE__*/function () { + function Operations(apiCall) { + (0,_babel_runtime_helpers_classCallCheck__WEBPACK_IMPORTED_MODULE_1__["default"])(this, Operations); + this.apiCall = apiCall; + } + return (0,_babel_runtime_helpers_createClass__WEBPACK_IMPORTED_MODULE_2__["default"])(Operations, [{ + key: "perform", + value: function () { + var _perform = (0,_babel_runtime_helpers_asyncToGenerator__WEBPACK_IMPORTED_MODULE_0__["default"])(/*#__PURE__*/_babel_runtime_regenerator__WEBPACK_IMPORTED_MODULE_3___default().mark(function _callee(operationName) { + var queryParameters, + _args = arguments; + return _babel_runtime_regenerator__WEBPACK_IMPORTED_MODULE_3___default().wrap(function _callee$(_context) { + while (1) switch (_context.prev = _context.next) { + case 0: + queryParameters = _args.length > 1 && _args[1] !== undefined ? _args[1] : {}; + return _context.abrupt("return", this.apiCall.post("".concat(RESOURCEPATH, "/").concat(operationName), {}, queryParameters)); + case 2: + case "end": + return _context.stop(); + } + }, _callee, this); + })); + function perform(_x) { + return _perform.apply(this, arguments); + } + return perform; + }() + }]); +}(); + -const validators = {}; +/***/ }), -// eslint-disable-next-line func-names -['object', 'boolean', 'number', 'function', 'string', 'symbol'].forEach((type, i) => { - validators[type] = function validator(thing) { - return typeof thing === type || 'a' + (i < 1 ? 'n ' : ' ') + type; - }; -}); +/***/ "./src/Typesense/Override.ts": +/*!***********************************!*\ + !*** ./src/Typesense/Override.ts ***! + \***********************************/ +/***/ ((__unused_webpack_module, __webpack_exports__, __webpack_require__) => { -const deprecatedWarnings = {}; +"use strict"; +__webpack_require__.r(__webpack_exports__); +/* harmony export */ __webpack_require__.d(__webpack_exports__, { +/* harmony export */ "default": () => (/* binding */ Override) +/* harmony export */ }); +/* harmony import */ var _babel_runtime_helpers_asyncToGenerator__WEBPACK_IMPORTED_MODULE_0__ = __webpack_require__(/*! @babel/runtime/helpers/asyncToGenerator */ "./node_modules/.pnpm/@babel+runtime@7.26.9/node_modules/@babel/runtime/helpers/esm/asyncToGenerator.js"); +/* harmony import */ var _babel_runtime_helpers_classCallCheck__WEBPACK_IMPORTED_MODULE_1__ = __webpack_require__(/*! @babel/runtime/helpers/classCallCheck */ "./node_modules/.pnpm/@babel+runtime@7.26.9/node_modules/@babel/runtime/helpers/esm/classCallCheck.js"); +/* harmony import */ var _babel_runtime_helpers_createClass__WEBPACK_IMPORTED_MODULE_2__ = __webpack_require__(/*! @babel/runtime/helpers/createClass */ "./node_modules/.pnpm/@babel+runtime@7.26.9/node_modules/@babel/runtime/helpers/esm/createClass.js"); +/* harmony import */ var _babel_runtime_regenerator__WEBPACK_IMPORTED_MODULE_3__ = __webpack_require__(/*! @babel/runtime/regenerator */ "./node_modules/.pnpm/@babel+runtime@7.26.9/node_modules/@babel/runtime/regenerator/index.js"); +/* harmony import */ var _babel_runtime_regenerator__WEBPACK_IMPORTED_MODULE_3___default = /*#__PURE__*/__webpack_require__.n(_babel_runtime_regenerator__WEBPACK_IMPORTED_MODULE_3__); +/* harmony import */ var _Collections__WEBPACK_IMPORTED_MODULE_4__ = __webpack_require__(/*! ./Collections */ "./src/Typesense/Collections.ts"); +/* harmony import */ var _Overrides__WEBPACK_IMPORTED_MODULE_5__ = __webpack_require__(/*! ./Overrides */ "./src/Typesense/Overrides.ts"); -/** - * Transitional option validator - * - * @param {function|boolean?} validator - set to false if the transitional option has been removed - * @param {string?} version - deprecated version / removed since version - * @param {string?} message - some message with additional info - * - * @returns {function} - */ -validators.transitional = function transitional(validator, version, message) { - function formatMessage(opt, desc) { - return '[Axios v' + _env_data_js__WEBPACK_IMPORTED_MODULE_0__.VERSION + '] Transitional option \'' + opt + '\'' + desc + (message ? '. ' + message : ''); - } - // eslint-disable-next-line func-names - return (value, opt, opts) => { - if (validator === false) { - throw new _core_AxiosError_js__WEBPACK_IMPORTED_MODULE_1__["default"]( - formatMessage(opt, ' has been removed' + (version ? ' in ' + version : '')), - _core_AxiosError_js__WEBPACK_IMPORTED_MODULE_1__["default"].ERR_DEPRECATED - ); - } - if (version && !deprecatedWarnings[opt]) { - deprecatedWarnings[opt] = true; - // eslint-disable-next-line no-console - console.warn( - formatMessage( - opt, - ' has been deprecated since v' + version + ' and will be removed in the near future' - ) - ); - } - return validator ? validator(value, opt, opts) : true; - }; -}; -/** - * Assert object's properties type - * - * @param {object} options - * @param {object} schema - * @param {boolean?} allowUnknown - * - * @returns {object} - */ -function assertOptions(options, schema, allowUnknown) { - if (typeof options !== 'object') { - throw new _core_AxiosError_js__WEBPACK_IMPORTED_MODULE_1__["default"]('options must be an object', _core_AxiosError_js__WEBPACK_IMPORTED_MODULE_1__["default"].ERR_BAD_OPTION_VALUE); +var Override = /*#__PURE__*/function () { + function Override(collectionName, overrideId, apiCall) { + (0,_babel_runtime_helpers_classCallCheck__WEBPACK_IMPORTED_MODULE_1__["default"])(this, Override); + this.collectionName = collectionName; + this.overrideId = overrideId; + this.apiCall = apiCall; } - const keys = Object.keys(options); - let i = keys.length; - while (i-- > 0) { - const opt = keys[i]; - const validator = schema[opt]; - if (validator) { - const value = options[opt]; - const result = value === undefined || validator(value, opt, options); - if (result !== true) { - throw new _core_AxiosError_js__WEBPACK_IMPORTED_MODULE_1__["default"]('option ' + opt + ' must be ' + result, _core_AxiosError_js__WEBPACK_IMPORTED_MODULE_1__["default"].ERR_BAD_OPTION_VALUE); + return (0,_babel_runtime_helpers_createClass__WEBPACK_IMPORTED_MODULE_2__["default"])(Override, [{ + key: "retrieve", + value: function () { + var _retrieve = (0,_babel_runtime_helpers_asyncToGenerator__WEBPACK_IMPORTED_MODULE_0__["default"])(/*#__PURE__*/_babel_runtime_regenerator__WEBPACK_IMPORTED_MODULE_3___default().mark(function _callee() { + return _babel_runtime_regenerator__WEBPACK_IMPORTED_MODULE_3___default().wrap(function _callee$(_context) { + while (1) switch (_context.prev = _context.next) { + case 0: + return _context.abrupt("return", this.apiCall.get(this.endpointPath())); + case 1: + case "end": + return _context.stop(); + } + }, _callee, this); + })); + function retrieve() { + return _retrieve.apply(this, arguments); + } + return retrieve; + }() + }, { + key: "delete", + value: function () { + var _delete2 = (0,_babel_runtime_helpers_asyncToGenerator__WEBPACK_IMPORTED_MODULE_0__["default"])(/*#__PURE__*/_babel_runtime_regenerator__WEBPACK_IMPORTED_MODULE_3___default().mark(function _callee2() { + return _babel_runtime_regenerator__WEBPACK_IMPORTED_MODULE_3___default().wrap(function _callee2$(_context2) { + while (1) switch (_context2.prev = _context2.next) { + case 0: + return _context2.abrupt("return", this.apiCall.delete(this.endpointPath())); + case 1: + case "end": + return _context2.stop(); + } + }, _callee2, this); + })); + function _delete() { + return _delete2.apply(this, arguments); } - continue; - } - if (allowUnknown !== true) { - throw new _core_AxiosError_js__WEBPACK_IMPORTED_MODULE_1__["default"]('Unknown option ' + opt, _core_AxiosError_js__WEBPACK_IMPORTED_MODULE_1__["default"].ERR_BAD_OPTION); + return _delete; + }() + }, { + key: "endpointPath", + value: function endpointPath() { + return "".concat(_Collections__WEBPACK_IMPORTED_MODULE_4__["default"].RESOURCEPATH, "/").concat(encodeURIComponent(this.collectionName)).concat(_Overrides__WEBPACK_IMPORTED_MODULE_5__["default"].RESOURCEPATH, "/").concat(encodeURIComponent(this.overrideId)); } - } -} - -/* harmony default export */ const __WEBPACK_DEFAULT_EXPORT__ = ({ - assertOptions, - validators -}); + }]); +}(); /***/ }), -/***/ "./node_modules/axios/lib/platform/browser/classes/Blob.js": -/*!*****************************************************************!*\ - !*** ./node_modules/axios/lib/platform/browser/classes/Blob.js ***! - \*****************************************************************/ -/***/ ((__unused_webpack___webpack_module__, __webpack_exports__, __webpack_require__) => { +/***/ "./src/Typesense/Overrides.ts": +/*!************************************!*\ + !*** ./src/Typesense/Overrides.ts ***! + \************************************/ +/***/ ((__unused_webpack_module, __webpack_exports__, __webpack_require__) => { "use strict"; __webpack_require__.r(__webpack_exports__); /* harmony export */ __webpack_require__.d(__webpack_exports__, { -/* harmony export */ "default": () => (__WEBPACK_DEFAULT_EXPORT__) +/* harmony export */ "default": () => (/* binding */ Overrides) /* harmony export */ }); +/* harmony import */ var _babel_runtime_helpers_asyncToGenerator__WEBPACK_IMPORTED_MODULE_0__ = __webpack_require__(/*! @babel/runtime/helpers/asyncToGenerator */ "./node_modules/.pnpm/@babel+runtime@7.26.9/node_modules/@babel/runtime/helpers/esm/asyncToGenerator.js"); +/* harmony import */ var _babel_runtime_helpers_classCallCheck__WEBPACK_IMPORTED_MODULE_1__ = __webpack_require__(/*! @babel/runtime/helpers/classCallCheck */ "./node_modules/.pnpm/@babel+runtime@7.26.9/node_modules/@babel/runtime/helpers/esm/classCallCheck.js"); +/* harmony import */ var _babel_runtime_helpers_createClass__WEBPACK_IMPORTED_MODULE_2__ = __webpack_require__(/*! @babel/runtime/helpers/createClass */ "./node_modules/.pnpm/@babel+runtime@7.26.9/node_modules/@babel/runtime/helpers/esm/createClass.js"); +/* harmony import */ var _babel_runtime_regenerator__WEBPACK_IMPORTED_MODULE_3__ = __webpack_require__(/*! @babel/runtime/regenerator */ "./node_modules/.pnpm/@babel+runtime@7.26.9/node_modules/@babel/runtime/regenerator/index.js"); +/* harmony import */ var _babel_runtime_regenerator__WEBPACK_IMPORTED_MODULE_3___default = /*#__PURE__*/__webpack_require__.n(_babel_runtime_regenerator__WEBPACK_IMPORTED_MODULE_3__); +/* harmony import */ var _Collections__WEBPACK_IMPORTED_MODULE_4__ = __webpack_require__(/*! ./Collections */ "./src/Typesense/Collections.ts"); -/* harmony default export */ const __WEBPACK_DEFAULT_EXPORT__ = (typeof Blob !== 'undefined' ? Blob : null); - - -/***/ }), - -/***/ "./node_modules/axios/lib/platform/browser/classes/FormData.js": -/*!*********************************************************************!*\ - !*** ./node_modules/axios/lib/platform/browser/classes/FormData.js ***! - \*********************************************************************/ -/***/ ((__unused_webpack___webpack_module__, __webpack_exports__, __webpack_require__) => { -"use strict"; -__webpack_require__.r(__webpack_exports__); -/* harmony export */ __webpack_require__.d(__webpack_exports__, { -/* harmony export */ "default": () => (__WEBPACK_DEFAULT_EXPORT__) -/* harmony export */ }); -/* harmony default export */ const __WEBPACK_DEFAULT_EXPORT__ = (typeof FormData !== 'undefined' ? FormData : null); +var RESOURCEPATH = "/overrides"; +var Overrides = /*#__PURE__*/function () { + function Overrides(collectionName, apiCall) { + (0,_babel_runtime_helpers_classCallCheck__WEBPACK_IMPORTED_MODULE_1__["default"])(this, Overrides); + this.collectionName = collectionName; + this.apiCall = apiCall; + } + return (0,_babel_runtime_helpers_createClass__WEBPACK_IMPORTED_MODULE_2__["default"])(Overrides, [{ + key: "upsert", + value: function () { + var _upsert = (0,_babel_runtime_helpers_asyncToGenerator__WEBPACK_IMPORTED_MODULE_0__["default"])(/*#__PURE__*/_babel_runtime_regenerator__WEBPACK_IMPORTED_MODULE_3___default().mark(function _callee(overrideId, params) { + return _babel_runtime_regenerator__WEBPACK_IMPORTED_MODULE_3___default().wrap(function _callee$(_context) { + while (1) switch (_context.prev = _context.next) { + case 0: + return _context.abrupt("return", this.apiCall.put(this.endpointPath(overrideId), params)); + case 1: + case "end": + return _context.stop(); + } + }, _callee, this); + })); + function upsert(_x, _x2) { + return _upsert.apply(this, arguments); + } + return upsert; + }() + }, { + key: "retrieve", + value: function () { + var _retrieve = (0,_babel_runtime_helpers_asyncToGenerator__WEBPACK_IMPORTED_MODULE_0__["default"])(/*#__PURE__*/_babel_runtime_regenerator__WEBPACK_IMPORTED_MODULE_3___default().mark(function _callee2() { + return _babel_runtime_regenerator__WEBPACK_IMPORTED_MODULE_3___default().wrap(function _callee2$(_context2) { + while (1) switch (_context2.prev = _context2.next) { + case 0: + return _context2.abrupt("return", this.apiCall.get(this.endpointPath())); + case 1: + case "end": + return _context2.stop(); + } + }, _callee2, this); + })); + function retrieve() { + return _retrieve.apply(this, arguments); + } + return retrieve; + }() + }, { + key: "endpointPath", + value: function endpointPath(operation) { + return "".concat(_Collections__WEBPACK_IMPORTED_MODULE_4__["default"].RESOURCEPATH, "/").concat(this.collectionName).concat(Overrides.RESOURCEPATH).concat(operation === undefined ? "" : "/" + encodeURIComponent(operation)); + } + }], [{ + key: "RESOURCEPATH", + get: function get() { + return RESOURCEPATH; + } + }]); +}(); /***/ }), -/***/ "./node_modules/axios/lib/platform/browser/classes/URLSearchParams.js": -/*!****************************************************************************!*\ - !*** ./node_modules/axios/lib/platform/browser/classes/URLSearchParams.js ***! - \****************************************************************************/ -/***/ ((__unused_webpack___webpack_module__, __webpack_exports__, __webpack_require__) => { +/***/ "./src/Typesense/Preset.ts": +/*!*********************************!*\ + !*** ./src/Typesense/Preset.ts ***! + \*********************************/ +/***/ ((__unused_webpack_module, __webpack_exports__, __webpack_require__) => { "use strict"; __webpack_require__.r(__webpack_exports__); /* harmony export */ __webpack_require__.d(__webpack_exports__, { -/* harmony export */ "default": () => (__WEBPACK_DEFAULT_EXPORT__) +/* harmony export */ "default": () => (/* binding */ Preset) /* harmony export */ }); -/* harmony import */ var _helpers_AxiosURLSearchParams_js__WEBPACK_IMPORTED_MODULE_0__ = __webpack_require__(/*! ../../../helpers/AxiosURLSearchParams.js */ "./node_modules/axios/lib/helpers/AxiosURLSearchParams.js"); +/* harmony import */ var _babel_runtime_helpers_asyncToGenerator__WEBPACK_IMPORTED_MODULE_0__ = __webpack_require__(/*! @babel/runtime/helpers/asyncToGenerator */ "./node_modules/.pnpm/@babel+runtime@7.26.9/node_modules/@babel/runtime/helpers/esm/asyncToGenerator.js"); +/* harmony import */ var _babel_runtime_helpers_classCallCheck__WEBPACK_IMPORTED_MODULE_1__ = __webpack_require__(/*! @babel/runtime/helpers/classCallCheck */ "./node_modules/.pnpm/@babel+runtime@7.26.9/node_modules/@babel/runtime/helpers/esm/classCallCheck.js"); +/* harmony import */ var _babel_runtime_helpers_createClass__WEBPACK_IMPORTED_MODULE_2__ = __webpack_require__(/*! @babel/runtime/helpers/createClass */ "./node_modules/.pnpm/@babel+runtime@7.26.9/node_modules/@babel/runtime/helpers/esm/createClass.js"); +/* harmony import */ var _babel_runtime_regenerator__WEBPACK_IMPORTED_MODULE_3__ = __webpack_require__(/*! @babel/runtime/regenerator */ "./node_modules/.pnpm/@babel+runtime@7.26.9/node_modules/@babel/runtime/regenerator/index.js"); +/* harmony import */ var _babel_runtime_regenerator__WEBPACK_IMPORTED_MODULE_3___default = /*#__PURE__*/__webpack_require__.n(_babel_runtime_regenerator__WEBPACK_IMPORTED_MODULE_3__); +/* harmony import */ var _Presets__WEBPACK_IMPORTED_MODULE_4__ = __webpack_require__(/*! ./Presets */ "./src/Typesense/Presets.ts"); -/* harmony default export */ const __WEBPACK_DEFAULT_EXPORT__ = (typeof URLSearchParams !== 'undefined' ? URLSearchParams : _helpers_AxiosURLSearchParams_js__WEBPACK_IMPORTED_MODULE_0__["default"]); + + +var Preset = /*#__PURE__*/function () { + function Preset(presetId, apiCall) { + (0,_babel_runtime_helpers_classCallCheck__WEBPACK_IMPORTED_MODULE_1__["default"])(this, Preset); + this.presetId = presetId; + this.apiCall = apiCall; + } + return (0,_babel_runtime_helpers_createClass__WEBPACK_IMPORTED_MODULE_2__["default"])(Preset, [{ + key: "retrieve", + value: function () { + var _retrieve = (0,_babel_runtime_helpers_asyncToGenerator__WEBPACK_IMPORTED_MODULE_0__["default"])(/*#__PURE__*/_babel_runtime_regenerator__WEBPACK_IMPORTED_MODULE_3___default().mark(function _callee() { + return _babel_runtime_regenerator__WEBPACK_IMPORTED_MODULE_3___default().wrap(function _callee$(_context) { + while (1) switch (_context.prev = _context.next) { + case 0: + return _context.abrupt("return", this.apiCall.get(this.endpointPath())); + case 1: + case "end": + return _context.stop(); + } + }, _callee, this); + })); + function retrieve() { + return _retrieve.apply(this, arguments); + } + return retrieve; + }() + }, { + key: "delete", + value: function () { + var _delete2 = (0,_babel_runtime_helpers_asyncToGenerator__WEBPACK_IMPORTED_MODULE_0__["default"])(/*#__PURE__*/_babel_runtime_regenerator__WEBPACK_IMPORTED_MODULE_3___default().mark(function _callee2() { + return _babel_runtime_regenerator__WEBPACK_IMPORTED_MODULE_3___default().wrap(function _callee2$(_context2) { + while (1) switch (_context2.prev = _context2.next) { + case 0: + return _context2.abrupt("return", this.apiCall.delete(this.endpointPath())); + case 1: + case "end": + return _context2.stop(); + } + }, _callee2, this); + })); + function _delete() { + return _delete2.apply(this, arguments); + } + return _delete; + }() + }, { + key: "endpointPath", + value: function endpointPath() { + return "".concat(_Presets__WEBPACK_IMPORTED_MODULE_4__["default"].RESOURCEPATH, "/").concat(encodeURIComponent(this.presetId)); + } + }]); +}(); /***/ }), -/***/ "./node_modules/axios/lib/platform/browser/index.js": -/*!**********************************************************!*\ - !*** ./node_modules/axios/lib/platform/browser/index.js ***! - \**********************************************************/ -/***/ ((__unused_webpack___webpack_module__, __webpack_exports__, __webpack_require__) => { +/***/ "./src/Typesense/Presets.ts": +/*!**********************************!*\ + !*** ./src/Typesense/Presets.ts ***! + \**********************************/ +/***/ ((__unused_webpack_module, __webpack_exports__, __webpack_require__) => { "use strict"; __webpack_require__.r(__webpack_exports__); /* harmony export */ __webpack_require__.d(__webpack_exports__, { -/* harmony export */ "default": () => (__WEBPACK_DEFAULT_EXPORT__) +/* harmony export */ "default": () => (/* binding */ Presets) /* harmony export */ }); -/* harmony import */ var _classes_URLSearchParams_js__WEBPACK_IMPORTED_MODULE_0__ = __webpack_require__(/*! ./classes/URLSearchParams.js */ "./node_modules/axios/lib/platform/browser/classes/URLSearchParams.js"); -/* harmony import */ var _classes_FormData_js__WEBPACK_IMPORTED_MODULE_1__ = __webpack_require__(/*! ./classes/FormData.js */ "./node_modules/axios/lib/platform/browser/classes/FormData.js"); -/* harmony import */ var _classes_Blob_js__WEBPACK_IMPORTED_MODULE_2__ = __webpack_require__(/*! ./classes/Blob.js */ "./node_modules/axios/lib/platform/browser/classes/Blob.js"); +/* harmony import */ var _babel_runtime_helpers_typeof__WEBPACK_IMPORTED_MODULE_0__ = __webpack_require__(/*! @babel/runtime/helpers/typeof */ "./node_modules/.pnpm/@babel+runtime@7.26.9/node_modules/@babel/runtime/helpers/esm/typeof.js"); +/* harmony import */ var _babel_runtime_helpers_asyncToGenerator__WEBPACK_IMPORTED_MODULE_1__ = __webpack_require__(/*! @babel/runtime/helpers/asyncToGenerator */ "./node_modules/.pnpm/@babel+runtime@7.26.9/node_modules/@babel/runtime/helpers/esm/asyncToGenerator.js"); +/* harmony import */ var _babel_runtime_helpers_classCallCheck__WEBPACK_IMPORTED_MODULE_2__ = __webpack_require__(/*! @babel/runtime/helpers/classCallCheck */ "./node_modules/.pnpm/@babel+runtime@7.26.9/node_modules/@babel/runtime/helpers/esm/classCallCheck.js"); +/* harmony import */ var _babel_runtime_helpers_createClass__WEBPACK_IMPORTED_MODULE_3__ = __webpack_require__(/*! @babel/runtime/helpers/createClass */ "./node_modules/.pnpm/@babel+runtime@7.26.9/node_modules/@babel/runtime/helpers/esm/createClass.js"); +/* harmony import */ var _babel_runtime_regenerator__WEBPACK_IMPORTED_MODULE_4__ = __webpack_require__(/*! @babel/runtime/regenerator */ "./node_modules/.pnpm/@babel+runtime@7.26.9/node_modules/@babel/runtime/regenerator/index.js"); +/* harmony import */ var _babel_runtime_regenerator__WEBPACK_IMPORTED_MODULE_4___default = /*#__PURE__*/__webpack_require__.n(_babel_runtime_regenerator__WEBPACK_IMPORTED_MODULE_4__); +/* harmony import */ var _Utils__WEBPACK_IMPORTED_MODULE_5__ = __webpack_require__(/*! ./Utils */ "./src/Typesense/Utils.ts"); -/* harmony default export */ const __WEBPACK_DEFAULT_EXPORT__ = ({ - isBrowser: true, - classes: { - URLSearchParams: _classes_URLSearchParams_js__WEBPACK_IMPORTED_MODULE_0__["default"], - FormData: _classes_FormData_js__WEBPACK_IMPORTED_MODULE_1__["default"], - Blob: _classes_Blob_js__WEBPACK_IMPORTED_MODULE_2__["default"] - }, - protocols: ['http', 'https', 'file', 'blob', 'url', 'data'] -}); + + +var RESOURCEPATH = "/presets"; +var Presets = /*#__PURE__*/function () { + function Presets(apiCall) { + (0,_babel_runtime_helpers_classCallCheck__WEBPACK_IMPORTED_MODULE_2__["default"])(this, Presets); + this.apiCall = apiCall; + } + return (0,_babel_runtime_helpers_createClass__WEBPACK_IMPORTED_MODULE_3__["default"])(Presets, [{ + key: "upsert", + value: function () { + var _upsert = (0,_babel_runtime_helpers_asyncToGenerator__WEBPACK_IMPORTED_MODULE_1__["default"])(/*#__PURE__*/_babel_runtime_regenerator__WEBPACK_IMPORTED_MODULE_4___default().mark(function _callee(presetId, params) { + var _normalizedParams, normalizedParams; + return _babel_runtime_regenerator__WEBPACK_IMPORTED_MODULE_4___default().wrap(function _callee$(_context) { + while (1) switch (_context.prev = _context.next) { + case 0: + if (!((0,_babel_runtime_helpers_typeof__WEBPACK_IMPORTED_MODULE_0__["default"])(params.value) === "object" && "searches" in params.value)) { + _context.next = 3; + break; + } + _normalizedParams = params.value.searches.map(function (search) { + return (0,_Utils__WEBPACK_IMPORTED_MODULE_5__.normalizeArrayableParams)(search); + }); + return _context.abrupt("return", this.apiCall.put(this.endpointPath(presetId), { + value: { + searches: _normalizedParams + } + })); + case 3: + normalizedParams = (0,_Utils__WEBPACK_IMPORTED_MODULE_5__.normalizeArrayableParams)(params.value); + return _context.abrupt("return", this.apiCall.put(this.endpointPath(presetId), { + value: normalizedParams + })); + case 5: + case "end": + return _context.stop(); + } + }, _callee, this); + })); + function upsert(_x, _x2) { + return _upsert.apply(this, arguments); + } + return upsert; + }() + }, { + key: "retrieve", + value: function () { + var _retrieve = (0,_babel_runtime_helpers_asyncToGenerator__WEBPACK_IMPORTED_MODULE_1__["default"])(/*#__PURE__*/_babel_runtime_regenerator__WEBPACK_IMPORTED_MODULE_4___default().mark(function _callee2() { + return _babel_runtime_regenerator__WEBPACK_IMPORTED_MODULE_4___default().wrap(function _callee2$(_context2) { + while (1) switch (_context2.prev = _context2.next) { + case 0: + return _context2.abrupt("return", this.apiCall.get(this.endpointPath())); + case 1: + case "end": + return _context2.stop(); + } + }, _callee2, this); + })); + function retrieve() { + return _retrieve.apply(this, arguments); + } + return retrieve; + }() + }, { + key: "endpointPath", + value: function endpointPath(operation) { + return "".concat(Presets.RESOURCEPATH).concat(operation === undefined ? "" : "/" + encodeURIComponent(operation)); + } + }], [{ + key: "RESOURCEPATH", + get: function get() { + return RESOURCEPATH; + } + }]); +}(); /***/ }), -/***/ "./node_modules/axios/lib/platform/common/utils.js": -/*!*********************************************************!*\ - !*** ./node_modules/axios/lib/platform/common/utils.js ***! - \*********************************************************/ -/***/ ((__unused_webpack___webpack_module__, __webpack_exports__, __webpack_require__) => { +/***/ "./src/Typesense/RequestWithCache.ts": +/*!*******************************************!*\ + !*** ./src/Typesense/RequestWithCache.ts ***! + \*******************************************/ +/***/ ((__unused_webpack_module, __webpack_exports__, __webpack_require__) => { "use strict"; __webpack_require__.r(__webpack_exports__); /* harmony export */ __webpack_require__.d(__webpack_exports__, { -/* harmony export */ hasBrowserEnv: () => (/* binding */ hasBrowserEnv), -/* harmony export */ hasStandardBrowserEnv: () => (/* binding */ hasStandardBrowserEnv), -/* harmony export */ hasStandardBrowserWebWorkerEnv: () => (/* binding */ hasStandardBrowserWebWorkerEnv), -/* harmony export */ navigator: () => (/* binding */ _navigator), -/* harmony export */ origin: () => (/* binding */ origin) +/* harmony export */ "default": () => (/* binding */ RequestWithCache) /* harmony export */ }); -const hasBrowserEnv = typeof window !== 'undefined' && typeof document !== 'undefined'; +/* harmony import */ var _babel_runtime_helpers_toConsumableArray__WEBPACK_IMPORTED_MODULE_0__ = __webpack_require__(/*! @babel/runtime/helpers/toConsumableArray */ "./node_modules/.pnpm/@babel+runtime@7.26.9/node_modules/@babel/runtime/helpers/esm/toConsumableArray.js"); +/* harmony import */ var _babel_runtime_helpers_asyncToGenerator__WEBPACK_IMPORTED_MODULE_1__ = __webpack_require__(/*! @babel/runtime/helpers/asyncToGenerator */ "./node_modules/.pnpm/@babel+runtime@7.26.9/node_modules/@babel/runtime/helpers/esm/asyncToGenerator.js"); +/* harmony import */ var _babel_runtime_helpers_classCallCheck__WEBPACK_IMPORTED_MODULE_2__ = __webpack_require__(/*! @babel/runtime/helpers/classCallCheck */ "./node_modules/.pnpm/@babel+runtime@7.26.9/node_modules/@babel/runtime/helpers/esm/classCallCheck.js"); +/* harmony import */ var _babel_runtime_helpers_createClass__WEBPACK_IMPORTED_MODULE_3__ = __webpack_require__(/*! @babel/runtime/helpers/createClass */ "./node_modules/.pnpm/@babel+runtime@7.26.9/node_modules/@babel/runtime/helpers/esm/createClass.js"); +/* harmony import */ var _babel_runtime_helpers_defineProperty__WEBPACK_IMPORTED_MODULE_4__ = __webpack_require__(/*! @babel/runtime/helpers/defineProperty */ "./node_modules/.pnpm/@babel+runtime@7.26.9/node_modules/@babel/runtime/helpers/esm/defineProperty.js"); +/* harmony import */ var _babel_runtime_regenerator__WEBPACK_IMPORTED_MODULE_5__ = __webpack_require__(/*! @babel/runtime/regenerator */ "./node_modules/.pnpm/@babel+runtime@7.26.9/node_modules/@babel/runtime/regenerator/index.js"); +/* harmony import */ var _babel_runtime_regenerator__WEBPACK_IMPORTED_MODULE_5___default = /*#__PURE__*/__webpack_require__.n(_babel_runtime_regenerator__WEBPACK_IMPORTED_MODULE_5__); -const _navigator = typeof navigator === 'object' && navigator || undefined; -/** - * Determine if we're running in a standard browser environment - * - * This allows axios to run in a web worker, and react-native. - * Both environments support XMLHttpRequest, but not fully standard globals. - * - * web workers: - * typeof window -> undefined - * typeof document -> undefined - * - * react-native: - * navigator.product -> 'ReactNative' - * nativescript - * navigator.product -> 'NativeScript' or 'NS' - * - * @returns {boolean} - */ -const hasStandardBrowserEnv = hasBrowserEnv && - (!_navigator || ['ReactNative', 'NativeScript', 'NS'].indexOf(_navigator.product) < 0); -/** - * Determine if we're running in a standard browser webWorker environment - * - * Although the `isStandardBrowserEnv` method indicates that - * `allows axios to run in a web worker`, the WebWorker will still be - * filtered out due to its judgment standard - * `typeof window !== 'undefined' && typeof document !== 'undefined'`. - * This leads to a problem when axios post `FormData` in webWorker - */ -const hasStandardBrowserWebWorkerEnv = (() => { - return ( - typeof WorkerGlobalScope !== 'undefined' && - // eslint-disable-next-line no-undef - self instanceof WorkerGlobalScope && - typeof self.importScripts === 'function' - ); -})(); -const origin = hasBrowserEnv && window.location.href || 'http://localhost'; +var defaultCacheResponseForSeconds = 2 * 60; +var defaultMaxSize = 100; +var RequestWithCache = /*#__PURE__*/function () { + function RequestWithCache() { + (0,_babel_runtime_helpers_classCallCheck__WEBPACK_IMPORTED_MODULE_2__["default"])(this, RequestWithCache); + (0,_babel_runtime_helpers_defineProperty__WEBPACK_IMPORTED_MODULE_4__["default"])(this, "responseCache", new Map()); + (0,_babel_runtime_helpers_defineProperty__WEBPACK_IMPORTED_MODULE_4__["default"])(this, "responsePromiseCache", new Map()); + } + return (0,_babel_runtime_helpers_createClass__WEBPACK_IMPORTED_MODULE_3__["default"])(RequestWithCache, [{ + key: "clearCache", + value: function clearCache() { + this.responseCache = new Map(); + this.responsePromiseCache = new Map(); + } + + // Todo: should probably be passed a callback instead, or an apiCall instance. Types are messy this way + }, { + key: "perform", + value: function () { + var _perform = (0,_babel_runtime_helpers_asyncToGenerator__WEBPACK_IMPORTED_MODULE_1__["default"])(/*#__PURE__*/_babel_runtime_regenerator__WEBPACK_IMPORTED_MODULE_5___default().mark(function _callee(requestContext, requestFunction, requestFunctionArguments, cacheOptions) { + var _cacheOptions$cacheRe, cacheResponseForSeconds, _cacheOptions$maxSize, maxSize, isCacheDisabled, requestFunctionArgumentsJSON, cacheEntry, now, isEntryValid, cachePromiseEntry, _isEntryValid, responsePromise, response, isCacheOverMaxSize, oldestEntry, isResponsePromiseCacheOverMaxSize, _oldestEntry; + return _babel_runtime_regenerator__WEBPACK_IMPORTED_MODULE_5___default().wrap(function _callee$(_context) { + while (1) switch (_context.prev = _context.next) { + case 0: + _cacheOptions$cacheRe = cacheOptions.cacheResponseForSeconds, cacheResponseForSeconds = _cacheOptions$cacheRe === void 0 ? defaultCacheResponseForSeconds : _cacheOptions$cacheRe, _cacheOptions$maxSize = cacheOptions.maxSize, maxSize = _cacheOptions$maxSize === void 0 ? defaultMaxSize : _cacheOptions$maxSize; + isCacheDisabled = cacheResponseForSeconds <= 0 || maxSize <= 0; + if (!isCacheDisabled) { + _context.next = 4; + break; + } + return _context.abrupt("return", requestFunction.call.apply(requestFunction, [requestContext].concat((0,_babel_runtime_helpers_toConsumableArray__WEBPACK_IMPORTED_MODULE_0__["default"])(requestFunctionArguments)))); + case 4: + requestFunctionArgumentsJSON = JSON.stringify(requestFunctionArguments); + cacheEntry = this.responseCache.get(requestFunctionArgumentsJSON); + now = Date.now(); + if (!cacheEntry) { + _context.next = 16; + break; + } + isEntryValid = now - cacheEntry.requestTimestamp < cacheResponseForSeconds * 1000; + if (!isEntryValid) { + _context.next = 15; + break; + } + this.responseCache.delete(requestFunctionArgumentsJSON); + this.responseCache.set(requestFunctionArgumentsJSON, cacheEntry); + return _context.abrupt("return", Promise.resolve(cacheEntry.response)); + case 15: + this.responseCache.delete(requestFunctionArgumentsJSON); + case 16: + cachePromiseEntry = this.responsePromiseCache.get(requestFunctionArgumentsJSON); + if (!cachePromiseEntry) { + _context.next = 26; + break; + } + _isEntryValid = now - cachePromiseEntry.requestTimestamp < cacheResponseForSeconds * 1000; + if (!_isEntryValid) { + _context.next = 25; + break; + } + this.responsePromiseCache.delete(requestFunctionArgumentsJSON); + this.responsePromiseCache.set(requestFunctionArgumentsJSON, cachePromiseEntry); + return _context.abrupt("return", cachePromiseEntry.responsePromise); + case 25: + this.responsePromiseCache.delete(requestFunctionArgumentsJSON); + case 26: + responsePromise = requestFunction.call.apply(requestFunction, [requestContext].concat((0,_babel_runtime_helpers_toConsumableArray__WEBPACK_IMPORTED_MODULE_0__["default"])(requestFunctionArguments))); + this.responsePromiseCache.set(requestFunctionArgumentsJSON, { + requestTimestamp: now, + responsePromise: responsePromise + }); + _context.next = 30; + return responsePromise; + case 30: + response = _context.sent; + this.responseCache.set(requestFunctionArgumentsJSON, { + requestTimestamp: now, + response: response + }); + isCacheOverMaxSize = this.responseCache.size > maxSize; + if (isCacheOverMaxSize) { + oldestEntry = this.responseCache.keys().next().value; + if (oldestEntry) { + this.responseCache.delete(oldestEntry); + } + } + isResponsePromiseCacheOverMaxSize = this.responsePromiseCache.size > maxSize; + if (isResponsePromiseCacheOverMaxSize) { + _oldestEntry = this.responsePromiseCache.keys().next().value; + if (_oldestEntry) { + this.responsePromiseCache.delete(_oldestEntry); + } + } + return _context.abrupt("return", response); + case 37: + case "end": + return _context.stop(); + } + }, _callee, this); + })); + function perform(_x, _x2, _x3, _x4) { + return _perform.apply(this, arguments); + } + return perform; + }() + }]); +}(); /***/ }), -/***/ "./node_modules/axios/lib/platform/index.js": -/*!**************************************************!*\ - !*** ./node_modules/axios/lib/platform/index.js ***! - \**************************************************/ -/***/ ((__unused_webpack___webpack_module__, __webpack_exports__, __webpack_require__) => { +/***/ "./src/Typesense/SearchClient.ts": +/*!***************************************!*\ + !*** ./src/Typesense/SearchClient.ts ***! + \***************************************/ +/***/ ((__unused_webpack_module, __webpack_exports__, __webpack_require__) => { "use strict"; __webpack_require__.r(__webpack_exports__); /* harmony export */ __webpack_require__.d(__webpack_exports__, { -/* harmony export */ "default": () => (__WEBPACK_DEFAULT_EXPORT__) +/* harmony export */ "default": () => (/* binding */ SearchClient) /* harmony export */ }); -/* harmony import */ var _node_index_js__WEBPACK_IMPORTED_MODULE_1__ = __webpack_require__(/*! ./node/index.js */ "./node_modules/axios/lib/platform/browser/index.js"); -/* harmony import */ var _common_utils_js__WEBPACK_IMPORTED_MODULE_0__ = __webpack_require__(/*! ./common/utils.js */ "./node_modules/axios/lib/platform/common/utils.js"); +/* harmony import */ var _babel_runtime_helpers_slicedToArray__WEBPACK_IMPORTED_MODULE_0__ = __webpack_require__(/*! @babel/runtime/helpers/slicedToArray */ "./node_modules/.pnpm/@babel+runtime@7.26.9/node_modules/@babel/runtime/helpers/esm/slicedToArray.js"); +/* harmony import */ var _babel_runtime_helpers_classCallCheck__WEBPACK_IMPORTED_MODULE_1__ = __webpack_require__(/*! @babel/runtime/helpers/classCallCheck */ "./node_modules/.pnpm/@babel+runtime@7.26.9/node_modules/@babel/runtime/helpers/esm/classCallCheck.js"); +/* harmony import */ var _babel_runtime_helpers_createClass__WEBPACK_IMPORTED_MODULE_2__ = __webpack_require__(/*! @babel/runtime/helpers/createClass */ "./node_modules/.pnpm/@babel+runtime@7.26.9/node_modules/@babel/runtime/helpers/esm/createClass.js"); +/* harmony import */ var _Configuration__WEBPACK_IMPORTED_MODULE_3__ = __webpack_require__(/*! ./Configuration */ "./src/Typesense/Configuration.ts"); +/* harmony import */ var _ApiCall__WEBPACK_IMPORTED_MODULE_4__ = __webpack_require__(/*! ./ApiCall */ "./src/Typesense/ApiCall.ts"); +/* harmony import */ var _MultiSearch__WEBPACK_IMPORTED_MODULE_5__ = __webpack_require__(/*! ./MultiSearch */ "./src/Typesense/MultiSearch.ts"); +/* harmony import */ var _SearchOnlyCollection__WEBPACK_IMPORTED_MODULE_6__ = __webpack_require__(/*! ./SearchOnlyCollection */ "./src/Typesense/SearchOnlyCollection.ts"); -/* harmony default export */ const __WEBPACK_DEFAULT_EXPORT__ = ({ - ..._common_utils_js__WEBPACK_IMPORTED_MODULE_0__, - ..._node_index_js__WEBPACK_IMPORTED_MODULE_1__["default"] -}); + + + + +var SearchClient = /*#__PURE__*/function () { + function SearchClient(options) { + var _options$sendApiKeyAs; + (0,_babel_runtime_helpers_classCallCheck__WEBPACK_IMPORTED_MODULE_1__["default"])(this, SearchClient); + options.sendApiKeyAsQueryParam = (_options$sendApiKeyAs = options.sendApiKeyAsQueryParam) !== null && _options$sendApiKeyAs !== void 0 ? _options$sendApiKeyAs : true; + if (options.sendApiKeyAsQueryParam === true && (options.apiKey || "").length > 2000) { + console.warn("[typesense] API Key is longer than 2000 characters which is over the allowed limit, so disabling sending it as a query parameter."); + options.sendApiKeyAsQueryParam = false; + } + this.configuration = new _Configuration__WEBPACK_IMPORTED_MODULE_3__["default"](options); + this.apiCall = new _ApiCall__WEBPACK_IMPORTED_MODULE_4__["default"](this.configuration); + this.multiSearch = new _MultiSearch__WEBPACK_IMPORTED_MODULE_5__["default"](this.apiCall, this.configuration, true); + this.individualCollections = {}; + } + return (0,_babel_runtime_helpers_createClass__WEBPACK_IMPORTED_MODULE_2__["default"])(SearchClient, [{ + key: "clearCache", + value: function clearCache() { + this.multiSearch.clearCache(); + + // eslint-disable-next-line @typescript-eslint/no-unused-vars + Object.entries(this.individualCollections).forEach(function (_ref) { + var _ref2 = (0,_babel_runtime_helpers_slicedToArray__WEBPACK_IMPORTED_MODULE_0__["default"])(_ref, 2), + _ = _ref2[0], + collection = _ref2[1]; + collection.documents().clearCache(); + }); + } + }, { + key: "collections", + value: function collections(collectionName) { + if (!collectionName) { + throw new Error("Typesense.SearchClient only supports search operations, so the collectionName that needs to " + "be searched must be specified. Use Typesense.Client if you need to access the collection object."); + } else { + if (this.individualCollections[collectionName] === undefined) { + this.individualCollections[collectionName] = new _SearchOnlyCollection__WEBPACK_IMPORTED_MODULE_6__.SearchOnlyCollection(collectionName, this.apiCall, this.configuration); + } + return this.individualCollections[collectionName]; + } + } + }]); +}(); /***/ }), -/***/ "./node_modules/axios/lib/utils.js": -/*!*****************************************!*\ - !*** ./node_modules/axios/lib/utils.js ***! - \*****************************************/ -/***/ ((__unused_webpack___webpack_module__, __webpack_exports__, __webpack_require__) => { +/***/ "./src/Typesense/SearchOnlyCollection.ts": +/*!***********************************************!*\ + !*** ./src/Typesense/SearchOnlyCollection.ts ***! + \***********************************************/ +/***/ ((__unused_webpack_module, __webpack_exports__, __webpack_require__) => { "use strict"; __webpack_require__.r(__webpack_exports__); /* harmony export */ __webpack_require__.d(__webpack_exports__, { -/* harmony export */ "default": () => (__WEBPACK_DEFAULT_EXPORT__) +/* harmony export */ SearchOnlyCollection: () => (/* binding */ SearchOnlyCollection) /* harmony export */ }); -/* harmony import */ var _helpers_bind_js__WEBPACK_IMPORTED_MODULE_0__ = __webpack_require__(/*! ./helpers/bind.js */ "./node_modules/axios/lib/helpers/bind.js"); - - - - -// utils is a library of generic helper functions non-specific to axios +/* harmony import */ var _babel_runtime_helpers_classCallCheck__WEBPACK_IMPORTED_MODULE_0__ = __webpack_require__(/*! @babel/runtime/helpers/classCallCheck */ "./node_modules/.pnpm/@babel+runtime@7.26.9/node_modules/@babel/runtime/helpers/esm/classCallCheck.js"); +/* harmony import */ var _babel_runtime_helpers_createClass__WEBPACK_IMPORTED_MODULE_1__ = __webpack_require__(/*! @babel/runtime/helpers/createClass */ "./node_modules/.pnpm/@babel+runtime@7.26.9/node_modules/@babel/runtime/helpers/esm/createClass.js"); +/* harmony import */ var _SearchOnlyDocuments__WEBPACK_IMPORTED_MODULE_2__ = __webpack_require__(/*! ./SearchOnlyDocuments */ "./src/Typesense/SearchOnlyDocuments.ts"); -const {toString} = Object.prototype; -const {getPrototypeOf} = Object; -const kindOf = (cache => thing => { - const str = toString.call(thing); - return cache[str] || (cache[str] = str.slice(8, -1).toLowerCase()); -})(Object.create(null)); -const kindOfTest = (type) => { - type = type.toLowerCase(); - return (thing) => kindOf(thing) === type -} +var SearchOnlyCollection = /*#__PURE__*/function () { + function SearchOnlyCollection(name, apiCall, configuration) { + (0,_babel_runtime_helpers_classCallCheck__WEBPACK_IMPORTED_MODULE_0__["default"])(this, SearchOnlyCollection); + this.name = name; + this.apiCall = apiCall; + this.configuration = configuration; + this._documents = new _SearchOnlyDocuments__WEBPACK_IMPORTED_MODULE_2__.SearchOnlyDocuments(this.name, this.apiCall, this.configuration); + } + return (0,_babel_runtime_helpers_createClass__WEBPACK_IMPORTED_MODULE_1__["default"])(SearchOnlyCollection, [{ + key: "documents", + value: function documents() { + return this._documents; + } + }]); +}(); -const typeOfTest = type => thing => typeof thing === type; +/***/ }), -/** - * Determine if a value is an Array - * - * @param {Object} val The value to test - * - * @returns {boolean} True if value is an Array, otherwise false - */ -const {isArray} = Array; +/***/ "./src/Typesense/SearchOnlyDocuments.ts": +/*!**********************************************!*\ + !*** ./src/Typesense/SearchOnlyDocuments.ts ***! + \**********************************************/ +/***/ ((__unused_webpack_module, __webpack_exports__, __webpack_require__) => { -/** - * Determine if a value is undefined - * - * @param {*} val The value to test - * - * @returns {boolean} True if the value is undefined, otherwise false - */ -const isUndefined = typeOfTest('undefined'); +"use strict"; +__webpack_require__.r(__webpack_exports__); +/* harmony export */ __webpack_require__.d(__webpack_exports__, { +/* harmony export */ SearchOnlyDocuments: () => (/* binding */ SearchOnlyDocuments) +/* harmony export */ }); +/* harmony import */ var _babel_runtime_helpers_asyncToGenerator__WEBPACK_IMPORTED_MODULE_0__ = __webpack_require__(/*! @babel/runtime/helpers/asyncToGenerator */ "./node_modules/.pnpm/@babel+runtime@7.26.9/node_modules/@babel/runtime/helpers/esm/asyncToGenerator.js"); +/* harmony import */ var _babel_runtime_helpers_classCallCheck__WEBPACK_IMPORTED_MODULE_1__ = __webpack_require__(/*! @babel/runtime/helpers/classCallCheck */ "./node_modules/.pnpm/@babel+runtime@7.26.9/node_modules/@babel/runtime/helpers/esm/classCallCheck.js"); +/* harmony import */ var _babel_runtime_helpers_createClass__WEBPACK_IMPORTED_MODULE_2__ = __webpack_require__(/*! @babel/runtime/helpers/createClass */ "./node_modules/.pnpm/@babel+runtime@7.26.9/node_modules/@babel/runtime/helpers/esm/createClass.js"); +/* harmony import */ var _babel_runtime_helpers_defineProperty__WEBPACK_IMPORTED_MODULE_3__ = __webpack_require__(/*! @babel/runtime/helpers/defineProperty */ "./node_modules/.pnpm/@babel+runtime@7.26.9/node_modules/@babel/runtime/helpers/esm/defineProperty.js"); +/* harmony import */ var _babel_runtime_regenerator__WEBPACK_IMPORTED_MODULE_4__ = __webpack_require__(/*! @babel/runtime/regenerator */ "./node_modules/.pnpm/@babel+runtime@7.26.9/node_modules/@babel/runtime/regenerator/index.js"); +/* harmony import */ var _babel_runtime_regenerator__WEBPACK_IMPORTED_MODULE_4___default = /*#__PURE__*/__webpack_require__.n(_babel_runtime_regenerator__WEBPACK_IMPORTED_MODULE_4__); +/* harmony import */ var _RequestWithCache__WEBPACK_IMPORTED_MODULE_5__ = __webpack_require__(/*! ./RequestWithCache */ "./src/Typesense/RequestWithCache.ts"); +/* harmony import */ var _Collections__WEBPACK_IMPORTED_MODULE_6__ = __webpack_require__(/*! ./Collections */ "./src/Typesense/Collections.ts"); +/* harmony import */ var _Utils__WEBPACK_IMPORTED_MODULE_7__ = __webpack_require__(/*! ./Utils */ "./src/Typesense/Utils.ts"); -/** - * Determine if a value is a Buffer - * - * @param {*} val The value to test - * - * @returns {boolean} True if value is a Buffer, otherwise false - */ -function isBuffer(val) { - return val !== null && !isUndefined(val) && val.constructor !== null && !isUndefined(val.constructor) - && isFunction(val.constructor.isBuffer) && val.constructor.isBuffer(val); -} -/** - * Determine if a value is an ArrayBuffer - * - * @param {*} val The value to test - * - * @returns {boolean} True if value is an ArrayBuffer, otherwise false - */ -const isArrayBuffer = kindOfTest('ArrayBuffer'); -/** - * Determine if a value is a view on an ArrayBuffer - * - * @param {*} val The value to test - * - * @returns {boolean} True if value is a view on an ArrayBuffer, otherwise false - */ -function isArrayBufferView(val) { - let result; - if ((typeof ArrayBuffer !== 'undefined') && (ArrayBuffer.isView)) { - result = ArrayBuffer.isView(val); - } else { - result = (val) && (val.buffer) && (isArrayBuffer(val.buffer)); - } - return result; -} -/** - * Determine if a value is a String - * - * @param {*} val The value to test - * - * @returns {boolean} True if value is a String, otherwise false - */ -const isString = typeOfTest('string'); -/** - * Determine if a value is a Function - * - * @param {*} val The value to test - * @returns {boolean} True if value is a Function, otherwise false - */ -const isFunction = typeOfTest('function'); -/** - * Determine if a value is a Number - * - * @param {*} val The value to test - * - * @returns {boolean} True if value is a Number, otherwise false - */ -const isNumber = typeOfTest('number'); -/** - * Determine if a value is an Object - * - * @param {*} thing The value to test - * - * @returns {boolean} True if value is an Object, otherwise false - */ -const isObject = (thing) => thing !== null && typeof thing === 'object'; +var RESOURCEPATH = "/documents"; +var SearchOnlyDocuments = /*#__PURE__*/function () { + function SearchOnlyDocuments(collectionName, apiCall, configuration) { + (0,_babel_runtime_helpers_classCallCheck__WEBPACK_IMPORTED_MODULE_1__["default"])(this, SearchOnlyDocuments); + (0,_babel_runtime_helpers_defineProperty__WEBPACK_IMPORTED_MODULE_3__["default"])(this, "requestWithCache", new _RequestWithCache__WEBPACK_IMPORTED_MODULE_5__["default"]()); + this.collectionName = collectionName; + this.apiCall = apiCall; + this.configuration = configuration; + } + return (0,_babel_runtime_helpers_createClass__WEBPACK_IMPORTED_MODULE_2__["default"])(SearchOnlyDocuments, [{ + key: "clearCache", + value: function clearCache() { + this.requestWithCache.clearCache(); + } + }, { + key: "search", + value: function () { + var _search = (0,_babel_runtime_helpers_asyncToGenerator__WEBPACK_IMPORTED_MODULE_0__["default"])(/*#__PURE__*/_babel_runtime_regenerator__WEBPACK_IMPORTED_MODULE_4___default().mark(function _callee(searchParameters) { + var _ref, + _ref$cacheSearchResul, + cacheSearchResultsForSeconds, + _ref$abortSignal, + abortSignal, + additionalQueryParams, + normalizedParams, + queryParams, + _args = arguments; + return _babel_runtime_regenerator__WEBPACK_IMPORTED_MODULE_4___default().wrap(function _callee$(_context) { + while (1) switch (_context.prev = _context.next) { + case 0: + _ref = _args.length > 1 && _args[1] !== undefined ? _args[1] : {}, _ref$cacheSearchResul = _ref.cacheSearchResultsForSeconds, cacheSearchResultsForSeconds = _ref$cacheSearchResul === void 0 ? this.configuration.cacheSearchResultsForSeconds : _ref$cacheSearchResul, _ref$abortSignal = _ref.abortSignal, abortSignal = _ref$abortSignal === void 0 ? null : _ref$abortSignal; + additionalQueryParams = {}; + if (this.configuration.useServerSideSearchCache === true) { + additionalQueryParams["use_cache"] = true; + } + normalizedParams = (0,_Utils__WEBPACK_IMPORTED_MODULE_7__.normalizeArrayableParams)(searchParameters); + queryParams = Object.assign({}, additionalQueryParams, normalizedParams); + return _context.abrupt("return", this.requestWithCache.perform(this.apiCall, this.apiCall.get, [this.endpointPath("search"), queryParams, { + abortSignal: abortSignal + }], { + cacheResponseForSeconds: cacheSearchResultsForSeconds + })); + case 6: + case "end": + return _context.stop(); + } + }, _callee, this); + })); + function search(_x) { + return _search.apply(this, arguments); + } + return search; + }() + }, { + key: "endpointPath", + value: function endpointPath(operation) { + return "".concat(_Collections__WEBPACK_IMPORTED_MODULE_6__["default"].RESOURCEPATH, "/").concat(this.collectionName).concat(RESOURCEPATH).concat(operation === undefined ? "" : "/" + operation); + } + }], [{ + key: "RESOURCEPATH", + get: function get() { + return RESOURCEPATH; + } + }]); +}(); -/** - * Determine if a value is a Boolean - * - * @param {*} thing The value to test - * @returns {boolean} True if value is a Boolean, otherwise false - */ -const isBoolean = thing => thing === true || thing === false; +/***/ }), -/** - * Determine if a value is a plain Object - * - * @param {*} val The value to test - * - * @returns {boolean} True if value is a plain Object, otherwise false - */ -const isPlainObject = (val) => { - if (kindOf(val) !== 'object') { - return false; - } +/***/ "./src/Typesense/Stats.ts": +/*!********************************!*\ + !*** ./src/Typesense/Stats.ts ***! + \********************************/ +/***/ ((__unused_webpack_module, __webpack_exports__, __webpack_require__) => { - const prototype = getPrototypeOf(val); - return (prototype === null || prototype === Object.prototype || Object.getPrototypeOf(prototype) === null) && !(Symbol.toStringTag in val) && !(Symbol.iterator in val); -} +"use strict"; +__webpack_require__.r(__webpack_exports__); +/* harmony export */ __webpack_require__.d(__webpack_exports__, { +/* harmony export */ "default": () => (/* binding */ Metrics) +/* harmony export */ }); +/* harmony import */ var _babel_runtime_helpers_asyncToGenerator__WEBPACK_IMPORTED_MODULE_0__ = __webpack_require__(/*! @babel/runtime/helpers/asyncToGenerator */ "./node_modules/.pnpm/@babel+runtime@7.26.9/node_modules/@babel/runtime/helpers/esm/asyncToGenerator.js"); +/* harmony import */ var _babel_runtime_helpers_classCallCheck__WEBPACK_IMPORTED_MODULE_1__ = __webpack_require__(/*! @babel/runtime/helpers/classCallCheck */ "./node_modules/.pnpm/@babel+runtime@7.26.9/node_modules/@babel/runtime/helpers/esm/classCallCheck.js"); +/* harmony import */ var _babel_runtime_helpers_createClass__WEBPACK_IMPORTED_MODULE_2__ = __webpack_require__(/*! @babel/runtime/helpers/createClass */ "./node_modules/.pnpm/@babel+runtime@7.26.9/node_modules/@babel/runtime/helpers/esm/createClass.js"); +/* harmony import */ var _babel_runtime_regenerator__WEBPACK_IMPORTED_MODULE_3__ = __webpack_require__(/*! @babel/runtime/regenerator */ "./node_modules/.pnpm/@babel+runtime@7.26.9/node_modules/@babel/runtime/regenerator/index.js"); +/* harmony import */ var _babel_runtime_regenerator__WEBPACK_IMPORTED_MODULE_3___default = /*#__PURE__*/__webpack_require__.n(_babel_runtime_regenerator__WEBPACK_IMPORTED_MODULE_3__); -/** - * Determine if a value is a Date - * - * @param {*} val The value to test - * - * @returns {boolean} True if value is a Date, otherwise false - */ -const isDate = kindOfTest('Date'); -/** - * Determine if a value is a File - * - * @param {*} val The value to test - * - * @returns {boolean} True if value is a File, otherwise false - */ -const isFile = kindOfTest('File'); -/** - * Determine if a value is a Blob - * - * @param {*} val The value to test - * - * @returns {boolean} True if value is a Blob, otherwise false - */ -const isBlob = kindOfTest('Blob'); -/** - * Determine if a value is a FileList - * - * @param {*} val The value to test - * - * @returns {boolean} True if value is a File, otherwise false - */ -const isFileList = kindOfTest('FileList'); +var RESOURCEPATH = "/stats.json"; +var Metrics = /*#__PURE__*/function () { + function Metrics(apiCall) { + (0,_babel_runtime_helpers_classCallCheck__WEBPACK_IMPORTED_MODULE_1__["default"])(this, Metrics); + this.apiCall = apiCall; + } + return (0,_babel_runtime_helpers_createClass__WEBPACK_IMPORTED_MODULE_2__["default"])(Metrics, [{ + key: "retrieve", + value: function () { + var _retrieve = (0,_babel_runtime_helpers_asyncToGenerator__WEBPACK_IMPORTED_MODULE_0__["default"])(/*#__PURE__*/_babel_runtime_regenerator__WEBPACK_IMPORTED_MODULE_3___default().mark(function _callee() { + return _babel_runtime_regenerator__WEBPACK_IMPORTED_MODULE_3___default().wrap(function _callee$(_context) { + while (1) switch (_context.prev = _context.next) { + case 0: + return _context.abrupt("return", this.apiCall.get(RESOURCEPATH)); + case 1: + case "end": + return _context.stop(); + } + }, _callee, this); + })); + function retrieve() { + return _retrieve.apply(this, arguments); + } + return retrieve; + }() + }]); +}(); -/** - * Determine if a value is a Stream - * - * @param {*} val The value to test - * - * @returns {boolean} True if value is a Stream, otherwise false - */ -const isStream = (val) => isObject(val) && isFunction(val.pipe); -/** - * Determine if a value is a FormData - * - * @param {*} thing The value to test - * - * @returns {boolean} True if value is an FormData, otherwise false - */ -const isFormData = (thing) => { - let kind; - return thing && ( - (typeof FormData === 'function' && thing instanceof FormData) || ( - isFunction(thing.append) && ( - (kind = kindOf(thing)) === 'formdata' || - // detect form-data instance - (kind === 'object' && isFunction(thing.toString) && thing.toString() === '[object FormData]') - ) - ) - ) -} +/***/ }), -/** - * Determine if a value is a URLSearchParams object - * - * @param {*} val The value to test - * - * @returns {boolean} True if value is a URLSearchParams object, otherwise false - */ -const isURLSearchParams = kindOfTest('URLSearchParams'); +/***/ "./src/Typesense/Stemming.ts": +/*!***********************************!*\ + !*** ./src/Typesense/Stemming.ts ***! + \***********************************/ +/***/ ((__unused_webpack_module, __webpack_exports__, __webpack_require__) => { -const [isReadableStream, isRequest, isResponse, isHeaders] = ['ReadableStream', 'Request', 'Response', 'Headers'].map(kindOfTest); +"use strict"; +__webpack_require__.r(__webpack_exports__); +/* harmony export */ __webpack_require__.d(__webpack_exports__, { +/* harmony export */ "default": () => (/* binding */ Stemming) +/* harmony export */ }); +/* harmony import */ var _babel_runtime_helpers_classCallCheck__WEBPACK_IMPORTED_MODULE_0__ = __webpack_require__(/*! @babel/runtime/helpers/classCallCheck */ "./node_modules/.pnpm/@babel+runtime@7.26.9/node_modules/@babel/runtime/helpers/esm/classCallCheck.js"); +/* harmony import */ var _babel_runtime_helpers_createClass__WEBPACK_IMPORTED_MODULE_1__ = __webpack_require__(/*! @babel/runtime/helpers/createClass */ "./node_modules/.pnpm/@babel+runtime@7.26.9/node_modules/@babel/runtime/helpers/esm/createClass.js"); +/* harmony import */ var _babel_runtime_helpers_defineProperty__WEBPACK_IMPORTED_MODULE_2__ = __webpack_require__(/*! @babel/runtime/helpers/defineProperty */ "./node_modules/.pnpm/@babel+runtime@7.26.9/node_modules/@babel/runtime/helpers/esm/defineProperty.js"); +/* harmony import */ var _StemmingDictionaries__WEBPACK_IMPORTED_MODULE_3__ = __webpack_require__(/*! ./StemmingDictionaries */ "./src/Typesense/StemmingDictionaries.ts"); +/* harmony import */ var _StemmingDictionary__WEBPACK_IMPORTED_MODULE_4__ = __webpack_require__(/*! ./StemmingDictionary */ "./src/Typesense/StemmingDictionary.ts"); -/** - * Trim excess whitespace off the beginning and end of a string - * - * @param {String} str The String to trim - * - * @returns {String} The String freed of excess whitespace - */ -const trim = (str) => str.trim ? - str.trim() : str.replace(/^[\s\uFEFF\xA0]+|[\s\uFEFF\xA0]+$/g, ''); -/** - * Iterate over an Array or an Object invoking a function for each item. - * - * If `obj` is an Array callback will be called passing - * the value, index, and complete array for each item. - * - * If 'obj' is an Object callback will be called passing - * the value, key, and complete object for each property. - * - * @param {Object|Array} obj The object to iterate - * @param {Function} fn The callback to invoke for each item - * - * @param {Boolean} [allOwnKeys = false] - * @returns {any} - */ -function forEach(obj, fn, {allOwnKeys = false} = {}) { - // Don't bother if no value provided - if (obj === null || typeof obj === 'undefined') { - return; - } - let i; - let l; - // Force an array if not already something iterable - if (typeof obj !== 'object') { - /*eslint no-param-reassign:0*/ - obj = [obj]; - } - if (isArray(obj)) { - // Iterate over array values - for (i = 0, l = obj.length; i < l; i++) { - fn.call(null, obj[i], i, obj); +var RESOURCEPATH = "/stemming"; +var Stemming = /*#__PURE__*/function () { + function Stemming(apiCall) { + (0,_babel_runtime_helpers_classCallCheck__WEBPACK_IMPORTED_MODULE_0__["default"])(this, Stemming); + (0,_babel_runtime_helpers_defineProperty__WEBPACK_IMPORTED_MODULE_2__["default"])(this, "individualStemmingDictionaries", {}); + this.apiCall = apiCall; + this.apiCall = apiCall; + this._stemmingDictionaries = new _StemmingDictionaries__WEBPACK_IMPORTED_MODULE_3__["default"](this.apiCall); + } + return (0,_babel_runtime_helpers_createClass__WEBPACK_IMPORTED_MODULE_1__["default"])(Stemming, [{ + key: "dictionaries", + value: function dictionaries(id) { + if (id === undefined) { + return this._stemmingDictionaries; + } else { + if (this.individualStemmingDictionaries[id] === undefined) { + this.individualStemmingDictionaries[id] = new _StemmingDictionary__WEBPACK_IMPORTED_MODULE_4__["default"](id, this.apiCall); + } + return this.individualStemmingDictionaries[id]; + } } - } else { - // Iterate over object keys - const keys = allOwnKeys ? Object.getOwnPropertyNames(obj) : Object.keys(obj); - const len = keys.length; - let key; - - for (i = 0; i < len; i++) { - key = keys[i]; - fn.call(null, obj[key], key, obj); + }], [{ + key: "RESOURCEPATH", + get: function get() { + return RESOURCEPATH; } - } -} + }]); +}(); -function findKey(obj, key) { - key = key.toLowerCase(); - const keys = Object.keys(obj); - let i = keys.length; - let _key; - while (i-- > 0) { - _key = keys[i]; - if (key === _key.toLowerCase()) { - return _key; - } - } - return null; -} -const _global = (() => { - /*eslint no-undef:0*/ - if (typeof globalThis !== "undefined") return globalThis; - return typeof self !== "undefined" ? self : (typeof window !== 'undefined' ? window : global) -})(); +/***/ }), -const isContextDefined = (context) => !isUndefined(context) && context !== _global; +/***/ "./src/Typesense/StemmingDictionaries.ts": +/*!***********************************************!*\ + !*** ./src/Typesense/StemmingDictionaries.ts ***! + \***********************************************/ +/***/ ((__unused_webpack_module, __webpack_exports__, __webpack_require__) => { -/** - * Accepts varargs expecting each argument to be an object, then - * immutably merges the properties of each object and returns result. - * - * When multiple objects contain the same key the later object in - * the arguments list will take precedence. - * - * Example: - * - * ```js - * var result = merge({foo: 123}, {foo: 456}); - * console.log(result.foo); // outputs 456 - * ``` - * - * @param {Object} obj1 Object to merge - * - * @returns {Object} Result of all merge properties - */ -function merge(/* obj1, obj2, obj3, ... */) { - const {caseless} = isContextDefined(this) && this || {}; - const result = {}; - const assignValue = (val, key) => { - const targetKey = caseless && findKey(result, key) || key; - if (isPlainObject(result[targetKey]) && isPlainObject(val)) { - result[targetKey] = merge(result[targetKey], val); - } else if (isPlainObject(val)) { - result[targetKey] = merge({}, val); - } else if (isArray(val)) { - result[targetKey] = val.slice(); - } else { - result[targetKey] = val; +"use strict"; +__webpack_require__.r(__webpack_exports__); +/* harmony export */ __webpack_require__.d(__webpack_exports__, { +/* harmony export */ "default": () => (/* binding */ StemmingDictionaries) +/* harmony export */ }); +/* harmony import */ var _babel_runtime_helpers_asyncToGenerator__WEBPACK_IMPORTED_MODULE_0__ = __webpack_require__(/*! @babel/runtime/helpers/asyncToGenerator */ "./node_modules/.pnpm/@babel+runtime@7.26.9/node_modules/@babel/runtime/helpers/esm/asyncToGenerator.js"); +/* harmony import */ var _babel_runtime_helpers_classCallCheck__WEBPACK_IMPORTED_MODULE_1__ = __webpack_require__(/*! @babel/runtime/helpers/classCallCheck */ "./node_modules/.pnpm/@babel+runtime@7.26.9/node_modules/@babel/runtime/helpers/esm/classCallCheck.js"); +/* harmony import */ var _babel_runtime_helpers_createClass__WEBPACK_IMPORTED_MODULE_2__ = __webpack_require__(/*! @babel/runtime/helpers/createClass */ "./node_modules/.pnpm/@babel+runtime@7.26.9/node_modules/@babel/runtime/helpers/esm/createClass.js"); +/* harmony import */ var _babel_runtime_regenerator__WEBPACK_IMPORTED_MODULE_3__ = __webpack_require__(/*! @babel/runtime/regenerator */ "./node_modules/.pnpm/@babel+runtime@7.26.9/node_modules/@babel/runtime/regenerator/index.js"); +/* harmony import */ var _babel_runtime_regenerator__WEBPACK_IMPORTED_MODULE_3___default = /*#__PURE__*/__webpack_require__.n(_babel_runtime_regenerator__WEBPACK_IMPORTED_MODULE_3__); + + + + +var RESOURCEPATH = "/stemming/dictionaries"; +var StemmingDictionaries = /*#__PURE__*/function () { + function StemmingDictionaries(apiCall) { + (0,_babel_runtime_helpers_classCallCheck__WEBPACK_IMPORTED_MODULE_1__["default"])(this, StemmingDictionaries); + this.apiCall = apiCall; + this.apiCall = apiCall; + } + return (0,_babel_runtime_helpers_createClass__WEBPACK_IMPORTED_MODULE_2__["default"])(StemmingDictionaries, [{ + key: "upsert", + value: function () { + var _upsert = (0,_babel_runtime_helpers_asyncToGenerator__WEBPACK_IMPORTED_MODULE_0__["default"])(/*#__PURE__*/_babel_runtime_regenerator__WEBPACK_IMPORTED_MODULE_3___default().mark(function _callee(id, wordRootCombinations) { + var wordRootCombinationsInJSONLFormat, resultsInJSONLFormat; + return _babel_runtime_regenerator__WEBPACK_IMPORTED_MODULE_3___default().wrap(function _callee$(_context) { + while (1) switch (_context.prev = _context.next) { + case 0: + wordRootCombinationsInJSONLFormat = Array.isArray(wordRootCombinations) ? wordRootCombinations.map(function (combo) { + return JSON.stringify(combo); + }).join("\n") : wordRootCombinations; + _context.next = 3; + return this.apiCall.performRequest("post", this.endpointPath("import"), { + queryParameters: { + id: id + }, + bodyParameters: wordRootCombinationsInJSONLFormat, + additionalHeaders: { + "Content-Type": "text/plain" + }, + skipConnectionTimeout: true + }); + case 3: + resultsInJSONLFormat = _context.sent; + return _context.abrupt("return", Array.isArray(wordRootCombinations) ? resultsInJSONLFormat.split("\n").map(function (line) { + return JSON.parse(line); + }) : resultsInJSONLFormat); + case 5: + case "end": + return _context.stop(); + } + }, _callee, this); + })); + function upsert(_x, _x2) { + return _upsert.apply(this, arguments); + } + return upsert; + }() + }, { + key: "retrieve", + value: function () { + var _retrieve = (0,_babel_runtime_helpers_asyncToGenerator__WEBPACK_IMPORTED_MODULE_0__["default"])(/*#__PURE__*/_babel_runtime_regenerator__WEBPACK_IMPORTED_MODULE_3___default().mark(function _callee2() { + return _babel_runtime_regenerator__WEBPACK_IMPORTED_MODULE_3___default().wrap(function _callee2$(_context2) { + while (1) switch (_context2.prev = _context2.next) { + case 0: + return _context2.abrupt("return", this.apiCall.get(this.endpointPath())); + case 1: + case "end": + return _context2.stop(); + } + }, _callee2, this); + })); + function retrieve() { + return _retrieve.apply(this, arguments); + } + return retrieve; + }() + }, { + key: "endpointPath", + value: function endpointPath(operation) { + return operation === undefined ? "".concat(StemmingDictionaries.RESOURCEPATH) : "".concat(StemmingDictionaries.RESOURCEPATH, "/").concat(encodeURIComponent(operation)); } - } + }], [{ + key: "RESOURCEPATH", + get: function get() { + return RESOURCEPATH; + } + }]); +}(); - for (let i = 0, l = arguments.length; i < l; i++) { - arguments[i] && forEach(arguments[i], assignValue); - } - return result; -} -/** - * Extends object a by mutably adding to it the properties of object b. - * - * @param {Object} a The object to be extended - * @param {Object} b The object to copy properties from - * @param {Object} thisArg The object to bind function to - * - * @param {Boolean} [allOwnKeys] - * @returns {Object} The resulting value of object a - */ -const extend = (a, b, thisArg, {allOwnKeys}= {}) => { - forEach(b, (val, key) => { - if (thisArg && isFunction(val)) { - a[key] = (0,_helpers_bind_js__WEBPACK_IMPORTED_MODULE_0__["default"])(val, thisArg); - } else { - a[key] = val; - } - }, {allOwnKeys}); - return a; -} +/***/ }), -/** - * Remove byte order marker. This catches EF BB BF (the UTF-8 BOM) - * - * @param {string} content with BOM - * - * @returns {string} content value without BOM - */ -const stripBOM = (content) => { - if (content.charCodeAt(0) === 0xFEFF) { - content = content.slice(1); - } - return content; -} +/***/ "./src/Typesense/StemmingDictionary.ts": +/*!*********************************************!*\ + !*** ./src/Typesense/StemmingDictionary.ts ***! + \*********************************************/ +/***/ ((__unused_webpack_module, __webpack_exports__, __webpack_require__) => { -/** - * Inherit the prototype methods from one constructor into another - * @param {function} constructor - * @param {function} superConstructor - * @param {object} [props] - * @param {object} [descriptors] - * - * @returns {void} - */ -const inherits = (constructor, superConstructor, props, descriptors) => { - constructor.prototype = Object.create(superConstructor.prototype, descriptors); - constructor.prototype.constructor = constructor; - Object.defineProperty(constructor, 'super', { - value: superConstructor.prototype - }); - props && Object.assign(constructor.prototype, props); -} +"use strict"; +__webpack_require__.r(__webpack_exports__); +/* harmony export */ __webpack_require__.d(__webpack_exports__, { +/* harmony export */ "default": () => (/* binding */ StemmingDictionary) +/* harmony export */ }); +/* harmony import */ var _babel_runtime_helpers_asyncToGenerator__WEBPACK_IMPORTED_MODULE_0__ = __webpack_require__(/*! @babel/runtime/helpers/asyncToGenerator */ "./node_modules/.pnpm/@babel+runtime@7.26.9/node_modules/@babel/runtime/helpers/esm/asyncToGenerator.js"); +/* harmony import */ var _babel_runtime_helpers_classCallCheck__WEBPACK_IMPORTED_MODULE_1__ = __webpack_require__(/*! @babel/runtime/helpers/classCallCheck */ "./node_modules/.pnpm/@babel+runtime@7.26.9/node_modules/@babel/runtime/helpers/esm/classCallCheck.js"); +/* harmony import */ var _babel_runtime_helpers_createClass__WEBPACK_IMPORTED_MODULE_2__ = __webpack_require__(/*! @babel/runtime/helpers/createClass */ "./node_modules/.pnpm/@babel+runtime@7.26.9/node_modules/@babel/runtime/helpers/esm/createClass.js"); +/* harmony import */ var _babel_runtime_regenerator__WEBPACK_IMPORTED_MODULE_3__ = __webpack_require__(/*! @babel/runtime/regenerator */ "./node_modules/.pnpm/@babel+runtime@7.26.9/node_modules/@babel/runtime/regenerator/index.js"); +/* harmony import */ var _babel_runtime_regenerator__WEBPACK_IMPORTED_MODULE_3___default = /*#__PURE__*/__webpack_require__.n(_babel_runtime_regenerator__WEBPACK_IMPORTED_MODULE_3__); +/* harmony import */ var _StemmingDictionaries__WEBPACK_IMPORTED_MODULE_4__ = __webpack_require__(/*! ./StemmingDictionaries */ "./src/Typesense/StemmingDictionaries.ts"); -/** - * Resolve object with deep prototype chain to a flat object - * @param {Object} sourceObj source object - * @param {Object} [destObj] - * @param {Function|Boolean} [filter] - * @param {Function} [propFilter] - * - * @returns {Object} - */ -const toFlatObject = (sourceObj, destObj, filter, propFilter) => { - let props; - let i; - let prop; - const merged = {}; - destObj = destObj || {}; - // eslint-disable-next-line no-eq-null,eqeqeq - if (sourceObj == null) return destObj; - do { - props = Object.getOwnPropertyNames(sourceObj); - i = props.length; - while (i-- > 0) { - prop = props[i]; - if ((!propFilter || propFilter(prop, sourceObj, destObj)) && !merged[prop]) { - destObj[prop] = sourceObj[prop]; - merged[prop] = true; + + +var StemmingDictionary = /*#__PURE__*/function () { + function StemmingDictionary(id, apiCall) { + (0,_babel_runtime_helpers_classCallCheck__WEBPACK_IMPORTED_MODULE_1__["default"])(this, StemmingDictionary); + this.id = id; + this.apiCall = apiCall; + } + return (0,_babel_runtime_helpers_createClass__WEBPACK_IMPORTED_MODULE_2__["default"])(StemmingDictionary, [{ + key: "retrieve", + value: function () { + var _retrieve = (0,_babel_runtime_helpers_asyncToGenerator__WEBPACK_IMPORTED_MODULE_0__["default"])(/*#__PURE__*/_babel_runtime_regenerator__WEBPACK_IMPORTED_MODULE_3___default().mark(function _callee() { + return _babel_runtime_regenerator__WEBPACK_IMPORTED_MODULE_3___default().wrap(function _callee$(_context) { + while (1) switch (_context.prev = _context.next) { + case 0: + return _context.abrupt("return", this.apiCall.get(this.endpointPath())); + case 1: + case "end": + return _context.stop(); + } + }, _callee, this); + })); + function retrieve() { + return _retrieve.apply(this, arguments); } + return retrieve; + }() + }, { + key: "endpointPath", + value: function endpointPath() { + return "".concat(_StemmingDictionaries__WEBPACK_IMPORTED_MODULE_4__["default"].RESOURCEPATH, "/").concat(encodeURIComponent(this.id)); } - sourceObj = filter !== false && getPrototypeOf(sourceObj); - } while (sourceObj && (!filter || filter(sourceObj, destObj)) && sourceObj !== Object.prototype); + }]); +}(); - return destObj; -} -/** - * Determines whether a string ends with the characters of a specified string - * - * @param {String} str - * @param {String} searchString - * @param {Number} [position= 0] - * - * @returns {boolean} - */ -const endsWith = (str, searchString, position) => { - str = String(str); - if (position === undefined || position > str.length) { - position = str.length; - } - position -= searchString.length; - const lastIndex = str.indexOf(searchString, position); - return lastIndex !== -1 && lastIndex === position; -} +/***/ }), + +/***/ "./src/Typesense/Stopword.ts": +/*!***********************************!*\ + !*** ./src/Typesense/Stopword.ts ***! + \***********************************/ +/***/ ((__unused_webpack_module, __webpack_exports__, __webpack_require__) => { +"use strict"; +__webpack_require__.r(__webpack_exports__); +/* harmony export */ __webpack_require__.d(__webpack_exports__, { +/* harmony export */ "default": () => (/* binding */ Stopword) +/* harmony export */ }); +/* harmony import */ var _babel_runtime_helpers_asyncToGenerator__WEBPACK_IMPORTED_MODULE_0__ = __webpack_require__(/*! @babel/runtime/helpers/asyncToGenerator */ "./node_modules/.pnpm/@babel+runtime@7.26.9/node_modules/@babel/runtime/helpers/esm/asyncToGenerator.js"); +/* harmony import */ var _babel_runtime_helpers_classCallCheck__WEBPACK_IMPORTED_MODULE_1__ = __webpack_require__(/*! @babel/runtime/helpers/classCallCheck */ "./node_modules/.pnpm/@babel+runtime@7.26.9/node_modules/@babel/runtime/helpers/esm/classCallCheck.js"); +/* harmony import */ var _babel_runtime_helpers_createClass__WEBPACK_IMPORTED_MODULE_2__ = __webpack_require__(/*! @babel/runtime/helpers/createClass */ "./node_modules/.pnpm/@babel+runtime@7.26.9/node_modules/@babel/runtime/helpers/esm/createClass.js"); +/* harmony import */ var _babel_runtime_regenerator__WEBPACK_IMPORTED_MODULE_3__ = __webpack_require__(/*! @babel/runtime/regenerator */ "./node_modules/.pnpm/@babel+runtime@7.26.9/node_modules/@babel/runtime/regenerator/index.js"); +/* harmony import */ var _babel_runtime_regenerator__WEBPACK_IMPORTED_MODULE_3___default = /*#__PURE__*/__webpack_require__.n(_babel_runtime_regenerator__WEBPACK_IMPORTED_MODULE_3__); +/* harmony import */ var _Stopwords__WEBPACK_IMPORTED_MODULE_4__ = __webpack_require__(/*! ./Stopwords */ "./src/Typesense/Stopwords.ts"); -/** - * Returns new array from array like object or null if failed - * - * @param {*} [thing] - * - * @returns {?Array} - */ -const toArray = (thing) => { - if (!thing) return null; - if (isArray(thing)) return thing; - let i = thing.length; - if (!isNumber(i)) return null; - const arr = new Array(i); - while (i-- > 0) { - arr[i] = thing[i]; + + + + +var Stopword = /*#__PURE__*/function () { + function Stopword(stopwordId, apiCall) { + (0,_babel_runtime_helpers_classCallCheck__WEBPACK_IMPORTED_MODULE_1__["default"])(this, Stopword); + this.stopwordId = stopwordId; + this.apiCall = apiCall; } - return arr; -} + return (0,_babel_runtime_helpers_createClass__WEBPACK_IMPORTED_MODULE_2__["default"])(Stopword, [{ + key: "retrieve", + value: function () { + var _retrieve = (0,_babel_runtime_helpers_asyncToGenerator__WEBPACK_IMPORTED_MODULE_0__["default"])(/*#__PURE__*/_babel_runtime_regenerator__WEBPACK_IMPORTED_MODULE_3___default().mark(function _callee() { + return _babel_runtime_regenerator__WEBPACK_IMPORTED_MODULE_3___default().wrap(function _callee$(_context) { + while (1) switch (_context.prev = _context.next) { + case 0: + return _context.abrupt("return", this.apiCall.get(this.endpointPath())); + case 1: + case "end": + return _context.stop(); + } + }, _callee, this); + })); + function retrieve() { + return _retrieve.apply(this, arguments); + } + return retrieve; + }() + }, { + key: "delete", + value: function () { + var _delete2 = (0,_babel_runtime_helpers_asyncToGenerator__WEBPACK_IMPORTED_MODULE_0__["default"])(/*#__PURE__*/_babel_runtime_regenerator__WEBPACK_IMPORTED_MODULE_3___default().mark(function _callee2() { + return _babel_runtime_regenerator__WEBPACK_IMPORTED_MODULE_3___default().wrap(function _callee2$(_context2) { + while (1) switch (_context2.prev = _context2.next) { + case 0: + return _context2.abrupt("return", this.apiCall.delete(this.endpointPath())); + case 1: + case "end": + return _context2.stop(); + } + }, _callee2, this); + })); + function _delete() { + return _delete2.apply(this, arguments); + } + return _delete; + }() + }, { + key: "endpointPath", + value: function endpointPath() { + return "".concat(_Stopwords__WEBPACK_IMPORTED_MODULE_4__["default"].RESOURCEPATH, "/").concat(encodeURIComponent(this.stopwordId)); + } + }]); +}(); -/** - * Checking if the Uint8Array exists and if it does, it returns a function that checks if the - * thing passed in is an instance of Uint8Array - * - * @param {TypedArray} - * - * @returns {Array} - */ -// eslint-disable-next-line func-names -const isTypedArray = (TypedArray => { - // eslint-disable-next-line func-names - return thing => { - return TypedArray && thing instanceof TypedArray; - }; -})(typeof Uint8Array !== 'undefined' && getPrototypeOf(Uint8Array)); -/** - * For each entry in the object, call the function with the key and value. - * - * @param {Object} obj - The object to iterate over. - * @param {Function} fn - The function to call for each entry. - * - * @returns {void} - */ -const forEachEntry = (obj, fn) => { - const generator = obj && obj[Symbol.iterator]; +/***/ }), + +/***/ "./src/Typesense/Stopwords.ts": +/*!************************************!*\ + !*** ./src/Typesense/Stopwords.ts ***! + \************************************/ +/***/ ((__unused_webpack_module, __webpack_exports__, __webpack_require__) => { + +"use strict"; +__webpack_require__.r(__webpack_exports__); +/* harmony export */ __webpack_require__.d(__webpack_exports__, { +/* harmony export */ "default": () => (/* binding */ Stopwords) +/* harmony export */ }); +/* harmony import */ var _babel_runtime_helpers_asyncToGenerator__WEBPACK_IMPORTED_MODULE_0__ = __webpack_require__(/*! @babel/runtime/helpers/asyncToGenerator */ "./node_modules/.pnpm/@babel+runtime@7.26.9/node_modules/@babel/runtime/helpers/esm/asyncToGenerator.js"); +/* harmony import */ var _babel_runtime_helpers_classCallCheck__WEBPACK_IMPORTED_MODULE_1__ = __webpack_require__(/*! @babel/runtime/helpers/classCallCheck */ "./node_modules/.pnpm/@babel+runtime@7.26.9/node_modules/@babel/runtime/helpers/esm/classCallCheck.js"); +/* harmony import */ var _babel_runtime_helpers_createClass__WEBPACK_IMPORTED_MODULE_2__ = __webpack_require__(/*! @babel/runtime/helpers/createClass */ "./node_modules/.pnpm/@babel+runtime@7.26.9/node_modules/@babel/runtime/helpers/esm/createClass.js"); +/* harmony import */ var _babel_runtime_regenerator__WEBPACK_IMPORTED_MODULE_3__ = __webpack_require__(/*! @babel/runtime/regenerator */ "./node_modules/.pnpm/@babel+runtime@7.26.9/node_modules/@babel/runtime/regenerator/index.js"); +/* harmony import */ var _babel_runtime_regenerator__WEBPACK_IMPORTED_MODULE_3___default = /*#__PURE__*/__webpack_require__.n(_babel_runtime_regenerator__WEBPACK_IMPORTED_MODULE_3__); - const iterator = generator.call(obj); - let result; - while ((result = iterator.next()) && !result.done) { - const pair = result.value; - fn.call(obj, pair[0], pair[1]); + +var RESOURCEPATH = "/stopwords"; +var Stopwords = /*#__PURE__*/function () { + function Stopwords(apiCall) { + (0,_babel_runtime_helpers_classCallCheck__WEBPACK_IMPORTED_MODULE_1__["default"])(this, Stopwords); + this.apiCall = apiCall; } -} + return (0,_babel_runtime_helpers_createClass__WEBPACK_IMPORTED_MODULE_2__["default"])(Stopwords, [{ + key: "upsert", + value: function () { + var _upsert = (0,_babel_runtime_helpers_asyncToGenerator__WEBPACK_IMPORTED_MODULE_0__["default"])(/*#__PURE__*/_babel_runtime_regenerator__WEBPACK_IMPORTED_MODULE_3___default().mark(function _callee(stopwordId, params) { + return _babel_runtime_regenerator__WEBPACK_IMPORTED_MODULE_3___default().wrap(function _callee$(_context) { + while (1) switch (_context.prev = _context.next) { + case 0: + return _context.abrupt("return", this.apiCall.put(this.endpointPath(stopwordId), params)); + case 1: + case "end": + return _context.stop(); + } + }, _callee, this); + })); + function upsert(_x, _x2) { + return _upsert.apply(this, arguments); + } + return upsert; + }() + }, { + key: "retrieve", + value: function () { + var _retrieve = (0,_babel_runtime_helpers_asyncToGenerator__WEBPACK_IMPORTED_MODULE_0__["default"])(/*#__PURE__*/_babel_runtime_regenerator__WEBPACK_IMPORTED_MODULE_3___default().mark(function _callee2() { + return _babel_runtime_regenerator__WEBPACK_IMPORTED_MODULE_3___default().wrap(function _callee2$(_context2) { + while (1) switch (_context2.prev = _context2.next) { + case 0: + return _context2.abrupt("return", this.apiCall.get(this.endpointPath())); + case 1: + case "end": + return _context2.stop(); + } + }, _callee2, this); + })); + function retrieve() { + return _retrieve.apply(this, arguments); + } + return retrieve; + }() + }, { + key: "endpointPath", + value: function endpointPath(operation) { + return "".concat(Stopwords.RESOURCEPATH).concat(operation === undefined ? "" : "/" + encodeURIComponent(operation)); + } + }], [{ + key: "RESOURCEPATH", + get: function get() { + return RESOURCEPATH; + } + }]); +}(); -/** - * It takes a regular expression and a string, and returns an array of all the matches - * - * @param {string} regExp - The regular expression to match against. - * @param {string} str - The string to search. - * - * @returns {Array} - */ -const matchAll = (regExp, str) => { - let matches; - const arr = []; - while ((matches = regExp.exec(str)) !== null) { - arr.push(matches); - } +/***/ }), - return arr; -} +/***/ "./src/Typesense/Synonym.ts": +/*!**********************************!*\ + !*** ./src/Typesense/Synonym.ts ***! + \**********************************/ +/***/ ((__unused_webpack_module, __webpack_exports__, __webpack_require__) => { -/* Checking if the kindOfTest function returns true when passed an HTMLFormElement. */ -const isHTMLForm = kindOfTest('HTMLFormElement'); +"use strict"; +__webpack_require__.r(__webpack_exports__); +/* harmony export */ __webpack_require__.d(__webpack_exports__, { +/* harmony export */ "default": () => (/* binding */ Synonym) +/* harmony export */ }); +/* harmony import */ var _babel_runtime_helpers_asyncToGenerator__WEBPACK_IMPORTED_MODULE_0__ = __webpack_require__(/*! @babel/runtime/helpers/asyncToGenerator */ "./node_modules/.pnpm/@babel+runtime@7.26.9/node_modules/@babel/runtime/helpers/esm/asyncToGenerator.js"); +/* harmony import */ var _babel_runtime_helpers_classCallCheck__WEBPACK_IMPORTED_MODULE_1__ = __webpack_require__(/*! @babel/runtime/helpers/classCallCheck */ "./node_modules/.pnpm/@babel+runtime@7.26.9/node_modules/@babel/runtime/helpers/esm/classCallCheck.js"); +/* harmony import */ var _babel_runtime_helpers_createClass__WEBPACK_IMPORTED_MODULE_2__ = __webpack_require__(/*! @babel/runtime/helpers/createClass */ "./node_modules/.pnpm/@babel+runtime@7.26.9/node_modules/@babel/runtime/helpers/esm/createClass.js"); +/* harmony import */ var _babel_runtime_regenerator__WEBPACK_IMPORTED_MODULE_3__ = __webpack_require__(/*! @babel/runtime/regenerator */ "./node_modules/.pnpm/@babel+runtime@7.26.9/node_modules/@babel/runtime/regenerator/index.js"); +/* harmony import */ var _babel_runtime_regenerator__WEBPACK_IMPORTED_MODULE_3___default = /*#__PURE__*/__webpack_require__.n(_babel_runtime_regenerator__WEBPACK_IMPORTED_MODULE_3__); +/* harmony import */ var _Collections__WEBPACK_IMPORTED_MODULE_4__ = __webpack_require__(/*! ./Collections */ "./src/Typesense/Collections.ts"); +/* harmony import */ var _Synonyms__WEBPACK_IMPORTED_MODULE_5__ = __webpack_require__(/*! ./Synonyms */ "./src/Typesense/Synonyms.ts"); -const toCamelCase = str => { - return str.toLowerCase().replace(/[-_\s]([a-z\d])(\w*)/g, - function replacer(m, p1, p2) { - return p1.toUpperCase() + p2; - } - ); -}; -/* Creating a function that will check if an object has a property. */ -const hasOwnProperty = (({hasOwnProperty}) => (obj, prop) => hasOwnProperty.call(obj, prop))(Object.prototype); -/** - * Determine if a value is a RegExp object - * - * @param {*} val The value to test - * - * @returns {boolean} True if value is a RegExp object, otherwise false - */ -const isRegExp = kindOfTest('RegExp'); -const reduceDescriptors = (obj, reducer) => { - const descriptors = Object.getOwnPropertyDescriptors(obj); - const reducedDescriptors = {}; - forEach(descriptors, (descriptor, name) => { - let ret; - if ((ret = reducer(descriptor, name, obj)) !== false) { - reducedDescriptors[name] = ret || descriptor; + +var Synonym = /*#__PURE__*/function () { + function Synonym(collectionName, synonymId, apiCall) { + (0,_babel_runtime_helpers_classCallCheck__WEBPACK_IMPORTED_MODULE_1__["default"])(this, Synonym); + this.collectionName = collectionName; + this.synonymId = synonymId; + this.apiCall = apiCall; + } + return (0,_babel_runtime_helpers_createClass__WEBPACK_IMPORTED_MODULE_2__["default"])(Synonym, [{ + key: "retrieve", + value: function () { + var _retrieve = (0,_babel_runtime_helpers_asyncToGenerator__WEBPACK_IMPORTED_MODULE_0__["default"])(/*#__PURE__*/_babel_runtime_regenerator__WEBPACK_IMPORTED_MODULE_3___default().mark(function _callee() { + return _babel_runtime_regenerator__WEBPACK_IMPORTED_MODULE_3___default().wrap(function _callee$(_context) { + while (1) switch (_context.prev = _context.next) { + case 0: + return _context.abrupt("return", this.apiCall.get(this.endpointPath())); + case 1: + case "end": + return _context.stop(); + } + }, _callee, this); + })); + function retrieve() { + return _retrieve.apply(this, arguments); + } + return retrieve; + }() + }, { + key: "delete", + value: function () { + var _delete2 = (0,_babel_runtime_helpers_asyncToGenerator__WEBPACK_IMPORTED_MODULE_0__["default"])(/*#__PURE__*/_babel_runtime_regenerator__WEBPACK_IMPORTED_MODULE_3___default().mark(function _callee2() { + return _babel_runtime_regenerator__WEBPACK_IMPORTED_MODULE_3___default().wrap(function _callee2$(_context2) { + while (1) switch (_context2.prev = _context2.next) { + case 0: + return _context2.abrupt("return", this.apiCall.delete(this.endpointPath())); + case 1: + case "end": + return _context2.stop(); + } + }, _callee2, this); + })); + function _delete() { + return _delete2.apply(this, arguments); + } + return _delete; + }() + }, { + key: "endpointPath", + value: function endpointPath() { + return "".concat(_Collections__WEBPACK_IMPORTED_MODULE_4__["default"].RESOURCEPATH, "/").concat(encodeURIComponent(this.collectionName)).concat(_Synonyms__WEBPACK_IMPORTED_MODULE_5__["default"].RESOURCEPATH, "/").concat(encodeURIComponent(this.synonymId)); } - }); + }]); +}(); - Object.defineProperties(obj, reducedDescriptors); -} -/** - * Makes all methods read-only - * @param {Object} obj - */ +/***/ }), -const freezeMethods = (obj) => { - reduceDescriptors(obj, (descriptor, name) => { - // skip restricted props in strict mode - if (isFunction(obj) && ['arguments', 'caller', 'callee'].indexOf(name) !== -1) { - return false; - } +/***/ "./src/Typesense/Synonyms.ts": +/*!***********************************!*\ + !*** ./src/Typesense/Synonyms.ts ***! + \***********************************/ +/***/ ((__unused_webpack_module, __webpack_exports__, __webpack_require__) => { - const value = obj[name]; +"use strict"; +__webpack_require__.r(__webpack_exports__); +/* harmony export */ __webpack_require__.d(__webpack_exports__, { +/* harmony export */ "default": () => (/* binding */ Synonyms) +/* harmony export */ }); +/* harmony import */ var _babel_runtime_helpers_asyncToGenerator__WEBPACK_IMPORTED_MODULE_0__ = __webpack_require__(/*! @babel/runtime/helpers/asyncToGenerator */ "./node_modules/.pnpm/@babel+runtime@7.26.9/node_modules/@babel/runtime/helpers/esm/asyncToGenerator.js"); +/* harmony import */ var _babel_runtime_helpers_classCallCheck__WEBPACK_IMPORTED_MODULE_1__ = __webpack_require__(/*! @babel/runtime/helpers/classCallCheck */ "./node_modules/.pnpm/@babel+runtime@7.26.9/node_modules/@babel/runtime/helpers/esm/classCallCheck.js"); +/* harmony import */ var _babel_runtime_helpers_createClass__WEBPACK_IMPORTED_MODULE_2__ = __webpack_require__(/*! @babel/runtime/helpers/createClass */ "./node_modules/.pnpm/@babel+runtime@7.26.9/node_modules/@babel/runtime/helpers/esm/createClass.js"); +/* harmony import */ var _babel_runtime_regenerator__WEBPACK_IMPORTED_MODULE_3__ = __webpack_require__(/*! @babel/runtime/regenerator */ "./node_modules/.pnpm/@babel+runtime@7.26.9/node_modules/@babel/runtime/regenerator/index.js"); +/* harmony import */ var _babel_runtime_regenerator__WEBPACK_IMPORTED_MODULE_3___default = /*#__PURE__*/__webpack_require__.n(_babel_runtime_regenerator__WEBPACK_IMPORTED_MODULE_3__); +/* harmony import */ var _Collections__WEBPACK_IMPORTED_MODULE_4__ = __webpack_require__(/*! ./Collections */ "./src/Typesense/Collections.ts"); - if (!isFunction(value)) return; - descriptor.enumerable = false; - if ('writable' in descriptor) { - descriptor.writable = false; - return; + + +var RESOURCEPATH = "/synonyms"; +var Synonyms = /*#__PURE__*/function () { + function Synonyms(collectionName, apiCall) { + (0,_babel_runtime_helpers_classCallCheck__WEBPACK_IMPORTED_MODULE_1__["default"])(this, Synonyms); + this.collectionName = collectionName; + this.apiCall = apiCall; + } + return (0,_babel_runtime_helpers_createClass__WEBPACK_IMPORTED_MODULE_2__["default"])(Synonyms, [{ + key: "upsert", + value: function () { + var _upsert = (0,_babel_runtime_helpers_asyncToGenerator__WEBPACK_IMPORTED_MODULE_0__["default"])(/*#__PURE__*/_babel_runtime_regenerator__WEBPACK_IMPORTED_MODULE_3___default().mark(function _callee(synonymId, params) { + return _babel_runtime_regenerator__WEBPACK_IMPORTED_MODULE_3___default().wrap(function _callee$(_context) { + while (1) switch (_context.prev = _context.next) { + case 0: + return _context.abrupt("return", this.apiCall.put(this.endpointPath(synonymId), params)); + case 1: + case "end": + return _context.stop(); + } + }, _callee, this); + })); + function upsert(_x, _x2) { + return _upsert.apply(this, arguments); + } + return upsert; + }() + }, { + key: "retrieve", + value: function () { + var _retrieve = (0,_babel_runtime_helpers_asyncToGenerator__WEBPACK_IMPORTED_MODULE_0__["default"])(/*#__PURE__*/_babel_runtime_regenerator__WEBPACK_IMPORTED_MODULE_3___default().mark(function _callee2() { + return _babel_runtime_regenerator__WEBPACK_IMPORTED_MODULE_3___default().wrap(function _callee2$(_context2) { + while (1) switch (_context2.prev = _context2.next) { + case 0: + return _context2.abrupt("return", this.apiCall.get(this.endpointPath())); + case 1: + case "end": + return _context2.stop(); + } + }, _callee2, this); + })); + function retrieve() { + return _retrieve.apply(this, arguments); + } + return retrieve; + }() + }, { + key: "endpointPath", + value: function endpointPath(operation) { + return "".concat(_Collections__WEBPACK_IMPORTED_MODULE_4__["default"].RESOURCEPATH, "/").concat(encodeURIComponent(this.collectionName)).concat(Synonyms.RESOURCEPATH).concat(operation === undefined ? "" : "/" + encodeURIComponent(operation)); } - - if (!descriptor.set) { - descriptor.set = () => { - throw Error('Can not rewrite read-only method \'' + name + '\''); - }; + }], [{ + key: "RESOURCEPATH", + get: function get() { + return RESOURCEPATH; } - }); -} + }]); +}(); -const toObjectSet = (arrayOrString, delimiter) => { - const obj = {}; - const define = (arr) => { - arr.forEach(value => { - obj[value] = true; - }); - } +/***/ }), - isArray(arrayOrString) ? define(arrayOrString) : define(String(arrayOrString).split(delimiter)); +/***/ "./src/Typesense/Types.ts": +/*!********************************!*\ + !*** ./src/Typesense/Types.ts ***! + \********************************/ +/***/ ((__unused_webpack_module, __webpack_exports__, __webpack_require__) => { - return obj; -} +"use strict"; +__webpack_require__.r(__webpack_exports__); +/* harmony export */ __webpack_require__.d(__webpack_exports__, { +/* harmony export */ arrayableParams: () => (/* binding */ arrayableParams) +/* harmony export */ }); +var arrayableParams = { + query_by: "query_by", + query_by_weights: "query_by_weights", + facet_by: "facet_by", + group_by: "group_by", + include_fields: "include_fields", + exclude_fields: "exclude_fields", + highlight_fields: "highlight_fields", + highlight_full_fields: "highlight_full_fields", + pinned_hits: "pinned_hits", + hidden_hits: "hidden_hits", + infix: "infix", + override_tags: "override_tags", + num_typos: "num_typos", + prefix: "prefix", + sort_by: "sort_by" +}; -const noop = () => {} +/***/ }), -const toFiniteNumber = (value, defaultValue) => { - return value != null && Number.isFinite(value = +value) ? value : defaultValue; -} +/***/ "./src/Typesense/Utils.ts": +/*!********************************!*\ + !*** ./src/Typesense/Utils.ts ***! + \********************************/ +/***/ ((__unused_webpack_module, __webpack_exports__, __webpack_require__) => { -const ALPHA = 'abcdefghijklmnopqrstuvwxyz' +"use strict"; +__webpack_require__.r(__webpack_exports__); +/* harmony export */ __webpack_require__.d(__webpack_exports__, { +/* harmony export */ normalizeArrayableParams: () => (/* binding */ normalizeArrayableParams) +/* harmony export */ }); +/* harmony import */ var _babel_runtime_helpers_defineProperty__WEBPACK_IMPORTED_MODULE_0__ = __webpack_require__(/*! @babel/runtime/helpers/defineProperty */ "./node_modules/.pnpm/@babel+runtime@7.26.9/node_modules/@babel/runtime/helpers/esm/defineProperty.js"); +/* harmony import */ var _Types__WEBPACK_IMPORTED_MODULE_1__ = __webpack_require__(/*! ./Types */ "./src/Typesense/Types.ts"); -const DIGIT = '0123456789'; +function ownKeys(e, r) { var t = Object.keys(e); if (Object.getOwnPropertySymbols) { var o = Object.getOwnPropertySymbols(e); r && (o = o.filter(function (r) { return Object.getOwnPropertyDescriptor(e, r).enumerable; })), t.push.apply(t, o); } return t; } +function _objectSpread(e) { for (var r = 1; r < arguments.length; r++) { var t = null != arguments[r] ? arguments[r] : {}; r % 2 ? ownKeys(Object(t), !0).forEach(function (r) { (0,_babel_runtime_helpers_defineProperty__WEBPACK_IMPORTED_MODULE_0__["default"])(e, r, t[r]); }) : Object.getOwnPropertyDescriptors ? Object.defineProperties(e, Object.getOwnPropertyDescriptors(t)) : ownKeys(Object(t)).forEach(function (r) { Object.defineProperty(e, r, Object.getOwnPropertyDescriptor(t, r)); }); } return e; } -const ALPHABET = { - DIGIT, - ALPHA, - ALPHA_DIGIT: ALPHA + ALPHA.toUpperCase() + DIGIT +function hasNoArrayValues(params) { + return Object.keys(_Types__WEBPACK_IMPORTED_MODULE_1__.arrayableParams).filter(function (key) { + return params[key] !== undefined; + }).every(function (key) { + return isNonArrayValue(params[key]); + }); } - -const generateString = (size = 16, alphabet = ALPHABET.ALPHA_DIGIT) => { - let str = ''; - const {length} = alphabet; - while (size--) { - str += alphabet[Math.random() * length|0] +function normalizeArrayableParams(params) { + var result = _objectSpread({}, params); + var transformedValues = Object.keys(_Types__WEBPACK_IMPORTED_MODULE_1__.arrayableParams).filter(function (key) { + return Array.isArray(result[key]); + }).map(function (key) { + result[key] = result[key].join(","); + return key; + }); + if (!transformedValues.length && hasNoArrayValues(result)) { + return result; } - - return str; -} - -/** - * If the thing is a FormData object, return true, otherwise return false. - * - * @param {unknown} thing - The thing to check. - * - * @returns {boolean} - */ -function isSpecCompliantForm(thing) { - return !!(thing && isFunction(thing.append) && thing[Symbol.toStringTag] === 'FormData' && thing[Symbol.iterator]); -} - -const toJSONObject = (obj) => { - const stack = new Array(10); - - const visit = (source, i) => { - - if (isObject(source)) { - if (stack.indexOf(source) >= 0) { - return; - } - - if(!('toJSON' in source)) { - stack[i] = source; - const target = isArray(source) ? [] : {}; - - forEach(source, (value, key) => { - const reducedValue = visit(value, i + 1); - !isUndefined(reducedValue) && (target[key] = reducedValue); - }); - - stack[i] = undefined; - - return target; - } - } - - return source; + if (!hasNoArrayValues(result)) { + throw new Error("Failed to normalize arrayable params: ".concat(JSON.stringify(result))); } - - return visit(obj, 0); + return result; +} +function isNonArrayValue(value) { + return !Array.isArray(value); } -const isAsyncFn = kindOfTest('AsyncFunction'); - -const isThenable = (thing) => - thing && (isObject(thing) || isFunction(thing)) && isFunction(thing.then) && isFunction(thing.catch); +/***/ }), -// original code -// https://github.com/DigitalBrainJS/AxiosPromise/blob/16deab13710ec09779922131f3fa5954320f83ab/lib/utils.js#L11-L34 +/***/ "?4bf0": +/*!************************!*\ + !*** crypto (ignored) ***! + \************************/ +/***/ (() => { -const _setImmediate = ((setImmediateSupported, postMessageSupported) => { - if (setImmediateSupported) { - return setImmediate; - } +/* (ignored) */ - return postMessageSupported ? ((token, callbacks) => { - _global.addEventListener("message", ({source, data}) => { - if (source === _global && data === token) { - callbacks.length && callbacks.shift()(); - } - }, false); +/***/ }), - return (cb) => { - callbacks.push(cb); - _global.postMessage(token, "*"); - } - })(`axios@${Math.random()}`, []) : (cb) => setTimeout(cb); -})( - typeof setImmediate === 'function', - isFunction(_global.postMessage) -); +/***/ "?77e4": +/*!***********************!*\ + !*** https (ignored) ***! + \***********************/ +/***/ (() => { -const asap = typeof queueMicrotask !== 'undefined' ? - queueMicrotask.bind(_global) : ( typeof process !== 'undefined' && process.nextTick || _setImmediate); +/* (ignored) */ -// ********************* +/***/ }), -/* harmony default export */ const __WEBPACK_DEFAULT_EXPORT__ = ({ - isArray, - isArrayBuffer, - isBuffer, - isFormData, - isArrayBufferView, - isString, - isNumber, - isBoolean, - isObject, - isPlainObject, - isReadableStream, - isRequest, - isResponse, - isHeaders, - isUndefined, - isDate, - isFile, - isBlob, - isRegExp, - isFunction, - isStream, - isURLSearchParams, - isTypedArray, - isFileList, - forEach, - merge, - extend, - trim, - stripBOM, - inherits, - toFlatObject, - kindOf, - kindOfTest, - endsWith, - toArray, - forEachEntry, - matchAll, - isHTMLForm, - hasOwnProperty, - hasOwnProp: hasOwnProperty, // an alias to avoid ESLint no-prototype-builtins detection - reduceDescriptors, - freezeMethods, - toObjectSet, - toCamelCase, - noop, - toFiniteNumber, - findKey, - global: _global, - isContextDefined, - ALPHABET, - generateString, - isSpecCompliantForm, - toJSONObject, - isAsyncFn, - isThenable, - setImmediate: _setImmediate, - asap -}); +/***/ "?e89d": +/*!**********************!*\ + !*** http (ignored) ***! + \**********************/ +/***/ (() => { +/* (ignored) */ /***/ }) @@ -10932,7 +10915,7 @@ const asap = typeof queueMicrotask !== 'undefined' ? /******/ /************************************************************************/ var __webpack_exports__ = {}; -// This entry need to be wrapped in an IIFE because it need to be in strict mode. +// This entry needs to be wrapped in an IIFE because it needs to be in strict mode. (() => { "use strict"; /*!**************************!*\ diff --git a/dist/typesense.js.map b/dist/typesense.js.map index 0c7583ef..93eb328f 100644 --- a/dist/typesense.js.map +++ b/dist/typesense.js.map @@ -1 +1 @@ -{"version":3,"file":"typesense.js","mappings":"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AeA,CACtB5e,KAAoC,EACH;EACjC,OAAO,CAACsX,KAAK,CAACC,OAAO,CAACvX,KAAK,CAAC;AAC9B;;;;;;;;;;AC5CA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA,QAAQ,IAA0C;AAClD,QAAQ,oCAAO,UAAU;AAAA;AAAA;AAAA;AAAA,kGAAC;AAC1B,MAAM,KAAK,EAIN;AACL,CAAC;AACD;;AAEA;AACA;AACA;AACA;AACA;AACA;;AAEA;AACA;AACA;AACA;AACA;AACA;AACA;;AAEA;AACA;;AAEA;AACA;AACA;AACA;AACA;AACA,UAAU;AACV;AACA;AACA,cAAc;AACd;AACA;AACA;AACA;AACA;AACA;AACA;;AAEA;AACA;AACA;AACA;AACA;AACA,cAAc;AACd;AACA;AACA;AACA;AACA;AACA;;AAEA;AACA;AACA;AACA;AACA;AACA;;AAEA;AACA,0BAA0B;AAC1B,UAAU;AACV;AACA,UAAU;AACV;AACA,UAAU;AACV;AACA,UAAU;AACV;AACA;AACA;;AAEA;;AAEA;AACA;AACA;;AAEA;AACA,wBAAwB,uBAAuB;AAC/C;AACA;AACA;AACA;AACA;;AAEA;AACA;;AAEA;AACA;AACA;AACA;AACA;;AAEA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;;AAEA;AACA;AACA;AACA;AACA;AACA;AACA;;AAEA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA,gBAAgB;AAChB;AACA;AACA;AACA;AACA;AACA,gBAAgB;AAChB;AACA;AACA;AACA;AACA;AACA,gBAAgB;AAChB;AACA;;AAEA;AACA;AACA;AACA,QAAQ;AACR;AACA;;AAEA;AACA;;AAEA;;AAEA;AACA;AACA;AACA;AACA,YAAY;;AAEZ;AACA;AACA;AACA,qEAAqE;AACrE,YAAY;AACZ;;AAEA;AACA;;AAEA;;AAEA;AACA;AACA,YAAY;;AAEZ;AACA;AACA;AACA;AACA;AACA;AACA;AACA,0CAA0C;AAC1C;AACA;AACA;AACA,gBAAgB;AAChB;;AAEA;AACA;AACA;AACA;;AAEA;AACA;;AAEA;AACA;;AAEA;AACA;AACA;AACA,YAAY;;AAEZ;AACA;AACA;AACA,qDAAqD;AACrD,YAAY;AACZ;;AAEA;AACA;AACA;AACA;AACA;AACA;AACA;AACA,YAAY;AACZ;AACA;AACA;;AAEA;AACA;AACA;AACA;AACA;;AAEA;;AAEA,sBAAsB;AACtB;;AAEA;;AAEA;AACA;AACA;AACA,YAAY;AACZ;AACA,YAAY;AACZ;AACA;AACA;;AAEA;AACA;AACA,oCAAoC;AACpC;AACA;;AAEA;AACA;AACA;;AAEA;AACA;AACA;AACA;AACA;AACA;;AAEA;AACA;AACA;AACA;AACA;;AAEA;AACA;AACA;;AAEA;AACA;AACA;;AAEA;AACA;AACA;AACA;AACA;;AAEA;AACA;AACA;AACA;AACA;AACA;;AAEA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;;AAEA;AACA;AACA;AACA;AACA;;AAEA;;AAEA;AACA;AACA;AACA;;AAEA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;;AAEA;AACA;AACA;AACA;AACA;AACA;AACA;;AAEA;AACA;;AAEA;AACA;AACA;;AAEA;AACA;;AAEA;AACA,CAAC;;;;;;;;;;;ACpWD;;;;;;;;;;ACAA;;;;;;;;;;ACAA;;;;;;;;;;ACAA,cAAc,sGAAiC;AAC/C;AACA,gBAAgB;AAChB;AACA;AACA,GAAG,EAAE,yBAAyB,SAAS,yBAAyB;AAChE;AACA,UAAU;AACV;AACA;AACA;AACA;AACA,KAAK;AACL,iDAAiD;AACjD;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA,KAAK;AACL;AACA;AACA,aAAa;AACb,IAAI;AACJ;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA,KAAK;AACL;AACA;AACA;AACA;AACA;AACA;AACA;AACA,MAAM;AACN;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA,GAAG;AACH;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA,OAAO;AACP,KAAK;AACL;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA,SAAS;AACT;AACA,SAAS;AACT;AACA,SAAS;AACT;AACA,SAAS;AACT;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA,WAAW;AACX;AACA;AACA;AACA,KAAK;AACL;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA,oCAAoC;AACpC;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA,0DAA0D;AAC1D;AACA;AACA,UAAU;AACV;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA,KAAK;AACL;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA,mBAAmB,eAAe;AAClC;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA,GAAG;AACH;AACA;AACA,GAAG;AACH;AACA;AACA,GAAG;AACH;AACA,GAAG;AACH;AACA;AACA;AACA,GAAG;AACH;AACA,GAAG;AACH;AACA;AACA;AACA;AACA,KAAK;AACL,GAAG;AACH;AACA,GAAG;AACH;AACA,GAAG;AACH;AACA;AACA;AACA;AACA,aAAa,SAAS;AACtB;AACA;AACA;AACA;AACA;AACA,GAAG;AACH;AACA;AACA;AACA,KAAK;AACL;AACA;AACA;AACA;AACA;AACA,KAAK;AACL;AACA;AACA;AACA;AACA;AACA;AACA,+CAA+C,QAAQ;AACvD;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA,YAAY;AACZ;AACA,YAAY;AACZ;AACA;AACA;AACA;AACA;AACA,KAAK;AACL;AACA,+CAA+C,QAAQ;AACvD;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA,KAAK;AACL;AACA;AACA;AACA,KAAK;AACL;AACA,+CAA+C,QAAQ;AACvD;AACA;AACA;AACA,KAAK;AACL;AACA,+CAA+C,QAAQ;AACvD;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA,KAAK;AACL;AACA;AACA;AACA;AACA;AACA,OAAO;AACP;AACA,GAAG;AACH;AACA,sCAAsC,yBAAyB,SAAS,yBAAyB;;;;;;;;;;AC/SjG;AACA;;AAEA;AACA;AACA,IAAI;AACJ;AACA,GAAG,EAAE,yBAAyB,SAAS,yBAAyB;AAChE;AACA,0BAA0B,yBAAyB,SAAS,yBAAyB;;;;;;;;;;ACTrF;;AAEA,cAAc,mBAAO,CAAC,kGAA+B;AACrD;;AAEA;AACA;AACA;AACA,EAAE;AACF;AACA;AACA,IAAI;AACJ;AACA;AACA;;;;;;;;;;;;;;;;ACde;AACf;AACA,yCAAyC,SAAS;AAClD;AACA;;;;;;;;;;;;;;;ACJe;AACf;AACA;;;;;;;;;;;;;;;;ACFqD;AACtC;AACf,iCAAiC,gEAAgB;AACjD;;;;;;;;;;;;;;;ACHe;AACf;AACA;AACA;AACA;AACA;;;;;;;;;;;;;;;ACLA;AACA;AACA;AACA;AACA,IAAI;AACJ;AACA;AACA;AACA;AACA;AACA,IAAI;AACJ;AACA;AACA;AACe;AACf;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA,KAAK;AACL;AACA;;;;;;;;;;;;;;;AC7Be;AACf;AACA;AACA;AACA;;;;;;;;;;;;;;;;;ACJiD;AACoB;AACtD;AACf,MAAM,wEAAwB;AAC9B;AACA;AACA;AACA,cAAc,8DAAc;AAC5B;;;;;;;;;;;;;;;;ACR+C;AAC/C;AACA,kBAAkB,kBAAkB;AACpC;AACA;AACA;AACA;AACA,kCAAkC,6DAAa;AAC/C;AACA;AACe;AACf;AACA;AACA;AACA;AACA,GAAG;AACH;AACA;;;;;;;;;;;;;;;;ACjB+C;AAChC;AACf,QAAQ,6DAAa;AACrB;AACA;AACA;AACA;AACA;AACA;AACA,KAAK;AACL,IAAI;A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ACQ;AACC;AACZ;AACO;AACqB;AAChB;;AAExD;;AAEA,iEAAe;AACf;AACA,oBAAoB,qEAAa;AACjC;AACA,2BAA2B,6DAAY;AACvC,SAAS,oDAAoD;AAC7D;AACA;AACA;;AAEA;AACA,oCAAoC;AACpC,wCAAwC;;AAExC;;AAEA;AACA;;AAEA;;AAEA;;AAEA;AACA;;AAEA;AACA;AACA;AACA;AACA;AACA,8BAA8B,6DAAY;AAC1C;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;;AAEA,MAAM,2DAAM;AACZ;AACA;AACA,OAAO;AACP;AACA;AACA,OAAO;;AAEP;AACA;AACA;;AAEA;AACA;AACA;AACA,MAAM;AACN;AACA;AACA;AACA;AACA;;AAEA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;;AAEA;AACA;AACA;AACA;AACA;;AAEA,iBAAiB,2DAAU,oBAAoB,2DAAU;;AAEzD;AACA;AACA;;AAEA;AACA;AACA;AACA;AACA,iBAAiB,2DAAU,kBAAkB,2DAAU;;AAEvD;AACA;AACA;;AAEA;AACA;AACA;AACA,mDAAmD,iEAAoB;AACvE;AACA;AACA;AACA,iBAAiB,2DAAU;AAC3B;AACA,2CAA2C,2DAAU,aAAa,2DAAU;AAC5E;AACA;;AAEA;AACA;AACA;;AAEA;AACA;;AAEA;AACA;AACA,MAAM,iDAAK;AACX;AACA,OAAO;AACP;;AAEA;AACA,SAAS,iDAAK;AACd;AACA;;AAEA;AACA;AACA;AACA;;AAEA;AACA;AACA,4CAA4C,sFAAoB;AAChE;AACA;;AAEA;AACA;AACA,wCAAwC,sFAAoB;;AAE5D;;AAEA;AACA;;AAEA;AACA;AACA;AACA;AACA;AACA;AACA;AACA,4CAA4C,gEAAa;AACzD;AACA;AACA;;AAEA;AACA;AACA;AACA;AACA;;AAEA,qBAAqB,qEAAa;;AAElC,oBAAoB,0DAAQ;AAC5B,iBAAiB,2DAAU,2CAA2C,2DAAU;AAChF;AACA;;;AAGA;AACA;AACA,GAAG;AACH,CAAC;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;ACpMY;;AAEkB;AACM;AACD;AACY;AACL;AACc;AACH;AACJ;AACN;AACN;AACW;AACH;AACL;AACY;AACH;AACJ;AACW;;AAEzD;AACA;AACA;AACA,WAAW,QAAQ;AACnB;AACA,aAAa,OAAO;AACpB;AACA;AACA,sBAAsB,sDAAK;AAC3B,mBAAmB,4DAAI,CAAC,sDAAK;;AAE7B;AACA,EAAE,iDAAK,kBAAkB,sDAAK,sBAAsB,iBAAiB;;AAErE;AACA,EAAE,iDAAK,kCAAkC,iBAAiB;;AAE1D;AACA;AACA,0BAA0B,gEAAW;AACrC;;AAEA;AACA;;AAEA;AACA,6BAA6B,0DAAQ;;AAErC;AACA,cAAc,sDAAK;;AAEnB;AACA,sBAAsB,gEAAa;AACnC,oBAAoB,8DAAW;AAC/B,iBAAiB,2DAAQ;AACzB,gBAAgB,iDAAO;AACvB,mBAAmB,8DAAU;;AAE7B;AACA,mBAAmB,4DAAU;;AAE7B;AACA;;AAEA;AACA;AACA;AACA;;AAEA,eAAe,2DAAM;;AAErB;AACA,qBAAqB,iEAAY;;AAEjC;AACA,oBAAoB,4DAAW;;AAE/B,qBAAqB,8DAAY;;AAEjC,4BAA4B,uEAAc,CAAC,iDAAK;;AAEhD,mBAAmB,8DAAQ;;AAE3B,uBAAuB,mEAAc;;AAErC;;AAEA;AACA,iEAAe,KAAK;;;;;;;;;;;;;;;;;ACxFP;;AAEkC;;AAE/C;AACA;AACA;AACA,WAAW,UAAU;AACrB;AACA,aAAa;AACb;AACA;AACA;AACA;AACA;AACA;;AAEA;;AAEA;AACA;AACA,KAAK;;AAEL;;AAEA;AACA;AACA;;AAEA;;AAEA;AACA;AACA;AACA;AACA,KAAK;;AAEL;AACA;AACA;AACA;AACA;AACA;AACA;AACA,OAAO;;AAEP;AACA;AACA;;AAEA;AACA;;AAEA;AACA;AACA;AACA;AACA;;AAEA,yBAAyB,yDAAa;AACtC;AACA,KAAK;AACL;;AAEA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;;AAEA;AACA;AACA;;AAEA;AACA;AACA;AACA;AACA;;AAEA;AACA;AACA,MAAM;AACN;AACA;AACA;;AAEA;AACA;AACA;;AAEA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;;AAEA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA,KAAK;AACL;AACA;AACA;AACA;AACA;AACA;;AAEA,iEAAe,WAAW,EAAC;;;;;;;;;;;;;;;;;;ACxHd;;AAEkC;AACf;;AAEhC;AACA;AACA;AACA,WAAW,SAAS;AACpB,WAAW,SAAS;AACpB,WAAW,SAAS;AACpB;AACA,aAAa,eAAe;AAC5B;AACA;AACA;AACA,EAAE,2DAAU,oDAAoD,2DAAU;AAC1E;AACA;;AAEA,iDAAK,yBAAyB,2DAAU;AACxC;AACA,CAAC;;AAED,iEAAe,aAAa,EAAC;;;;;;;;;;;;;;;;ACxBhB;;AAEE;AACf;AACA;;;;;;;;;;;;;;;;;;;;;;;;ACJa;;AAEqB;AACY;AACW;AACN;AACR;AACI;AACC;AACH;;AAE7C,mBAAmB,6DAAS;;AAE5B;AACA;AACA;AACA,WAAW,QAAQ;AACnB;AACA,YAAY,OAAO;AACnB;AACA;AACA;AACA;AACA;AACA,mBAAmB,8DAAkB;AACrC,oBAAoB,8DAAkB;AACtC;AACA;;AAEA;AACA;AACA;AACA,aAAa,eAAe;AAC5B,aAAa,SAAS;AACtB;AACA,eAAe,SAAS;AACxB;AACA;AACA;AACA;AACA,MAAM;AACN;AACA;;AAEA,oEAAoE;;AAEpE;AACA;AACA;AACA;AACA;AACA;AACA,YAAY;AACZ;AACA;AACA,UAAU;AACV;AACA;AACA;;AAEA;AACA;AACA;;AAEA;AACA;AACA;AACA;AACA;AACA;AACA,MAAM;AACN;AACA;;AAEA,aAAa,2DAAW;;AAExB,WAAW,yCAAyC;;AAEpD;AACA,MAAM,6DAAS;AACf;AACA;AACA;AACA,OAAO;AACP;;AAEA;AACA,UAAU,iDAAK;AACf;AACA;AACA;AACA,QAAQ;AACR,QAAQ,6DAAS;AACjB;AACA;AACA,SAAS;AACT;AACA;;AAEA;AACA;;AAEA;AACA,oCAAoC,iDAAK;AACzC;AACA;AACA;;AAEA,eAAe,iDAAK;AACpB;AACA;AACA;AACA;AACA;;AAEA,qBAAqB,wDAAY;;AAEjC;AACA;AACA;AACA;AACA;AACA;AACA;;AAEA;;AAEA;AACA,KAAK;;AAEL;AACA;AACA;AACA,KAAK;;AAEL;AACA;AACA;;AAEA;AACA,qBAAqB,2DAAe;AACpC;AACA;AACA;;AAEA;;AAEA;AACA;AACA;;AAEA;AACA;;AAEA;;AAEA;;AAEA;;AAEA;AACA;AACA;AACA;AACA;AACA,QAAQ;AACR;AACA;AACA;AACA;;AAEA;AACA,gBAAgB,2DAAe;AAC/B,MAAM;AACN;AACA;;AAEA;AACA;;AAEA;AACA;AACA;;AAEA;AACA;;AAEA;AACA,aAAa,2DAAW;AACxB,qBAAqB,6DAAa;AAClC,WAAW,gEAAQ;AACnB;AACA;;AAEA;AACA,iDAAK;AACL;AACA;AACA,wBAAwB,2DAAW,aAAa;AAChD;AACA;AACA,yBAAyB;AACzB,KAAK;AACL;AACA,CAAC;;AAED,iDAAK;AACL;;AAEA;AACA;AACA,0BAA0B,2DAAW,aAAa;AAClD;AACA;AACA;AACA,UAAU,IAAI;AACd;AACA;AACA,OAAO;AACP;AACA;;AAEA;;AAEA;AACA,CAAC;;AAED,iEAAe,KAAK,EAAC;;;;;;;;;;;;;;;;;ACnOR;;AAEmB;;AAEhC;AACA;AACA;AACA,WAAW,QAAQ;AACnB,WAAW,QAAQ;AACnB,WAAW,QAAQ;AACnB,WAAW,QAAQ;AACnB,WAAW,QAAQ;AACnB;AACA,aAAa,OAAO;AACpB;AACA;AACA;;AAEA;AACA;AACA,IAAI;AACJ;AACA;;AAEA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;;AAEA,iDAAK;AACL;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA,cAAc,iDAAK;AACnB;AACA;AACA;AACA;AACA,CAAC;;AAED;AACA;;AAEA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA,uBAAuB;AACvB,CAAC;;AAED;AACA,kDAAkD,YAAY;;AAE9D;AACA;AACA;;AAEA,EAAE,iDAAK;AACP;AACA,GAAG;AACH;AACA,GAAG;;AAEH;;AAEA;;AAEA;;AAEA;;AAEA;AACA;;AAEA,iEAAe,UAAU,EAAC;;;;;;;;;;;;;;;;;;ACtGb;;AAEmB;AACsB;;AAEtD;;AAEA;AACA;AACA;;AAEA;AACA;AACA;AACA;;AAEA,SAAS,iDAAK;AACd;;AAEA;AACA;AACA,2BAA2B,mBAAmB;AAC9C;;AAEA;AACA;AACA;;AAEA;AACA;;AAEA;;AAEA;AACA,MAAM,iDAAK;AACX;AACA;;AAEA;AACA;AACA;;AAEA,OAAO,iDAAK;;AAEZ,MAAM,iDAAK;AACX;AACA;;AAEA,MAAM,iDAAK;AACX;AACA;AACA;;AAEA;AACA;AACA;AACA;AACA,KAAK;AACL;;AAEA;AACA,uBAAuB,iDAAK;;AAE5B;AACA;AACA;AACA;AACA,OAAO;AACP;AACA,KAAK;AACL,GAAG;AACH;;AAEA;AACA;AACA;AACA;;AAEA;AACA;;AAEA;AACA;;AAEA;AACA;AACA;;AAEA,kBAAkB,iDAAK;;AAEvB;AACA;AACA;AACA;;AAEA;AACA,MAAM,iDAAK;;AAEX,QAAQ,iDAAK;AACb;AACA,MAAM,QAAQ,iDAAK;AACnB,iBAAiB,oEAAY;AAC7B,MAAM,SAAS,iDAAK;AACpB;AACA;AACA;AACA,MAAM;AACN;AACA;;AAEA;AACA;;AAEA;AACA;;AAEA;AACA,kBAAkB,iDAAK;;AAEvB;AACA;;AAEA;AACA;AACA;;AAEA;AACA;AACA;;AAEA,YAAY,iDAAK;AACjB;AACA;;AAEA,YAAY,iDAAK;AACjB;AACA;;AAEA;AACA;AACA;AACA;;AAEA;AACA;;AAEA;AACA,kBAAkB,iDAAK;;AAEvB;AACA;;AAEA;AACA;;AAEA;AACA;AACA;;AAEA;AACA;;AAEA;AACA,oBAAoB,iDAAK;;AAEzB;AACA;;AAEA;AACA;AACA;AACA;;AAEA,QAAQ,iDAAK;AACb;AACA,MAAM;AACN;AACA;;AAEA;AACA;;AAEA;AACA;AACA;AACA;;AAEA;AACA;AACA;AACA;AACA;AACA;AACA;;AAEA;AACA;;AAEA;AACA;AACA;;AAEA,IAAI,iDAAK;AACT,kBAAkB,iDAAK;;AAEvB;AACA;AACA;AACA;AACA;;AAEA;;AAEA;AACA;AACA;;AAEA;;AAEA;AACA,KAAK;;AAEL;AACA;;AAEA;AACA;AACA;;AAEA;AACA;;AAEA,IAAI,iDAAK;AACT,sEAAsE,iDAAK;AAC3E,KAAK;;AAEL;AACA;;AAEA;AACA;AACA;;AAEA;AACA;AACA;;AAEA;AACA;AACA;;AAEA;AACA;AACA;;AAEA;AACA;;AAEA;;AAEA;AACA;;AAEA;AACA;AACA;AACA,KAAK;;AAEL;AACA;;AAEA;AACA;;AAEA;AACA;AACA;AACA;AACA;;AAEA,IAAI,iDAAK;;AAET;AACA;AACA;;AAEA;;AAEA;AACA,iDAAK,6CAA6C,MAAM;AACxD,oDAAoD;AACpD;AACA;AACA;AACA;AACA;AACA;AACA,CAAC;;AAED,iDAAK;;AAEL,iEAAe,YAAY,EAAC;;;;;;;;;;;;;;;;;AC7Sf;;AAEqB;;AAElC;AACA;AACA;AACA;;AAEA;AACA;AACA;AACA,aAAa,UAAU;AACvB,aAAa,UAAU;AACvB;AACA,cAAc,QAAQ;AACtB;AACA;AACA;AACA;AACA;AACA;AACA;AACA,KAAK;AACL;AACA;;AAEA;AACA;AACA;AACA,aAAa,QAAQ;AACrB;AACA,eAAe,SAAS;AACxB;AACA;AACA;AACA;AACA;AACA;;AAEA;AACA;AACA;AACA,eAAe;AACf;AACA;AACA;AACA;AACA;AACA;;AAEA;AACA;AACA;AACA;AACA;AACA;AACA,aAAa,UAAU;AACvB;AACA,eAAe;AACf;AACA;AACA,IAAI,iDAAK;AACT;AACA;AACA;AACA,KAAK;AACL;AACA;;AAEA,iEAAe,kBAAkB,EAAC;;;;;;;;;;;;;;;;;;ACtErB;;AAE2C;AACJ;;AAEpD;AACA;AACA;AACA;AACA;AACA,WAAW,QAAQ;AACnB,WAAW,QAAQ;AACnB;AACA,aAAa,QAAQ;AACrB;AACe;AACf,kBAAkB,qEAAa;AAC/B,WAAW,mEAAW;AACtB;AACA;AACA;;;;;;;;;;;;;;;;;;;;;;ACpBa;;AAEkC;AACF;AACD;AACW;AACJ;AACJ;;AAE/C;AACA;AACA;AACA,WAAW,QAAQ;AACnB;AACA,aAAa;AACb;AACA;AACA;AACA;AACA;;AAEA;AACA,cAAc,gEAAa;AAC3B;AACA;;AAEA;AACA;AACA;AACA,WAAW,QAAQ;AACnB;AACA,aAAa,SAAS;AACtB;AACe;AACf;;AAEA,mBAAmB,6DAAY;;AAE/B;AACA,gBAAgB,yDAAa;AAC7B;AACA;AACA;;AAEA;AACA;AACA;;AAEA,kBAAkB,6DAAQ,8BAA8B,0DAAQ;;AAEhE;AACA;;AAEA;AACA,oBAAoB,yDAAa;AACjC;AACA;AACA;AACA;;AAEA,uBAAuB,6DAAY;;AAEnC;AACA,GAAG;AACH,SAAS,+DAAQ;AACjB;;AAEA;AACA;AACA,+BAA+B,yDAAa;AAC5C;AACA;AACA;AACA;AACA,kCAAkC,6DAAY;AAC9C;AACA;;AAEA;AACA,GAAG;AACH;;;;;;;;;;;;;;;;;;AChFa;;AAEmB;AACa;;AAE7C,oDAAoD,wDAAY,KAAK,WAAW;;AAEhF;AACA;AACA;AACA;AACA,WAAW,QAAQ;AACnB,WAAW,QAAQ;AACnB;AACA,aAAa,QAAQ;AACrB;AACe;AACf;AACA;AACA;;AAEA;AACA,QAAQ,iDAAK,0BAA0B,iDAAK;AAC5C,aAAa,iDAAK,aAAa,SAAS;AACxC,MAAM,SAAS,iDAAK;AACpB,aAAa,iDAAK,SAAS;AAC3B,MAAM,SAAS,iDAAK;AACpB;AACA;AACA;AACA;;AAEA;AACA;AACA,SAAS,iDAAK;AACd;AACA,MAAM,UAAU,iDAAK;AACrB;AACA;AACA;;AAEA;AACA;AACA,SAAS,iDAAK;AACd;AACA;AACA;;AAEA;AACA;AACA,SAAS,iDAAK;AACd;AACA,MAAM,UAAU,iDAAK;AACrB;AACA;AACA;;AAEA;AACA;AACA;AACA;AACA,MAAM;AACN;AACA;AACA;;AAEA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;;AAEA,EAAE,iDAAK,qCAAqC;AAC5C;AACA;AACA,KAAK,iDAAK;AACV,GAAG;;AAEH;AACA;;;;;;;;;;;;;;;;;ACzGa;;AAE4B;;AAEzC;AACA;AACA;AACA,WAAW,UAAU;AACrB,WAAW,UAAU;AACrB,WAAW,QAAQ;AACnB;AACA,aAAa,QAAQ;AACrB;AACe;AACf;AACA;AACA;AACA,IAAI;AACJ,eAAe,sDAAU;AACzB;AACA,OAAO,sDAAU,kBAAkB,sDAAU;AAC7C;AACA;AACA;AACA;AACA;AACA;;;;;;;;;;;;;;;;;;;AC1Ba;;AAEqB;AACU;AACO;;AAEnD;AACA;AACA;AACA,WAAW,gBAAgB;AAC3B,WAAW,SAAS;AACpB;AACA,aAAa,GAAG;AAChB;AACe;AACf,yBAAyB,0DAAQ;AACjC;AACA,kBAAkB,6DAAY;AAC9B;;AAEA,EAAE,iDAAK;AACP;AACA,GAAG;;AAEH;;AAEA;AACA;;;;;;;;;;;;;;;;;;;;;;;AC3Ba;;AAEmB;AACe;AACM;AACH;AACY;AAClB;AACc;;AAE1D;AACA;AACA;AACA;AACA,WAAW,KAAK;AAChB,WAAW,UAAU;AACrB,WAAW,UAAU;AACrB;AACA,aAAa,QAAQ;AACrB;AACA;AACA,MAAM,iDAAK;AACX;AACA;AACA,aAAa,iDAAK;AAClB,MAAM;AACN;AACA;AACA;AACA;AACA;;AAEA;AACA;;AAEA;;AAEA,gBAAgB,wDAAoB;;AAEpC;;AAEA;AACA;AACA;AACA,4BAA4B,iDAAK;;AAEjC,2BAA2B,iDAAK;AAChC;AACA;;AAEA,uBAAuB,iDAAK;;AAE5B;AACA,iDAAiD,sEAAc;AAC/D;;AAEA,QAAQ,iDAAK;AACb,MAAM,iDAAK;AACX,MAAM,iDAAK;AACX,MAAM,iDAAK;AACX,MAAM,iDAAK;AACX,MAAM,iDAAK;AACX;AACA;AACA;AACA,QAAQ,iDAAK;AACb;AACA;AACA,QAAQ,iDAAK;AACb,gEAAgE;AAChE;AACA;;AAEA;;AAEA;AACA;AACA,eAAe,wEAAgB;AAC/B;;AAEA,wBAAwB,iDAAK;AAC7B;;AAEA,eAAe,kEAAU;AACzB,wBAAwB,iBAAiB;AACzC;AACA;AACA;AACA;AACA;;AAEA;AACA;AACA;AACA;;AAEA;AACA,GAAG;;AAEH;AACA;AACA;AACA;;AAEA,QAAQ,iDAAK,qBAAqB,iDAAK;AACvC;AACA;;AAEA,gBAAgB,iDAAK;AACrB;AACA;;AAEA;AACA;AACA,QAAQ;AACR;AACA;AACA,kBAAkB,2DAAU,SAAS,2DAAU;AAC/C;AACA;AACA;AACA;AACA;;AAEA;AACA,GAAG;;AAEH;AACA;AACA;AACA;AACA;;AAEA;AACA;;AAEA;AACA;;AAEA;AACA,cAAc,0DAAQ;AACtB,UAAU,0DAAQ;AAClB,GAAG;;AAEH;AACA;AACA,GAAG;;AAEH;AACA;AACA;AACA;AACA;AACA;AACA;;AAEA,iDAAK;AACL;AACA,CAAC;;AAED,iEAAe,QAAQ,EAAC;;;;;;;;;;;;;;;;AChKX;;AAEb,iEAAe;AACf;AACA;AACA;AACA,CAAC,EAAC;;;;;;;;;;;;;;;;ACNK;;;;;;;;;;;;;;;;ACAM;;AAE4B;;AAEzC;AACA;AACA;AACA;AACA,WAAW,QAAQ;AACnB;AACA,aAAa,QAAQ;AACrB;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA,GAAG;AACH;;AAEA;AACA;AACA;AACA,WAAW,qBAAqB;AAChC,WAAW,qBAAqB;AAChC;AACA,aAAa;AACb;AACA;AACA;;AAEA,YAAY,0DAAU;AACtB;;AAEA;;AAEA;AACA;AACA;;AAEA;AACA;AACA;AACA,IAAI;;AAEJ;AACA;AACA,GAAG;AACH;;AAEA,iEAAe,oBAAoB,EAAC;;;;;;;;;;;;;;;;ACzDpC;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;;AAEA;AACA;AACA,CAAC;;AAED,iEAAe,cAAc,EAAC;;;;;;;;;;;;;;;;ACtEjB;;AAEE;AACf;AACA;AACA;AACA;;;;;;;;;;;;;;;;;;ACNa;;AAEmB;AACsC;;AAEtE;AACA;AACA;AACA;AACA,WAAW,QAAQ;AACnB;AACA,aAAa,QAAQ;AACrB;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;;AAEA;AACA;AACA;AACA,WAAW,QAAQ;AACnB,WAAW,QAAQ;AACnB,WAAW,SAAS;AACpB;AACA,aAAa,QAAQ;AACrB;AACe;AACf;AACA;AACA;AACA;AACA;AACA;;AAEA;;AAEA;;AAEA;AACA;AACA,IAAI;AACJ,uBAAuB,iDAAK;AAC5B;AACA,UAAU,wEAAoB;AAC9B;;AAEA;AACA;;AAEA;AACA;AACA;AACA;AACA;;AAEA;AACA;;;;;;;;;;;;;;;;AC9Da;;AAEb;AACA;AACA;AACA,WAAW,QAAQ;AACnB,WAAW,QAAQ;AACnB;AACA,aAAa,QAAQ;AACrB;AACe;AACf;AACA;AACA;AACA;;;;;;;;;;;;;;;;;;ACduD;AACR;;AAE/C;AACA;;AAEA;;AAEA;AACA;AACA;AACA;AACA;AACA,sCAAsC,2DAAU,aAAa,gEAAa;AAC1E;AACA;;AAEA;AACA,gBAAgB,2DAAU,YAAY,SAAS,iBAAiB,2DAAU;AAC1E,GAAG;;AAEH;AACA;AACA;AACA;AACA;AACA;AACA;AACA,OAAO;AACP;AACA;AACA;;AAEA;;AAEA,SAAS,QAAQ;;AAEjB;;AAEA;AACA;AACA;AACA,GAAG;AACH;;AAEA,iEAAe,cAAc,EAAC;;;;;;;;;;;;;;;;;;AC7CI;AACU;;AAE5C,iEAAe,0DAAQ;;AAEvB;AACA;AACA;AACA;;AAEA,MAAM,iDAAK;;AAEX,MAAM,iDAAK;;AAEX,MAAM,iDAAK;;AAEX;;AAEA,uCAAuC;AACvC,KAAK;;AAEL;AACA,0DAA0D,wBAAwB;AAClF;AACA,KAAK;;AAEL;AACA;AACA;AACA;;AAEA;;AAEA;AACA;AACA,cAAc;AACd;AACA;AACA,KAAK;AACL;AACA,GAAG,EAAC;;;;;;;;;;;;;;;;;;ACxCS;;AAEmB;;AAEhC;AACA;AACA;AACA,WAAW,QAAQ;AACnB;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA,SAAS,iDAAK;AACd;AACA,GAAG;AACH;;AAEA;AACA;AACA;AACA,WAAW,YAAY;AACvB;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA,cAAc,SAAS;AACvB;AACA;AACA;AACA;AACA;;AAEA;AACA;AACA;AACA,WAAW,QAAQ;AACnB;AACA,aAAa,4BAA4B;AACzC;AACA;AACA;AACA;;AAEA;;AAEA;AACA;AACA,oBAAoB,iDAAK;;AAEzB;AACA,UAAU,iDAAK;AACf;AACA,QAAQ;AACR;AACA;;AAEA;AACA;;AAEA,0BAA0B,iDAAK;AAC/B;AACA;;AAEA;;AAEA,kBAAkB,iDAAK;AACvB;AACA;;AAEA;AACA;;AAEA,MAAM,iDAAK,yBAAyB,iDAAK;AACzC;;AAEA,IAAI,iDAAK;AACT;AACA,KAAK;;AAEL;AACA;;AAEA;AACA;;AAEA,iEAAe,cAAc,EAAC;;;;;;;;;;;;;;;;AC9FjB;;AAEb;AACA;AACA;AACA,WAAW,QAAQ;AACnB;AACA,aAAa,SAAS;AACtB;AACe;AACf;AACA;AACA;AACA;AACA;;;;;;;;;;;;;;;;;ACda;;AAEqB;;AAElC;AACA;AACA;AACA,WAAW,GAAG;AACd;AACA,aAAa,SAAS;AACtB;AACe;AACf,SAAS,iDAAK;AACd;;;;;;;;;;;;;;;;;;ACba;;AAEqB;AACU;;AAE5C,iEAAe,0DAAQ;;AAEvB;AACA;AACA;AACA,iBAAiB,0DAAQ,qCAAqC,0DAAQ;AACtE;AACA;;AAEA;AACA;AACA;AACA,cAAc,QAAQ;AACtB,gBAAgB;AAChB;AACA;AACA;;AAEA;AACA;AACA;AACA;AACA;;AAEA;;AAEA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;;AAEA;;AAEA;AACA;AACA;AACA,cAAc,QAAQ;AACtB,gBAAgB,SAAS;AACzB;AACA;AACA,sBAAsB,iDAAK;AAC3B;AACA;AACA;AACA,GAAG;;AAEH;AACA;AACA;AACA;AACA;AACA,GAAG,GAAG,EAAC;;;;;;;;;;;;;;;;AClEP;AACA,iEAAe,IAAI,EAAC;;;;;;;;;;;;;;;;;ACDP;;AAEqB;;AAElC;AACA;AACA,0BAA0B,iDAAK;AAC/B;AACA;AACA;AACA;AACA;;AAEA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA,WAAW,QAAQ;AACnB;AACA,aAAa,QAAQ;AACrB;AACA,iEAAe;AACf;AACA;AACA;AACA;;AAEA;AACA;AACA;AACA;;AAEA;AACA;AACA;;AAEA;AACA;AACA;AACA,QAAQ;AACR;AACA;AACA,MAAM;AACN;AACA;AACA,GAAG;;AAEH;AACA,CAAC,EAAC;;;;;;;;;;;;;;;;ACtDW;;AAEE;AACf,0BAA0B,KAAK;AAC/B;AACA;;;;;;;;;;;;;;;;;;;;;ACL2C;AACN;AACL;;AAEzB;AACP;AACA,uBAAuB,2DAAW;;AAElC,SAAS,wDAAQ;AACjB;AACA;AACA;AACA;AACA;;AAEA;;AAEA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;;AAEA;AACA,GAAG;AACH;;AAEO;AACP;;AAEA;AACA;AACA;AACA;AACA,GAAG;AACH;;AAEO,4CAA4C,iDAAK;;;;;;;;;;;;;;;;;;;;;;;;AC3CZ;AACZ;AACmB;AAChB;AACkB;AACJ;AACE;AACd;;AAErC,iEAAe;AACf,oBAAoB,gEAAW,GAAG;;AAElC,OAAO,oEAAoE;;AAE3E,gCAAgC,6DAAY;;AAE5C,kBAAkB,wDAAQ,CAAC,kEAAa;;AAExC;AACA;AACA;AACA;AACA;AACA;;AAEA;;AAEA,MAAM,iDAAK;AACX,QAAQ,0DAAQ,0BAA0B,0DAAQ;AAClD,yCAAyC;AACzC,MAAM;AACN;AACA,kEAAkE;AAClE,gFAAgF;AAChF;AACA;;AAEA;AACA;AACA;;AAEA,MAAM,0DAAQ;AACd,qBAAqB,iDAAK;;AAE1B,qDAAqD,+DAAe;AACpE;AACA,4DAA4D,mDAAO;;AAEnE;AACA;AACA;AACA;AACA;;AAEA;AACA,CAAC;;;;;;;;;;;;;;;;;ACvDY;;AAEb;AACA;AACA,WAAW,QAAQ;AACnB,WAAW,QAAQ;AACnB,aAAa;AACb;AACA;AACA;AACA;AACA;AACA;AACA;AACA;;AAEA;;AAEA;AACA;;AAEA;;AAEA;AACA;AACA;;AAEA;AACA;;AAEA;AACA;;AAEA;AACA;AACA;AACA;;AAEA;;AAEA;AACA;AACA;;AAEA;AACA;AACA;;AAEA;;AAEA;AACA;AACA;;AAEA,iEAAe,WAAW,EAAC;;;;;;;;;;;;;;;;ACtDd;;AAEb;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA,+BAA+B;AAC/B;AACA;AACA,WAAW,UAAU;AACrB;AACA,aAAa;AACb;AACe;AACf;AACA;AACA;AACA;;;;;;;;;;;;;;;;AC3BA;AACA;AACA,WAAW,UAAU;AACrB,WAAW,QAAQ;AACnB,YAAY;AACZ;AACA;AACA;AACA;AACA;AACA;;AAEA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;;AAEA;AACA;AACA;AACA;AACA;AACA,MAAM;AACN;AACA;AACA;AACA;AACA;AACA,SAAS;AACT;AACA;AACA;;AAEA;;AAEA;AACA;;AAEA,iEAAe,QAAQ,EAAC;;;;;;;;;;;;;;;;;;;AC3CX;;AAEmB;AACe;AAC/C;AACoE;;AAEpE;AACA;AACA;AACA,WAAW,QAAQ;AACnB;AACA,aAAa;AACb;AACA;AACA,SAAS,iDAAK,yBAAyB,iDAAK;AAC5C;;AAEA;AACA;AACA;AACA,WAAW,QAAQ;AACnB;AACA,aAAa,QAAQ;AACrB;AACA;AACA,SAAS,iDAAK;AACd;;AAEA;AACA;AACA;AACA,WAAW,QAAQ;AACnB,WAAW,QAAQ;AACnB,WAAW,QAAQ;AACnB;AACA,aAAa,QAAQ;AACrB;AACA;AACA;AACA;AACA;AACA;AACA;AACA,GAAG;AACH;;AAEA;AACA;AACA;AACA,WAAW,YAAY;AACvB;AACA,aAAa;AACb;AACA;AACA,SAAS,iDAAK;AACd;;AAEA,mBAAmB,iDAAK,cAAc,iDAAK,IAAI;AAC/C;AACA,CAAC;;AAED;AACA;AACA;AACA,WAAW,QAAQ;AACnB,WAAW,SAAS;AACpB,WAAW,SAAS;AACpB,WAAW,UAAU;AACrB,WAAW,SAAS;AACpB,WAAW,SAAS;AACpB,WAAW,UAAU;AACrB;AACA,aAAa;AACb;;AAEA;AACA;AACA;AACA,WAAW,kBAAkB;AAC7B,WAAW,QAAQ;AACnB,WAAW,qBAAqB;AAChC;AACA;AACA;AACA;AACA,OAAO,iDAAK;AACZ;AACA;;AAEA;AACA,8BAA8B,0EAAgB;;AAE9C;AACA,YAAY,iDAAK;AACjB;AACA;AACA;AACA,GAAG;AACH;AACA,YAAY,iDAAK;AACjB,GAAG;;AAEH;AACA;AACA;AACA;AACA;AACA;AACA,2BAA2B,iDAAK;;AAEhC,OAAO,iDAAK;AACZ;AACA;;AAEA;AACA;;AAEA,QAAQ,iDAAK;AACb;AACA;;AAEA,oBAAoB,iDAAK;AACzB,gBAAgB,2DAAU;AAC1B;;AAEA,QAAQ,iDAAK,yBAAyB,iDAAK;AAC3C;AACA;;AAEA;AACA;;AAEA;AACA;AACA;AACA,aAAa,GAAG;AAChB,aAAa,eAAe;AAC5B,aAAa,sBAAsB;AACnC,YAAY;AACZ;AACA,eAAe,SAAS;AACxB;AACA;AACA;;AAEA;AACA,UAAU,iDAAK,kBAAkB;AACjC;AACA;AACA;AACA;AACA,QAAQ;AACR,SAAS,iDAAK;AACd,UAAU,iDAAK,sBAAsB,iDAAK,gCAAgC,iDAAK;AAC/E;AACA;AACA;;AAEA;AACA,YAAY,iDAAK;AACjB;AACA;AACA;AACA;AACA,SAAS;AACT;AACA;AACA;;AAEA;AACA;AACA;;AAEA;;AAEA;AACA;;AAEA;;AAEA;AACA;AACA;AACA;AACA,GAAG;;AAEH;AACA,QAAQ,iDAAK;;AAEb;AACA;AACA;;AAEA;;AAEA,IAAI,iDAAK;AACT,uBAAuB,iDAAK;AAC5B,sBAAsB,iDAAK;AAC3B;;AAEA;AACA;AACA;AACA,KAAK;;AAEL;AACA;;AAEA,OAAO,iDAAK;AACZ;AACA;;AAEA;;AAEA;AACA;;AAEA,iEAAe,UAAU,EAAC;;;;;;;;;;;;;;;;;;;AC1Nb;;AAEmB;AACS;AACG;;AAE7B;AACf,SAAS,0DAAU,WAAW,0DAAQ;AACtC;AACA,UAAU,0DAAQ,WAAW,iDAAK;AAClC;AACA;AACA;;AAEA;AACA;AACA,GAAG;AACH;;;;;;;;;;;;;;;;;;;AChBO;AACP;;AAEA;AACA;AACA;AACA;;AAEA;AACA;;AAEA;AACA;AACA;AACA;AACA;AACA;;AAEO;AACP;AACA;AACA;AACA;;AAEO;AACP;;AAEA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;;AAEA;AACA;AACA;AACA,eAAe,aAAa;;AAE5B;AACA;AACA;AACA;AACA;;AAEA;AACA;AACA;AACA;AACA;AACA;AACA,QAAQ;AACR;AACA;AACA;AACA,KAAK;AACL;AACA;AACA;AACA;AACA,GAAG;AACH;AACA,GAAG;AACH;;;;;;;;;;;;;;;;;;AClEa;;AAE0B;AACQ;;AAE/C;;AAEA;AACA;AACA;AACA;AACA;AACA,CAAC;;AAED;;AAEA;AACA;AACA;AACA,WAAW,mBAAmB;AAC9B,WAAW,SAAS;AACpB,WAAW,SAAS;AACpB;AACA,aAAa;AACb;AACA;AACA;AACA,wBAAwB,iDAAO;AAC/B;;AAEA;AACA;AACA;AACA,gBAAgB,2DAAU;AAC1B;AACA,QAAQ,2DAAU;AAClB;AACA;;AAEA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;;AAEA;AACA;AACA;;AAEA;AACA;AACA;AACA,WAAW,QAAQ;AACnB,WAAW,QAAQ;AACnB,WAAW,UAAU;AACrB;AACA,aAAa;AACb;;AAEA;AACA;AACA,cAAc,2DAAU,8BAA8B,2DAAU;AAChE;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA,kBAAkB,2DAAU,yCAAyC,2DAAU;AAC/E;AACA;AACA;AACA;AACA,gBAAgB,2DAAU,0BAA0B,2DAAU;AAC9D;AACA;AACA;;AAEA,iEAAe;AACf;AACA;AACA,CAAC,EAAC;;;;;;;;;;;;;;;;AC1FU;;AAEZ,iEAAe,yCAAyC;;;;;;;;;;;;;;;;ACF3C;;AAEb,iEAAe,iDAAiD,EAAC;;;;;;;;;;;;;;;;;ACFpD;;AAE+D;AAC5E,iEAAe,2DAA2D,wEAAoB,EAAC;;;;;;;;;;;;;;;;;;;ACHrC;AACd;AACR;;AAEpC,iEAAe;AACf;AACA;AACA,mBAAmB;AACnB,YAAY;AACZ,QAAQ;AACR,GAAG;AACH;AACA,CAAC,EAAC;;;;;;;;;;;;;;;;;;;;ACZF;;AAEA;;AAEA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA,aAAa;AACb;AACA;AACA;;AAEA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA,CAAC;;AAED;;AAQC;;;;;;;;;;;;;;;;;;AClDsC;AACI;;AAE3C,iEAAe;AACf,KAAK,6CAAK;AACV,KAAK,sDAAQ;AACb,CAAC;;;;;;;;;;;;;;;;;ACNY;;AAEwB;;AAErC;;AAEA,OAAO,UAAU;AACjB,OAAO,gBAAgB;;AAEvB;AACA;AACA;AACA,CAAC;;AAED;AACA;AACA;AACA;;AAEA;;AAEA;AACA;AACA;AACA,WAAW,QAAQ;AACnB;AACA,aAAa,SAAS;AACtB;AACA,OAAO,SAAS;;AAEhB;AACA;AACA;AACA,WAAW,GAAG;AACd;AACA,aAAa,SAAS;AACtB;AACA;;AAEA;AACA;AACA;AACA,WAAW,GAAG;AACd;AACA,aAAa,SAAS;AACtB;AACA;AACA;AACA;AACA;;AAEA;AACA;AACA;AACA,WAAW,GAAG;AACd;AACA,aAAa,SAAS;AACtB;AACA;;;AAGA;AACA;AACA;AACA,WAAW,GAAG;AACd;AACA,aAAa,SAAS;AACtB;AACA;AACA;AACA;AACA;AACA,IAAI;AACJ;AACA;AACA;AACA;;AAEA;AACA;AACA;AACA,WAAW,GAAG;AACd;AACA,aAAa,SAAS;AACtB;AACA;;AAEA;AACA;AACA;AACA,WAAW,GAAG;AACd,aAAa,SAAS;AACtB;AACA;;AAEA;AACA;AACA;AACA,WAAW,GAAG;AACd;AACA,aAAa,SAAS;AACtB;AACA;;AAEA;AACA;AACA;AACA,WAAW,GAAG;AACd;AACA,aAAa,SAAS;AACtB;AACA;;AAEA;AACA;AACA;AACA,WAAW,GAAG;AACd,aAAa,SAAS;AACtB;AACA;;AAEA;AACA;AACA;AACA,WAAW,GAAG;AACd;AACA,aAAa,SAAS;AACtB;AACA;AACA;AACA;AACA;;AAEA;AACA;AACA;;AAEA;AACA;AACA;AACA,WAAW,GAAG;AACd;AACA,aAAa,SAAS;AACtB;AACA;;AAEA;AACA;AACA;AACA,WAAW,GAAG;AACd;AACA,aAAa,SAAS;AACtB;AACA;;AAEA;AACA;AACA;AACA,WAAW,GAAG;AACd;AACA,aAAa,SAAS;AACtB;AACA;;AAEA;AACA;AACA;AACA,WAAW,GAAG;AACd;AACA,aAAa,SAAS;AACtB;AACA;;AAEA;AACA;AACA;AACA,WAAW,GAAG;AACd;AACA,aAAa,SAAS;AACtB;AACA;;AAEA;AACA;AACA;AACA,WAAW,GAAG;AACd;AACA,aAAa,SAAS;AACtB;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;;AAEA;AACA;AACA;AACA,WAAW,GAAG;AACd;AACA,aAAa,SAAS;AACtB;AACA;;AAEA;;AAEA;AACA;AACA;AACA,WAAW,QAAQ;AACnB;AACA,aAAa,QAAQ;AACrB;AACA;AACA;;AAEA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA,WAAW,cAAc;AACzB,WAAW,UAAU;AACrB;AACA,WAAW,SAAS;AACpB,aAAa;AACb;AACA,2BAA2B,oBAAoB,IAAI;AACnD;AACA;AACA;AACA;;AAEA;AACA;;AAEA;AACA;AACA;AACA;AACA;;AAEA;AACA;AACA,gCAAgC,OAAO;AACvC;AACA;AACA,IAAI;AACJ;AACA;AACA;AACA;;AAEA,gBAAgB,SAAS;AACzB;AACA;AACA;AACA;AACA;;AAEA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;;AAEA;AACA;AACA;AACA;AACA,CAAC;;AAED;;AAEA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA,uBAAuB,SAAS,GAAG,SAAS;AAC5C,4BAA4B;AAC5B;AACA;AACA,WAAW,QAAQ;AACnB;AACA,aAAa,QAAQ;AACrB;AACA;AACA,SAAS,UAAU;AACnB;AACA;AACA;AACA;AACA;AACA,MAAM;AACN,kCAAkC;AAClC,MAAM;AACN;AACA,MAAM;AACN;AACA;AACA;;AAEA,wCAAwC,OAAO;AAC/C;AACA;AACA;AACA;;AAEA;AACA;AACA;AACA,WAAW,QAAQ;AACnB,WAAW,QAAQ;AACnB,WAAW,QAAQ;AACnB;AACA,WAAW,SAAS;AACpB,aAAa,QAAQ;AACrB;AACA,gCAAgC,WAAW,IAAI;AAC/C;AACA;AACA,eAAe,4DAAI;AACnB,MAAM;AACN;AACA;AACA,GAAG,GAAG,WAAW;AACjB;AACA;;AAEA;AACA;AACA;AACA,WAAW,QAAQ;AACnB;AACA,aAAa,QAAQ;AACrB;AACA;AACA;AACA;AACA;AACA;AACA;;AAEA;AACA;AACA,WAAW,UAAU;AACrB,WAAW,UAAU;AACrB,WAAW,QAAQ;AACnB,WAAW,QAAQ;AACnB;AACA,aAAa;AACb;AACA;AACA;AACA;AACA;AACA;AACA,GAAG;AACH;AACA;;AAEA;AACA;AACA,WAAW,QAAQ;AACnB,WAAW,QAAQ;AACnB,WAAW,kBAAkB;AAC7B,WAAW,UAAU;AACrB;AACA,aAAa;AACb;AACA;AACA;AACA;AACA;AACA;;AAEA;AACA;AACA;;AAEA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA,IAAI;;AAEJ;AACA;;AAEA;AACA;AACA;AACA,WAAW,QAAQ;AACnB,WAAW,QAAQ;AACnB,WAAW,QAAQ;AACnB;AACA,aAAa;AACb;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;;;AAGA;AACA;AACA;AACA,WAAW,GAAG;AACd;AACA,aAAa;AACb;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;;AAEA;AACA;AACA;AACA;AACA,WAAW;AACX;AACA,aAAa;AACb;AACA;AACA;AACA;AACA;AACA;AACA;AACA,CAAC;;AAED;AACA;AACA;AACA,WAAW,kBAAkB;AAC7B,WAAW,UAAU;AACrB;AACA,aAAa;AACb;AACA;AACA;;AAEA;;AAEA;;AAEA;AACA;AACA;AACA;AACA;;AAEA;AACA;AACA;AACA,WAAW,QAAQ;AACnB,WAAW,QAAQ;AACnB;AACA,aAAa;AACb;AACA;AACA;AACA;;AAEA;AACA;AACA;;AAEA;AACA;;AAEA;AACA;;AAEA;AACA;AACA;AACA;AACA;AACA;AACA;;AAEA;AACA,0BAA0B,eAAe;;AAEzC;AACA;AACA;AACA,WAAW,GAAG;AACd;AACA,aAAa,SAAS;AACtB;AACA;;AAEA;AACA;AACA;;AAEA;AACA;AACA;AACA;AACA;AACA,GAAG;;AAEH;AACA;;AAEA;AACA;AACA,WAAW,QAAQ;AACnB;;AAEA;AACA;AACA;AACA;AACA;AACA;;AAEA;;AAEA;;AAEA;;AAEA;AACA;AACA;AACA;;AAEA;AACA;AACA;AACA;AACA;AACA,GAAG;AACH;;AAEA;AACA;;AAEA;AACA;AACA;AACA,KAAK;AACL;;AAEA;;AAEA;AACA;;AAEA;;AAEA;AACA;AACA;;AAEA;;AAEA;;AAEA;AACA;AACA;AACA;AACA;;AAEA;AACA;AACA,SAAS,QAAQ;AACjB;AACA;AACA;;AAEA;AACA;;AAEA;AACA;AACA;AACA,WAAW,SAAS;AACpB;AACA,aAAa;AACb;AACA;AACA;AACA;;AAEA;AACA;;AAEA;;AAEA;AACA;AACA;AACA;;AAEA;AACA;AACA;;AAEA;AACA;AACA;AACA,SAAS;;AAET;;AAEA;AACA;AACA;;AAEA;AACA;;AAEA;AACA;;AAEA;;AAEA;AACA;;AAEA;AACA;;AAEA;AACA;AACA;AACA;;AAEA;AACA,0CAA0C,aAAa;AACvD;AACA;AACA;AACA,KAAK;;AAEL;AACA;AACA;AACA;AACA,GAAG,WAAW,cAAc;AAC5B,CAAC;AACD;AACA;AACA;;AAEA;AACA;;AAEA;;AAEA,iEAAe;AACf;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA,CAAC,EAAC;;;;;;;UCvvBF;UACA;;UAEA;UACA;UACA;UACA;UACA;UACA;UACA;UACA;UACA;UACA;UACA;UACA;UACA;;UAEA;UACA;;UAEA;UACA;UACA;;;;;WCtBA;WACA;WACA;WACA;WACA;WACA,iCAAiC,WAAW;WAC5C;WACA;;;;;WCPA;WACA;WACA;WACA;WACA,yCAAyC,wCAAwC;WACjF;WACA;WACA;;;;;WCPA;;;;;WCAA;WACA;WACA;WACA,uDAAuD,iBAAiB;WACxE;WACA,gDAAgD,aAAa;WAC7D;;;;;;;;;;;;;;;;;;;;;ACNwC;AACY;AACP;AAEL;AACxC,iEAAe;EAAEqQ,MAAM,EAANA,yDAAM;EAAEoN,YAAY,EAAZA,+DAAY;EAAEsB,MAAM,EAANA,8CAAMA;AAAC,CAAC,E","sources":["webpack://Typesense/./src/Typesense/Alias.ts","webpack://Typesense/./src/Typesense/Aliases.ts","webpack://Typesense/./src/Typesense/Analytics.ts","webpack://Typesense/./src/Typesense/AnalyticsEvents.ts","webpack://Typesense/./src/Typesense/AnalyticsRule.ts","webpack://Typesense/./src/Typesense/AnalyticsRules.ts","webpack://Typesense/./src/Typesense/ApiCall.ts","webpack://Typesense/./src/Typesense/Client.ts","webpack://Typesense/./src/Typesense/Collection.ts","webpack://Typesense/./src/Typesense/Collections.ts","webpack://Typesense/./src/Typesense/Configuration.ts","webpack://Typesense/./src/Typesense/Conversation.ts","webpack://Typesense/./src/Typesense/ConversationModel.ts","webpack://Typesense/./src/Typesense/ConversationModels.ts","webpack://Typesense/./src/Typesense/Conversations.ts","webpack://Typesense/./src/Typesense/Debug.ts","webpack://Typesense/./src/Typesense/Document.ts","webpack://Typesense/./src/Typesense/Documents.ts","webpack://Typesense/./src/Typesense/Errors/HTTPError.ts","webpack://Typesense/./src/Typesense/Errors/ImportError.ts","webpack://Typesense/./src/Typesense/Errors/MissingConfigurationError.ts","webpack://Typesense/./src/Typesense/Errors/ObjectAlreadyExists.ts","webpack://Typesense/./src/Typesense/Errors/ObjectNotFound.ts","webpack://Typesense/./src/Typesense/Errors/ObjectUnprocessable.ts","webpack://Typesense/./src/Typesense/Errors/RequestMalformed.ts","webpack://Typesense/./src/Typesense/Errors/RequestUnauthorized.ts","webpack://Typesense/./src/Typesense/Errors/ServerError.ts","webpack://Typesense/./src/Typesense/Errors/TypesenseError.ts","webpack://Typesense/./src/Typesense/Errors/index.ts","webpack://Typesense/./src/Typesense/Health.ts","webpack://Typesense/./src/Typesense/Key.ts","webpack://Typesense/./src/Typesense/Keys.ts","webpack://Typesense/./src/Typesense/Metrics.ts","webpack://Typesense/./src/Typesense/MultiSearch.ts","webpack://Typesense/./src/Typesense/Operations.ts","webpack://Typesense/./src/Typesense/Override.ts","webpack://Typesense/./src/Typesense/Overrides.ts","webpack://Typesense/./src/Typesense/Preset.ts","webpack://Typesense/./src/Typesense/Presets.ts","webpack://Typesense/./src/Typesense/RequestWithCache.ts","webpack://Typesense/./src/Typesense/SearchClient.ts","webpack://Typesense/./src/Typesense/SearchOnlyCollection.ts","webpack://Typesense/./src/Typesense/SearchOnlyDocuments.ts","webpack://Typesense/./src/Typesense/Stats.ts","webpack://Typesense/./src/Typesense/Stemming.ts","webpack://Typesense/./src/Typesense/StemmingDictionaries.ts","webpack://Typesense/./src/Typesense/StemmingDictionary.ts","webpack://Typesense/./src/Typesense/Stopword.ts","webpack://Typesense/./src/Typesense/Stopwords.ts","webpack://Typesense/./src/Typesense/Synonym.ts","webpack://Typesense/./src/Typesense/Synonyms.ts","webpack://Typesense/./src/Typesense/Utils.ts","webpack://Typesense/./node_modules/loglevel/lib/loglevel.js","webpack://Typesense/ignored|/Users/jason/Programming/jprojs/typesense/typesense-js/src/Typesense|crypto","webpack://Typesense/ignored|/Users/jason/Programming/jprojs/typesense/typesense-js/src/Typesense|http","webpack://Typesense/ignored|/Users/jason/Programming/jprojs/typesense/typesense-js/src/Typesense|https","webpack://Typesense/./node_modules/@babel/runtime/helpers/regeneratorRuntime.js","webpack://Typesense/./node_modules/@babel/runtime/helpers/typeof.js","webpack://Typesense/./node_modules/@babel/runtime/regenerator/index.js","webpack://Typesense/./node_modules/@babel/runtime/helpers/esm/arrayLikeToArray.js","webpack://Typesense/./node_modules/@babel/runtime/helpers/esm/arrayWithHoles.js","webpack://Typesense/./node_modules/@babel/runtime/helpers/esm/arrayWithoutHoles.js","webpack://Typesense/./node_modules/@babel/runtime/helpers/esm/assertThisInitialized.js","webpack://Typesense/./node_modules/@babel/runtime/helpers/esm/asyncToGenerator.js","webpack://Typesense/./node_modules/@babel/runtime/helpers/esm/classCallCheck.js","webpack://Typesense/./node_modules/@babel/runtime/helpers/esm/construct.js","webpack://Typesense/./node_modules/@babel/runtime/helpers/esm/createClass.js","webpack://Typesense/./node_modules/@babel/runtime/helpers/esm/defineProperty.js","webpack://Typesense/./node_modules/@babel/runtime/helpers/esm/getPrototypeOf.js","webpack://Typesense/./node_modules/@babel/runtime/helpers/esm/inherits.js","webpack://Typesense/./node_modules/@babel/runtime/helpers/esm/isNativeFunction.js","webpack://Typesense/./node_modules/@babel/runtime/helpers/esm/isNativeReflectConstruct.js","webpack://Typesense/./node_modules/@babel/runtime/helpers/esm/iterableToArray.js","webpack://Typesense/./node_modules/@babel/runtime/helpers/esm/iterableToArrayLimit.js","webpack://Typesense/./node_modules/@babel/runtime/helpers/esm/nonIterableRest.js","webpack://Typesense/./node_modules/@babel/runtime/helpers/esm/nonIterableSpread.js","webpack://Typesense/./node_modules/@babel/runtime/helpers/esm/possibleConstructorReturn.js","webpack://Typesense/./node_modules/@babel/runtime/helpers/esm/setPrototypeOf.js","webpack://Typesense/./node_modules/@babel/runtime/helpers/esm/slicedToArray.js","webpack://Typesense/./node_modules/@babel/runtime/helpers/esm/toConsumableArray.js","webpack://Typesense/./node_modules/@babel/runtime/helpers/esm/toPrimitive.js","webpack://Typesense/./node_modules/@babel/runtime/helpers/esm/toPropertyKey.js","webpack://Typesense/./node_modules/@babel/runtime/helpers/esm/typeof.js","webpack://Typesense/./node_modules/@babel/runtime/helpers/esm/unsupportedIterableToArray.js","webpack://Typesense/./node_modules/@babel/runtime/helpers/esm/wrapNativeSuper.js","webpack://Typesense/./node_modules/axios/lib/adapters/adapters.js","webpack://Typesense/./node_modules/axios/lib/adapters/fetch.js","webpack://Typesense/./node_modules/axios/lib/adapters/xhr.js","webpack://Typesense/./node_modules/axios/lib/axios.js","webpack://Typesense/./node_modules/axios/lib/cancel/CancelToken.js","webpack://Typesense/./node_modules/axios/lib/cancel/CanceledError.js","webpack://Typesense/./node_modules/axios/lib/cancel/isCancel.js","webpack://Typesense/./node_modules/axios/lib/core/Axios.js","webpack://Typesense/./node_modules/axios/lib/core/AxiosError.js","webpack://Typesense/./node_modules/axios/lib/core/AxiosHeaders.js","webpack://Typesense/./node_modules/axios/lib/core/InterceptorManager.js","webpack://Typesense/./node_modules/axios/lib/core/buildFullPath.js","webpack://Typesense/./node_modules/axios/lib/core/dispatchRequest.js","webpack://Typesense/./node_modules/axios/lib/core/mergeConfig.js","webpack://Typesense/./node_modules/axios/lib/core/settle.js","webpack://Typesense/./node_modules/axios/lib/core/transformData.js","webpack://Typesense/./node_modules/axios/lib/defaults/index.js","webpack://Typesense/./node_modules/axios/lib/defaults/transitional.js","webpack://Typesense/./node_modules/axios/lib/env/data.js","webpack://Typesense/./node_modules/axios/lib/helpers/AxiosURLSearchParams.js","webpack://Typesense/./node_modules/axios/lib/helpers/HttpStatusCode.js","webpack://Typesense/./node_modules/axios/lib/helpers/bind.js","webpack://Typesense/./node_modules/axios/lib/helpers/buildURL.js","webpack://Typesense/./node_modules/axios/lib/helpers/combineURLs.js","webpack://Typesense/./node_modules/axios/lib/helpers/composeSignals.js","webpack://Typesense/./node_modules/axios/lib/helpers/cookies.js","webpack://Typesense/./node_modules/axios/lib/helpers/formDataToJSON.js","webpack://Typesense/./node_modules/axios/lib/helpers/isAbsoluteURL.js","webpack://Typesense/./node_modules/axios/lib/helpers/isAxiosError.js","webpack://Typesense/./node_modules/axios/lib/helpers/isURLSameOrigin.js","webpack://Typesense/./node_modules/axios/lib/helpers/null.js","webpack://Typesense/./node_modules/axios/lib/helpers/parseHeaders.js","webpack://Typesense/./node_modules/axios/lib/helpers/parseProtocol.js","webpack://Typesense/./node_modules/axios/lib/helpers/progressEventReducer.js","webpack://Typesense/./node_modules/axios/lib/helpers/resolveConfig.js","webpack://Typesense/./node_modules/axios/lib/helpers/speedometer.js","webpack://Typesense/./node_modules/axios/lib/helpers/spread.js","webpack://Typesense/./node_modules/axios/lib/helpers/throttle.js","webpack://Typesense/./node_modules/axios/lib/helpers/toFormData.js","webpack://Typesense/./node_modules/axios/lib/helpers/toURLEncodedForm.js","webpack://Typesense/./node_modules/axios/lib/helpers/trackStream.js","webpack://Typesense/./node_modules/axios/lib/helpers/validator.js","webpack://Typesense/./node_modules/axios/lib/platform/browser/classes/Blob.js","webpack://Typesense/./node_modules/axios/lib/platform/browser/classes/FormData.js","webpack://Typesense/./node_modules/axios/lib/platform/browser/classes/URLSearchParams.js","webpack://Typesense/./node_modules/axios/lib/platform/browser/index.js","webpack://Typesense/./node_modules/axios/lib/platform/common/utils.js","webpack://Typesense/./node_modules/axios/lib/platform/index.js","webpack://Typesense/./node_modules/axios/lib/utils.js","webpack://Typesense/webpack/bootstrap","webpack://Typesense/webpack/runtime/compat get default export","webpack://Typesense/webpack/runtime/define property getters","webpack://Typesense/webpack/runtime/hasOwnProperty shorthand","webpack://Typesense/webpack/runtime/make namespace object","webpack://Typesense/./src/Typesense.ts"],"sourcesContent":["import Aliases, { CollectionAliasSchema } from \"./Aliases\";\nimport ApiCall from \"./ApiCall\";\n\nexport default class Alias {\n constructor(private name: string, private apiCall: ApiCall) {}\n\n async retrieve(): Promise {\n return this.apiCall.get(this.endpointPath());\n }\n\n async delete(): Promise {\n return this.apiCall.delete(this.endpointPath());\n }\n\n private endpointPath(): string {\n return `${Aliases.RESOURCEPATH}/${encodeURIComponent(this.name)}`;\n }\n}\n","import ApiCall from \"./ApiCall\";\n\nconst RESOURCEPATH = \"/aliases\";\n\nexport interface CollectionAliasCreateSchema {\n collection_name: string;\n}\n\nexport interface CollectionAliasSchema extends CollectionAliasCreateSchema {\n name: string;\n}\n\nexport interface CollectionAliasesResponseSchema {\n aliases: CollectionAliasSchema[];\n}\n\nexport default class Aliases {\n constructor(private apiCall: ApiCall) {}\n\n async upsert(\n name: string,\n mapping: CollectionAliasCreateSchema\n ): Promise {\n return this.apiCall.put(\n this.endpointPath(name),\n mapping\n );\n }\n\n async retrieve(): Promise {\n return this.apiCall.get(RESOURCEPATH);\n }\n\n private endpointPath(aliasName): string {\n return `${Aliases.RESOURCEPATH}/${encodeURIComponent(aliasName)}`;\n }\n\n static get RESOURCEPATH(): string {\n return RESOURCEPATH;\n }\n}\n","import ApiCall from \"./ApiCall\";\nimport AnalyticsRules from \"./AnalyticsRules\";\nimport AnalyticsRule from \"./AnalyticsRule\";\nimport AnalyticsEvents from \"./AnalyticsEvents\";\n\nconst RESOURCEPATH = \"/analytics\";\n\nexport default class Analytics {\n private readonly _analyticsRules: AnalyticsRules;\n private readonly individualAnalyticsRules: Record = {};\n private readonly _analyticsEvents: AnalyticsEvents;\n\n constructor(private readonly apiCall: ApiCall) {\n this.apiCall = apiCall;\n this._analyticsRules = new AnalyticsRules(this.apiCall);\n this._analyticsEvents = new AnalyticsEvents(this.apiCall);\n }\n\n rules(): AnalyticsRules;\n rules(id: string): AnalyticsRule;\n rules(id?: string): AnalyticsRules | AnalyticsRule {\n if (id === undefined) {\n return this._analyticsRules;\n } else {\n if (this.individualAnalyticsRules[id] === undefined) {\n this.individualAnalyticsRules[id] = new AnalyticsRule(id, this.apiCall);\n }\n return this.individualAnalyticsRules[id];\n }\n }\n\n events(): AnalyticsEvents {\n return this._analyticsEvents;\n }\n\n static get RESOURCEPATH() {\n return RESOURCEPATH;\n }\n}\n","import ApiCall from \"./ApiCall\";\nimport { AnalyticsEventCreateSchema } from \"./AnalyticsEvent\";\n\nconst RESOURCEPATH = \"/analytics/events\";\n\nexport default class AnalyticsEvents {\n constructor(private readonly apiCall: ApiCall) {\n this.apiCall = apiCall;\n }\n\n async create(\n params: AnalyticsEventCreateSchema,\n ): Promise {\n return this.apiCall.post(\n this.endpointPath(),\n params,\n );\n }\n\n private endpointPath(operation?: string): string {\n return `${AnalyticsEvents.RESOURCEPATH}${\n operation === undefined ? \"\" : \"/\" + encodeURIComponent(operation)\n }`;\n }\n\n static get RESOURCEPATH() {\n return RESOURCEPATH;\n }\n}\n","import ApiCall from \"./ApiCall\";\nimport AnalyticsRules from \"./AnalyticsRules\";\n\nexport interface AnalyticsRuleCreateSchema {\n type: \"popular_queries\" | \"nohits_queries\" | \"counter\";\n params: {\n enable_auto_aggregation?: boolean;\n source: {\n collections: string[];\n events?: Array<{\n type: string;\n weight: number;\n name: string;\n }>;\n };\n expand_query?: boolean;\n destination: {\n collection: string;\n counter_field?: string;\n };\n limit?: number;\n };\n}\n\nexport interface AnalyticsRuleDeleteSchema {\n name: string;\n}\n\nexport interface AnalyticsRuleSchema extends AnalyticsRuleCreateSchema {\n name: string;\n}\n\nexport default class AnalyticsRule {\n constructor(\n private name: string,\n private apiCall: ApiCall,\n ) {}\n\n async retrieve(): Promise {\n return this.apiCall.get(this.endpointPath());\n }\n\n async delete(): Promise {\n return this.apiCall.delete(this.endpointPath());\n }\n\n private endpointPath(): string {\n return `${AnalyticsRules.RESOURCEPATH}/${encodeURIComponent(this.name)}`;\n }\n}\n","import ApiCall from \"./ApiCall\";\nimport {\n AnalyticsRuleCreateSchema,\n AnalyticsRuleSchema,\n} from \"./AnalyticsRule\";\n\nexport interface AnalyticsRulesRetrieveSchema {\n rules: AnalyticsRuleSchema[];\n}\n\nconst RESOURCEPATH = \"/analytics/rules\";\n\nexport default class AnalyticsRules {\n constructor(private readonly apiCall: ApiCall) {\n this.apiCall = apiCall;\n }\n\n async upsert(\n name: string,\n params: AnalyticsRuleCreateSchema\n ): Promise {\n return this.apiCall.put(\n this.endpointPath(name),\n params\n );\n }\n\n async retrieve(): Promise {\n return this.apiCall.get(this.endpointPath());\n }\n\n private endpointPath(operation?: string): string {\n return `${AnalyticsRules.RESOURCEPATH}${\n operation === undefined ? \"\" : \"/\" + encodeURIComponent(operation)\n }`;\n }\n\n static get RESOURCEPATH() {\n return RESOURCEPATH;\n }\n}\n","import type {\n AxiosAdapter,\n AxiosRequestConfig,\n AxiosResponse,\n Method,\n} from \"axios\";\nimport axios from \"axios\";\nimport { Agent as HTTPAgent } from \"http\";\nimport { Agent as HTTPSAgent } from \"https\";\nimport { Logger } from \"loglevel\";\nimport Configuration, { NodeConfiguration } from \"./Configuration\";\nimport {\n HTTPError,\n ObjectAlreadyExists,\n ObjectNotFound,\n ObjectUnprocessable,\n RequestMalformed,\n RequestUnauthorized,\n ServerError,\n} from \"./Errors\";\nimport TypesenseError from \"./Errors/TypesenseError\";\n\nconst APIKEYHEADERNAME = \"X-TYPESENSE-API-KEY\";\nconst HEALTHY = true;\nconst UNHEALTHY = false;\n\ninterface Node extends NodeConfiguration {\n isHealthy: boolean;\n index: string | number;\n}\n\nconst isNodeJSEnvironment =\n typeof process !== \"undefined\" &&\n process.versions != null &&\n process.versions.node != null;\n\nexport default class ApiCall {\n private readonly apiKey: string;\n private readonly nodes: Node[];\n private readonly nearestNode: Node;\n private readonly connectionTimeoutSeconds: number;\n private readonly healthcheckIntervalSeconds: number;\n private readonly retryIntervalSeconds: number;\n private readonly sendApiKeyAsQueryParam?: boolean;\n private readonly numRetriesPerRequest: number;\n private readonly additionalUserHeaders?: Record;\n\n private readonly logger: Logger;\n private currentNodeIndex: number;\n\n constructor(private configuration: Configuration) {\n this.apiKey = this.configuration.apiKey;\n this.nodes =\n this.configuration.nodes == null\n ? this.configuration.nodes\n : JSON.parse(JSON.stringify(this.configuration.nodes)); // Make a copy, since we'll be adding additional metadata to the nodes\n this.nearestNode =\n this.configuration.nearestNode == null\n ? this.configuration.nearestNode\n : JSON.parse(JSON.stringify(this.configuration.nearestNode));\n this.connectionTimeoutSeconds = this.configuration.connectionTimeoutSeconds;\n this.healthcheckIntervalSeconds =\n this.configuration.healthcheckIntervalSeconds;\n this.numRetriesPerRequest = this.configuration.numRetries;\n this.retryIntervalSeconds = this.configuration.retryIntervalSeconds;\n this.sendApiKeyAsQueryParam = this.configuration.sendApiKeyAsQueryParam;\n this.additionalUserHeaders = this.configuration.additionalHeaders;\n\n this.logger = this.configuration.logger;\n\n this.initializeMetadataForNodes();\n this.currentNodeIndex = -1;\n }\n\n async get(\n endpoint: string,\n queryParameters: any = {},\n {\n abortSignal = null,\n responseType = undefined,\n }: {\n abortSignal?: any;\n responseType?: AxiosRequestConfig[\"responseType\"] | undefined;\n } = {},\n ): Promise {\n return this.performRequest(\"get\", endpoint, {\n queryParameters,\n abortSignal,\n responseType,\n });\n }\n\n async delete(endpoint: string, queryParameters: any = {}): Promise {\n return this.performRequest(\"delete\", endpoint, { queryParameters });\n }\n\n async post(\n endpoint: string,\n bodyParameters: any = {},\n queryParameters: any = {},\n additionalHeaders: any = {},\n ): Promise {\n return this.performRequest(\"post\", endpoint, {\n queryParameters,\n bodyParameters,\n additionalHeaders,\n });\n }\n\n async put(\n endpoint: string,\n bodyParameters: any = {},\n queryParameters: any = {},\n ): Promise {\n return this.performRequest(\"put\", endpoint, {\n queryParameters,\n bodyParameters,\n });\n }\n\n async patch(\n endpoint: string,\n bodyParameters: any = {},\n queryParameters: any = {},\n ): Promise {\n return this.performRequest(\"patch\", endpoint, {\n queryParameters,\n bodyParameters,\n });\n }\n\n private getAdapter(): AxiosAdapter | undefined {\n if (!this.configuration.axiosAdapter) return undefined;\n\n if (typeof this.configuration.axiosAdapter === \"function\")\n return this.configuration.axiosAdapter;\n\n const isCloudflareWorkers =\n typeof navigator !== \"undefined\" &&\n navigator.userAgent === \"Cloudflare-Workers\";\n\n return isCloudflareWorkers\n ? axios.getAdapter(this.configuration.axiosAdapter).bind(globalThis)\n : axios.getAdapter(this.configuration.axiosAdapter);\n }\n\n async performRequest(\n requestType: Method,\n endpoint: string,\n {\n queryParameters = null,\n bodyParameters = null,\n additionalHeaders = {},\n abortSignal = null,\n responseType = undefined,\n skipConnectionTimeout = false,\n enableKeepAlive = undefined,\n }: {\n queryParameters?: any;\n bodyParameters?: any;\n additionalHeaders?: any;\n abortSignal?: any;\n responseType?: AxiosRequestConfig[\"responseType\"] | undefined;\n skipConnectionTimeout?: boolean;\n enableKeepAlive?: boolean | undefined;\n },\n ): Promise {\n this.configuration.validate();\n\n const requestNumber = Date.now();\n let lastException;\n let wasAborted = false;\n this.logger.debug(\n `Request #${requestNumber}: Performing ${requestType.toUpperCase()} request: ${endpoint}`,\n );\n for (\n let numTries = 1;\n numTries <= this.numRetriesPerRequest + 1;\n numTries++\n ) {\n const node = this.getNextNode(requestNumber);\n this.logger.debug(\n `Request #${requestNumber}: Attempting ${requestType.toUpperCase()} request Try #${numTries} to Node ${\n node.index\n }`,\n );\n\n if (abortSignal && abortSignal.aborted) {\n return Promise.reject(new Error(\"Request aborted by caller.\"));\n }\n\n let abortListener: ((event: Event) => void) | undefined;\n\n try {\n const requestOptions: AxiosRequestConfig = {\n adapter: this.getAdapter(),\n method: requestType,\n url: this.uriFor(endpoint, node),\n headers: Object.assign(\n {},\n this.defaultHeaders(),\n additionalHeaders,\n this.additionalUserHeaders,\n ),\n maxContentLength: Infinity,\n maxBodyLength: Infinity,\n responseType,\n validateStatus: (status) => {\n /* Override default validateStatus, which only considers 2xx a success.\n In our case, if the server returns any HTTP code, we will handle it below.\n We do this to be able to raise custom errors based on response code.\n */\n return status > 0;\n },\n transformResponse: [\n (data, headers) => {\n let transformedData = data;\n if (\n headers !== undefined &&\n typeof data === \"string\" &&\n headers[\"content-type\"] &&\n headers[\"content-type\"].startsWith(\"application/json\")\n ) {\n transformedData = JSON.parse(data);\n }\n return transformedData;\n },\n ],\n };\n\n if (skipConnectionTimeout !== true) {\n requestOptions.timeout = this.connectionTimeoutSeconds * 1000;\n }\n\n if (queryParameters && Object.keys(queryParameters).length !== 0) {\n requestOptions.params = queryParameters;\n }\n\n if (this.sendApiKeyAsQueryParam) {\n requestOptions.params = requestOptions.params || {};\n requestOptions.params[\"x-typesense-api-key\"] = this.apiKey;\n }\n\n if (this.configuration.httpAgent) {\n this.logger.debug(\n `Request #${requestNumber}: Using custom httpAgent`,\n );\n requestOptions.httpAgent = this.configuration.httpAgent;\n } else if (enableKeepAlive === true) {\n if (!isNodeJSEnvironment) {\n this.logger.warn(\n `Request #${requestNumber}: Cannot use custom httpAgent in a browser environment to enable keepAlive`,\n );\n } else {\n this.logger.debug(`Request #${requestNumber}: Enabling KeepAlive`);\n requestOptions.httpAgent = new HTTPAgent({ keepAlive: true });\n }\n }\n\n if (this.configuration.httpsAgent) {\n this.logger.debug(\n `Request #${requestNumber}: Using custom httpsAgent`,\n );\n requestOptions.httpsAgent = this.configuration.httpsAgent;\n } else if (enableKeepAlive === true) {\n if (!isNodeJSEnvironment) {\n this.logger.warn(\n `Request #${requestNumber}: Cannot use custom httpAgent in a browser environment to enable keepAlive`,\n );\n } else {\n this.logger.debug(`Request #${requestNumber}: Enabling keepAlive`);\n requestOptions.httpsAgent = new HTTPSAgent({ keepAlive: true });\n }\n }\n\n if (this.configuration.paramsSerializer) {\n this.logger.debug(\n `Request #${requestNumber}: Using custom paramsSerializer`,\n );\n requestOptions.paramsSerializer = this.configuration.paramsSerializer;\n }\n\n if (\n bodyParameters &&\n ((typeof bodyParameters === \"string\" &&\n bodyParameters.length !== 0) ||\n (typeof bodyParameters === \"object\" &&\n Object.keys(bodyParameters).length !== 0))\n ) {\n requestOptions.data = bodyParameters;\n }\n\n // Translate from user-provided AbortController to the Axios request cancel mechanism.\n if (abortSignal) {\n const cancelToken = axios.CancelToken;\n const source = cancelToken.source();\n abortListener = () => {\n wasAborted = true;\n source.cancel();\n };\n abortSignal.addEventListener(\"abort\", abortListener);\n requestOptions.cancelToken = source.token;\n }\n\n const response = await axios(requestOptions);\n if (response.status >= 1 && response.status <= 499) {\n // Treat any status code > 0 and < 500 to be an indication that node is healthy\n // We exclude 0 since some clients return 0 when request fails\n this.setNodeHealthcheck(node, HEALTHY);\n }\n this.logger.debug(\n `Request #${requestNumber}: Request to Node ${node.index} was made. Response Code was ${response.status}.`,\n );\n\n if (response.status >= 200 && response.status < 300) {\n // If response is 2xx return a resolved promise\n return Promise.resolve(response.data);\n } else if (response.status < 500) {\n // Next, if response is anything but 5xx, don't retry, return a custom error\n return Promise.reject(\n this.customErrorForResponse(\n response,\n response.data?.message,\n requestOptions.data,\n ),\n );\n } else {\n // Retry all other HTTP errors (HTTPStatus > 500)\n // This will get caught by the catch block below\n throw this.customErrorForResponse(\n response,\n response.data?.message,\n requestOptions.data,\n );\n }\n } catch (error: any) {\n // This block handles retries for HTTPStatus > 500 and network layer issues like connection timeouts\n if (!wasAborted) {\n this.setNodeHealthcheck(node, UNHEALTHY);\n }\n lastException = error;\n this.logger.warn(\n `Request #${requestNumber}: Request to Node ${\n node.index\n } failed due to \"${error?.code ?? \"\"} ${error.message}${\n error.response == null\n ? \"\"\n : \" - \" + JSON.stringify(error.response?.data)\n }\"`,\n );\n // this.logger.debug(error.stack)\n if (wasAborted) {\n return Promise.reject(new Error(\"Request aborted by caller.\"));\n }\n if (numTries < this.numRetriesPerRequest + 1) {\n this.logger.warn(\n `Request #${requestNumber}: Sleeping for ${this.retryIntervalSeconds}s and then retrying request...`,\n );\n }\n await this.timer(this.retryIntervalSeconds);\n } finally {\n if (abortSignal && abortListener) {\n abortSignal.removeEventListener(\"abort\", abortListener);\n }\n }\n }\n this.logger.debug(\n `Request #${requestNumber}: No retries left. Raising last error`,\n );\n return Promise.reject(lastException);\n }\n\n // Attempts to find the next healthy node, looping through the list of nodes once.\n // But if no healthy nodes are found, it will just return the next node, even if it's unhealthy\n // so we can try the request for good measure, in case that node has become healthy since\n getNextNode(requestNumber = 0): Node {\n // Check if nearestNode is set and is healthy, if so return it\n if (this.nearestNode != null) {\n this.logger.debug(\n `Request #${requestNumber}: Nodes Health: Node ${\n this.nearestNode.index\n } is ${this.nearestNode.isHealthy === true ? \"Healthy\" : \"Unhealthy\"}`,\n );\n if (\n this.nearestNode.isHealthy === true ||\n this.nodeDueForHealthcheck(this.nearestNode, requestNumber)\n ) {\n this.logger.debug(\n `Request #${requestNumber}: Updated current node to Node ${this.nearestNode.index}`,\n );\n return this.nearestNode;\n }\n this.logger.debug(\n `Request #${requestNumber}: Falling back to individual nodes`,\n );\n }\n\n // Fallback to nodes as usual\n this.logger.debug(\n `Request #${requestNumber}: Nodes Health: ${this.nodes\n .map(\n (node) =>\n `Node ${node.index} is ${\n node.isHealthy === true ? \"Healthy\" : \"Unhealthy\"\n }`,\n )\n .join(\" || \")}`,\n );\n let candidateNode: Node = this.nodes[0];\n for (let i = 0; i <= this.nodes.length; i++) {\n this.currentNodeIndex = (this.currentNodeIndex + 1) % this.nodes.length;\n candidateNode = this.nodes[this.currentNodeIndex];\n if (\n candidateNode.isHealthy === true ||\n this.nodeDueForHealthcheck(candidateNode, requestNumber)\n ) {\n this.logger.debug(\n `Request #${requestNumber}: Updated current node to Node ${candidateNode.index}`,\n );\n return candidateNode;\n }\n }\n\n // None of the nodes are marked healthy, but some of them could have become healthy since last health check.\n // So we will just return the next node.\n this.logger.debug(\n `Request #${requestNumber}: No healthy nodes were found. Returning the next node, Node ${candidateNode.index}`,\n );\n return candidateNode;\n }\n\n nodeDueForHealthcheck(node, requestNumber = 0): boolean {\n const isDueForHealthcheck =\n Date.now() - node.lastAccessTimestamp >\n this.healthcheckIntervalSeconds * 1000;\n if (isDueForHealthcheck) {\n this.logger.debug(\n `Request #${requestNumber}: Node ${node.index} has exceeded healtcheckIntervalSeconds of ${this.healthcheckIntervalSeconds}. Adding it back into rotation.`,\n );\n }\n return isDueForHealthcheck;\n }\n\n initializeMetadataForNodes(): void {\n if (this.nearestNode != null) {\n this.nearestNode.index = \"nearestNode\";\n this.setNodeHealthcheck(this.nearestNode, HEALTHY);\n }\n\n this.nodes.forEach((node, i) => {\n node.index = i;\n this.setNodeHealthcheck(node, HEALTHY);\n });\n }\n\n setNodeHealthcheck(node, isHealthy): void {\n node.isHealthy = isHealthy;\n node.lastAccessTimestamp = Date.now();\n }\n\n uriFor(endpoint: string, node): string {\n if (node.url != null) {\n return `${node.url}${endpoint}`;\n }\n return `${node.protocol}://${node.host}:${node.port}${node.path}${endpoint}`;\n }\n\n defaultHeaders(): any {\n const defaultHeaders = {};\n if (!this.sendApiKeyAsQueryParam) {\n defaultHeaders[APIKEYHEADERNAME] = this.apiKey;\n }\n defaultHeaders[\"Content-Type\"] = \"application/json\";\n return defaultHeaders;\n }\n\n async timer(seconds): Promise {\n return new Promise((resolve) => setTimeout(resolve, seconds * 1000));\n }\n\n customErrorForResponse(\n response: AxiosResponse,\n messageFromServer: string,\n httpBody?: string,\n ): TypesenseError {\n let errorMessage = `Request failed with HTTP code ${response.status}`;\n if (\n typeof messageFromServer === \"string\" &&\n messageFromServer.trim() !== \"\"\n ) {\n errorMessage += ` | Server said: ${messageFromServer}`;\n }\n\n let error = new TypesenseError(errorMessage, httpBody, response.status);\n\n if (response.status === 400) {\n error = new RequestMalformed(errorMessage);\n } else if (response.status === 401) {\n error = new RequestUnauthorized(errorMessage);\n } else if (response.status === 404) {\n error = new ObjectNotFound(errorMessage);\n } else if (response.status === 409) {\n error = new ObjectAlreadyExists(errorMessage);\n } else if (response.status === 422) {\n error = new ObjectUnprocessable(errorMessage);\n } else if (response.status >= 500 && response.status <= 599) {\n error = new ServerError(errorMessage);\n } else {\n error = new HTTPError(errorMessage);\n }\n\n return error;\n }\n}\n","/* eslint-disable no-dupe-class-members */\n\nimport Configuration, { ConfigurationOptions } from \"./Configuration\";\nimport ApiCall from \"./ApiCall\";\nimport Collections from \"./Collections\";\nimport Collection from \"./Collection\";\nimport Aliases from \"./Aliases\";\nimport Alias from \"./Alias\";\nimport Keys from \"./Keys\";\nimport Key from \"./Key\";\nimport Debug from \"./Debug\";\nimport Metrics from \"./Metrics\";\nimport Stats from \"./Stats\";\nimport Health from \"./Health\";\nimport Operations from \"./Operations\";\nimport MultiSearch from \"./MultiSearch\";\nimport Presets from \"./Presets\";\nimport Preset from \"./Preset\";\nimport Analytics from \"./Analytics\";\nimport Stopwords from \"./Stopwords\";\nimport Stopword from \"./Stopword\";\nimport Conversations from \"./Conversations\";\nimport Conversation from \"./Conversation\";\nimport Stemming from \"./Stemming\";\n\nexport default class Client {\n configuration: Configuration;\n apiCall: ApiCall;\n debug: Debug;\n metrics: Metrics;\n stats: Stats;\n health: Health;\n operations: Operations;\n multiSearch: MultiSearch;\n analytics: Analytics;\n stemming: Stemming;\n private readonly _collections: Collections;\n private readonly individualCollections: Record;\n private readonly _aliases: Aliases;\n private readonly individualAliases: Record;\n private readonly _keys: Keys;\n private readonly individualKeys: Record;\n private readonly _presets: Presets;\n private readonly individualPresets: Record;\n private readonly _stopwords: Stopwords;\n private readonly individualStopwords: Record;\n private readonly _conversations: Conversations;\n private readonly individualConversations: Record;\n\n constructor(options: ConfigurationOptions) {\n options.sendApiKeyAsQueryParam = options.sendApiKeyAsQueryParam ?? false;\n\n this.configuration = new Configuration(options);\n this.apiCall = new ApiCall(this.configuration);\n this.debug = new Debug(this.apiCall);\n this.metrics = new Metrics(this.apiCall);\n this.stats = new Stats(this.apiCall);\n this.health = new Health(this.apiCall);\n this.operations = new Operations(this.apiCall);\n this.multiSearch = new MultiSearch(this.apiCall, this.configuration);\n this._collections = new Collections(this.apiCall);\n this.individualCollections = {};\n this._aliases = new Aliases(this.apiCall);\n this.individualAliases = {};\n this._keys = new Keys(this.apiCall);\n this.individualKeys = {};\n this._presets = new Presets(this.apiCall);\n this.individualPresets = {};\n this._stopwords = new Stopwords(this.apiCall);\n this.individualStopwords = {};\n this.analytics = new Analytics(this.apiCall);\n this.stemming = new Stemming(this.apiCall);\n this._conversations = new Conversations(this.apiCall);\n this.individualConversations = {};\n }\n\n collections(): Collections;\n collections = object>(\n collectionName: string,\n ): Collection;\n collections(collectionName?: string): Collections | Collection {\n if (collectionName === undefined) {\n return this._collections;\n } else {\n if (this.individualCollections[collectionName] === undefined) {\n this.individualCollections[collectionName] = new Collection(\n collectionName,\n this.apiCall,\n this.configuration,\n );\n }\n return this.individualCollections[collectionName];\n }\n }\n\n aliases(): Aliases;\n aliases(aliasName: string): Alias;\n aliases(aliasName?: string): Aliases | Alias {\n if (aliasName === undefined) {\n return this._aliases;\n } else {\n if (this.individualAliases[aliasName] === undefined) {\n this.individualAliases[aliasName] = new Alias(aliasName, this.apiCall);\n }\n return this.individualAliases[aliasName];\n }\n }\n\n keys(): Keys;\n keys(id: number): Key;\n keys(id?: number): Keys | Key {\n if (id === undefined) {\n return this._keys;\n } else {\n if (this.individualKeys[id] === undefined) {\n this.individualKeys[id] = new Key(id, this.apiCall);\n }\n return this.individualKeys[id];\n }\n }\n\n presets(): Presets;\n presets(id: string): Preset;\n presets(id?: string): Presets | Preset {\n if (id === undefined) {\n return this._presets;\n } else {\n if (this.individualPresets[id] === undefined) {\n this.individualPresets[id] = new Preset(id, this.apiCall);\n }\n return this.individualPresets[id];\n }\n }\n\n stopwords(): Stopwords;\n stopwords(id: string): Stopword;\n stopwords(id?: string): Stopwords | Stopword {\n if (id === undefined) {\n return this._stopwords;\n } else {\n if (this.individualStopwords[id] === undefined) {\n this.individualStopwords[id] = new Stopword(id, this.apiCall);\n }\n return this.individualStopwords[id];\n }\n }\n\n conversations(): Conversations;\n conversations(id: string): Conversation;\n conversations(id?: string): Conversations | Conversation {\n if (id === undefined) {\n return this._conversations;\n } else {\n if (this.individualConversations[id] === undefined) {\n this.individualConversations[id] = new Conversation(id, this.apiCall);\n }\n return this.individualConversations[id];\n }\n }\n}\n","import ApiCall from \"./ApiCall\";\nimport Collections from \"./Collections\";\nimport type {\n BaseCollectionCreateSchema,\n CollectionCreateSchema,\n} from \"./Collections\";\nimport Documents, { DocumentSchema } from \"./Documents\";\nimport { ObjectNotFound } from \"./Errors\";\nimport Overrides from \"./Overrides\";\nimport Override from \"./Override\";\nimport Synonyms from \"./Synonyms\";\nimport Synonym from \"./Synonym\";\nimport { Document } from \"./Document\";\n\nexport type FieldType =\n | \"string\"\n | \"int32\"\n | \"int64\"\n | \"float\"\n | \"bool\"\n | \"geopoint\"\n | \"geopolygon\"\n | \"geopoint[]\"\n | \"string[]\"\n | \"int32[]\"\n | \"int64[]\"\n | \"float[]\"\n | \"bool[]\"\n | \"object\"\n | \"object[]\"\n | \"auto\"\n | \"string*\"\n | \"image\";\n\nexport interface CollectionFieldSchema\n extends Partial<\n Pick\n > {\n name: string;\n type: FieldType;\n optional?: boolean;\n facet?: boolean;\n index?: boolean;\n sort?: boolean;\n locale?: string;\n infix?: boolean;\n stem?: boolean;\n num_dim?: number;\n store?: boolean;\n range_index?: boolean;\n [t: string]: unknown;\n}\n\nexport interface CollectionSchema extends CollectionCreateSchema {\n created_at: number;\n num_documents: number;\n num_memory_shards: number;\n}\n\nexport interface CollectionDropFieldSchema {\n name: string;\n drop: true;\n}\n\nexport interface CollectionUpdateSchema\n extends Partial> {\n fields?: (CollectionFieldSchema | CollectionDropFieldSchema)[];\n}\n\nexport interface CollectionDeleteOptions {\n compact_store?: boolean;\n}\n\nexport default class Collection {\n private readonly _documents: Documents;\n private individualDocuments: Record> = {};\n private readonly _overrides: Overrides;\n private individualOverrides: Record = {};\n private readonly _synonyms: Synonyms;\n private individualSynonyms: Record = {};\n\n constructor(\n private readonly name: string,\n private readonly apiCall: ApiCall,\n private readonly configuration: any,\n ) {\n this.name = name;\n this.apiCall = apiCall;\n this.configuration = configuration;\n\n this._documents = new Documents(\n this.name,\n this.apiCall,\n this.configuration,\n );\n this._overrides = new Overrides(this.name, this.apiCall);\n this._synonyms = new Synonyms(this.name, this.apiCall);\n }\n\n async retrieve(): Promise {\n return this.apiCall.get(this.endpointPath());\n }\n\n async update(schema: CollectionUpdateSchema): Promise {\n return this.apiCall.patch(this.endpointPath(), schema);\n }\n\n async delete(\n options: CollectionDeleteOptions = {},\n ): Promise {\n return this.apiCall.delete(this.endpointPath(), options);\n }\n\n async exists(): Promise {\n try {\n await this.retrieve();\n return true;\n } catch (e) {\n if (e instanceof ObjectNotFound) return false;\n throw e;\n }\n }\n\n documents(): Documents;\n documents(documentId: string): Document;\n documents(documentId?: string): Document | Documents {\n if (!documentId) {\n return this._documents;\n } else {\n if (this.individualDocuments[documentId] === undefined) {\n this.individualDocuments[documentId] = new Document(\n this.name,\n documentId,\n this.apiCall,\n );\n }\n return this.individualDocuments[documentId];\n }\n }\n\n overrides(): Overrides;\n overrides(overrideId: string): Override;\n overrides(overrideId?: string): Overrides | Override {\n if (overrideId === undefined) {\n return this._overrides;\n } else {\n if (this.individualOverrides[overrideId] === undefined) {\n this.individualOverrides[overrideId] = new Override(\n this.name,\n overrideId,\n this.apiCall,\n );\n }\n return this.individualOverrides[overrideId];\n }\n }\n\n synonyms(): Synonyms;\n synonyms(synonymId: string): Synonym;\n synonyms(synonymId?: string): Synonyms | Synonym {\n if (synonymId === undefined) {\n return this._synonyms;\n } else {\n if (this.individualSynonyms[synonymId] === undefined) {\n this.individualSynonyms[synonymId] = new Synonym(\n this.name,\n synonymId,\n this.apiCall,\n );\n }\n return this.individualSynonyms[synonymId];\n }\n }\n\n private endpointPath(): string {\n return `${Collections.RESOURCEPATH}/${encodeURIComponent(this.name)}`;\n }\n}\n","import ApiCall from \"./ApiCall\";\nimport type { CollectionFieldSchema, CollectionSchema } from \"./Collection\";\n\nexport interface BaseCollectionCreateSchema {\n name: string;\n default_sorting_field?: string;\n symbols_to_index?: string[];\n token_separators?: string[];\n enable_nested_fields?: boolean;\n metadata?: object;\n voice_query_model?: {\n model_name?: string;\n };\n}\n\ninterface CollectionCreateSchemaWithSrc\n extends Pick {\n fields?: CollectionFieldSchema[];\n}\n\ninterface CollectionCreateSchemaWithoutSrc extends BaseCollectionCreateSchema {\n fields: CollectionFieldSchema[];\n}\n\n/**\n * Defines the schema for creating a collection in Typesense.\n *\n * If the `src_name` property in `Options` is a string, the `fields` prop is optional, and only used for embedding fields.\n * Otherwise, `fields` will be required.\n */\nexport type CollectionCreateSchema<\n Options extends CollectionCreateOptions = CollectionCreateOptions,\n> = Options[\"src_name\"] extends string\n ? CollectionCreateSchemaWithSrc\n : CollectionCreateSchemaWithoutSrc;\n\nexport interface CollectionCreateOptions {\n src_name?: string;\n}\n\nexport interface CollectionsRetrieveOptions {\n exclude_fields?: string;\n}\n\nconst RESOURCEPATH = \"/collections\";\n\nexport default class Collections {\n constructor(private apiCall: ApiCall) {}\n\n async create(\n schema: CollectionCreateSchema,\n options?: Options,\n ): Promise {\n return this.apiCall.post(RESOURCEPATH, schema, options);\n }\n\n async retrieve(\n options: CollectionsRetrieveOptions = {},\n ): Promise {\n return this.apiCall.get(RESOURCEPATH, options);\n }\n\n static get RESOURCEPATH() {\n return RESOURCEPATH;\n }\n}\n","import * as logger from \"loglevel\";\nimport { Logger, LogLevelDesc } from \"loglevel\";\nimport { MissingConfigurationError } from \"./Errors\";\nimport type { Agent as HTTPAgent } from \"http\";\nimport type { Agent as HTTPSAgent } from \"https\";\nimport type { AxiosRequestConfig } from \"axios\";\n\nexport interface NodeConfiguration {\n host: string;\n port: number;\n protocol: string;\n path?: string;\n url?: string;\n}\n\nexport interface NodeConfigurationWithHostname {\n host: string;\n port: number;\n protocol: string;\n path?: string;\n}\n\nexport interface NodeConfigurationWithUrl {\n url: string;\n}\n\nexport interface ConfigurationOptions {\n apiKey: string;\n nodes:\n | NodeConfiguration[]\n | NodeConfigurationWithHostname[]\n | NodeConfigurationWithUrl[];\n randomizeNodes?: boolean;\n /**\n * @deprecated\n * masterNode is now consolidated to nodes, starting with Typesense Server v0.12'\n */\n masterNode?:\n | NodeConfiguration\n | NodeConfigurationWithHostname\n | NodeConfigurationWithUrl;\n /**\n * @deprecated\n * readReplicaNodes is now consolidated to nodes, starting with Typesense Server v0.12'\n */\n readReplicaNodes?:\n | NodeConfiguration[]\n | NodeConfigurationWithHostname[]\n | NodeConfigurationWithUrl[];\n nearestNode?:\n | NodeConfiguration\n | NodeConfigurationWithHostname\n | NodeConfigurationWithUrl;\n connectionTimeoutSeconds?: number;\n timeoutSeconds?: number;\n healthcheckIntervalSeconds?: number;\n numRetries?: number;\n retryIntervalSeconds?: number;\n sendApiKeyAsQueryParam?: boolean | undefined;\n useServerSideSearchCache?: boolean;\n cacheSearchResultsForSeconds?: number;\n additionalHeaders?: Record;\n\n logLevel?: LogLevelDesc;\n logger?: Logger;\n\n /**\n * Set a custom HTTP Agent\n *\n * This is helpful for eg, to enable keepAlive which helps prevents ECONNRESET socket hang up errors\n * Usage:\n * const { Agent: HTTPAgent } = require(\"http\");\n * ...\n * httpAgent: new HTTPAgent({ keepAlive: true }),\n * @type {HTTPAgent}\n */\n httpAgent?: HTTPAgent;\n\n /**\n * Set a custom HTTPS Agent\n *\n * This is helpful for eg, to enable keepAlive which helps prevents ECONNRESET socket hang up errors\n * Usage:\n * const { Agent: HTTPSAgent } = require(\"https\");\n * ...\n * httpsAgent: new HTTPSAgent({ keepAlive: true }),\n * @type {HTTPSAgent}\n */\n httpsAgent?: HTTPSAgent;\n\n /**\n * Set a custom paramsSerializer\n *\n * See axios documentation for more information on how to use this parameter: https://axios-http.com/docs/req_config\n * This is helpful for handling React Native issues like this: https://github.com/axios/axios/issues/6102#issuecomment-2085301397\n * @type {any}\n */\n paramsSerializer?: any;\n\n /**\n * Set a custom axios adapter\n *\n * Useful for customizing the underlying HTTP client library used by Typesense.\n *\n * For example, you can use this to use a custom HTTP client library like `fetch`, in order for the library to work on the edge.\n * Related GiHub issue: https://github.com/typesense/typesense-js/issues/161\n *\n * See axios documentation for more information on how to use this parameter: https://axios-http.com/docs/req_config\n */\n axiosAdapter?: AxiosRequestConfig[\"adapter\"];\n}\n\nexport default class Configuration {\n readonly nodes:\n | NodeConfiguration[]\n | NodeConfigurationWithHostname[]\n | NodeConfigurationWithUrl[];\n readonly nearestNode?:\n | NodeConfiguration\n | NodeConfigurationWithHostname\n | NodeConfigurationWithUrl;\n readonly connectionTimeoutSeconds: number;\n readonly healthcheckIntervalSeconds: number;\n readonly numRetries: number;\n readonly retryIntervalSeconds: number;\n readonly apiKey: string;\n readonly sendApiKeyAsQueryParam?: boolean;\n readonly cacheSearchResultsForSeconds: number;\n readonly useServerSideSearchCache: boolean;\n readonly logger: Logger;\n readonly logLevel: LogLevelDesc;\n readonly additionalHeaders?: Record;\n readonly httpAgent?: HTTPAgent;\n readonly httpsAgent?: HTTPSAgent;\n readonly paramsSerializer?: any;\n readonly axiosAdapter?: AxiosRequestConfig[\"adapter\"];\n\n constructor(options: ConfigurationOptions) {\n this.nodes = options.nodes || [];\n this.nodes = this.nodes\n .map((node) => this.setDefaultPathInNode(node))\n .map((node) => this.setDefaultPortInNode(node))\n .map((node) => ({ ...node })) as NodeConfiguration[]; // Make a deep copy\n\n if (options.randomizeNodes == null) {\n options.randomizeNodes = true;\n }\n\n if (options.randomizeNodes === true) {\n this.shuffleArray(this.nodes);\n }\n\n this.nearestNode = options.nearestNode;\n this.nearestNode = this.setDefaultPathInNode(this.nearestNode);\n this.nearestNode = this.setDefaultPortInNode(this.nearestNode);\n\n this.connectionTimeoutSeconds =\n options.connectionTimeoutSeconds || options.timeoutSeconds || 5;\n this.healthcheckIntervalSeconds = options.healthcheckIntervalSeconds || 60;\n this.numRetries =\n (options.numRetries !== undefined && options.numRetries >= 0\n ? options.numRetries\n : this.nodes.length + (this.nearestNode == null ? 0 : 1)) || 3;\n this.retryIntervalSeconds = options.retryIntervalSeconds || 0.1;\n\n this.apiKey = options.apiKey;\n this.sendApiKeyAsQueryParam = options.sendApiKeyAsQueryParam; // We will set a default for this in Client and SearchClient\n\n this.cacheSearchResultsForSeconds =\n options.cacheSearchResultsForSeconds || 0; // Disable client-side cache by default\n this.useServerSideSearchCache = options.useServerSideSearchCache || false;\n\n this.axiosAdapter = options.axiosAdapter;\n this.logger = options.logger || logger;\n this.logLevel = options.logLevel || \"warn\";\n this.logger.setLevel(this.logLevel);\n\n this.additionalHeaders = options.additionalHeaders;\n\n this.httpAgent = options.httpAgent;\n this.httpsAgent = options.httpsAgent;\n\n this.paramsSerializer = options.paramsSerializer;\n\n this.showDeprecationWarnings(options);\n this.validate();\n }\n\n validate(): boolean {\n if (this.nodes == null || this.nodes.length === 0 || this.validateNodes()) {\n throw new MissingConfigurationError(\n \"Ensure that nodes[].protocol, nodes[].host and nodes[].port are set\",\n );\n }\n\n if (\n this.nearestNode != null &&\n this.isNodeMissingAnyParameters(this.nearestNode)\n ) {\n throw new MissingConfigurationError(\n \"Ensure that nearestNodes.protocol, nearestNodes.host and nearestNodes.port are set\",\n );\n }\n\n if (this.apiKey == null) {\n throw new MissingConfigurationError(\"Ensure that apiKey is set\");\n }\n\n return true;\n }\n\n private validateNodes(): boolean {\n return this.nodes.some((node) => {\n return this.isNodeMissingAnyParameters(node);\n });\n }\n\n private isNodeMissingAnyParameters(\n node:\n | NodeConfiguration\n | NodeConfigurationWithHostname\n | NodeConfigurationWithUrl,\n ): boolean {\n return (\n ![\"protocol\", \"host\", \"port\", \"path\"].every((key) => {\n return node.hasOwnProperty(key);\n }) && node[\"url\"] == null\n );\n }\n\n private setDefaultPathInNode(\n node:\n | NodeConfiguration\n | NodeConfigurationWithHostname\n | NodeConfigurationWithUrl\n | undefined,\n ):\n | NodeConfiguration\n | NodeConfigurationWithHostname\n | NodeConfigurationWithUrl\n | undefined {\n if (node != null && !node.hasOwnProperty(\"path\")) {\n node[\"path\"] = \"\";\n }\n return node;\n }\n\n private setDefaultPortInNode(\n node:\n | NodeConfiguration\n | NodeConfigurationWithHostname\n | NodeConfigurationWithUrl\n | undefined,\n ):\n | NodeConfiguration\n | NodeConfigurationWithHostname\n | NodeConfigurationWithUrl\n | undefined {\n if (\n node != null &&\n !node.hasOwnProperty(\"port\") &&\n node.hasOwnProperty(\"protocol\")\n ) {\n switch (node[\"protocol\"]) {\n case \"https\":\n node[\"port\"] = 443;\n break;\n case \"http\":\n node[\"port\"] = 80;\n break;\n }\n }\n return node;\n }\n\n private showDeprecationWarnings(options: ConfigurationOptions): void {\n if (options.timeoutSeconds) {\n this.logger.warn(\n \"Deprecation warning: timeoutSeconds is now renamed to connectionTimeoutSeconds\",\n );\n }\n if (options.masterNode) {\n this.logger.warn(\n \"Deprecation warning: masterNode is now consolidated to nodes, starting with Typesense Server v0.12\",\n );\n }\n if (options.readReplicaNodes) {\n this.logger.warn(\n \"Deprecation warning: readReplicaNodes is now consolidated to nodes, starting with Typesense Server v0.12\",\n );\n }\n }\n\n private shuffleArray(array) {\n for (let i = array.length - 1; i > 0; i--) {\n const j = Math.floor(Math.random() * (i + 1));\n [array[i], array[j]] = [array[j], array[i]];\n }\n }\n}\n","import ApiCall from \"./ApiCall\";\nimport Conversations from \"./Conversations\";\n\nexport interface ConversationDeleteSchema {\n id: number;\n}\n\nexport interface ConversationUpdateSchema {\n ttl: number;\n}\n\nexport interface ConversationSchema {\n id: number;\n conversation: object[];\n last_updated: number;\n ttl: number;\n}\n\nexport default class Conversation {\n constructor(\n private id: string,\n private apiCall: ApiCall,\n ) {}\n\n async retrieve(): Promise {\n return this.apiCall.get(this.endpointPath());\n }\n\n async update(\n params: ConversationUpdateSchema,\n ): Promise {\n return this.apiCall.put(\n this.endpointPath(),\n params,\n );\n }\n\n async delete(): Promise {\n return this.apiCall.delete(this.endpointPath());\n }\n\n private endpointPath(): string {\n return `${Conversations.RESOURCEPATH}/${encodeURIComponent(this.id)}`;\n }\n}\n","import ApiCall from \"./ApiCall\";\nimport ConversationModels from \"./ConversationModels\";\n\nexport interface ConversationModelCreateSchema {\n id?: string;\n model_name: string;\n api_key?: string;\n system_prompt?: string;\n max_bytes: number;\n history_collection?: string;\n}\n\nexport interface ConversationModelDeleteSchema {\n id: string;\n}\n\nexport interface ConversationModelSchema extends ConversationModelCreateSchema {\n id: string;\n}\n\nexport default class ConversationModel {\n constructor(\n private id: string,\n private apiCall: ApiCall,\n ) {}\n\n async update(\n params: ConversationModelCreateSchema,\n ): Promise {\n return this.apiCall.put(\n this.endpointPath(),\n params,\n );\n }\n\n async retrieve(): Promise {\n return this.apiCall.get(this.endpointPath());\n }\n\n async delete(): Promise {\n return this.apiCall.delete(\n this.endpointPath(),\n );\n }\n\n private endpointPath(): string {\n return `${ConversationModels.RESOURCEPATH}/${encodeURIComponent(this.id)}`;\n }\n}\n","import ApiCall from \"./ApiCall\";\nimport {\n ConversationModelCreateSchema,\n ConversationModelSchema,\n} from \"./ConversationModel\";\n\nconst RESOURCEPATH = \"/conversations/models\";\n\nexport default class ConversationModels {\n constructor(private readonly apiCall: ApiCall) {\n this.apiCall = apiCall;\n }\n\n async create(\n params: ConversationModelCreateSchema,\n ): Promise {\n return this.apiCall.post(\n this.endpointPath(),\n params,\n );\n }\n\n async retrieve(): Promise {\n return this.apiCall.get(\n this.endpointPath(),\n );\n }\n\n private endpointPath(operation?: string): string {\n return `${ConversationModels.RESOURCEPATH}${\n operation === undefined ? \"\" : \"/\" + encodeURIComponent(operation)\n }`;\n }\n\n static get RESOURCEPATH() {\n return RESOURCEPATH;\n }\n}\n","import ApiCall from \"./ApiCall\";\nimport ConversationModels from \"./ConversationModels\";\nimport ConversationModel from \"./ConversationModel\";\nimport { ConversationSchema } from \"./Conversation\";\n\nconst RESOURCEPATH = \"/conversations\";\n\nexport interface ConversationsRetrieveSchema {\n conversations: ConversationSchema[];\n}\n\nexport default class Conversations {\n private readonly _conversationsModels: ConversationModels;\n private readonly individualConversationModels: Record<\n string,\n ConversationModel\n > = {};\n\n constructor(private readonly apiCall: ApiCall) {\n this.apiCall = apiCall;\n this._conversationsModels = new ConversationModels(this.apiCall);\n }\n\n async retrieve(): Promise {\n return this.apiCall.get(RESOURCEPATH);\n }\n\n models(): ConversationModels;\n models(id: string): ConversationModel;\n models(id?: string): ConversationModels | ConversationModel {\n if (id === undefined) {\n return this._conversationsModels;\n } else {\n if (this.individualConversationModels[id] === undefined) {\n this.individualConversationModels[id] = new ConversationModel(\n id,\n this.apiCall,\n );\n }\n return this.individualConversationModels[id];\n }\n }\n\n static get RESOURCEPATH() {\n return RESOURCEPATH;\n }\n}\n","import ApiCall from \"./ApiCall\";\n\nconst RESOURCEPATH = \"/debug\";\n\nexport interface DebugResponseSchema {\n state: number;\n version: string;\n}\n\nexport default class Debug {\n constructor(private apiCall: ApiCall) {}\n\n async retrieve(): Promise {\n return this.apiCall.get(RESOURCEPATH);\n }\n}\n","import ApiCall from \"./ApiCall\";\nimport Collections from \"./Collections\";\nimport Documents, {\n DeleteQuery,\n DocumentSchema,\n DocumentWriteParameters,\n} from \"./Documents\";\n\nexport class Document {\n constructor(\n private collectionName: string,\n private documentId: string,\n private apiCall: ApiCall\n ) {}\n\n async retrieve(): Promise {\n return this.apiCall.get(this.endpointPath());\n }\n\n async delete(options?: DeleteQuery): Promise {\n return this.apiCall.delete(this.endpointPath(), options);\n }\n\n async update(\n partialDocument: Partial,\n options: DocumentWriteParameters = {}\n ): Promise {\n return this.apiCall.patch(this.endpointPath(), partialDocument, options);\n }\n\n private endpointPath(): string {\n return `${Collections.RESOURCEPATH}/${encodeURIComponent(this.collectionName)}${Documents.RESOURCEPATH}/${encodeURIComponent(this.documentId)}`;\n }\n}\n","import type { ReadStream } from \"fs\";\nimport ApiCall from \"./ApiCall\";\nimport Configuration from \"./Configuration\";\nimport { ImportError, RequestMalformed } from \"./Errors\";\nimport { SearchOnlyDocuments } from \"./SearchOnlyDocuments\";\n\n// Todo: use generic to extract filter_by values\nexport type DeleteQuery =\n | {\n truncate?: true;\n }\n | {\n truncate?: never;\n filter_by?: string;\n batch_size?: number;\n ignore_not_found?: boolean;\n };\n\nexport interface DeleteResponse {\n num_deleted: number;\n}\n\ninterface ImportResponseSuccess {\n success: true;\n}\n\nexport interface ImportResponseFail {\n success: false;\n error: string;\n document: DocumentSchema;\n code: number;\n}\n\nexport type ImportResponse = ImportResponseSuccess | ImportResponseFail;\n\nexport type DocumentSchema = Record;\n\nexport interface SearchParamsWithPreset extends Partial {\n preset: string;\n}\n\nexport type DropTokensMode = \"right_to_left\" | \"left_to_right\" | \"both_sides:3\";\n\nexport type OperationMode = \"off\" | \"always\" | \"fallback\";\n\nexport type UnionArrayKeys = {\n [K in keyof T]: T[K] extends undefined\n ? never\n : NonNullable extends infer R\n ? R extends R[]\n ? never\n : R extends (infer U)[] | infer U\n ? U[] extends R\n ? K\n : never\n : never\n : never;\n}[keyof T] &\n keyof T;\n\nexport type UnionArraySearchParams = UnionArrayKeys;\n\nexport type ArraybleParams = {\n readonly [K in UnionArraySearchParams]: string;\n};\n\nexport type ExtractBaseTypes = {\n [K in keyof T]: K extends UnionArrayKeys\n ? T[K] extends (infer U)[] | infer U\n ? U\n : T[K]\n : T[K];\n};\n\nexport const arrayableParams: ArraybleParams = {\n query_by: \"query_by\",\n query_by_weights: \"query_by_weights\",\n facet_by: \"facet_by\",\n group_by: \"group_by\",\n include_fields: \"include_fields\",\n exclude_fields: \"exclude_fields\",\n highlight_fields: \"highlight_fields\",\n highlight_full_fields: \"highlight_full_fields\",\n pinned_hits: \"pinned_hits\",\n hidden_hits: \"hidden_hits\",\n infix: \"infix\",\n override_tags: \"override_tags\",\n num_typos: \"num_typos\",\n prefix: \"prefix\",\n sort_by: \"sort_by\",\n};\n\nexport interface SearchParams {\n // From https://typesense.org/docs/latest/api/documents.html#arguments\n // eslint-disable-next-line @typescript-eslint/ban-types -- Can't use `object` here, it needs to intersect with `{}`\n q?: \"*\" | (string & {});\n query_by?: string | string[];\n query_by_weights?: string | number[];\n prefix?: string | boolean | boolean[]; // default: true\n filter_by?: string;\n max_filter_by_candidates?: number; // default: 4\n enable_synonyms?: boolean; // default: true\n enable_analytics?: boolean; // default: true\n filter_curated_hits?: boolean; // default: false\n enable_lazy_filter?: boolean; // default: false\n sort_by?: string | string[]; // default: text match desc\n facet_by?: string | string[];\n max_facet_values?: number;\n facet_sample_threshold?: number;\n facet_sample_percent?: number;\n facet_query?: string;\n facet_query_num_typos?: number;\n facet_return_parent?: string;\n facet_strategy?: \"exhaustive\" | \"top_values\" | \"automatic\";\n page?: number; // default: 1\n per_page?: number; // default: 10, max 250\n group_by?: string | string[];\n group_limit?: number; // default:\n group_missing_values?: boolean;\n include_fields?: string | string[];\n exclude_fields?: string | string[];\n highlight_fields?: string | string[]; // default: all queried fields\n highlight_full_fields?: string | string[]; // default: all fields\n highlight_affix_num_tokens?: number; // default: 4\n highlight_start_tag?: string; // default: \n highlight_end_tag?: string; // default: \n enable_highlight_v1?: boolean;\n snippet_threshold?: number; // default: 30\n num_typos?: string | number | number[]; // default: 2\n min_len_1typo?: number;\n min_len_2typo?: number;\n split_join_tokens?: OperationMode;\n exhaustive_search?: boolean;\n drop_tokens_threshold?: number; // default: 10\n drop_tokens_mode?: DropTokensMode;\n typo_tokens_threshold?: number; // default: 100\n pinned_hits?: string | string[];\n hidden_hits?: string | string[];\n limit_hits?: number; // default: no limit\n pre_segmented_query?: boolean;\n enable_overrides?: boolean;\n override_tags?: string | string[];\n prioritize_exact_match?: boolean; // default: true\n prioritize_token_position?: boolean;\n prioritize_num_matching_fields?: boolean;\n search_cutoff_ms?: number;\n use_cache?: boolean;\n max_candidates?: number;\n infix?: OperationMode | OperationMode[];\n preset?: string;\n text_match_type?: \"max_score\" | \"max_weight\";\n vector_query?: string;\n \"x-typesense-api-key\"?: string;\n \"x-typesense-user-id\"?: string;\n offset?: number;\n limit?: number;\n stopwords?: string;\n conversation?: boolean;\n conversation_model_id?: string;\n conversation_id?: string;\n voice_query?: string;\n}\n\ntype SearchResponseHighlightObject = {\n matched_tokens?: string[];\n snippet?: string;\n value?: string;\n};\n\nexport type SearchResponseHighlight = T extends string | number\n ? SearchResponseHighlightObject\n : {\n [TAttribute in keyof T]?: SearchResponseHighlight;\n };\n\nexport interface SearchResponseHit {\n curated?: true;\n highlights?: [\n {\n field: keyof T;\n snippet?: string;\n value?: string;\n snippets?: string[];\n indices?: number[];\n matched_tokens: string[][] | string[];\n },\n ];\n highlight: SearchResponseHighlight;\n document: T;\n text_match: number;\n text_match_info?: {\n best_field_score: `${number}`; // To prevent scores from being truncated by JSON spec\n best_field_weight: number;\n fields_matched: number;\n score: `${number}`; // To prevent scores from being truncated by JSON spec\n tokens_matched: number;\n };\n}\n\nexport interface SearchResponseFacetCountSchema {\n counts: {\n count: number;\n highlighted: string;\n value: string;\n }[];\n field_name: keyof T;\n stats: {\n avg?: number;\n max?: number;\n min?: number;\n sum?: number;\n };\n}\n\nexport interface SearchResponseRequestParams {\n collection_name?: string;\n q?: string;\n page?: number;\n per_page?: number;\n first_q?: string;\n voice_query?: {\n transcribed_query?: string;\n };\n}\n\n// Todo: we could infer whether this is a grouped response by adding the search params as a generic\nexport interface SearchResponse {\n facet_counts?: SearchResponseFacetCountSchema[];\n found: number;\n found_docs?: number;\n out_of: number;\n page: number;\n request_params: SearchResponseRequestParams;\n search_time_ms: number;\n search_cutoff?: boolean;\n hits?: SearchResponseHit[];\n grouped_hits?: {\n group_key: string[];\n hits: SearchResponseHit[];\n found?: number;\n }[];\n conversation?: {\n answer: string;\n conversation_history: {\n conversation: object[];\n id: string;\n last_updated: number;\n ttl: number;\n };\n conversation_id: string;\n query: string;\n };\n error?: string;\n code?: number;\n}\n\nexport interface DocumentWriteParameters {\n dirty_values?: \"coerce_or_reject\" | \"coerce_or_drop\" | \"drop\" | \"reject\";\n action?: \"create\" | \"update\" | \"upsert\" | \"emplace\";\n}\n\nexport interface UpdateByFilterParameters {\n filter_by?: string;\n}\n\nexport interface UpdateByFilterResponse {\n num_updated: number;\n}\n\nexport interface DocumentImportParameters extends DocumentWriteParameters {\n batch_size?: number;\n return_doc?: boolean;\n return_id?: boolean;\n}\n\nexport interface DocumentsExportParameters {\n filter_by?: string;\n include_fields?: string;\n exclude_fields?: string;\n}\n\nexport interface SearchableDocuments {\n search(\n searchParameters: SearchParams | SearchParamsWithPreset,\n options: SearchOptions,\n ): Promise>;\n clearCache(): void;\n}\n\nexport interface WriteableDocuments {\n create(document: T, options: DocumentWriteParameters): Promise;\n upsert(document: T, options: DocumentWriteParameters): Promise;\n update(document: T, options: DocumentWriteParameters): Promise;\n delete(query: DeleteQuery): Promise;\n import(\n documents: T[] | string,\n options: DocumentWriteParameters,\n ): Promise;\n export(options: DocumentsExportParameters): Promise;\n}\n\nexport interface SearchOptions {\n cacheSearchResultsForSeconds?: number;\n abortSignal?: AbortSignal | null;\n}\n\nconst isNodeJSEnvironment =\n typeof process !== \"undefined\" &&\n process.versions != null &&\n process.versions.node != null;\n\nexport default class Documents\n extends SearchOnlyDocuments\n implements WriteableDocuments\n{\n constructor(\n collectionName: string,\n apiCall: ApiCall,\n configuration: Configuration,\n ) {\n super(collectionName, apiCall, configuration);\n }\n\n async create(document: T, options: DocumentWriteParameters = {}): Promise {\n if (!document) throw new Error(\"No document provided\");\n return this.apiCall.post(this.endpointPath(), document, options);\n }\n\n async upsert(document: T, options: DocumentWriteParameters = {}): Promise {\n if (!document) throw new Error(\"No document provided\");\n return this.apiCall.post(\n this.endpointPath(),\n document,\n Object.assign({}, options, { action: \"upsert\" }),\n );\n }\n\n async update(\n document: T,\n options: UpdateByFilterParameters,\n ): Promise;\n async update(document: T, options: DocumentWriteParameters): Promise;\n async update(\n document: T,\n options: DocumentWriteParameters | UpdateByFilterParameters = {},\n ): Promise {\n if (!document) throw new Error(\"No document provided\");\n\n if (options[\"filter_by\"] != null) {\n return this.apiCall.patch(\n this.endpointPath(),\n document,\n Object.assign({}, options),\n );\n } else {\n return this.apiCall.post(\n this.endpointPath(),\n document,\n Object.assign({}, options, { action: \"update\" }),\n );\n }\n }\n\n async delete(\n query: DeleteQuery = {} as DeleteQuery,\n ): Promise {\n return this.apiCall.delete(this.endpointPath(), query);\n }\n\n async createMany(documents: T[], options: DocumentImportParameters = {}) {\n this.configuration.logger.warn(\n \"createMany is deprecated and will be removed in a future version. Use import instead, which now takes both an array of documents or a JSONL string of documents\",\n );\n return this.import(documents, options);\n }\n\n /**\n * Import a set of documents in a batch.\n * @param {string|Array} documents - Can be a JSONL string of documents or an array of document objects.\n * @param options\n * @return {string|Array} Returns a JSONL string if the input was a JSONL string, otherwise it returns an array of results.\n */\n async import(\n documents: string,\n options?: DocumentImportParameters,\n ): Promise;\n async import(\n documents: T[],\n options?: DocumentImportParameters,\n ): Promise;\n async import(\n documents: T[] | string,\n options: DocumentImportParameters = {},\n ): Promise {\n let documentsInJSONLFormat;\n if (Array.isArray(documents)) {\n if (documents.length === 0) {\n throw new RequestMalformed(\"No documents provided\");\n }\n try {\n documentsInJSONLFormat = documents\n .map((document) => JSON.stringify(document))\n .join(\"\\n\");\n } catch (error: any) {\n // if rangeerror, throw custom error message\n if (\n error instanceof RangeError &&\n error.message.includes(\"Too many properties to enumerate\")\n ) {\n throw new Error(`${error}\n It looks like you have reached a Node.js limit that restricts the number of keys in an Object: https://stackoverflow.com/questions/9282869/are-there-limits-to-the-number-of-properties-in-a-javascript-object\n\n Please try reducing the number of keys in your document, or using CURL to import your data.\n `);\n }\n\n // else, throw the non-range error anyways\n throw new Error(error);\n }\n } else {\n documentsInJSONLFormat = documents;\n if (isEmptyString(documentsInJSONLFormat)) {\n throw new RequestMalformed(\"No documents provided\");\n }\n }\n\n const resultsInJSONLFormat = await this.apiCall.performRequest(\n \"post\",\n this.endpointPath(\"import\"),\n {\n queryParameters: options,\n bodyParameters: documentsInJSONLFormat,\n additionalHeaders: { \"Content-Type\": \"text/plain\" },\n skipConnectionTimeout: true, // We never want to client-side-timeout on an import and retry, since imports are syncronous and we want to let them take as long as it takes to complete fully\n enableKeepAlive: isNodeJSEnvironment ? true : false, // This is to prevent ECONNRESET socket hang up errors. Reference: https://github.com/axios/axios/issues/2936#issuecomment-779439991\n },\n );\n\n if (Array.isArray(documents)) {\n const resultsInJSONFormat = resultsInJSONLFormat\n .split(\"\\n\")\n .map((r) => JSON.parse(r)) as ImportResponse[];\n const failedItems = resultsInJSONFormat.filter(\n (r) => r.success === false,\n );\n if (failedItems.length > 0) {\n throw new ImportError(\n `${\n resultsInJSONFormat.length - failedItems.length\n } documents imported successfully, ${\n failedItems.length\n } documents failed during import. Use \\`error.importResults\\` from the raised exception to get a detailed error reason for each document.`,\n resultsInJSONFormat,\n {\n documentsInJSONLFormat,\n options,\n failedItems,\n successCount: resultsInJSONFormat.length - failedItems.length,\n },\n );\n } else {\n return resultsInJSONFormat;\n }\n } else {\n return resultsInJSONLFormat as string;\n }\n }\n /**\n * Imports documents from a NodeJS readable stream of JSONL.\n */\n async importStream(\n readableStream: ReadStream,\n options: DocumentImportParameters = {},\n ): Promise {\n const resultsInJSONLFormat = await this.apiCall.performRequest(\n \"post\",\n this.endpointPath(\"import\"),\n {\n queryParameters: options,\n bodyParameters: readableStream,\n additionalHeaders: { \"Content-Type\": \"text/plain\" },\n skipConnectionTimeout: true, // We never want to client-side-timeout on an import and retry, since imports are syncronous and we want to let them take as long as it takes to complete fully\n enableKeepAlive: isNodeJSEnvironment ? true : false, // This is to prevent ECONNRESET socket hang up errors. Reference: https://github.com/axios/axios/issues/2936#issuecomment-779439991\n },\n );\n\n const resultsInJSONFormat = resultsInJSONLFormat\n .split(\"\\n\")\n .map((r) => JSON.parse(r)) as ImportResponse[];\n const failedItems = resultsInJSONFormat.filter((r) => r.success === false);\n if (failedItems.length > 0) {\n throw new ImportError(\n `${\n resultsInJSONFormat.length - failedItems.length\n } documents imported successfully, ${\n failedItems.length\n } documents failed during import. Use \\`error.importResults\\` from the raised exception to get a detailed error reason for each document.`,\n resultsInJSONFormat,\n {\n documentsInJSONLFormat: readableStream,\n options,\n failedItems,\n successCount: resultsInJSONFormat.length - failedItems.length,\n },\n );\n } else {\n return resultsInJSONFormat;\n }\n }\n\n /**\n * Returns a JSONL string for all the documents in this collection\n */\n async export(options: DocumentsExportParameters = {}): Promise {\n return this.apiCall.get(this.endpointPath(\"export\"), options);\n }\n\n /**\n * Returns a NodeJS readable stream of JSONL for all the documents in this collection.\n */\n async exportStream(\n options: DocumentsExportParameters = {},\n ): Promise {\n return this.apiCall.get(this.endpointPath(\"export\"), options, {\n responseType: \"stream\",\n });\n }\n}\n\nfunction isEmptyString(str: string | null | undefined): boolean {\n return str == null || str === \"\" || str.length === 0;\n}\n","import TypesenseError from \"./TypesenseError\";\n\nexport default class HTTPError extends TypesenseError {}\n","import TypesenseError from \"./TypesenseError\";\nimport type { DocumentImportParameters, ImportResponse } from \"../Documents\";\nimport { ReadStream } from \"node:fs\";\n\ninterface ImportErrorPayload {\n documentsInJSONLFormat: string | ReadStream;\n options: DocumentImportParameters;\n failedItems: ImportResponse[];\n successCount: number;\n}\n\nexport default class ImportError extends TypesenseError {\n payload: ImportErrorPayload;\n importResults: ImportResponse[];\n constructor(\n message: string,\n importResults: ImportResponse[],\n payload: ImportErrorPayload,\n ) {\n super(message);\n this.importResults = importResults;\n this.payload = payload;\n }\n}\n","import TypesenseError from \"./TypesenseError\";\n\nexport default class MissingConfigurationError extends TypesenseError {}\n","import TypesenseError from \"./TypesenseError\";\n\nexport default class ObjectAlreadyExists extends TypesenseError {}\n","import TypesenseError from \"./TypesenseError\";\n\nexport default class ObjectNotFound extends TypesenseError {}\n","import TypesenseError from \"./TypesenseError\";\n\nexport default class ObjectUnprocessable extends TypesenseError {}\n","import TypesenseError from \"./TypesenseError\";\n\nexport default class RequestMalformed extends TypesenseError {}\n","import TypesenseError from \"./TypesenseError\";\n\nexport default class RequestUnauthorized extends TypesenseError {}\n","import TypesenseError from \"./TypesenseError\";\n\nexport default class ServerError extends TypesenseError {}\n","export default class TypesenseError extends Error {\n httpStatus?: number;\n httpBody?: string;\n\n // Source: https://stackoverflow.com/a/58417721/123545\n constructor(message?: string, httpBody?: string, httpStatus?: number) {\n super(message);\n this.name = new.target.name;\n this.httpBody = httpBody;\n this.httpStatus = httpStatus;\n Object.setPrototypeOf(this, new.target.prototype);\n }\n}\n","import HTTPError from \"./HTTPError\";\nimport MissingConfigurationError from \"./MissingConfigurationError\";\nimport ObjectAlreadyExists from \"./ObjectAlreadyExists\";\nimport ObjectNotFound from \"./ObjectNotFound\";\nimport ObjectUnprocessable from \"./ObjectUnprocessable\";\nimport RequestMalformed from \"./RequestMalformed\";\nimport RequestUnauthorized from \"./RequestUnauthorized\";\nimport ServerError from \"./ServerError\";\nimport ImportError from \"./ImportError\";\nimport TypesenseError from \"./TypesenseError\";\n\nexport {\n HTTPError,\n MissingConfigurationError,\n ObjectAlreadyExists,\n ObjectNotFound,\n ObjectUnprocessable,\n RequestMalformed,\n RequestUnauthorized,\n ServerError,\n TypesenseError,\n ImportError,\n};\n","import ApiCall from \"./ApiCall\";\n\nconst RESOURCEPATH = \"/health\";\n\nexport interface HealthResponse {\n ok: boolean;\n}\n\nexport default class Health {\n constructor(private apiCall: ApiCall) {}\n\n async retrieve(): Promise {\n return this.apiCall.get(RESOURCEPATH);\n }\n}\n","import ApiCall from \"./ApiCall\";\nimport Keys from \"./Keys\";\n\nexport interface KeyCreateSchema {\n actions: string[];\n collections: string[];\n description?: string;\n value?: string;\n value_prefix?: string;\n expires_at?: number;\n autodelete?: boolean;\n}\n\nexport interface KeyDeleteSchema {\n id: number;\n}\n\nexport interface KeySchema extends KeyCreateSchema {\n id: number;\n}\n\nexport default class Key {\n constructor(\n private id: number,\n private apiCall: ApiCall,\n ) {}\n\n async retrieve(): Promise {\n return this.apiCall.get(this.endpointPath());\n }\n\n async delete(): Promise {\n return this.apiCall.delete(this.endpointPath());\n }\n\n private endpointPath(): string {\n return `${Keys.RESOURCEPATH}/${encodeURIComponent(this.id)}`;\n }\n}\n","import { createHmac } from \"crypto\";\nimport ApiCall from \"./ApiCall\";\nimport { KeyCreateSchema, KeySchema } from \"./Key\";\nimport { SearchParams } from \"./Documents\";\nimport { normalizeArrayableParams } from \"./Utils\";\n\nconst RESOURCEPATH = \"/keys\";\n\nexport interface KeysRetrieveSchema {\n keys: KeySchema[];\n}\n\nexport interface GenerateScopedSearchKeyParams extends Partial {\n expires_at?: number;\n cache_ttl?: number;\n limit_multi_searches?: number;\n}\n\nexport default class Keys {\n constructor(private apiCall: ApiCall) {\n this.apiCall = apiCall;\n }\n\n async create(params: KeyCreateSchema): Promise {\n return this.apiCall.post(Keys.RESOURCEPATH, params);\n }\n\n async retrieve(): Promise {\n return this.apiCall.get(RESOURCEPATH);\n }\n\n generateScopedSearchKey(\n searchKey: string,\n parameters: GenerateScopedSearchKeyParams\n ): string {\n // Note: only a key generated with the `documents:search` action will be\n // accepted by the server, when usined with the search endpoint.\n const normalizedParams = normalizeArrayableParams(parameters);\n const paramsJSON = JSON.stringify(normalizedParams);\n const digest = Buffer.from(\n createHmac(\"sha256\", searchKey).update(paramsJSON).digest(\"base64\")\n );\n const keyPrefix = searchKey.substr(0, 4);\n const rawScopedKey = `${digest}${keyPrefix}${paramsJSON}`;\n\n return Buffer.from(rawScopedKey).toString(\"base64\");\n }\n\n static get RESOURCEPATH() {\n return RESOURCEPATH;\n }\n}\n","import ApiCall from \"./ApiCall\";\n\nconst RESOURCEPATH = \"/metrics.json\";\n\nexport interface MetricsResponse {\n [key: `system_cpu${number}_active_percentage`]: string;\n system_cpu_active_percentage: string;\n system_disk_total_bytes: string;\n system_disk_used_bytes: string;\n system_memory_total_bytes: string;\n system_memory_total_swap_bytes?: string;\n system_memory_used_bytes: string;\n system_memory_used_swap_bytes?: string;\n system_network_received_bytes: string;\n system_network_sent_bytes: string;\n typesense_memory_active_bytes: string;\n typesense_memory_allocated_bytes: string;\n typesense_memory_fragmentation_ratio: string;\n typesense_memory_mapped_bytes: string;\n typesense_memory_metadata_bytes: string;\n typesense_memory_resident_bytes: string;\n typesense_memory_retained_bytes: string;\n}\n\nexport default class Metrics {\n constructor(private apiCall: ApiCall) {}\n\n async retrieve(): Promise {\n return this.apiCall.get(RESOURCEPATH);\n }\n}\n","import ApiCall from \"./ApiCall\";\nimport Configuration from \"./Configuration\";\nimport RequestWithCache from \"./RequestWithCache\";\nimport {\n DocumentSchema,\n SearchParams,\n SearchParamsWithPreset,\n SearchResponse,\n SearchResponseRequestParams,\n} from \"./Documents\";\nimport { normalizeArrayableParams } from \"./Utils\";\n\nconst RESOURCEPATH = \"/multi_search\";\n\nexport interface MultiSearchRequestSchema extends SearchParams {\n collection?: string;\n rerank_hybrid_matches?: boolean;\n \"x-typesense-api-key\"?: string;\n}\n\nexport interface MultiSearchRequestWithPresetSchema\n extends SearchParamsWithPreset {\n collection?: string;\n \"x-typesense-api-key\"?: string;\n}\n\nexport interface MultiSearchRequestsSchema<\n U extends boolean | undefined = undefined,\n> {\n union?: U;\n searches: (MultiSearchRequestSchema | MultiSearchRequestWithPresetSchema)[];\n}\n\nexport interface UnionSearchResponse\n extends Omit, \"request_params\"> {\n union_request_params: SearchResponseRequestParams[];\n}\n\nexport type MultiSearchResponse<\n U extends boolean | undefined,\n T extends DocumentSchema[],\n> = U extends true\n ? UnionSearchResponse\n : {\n results: { [Index in keyof T]: SearchResponse } & {\n length: T[\"length\"];\n };\n };\n\nexport default class MultiSearch {\n private requestWithCache: RequestWithCache;\n\n constructor(\n private apiCall: ApiCall,\n private configuration: Configuration,\n private useTextContentType: boolean = false,\n ) {\n this.requestWithCache = new RequestWithCache();\n }\n\n clearCache() {\n this.requestWithCache.clearCache();\n }\n\n async perform<\n T extends DocumentSchema[] = [],\n const U extends boolean | undefined = undefined,\n >(\n searchRequests: MultiSearchRequestsSchema,\n commonParams: Partial = {},\n {\n cacheSearchResultsForSeconds = this.configuration\n .cacheSearchResultsForSeconds,\n }: { cacheSearchResultsForSeconds?: number } = {},\n ): Promise> {\n const additionalHeaders = {};\n if (this.useTextContentType) {\n additionalHeaders[\"content-type\"] = \"text/plain\";\n }\n\n const additionalQueryParams = {};\n if (this.configuration.useServerSideSearchCache === true) {\n additionalQueryParams[\"use_cache\"] = true;\n }\n\n const queryParams = { ...commonParams, ...additionalQueryParams };\n\n const normalizedSearchRequests = {\n ...searchRequests,\n searches: searchRequests.searches.map(normalizeArrayableParams),\n };\n\n const normalizedQueryParams = normalizeArrayableParams(queryParams);\n\n return this.requestWithCache.perform(\n this.apiCall,\n this.apiCall.post,\n [\n RESOURCEPATH,\n normalizedSearchRequests,\n normalizedQueryParams,\n additionalHeaders,\n ],\n { cacheResponseForSeconds: cacheSearchResultsForSeconds },\n ) as Promise>;\n }\n}\n","import ApiCall from \"./ApiCall\";\n\nconst RESOURCEPATH = \"/operations\";\n\nexport default class Operations {\n constructor(private apiCall: ApiCall) {}\n\n async perform(\n operationName:\n | \"vote\"\n | \"snapshot\"\n | \"cache/clear\"\n | \"schema_changes\"\n // eslint-disable-next-line @typescript-eslint/ban-types -- Can't use `object` here, it needs to intersect with `{}`\n | (string & {}),\n queryParameters: Record = {},\n ): Promise {\n return this.apiCall.post(\n `${RESOURCEPATH}/${operationName}`,\n {},\n queryParameters,\n );\n }\n}\n","import ApiCall from \"./ApiCall\";\nimport Collections from \"./Collections\";\nimport Overrides, { OverrideCreateSchema } from \"./Overrides\";\n\nexport interface OverrideSchema extends OverrideCreateSchema {\n id: string;\n}\n\nexport interface OverrideDeleteSchema {\n id: string;\n}\n\nexport default class Override {\n constructor(\n private collectionName: string,\n private overrideId: string,\n private apiCall: ApiCall\n ) {}\n\n async retrieve(): Promise {\n return this.apiCall.get(this.endpointPath());\n }\n\n async delete(): Promise {\n return this.apiCall.delete(this.endpointPath());\n }\n\n private endpointPath(): string {\n return `${Collections.RESOURCEPATH}/${encodeURIComponent(this.collectionName)}${Overrides.RESOURCEPATH}/${encodeURIComponent(this.overrideId)}`;\n }\n}\n","import ApiCall from \"./ApiCall\";\nimport Collections from \"./Collections\";\nimport { OverrideSchema } from \"./Override\";\n\nconst RESOURCEPATH = \"/overrides\";\n\nexport interface OverrideRuleQuerySchema {\n query?: string;\n match?: \"exact\" | \"contains\";\n}\n\nexport interface OverrideRuleFilterSchema {\n filter_by?: string;\n}\n\nexport interface OverrideRuleTagsSchema {\n tags?: string[];\n}\n\nexport interface OverrideCreateSchema {\n rule: OverrideRuleQuerySchema &\n OverrideRuleFilterSchema &\n OverrideRuleTagsSchema;\n filter_by?: string;\n sort_by?: string;\n remove_matched_tokens?: boolean;\n replace_query?: string;\n includes?: Array<{\n id: string;\n position: number;\n }>;\n excludes?: Array<{ id: string }>;\n filter_curated_hits?: boolean;\n effective_from_ts?: number;\n effective_to_ts?: number;\n stop_processing?: boolean;\n metadata?: object;\n}\n\nexport interface OverridesRetrieveSchema {\n overrides: OverrideSchema[];\n}\n\nexport default class Overrides {\n constructor(\n private collectionName: string,\n private apiCall: ApiCall,\n ) {}\n\n async upsert(\n overrideId: string,\n params: OverrideCreateSchema,\n ): Promise {\n return this.apiCall.put(\n this.endpointPath(overrideId),\n params,\n );\n }\n\n async retrieve(): Promise {\n return this.apiCall.get(this.endpointPath());\n }\n\n private endpointPath(operation?: string): string {\n return `${Collections.RESOURCEPATH}/${this.collectionName}${\n Overrides.RESOURCEPATH\n }${operation === undefined ? \"\" : \"/\" + encodeURIComponent(operation)}`;\n }\n\n static get RESOURCEPATH(): string {\n return RESOURCEPATH;\n }\n}\n","import ApiCall from \"./ApiCall\";\nimport Presets, { PresetCreateSchema } from \"./Presets\";\n\nexport interface PresetSchema extends PresetCreateSchema {\n name: string;\n}\n\nexport interface PresetDeleteSchema {\n name: string;\n}\n\nexport default class Preset {\n constructor(private presetId: string, private apiCall: ApiCall) {}\n\n async retrieve(): Promise {\n return this.apiCall.get(this.endpointPath());\n }\n\n async delete(): Promise {\n return this.apiCall.delete(this.endpointPath());\n }\n\n private endpointPath(): string {\n return `${Presets.RESOURCEPATH}/${encodeURIComponent(this.presetId)}`;\n }\n}\n","import ApiCall from \"./ApiCall\";\nimport { PresetSchema } from \"./Preset\";\nimport { SearchParams } from \"./Documents\";\nimport { MultiSearchRequestsSchema } from \"./MultiSearch\";\nimport { normalizeArrayableParams } from \"./Utils\";\n\nconst RESOURCEPATH = \"/presets\";\n\nexport interface PresetCreateSchema {\n value: SearchParams | MultiSearchRequestsSchema;\n}\n\nexport interface PresetsRetrieveSchema {\n presets: PresetSchema[];\n}\n\nexport default class Presets {\n constructor(private apiCall: ApiCall) {}\n\n async upsert(\n presetId: string,\n params: PresetCreateSchema,\n ): Promise {\n if (typeof params.value === \"object\" && \"searches\" in params.value) {\n const normalizedParams = params.value.searches.map((search) =>\n normalizeArrayableParams(search),\n );\n\n return this.apiCall.put(this.endpointPath(presetId), {\n value: { searches: normalizedParams },\n });\n }\n const normalizedParams = normalizeArrayableParams(params.value);\n\n return this.apiCall.put(this.endpointPath(presetId), {\n value: normalizedParams,\n });\n }\n\n async retrieve(): Promise {\n return this.apiCall.get(this.endpointPath());\n }\n\n private endpointPath(operation?: string): string {\n return `${Presets.RESOURCEPATH}${\n operation === undefined ? \"\" : \"/\" + encodeURIComponent(operation)\n }`;\n }\n\n static get RESOURCEPATH(): string {\n return RESOURCEPATH;\n }\n}\n","const defaultCacheResponseForSeconds = 2 * 60;\nconst defaultMaxSize = 100;\n\nexport default class RequestWithCache {\n private responseCache: Map = new Map();\n private responsePromiseCache: Map = new Map();\n\n clearCache() {\n this.responseCache = new Map();\n this.responsePromiseCache = new Map();\n }\n\n // Todo: should probably be passed a callback instead, or an apiCall instance. Types are messy this way\n async perform(\n requestContext: any,\n requestFunction: (...params: any) => unknown,\n requestFunctionArguments: any[],\n cacheOptions: CacheOptions\n ): Promise {\n const {\n cacheResponseForSeconds = defaultCacheResponseForSeconds,\n maxSize = defaultMaxSize,\n } = cacheOptions;\n const isCacheDisabled = cacheResponseForSeconds <= 0 || maxSize <= 0;\n\n if (isCacheDisabled) {\n return requestFunction.call(requestContext, ...requestFunctionArguments);\n }\n\n const requestFunctionArgumentsJSON = JSON.stringify(\n requestFunctionArguments\n );\n const cacheEntry = this.responseCache.get(requestFunctionArgumentsJSON);\n const now = Date.now();\n\n if (cacheEntry) {\n const isEntryValid =\n now - cacheEntry.requestTimestamp < cacheResponseForSeconds * 1000;\n if (isEntryValid) {\n this.responseCache.delete(requestFunctionArgumentsJSON);\n this.responseCache.set(requestFunctionArgumentsJSON, cacheEntry);\n return Promise.resolve(cacheEntry.response);\n } else {\n this.responseCache.delete(requestFunctionArgumentsJSON);\n }\n }\n\n const cachePromiseEntry = this.responsePromiseCache.get(\n requestFunctionArgumentsJSON\n );\n\n if (cachePromiseEntry) {\n const isEntryValid =\n now - cachePromiseEntry.requestTimestamp <\n cacheResponseForSeconds * 1000;\n if (isEntryValid) {\n this.responsePromiseCache.delete(requestFunctionArgumentsJSON);\n this.responsePromiseCache.set(\n requestFunctionArgumentsJSON,\n cachePromiseEntry\n );\n return cachePromiseEntry.responsePromise;\n } else {\n this.responsePromiseCache.delete(requestFunctionArgumentsJSON);\n }\n }\n\n const responsePromise = requestFunction.call(\n requestContext,\n ...requestFunctionArguments\n );\n this.responsePromiseCache.set(requestFunctionArgumentsJSON, {\n requestTimestamp: now,\n responsePromise,\n });\n\n const response = await responsePromise;\n this.responseCache.set(requestFunctionArgumentsJSON, {\n requestTimestamp: now,\n response,\n });\n\n const isCacheOverMaxSize = this.responseCache.size > maxSize;\n if (isCacheOverMaxSize) {\n const oldestEntry = this.responseCache.keys().next().value;\n if (oldestEntry) {\n this.responseCache.delete(oldestEntry);\n }\n }\n const isResponsePromiseCacheOverMaxSize =\n this.responsePromiseCache.size > maxSize;\n if (isResponsePromiseCacheOverMaxSize) {\n const oldestEntry = this.responsePromiseCache.keys().next().value;\n if (oldestEntry) {\n this.responsePromiseCache.delete(oldestEntry);\n }\n }\n return response as T;\n }\n}\n\ninterface CacheOptions {\n cacheResponseForSeconds?: number;\n maxSize?: number;\n}\n","import Configuration, { ConfigurationOptions } from \"./Configuration\";\nimport ApiCall from \"./ApiCall\";\nimport MultiSearch from \"./MultiSearch\";\nimport { DocumentSchema } from \"./Documents\";\nimport { SearchOnlyCollection } from \"./SearchOnlyCollection\";\n\nexport default class SearchClient {\n public readonly multiSearch: MultiSearch;\n private readonly configuration: Configuration;\n private readonly apiCall: ApiCall;\n private readonly individualCollections: Record;\n\n constructor(options: ConfigurationOptions) {\n options.sendApiKeyAsQueryParam = options.sendApiKeyAsQueryParam ?? true;\n if (\n options.sendApiKeyAsQueryParam === true &&\n (options.apiKey || \"\").length > 2000\n ) {\n console.warn(\n \"[typesense] API Key is longer than 2000 characters which is over the allowed limit, so disabling sending it as a query parameter.\"\n );\n options.sendApiKeyAsQueryParam = false;\n }\n\n this.configuration = new Configuration(options);\n this.apiCall = new ApiCall(this.configuration);\n this.multiSearch = new MultiSearch(this.apiCall, this.configuration, true);\n this.individualCollections = {};\n }\n\n clearCache() {\n this.multiSearch.clearCache();\n\n // eslint-disable-next-line @typescript-eslint/no-unused-vars\n Object.entries(this.individualCollections).forEach(([_, collection]) => {\n collection.documents().clearCache();\n });\n }\n\n collections(\n collectionName: string\n ): SearchOnlyCollection | SearchOnlyCollection {\n if (!collectionName) {\n throw new Error(\n \"Typesense.SearchClient only supports search operations, so the collectionName that needs to \" +\n \"be searched must be specified. Use Typesense.Client if you need to access the collection object.\"\n );\n } else {\n if (this.individualCollections[collectionName] === undefined) {\n this.individualCollections[collectionName] = new SearchOnlyCollection(\n collectionName,\n this.apiCall,\n this.configuration\n );\n }\n return this.individualCollections[collectionName];\n }\n }\n}\n","import { DocumentSchema, SearchableDocuments } from \"./Documents\";\nimport ApiCall from \"./ApiCall\";\nimport { SearchOnlyDocuments } from \"./SearchOnlyDocuments\";\n\nexport class SearchOnlyCollection {\n private readonly _documents: SearchableDocuments;\n\n constructor(\n private readonly name: string,\n private readonly apiCall: ApiCall,\n private readonly configuration: any\n ) {\n this._documents = new SearchOnlyDocuments(\n this.name,\n this.apiCall,\n this.configuration\n );\n }\n\n documents(): SearchableDocuments {\n return this._documents;\n }\n}\n","import RequestWithCache from \"./RequestWithCache\";\nimport ApiCall from \"./ApiCall\";\nimport Configuration from \"./Configuration\";\nimport Collections from \"./Collections\";\nimport type {\n DocumentSchema,\n SearchableDocuments,\n SearchOptions,\n SearchParams,\n SearchParamsWithPreset,\n SearchResponse,\n} from \"./Documents\";\nimport { normalizeArrayableParams } from \"./Utils\";\n\nconst RESOURCEPATH = \"/documents\";\n\nexport class SearchOnlyDocuments\n implements SearchableDocuments\n{\n protected requestWithCache: RequestWithCache = new RequestWithCache();\n\n constructor(\n protected collectionName: string,\n protected apiCall: ApiCall,\n protected configuration: Configuration\n ) {}\n\n clearCache() {\n this.requestWithCache.clearCache();\n }\n\n async search(\n searchParameters: SearchParams | SearchParamsWithPreset,\n {\n cacheSearchResultsForSeconds = this.configuration\n .cacheSearchResultsForSeconds,\n abortSignal = null,\n }: SearchOptions = {}\n ): Promise> {\n const additionalQueryParams = {};\n if (this.configuration.useServerSideSearchCache === true) {\n additionalQueryParams[\"use_cache\"] = true;\n }\n const normalizedParams = normalizeArrayableParams(searchParameters);\n const queryParams = Object.assign(\n {},\n additionalQueryParams,\n normalizedParams,\n );\n\n return this.requestWithCache.perform(\n this.apiCall,\n this.apiCall.get,\n [this.endpointPath(\"search\"), queryParams, { abortSignal }],\n {\n cacheResponseForSeconds: cacheSearchResultsForSeconds,\n }\n ) as Promise>;\n }\n\n protected endpointPath(operation?: string) {\n return `${Collections.RESOURCEPATH}/${this.collectionName}${RESOURCEPATH}${\n operation === undefined ? \"\" : \"/\" + operation\n }`;\n }\n\n static get RESOURCEPATH() {\n return RESOURCEPATH;\n }\n}\n","import ApiCall from \"./ApiCall\";\n\nconst RESOURCEPATH = \"/stats.json\";\n\nexport interface EndpointStats {\n [endpoint: string]: number;\n}\n\nexport interface StatsResponse {\n delete_latency_ms?: number;\n delete_requests_per_second?: number;\n import_latency_ms?: number;\n import_requests_per_second?: number;\n latency_ms?: EndpointStats;\n overloaded_requests_per_second?: number;\n pending_write_batches?: number;\n requests_per_second?: EndpointStats;\n search_latency_ms?: number;\n search_requests_per_second?: number;\n total_requests_per_second?: number;\n write_latency_ms?: number;\n write_requests_per_second?: number;\n}\n\nexport default class Metrics {\n constructor(private apiCall: ApiCall) {}\n\n async retrieve(): Promise {\n return this.apiCall.get(RESOURCEPATH);\n }\n}\n","import type ApiCall from \"./ApiCall\";\nimport StemmingDictionaries from \"./StemmingDictionaries\";\nimport StemmingDictionary from \"./StemmingDictionary\";\n\nconst RESOURCEPATH = \"/stemming\";\n\nexport default class Stemming {\n private readonly _stemmingDictionaries: StemmingDictionaries;\n private readonly individualStemmingDictionaries: Record<\n string,\n StemmingDictionary\n > = {};\n\n constructor(private readonly apiCall: ApiCall) {\n this.apiCall = apiCall;\n this._stemmingDictionaries = new StemmingDictionaries(this.apiCall);\n }\n\n dictionaries(): StemmingDictionaries;\n dictionaries(id: string): StemmingDictionary;\n dictionaries(id?: string): StemmingDictionaries | StemmingDictionary {\n if (id === undefined) {\n return this._stemmingDictionaries;\n } else {\n if (this.individualStemmingDictionaries[id] === undefined) {\n this.individualStemmingDictionaries[id] = new StemmingDictionary(\n id,\n this.apiCall,\n );\n }\n return this.individualStemmingDictionaries[id];\n }\n }\n\n static get RESOURCEPATH() {\n return RESOURCEPATH;\n }\n}\n","import ApiCall from \"./ApiCall\";\nimport type { StemmingDictionaryCreateSchema } from \"./StemmingDictionary\";\n\nconst RESOURCEPATH = \"/stemming/dictionaries\";\n\nexport interface StemmingDictionariesRetrieveSchema {\n dictionaries: string[];\n}\n\nexport default class StemmingDictionaries {\n constructor(private readonly apiCall: ApiCall) {\n this.apiCall = apiCall;\n }\n\n async upsert(\n id: string,\n wordRootCombinations: StemmingDictionaryCreateSchema[] | string,\n ): Promise {\n const wordRootCombinationsInJSONLFormat = Array.isArray(\n wordRootCombinations,\n )\n ? wordRootCombinations.map((combo) => JSON.stringify(combo)).join(\"\\n\")\n : wordRootCombinations;\n\n const resultsInJSONLFormat = await this.apiCall.performRequest(\n\n \"post\",\n this.endpointPath(\"import\"),\n {\n queryParameters: {id},\n bodyParameters: wordRootCombinationsInJSONLFormat,\n additionalHeaders: {\"Content-Type\": \"text/plain\"},\n skipConnectionTimeout: true,\n }\n );\n\n return Array.isArray(wordRootCombinations)\n ? resultsInJSONLFormat\n .split(\"\\n\")\n .map((line) => JSON.parse(line) as StemmingDictionaryCreateSchema)\n : resultsInJSONLFormat;\n }\n\n async retrieve(): Promise {\n return this.apiCall.get(\n this.endpointPath(),\n );\n }\n\n private endpointPath(operation?: string): string {\n return operation === undefined\n ? `${StemmingDictionaries.RESOURCEPATH}`\n : `${StemmingDictionaries.RESOURCEPATH}/${encodeURIComponent(operation)}`;\n }\n\n static get RESOURCEPATH() {\n return RESOURCEPATH;\n }\n}\n","import ApiCall from \"./ApiCall\";\nimport StemmingDictionaries from \"./StemmingDictionaries\";\n\nexport interface StemmingDictionaryCreateSchema {\n root: string;\n word: string;\n}\n\nexport interface StemmingDictionarySchema {\n id: string;\n words: StemmingDictionaryCreateSchema[];\n}\n\nexport default class StemmingDictionary {\n constructor(\n private id: string,\n private apiCall: ApiCall,\n ) {}\n\n async retrieve(): Promise {\n return this.apiCall.get(this.endpointPath());\n }\n\n private endpointPath(): string {\n return `${StemmingDictionaries.RESOURCEPATH}/${encodeURIComponent(this.id)}`;\n }\n}\n","import ApiCall from \"./ApiCall\";\nimport Stopwords, { StopwordCreateSchema } from \"./Stopwords\";\n\nexport interface StopwordSchema extends StopwordCreateSchema {\n id: string;\n stopwords: string[];\n locale?: string;\n}\n\nexport interface StopwordDeleteSchema {\n id: string;\n}\n\nexport default class Stopword {\n constructor(\n private stopwordId: string,\n private apiCall: ApiCall,\n ) {}\n\n async retrieve(): Promise {\n return this.apiCall.get(this.endpointPath());\n }\n\n async delete(): Promise {\n return this.apiCall.delete(this.endpointPath());\n }\n\n private endpointPath(): string {\n return `${Stopwords.RESOURCEPATH}/${encodeURIComponent(this.stopwordId)}`;\n }\n}\n","import ApiCall from \"./ApiCall\";\nimport { StopwordSchema } from \"./Stopword\";\n\nconst RESOURCEPATH = \"/stopwords\";\n\nexport interface StopwordCreateSchema {\n stopwords: string[];\n locale?: string;\n}\n\nexport interface StopwordsRetrieveSchema {\n stopwords: StopwordSchema[];\n}\n\nexport default class Stopwords {\n constructor(private apiCall: ApiCall) {}\n\n async upsert(\n stopwordId: string,\n params: StopwordCreateSchema,\n ): Promise {\n return this.apiCall.put(\n this.endpointPath(stopwordId),\n params,\n );\n }\n\n async retrieve(): Promise {\n return this.apiCall.get(this.endpointPath());\n }\n\n private endpointPath(operation?: string): string {\n return `${Stopwords.RESOURCEPATH}${\n operation === undefined ? \"\" : \"/\" + encodeURIComponent(operation)\n }`;\n }\n\n static get RESOURCEPATH(): string {\n return RESOURCEPATH;\n }\n}\n","import ApiCall from \"./ApiCall\";\nimport Collections from \"./Collections\";\nimport Synonyms, { SynonymCreateSchema } from \"./Synonyms\";\n\nexport interface SynonymSchema extends SynonymCreateSchema {\n id: string;\n}\n\nexport interface SynonymDeleteSchema {\n id: string;\n}\n\nexport default class Synonym {\n constructor(\n private collectionName: string,\n private synonymId: string,\n private apiCall: ApiCall\n ) {}\n\n async retrieve(): Promise {\n return this.apiCall.get(this.endpointPath());\n }\n\n async delete(): Promise {\n return this.apiCall.delete(this.endpointPath());\n }\n\n private endpointPath(): string {\n return `${Collections.RESOURCEPATH}/${encodeURIComponent(this.collectionName)}${Synonyms.RESOURCEPATH}/${encodeURIComponent(this.synonymId)}`;\n }\n}\n","import ApiCall from \"./ApiCall\";\nimport Collections from \"./Collections\";\nimport { SynonymSchema } from \"./Synonym\";\n\nconst RESOURCEPATH = \"/synonyms\";\n\nexport interface SynonymCreateSchema {\n synonyms: string[];\n root?: string;\n locale?: string;\n symbols_to_index?: string[];\n}\n\nexport interface SynonymsRetrieveSchema {\n synonyms: SynonymSchema[];\n}\n\nexport default class Synonyms {\n constructor(private collectionName: string, private apiCall: ApiCall) {}\n\n async upsert(\n synonymId: string,\n params: SynonymCreateSchema\n ): Promise {\n return this.apiCall.put(\n this.endpointPath(synonymId),\n params\n );\n }\n\n async retrieve(): Promise {\n return this.apiCall.get(this.endpointPath());\n }\n\n private endpointPath(operation?: string) {\n return `${Collections.RESOURCEPATH}/${encodeURIComponent(this.collectionName)}${\n Synonyms.RESOURCEPATH\n }${operation === undefined ? \"\" : \"/\" + encodeURIComponent(operation)}`;\n }\n\n static get RESOURCEPATH(): string {\n return RESOURCEPATH;\n }\n}\n","import { arrayableParams } from \"./Documents\";\nimport type {\n UnionArrayKeys,\n ExtractBaseTypes,\n SearchParams,\n} from \"./Documents\";\n\nfunction hasNoArrayValues(\n params: T | ExtractBaseTypes,\n): params is ExtractBaseTypes {\n return Object.keys(arrayableParams)\n .filter((key) => params[key] !== undefined)\n .every((key) => isNonArrayValue(params[key]));\n}\n\nexport function normalizeArrayableParams(\n params: T,\n): Prettify> {\n const result = { ...params };\n\n const transformedValues = Object.keys(arrayableParams)\n .filter((key) => Array.isArray(result[key]))\n .map((key) => {\n result[key] = result[key].join(\",\");\n return key;\n });\n\n if (!transformedValues.length && hasNoArrayValues(result)) {\n return result;\n }\n\n if (!hasNoArrayValues(result)) {\n throw new Error(\n `Failed to normalize arrayable params: ${JSON.stringify(result)}`,\n );\n }\n\n return result;\n}\n\nfunction isNonArrayValue>(\n value: T[K] | ExtractBaseTypes[K],\n): value is ExtractBaseTypes[K] {\n return !Array.isArray(value);\n}\n\ntype Prettify = {\n [K in keyof T]: T[K];\n // eslint-disable-next-line @typescript-eslint/ban-types\n} & {};\n","/*\n* loglevel - https://github.com/pimterry/loglevel\n*\n* Copyright (c) 2013 Tim Perry\n* Licensed under the MIT license.\n*/\n(function (root, definition) {\n \"use strict\";\n if (typeof define === 'function' && define.amd) {\n define(definition);\n } else if (typeof module === 'object' && module.exports) {\n module.exports = definition();\n } else {\n root.log = definition();\n }\n}(this, function () {\n \"use strict\";\n\n // Slightly dubious tricks to cut down minimized file size\n var noop = function() {};\n var undefinedType = \"undefined\";\n var isIE = (typeof window !== undefinedType) && (typeof window.navigator !== undefinedType) && (\n /Trident\\/|MSIE /.test(window.navigator.userAgent)\n );\n\n var logMethods = [\n \"trace\",\n \"debug\",\n \"info\",\n \"warn\",\n \"error\"\n ];\n\n var _loggersByName = {};\n var defaultLogger = null;\n\n // Cross-browser bind equivalent that works at least back to IE6\n function bindMethod(obj, methodName) {\n var method = obj[methodName];\n if (typeof method.bind === 'function') {\n return method.bind(obj);\n } else {\n try {\n return Function.prototype.bind.call(method, obj);\n } catch (e) {\n // Missing bind shim or IE8 + Modernizr, fallback to wrapping\n return function() {\n return Function.prototype.apply.apply(method, [obj, arguments]);\n };\n }\n }\n }\n\n // Trace() doesn't print the message in IE, so for that case we need to wrap it\n function traceForIE() {\n if (console.log) {\n if (console.log.apply) {\n console.log.apply(console, arguments);\n } else {\n // In old IE, native console methods themselves don't have apply().\n Function.prototype.apply.apply(console.log, [console, arguments]);\n }\n }\n if (console.trace) console.trace();\n }\n\n // Build the best logging method possible for this env\n // Wherever possible we want to bind, not wrap, to preserve stack traces\n function realMethod(methodName) {\n if (methodName === 'debug') {\n methodName = 'log';\n }\n\n if (typeof console === undefinedType) {\n return false; // No method possible, for now - fixed later by enableLoggingWhenConsoleArrives\n } else if (methodName === 'trace' && isIE) {\n return traceForIE;\n } else if (console[methodName] !== undefined) {\n return bindMethod(console, methodName);\n } else if (console.log !== undefined) {\n return bindMethod(console, 'log');\n } else {\n return noop;\n }\n }\n\n // These private functions always need `this` to be set properly\n\n function replaceLoggingMethods() {\n /*jshint validthis:true */\n var level = this.getLevel();\n\n // Replace the actual methods.\n for (var i = 0; i < logMethods.length; i++) {\n var methodName = logMethods[i];\n this[methodName] = (i < level) ?\n noop :\n this.methodFactory(methodName, level, this.name);\n }\n\n // Define log.log as an alias for log.debug\n this.log = this.debug;\n\n // Return any important warnings.\n if (typeof console === undefinedType && level < this.levels.SILENT) {\n return \"No console available for logging\";\n }\n }\n\n // In old IE versions, the console isn't present until you first open it.\n // We build realMethod() replacements here that regenerate logging methods\n function enableLoggingWhenConsoleArrives(methodName) {\n return function () {\n if (typeof console !== undefinedType) {\n replaceLoggingMethods.call(this);\n this[methodName].apply(this, arguments);\n }\n };\n }\n\n // By default, we use closely bound real methods wherever possible, and\n // otherwise we wait for a console to appear, and then try again.\n function defaultMethodFactory(methodName, _level, _loggerName) {\n /*jshint validthis:true */\n return realMethod(methodName) ||\n enableLoggingWhenConsoleArrives.apply(this, arguments);\n }\n\n function Logger(name, factory) {\n // Private instance variables.\n var self = this;\n /**\n * The level inherited from a parent logger (or a global default). We\n * cache this here rather than delegating to the parent so that it stays\n * in sync with the actual logging methods that we have installed (the\n * parent could change levels but we might not have rebuilt the loggers\n * in this child yet).\n * @type {number}\n */\n var inheritedLevel;\n /**\n * The default level for this logger, if any. If set, this overrides\n * `inheritedLevel`.\n * @type {number|null}\n */\n var defaultLevel;\n /**\n * A user-specific level for this logger. If set, this overrides\n * `defaultLevel`.\n * @type {number|null}\n */\n var userLevel;\n\n var storageKey = \"loglevel\";\n if (typeof name === \"string\") {\n storageKey += \":\" + name;\n } else if (typeof name === \"symbol\") {\n storageKey = undefined;\n }\n\n function persistLevelIfPossible(levelNum) {\n var levelName = (logMethods[levelNum] || 'silent').toUpperCase();\n\n if (typeof window === undefinedType || !storageKey) return;\n\n // Use localStorage if available\n try {\n window.localStorage[storageKey] = levelName;\n return;\n } catch (ignore) {}\n\n // Use session cookie as fallback\n try {\n window.document.cookie =\n encodeURIComponent(storageKey) + \"=\" + levelName + \";\";\n } catch (ignore) {}\n }\n\n function getPersistedLevel() {\n var storedLevel;\n\n if (typeof window === undefinedType || !storageKey) return;\n\n try {\n storedLevel = window.localStorage[storageKey];\n } catch (ignore) {}\n\n // Fallback to cookies if local storage gives us nothing\n if (typeof storedLevel === undefinedType) {\n try {\n var cookie = window.document.cookie;\n var cookieName = encodeURIComponent(storageKey);\n var location = cookie.indexOf(cookieName + \"=\");\n if (location !== -1) {\n storedLevel = /^([^;]+)/.exec(\n cookie.slice(location + cookieName.length + 1)\n )[1];\n }\n } catch (ignore) {}\n }\n\n // If the stored level is not valid, treat it as if nothing was stored.\n if (self.levels[storedLevel] === undefined) {\n storedLevel = undefined;\n }\n\n return storedLevel;\n }\n\n function clearPersistedLevel() {\n if (typeof window === undefinedType || !storageKey) return;\n\n // Use localStorage if available\n try {\n window.localStorage.removeItem(storageKey);\n } catch (ignore) {}\n\n // Use session cookie as fallback\n try {\n window.document.cookie =\n encodeURIComponent(storageKey) + \"=; expires=Thu, 01 Jan 1970 00:00:00 UTC\";\n } catch (ignore) {}\n }\n\n function normalizeLevel(input) {\n var level = input;\n if (typeof level === \"string\" && self.levels[level.toUpperCase()] !== undefined) {\n level = self.levels[level.toUpperCase()];\n }\n if (typeof level === \"number\" && level >= 0 && level <= self.levels.SILENT) {\n return level;\n } else {\n throw new TypeError(\"log.setLevel() called with invalid level: \" + input);\n }\n }\n\n /*\n *\n * Public logger API - see https://github.com/pimterry/loglevel for details\n *\n */\n\n self.name = name;\n\n self.levels = { \"TRACE\": 0, \"DEBUG\": 1, \"INFO\": 2, \"WARN\": 3,\n \"ERROR\": 4, \"SILENT\": 5};\n\n self.methodFactory = factory || defaultMethodFactory;\n\n self.getLevel = function () {\n if (userLevel != null) {\n return userLevel;\n } else if (defaultLevel != null) {\n return defaultLevel;\n } else {\n return inheritedLevel;\n }\n };\n\n self.setLevel = function (level, persist) {\n userLevel = normalizeLevel(level);\n if (persist !== false) { // defaults to true\n persistLevelIfPossible(userLevel);\n }\n\n // NOTE: in v2, this should call rebuild(), which updates children.\n return replaceLoggingMethods.call(self);\n };\n\n self.setDefaultLevel = function (level) {\n defaultLevel = normalizeLevel(level);\n if (!getPersistedLevel()) {\n self.setLevel(level, false);\n }\n };\n\n self.resetLevel = function () {\n userLevel = null;\n clearPersistedLevel();\n replaceLoggingMethods.call(self);\n };\n\n self.enableAll = function(persist) {\n self.setLevel(self.levels.TRACE, persist);\n };\n\n self.disableAll = function(persist) {\n self.setLevel(self.levels.SILENT, persist);\n };\n\n self.rebuild = function () {\n if (defaultLogger !== self) {\n inheritedLevel = normalizeLevel(defaultLogger.getLevel());\n }\n replaceLoggingMethods.call(self);\n\n if (defaultLogger === self) {\n for (var childName in _loggersByName) {\n _loggersByName[childName].rebuild();\n }\n }\n };\n\n // Initialize all the internal levels.\n inheritedLevel = normalizeLevel(\n defaultLogger ? defaultLogger.getLevel() : \"WARN\"\n );\n var initialLevel = getPersistedLevel();\n if (initialLevel != null) {\n userLevel = normalizeLevel(initialLevel);\n }\n replaceLoggingMethods.call(self);\n }\n\n /*\n *\n * Top-level API\n *\n */\n\n defaultLogger = new Logger();\n\n defaultLogger.getLogger = function getLogger(name) {\n if ((typeof name !== \"symbol\" && typeof name !== \"string\") || name === \"\") {\n throw new TypeError(\"You must supply a name when creating a logger.\");\n }\n\n var logger = _loggersByName[name];\n if (!logger) {\n logger = _loggersByName[name] = new Logger(\n name,\n defaultLogger.methodFactory\n );\n }\n return logger;\n };\n\n // Grab the current global log variable in case of overwrite\n var _log = (typeof window !== undefinedType) ? window.log : undefined;\n defaultLogger.noConflict = function() {\n if (typeof window !== undefinedType &&\n window.log === defaultLogger) {\n window.log = _log;\n }\n\n return defaultLogger;\n };\n\n defaultLogger.getLoggers = function getLoggers() {\n return _loggersByName;\n };\n\n // ES6 default export, for compatibility\n defaultLogger['default'] = defaultLogger;\n\n return defaultLogger;\n}));\n","/* (ignored) */","/* (ignored) */","/* (ignored) */","var _typeof = require(\"./typeof.js\")[\"default\"];\nfunction _regeneratorRuntime() {\n \"use strict\"; /*! regenerator-runtime -- Copyright (c) 2014-present, Facebook, Inc. -- license (MIT): https://github.com/facebook/regenerator/blob/main/LICENSE */\n module.exports = _regeneratorRuntime = function _regeneratorRuntime() {\n return e;\n }, module.exports.__esModule = true, module.exports[\"default\"] = module.exports;\n var t,\n e = {},\n r = Object.prototype,\n n = r.hasOwnProperty,\n o = Object.defineProperty || function (t, e, r) {\n t[e] = r.value;\n },\n i = \"function\" == typeof Symbol ? Symbol : {},\n a = i.iterator || \"@@iterator\",\n c = i.asyncIterator || \"@@asyncIterator\",\n u = i.toStringTag || \"@@toStringTag\";\n function define(t, e, r) {\n return Object.defineProperty(t, e, {\n value: r,\n enumerable: !0,\n configurable: !0,\n writable: !0\n }), t[e];\n }\n try {\n define({}, \"\");\n } catch (t) {\n define = function define(t, e, r) {\n return t[e] = r;\n };\n }\n function wrap(t, e, r, n) {\n var i = e && e.prototype instanceof Generator ? e : Generator,\n a = Object.create(i.prototype),\n c = new Context(n || []);\n return o(a, \"_invoke\", {\n value: makeInvokeMethod(t, r, c)\n }), a;\n }\n function tryCatch(t, e, r) {\n try {\n return {\n type: \"normal\",\n arg: t.call(e, r)\n };\n } catch (t) {\n return {\n type: \"throw\",\n arg: t\n };\n }\n }\n e.wrap = wrap;\n var h = \"suspendedStart\",\n l = \"suspendedYield\",\n f = \"executing\",\n s = \"completed\",\n y = {};\n function Generator() {}\n function GeneratorFunction() {}\n function GeneratorFunctionPrototype() {}\n var p = {};\n define(p, a, function () {\n return this;\n });\n var d = Object.getPrototypeOf,\n v = d && d(d(values([])));\n v && v !== r && n.call(v, a) && (p = v);\n var g = GeneratorFunctionPrototype.prototype = Generator.prototype = Object.create(p);\n function defineIteratorMethods(t) {\n [\"next\", \"throw\", \"return\"].forEach(function (e) {\n define(t, e, function (t) {\n return this._invoke(e, t);\n });\n });\n }\n function AsyncIterator(t, e) {\n function invoke(r, o, i, a) {\n var c = tryCatch(t[r], t, o);\n if (\"throw\" !== c.type) {\n var u = c.arg,\n h = u.value;\n return h && \"object\" == _typeof(h) && n.call(h, \"__await\") ? e.resolve(h.__await).then(function (t) {\n invoke(\"next\", t, i, a);\n }, function (t) {\n invoke(\"throw\", t, i, a);\n }) : e.resolve(h).then(function (t) {\n u.value = t, i(u);\n }, function (t) {\n return invoke(\"throw\", t, i, a);\n });\n }\n a(c.arg);\n }\n var r;\n o(this, \"_invoke\", {\n value: function value(t, n) {\n function callInvokeWithMethodAndArg() {\n return new e(function (e, r) {\n invoke(t, n, e, r);\n });\n }\n return r = r ? r.then(callInvokeWithMethodAndArg, callInvokeWithMethodAndArg) : callInvokeWithMethodAndArg();\n }\n });\n }\n function makeInvokeMethod(e, r, n) {\n var o = h;\n return function (i, a) {\n if (o === f) throw new Error(\"Generator is already running\");\n if (o === s) {\n if (\"throw\" === i) throw a;\n return {\n value: t,\n done: !0\n };\n }\n for (n.method = i, n.arg = a;;) {\n var c = n.delegate;\n if (c) {\n var u = maybeInvokeDelegate(c, n);\n if (u) {\n if (u === y) continue;\n return u;\n }\n }\n if (\"next\" === n.method) n.sent = n._sent = n.arg;else if (\"throw\" === n.method) {\n if (o === h) throw o = s, n.arg;\n n.dispatchException(n.arg);\n } else \"return\" === n.method && n.abrupt(\"return\", n.arg);\n o = f;\n var p = tryCatch(e, r, n);\n if (\"normal\" === p.type) {\n if (o = n.done ? s : l, p.arg === y) continue;\n return {\n value: p.arg,\n done: n.done\n };\n }\n \"throw\" === p.type && (o = s, n.method = \"throw\", n.arg = p.arg);\n }\n };\n }\n function maybeInvokeDelegate(e, r) {\n var n = r.method,\n o = e.iterator[n];\n if (o === t) return r.delegate = null, \"throw\" === n && e.iterator[\"return\"] && (r.method = \"return\", r.arg = t, maybeInvokeDelegate(e, r), \"throw\" === r.method) || \"return\" !== n && (r.method = \"throw\", r.arg = new TypeError(\"The iterator does not provide a '\" + n + \"' method\")), y;\n var i = tryCatch(o, e.iterator, r.arg);\n if (\"throw\" === i.type) return r.method = \"throw\", r.arg = i.arg, r.delegate = null, y;\n var a = i.arg;\n return a ? a.done ? (r[e.resultName] = a.value, r.next = e.nextLoc, \"return\" !== r.method && (r.method = \"next\", r.arg = t), r.delegate = null, y) : a : (r.method = \"throw\", r.arg = new TypeError(\"iterator result is not an object\"), r.delegate = null, y);\n }\n function pushTryEntry(t) {\n var e = {\n tryLoc: t[0]\n };\n 1 in t && (e.catchLoc = t[1]), 2 in t && (e.finallyLoc = t[2], e.afterLoc = t[3]), this.tryEntries.push(e);\n }\n function resetTryEntry(t) {\n var e = t.completion || {};\n e.type = \"normal\", delete e.arg, t.completion = e;\n }\n function Context(t) {\n this.tryEntries = [{\n tryLoc: \"root\"\n }], t.forEach(pushTryEntry, this), this.reset(!0);\n }\n function values(e) {\n if (e || \"\" === e) {\n var r = e[a];\n if (r) return r.call(e);\n if (\"function\" == typeof e.next) return e;\n if (!isNaN(e.length)) {\n var o = -1,\n i = function next() {\n for (; ++o < e.length;) if (n.call(e, o)) return next.value = e[o], next.done = !1, next;\n return next.value = t, next.done = !0, next;\n };\n return i.next = i;\n }\n }\n throw new TypeError(_typeof(e) + \" is not iterable\");\n }\n return GeneratorFunction.prototype = GeneratorFunctionPrototype, o(g, \"constructor\", {\n value: GeneratorFunctionPrototype,\n configurable: !0\n }), o(GeneratorFunctionPrototype, \"constructor\", {\n value: GeneratorFunction,\n configurable: !0\n }), GeneratorFunction.displayName = define(GeneratorFunctionPrototype, u, \"GeneratorFunction\"), e.isGeneratorFunction = function (t) {\n var e = \"function\" == typeof t && t.constructor;\n return !!e && (e === GeneratorFunction || \"GeneratorFunction\" === (e.displayName || e.name));\n }, e.mark = function (t) {\n return Object.setPrototypeOf ? Object.setPrototypeOf(t, GeneratorFunctionPrototype) : (t.__proto__ = GeneratorFunctionPrototype, define(t, u, \"GeneratorFunction\")), t.prototype = Object.create(g), t;\n }, e.awrap = function (t) {\n return {\n __await: t\n };\n }, defineIteratorMethods(AsyncIterator.prototype), define(AsyncIterator.prototype, c, function () {\n return this;\n }), e.AsyncIterator = AsyncIterator, e.async = function (t, r, n, o, i) {\n void 0 === i && (i = Promise);\n var a = new AsyncIterator(wrap(t, r, n, o), i);\n return e.isGeneratorFunction(r) ? a : a.next().then(function (t) {\n return t.done ? t.value : a.next();\n });\n }, defineIteratorMethods(g), define(g, u, \"Generator\"), define(g, a, function () {\n return this;\n }), define(g, \"toString\", function () {\n return \"[object Generator]\";\n }), e.keys = function (t) {\n var e = Object(t),\n r = [];\n for (var n in e) r.push(n);\n return r.reverse(), function next() {\n for (; r.length;) {\n var t = r.pop();\n if (t in e) return next.value = t, next.done = !1, next;\n }\n return next.done = !0, next;\n };\n }, e.values = values, Context.prototype = {\n constructor: Context,\n reset: function reset(e) {\n if (this.prev = 0, this.next = 0, this.sent = this._sent = t, this.done = !1, this.delegate = null, this.method = \"next\", this.arg = t, this.tryEntries.forEach(resetTryEntry), !e) for (var r in this) \"t\" === r.charAt(0) && n.call(this, r) && !isNaN(+r.slice(1)) && (this[r] = t);\n },\n stop: function stop() {\n this.done = !0;\n var t = this.tryEntries[0].completion;\n if (\"throw\" === t.type) throw t.arg;\n return this.rval;\n },\n dispatchException: function dispatchException(e) {\n if (this.done) throw e;\n var r = this;\n function handle(n, o) {\n return a.type = \"throw\", a.arg = e, r.next = n, o && (r.method = \"next\", r.arg = t), !!o;\n }\n for (var o = this.tryEntries.length - 1; o >= 0; --o) {\n var i = this.tryEntries[o],\n a = i.completion;\n if (\"root\" === i.tryLoc) return handle(\"end\");\n if (i.tryLoc <= this.prev) {\n var c = n.call(i, \"catchLoc\"),\n u = n.call(i, \"finallyLoc\");\n if (c && u) {\n if (this.prev < i.catchLoc) return handle(i.catchLoc, !0);\n if (this.prev < i.finallyLoc) return handle(i.finallyLoc);\n } else if (c) {\n if (this.prev < i.catchLoc) return handle(i.catchLoc, !0);\n } else {\n if (!u) throw new Error(\"try statement without catch or finally\");\n if (this.prev < i.finallyLoc) return handle(i.finallyLoc);\n }\n }\n }\n },\n abrupt: function abrupt(t, e) {\n for (var r = this.tryEntries.length - 1; r >= 0; --r) {\n var o = this.tryEntries[r];\n if (o.tryLoc <= this.prev && n.call(o, \"finallyLoc\") && this.prev < o.finallyLoc) {\n var i = o;\n break;\n }\n }\n i && (\"break\" === t || \"continue\" === t) && i.tryLoc <= e && e <= i.finallyLoc && (i = null);\n var a = i ? i.completion : {};\n return a.type = t, a.arg = e, i ? (this.method = \"next\", this.next = i.finallyLoc, y) : this.complete(a);\n },\n complete: function complete(t, e) {\n if (\"throw\" === t.type) throw t.arg;\n return \"break\" === t.type || \"continue\" === t.type ? this.next = t.arg : \"return\" === t.type ? (this.rval = this.arg = t.arg, this.method = \"return\", this.next = \"end\") : \"normal\" === t.type && e && (this.next = e), y;\n },\n finish: function finish(t) {\n for (var e = this.tryEntries.length - 1; e >= 0; --e) {\n var r = this.tryEntries[e];\n if (r.finallyLoc === t) return this.complete(r.completion, r.afterLoc), resetTryEntry(r), y;\n }\n },\n \"catch\": function _catch(t) {\n for (var e = this.tryEntries.length - 1; e >= 0; --e) {\n var r = this.tryEntries[e];\n if (r.tryLoc === t) {\n var n = r.completion;\n if (\"throw\" === n.type) {\n var o = n.arg;\n resetTryEntry(r);\n }\n return o;\n }\n }\n throw new Error(\"illegal catch attempt\");\n },\n delegateYield: function delegateYield(e, r, n) {\n return this.delegate = {\n iterator: values(e),\n resultName: r,\n nextLoc: n\n }, \"next\" === this.method && (this.arg = t), y;\n }\n }, e;\n}\nmodule.exports = _regeneratorRuntime, module.exports.__esModule = true, module.exports[\"default\"] = module.exports;","function _typeof(o) {\n \"@babel/helpers - typeof\";\n\n return (module.exports = _typeof = \"function\" == typeof Symbol && \"symbol\" == typeof Symbol.iterator ? function (o) {\n return typeof o;\n } : function (o) {\n return o && \"function\" == typeof Symbol && o.constructor === Symbol && o !== Symbol.prototype ? \"symbol\" : typeof o;\n }, module.exports.__esModule = true, module.exports[\"default\"] = module.exports), _typeof(o);\n}\nmodule.exports = _typeof, module.exports.__esModule = true, module.exports[\"default\"] = module.exports;","// TODO(Babel 8): Remove this file.\n\nvar runtime = require(\"../helpers/regeneratorRuntime\")();\nmodule.exports = runtime;\n\n// Copied from https://github.com/facebook/regenerator/blob/main/packages/runtime/runtime.js#L736=\ntry {\n regeneratorRuntime = runtime;\n} catch (accidentalStrictMode) {\n if (typeof globalThis === \"object\") {\n globalThis.regeneratorRuntime = runtime;\n } else {\n Function(\"r\", \"regeneratorRuntime = r\")(runtime);\n }\n}\n","export default function _arrayLikeToArray(arr, len) {\n if (len == null || len > arr.length) len = arr.length;\n for (var i = 0, arr2 = new Array(len); i < len; i++) arr2[i] = arr[i];\n return arr2;\n}","export default function _arrayWithHoles(arr) {\n if (Array.isArray(arr)) return arr;\n}","import arrayLikeToArray from \"./arrayLikeToArray.js\";\nexport default function _arrayWithoutHoles(arr) {\n if (Array.isArray(arr)) return arrayLikeToArray(arr);\n}","export default function _assertThisInitialized(self) {\n if (self === void 0) {\n throw new ReferenceError(\"this hasn't been initialised - super() hasn't been called\");\n }\n return self;\n}","function asyncGeneratorStep(gen, resolve, reject, _next, _throw, key, arg) {\n try {\n var info = gen[key](arg);\n var value = info.value;\n } catch (error) {\n reject(error);\n return;\n }\n if (info.done) {\n resolve(value);\n } else {\n Promise.resolve(value).then(_next, _throw);\n }\n}\nexport default function _asyncToGenerator(fn) {\n return function () {\n var self = this,\n args = arguments;\n return new Promise(function (resolve, reject) {\n var gen = fn.apply(self, args);\n function _next(value) {\n asyncGeneratorStep(gen, resolve, reject, _next, _throw, \"next\", value);\n }\n function _throw(err) {\n asyncGeneratorStep(gen, resolve, reject, _next, _throw, \"throw\", err);\n }\n _next(undefined);\n });\n };\n}","export default function _classCallCheck(instance, Constructor) {\n if (!(instance instanceof Constructor)) {\n throw new TypeError(\"Cannot call a class as a function\");\n }\n}","import setPrototypeOf from \"./setPrototypeOf.js\";\nimport isNativeReflectConstruct from \"./isNativeReflectConstruct.js\";\nexport default function _construct(t, e, r) {\n if (isNativeReflectConstruct()) return Reflect.construct.apply(null, arguments);\n var o = [null];\n o.push.apply(o, e);\n var p = new (t.bind.apply(t, o))();\n return r && setPrototypeOf(p, r.prototype), p;\n}","import toPropertyKey from \"./toPropertyKey.js\";\nfunction _defineProperties(target, props) {\n for (var i = 0; i < props.length; i++) {\n var descriptor = props[i];\n descriptor.enumerable = descriptor.enumerable || false;\n descriptor.configurable = true;\n if (\"value\" in descriptor) descriptor.writable = true;\n Object.defineProperty(target, toPropertyKey(descriptor.key), descriptor);\n }\n}\nexport default function _createClass(Constructor, protoProps, staticProps) {\n if (protoProps) _defineProperties(Constructor.prototype, protoProps);\n if (staticProps) _defineProperties(Constructor, staticProps);\n Object.defineProperty(Constructor, \"prototype\", {\n writable: false\n });\n return Constructor;\n}","import toPropertyKey from \"./toPropertyKey.js\";\nexport default function _defineProperty(obj, key, value) {\n key = toPropertyKey(key);\n if (key in obj) {\n Object.defineProperty(obj, key, {\n value: value,\n enumerable: true,\n configurable: true,\n writable: true\n });\n } else {\n obj[key] = value;\n }\n return obj;\n}","export default function _getPrototypeOf(o) {\n _getPrototypeOf = Object.setPrototypeOf ? Object.getPrototypeOf.bind() : function _getPrototypeOf(o) {\n return o.__proto__ || Object.getPrototypeOf(o);\n };\n return _getPrototypeOf(o);\n}","import setPrototypeOf from \"./setPrototypeOf.js\";\nexport default function _inherits(subClass, superClass) {\n if (typeof superClass !== \"function\" && superClass !== null) {\n throw new TypeError(\"Super expression must either be null or a function\");\n }\n subClass.prototype = Object.create(superClass && superClass.prototype, {\n constructor: {\n value: subClass,\n writable: true,\n configurable: true\n }\n });\n Object.defineProperty(subClass, \"prototype\", {\n writable: false\n });\n if (superClass) setPrototypeOf(subClass, superClass);\n}","export default function _isNativeFunction(fn) {\n try {\n return Function.toString.call(fn).indexOf(\"[native code]\") !== -1;\n } catch (e) {\n return typeof fn === \"function\";\n }\n}","export default function _isNativeReflectConstruct() {\n try {\n var t = !Boolean.prototype.valueOf.call(Reflect.construct(Boolean, [], function () {}));\n } catch (t) {}\n return (_isNativeReflectConstruct = function _isNativeReflectConstruct() {\n return !!t;\n })();\n}","export default function _iterableToArray(iter) {\n if (typeof Symbol !== \"undefined\" && iter[Symbol.iterator] != null || iter[\"@@iterator\"] != null) return Array.from(iter);\n}","export default function _iterableToArrayLimit(r, l) {\n var t = null == r ? null : \"undefined\" != typeof Symbol && r[Symbol.iterator] || r[\"@@iterator\"];\n if (null != t) {\n var e,\n n,\n i,\n u,\n a = [],\n f = !0,\n o = !1;\n try {\n if (i = (t = t.call(r)).next, 0 === l) {\n if (Object(t) !== t) return;\n f = !1;\n } else for (; !(f = (e = i.call(t)).done) && (a.push(e.value), a.length !== l); f = !0);\n } catch (r) {\n o = !0, n = r;\n } finally {\n try {\n if (!f && null != t[\"return\"] && (u = t[\"return\"](), Object(u) !== u)) return;\n } finally {\n if (o) throw n;\n }\n }\n return a;\n }\n}","export default function _nonIterableRest() {\n throw new TypeError(\"Invalid attempt to destructure non-iterable instance.\\nIn order to be iterable, non-array objects must have a [Symbol.iterator]() method.\");\n}","export default function _nonIterableSpread() {\n throw new TypeError(\"Invalid attempt to spread non-iterable instance.\\nIn order to be iterable, non-array objects must have a [Symbol.iterator]() method.\");\n}","import _typeof from \"./typeof.js\";\nimport assertThisInitialized from \"./assertThisInitialized.js\";\nexport default function _possibleConstructorReturn(self, call) {\n if (call && (_typeof(call) === \"object\" || typeof call === \"function\")) {\n return call;\n } else if (call !== void 0) {\n throw new TypeError(\"Derived constructors may only return object or undefined\");\n }\n return assertThisInitialized(self);\n}","export default function _setPrototypeOf(o, p) {\n _setPrototypeOf = Object.setPrototypeOf ? Object.setPrototypeOf.bind() : function _setPrototypeOf(o, p) {\n o.__proto__ = p;\n return o;\n };\n return _setPrototypeOf(o, p);\n}","import arrayWithHoles from \"./arrayWithHoles.js\";\nimport iterableToArrayLimit from \"./iterableToArrayLimit.js\";\nimport unsupportedIterableToArray from \"./unsupportedIterableToArray.js\";\nimport nonIterableRest from \"./nonIterableRest.js\";\nexport default function _slicedToArray(arr, i) {\n return arrayWithHoles(arr) || iterableToArrayLimit(arr, i) || unsupportedIterableToArray(arr, i) || nonIterableRest();\n}","import arrayWithoutHoles from \"./arrayWithoutHoles.js\";\nimport iterableToArray from \"./iterableToArray.js\";\nimport unsupportedIterableToArray from \"./unsupportedIterableToArray.js\";\nimport nonIterableSpread from \"./nonIterableSpread.js\";\nexport default function _toConsumableArray(arr) {\n return arrayWithoutHoles(arr) || iterableToArray(arr) || unsupportedIterableToArray(arr) || nonIterableSpread();\n}","import _typeof from \"./typeof.js\";\nexport default function toPrimitive(t, r) {\n if (\"object\" != _typeof(t) || !t) return t;\n var e = t[Symbol.toPrimitive];\n if (void 0 !== e) {\n var i = e.call(t, r || \"default\");\n if (\"object\" != _typeof(i)) return i;\n throw new TypeError(\"@@toPrimitive must return a primitive value.\");\n }\n return (\"string\" === r ? String : Number)(t);\n}","import _typeof from \"./typeof.js\";\nimport toPrimitive from \"./toPrimitive.js\";\nexport default function toPropertyKey(t) {\n var i = toPrimitive(t, \"string\");\n return \"symbol\" == _typeof(i) ? i : String(i);\n}","export default function _typeof(o) {\n \"@babel/helpers - typeof\";\n\n return _typeof = \"function\" == typeof Symbol && \"symbol\" == typeof Symbol.iterator ? function (o) {\n return typeof o;\n } : function (o) {\n return o && \"function\" == typeof Symbol && o.constructor === Symbol && o !== Symbol.prototype ? \"symbol\" : typeof o;\n }, _typeof(o);\n}","import arrayLikeToArray from \"./arrayLikeToArray.js\";\nexport default function _unsupportedIterableToArray(o, minLen) {\n if (!o) return;\n if (typeof o === \"string\") return arrayLikeToArray(o, minLen);\n var n = Object.prototype.toString.call(o).slice(8, -1);\n if (n === \"Object\" && o.constructor) n = o.constructor.name;\n if (n === \"Map\" || n === \"Set\") return Array.from(o);\n if (n === \"Arguments\" || /^(?:Ui|I)nt(?:8|16|32)(?:Clamped)?Array$/.test(n)) return arrayLikeToArray(o, minLen);\n}","import getPrototypeOf from \"./getPrototypeOf.js\";\nimport setPrototypeOf from \"./setPrototypeOf.js\";\nimport isNativeFunction from \"./isNativeFunction.js\";\nimport construct from \"./construct.js\";\nexport default function _wrapNativeSuper(Class) {\n var _cache = typeof Map === \"function\" ? new Map() : undefined;\n _wrapNativeSuper = function _wrapNativeSuper(Class) {\n if (Class === null || !isNativeFunction(Class)) return Class;\n if (typeof Class !== \"function\") {\n throw new TypeError(\"Super expression must either be null or a function\");\n }\n if (typeof _cache !== \"undefined\") {\n if (_cache.has(Class)) return _cache.get(Class);\n _cache.set(Class, Wrapper);\n }\n function Wrapper() {\n return construct(Class, arguments, getPrototypeOf(this).constructor);\n }\n Wrapper.prototype = Object.create(Class.prototype, {\n constructor: {\n value: Wrapper,\n enumerable: false,\n writable: true,\n configurable: true\n }\n });\n return setPrototypeOf(Wrapper, Class);\n };\n return _wrapNativeSuper(Class);\n}","import utils from '../utils.js';\nimport httpAdapter from './http.js';\nimport xhrAdapter from './xhr.js';\nimport fetchAdapter from './fetch.js';\nimport AxiosError from \"../core/AxiosError.js\";\n\nconst knownAdapters = {\n http: httpAdapter,\n xhr: xhrAdapter,\n fetch: fetchAdapter\n}\n\nutils.forEach(knownAdapters, (fn, value) => {\n if (fn) {\n try {\n Object.defineProperty(fn, 'name', {value});\n } catch (e) {\n // eslint-disable-next-line no-empty\n }\n Object.defineProperty(fn, 'adapterName', {value});\n }\n});\n\nconst renderReason = (reason) => `- ${reason}`;\n\nconst isResolvedHandle = (adapter) => utils.isFunction(adapter) || adapter === null || adapter === false;\n\nexport default {\n getAdapter: (adapters) => {\n adapters = utils.isArray(adapters) ? adapters : [adapters];\n\n const {length} = adapters;\n let nameOrAdapter;\n let adapter;\n\n const rejectedReasons = {};\n\n for (let i = 0; i < length; i++) {\n nameOrAdapter = adapters[i];\n let id;\n\n adapter = nameOrAdapter;\n\n if (!isResolvedHandle(nameOrAdapter)) {\n adapter = knownAdapters[(id = String(nameOrAdapter)).toLowerCase()];\n\n if (adapter === undefined) {\n throw new AxiosError(`Unknown adapter '${id}'`);\n }\n }\n\n if (adapter) {\n break;\n }\n\n rejectedReasons[id || '#' + i] = adapter;\n }\n\n if (!adapter) {\n\n const reasons = Object.entries(rejectedReasons)\n .map(([id, state]) => `adapter ${id} ` +\n (state === false ? 'is not supported by the environment' : 'is not available in the build')\n );\n\n let s = length ?\n (reasons.length > 1 ? 'since :\\n' + reasons.map(renderReason).join('\\n') : ' ' + renderReason(reasons[0])) :\n 'as no adapter specified';\n\n throw new AxiosError(\n `There is no suitable adapter to dispatch the request ` + s,\n 'ERR_NOT_SUPPORT'\n );\n }\n\n return adapter;\n },\n adapters: knownAdapters\n}\n","import platform from \"../platform/index.js\";\nimport utils from \"../utils.js\";\nimport AxiosError from \"../core/AxiosError.js\";\nimport composeSignals from \"../helpers/composeSignals.js\";\nimport {trackStream} from \"../helpers/trackStream.js\";\nimport AxiosHeaders from \"../core/AxiosHeaders.js\";\nimport {progressEventReducer, progressEventDecorator, asyncDecorator} from \"../helpers/progressEventReducer.js\";\nimport resolveConfig from \"../helpers/resolveConfig.js\";\nimport settle from \"../core/settle.js\";\n\nconst isFetchSupported = typeof fetch === 'function' && typeof Request === 'function' && typeof Response === 'function';\nconst isReadableStreamSupported = isFetchSupported && typeof ReadableStream === 'function';\n\n// used only inside the fetch adapter\nconst encodeText = isFetchSupported && (typeof TextEncoder === 'function' ?\n ((encoder) => (str) => encoder.encode(str))(new TextEncoder()) :\n async (str) => new Uint8Array(await new Response(str).arrayBuffer())\n);\n\nconst test = (fn, ...args) => {\n try {\n return !!fn(...args);\n } catch (e) {\n return false\n }\n}\n\nconst supportsRequestStream = isReadableStreamSupported && test(() => {\n let duplexAccessed = false;\n\n const hasContentType = new Request(platform.origin, {\n body: new ReadableStream(),\n method: 'POST',\n get duplex() {\n duplexAccessed = true;\n return 'half';\n },\n }).headers.has('Content-Type');\n\n return duplexAccessed && !hasContentType;\n});\n\nconst DEFAULT_CHUNK_SIZE = 64 * 1024;\n\nconst supportsResponseStream = isReadableStreamSupported &&\n test(() => utils.isReadableStream(new Response('').body));\n\n\nconst resolvers = {\n stream: supportsResponseStream && ((res) => res.body)\n};\n\nisFetchSupported && (((res) => {\n ['text', 'arrayBuffer', 'blob', 'formData', 'stream'].forEach(type => {\n !resolvers[type] && (resolvers[type] = utils.isFunction(res[type]) ? (res) => res[type]() :\n (_, config) => {\n throw new AxiosError(`Response type '${type}' is not supported`, AxiosError.ERR_NOT_SUPPORT, config);\n })\n });\n})(new Response));\n\nconst getBodyLength = async (body) => {\n if (body == null) {\n return 0;\n }\n\n if(utils.isBlob(body)) {\n return body.size;\n }\n\n if(utils.isSpecCompliantForm(body)) {\n return (await new Request(body).arrayBuffer()).byteLength;\n }\n\n if(utils.isArrayBufferView(body) || utils.isArrayBuffer(body)) {\n return body.byteLength;\n }\n\n if(utils.isURLSearchParams(body)) {\n body = body + '';\n }\n\n if(utils.isString(body)) {\n return (await encodeText(body)).byteLength;\n }\n}\n\nconst resolveBodyLength = async (headers, body) => {\n const length = utils.toFiniteNumber(headers.getContentLength());\n\n return length == null ? getBodyLength(body) : length;\n}\n\nexport default isFetchSupported && (async (config) => {\n let {\n url,\n method,\n data,\n signal,\n cancelToken,\n timeout,\n onDownloadProgress,\n onUploadProgress,\n responseType,\n headers,\n withCredentials = 'same-origin',\n fetchOptions\n } = resolveConfig(config);\n\n responseType = responseType ? (responseType + '').toLowerCase() : 'text';\n\n let [composedSignal, stopTimeout] = (signal || cancelToken || timeout) ?\n composeSignals([signal, cancelToken], timeout) : [];\n\n let finished, request;\n\n const onFinish = () => {\n !finished && setTimeout(() => {\n composedSignal && composedSignal.unsubscribe();\n });\n\n finished = true;\n }\n\n let requestContentLength;\n\n try {\n if (\n onUploadProgress && supportsRequestStream && method !== 'get' && method !== 'head' &&\n (requestContentLength = await resolveBodyLength(headers, data)) !== 0\n ) {\n let _request = new Request(url, {\n method: 'POST',\n body: data,\n duplex: \"half\"\n });\n\n let contentTypeHeader;\n\n if (utils.isFormData(data) && (contentTypeHeader = _request.headers.get('content-type'))) {\n headers.setContentType(contentTypeHeader)\n }\n\n if (_request.body) {\n const [onProgress, flush] = progressEventDecorator(\n requestContentLength,\n progressEventReducer(asyncDecorator(onUploadProgress))\n );\n\n data = trackStream(_request.body, DEFAULT_CHUNK_SIZE, onProgress, flush, encodeText);\n }\n }\n\n if (!utils.isString(withCredentials)) {\n withCredentials = withCredentials ? 'include' : 'omit';\n }\n\n // Cloudflare Workers throws when credentials are defined\n // see https://github.com/cloudflare/workerd/issues/902\n const isCredentialsSupported = \"credentials\" in Request.prototype; \n request = new Request(url, {\n ...fetchOptions,\n signal: composedSignal,\n method: method.toUpperCase(),\n headers: headers.normalize().toJSON(),\n body: data,\n duplex: \"half\",\n credentials: isCredentialsSupported ? withCredentials : undefined\n });\n\n let response = await fetch(request);\n\n const isStreamResponse = supportsResponseStream && (responseType === 'stream' || responseType === 'response');\n\n if (supportsResponseStream && (onDownloadProgress || isStreamResponse)) {\n const options = {};\n\n ['status', 'statusText', 'headers'].forEach(prop => {\n options[prop] = response[prop];\n });\n\n const responseContentLength = utils.toFiniteNumber(response.headers.get('content-length'));\n\n const [onProgress, flush] = onDownloadProgress && progressEventDecorator(\n responseContentLength,\n progressEventReducer(asyncDecorator(onDownloadProgress), true)\n ) || [];\n\n response = new Response(\n trackStream(response.body, DEFAULT_CHUNK_SIZE, onProgress, () => {\n flush && flush();\n isStreamResponse && onFinish();\n }, encodeText),\n options\n );\n }\n\n responseType = responseType || 'text';\n\n let responseData = await resolvers[utils.findKey(resolvers, responseType) || 'text'](response, config);\n\n !isStreamResponse && onFinish();\n\n stopTimeout && stopTimeout();\n\n return await new Promise((resolve, reject) => {\n settle(resolve, reject, {\n data: responseData,\n headers: AxiosHeaders.from(response.headers),\n status: response.status,\n statusText: response.statusText,\n config,\n request\n })\n })\n } catch (err) {\n onFinish();\n\n if (err && err.name === 'TypeError' && /fetch/i.test(err.message)) {\n throw Object.assign(\n new AxiosError('Network Error', AxiosError.ERR_NETWORK, config, request),\n {\n cause: err.cause || err\n }\n )\n }\n\n throw AxiosError.from(err, err && err.code, config, request);\n }\n});\n\n\n","import utils from './../utils.js';\nimport settle from './../core/settle.js';\nimport transitionalDefaults from '../defaults/transitional.js';\nimport AxiosError from '../core/AxiosError.js';\nimport CanceledError from '../cancel/CanceledError.js';\nimport parseProtocol from '../helpers/parseProtocol.js';\nimport platform from '../platform/index.js';\nimport AxiosHeaders from '../core/AxiosHeaders.js';\nimport {progressEventReducer} from '../helpers/progressEventReducer.js';\nimport resolveConfig from \"../helpers/resolveConfig.js\";\n\nconst isXHRAdapterSupported = typeof XMLHttpRequest !== 'undefined';\n\nexport default isXHRAdapterSupported && function (config) {\n return new Promise(function dispatchXhrRequest(resolve, reject) {\n const _config = resolveConfig(config);\n let requestData = _config.data;\n const requestHeaders = AxiosHeaders.from(_config.headers).normalize();\n let {responseType, onUploadProgress, onDownloadProgress} = _config;\n let onCanceled;\n let uploadThrottled, downloadThrottled;\n let flushUpload, flushDownload;\n\n function done() {\n flushUpload && flushUpload(); // flush events\n flushDownload && flushDownload(); // flush events\n\n _config.cancelToken && _config.cancelToken.unsubscribe(onCanceled);\n\n _config.signal && _config.signal.removeEventListener('abort', onCanceled);\n }\n\n let request = new XMLHttpRequest();\n\n request.open(_config.method.toUpperCase(), _config.url, true);\n\n // Set the request timeout in MS\n request.timeout = _config.timeout;\n\n function onloadend() {\n if (!request) {\n return;\n }\n // Prepare the response\n const responseHeaders = AxiosHeaders.from(\n 'getAllResponseHeaders' in request && request.getAllResponseHeaders()\n );\n const responseData = !responseType || responseType === 'text' || responseType === 'json' ?\n request.responseText : request.response;\n const response = {\n data: responseData,\n status: request.status,\n statusText: request.statusText,\n headers: responseHeaders,\n config,\n request\n };\n\n settle(function _resolve(value) {\n resolve(value);\n done();\n }, function _reject(err) {\n reject(err);\n done();\n }, response);\n\n // Clean up request\n request = null;\n }\n\n if ('onloadend' in request) {\n // Use onloadend if available\n request.onloadend = onloadend;\n } else {\n // Listen for ready state to emulate onloadend\n request.onreadystatechange = function handleLoad() {\n if (!request || request.readyState !== 4) {\n return;\n }\n\n // The request errored out and we didn't get a response, this will be\n // handled by onerror instead\n // With one exception: request that using file: protocol, most browsers\n // will return status as 0 even though it's a successful request\n if (request.status === 0 && !(request.responseURL && request.responseURL.indexOf('file:') === 0)) {\n return;\n }\n // readystate handler is calling before onerror or ontimeout handlers,\n // so we should call onloadend on the next 'tick'\n setTimeout(onloadend);\n };\n }\n\n // Handle browser request cancellation (as opposed to a manual cancellation)\n request.onabort = function handleAbort() {\n if (!request) {\n return;\n }\n\n reject(new AxiosError('Request aborted', AxiosError.ECONNABORTED, config, request));\n\n // Clean up request\n request = null;\n };\n\n // Handle low level network errors\n request.onerror = function handleError() {\n // Real errors are hidden from us by the browser\n // onerror should only fire if it's a network error\n reject(new AxiosError('Network Error', AxiosError.ERR_NETWORK, config, request));\n\n // Clean up request\n request = null;\n };\n\n // Handle timeout\n request.ontimeout = function handleTimeout() {\n let timeoutErrorMessage = _config.timeout ? 'timeout of ' + _config.timeout + 'ms exceeded' : 'timeout exceeded';\n const transitional = _config.transitional || transitionalDefaults;\n if (_config.timeoutErrorMessage) {\n timeoutErrorMessage = _config.timeoutErrorMessage;\n }\n reject(new AxiosError(\n timeoutErrorMessage,\n transitional.clarifyTimeoutError ? AxiosError.ETIMEDOUT : AxiosError.ECONNABORTED,\n config,\n request));\n\n // Clean up request\n request = null;\n };\n\n // Remove Content-Type if data is undefined\n requestData === undefined && requestHeaders.setContentType(null);\n\n // Add headers to the request\n if ('setRequestHeader' in request) {\n utils.forEach(requestHeaders.toJSON(), function setRequestHeader(val, key) {\n request.setRequestHeader(key, val);\n });\n }\n\n // Add withCredentials to request if needed\n if (!utils.isUndefined(_config.withCredentials)) {\n request.withCredentials = !!_config.withCredentials;\n }\n\n // Add responseType to request if needed\n if (responseType && responseType !== 'json') {\n request.responseType = _config.responseType;\n }\n\n // Handle progress if needed\n if (onDownloadProgress) {\n ([downloadThrottled, flushDownload] = progressEventReducer(onDownloadProgress, true));\n request.addEventListener('progress', downloadThrottled);\n }\n\n // Not all browsers support upload events\n if (onUploadProgress && request.upload) {\n ([uploadThrottled, flushUpload] = progressEventReducer(onUploadProgress));\n\n request.upload.addEventListener('progress', uploadThrottled);\n\n request.upload.addEventListener('loadend', flushUpload);\n }\n\n if (_config.cancelToken || _config.signal) {\n // Handle cancellation\n // eslint-disable-next-line func-names\n onCanceled = cancel => {\n if (!request) {\n return;\n }\n reject(!cancel || cancel.type ? new CanceledError(null, config, request) : cancel);\n request.abort();\n request = null;\n };\n\n _config.cancelToken && _config.cancelToken.subscribe(onCanceled);\n if (_config.signal) {\n _config.signal.aborted ? onCanceled() : _config.signal.addEventListener('abort', onCanceled);\n }\n }\n\n const protocol = parseProtocol(_config.url);\n\n if (protocol && platform.protocols.indexOf(protocol) === -1) {\n reject(new AxiosError('Unsupported protocol ' + protocol + ':', AxiosError.ERR_BAD_REQUEST, config));\n return;\n }\n\n\n // Send the request\n request.send(requestData || null);\n });\n}\n","'use strict';\n\nimport utils from './utils.js';\nimport bind from './helpers/bind.js';\nimport Axios from './core/Axios.js';\nimport mergeConfig from './core/mergeConfig.js';\nimport defaults from './defaults/index.js';\nimport formDataToJSON from './helpers/formDataToJSON.js';\nimport CanceledError from './cancel/CanceledError.js';\nimport CancelToken from './cancel/CancelToken.js';\nimport isCancel from './cancel/isCancel.js';\nimport {VERSION} from './env/data.js';\nimport toFormData from './helpers/toFormData.js';\nimport AxiosError from './core/AxiosError.js';\nimport spread from './helpers/spread.js';\nimport isAxiosError from './helpers/isAxiosError.js';\nimport AxiosHeaders from \"./core/AxiosHeaders.js\";\nimport adapters from './adapters/adapters.js';\nimport HttpStatusCode from './helpers/HttpStatusCode.js';\n\n/**\n * Create an instance of Axios\n *\n * @param {Object} defaultConfig The default config for the instance\n *\n * @returns {Axios} A new instance of Axios\n */\nfunction createInstance(defaultConfig) {\n const context = new Axios(defaultConfig);\n const instance = bind(Axios.prototype.request, context);\n\n // Copy axios.prototype to instance\n utils.extend(instance, Axios.prototype, context, {allOwnKeys: true});\n\n // Copy context to instance\n utils.extend(instance, context, null, {allOwnKeys: true});\n\n // Factory for creating new instances\n instance.create = function create(instanceConfig) {\n return createInstance(mergeConfig(defaultConfig, instanceConfig));\n };\n\n return instance;\n}\n\n// Create the default instance to be exported\nconst axios = createInstance(defaults);\n\n// Expose Axios class to allow class inheritance\naxios.Axios = Axios;\n\n// Expose Cancel & CancelToken\naxios.CanceledError = CanceledError;\naxios.CancelToken = CancelToken;\naxios.isCancel = isCancel;\naxios.VERSION = VERSION;\naxios.toFormData = toFormData;\n\n// Expose AxiosError class\naxios.AxiosError = AxiosError;\n\n// alias for CanceledError for backward compatibility\naxios.Cancel = axios.CanceledError;\n\n// Expose all/spread\naxios.all = function all(promises) {\n return Promise.all(promises);\n};\n\naxios.spread = spread;\n\n// Expose isAxiosError\naxios.isAxiosError = isAxiosError;\n\n// Expose mergeConfig\naxios.mergeConfig = mergeConfig;\n\naxios.AxiosHeaders = AxiosHeaders;\n\naxios.formToJSON = thing => formDataToJSON(utils.isHTMLForm(thing) ? new FormData(thing) : thing);\n\naxios.getAdapter = adapters.getAdapter;\n\naxios.HttpStatusCode = HttpStatusCode;\n\naxios.default = axios;\n\n// this module should only have a default export\nexport default axios\n","'use strict';\n\nimport CanceledError from './CanceledError.js';\n\n/**\n * A `CancelToken` is an object that can be used to request cancellation of an operation.\n *\n * @param {Function} executor The executor function.\n *\n * @returns {CancelToken}\n */\nclass CancelToken {\n constructor(executor) {\n if (typeof executor !== 'function') {\n throw new TypeError('executor must be a function.');\n }\n\n let resolvePromise;\n\n this.promise = new Promise(function promiseExecutor(resolve) {\n resolvePromise = resolve;\n });\n\n const token = this;\n\n // eslint-disable-next-line func-names\n this.promise.then(cancel => {\n if (!token._listeners) return;\n\n let i = token._listeners.length;\n\n while (i-- > 0) {\n token._listeners[i](cancel);\n }\n token._listeners = null;\n });\n\n // eslint-disable-next-line func-names\n this.promise.then = onfulfilled => {\n let _resolve;\n // eslint-disable-next-line func-names\n const promise = new Promise(resolve => {\n token.subscribe(resolve);\n _resolve = resolve;\n }).then(onfulfilled);\n\n promise.cancel = function reject() {\n token.unsubscribe(_resolve);\n };\n\n return promise;\n };\n\n executor(function cancel(message, config, request) {\n if (token.reason) {\n // Cancellation has already been requested\n return;\n }\n\n token.reason = new CanceledError(message, config, request);\n resolvePromise(token.reason);\n });\n }\n\n /**\n * Throws a `CanceledError` if cancellation has been requested.\n */\n throwIfRequested() {\n if (this.reason) {\n throw this.reason;\n }\n }\n\n /**\n * Subscribe to the cancel signal\n */\n\n subscribe(listener) {\n if (this.reason) {\n listener(this.reason);\n return;\n }\n\n if (this._listeners) {\n this._listeners.push(listener);\n } else {\n this._listeners = [listener];\n }\n }\n\n /**\n * Unsubscribe from the cancel signal\n */\n\n unsubscribe(listener) {\n if (!this._listeners) {\n return;\n }\n const index = this._listeners.indexOf(listener);\n if (index !== -1) {\n this._listeners.splice(index, 1);\n }\n }\n\n /**\n * Returns an object that contains a new `CancelToken` and a function that, when called,\n * cancels the `CancelToken`.\n */\n static source() {\n let cancel;\n const token = new CancelToken(function executor(c) {\n cancel = c;\n });\n return {\n token,\n cancel\n };\n }\n}\n\nexport default CancelToken;\n","'use strict';\n\nimport AxiosError from '../core/AxiosError.js';\nimport utils from '../utils.js';\n\n/**\n * A `CanceledError` is an object that is thrown when an operation is canceled.\n *\n * @param {string=} message The message.\n * @param {Object=} config The config.\n * @param {Object=} request The request.\n *\n * @returns {CanceledError} The created error.\n */\nfunction CanceledError(message, config, request) {\n // eslint-disable-next-line no-eq-null,eqeqeq\n AxiosError.call(this, message == null ? 'canceled' : message, AxiosError.ERR_CANCELED, config, request);\n this.name = 'CanceledError';\n}\n\nutils.inherits(CanceledError, AxiosError, {\n __CANCEL__: true\n});\n\nexport default CanceledError;\n","'use strict';\n\nexport default function isCancel(value) {\n return !!(value && value.__CANCEL__);\n}\n","'use strict';\n\nimport utils from './../utils.js';\nimport buildURL from '../helpers/buildURL.js';\nimport InterceptorManager from './InterceptorManager.js';\nimport dispatchRequest from './dispatchRequest.js';\nimport mergeConfig from './mergeConfig.js';\nimport buildFullPath from './buildFullPath.js';\nimport validator from '../helpers/validator.js';\nimport AxiosHeaders from './AxiosHeaders.js';\n\nconst validators = validator.validators;\n\n/**\n * Create a new instance of Axios\n *\n * @param {Object} instanceConfig The default config for the instance\n *\n * @return {Axios} A new instance of Axios\n */\nclass Axios {\n constructor(instanceConfig) {\n this.defaults = instanceConfig;\n this.interceptors = {\n request: new InterceptorManager(),\n response: new InterceptorManager()\n };\n }\n\n /**\n * Dispatch a request\n *\n * @param {String|Object} configOrUrl The config specific for this request (merged with this.defaults)\n * @param {?Object} config\n *\n * @returns {Promise} The Promise to be fulfilled\n */\n async request(configOrUrl, config) {\n try {\n return await this._request(configOrUrl, config);\n } catch (err) {\n if (err instanceof Error) {\n let dummy;\n\n Error.captureStackTrace ? Error.captureStackTrace(dummy = {}) : (dummy = new Error());\n\n // slice off the Error: ... line\n const stack = dummy.stack ? dummy.stack.replace(/^.+\\n/, '') : '';\n try {\n if (!err.stack) {\n err.stack = stack;\n // match without the 2 top stack lines\n } else if (stack && !String(err.stack).endsWith(stack.replace(/^.+\\n.+\\n/, ''))) {\n err.stack += '\\n' + stack\n }\n } catch (e) {\n // ignore the case where \"stack\" is an un-writable property\n }\n }\n\n throw err;\n }\n }\n\n _request(configOrUrl, config) {\n /*eslint no-param-reassign:0*/\n // Allow for axios('example/url'[, config]) a la fetch API\n if (typeof configOrUrl === 'string') {\n config = config || {};\n config.url = configOrUrl;\n } else {\n config = configOrUrl || {};\n }\n\n config = mergeConfig(this.defaults, config);\n\n const {transitional, paramsSerializer, headers} = config;\n\n if (transitional !== undefined) {\n validator.assertOptions(transitional, {\n silentJSONParsing: validators.transitional(validators.boolean),\n forcedJSONParsing: validators.transitional(validators.boolean),\n clarifyTimeoutError: validators.transitional(validators.boolean)\n }, false);\n }\n\n if (paramsSerializer != null) {\n if (utils.isFunction(paramsSerializer)) {\n config.paramsSerializer = {\n serialize: paramsSerializer\n }\n } else {\n validator.assertOptions(paramsSerializer, {\n encode: validators.function,\n serialize: validators.function\n }, true);\n }\n }\n\n // Set config.method\n config.method = (config.method || this.defaults.method || 'get').toLowerCase();\n\n // Flatten headers\n let contextHeaders = headers && utils.merge(\n headers.common,\n headers[config.method]\n );\n\n headers && utils.forEach(\n ['delete', 'get', 'head', 'post', 'put', 'patch', 'common'],\n (method) => {\n delete headers[method];\n }\n );\n\n config.headers = AxiosHeaders.concat(contextHeaders, headers);\n\n // filter out skipped interceptors\n const requestInterceptorChain = [];\n let synchronousRequestInterceptors = true;\n this.interceptors.request.forEach(function unshiftRequestInterceptors(interceptor) {\n if (typeof interceptor.runWhen === 'function' && interceptor.runWhen(config) === false) {\n return;\n }\n\n synchronousRequestInterceptors = synchronousRequestInterceptors && interceptor.synchronous;\n\n requestInterceptorChain.unshift(interceptor.fulfilled, interceptor.rejected);\n });\n\n const responseInterceptorChain = [];\n this.interceptors.response.forEach(function pushResponseInterceptors(interceptor) {\n responseInterceptorChain.push(interceptor.fulfilled, interceptor.rejected);\n });\n\n let promise;\n let i = 0;\n let len;\n\n if (!synchronousRequestInterceptors) {\n const chain = [dispatchRequest.bind(this), undefined];\n chain.unshift.apply(chain, requestInterceptorChain);\n chain.push.apply(chain, responseInterceptorChain);\n len = chain.length;\n\n promise = Promise.resolve(config);\n\n while (i < len) {\n promise = promise.then(chain[i++], chain[i++]);\n }\n\n return promise;\n }\n\n len = requestInterceptorChain.length;\n\n let newConfig = config;\n\n i = 0;\n\n while (i < len) {\n const onFulfilled = requestInterceptorChain[i++];\n const onRejected = requestInterceptorChain[i++];\n try {\n newConfig = onFulfilled(newConfig);\n } catch (error) {\n onRejected.call(this, error);\n break;\n }\n }\n\n try {\n promise = dispatchRequest.call(this, newConfig);\n } catch (error) {\n return Promise.reject(error);\n }\n\n i = 0;\n len = responseInterceptorChain.length;\n\n while (i < len) {\n promise = promise.then(responseInterceptorChain[i++], responseInterceptorChain[i++]);\n }\n\n return promise;\n }\n\n getUri(config) {\n config = mergeConfig(this.defaults, config);\n const fullPath = buildFullPath(config.baseURL, config.url);\n return buildURL(fullPath, config.params, config.paramsSerializer);\n }\n}\n\n// Provide aliases for supported request methods\nutils.forEach(['delete', 'get', 'head', 'options'], function forEachMethodNoData(method) {\n /*eslint func-names:0*/\n Axios.prototype[method] = function(url, config) {\n return this.request(mergeConfig(config || {}, {\n method,\n url,\n data: (config || {}).data\n }));\n };\n});\n\nutils.forEach(['post', 'put', 'patch'], function forEachMethodWithData(method) {\n /*eslint func-names:0*/\n\n function generateHTTPMethod(isForm) {\n return function httpMethod(url, data, config) {\n return this.request(mergeConfig(config || {}, {\n method,\n headers: isForm ? {\n 'Content-Type': 'multipart/form-data'\n } : {},\n url,\n data\n }));\n };\n }\n\n Axios.prototype[method] = generateHTTPMethod();\n\n Axios.prototype[method + 'Form'] = generateHTTPMethod(true);\n});\n\nexport default Axios;\n","'use strict';\n\nimport utils from '../utils.js';\n\n/**\n * Create an Error with the specified message, config, error code, request and response.\n *\n * @param {string} message The error message.\n * @param {string} [code] The error code (for example, 'ECONNABORTED').\n * @param {Object} [config] The config.\n * @param {Object} [request] The request.\n * @param {Object} [response] The response.\n *\n * @returns {Error} The created error.\n */\nfunction AxiosError(message, code, config, request, response) {\n Error.call(this);\n\n if (Error.captureStackTrace) {\n Error.captureStackTrace(this, this.constructor);\n } else {\n this.stack = (new Error()).stack;\n }\n\n this.message = message;\n this.name = 'AxiosError';\n code && (this.code = code);\n config && (this.config = config);\n request && (this.request = request);\n if (response) {\n this.response = response;\n this.status = response.status ? response.status : null;\n }\n}\n\nutils.inherits(AxiosError, Error, {\n toJSON: function toJSON() {\n return {\n // Standard\n message: this.message,\n name: this.name,\n // Microsoft\n description: this.description,\n number: this.number,\n // Mozilla\n fileName: this.fileName,\n lineNumber: this.lineNumber,\n columnNumber: this.columnNumber,\n stack: this.stack,\n // Axios\n config: utils.toJSONObject(this.config),\n code: this.code,\n status: this.status\n };\n }\n});\n\nconst prototype = AxiosError.prototype;\nconst descriptors = {};\n\n[\n 'ERR_BAD_OPTION_VALUE',\n 'ERR_BAD_OPTION',\n 'ECONNABORTED',\n 'ETIMEDOUT',\n 'ERR_NETWORK',\n 'ERR_FR_TOO_MANY_REDIRECTS',\n 'ERR_DEPRECATED',\n 'ERR_BAD_RESPONSE',\n 'ERR_BAD_REQUEST',\n 'ERR_CANCELED',\n 'ERR_NOT_SUPPORT',\n 'ERR_INVALID_URL'\n// eslint-disable-next-line func-names\n].forEach(code => {\n descriptors[code] = {value: code};\n});\n\nObject.defineProperties(AxiosError, descriptors);\nObject.defineProperty(prototype, 'isAxiosError', {value: true});\n\n// eslint-disable-next-line func-names\nAxiosError.from = (error, code, config, request, response, customProps) => {\n const axiosError = Object.create(prototype);\n\n utils.toFlatObject(error, axiosError, function filter(obj) {\n return obj !== Error.prototype;\n }, prop => {\n return prop !== 'isAxiosError';\n });\n\n AxiosError.call(axiosError, error.message, code, config, request, response);\n\n axiosError.cause = error;\n\n axiosError.name = error.name;\n\n customProps && Object.assign(axiosError, customProps);\n\n return axiosError;\n};\n\nexport default AxiosError;\n","'use strict';\n\nimport utils from '../utils.js';\nimport parseHeaders from '../helpers/parseHeaders.js';\n\nconst $internals = Symbol('internals');\n\nfunction normalizeHeader(header) {\n return header && String(header).trim().toLowerCase();\n}\n\nfunction normalizeValue(value) {\n if (value === false || value == null) {\n return value;\n }\n\n return utils.isArray(value) ? value.map(normalizeValue) : String(value);\n}\n\nfunction parseTokens(str) {\n const tokens = Object.create(null);\n const tokensRE = /([^\\s,;=]+)\\s*(?:=\\s*([^,;]+))?/g;\n let match;\n\n while ((match = tokensRE.exec(str))) {\n tokens[match[1]] = match[2];\n }\n\n return tokens;\n}\n\nconst isValidHeaderName = (str) => /^[-_a-zA-Z0-9^`|~,!#$%&'*+.]+$/.test(str.trim());\n\nfunction matchHeaderValue(context, value, header, filter, isHeaderNameFilter) {\n if (utils.isFunction(filter)) {\n return filter.call(this, value, header);\n }\n\n if (isHeaderNameFilter) {\n value = header;\n }\n\n if (!utils.isString(value)) return;\n\n if (utils.isString(filter)) {\n return value.indexOf(filter) !== -1;\n }\n\n if (utils.isRegExp(filter)) {\n return filter.test(value);\n }\n}\n\nfunction formatHeader(header) {\n return header.trim()\n .toLowerCase().replace(/([a-z\\d])(\\w*)/g, (w, char, str) => {\n return char.toUpperCase() + str;\n });\n}\n\nfunction buildAccessors(obj, header) {\n const accessorName = utils.toCamelCase(' ' + header);\n\n ['get', 'set', 'has'].forEach(methodName => {\n Object.defineProperty(obj, methodName + accessorName, {\n value: function(arg1, arg2, arg3) {\n return this[methodName].call(this, header, arg1, arg2, arg3);\n },\n configurable: true\n });\n });\n}\n\nclass AxiosHeaders {\n constructor(headers) {\n headers && this.set(headers);\n }\n\n set(header, valueOrRewrite, rewrite) {\n const self = this;\n\n function setHeader(_value, _header, _rewrite) {\n const lHeader = normalizeHeader(_header);\n\n if (!lHeader) {\n throw new Error('header name must be a non-empty string');\n }\n\n const key = utils.findKey(self, lHeader);\n\n if(!key || self[key] === undefined || _rewrite === true || (_rewrite === undefined && self[key] !== false)) {\n self[key || _header] = normalizeValue(_value);\n }\n }\n\n const setHeaders = (headers, _rewrite) =>\n utils.forEach(headers, (_value, _header) => setHeader(_value, _header, _rewrite));\n\n if (utils.isPlainObject(header) || header instanceof this.constructor) {\n setHeaders(header, valueOrRewrite)\n } else if(utils.isString(header) && (header = header.trim()) && !isValidHeaderName(header)) {\n setHeaders(parseHeaders(header), valueOrRewrite);\n } else if (utils.isHeaders(header)) {\n for (const [key, value] of header.entries()) {\n setHeader(value, key, rewrite);\n }\n } else {\n header != null && setHeader(valueOrRewrite, header, rewrite);\n }\n\n return this;\n }\n\n get(header, parser) {\n header = normalizeHeader(header);\n\n if (header) {\n const key = utils.findKey(this, header);\n\n if (key) {\n const value = this[key];\n\n if (!parser) {\n return value;\n }\n\n if (parser === true) {\n return parseTokens(value);\n }\n\n if (utils.isFunction(parser)) {\n return parser.call(this, value, key);\n }\n\n if (utils.isRegExp(parser)) {\n return parser.exec(value);\n }\n\n throw new TypeError('parser must be boolean|regexp|function');\n }\n }\n }\n\n has(header, matcher) {\n header = normalizeHeader(header);\n\n if (header) {\n const key = utils.findKey(this, header);\n\n return !!(key && this[key] !== undefined && (!matcher || matchHeaderValue(this, this[key], key, matcher)));\n }\n\n return false;\n }\n\n delete(header, matcher) {\n const self = this;\n let deleted = false;\n\n function deleteHeader(_header) {\n _header = normalizeHeader(_header);\n\n if (_header) {\n const key = utils.findKey(self, _header);\n\n if (key && (!matcher || matchHeaderValue(self, self[key], key, matcher))) {\n delete self[key];\n\n deleted = true;\n }\n }\n }\n\n if (utils.isArray(header)) {\n header.forEach(deleteHeader);\n } else {\n deleteHeader(header);\n }\n\n return deleted;\n }\n\n clear(matcher) {\n const keys = Object.keys(this);\n let i = keys.length;\n let deleted = false;\n\n while (i--) {\n const key = keys[i];\n if(!matcher || matchHeaderValue(this, this[key], key, matcher, true)) {\n delete this[key];\n deleted = true;\n }\n }\n\n return deleted;\n }\n\n normalize(format) {\n const self = this;\n const headers = {};\n\n utils.forEach(this, (value, header) => {\n const key = utils.findKey(headers, header);\n\n if (key) {\n self[key] = normalizeValue(value);\n delete self[header];\n return;\n }\n\n const normalized = format ? formatHeader(header) : String(header).trim();\n\n if (normalized !== header) {\n delete self[header];\n }\n\n self[normalized] = normalizeValue(value);\n\n headers[normalized] = true;\n });\n\n return this;\n }\n\n concat(...targets) {\n return this.constructor.concat(this, ...targets);\n }\n\n toJSON(asStrings) {\n const obj = Object.create(null);\n\n utils.forEach(this, (value, header) => {\n value != null && value !== false && (obj[header] = asStrings && utils.isArray(value) ? value.join(', ') : value);\n });\n\n return obj;\n }\n\n [Symbol.iterator]() {\n return Object.entries(this.toJSON())[Symbol.iterator]();\n }\n\n toString() {\n return Object.entries(this.toJSON()).map(([header, value]) => header + ': ' + value).join('\\n');\n }\n\n get [Symbol.toStringTag]() {\n return 'AxiosHeaders';\n }\n\n static from(thing) {\n return thing instanceof this ? thing : new this(thing);\n }\n\n static concat(first, ...targets) {\n const computed = new this(first);\n\n targets.forEach((target) => computed.set(target));\n\n return computed;\n }\n\n static accessor(header) {\n const internals = this[$internals] = (this[$internals] = {\n accessors: {}\n });\n\n const accessors = internals.accessors;\n const prototype = this.prototype;\n\n function defineAccessor(_header) {\n const lHeader = normalizeHeader(_header);\n\n if (!accessors[lHeader]) {\n buildAccessors(prototype, _header);\n accessors[lHeader] = true;\n }\n }\n\n utils.isArray(header) ? header.forEach(defineAccessor) : defineAccessor(header);\n\n return this;\n }\n}\n\nAxiosHeaders.accessor(['Content-Type', 'Content-Length', 'Accept', 'Accept-Encoding', 'User-Agent', 'Authorization']);\n\n// reserved names hotfix\nutils.reduceDescriptors(AxiosHeaders.prototype, ({value}, key) => {\n let mapped = key[0].toUpperCase() + key.slice(1); // map `set` => `Set`\n return {\n get: () => value,\n set(headerValue) {\n this[mapped] = headerValue;\n }\n }\n});\n\nutils.freezeMethods(AxiosHeaders);\n\nexport default AxiosHeaders;\n","'use strict';\n\nimport utils from './../utils.js';\n\nclass InterceptorManager {\n constructor() {\n this.handlers = [];\n }\n\n /**\n * Add a new interceptor to the stack\n *\n * @param {Function} fulfilled The function to handle `then` for a `Promise`\n * @param {Function} rejected The function to handle `reject` for a `Promise`\n *\n * @return {Number} An ID used to remove interceptor later\n */\n use(fulfilled, rejected, options) {\n this.handlers.push({\n fulfilled,\n rejected,\n synchronous: options ? options.synchronous : false,\n runWhen: options ? options.runWhen : null\n });\n return this.handlers.length - 1;\n }\n\n /**\n * Remove an interceptor from the stack\n *\n * @param {Number} id The ID that was returned by `use`\n *\n * @returns {Boolean} `true` if the interceptor was removed, `false` otherwise\n */\n eject(id) {\n if (this.handlers[id]) {\n this.handlers[id] = null;\n }\n }\n\n /**\n * Clear all interceptors from the stack\n *\n * @returns {void}\n */\n clear() {\n if (this.handlers) {\n this.handlers = [];\n }\n }\n\n /**\n * Iterate over all the registered interceptors\n *\n * This method is particularly useful for skipping over any\n * interceptors that may have become `null` calling `eject`.\n *\n * @param {Function} fn The function to call for each interceptor\n *\n * @returns {void}\n */\n forEach(fn) {\n utils.forEach(this.handlers, function forEachHandler(h) {\n if (h !== null) {\n fn(h);\n }\n });\n }\n}\n\nexport default InterceptorManager;\n","'use strict';\n\nimport isAbsoluteURL from '../helpers/isAbsoluteURL.js';\nimport combineURLs from '../helpers/combineURLs.js';\n\n/**\n * Creates a new URL by combining the baseURL with the requestedURL,\n * only when the requestedURL is not already an absolute URL.\n * If the requestURL is absolute, this function returns the requestedURL untouched.\n *\n * @param {string} baseURL The base URL\n * @param {string} requestedURL Absolute or relative URL to combine\n *\n * @returns {string} The combined full path\n */\nexport default function buildFullPath(baseURL, requestedURL) {\n if (baseURL && !isAbsoluteURL(requestedURL)) {\n return combineURLs(baseURL, requestedURL);\n }\n return requestedURL;\n}\n","'use strict';\n\nimport transformData from './transformData.js';\nimport isCancel from '../cancel/isCancel.js';\nimport defaults from '../defaults/index.js';\nimport CanceledError from '../cancel/CanceledError.js';\nimport AxiosHeaders from '../core/AxiosHeaders.js';\nimport adapters from \"../adapters/adapters.js\";\n\n/**\n * Throws a `CanceledError` if cancellation has been requested.\n *\n * @param {Object} config The config that is to be used for the request\n *\n * @returns {void}\n */\nfunction throwIfCancellationRequested(config) {\n if (config.cancelToken) {\n config.cancelToken.throwIfRequested();\n }\n\n if (config.signal && config.signal.aborted) {\n throw new CanceledError(null, config);\n }\n}\n\n/**\n * Dispatch a request to the server using the configured adapter.\n *\n * @param {object} config The config that is to be used for the request\n *\n * @returns {Promise} The Promise to be fulfilled\n */\nexport default function dispatchRequest(config) {\n throwIfCancellationRequested(config);\n\n config.headers = AxiosHeaders.from(config.headers);\n\n // Transform request data\n config.data = transformData.call(\n config,\n config.transformRequest\n );\n\n if (['post', 'put', 'patch'].indexOf(config.method) !== -1) {\n config.headers.setContentType('application/x-www-form-urlencoded', false);\n }\n\n const adapter = adapters.getAdapter(config.adapter || defaults.adapter);\n\n return adapter(config).then(function onAdapterResolution(response) {\n throwIfCancellationRequested(config);\n\n // Transform response data\n response.data = transformData.call(\n config,\n config.transformResponse,\n response\n );\n\n response.headers = AxiosHeaders.from(response.headers);\n\n return response;\n }, function onAdapterRejection(reason) {\n if (!isCancel(reason)) {\n throwIfCancellationRequested(config);\n\n // Transform response data\n if (reason && reason.response) {\n reason.response.data = transformData.call(\n config,\n config.transformResponse,\n reason.response\n );\n reason.response.headers = AxiosHeaders.from(reason.response.headers);\n }\n }\n\n return Promise.reject(reason);\n });\n}\n","'use strict';\n\nimport utils from '../utils.js';\nimport AxiosHeaders from \"./AxiosHeaders.js\";\n\nconst headersToObject = (thing) => thing instanceof AxiosHeaders ? { ...thing } : thing;\n\n/**\n * Config-specific merge-function which creates a new config-object\n * by merging two configuration objects together.\n *\n * @param {Object} config1\n * @param {Object} config2\n *\n * @returns {Object} New object resulting from merging config2 to config1\n */\nexport default function mergeConfig(config1, config2) {\n // eslint-disable-next-line no-param-reassign\n config2 = config2 || {};\n const config = {};\n\n function getMergedValue(target, source, caseless) {\n if (utils.isPlainObject(target) && utils.isPlainObject(source)) {\n return utils.merge.call({caseless}, target, source);\n } else if (utils.isPlainObject(source)) {\n return utils.merge({}, source);\n } else if (utils.isArray(source)) {\n return source.slice();\n }\n return source;\n }\n\n // eslint-disable-next-line consistent-return\n function mergeDeepProperties(a, b, caseless) {\n if (!utils.isUndefined(b)) {\n return getMergedValue(a, b, caseless);\n } else if (!utils.isUndefined(a)) {\n return getMergedValue(undefined, a, caseless);\n }\n }\n\n // eslint-disable-next-line consistent-return\n function valueFromConfig2(a, b) {\n if (!utils.isUndefined(b)) {\n return getMergedValue(undefined, b);\n }\n }\n\n // eslint-disable-next-line consistent-return\n function defaultToConfig2(a, b) {\n if (!utils.isUndefined(b)) {\n return getMergedValue(undefined, b);\n } else if (!utils.isUndefined(a)) {\n return getMergedValue(undefined, a);\n }\n }\n\n // eslint-disable-next-line consistent-return\n function mergeDirectKeys(a, b, prop) {\n if (prop in config2) {\n return getMergedValue(a, b);\n } else if (prop in config1) {\n return getMergedValue(undefined, a);\n }\n }\n\n const mergeMap = {\n url: valueFromConfig2,\n method: valueFromConfig2,\n data: valueFromConfig2,\n baseURL: defaultToConfig2,\n transformRequest: defaultToConfig2,\n transformResponse: defaultToConfig2,\n paramsSerializer: defaultToConfig2,\n timeout: defaultToConfig2,\n timeoutMessage: defaultToConfig2,\n withCredentials: defaultToConfig2,\n withXSRFToken: defaultToConfig2,\n adapter: defaultToConfig2,\n responseType: defaultToConfig2,\n xsrfCookieName: defaultToConfig2,\n xsrfHeaderName: defaultToConfig2,\n onUploadProgress: defaultToConfig2,\n onDownloadProgress: defaultToConfig2,\n decompress: defaultToConfig2,\n maxContentLength: defaultToConfig2,\n maxBodyLength: defaultToConfig2,\n beforeRedirect: defaultToConfig2,\n transport: defaultToConfig2,\n httpAgent: defaultToConfig2,\n httpsAgent: defaultToConfig2,\n cancelToken: defaultToConfig2,\n socketPath: defaultToConfig2,\n responseEncoding: defaultToConfig2,\n validateStatus: mergeDirectKeys,\n headers: (a, b) => mergeDeepProperties(headersToObject(a), headersToObject(b), true)\n };\n\n utils.forEach(Object.keys(Object.assign({}, config1, config2)), function computeConfigValue(prop) {\n const merge = mergeMap[prop] || mergeDeepProperties;\n const configValue = merge(config1[prop], config2[prop], prop);\n (utils.isUndefined(configValue) && merge !== mergeDirectKeys) || (config[prop] = configValue);\n });\n\n return config;\n}\n","'use strict';\n\nimport AxiosError from './AxiosError.js';\n\n/**\n * Resolve or reject a Promise based on response status.\n *\n * @param {Function} resolve A function that resolves the promise.\n * @param {Function} reject A function that rejects the promise.\n * @param {object} response The response.\n *\n * @returns {object} The response.\n */\nexport default function settle(resolve, reject, response) {\n const validateStatus = response.config.validateStatus;\n if (!response.status || !validateStatus || validateStatus(response.status)) {\n resolve(response);\n } else {\n reject(new AxiosError(\n 'Request failed with status code ' + response.status,\n [AxiosError.ERR_BAD_REQUEST, AxiosError.ERR_BAD_RESPONSE][Math.floor(response.status / 100) - 4],\n response.config,\n response.request,\n response\n ));\n }\n}\n","'use strict';\n\nimport utils from './../utils.js';\nimport defaults from '../defaults/index.js';\nimport AxiosHeaders from '../core/AxiosHeaders.js';\n\n/**\n * Transform the data for a request or a response\n *\n * @param {Array|Function} fns A single function or Array of functions\n * @param {?Object} response The response object\n *\n * @returns {*} The resulting transformed data\n */\nexport default function transformData(fns, response) {\n const config = this || defaults;\n const context = response || config;\n const headers = AxiosHeaders.from(context.headers);\n let data = context.data;\n\n utils.forEach(fns, function transform(fn) {\n data = fn.call(config, data, headers.normalize(), response ? response.status : undefined);\n });\n\n headers.normalize();\n\n return data;\n}\n","'use strict';\n\nimport utils from '../utils.js';\nimport AxiosError from '../core/AxiosError.js';\nimport transitionalDefaults from './transitional.js';\nimport toFormData from '../helpers/toFormData.js';\nimport toURLEncodedForm from '../helpers/toURLEncodedForm.js';\nimport platform from '../platform/index.js';\nimport formDataToJSON from '../helpers/formDataToJSON.js';\n\n/**\n * It takes a string, tries to parse it, and if it fails, it returns the stringified version\n * of the input\n *\n * @param {any} rawValue - The value to be stringified.\n * @param {Function} parser - A function that parses a string into a JavaScript object.\n * @param {Function} encoder - A function that takes a value and returns a string.\n *\n * @returns {string} A stringified version of the rawValue.\n */\nfunction stringifySafely(rawValue, parser, encoder) {\n if (utils.isString(rawValue)) {\n try {\n (parser || JSON.parse)(rawValue);\n return utils.trim(rawValue);\n } catch (e) {\n if (e.name !== 'SyntaxError') {\n throw e;\n }\n }\n }\n\n return (encoder || JSON.stringify)(rawValue);\n}\n\nconst defaults = {\n\n transitional: transitionalDefaults,\n\n adapter: ['xhr', 'http', 'fetch'],\n\n transformRequest: [function transformRequest(data, headers) {\n const contentType = headers.getContentType() || '';\n const hasJSONContentType = contentType.indexOf('application/json') > -1;\n const isObjectPayload = utils.isObject(data);\n\n if (isObjectPayload && utils.isHTMLForm(data)) {\n data = new FormData(data);\n }\n\n const isFormData = utils.isFormData(data);\n\n if (isFormData) {\n return hasJSONContentType ? JSON.stringify(formDataToJSON(data)) : data;\n }\n\n if (utils.isArrayBuffer(data) ||\n utils.isBuffer(data) ||\n utils.isStream(data) ||\n utils.isFile(data) ||\n utils.isBlob(data) ||\n utils.isReadableStream(data)\n ) {\n return data;\n }\n if (utils.isArrayBufferView(data)) {\n return data.buffer;\n }\n if (utils.isURLSearchParams(data)) {\n headers.setContentType('application/x-www-form-urlencoded;charset=utf-8', false);\n return data.toString();\n }\n\n let isFileList;\n\n if (isObjectPayload) {\n if (contentType.indexOf('application/x-www-form-urlencoded') > -1) {\n return toURLEncodedForm(data, this.formSerializer).toString();\n }\n\n if ((isFileList = utils.isFileList(data)) || contentType.indexOf('multipart/form-data') > -1) {\n const _FormData = this.env && this.env.FormData;\n\n return toFormData(\n isFileList ? {'files[]': data} : data,\n _FormData && new _FormData(),\n this.formSerializer\n );\n }\n }\n\n if (isObjectPayload || hasJSONContentType ) {\n headers.setContentType('application/json', false);\n return stringifySafely(data);\n }\n\n return data;\n }],\n\n transformResponse: [function transformResponse(data) {\n const transitional = this.transitional || defaults.transitional;\n const forcedJSONParsing = transitional && transitional.forcedJSONParsing;\n const JSONRequested = this.responseType === 'json';\n\n if (utils.isResponse(data) || utils.isReadableStream(data)) {\n return data;\n }\n\n if (data && utils.isString(data) && ((forcedJSONParsing && !this.responseType) || JSONRequested)) {\n const silentJSONParsing = transitional && transitional.silentJSONParsing;\n const strictJSONParsing = !silentJSONParsing && JSONRequested;\n\n try {\n return JSON.parse(data);\n } catch (e) {\n if (strictJSONParsing) {\n if (e.name === 'SyntaxError') {\n throw AxiosError.from(e, AxiosError.ERR_BAD_RESPONSE, this, null, this.response);\n }\n throw e;\n }\n }\n }\n\n return data;\n }],\n\n /**\n * A timeout in milliseconds to abort a request. If set to 0 (default) a\n * timeout is not created.\n */\n timeout: 0,\n\n xsrfCookieName: 'XSRF-TOKEN',\n xsrfHeaderName: 'X-XSRF-TOKEN',\n\n maxContentLength: -1,\n maxBodyLength: -1,\n\n env: {\n FormData: platform.classes.FormData,\n Blob: platform.classes.Blob\n },\n\n validateStatus: function validateStatus(status) {\n return status >= 200 && status < 300;\n },\n\n headers: {\n common: {\n 'Accept': 'application/json, text/plain, */*',\n 'Content-Type': undefined\n }\n }\n};\n\nutils.forEach(['delete', 'get', 'head', 'post', 'put', 'patch'], (method) => {\n defaults.headers[method] = {};\n});\n\nexport default defaults;\n","'use strict';\n\nexport default {\n silentJSONParsing: true,\n forcedJSONParsing: true,\n clarifyTimeoutError: false\n};\n","export const VERSION = \"1.7.5\";","'use strict';\n\nimport toFormData from './toFormData.js';\n\n/**\n * It encodes a string by replacing all characters that are not in the unreserved set with\n * their percent-encoded equivalents\n *\n * @param {string} str - The string to encode.\n *\n * @returns {string} The encoded string.\n */\nfunction encode(str) {\n const charMap = {\n '!': '%21',\n \"'\": '%27',\n '(': '%28',\n ')': '%29',\n '~': '%7E',\n '%20': '+',\n '%00': '\\x00'\n };\n return encodeURIComponent(str).replace(/[!'()~]|%20|%00/g, function replacer(match) {\n return charMap[match];\n });\n}\n\n/**\n * It takes a params object and converts it to a FormData object\n *\n * @param {Object} params - The parameters to be converted to a FormData object.\n * @param {Object} options - The options object passed to the Axios constructor.\n *\n * @returns {void}\n */\nfunction AxiosURLSearchParams(params, options) {\n this._pairs = [];\n\n params && toFormData(params, this, options);\n}\n\nconst prototype = AxiosURLSearchParams.prototype;\n\nprototype.append = function append(name, value) {\n this._pairs.push([name, value]);\n};\n\nprototype.toString = function toString(encoder) {\n const _encode = encoder ? function(value) {\n return encoder.call(this, value, encode);\n } : encode;\n\n return this._pairs.map(function each(pair) {\n return _encode(pair[0]) + '=' + _encode(pair[1]);\n }, '').join('&');\n};\n\nexport default AxiosURLSearchParams;\n","const HttpStatusCode = {\n Continue: 100,\n SwitchingProtocols: 101,\n Processing: 102,\n EarlyHints: 103,\n Ok: 200,\n Created: 201,\n Accepted: 202,\n NonAuthoritativeInformation: 203,\n NoContent: 204,\n ResetContent: 205,\n PartialContent: 206,\n MultiStatus: 207,\n AlreadyReported: 208,\n ImUsed: 226,\n MultipleChoices: 300,\n MovedPermanently: 301,\n Found: 302,\n SeeOther: 303,\n NotModified: 304,\n UseProxy: 305,\n Unused: 306,\n TemporaryRedirect: 307,\n PermanentRedirect: 308,\n BadRequest: 400,\n Unauthorized: 401,\n PaymentRequired: 402,\n Forbidden: 403,\n NotFound: 404,\n MethodNotAllowed: 405,\n NotAcceptable: 406,\n ProxyAuthenticationRequired: 407,\n RequestTimeout: 408,\n Conflict: 409,\n Gone: 410,\n LengthRequired: 411,\n PreconditionFailed: 412,\n PayloadTooLarge: 413,\n UriTooLong: 414,\n UnsupportedMediaType: 415,\n RangeNotSatisfiable: 416,\n ExpectationFailed: 417,\n ImATeapot: 418,\n MisdirectedRequest: 421,\n UnprocessableEntity: 422,\n Locked: 423,\n FailedDependency: 424,\n TooEarly: 425,\n UpgradeRequired: 426,\n PreconditionRequired: 428,\n TooManyRequests: 429,\n RequestHeaderFieldsTooLarge: 431,\n UnavailableForLegalReasons: 451,\n InternalServerError: 500,\n NotImplemented: 501,\n BadGateway: 502,\n ServiceUnavailable: 503,\n GatewayTimeout: 504,\n HttpVersionNotSupported: 505,\n VariantAlsoNegotiates: 506,\n InsufficientStorage: 507,\n LoopDetected: 508,\n NotExtended: 510,\n NetworkAuthenticationRequired: 511,\n};\n\nObject.entries(HttpStatusCode).forEach(([key, value]) => {\n HttpStatusCode[value] = key;\n});\n\nexport default HttpStatusCode;\n","'use strict';\n\nexport default function bind(fn, thisArg) {\n return function wrap() {\n return fn.apply(thisArg, arguments);\n };\n}\n","'use strict';\n\nimport utils from '../utils.js';\nimport AxiosURLSearchParams from '../helpers/AxiosURLSearchParams.js';\n\n/**\n * It replaces all instances of the characters `:`, `$`, `,`, `+`, `[`, and `]` with their\n * URI encoded counterparts\n *\n * @param {string} val The value to be encoded.\n *\n * @returns {string} The encoded value.\n */\nfunction encode(val) {\n return encodeURIComponent(val).\n replace(/%3A/gi, ':').\n replace(/%24/g, '$').\n replace(/%2C/gi, ',').\n replace(/%20/g, '+').\n replace(/%5B/gi, '[').\n replace(/%5D/gi, ']');\n}\n\n/**\n * Build a URL by appending params to the end\n *\n * @param {string} url The base of the url (e.g., http://www.google.com)\n * @param {object} [params] The params to be appended\n * @param {?object} options\n *\n * @returns {string} The formatted url\n */\nexport default function buildURL(url, params, options) {\n /*eslint no-param-reassign:0*/\n if (!params) {\n return url;\n }\n \n const _encode = options && options.encode || encode;\n\n const serializeFn = options && options.serialize;\n\n let serializedParams;\n\n if (serializeFn) {\n serializedParams = serializeFn(params, options);\n } else {\n serializedParams = utils.isURLSearchParams(params) ?\n params.toString() :\n new AxiosURLSearchParams(params, options).toString(_encode);\n }\n\n if (serializedParams) {\n const hashmarkIndex = url.indexOf(\"#\");\n\n if (hashmarkIndex !== -1) {\n url = url.slice(0, hashmarkIndex);\n }\n url += (url.indexOf('?') === -1 ? '?' : '&') + serializedParams;\n }\n\n return url;\n}\n","'use strict';\n\n/**\n * Creates a new URL by combining the specified URLs\n *\n * @param {string} baseURL The base URL\n * @param {string} relativeURL The relative URL\n *\n * @returns {string} The combined URL\n */\nexport default function combineURLs(baseURL, relativeURL) {\n return relativeURL\n ? baseURL.replace(/\\/?\\/$/, '') + '/' + relativeURL.replace(/^\\/+/, '')\n : baseURL;\n}\n","import CanceledError from \"../cancel/CanceledError.js\";\nimport AxiosError from \"../core/AxiosError.js\";\n\nconst composeSignals = (signals, timeout) => {\n let controller = new AbortController();\n\n let aborted;\n\n const onabort = function (cancel) {\n if (!aborted) {\n aborted = true;\n unsubscribe();\n const err = cancel instanceof Error ? cancel : this.reason;\n controller.abort(err instanceof AxiosError ? err : new CanceledError(err instanceof Error ? err.message : err));\n }\n }\n\n let timer = timeout && setTimeout(() => {\n onabort(new AxiosError(`timeout ${timeout} of ms exceeded`, AxiosError.ETIMEDOUT))\n }, timeout)\n\n const unsubscribe = () => {\n if (signals) {\n timer && clearTimeout(timer);\n timer = null;\n signals.forEach(signal => {\n signal &&\n (signal.removeEventListener ? signal.removeEventListener('abort', onabort) : signal.unsubscribe(onabort));\n });\n signals = null;\n }\n }\n\n signals.forEach((signal) => signal && signal.addEventListener && signal.addEventListener('abort', onabort));\n\n const {signal} = controller;\n\n signal.unsubscribe = unsubscribe;\n\n return [signal, () => {\n timer && clearTimeout(timer);\n timer = null;\n }];\n}\n\nexport default composeSignals;\n","import utils from './../utils.js';\nimport platform from '../platform/index.js';\n\nexport default platform.hasStandardBrowserEnv ?\n\n // Standard browser envs support document.cookie\n {\n write(name, value, expires, path, domain, secure) {\n const cookie = [name + '=' + encodeURIComponent(value)];\n\n utils.isNumber(expires) && cookie.push('expires=' + new Date(expires).toGMTString());\n\n utils.isString(path) && cookie.push('path=' + path);\n\n utils.isString(domain) && cookie.push('domain=' + domain);\n\n secure === true && cookie.push('secure');\n\n document.cookie = cookie.join('; ');\n },\n\n read(name) {\n const match = document.cookie.match(new RegExp('(^|;\\\\s*)(' + name + ')=([^;]*)'));\n return (match ? decodeURIComponent(match[3]) : null);\n },\n\n remove(name) {\n this.write(name, '', Date.now() - 86400000);\n }\n }\n\n :\n\n // Non-standard browser env (web workers, react-native) lack needed support.\n {\n write() {},\n read() {\n return null;\n },\n remove() {}\n };\n\n","'use strict';\n\nimport utils from '../utils.js';\n\n/**\n * It takes a string like `foo[x][y][z]` and returns an array like `['foo', 'x', 'y', 'z']\n *\n * @param {string} name - The name of the property to get.\n *\n * @returns An array of strings.\n */\nfunction parsePropPath(name) {\n // foo[x][y][z]\n // foo.x.y.z\n // foo-x-y-z\n // foo x y z\n return utils.matchAll(/\\w+|\\[(\\w*)]/g, name).map(match => {\n return match[0] === '[]' ? '' : match[1] || match[0];\n });\n}\n\n/**\n * Convert an array to an object.\n *\n * @param {Array} arr - The array to convert to an object.\n *\n * @returns An object with the same keys and values as the array.\n */\nfunction arrayToObject(arr) {\n const obj = {};\n const keys = Object.keys(arr);\n let i;\n const len = keys.length;\n let key;\n for (i = 0; i < len; i++) {\n key = keys[i];\n obj[key] = arr[key];\n }\n return obj;\n}\n\n/**\n * It takes a FormData object and returns a JavaScript object\n *\n * @param {string} formData The FormData object to convert to JSON.\n *\n * @returns {Object | null} The converted object.\n */\nfunction formDataToJSON(formData) {\n function buildPath(path, value, target, index) {\n let name = path[index++];\n\n if (name === '__proto__') return true;\n\n const isNumericKey = Number.isFinite(+name);\n const isLast = index >= path.length;\n name = !name && utils.isArray(target) ? target.length : name;\n\n if (isLast) {\n if (utils.hasOwnProp(target, name)) {\n target[name] = [target[name], value];\n } else {\n target[name] = value;\n }\n\n return !isNumericKey;\n }\n\n if (!target[name] || !utils.isObject(target[name])) {\n target[name] = [];\n }\n\n const result = buildPath(path, value, target[name], index);\n\n if (result && utils.isArray(target[name])) {\n target[name] = arrayToObject(target[name]);\n }\n\n return !isNumericKey;\n }\n\n if (utils.isFormData(formData) && utils.isFunction(formData.entries)) {\n const obj = {};\n\n utils.forEachEntry(formData, (name, value) => {\n buildPath(parsePropPath(name), value, obj, 0);\n });\n\n return obj;\n }\n\n return null;\n}\n\nexport default formDataToJSON;\n","'use strict';\n\n/**\n * Determines whether the specified URL is absolute\n *\n * @param {string} url The URL to test\n *\n * @returns {boolean} True if the specified URL is absolute, otherwise false\n */\nexport default function isAbsoluteURL(url) {\n // A URL is considered absolute if it begins with \"://\" or \"//\" (protocol-relative URL).\n // RFC 3986 defines scheme name as a sequence of characters beginning with a letter and followed\n // by any combination of letters, digits, plus, period, or hyphen.\n return /^([a-z][a-z\\d+\\-.]*:)?\\/\\//i.test(url);\n}\n","'use strict';\n\nimport utils from './../utils.js';\n\n/**\n * Determines whether the payload is an error thrown by Axios\n *\n * @param {*} payload The value to test\n *\n * @returns {boolean} True if the payload is an error thrown by Axios, otherwise false\n */\nexport default function isAxiosError(payload) {\n return utils.isObject(payload) && (payload.isAxiosError === true);\n}\n","'use strict';\n\nimport utils from './../utils.js';\nimport platform from '../platform/index.js';\n\nexport default platform.hasStandardBrowserEnv ?\n\n// Standard browser envs have full support of the APIs needed to test\n// whether the request URL is of the same origin as current location.\n (function standardBrowserEnv() {\n const msie = platform.navigator && /(msie|trident)/i.test(platform.navigator.userAgent);\n const urlParsingNode = document.createElement('a');\n let originURL;\n\n /**\n * Parse a URL to discover its components\n *\n * @param {String} url The URL to be parsed\n * @returns {Object}\n */\n function resolveURL(url) {\n let href = url;\n\n if (msie) {\n // IE needs attribute set twice to normalize properties\n urlParsingNode.setAttribute('href', href);\n href = urlParsingNode.href;\n }\n\n urlParsingNode.setAttribute('href', href);\n\n // urlParsingNode provides the UrlUtils interface - http://url.spec.whatwg.org/#urlutils\n return {\n href: urlParsingNode.href,\n protocol: urlParsingNode.protocol ? urlParsingNode.protocol.replace(/:$/, '') : '',\n host: urlParsingNode.host,\n search: urlParsingNode.search ? urlParsingNode.search.replace(/^\\?/, '') : '',\n hash: urlParsingNode.hash ? urlParsingNode.hash.replace(/^#/, '') : '',\n hostname: urlParsingNode.hostname,\n port: urlParsingNode.port,\n pathname: (urlParsingNode.pathname.charAt(0) === '/') ?\n urlParsingNode.pathname :\n '/' + urlParsingNode.pathname\n };\n }\n\n originURL = resolveURL(window.location.href);\n\n /**\n * Determine if a URL shares the same origin as the current location\n *\n * @param {String} requestURL The URL to test\n * @returns {boolean} True if URL shares the same origin, otherwise false\n */\n return function isURLSameOrigin(requestURL) {\n const parsed = (utils.isString(requestURL)) ? resolveURL(requestURL) : requestURL;\n return (parsed.protocol === originURL.protocol &&\n parsed.host === originURL.host);\n };\n })() :\n\n // Non standard browser envs (web workers, react-native) lack needed support.\n (function nonStandardBrowserEnv() {\n return function isURLSameOrigin() {\n return true;\n };\n })();\n","// eslint-disable-next-line strict\nexport default null;\n","'use strict';\n\nimport utils from './../utils.js';\n\n// RawAxiosHeaders whose duplicates are ignored by node\n// c.f. https://nodejs.org/api/http.html#http_message_headers\nconst ignoreDuplicateOf = utils.toObjectSet([\n 'age', 'authorization', 'content-length', 'content-type', 'etag',\n 'expires', 'from', 'host', 'if-modified-since', 'if-unmodified-since',\n 'last-modified', 'location', 'max-forwards', 'proxy-authorization',\n 'referer', 'retry-after', 'user-agent'\n]);\n\n/**\n * Parse headers into an object\n *\n * ```\n * Date: Wed, 27 Aug 2014 08:58:49 GMT\n * Content-Type: application/json\n * Connection: keep-alive\n * Transfer-Encoding: chunked\n * ```\n *\n * @param {String} rawHeaders Headers needing to be parsed\n *\n * @returns {Object} Headers parsed into an object\n */\nexport default rawHeaders => {\n const parsed = {};\n let key;\n let val;\n let i;\n\n rawHeaders && rawHeaders.split('\\n').forEach(function parser(line) {\n i = line.indexOf(':');\n key = line.substring(0, i).trim().toLowerCase();\n val = line.substring(i + 1).trim();\n\n if (!key || (parsed[key] && ignoreDuplicateOf[key])) {\n return;\n }\n\n if (key === 'set-cookie') {\n if (parsed[key]) {\n parsed[key].push(val);\n } else {\n parsed[key] = [val];\n }\n } else {\n parsed[key] = parsed[key] ? parsed[key] + ', ' + val : val;\n }\n });\n\n return parsed;\n};\n","'use strict';\n\nexport default function parseProtocol(url) {\n const match = /^([-+\\w]{1,25})(:?\\/\\/|:)/.exec(url);\n return match && match[1] || '';\n}\n","import speedometer from \"./speedometer.js\";\nimport throttle from \"./throttle.js\";\nimport utils from \"../utils.js\";\n\nexport const progressEventReducer = (listener, isDownloadStream, freq = 3) => {\n let bytesNotified = 0;\n const _speedometer = speedometer(50, 250);\n\n return throttle(e => {\n const loaded = e.loaded;\n const total = e.lengthComputable ? e.total : undefined;\n const progressBytes = loaded - bytesNotified;\n const rate = _speedometer(progressBytes);\n const inRange = loaded <= total;\n\n bytesNotified = loaded;\n\n const data = {\n loaded,\n total,\n progress: total ? (loaded / total) : undefined,\n bytes: progressBytes,\n rate: rate ? rate : undefined,\n estimated: rate && total && inRange ? (total - loaded) / rate : undefined,\n event: e,\n lengthComputable: total != null,\n [isDownloadStream ? 'download' : 'upload']: true\n };\n\n listener(data);\n }, freq);\n}\n\nexport const progressEventDecorator = (total, throttled) => {\n const lengthComputable = total != null;\n\n return [(loaded) => throttled[0]({\n lengthComputable,\n total,\n loaded\n }), throttled[1]];\n}\n\nexport const asyncDecorator = (fn) => (...args) => utils.asap(() => fn(...args));\n","import platform from \"../platform/index.js\";\nimport utils from \"../utils.js\";\nimport isURLSameOrigin from \"./isURLSameOrigin.js\";\nimport cookies from \"./cookies.js\";\nimport buildFullPath from \"../core/buildFullPath.js\";\nimport mergeConfig from \"../core/mergeConfig.js\";\nimport AxiosHeaders from \"../core/AxiosHeaders.js\";\nimport buildURL from \"./buildURL.js\";\n\nexport default (config) => {\n const newConfig = mergeConfig({}, config);\n\n let {data, withXSRFToken, xsrfHeaderName, xsrfCookieName, headers, auth} = newConfig;\n\n newConfig.headers = headers = AxiosHeaders.from(headers);\n\n newConfig.url = buildURL(buildFullPath(newConfig.baseURL, newConfig.url), config.params, config.paramsSerializer);\n\n // HTTP basic authentication\n if (auth) {\n headers.set('Authorization', 'Basic ' +\n btoa((auth.username || '') + ':' + (auth.password ? unescape(encodeURIComponent(auth.password)) : ''))\n );\n }\n\n let contentType;\n\n if (utils.isFormData(data)) {\n if (platform.hasStandardBrowserEnv || platform.hasStandardBrowserWebWorkerEnv) {\n headers.setContentType(undefined); // Let the browser set it\n } else if ((contentType = headers.getContentType()) !== false) {\n // fix semicolon duplication issue for ReactNative FormData implementation\n const [type, ...tokens] = contentType ? contentType.split(';').map(token => token.trim()).filter(Boolean) : [];\n headers.setContentType([type || 'multipart/form-data', ...tokens].join('; '));\n }\n }\n\n // Add xsrf header\n // This is only done if running in a standard browser environment.\n // Specifically not if we're in a web worker, or react-native.\n\n if (platform.hasStandardBrowserEnv) {\n withXSRFToken && utils.isFunction(withXSRFToken) && (withXSRFToken = withXSRFToken(newConfig));\n\n if (withXSRFToken || (withXSRFToken !== false && isURLSameOrigin(newConfig.url))) {\n // Add xsrf header\n const xsrfValue = xsrfHeaderName && xsrfCookieName && cookies.read(xsrfCookieName);\n\n if (xsrfValue) {\n headers.set(xsrfHeaderName, xsrfValue);\n }\n }\n }\n\n return newConfig;\n}\n\n","'use strict';\n\n/**\n * Calculate data maxRate\n * @param {Number} [samplesCount= 10]\n * @param {Number} [min= 1000]\n * @returns {Function}\n */\nfunction speedometer(samplesCount, min) {\n samplesCount = samplesCount || 10;\n const bytes = new Array(samplesCount);\n const timestamps = new Array(samplesCount);\n let head = 0;\n let tail = 0;\n let firstSampleTS;\n\n min = min !== undefined ? min : 1000;\n\n return function push(chunkLength) {\n const now = Date.now();\n\n const startedAt = timestamps[tail];\n\n if (!firstSampleTS) {\n firstSampleTS = now;\n }\n\n bytes[head] = chunkLength;\n timestamps[head] = now;\n\n let i = tail;\n let bytesCount = 0;\n\n while (i !== head) {\n bytesCount += bytes[i++];\n i = i % samplesCount;\n }\n\n head = (head + 1) % samplesCount;\n\n if (head === tail) {\n tail = (tail + 1) % samplesCount;\n }\n\n if (now - firstSampleTS < min) {\n return;\n }\n\n const passed = startedAt && now - startedAt;\n\n return passed ? Math.round(bytesCount * 1000 / passed) : undefined;\n };\n}\n\nexport default speedometer;\n","'use strict';\n\n/**\n * Syntactic sugar for invoking a function and expanding an array for arguments.\n *\n * Common use case would be to use `Function.prototype.apply`.\n *\n * ```js\n * function f(x, y, z) {}\n * var args = [1, 2, 3];\n * f.apply(null, args);\n * ```\n *\n * With `spread` this example can be re-written.\n *\n * ```js\n * spread(function(x, y, z) {})([1, 2, 3]);\n * ```\n *\n * @param {Function} callback\n *\n * @returns {Function}\n */\nexport default function spread(callback) {\n return function wrap(arr) {\n return callback.apply(null, arr);\n };\n}\n","/**\n * Throttle decorator\n * @param {Function} fn\n * @param {Number} freq\n * @return {Function}\n */\nfunction throttle(fn, freq) {\n let timestamp = 0;\n let threshold = 1000 / freq;\n let lastArgs;\n let timer;\n\n const invoke = (args, now = Date.now()) => {\n timestamp = now;\n lastArgs = null;\n if (timer) {\n clearTimeout(timer);\n timer = null;\n }\n fn.apply(null, args);\n }\n\n const throttled = (...args) => {\n const now = Date.now();\n const passed = now - timestamp;\n if ( passed >= threshold) {\n invoke(args, now);\n } else {\n lastArgs = args;\n if (!timer) {\n timer = setTimeout(() => {\n timer = null;\n invoke(lastArgs)\n }, threshold - passed);\n }\n }\n }\n\n const flush = () => lastArgs && invoke(lastArgs);\n\n return [throttled, flush];\n}\n\nexport default throttle;\n","'use strict';\n\nimport utils from '../utils.js';\nimport AxiosError from '../core/AxiosError.js';\n// temporary hotfix to avoid circular references until AxiosURLSearchParams is refactored\nimport PlatformFormData from '../platform/node/classes/FormData.js';\n\n/**\n * Determines if the given thing is a array or js object.\n *\n * @param {string} thing - The object or array to be visited.\n *\n * @returns {boolean}\n */\nfunction isVisitable(thing) {\n return utils.isPlainObject(thing) || utils.isArray(thing);\n}\n\n/**\n * It removes the brackets from the end of a string\n *\n * @param {string} key - The key of the parameter.\n *\n * @returns {string} the key without the brackets.\n */\nfunction removeBrackets(key) {\n return utils.endsWith(key, '[]') ? key.slice(0, -2) : key;\n}\n\n/**\n * It takes a path, a key, and a boolean, and returns a string\n *\n * @param {string} path - The path to the current key.\n * @param {string} key - The key of the current object being iterated over.\n * @param {string} dots - If true, the key will be rendered with dots instead of brackets.\n *\n * @returns {string} The path to the current key.\n */\nfunction renderKey(path, key, dots) {\n if (!path) return key;\n return path.concat(key).map(function each(token, i) {\n // eslint-disable-next-line no-param-reassign\n token = removeBrackets(token);\n return !dots && i ? '[' + token + ']' : token;\n }).join(dots ? '.' : '');\n}\n\n/**\n * If the array is an array and none of its elements are visitable, then it's a flat array.\n *\n * @param {Array} arr - The array to check\n *\n * @returns {boolean}\n */\nfunction isFlatArray(arr) {\n return utils.isArray(arr) && !arr.some(isVisitable);\n}\n\nconst predicates = utils.toFlatObject(utils, {}, null, function filter(prop) {\n return /^is[A-Z]/.test(prop);\n});\n\n/**\n * Convert a data object to FormData\n *\n * @param {Object} obj\n * @param {?Object} [formData]\n * @param {?Object} [options]\n * @param {Function} [options.visitor]\n * @param {Boolean} [options.metaTokens = true]\n * @param {Boolean} [options.dots = false]\n * @param {?Boolean} [options.indexes = false]\n *\n * @returns {Object}\n **/\n\n/**\n * It converts an object into a FormData object\n *\n * @param {Object} obj - The object to convert to form data.\n * @param {string} formData - The FormData object to append to.\n * @param {Object} options\n *\n * @returns\n */\nfunction toFormData(obj, formData, options) {\n if (!utils.isObject(obj)) {\n throw new TypeError('target must be an object');\n }\n\n // eslint-disable-next-line no-param-reassign\n formData = formData || new (PlatformFormData || FormData)();\n\n // eslint-disable-next-line no-param-reassign\n options = utils.toFlatObject(options, {\n metaTokens: true,\n dots: false,\n indexes: false\n }, false, function defined(option, source) {\n // eslint-disable-next-line no-eq-null,eqeqeq\n return !utils.isUndefined(source[option]);\n });\n\n const metaTokens = options.metaTokens;\n // eslint-disable-next-line no-use-before-define\n const visitor = options.visitor || defaultVisitor;\n const dots = options.dots;\n const indexes = options.indexes;\n const _Blob = options.Blob || typeof Blob !== 'undefined' && Blob;\n const useBlob = _Blob && utils.isSpecCompliantForm(formData);\n\n if (!utils.isFunction(visitor)) {\n throw new TypeError('visitor must be a function');\n }\n\n function convertValue(value) {\n if (value === null) return '';\n\n if (utils.isDate(value)) {\n return value.toISOString();\n }\n\n if (!useBlob && utils.isBlob(value)) {\n throw new AxiosError('Blob is not supported. Use a Buffer instead.');\n }\n\n if (utils.isArrayBuffer(value) || utils.isTypedArray(value)) {\n return useBlob && typeof Blob === 'function' ? new Blob([value]) : Buffer.from(value);\n }\n\n return value;\n }\n\n /**\n * Default visitor.\n *\n * @param {*} value\n * @param {String|Number} key\n * @param {Array} path\n * @this {FormData}\n *\n * @returns {boolean} return true to visit the each prop of the value recursively\n */\n function defaultVisitor(value, key, path) {\n let arr = value;\n\n if (value && !path && typeof value === 'object') {\n if (utils.endsWith(key, '{}')) {\n // eslint-disable-next-line no-param-reassign\n key = metaTokens ? key : key.slice(0, -2);\n // eslint-disable-next-line no-param-reassign\n value = JSON.stringify(value);\n } else if (\n (utils.isArray(value) && isFlatArray(value)) ||\n ((utils.isFileList(value) || utils.endsWith(key, '[]')) && (arr = utils.toArray(value))\n )) {\n // eslint-disable-next-line no-param-reassign\n key = removeBrackets(key);\n\n arr.forEach(function each(el, index) {\n !(utils.isUndefined(el) || el === null) && formData.append(\n // eslint-disable-next-line no-nested-ternary\n indexes === true ? renderKey([key], index, dots) : (indexes === null ? key : key + '[]'),\n convertValue(el)\n );\n });\n return false;\n }\n }\n\n if (isVisitable(value)) {\n return true;\n }\n\n formData.append(renderKey(path, key, dots), convertValue(value));\n\n return false;\n }\n\n const stack = [];\n\n const exposedHelpers = Object.assign(predicates, {\n defaultVisitor,\n convertValue,\n isVisitable\n });\n\n function build(value, path) {\n if (utils.isUndefined(value)) return;\n\n if (stack.indexOf(value) !== -1) {\n throw Error('Circular reference detected in ' + path.join('.'));\n }\n\n stack.push(value);\n\n utils.forEach(value, function each(el, key) {\n const result = !(utils.isUndefined(el) || el === null) && visitor.call(\n formData, el, utils.isString(key) ? key.trim() : key, path, exposedHelpers\n );\n\n if (result === true) {\n build(el, path ? path.concat(key) : [key]);\n }\n });\n\n stack.pop();\n }\n\n if (!utils.isObject(obj)) {\n throw new TypeError('data must be an object');\n }\n\n build(obj);\n\n return formData;\n}\n\nexport default toFormData;\n","'use strict';\n\nimport utils from '../utils.js';\nimport toFormData from './toFormData.js';\nimport platform from '../platform/index.js';\n\nexport default function toURLEncodedForm(data, options) {\n return toFormData(data, new platform.classes.URLSearchParams(), Object.assign({\n visitor: function(value, key, path, helpers) {\n if (platform.isNode && utils.isBuffer(value)) {\n this.append(key, value.toString('base64'));\n return false;\n }\n\n return helpers.defaultVisitor.apply(this, arguments);\n }\n }, options));\n}\n","\nexport const streamChunk = function* (chunk, chunkSize) {\n let len = chunk.byteLength;\n\n if (!chunkSize || len < chunkSize) {\n yield chunk;\n return;\n }\n\n let pos = 0;\n let end;\n\n while (pos < len) {\n end = pos + chunkSize;\n yield chunk.slice(pos, end);\n pos = end;\n }\n}\n\nexport const readBytes = async function* (iterable, chunkSize, encode) {\n for await (const chunk of iterable) {\n yield* streamChunk(ArrayBuffer.isView(chunk) ? chunk : (await encode(String(chunk))), chunkSize);\n }\n}\n\nexport const trackStream = (stream, chunkSize, onProgress, onFinish, encode) => {\n const iterator = readBytes(stream, chunkSize, encode);\n\n let bytes = 0;\n let done;\n let _onFinish = (e) => {\n if (!done) {\n done = true;\n onFinish && onFinish(e);\n }\n }\n\n return new ReadableStream({\n async pull(controller) {\n try {\n const {done, value} = await iterator.next();\n\n if (done) {\n _onFinish();\n controller.close();\n return;\n }\n\n let len = value.byteLength;\n if (onProgress) {\n let loadedBytes = bytes += len;\n onProgress(loadedBytes);\n }\n controller.enqueue(new Uint8Array(value));\n } catch (err) {\n _onFinish(err);\n throw err;\n }\n },\n cancel(reason) {\n _onFinish(reason);\n return iterator.return();\n }\n }, {\n highWaterMark: 2\n })\n}\n","'use strict';\n\nimport {VERSION} from '../env/data.js';\nimport AxiosError from '../core/AxiosError.js';\n\nconst validators = {};\n\n// eslint-disable-next-line func-names\n['object', 'boolean', 'number', 'function', 'string', 'symbol'].forEach((type, i) => {\n validators[type] = function validator(thing) {\n return typeof thing === type || 'a' + (i < 1 ? 'n ' : ' ') + type;\n };\n});\n\nconst deprecatedWarnings = {};\n\n/**\n * Transitional option validator\n *\n * @param {function|boolean?} validator - set to false if the transitional option has been removed\n * @param {string?} version - deprecated version / removed since version\n * @param {string?} message - some message with additional info\n *\n * @returns {function}\n */\nvalidators.transitional = function transitional(validator, version, message) {\n function formatMessage(opt, desc) {\n return '[Axios v' + VERSION + '] Transitional option \\'' + opt + '\\'' + desc + (message ? '. ' + message : '');\n }\n\n // eslint-disable-next-line func-names\n return (value, opt, opts) => {\n if (validator === false) {\n throw new AxiosError(\n formatMessage(opt, ' has been removed' + (version ? ' in ' + version : '')),\n AxiosError.ERR_DEPRECATED\n );\n }\n\n if (version && !deprecatedWarnings[opt]) {\n deprecatedWarnings[opt] = true;\n // eslint-disable-next-line no-console\n console.warn(\n formatMessage(\n opt,\n ' has been deprecated since v' + version + ' and will be removed in the near future'\n )\n );\n }\n\n return validator ? validator(value, opt, opts) : true;\n };\n};\n\n/**\n * Assert object's properties type\n *\n * @param {object} options\n * @param {object} schema\n * @param {boolean?} allowUnknown\n *\n * @returns {object}\n */\n\nfunction assertOptions(options, schema, allowUnknown) {\n if (typeof options !== 'object') {\n throw new AxiosError('options must be an object', AxiosError.ERR_BAD_OPTION_VALUE);\n }\n const keys = Object.keys(options);\n let i = keys.length;\n while (i-- > 0) {\n const opt = keys[i];\n const validator = schema[opt];\n if (validator) {\n const value = options[opt];\n const result = value === undefined || validator(value, opt, options);\n if (result !== true) {\n throw new AxiosError('option ' + opt + ' must be ' + result, AxiosError.ERR_BAD_OPTION_VALUE);\n }\n continue;\n }\n if (allowUnknown !== true) {\n throw new AxiosError('Unknown option ' + opt, AxiosError.ERR_BAD_OPTION);\n }\n }\n}\n\nexport default {\n assertOptions,\n validators\n};\n","'use strict'\n\nexport default typeof Blob !== 'undefined' ? Blob : null\n","'use strict';\n\nexport default typeof FormData !== 'undefined' ? FormData : null;\n","'use strict';\n\nimport AxiosURLSearchParams from '../../../helpers/AxiosURLSearchParams.js';\nexport default typeof URLSearchParams !== 'undefined' ? URLSearchParams : AxiosURLSearchParams;\n","import URLSearchParams from './classes/URLSearchParams.js'\nimport FormData from './classes/FormData.js'\nimport Blob from './classes/Blob.js'\n\nexport default {\n isBrowser: true,\n classes: {\n URLSearchParams,\n FormData,\n Blob\n },\n protocols: ['http', 'https', 'file', 'blob', 'url', 'data']\n};\n","const hasBrowserEnv = typeof window !== 'undefined' && typeof document !== 'undefined';\n\nconst _navigator = typeof navigator === 'object' && navigator || undefined;\n\n/**\n * Determine if we're running in a standard browser environment\n *\n * This allows axios to run in a web worker, and react-native.\n * Both environments support XMLHttpRequest, but not fully standard globals.\n *\n * web workers:\n * typeof window -> undefined\n * typeof document -> undefined\n *\n * react-native:\n * navigator.product -> 'ReactNative'\n * nativescript\n * navigator.product -> 'NativeScript' or 'NS'\n *\n * @returns {boolean}\n */\nconst hasStandardBrowserEnv = hasBrowserEnv &&\n (!_navigator || ['ReactNative', 'NativeScript', 'NS'].indexOf(_navigator.product) < 0);\n\n/**\n * Determine if we're running in a standard browser webWorker environment\n *\n * Although the `isStandardBrowserEnv` method indicates that\n * `allows axios to run in a web worker`, the WebWorker will still be\n * filtered out due to its judgment standard\n * `typeof window !== 'undefined' && typeof document !== 'undefined'`.\n * This leads to a problem when axios post `FormData` in webWorker\n */\nconst hasStandardBrowserWebWorkerEnv = (() => {\n return (\n typeof WorkerGlobalScope !== 'undefined' &&\n // eslint-disable-next-line no-undef\n self instanceof WorkerGlobalScope &&\n typeof self.importScripts === 'function'\n );\n})();\n\nconst origin = hasBrowserEnv && window.location.href || 'http://localhost';\n\nexport {\n hasBrowserEnv,\n hasStandardBrowserWebWorkerEnv,\n hasStandardBrowserEnv,\n _navigator as navigator,\n origin\n}\n","import platform from './node/index.js';\nimport * as utils from './common/utils.js';\n\nexport default {\n ...utils,\n ...platform\n}\n","'use strict';\n\nimport bind from './helpers/bind.js';\n\n// utils is a library of generic helper functions non-specific to axios\n\nconst {toString} = Object.prototype;\nconst {getPrototypeOf} = Object;\n\nconst kindOf = (cache => thing => {\n const str = toString.call(thing);\n return cache[str] || (cache[str] = str.slice(8, -1).toLowerCase());\n})(Object.create(null));\n\nconst kindOfTest = (type) => {\n type = type.toLowerCase();\n return (thing) => kindOf(thing) === type\n}\n\nconst typeOfTest = type => thing => typeof thing === type;\n\n/**\n * Determine if a value is an Array\n *\n * @param {Object} val The value to test\n *\n * @returns {boolean} True if value is an Array, otherwise false\n */\nconst {isArray} = Array;\n\n/**\n * Determine if a value is undefined\n *\n * @param {*} val The value to test\n *\n * @returns {boolean} True if the value is undefined, otherwise false\n */\nconst isUndefined = typeOfTest('undefined');\n\n/**\n * Determine if a value is a Buffer\n *\n * @param {*} val The value to test\n *\n * @returns {boolean} True if value is a Buffer, otherwise false\n */\nfunction isBuffer(val) {\n return val !== null && !isUndefined(val) && val.constructor !== null && !isUndefined(val.constructor)\n && isFunction(val.constructor.isBuffer) && val.constructor.isBuffer(val);\n}\n\n/**\n * Determine if a value is an ArrayBuffer\n *\n * @param {*} val The value to test\n *\n * @returns {boolean} True if value is an ArrayBuffer, otherwise false\n */\nconst isArrayBuffer = kindOfTest('ArrayBuffer');\n\n\n/**\n * Determine if a value is a view on an ArrayBuffer\n *\n * @param {*} val The value to test\n *\n * @returns {boolean} True if value is a view on an ArrayBuffer, otherwise false\n */\nfunction isArrayBufferView(val) {\n let result;\n if ((typeof ArrayBuffer !== 'undefined') && (ArrayBuffer.isView)) {\n result = ArrayBuffer.isView(val);\n } else {\n result = (val) && (val.buffer) && (isArrayBuffer(val.buffer));\n }\n return result;\n}\n\n/**\n * Determine if a value is a String\n *\n * @param {*} val The value to test\n *\n * @returns {boolean} True if value is a String, otherwise false\n */\nconst isString = typeOfTest('string');\n\n/**\n * Determine if a value is a Function\n *\n * @param {*} val The value to test\n * @returns {boolean} True if value is a Function, otherwise false\n */\nconst isFunction = typeOfTest('function');\n\n/**\n * Determine if a value is a Number\n *\n * @param {*} val The value to test\n *\n * @returns {boolean} True if value is a Number, otherwise false\n */\nconst isNumber = typeOfTest('number');\n\n/**\n * Determine if a value is an Object\n *\n * @param {*} thing The value to test\n *\n * @returns {boolean} True if value is an Object, otherwise false\n */\nconst isObject = (thing) => thing !== null && typeof thing === 'object';\n\n/**\n * Determine if a value is a Boolean\n *\n * @param {*} thing The value to test\n * @returns {boolean} True if value is a Boolean, otherwise false\n */\nconst isBoolean = thing => thing === true || thing === false;\n\n/**\n * Determine if a value is a plain Object\n *\n * @param {*} val The value to test\n *\n * @returns {boolean} True if value is a plain Object, otherwise false\n */\nconst isPlainObject = (val) => {\n if (kindOf(val) !== 'object') {\n return false;\n }\n\n const prototype = getPrototypeOf(val);\n return (prototype === null || prototype === Object.prototype || Object.getPrototypeOf(prototype) === null) && !(Symbol.toStringTag in val) && !(Symbol.iterator in val);\n}\n\n/**\n * Determine if a value is a Date\n *\n * @param {*} val The value to test\n *\n * @returns {boolean} True if value is a Date, otherwise false\n */\nconst isDate = kindOfTest('Date');\n\n/**\n * Determine if a value is a File\n *\n * @param {*} val The value to test\n *\n * @returns {boolean} True if value is a File, otherwise false\n */\nconst isFile = kindOfTest('File');\n\n/**\n * Determine if a value is a Blob\n *\n * @param {*} val The value to test\n *\n * @returns {boolean} True if value is a Blob, otherwise false\n */\nconst isBlob = kindOfTest('Blob');\n\n/**\n * Determine if a value is a FileList\n *\n * @param {*} val The value to test\n *\n * @returns {boolean} True if value is a File, otherwise false\n */\nconst isFileList = kindOfTest('FileList');\n\n/**\n * Determine if a value is a Stream\n *\n * @param {*} val The value to test\n *\n * @returns {boolean} True if value is a Stream, otherwise false\n */\nconst isStream = (val) => isObject(val) && isFunction(val.pipe);\n\n/**\n * Determine if a value is a FormData\n *\n * @param {*} thing The value to test\n *\n * @returns {boolean} True if value is an FormData, otherwise false\n */\nconst isFormData = (thing) => {\n let kind;\n return thing && (\n (typeof FormData === 'function' && thing instanceof FormData) || (\n isFunction(thing.append) && (\n (kind = kindOf(thing)) === 'formdata' ||\n // detect form-data instance\n (kind === 'object' && isFunction(thing.toString) && thing.toString() === '[object FormData]')\n )\n )\n )\n}\n\n/**\n * Determine if a value is a URLSearchParams object\n *\n * @param {*} val The value to test\n *\n * @returns {boolean} True if value is a URLSearchParams object, otherwise false\n */\nconst isURLSearchParams = kindOfTest('URLSearchParams');\n\nconst [isReadableStream, isRequest, isResponse, isHeaders] = ['ReadableStream', 'Request', 'Response', 'Headers'].map(kindOfTest);\n\n/**\n * Trim excess whitespace off the beginning and end of a string\n *\n * @param {String} str The String to trim\n *\n * @returns {String} The String freed of excess whitespace\n */\nconst trim = (str) => str.trim ?\n str.trim() : str.replace(/^[\\s\\uFEFF\\xA0]+|[\\s\\uFEFF\\xA0]+$/g, '');\n\n/**\n * Iterate over an Array or an Object invoking a function for each item.\n *\n * If `obj` is an Array callback will be called passing\n * the value, index, and complete array for each item.\n *\n * If 'obj' is an Object callback will be called passing\n * the value, key, and complete object for each property.\n *\n * @param {Object|Array} obj The object to iterate\n * @param {Function} fn The callback to invoke for each item\n *\n * @param {Boolean} [allOwnKeys = false]\n * @returns {any}\n */\nfunction forEach(obj, fn, {allOwnKeys = false} = {}) {\n // Don't bother if no value provided\n if (obj === null || typeof obj === 'undefined') {\n return;\n }\n\n let i;\n let l;\n\n // Force an array if not already something iterable\n if (typeof obj !== 'object') {\n /*eslint no-param-reassign:0*/\n obj = [obj];\n }\n\n if (isArray(obj)) {\n // Iterate over array values\n for (i = 0, l = obj.length; i < l; i++) {\n fn.call(null, obj[i], i, obj);\n }\n } else {\n // Iterate over object keys\n const keys = allOwnKeys ? Object.getOwnPropertyNames(obj) : Object.keys(obj);\n const len = keys.length;\n let key;\n\n for (i = 0; i < len; i++) {\n key = keys[i];\n fn.call(null, obj[key], key, obj);\n }\n }\n}\n\nfunction findKey(obj, key) {\n key = key.toLowerCase();\n const keys = Object.keys(obj);\n let i = keys.length;\n let _key;\n while (i-- > 0) {\n _key = keys[i];\n if (key === _key.toLowerCase()) {\n return _key;\n }\n }\n return null;\n}\n\nconst _global = (() => {\n /*eslint no-undef:0*/\n if (typeof globalThis !== \"undefined\") return globalThis;\n return typeof self !== \"undefined\" ? self : (typeof window !== 'undefined' ? window : global)\n})();\n\nconst isContextDefined = (context) => !isUndefined(context) && context !== _global;\n\n/**\n * Accepts varargs expecting each argument to be an object, then\n * immutably merges the properties of each object and returns result.\n *\n * When multiple objects contain the same key the later object in\n * the arguments list will take precedence.\n *\n * Example:\n *\n * ```js\n * var result = merge({foo: 123}, {foo: 456});\n * console.log(result.foo); // outputs 456\n * ```\n *\n * @param {Object} obj1 Object to merge\n *\n * @returns {Object} Result of all merge properties\n */\nfunction merge(/* obj1, obj2, obj3, ... */) {\n const {caseless} = isContextDefined(this) && this || {};\n const result = {};\n const assignValue = (val, key) => {\n const targetKey = caseless && findKey(result, key) || key;\n if (isPlainObject(result[targetKey]) && isPlainObject(val)) {\n result[targetKey] = merge(result[targetKey], val);\n } else if (isPlainObject(val)) {\n result[targetKey] = merge({}, val);\n } else if (isArray(val)) {\n result[targetKey] = val.slice();\n } else {\n result[targetKey] = val;\n }\n }\n\n for (let i = 0, l = arguments.length; i < l; i++) {\n arguments[i] && forEach(arguments[i], assignValue);\n }\n return result;\n}\n\n/**\n * Extends object a by mutably adding to it the properties of object b.\n *\n * @param {Object} a The object to be extended\n * @param {Object} b The object to copy properties from\n * @param {Object} thisArg The object to bind function to\n *\n * @param {Boolean} [allOwnKeys]\n * @returns {Object} The resulting value of object a\n */\nconst extend = (a, b, thisArg, {allOwnKeys}= {}) => {\n forEach(b, (val, key) => {\n if (thisArg && isFunction(val)) {\n a[key] = bind(val, thisArg);\n } else {\n a[key] = val;\n }\n }, {allOwnKeys});\n return a;\n}\n\n/**\n * Remove byte order marker. This catches EF BB BF (the UTF-8 BOM)\n *\n * @param {string} content with BOM\n *\n * @returns {string} content value without BOM\n */\nconst stripBOM = (content) => {\n if (content.charCodeAt(0) === 0xFEFF) {\n content = content.slice(1);\n }\n return content;\n}\n\n/**\n * Inherit the prototype methods from one constructor into another\n * @param {function} constructor\n * @param {function} superConstructor\n * @param {object} [props]\n * @param {object} [descriptors]\n *\n * @returns {void}\n */\nconst inherits = (constructor, superConstructor, props, descriptors) => {\n constructor.prototype = Object.create(superConstructor.prototype, descriptors);\n constructor.prototype.constructor = constructor;\n Object.defineProperty(constructor, 'super', {\n value: superConstructor.prototype\n });\n props && Object.assign(constructor.prototype, props);\n}\n\n/**\n * Resolve object with deep prototype chain to a flat object\n * @param {Object} sourceObj source object\n * @param {Object} [destObj]\n * @param {Function|Boolean} [filter]\n * @param {Function} [propFilter]\n *\n * @returns {Object}\n */\nconst toFlatObject = (sourceObj, destObj, filter, propFilter) => {\n let props;\n let i;\n let prop;\n const merged = {};\n\n destObj = destObj || {};\n // eslint-disable-next-line no-eq-null,eqeqeq\n if (sourceObj == null) return destObj;\n\n do {\n props = Object.getOwnPropertyNames(sourceObj);\n i = props.length;\n while (i-- > 0) {\n prop = props[i];\n if ((!propFilter || propFilter(prop, sourceObj, destObj)) && !merged[prop]) {\n destObj[prop] = sourceObj[prop];\n merged[prop] = true;\n }\n }\n sourceObj = filter !== false && getPrototypeOf(sourceObj);\n } while (sourceObj && (!filter || filter(sourceObj, destObj)) && sourceObj !== Object.prototype);\n\n return destObj;\n}\n\n/**\n * Determines whether a string ends with the characters of a specified string\n *\n * @param {String} str\n * @param {String} searchString\n * @param {Number} [position= 0]\n *\n * @returns {boolean}\n */\nconst endsWith = (str, searchString, position) => {\n str = String(str);\n if (position === undefined || position > str.length) {\n position = str.length;\n }\n position -= searchString.length;\n const lastIndex = str.indexOf(searchString, position);\n return lastIndex !== -1 && lastIndex === position;\n}\n\n\n/**\n * Returns new array from array like object or null if failed\n *\n * @param {*} [thing]\n *\n * @returns {?Array}\n */\nconst toArray = (thing) => {\n if (!thing) return null;\n if (isArray(thing)) return thing;\n let i = thing.length;\n if (!isNumber(i)) return null;\n const arr = new Array(i);\n while (i-- > 0) {\n arr[i] = thing[i];\n }\n return arr;\n}\n\n/**\n * Checking if the Uint8Array exists and if it does, it returns a function that checks if the\n * thing passed in is an instance of Uint8Array\n *\n * @param {TypedArray}\n *\n * @returns {Array}\n */\n// eslint-disable-next-line func-names\nconst isTypedArray = (TypedArray => {\n // eslint-disable-next-line func-names\n return thing => {\n return TypedArray && thing instanceof TypedArray;\n };\n})(typeof Uint8Array !== 'undefined' && getPrototypeOf(Uint8Array));\n\n/**\n * For each entry in the object, call the function with the key and value.\n *\n * @param {Object} obj - The object to iterate over.\n * @param {Function} fn - The function to call for each entry.\n *\n * @returns {void}\n */\nconst forEachEntry = (obj, fn) => {\n const generator = obj && obj[Symbol.iterator];\n\n const iterator = generator.call(obj);\n\n let result;\n\n while ((result = iterator.next()) && !result.done) {\n const pair = result.value;\n fn.call(obj, pair[0], pair[1]);\n }\n}\n\n/**\n * It takes a regular expression and a string, and returns an array of all the matches\n *\n * @param {string} regExp - The regular expression to match against.\n * @param {string} str - The string to search.\n *\n * @returns {Array}\n */\nconst matchAll = (regExp, str) => {\n let matches;\n const arr = [];\n\n while ((matches = regExp.exec(str)) !== null) {\n arr.push(matches);\n }\n\n return arr;\n}\n\n/* Checking if the kindOfTest function returns true when passed an HTMLFormElement. */\nconst isHTMLForm = kindOfTest('HTMLFormElement');\n\nconst toCamelCase = str => {\n return str.toLowerCase().replace(/[-_\\s]([a-z\\d])(\\w*)/g,\n function replacer(m, p1, p2) {\n return p1.toUpperCase() + p2;\n }\n );\n};\n\n/* Creating a function that will check if an object has a property. */\nconst hasOwnProperty = (({hasOwnProperty}) => (obj, prop) => hasOwnProperty.call(obj, prop))(Object.prototype);\n\n/**\n * Determine if a value is a RegExp object\n *\n * @param {*} val The value to test\n *\n * @returns {boolean} True if value is a RegExp object, otherwise false\n */\nconst isRegExp = kindOfTest('RegExp');\n\nconst reduceDescriptors = (obj, reducer) => {\n const descriptors = Object.getOwnPropertyDescriptors(obj);\n const reducedDescriptors = {};\n\n forEach(descriptors, (descriptor, name) => {\n let ret;\n if ((ret = reducer(descriptor, name, obj)) !== false) {\n reducedDescriptors[name] = ret || descriptor;\n }\n });\n\n Object.defineProperties(obj, reducedDescriptors);\n}\n\n/**\n * Makes all methods read-only\n * @param {Object} obj\n */\n\nconst freezeMethods = (obj) => {\n reduceDescriptors(obj, (descriptor, name) => {\n // skip restricted props in strict mode\n if (isFunction(obj) && ['arguments', 'caller', 'callee'].indexOf(name) !== -1) {\n return false;\n }\n\n const value = obj[name];\n\n if (!isFunction(value)) return;\n\n descriptor.enumerable = false;\n\n if ('writable' in descriptor) {\n descriptor.writable = false;\n return;\n }\n\n if (!descriptor.set) {\n descriptor.set = () => {\n throw Error('Can not rewrite read-only method \\'' + name + '\\'');\n };\n }\n });\n}\n\nconst toObjectSet = (arrayOrString, delimiter) => {\n const obj = {};\n\n const define = (arr) => {\n arr.forEach(value => {\n obj[value] = true;\n });\n }\n\n isArray(arrayOrString) ? define(arrayOrString) : define(String(arrayOrString).split(delimiter));\n\n return obj;\n}\n\nconst noop = () => {}\n\nconst toFiniteNumber = (value, defaultValue) => {\n return value != null && Number.isFinite(value = +value) ? value : defaultValue;\n}\n\nconst ALPHA = 'abcdefghijklmnopqrstuvwxyz'\n\nconst DIGIT = '0123456789';\n\nconst ALPHABET = {\n DIGIT,\n ALPHA,\n ALPHA_DIGIT: ALPHA + ALPHA.toUpperCase() + DIGIT\n}\n\nconst generateString = (size = 16, alphabet = ALPHABET.ALPHA_DIGIT) => {\n let str = '';\n const {length} = alphabet;\n while (size--) {\n str += alphabet[Math.random() * length|0]\n }\n\n return str;\n}\n\n/**\n * If the thing is a FormData object, return true, otherwise return false.\n *\n * @param {unknown} thing - The thing to check.\n *\n * @returns {boolean}\n */\nfunction isSpecCompliantForm(thing) {\n return !!(thing && isFunction(thing.append) && thing[Symbol.toStringTag] === 'FormData' && thing[Symbol.iterator]);\n}\n\nconst toJSONObject = (obj) => {\n const stack = new Array(10);\n\n const visit = (source, i) => {\n\n if (isObject(source)) {\n if (stack.indexOf(source) >= 0) {\n return;\n }\n\n if(!('toJSON' in source)) {\n stack[i] = source;\n const target = isArray(source) ? [] : {};\n\n forEach(source, (value, key) => {\n const reducedValue = visit(value, i + 1);\n !isUndefined(reducedValue) && (target[key] = reducedValue);\n });\n\n stack[i] = undefined;\n\n return target;\n }\n }\n\n return source;\n }\n\n return visit(obj, 0);\n}\n\nconst isAsyncFn = kindOfTest('AsyncFunction');\n\nconst isThenable = (thing) =>\n thing && (isObject(thing) || isFunction(thing)) && isFunction(thing.then) && isFunction(thing.catch);\n\n// original code\n// https://github.com/DigitalBrainJS/AxiosPromise/blob/16deab13710ec09779922131f3fa5954320f83ab/lib/utils.js#L11-L34\n\nconst _setImmediate = ((setImmediateSupported, postMessageSupported) => {\n if (setImmediateSupported) {\n return setImmediate;\n }\n\n return postMessageSupported ? ((token, callbacks) => {\n _global.addEventListener(\"message\", ({source, data}) => {\n if (source === _global && data === token) {\n callbacks.length && callbacks.shift()();\n }\n }, false);\n\n return (cb) => {\n callbacks.push(cb);\n _global.postMessage(token, \"*\");\n }\n })(`axios@${Math.random()}`, []) : (cb) => setTimeout(cb);\n})(\n typeof setImmediate === 'function',\n isFunction(_global.postMessage)\n);\n\nconst asap = typeof queueMicrotask !== 'undefined' ?\n queueMicrotask.bind(_global) : ( typeof process !== 'undefined' && process.nextTick || _setImmediate);\n\n// *********************\n\nexport default {\n isArray,\n isArrayBuffer,\n isBuffer,\n isFormData,\n isArrayBufferView,\n isString,\n isNumber,\n isBoolean,\n isObject,\n isPlainObject,\n isReadableStream,\n isRequest,\n isResponse,\n isHeaders,\n isUndefined,\n isDate,\n isFile,\n isBlob,\n isRegExp,\n isFunction,\n isStream,\n isURLSearchParams,\n isTypedArray,\n isFileList,\n forEach,\n merge,\n extend,\n trim,\n stripBOM,\n inherits,\n toFlatObject,\n kindOf,\n kindOfTest,\n endsWith,\n toArray,\n forEachEntry,\n matchAll,\n isHTMLForm,\n hasOwnProperty,\n hasOwnProp: hasOwnProperty, // an alias to avoid ESLint no-prototype-builtins detection\n reduceDescriptors,\n freezeMethods,\n toObjectSet,\n toCamelCase,\n noop,\n toFiniteNumber,\n findKey,\n global: _global,\n isContextDefined,\n ALPHABET,\n generateString,\n isSpecCompliantForm,\n toJSONObject,\n isAsyncFn,\n isThenable,\n setImmediate: _setImmediate,\n asap\n};\n","// The module cache\nvar __webpack_module_cache__ = {};\n\n// The require function\nfunction __webpack_require__(moduleId) {\n\t// Check if module is in cache\n\tvar cachedModule = __webpack_module_cache__[moduleId];\n\tif (cachedModule !== undefined) {\n\t\treturn cachedModule.exports;\n\t}\n\t// Create a new module (and put it into the cache)\n\tvar module = __webpack_module_cache__[moduleId] = {\n\t\t// no module.id needed\n\t\t// no module.loaded needed\n\t\texports: {}\n\t};\n\n\t// Execute the module function\n\t__webpack_modules__[moduleId].call(module.exports, module, module.exports, __webpack_require__);\n\n\t// Return the exports of the module\n\treturn module.exports;\n}\n\n","// getDefaultExport function for compatibility with non-harmony modules\n__webpack_require__.n = (module) => {\n\tvar getter = module && module.__esModule ?\n\t\t() => (module['default']) :\n\t\t() => (module);\n\t__webpack_require__.d(getter, { a: getter });\n\treturn getter;\n};","// define getter functions for harmony exports\n__webpack_require__.d = (exports, definition) => {\n\tfor(var key in definition) {\n\t\tif(__webpack_require__.o(definition, key) && !__webpack_require__.o(exports, key)) {\n\t\t\tObject.defineProperty(exports, key, { enumerable: true, get: definition[key] });\n\t\t}\n\t}\n};","__webpack_require__.o = (obj, prop) => (Object.prototype.hasOwnProperty.call(obj, prop))","// define __esModule on exports\n__webpack_require__.r = (exports) => {\n\tif(typeof Symbol !== 'undefined' && Symbol.toStringTag) {\n\t\tObject.defineProperty(exports, Symbol.toStringTag, { value: 'Module' });\n\t}\n\tObject.defineProperty(exports, '__esModule', { value: true });\n};","import Client from \"./Typesense/Client\";\nimport SearchClient from \"./Typesense/SearchClient\";\nimport * as Errors from \"./Typesense/Errors\";\n\nexport { Client, SearchClient, Errors };\nexport default { Client, SearchClient, Errors };\n"],"names":["Aliases","Alias","name","apiCall","_classCallCheck","_createClass","key","value","_retrieve","_asyncToGenerator","_regeneratorRuntime","mark","_callee","wrap","_callee$","_context","prev","next","abrupt","get","endpointPath","stop","retrieve","apply","arguments","_delete2","_callee2","_callee2$","_context2","delete","_delete","concat","RESOURCEPATH","encodeURIComponent","default","_upsert","mapping","put","upsert","_x","_x2","aliasName","AnalyticsRules","AnalyticsRule","AnalyticsEvents","Analytics","_defineProperty","_analyticsRules","_analyticsEvents","rules","id","undefined","individualAnalyticsRules","events","_create","params","post","create","operation","axios","Agent","HTTPAgent","HTTPSAgent","HTTPError","ObjectAlreadyExists","ObjectNotFound","ObjectUnprocessable","RequestMalformed","RequestUnauthorized","ServerError","TypesenseError","APIKEYHEADERNAME","HEALTHY","UNHEALTHY","isNodeJSEnvironment","process","versions","node","ApiCall","configuration","apiKey","nodes","JSON","parse","stringify","nearestNode","connectionTimeoutSeconds","healthcheckIntervalSeconds","numRetriesPerRequest","numRetries","retryIntervalSeconds","sendApiKeyAsQueryParam","additionalUserHeaders","additionalHeaders","logger","initializeMetadataForNodes","currentNodeIndex","_get","endpoint","queryParameters","_ref","_ref$abortSignal","abortSignal","_ref$responseType","responseType","_args","length","performRequest","_args2","_post","_callee3","bodyParameters","_args3","_callee3$","_context3","_x3","_put","_callee4","_args4","_callee4$","_context4","_x4","_patch","_callee5","_args5","_callee5$","_context5","patch","_x5","getAdapter","axiosAdapter","isCloudflareWorkers","navigator","userAgent","bind","globalThis","_performRequest","_callee6","requestType","_ref2","_this","_ref2$queryParameters","_ref2$bodyParameters","_ref2$additionalHeade","_ref2$abortSignal","_ref2$responseType","_ref2$skipConnectionT","skipConnectionTimeout","_ref2$enableKeepAlive","enableKeepAlive","requestNumber","lastException","wasAborted","_loop","_ret","numTries","_callee6$","_context7","validate","Date","now","debug","toUpperCase","abortListener","requestOptions","cancelToken","source","response","_response$data","_response$data2","_error$code","_error$response","_loop$","_context6","getNextNode","index","aborted","v","Promise","reject","Error","adapter","method","url","uriFor","headers","Object","assign","defaultHeaders","maxContentLength","Infinity","maxBodyLength","validateStatus","status","transformResponse","data","transformedData","startsWith","timeout","keys","httpAgent","warn","keepAlive","httpsAgent","paramsSerializer","_typeof","CancelToken","cancel","addEventListener","token","sent","setNodeHealthcheck","resolve","customErrorForResponse","message","t0","code","timer","removeEventListener","finish","delegateYield","_x6","_x7","_x8","isHealthy","nodeDueForHealthcheck","map","join","candidateNode","i","isDueForHealthcheck","lastAccessTimestamp","_this2","forEach","protocol","host","port","path","_timer","_callee7","seconds","_callee7$","_context8","setTimeout","_x9","messageFromServer","httpBody","errorMessage","trim","error","Configuration","Collections","Collection","Keys","Key","Debug","Metrics","Stats","Health","Operations","MultiSearch","Presets","Preset","Stopwords","Stopword","Conversations","Conversation","Stemming","Client","options","_options$sendApiKeyAs","metrics","stats","health","operations","multiSearch","_collections","individualCollections","_aliases","individualAliases","_keys","individualKeys","_presets","individualPresets","_stopwords","individualStopwords","analytics","stemming","_conversations","individualConversations","collections","collectionName","aliases","presets","stopwords","conversations","Documents","Overrides","Override","Synonyms","Synonym","Document","_documents","_overrides","_synonyms","_update","schema","update","_exists","exists","documents","documentId","individualDocuments","overrides","overrideId","individualOverrides","synonyms","synonymId","individualSynonyms","MissingConfigurationError","setDefaultPathInNode","setDefaultPortInNode","_objectSpread","randomizeNodes","shuffleArray","timeoutSeconds","cacheSearchResultsForSeconds","useServerSideSearchCache","logLevel","setLevel","showDeprecationWarnings","validateNodes","isNodeMissingAnyParameters","some","every","hasOwnProperty","masterNode","readReplicaNodes","array","j","Math","floor","random","ConversationModels","ConversationModel","_conversationsModels","models","individualConversationModels","partialDocument","ImportError","SearchOnlyDocuments","arrayableParams","query_by","query_by_weights","facet_by","group_by","include_fields","exclude_fields","highlight_fields","highlight_full_fields","pinned_hits","hidden_hits","infix","override_tags","num_typos","prefix","sort_by","_inherits","_callSuper","document","action","query","_createMany","import","createMany","_import2","documentsInJSONLFormat","resultsInJSONLFormat","resultsInJSONFormat","failedItems","_args6","Array","isArray","RangeError","includes","isEmptyString","split","r","filter","success","successCount","_import","_importStream","readableStream","_args7","importStream","_export2","_callee8","_args8","_callee8$","_export","_exportStream","_callee9","_args9","_callee9$","_context9","exportStream","str","_TypesenseError","importResults","payload","_Error","httpStatus","constructor","setPrototypeOf","_assertThisInitialized","prototype","_wrapNativeSuper","createHmac","normalizeArrayableParams","generateScopedSearchKey","searchKey","parameters","normalizedParams","paramsJSON","digest","Buffer","from","keyPrefix","substr","rawScopedKey","toString","RequestWithCache","useTextContentType","requestWithCache","clearCache","_perform","searchRequests","commonParams","_ref$cacheSearchResul","additionalQueryParams","queryParams","normalizedSearchRequests","normalizedQueryParams","searches","perform","cacheResponseForSeconds","operationName","presetId","_normalizedParams","search","defaultCacheResponseForSeconds","defaultMaxSize","Map","responseCache","responsePromiseCache","requestContext","requestFunction","requestFunctionArguments","cacheOptions","_cacheOptions$cacheRe","_cacheOptions$maxSize","maxSize","isCacheDisabled","requestFunctionArgumentsJSON","cacheEntry","isEntryValid","cachePromiseEntry","_isEntryValid","responsePromise","isCacheOverMaxSize","oldestEntry","isResponsePromiseCacheOverMaxSize","_oldestEntry","call","_toConsumableArray","requestTimestamp","set","size","SearchOnlyCollection","SearchClient","console","entries","_slicedToArray","_","collection","_search","searchParameters","StemmingDictionaries","StemmingDictionary","_stemmingDictionaries","dictionaries","individualStemmingDictionaries","wordRootCombinations","wordRootCombinationsInJSONLFormat","combo","line","stopwordId","hasNoArrayValues","isNonArrayValue","result","transformedValues","Errors"],"sourceRoot":""} \ No newline at end of file +{"version":3,"file":"typesense.js","mappings":";;;;;;;;;;;;;;;AAAA;AACA;AACA,gCAAgC,OAAO;AACvC;AACA;;;;;;;;;;;;;;;;ACJA;AACA;AACA;;;;;;;;;;;;;;;;;ACFqD;AACrD;AACA,+BAA+B,gEAAgB;AAC/C;;;;;;;;;;;;;;;;ACHA;AACA;AACA;AACA;;;;;;;;;;;;;;;;ACHA;AACA;AACA;AACA;AACA,IAAI;AACJ;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA,KAAK;AACL;AACA;;;;;;;;;;;;;;;;ACxBA;AACA;AACA;;;;;;;;;;;;;;;;;;ACFqE;AACpB;AACjD;AACA,MAAM,wEAAwB;AAC9B;AACA;AACA;AACA,cAAc,8DAAc;AAC5B;;;;;;;;;;;;;;;;;ACR+C;AAC/C;AACA,kBAAkB,cAAc;AAChC;AACA,wHAAwH,6DAAa;AACrI;AACA;AACA;AACA;AACA;AACA,GAAG;AACH;;;;;;;;;;;;;;;;;ACX+C;AAC/C;AACA,cAAc,6DAAa;AAC3B;AACA;AACA;AACA;AACA,GAAG;AACH;;;;;;;;;;;;;;;;ACRA;AACA;AACA;AACA,GAAG;AACH;;;;;;;;;;;;;;;;;ACJiD;AACjD;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA,GAAG;AACH;AACA,GAAG,QAAQ,8DAAc;AACzB;;;;;;;;;;;;;;;;ACZA;AACA;AACA;AACA,IAAI;AACJ;AACA;AACA;;;;;;;;;;;;;;;;ACNA;AACA;AACA,yFAAyF;AACzF,IAAI;AACJ;AACA;AACA,GAAG;AACH;;;;;;;;;;;;;;;;ACPA;AACA;AACA;;;;;;;;;;;;;;;;ACFA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA,QAAQ,YAAY,kEAAkE;AACtF,MAAM;AACN;AACA,MAAM;AACN;AACA;AACA,QAAQ;AACR;AACA;AACA;AACA;AACA;AACA;;;;;;;;;;;;;;;;AC1BA;AACA;AACA;;;;;;;;;;;;;;;;ACFA;AACA;AACA;;;;;;;;;;;;;;;;;;ACFkC;AAC6B;AAC/D;AACA,wBAAwB,sDAAO;AAC/B;AACA,SAAS,qEAAqB;AAC9B;;;;;;;;;;;;;;;;ACNA;AACA;AACA;;;;;;;;;;;;;;;;ACFA;AACA;AACA;AACA,GAAG;AACH;;;;;;;;;;;;;;;;;;;;ACJiD;AACY;AACY;AACtB;AACnD;AACA,SAAS,8DAAc,OAAO,oEAAoB,UAAU,0EAA0B,UAAU,+DAAe;AAC/G;;;;;;;;;;;;;;;;;;;;ACNuD;AACJ;AACsB;AAClB;AACvD;AACA,SAAS,iEAAiB,OAAO,+DAAe,OAAO,0EAA0B,OAAO,iEAAiB;AACzG;;;;;;;;;;;;;;;;;ACNkC;AAClC;AACA,kBAAkB,sDAAO;AACzB;AACA;AACA;AACA,oBAAoB,sDAAO;AAC3B;AACA;AACA;AACA;;;;;;;;;;;;;;;;;;ACVkC;AACS;AAC3C;AACA,UAAU,2DAAW;AACrB,qBAAqB,sDAAO;AAC5B;;;;;;;;;;;;;;;;ACLA;AACA;;AAEA;AACA;AACA,IAAI;AACJ;AACA,GAAG;AACH;;;;;;;;;;;;;;;;;ACRqD;AACrD;AACA;AACA,qCAAqC,gEAAgB;AACrD,cAAc;AACd,+LAA+L,gEAAgB;AAC/M;AACA;;;;;;;;;;;;;;;;;;;;ACPiD;AACA;AACI;AACd;AACvC;AACA;AACA;AACA,uBAAuB,gEAAgB;AACvC;AACA;AACA;AACA;AACA;AACA;AACA,aAAa,yDAAS,eAAe,8DAAc;AACnD;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA,KAAK,GAAG,8DAAc;AACtB,GAAG;AACH;;;;;;;;;;;ACzBA,cAAc,+IAAiC;AAC/C;AACA,gBAAgB;AAChB;AACA;AACA,GAAG,EAAE,yBAAyB,SAAS,yBAAyB;AAChE;AACA,UAAU;AACV;AACA;AACA;AACA;AACA,KAAK;AACL,iDAAiD;AACjD;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA,KAAK;AACL;AACA;AACA,aAAa;AACb,IAAI;AACJ;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA,KAAK;AACL;AACA;AACA;AACA;AACA;AACA;AACA;AACA,MAAM;AACN;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA,GAAG;AACH;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA,OAAO;AACP,KAAK;AACL;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA,SAAS;AACT;AACA,SAAS;AACT;AACA,SAAS;AACT;AACA,SAAS;AACT;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA,WAAW;AACX;AACA;AACA;AACA,KAAK;AACL;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA,oCAAoC;AACpC;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA,0DAA0D;AAC1D;AACA;AACA,UAAU;AACV;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA,KAAK;AACL;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA,mBAAmB,eAAe;AAClC;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA,GAAG;AACH;AACA;AACA,GAAG;AACH;AACA;AACA,GAAG;AACH;AACA,GAAG;AACH;AACA;AACA;AACA,GAAG;AACH;AACA,GAAG;AACH;AACA;AACA;AACA;AACA,KAAK;AACL,GAAG;AACH;AACA,GAAG;AACH;AACA,GAAG;AACH;AACA;AACA;AACA;AACA,aAAa,SAAS;AACtB;AACA;AACA;AACA;AACA;AACA,GAAG;AACH;AACA;AACA;AACA,KAAK;AACL;AACA;AACA;AACA;AACA;AACA,KAAK;AACL;AACA;AACA;AACA;AACA;AACA;AACA,+CAA+C,QAAQ;AACvD;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA,YAAY;AACZ;AACA,YAAY;AACZ;AACA;AACA;AACA;AACA;AACA,KAAK;AACL;AACA,+CAA+C,QAAQ;AACvD;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA,KAAK;AACL;AACA;AACA;AACA,KAAK;AACL;AACA,+CAA+C,QAAQ;AACvD;AACA;AACA;AACA,KAAK;AACL;AACA,+CAA+C,QAAQ;AACvD;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA,KAAK;AACL;AACA;AACA;AACA;AACA;AACA,OAAO;AACP;AACA,GAAG;AACH;AACA,sCAAsC,yBAAyB,SAAS,yBAAyB;;;;;;;;;;AC/SjG;AACA;;AAEA;AACA;AACA,IAAI;AACJ;AACA,GAAG,EAAE,yBAAyB,SAAS,yBAAyB;AAChE;AACA,0BAA0B,yBAAyB,SAAS,yBAAyB;;;;;;;;;;ACTrF;;AAEA,cAAc,mBAAO,CAAC,2IAA+B;AACrD;;AAEA;AACA;AACA;AACA,EAAE;AACF;AACA;AACA,IAAI;AACJ;AACA;AACA;;;;;;;;;;;;;;;;;;;;;ACdgC;AACI;AACF;AACI;AACS;;AAE/C;AACA,QAAQ,gDAAW;AACnB,OAAO,+CAAU;AACjB,SAAS,iDAAY;AACrB;;AAEA,iDAAK;AACL;AACA;AACA,yCAAyC,MAAM;AAC/C,MAAM;AACN;AACA;AACA,8CAA8C,MAAM;AACpD;AACA,CAAC;;AAED,sCAAsC,OAAO;;AAE7C,sCAAsC,iDAAK;;AAE3C,iEAAe;AACf;AACA,eAAe,iDAAK;;AAEpB,WAAW,QAAQ;AACnB;AACA;;AAEA;;AAEA,oBAAoB,YAAY;AAChC;AACA;;AAEA;;AAEA;AACA;;AAEA;AACA,oBAAoB,2DAAU,qBAAqB,GAAG;AACtD;AACA;;AAEA;AACA;AACA;;AAEA;AACA;;AAEA;;AAEA;AACA,yCAAyC,IAAI;AAC7C;AACA;;AAEA;AACA;AACA;;AAEA,gBAAgB,2DAAU;AAC1B;AACA;AACA;AACA;;AAEA;AACA,GAAG;AACH;AACA,CAAC;;;;;;;;;;;;;;;;;;;;;;;;;AC9E2C;AACZ;AACe;AACW;AACJ;AACH;AAC6D;AACxD;AACjB;;AAEvC;AACA;;AAEA;AACA;AACA;AACA;AACA;;AAEA;AACA;AACA;AACA,IAAI;AACJ;AACA;AACA;;AAEA;AACA;;AAEA,qCAAqC,0DAAQ;AAC7C;AACA;AACA;AACA;AACA;AACA,KAAK;AACL,GAAG;;AAEH;AACA,CAAC;;AAED;;AAEA;AACA,aAAa,iDAAK;;;AAGlB;AACA;AACA;;AAEA;AACA;AACA,2CAA2C,iDAAK;AAChD;AACA,kBAAkB,2DAAU,mBAAmB,KAAK,qBAAqB,2DAAU;AACnF,OAAO;AACP,GAAG;AACH,CAAC;;AAED;AACA;AACA;AACA;;AAEA,KAAK,iDAAK;AACV;AACA;;AAEA,KAAK,iDAAK;AACV,iCAAiC,0DAAQ;AACzC;AACA;AACA,KAAK;AACL;AACA;;AAEA,KAAK,iDAAK,4BAA4B,iDAAK;AAC3C;AACA;;AAEA,KAAK,iDAAK;AACV;AACA;;AAEA,KAAK,iDAAK;AACV;AACA;AACA;;AAEA;AACA,iBAAiB,iDAAK;;AAEtB;AACA;;AAEA,iEAAe;AACf;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA,IAAI,EAAE,qEAAa;;AAEnB;;AAEA,uBAAuB,sEAAc;;AAErC;;AAEA;AACA;AACA,GAAG;;AAEH;;AAEA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA,OAAO;;AAEP;;AAEA,UAAU,iDAAK;AACf;AACA;;AAEA;AACA,oCAAoC,wFAAsB;AAC1D;AACA,UAAU,sFAAoB,CAAC,gFAAc;AAC7C;;AAEA,eAAe,oEAAW;AAC1B;AACA;;AAEA,SAAS,iDAAK;AACd;AACA;;AAEA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA,KAAK;;AAEL;;AAEA;;AAEA;AACA;;AAEA;AACA;AACA,OAAO;;AAEP,oCAAoC,iDAAK;;AAEzC,wDAAwD,wFAAsB;AAC9E;AACA,QAAQ,sFAAoB,CAAC,gFAAc;AAC3C;;AAEA;AACA,QAAQ,oEAAW;AACnB;AACA;AACA,SAAS;AACT;AACA;AACA;;AAEA;;AAEA,uCAAuC,iDAAK;;AAE5C;;AAEA;AACA,MAAM,2DAAM;AACZ;AACA,iBAAiB,6DAAY;AAC7B;AACA;AACA;AACA;AACA,OAAO;AACP,KAAK;AACL,IAAI;AACJ;;AAEA;AACA;AACA,YAAY,2DAAU,kBAAkB,2DAAU;AAClD;AACA;AACA;AACA;AACA;;AAEA,UAAU,2DAAU;AACpB;AACA,CAAC,CAAC,EAAC;;;;;;;;;;;;;;;;;;;;;;;;;;;;AClO+B;AACO;AACsB;AAChB;AACQ;AACC;AACZ;AACO;AACqB;AAChB;;AAExD;;AAEA,iEAAe;AACf;AACA,oBAAoB,qEAAa;AACjC;AACA,2BAA2B,6DAAY;AACvC,SAAS,oDAAoD;AAC7D;AACA;AACA;;AAEA;AACA,oCAAoC;AACpC,wCAAwC;;AAExC;;AAEA;AACA;;AAEA;;AAEA;;AAEA;AACA;;AAEA;AACA;AACA;AACA;AACA;AACA,8BAA8B,6DAAY;AAC1C;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;;AAEA,MAAM,2DAAM;AACZ;AACA;AACA,OAAO;AACP;AACA;AACA,OAAO;;AAEP;AACA;AACA;;AAEA;AACA;AACA;AACA,MAAM;AACN;AACA;AACA;AACA;AACA;;AAEA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;;AAEA;AACA;AACA;AACA;AACA;;AAEA,iBAAiB,2DAAU,oBAAoB,2DAAU;;AAEzD;AACA;AACA;;AAEA;AACA;AACA;AACA;AACA,iBAAiB,2DAAU,kBAAkB,2DAAU;;AAEvD;AACA;AACA;;AAEA;AACA;AACA;AACA,mDAAmD,iEAAoB;AACvE;AACA;AACA;AACA,iBAAiB,2DAAU;AAC3B;AACA,2CAA2C,2DAAU,aAAa,2DAAU;AAC5E;AACA;;AAEA;AACA;AACA;;AAEA;AACA;;AAEA;AACA;AACA,MAAM,iDAAK;AACX;AACA,OAAO;AACP;;AAEA;AACA,SAAS,iDAAK;AACd;AACA;;AAEA;AACA;AACA;AACA;;AAEA;AACA;AACA,4CAA4C,sFAAoB;AAChE;AACA;;AAEA;AACA;AACA,wCAAwC,sFAAoB;;AAE5D;;AAEA;AACA;;AAEA;AACA;AACA;AACA;AACA;AACA;AACA;AACA,4CAA4C,gEAAa;AACzD;AACA;AACA;;AAEA;AACA;AACA;AACA;AACA;;AAEA,qBAAqB,qEAAa;;AAElC,oBAAoB,0DAAQ;AAC5B,iBAAiB,2DAAU,2CAA2C,2DAAU;AAChF;AACA;;;AAGA;AACA;AACA,GAAG;AACH,CAAC;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;ACpMY;;AAEkB;AACM;AACD;AACY;AACL;AACc;AACH;AACJ;AACN;AACN;AACW;AACH;AACL;AACY;AACH;AACJ;AACW;;AAEzD;AACA;AACA;AACA,WAAW,QAAQ;AACnB;AACA,aAAa,OAAO;AACpB;AACA;AACA,sBAAsB,sDAAK;AAC3B,mBAAmB,4DAAI,CAAC,sDAAK;;AAE7B;AACA,EAAE,iDAAK,kBAAkB,sDAAK,sBAAsB,iBAAiB;;AAErE;AACA,EAAE,iDAAK,kCAAkC,iBAAiB;;AAE1D;AACA;AACA,0BAA0B,gEAAW;AACrC;;AAEA;AACA;;AAEA;AACA,6BAA6B,0DAAQ;;AAErC;AACA,cAAc,sDAAK;;AAEnB;AACA,sBAAsB,gEAAa;AACnC,oBAAoB,8DAAW;AAC/B,iBAAiB,2DAAQ;AACzB,gBAAgB,iDAAO;AACvB,mBAAmB,8DAAU;;AAE7B;AACA,mBAAmB,4DAAU;;AAE7B;AACA;;AAEA;AACA;AACA;AACA;;AAEA,eAAe,2DAAM;;AAErB;AACA,qBAAqB,iEAAY;;AAEjC;AACA,oBAAoB,4DAAW;;AAE/B,qBAAqB,8DAAY;;AAEjC,4BAA4B,uEAAc,CAAC,iDAAK;;AAEhD,mBAAmB,8DAAQ;;AAE3B,uBAAuB,mEAAc;;AAErC;;AAEA;AACA,iEAAe,KAAK;;;;;;;;;;;;;;;;;ACxFP;;AAEkC;;AAE/C;AACA;AACA;AACA,WAAW,UAAU;AACrB;AACA,aAAa;AACb;AACA;AACA;AACA;AACA;AACA;;AAEA;;AAEA;AACA;AACA,KAAK;;AAEL;;AAEA;AACA;AACA;;AAEA;;AAEA;AACA;AACA;AACA;AACA,KAAK;;AAEL;AACA;AACA;AACA;AACA;AACA;AACA;AACA,OAAO;;AAEP;AACA;AACA;;AAEA;AACA;;AAEA;AACA;AACA;AACA;AACA;;AAEA,yBAAyB,yDAAa;AACtC;AACA,KAAK;AACL;;AAEA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;;AAEA;AACA;AACA;;AAEA;AACA;AACA;AACA;AACA;;AAEA;AACA;AACA,MAAM;AACN;AACA;AACA;;AAEA;AACA;AACA;;AAEA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;;AAEA;AACA;;AAEA;AACA;AACA;;AAEA;;AAEA;;AAEA;AACA;;AAEA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA,KAAK;AACL;AACA;AACA;AACA;AACA;AACA;;AAEA,iEAAe,WAAW,EAAC;;;;;;;;;;;;;;;;;;ACtId;;AAEkC;AACf;;AAEhC;AACA;AACA;AACA,WAAW,SAAS;AACpB,WAAW,SAAS;AACpB,WAAW,SAAS;AACpB;AACA,aAAa,eAAe;AAC5B;AACA;AACA;AACA,EAAE,2DAAU,oDAAoD,2DAAU;AAC1E;AACA;;AAEA,iDAAK,yBAAyB,2DAAU;AACxC;AACA,CAAC;;AAED,iEAAe,aAAa,EAAC;;;;;;;;;;;;;;;;ACxBhB;;AAEE;AACf;AACA;;;;;;;;;;;;;;;;;;;;;;;;ACJa;;AAEqB;AACY;AACW;AACN;AACR;AACI;AACC;AACH;;AAE7C,mBAAmB,6DAAS;;AAE5B;AACA;AACA;AACA,WAAW,QAAQ;AACnB;AACA,YAAY,OAAO;AACnB;AACA;AACA;AACA;AACA;AACA,mBAAmB,8DAAkB;AACrC,oBAAoB,8DAAkB;AACtC;AACA;;AAEA;AACA;AACA;AACA,aAAa,eAAe;AAC5B,aAAa,SAAS;AACtB;AACA,eAAe,SAAS;AACxB;AACA;AACA;AACA;AACA,MAAM;AACN;AACA;;AAEA;;AAEA;AACA;AACA;AACA;AACA;AACA;AACA,YAAY;AACZ;AACA;AACA,UAAU;AACV;AACA;AACA;;AAEA;AACA;AACA;;AAEA;AACA;AACA;AACA;AACA;AACA;AACA,MAAM;AACN;AACA;;AAEA,aAAa,2DAAW;;AAExB,WAAW,yCAAyC;;AAEpD;AACA,MAAM,6DAAS;AACf;AACA;AACA;AACA,OAAO;AACP;;AAEA;AACA,UAAU,iDAAK;AACf;AACA;AACA;AACA,QAAQ;AACR,QAAQ,6DAAS;AACjB;AACA;AACA,SAAS;AACT;AACA;;AAEA,IAAI,6DAAS;AACb;AACA;AACA,KAAK;;AAEL;AACA;;AAEA;AACA,oCAAoC,iDAAK;AACzC;AACA;AACA;;AAEA,eAAe,iDAAK;AACpB;AACA;AACA;AACA;AACA;;AAEA,qBAAqB,wDAAY;;AAEjC;AACA;AACA;AACA;AACA;AACA;AACA;;AAEA;;AAEA;AACA,KAAK;;AAEL;AACA;AACA;AACA,KAAK;;AAEL;AACA;AACA;;AAEA;AACA,qBAAqB,2DAAe;AACpC;AACA;AACA;;AAEA;;AAEA;AACA;AACA;;AAEA;AACA;;AAEA;;AAEA;;AAEA;;AAEA;AACA;AACA;AACA;AACA;AACA,QAAQ;AACR;AACA;AACA;AACA;;AAEA;AACA,gBAAgB,2DAAe;AAC/B,MAAM;AACN;AACA;;AAEA;AACA;;AAEA;AACA;AACA;;AAEA;AACA;;AAEA;AACA,aAAa,2DAAW;AACxB,qBAAqB,6DAAa;AAClC,WAAW,gEAAQ;AACnB;AACA;;AAEA;AACA,iDAAK;AACL;AACA;AACA,wBAAwB,2DAAW,aAAa;AAChD;AACA;AACA,yBAAyB;AACzB,KAAK;AACL;AACA,CAAC;;AAED,iDAAK;AACL;;AAEA;AACA;AACA,0BAA0B,2DAAW,aAAa;AAClD;AACA;AACA;AACA,UAAU,IAAI;AACd;AACA;AACA,OAAO;AACP;AACA;;AAEA;;AAEA;AACA,CAAC;;AAED,iEAAe,KAAK,EAAC;;;;;;;;;;;;;;;;;ACxOR;;AAEmB;;AAEhC;AACA;AACA;AACA,WAAW,QAAQ;AACnB,WAAW,QAAQ;AACnB,WAAW,QAAQ;AACnB,WAAW,QAAQ;AACnB,WAAW,QAAQ;AACnB;AACA,aAAa,OAAO;AACpB;AACA;AACA;;AAEA;AACA;AACA,IAAI;AACJ;AACA;;AAEA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;;AAEA,iDAAK;AACL;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA,cAAc,iDAAK;AACnB;AACA;AACA;AACA;AACA,CAAC;;AAED;AACA;;AAEA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA,uBAAuB;AACvB,CAAC;;AAED;AACA,kDAAkD,YAAY;;AAE9D;AACA;AACA;;AAEA,EAAE,iDAAK;AACP;AACA,GAAG;AACH;AACA,GAAG;;AAEH;;AAEA;;AAEA;;AAEA;;AAEA;AACA;;AAEA,iEAAe,UAAU,EAAC;;;;;;;;;;;;;;;;;;ACtGb;;AAEmB;AACsB;;AAEtD;;AAEA;AACA;AACA;;AAEA;AACA;AACA;AACA;;AAEA,SAAS,iDAAK;AACd;;AAEA;AACA;AACA,2BAA2B,mBAAmB;AAC9C;;AAEA;AACA;AACA;;AAEA;AACA;;AAEA;;AAEA;AACA,MAAM,iDAAK;AACX;AACA;;AAEA;AACA;AACA;;AAEA,OAAO,iDAAK;;AAEZ,MAAM,iDAAK;AACX;AACA;;AAEA,MAAM,iDAAK;AACX;AACA;AACA;;AAEA;AACA;AACA;AACA;AACA,KAAK;AACL;;AAEA;AACA,uBAAuB,iDAAK;;AAE5B;AACA;AACA;AACA;AACA,OAAO;AACP;AACA,KAAK;AACL,GAAG;AACH;;AAEA;AACA;AACA;AACA;;AAEA;AACA;;AAEA;AACA;;AAEA;AACA;AACA;;AAEA,kBAAkB,iDAAK;;AAEvB;AACA;AACA;AACA;;AAEA;AACA,MAAM,iDAAK;;AAEX,QAAQ,iDAAK;AACb;AACA,MAAM,QAAQ,iDAAK;AACnB,iBAAiB,oEAAY;AAC7B,MAAM,SAAS,iDAAK;AACpB;AACA;AACA;AACA,MAAM;AACN;AACA;;AAEA;AACA;;AAEA;AACA;;AAEA;AACA,kBAAkB,iDAAK;;AAEvB;AACA;;AAEA;AACA;AACA;;AAEA;AACA;AACA;;AAEA,YAAY,iDAAK;AACjB;AACA;;AAEA,YAAY,iDAAK;AACjB;AACA;;AAEA;AACA;AACA;AACA;;AAEA;AACA;;AAEA;AACA,kBAAkB,iDAAK;;AAEvB;AACA;;AAEA;AACA;;AAEA;AACA;AACA;;AAEA;AACA;;AAEA;AACA,oBAAoB,iDAAK;;AAEzB;AACA;;AAEA;AACA;AACA;AACA;;AAEA,QAAQ,iDAAK;AACb;AACA,MAAM;AACN;AACA;;AAEA;AACA;;AAEA;AACA;AACA;AACA;;AAEA;AACA;AACA;AACA;AACA;AACA;AACA;;AAEA;AACA;;AAEA;AACA;AACA;;AAEA,IAAI,iDAAK;AACT,kBAAkB,iDAAK;;AAEvB;AACA;AACA;AACA;AACA;;AAEA;;AAEA;AACA;AACA;;AAEA;;AAEA;AACA,KAAK;;AAEL;AACA;;AAEA;AACA;AACA;;AAEA;AACA;;AAEA,IAAI,iDAAK;AACT,sEAAsE,iDAAK;AAC3E,KAAK;;AAEL;AACA;;AAEA;AACA;AACA;;AAEA;AACA;AACA;;AAEA;AACA;AACA;;AAEA;AACA;AACA;;AAEA;AACA;;AAEA;;AAEA;AACA;;AAEA;AACA;AACA;AACA,KAAK;;AAEL;AACA;;AAEA;AACA;;AAEA;AACA;AACA;AACA;AACA;;AAEA,IAAI,iDAAK;;AAET;AACA;AACA;;AAEA;;AAEA;AACA,iDAAK,6CAA6C,MAAM;AACxD,oDAAoD;AACpD;AACA;AACA;AACA;AACA;AACA;AACA,CAAC;;AAED,iDAAK;;AAEL,iEAAe,YAAY,EAAC;;;;;;;;;;;;;;;;;AC7Sf;;AAEqB;;AAElC;AACA;AACA;AACA;;AAEA;AACA;AACA;AACA,aAAa,UAAU;AACvB,aAAa,UAAU;AACvB;AACA,cAAc,QAAQ;AACtB;AACA;AACA;AACA;AACA;AACA;AACA;AACA,KAAK;AACL;AACA;;AAEA;AACA;AACA;AACA,aAAa,QAAQ;AACrB;AACA,eAAe,SAAS;AACxB;AACA;AACA;AACA;AACA;AACA;;AAEA;AACA;AACA;AACA,eAAe;AACf;AACA;AACA;AACA;AACA;AACA;;AAEA;AACA;AACA;AACA;AACA;AACA;AACA,aAAa,UAAU;AACvB;AACA,eAAe;AACf;AACA;AACA,IAAI,iDAAK;AACT;AACA;AACA;AACA,KAAK;AACL;AACA;;AAEA,iEAAe,kBAAkB,EAAC;;;;;;;;;;;;;;;;;;ACtErB;;AAE2C;AACJ;;AAEpD;AACA;AACA;AACA;AACA;AACA,WAAW,QAAQ;AACnB,WAAW,QAAQ;AACnB;AACA,aAAa,QAAQ;AACrB;AACe;AACf,kBAAkB,qEAAa;AAC/B,WAAW,mEAAW;AACtB;AACA;AACA;;;;;;;;;;;;;;;;;;;;;;ACpBa;;AAEkC;AACF;AACD;AACW;AACJ;AACJ;;AAE/C;AACA;AACA;AACA,WAAW,QAAQ;AACnB;AACA,aAAa;AACb;AACA;AACA;AACA;AACA;;AAEA;AACA,cAAc,gEAAa;AAC3B;AACA;;AAEA;AACA;AACA;AACA,WAAW,QAAQ;AACnB;AACA,aAAa,SAAS;AACtB;AACe;AACf;;AAEA,mBAAmB,6DAAY;;AAE/B;AACA,gBAAgB,yDAAa;AAC7B;AACA;AACA;;AAEA;AACA;AACA;;AAEA,kBAAkB,6DAAQ,8BAA8B,0DAAQ;;AAEhE;AACA;;AAEA;AACA,oBAAoB,yDAAa;AACjC;AACA;AACA;AACA;;AAEA,uBAAuB,6DAAY;;AAEnC;AACA,GAAG;AACH,SAAS,+DAAQ;AACjB;;AAEA;AACA;AACA,+BAA+B,yDAAa;AAC5C;AACA;AACA;AACA;AACA,kCAAkC,6DAAY;AAC9C;AACA;;AAEA;AACA,GAAG;AACH;;;;;;;;;;;;;;;;;;AChFa;;AAEmB;AACa;;AAE7C,oDAAoD,wDAAY,KAAK,WAAW;;AAEhF;AACA;AACA;AACA;AACA,WAAW,QAAQ;AACnB,WAAW,QAAQ;AACnB;AACA,aAAa,QAAQ;AACrB;AACe;AACf;AACA;AACA;;AAEA;AACA,QAAQ,iDAAK,0BAA0B,iDAAK;AAC5C,aAAa,iDAAK,aAAa,SAAS;AACxC,MAAM,SAAS,iDAAK;AACpB,aAAa,iDAAK,SAAS;AAC3B,MAAM,SAAS,iDAAK;AACpB;AACA;AACA;AACA;;AAEA;AACA;AACA,SAAS,iDAAK;AACd;AACA,MAAM,UAAU,iDAAK;AACrB;AACA;AACA;;AAEA;AACA;AACA,SAAS,iDAAK;AACd;AACA;AACA;;AAEA;AACA;AACA,SAAS,iDAAK;AACd;AACA,MAAM,UAAU,iDAAK;AACrB;AACA;AACA;;AAEA;AACA;AACA;AACA;AACA,MAAM;AACN;AACA;AACA;;AAEA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;;AAEA,EAAE,iDAAK,qCAAqC;AAC5C;AACA;AACA,KAAK,iDAAK;AACV,GAAG;;AAEH;AACA;;;;;;;;;;;;;;;;;ACzGa;;AAE4B;;AAEzC;AACA;AACA;AACA,WAAW,UAAU;AACrB,WAAW,UAAU;AACrB,WAAW,QAAQ;AACnB;AACA,aAAa,QAAQ;AACrB;AACe;AACf;AACA;AACA;AACA,IAAI;AACJ,eAAe,sDAAU;AACzB;AACA,OAAO,sDAAU,kBAAkB,sDAAU;AAC7C;AACA;AACA;AACA;AACA;AACA;;;;;;;;;;;;;;;;;;;AC1Ba;;AAEqB;AACU;AACO;;AAEnD;AACA;AACA;AACA,WAAW,gBAAgB;AAC3B,WAAW,SAAS;AACpB;AACA,aAAa,GAAG;AAChB;AACe;AACf,yBAAyB,0DAAQ;AACjC;AACA,kBAAkB,6DAAY;AAC9B;;AAEA,EAAE,iDAAK;AACP;AACA,GAAG;;AAEH;;AAEA;AACA;;;;;;;;;;;;;;;;;;;;;;;AC3Ba;;AAEmB;AACe;AACM;AACH;AACY;AAClB;AACc;;AAE1D;AACA;AACA;AACA;AACA,WAAW,KAAK;AAChB,WAAW,UAAU;AACrB,WAAW,UAAU;AACrB;AACA,aAAa,QAAQ;AACrB;AACA;AACA,MAAM,iDAAK;AACX;AACA;AACA,aAAa,iDAAK;AAClB,MAAM;AACN;AACA;AACA;AACA;AACA;;AAEA;AACA;;AAEA;;AAEA,gBAAgB,wDAAoB;;AAEpC;;AAEA;AACA;AACA;AACA,4BAA4B,iDAAK;;AAEjC,2BAA2B,iDAAK;AAChC;AACA;;AAEA,uBAAuB,iDAAK;;AAE5B;AACA,iDAAiD,sEAAc;AAC/D;;AAEA,QAAQ,iDAAK;AACb,MAAM,iDAAK;AACX,MAAM,iDAAK;AACX,MAAM,iDAAK;AACX,MAAM,iDAAK;AACX,MAAM,iDAAK;AACX;AACA;AACA;AACA,QAAQ,iDAAK;AACb;AACA;AACA,QAAQ,iDAAK;AACb,gEAAgE;AAChE;AACA;;AAEA;;AAEA;AACA;AACA,eAAe,wEAAgB;AAC/B;;AAEA,wBAAwB,iDAAK;AAC7B;;AAEA,eAAe,kEAAU;AACzB,wBAAwB,iBAAiB;AACzC;AACA;AACA;AACA;AACA;;AAEA;AACA;AACA;AACA;;AAEA;AACA,GAAG;;AAEH;AACA;AACA;AACA;;AAEA,QAAQ,iDAAK,qBAAqB,iDAAK;AACvC;AACA;;AAEA,gBAAgB,iDAAK;AACrB;AACA;;AAEA;AACA;AACA,QAAQ;AACR;AACA;AACA,kBAAkB,2DAAU,SAAS,2DAAU;AAC/C;AACA;AACA;AACA;AACA;;AAEA;AACA,GAAG;;AAEH;AACA;AACA;AACA;AACA;;AAEA;AACA;;AAEA;AACA;;AAEA;AACA,cAAc,0DAAQ;AACtB,UAAU,0DAAQ;AAClB,GAAG;;AAEH;AACA;AACA,GAAG;;AAEH;AACA;AACA;AACA;AACA;AACA;AACA;;AAEA,iDAAK;AACL;AACA,CAAC;;AAED,iEAAe,QAAQ,EAAC;;;;;;;;;;;;;;;;AChKX;;AAEb,iEAAe;AACf;AACA;AACA;AACA,CAAC,EAAC;;;;;;;;;;;;;;;;ACNK;;;;;;;;;;;;;;;;ACAM;;AAE4B;;AAEzC;AACA;AACA;AACA;AACA,WAAW,QAAQ;AACnB;AACA,aAAa,QAAQ;AACrB;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA,GAAG;AACH;;AAEA;AACA;AACA;AACA,WAAW,qBAAqB;AAChC,WAAW,qBAAqB;AAChC;AACA,aAAa;AACb;AACA;AACA;;AAEA,YAAY,0DAAU;AACtB;;AAEA;;AAEA;AACA;AACA;;AAEA;AACA;AACA;AACA,IAAI;;AAEJ;AACA;AACA,GAAG;AACH;;AAEA,iEAAe,oBAAoB,EAAC;;;;;;;;;;;;;;;;ACzDpC;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;;AAEA;AACA;AACA,CAAC;;AAED,iEAAe,cAAc,EAAC;;;;;;;;;;;;;;;;ACtEjB;;AAEE;AACf;AACA;AACA;AACA;;;;;;;;;;;;;;;;;;ACNa;;AAEmB;AACsC;;AAEtE;AACA;AACA;AACA;AACA,WAAW,QAAQ;AACnB;AACA,aAAa,QAAQ;AACrB;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;;AAEA;AACA;AACA;AACA,WAAW,QAAQ;AACnB,WAAW,QAAQ;AACnB,WAAW,oBAAoB;AAC/B;AACA,aAAa,QAAQ;AACrB;AACe;AACf;AACA;AACA;AACA;AACA;AACA;;AAEA,MAAM,iDAAK;AACX;AACA;AACA;AACA;;AAEA;;AAEA;;AAEA;AACA;AACA,IAAI;AACJ,uBAAuB,iDAAK;AAC5B;AACA,UAAU,wEAAoB;AAC9B;;AAEA;AACA;;AAEA;AACA;AACA;AACA;AACA;;AAEA;AACA;;;;;;;;;;;;;;;;ACpEa;;AAEb;AACA;AACA;AACA,WAAW,QAAQ;AACnB,WAAW,QAAQ;AACnB;AACA,aAAa,QAAQ;AACrB;AACe;AACf;AACA;AACA;AACA;;;;;;;;;;;;;;;;;;;ACduD;AACR;AACf;;AAEhC;AACA,SA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SAAS;AACT;AACA;AACA;;AAEA;AACA;AACA;;AAEA;;AAEA;AACA;;AAEA;;AAEA;AACA;AACA;AACA;AACA,GAAG;;AAEH;AACA,QAAQ,iDAAK;;AAEb;AACA;AACA;;AAEA;;AAEA,IAAI,iDAAK;AACT,uBAAuB,iDAAK;AAC5B,sBAAsB,iDAAK;AAC3B;;AAEA;AACA;AACA;AACA,KAAK;;AAEL;AACA;;AAEA,OAAO,iDAAK;AACZ;AACA;;AAEA;;AAEA;AACA;;AAEA,iEAAe,UAAU,EAAC;;;;;;;;;;;;;;;;;;;AC1Nb;;AAEmB;AACS;AACG;;AAE7B;AACf,SAAS,0DAAU,WAAW,0DAAQ;AACtC;AACA,UAAU,0DAAQ,WAAW,iDAAK;AAClC;AACA;AACA;;AAEA;AACA;AACA,GAAG;AACH;;;;;;;;;;;;;;;;;;;AChBO;AACP;;AAEA;AACA;AACA;AACA;;AAEA;AACA;;AAEA;AACA;AACA;AACA;AACA;AACA;;AAEO;AACP;AACA;AACA;AACA;;AAEA;AACA;AACA;AACA;AACA;;AAEA;AACA;AACA,WAAW;AACX,aAAa,aAAa;AAC1B;AACA;AACA;AACA;AACA;AACA,IAAI;AACJ;AACA;AACA;;AAEO;AACP;;AAEA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;;AAEA;AACA;AACA;AACA,eAAe,aAAa;;AAE5B;AACA;AACA;AACA;AACA;;AAEA;AACA;AACA;AACA;AACA;AACA;AACA,QAAQ;AACR;AACA;AACA;AACA,KAAK;AACL;AACA;AACA;AACA;AACA,GAAG;AACH;AACA,GAAG;AACH;;;;;;;;;;;;;;;;;;ACtFa;;AAE0B;AACQ;;AAE/C;;AAEA;AACA;AACA;AACA;AACA;AACA,CAAC;;AAED;;AAEA;AACA;AACA;AACA,WAAW,mBAAmB;AAC9B,WAAW,SAAS;AACpB,WAAW,SAAS;AACpB;AACA,aAAa;AACb;AACA;AACA;AACA,wBAAwB,iDAAO;AAC/B;;AAEA;AACA;AACA;AACA,gBAAgB,2DAAU;AAC1B;AACA,QAAQ,2DAAU;AAClB;AACA;;AAEA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;;AAEA;AACA;AACA;;AAEA;AACA;AACA;AACA,oBAAoB,KAAK,6BAA6B,gBAAgB;AACtE;AACA;AACA;;AAEA;AACA;AACA;AACA,WAAW,QAAQ;AACnB,WAAW,QAAQ;AACnB,WAAW,UAAU;AACrB;AACA,aAAa;AACb;;AAEA;AACA;AACA,cAAc,2DAAU,8BAA8B,2DAAU;AAChE;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA,kBAAkB,2DAAU,yCAAyC,2DAAU;AAC/E;AACA;AACA;AACA;AACA,gBAAgB,2DAAU,0BAA0B,2DAAU;AAC9D;AACA;AACA;;AAEA,iEAAe;AACf;AACA;AACA,CAAC,EAAC;;;;;;;;;;;;;;;;AClGU;;AAEZ,iEAAe,yCAAyC;;;;;;;;;;;;;;;;ACF3C;;AAEb,iEAAe,iDAAiD,EAAC;;;;;;;;;;;;;;;;;ACFpD;;AAE+D;AAC5E,iEAAe,2DAA2D,wEAAoB,EAAC;;;;;;;;;;;;;;;;;;;ACHrC;AACd;AACR;;AAEpC,iEAAe;AACf;AACA;AACA,mBAAmB;AACnB,YAAY;AACZ,QAAQ;AACR,GAAG;AACH;AACA,CAAC,EAAC;;;;;;;;;;;;;;;;;;;;ACZF;;AAEA;;AAEA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA,aAAa;AACb;AACA;AACA;;AAEA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA,CAAC;;AAED;;AAQC;;;;;;;;;;;;;;;;;;AClDsC;AACI;;AAE3C,iEAAe;AACf,KAAK,6CAAK;AACV,KAAK,sDAAQ;AACb,CAAC;;;;;;;;;;;;;;;;;ACNY;;AAEwB;;AAErC;;AAEA,OAAO,UAAU;AACjB,OAAO,gBAAgB;;AAEvB;AACA;AACA;AACA,CAAC;;AAED;AACA;AACA;AACA;;AAEA;;AAEA;AACA;AACA;AACA,WAAW,QAAQ;AACnB;AACA,aAAa,SAAS;AACtB;AACA,OAAO,SAAS;;AAEhB;AACA;AACA;AACA,WAAW,GAAG;AACd;AACA,aAAa,SAAS;AACtB;AACA;;AAEA;AACA;AACA;AACA,WAAW,GAAG;AACd;AACA,aAAa,SAAS;AACtB;AACA;AACA;AACA;AACA;;AAEA;AACA;AACA;AACA,WAAW,GAAG;AACd;AACA,aAAa,SAAS;AACtB;AACA;;;AAGA;AACA;AACA;AACA,WAAW,GAAG;AACd;AACA,aAAa,SAAS;AACtB;AACA;AACA;AACA;AACA;AACA,IAAI;AACJ;AACA;AACA;AACA;;AAEA;AACA;AACA;AACA,WAAW,GAAG;AACd;AACA,aAAa,SAAS;AACtB;AACA;;AAEA;AACA;AACA;AACA,WAAW,GAAG;AACd,aAAa,SAAS;AACtB;AACA;;AAEA;AACA;AACA;AACA,WAAW,GAAG;AACd;AACA,aAAa,SAAS;AACtB;AACA;;AAEA;AACA;AACA;AACA,WAAW,GAAG;AACd;AACA,aAAa,SAAS;AACtB;AACA;;AAEA;AACA;AACA;AACA,WAAW,GAAG;AACd,aAAa,SAAS;AACtB;AACA;;AAEA;AACA;AACA;AACA,WAAW,GAAG;AACd;AACA,aAAa,SAAS;AACtB;AACA;AACA;AACA;AACA;;AAEA;AACA;AACA;;AAEA;AACA;AACA;AACA,WAAW,GAAG;AACd;AACA,aAAa,SAAS;AACtB;AACA;;AAEA;AACA;AACA;AACA,WAAW,GAAG;AACd;AACA,aAAa,SAAS;AACtB;AACA;;AAEA;AACA;AACA;AACA,WAAW,GAAG;AACd;AACA,aAAa,SAAS;AACtB;AACA;;AAEA;AACA;AACA;AACA,WAAW,GAAG;AACd;AACA,aAAa,SAAS;AACtB;AACA;;AAEA;AACA;AACA;AACA,WAAW,GAAG;AACd;AACA,aAAa,SAAS;AACtB;AACA;;AAEA;AACA;AACA;AACA,WAAW,GAAG;AACd;AACA,aAAa,SAAS;AACtB;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;;AAEA;AACA;AACA;AACA,WAAW,GAAG;AACd;AACA,aAAa,SAAS;AACtB;AACA;;AAEA;;AAEA;AACA;AACA;AACA,WAAW,QAAQ;AACnB;AACA,aAAa,QAAQ;AACrB;AACA;AACA;;AAEA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA,WAAW,cAAc;AACzB,WAAW,UAAU;AACrB;AACA,WAAW,SAAS;AACpB,aAAa;AACb;AACA,2BAA2B,oBAAoB,IAAI;AACnD;AACA;AACA;AACA;;AAEA;AACA;;AAEA;AACA;AACA;AACA;AACA;;AAEA;AACA;AACA,gCAAgC,OAAO;AACvC;AACA;AACA,IAAI;AACJ;AACA;AACA;AACA;;AAEA,gBAAgB,SAAS;AACzB;AACA;AACA;AACA;AACA;;AAEA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;;AAEA;AACA;AACA;AACA;AACA,CAAC;;AAED;;AAEA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA,uBAAuB,SAAS,GAAG,SAAS;AAC5C,4BAA4B;AAC5B;AACA;AACA,WAAW,QAAQ;AACnB;AACA,aAAa,QAAQ;AACrB;AACA;AACA,SAAS,UAAU;AACnB;AACA;AACA;AACA;AACA;AACA,MAAM;AACN,kCAAkC;AAClC,MAAM;AACN;AACA,MAAM;AACN;AACA;AACA;;AAEA,wCAAwC,OAAO;AAC/C;AACA;AACA;AACA;;AAEA;AACA;AACA;AACA,WAAW,QAAQ;AACnB,WAAW,QAAQ;AACnB,WAAW,QAAQ;AACnB;AACA,WAAW,SAAS;AACpB,aAAa,QAAQ;AACrB;AACA,gCAAgC,WAAW,IAAI;AAC/C;AACA;AACA,eAAe,4DAAI;AACnB,MAAM;AACN;AACA;AACA,GAAG,GAAG,WAAW;AACjB;AACA;;AAEA;AACA;AACA;AACA,WAAW,QAAQ;AACnB;AACA,aAAa,QAAQ;AACrB;AACA;AACA;AACA;AACA;AACA;AACA;;AAEA;AACA;AACA,WAAW,UAAU;AACrB,WAAW,UAAU;AACrB,WAAW,QAAQ;AACnB,WAAW,QAAQ;AACnB;AACA,aAAa;AACb;AACA;AACA;AACA;AACA;AACA;AACA,GAAG;AACH;AACA;;AAEA;AACA;AACA,WAAW,QAAQ;AACnB,WAAW,QAAQ;AACnB,WAAW,kBAAkB;AAC7B,WAAW,UAAU;AACrB;AACA,aAAa;AACb;AACA;AACA;AACA;AACA;AACA;;AAEA;AACA;AACA;;AAEA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA,IAAI;;AAEJ;AACA;;AAEA;AACA;AACA;AACA,WAAW,QAAQ;AACnB,WAAW,QAAQ;AACnB,WAAW,QAAQ;AACnB;AACA,aAAa;AACb;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;;;AAGA;AACA;AACA;AACA,WAAW,GAAG;AACd;AACA,aAAa;AACb;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;;AAEA;AACA;AACA;AACA;AACA,WAAW;AACX;AACA,aAAa;AACb;AACA;AACA;AACA;AACA;AACA;AACA;AACA,CAAC;;AAED;AACA;AACA;AACA,WAAW,kBAAkB;AAC7B,WAAW,UAAU;AACrB;AACA,aAAa;AACb;AACA;AACA;;AAEA;;AAEA;;AAEA;AACA;AACA;AACA;AACA;;AAEA;AACA;AACA;AACA,WAAW,QAAQ;AACnB,WAAW,QAAQ;AACnB;AACA,aAAa;AACb;AACA;AACA;AACA;;AAEA;AACA;AACA;;AAEA;AACA;;AAEA;AACA;;AAEA;AACA;AACA;AACA;AACA;AACA;AACA;;AAEA;AACA,0BAA0B,eAAe;;AAEzC;AACA;AACA;AACA,WAAW,GAAG;AACd;AACA,aAAa,SAAS;AACtB;AACA;;AAEA;AACA;AACA;;AAEA;AACA;AACA;AACA;AACA;AACA,GAAG;;AAEH;AACA;;AAEA;AACA;AACA,WAAW,QAAQ;AACnB;;AAEA;AACA;AACA;AACA;AACA;AACA;;AAEA;;AAEA;;AAEA;;AAEA;AACA;AACA;AACA;;AAEA;AACA;AACA;AACA;AACA;AACA,GAAG;AACH;;AAEA;AACA;;AAEA;AACA;AACA;AACA,KAAK;AACL;;AAEA;;AAEA;AACA;;AAEA;;AAEA;AACA;AACA;;AAEA;;AAEA;;AAEA;AACA;AACA;AACA;AACA;;AAEA;AACA;AACA,SAAS,QAAQ;AACjB;AACA;AACA;;AAEA;AACA;;AAEA;AACA;AACA;AACA,WAAW,SAAS;AACpB;AACA,aAAa;AACb;AACA;AACA;AACA;;AAEA;AACA;;AAEA;;AAEA;AACA;AACA;AACA;;AAEA;AACA;AACA;;AAEA;AACA;AACA;AACA,SAAS;;AAET;;AAEA;AACA;AACA;;AAEA;AACA;;AAEA;AACA;;AAEA;;AAEA;AACA;;AAEA;AACA;;AAEA;AACA;AACA;AACA;;AAEA;AACA,0CAA0C,aAAa;AACvD;AACA;AACA;AACA,KAAK;;AAEL;AACA;AACA;AACA;AACA,GAAG,WAAW,cAAc;AAC5B,CAAC;AACD;AACA;AACA;;AAEA;AACA;;AAEA;;AAEA,iEAAe;AACf;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA,CAAC,EAAC;;;;;;;;;;;ACvvBF;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA,QAAQ,IAA0C;AAClD,QAAQ,oCAAO,UAAU;AAAA;AAAA;AAAA;AAAA,kGAAC;AAC1B,MAAM,KAAK,EAIN;AACL,CAAC;AACD;;AAEA;AACA;AACA;AACA;AACA;AACA;;AAEA;AACA;AACA;AACA;AACA;AACA;AACA;;AAEA;AACA;;AAEA;AACA;AACA;AACA;AACA;AACA,UAAU;AACV;AACA;AACA,cAAc;AACd;AACA;AACA;AACA;AACA;AACA;AACA;;AAEA;AACA;AACA;AACA;AACA;AACA,cAAc;AACd;AACA;AACA;AACA;AACA;AACA;;AAEA;AACA;AACA;AACA;AACA;AACA;;AAEA;AACA,0BAA0B;AAC1B,UAAU;AACV;AACA,UAAU;AACV;AACA,UAAU;AACV;AACA,UAAU;AACV;AACA;AACA;;AAEA;;AAEA;AACA;AACA;;AAEA;AACA,wBAAwB,uBAAuB;AAC/C;AACA;AACA;AACA;AACA;;AAEA;AACA;;AAEA;AACA;AACA;AACA;AACA;;AAEA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;;AAEA;AACA;AACA;AACA;AACA;AACA;AACA;;AAEA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA,gBAAgB;AAChB;AACA;AACA;AACA;AACA;AACA,gBAAgB;AAChB;AACA;AACA;AACA;AACA;AACA,gBAAgB;AAChB;AACA;;AAEA;AACA;AACA;AACA,QAAQ;AACR;AACA;;AAEA;AACA;;AAEA;;AAEA;AACA;AACA;AACA;AACA,YAAY;;AAEZ;AACA;AACA;AACA,qEAAqE;AACrE,YAAY;AACZ;;AAEA;AACA;;AAEA;;AAEA;AACA;AACA,YAAY;;AAEZ;AACA;AACA;AACA;AACA;AACA;AACA;AACA,0CAA0C;AAC1C;AACA;AACA;AACA,gBAAgB;AAChB;;AAEA;AACA;AACA;AACA;;AAEA;AACA;;AAEA;AACA;;AAEA;AACA;AACA;AACA,YAAY;;AAEZ;AACA;AACA;AACA,qDAAqD;AACrD,YAAY;AACZ;;AAEA;AACA;AACA;AACA;AACA;AACA;AACA;AACA,YAAY;AACZ;AACA;AACA;;AAEA;AACA;AACA;AACA;AACA;;AAEA;;AAEA,sBAAsB;AACtB;;AAEA;;AAEA;AACA;AACA;AACA,YAAY;AACZ;AACA,YAAY;AACZ;AACA;AACA;;AAEA;AACA;AACA,oCAAoC;AACpC;AACA;;AAEA;AACA;AACA;;AAEA;AACA;AACA;AACA;AACA;AACA;;AAEA;AACA;AACA;AACA;AACA;;AAEA;AACA;AACA;;AAEA;AACA;AACA;;AAEA;AACA;AACA;AACA;AACA;;AAEA;AACA;AACA;AACA;AACA;AACA;;AAEA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;;AA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","sources":["webpack://Typesense/./node_modules/.pnpm/@babel+runtime@7.26.9/node_modules/@babel/runtime/helpers/esm/arrayLikeToArray.js","webpack://Typesense/./node_modules/.pnpm/@babel+runtime@7.26.9/node_modules/@babel/runtime/helpers/esm/arrayWithHoles.js","webpack://Typesense/./node_modules/.pnpm/@babel+runtime@7.26.9/node_modules/@babel/runtime/helpers/esm/arrayWithoutHoles.js","webpack://Typesense/./node_modules/.pnpm/@babel+runtime@7.26.9/node_modules/@babel/runtime/helpers/esm/assertThisInitialized.js","webpack://Typesense/./node_modules/.pnpm/@babel+runtime@7.26.9/node_modules/@babel/runtime/helpers/esm/asyncToGenerator.js","webpack://Typesense/./node_modules/.pnpm/@babel+runtime@7.26.9/node_modules/@babel/runtime/helpers/esm/classCallCheck.js","webpack://Typesense/./node_modules/.pnpm/@babel+runtime@7.26.9/node_modules/@babel/runtime/helpers/esm/construct.js","webpack://Typesense/./node_modules/.pnpm/@babel+runtime@7.26.9/node_modules/@babel/runtime/helpers/esm/createClass.js","webpack://Typesense/./node_modules/.pnpm/@babel+runtime@7.26.9/node_modules/@babel/runtime/helpers/esm/defineProperty.js","webpack://Typesense/./node_modules/.pnpm/@babel+runtime@7.26.9/node_modules/@babel/runtime/helpers/esm/getPrototypeOf.js","webpack://Typesense/./node_modules/.pnpm/@babel+runtime@7.26.9/node_modules/@babel/runtime/helpers/esm/inherits.js","webpack://Typesense/./node_modules/.pnpm/@babel+runtime@7.26.9/node_modules/@babel/runtime/helpers/esm/isNativeFunction.js","webpack://Typesense/./node_modules/.pnpm/@babel+runtime@7.26.9/node_modules/@babel/runtime/helpers/esm/isNativeReflectConstruct.js","webpack://Typesense/./node_modules/.pnpm/@babel+runtime@7.26.9/node_modules/@babel/runtime/helpers/esm/iterableToArray.js","webpack://Typesense/./node_modules/.pnpm/@babel+runtime@7.26.9/node_modules/@babel/runtime/helpers/esm/iterableToArrayLimit.js","webpack://Typesense/./node_modules/.pnpm/@babel+runtime@7.26.9/node_modules/@babel/runtime/helpers/esm/nonIterableRest.js","webpack://Typesense/./node_modules/.pnpm/@babel+runtime@7.26.9/node_modules/@babel/runtime/helpers/esm/nonIterableSpread.js","webpack://Typesense/./node_modules/.pnpm/@babel+runtime@7.26.9/node_modules/@babel/runtime/helpers/esm/possibleConstructorReturn.js","webpack://Typesense/./node_modules/.pnpm/@babel+runtime@7.26.9/node_modules/@babel/runtime/helpers/esm/readOnlyError.js","webpack://Typesense/./node_modules/.pnpm/@babel+runtime@7.26.9/node_modules/@babel/runtime/helpers/esm/setPrototypeOf.js","webpack://Typesense/./node_modules/.pnpm/@babel+runtime@7.26.9/node_modules/@babel/runtime/helpers/esm/slicedToArray.js","webpack://Typesense/./node_modules/.pnpm/@babel+runtime@7.26.9/node_modules/@babel/runtime/helpers/esm/toConsumableArray.js","webpack://Typesense/./node_modules/.pnpm/@babel+runtime@7.26.9/node_modules/@babel/runtime/helpers/esm/toPrimitive.js","webpack://Typesense/./node_modules/.pnpm/@babel+runtime@7.26.9/node_modules/@babel/runtime/helpers/esm/toPropertyKey.js","webpack://Typesense/./node_modules/.pnpm/@babel+runtime@7.26.9/node_modules/@babel/runtime/helpers/esm/typeof.js","webpack://Typesense/./node_modules/.pnpm/@babel+runtime@7.26.9/node_modules/@babel/runtime/helpers/esm/unsupportedIterableToArray.js","webpack://Typesense/./node_modules/.pnpm/@babel+runtime@7.26.9/node_modules/@babel/runtime/helpers/esm/wrapNativeSuper.js","webpack://Typesense/./node_modules/.pnpm/@babel+runtime@7.26.9/node_modules/@babel/runtime/helpers/regeneratorRuntime.js","webpack://Typesense/./node_modules/.pnpm/@babel+runtime@7.26.9/node_modules/@babel/runtime/helpers/typeof.js","webpack://Typesense/./node_modules/.pnpm/@babel+runtime@7.26.9/node_modules/@babel/runtime/regenerator/index.js","webpack://Typesense/./node_modules/.pnpm/axios@1.7.9/node_modules/axios/lib/adapters/adapters.js","webpack://Typesense/./node_modules/.pnpm/axios@1.7.9/node_modules/axios/lib/adapters/fetch.js","webpack://Typesense/./node_modules/.pnpm/axios@1.7.9/node_modules/axios/lib/adapters/xhr.js","webpack://Typesense/./node_modules/.pnpm/axios@1.7.9/node_modules/axios/lib/axios.js","webpack://Typesense/./node_modules/.pnpm/axios@1.7.9/node_modules/axios/lib/cancel/CancelToken.js","webpack://Typesense/./node_modules/.pnpm/axios@1.7.9/node_modules/axios/lib/cancel/CanceledError.js","webpack://Typesense/./node_modules/.pnpm/axios@1.7.9/node_modules/axios/lib/cancel/isCancel.js","webpack://Typesense/./node_modules/.pnpm/axios@1.7.9/node_modules/axios/lib/core/Axios.js","webpack://Typesense/./node_modules/.pnpm/axios@1.7.9/node_modules/axios/lib/core/AxiosError.js","webpack://Typesense/./node_modules/.pnpm/axios@1.7.9/node_modules/axios/lib/core/AxiosHeaders.js","webpack://Typesense/./node_modules/.pnpm/axios@1.7.9/node_modules/axios/lib/core/InterceptorManager.js","webpack://Typesense/./node_modules/.pnpm/axios@1.7.9/node_modules/axios/lib/core/buildFullPath.js","webpack://Typesense/./node_modules/.pnpm/axios@1.7.9/node_modules/axios/lib/core/dispatchRequest.js","webpack://Typesense/./node_modules/.pnpm/axios@1.7.9/node_modules/axios/lib/core/mergeConfig.js","webpack://Typesense/./node_modules/.pnpm/axios@1.7.9/node_modules/axios/lib/core/settle.js","webpack://Typesense/./node_modules/.pnpm/axios@1.7.9/node_modules/axios/lib/core/transformData.js","webpack://Typesense/./node_modules/.pnpm/axios@1.7.9/node_modules/axios/lib/defaults/index.js","webpack://Typesense/./node_modules/.pnpm/axios@1.7.9/node_modules/axios/lib/defaults/transitional.js","webpack://Typesense/./node_modules/.pnpm/axios@1.7.9/node_modules/axios/lib/env/data.js","webpack://Typesense/./node_modules/.pnpm/axios@1.7.9/node_modules/axios/lib/helpers/AxiosURLSearchParams.js","webpack://Typesense/./node_modules/.pnpm/axios@1.7.9/node_modules/axios/lib/helpers/HttpStatusCode.js","webpack://Typesense/./node_modules/.pnpm/axios@1.7.9/node_modules/axios/lib/helpers/bind.js","webpack://Typesense/./node_modules/.pnpm/axios@1.7.9/node_modules/axios/lib/helpers/buildURL.js","webpack://Typesense/./node_modules/.pnpm/axios@1.7.9/node_modules/axios/lib/helpers/combineURLs.js","webpack://Typesense/./node_modules/.pnpm/axios@1.7.9/node_modules/axios/lib/helpers/composeSignals.js","webpack://Typesense/./node_modules/.pnpm/axios@1.7.9/node_modules/axios/lib/helpers/cookies.js","webpack://Typesense/./node_modules/.pnpm/axios@1.7.9/node_modules/axios/lib/helpers/formDataToJSON.js","webpack://Typesense/./node_modules/.pnpm/axios@1.7.9/node_modules/axios/lib/helpers/isAbsoluteURL.js","webpack://Typesense/./node_modules/.pnpm/axios@1.7.9/node_modules/axios/lib/helpers/isAxiosError.js","webpack://Typesense/./node_modules/.pnpm/axios@1.7.9/node_modules/axios/lib/helpers/isURLSameOrigin.js","webpack://Typesense/./node_modules/.pnpm/axios@1.7.9/node_modules/axios/lib/helpers/null.js","webpack://Typesense/./node_modules/.pnpm/axios@1.7.9/node_modules/axios/lib/helpers/parseHeaders.js","webpack://Typesense/./node_modules/.pnpm/axios@1.7.9/node_modules/axios/lib/helpers/parseProtocol.js","webpack://Typesense/./node_modules/.pnpm/axios@1.7.9/node_modules/axios/lib/helpers/progressEventReducer.js","webpack://Typesense/./node_modules/.pnpm/axios@1.7.9/node_modules/axios/lib/helpers/resolveConfig.js","webpack://Typesense/./node_modules/.pnpm/axios@1.7.9/node_modules/axios/lib/helpers/speedometer.js","webpack://Typesense/./node_modules/.pnpm/axios@1.7.9/node_modules/axios/lib/helpers/spread.js","webpack://Typesense/./node_modules/.pnpm/axios@1.7.9/node_modules/axios/lib/helpers/throttle.js","webpack://Typesense/./node_modules/.pnpm/axios@1.7.9/node_modules/axios/lib/helpers/toFormData.js","webpack://Typesense/./node_modules/.pnpm/axios@1.7.9/node_modules/axios/lib/helpers/toURLEncodedForm.js","webpack://Typesense/./node_modules/.pnpm/axios@1.7.9/node_modules/axios/lib/helpers/trackStream.js","webpack://Typesense/./node_modules/.pnpm/axios@1.7.9/node_modules/axios/lib/helpers/validator.js","webpack://Typesense/./node_modules/.pnpm/axios@1.7.9/node_modules/axios/lib/platform/browser/classes/Blob.js","webpack://Typesense/./node_modules/.pnpm/axios@1.7.9/node_modules/axios/lib/platform/browser/classes/FormData.js","webpack://Typesense/./node_modules/.pnpm/axios@1.7.9/node_modules/axios/lib/platform/browser/classes/URLSearchParams.js","webpack://Typesense/./node_modules/.pnpm/axios@1.7.9/node_modules/axios/lib/platform/browser/index.js","webpack://Typesense/./node_modules/.pnpm/axios@1.7.9/node_modules/axios/lib/platform/common/utils.js","webpack://Typesense/./node_modules/.pnpm/axios@1.7.9/node_modules/axios/lib/platform/index.js","webpack://Typesense/./node_modules/.pnpm/axios@1.7.9/node_modules/axios/lib/utils.js","webpack://Typesense/./node_modules/.pnpm/loglevel@1.9.2/node_modules/loglevel/lib/loglevel.js","webpack://Typesense/./src/Typesense/Alias.ts","webpack://Typesense/./src/Typesense/Aliases.ts","webpack://Typesense/./src/Typesense/Analytics.ts","webpack://Typesense/./src/Typesense/AnalyticsEvents.ts","webpack://Typesense/./src/Typesense/AnalyticsRule.ts","webpack://Typesense/./src/Typesense/AnalyticsRules.ts","webpack://Typesense/./src/Typesense/ApiCall.ts","webpack://Typesense/./src/Typesense/Client.ts","webpack://Typesense/./src/Typesense/Collection.ts","webpack://Typesense/./src/Typesense/Collections.ts","webpack://Typesense/./src/Typesense/Configuration.ts","webpack://Typesense/./src/Typesense/Conversation.ts","webpack://Typesense/./src/Typesense/ConversationModel.ts","webpack://Typesense/./src/Typesense/ConversationModels.ts","webpack://Typesense/./src/Typesense/Conversations.ts","webpack://Typesense/./src/Typesense/Debug.ts","webpack://Typesense/./src/Typesense/Document.ts","webpack://Typesense/./src/Typesense/Documents.ts","webpack://Typesense/./src/Typesense/Errors/HTTPError.ts","webpack://Typesense/./src/Typesense/Errors/ImportError.ts","webpack://Typesense/./src/Typesense/Errors/MissingConfigurationError.ts","webpack://Typesense/./src/Typesense/Errors/ObjectAlreadyExists.ts","webpack://Typesense/./src/Typesense/Errors/ObjectNotFound.ts","webpack://Typesense/./src/Typesense/Errors/ObjectUnprocessable.ts","webpack://Typesense/./src/Typesense/Errors/RequestMalformed.ts","webpack://Typesense/./src/Typesense/Errors/RequestUnauthorized.ts","webpack://Typesense/./src/Typesense/Errors/ServerError.ts","webpack://Typesense/./src/Typesense/Errors/TypesenseError.ts","webpack://Typesense/./src/Typesense/Errors/index.ts","webpack://Typesense/./src/Typesense/Health.ts","webpack://Typesense/./src/Typesense/Key.ts","webpack://Typesense/./src/Typesense/Keys.ts","webpack://Typesense/./src/Typesense/Metrics.ts","webpack://Typesense/./src/Typesense/MultiSearch.ts","webpack://Typesense/./src/Typesense/Operations.ts","webpack://Typesense/./src/Typesense/Override.ts","webpack://Typesense/./src/Typesense/Overrides.ts","webpack://Typesense/./src/Typesense/Preset.ts","webpack://Typesense/./src/Typesense/Presets.ts","webpack://Typesense/./src/Typesense/RequestWithCache.ts","webpack://Typesense/./src/Typesense/SearchClient.ts","webpack://Typesense/./src/Typesense/SearchOnlyCollection.ts","webpack://Typesense/./src/Typesense/SearchOnlyDocuments.ts","webpack://Typesense/./src/Typesense/Stats.ts","webpack://Typesense/./src/Typesense/Stemming.ts","webpack://Typesense/./src/Typesense/StemmingDictionaries.ts","webpack://Typesense/./src/Typesense/StemmingDictionary.ts","webpack://Typesense/./src/Typesense/Stopword.ts","webpack://Typesense/./src/Typesense/Stopwords.ts","webpack://Typesense/./src/Typesense/Synonym.ts","webpack://Typesense/./src/Typesense/Synonyms.ts","webpack://Typesense/./src/Typesense/Types.ts","webpack://Typesense/./src/Typesense/Utils.ts","webpack://Typesense/ignored|/home/fanis/code/typesense/js-lib/src/Typesense|crypto","webpack://Typesense/ignored|/home/fanis/code/typesense/js-lib/src/Typesense|https","webpack://Typesense/ignored|/home/fanis/code/typesense/js-lib/src/Typesense|http","webpack://Typesense/webpack/bootstrap","webpack://Typesense/webpack/runtime/compat get default export","webpack://Typesense/webpack/runtime/define property getters","webpack://Typesense/webpack/runtime/hasOwnProperty shorthand","webpack://Typesense/webpack/runtime/make namespace object","webpack://Typesense/./src/Typesense.ts"],"sourcesContent":["function _arrayLikeToArray(r, a) {\n (null == a || a > r.length) && (a = r.length);\n for (var e = 0, n = Array(a); e < a; e++) n[e] = r[e];\n return n;\n}\nexport { _arrayLikeToArray as default };","function _arrayWithHoles(r) {\n if (Array.isArray(r)) return r;\n}\nexport { _arrayWithHoles as default };","import arrayLikeToArray from \"./arrayLikeToArray.js\";\nfunction _arrayWithoutHoles(r) {\n if (Array.isArray(r)) return arrayLikeToArray(r);\n}\nexport { _arrayWithoutHoles as default };","function _assertThisInitialized(e) {\n if (void 0 === e) throw new ReferenceError(\"this hasn't been initialised - super() hasn't been called\");\n return e;\n}\nexport { _assertThisInitialized as default };","function asyncGeneratorStep(n, t, e, r, o, a, c) {\n try {\n var i = n[a](c),\n u = i.value;\n } catch (n) {\n return void e(n);\n }\n i.done ? t(u) : Promise.resolve(u).then(r, o);\n}\nfunction _asyncToGenerator(n) {\n return function () {\n var t = this,\n e = arguments;\n return new Promise(function (r, o) {\n var a = n.apply(t, e);\n function _next(n) {\n asyncGeneratorStep(a, r, o, _next, _throw, \"next\", n);\n }\n function _throw(n) {\n asyncGeneratorStep(a, r, o, _next, _throw, \"throw\", n);\n }\n _next(void 0);\n });\n };\n}\nexport { _asyncToGenerator as default };","function _classCallCheck(a, n) {\n if (!(a instanceof n)) throw new TypeError(\"Cannot call a class as a function\");\n}\nexport { _classCallCheck as default };","import isNativeReflectConstruct from \"./isNativeReflectConstruct.js\";\nimport setPrototypeOf from \"./setPrototypeOf.js\";\nfunction _construct(t, e, r) {\n if (isNativeReflectConstruct()) return Reflect.construct.apply(null, arguments);\n var o = [null];\n o.push.apply(o, e);\n var p = new (t.bind.apply(t, o))();\n return r && setPrototypeOf(p, r.prototype), p;\n}\nexport { _construct as default };","import toPropertyKey from \"./toPropertyKey.js\";\nfunction _defineProperties(e, r) {\n for (var t = 0; t < r.length; t++) {\n var o = r[t];\n o.enumerable = o.enumerable || !1, o.configurable = !0, \"value\" in o && (o.writable = !0), Object.defineProperty(e, toPropertyKey(o.key), o);\n }\n}\nfunction _createClass(e, r, t) {\n return r && _defineProperties(e.prototype, r), t && _defineProperties(e, t), Object.defineProperty(e, \"prototype\", {\n writable: !1\n }), e;\n}\nexport { _createClass as default };","import toPropertyKey from \"./toPropertyKey.js\";\nfunction _defineProperty(e, r, t) {\n return (r = toPropertyKey(r)) in e ? Object.defineProperty(e, r, {\n value: t,\n enumerable: !0,\n configurable: !0,\n writable: !0\n }) : e[r] = t, e;\n}\nexport { _defineProperty as default };","function _getPrototypeOf(t) {\n return _getPrototypeOf = Object.setPrototypeOf ? Object.getPrototypeOf.bind() : function (t) {\n return t.__proto__ || Object.getPrototypeOf(t);\n }, _getPrototypeOf(t);\n}\nexport { _getPrototypeOf as default };","import setPrototypeOf from \"./setPrototypeOf.js\";\nfunction _inherits(t, e) {\n if (\"function\" != typeof e && null !== e) throw new TypeError(\"Super expression must either be null or a function\");\n t.prototype = Object.create(e && e.prototype, {\n constructor: {\n value: t,\n writable: !0,\n configurable: !0\n }\n }), Object.defineProperty(t, \"prototype\", {\n writable: !1\n }), e && setPrototypeOf(t, e);\n}\nexport { _inherits as default };","function _isNativeFunction(t) {\n try {\n return -1 !== Function.toString.call(t).indexOf(\"[native code]\");\n } catch (n) {\n return \"function\" == typeof t;\n }\n}\nexport { _isNativeFunction as default };","function _isNativeReflectConstruct() {\n try {\n var t = !Boolean.prototype.valueOf.call(Reflect.construct(Boolean, [], function () {}));\n } catch (t) {}\n return (_isNativeReflectConstruct = function _isNativeReflectConstruct() {\n return !!t;\n })();\n}\nexport { _isNativeReflectConstruct as default };","function _iterableToArray(r) {\n if (\"undefined\" != typeof Symbol && null != r[Symbol.iterator] || null != r[\"@@iterator\"]) return Array.from(r);\n}\nexport { _iterableToArray as default };","function _iterableToArrayLimit(r, l) {\n var t = null == r ? null : \"undefined\" != typeof Symbol && r[Symbol.iterator] || r[\"@@iterator\"];\n if (null != t) {\n var e,\n n,\n i,\n u,\n a = [],\n f = !0,\n o = !1;\n try {\n if (i = (t = t.call(r)).next, 0 === l) {\n if (Object(t) !== t) return;\n f = !1;\n } else for (; !(f = (e = i.call(t)).done) && (a.push(e.value), a.length !== l); f = !0);\n } catch (r) {\n o = !0, n = r;\n } finally {\n try {\n if (!f && null != t[\"return\"] && (u = t[\"return\"](), Object(u) !== u)) return;\n } finally {\n if (o) throw n;\n }\n }\n return a;\n }\n}\nexport { _iterableToArrayLimit as default };","function _nonIterableRest() {\n throw new TypeError(\"Invalid attempt to destructure non-iterable instance.\\nIn order to be iterable, non-array objects must have a [Symbol.iterator]() method.\");\n}\nexport { _nonIterableRest as default };","function _nonIterableSpread() {\n throw new TypeError(\"Invalid attempt to spread non-iterable instance.\\nIn order to be iterable, non-array objects must have a [Symbol.iterator]() method.\");\n}\nexport { _nonIterableSpread as default };","import _typeof from \"./typeof.js\";\nimport assertThisInitialized from \"./assertThisInitialized.js\";\nfunction _possibleConstructorReturn(t, e) {\n if (e && (\"object\" == _typeof(e) || \"function\" == typeof e)) return e;\n if (void 0 !== e) throw new TypeError(\"Derived constructors may only return object or undefined\");\n return assertThisInitialized(t);\n}\nexport { _possibleConstructorReturn as default };","function _readOnlyError(r) {\n throw new TypeError('\"' + r + '\" is read-only');\n}\nexport { _readOnlyError as default };","function _setPrototypeOf(t, e) {\n return _setPrototypeOf = Object.setPrototypeOf ? Object.setPrototypeOf.bind() : function (t, e) {\n return t.__proto__ = e, t;\n }, _setPrototypeOf(t, e);\n}\nexport { _setPrototypeOf as default };","import arrayWithHoles from \"./arrayWithHoles.js\";\nimport iterableToArrayLimit from \"./iterableToArrayLimit.js\";\nimport unsupportedIterableToArray from \"./unsupportedIterableToArray.js\";\nimport nonIterableRest from \"./nonIterableRest.js\";\nfunction _slicedToArray(r, e) {\n return arrayWithHoles(r) || iterableToArrayLimit(r, e) || unsupportedIterableToArray(r, e) || nonIterableRest();\n}\nexport { _slicedToArray as default };","import arrayWithoutHoles from \"./arrayWithoutHoles.js\";\nimport iterableToArray from \"./iterableToArray.js\";\nimport unsupportedIterableToArray from \"./unsupportedIterableToArray.js\";\nimport nonIterableSpread from \"./nonIterableSpread.js\";\nfunction _toConsumableArray(r) {\n return arrayWithoutHoles(r) || iterableToArray(r) || unsupportedIterableToArray(r) || nonIterableSpread();\n}\nexport { _toConsumableArray as default };","import _typeof from \"./typeof.js\";\nfunction toPrimitive(t, r) {\n if (\"object\" != _typeof(t) || !t) return t;\n var e = t[Symbol.toPrimitive];\n if (void 0 !== e) {\n var i = e.call(t, r || \"default\");\n if (\"object\" != _typeof(i)) return i;\n throw new TypeError(\"@@toPrimitive must return a primitive value.\");\n }\n return (\"string\" === r ? String : Number)(t);\n}\nexport { toPrimitive as default };","import _typeof from \"./typeof.js\";\nimport toPrimitive from \"./toPrimitive.js\";\nfunction toPropertyKey(t) {\n var i = toPrimitive(t, \"string\");\n return \"symbol\" == _typeof(i) ? i : i + \"\";\n}\nexport { toPropertyKey as default };","function _typeof(o) {\n \"@babel/helpers - typeof\";\n\n return _typeof = \"function\" == typeof Symbol && \"symbol\" == typeof Symbol.iterator ? function (o) {\n return typeof o;\n } : function (o) {\n return o && \"function\" == typeof Symbol && o.constructor === Symbol && o !== Symbol.prototype ? \"symbol\" : typeof o;\n }, _typeof(o);\n}\nexport { _typeof as default };","import arrayLikeToArray from \"./arrayLikeToArray.js\";\nfunction _unsupportedIterableToArray(r, a) {\n if (r) {\n if (\"string\" == typeof r) return arrayLikeToArray(r, a);\n var t = {}.toString.call(r).slice(8, -1);\n return \"Object\" === t && r.constructor && (t = r.constructor.name), \"Map\" === t || \"Set\" === t ? Array.from(r) : \"Arguments\" === t || /^(?:Ui|I)nt(?:8|16|32)(?:Clamped)?Array$/.test(t) ? arrayLikeToArray(r, a) : void 0;\n }\n}\nexport { _unsupportedIterableToArray as default };","import getPrototypeOf from \"./getPrototypeOf.js\";\nimport setPrototypeOf from \"./setPrototypeOf.js\";\nimport isNativeFunction from \"./isNativeFunction.js\";\nimport construct from \"./construct.js\";\nfunction _wrapNativeSuper(t) {\n var r = \"function\" == typeof Map ? new Map() : void 0;\n return _wrapNativeSuper = function _wrapNativeSuper(t) {\n if (null === t || !isNativeFunction(t)) return t;\n if (\"function\" != typeof t) throw new TypeError(\"Super expression must either be null or a function\");\n if (void 0 !== r) {\n if (r.has(t)) return r.get(t);\n r.set(t, Wrapper);\n }\n function Wrapper() {\n return construct(t, arguments, getPrototypeOf(this).constructor);\n }\n return Wrapper.prototype = Object.create(t.prototype, {\n constructor: {\n value: Wrapper,\n enumerable: !1,\n writable: !0,\n configurable: !0\n }\n }), setPrototypeOf(Wrapper, t);\n }, _wrapNativeSuper(t);\n}\nexport { _wrapNativeSuper as default };","var _typeof = require(\"./typeof.js\")[\"default\"];\nfunction _regeneratorRuntime() {\n \"use strict\"; /*! regenerator-runtime -- Copyright (c) 2014-present, Facebook, Inc. -- license (MIT): https://github.com/facebook/regenerator/blob/main/LICENSE */\n module.exports = _regeneratorRuntime = function _regeneratorRuntime() {\n return e;\n }, module.exports.__esModule = true, module.exports[\"default\"] = module.exports;\n var t,\n e = {},\n r = Object.prototype,\n n = r.hasOwnProperty,\n o = Object.defineProperty || function (t, e, r) {\n t[e] = r.value;\n },\n i = \"function\" == typeof Symbol ? Symbol : {},\n a = i.iterator || \"@@iterator\",\n c = i.asyncIterator || \"@@asyncIterator\",\n u = i.toStringTag || \"@@toStringTag\";\n function define(t, e, r) {\n return Object.defineProperty(t, e, {\n value: r,\n enumerable: !0,\n configurable: !0,\n writable: !0\n }), t[e];\n }\n try {\n define({}, \"\");\n } catch (t) {\n define = function define(t, e, r) {\n return t[e] = r;\n };\n }\n function wrap(t, e, r, n) {\n var i = e && e.prototype instanceof Generator ? e : Generator,\n a = Object.create(i.prototype),\n c = new Context(n || []);\n return o(a, \"_invoke\", {\n value: makeInvokeMethod(t, r, c)\n }), a;\n }\n function tryCatch(t, e, r) {\n try {\n return {\n type: \"normal\",\n arg: t.call(e, r)\n };\n } catch (t) {\n return {\n type: \"throw\",\n arg: t\n };\n }\n }\n e.wrap = wrap;\n var h = \"suspendedStart\",\n l = \"suspendedYield\",\n f = \"executing\",\n s = \"completed\",\n y = {};\n function Generator() {}\n function GeneratorFunction() {}\n function GeneratorFunctionPrototype() {}\n var p = {};\n define(p, a, function () {\n return this;\n });\n var d = Object.getPrototypeOf,\n v = d && d(d(values([])));\n v && v !== r && n.call(v, a) && (p = v);\n var g = GeneratorFunctionPrototype.prototype = Generator.prototype = Object.create(p);\n function defineIteratorMethods(t) {\n [\"next\", \"throw\", \"return\"].forEach(function (e) {\n define(t, e, function (t) {\n return this._invoke(e, t);\n });\n });\n }\n function AsyncIterator(t, e) {\n function invoke(r, o, i, a) {\n var c = tryCatch(t[r], t, o);\n if (\"throw\" !== c.type) {\n var u = c.arg,\n h = u.value;\n return h && \"object\" == _typeof(h) && n.call(h, \"__await\") ? e.resolve(h.__await).then(function (t) {\n invoke(\"next\", t, i, a);\n }, function (t) {\n invoke(\"throw\", t, i, a);\n }) : e.resolve(h).then(function (t) {\n u.value = t, i(u);\n }, function (t) {\n return invoke(\"throw\", t, i, a);\n });\n }\n a(c.arg);\n }\n var r;\n o(this, \"_invoke\", {\n value: function value(t, n) {\n function callInvokeWithMethodAndArg() {\n return new e(function (e, r) {\n invoke(t, n, e, r);\n });\n }\n return r = r ? r.then(callInvokeWithMethodAndArg, callInvokeWithMethodAndArg) : callInvokeWithMethodAndArg();\n }\n });\n }\n function makeInvokeMethod(e, r, n) {\n var o = h;\n return function (i, a) {\n if (o === f) throw Error(\"Generator is already running\");\n if (o === s) {\n if (\"throw\" === i) throw a;\n return {\n value: t,\n done: !0\n };\n }\n for (n.method = i, n.arg = a;;) {\n var c = n.delegate;\n if (c) {\n var u = maybeInvokeDelegate(c, n);\n if (u) {\n if (u === y) continue;\n return u;\n }\n }\n if (\"next\" === n.method) n.sent = n._sent = n.arg;else if (\"throw\" === n.method) {\n if (o === h) throw o = s, n.arg;\n n.dispatchException(n.arg);\n } else \"return\" === n.method && n.abrupt(\"return\", n.arg);\n o = f;\n var p = tryCatch(e, r, n);\n if (\"normal\" === p.type) {\n if (o = n.done ? s : l, p.arg === y) continue;\n return {\n value: p.arg,\n done: n.done\n };\n }\n \"throw\" === p.type && (o = s, n.method = \"throw\", n.arg = p.arg);\n }\n };\n }\n function maybeInvokeDelegate(e, r) {\n var n = r.method,\n o = e.iterator[n];\n if (o === t) return r.delegate = null, \"throw\" === n && e.iterator[\"return\"] && (r.method = \"return\", r.arg = t, maybeInvokeDelegate(e, r), \"throw\" === r.method) || \"return\" !== n && (r.method = \"throw\", r.arg = new TypeError(\"The iterator does not provide a '\" + n + \"' method\")), y;\n var i = tryCatch(o, e.iterator, r.arg);\n if (\"throw\" === i.type) return r.method = \"throw\", r.arg = i.arg, r.delegate = null, y;\n var a = i.arg;\n return a ? a.done ? (r[e.resultName] = a.value, r.next = e.nextLoc, \"return\" !== r.method && (r.method = \"next\", r.arg = t), r.delegate = null, y) : a : (r.method = \"throw\", r.arg = new TypeError(\"iterator result is not an object\"), r.delegate = null, y);\n }\n function pushTryEntry(t) {\n var e = {\n tryLoc: t[0]\n };\n 1 in t && (e.catchLoc = t[1]), 2 in t && (e.finallyLoc = t[2], e.afterLoc = t[3]), this.tryEntries.push(e);\n }\n function resetTryEntry(t) {\n var e = t.completion || {};\n e.type = \"normal\", delete e.arg, t.completion = e;\n }\n function Context(t) {\n this.tryEntries = [{\n tryLoc: \"root\"\n }], t.forEach(pushTryEntry, this), this.reset(!0);\n }\n function values(e) {\n if (e || \"\" === e) {\n var r = e[a];\n if (r) return r.call(e);\n if (\"function\" == typeof e.next) return e;\n if (!isNaN(e.length)) {\n var o = -1,\n i = function next() {\n for (; ++o < e.length;) if (n.call(e, o)) return next.value = e[o], next.done = !1, next;\n return next.value = t, next.done = !0, next;\n };\n return i.next = i;\n }\n }\n throw new TypeError(_typeof(e) + \" is not iterable\");\n }\n return GeneratorFunction.prototype = GeneratorFunctionPrototype, o(g, \"constructor\", {\n value: GeneratorFunctionPrototype,\n configurable: !0\n }), o(GeneratorFunctionPrototype, \"constructor\", {\n value: GeneratorFunction,\n configurable: !0\n }), GeneratorFunction.displayName = define(GeneratorFunctionPrototype, u, \"GeneratorFunction\"), e.isGeneratorFunction = function (t) {\n var e = \"function\" == typeof t && t.constructor;\n return !!e && (e === GeneratorFunction || \"GeneratorFunction\" === (e.displayName || e.name));\n }, e.mark = function (t) {\n return Object.setPrototypeOf ? Object.setPrototypeOf(t, GeneratorFunctionPrototype) : (t.__proto__ = GeneratorFunctionPrototype, define(t, u, \"GeneratorFunction\")), t.prototype = Object.create(g), t;\n }, e.awrap = function (t) {\n return {\n __await: t\n };\n }, defineIteratorMethods(AsyncIterator.prototype), define(AsyncIterator.prototype, c, function () {\n return this;\n }), e.AsyncIterator = AsyncIterator, e.async = function (t, r, n, o, i) {\n void 0 === i && (i = Promise);\n var a = new AsyncIterator(wrap(t, r, n, o), i);\n return e.isGeneratorFunction(r) ? a : a.next().then(function (t) {\n return t.done ? t.value : a.next();\n });\n }, defineIteratorMethods(g), define(g, u, \"Generator\"), define(g, a, function () {\n return this;\n }), define(g, \"toString\", function () {\n return \"[object Generator]\";\n }), e.keys = function (t) {\n var e = Object(t),\n r = [];\n for (var n in e) r.push(n);\n return r.reverse(), function next() {\n for (; r.length;) {\n var t = r.pop();\n if (t in e) return next.value = t, next.done = !1, next;\n }\n return next.done = !0, next;\n };\n }, e.values = values, Context.prototype = {\n constructor: Context,\n reset: function reset(e) {\n if (this.prev = 0, this.next = 0, this.sent = this._sent = t, this.done = !1, this.delegate = null, this.method = \"next\", this.arg = t, this.tryEntries.forEach(resetTryEntry), !e) for (var r in this) \"t\" === r.charAt(0) && n.call(this, r) && !isNaN(+r.slice(1)) && (this[r] = t);\n },\n stop: function stop() {\n this.done = !0;\n var t = this.tryEntries[0].completion;\n if (\"throw\" === t.type) throw t.arg;\n return this.rval;\n },\n dispatchException: function dispatchException(e) {\n if (this.done) throw e;\n var r = this;\n function handle(n, o) {\n return a.type = \"throw\", a.arg = e, r.next = n, o && (r.method = \"next\", r.arg = t), !!o;\n }\n for (var o = this.tryEntries.length - 1; o >= 0; --o) {\n var i = this.tryEntries[o],\n a = i.completion;\n if (\"root\" === i.tryLoc) return handle(\"end\");\n if (i.tryLoc <= this.prev) {\n var c = n.call(i, \"catchLoc\"),\n u = n.call(i, \"finallyLoc\");\n if (c && u) {\n if (this.prev < i.catchLoc) return handle(i.catchLoc, !0);\n if (this.prev < i.finallyLoc) return handle(i.finallyLoc);\n } else if (c) {\n if (this.prev < i.catchLoc) return handle(i.catchLoc, !0);\n } else {\n if (!u) throw Error(\"try statement without catch or finally\");\n if (this.prev < i.finallyLoc) return handle(i.finallyLoc);\n }\n }\n }\n },\n abrupt: function abrupt(t, e) {\n for (var r = this.tryEntries.length - 1; r >= 0; --r) {\n var o = this.tryEntries[r];\n if (o.tryLoc <= this.prev && n.call(o, \"finallyLoc\") && this.prev < o.finallyLoc) {\n var i = o;\n break;\n }\n }\n i && (\"break\" === t || \"continue\" === t) && i.tryLoc <= e && e <= i.finallyLoc && (i = null);\n var a = i ? i.completion : {};\n return a.type = t, a.arg = e, i ? (this.method = \"next\", this.next = i.finallyLoc, y) : this.complete(a);\n },\n complete: function complete(t, e) {\n if (\"throw\" === t.type) throw t.arg;\n return \"break\" === t.type || \"continue\" === t.type ? this.next = t.arg : \"return\" === t.type ? (this.rval = this.arg = t.arg, this.method = \"return\", this.next = \"end\") : \"normal\" === t.type && e && (this.next = e), y;\n },\n finish: function finish(t) {\n for (var e = this.tryEntries.length - 1; e >= 0; --e) {\n var r = this.tryEntries[e];\n if (r.finallyLoc === t) return this.complete(r.completion, r.afterLoc), resetTryEntry(r), y;\n }\n },\n \"catch\": function _catch(t) {\n for (var e = this.tryEntries.length - 1; e >= 0; --e) {\n var r = this.tryEntries[e];\n if (r.tryLoc === t) {\n var n = r.completion;\n if (\"throw\" === n.type) {\n var o = n.arg;\n resetTryEntry(r);\n }\n return o;\n }\n }\n throw Error(\"illegal catch attempt\");\n },\n delegateYield: function delegateYield(e, r, n) {\n return this.delegate = {\n iterator: values(e),\n resultName: r,\n nextLoc: n\n }, \"next\" === this.method && (this.arg = t), y;\n }\n }, e;\n}\nmodule.exports = _regeneratorRuntime, module.exports.__esModule = true, module.exports[\"default\"] = module.exports;","function _typeof(o) {\n \"@babel/helpers - typeof\";\n\n return module.exports = _typeof = \"function\" == typeof Symbol && \"symbol\" == typeof Symbol.iterator ? function (o) {\n return typeof o;\n } : function (o) {\n return o && \"function\" == typeof Symbol && o.constructor === Symbol && o !== Symbol.prototype ? \"symbol\" : typeof o;\n }, module.exports.__esModule = true, module.exports[\"default\"] = module.exports, _typeof(o);\n}\nmodule.exports = _typeof, module.exports.__esModule = true, module.exports[\"default\"] = module.exports;","// TODO(Babel 8): Remove this file.\n\nvar runtime = require(\"../helpers/regeneratorRuntime\")();\nmodule.exports = runtime;\n\n// Copied from https://github.com/facebook/regenerator/blob/main/packages/runtime/runtime.js#L736=\ntry {\n regeneratorRuntime = runtime;\n} catch (accidentalStrictMode) {\n if (typeof globalThis === \"object\") {\n globalThis.regeneratorRuntime = runtime;\n } else {\n Function(\"r\", \"regeneratorRuntime = r\")(runtime);\n }\n}\n","import utils from '../utils.js';\nimport httpAdapter from './http.js';\nimport xhrAdapter from './xhr.js';\nimport fetchAdapter from './fetch.js';\nimport AxiosError from \"../core/AxiosError.js\";\n\nconst knownAdapters = {\n http: httpAdapter,\n xhr: xhrAdapter,\n fetch: fetchAdapter\n}\n\nutils.forEach(knownAdapters, (fn, value) => {\n if (fn) {\n try {\n Object.defineProperty(fn, 'name', {value});\n } catch (e) {\n // eslint-disable-next-line no-empty\n }\n Object.defineProperty(fn, 'adapterName', {value});\n }\n});\n\nconst renderReason = (reason) => `- ${reason}`;\n\nconst isResolvedHandle = (adapter) => utils.isFunction(adapter) || adapter === null || adapter === false;\n\nexport default {\n getAdapter: (adapters) => {\n adapters = utils.isArray(adapters) ? adapters : [adapters];\n\n const {length} = adapters;\n let nameOrAdapter;\n let adapter;\n\n const rejectedReasons = {};\n\n for (let i = 0; i < length; i++) {\n nameOrAdapter = adapters[i];\n let id;\n\n adapter = nameOrAdapter;\n\n if (!isResolvedHandle(nameOrAdapter)) {\n adapter = knownAdapters[(id = String(nameOrAdapter)).toLowerCase()];\n\n if (adapter === undefined) {\n throw new AxiosError(`Unknown adapter '${id}'`);\n }\n }\n\n if (adapter) {\n break;\n }\n\n rejectedReasons[id || '#' + i] = adapter;\n }\n\n if (!adapter) {\n\n const reasons = Object.entries(rejectedReasons)\n .map(([id, state]) => `adapter ${id} ` +\n (state === false ? 'is not supported by the environment' : 'is not available in the build')\n );\n\n let s = length ?\n (reasons.length > 1 ? 'since :\\n' + reasons.map(renderReason).join('\\n') : ' ' + renderReason(reasons[0])) :\n 'as no adapter specified';\n\n throw new AxiosError(\n `There is no suitable adapter to dispatch the request ` + s,\n 'ERR_NOT_SUPPORT'\n );\n }\n\n return adapter;\n },\n adapters: knownAdapters\n}\n","import platform from \"../platform/index.js\";\nimport utils from \"../utils.js\";\nimport AxiosError from \"../core/AxiosError.js\";\nimport composeSignals from \"../helpers/composeSignals.js\";\nimport {trackStream} from \"../helpers/trackStream.js\";\nimport AxiosHeaders from \"../core/AxiosHeaders.js\";\nimport {progressEventReducer, progressEventDecorator, asyncDecorator} from \"../helpers/progressEventReducer.js\";\nimport resolveConfig from \"../helpers/resolveConfig.js\";\nimport settle from \"../core/settle.js\";\n\nconst isFetchSupported = typeof fetch === 'function' && typeof Request === 'function' && typeof Response === 'function';\nconst isReadableStreamSupported = isFetchSupported && typeof ReadableStream === 'function';\n\n// used only inside the fetch adapter\nconst encodeText = isFetchSupported && (typeof TextEncoder === 'function' ?\n ((encoder) => (str) => encoder.encode(str))(new TextEncoder()) :\n async (str) => new Uint8Array(await new Response(str).arrayBuffer())\n);\n\nconst test = (fn, ...args) => {\n try {\n return !!fn(...args);\n } catch (e) {\n return false\n }\n}\n\nconst supportsRequestStream = isReadableStreamSupported && test(() => {\n let duplexAccessed = false;\n\n const hasContentType = new Request(platform.origin, {\n body: new ReadableStream(),\n method: 'POST',\n get duplex() {\n duplexAccessed = true;\n return 'half';\n },\n }).headers.has('Content-Type');\n\n return duplexAccessed && !hasContentType;\n});\n\nconst DEFAULT_CHUNK_SIZE = 64 * 1024;\n\nconst supportsResponseStream = isReadableStreamSupported &&\n test(() => utils.isReadableStream(new Response('').body));\n\n\nconst resolvers = {\n stream: supportsResponseStream && ((res) => res.body)\n};\n\nisFetchSupported && (((res) => {\n ['text', 'arrayBuffer', 'blob', 'formData', 'stream'].forEach(type => {\n !resolvers[type] && (resolvers[type] = utils.isFunction(res[type]) ? (res) => res[type]() :\n (_, config) => {\n throw new AxiosError(`Response type '${type}' is not supported`, AxiosError.ERR_NOT_SUPPORT, config);\n })\n });\n})(new Response));\n\nconst getBodyLength = async (body) => {\n if (body == null) {\n return 0;\n }\n\n if(utils.isBlob(body)) {\n return body.size;\n }\n\n if(utils.isSpecCompliantForm(body)) {\n const _request = new Request(platform.origin, {\n method: 'POST',\n body,\n });\n return (await _request.arrayBuffer()).byteLength;\n }\n\n if(utils.isArrayBufferView(body) || utils.isArrayBuffer(body)) {\n return body.byteLength;\n }\n\n if(utils.isURLSearchParams(body)) {\n body = body + '';\n }\n\n if(utils.isString(body)) {\n return (await encodeText(body)).byteLength;\n }\n}\n\nconst resolveBodyLength = async (headers, body) => {\n const length = utils.toFiniteNumber(headers.getContentLength());\n\n return length == null ? getBodyLength(body) : length;\n}\n\nexport default isFetchSupported && (async (config) => {\n let {\n url,\n method,\n data,\n signal,\n cancelToken,\n timeout,\n onDownloadProgress,\n onUploadProgress,\n responseType,\n headers,\n withCredentials = 'same-origin',\n fetchOptions\n } = resolveConfig(config);\n\n responseType = responseType ? (responseType + '').toLowerCase() : 'text';\n\n let composedSignal = composeSignals([signal, cancelToken && cancelToken.toAbortSignal()], timeout);\n\n let request;\n\n const unsubscribe = composedSignal && composedSignal.unsubscribe && (() => {\n composedSignal.unsubscribe();\n });\n\n let requestContentLength;\n\n try {\n if (\n onUploadProgress && supportsRequestStream && method !== 'get' && method !== 'head' &&\n (requestContentLength = await resolveBodyLength(headers, data)) !== 0\n ) {\n let _request = new Request(url, {\n method: 'POST',\n body: data,\n duplex: \"half\"\n });\n\n let contentTypeHeader;\n\n if (utils.isFormData(data) && (contentTypeHeader = _request.headers.get('content-type'))) {\n headers.setContentType(contentTypeHeader)\n }\n\n if (_request.body) {\n const [onProgress, flush] = progressEventDecorator(\n requestContentLength,\n progressEventReducer(asyncDecorator(onUploadProgress))\n );\n\n data = trackStream(_request.body, DEFAULT_CHUNK_SIZE, onProgress, flush);\n }\n }\n\n if (!utils.isString(withCredentials)) {\n withCredentials = withCredentials ? 'include' : 'omit';\n }\n\n // Cloudflare Workers throws when credentials are defined\n // see https://github.com/cloudflare/workerd/issues/902\n const isCredentialsSupported = \"credentials\" in Request.prototype;\n request = new Request(url, {\n ...fetchOptions,\n signal: composedSignal,\n method: method.toUpperCase(),\n headers: headers.normalize().toJSON(),\n body: data,\n duplex: \"half\",\n credentials: isCredentialsSupported ? withCredentials : undefined\n });\n\n let response = await fetch(request);\n\n const isStreamResponse = supportsResponseStream && (responseType === 'stream' || responseType === 'response');\n\n if (supportsResponseStream && (onDownloadProgress || (isStreamResponse && unsubscribe))) {\n const options = {};\n\n ['status', 'statusText', 'headers'].forEach(prop => {\n options[prop] = response[prop];\n });\n\n const responseContentLength = utils.toFiniteNumber(response.headers.get('content-length'));\n\n const [onProgress, flush] = onDownloadProgress && progressEventDecorator(\n responseContentLength,\n progressEventReducer(asyncDecorator(onDownloadProgress), true)\n ) || [];\n\n response = new Response(\n trackStream(response.body, DEFAULT_CHUNK_SIZE, onProgress, () => {\n flush && flush();\n unsubscribe && unsubscribe();\n }),\n options\n );\n }\n\n responseType = responseType || 'text';\n\n let responseData = await resolvers[utils.findKey(resolvers, responseType) || 'text'](response, config);\n\n !isStreamResponse && unsubscribe && unsubscribe();\n\n return await new Promise((resolve, reject) => {\n settle(resolve, reject, {\n data: responseData,\n headers: AxiosHeaders.from(response.headers),\n status: response.status,\n statusText: response.statusText,\n config,\n request\n })\n })\n } catch (err) {\n unsubscribe && unsubscribe();\n\n if (err && err.name === 'TypeError' && /fetch/i.test(err.message)) {\n throw Object.assign(\n new AxiosError('Network Error', AxiosError.ERR_NETWORK, config, request),\n {\n cause: err.cause || err\n }\n )\n }\n\n throw AxiosError.from(err, err && err.code, config, request);\n }\n});\n\n\n","import utils from './../utils.js';\nimport settle from './../core/settle.js';\nimport transitionalDefaults from '../defaults/transitional.js';\nimport AxiosError from '../core/AxiosError.js';\nimport CanceledError from '../cancel/CanceledError.js';\nimport parseProtocol from '../helpers/parseProtocol.js';\nimport platform from '../platform/index.js';\nimport AxiosHeaders from '../core/AxiosHeaders.js';\nimport {progressEventReducer} from '../helpers/progressEventReducer.js';\nimport resolveConfig from \"../helpers/resolveConfig.js\";\n\nconst isXHRAdapterSupported = typeof XMLHttpRequest !== 'undefined';\n\nexport default isXHRAdapterSupported && function (config) {\n return new Promise(function dispatchXhrRequest(resolve, reject) {\n const _config = resolveConfig(config);\n let requestData = _config.data;\n const requestHeaders = AxiosHeaders.from(_config.headers).normalize();\n let {responseType, onUploadProgress, onDownloadProgress} = _config;\n let onCanceled;\n let uploadThrottled, downloadThrottled;\n let flushUpload, flushDownload;\n\n function done() {\n flushUpload && flushUpload(); // flush events\n flushDownload && flushDownload(); // flush events\n\n _config.cancelToken && _config.cancelToken.unsubscribe(onCanceled);\n\n _config.signal && _config.signal.removeEventListener('abort', onCanceled);\n }\n\n let request = new XMLHttpRequest();\n\n request.open(_config.method.toUpperCase(), _config.url, true);\n\n // Set the request timeout in MS\n request.timeout = _config.timeout;\n\n function onloadend() {\n if (!request) {\n return;\n }\n // Prepare the response\n const responseHeaders = AxiosHeaders.from(\n 'getAllResponseHeaders' in request && request.getAllResponseHeaders()\n );\n const responseData = !responseType || responseType === 'text' || responseType === 'json' ?\n request.responseText : request.response;\n const response = {\n data: responseData,\n status: request.status,\n statusText: request.statusText,\n headers: responseHeaders,\n config,\n request\n };\n\n settle(function _resolve(value) {\n resolve(value);\n done();\n }, function _reject(err) {\n reject(err);\n done();\n }, response);\n\n // Clean up request\n request = null;\n }\n\n if ('onloadend' in request) {\n // Use onloadend if available\n request.onloadend = onloadend;\n } else {\n // Listen for ready state to emulate onloadend\n request.onreadystatechange = function handleLoad() {\n if (!request || request.readyState !== 4) {\n return;\n }\n\n // The request errored out and we didn't get a response, this will be\n // handled by onerror instead\n // With one exception: request that using file: protocol, most browsers\n // will return status as 0 even though it's a successful request\n if (request.status === 0 && !(request.responseURL && request.responseURL.indexOf('file:') === 0)) {\n return;\n }\n // readystate handler is calling before onerror or ontimeout handlers,\n // so we should call onloadend on the next 'tick'\n setTimeout(onloadend);\n };\n }\n\n // Handle browser request cancellation (as opposed to a manual cancellation)\n request.onabort = function handleAbort() {\n if (!request) {\n return;\n }\n\n reject(new AxiosError('Request aborted', AxiosError.ECONNABORTED, config, request));\n\n // Clean up request\n request = null;\n };\n\n // Handle low level network errors\n request.onerror = function handleError() {\n // Real errors are hidden from us by the browser\n // onerror should only fire if it's a network error\n reject(new AxiosError('Network Error', AxiosError.ERR_NETWORK, config, request));\n\n // Clean up request\n request = null;\n };\n\n // Handle timeout\n request.ontimeout = function handleTimeout() {\n let timeoutErrorMessage = _config.timeout ? 'timeout of ' + _config.timeout + 'ms exceeded' : 'timeout exceeded';\n const transitional = _config.transitional || transitionalDefaults;\n if (_config.timeoutErrorMessage) {\n timeoutErrorMessage = _config.timeoutErrorMessage;\n }\n reject(new AxiosError(\n timeoutErrorMessage,\n transitional.clarifyTimeoutError ? AxiosError.ETIMEDOUT : AxiosError.ECONNABORTED,\n config,\n request));\n\n // Clean up request\n request = null;\n };\n\n // Remove Content-Type if data is undefined\n requestData === undefined && requestHeaders.setContentType(null);\n\n // Add headers to the request\n if ('setRequestHeader' in request) {\n utils.forEach(requestHeaders.toJSON(), function setRequestHeader(val, key) {\n request.setRequestHeader(key, val);\n });\n }\n\n // Add withCredentials to request if needed\n if (!utils.isUndefined(_config.withCredentials)) {\n request.withCredentials = !!_config.withCredentials;\n }\n\n // Add responseType to request if needed\n if (responseType && responseType !== 'json') {\n request.responseType = _config.responseType;\n }\n\n // Handle progress if needed\n if (onDownloadProgress) {\n ([downloadThrottled, flushDownload] = progressEventReducer(onDownloadProgress, true));\n request.addEventListener('progress', downloadThrottled);\n }\n\n // Not all browsers support upload events\n if (onUploadProgress && request.upload) {\n ([uploadThrottled, flushUpload] = progressEventReducer(onUploadProgress));\n\n request.upload.addEventListener('progress', uploadThrottled);\n\n request.upload.addEventListener('loadend', flushUpload);\n }\n\n if (_config.cancelToken || _config.signal) {\n // Handle cancellation\n // eslint-disable-next-line func-names\n onCanceled = cancel => {\n if (!request) {\n return;\n }\n reject(!cancel || cancel.type ? new CanceledError(null, config, request) : cancel);\n request.abort();\n request = null;\n };\n\n _config.cancelToken && _config.cancelToken.subscribe(onCanceled);\n if (_config.signal) {\n _config.signal.aborted ? onCanceled() : _config.signal.addEventListener('abort', onCanceled);\n }\n }\n\n const protocol = parseProtocol(_config.url);\n\n if (protocol && platform.protocols.indexOf(protocol) === -1) {\n reject(new AxiosError('Unsupported protocol ' + protocol + ':', AxiosError.ERR_BAD_REQUEST, config));\n return;\n }\n\n\n // Send the request\n request.send(requestData || null);\n });\n}\n","'use strict';\n\nimport utils from './utils.js';\nimport bind from './helpers/bind.js';\nimport Axios from './core/Axios.js';\nimport mergeConfig from './core/mergeConfig.js';\nimport defaults from './defaults/index.js';\nimport formDataToJSON from './helpers/formDataToJSON.js';\nimport CanceledError from './cancel/CanceledError.js';\nimport CancelToken from './cancel/CancelToken.js';\nimport isCancel from './cancel/isCancel.js';\nimport {VERSION} from './env/data.js';\nimport toFormData from './helpers/toFormData.js';\nimport AxiosError from './core/AxiosError.js';\nimport spread from './helpers/spread.js';\nimport isAxiosError from './helpers/isAxiosError.js';\nimport AxiosHeaders from \"./core/AxiosHeaders.js\";\nimport adapters from './adapters/adapters.js';\nimport HttpStatusCode from './helpers/HttpStatusCode.js';\n\n/**\n * Create an instance of Axios\n *\n * @param {Object} defaultConfig The default config for the instance\n *\n * @returns {Axios} A new instance of Axios\n */\nfunction createInstance(defaultConfig) {\n const context = new Axios(defaultConfig);\n const instance = bind(Axios.prototype.request, context);\n\n // Copy axios.prototype to instance\n utils.extend(instance, Axios.prototype, context, {allOwnKeys: true});\n\n // Copy context to instance\n utils.extend(instance, context, null, {allOwnKeys: true});\n\n // Factory for creating new instances\n instance.create = function create(instanceConfig) {\n return createInstance(mergeConfig(defaultConfig, instanceConfig));\n };\n\n return instance;\n}\n\n// Create the default instance to be exported\nconst axios = createInstance(defaults);\n\n// Expose Axios class to allow class inheritance\naxios.Axios = Axios;\n\n// Expose Cancel & CancelToken\naxios.CanceledError = CanceledError;\naxios.CancelToken = CancelToken;\naxios.isCancel = isCancel;\naxios.VERSION = VERSION;\naxios.toFormData = toFormData;\n\n// Expose AxiosError class\naxios.AxiosError = AxiosError;\n\n// alias for CanceledError for backward compatibility\naxios.Cancel = axios.CanceledError;\n\n// Expose all/spread\naxios.all = function all(promises) {\n return Promise.all(promises);\n};\n\naxios.spread = spread;\n\n// Expose isAxiosError\naxios.isAxiosError = isAxiosError;\n\n// Expose mergeConfig\naxios.mergeConfig = mergeConfig;\n\naxios.AxiosHeaders = AxiosHeaders;\n\naxios.formToJSON = thing => formDataToJSON(utils.isHTMLForm(thing) ? new FormData(thing) : thing);\n\naxios.getAdapter = adapters.getAdapter;\n\naxios.HttpStatusCode = HttpStatusCode;\n\naxios.default = axios;\n\n// this module should only have a default export\nexport default axios\n","'use strict';\n\nimport CanceledError from './CanceledError.js';\n\n/**\n * A `CancelToken` is an object that can be used to request cancellation of an operation.\n *\n * @param {Function} executor The executor function.\n *\n * @returns {CancelToken}\n */\nclass CancelToken {\n constructor(executor) {\n if (typeof executor !== 'function') {\n throw new TypeError('executor must be a function.');\n }\n\n let resolvePromise;\n\n this.promise = new Promise(function promiseExecutor(resolve) {\n resolvePromise = resolve;\n });\n\n const token = this;\n\n // eslint-disable-next-line func-names\n this.promise.then(cancel => {\n if (!token._listeners) return;\n\n let i = token._listeners.length;\n\n while (i-- > 0) {\n token._listeners[i](cancel);\n }\n token._listeners = null;\n });\n\n // eslint-disable-next-line func-names\n this.promise.then = onfulfilled => {\n let _resolve;\n // eslint-disable-next-line func-names\n const promise = new Promise(resolve => {\n token.subscribe(resolve);\n _resolve = resolve;\n }).then(onfulfilled);\n\n promise.cancel = function reject() {\n token.unsubscribe(_resolve);\n };\n\n return promise;\n };\n\n executor(function cancel(message, config, request) {\n if (token.reason) {\n // Cancellation has already been requested\n return;\n }\n\n token.reason = new CanceledError(message, config, request);\n resolvePromise(token.reason);\n });\n }\n\n /**\n * Throws a `CanceledError` if cancellation has been requested.\n */\n throwIfRequested() {\n if (this.reason) {\n throw this.reason;\n }\n }\n\n /**\n * Subscribe to the cancel signal\n */\n\n subscribe(listener) {\n if (this.reason) {\n listener(this.reason);\n return;\n }\n\n if (this._listeners) {\n this._listeners.push(listener);\n } else {\n this._listeners = [listener];\n }\n }\n\n /**\n * Unsubscribe from the cancel signal\n */\n\n unsubscribe(listener) {\n if (!this._listeners) {\n return;\n }\n const index = this._listeners.indexOf(listener);\n if (index !== -1) {\n this._listeners.splice(index, 1);\n }\n }\n\n toAbortSignal() {\n const controller = new AbortController();\n\n const abort = (err) => {\n controller.abort(err);\n };\n\n this.subscribe(abort);\n\n controller.signal.unsubscribe = () => this.unsubscribe(abort);\n\n return controller.signal;\n }\n\n /**\n * Returns an object that contains a new `CancelToken` and a function that, when called,\n * cancels the `CancelToken`.\n */\n static source() {\n let cancel;\n const token = new CancelToken(function executor(c) {\n cancel = c;\n });\n return {\n token,\n cancel\n };\n }\n}\n\nexport default CancelToken;\n","'use strict';\n\nimport AxiosError from '../core/AxiosError.js';\nimport utils from '../utils.js';\n\n/**\n * A `CanceledError` is an object that is thrown when an operation is canceled.\n *\n * @param {string=} message The message.\n * @param {Object=} config The config.\n * @param {Object=} request The request.\n *\n * @returns {CanceledError} The created error.\n */\nfunction CanceledError(message, config, request) {\n // eslint-disable-next-line no-eq-null,eqeqeq\n AxiosError.call(this, message == null ? 'canceled' : message, AxiosError.ERR_CANCELED, config, request);\n this.name = 'CanceledError';\n}\n\nutils.inherits(CanceledError, AxiosError, {\n __CANCEL__: true\n});\n\nexport default CanceledError;\n","'use strict';\n\nexport default function isCancel(value) {\n return !!(value && value.__CANCEL__);\n}\n","'use strict';\n\nimport utils from './../utils.js';\nimport buildURL from '../helpers/buildURL.js';\nimport InterceptorManager from './InterceptorManager.js';\nimport dispatchRequest from './dispatchRequest.js';\nimport mergeConfig from './mergeConfig.js';\nimport buildFullPath from './buildFullPath.js';\nimport validator from '../helpers/validator.js';\nimport AxiosHeaders from './AxiosHeaders.js';\n\nconst validators = validator.validators;\n\n/**\n * Create a new instance of Axios\n *\n * @param {Object} instanceConfig The default config for the instance\n *\n * @return {Axios} A new instance of Axios\n */\nclass Axios {\n constructor(instanceConfig) {\n this.defaults = instanceConfig;\n this.interceptors = {\n request: new InterceptorManager(),\n response: new InterceptorManager()\n };\n }\n\n /**\n * Dispatch a request\n *\n * @param {String|Object} configOrUrl The config specific for this request (merged with this.defaults)\n * @param {?Object} config\n *\n * @returns {Promise} The Promise to be fulfilled\n */\n async request(configOrUrl, config) {\n try {\n return await this._request(configOrUrl, config);\n } catch (err) {\n if (err instanceof Error) {\n let dummy = {};\n\n Error.captureStackTrace ? Error.captureStackTrace(dummy) : (dummy = new Error());\n\n // slice off the Error: ... line\n const stack = dummy.stack ? dummy.stack.replace(/^.+\\n/, '') : '';\n try {\n if (!err.stack) {\n err.stack = stack;\n // match without the 2 top stack lines\n } else if (stack && !String(err.stack).endsWith(stack.replace(/^.+\\n.+\\n/, ''))) {\n err.stack += '\\n' + stack\n }\n } catch (e) {\n // ignore the case where \"stack\" is an un-writable property\n }\n }\n\n throw err;\n }\n }\n\n _request(configOrUrl, config) {\n /*eslint no-param-reassign:0*/\n // Allow for axios('example/url'[, config]) a la fetch API\n if (typeof configOrUrl === 'string') {\n config = config || {};\n config.url = configOrUrl;\n } else {\n config = configOrUrl || {};\n }\n\n config = mergeConfig(this.defaults, config);\n\n const {transitional, paramsSerializer, headers} = config;\n\n if (transitional !== undefined) {\n validator.assertOptions(transitional, {\n silentJSONParsing: validators.transitional(validators.boolean),\n forcedJSONParsing: validators.transitional(validators.boolean),\n clarifyTimeoutError: validators.transitional(validators.boolean)\n }, false);\n }\n\n if (paramsSerializer != null) {\n if (utils.isFunction(paramsSerializer)) {\n config.paramsSerializer = {\n serialize: paramsSerializer\n }\n } else {\n validator.assertOptions(paramsSerializer, {\n encode: validators.function,\n serialize: validators.function\n }, true);\n }\n }\n\n validator.assertOptions(config, {\n baseUrl: validators.spelling('baseURL'),\n withXsrfToken: validators.spelling('withXSRFToken')\n }, true);\n\n // Set config.method\n config.method = (config.method || this.defaults.method || 'get').toLowerCase();\n\n // Flatten headers\n let contextHeaders = headers && utils.merge(\n headers.common,\n headers[config.method]\n );\n\n headers && utils.forEach(\n ['delete', 'get', 'head', 'post', 'put', 'patch', 'common'],\n (method) => {\n delete headers[method];\n }\n );\n\n config.headers = AxiosHeaders.concat(contextHeaders, headers);\n\n // filter out skipped interceptors\n const requestInterceptorChain = [];\n let synchronousRequestInterceptors = true;\n this.interceptors.request.forEach(function unshiftRequestInterceptors(interceptor) {\n if (typeof interceptor.runWhen === 'function' && interceptor.runWhen(config) === false) {\n return;\n }\n\n synchronousRequestInterceptors = synchronousRequestInterceptors && interceptor.synchronous;\n\n requestInterceptorChain.unshift(interceptor.fulfilled, interceptor.rejected);\n });\n\n const responseInterceptorChain = [];\n this.interceptors.response.forEach(function pushResponseInterceptors(interceptor) {\n responseInterceptorChain.push(interceptor.fulfilled, interceptor.rejected);\n });\n\n let promise;\n let i = 0;\n let len;\n\n if (!synchronousRequestInterceptors) {\n const chain = [dispatchRequest.bind(this), undefined];\n chain.unshift.apply(chain, requestInterceptorChain);\n chain.push.apply(chain, responseInterceptorChain);\n len = chain.length;\n\n promise = Promise.resolve(config);\n\n while (i < len) {\n promise = promise.then(chain[i++], chain[i++]);\n }\n\n return promise;\n }\n\n len = requestInterceptorChain.length;\n\n let newConfig = config;\n\n i = 0;\n\n while (i < len) {\n const onFulfilled = requestInterceptorChain[i++];\n const onRejected = requestInterceptorChain[i++];\n try {\n newConfig = onFulfilled(newConfig);\n } catch (error) {\n onRejected.call(this, error);\n break;\n }\n }\n\n try {\n promise = dispatchRequest.call(this, newConfig);\n } catch (error) {\n return Promise.reject(error);\n }\n\n i = 0;\n len = responseInterceptorChain.length;\n\n while (i < len) {\n promise = promise.then(responseInterceptorChain[i++], responseInterceptorChain[i++]);\n }\n\n return promise;\n }\n\n getUri(config) {\n config = mergeConfig(this.defaults, config);\n const fullPath = buildFullPath(config.baseURL, config.url);\n return buildURL(fullPath, config.params, config.paramsSerializer);\n }\n}\n\n// Provide aliases for supported request methods\nutils.forEach(['delete', 'get', 'head', 'options'], function forEachMethodNoData(method) {\n /*eslint func-names:0*/\n Axios.prototype[method] = function(url, config) {\n return this.request(mergeConfig(config || {}, {\n method,\n url,\n data: (config || {}).data\n }));\n };\n});\n\nutils.forEach(['post', 'put', 'patch'], function forEachMethodWithData(method) {\n /*eslint func-names:0*/\n\n function generateHTTPMethod(isForm) {\n return function httpMethod(url, data, config) {\n return this.request(mergeConfig(config || {}, {\n method,\n headers: isForm ? {\n 'Content-Type': 'multipart/form-data'\n } : {},\n url,\n data\n }));\n };\n }\n\n Axios.prototype[method] = generateHTTPMethod();\n\n Axios.prototype[method + 'Form'] = generateHTTPMethod(true);\n});\n\nexport default Axios;\n","'use strict';\n\nimport utils from '../utils.js';\n\n/**\n * Create an Error with the specified message, config, error code, request and response.\n *\n * @param {string} message The error message.\n * @param {string} [code] The error code (for example, 'ECONNABORTED').\n * @param {Object} [config] The config.\n * @param {Object} [request] The request.\n * @param {Object} [response] The response.\n *\n * @returns {Error} The created error.\n */\nfunction AxiosError(message, code, config, request, response) {\n Error.call(this);\n\n if (Error.captureStackTrace) {\n Error.captureStackTrace(this, this.constructor);\n } else {\n this.stack = (new Error()).stack;\n }\n\n this.message = message;\n this.name = 'AxiosError';\n code && (this.code = code);\n config && (this.config = config);\n request && (this.request = request);\n if (response) {\n this.response = response;\n this.status = response.status ? response.status : null;\n }\n}\n\nutils.inherits(AxiosError, Error, {\n toJSON: function toJSON() {\n return {\n // Standard\n message: this.message,\n name: this.name,\n // Microsoft\n description: this.description,\n number: this.number,\n // Mozilla\n fileName: this.fileName,\n lineNumber: this.lineNumber,\n columnNumber: this.columnNumber,\n stack: this.stack,\n // Axios\n config: utils.toJSONObject(this.config),\n code: this.code,\n status: this.status\n };\n }\n});\n\nconst prototype = AxiosError.prototype;\nconst descriptors = {};\n\n[\n 'ERR_BAD_OPTION_VALUE',\n 'ERR_BAD_OPTION',\n 'ECONNABORTED',\n 'ETIMEDOUT',\n 'ERR_NETWORK',\n 'ERR_FR_TOO_MANY_REDIRECTS',\n 'ERR_DEPRECATED',\n 'ERR_BAD_RESPONSE',\n 'ERR_BAD_REQUEST',\n 'ERR_CANCELED',\n 'ERR_NOT_SUPPORT',\n 'ERR_INVALID_URL'\n// eslint-disable-next-line func-names\n].forEach(code => {\n descriptors[code] = {value: code};\n});\n\nObject.defineProperties(AxiosError, descriptors);\nObject.defineProperty(prototype, 'isAxiosError', {value: true});\n\n// eslint-disable-next-line func-names\nAxiosError.from = (error, code, config, request, response, customProps) => {\n const axiosError = Object.create(prototype);\n\n utils.toFlatObject(error, axiosError, function filter(obj) {\n return obj !== Error.prototype;\n }, prop => {\n return prop !== 'isAxiosError';\n });\n\n AxiosError.call(axiosError, error.message, code, config, request, response);\n\n axiosError.cause = error;\n\n axiosError.name = error.name;\n\n customProps && Object.assign(axiosError, customProps);\n\n return axiosError;\n};\n\nexport default AxiosError;\n","'use strict';\n\nimport utils from '../utils.js';\nimport parseHeaders from '../helpers/parseHeaders.js';\n\nconst $internals = Symbol('internals');\n\nfunction normalizeHeader(header) {\n return header && String(header).trim().toLowerCase();\n}\n\nfunction normalizeValue(value) {\n if (value === false || value == null) {\n return value;\n }\n\n return utils.isArray(value) ? value.map(normalizeValue) : String(value);\n}\n\nfunction parseTokens(str) {\n const tokens = Object.create(null);\n const tokensRE = /([^\\s,;=]+)\\s*(?:=\\s*([^,;]+))?/g;\n let match;\n\n while ((match = tokensRE.exec(str))) {\n tokens[match[1]] = match[2];\n }\n\n return tokens;\n}\n\nconst isValidHeaderName = (str) => /^[-_a-zA-Z0-9^`|~,!#$%&'*+.]+$/.test(str.trim());\n\nfunction matchHeaderValue(context, value, header, filter, isHeaderNameFilter) {\n if (utils.isFunction(filter)) {\n return filter.call(this, value, header);\n }\n\n if (isHeaderNameFilter) {\n value = header;\n }\n\n if (!utils.isString(value)) return;\n\n if (utils.isString(filter)) {\n return value.indexOf(filter) !== -1;\n }\n\n if (utils.isRegExp(filter)) {\n return filter.test(value);\n }\n}\n\nfunction formatHeader(header) {\n return header.trim()\n .toLowerCase().replace(/([a-z\\d])(\\w*)/g, (w, char, str) => {\n return char.toUpperCase() + str;\n });\n}\n\nfunction buildAccessors(obj, header) {\n const accessorName = utils.toCamelCase(' ' + header);\n\n ['get', 'set', 'has'].forEach(methodName => {\n Object.defineProperty(obj, methodName + accessorName, {\n value: function(arg1, arg2, arg3) {\n return this[methodName].call(this, header, arg1, arg2, arg3);\n },\n configurable: true\n });\n });\n}\n\nclass AxiosHeaders {\n constructor(headers) {\n headers && this.set(headers);\n }\n\n set(header, valueOrRewrite, rewrite) {\n const self = this;\n\n function setHeader(_value, _header, _rewrite) {\n const lHeader = normalizeHeader(_header);\n\n if (!lHeader) {\n throw new Error('header name must be a non-empty string');\n }\n\n const key = utils.findKey(self, lHeader);\n\n if(!key || self[key] === undefined || _rewrite === true || (_rewrite === undefined && self[key] !== false)) {\n self[key || _header] = normalizeValue(_value);\n }\n }\n\n const setHeaders = (headers, _rewrite) =>\n utils.forEach(headers, (_value, _header) => setHeader(_value, _header, _rewrite));\n\n if (utils.isPlainObject(header) || header instanceof this.constructor) {\n setHeaders(header, valueOrRewrite)\n } else if(utils.isString(header) && (header = header.trim()) && !isValidHeaderName(header)) {\n setHeaders(parseHeaders(header), valueOrRewrite);\n } else if (utils.isHeaders(header)) {\n for (const [key, value] of header.entries()) {\n setHeader(value, key, rewrite);\n }\n } else {\n header != null && setHeader(valueOrRewrite, header, rewrite);\n }\n\n return this;\n }\n\n get(header, parser) {\n header = normalizeHeader(header);\n\n if (header) {\n const key = utils.findKey(this, header);\n\n if (key) {\n const value = this[key];\n\n if (!parser) {\n return value;\n }\n\n if (parser === true) {\n return parseTokens(value);\n }\n\n if (utils.isFunction(parser)) {\n return parser.call(this, value, key);\n }\n\n if (utils.isRegExp(parser)) {\n return parser.exec(value);\n }\n\n throw new TypeError('parser must be boolean|regexp|function');\n }\n }\n }\n\n has(header, matcher) {\n header = normalizeHeader(header);\n\n if (header) {\n const key = utils.findKey(this, header);\n\n return !!(key && this[key] !== undefined && (!matcher || matchHeaderValue(this, this[key], key, matcher)));\n }\n\n return false;\n }\n\n delete(header, matcher) {\n const self = this;\n let deleted = false;\n\n function deleteHeader(_header) {\n _header = normalizeHeader(_header);\n\n if (_header) {\n const key = utils.findKey(self, _header);\n\n if (key && (!matcher || matchHeaderValue(self, self[key], key, matcher))) {\n delete self[key];\n\n deleted = true;\n }\n }\n }\n\n if (utils.isArray(header)) {\n header.forEach(deleteHeader);\n } else {\n deleteHeader(header);\n }\n\n return deleted;\n }\n\n clear(matcher) {\n const keys = Object.keys(this);\n let i = keys.length;\n let deleted = false;\n\n while (i--) {\n const key = keys[i];\n if(!matcher || matchHeaderValue(this, this[key], key, matcher, true)) {\n delete this[key];\n deleted = true;\n }\n }\n\n return deleted;\n }\n\n normalize(format) {\n const self = this;\n const headers = {};\n\n utils.forEach(this, (value, header) => {\n const key = utils.findKey(headers, header);\n\n if (key) {\n self[key] = normalizeValue(value);\n delete self[header];\n return;\n }\n\n const normalized = format ? formatHeader(header) : String(header).trim();\n\n if (normalized !== header) {\n delete self[header];\n }\n\n self[normalized] = normalizeValue(value);\n\n headers[normalized] = true;\n });\n\n return this;\n }\n\n concat(...targets) {\n return this.constructor.concat(this, ...targets);\n }\n\n toJSON(asStrings) {\n const obj = Object.create(null);\n\n utils.forEach(this, (value, header) => {\n value != null && value !== false && (obj[header] = asStrings && utils.isArray(value) ? value.join(', ') : value);\n });\n\n return obj;\n }\n\n [Symbol.iterator]() {\n return Object.entries(this.toJSON())[Symbol.iterator]();\n }\n\n toString() {\n return Object.entries(this.toJSON()).map(([header, value]) => header + ': ' + value).join('\\n');\n }\n\n get [Symbol.toStringTag]() {\n return 'AxiosHeaders';\n }\n\n static from(thing) {\n return thing instanceof this ? thing : new this(thing);\n }\n\n static concat(first, ...targets) {\n const computed = new this(first);\n\n targets.forEach((target) => computed.set(target));\n\n return computed;\n }\n\n static accessor(header) {\n const internals = this[$internals] = (this[$internals] = {\n accessors: {}\n });\n\n const accessors = internals.accessors;\n const prototype = this.prototype;\n\n function defineAccessor(_header) {\n const lHeader = normalizeHeader(_header);\n\n if (!accessors[lHeader]) {\n buildAccessors(prototype, _header);\n accessors[lHeader] = true;\n }\n }\n\n utils.isArray(header) ? header.forEach(defineAccessor) : defineAccessor(header);\n\n return this;\n }\n}\n\nAxiosHeaders.accessor(['Content-Type', 'Content-Length', 'Accept', 'Accept-Encoding', 'User-Agent', 'Authorization']);\n\n// reserved names hotfix\nutils.reduceDescriptors(AxiosHeaders.prototype, ({value}, key) => {\n let mapped = key[0].toUpperCase() + key.slice(1); // map `set` => `Set`\n return {\n get: () => value,\n set(headerValue) {\n this[mapped] = headerValue;\n }\n }\n});\n\nutils.freezeMethods(AxiosHeaders);\n\nexport default AxiosHeaders;\n","'use strict';\n\nimport utils from './../utils.js';\n\nclass InterceptorManager {\n constructor() {\n this.handlers = [];\n }\n\n /**\n * Add a new interceptor to the stack\n *\n * @param {Function} fulfilled The function to handle `then` for a `Promise`\n * @param {Function} rejected The function to handle `reject` for a `Promise`\n *\n * @return {Number} An ID used to remove interceptor later\n */\n use(fulfilled, rejected, options) {\n this.handlers.push({\n fulfilled,\n rejected,\n synchronous: options ? options.synchronous : false,\n runWhen: options ? options.runWhen : null\n });\n return this.handlers.length - 1;\n }\n\n /**\n * Remove an interceptor from the stack\n *\n * @param {Number} id The ID that was returned by `use`\n *\n * @returns {Boolean} `true` if the interceptor was removed, `false` otherwise\n */\n eject(id) {\n if (this.handlers[id]) {\n this.handlers[id] = null;\n }\n }\n\n /**\n * Clear all interceptors from the stack\n *\n * @returns {void}\n */\n clear() {\n if (this.handlers) {\n this.handlers = [];\n }\n }\n\n /**\n * Iterate over all the registered interceptors\n *\n * This method is particularly useful for skipping over any\n * interceptors that may have become `null` calling `eject`.\n *\n * @param {Function} fn The function to call for each interceptor\n *\n * @returns {void}\n */\n forEach(fn) {\n utils.forEach(this.handlers, function forEachHandler(h) {\n if (h !== null) {\n fn(h);\n }\n });\n }\n}\n\nexport default InterceptorManager;\n","'use strict';\n\nimport isAbsoluteURL from '../helpers/isAbsoluteURL.js';\nimport combineURLs from '../helpers/combineURLs.js';\n\n/**\n * Creates a new URL by combining the baseURL with the requestedURL,\n * only when the requestedURL is not already an absolute URL.\n * If the requestURL is absolute, this function returns the requestedURL untouched.\n *\n * @param {string} baseURL The base URL\n * @param {string} requestedURL Absolute or relative URL to combine\n *\n * @returns {string} The combined full path\n */\nexport default function buildFullPath(baseURL, requestedURL) {\n if (baseURL && !isAbsoluteURL(requestedURL)) {\n return combineURLs(baseURL, requestedURL);\n }\n return requestedURL;\n}\n","'use strict';\n\nimport transformData from './transformData.js';\nimport isCancel from '../cancel/isCancel.js';\nimport defaults from '../defaults/index.js';\nimport CanceledError from '../cancel/CanceledError.js';\nimport AxiosHeaders from '../core/AxiosHeaders.js';\nimport adapters from \"../adapters/adapters.js\";\n\n/**\n * Throws a `CanceledError` if cancellation has been requested.\n *\n * @param {Object} config The config that is to be used for the request\n *\n * @returns {void}\n */\nfunction throwIfCancellationRequested(config) {\n if (config.cancelToken) {\n config.cancelToken.throwIfRequested();\n }\n\n if (config.signal && config.signal.aborted) {\n throw new CanceledError(null, config);\n }\n}\n\n/**\n * Dispatch a request to the server using the configured adapter.\n *\n * @param {object} config The config that is to be used for the request\n *\n * @returns {Promise} The Promise to be fulfilled\n */\nexport default function dispatchRequest(config) {\n throwIfCancellationRequested(config);\n\n config.headers = AxiosHeaders.from(config.headers);\n\n // Transform request data\n config.data = transformData.call(\n config,\n config.transformRequest\n );\n\n if (['post', 'put', 'patch'].indexOf(config.method) !== -1) {\n config.headers.setContentType('application/x-www-form-urlencoded', false);\n }\n\n const adapter = adapters.getAdapter(config.adapter || defaults.adapter);\n\n return adapter(config).then(function onAdapterResolution(response) {\n throwIfCancellationRequested(config);\n\n // Transform response data\n response.data = transformData.call(\n config,\n config.transformResponse,\n response\n );\n\n response.headers = AxiosHeaders.from(response.headers);\n\n return response;\n }, function onAdapterRejection(reason) {\n if (!isCancel(reason)) {\n throwIfCancellationRequested(config);\n\n // Transform response data\n if (reason && reason.response) {\n reason.response.data = transformData.call(\n config,\n config.transformResponse,\n reason.response\n );\n reason.response.headers = AxiosHeaders.from(reason.response.headers);\n }\n }\n\n return Promise.reject(reason);\n });\n}\n","'use strict';\n\nimport utils from '../utils.js';\nimport AxiosHeaders from \"./AxiosHeaders.js\";\n\nconst headersToObject = (thing) => thing instanceof AxiosHeaders ? { ...thing } : thing;\n\n/**\n * Config-specific merge-function which creates a new config-object\n * by merging two configuration objects together.\n *\n * @param {Object} config1\n * @param {Object} config2\n *\n * @returns {Object} New object resulting from merging config2 to config1\n */\nexport default function mergeConfig(config1, config2) {\n // eslint-disable-next-line no-param-reassign\n config2 = config2 || {};\n const config = {};\n\n function getMergedValue(target, source, prop, caseless) {\n if (utils.isPlainObject(target) && utils.isPlainObject(source)) {\n return utils.merge.call({caseless}, target, source);\n } else if (utils.isPlainObject(source)) {\n return utils.merge({}, source);\n } else if (utils.isArray(source)) {\n return source.slice();\n }\n return source;\n }\n\n // eslint-disable-next-line consistent-return\n function mergeDeepProperties(a, b, prop , caseless) {\n if (!utils.isUndefined(b)) {\n return getMergedValue(a, b, prop , caseless);\n } else if (!utils.isUndefined(a)) {\n return getMergedValue(undefined, a, prop , caseless);\n }\n }\n\n // eslint-disable-next-line consistent-return\n function valueFromConfig2(a, b) {\n if (!utils.isUndefined(b)) {\n return getMergedValue(undefined, b);\n }\n }\n\n // eslint-disable-next-line consistent-return\n function defaultToConfig2(a, b) {\n if (!utils.isUndefined(b)) {\n return getMergedValue(undefined, b);\n } else if (!utils.isUndefined(a)) {\n return getMergedValue(undefined, a);\n }\n }\n\n // eslint-disable-next-line consistent-return\n function mergeDirectKeys(a, b, prop) {\n if (prop in config2) {\n return getMergedValue(a, b);\n } else if (prop in config1) {\n return getMergedValue(undefined, a);\n }\n }\n\n const mergeMap = {\n url: valueFromConfig2,\n method: valueFromConfig2,\n data: valueFromConfig2,\n baseURL: defaultToConfig2,\n transformRequest: defaultToConfig2,\n transformResponse: defaultToConfig2,\n paramsSerializer: defaultToConfig2,\n timeout: defaultToConfig2,\n timeoutMessage: defaultToConfig2,\n withCredentials: defaultToConfig2,\n withXSRFToken: defaultToConfig2,\n adapter: defaultToConfig2,\n responseType: defaultToConfig2,\n xsrfCookieName: defaultToConfig2,\n xsrfHeaderName: defaultToConfig2,\n onUploadProgress: defaultToConfig2,\n onDownloadProgress: defaultToConfig2,\n decompress: defaultToConfig2,\n maxContentLength: defaultToConfig2,\n maxBodyLength: defaultToConfig2,\n beforeRedirect: defaultToConfig2,\n transport: defaultToConfig2,\n httpAgent: defaultToConfig2,\n httpsAgent: defaultToConfig2,\n cancelToken: defaultToConfig2,\n socketPath: defaultToConfig2,\n responseEncoding: defaultToConfig2,\n validateStatus: mergeDirectKeys,\n headers: (a, b , prop) => mergeDeepProperties(headersToObject(a), headersToObject(b),prop, true)\n };\n\n utils.forEach(Object.keys(Object.assign({}, config1, config2)), function computeConfigValue(prop) {\n const merge = mergeMap[prop] || mergeDeepProperties;\n const configValue = merge(config1[prop], config2[prop], prop);\n (utils.isUndefined(configValue) && merge !== mergeDirectKeys) || (config[prop] = configValue);\n });\n\n return config;\n}\n","'use strict';\n\nimport AxiosError from './AxiosError.js';\n\n/**\n * Resolve or reject a Promise based on response status.\n *\n * @param {Function} resolve A function that resolves the promise.\n * @param {Function} reject A function that rejects the promise.\n * @param {object} response The response.\n *\n * @returns {object} The response.\n */\nexport default function settle(resolve, reject, response) {\n const validateStatus = response.config.validateStatus;\n if (!response.status || !validateStatus || validateStatus(response.status)) {\n resolve(response);\n } else {\n reject(new AxiosError(\n 'Request failed with status code ' + response.status,\n [AxiosError.ERR_BAD_REQUEST, AxiosError.ERR_BAD_RESPONSE][Math.floor(response.status / 100) - 4],\n response.config,\n response.request,\n response\n ));\n }\n}\n","'use strict';\n\nimport utils from './../utils.js';\nimport defaults from '../defaults/index.js';\nimport AxiosHeaders from '../core/AxiosHeaders.js';\n\n/**\n * Transform the data for a request or a response\n *\n * @param {Array|Function} fns A single function or Array of functions\n * @param {?Object} response The response object\n *\n * @returns {*} The resulting transformed data\n */\nexport default function transformData(fns, response) {\n const config = this || defaults;\n const context = response || config;\n const headers = AxiosHeaders.from(context.headers);\n let data = context.data;\n\n utils.forEach(fns, function transform(fn) {\n data = fn.call(config, data, headers.normalize(), response ? response.status : undefined);\n });\n\n headers.normalize();\n\n return data;\n}\n","'use strict';\n\nimport utils from '../utils.js';\nimport AxiosError from '../core/AxiosError.js';\nimport transitionalDefaults from './transitional.js';\nimport toFormData from '../helpers/toFormData.js';\nimport toURLEncodedForm from '../helpers/toURLEncodedForm.js';\nimport platform from '../platform/index.js';\nimport formDataToJSON from '../helpers/formDataToJSON.js';\n\n/**\n * It takes a string, tries to parse it, and if it fails, it returns the stringified version\n * of the input\n *\n * @param {any} rawValue - The value to be stringified.\n * @param {Function} parser - A function that parses a string into a JavaScript object.\n * @param {Function} encoder - A function that takes a value and returns a string.\n *\n * @returns {string} A stringified version of the rawValue.\n */\nfunction stringifySafely(rawValue, parser, encoder) {\n if (utils.isString(rawValue)) {\n try {\n (parser || JSON.parse)(rawValue);\n return utils.trim(rawValue);\n } catch (e) {\n if (e.name !== 'SyntaxError') {\n throw e;\n }\n }\n }\n\n return (encoder || JSON.stringify)(rawValue);\n}\n\nconst defaults = {\n\n transitional: transitionalDefaults,\n\n adapter: ['xhr', 'http', 'fetch'],\n\n transformRequest: [function transformRequest(data, headers) {\n const contentType = headers.getContentType() || '';\n const hasJSONContentType = contentType.indexOf('application/json') > -1;\n const isObjectPayload = utils.isObject(data);\n\n if (isObjectPayload && utils.isHTMLForm(data)) {\n data = new FormData(data);\n }\n\n const isFormData = utils.isFormData(data);\n\n if (isFormData) {\n return hasJSONContentType ? JSON.stringify(formDataToJSON(data)) : data;\n }\n\n if (utils.isArrayBuffer(data) ||\n utils.isBuffer(data) ||\n utils.isStream(data) ||\n utils.isFile(data) ||\n utils.isBlob(data) ||\n utils.isReadableStream(data)\n ) {\n return data;\n }\n if (utils.isArrayBufferView(data)) {\n return data.buffer;\n }\n if (utils.isURLSearchParams(data)) {\n headers.setContentType('application/x-www-form-urlencoded;charset=utf-8', false);\n return data.toString();\n }\n\n let isFileList;\n\n if (isObjectPayload) {\n if (contentType.indexOf('application/x-www-form-urlencoded') > -1) {\n return toURLEncodedForm(data, this.formSerializer).toString();\n }\n\n if ((isFileList = utils.isFileList(data)) || contentType.indexOf('multipart/form-data') > -1) {\n const _FormData = this.env && this.env.FormData;\n\n return toFormData(\n isFileList ? {'files[]': data} : data,\n _FormData && new _FormData(),\n this.formSerializer\n );\n }\n }\n\n if (isObjectPayload || hasJSONContentType ) {\n headers.setContentType('application/json', false);\n return stringifySafely(data);\n }\n\n return data;\n }],\n\n transformResponse: [function transformResponse(data) {\n const transitional = this.transitional || defaults.transitional;\n const forcedJSONParsing = transitional && transitional.forcedJSONParsing;\n const JSONRequested = this.responseType === 'json';\n\n if (utils.isResponse(data) || utils.isReadableStream(data)) {\n return data;\n }\n\n if (data && utils.isString(data) && ((forcedJSONParsing && !this.responseType) || JSONRequested)) {\n const silentJSONParsing = transitional && transitional.silentJSONParsing;\n const strictJSONParsing = !silentJSONParsing && JSONRequested;\n\n try {\n return JSON.parse(data);\n } catch (e) {\n if (strictJSONParsing) {\n if (e.name === 'SyntaxError') {\n throw AxiosError.from(e, AxiosError.ERR_BAD_RESPONSE, this, null, this.response);\n }\n throw e;\n }\n }\n }\n\n return data;\n }],\n\n /**\n * A timeout in milliseconds to abort a request. If set to 0 (default) a\n * timeout is not created.\n */\n timeout: 0,\n\n xsrfCookieName: 'XSRF-TOKEN',\n xsrfHeaderName: 'X-XSRF-TOKEN',\n\n maxContentLength: -1,\n maxBodyLength: -1,\n\n env: {\n FormData: platform.classes.FormData,\n Blob: platform.classes.Blob\n },\n\n validateStatus: function validateStatus(status) {\n return status >= 200 && status < 300;\n },\n\n headers: {\n common: {\n 'Accept': 'application/json, text/plain, */*',\n 'Content-Type': undefined\n }\n }\n};\n\nutils.forEach(['delete', 'get', 'head', 'post', 'put', 'patch'], (method) => {\n defaults.headers[method] = {};\n});\n\nexport default defaults;\n","'use strict';\n\nexport default {\n silentJSONParsing: true,\n forcedJSONParsing: true,\n clarifyTimeoutError: false\n};\n","export const VERSION = \"1.7.9\";","'use strict';\n\nimport toFormData from './toFormData.js';\n\n/**\n * It encodes a string by replacing all characters that are not in the unreserved set with\n * their percent-encoded equivalents\n *\n * @param {string} str - The string to encode.\n *\n * @returns {string} The encoded string.\n */\nfunction encode(str) {\n const charMap = {\n '!': '%21',\n \"'\": '%27',\n '(': '%28',\n ')': '%29',\n '~': '%7E',\n '%20': '+',\n '%00': '\\x00'\n };\n return encodeURIComponent(str).replace(/[!'()~]|%20|%00/g, function replacer(match) {\n return charMap[match];\n });\n}\n\n/**\n * It takes a params object and converts it to a FormData object\n *\n * @param {Object} params - The parameters to be converted to a FormData object.\n * @param {Object} options - The options object passed to the Axios constructor.\n *\n * @returns {void}\n */\nfunction AxiosURLSearchParams(params, options) {\n this._pairs = [];\n\n params && toFormData(params, this, options);\n}\n\nconst prototype = AxiosURLSearchParams.prototype;\n\nprototype.append = function append(name, value) {\n this._pairs.push([name, value]);\n};\n\nprototype.toString = function toString(encoder) {\n const _encode = encoder ? function(value) {\n return encoder.call(this, value, encode);\n } : encode;\n\n return this._pairs.map(function each(pair) {\n return _encode(pair[0]) + '=' + _encode(pair[1]);\n }, '').join('&');\n};\n\nexport default AxiosURLSearchParams;\n","const HttpStatusCode = {\n Continue: 100,\n SwitchingProtocols: 101,\n Processing: 102,\n EarlyHints: 103,\n Ok: 200,\n Created: 201,\n Accepted: 202,\n NonAuthoritativeInformation: 203,\n NoContent: 204,\n ResetContent: 205,\n PartialContent: 206,\n MultiStatus: 207,\n AlreadyReported: 208,\n ImUsed: 226,\n MultipleChoices: 300,\n MovedPermanently: 301,\n Found: 302,\n SeeOther: 303,\n NotModified: 304,\n UseProxy: 305,\n Unused: 306,\n TemporaryRedirect: 307,\n PermanentRedirect: 308,\n BadRequest: 400,\n Unauthorized: 401,\n PaymentRequired: 402,\n Forbidden: 403,\n NotFound: 404,\n MethodNotAllowed: 405,\n NotAcceptable: 406,\n ProxyAuthenticationRequired: 407,\n RequestTimeout: 408,\n Conflict: 409,\n Gone: 410,\n LengthRequired: 411,\n PreconditionFailed: 412,\n PayloadTooLarge: 413,\n UriTooLong: 414,\n UnsupportedMediaType: 415,\n RangeNotSatisfiable: 416,\n ExpectationFailed: 417,\n ImATeapot: 418,\n MisdirectedRequest: 421,\n UnprocessableEntity: 422,\n Locked: 423,\n FailedDependency: 424,\n TooEarly: 425,\n UpgradeRequired: 426,\n PreconditionRequired: 428,\n TooManyRequests: 429,\n RequestHeaderFieldsTooLarge: 431,\n UnavailableForLegalReasons: 451,\n InternalServerError: 500,\n NotImplemented: 501,\n BadGateway: 502,\n ServiceUnavailable: 503,\n GatewayTimeout: 504,\n HttpVersionNotSupported: 505,\n VariantAlsoNegotiates: 506,\n InsufficientStorage: 507,\n LoopDetected: 508,\n NotExtended: 510,\n NetworkAuthenticationRequired: 511,\n};\n\nObject.entries(HttpStatusCode).forEach(([key, value]) => {\n HttpStatusCode[value] = key;\n});\n\nexport default HttpStatusCode;\n","'use strict';\n\nexport default function bind(fn, thisArg) {\n return function wrap() {\n return fn.apply(thisArg, arguments);\n };\n}\n","'use strict';\n\nimport utils from '../utils.js';\nimport AxiosURLSearchParams from '../helpers/AxiosURLSearchParams.js';\n\n/**\n * It replaces all instances of the characters `:`, `$`, `,`, `+`, `[`, and `]` with their\n * URI encoded counterparts\n *\n * @param {string} val The value to be encoded.\n *\n * @returns {string} The encoded value.\n */\nfunction encode(val) {\n return encodeURIComponent(val).\n replace(/%3A/gi, ':').\n replace(/%24/g, '$').\n replace(/%2C/gi, ',').\n replace(/%20/g, '+').\n replace(/%5B/gi, '[').\n replace(/%5D/gi, ']');\n}\n\n/**\n * Build a URL by appending params to the end\n *\n * @param {string} url The base of the url (e.g., http://www.google.com)\n * @param {object} [params] The params to be appended\n * @param {?(object|Function)} options\n *\n * @returns {string} The formatted url\n */\nexport default function buildURL(url, params, options) {\n /*eslint no-param-reassign:0*/\n if (!params) {\n return url;\n }\n \n const _encode = options && options.encode || encode;\n\n if (utils.isFunction(options)) {\n options = {\n serialize: options\n };\n } \n\n const serializeFn = options && options.serialize;\n\n let serializedParams;\n\n if (serializeFn) {\n serializedParams = serializeFn(params, options);\n } else {\n serializedParams = utils.isURLSearchParams(params) ?\n params.toString() :\n new AxiosURLSearchParams(params, options).toString(_encode);\n }\n\n if (serializedParams) {\n const hashmarkIndex = url.indexOf(\"#\");\n\n if (hashmarkIndex !== -1) {\n url = url.slice(0, hashmarkIndex);\n }\n url += (url.indexOf('?') === -1 ? '?' : '&') + serializedParams;\n }\n\n return url;\n}\n","'use strict';\n\n/**\n * Creates a new URL by combining the specified URLs\n *\n * @param {string} baseURL The base URL\n * @param {string} relativeURL The relative URL\n *\n * @returns {string} The combined URL\n */\nexport default function combineURLs(baseURL, relativeURL) {\n return relativeURL\n ? baseURL.replace(/\\/?\\/$/, '') + '/' + relativeURL.replace(/^\\/+/, '')\n : baseURL;\n}\n","import CanceledError from \"../cancel/CanceledError.js\";\nimport AxiosError from \"../core/AxiosError.js\";\nimport utils from '../utils.js';\n\nconst composeSignals = (signals, timeout) => {\n const {length} = (signals = signals ? signals.filter(Boolean) : []);\n\n if (timeout || length) {\n let controller = new AbortController();\n\n let aborted;\n\n const onabort = function (reason) {\n if (!aborted) {\n aborted = true;\n unsubscribe();\n const err = reason instanceof Error ? reason : this.reason;\n controller.abort(err instanceof AxiosError ? err : new CanceledError(err instanceof Error ? err.message : err));\n }\n }\n\n let timer = timeout && setTimeout(() => {\n timer = null;\n onabort(new AxiosError(`timeout ${timeout} of ms exceeded`, AxiosError.ETIMEDOUT))\n }, timeout)\n\n const unsubscribe = () => {\n if (signals) {\n timer && clearTimeout(timer);\n timer = null;\n signals.forEach(signal => {\n signal.unsubscribe ? signal.unsubscribe(onabort) : signal.removeEventListener('abort', onabort);\n });\n signals = null;\n }\n }\n\n signals.forEach((signal) => signal.addEventListener('abort', onabort));\n\n const {signal} = controller;\n\n signal.unsubscribe = () => utils.asap(unsubscribe);\n\n return signal;\n }\n}\n\nexport default composeSignals;\n","import utils from './../utils.js';\nimport platform from '../platform/index.js';\n\nexport default platform.hasStandardBrowserEnv ?\n\n // Standard browser envs support document.cookie\n {\n write(name, value, expires, path, domain, secure) {\n const cookie = [name + '=' + encodeURIComponent(value)];\n\n utils.isNumber(expires) && cookie.push('expires=' + new Date(expires).toGMTString());\n\n utils.isString(path) && cookie.push('path=' + path);\n\n utils.isString(domain) && cookie.push('domain=' + domain);\n\n secure === true && cookie.push('secure');\n\n document.cookie = cookie.join('; ');\n },\n\n read(name) {\n const match = document.cookie.match(new RegExp('(^|;\\\\s*)(' + name + ')=([^;]*)'));\n return (match ? decodeURIComponent(match[3]) : null);\n },\n\n remove(name) {\n this.write(name, '', Date.now() - 86400000);\n }\n }\n\n :\n\n // Non-standard browser env (web workers, react-native) lack needed support.\n {\n write() {},\n read() {\n return null;\n },\n remove() {}\n };\n\n","'use strict';\n\nimport utils from '../utils.js';\n\n/**\n * It takes a string like `foo[x][y][z]` and returns an array like `['foo', 'x', 'y', 'z']\n *\n * @param {string} name - The name of the property to get.\n *\n * @returns An array of strings.\n */\nfunction parsePropPath(name) {\n // foo[x][y][z]\n // foo.x.y.z\n // foo-x-y-z\n // foo x y z\n return utils.matchAll(/\\w+|\\[(\\w*)]/g, name).map(match => {\n return match[0] === '[]' ? '' : match[1] || match[0];\n });\n}\n\n/**\n * Convert an array to an object.\n *\n * @param {Array} arr - The array to convert to an object.\n *\n * @returns An object with the same keys and values as the array.\n */\nfunction arrayToObject(arr) {\n const obj = {};\n const keys = Object.keys(arr);\n let i;\n const len = keys.length;\n let key;\n for (i = 0; i < len; i++) {\n key = keys[i];\n obj[key] = arr[key];\n }\n return obj;\n}\n\n/**\n * It takes a FormData object and returns a JavaScript object\n *\n * @param {string} formData The FormData object to convert to JSON.\n *\n * @returns {Object | null} The converted object.\n */\nfunction formDataToJSON(formData) {\n function buildPath(path, value, target, index) {\n let name = path[index++];\n\n if (name === '__proto__') return true;\n\n const isNumericKey = Number.isFinite(+name);\n const isLast = index >= path.length;\n name = !name && utils.isArray(target) ? target.length : name;\n\n if (isLast) {\n if (utils.hasOwnProp(target, name)) {\n target[name] = [target[name], value];\n } else {\n target[name] = value;\n }\n\n return !isNumericKey;\n }\n\n if (!target[name] || !utils.isObject(target[name])) {\n target[name] = [];\n }\n\n const result = buildPath(path, value, target[name], index);\n\n if (result && utils.isArray(target[name])) {\n target[name] = arrayToObject(target[name]);\n }\n\n return !isNumericKey;\n }\n\n if (utils.isFormData(formData) && utils.isFunction(formData.entries)) {\n const obj = {};\n\n utils.forEachEntry(formData, (name, value) => {\n buildPath(parsePropPath(name), value, obj, 0);\n });\n\n return obj;\n }\n\n return null;\n}\n\nexport default formDataToJSON;\n","'use strict';\n\n/**\n * Determines whether the specified URL is absolute\n *\n * @param {string} url The URL to test\n *\n * @returns {boolean} True if the specified URL is absolute, otherwise false\n */\nexport default function isAbsoluteURL(url) {\n // A URL is considered absolute if it begins with \"://\" or \"//\" (protocol-relative URL).\n // RFC 3986 defines scheme name as a sequence of characters beginning with a letter and followed\n // by any combination of letters, digits, plus, period, or hyphen.\n return /^([a-z][a-z\\d+\\-.]*:)?\\/\\//i.test(url);\n}\n","'use strict';\n\nimport utils from './../utils.js';\n\n/**\n * Determines whether the payload is an error thrown by Axios\n *\n * @param {*} payload The value to test\n *\n * @returns {boolean} True if the payload is an error thrown by Axios, otherwise false\n */\nexport default function isAxiosError(payload) {\n return utils.isObject(payload) && (payload.isAxiosError === true);\n}\n","import platform from '../platform/index.js';\n\nexport default platform.hasStandardBrowserEnv ? ((origin, isMSIE) => (url) => {\n url = new URL(url, platform.origin);\n\n return (\n origin.protocol === url.protocol &&\n origin.host === url.host &&\n (isMSIE || origin.port === url.port)\n );\n})(\n new URL(platform.origin),\n platform.navigator && /(msie|trident)/i.test(platform.navigator.userAgent)\n) : () => true;\n","// eslint-disable-next-line strict\nexport default null;\n","'use strict';\n\nimport utils from './../utils.js';\n\n// RawAxiosHeaders whose duplicates are ignored by node\n// c.f. https://nodejs.org/api/http.html#http_message_headers\nconst ignoreDuplicateOf = utils.toObjectSet([\n 'age', 'authorization', 'content-length', 'content-type', 'etag',\n 'expires', 'from', 'host', 'if-modified-since', 'if-unmodified-since',\n 'last-modified', 'location', 'max-forwards', 'proxy-authorization',\n 'referer', 'retry-after', 'user-agent'\n]);\n\n/**\n * Parse headers into an object\n *\n * ```\n * Date: Wed, 27 Aug 2014 08:58:49 GMT\n * Content-Type: application/json\n * Connection: keep-alive\n * Transfer-Encoding: chunked\n * ```\n *\n * @param {String} rawHeaders Headers needing to be parsed\n *\n * @returns {Object} Headers parsed into an object\n */\nexport default rawHeaders => {\n const parsed = {};\n let key;\n let val;\n let i;\n\n rawHeaders && rawHeaders.split('\\n').forEach(function parser(line) {\n i = line.indexOf(':');\n key = line.substring(0, i).trim().toLowerCase();\n val = line.substring(i + 1).trim();\n\n if (!key || (parsed[key] && ignoreDuplicateOf[key])) {\n return;\n }\n\n if (key === 'set-cookie') {\n if (parsed[key]) {\n parsed[key].push(val);\n } else {\n parsed[key] = [val];\n }\n } else {\n parsed[key] = parsed[key] ? parsed[key] + ', ' + val : val;\n }\n });\n\n return parsed;\n};\n","'use strict';\n\nexport default function parseProtocol(url) {\n const match = /^([-+\\w]{1,25})(:?\\/\\/|:)/.exec(url);\n return match && match[1] || '';\n}\n","import speedometer from \"./speedometer.js\";\nimport throttle from \"./throttle.js\";\nimport utils from \"../utils.js\";\n\nexport const progressEventReducer = (listener, isDownloadStream, freq = 3) => {\n let bytesNotified = 0;\n const _speedometer = speedometer(50, 250);\n\n return throttle(e => {\n const loaded = e.loaded;\n const total = e.lengthComputable ? e.total : undefined;\n const progressBytes = loaded - bytesNotified;\n const rate = _speedometer(progressBytes);\n const inRange = loaded <= total;\n\n bytesNotified = loaded;\n\n const data = {\n loaded,\n total,\n progress: total ? (loaded / total) : undefined,\n bytes: progressBytes,\n rate: rate ? rate : undefined,\n estimated: rate && total && inRange ? (total - loaded) / rate : undefined,\n event: e,\n lengthComputable: total != null,\n [isDownloadStream ? 'download' : 'upload']: true\n };\n\n listener(data);\n }, freq);\n}\n\nexport const progressEventDecorator = (total, throttled) => {\n const lengthComputable = total != null;\n\n return [(loaded) => throttled[0]({\n lengthComputable,\n total,\n loaded\n }), throttled[1]];\n}\n\nexport const asyncDecorator = (fn) => (...args) => utils.asap(() => fn(...args));\n","import platform from \"../platform/index.js\";\nimport utils from \"../utils.js\";\nimport isURLSameOrigin from \"./isURLSameOrigin.js\";\nimport cookies from \"./cookies.js\";\nimport buildFullPath from \"../core/buildFullPath.js\";\nimport mergeConfig from \"../core/mergeConfig.js\";\nimport AxiosHeaders from \"../core/AxiosHeaders.js\";\nimport buildURL from \"./buildURL.js\";\n\nexport default (config) => {\n const newConfig = mergeConfig({}, config);\n\n let {data, withXSRFToken, xsrfHeaderName, xsrfCookieName, headers, auth} = newConfig;\n\n newConfig.headers = headers = AxiosHeaders.from(headers);\n\n newConfig.url = buildURL(buildFullPath(newConfig.baseURL, newConfig.url), config.params, config.paramsSerializer);\n\n // HTTP basic authentication\n if (auth) {\n headers.set('Authorization', 'Basic ' +\n btoa((auth.username || '') + ':' + (auth.password ? unescape(encodeURIComponent(auth.password)) : ''))\n );\n }\n\n let contentType;\n\n if (utils.isFormData(data)) {\n if (platform.hasStandardBrowserEnv || platform.hasStandardBrowserWebWorkerEnv) {\n headers.setContentType(undefined); // Let the browser set it\n } else if ((contentType = headers.getContentType()) !== false) {\n // fix semicolon duplication issue for ReactNative FormData implementation\n const [type, ...tokens] = contentType ? contentType.split(';').map(token => token.trim()).filter(Boolean) : [];\n headers.setContentType([type || 'multipart/form-data', ...tokens].join('; '));\n }\n }\n\n // Add xsrf header\n // This is only done if running in a standard browser environment.\n // Specifically not if we're in a web worker, or react-native.\n\n if (platform.hasStandardBrowserEnv) {\n withXSRFToken && utils.isFunction(withXSRFToken) && (withXSRFToken = withXSRFToken(newConfig));\n\n if (withXSRFToken || (withXSRFToken !== false && isURLSameOrigin(newConfig.url))) {\n // Add xsrf header\n const xsrfValue = xsrfHeaderName && xsrfCookieName && cookies.read(xsrfCookieName);\n\n if (xsrfValue) {\n headers.set(xsrfHeaderName, xsrfValue);\n }\n }\n }\n\n return newConfig;\n}\n\n","'use strict';\n\n/**\n * Calculate data maxRate\n * @param {Number} [samplesCount= 10]\n * @param {Number} [min= 1000]\n * @returns {Function}\n */\nfunction speedometer(samplesCount, min) {\n samplesCount = samplesCount || 10;\n const bytes = new Array(samplesCount);\n const timestamps = new Array(samplesCount);\n let head = 0;\n let tail = 0;\n let firstSampleTS;\n\n min = min !== undefined ? min : 1000;\n\n return function push(chunkLength) {\n const now = Date.now();\n\n const startedAt = timestamps[tail];\n\n if (!firstSampleTS) {\n firstSampleTS = now;\n }\n\n bytes[head] = chunkLength;\n timestamps[head] = now;\n\n let i = tail;\n let bytesCount = 0;\n\n while (i !== head) {\n bytesCount += bytes[i++];\n i = i % samplesCount;\n }\n\n head = (head + 1) % samplesCount;\n\n if (head === tail) {\n tail = (tail + 1) % samplesCount;\n }\n\n if (now - firstSampleTS < min) {\n return;\n }\n\n const passed = startedAt && now - startedAt;\n\n return passed ? Math.round(bytesCount * 1000 / passed) : undefined;\n };\n}\n\nexport default speedometer;\n","'use strict';\n\n/**\n * Syntactic sugar for invoking a function and expanding an array for arguments.\n *\n * Common use case would be to use `Function.prototype.apply`.\n *\n * ```js\n * function f(x, y, z) {}\n * var args = [1, 2, 3];\n * f.apply(null, args);\n * ```\n *\n * With `spread` this example can be re-written.\n *\n * ```js\n * spread(function(x, y, z) {})([1, 2, 3]);\n * ```\n *\n * @param {Function} callback\n *\n * @returns {Function}\n */\nexport default function spread(callback) {\n return function wrap(arr) {\n return callback.apply(null, arr);\n };\n}\n","/**\n * Throttle decorator\n * @param {Function} fn\n * @param {Number} freq\n * @return {Function}\n */\nfunction throttle(fn, freq) {\n let timestamp = 0;\n let threshold = 1000 / freq;\n let lastArgs;\n let timer;\n\n const invoke = (args, now = Date.now()) => {\n timestamp = now;\n lastArgs = null;\n if (timer) {\n clearTimeout(timer);\n timer = null;\n }\n fn.apply(null, args);\n }\n\n const throttled = (...args) => {\n const now = Date.now();\n const passed = now - timestamp;\n if ( passed >= threshold) {\n invoke(args, now);\n } else {\n lastArgs = args;\n if (!timer) {\n timer = setTimeout(() => {\n timer = null;\n invoke(lastArgs)\n }, threshold - passed);\n }\n }\n }\n\n const flush = () => lastArgs && invoke(lastArgs);\n\n return [throttled, flush];\n}\n\nexport default throttle;\n","'use strict';\n\nimport utils from '../utils.js';\nimport AxiosError from '../core/AxiosError.js';\n// temporary hotfix to avoid circular references until AxiosURLSearchParams is refactored\nimport PlatformFormData from '../platform/node/classes/FormData.js';\n\n/**\n * Determines if the given thing is a array or js object.\n *\n * @param {string} thing - The object or array to be visited.\n *\n * @returns {boolean}\n */\nfunction isVisitable(thing) {\n return utils.isPlainObject(thing) || utils.isArray(thing);\n}\n\n/**\n * It removes the brackets from the end of a string\n *\n * @param {string} key - The key of the parameter.\n *\n * @returns {string} the key without the brackets.\n */\nfunction removeBrackets(key) {\n return utils.endsWith(key, '[]') ? key.slice(0, -2) : key;\n}\n\n/**\n * It takes a path, a key, and a boolean, and returns a string\n *\n * @param {string} path - The path to the current key.\n * @param {string} key - The key of the current object being iterated over.\n * @param {string} dots - If true, the key will be rendered with dots instead of brackets.\n *\n * @returns {string} The path to the current key.\n */\nfunction renderKey(path, key, dots) {\n if (!path) return key;\n return path.concat(key).map(function each(token, i) {\n // eslint-disable-next-line no-param-reassign\n token = removeBrackets(token);\n return !dots && i ? '[' + token + ']' : token;\n }).join(dots ? '.' : '');\n}\n\n/**\n * If the array is an array and none of its elements are visitable, then it's a flat array.\n *\n * @param {Array} arr - The array to check\n *\n * @returns {boolean}\n */\nfunction isFlatArray(arr) {\n return utils.isArray(arr) && !arr.some(isVisitable);\n}\n\nconst predicates = utils.toFlatObject(utils, {}, null, function filter(prop) {\n return /^is[A-Z]/.test(prop);\n});\n\n/**\n * Convert a data object to FormData\n *\n * @param {Object} obj\n * @param {?Object} [formData]\n * @param {?Object} [options]\n * @param {Function} [options.visitor]\n * @param {Boolean} [options.metaTokens = true]\n * @param {Boolean} [options.dots = false]\n * @param {?Boolean} [options.indexes = false]\n *\n * @returns {Object}\n **/\n\n/**\n * It converts an object into a FormData object\n *\n * @param {Object} obj - The object to convert to form data.\n * @param {string} formData - The FormData object to append to.\n * @param {Object} options\n *\n * @returns\n */\nfunction toFormData(obj, formData, options) {\n if (!utils.isObject(obj)) {\n throw new TypeError('target must be an object');\n }\n\n // eslint-disable-next-line no-param-reassign\n formData = formData || new (PlatformFormData || FormData)();\n\n // eslint-disable-next-line no-param-reassign\n options = utils.toFlatObject(options, {\n metaTokens: true,\n dots: false,\n indexes: false\n }, false, function defined(option, source) {\n // eslint-disable-next-line no-eq-null,eqeqeq\n return !utils.isUndefined(source[option]);\n });\n\n const metaTokens = options.metaTokens;\n // eslint-disable-next-line no-use-before-define\n const visitor = options.visitor || defaultVisitor;\n const dots = options.dots;\n const indexes = options.indexes;\n const _Blob = options.Blob || typeof Blob !== 'undefined' && Blob;\n const useBlob = _Blob && utils.isSpecCompliantForm(formData);\n\n if (!utils.isFunction(visitor)) {\n throw new TypeError('visitor must be a function');\n }\n\n function convertValue(value) {\n if (value === null) return '';\n\n if (utils.isDate(value)) {\n return value.toISOString();\n }\n\n if (!useBlob && utils.isBlob(value)) {\n throw new AxiosError('Blob is not supported. Use a Buffer instead.');\n }\n\n if (utils.isArrayBuffer(value) || utils.isTypedArray(value)) {\n return useBlob && typeof Blob === 'function' ? new Blob([value]) : Buffer.from(value);\n }\n\n return value;\n }\n\n /**\n * Default visitor.\n *\n * @param {*} value\n * @param {String|Number} key\n * @param {Array} path\n * @this {FormData}\n *\n * @returns {boolean} return true to visit the each prop of the value recursively\n */\n function defaultVisitor(value, key, path) {\n let arr = value;\n\n if (value && !path && typeof value === 'object') {\n if (utils.endsWith(key, '{}')) {\n // eslint-disable-next-line no-param-reassign\n key = metaTokens ? key : key.slice(0, -2);\n // eslint-disable-next-line no-param-reassign\n value = JSON.stringify(value);\n } else if (\n (utils.isArray(value) && isFlatArray(value)) ||\n ((utils.isFileList(value) || utils.endsWith(key, '[]')) && (arr = utils.toArray(value))\n )) {\n // eslint-disable-next-line no-param-reassign\n key = removeBrackets(key);\n\n arr.forEach(function each(el, index) {\n !(utils.isUndefined(el) || el === null) && formData.append(\n // eslint-disable-next-line no-nested-ternary\n indexes === true ? renderKey([key], index, dots) : (indexes === null ? key : key + '[]'),\n convertValue(el)\n );\n });\n return false;\n }\n }\n\n if (isVisitable(value)) {\n return true;\n }\n\n formData.append(renderKey(path, key, dots), convertValue(value));\n\n return false;\n }\n\n const stack = [];\n\n const exposedHelpers = Object.assign(predicates, {\n defaultVisitor,\n convertValue,\n isVisitable\n });\n\n function build(value, path) {\n if (utils.isUndefined(value)) return;\n\n if (stack.indexOf(value) !== -1) {\n throw Error('Circular reference detected in ' + path.join('.'));\n }\n\n stack.push(value);\n\n utils.forEach(value, function each(el, key) {\n const result = !(utils.isUndefined(el) || el === null) && visitor.call(\n formData, el, utils.isString(key) ? key.trim() : key, path, exposedHelpers\n );\n\n if (result === true) {\n build(el, path ? path.concat(key) : [key]);\n }\n });\n\n stack.pop();\n }\n\n if (!utils.isObject(obj)) {\n throw new TypeError('data must be an object');\n }\n\n build(obj);\n\n return formData;\n}\n\nexport default toFormData;\n","'use strict';\n\nimport utils from '../utils.js';\nimport toFormData from './toFormData.js';\nimport platform from '../platform/index.js';\n\nexport default function toURLEncodedForm(data, options) {\n return toFormData(data, new platform.classes.URLSearchParams(), Object.assign({\n visitor: function(value, key, path, helpers) {\n if (platform.isNode && utils.isBuffer(value)) {\n this.append(key, value.toString('base64'));\n return false;\n }\n\n return helpers.defaultVisitor.apply(this, arguments);\n }\n }, options));\n}\n","\nexport const streamChunk = function* (chunk, chunkSize) {\n let len = chunk.byteLength;\n\n if (!chunkSize || len < chunkSize) {\n yield chunk;\n return;\n }\n\n let pos = 0;\n let end;\n\n while (pos < len) {\n end = pos + chunkSize;\n yield chunk.slice(pos, end);\n pos = end;\n }\n}\n\nexport const readBytes = async function* (iterable, chunkSize) {\n for await (const chunk of readStream(iterable)) {\n yield* streamChunk(chunk, chunkSize);\n }\n}\n\nconst readStream = async function* (stream) {\n if (stream[Symbol.asyncIterator]) {\n yield* stream;\n return;\n }\n\n const reader = stream.getReader();\n try {\n for (;;) {\n const {done, value} = await reader.read();\n if (done) {\n break;\n }\n yield value;\n }\n } finally {\n await reader.cancel();\n }\n}\n\nexport const trackStream = (stream, chunkSize, onProgress, onFinish) => {\n const iterator = readBytes(stream, chunkSize);\n\n let bytes = 0;\n let done;\n let _onFinish = (e) => {\n if (!done) {\n done = true;\n onFinish && onFinish(e);\n }\n }\n\n return new ReadableStream({\n async pull(controller) {\n try {\n const {done, value} = await iterator.next();\n\n if (done) {\n _onFinish();\n controller.close();\n return;\n }\n\n let len = value.byteLength;\n if (onProgress) {\n let loadedBytes = bytes += len;\n onProgress(loadedBytes);\n }\n controller.enqueue(new Uint8Array(value));\n } catch (err) {\n _onFinish(err);\n throw err;\n }\n },\n cancel(reason) {\n _onFinish(reason);\n return iterator.return();\n }\n }, {\n highWaterMark: 2\n })\n}\n","'use strict';\n\nimport {VERSION} from '../env/data.js';\nimport AxiosError from '../core/AxiosError.js';\n\nconst validators = {};\n\n// eslint-disable-next-line func-names\n['object', 'boolean', 'number', 'function', 'string', 'symbol'].forEach((type, i) => {\n validators[type] = function validator(thing) {\n return typeof thing === type || 'a' + (i < 1 ? 'n ' : ' ') + type;\n };\n});\n\nconst deprecatedWarnings = {};\n\n/**\n * Transitional option validator\n *\n * @param {function|boolean?} validator - set to false if the transitional option has been removed\n * @param {string?} version - deprecated version / removed since version\n * @param {string?} message - some message with additional info\n *\n * @returns {function}\n */\nvalidators.transitional = function transitional(validator, version, message) {\n function formatMessage(opt, desc) {\n return '[Axios v' + VERSION + '] Transitional option \\'' + opt + '\\'' + desc + (message ? '. ' + message : '');\n }\n\n // eslint-disable-next-line func-names\n return (value, opt, opts) => {\n if (validator === false) {\n throw new AxiosError(\n formatMessage(opt, ' has been removed' + (version ? ' in ' + version : '')),\n AxiosError.ERR_DEPRECATED\n );\n }\n\n if (version && !deprecatedWarnings[opt]) {\n deprecatedWarnings[opt] = true;\n // eslint-disable-next-line no-console\n console.warn(\n formatMessage(\n opt,\n ' has been deprecated since v' + version + ' and will be removed in the near future'\n )\n );\n }\n\n return validator ? validator(value, opt, opts) : true;\n };\n};\n\nvalidators.spelling = function spelling(correctSpelling) {\n return (value, opt) => {\n // eslint-disable-next-line no-console\n console.warn(`${opt} is likely a misspelling of ${correctSpelling}`);\n return true;\n }\n};\n\n/**\n * Assert object's properties type\n *\n * @param {object} options\n * @param {object} schema\n * @param {boolean?} allowUnknown\n *\n * @returns {object}\n */\n\nfunction assertOptions(options, schema, allowUnknown) {\n if (typeof options !== 'object') {\n throw new AxiosError('options must be an object', AxiosError.ERR_BAD_OPTION_VALUE);\n }\n const keys = Object.keys(options);\n let i = keys.length;\n while (i-- > 0) {\n const opt = keys[i];\n const validator = schema[opt];\n if (validator) {\n const value = options[opt];\n const result = value === undefined || validator(value, opt, options);\n if (result !== true) {\n throw new AxiosError('option ' + opt + ' must be ' + result, AxiosError.ERR_BAD_OPTION_VALUE);\n }\n continue;\n }\n if (allowUnknown !== true) {\n throw new AxiosError('Unknown option ' + opt, AxiosError.ERR_BAD_OPTION);\n }\n }\n}\n\nexport default {\n assertOptions,\n validators\n};\n","'use strict'\n\nexport default typeof Blob !== 'undefined' ? Blob : null\n","'use strict';\n\nexport default typeof FormData !== 'undefined' ? FormData : null;\n","'use strict';\n\nimport AxiosURLSearchParams from '../../../helpers/AxiosURLSearchParams.js';\nexport default typeof URLSearchParams !== 'undefined' ? URLSearchParams : AxiosURLSearchParams;\n","import URLSearchParams from './classes/URLSearchParams.js'\nimport FormData from './classes/FormData.js'\nimport Blob from './classes/Blob.js'\n\nexport default {\n isBrowser: true,\n classes: {\n URLSearchParams,\n FormData,\n Blob\n },\n protocols: ['http', 'https', 'file', 'blob', 'url', 'data']\n};\n","const hasBrowserEnv = typeof window !== 'undefined' && typeof document !== 'undefined';\n\nconst _navigator = typeof navigator === 'object' && navigator || undefined;\n\n/**\n * Determine if we're running in a standard browser environment\n *\n * This allows axios to run in a web worker, and react-native.\n * Both environments support XMLHttpRequest, but not fully standard globals.\n *\n * web workers:\n * typeof window -> undefined\n * typeof document -> undefined\n *\n * react-native:\n * navigator.product -> 'ReactNative'\n * nativescript\n * navigator.product -> 'NativeScript' or 'NS'\n *\n * @returns {boolean}\n */\nconst hasStandardBrowserEnv = hasBrowserEnv &&\n (!_navigator || ['ReactNative', 'NativeScript', 'NS'].indexOf(_navigator.product) < 0);\n\n/**\n * Determine if we're running in a standard browser webWorker environment\n *\n * Although the `isStandardBrowserEnv` method indicates that\n * `allows axios to run in a web worker`, the WebWorker will still be\n * filtered out due to its judgment standard\n * `typeof window !== 'undefined' && typeof document !== 'undefined'`.\n * This leads to a problem when axios post `FormData` in webWorker\n */\nconst hasStandardBrowserWebWorkerEnv = (() => {\n return (\n typeof WorkerGlobalScope !== 'undefined' &&\n // eslint-disable-next-line no-undef\n self instanceof WorkerGlobalScope &&\n typeof self.importScripts === 'function'\n );\n})();\n\nconst origin = hasBrowserEnv && window.location.href || 'http://localhost';\n\nexport {\n hasBrowserEnv,\n hasStandardBrowserWebWorkerEnv,\n hasStandardBrowserEnv,\n _navigator as navigator,\n origin\n}\n","import platform from './node/index.js';\nimport * as utils from './common/utils.js';\n\nexport default {\n ...utils,\n ...platform\n}\n","'use strict';\n\nimport bind from './helpers/bind.js';\n\n// utils is a library of generic helper functions non-specific to axios\n\nconst {toString} = Object.prototype;\nconst {getPrototypeOf} = Object;\n\nconst kindOf = (cache => thing => {\n const str = toString.call(thing);\n return cache[str] || (cache[str] = str.slice(8, -1).toLowerCase());\n})(Object.create(null));\n\nconst kindOfTest = (type) => {\n type = type.toLowerCase();\n return (thing) => kindOf(thing) === type\n}\n\nconst typeOfTest = type => thing => typeof thing === type;\n\n/**\n * Determine if a value is an Array\n *\n * @param {Object} val The value to test\n *\n * @returns {boolean} True if value is an Array, otherwise false\n */\nconst {isArray} = Array;\n\n/**\n * Determine if a value is undefined\n *\n * @param {*} val The value to test\n *\n * @returns {boolean} True if the value is undefined, otherwise false\n */\nconst isUndefined = typeOfTest('undefined');\n\n/**\n * Determine if a value is a Buffer\n *\n * @param {*} val The value to test\n *\n * @returns {boolean} True if value is a Buffer, otherwise false\n */\nfunction isBuffer(val) {\n return val !== null && !isUndefined(val) && val.constructor !== null && !isUndefined(val.constructor)\n && isFunction(val.constructor.isBuffer) && val.constructor.isBuffer(val);\n}\n\n/**\n * Determine if a value is an ArrayBuffer\n *\n * @param {*} val The value to test\n *\n * @returns {boolean} True if value is an ArrayBuffer, otherwise false\n */\nconst isArrayBuffer = kindOfTest('ArrayBuffer');\n\n\n/**\n * Determine if a value is a view on an ArrayBuffer\n *\n * @param {*} val The value to test\n *\n * @returns {boolean} True if value is a view on an ArrayBuffer, otherwise false\n */\nfunction isArrayBufferView(val) {\n let result;\n if ((typeof ArrayBuffer !== 'undefined') && (ArrayBuffer.isView)) {\n result = ArrayBuffer.isView(val);\n } else {\n result = (val) && (val.buffer) && (isArrayBuffer(val.buffer));\n }\n return result;\n}\n\n/**\n * Determine if a value is a String\n *\n * @param {*} val The value to test\n *\n * @returns {boolean} True if value is a String, otherwise false\n */\nconst isString = typeOfTest('string');\n\n/**\n * Determine if a value is a Function\n *\n * @param {*} val The value to test\n * @returns {boolean} True if value is a Function, otherwise false\n */\nconst isFunction = typeOfTest('function');\n\n/**\n * Determine if a value is a Number\n *\n * @param {*} val The value to test\n *\n * @returns {boolean} True if value is a Number, otherwise false\n */\nconst isNumber = typeOfTest('number');\n\n/**\n * Determine if a value is an Object\n *\n * @param {*} thing The value to test\n *\n * @returns {boolean} True if value is an Object, otherwise false\n */\nconst isObject = (thing) => thing !== null && typeof thing === 'object';\n\n/**\n * Determine if a value is a Boolean\n *\n * @param {*} thing The value to test\n * @returns {boolean} True if value is a Boolean, otherwise false\n */\nconst isBoolean = thing => thing === true || thing === false;\n\n/**\n * Determine if a value is a plain Object\n *\n * @param {*} val The value to test\n *\n * @returns {boolean} True if value is a plain Object, otherwise false\n */\nconst isPlainObject = (val) => {\n if (kindOf(val) !== 'object') {\n return false;\n }\n\n const prototype = getPrototypeOf(val);\n return (prototype === null || prototype === Object.prototype || Object.getPrototypeOf(prototype) === null) && !(Symbol.toStringTag in val) && !(Symbol.iterator in val);\n}\n\n/**\n * Determine if a value is a Date\n *\n * @param {*} val The value to test\n *\n * @returns {boolean} True if value is a Date, otherwise false\n */\nconst isDate = kindOfTest('Date');\n\n/**\n * Determine if a value is a File\n *\n * @param {*} val The value to test\n *\n * @returns {boolean} True if value is a File, otherwise false\n */\nconst isFile = kindOfTest('File');\n\n/**\n * Determine if a value is a Blob\n *\n * @param {*} val The value to test\n *\n * @returns {boolean} True if value is a Blob, otherwise false\n */\nconst isBlob = kindOfTest('Blob');\n\n/**\n * Determine if a value is a FileList\n *\n * @param {*} val The value to test\n *\n * @returns {boolean} True if value is a File, otherwise false\n */\nconst isFileList = kindOfTest('FileList');\n\n/**\n * Determine if a value is a Stream\n *\n * @param {*} val The value to test\n *\n * @returns {boolean} True if value is a Stream, otherwise false\n */\nconst isStream = (val) => isObject(val) && isFunction(val.pipe);\n\n/**\n * Determine if a value is a FormData\n *\n * @param {*} thing The value to test\n *\n * @returns {boolean} True if value is an FormData, otherwise false\n */\nconst isFormData = (thing) => {\n let kind;\n return thing && (\n (typeof FormData === 'function' && thing instanceof FormData) || (\n isFunction(thing.append) && (\n (kind = kindOf(thing)) === 'formdata' ||\n // detect form-data instance\n (kind === 'object' && isFunction(thing.toString) && thing.toString() === '[object FormData]')\n )\n )\n )\n}\n\n/**\n * Determine if a value is a URLSearchParams object\n *\n * @param {*} val The value to test\n *\n * @returns {boolean} True if value is a URLSearchParams object, otherwise false\n */\nconst isURLSearchParams = kindOfTest('URLSearchParams');\n\nconst [isReadableStream, isRequest, isResponse, isHeaders] = ['ReadableStream', 'Request', 'Response', 'Headers'].map(kindOfTest);\n\n/**\n * Trim excess whitespace off the beginning and end of a string\n *\n * @param {String} str The String to trim\n *\n * @returns {String} The String freed of excess whitespace\n */\nconst trim = (str) => str.trim ?\n str.trim() : str.replace(/^[\\s\\uFEFF\\xA0]+|[\\s\\uFEFF\\xA0]+$/g, '');\n\n/**\n * Iterate over an Array or an Object invoking a function for each item.\n *\n * If `obj` is an Array callback will be called passing\n * the value, index, and complete array for each item.\n *\n * If 'obj' is an Object callback will be called passing\n * the value, key, and complete object for each property.\n *\n * @param {Object|Array} obj The object to iterate\n * @param {Function} fn The callback to invoke for each item\n *\n * @param {Boolean} [allOwnKeys = false]\n * @returns {any}\n */\nfunction forEach(obj, fn, {allOwnKeys = false} = {}) {\n // Don't bother if no value provided\n if (obj === null || typeof obj === 'undefined') {\n return;\n }\n\n let i;\n let l;\n\n // Force an array if not already something iterable\n if (typeof obj !== 'object') {\n /*eslint no-param-reassign:0*/\n obj = [obj];\n }\n\n if (isArray(obj)) {\n // Iterate over array values\n for (i = 0, l = obj.length; i < l; i++) {\n fn.call(null, obj[i], i, obj);\n }\n } else {\n // Iterate over object keys\n const keys = allOwnKeys ? Object.getOwnPropertyNames(obj) : Object.keys(obj);\n const len = keys.length;\n let key;\n\n for (i = 0; i < len; i++) {\n key = keys[i];\n fn.call(null, obj[key], key, obj);\n }\n }\n}\n\nfunction findKey(obj, key) {\n key = key.toLowerCase();\n const keys = Object.keys(obj);\n let i = keys.length;\n let _key;\n while (i-- > 0) {\n _key = keys[i];\n if (key === _key.toLowerCase()) {\n return _key;\n }\n }\n return null;\n}\n\nconst _global = (() => {\n /*eslint no-undef:0*/\n if (typeof globalThis !== \"undefined\") return globalThis;\n return typeof self !== \"undefined\" ? self : (typeof window !== 'undefined' ? window : global)\n})();\n\nconst isContextDefined = (context) => !isUndefined(context) && context !== _global;\n\n/**\n * Accepts varargs expecting each argument to be an object, then\n * immutably merges the properties of each object and returns result.\n *\n * When multiple objects contain the same key the later object in\n * the arguments list will take precedence.\n *\n * Example:\n *\n * ```js\n * var result = merge({foo: 123}, {foo: 456});\n * console.log(result.foo); // outputs 456\n * ```\n *\n * @param {Object} obj1 Object to merge\n *\n * @returns {Object} Result of all merge properties\n */\nfunction merge(/* obj1, obj2, obj3, ... */) {\n const {caseless} = isContextDefined(this) && this || {};\n const result = {};\n const assignValue = (val, key) => {\n const targetKey = caseless && findKey(result, key) || key;\n if (isPlainObject(result[targetKey]) && isPlainObject(val)) {\n result[targetKey] = merge(result[targetKey], val);\n } else if (isPlainObject(val)) {\n result[targetKey] = merge({}, val);\n } else if (isArray(val)) {\n result[targetKey] = val.slice();\n } else {\n result[targetKey] = val;\n }\n }\n\n for (let i = 0, l = arguments.length; i < l; i++) {\n arguments[i] && forEach(arguments[i], assignValue);\n }\n return result;\n}\n\n/**\n * Extends object a by mutably adding to it the properties of object b.\n *\n * @param {Object} a The object to be extended\n * @param {Object} b The object to copy properties from\n * @param {Object} thisArg The object to bind function to\n *\n * @param {Boolean} [allOwnKeys]\n * @returns {Object} The resulting value of object a\n */\nconst extend = (a, b, thisArg, {allOwnKeys}= {}) => {\n forEach(b, (val, key) => {\n if (thisArg && isFunction(val)) {\n a[key] = bind(val, thisArg);\n } else {\n a[key] = val;\n }\n }, {allOwnKeys});\n return a;\n}\n\n/**\n * Remove byte order marker. This catches EF BB BF (the UTF-8 BOM)\n *\n * @param {string} content with BOM\n *\n * @returns {string} content value without BOM\n */\nconst stripBOM = (content) => {\n if (content.charCodeAt(0) === 0xFEFF) {\n content = content.slice(1);\n }\n return content;\n}\n\n/**\n * Inherit the prototype methods from one constructor into another\n * @param {function} constructor\n * @param {function} superConstructor\n * @param {object} [props]\n * @param {object} [descriptors]\n *\n * @returns {void}\n */\nconst inherits = (constructor, superConstructor, props, descriptors) => {\n constructor.prototype = Object.create(superConstructor.prototype, descriptors);\n constructor.prototype.constructor = constructor;\n Object.defineProperty(constructor, 'super', {\n value: superConstructor.prototype\n });\n props && Object.assign(constructor.prototype, props);\n}\n\n/**\n * Resolve object with deep prototype chain to a flat object\n * @param {Object} sourceObj source object\n * @param {Object} [destObj]\n * @param {Function|Boolean} [filter]\n * @param {Function} [propFilter]\n *\n * @returns {Object}\n */\nconst toFlatObject = (sourceObj, destObj, filter, propFilter) => {\n let props;\n let i;\n let prop;\n const merged = {};\n\n destObj = destObj || {};\n // eslint-disable-next-line no-eq-null,eqeqeq\n if (sourceObj == null) return destObj;\n\n do {\n props = Object.getOwnPropertyNames(sourceObj);\n i = props.length;\n while (i-- > 0) {\n prop = props[i];\n if ((!propFilter || propFilter(prop, sourceObj, destObj)) && !merged[prop]) {\n destObj[prop] = sourceObj[prop];\n merged[prop] = true;\n }\n }\n sourceObj = filter !== false && getPrototypeOf(sourceObj);\n } while (sourceObj && (!filter || filter(sourceObj, destObj)) && sourceObj !== Object.prototype);\n\n return destObj;\n}\n\n/**\n * Determines whether a string ends with the characters of a specified string\n *\n * @param {String} str\n * @param {String} searchString\n * @param {Number} [position= 0]\n *\n * @returns {boolean}\n */\nconst endsWith = (str, searchString, position) => {\n str = String(str);\n if (position === undefined || position > str.length) {\n position = str.length;\n }\n position -= searchString.length;\n const lastIndex = str.indexOf(searchString, position);\n return lastIndex !== -1 && lastIndex === position;\n}\n\n\n/**\n * Returns new array from array like object or null if failed\n *\n * @param {*} [thing]\n *\n * @returns {?Array}\n */\nconst toArray = (thing) => {\n if (!thing) return null;\n if (isArray(thing)) return thing;\n let i = thing.length;\n if (!isNumber(i)) return null;\n const arr = new Array(i);\n while (i-- > 0) {\n arr[i] = thing[i];\n }\n return arr;\n}\n\n/**\n * Checking if the Uint8Array exists and if it does, it returns a function that checks if the\n * thing passed in is an instance of Uint8Array\n *\n * @param {TypedArray}\n *\n * @returns {Array}\n */\n// eslint-disable-next-line func-names\nconst isTypedArray = (TypedArray => {\n // eslint-disable-next-line func-names\n return thing => {\n return TypedArray && thing instanceof TypedArray;\n };\n})(typeof Uint8Array !== 'undefined' && getPrototypeOf(Uint8Array));\n\n/**\n * For each entry in the object, call the function with the key and value.\n *\n * @param {Object} obj - The object to iterate over.\n * @param {Function} fn - The function to call for each entry.\n *\n * @returns {void}\n */\nconst forEachEntry = (obj, fn) => {\n const generator = obj && obj[Symbol.iterator];\n\n const iterator = generator.call(obj);\n\n let result;\n\n while ((result = iterator.next()) && !result.done) {\n const pair = result.value;\n fn.call(obj, pair[0], pair[1]);\n }\n}\n\n/**\n * It takes a regular expression and a string, and returns an array of all the matches\n *\n * @param {string} regExp - The regular expression to match against.\n * @param {string} str - The string to search.\n *\n * @returns {Array}\n */\nconst matchAll = (regExp, str) => {\n let matches;\n const arr = [];\n\n while ((matches = regExp.exec(str)) !== null) {\n arr.push(matches);\n }\n\n return arr;\n}\n\n/* Checking if the kindOfTest function returns true when passed an HTMLFormElement. */\nconst isHTMLForm = kindOfTest('HTMLFormElement');\n\nconst toCamelCase = str => {\n return str.toLowerCase().replace(/[-_\\s]([a-z\\d])(\\w*)/g,\n function replacer(m, p1, p2) {\n return p1.toUpperCase() + p2;\n }\n );\n};\n\n/* Creating a function that will check if an object has a property. */\nconst hasOwnProperty = (({hasOwnProperty}) => (obj, prop) => hasOwnProperty.call(obj, prop))(Object.prototype);\n\n/**\n * Determine if a value is a RegExp object\n *\n * @param {*} val The value to test\n *\n * @returns {boolean} True if value is a RegExp object, otherwise false\n */\nconst isRegExp = kindOfTest('RegExp');\n\nconst reduceDescriptors = (obj, reducer) => {\n const descriptors = Object.getOwnPropertyDescriptors(obj);\n const reducedDescriptors = {};\n\n forEach(descriptors, (descriptor, name) => {\n let ret;\n if ((ret = reducer(descriptor, name, obj)) !== false) {\n reducedDescriptors[name] = ret || descriptor;\n }\n });\n\n Object.defineProperties(obj, reducedDescriptors);\n}\n\n/**\n * Makes all methods read-only\n * @param {Object} obj\n */\n\nconst freezeMethods = (obj) => {\n reduceDescriptors(obj, (descriptor, name) => {\n // skip restricted props in strict mode\n if (isFunction(obj) && ['arguments', 'caller', 'callee'].indexOf(name) !== -1) {\n return false;\n }\n\n const value = obj[name];\n\n if (!isFunction(value)) return;\n\n descriptor.enumerable = false;\n\n if ('writable' in descriptor) {\n descriptor.writable = false;\n return;\n }\n\n if (!descriptor.set) {\n descriptor.set = () => {\n throw Error('Can not rewrite read-only method \\'' + name + '\\'');\n };\n }\n });\n}\n\nconst toObjectSet = (arrayOrString, delimiter) => {\n const obj = {};\n\n const define = (arr) => {\n arr.forEach(value => {\n obj[value] = true;\n });\n }\n\n isArray(arrayOrString) ? define(arrayOrString) : define(String(arrayOrString).split(delimiter));\n\n return obj;\n}\n\nconst noop = () => {}\n\nconst toFiniteNumber = (value, defaultValue) => {\n return value != null && Number.isFinite(value = +value) ? value : defaultValue;\n}\n\nconst ALPHA = 'abcdefghijklmnopqrstuvwxyz'\n\nconst DIGIT = '0123456789';\n\nconst ALPHABET = {\n DIGIT,\n ALPHA,\n ALPHA_DIGIT: ALPHA + ALPHA.toUpperCase() + DIGIT\n}\n\nconst generateString = (size = 16, alphabet = ALPHABET.ALPHA_DIGIT) => {\n let str = '';\n const {length} = alphabet;\n while (size--) {\n str += alphabet[Math.random() * length|0]\n }\n\n return str;\n}\n\n/**\n * If the thing is a FormData object, return true, otherwise return false.\n *\n * @param {unknown} thing - The thing to check.\n *\n * @returns {boolean}\n */\nfunction isSpecCompliantForm(thing) {\n return !!(thing && isFunction(thing.append) && thing[Symbol.toStringTag] === 'FormData' && thing[Symbol.iterator]);\n}\n\nconst toJSONObject = (obj) => {\n const stack = new Array(10);\n\n const visit = (source, i) => {\n\n if (isObject(source)) {\n if (stack.indexOf(source) >= 0) {\n return;\n }\n\n if(!('toJSON' in source)) {\n stack[i] = source;\n const target = isArray(source) ? [] : {};\n\n forEach(source, (value, key) => {\n const reducedValue = visit(value, i + 1);\n !isUndefined(reducedValue) && (target[key] = reducedValue);\n });\n\n stack[i] = undefined;\n\n return target;\n }\n }\n\n return source;\n }\n\n return visit(obj, 0);\n}\n\nconst isAsyncFn = kindOfTest('AsyncFunction');\n\nconst isThenable = (thing) =>\n thing && (isObject(thing) || isFunction(thing)) && isFunction(thing.then) && isFunction(thing.catch);\n\n// original code\n// https://github.com/DigitalBrainJS/AxiosPromise/blob/16deab13710ec09779922131f3fa5954320f83ab/lib/utils.js#L11-L34\n\nconst _setImmediate = ((setImmediateSupported, postMessageSupported) => {\n if (setImmediateSupported) {\n return setImmediate;\n }\n\n return postMessageSupported ? ((token, callbacks) => {\n _global.addEventListener(\"message\", ({source, data}) => {\n if (source === _global && data === token) {\n callbacks.length && callbacks.shift()();\n }\n }, false);\n\n return (cb) => {\n callbacks.push(cb);\n _global.postMessage(token, \"*\");\n }\n })(`axios@${Math.random()}`, []) : (cb) => setTimeout(cb);\n})(\n typeof setImmediate === 'function',\n isFunction(_global.postMessage)\n);\n\nconst asap = typeof queueMicrotask !== 'undefined' ?\n queueMicrotask.bind(_global) : ( typeof process !== 'undefined' && process.nextTick || _setImmediate);\n\n// *********************\n\nexport default {\n isArray,\n isArrayBuffer,\n isBuffer,\n isFormData,\n isArrayBufferView,\n isString,\n isNumber,\n isBoolean,\n isObject,\n isPlainObject,\n isReadableStream,\n isRequest,\n isResponse,\n isHeaders,\n isUndefined,\n isDate,\n isFile,\n isBlob,\n isRegExp,\n isFunction,\n isStream,\n isURLSearchParams,\n isTypedArray,\n isFileList,\n forEach,\n merge,\n extend,\n trim,\n stripBOM,\n inherits,\n toFlatObject,\n kindOf,\n kindOfTest,\n endsWith,\n toArray,\n forEachEntry,\n matchAll,\n isHTMLForm,\n hasOwnProperty,\n hasOwnProp: hasOwnProperty, // an alias to avoid ESLint no-prototype-builtins detection\n reduceDescriptors,\n freezeMethods,\n toObjectSet,\n toCamelCase,\n noop,\n toFiniteNumber,\n findKey,\n global: _global,\n isContextDefined,\n ALPHABET,\n generateString,\n isSpecCompliantForm,\n toJSONObject,\n isAsyncFn,\n isThenable,\n setImmediate: _setImmediate,\n asap\n};\n","/*\n* loglevel - https://github.com/pimterry/loglevel\n*\n* Copyright (c) 2013 Tim Perry\n* Licensed under the MIT license.\n*/\n(function (root, definition) {\n \"use strict\";\n if (typeof define === 'function' && define.amd) {\n define(definition);\n } else if (typeof module === 'object' && module.exports) {\n module.exports = definition();\n } else {\n root.log = definition();\n }\n}(this, function () {\n \"use strict\";\n\n // Slightly dubious tricks to cut down minimized file size\n var noop = function() {};\n var undefinedType = \"undefined\";\n var isIE = (typeof window !== undefinedType) && (typeof window.navigator !== undefinedType) && (\n /Trident\\/|MSIE /.test(window.navigator.userAgent)\n );\n\n var logMethods = [\n \"trace\",\n \"debug\",\n \"info\",\n \"warn\",\n \"error\"\n ];\n\n var _loggersByName = {};\n var defaultLogger = null;\n\n // Cross-browser bind equivalent that works at least back to IE6\n function bindMethod(obj, methodName) {\n var method = obj[methodName];\n if (typeof method.bind === 'function') {\n return method.bind(obj);\n } else {\n try {\n return Function.prototype.bind.call(method, obj);\n } catch (e) {\n // Missing bind shim or IE8 + Modernizr, fallback to wrapping\n return function() {\n return Function.prototype.apply.apply(method, [obj, arguments]);\n };\n }\n }\n }\n\n // Trace() doesn't print the message in IE, so for that case we need to wrap it\n function traceForIE() {\n if (console.log) {\n if (console.log.apply) {\n console.log.apply(console, arguments);\n } else {\n // In old IE, native console methods themselves don't have apply().\n Function.prototype.apply.apply(console.log, [console, arguments]);\n }\n }\n if (console.trace) console.trace();\n }\n\n // Build the best logging method possible for this env\n // Wherever possible we want to bind, not wrap, to preserve stack traces\n function realMethod(methodName) {\n if (methodName === 'debug') {\n methodName = 'log';\n }\n\n if (typeof console === undefinedType) {\n return false; // No method possible, for now - fixed later by enableLoggingWhenConsoleArrives\n } else if (methodName === 'trace' && isIE) {\n return traceForIE;\n } else if (console[methodName] !== undefined) {\n return bindMethod(console, methodName);\n } else if (console.log !== undefined) {\n return bindMethod(console, 'log');\n } else {\n return noop;\n }\n }\n\n // These private functions always need `this` to be set properly\n\n function replaceLoggingMethods() {\n /*jshint validthis:true */\n var level = this.getLevel();\n\n // Replace the actual methods.\n for (var i = 0; i < logMethods.length; i++) {\n var methodName = logMethods[i];\n this[methodName] = (i < level) ?\n noop :\n this.methodFactory(methodName, level, this.name);\n }\n\n // Define log.log as an alias for log.debug\n this.log = this.debug;\n\n // Return any important warnings.\n if (typeof console === undefinedType && level < this.levels.SILENT) {\n return \"No console available for logging\";\n }\n }\n\n // In old IE versions, the console isn't present until you first open it.\n // We build realMethod() replacements here that regenerate logging methods\n function enableLoggingWhenConsoleArrives(methodName) {\n return function () {\n if (typeof console !== undefinedType) {\n replaceLoggingMethods.call(this);\n this[methodName].apply(this, arguments);\n }\n };\n }\n\n // By default, we use closely bound real methods wherever possible, and\n // otherwise we wait for a console to appear, and then try again.\n function defaultMethodFactory(methodName, _level, _loggerName) {\n /*jshint validthis:true */\n return realMethod(methodName) ||\n enableLoggingWhenConsoleArrives.apply(this, arguments);\n }\n\n function Logger(name, factory) {\n // Private instance variables.\n var self = this;\n /**\n * The level inherited from a parent logger (or a global default). We\n * cache this here rather than delegating to the parent so that it stays\n * in sync with the actual logging methods that we have installed (the\n * parent could change levels but we might not have rebuilt the loggers\n * in this child yet).\n * @type {number}\n */\n var inheritedLevel;\n /**\n * The default level for this logger, if any. If set, this overrides\n * `inheritedLevel`.\n * @type {number|null}\n */\n var defaultLevel;\n /**\n * A user-specific level for this logger. If set, this overrides\n * `defaultLevel`.\n * @type {number|null}\n */\n var userLevel;\n\n var storageKey = \"loglevel\";\n if (typeof name === \"string\") {\n storageKey += \":\" + name;\n } else if (typeof name === \"symbol\") {\n storageKey = undefined;\n }\n\n function persistLevelIfPossible(levelNum) {\n var levelName = (logMethods[levelNum] || 'silent').toUpperCase();\n\n if (typeof window === undefinedType || !storageKey) return;\n\n // Use localStorage if available\n try {\n window.localStorage[storageKey] = levelName;\n return;\n } catch (ignore) {}\n\n // Use session cookie as fallback\n try {\n window.document.cookie =\n encodeURIComponent(storageKey) + \"=\" + levelName + \";\";\n } catch (ignore) {}\n }\n\n function getPersistedLevel() {\n var storedLevel;\n\n if (typeof window === undefinedType || !storageKey) return;\n\n try {\n storedLevel = window.localStorage[storageKey];\n } catch (ignore) {}\n\n // Fallback to cookies if local storage gives us nothing\n if (typeof storedLevel === undefinedType) {\n try {\n var cookie = window.document.cookie;\n var cookieName = encodeURIComponent(storageKey);\n var location = cookie.indexOf(cookieName + \"=\");\n if (location !== -1) {\n storedLevel = /^([^;]+)/.exec(\n cookie.slice(location + cookieName.length + 1)\n )[1];\n }\n } catch (ignore) {}\n }\n\n // If the stored level is not valid, treat it as if nothing was stored.\n if (self.levels[storedLevel] === undefined) {\n storedLevel = undefined;\n }\n\n return storedLevel;\n }\n\n function clearPersistedLevel() {\n if (typeof window === undefinedType || !storageKey) return;\n\n // Use localStorage if available\n try {\n window.localStorage.removeItem(storageKey);\n } catch (ignore) {}\n\n // Use session cookie as fallback\n try {\n window.document.cookie =\n encodeURIComponent(storageKey) + \"=; expires=Thu, 01 Jan 1970 00:00:00 UTC\";\n } catch (ignore) {}\n }\n\n function normalizeLevel(input) {\n var level = input;\n if (typeof level === \"string\" && self.levels[level.toUpperCase()] !== undefined) {\n level = self.levels[level.toUpperCase()];\n }\n if (typeof level === \"number\" && level >= 0 && level <= self.levels.SILENT) {\n return level;\n } else {\n throw new TypeError(\"log.setLevel() called with invalid level: \" + input);\n }\n }\n\n /*\n *\n * Public logger API - see https://github.com/pimterry/loglevel for details\n *\n */\n\n self.name = name;\n\n self.levels = { \"TRACE\": 0, \"DEBUG\": 1, \"INFO\": 2, \"WARN\": 3,\n \"ERROR\": 4, \"SILENT\": 5};\n\n self.methodFactory = factory || defaultMethodFactory;\n\n self.getLevel = function () {\n if (userLevel != null) {\n return userLevel;\n } else if (defaultLevel != null) {\n return defaultLevel;\n } else {\n return inheritedLevel;\n }\n };\n\n self.setLevel = function (level, persist) {\n userLevel = normalizeLevel(level);\n if (persist !== false) { // defaults to true\n persistLevelIfPossible(userLevel);\n }\n\n // NOTE: in v2, this should call rebuild(), which updates children.\n return replaceLoggingMethods.call(self);\n };\n\n self.setDefaultLevel = function (level) {\n defaultLevel = normalizeLevel(level);\n if (!getPersistedLevel()) {\n self.setLevel(level, false);\n }\n };\n\n self.resetLevel = function () {\n userLevel = null;\n clearPersistedLevel();\n replaceLoggingMethods.call(self);\n };\n\n self.enableAll = function(persist) {\n self.setLevel(self.levels.TRACE, persist);\n };\n\n self.disableAll = function(persist) {\n self.setLevel(self.levels.SILENT, persist);\n };\n\n self.rebuild = function () {\n if (defaultLogger !== self) {\n inheritedLevel = normalizeLevel(defaultLogger.getLevel());\n }\n replaceLoggingMethods.call(self);\n\n if (defaultLogger === self) {\n for (var childName in _loggersByName) {\n _loggersByName[childName].rebuild();\n }\n }\n };\n\n // Initialize all the internal levels.\n inheritedLevel = normalizeLevel(\n defaultLogger ? defaultLogger.getLevel() : \"WARN\"\n );\n var initialLevel = getPersistedLevel();\n if (initialLevel != null) {\n userLevel = normalizeLevel(initialLevel);\n }\n replaceLoggingMethods.call(self);\n }\n\n /*\n *\n * Top-level API\n *\n */\n\n defaultLogger = new Logger();\n\n defaultLogger.getLogger = function getLogger(name) {\n if ((typeof name !== \"symbol\" && typeof name !== \"string\") || name === \"\") {\n throw new TypeError(\"You must supply a name when creating a logger.\");\n }\n\n var logger = _loggersByName[name];\n if (!logger) {\n logger = _loggersByName[name] = new Logger(\n name,\n defaultLogger.methodFactory\n );\n }\n return logger;\n };\n\n // Grab the current global log variable in case of overwrite\n var _log = (typeof window !== undefinedType) ? window.log : undefined;\n defaultLogger.noConflict = function() {\n if (typeof window !== undefinedType &&\n window.log === defaultLogger) {\n window.log = _log;\n }\n\n return defaultLogger;\n };\n\n defaultLogger.getLoggers = function getLoggers() {\n return _loggersByName;\n };\n\n // ES6 default export, for compatibility\n defaultLogger['default'] = defaultLogger;\n\n return defaultLogger;\n}));\n","import Aliases, { CollectionAliasSchema } from \"./Aliases\";\nimport ApiCall from \"./ApiCall\";\n\nexport default class Alias {\n constructor(private name: string, private apiCall: ApiCall) {}\n\n async retrieve(): Promise {\n return this.apiCall.get(this.endpointPath());\n }\n\n async delete(): Promise {\n return this.apiCall.delete(this.endpointPath());\n }\n\n private endpointPath(): string {\n return `${Aliases.RESOURCEPATH}/${encodeURIComponent(this.name)}`;\n }\n}\n","import ApiCall from \"./ApiCall\";\n\nconst RESOURCEPATH = \"/aliases\";\n\nexport interface CollectionAliasCreateSchema {\n collection_name: string;\n}\n\nexport interface CollectionAliasSchema extends CollectionAliasCreateSchema {\n name: string;\n}\n\nexport interface CollectionAliasesResponseSchema {\n aliases: CollectionAliasSchema[];\n}\n\nexport default class Aliases {\n constructor(private apiCall: ApiCall) {}\n\n async upsert(\n name: string,\n mapping: CollectionAliasCreateSchema\n ): Promise {\n return this.apiCall.put(\n this.endpointPath(name),\n mapping\n );\n }\n\n async retrieve(): Promise {\n return this.apiCall.get(RESOURCEPATH);\n }\n\n private endpointPath(aliasName): string {\n return `${Aliases.RESOURCEPATH}/${encodeURIComponent(aliasName)}`;\n }\n\n static get RESOURCEPATH(): string {\n return RESOURCEPATH;\n }\n}\n","import ApiCall from \"./ApiCall\";\nimport AnalyticsRules from \"./AnalyticsRules\";\nimport AnalyticsRule from \"./AnalyticsRule\";\nimport AnalyticsEvents from \"./AnalyticsEvents\";\n\nconst RESOURCEPATH = \"/analytics\";\n\nexport default class Analytics {\n private readonly _analyticsRules: AnalyticsRules;\n private readonly individualAnalyticsRules: Record = {};\n private readonly _analyticsEvents: AnalyticsEvents;\n\n constructor(private readonly apiCall: ApiCall) {\n this.apiCall = apiCall;\n this._analyticsRules = new AnalyticsRules(this.apiCall);\n this._analyticsEvents = new AnalyticsEvents(this.apiCall);\n }\n\n rules(): AnalyticsRules;\n rules(id: string): AnalyticsRule;\n rules(id?: string): AnalyticsRules | AnalyticsRule {\n if (id === undefined) {\n return this._analyticsRules;\n } else {\n if (this.individualAnalyticsRules[id] === undefined) {\n this.individualAnalyticsRules[id] = new AnalyticsRule(id, this.apiCall);\n }\n return this.individualAnalyticsRules[id];\n }\n }\n\n events(): AnalyticsEvents {\n return this._analyticsEvents;\n }\n\n static get RESOURCEPATH() {\n return RESOURCEPATH;\n }\n}\n","import ApiCall from \"./ApiCall\";\nimport { AnalyticsEventCreateSchema } from \"./AnalyticsEvent\";\n\nconst RESOURCEPATH = \"/analytics/events\";\n\nexport default class AnalyticsEvents {\n constructor(private readonly apiCall: ApiCall) {\n this.apiCall = apiCall;\n }\n\n async create(\n params: AnalyticsEventCreateSchema,\n ): Promise {\n return this.apiCall.post(\n this.endpointPath(),\n params,\n );\n }\n\n private endpointPath(operation?: string): string {\n return `${AnalyticsEvents.RESOURCEPATH}${\n operation === undefined ? \"\" : \"/\" + encodeURIComponent(operation)\n }`;\n }\n\n static get RESOURCEPATH() {\n return RESOURCEPATH;\n }\n}\n","import ApiCall from \"./ApiCall\";\nimport AnalyticsRules from \"./AnalyticsRules\";\n\nexport interface AnalyticsRuleCreateSchema {\n type: \"popular_queries\" | \"nohits_queries\" | \"counter\";\n params: {\n enable_auto_aggregation?: boolean;\n source: {\n collections: string[];\n events?: Array<{\n type: string;\n weight: number;\n name: string;\n }>;\n };\n expand_query?: boolean;\n destination: {\n collection: string;\n counter_field?: string;\n };\n limit?: number;\n };\n}\n\nexport interface AnalyticsRuleDeleteSchema {\n name: string;\n}\n\nexport interface AnalyticsRuleSchema extends AnalyticsRuleCreateSchema {\n name: string;\n}\n\nexport default class AnalyticsRule {\n constructor(\n private name: string,\n private apiCall: ApiCall,\n ) {}\n\n async retrieve(): Promise {\n return this.apiCall.get(this.endpointPath());\n }\n\n async delete(): Promise {\n return this.apiCall.delete(this.endpointPath());\n }\n\n private endpointPath(): string {\n return `${AnalyticsRules.RESOURCEPATH}/${encodeURIComponent(this.name)}`;\n }\n}\n","import ApiCall from \"./ApiCall\";\nimport {\n AnalyticsRuleCreateSchema,\n AnalyticsRuleSchema,\n} from \"./AnalyticsRule\";\n\nexport interface AnalyticsRulesRetrieveSchema {\n rules: AnalyticsRuleSchema[];\n}\n\nconst RESOURCEPATH = \"/analytics/rules\";\n\nexport default class AnalyticsRules {\n constructor(private readonly apiCall: ApiCall) {\n this.apiCall = apiCall;\n }\n\n async upsert(\n name: string,\n params: AnalyticsRuleCreateSchema\n ): Promise {\n return this.apiCall.put(\n this.endpointPath(name),\n params\n );\n }\n\n async retrieve(): Promise {\n return this.apiCall.get(this.endpointPath());\n }\n\n private endpointPath(operation?: string): string {\n return `${AnalyticsRules.RESOURCEPATH}${\n operation === undefined ? \"\" : \"/\" + encodeURIComponent(operation)\n }`;\n }\n\n static get RESOURCEPATH() {\n return RESOURCEPATH;\n }\n}\n","import type {\n AxiosAdapter,\n AxiosRequestConfig,\n AxiosResponse,\n Method,\n} from \"axios\";\nimport axios from \"axios\";\nimport { Agent as HTTPAgent } from \"http\";\nimport { Agent as HTTPSAgent } from \"https\";\nimport { Logger } from \"loglevel\";\nimport Configuration, { NodeConfiguration } from \"./Configuration\";\nimport {\n HTTPError,\n ObjectAlreadyExists,\n ObjectNotFound,\n ObjectUnprocessable,\n RequestMalformed,\n RequestUnauthorized,\n ServerError,\n} from \"./Errors\";\nimport TypesenseError from \"./Errors/TypesenseError\";\n\nconst APIKEYHEADERNAME = \"X-TYPESENSE-API-KEY\";\nconst HEALTHY = true;\nconst UNHEALTHY = false;\n\ninterface Node extends NodeConfiguration {\n isHealthy: boolean;\n index: string | number;\n}\n\nconst isNodeJSEnvironment =\n typeof process !== \"undefined\" &&\n process.versions != null &&\n process.versions.node != null;\n\nexport default class ApiCall {\n private readonly apiKey: string;\n private readonly nodes: Node[];\n private readonly nearestNode: Node;\n private readonly connectionTimeoutSeconds: number;\n private readonly healthcheckIntervalSeconds: number;\n private readonly retryIntervalSeconds: number;\n private readonly sendApiKeyAsQueryParam?: boolean;\n private readonly numRetriesPerRequest: number;\n private readonly additionalUserHeaders?: Record;\n\n private readonly logger: Logger;\n private currentNodeIndex: number;\n\n constructor(private configuration: Configuration) {\n this.apiKey = this.configuration.apiKey;\n this.nodes =\n this.configuration.nodes == null\n ? this.configuration.nodes\n : JSON.parse(JSON.stringify(this.configuration.nodes)); // Make a copy, since we'll be adding additional metadata to the nodes\n this.nearestNode =\n this.configuration.nearestNode == null\n ? this.configuration.nearestNode\n : JSON.parse(JSON.stringify(this.configuration.nearestNode));\n this.connectionTimeoutSeconds = this.configuration.connectionTimeoutSeconds;\n this.healthcheckIntervalSeconds =\n this.configuration.healthcheckIntervalSeconds;\n this.numRetriesPerRequest = this.configuration.numRetries;\n this.retryIntervalSeconds = this.configuration.retryIntervalSeconds;\n this.sendApiKeyAsQueryParam = this.configuration.sendApiKeyAsQueryParam;\n this.additionalUserHeaders = this.configuration.additionalHeaders;\n\n this.logger = this.configuration.logger;\n\n this.initializeMetadataForNodes();\n this.currentNodeIndex = -1;\n }\n\n async get(\n endpoint: string,\n queryParameters: any = {},\n {\n abortSignal = null,\n responseType = undefined,\n }: {\n abortSignal?: any;\n responseType?: AxiosRequestConfig[\"responseType\"] | undefined;\n } = {},\n ): Promise {\n return this.performRequest(\"get\", endpoint, {\n queryParameters,\n abortSignal,\n responseType,\n });\n }\n\n async delete(endpoint: string, queryParameters: any = {}): Promise {\n return this.performRequest(\"delete\", endpoint, { queryParameters });\n }\n\n async post(\n endpoint: string,\n bodyParameters: any = {},\n queryParameters: any = {},\n additionalHeaders: any = {},\n ): Promise {\n return this.performRequest(\"post\", endpoint, {\n queryParameters,\n bodyParameters,\n additionalHeaders,\n });\n }\n\n async put(\n endpoint: string,\n bodyParameters: any = {},\n queryParameters: any = {},\n ): Promise {\n return this.performRequest(\"put\", endpoint, {\n queryParameters,\n bodyParameters,\n });\n }\n\n async patch(\n endpoint: string,\n bodyParameters: any = {},\n queryParameters: any = {},\n ): Promise {\n return this.performRequest(\"patch\", endpoint, {\n queryParameters,\n bodyParameters,\n });\n }\n\n private getAdapter(): AxiosAdapter | undefined {\n if (!this.configuration.axiosAdapter) return undefined;\n\n if (typeof this.configuration.axiosAdapter === \"function\")\n return this.configuration.axiosAdapter;\n\n const isCloudflareWorkers =\n typeof navigator !== \"undefined\" &&\n navigator.userAgent === \"Cloudflare-Workers\";\n\n return isCloudflareWorkers\n ? axios.getAdapter(this.configuration.axiosAdapter).bind(globalThis)\n : axios.getAdapter(this.configuration.axiosAdapter);\n }\n\n async performRequest(\n requestType: Method,\n endpoint: string,\n {\n queryParameters = null,\n bodyParameters = null,\n additionalHeaders = {},\n abortSignal = null,\n responseType = undefined,\n skipConnectionTimeout = false,\n enableKeepAlive = undefined,\n }: {\n queryParameters?: any;\n bodyParameters?: any;\n additionalHeaders?: any;\n abortSignal?: any;\n responseType?: AxiosRequestConfig[\"responseType\"] | undefined;\n skipConnectionTimeout?: boolean;\n enableKeepAlive?: boolean | undefined;\n },\n ): Promise {\n this.configuration.validate();\n\n const requestNumber = Date.now();\n let lastException;\n let wasAborted = false;\n this.logger.debug(\n `Request #${requestNumber}: Performing ${requestType.toUpperCase()} request: ${endpoint}`,\n );\n for (\n let numTries = 1;\n numTries <= this.numRetriesPerRequest + 1;\n numTries++\n ) {\n const node = this.getNextNode(requestNumber);\n this.logger.debug(\n `Request #${requestNumber}: Attempting ${requestType.toUpperCase()} request Try #${numTries} to Node ${\n node.index\n }`,\n );\n\n if (abortSignal && abortSignal.aborted) {\n return Promise.reject(new Error(\"Request aborted by caller.\"));\n }\n\n let abortListener: ((event: Event) => void) | undefined;\n\n try {\n const requestOptions: AxiosRequestConfig = {\n adapter: this.getAdapter(),\n method: requestType,\n url: this.uriFor(endpoint, node),\n headers: Object.assign(\n {},\n this.defaultHeaders(),\n additionalHeaders,\n this.additionalUserHeaders,\n ),\n maxContentLength: Infinity,\n maxBodyLength: Infinity,\n responseType,\n validateStatus: (status) => {\n /* Override default validateStatus, which only considers 2xx a success.\n In our case, if the server returns any HTTP code, we will handle it below.\n We do this to be able to raise custom errors based on response code.\n */\n return status > 0;\n },\n transformResponse: [\n (data, headers) => {\n let transformedData = data;\n if (\n headers !== undefined &&\n typeof data === \"string\" &&\n headers[\"content-type\"] &&\n headers[\"content-type\"].startsWith(\"application/json\")\n ) {\n transformedData = JSON.parse(data);\n }\n return transformedData;\n },\n ],\n };\n\n if (skipConnectionTimeout !== true) {\n requestOptions.timeout = this.connectionTimeoutSeconds * 1000;\n }\n\n if (queryParameters && Object.keys(queryParameters).length !== 0) {\n requestOptions.params = queryParameters;\n }\n\n if (this.sendApiKeyAsQueryParam) {\n requestOptions.params = requestOptions.params || {};\n requestOptions.params[\"x-typesense-api-key\"] = this.apiKey;\n }\n\n if (this.configuration.httpAgent) {\n this.logger.debug(\n `Request #${requestNumber}: Using custom httpAgent`,\n );\n requestOptions.httpAgent = this.configuration.httpAgent;\n } else if (enableKeepAlive === true) {\n if (!isNodeJSEnvironment) {\n this.logger.warn(\n `Request #${requestNumber}: Cannot use custom httpAgent in a browser environment to enable keepAlive`,\n );\n } else {\n this.logger.debug(`Request #${requestNumber}: Enabling KeepAlive`);\n requestOptions.httpAgent = new HTTPAgent({ keepAlive: true });\n }\n }\n\n if (this.configuration.httpsAgent) {\n this.logger.debug(\n `Request #${requestNumber}: Using custom httpsAgent`,\n );\n requestOptions.httpsAgent = this.configuration.httpsAgent;\n } else if (enableKeepAlive === true) {\n if (!isNodeJSEnvironment) {\n this.logger.warn(\n `Request #${requestNumber}: Cannot use custom httpAgent in a browser environment to enable keepAlive`,\n );\n } else {\n this.logger.debug(`Request #${requestNumber}: Enabling keepAlive`);\n requestOptions.httpsAgent = new HTTPSAgent({ keepAlive: true });\n }\n }\n\n if (this.configuration.paramsSerializer) {\n this.logger.debug(\n `Request #${requestNumber}: Using custom paramsSerializer`,\n );\n requestOptions.paramsSerializer = this.configuration.paramsSerializer;\n }\n\n if (\n bodyParameters &&\n ((typeof bodyParameters === \"string\" &&\n bodyParameters.length !== 0) ||\n (typeof bodyParameters === \"object\" &&\n Object.keys(bodyParameters).length !== 0))\n ) {\n requestOptions.data = bodyParameters;\n }\n\n // Translate from user-provided AbortController to the Axios request cancel mechanism.\n if (abortSignal) {\n const cancelToken = axios.CancelToken;\n const source = cancelToken.source();\n abortListener = () => {\n wasAborted = true;\n source.cancel();\n };\n abortSignal.addEventListener(\"abort\", abortListener);\n requestOptions.cancelToken = source.token;\n }\n\n const response = await axios(requestOptions);\n if (response.status >= 1 && response.status <= 499) {\n // Treat any status code > 0 and < 500 to be an indication that node is healthy\n // We exclude 0 since some clients return 0 when request fails\n this.setNodeHealthcheck(node, HEALTHY);\n }\n this.logger.debug(\n `Request #${requestNumber}: Request to Node ${node.index} was made. Response Code was ${response.status}.`,\n );\n\n if (response.status >= 200 && response.status < 300) {\n // If response is 2xx return a resolved promise\n return Promise.resolve(response.data);\n } else if (response.status < 500) {\n // Next, if response is anything but 5xx, don't retry, return a custom error\n return Promise.reject(\n this.customErrorForResponse(\n response,\n response.data?.message,\n requestOptions.data,\n ),\n );\n } else {\n // Retry all other HTTP errors (HTTPStatus > 500)\n // This will get caught by the catch block below\n throw this.customErrorForResponse(\n response,\n response.data?.message,\n requestOptions.data,\n );\n }\n } catch (error: any) {\n // This block handles retries for HTTPStatus > 500 and network layer issues like connection timeouts\n if (!wasAborted) {\n this.setNodeHealthcheck(node, UNHEALTHY);\n }\n lastException = error;\n this.logger.warn(\n `Request #${requestNumber}: Request to Node ${\n node.index\n } failed due to \"${error?.code ?? \"\"} ${error.message}${\n error.response == null\n ? \"\"\n : \" - \" + JSON.stringify(error.response?.data)\n }\"`,\n );\n // this.logger.debug(error.stack)\n if (wasAborted) {\n return Promise.reject(new Error(\"Request aborted by caller.\"));\n }\n if (numTries < this.numRetriesPerRequest + 1) {\n this.logger.warn(\n `Request #${requestNumber}: Sleeping for ${this.retryIntervalSeconds}s and then retrying request...`,\n );\n }\n await this.timer(this.retryIntervalSeconds);\n } finally {\n if (abortSignal && abortListener) {\n abortSignal.removeEventListener(\"abort\", abortListener);\n }\n }\n }\n this.logger.debug(\n `Request #${requestNumber}: No retries left. Raising last error`,\n );\n return Promise.reject(lastException);\n }\n\n // Attempts to find the next healthy node, looping through the list of nodes once.\n // But if no healthy nodes are found, it will just return the next node, even if it's unhealthy\n // so we can try the request for good measure, in case that node has become healthy since\n getNextNode(requestNumber = 0): Node {\n // Check if nearestNode is set and is healthy, if so return it\n if (this.nearestNode != null) {\n this.logger.debug(\n `Request #${requestNumber}: Nodes Health: Node ${\n this.nearestNode.index\n } is ${this.nearestNode.isHealthy === true ? \"Healthy\" : \"Unhealthy\"}`,\n );\n if (\n this.nearestNode.isHealthy === true ||\n this.nodeDueForHealthcheck(this.nearestNode, requestNumber)\n ) {\n this.logger.debug(\n `Request #${requestNumber}: Updated current node to Node ${this.nearestNode.index}`,\n );\n return this.nearestNode;\n }\n this.logger.debug(\n `Request #${requestNumber}: Falling back to individual nodes`,\n );\n }\n\n // Fallback to nodes as usual\n this.logger.debug(\n `Request #${requestNumber}: Nodes Health: ${this.nodes\n .map(\n (node) =>\n `Node ${node.index} is ${\n node.isHealthy === true ? \"Healthy\" : \"Unhealthy\"\n }`,\n )\n .join(\" || \")}`,\n );\n let candidateNode: Node = this.nodes[0];\n for (let i = 0; i <= this.nodes.length; i++) {\n this.currentNodeIndex = (this.currentNodeIndex + 1) % this.nodes.length;\n candidateNode = this.nodes[this.currentNodeIndex];\n if (\n candidateNode.isHealthy === true ||\n this.nodeDueForHealthcheck(candidateNode, requestNumber)\n ) {\n this.logger.debug(\n `Request #${requestNumber}: Updated current node to Node ${candidateNode.index}`,\n );\n return candidateNode;\n }\n }\n\n // None of the nodes are marked healthy, but some of them could have become healthy since last health check.\n // So we will just return the next node.\n this.logger.debug(\n `Request #${requestNumber}: No healthy nodes were found. Returning the next node, Node ${candidateNode.index}`,\n );\n return candidateNode;\n }\n\n nodeDueForHealthcheck(node, requestNumber = 0): boolean {\n const isDueForHealthcheck =\n Date.now() - node.lastAccessTimestamp >\n this.healthcheckIntervalSeconds * 1000;\n if (isDueForHealthcheck) {\n this.logger.debug(\n `Request #${requestNumber}: Node ${node.index} has exceeded healtcheckIntervalSeconds of ${this.healthcheckIntervalSeconds}. Adding it back into rotation.`,\n );\n }\n return isDueForHealthcheck;\n }\n\n initializeMetadataForNodes(): void {\n if (this.nearestNode != null) {\n this.nearestNode.index = \"nearestNode\";\n this.setNodeHealthcheck(this.nearestNode, HEALTHY);\n }\n\n this.nodes.forEach((node, i) => {\n node.index = i;\n this.setNodeHealthcheck(node, HEALTHY);\n });\n }\n\n setNodeHealthcheck(node, isHealthy): void {\n node.isHealthy = isHealthy;\n node.lastAccessTimestamp = Date.now();\n }\n\n uriFor(endpoint: string, node): string {\n if (node.url != null) {\n return `${node.url}${endpoint}`;\n }\n return `${node.protocol}://${node.host}:${node.port}${node.path}${endpoint}`;\n }\n\n defaultHeaders(): any {\n const defaultHeaders = {};\n if (!this.sendApiKeyAsQueryParam) {\n defaultHeaders[APIKEYHEADERNAME] = this.apiKey;\n }\n defaultHeaders[\"Content-Type\"] = \"application/json\";\n return defaultHeaders;\n }\n\n async timer(seconds): Promise {\n return new Promise((resolve) => setTimeout(resolve, seconds * 1000));\n }\n\n customErrorForResponse(\n response: AxiosResponse,\n messageFromServer: string,\n httpBody?: string,\n ): TypesenseError {\n let errorMessage = `Request failed with HTTP code ${response.status}`;\n if (\n typeof messageFromServer === \"string\" &&\n messageFromServer.trim() !== \"\"\n ) {\n errorMessage += ` | Server said: ${messageFromServer}`;\n }\n\n let error = new TypesenseError(errorMessage, httpBody, response.status);\n\n if (response.status === 400) {\n error = new RequestMalformed(errorMessage);\n } else if (response.status === 401) {\n error = new RequestUnauthorized(errorMessage);\n } else if (response.status === 404) {\n error = new ObjectNotFound(errorMessage);\n } else if (response.status === 409) {\n error = new ObjectAlreadyExists(errorMessage);\n } else if (response.status === 422) {\n error = new ObjectUnprocessable(errorMessage);\n } else if (response.status >= 500 && response.status <= 599) {\n error = new ServerError(errorMessage);\n } else {\n error = new HTTPError(errorMessage);\n }\n\n return error;\n }\n}\n","/* eslint-disable no-dupe-class-members */\n\nimport Configuration, { ConfigurationOptions } from \"./Configuration\";\nimport ApiCall from \"./ApiCall\";\nimport Collections from \"./Collections\";\nimport Collection from \"./Collection\";\nimport Aliases from \"./Aliases\";\nimport Alias from \"./Alias\";\nimport Keys from \"./Keys\";\nimport Key from \"./Key\";\nimport Debug from \"./Debug\";\nimport Metrics from \"./Metrics\";\nimport Stats from \"./Stats\";\nimport Health from \"./Health\";\nimport Operations from \"./Operations\";\nimport MultiSearch from \"./MultiSearch\";\nimport Presets from \"./Presets\";\nimport Preset from \"./Preset\";\nimport Analytics from \"./Analytics\";\nimport Stopwords from \"./Stopwords\";\nimport Stopword from \"./Stopword\";\nimport Conversations from \"./Conversations\";\nimport Conversation from \"./Conversation\";\nimport Stemming from \"./Stemming\";\n\nexport default class Client {\n configuration: Configuration;\n apiCall: ApiCall;\n debug: Debug;\n metrics: Metrics;\n stats: Stats;\n health: Health;\n operations: Operations;\n multiSearch: MultiSearch;\n analytics: Analytics;\n stemming: Stemming;\n private readonly _collections: Collections;\n private readonly individualCollections: Record;\n private readonly _aliases: Aliases;\n private readonly individualAliases: Record;\n private readonly _keys: Keys;\n private readonly individualKeys: Record;\n private readonly _presets: Presets;\n private readonly individualPresets: Record;\n private readonly _stopwords: Stopwords;\n private readonly individualStopwords: Record;\n private readonly _conversations: Conversations;\n private readonly individualConversations: Record;\n\n constructor(options: ConfigurationOptions) {\n options.sendApiKeyAsQueryParam = options.sendApiKeyAsQueryParam ?? false;\n\n this.configuration = new Configuration(options);\n this.apiCall = new ApiCall(this.configuration);\n this.debug = new Debug(this.apiCall);\n this.metrics = new Metrics(this.apiCall);\n this.stats = new Stats(this.apiCall);\n this.health = new Health(this.apiCall);\n this.operations = new Operations(this.apiCall);\n this.multiSearch = new MultiSearch(this.apiCall, this.configuration);\n this._collections = new Collections(this.apiCall);\n this.individualCollections = {};\n this._aliases = new Aliases(this.apiCall);\n this.individualAliases = {};\n this._keys = new Keys(this.apiCall);\n this.individualKeys = {};\n this._presets = new Presets(this.apiCall);\n this.individualPresets = {};\n this._stopwords = new Stopwords(this.apiCall);\n this.individualStopwords = {};\n this.analytics = new Analytics(this.apiCall);\n this.stemming = new Stemming(this.apiCall);\n this._conversations = new Conversations(this.apiCall);\n this.individualConversations = {};\n }\n\n collections(): Collections;\n collections = object>(\n collectionName: string,\n ): Collection;\n collections(collectionName?: string): Collections | Collection {\n if (collectionName === undefined) {\n return this._collections;\n } else {\n if (this.individualCollections[collectionName] === undefined) {\n this.individualCollections[collectionName] = new Collection(\n collectionName,\n this.apiCall,\n this.configuration,\n );\n }\n return this.individualCollections[collectionName];\n }\n }\n\n aliases(): Aliases;\n aliases(aliasName: string): Alias;\n aliases(aliasName?: string): Aliases | Alias {\n if (aliasName === undefined) {\n return this._aliases;\n } else {\n if (this.individualAliases[aliasName] === undefined) {\n this.individualAliases[aliasName] = new Alias(aliasName, this.apiCall);\n }\n return this.individualAliases[aliasName];\n }\n }\n\n keys(): Keys;\n keys(id: number): Key;\n keys(id?: number): Keys | Key {\n if (id === undefined) {\n return this._keys;\n } else {\n if (this.individualKeys[id] === undefined) {\n this.individualKeys[id] = new Key(id, this.apiCall);\n }\n return this.individualKeys[id];\n }\n }\n\n presets(): Presets;\n presets(id: string): Preset;\n presets(id?: string): Presets | Preset {\n if (id === undefined) {\n return this._presets;\n } else {\n if (this.individualPresets[id] === undefined) {\n this.individualPresets[id] = new Preset(id, this.apiCall);\n }\n return this.individualPresets[id];\n }\n }\n\n stopwords(): Stopwords;\n stopwords(id: string): Stopword;\n stopwords(id?: string): Stopwords | Stopword {\n if (id === undefined) {\n return this._stopwords;\n } else {\n if (this.individualStopwords[id] === undefined) {\n this.individualStopwords[id] = new Stopword(id, this.apiCall);\n }\n return this.individualStopwords[id];\n }\n }\n\n conversations(): Conversations;\n conversations(id: string): Conversation;\n conversations(id?: string): Conversations | Conversation {\n if (id === undefined) {\n return this._conversations;\n } else {\n if (this.individualConversations[id] === undefined) {\n this.individualConversations[id] = new Conversation(id, this.apiCall);\n }\n return this.individualConversations[id];\n }\n }\n}\n","import ApiCall from \"./ApiCall\";\nimport Collections from \"./Collections\";\nimport type {\n BaseCollectionCreateSchema,\n CollectionCreateSchema,\n} from \"./Collections\";\nimport Documents, { DocumentSchema } from \"./Documents\";\nimport { ObjectNotFound } from \"./Errors\";\nimport Overrides from \"./Overrides\";\nimport Override from \"./Override\";\nimport Synonyms from \"./Synonyms\";\nimport Synonym from \"./Synonym\";\nimport { Document } from \"./Document\";\n\nexport type FieldType =\n | \"string\"\n | \"int32\"\n | \"int64\"\n | \"float\"\n | \"bool\"\n | \"geopoint\"\n | \"geopolygon\"\n | \"geopoint[]\"\n | \"string[]\"\n | \"int32[]\"\n | \"int64[]\"\n | \"float[]\"\n | \"bool[]\"\n | \"object\"\n | \"object[]\"\n | \"auto\"\n | \"string*\"\n | \"image\";\n\nexport interface CollectionFieldSchema\n extends Partial<\n Pick\n > {\n name: string;\n type: FieldType;\n optional?: boolean;\n facet?: boolean;\n index?: boolean;\n sort?: boolean;\n locale?: string;\n infix?: boolean;\n stem?: boolean;\n num_dim?: number;\n store?: boolean;\n range_index?: boolean;\n [t: string]: unknown;\n}\n\nexport interface CollectionSchema extends CollectionCreateSchema {\n created_at: number;\n num_documents: number;\n num_memory_shards: number;\n}\n\nexport interface CollectionDropFieldSchema {\n name: string;\n drop: true;\n}\n\nexport interface CollectionUpdateSchema\n extends Partial> {\n fields?: (CollectionFieldSchema | CollectionDropFieldSchema)[];\n}\n\nexport interface CollectionDeleteOptions {\n compact_store?: boolean;\n}\n\nexport default class Collection {\n private readonly _documents: Documents;\n private individualDocuments: Record> = {};\n private readonly _overrides: Overrides;\n private individualOverrides: Record = {};\n private readonly _synonyms: Synonyms;\n private individualSynonyms: Record = {};\n\n constructor(\n private readonly name: string,\n private readonly apiCall: ApiCall,\n private readonly configuration: any,\n ) {\n this.name = name;\n this.apiCall = apiCall;\n this.configuration = configuration;\n\n this._documents = new Documents(\n this.name,\n this.apiCall,\n this.configuration,\n );\n this._overrides = new Overrides(this.name, this.apiCall);\n this._synonyms = new Synonyms(this.name, this.apiCall);\n }\n\n async retrieve(): Promise {\n return this.apiCall.get(this.endpointPath());\n }\n\n async update(schema: CollectionUpdateSchema): Promise {\n return this.apiCall.patch(this.endpointPath(), schema);\n }\n\n async delete(\n options: CollectionDeleteOptions = {},\n ): Promise {\n return this.apiCall.delete(this.endpointPath(), options);\n }\n\n async exists(): Promise {\n try {\n await this.retrieve();\n return true;\n } catch (e) {\n if (e instanceof ObjectNotFound) return false;\n throw e;\n }\n }\n\n documents(): Documents;\n documents(documentId: string): Document;\n documents(documentId?: string): Document | Documents {\n if (!documentId) {\n return this._documents;\n } else {\n if (this.individualDocuments[documentId] === undefined) {\n this.individualDocuments[documentId] = new Document(\n this.name,\n documentId,\n this.apiCall,\n );\n }\n return this.individualDocuments[documentId];\n }\n }\n\n overrides(): Overrides;\n overrides(overrideId: string): Override;\n overrides(overrideId?: string): Overrides | Override {\n if (overrideId === undefined) {\n return this._overrides;\n } else {\n if (this.individualOverrides[overrideId] === undefined) {\n this.individualOverrides[overrideId] = new Override(\n this.name,\n overrideId,\n this.apiCall,\n );\n }\n return this.individualOverrides[overrideId];\n }\n }\n\n synonyms(): Synonyms;\n synonyms(synonymId: string): Synonym;\n synonyms(synonymId?: string): Synonyms | Synonym {\n if (synonymId === undefined) {\n return this._synonyms;\n } else {\n if (this.individualSynonyms[synonymId] === undefined) {\n this.individualSynonyms[synonymId] = new Synonym(\n this.name,\n synonymId,\n this.apiCall,\n );\n }\n return this.individualSynonyms[synonymId];\n }\n }\n\n private endpointPath(): string {\n return `${Collections.RESOURCEPATH}/${encodeURIComponent(this.name)}`;\n }\n}\n","import ApiCall from \"./ApiCall\";\nimport type { CollectionFieldSchema, CollectionSchema } from \"./Collection\";\n\nexport interface BaseCollectionCreateSchema {\n name: string;\n default_sorting_field?: string;\n symbols_to_index?: string[];\n token_separators?: string[];\n enable_nested_fields?: boolean;\n metadata?: object;\n voice_query_model?: {\n model_name?: string;\n };\n}\n\ninterface CollectionCreateSchemaWithSrc\n extends Pick {\n fields?: CollectionFieldSchema[];\n}\n\ninterface CollectionCreateSchemaWithoutSrc extends BaseCollectionCreateSchema {\n fields: CollectionFieldSchema[];\n}\n\n/**\n * Defines the schema for creating a collection in Typesense.\n *\n * If the `src_name` property in `Options` is a string, the `fields` prop is optional, and only used for embedding fields.\n * Otherwise, `fields` will be required.\n */\nexport type CollectionCreateSchema<\n Options extends CollectionCreateOptions = CollectionCreateOptions,\n> = Options[\"src_name\"] extends string\n ? CollectionCreateSchemaWithSrc\n : CollectionCreateSchemaWithoutSrc;\n\nexport interface CollectionCreateOptions {\n src_name?: string;\n}\n\nexport interface CollectionsRetrieveOptions {\n exclude_fields?: string;\n}\n\nconst RESOURCEPATH = \"/collections\";\n\nexport default class Collections {\n constructor(private apiCall: ApiCall) {}\n\n async create(\n schema: CollectionCreateSchema,\n options?: Options,\n ): Promise {\n return this.apiCall.post(RESOURCEPATH, schema, options);\n }\n\n async retrieve(\n options: CollectionsRetrieveOptions = {},\n ): Promise {\n return this.apiCall.get(RESOURCEPATH, options);\n }\n\n static get RESOURCEPATH() {\n return RESOURCEPATH;\n }\n}\n","import * as logger from \"loglevel\";\nimport { Logger, LogLevelDesc } from \"loglevel\";\nimport { MissingConfigurationError } from \"./Errors\";\nimport type { Agent as HTTPAgent } from \"http\";\nimport type { Agent as HTTPSAgent } from \"https\";\nimport type { AxiosRequestConfig } from \"axios\";\n\nexport interface NodeConfiguration {\n host: string;\n port: number;\n protocol: string;\n path?: string;\n url?: string;\n}\n\nexport interface NodeConfigurationWithHostname {\n host: string;\n port: number;\n protocol: string;\n path?: string;\n}\n\nexport interface NodeConfigurationWithUrl {\n url: string;\n}\n\nexport interface ConfigurationOptions {\n apiKey: string;\n nodes:\n | NodeConfiguration[]\n | NodeConfigurationWithHostname[]\n | NodeConfigurationWithUrl[];\n randomizeNodes?: boolean;\n /**\n * @deprecated\n * masterNode is now consolidated to nodes, starting with Typesense Server v0.12'\n */\n masterNode?:\n | NodeConfiguration\n | NodeConfigurationWithHostname\n | NodeConfigurationWithUrl;\n /**\n * @deprecated\n * readReplicaNodes is now consolidated to nodes, starting with Typesense Server v0.12'\n */\n readReplicaNodes?:\n | NodeConfiguration[]\n | NodeConfigurationWithHostname[]\n | NodeConfigurationWithUrl[];\n nearestNode?:\n | NodeConfiguration\n | NodeConfigurationWithHostname\n | NodeConfigurationWithUrl;\n connectionTimeoutSeconds?: number;\n timeoutSeconds?: number;\n healthcheckIntervalSeconds?: number;\n numRetries?: number;\n retryIntervalSeconds?: number;\n sendApiKeyAsQueryParam?: boolean | undefined;\n useServerSideSearchCache?: boolean;\n cacheSearchResultsForSeconds?: number;\n additionalHeaders?: Record;\n\n logLevel?: LogLevelDesc;\n logger?: Logger;\n\n /**\n * Set a custom HTTP Agent\n *\n * This is helpful for eg, to enable keepAlive which helps prevents ECONNRESET socket hang up errors\n * Usage:\n * const { Agent: HTTPAgent } = require(\"http\");\n * ...\n * httpAgent: new HTTPAgent({ keepAlive: true }),\n * @type {HTTPAgent}\n */\n httpAgent?: HTTPAgent;\n\n /**\n * Set a custom HTTPS Agent\n *\n * This is helpful for eg, to enable keepAlive which helps prevents ECONNRESET socket hang up errors\n * Usage:\n * const { Agent: HTTPSAgent } = require(\"https\");\n * ...\n * httpsAgent: new HTTPSAgent({ keepAlive: true }),\n * @type {HTTPSAgent}\n */\n httpsAgent?: HTTPSAgent;\n\n /**\n * Set a custom paramsSerializer\n *\n * See axios documentation for more information on how to use this parameter: https://axios-http.com/docs/req_config\n * This is helpful for handling React Native issues like this: https://github.com/axios/axios/issues/6102#issuecomment-2085301397\n * @type {any}\n */\n paramsSerializer?: any;\n\n /**\n * Set a custom axios adapter\n *\n * Useful for customizing the underlying HTTP client library used by Typesense.\n *\n * For example, you can use this to use a custom HTTP client library like `fetch`, in order for the library to work on the edge.\n * Related GiHub issue: https://github.com/typesense/typesense-js/issues/161\n *\n * See axios documentation for more information on how to use this parameter: https://axios-http.com/docs/req_config\n */\n axiosAdapter?: AxiosRequestConfig[\"adapter\"];\n}\n\nexport default class Configuration {\n readonly nodes:\n | NodeConfiguration[]\n | NodeConfigurationWithHostname[]\n | NodeConfigurationWithUrl[];\n readonly nearestNode?:\n | NodeConfiguration\n | NodeConfigurationWithHostname\n | NodeConfigurationWithUrl;\n readonly connectionTimeoutSeconds: number;\n readonly healthcheckIntervalSeconds: number;\n readonly numRetries: number;\n readonly retryIntervalSeconds: number;\n readonly apiKey: string;\n readonly sendApiKeyAsQueryParam?: boolean;\n readonly cacheSearchResultsForSeconds: number;\n readonly useServerSideSearchCache: boolean;\n readonly logger: Logger;\n readonly logLevel: LogLevelDesc;\n readonly additionalHeaders?: Record;\n readonly httpAgent?: HTTPAgent;\n readonly httpsAgent?: HTTPSAgent;\n readonly paramsSerializer?: any;\n readonly axiosAdapter?: AxiosRequestConfig[\"adapter\"];\n\n constructor(options: ConfigurationOptions) {\n this.nodes = options.nodes || [];\n this.nodes = this.nodes\n .map((node) => this.setDefaultPathInNode(node))\n .map((node) => this.setDefaultPortInNode(node))\n .map((node) => ({ ...node })) as NodeConfiguration[]; // Make a deep copy\n\n if (options.randomizeNodes == null) {\n options.randomizeNodes = true;\n }\n\n if (options.randomizeNodes === true) {\n this.shuffleArray(this.nodes);\n }\n\n this.nearestNode = options.nearestNode;\n this.nearestNode = this.setDefaultPathInNode(this.nearestNode);\n this.nearestNode = this.setDefaultPortInNode(this.nearestNode);\n\n this.connectionTimeoutSeconds =\n options.connectionTimeoutSeconds || options.timeoutSeconds || 5;\n this.healthcheckIntervalSeconds = options.healthcheckIntervalSeconds || 60;\n this.numRetries =\n (options.numRetries !== undefined && options.numRetries >= 0\n ? options.numRetries\n : this.nodes.length + (this.nearestNode == null ? 0 : 1)) || 3;\n this.retryIntervalSeconds = options.retryIntervalSeconds || 0.1;\n\n this.apiKey = options.apiKey;\n this.sendApiKeyAsQueryParam = options.sendApiKeyAsQueryParam; // We will set a default for this in Client and SearchClient\n\n this.cacheSearchResultsForSeconds =\n options.cacheSearchResultsForSeconds || 0; // Disable client-side cache by default\n this.useServerSideSearchCache = options.useServerSideSearchCache || false;\n\n this.axiosAdapter = options.axiosAdapter;\n this.logger = options.logger || logger;\n this.logLevel = options.logLevel || \"warn\";\n this.logger.setLevel(this.logLevel);\n\n this.additionalHeaders = options.additionalHeaders;\n\n this.httpAgent = options.httpAgent;\n this.httpsAgent = options.httpsAgent;\n\n this.paramsSerializer = options.paramsSerializer;\n\n this.showDeprecationWarnings(options);\n this.validate();\n }\n\n validate(): boolean {\n if (this.nodes == null || this.nodes.length === 0 || this.validateNodes()) {\n throw new MissingConfigurationError(\n \"Ensure that nodes[].protocol, nodes[].host and nodes[].port are set\",\n );\n }\n\n if (\n this.nearestNode != null &&\n this.isNodeMissingAnyParameters(this.nearestNode)\n ) {\n throw new MissingConfigurationError(\n \"Ensure that nearestNodes.protocol, nearestNodes.host and nearestNodes.port are set\",\n );\n }\n\n if (this.apiKey == null) {\n throw new MissingConfigurationError(\"Ensure that apiKey is set\");\n }\n\n return true;\n }\n\n private validateNodes(): boolean {\n return this.nodes.some((node) => {\n return this.isNodeMissingAnyParameters(node);\n });\n }\n\n private isNodeMissingAnyParameters(\n node:\n | NodeConfiguration\n | NodeConfigurationWithHostname\n | NodeConfigurationWithUrl,\n ): boolean {\n return (\n ![\"protocol\", \"host\", \"port\", \"path\"].every((key) => {\n return node.hasOwnProperty(key);\n }) && node[\"url\"] == null\n );\n }\n\n private setDefaultPathInNode(\n node:\n | NodeConfiguration\n | NodeConfigurationWithHostname\n | NodeConfigurationWithUrl\n | undefined,\n ):\n | NodeConfiguration\n | NodeConfigurationWithHostname\n | NodeConfigurationWithUrl\n | undefined {\n if (node != null && !node.hasOwnProperty(\"path\")) {\n node[\"path\"] = \"\";\n }\n return node;\n }\n\n private setDefaultPortInNode(\n node:\n | NodeConfiguration\n | NodeConfigurationWithHostname\n | NodeConfigurationWithUrl\n | undefined,\n ):\n | NodeConfiguration\n | NodeConfigurationWithHostname\n | NodeConfigurationWithUrl\n | undefined {\n if (\n node != null &&\n !node.hasOwnProperty(\"port\") &&\n node.hasOwnProperty(\"protocol\")\n ) {\n switch (node[\"protocol\"]) {\n case \"https\":\n node[\"port\"] = 443;\n break;\n case \"http\":\n node[\"port\"] = 80;\n break;\n }\n }\n return node;\n }\n\n private showDeprecationWarnings(options: ConfigurationOptions): void {\n if (options.timeoutSeconds) {\n this.logger.warn(\n \"Deprecation warning: timeoutSeconds is now renamed to connectionTimeoutSeconds\",\n );\n }\n if (options.masterNode) {\n this.logger.warn(\n \"Deprecation warning: masterNode is now consolidated to nodes, starting with Typesense Server v0.12\",\n );\n }\n if (options.readReplicaNodes) {\n this.logger.warn(\n \"Deprecation warning: readReplicaNodes is now consolidated to nodes, starting with Typesense Server v0.12\",\n );\n }\n }\n\n private shuffleArray(array) {\n for (let i = array.length - 1; i > 0; i--) {\n const j = Math.floor(Math.random() * (i + 1));\n [array[i], array[j]] = [array[j], array[i]];\n }\n }\n}\n","import ApiCall from \"./ApiCall\";\nimport Conversations from \"./Conversations\";\n\nexport interface ConversationDeleteSchema {\n id: number;\n}\n\nexport interface ConversationUpdateSchema {\n ttl: number;\n}\n\nexport interface ConversationSchema {\n id: number;\n conversation: object[];\n last_updated: number;\n ttl: number;\n}\n\nexport default class Conversation {\n constructor(\n private id: string,\n private apiCall: ApiCall,\n ) {}\n\n async retrieve(): Promise {\n return this.apiCall.get(this.endpointPath());\n }\n\n async update(\n params: ConversationUpdateSchema,\n ): Promise {\n return this.apiCall.put(\n this.endpointPath(),\n params,\n );\n }\n\n async delete(): Promise {\n return this.apiCall.delete(this.endpointPath());\n }\n\n private endpointPath(): string {\n return `${Conversations.RESOURCEPATH}/${encodeURIComponent(this.id)}`;\n }\n}\n","import ApiCall from \"./ApiCall\";\nimport ConversationModels from \"./ConversationModels\";\n\nexport interface ConversationModelCreateSchema {\n id?: string;\n model_name: string;\n api_key?: string;\n system_prompt?: string;\n max_bytes: number;\n history_collection?: string;\n}\n\nexport interface ConversationModelDeleteSchema {\n id: string;\n}\n\nexport interface ConversationModelSchema extends ConversationModelCreateSchema {\n id: string;\n}\n\nexport default class ConversationModel {\n constructor(\n private id: string,\n private apiCall: ApiCall,\n ) {}\n\n async update(\n params: ConversationModelCreateSchema,\n ): Promise {\n return this.apiCall.put(\n this.endpointPath(),\n params,\n );\n }\n\n async retrieve(): Promise {\n return this.apiCall.get(this.endpointPath());\n }\n\n async delete(): Promise {\n return this.apiCall.delete(\n this.endpointPath(),\n );\n }\n\n private endpointPath(): string {\n return `${ConversationModels.RESOURCEPATH}/${encodeURIComponent(this.id)}`;\n }\n}\n","import ApiCall from \"./ApiCall\";\nimport {\n ConversationModelCreateSchema,\n ConversationModelSchema,\n} from \"./ConversationModel\";\n\nconst RESOURCEPATH = \"/conversations/models\";\n\nexport default class ConversationModels {\n constructor(private readonly apiCall: ApiCall) {\n this.apiCall = apiCall;\n }\n\n async create(\n params: ConversationModelCreateSchema,\n ): Promise {\n return this.apiCall.post(\n this.endpointPath(),\n params,\n );\n }\n\n async retrieve(): Promise {\n return this.apiCall.get(\n this.endpointPath(),\n );\n }\n\n private endpointPath(operation?: string): string {\n return `${ConversationModels.RESOURCEPATH}${\n operation === undefined ? \"\" : \"/\" + encodeURIComponent(operation)\n }`;\n }\n\n static get RESOURCEPATH() {\n return RESOURCEPATH;\n }\n}\n","import ApiCall from \"./ApiCall\";\nimport ConversationModels from \"./ConversationModels\";\nimport ConversationModel from \"./ConversationModel\";\nimport { ConversationSchema } from \"./Conversation\";\n\nconst RESOURCEPATH = \"/conversations\";\n\nexport interface ConversationsRetrieveSchema {\n conversations: ConversationSchema[];\n}\n\nexport default class Conversations {\n private readonly _conversationsModels: ConversationModels;\n private readonly individualConversationModels: Record<\n string,\n ConversationModel\n > = {};\n\n constructor(private readonly apiCall: ApiCall) {\n this.apiCall = apiCall;\n this._conversationsModels = new ConversationModels(this.apiCall);\n }\n\n async retrieve(): Promise {\n return this.apiCall.get(RESOURCEPATH);\n }\n\n models(): ConversationModels;\n models(id: string): ConversationModel;\n models(id?: string): ConversationModels | ConversationModel {\n if (id === undefined) {\n return this._conversationsModels;\n } else {\n if (this.individualConversationModels[id] === undefined) {\n this.individualConversationModels[id] = new ConversationModel(\n id,\n this.apiCall,\n );\n }\n return this.individualConversationModels[id];\n }\n }\n\n static get RESOURCEPATH() {\n return RESOURCEPATH;\n }\n}\n","import ApiCall from \"./ApiCall\";\n\nconst RESOURCEPATH = \"/debug\";\n\nexport interface DebugResponseSchema {\n state: number;\n version: string;\n}\n\nexport default class Debug {\n constructor(private apiCall: ApiCall) {}\n\n async retrieve(): Promise {\n return this.apiCall.get(RESOURCEPATH);\n }\n}\n","import ApiCall from \"./ApiCall\";\nimport Collections from \"./Collections\";\nimport Documents, {\n DeleteQuery,\n DocumentSchema,\n DocumentWriteParameters,\n} from \"./Documents\";\n\nexport class Document {\n constructor(\n private collectionName: string,\n private documentId: string,\n private apiCall: ApiCall\n ) {}\n\n async retrieve(): Promise {\n return this.apiCall.get(this.endpointPath());\n }\n\n async delete(options?: DeleteQuery): Promise {\n return this.apiCall.delete(this.endpointPath(), options);\n }\n\n async update(\n partialDocument: Partial,\n options: DocumentWriteParameters = {}\n ): Promise {\n return this.apiCall.patch(this.endpointPath(), partialDocument, options);\n }\n\n private endpointPath(): string {\n return `${Collections.RESOURCEPATH}/${encodeURIComponent(this.collectionName)}${Documents.RESOURCEPATH}/${encodeURIComponent(this.documentId)}`;\n }\n}\n","import type { ReadStream } from \"fs\";\nimport ApiCall from \"./ApiCall\";\nimport Configuration from \"./Configuration\";\nimport { ImportError, RequestMalformed } from \"./Errors\";\nimport { SearchOnlyDocuments } from \"./SearchOnlyDocuments\";\nimport { SearchParams, WriteableDocuments } from \"./Types\";\n\n// Todo: use generic to extract filter_by values\nexport type DeleteQuery =\n | {\n truncate?: true;\n }\n | {\n truncate?: never;\n filter_by?: string;\n batch_size?: number;\n ignore_not_found?: boolean;\n };\n\nexport interface DeleteResponse {\n num_deleted: number;\n}\n\ninterface ImportResponseSuccess {\n success: true;\n}\n\nexport interface ImportResponseFail {\n success: false;\n error: string;\n document: DocumentSchema;\n code: number;\n}\n\nexport type ImportResponse = ImportResponseSuccess | ImportResponseFail;\n\nexport type DocumentSchema = Record;\n\nexport interface SearchParamsWithPreset extends Partial {\n preset: string;\n}\n\ntype SearchResponseHighlightObject = {\n matched_tokens?: string[];\n snippet?: string;\n value?: string;\n};\n\nexport type SearchResponseHighlight = T extends string | number\n ? SearchResponseHighlightObject\n : {\n [TAttribute in keyof T]?: SearchResponseHighlight;\n };\n\nexport interface SearchResponseHit {\n curated?: true;\n highlights?: [\n {\n field: keyof T;\n snippet?: string;\n value?: string;\n snippets?: string[];\n indices?: number[];\n matched_tokens: string[][] | string[];\n },\n ];\n highlight: SearchResponseHighlight;\n document: T;\n text_match: number;\n text_match_info?: {\n best_field_score: `${number}`; // To prevent scores from being truncated by JSON spec\n best_field_weight: number;\n fields_matched: number;\n score: `${number}`; // To prevent scores from being truncated by JSON spec\n tokens_matched: number;\n };\n}\n\nexport interface SearchResponseFacetCountSchema {\n counts: {\n count: number;\n highlighted: string;\n value: string;\n }[];\n field_name: keyof T;\n stats: {\n avg?: number;\n max?: number;\n min?: number;\n sum?: number;\n };\n}\n\nexport interface SearchResponseRequestParams {\n collection_name?: string;\n q?: string;\n page?: number;\n per_page?: number;\n first_q?: string;\n voice_query?: {\n transcribed_query?: string;\n };\n}\n\n// Todo: we could infer whether this is a grouped response by adding the search params as a generic\nexport interface SearchResponse {\n facet_counts?: SearchResponseFacetCountSchema[];\n found: number;\n found_docs?: number;\n out_of: number;\n page: number;\n request_params: SearchResponseRequestParams;\n search_time_ms: number;\n search_cutoff?: boolean;\n hits?: SearchResponseHit[];\n grouped_hits?: {\n group_key: string[];\n hits: SearchResponseHit[];\n found?: number;\n }[];\n conversation?: {\n answer: string;\n conversation_history: {\n conversation: object[];\n id: string;\n last_updated: number;\n ttl: number;\n };\n conversation_id: string;\n query: string;\n };\n error?: string;\n code?: number;\n}\n\nexport interface DocumentWriteParameters {\n dirty_values?: \"coerce_or_reject\" | \"coerce_or_drop\" | \"drop\" | \"reject\";\n action?: \"create\" | \"update\" | \"upsert\" | \"emplace\";\n}\n\nexport interface UpdateByFilterParameters {\n filter_by?: string;\n}\n\nexport interface UpdateByFilterResponse {\n num_updated: number;\n}\n\nexport interface DocumentImportParameters extends DocumentWriteParameters {\n batch_size?: number;\n return_doc?: boolean;\n return_id?: boolean;\n}\n\nexport interface DocumentsExportParameters {\n filter_by?: string;\n include_fields?: string;\n exclude_fields?: string;\n}\n\nexport interface SearchOptions {\n cacheSearchResultsForSeconds?: number;\n abortSignal?: AbortSignal | null;\n}\n\nconst isNodeJSEnvironment =\n typeof process !== \"undefined\" &&\n process.versions != null &&\n process.versions.node != null;\n\nexport default class Documents\n extends SearchOnlyDocuments\n implements WriteableDocuments\n{\n constructor(\n collectionName: string,\n apiCall: ApiCall,\n configuration: Configuration,\n ) {\n super(collectionName, apiCall, configuration);\n }\n\n async create(document: T, options: DocumentWriteParameters = {}): Promise {\n if (!document) throw new Error(\"No document provided\");\n return this.apiCall.post(this.endpointPath(), document, options);\n }\n\n async upsert(document: T, options: DocumentWriteParameters = {}): Promise {\n if (!document) throw new Error(\"No document provided\");\n return this.apiCall.post(\n this.endpointPath(),\n document,\n Object.assign({}, options, { action: \"upsert\" }),\n );\n }\n\n async update(\n document: T,\n options: UpdateByFilterParameters,\n ): Promise;\n async update(document: T, options: DocumentWriteParameters): Promise;\n async update(\n document: T,\n options: DocumentWriteParameters | UpdateByFilterParameters = {},\n ): Promise {\n if (!document) throw new Error(\"No document provided\");\n\n if (options[\"filter_by\"] != null) {\n return this.apiCall.patch(\n this.endpointPath(),\n document,\n Object.assign({}, options),\n );\n } else {\n return this.apiCall.post(\n this.endpointPath(),\n document,\n Object.assign({}, options, { action: \"update\" }),\n );\n }\n }\n\n async delete(\n query: DeleteQuery = {} as DeleteQuery,\n ): Promise {\n return this.apiCall.delete(this.endpointPath(), query);\n }\n\n async createMany(documents: T[], options: DocumentImportParameters = {}) {\n this.configuration.logger.warn(\n \"createMany is deprecated and will be removed in a future version. Use import instead, which now takes both an array of documents or a JSONL string of documents\",\n );\n return this.import(documents, options);\n }\n\n /**\n * Import a set of documents in a batch.\n * @param {string|Array} documents - Can be a JSONL string of documents or an array of document objects.\n * @param options\n * @return {string|Array} Returns a JSONL string if the input was a JSONL string, otherwise it returns an array of results.\n */\n async import(\n documents: string,\n options?: DocumentImportParameters,\n ): Promise;\n async import(\n documents: T[],\n options?: DocumentImportParameters,\n ): Promise;\n async import(\n documents: T[] | string,\n options: DocumentImportParameters = {},\n ): Promise {\n let documentsInJSONLFormat;\n if (Array.isArray(documents)) {\n if (documents.length === 0) {\n throw new RequestMalformed(\"No documents provided\");\n }\n try {\n documentsInJSONLFormat = documents\n .map((document) => JSON.stringify(document))\n .join(\"\\n\");\n } catch (error: any) {\n // if rangeerror, throw custom error message\n if (\n error instanceof RangeError &&\n error.message.includes(\"Too many properties to enumerate\")\n ) {\n throw new Error(`${error}\n It looks like you have reached a Node.js limit that restricts the number of keys in an Object: https://stackoverflow.com/questions/9282869/are-there-limits-to-the-number-of-properties-in-a-javascript-object\n\n Please try reducing the number of keys in your document, or using CURL to import your data.\n `);\n }\n\n // else, throw the non-range error anyways\n throw new Error(error);\n }\n } else {\n documentsInJSONLFormat = documents;\n if (isEmptyString(documentsInJSONLFormat)) {\n throw new RequestMalformed(\"No documents provided\");\n }\n }\n\n const resultsInJSONLFormat = await this.apiCall.performRequest(\n \"post\",\n this.endpointPath(\"import\"),\n {\n queryParameters: options,\n bodyParameters: documentsInJSONLFormat,\n additionalHeaders: { \"Content-Type\": \"text/plain\" },\n skipConnectionTimeout: true, // We never want to client-side-timeout on an import and retry, since imports are syncronous and we want to let them take as long as it takes to complete fully\n enableKeepAlive: isNodeJSEnvironment ? true : false, // This is to prevent ECONNRESET socket hang up errors. Reference: https://github.com/axios/axios/issues/2936#issuecomment-779439991\n },\n );\n\n if (Array.isArray(documents)) {\n const resultsInJSONFormat = resultsInJSONLFormat\n .split(\"\\n\")\n .map((r) => JSON.parse(r)) as ImportResponse[];\n const failedItems = resultsInJSONFormat.filter(\n (r) => r.success === false,\n );\n if (failedItems.length > 0) {\n throw new ImportError(\n `${\n resultsInJSONFormat.length - failedItems.length\n } documents imported successfully, ${\n failedItems.length\n } documents failed during import. Use \\`error.importResults\\` from the raised exception to get a detailed error reason for each document.`,\n resultsInJSONFormat,\n {\n documentsInJSONLFormat,\n options,\n failedItems,\n successCount: resultsInJSONFormat.length - failedItems.length,\n },\n );\n } else {\n return resultsInJSONFormat;\n }\n } else {\n return resultsInJSONLFormat as string;\n }\n }\n /**\n * Imports documents from a NodeJS readable stream of JSONL.\n */\n async importStream(\n readableStream: ReadStream,\n options: DocumentImportParameters = {},\n ): Promise {\n const resultsInJSONLFormat = await this.apiCall.performRequest(\n \"post\",\n this.endpointPath(\"import\"),\n {\n queryParameters: options,\n bodyParameters: readableStream,\n additionalHeaders: { \"Content-Type\": \"text/plain\" },\n skipConnectionTimeout: true, // We never want to client-side-timeout on an import and retry, since imports are syncronous and we want to let them take as long as it takes to complete fully\n enableKeepAlive: isNodeJSEnvironment ? true : false, // This is to prevent ECONNRESET socket hang up errors. Reference: https://github.com/axios/axios/issues/2936#issuecomment-779439991\n },\n );\n\n const resultsInJSONFormat = resultsInJSONLFormat\n .split(\"\\n\")\n .map((r) => JSON.parse(r)) as ImportResponse[];\n const failedItems = resultsInJSONFormat.filter((r) => r.success === false);\n if (failedItems.length > 0) {\n throw new ImportError(\n `${\n resultsInJSONFormat.length - failedItems.length\n } documents imported successfully, ${\n failedItems.length\n } documents failed during import. Use \\`error.importResults\\` from the raised exception to get a detailed error reason for each document.`,\n resultsInJSONFormat,\n {\n documentsInJSONLFormat: readableStream,\n options,\n failedItems,\n successCount: resultsInJSONFormat.length - failedItems.length,\n },\n );\n } else {\n return resultsInJSONFormat;\n }\n }\n\n /**\n * Returns a JSONL string for all the documents in this collection\n */\n async export(options: DocumentsExportParameters = {}): Promise {\n return this.apiCall.get(this.endpointPath(\"export\"), options);\n }\n\n /**\n * Returns a NodeJS readable stream of JSONL for all the documents in this collection.\n */\n async exportStream(\n options: DocumentsExportParameters = {},\n ): Promise {\n return this.apiCall.get(this.endpointPath(\"export\"), options, {\n responseType: \"stream\",\n });\n }\n}\n\nfunction isEmptyString(str: string | null | undefined): boolean {\n return str == null || str === \"\" || str.length === 0;\n}\n\n/**\n * @deprecated Import from './Types' instead\n */\nexport type {\n SearchParams,\n WriteableDocuments,\n SearchableDocuments,\n DropTokensMode,\n OperationMode,\n UnionArrayKeys,\n UnionArraySearchParams,\n ArraybleParams,\n ExtractBaseTypes,\n} from \"./Types\";\n","import TypesenseError from \"./TypesenseError\";\n\nexport default class HTTPError extends TypesenseError {}\n","import TypesenseError from \"./TypesenseError\";\nimport type { DocumentImportParameters, ImportResponse } from \"../Documents\";\nimport { ReadStream } from \"node:fs\";\n\ninterface ImportErrorPayload {\n documentsInJSONLFormat: string | ReadStream;\n options: DocumentImportParameters;\n failedItems: ImportResponse[];\n successCount: number;\n}\n\nexport default class ImportError extends TypesenseError {\n payload: ImportErrorPayload;\n importResults: ImportResponse[];\n constructor(\n message: string,\n importResults: ImportResponse[],\n payload: ImportErrorPayload,\n ) {\n super(message);\n this.importResults = importResults;\n this.payload = payload;\n }\n}\n","import TypesenseError from \"./TypesenseError\";\n\nexport default class MissingConfigurationError extends TypesenseError {}\n","import TypesenseError from \"./TypesenseError\";\n\nexport default class ObjectAlreadyExists extends TypesenseError {}\n","import TypesenseError from \"./TypesenseError\";\n\nexport default class ObjectNotFound extends TypesenseError {}\n","import TypesenseError from \"./TypesenseError\";\n\nexport default class ObjectUnprocessable extends TypesenseError {}\n","import TypesenseError from \"./TypesenseError\";\n\nexport default class RequestMalformed extends TypesenseError {}\n","import TypesenseError from \"./TypesenseError\";\n\nexport default class RequestUnauthorized extends TypesenseError {}\n","import TypesenseError from \"./TypesenseError\";\n\nexport default class ServerError extends TypesenseError {}\n","export default class TypesenseError extends Error {\n httpStatus?: number;\n httpBody?: string;\n\n // Source: https://stackoverflow.com/a/58417721/123545\n constructor(message?: string, httpBody?: string, httpStatus?: number) {\n super(message);\n this.name = new.target.name;\n this.httpBody = httpBody;\n this.httpStatus = httpStatus;\n Object.setPrototypeOf(this, new.target.prototype);\n }\n}\n","import HTTPError from \"./HTTPError\";\nimport MissingConfigurationError from \"./MissingConfigurationError\";\nimport ObjectAlreadyExists from \"./ObjectAlreadyExists\";\nimport ObjectNotFound from \"./ObjectNotFound\";\nimport ObjectUnprocessable from \"./ObjectUnprocessable\";\nimport RequestMalformed from \"./RequestMalformed\";\nimport RequestUnauthorized from \"./RequestUnauthorized\";\nimport ServerError from \"./ServerError\";\nimport ImportError from \"./ImportError\";\nimport TypesenseError from \"./TypesenseError\";\n\nexport {\n HTTPError,\n MissingConfigurationError,\n ObjectAlreadyExists,\n ObjectNotFound,\n ObjectUnprocessable,\n RequestMalformed,\n RequestUnauthorized,\n ServerError,\n TypesenseError,\n ImportError,\n};\n","import ApiCall from \"./ApiCall\";\n\nconst RESOURCEPATH = \"/health\";\n\nexport interface HealthResponse {\n ok: boolean;\n}\n\nexport default class Health {\n constructor(private apiCall: ApiCall) {}\n\n async retrieve(): Promise {\n return this.apiCall.get(RESOURCEPATH);\n }\n}\n","import ApiCall from \"./ApiCall\";\nimport Keys from \"./Keys\";\n\nexport interface KeyCreateSchema {\n actions: string[];\n collections: string[];\n description?: string;\n value?: string;\n value_prefix?: string;\n expires_at?: number;\n autodelete?: boolean;\n}\n\nexport interface KeyDeleteSchema {\n id: number;\n}\n\nexport interface KeySchema extends KeyCreateSchema {\n id: number;\n}\n\nexport default class Key {\n constructor(\n private id: number,\n private apiCall: ApiCall,\n ) {}\n\n async retrieve(): Promise {\n return this.apiCall.get(this.endpointPath());\n }\n\n async delete(): Promise {\n return this.apiCall.delete(this.endpointPath());\n }\n\n private endpointPath(): string {\n return `${Keys.RESOURCEPATH}/${encodeURIComponent(this.id)}`;\n }\n}\n","import { createHmac } from \"crypto\";\nimport ApiCall from \"./ApiCall\";\nimport { KeyCreateSchema, KeySchema } from \"./Key\";\nimport { SearchParams } from \"./Documents\";\nimport { normalizeArrayableParams } from \"./Utils\";\n\nconst RESOURCEPATH = \"/keys\";\n\nexport interface KeysRetrieveSchema {\n keys: KeySchema[];\n}\n\nexport interface GenerateScopedSearchKeyParams extends Partial {\n expires_at?: number;\n cache_ttl?: number;\n limit_multi_searches?: number;\n}\n\nexport default class Keys {\n constructor(private apiCall: ApiCall) {\n this.apiCall = apiCall;\n }\n\n async create(params: KeyCreateSchema): Promise {\n return this.apiCall.post(Keys.RESOURCEPATH, params);\n }\n\n async retrieve(): Promise {\n return this.apiCall.get(RESOURCEPATH);\n }\n\n generateScopedSearchKey(\n searchKey: string,\n parameters: GenerateScopedSearchKeyParams\n ): string {\n // Note: only a key generated with the `documents:search` action will be\n // accepted by the server, when usined with the search endpoint.\n const normalizedParams = normalizeArrayableParams(parameters);\n const paramsJSON = JSON.stringify(normalizedParams);\n const digest = Buffer.from(\n createHmac(\"sha256\", searchKey).update(paramsJSON).digest(\"base64\")\n );\n const keyPrefix = searchKey.substr(0, 4);\n const rawScopedKey = `${digest}${keyPrefix}${paramsJSON}`;\n\n return Buffer.from(rawScopedKey).toString(\"base64\");\n }\n\n static get RESOURCEPATH() {\n return RESOURCEPATH;\n }\n}\n","import ApiCall from \"./ApiCall\";\n\nconst RESOURCEPATH = \"/metrics.json\";\n\nexport interface MetricsResponse {\n [key: `system_cpu${number}_active_percentage`]: string;\n system_cpu_active_percentage: string;\n system_disk_total_bytes: string;\n system_disk_used_bytes: string;\n system_memory_total_bytes: string;\n system_memory_total_swap_bytes?: string;\n system_memory_used_bytes: string;\n system_memory_used_swap_bytes?: string;\n system_network_received_bytes: string;\n system_network_sent_bytes: string;\n typesense_memory_active_bytes: string;\n typesense_memory_allocated_bytes: string;\n typesense_memory_fragmentation_ratio: string;\n typesense_memory_mapped_bytes: string;\n typesense_memory_metadata_bytes: string;\n typesense_memory_resident_bytes: string;\n typesense_memory_retained_bytes: string;\n}\n\nexport default class Metrics {\n constructor(private apiCall: ApiCall) {}\n\n async retrieve(): Promise {\n return this.apiCall.get(RESOURCEPATH);\n }\n}\n","import ApiCall from \"./ApiCall\";\nimport Configuration from \"./Configuration\";\nimport RequestWithCache from \"./RequestWithCache\";\nimport {\n DocumentSchema,\n SearchParams,\n SearchParamsWithPreset,\n SearchResponse,\n SearchResponseRequestParams,\n} from \"./Documents\";\nimport { normalizeArrayableParams } from \"./Utils\";\n\nconst RESOURCEPATH = \"/multi_search\";\n\nexport interface MultiSearchRequestSchema extends SearchParams {\n collection?: string;\n rerank_hybrid_matches?: boolean;\n \"x-typesense-api-key\"?: string;\n}\n\nexport interface MultiSearchRequestWithPresetSchema\n extends SearchParamsWithPreset {\n collection?: string;\n \"x-typesense-api-key\"?: string;\n}\n\nexport interface MultiSearchRequestsSchema<\n U extends boolean | undefined = undefined,\n> {\n union?: U;\n searches: (MultiSearchRequestSchema | MultiSearchRequestWithPresetSchema)[];\n}\n\nexport interface UnionSearchResponse\n extends Omit, \"request_params\"> {\n union_request_params: SearchResponseRequestParams[];\n}\n\nexport type MultiSearchResponse<\n U extends boolean | undefined,\n T extends DocumentSchema[],\n> = U extends true\n ? UnionSearchResponse\n : {\n results: { [Index in keyof T]: SearchResponse } & {\n length: T[\"length\"];\n };\n };\n\nexport default class MultiSearch {\n private requestWithCache: RequestWithCache;\n\n constructor(\n private apiCall: ApiCall,\n private configuration: Configuration,\n private useTextContentType: boolean = false,\n ) {\n this.requestWithCache = new RequestWithCache();\n }\n\n clearCache() {\n this.requestWithCache.clearCache();\n }\n\n async perform<\n T extends DocumentSchema[] = [],\n const U extends boolean | undefined = undefined,\n >(\n searchRequests: MultiSearchRequestsSchema,\n commonParams: Partial = {},\n {\n cacheSearchResultsForSeconds = this.configuration\n .cacheSearchResultsForSeconds,\n }: { cacheSearchResultsForSeconds?: number } = {},\n ): Promise> {\n const additionalHeaders = {};\n if (this.useTextContentType) {\n additionalHeaders[\"content-type\"] = \"text/plain\";\n }\n\n const additionalQueryParams = {};\n if (this.configuration.useServerSideSearchCache === true) {\n additionalQueryParams[\"use_cache\"] = true;\n }\n\n const queryParams = { ...commonParams, ...additionalQueryParams };\n\n const normalizedSearchRequests = {\n ...searchRequests,\n searches: searchRequests.searches.map(normalizeArrayableParams),\n };\n\n const normalizedQueryParams = normalizeArrayableParams(queryParams);\n\n return this.requestWithCache.perform(\n this.apiCall,\n this.apiCall.post,\n [\n RESOURCEPATH,\n normalizedSearchRequests,\n normalizedQueryParams,\n additionalHeaders,\n ],\n { cacheResponseForSeconds: cacheSearchResultsForSeconds },\n ) as Promise>;\n }\n}\n","import ApiCall from \"./ApiCall\";\n\nconst RESOURCEPATH = \"/operations\";\n\nexport default class Operations {\n constructor(private apiCall: ApiCall) {}\n\n async perform(\n operationName:\n | \"vote\"\n | \"snapshot\"\n | \"cache/clear\"\n | \"schema_changes\"\n // eslint-disable-next-line @typescript-eslint/ban-types -- Can't use `object` here, it needs to intersect with `{}`\n | (string & {}),\n queryParameters: Record = {},\n ): Promise {\n return this.apiCall.post(\n `${RESOURCEPATH}/${operationName}`,\n {},\n queryParameters,\n );\n }\n}\n","import ApiCall from \"./ApiCall\";\nimport Collections from \"./Collections\";\nimport Overrides, { OverrideCreateSchema } from \"./Overrides\";\n\nexport interface OverrideSchema extends OverrideCreateSchema {\n id: string;\n}\n\nexport interface OverrideDeleteSchema {\n id: string;\n}\n\nexport default class Override {\n constructor(\n private collectionName: string,\n private overrideId: string,\n private apiCall: ApiCall\n ) {}\n\n async retrieve(): Promise {\n return this.apiCall.get(this.endpointPath());\n }\n\n async delete(): Promise {\n return this.apiCall.delete(this.endpointPath());\n }\n\n private endpointPath(): string {\n return `${Collections.RESOURCEPATH}/${encodeURIComponent(this.collectionName)}${Overrides.RESOURCEPATH}/${encodeURIComponent(this.overrideId)}`;\n }\n}\n","import ApiCall from \"./ApiCall\";\nimport Collections from \"./Collections\";\nimport { OverrideSchema } from \"./Override\";\n\nconst RESOURCEPATH = \"/overrides\";\n\nexport interface OverrideRuleQuerySchema {\n query?: string;\n match?: \"exact\" | \"contains\";\n}\n\nexport interface OverrideRuleFilterSchema {\n filter_by?: string;\n}\n\nexport interface OverrideRuleTagsSchema {\n tags?: string[];\n}\n\nexport interface OverrideCreateSchema {\n rule: OverrideRuleQuerySchema &\n OverrideRuleFilterSchema &\n OverrideRuleTagsSchema;\n filter_by?: string;\n sort_by?: string;\n remove_matched_tokens?: boolean;\n replace_query?: string;\n includes?: Array<{\n id: string;\n position: number;\n }>;\n excludes?: Array<{ id: string }>;\n filter_curated_hits?: boolean;\n effective_from_ts?: number;\n effective_to_ts?: number;\n stop_processing?: boolean;\n metadata?: object;\n}\n\nexport interface OverridesRetrieveSchema {\n overrides: OverrideSchema[];\n}\n\nexport default class Overrides {\n constructor(\n private collectionName: string,\n private apiCall: ApiCall,\n ) {}\n\n async upsert(\n overrideId: string,\n params: OverrideCreateSchema,\n ): Promise {\n return this.apiCall.put(\n this.endpointPath(overrideId),\n params,\n );\n }\n\n async retrieve(): Promise {\n return this.apiCall.get(this.endpointPath());\n }\n\n private endpointPath(operation?: string): string {\n return `${Collections.RESOURCEPATH}/${this.collectionName}${\n Overrides.RESOURCEPATH\n }${operation === undefined ? \"\" : \"/\" + encodeURIComponent(operation)}`;\n }\n\n static get RESOURCEPATH(): string {\n return RESOURCEPATH;\n }\n}\n","import ApiCall from \"./ApiCall\";\nimport Presets, { PresetCreateSchema } from \"./Presets\";\n\nexport interface PresetSchema extends PresetCreateSchema {\n name: string;\n}\n\nexport interface PresetDeleteSchema {\n name: string;\n}\n\nexport default class Preset {\n constructor(private presetId: string, private apiCall: ApiCall) {}\n\n async retrieve(): Promise {\n return this.apiCall.get(this.endpointPath());\n }\n\n async delete(): Promise {\n return this.apiCall.delete(this.endpointPath());\n }\n\n private endpointPath(): string {\n return `${Presets.RESOURCEPATH}/${encodeURIComponent(this.presetId)}`;\n }\n}\n","import ApiCall from \"./ApiCall\";\nimport { PresetSchema } from \"./Preset\";\nimport { SearchParams } from \"./Documents\";\nimport { MultiSearchRequestsSchema } from \"./MultiSearch\";\nimport { normalizeArrayableParams } from \"./Utils\";\n\nconst RESOURCEPATH = \"/presets\";\n\nexport interface PresetCreateSchema {\n value: SearchParams | MultiSearchRequestsSchema;\n}\n\nexport interface PresetsRetrieveSchema {\n presets: PresetSchema[];\n}\n\nexport default class Presets {\n constructor(private apiCall: ApiCall) {}\n\n async upsert(\n presetId: string,\n params: PresetCreateSchema,\n ): Promise {\n if (typeof params.value === \"object\" && \"searches\" in params.value) {\n const normalizedParams = params.value.searches.map((search) =>\n normalizeArrayableParams(search),\n );\n\n return this.apiCall.put(this.endpointPath(presetId), {\n value: { searches: normalizedParams },\n });\n }\n const normalizedParams = normalizeArrayableParams(params.value);\n\n return this.apiCall.put(this.endpointPath(presetId), {\n value: normalizedParams,\n });\n }\n\n async retrieve(): Promise {\n return this.apiCall.get(this.endpointPath());\n }\n\n private endpointPath(operation?: string): string {\n return `${Presets.RESOURCEPATH}${\n operation === undefined ? \"\" : \"/\" + encodeURIComponent(operation)\n }`;\n }\n\n static get RESOURCEPATH(): string {\n return RESOURCEPATH;\n }\n}\n","const defaultCacheResponseForSeconds = 2 * 60;\nconst defaultMaxSize = 100;\n\nexport default class RequestWithCache {\n private responseCache: Map = new Map();\n private responsePromiseCache: Map = new Map();\n\n clearCache() {\n this.responseCache = new Map();\n this.responsePromiseCache = new Map();\n }\n\n // Todo: should probably be passed a callback instead, or an apiCall instance. Types are messy this way\n async perform(\n requestContext: any,\n requestFunction: (...params: any) => unknown,\n requestFunctionArguments: any[],\n cacheOptions: CacheOptions\n ): Promise {\n const {\n cacheResponseForSeconds = defaultCacheResponseForSeconds,\n maxSize = defaultMaxSize,\n } = cacheOptions;\n const isCacheDisabled = cacheResponseForSeconds <= 0 || maxSize <= 0;\n\n if (isCacheDisabled) {\n return requestFunction.call(requestContext, ...requestFunctionArguments);\n }\n\n const requestFunctionArgumentsJSON = JSON.stringify(\n requestFunctionArguments\n );\n const cacheEntry = this.responseCache.get(requestFunctionArgumentsJSON);\n const now = Date.now();\n\n if (cacheEntry) {\n const isEntryValid =\n now - cacheEntry.requestTimestamp < cacheResponseForSeconds * 1000;\n if (isEntryValid) {\n this.responseCache.delete(requestFunctionArgumentsJSON);\n this.responseCache.set(requestFunctionArgumentsJSON, cacheEntry);\n return Promise.resolve(cacheEntry.response);\n } else {\n this.responseCache.delete(requestFunctionArgumentsJSON);\n }\n }\n\n const cachePromiseEntry = this.responsePromiseCache.get(\n requestFunctionArgumentsJSON\n );\n\n if (cachePromiseEntry) {\n const isEntryValid =\n now - cachePromiseEntry.requestTimestamp <\n cacheResponseForSeconds * 1000;\n if (isEntryValid) {\n this.responsePromiseCache.delete(requestFunctionArgumentsJSON);\n this.responsePromiseCache.set(\n requestFunctionArgumentsJSON,\n cachePromiseEntry\n );\n return cachePromiseEntry.responsePromise;\n } else {\n this.responsePromiseCache.delete(requestFunctionArgumentsJSON);\n }\n }\n\n const responsePromise = requestFunction.call(\n requestContext,\n ...requestFunctionArguments\n );\n this.responsePromiseCache.set(requestFunctionArgumentsJSON, {\n requestTimestamp: now,\n responsePromise,\n });\n\n const response = await responsePromise;\n this.responseCache.set(requestFunctionArgumentsJSON, {\n requestTimestamp: now,\n response,\n });\n\n const isCacheOverMaxSize = this.responseCache.size > maxSize;\n if (isCacheOverMaxSize) {\n const oldestEntry = this.responseCache.keys().next().value;\n if (oldestEntry) {\n this.responseCache.delete(oldestEntry);\n }\n }\n const isResponsePromiseCacheOverMaxSize =\n this.responsePromiseCache.size > maxSize;\n if (isResponsePromiseCacheOverMaxSize) {\n const oldestEntry = this.responsePromiseCache.keys().next().value;\n if (oldestEntry) {\n this.responsePromiseCache.delete(oldestEntry);\n }\n }\n return response as T;\n }\n}\n\ninterface CacheOptions {\n cacheResponseForSeconds?: number;\n maxSize?: number;\n}\n","import Configuration, { ConfigurationOptions } from \"./Configuration\";\nimport ApiCall from \"./ApiCall\";\nimport MultiSearch from \"./MultiSearch\";\nimport { DocumentSchema } from \"./Documents\";\nimport { SearchOnlyCollection } from \"./SearchOnlyCollection\";\n\nexport default class SearchClient {\n public readonly multiSearch: MultiSearch;\n private readonly configuration: Configuration;\n private readonly apiCall: ApiCall;\n private readonly individualCollections: Record;\n\n constructor(options: ConfigurationOptions) {\n options.sendApiKeyAsQueryParam = options.sendApiKeyAsQueryParam ?? true;\n if (\n options.sendApiKeyAsQueryParam === true &&\n (options.apiKey || \"\").length > 2000\n ) {\n console.warn(\n \"[typesense] API Key is longer than 2000 characters which is over the allowed limit, so disabling sending it as a query parameter.\"\n );\n options.sendApiKeyAsQueryParam = false;\n }\n\n this.configuration = new Configuration(options);\n this.apiCall = new ApiCall(this.configuration);\n this.multiSearch = new MultiSearch(this.apiCall, this.configuration, true);\n this.individualCollections = {};\n }\n\n clearCache() {\n this.multiSearch.clearCache();\n\n // eslint-disable-next-line @typescript-eslint/no-unused-vars\n Object.entries(this.individualCollections).forEach(([_, collection]) => {\n collection.documents().clearCache();\n });\n }\n\n collections(\n collectionName: string\n ): SearchOnlyCollection | SearchOnlyCollection {\n if (!collectionName) {\n throw new Error(\n \"Typesense.SearchClient only supports search operations, so the collectionName that needs to \" +\n \"be searched must be specified. Use Typesense.Client if you need to access the collection object.\"\n );\n } else {\n if (this.individualCollections[collectionName] === undefined) {\n this.individualCollections[collectionName] = new SearchOnlyCollection(\n collectionName,\n this.apiCall,\n this.configuration\n );\n }\n return this.individualCollections[collectionName];\n }\n }\n}\n","import type { DocumentSchema } from \"./Documents\";\nimport ApiCall from \"./ApiCall\";\nimport { SearchOnlyDocuments } from \"./SearchOnlyDocuments\";\nimport type { SearchableDocuments } from \"./Types\";\n\nexport class SearchOnlyCollection {\n private readonly _documents: SearchableDocuments;\n\n constructor(\n private readonly name: string,\n private readonly apiCall: ApiCall,\n private readonly configuration: any\n ) {\n this._documents = new SearchOnlyDocuments(\n this.name,\n this.apiCall,\n this.configuration\n );\n }\n\n documents(): SearchableDocuments {\n return this._documents;\n }\n}\n","import RequestWithCache from \"./RequestWithCache\";\nimport ApiCall from \"./ApiCall\";\nimport Configuration from \"./Configuration\";\nimport Collections from \"./Collections\";\nimport type {\n DocumentSchema,\n SearchOptions,\n SearchParamsWithPreset,\n SearchResponse,\n} from \"./Documents\";\nimport { normalizeArrayableParams } from \"./Utils\";\nimport { SearchableDocuments, SearchParams } from \"./Types\";\n\nconst RESOURCEPATH = \"/documents\";\n\nexport class SearchOnlyDocuments\n implements SearchableDocuments\n{\n protected requestWithCache: RequestWithCache = new RequestWithCache();\n\n constructor(\n protected collectionName: string,\n protected apiCall: ApiCall,\n protected configuration: Configuration\n ) {}\n\n clearCache() {\n this.requestWithCache.clearCache();\n }\n\n async search(\n searchParameters: SearchParams | SearchParamsWithPreset,\n {\n cacheSearchResultsForSeconds = this.configuration\n .cacheSearchResultsForSeconds,\n abortSignal = null,\n }: SearchOptions = {}\n ): Promise> {\n const additionalQueryParams = {};\n if (this.configuration.useServerSideSearchCache === true) {\n additionalQueryParams[\"use_cache\"] = true;\n }\n const normalizedParams = normalizeArrayableParams(searchParameters);\n const queryParams = Object.assign(\n {},\n additionalQueryParams,\n normalizedParams,\n );\n\n return this.requestWithCache.perform(\n this.apiCall,\n this.apiCall.get,\n [this.endpointPath(\"search\"), queryParams, { abortSignal }],\n {\n cacheResponseForSeconds: cacheSearchResultsForSeconds,\n }\n ) as Promise>;\n }\n\n protected endpointPath(operation?: string) {\n return `${Collections.RESOURCEPATH}/${this.collectionName}${RESOURCEPATH}${\n operation === undefined ? \"\" : \"/\" + operation\n }`;\n }\n\n static get RESOURCEPATH() {\n return RESOURCEPATH;\n }\n}\n","import ApiCall from \"./ApiCall\";\n\nconst RESOURCEPATH = \"/stats.json\";\n\nexport interface EndpointStats {\n [endpoint: string]: number;\n}\n\nexport interface StatsResponse {\n delete_latency_ms?: number;\n delete_requests_per_second?: number;\n import_latency_ms?: number;\n import_requests_per_second?: number;\n latency_ms?: EndpointStats;\n overloaded_requests_per_second?: number;\n pending_write_batches?: number;\n requests_per_second?: EndpointStats;\n search_latency_ms?: number;\n search_requests_per_second?: number;\n total_requests_per_second?: number;\n write_latency_ms?: number;\n write_requests_per_second?: number;\n}\n\nexport default class Metrics {\n constructor(private apiCall: ApiCall) {}\n\n async retrieve(): Promise {\n return this.apiCall.get(RESOURCEPATH);\n }\n}\n","import type ApiCall from \"./ApiCall\";\nimport StemmingDictionaries from \"./StemmingDictionaries\";\nimport StemmingDictionary from \"./StemmingDictionary\";\n\nconst RESOURCEPATH = \"/stemming\";\n\nexport default class Stemming {\n private readonly _stemmingDictionaries: StemmingDictionaries;\n private readonly individualStemmingDictionaries: Record<\n string,\n StemmingDictionary\n > = {};\n\n constructor(private readonly apiCall: ApiCall) {\n this.apiCall = apiCall;\n this._stemmingDictionaries = new StemmingDictionaries(this.apiCall);\n }\n\n dictionaries(): StemmingDictionaries;\n dictionaries(id: string): StemmingDictionary;\n dictionaries(id?: string): StemmingDictionaries | StemmingDictionary {\n if (id === undefined) {\n return this._stemmingDictionaries;\n } else {\n if (this.individualStemmingDictionaries[id] === undefined) {\n this.individualStemmingDictionaries[id] = new StemmingDictionary(\n id,\n this.apiCall,\n );\n }\n return this.individualStemmingDictionaries[id];\n }\n }\n\n static get RESOURCEPATH() {\n return RESOURCEPATH;\n }\n}\n","import ApiCall from \"./ApiCall\";\nimport type { StemmingDictionaryCreateSchema } from \"./StemmingDictionary\";\n\nconst RESOURCEPATH = \"/stemming/dictionaries\";\n\nexport interface StemmingDictionariesRetrieveSchema {\n dictionaries: string[];\n}\n\nexport default class StemmingDictionaries {\n constructor(private readonly apiCall: ApiCall) {\n this.apiCall = apiCall;\n }\n\n async upsert(\n id: string,\n wordRootCombinations: StemmingDictionaryCreateSchema[] | string,\n ): Promise {\n const wordRootCombinationsInJSONLFormat = Array.isArray(\n wordRootCombinations,\n )\n ? wordRootCombinations.map((combo) => JSON.stringify(combo)).join(\"\\n\")\n : wordRootCombinations;\n\n const resultsInJSONLFormat = await this.apiCall.performRequest(\n\n \"post\",\n this.endpointPath(\"import\"),\n {\n queryParameters: {id},\n bodyParameters: wordRootCombinationsInJSONLFormat,\n additionalHeaders: {\"Content-Type\": \"text/plain\"},\n skipConnectionTimeout: true,\n }\n );\n\n return Array.isArray(wordRootCombinations)\n ? resultsInJSONLFormat\n .split(\"\\n\")\n .map((line) => JSON.parse(line) as StemmingDictionaryCreateSchema)\n : resultsInJSONLFormat;\n }\n\n async retrieve(): Promise {\n return this.apiCall.get(\n this.endpointPath(),\n );\n }\n\n private endpointPath(operation?: string): string {\n return operation === undefined\n ? `${StemmingDictionaries.RESOURCEPATH}`\n : `${StemmingDictionaries.RESOURCEPATH}/${encodeURIComponent(operation)}`;\n }\n\n static get RESOURCEPATH() {\n return RESOURCEPATH;\n }\n}\n","import ApiCall from \"./ApiCall\";\nimport StemmingDictionaries from \"./StemmingDictionaries\";\n\nexport interface StemmingDictionaryCreateSchema {\n root: string;\n word: string;\n}\n\nexport interface StemmingDictionarySchema {\n id: string;\n words: StemmingDictionaryCreateSchema[];\n}\n\nexport default class StemmingDictionary {\n constructor(\n private id: string,\n private apiCall: ApiCall,\n ) {}\n\n async retrieve(): Promise {\n return this.apiCall.get(this.endpointPath());\n }\n\n private endpointPath(): string {\n return `${StemmingDictionaries.RESOURCEPATH}/${encodeURIComponent(this.id)}`;\n }\n}\n","import ApiCall from \"./ApiCall\";\nimport Stopwords, { StopwordCreateSchema } from \"./Stopwords\";\n\nexport interface StopwordSchema extends StopwordCreateSchema {\n id: string;\n stopwords: string[];\n locale?: string;\n}\n\nexport interface StopwordDeleteSchema {\n id: string;\n}\n\nexport default class Stopword {\n constructor(\n private stopwordId: string,\n private apiCall: ApiCall,\n ) {}\n\n async retrieve(): Promise {\n return this.apiCall.get(this.endpointPath());\n }\n\n async delete(): Promise {\n return this.apiCall.delete(this.endpointPath());\n }\n\n private endpointPath(): string {\n return `${Stopwords.RESOURCEPATH}/${encodeURIComponent(this.stopwordId)}`;\n }\n}\n","import ApiCall from \"./ApiCall\";\nimport { StopwordSchema } from \"./Stopword\";\n\nconst RESOURCEPATH = \"/stopwords\";\n\nexport interface StopwordCreateSchema {\n stopwords: string[];\n locale?: string;\n}\n\nexport interface StopwordsRetrieveSchema {\n stopwords: StopwordSchema[];\n}\n\nexport default class Stopwords {\n constructor(private apiCall: ApiCall) {}\n\n async upsert(\n stopwordId: string,\n params: StopwordCreateSchema,\n ): Promise {\n return this.apiCall.put(\n this.endpointPath(stopwordId),\n params,\n );\n }\n\n async retrieve(): Promise {\n return this.apiCall.get(this.endpointPath());\n }\n\n private endpointPath(operation?: string): string {\n return `${Stopwords.RESOURCEPATH}${\n operation === undefined ? \"\" : \"/\" + encodeURIComponent(operation)\n }`;\n }\n\n static get RESOURCEPATH(): string {\n return RESOURCEPATH;\n }\n}\n","import ApiCall from \"./ApiCall\";\nimport Collections from \"./Collections\";\nimport Synonyms, { SynonymCreateSchema } from \"./Synonyms\";\n\nexport interface SynonymSchema extends SynonymCreateSchema {\n id: string;\n}\n\nexport interface SynonymDeleteSchema {\n id: string;\n}\n\nexport default class Synonym {\n constructor(\n private collectionName: string,\n private synonymId: string,\n private apiCall: ApiCall\n ) {}\n\n async retrieve(): Promise {\n return this.apiCall.get(this.endpointPath());\n }\n\n async delete(): Promise {\n return this.apiCall.delete(this.endpointPath());\n }\n\n private endpointPath(): string {\n return `${Collections.RESOURCEPATH}/${encodeURIComponent(this.collectionName)}${Synonyms.RESOURCEPATH}/${encodeURIComponent(this.synonymId)}`;\n }\n}\n","import ApiCall from \"./ApiCall\";\nimport Collections from \"./Collections\";\nimport { SynonymSchema } from \"./Synonym\";\n\nconst RESOURCEPATH = \"/synonyms\";\n\nexport interface SynonymCreateSchema {\n synonyms: string[];\n root?: string;\n locale?: string;\n symbols_to_index?: string[];\n}\n\nexport interface SynonymsRetrieveSchema {\n synonyms: SynonymSchema[];\n}\n\nexport default class Synonyms {\n constructor(private collectionName: string, private apiCall: ApiCall) {}\n\n async upsert(\n synonymId: string,\n params: SynonymCreateSchema\n ): Promise {\n return this.apiCall.put(\n this.endpointPath(synonymId),\n params\n );\n }\n\n async retrieve(): Promise {\n return this.apiCall.get(this.endpointPath());\n }\n\n private endpointPath(operation?: string) {\n return `${Collections.RESOURCEPATH}/${encodeURIComponent(this.collectionName)}${\n Synonyms.RESOURCEPATH\n }${operation === undefined ? \"\" : \"/\" + encodeURIComponent(operation)}`;\n }\n\n static get RESOURCEPATH(): string {\n return RESOURCEPATH;\n }\n}\n","import {\n DocumentSchema,\n SearchParamsWithPreset,\n SearchOptions,\n SearchResponse,\n DocumentWriteParameters,\n DeleteQuery,\n DeleteResponse,\n ImportResponse,\n DocumentsExportParameters,\n} from \"./Documents\";\n\nexport type DropTokensMode = \"right_to_left\" | \"left_to_right\" | \"both_sides:3\";\n\nexport type OperationMode = \"off\" | \"always\" | \"fallback\";\n\nexport type UnionArrayKeys = {\n [K in keyof T]: T[K] extends undefined\n ? never\n : NonNullable extends infer R\n ? R extends R[]\n ? never\n : R extends (infer U)[] | infer U\n ? U[] extends R\n ? K\n : never\n : never\n : never;\n}[keyof T] &\n keyof T;\n\nexport type UnionArraySearchParams = UnionArrayKeys;\n\nexport type ArraybleParams = {\n readonly [K in UnionArraySearchParams]: string;\n};\n\nexport type ExtractBaseTypes = {\n [K in keyof T]: K extends UnionArrayKeys\n ? T[K] extends (infer U)[] | infer U\n ? U\n : T[K]\n : T[K];\n};\n\nexport const arrayableParams: ArraybleParams = {\n query_by: \"query_by\",\n query_by_weights: \"query_by_weights\",\n facet_by: \"facet_by\",\n group_by: \"group_by\",\n include_fields: \"include_fields\",\n exclude_fields: \"exclude_fields\",\n highlight_fields: \"highlight_fields\",\n highlight_full_fields: \"highlight_full_fields\",\n pinned_hits: \"pinned_hits\",\n hidden_hits: \"hidden_hits\",\n infix: \"infix\",\n override_tags: \"override_tags\",\n num_typos: \"num_typos\",\n prefix: \"prefix\",\n sort_by: \"sort_by\",\n};\n\nexport interface SearchParams {\n // From https://typesense.org/docs/latest/api/documents.html#arguments\n // eslint-disable-next-line @typescript-eslint/ban-types -- Can't use `object` here, it needs to intersect with `{}`\n q?: \"*\" | (string & {});\n query_by?: string | string[];\n query_by_weights?: string | number[];\n prefix?: string | boolean | boolean[]; // default: true\n filter_by?: string;\n max_filter_by_candidates?: number; // default: 4\n enable_synonyms?: boolean; // default: true\n enable_analytics?: boolean; // default: true\n filter_curated_hits?: boolean; // default: false\n enable_lazy_filter?: boolean; // default: false\n sort_by?: string | string[]; // default: text match desc\n facet_by?: string | string[];\n max_facet_values?: number;\n facet_sample_threshold?: number;\n facet_sample_percent?: number;\n facet_query?: string;\n facet_query_num_typos?: number;\n facet_return_parent?: string;\n facet_strategy?: \"exhaustive\" | \"top_values\" | \"automatic\";\n page?: number; // default: 1\n per_page?: number; // default: 10, max 250\n group_by?: string | string[];\n group_limit?: number; // default:\n group_missing_values?: boolean;\n include_fields?: string | string[];\n exclude_fields?: string | string[];\n highlight_fields?: string | string[]; // default: all queried fields\n highlight_full_fields?: string | string[]; // default: all fields\n highlight_affix_num_tokens?: number; // default: 4\n highlight_start_tag?: string; // default: \n highlight_end_tag?: string; // default: \n enable_highlight_v1?: boolean;\n snippet_threshold?: number; // default: 30\n num_typos?: string | number | number[]; // default: 2\n min_len_1typo?: number;\n min_len_2typo?: number;\n split_join_tokens?: OperationMode;\n exhaustive_search?: boolean;\n drop_tokens_threshold?: number; // default: 10\n drop_tokens_mode?: DropTokensMode;\n typo_tokens_threshold?: number; // default: 100\n pinned_hits?: string | string[];\n hidden_hits?: string | string[];\n limit_hits?: number; // default: no limit\n pre_segmented_query?: boolean;\n enable_overrides?: boolean;\n override_tags?: string | string[];\n prioritize_exact_match?: boolean; // default: true\n prioritize_token_position?: boolean;\n prioritize_num_matching_fields?: boolean;\n search_cutoff_ms?: number;\n use_cache?: boolean;\n max_candidates?: number;\n infix?: OperationMode | OperationMode[];\n preset?: string;\n text_match_type?: \"max_score\" | \"max_weight\";\n vector_query?: string;\n \"x-typesense-api-key\"?: string;\n \"x-typesense-user-id\"?: string;\n offset?: number;\n limit?: number;\n stopwords?: string;\n conversation?: boolean;\n conversation_model_id?: string;\n conversation_id?: string;\n voice_query?: string;\n}\nexport interface SearchableDocuments {\n search(\n searchParameters: SearchParams | SearchParamsWithPreset,\n options: SearchOptions,\n ): Promise>;\n clearCache(): void;\n}\n\nexport interface WriteableDocuments {\n create(document: T, options: DocumentWriteParameters): Promise;\n upsert(document: T, options: DocumentWriteParameters): Promise;\n update(document: T, options: DocumentWriteParameters): Promise;\n delete(query: DeleteQuery): Promise;\n import(\n documents: T[] | string,\n options: DocumentWriteParameters,\n ): Promise;\n export(options: DocumentsExportParameters): Promise;\n}\n","import { arrayableParams } from \"./Types\";\nimport type { UnionArrayKeys, ExtractBaseTypes, SearchParams } from \"./Types\";\n\nfunction hasNoArrayValues(\n params: T | ExtractBaseTypes,\n): params is ExtractBaseTypes {\n return Object.keys(arrayableParams)\n .filter((key) => params[key] !== undefined)\n .every((key) => isNonArrayValue(params[key]));\n}\n\nexport function normalizeArrayableParams(\n params: T,\n): Prettify> {\n const result = { ...params };\n\n const transformedValues = Object.keys(arrayableParams)\n .filter((key) => Array.isArray(result[key]))\n .map((key) => {\n result[key] = result[key].join(\",\");\n return key;\n });\n\n if (!transformedValues.length && hasNoArrayValues(result)) {\n return result;\n }\n\n if (!hasNoArrayValues(result)) {\n throw new Error(\n `Failed to normalize arrayable params: ${JSON.stringify(result)}`,\n );\n }\n\n return result;\n}\n\nfunction isNonArrayValue>(\n value: T[K] | ExtractBaseTypes[K],\n): value is ExtractBaseTypes[K] {\n return !Array.isArray(value);\n}\n\ntype Prettify = {\n [K in keyof T]: T[K];\n // eslint-disable-next-line @typescript-eslint/ban-types\n} & {};\n","/* (ignored) */","/* (ignored) */","/* (ignored) */","// The module cache\nvar __webpack_module_cache__ = {};\n\n// The require function\nfunction __webpack_require__(moduleId) {\n\t// Check if module is in cache\n\tvar cachedModule = __webpack_module_cache__[moduleId];\n\tif (cachedModule !== undefined) {\n\t\treturn cachedModule.exports;\n\t}\n\t// Create a new module (and put it into the cache)\n\tvar module = __webpack_module_cache__[moduleId] = {\n\t\t// no module.id needed\n\t\t// no module.loaded needed\n\t\texports: {}\n\t};\n\n\t// Execute the module function\n\t__webpack_modules__[moduleId].call(module.exports, module, module.exports, __webpack_require__);\n\n\t// Return the exports of the module\n\treturn module.exports;\n}\n\n","// getDefaultExport function for compatibility with non-harmony modules\n__webpack_require__.n = (module) => {\n\tvar getter = module && module.__esModule ?\n\t\t() => (module['default']) :\n\t\t() => (module);\n\t__webpack_require__.d(getter, { a: getter });\n\treturn getter;\n};","// define getter functions for harmony exports\n__webpack_require__.d = (exports, definition) => {\n\tfor(var key in definition) {\n\t\tif(__webpack_require__.o(definition, key) && !__webpack_require__.o(exports, key)) {\n\t\t\tObject.defineProperty(exports, key, { enumerable: true, get: definition[key] });\n\t\t}\n\t}\n};","__webpack_require__.o = (obj, prop) => (Object.prototype.hasOwnProperty.call(obj, prop))","// define __esModule on exports\n__webpack_require__.r = (exports) => {\n\tif(typeof Symbol !== 'undefined' && Symbol.toStringTag) {\n\t\tObject.defineProperty(exports, Symbol.toStringTag, { value: 'Module' });\n\t}\n\tObject.defineProperty(exports, '__esModule', { value: true });\n};","import Client from \"./Typesense/Client\";\nimport SearchClient from \"./Typesense/SearchClient\";\nimport * as Errors from \"./Typesense/Errors\";\n\nexport { Client, SearchClient, Errors };\nexport default { Client, SearchClient, Errors };\n"],"names":["Aliases","Alias","name","apiCall","_classCallCheck","_createClass","key","value","_retrieve","_asyncToGenerator","_regeneratorRuntime","mark","_callee","wrap","_callee$","_context","prev","next","abrupt","get","endpointPath","stop","retrieve","apply","arguments","_delete2","_callee2","_callee2$","_context2","delete","concat","RESOURCEPATH","encodeURIComponent","default","_upsert","mapping","put","upsert","_x","_x2","aliasName","AnalyticsRules","AnalyticsRule","AnalyticsEvents","Analytics","_defineProperty","_analyticsRules","_analyticsEvents","rules","id","undefined","individualAnalyticsRules","events","_create","params","post","create","operation","axios","Agent","HTTPAgent","HTTPSAgent","HTTPError","ObjectAlreadyExists","ObjectNotFound","ObjectUnprocessable","RequestMalformed","RequestUnauthorized","ServerError","TypesenseError","APIKEYHEADERNAME","HEALTHY","UNHEALTHY","isNodeJSEnvironment","process","versions","node","ApiCall","configuration","apiKey","nodes","JSON","parse","stringify","nearestNode","connectionTimeoutSeconds","healthcheckIntervalSeconds","numRetriesPerRequest","numRetries","retryIntervalSeconds","sendApiKeyAsQueryParam","additionalUserHeaders","additionalHeaders","logger","initializeMetadataForNodes","currentNodeIndex","_get","endpoint","queryParameters","_ref","_ref$abortSignal","abortSignal","_ref$responseType","responseType","_args","length","performRequest","_args2","_post","_callee3","bodyParameters","_args3","_callee3$","_context3","_x3","_put","_callee4","_args4","_callee4$","_context4","_x4","_patch","_callee5","_args5","_callee5$","_context5","patch","_x5","getAdapter","axiosAdapter","isCloudflareWorkers","navigator","userAgent","bind","globalThis","_performRequest","_callee6","requestType","_ref2","_this","_ref2$queryParameters","_ref2$bodyParameters","_ref2$additionalHeade","_ref2$abortSignal","_ref2$responseType","_ref2$skipConnectionT","skipConnectionTimeout","_ref2$enableKeepAlive","enableKeepAlive","requestNumber","lastException","wasAborted","_loop","_ret","numTries","_callee6$","_context7","validate","Date","now","debug","toUpperCase","abortListener","requestOptions","cancelToken","source","response","_response$data","_response$data2","_error$code","_error$response","_loop$","_context6","getNextNode","index","aborted","v","Promise","reject","Error","adapter","method","url","uriFor","headers","Object","assign","defaultHeaders","maxContentLength","Infinity","maxBodyLength","validateStatus","status","transformResponse","data","transformedData","startsWith","timeout","keys","httpAgent","warn","keepAlive","httpsAgent","paramsSerializer","_typeof","CancelToken","cancel","addEventListener","token","sent","setNodeHealthcheck","resolve","customErrorForResponse","message","t0","code","timer","removeEventListener","finish","delegateYield","_x6","_x7","_x8","isHealthy","nodeDueForHealthcheck","map","join","candidateNode","i","isDueForHealthcheck","lastAccessTimestamp","_this2","forEach","protocol","host","port","path","_timer","_callee7","seconds","_callee7$","_context8","setTimeout","_x9","messageFromServer","httpBody","errorMessage","trim","error","Configuration","Collections","Collection","Keys","Key","Debug","Metrics","Stats","Health","Operations","MultiSearch","Presets","Preset","Stopwords","Stopword","Conversations","Conversation","Stemming","Client","options","_options$sendApiKeyAs","metrics","stats","health","operations","multiSearch","_collections","individualCollections","_aliases","individualAliases","_keys","individualKeys","_presets","individualPresets","_stopwords","individualStopwords","analytics","stemming","_conversations","individualConversations","collections","collectionName","aliases","presets","stopwords","conversations","Documents","Overrides","Override","Synonyms","Synonym","Document","_documents","_overrides","_synonyms","_update","schema","update","_exists","exists","documents","documentId","individualDocuments","overrides","overrideId","individualOverrides","synonyms","synonymId","individualSynonyms","MissingConfigurationError","setDefaultPathInNode","setDefaultPortInNode","_objectSpread","randomizeNodes","shuffleArray","timeoutSeconds","cacheSearchResultsForSeconds","useServerSideSearchCache","logLevel","setLevel","showDeprecationWarnings","validateNodes","isNodeMissingAnyParameters","some","every","hasOwnProperty","masterNode","readReplicaNodes","array","j","Math","floor","random","ConversationModels","ConversationModel","_conversationsModels","models","individualConversationModels","partialDocument","ImportError","SearchOnlyDocuments","_callSuper","_inherits","document","action","query","_createMany","import","createMany","_import2","documentsInJSONLFormat","resultsInJSONLFormat","resultsInJSONFormat","failedItems","_args6","Array","isArray","RangeError","includes","isEmptyString","split","r","filter","success","successCount","_importStream","readableStream","_args7","importStream","_export2","_callee8","_args8","_callee8$","export","_exportStream","_callee9","_args9","_callee9$","_context9","exportStream","str","_TypesenseError","importResults","payload","_Error","httpStatus","constructor","setPrototypeOf","prototype","_wrapNativeSuper","createHmac","normalizeArrayableParams","generateScopedSearchKey","searchKey","parameters","normalizedParams","paramsJSON","digest","Buffer","from","keyPrefix","substr","rawScopedKey","toString","RequestWithCache","useTextContentType","requestWithCache","clearCache","_perform","searchRequests","commonParams","_ref$cacheSearchResul","additionalQueryParams","queryParams","normalizedSearchRequests","normalizedQueryParams","searches","perform","cacheResponseForSeconds","operationName","presetId","_normalizedParams","search","defaultCacheResponseForSeconds","defaultMaxSize","Map","responseCache","responsePromiseCache","requestContext","requestFunction","requestFunctionArguments","cacheOptions","_cacheOptions$cacheRe","_cacheOptions$maxSize","maxSize","isCacheDisabled","requestFunctionArgumentsJSON","cacheEntry","isEntryValid","cachePromiseEntry","_isEntryValid","responsePromise","isCacheOverMaxSize","oldestEntry","isResponsePromiseCacheOverMaxSize","_oldestEntry","call","_toConsumableArray","requestTimestamp","set","size","SearchOnlyCollection","SearchClient","console","entries","_slicedToArray","_","collection","_search","searchParameters","StemmingDictionaries","StemmingDictionary","_stemmingDictionaries","dictionaries","individualStemmingDictionaries","wordRootCombinations","wordRootCombinationsInJSONLFormat","combo","line","stopwordId","arrayableParams","query_by","query_by_weights","facet_by","group_by","include_fields","exclude_fields","highlight_fields","highlight_full_fields","pinned_hits","hidden_hits","infix","override_tags","num_typos","prefix","sort_by","hasNoArrayValues","isNonArrayValue","result","transformedValues","Errors"],"sourceRoot":""} \ No newline at end of file diff --git a/dist/typesense.min.js b/dist/typesense.min.js index a8656d75..b3419e4d 100644 --- a/dist/typesense.min.js +++ b/dist/typesense.min.js @@ -1,3 +1,3 @@ /*! For license information please see typesense.min.js.LICENSE.txt */ -var Typesense;(()=>{var e={65:function(e,t,n){var r,o;!function(i,a){"use strict";r=function(){var e=function(){},t="undefined",n=typeof window!==t&&typeof window.navigator!==t&&/Trident\/|MSIE /.test(window.navigator.userAgent),r=["trace","debug","info","warn","error"],o={},i=null;function a(e,t){var n=e[t];if("function"==typeof n.bind)return n.bind(e);try{return Function.prototype.bind.call(n,e)}catch(t){return function(){return Function.prototype.apply.apply(n,[e,arguments])}}}function s(){console.log&&(console.log.apply?console.log.apply(console,arguments):Function.prototype.apply.apply(console.log,[console,arguments])),console.trace&&console.trace()}function c(){for(var n=this.getLevel(),o=0;o=0&&t<=p.levels.SILENT)return t;throw new TypeError("log.setLevel() called with invalid level: "+e)}"string"==typeof e?h+=":"+e:"symbol"==typeof e&&(h=void 0),p.name=e,p.levels={TRACE:0,DEBUG:1,INFO:2,WARN:3,ERROR:4,SILENT:5},p.methodFactory=n||l,p.getLevel=function(){return null!=u?u:null!=s?s:a},p.setLevel=function(e,n){return u=d(e),!1!==n&&function(e){var n=(r[e]||"silent").toUpperCase();if(typeof window!==t&&h){try{return void(window.localStorage[h]=n)}catch(e){}try{window.document.cookie=encodeURIComponent(h)+"="+n+";"}catch(e){}}}(u),c.call(p)},p.setDefaultLevel=function(e){s=d(e),f()||p.setLevel(e,!1)},p.resetLevel=function(){u=null,function(){if(typeof window!==t&&h){try{window.localStorage.removeItem(h)}catch(e){}try{window.document.cookie=encodeURIComponent(h)+"=; expires=Thu, 01 Jan 1970 00:00:00 UTC"}catch(e){}}}(),c.call(p)},p.enableAll=function(e){p.setLevel(p.levels.TRACE,e)},p.disableAll=function(e){p.setLevel(p.levels.SILENT,e)},p.rebuild=function(){if(i!==p&&(a=d(i.getLevel())),c.call(p),i===p)for(var e in o)o[e].rebuild()},a=d(i?i.getLevel():"WARN");var y=f();null!=y&&(u=d(y)),c.call(p)}(i=new p).getLogger=function(e){if("symbol"!=typeof e&&"string"!=typeof e||""===e)throw new TypeError("You must supply a name when creating a logger.");var t=o[e];return t||(t=o[e]=new p(e,i.methodFactory)),t};var h=typeof window!==t?window.log:void 0;return i.noConflict=function(){return typeof window!==t&&window.log===i&&(window.log=h),i},i.getLoggers=function(){return o},i.default=i,i},void 0===(o=r.call(t,n,t,e))||(e.exports=o)}()},612:()=>{},939:()=>{},82:()=>{},633:(e,t,n)=>{var r=n(738).default;function o(){"use strict";e.exports=o=function(){return n},e.exports.__esModule=!0,e.exports.default=e.exports;var t,n={},i=Object.prototype,a=i.hasOwnProperty,s=Object.defineProperty||function(e,t,n){e[t]=n.value},c="function"==typeof Symbol?Symbol:{},u=c.iterator||"@@iterator",l=c.asyncIterator||"@@asyncIterator",p=c.toStringTag||"@@toStringTag";function h(e,t,n){return Object.defineProperty(e,t,{value:n,enumerable:!0,configurable:!0,writable:!0}),e[t]}try{h({},"")}catch(t){h=function(e,t,n){return e[t]=n}}function f(e,t,n,r){var o=t&&t.prototype instanceof b?t:b,i=Object.create(o.prototype),a=new _(r||[]);return s(i,"_invoke",{value:A(e,n,a)}),i}function d(e,t,n){try{return{type:"normal",arg:e.call(t,n)}}catch(e){return{type:"throw",arg:e}}}n.wrap=f;var y="suspendedStart",v="suspendedYield",m="executing",g="completed",w={};function b(){}function C(){}function R(){}var k={};h(k,u,(function(){return this}));var E=Object.getPrototypeOf,S=E&&E(E(U([])));S&&S!==i&&a.call(S,u)&&(k=S);var O=R.prototype=b.prototype=Object.create(k);function P(e){["next","throw","return"].forEach((function(t){h(e,t,(function(e){return this._invoke(t,e)}))}))}function x(e,t){function n(o,i,s,c){var u=d(e[o],e,i);if("throw"!==u.type){var l=u.arg,p=l.value;return p&&"object"==r(p)&&a.call(p,"__await")?t.resolve(p.__await).then((function(e){n("next",e,s,c)}),(function(e){n("throw",e,s,c)})):t.resolve(p).then((function(e){l.value=e,s(l)}),(function(e){return n("throw",e,s,c)}))}c(u.arg)}var o;s(this,"_invoke",{value:function(e,r){function i(){return new t((function(t,o){n(e,r,t,o)}))}return o=o?o.then(i,i):i()}})}function A(e,n,r){var o=y;return function(i,a){if(o===m)throw new Error("Generator is already running");if(o===g){if("throw"===i)throw a;return{value:t,done:!0}}for(r.method=i,r.arg=a;;){var s=r.delegate;if(s){var c=T(s,r);if(c){if(c===w)continue;return c}}if("next"===r.method)r.sent=r._sent=r.arg;else if("throw"===r.method){if(o===y)throw o=g,r.arg;r.dispatchException(r.arg)}else"return"===r.method&&r.abrupt("return",r.arg);o=m;var u=d(e,n,r);if("normal"===u.type){if(o=r.done?g:v,u.arg===w)continue;return{value:u.arg,done:r.done}}"throw"===u.type&&(o=g,r.method="throw",r.arg=u.arg)}}}function T(e,n){var r=n.method,o=e.iterator[r];if(o===t)return n.delegate=null,"throw"===r&&e.iterator.return&&(n.method="return",n.arg=t,T(e,n),"throw"===n.method)||"return"!==r&&(n.method="throw",n.arg=new TypeError("The iterator does not provide a '"+r+"' method")),w;var i=d(o,e.iterator,n.arg);if("throw"===i.type)return n.method="throw",n.arg=i.arg,n.delegate=null,w;var a=i.arg;return a?a.done?(n[e.resultName]=a.value,n.next=e.nextLoc,"return"!==n.method&&(n.method="next",n.arg=t),n.delegate=null,w):a:(n.method="throw",n.arg=new TypeError("iterator result is not an object"),n.delegate=null,w)}function N(e){var t={tryLoc:e[0]};1 in e&&(t.catchLoc=e[1]),2 in e&&(t.finallyLoc=e[2],t.afterLoc=e[3]),this.tryEntries.push(t)}function j(e){var t=e.completion||{};t.type="normal",delete t.arg,e.completion=t}function _(e){this.tryEntries=[{tryLoc:"root"}],e.forEach(N,this),this.reset(!0)}function U(e){if(e||""===e){var n=e[u];if(n)return n.call(e);if("function"==typeof e.next)return e;if(!isNaN(e.length)){var o=-1,i=function n(){for(;++o=0;--o){var i=this.tryEntries[o],s=i.completion;if("root"===i.tryLoc)return r("end");if(i.tryLoc<=this.prev){var c=a.call(i,"catchLoc"),u=a.call(i,"finallyLoc");if(c&&u){if(this.prev=0;--n){var r=this.tryEntries[n];if(r.tryLoc<=this.prev&&a.call(r,"finallyLoc")&&this.prev=0;--t){var n=this.tryEntries[t];if(n.finallyLoc===e)return this.complete(n.completion,n.afterLoc),j(n),w}},catch:function(e){for(var t=this.tryEntries.length-1;t>=0;--t){var n=this.tryEntries[t];if(n.tryLoc===e){var r=n.completion;if("throw"===r.type){var o=r.arg;j(n)}return o}}throw new Error("illegal catch attempt")},delegateYield:function(e,n,r){return this.delegate={iterator:U(e),resultName:n,nextLoc:r},"next"===this.method&&(this.arg=t),w}},n}e.exports=o,e.exports.__esModule=!0,e.exports.default=e.exports},738:e=>{function t(n){return e.exports=t="function"==typeof Symbol&&"symbol"==typeof Symbol.iterator?function(e){return typeof e}:function(e){return e&&"function"==typeof Symbol&&e.constructor===Symbol&&e!==Symbol.prototype?"symbol":typeof e},e.exports.__esModule=!0,e.exports.default=e.exports,t(n)}e.exports=t,e.exports.__esModule=!0,e.exports.default=e.exports},756:(e,t,n)=>{var r=n(633)();e.exports=r;try{regeneratorRuntime=r}catch(e){"object"==typeof globalThis?globalThis.regeneratorRuntime=r:Function("r","regeneratorRuntime = r")(r)}}},t={};function n(r){var o=t[r];if(void 0!==o)return o.exports;var i=t[r]={exports:{}};return e[r].call(i.exports,i,i.exports,n),i.exports}n.n=e=>{var t=e&&e.__esModule?()=>e.default:()=>e;return n.d(t,{a:t}),t},n.d=(e,t)=>{for(var r in t)n.o(t,r)&&!n.o(e,r)&&Object.defineProperty(e,r,{enumerable:!0,get:t[r]})},n.o=(e,t)=>Object.prototype.hasOwnProperty.call(e,t),n.r=e=>{"undefined"!=typeof Symbol&&Symbol.toStringTag&&Object.defineProperty(e,Symbol.toStringTag,{value:"Module"}),Object.defineProperty(e,"__esModule",{value:!0})};var r={};(()=>{"use strict";n.r(r),n.d(r,{Client:()=>Cr,Errors:()=>t,SearchClient:()=>kr,default:()=>Er});var e={};n.r(e),n.d(e,{hasBrowserEnv:()=>De,hasStandardBrowserEnv:()=>Be,hasStandardBrowserWebWorkerEnv:()=>Me,navigator:()=>He,origin:()=>Ke});var t={};function o(e,t){if(!(e instanceof t))throw new TypeError("Cannot call a class as a function")}function i(e){return i="function"==typeof Symbol&&"symbol"==typeof Symbol.iterator?function(e){return typeof e}:function(e){return e&&"function"==typeof Symbol&&e.constructor===Symbol&&e!==Symbol.prototype?"symbol":typeof e},i(e)}function a(e){var t=function(e,t){if("object"!=i(e)||!e)return e;var n=e[Symbol.toPrimitive];if(void 0!==n){var r=n.call(e,"string");if("object"!=i(r))return r;throw new TypeError("@@toPrimitive must return a primitive value.")}return String(e)}(e);return"symbol"==i(t)?t:String(t)}function s(e,t){for(var n=0;nyn,ImportError:()=>kn,MissingConfigurationError:()=>k,ObjectAlreadyExists:()=>an,ObjectNotFound:()=>nn,ObjectUnprocessable:()=>un,RequestMalformed:()=>$t,RequestUnauthorized:()=>Zt,ServerError:()=>hn,TypesenseError:()=>b});var l=n(65);function p(e){if(void 0===e)throw new ReferenceError("this hasn't been initialised - super() hasn't been called");return e}function h(e,t){if(t&&("object"===i(t)||"function"==typeof t))return t;if(void 0!==t)throw new TypeError("Derived constructors may only return object or undefined");return p(e)}function f(e){return f=Object.setPrototypeOf?Object.getPrototypeOf.bind():function(e){return e.__proto__||Object.getPrototypeOf(e)},f(e)}function d(e,t){return d=Object.setPrototypeOf?Object.setPrototypeOf.bind():function(e,t){return e.__proto__=t,e},d(e,t)}function y(e,t){if("function"!=typeof t&&null!==t)throw new TypeError("Super expression must either be null or a function");e.prototype=Object.create(t&&t.prototype,{constructor:{value:e,writable:!0,configurable:!0}}),Object.defineProperty(e,"prototype",{writable:!1}),t&&d(e,t)}function v(){try{var e=!Boolean.prototype.valueOf.call(Reflect.construct(Boolean,[],(function(){})))}catch(e){}return(v=function(){return!!e})()}function m(e){var t="function"==typeof Map?new Map:void 0;return m=function(e){if(null===e||!function(e){try{return-1!==Function.toString.call(e).indexOf("[native code]")}catch(t){return"function"==typeof e}}(e))return e;if("function"!=typeof e)throw new TypeError("Super expression must either be null or a function");if(void 0!==t){if(t.has(e))return t.get(e);t.set(e,n)}function n(){return function(e,t,n){if(v())return Reflect.construct.apply(null,arguments);var r=[null];r.push.apply(r,t);var o=new(e.bind.apply(e,r));return n&&d(o,n.prototype),o}(e,arguments,f(this).constructor)}return n.prototype=Object.create(e.prototype,{constructor:{value:n,enumerable:!1,writable:!0,configurable:!0}}),d(n,e)},m(e)}function g(e,t,n){return t=f(t),h(e,w()?Reflect.construct(t,n||[],f(e).constructor):t.apply(e,n))}function w(){try{var e=!Boolean.prototype.valueOf.call(Reflect.construct(Boolean,[],(function(){})))}catch(e){}return(w=function(){return!!e})()}var b=function(e){function t(e,n,r){var i;return o(this,t),(i=g(this,t,[e])).name=(this instanceof t?this.constructor:void 0).name,i.httpBody=n,i.httpStatus=r,Object.setPrototypeOf(p(i),(this instanceof t?this.constructor:void 0).prototype),i}return y(t,e),c(t)}(m(Error));function C(e,t,n){return t=f(t),h(e,R()?Reflect.construct(t,n||[],f(e).constructor):t.apply(e,n))}function R(){try{var e=!Boolean.prototype.valueOf.call(Reflect.construct(Boolean,[],(function(){})))}catch(e){}return(R=function(){return!!e})()}var k=function(e){function t(){return o(this,t),C(this,t,arguments)}return y(t,e),c(t)}(b);function E(e,t){var n=Object.keys(e);if(Object.getOwnPropertySymbols){var r=Object.getOwnPropertySymbols(e);t&&(r=r.filter((function(t){return Object.getOwnPropertyDescriptor(e,t).enumerable}))),n.push.apply(n,r)}return n}var S=function(){function e(t){var n=this;o(this,e),this.nodes=t.nodes||[],this.nodes=this.nodes.map((function(e){return n.setDefaultPathInNode(e)})).map((function(e){return n.setDefaultPortInNode(e)})).map((function(e){return function(e){for(var t=1;t=0?t.numRetries:this.nodes.length+(null==this.nearestNode?0:1))||3,this.retryIntervalSeconds=t.retryIntervalSeconds||.1,this.apiKey=t.apiKey,this.sendApiKeyAsQueryParam=t.sendApiKeyAsQueryParam,this.cacheSearchResultsForSeconds=t.cacheSearchResultsForSeconds||0,this.useServerSideSearchCache=t.useServerSideSearchCache||!1,this.axiosAdapter=t.axiosAdapter,this.logger=t.logger||l,this.logLevel=t.logLevel||"warn",this.logger.setLevel(this.logLevel),this.additionalHeaders=t.additionalHeaders,this.httpAgent=t.httpAgent,this.httpsAgent=t.httpsAgent,this.paramsSerializer=t.paramsSerializer,this.showDeprecationWarnings(t),this.validate()}return c(e,[{key:"validate",value:function(){if(null==this.nodes||0===this.nodes.length||this.validateNodes())throw new k("Ensure that nodes[].protocol, nodes[].host and nodes[].port are set");if(null!=this.nearestNode&&this.isNodeMissingAnyParameters(this.nearestNode))throw new k("Ensure that nearestNodes.protocol, nearestNodes.host and nearestNodes.port are set");if(null==this.apiKey)throw new k("Ensure that apiKey is set");return!0}},{key:"validateNodes",value:function(){var e=this;return this.nodes.some((function(t){return e.isNodeMissingAnyParameters(t)}))}},{key:"isNodeMissingAnyParameters",value:function(e){return!["protocol","host","port","path"].every((function(t){return e.hasOwnProperty(t)}))&&null==e.url}},{key:"setDefaultPathInNode",value:function(e){return null==e||e.hasOwnProperty("path")||(e.path=""),e}},{key:"setDefaultPortInNode",value:function(e){if(null!=e&&!e.hasOwnProperty("port")&&e.hasOwnProperty("protocol"))switch(e.protocol){case"https":e.port=443;break;case"http":e.port=80}return e}},{key:"showDeprecationWarnings",value:function(e){e.timeoutSeconds&&this.logger.warn("Deprecation warning: timeoutSeconds is now renamed to connectionTimeoutSeconds"),e.masterNode&&this.logger.warn("Deprecation warning: masterNode is now consolidated to nodes, starting with Typesense Server v0.12"),e.readReplicaNodes&&this.logger.warn("Deprecation warning: readReplicaNodes is now consolidated to nodes, starting with Typesense Server v0.12")}},{key:"shuffleArray",value:function(e){for(var t=e.length-1;t>0;t--){var n=Math.floor(Math.random()*(t+1)),r=[e[n],e[t]];e[t]=r[0],e[n]=r[1]}}}]),e}();function O(e,t,n,r,o,i,a){try{var s=e[i](a),c=s.value}catch(e){return void n(e)}s.done?t(c):Promise.resolve(c).then(r,o)}function P(e){return function(){var t=this,n=arguments;return new Promise((function(r,o){var i=e.apply(t,n);function a(e){O(i,r,o,a,s,"next",e)}function s(e){O(i,r,o,a,s,"throw",e)}a(void 0)}))}}var x=n(756),A=n.n(x);function T(e,t){return function(){return e.apply(t,arguments)}}const{toString:N}=Object.prototype,{getPrototypeOf:j}=Object,_=(U=Object.create(null),e=>{const t=N.call(e);return U[t]||(U[t]=t.slice(8,-1).toLowerCase())});var U;const L=e=>(e=e.toLowerCase(),t=>_(t)===e),I=e=>t=>typeof t===e,{isArray:q}=Array,F=I("undefined"),D=L("ArrayBuffer"),H=I("string"),B=I("function"),M=I("number"),K=e=>null!==e&&"object"==typeof e,z=e=>{if("object"!==_(e))return!1;const t=j(e);return!(null!==t&&t!==Object.prototype&&null!==Object.getPrototypeOf(t)||Symbol.toStringTag in e||Symbol.iterator in e)},J=L("Date"),W=L("File"),G=L("Blob"),V=L("FileList"),Q=L("URLSearchParams"),[$,X,Y,Z]=["ReadableStream","Request","Response","Headers"].map(L);function ee(e,t,{allOwnKeys:n=!1}={}){if(null==e)return;let r,o;if("object"!=typeof e&&(e=[e]),q(e))for(r=0,o=e.length;r0;)if(r=n[o],t===r.toLowerCase())return r;return null}const ne="undefined"!=typeof globalThis?globalThis:"undefined"!=typeof self?self:"undefined"!=typeof window?window:global,re=e=>!F(e)&&e!==ne,oe=(ie="undefined"!=typeof Uint8Array&&j(Uint8Array),e=>ie&&e instanceof ie);var ie;const ae=L("HTMLFormElement"),se=(({hasOwnProperty:e})=>(t,n)=>e.call(t,n))(Object.prototype),ce=L("RegExp"),ue=(e,t)=>{const n=Object.getOwnPropertyDescriptors(e),r={};ee(n,((n,o)=>{let i;!1!==(i=t(n,o,e))&&(r[o]=i||n)})),Object.defineProperties(e,r)},le="abcdefghijklmnopqrstuvwxyz",pe="0123456789",he={DIGIT:pe,ALPHA:le,ALPHA_DIGIT:le+le.toUpperCase()+pe},fe=L("AsyncFunction"),de=(ye="function"==typeof setImmediate,ve=B(ne.postMessage),ye?setImmediate:ve?(me=`axios@${Math.random()}`,ge=[],ne.addEventListener("message",(({source:e,data:t})=>{e===ne&&t===me&&ge.length&&ge.shift()()}),!1),e=>{ge.push(e),ne.postMessage(me,"*")}):e=>setTimeout(e));var ye,ve,me,ge;const we="undefined"!=typeof queueMicrotask?queueMicrotask.bind(ne):"undefined"!=typeof process&&process.nextTick||de,be={isArray:q,isArrayBuffer:D,isBuffer:function(e){return null!==e&&!F(e)&&null!==e.constructor&&!F(e.constructor)&&B(e.constructor.isBuffer)&&e.constructor.isBuffer(e)},isFormData:e=>{let t;return e&&("function"==typeof FormData&&e instanceof FormData||B(e.append)&&("formdata"===(t=_(e))||"object"===t&&B(e.toString)&&"[object FormData]"===e.toString()))},isArrayBufferView:function(e){let t;return t="undefined"!=typeof ArrayBuffer&&ArrayBuffer.isView?ArrayBuffer.isView(e):e&&e.buffer&&D(e.buffer),t},isString:H,isNumber:M,isBoolean:e=>!0===e||!1===e,isObject:K,isPlainObject:z,isReadableStream:$,isRequest:X,isResponse:Y,isHeaders:Z,isUndefined:F,isDate:J,isFile:W,isBlob:G,isRegExp:ce,isFunction:B,isStream:e=>K(e)&&B(e.pipe),isURLSearchParams:Q,isTypedArray:oe,isFileList:V,forEach:ee,merge:function e(){const{caseless:t}=re(this)&&this||{},n={},r=(r,o)=>{const i=t&&te(n,o)||o;z(n[i])&&z(r)?n[i]=e(n[i],r):z(r)?n[i]=e({},r):q(r)?n[i]=r.slice():n[i]=r};for(let e=0,t=arguments.length;e(ee(t,((t,r)=>{n&&B(t)?e[r]=T(t,n):e[r]=t}),{allOwnKeys:r}),e),trim:e=>e.trim?e.trim():e.replace(/^[\s\uFEFF\xA0]+|[\s\uFEFF\xA0]+$/g,""),stripBOM:e=>(65279===e.charCodeAt(0)&&(e=e.slice(1)),e),inherits:(e,t,n,r)=>{e.prototype=Object.create(t.prototype,r),e.prototype.constructor=e,Object.defineProperty(e,"super",{value:t.prototype}),n&&Object.assign(e.prototype,n)},toFlatObject:(e,t,n,r)=>{let o,i,a;const s={};if(t=t||{},null==e)return t;do{for(o=Object.getOwnPropertyNames(e),i=o.length;i-- >0;)a=o[i],r&&!r(a,e,t)||s[a]||(t[a]=e[a],s[a]=!0);e=!1!==n&&j(e)}while(e&&(!n||n(e,t))&&e!==Object.prototype);return t},kindOf:_,kindOfTest:L,endsWith:(e,t,n)=>{e=String(e),(void 0===n||n>e.length)&&(n=e.length),n-=t.length;const r=e.indexOf(t,n);return-1!==r&&r===n},toArray:e=>{if(!e)return null;if(q(e))return e;let t=e.length;if(!M(t))return null;const n=new Array(t);for(;t-- >0;)n[t]=e[t];return n},forEachEntry:(e,t)=>{const n=(e&&e[Symbol.iterator]).call(e);let r;for(;(r=n.next())&&!r.done;){const n=r.value;t.call(e,n[0],n[1])}},matchAll:(e,t)=>{let n;const r=[];for(;null!==(n=e.exec(t));)r.push(n);return r},isHTMLForm:ae,hasOwnProperty:se,hasOwnProp:se,reduceDescriptors:ue,freezeMethods:e=>{ue(e,((t,n)=>{if(B(e)&&-1!==["arguments","caller","callee"].indexOf(n))return!1;const r=e[n];B(r)&&(t.enumerable=!1,"writable"in t?t.writable=!1:t.set||(t.set=()=>{throw Error("Can not rewrite read-only method '"+n+"'")}))}))},toObjectSet:(e,t)=>{const n={},r=e=>{e.forEach((e=>{n[e]=!0}))};return q(e)?r(e):r(String(e).split(t)),n},toCamelCase:e=>e.toLowerCase().replace(/[-_\s]([a-z\d])(\w*)/g,(function(e,t,n){return t.toUpperCase()+n})),noop:()=>{},toFiniteNumber:(e,t)=>null!=e&&Number.isFinite(e=+e)?e:t,findKey:te,global:ne,isContextDefined:re,ALPHABET:he,generateString:(e=16,t=he.ALPHA_DIGIT)=>{let n="";const{length:r}=t;for(;e--;)n+=t[Math.random()*r|0];return n},isSpecCompliantForm:function(e){return!!(e&&B(e.append)&&"FormData"===e[Symbol.toStringTag]&&e[Symbol.iterator])},toJSONObject:e=>{const t=new Array(10),n=(e,r)=>{if(K(e)){if(t.indexOf(e)>=0)return;if(!("toJSON"in e)){t[r]=e;const o=q(e)?[]:{};return ee(e,((e,t)=>{const i=n(e,r+1);!F(i)&&(o[t]=i)})),t[r]=void 0,o}}return e};return n(e,0)},isAsyncFn:fe,isThenable:e=>e&&(K(e)||B(e))&&B(e.then)&&B(e.catch),setImmediate:de,asap:we};function Ce(e,t,n,r,o){Error.call(this),Error.captureStackTrace?Error.captureStackTrace(this,this.constructor):this.stack=(new Error).stack,this.message=e,this.name="AxiosError",t&&(this.code=t),n&&(this.config=n),r&&(this.request=r),o&&(this.response=o,this.status=o.status?o.status:null)}be.inherits(Ce,Error,{toJSON:function(){return{message:this.message,name:this.name,description:this.description,number:this.number,fileName:this.fileName,lineNumber:this.lineNumber,columnNumber:this.columnNumber,stack:this.stack,config:be.toJSONObject(this.config),code:this.code,status:this.status}}});const Re=Ce.prototype,ke={};["ERR_BAD_OPTION_VALUE","ERR_BAD_OPTION","ECONNABORTED","ETIMEDOUT","ERR_NETWORK","ERR_FR_TOO_MANY_REDIRECTS","ERR_DEPRECATED","ERR_BAD_RESPONSE","ERR_BAD_REQUEST","ERR_CANCELED","ERR_NOT_SUPPORT","ERR_INVALID_URL"].forEach((e=>{ke[e]={value:e}})),Object.defineProperties(Ce,ke),Object.defineProperty(Re,"isAxiosError",{value:!0}),Ce.from=(e,t,n,r,o,i)=>{const a=Object.create(Re);return be.toFlatObject(e,a,(function(e){return e!==Error.prototype}),(e=>"isAxiosError"!==e)),Ce.call(a,e.message,t,n,r,o),a.cause=e,a.name=e.name,i&&Object.assign(a,i),a};const Ee=Ce;function Se(e){return be.isPlainObject(e)||be.isArray(e)}function Oe(e){return be.endsWith(e,"[]")?e.slice(0,-2):e}function Pe(e,t,n){return e?e.concat(t).map((function(e,t){return e=Oe(e),!n&&t?"["+e+"]":e})).join(n?".":""):t}const xe=be.toFlatObject(be,{},null,(function(e){return/^is[A-Z]/.test(e)})),Ae=function(e,t,n){if(!be.isObject(e))throw new TypeError("target must be an object");t=t||new FormData;const r=(n=be.toFlatObject(n,{metaTokens:!0,dots:!1,indexes:!1},!1,(function(e,t){return!be.isUndefined(t[e])}))).metaTokens,o=n.visitor||u,i=n.dots,a=n.indexes,s=(n.Blob||"undefined"!=typeof Blob&&Blob)&&be.isSpecCompliantForm(t);if(!be.isFunction(o))throw new TypeError("visitor must be a function");function c(e){if(null===e)return"";if(be.isDate(e))return e.toISOString();if(!s&&be.isBlob(e))throw new Ee("Blob is not supported. Use a Buffer instead.");return be.isArrayBuffer(e)||be.isTypedArray(e)?s&&"function"==typeof Blob?new Blob([e]):Buffer.from(e):e}function u(e,n,o){let s=e;if(e&&!o&&"object"==typeof e)if(be.endsWith(n,"{}"))n=r?n:n.slice(0,-2),e=JSON.stringify(e);else if(be.isArray(e)&&function(e){return be.isArray(e)&&!e.some(Se)}(e)||(be.isFileList(e)||be.endsWith(n,"[]"))&&(s=be.toArray(e)))return n=Oe(n),s.forEach((function(e,r){!be.isUndefined(e)&&null!==e&&t.append(!0===a?Pe([n],r,i):null===a?n:n+"[]",c(e))})),!1;return!!Se(e)||(t.append(Pe(o,n,i),c(e)),!1)}const l=[],p=Object.assign(xe,{defaultVisitor:u,convertValue:c,isVisitable:Se});if(!be.isObject(e))throw new TypeError("data must be an object");return function e(n,r){if(!be.isUndefined(n)){if(-1!==l.indexOf(n))throw Error("Circular reference detected in "+r.join("."));l.push(n),be.forEach(n,(function(n,i){!0===(!(be.isUndefined(n)||null===n)&&o.call(t,n,be.isString(i)?i.trim():i,r,p))&&e(n,r?r.concat(i):[i])})),l.pop()}}(e),t};function Te(e){const t={"!":"%21","'":"%27","(":"%28",")":"%29","~":"%7E","%20":"+","%00":"\0"};return encodeURIComponent(e).replace(/[!'()~]|%20|%00/g,(function(e){return t[e]}))}function Ne(e,t){this._pairs=[],e&&Ae(e,this,t)}const je=Ne.prototype;je.append=function(e,t){this._pairs.push([e,t])},je.toString=function(e){const t=e?function(t){return e.call(this,t,Te)}:Te;return this._pairs.map((function(e){return t(e[0])+"="+t(e[1])}),"").join("&")};const _e=Ne;function Ue(e){return encodeURIComponent(e).replace(/%3A/gi,":").replace(/%24/g,"$").replace(/%2C/gi,",").replace(/%20/g,"+").replace(/%5B/gi,"[").replace(/%5D/gi,"]")}function Le(e,t,n){if(!t)return e;const r=n&&n.encode||Ue,o=n&&n.serialize;let i;if(i=o?o(t,n):be.isURLSearchParams(t)?t.toString():new _e(t,n).toString(r),i){const t=e.indexOf("#");-1!==t&&(e=e.slice(0,t)),e+=(-1===e.indexOf("?")?"?":"&")+i}return e}const Ie=class{constructor(){this.handlers=[]}use(e,t,n){return this.handlers.push({fulfilled:e,rejected:t,synchronous:!!n&&n.synchronous,runWhen:n?n.runWhen:null}),this.handlers.length-1}eject(e){this.handlers[e]&&(this.handlers[e]=null)}clear(){this.handlers&&(this.handlers=[])}forEach(e){be.forEach(this.handlers,(function(t){null!==t&&e(t)}))}},qe={silentJSONParsing:!0,forcedJSONParsing:!0,clarifyTimeoutError:!1},Fe={isBrowser:!0,classes:{URLSearchParams:"undefined"!=typeof URLSearchParams?URLSearchParams:_e,FormData:"undefined"!=typeof FormData?FormData:null,Blob:"undefined"!=typeof Blob?Blob:null},protocols:["http","https","file","blob","url","data"]},De="undefined"!=typeof window&&"undefined"!=typeof document,He="object"==typeof navigator&&navigator||void 0,Be=De&&(!He||["ReactNative","NativeScript","NS"].indexOf(He.product)<0),Me="undefined"!=typeof WorkerGlobalScope&&self instanceof WorkerGlobalScope&&"function"==typeof self.importScripts,Ke=De&&window.location.href||"http://localhost",ze={...e,...Fe},Je=function(e){function t(e,n,r,o){let i=e[o++];if("__proto__"===i)return!0;const a=Number.isFinite(+i),s=o>=e.length;return i=!i&&be.isArray(r)?r.length:i,s?(be.hasOwnProp(r,i)?r[i]=[r[i],n]:r[i]=n,!a):(r[i]&&be.isObject(r[i])||(r[i]=[]),t(e,n,r[i],o)&&be.isArray(r[i])&&(r[i]=function(e){const t={},n=Object.keys(e);let r;const o=n.length;let i;for(r=0;r{t(function(e){return be.matchAll(/\w+|\[(\w*)]/g,e).map((e=>"[]"===e[0]?"":e[1]||e[0]))}(e),r,n,0)})),n}return null},We={transitional:qe,adapter:["xhr","http","fetch"],transformRequest:[function(e,t){const n=t.getContentType()||"",r=n.indexOf("application/json")>-1,o=be.isObject(e);if(o&&be.isHTMLForm(e)&&(e=new FormData(e)),be.isFormData(e))return r?JSON.stringify(Je(e)):e;if(be.isArrayBuffer(e)||be.isBuffer(e)||be.isStream(e)||be.isFile(e)||be.isBlob(e)||be.isReadableStream(e))return e;if(be.isArrayBufferView(e))return e.buffer;if(be.isURLSearchParams(e))return t.setContentType("application/x-www-form-urlencoded;charset=utf-8",!1),e.toString();let i;if(o){if(n.indexOf("application/x-www-form-urlencoded")>-1)return function(e,t){return Ae(e,new ze.classes.URLSearchParams,Object.assign({visitor:function(e,t,n,r){return ze.isNode&&be.isBuffer(e)?(this.append(t,e.toString("base64")),!1):r.defaultVisitor.apply(this,arguments)}},t))}(e,this.formSerializer).toString();if((i=be.isFileList(e))||n.indexOf("multipart/form-data")>-1){const t=this.env&&this.env.FormData;return Ae(i?{"files[]":e}:e,t&&new t,this.formSerializer)}}return o||r?(t.setContentType("application/json",!1),function(e,t,n){if(be.isString(e))try{return(0,JSON.parse)(e),be.trim(e)}catch(e){if("SyntaxError"!==e.name)throw e}return(0,JSON.stringify)(e)}(e)):e}],transformResponse:[function(e){const t=this.transitional||We.transitional,n=t&&t.forcedJSONParsing,r="json"===this.responseType;if(be.isResponse(e)||be.isReadableStream(e))return e;if(e&&be.isString(e)&&(n&&!this.responseType||r)){const n=!(t&&t.silentJSONParsing)&&r;try{return JSON.parse(e)}catch(e){if(n){if("SyntaxError"===e.name)throw Ee.from(e,Ee.ERR_BAD_RESPONSE,this,null,this.response);throw e}}}return e}],timeout:0,xsrfCookieName:"XSRF-TOKEN",xsrfHeaderName:"X-XSRF-TOKEN",maxContentLength:-1,maxBodyLength:-1,env:{FormData:ze.classes.FormData,Blob:ze.classes.Blob},validateStatus:function(e){return e>=200&&e<300},headers:{common:{Accept:"application/json, text/plain, */*","Content-Type":void 0}}};be.forEach(["delete","get","head","post","put","patch"],(e=>{We.headers[e]={}}));const Ge=We,Ve=be.toObjectSet(["age","authorization","content-length","content-type","etag","expires","from","host","if-modified-since","if-unmodified-since","last-modified","location","max-forwards","proxy-authorization","referer","retry-after","user-agent"]),Qe=Symbol("internals");function $e(e){return e&&String(e).trim().toLowerCase()}function Xe(e){return!1===e||null==e?e:be.isArray(e)?e.map(Xe):String(e)}function Ye(e,t,n,r,o){return be.isFunction(r)?r.call(this,t,n):(o&&(t=n),be.isString(t)?be.isString(r)?-1!==t.indexOf(r):be.isRegExp(r)?r.test(t):void 0:void 0)}class Ze{constructor(e){e&&this.set(e)}set(e,t,n){const r=this;function o(e,t,n){const o=$e(t);if(!o)throw new Error("header name must be a non-empty string");const i=be.findKey(r,o);(!i||void 0===r[i]||!0===n||void 0===n&&!1!==r[i])&&(r[i||t]=Xe(e))}const i=(e,t)=>be.forEach(e,((e,n)=>o(e,n,t)));if(be.isPlainObject(e)||e instanceof this.constructor)i(e,t);else if(be.isString(e)&&(e=e.trim())&&!/^[-_a-zA-Z0-9^`|~,!#$%&'*+.]+$/.test(e.trim()))i((e=>{const t={};let n,r,o;return e&&e.split("\n").forEach((function(e){o=e.indexOf(":"),n=e.substring(0,o).trim().toLowerCase(),r=e.substring(o+1).trim(),!n||t[n]&&Ve[n]||("set-cookie"===n?t[n]?t[n].push(r):t[n]=[r]:t[n]=t[n]?t[n]+", "+r:r)})),t})(e),t);else if(be.isHeaders(e))for(const[t,r]of e.entries())o(r,t,n);else null!=e&&o(t,e,n);return this}get(e,t){if(e=$e(e)){const n=be.findKey(this,e);if(n){const e=this[n];if(!t)return e;if(!0===t)return function(e){const t=Object.create(null),n=/([^\s,;=]+)\s*(?:=\s*([^,;]+))?/g;let r;for(;r=n.exec(e);)t[r[1]]=r[2];return t}(e);if(be.isFunction(t))return t.call(this,e,n);if(be.isRegExp(t))return t.exec(e);throw new TypeError("parser must be boolean|regexp|function")}}}has(e,t){if(e=$e(e)){const n=be.findKey(this,e);return!(!n||void 0===this[n]||t&&!Ye(0,this[n],n,t))}return!1}delete(e,t){const n=this;let r=!1;function o(e){if(e=$e(e)){const o=be.findKey(n,e);!o||t&&!Ye(0,n[o],o,t)||(delete n[o],r=!0)}}return be.isArray(e)?e.forEach(o):o(e),r}clear(e){const t=Object.keys(this);let n=t.length,r=!1;for(;n--;){const o=t[n];e&&!Ye(0,this[o],o,e,!0)||(delete this[o],r=!0)}return r}normalize(e){const t=this,n={};return be.forEach(this,((r,o)=>{const i=be.findKey(n,o);if(i)return t[i]=Xe(r),void delete t[o];const a=e?function(e){return e.trim().toLowerCase().replace(/([a-z\d])(\w*)/g,((e,t,n)=>t.toUpperCase()+n))}(o):String(o).trim();a!==o&&delete t[o],t[a]=Xe(r),n[a]=!0})),this}concat(...e){return this.constructor.concat(this,...e)}toJSON(e){const t=Object.create(null);return be.forEach(this,((n,r)=>{null!=n&&!1!==n&&(t[r]=e&&be.isArray(n)?n.join(", "):n)})),t}[Symbol.iterator](){return Object.entries(this.toJSON())[Symbol.iterator]()}toString(){return Object.entries(this.toJSON()).map((([e,t])=>e+": "+t)).join("\n")}get[Symbol.toStringTag](){return"AxiosHeaders"}static from(e){return e instanceof this?e:new this(e)}static concat(e,...t){const n=new this(e);return t.forEach((e=>n.set(e))),n}static accessor(e){const t=(this[Qe]=this[Qe]={accessors:{}}).accessors,n=this.prototype;function r(e){const r=$e(e);t[r]||(function(e,t){const n=be.toCamelCase(" "+t);["get","set","has"].forEach((r=>{Object.defineProperty(e,r+n,{value:function(e,n,o){return this[r].call(this,t,e,n,o)},configurable:!0})}))}(n,e),t[r]=!0)}return be.isArray(e)?e.forEach(r):r(e),this}}Ze.accessor(["Content-Type","Content-Length","Accept","Accept-Encoding","User-Agent","Authorization"]),be.reduceDescriptors(Ze.prototype,(({value:e},t)=>{let n=t[0].toUpperCase()+t.slice(1);return{get:()=>e,set(e){this[n]=e}}})),be.freezeMethods(Ze);const et=Ze;function tt(e,t){const n=this||Ge,r=t||n,o=et.from(r.headers);let i=r.data;return be.forEach(e,(function(e){i=e.call(n,i,o.normalize(),t?t.status:void 0)})),o.normalize(),i}function nt(e){return!(!e||!e.__CANCEL__)}function rt(e,t,n){Ee.call(this,null==e?"canceled":e,Ee.ERR_CANCELED,t,n),this.name="CanceledError"}be.inherits(rt,Ee,{__CANCEL__:!0});const ot=rt;function it(e,t,n){const r=n.config.validateStatus;n.status&&r&&!r(n.status)?t(new Ee("Request failed with status code "+n.status,[Ee.ERR_BAD_REQUEST,Ee.ERR_BAD_RESPONSE][Math.floor(n.status/100)-4],n.config,n.request,n)):e(n)}const at=(e,t,n=3)=>{let r=0;const o=function(e,t){e=e||10;const n=new Array(e),r=new Array(e);let o,i=0,a=0;return t=void 0!==t?t:1e3,function(s){const c=Date.now(),u=r[a];o||(o=c),n[i]=s,r[i]=c;let l=a,p=0;for(;l!==i;)p+=n[l++],l%=e;if(i=(i+1)%e,i===a&&(a=(a+1)%e),c-o{o=i,n=null,r&&(clearTimeout(r),r=null),e.apply(null,t)};return[(...e)=>{const t=Date.now(),s=t-o;s>=i?a(e,t):(n=e,r||(r=setTimeout((()=>{r=null,a(n)}),i-s)))},()=>n&&a(n)]}((n=>{const i=n.loaded,a=n.lengthComputable?n.total:void 0,s=i-r,c=o(s);r=i,e({loaded:i,total:a,progress:a?i/a:void 0,bytes:s,rate:c||void 0,estimated:c&&a&&i<=a?(a-i)/c:void 0,event:n,lengthComputable:null!=a,[t?"download":"upload"]:!0})}),n)},st=(e,t)=>{const n=null!=e;return[r=>t[0]({lengthComputable:n,total:e,loaded:r}),t[1]]},ct=e=>(...t)=>be.asap((()=>e(...t))),ut=ze.hasStandardBrowserEnv?function(){const e=ze.navigator&&/(msie|trident)/i.test(ze.navigator.userAgent),t=document.createElement("a");let n;function r(n){let r=n;return e&&(t.setAttribute("href",r),r=t.href),t.setAttribute("href",r),{href:t.href,protocol:t.protocol?t.protocol.replace(/:$/,""):"",host:t.host,search:t.search?t.search.replace(/^\?/,""):"",hash:t.hash?t.hash.replace(/^#/,""):"",hostname:t.hostname,port:t.port,pathname:"/"===t.pathname.charAt(0)?t.pathname:"/"+t.pathname}}return n=r(window.location.href),function(e){const t=be.isString(e)?r(e):e;return t.protocol===n.protocol&&t.host===n.host}}():function(){return!0},lt=ze.hasStandardBrowserEnv?{write(e,t,n,r,o,i){const a=[e+"="+encodeURIComponent(t)];be.isNumber(n)&&a.push("expires="+new Date(n).toGMTString()),be.isString(r)&&a.push("path="+r),be.isString(o)&&a.push("domain="+o),!0===i&&a.push("secure"),document.cookie=a.join("; ")},read(e){const t=document.cookie.match(new RegExp("(^|;\\s*)("+e+")=([^;]*)"));return t?decodeURIComponent(t[3]):null},remove(e){this.write(e,"",Date.now()-864e5)}}:{write(){},read:()=>null,remove(){}};function pt(e,t){return e&&!/^([a-z][a-z\d+\-.]*:)?\/\//i.test(t)?function(e,t){return t?e.replace(/\/?\/$/,"")+"/"+t.replace(/^\/+/,""):e}(e,t):t}const ht=e=>e instanceof et?{...e}:e;function ft(e,t){t=t||{};const n={};function r(e,t,n){return be.isPlainObject(e)&&be.isPlainObject(t)?be.merge.call({caseless:n},e,t):be.isPlainObject(t)?be.merge({},t):be.isArray(t)?t.slice():t}function o(e,t,n){return be.isUndefined(t)?be.isUndefined(e)?void 0:r(void 0,e,n):r(e,t,n)}function i(e,t){if(!be.isUndefined(t))return r(void 0,t)}function a(e,t){return be.isUndefined(t)?be.isUndefined(e)?void 0:r(void 0,e):r(void 0,t)}function s(n,o,i){return i in t?r(n,o):i in e?r(void 0,n):void 0}const c={url:i,method:i,data:i,baseURL:a,transformRequest:a,transformResponse:a,paramsSerializer:a,timeout:a,timeoutMessage:a,withCredentials:a,withXSRFToken:a,adapter:a,responseType:a,xsrfCookieName:a,xsrfHeaderName:a,onUploadProgress:a,onDownloadProgress:a,decompress:a,maxContentLength:a,maxBodyLength:a,beforeRedirect:a,transport:a,httpAgent:a,httpsAgent:a,cancelToken:a,socketPath:a,responseEncoding:a,validateStatus:s,headers:(e,t)=>o(ht(e),ht(t),!0)};return be.forEach(Object.keys(Object.assign({},e,t)),(function(r){const i=c[r]||o,a=i(e[r],t[r],r);be.isUndefined(a)&&i!==s||(n[r]=a)})),n}const dt=e=>{const t=ft({},e);let n,{data:r,withXSRFToken:o,xsrfHeaderName:i,xsrfCookieName:a,headers:s,auth:c}=t;if(t.headers=s=et.from(s),t.url=Le(pt(t.baseURL,t.url),e.params,e.paramsSerializer),c&&s.set("Authorization","Basic "+btoa((c.username||"")+":"+(c.password?unescape(encodeURIComponent(c.password)):""))),be.isFormData(r))if(ze.hasStandardBrowserEnv||ze.hasStandardBrowserWebWorkerEnv)s.setContentType(void 0);else if(!1!==(n=s.getContentType())){const[e,...t]=n?n.split(";").map((e=>e.trim())).filter(Boolean):[];s.setContentType([e||"multipart/form-data",...t].join("; "))}if(ze.hasStandardBrowserEnv&&(o&&be.isFunction(o)&&(o=o(t)),o||!1!==o&&ut(t.url))){const e=i&&a&<.read(a);e&&s.set(i,e)}return t},yt="undefined"!=typeof XMLHttpRequest&&function(e){return new Promise((function(t,n){const r=dt(e);let o=r.data;const i=et.from(r.headers).normalize();let a,s,c,u,l,{responseType:p,onUploadProgress:h,onDownloadProgress:f}=r;function d(){u&&u(),l&&l(),r.cancelToken&&r.cancelToken.unsubscribe(a),r.signal&&r.signal.removeEventListener("abort",a)}let y=new XMLHttpRequest;function v(){if(!y)return;const r=et.from("getAllResponseHeaders"in y&&y.getAllResponseHeaders());it((function(e){t(e),d()}),(function(e){n(e),d()}),{data:p&&"text"!==p&&"json"!==p?y.response:y.responseText,status:y.status,statusText:y.statusText,headers:r,config:e,request:y}),y=null}y.open(r.method.toUpperCase(),r.url,!0),y.timeout=r.timeout,"onloadend"in y?y.onloadend=v:y.onreadystatechange=function(){y&&4===y.readyState&&(0!==y.status||y.responseURL&&0===y.responseURL.indexOf("file:"))&&setTimeout(v)},y.onabort=function(){y&&(n(new Ee("Request aborted",Ee.ECONNABORTED,e,y)),y=null)},y.onerror=function(){n(new Ee("Network Error",Ee.ERR_NETWORK,e,y)),y=null},y.ontimeout=function(){let t=r.timeout?"timeout of "+r.timeout+"ms exceeded":"timeout exceeded";const o=r.transitional||qe;r.timeoutErrorMessage&&(t=r.timeoutErrorMessage),n(new Ee(t,o.clarifyTimeoutError?Ee.ETIMEDOUT:Ee.ECONNABORTED,e,y)),y=null},void 0===o&&i.setContentType(null),"setRequestHeader"in y&&be.forEach(i.toJSON(),(function(e,t){y.setRequestHeader(t,e)})),be.isUndefined(r.withCredentials)||(y.withCredentials=!!r.withCredentials),p&&"json"!==p&&(y.responseType=r.responseType),f&&([c,l]=at(f,!0),y.addEventListener("progress",c)),h&&y.upload&&([s,u]=at(h),y.upload.addEventListener("progress",s),y.upload.addEventListener("loadend",u)),(r.cancelToken||r.signal)&&(a=t=>{y&&(n(!t||t.type?new ot(null,e,y):t),y.abort(),y=null)},r.cancelToken&&r.cancelToken.subscribe(a),r.signal&&(r.signal.aborted?a():r.signal.addEventListener("abort",a)));const m=function(e){const t=/^([-+\w]{1,25})(:?\/\/|:)/.exec(e);return t&&t[1]||""}(r.url);m&&-1===ze.protocols.indexOf(m)?n(new Ee("Unsupported protocol "+m+":",Ee.ERR_BAD_REQUEST,e)):y.send(o||null)}))},vt=(e,t)=>{let n,r=new AbortController;const o=function(e){if(!n){n=!0,a();const t=e instanceof Error?e:this.reason;r.abort(t instanceof Ee?t:new ot(t instanceof Error?t.message:t))}};let i=t&&setTimeout((()=>{o(new Ee(`timeout ${t} of ms exceeded`,Ee.ETIMEDOUT))}),t);const a=()=>{e&&(i&&clearTimeout(i),i=null,e.forEach((e=>{e&&(e.removeEventListener?e.removeEventListener("abort",o):e.unsubscribe(o))})),e=null)};e.forEach((e=>e&&e.addEventListener&&e.addEventListener("abort",o)));const{signal:s}=r;return s.unsubscribe=a,[s,()=>{i&&clearTimeout(i),i=null}]},mt=function*(e,t){let n=e.byteLength;if(!t||n{const i=async function*(e,t,n){for await(const r of e)yield*mt(ArrayBuffer.isView(r)?r:await n(String(r)),t)}(e,t,o);let a,s=0,c=e=>{a||(a=!0,r&&r(e))};return new ReadableStream({async pull(e){try{const{done:t,value:r}=await i.next();if(t)return c(),void e.close();let o=r.byteLength;if(n){let e=s+=o;n(e)}e.enqueue(new Uint8Array(r))}catch(e){throw c(e),e}},cancel:e=>(c(e),i.return())},{highWaterMark:2})},wt="function"==typeof fetch&&"function"==typeof Request&&"function"==typeof Response,bt=wt&&"function"==typeof ReadableStream,Ct=wt&&("function"==typeof TextEncoder?(Rt=new TextEncoder,e=>Rt.encode(e)):async e=>new Uint8Array(await new Response(e).arrayBuffer()));var Rt;const kt=(e,...t)=>{try{return!!e(...t)}catch(e){return!1}},Et=bt&&kt((()=>{let e=!1;const t=new Request(ze.origin,{body:new ReadableStream,method:"POST",get duplex(){return e=!0,"half"}}).headers.has("Content-Type");return e&&!t})),St=bt&&kt((()=>be.isReadableStream(new Response("").body))),Ot={stream:St&&(e=>e.body)};var Pt;wt&&(Pt=new Response,["text","arrayBuffer","blob","formData","stream"].forEach((e=>{!Ot[e]&&(Ot[e]=be.isFunction(Pt[e])?t=>t[e]():(t,n)=>{throw new Ee(`Response type '${e}' is not supported`,Ee.ERR_NOT_SUPPORT,n)})})));const xt={http:null,xhr:yt,fetch:wt&&(async e=>{let{url:t,method:n,data:r,signal:o,cancelToken:i,timeout:a,onDownloadProgress:s,onUploadProgress:c,responseType:u,headers:l,withCredentials:p="same-origin",fetchOptions:h}=dt(e);u=u?(u+"").toLowerCase():"text";let f,d,[y,v]=o||i||a?vt([o,i],a):[];const m=()=>{!f&&setTimeout((()=>{y&&y.unsubscribe()})),f=!0};let g;try{if(c&&Et&&"get"!==n&&"head"!==n&&0!==(g=await(async(e,t)=>{const n=be.toFiniteNumber(e.getContentLength());return null==n?(async e=>null==e?0:be.isBlob(e)?e.size:be.isSpecCompliantForm(e)?(await new Request(e).arrayBuffer()).byteLength:be.isArrayBufferView(e)||be.isArrayBuffer(e)?e.byteLength:(be.isURLSearchParams(e)&&(e+=""),be.isString(e)?(await Ct(e)).byteLength:void 0))(t):n})(l,r))){let e,n=new Request(t,{method:"POST",body:r,duplex:"half"});if(be.isFormData(r)&&(e=n.headers.get("content-type"))&&l.setContentType(e),n.body){const[e,t]=st(g,at(ct(c)));r=gt(n.body,65536,e,t,Ct)}}be.isString(p)||(p=p?"include":"omit");const o="credentials"in Request.prototype;d=new Request(t,{...h,signal:y,method:n.toUpperCase(),headers:l.normalize().toJSON(),body:r,duplex:"half",credentials:o?p:void 0});let i=await fetch(d);const a=St&&("stream"===u||"response"===u);if(St&&(s||a)){const e={};["status","statusText","headers"].forEach((t=>{e[t]=i[t]}));const t=be.toFiniteNumber(i.headers.get("content-length")),[n,r]=s&&st(t,at(ct(s),!0))||[];i=new Response(gt(i.body,65536,n,(()=>{r&&r(),a&&m()}),Ct),e)}u=u||"text";let f=await Ot[be.findKey(Ot,u)||"text"](i,e);return!a&&m(),v&&v(),await new Promise(((t,n)=>{it(t,n,{data:f,headers:et.from(i.headers),status:i.status,statusText:i.statusText,config:e,request:d})}))}catch(t){if(m(),t&&"TypeError"===t.name&&/fetch/i.test(t.message))throw Object.assign(new Ee("Network Error",Ee.ERR_NETWORK,e,d),{cause:t.cause||t});throw Ee.from(t,t&&t.code,e,d)}})};be.forEach(xt,((e,t)=>{if(e){try{Object.defineProperty(e,"name",{value:t})}catch(e){}Object.defineProperty(e,"adapterName",{value:t})}}));const At=e=>`- ${e}`,Tt=e=>be.isFunction(e)||null===e||!1===e,Nt=e=>{e=be.isArray(e)?e:[e];const{length:t}=e;let n,r;const o={};for(let i=0;i`adapter ${e} `+(!1===t?"is not supported by the environment":"is not available in the build")));let n=t?e.length>1?"since :\n"+e.map(At).join("\n"):" "+At(e[0]):"as no adapter specified";throw new Ee("There is no suitable adapter to dispatch the request "+n,"ERR_NOT_SUPPORT")}return r};function jt(e){if(e.cancelToken&&e.cancelToken.throwIfRequested(),e.signal&&e.signal.aborted)throw new ot(null,e)}function _t(e){return jt(e),e.headers=et.from(e.headers),e.data=tt.call(e,e.transformRequest),-1!==["post","put","patch"].indexOf(e.method)&&e.headers.setContentType("application/x-www-form-urlencoded",!1),Nt(e.adapter||Ge.adapter)(e).then((function(t){return jt(e),t.data=tt.call(e,e.transformResponse,t),t.headers=et.from(t.headers),t}),(function(t){return nt(t)||(jt(e),t&&t.response&&(t.response.data=tt.call(e,e.transformResponse,t.response),t.response.headers=et.from(t.response.headers))),Promise.reject(t)}))}const Ut={};["object","boolean","number","function","string","symbol"].forEach(((e,t)=>{Ut[e]=function(n){return typeof n===e||"a"+(t<1?"n ":" ")+e}}));const Lt={};Ut.transitional=function(e,t,n){function r(e,t){return"[Axios v1.7.5] Transitional option '"+e+"'"+t+(n?". "+n:"")}return(n,o,i)=>{if(!1===e)throw new Ee(r(o," has been removed"+(t?" in "+t:"")),Ee.ERR_DEPRECATED);return t&&!Lt[o]&&(Lt[o]=!0,console.warn(r(o," has been deprecated since v"+t+" and will be removed in the near future"))),!e||e(n,o,i)}};const It={assertOptions:function(e,t,n){if("object"!=typeof e)throw new Ee("options must be an object",Ee.ERR_BAD_OPTION_VALUE);const r=Object.keys(e);let o=r.length;for(;o-- >0;){const i=r[o],a=t[i];if(a){const t=e[i],n=void 0===t||a(t,i,e);if(!0!==n)throw new Ee("option "+i+" must be "+n,Ee.ERR_BAD_OPTION_VALUE)}else if(!0!==n)throw new Ee("Unknown option "+i,Ee.ERR_BAD_OPTION)}},validators:Ut},qt=It.validators;class Ft{constructor(e){this.defaults=e,this.interceptors={request:new Ie,response:new Ie}}async request(e,t){try{return await this._request(e,t)}catch(e){if(e instanceof Error){let t;Error.captureStackTrace?Error.captureStackTrace(t={}):t=new Error;const n=t.stack?t.stack.replace(/^.+\n/,""):"";try{e.stack?n&&!String(e.stack).endsWith(n.replace(/^.+\n.+\n/,""))&&(e.stack+="\n"+n):e.stack=n}catch(e){}}throw e}}_request(e,t){"string"==typeof e?(t=t||{}).url=e:t=e||{},t=ft(this.defaults,t);const{transitional:n,paramsSerializer:r,headers:o}=t;void 0!==n&&It.assertOptions(n,{silentJSONParsing:qt.transitional(qt.boolean),forcedJSONParsing:qt.transitional(qt.boolean),clarifyTimeoutError:qt.transitional(qt.boolean)},!1),null!=r&&(be.isFunction(r)?t.paramsSerializer={serialize:r}:It.assertOptions(r,{encode:qt.function,serialize:qt.function},!0)),t.method=(t.method||this.defaults.method||"get").toLowerCase();let i=o&&be.merge(o.common,o[t.method]);o&&be.forEach(["delete","get","head","post","put","patch","common"],(e=>{delete o[e]})),t.headers=et.concat(i,o);const a=[];let s=!0;this.interceptors.request.forEach((function(e){"function"==typeof e.runWhen&&!1===e.runWhen(t)||(s=s&&e.synchronous,a.unshift(e.fulfilled,e.rejected))}));const c=[];let u;this.interceptors.response.forEach((function(e){c.push(e.fulfilled,e.rejected)}));let l,p=0;if(!s){const e=[_t.bind(this),void 0];for(e.unshift.apply(e,a),e.push.apply(e,c),l=e.length,u=Promise.resolve(t);p{if(!n._listeners)return;let t=n._listeners.length;for(;t-- >0;)n._listeners[t](e);n._listeners=null})),this.promise.then=e=>{let t;const r=new Promise((e=>{n.subscribe(e),t=e})).then(e);return r.cancel=function(){n.unsubscribe(t)},r},e((function(e,r,o){n.reason||(n.reason=new ot(e,r,o),t(n.reason))}))}throwIfRequested(){if(this.reason)throw this.reason}subscribe(e){this.reason?e(this.reason):this._listeners?this._listeners.push(e):this._listeners=[e]}unsubscribe(e){if(!this._listeners)return;const t=this._listeners.indexOf(e);-1!==t&&this._listeners.splice(t,1)}static source(){let e;return{token:new Ht((function(t){e=t})),cancel:e}}}const Bt=Ht,Mt={Continue:100,SwitchingProtocols:101,Processing:102,EarlyHints:103,Ok:200,Created:201,Accepted:202,NonAuthoritativeInformation:203,NoContent:204,ResetContent:205,PartialContent:206,MultiStatus:207,AlreadyReported:208,ImUsed:226,MultipleChoices:300,MovedPermanently:301,Found:302,SeeOther:303,NotModified:304,UseProxy:305,Unused:306,TemporaryRedirect:307,PermanentRedirect:308,BadRequest:400,Unauthorized:401,PaymentRequired:402,Forbidden:403,NotFound:404,MethodNotAllowed:405,NotAcceptable:406,ProxyAuthenticationRequired:407,RequestTimeout:408,Conflict:409,Gone:410,LengthRequired:411,PreconditionFailed:412,PayloadTooLarge:413,UriTooLong:414,UnsupportedMediaType:415,RangeNotSatisfiable:416,ExpectationFailed:417,ImATeapot:418,MisdirectedRequest:421,UnprocessableEntity:422,Locked:423,FailedDependency:424,TooEarly:425,UpgradeRequired:426,PreconditionRequired:428,TooManyRequests:429,RequestHeaderFieldsTooLarge:431,UnavailableForLegalReasons:451,InternalServerError:500,NotImplemented:501,BadGateway:502,ServiceUnavailable:503,GatewayTimeout:504,HttpVersionNotSupported:505,VariantAlsoNegotiates:506,InsufficientStorage:507,LoopDetected:508,NotExtended:510,NetworkAuthenticationRequired:511};Object.entries(Mt).forEach((([e,t])=>{Mt[t]=e}));const Kt=Mt,zt=function e(t){const n=new Dt(t),r=T(Dt.prototype.request,n);return be.extend(r,Dt.prototype,n,{allOwnKeys:!0}),be.extend(r,n,null,{allOwnKeys:!0}),r.create=function(n){return e(ft(t,n))},r}(Ge);zt.Axios=Dt,zt.CanceledError=ot,zt.CancelToken=Bt,zt.isCancel=nt,zt.VERSION="1.7.5",zt.toFormData=Ae,zt.AxiosError=Ee,zt.Cancel=zt.CanceledError,zt.all=function(e){return Promise.all(e)},zt.spread=function(e){return function(t){return e.apply(null,t)}},zt.isAxiosError=function(e){return be.isObject(e)&&!0===e.isAxiosError},zt.mergeConfig=ft,zt.AxiosHeaders=et,zt.formToJSON=e=>Je(be.isHTMLForm(e)?new FormData(e):e),zt.getAdapter=Nt,zt.HttpStatusCode=Kt,zt.default=zt;const Jt=zt;var Wt=n(939),Gt=n(82);function Vt(e,t,n){return t=f(t),h(e,Qt()?Reflect.construct(t,n||[],f(e).constructor):t.apply(e,n))}function Qt(){try{var e=!Boolean.prototype.valueOf.call(Reflect.construct(Boolean,[],(function(){})))}catch(e){}return(Qt=function(){return!!e})()}var $t=function(e){function t(){return o(this,t),Vt(this,t,arguments)}return y(t,e),c(t)}(b);function Xt(e,t,n){return t=f(t),h(e,Yt()?Reflect.construct(t,n||[],f(e).constructor):t.apply(e,n))}function Yt(){try{var e=!Boolean.prototype.valueOf.call(Reflect.construct(Boolean,[],(function(){})))}catch(e){}return(Yt=function(){return!!e})()}var Zt=function(e){function t(){return o(this,t),Xt(this,t,arguments)}return y(t,e),c(t)}(b);function en(e,t,n){return t=f(t),h(e,tn()?Reflect.construct(t,n||[],f(e).constructor):t.apply(e,n))}function tn(){try{var e=!Boolean.prototype.valueOf.call(Reflect.construct(Boolean,[],(function(){})))}catch(e){}return(tn=function(){return!!e})()}var nn=function(e){function t(){return o(this,t),en(this,t,arguments)}return y(t,e),c(t)}(b);function rn(e,t,n){return t=f(t),h(e,on()?Reflect.construct(t,n||[],f(e).constructor):t.apply(e,n))}function on(){try{var e=!Boolean.prototype.valueOf.call(Reflect.construct(Boolean,[],(function(){})))}catch(e){}return(on=function(){return!!e})()}var an=function(e){function t(){return o(this,t),rn(this,t,arguments)}return y(t,e),c(t)}(b);function sn(e,t,n){return t=f(t),h(e,cn()?Reflect.construct(t,n||[],f(e).constructor):t.apply(e,n))}function cn(){try{var e=!Boolean.prototype.valueOf.call(Reflect.construct(Boolean,[],(function(){})))}catch(e){}return(cn=function(){return!!e})()}var un=function(e){function t(){return o(this,t),sn(this,t,arguments)}return y(t,e),c(t)}(b);function ln(e,t,n){return t=f(t),h(e,pn()?Reflect.construct(t,n||[],f(e).constructor):t.apply(e,n))}function pn(){try{var e=!Boolean.prototype.valueOf.call(Reflect.construct(Boolean,[],(function(){})))}catch(e){}return(pn=function(){return!!e})()}var hn=function(e){function t(){return o(this,t),ln(this,t,arguments)}return y(t,e),c(t)}(b);function fn(e,t,n){return t=f(t),h(e,dn()?Reflect.construct(t,n||[],f(e).constructor):t.apply(e,n))}function dn(){try{var e=!Boolean.prototype.valueOf.call(Reflect.construct(Boolean,[],(function(){})))}catch(e){}return(dn=function(){return!!e})()}var yn=function(e){function t(){return o(this,t),fn(this,t,arguments)}return y(t,e),c(t)}(b),vn=!0,mn="undefined"!=typeof process&&null!=process.versions&&null!=process.versions.node,gn=function(){function e(t){o(this,e),this.configuration=t,this.apiKey=this.configuration.apiKey,this.nodes=null==this.configuration.nodes?this.configuration.nodes:JSON.parse(JSON.stringify(this.configuration.nodes)),this.nearestNode=null==this.configuration.nearestNode?this.configuration.nearestNode:JSON.parse(JSON.stringify(this.configuration.nearestNode)),this.connectionTimeoutSeconds=this.configuration.connectionTimeoutSeconds,this.healthcheckIntervalSeconds=this.configuration.healthcheckIntervalSeconds,this.numRetriesPerRequest=this.configuration.numRetries,this.retryIntervalSeconds=this.configuration.retryIntervalSeconds,this.sendApiKeyAsQueryParam=this.configuration.sendApiKeyAsQueryParam,this.additionalUserHeaders=this.configuration.additionalHeaders,this.logger=this.configuration.logger,this.initializeMetadataForNodes(),this.currentNodeIndex=-1}var t,n,r,a,s,u,l;return c(e,[{key:"get",value:(l=P(A().mark((function e(t){var n,r,o,i,a,s,c=arguments;return A().wrap((function(e){for(;;)switch(e.prev=e.next){case 0:return n=c.length>1&&void 0!==c[1]?c[1]:{},o=(r=c.length>2&&void 0!==c[2]?c[2]:{}).abortSignal,i=void 0===o?null:o,a=r.responseType,s=void 0===a?void 0:a,e.abrupt("return",this.performRequest("get",t,{queryParameters:n,abortSignal:i,responseType:s}));case 3:case"end":return e.stop()}}),e,this)}))),function(e){return l.apply(this,arguments)})},{key:"delete",value:(u=P(A().mark((function e(t){var n,r=arguments;return A().wrap((function(e){for(;;)switch(e.prev=e.next){case 0:return n=r.length>1&&void 0!==r[1]?r[1]:{},e.abrupt("return",this.performRequest("delete",t,{queryParameters:n}));case 2:case"end":return e.stop()}}),e,this)}))),function(e){return u.apply(this,arguments)})},{key:"post",value:(s=P(A().mark((function e(t){var n,r,o,i=arguments;return A().wrap((function(e){for(;;)switch(e.prev=e.next){case 0:return n=i.length>1&&void 0!==i[1]?i[1]:{},r=i.length>2&&void 0!==i[2]?i[2]:{},o=i.length>3&&void 0!==i[3]?i[3]:{},e.abrupt("return",this.performRequest("post",t,{queryParameters:r,bodyParameters:n,additionalHeaders:o}));case 4:case"end":return e.stop()}}),e,this)}))),function(e){return s.apply(this,arguments)})},{key:"put",value:(a=P(A().mark((function e(t){var n,r,o=arguments;return A().wrap((function(e){for(;;)switch(e.prev=e.next){case 0:return n=o.length>1&&void 0!==o[1]?o[1]:{},r=o.length>2&&void 0!==o[2]?o[2]:{},e.abrupt("return",this.performRequest("put",t,{queryParameters:r,bodyParameters:n}));case 3:case"end":return e.stop()}}),e,this)}))),function(e){return a.apply(this,arguments)})},{key:"patch",value:(r=P(A().mark((function e(t){var n,r,o=arguments;return A().wrap((function(e){for(;;)switch(e.prev=e.next){case 0:return n=o.length>1&&void 0!==o[1]?o[1]:{},r=o.length>2&&void 0!==o[2]?o[2]:{},e.abrupt("return",this.performRequest("patch",t,{queryParameters:r,bodyParameters:n}));case 3:case"end":return e.stop()}}),e,this)}))),function(e){return r.apply(this,arguments)})},{key:"getAdapter",value:function(){if(this.configuration.axiosAdapter)return"function"==typeof this.configuration.axiosAdapter?this.configuration.axiosAdapter:"undefined"!=typeof navigator&&"Cloudflare-Workers"===navigator.userAgent?Jt.getAdapter(this.configuration.axiosAdapter).bind(globalThis):Jt.getAdapter(this.configuration.axiosAdapter)}},{key:"performRequest",value:(n=P(A().mark((function e(t,n,r){var o,a,s,c,u,l,p,h,f,d,y,v,m,g,w,b,C,R,k,E,S=this;return A().wrap((function(e){for(;;)switch(e.prev=e.next){case 0:o=r.queryParameters,a=void 0===o?null:o,s=r.bodyParameters,c=void 0===s?null:s,u=r.additionalHeaders,l=void 0===u?{}:u,p=r.abortSignal,h=void 0===p?null:p,f=r.responseType,d=void 0===f?void 0:f,y=r.skipConnectionTimeout,v=void 0!==y&&y,m=r.enableKeepAlive,g=void 0===m?void 0:m,this.configuration.validate(),w=Date.now(),C=!1,this.logger.debug("Request #".concat(w,": Performing ").concat(t.toUpperCase()," request: ").concat(n)),R=A().mark((function e(){var r,o,s,u,p,f,y,m,R,k;return A().wrap((function(e){for(;;)switch(e.prev=e.next){case 0:if(r=S.getNextNode(w),S.logger.debug("Request #".concat(w,": Attempting ").concat(t.toUpperCase()," request Try #").concat(E," to Node ").concat(r.index)),!h||!h.aborted){e.next=4;break}return e.abrupt("return",{v:Promise.reject(new Error("Request aborted by caller."))});case 4:return e.prev=4,s={adapter:S.getAdapter(),method:t,url:S.uriFor(n,r),headers:Object.assign({},S.defaultHeaders(),l,S.additionalUserHeaders),maxContentLength:1/0,maxBodyLength:1/0,responseType:d,validateStatus:function(e){return e>0},transformResponse:[function(e,t){var n=e;return void 0!==t&&"string"==typeof e&&t["content-type"]&&t["content-type"].startsWith("application/json")&&(n=JSON.parse(e)),n}]},!0!==v&&(s.timeout=1e3*S.connectionTimeoutSeconds),a&&0!==Object.keys(a).length&&(s.params=a),S.sendApiKeyAsQueryParam&&(s.params=s.params||{},s.params["x-typesense-api-key"]=S.apiKey),S.configuration.httpAgent?(S.logger.debug("Request #".concat(w,": Using custom httpAgent")),s.httpAgent=S.configuration.httpAgent):!0===g&&(mn?(S.logger.debug("Request #".concat(w,": Enabling KeepAlive")),s.httpAgent=new Wt.Agent({keepAlive:!0})):S.logger.warn("Request #".concat(w,": Cannot use custom httpAgent in a browser environment to enable keepAlive"))),S.configuration.httpsAgent?(S.logger.debug("Request #".concat(w,": Using custom httpsAgent")),s.httpsAgent=S.configuration.httpsAgent):!0===g&&(mn?(S.logger.debug("Request #".concat(w,": Enabling keepAlive")),s.httpsAgent=new Gt.Agent({keepAlive:!0})):S.logger.warn("Request #".concat(w,": Cannot use custom httpAgent in a browser environment to enable keepAlive"))),S.configuration.paramsSerializer&&(S.logger.debug("Request #".concat(w,": Using custom paramsSerializer")),s.paramsSerializer=S.configuration.paramsSerializer),c&&("string"==typeof c&&0!==c.length||"object"===i(c)&&0!==Object.keys(c).length)&&(s.data=c),h&&(u=Jt.CancelToken,p=u.source(),o=function(){C=!0,p.cancel()},h.addEventListener("abort",o),s.cancelToken=p.token),e.next=16,Jt(s);case 16:if((f=e.sent).status>=1&&f.status<=499&&S.setNodeHealthcheck(r,vn),S.logger.debug("Request #".concat(w,": Request to Node ").concat(r.index," was made. Response Code was ").concat(f.status,".")),!(f.status>=200&&f.status<300)){e.next=23;break}return e.abrupt("return",{v:Promise.resolve(f.data)});case 23:if(!(f.status<500)){e.next=27;break}return e.abrupt("return",{v:Promise.reject(S.customErrorForResponse(f,null===(y=f.data)||void 0===y?void 0:y.message,s.data))});case 27:throw S.customErrorForResponse(f,null===(m=f.data)||void 0===m?void 0:m.message,s.data);case 28:e.next=40;break;case 30:if(e.prev=30,e.t0=e.catch(4),C||S.setNodeHealthcheck(r,!1),b=e.t0,S.logger.warn("Request #".concat(w,": Request to Node ").concat(r.index,' failed due to "').concat(null!==(R=null===e.t0||void 0===e.t0?void 0:e.t0.code)&&void 0!==R?R:""," ").concat(e.t0.message).concat(null==e.t0.response?"":" - "+JSON.stringify(null===(k=e.t0.response)||void 0===k?void 0:k.data),'"')),!C){e.next=37;break}return e.abrupt("return",{v:Promise.reject(new Error("Request aborted by caller."))});case 37:return E0&&void 0!==arguments[0]?arguments[0]:0;if(null!=this.nearestNode){if(this.logger.debug("Request #".concat(e,": Nodes Health: Node ").concat(this.nearestNode.index," is ").concat(!0===this.nearestNode.isHealthy?"Healthy":"Unhealthy")),!0===this.nearestNode.isHealthy||this.nodeDueForHealthcheck(this.nearestNode,e))return this.logger.debug("Request #".concat(e,": Updated current node to Node ").concat(this.nearestNode.index)),this.nearestNode;this.logger.debug("Request #".concat(e,": Falling back to individual nodes"))}this.logger.debug("Request #".concat(e,": Nodes Health: ").concat(this.nodes.map((function(e){return"Node ".concat(e.index," is ").concat(!0===e.isHealthy?"Healthy":"Unhealthy")})).join(" || ")));for(var t=this.nodes[0],n=0;n<=this.nodes.length;n++)if(this.currentNodeIndex=(this.currentNodeIndex+1)%this.nodes.length,!0===(t=this.nodes[this.currentNodeIndex]).isHealthy||this.nodeDueForHealthcheck(t,e))return this.logger.debug("Request #".concat(e,": Updated current node to Node ").concat(t.index)),t;return this.logger.debug("Request #".concat(e,": No healthy nodes were found. Returning the next node, Node ").concat(t.index)),t}},{key:"nodeDueForHealthcheck",value:function(e){var t=arguments.length>1&&void 0!==arguments[1]?arguments[1]:0,n=Date.now()-e.lastAccessTimestamp>1e3*this.healthcheckIntervalSeconds;return n&&this.logger.debug("Request #".concat(t,": Node ").concat(e.index," has exceeded healtcheckIntervalSeconds of ").concat(this.healthcheckIntervalSeconds,". Adding it back into rotation.")),n}},{key:"initializeMetadataForNodes",value:function(){var e=this;null!=this.nearestNode&&(this.nearestNode.index="nearestNode",this.setNodeHealthcheck(this.nearestNode,vn)),this.nodes.forEach((function(t,n){t.index=n,e.setNodeHealthcheck(t,vn)}))}},{key:"setNodeHealthcheck",value:function(e,t){e.isHealthy=t,e.lastAccessTimestamp=Date.now()}},{key:"uriFor",value:function(e,t){return null!=t.url?"".concat(t.url).concat(e):"".concat(t.protocol,"://").concat(t.host,":").concat(t.port).concat(t.path).concat(e)}},{key:"defaultHeaders",value:function(){var e={};return this.sendApiKeyAsQueryParam||(e["X-TYPESENSE-API-KEY"]=this.apiKey),e["Content-Type"]="application/json",e}},{key:"timer",value:(t=P(A().mark((function e(t){return A().wrap((function(e){for(;;)switch(e.prev=e.next){case 0:return e.abrupt("return",new Promise((function(e){return setTimeout(e,1e3*t)})));case 1:case"end":return e.stop()}}),e)}))),function(e){return t.apply(this,arguments)})},{key:"customErrorForResponse",value:function(e,t,n){var r="Request failed with HTTP code ".concat(e.status);return"string"==typeof t&&""!==t.trim()&&(r+=" | Server said: ".concat(t)),new b(r,n,e.status),400===e.status?new $t(r):401===e.status?new Zt(r):404===e.status?new nn(r):409===e.status?new an(r):422===e.status?new un(r):e.status>=500&&e.status<=599?new hn(r):new yn(r)}}]),e}(),wn="/collections",bn=function(){function e(t){o(this,e),this.apiCall=t}var t,n;return c(e,[{key:"create",value:(n=P(A().mark((function e(t,n){return A().wrap((function(e){for(;;)switch(e.prev=e.next){case 0:return e.abrupt("return",this.apiCall.post(wn,t,n));case 1:case"end":return e.stop()}}),e,this)}))),function(e,t){return n.apply(this,arguments)})},{key:"retrieve",value:(t=P(A().mark((function e(){var t,n=arguments;return A().wrap((function(e){for(;;)switch(e.prev=e.next){case 0:return t=n.length>0&&void 0!==n[0]?n[0]:{},e.abrupt("return",this.apiCall.get(wn,t));case 2:case"end":return e.stop()}}),e,this)}))),function(){return t.apply(this,arguments)})}],[{key:"RESOURCEPATH",get:function(){return wn}}]),e}();function Cn(e,t,n){return t=f(t),h(e,Rn()?Reflect.construct(t,n||[],f(e).constructor):t.apply(e,n))}function Rn(){try{var e=!Boolean.prototype.valueOf.call(Reflect.construct(Boolean,[],(function(){})))}catch(e){}return(Rn=function(){return!!e})()}var kn=function(e){function t(e,n,r){var i;return o(this,t),(i=Cn(this,t,[e])).importResults=n,i.payload=r,i}return y(t,e),c(t)}(b);function En(e,t){(null==t||t>e.length)&&(t=e.length);for(var n=0,r=new Array(t);nc&&(y=this.responseCache.keys().next().value)&&this.responseCache.delete(y),this.responsePromiseCache.size>c&&(v=this.responsePromiseCache.keys().next().value)&&this.responsePromiseCache.delete(v),e.abrupt("return",d);case 37:case"end":return e.stop()}}),e,this)}))),function(e,n,r,o){return t.apply(this,arguments)})}]),e}();function xn(e,t){var n=Object.keys(e);if(Object.getOwnPropertySymbols){var r=Object.getOwnPropertySymbols(e);t&&(r=r.filter((function(t){return Object.getOwnPropertyDescriptor(e,t).enumerable}))),n.push.apply(n,r)}return n}function An(e){return Object.keys(Ln).filter((function(t){return void 0!==e[t]})).every((function(t){return n=e[t],!Array.isArray(n);var n}))}function Tn(e){var t=function(e){for(var t=1;t1&&void 0!==l[1]?l[1]:{}).cacheSearchResultsForSeconds,o=void 0===r?this.configuration.cacheSearchResultsForSeconds:r,i=n.abortSignal,a=void 0===i?null:i,s={},!0===this.configuration.useServerSideSearchCache&&(s.use_cache=!0),c=Tn(t),u=Object.assign({},s,c),e.abrupt("return",this.requestWithCache.perform(this.apiCall,this.apiCall.get,[this.endpointPath("search"),u,{abortSignal:a}],{cacheResponseForSeconds:o}));case 6:case"end":return e.stop()}}),e,this)}))),function(e){return t.apply(this,arguments)})},{key:"endpointPath",value:function(e){return"".concat(bn.RESOURCEPATH,"/").concat(this.collectionName).concat(Nn).concat(void 0===e?"":"/"+e)}}],[{key:"RESOURCEPATH",get:function(){return Nn}}]),e}();function _n(e,t,n){return t=f(t),h(e,Un()?Reflect.construct(t,n||[],f(e).constructor):t.apply(e,n))}function Un(){try{var e=!Boolean.prototype.valueOf.call(Reflect.construct(Boolean,[],(function(){})))}catch(e){}return(Un=function(){return!!e})()}var Ln={query_by:"query_by",query_by_weights:"query_by_weights",facet_by:"facet_by",group_by:"group_by",include_fields:"include_fields",exclude_fields:"exclude_fields",highlight_fields:"highlight_fields",highlight_full_fields:"highlight_full_fields",pinned_hits:"pinned_hits",hidden_hits:"hidden_hits",infix:"infix",override_tags:"override_tags",num_typos:"num_typos",prefix:"prefix",sort_by:"sort_by"},In="undefined"!=typeof process&&null!=process.versions&&null!=process.versions.node,qn=function(e){function t(e,n,r){return o(this,t),_n(this,t,[e,n,r])}var n,r,i,a,s,u,l,p,h;return y(t,e),c(t,[{key:"create",value:(h=P(A().mark((function e(t){var n,r=arguments;return A().wrap((function(e){for(;;)switch(e.prev=e.next){case 0:if(n=r.length>1&&void 0!==r[1]?r[1]:{},t){e.next=3;break}throw new Error("No document provided");case 3:return e.abrupt("return",this.apiCall.post(this.endpointPath(),t,n));case 4:case"end":return e.stop()}}),e,this)}))),function(e){return h.apply(this,arguments)})},{key:"upsert",value:(p=P(A().mark((function e(t){var n,r=arguments;return A().wrap((function(e){for(;;)switch(e.prev=e.next){case 0:if(n=r.length>1&&void 0!==r[1]?r[1]:{},t){e.next=3;break}throw new Error("No document provided");case 3:return e.abrupt("return",this.apiCall.post(this.endpointPath(),t,Object.assign({},n,{action:"upsert"})));case 4:case"end":return e.stop()}}),e,this)}))),function(e){return p.apply(this,arguments)})},{key:"update",value:(l=P(A().mark((function e(t){var n,r=arguments;return A().wrap((function(e){for(;;)switch(e.prev=e.next){case 0:if(n=r.length>1&&void 0!==r[1]?r[1]:{},t){e.next=3;break}throw new Error("No document provided");case 3:if(null==n.filter_by){e.next=7;break}return e.abrupt("return",this.apiCall.patch(this.endpointPath(),t,Object.assign({},n)));case 7:return e.abrupt("return",this.apiCall.post(this.endpointPath(),t,Object.assign({},n,{action:"update"})));case 8:case"end":return e.stop()}}),e,this)}))),function(e){return l.apply(this,arguments)})},{key:"delete",value:(u=P(A().mark((function e(){var t,n=arguments;return A().wrap((function(e){for(;;)switch(e.prev=e.next){case 0:return t=n.length>0&&void 0!==n[0]?n[0]:{},e.abrupt("return",this.apiCall.delete(this.endpointPath(),t));case 2:case"end":return e.stop()}}),e,this)}))),function(){return u.apply(this,arguments)})},{key:"createMany",value:(s=P(A().mark((function e(t){var n,r=arguments;return A().wrap((function(e){for(;;)switch(e.prev=e.next){case 0:return n=r.length>1&&void 0!==r[1]?r[1]:{},this.configuration.logger.warn("createMany is deprecated and will be removed in a future version. Use import instead, which now takes both an array of documents or a JSONL string of documents"),e.abrupt("return",this.import(t,n));case 3:case"end":return e.stop()}}),e,this)}))),function(e){return s.apply(this,arguments)})},{key:"import",value:(a=P(A().mark((function e(t){var n,r,o,i,a,s=arguments;return A().wrap((function(e){for(;;)switch(e.prev=e.next){case 0:if(n=s.length>1&&void 0!==s[1]?s[1]:{},!Array.isArray(t)){e.next=15;break}if(0!==t.length){e.next=4;break}throw new $t("No documents provided");case 4:e.prev=4,r=t.map((function(e){return JSON.stringify(e)})).join("\n"),e.next=13;break;case 8:if(e.prev=8,e.t0=e.catch(4),!(e.t0 instanceof RangeError&&e.t0.message.includes("Too many properties to enumerate"))){e.next=12;break}throw new Error("".concat(e.t0,"\n It looks like you have reached a Node.js limit that restricts the number of keys in an Object: https://stackoverflow.com/questions/9282869/are-there-limits-to-the-number-of-properties-in-a-javascript-object\n\n Please try reducing the number of keys in your document, or using CURL to import your data.\n "));case 12:throw new Error(e.t0);case 13:e.next=18;break;case 15:if(null!=(c=r=t)&&""!==c&&0!==c.length){e.next=18;break}throw new $t("No documents provided");case 18:return e.next=20,this.apiCall.performRequest("post",this.endpointPath("import"),{queryParameters:n,bodyParameters:r,additionalHeaders:{"Content-Type":"text/plain"},skipConnectionTimeout:!0,enableKeepAlive:!!In});case 20:if(o=e.sent,!Array.isArray(t)){e.next=31;break}if(i=o.split("\n").map((function(e){return JSON.parse(e)})),!((a=i.filter((function(e){return!1===e.success}))).length>0)){e.next=28;break}throw new kn("".concat(i.length-a.length," documents imported successfully, ").concat(a.length," documents failed during import. Use `error.importResults` from the raised exception to get a detailed error reason for each document."),i,{documentsInJSONLFormat:r,options:n,failedItems:a,successCount:i.length-a.length});case 28:return e.abrupt("return",i);case 29:e.next=32;break;case 31:return e.abrupt("return",o);case 32:case"end":return e.stop()}var c}),e,this,[[4,8]])}))),function(e){return a.apply(this,arguments)})},{key:"importStream",value:(i=P(A().mark((function e(t){var n,r,o,i,a=arguments;return A().wrap((function(e){for(;;)switch(e.prev=e.next){case 0:return n=a.length>1&&void 0!==a[1]?a[1]:{},e.next=3,this.apiCall.performRequest("post",this.endpointPath("import"),{queryParameters:n,bodyParameters:t,additionalHeaders:{"Content-Type":"text/plain"},skipConnectionTimeout:!0,enableKeepAlive:!!In});case 3:if(r=e.sent,o=r.split("\n").map((function(e){return JSON.parse(e)})),!((i=o.filter((function(e){return!1===e.success}))).length>0)){e.next=10;break}throw new kn("".concat(o.length-i.length," documents imported successfully, ").concat(i.length," documents failed during import. Use `error.importResults` from the raised exception to get a detailed error reason for each document."),o,{documentsInJSONLFormat:t,options:n,failedItems:i,successCount:o.length-i.length});case 10:return e.abrupt("return",o);case 11:case"end":return e.stop()}}),e,this)}))),function(e){return i.apply(this,arguments)})},{key:"export",value:(r=P(A().mark((function e(){var t,n=arguments;return A().wrap((function(e){for(;;)switch(e.prev=e.next){case 0:return t=n.length>0&&void 0!==n[0]?n[0]:{},e.abrupt("return",this.apiCall.get(this.endpointPath("export"),t));case 2:case"end":return e.stop()}}),e,this)}))),function(){return r.apply(this,arguments)})},{key:"exportStream",value:(n=P(A().mark((function e(){var t,n=arguments;return A().wrap((function(e){for(;;)switch(e.prev=e.next){case 0:return t=n.length>0&&void 0!==n[0]?n[0]:{},e.abrupt("return",this.apiCall.get(this.endpointPath("export"),t,{responseType:"stream"}));case 2:case"end":return e.stop()}}),e,this)}))),function(){return n.apply(this,arguments)})}]),t}(jn),Fn=function(){function e(t,n){o(this,e),this.collectionName=t,this.apiCall=n}var t,n;return c(e,[{key:"upsert",value:(n=P(A().mark((function e(t,n){return A().wrap((function(e){for(;;)switch(e.prev=e.next){case 0:return e.abrupt("return",this.apiCall.put(this.endpointPath(t),n));case 1:case"end":return e.stop()}}),e,this)}))),function(e,t){return n.apply(this,arguments)})},{key:"retrieve",value:(t=P(A().mark((function e(){return A().wrap((function(e){for(;;)switch(e.prev=e.next){case 0:return e.abrupt("return",this.apiCall.get(this.endpointPath()));case 1:case"end":return e.stop()}}),e,this)}))),function(){return t.apply(this,arguments)})},{key:"endpointPath",value:function(t){return"".concat(bn.RESOURCEPATH,"/").concat(this.collectionName).concat(e.RESOURCEPATH).concat(void 0===t?"":"/"+encodeURIComponent(t))}}],[{key:"RESOURCEPATH",get:function(){return"/overrides"}}]),e}(),Dn=function(){function e(t,n,r){o(this,e),this.collectionName=t,this.overrideId=n,this.apiCall=r}var t,n;return c(e,[{key:"retrieve",value:(n=P(A().mark((function e(){return A().wrap((function(e){for(;;)switch(e.prev=e.next){case 0:return e.abrupt("return",this.apiCall.get(this.endpointPath()));case 1:case"end":return e.stop()}}),e,this)}))),function(){return n.apply(this,arguments)})},{key:"delete",value:(t=P(A().mark((function e(){return A().wrap((function(e){for(;;)switch(e.prev=e.next){case 0:return e.abrupt("return",this.apiCall.delete(this.endpointPath()));case 1:case"end":return e.stop()}}),e,this)}))),function(){return t.apply(this,arguments)})},{key:"endpointPath",value:function(){return"".concat(bn.RESOURCEPATH,"/").concat(encodeURIComponent(this.collectionName)).concat(Fn.RESOURCEPATH,"/").concat(encodeURIComponent(this.overrideId))}}]),e}(),Hn=function(){function e(t,n){o(this,e),this.collectionName=t,this.apiCall=n}var t,n;return c(e,[{key:"upsert",value:(n=P(A().mark((function e(t,n){return A().wrap((function(e){for(;;)switch(e.prev=e.next){case 0:return e.abrupt("return",this.apiCall.put(this.endpointPath(t),n));case 1:case"end":return e.stop()}}),e,this)}))),function(e,t){return n.apply(this,arguments)})},{key:"retrieve",value:(t=P(A().mark((function e(){return A().wrap((function(e){for(;;)switch(e.prev=e.next){case 0:return e.abrupt("return",this.apiCall.get(this.endpointPath()));case 1:case"end":return e.stop()}}),e,this)}))),function(){return t.apply(this,arguments)})},{key:"endpointPath",value:function(t){return"".concat(bn.RESOURCEPATH,"/").concat(encodeURIComponent(this.collectionName)).concat(e.RESOURCEPATH).concat(void 0===t?"":"/"+encodeURIComponent(t))}}],[{key:"RESOURCEPATH",get:function(){return"/synonyms"}}]),e}(),Bn=function(){function e(t,n,r){o(this,e),this.collectionName=t,this.synonymId=n,this.apiCall=r}var t,n;return c(e,[{key:"retrieve",value:(n=P(A().mark((function e(){return A().wrap((function(e){for(;;)switch(e.prev=e.next){case 0:return e.abrupt("return",this.apiCall.get(this.endpointPath()));case 1:case"end":return e.stop()}}),e,this)}))),function(){return n.apply(this,arguments)})},{key:"delete",value:(t=P(A().mark((function e(){return A().wrap((function(e){for(;;)switch(e.prev=e.next){case 0:return e.abrupt("return",this.apiCall.delete(this.endpointPath()));case 1:case"end":return e.stop()}}),e,this)}))),function(){return t.apply(this,arguments)})},{key:"endpointPath",value:function(){return"".concat(bn.RESOURCEPATH,"/").concat(encodeURIComponent(this.collectionName)).concat(Hn.RESOURCEPATH,"/").concat(encodeURIComponent(this.synonymId))}}]),e}(),Mn=function(){function e(t,n,r){o(this,e),this.collectionName=t,this.documentId=n,this.apiCall=r}var t,n,r;return c(e,[{key:"retrieve",value:(r=P(A().mark((function e(){return A().wrap((function(e){for(;;)switch(e.prev=e.next){case 0:return e.abrupt("return",this.apiCall.get(this.endpointPath()));case 1:case"end":return e.stop()}}),e,this)}))),function(){return r.apply(this,arguments)})},{key:"delete",value:(n=P(A().mark((function e(t){return A().wrap((function(e){for(;;)switch(e.prev=e.next){case 0:return e.abrupt("return",this.apiCall.delete(this.endpointPath(),t));case 1:case"end":return e.stop()}}),e,this)}))),function(e){return n.apply(this,arguments)})},{key:"update",value:(t=P(A().mark((function e(t){var n,r=arguments;return A().wrap((function(e){for(;;)switch(e.prev=e.next){case 0:return n=r.length>1&&void 0!==r[1]?r[1]:{},e.abrupt("return",this.apiCall.patch(this.endpointPath(),t,n));case 2:case"end":return e.stop()}}),e,this)}))),function(e){return t.apply(this,arguments)})},{key:"endpointPath",value:function(){return"".concat(bn.RESOURCEPATH,"/").concat(encodeURIComponent(this.collectionName)).concat(qn.RESOURCEPATH,"/").concat(encodeURIComponent(this.documentId))}}]),e}(),Kn=function(){function e(t,n,r){o(this,e),u(this,"individualDocuments",{}),u(this,"individualOverrides",{}),u(this,"individualSynonyms",{}),this.name=t,this.apiCall=n,this.configuration=r,this.name=t,this.apiCall=n,this.configuration=r,this._documents=new qn(this.name,this.apiCall,this.configuration),this._overrides=new Fn(this.name,this.apiCall),this._synonyms=new Hn(this.name,this.apiCall)}var t,n,r,i;return c(e,[{key:"retrieve",value:(i=P(A().mark((function e(){return A().wrap((function(e){for(;;)switch(e.prev=e.next){case 0:return e.abrupt("return",this.apiCall.get(this.endpointPath()));case 1:case"end":return e.stop()}}),e,this)}))),function(){return i.apply(this,arguments)})},{key:"update",value:(r=P(A().mark((function e(t){return A().wrap((function(e){for(;;)switch(e.prev=e.next){case 0:return e.abrupt("return",this.apiCall.patch(this.endpointPath(),t));case 1:case"end":return e.stop()}}),e,this)}))),function(e){return r.apply(this,arguments)})},{key:"delete",value:(n=P(A().mark((function e(){var t,n=arguments;return A().wrap((function(e){for(;;)switch(e.prev=e.next){case 0:return t=n.length>0&&void 0!==n[0]?n[0]:{},e.abrupt("return",this.apiCall.delete(this.endpointPath(),t));case 2:case"end":return e.stop()}}),e,this)}))),function(){return n.apply(this,arguments)})},{key:"exists",value:(t=P(A().mark((function e(){return A().wrap((function(e){for(;;)switch(e.prev=e.next){case 0:return e.prev=0,e.next=3,this.retrieve();case 3:return e.abrupt("return",!0);case 6:if(e.prev=6,e.t0=e.catch(0),!(e.t0 instanceof nn)){e.next=10;break}return e.abrupt("return",!1);case 10:throw e.t0;case 11:case"end":return e.stop()}}),e,this,[[0,6]])}))),function(){return t.apply(this,arguments)})},{key:"documents",value:function(e){return e?(void 0===this.individualDocuments[e]&&(this.individualDocuments[e]=new Mn(this.name,e,this.apiCall)),this.individualDocuments[e]):this._documents}},{key:"overrides",value:function(e){return void 0===e?this._overrides:(void 0===this.individualOverrides[e]&&(this.individualOverrides[e]=new Dn(this.name,e,this.apiCall)),this.individualOverrides[e])}},{key:"synonyms",value:function(e){return void 0===e?this._synonyms:(void 0===this.individualSynonyms[e]&&(this.individualSynonyms[e]=new Bn(this.name,e,this.apiCall)),this.individualSynonyms[e])}},{key:"endpointPath",value:function(){return"".concat(bn.RESOURCEPATH,"/").concat(encodeURIComponent(this.name))}}]),e}(),zn="/aliases",Jn=function(){function e(t){o(this,e),this.apiCall=t}var t,n;return c(e,[{key:"upsert",value:(n=P(A().mark((function e(t,n){return A().wrap((function(e){for(;;)switch(e.prev=e.next){case 0:return e.abrupt("return",this.apiCall.put(this.endpointPath(t),n));case 1:case"end":return e.stop()}}),e,this)}))),function(e,t){return n.apply(this,arguments)})},{key:"retrieve",value:(t=P(A().mark((function e(){return A().wrap((function(e){for(;;)switch(e.prev=e.next){case 0:return e.abrupt("return",this.apiCall.get(zn));case 1:case"end":return e.stop()}}),e,this)}))),function(){return t.apply(this,arguments)})},{key:"endpointPath",value:function(t){return"".concat(e.RESOURCEPATH,"/").concat(encodeURIComponent(t))}}],[{key:"RESOURCEPATH",get:function(){return zn}}]),e}(),Wn=function(){function e(t,n){o(this,e),this.name=t,this.apiCall=n}var t,n;return c(e,[{key:"retrieve",value:(n=P(A().mark((function e(){return A().wrap((function(e){for(;;)switch(e.prev=e.next){case 0:return e.abrupt("return",this.apiCall.get(this.endpointPath()));case 1:case"end":return e.stop()}}),e,this)}))),function(){return n.apply(this,arguments)})},{key:"delete",value:(t=P(A().mark((function e(){return A().wrap((function(e){for(;;)switch(e.prev=e.next){case 0:return e.abrupt("return",this.apiCall.delete(this.endpointPath()));case 1:case"end":return e.stop()}}),e,this)}))),function(){return t.apply(this,arguments)})},{key:"endpointPath",value:function(){return"".concat(Jn.RESOURCEPATH,"/").concat(encodeURIComponent(this.name))}}]),e}(),Gn=n(612),Vn="/keys",Qn=function(){function e(t){o(this,e),this.apiCall=t,this.apiCall=t}var t,n;return c(e,[{key:"create",value:(n=P(A().mark((function t(n){return A().wrap((function(t){for(;;)switch(t.prev=t.next){case 0:return t.abrupt("return",this.apiCall.post(e.RESOURCEPATH,n));case 1:case"end":return t.stop()}}),t,this)}))),function(e){return n.apply(this,arguments)})},{key:"retrieve",value:(t=P(A().mark((function e(){return A().wrap((function(e){for(;;)switch(e.prev=e.next){case 0:return e.abrupt("return",this.apiCall.get(Vn));case 1:case"end":return e.stop()}}),e,this)}))),function(){return t.apply(this,arguments)})},{key:"generateScopedSearchKey",value:function(e,t){var n=Tn(t),r=JSON.stringify(n),o=Buffer.from((0,Gn.createHmac)("sha256",e).update(r).digest("base64")),i=e.substr(0,4),a="".concat(o).concat(i).concat(r);return Buffer.from(a).toString("base64")}}],[{key:"RESOURCEPATH",get:function(){return Vn}}]),e}(),$n=function(){function e(t,n){o(this,e),this.id=t,this.apiCall=n}var t,n;return c(e,[{key:"retrieve",value:(n=P(A().mark((function e(){return A().wrap((function(e){for(;;)switch(e.prev=e.next){case 0:return e.abrupt("return",this.apiCall.get(this.endpointPath()));case 1:case"end":return e.stop()}}),e,this)}))),function(){return n.apply(this,arguments)})},{key:"delete",value:(t=P(A().mark((function e(){return A().wrap((function(e){for(;;)switch(e.prev=e.next){case 0:return e.abrupt("return",this.apiCall.delete(this.endpointPath()));case 1:case"end":return e.stop()}}),e,this)}))),function(){return t.apply(this,arguments)})},{key:"endpointPath",value:function(){return"".concat(Qn.RESOURCEPATH,"/").concat(encodeURIComponent(this.id))}}]),e}(),Xn=function(){function e(t){o(this,e),this.apiCall=t}var t;return c(e,[{key:"retrieve",value:(t=P(A().mark((function e(){return A().wrap((function(e){for(;;)switch(e.prev=e.next){case 0:return e.abrupt("return",this.apiCall.get("/debug"));case 1:case"end":return e.stop()}}),e,this)}))),function(){return t.apply(this,arguments)})}]),e}(),Yn=function(){function e(t){o(this,e),this.apiCall=t}var t;return c(e,[{key:"retrieve",value:(t=P(A().mark((function e(){return A().wrap((function(e){for(;;)switch(e.prev=e.next){case 0:return e.abrupt("return",this.apiCall.get("/metrics.json"));case 1:case"end":return e.stop()}}),e,this)}))),function(){return t.apply(this,arguments)})}]),e}(),Zn=function(){function e(t){o(this,e),this.apiCall=t}var t;return c(e,[{key:"retrieve",value:(t=P(A().mark((function e(){return A().wrap((function(e){for(;;)switch(e.prev=e.next){case 0:return e.abrupt("return",this.apiCall.get("/stats.json"));case 1:case"end":return e.stop()}}),e,this)}))),function(){return t.apply(this,arguments)})}]),e}(),er=function(){function e(t){o(this,e),this.apiCall=t}var t;return c(e,[{key:"retrieve",value:(t=P(A().mark((function e(){return A().wrap((function(e){for(;;)switch(e.prev=e.next){case 0:return e.abrupt("return",this.apiCall.get("/health"));case 1:case"end":return e.stop()}}),e,this)}))),function(){return t.apply(this,arguments)})}]),e}(),tr=function(){function e(t){o(this,e),this.apiCall=t}var t;return c(e,[{key:"perform",value:(t=P(A().mark((function e(t){var n,r=arguments;return A().wrap((function(e){for(;;)switch(e.prev=e.next){case 0:return n=r.length>1&&void 0!==r[1]?r[1]:{},e.abrupt("return",this.apiCall.post("".concat("/operations","/").concat(t),{},n));case 2:case"end":return e.stop()}}),e,this)}))),function(e){return t.apply(this,arguments)})}]),e}();function nr(e,t){var n=Object.keys(e);if(Object.getOwnPropertySymbols){var r=Object.getOwnPropertySymbols(e);t&&(r=r.filter((function(t){return Object.getOwnPropertyDescriptor(e,t).enumerable}))),n.push.apply(n,r)}return n}function rr(e){for(var t=1;t2&&void 0!==arguments[2]&&arguments[2];o(this,e),this.apiCall=t,this.configuration=n,this.useTextContentType=r,this.requestWithCache=new Pn}var t;return c(e,[{key:"clearCache",value:function(){this.requestWithCache.clearCache()}},{key:"perform",value:(t=P(A().mark((function e(t){var n,r,o,i,a,s,c,u,l=arguments;return A().wrap((function(e){for(;;)switch(e.prev=e.next){case 0:return n=l.length>1&&void 0!==l[1]?l[1]:{},r=(l.length>2&&void 0!==l[2]?l[2]:{}).cacheSearchResultsForSeconds,o=void 0===r?this.configuration.cacheSearchResultsForSeconds:r,i={},this.useTextContentType&&(i["content-type"]="text/plain"),a={},!0===this.configuration.useServerSideSearchCache&&(a.use_cache=!0),s=rr(rr({},n),a),c=rr(rr({},t),{},{searches:t.searches.map(Tn)}),u=Tn(s),e.abrupt("return",this.requestWithCache.perform(this.apiCall,this.apiCall.post,["/multi_search",c,u,i],{cacheResponseForSeconds:o}));case 10:case"end":return e.stop()}}),e,this)}))),function(e){return t.apply(this,arguments)})}]),e}(),ir=function(){function e(t){o(this,e),this.apiCall=t}var t,n;return c(e,[{key:"upsert",value:(n=P(A().mark((function e(t,n){var r,o;return A().wrap((function(e){for(;;)switch(e.prev=e.next){case 0:if("object"!==i(n.value)||!("searches"in n.value)){e.next=3;break}return r=n.value.searches.map((function(e){return Tn(e)})),e.abrupt("return",this.apiCall.put(this.endpointPath(t),{value:{searches:r}}));case 3:return o=Tn(n.value),e.abrupt("return",this.apiCall.put(this.endpointPath(t),{value:o}));case 5:case"end":return e.stop()}}),e,this)}))),function(e,t){return n.apply(this,arguments)})},{key:"retrieve",value:(t=P(A().mark((function e(){return A().wrap((function(e){for(;;)switch(e.prev=e.next){case 0:return e.abrupt("return",this.apiCall.get(this.endpointPath()));case 1:case"end":return e.stop()}}),e,this)}))),function(){return t.apply(this,arguments)})},{key:"endpointPath",value:function(t){return"".concat(e.RESOURCEPATH).concat(void 0===t?"":"/"+encodeURIComponent(t))}}],[{key:"RESOURCEPATH",get:function(){return"/presets"}}]),e}(),ar=function(){function e(t,n){o(this,e),this.presetId=t,this.apiCall=n}var t,n;return c(e,[{key:"retrieve",value:(n=P(A().mark((function e(){return A().wrap((function(e){for(;;)switch(e.prev=e.next){case 0:return e.abrupt("return",this.apiCall.get(this.endpointPath()));case 1:case"end":return e.stop()}}),e,this)}))),function(){return n.apply(this,arguments)})},{key:"delete",value:(t=P(A().mark((function e(){return A().wrap((function(e){for(;;)switch(e.prev=e.next){case 0:return e.abrupt("return",this.apiCall.delete(this.endpointPath()));case 1:case"end":return e.stop()}}),e,this)}))),function(){return t.apply(this,arguments)})},{key:"endpointPath",value:function(){return"".concat(ir.RESOURCEPATH,"/").concat(encodeURIComponent(this.presetId))}}]),e}(),sr=function(){function e(t){o(this,e),this.apiCall=t,this.apiCall=t}var t,n;return c(e,[{key:"upsert",value:(n=P(A().mark((function e(t,n){return A().wrap((function(e){for(;;)switch(e.prev=e.next){case 0:return e.abrupt("return",this.apiCall.put(this.endpointPath(t),n));case 1:case"end":return e.stop()}}),e,this)}))),function(e,t){return n.apply(this,arguments)})},{key:"retrieve",value:(t=P(A().mark((function e(){return A().wrap((function(e){for(;;)switch(e.prev=e.next){case 0:return e.abrupt("return",this.apiCall.get(this.endpointPath()));case 1:case"end":return e.stop()}}),e,this)}))),function(){return t.apply(this,arguments)})},{key:"endpointPath",value:function(t){return"".concat(e.RESOURCEPATH).concat(void 0===t?"":"/"+encodeURIComponent(t))}}],[{key:"RESOURCEPATH",get:function(){return"/analytics/rules"}}]),e}(),cr=function(){function e(t,n){o(this,e),this.name=t,this.apiCall=n}var t,n;return c(e,[{key:"retrieve",value:(n=P(A().mark((function e(){return A().wrap((function(e){for(;;)switch(e.prev=e.next){case 0:return e.abrupt("return",this.apiCall.get(this.endpointPath()));case 1:case"end":return e.stop()}}),e,this)}))),function(){return n.apply(this,arguments)})},{key:"delete",value:(t=P(A().mark((function e(){return A().wrap((function(e){for(;;)switch(e.prev=e.next){case 0:return e.abrupt("return",this.apiCall.delete(this.endpointPath()));case 1:case"end":return e.stop()}}),e,this)}))),function(){return t.apply(this,arguments)})},{key:"endpointPath",value:function(){return"".concat(sr.RESOURCEPATH,"/").concat(encodeURIComponent(this.name))}}]),e}(),ur=function(){function e(t){o(this,e),this.apiCall=t,this.apiCall=t}var t;return c(e,[{key:"create",value:(t=P(A().mark((function e(t){return A().wrap((function(e){for(;;)switch(e.prev=e.next){case 0:return e.abrupt("return",this.apiCall.post(this.endpointPath(),t));case 1:case"end":return e.stop()}}),e,this)}))),function(e){return t.apply(this,arguments)})},{key:"endpointPath",value:function(t){return"".concat(e.RESOURCEPATH).concat(void 0===t?"":"/"+encodeURIComponent(t))}}],[{key:"RESOURCEPATH",get:function(){return"/analytics/events"}}]),e}(),lr=function(){function e(t){o(this,e),u(this,"individualAnalyticsRules",{}),this.apiCall=t,this.apiCall=t,this._analyticsRules=new sr(this.apiCall),this._analyticsEvents=new ur(this.apiCall)}return c(e,[{key:"rules",value:function(e){return void 0===e?this._analyticsRules:(void 0===this.individualAnalyticsRules[e]&&(this.individualAnalyticsRules[e]=new cr(e,this.apiCall)),this.individualAnalyticsRules[e])}},{key:"events",value:function(){return this._analyticsEvents}}],[{key:"RESOURCEPATH",get:function(){return"/analytics"}}]),e}(),pr=function(){function e(t){o(this,e),this.apiCall=t}var t,n;return c(e,[{key:"upsert",value:(n=P(A().mark((function e(t,n){return A().wrap((function(e){for(;;)switch(e.prev=e.next){case 0:return e.abrupt("return",this.apiCall.put(this.endpointPath(t),n));case 1:case"end":return e.stop()}}),e,this)}))),function(e,t){return n.apply(this,arguments)})},{key:"retrieve",value:(t=P(A().mark((function e(){return A().wrap((function(e){for(;;)switch(e.prev=e.next){case 0:return e.abrupt("return",this.apiCall.get(this.endpointPath()));case 1:case"end":return e.stop()}}),e,this)}))),function(){return t.apply(this,arguments)})},{key:"endpointPath",value:function(t){return"".concat(e.RESOURCEPATH).concat(void 0===t?"":"/"+encodeURIComponent(t))}}],[{key:"RESOURCEPATH",get:function(){return"/stopwords"}}]),e}(),hr=function(){function e(t,n){o(this,e),this.stopwordId=t,this.apiCall=n}var t,n;return c(e,[{key:"retrieve",value:(n=P(A().mark((function e(){return A().wrap((function(e){for(;;)switch(e.prev=e.next){case 0:return e.abrupt("return",this.apiCall.get(this.endpointPath()));case 1:case"end":return e.stop()}}),e,this)}))),function(){return n.apply(this,arguments)})},{key:"delete",value:(t=P(A().mark((function e(){return A().wrap((function(e){for(;;)switch(e.prev=e.next){case 0:return e.abrupt("return",this.apiCall.delete(this.endpointPath()));case 1:case"end":return e.stop()}}),e,this)}))),function(){return t.apply(this,arguments)})},{key:"endpointPath",value:function(){return"".concat(pr.RESOURCEPATH,"/").concat(encodeURIComponent(this.stopwordId))}}]),e}(),fr=function(){function e(t){o(this,e),this.apiCall=t,this.apiCall=t}var t,n;return c(e,[{key:"create",value:(n=P(A().mark((function e(t){return A().wrap((function(e){for(;;)switch(e.prev=e.next){case 0:return e.abrupt("return",this.apiCall.post(this.endpointPath(),t));case 1:case"end":return e.stop()}}),e,this)}))),function(e){return n.apply(this,arguments)})},{key:"retrieve",value:(t=P(A().mark((function e(){return A().wrap((function(e){for(;;)switch(e.prev=e.next){case 0:return e.abrupt("return",this.apiCall.get(this.endpointPath()));case 1:case"end":return e.stop()}}),e,this)}))),function(){return t.apply(this,arguments)})},{key:"endpointPath",value:function(t){return"".concat(e.RESOURCEPATH).concat(void 0===t?"":"/"+encodeURIComponent(t))}}],[{key:"RESOURCEPATH",get:function(){return"/conversations/models"}}]),e}(),dr=function(){function e(t,n){o(this,e),this.id=t,this.apiCall=n}var t,n,r;return c(e,[{key:"update",value:(r=P(A().mark((function e(t){return A().wrap((function(e){for(;;)switch(e.prev=e.next){case 0:return e.abrupt("return",this.apiCall.put(this.endpointPath(),t));case 1:case"end":return e.stop()}}),e,this)}))),function(e){return r.apply(this,arguments)})},{key:"retrieve",value:(n=P(A().mark((function e(){return A().wrap((function(e){for(;;)switch(e.prev=e.next){case 0:return e.abrupt("return",this.apiCall.get(this.endpointPath()));case 1:case"end":return e.stop()}}),e,this)}))),function(){return n.apply(this,arguments)})},{key:"delete",value:(t=P(A().mark((function e(){return A().wrap((function(e){for(;;)switch(e.prev=e.next){case 0:return e.abrupt("return",this.apiCall.delete(this.endpointPath()));case 1:case"end":return e.stop()}}),e,this)}))),function(){return t.apply(this,arguments)})},{key:"endpointPath",value:function(){return"".concat(fr.RESOURCEPATH,"/").concat(encodeURIComponent(this.id))}}]),e}(),yr="/conversations",vr=function(){function e(t){o(this,e),u(this,"individualConversationModels",{}),this.apiCall=t,this.apiCall=t,this._conversationsModels=new fr(this.apiCall)}var t;return c(e,[{key:"retrieve",value:(t=P(A().mark((function e(){return A().wrap((function(e){for(;;)switch(e.prev=e.next){case 0:return e.abrupt("return",this.apiCall.get(yr));case 1:case"end":return e.stop()}}),e,this)}))),function(){return t.apply(this,arguments)})},{key:"models",value:function(e){return void 0===e?this._conversationsModels:(void 0===this.individualConversationModels[e]&&(this.individualConversationModels[e]=new dr(e,this.apiCall)),this.individualConversationModels[e])}}],[{key:"RESOURCEPATH",get:function(){return yr}}]),e}(),mr=function(){function e(t,n){o(this,e),this.id=t,this.apiCall=n}var t,n,r;return c(e,[{key:"retrieve",value:(r=P(A().mark((function e(){return A().wrap((function(e){for(;;)switch(e.prev=e.next){case 0:return e.abrupt("return",this.apiCall.get(this.endpointPath()));case 1:case"end":return e.stop()}}),e,this)}))),function(){return r.apply(this,arguments)})},{key:"update",value:(n=P(A().mark((function e(t){return A().wrap((function(e){for(;;)switch(e.prev=e.next){case 0:return e.abrupt("return",this.apiCall.put(this.endpointPath(),t));case 1:case"end":return e.stop()}}),e,this)}))),function(e){return n.apply(this,arguments)})},{key:"delete",value:(t=P(A().mark((function e(){return A().wrap((function(e){for(;;)switch(e.prev=e.next){case 0:return e.abrupt("return",this.apiCall.delete(this.endpointPath()));case 1:case"end":return e.stop()}}),e,this)}))),function(){return t.apply(this,arguments)})},{key:"endpointPath",value:function(){return"".concat(vr.RESOURCEPATH,"/").concat(encodeURIComponent(this.id))}}]),e}(),gr=function(){function e(t){o(this,e),this.apiCall=t,this.apiCall=t}var t,n;return c(e,[{key:"upsert",value:(n=P(A().mark((function e(t,n){var r,o;return A().wrap((function(e){for(;;)switch(e.prev=e.next){case 0:return r=Array.isArray(n)?n.map((function(e){return JSON.stringify(e)})).join("\n"):n,e.next=3,this.apiCall.performRequest("post",this.endpointPath("import"),{queryParameters:{id:t},bodyParameters:r,additionalHeaders:{"Content-Type":"text/plain"},skipConnectionTimeout:!0});case 3:return o=e.sent,e.abrupt("return",Array.isArray(n)?o.split("\n").map((function(e){return JSON.parse(e)})):o);case 5:case"end":return e.stop()}}),e,this)}))),function(e,t){return n.apply(this,arguments)})},{key:"retrieve",value:(t=P(A().mark((function e(){return A().wrap((function(e){for(;;)switch(e.prev=e.next){case 0:return e.abrupt("return",this.apiCall.get(this.endpointPath()));case 1:case"end":return e.stop()}}),e,this)}))),function(){return t.apply(this,arguments)})},{key:"endpointPath",value:function(t){return void 0===t?"".concat(e.RESOURCEPATH):"".concat(e.RESOURCEPATH,"/").concat(encodeURIComponent(t))}}],[{key:"RESOURCEPATH",get:function(){return"/stemming/dictionaries"}}]),e}(),wr=function(){function e(t,n){o(this,e),this.id=t,this.apiCall=n}var t;return c(e,[{key:"retrieve",value:(t=P(A().mark((function e(){return A().wrap((function(e){for(;;)switch(e.prev=e.next){case 0:return e.abrupt("return",this.apiCall.get(this.endpointPath()));case 1:case"end":return e.stop()}}),e,this)}))),function(){return t.apply(this,arguments)})},{key:"endpointPath",value:function(){return"".concat(gr.RESOURCEPATH,"/").concat(encodeURIComponent(this.id))}}]),e}(),br=function(){function e(t){o(this,e),u(this,"individualStemmingDictionaries",{}),this.apiCall=t,this.apiCall=t,this._stemmingDictionaries=new gr(this.apiCall)}return c(e,[{key:"dictionaries",value:function(e){return void 0===e?this._stemmingDictionaries:(void 0===this.individualStemmingDictionaries[e]&&(this.individualStemmingDictionaries[e]=new wr(e,this.apiCall)),this.individualStemmingDictionaries[e])}}],[{key:"RESOURCEPATH",get:function(){return"/stemming"}}]),e}(),Cr=function(){function e(t){var n;o(this,e),t.sendApiKeyAsQueryParam=null!==(n=t.sendApiKeyAsQueryParam)&&void 0!==n&&n,this.configuration=new S(t),this.apiCall=new gn(this.configuration),this.debug=new Xn(this.apiCall),this.metrics=new Yn(this.apiCall),this.stats=new Zn(this.apiCall),this.health=new er(this.apiCall),this.operations=new tr(this.apiCall),this.multiSearch=new or(this.apiCall,this.configuration),this._collections=new bn(this.apiCall),this.individualCollections={},this._aliases=new Jn(this.apiCall),this.individualAliases={},this._keys=new Qn(this.apiCall),this.individualKeys={},this._presets=new ir(this.apiCall),this.individualPresets={},this._stopwords=new pr(this.apiCall),this.individualStopwords={},this.analytics=new lr(this.apiCall),this.stemming=new br(this.apiCall),this._conversations=new vr(this.apiCall),this.individualConversations={}}return c(e,[{key:"collections",value:function(e){return void 0===e?this._collections:(void 0===this.individualCollections[e]&&(this.individualCollections[e]=new Kn(e,this.apiCall,this.configuration)),this.individualCollections[e])}},{key:"aliases",value:function(e){return void 0===e?this._aliases:(void 0===this.individualAliases[e]&&(this.individualAliases[e]=new Wn(e,this.apiCall)),this.individualAliases[e])}},{key:"keys",value:function(e){return void 0===e?this._keys:(void 0===this.individualKeys[e]&&(this.individualKeys[e]=new $n(e,this.apiCall)),this.individualKeys[e])}},{key:"presets",value:function(e){return void 0===e?this._presets:(void 0===this.individualPresets[e]&&(this.individualPresets[e]=new ar(e,this.apiCall)),this.individualPresets[e])}},{key:"stopwords",value:function(e){return void 0===e?this._stopwords:(void 0===this.individualStopwords[e]&&(this.individualStopwords[e]=new hr(e,this.apiCall)),this.individualStopwords[e])}},{key:"conversations",value:function(e){return void 0===e?this._conversations:(void 0===this.individualConversations[e]&&(this.individualConversations[e]=new mr(e,this.apiCall)),this.individualConversations[e])}}]),e}();var Rr=function(){function e(t,n,r){o(this,e),this.name=t,this.apiCall=n,this.configuration=r,this._documents=new jn(this.name,this.apiCall,this.configuration)}return c(e,[{key:"documents",value:function(){return this._documents}}]),e}(),kr=function(){function e(t){var n;o(this,e),t.sendApiKeyAsQueryParam=null===(n=t.sendApiKeyAsQueryParam)||void 0===n||n,!0===t.sendApiKeyAsQueryParam&&(t.apiKey||"").length>2e3&&(console.warn("[typesense] API Key is longer than 2000 characters which is over the allowed limit, so disabling sending it as a query parameter."),t.sendApiKeyAsQueryParam=!1),this.configuration=new S(t),this.apiCall=new gn(this.configuration),this.multiSearch=new or(this.apiCall,this.configuration,!0),this.individualCollections={}}return c(e,[{key:"clearCache",value:function(){this.multiSearch.clearCache(),Object.entries(this.individualCollections).forEach((function(e){var t,n,r=(n=2,function(e){if(Array.isArray(e))return e}(t=e)||function(e,t){var n=null==e?null:"undefined"!=typeof Symbol&&e[Symbol.iterator]||e["@@iterator"];if(null!=n){var r,o,i,a,s=[],c=!0,u=!1;try{if(i=(n=n.call(e)).next,0===t){if(Object(n)!==n)return;c=!1}else for(;!(c=(r=i.call(n)).done)&&(s.push(r.value),s.length!==t);c=!0);}catch(e){u=!0,o=e}finally{try{if(!c&&null!=n.return&&(a=n.return(),Object(a)!==a))return}finally{if(u)throw o}}return s}}(t,n)||Sn(t,n)||function(){throw new TypeError("Invalid attempt to destructure non-iterable instance.\nIn order to be iterable, non-array objects must have a [Symbol.iterator]() method.")}());r[0],r[1].documents().clearCache()}))}},{key:"collections",value:function(e){if(e)return void 0===this.individualCollections[e]&&(this.individualCollections[e]=new Rr(e,this.apiCall,this.configuration)),this.individualCollections[e];throw new Error("Typesense.SearchClient only supports search operations, so the collectionName that needs to be searched must be specified. Use Typesense.Client if you need to access the collection object.")}}]),e}();const Er={Client:Cr,SearchClient:kr,Errors:t}})(),Typesense=r})(); +var Typesense;(()=>{var e={82:()=>{},150:(e,t,n)=>{var r=n(301).default;function i(){"use strict";e.exports=i=function(){return n},e.exports.__esModule=!0,e.exports.default=e.exports;var t,n={},o=Object.prototype,a=o.hasOwnProperty,s=Object.defineProperty||function(e,t,n){e[t]=n.value},c="function"==typeof Symbol?Symbol:{},u=c.iterator||"@@iterator",l=c.asyncIterator||"@@asyncIterator",p=c.toStringTag||"@@toStringTag";function h(e,t,n){return Object.defineProperty(e,t,{value:n,enumerable:!0,configurable:!0,writable:!0}),e[t]}try{h({},"")}catch(t){h=function(e,t,n){return e[t]=n}}function f(e,t,n,r){var i=t&&t.prototype instanceof b?t:b,o=Object.create(i.prototype),a=new U(r||[]);return s(o,"_invoke",{value:A(e,n,a)}),o}function d(e,t,n){try{return{type:"normal",arg:e.call(t,n)}}catch(e){return{type:"throw",arg:e}}}n.wrap=f;var y="suspendedStart",v="suspendedYield",m="executing",g="completed",w={};function b(){}function C(){}function R(){}var k={};h(k,u,(function(){return this}));var S=Object.getPrototypeOf,E=S&&S(S(_([])));E&&E!==o&&a.call(E,u)&&(k=E);var O=R.prototype=b.prototype=Object.create(k);function P(e){["next","throw","return"].forEach((function(t){h(e,t,(function(e){return this._invoke(t,e)}))}))}function x(e,t){function n(i,o,s,c){var u=d(e[i],e,o);if("throw"!==u.type){var l=u.arg,p=l.value;return p&&"object"==r(p)&&a.call(p,"__await")?t.resolve(p.__await).then((function(e){n("next",e,s,c)}),(function(e){n("throw",e,s,c)})):t.resolve(p).then((function(e){l.value=e,s(l)}),(function(e){return n("throw",e,s,c)}))}c(u.arg)}var i;s(this,"_invoke",{value:function(e,r){function o(){return new t((function(t,i){n(e,r,t,i)}))}return i=i?i.then(o,o):o()}})}function A(e,n,r){var i=y;return function(o,a){if(i===m)throw Error("Generator is already running");if(i===g){if("throw"===o)throw a;return{value:t,done:!0}}for(r.method=o,r.arg=a;;){var s=r.delegate;if(s){var c=T(s,r);if(c){if(c===w)continue;return c}}if("next"===r.method)r.sent=r._sent=r.arg;else if("throw"===r.method){if(i===y)throw i=g,r.arg;r.dispatchException(r.arg)}else"return"===r.method&&r.abrupt("return",r.arg);i=m;var u=d(e,n,r);if("normal"===u.type){if(i=r.done?g:v,u.arg===w)continue;return{value:u.arg,done:r.done}}"throw"===u.type&&(i=g,r.method="throw",r.arg=u.arg)}}}function T(e,n){var r=n.method,i=e.iterator[r];if(i===t)return n.delegate=null,"throw"===r&&e.iterator.return&&(n.method="return",n.arg=t,T(e,n),"throw"===n.method)||"return"!==r&&(n.method="throw",n.arg=new TypeError("The iterator does not provide a '"+r+"' method")),w;var o=d(i,e.iterator,n.arg);if("throw"===o.type)return n.method="throw",n.arg=o.arg,n.delegate=null,w;var a=o.arg;return a?a.done?(n[e.resultName]=a.value,n.next=e.nextLoc,"return"!==n.method&&(n.method="next",n.arg=t),n.delegate=null,w):a:(n.method="throw",n.arg=new TypeError("iterator result is not an object"),n.delegate=null,w)}function N(e){var t={tryLoc:e[0]};1 in e&&(t.catchLoc=e[1]),2 in e&&(t.finallyLoc=e[2],t.afterLoc=e[3]),this.tryEntries.push(t)}function j(e){var t=e.completion||{};t.type="normal",delete t.arg,e.completion=t}function U(e){this.tryEntries=[{tryLoc:"root"}],e.forEach(N,this),this.reset(!0)}function _(e){if(e||""===e){var n=e[u];if(n)return n.call(e);if("function"==typeof e.next)return e;if(!isNaN(e.length)){var i=-1,o=function n(){for(;++i=0;--i){var o=this.tryEntries[i],s=o.completion;if("root"===o.tryLoc)return r("end");if(o.tryLoc<=this.prev){var c=a.call(o,"catchLoc"),u=a.call(o,"finallyLoc");if(c&&u){if(this.prev=0;--n){var r=this.tryEntries[n];if(r.tryLoc<=this.prev&&a.call(r,"finallyLoc")&&this.prev=0;--t){var n=this.tryEntries[t];if(n.finallyLoc===e)return this.complete(n.completion,n.afterLoc),j(n),w}},catch:function(e){for(var t=this.tryEntries.length-1;t>=0;--t){var n=this.tryEntries[t];if(n.tryLoc===e){var r=n.completion;if("throw"===r.type){var i=r.arg;j(n)}return i}}throw Error("illegal catch attempt")},delegateYield:function(e,n,r){return this.delegate={iterator:_(e),resultName:n,nextLoc:r},"next"===this.method&&(this.arg=t),w}},n}e.exports=i,e.exports.__esModule=!0,e.exports.default=e.exports},301:e=>{function t(n){return e.exports=t="function"==typeof Symbol&&"symbol"==typeof Symbol.iterator?function(e){return typeof e}:function(e){return e&&"function"==typeof Symbol&&e.constructor===Symbol&&e!==Symbol.prototype?"symbol":typeof e},e.exports.__esModule=!0,e.exports.default=e.exports,t(n)}e.exports=t,e.exports.__esModule=!0,e.exports.default=e.exports},363:function(e,t,n){var r,i;!function(){"use strict";r=function(){var e=function(){},t="undefined",n=typeof window!==t&&typeof window.navigator!==t&&/Trident\/|MSIE /.test(window.navigator.userAgent),r=["trace","debug","info","warn","error"],i={},o=null;function a(e,t){var n=e[t];if("function"==typeof n.bind)return n.bind(e);try{return Function.prototype.bind.call(n,e)}catch(t){return function(){return Function.prototype.apply.apply(n,[e,arguments])}}}function s(){console.log&&(console.log.apply?console.log.apply(console,arguments):Function.prototype.apply.apply(console.log,[console,arguments])),console.trace&&console.trace()}function c(){for(var n=this.getLevel(),i=0;i=0&&t<=p.levels.SILENT)return t;throw new TypeError("log.setLevel() called with invalid level: "+e)}"string"==typeof e?h+=":"+e:"symbol"==typeof e&&(h=void 0),p.name=e,p.levels={TRACE:0,DEBUG:1,INFO:2,WARN:3,ERROR:4,SILENT:5},p.methodFactory=n||l,p.getLevel=function(){return null!=u?u:null!=s?s:a},p.setLevel=function(e,n){return u=d(e),!1!==n&&function(e){var n=(r[e]||"silent").toUpperCase();if(typeof window!==t&&h){try{return void(window.localStorage[h]=n)}catch(e){}try{window.document.cookie=encodeURIComponent(h)+"="+n+";"}catch(e){}}}(u),c.call(p)},p.setDefaultLevel=function(e){s=d(e),f()||p.setLevel(e,!1)},p.resetLevel=function(){u=null,function(){if(typeof window!==t&&h){try{window.localStorage.removeItem(h)}catch(e){}try{window.document.cookie=encodeURIComponent(h)+"=; expires=Thu, 01 Jan 1970 00:00:00 UTC"}catch(e){}}}(),c.call(p)},p.enableAll=function(e){p.setLevel(p.levels.TRACE,e)},p.disableAll=function(e){p.setLevel(p.levels.SILENT,e)},p.rebuild=function(){if(o!==p&&(a=d(o.getLevel())),c.call(p),o===p)for(var e in i)i[e].rebuild()},a=d(o?o.getLevel():"WARN");var y=f();null!=y&&(u=d(y)),c.call(p)}(o=new p).getLogger=function(e){if("symbol"!=typeof e&&"string"!=typeof e||""===e)throw new TypeError("You must supply a name when creating a logger.");var t=i[e];return t||(t=i[e]=new p(e,o.methodFactory)),t};var h=typeof window!==t?window.log:void 0;return o.noConflict=function(){return typeof window!==t&&window.log===o&&(window.log=h),o},o.getLoggers=function(){return i},o.default=o,o},void 0===(i=r.call(t,n,t,e))||(e.exports=i)}()},612:()=>{},939:()=>{},997:(e,t,n)=>{var r=n(150)();e.exports=r;try{regeneratorRuntime=r}catch(e){"object"==typeof globalThis?globalThis.regeneratorRuntime=r:Function("r","regeneratorRuntime = r")(r)}}},t={};function n(r){var i=t[r];if(void 0!==i)return i.exports;var o=t[r]={exports:{}};return e[r].call(o.exports,o,o.exports,n),o.exports}n.n=e=>{var t=e&&e.__esModule?()=>e.default:()=>e;return n.d(t,{a:t}),t},n.d=(e,t)=>{for(var r in t)n.o(t,r)&&!n.o(e,r)&&Object.defineProperty(e,r,{enumerable:!0,get:t[r]})},n.o=(e,t)=>Object.prototype.hasOwnProperty.call(e,t),n.r=e=>{"undefined"!=typeof Symbol&&Symbol.toStringTag&&Object.defineProperty(e,Symbol.toStringTag,{value:"Module"}),Object.defineProperty(e,"__esModule",{value:!0})};var r={};(()=>{"use strict";n.r(r),n.d(r,{Client:()=>ur,Errors:()=>t,SearchClient:()=>pr,default:()=>hr});var e={};n.r(e),n.d(e,{hasBrowserEnv:()=>Ie,hasStandardBrowserEnv:()=>Fe,hasStandardBrowserWebWorkerEnv:()=>De,navigator:()=>qe,origin:()=>He});var t={};function i(e,t){if(!(e instanceof t))throw new TypeError("Cannot call a class as a function")}function o(e){return o="function"==typeof Symbol&&"symbol"==typeof Symbol.iterator?function(e){return typeof e}:function(e){return e&&"function"==typeof Symbol&&e.constructor===Symbol&&e!==Symbol.prototype?"symbol":typeof e},o(e)}function a(e){var t=function(e){if("object"!=o(e)||!e)return e;var t=e[Symbol.toPrimitive];if(void 0!==t){var n=t.call(e,"string");if("object"!=o(n))return n;throw new TypeError("@@toPrimitive must return a primitive value.")}return String(e)}(e);return"symbol"==o(t)?t:t+""}function s(e,t){for(var n=0;non,ImportError:()=>hn,MissingConfigurationError:()=>b,ObjectAlreadyExists:()=>Yt,ObjectNotFound:()=>$t,ObjectUnprocessable:()=>en,RequestMalformed:()=>Wt,RequestUnauthorized:()=>Vt,ServerError:()=>nn,TypesenseError:()=>g});var l=n(363);function p(e,t){if(t&&("object"==o(t)||"function"==typeof t))return t;if(void 0!==t)throw new TypeError("Derived constructors may only return object or undefined");return function(e){if(void 0===e)throw new ReferenceError("this hasn't been initialised - super() hasn't been called");return e}(e)}function h(e){return h=Object.setPrototypeOf?Object.getPrototypeOf.bind():function(e){return e.__proto__||Object.getPrototypeOf(e)},h(e)}function f(e,t){return f=Object.setPrototypeOf?Object.setPrototypeOf.bind():function(e,t){return e.__proto__=t,e},f(e,t)}function d(e,t){if("function"!=typeof t&&null!==t)throw new TypeError("Super expression must either be null or a function");e.prototype=Object.create(t&&t.prototype,{constructor:{value:e,writable:!0,configurable:!0}}),Object.defineProperty(e,"prototype",{writable:!1}),t&&f(e,t)}function y(){try{var e=!Boolean.prototype.valueOf.call(Reflect.construct(Boolean,[],(function(){})))}catch(e){}return(y=function(){return!!e})()}function v(e){var t="function"==typeof Map?new Map:void 0;return v=function(e){if(null===e||!function(e){try{return-1!==Function.toString.call(e).indexOf("[native code]")}catch(t){return"function"==typeof e}}(e))return e;if("function"!=typeof e)throw new TypeError("Super expression must either be null or a function");if(void 0!==t){if(t.has(e))return t.get(e);t.set(e,n)}function n(){return function(e,t,n){if(y())return Reflect.construct.apply(null,arguments);var r=[null];r.push.apply(r,t);var i=new(e.bind.apply(e,r));return n&&f(i,n.prototype),i}(e,arguments,h(this).constructor)}return n.prototype=Object.create(e.prototype,{constructor:{value:n,enumerable:!1,writable:!0,configurable:!0}}),f(n,e)},v(e)}function m(){try{var e=!Boolean.prototype.valueOf.call(Reflect.construct(Boolean,[],(function(){})))}catch(e){}return(m=function(){return!!e})()}var g=function(e){function t(e,n,r){var o,a,s,c;return i(this,t),a=this,c=[e],s=h(s=t),(o=p(a,m()?Reflect.construct(s,c||[],h(a).constructor):s.apply(a,c))).name=(this instanceof t?this.constructor:void 0).name,o.httpBody=n,o.httpStatus=r,Object.setPrototypeOf(o,(this instanceof t?this.constructor:void 0).prototype),o}return d(t,e),c(t)}(v(Error));function w(){try{var e=!Boolean.prototype.valueOf.call(Reflect.construct(Boolean,[],(function(){})))}catch(e){}return(w=function(){return!!e})()}var b=function(e){function t(){return i(this,t),e=this,r=arguments,n=h(n=t),p(e,w()?Reflect.construct(n,r||[],h(e).constructor):n.apply(e,r));var e,n,r}return d(t,e),c(t)}(g);function C(e,t){var n=Object.keys(e);if(Object.getOwnPropertySymbols){var r=Object.getOwnPropertySymbols(e);t&&(r=r.filter((function(t){return Object.getOwnPropertyDescriptor(e,t).enumerable}))),n.push.apply(n,r)}return n}var R=function(){return c((function e(t){var n=this;i(this,e),this.nodes=t.nodes||[],this.nodes=this.nodes.map((function(e){return n.setDefaultPathInNode(e)})).map((function(e){return n.setDefaultPortInNode(e)})).map((function(e){return function(e){for(var t=1;t=0?t.numRetries:this.nodes.length+(null==this.nearestNode?0:1))||3,this.retryIntervalSeconds=t.retryIntervalSeconds||.1,this.apiKey=t.apiKey,this.sendApiKeyAsQueryParam=t.sendApiKeyAsQueryParam,this.cacheSearchResultsForSeconds=t.cacheSearchResultsForSeconds||0,this.useServerSideSearchCache=t.useServerSideSearchCache||!1,this.axiosAdapter=t.axiosAdapter,this.logger=t.logger||l,this.logLevel=t.logLevel||"warn",this.logger.setLevel(this.logLevel),this.additionalHeaders=t.additionalHeaders,this.httpAgent=t.httpAgent,this.httpsAgent=t.httpsAgent,this.paramsSerializer=t.paramsSerializer,this.showDeprecationWarnings(t),this.validate()}),[{key:"validate",value:function(){if(null==this.nodes||0===this.nodes.length||this.validateNodes())throw new b("Ensure that nodes[].protocol, nodes[].host and nodes[].port are set");if(null!=this.nearestNode&&this.isNodeMissingAnyParameters(this.nearestNode))throw new b("Ensure that nearestNodes.protocol, nearestNodes.host and nearestNodes.port are set");if(null==this.apiKey)throw new b("Ensure that apiKey is set");return!0}},{key:"validateNodes",value:function(){var e=this;return this.nodes.some((function(t){return e.isNodeMissingAnyParameters(t)}))}},{key:"isNodeMissingAnyParameters",value:function(e){return!["protocol","host","port","path"].every((function(t){return e.hasOwnProperty(t)}))&&null==e.url}},{key:"setDefaultPathInNode",value:function(e){return null==e||e.hasOwnProperty("path")||(e.path=""),e}},{key:"setDefaultPortInNode",value:function(e){if(null!=e&&!e.hasOwnProperty("port")&&e.hasOwnProperty("protocol"))switch(e.protocol){case"https":e.port=443;break;case"http":e.port=80}return e}},{key:"showDeprecationWarnings",value:function(e){e.timeoutSeconds&&this.logger.warn("Deprecation warning: timeoutSeconds is now renamed to connectionTimeoutSeconds"),e.masterNode&&this.logger.warn("Deprecation warning: masterNode is now consolidated to nodes, starting with Typesense Server v0.12"),e.readReplicaNodes&&this.logger.warn("Deprecation warning: readReplicaNodes is now consolidated to nodes, starting with Typesense Server v0.12")}},{key:"shuffleArray",value:function(e){for(var t=e.length-1;t>0;t--){var n=Math.floor(Math.random()*(t+1)),r=[e[n],e[t]];e[t]=r[0],e[n]=r[1]}}}])}();function k(e,t,n,r,i,o,a){try{var s=e[o](a),c=s.value}catch(e){return void n(e)}s.done?t(c):Promise.resolve(c).then(r,i)}function S(e){return function(){var t=this,n=arguments;return new Promise((function(r,i){var o=e.apply(t,n);function a(e){k(o,r,i,a,s,"next",e)}function s(e){k(o,r,i,a,s,"throw",e)}a(void 0)}))}}var E=n(997),O=n.n(E);function P(e,t){return function(){return e.apply(t,arguments)}}const{toString:x}=Object.prototype,{getPrototypeOf:A}=Object,T=(N=Object.create(null),e=>{const t=x.call(e);return N[t]||(N[t]=t.slice(8,-1).toLowerCase())});var N;const j=e=>(e=e.toLowerCase(),t=>T(t)===e),U=e=>t=>typeof t===e,{isArray:_}=Array,L=U("undefined"),I=j("ArrayBuffer"),q=U("string"),F=U("function"),D=U("number"),H=e=>null!==e&&"object"==typeof e,B=e=>{if("object"!==T(e))return!1;const t=A(e);return!(null!==t&&t!==Object.prototype&&null!==Object.getPrototypeOf(t)||Symbol.toStringTag in e||Symbol.iterator in e)},M=j("Date"),K=j("File"),z=j("Blob"),J=j("FileList"),W=j("URLSearchParams"),[G,V,Q,$]=["ReadableStream","Request","Response","Headers"].map(j);function X(e,t,{allOwnKeys:n=!1}={}){if(null==e)return;let r,i;if("object"!=typeof e&&(e=[e]),_(e))for(r=0,i=e.length;r0;)if(r=n[i],t===r.toLowerCase())return r;return null}const Z="undefined"!=typeof globalThis?globalThis:"undefined"!=typeof self?self:"undefined"!=typeof window?window:global,ee=e=>!L(e)&&e!==Z,te=(ne="undefined"!=typeof Uint8Array&&A(Uint8Array),e=>ne&&e instanceof ne);var ne;const re=j("HTMLFormElement"),ie=(({hasOwnProperty:e})=>(t,n)=>e.call(t,n))(Object.prototype),oe=j("RegExp"),ae=(e,t)=>{const n=Object.getOwnPropertyDescriptors(e),r={};X(n,((n,i)=>{let o;!1!==(o=t(n,i,e))&&(r[i]=o||n)})),Object.defineProperties(e,r)},se="abcdefghijklmnopqrstuvwxyz",ce="0123456789",ue={DIGIT:ce,ALPHA:se,ALPHA_DIGIT:se+se.toUpperCase()+ce},le=j("AsyncFunction"),pe=(he="function"==typeof setImmediate,fe=F(Z.postMessage),he?setImmediate:fe?(de=`axios@${Math.random()}`,ye=[],Z.addEventListener("message",(({source:e,data:t})=>{e===Z&&t===de&&ye.length&&ye.shift()()}),!1),e=>{ye.push(e),Z.postMessage(de,"*")}):e=>setTimeout(e));var he,fe,de,ye;const ve="undefined"!=typeof queueMicrotask?queueMicrotask.bind(Z):"undefined"!=typeof process&&process.nextTick||pe,me={isArray:_,isArrayBuffer:I,isBuffer:function(e){return null!==e&&!L(e)&&null!==e.constructor&&!L(e.constructor)&&F(e.constructor.isBuffer)&&e.constructor.isBuffer(e)},isFormData:e=>{let t;return e&&("function"==typeof FormData&&e instanceof FormData||F(e.append)&&("formdata"===(t=T(e))||"object"===t&&F(e.toString)&&"[object FormData]"===e.toString()))},isArrayBufferView:function(e){let t;return t="undefined"!=typeof ArrayBuffer&&ArrayBuffer.isView?ArrayBuffer.isView(e):e&&e.buffer&&I(e.buffer),t},isString:q,isNumber:D,isBoolean:e=>!0===e||!1===e,isObject:H,isPlainObject:B,isReadableStream:G,isRequest:V,isResponse:Q,isHeaders:$,isUndefined:L,isDate:M,isFile:K,isBlob:z,isRegExp:oe,isFunction:F,isStream:e=>H(e)&&F(e.pipe),isURLSearchParams:W,isTypedArray:te,isFileList:J,forEach:X,merge:function e(){const{caseless:t}=ee(this)&&this||{},n={},r=(r,i)=>{const o=t&&Y(n,i)||i;B(n[o])&&B(r)?n[o]=e(n[o],r):B(r)?n[o]=e({},r):_(r)?n[o]=r.slice():n[o]=r};for(let e=0,t=arguments.length;e(X(t,((t,r)=>{n&&F(t)?e[r]=P(t,n):e[r]=t}),{allOwnKeys:r}),e),trim:e=>e.trim?e.trim():e.replace(/^[\s\uFEFF\xA0]+|[\s\uFEFF\xA0]+$/g,""),stripBOM:e=>(65279===e.charCodeAt(0)&&(e=e.slice(1)),e),inherits:(e,t,n,r)=>{e.prototype=Object.create(t.prototype,r),e.prototype.constructor=e,Object.defineProperty(e,"super",{value:t.prototype}),n&&Object.assign(e.prototype,n)},toFlatObject:(e,t,n,r)=>{let i,o,a;const s={};if(t=t||{},null==e)return t;do{for(i=Object.getOwnPropertyNames(e),o=i.length;o-- >0;)a=i[o],r&&!r(a,e,t)||s[a]||(t[a]=e[a],s[a]=!0);e=!1!==n&&A(e)}while(e&&(!n||n(e,t))&&e!==Object.prototype);return t},kindOf:T,kindOfTest:j,endsWith:(e,t,n)=>{e=String(e),(void 0===n||n>e.length)&&(n=e.length),n-=t.length;const r=e.indexOf(t,n);return-1!==r&&r===n},toArray:e=>{if(!e)return null;if(_(e))return e;let t=e.length;if(!D(t))return null;const n=new Array(t);for(;t-- >0;)n[t]=e[t];return n},forEachEntry:(e,t)=>{const n=(e&&e[Symbol.iterator]).call(e);let r;for(;(r=n.next())&&!r.done;){const n=r.value;t.call(e,n[0],n[1])}},matchAll:(e,t)=>{let n;const r=[];for(;null!==(n=e.exec(t));)r.push(n);return r},isHTMLForm:re,hasOwnProperty:ie,hasOwnProp:ie,reduceDescriptors:ae,freezeMethods:e=>{ae(e,((t,n)=>{if(F(e)&&-1!==["arguments","caller","callee"].indexOf(n))return!1;const r=e[n];F(r)&&(t.enumerable=!1,"writable"in t?t.writable=!1:t.set||(t.set=()=>{throw Error("Can not rewrite read-only method '"+n+"'")}))}))},toObjectSet:(e,t)=>{const n={},r=e=>{e.forEach((e=>{n[e]=!0}))};return _(e)?r(e):r(String(e).split(t)),n},toCamelCase:e=>e.toLowerCase().replace(/[-_\s]([a-z\d])(\w*)/g,(function(e,t,n){return t.toUpperCase()+n})),noop:()=>{},toFiniteNumber:(e,t)=>null!=e&&Number.isFinite(e=+e)?e:t,findKey:Y,global:Z,isContextDefined:ee,ALPHABET:ue,generateString:(e=16,t=ue.ALPHA_DIGIT)=>{let n="";const{length:r}=t;for(;e--;)n+=t[Math.random()*r|0];return n},isSpecCompliantForm:function(e){return!!(e&&F(e.append)&&"FormData"===e[Symbol.toStringTag]&&e[Symbol.iterator])},toJSONObject:e=>{const t=new Array(10),n=(e,r)=>{if(H(e)){if(t.indexOf(e)>=0)return;if(!("toJSON"in e)){t[r]=e;const i=_(e)?[]:{};return X(e,((e,t)=>{const o=n(e,r+1);!L(o)&&(i[t]=o)})),t[r]=void 0,i}}return e};return n(e,0)},isAsyncFn:le,isThenable:e=>e&&(H(e)||F(e))&&F(e.then)&&F(e.catch),setImmediate:pe,asap:ve};function ge(e,t,n,r,i){Error.call(this),Error.captureStackTrace?Error.captureStackTrace(this,this.constructor):this.stack=(new Error).stack,this.message=e,this.name="AxiosError",t&&(this.code=t),n&&(this.config=n),r&&(this.request=r),i&&(this.response=i,this.status=i.status?i.status:null)}me.inherits(ge,Error,{toJSON:function(){return{message:this.message,name:this.name,description:this.description,number:this.number,fileName:this.fileName,lineNumber:this.lineNumber,columnNumber:this.columnNumber,stack:this.stack,config:me.toJSONObject(this.config),code:this.code,status:this.status}}});const we=ge.prototype,be={};["ERR_BAD_OPTION_VALUE","ERR_BAD_OPTION","ECONNABORTED","ETIMEDOUT","ERR_NETWORK","ERR_FR_TOO_MANY_REDIRECTS","ERR_DEPRECATED","ERR_BAD_RESPONSE","ERR_BAD_REQUEST","ERR_CANCELED","ERR_NOT_SUPPORT","ERR_INVALID_URL"].forEach((e=>{be[e]={value:e}})),Object.defineProperties(ge,be),Object.defineProperty(we,"isAxiosError",{value:!0}),ge.from=(e,t,n,r,i,o)=>{const a=Object.create(we);return me.toFlatObject(e,a,(function(e){return e!==Error.prototype}),(e=>"isAxiosError"!==e)),ge.call(a,e.message,t,n,r,i),a.cause=e,a.name=e.name,o&&Object.assign(a,o),a};const Ce=ge;function Re(e){return me.isPlainObject(e)||me.isArray(e)}function ke(e){return me.endsWith(e,"[]")?e.slice(0,-2):e}function Se(e,t,n){return e?e.concat(t).map((function(e,t){return e=ke(e),!n&&t?"["+e+"]":e})).join(n?".":""):t}const Ee=me.toFlatObject(me,{},null,(function(e){return/^is[A-Z]/.test(e)})),Oe=function(e,t,n){if(!me.isObject(e))throw new TypeError("target must be an object");t=t||new FormData;const r=(n=me.toFlatObject(n,{metaTokens:!0,dots:!1,indexes:!1},!1,(function(e,t){return!me.isUndefined(t[e])}))).metaTokens,i=n.visitor||u,o=n.dots,a=n.indexes,s=(n.Blob||"undefined"!=typeof Blob&&Blob)&&me.isSpecCompliantForm(t);if(!me.isFunction(i))throw new TypeError("visitor must be a function");function c(e){if(null===e)return"";if(me.isDate(e))return e.toISOString();if(!s&&me.isBlob(e))throw new Ce("Blob is not supported. Use a Buffer instead.");return me.isArrayBuffer(e)||me.isTypedArray(e)?s&&"function"==typeof Blob?new Blob([e]):Buffer.from(e):e}function u(e,n,i){let s=e;if(e&&!i&&"object"==typeof e)if(me.endsWith(n,"{}"))n=r?n:n.slice(0,-2),e=JSON.stringify(e);else if(me.isArray(e)&&function(e){return me.isArray(e)&&!e.some(Re)}(e)||(me.isFileList(e)||me.endsWith(n,"[]"))&&(s=me.toArray(e)))return n=ke(n),s.forEach((function(e,r){!me.isUndefined(e)&&null!==e&&t.append(!0===a?Se([n],r,o):null===a?n:n+"[]",c(e))})),!1;return!!Re(e)||(t.append(Se(i,n,o),c(e)),!1)}const l=[],p=Object.assign(Ee,{defaultVisitor:u,convertValue:c,isVisitable:Re});if(!me.isObject(e))throw new TypeError("data must be an object");return function e(n,r){if(!me.isUndefined(n)){if(-1!==l.indexOf(n))throw Error("Circular reference detected in "+r.join("."));l.push(n),me.forEach(n,(function(n,o){!0===(!(me.isUndefined(n)||null===n)&&i.call(t,n,me.isString(o)?o.trim():o,r,p))&&e(n,r?r.concat(o):[o])})),l.pop()}}(e),t};function Pe(e){const t={"!":"%21","'":"%27","(":"%28",")":"%29","~":"%7E","%20":"+","%00":"\0"};return encodeURIComponent(e).replace(/[!'()~]|%20|%00/g,(function(e){return t[e]}))}function xe(e,t){this._pairs=[],e&&Oe(e,this,t)}const Ae=xe.prototype;Ae.append=function(e,t){this._pairs.push([e,t])},Ae.toString=function(e){const t=e?function(t){return e.call(this,t,Pe)}:Pe;return this._pairs.map((function(e){return t(e[0])+"="+t(e[1])}),"").join("&")};const Te=xe;function Ne(e){return encodeURIComponent(e).replace(/%3A/gi,":").replace(/%24/g,"$").replace(/%2C/gi,",").replace(/%20/g,"+").replace(/%5B/gi,"[").replace(/%5D/gi,"]")}function je(e,t,n){if(!t)return e;const r=n&&n.encode||Ne;me.isFunction(n)&&(n={serialize:n});const i=n&&n.serialize;let o;if(o=i?i(t,n):me.isURLSearchParams(t)?t.toString():new Te(t,n).toString(r),o){const t=e.indexOf("#");-1!==t&&(e=e.slice(0,t)),e+=(-1===e.indexOf("?")?"?":"&")+o}return e}const Ue=class{constructor(){this.handlers=[]}use(e,t,n){return this.handlers.push({fulfilled:e,rejected:t,synchronous:!!n&&n.synchronous,runWhen:n?n.runWhen:null}),this.handlers.length-1}eject(e){this.handlers[e]&&(this.handlers[e]=null)}clear(){this.handlers&&(this.handlers=[])}forEach(e){me.forEach(this.handlers,(function(t){null!==t&&e(t)}))}},_e={silentJSONParsing:!0,forcedJSONParsing:!0,clarifyTimeoutError:!1},Le={isBrowser:!0,classes:{URLSearchParams:"undefined"!=typeof URLSearchParams?URLSearchParams:Te,FormData:"undefined"!=typeof FormData?FormData:null,Blob:"undefined"!=typeof Blob?Blob:null},protocols:["http","https","file","blob","url","data"]},Ie="undefined"!=typeof window&&"undefined"!=typeof document,qe="object"==typeof navigator&&navigator||void 0,Fe=Ie&&(!qe||["ReactNative","NativeScript","NS"].indexOf(qe.product)<0),De="undefined"!=typeof WorkerGlobalScope&&self instanceof WorkerGlobalScope&&"function"==typeof self.importScripts,He=Ie&&window.location.href||"http://localhost",Be={...e,...Le},Me=function(e){function t(e,n,r,i){let o=e[i++];if("__proto__"===o)return!0;const a=Number.isFinite(+o),s=i>=e.length;return o=!o&&me.isArray(r)?r.length:o,s?(me.hasOwnProp(r,o)?r[o]=[r[o],n]:r[o]=n,!a):(r[o]&&me.isObject(r[o])||(r[o]=[]),t(e,n,r[o],i)&&me.isArray(r[o])&&(r[o]=function(e){const t={},n=Object.keys(e);let r;const i=n.length;let o;for(r=0;r{t(function(e){return me.matchAll(/\w+|\[(\w*)]/g,e).map((e=>"[]"===e[0]?"":e[1]||e[0]))}(e),r,n,0)})),n}return null},Ke={transitional:_e,adapter:["xhr","http","fetch"],transformRequest:[function(e,t){const n=t.getContentType()||"",r=n.indexOf("application/json")>-1,i=me.isObject(e);if(i&&me.isHTMLForm(e)&&(e=new FormData(e)),me.isFormData(e))return r?JSON.stringify(Me(e)):e;if(me.isArrayBuffer(e)||me.isBuffer(e)||me.isStream(e)||me.isFile(e)||me.isBlob(e)||me.isReadableStream(e))return e;if(me.isArrayBufferView(e))return e.buffer;if(me.isURLSearchParams(e))return t.setContentType("application/x-www-form-urlencoded;charset=utf-8",!1),e.toString();let o;if(i){if(n.indexOf("application/x-www-form-urlencoded")>-1)return function(e,t){return Oe(e,new Be.classes.URLSearchParams,Object.assign({visitor:function(e,t,n,r){return Be.isNode&&me.isBuffer(e)?(this.append(t,e.toString("base64")),!1):r.defaultVisitor.apply(this,arguments)}},t))}(e,this.formSerializer).toString();if((o=me.isFileList(e))||n.indexOf("multipart/form-data")>-1){const t=this.env&&this.env.FormData;return Oe(o?{"files[]":e}:e,t&&new t,this.formSerializer)}}return i||r?(t.setContentType("application/json",!1),function(e){if(me.isString(e))try{return(0,JSON.parse)(e),me.trim(e)}catch(e){if("SyntaxError"!==e.name)throw e}return(0,JSON.stringify)(e)}(e)):e}],transformResponse:[function(e){const t=this.transitional||Ke.transitional,n=t&&t.forcedJSONParsing,r="json"===this.responseType;if(me.isResponse(e)||me.isReadableStream(e))return e;if(e&&me.isString(e)&&(n&&!this.responseType||r)){const n=!(t&&t.silentJSONParsing)&&r;try{return JSON.parse(e)}catch(e){if(n){if("SyntaxError"===e.name)throw Ce.from(e,Ce.ERR_BAD_RESPONSE,this,null,this.response);throw e}}}return e}],timeout:0,xsrfCookieName:"XSRF-TOKEN",xsrfHeaderName:"X-XSRF-TOKEN",maxContentLength:-1,maxBodyLength:-1,env:{FormData:Be.classes.FormData,Blob:Be.classes.Blob},validateStatus:function(e){return e>=200&&e<300},headers:{common:{Accept:"application/json, text/plain, */*","Content-Type":void 0}}};me.forEach(["delete","get","head","post","put","patch"],(e=>{Ke.headers[e]={}}));const ze=Ke,Je=me.toObjectSet(["age","authorization","content-length","content-type","etag","expires","from","host","if-modified-since","if-unmodified-since","last-modified","location","max-forwards","proxy-authorization","referer","retry-after","user-agent"]),We=Symbol("internals");function Ge(e){return e&&String(e).trim().toLowerCase()}function Ve(e){return!1===e||null==e?e:me.isArray(e)?e.map(Ve):String(e)}function Qe(e,t,n,r,i){return me.isFunction(r)?r.call(this,t,n):(i&&(t=n),me.isString(t)?me.isString(r)?-1!==t.indexOf(r):me.isRegExp(r)?r.test(t):void 0:void 0)}class $e{constructor(e){e&&this.set(e)}set(e,t,n){const r=this;function i(e,t,n){const i=Ge(t);if(!i)throw new Error("header name must be a non-empty string");const o=me.findKey(r,i);(!o||void 0===r[o]||!0===n||void 0===n&&!1!==r[o])&&(r[o||t]=Ve(e))}const o=(e,t)=>me.forEach(e,((e,n)=>i(e,n,t)));if(me.isPlainObject(e)||e instanceof this.constructor)o(e,t);else if(me.isString(e)&&(e=e.trim())&&!/^[-_a-zA-Z0-9^`|~,!#$%&'*+.]+$/.test(e.trim()))o((e=>{const t={};let n,r,i;return e&&e.split("\n").forEach((function(e){i=e.indexOf(":"),n=e.substring(0,i).trim().toLowerCase(),r=e.substring(i+1).trim(),!n||t[n]&&Je[n]||("set-cookie"===n?t[n]?t[n].push(r):t[n]=[r]:t[n]=t[n]?t[n]+", "+r:r)})),t})(e),t);else if(me.isHeaders(e))for(const[t,r]of e.entries())i(r,t,n);else null!=e&&i(t,e,n);return this}get(e,t){if(e=Ge(e)){const n=me.findKey(this,e);if(n){const e=this[n];if(!t)return e;if(!0===t)return function(e){const t=Object.create(null),n=/([^\s,;=]+)\s*(?:=\s*([^,;]+))?/g;let r;for(;r=n.exec(e);)t[r[1]]=r[2];return t}(e);if(me.isFunction(t))return t.call(this,e,n);if(me.isRegExp(t))return t.exec(e);throw new TypeError("parser must be boolean|regexp|function")}}}has(e,t){if(e=Ge(e)){const n=me.findKey(this,e);return!(!n||void 0===this[n]||t&&!Qe(0,this[n],n,t))}return!1}delete(e,t){const n=this;let r=!1;function i(e){if(e=Ge(e)){const i=me.findKey(n,e);!i||t&&!Qe(0,n[i],i,t)||(delete n[i],r=!0)}}return me.isArray(e)?e.forEach(i):i(e),r}clear(e){const t=Object.keys(this);let n=t.length,r=!1;for(;n--;){const i=t[n];e&&!Qe(0,this[i],i,e,!0)||(delete this[i],r=!0)}return r}normalize(e){const t=this,n={};return me.forEach(this,((r,i)=>{const o=me.findKey(n,i);if(o)return t[o]=Ve(r),void delete t[i];const a=e?function(e){return e.trim().toLowerCase().replace(/([a-z\d])(\w*)/g,((e,t,n)=>t.toUpperCase()+n))}(i):String(i).trim();a!==i&&delete t[i],t[a]=Ve(r),n[a]=!0})),this}concat(...e){return this.constructor.concat(this,...e)}toJSON(e){const t=Object.create(null);return me.forEach(this,((n,r)=>{null!=n&&!1!==n&&(t[r]=e&&me.isArray(n)?n.join(", "):n)})),t}[Symbol.iterator](){return Object.entries(this.toJSON())[Symbol.iterator]()}toString(){return Object.entries(this.toJSON()).map((([e,t])=>e+": "+t)).join("\n")}get[Symbol.toStringTag](){return"AxiosHeaders"}static from(e){return e instanceof this?e:new this(e)}static concat(e,...t){const n=new this(e);return t.forEach((e=>n.set(e))),n}static accessor(e){const t=(this[We]=this[We]={accessors:{}}).accessors,n=this.prototype;function r(e){const r=Ge(e);t[r]||(function(e,t){const n=me.toCamelCase(" "+t);["get","set","has"].forEach((r=>{Object.defineProperty(e,r+n,{value:function(e,n,i){return this[r].call(this,t,e,n,i)},configurable:!0})}))}(n,e),t[r]=!0)}return me.isArray(e)?e.forEach(r):r(e),this}}$e.accessor(["Content-Type","Content-Length","Accept","Accept-Encoding","User-Agent","Authorization"]),me.reduceDescriptors($e.prototype,(({value:e},t)=>{let n=t[0].toUpperCase()+t.slice(1);return{get:()=>e,set(e){this[n]=e}}})),me.freezeMethods($e);const Xe=$e;function Ye(e,t){const n=this||ze,r=t||n,i=Xe.from(r.headers);let o=r.data;return me.forEach(e,(function(e){o=e.call(n,o,i.normalize(),t?t.status:void 0)})),i.normalize(),o}function Ze(e){return!(!e||!e.__CANCEL__)}function et(e,t,n){Ce.call(this,null==e?"canceled":e,Ce.ERR_CANCELED,t,n),this.name="CanceledError"}me.inherits(et,Ce,{__CANCEL__:!0});const tt=et;function nt(e,t,n){const r=n.config.validateStatus;n.status&&r&&!r(n.status)?t(new Ce("Request failed with status code "+n.status,[Ce.ERR_BAD_REQUEST,Ce.ERR_BAD_RESPONSE][Math.floor(n.status/100)-4],n.config,n.request,n)):e(n)}const rt=(e,t,n=3)=>{let r=0;const i=function(e,t){e=e||10;const n=new Array(e),r=new Array(e);let i,o=0,a=0;return t=void 0!==t?t:1e3,function(s){const c=Date.now(),u=r[a];i||(i=c),n[o]=s,r[o]=c;let l=a,p=0;for(;l!==o;)p+=n[l++],l%=e;if(o=(o+1)%e,o===a&&(a=(a+1)%e),c-i{i=o,n=null,r&&(clearTimeout(r),r=null),e.apply(null,t)};return[(...e)=>{const t=Date.now(),s=t-i;s>=o?a(e,t):(n=e,r||(r=setTimeout((()=>{r=null,a(n)}),o-s)))},()=>n&&a(n)]}((n=>{const o=n.loaded,a=n.lengthComputable?n.total:void 0,s=o-r,c=i(s);r=o,e({loaded:o,total:a,progress:a?o/a:void 0,bytes:s,rate:c||void 0,estimated:c&&a&&o<=a?(a-o)/c:void 0,event:n,lengthComputable:null!=a,[t?"download":"upload"]:!0})}),n)},it=(e,t)=>{const n=null!=e;return[r=>t[0]({lengthComputable:n,total:e,loaded:r}),t[1]]},ot=e=>(...t)=>me.asap((()=>e(...t))),at=Be.hasStandardBrowserEnv?((e,t)=>n=>(n=new URL(n,Be.origin),e.protocol===n.protocol&&e.host===n.host&&(t||e.port===n.port)))(new URL(Be.origin),Be.navigator&&/(msie|trident)/i.test(Be.navigator.userAgent)):()=>!0,st=Be.hasStandardBrowserEnv?{write(e,t,n,r,i,o){const a=[e+"="+encodeURIComponent(t)];me.isNumber(n)&&a.push("expires="+new Date(n).toGMTString()),me.isString(r)&&a.push("path="+r),me.isString(i)&&a.push("domain="+i),!0===o&&a.push("secure"),document.cookie=a.join("; ")},read(e){const t=document.cookie.match(new RegExp("(^|;\\s*)("+e+")=([^;]*)"));return t?decodeURIComponent(t[3]):null},remove(e){this.write(e,"",Date.now()-864e5)}}:{write(){},read:()=>null,remove(){}};function ct(e,t){return e&&!/^([a-z][a-z\d+\-.]*:)?\/\//i.test(t)?function(e,t){return t?e.replace(/\/?\/$/,"")+"/"+t.replace(/^\/+/,""):e}(e,t):t}const ut=e=>e instanceof Xe?{...e}:e;function lt(e,t){t=t||{};const n={};function r(e,t,n,r){return me.isPlainObject(e)&&me.isPlainObject(t)?me.merge.call({caseless:r},e,t):me.isPlainObject(t)?me.merge({},t):me.isArray(t)?t.slice():t}function i(e,t,n,i){return me.isUndefined(t)?me.isUndefined(e)?void 0:r(void 0,e,0,i):r(e,t,0,i)}function o(e,t){if(!me.isUndefined(t))return r(void 0,t)}function a(e,t){return me.isUndefined(t)?me.isUndefined(e)?void 0:r(void 0,e):r(void 0,t)}function s(n,i,o){return o in t?r(n,i):o in e?r(void 0,n):void 0}const c={url:o,method:o,data:o,baseURL:a,transformRequest:a,transformResponse:a,paramsSerializer:a,timeout:a,timeoutMessage:a,withCredentials:a,withXSRFToken:a,adapter:a,responseType:a,xsrfCookieName:a,xsrfHeaderName:a,onUploadProgress:a,onDownloadProgress:a,decompress:a,maxContentLength:a,maxBodyLength:a,beforeRedirect:a,transport:a,httpAgent:a,httpsAgent:a,cancelToken:a,socketPath:a,responseEncoding:a,validateStatus:s,headers:(e,t,n)=>i(ut(e),ut(t),0,!0)};return me.forEach(Object.keys(Object.assign({},e,t)),(function(r){const o=c[r]||i,a=o(e[r],t[r],r);me.isUndefined(a)&&o!==s||(n[r]=a)})),n}const pt=e=>{const t=lt({},e);let n,{data:r,withXSRFToken:i,xsrfHeaderName:o,xsrfCookieName:a,headers:s,auth:c}=t;if(t.headers=s=Xe.from(s),t.url=je(ct(t.baseURL,t.url),e.params,e.paramsSerializer),c&&s.set("Authorization","Basic "+btoa((c.username||"")+":"+(c.password?unescape(encodeURIComponent(c.password)):""))),me.isFormData(r))if(Be.hasStandardBrowserEnv||Be.hasStandardBrowserWebWorkerEnv)s.setContentType(void 0);else if(!1!==(n=s.getContentType())){const[e,...t]=n?n.split(";").map((e=>e.trim())).filter(Boolean):[];s.setContentType([e||"multipart/form-data",...t].join("; "))}if(Be.hasStandardBrowserEnv&&(i&&me.isFunction(i)&&(i=i(t)),i||!1!==i&&at(t.url))){const e=o&&a&&st.read(a);e&&s.set(o,e)}return t},ht="undefined"!=typeof XMLHttpRequest&&function(e){return new Promise((function(t,n){const r=pt(e);let i=r.data;const o=Xe.from(r.headers).normalize();let a,s,c,u,l,{responseType:p,onUploadProgress:h,onDownloadProgress:f}=r;function d(){u&&u(),l&&l(),r.cancelToken&&r.cancelToken.unsubscribe(a),r.signal&&r.signal.removeEventListener("abort",a)}let y=new XMLHttpRequest;function v(){if(!y)return;const r=Xe.from("getAllResponseHeaders"in y&&y.getAllResponseHeaders());nt((function(e){t(e),d()}),(function(e){n(e),d()}),{data:p&&"text"!==p&&"json"!==p?y.response:y.responseText,status:y.status,statusText:y.statusText,headers:r,config:e,request:y}),y=null}y.open(r.method.toUpperCase(),r.url,!0),y.timeout=r.timeout,"onloadend"in y?y.onloadend=v:y.onreadystatechange=function(){y&&4===y.readyState&&(0!==y.status||y.responseURL&&0===y.responseURL.indexOf("file:"))&&setTimeout(v)},y.onabort=function(){y&&(n(new Ce("Request aborted",Ce.ECONNABORTED,e,y)),y=null)},y.onerror=function(){n(new Ce("Network Error",Ce.ERR_NETWORK,e,y)),y=null},y.ontimeout=function(){let t=r.timeout?"timeout of "+r.timeout+"ms exceeded":"timeout exceeded";const i=r.transitional||_e;r.timeoutErrorMessage&&(t=r.timeoutErrorMessage),n(new Ce(t,i.clarifyTimeoutError?Ce.ETIMEDOUT:Ce.ECONNABORTED,e,y)),y=null},void 0===i&&o.setContentType(null),"setRequestHeader"in y&&me.forEach(o.toJSON(),(function(e,t){y.setRequestHeader(t,e)})),me.isUndefined(r.withCredentials)||(y.withCredentials=!!r.withCredentials),p&&"json"!==p&&(y.responseType=r.responseType),f&&([c,l]=rt(f,!0),y.addEventListener("progress",c)),h&&y.upload&&([s,u]=rt(h),y.upload.addEventListener("progress",s),y.upload.addEventListener("loadend",u)),(r.cancelToken||r.signal)&&(a=t=>{y&&(n(!t||t.type?new tt(null,e,y):t),y.abort(),y=null)},r.cancelToken&&r.cancelToken.subscribe(a),r.signal&&(r.signal.aborted?a():r.signal.addEventListener("abort",a)));const m=function(e){const t=/^([-+\w]{1,25})(:?\/\/|:)/.exec(e);return t&&t[1]||""}(r.url);m&&-1===Be.protocols.indexOf(m)?n(new Ce("Unsupported protocol "+m+":",Ce.ERR_BAD_REQUEST,e)):y.send(i||null)}))},ft=(e,t)=>{const{length:n}=e=e?e.filter(Boolean):[];if(t||n){let n,r=new AbortController;const i=function(e){if(!n){n=!0,a();const t=e instanceof Error?e:this.reason;r.abort(t instanceof Ce?t:new tt(t instanceof Error?t.message:t))}};let o=t&&setTimeout((()=>{o=null,i(new Ce(`timeout ${t} of ms exceeded`,Ce.ETIMEDOUT))}),t);const a=()=>{e&&(o&&clearTimeout(o),o=null,e.forEach((e=>{e.unsubscribe?e.unsubscribe(i):e.removeEventListener("abort",i)})),e=null)};e.forEach((e=>e.addEventListener("abort",i)));const{signal:s}=r;return s.unsubscribe=()=>me.asap(a),s}},dt=function*(e,t){let n=e.byteLength;if(!t||n{const i=async function*(e,t){for await(const n of async function*(e){if(e[Symbol.asyncIterator])return void(yield*e);const t=e.getReader();try{for(;;){const{done:e,value:n}=await t.read();if(e)break;yield n}}finally{await t.cancel()}}(e))yield*dt(n,t)}(e,t);let o,a=0,s=e=>{o||(o=!0,r&&r(e))};return new ReadableStream({async pull(e){try{const{done:t,value:r}=await i.next();if(t)return s(),void e.close();let o=r.byteLength;if(n){let e=a+=o;n(e)}e.enqueue(new Uint8Array(r))}catch(e){throw s(e),e}},cancel:e=>(s(e),i.return())},{highWaterMark:2})},vt="function"==typeof fetch&&"function"==typeof Request&&"function"==typeof Response,mt=vt&&"function"==typeof ReadableStream,gt=vt&&("function"==typeof TextEncoder?(wt=new TextEncoder,e=>wt.encode(e)):async e=>new Uint8Array(await new Response(e).arrayBuffer()));var wt;const bt=(e,...t)=>{try{return!!e(...t)}catch(e){return!1}},Ct=mt&&bt((()=>{let e=!1;const t=new Request(Be.origin,{body:new ReadableStream,method:"POST",get duplex(){return e=!0,"half"}}).headers.has("Content-Type");return e&&!t})),Rt=mt&&bt((()=>me.isReadableStream(new Response("").body))),kt={stream:Rt&&(e=>e.body)};var St;vt&&(St=new Response,["text","arrayBuffer","blob","formData","stream"].forEach((e=>{!kt[e]&&(kt[e]=me.isFunction(St[e])?t=>t[e]():(t,n)=>{throw new Ce(`Response type '${e}' is not supported`,Ce.ERR_NOT_SUPPORT,n)})})));const Et={http:null,xhr:ht,fetch:vt&&(async e=>{let{url:t,method:n,data:r,signal:i,cancelToken:o,timeout:a,onDownloadProgress:s,onUploadProgress:c,responseType:u,headers:l,withCredentials:p="same-origin",fetchOptions:h}=pt(e);u=u?(u+"").toLowerCase():"text";let f,d=ft([i,o&&o.toAbortSignal()],a);const y=d&&d.unsubscribe&&(()=>{d.unsubscribe()});let v;try{if(c&&Ct&&"get"!==n&&"head"!==n&&0!==(v=await(async(e,t)=>{const n=me.toFiniteNumber(e.getContentLength());return null==n?(async e=>{if(null==e)return 0;if(me.isBlob(e))return e.size;if(me.isSpecCompliantForm(e)){const t=new Request(Be.origin,{method:"POST",body:e});return(await t.arrayBuffer()).byteLength}return me.isArrayBufferView(e)||me.isArrayBuffer(e)?e.byteLength:(me.isURLSearchParams(e)&&(e+=""),me.isString(e)?(await gt(e)).byteLength:void 0)})(t):n})(l,r))){let e,n=new Request(t,{method:"POST",body:r,duplex:"half"});if(me.isFormData(r)&&(e=n.headers.get("content-type"))&&l.setContentType(e),n.body){const[e,t]=it(v,rt(ot(c)));r=yt(n.body,65536,e,t)}}me.isString(p)||(p=p?"include":"omit");const i="credentials"in Request.prototype;f=new Request(t,{...h,signal:d,method:n.toUpperCase(),headers:l.normalize().toJSON(),body:r,duplex:"half",credentials:i?p:void 0});let o=await fetch(f);const a=Rt&&("stream"===u||"response"===u);if(Rt&&(s||a&&y)){const e={};["status","statusText","headers"].forEach((t=>{e[t]=o[t]}));const t=me.toFiniteNumber(o.headers.get("content-length")),[n,r]=s&&it(t,rt(ot(s),!0))||[];o=new Response(yt(o.body,65536,n,(()=>{r&&r(),y&&y()})),e)}u=u||"text";let m=await kt[me.findKey(kt,u)||"text"](o,e);return!a&&y&&y(),await new Promise(((t,n)=>{nt(t,n,{data:m,headers:Xe.from(o.headers),status:o.status,statusText:o.statusText,config:e,request:f})}))}catch(t){if(y&&y(),t&&"TypeError"===t.name&&/fetch/i.test(t.message))throw Object.assign(new Ce("Network Error",Ce.ERR_NETWORK,e,f),{cause:t.cause||t});throw Ce.from(t,t&&t.code,e,f)}})};me.forEach(Et,((e,t)=>{if(e){try{Object.defineProperty(e,"name",{value:t})}catch(e){}Object.defineProperty(e,"adapterName",{value:t})}}));const Ot=e=>`- ${e}`,Pt=e=>me.isFunction(e)||null===e||!1===e,xt=e=>{e=me.isArray(e)?e:[e];const{length:t}=e;let n,r;const i={};for(let o=0;o`adapter ${e} `+(!1===t?"is not supported by the environment":"is not available in the build")));let n=t?e.length>1?"since :\n"+e.map(Ot).join("\n"):" "+Ot(e[0]):"as no adapter specified";throw new Ce("There is no suitable adapter to dispatch the request "+n,"ERR_NOT_SUPPORT")}return r};function At(e){if(e.cancelToken&&e.cancelToken.throwIfRequested(),e.signal&&e.signal.aborted)throw new tt(null,e)}function Tt(e){return At(e),e.headers=Xe.from(e.headers),e.data=Ye.call(e,e.transformRequest),-1!==["post","put","patch"].indexOf(e.method)&&e.headers.setContentType("application/x-www-form-urlencoded",!1),xt(e.adapter||ze.adapter)(e).then((function(t){return At(e),t.data=Ye.call(e,e.transformResponse,t),t.headers=Xe.from(t.headers),t}),(function(t){return Ze(t)||(At(e),t&&t.response&&(t.response.data=Ye.call(e,e.transformResponse,t.response),t.response.headers=Xe.from(t.response.headers))),Promise.reject(t)}))}const Nt={};["object","boolean","number","function","string","symbol"].forEach(((e,t)=>{Nt[e]=function(n){return typeof n===e||"a"+(t<1?"n ":" ")+e}}));const jt={};Nt.transitional=function(e,t,n){function r(e,t){return"[Axios v1.7.9] Transitional option '"+e+"'"+t+(n?". "+n:"")}return(n,i,o)=>{if(!1===e)throw new Ce(r(i," has been removed"+(t?" in "+t:"")),Ce.ERR_DEPRECATED);return t&&!jt[i]&&(jt[i]=!0,console.warn(r(i," has been deprecated since v"+t+" and will be removed in the near future"))),!e||e(n,i,o)}},Nt.spelling=function(e){return(t,n)=>(console.warn(`${n} is likely a misspelling of ${e}`),!0)};const Ut={assertOptions:function(e,t,n){if("object"!=typeof e)throw new Ce("options must be an object",Ce.ERR_BAD_OPTION_VALUE);const r=Object.keys(e);let i=r.length;for(;i-- >0;){const o=r[i],a=t[o];if(a){const t=e[o],n=void 0===t||a(t,o,e);if(!0!==n)throw new Ce("option "+o+" must be "+n,Ce.ERR_BAD_OPTION_VALUE)}else if(!0!==n)throw new Ce("Unknown option "+o,Ce.ERR_BAD_OPTION)}},validators:Nt},_t=Ut.validators;class Lt{constructor(e){this.defaults=e,this.interceptors={request:new Ue,response:new Ue}}async request(e,t){try{return await this._request(e,t)}catch(e){if(e instanceof Error){let t={};Error.captureStackTrace?Error.captureStackTrace(t):t=new Error;const n=t.stack?t.stack.replace(/^.+\n/,""):"";try{e.stack?n&&!String(e.stack).endsWith(n.replace(/^.+\n.+\n/,""))&&(e.stack+="\n"+n):e.stack=n}catch(e){}}throw e}}_request(e,t){"string"==typeof e?(t=t||{}).url=e:t=e||{},t=lt(this.defaults,t);const{transitional:n,paramsSerializer:r,headers:i}=t;void 0!==n&&Ut.assertOptions(n,{silentJSONParsing:_t.transitional(_t.boolean),forcedJSONParsing:_t.transitional(_t.boolean),clarifyTimeoutError:_t.transitional(_t.boolean)},!1),null!=r&&(me.isFunction(r)?t.paramsSerializer={serialize:r}:Ut.assertOptions(r,{encode:_t.function,serialize:_t.function},!0)),Ut.assertOptions(t,{baseUrl:_t.spelling("baseURL"),withXsrfToken:_t.spelling("withXSRFToken")},!0),t.method=(t.method||this.defaults.method||"get").toLowerCase();let o=i&&me.merge(i.common,i[t.method]);i&&me.forEach(["delete","get","head","post","put","patch","common"],(e=>{delete i[e]})),t.headers=Xe.concat(o,i);const a=[];let s=!0;this.interceptors.request.forEach((function(e){"function"==typeof e.runWhen&&!1===e.runWhen(t)||(s=s&&e.synchronous,a.unshift(e.fulfilled,e.rejected))}));const c=[];let u;this.interceptors.response.forEach((function(e){c.push(e.fulfilled,e.rejected)}));let l,p=0;if(!s){const e=[Tt.bind(this),void 0];for(e.unshift.apply(e,a),e.push.apply(e,c),l=e.length,u=Promise.resolve(t);p{if(!n._listeners)return;let t=n._listeners.length;for(;t-- >0;)n._listeners[t](e);n._listeners=null})),this.promise.then=e=>{let t;const r=new Promise((e=>{n.subscribe(e),t=e})).then(e);return r.cancel=function(){n.unsubscribe(t)},r},e((function(e,r,i){n.reason||(n.reason=new tt(e,r,i),t(n.reason))}))}throwIfRequested(){if(this.reason)throw this.reason}subscribe(e){this.reason?e(this.reason):this._listeners?this._listeners.push(e):this._listeners=[e]}unsubscribe(e){if(!this._listeners)return;const t=this._listeners.indexOf(e);-1!==t&&this._listeners.splice(t,1)}toAbortSignal(){const e=new AbortController,t=t=>{e.abort(t)};return this.subscribe(t),e.signal.unsubscribe=()=>this.unsubscribe(t),e.signal}static source(){let e;return{token:new qt((function(t){e=t})),cancel:e}}}const Ft=qt,Dt={Continue:100,SwitchingProtocols:101,Processing:102,EarlyHints:103,Ok:200,Created:201,Accepted:202,NonAuthoritativeInformation:203,NoContent:204,ResetContent:205,PartialContent:206,MultiStatus:207,AlreadyReported:208,ImUsed:226,MultipleChoices:300,MovedPermanently:301,Found:302,SeeOther:303,NotModified:304,UseProxy:305,Unused:306,TemporaryRedirect:307,PermanentRedirect:308,BadRequest:400,Unauthorized:401,PaymentRequired:402,Forbidden:403,NotFound:404,MethodNotAllowed:405,NotAcceptable:406,ProxyAuthenticationRequired:407,RequestTimeout:408,Conflict:409,Gone:410,LengthRequired:411,PreconditionFailed:412,PayloadTooLarge:413,UriTooLong:414,UnsupportedMediaType:415,RangeNotSatisfiable:416,ExpectationFailed:417,ImATeapot:418,MisdirectedRequest:421,UnprocessableEntity:422,Locked:423,FailedDependency:424,TooEarly:425,UpgradeRequired:426,PreconditionRequired:428,TooManyRequests:429,RequestHeaderFieldsTooLarge:431,UnavailableForLegalReasons:451,InternalServerError:500,NotImplemented:501,BadGateway:502,ServiceUnavailable:503,GatewayTimeout:504,HttpVersionNotSupported:505,VariantAlsoNegotiates:506,InsufficientStorage:507,LoopDetected:508,NotExtended:510,NetworkAuthenticationRequired:511};Object.entries(Dt).forEach((([e,t])=>{Dt[t]=e}));const Ht=Dt,Bt=function e(t){const n=new It(t),r=P(It.prototype.request,n);return me.extend(r,It.prototype,n,{allOwnKeys:!0}),me.extend(r,n,null,{allOwnKeys:!0}),r.create=function(n){return e(lt(t,n))},r}(ze);Bt.Axios=It,Bt.CanceledError=tt,Bt.CancelToken=Ft,Bt.isCancel=Ze,Bt.VERSION="1.7.9",Bt.toFormData=Oe,Bt.AxiosError=Ce,Bt.Cancel=Bt.CanceledError,Bt.all=function(e){return Promise.all(e)},Bt.spread=function(e){return function(t){return e.apply(null,t)}},Bt.isAxiosError=function(e){return me.isObject(e)&&!0===e.isAxiosError},Bt.mergeConfig=lt,Bt.AxiosHeaders=Xe,Bt.formToJSON=e=>Me(me.isHTMLForm(e)?new FormData(e):e),Bt.getAdapter=xt,Bt.HttpStatusCode=Ht,Bt.default=Bt;const Mt=Bt;var Kt=n(939),zt=n(82);function Jt(){try{var e=!Boolean.prototype.valueOf.call(Reflect.construct(Boolean,[],(function(){})))}catch(e){}return(Jt=function(){return!!e})()}var Wt=function(e){function t(){return i(this,t),e=this,r=arguments,n=h(n=t),p(e,Jt()?Reflect.construct(n,r||[],h(e).constructor):n.apply(e,r));var e,n,r}return d(t,e),c(t)}(g);function Gt(){try{var e=!Boolean.prototype.valueOf.call(Reflect.construct(Boolean,[],(function(){})))}catch(e){}return(Gt=function(){return!!e})()}var Vt=function(e){function t(){return i(this,t),e=this,r=arguments,n=h(n=t),p(e,Gt()?Reflect.construct(n,r||[],h(e).constructor):n.apply(e,r));var e,n,r}return d(t,e),c(t)}(g);function Qt(){try{var e=!Boolean.prototype.valueOf.call(Reflect.construct(Boolean,[],(function(){})))}catch(e){}return(Qt=function(){return!!e})()}var $t=function(e){function t(){return i(this,t),e=this,r=arguments,n=h(n=t),p(e,Qt()?Reflect.construct(n,r||[],h(e).constructor):n.apply(e,r));var e,n,r}return d(t,e),c(t)}(g);function Xt(){try{var e=!Boolean.prototype.valueOf.call(Reflect.construct(Boolean,[],(function(){})))}catch(e){}return(Xt=function(){return!!e})()}var Yt=function(e){function t(){return i(this,t),e=this,r=arguments,n=h(n=t),p(e,Xt()?Reflect.construct(n,r||[],h(e).constructor):n.apply(e,r));var e,n,r}return d(t,e),c(t)}(g);function Zt(){try{var e=!Boolean.prototype.valueOf.call(Reflect.construct(Boolean,[],(function(){})))}catch(e){}return(Zt=function(){return!!e})()}var en=function(e){function t(){return i(this,t),e=this,r=arguments,n=h(n=t),p(e,Zt()?Reflect.construct(n,r||[],h(e).constructor):n.apply(e,r));var e,n,r}return d(t,e),c(t)}(g);function tn(){try{var e=!Boolean.prototype.valueOf.call(Reflect.construct(Boolean,[],(function(){})))}catch(e){}return(tn=function(){return!!e})()}var nn=function(e){function t(){return i(this,t),e=this,r=arguments,n=h(n=t),p(e,tn()?Reflect.construct(n,r||[],h(e).constructor):n.apply(e,r));var e,n,r}return d(t,e),c(t)}(g);function rn(){try{var e=!Boolean.prototype.valueOf.call(Reflect.construct(Boolean,[],(function(){})))}catch(e){}return(rn=function(){return!!e})()}var on=function(e){function t(){return i(this,t),e=this,r=arguments,n=h(n=t),p(e,rn()?Reflect.construct(n,r||[],h(e).constructor):n.apply(e,r));var e,n,r}return d(t,e),c(t)}(g),an=!0,sn="undefined"!=typeof process&&null!=process.versions&&null!=process.versions.node,cn=function(){return c((function e(t){i(this,e),this.configuration=t,this.apiKey=this.configuration.apiKey,this.nodes=null==this.configuration.nodes?this.configuration.nodes:JSON.parse(JSON.stringify(this.configuration.nodes)),this.nearestNode=null==this.configuration.nearestNode?this.configuration.nearestNode:JSON.parse(JSON.stringify(this.configuration.nearestNode)),this.connectionTimeoutSeconds=this.configuration.connectionTimeoutSeconds,this.healthcheckIntervalSeconds=this.configuration.healthcheckIntervalSeconds,this.numRetriesPerRequest=this.configuration.numRetries,this.retryIntervalSeconds=this.configuration.retryIntervalSeconds,this.sendApiKeyAsQueryParam=this.configuration.sendApiKeyAsQueryParam,this.additionalUserHeaders=this.configuration.additionalHeaders,this.logger=this.configuration.logger,this.initializeMetadataForNodes(),this.currentNodeIndex=-1}),[{key:"get",value:(u=S(O().mark((function e(t){var n,r,i,o,a,s,c=arguments;return O().wrap((function(e){for(;;)switch(e.prev=e.next){case 0:return n=c.length>1&&void 0!==c[1]?c[1]:{},i=(r=c.length>2&&void 0!==c[2]?c[2]:{}).abortSignal,o=void 0===i?null:i,a=r.responseType,s=void 0===a?void 0:a,e.abrupt("return",this.performRequest("get",t,{queryParameters:n,abortSignal:o,responseType:s}));case 3:case"end":return e.stop()}}),e,this)}))),function(e){return u.apply(this,arguments)})},{key:"delete",value:(s=S(O().mark((function e(t){var n,r=arguments;return O().wrap((function(e){for(;;)switch(e.prev=e.next){case 0:return n=r.length>1&&void 0!==r[1]?r[1]:{},e.abrupt("return",this.performRequest("delete",t,{queryParameters:n}));case 2:case"end":return e.stop()}}),e,this)}))),function(e){return s.apply(this,arguments)})},{key:"post",value:(a=S(O().mark((function e(t){var n,r,i,o=arguments;return O().wrap((function(e){for(;;)switch(e.prev=e.next){case 0:return n=o.length>1&&void 0!==o[1]?o[1]:{},r=o.length>2&&void 0!==o[2]?o[2]:{},i=o.length>3&&void 0!==o[3]?o[3]:{},e.abrupt("return",this.performRequest("post",t,{queryParameters:r,bodyParameters:n,additionalHeaders:i}));case 4:case"end":return e.stop()}}),e,this)}))),function(e){return a.apply(this,arguments)})},{key:"put",value:(r=S(O().mark((function e(t){var n,r,i=arguments;return O().wrap((function(e){for(;;)switch(e.prev=e.next){case 0:return n=i.length>1&&void 0!==i[1]?i[1]:{},r=i.length>2&&void 0!==i[2]?i[2]:{},e.abrupt("return",this.performRequest("put",t,{queryParameters:r,bodyParameters:n}));case 3:case"end":return e.stop()}}),e,this)}))),function(e){return r.apply(this,arguments)})},{key:"patch",value:(n=S(O().mark((function e(t){var n,r,i=arguments;return O().wrap((function(e){for(;;)switch(e.prev=e.next){case 0:return n=i.length>1&&void 0!==i[1]?i[1]:{},r=i.length>2&&void 0!==i[2]?i[2]:{},e.abrupt("return",this.performRequest("patch",t,{queryParameters:r,bodyParameters:n}));case 3:case"end":return e.stop()}}),e,this)}))),function(e){return n.apply(this,arguments)})},{key:"getAdapter",value:function(){if(this.configuration.axiosAdapter)return"function"==typeof this.configuration.axiosAdapter?this.configuration.axiosAdapter:"undefined"!=typeof navigator&&"Cloudflare-Workers"===navigator.userAgent?Mt.getAdapter(this.configuration.axiosAdapter).bind(globalThis):Mt.getAdapter(this.configuration.axiosAdapter)}},{key:"performRequest",value:(t=S(O().mark((function e(t,n,r){var i,a,s,c,u,l,p,h,f,d,y,v,m,g,w,b,C,R,k,S,E=this;return O().wrap((function(e){for(;;)switch(e.prev=e.next){case 0:i=r.queryParameters,a=void 0===i?null:i,s=r.bodyParameters,c=void 0===s?null:s,u=r.additionalHeaders,l=void 0===u?{}:u,p=r.abortSignal,h=void 0===p?null:p,f=r.responseType,d=void 0===f?void 0:f,y=r.skipConnectionTimeout,v=void 0!==y&&y,m=r.enableKeepAlive,g=void 0===m?void 0:m,this.configuration.validate(),w=Date.now(),C=!1,this.logger.debug("Request #".concat(w,": Performing ").concat(t.toUpperCase()," request: ").concat(n)),R=O().mark((function e(){var r,i,s,u,p,f,y,m,R,k;return O().wrap((function(e){for(;;)switch(e.prev=e.next){case 0:if(r=E.getNextNode(w),E.logger.debug("Request #".concat(w,": Attempting ").concat(t.toUpperCase()," request Try #").concat(S," to Node ").concat(r.index)),!h||!h.aborted){e.next=4;break}return e.abrupt("return",{v:Promise.reject(new Error("Request aborted by caller."))});case 4:return e.prev=4,s={adapter:E.getAdapter(),method:t,url:E.uriFor(n,r),headers:Object.assign({},E.defaultHeaders(),l,E.additionalUserHeaders),maxContentLength:1/0,maxBodyLength:1/0,responseType:d,validateStatus:function(e){return e>0},transformResponse:[function(e,t){var n=e;return void 0!==t&&"string"==typeof e&&t["content-type"]&&t["content-type"].startsWith("application/json")&&(n=JSON.parse(e)),n}]},!0!==v&&(s.timeout=1e3*E.connectionTimeoutSeconds),a&&0!==Object.keys(a).length&&(s.params=a),E.sendApiKeyAsQueryParam&&(s.params=s.params||{},s.params["x-typesense-api-key"]=E.apiKey),E.configuration.httpAgent?(E.logger.debug("Request #".concat(w,": Using custom httpAgent")),s.httpAgent=E.configuration.httpAgent):!0===g&&(sn?(E.logger.debug("Request #".concat(w,": Enabling KeepAlive")),s.httpAgent=new Kt.Agent({keepAlive:!0})):E.logger.warn("Request #".concat(w,": Cannot use custom httpAgent in a browser environment to enable keepAlive"))),E.configuration.httpsAgent?(E.logger.debug("Request #".concat(w,": Using custom httpsAgent")),s.httpsAgent=E.configuration.httpsAgent):!0===g&&(sn?(E.logger.debug("Request #".concat(w,": Enabling keepAlive")),s.httpsAgent=new zt.Agent({keepAlive:!0})):E.logger.warn("Request #".concat(w,": Cannot use custom httpAgent in a browser environment to enable keepAlive"))),E.configuration.paramsSerializer&&(E.logger.debug("Request #".concat(w,": Using custom paramsSerializer")),s.paramsSerializer=E.configuration.paramsSerializer),c&&("string"==typeof c&&0!==c.length||"object"===o(c)&&0!==Object.keys(c).length)&&(s.data=c),h&&(u=Mt.CancelToken,p=u.source(),i=function(){C=!0,p.cancel()},h.addEventListener("abort",i),s.cancelToken=p.token),e.next=16,Mt(s);case 16:if((f=e.sent).status>=1&&f.status<=499&&E.setNodeHealthcheck(r,an),E.logger.debug("Request #".concat(w,": Request to Node ").concat(r.index," was made. Response Code was ").concat(f.status,".")),!(f.status>=200&&f.status<300)){e.next=23;break}return e.abrupt("return",{v:Promise.resolve(f.data)});case 23:if(!(f.status<500)){e.next=27;break}return e.abrupt("return",{v:Promise.reject(E.customErrorForResponse(f,null===(y=f.data)||void 0===y?void 0:y.message,s.data))});case 27:throw E.customErrorForResponse(f,null===(m=f.data)||void 0===m?void 0:m.message,s.data);case 28:e.next=40;break;case 30:if(e.prev=30,e.t0=e.catch(4),C||E.setNodeHealthcheck(r,!1),b=e.t0,E.logger.warn("Request #".concat(w,": Request to Node ").concat(r.index,' failed due to "').concat(null!==(R=null===e.t0||void 0===e.t0?void 0:e.t0.code)&&void 0!==R?R:""," ").concat(e.t0.message).concat(null==e.t0.response?"":" - "+JSON.stringify(null===(k=e.t0.response)||void 0===k?void 0:k.data),'"')),!C){e.next=37;break}return e.abrupt("return",{v:Promise.reject(new Error("Request aborted by caller."))});case 37:return S0&&void 0!==arguments[0]?arguments[0]:0;if(null!=this.nearestNode){if(this.logger.debug("Request #".concat(e,": Nodes Health: Node ").concat(this.nearestNode.index," is ").concat(!0===this.nearestNode.isHealthy?"Healthy":"Unhealthy")),!0===this.nearestNode.isHealthy||this.nodeDueForHealthcheck(this.nearestNode,e))return this.logger.debug("Request #".concat(e,": Updated current node to Node ").concat(this.nearestNode.index)),this.nearestNode;this.logger.debug("Request #".concat(e,": Falling back to individual nodes"))}this.logger.debug("Request #".concat(e,": Nodes Health: ").concat(this.nodes.map((function(e){return"Node ".concat(e.index," is ").concat(!0===e.isHealthy?"Healthy":"Unhealthy")})).join(" || ")));for(var t=this.nodes[0],n=0;n<=this.nodes.length;n++)if(this.currentNodeIndex=(this.currentNodeIndex+1)%this.nodes.length,!0===(t=this.nodes[this.currentNodeIndex]).isHealthy||this.nodeDueForHealthcheck(t,e))return this.logger.debug("Request #".concat(e,": Updated current node to Node ").concat(t.index)),t;return this.logger.debug("Request #".concat(e,": No healthy nodes were found. Returning the next node, Node ").concat(t.index)),t}},{key:"nodeDueForHealthcheck",value:function(e){var t=arguments.length>1&&void 0!==arguments[1]?arguments[1]:0,n=Date.now()-e.lastAccessTimestamp>1e3*this.healthcheckIntervalSeconds;return n&&this.logger.debug("Request #".concat(t,": Node ").concat(e.index," has exceeded healtcheckIntervalSeconds of ").concat(this.healthcheckIntervalSeconds,". Adding it back into rotation.")),n}},{key:"initializeMetadataForNodes",value:function(){var e=this;null!=this.nearestNode&&(this.nearestNode.index="nearestNode",this.setNodeHealthcheck(this.nearestNode,an)),this.nodes.forEach((function(t,n){t.index=n,e.setNodeHealthcheck(t,an)}))}},{key:"setNodeHealthcheck",value:function(e,t){e.isHealthy=t,e.lastAccessTimestamp=Date.now()}},{key:"uriFor",value:function(e,t){return null!=t.url?"".concat(t.url).concat(e):"".concat(t.protocol,"://").concat(t.host,":").concat(t.port).concat(t.path).concat(e)}},{key:"defaultHeaders",value:function(){var e={};return this.sendApiKeyAsQueryParam||(e["X-TYPESENSE-API-KEY"]=this.apiKey),e["Content-Type"]="application/json",e}},{key:"timer",value:(e=S(O().mark((function e(t){return O().wrap((function(e){for(;;)switch(e.prev=e.next){case 0:return e.abrupt("return",new Promise((function(e){return setTimeout(e,1e3*t)})));case 1:case"end":return e.stop()}}),e)}))),function(t){return e.apply(this,arguments)})},{key:"customErrorForResponse",value:function(e,t,n){var r="Request failed with HTTP code ".concat(e.status);return"string"==typeof t&&""!==t.trim()&&(r+=" | Server said: ".concat(t)),new g(r,n,e.status),400===e.status?new Wt(r):401===e.status?new Vt(r):404===e.status?new $t(r):409===e.status?new Yt(r):422===e.status?new en(r):e.status>=500&&e.status<=599?new nn(r):new on(r)}}]);var e,t,n,r,a,s,u}(),un="/collections",ln=function(){return c((function e(t){i(this,e),this.apiCall=t}),[{key:"create",value:(t=S(O().mark((function e(t,n){return O().wrap((function(e){for(;;)switch(e.prev=e.next){case 0:return e.abrupt("return",this.apiCall.post(un,t,n));case 1:case"end":return e.stop()}}),e,this)}))),function(e,n){return t.apply(this,arguments)})},{key:"retrieve",value:(e=S(O().mark((function e(){var t,n=arguments;return O().wrap((function(e){for(;;)switch(e.prev=e.next){case 0:return t=n.length>0&&void 0!==n[0]?n[0]:{},e.abrupt("return",this.apiCall.get(un,t));case 2:case"end":return e.stop()}}),e,this)}))),function(){return e.apply(this,arguments)})}],[{key:"RESOURCEPATH",get:function(){return un}}]);var e,t}();function pn(){try{var e=!Boolean.prototype.valueOf.call(Reflect.construct(Boolean,[],(function(){})))}catch(e){}return(pn=function(){return!!e})()}var hn=function(e){function t(e,n,r){var o,a,s,c;return i(this,t),a=this,c=[e],s=h(s=t),(o=p(a,pn()?Reflect.construct(s,c||[],h(a).constructor):s.apply(a,c))).importResults=n,o.payload=r,o}return d(t,e),c(t)}(g);function fn(e,t){(null==t||t>e.length)&&(t=e.length);for(var n=0,r=Array(t);nc&&(y=this.responseCache.keys().next().value)&&this.responseCache.delete(y),this.responsePromiseCache.size>c&&(v=this.responsePromiseCache.keys().next().value)&&this.responsePromiseCache.delete(v),e.abrupt("return",d);case 37:case"end":return e.stop()}}),e,this)}))),function(t,n,r,i){return e.apply(this,arguments)})}]);var e}(),mn={query_by:"query_by",query_by_weights:"query_by_weights",facet_by:"facet_by",group_by:"group_by",include_fields:"include_fields",exclude_fields:"exclude_fields",highlight_fields:"highlight_fields",highlight_full_fields:"highlight_full_fields",pinned_hits:"pinned_hits",hidden_hits:"hidden_hits",infix:"infix",override_tags:"override_tags",num_typos:"num_typos",prefix:"prefix",sort_by:"sort_by"};function gn(e,t){var n=Object.keys(e);if(Object.getOwnPropertySymbols){var r=Object.getOwnPropertySymbols(e);t&&(r=r.filter((function(t){return Object.getOwnPropertyDescriptor(e,t).enumerable}))),n.push.apply(n,r)}return n}function wn(e){return Object.keys(mn).filter((function(t){return void 0!==e[t]})).every((function(t){return n=e[t],!Array.isArray(n);var n}))}function bn(e){var t=function(e){for(var t=1;t1&&void 0!==l[1]?l[1]:{}).cacheSearchResultsForSeconds,i=void 0===r?this.configuration.cacheSearchResultsForSeconds:r,o=n.abortSignal,a=void 0===o?null:o,s={},!0===this.configuration.useServerSideSearchCache&&(s.use_cache=!0),c=bn(t),u=Object.assign({},s,c),e.abrupt("return",this.requestWithCache.perform(this.apiCall,this.apiCall.get,[this.endpointPath("search"),u,{abortSignal:a}],{cacheResponseForSeconds:i}));case 6:case"end":return e.stop()}}),e,this)}))),function(t){return e.apply(this,arguments)})},{key:"endpointPath",value:function(e){return"".concat(ln.RESOURCEPATH,"/").concat(this.collectionName).concat(Cn).concat(void 0===e?"":"/"+e)}}],[{key:"RESOURCEPATH",get:function(){return Cn}}]);var e}();function kn(){try{var e=!Boolean.prototype.valueOf.call(Reflect.construct(Boolean,[],(function(){})))}catch(e){}return(kn=function(){return!!e})()}var Sn="undefined"!=typeof process&&null!=process.versions&&null!=process.versions.node,En=function(e){function t(e,n,r){return i(this,t),o=this,s=[e,n,r],a=h(a=t),p(o,kn()?Reflect.construct(a,s||[],h(o).constructor):a.apply(o,s));var o,a,s}return d(t,e),c(t,[{key:"create",value:(y=S(O().mark((function e(t){var n,r=arguments;return O().wrap((function(e){for(;;)switch(e.prev=e.next){case 0:if(n=r.length>1&&void 0!==r[1]?r[1]:{},t){e.next=3;break}throw new Error("No document provided");case 3:return e.abrupt("return",this.apiCall.post(this.endpointPath(),t,n));case 4:case"end":return e.stop()}}),e,this)}))),function(e){return y.apply(this,arguments)})},{key:"upsert",value:(f=S(O().mark((function e(t){var n,r=arguments;return O().wrap((function(e){for(;;)switch(e.prev=e.next){case 0:if(n=r.length>1&&void 0!==r[1]?r[1]:{},t){e.next=3;break}throw new Error("No document provided");case 3:return e.abrupt("return",this.apiCall.post(this.endpointPath(),t,Object.assign({},n,{action:"upsert"})));case 4:case"end":return e.stop()}}),e,this)}))),function(e){return f.apply(this,arguments)})},{key:"update",value:(l=S(O().mark((function e(t){var n,r=arguments;return O().wrap((function(e){for(;;)switch(e.prev=e.next){case 0:if(n=r.length>1&&void 0!==r[1]?r[1]:{},t){e.next=3;break}throw new Error("No document provided");case 3:if(null==n.filter_by){e.next=7;break}return e.abrupt("return",this.apiCall.patch(this.endpointPath(),t,Object.assign({},n)));case 7:return e.abrupt("return",this.apiCall.post(this.endpointPath(),t,Object.assign({},n,{action:"update"})));case 8:case"end":return e.stop()}}),e,this)}))),function(e){return l.apply(this,arguments)})},{key:"delete",value:(u=S(O().mark((function e(){var t,n=arguments;return O().wrap((function(e){for(;;)switch(e.prev=e.next){case 0:return t=n.length>0&&void 0!==n[0]?n[0]:{},e.abrupt("return",this.apiCall.delete(this.endpointPath(),t));case 2:case"end":return e.stop()}}),e,this)}))),function(){return u.apply(this,arguments)})},{key:"createMany",value:(s=S(O().mark((function e(t){var n,r=arguments;return O().wrap((function(e){for(;;)switch(e.prev=e.next){case 0:return n=r.length>1&&void 0!==r[1]?r[1]:{},this.configuration.logger.warn("createMany is deprecated and will be removed in a future version. Use import instead, which now takes both an array of documents or a JSONL string of documents"),e.abrupt("return",this.import(t,n));case 3:case"end":return e.stop()}}),e,this)}))),function(e){return s.apply(this,arguments)})},{key:"import",value:(a=S(O().mark((function e(t){var n,r,i,o,a,s=arguments;return O().wrap((function(e){for(;;)switch(e.prev=e.next){case 0:if(n=s.length>1&&void 0!==s[1]?s[1]:{},!Array.isArray(t)){e.next=15;break}if(0!==t.length){e.next=4;break}throw new Wt("No documents provided");case 4:e.prev=4,r=t.map((function(e){return JSON.stringify(e)})).join("\n"),e.next=13;break;case 8:if(e.prev=8,e.t0=e.catch(4),!(e.t0 instanceof RangeError&&e.t0.message.includes("Too many properties to enumerate"))){e.next=12;break}throw new Error("".concat(e.t0,"\n It looks like you have reached a Node.js limit that restricts the number of keys in an Object: https://stackoverflow.com/questions/9282869/are-there-limits-to-the-number-of-properties-in-a-javascript-object\n\n Please try reducing the number of keys in your document, or using CURL to import your data.\n "));case 12:throw new Error(e.t0);case 13:e.next=18;break;case 15:if(null!=(c=r=t)&&""!==c&&0!==c.length){e.next=18;break}throw new Wt("No documents provided");case 18:return e.next=20,this.apiCall.performRequest("post",this.endpointPath("import"),{queryParameters:n,bodyParameters:r,additionalHeaders:{"Content-Type":"text/plain"},skipConnectionTimeout:!0,enableKeepAlive:!!Sn});case 20:if(i=e.sent,!Array.isArray(t)){e.next=31;break}if(o=i.split("\n").map((function(e){return JSON.parse(e)})),!((a=o.filter((function(e){return!1===e.success}))).length>0)){e.next=28;break}throw new hn("".concat(o.length-a.length," documents imported successfully, ").concat(a.length," documents failed during import. Use `error.importResults` from the raised exception to get a detailed error reason for each document."),o,{documentsInJSONLFormat:r,options:n,failedItems:a,successCount:o.length-a.length});case 28:return e.abrupt("return",o);case 29:e.next=32;break;case 31:return e.abrupt("return",i);case 32:case"end":return e.stop()}var c}),e,this,[[4,8]])}))),function(e){return a.apply(this,arguments)})},{key:"importStream",value:(o=S(O().mark((function e(t){var n,r,i,o,a=arguments;return O().wrap((function(e){for(;;)switch(e.prev=e.next){case 0:return n=a.length>1&&void 0!==a[1]?a[1]:{},e.next=3,this.apiCall.performRequest("post",this.endpointPath("import"),{queryParameters:n,bodyParameters:t,additionalHeaders:{"Content-Type":"text/plain"},skipConnectionTimeout:!0,enableKeepAlive:!!Sn});case 3:if(r=e.sent,i=r.split("\n").map((function(e){return JSON.parse(e)})),!((o=i.filter((function(e){return!1===e.success}))).length>0)){e.next=10;break}throw new hn("".concat(i.length-o.length," documents imported successfully, ").concat(o.length," documents failed during import. Use `error.importResults` from the raised exception to get a detailed error reason for each document."),i,{documentsInJSONLFormat:t,options:n,failedItems:o,successCount:i.length-o.length});case 10:return e.abrupt("return",i);case 11:case"end":return e.stop()}}),e,this)}))),function(e){return o.apply(this,arguments)})},{key:"export",value:(r=S(O().mark((function e(){var t,n=arguments;return O().wrap((function(e){for(;;)switch(e.prev=e.next){case 0:return t=n.length>0&&void 0!==n[0]?n[0]:{},e.abrupt("return",this.apiCall.get(this.endpointPath("export"),t));case 2:case"end":return e.stop()}}),e,this)}))),function(){return r.apply(this,arguments)})},{key:"exportStream",value:(n=S(O().mark((function e(){var t,n=arguments;return O().wrap((function(e){for(;;)switch(e.prev=e.next){case 0:return t=n.length>0&&void 0!==n[0]?n[0]:{},e.abrupt("return",this.apiCall.get(this.endpointPath("export"),t,{responseType:"stream"}));case 2:case"end":return e.stop()}}),e,this)}))),function(){return n.apply(this,arguments)})}]);var n,r,o,a,s,u,l,f,y}(Rn),On=function(){function e(t,n){i(this,e),this.collectionName=t,this.apiCall=n}return c(e,[{key:"upsert",value:(n=S(O().mark((function e(t,n){return O().wrap((function(e){for(;;)switch(e.prev=e.next){case 0:return e.abrupt("return",this.apiCall.put(this.endpointPath(t),n));case 1:case"end":return e.stop()}}),e,this)}))),function(e,t){return n.apply(this,arguments)})},{key:"retrieve",value:(t=S(O().mark((function e(){return O().wrap((function(e){for(;;)switch(e.prev=e.next){case 0:return e.abrupt("return",this.apiCall.get(this.endpointPath()));case 1:case"end":return e.stop()}}),e,this)}))),function(){return t.apply(this,arguments)})},{key:"endpointPath",value:function(t){return"".concat(ln.RESOURCEPATH,"/").concat(this.collectionName).concat(e.RESOURCEPATH).concat(void 0===t?"":"/"+encodeURIComponent(t))}}],[{key:"RESOURCEPATH",get:function(){return"/overrides"}}]);var t,n}(),Pn=function(){return c((function e(t,n,r){i(this,e),this.collectionName=t,this.overrideId=n,this.apiCall=r}),[{key:"retrieve",value:(t=S(O().mark((function e(){return O().wrap((function(e){for(;;)switch(e.prev=e.next){case 0:return e.abrupt("return",this.apiCall.get(this.endpointPath()));case 1:case"end":return e.stop()}}),e,this)}))),function(){return t.apply(this,arguments)})},{key:"delete",value:(e=S(O().mark((function e(){return O().wrap((function(e){for(;;)switch(e.prev=e.next){case 0:return e.abrupt("return",this.apiCall.delete(this.endpointPath()));case 1:case"end":return e.stop()}}),e,this)}))),function(){return e.apply(this,arguments)})},{key:"endpointPath",value:function(){return"".concat(ln.RESOURCEPATH,"/").concat(encodeURIComponent(this.collectionName)).concat(On.RESOURCEPATH,"/").concat(encodeURIComponent(this.overrideId))}}]);var e,t}(),xn=function(){function e(t,n){i(this,e),this.collectionName=t,this.apiCall=n}return c(e,[{key:"upsert",value:(n=S(O().mark((function e(t,n){return O().wrap((function(e){for(;;)switch(e.prev=e.next){case 0:return e.abrupt("return",this.apiCall.put(this.endpointPath(t),n));case 1:case"end":return e.stop()}}),e,this)}))),function(e,t){return n.apply(this,arguments)})},{key:"retrieve",value:(t=S(O().mark((function e(){return O().wrap((function(e){for(;;)switch(e.prev=e.next){case 0:return e.abrupt("return",this.apiCall.get(this.endpointPath()));case 1:case"end":return e.stop()}}),e,this)}))),function(){return t.apply(this,arguments)})},{key:"endpointPath",value:function(t){return"".concat(ln.RESOURCEPATH,"/").concat(encodeURIComponent(this.collectionName)).concat(e.RESOURCEPATH).concat(void 0===t?"":"/"+encodeURIComponent(t))}}],[{key:"RESOURCEPATH",get:function(){return"/synonyms"}}]);var t,n}(),An=function(){return c((function e(t,n,r){i(this,e),this.collectionName=t,this.synonymId=n,this.apiCall=r}),[{key:"retrieve",value:(t=S(O().mark((function e(){return O().wrap((function(e){for(;;)switch(e.prev=e.next){case 0:return e.abrupt("return",this.apiCall.get(this.endpointPath()));case 1:case"end":return e.stop()}}),e,this)}))),function(){return t.apply(this,arguments)})},{key:"delete",value:(e=S(O().mark((function e(){return O().wrap((function(e){for(;;)switch(e.prev=e.next){case 0:return e.abrupt("return",this.apiCall.delete(this.endpointPath()));case 1:case"end":return e.stop()}}),e,this)}))),function(){return e.apply(this,arguments)})},{key:"endpointPath",value:function(){return"".concat(ln.RESOURCEPATH,"/").concat(encodeURIComponent(this.collectionName)).concat(xn.RESOURCEPATH,"/").concat(encodeURIComponent(this.synonymId))}}]);var e,t}(),Tn=function(){return c((function e(t,n,r){i(this,e),this.collectionName=t,this.documentId=n,this.apiCall=r}),[{key:"retrieve",value:(n=S(O().mark((function e(){return O().wrap((function(e){for(;;)switch(e.prev=e.next){case 0:return e.abrupt("return",this.apiCall.get(this.endpointPath()));case 1:case"end":return e.stop()}}),e,this)}))),function(){return n.apply(this,arguments)})},{key:"delete",value:(t=S(O().mark((function e(t){return O().wrap((function(e){for(;;)switch(e.prev=e.next){case 0:return e.abrupt("return",this.apiCall.delete(this.endpointPath(),t));case 1:case"end":return e.stop()}}),e,this)}))),function(e){return t.apply(this,arguments)})},{key:"update",value:(e=S(O().mark((function e(t){var n,r=arguments;return O().wrap((function(e){for(;;)switch(e.prev=e.next){case 0:return n=r.length>1&&void 0!==r[1]?r[1]:{},e.abrupt("return",this.apiCall.patch(this.endpointPath(),t,n));case 2:case"end":return e.stop()}}),e,this)}))),function(t){return e.apply(this,arguments)})},{key:"endpointPath",value:function(){return"".concat(ln.RESOURCEPATH,"/").concat(encodeURIComponent(this.collectionName)).concat(En.RESOURCEPATH,"/").concat(encodeURIComponent(this.documentId))}}]);var e,t,n}(),Nn=function(){return c((function e(t,n,r){i(this,e),u(this,"individualDocuments",{}),u(this,"individualOverrides",{}),u(this,"individualSynonyms",{}),this.name=t,this.apiCall=n,this.configuration=r,this.name=t,this.apiCall=n,this.configuration=r,this._documents=new En(this.name,this.apiCall,this.configuration),this._overrides=new On(this.name,this.apiCall),this._synonyms=new xn(this.name,this.apiCall)}),[{key:"retrieve",value:(r=S(O().mark((function e(){return O().wrap((function(e){for(;;)switch(e.prev=e.next){case 0:return e.abrupt("return",this.apiCall.get(this.endpointPath()));case 1:case"end":return e.stop()}}),e,this)}))),function(){return r.apply(this,arguments)})},{key:"update",value:(n=S(O().mark((function e(t){return O().wrap((function(e){for(;;)switch(e.prev=e.next){case 0:return e.abrupt("return",this.apiCall.patch(this.endpointPath(),t));case 1:case"end":return e.stop()}}),e,this)}))),function(e){return n.apply(this,arguments)})},{key:"delete",value:(t=S(O().mark((function e(){var t,n=arguments;return O().wrap((function(e){for(;;)switch(e.prev=e.next){case 0:return t=n.length>0&&void 0!==n[0]?n[0]:{},e.abrupt("return",this.apiCall.delete(this.endpointPath(),t));case 2:case"end":return e.stop()}}),e,this)}))),function(){return t.apply(this,arguments)})},{key:"exists",value:(e=S(O().mark((function e(){return O().wrap((function(e){for(;;)switch(e.prev=e.next){case 0:return e.prev=0,e.next=3,this.retrieve();case 3:return e.abrupt("return",!0);case 6:if(e.prev=6,e.t0=e.catch(0),!(e.t0 instanceof $t)){e.next=10;break}return e.abrupt("return",!1);case 10:throw e.t0;case 11:case"end":return e.stop()}}),e,this,[[0,6]])}))),function(){return e.apply(this,arguments)})},{key:"documents",value:function(e){return e?(void 0===this.individualDocuments[e]&&(this.individualDocuments[e]=new Tn(this.name,e,this.apiCall)),this.individualDocuments[e]):this._documents}},{key:"overrides",value:function(e){return void 0===e?this._overrides:(void 0===this.individualOverrides[e]&&(this.individualOverrides[e]=new Pn(this.name,e,this.apiCall)),this.individualOverrides[e])}},{key:"synonyms",value:function(e){return void 0===e?this._synonyms:(void 0===this.individualSynonyms[e]&&(this.individualSynonyms[e]=new An(this.name,e,this.apiCall)),this.individualSynonyms[e])}},{key:"endpointPath",value:function(){return"".concat(ln.RESOURCEPATH,"/").concat(encodeURIComponent(this.name))}}]);var e,t,n,r}(),jn="/aliases",Un=function(){function e(t){i(this,e),this.apiCall=t}return c(e,[{key:"upsert",value:(n=S(O().mark((function e(t,n){return O().wrap((function(e){for(;;)switch(e.prev=e.next){case 0:return e.abrupt("return",this.apiCall.put(this.endpointPath(t),n));case 1:case"end":return e.stop()}}),e,this)}))),function(e,t){return n.apply(this,arguments)})},{key:"retrieve",value:(t=S(O().mark((function e(){return O().wrap((function(e){for(;;)switch(e.prev=e.next){case 0:return e.abrupt("return",this.apiCall.get(jn));case 1:case"end":return e.stop()}}),e,this)}))),function(){return t.apply(this,arguments)})},{key:"endpointPath",value:function(t){return"".concat(e.RESOURCEPATH,"/").concat(encodeURIComponent(t))}}],[{key:"RESOURCEPATH",get:function(){return jn}}]);var t,n}(),_n=function(){return c((function e(t,n){i(this,e),this.name=t,this.apiCall=n}),[{key:"retrieve",value:(t=S(O().mark((function e(){return O().wrap((function(e){for(;;)switch(e.prev=e.next){case 0:return e.abrupt("return",this.apiCall.get(this.endpointPath()));case 1:case"end":return e.stop()}}),e,this)}))),function(){return t.apply(this,arguments)})},{key:"delete",value:(e=S(O().mark((function e(){return O().wrap((function(e){for(;;)switch(e.prev=e.next){case 0:return e.abrupt("return",this.apiCall.delete(this.endpointPath()));case 1:case"end":return e.stop()}}),e,this)}))),function(){return e.apply(this,arguments)})},{key:"endpointPath",value:function(){return"".concat(Un.RESOURCEPATH,"/").concat(encodeURIComponent(this.name))}}]);var e,t}(),Ln=n(612),In="/keys",qn=function(){function e(t){i(this,e),this.apiCall=t,this.apiCall=t}return c(e,[{key:"create",value:(n=S(O().mark((function t(n){return O().wrap((function(t){for(;;)switch(t.prev=t.next){case 0:return t.abrupt("return",this.apiCall.post(e.RESOURCEPATH,n));case 1:case"end":return t.stop()}}),t,this)}))),function(e){return n.apply(this,arguments)})},{key:"retrieve",value:(t=S(O().mark((function e(){return O().wrap((function(e){for(;;)switch(e.prev=e.next){case 0:return e.abrupt("return",this.apiCall.get(In));case 1:case"end":return e.stop()}}),e,this)}))),function(){return t.apply(this,arguments)})},{key:"generateScopedSearchKey",value:function(e,t){var n=bn(t),r=JSON.stringify(n),i=Buffer.from((0,Ln.createHmac)("sha256",e).update(r).digest("base64")),o=e.substr(0,4),a="".concat(i).concat(o).concat(r);return Buffer.from(a).toString("base64")}}],[{key:"RESOURCEPATH",get:function(){return In}}]);var t,n}(),Fn=function(){return c((function e(t,n){i(this,e),this.id=t,this.apiCall=n}),[{key:"retrieve",value:(t=S(O().mark((function e(){return O().wrap((function(e){for(;;)switch(e.prev=e.next){case 0:return e.abrupt("return",this.apiCall.get(this.endpointPath()));case 1:case"end":return e.stop()}}),e,this)}))),function(){return t.apply(this,arguments)})},{key:"delete",value:(e=S(O().mark((function e(){return O().wrap((function(e){for(;;)switch(e.prev=e.next){case 0:return e.abrupt("return",this.apiCall.delete(this.endpointPath()));case 1:case"end":return e.stop()}}),e,this)}))),function(){return e.apply(this,arguments)})},{key:"endpointPath",value:function(){return"".concat(qn.RESOURCEPATH,"/").concat(encodeURIComponent(this.id))}}]);var e,t}(),Dn=function(){return c((function e(t){i(this,e),this.apiCall=t}),[{key:"retrieve",value:(e=S(O().mark((function e(){return O().wrap((function(e){for(;;)switch(e.prev=e.next){case 0:return e.abrupt("return",this.apiCall.get("/debug"));case 1:case"end":return e.stop()}}),e,this)}))),function(){return e.apply(this,arguments)})}]);var e}(),Hn=function(){return c((function e(t){i(this,e),this.apiCall=t}),[{key:"retrieve",value:(e=S(O().mark((function e(){return O().wrap((function(e){for(;;)switch(e.prev=e.next){case 0:return e.abrupt("return",this.apiCall.get("/metrics.json"));case 1:case"end":return e.stop()}}),e,this)}))),function(){return e.apply(this,arguments)})}]);var e}(),Bn=function(){return c((function e(t){i(this,e),this.apiCall=t}),[{key:"retrieve",value:(e=S(O().mark((function e(){return O().wrap((function(e){for(;;)switch(e.prev=e.next){case 0:return e.abrupt("return",this.apiCall.get("/stats.json"));case 1:case"end":return e.stop()}}),e,this)}))),function(){return e.apply(this,arguments)})}]);var e}(),Mn=function(){return c((function e(t){i(this,e),this.apiCall=t}),[{key:"retrieve",value:(e=S(O().mark((function e(){return O().wrap((function(e){for(;;)switch(e.prev=e.next){case 0:return e.abrupt("return",this.apiCall.get("/health"));case 1:case"end":return e.stop()}}),e,this)}))),function(){return e.apply(this,arguments)})}]);var e}(),Kn=function(){return c((function e(t){i(this,e),this.apiCall=t}),[{key:"perform",value:(e=S(O().mark((function e(t){var n,r=arguments;return O().wrap((function(e){for(;;)switch(e.prev=e.next){case 0:return n=r.length>1&&void 0!==r[1]?r[1]:{},e.abrupt("return",this.apiCall.post("".concat("/operations","/").concat(t),{},n));case 2:case"end":return e.stop()}}),e,this)}))),function(t){return e.apply(this,arguments)})}]);var e}();function zn(e,t){var n=Object.keys(e);if(Object.getOwnPropertySymbols){var r=Object.getOwnPropertySymbols(e);t&&(r=r.filter((function(t){return Object.getOwnPropertyDescriptor(e,t).enumerable}))),n.push.apply(n,r)}return n}function Jn(e){for(var t=1;t2&&void 0!==arguments[2]&&arguments[2];i(this,e),this.apiCall=t,this.configuration=n,this.useTextContentType=r,this.requestWithCache=new vn}),[{key:"clearCache",value:function(){this.requestWithCache.clearCache()}},{key:"perform",value:(e=S(O().mark((function e(t){var n,r,i,o,a,s,c,u,l=arguments;return O().wrap((function(e){for(;;)switch(e.prev=e.next){case 0:return n=l.length>1&&void 0!==l[1]?l[1]:{},r=(l.length>2&&void 0!==l[2]?l[2]:{}).cacheSearchResultsForSeconds,i=void 0===r?this.configuration.cacheSearchResultsForSeconds:r,o={},this.useTextContentType&&(o["content-type"]="text/plain"),a={},!0===this.configuration.useServerSideSearchCache&&(a.use_cache=!0),s=Jn(Jn({},n),a),c=Jn(Jn({},t),{},{searches:t.searches.map(bn)}),u=bn(s),e.abrupt("return",this.requestWithCache.perform(this.apiCall,this.apiCall.post,["/multi_search",c,u,o],{cacheResponseForSeconds:i}));case 10:case"end":return e.stop()}}),e,this)}))),function(t){return e.apply(this,arguments)})}]);var e}(),Gn=function(){function e(t){i(this,e),this.apiCall=t}return c(e,[{key:"upsert",value:(n=S(O().mark((function e(t,n){var r,i;return O().wrap((function(e){for(;;)switch(e.prev=e.next){case 0:if("object"!==o(n.value)||!("searches"in n.value)){e.next=3;break}return r=n.value.searches.map((function(e){return bn(e)})),e.abrupt("return",this.apiCall.put(this.endpointPath(t),{value:{searches:r}}));case 3:return i=bn(n.value),e.abrupt("return",this.apiCall.put(this.endpointPath(t),{value:i}));case 5:case"end":return e.stop()}}),e,this)}))),function(e,t){return n.apply(this,arguments)})},{key:"retrieve",value:(t=S(O().mark((function e(){return O().wrap((function(e){for(;;)switch(e.prev=e.next){case 0:return e.abrupt("return",this.apiCall.get(this.endpointPath()));case 1:case"end":return e.stop()}}),e,this)}))),function(){return t.apply(this,arguments)})},{key:"endpointPath",value:function(t){return"".concat(e.RESOURCEPATH).concat(void 0===t?"":"/"+encodeURIComponent(t))}}],[{key:"RESOURCEPATH",get:function(){return"/presets"}}]);var t,n}(),Vn=function(){return c((function e(t,n){i(this,e),this.presetId=t,this.apiCall=n}),[{key:"retrieve",value:(t=S(O().mark((function e(){return O().wrap((function(e){for(;;)switch(e.prev=e.next){case 0:return e.abrupt("return",this.apiCall.get(this.endpointPath()));case 1:case"end":return e.stop()}}),e,this)}))),function(){return t.apply(this,arguments)})},{key:"delete",value:(e=S(O().mark((function e(){return O().wrap((function(e){for(;;)switch(e.prev=e.next){case 0:return e.abrupt("return",this.apiCall.delete(this.endpointPath()));case 1:case"end":return e.stop()}}),e,this)}))),function(){return e.apply(this,arguments)})},{key:"endpointPath",value:function(){return"".concat(Gn.RESOURCEPATH,"/").concat(encodeURIComponent(this.presetId))}}]);var e,t}(),Qn=function(){function e(t){i(this,e),this.apiCall=t,this.apiCall=t}return c(e,[{key:"upsert",value:(n=S(O().mark((function e(t,n){return O().wrap((function(e){for(;;)switch(e.prev=e.next){case 0:return e.abrupt("return",this.apiCall.put(this.endpointPath(t),n));case 1:case"end":return e.stop()}}),e,this)}))),function(e,t){return n.apply(this,arguments)})},{key:"retrieve",value:(t=S(O().mark((function e(){return O().wrap((function(e){for(;;)switch(e.prev=e.next){case 0:return e.abrupt("return",this.apiCall.get(this.endpointPath()));case 1:case"end":return e.stop()}}),e,this)}))),function(){return t.apply(this,arguments)})},{key:"endpointPath",value:function(t){return"".concat(e.RESOURCEPATH).concat(void 0===t?"":"/"+encodeURIComponent(t))}}],[{key:"RESOURCEPATH",get:function(){return"/analytics/rules"}}]);var t,n}(),$n=function(){return c((function e(t,n){i(this,e),this.name=t,this.apiCall=n}),[{key:"retrieve",value:(t=S(O().mark((function e(){return O().wrap((function(e){for(;;)switch(e.prev=e.next){case 0:return e.abrupt("return",this.apiCall.get(this.endpointPath()));case 1:case"end":return e.stop()}}),e,this)}))),function(){return t.apply(this,arguments)})},{key:"delete",value:(e=S(O().mark((function e(){return O().wrap((function(e){for(;;)switch(e.prev=e.next){case 0:return e.abrupt("return",this.apiCall.delete(this.endpointPath()));case 1:case"end":return e.stop()}}),e,this)}))),function(){return e.apply(this,arguments)})},{key:"endpointPath",value:function(){return"".concat(Qn.RESOURCEPATH,"/").concat(encodeURIComponent(this.name))}}]);var e,t}(),Xn=function(){function e(t){i(this,e),this.apiCall=t,this.apiCall=t}return c(e,[{key:"create",value:(t=S(O().mark((function e(t){return O().wrap((function(e){for(;;)switch(e.prev=e.next){case 0:return e.abrupt("return",this.apiCall.post(this.endpointPath(),t));case 1:case"end":return e.stop()}}),e,this)}))),function(e){return t.apply(this,arguments)})},{key:"endpointPath",value:function(t){return"".concat(e.RESOURCEPATH).concat(void 0===t?"":"/"+encodeURIComponent(t))}}],[{key:"RESOURCEPATH",get:function(){return"/analytics/events"}}]);var t}(),Yn=function(){return c((function e(t){i(this,e),u(this,"individualAnalyticsRules",{}),this.apiCall=t,this.apiCall=t,this._analyticsRules=new Qn(this.apiCall),this._analyticsEvents=new Xn(this.apiCall)}),[{key:"rules",value:function(e){return void 0===e?this._analyticsRules:(void 0===this.individualAnalyticsRules[e]&&(this.individualAnalyticsRules[e]=new $n(e,this.apiCall)),this.individualAnalyticsRules[e])}},{key:"events",value:function(){return this._analyticsEvents}}],[{key:"RESOURCEPATH",get:function(){return"/analytics"}}])}(),Zn=function(){function e(t){i(this,e),this.apiCall=t}return c(e,[{key:"upsert",value:(n=S(O().mark((function e(t,n){return O().wrap((function(e){for(;;)switch(e.prev=e.next){case 0:return e.abrupt("return",this.apiCall.put(this.endpointPath(t),n));case 1:case"end":return e.stop()}}),e,this)}))),function(e,t){return n.apply(this,arguments)})},{key:"retrieve",value:(t=S(O().mark((function e(){return O().wrap((function(e){for(;;)switch(e.prev=e.next){case 0:return e.abrupt("return",this.apiCall.get(this.endpointPath()));case 1:case"end":return e.stop()}}),e,this)}))),function(){return t.apply(this,arguments)})},{key:"endpointPath",value:function(t){return"".concat(e.RESOURCEPATH).concat(void 0===t?"":"/"+encodeURIComponent(t))}}],[{key:"RESOURCEPATH",get:function(){return"/stopwords"}}]);var t,n}(),er=function(){return c((function e(t,n){i(this,e),this.stopwordId=t,this.apiCall=n}),[{key:"retrieve",value:(t=S(O().mark((function e(){return O().wrap((function(e){for(;;)switch(e.prev=e.next){case 0:return e.abrupt("return",this.apiCall.get(this.endpointPath()));case 1:case"end":return e.stop()}}),e,this)}))),function(){return t.apply(this,arguments)})},{key:"delete",value:(e=S(O().mark((function e(){return O().wrap((function(e){for(;;)switch(e.prev=e.next){case 0:return e.abrupt("return",this.apiCall.delete(this.endpointPath()));case 1:case"end":return e.stop()}}),e,this)}))),function(){return e.apply(this,arguments)})},{key:"endpointPath",value:function(){return"".concat(Zn.RESOURCEPATH,"/").concat(encodeURIComponent(this.stopwordId))}}]);var e,t}(),tr=function(){function e(t){i(this,e),this.apiCall=t,this.apiCall=t}return c(e,[{key:"create",value:(n=S(O().mark((function e(t){return O().wrap((function(e){for(;;)switch(e.prev=e.next){case 0:return e.abrupt("return",this.apiCall.post(this.endpointPath(),t));case 1:case"end":return e.stop()}}),e,this)}))),function(e){return n.apply(this,arguments)})},{key:"retrieve",value:(t=S(O().mark((function e(){return O().wrap((function(e){for(;;)switch(e.prev=e.next){case 0:return e.abrupt("return",this.apiCall.get(this.endpointPath()));case 1:case"end":return e.stop()}}),e,this)}))),function(){return t.apply(this,arguments)})},{key:"endpointPath",value:function(t){return"".concat(e.RESOURCEPATH).concat(void 0===t?"":"/"+encodeURIComponent(t))}}],[{key:"RESOURCEPATH",get:function(){return"/conversations/models"}}]);var t,n}(),nr=function(){return c((function e(t,n){i(this,e),this.id=t,this.apiCall=n}),[{key:"update",value:(n=S(O().mark((function e(t){return O().wrap((function(e){for(;;)switch(e.prev=e.next){case 0:return e.abrupt("return",this.apiCall.put(this.endpointPath(),t));case 1:case"end":return e.stop()}}),e,this)}))),function(e){return n.apply(this,arguments)})},{key:"retrieve",value:(t=S(O().mark((function e(){return O().wrap((function(e){for(;;)switch(e.prev=e.next){case 0:return e.abrupt("return",this.apiCall.get(this.endpointPath()));case 1:case"end":return e.stop()}}),e,this)}))),function(){return t.apply(this,arguments)})},{key:"delete",value:(e=S(O().mark((function e(){return O().wrap((function(e){for(;;)switch(e.prev=e.next){case 0:return e.abrupt("return",this.apiCall.delete(this.endpointPath()));case 1:case"end":return e.stop()}}),e,this)}))),function(){return e.apply(this,arguments)})},{key:"endpointPath",value:function(){return"".concat(tr.RESOURCEPATH,"/").concat(encodeURIComponent(this.id))}}]);var e,t,n}(),rr="/conversations",ir=function(){return c((function e(t){i(this,e),u(this,"individualConversationModels",{}),this.apiCall=t,this.apiCall=t,this._conversationsModels=new tr(this.apiCall)}),[{key:"retrieve",value:(e=S(O().mark((function e(){return O().wrap((function(e){for(;;)switch(e.prev=e.next){case 0:return e.abrupt("return",this.apiCall.get(rr));case 1:case"end":return e.stop()}}),e,this)}))),function(){return e.apply(this,arguments)})},{key:"models",value:function(e){return void 0===e?this._conversationsModels:(void 0===this.individualConversationModels[e]&&(this.individualConversationModels[e]=new nr(e,this.apiCall)),this.individualConversationModels[e])}}],[{key:"RESOURCEPATH",get:function(){return rr}}]);var e}(),or=function(){return c((function e(t,n){i(this,e),this.id=t,this.apiCall=n}),[{key:"retrieve",value:(n=S(O().mark((function e(){return O().wrap((function(e){for(;;)switch(e.prev=e.next){case 0:return e.abrupt("return",this.apiCall.get(this.endpointPath()));case 1:case"end":return e.stop()}}),e,this)}))),function(){return n.apply(this,arguments)})},{key:"update",value:(t=S(O().mark((function e(t){return O().wrap((function(e){for(;;)switch(e.prev=e.next){case 0:return e.abrupt("return",this.apiCall.put(this.endpointPath(),t));case 1:case"end":return e.stop()}}),e,this)}))),function(e){return t.apply(this,arguments)})},{key:"delete",value:(e=S(O().mark((function e(){return O().wrap((function(e){for(;;)switch(e.prev=e.next){case 0:return e.abrupt("return",this.apiCall.delete(this.endpointPath()));case 1:case"end":return e.stop()}}),e,this)}))),function(){return e.apply(this,arguments)})},{key:"endpointPath",value:function(){return"".concat(ir.RESOURCEPATH,"/").concat(encodeURIComponent(this.id))}}]);var e,t,n}(),ar=function(){function e(t){i(this,e),this.apiCall=t,this.apiCall=t}return c(e,[{key:"upsert",value:(n=S(O().mark((function e(t,n){var r,i;return O().wrap((function(e){for(;;)switch(e.prev=e.next){case 0:return r=Array.isArray(n)?n.map((function(e){return JSON.stringify(e)})).join("\n"):n,e.next=3,this.apiCall.performRequest("post",this.endpointPath("import"),{queryParameters:{id:t},bodyParameters:r,additionalHeaders:{"Content-Type":"text/plain"},skipConnectionTimeout:!0});case 3:return i=e.sent,e.abrupt("return",Array.isArray(n)?i.split("\n").map((function(e){return JSON.parse(e)})):i);case 5:case"end":return e.stop()}}),e,this)}))),function(e,t){return n.apply(this,arguments)})},{key:"retrieve",value:(t=S(O().mark((function e(){return O().wrap((function(e){for(;;)switch(e.prev=e.next){case 0:return e.abrupt("return",this.apiCall.get(this.endpointPath()));case 1:case"end":return e.stop()}}),e,this)}))),function(){return t.apply(this,arguments)})},{key:"endpointPath",value:function(t){return void 0===t?"".concat(e.RESOURCEPATH):"".concat(e.RESOURCEPATH,"/").concat(encodeURIComponent(t))}}],[{key:"RESOURCEPATH",get:function(){return"/stemming/dictionaries"}}]);var t,n}(),sr=function(){return c((function e(t,n){i(this,e),this.id=t,this.apiCall=n}),[{key:"retrieve",value:(e=S(O().mark((function e(){return O().wrap((function(e){for(;;)switch(e.prev=e.next){case 0:return e.abrupt("return",this.apiCall.get(this.endpointPath()));case 1:case"end":return e.stop()}}),e,this)}))),function(){return e.apply(this,arguments)})},{key:"endpointPath",value:function(){return"".concat(ar.RESOURCEPATH,"/").concat(encodeURIComponent(this.id))}}]);var e}(),cr=function(){return c((function e(t){i(this,e),u(this,"individualStemmingDictionaries",{}),this.apiCall=t,this.apiCall=t,this._stemmingDictionaries=new ar(this.apiCall)}),[{key:"dictionaries",value:function(e){return void 0===e?this._stemmingDictionaries:(void 0===this.individualStemmingDictionaries[e]&&(this.individualStemmingDictionaries[e]=new sr(e,this.apiCall)),this.individualStemmingDictionaries[e])}}],[{key:"RESOURCEPATH",get:function(){return"/stemming"}}])}(),ur=function(){return c((function e(t){var n;i(this,e),t.sendApiKeyAsQueryParam=null!==(n=t.sendApiKeyAsQueryParam)&&void 0!==n&&n,this.configuration=new R(t),this.apiCall=new cn(this.configuration),this.debug=new Dn(this.apiCall),this.metrics=new Hn(this.apiCall),this.stats=new Bn(this.apiCall),this.health=new Mn(this.apiCall),this.operations=new Kn(this.apiCall),this.multiSearch=new Wn(this.apiCall,this.configuration),this._collections=new ln(this.apiCall),this.individualCollections={},this._aliases=new Un(this.apiCall),this.individualAliases={},this._keys=new qn(this.apiCall),this.individualKeys={},this._presets=new Gn(this.apiCall),this.individualPresets={},this._stopwords=new Zn(this.apiCall),this.individualStopwords={},this.analytics=new Yn(this.apiCall),this.stemming=new cr(this.apiCall),this._conversations=new ir(this.apiCall),this.individualConversations={}}),[{key:"collections",value:function(e){return void 0===e?this._collections:(void 0===this.individualCollections[e]&&(this.individualCollections[e]=new Nn(e,this.apiCall,this.configuration)),this.individualCollections[e])}},{key:"aliases",value:function(e){return void 0===e?this._aliases:(void 0===this.individualAliases[e]&&(this.individualAliases[e]=new _n(e,this.apiCall)),this.individualAliases[e])}},{key:"keys",value:function(e){return void 0===e?this._keys:(void 0===this.individualKeys[e]&&(this.individualKeys[e]=new Fn(e,this.apiCall)),this.individualKeys[e])}},{key:"presets",value:function(e){return void 0===e?this._presets:(void 0===this.individualPresets[e]&&(this.individualPresets[e]=new Vn(e,this.apiCall)),this.individualPresets[e])}},{key:"stopwords",value:function(e){return void 0===e?this._stopwords:(void 0===this.individualStopwords[e]&&(this.individualStopwords[e]=new er(e,this.apiCall)),this.individualStopwords[e])}},{key:"conversations",value:function(e){return void 0===e?this._conversations:(void 0===this.individualConversations[e]&&(this.individualConversations[e]=new or(e,this.apiCall)),this.individualConversations[e])}}])}();var lr=function(){return c((function e(t,n,r){i(this,e),this.name=t,this.apiCall=n,this.configuration=r,this._documents=new Rn(this.name,this.apiCall,this.configuration)}),[{key:"documents",value:function(){return this._documents}}])}(),pr=function(){return c((function e(t){var n;i(this,e),t.sendApiKeyAsQueryParam=null===(n=t.sendApiKeyAsQueryParam)||void 0===n||n,!0===t.sendApiKeyAsQueryParam&&(t.apiKey||"").length>2e3&&(console.warn("[typesense] API Key is longer than 2000 characters which is over the allowed limit, so disabling sending it as a query parameter."),t.sendApiKeyAsQueryParam=!1),this.configuration=new R(t),this.apiCall=new cn(this.configuration),this.multiSearch=new Wn(this.apiCall,this.configuration,!0),this.individualCollections={}}),[{key:"clearCache",value:function(){this.multiSearch.clearCache(),Object.entries(this.individualCollections).forEach((function(e){var t,n,r=(n=2,function(e){if(Array.isArray(e))return e}(t=e)||function(e,t){var n=null==e?null:"undefined"!=typeof Symbol&&e[Symbol.iterator]||e["@@iterator"];if(null!=n){var r,i,o,a,s=[],c=!0,u=!1;try{if(o=(n=n.call(e)).next,0===t){if(Object(n)!==n)return;c=!1}else for(;!(c=(r=o.call(n)).done)&&(s.push(r.value),s.length!==t);c=!0);}catch(e){u=!0,i=e}finally{try{if(!c&&null!=n.return&&(a=n.return(),Object(a)!==a))return}finally{if(u)throw i}}return s}}(t,n)||dn(t,n)||function(){throw new TypeError("Invalid attempt to destructure non-iterable instance.\nIn order to be iterable, non-array objects must have a [Symbol.iterator]() method.")}());r[0],r[1].documents().clearCache()}))}},{key:"collections",value:function(e){if(e)return void 0===this.individualCollections[e]&&(this.individualCollections[e]=new lr(e,this.apiCall,this.configuration)),this.individualCollections[e];throw new Error("Typesense.SearchClient only supports search operations, so the collectionName that needs to be searched must be specified. Use Typesense.Client if you need to access the collection object.")}}])}();const hr={Client:ur,SearchClient:pr,Errors:t}})(),Typesense=r})(); //# sourceMappingURL=typesense.min.js.map \ No newline at end of file diff --git a/dist/typesense.min.js.map b/dist/typesense.min.js.map index 609a002d..6487bb48 100644 --- a/dist/typesense.min.js.map +++ b/dist/typesense.min.js.map @@ -1 +1 @@ -{"version":3,"file":"typesense.min.js","mappings":"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","sources":["webpack://Typesense/./node_modules/loglevel/lib/loglevel.js","webpack://Typesense/./node_modules/@babel/runtime/helpers/regeneratorRuntime.js","webpack://Typesense/./node_modules/@babel/runtime/helpers/typeof.js","webpack://Typesense/./node_modules/@babel/runtime/regenerator/index.js","webpack://Typesense/webpack/bootstrap","webpack://Typesense/webpack/runtime/compat get default export","webpack://Typesense/webpack/runtime/define property getters","webpack://Typesense/webpack/runtime/hasOwnProperty shorthand","webpack://Typesense/webpack/runtime/make namespace object","webpack://Typesense/./node_modules/@babel/runtime/helpers/esm/classCallCheck.js","webpack://Typesense/./node_modules/@babel/runtime/helpers/esm/typeof.js","webpack://Typesense/./node_modules/@babel/runtime/helpers/esm/toPropertyKey.js","webpack://Typesense/./node_modules/@babel/runtime/helpers/esm/toPrimitive.js","webpack://Typesense/./node_modules/@babel/runtime/helpers/esm/createClass.js","webpack://Typesense/./node_modules/@babel/runtime/helpers/esm/defineProperty.js","webpack://Typesense/./node_modules/@babel/runtime/helpers/esm/assertThisInitialized.js","webpack://Typesense/./node_modules/@babel/runtime/helpers/esm/possibleConstructorReturn.js","webpack://Typesense/./node_modules/@babel/runtime/helpers/esm/getPrototypeOf.js","webpack://Typesense/./node_modules/@babel/runtime/helpers/esm/setPrototypeOf.js","webpack://Typesense/./node_modules/@babel/runtime/helpers/esm/inherits.js","webpack://Typesense/./node_modules/@babel/runtime/helpers/esm/isNativeReflectConstruct.js","webpack://Typesense/./node_modules/@babel/runtime/helpers/esm/wrapNativeSuper.js","webpack://Typesense/./node_modules/@babel/runtime/helpers/esm/isNativeFunction.js","webpack://Typesense/./node_modules/@babel/runtime/helpers/esm/construct.js","webpack://Typesense/./src/Typesense/Errors/TypesenseError.ts","webpack://Typesense/./src/Typesense/Errors/MissingConfigurationError.ts","webpack://Typesense/./src/Typesense/Configuration.ts","webpack://Typesense/./node_modules/@babel/runtime/helpers/esm/asyncToGenerator.js","webpack://Typesense/./node_modules/axios/lib/helpers/bind.js","webpack://Typesense/./node_modules/axios/lib/utils.js","webpack://Typesense/./node_modules/axios/lib/core/AxiosError.js","webpack://Typesense/./node_modules/axios/lib/helpers/toFormData.js","webpack://Typesense/./node_modules/axios/lib/helpers/AxiosURLSearchParams.js","webpack://Typesense/./node_modules/axios/lib/helpers/buildURL.js","webpack://Typesense/./node_modules/axios/lib/core/InterceptorManager.js","webpack://Typesense/./node_modules/axios/lib/defaults/transitional.js","webpack://Typesense/./node_modules/axios/lib/platform/browser/index.js","webpack://Typesense/./node_modules/axios/lib/platform/browser/classes/URLSearchParams.js","webpack://Typesense/./node_modules/axios/lib/platform/browser/classes/FormData.js","webpack://Typesense/./node_modules/axios/lib/platform/browser/classes/Blob.js","webpack://Typesense/./node_modules/axios/lib/platform/common/utils.js","webpack://Typesense/./node_modules/axios/lib/platform/index.js","webpack://Typesense/./node_modules/axios/lib/helpers/formDataToJSON.js","webpack://Typesense/./node_modules/axios/lib/defaults/index.js","webpack://Typesense/./node_modules/axios/lib/helpers/toURLEncodedForm.js","webpack://Typesense/./node_modules/axios/lib/helpers/parseHeaders.js","webpack://Typesense/./node_modules/axios/lib/core/AxiosHeaders.js","webpack://Typesense/./node_modules/axios/lib/core/transformData.js","webpack://Typesense/./node_modules/axios/lib/cancel/isCancel.js","webpack://Typesense/./node_modules/axios/lib/cancel/CanceledError.js","webpack://Typesense/./node_modules/axios/lib/core/settle.js","webpack://Typesense/./node_modules/axios/lib/helpers/speedometer.js","webpack://Typesense/./node_modules/axios/lib/helpers/progressEventReducer.js","webpack://Typesense/./node_modules/axios/lib/helpers/throttle.js","webpack://Typesense/./node_modules/axios/lib/helpers/isURLSameOrigin.js","webpack://Typesense/./node_modules/axios/lib/helpers/cookies.js","webpack://Typesense/./node_modules/axios/lib/core/buildFullPath.js","webpack://Typesense/./node_modules/axios/lib/helpers/isAbsoluteURL.js","webpack://Typesense/./node_modules/axios/lib/helpers/combineURLs.js","webpack://Typesense/./node_modules/axios/lib/core/mergeConfig.js","webpack://Typesense/./node_modules/axios/lib/helpers/resolveConfig.js","webpack://Typesense/./node_modules/axios/lib/adapters/xhr.js","webpack://Typesense/./node_modules/axios/lib/helpers/parseProtocol.js","webpack://Typesense/./node_modules/axios/lib/helpers/composeSignals.js","webpack://Typesense/./node_modules/axios/lib/helpers/trackStream.js","webpack://Typesense/./node_modules/axios/lib/adapters/fetch.js","webpack://Typesense/./node_modules/axios/lib/adapters/adapters.js","webpack://Typesense/./node_modules/axios/lib/helpers/null.js","webpack://Typesense/./node_modules/axios/lib/core/dispatchRequest.js","webpack://Typesense/./node_modules/axios/lib/env/data.js","webpack://Typesense/./node_modules/axios/lib/helpers/validator.js","webpack://Typesense/./node_modules/axios/lib/core/Axios.js","webpack://Typesense/./node_modules/axios/lib/cancel/CancelToken.js","webpack://Typesense/./node_modules/axios/lib/helpers/HttpStatusCode.js","webpack://Typesense/./node_modules/axios/lib/axios.js","webpack://Typesense/./node_modules/axios/lib/helpers/spread.js","webpack://Typesense/./node_modules/axios/lib/helpers/isAxiosError.js","webpack://Typesense/./src/Typesense/Errors/RequestMalformed.ts","webpack://Typesense/./src/Typesense/Errors/RequestUnauthorized.ts","webpack://Typesense/./src/Typesense/Errors/ObjectNotFound.ts","webpack://Typesense/./src/Typesense/Errors/ObjectAlreadyExists.ts","webpack://Typesense/./src/Typesense/Errors/ObjectUnprocessable.ts","webpack://Typesense/./src/Typesense/Errors/ServerError.ts","webpack://Typesense/./src/Typesense/Errors/HTTPError.ts","webpack://Typesense/./src/Typesense/ApiCall.ts","webpack://Typesense/./src/Typesense/Collections.ts","webpack://Typesense/./src/Typesense/Errors/ImportError.ts","webpack://Typesense/./node_modules/@babel/runtime/helpers/esm/arrayLikeToArray.js","webpack://Typesense/./node_modules/@babel/runtime/helpers/esm/unsupportedIterableToArray.js","webpack://Typesense/./node_modules/@babel/runtime/helpers/esm/toConsumableArray.js","webpack://Typesense/./node_modules/@babel/runtime/helpers/esm/arrayWithoutHoles.js","webpack://Typesense/./node_modules/@babel/runtime/helpers/esm/iterableToArray.js","webpack://Typesense/./node_modules/@babel/runtime/helpers/esm/nonIterableSpread.js","webpack://Typesense/./src/Typesense/RequestWithCache.ts","webpack://Typesense/./src/Typesense/Utils.ts","webpack://Typesense/./src/Typesense/SearchOnlyDocuments.ts","webpack://Typesense/./src/Typesense/Documents.ts","webpack://Typesense/./src/Typesense/Overrides.ts","webpack://Typesense/./src/Typesense/Override.ts","webpack://Typesense/./src/Typesense/Synonyms.ts","webpack://Typesense/./src/Typesense/Synonym.ts","webpack://Typesense/./src/Typesense/Document.ts","webpack://Typesense/./src/Typesense/Collection.ts","webpack://Typesense/./src/Typesense/Aliases.ts","webpack://Typesense/./src/Typesense/Alias.ts","webpack://Typesense/./src/Typesense/Keys.ts","webpack://Typesense/./src/Typesense/Key.ts","webpack://Typesense/./src/Typesense/Debug.ts","webpack://Typesense/./src/Typesense/Metrics.ts","webpack://Typesense/./src/Typesense/Stats.ts","webpack://Typesense/./src/Typesense/Health.ts","webpack://Typesense/./src/Typesense/Operations.ts","webpack://Typesense/./src/Typesense/MultiSearch.ts","webpack://Typesense/./src/Typesense/Presets.ts","webpack://Typesense/./src/Typesense/Preset.ts","webpack://Typesense/./src/Typesense/AnalyticsRules.ts","webpack://Typesense/./src/Typesense/AnalyticsRule.ts","webpack://Typesense/./src/Typesense/AnalyticsEvents.ts","webpack://Typesense/./src/Typesense/Analytics.ts","webpack://Typesense/./src/Typesense/Stopwords.ts","webpack://Typesense/./src/Typesense/Stopword.ts","webpack://Typesense/./src/Typesense/ConversationModels.ts","webpack://Typesense/./src/Typesense/ConversationModel.ts","webpack://Typesense/./src/Typesense/Conversations.ts","webpack://Typesense/./src/Typesense/Conversation.ts","webpack://Typesense/./src/Typesense/StemmingDictionaries.ts","webpack://Typesense/./src/Typesense/StemmingDictionary.ts","webpack://Typesense/./src/Typesense/Stemming.ts","webpack://Typesense/./src/Typesense/Client.ts","webpack://Typesense/./src/Typesense/SearchOnlyCollection.ts","webpack://Typesense/./src/Typesense/SearchClient.ts","webpack://Typesense/./node_modules/@babel/runtime/helpers/esm/slicedToArray.js","webpack://Typesense/./node_modules/@babel/runtime/helpers/esm/arrayWithHoles.js","webpack://Typesense/./node_modules/@babel/runtime/helpers/esm/iterableToArrayLimit.js","webpack://Typesense/./node_modules/@babel/runtime/helpers/esm/nonIterableRest.js","webpack://Typesense/./src/Typesense.ts"],"sourcesContent":["/*\n* loglevel - https://github.com/pimterry/loglevel\n*\n* Copyright (c) 2013 Tim Perry\n* Licensed under the MIT license.\n*/\n(function (root, definition) {\n \"use strict\";\n if (typeof define === 'function' && define.amd) {\n define(definition);\n } else if (typeof module === 'object' && module.exports) {\n module.exports = definition();\n } else {\n root.log = definition();\n }\n}(this, function () {\n \"use strict\";\n\n // Slightly dubious tricks to cut down minimized file size\n var noop = function() {};\n var undefinedType = \"undefined\";\n var isIE = (typeof window !== undefinedType) && (typeof window.navigator !== undefinedType) && (\n /Trident\\/|MSIE /.test(window.navigator.userAgent)\n );\n\n var logMethods = [\n \"trace\",\n \"debug\",\n \"info\",\n \"warn\",\n \"error\"\n ];\n\n var _loggersByName = {};\n var defaultLogger = null;\n\n // Cross-browser bind equivalent that works at least back to IE6\n function bindMethod(obj, methodName) {\n var method = obj[methodName];\n if (typeof method.bind === 'function') {\n return method.bind(obj);\n } else {\n try {\n return Function.prototype.bind.call(method, obj);\n } catch (e) {\n // Missing bind shim or IE8 + Modernizr, fallback to wrapping\n return function() {\n return Function.prototype.apply.apply(method, [obj, arguments]);\n };\n }\n }\n }\n\n // Trace() doesn't print the message in IE, so for that case we need to wrap it\n function traceForIE() {\n if (console.log) {\n if (console.log.apply) {\n console.log.apply(console, arguments);\n } else {\n // In old IE, native console methods themselves don't have apply().\n Function.prototype.apply.apply(console.log, [console, arguments]);\n }\n }\n if (console.trace) console.trace();\n }\n\n // Build the best logging method possible for this env\n // Wherever possible we want to bind, not wrap, to preserve stack traces\n function realMethod(methodName) {\n if (methodName === 'debug') {\n methodName = 'log';\n }\n\n if (typeof console === undefinedType) {\n return false; // No method possible, for now - fixed later by enableLoggingWhenConsoleArrives\n } else if (methodName === 'trace' && isIE) {\n return traceForIE;\n } else if (console[methodName] !== undefined) {\n return bindMethod(console, methodName);\n } else if (console.log !== undefined) {\n return bindMethod(console, 'log');\n } else {\n return noop;\n }\n }\n\n // These private functions always need `this` to be set properly\n\n function replaceLoggingMethods() {\n /*jshint validthis:true */\n var level = this.getLevel();\n\n // Replace the actual methods.\n for (var i = 0; i < logMethods.length; i++) {\n var methodName = logMethods[i];\n this[methodName] = (i < level) ?\n noop :\n this.methodFactory(methodName, level, this.name);\n }\n\n // Define log.log as an alias for log.debug\n this.log = this.debug;\n\n // Return any important warnings.\n if (typeof console === undefinedType && level < this.levels.SILENT) {\n return \"No console available for logging\";\n }\n }\n\n // In old IE versions, the console isn't present until you first open it.\n // We build realMethod() replacements here that regenerate logging methods\n function enableLoggingWhenConsoleArrives(methodName) {\n return function () {\n if (typeof console !== undefinedType) {\n replaceLoggingMethods.call(this);\n this[methodName].apply(this, arguments);\n }\n };\n }\n\n // By default, we use closely bound real methods wherever possible, and\n // otherwise we wait for a console to appear, and then try again.\n function defaultMethodFactory(methodName, _level, _loggerName) {\n /*jshint validthis:true */\n return realMethod(methodName) ||\n enableLoggingWhenConsoleArrives.apply(this, arguments);\n }\n\n function Logger(name, factory) {\n // Private instance variables.\n var self = this;\n /**\n * The level inherited from a parent logger (or a global default). We\n * cache this here rather than delegating to the parent so that it stays\n * in sync with the actual logging methods that we have installed (the\n * parent could change levels but we might not have rebuilt the loggers\n * in this child yet).\n * @type {number}\n */\n var inheritedLevel;\n /**\n * The default level for this logger, if any. If set, this overrides\n * `inheritedLevel`.\n * @type {number|null}\n */\n var defaultLevel;\n /**\n * A user-specific level for this logger. If set, this overrides\n * `defaultLevel`.\n * @type {number|null}\n */\n var userLevel;\n\n var storageKey = \"loglevel\";\n if (typeof name === \"string\") {\n storageKey += \":\" + name;\n } else if (typeof name === \"symbol\") {\n storageKey = undefined;\n }\n\n function persistLevelIfPossible(levelNum) {\n var levelName = (logMethods[levelNum] || 'silent').toUpperCase();\n\n if (typeof window === undefinedType || !storageKey) return;\n\n // Use localStorage if available\n try {\n window.localStorage[storageKey] = levelName;\n return;\n } catch (ignore) {}\n\n // Use session cookie as fallback\n try {\n window.document.cookie =\n encodeURIComponent(storageKey) + \"=\" + levelName + \";\";\n } catch (ignore) {}\n }\n\n function getPersistedLevel() {\n var storedLevel;\n\n if (typeof window === undefinedType || !storageKey) return;\n\n try {\n storedLevel = window.localStorage[storageKey];\n } catch (ignore) {}\n\n // Fallback to cookies if local storage gives us nothing\n if (typeof storedLevel === undefinedType) {\n try {\n var cookie = window.document.cookie;\n var cookieName = encodeURIComponent(storageKey);\n var location = cookie.indexOf(cookieName + \"=\");\n if (location !== -1) {\n storedLevel = /^([^;]+)/.exec(\n cookie.slice(location + cookieName.length + 1)\n )[1];\n }\n } catch (ignore) {}\n }\n\n // If the stored level is not valid, treat it as if nothing was stored.\n if (self.levels[storedLevel] === undefined) {\n storedLevel = undefined;\n }\n\n return storedLevel;\n }\n\n function clearPersistedLevel() {\n if (typeof window === undefinedType || !storageKey) return;\n\n // Use localStorage if available\n try {\n window.localStorage.removeItem(storageKey);\n } catch (ignore) {}\n\n // Use session cookie as fallback\n try {\n window.document.cookie =\n encodeURIComponent(storageKey) + \"=; expires=Thu, 01 Jan 1970 00:00:00 UTC\";\n } catch (ignore) {}\n }\n\n function normalizeLevel(input) {\n var level = input;\n if (typeof level === \"string\" && self.levels[level.toUpperCase()] !== undefined) {\n level = self.levels[level.toUpperCase()];\n }\n if (typeof level === \"number\" && level >= 0 && level <= self.levels.SILENT) {\n return level;\n } else {\n throw new TypeError(\"log.setLevel() called with invalid level: \" + input);\n }\n }\n\n /*\n *\n * Public logger API - see https://github.com/pimterry/loglevel for details\n *\n */\n\n self.name = name;\n\n self.levels = { \"TRACE\": 0, \"DEBUG\": 1, \"INFO\": 2, \"WARN\": 3,\n \"ERROR\": 4, \"SILENT\": 5};\n\n self.methodFactory = factory || defaultMethodFactory;\n\n self.getLevel = function () {\n if (userLevel != null) {\n return userLevel;\n } else if (defaultLevel != null) {\n return defaultLevel;\n } else {\n return inheritedLevel;\n }\n };\n\n self.setLevel = function (level, persist) {\n userLevel = normalizeLevel(level);\n if (persist !== false) { // defaults to true\n persistLevelIfPossible(userLevel);\n }\n\n // NOTE: in v2, this should call rebuild(), which updates children.\n return replaceLoggingMethods.call(self);\n };\n\n self.setDefaultLevel = function (level) {\n defaultLevel = normalizeLevel(level);\n if (!getPersistedLevel()) {\n self.setLevel(level, false);\n }\n };\n\n self.resetLevel = function () {\n userLevel = null;\n clearPersistedLevel();\n replaceLoggingMethods.call(self);\n };\n\n self.enableAll = function(persist) {\n self.setLevel(self.levels.TRACE, persist);\n };\n\n self.disableAll = function(persist) {\n self.setLevel(self.levels.SILENT, persist);\n };\n\n self.rebuild = function () {\n if (defaultLogger !== self) {\n inheritedLevel = normalizeLevel(defaultLogger.getLevel());\n }\n replaceLoggingMethods.call(self);\n\n if (defaultLogger === self) {\n for (var childName in _loggersByName) {\n _loggersByName[childName].rebuild();\n }\n }\n };\n\n // Initialize all the internal levels.\n inheritedLevel = normalizeLevel(\n defaultLogger ? defaultLogger.getLevel() : \"WARN\"\n );\n var initialLevel = getPersistedLevel();\n if (initialLevel != null) {\n userLevel = normalizeLevel(initialLevel);\n }\n replaceLoggingMethods.call(self);\n }\n\n /*\n *\n * Top-level API\n *\n */\n\n defaultLogger = new Logger();\n\n defaultLogger.getLogger = function getLogger(name) {\n if ((typeof name !== \"symbol\" && typeof name !== \"string\") || name === \"\") {\n throw new TypeError(\"You must supply a name when creating a logger.\");\n }\n\n var logger = _loggersByName[name];\n if (!logger) {\n logger = _loggersByName[name] = new Logger(\n name,\n defaultLogger.methodFactory\n );\n }\n return logger;\n };\n\n // Grab the current global log variable in case of overwrite\n var _log = (typeof window !== undefinedType) ? window.log : undefined;\n defaultLogger.noConflict = function() {\n if (typeof window !== undefinedType &&\n window.log === defaultLogger) {\n window.log = _log;\n }\n\n return defaultLogger;\n };\n\n defaultLogger.getLoggers = function getLoggers() {\n return _loggersByName;\n };\n\n // ES6 default export, for compatibility\n defaultLogger['default'] = defaultLogger;\n\n return defaultLogger;\n}));\n","var _typeof = require(\"./typeof.js\")[\"default\"];\nfunction _regeneratorRuntime() {\n \"use strict\"; /*! regenerator-runtime -- Copyright (c) 2014-present, Facebook, Inc. -- license (MIT): https://github.com/facebook/regenerator/blob/main/LICENSE */\n module.exports = _regeneratorRuntime = function _regeneratorRuntime() {\n return e;\n }, module.exports.__esModule = true, module.exports[\"default\"] = module.exports;\n var t,\n e = {},\n r = Object.prototype,\n n = r.hasOwnProperty,\n o = Object.defineProperty || function (t, e, r) {\n t[e] = r.value;\n },\n i = \"function\" == typeof Symbol ? Symbol : {},\n a = i.iterator || \"@@iterator\",\n c = i.asyncIterator || \"@@asyncIterator\",\n u = i.toStringTag || \"@@toStringTag\";\n function define(t, e, r) {\n return Object.defineProperty(t, e, {\n value: r,\n enumerable: !0,\n configurable: !0,\n writable: !0\n }), t[e];\n }\n try {\n define({}, \"\");\n } catch (t) {\n define = function define(t, e, r) {\n return t[e] = r;\n };\n }\n function wrap(t, e, r, n) {\n var i = e && e.prototype instanceof Generator ? e : Generator,\n a = Object.create(i.prototype),\n c = new Context(n || []);\n return o(a, \"_invoke\", {\n value: makeInvokeMethod(t, r, c)\n }), a;\n }\n function tryCatch(t, e, r) {\n try {\n return {\n type: \"normal\",\n arg: t.call(e, r)\n };\n } catch (t) {\n return {\n type: \"throw\",\n arg: t\n };\n }\n }\n e.wrap = wrap;\n var h = \"suspendedStart\",\n l = \"suspendedYield\",\n f = \"executing\",\n s = \"completed\",\n y = {};\n function Generator() {}\n function GeneratorFunction() {}\n function GeneratorFunctionPrototype() {}\n var p = {};\n define(p, a, function () {\n return this;\n });\n var d = Object.getPrototypeOf,\n v = d && d(d(values([])));\n v && v !== r && n.call(v, a) && (p = v);\n var g = GeneratorFunctionPrototype.prototype = Generator.prototype = Object.create(p);\n function defineIteratorMethods(t) {\n [\"next\", \"throw\", \"return\"].forEach(function (e) {\n define(t, e, function (t) {\n return this._invoke(e, t);\n });\n });\n }\n function AsyncIterator(t, e) {\n function invoke(r, o, i, a) {\n var c = tryCatch(t[r], t, o);\n if (\"throw\" !== c.type) {\n var u = c.arg,\n h = u.value;\n return h && \"object\" == _typeof(h) && n.call(h, \"__await\") ? e.resolve(h.__await).then(function (t) {\n invoke(\"next\", t, i, a);\n }, function (t) {\n invoke(\"throw\", t, i, a);\n }) : e.resolve(h).then(function (t) {\n u.value = t, i(u);\n }, function (t) {\n return invoke(\"throw\", t, i, a);\n });\n }\n a(c.arg);\n }\n var r;\n o(this, \"_invoke\", {\n value: function value(t, n) {\n function callInvokeWithMethodAndArg() {\n return new e(function (e, r) {\n invoke(t, n, e, r);\n });\n }\n return r = r ? r.then(callInvokeWithMethodAndArg, callInvokeWithMethodAndArg) : callInvokeWithMethodAndArg();\n }\n });\n }\n function makeInvokeMethod(e, r, n) {\n var o = h;\n return function (i, a) {\n if (o === f) throw new Error(\"Generator is already running\");\n if (o === s) {\n if (\"throw\" === i) throw a;\n return {\n value: t,\n done: !0\n };\n }\n for (n.method = i, n.arg = a;;) {\n var c = n.delegate;\n if (c) {\n var u = maybeInvokeDelegate(c, n);\n if (u) {\n if (u === y) continue;\n return u;\n }\n }\n if (\"next\" === n.method) n.sent = n._sent = n.arg;else if (\"throw\" === n.method) {\n if (o === h) throw o = s, n.arg;\n n.dispatchException(n.arg);\n } else \"return\" === n.method && n.abrupt(\"return\", n.arg);\n o = f;\n var p = tryCatch(e, r, n);\n if (\"normal\" === p.type) {\n if (o = n.done ? s : l, p.arg === y) continue;\n return {\n value: p.arg,\n done: n.done\n };\n }\n \"throw\" === p.type && (o = s, n.method = \"throw\", n.arg = p.arg);\n }\n };\n }\n function maybeInvokeDelegate(e, r) {\n var n = r.method,\n o = e.iterator[n];\n if (o === t) return r.delegate = null, \"throw\" === n && e.iterator[\"return\"] && (r.method = \"return\", r.arg = t, maybeInvokeDelegate(e, r), \"throw\" === r.method) || \"return\" !== n && (r.method = \"throw\", r.arg = new TypeError(\"The iterator does not provide a '\" + n + \"' method\")), y;\n var i = tryCatch(o, e.iterator, r.arg);\n if (\"throw\" === i.type) return r.method = \"throw\", r.arg = i.arg, r.delegate = null, y;\n var a = i.arg;\n return a ? a.done ? (r[e.resultName] = a.value, r.next = e.nextLoc, \"return\" !== r.method && (r.method = \"next\", r.arg = t), r.delegate = null, y) : a : (r.method = \"throw\", r.arg = new TypeError(\"iterator result is not an object\"), r.delegate = null, y);\n }\n function pushTryEntry(t) {\n var e = {\n tryLoc: t[0]\n };\n 1 in t && (e.catchLoc = t[1]), 2 in t && (e.finallyLoc = t[2], e.afterLoc = t[3]), this.tryEntries.push(e);\n }\n function resetTryEntry(t) {\n var e = t.completion || {};\n e.type = \"normal\", delete e.arg, t.completion = e;\n }\n function Context(t) {\n this.tryEntries = [{\n tryLoc: \"root\"\n }], t.forEach(pushTryEntry, this), this.reset(!0);\n }\n function values(e) {\n if (e || \"\" === e) {\n var r = e[a];\n if (r) return r.call(e);\n if (\"function\" == typeof e.next) return e;\n if (!isNaN(e.length)) {\n var o = -1,\n i = function next() {\n for (; ++o < e.length;) if (n.call(e, o)) return next.value = e[o], next.done = !1, next;\n return next.value = t, next.done = !0, next;\n };\n return i.next = i;\n }\n }\n throw new TypeError(_typeof(e) + \" is not iterable\");\n }\n return GeneratorFunction.prototype = GeneratorFunctionPrototype, o(g, \"constructor\", {\n value: GeneratorFunctionPrototype,\n configurable: !0\n }), o(GeneratorFunctionPrototype, \"constructor\", {\n value: GeneratorFunction,\n configurable: !0\n }), GeneratorFunction.displayName = define(GeneratorFunctionPrototype, u, \"GeneratorFunction\"), e.isGeneratorFunction = function (t) {\n var e = \"function\" == typeof t && t.constructor;\n return !!e && (e === GeneratorFunction || \"GeneratorFunction\" === (e.displayName || e.name));\n }, e.mark = function (t) {\n return Object.setPrototypeOf ? Object.setPrototypeOf(t, GeneratorFunctionPrototype) : (t.__proto__ = GeneratorFunctionPrototype, define(t, u, \"GeneratorFunction\")), t.prototype = Object.create(g), t;\n }, e.awrap = function (t) {\n return {\n __await: t\n };\n }, defineIteratorMethods(AsyncIterator.prototype), define(AsyncIterator.prototype, c, function () {\n return this;\n }), e.AsyncIterator = AsyncIterator, e.async = function (t, r, n, o, i) {\n void 0 === i && (i = Promise);\n var a = new AsyncIterator(wrap(t, r, n, o), i);\n return e.isGeneratorFunction(r) ? a : a.next().then(function (t) {\n return t.done ? t.value : a.next();\n });\n }, defineIteratorMethods(g), define(g, u, \"Generator\"), define(g, a, function () {\n return this;\n }), define(g, \"toString\", function () {\n return \"[object Generator]\";\n }), e.keys = function (t) {\n var e = Object(t),\n r = [];\n for (var n in e) r.push(n);\n return r.reverse(), function next() {\n for (; r.length;) {\n var t = r.pop();\n if (t in e) return next.value = t, next.done = !1, next;\n }\n return next.done = !0, next;\n };\n }, e.values = values, Context.prototype = {\n constructor: Context,\n reset: function reset(e) {\n if (this.prev = 0, this.next = 0, this.sent = this._sent = t, this.done = !1, this.delegate = null, this.method = \"next\", this.arg = t, this.tryEntries.forEach(resetTryEntry), !e) for (var r in this) \"t\" === r.charAt(0) && n.call(this, r) && !isNaN(+r.slice(1)) && (this[r] = t);\n },\n stop: function stop() {\n this.done = !0;\n var t = this.tryEntries[0].completion;\n if (\"throw\" === t.type) throw t.arg;\n return this.rval;\n },\n dispatchException: function dispatchException(e) {\n if (this.done) throw e;\n var r = this;\n function handle(n, o) {\n return a.type = \"throw\", a.arg = e, r.next = n, o && (r.method = \"next\", r.arg = t), !!o;\n }\n for (var o = this.tryEntries.length - 1; o >= 0; --o) {\n var i = this.tryEntries[o],\n a = i.completion;\n if (\"root\" === i.tryLoc) return handle(\"end\");\n if (i.tryLoc <= this.prev) {\n var c = n.call(i, \"catchLoc\"),\n u = n.call(i, \"finallyLoc\");\n if (c && u) {\n if (this.prev < i.catchLoc) return handle(i.catchLoc, !0);\n if (this.prev < i.finallyLoc) return handle(i.finallyLoc);\n } else if (c) {\n if (this.prev < i.catchLoc) return handle(i.catchLoc, !0);\n } else {\n if (!u) throw new Error(\"try statement without catch or finally\");\n if (this.prev < i.finallyLoc) return handle(i.finallyLoc);\n }\n }\n }\n },\n abrupt: function abrupt(t, e) {\n for (var r = this.tryEntries.length - 1; r >= 0; --r) {\n var o = this.tryEntries[r];\n if (o.tryLoc <= this.prev && n.call(o, \"finallyLoc\") && this.prev < o.finallyLoc) {\n var i = o;\n break;\n }\n }\n i && (\"break\" === t || \"continue\" === t) && i.tryLoc <= e && e <= i.finallyLoc && (i = null);\n var a = i ? i.completion : {};\n return a.type = t, a.arg = e, i ? (this.method = \"next\", this.next = i.finallyLoc, y) : this.complete(a);\n },\n complete: function complete(t, e) {\n if (\"throw\" === t.type) throw t.arg;\n return \"break\" === t.type || \"continue\" === t.type ? this.next = t.arg : \"return\" === t.type ? (this.rval = this.arg = t.arg, this.method = \"return\", this.next = \"end\") : \"normal\" === t.type && e && (this.next = e), y;\n },\n finish: function finish(t) {\n for (var e = this.tryEntries.length - 1; e >= 0; --e) {\n var r = this.tryEntries[e];\n if (r.finallyLoc === t) return this.complete(r.completion, r.afterLoc), resetTryEntry(r), y;\n }\n },\n \"catch\": function _catch(t) {\n for (var e = this.tryEntries.length - 1; e >= 0; --e) {\n var r = this.tryEntries[e];\n if (r.tryLoc === t) {\n var n = r.completion;\n if (\"throw\" === n.type) {\n var o = n.arg;\n resetTryEntry(r);\n }\n return o;\n }\n }\n throw new Error(\"illegal catch attempt\");\n },\n delegateYield: function delegateYield(e, r, n) {\n return this.delegate = {\n iterator: values(e),\n resultName: r,\n nextLoc: n\n }, \"next\" === this.method && (this.arg = t), y;\n }\n }, e;\n}\nmodule.exports = _regeneratorRuntime, module.exports.__esModule = true, module.exports[\"default\"] = module.exports;","function _typeof(o) {\n \"@babel/helpers - typeof\";\n\n return (module.exports = _typeof = \"function\" == typeof Symbol && \"symbol\" == typeof Symbol.iterator ? function (o) {\n return typeof o;\n } : function (o) {\n return o && \"function\" == typeof Symbol && o.constructor === Symbol && o !== Symbol.prototype ? \"symbol\" : typeof o;\n }, module.exports.__esModule = true, module.exports[\"default\"] = module.exports), _typeof(o);\n}\nmodule.exports = _typeof, module.exports.__esModule = true, module.exports[\"default\"] = module.exports;","// TODO(Babel 8): Remove this file.\n\nvar runtime = require(\"../helpers/regeneratorRuntime\")();\nmodule.exports = runtime;\n\n// Copied from https://github.com/facebook/regenerator/blob/main/packages/runtime/runtime.js#L736=\ntry {\n regeneratorRuntime = runtime;\n} catch (accidentalStrictMode) {\n if (typeof globalThis === \"object\") {\n globalThis.regeneratorRuntime = runtime;\n } else {\n Function(\"r\", \"regeneratorRuntime = r\")(runtime);\n }\n}\n","// The module cache\nvar __webpack_module_cache__ = {};\n\n// The require function\nfunction __webpack_require__(moduleId) {\n\t// Check if module is in cache\n\tvar cachedModule = __webpack_module_cache__[moduleId];\n\tif (cachedModule !== undefined) {\n\t\treturn cachedModule.exports;\n\t}\n\t// Create a new module (and put it into the cache)\n\tvar module = __webpack_module_cache__[moduleId] = {\n\t\t// no module.id needed\n\t\t// no module.loaded needed\n\t\texports: {}\n\t};\n\n\t// Execute the module function\n\t__webpack_modules__[moduleId].call(module.exports, module, module.exports, __webpack_require__);\n\n\t// Return the exports of the module\n\treturn module.exports;\n}\n\n","// getDefaultExport function for compatibility with non-harmony modules\n__webpack_require__.n = (module) => {\n\tvar getter = module && module.__esModule ?\n\t\t() => (module['default']) :\n\t\t() => (module);\n\t__webpack_require__.d(getter, { a: getter });\n\treturn getter;\n};","// define getter functions for harmony exports\n__webpack_require__.d = (exports, definition) => {\n\tfor(var key in definition) {\n\t\tif(__webpack_require__.o(definition, key) && !__webpack_require__.o(exports, key)) {\n\t\t\tObject.defineProperty(exports, key, { enumerable: true, get: definition[key] });\n\t\t}\n\t}\n};","__webpack_require__.o = (obj, prop) => (Object.prototype.hasOwnProperty.call(obj, prop))","// define __esModule on exports\n__webpack_require__.r = (exports) => {\n\tif(typeof Symbol !== 'undefined' && Symbol.toStringTag) {\n\t\tObject.defineProperty(exports, Symbol.toStringTag, { value: 'Module' });\n\t}\n\tObject.defineProperty(exports, '__esModule', { value: true });\n};","export default function _classCallCheck(instance, Constructor) {\n if (!(instance instanceof Constructor)) {\n throw new TypeError(\"Cannot call a class as a function\");\n }\n}","export default function _typeof(o) {\n \"@babel/helpers - typeof\";\n\n return _typeof = \"function\" == typeof Symbol && \"symbol\" == typeof Symbol.iterator ? function (o) {\n return typeof o;\n } : function (o) {\n return o && \"function\" == typeof Symbol && o.constructor === Symbol && o !== Symbol.prototype ? \"symbol\" : typeof o;\n }, _typeof(o);\n}","import _typeof from \"./typeof.js\";\nimport toPrimitive from \"./toPrimitive.js\";\nexport default function toPropertyKey(t) {\n var i = toPrimitive(t, \"string\");\n return \"symbol\" == _typeof(i) ? i : String(i);\n}","import _typeof from \"./typeof.js\";\nexport default function toPrimitive(t, r) {\n if (\"object\" != _typeof(t) || !t) return t;\n var e = t[Symbol.toPrimitive];\n if (void 0 !== e) {\n var i = e.call(t, r || \"default\");\n if (\"object\" != _typeof(i)) return i;\n throw new TypeError(\"@@toPrimitive must return a primitive value.\");\n }\n return (\"string\" === r ? String : Number)(t);\n}","import toPropertyKey from \"./toPropertyKey.js\";\nfunction _defineProperties(target, props) {\n for (var i = 0; i < props.length; i++) {\n var descriptor = props[i];\n descriptor.enumerable = descriptor.enumerable || false;\n descriptor.configurable = true;\n if (\"value\" in descriptor) descriptor.writable = true;\n Object.defineProperty(target, toPropertyKey(descriptor.key), descriptor);\n }\n}\nexport default function _createClass(Constructor, protoProps, staticProps) {\n if (protoProps) _defineProperties(Constructor.prototype, protoProps);\n if (staticProps) _defineProperties(Constructor, staticProps);\n Object.defineProperty(Constructor, \"prototype\", {\n writable: false\n });\n return Constructor;\n}","import toPropertyKey from \"./toPropertyKey.js\";\nexport default function _defineProperty(obj, key, value) {\n key = toPropertyKey(key);\n if (key in obj) {\n Object.defineProperty(obj, key, {\n value: value,\n enumerable: true,\n configurable: true,\n writable: true\n });\n } else {\n obj[key] = value;\n }\n return obj;\n}","export default function _assertThisInitialized(self) {\n if (self === void 0) {\n throw new ReferenceError(\"this hasn't been initialised - super() hasn't been called\");\n }\n return self;\n}","import _typeof from \"./typeof.js\";\nimport assertThisInitialized from \"./assertThisInitialized.js\";\nexport default function _possibleConstructorReturn(self, call) {\n if (call && (_typeof(call) === \"object\" || typeof call === \"function\")) {\n return call;\n } else if (call !== void 0) {\n throw new TypeError(\"Derived constructors may only return object or undefined\");\n }\n return assertThisInitialized(self);\n}","export default function _getPrototypeOf(o) {\n _getPrototypeOf = Object.setPrototypeOf ? Object.getPrototypeOf.bind() : function _getPrototypeOf(o) {\n return o.__proto__ || Object.getPrototypeOf(o);\n };\n return _getPrototypeOf(o);\n}","export default function _setPrototypeOf(o, p) {\n _setPrototypeOf = Object.setPrototypeOf ? Object.setPrototypeOf.bind() : function _setPrototypeOf(o, p) {\n o.__proto__ = p;\n return o;\n };\n return _setPrototypeOf(o, p);\n}","import setPrototypeOf from \"./setPrototypeOf.js\";\nexport default function _inherits(subClass, superClass) {\n if (typeof superClass !== \"function\" && superClass !== null) {\n throw new TypeError(\"Super expression must either be null or a function\");\n }\n subClass.prototype = Object.create(superClass && superClass.prototype, {\n constructor: {\n value: subClass,\n writable: true,\n configurable: true\n }\n });\n Object.defineProperty(subClass, \"prototype\", {\n writable: false\n });\n if (superClass) setPrototypeOf(subClass, superClass);\n}","export default function _isNativeReflectConstruct() {\n try {\n var t = !Boolean.prototype.valueOf.call(Reflect.construct(Boolean, [], function () {}));\n } catch (t) {}\n return (_isNativeReflectConstruct = function _isNativeReflectConstruct() {\n return !!t;\n })();\n}","import getPrototypeOf from \"./getPrototypeOf.js\";\nimport setPrototypeOf from \"./setPrototypeOf.js\";\nimport isNativeFunction from \"./isNativeFunction.js\";\nimport construct from \"./construct.js\";\nexport default function _wrapNativeSuper(Class) {\n var _cache = typeof Map === \"function\" ? new Map() : undefined;\n _wrapNativeSuper = function _wrapNativeSuper(Class) {\n if (Class === null || !isNativeFunction(Class)) return Class;\n if (typeof Class !== \"function\") {\n throw new TypeError(\"Super expression must either be null or a function\");\n }\n if (typeof _cache !== \"undefined\") {\n if (_cache.has(Class)) return _cache.get(Class);\n _cache.set(Class, Wrapper);\n }\n function Wrapper() {\n return construct(Class, arguments, getPrototypeOf(this).constructor);\n }\n Wrapper.prototype = Object.create(Class.prototype, {\n constructor: {\n value: Wrapper,\n enumerable: false,\n writable: true,\n configurable: true\n }\n });\n return setPrototypeOf(Wrapper, Class);\n };\n return _wrapNativeSuper(Class);\n}","export default function _isNativeFunction(fn) {\n try {\n return Function.toString.call(fn).indexOf(\"[native code]\") !== -1;\n } catch (e) {\n return typeof fn === \"function\";\n }\n}","import setPrototypeOf from \"./setPrototypeOf.js\";\nimport isNativeReflectConstruct from \"./isNativeReflectConstruct.js\";\nexport default function _construct(t, e, r) {\n if (isNativeReflectConstruct()) return Reflect.construct.apply(null, arguments);\n var o = [null];\n o.push.apply(o, e);\n var p = new (t.bind.apply(t, o))();\n return r && setPrototypeOf(p, r.prototype), p;\n}","export default class TypesenseError extends Error {\n httpStatus?: number;\n httpBody?: string;\n\n // Source: https://stackoverflow.com/a/58417721/123545\n constructor(message?: string, httpBody?: string, httpStatus?: number) {\n super(message);\n this.name = new.target.name;\n this.httpBody = httpBody;\n this.httpStatus = httpStatus;\n Object.setPrototypeOf(this, new.target.prototype);\n }\n}\n","import TypesenseError from \"./TypesenseError\";\n\nexport default class MissingConfigurationError extends TypesenseError {}\n","import * as logger from \"loglevel\";\nimport { Logger, LogLevelDesc } from \"loglevel\";\nimport { MissingConfigurationError } from \"./Errors\";\nimport type { Agent as HTTPAgent } from \"http\";\nimport type { Agent as HTTPSAgent } from \"https\";\nimport type { AxiosRequestConfig } from \"axios\";\n\nexport interface NodeConfiguration {\n host: string;\n port: number;\n protocol: string;\n path?: string;\n url?: string;\n}\n\nexport interface NodeConfigurationWithHostname {\n host: string;\n port: number;\n protocol: string;\n path?: string;\n}\n\nexport interface NodeConfigurationWithUrl {\n url: string;\n}\n\nexport interface ConfigurationOptions {\n apiKey: string;\n nodes:\n | NodeConfiguration[]\n | NodeConfigurationWithHostname[]\n | NodeConfigurationWithUrl[];\n randomizeNodes?: boolean;\n /**\n * @deprecated\n * masterNode is now consolidated to nodes, starting with Typesense Server v0.12'\n */\n masterNode?:\n | NodeConfiguration\n | NodeConfigurationWithHostname\n | NodeConfigurationWithUrl;\n /**\n * @deprecated\n * readReplicaNodes is now consolidated to nodes, starting with Typesense Server v0.12'\n */\n readReplicaNodes?:\n | NodeConfiguration[]\n | NodeConfigurationWithHostname[]\n | NodeConfigurationWithUrl[];\n nearestNode?:\n | NodeConfiguration\n | NodeConfigurationWithHostname\n | NodeConfigurationWithUrl;\n connectionTimeoutSeconds?: number;\n timeoutSeconds?: number;\n healthcheckIntervalSeconds?: number;\n numRetries?: number;\n retryIntervalSeconds?: number;\n sendApiKeyAsQueryParam?: boolean | undefined;\n useServerSideSearchCache?: boolean;\n cacheSearchResultsForSeconds?: number;\n additionalHeaders?: Record;\n\n logLevel?: LogLevelDesc;\n logger?: Logger;\n\n /**\n * Set a custom HTTP Agent\n *\n * This is helpful for eg, to enable keepAlive which helps prevents ECONNRESET socket hang up errors\n * Usage:\n * const { Agent: HTTPAgent } = require(\"http\");\n * ...\n * httpAgent: new HTTPAgent({ keepAlive: true }),\n * @type {HTTPAgent}\n */\n httpAgent?: HTTPAgent;\n\n /**\n * Set a custom HTTPS Agent\n *\n * This is helpful for eg, to enable keepAlive which helps prevents ECONNRESET socket hang up errors\n * Usage:\n * const { Agent: HTTPSAgent } = require(\"https\");\n * ...\n * httpsAgent: new HTTPSAgent({ keepAlive: true }),\n * @type {HTTPSAgent}\n */\n httpsAgent?: HTTPSAgent;\n\n /**\n * Set a custom paramsSerializer\n *\n * See axios documentation for more information on how to use this parameter: https://axios-http.com/docs/req_config\n * This is helpful for handling React Native issues like this: https://github.com/axios/axios/issues/6102#issuecomment-2085301397\n * @type {any}\n */\n paramsSerializer?: any;\n\n /**\n * Set a custom axios adapter\n *\n * Useful for customizing the underlying HTTP client library used by Typesense.\n *\n * For example, you can use this to use a custom HTTP client library like `fetch`, in order for the library to work on the edge.\n * Related GiHub issue: https://github.com/typesense/typesense-js/issues/161\n *\n * See axios documentation for more information on how to use this parameter: https://axios-http.com/docs/req_config\n */\n axiosAdapter?: AxiosRequestConfig[\"adapter\"];\n}\n\nexport default class Configuration {\n readonly nodes:\n | NodeConfiguration[]\n | NodeConfigurationWithHostname[]\n | NodeConfigurationWithUrl[];\n readonly nearestNode?:\n | NodeConfiguration\n | NodeConfigurationWithHostname\n | NodeConfigurationWithUrl;\n readonly connectionTimeoutSeconds: number;\n readonly healthcheckIntervalSeconds: number;\n readonly numRetries: number;\n readonly retryIntervalSeconds: number;\n readonly apiKey: string;\n readonly sendApiKeyAsQueryParam?: boolean;\n readonly cacheSearchResultsForSeconds: number;\n readonly useServerSideSearchCache: boolean;\n readonly logger: Logger;\n readonly logLevel: LogLevelDesc;\n readonly additionalHeaders?: Record;\n readonly httpAgent?: HTTPAgent;\n readonly httpsAgent?: HTTPSAgent;\n readonly paramsSerializer?: any;\n readonly axiosAdapter?: AxiosRequestConfig[\"adapter\"];\n\n constructor(options: ConfigurationOptions) {\n this.nodes = options.nodes || [];\n this.nodes = this.nodes\n .map((node) => this.setDefaultPathInNode(node))\n .map((node) => this.setDefaultPortInNode(node))\n .map((node) => ({ ...node })) as NodeConfiguration[]; // Make a deep copy\n\n if (options.randomizeNodes == null) {\n options.randomizeNodes = true;\n }\n\n if (options.randomizeNodes === true) {\n this.shuffleArray(this.nodes);\n }\n\n this.nearestNode = options.nearestNode;\n this.nearestNode = this.setDefaultPathInNode(this.nearestNode);\n this.nearestNode = this.setDefaultPortInNode(this.nearestNode);\n\n this.connectionTimeoutSeconds =\n options.connectionTimeoutSeconds || options.timeoutSeconds || 5;\n this.healthcheckIntervalSeconds = options.healthcheckIntervalSeconds || 60;\n this.numRetries =\n (options.numRetries !== undefined && options.numRetries >= 0\n ? options.numRetries\n : this.nodes.length + (this.nearestNode == null ? 0 : 1)) || 3;\n this.retryIntervalSeconds = options.retryIntervalSeconds || 0.1;\n\n this.apiKey = options.apiKey;\n this.sendApiKeyAsQueryParam = options.sendApiKeyAsQueryParam; // We will set a default for this in Client and SearchClient\n\n this.cacheSearchResultsForSeconds =\n options.cacheSearchResultsForSeconds || 0; // Disable client-side cache by default\n this.useServerSideSearchCache = options.useServerSideSearchCache || false;\n\n this.axiosAdapter = options.axiosAdapter;\n this.logger = options.logger || logger;\n this.logLevel = options.logLevel || \"warn\";\n this.logger.setLevel(this.logLevel);\n\n this.additionalHeaders = options.additionalHeaders;\n\n this.httpAgent = options.httpAgent;\n this.httpsAgent = options.httpsAgent;\n\n this.paramsSerializer = options.paramsSerializer;\n\n this.showDeprecationWarnings(options);\n this.validate();\n }\n\n validate(): boolean {\n if (this.nodes == null || this.nodes.length === 0 || this.validateNodes()) {\n throw new MissingConfigurationError(\n \"Ensure that nodes[].protocol, nodes[].host and nodes[].port are set\",\n );\n }\n\n if (\n this.nearestNode != null &&\n this.isNodeMissingAnyParameters(this.nearestNode)\n ) {\n throw new MissingConfigurationError(\n \"Ensure that nearestNodes.protocol, nearestNodes.host and nearestNodes.port are set\",\n );\n }\n\n if (this.apiKey == null) {\n throw new MissingConfigurationError(\"Ensure that apiKey is set\");\n }\n\n return true;\n }\n\n private validateNodes(): boolean {\n return this.nodes.some((node) => {\n return this.isNodeMissingAnyParameters(node);\n });\n }\n\n private isNodeMissingAnyParameters(\n node:\n | NodeConfiguration\n | NodeConfigurationWithHostname\n | NodeConfigurationWithUrl,\n ): boolean {\n return (\n ![\"protocol\", \"host\", \"port\", \"path\"].every((key) => {\n return node.hasOwnProperty(key);\n }) && node[\"url\"] == null\n );\n }\n\n private setDefaultPathInNode(\n node:\n | NodeConfiguration\n | NodeConfigurationWithHostname\n | NodeConfigurationWithUrl\n | undefined,\n ):\n | NodeConfiguration\n | NodeConfigurationWithHostname\n | NodeConfigurationWithUrl\n | undefined {\n if (node != null && !node.hasOwnProperty(\"path\")) {\n node[\"path\"] = \"\";\n }\n return node;\n }\n\n private setDefaultPortInNode(\n node:\n | NodeConfiguration\n | NodeConfigurationWithHostname\n | NodeConfigurationWithUrl\n | undefined,\n ):\n | NodeConfiguration\n | NodeConfigurationWithHostname\n | NodeConfigurationWithUrl\n | undefined {\n if (\n node != null &&\n !node.hasOwnProperty(\"port\") &&\n node.hasOwnProperty(\"protocol\")\n ) {\n switch (node[\"protocol\"]) {\n case \"https\":\n node[\"port\"] = 443;\n break;\n case \"http\":\n node[\"port\"] = 80;\n break;\n }\n }\n return node;\n }\n\n private showDeprecationWarnings(options: ConfigurationOptions): void {\n if (options.timeoutSeconds) {\n this.logger.warn(\n \"Deprecation warning: timeoutSeconds is now renamed to connectionTimeoutSeconds\",\n );\n }\n if (options.masterNode) {\n this.logger.warn(\n \"Deprecation warning: masterNode is now consolidated to nodes, starting with Typesense Server v0.12\",\n );\n }\n if (options.readReplicaNodes) {\n this.logger.warn(\n \"Deprecation warning: readReplicaNodes is now consolidated to nodes, starting with Typesense Server v0.12\",\n );\n }\n }\n\n private shuffleArray(array) {\n for (let i = array.length - 1; i > 0; i--) {\n const j = Math.floor(Math.random() * (i + 1));\n [array[i], array[j]] = [array[j], array[i]];\n }\n }\n}\n","function asyncGeneratorStep(gen, resolve, reject, _next, _throw, key, arg) {\n try {\n var info = gen[key](arg);\n var value = info.value;\n } catch (error) {\n reject(error);\n return;\n }\n if (info.done) {\n resolve(value);\n } else {\n Promise.resolve(value).then(_next, _throw);\n }\n}\nexport default function _asyncToGenerator(fn) {\n return function () {\n var self = this,\n args = arguments;\n return new Promise(function (resolve, reject) {\n var gen = fn.apply(self, args);\n function _next(value) {\n asyncGeneratorStep(gen, resolve, reject, _next, _throw, \"next\", value);\n }\n function _throw(err) {\n asyncGeneratorStep(gen, resolve, reject, _next, _throw, \"throw\", err);\n }\n _next(undefined);\n });\n };\n}","'use strict';\n\nexport default function bind(fn, thisArg) {\n return function wrap() {\n return fn.apply(thisArg, arguments);\n };\n}\n","'use strict';\n\nimport bind from './helpers/bind.js';\n\n// utils is a library of generic helper functions non-specific to axios\n\nconst {toString} = Object.prototype;\nconst {getPrototypeOf} = Object;\n\nconst kindOf = (cache => thing => {\n const str = toString.call(thing);\n return cache[str] || (cache[str] = str.slice(8, -1).toLowerCase());\n})(Object.create(null));\n\nconst kindOfTest = (type) => {\n type = type.toLowerCase();\n return (thing) => kindOf(thing) === type\n}\n\nconst typeOfTest = type => thing => typeof thing === type;\n\n/**\n * Determine if a value is an Array\n *\n * @param {Object} val The value to test\n *\n * @returns {boolean} True if value is an Array, otherwise false\n */\nconst {isArray} = Array;\n\n/**\n * Determine if a value is undefined\n *\n * @param {*} val The value to test\n *\n * @returns {boolean} True if the value is undefined, otherwise false\n */\nconst isUndefined = typeOfTest('undefined');\n\n/**\n * Determine if a value is a Buffer\n *\n * @param {*} val The value to test\n *\n * @returns {boolean} True if value is a Buffer, otherwise false\n */\nfunction isBuffer(val) {\n return val !== null && !isUndefined(val) && val.constructor !== null && !isUndefined(val.constructor)\n && isFunction(val.constructor.isBuffer) && val.constructor.isBuffer(val);\n}\n\n/**\n * Determine if a value is an ArrayBuffer\n *\n * @param {*} val The value to test\n *\n * @returns {boolean} True if value is an ArrayBuffer, otherwise false\n */\nconst isArrayBuffer = kindOfTest('ArrayBuffer');\n\n\n/**\n * Determine if a value is a view on an ArrayBuffer\n *\n * @param {*} val The value to test\n *\n * @returns {boolean} True if value is a view on an ArrayBuffer, otherwise false\n */\nfunction isArrayBufferView(val) {\n let result;\n if ((typeof ArrayBuffer !== 'undefined') && (ArrayBuffer.isView)) {\n result = ArrayBuffer.isView(val);\n } else {\n result = (val) && (val.buffer) && (isArrayBuffer(val.buffer));\n }\n return result;\n}\n\n/**\n * Determine if a value is a String\n *\n * @param {*} val The value to test\n *\n * @returns {boolean} True if value is a String, otherwise false\n */\nconst isString = typeOfTest('string');\n\n/**\n * Determine if a value is a Function\n *\n * @param {*} val The value to test\n * @returns {boolean} True if value is a Function, otherwise false\n */\nconst isFunction = typeOfTest('function');\n\n/**\n * Determine if a value is a Number\n *\n * @param {*} val The value to test\n *\n * @returns {boolean} True if value is a Number, otherwise false\n */\nconst isNumber = typeOfTest('number');\n\n/**\n * Determine if a value is an Object\n *\n * @param {*} thing The value to test\n *\n * @returns {boolean} True if value is an Object, otherwise false\n */\nconst isObject = (thing) => thing !== null && typeof thing === 'object';\n\n/**\n * Determine if a value is a Boolean\n *\n * @param {*} thing The value to test\n * @returns {boolean} True if value is a Boolean, otherwise false\n */\nconst isBoolean = thing => thing === true || thing === false;\n\n/**\n * Determine if a value is a plain Object\n *\n * @param {*} val The value to test\n *\n * @returns {boolean} True if value is a plain Object, otherwise false\n */\nconst isPlainObject = (val) => {\n if (kindOf(val) !== 'object') {\n return false;\n }\n\n const prototype = getPrototypeOf(val);\n return (prototype === null || prototype === Object.prototype || Object.getPrototypeOf(prototype) === null) && !(Symbol.toStringTag in val) && !(Symbol.iterator in val);\n}\n\n/**\n * Determine if a value is a Date\n *\n * @param {*} val The value to test\n *\n * @returns {boolean} True if value is a Date, otherwise false\n */\nconst isDate = kindOfTest('Date');\n\n/**\n * Determine if a value is a File\n *\n * @param {*} val The value to test\n *\n * @returns {boolean} True if value is a File, otherwise false\n */\nconst isFile = kindOfTest('File');\n\n/**\n * Determine if a value is a Blob\n *\n * @param {*} val The value to test\n *\n * @returns {boolean} True if value is a Blob, otherwise false\n */\nconst isBlob = kindOfTest('Blob');\n\n/**\n * Determine if a value is a FileList\n *\n * @param {*} val The value to test\n *\n * @returns {boolean} True if value is a File, otherwise false\n */\nconst isFileList = kindOfTest('FileList');\n\n/**\n * Determine if a value is a Stream\n *\n * @param {*} val The value to test\n *\n * @returns {boolean} True if value is a Stream, otherwise false\n */\nconst isStream = (val) => isObject(val) && isFunction(val.pipe);\n\n/**\n * Determine if a value is a FormData\n *\n * @param {*} thing The value to test\n *\n * @returns {boolean} True if value is an FormData, otherwise false\n */\nconst isFormData = (thing) => {\n let kind;\n return thing && (\n (typeof FormData === 'function' && thing instanceof FormData) || (\n isFunction(thing.append) && (\n (kind = kindOf(thing)) === 'formdata' ||\n // detect form-data instance\n (kind === 'object' && isFunction(thing.toString) && thing.toString() === '[object FormData]')\n )\n )\n )\n}\n\n/**\n * Determine if a value is a URLSearchParams object\n *\n * @param {*} val The value to test\n *\n * @returns {boolean} True if value is a URLSearchParams object, otherwise false\n */\nconst isURLSearchParams = kindOfTest('URLSearchParams');\n\nconst [isReadableStream, isRequest, isResponse, isHeaders] = ['ReadableStream', 'Request', 'Response', 'Headers'].map(kindOfTest);\n\n/**\n * Trim excess whitespace off the beginning and end of a string\n *\n * @param {String} str The String to trim\n *\n * @returns {String} The String freed of excess whitespace\n */\nconst trim = (str) => str.trim ?\n str.trim() : str.replace(/^[\\s\\uFEFF\\xA0]+|[\\s\\uFEFF\\xA0]+$/g, '');\n\n/**\n * Iterate over an Array or an Object invoking a function for each item.\n *\n * If `obj` is an Array callback will be called passing\n * the value, index, and complete array for each item.\n *\n * If 'obj' is an Object callback will be called passing\n * the value, key, and complete object for each property.\n *\n * @param {Object|Array} obj The object to iterate\n * @param {Function} fn The callback to invoke for each item\n *\n * @param {Boolean} [allOwnKeys = false]\n * @returns {any}\n */\nfunction forEach(obj, fn, {allOwnKeys = false} = {}) {\n // Don't bother if no value provided\n if (obj === null || typeof obj === 'undefined') {\n return;\n }\n\n let i;\n let l;\n\n // Force an array if not already something iterable\n if (typeof obj !== 'object') {\n /*eslint no-param-reassign:0*/\n obj = [obj];\n }\n\n if (isArray(obj)) {\n // Iterate over array values\n for (i = 0, l = obj.length; i < l; i++) {\n fn.call(null, obj[i], i, obj);\n }\n } else {\n // Iterate over object keys\n const keys = allOwnKeys ? Object.getOwnPropertyNames(obj) : Object.keys(obj);\n const len = keys.length;\n let key;\n\n for (i = 0; i < len; i++) {\n key = keys[i];\n fn.call(null, obj[key], key, obj);\n }\n }\n}\n\nfunction findKey(obj, key) {\n key = key.toLowerCase();\n const keys = Object.keys(obj);\n let i = keys.length;\n let _key;\n while (i-- > 0) {\n _key = keys[i];\n if (key === _key.toLowerCase()) {\n return _key;\n }\n }\n return null;\n}\n\nconst _global = (() => {\n /*eslint no-undef:0*/\n if (typeof globalThis !== \"undefined\") return globalThis;\n return typeof self !== \"undefined\" ? self : (typeof window !== 'undefined' ? window : global)\n})();\n\nconst isContextDefined = (context) => !isUndefined(context) && context !== _global;\n\n/**\n * Accepts varargs expecting each argument to be an object, then\n * immutably merges the properties of each object and returns result.\n *\n * When multiple objects contain the same key the later object in\n * the arguments list will take precedence.\n *\n * Example:\n *\n * ```js\n * var result = merge({foo: 123}, {foo: 456});\n * console.log(result.foo); // outputs 456\n * ```\n *\n * @param {Object} obj1 Object to merge\n *\n * @returns {Object} Result of all merge properties\n */\nfunction merge(/* obj1, obj2, obj3, ... */) {\n const {caseless} = isContextDefined(this) && this || {};\n const result = {};\n const assignValue = (val, key) => {\n const targetKey = caseless && findKey(result, key) || key;\n if (isPlainObject(result[targetKey]) && isPlainObject(val)) {\n result[targetKey] = merge(result[targetKey], val);\n } else if (isPlainObject(val)) {\n result[targetKey] = merge({}, val);\n } else if (isArray(val)) {\n result[targetKey] = val.slice();\n } else {\n result[targetKey] = val;\n }\n }\n\n for (let i = 0, l = arguments.length; i < l; i++) {\n arguments[i] && forEach(arguments[i], assignValue);\n }\n return result;\n}\n\n/**\n * Extends object a by mutably adding to it the properties of object b.\n *\n * @param {Object} a The object to be extended\n * @param {Object} b The object to copy properties from\n * @param {Object} thisArg The object to bind function to\n *\n * @param {Boolean} [allOwnKeys]\n * @returns {Object} The resulting value of object a\n */\nconst extend = (a, b, thisArg, {allOwnKeys}= {}) => {\n forEach(b, (val, key) => {\n if (thisArg && isFunction(val)) {\n a[key] = bind(val, thisArg);\n } else {\n a[key] = val;\n }\n }, {allOwnKeys});\n return a;\n}\n\n/**\n * Remove byte order marker. This catches EF BB BF (the UTF-8 BOM)\n *\n * @param {string} content with BOM\n *\n * @returns {string} content value without BOM\n */\nconst stripBOM = (content) => {\n if (content.charCodeAt(0) === 0xFEFF) {\n content = content.slice(1);\n }\n return content;\n}\n\n/**\n * Inherit the prototype methods from one constructor into another\n * @param {function} constructor\n * @param {function} superConstructor\n * @param {object} [props]\n * @param {object} [descriptors]\n *\n * @returns {void}\n */\nconst inherits = (constructor, superConstructor, props, descriptors) => {\n constructor.prototype = Object.create(superConstructor.prototype, descriptors);\n constructor.prototype.constructor = constructor;\n Object.defineProperty(constructor, 'super', {\n value: superConstructor.prototype\n });\n props && Object.assign(constructor.prototype, props);\n}\n\n/**\n * Resolve object with deep prototype chain to a flat object\n * @param {Object} sourceObj source object\n * @param {Object} [destObj]\n * @param {Function|Boolean} [filter]\n * @param {Function} [propFilter]\n *\n * @returns {Object}\n */\nconst toFlatObject = (sourceObj, destObj, filter, propFilter) => {\n let props;\n let i;\n let prop;\n const merged = {};\n\n destObj = destObj || {};\n // eslint-disable-next-line no-eq-null,eqeqeq\n if (sourceObj == null) return destObj;\n\n do {\n props = Object.getOwnPropertyNames(sourceObj);\n i = props.length;\n while (i-- > 0) {\n prop = props[i];\n if ((!propFilter || propFilter(prop, sourceObj, destObj)) && !merged[prop]) {\n destObj[prop] = sourceObj[prop];\n merged[prop] = true;\n }\n }\n sourceObj = filter !== false && getPrototypeOf(sourceObj);\n } while (sourceObj && (!filter || filter(sourceObj, destObj)) && sourceObj !== Object.prototype);\n\n return destObj;\n}\n\n/**\n * Determines whether a string ends with the characters of a specified string\n *\n * @param {String} str\n * @param {String} searchString\n * @param {Number} [position= 0]\n *\n * @returns {boolean}\n */\nconst endsWith = (str, searchString, position) => {\n str = String(str);\n if (position === undefined || position > str.length) {\n position = str.length;\n }\n position -= searchString.length;\n const lastIndex = str.indexOf(searchString, position);\n return lastIndex !== -1 && lastIndex === position;\n}\n\n\n/**\n * Returns new array from array like object or null if failed\n *\n * @param {*} [thing]\n *\n * @returns {?Array}\n */\nconst toArray = (thing) => {\n if (!thing) return null;\n if (isArray(thing)) return thing;\n let i = thing.length;\n if (!isNumber(i)) return null;\n const arr = new Array(i);\n while (i-- > 0) {\n arr[i] = thing[i];\n }\n return arr;\n}\n\n/**\n * Checking if the Uint8Array exists and if it does, it returns a function that checks if the\n * thing passed in is an instance of Uint8Array\n *\n * @param {TypedArray}\n *\n * @returns {Array}\n */\n// eslint-disable-next-line func-names\nconst isTypedArray = (TypedArray => {\n // eslint-disable-next-line func-names\n return thing => {\n return TypedArray && thing instanceof TypedArray;\n };\n})(typeof Uint8Array !== 'undefined' && getPrototypeOf(Uint8Array));\n\n/**\n * For each entry in the object, call the function with the key and value.\n *\n * @param {Object} obj - The object to iterate over.\n * @param {Function} fn - The function to call for each entry.\n *\n * @returns {void}\n */\nconst forEachEntry = (obj, fn) => {\n const generator = obj && obj[Symbol.iterator];\n\n const iterator = generator.call(obj);\n\n let result;\n\n while ((result = iterator.next()) && !result.done) {\n const pair = result.value;\n fn.call(obj, pair[0], pair[1]);\n }\n}\n\n/**\n * It takes a regular expression and a string, and returns an array of all the matches\n *\n * @param {string} regExp - The regular expression to match against.\n * @param {string} str - The string to search.\n *\n * @returns {Array}\n */\nconst matchAll = (regExp, str) => {\n let matches;\n const arr = [];\n\n while ((matches = regExp.exec(str)) !== null) {\n arr.push(matches);\n }\n\n return arr;\n}\n\n/* Checking if the kindOfTest function returns true when passed an HTMLFormElement. */\nconst isHTMLForm = kindOfTest('HTMLFormElement');\n\nconst toCamelCase = str => {\n return str.toLowerCase().replace(/[-_\\s]([a-z\\d])(\\w*)/g,\n function replacer(m, p1, p2) {\n return p1.toUpperCase() + p2;\n }\n );\n};\n\n/* Creating a function that will check if an object has a property. */\nconst hasOwnProperty = (({hasOwnProperty}) => (obj, prop) => hasOwnProperty.call(obj, prop))(Object.prototype);\n\n/**\n * Determine if a value is a RegExp object\n *\n * @param {*} val The value to test\n *\n * @returns {boolean} True if value is a RegExp object, otherwise false\n */\nconst isRegExp = kindOfTest('RegExp');\n\nconst reduceDescriptors = (obj, reducer) => {\n const descriptors = Object.getOwnPropertyDescriptors(obj);\n const reducedDescriptors = {};\n\n forEach(descriptors, (descriptor, name) => {\n let ret;\n if ((ret = reducer(descriptor, name, obj)) !== false) {\n reducedDescriptors[name] = ret || descriptor;\n }\n });\n\n Object.defineProperties(obj, reducedDescriptors);\n}\n\n/**\n * Makes all methods read-only\n * @param {Object} obj\n */\n\nconst freezeMethods = (obj) => {\n reduceDescriptors(obj, (descriptor, name) => {\n // skip restricted props in strict mode\n if (isFunction(obj) && ['arguments', 'caller', 'callee'].indexOf(name) !== -1) {\n return false;\n }\n\n const value = obj[name];\n\n if (!isFunction(value)) return;\n\n descriptor.enumerable = false;\n\n if ('writable' in descriptor) {\n descriptor.writable = false;\n return;\n }\n\n if (!descriptor.set) {\n descriptor.set = () => {\n throw Error('Can not rewrite read-only method \\'' + name + '\\'');\n };\n }\n });\n}\n\nconst toObjectSet = (arrayOrString, delimiter) => {\n const obj = {};\n\n const define = (arr) => {\n arr.forEach(value => {\n obj[value] = true;\n });\n }\n\n isArray(arrayOrString) ? define(arrayOrString) : define(String(arrayOrString).split(delimiter));\n\n return obj;\n}\n\nconst noop = () => {}\n\nconst toFiniteNumber = (value, defaultValue) => {\n return value != null && Number.isFinite(value = +value) ? value : defaultValue;\n}\n\nconst ALPHA = 'abcdefghijklmnopqrstuvwxyz'\n\nconst DIGIT = '0123456789';\n\nconst ALPHABET = {\n DIGIT,\n ALPHA,\n ALPHA_DIGIT: ALPHA + ALPHA.toUpperCase() + DIGIT\n}\n\nconst generateString = (size = 16, alphabet = ALPHABET.ALPHA_DIGIT) => {\n let str = '';\n const {length} = alphabet;\n while (size--) {\n str += alphabet[Math.random() * length|0]\n }\n\n return str;\n}\n\n/**\n * If the thing is a FormData object, return true, otherwise return false.\n *\n * @param {unknown} thing - The thing to check.\n *\n * @returns {boolean}\n */\nfunction isSpecCompliantForm(thing) {\n return !!(thing && isFunction(thing.append) && thing[Symbol.toStringTag] === 'FormData' && thing[Symbol.iterator]);\n}\n\nconst toJSONObject = (obj) => {\n const stack = new Array(10);\n\n const visit = (source, i) => {\n\n if (isObject(source)) {\n if (stack.indexOf(source) >= 0) {\n return;\n }\n\n if(!('toJSON' in source)) {\n stack[i] = source;\n const target = isArray(source) ? [] : {};\n\n forEach(source, (value, key) => {\n const reducedValue = visit(value, i + 1);\n !isUndefined(reducedValue) && (target[key] = reducedValue);\n });\n\n stack[i] = undefined;\n\n return target;\n }\n }\n\n return source;\n }\n\n return visit(obj, 0);\n}\n\nconst isAsyncFn = kindOfTest('AsyncFunction');\n\nconst isThenable = (thing) =>\n thing && (isObject(thing) || isFunction(thing)) && isFunction(thing.then) && isFunction(thing.catch);\n\n// original code\n// https://github.com/DigitalBrainJS/AxiosPromise/blob/16deab13710ec09779922131f3fa5954320f83ab/lib/utils.js#L11-L34\n\nconst _setImmediate = ((setImmediateSupported, postMessageSupported) => {\n if (setImmediateSupported) {\n return setImmediate;\n }\n\n return postMessageSupported ? ((token, callbacks) => {\n _global.addEventListener(\"message\", ({source, data}) => {\n if (source === _global && data === token) {\n callbacks.length && callbacks.shift()();\n }\n }, false);\n\n return (cb) => {\n callbacks.push(cb);\n _global.postMessage(token, \"*\");\n }\n })(`axios@${Math.random()}`, []) : (cb) => setTimeout(cb);\n})(\n typeof setImmediate === 'function',\n isFunction(_global.postMessage)\n);\n\nconst asap = typeof queueMicrotask !== 'undefined' ?\n queueMicrotask.bind(_global) : ( typeof process !== 'undefined' && process.nextTick || _setImmediate);\n\n// *********************\n\nexport default {\n isArray,\n isArrayBuffer,\n isBuffer,\n isFormData,\n isArrayBufferView,\n isString,\n isNumber,\n isBoolean,\n isObject,\n isPlainObject,\n isReadableStream,\n isRequest,\n isResponse,\n isHeaders,\n isUndefined,\n isDate,\n isFile,\n isBlob,\n isRegExp,\n isFunction,\n isStream,\n isURLSearchParams,\n isTypedArray,\n isFileList,\n forEach,\n merge,\n extend,\n trim,\n stripBOM,\n inherits,\n toFlatObject,\n kindOf,\n kindOfTest,\n endsWith,\n toArray,\n forEachEntry,\n matchAll,\n isHTMLForm,\n hasOwnProperty,\n hasOwnProp: hasOwnProperty, // an alias to avoid ESLint no-prototype-builtins detection\n reduceDescriptors,\n freezeMethods,\n toObjectSet,\n toCamelCase,\n noop,\n toFiniteNumber,\n findKey,\n global: _global,\n isContextDefined,\n ALPHABET,\n generateString,\n isSpecCompliantForm,\n toJSONObject,\n isAsyncFn,\n isThenable,\n setImmediate: _setImmediate,\n asap\n};\n","'use strict';\n\nimport utils from '../utils.js';\n\n/**\n * Create an Error with the specified message, config, error code, request and response.\n *\n * @param {string} message The error message.\n * @param {string} [code] The error code (for example, 'ECONNABORTED').\n * @param {Object} [config] The config.\n * @param {Object} [request] The request.\n * @param {Object} [response] The response.\n *\n * @returns {Error} The created error.\n */\nfunction AxiosError(message, code, config, request, response) {\n Error.call(this);\n\n if (Error.captureStackTrace) {\n Error.captureStackTrace(this, this.constructor);\n } else {\n this.stack = (new Error()).stack;\n }\n\n this.message = message;\n this.name = 'AxiosError';\n code && (this.code = code);\n config && (this.config = config);\n request && (this.request = request);\n if (response) {\n this.response = response;\n this.status = response.status ? response.status : null;\n }\n}\n\nutils.inherits(AxiosError, Error, {\n toJSON: function toJSON() {\n return {\n // Standard\n message: this.message,\n name: this.name,\n // Microsoft\n description: this.description,\n number: this.number,\n // Mozilla\n fileName: this.fileName,\n lineNumber: this.lineNumber,\n columnNumber: this.columnNumber,\n stack: this.stack,\n // Axios\n config: utils.toJSONObject(this.config),\n code: this.code,\n status: this.status\n };\n }\n});\n\nconst prototype = AxiosError.prototype;\nconst descriptors = {};\n\n[\n 'ERR_BAD_OPTION_VALUE',\n 'ERR_BAD_OPTION',\n 'ECONNABORTED',\n 'ETIMEDOUT',\n 'ERR_NETWORK',\n 'ERR_FR_TOO_MANY_REDIRECTS',\n 'ERR_DEPRECATED',\n 'ERR_BAD_RESPONSE',\n 'ERR_BAD_REQUEST',\n 'ERR_CANCELED',\n 'ERR_NOT_SUPPORT',\n 'ERR_INVALID_URL'\n// eslint-disable-next-line func-names\n].forEach(code => {\n descriptors[code] = {value: code};\n});\n\nObject.defineProperties(AxiosError, descriptors);\nObject.defineProperty(prototype, 'isAxiosError', {value: true});\n\n// eslint-disable-next-line func-names\nAxiosError.from = (error, code, config, request, response, customProps) => {\n const axiosError = Object.create(prototype);\n\n utils.toFlatObject(error, axiosError, function filter(obj) {\n return obj !== Error.prototype;\n }, prop => {\n return prop !== 'isAxiosError';\n });\n\n AxiosError.call(axiosError, error.message, code, config, request, response);\n\n axiosError.cause = error;\n\n axiosError.name = error.name;\n\n customProps && Object.assign(axiosError, customProps);\n\n return axiosError;\n};\n\nexport default AxiosError;\n","'use strict';\n\nimport utils from '../utils.js';\nimport AxiosError from '../core/AxiosError.js';\n// temporary hotfix to avoid circular references until AxiosURLSearchParams is refactored\nimport PlatformFormData from '../platform/node/classes/FormData.js';\n\n/**\n * Determines if the given thing is a array or js object.\n *\n * @param {string} thing - The object or array to be visited.\n *\n * @returns {boolean}\n */\nfunction isVisitable(thing) {\n return utils.isPlainObject(thing) || utils.isArray(thing);\n}\n\n/**\n * It removes the brackets from the end of a string\n *\n * @param {string} key - The key of the parameter.\n *\n * @returns {string} the key without the brackets.\n */\nfunction removeBrackets(key) {\n return utils.endsWith(key, '[]') ? key.slice(0, -2) : key;\n}\n\n/**\n * It takes a path, a key, and a boolean, and returns a string\n *\n * @param {string} path - The path to the current key.\n * @param {string} key - The key of the current object being iterated over.\n * @param {string} dots - If true, the key will be rendered with dots instead of brackets.\n *\n * @returns {string} The path to the current key.\n */\nfunction renderKey(path, key, dots) {\n if (!path) return key;\n return path.concat(key).map(function each(token, i) {\n // eslint-disable-next-line no-param-reassign\n token = removeBrackets(token);\n return !dots && i ? '[' + token + ']' : token;\n }).join(dots ? '.' : '');\n}\n\n/**\n * If the array is an array and none of its elements are visitable, then it's a flat array.\n *\n * @param {Array} arr - The array to check\n *\n * @returns {boolean}\n */\nfunction isFlatArray(arr) {\n return utils.isArray(arr) && !arr.some(isVisitable);\n}\n\nconst predicates = utils.toFlatObject(utils, {}, null, function filter(prop) {\n return /^is[A-Z]/.test(prop);\n});\n\n/**\n * Convert a data object to FormData\n *\n * @param {Object} obj\n * @param {?Object} [formData]\n * @param {?Object} [options]\n * @param {Function} [options.visitor]\n * @param {Boolean} [options.metaTokens = true]\n * @param {Boolean} [options.dots = false]\n * @param {?Boolean} [options.indexes = false]\n *\n * @returns {Object}\n **/\n\n/**\n * It converts an object into a FormData object\n *\n * @param {Object} obj - The object to convert to form data.\n * @param {string} formData - The FormData object to append to.\n * @param {Object} options\n *\n * @returns\n */\nfunction toFormData(obj, formData, options) {\n if (!utils.isObject(obj)) {\n throw new TypeError('target must be an object');\n }\n\n // eslint-disable-next-line no-param-reassign\n formData = formData || new (PlatformFormData || FormData)();\n\n // eslint-disable-next-line no-param-reassign\n options = utils.toFlatObject(options, {\n metaTokens: true,\n dots: false,\n indexes: false\n }, false, function defined(option, source) {\n // eslint-disable-next-line no-eq-null,eqeqeq\n return !utils.isUndefined(source[option]);\n });\n\n const metaTokens = options.metaTokens;\n // eslint-disable-next-line no-use-before-define\n const visitor = options.visitor || defaultVisitor;\n const dots = options.dots;\n const indexes = options.indexes;\n const _Blob = options.Blob || typeof Blob !== 'undefined' && Blob;\n const useBlob = _Blob && utils.isSpecCompliantForm(formData);\n\n if (!utils.isFunction(visitor)) {\n throw new TypeError('visitor must be a function');\n }\n\n function convertValue(value) {\n if (value === null) return '';\n\n if (utils.isDate(value)) {\n return value.toISOString();\n }\n\n if (!useBlob && utils.isBlob(value)) {\n throw new AxiosError('Blob is not supported. Use a Buffer instead.');\n }\n\n if (utils.isArrayBuffer(value) || utils.isTypedArray(value)) {\n return useBlob && typeof Blob === 'function' ? new Blob([value]) : Buffer.from(value);\n }\n\n return value;\n }\n\n /**\n * Default visitor.\n *\n * @param {*} value\n * @param {String|Number} key\n * @param {Array} path\n * @this {FormData}\n *\n * @returns {boolean} return true to visit the each prop of the value recursively\n */\n function defaultVisitor(value, key, path) {\n let arr = value;\n\n if (value && !path && typeof value === 'object') {\n if (utils.endsWith(key, '{}')) {\n // eslint-disable-next-line no-param-reassign\n key = metaTokens ? key : key.slice(0, -2);\n // eslint-disable-next-line no-param-reassign\n value = JSON.stringify(value);\n } else if (\n (utils.isArray(value) && isFlatArray(value)) ||\n ((utils.isFileList(value) || utils.endsWith(key, '[]')) && (arr = utils.toArray(value))\n )) {\n // eslint-disable-next-line no-param-reassign\n key = removeBrackets(key);\n\n arr.forEach(function each(el, index) {\n !(utils.isUndefined(el) || el === null) && formData.append(\n // eslint-disable-next-line no-nested-ternary\n indexes === true ? renderKey([key], index, dots) : (indexes === null ? key : key + '[]'),\n convertValue(el)\n );\n });\n return false;\n }\n }\n\n if (isVisitable(value)) {\n return true;\n }\n\n formData.append(renderKey(path, key, dots), convertValue(value));\n\n return false;\n }\n\n const stack = [];\n\n const exposedHelpers = Object.assign(predicates, {\n defaultVisitor,\n convertValue,\n isVisitable\n });\n\n function build(value, path) {\n if (utils.isUndefined(value)) return;\n\n if (stack.indexOf(value) !== -1) {\n throw Error('Circular reference detected in ' + path.join('.'));\n }\n\n stack.push(value);\n\n utils.forEach(value, function each(el, key) {\n const result = !(utils.isUndefined(el) || el === null) && visitor.call(\n formData, el, utils.isString(key) ? key.trim() : key, path, exposedHelpers\n );\n\n if (result === true) {\n build(el, path ? path.concat(key) : [key]);\n }\n });\n\n stack.pop();\n }\n\n if (!utils.isObject(obj)) {\n throw new TypeError('data must be an object');\n }\n\n build(obj);\n\n return formData;\n}\n\nexport default toFormData;\n","'use strict';\n\nimport toFormData from './toFormData.js';\n\n/**\n * It encodes a string by replacing all characters that are not in the unreserved set with\n * their percent-encoded equivalents\n *\n * @param {string} str - The string to encode.\n *\n * @returns {string} The encoded string.\n */\nfunction encode(str) {\n const charMap = {\n '!': '%21',\n \"'\": '%27',\n '(': '%28',\n ')': '%29',\n '~': '%7E',\n '%20': '+',\n '%00': '\\x00'\n };\n return encodeURIComponent(str).replace(/[!'()~]|%20|%00/g, function replacer(match) {\n return charMap[match];\n });\n}\n\n/**\n * It takes a params object and converts it to a FormData object\n *\n * @param {Object} params - The parameters to be converted to a FormData object.\n * @param {Object} options - The options object passed to the Axios constructor.\n *\n * @returns {void}\n */\nfunction AxiosURLSearchParams(params, options) {\n this._pairs = [];\n\n params && toFormData(params, this, options);\n}\n\nconst prototype = AxiosURLSearchParams.prototype;\n\nprototype.append = function append(name, value) {\n this._pairs.push([name, value]);\n};\n\nprototype.toString = function toString(encoder) {\n const _encode = encoder ? function(value) {\n return encoder.call(this, value, encode);\n } : encode;\n\n return this._pairs.map(function each(pair) {\n return _encode(pair[0]) + '=' + _encode(pair[1]);\n }, '').join('&');\n};\n\nexport default AxiosURLSearchParams;\n","'use strict';\n\nimport utils from '../utils.js';\nimport AxiosURLSearchParams from '../helpers/AxiosURLSearchParams.js';\n\n/**\n * It replaces all instances of the characters `:`, `$`, `,`, `+`, `[`, and `]` with their\n * URI encoded counterparts\n *\n * @param {string} val The value to be encoded.\n *\n * @returns {string} The encoded value.\n */\nfunction encode(val) {\n return encodeURIComponent(val).\n replace(/%3A/gi, ':').\n replace(/%24/g, '$').\n replace(/%2C/gi, ',').\n replace(/%20/g, '+').\n replace(/%5B/gi, '[').\n replace(/%5D/gi, ']');\n}\n\n/**\n * Build a URL by appending params to the end\n *\n * @param {string} url The base of the url (e.g., http://www.google.com)\n * @param {object} [params] The params to be appended\n * @param {?object} options\n *\n * @returns {string} The formatted url\n */\nexport default function buildURL(url, params, options) {\n /*eslint no-param-reassign:0*/\n if (!params) {\n return url;\n }\n \n const _encode = options && options.encode || encode;\n\n const serializeFn = options && options.serialize;\n\n let serializedParams;\n\n if (serializeFn) {\n serializedParams = serializeFn(params, options);\n } else {\n serializedParams = utils.isURLSearchParams(params) ?\n params.toString() :\n new AxiosURLSearchParams(params, options).toString(_encode);\n }\n\n if (serializedParams) {\n const hashmarkIndex = url.indexOf(\"#\");\n\n if (hashmarkIndex !== -1) {\n url = url.slice(0, hashmarkIndex);\n }\n url += (url.indexOf('?') === -1 ? '?' : '&') + serializedParams;\n }\n\n return url;\n}\n","'use strict';\n\nimport utils from './../utils.js';\n\nclass InterceptorManager {\n constructor() {\n this.handlers = [];\n }\n\n /**\n * Add a new interceptor to the stack\n *\n * @param {Function} fulfilled The function to handle `then` for a `Promise`\n * @param {Function} rejected The function to handle `reject` for a `Promise`\n *\n * @return {Number} An ID used to remove interceptor later\n */\n use(fulfilled, rejected, options) {\n this.handlers.push({\n fulfilled,\n rejected,\n synchronous: options ? options.synchronous : false,\n runWhen: options ? options.runWhen : null\n });\n return this.handlers.length - 1;\n }\n\n /**\n * Remove an interceptor from the stack\n *\n * @param {Number} id The ID that was returned by `use`\n *\n * @returns {Boolean} `true` if the interceptor was removed, `false` otherwise\n */\n eject(id) {\n if (this.handlers[id]) {\n this.handlers[id] = null;\n }\n }\n\n /**\n * Clear all interceptors from the stack\n *\n * @returns {void}\n */\n clear() {\n if (this.handlers) {\n this.handlers = [];\n }\n }\n\n /**\n * Iterate over all the registered interceptors\n *\n * This method is particularly useful for skipping over any\n * interceptors that may have become `null` calling `eject`.\n *\n * @param {Function} fn The function to call for each interceptor\n *\n * @returns {void}\n */\n forEach(fn) {\n utils.forEach(this.handlers, function forEachHandler(h) {\n if (h !== null) {\n fn(h);\n }\n });\n }\n}\n\nexport default InterceptorManager;\n","'use strict';\n\nexport default {\n silentJSONParsing: true,\n forcedJSONParsing: true,\n clarifyTimeoutError: false\n};\n","import URLSearchParams from './classes/URLSearchParams.js'\nimport FormData from './classes/FormData.js'\nimport Blob from './classes/Blob.js'\n\nexport default {\n isBrowser: true,\n classes: {\n URLSearchParams,\n FormData,\n Blob\n },\n protocols: ['http', 'https', 'file', 'blob', 'url', 'data']\n};\n","'use strict';\n\nimport AxiosURLSearchParams from '../../../helpers/AxiosURLSearchParams.js';\nexport default typeof URLSearchParams !== 'undefined' ? URLSearchParams : AxiosURLSearchParams;\n","'use strict';\n\nexport default typeof FormData !== 'undefined' ? FormData : null;\n","'use strict'\n\nexport default typeof Blob !== 'undefined' ? Blob : null\n","const hasBrowserEnv = typeof window !== 'undefined' && typeof document !== 'undefined';\n\nconst _navigator = typeof navigator === 'object' && navigator || undefined;\n\n/**\n * Determine if we're running in a standard browser environment\n *\n * This allows axios to run in a web worker, and react-native.\n * Both environments support XMLHttpRequest, but not fully standard globals.\n *\n * web workers:\n * typeof window -> undefined\n * typeof document -> undefined\n *\n * react-native:\n * navigator.product -> 'ReactNative'\n * nativescript\n * navigator.product -> 'NativeScript' or 'NS'\n *\n * @returns {boolean}\n */\nconst hasStandardBrowserEnv = hasBrowserEnv &&\n (!_navigator || ['ReactNative', 'NativeScript', 'NS'].indexOf(_navigator.product) < 0);\n\n/**\n * Determine if we're running in a standard browser webWorker environment\n *\n * Although the `isStandardBrowserEnv` method indicates that\n * `allows axios to run in a web worker`, the WebWorker will still be\n * filtered out due to its judgment standard\n * `typeof window !== 'undefined' && typeof document !== 'undefined'`.\n * This leads to a problem when axios post `FormData` in webWorker\n */\nconst hasStandardBrowserWebWorkerEnv = (() => {\n return (\n typeof WorkerGlobalScope !== 'undefined' &&\n // eslint-disable-next-line no-undef\n self instanceof WorkerGlobalScope &&\n typeof self.importScripts === 'function'\n );\n})();\n\nconst origin = hasBrowserEnv && window.location.href || 'http://localhost';\n\nexport {\n hasBrowserEnv,\n hasStandardBrowserWebWorkerEnv,\n hasStandardBrowserEnv,\n _navigator as navigator,\n origin\n}\n","import platform from './node/index.js';\nimport * as utils from './common/utils.js';\n\nexport default {\n ...utils,\n ...platform\n}\n","'use strict';\n\nimport utils from '../utils.js';\n\n/**\n * It takes a string like `foo[x][y][z]` and returns an array like `['foo', 'x', 'y', 'z']\n *\n * @param {string} name - The name of the property to get.\n *\n * @returns An array of strings.\n */\nfunction parsePropPath(name) {\n // foo[x][y][z]\n // foo.x.y.z\n // foo-x-y-z\n // foo x y z\n return utils.matchAll(/\\w+|\\[(\\w*)]/g, name).map(match => {\n return match[0] === '[]' ? '' : match[1] || match[0];\n });\n}\n\n/**\n * Convert an array to an object.\n *\n * @param {Array} arr - The array to convert to an object.\n *\n * @returns An object with the same keys and values as the array.\n */\nfunction arrayToObject(arr) {\n const obj = {};\n const keys = Object.keys(arr);\n let i;\n const len = keys.length;\n let key;\n for (i = 0; i < len; i++) {\n key = keys[i];\n obj[key] = arr[key];\n }\n return obj;\n}\n\n/**\n * It takes a FormData object and returns a JavaScript object\n *\n * @param {string} formData The FormData object to convert to JSON.\n *\n * @returns {Object | null} The converted object.\n */\nfunction formDataToJSON(formData) {\n function buildPath(path, value, target, index) {\n let name = path[index++];\n\n if (name === '__proto__') return true;\n\n const isNumericKey = Number.isFinite(+name);\n const isLast = index >= path.length;\n name = !name && utils.isArray(target) ? target.length : name;\n\n if (isLast) {\n if (utils.hasOwnProp(target, name)) {\n target[name] = [target[name], value];\n } else {\n target[name] = value;\n }\n\n return !isNumericKey;\n }\n\n if (!target[name] || !utils.isObject(target[name])) {\n target[name] = [];\n }\n\n const result = buildPath(path, value, target[name], index);\n\n if (result && utils.isArray(target[name])) {\n target[name] = arrayToObject(target[name]);\n }\n\n return !isNumericKey;\n }\n\n if (utils.isFormData(formData) && utils.isFunction(formData.entries)) {\n const obj = {};\n\n utils.forEachEntry(formData, (name, value) => {\n buildPath(parsePropPath(name), value, obj, 0);\n });\n\n return obj;\n }\n\n return null;\n}\n\nexport default formDataToJSON;\n","'use strict';\n\nimport utils from '../utils.js';\nimport AxiosError from '../core/AxiosError.js';\nimport transitionalDefaults from './transitional.js';\nimport toFormData from '../helpers/toFormData.js';\nimport toURLEncodedForm from '../helpers/toURLEncodedForm.js';\nimport platform from '../platform/index.js';\nimport formDataToJSON from '../helpers/formDataToJSON.js';\n\n/**\n * It takes a string, tries to parse it, and if it fails, it returns the stringified version\n * of the input\n *\n * @param {any} rawValue - The value to be stringified.\n * @param {Function} parser - A function that parses a string into a JavaScript object.\n * @param {Function} encoder - A function that takes a value and returns a string.\n *\n * @returns {string} A stringified version of the rawValue.\n */\nfunction stringifySafely(rawValue, parser, encoder) {\n if (utils.isString(rawValue)) {\n try {\n (parser || JSON.parse)(rawValue);\n return utils.trim(rawValue);\n } catch (e) {\n if (e.name !== 'SyntaxError') {\n throw e;\n }\n }\n }\n\n return (encoder || JSON.stringify)(rawValue);\n}\n\nconst defaults = {\n\n transitional: transitionalDefaults,\n\n adapter: ['xhr', 'http', 'fetch'],\n\n transformRequest: [function transformRequest(data, headers) {\n const contentType = headers.getContentType() || '';\n const hasJSONContentType = contentType.indexOf('application/json') > -1;\n const isObjectPayload = utils.isObject(data);\n\n if (isObjectPayload && utils.isHTMLForm(data)) {\n data = new FormData(data);\n }\n\n const isFormData = utils.isFormData(data);\n\n if (isFormData) {\n return hasJSONContentType ? JSON.stringify(formDataToJSON(data)) : data;\n }\n\n if (utils.isArrayBuffer(data) ||\n utils.isBuffer(data) ||\n utils.isStream(data) ||\n utils.isFile(data) ||\n utils.isBlob(data) ||\n utils.isReadableStream(data)\n ) {\n return data;\n }\n if (utils.isArrayBufferView(data)) {\n return data.buffer;\n }\n if (utils.isURLSearchParams(data)) {\n headers.setContentType('application/x-www-form-urlencoded;charset=utf-8', false);\n return data.toString();\n }\n\n let isFileList;\n\n if (isObjectPayload) {\n if (contentType.indexOf('application/x-www-form-urlencoded') > -1) {\n return toURLEncodedForm(data, this.formSerializer).toString();\n }\n\n if ((isFileList = utils.isFileList(data)) || contentType.indexOf('multipart/form-data') > -1) {\n const _FormData = this.env && this.env.FormData;\n\n return toFormData(\n isFileList ? {'files[]': data} : data,\n _FormData && new _FormData(),\n this.formSerializer\n );\n }\n }\n\n if (isObjectPayload || hasJSONContentType ) {\n headers.setContentType('application/json', false);\n return stringifySafely(data);\n }\n\n return data;\n }],\n\n transformResponse: [function transformResponse(data) {\n const transitional = this.transitional || defaults.transitional;\n const forcedJSONParsing = transitional && transitional.forcedJSONParsing;\n const JSONRequested = this.responseType === 'json';\n\n if (utils.isResponse(data) || utils.isReadableStream(data)) {\n return data;\n }\n\n if (data && utils.isString(data) && ((forcedJSONParsing && !this.responseType) || JSONRequested)) {\n const silentJSONParsing = transitional && transitional.silentJSONParsing;\n const strictJSONParsing = !silentJSONParsing && JSONRequested;\n\n try {\n return JSON.parse(data);\n } catch (e) {\n if (strictJSONParsing) {\n if (e.name === 'SyntaxError') {\n throw AxiosError.from(e, AxiosError.ERR_BAD_RESPONSE, this, null, this.response);\n }\n throw e;\n }\n }\n }\n\n return data;\n }],\n\n /**\n * A timeout in milliseconds to abort a request. If set to 0 (default) a\n * timeout is not created.\n */\n timeout: 0,\n\n xsrfCookieName: 'XSRF-TOKEN',\n xsrfHeaderName: 'X-XSRF-TOKEN',\n\n maxContentLength: -1,\n maxBodyLength: -1,\n\n env: {\n FormData: platform.classes.FormData,\n Blob: platform.classes.Blob\n },\n\n validateStatus: function validateStatus(status) {\n return status >= 200 && status < 300;\n },\n\n headers: {\n common: {\n 'Accept': 'application/json, text/plain, */*',\n 'Content-Type': undefined\n }\n }\n};\n\nutils.forEach(['delete', 'get', 'head', 'post', 'put', 'patch'], (method) => {\n defaults.headers[method] = {};\n});\n\nexport default defaults;\n","'use strict';\n\nimport utils from '../utils.js';\nimport toFormData from './toFormData.js';\nimport platform from '../platform/index.js';\n\nexport default function toURLEncodedForm(data, options) {\n return toFormData(data, new platform.classes.URLSearchParams(), Object.assign({\n visitor: function(value, key, path, helpers) {\n if (platform.isNode && utils.isBuffer(value)) {\n this.append(key, value.toString('base64'));\n return false;\n }\n\n return helpers.defaultVisitor.apply(this, arguments);\n }\n }, options));\n}\n","'use strict';\n\nimport utils from './../utils.js';\n\n// RawAxiosHeaders whose duplicates are ignored by node\n// c.f. https://nodejs.org/api/http.html#http_message_headers\nconst ignoreDuplicateOf = utils.toObjectSet([\n 'age', 'authorization', 'content-length', 'content-type', 'etag',\n 'expires', 'from', 'host', 'if-modified-since', 'if-unmodified-since',\n 'last-modified', 'location', 'max-forwards', 'proxy-authorization',\n 'referer', 'retry-after', 'user-agent'\n]);\n\n/**\n * Parse headers into an object\n *\n * ```\n * Date: Wed, 27 Aug 2014 08:58:49 GMT\n * Content-Type: application/json\n * Connection: keep-alive\n * Transfer-Encoding: chunked\n * ```\n *\n * @param {String} rawHeaders Headers needing to be parsed\n *\n * @returns {Object} Headers parsed into an object\n */\nexport default rawHeaders => {\n const parsed = {};\n let key;\n let val;\n let i;\n\n rawHeaders && rawHeaders.split('\\n').forEach(function parser(line) {\n i = line.indexOf(':');\n key = line.substring(0, i).trim().toLowerCase();\n val = line.substring(i + 1).trim();\n\n if (!key || (parsed[key] && ignoreDuplicateOf[key])) {\n return;\n }\n\n if (key === 'set-cookie') {\n if (parsed[key]) {\n parsed[key].push(val);\n } else {\n parsed[key] = [val];\n }\n } else {\n parsed[key] = parsed[key] ? parsed[key] + ', ' + val : val;\n }\n });\n\n return parsed;\n};\n","'use strict';\n\nimport utils from '../utils.js';\nimport parseHeaders from '../helpers/parseHeaders.js';\n\nconst $internals = Symbol('internals');\n\nfunction normalizeHeader(header) {\n return header && String(header).trim().toLowerCase();\n}\n\nfunction normalizeValue(value) {\n if (value === false || value == null) {\n return value;\n }\n\n return utils.isArray(value) ? value.map(normalizeValue) : String(value);\n}\n\nfunction parseTokens(str) {\n const tokens = Object.create(null);\n const tokensRE = /([^\\s,;=]+)\\s*(?:=\\s*([^,;]+))?/g;\n let match;\n\n while ((match = tokensRE.exec(str))) {\n tokens[match[1]] = match[2];\n }\n\n return tokens;\n}\n\nconst isValidHeaderName = (str) => /^[-_a-zA-Z0-9^`|~,!#$%&'*+.]+$/.test(str.trim());\n\nfunction matchHeaderValue(context, value, header, filter, isHeaderNameFilter) {\n if (utils.isFunction(filter)) {\n return filter.call(this, value, header);\n }\n\n if (isHeaderNameFilter) {\n value = header;\n }\n\n if (!utils.isString(value)) return;\n\n if (utils.isString(filter)) {\n return value.indexOf(filter) !== -1;\n }\n\n if (utils.isRegExp(filter)) {\n return filter.test(value);\n }\n}\n\nfunction formatHeader(header) {\n return header.trim()\n .toLowerCase().replace(/([a-z\\d])(\\w*)/g, (w, char, str) => {\n return char.toUpperCase() + str;\n });\n}\n\nfunction buildAccessors(obj, header) {\n const accessorName = utils.toCamelCase(' ' + header);\n\n ['get', 'set', 'has'].forEach(methodName => {\n Object.defineProperty(obj, methodName + accessorName, {\n value: function(arg1, arg2, arg3) {\n return this[methodName].call(this, header, arg1, arg2, arg3);\n },\n configurable: true\n });\n });\n}\n\nclass AxiosHeaders {\n constructor(headers) {\n headers && this.set(headers);\n }\n\n set(header, valueOrRewrite, rewrite) {\n const self = this;\n\n function setHeader(_value, _header, _rewrite) {\n const lHeader = normalizeHeader(_header);\n\n if (!lHeader) {\n throw new Error('header name must be a non-empty string');\n }\n\n const key = utils.findKey(self, lHeader);\n\n if(!key || self[key] === undefined || _rewrite === true || (_rewrite === undefined && self[key] !== false)) {\n self[key || _header] = normalizeValue(_value);\n }\n }\n\n const setHeaders = (headers, _rewrite) =>\n utils.forEach(headers, (_value, _header) => setHeader(_value, _header, _rewrite));\n\n if (utils.isPlainObject(header) || header instanceof this.constructor) {\n setHeaders(header, valueOrRewrite)\n } else if(utils.isString(header) && (header = header.trim()) && !isValidHeaderName(header)) {\n setHeaders(parseHeaders(header), valueOrRewrite);\n } else if (utils.isHeaders(header)) {\n for (const [key, value] of header.entries()) {\n setHeader(value, key, rewrite);\n }\n } else {\n header != null && setHeader(valueOrRewrite, header, rewrite);\n }\n\n return this;\n }\n\n get(header, parser) {\n header = normalizeHeader(header);\n\n if (header) {\n const key = utils.findKey(this, header);\n\n if (key) {\n const value = this[key];\n\n if (!parser) {\n return value;\n }\n\n if (parser === true) {\n return parseTokens(value);\n }\n\n if (utils.isFunction(parser)) {\n return parser.call(this, value, key);\n }\n\n if (utils.isRegExp(parser)) {\n return parser.exec(value);\n }\n\n throw new TypeError('parser must be boolean|regexp|function');\n }\n }\n }\n\n has(header, matcher) {\n header = normalizeHeader(header);\n\n if (header) {\n const key = utils.findKey(this, header);\n\n return !!(key && this[key] !== undefined && (!matcher || matchHeaderValue(this, this[key], key, matcher)));\n }\n\n return false;\n }\n\n delete(header, matcher) {\n const self = this;\n let deleted = false;\n\n function deleteHeader(_header) {\n _header = normalizeHeader(_header);\n\n if (_header) {\n const key = utils.findKey(self, _header);\n\n if (key && (!matcher || matchHeaderValue(self, self[key], key, matcher))) {\n delete self[key];\n\n deleted = true;\n }\n }\n }\n\n if (utils.isArray(header)) {\n header.forEach(deleteHeader);\n } else {\n deleteHeader(header);\n }\n\n return deleted;\n }\n\n clear(matcher) {\n const keys = Object.keys(this);\n let i = keys.length;\n let deleted = false;\n\n while (i--) {\n const key = keys[i];\n if(!matcher || matchHeaderValue(this, this[key], key, matcher, true)) {\n delete this[key];\n deleted = true;\n }\n }\n\n return deleted;\n }\n\n normalize(format) {\n const self = this;\n const headers = {};\n\n utils.forEach(this, (value, header) => {\n const key = utils.findKey(headers, header);\n\n if (key) {\n self[key] = normalizeValue(value);\n delete self[header];\n return;\n }\n\n const normalized = format ? formatHeader(header) : String(header).trim();\n\n if (normalized !== header) {\n delete self[header];\n }\n\n self[normalized] = normalizeValue(value);\n\n headers[normalized] = true;\n });\n\n return this;\n }\n\n concat(...targets) {\n return this.constructor.concat(this, ...targets);\n }\n\n toJSON(asStrings) {\n const obj = Object.create(null);\n\n utils.forEach(this, (value, header) => {\n value != null && value !== false && (obj[header] = asStrings && utils.isArray(value) ? value.join(', ') : value);\n });\n\n return obj;\n }\n\n [Symbol.iterator]() {\n return Object.entries(this.toJSON())[Symbol.iterator]();\n }\n\n toString() {\n return Object.entries(this.toJSON()).map(([header, value]) => header + ': ' + value).join('\\n');\n }\n\n get [Symbol.toStringTag]() {\n return 'AxiosHeaders';\n }\n\n static from(thing) {\n return thing instanceof this ? thing : new this(thing);\n }\n\n static concat(first, ...targets) {\n const computed = new this(first);\n\n targets.forEach((target) => computed.set(target));\n\n return computed;\n }\n\n static accessor(header) {\n const internals = this[$internals] = (this[$internals] = {\n accessors: {}\n });\n\n const accessors = internals.accessors;\n const prototype = this.prototype;\n\n function defineAccessor(_header) {\n const lHeader = normalizeHeader(_header);\n\n if (!accessors[lHeader]) {\n buildAccessors(prototype, _header);\n accessors[lHeader] = true;\n }\n }\n\n utils.isArray(header) ? header.forEach(defineAccessor) : defineAccessor(header);\n\n return this;\n }\n}\n\nAxiosHeaders.accessor(['Content-Type', 'Content-Length', 'Accept', 'Accept-Encoding', 'User-Agent', 'Authorization']);\n\n// reserved names hotfix\nutils.reduceDescriptors(AxiosHeaders.prototype, ({value}, key) => {\n let mapped = key[0].toUpperCase() + key.slice(1); // map `set` => `Set`\n return {\n get: () => value,\n set(headerValue) {\n this[mapped] = headerValue;\n }\n }\n});\n\nutils.freezeMethods(AxiosHeaders);\n\nexport default AxiosHeaders;\n","'use strict';\n\nimport utils from './../utils.js';\nimport defaults from '../defaults/index.js';\nimport AxiosHeaders from '../core/AxiosHeaders.js';\n\n/**\n * Transform the data for a request or a response\n *\n * @param {Array|Function} fns A single function or Array of functions\n * @param {?Object} response The response object\n *\n * @returns {*} The resulting transformed data\n */\nexport default function transformData(fns, response) {\n const config = this || defaults;\n const context = response || config;\n const headers = AxiosHeaders.from(context.headers);\n let data = context.data;\n\n utils.forEach(fns, function transform(fn) {\n data = fn.call(config, data, headers.normalize(), response ? response.status : undefined);\n });\n\n headers.normalize();\n\n return data;\n}\n","'use strict';\n\nexport default function isCancel(value) {\n return !!(value && value.__CANCEL__);\n}\n","'use strict';\n\nimport AxiosError from '../core/AxiosError.js';\nimport utils from '../utils.js';\n\n/**\n * A `CanceledError` is an object that is thrown when an operation is canceled.\n *\n * @param {string=} message The message.\n * @param {Object=} config The config.\n * @param {Object=} request The request.\n *\n * @returns {CanceledError} The created error.\n */\nfunction CanceledError(message, config, request) {\n // eslint-disable-next-line no-eq-null,eqeqeq\n AxiosError.call(this, message == null ? 'canceled' : message, AxiosError.ERR_CANCELED, config, request);\n this.name = 'CanceledError';\n}\n\nutils.inherits(CanceledError, AxiosError, {\n __CANCEL__: true\n});\n\nexport default CanceledError;\n","'use strict';\n\nimport AxiosError from './AxiosError.js';\n\n/**\n * Resolve or reject a Promise based on response status.\n *\n * @param {Function} resolve A function that resolves the promise.\n * @param {Function} reject A function that rejects the promise.\n * @param {object} response The response.\n *\n * @returns {object} The response.\n */\nexport default function settle(resolve, reject, response) {\n const validateStatus = response.config.validateStatus;\n if (!response.status || !validateStatus || validateStatus(response.status)) {\n resolve(response);\n } else {\n reject(new AxiosError(\n 'Request failed with status code ' + response.status,\n [AxiosError.ERR_BAD_REQUEST, AxiosError.ERR_BAD_RESPONSE][Math.floor(response.status / 100) - 4],\n response.config,\n response.request,\n response\n ));\n }\n}\n","'use strict';\n\n/**\n * Calculate data maxRate\n * @param {Number} [samplesCount= 10]\n * @param {Number} [min= 1000]\n * @returns {Function}\n */\nfunction speedometer(samplesCount, min) {\n samplesCount = samplesCount || 10;\n const bytes = new Array(samplesCount);\n const timestamps = new Array(samplesCount);\n let head = 0;\n let tail = 0;\n let firstSampleTS;\n\n min = min !== undefined ? min : 1000;\n\n return function push(chunkLength) {\n const now = Date.now();\n\n const startedAt = timestamps[tail];\n\n if (!firstSampleTS) {\n firstSampleTS = now;\n }\n\n bytes[head] = chunkLength;\n timestamps[head] = now;\n\n let i = tail;\n let bytesCount = 0;\n\n while (i !== head) {\n bytesCount += bytes[i++];\n i = i % samplesCount;\n }\n\n head = (head + 1) % samplesCount;\n\n if (head === tail) {\n tail = (tail + 1) % samplesCount;\n }\n\n if (now - firstSampleTS < min) {\n return;\n }\n\n const passed = startedAt && now - startedAt;\n\n return passed ? Math.round(bytesCount * 1000 / passed) : undefined;\n };\n}\n\nexport default speedometer;\n","import speedometer from \"./speedometer.js\";\nimport throttle from \"./throttle.js\";\nimport utils from \"../utils.js\";\n\nexport const progressEventReducer = (listener, isDownloadStream, freq = 3) => {\n let bytesNotified = 0;\n const _speedometer = speedometer(50, 250);\n\n return throttle(e => {\n const loaded = e.loaded;\n const total = e.lengthComputable ? e.total : undefined;\n const progressBytes = loaded - bytesNotified;\n const rate = _speedometer(progressBytes);\n const inRange = loaded <= total;\n\n bytesNotified = loaded;\n\n const data = {\n loaded,\n total,\n progress: total ? (loaded / total) : undefined,\n bytes: progressBytes,\n rate: rate ? rate : undefined,\n estimated: rate && total && inRange ? (total - loaded) / rate : undefined,\n event: e,\n lengthComputable: total != null,\n [isDownloadStream ? 'download' : 'upload']: true\n };\n\n listener(data);\n }, freq);\n}\n\nexport const progressEventDecorator = (total, throttled) => {\n const lengthComputable = total != null;\n\n return [(loaded) => throttled[0]({\n lengthComputable,\n total,\n loaded\n }), throttled[1]];\n}\n\nexport const asyncDecorator = (fn) => (...args) => utils.asap(() => fn(...args));\n","/**\n * Throttle decorator\n * @param {Function} fn\n * @param {Number} freq\n * @return {Function}\n */\nfunction throttle(fn, freq) {\n let timestamp = 0;\n let threshold = 1000 / freq;\n let lastArgs;\n let timer;\n\n const invoke = (args, now = Date.now()) => {\n timestamp = now;\n lastArgs = null;\n if (timer) {\n clearTimeout(timer);\n timer = null;\n }\n fn.apply(null, args);\n }\n\n const throttled = (...args) => {\n const now = Date.now();\n const passed = now - timestamp;\n if ( passed >= threshold) {\n invoke(args, now);\n } else {\n lastArgs = args;\n if (!timer) {\n timer = setTimeout(() => {\n timer = null;\n invoke(lastArgs)\n }, threshold - passed);\n }\n }\n }\n\n const flush = () => lastArgs && invoke(lastArgs);\n\n return [throttled, flush];\n}\n\nexport default throttle;\n","'use strict';\n\nimport utils from './../utils.js';\nimport platform from '../platform/index.js';\n\nexport default platform.hasStandardBrowserEnv ?\n\n// Standard browser envs have full support of the APIs needed to test\n// whether the request URL is of the same origin as current location.\n (function standardBrowserEnv() {\n const msie = platform.navigator && /(msie|trident)/i.test(platform.navigator.userAgent);\n const urlParsingNode = document.createElement('a');\n let originURL;\n\n /**\n * Parse a URL to discover its components\n *\n * @param {String} url The URL to be parsed\n * @returns {Object}\n */\n function resolveURL(url) {\n let href = url;\n\n if (msie) {\n // IE needs attribute set twice to normalize properties\n urlParsingNode.setAttribute('href', href);\n href = urlParsingNode.href;\n }\n\n urlParsingNode.setAttribute('href', href);\n\n // urlParsingNode provides the UrlUtils interface - http://url.spec.whatwg.org/#urlutils\n return {\n href: urlParsingNode.href,\n protocol: urlParsingNode.protocol ? urlParsingNode.protocol.replace(/:$/, '') : '',\n host: urlParsingNode.host,\n search: urlParsingNode.search ? urlParsingNode.search.replace(/^\\?/, '') : '',\n hash: urlParsingNode.hash ? urlParsingNode.hash.replace(/^#/, '') : '',\n hostname: urlParsingNode.hostname,\n port: urlParsingNode.port,\n pathname: (urlParsingNode.pathname.charAt(0) === '/') ?\n urlParsingNode.pathname :\n '/' + urlParsingNode.pathname\n };\n }\n\n originURL = resolveURL(window.location.href);\n\n /**\n * Determine if a URL shares the same origin as the current location\n *\n * @param {String} requestURL The URL to test\n * @returns {boolean} True if URL shares the same origin, otherwise false\n */\n return function isURLSameOrigin(requestURL) {\n const parsed = (utils.isString(requestURL)) ? resolveURL(requestURL) : requestURL;\n return (parsed.protocol === originURL.protocol &&\n parsed.host === originURL.host);\n };\n })() :\n\n // Non standard browser envs (web workers, react-native) lack needed support.\n (function nonStandardBrowserEnv() {\n return function isURLSameOrigin() {\n return true;\n };\n })();\n","import utils from './../utils.js';\nimport platform from '../platform/index.js';\n\nexport default platform.hasStandardBrowserEnv ?\n\n // Standard browser envs support document.cookie\n {\n write(name, value, expires, path, domain, secure) {\n const cookie = [name + '=' + encodeURIComponent(value)];\n\n utils.isNumber(expires) && cookie.push('expires=' + new Date(expires).toGMTString());\n\n utils.isString(path) && cookie.push('path=' + path);\n\n utils.isString(domain) && cookie.push('domain=' + domain);\n\n secure === true && cookie.push('secure');\n\n document.cookie = cookie.join('; ');\n },\n\n read(name) {\n const match = document.cookie.match(new RegExp('(^|;\\\\s*)(' + name + ')=([^;]*)'));\n return (match ? decodeURIComponent(match[3]) : null);\n },\n\n remove(name) {\n this.write(name, '', Date.now() - 86400000);\n }\n }\n\n :\n\n // Non-standard browser env (web workers, react-native) lack needed support.\n {\n write() {},\n read() {\n return null;\n },\n remove() {}\n };\n\n","'use strict';\n\nimport isAbsoluteURL from '../helpers/isAbsoluteURL.js';\nimport combineURLs from '../helpers/combineURLs.js';\n\n/**\n * Creates a new URL by combining the baseURL with the requestedURL,\n * only when the requestedURL is not already an absolute URL.\n * If the requestURL is absolute, this function returns the requestedURL untouched.\n *\n * @param {string} baseURL The base URL\n * @param {string} requestedURL Absolute or relative URL to combine\n *\n * @returns {string} The combined full path\n */\nexport default function buildFullPath(baseURL, requestedURL) {\n if (baseURL && !isAbsoluteURL(requestedURL)) {\n return combineURLs(baseURL, requestedURL);\n }\n return requestedURL;\n}\n","'use strict';\n\n/**\n * Determines whether the specified URL is absolute\n *\n * @param {string} url The URL to test\n *\n * @returns {boolean} True if the specified URL is absolute, otherwise false\n */\nexport default function isAbsoluteURL(url) {\n // A URL is considered absolute if it begins with \"://\" or \"//\" (protocol-relative URL).\n // RFC 3986 defines scheme name as a sequence of characters beginning with a letter and followed\n // by any combination of letters, digits, plus, period, or hyphen.\n return /^([a-z][a-z\\d+\\-.]*:)?\\/\\//i.test(url);\n}\n","'use strict';\n\n/**\n * Creates a new URL by combining the specified URLs\n *\n * @param {string} baseURL The base URL\n * @param {string} relativeURL The relative URL\n *\n * @returns {string} The combined URL\n */\nexport default function combineURLs(baseURL, relativeURL) {\n return relativeURL\n ? baseURL.replace(/\\/?\\/$/, '') + '/' + relativeURL.replace(/^\\/+/, '')\n : baseURL;\n}\n","'use strict';\n\nimport utils from '../utils.js';\nimport AxiosHeaders from \"./AxiosHeaders.js\";\n\nconst headersToObject = (thing) => thing instanceof AxiosHeaders ? { ...thing } : thing;\n\n/**\n * Config-specific merge-function which creates a new config-object\n * by merging two configuration objects together.\n *\n * @param {Object} config1\n * @param {Object} config2\n *\n * @returns {Object} New object resulting from merging config2 to config1\n */\nexport default function mergeConfig(config1, config2) {\n // eslint-disable-next-line no-param-reassign\n config2 = config2 || {};\n const config = {};\n\n function getMergedValue(target, source, caseless) {\n if (utils.isPlainObject(target) && utils.isPlainObject(source)) {\n return utils.merge.call({caseless}, target, source);\n } else if (utils.isPlainObject(source)) {\n return utils.merge({}, source);\n } else if (utils.isArray(source)) {\n return source.slice();\n }\n return source;\n }\n\n // eslint-disable-next-line consistent-return\n function mergeDeepProperties(a, b, caseless) {\n if (!utils.isUndefined(b)) {\n return getMergedValue(a, b, caseless);\n } else if (!utils.isUndefined(a)) {\n return getMergedValue(undefined, a, caseless);\n }\n }\n\n // eslint-disable-next-line consistent-return\n function valueFromConfig2(a, b) {\n if (!utils.isUndefined(b)) {\n return getMergedValue(undefined, b);\n }\n }\n\n // eslint-disable-next-line consistent-return\n function defaultToConfig2(a, b) {\n if (!utils.isUndefined(b)) {\n return getMergedValue(undefined, b);\n } else if (!utils.isUndefined(a)) {\n return getMergedValue(undefined, a);\n }\n }\n\n // eslint-disable-next-line consistent-return\n function mergeDirectKeys(a, b, prop) {\n if (prop in config2) {\n return getMergedValue(a, b);\n } else if (prop in config1) {\n return getMergedValue(undefined, a);\n }\n }\n\n const mergeMap = {\n url: valueFromConfig2,\n method: valueFromConfig2,\n data: valueFromConfig2,\n baseURL: defaultToConfig2,\n transformRequest: defaultToConfig2,\n transformResponse: defaultToConfig2,\n paramsSerializer: defaultToConfig2,\n timeout: defaultToConfig2,\n timeoutMessage: defaultToConfig2,\n withCredentials: defaultToConfig2,\n withXSRFToken: defaultToConfig2,\n adapter: defaultToConfig2,\n responseType: defaultToConfig2,\n xsrfCookieName: defaultToConfig2,\n xsrfHeaderName: defaultToConfig2,\n onUploadProgress: defaultToConfig2,\n onDownloadProgress: defaultToConfig2,\n decompress: defaultToConfig2,\n maxContentLength: defaultToConfig2,\n maxBodyLength: defaultToConfig2,\n beforeRedirect: defaultToConfig2,\n transport: defaultToConfig2,\n httpAgent: defaultToConfig2,\n httpsAgent: defaultToConfig2,\n cancelToken: defaultToConfig2,\n socketPath: defaultToConfig2,\n responseEncoding: defaultToConfig2,\n validateStatus: mergeDirectKeys,\n headers: (a, b) => mergeDeepProperties(headersToObject(a), headersToObject(b), true)\n };\n\n utils.forEach(Object.keys(Object.assign({}, config1, config2)), function computeConfigValue(prop) {\n const merge = mergeMap[prop] || mergeDeepProperties;\n const configValue = merge(config1[prop], config2[prop], prop);\n (utils.isUndefined(configValue) && merge !== mergeDirectKeys) || (config[prop] = configValue);\n });\n\n return config;\n}\n","import platform from \"../platform/index.js\";\nimport utils from \"../utils.js\";\nimport isURLSameOrigin from \"./isURLSameOrigin.js\";\nimport cookies from \"./cookies.js\";\nimport buildFullPath from \"../core/buildFullPath.js\";\nimport mergeConfig from \"../core/mergeConfig.js\";\nimport AxiosHeaders from \"../core/AxiosHeaders.js\";\nimport buildURL from \"./buildURL.js\";\n\nexport default (config) => {\n const newConfig = mergeConfig({}, config);\n\n let {data, withXSRFToken, xsrfHeaderName, xsrfCookieName, headers, auth} = newConfig;\n\n newConfig.headers = headers = AxiosHeaders.from(headers);\n\n newConfig.url = buildURL(buildFullPath(newConfig.baseURL, newConfig.url), config.params, config.paramsSerializer);\n\n // HTTP basic authentication\n if (auth) {\n headers.set('Authorization', 'Basic ' +\n btoa((auth.username || '') + ':' + (auth.password ? unescape(encodeURIComponent(auth.password)) : ''))\n );\n }\n\n let contentType;\n\n if (utils.isFormData(data)) {\n if (platform.hasStandardBrowserEnv || platform.hasStandardBrowserWebWorkerEnv) {\n headers.setContentType(undefined); // Let the browser set it\n } else if ((contentType = headers.getContentType()) !== false) {\n // fix semicolon duplication issue for ReactNative FormData implementation\n const [type, ...tokens] = contentType ? contentType.split(';').map(token => token.trim()).filter(Boolean) : [];\n headers.setContentType([type || 'multipart/form-data', ...tokens].join('; '));\n }\n }\n\n // Add xsrf header\n // This is only done if running in a standard browser environment.\n // Specifically not if we're in a web worker, or react-native.\n\n if (platform.hasStandardBrowserEnv) {\n withXSRFToken && utils.isFunction(withXSRFToken) && (withXSRFToken = withXSRFToken(newConfig));\n\n if (withXSRFToken || (withXSRFToken !== false && isURLSameOrigin(newConfig.url))) {\n // Add xsrf header\n const xsrfValue = xsrfHeaderName && xsrfCookieName && cookies.read(xsrfCookieName);\n\n if (xsrfValue) {\n headers.set(xsrfHeaderName, xsrfValue);\n }\n }\n }\n\n return newConfig;\n}\n\n","import utils from './../utils.js';\nimport settle from './../core/settle.js';\nimport transitionalDefaults from '../defaults/transitional.js';\nimport AxiosError from '../core/AxiosError.js';\nimport CanceledError from '../cancel/CanceledError.js';\nimport parseProtocol from '../helpers/parseProtocol.js';\nimport platform from '../platform/index.js';\nimport AxiosHeaders from '../core/AxiosHeaders.js';\nimport {progressEventReducer} from '../helpers/progressEventReducer.js';\nimport resolveConfig from \"../helpers/resolveConfig.js\";\n\nconst isXHRAdapterSupported = typeof XMLHttpRequest !== 'undefined';\n\nexport default isXHRAdapterSupported && function (config) {\n return new Promise(function dispatchXhrRequest(resolve, reject) {\n const _config = resolveConfig(config);\n let requestData = _config.data;\n const requestHeaders = AxiosHeaders.from(_config.headers).normalize();\n let {responseType, onUploadProgress, onDownloadProgress} = _config;\n let onCanceled;\n let uploadThrottled, downloadThrottled;\n let flushUpload, flushDownload;\n\n function done() {\n flushUpload && flushUpload(); // flush events\n flushDownload && flushDownload(); // flush events\n\n _config.cancelToken && _config.cancelToken.unsubscribe(onCanceled);\n\n _config.signal && _config.signal.removeEventListener('abort', onCanceled);\n }\n\n let request = new XMLHttpRequest();\n\n request.open(_config.method.toUpperCase(), _config.url, true);\n\n // Set the request timeout in MS\n request.timeout = _config.timeout;\n\n function onloadend() {\n if (!request) {\n return;\n }\n // Prepare the response\n const responseHeaders = AxiosHeaders.from(\n 'getAllResponseHeaders' in request && request.getAllResponseHeaders()\n );\n const responseData = !responseType || responseType === 'text' || responseType === 'json' ?\n request.responseText : request.response;\n const response = {\n data: responseData,\n status: request.status,\n statusText: request.statusText,\n headers: responseHeaders,\n config,\n request\n };\n\n settle(function _resolve(value) {\n resolve(value);\n done();\n }, function _reject(err) {\n reject(err);\n done();\n }, response);\n\n // Clean up request\n request = null;\n }\n\n if ('onloadend' in request) {\n // Use onloadend if available\n request.onloadend = onloadend;\n } else {\n // Listen for ready state to emulate onloadend\n request.onreadystatechange = function handleLoad() {\n if (!request || request.readyState !== 4) {\n return;\n }\n\n // The request errored out and we didn't get a response, this will be\n // handled by onerror instead\n // With one exception: request that using file: protocol, most browsers\n // will return status as 0 even though it's a successful request\n if (request.status === 0 && !(request.responseURL && request.responseURL.indexOf('file:') === 0)) {\n return;\n }\n // readystate handler is calling before onerror or ontimeout handlers,\n // so we should call onloadend on the next 'tick'\n setTimeout(onloadend);\n };\n }\n\n // Handle browser request cancellation (as opposed to a manual cancellation)\n request.onabort = function handleAbort() {\n if (!request) {\n return;\n }\n\n reject(new AxiosError('Request aborted', AxiosError.ECONNABORTED, config, request));\n\n // Clean up request\n request = null;\n };\n\n // Handle low level network errors\n request.onerror = function handleError() {\n // Real errors are hidden from us by the browser\n // onerror should only fire if it's a network error\n reject(new AxiosError('Network Error', AxiosError.ERR_NETWORK, config, request));\n\n // Clean up request\n request = null;\n };\n\n // Handle timeout\n request.ontimeout = function handleTimeout() {\n let timeoutErrorMessage = _config.timeout ? 'timeout of ' + _config.timeout + 'ms exceeded' : 'timeout exceeded';\n const transitional = _config.transitional || transitionalDefaults;\n if (_config.timeoutErrorMessage) {\n timeoutErrorMessage = _config.timeoutErrorMessage;\n }\n reject(new AxiosError(\n timeoutErrorMessage,\n transitional.clarifyTimeoutError ? AxiosError.ETIMEDOUT : AxiosError.ECONNABORTED,\n config,\n request));\n\n // Clean up request\n request = null;\n };\n\n // Remove Content-Type if data is undefined\n requestData === undefined && requestHeaders.setContentType(null);\n\n // Add headers to the request\n if ('setRequestHeader' in request) {\n utils.forEach(requestHeaders.toJSON(), function setRequestHeader(val, key) {\n request.setRequestHeader(key, val);\n });\n }\n\n // Add withCredentials to request if needed\n if (!utils.isUndefined(_config.withCredentials)) {\n request.withCredentials = !!_config.withCredentials;\n }\n\n // Add responseType to request if needed\n if (responseType && responseType !== 'json') {\n request.responseType = _config.responseType;\n }\n\n // Handle progress if needed\n if (onDownloadProgress) {\n ([downloadThrottled, flushDownload] = progressEventReducer(onDownloadProgress, true));\n request.addEventListener('progress', downloadThrottled);\n }\n\n // Not all browsers support upload events\n if (onUploadProgress && request.upload) {\n ([uploadThrottled, flushUpload] = progressEventReducer(onUploadProgress));\n\n request.upload.addEventListener('progress', uploadThrottled);\n\n request.upload.addEventListener('loadend', flushUpload);\n }\n\n if (_config.cancelToken || _config.signal) {\n // Handle cancellation\n // eslint-disable-next-line func-names\n onCanceled = cancel => {\n if (!request) {\n return;\n }\n reject(!cancel || cancel.type ? new CanceledError(null, config, request) : cancel);\n request.abort();\n request = null;\n };\n\n _config.cancelToken && _config.cancelToken.subscribe(onCanceled);\n if (_config.signal) {\n _config.signal.aborted ? onCanceled() : _config.signal.addEventListener('abort', onCanceled);\n }\n }\n\n const protocol = parseProtocol(_config.url);\n\n if (protocol && platform.protocols.indexOf(protocol) === -1) {\n reject(new AxiosError('Unsupported protocol ' + protocol + ':', AxiosError.ERR_BAD_REQUEST, config));\n return;\n }\n\n\n // Send the request\n request.send(requestData || null);\n });\n}\n","'use strict';\n\nexport default function parseProtocol(url) {\n const match = /^([-+\\w]{1,25})(:?\\/\\/|:)/.exec(url);\n return match && match[1] || '';\n}\n","import CanceledError from \"../cancel/CanceledError.js\";\nimport AxiosError from \"../core/AxiosError.js\";\n\nconst composeSignals = (signals, timeout) => {\n let controller = new AbortController();\n\n let aborted;\n\n const onabort = function (cancel) {\n if (!aborted) {\n aborted = true;\n unsubscribe();\n const err = cancel instanceof Error ? cancel : this.reason;\n controller.abort(err instanceof AxiosError ? err : new CanceledError(err instanceof Error ? err.message : err));\n }\n }\n\n let timer = timeout && setTimeout(() => {\n onabort(new AxiosError(`timeout ${timeout} of ms exceeded`, AxiosError.ETIMEDOUT))\n }, timeout)\n\n const unsubscribe = () => {\n if (signals) {\n timer && clearTimeout(timer);\n timer = null;\n signals.forEach(signal => {\n signal &&\n (signal.removeEventListener ? signal.removeEventListener('abort', onabort) : signal.unsubscribe(onabort));\n });\n signals = null;\n }\n }\n\n signals.forEach((signal) => signal && signal.addEventListener && signal.addEventListener('abort', onabort));\n\n const {signal} = controller;\n\n signal.unsubscribe = unsubscribe;\n\n return [signal, () => {\n timer && clearTimeout(timer);\n timer = null;\n }];\n}\n\nexport default composeSignals;\n","\nexport const streamChunk = function* (chunk, chunkSize) {\n let len = chunk.byteLength;\n\n if (!chunkSize || len < chunkSize) {\n yield chunk;\n return;\n }\n\n let pos = 0;\n let end;\n\n while (pos < len) {\n end = pos + chunkSize;\n yield chunk.slice(pos, end);\n pos = end;\n }\n}\n\nexport const readBytes = async function* (iterable, chunkSize, encode) {\n for await (const chunk of iterable) {\n yield* streamChunk(ArrayBuffer.isView(chunk) ? chunk : (await encode(String(chunk))), chunkSize);\n }\n}\n\nexport const trackStream = (stream, chunkSize, onProgress, onFinish, encode) => {\n const iterator = readBytes(stream, chunkSize, encode);\n\n let bytes = 0;\n let done;\n let _onFinish = (e) => {\n if (!done) {\n done = true;\n onFinish && onFinish(e);\n }\n }\n\n return new ReadableStream({\n async pull(controller) {\n try {\n const {done, value} = await iterator.next();\n\n if (done) {\n _onFinish();\n controller.close();\n return;\n }\n\n let len = value.byteLength;\n if (onProgress) {\n let loadedBytes = bytes += len;\n onProgress(loadedBytes);\n }\n controller.enqueue(new Uint8Array(value));\n } catch (err) {\n _onFinish(err);\n throw err;\n }\n },\n cancel(reason) {\n _onFinish(reason);\n return iterator.return();\n }\n }, {\n highWaterMark: 2\n })\n}\n","import platform from \"../platform/index.js\";\nimport utils from \"../utils.js\";\nimport AxiosError from \"../core/AxiosError.js\";\nimport composeSignals from \"../helpers/composeSignals.js\";\nimport {trackStream} from \"../helpers/trackStream.js\";\nimport AxiosHeaders from \"../core/AxiosHeaders.js\";\nimport {progressEventReducer, progressEventDecorator, asyncDecorator} from \"../helpers/progressEventReducer.js\";\nimport resolveConfig from \"../helpers/resolveConfig.js\";\nimport settle from \"../core/settle.js\";\n\nconst isFetchSupported = typeof fetch === 'function' && typeof Request === 'function' && typeof Response === 'function';\nconst isReadableStreamSupported = isFetchSupported && typeof ReadableStream === 'function';\n\n// used only inside the fetch adapter\nconst encodeText = isFetchSupported && (typeof TextEncoder === 'function' ?\n ((encoder) => (str) => encoder.encode(str))(new TextEncoder()) :\n async (str) => new Uint8Array(await new Response(str).arrayBuffer())\n);\n\nconst test = (fn, ...args) => {\n try {\n return !!fn(...args);\n } catch (e) {\n return false\n }\n}\n\nconst supportsRequestStream = isReadableStreamSupported && test(() => {\n let duplexAccessed = false;\n\n const hasContentType = new Request(platform.origin, {\n body: new ReadableStream(),\n method: 'POST',\n get duplex() {\n duplexAccessed = true;\n return 'half';\n },\n }).headers.has('Content-Type');\n\n return duplexAccessed && !hasContentType;\n});\n\nconst DEFAULT_CHUNK_SIZE = 64 * 1024;\n\nconst supportsResponseStream = isReadableStreamSupported &&\n test(() => utils.isReadableStream(new Response('').body));\n\n\nconst resolvers = {\n stream: supportsResponseStream && ((res) => res.body)\n};\n\nisFetchSupported && (((res) => {\n ['text', 'arrayBuffer', 'blob', 'formData', 'stream'].forEach(type => {\n !resolvers[type] && (resolvers[type] = utils.isFunction(res[type]) ? (res) => res[type]() :\n (_, config) => {\n throw new AxiosError(`Response type '${type}' is not supported`, AxiosError.ERR_NOT_SUPPORT, config);\n })\n });\n})(new Response));\n\nconst getBodyLength = async (body) => {\n if (body == null) {\n return 0;\n }\n\n if(utils.isBlob(body)) {\n return body.size;\n }\n\n if(utils.isSpecCompliantForm(body)) {\n return (await new Request(body).arrayBuffer()).byteLength;\n }\n\n if(utils.isArrayBufferView(body) || utils.isArrayBuffer(body)) {\n return body.byteLength;\n }\n\n if(utils.isURLSearchParams(body)) {\n body = body + '';\n }\n\n if(utils.isString(body)) {\n return (await encodeText(body)).byteLength;\n }\n}\n\nconst resolveBodyLength = async (headers, body) => {\n const length = utils.toFiniteNumber(headers.getContentLength());\n\n return length == null ? getBodyLength(body) : length;\n}\n\nexport default isFetchSupported && (async (config) => {\n let {\n url,\n method,\n data,\n signal,\n cancelToken,\n timeout,\n onDownloadProgress,\n onUploadProgress,\n responseType,\n headers,\n withCredentials = 'same-origin',\n fetchOptions\n } = resolveConfig(config);\n\n responseType = responseType ? (responseType + '').toLowerCase() : 'text';\n\n let [composedSignal, stopTimeout] = (signal || cancelToken || timeout) ?\n composeSignals([signal, cancelToken], timeout) : [];\n\n let finished, request;\n\n const onFinish = () => {\n !finished && setTimeout(() => {\n composedSignal && composedSignal.unsubscribe();\n });\n\n finished = true;\n }\n\n let requestContentLength;\n\n try {\n if (\n onUploadProgress && supportsRequestStream && method !== 'get' && method !== 'head' &&\n (requestContentLength = await resolveBodyLength(headers, data)) !== 0\n ) {\n let _request = new Request(url, {\n method: 'POST',\n body: data,\n duplex: \"half\"\n });\n\n let contentTypeHeader;\n\n if (utils.isFormData(data) && (contentTypeHeader = _request.headers.get('content-type'))) {\n headers.setContentType(contentTypeHeader)\n }\n\n if (_request.body) {\n const [onProgress, flush] = progressEventDecorator(\n requestContentLength,\n progressEventReducer(asyncDecorator(onUploadProgress))\n );\n\n data = trackStream(_request.body, DEFAULT_CHUNK_SIZE, onProgress, flush, encodeText);\n }\n }\n\n if (!utils.isString(withCredentials)) {\n withCredentials = withCredentials ? 'include' : 'omit';\n }\n\n // Cloudflare Workers throws when credentials are defined\n // see https://github.com/cloudflare/workerd/issues/902\n const isCredentialsSupported = \"credentials\" in Request.prototype; \n request = new Request(url, {\n ...fetchOptions,\n signal: composedSignal,\n method: method.toUpperCase(),\n headers: headers.normalize().toJSON(),\n body: data,\n duplex: \"half\",\n credentials: isCredentialsSupported ? withCredentials : undefined\n });\n\n let response = await fetch(request);\n\n const isStreamResponse = supportsResponseStream && (responseType === 'stream' || responseType === 'response');\n\n if (supportsResponseStream && (onDownloadProgress || isStreamResponse)) {\n const options = {};\n\n ['status', 'statusText', 'headers'].forEach(prop => {\n options[prop] = response[prop];\n });\n\n const responseContentLength = utils.toFiniteNumber(response.headers.get('content-length'));\n\n const [onProgress, flush] = onDownloadProgress && progressEventDecorator(\n responseContentLength,\n progressEventReducer(asyncDecorator(onDownloadProgress), true)\n ) || [];\n\n response = new Response(\n trackStream(response.body, DEFAULT_CHUNK_SIZE, onProgress, () => {\n flush && flush();\n isStreamResponse && onFinish();\n }, encodeText),\n options\n );\n }\n\n responseType = responseType || 'text';\n\n let responseData = await resolvers[utils.findKey(resolvers, responseType) || 'text'](response, config);\n\n !isStreamResponse && onFinish();\n\n stopTimeout && stopTimeout();\n\n return await new Promise((resolve, reject) => {\n settle(resolve, reject, {\n data: responseData,\n headers: AxiosHeaders.from(response.headers),\n status: response.status,\n statusText: response.statusText,\n config,\n request\n })\n })\n } catch (err) {\n onFinish();\n\n if (err && err.name === 'TypeError' && /fetch/i.test(err.message)) {\n throw Object.assign(\n new AxiosError('Network Error', AxiosError.ERR_NETWORK, config, request),\n {\n cause: err.cause || err\n }\n )\n }\n\n throw AxiosError.from(err, err && err.code, config, request);\n }\n});\n\n\n","import utils from '../utils.js';\nimport httpAdapter from './http.js';\nimport xhrAdapter from './xhr.js';\nimport fetchAdapter from './fetch.js';\nimport AxiosError from \"../core/AxiosError.js\";\n\nconst knownAdapters = {\n http: httpAdapter,\n xhr: xhrAdapter,\n fetch: fetchAdapter\n}\n\nutils.forEach(knownAdapters, (fn, value) => {\n if (fn) {\n try {\n Object.defineProperty(fn, 'name', {value});\n } catch (e) {\n // eslint-disable-next-line no-empty\n }\n Object.defineProperty(fn, 'adapterName', {value});\n }\n});\n\nconst renderReason = (reason) => `- ${reason}`;\n\nconst isResolvedHandle = (adapter) => utils.isFunction(adapter) || adapter === null || adapter === false;\n\nexport default {\n getAdapter: (adapters) => {\n adapters = utils.isArray(adapters) ? adapters : [adapters];\n\n const {length} = adapters;\n let nameOrAdapter;\n let adapter;\n\n const rejectedReasons = {};\n\n for (let i = 0; i < length; i++) {\n nameOrAdapter = adapters[i];\n let id;\n\n adapter = nameOrAdapter;\n\n if (!isResolvedHandle(nameOrAdapter)) {\n adapter = knownAdapters[(id = String(nameOrAdapter)).toLowerCase()];\n\n if (adapter === undefined) {\n throw new AxiosError(`Unknown adapter '${id}'`);\n }\n }\n\n if (adapter) {\n break;\n }\n\n rejectedReasons[id || '#' + i] = adapter;\n }\n\n if (!adapter) {\n\n const reasons = Object.entries(rejectedReasons)\n .map(([id, state]) => `adapter ${id} ` +\n (state === false ? 'is not supported by the environment' : 'is not available in the build')\n );\n\n let s = length ?\n (reasons.length > 1 ? 'since :\\n' + reasons.map(renderReason).join('\\n') : ' ' + renderReason(reasons[0])) :\n 'as no adapter specified';\n\n throw new AxiosError(\n `There is no suitable adapter to dispatch the request ` + s,\n 'ERR_NOT_SUPPORT'\n );\n }\n\n return adapter;\n },\n adapters: knownAdapters\n}\n","// eslint-disable-next-line strict\nexport default null;\n","'use strict';\n\nimport transformData from './transformData.js';\nimport isCancel from '../cancel/isCancel.js';\nimport defaults from '../defaults/index.js';\nimport CanceledError from '../cancel/CanceledError.js';\nimport AxiosHeaders from '../core/AxiosHeaders.js';\nimport adapters from \"../adapters/adapters.js\";\n\n/**\n * Throws a `CanceledError` if cancellation has been requested.\n *\n * @param {Object} config The config that is to be used for the request\n *\n * @returns {void}\n */\nfunction throwIfCancellationRequested(config) {\n if (config.cancelToken) {\n config.cancelToken.throwIfRequested();\n }\n\n if (config.signal && config.signal.aborted) {\n throw new CanceledError(null, config);\n }\n}\n\n/**\n * Dispatch a request to the server using the configured adapter.\n *\n * @param {object} config The config that is to be used for the request\n *\n * @returns {Promise} The Promise to be fulfilled\n */\nexport default function dispatchRequest(config) {\n throwIfCancellationRequested(config);\n\n config.headers = AxiosHeaders.from(config.headers);\n\n // Transform request data\n config.data = transformData.call(\n config,\n config.transformRequest\n );\n\n if (['post', 'put', 'patch'].indexOf(config.method) !== -1) {\n config.headers.setContentType('application/x-www-form-urlencoded', false);\n }\n\n const adapter = adapters.getAdapter(config.adapter || defaults.adapter);\n\n return adapter(config).then(function onAdapterResolution(response) {\n throwIfCancellationRequested(config);\n\n // Transform response data\n response.data = transformData.call(\n config,\n config.transformResponse,\n response\n );\n\n response.headers = AxiosHeaders.from(response.headers);\n\n return response;\n }, function onAdapterRejection(reason) {\n if (!isCancel(reason)) {\n throwIfCancellationRequested(config);\n\n // Transform response data\n if (reason && reason.response) {\n reason.response.data = transformData.call(\n config,\n config.transformResponse,\n reason.response\n );\n reason.response.headers = AxiosHeaders.from(reason.response.headers);\n }\n }\n\n return Promise.reject(reason);\n });\n}\n","export const VERSION = \"1.7.5\";","'use strict';\n\nimport {VERSION} from '../env/data.js';\nimport AxiosError from '../core/AxiosError.js';\n\nconst validators = {};\n\n// eslint-disable-next-line func-names\n['object', 'boolean', 'number', 'function', 'string', 'symbol'].forEach((type, i) => {\n validators[type] = function validator(thing) {\n return typeof thing === type || 'a' + (i < 1 ? 'n ' : ' ') + type;\n };\n});\n\nconst deprecatedWarnings = {};\n\n/**\n * Transitional option validator\n *\n * @param {function|boolean?} validator - set to false if the transitional option has been removed\n * @param {string?} version - deprecated version / removed since version\n * @param {string?} message - some message with additional info\n *\n * @returns {function}\n */\nvalidators.transitional = function transitional(validator, version, message) {\n function formatMessage(opt, desc) {\n return '[Axios v' + VERSION + '] Transitional option \\'' + opt + '\\'' + desc + (message ? '. ' + message : '');\n }\n\n // eslint-disable-next-line func-names\n return (value, opt, opts) => {\n if (validator === false) {\n throw new AxiosError(\n formatMessage(opt, ' has been removed' + (version ? ' in ' + version : '')),\n AxiosError.ERR_DEPRECATED\n );\n }\n\n if (version && !deprecatedWarnings[opt]) {\n deprecatedWarnings[opt] = true;\n // eslint-disable-next-line no-console\n console.warn(\n formatMessage(\n opt,\n ' has been deprecated since v' + version + ' and will be removed in the near future'\n )\n );\n }\n\n return validator ? validator(value, opt, opts) : true;\n };\n};\n\n/**\n * Assert object's properties type\n *\n * @param {object} options\n * @param {object} schema\n * @param {boolean?} allowUnknown\n *\n * @returns {object}\n */\n\nfunction assertOptions(options, schema, allowUnknown) {\n if (typeof options !== 'object') {\n throw new AxiosError('options must be an object', AxiosError.ERR_BAD_OPTION_VALUE);\n }\n const keys = Object.keys(options);\n let i = keys.length;\n while (i-- > 0) {\n const opt = keys[i];\n const validator = schema[opt];\n if (validator) {\n const value = options[opt];\n const result = value === undefined || validator(value, opt, options);\n if (result !== true) {\n throw new AxiosError('option ' + opt + ' must be ' + result, AxiosError.ERR_BAD_OPTION_VALUE);\n }\n continue;\n }\n if (allowUnknown !== true) {\n throw new AxiosError('Unknown option ' + opt, AxiosError.ERR_BAD_OPTION);\n }\n }\n}\n\nexport default {\n assertOptions,\n validators\n};\n","'use strict';\n\nimport utils from './../utils.js';\nimport buildURL from '../helpers/buildURL.js';\nimport InterceptorManager from './InterceptorManager.js';\nimport dispatchRequest from './dispatchRequest.js';\nimport mergeConfig from './mergeConfig.js';\nimport buildFullPath from './buildFullPath.js';\nimport validator from '../helpers/validator.js';\nimport AxiosHeaders from './AxiosHeaders.js';\n\nconst validators = validator.validators;\n\n/**\n * Create a new instance of Axios\n *\n * @param {Object} instanceConfig The default config for the instance\n *\n * @return {Axios} A new instance of Axios\n */\nclass Axios {\n constructor(instanceConfig) {\n this.defaults = instanceConfig;\n this.interceptors = {\n request: new InterceptorManager(),\n response: new InterceptorManager()\n };\n }\n\n /**\n * Dispatch a request\n *\n * @param {String|Object} configOrUrl The config specific for this request (merged with this.defaults)\n * @param {?Object} config\n *\n * @returns {Promise} The Promise to be fulfilled\n */\n async request(configOrUrl, config) {\n try {\n return await this._request(configOrUrl, config);\n } catch (err) {\n if (err instanceof Error) {\n let dummy;\n\n Error.captureStackTrace ? Error.captureStackTrace(dummy = {}) : (dummy = new Error());\n\n // slice off the Error: ... line\n const stack = dummy.stack ? dummy.stack.replace(/^.+\\n/, '') : '';\n try {\n if (!err.stack) {\n err.stack = stack;\n // match without the 2 top stack lines\n } else if (stack && !String(err.stack).endsWith(stack.replace(/^.+\\n.+\\n/, ''))) {\n err.stack += '\\n' + stack\n }\n } catch (e) {\n // ignore the case where \"stack\" is an un-writable property\n }\n }\n\n throw err;\n }\n }\n\n _request(configOrUrl, config) {\n /*eslint no-param-reassign:0*/\n // Allow for axios('example/url'[, config]) a la fetch API\n if (typeof configOrUrl === 'string') {\n config = config || {};\n config.url = configOrUrl;\n } else {\n config = configOrUrl || {};\n }\n\n config = mergeConfig(this.defaults, config);\n\n const {transitional, paramsSerializer, headers} = config;\n\n if (transitional !== undefined) {\n validator.assertOptions(transitional, {\n silentJSONParsing: validators.transitional(validators.boolean),\n forcedJSONParsing: validators.transitional(validators.boolean),\n clarifyTimeoutError: validators.transitional(validators.boolean)\n }, false);\n }\n\n if (paramsSerializer != null) {\n if (utils.isFunction(paramsSerializer)) {\n config.paramsSerializer = {\n serialize: paramsSerializer\n }\n } else {\n validator.assertOptions(paramsSerializer, {\n encode: validators.function,\n serialize: validators.function\n }, true);\n }\n }\n\n // Set config.method\n config.method = (config.method || this.defaults.method || 'get').toLowerCase();\n\n // Flatten headers\n let contextHeaders = headers && utils.merge(\n headers.common,\n headers[config.method]\n );\n\n headers && utils.forEach(\n ['delete', 'get', 'head', 'post', 'put', 'patch', 'common'],\n (method) => {\n delete headers[method];\n }\n );\n\n config.headers = AxiosHeaders.concat(contextHeaders, headers);\n\n // filter out skipped interceptors\n const requestInterceptorChain = [];\n let synchronousRequestInterceptors = true;\n this.interceptors.request.forEach(function unshiftRequestInterceptors(interceptor) {\n if (typeof interceptor.runWhen === 'function' && interceptor.runWhen(config) === false) {\n return;\n }\n\n synchronousRequestInterceptors = synchronousRequestInterceptors && interceptor.synchronous;\n\n requestInterceptorChain.unshift(interceptor.fulfilled, interceptor.rejected);\n });\n\n const responseInterceptorChain = [];\n this.interceptors.response.forEach(function pushResponseInterceptors(interceptor) {\n responseInterceptorChain.push(interceptor.fulfilled, interceptor.rejected);\n });\n\n let promise;\n let i = 0;\n let len;\n\n if (!synchronousRequestInterceptors) {\n const chain = [dispatchRequest.bind(this), undefined];\n chain.unshift.apply(chain, requestInterceptorChain);\n chain.push.apply(chain, responseInterceptorChain);\n len = chain.length;\n\n promise = Promise.resolve(config);\n\n while (i < len) {\n promise = promise.then(chain[i++], chain[i++]);\n }\n\n return promise;\n }\n\n len = requestInterceptorChain.length;\n\n let newConfig = config;\n\n i = 0;\n\n while (i < len) {\n const onFulfilled = requestInterceptorChain[i++];\n const onRejected = requestInterceptorChain[i++];\n try {\n newConfig = onFulfilled(newConfig);\n } catch (error) {\n onRejected.call(this, error);\n break;\n }\n }\n\n try {\n promise = dispatchRequest.call(this, newConfig);\n } catch (error) {\n return Promise.reject(error);\n }\n\n i = 0;\n len = responseInterceptorChain.length;\n\n while (i < len) {\n promise = promise.then(responseInterceptorChain[i++], responseInterceptorChain[i++]);\n }\n\n return promise;\n }\n\n getUri(config) {\n config = mergeConfig(this.defaults, config);\n const fullPath = buildFullPath(config.baseURL, config.url);\n return buildURL(fullPath, config.params, config.paramsSerializer);\n }\n}\n\n// Provide aliases for supported request methods\nutils.forEach(['delete', 'get', 'head', 'options'], function forEachMethodNoData(method) {\n /*eslint func-names:0*/\n Axios.prototype[method] = function(url, config) {\n return this.request(mergeConfig(config || {}, {\n method,\n url,\n data: (config || {}).data\n }));\n };\n});\n\nutils.forEach(['post', 'put', 'patch'], function forEachMethodWithData(method) {\n /*eslint func-names:0*/\n\n function generateHTTPMethod(isForm) {\n return function httpMethod(url, data, config) {\n return this.request(mergeConfig(config || {}, {\n method,\n headers: isForm ? {\n 'Content-Type': 'multipart/form-data'\n } : {},\n url,\n data\n }));\n };\n }\n\n Axios.prototype[method] = generateHTTPMethod();\n\n Axios.prototype[method + 'Form'] = generateHTTPMethod(true);\n});\n\nexport default Axios;\n","'use strict';\n\nimport CanceledError from './CanceledError.js';\n\n/**\n * A `CancelToken` is an object that can be used to request cancellation of an operation.\n *\n * @param {Function} executor The executor function.\n *\n * @returns {CancelToken}\n */\nclass CancelToken {\n constructor(executor) {\n if (typeof executor !== 'function') {\n throw new TypeError('executor must be a function.');\n }\n\n let resolvePromise;\n\n this.promise = new Promise(function promiseExecutor(resolve) {\n resolvePromise = resolve;\n });\n\n const token = this;\n\n // eslint-disable-next-line func-names\n this.promise.then(cancel => {\n if (!token._listeners) return;\n\n let i = token._listeners.length;\n\n while (i-- > 0) {\n token._listeners[i](cancel);\n }\n token._listeners = null;\n });\n\n // eslint-disable-next-line func-names\n this.promise.then = onfulfilled => {\n let _resolve;\n // eslint-disable-next-line func-names\n const promise = new Promise(resolve => {\n token.subscribe(resolve);\n _resolve = resolve;\n }).then(onfulfilled);\n\n promise.cancel = function reject() {\n token.unsubscribe(_resolve);\n };\n\n return promise;\n };\n\n executor(function cancel(message, config, request) {\n if (token.reason) {\n // Cancellation has already been requested\n return;\n }\n\n token.reason = new CanceledError(message, config, request);\n resolvePromise(token.reason);\n });\n }\n\n /**\n * Throws a `CanceledError` if cancellation has been requested.\n */\n throwIfRequested() {\n if (this.reason) {\n throw this.reason;\n }\n }\n\n /**\n * Subscribe to the cancel signal\n */\n\n subscribe(listener) {\n if (this.reason) {\n listener(this.reason);\n return;\n }\n\n if (this._listeners) {\n this._listeners.push(listener);\n } else {\n this._listeners = [listener];\n }\n }\n\n /**\n * Unsubscribe from the cancel signal\n */\n\n unsubscribe(listener) {\n if (!this._listeners) {\n return;\n }\n const index = this._listeners.indexOf(listener);\n if (index !== -1) {\n this._listeners.splice(index, 1);\n }\n }\n\n /**\n * Returns an object that contains a new `CancelToken` and a function that, when called,\n * cancels the `CancelToken`.\n */\n static source() {\n let cancel;\n const token = new CancelToken(function executor(c) {\n cancel = c;\n });\n return {\n token,\n cancel\n };\n }\n}\n\nexport default CancelToken;\n","const HttpStatusCode = {\n Continue: 100,\n SwitchingProtocols: 101,\n Processing: 102,\n EarlyHints: 103,\n Ok: 200,\n Created: 201,\n Accepted: 202,\n NonAuthoritativeInformation: 203,\n NoContent: 204,\n ResetContent: 205,\n PartialContent: 206,\n MultiStatus: 207,\n AlreadyReported: 208,\n ImUsed: 226,\n MultipleChoices: 300,\n MovedPermanently: 301,\n Found: 302,\n SeeOther: 303,\n NotModified: 304,\n UseProxy: 305,\n Unused: 306,\n TemporaryRedirect: 307,\n PermanentRedirect: 308,\n BadRequest: 400,\n Unauthorized: 401,\n PaymentRequired: 402,\n Forbidden: 403,\n NotFound: 404,\n MethodNotAllowed: 405,\n NotAcceptable: 406,\n ProxyAuthenticationRequired: 407,\n RequestTimeout: 408,\n Conflict: 409,\n Gone: 410,\n LengthRequired: 411,\n PreconditionFailed: 412,\n PayloadTooLarge: 413,\n UriTooLong: 414,\n UnsupportedMediaType: 415,\n RangeNotSatisfiable: 416,\n ExpectationFailed: 417,\n ImATeapot: 418,\n MisdirectedRequest: 421,\n UnprocessableEntity: 422,\n Locked: 423,\n FailedDependency: 424,\n TooEarly: 425,\n UpgradeRequired: 426,\n PreconditionRequired: 428,\n TooManyRequests: 429,\n RequestHeaderFieldsTooLarge: 431,\n UnavailableForLegalReasons: 451,\n InternalServerError: 500,\n NotImplemented: 501,\n BadGateway: 502,\n ServiceUnavailable: 503,\n GatewayTimeout: 504,\n HttpVersionNotSupported: 505,\n VariantAlsoNegotiates: 506,\n InsufficientStorage: 507,\n LoopDetected: 508,\n NotExtended: 510,\n NetworkAuthenticationRequired: 511,\n};\n\nObject.entries(HttpStatusCode).forEach(([key, value]) => {\n HttpStatusCode[value] = key;\n});\n\nexport default HttpStatusCode;\n","'use strict';\n\nimport utils from './utils.js';\nimport bind from './helpers/bind.js';\nimport Axios from './core/Axios.js';\nimport mergeConfig from './core/mergeConfig.js';\nimport defaults from './defaults/index.js';\nimport formDataToJSON from './helpers/formDataToJSON.js';\nimport CanceledError from './cancel/CanceledError.js';\nimport CancelToken from './cancel/CancelToken.js';\nimport isCancel from './cancel/isCancel.js';\nimport {VERSION} from './env/data.js';\nimport toFormData from './helpers/toFormData.js';\nimport AxiosError from './core/AxiosError.js';\nimport spread from './helpers/spread.js';\nimport isAxiosError from './helpers/isAxiosError.js';\nimport AxiosHeaders from \"./core/AxiosHeaders.js\";\nimport adapters from './adapters/adapters.js';\nimport HttpStatusCode from './helpers/HttpStatusCode.js';\n\n/**\n * Create an instance of Axios\n *\n * @param {Object} defaultConfig The default config for the instance\n *\n * @returns {Axios} A new instance of Axios\n */\nfunction createInstance(defaultConfig) {\n const context = new Axios(defaultConfig);\n const instance = bind(Axios.prototype.request, context);\n\n // Copy axios.prototype to instance\n utils.extend(instance, Axios.prototype, context, {allOwnKeys: true});\n\n // Copy context to instance\n utils.extend(instance, context, null, {allOwnKeys: true});\n\n // Factory for creating new instances\n instance.create = function create(instanceConfig) {\n return createInstance(mergeConfig(defaultConfig, instanceConfig));\n };\n\n return instance;\n}\n\n// Create the default instance to be exported\nconst axios = createInstance(defaults);\n\n// Expose Axios class to allow class inheritance\naxios.Axios = Axios;\n\n// Expose Cancel & CancelToken\naxios.CanceledError = CanceledError;\naxios.CancelToken = CancelToken;\naxios.isCancel = isCancel;\naxios.VERSION = VERSION;\naxios.toFormData = toFormData;\n\n// Expose AxiosError class\naxios.AxiosError = AxiosError;\n\n// alias for CanceledError for backward compatibility\naxios.Cancel = axios.CanceledError;\n\n// Expose all/spread\naxios.all = function all(promises) {\n return Promise.all(promises);\n};\n\naxios.spread = spread;\n\n// Expose isAxiosError\naxios.isAxiosError = isAxiosError;\n\n// Expose mergeConfig\naxios.mergeConfig = mergeConfig;\n\naxios.AxiosHeaders = AxiosHeaders;\n\naxios.formToJSON = thing => formDataToJSON(utils.isHTMLForm(thing) ? new FormData(thing) : thing);\n\naxios.getAdapter = adapters.getAdapter;\n\naxios.HttpStatusCode = HttpStatusCode;\n\naxios.default = axios;\n\n// this module should only have a default export\nexport default axios\n","'use strict';\n\n/**\n * Syntactic sugar for invoking a function and expanding an array for arguments.\n *\n * Common use case would be to use `Function.prototype.apply`.\n *\n * ```js\n * function f(x, y, z) {}\n * var args = [1, 2, 3];\n * f.apply(null, args);\n * ```\n *\n * With `spread` this example can be re-written.\n *\n * ```js\n * spread(function(x, y, z) {})([1, 2, 3]);\n * ```\n *\n * @param {Function} callback\n *\n * @returns {Function}\n */\nexport default function spread(callback) {\n return function wrap(arr) {\n return callback.apply(null, arr);\n };\n}\n","'use strict';\n\nimport utils from './../utils.js';\n\n/**\n * Determines whether the payload is an error thrown by Axios\n *\n * @param {*} payload The value to test\n *\n * @returns {boolean} True if the payload is an error thrown by Axios, otherwise false\n */\nexport default function isAxiosError(payload) {\n return utils.isObject(payload) && (payload.isAxiosError === true);\n}\n","import TypesenseError from \"./TypesenseError\";\n\nexport default class RequestMalformed extends TypesenseError {}\n","import TypesenseError from \"./TypesenseError\";\n\nexport default class RequestUnauthorized extends TypesenseError {}\n","import TypesenseError from \"./TypesenseError\";\n\nexport default class ObjectNotFound extends TypesenseError {}\n","import TypesenseError from \"./TypesenseError\";\n\nexport default class ObjectAlreadyExists extends TypesenseError {}\n","import TypesenseError from \"./TypesenseError\";\n\nexport default class ObjectUnprocessable extends TypesenseError {}\n","import TypesenseError from \"./TypesenseError\";\n\nexport default class ServerError extends TypesenseError {}\n","import TypesenseError from \"./TypesenseError\";\n\nexport default class HTTPError extends TypesenseError {}\n","import type {\n AxiosAdapter,\n AxiosRequestConfig,\n AxiosResponse,\n Method,\n} from \"axios\";\nimport axios from \"axios\";\nimport { Agent as HTTPAgent } from \"http\";\nimport { Agent as HTTPSAgent } from \"https\";\nimport { Logger } from \"loglevel\";\nimport Configuration, { NodeConfiguration } from \"./Configuration\";\nimport {\n HTTPError,\n ObjectAlreadyExists,\n ObjectNotFound,\n ObjectUnprocessable,\n RequestMalformed,\n RequestUnauthorized,\n ServerError,\n} from \"./Errors\";\nimport TypesenseError from \"./Errors/TypesenseError\";\n\nconst APIKEYHEADERNAME = \"X-TYPESENSE-API-KEY\";\nconst HEALTHY = true;\nconst UNHEALTHY = false;\n\ninterface Node extends NodeConfiguration {\n isHealthy: boolean;\n index: string | number;\n}\n\nconst isNodeJSEnvironment =\n typeof process !== \"undefined\" &&\n process.versions != null &&\n process.versions.node != null;\n\nexport default class ApiCall {\n private readonly apiKey: string;\n private readonly nodes: Node[];\n private readonly nearestNode: Node;\n private readonly connectionTimeoutSeconds: number;\n private readonly healthcheckIntervalSeconds: number;\n private readonly retryIntervalSeconds: number;\n private readonly sendApiKeyAsQueryParam?: boolean;\n private readonly numRetriesPerRequest: number;\n private readonly additionalUserHeaders?: Record;\n\n private readonly logger: Logger;\n private currentNodeIndex: number;\n\n constructor(private configuration: Configuration) {\n this.apiKey = this.configuration.apiKey;\n this.nodes =\n this.configuration.nodes == null\n ? this.configuration.nodes\n : JSON.parse(JSON.stringify(this.configuration.nodes)); // Make a copy, since we'll be adding additional metadata to the nodes\n this.nearestNode =\n this.configuration.nearestNode == null\n ? this.configuration.nearestNode\n : JSON.parse(JSON.stringify(this.configuration.nearestNode));\n this.connectionTimeoutSeconds = this.configuration.connectionTimeoutSeconds;\n this.healthcheckIntervalSeconds =\n this.configuration.healthcheckIntervalSeconds;\n this.numRetriesPerRequest = this.configuration.numRetries;\n this.retryIntervalSeconds = this.configuration.retryIntervalSeconds;\n this.sendApiKeyAsQueryParam = this.configuration.sendApiKeyAsQueryParam;\n this.additionalUserHeaders = this.configuration.additionalHeaders;\n\n this.logger = this.configuration.logger;\n\n this.initializeMetadataForNodes();\n this.currentNodeIndex = -1;\n }\n\n async get(\n endpoint: string,\n queryParameters: any = {},\n {\n abortSignal = null,\n responseType = undefined,\n }: {\n abortSignal?: any;\n responseType?: AxiosRequestConfig[\"responseType\"] | undefined;\n } = {},\n ): Promise {\n return this.performRequest(\"get\", endpoint, {\n queryParameters,\n abortSignal,\n responseType,\n });\n }\n\n async delete(endpoint: string, queryParameters: any = {}): Promise {\n return this.performRequest(\"delete\", endpoint, { queryParameters });\n }\n\n async post(\n endpoint: string,\n bodyParameters: any = {},\n queryParameters: any = {},\n additionalHeaders: any = {},\n ): Promise {\n return this.performRequest(\"post\", endpoint, {\n queryParameters,\n bodyParameters,\n additionalHeaders,\n });\n }\n\n async put(\n endpoint: string,\n bodyParameters: any = {},\n queryParameters: any = {},\n ): Promise {\n return this.performRequest(\"put\", endpoint, {\n queryParameters,\n bodyParameters,\n });\n }\n\n async patch(\n endpoint: string,\n bodyParameters: any = {},\n queryParameters: any = {},\n ): Promise {\n return this.performRequest(\"patch\", endpoint, {\n queryParameters,\n bodyParameters,\n });\n }\n\n private getAdapter(): AxiosAdapter | undefined {\n if (!this.configuration.axiosAdapter) return undefined;\n\n if (typeof this.configuration.axiosAdapter === \"function\")\n return this.configuration.axiosAdapter;\n\n const isCloudflareWorkers =\n typeof navigator !== \"undefined\" &&\n navigator.userAgent === \"Cloudflare-Workers\";\n\n return isCloudflareWorkers\n ? axios.getAdapter(this.configuration.axiosAdapter).bind(globalThis)\n : axios.getAdapter(this.configuration.axiosAdapter);\n }\n\n async performRequest(\n requestType: Method,\n endpoint: string,\n {\n queryParameters = null,\n bodyParameters = null,\n additionalHeaders = {},\n abortSignal = null,\n responseType = undefined,\n skipConnectionTimeout = false,\n enableKeepAlive = undefined,\n }: {\n queryParameters?: any;\n bodyParameters?: any;\n additionalHeaders?: any;\n abortSignal?: any;\n responseType?: AxiosRequestConfig[\"responseType\"] | undefined;\n skipConnectionTimeout?: boolean;\n enableKeepAlive?: boolean | undefined;\n },\n ): Promise {\n this.configuration.validate();\n\n const requestNumber = Date.now();\n let lastException;\n let wasAborted = false;\n this.logger.debug(\n `Request #${requestNumber}: Performing ${requestType.toUpperCase()} request: ${endpoint}`,\n );\n for (\n let numTries = 1;\n numTries <= this.numRetriesPerRequest + 1;\n numTries++\n ) {\n const node = this.getNextNode(requestNumber);\n this.logger.debug(\n `Request #${requestNumber}: Attempting ${requestType.toUpperCase()} request Try #${numTries} to Node ${\n node.index\n }`,\n );\n\n if (abortSignal && abortSignal.aborted) {\n return Promise.reject(new Error(\"Request aborted by caller.\"));\n }\n\n let abortListener: ((event: Event) => void) | undefined;\n\n try {\n const requestOptions: AxiosRequestConfig = {\n adapter: this.getAdapter(),\n method: requestType,\n url: this.uriFor(endpoint, node),\n headers: Object.assign(\n {},\n this.defaultHeaders(),\n additionalHeaders,\n this.additionalUserHeaders,\n ),\n maxContentLength: Infinity,\n maxBodyLength: Infinity,\n responseType,\n validateStatus: (status) => {\n /* Override default validateStatus, which only considers 2xx a success.\n In our case, if the server returns any HTTP code, we will handle it below.\n We do this to be able to raise custom errors based on response code.\n */\n return status > 0;\n },\n transformResponse: [\n (data, headers) => {\n let transformedData = data;\n if (\n headers !== undefined &&\n typeof data === \"string\" &&\n headers[\"content-type\"] &&\n headers[\"content-type\"].startsWith(\"application/json\")\n ) {\n transformedData = JSON.parse(data);\n }\n return transformedData;\n },\n ],\n };\n\n if (skipConnectionTimeout !== true) {\n requestOptions.timeout = this.connectionTimeoutSeconds * 1000;\n }\n\n if (queryParameters && Object.keys(queryParameters).length !== 0) {\n requestOptions.params = queryParameters;\n }\n\n if (this.sendApiKeyAsQueryParam) {\n requestOptions.params = requestOptions.params || {};\n requestOptions.params[\"x-typesense-api-key\"] = this.apiKey;\n }\n\n if (this.configuration.httpAgent) {\n this.logger.debug(\n `Request #${requestNumber}: Using custom httpAgent`,\n );\n requestOptions.httpAgent = this.configuration.httpAgent;\n } else if (enableKeepAlive === true) {\n if (!isNodeJSEnvironment) {\n this.logger.warn(\n `Request #${requestNumber}: Cannot use custom httpAgent in a browser environment to enable keepAlive`,\n );\n } else {\n this.logger.debug(`Request #${requestNumber}: Enabling KeepAlive`);\n requestOptions.httpAgent = new HTTPAgent({ keepAlive: true });\n }\n }\n\n if (this.configuration.httpsAgent) {\n this.logger.debug(\n `Request #${requestNumber}: Using custom httpsAgent`,\n );\n requestOptions.httpsAgent = this.configuration.httpsAgent;\n } else if (enableKeepAlive === true) {\n if (!isNodeJSEnvironment) {\n this.logger.warn(\n `Request #${requestNumber}: Cannot use custom httpAgent in a browser environment to enable keepAlive`,\n );\n } else {\n this.logger.debug(`Request #${requestNumber}: Enabling keepAlive`);\n requestOptions.httpsAgent = new HTTPSAgent({ keepAlive: true });\n }\n }\n\n if (this.configuration.paramsSerializer) {\n this.logger.debug(\n `Request #${requestNumber}: Using custom paramsSerializer`,\n );\n requestOptions.paramsSerializer = this.configuration.paramsSerializer;\n }\n\n if (\n bodyParameters &&\n ((typeof bodyParameters === \"string\" &&\n bodyParameters.length !== 0) ||\n (typeof bodyParameters === \"object\" &&\n Object.keys(bodyParameters).length !== 0))\n ) {\n requestOptions.data = bodyParameters;\n }\n\n // Translate from user-provided AbortController to the Axios request cancel mechanism.\n if (abortSignal) {\n const cancelToken = axios.CancelToken;\n const source = cancelToken.source();\n abortListener = () => {\n wasAborted = true;\n source.cancel();\n };\n abortSignal.addEventListener(\"abort\", abortListener);\n requestOptions.cancelToken = source.token;\n }\n\n const response = await axios(requestOptions);\n if (response.status >= 1 && response.status <= 499) {\n // Treat any status code > 0 and < 500 to be an indication that node is healthy\n // We exclude 0 since some clients return 0 when request fails\n this.setNodeHealthcheck(node, HEALTHY);\n }\n this.logger.debug(\n `Request #${requestNumber}: Request to Node ${node.index} was made. Response Code was ${response.status}.`,\n );\n\n if (response.status >= 200 && response.status < 300) {\n // If response is 2xx return a resolved promise\n return Promise.resolve(response.data);\n } else if (response.status < 500) {\n // Next, if response is anything but 5xx, don't retry, return a custom error\n return Promise.reject(\n this.customErrorForResponse(\n response,\n response.data?.message,\n requestOptions.data,\n ),\n );\n } else {\n // Retry all other HTTP errors (HTTPStatus > 500)\n // This will get caught by the catch block below\n throw this.customErrorForResponse(\n response,\n response.data?.message,\n requestOptions.data,\n );\n }\n } catch (error: any) {\n // This block handles retries for HTTPStatus > 500 and network layer issues like connection timeouts\n if (!wasAborted) {\n this.setNodeHealthcheck(node, UNHEALTHY);\n }\n lastException = error;\n this.logger.warn(\n `Request #${requestNumber}: Request to Node ${\n node.index\n } failed due to \"${error?.code ?? \"\"} ${error.message}${\n error.response == null\n ? \"\"\n : \" - \" + JSON.stringify(error.response?.data)\n }\"`,\n );\n // this.logger.debug(error.stack)\n if (wasAborted) {\n return Promise.reject(new Error(\"Request aborted by caller.\"));\n }\n if (numTries < this.numRetriesPerRequest + 1) {\n this.logger.warn(\n `Request #${requestNumber}: Sleeping for ${this.retryIntervalSeconds}s and then retrying request...`,\n );\n }\n await this.timer(this.retryIntervalSeconds);\n } finally {\n if (abortSignal && abortListener) {\n abortSignal.removeEventListener(\"abort\", abortListener);\n }\n }\n }\n this.logger.debug(\n `Request #${requestNumber}: No retries left. Raising last error`,\n );\n return Promise.reject(lastException);\n }\n\n // Attempts to find the next healthy node, looping through the list of nodes once.\n // But if no healthy nodes are found, it will just return the next node, even if it's unhealthy\n // so we can try the request for good measure, in case that node has become healthy since\n getNextNode(requestNumber = 0): Node {\n // Check if nearestNode is set and is healthy, if so return it\n if (this.nearestNode != null) {\n this.logger.debug(\n `Request #${requestNumber}: Nodes Health: Node ${\n this.nearestNode.index\n } is ${this.nearestNode.isHealthy === true ? \"Healthy\" : \"Unhealthy\"}`,\n );\n if (\n this.nearestNode.isHealthy === true ||\n this.nodeDueForHealthcheck(this.nearestNode, requestNumber)\n ) {\n this.logger.debug(\n `Request #${requestNumber}: Updated current node to Node ${this.nearestNode.index}`,\n );\n return this.nearestNode;\n }\n this.logger.debug(\n `Request #${requestNumber}: Falling back to individual nodes`,\n );\n }\n\n // Fallback to nodes as usual\n this.logger.debug(\n `Request #${requestNumber}: Nodes Health: ${this.nodes\n .map(\n (node) =>\n `Node ${node.index} is ${\n node.isHealthy === true ? \"Healthy\" : \"Unhealthy\"\n }`,\n )\n .join(\" || \")}`,\n );\n let candidateNode: Node = this.nodes[0];\n for (let i = 0; i <= this.nodes.length; i++) {\n this.currentNodeIndex = (this.currentNodeIndex + 1) % this.nodes.length;\n candidateNode = this.nodes[this.currentNodeIndex];\n if (\n candidateNode.isHealthy === true ||\n this.nodeDueForHealthcheck(candidateNode, requestNumber)\n ) {\n this.logger.debug(\n `Request #${requestNumber}: Updated current node to Node ${candidateNode.index}`,\n );\n return candidateNode;\n }\n }\n\n // None of the nodes are marked healthy, but some of them could have become healthy since last health check.\n // So we will just return the next node.\n this.logger.debug(\n `Request #${requestNumber}: No healthy nodes were found. Returning the next node, Node ${candidateNode.index}`,\n );\n return candidateNode;\n }\n\n nodeDueForHealthcheck(node, requestNumber = 0): boolean {\n const isDueForHealthcheck =\n Date.now() - node.lastAccessTimestamp >\n this.healthcheckIntervalSeconds * 1000;\n if (isDueForHealthcheck) {\n this.logger.debug(\n `Request #${requestNumber}: Node ${node.index} has exceeded healtcheckIntervalSeconds of ${this.healthcheckIntervalSeconds}. Adding it back into rotation.`,\n );\n }\n return isDueForHealthcheck;\n }\n\n initializeMetadataForNodes(): void {\n if (this.nearestNode != null) {\n this.nearestNode.index = \"nearestNode\";\n this.setNodeHealthcheck(this.nearestNode, HEALTHY);\n }\n\n this.nodes.forEach((node, i) => {\n node.index = i;\n this.setNodeHealthcheck(node, HEALTHY);\n });\n }\n\n setNodeHealthcheck(node, isHealthy): void {\n node.isHealthy = isHealthy;\n node.lastAccessTimestamp = Date.now();\n }\n\n uriFor(endpoint: string, node): string {\n if (node.url != null) {\n return `${node.url}${endpoint}`;\n }\n return `${node.protocol}://${node.host}:${node.port}${node.path}${endpoint}`;\n }\n\n defaultHeaders(): any {\n const defaultHeaders = {};\n if (!this.sendApiKeyAsQueryParam) {\n defaultHeaders[APIKEYHEADERNAME] = this.apiKey;\n }\n defaultHeaders[\"Content-Type\"] = \"application/json\";\n return defaultHeaders;\n }\n\n async timer(seconds): Promise {\n return new Promise((resolve) => setTimeout(resolve, seconds * 1000));\n }\n\n customErrorForResponse(\n response: AxiosResponse,\n messageFromServer: string,\n httpBody?: string,\n ): TypesenseError {\n let errorMessage = `Request failed with HTTP code ${response.status}`;\n if (\n typeof messageFromServer === \"string\" &&\n messageFromServer.trim() !== \"\"\n ) {\n errorMessage += ` | Server said: ${messageFromServer}`;\n }\n\n let error = new TypesenseError(errorMessage, httpBody, response.status);\n\n if (response.status === 400) {\n error = new RequestMalformed(errorMessage);\n } else if (response.status === 401) {\n error = new RequestUnauthorized(errorMessage);\n } else if (response.status === 404) {\n error = new ObjectNotFound(errorMessage);\n } else if (response.status === 409) {\n error = new ObjectAlreadyExists(errorMessage);\n } else if (response.status === 422) {\n error = new ObjectUnprocessable(errorMessage);\n } else if (response.status >= 500 && response.status <= 599) {\n error = new ServerError(errorMessage);\n } else {\n error = new HTTPError(errorMessage);\n }\n\n return error;\n }\n}\n","import ApiCall from \"./ApiCall\";\nimport type { CollectionFieldSchema, CollectionSchema } from \"./Collection\";\n\nexport interface BaseCollectionCreateSchema {\n name: string;\n default_sorting_field?: string;\n symbols_to_index?: string[];\n token_separators?: string[];\n enable_nested_fields?: boolean;\n metadata?: object;\n voice_query_model?: {\n model_name?: string;\n };\n}\n\ninterface CollectionCreateSchemaWithSrc\n extends Pick {\n fields?: CollectionFieldSchema[];\n}\n\ninterface CollectionCreateSchemaWithoutSrc extends BaseCollectionCreateSchema {\n fields: CollectionFieldSchema[];\n}\n\n/**\n * Defines the schema for creating a collection in Typesense.\n *\n * If the `src_name` property in `Options` is a string, the `fields` prop is optional, and only used for embedding fields.\n * Otherwise, `fields` will be required.\n */\nexport type CollectionCreateSchema<\n Options extends CollectionCreateOptions = CollectionCreateOptions,\n> = Options[\"src_name\"] extends string\n ? CollectionCreateSchemaWithSrc\n : CollectionCreateSchemaWithoutSrc;\n\nexport interface CollectionCreateOptions {\n src_name?: string;\n}\n\nexport interface CollectionsRetrieveOptions {\n exclude_fields?: string;\n}\n\nconst RESOURCEPATH = \"/collections\";\n\nexport default class Collections {\n constructor(private apiCall: ApiCall) {}\n\n async create(\n schema: CollectionCreateSchema,\n options?: Options,\n ): Promise {\n return this.apiCall.post(RESOURCEPATH, schema, options);\n }\n\n async retrieve(\n options: CollectionsRetrieveOptions = {},\n ): Promise {\n return this.apiCall.get(RESOURCEPATH, options);\n }\n\n static get RESOURCEPATH() {\n return RESOURCEPATH;\n }\n}\n","import TypesenseError from \"./TypesenseError\";\nimport type { DocumentImportParameters, ImportResponse } from \"../Documents\";\nimport { ReadStream } from \"node:fs\";\n\ninterface ImportErrorPayload {\n documentsInJSONLFormat: string | ReadStream;\n options: DocumentImportParameters;\n failedItems: ImportResponse[];\n successCount: number;\n}\n\nexport default class ImportError extends TypesenseError {\n payload: ImportErrorPayload;\n importResults: ImportResponse[];\n constructor(\n message: string,\n importResults: ImportResponse[],\n payload: ImportErrorPayload,\n ) {\n super(message);\n this.importResults = importResults;\n this.payload = payload;\n }\n}\n","export default function _arrayLikeToArray(arr, len) {\n if (len == null || len > arr.length) len = arr.length;\n for (var i = 0, arr2 = new Array(len); i < len; i++) arr2[i] = arr[i];\n return arr2;\n}","import arrayLikeToArray from \"./arrayLikeToArray.js\";\nexport default function _unsupportedIterableToArray(o, minLen) {\n if (!o) return;\n if (typeof o === \"string\") return arrayLikeToArray(o, minLen);\n var n = Object.prototype.toString.call(o).slice(8, -1);\n if (n === \"Object\" && o.constructor) n = o.constructor.name;\n if (n === \"Map\" || n === \"Set\") return Array.from(o);\n if (n === \"Arguments\" || /^(?:Ui|I)nt(?:8|16|32)(?:Clamped)?Array$/.test(n)) return arrayLikeToArray(o, minLen);\n}","import arrayWithoutHoles from \"./arrayWithoutHoles.js\";\nimport iterableToArray from \"./iterableToArray.js\";\nimport unsupportedIterableToArray from \"./unsupportedIterableToArray.js\";\nimport nonIterableSpread from \"./nonIterableSpread.js\";\nexport default function _toConsumableArray(arr) {\n return arrayWithoutHoles(arr) || iterableToArray(arr) || unsupportedIterableToArray(arr) || nonIterableSpread();\n}","import arrayLikeToArray from \"./arrayLikeToArray.js\";\nexport default function _arrayWithoutHoles(arr) {\n if (Array.isArray(arr)) return arrayLikeToArray(arr);\n}","export default function _iterableToArray(iter) {\n if (typeof Symbol !== \"undefined\" && iter[Symbol.iterator] != null || iter[\"@@iterator\"] != null) return Array.from(iter);\n}","export default function _nonIterableSpread() {\n throw new TypeError(\"Invalid attempt to spread non-iterable instance.\\nIn order to be iterable, non-array objects must have a [Symbol.iterator]() method.\");\n}","const defaultCacheResponseForSeconds = 2 * 60;\nconst defaultMaxSize = 100;\n\nexport default class RequestWithCache {\n private responseCache: Map = new Map();\n private responsePromiseCache: Map = new Map();\n\n clearCache() {\n this.responseCache = new Map();\n this.responsePromiseCache = new Map();\n }\n\n // Todo: should probably be passed a callback instead, or an apiCall instance. Types are messy this way\n async perform(\n requestContext: any,\n requestFunction: (...params: any) => unknown,\n requestFunctionArguments: any[],\n cacheOptions: CacheOptions\n ): Promise {\n const {\n cacheResponseForSeconds = defaultCacheResponseForSeconds,\n maxSize = defaultMaxSize,\n } = cacheOptions;\n const isCacheDisabled = cacheResponseForSeconds <= 0 || maxSize <= 0;\n\n if (isCacheDisabled) {\n return requestFunction.call(requestContext, ...requestFunctionArguments);\n }\n\n const requestFunctionArgumentsJSON = JSON.stringify(\n requestFunctionArguments\n );\n const cacheEntry = this.responseCache.get(requestFunctionArgumentsJSON);\n const now = Date.now();\n\n if (cacheEntry) {\n const isEntryValid =\n now - cacheEntry.requestTimestamp < cacheResponseForSeconds * 1000;\n if (isEntryValid) {\n this.responseCache.delete(requestFunctionArgumentsJSON);\n this.responseCache.set(requestFunctionArgumentsJSON, cacheEntry);\n return Promise.resolve(cacheEntry.response);\n } else {\n this.responseCache.delete(requestFunctionArgumentsJSON);\n }\n }\n\n const cachePromiseEntry = this.responsePromiseCache.get(\n requestFunctionArgumentsJSON\n );\n\n if (cachePromiseEntry) {\n const isEntryValid =\n now - cachePromiseEntry.requestTimestamp <\n cacheResponseForSeconds * 1000;\n if (isEntryValid) {\n this.responsePromiseCache.delete(requestFunctionArgumentsJSON);\n this.responsePromiseCache.set(\n requestFunctionArgumentsJSON,\n cachePromiseEntry\n );\n return cachePromiseEntry.responsePromise;\n } else {\n this.responsePromiseCache.delete(requestFunctionArgumentsJSON);\n }\n }\n\n const responsePromise = requestFunction.call(\n requestContext,\n ...requestFunctionArguments\n );\n this.responsePromiseCache.set(requestFunctionArgumentsJSON, {\n requestTimestamp: now,\n responsePromise,\n });\n\n const response = await responsePromise;\n this.responseCache.set(requestFunctionArgumentsJSON, {\n requestTimestamp: now,\n response,\n });\n\n const isCacheOverMaxSize = this.responseCache.size > maxSize;\n if (isCacheOverMaxSize) {\n const oldestEntry = this.responseCache.keys().next().value;\n if (oldestEntry) {\n this.responseCache.delete(oldestEntry);\n }\n }\n const isResponsePromiseCacheOverMaxSize =\n this.responsePromiseCache.size > maxSize;\n if (isResponsePromiseCacheOverMaxSize) {\n const oldestEntry = this.responsePromiseCache.keys().next().value;\n if (oldestEntry) {\n this.responsePromiseCache.delete(oldestEntry);\n }\n }\n return response as T;\n }\n}\n\ninterface CacheOptions {\n cacheResponseForSeconds?: number;\n maxSize?: number;\n}\n","import { arrayableParams } from \"./Documents\";\nimport type {\n UnionArrayKeys,\n ExtractBaseTypes,\n SearchParams,\n} from \"./Documents\";\n\nfunction hasNoArrayValues(\n params: T | ExtractBaseTypes,\n): params is ExtractBaseTypes {\n return Object.keys(arrayableParams)\n .filter((key) => params[key] !== undefined)\n .every((key) => isNonArrayValue(params[key]));\n}\n\nexport function normalizeArrayableParams(\n params: T,\n): Prettify> {\n const result = { ...params };\n\n const transformedValues = Object.keys(arrayableParams)\n .filter((key) => Array.isArray(result[key]))\n .map((key) => {\n result[key] = result[key].join(\",\");\n return key;\n });\n\n if (!transformedValues.length && hasNoArrayValues(result)) {\n return result;\n }\n\n if (!hasNoArrayValues(result)) {\n throw new Error(\n `Failed to normalize arrayable params: ${JSON.stringify(result)}`,\n );\n }\n\n return result;\n}\n\nfunction isNonArrayValue>(\n value: T[K] | ExtractBaseTypes[K],\n): value is ExtractBaseTypes[K] {\n return !Array.isArray(value);\n}\n\ntype Prettify = {\n [K in keyof T]: T[K];\n // eslint-disable-next-line @typescript-eslint/ban-types\n} & {};\n","import RequestWithCache from \"./RequestWithCache\";\nimport ApiCall from \"./ApiCall\";\nimport Configuration from \"./Configuration\";\nimport Collections from \"./Collections\";\nimport type {\n DocumentSchema,\n SearchableDocuments,\n SearchOptions,\n SearchParams,\n SearchParamsWithPreset,\n SearchResponse,\n} from \"./Documents\";\nimport { normalizeArrayableParams } from \"./Utils\";\n\nconst RESOURCEPATH = \"/documents\";\n\nexport class SearchOnlyDocuments\n implements SearchableDocuments\n{\n protected requestWithCache: RequestWithCache = new RequestWithCache();\n\n constructor(\n protected collectionName: string,\n protected apiCall: ApiCall,\n protected configuration: Configuration\n ) {}\n\n clearCache() {\n this.requestWithCache.clearCache();\n }\n\n async search(\n searchParameters: SearchParams | SearchParamsWithPreset,\n {\n cacheSearchResultsForSeconds = this.configuration\n .cacheSearchResultsForSeconds,\n abortSignal = null,\n }: SearchOptions = {}\n ): Promise> {\n const additionalQueryParams = {};\n if (this.configuration.useServerSideSearchCache === true) {\n additionalQueryParams[\"use_cache\"] = true;\n }\n const normalizedParams = normalizeArrayableParams(searchParameters);\n const queryParams = Object.assign(\n {},\n additionalQueryParams,\n normalizedParams,\n );\n\n return this.requestWithCache.perform(\n this.apiCall,\n this.apiCall.get,\n [this.endpointPath(\"search\"), queryParams, { abortSignal }],\n {\n cacheResponseForSeconds: cacheSearchResultsForSeconds,\n }\n ) as Promise>;\n }\n\n protected endpointPath(operation?: string) {\n return `${Collections.RESOURCEPATH}/${this.collectionName}${RESOURCEPATH}${\n operation === undefined ? \"\" : \"/\" + operation\n }`;\n }\n\n static get RESOURCEPATH() {\n return RESOURCEPATH;\n }\n}\n","import type { ReadStream } from \"fs\";\nimport ApiCall from \"./ApiCall\";\nimport Configuration from \"./Configuration\";\nimport { ImportError, RequestMalformed } from \"./Errors\";\nimport { SearchOnlyDocuments } from \"./SearchOnlyDocuments\";\n\n// Todo: use generic to extract filter_by values\nexport type DeleteQuery =\n | {\n truncate?: true;\n }\n | {\n truncate?: never;\n filter_by?: string;\n batch_size?: number;\n ignore_not_found?: boolean;\n };\n\nexport interface DeleteResponse {\n num_deleted: number;\n}\n\ninterface ImportResponseSuccess {\n success: true;\n}\n\nexport interface ImportResponseFail {\n success: false;\n error: string;\n document: DocumentSchema;\n code: number;\n}\n\nexport type ImportResponse = ImportResponseSuccess | ImportResponseFail;\n\nexport type DocumentSchema = Record;\n\nexport interface SearchParamsWithPreset extends Partial {\n preset: string;\n}\n\nexport type DropTokensMode = \"right_to_left\" | \"left_to_right\" | \"both_sides:3\";\n\nexport type OperationMode = \"off\" | \"always\" | \"fallback\";\n\nexport type UnionArrayKeys = {\n [K in keyof T]: T[K] extends undefined\n ? never\n : NonNullable extends infer R\n ? R extends R[]\n ? never\n : R extends (infer U)[] | infer U\n ? U[] extends R\n ? K\n : never\n : never\n : never;\n}[keyof T] &\n keyof T;\n\nexport type UnionArraySearchParams = UnionArrayKeys;\n\nexport type ArraybleParams = {\n readonly [K in UnionArraySearchParams]: string;\n};\n\nexport type ExtractBaseTypes = {\n [K in keyof T]: K extends UnionArrayKeys\n ? T[K] extends (infer U)[] | infer U\n ? U\n : T[K]\n : T[K];\n};\n\nexport const arrayableParams: ArraybleParams = {\n query_by: \"query_by\",\n query_by_weights: \"query_by_weights\",\n facet_by: \"facet_by\",\n group_by: \"group_by\",\n include_fields: \"include_fields\",\n exclude_fields: \"exclude_fields\",\n highlight_fields: \"highlight_fields\",\n highlight_full_fields: \"highlight_full_fields\",\n pinned_hits: \"pinned_hits\",\n hidden_hits: \"hidden_hits\",\n infix: \"infix\",\n override_tags: \"override_tags\",\n num_typos: \"num_typos\",\n prefix: \"prefix\",\n sort_by: \"sort_by\",\n};\n\nexport interface SearchParams {\n // From https://typesense.org/docs/latest/api/documents.html#arguments\n // eslint-disable-next-line @typescript-eslint/ban-types -- Can't use `object` here, it needs to intersect with `{}`\n q?: \"*\" | (string & {});\n query_by?: string | string[];\n query_by_weights?: string | number[];\n prefix?: string | boolean | boolean[]; // default: true\n filter_by?: string;\n max_filter_by_candidates?: number; // default: 4\n enable_synonyms?: boolean; // default: true\n enable_analytics?: boolean; // default: true\n filter_curated_hits?: boolean; // default: false\n enable_lazy_filter?: boolean; // default: false\n sort_by?: string | string[]; // default: text match desc\n facet_by?: string | string[];\n max_facet_values?: number;\n facet_sample_threshold?: number;\n facet_sample_percent?: number;\n facet_query?: string;\n facet_query_num_typos?: number;\n facet_return_parent?: string;\n facet_strategy?: \"exhaustive\" | \"top_values\" | \"automatic\";\n page?: number; // default: 1\n per_page?: number; // default: 10, max 250\n group_by?: string | string[];\n group_limit?: number; // default:\n group_missing_values?: boolean;\n include_fields?: string | string[];\n exclude_fields?: string | string[];\n highlight_fields?: string | string[]; // default: all queried fields\n highlight_full_fields?: string | string[]; // default: all fields\n highlight_affix_num_tokens?: number; // default: 4\n highlight_start_tag?: string; // default: \n highlight_end_tag?: string; // default: \n enable_highlight_v1?: boolean;\n snippet_threshold?: number; // default: 30\n num_typos?: string | number | number[]; // default: 2\n min_len_1typo?: number;\n min_len_2typo?: number;\n split_join_tokens?: OperationMode;\n exhaustive_search?: boolean;\n drop_tokens_threshold?: number; // default: 10\n drop_tokens_mode?: DropTokensMode;\n typo_tokens_threshold?: number; // default: 100\n pinned_hits?: string | string[];\n hidden_hits?: string | string[];\n limit_hits?: number; // default: no limit\n pre_segmented_query?: boolean;\n enable_overrides?: boolean;\n override_tags?: string | string[];\n prioritize_exact_match?: boolean; // default: true\n prioritize_token_position?: boolean;\n prioritize_num_matching_fields?: boolean;\n search_cutoff_ms?: number;\n use_cache?: boolean;\n max_candidates?: number;\n infix?: OperationMode | OperationMode[];\n preset?: string;\n text_match_type?: \"max_score\" | \"max_weight\";\n vector_query?: string;\n \"x-typesense-api-key\"?: string;\n \"x-typesense-user-id\"?: string;\n offset?: number;\n limit?: number;\n stopwords?: string;\n conversation?: boolean;\n conversation_model_id?: string;\n conversation_id?: string;\n voice_query?: string;\n}\n\ntype SearchResponseHighlightObject = {\n matched_tokens?: string[];\n snippet?: string;\n value?: string;\n};\n\nexport type SearchResponseHighlight = T extends string | number\n ? SearchResponseHighlightObject\n : {\n [TAttribute in keyof T]?: SearchResponseHighlight;\n };\n\nexport interface SearchResponseHit {\n curated?: true;\n highlights?: [\n {\n field: keyof T;\n snippet?: string;\n value?: string;\n snippets?: string[];\n indices?: number[];\n matched_tokens: string[][] | string[];\n },\n ];\n highlight: SearchResponseHighlight;\n document: T;\n text_match: number;\n text_match_info?: {\n best_field_score: `${number}`; // To prevent scores from being truncated by JSON spec\n best_field_weight: number;\n fields_matched: number;\n score: `${number}`; // To prevent scores from being truncated by JSON spec\n tokens_matched: number;\n };\n}\n\nexport interface SearchResponseFacetCountSchema {\n counts: {\n count: number;\n highlighted: string;\n value: string;\n }[];\n field_name: keyof T;\n stats: {\n avg?: number;\n max?: number;\n min?: number;\n sum?: number;\n };\n}\n\nexport interface SearchResponseRequestParams {\n collection_name?: string;\n q?: string;\n page?: number;\n per_page?: number;\n first_q?: string;\n voice_query?: {\n transcribed_query?: string;\n };\n}\n\n// Todo: we could infer whether this is a grouped response by adding the search params as a generic\nexport interface SearchResponse {\n facet_counts?: SearchResponseFacetCountSchema[];\n found: number;\n found_docs?: number;\n out_of: number;\n page: number;\n request_params: SearchResponseRequestParams;\n search_time_ms: number;\n search_cutoff?: boolean;\n hits?: SearchResponseHit[];\n grouped_hits?: {\n group_key: string[];\n hits: SearchResponseHit[];\n found?: number;\n }[];\n conversation?: {\n answer: string;\n conversation_history: {\n conversation: object[];\n id: string;\n last_updated: number;\n ttl: number;\n };\n conversation_id: string;\n query: string;\n };\n error?: string;\n code?: number;\n}\n\nexport interface DocumentWriteParameters {\n dirty_values?: \"coerce_or_reject\" | \"coerce_or_drop\" | \"drop\" | \"reject\";\n action?: \"create\" | \"update\" | \"upsert\" | \"emplace\";\n}\n\nexport interface UpdateByFilterParameters {\n filter_by?: string;\n}\n\nexport interface UpdateByFilterResponse {\n num_updated: number;\n}\n\nexport interface DocumentImportParameters extends DocumentWriteParameters {\n batch_size?: number;\n return_doc?: boolean;\n return_id?: boolean;\n}\n\nexport interface DocumentsExportParameters {\n filter_by?: string;\n include_fields?: string;\n exclude_fields?: string;\n}\n\nexport interface SearchableDocuments {\n search(\n searchParameters: SearchParams | SearchParamsWithPreset,\n options: SearchOptions,\n ): Promise>;\n clearCache(): void;\n}\n\nexport interface WriteableDocuments {\n create(document: T, options: DocumentWriteParameters): Promise;\n upsert(document: T, options: DocumentWriteParameters): Promise;\n update(document: T, options: DocumentWriteParameters): Promise;\n delete(query: DeleteQuery): Promise;\n import(\n documents: T[] | string,\n options: DocumentWriteParameters,\n ): Promise;\n export(options: DocumentsExportParameters): Promise;\n}\n\nexport interface SearchOptions {\n cacheSearchResultsForSeconds?: number;\n abortSignal?: AbortSignal | null;\n}\n\nconst isNodeJSEnvironment =\n typeof process !== \"undefined\" &&\n process.versions != null &&\n process.versions.node != null;\n\nexport default class Documents\n extends SearchOnlyDocuments\n implements WriteableDocuments\n{\n constructor(\n collectionName: string,\n apiCall: ApiCall,\n configuration: Configuration,\n ) {\n super(collectionName, apiCall, configuration);\n }\n\n async create(document: T, options: DocumentWriteParameters = {}): Promise {\n if (!document) throw new Error(\"No document provided\");\n return this.apiCall.post(this.endpointPath(), document, options);\n }\n\n async upsert(document: T, options: DocumentWriteParameters = {}): Promise {\n if (!document) throw new Error(\"No document provided\");\n return this.apiCall.post(\n this.endpointPath(),\n document,\n Object.assign({}, options, { action: \"upsert\" }),\n );\n }\n\n async update(\n document: T,\n options: UpdateByFilterParameters,\n ): Promise;\n async update(document: T, options: DocumentWriteParameters): Promise;\n async update(\n document: T,\n options: DocumentWriteParameters | UpdateByFilterParameters = {},\n ): Promise {\n if (!document) throw new Error(\"No document provided\");\n\n if (options[\"filter_by\"] != null) {\n return this.apiCall.patch(\n this.endpointPath(),\n document,\n Object.assign({}, options),\n );\n } else {\n return this.apiCall.post(\n this.endpointPath(),\n document,\n Object.assign({}, options, { action: \"update\" }),\n );\n }\n }\n\n async delete(\n query: DeleteQuery = {} as DeleteQuery,\n ): Promise {\n return this.apiCall.delete(this.endpointPath(), query);\n }\n\n async createMany(documents: T[], options: DocumentImportParameters = {}) {\n this.configuration.logger.warn(\n \"createMany is deprecated and will be removed in a future version. Use import instead, which now takes both an array of documents or a JSONL string of documents\",\n );\n return this.import(documents, options);\n }\n\n /**\n * Import a set of documents in a batch.\n * @param {string|Array} documents - Can be a JSONL string of documents or an array of document objects.\n * @param options\n * @return {string|Array} Returns a JSONL string if the input was a JSONL string, otherwise it returns an array of results.\n */\n async import(\n documents: string,\n options?: DocumentImportParameters,\n ): Promise;\n async import(\n documents: T[],\n options?: DocumentImportParameters,\n ): Promise;\n async import(\n documents: T[] | string,\n options: DocumentImportParameters = {},\n ): Promise {\n let documentsInJSONLFormat;\n if (Array.isArray(documents)) {\n if (documents.length === 0) {\n throw new RequestMalformed(\"No documents provided\");\n }\n try {\n documentsInJSONLFormat = documents\n .map((document) => JSON.stringify(document))\n .join(\"\\n\");\n } catch (error: any) {\n // if rangeerror, throw custom error message\n if (\n error instanceof RangeError &&\n error.message.includes(\"Too many properties to enumerate\")\n ) {\n throw new Error(`${error}\n It looks like you have reached a Node.js limit that restricts the number of keys in an Object: https://stackoverflow.com/questions/9282869/are-there-limits-to-the-number-of-properties-in-a-javascript-object\n\n Please try reducing the number of keys in your document, or using CURL to import your data.\n `);\n }\n\n // else, throw the non-range error anyways\n throw new Error(error);\n }\n } else {\n documentsInJSONLFormat = documents;\n if (isEmptyString(documentsInJSONLFormat)) {\n throw new RequestMalformed(\"No documents provided\");\n }\n }\n\n const resultsInJSONLFormat = await this.apiCall.performRequest(\n \"post\",\n this.endpointPath(\"import\"),\n {\n queryParameters: options,\n bodyParameters: documentsInJSONLFormat,\n additionalHeaders: { \"Content-Type\": \"text/plain\" },\n skipConnectionTimeout: true, // We never want to client-side-timeout on an import and retry, since imports are syncronous and we want to let them take as long as it takes to complete fully\n enableKeepAlive: isNodeJSEnvironment ? true : false, // This is to prevent ECONNRESET socket hang up errors. Reference: https://github.com/axios/axios/issues/2936#issuecomment-779439991\n },\n );\n\n if (Array.isArray(documents)) {\n const resultsInJSONFormat = resultsInJSONLFormat\n .split(\"\\n\")\n .map((r) => JSON.parse(r)) as ImportResponse[];\n const failedItems = resultsInJSONFormat.filter(\n (r) => r.success === false,\n );\n if (failedItems.length > 0) {\n throw new ImportError(\n `${\n resultsInJSONFormat.length - failedItems.length\n } documents imported successfully, ${\n failedItems.length\n } documents failed during import. Use \\`error.importResults\\` from the raised exception to get a detailed error reason for each document.`,\n resultsInJSONFormat,\n {\n documentsInJSONLFormat,\n options,\n failedItems,\n successCount: resultsInJSONFormat.length - failedItems.length,\n },\n );\n } else {\n return resultsInJSONFormat;\n }\n } else {\n return resultsInJSONLFormat as string;\n }\n }\n /**\n * Imports documents from a NodeJS readable stream of JSONL.\n */\n async importStream(\n readableStream: ReadStream,\n options: DocumentImportParameters = {},\n ): Promise {\n const resultsInJSONLFormat = await this.apiCall.performRequest(\n \"post\",\n this.endpointPath(\"import\"),\n {\n queryParameters: options,\n bodyParameters: readableStream,\n additionalHeaders: { \"Content-Type\": \"text/plain\" },\n skipConnectionTimeout: true, // We never want to client-side-timeout on an import and retry, since imports are syncronous and we want to let them take as long as it takes to complete fully\n enableKeepAlive: isNodeJSEnvironment ? true : false, // This is to prevent ECONNRESET socket hang up errors. Reference: https://github.com/axios/axios/issues/2936#issuecomment-779439991\n },\n );\n\n const resultsInJSONFormat = resultsInJSONLFormat\n .split(\"\\n\")\n .map((r) => JSON.parse(r)) as ImportResponse[];\n const failedItems = resultsInJSONFormat.filter((r) => r.success === false);\n if (failedItems.length > 0) {\n throw new ImportError(\n `${\n resultsInJSONFormat.length - failedItems.length\n } documents imported successfully, ${\n failedItems.length\n } documents failed during import. Use \\`error.importResults\\` from the raised exception to get a detailed error reason for each document.`,\n resultsInJSONFormat,\n {\n documentsInJSONLFormat: readableStream,\n options,\n failedItems,\n successCount: resultsInJSONFormat.length - failedItems.length,\n },\n );\n } else {\n return resultsInJSONFormat;\n }\n }\n\n /**\n * Returns a JSONL string for all the documents in this collection\n */\n async export(options: DocumentsExportParameters = {}): Promise {\n return this.apiCall.get(this.endpointPath(\"export\"), options);\n }\n\n /**\n * Returns a NodeJS readable stream of JSONL for all the documents in this collection.\n */\n async exportStream(\n options: DocumentsExportParameters = {},\n ): Promise {\n return this.apiCall.get(this.endpointPath(\"export\"), options, {\n responseType: \"stream\",\n });\n }\n}\n\nfunction isEmptyString(str: string | null | undefined): boolean {\n return str == null || str === \"\" || str.length === 0;\n}\n","import ApiCall from \"./ApiCall\";\nimport Collections from \"./Collections\";\nimport { OverrideSchema } from \"./Override\";\n\nconst RESOURCEPATH = \"/overrides\";\n\nexport interface OverrideRuleQuerySchema {\n query?: string;\n match?: \"exact\" | \"contains\";\n}\n\nexport interface OverrideRuleFilterSchema {\n filter_by?: string;\n}\n\nexport interface OverrideRuleTagsSchema {\n tags?: string[];\n}\n\nexport interface OverrideCreateSchema {\n rule: OverrideRuleQuerySchema &\n OverrideRuleFilterSchema &\n OverrideRuleTagsSchema;\n filter_by?: string;\n sort_by?: string;\n remove_matched_tokens?: boolean;\n replace_query?: string;\n includes?: Array<{\n id: string;\n position: number;\n }>;\n excludes?: Array<{ id: string }>;\n filter_curated_hits?: boolean;\n effective_from_ts?: number;\n effective_to_ts?: number;\n stop_processing?: boolean;\n metadata?: object;\n}\n\nexport interface OverridesRetrieveSchema {\n overrides: OverrideSchema[];\n}\n\nexport default class Overrides {\n constructor(\n private collectionName: string,\n private apiCall: ApiCall,\n ) {}\n\n async upsert(\n overrideId: string,\n params: OverrideCreateSchema,\n ): Promise {\n return this.apiCall.put(\n this.endpointPath(overrideId),\n params,\n );\n }\n\n async retrieve(): Promise {\n return this.apiCall.get(this.endpointPath());\n }\n\n private endpointPath(operation?: string): string {\n return `${Collections.RESOURCEPATH}/${this.collectionName}${\n Overrides.RESOURCEPATH\n }${operation === undefined ? \"\" : \"/\" + encodeURIComponent(operation)}`;\n }\n\n static get RESOURCEPATH(): string {\n return RESOURCEPATH;\n }\n}\n","import ApiCall from \"./ApiCall\";\nimport Collections from \"./Collections\";\nimport Overrides, { OverrideCreateSchema } from \"./Overrides\";\n\nexport interface OverrideSchema extends OverrideCreateSchema {\n id: string;\n}\n\nexport interface OverrideDeleteSchema {\n id: string;\n}\n\nexport default class Override {\n constructor(\n private collectionName: string,\n private overrideId: string,\n private apiCall: ApiCall\n ) {}\n\n async retrieve(): Promise {\n return this.apiCall.get(this.endpointPath());\n }\n\n async delete(): Promise {\n return this.apiCall.delete(this.endpointPath());\n }\n\n private endpointPath(): string {\n return `${Collections.RESOURCEPATH}/${encodeURIComponent(this.collectionName)}${Overrides.RESOURCEPATH}/${encodeURIComponent(this.overrideId)}`;\n }\n}\n","import ApiCall from \"./ApiCall\";\nimport Collections from \"./Collections\";\nimport { SynonymSchema } from \"./Synonym\";\n\nconst RESOURCEPATH = \"/synonyms\";\n\nexport interface SynonymCreateSchema {\n synonyms: string[];\n root?: string;\n locale?: string;\n symbols_to_index?: string[];\n}\n\nexport interface SynonymsRetrieveSchema {\n synonyms: SynonymSchema[];\n}\n\nexport default class Synonyms {\n constructor(private collectionName: string, private apiCall: ApiCall) {}\n\n async upsert(\n synonymId: string,\n params: SynonymCreateSchema\n ): Promise {\n return this.apiCall.put(\n this.endpointPath(synonymId),\n params\n );\n }\n\n async retrieve(): Promise {\n return this.apiCall.get(this.endpointPath());\n }\n\n private endpointPath(operation?: string) {\n return `${Collections.RESOURCEPATH}/${encodeURIComponent(this.collectionName)}${\n Synonyms.RESOURCEPATH\n }${operation === undefined ? \"\" : \"/\" + encodeURIComponent(operation)}`;\n }\n\n static get RESOURCEPATH(): string {\n return RESOURCEPATH;\n }\n}\n","import ApiCall from \"./ApiCall\";\nimport Collections from \"./Collections\";\nimport Synonyms, { SynonymCreateSchema } from \"./Synonyms\";\n\nexport interface SynonymSchema extends SynonymCreateSchema {\n id: string;\n}\n\nexport interface SynonymDeleteSchema {\n id: string;\n}\n\nexport default class Synonym {\n constructor(\n private collectionName: string,\n private synonymId: string,\n private apiCall: ApiCall\n ) {}\n\n async retrieve(): Promise {\n return this.apiCall.get(this.endpointPath());\n }\n\n async delete(): Promise {\n return this.apiCall.delete(this.endpointPath());\n }\n\n private endpointPath(): string {\n return `${Collections.RESOURCEPATH}/${encodeURIComponent(this.collectionName)}${Synonyms.RESOURCEPATH}/${encodeURIComponent(this.synonymId)}`;\n }\n}\n","import ApiCall from \"./ApiCall\";\nimport Collections from \"./Collections\";\nimport Documents, {\n DeleteQuery,\n DocumentSchema,\n DocumentWriteParameters,\n} from \"./Documents\";\n\nexport class Document {\n constructor(\n private collectionName: string,\n private documentId: string,\n private apiCall: ApiCall\n ) {}\n\n async retrieve(): Promise {\n return this.apiCall.get(this.endpointPath());\n }\n\n async delete(options?: DeleteQuery): Promise {\n return this.apiCall.delete(this.endpointPath(), options);\n }\n\n async update(\n partialDocument: Partial,\n options: DocumentWriteParameters = {}\n ): Promise {\n return this.apiCall.patch(this.endpointPath(), partialDocument, options);\n }\n\n private endpointPath(): string {\n return `${Collections.RESOURCEPATH}/${encodeURIComponent(this.collectionName)}${Documents.RESOURCEPATH}/${encodeURIComponent(this.documentId)}`;\n }\n}\n","import ApiCall from \"./ApiCall\";\nimport Collections from \"./Collections\";\nimport type {\n BaseCollectionCreateSchema,\n CollectionCreateSchema,\n} from \"./Collections\";\nimport Documents, { DocumentSchema } from \"./Documents\";\nimport { ObjectNotFound } from \"./Errors\";\nimport Overrides from \"./Overrides\";\nimport Override from \"./Override\";\nimport Synonyms from \"./Synonyms\";\nimport Synonym from \"./Synonym\";\nimport { Document } from \"./Document\";\n\nexport type FieldType =\n | \"string\"\n | \"int32\"\n | \"int64\"\n | \"float\"\n | \"bool\"\n | \"geopoint\"\n | \"geopolygon\"\n | \"geopoint[]\"\n | \"string[]\"\n | \"int32[]\"\n | \"int64[]\"\n | \"float[]\"\n | \"bool[]\"\n | \"object\"\n | \"object[]\"\n | \"auto\"\n | \"string*\"\n | \"image\";\n\nexport interface CollectionFieldSchema\n extends Partial<\n Pick\n > {\n name: string;\n type: FieldType;\n optional?: boolean;\n facet?: boolean;\n index?: boolean;\n sort?: boolean;\n locale?: string;\n infix?: boolean;\n stem?: boolean;\n num_dim?: number;\n store?: boolean;\n range_index?: boolean;\n [t: string]: unknown;\n}\n\nexport interface CollectionSchema extends CollectionCreateSchema {\n created_at: number;\n num_documents: number;\n num_memory_shards: number;\n}\n\nexport interface CollectionDropFieldSchema {\n name: string;\n drop: true;\n}\n\nexport interface CollectionUpdateSchema\n extends Partial> {\n fields?: (CollectionFieldSchema | CollectionDropFieldSchema)[];\n}\n\nexport interface CollectionDeleteOptions {\n compact_store?: boolean;\n}\n\nexport default class Collection {\n private readonly _documents: Documents;\n private individualDocuments: Record> = {};\n private readonly _overrides: Overrides;\n private individualOverrides: Record = {};\n private readonly _synonyms: Synonyms;\n private individualSynonyms: Record = {};\n\n constructor(\n private readonly name: string,\n private readonly apiCall: ApiCall,\n private readonly configuration: any,\n ) {\n this.name = name;\n this.apiCall = apiCall;\n this.configuration = configuration;\n\n this._documents = new Documents(\n this.name,\n this.apiCall,\n this.configuration,\n );\n this._overrides = new Overrides(this.name, this.apiCall);\n this._synonyms = new Synonyms(this.name, this.apiCall);\n }\n\n async retrieve(): Promise {\n return this.apiCall.get(this.endpointPath());\n }\n\n async update(schema: CollectionUpdateSchema): Promise {\n return this.apiCall.patch(this.endpointPath(), schema);\n }\n\n async delete(\n options: CollectionDeleteOptions = {},\n ): Promise {\n return this.apiCall.delete(this.endpointPath(), options);\n }\n\n async exists(): Promise {\n try {\n await this.retrieve();\n return true;\n } catch (e) {\n if (e instanceof ObjectNotFound) return false;\n throw e;\n }\n }\n\n documents(): Documents;\n documents(documentId: string): Document;\n documents(documentId?: string): Document | Documents {\n if (!documentId) {\n return this._documents;\n } else {\n if (this.individualDocuments[documentId] === undefined) {\n this.individualDocuments[documentId] = new Document(\n this.name,\n documentId,\n this.apiCall,\n );\n }\n return this.individualDocuments[documentId];\n }\n }\n\n overrides(): Overrides;\n overrides(overrideId: string): Override;\n overrides(overrideId?: string): Overrides | Override {\n if (overrideId === undefined) {\n return this._overrides;\n } else {\n if (this.individualOverrides[overrideId] === undefined) {\n this.individualOverrides[overrideId] = new Override(\n this.name,\n overrideId,\n this.apiCall,\n );\n }\n return this.individualOverrides[overrideId];\n }\n }\n\n synonyms(): Synonyms;\n synonyms(synonymId: string): Synonym;\n synonyms(synonymId?: string): Synonyms | Synonym {\n if (synonymId === undefined) {\n return this._synonyms;\n } else {\n if (this.individualSynonyms[synonymId] === undefined) {\n this.individualSynonyms[synonymId] = new Synonym(\n this.name,\n synonymId,\n this.apiCall,\n );\n }\n return this.individualSynonyms[synonymId];\n }\n }\n\n private endpointPath(): string {\n return `${Collections.RESOURCEPATH}/${encodeURIComponent(this.name)}`;\n }\n}\n","import ApiCall from \"./ApiCall\";\n\nconst RESOURCEPATH = \"/aliases\";\n\nexport interface CollectionAliasCreateSchema {\n collection_name: string;\n}\n\nexport interface CollectionAliasSchema extends CollectionAliasCreateSchema {\n name: string;\n}\n\nexport interface CollectionAliasesResponseSchema {\n aliases: CollectionAliasSchema[];\n}\n\nexport default class Aliases {\n constructor(private apiCall: ApiCall) {}\n\n async upsert(\n name: string,\n mapping: CollectionAliasCreateSchema\n ): Promise {\n return this.apiCall.put(\n this.endpointPath(name),\n mapping\n );\n }\n\n async retrieve(): Promise {\n return this.apiCall.get(RESOURCEPATH);\n }\n\n private endpointPath(aliasName): string {\n return `${Aliases.RESOURCEPATH}/${encodeURIComponent(aliasName)}`;\n }\n\n static get RESOURCEPATH(): string {\n return RESOURCEPATH;\n }\n}\n","import Aliases, { CollectionAliasSchema } from \"./Aliases\";\nimport ApiCall from \"./ApiCall\";\n\nexport default class Alias {\n constructor(private name: string, private apiCall: ApiCall) {}\n\n async retrieve(): Promise {\n return this.apiCall.get(this.endpointPath());\n }\n\n async delete(): Promise {\n return this.apiCall.delete(this.endpointPath());\n }\n\n private endpointPath(): string {\n return `${Aliases.RESOURCEPATH}/${encodeURIComponent(this.name)}`;\n }\n}\n","import { createHmac } from \"crypto\";\nimport ApiCall from \"./ApiCall\";\nimport { KeyCreateSchema, KeySchema } from \"./Key\";\nimport { SearchParams } from \"./Documents\";\nimport { normalizeArrayableParams } from \"./Utils\";\n\nconst RESOURCEPATH = \"/keys\";\n\nexport interface KeysRetrieveSchema {\n keys: KeySchema[];\n}\n\nexport interface GenerateScopedSearchKeyParams extends Partial {\n expires_at?: number;\n cache_ttl?: number;\n limit_multi_searches?: number;\n}\n\nexport default class Keys {\n constructor(private apiCall: ApiCall) {\n this.apiCall = apiCall;\n }\n\n async create(params: KeyCreateSchema): Promise {\n return this.apiCall.post(Keys.RESOURCEPATH, params);\n }\n\n async retrieve(): Promise {\n return this.apiCall.get(RESOURCEPATH);\n }\n\n generateScopedSearchKey(\n searchKey: string,\n parameters: GenerateScopedSearchKeyParams\n ): string {\n // Note: only a key generated with the `documents:search` action will be\n // accepted by the server, when usined with the search endpoint.\n const normalizedParams = normalizeArrayableParams(parameters);\n const paramsJSON = JSON.stringify(normalizedParams);\n const digest = Buffer.from(\n createHmac(\"sha256\", searchKey).update(paramsJSON).digest(\"base64\")\n );\n const keyPrefix = searchKey.substr(0, 4);\n const rawScopedKey = `${digest}${keyPrefix}${paramsJSON}`;\n\n return Buffer.from(rawScopedKey).toString(\"base64\");\n }\n\n static get RESOURCEPATH() {\n return RESOURCEPATH;\n }\n}\n","import ApiCall from \"./ApiCall\";\nimport Keys from \"./Keys\";\n\nexport interface KeyCreateSchema {\n actions: string[];\n collections: string[];\n description?: string;\n value?: string;\n value_prefix?: string;\n expires_at?: number;\n autodelete?: boolean;\n}\n\nexport interface KeyDeleteSchema {\n id: number;\n}\n\nexport interface KeySchema extends KeyCreateSchema {\n id: number;\n}\n\nexport default class Key {\n constructor(\n private id: number,\n private apiCall: ApiCall,\n ) {}\n\n async retrieve(): Promise {\n return this.apiCall.get(this.endpointPath());\n }\n\n async delete(): Promise {\n return this.apiCall.delete(this.endpointPath());\n }\n\n private endpointPath(): string {\n return `${Keys.RESOURCEPATH}/${encodeURIComponent(this.id)}`;\n }\n}\n","import ApiCall from \"./ApiCall\";\n\nconst RESOURCEPATH = \"/debug\";\n\nexport interface DebugResponseSchema {\n state: number;\n version: string;\n}\n\nexport default class Debug {\n constructor(private apiCall: ApiCall) {}\n\n async retrieve(): Promise {\n return this.apiCall.get(RESOURCEPATH);\n }\n}\n","import ApiCall from \"./ApiCall\";\n\nconst RESOURCEPATH = \"/metrics.json\";\n\nexport interface MetricsResponse {\n [key: `system_cpu${number}_active_percentage`]: string;\n system_cpu_active_percentage: string;\n system_disk_total_bytes: string;\n system_disk_used_bytes: string;\n system_memory_total_bytes: string;\n system_memory_total_swap_bytes?: string;\n system_memory_used_bytes: string;\n system_memory_used_swap_bytes?: string;\n system_network_received_bytes: string;\n system_network_sent_bytes: string;\n typesense_memory_active_bytes: string;\n typesense_memory_allocated_bytes: string;\n typesense_memory_fragmentation_ratio: string;\n typesense_memory_mapped_bytes: string;\n typesense_memory_metadata_bytes: string;\n typesense_memory_resident_bytes: string;\n typesense_memory_retained_bytes: string;\n}\n\nexport default class Metrics {\n constructor(private apiCall: ApiCall) {}\n\n async retrieve(): Promise {\n return this.apiCall.get(RESOURCEPATH);\n }\n}\n","import ApiCall from \"./ApiCall\";\n\nconst RESOURCEPATH = \"/stats.json\";\n\nexport interface EndpointStats {\n [endpoint: string]: number;\n}\n\nexport interface StatsResponse {\n delete_latency_ms?: number;\n delete_requests_per_second?: number;\n import_latency_ms?: number;\n import_requests_per_second?: number;\n latency_ms?: EndpointStats;\n overloaded_requests_per_second?: number;\n pending_write_batches?: number;\n requests_per_second?: EndpointStats;\n search_latency_ms?: number;\n search_requests_per_second?: number;\n total_requests_per_second?: number;\n write_latency_ms?: number;\n write_requests_per_second?: number;\n}\n\nexport default class Metrics {\n constructor(private apiCall: ApiCall) {}\n\n async retrieve(): Promise {\n return this.apiCall.get(RESOURCEPATH);\n }\n}\n","import ApiCall from \"./ApiCall\";\n\nconst RESOURCEPATH = \"/health\";\n\nexport interface HealthResponse {\n ok: boolean;\n}\n\nexport default class Health {\n constructor(private apiCall: ApiCall) {}\n\n async retrieve(): Promise {\n return this.apiCall.get(RESOURCEPATH);\n }\n}\n","import ApiCall from \"./ApiCall\";\n\nconst RESOURCEPATH = \"/operations\";\n\nexport default class Operations {\n constructor(private apiCall: ApiCall) {}\n\n async perform(\n operationName:\n | \"vote\"\n | \"snapshot\"\n | \"cache/clear\"\n | \"schema_changes\"\n // eslint-disable-next-line @typescript-eslint/ban-types -- Can't use `object` here, it needs to intersect with `{}`\n | (string & {}),\n queryParameters: Record = {},\n ): Promise {\n return this.apiCall.post(\n `${RESOURCEPATH}/${operationName}`,\n {},\n queryParameters,\n );\n }\n}\n","import ApiCall from \"./ApiCall\";\nimport Configuration from \"./Configuration\";\nimport RequestWithCache from \"./RequestWithCache\";\nimport {\n DocumentSchema,\n SearchParams,\n SearchParamsWithPreset,\n SearchResponse,\n SearchResponseRequestParams,\n} from \"./Documents\";\nimport { normalizeArrayableParams } from \"./Utils\";\n\nconst RESOURCEPATH = \"/multi_search\";\n\nexport interface MultiSearchRequestSchema extends SearchParams {\n collection?: string;\n rerank_hybrid_matches?: boolean;\n \"x-typesense-api-key\"?: string;\n}\n\nexport interface MultiSearchRequestWithPresetSchema\n extends SearchParamsWithPreset {\n collection?: string;\n \"x-typesense-api-key\"?: string;\n}\n\nexport interface MultiSearchRequestsSchema<\n U extends boolean | undefined = undefined,\n> {\n union?: U;\n searches: (MultiSearchRequestSchema | MultiSearchRequestWithPresetSchema)[];\n}\n\nexport interface UnionSearchResponse\n extends Omit, \"request_params\"> {\n union_request_params: SearchResponseRequestParams[];\n}\n\nexport type MultiSearchResponse<\n U extends boolean | undefined,\n T extends DocumentSchema[],\n> = U extends true\n ? UnionSearchResponse\n : {\n results: { [Index in keyof T]: SearchResponse } & {\n length: T[\"length\"];\n };\n };\n\nexport default class MultiSearch {\n private requestWithCache: RequestWithCache;\n\n constructor(\n private apiCall: ApiCall,\n private configuration: Configuration,\n private useTextContentType: boolean = false,\n ) {\n this.requestWithCache = new RequestWithCache();\n }\n\n clearCache() {\n this.requestWithCache.clearCache();\n }\n\n async perform<\n T extends DocumentSchema[] = [],\n const U extends boolean | undefined = undefined,\n >(\n searchRequests: MultiSearchRequestsSchema,\n commonParams: Partial = {},\n {\n cacheSearchResultsForSeconds = this.configuration\n .cacheSearchResultsForSeconds,\n }: { cacheSearchResultsForSeconds?: number } = {},\n ): Promise> {\n const additionalHeaders = {};\n if (this.useTextContentType) {\n additionalHeaders[\"content-type\"] = \"text/plain\";\n }\n\n const additionalQueryParams = {};\n if (this.configuration.useServerSideSearchCache === true) {\n additionalQueryParams[\"use_cache\"] = true;\n }\n\n const queryParams = { ...commonParams, ...additionalQueryParams };\n\n const normalizedSearchRequests = {\n ...searchRequests,\n searches: searchRequests.searches.map(normalizeArrayableParams),\n };\n\n const normalizedQueryParams = normalizeArrayableParams(queryParams);\n\n return this.requestWithCache.perform(\n this.apiCall,\n this.apiCall.post,\n [\n RESOURCEPATH,\n normalizedSearchRequests,\n normalizedQueryParams,\n additionalHeaders,\n ],\n { cacheResponseForSeconds: cacheSearchResultsForSeconds },\n ) as Promise>;\n }\n}\n","import ApiCall from \"./ApiCall\";\nimport { PresetSchema } from \"./Preset\";\nimport { SearchParams } from \"./Documents\";\nimport { MultiSearchRequestsSchema } from \"./MultiSearch\";\nimport { normalizeArrayableParams } from \"./Utils\";\n\nconst RESOURCEPATH = \"/presets\";\n\nexport interface PresetCreateSchema {\n value: SearchParams | MultiSearchRequestsSchema;\n}\n\nexport interface PresetsRetrieveSchema {\n presets: PresetSchema[];\n}\n\nexport default class Presets {\n constructor(private apiCall: ApiCall) {}\n\n async upsert(\n presetId: string,\n params: PresetCreateSchema,\n ): Promise {\n if (typeof params.value === \"object\" && \"searches\" in params.value) {\n const normalizedParams = params.value.searches.map((search) =>\n normalizeArrayableParams(search),\n );\n\n return this.apiCall.put(this.endpointPath(presetId), {\n value: { searches: normalizedParams },\n });\n }\n const normalizedParams = normalizeArrayableParams(params.value);\n\n return this.apiCall.put(this.endpointPath(presetId), {\n value: normalizedParams,\n });\n }\n\n async retrieve(): Promise {\n return this.apiCall.get(this.endpointPath());\n }\n\n private endpointPath(operation?: string): string {\n return `${Presets.RESOURCEPATH}${\n operation === undefined ? \"\" : \"/\" + encodeURIComponent(operation)\n }`;\n }\n\n static get RESOURCEPATH(): string {\n return RESOURCEPATH;\n }\n}\n","import ApiCall from \"./ApiCall\";\nimport Presets, { PresetCreateSchema } from \"./Presets\";\n\nexport interface PresetSchema extends PresetCreateSchema {\n name: string;\n}\n\nexport interface PresetDeleteSchema {\n name: string;\n}\n\nexport default class Preset {\n constructor(private presetId: string, private apiCall: ApiCall) {}\n\n async retrieve(): Promise {\n return this.apiCall.get(this.endpointPath());\n }\n\n async delete(): Promise {\n return this.apiCall.delete(this.endpointPath());\n }\n\n private endpointPath(): string {\n return `${Presets.RESOURCEPATH}/${encodeURIComponent(this.presetId)}`;\n }\n}\n","import ApiCall from \"./ApiCall\";\nimport {\n AnalyticsRuleCreateSchema,\n AnalyticsRuleSchema,\n} from \"./AnalyticsRule\";\n\nexport interface AnalyticsRulesRetrieveSchema {\n rules: AnalyticsRuleSchema[];\n}\n\nconst RESOURCEPATH = \"/analytics/rules\";\n\nexport default class AnalyticsRules {\n constructor(private readonly apiCall: ApiCall) {\n this.apiCall = apiCall;\n }\n\n async upsert(\n name: string,\n params: AnalyticsRuleCreateSchema\n ): Promise {\n return this.apiCall.put(\n this.endpointPath(name),\n params\n );\n }\n\n async retrieve(): Promise {\n return this.apiCall.get(this.endpointPath());\n }\n\n private endpointPath(operation?: string): string {\n return `${AnalyticsRules.RESOURCEPATH}${\n operation === undefined ? \"\" : \"/\" + encodeURIComponent(operation)\n }`;\n }\n\n static get RESOURCEPATH() {\n return RESOURCEPATH;\n }\n}\n","import ApiCall from \"./ApiCall\";\nimport AnalyticsRules from \"./AnalyticsRules\";\n\nexport interface AnalyticsRuleCreateSchema {\n type: \"popular_queries\" | \"nohits_queries\" | \"counter\";\n params: {\n enable_auto_aggregation?: boolean;\n source: {\n collections: string[];\n events?: Array<{\n type: string;\n weight: number;\n name: string;\n }>;\n };\n expand_query?: boolean;\n destination: {\n collection: string;\n counter_field?: string;\n };\n limit?: number;\n };\n}\n\nexport interface AnalyticsRuleDeleteSchema {\n name: string;\n}\n\nexport interface AnalyticsRuleSchema extends AnalyticsRuleCreateSchema {\n name: string;\n}\n\nexport default class AnalyticsRule {\n constructor(\n private name: string,\n private apiCall: ApiCall,\n ) {}\n\n async retrieve(): Promise {\n return this.apiCall.get(this.endpointPath());\n }\n\n async delete(): Promise {\n return this.apiCall.delete(this.endpointPath());\n }\n\n private endpointPath(): string {\n return `${AnalyticsRules.RESOURCEPATH}/${encodeURIComponent(this.name)}`;\n }\n}\n","import ApiCall from \"./ApiCall\";\nimport { AnalyticsEventCreateSchema } from \"./AnalyticsEvent\";\n\nconst RESOURCEPATH = \"/analytics/events\";\n\nexport default class AnalyticsEvents {\n constructor(private readonly apiCall: ApiCall) {\n this.apiCall = apiCall;\n }\n\n async create(\n params: AnalyticsEventCreateSchema,\n ): Promise {\n return this.apiCall.post(\n this.endpointPath(),\n params,\n );\n }\n\n private endpointPath(operation?: string): string {\n return `${AnalyticsEvents.RESOURCEPATH}${\n operation === undefined ? \"\" : \"/\" + encodeURIComponent(operation)\n }`;\n }\n\n static get RESOURCEPATH() {\n return RESOURCEPATH;\n }\n}\n","import ApiCall from \"./ApiCall\";\nimport AnalyticsRules from \"./AnalyticsRules\";\nimport AnalyticsRule from \"./AnalyticsRule\";\nimport AnalyticsEvents from \"./AnalyticsEvents\";\n\nconst RESOURCEPATH = \"/analytics\";\n\nexport default class Analytics {\n private readonly _analyticsRules: AnalyticsRules;\n private readonly individualAnalyticsRules: Record = {};\n private readonly _analyticsEvents: AnalyticsEvents;\n\n constructor(private readonly apiCall: ApiCall) {\n this.apiCall = apiCall;\n this._analyticsRules = new AnalyticsRules(this.apiCall);\n this._analyticsEvents = new AnalyticsEvents(this.apiCall);\n }\n\n rules(): AnalyticsRules;\n rules(id: string): AnalyticsRule;\n rules(id?: string): AnalyticsRules | AnalyticsRule {\n if (id === undefined) {\n return this._analyticsRules;\n } else {\n if (this.individualAnalyticsRules[id] === undefined) {\n this.individualAnalyticsRules[id] = new AnalyticsRule(id, this.apiCall);\n }\n return this.individualAnalyticsRules[id];\n }\n }\n\n events(): AnalyticsEvents {\n return this._analyticsEvents;\n }\n\n static get RESOURCEPATH() {\n return RESOURCEPATH;\n }\n}\n","import ApiCall from \"./ApiCall\";\nimport { StopwordSchema } from \"./Stopword\";\n\nconst RESOURCEPATH = \"/stopwords\";\n\nexport interface StopwordCreateSchema {\n stopwords: string[];\n locale?: string;\n}\n\nexport interface StopwordsRetrieveSchema {\n stopwords: StopwordSchema[];\n}\n\nexport default class Stopwords {\n constructor(private apiCall: ApiCall) {}\n\n async upsert(\n stopwordId: string,\n params: StopwordCreateSchema,\n ): Promise {\n return this.apiCall.put(\n this.endpointPath(stopwordId),\n params,\n );\n }\n\n async retrieve(): Promise {\n return this.apiCall.get(this.endpointPath());\n }\n\n private endpointPath(operation?: string): string {\n return `${Stopwords.RESOURCEPATH}${\n operation === undefined ? \"\" : \"/\" + encodeURIComponent(operation)\n }`;\n }\n\n static get RESOURCEPATH(): string {\n return RESOURCEPATH;\n }\n}\n","import ApiCall from \"./ApiCall\";\nimport Stopwords, { StopwordCreateSchema } from \"./Stopwords\";\n\nexport interface StopwordSchema extends StopwordCreateSchema {\n id: string;\n stopwords: string[];\n locale?: string;\n}\n\nexport interface StopwordDeleteSchema {\n id: string;\n}\n\nexport default class Stopword {\n constructor(\n private stopwordId: string,\n private apiCall: ApiCall,\n ) {}\n\n async retrieve(): Promise {\n return this.apiCall.get(this.endpointPath());\n }\n\n async delete(): Promise {\n return this.apiCall.delete(this.endpointPath());\n }\n\n private endpointPath(): string {\n return `${Stopwords.RESOURCEPATH}/${encodeURIComponent(this.stopwordId)}`;\n }\n}\n","import ApiCall from \"./ApiCall\";\nimport {\n ConversationModelCreateSchema,\n ConversationModelSchema,\n} from \"./ConversationModel\";\n\nconst RESOURCEPATH = \"/conversations/models\";\n\nexport default class ConversationModels {\n constructor(private readonly apiCall: ApiCall) {\n this.apiCall = apiCall;\n }\n\n async create(\n params: ConversationModelCreateSchema,\n ): Promise {\n return this.apiCall.post(\n this.endpointPath(),\n params,\n );\n }\n\n async retrieve(): Promise {\n return this.apiCall.get(\n this.endpointPath(),\n );\n }\n\n private endpointPath(operation?: string): string {\n return `${ConversationModels.RESOURCEPATH}${\n operation === undefined ? \"\" : \"/\" + encodeURIComponent(operation)\n }`;\n }\n\n static get RESOURCEPATH() {\n return RESOURCEPATH;\n }\n}\n","import ApiCall from \"./ApiCall\";\nimport ConversationModels from \"./ConversationModels\";\n\nexport interface ConversationModelCreateSchema {\n id?: string;\n model_name: string;\n api_key?: string;\n system_prompt?: string;\n max_bytes: number;\n history_collection?: string;\n}\n\nexport interface ConversationModelDeleteSchema {\n id: string;\n}\n\nexport interface ConversationModelSchema extends ConversationModelCreateSchema {\n id: string;\n}\n\nexport default class ConversationModel {\n constructor(\n private id: string,\n private apiCall: ApiCall,\n ) {}\n\n async update(\n params: ConversationModelCreateSchema,\n ): Promise {\n return this.apiCall.put(\n this.endpointPath(),\n params,\n );\n }\n\n async retrieve(): Promise {\n return this.apiCall.get(this.endpointPath());\n }\n\n async delete(): Promise {\n return this.apiCall.delete(\n this.endpointPath(),\n );\n }\n\n private endpointPath(): string {\n return `${ConversationModels.RESOURCEPATH}/${encodeURIComponent(this.id)}`;\n }\n}\n","import ApiCall from \"./ApiCall\";\nimport ConversationModels from \"./ConversationModels\";\nimport ConversationModel from \"./ConversationModel\";\nimport { ConversationSchema } from \"./Conversation\";\n\nconst RESOURCEPATH = \"/conversations\";\n\nexport interface ConversationsRetrieveSchema {\n conversations: ConversationSchema[];\n}\n\nexport default class Conversations {\n private readonly _conversationsModels: ConversationModels;\n private readonly individualConversationModels: Record<\n string,\n ConversationModel\n > = {};\n\n constructor(private readonly apiCall: ApiCall) {\n this.apiCall = apiCall;\n this._conversationsModels = new ConversationModels(this.apiCall);\n }\n\n async retrieve(): Promise {\n return this.apiCall.get(RESOURCEPATH);\n }\n\n models(): ConversationModels;\n models(id: string): ConversationModel;\n models(id?: string): ConversationModels | ConversationModel {\n if (id === undefined) {\n return this._conversationsModels;\n } else {\n if (this.individualConversationModels[id] === undefined) {\n this.individualConversationModels[id] = new ConversationModel(\n id,\n this.apiCall,\n );\n }\n return this.individualConversationModels[id];\n }\n }\n\n static get RESOURCEPATH() {\n return RESOURCEPATH;\n }\n}\n","import ApiCall from \"./ApiCall\";\nimport Conversations from \"./Conversations\";\n\nexport interface ConversationDeleteSchema {\n id: number;\n}\n\nexport interface ConversationUpdateSchema {\n ttl: number;\n}\n\nexport interface ConversationSchema {\n id: number;\n conversation: object[];\n last_updated: number;\n ttl: number;\n}\n\nexport default class Conversation {\n constructor(\n private id: string,\n private apiCall: ApiCall,\n ) {}\n\n async retrieve(): Promise {\n return this.apiCall.get(this.endpointPath());\n }\n\n async update(\n params: ConversationUpdateSchema,\n ): Promise {\n return this.apiCall.put(\n this.endpointPath(),\n params,\n );\n }\n\n async delete(): Promise {\n return this.apiCall.delete(this.endpointPath());\n }\n\n private endpointPath(): string {\n return `${Conversations.RESOURCEPATH}/${encodeURIComponent(this.id)}`;\n }\n}\n","import ApiCall from \"./ApiCall\";\nimport type { StemmingDictionaryCreateSchema } from \"./StemmingDictionary\";\n\nconst RESOURCEPATH = \"/stemming/dictionaries\";\n\nexport interface StemmingDictionariesRetrieveSchema {\n dictionaries: string[];\n}\n\nexport default class StemmingDictionaries {\n constructor(private readonly apiCall: ApiCall) {\n this.apiCall = apiCall;\n }\n\n async upsert(\n id: string,\n wordRootCombinations: StemmingDictionaryCreateSchema[] | string,\n ): Promise {\n const wordRootCombinationsInJSONLFormat = Array.isArray(\n wordRootCombinations,\n )\n ? wordRootCombinations.map((combo) => JSON.stringify(combo)).join(\"\\n\")\n : wordRootCombinations;\n\n const resultsInJSONLFormat = await this.apiCall.performRequest(\n\n \"post\",\n this.endpointPath(\"import\"),\n {\n queryParameters: {id},\n bodyParameters: wordRootCombinationsInJSONLFormat,\n additionalHeaders: {\"Content-Type\": \"text/plain\"},\n skipConnectionTimeout: true,\n }\n );\n\n return Array.isArray(wordRootCombinations)\n ? resultsInJSONLFormat\n .split(\"\\n\")\n .map((line) => JSON.parse(line) as StemmingDictionaryCreateSchema)\n : resultsInJSONLFormat;\n }\n\n async retrieve(): Promise {\n return this.apiCall.get(\n this.endpointPath(),\n );\n }\n\n private endpointPath(operation?: string): string {\n return operation === undefined\n ? `${StemmingDictionaries.RESOURCEPATH}`\n : `${StemmingDictionaries.RESOURCEPATH}/${encodeURIComponent(operation)}`;\n }\n\n static get RESOURCEPATH() {\n return RESOURCEPATH;\n }\n}\n","import ApiCall from \"./ApiCall\";\nimport StemmingDictionaries from \"./StemmingDictionaries\";\n\nexport interface StemmingDictionaryCreateSchema {\n root: string;\n word: string;\n}\n\nexport interface StemmingDictionarySchema {\n id: string;\n words: StemmingDictionaryCreateSchema[];\n}\n\nexport default class StemmingDictionary {\n constructor(\n private id: string,\n private apiCall: ApiCall,\n ) {}\n\n async retrieve(): Promise {\n return this.apiCall.get(this.endpointPath());\n }\n\n private endpointPath(): string {\n return `${StemmingDictionaries.RESOURCEPATH}/${encodeURIComponent(this.id)}`;\n }\n}\n","import type ApiCall from \"./ApiCall\";\nimport StemmingDictionaries from \"./StemmingDictionaries\";\nimport StemmingDictionary from \"./StemmingDictionary\";\n\nconst RESOURCEPATH = \"/stemming\";\n\nexport default class Stemming {\n private readonly _stemmingDictionaries: StemmingDictionaries;\n private readonly individualStemmingDictionaries: Record<\n string,\n StemmingDictionary\n > = {};\n\n constructor(private readonly apiCall: ApiCall) {\n this.apiCall = apiCall;\n this._stemmingDictionaries = new StemmingDictionaries(this.apiCall);\n }\n\n dictionaries(): StemmingDictionaries;\n dictionaries(id: string): StemmingDictionary;\n dictionaries(id?: string): StemmingDictionaries | StemmingDictionary {\n if (id === undefined) {\n return this._stemmingDictionaries;\n } else {\n if (this.individualStemmingDictionaries[id] === undefined) {\n this.individualStemmingDictionaries[id] = new StemmingDictionary(\n id,\n this.apiCall,\n );\n }\n return this.individualStemmingDictionaries[id];\n }\n }\n\n static get RESOURCEPATH() {\n return RESOURCEPATH;\n }\n}\n","/* eslint-disable no-dupe-class-members */\n\nimport Configuration, { ConfigurationOptions } from \"./Configuration\";\nimport ApiCall from \"./ApiCall\";\nimport Collections from \"./Collections\";\nimport Collection from \"./Collection\";\nimport Aliases from \"./Aliases\";\nimport Alias from \"./Alias\";\nimport Keys from \"./Keys\";\nimport Key from \"./Key\";\nimport Debug from \"./Debug\";\nimport Metrics from \"./Metrics\";\nimport Stats from \"./Stats\";\nimport Health from \"./Health\";\nimport Operations from \"./Operations\";\nimport MultiSearch from \"./MultiSearch\";\nimport Presets from \"./Presets\";\nimport Preset from \"./Preset\";\nimport Analytics from \"./Analytics\";\nimport Stopwords from \"./Stopwords\";\nimport Stopword from \"./Stopword\";\nimport Conversations from \"./Conversations\";\nimport Conversation from \"./Conversation\";\nimport Stemming from \"./Stemming\";\n\nexport default class Client {\n configuration: Configuration;\n apiCall: ApiCall;\n debug: Debug;\n metrics: Metrics;\n stats: Stats;\n health: Health;\n operations: Operations;\n multiSearch: MultiSearch;\n analytics: Analytics;\n stemming: Stemming;\n private readonly _collections: Collections;\n private readonly individualCollections: Record;\n private readonly _aliases: Aliases;\n private readonly individualAliases: Record;\n private readonly _keys: Keys;\n private readonly individualKeys: Record;\n private readonly _presets: Presets;\n private readonly individualPresets: Record;\n private readonly _stopwords: Stopwords;\n private readonly individualStopwords: Record;\n private readonly _conversations: Conversations;\n private readonly individualConversations: Record;\n\n constructor(options: ConfigurationOptions) {\n options.sendApiKeyAsQueryParam = options.sendApiKeyAsQueryParam ?? false;\n\n this.configuration = new Configuration(options);\n this.apiCall = new ApiCall(this.configuration);\n this.debug = new Debug(this.apiCall);\n this.metrics = new Metrics(this.apiCall);\n this.stats = new Stats(this.apiCall);\n this.health = new Health(this.apiCall);\n this.operations = new Operations(this.apiCall);\n this.multiSearch = new MultiSearch(this.apiCall, this.configuration);\n this._collections = new Collections(this.apiCall);\n this.individualCollections = {};\n this._aliases = new Aliases(this.apiCall);\n this.individualAliases = {};\n this._keys = new Keys(this.apiCall);\n this.individualKeys = {};\n this._presets = new Presets(this.apiCall);\n this.individualPresets = {};\n this._stopwords = new Stopwords(this.apiCall);\n this.individualStopwords = {};\n this.analytics = new Analytics(this.apiCall);\n this.stemming = new Stemming(this.apiCall);\n this._conversations = new Conversations(this.apiCall);\n this.individualConversations = {};\n }\n\n collections(): Collections;\n collections = object>(\n collectionName: string,\n ): Collection;\n collections(collectionName?: string): Collections | Collection {\n if (collectionName === undefined) {\n return this._collections;\n } else {\n if (this.individualCollections[collectionName] === undefined) {\n this.individualCollections[collectionName] = new Collection(\n collectionName,\n this.apiCall,\n this.configuration,\n );\n }\n return this.individualCollections[collectionName];\n }\n }\n\n aliases(): Aliases;\n aliases(aliasName: string): Alias;\n aliases(aliasName?: string): Aliases | Alias {\n if (aliasName === undefined) {\n return this._aliases;\n } else {\n if (this.individualAliases[aliasName] === undefined) {\n this.individualAliases[aliasName] = new Alias(aliasName, this.apiCall);\n }\n return this.individualAliases[aliasName];\n }\n }\n\n keys(): Keys;\n keys(id: number): Key;\n keys(id?: number): Keys | Key {\n if (id === undefined) {\n return this._keys;\n } else {\n if (this.individualKeys[id] === undefined) {\n this.individualKeys[id] = new Key(id, this.apiCall);\n }\n return this.individualKeys[id];\n }\n }\n\n presets(): Presets;\n presets(id: string): Preset;\n presets(id?: string): Presets | Preset {\n if (id === undefined) {\n return this._presets;\n } else {\n if (this.individualPresets[id] === undefined) {\n this.individualPresets[id] = new Preset(id, this.apiCall);\n }\n return this.individualPresets[id];\n }\n }\n\n stopwords(): Stopwords;\n stopwords(id: string): Stopword;\n stopwords(id?: string): Stopwords | Stopword {\n if (id === undefined) {\n return this._stopwords;\n } else {\n if (this.individualStopwords[id] === undefined) {\n this.individualStopwords[id] = new Stopword(id, this.apiCall);\n }\n return this.individualStopwords[id];\n }\n }\n\n conversations(): Conversations;\n conversations(id: string): Conversation;\n conversations(id?: string): Conversations | Conversation {\n if (id === undefined) {\n return this._conversations;\n } else {\n if (this.individualConversations[id] === undefined) {\n this.individualConversations[id] = new Conversation(id, this.apiCall);\n }\n return this.individualConversations[id];\n }\n }\n}\n","import { DocumentSchema, SearchableDocuments } from \"./Documents\";\nimport ApiCall from \"./ApiCall\";\nimport { SearchOnlyDocuments } from \"./SearchOnlyDocuments\";\n\nexport class SearchOnlyCollection {\n private readonly _documents: SearchableDocuments;\n\n constructor(\n private readonly name: string,\n private readonly apiCall: ApiCall,\n private readonly configuration: any\n ) {\n this._documents = new SearchOnlyDocuments(\n this.name,\n this.apiCall,\n this.configuration\n );\n }\n\n documents(): SearchableDocuments {\n return this._documents;\n }\n}\n","import Configuration, { ConfigurationOptions } from \"./Configuration\";\nimport ApiCall from \"./ApiCall\";\nimport MultiSearch from \"./MultiSearch\";\nimport { DocumentSchema } from \"./Documents\";\nimport { SearchOnlyCollection } from \"./SearchOnlyCollection\";\n\nexport default class SearchClient {\n public readonly multiSearch: MultiSearch;\n private readonly configuration: Configuration;\n private readonly apiCall: ApiCall;\n private readonly individualCollections: Record;\n\n constructor(options: ConfigurationOptions) {\n options.sendApiKeyAsQueryParam = options.sendApiKeyAsQueryParam ?? true;\n if (\n options.sendApiKeyAsQueryParam === true &&\n (options.apiKey || \"\").length > 2000\n ) {\n console.warn(\n \"[typesense] API Key is longer than 2000 characters which is over the allowed limit, so disabling sending it as a query parameter.\"\n );\n options.sendApiKeyAsQueryParam = false;\n }\n\n this.configuration = new Configuration(options);\n this.apiCall = new ApiCall(this.configuration);\n this.multiSearch = new MultiSearch(this.apiCall, this.configuration, true);\n this.individualCollections = {};\n }\n\n clearCache() {\n this.multiSearch.clearCache();\n\n // eslint-disable-next-line @typescript-eslint/no-unused-vars\n Object.entries(this.individualCollections).forEach(([_, collection]) => {\n collection.documents().clearCache();\n });\n }\n\n collections(\n collectionName: string\n ): SearchOnlyCollection | SearchOnlyCollection {\n if (!collectionName) {\n throw new Error(\n \"Typesense.SearchClient only supports search operations, so the collectionName that needs to \" +\n \"be searched must be specified. Use Typesense.Client if you need to access the collection object.\"\n );\n } else {\n if (this.individualCollections[collectionName] === undefined) {\n this.individualCollections[collectionName] = new SearchOnlyCollection(\n collectionName,\n this.apiCall,\n this.configuration\n );\n }\n return this.individualCollections[collectionName];\n }\n }\n}\n","import arrayWithHoles from \"./arrayWithHoles.js\";\nimport iterableToArrayLimit from \"./iterableToArrayLimit.js\";\nimport unsupportedIterableToArray from \"./unsupportedIterableToArray.js\";\nimport nonIterableRest from \"./nonIterableRest.js\";\nexport default function _slicedToArray(arr, i) {\n return arrayWithHoles(arr) || iterableToArrayLimit(arr, i) || unsupportedIterableToArray(arr, i) || nonIterableRest();\n}","export default function _arrayWithHoles(arr) {\n if (Array.isArray(arr)) return arr;\n}","export default function _iterableToArrayLimit(r, l) {\n var t = null == r ? null : \"undefined\" != typeof Symbol && r[Symbol.iterator] || r[\"@@iterator\"];\n if (null != t) {\n var e,\n n,\n i,\n u,\n a = [],\n f = !0,\n o = !1;\n try {\n if (i = (t = t.call(r)).next, 0 === l) {\n if (Object(t) !== t) return;\n f = !1;\n } else for (; !(f = (e = i.call(t)).done) && (a.push(e.value), a.length !== l); f = !0);\n } catch (r) {\n o = !0, n = r;\n } finally {\n try {\n if (!f && null != t[\"return\"] && (u = t[\"return\"](), Object(u) !== u)) return;\n } finally {\n if (o) throw n;\n }\n }\n return a;\n }\n}","export default function _nonIterableRest() {\n throw new TypeError(\"Invalid attempt to destructure non-iterable instance.\\nIn order to be iterable, non-array objects must have a [Symbol.iterator]() method.\");\n}","import Client from \"./Typesense/Client\";\nimport SearchClient from \"./Typesense/SearchClient\";\nimport * as Errors from \"./Typesense/Errors\";\n\nexport { Client, SearchClient, Errors };\nexport default { Client, SearchClient, Errors };\n"],"names":["root","definition","noop","undefinedType","isIE","window","navigator","test","userAgent","logMethods","_loggersByName","defaultLogger","bindMethod","obj","methodName","method","bind","Function","prototype","call","e","apply","arguments","traceForIE","console","log","trace","replaceLoggingMethods","level","this","getLevel","i","length","methodFactory","name","debug","levels","SILENT","enableLoggingWhenConsoleArrives","defaultMethodFactory","_level","_loggerName","undefined","realMethod","Logger","factory","inheritedLevel","defaultLevel","userLevel","self","storageKey","getPersistedLevel","storedLevel","localStorage","ignore","cookie","document","cookieName","encodeURIComponent","location","indexOf","exec","slice","normalizeLevel","input","toUpperCase","TypeError","setLevel","persist","levelNum","levelName","persistLevelIfPossible","setDefaultLevel","resetLevel","removeItem","clearPersistedLevel","enableAll","TRACE","disableAll","rebuild","childName","initialLevel","getLogger","logger","_log","noConflict","getLoggers","_typeof","_regeneratorRuntime","module","exports","__esModule","t","r","Object","n","hasOwnProperty","o","defineProperty","value","Symbol","a","iterator","c","asyncIterator","u","toStringTag","define","enumerable","configurable","writable","wrap","Generator","create","Context","makeInvokeMethod","tryCatch","type","arg","h","l","f","s","y","GeneratorFunction","GeneratorFunctionPrototype","p","d","getPrototypeOf","v","values","g","defineIteratorMethods","forEach","_invoke","AsyncIterator","invoke","resolve","__await","then","callInvokeWithMethodAndArg","Error","done","delegate","maybeInvokeDelegate","sent","_sent","dispatchException","abrupt","resultName","next","nextLoc","pushTryEntry","tryLoc","catchLoc","finallyLoc","afterLoc","tryEntries","push","resetTryEntry","completion","reset","isNaN","displayName","isGeneratorFunction","constructor","mark","setPrototypeOf","__proto__","awrap","async","Promise","keys","reverse","pop","prev","charAt","stop","rval","handle","complete","finish","delegateYield","runtime","regeneratorRuntime","accidentalStrictMode","globalThis","__webpack_module_cache__","__webpack_require__","moduleId","cachedModule","__webpack_modules__","getter","key","get","prop","_classCallCheck","instance","Constructor","toPropertyKey","toPrimitive","String","_defineProperties","target","props","descriptor","_createClass","protoProps","staticProps","_defineProperty","_assertThisInitialized","ReferenceError","_possibleConstructorReturn","_getPrototypeOf","_setPrototypeOf","_inherits","subClass","superClass","_isNativeReflectConstruct","Boolean","valueOf","Reflect","construct","_wrapNativeSuper","Class","_cache","Map","fn","toString","has","set","Wrapper","TypesenseError","_Error","message","httpBody","httpStatus","_this","_callSuper","MissingConfigurationError","_TypesenseError","Configuration","options","nodes","map","node","setDefaultPathInNode","setDefaultPortInNode","_objectSpread","randomizeNodes","shuffleArray","nearestNode","connectionTimeoutSeconds","timeoutSeconds","healthcheckIntervalSeconds","numRetries","retryIntervalSeconds","apiKey","sendApiKeyAsQueryParam","cacheSearchResultsForSeconds","useServerSideSearchCache","axiosAdapter","logLevel","additionalHeaders","httpAgent","httpsAgent","paramsSerializer","showDeprecationWarnings","validate","validateNodes","isNodeMissingAnyParameters","_this2","some","every","warn","masterNode","readReplicaNodes","array","j","Math","floor","random","_ref","asyncGeneratorStep","gen","reject","_next","_throw","info","error","_asyncToGenerator","args","err","thisArg","kindOf","cache","thing","str","toLowerCase","kindOfTest","typeOfTest","isArray","Array","isUndefined","isArrayBuffer","isString","isFunction","isNumber","isObject","isPlainObject","val","isDate","isFile","isBlob","isFileList","isURLSearchParams","isReadableStream","isRequest","isResponse","isHeaders","allOwnKeys","getOwnPropertyNames","len","findKey","_key","_global","global","isContextDefined","context","isTypedArray","TypedArray","Uint8Array","isHTMLForm","isRegExp","reduceDescriptors","reducer","descriptors","getOwnPropertyDescriptors","reducedDescriptors","ret","defineProperties","ALPHA","DIGIT","ALPHABET","ALPHA_DIGIT","isAsyncFn","_setImmediate","setImmediateSupported","setImmediate","postMessageSupported","postMessage","token","callbacks","addEventListener","source","data","shift","cb","setTimeout","asap","queueMicrotask","process","nextTick","isBuffer","isFormData","kind","FormData","append","isArrayBufferView","result","ArrayBuffer","isView","buffer","isBoolean","isStream","pipe","merge","caseless","assignValue","targetKey","extend","b","trim","replace","stripBOM","content","charCodeAt","inherits","superConstructor","assign","toFlatObject","sourceObj","destObj","filter","propFilter","merged","endsWith","searchString","position","lastIndex","toArray","arr","forEachEntry","pair","matchAll","regExp","matches","hasOwnProp","freezeMethods","toObjectSet","arrayOrString","delimiter","split","toCamelCase","m","p1","p2","toFiniteNumber","defaultValue","Number","isFinite","generateString","size","alphabet","isSpecCompliantForm","toJSONObject","stack","visit","reducedValue","isThenable","catch","AxiosError","code","config","request","response","captureStackTrace","status","utils","toJSON","description","number","fileName","lineNumber","columnNumber","from","customProps","axiosError","cause","isVisitable","removeBrackets","renderKey","path","dots","concat","join","predicates","formData","metaTokens","indexes","option","visitor","defaultVisitor","useBlob","Blob","convertValue","toISOString","Buffer","JSON","stringify","isFlatArray","el","index","exposedHelpers","build","encode","charMap","match","AxiosURLSearchParams","params","_pairs","encoder","_encode","buildURL","url","serializeFn","serialize","serializedParams","hashmarkIndex","handlers","use","fulfilled","rejected","synchronous","runWhen","eject","id","clear","silentJSONParsing","forcedJSONParsing","clarifyTimeoutError","isBrowser","classes","URLSearchParams","protocols","hasBrowserEnv","_navigator","hasStandardBrowserEnv","product","hasStandardBrowserWebWorkerEnv","WorkerGlobalScope","importScripts","origin","href","buildPath","isNumericKey","isLast","arrayToObject","entries","parsePropPath","defaults","transitional","adapter","transformRequest","headers","contentType","getContentType","hasJSONContentType","isObjectPayload","setContentType","platform","helpers","isNode","toURLEncodedForm","formSerializer","_FormData","env","rawValue","parser","parse","stringifySafely","transformResponse","JSONRequested","responseType","strictJSONParsing","ERR_BAD_RESPONSE","timeout","xsrfCookieName","xsrfHeaderName","maxContentLength","maxBodyLength","validateStatus","common","ignoreDuplicateOf","$internals","normalizeHeader","header","normalizeValue","matchHeaderValue","isHeaderNameFilter","AxiosHeaders","valueOrRewrite","rewrite","setHeader","_value","_header","_rewrite","lHeader","setHeaders","rawHeaders","parsed","line","substring","parseHeaders","tokens","tokensRE","parseTokens","matcher","deleted","deleteHeader","normalize","format","normalized","w","char","formatHeader","targets","asStrings","first","computed","accessor","accessors","defineAccessor","accessorName","arg1","arg2","arg3","buildAccessors","mapped","headerValue","transformData","fns","isCancel","__CANCEL__","CanceledError","ERR_CANCELED","settle","ERR_BAD_REQUEST","progressEventReducer","listener","isDownloadStream","freq","bytesNotified","_speedometer","samplesCount","min","bytes","timestamps","firstSampleTS","head","tail","chunkLength","now","Date","startedAt","bytesCount","passed","round","lastArgs","timer","timestamp","threshold","clearTimeout","loaded","total","lengthComputable","progressBytes","rate","progress","estimated","event","progressEventDecorator","throttled","asyncDecorator","msie","urlParsingNode","createElement","originURL","resolveURL","setAttribute","protocol","host","search","hash","hostname","port","pathname","requestURL","write","expires","domain","secure","toGMTString","read","RegExp","decodeURIComponent","remove","buildFullPath","baseURL","requestedURL","relativeURL","combineURLs","headersToObject","mergeConfig","config1","config2","getMergedValue","mergeDeepProperties","valueFromConfig2","defaultToConfig2","mergeDirectKeys","mergeMap","timeoutMessage","withCredentials","withXSRFToken","onUploadProgress","onDownloadProgress","decompress","beforeRedirect","transport","cancelToken","socketPath","responseEncoding","configValue","newConfig","auth","btoa","username","password","unescape","isURLSameOrigin","xsrfValue","cookies","XMLHttpRequest","_config","resolveConfig","requestData","requestHeaders","onCanceled","uploadThrottled","downloadThrottled","flushUpload","flushDownload","unsubscribe","signal","removeEventListener","onloadend","responseHeaders","getAllResponseHeaders","responseText","statusText","open","onreadystatechange","readyState","responseURL","onabort","ECONNABORTED","onerror","ERR_NETWORK","ontimeout","timeoutErrorMessage","ETIMEDOUT","setRequestHeader","upload","cancel","abort","subscribe","aborted","parseProtocol","send","signals","controller","AbortController","reason","streamChunk","chunk","chunkSize","byteLength","end","pos","trackStream","stream","onProgress","onFinish","iterable","readBytes","_onFinish","ReadableStream","pull","close","loadedBytes","enqueue","return","highWaterMark","isFetchSupported","fetch","Request","Response","isReadableStreamSupported","encodeText","TextEncoder","arrayBuffer","supportsRequestStream","duplexAccessed","hasContentType","body","duplex","supportsResponseStream","resolvers","res","_","ERR_NOT_SUPPORT","knownAdapters","http","xhr","fetchOptions","finished","composedSignal","stopTimeout","requestContentLength","getContentLength","getBodyLength","resolveBodyLength","contentTypeHeader","_request","flush","isCredentialsSupported","credentials","isStreamResponse","responseContentLength","responseData","renderReason","isResolvedHandle","adapters","nameOrAdapter","rejectedReasons","reasons","state","throwIfCancellationRequested","throwIfRequested","dispatchRequest","validators","deprecatedWarnings","validator","version","formatMessage","opt","desc","opts","ERR_DEPRECATED","assertOptions","schema","allowUnknown","ERR_BAD_OPTION_VALUE","ERR_BAD_OPTION","Axios","instanceConfig","interceptors","configOrUrl","dummy","boolean","function","contextHeaders","requestInterceptorChain","synchronousRequestInterceptors","interceptor","unshift","responseInterceptorChain","promise","chain","onFulfilled","onRejected","getUri","generateHTTPMethod","isForm","CancelToken","executor","resolvePromise","_listeners","onfulfilled","_resolve","splice","HttpStatusCode","Continue","SwitchingProtocols","Processing","EarlyHints","Ok","Created","Accepted","NonAuthoritativeInformation","NoContent","ResetContent","PartialContent","MultiStatus","AlreadyReported","ImUsed","MultipleChoices","MovedPermanently","Found","SeeOther","NotModified","UseProxy","Unused","TemporaryRedirect","PermanentRedirect","BadRequest","Unauthorized","PaymentRequired","Forbidden","NotFound","MethodNotAllowed","NotAcceptable","ProxyAuthenticationRequired","RequestTimeout","Conflict","Gone","LengthRequired","PreconditionFailed","PayloadTooLarge","UriTooLong","UnsupportedMediaType","RangeNotSatisfiable","ExpectationFailed","ImATeapot","MisdirectedRequest","UnprocessableEntity","Locked","FailedDependency","TooEarly","UpgradeRequired","PreconditionRequired","TooManyRequests","RequestHeaderFieldsTooLarge","UnavailableForLegalReasons","InternalServerError","NotImplemented","BadGateway","ServiceUnavailable","GatewayTimeout","HttpVersionNotSupported","VariantAlsoNegotiates","InsufficientStorage","LoopDetected","NotExtended","NetworkAuthenticationRequired","axios","createInstance","defaultConfig","VERSION","toFormData","Cancel","all","promises","spread","callback","isAxiosError","payload","formToJSON","getAdapter","default","RequestMalformed","RequestUnauthorized","ObjectNotFound","ObjectAlreadyExists","ObjectUnprocessable","ServerError","HTTPError","HEALTHY","isNodeJSEnvironment","versions","ApiCall","configuration","numRetriesPerRequest","additionalUserHeaders","initializeMetadataForNodes","currentNodeIndex","_timer","_performRequest","_patch","_put","_post","_delete2","_get","_callee","endpoint","queryParameters","_ref$abortSignal","abortSignal","_ref$responseType","_args","_context","performRequest","_x","_callee2","_args2","_context2","_x2","_callee3","bodyParameters","_args3","_context3","_x3","_callee4","_args4","_context4","_x4","_callee5","_args5","_context5","_x5","_callee6","requestType","_ref2","_ref2$queryParameters","_ref2$bodyParameters","_ref2$additionalHeade","_ref2$abortSignal","_ref2$responseType","_ref2$skipConnectionT","skipConnectionTimeout","_ref2$enableKeepAlive","enableKeepAlive","requestNumber","lastException","wasAborted","_loop","_ret","numTries","_context7","abortListener","requestOptions","_response$data","_response$data2","_error$code","_error$response","_context6","getNextNode","uriFor","defaultHeaders","Infinity","transformedData","startsWith","HTTPAgent","keepAlive","HTTPSAgent","setNodeHealthcheck","customErrorForResponse","t0","_x6","_x7","_x8","isHealthy","nodeDueForHealthcheck","candidateNode","isDueForHealthcheck","lastAccessTimestamp","_callee7","seconds","_context8","_x9","messageFromServer","errorMessage","RESOURCEPATH","Collections","apiCall","_retrieve","_create","post","ImportError","importResults","_arrayLikeToArray","arr2","_unsupportedIterableToArray","minLen","_toConsumableArray","iter","RequestWithCache","_perform","responseCache","responsePromiseCache","requestContext","requestFunction","requestFunctionArguments","cacheOptions","_cacheOptions$cacheRe","cacheResponseForSeconds","_cacheOptions$maxSize","maxSize","requestFunctionArgumentsJSON","cacheEntry","cachePromiseEntry","responsePromise","oldestEntry","_oldestEntry","requestTimestamp","delete","hasNoArrayValues","arrayableParams","normalizeArrayableParams","SearchOnlyDocuments","collectionName","_search","requestWithCache","clearCache","searchParameters","_ref$cacheSearchResul","additionalQueryParams","normalizedParams","queryParams","perform","endpointPath","operation","query_by","query_by_weights","facet_by","group_by","include_fields","exclude_fields","highlight_fields","highlight_full_fields","pinned_hits","hidden_hits","infix","override_tags","num_typos","prefix","sort_by","Documents","_exportStream","_export2","_importStream","_import2","_createMany","_update","_upsert","action","patch","query","documents","import","documentsInJSONLFormat","resultsInJSONLFormat","resultsInJSONFormat","failedItems","_args6","RangeError","includes","success","successCount","readableStream","_args7","_callee8","_args8","_callee9","_args9","_context9","Overrides","overrideId","put","Override","Synonyms","synonymId","Synonym","Document","documentId","partialDocument","Collection","_documents","_overrides","_synonyms","_exists","retrieve","individualDocuments","individualOverrides","individualSynonyms","Aliases","mapping","aliasName","Alias","Keys","searchKey","parameters","paramsJSON","digest","createHmac","update","keyPrefix","substr","rawScopedKey","Key","Debug","Metrics","Health","Operations","operationName","MultiSearch","useTextContentType","searchRequests","commonParams","normalizedSearchRequests","normalizedQueryParams","searches","Presets","presetId","_normalizedParams","Preset","AnalyticsRules","AnalyticsRule","AnalyticsEvents","Analytics","_analyticsRules","_analyticsEvents","individualAnalyticsRules","Stopwords","stopwordId","Stopword","ConversationModels","ConversationModel","Conversations","_conversationsModels","individualConversationModels","Conversation","StemmingDictionaries","wordRootCombinations","wordRootCombinationsInJSONLFormat","combo","StemmingDictionary","Stemming","_stemmingDictionaries","individualStemmingDictionaries","Client","_options$sendApiKeyAs","metrics","stats","Stats","health","operations","multiSearch","_collections","individualCollections","_aliases","individualAliases","_keys","individualKeys","_presets","individualPresets","_stopwords","individualStopwords","analytics","stemming","_conversations","individualConversations","SearchOnlyCollection","SearchClient","Errors"],"sourceRoot":""} \ No newline at end of file +{"version":3,"file":"typesense.min.js","mappings":"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","sources":["webpack://Typesense/./node_modules/.pnpm/@babel+runtime@7.26.9/node_modules/@babel/runtime/helpers/regeneratorRuntime.js","webpack://Typesense/./node_modules/.pnpm/@babel+runtime@7.26.9/node_modules/@babel/runtime/helpers/typeof.js","webpack://Typesense/./node_modules/.pnpm/loglevel@1.9.2/node_modules/loglevel/lib/loglevel.js","webpack://Typesense/./node_modules/.pnpm/@babel+runtime@7.26.9/node_modules/@babel/runtime/regenerator/index.js","webpack://Typesense/webpack/bootstrap","webpack://Typesense/webpack/runtime/compat get default export","webpack://Typesense/webpack/runtime/define property getters","webpack://Typesense/webpack/runtime/hasOwnProperty shorthand","webpack://Typesense/webpack/runtime/make namespace object","webpack://Typesense/./node_modules/.pnpm/@babel+runtime@7.26.9/node_modules/@babel/runtime/helpers/esm/classCallCheck.js","webpack://Typesense/./node_modules/.pnpm/@babel+runtime@7.26.9/node_modules/@babel/runtime/helpers/esm/typeof.js","webpack://Typesense/./node_modules/.pnpm/@babel+runtime@7.26.9/node_modules/@babel/runtime/helpers/esm/toPropertyKey.js","webpack://Typesense/./node_modules/.pnpm/@babel+runtime@7.26.9/node_modules/@babel/runtime/helpers/esm/toPrimitive.js","webpack://Typesense/./node_modules/.pnpm/@babel+runtime@7.26.9/node_modules/@babel/runtime/helpers/esm/createClass.js","webpack://Typesense/./node_modules/.pnpm/@babel+runtime@7.26.9/node_modules/@babel/runtime/helpers/esm/defineProperty.js","webpack://Typesense/./node_modules/.pnpm/@babel+runtime@7.26.9/node_modules/@babel/runtime/helpers/esm/possibleConstructorReturn.js","webpack://Typesense/./node_modules/.pnpm/@babel+runtime@7.26.9/node_modules/@babel/runtime/helpers/esm/assertThisInitialized.js","webpack://Typesense/./node_modules/.pnpm/@babel+runtime@7.26.9/node_modules/@babel/runtime/helpers/esm/getPrototypeOf.js","webpack://Typesense/./node_modules/.pnpm/@babel+runtime@7.26.9/node_modules/@babel/runtime/helpers/esm/setPrototypeOf.js","webpack://Typesense/./node_modules/.pnpm/@babel+runtime@7.26.9/node_modules/@babel/runtime/helpers/esm/inherits.js","webpack://Typesense/./node_modules/.pnpm/@babel+runtime@7.26.9/node_modules/@babel/runtime/helpers/esm/isNativeReflectConstruct.js","webpack://Typesense/./node_modules/.pnpm/@babel+runtime@7.26.9/node_modules/@babel/runtime/helpers/esm/wrapNativeSuper.js","webpack://Typesense/./node_modules/.pnpm/@babel+runtime@7.26.9/node_modules/@babel/runtime/helpers/esm/isNativeFunction.js","webpack://Typesense/./node_modules/.pnpm/@babel+runtime@7.26.9/node_modules/@babel/runtime/helpers/esm/construct.js","webpack://Typesense/./src/Typesense/Errors/TypesenseError.ts","webpack://Typesense/./src/Typesense/Errors/MissingConfigurationError.ts","webpack://Typesense/./src/Typesense/Configuration.ts","webpack://Typesense/./node_modules/.pnpm/@babel+runtime@7.26.9/node_modules/@babel/runtime/helpers/esm/asyncToGenerator.js","webpack://Typesense/./node_modules/.pnpm/axios@1.7.9/node_modules/axios/lib/helpers/bind.js","webpack://Typesense/./node_modules/.pnpm/axios@1.7.9/node_modules/axios/lib/utils.js","webpack://Typesense/./node_modules/.pnpm/axios@1.7.9/node_modules/axios/lib/core/AxiosError.js","webpack://Typesense/./node_modules/.pnpm/axios@1.7.9/node_modules/axios/lib/helpers/toFormData.js","webpack://Typesense/./node_modules/.pnpm/axios@1.7.9/node_modules/axios/lib/helpers/AxiosURLSearchParams.js","webpack://Typesense/./node_modules/.pnpm/axios@1.7.9/node_modules/axios/lib/helpers/buildURL.js","webpack://Typesense/./node_modules/.pnpm/axios@1.7.9/node_modules/axios/lib/core/InterceptorManager.js","webpack://Typesense/./node_modules/.pnpm/axios@1.7.9/node_modules/axios/lib/defaults/transitional.js","webpack://Typesense/./node_modules/.pnpm/axios@1.7.9/node_modules/axios/lib/platform/browser/index.js","webpack://Typesense/./node_modules/.pnpm/axios@1.7.9/node_modules/axios/lib/platform/browser/classes/URLSearchParams.js","webpack://Typesense/./node_modules/.pnpm/axios@1.7.9/node_modules/axios/lib/platform/browser/classes/FormData.js","webpack://Typesense/./node_modules/.pnpm/axios@1.7.9/node_modules/axios/lib/platform/browser/classes/Blob.js","webpack://Typesense/./node_modules/.pnpm/axios@1.7.9/node_modules/axios/lib/platform/common/utils.js","webpack://Typesense/./node_modules/.pnpm/axios@1.7.9/node_modules/axios/lib/platform/index.js","webpack://Typesense/./node_modules/.pnpm/axios@1.7.9/node_modules/axios/lib/helpers/formDataToJSON.js","webpack://Typesense/./node_modules/.pnpm/axios@1.7.9/node_modules/axios/lib/defaults/index.js","webpack://Typesense/./node_modules/.pnpm/axios@1.7.9/node_modules/axios/lib/helpers/toURLEncodedForm.js","webpack://Typesense/./node_modules/.pnpm/axios@1.7.9/node_modules/axios/lib/helpers/parseHeaders.js","webpack://Typesense/./node_modules/.pnpm/axios@1.7.9/node_modules/axios/lib/core/AxiosHeaders.js","webpack://Typesense/./node_modules/.pnpm/axios@1.7.9/node_modules/axios/lib/core/transformData.js","webpack://Typesense/./node_modules/.pnpm/axios@1.7.9/node_modules/axios/lib/cancel/isCancel.js","webpack://Typesense/./node_modules/.pnpm/axios@1.7.9/node_modules/axios/lib/cancel/CanceledError.js","webpack://Typesense/./node_modules/.pnpm/axios@1.7.9/node_modules/axios/lib/core/settle.js","webpack://Typesense/./node_modules/.pnpm/axios@1.7.9/node_modules/axios/lib/helpers/speedometer.js","webpack://Typesense/./node_modules/.pnpm/axios@1.7.9/node_modules/axios/lib/helpers/progressEventReducer.js","webpack://Typesense/./node_modules/.pnpm/axios@1.7.9/node_modules/axios/lib/helpers/throttle.js","webpack://Typesense/./node_modules/.pnpm/axios@1.7.9/node_modules/axios/lib/helpers/isURLSameOrigin.js","webpack://Typesense/./node_modules/.pnpm/axios@1.7.9/node_modules/axios/lib/helpers/cookies.js","webpack://Typesense/./node_modules/.pnpm/axios@1.7.9/node_modules/axios/lib/core/buildFullPath.js","webpack://Typesense/./node_modules/.pnpm/axios@1.7.9/node_modules/axios/lib/helpers/isAbsoluteURL.js","webpack://Typesense/./node_modules/.pnpm/axios@1.7.9/node_modules/axios/lib/helpers/combineURLs.js","webpack://Typesense/./node_modules/.pnpm/axios@1.7.9/node_modules/axios/lib/core/mergeConfig.js","webpack://Typesense/./node_modules/.pnpm/axios@1.7.9/node_modules/axios/lib/helpers/resolveConfig.js","webpack://Typesense/./node_modules/.pnpm/axios@1.7.9/node_modules/axios/lib/adapters/xhr.js","webpack://Typesense/./node_modules/.pnpm/axios@1.7.9/node_modules/axios/lib/helpers/parseProtocol.js","webpack://Typesense/./node_modules/.pnpm/axios@1.7.9/node_modules/axios/lib/helpers/composeSignals.js","webpack://Typesense/./node_modules/.pnpm/axios@1.7.9/node_modules/axios/lib/helpers/trackStream.js","webpack://Typesense/./node_modules/.pnpm/axios@1.7.9/node_modules/axios/lib/adapters/fetch.js","webpack://Typesense/./node_modules/.pnpm/axios@1.7.9/node_modules/axios/lib/adapters/adapters.js","webpack://Typesense/./node_modules/.pnpm/axios@1.7.9/node_modules/axios/lib/helpers/null.js","webpack://Typesense/./node_modules/.pnpm/axios@1.7.9/node_modules/axios/lib/core/dispatchRequest.js","webpack://Typesense/./node_modules/.pnpm/axios@1.7.9/node_modules/axios/lib/env/data.js","webpack://Typesense/./node_modules/.pnpm/axios@1.7.9/node_modules/axios/lib/helpers/validator.js","webpack://Typesense/./node_modules/.pnpm/axios@1.7.9/node_modules/axios/lib/core/Axios.js","webpack://Typesense/./node_modules/.pnpm/axios@1.7.9/node_modules/axios/lib/cancel/CancelToken.js","webpack://Typesense/./node_modules/.pnpm/axios@1.7.9/node_modules/axios/lib/helpers/HttpStatusCode.js","webpack://Typesense/./node_modules/.pnpm/axios@1.7.9/node_modules/axios/lib/axios.js","webpack://Typesense/./node_modules/.pnpm/axios@1.7.9/node_modules/axios/lib/helpers/spread.js","webpack://Typesense/./node_modules/.pnpm/axios@1.7.9/node_modules/axios/lib/helpers/isAxiosError.js","webpack://Typesense/./src/Typesense/Errors/RequestMalformed.ts","webpack://Typesense/./src/Typesense/Errors/RequestUnauthorized.ts","webpack://Typesense/./src/Typesense/Errors/ObjectNotFound.ts","webpack://Typesense/./src/Typesense/Errors/ObjectAlreadyExists.ts","webpack://Typesense/./src/Typesense/Errors/ObjectUnprocessable.ts","webpack://Typesense/./src/Typesense/Errors/ServerError.ts","webpack://Typesense/./src/Typesense/Errors/HTTPError.ts","webpack://Typesense/./src/Typesense/ApiCall.ts","webpack://Typesense/./src/Typesense/Collections.ts","webpack://Typesense/./src/Typesense/Errors/ImportError.ts","webpack://Typesense/./node_modules/.pnpm/@babel+runtime@7.26.9/node_modules/@babel/runtime/helpers/esm/arrayLikeToArray.js","webpack://Typesense/./node_modules/.pnpm/@babel+runtime@7.26.9/node_modules/@babel/runtime/helpers/esm/unsupportedIterableToArray.js","webpack://Typesense/./node_modules/.pnpm/@babel+runtime@7.26.9/node_modules/@babel/runtime/helpers/esm/toConsumableArray.js","webpack://Typesense/./node_modules/.pnpm/@babel+runtime@7.26.9/node_modules/@babel/runtime/helpers/esm/arrayWithoutHoles.js","webpack://Typesense/./node_modules/.pnpm/@babel+runtime@7.26.9/node_modules/@babel/runtime/helpers/esm/iterableToArray.js","webpack://Typesense/./node_modules/.pnpm/@babel+runtime@7.26.9/node_modules/@babel/runtime/helpers/esm/nonIterableSpread.js","webpack://Typesense/./src/Typesense/RequestWithCache.ts","webpack://Typesense/./src/Typesense/Types.ts","webpack://Typesense/./src/Typesense/Utils.ts","webpack://Typesense/./src/Typesense/SearchOnlyDocuments.ts","webpack://Typesense/./src/Typesense/Documents.ts","webpack://Typesense/./src/Typesense/Overrides.ts","webpack://Typesense/./src/Typesense/Override.ts","webpack://Typesense/./src/Typesense/Synonyms.ts","webpack://Typesense/./src/Typesense/Synonym.ts","webpack://Typesense/./src/Typesense/Document.ts","webpack://Typesense/./src/Typesense/Collection.ts","webpack://Typesense/./src/Typesense/Aliases.ts","webpack://Typesense/./src/Typesense/Alias.ts","webpack://Typesense/./src/Typesense/Keys.ts","webpack://Typesense/./src/Typesense/Key.ts","webpack://Typesense/./src/Typesense/Debug.ts","webpack://Typesense/./src/Typesense/Metrics.ts","webpack://Typesense/./src/Typesense/Stats.ts","webpack://Typesense/./src/Typesense/Health.ts","webpack://Typesense/./src/Typesense/Operations.ts","webpack://Typesense/./src/Typesense/MultiSearch.ts","webpack://Typesense/./src/Typesense/Presets.ts","webpack://Typesense/./src/Typesense/Preset.ts","webpack://Typesense/./src/Typesense/AnalyticsRules.ts","webpack://Typesense/./src/Typesense/AnalyticsRule.ts","webpack://Typesense/./src/Typesense/AnalyticsEvents.ts","webpack://Typesense/./src/Typesense/Analytics.ts","webpack://Typesense/./src/Typesense/Stopwords.ts","webpack://Typesense/./src/Typesense/Stopword.ts","webpack://Typesense/./src/Typesense/ConversationModels.ts","webpack://Typesense/./src/Typesense/ConversationModel.ts","webpack://Typesense/./src/Typesense/Conversations.ts","webpack://Typesense/./src/Typesense/Conversation.ts","webpack://Typesense/./src/Typesense/StemmingDictionaries.ts","webpack://Typesense/./src/Typesense/StemmingDictionary.ts","webpack://Typesense/./src/Typesense/Stemming.ts","webpack://Typesense/./src/Typesense/Client.ts","webpack://Typesense/./src/Typesense/SearchOnlyCollection.ts","webpack://Typesense/./src/Typesense/SearchClient.ts","webpack://Typesense/./node_modules/.pnpm/@babel+runtime@7.26.9/node_modules/@babel/runtime/helpers/esm/slicedToArray.js","webpack://Typesense/./node_modules/.pnpm/@babel+runtime@7.26.9/node_modules/@babel/runtime/helpers/esm/arrayWithHoles.js","webpack://Typesense/./node_modules/.pnpm/@babel+runtime@7.26.9/node_modules/@babel/runtime/helpers/esm/iterableToArrayLimit.js","webpack://Typesense/./node_modules/.pnpm/@babel+runtime@7.26.9/node_modules/@babel/runtime/helpers/esm/nonIterableRest.js","webpack://Typesense/./src/Typesense.ts"],"sourcesContent":["var _typeof = require(\"./typeof.js\")[\"default\"];\nfunction _regeneratorRuntime() {\n \"use strict\"; /*! regenerator-runtime -- Copyright (c) 2014-present, Facebook, Inc. -- license (MIT): https://github.com/facebook/regenerator/blob/main/LICENSE */\n module.exports = _regeneratorRuntime = function _regeneratorRuntime() {\n return e;\n }, module.exports.__esModule = true, module.exports[\"default\"] = module.exports;\n var t,\n e = {},\n r = Object.prototype,\n n = r.hasOwnProperty,\n o = Object.defineProperty || function (t, e, r) {\n t[e] = r.value;\n },\n i = \"function\" == typeof Symbol ? Symbol : {},\n a = i.iterator || \"@@iterator\",\n c = i.asyncIterator || \"@@asyncIterator\",\n u = i.toStringTag || \"@@toStringTag\";\n function define(t, e, r) {\n return Object.defineProperty(t, e, {\n value: r,\n enumerable: !0,\n configurable: !0,\n writable: !0\n }), t[e];\n }\n try {\n define({}, \"\");\n } catch (t) {\n define = function define(t, e, r) {\n return t[e] = r;\n };\n }\n function wrap(t, e, r, n) {\n var i = e && e.prototype instanceof Generator ? e : Generator,\n a = Object.create(i.prototype),\n c = new Context(n || []);\n return o(a, \"_invoke\", {\n value: makeInvokeMethod(t, r, c)\n }), a;\n }\n function tryCatch(t, e, r) {\n try {\n return {\n type: \"normal\",\n arg: t.call(e, r)\n };\n } catch (t) {\n return {\n type: \"throw\",\n arg: t\n };\n }\n }\n e.wrap = wrap;\n var h = \"suspendedStart\",\n l = \"suspendedYield\",\n f = \"executing\",\n s = \"completed\",\n y = {};\n function Generator() {}\n function GeneratorFunction() {}\n function GeneratorFunctionPrototype() {}\n var p = {};\n define(p, a, function () {\n return this;\n });\n var d = Object.getPrototypeOf,\n v = d && d(d(values([])));\n v && v !== r && n.call(v, a) && (p = v);\n var g = GeneratorFunctionPrototype.prototype = Generator.prototype = Object.create(p);\n function defineIteratorMethods(t) {\n [\"next\", \"throw\", \"return\"].forEach(function (e) {\n define(t, e, function (t) {\n return this._invoke(e, t);\n });\n });\n }\n function AsyncIterator(t, e) {\n function invoke(r, o, i, a) {\n var c = tryCatch(t[r], t, o);\n if (\"throw\" !== c.type) {\n var u = c.arg,\n h = u.value;\n return h && \"object\" == _typeof(h) && n.call(h, \"__await\") ? e.resolve(h.__await).then(function (t) {\n invoke(\"next\", t, i, a);\n }, function (t) {\n invoke(\"throw\", t, i, a);\n }) : e.resolve(h).then(function (t) {\n u.value = t, i(u);\n }, function (t) {\n return invoke(\"throw\", t, i, a);\n });\n }\n a(c.arg);\n }\n var r;\n o(this, \"_invoke\", {\n value: function value(t, n) {\n function callInvokeWithMethodAndArg() {\n return new e(function (e, r) {\n invoke(t, n, e, r);\n });\n }\n return r = r ? r.then(callInvokeWithMethodAndArg, callInvokeWithMethodAndArg) : callInvokeWithMethodAndArg();\n }\n });\n }\n function makeInvokeMethod(e, r, n) {\n var o = h;\n return function (i, a) {\n if (o === f) throw Error(\"Generator is already running\");\n if (o === s) {\n if (\"throw\" === i) throw a;\n return {\n value: t,\n done: !0\n };\n }\n for (n.method = i, n.arg = a;;) {\n var c = n.delegate;\n if (c) {\n var u = maybeInvokeDelegate(c, n);\n if (u) {\n if (u === y) continue;\n return u;\n }\n }\n if (\"next\" === n.method) n.sent = n._sent = n.arg;else if (\"throw\" === n.method) {\n if (o === h) throw o = s, n.arg;\n n.dispatchException(n.arg);\n } else \"return\" === n.method && n.abrupt(\"return\", n.arg);\n o = f;\n var p = tryCatch(e, r, n);\n if (\"normal\" === p.type) {\n if (o = n.done ? s : l, p.arg === y) continue;\n return {\n value: p.arg,\n done: n.done\n };\n }\n \"throw\" === p.type && (o = s, n.method = \"throw\", n.arg = p.arg);\n }\n };\n }\n function maybeInvokeDelegate(e, r) {\n var n = r.method,\n o = e.iterator[n];\n if (o === t) return r.delegate = null, \"throw\" === n && e.iterator[\"return\"] && (r.method = \"return\", r.arg = t, maybeInvokeDelegate(e, r), \"throw\" === r.method) || \"return\" !== n && (r.method = \"throw\", r.arg = new TypeError(\"The iterator does not provide a '\" + n + \"' method\")), y;\n var i = tryCatch(o, e.iterator, r.arg);\n if (\"throw\" === i.type) return r.method = \"throw\", r.arg = i.arg, r.delegate = null, y;\n var a = i.arg;\n return a ? a.done ? (r[e.resultName] = a.value, r.next = e.nextLoc, \"return\" !== r.method && (r.method = \"next\", r.arg = t), r.delegate = null, y) : a : (r.method = \"throw\", r.arg = new TypeError(\"iterator result is not an object\"), r.delegate = null, y);\n }\n function pushTryEntry(t) {\n var e = {\n tryLoc: t[0]\n };\n 1 in t && (e.catchLoc = t[1]), 2 in t && (e.finallyLoc = t[2], e.afterLoc = t[3]), this.tryEntries.push(e);\n }\n function resetTryEntry(t) {\n var e = t.completion || {};\n e.type = \"normal\", delete e.arg, t.completion = e;\n }\n function Context(t) {\n this.tryEntries = [{\n tryLoc: \"root\"\n }], t.forEach(pushTryEntry, this), this.reset(!0);\n }\n function values(e) {\n if (e || \"\" === e) {\n var r = e[a];\n if (r) return r.call(e);\n if (\"function\" == typeof e.next) return e;\n if (!isNaN(e.length)) {\n var o = -1,\n i = function next() {\n for (; ++o < e.length;) if (n.call(e, o)) return next.value = e[o], next.done = !1, next;\n return next.value = t, next.done = !0, next;\n };\n return i.next = i;\n }\n }\n throw new TypeError(_typeof(e) + \" is not iterable\");\n }\n return GeneratorFunction.prototype = GeneratorFunctionPrototype, o(g, \"constructor\", {\n value: GeneratorFunctionPrototype,\n configurable: !0\n }), o(GeneratorFunctionPrototype, \"constructor\", {\n value: GeneratorFunction,\n configurable: !0\n }), GeneratorFunction.displayName = define(GeneratorFunctionPrototype, u, \"GeneratorFunction\"), e.isGeneratorFunction = function (t) {\n var e = \"function\" == typeof t && t.constructor;\n return !!e && (e === GeneratorFunction || \"GeneratorFunction\" === (e.displayName || e.name));\n }, e.mark = function (t) {\n return Object.setPrototypeOf ? Object.setPrototypeOf(t, GeneratorFunctionPrototype) : (t.__proto__ = GeneratorFunctionPrototype, define(t, u, \"GeneratorFunction\")), t.prototype = Object.create(g), t;\n }, e.awrap = function (t) {\n return {\n __await: t\n };\n }, defineIteratorMethods(AsyncIterator.prototype), define(AsyncIterator.prototype, c, function () {\n return this;\n }), e.AsyncIterator = AsyncIterator, e.async = function (t, r, n, o, i) {\n void 0 === i && (i = Promise);\n var a = new AsyncIterator(wrap(t, r, n, o), i);\n return e.isGeneratorFunction(r) ? a : a.next().then(function (t) {\n return t.done ? t.value : a.next();\n });\n }, defineIteratorMethods(g), define(g, u, \"Generator\"), define(g, a, function () {\n return this;\n }), define(g, \"toString\", function () {\n return \"[object Generator]\";\n }), e.keys = function (t) {\n var e = Object(t),\n r = [];\n for (var n in e) r.push(n);\n return r.reverse(), function next() {\n for (; r.length;) {\n var t = r.pop();\n if (t in e) return next.value = t, next.done = !1, next;\n }\n return next.done = !0, next;\n };\n }, e.values = values, Context.prototype = {\n constructor: Context,\n reset: function reset(e) {\n if (this.prev = 0, this.next = 0, this.sent = this._sent = t, this.done = !1, this.delegate = null, this.method = \"next\", this.arg = t, this.tryEntries.forEach(resetTryEntry), !e) for (var r in this) \"t\" === r.charAt(0) && n.call(this, r) && !isNaN(+r.slice(1)) && (this[r] = t);\n },\n stop: function stop() {\n this.done = !0;\n var t = this.tryEntries[0].completion;\n if (\"throw\" === t.type) throw t.arg;\n return this.rval;\n },\n dispatchException: function dispatchException(e) {\n if (this.done) throw e;\n var r = this;\n function handle(n, o) {\n return a.type = \"throw\", a.arg = e, r.next = n, o && (r.method = \"next\", r.arg = t), !!o;\n }\n for (var o = this.tryEntries.length - 1; o >= 0; --o) {\n var i = this.tryEntries[o],\n a = i.completion;\n if (\"root\" === i.tryLoc) return handle(\"end\");\n if (i.tryLoc <= this.prev) {\n var c = n.call(i, \"catchLoc\"),\n u = n.call(i, \"finallyLoc\");\n if (c && u) {\n if (this.prev < i.catchLoc) return handle(i.catchLoc, !0);\n if (this.prev < i.finallyLoc) return handle(i.finallyLoc);\n } else if (c) {\n if (this.prev < i.catchLoc) return handle(i.catchLoc, !0);\n } else {\n if (!u) throw Error(\"try statement without catch or finally\");\n if (this.prev < i.finallyLoc) return handle(i.finallyLoc);\n }\n }\n }\n },\n abrupt: function abrupt(t, e) {\n for (var r = this.tryEntries.length - 1; r >= 0; --r) {\n var o = this.tryEntries[r];\n if (o.tryLoc <= this.prev && n.call(o, \"finallyLoc\") && this.prev < o.finallyLoc) {\n var i = o;\n break;\n }\n }\n i && (\"break\" === t || \"continue\" === t) && i.tryLoc <= e && e <= i.finallyLoc && (i = null);\n var a = i ? i.completion : {};\n return a.type = t, a.arg = e, i ? (this.method = \"next\", this.next = i.finallyLoc, y) : this.complete(a);\n },\n complete: function complete(t, e) {\n if (\"throw\" === t.type) throw t.arg;\n return \"break\" === t.type || \"continue\" === t.type ? this.next = t.arg : \"return\" === t.type ? (this.rval = this.arg = t.arg, this.method = \"return\", this.next = \"end\") : \"normal\" === t.type && e && (this.next = e), y;\n },\n finish: function finish(t) {\n for (var e = this.tryEntries.length - 1; e >= 0; --e) {\n var r = this.tryEntries[e];\n if (r.finallyLoc === t) return this.complete(r.completion, r.afterLoc), resetTryEntry(r), y;\n }\n },\n \"catch\": function _catch(t) {\n for (var e = this.tryEntries.length - 1; e >= 0; --e) {\n var r = this.tryEntries[e];\n if (r.tryLoc === t) {\n var n = r.completion;\n if (\"throw\" === n.type) {\n var o = n.arg;\n resetTryEntry(r);\n }\n return o;\n }\n }\n throw Error(\"illegal catch attempt\");\n },\n delegateYield: function delegateYield(e, r, n) {\n return this.delegate = {\n iterator: values(e),\n resultName: r,\n nextLoc: n\n }, \"next\" === this.method && (this.arg = t), y;\n }\n }, e;\n}\nmodule.exports = _regeneratorRuntime, module.exports.__esModule = true, module.exports[\"default\"] = module.exports;","function _typeof(o) {\n \"@babel/helpers - typeof\";\n\n return module.exports = _typeof = \"function\" == typeof Symbol && \"symbol\" == typeof Symbol.iterator ? function (o) {\n return typeof o;\n } : function (o) {\n return o && \"function\" == typeof Symbol && o.constructor === Symbol && o !== Symbol.prototype ? \"symbol\" : typeof o;\n }, module.exports.__esModule = true, module.exports[\"default\"] = module.exports, _typeof(o);\n}\nmodule.exports = _typeof, module.exports.__esModule = true, module.exports[\"default\"] = module.exports;","/*\n* loglevel - https://github.com/pimterry/loglevel\n*\n* Copyright (c) 2013 Tim Perry\n* Licensed under the MIT license.\n*/\n(function (root, definition) {\n \"use strict\";\n if (typeof define === 'function' && define.amd) {\n define(definition);\n } else if (typeof module === 'object' && module.exports) {\n module.exports = definition();\n } else {\n root.log = definition();\n }\n}(this, function () {\n \"use strict\";\n\n // Slightly dubious tricks to cut down minimized file size\n var noop = function() {};\n var undefinedType = \"undefined\";\n var isIE = (typeof window !== undefinedType) && (typeof window.navigator !== undefinedType) && (\n /Trident\\/|MSIE /.test(window.navigator.userAgent)\n );\n\n var logMethods = [\n \"trace\",\n \"debug\",\n \"info\",\n \"warn\",\n \"error\"\n ];\n\n var _loggersByName = {};\n var defaultLogger = null;\n\n // Cross-browser bind equivalent that works at least back to IE6\n function bindMethod(obj, methodName) {\n var method = obj[methodName];\n if (typeof method.bind === 'function') {\n return method.bind(obj);\n } else {\n try {\n return Function.prototype.bind.call(method, obj);\n } catch (e) {\n // Missing bind shim or IE8 + Modernizr, fallback to wrapping\n return function() {\n return Function.prototype.apply.apply(method, [obj, arguments]);\n };\n }\n }\n }\n\n // Trace() doesn't print the message in IE, so for that case we need to wrap it\n function traceForIE() {\n if (console.log) {\n if (console.log.apply) {\n console.log.apply(console, arguments);\n } else {\n // In old IE, native console methods themselves don't have apply().\n Function.prototype.apply.apply(console.log, [console, arguments]);\n }\n }\n if (console.trace) console.trace();\n }\n\n // Build the best logging method possible for this env\n // Wherever possible we want to bind, not wrap, to preserve stack traces\n function realMethod(methodName) {\n if (methodName === 'debug') {\n methodName = 'log';\n }\n\n if (typeof console === undefinedType) {\n return false; // No method possible, for now - fixed later by enableLoggingWhenConsoleArrives\n } else if (methodName === 'trace' && isIE) {\n return traceForIE;\n } else if (console[methodName] !== undefined) {\n return bindMethod(console, methodName);\n } else if (console.log !== undefined) {\n return bindMethod(console, 'log');\n } else {\n return noop;\n }\n }\n\n // These private functions always need `this` to be set properly\n\n function replaceLoggingMethods() {\n /*jshint validthis:true */\n var level = this.getLevel();\n\n // Replace the actual methods.\n for (var i = 0; i < logMethods.length; i++) {\n var methodName = logMethods[i];\n this[methodName] = (i < level) ?\n noop :\n this.methodFactory(methodName, level, this.name);\n }\n\n // Define log.log as an alias for log.debug\n this.log = this.debug;\n\n // Return any important warnings.\n if (typeof console === undefinedType && level < this.levels.SILENT) {\n return \"No console available for logging\";\n }\n }\n\n // In old IE versions, the console isn't present until you first open it.\n // We build realMethod() replacements here that regenerate logging methods\n function enableLoggingWhenConsoleArrives(methodName) {\n return function () {\n if (typeof console !== undefinedType) {\n replaceLoggingMethods.call(this);\n this[methodName].apply(this, arguments);\n }\n };\n }\n\n // By default, we use closely bound real methods wherever possible, and\n // otherwise we wait for a console to appear, and then try again.\n function defaultMethodFactory(methodName, _level, _loggerName) {\n /*jshint validthis:true */\n return realMethod(methodName) ||\n enableLoggingWhenConsoleArrives.apply(this, arguments);\n }\n\n function Logger(name, factory) {\n // Private instance variables.\n var self = this;\n /**\n * The level inherited from a parent logger (or a global default). We\n * cache this here rather than delegating to the parent so that it stays\n * in sync with the actual logging methods that we have installed (the\n * parent could change levels but we might not have rebuilt the loggers\n * in this child yet).\n * @type {number}\n */\n var inheritedLevel;\n /**\n * The default level for this logger, if any. If set, this overrides\n * `inheritedLevel`.\n * @type {number|null}\n */\n var defaultLevel;\n /**\n * A user-specific level for this logger. If set, this overrides\n * `defaultLevel`.\n * @type {number|null}\n */\n var userLevel;\n\n var storageKey = \"loglevel\";\n if (typeof name === \"string\") {\n storageKey += \":\" + name;\n } else if (typeof name === \"symbol\") {\n storageKey = undefined;\n }\n\n function persistLevelIfPossible(levelNum) {\n var levelName = (logMethods[levelNum] || 'silent').toUpperCase();\n\n if (typeof window === undefinedType || !storageKey) return;\n\n // Use localStorage if available\n try {\n window.localStorage[storageKey] = levelName;\n return;\n } catch (ignore) {}\n\n // Use session cookie as fallback\n try {\n window.document.cookie =\n encodeURIComponent(storageKey) + \"=\" + levelName + \";\";\n } catch (ignore) {}\n }\n\n function getPersistedLevel() {\n var storedLevel;\n\n if (typeof window === undefinedType || !storageKey) return;\n\n try {\n storedLevel = window.localStorage[storageKey];\n } catch (ignore) {}\n\n // Fallback to cookies if local storage gives us nothing\n if (typeof storedLevel === undefinedType) {\n try {\n var cookie = window.document.cookie;\n var cookieName = encodeURIComponent(storageKey);\n var location = cookie.indexOf(cookieName + \"=\");\n if (location !== -1) {\n storedLevel = /^([^;]+)/.exec(\n cookie.slice(location + cookieName.length + 1)\n )[1];\n }\n } catch (ignore) {}\n }\n\n // If the stored level is not valid, treat it as if nothing was stored.\n if (self.levels[storedLevel] === undefined) {\n storedLevel = undefined;\n }\n\n return storedLevel;\n }\n\n function clearPersistedLevel() {\n if (typeof window === undefinedType || !storageKey) return;\n\n // Use localStorage if available\n try {\n window.localStorage.removeItem(storageKey);\n } catch (ignore) {}\n\n // Use session cookie as fallback\n try {\n window.document.cookie =\n encodeURIComponent(storageKey) + \"=; expires=Thu, 01 Jan 1970 00:00:00 UTC\";\n } catch (ignore) {}\n }\n\n function normalizeLevel(input) {\n var level = input;\n if (typeof level === \"string\" && self.levels[level.toUpperCase()] !== undefined) {\n level = self.levels[level.toUpperCase()];\n }\n if (typeof level === \"number\" && level >= 0 && level <= self.levels.SILENT) {\n return level;\n } else {\n throw new TypeError(\"log.setLevel() called with invalid level: \" + input);\n }\n }\n\n /*\n *\n * Public logger API - see https://github.com/pimterry/loglevel for details\n *\n */\n\n self.name = name;\n\n self.levels = { \"TRACE\": 0, \"DEBUG\": 1, \"INFO\": 2, \"WARN\": 3,\n \"ERROR\": 4, \"SILENT\": 5};\n\n self.methodFactory = factory || defaultMethodFactory;\n\n self.getLevel = function () {\n if (userLevel != null) {\n return userLevel;\n } else if (defaultLevel != null) {\n return defaultLevel;\n } else {\n return inheritedLevel;\n }\n };\n\n self.setLevel = function (level, persist) {\n userLevel = normalizeLevel(level);\n if (persist !== false) { // defaults to true\n persistLevelIfPossible(userLevel);\n }\n\n // NOTE: in v2, this should call rebuild(), which updates children.\n return replaceLoggingMethods.call(self);\n };\n\n self.setDefaultLevel = function (level) {\n defaultLevel = normalizeLevel(level);\n if (!getPersistedLevel()) {\n self.setLevel(level, false);\n }\n };\n\n self.resetLevel = function () {\n userLevel = null;\n clearPersistedLevel();\n replaceLoggingMethods.call(self);\n };\n\n self.enableAll = function(persist) {\n self.setLevel(self.levels.TRACE, persist);\n };\n\n self.disableAll = function(persist) {\n self.setLevel(self.levels.SILENT, persist);\n };\n\n self.rebuild = function () {\n if (defaultLogger !== self) {\n inheritedLevel = normalizeLevel(defaultLogger.getLevel());\n }\n replaceLoggingMethods.call(self);\n\n if (defaultLogger === self) {\n for (var childName in _loggersByName) {\n _loggersByName[childName].rebuild();\n }\n }\n };\n\n // Initialize all the internal levels.\n inheritedLevel = normalizeLevel(\n defaultLogger ? defaultLogger.getLevel() : \"WARN\"\n );\n var initialLevel = getPersistedLevel();\n if (initialLevel != null) {\n userLevel = normalizeLevel(initialLevel);\n }\n replaceLoggingMethods.call(self);\n }\n\n /*\n *\n * Top-level API\n *\n */\n\n defaultLogger = new Logger();\n\n defaultLogger.getLogger = function getLogger(name) {\n if ((typeof name !== \"symbol\" && typeof name !== \"string\") || name === \"\") {\n throw new TypeError(\"You must supply a name when creating a logger.\");\n }\n\n var logger = _loggersByName[name];\n if (!logger) {\n logger = _loggersByName[name] = new Logger(\n name,\n defaultLogger.methodFactory\n );\n }\n return logger;\n };\n\n // Grab the current global log variable in case of overwrite\n var _log = (typeof window !== undefinedType) ? window.log : undefined;\n defaultLogger.noConflict = function() {\n if (typeof window !== undefinedType &&\n window.log === defaultLogger) {\n window.log = _log;\n }\n\n return defaultLogger;\n };\n\n defaultLogger.getLoggers = function getLoggers() {\n return _loggersByName;\n };\n\n // ES6 default export, for compatibility\n defaultLogger['default'] = defaultLogger;\n\n return defaultLogger;\n}));\n","// TODO(Babel 8): Remove this file.\n\nvar runtime = require(\"../helpers/regeneratorRuntime\")();\nmodule.exports = runtime;\n\n// Copied from https://github.com/facebook/regenerator/blob/main/packages/runtime/runtime.js#L736=\ntry {\n regeneratorRuntime = runtime;\n} catch (accidentalStrictMode) {\n if (typeof globalThis === \"object\") {\n globalThis.regeneratorRuntime = runtime;\n } else {\n Function(\"r\", \"regeneratorRuntime = r\")(runtime);\n }\n}\n","// The module cache\nvar __webpack_module_cache__ = {};\n\n// The require function\nfunction __webpack_require__(moduleId) {\n\t// Check if module is in cache\n\tvar cachedModule = __webpack_module_cache__[moduleId];\n\tif (cachedModule !== undefined) {\n\t\treturn cachedModule.exports;\n\t}\n\t// Create a new module (and put it into the cache)\n\tvar module = __webpack_module_cache__[moduleId] = {\n\t\t// no module.id needed\n\t\t// no module.loaded needed\n\t\texports: {}\n\t};\n\n\t// Execute the module function\n\t__webpack_modules__[moduleId].call(module.exports, module, module.exports, __webpack_require__);\n\n\t// Return the exports of the module\n\treturn module.exports;\n}\n\n","// getDefaultExport function for compatibility with non-harmony modules\n__webpack_require__.n = (module) => {\n\tvar getter = module && module.__esModule ?\n\t\t() => (module['default']) :\n\t\t() => (module);\n\t__webpack_require__.d(getter, { a: getter });\n\treturn getter;\n};","// define getter functions for harmony exports\n__webpack_require__.d = (exports, definition) => {\n\tfor(var key in definition) {\n\t\tif(__webpack_require__.o(definition, key) && !__webpack_require__.o(exports, key)) {\n\t\t\tObject.defineProperty(exports, key, { enumerable: true, get: definition[key] });\n\t\t}\n\t}\n};","__webpack_require__.o = (obj, prop) => (Object.prototype.hasOwnProperty.call(obj, prop))","// define __esModule on exports\n__webpack_require__.r = (exports) => {\n\tif(typeof Symbol !== 'undefined' && Symbol.toStringTag) {\n\t\tObject.defineProperty(exports, Symbol.toStringTag, { value: 'Module' });\n\t}\n\tObject.defineProperty(exports, '__esModule', { value: true });\n};","function _classCallCheck(a, n) {\n if (!(a instanceof n)) throw new TypeError(\"Cannot call a class as a function\");\n}\nexport { _classCallCheck as default };","function _typeof(o) {\n \"@babel/helpers - typeof\";\n\n return _typeof = \"function\" == typeof Symbol && \"symbol\" == typeof Symbol.iterator ? function (o) {\n return typeof o;\n } : function (o) {\n return o && \"function\" == typeof Symbol && o.constructor === Symbol && o !== Symbol.prototype ? \"symbol\" : typeof o;\n }, _typeof(o);\n}\nexport { _typeof as default };","import _typeof from \"./typeof.js\";\nimport toPrimitive from \"./toPrimitive.js\";\nfunction toPropertyKey(t) {\n var i = toPrimitive(t, \"string\");\n return \"symbol\" == _typeof(i) ? i : i + \"\";\n}\nexport { toPropertyKey as default };","import _typeof from \"./typeof.js\";\nfunction toPrimitive(t, r) {\n if (\"object\" != _typeof(t) || !t) return t;\n var e = t[Symbol.toPrimitive];\n if (void 0 !== e) {\n var i = e.call(t, r || \"default\");\n if (\"object\" != _typeof(i)) return i;\n throw new TypeError(\"@@toPrimitive must return a primitive value.\");\n }\n return (\"string\" === r ? String : Number)(t);\n}\nexport { toPrimitive as default };","import toPropertyKey from \"./toPropertyKey.js\";\nfunction _defineProperties(e, r) {\n for (var t = 0; t < r.length; t++) {\n var o = r[t];\n o.enumerable = o.enumerable || !1, o.configurable = !0, \"value\" in o && (o.writable = !0), Object.defineProperty(e, toPropertyKey(o.key), o);\n }\n}\nfunction _createClass(e, r, t) {\n return r && _defineProperties(e.prototype, r), t && _defineProperties(e, t), Object.defineProperty(e, \"prototype\", {\n writable: !1\n }), e;\n}\nexport { _createClass as default };","import toPropertyKey from \"./toPropertyKey.js\";\nfunction _defineProperty(e, r, t) {\n return (r = toPropertyKey(r)) in e ? Object.defineProperty(e, r, {\n value: t,\n enumerable: !0,\n configurable: !0,\n writable: !0\n }) : e[r] = t, e;\n}\nexport { _defineProperty as default };","import _typeof from \"./typeof.js\";\nimport assertThisInitialized from \"./assertThisInitialized.js\";\nfunction _possibleConstructorReturn(t, e) {\n if (e && (\"object\" == _typeof(e) || \"function\" == typeof e)) return e;\n if (void 0 !== e) throw new TypeError(\"Derived constructors may only return object or undefined\");\n return assertThisInitialized(t);\n}\nexport { _possibleConstructorReturn as default };","function _assertThisInitialized(e) {\n if (void 0 === e) throw new ReferenceError(\"this hasn't been initialised - super() hasn't been called\");\n return e;\n}\nexport { _assertThisInitialized as default };","function _getPrototypeOf(t) {\n return _getPrototypeOf = Object.setPrototypeOf ? Object.getPrototypeOf.bind() : function (t) {\n return t.__proto__ || Object.getPrototypeOf(t);\n }, _getPrototypeOf(t);\n}\nexport { _getPrototypeOf as default };","function _setPrototypeOf(t, e) {\n return _setPrototypeOf = Object.setPrototypeOf ? Object.setPrototypeOf.bind() : function (t, e) {\n return t.__proto__ = e, t;\n }, _setPrototypeOf(t, e);\n}\nexport { _setPrototypeOf as default };","import setPrototypeOf from \"./setPrototypeOf.js\";\nfunction _inherits(t, e) {\n if (\"function\" != typeof e && null !== e) throw new TypeError(\"Super expression must either be null or a function\");\n t.prototype = Object.create(e && e.prototype, {\n constructor: {\n value: t,\n writable: !0,\n configurable: !0\n }\n }), Object.defineProperty(t, \"prototype\", {\n writable: !1\n }), e && setPrototypeOf(t, e);\n}\nexport { _inherits as default };","function _isNativeReflectConstruct() {\n try {\n var t = !Boolean.prototype.valueOf.call(Reflect.construct(Boolean, [], function () {}));\n } catch (t) {}\n return (_isNativeReflectConstruct = function _isNativeReflectConstruct() {\n return !!t;\n })();\n}\nexport { _isNativeReflectConstruct as default };","import getPrototypeOf from \"./getPrototypeOf.js\";\nimport setPrototypeOf from \"./setPrototypeOf.js\";\nimport isNativeFunction from \"./isNativeFunction.js\";\nimport construct from \"./construct.js\";\nfunction _wrapNativeSuper(t) {\n var r = \"function\" == typeof Map ? new Map() : void 0;\n return _wrapNativeSuper = function _wrapNativeSuper(t) {\n if (null === t || !isNativeFunction(t)) return t;\n if (\"function\" != typeof t) throw new TypeError(\"Super expression must either be null or a function\");\n if (void 0 !== r) {\n if (r.has(t)) return r.get(t);\n r.set(t, Wrapper);\n }\n function Wrapper() {\n return construct(t, arguments, getPrototypeOf(this).constructor);\n }\n return Wrapper.prototype = Object.create(t.prototype, {\n constructor: {\n value: Wrapper,\n enumerable: !1,\n writable: !0,\n configurable: !0\n }\n }), setPrototypeOf(Wrapper, t);\n }, _wrapNativeSuper(t);\n}\nexport { _wrapNativeSuper as default };","function _isNativeFunction(t) {\n try {\n return -1 !== Function.toString.call(t).indexOf(\"[native code]\");\n } catch (n) {\n return \"function\" == typeof t;\n }\n}\nexport { _isNativeFunction as default };","import isNativeReflectConstruct from \"./isNativeReflectConstruct.js\";\nimport setPrototypeOf from \"./setPrototypeOf.js\";\nfunction _construct(t, e, r) {\n if (isNativeReflectConstruct()) return Reflect.construct.apply(null, arguments);\n var o = [null];\n o.push.apply(o, e);\n var p = new (t.bind.apply(t, o))();\n return r && setPrototypeOf(p, r.prototype), p;\n}\nexport { _construct as default };","export default class TypesenseError extends Error {\n httpStatus?: number;\n httpBody?: string;\n\n // Source: https://stackoverflow.com/a/58417721/123545\n constructor(message?: string, httpBody?: string, httpStatus?: number) {\n super(message);\n this.name = new.target.name;\n this.httpBody = httpBody;\n this.httpStatus = httpStatus;\n Object.setPrototypeOf(this, new.target.prototype);\n }\n}\n","import TypesenseError from \"./TypesenseError\";\n\nexport default class MissingConfigurationError extends TypesenseError {}\n","import * as logger from \"loglevel\";\nimport { Logger, LogLevelDesc } from \"loglevel\";\nimport { MissingConfigurationError } from \"./Errors\";\nimport type { Agent as HTTPAgent } from \"http\";\nimport type { Agent as HTTPSAgent } from \"https\";\nimport type { AxiosRequestConfig } from \"axios\";\n\nexport interface NodeConfiguration {\n host: string;\n port: number;\n protocol: string;\n path?: string;\n url?: string;\n}\n\nexport interface NodeConfigurationWithHostname {\n host: string;\n port: number;\n protocol: string;\n path?: string;\n}\n\nexport interface NodeConfigurationWithUrl {\n url: string;\n}\n\nexport interface ConfigurationOptions {\n apiKey: string;\n nodes:\n | NodeConfiguration[]\n | NodeConfigurationWithHostname[]\n | NodeConfigurationWithUrl[];\n randomizeNodes?: boolean;\n /**\n * @deprecated\n * masterNode is now consolidated to nodes, starting with Typesense Server v0.12'\n */\n masterNode?:\n | NodeConfiguration\n | NodeConfigurationWithHostname\n | NodeConfigurationWithUrl;\n /**\n * @deprecated\n * readReplicaNodes is now consolidated to nodes, starting with Typesense Server v0.12'\n */\n readReplicaNodes?:\n | NodeConfiguration[]\n | NodeConfigurationWithHostname[]\n | NodeConfigurationWithUrl[];\n nearestNode?:\n | NodeConfiguration\n | NodeConfigurationWithHostname\n | NodeConfigurationWithUrl;\n connectionTimeoutSeconds?: number;\n timeoutSeconds?: number;\n healthcheckIntervalSeconds?: number;\n numRetries?: number;\n retryIntervalSeconds?: number;\n sendApiKeyAsQueryParam?: boolean | undefined;\n useServerSideSearchCache?: boolean;\n cacheSearchResultsForSeconds?: number;\n additionalHeaders?: Record;\n\n logLevel?: LogLevelDesc;\n logger?: Logger;\n\n /**\n * Set a custom HTTP Agent\n *\n * This is helpful for eg, to enable keepAlive which helps prevents ECONNRESET socket hang up errors\n * Usage:\n * const { Agent: HTTPAgent } = require(\"http\");\n * ...\n * httpAgent: new HTTPAgent({ keepAlive: true }),\n * @type {HTTPAgent}\n */\n httpAgent?: HTTPAgent;\n\n /**\n * Set a custom HTTPS Agent\n *\n * This is helpful for eg, to enable keepAlive which helps prevents ECONNRESET socket hang up errors\n * Usage:\n * const { Agent: HTTPSAgent } = require(\"https\");\n * ...\n * httpsAgent: new HTTPSAgent({ keepAlive: true }),\n * @type {HTTPSAgent}\n */\n httpsAgent?: HTTPSAgent;\n\n /**\n * Set a custom paramsSerializer\n *\n * See axios documentation for more information on how to use this parameter: https://axios-http.com/docs/req_config\n * This is helpful for handling React Native issues like this: https://github.com/axios/axios/issues/6102#issuecomment-2085301397\n * @type {any}\n */\n paramsSerializer?: any;\n\n /**\n * Set a custom axios adapter\n *\n * Useful for customizing the underlying HTTP client library used by Typesense.\n *\n * For example, you can use this to use a custom HTTP client library like `fetch`, in order for the library to work on the edge.\n * Related GiHub issue: https://github.com/typesense/typesense-js/issues/161\n *\n * See axios documentation for more information on how to use this parameter: https://axios-http.com/docs/req_config\n */\n axiosAdapter?: AxiosRequestConfig[\"adapter\"];\n}\n\nexport default class Configuration {\n readonly nodes:\n | NodeConfiguration[]\n | NodeConfigurationWithHostname[]\n | NodeConfigurationWithUrl[];\n readonly nearestNode?:\n | NodeConfiguration\n | NodeConfigurationWithHostname\n | NodeConfigurationWithUrl;\n readonly connectionTimeoutSeconds: number;\n readonly healthcheckIntervalSeconds: number;\n readonly numRetries: number;\n readonly retryIntervalSeconds: number;\n readonly apiKey: string;\n readonly sendApiKeyAsQueryParam?: boolean;\n readonly cacheSearchResultsForSeconds: number;\n readonly useServerSideSearchCache: boolean;\n readonly logger: Logger;\n readonly logLevel: LogLevelDesc;\n readonly additionalHeaders?: Record;\n readonly httpAgent?: HTTPAgent;\n readonly httpsAgent?: HTTPSAgent;\n readonly paramsSerializer?: any;\n readonly axiosAdapter?: AxiosRequestConfig[\"adapter\"];\n\n constructor(options: ConfigurationOptions) {\n this.nodes = options.nodes || [];\n this.nodes = this.nodes\n .map((node) => this.setDefaultPathInNode(node))\n .map((node) => this.setDefaultPortInNode(node))\n .map((node) => ({ ...node })) as NodeConfiguration[]; // Make a deep copy\n\n if (options.randomizeNodes == null) {\n options.randomizeNodes = true;\n }\n\n if (options.randomizeNodes === true) {\n this.shuffleArray(this.nodes);\n }\n\n this.nearestNode = options.nearestNode;\n this.nearestNode = this.setDefaultPathInNode(this.nearestNode);\n this.nearestNode = this.setDefaultPortInNode(this.nearestNode);\n\n this.connectionTimeoutSeconds =\n options.connectionTimeoutSeconds || options.timeoutSeconds || 5;\n this.healthcheckIntervalSeconds = options.healthcheckIntervalSeconds || 60;\n this.numRetries =\n (options.numRetries !== undefined && options.numRetries >= 0\n ? options.numRetries\n : this.nodes.length + (this.nearestNode == null ? 0 : 1)) || 3;\n this.retryIntervalSeconds = options.retryIntervalSeconds || 0.1;\n\n this.apiKey = options.apiKey;\n this.sendApiKeyAsQueryParam = options.sendApiKeyAsQueryParam; // We will set a default for this in Client and SearchClient\n\n this.cacheSearchResultsForSeconds =\n options.cacheSearchResultsForSeconds || 0; // Disable client-side cache by default\n this.useServerSideSearchCache = options.useServerSideSearchCache || false;\n\n this.axiosAdapter = options.axiosAdapter;\n this.logger = options.logger || logger;\n this.logLevel = options.logLevel || \"warn\";\n this.logger.setLevel(this.logLevel);\n\n this.additionalHeaders = options.additionalHeaders;\n\n this.httpAgent = options.httpAgent;\n this.httpsAgent = options.httpsAgent;\n\n this.paramsSerializer = options.paramsSerializer;\n\n this.showDeprecationWarnings(options);\n this.validate();\n }\n\n validate(): boolean {\n if (this.nodes == null || this.nodes.length === 0 || this.validateNodes()) {\n throw new MissingConfigurationError(\n \"Ensure that nodes[].protocol, nodes[].host and nodes[].port are set\",\n );\n }\n\n if (\n this.nearestNode != null &&\n this.isNodeMissingAnyParameters(this.nearestNode)\n ) {\n throw new MissingConfigurationError(\n \"Ensure that nearestNodes.protocol, nearestNodes.host and nearestNodes.port are set\",\n );\n }\n\n if (this.apiKey == null) {\n throw new MissingConfigurationError(\"Ensure that apiKey is set\");\n }\n\n return true;\n }\n\n private validateNodes(): boolean {\n return this.nodes.some((node) => {\n return this.isNodeMissingAnyParameters(node);\n });\n }\n\n private isNodeMissingAnyParameters(\n node:\n | NodeConfiguration\n | NodeConfigurationWithHostname\n | NodeConfigurationWithUrl,\n ): boolean {\n return (\n ![\"protocol\", \"host\", \"port\", \"path\"].every((key) => {\n return node.hasOwnProperty(key);\n }) && node[\"url\"] == null\n );\n }\n\n private setDefaultPathInNode(\n node:\n | NodeConfiguration\n | NodeConfigurationWithHostname\n | NodeConfigurationWithUrl\n | undefined,\n ):\n | NodeConfiguration\n | NodeConfigurationWithHostname\n | NodeConfigurationWithUrl\n | undefined {\n if (node != null && !node.hasOwnProperty(\"path\")) {\n node[\"path\"] = \"\";\n }\n return node;\n }\n\n private setDefaultPortInNode(\n node:\n | NodeConfiguration\n | NodeConfigurationWithHostname\n | NodeConfigurationWithUrl\n | undefined,\n ):\n | NodeConfiguration\n | NodeConfigurationWithHostname\n | NodeConfigurationWithUrl\n | undefined {\n if (\n node != null &&\n !node.hasOwnProperty(\"port\") &&\n node.hasOwnProperty(\"protocol\")\n ) {\n switch (node[\"protocol\"]) {\n case \"https\":\n node[\"port\"] = 443;\n break;\n case \"http\":\n node[\"port\"] = 80;\n break;\n }\n }\n return node;\n }\n\n private showDeprecationWarnings(options: ConfigurationOptions): void {\n if (options.timeoutSeconds) {\n this.logger.warn(\n \"Deprecation warning: timeoutSeconds is now renamed to connectionTimeoutSeconds\",\n );\n }\n if (options.masterNode) {\n this.logger.warn(\n \"Deprecation warning: masterNode is now consolidated to nodes, starting with Typesense Server v0.12\",\n );\n }\n if (options.readReplicaNodes) {\n this.logger.warn(\n \"Deprecation warning: readReplicaNodes is now consolidated to nodes, starting with Typesense Server v0.12\",\n );\n }\n }\n\n private shuffleArray(array) {\n for (let i = array.length - 1; i > 0; i--) {\n const j = Math.floor(Math.random() * (i + 1));\n [array[i], array[j]] = [array[j], array[i]];\n }\n }\n}\n","function asyncGeneratorStep(n, t, e, r, o, a, c) {\n try {\n var i = n[a](c),\n u = i.value;\n } catch (n) {\n return void e(n);\n }\n i.done ? t(u) : Promise.resolve(u).then(r, o);\n}\nfunction _asyncToGenerator(n) {\n return function () {\n var t = this,\n e = arguments;\n return new Promise(function (r, o) {\n var a = n.apply(t, e);\n function _next(n) {\n asyncGeneratorStep(a, r, o, _next, _throw, \"next\", n);\n }\n function _throw(n) {\n asyncGeneratorStep(a, r, o, _next, _throw, \"throw\", n);\n }\n _next(void 0);\n });\n };\n}\nexport { _asyncToGenerator as default };","'use strict';\n\nexport default function bind(fn, thisArg) {\n return function wrap() {\n return fn.apply(thisArg, arguments);\n };\n}\n","'use strict';\n\nimport bind from './helpers/bind.js';\n\n// utils is a library of generic helper functions non-specific to axios\n\nconst {toString} = Object.prototype;\nconst {getPrototypeOf} = Object;\n\nconst kindOf = (cache => thing => {\n const str = toString.call(thing);\n return cache[str] || (cache[str] = str.slice(8, -1).toLowerCase());\n})(Object.create(null));\n\nconst kindOfTest = (type) => {\n type = type.toLowerCase();\n return (thing) => kindOf(thing) === type\n}\n\nconst typeOfTest = type => thing => typeof thing === type;\n\n/**\n * Determine if a value is an Array\n *\n * @param {Object} val The value to test\n *\n * @returns {boolean} True if value is an Array, otherwise false\n */\nconst {isArray} = Array;\n\n/**\n * Determine if a value is undefined\n *\n * @param {*} val The value to test\n *\n * @returns {boolean} True if the value is undefined, otherwise false\n */\nconst isUndefined = typeOfTest('undefined');\n\n/**\n * Determine if a value is a Buffer\n *\n * @param {*} val The value to test\n *\n * @returns {boolean} True if value is a Buffer, otherwise false\n */\nfunction isBuffer(val) {\n return val !== null && !isUndefined(val) && val.constructor !== null && !isUndefined(val.constructor)\n && isFunction(val.constructor.isBuffer) && val.constructor.isBuffer(val);\n}\n\n/**\n * Determine if a value is an ArrayBuffer\n *\n * @param {*} val The value to test\n *\n * @returns {boolean} True if value is an ArrayBuffer, otherwise false\n */\nconst isArrayBuffer = kindOfTest('ArrayBuffer');\n\n\n/**\n * Determine if a value is a view on an ArrayBuffer\n *\n * @param {*} val The value to test\n *\n * @returns {boolean} True if value is a view on an ArrayBuffer, otherwise false\n */\nfunction isArrayBufferView(val) {\n let result;\n if ((typeof ArrayBuffer !== 'undefined') && (ArrayBuffer.isView)) {\n result = ArrayBuffer.isView(val);\n } else {\n result = (val) && (val.buffer) && (isArrayBuffer(val.buffer));\n }\n return result;\n}\n\n/**\n * Determine if a value is a String\n *\n * @param {*} val The value to test\n *\n * @returns {boolean} True if value is a String, otherwise false\n */\nconst isString = typeOfTest('string');\n\n/**\n * Determine if a value is a Function\n *\n * @param {*} val The value to test\n * @returns {boolean} True if value is a Function, otherwise false\n */\nconst isFunction = typeOfTest('function');\n\n/**\n * Determine if a value is a Number\n *\n * @param {*} val The value to test\n *\n * @returns {boolean} True if value is a Number, otherwise false\n */\nconst isNumber = typeOfTest('number');\n\n/**\n * Determine if a value is an Object\n *\n * @param {*} thing The value to test\n *\n * @returns {boolean} True if value is an Object, otherwise false\n */\nconst isObject = (thing) => thing !== null && typeof thing === 'object';\n\n/**\n * Determine if a value is a Boolean\n *\n * @param {*} thing The value to test\n * @returns {boolean} True if value is a Boolean, otherwise false\n */\nconst isBoolean = thing => thing === true || thing === false;\n\n/**\n * Determine if a value is a plain Object\n *\n * @param {*} val The value to test\n *\n * @returns {boolean} True if value is a plain Object, otherwise false\n */\nconst isPlainObject = (val) => {\n if (kindOf(val) !== 'object') {\n return false;\n }\n\n const prototype = getPrototypeOf(val);\n return (prototype === null || prototype === Object.prototype || Object.getPrototypeOf(prototype) === null) && !(Symbol.toStringTag in val) && !(Symbol.iterator in val);\n}\n\n/**\n * Determine if a value is a Date\n *\n * @param {*} val The value to test\n *\n * @returns {boolean} True if value is a Date, otherwise false\n */\nconst isDate = kindOfTest('Date');\n\n/**\n * Determine if a value is a File\n *\n * @param {*} val The value to test\n *\n * @returns {boolean} True if value is a File, otherwise false\n */\nconst isFile = kindOfTest('File');\n\n/**\n * Determine if a value is a Blob\n *\n * @param {*} val The value to test\n *\n * @returns {boolean} True if value is a Blob, otherwise false\n */\nconst isBlob = kindOfTest('Blob');\n\n/**\n * Determine if a value is a FileList\n *\n * @param {*} val The value to test\n *\n * @returns {boolean} True if value is a File, otherwise false\n */\nconst isFileList = kindOfTest('FileList');\n\n/**\n * Determine if a value is a Stream\n *\n * @param {*} val The value to test\n *\n * @returns {boolean} True if value is a Stream, otherwise false\n */\nconst isStream = (val) => isObject(val) && isFunction(val.pipe);\n\n/**\n * Determine if a value is a FormData\n *\n * @param {*} thing The value to test\n *\n * @returns {boolean} True if value is an FormData, otherwise false\n */\nconst isFormData = (thing) => {\n let kind;\n return thing && (\n (typeof FormData === 'function' && thing instanceof FormData) || (\n isFunction(thing.append) && (\n (kind = kindOf(thing)) === 'formdata' ||\n // detect form-data instance\n (kind === 'object' && isFunction(thing.toString) && thing.toString() === '[object FormData]')\n )\n )\n )\n}\n\n/**\n * Determine if a value is a URLSearchParams object\n *\n * @param {*} val The value to test\n *\n * @returns {boolean} True if value is a URLSearchParams object, otherwise false\n */\nconst isURLSearchParams = kindOfTest('URLSearchParams');\n\nconst [isReadableStream, isRequest, isResponse, isHeaders] = ['ReadableStream', 'Request', 'Response', 'Headers'].map(kindOfTest);\n\n/**\n * Trim excess whitespace off the beginning and end of a string\n *\n * @param {String} str The String to trim\n *\n * @returns {String} The String freed of excess whitespace\n */\nconst trim = (str) => str.trim ?\n str.trim() : str.replace(/^[\\s\\uFEFF\\xA0]+|[\\s\\uFEFF\\xA0]+$/g, '');\n\n/**\n * Iterate over an Array or an Object invoking a function for each item.\n *\n * If `obj` is an Array callback will be called passing\n * the value, index, and complete array for each item.\n *\n * If 'obj' is an Object callback will be called passing\n * the value, key, and complete object for each property.\n *\n * @param {Object|Array} obj The object to iterate\n * @param {Function} fn The callback to invoke for each item\n *\n * @param {Boolean} [allOwnKeys = false]\n * @returns {any}\n */\nfunction forEach(obj, fn, {allOwnKeys = false} = {}) {\n // Don't bother if no value provided\n if (obj === null || typeof obj === 'undefined') {\n return;\n }\n\n let i;\n let l;\n\n // Force an array if not already something iterable\n if (typeof obj !== 'object') {\n /*eslint no-param-reassign:0*/\n obj = [obj];\n }\n\n if (isArray(obj)) {\n // Iterate over array values\n for (i = 0, l = obj.length; i < l; i++) {\n fn.call(null, obj[i], i, obj);\n }\n } else {\n // Iterate over object keys\n const keys = allOwnKeys ? Object.getOwnPropertyNames(obj) : Object.keys(obj);\n const len = keys.length;\n let key;\n\n for (i = 0; i < len; i++) {\n key = keys[i];\n fn.call(null, obj[key], key, obj);\n }\n }\n}\n\nfunction findKey(obj, key) {\n key = key.toLowerCase();\n const keys = Object.keys(obj);\n let i = keys.length;\n let _key;\n while (i-- > 0) {\n _key = keys[i];\n if (key === _key.toLowerCase()) {\n return _key;\n }\n }\n return null;\n}\n\nconst _global = (() => {\n /*eslint no-undef:0*/\n if (typeof globalThis !== \"undefined\") return globalThis;\n return typeof self !== \"undefined\" ? self : (typeof window !== 'undefined' ? window : global)\n})();\n\nconst isContextDefined = (context) => !isUndefined(context) && context !== _global;\n\n/**\n * Accepts varargs expecting each argument to be an object, then\n * immutably merges the properties of each object and returns result.\n *\n * When multiple objects contain the same key the later object in\n * the arguments list will take precedence.\n *\n * Example:\n *\n * ```js\n * var result = merge({foo: 123}, {foo: 456});\n * console.log(result.foo); // outputs 456\n * ```\n *\n * @param {Object} obj1 Object to merge\n *\n * @returns {Object} Result of all merge properties\n */\nfunction merge(/* obj1, obj2, obj3, ... */) {\n const {caseless} = isContextDefined(this) && this || {};\n const result = {};\n const assignValue = (val, key) => {\n const targetKey = caseless && findKey(result, key) || key;\n if (isPlainObject(result[targetKey]) && isPlainObject(val)) {\n result[targetKey] = merge(result[targetKey], val);\n } else if (isPlainObject(val)) {\n result[targetKey] = merge({}, val);\n } else if (isArray(val)) {\n result[targetKey] = val.slice();\n } else {\n result[targetKey] = val;\n }\n }\n\n for (let i = 0, l = arguments.length; i < l; i++) {\n arguments[i] && forEach(arguments[i], assignValue);\n }\n return result;\n}\n\n/**\n * Extends object a by mutably adding to it the properties of object b.\n *\n * @param {Object} a The object to be extended\n * @param {Object} b The object to copy properties from\n * @param {Object} thisArg The object to bind function to\n *\n * @param {Boolean} [allOwnKeys]\n * @returns {Object} The resulting value of object a\n */\nconst extend = (a, b, thisArg, {allOwnKeys}= {}) => {\n forEach(b, (val, key) => {\n if (thisArg && isFunction(val)) {\n a[key] = bind(val, thisArg);\n } else {\n a[key] = val;\n }\n }, {allOwnKeys});\n return a;\n}\n\n/**\n * Remove byte order marker. This catches EF BB BF (the UTF-8 BOM)\n *\n * @param {string} content with BOM\n *\n * @returns {string} content value without BOM\n */\nconst stripBOM = (content) => {\n if (content.charCodeAt(0) === 0xFEFF) {\n content = content.slice(1);\n }\n return content;\n}\n\n/**\n * Inherit the prototype methods from one constructor into another\n * @param {function} constructor\n * @param {function} superConstructor\n * @param {object} [props]\n * @param {object} [descriptors]\n *\n * @returns {void}\n */\nconst inherits = (constructor, superConstructor, props, descriptors) => {\n constructor.prototype = Object.create(superConstructor.prototype, descriptors);\n constructor.prototype.constructor = constructor;\n Object.defineProperty(constructor, 'super', {\n value: superConstructor.prototype\n });\n props && Object.assign(constructor.prototype, props);\n}\n\n/**\n * Resolve object with deep prototype chain to a flat object\n * @param {Object} sourceObj source object\n * @param {Object} [destObj]\n * @param {Function|Boolean} [filter]\n * @param {Function} [propFilter]\n *\n * @returns {Object}\n */\nconst toFlatObject = (sourceObj, destObj, filter, propFilter) => {\n let props;\n let i;\n let prop;\n const merged = {};\n\n destObj = destObj || {};\n // eslint-disable-next-line no-eq-null,eqeqeq\n if (sourceObj == null) return destObj;\n\n do {\n props = Object.getOwnPropertyNames(sourceObj);\n i = props.length;\n while (i-- > 0) {\n prop = props[i];\n if ((!propFilter || propFilter(prop, sourceObj, destObj)) && !merged[prop]) {\n destObj[prop] = sourceObj[prop];\n merged[prop] = true;\n }\n }\n sourceObj = filter !== false && getPrototypeOf(sourceObj);\n } while (sourceObj && (!filter || filter(sourceObj, destObj)) && sourceObj !== Object.prototype);\n\n return destObj;\n}\n\n/**\n * Determines whether a string ends with the characters of a specified string\n *\n * @param {String} str\n * @param {String} searchString\n * @param {Number} [position= 0]\n *\n * @returns {boolean}\n */\nconst endsWith = (str, searchString, position) => {\n str = String(str);\n if (position === undefined || position > str.length) {\n position = str.length;\n }\n position -= searchString.length;\n const lastIndex = str.indexOf(searchString, position);\n return lastIndex !== -1 && lastIndex === position;\n}\n\n\n/**\n * Returns new array from array like object or null if failed\n *\n * @param {*} [thing]\n *\n * @returns {?Array}\n */\nconst toArray = (thing) => {\n if (!thing) return null;\n if (isArray(thing)) return thing;\n let i = thing.length;\n if (!isNumber(i)) return null;\n const arr = new Array(i);\n while (i-- > 0) {\n arr[i] = thing[i];\n }\n return arr;\n}\n\n/**\n * Checking if the Uint8Array exists and if it does, it returns a function that checks if the\n * thing passed in is an instance of Uint8Array\n *\n * @param {TypedArray}\n *\n * @returns {Array}\n */\n// eslint-disable-next-line func-names\nconst isTypedArray = (TypedArray => {\n // eslint-disable-next-line func-names\n return thing => {\n return TypedArray && thing instanceof TypedArray;\n };\n})(typeof Uint8Array !== 'undefined' && getPrototypeOf(Uint8Array));\n\n/**\n * For each entry in the object, call the function with the key and value.\n *\n * @param {Object} obj - The object to iterate over.\n * @param {Function} fn - The function to call for each entry.\n *\n * @returns {void}\n */\nconst forEachEntry = (obj, fn) => {\n const generator = obj && obj[Symbol.iterator];\n\n const iterator = generator.call(obj);\n\n let result;\n\n while ((result = iterator.next()) && !result.done) {\n const pair = result.value;\n fn.call(obj, pair[0], pair[1]);\n }\n}\n\n/**\n * It takes a regular expression and a string, and returns an array of all the matches\n *\n * @param {string} regExp - The regular expression to match against.\n * @param {string} str - The string to search.\n *\n * @returns {Array}\n */\nconst matchAll = (regExp, str) => {\n let matches;\n const arr = [];\n\n while ((matches = regExp.exec(str)) !== null) {\n arr.push(matches);\n }\n\n return arr;\n}\n\n/* Checking if the kindOfTest function returns true when passed an HTMLFormElement. */\nconst isHTMLForm = kindOfTest('HTMLFormElement');\n\nconst toCamelCase = str => {\n return str.toLowerCase().replace(/[-_\\s]([a-z\\d])(\\w*)/g,\n function replacer(m, p1, p2) {\n return p1.toUpperCase() + p2;\n }\n );\n};\n\n/* Creating a function that will check if an object has a property. */\nconst hasOwnProperty = (({hasOwnProperty}) => (obj, prop) => hasOwnProperty.call(obj, prop))(Object.prototype);\n\n/**\n * Determine if a value is a RegExp object\n *\n * @param {*} val The value to test\n *\n * @returns {boolean} True if value is a RegExp object, otherwise false\n */\nconst isRegExp = kindOfTest('RegExp');\n\nconst reduceDescriptors = (obj, reducer) => {\n const descriptors = Object.getOwnPropertyDescriptors(obj);\n const reducedDescriptors = {};\n\n forEach(descriptors, (descriptor, name) => {\n let ret;\n if ((ret = reducer(descriptor, name, obj)) !== false) {\n reducedDescriptors[name] = ret || descriptor;\n }\n });\n\n Object.defineProperties(obj, reducedDescriptors);\n}\n\n/**\n * Makes all methods read-only\n * @param {Object} obj\n */\n\nconst freezeMethods = (obj) => {\n reduceDescriptors(obj, (descriptor, name) => {\n // skip restricted props in strict mode\n if (isFunction(obj) && ['arguments', 'caller', 'callee'].indexOf(name) !== -1) {\n return false;\n }\n\n const value = obj[name];\n\n if (!isFunction(value)) return;\n\n descriptor.enumerable = false;\n\n if ('writable' in descriptor) {\n descriptor.writable = false;\n return;\n }\n\n if (!descriptor.set) {\n descriptor.set = () => {\n throw Error('Can not rewrite read-only method \\'' + name + '\\'');\n };\n }\n });\n}\n\nconst toObjectSet = (arrayOrString, delimiter) => {\n const obj = {};\n\n const define = (arr) => {\n arr.forEach(value => {\n obj[value] = true;\n });\n }\n\n isArray(arrayOrString) ? define(arrayOrString) : define(String(arrayOrString).split(delimiter));\n\n return obj;\n}\n\nconst noop = () => {}\n\nconst toFiniteNumber = (value, defaultValue) => {\n return value != null && Number.isFinite(value = +value) ? value : defaultValue;\n}\n\nconst ALPHA = 'abcdefghijklmnopqrstuvwxyz'\n\nconst DIGIT = '0123456789';\n\nconst ALPHABET = {\n DIGIT,\n ALPHA,\n ALPHA_DIGIT: ALPHA + ALPHA.toUpperCase() + DIGIT\n}\n\nconst generateString = (size = 16, alphabet = ALPHABET.ALPHA_DIGIT) => {\n let str = '';\n const {length} = alphabet;\n while (size--) {\n str += alphabet[Math.random() * length|0]\n }\n\n return str;\n}\n\n/**\n * If the thing is a FormData object, return true, otherwise return false.\n *\n * @param {unknown} thing - The thing to check.\n *\n * @returns {boolean}\n */\nfunction isSpecCompliantForm(thing) {\n return !!(thing && isFunction(thing.append) && thing[Symbol.toStringTag] === 'FormData' && thing[Symbol.iterator]);\n}\n\nconst toJSONObject = (obj) => {\n const stack = new Array(10);\n\n const visit = (source, i) => {\n\n if (isObject(source)) {\n if (stack.indexOf(source) >= 0) {\n return;\n }\n\n if(!('toJSON' in source)) {\n stack[i] = source;\n const target = isArray(source) ? [] : {};\n\n forEach(source, (value, key) => {\n const reducedValue = visit(value, i + 1);\n !isUndefined(reducedValue) && (target[key] = reducedValue);\n });\n\n stack[i] = undefined;\n\n return target;\n }\n }\n\n return source;\n }\n\n return visit(obj, 0);\n}\n\nconst isAsyncFn = kindOfTest('AsyncFunction');\n\nconst isThenable = (thing) =>\n thing && (isObject(thing) || isFunction(thing)) && isFunction(thing.then) && isFunction(thing.catch);\n\n// original code\n// https://github.com/DigitalBrainJS/AxiosPromise/blob/16deab13710ec09779922131f3fa5954320f83ab/lib/utils.js#L11-L34\n\nconst _setImmediate = ((setImmediateSupported, postMessageSupported) => {\n if (setImmediateSupported) {\n return setImmediate;\n }\n\n return postMessageSupported ? ((token, callbacks) => {\n _global.addEventListener(\"message\", ({source, data}) => {\n if (source === _global && data === token) {\n callbacks.length && callbacks.shift()();\n }\n }, false);\n\n return (cb) => {\n callbacks.push(cb);\n _global.postMessage(token, \"*\");\n }\n })(`axios@${Math.random()}`, []) : (cb) => setTimeout(cb);\n})(\n typeof setImmediate === 'function',\n isFunction(_global.postMessage)\n);\n\nconst asap = typeof queueMicrotask !== 'undefined' ?\n queueMicrotask.bind(_global) : ( typeof process !== 'undefined' && process.nextTick || _setImmediate);\n\n// *********************\n\nexport default {\n isArray,\n isArrayBuffer,\n isBuffer,\n isFormData,\n isArrayBufferView,\n isString,\n isNumber,\n isBoolean,\n isObject,\n isPlainObject,\n isReadableStream,\n isRequest,\n isResponse,\n isHeaders,\n isUndefined,\n isDate,\n isFile,\n isBlob,\n isRegExp,\n isFunction,\n isStream,\n isURLSearchParams,\n isTypedArray,\n isFileList,\n forEach,\n merge,\n extend,\n trim,\n stripBOM,\n inherits,\n toFlatObject,\n kindOf,\n kindOfTest,\n endsWith,\n toArray,\n forEachEntry,\n matchAll,\n isHTMLForm,\n hasOwnProperty,\n hasOwnProp: hasOwnProperty, // an alias to avoid ESLint no-prototype-builtins detection\n reduceDescriptors,\n freezeMethods,\n toObjectSet,\n toCamelCase,\n noop,\n toFiniteNumber,\n findKey,\n global: _global,\n isContextDefined,\n ALPHABET,\n generateString,\n isSpecCompliantForm,\n toJSONObject,\n isAsyncFn,\n isThenable,\n setImmediate: _setImmediate,\n asap\n};\n","'use strict';\n\nimport utils from '../utils.js';\n\n/**\n * Create an Error with the specified message, config, error code, request and response.\n *\n * @param {string} message The error message.\n * @param {string} [code] The error code (for example, 'ECONNABORTED').\n * @param {Object} [config] The config.\n * @param {Object} [request] The request.\n * @param {Object} [response] The response.\n *\n * @returns {Error} The created error.\n */\nfunction AxiosError(message, code, config, request, response) {\n Error.call(this);\n\n if (Error.captureStackTrace) {\n Error.captureStackTrace(this, this.constructor);\n } else {\n this.stack = (new Error()).stack;\n }\n\n this.message = message;\n this.name = 'AxiosError';\n code && (this.code = code);\n config && (this.config = config);\n request && (this.request = request);\n if (response) {\n this.response = response;\n this.status = response.status ? response.status : null;\n }\n}\n\nutils.inherits(AxiosError, Error, {\n toJSON: function toJSON() {\n return {\n // Standard\n message: this.message,\n name: this.name,\n // Microsoft\n description: this.description,\n number: this.number,\n // Mozilla\n fileName: this.fileName,\n lineNumber: this.lineNumber,\n columnNumber: this.columnNumber,\n stack: this.stack,\n // Axios\n config: utils.toJSONObject(this.config),\n code: this.code,\n status: this.status\n };\n }\n});\n\nconst prototype = AxiosError.prototype;\nconst descriptors = {};\n\n[\n 'ERR_BAD_OPTION_VALUE',\n 'ERR_BAD_OPTION',\n 'ECONNABORTED',\n 'ETIMEDOUT',\n 'ERR_NETWORK',\n 'ERR_FR_TOO_MANY_REDIRECTS',\n 'ERR_DEPRECATED',\n 'ERR_BAD_RESPONSE',\n 'ERR_BAD_REQUEST',\n 'ERR_CANCELED',\n 'ERR_NOT_SUPPORT',\n 'ERR_INVALID_URL'\n// eslint-disable-next-line func-names\n].forEach(code => {\n descriptors[code] = {value: code};\n});\n\nObject.defineProperties(AxiosError, descriptors);\nObject.defineProperty(prototype, 'isAxiosError', {value: true});\n\n// eslint-disable-next-line func-names\nAxiosError.from = (error, code, config, request, response, customProps) => {\n const axiosError = Object.create(prototype);\n\n utils.toFlatObject(error, axiosError, function filter(obj) {\n return obj !== Error.prototype;\n }, prop => {\n return prop !== 'isAxiosError';\n });\n\n AxiosError.call(axiosError, error.message, code, config, request, response);\n\n axiosError.cause = error;\n\n axiosError.name = error.name;\n\n customProps && Object.assign(axiosError, customProps);\n\n return axiosError;\n};\n\nexport default AxiosError;\n","'use strict';\n\nimport utils from '../utils.js';\nimport AxiosError from '../core/AxiosError.js';\n// temporary hotfix to avoid circular references until AxiosURLSearchParams is refactored\nimport PlatformFormData from '../platform/node/classes/FormData.js';\n\n/**\n * Determines if the given thing is a array or js object.\n *\n * @param {string} thing - The object or array to be visited.\n *\n * @returns {boolean}\n */\nfunction isVisitable(thing) {\n return utils.isPlainObject(thing) || utils.isArray(thing);\n}\n\n/**\n * It removes the brackets from the end of a string\n *\n * @param {string} key - The key of the parameter.\n *\n * @returns {string} the key without the brackets.\n */\nfunction removeBrackets(key) {\n return utils.endsWith(key, '[]') ? key.slice(0, -2) : key;\n}\n\n/**\n * It takes a path, a key, and a boolean, and returns a string\n *\n * @param {string} path - The path to the current key.\n * @param {string} key - The key of the current object being iterated over.\n * @param {string} dots - If true, the key will be rendered with dots instead of brackets.\n *\n * @returns {string} The path to the current key.\n */\nfunction renderKey(path, key, dots) {\n if (!path) return key;\n return path.concat(key).map(function each(token, i) {\n // eslint-disable-next-line no-param-reassign\n token = removeBrackets(token);\n return !dots && i ? '[' + token + ']' : token;\n }).join(dots ? '.' : '');\n}\n\n/**\n * If the array is an array and none of its elements are visitable, then it's a flat array.\n *\n * @param {Array} arr - The array to check\n *\n * @returns {boolean}\n */\nfunction isFlatArray(arr) {\n return utils.isArray(arr) && !arr.some(isVisitable);\n}\n\nconst predicates = utils.toFlatObject(utils, {}, null, function filter(prop) {\n return /^is[A-Z]/.test(prop);\n});\n\n/**\n * Convert a data object to FormData\n *\n * @param {Object} obj\n * @param {?Object} [formData]\n * @param {?Object} [options]\n * @param {Function} [options.visitor]\n * @param {Boolean} [options.metaTokens = true]\n * @param {Boolean} [options.dots = false]\n * @param {?Boolean} [options.indexes = false]\n *\n * @returns {Object}\n **/\n\n/**\n * It converts an object into a FormData object\n *\n * @param {Object} obj - The object to convert to form data.\n * @param {string} formData - The FormData object to append to.\n * @param {Object} options\n *\n * @returns\n */\nfunction toFormData(obj, formData, options) {\n if (!utils.isObject(obj)) {\n throw new TypeError('target must be an object');\n }\n\n // eslint-disable-next-line no-param-reassign\n formData = formData || new (PlatformFormData || FormData)();\n\n // eslint-disable-next-line no-param-reassign\n options = utils.toFlatObject(options, {\n metaTokens: true,\n dots: false,\n indexes: false\n }, false, function defined(option, source) {\n // eslint-disable-next-line no-eq-null,eqeqeq\n return !utils.isUndefined(source[option]);\n });\n\n const metaTokens = options.metaTokens;\n // eslint-disable-next-line no-use-before-define\n const visitor = options.visitor || defaultVisitor;\n const dots = options.dots;\n const indexes = options.indexes;\n const _Blob = options.Blob || typeof Blob !== 'undefined' && Blob;\n const useBlob = _Blob && utils.isSpecCompliantForm(formData);\n\n if (!utils.isFunction(visitor)) {\n throw new TypeError('visitor must be a function');\n }\n\n function convertValue(value) {\n if (value === null) return '';\n\n if (utils.isDate(value)) {\n return value.toISOString();\n }\n\n if (!useBlob && utils.isBlob(value)) {\n throw new AxiosError('Blob is not supported. Use a Buffer instead.');\n }\n\n if (utils.isArrayBuffer(value) || utils.isTypedArray(value)) {\n return useBlob && typeof Blob === 'function' ? new Blob([value]) : Buffer.from(value);\n }\n\n return value;\n }\n\n /**\n * Default visitor.\n *\n * @param {*} value\n * @param {String|Number} key\n * @param {Array} path\n * @this {FormData}\n *\n * @returns {boolean} return true to visit the each prop of the value recursively\n */\n function defaultVisitor(value, key, path) {\n let arr = value;\n\n if (value && !path && typeof value === 'object') {\n if (utils.endsWith(key, '{}')) {\n // eslint-disable-next-line no-param-reassign\n key = metaTokens ? key : key.slice(0, -2);\n // eslint-disable-next-line no-param-reassign\n value = JSON.stringify(value);\n } else if (\n (utils.isArray(value) && isFlatArray(value)) ||\n ((utils.isFileList(value) || utils.endsWith(key, '[]')) && (arr = utils.toArray(value))\n )) {\n // eslint-disable-next-line no-param-reassign\n key = removeBrackets(key);\n\n arr.forEach(function each(el, index) {\n !(utils.isUndefined(el) || el === null) && formData.append(\n // eslint-disable-next-line no-nested-ternary\n indexes === true ? renderKey([key], index, dots) : (indexes === null ? key : key + '[]'),\n convertValue(el)\n );\n });\n return false;\n }\n }\n\n if (isVisitable(value)) {\n return true;\n }\n\n formData.append(renderKey(path, key, dots), convertValue(value));\n\n return false;\n }\n\n const stack = [];\n\n const exposedHelpers = Object.assign(predicates, {\n defaultVisitor,\n convertValue,\n isVisitable\n });\n\n function build(value, path) {\n if (utils.isUndefined(value)) return;\n\n if (stack.indexOf(value) !== -1) {\n throw Error('Circular reference detected in ' + path.join('.'));\n }\n\n stack.push(value);\n\n utils.forEach(value, function each(el, key) {\n const result = !(utils.isUndefined(el) || el === null) && visitor.call(\n formData, el, utils.isString(key) ? key.trim() : key, path, exposedHelpers\n );\n\n if (result === true) {\n build(el, path ? path.concat(key) : [key]);\n }\n });\n\n stack.pop();\n }\n\n if (!utils.isObject(obj)) {\n throw new TypeError('data must be an object');\n }\n\n build(obj);\n\n return formData;\n}\n\nexport default toFormData;\n","'use strict';\n\nimport toFormData from './toFormData.js';\n\n/**\n * It encodes a string by replacing all characters that are not in the unreserved set with\n * their percent-encoded equivalents\n *\n * @param {string} str - The string to encode.\n *\n * @returns {string} The encoded string.\n */\nfunction encode(str) {\n const charMap = {\n '!': '%21',\n \"'\": '%27',\n '(': '%28',\n ')': '%29',\n '~': '%7E',\n '%20': '+',\n '%00': '\\x00'\n };\n return encodeURIComponent(str).replace(/[!'()~]|%20|%00/g, function replacer(match) {\n return charMap[match];\n });\n}\n\n/**\n * It takes a params object and converts it to a FormData object\n *\n * @param {Object} params - The parameters to be converted to a FormData object.\n * @param {Object} options - The options object passed to the Axios constructor.\n *\n * @returns {void}\n */\nfunction AxiosURLSearchParams(params, options) {\n this._pairs = [];\n\n params && toFormData(params, this, options);\n}\n\nconst prototype = AxiosURLSearchParams.prototype;\n\nprototype.append = function append(name, value) {\n this._pairs.push([name, value]);\n};\n\nprototype.toString = function toString(encoder) {\n const _encode = encoder ? function(value) {\n return encoder.call(this, value, encode);\n } : encode;\n\n return this._pairs.map(function each(pair) {\n return _encode(pair[0]) + '=' + _encode(pair[1]);\n }, '').join('&');\n};\n\nexport default AxiosURLSearchParams;\n","'use strict';\n\nimport utils from '../utils.js';\nimport AxiosURLSearchParams from '../helpers/AxiosURLSearchParams.js';\n\n/**\n * It replaces all instances of the characters `:`, `$`, `,`, `+`, `[`, and `]` with their\n * URI encoded counterparts\n *\n * @param {string} val The value to be encoded.\n *\n * @returns {string} The encoded value.\n */\nfunction encode(val) {\n return encodeURIComponent(val).\n replace(/%3A/gi, ':').\n replace(/%24/g, '$').\n replace(/%2C/gi, ',').\n replace(/%20/g, '+').\n replace(/%5B/gi, '[').\n replace(/%5D/gi, ']');\n}\n\n/**\n * Build a URL by appending params to the end\n *\n * @param {string} url The base of the url (e.g., http://www.google.com)\n * @param {object} [params] The params to be appended\n * @param {?(object|Function)} options\n *\n * @returns {string} The formatted url\n */\nexport default function buildURL(url, params, options) {\n /*eslint no-param-reassign:0*/\n if (!params) {\n return url;\n }\n \n const _encode = options && options.encode || encode;\n\n if (utils.isFunction(options)) {\n options = {\n serialize: options\n };\n } \n\n const serializeFn = options && options.serialize;\n\n let serializedParams;\n\n if (serializeFn) {\n serializedParams = serializeFn(params, options);\n } else {\n serializedParams = utils.isURLSearchParams(params) ?\n params.toString() :\n new AxiosURLSearchParams(params, options).toString(_encode);\n }\n\n if (serializedParams) {\n const hashmarkIndex = url.indexOf(\"#\");\n\n if (hashmarkIndex !== -1) {\n url = url.slice(0, hashmarkIndex);\n }\n url += (url.indexOf('?') === -1 ? '?' : '&') + serializedParams;\n }\n\n return url;\n}\n","'use strict';\n\nimport utils from './../utils.js';\n\nclass InterceptorManager {\n constructor() {\n this.handlers = [];\n }\n\n /**\n * Add a new interceptor to the stack\n *\n * @param {Function} fulfilled The function to handle `then` for a `Promise`\n * @param {Function} rejected The function to handle `reject` for a `Promise`\n *\n * @return {Number} An ID used to remove interceptor later\n */\n use(fulfilled, rejected, options) {\n this.handlers.push({\n fulfilled,\n rejected,\n synchronous: options ? options.synchronous : false,\n runWhen: options ? options.runWhen : null\n });\n return this.handlers.length - 1;\n }\n\n /**\n * Remove an interceptor from the stack\n *\n * @param {Number} id The ID that was returned by `use`\n *\n * @returns {Boolean} `true` if the interceptor was removed, `false` otherwise\n */\n eject(id) {\n if (this.handlers[id]) {\n this.handlers[id] = null;\n }\n }\n\n /**\n * Clear all interceptors from the stack\n *\n * @returns {void}\n */\n clear() {\n if (this.handlers) {\n this.handlers = [];\n }\n }\n\n /**\n * Iterate over all the registered interceptors\n *\n * This method is particularly useful for skipping over any\n * interceptors that may have become `null` calling `eject`.\n *\n * @param {Function} fn The function to call for each interceptor\n *\n * @returns {void}\n */\n forEach(fn) {\n utils.forEach(this.handlers, function forEachHandler(h) {\n if (h !== null) {\n fn(h);\n }\n });\n }\n}\n\nexport default InterceptorManager;\n","'use strict';\n\nexport default {\n silentJSONParsing: true,\n forcedJSONParsing: true,\n clarifyTimeoutError: false\n};\n","import URLSearchParams from './classes/URLSearchParams.js'\nimport FormData from './classes/FormData.js'\nimport Blob from './classes/Blob.js'\n\nexport default {\n isBrowser: true,\n classes: {\n URLSearchParams,\n FormData,\n Blob\n },\n protocols: ['http', 'https', 'file', 'blob', 'url', 'data']\n};\n","'use strict';\n\nimport AxiosURLSearchParams from '../../../helpers/AxiosURLSearchParams.js';\nexport default typeof URLSearchParams !== 'undefined' ? URLSearchParams : AxiosURLSearchParams;\n","'use strict';\n\nexport default typeof FormData !== 'undefined' ? FormData : null;\n","'use strict'\n\nexport default typeof Blob !== 'undefined' ? Blob : null\n","const hasBrowserEnv = typeof window !== 'undefined' && typeof document !== 'undefined';\n\nconst _navigator = typeof navigator === 'object' && navigator || undefined;\n\n/**\n * Determine if we're running in a standard browser environment\n *\n * This allows axios to run in a web worker, and react-native.\n * Both environments support XMLHttpRequest, but not fully standard globals.\n *\n * web workers:\n * typeof window -> undefined\n * typeof document -> undefined\n *\n * react-native:\n * navigator.product -> 'ReactNative'\n * nativescript\n * navigator.product -> 'NativeScript' or 'NS'\n *\n * @returns {boolean}\n */\nconst hasStandardBrowserEnv = hasBrowserEnv &&\n (!_navigator || ['ReactNative', 'NativeScript', 'NS'].indexOf(_navigator.product) < 0);\n\n/**\n * Determine if we're running in a standard browser webWorker environment\n *\n * Although the `isStandardBrowserEnv` method indicates that\n * `allows axios to run in a web worker`, the WebWorker will still be\n * filtered out due to its judgment standard\n * `typeof window !== 'undefined' && typeof document !== 'undefined'`.\n * This leads to a problem when axios post `FormData` in webWorker\n */\nconst hasStandardBrowserWebWorkerEnv = (() => {\n return (\n typeof WorkerGlobalScope !== 'undefined' &&\n // eslint-disable-next-line no-undef\n self instanceof WorkerGlobalScope &&\n typeof self.importScripts === 'function'\n );\n})();\n\nconst origin = hasBrowserEnv && window.location.href || 'http://localhost';\n\nexport {\n hasBrowserEnv,\n hasStandardBrowserWebWorkerEnv,\n hasStandardBrowserEnv,\n _navigator as navigator,\n origin\n}\n","import platform from './node/index.js';\nimport * as utils from './common/utils.js';\n\nexport default {\n ...utils,\n ...platform\n}\n","'use strict';\n\nimport utils from '../utils.js';\n\n/**\n * It takes a string like `foo[x][y][z]` and returns an array like `['foo', 'x', 'y', 'z']\n *\n * @param {string} name - The name of the property to get.\n *\n * @returns An array of strings.\n */\nfunction parsePropPath(name) {\n // foo[x][y][z]\n // foo.x.y.z\n // foo-x-y-z\n // foo x y z\n return utils.matchAll(/\\w+|\\[(\\w*)]/g, name).map(match => {\n return match[0] === '[]' ? '' : match[1] || match[0];\n });\n}\n\n/**\n * Convert an array to an object.\n *\n * @param {Array} arr - The array to convert to an object.\n *\n * @returns An object with the same keys and values as the array.\n */\nfunction arrayToObject(arr) {\n const obj = {};\n const keys = Object.keys(arr);\n let i;\n const len = keys.length;\n let key;\n for (i = 0; i < len; i++) {\n key = keys[i];\n obj[key] = arr[key];\n }\n return obj;\n}\n\n/**\n * It takes a FormData object and returns a JavaScript object\n *\n * @param {string} formData The FormData object to convert to JSON.\n *\n * @returns {Object | null} The converted object.\n */\nfunction formDataToJSON(formData) {\n function buildPath(path, value, target, index) {\n let name = path[index++];\n\n if (name === '__proto__') return true;\n\n const isNumericKey = Number.isFinite(+name);\n const isLast = index >= path.length;\n name = !name && utils.isArray(target) ? target.length : name;\n\n if (isLast) {\n if (utils.hasOwnProp(target, name)) {\n target[name] = [target[name], value];\n } else {\n target[name] = value;\n }\n\n return !isNumericKey;\n }\n\n if (!target[name] || !utils.isObject(target[name])) {\n target[name] = [];\n }\n\n const result = buildPath(path, value, target[name], index);\n\n if (result && utils.isArray(target[name])) {\n target[name] = arrayToObject(target[name]);\n }\n\n return !isNumericKey;\n }\n\n if (utils.isFormData(formData) && utils.isFunction(formData.entries)) {\n const obj = {};\n\n utils.forEachEntry(formData, (name, value) => {\n buildPath(parsePropPath(name), value, obj, 0);\n });\n\n return obj;\n }\n\n return null;\n}\n\nexport default formDataToJSON;\n","'use strict';\n\nimport utils from '../utils.js';\nimport AxiosError from '../core/AxiosError.js';\nimport transitionalDefaults from './transitional.js';\nimport toFormData from '../helpers/toFormData.js';\nimport toURLEncodedForm from '../helpers/toURLEncodedForm.js';\nimport platform from '../platform/index.js';\nimport formDataToJSON from '../helpers/formDataToJSON.js';\n\n/**\n * It takes a string, tries to parse it, and if it fails, it returns the stringified version\n * of the input\n *\n * @param {any} rawValue - The value to be stringified.\n * @param {Function} parser - A function that parses a string into a JavaScript object.\n * @param {Function} encoder - A function that takes a value and returns a string.\n *\n * @returns {string} A stringified version of the rawValue.\n */\nfunction stringifySafely(rawValue, parser, encoder) {\n if (utils.isString(rawValue)) {\n try {\n (parser || JSON.parse)(rawValue);\n return utils.trim(rawValue);\n } catch (e) {\n if (e.name !== 'SyntaxError') {\n throw e;\n }\n }\n }\n\n return (encoder || JSON.stringify)(rawValue);\n}\n\nconst defaults = {\n\n transitional: transitionalDefaults,\n\n adapter: ['xhr', 'http', 'fetch'],\n\n transformRequest: [function transformRequest(data, headers) {\n const contentType = headers.getContentType() || '';\n const hasJSONContentType = contentType.indexOf('application/json') > -1;\n const isObjectPayload = utils.isObject(data);\n\n if (isObjectPayload && utils.isHTMLForm(data)) {\n data = new FormData(data);\n }\n\n const isFormData = utils.isFormData(data);\n\n if (isFormData) {\n return hasJSONContentType ? JSON.stringify(formDataToJSON(data)) : data;\n }\n\n if (utils.isArrayBuffer(data) ||\n utils.isBuffer(data) ||\n utils.isStream(data) ||\n utils.isFile(data) ||\n utils.isBlob(data) ||\n utils.isReadableStream(data)\n ) {\n return data;\n }\n if (utils.isArrayBufferView(data)) {\n return data.buffer;\n }\n if (utils.isURLSearchParams(data)) {\n headers.setContentType('application/x-www-form-urlencoded;charset=utf-8', false);\n return data.toString();\n }\n\n let isFileList;\n\n if (isObjectPayload) {\n if (contentType.indexOf('application/x-www-form-urlencoded') > -1) {\n return toURLEncodedForm(data, this.formSerializer).toString();\n }\n\n if ((isFileList = utils.isFileList(data)) || contentType.indexOf('multipart/form-data') > -1) {\n const _FormData = this.env && this.env.FormData;\n\n return toFormData(\n isFileList ? {'files[]': data} : data,\n _FormData && new _FormData(),\n this.formSerializer\n );\n }\n }\n\n if (isObjectPayload || hasJSONContentType ) {\n headers.setContentType('application/json', false);\n return stringifySafely(data);\n }\n\n return data;\n }],\n\n transformResponse: [function transformResponse(data) {\n const transitional = this.transitional || defaults.transitional;\n const forcedJSONParsing = transitional && transitional.forcedJSONParsing;\n const JSONRequested = this.responseType === 'json';\n\n if (utils.isResponse(data) || utils.isReadableStream(data)) {\n return data;\n }\n\n if (data && utils.isString(data) && ((forcedJSONParsing && !this.responseType) || JSONRequested)) {\n const silentJSONParsing = transitional && transitional.silentJSONParsing;\n const strictJSONParsing = !silentJSONParsing && JSONRequested;\n\n try {\n return JSON.parse(data);\n } catch (e) {\n if (strictJSONParsing) {\n if (e.name === 'SyntaxError') {\n throw AxiosError.from(e, AxiosError.ERR_BAD_RESPONSE, this, null, this.response);\n }\n throw e;\n }\n }\n }\n\n return data;\n }],\n\n /**\n * A timeout in milliseconds to abort a request. If set to 0 (default) a\n * timeout is not created.\n */\n timeout: 0,\n\n xsrfCookieName: 'XSRF-TOKEN',\n xsrfHeaderName: 'X-XSRF-TOKEN',\n\n maxContentLength: -1,\n maxBodyLength: -1,\n\n env: {\n FormData: platform.classes.FormData,\n Blob: platform.classes.Blob\n },\n\n validateStatus: function validateStatus(status) {\n return status >= 200 && status < 300;\n },\n\n headers: {\n common: {\n 'Accept': 'application/json, text/plain, */*',\n 'Content-Type': undefined\n }\n }\n};\n\nutils.forEach(['delete', 'get', 'head', 'post', 'put', 'patch'], (method) => {\n defaults.headers[method] = {};\n});\n\nexport default defaults;\n","'use strict';\n\nimport utils from '../utils.js';\nimport toFormData from './toFormData.js';\nimport platform from '../platform/index.js';\n\nexport default function toURLEncodedForm(data, options) {\n return toFormData(data, new platform.classes.URLSearchParams(), Object.assign({\n visitor: function(value, key, path, helpers) {\n if (platform.isNode && utils.isBuffer(value)) {\n this.append(key, value.toString('base64'));\n return false;\n }\n\n return helpers.defaultVisitor.apply(this, arguments);\n }\n }, options));\n}\n","'use strict';\n\nimport utils from './../utils.js';\n\n// RawAxiosHeaders whose duplicates are ignored by node\n// c.f. https://nodejs.org/api/http.html#http_message_headers\nconst ignoreDuplicateOf = utils.toObjectSet([\n 'age', 'authorization', 'content-length', 'content-type', 'etag',\n 'expires', 'from', 'host', 'if-modified-since', 'if-unmodified-since',\n 'last-modified', 'location', 'max-forwards', 'proxy-authorization',\n 'referer', 'retry-after', 'user-agent'\n]);\n\n/**\n * Parse headers into an object\n *\n * ```\n * Date: Wed, 27 Aug 2014 08:58:49 GMT\n * Content-Type: application/json\n * Connection: keep-alive\n * Transfer-Encoding: chunked\n * ```\n *\n * @param {String} rawHeaders Headers needing to be parsed\n *\n * @returns {Object} Headers parsed into an object\n */\nexport default rawHeaders => {\n const parsed = {};\n let key;\n let val;\n let i;\n\n rawHeaders && rawHeaders.split('\\n').forEach(function parser(line) {\n i = line.indexOf(':');\n key = line.substring(0, i).trim().toLowerCase();\n val = line.substring(i + 1).trim();\n\n if (!key || (parsed[key] && ignoreDuplicateOf[key])) {\n return;\n }\n\n if (key === 'set-cookie') {\n if (parsed[key]) {\n parsed[key].push(val);\n } else {\n parsed[key] = [val];\n }\n } else {\n parsed[key] = parsed[key] ? parsed[key] + ', ' + val : val;\n }\n });\n\n return parsed;\n};\n","'use strict';\n\nimport utils from '../utils.js';\nimport parseHeaders from '../helpers/parseHeaders.js';\n\nconst $internals = Symbol('internals');\n\nfunction normalizeHeader(header) {\n return header && String(header).trim().toLowerCase();\n}\n\nfunction normalizeValue(value) {\n if (value === false || value == null) {\n return value;\n }\n\n return utils.isArray(value) ? value.map(normalizeValue) : String(value);\n}\n\nfunction parseTokens(str) {\n const tokens = Object.create(null);\n const tokensRE = /([^\\s,;=]+)\\s*(?:=\\s*([^,;]+))?/g;\n let match;\n\n while ((match = tokensRE.exec(str))) {\n tokens[match[1]] = match[2];\n }\n\n return tokens;\n}\n\nconst isValidHeaderName = (str) => /^[-_a-zA-Z0-9^`|~,!#$%&'*+.]+$/.test(str.trim());\n\nfunction matchHeaderValue(context, value, header, filter, isHeaderNameFilter) {\n if (utils.isFunction(filter)) {\n return filter.call(this, value, header);\n }\n\n if (isHeaderNameFilter) {\n value = header;\n }\n\n if (!utils.isString(value)) return;\n\n if (utils.isString(filter)) {\n return value.indexOf(filter) !== -1;\n }\n\n if (utils.isRegExp(filter)) {\n return filter.test(value);\n }\n}\n\nfunction formatHeader(header) {\n return header.trim()\n .toLowerCase().replace(/([a-z\\d])(\\w*)/g, (w, char, str) => {\n return char.toUpperCase() + str;\n });\n}\n\nfunction buildAccessors(obj, header) {\n const accessorName = utils.toCamelCase(' ' + header);\n\n ['get', 'set', 'has'].forEach(methodName => {\n Object.defineProperty(obj, methodName + accessorName, {\n value: function(arg1, arg2, arg3) {\n return this[methodName].call(this, header, arg1, arg2, arg3);\n },\n configurable: true\n });\n });\n}\n\nclass AxiosHeaders {\n constructor(headers) {\n headers && this.set(headers);\n }\n\n set(header, valueOrRewrite, rewrite) {\n const self = this;\n\n function setHeader(_value, _header, _rewrite) {\n const lHeader = normalizeHeader(_header);\n\n if (!lHeader) {\n throw new Error('header name must be a non-empty string');\n }\n\n const key = utils.findKey(self, lHeader);\n\n if(!key || self[key] === undefined || _rewrite === true || (_rewrite === undefined && self[key] !== false)) {\n self[key || _header] = normalizeValue(_value);\n }\n }\n\n const setHeaders = (headers, _rewrite) =>\n utils.forEach(headers, (_value, _header) => setHeader(_value, _header, _rewrite));\n\n if (utils.isPlainObject(header) || header instanceof this.constructor) {\n setHeaders(header, valueOrRewrite)\n } else if(utils.isString(header) && (header = header.trim()) && !isValidHeaderName(header)) {\n setHeaders(parseHeaders(header), valueOrRewrite);\n } else if (utils.isHeaders(header)) {\n for (const [key, value] of header.entries()) {\n setHeader(value, key, rewrite);\n }\n } else {\n header != null && setHeader(valueOrRewrite, header, rewrite);\n }\n\n return this;\n }\n\n get(header, parser) {\n header = normalizeHeader(header);\n\n if (header) {\n const key = utils.findKey(this, header);\n\n if (key) {\n const value = this[key];\n\n if (!parser) {\n return value;\n }\n\n if (parser === true) {\n return parseTokens(value);\n }\n\n if (utils.isFunction(parser)) {\n return parser.call(this, value, key);\n }\n\n if (utils.isRegExp(parser)) {\n return parser.exec(value);\n }\n\n throw new TypeError('parser must be boolean|regexp|function');\n }\n }\n }\n\n has(header, matcher) {\n header = normalizeHeader(header);\n\n if (header) {\n const key = utils.findKey(this, header);\n\n return !!(key && this[key] !== undefined && (!matcher || matchHeaderValue(this, this[key], key, matcher)));\n }\n\n return false;\n }\n\n delete(header, matcher) {\n const self = this;\n let deleted = false;\n\n function deleteHeader(_header) {\n _header = normalizeHeader(_header);\n\n if (_header) {\n const key = utils.findKey(self, _header);\n\n if (key && (!matcher || matchHeaderValue(self, self[key], key, matcher))) {\n delete self[key];\n\n deleted = true;\n }\n }\n }\n\n if (utils.isArray(header)) {\n header.forEach(deleteHeader);\n } else {\n deleteHeader(header);\n }\n\n return deleted;\n }\n\n clear(matcher) {\n const keys = Object.keys(this);\n let i = keys.length;\n let deleted = false;\n\n while (i--) {\n const key = keys[i];\n if(!matcher || matchHeaderValue(this, this[key], key, matcher, true)) {\n delete this[key];\n deleted = true;\n }\n }\n\n return deleted;\n }\n\n normalize(format) {\n const self = this;\n const headers = {};\n\n utils.forEach(this, (value, header) => {\n const key = utils.findKey(headers, header);\n\n if (key) {\n self[key] = normalizeValue(value);\n delete self[header];\n return;\n }\n\n const normalized = format ? formatHeader(header) : String(header).trim();\n\n if (normalized !== header) {\n delete self[header];\n }\n\n self[normalized] = normalizeValue(value);\n\n headers[normalized] = true;\n });\n\n return this;\n }\n\n concat(...targets) {\n return this.constructor.concat(this, ...targets);\n }\n\n toJSON(asStrings) {\n const obj = Object.create(null);\n\n utils.forEach(this, (value, header) => {\n value != null && value !== false && (obj[header] = asStrings && utils.isArray(value) ? value.join(', ') : value);\n });\n\n return obj;\n }\n\n [Symbol.iterator]() {\n return Object.entries(this.toJSON())[Symbol.iterator]();\n }\n\n toString() {\n return Object.entries(this.toJSON()).map(([header, value]) => header + ': ' + value).join('\\n');\n }\n\n get [Symbol.toStringTag]() {\n return 'AxiosHeaders';\n }\n\n static from(thing) {\n return thing instanceof this ? thing : new this(thing);\n }\n\n static concat(first, ...targets) {\n const computed = new this(first);\n\n targets.forEach((target) => computed.set(target));\n\n return computed;\n }\n\n static accessor(header) {\n const internals = this[$internals] = (this[$internals] = {\n accessors: {}\n });\n\n const accessors = internals.accessors;\n const prototype = this.prototype;\n\n function defineAccessor(_header) {\n const lHeader = normalizeHeader(_header);\n\n if (!accessors[lHeader]) {\n buildAccessors(prototype, _header);\n accessors[lHeader] = true;\n }\n }\n\n utils.isArray(header) ? header.forEach(defineAccessor) : defineAccessor(header);\n\n return this;\n }\n}\n\nAxiosHeaders.accessor(['Content-Type', 'Content-Length', 'Accept', 'Accept-Encoding', 'User-Agent', 'Authorization']);\n\n// reserved names hotfix\nutils.reduceDescriptors(AxiosHeaders.prototype, ({value}, key) => {\n let mapped = key[0].toUpperCase() + key.slice(1); // map `set` => `Set`\n return {\n get: () => value,\n set(headerValue) {\n this[mapped] = headerValue;\n }\n }\n});\n\nutils.freezeMethods(AxiosHeaders);\n\nexport default AxiosHeaders;\n","'use strict';\n\nimport utils from './../utils.js';\nimport defaults from '../defaults/index.js';\nimport AxiosHeaders from '../core/AxiosHeaders.js';\n\n/**\n * Transform the data for a request or a response\n *\n * @param {Array|Function} fns A single function or Array of functions\n * @param {?Object} response The response object\n *\n * @returns {*} The resulting transformed data\n */\nexport default function transformData(fns, response) {\n const config = this || defaults;\n const context = response || config;\n const headers = AxiosHeaders.from(context.headers);\n let data = context.data;\n\n utils.forEach(fns, function transform(fn) {\n data = fn.call(config, data, headers.normalize(), response ? response.status : undefined);\n });\n\n headers.normalize();\n\n return data;\n}\n","'use strict';\n\nexport default function isCancel(value) {\n return !!(value && value.__CANCEL__);\n}\n","'use strict';\n\nimport AxiosError from '../core/AxiosError.js';\nimport utils from '../utils.js';\n\n/**\n * A `CanceledError` is an object that is thrown when an operation is canceled.\n *\n * @param {string=} message The message.\n * @param {Object=} config The config.\n * @param {Object=} request The request.\n *\n * @returns {CanceledError} The created error.\n */\nfunction CanceledError(message, config, request) {\n // eslint-disable-next-line no-eq-null,eqeqeq\n AxiosError.call(this, message == null ? 'canceled' : message, AxiosError.ERR_CANCELED, config, request);\n this.name = 'CanceledError';\n}\n\nutils.inherits(CanceledError, AxiosError, {\n __CANCEL__: true\n});\n\nexport default CanceledError;\n","'use strict';\n\nimport AxiosError from './AxiosError.js';\n\n/**\n * Resolve or reject a Promise based on response status.\n *\n * @param {Function} resolve A function that resolves the promise.\n * @param {Function} reject A function that rejects the promise.\n * @param {object} response The response.\n *\n * @returns {object} The response.\n */\nexport default function settle(resolve, reject, response) {\n const validateStatus = response.config.validateStatus;\n if (!response.status || !validateStatus || validateStatus(response.status)) {\n resolve(response);\n } else {\n reject(new AxiosError(\n 'Request failed with status code ' + response.status,\n [AxiosError.ERR_BAD_REQUEST, AxiosError.ERR_BAD_RESPONSE][Math.floor(response.status / 100) - 4],\n response.config,\n response.request,\n response\n ));\n }\n}\n","'use strict';\n\n/**\n * Calculate data maxRate\n * @param {Number} [samplesCount= 10]\n * @param {Number} [min= 1000]\n * @returns {Function}\n */\nfunction speedometer(samplesCount, min) {\n samplesCount = samplesCount || 10;\n const bytes = new Array(samplesCount);\n const timestamps = new Array(samplesCount);\n let head = 0;\n let tail = 0;\n let firstSampleTS;\n\n min = min !== undefined ? min : 1000;\n\n return function push(chunkLength) {\n const now = Date.now();\n\n const startedAt = timestamps[tail];\n\n if (!firstSampleTS) {\n firstSampleTS = now;\n }\n\n bytes[head] = chunkLength;\n timestamps[head] = now;\n\n let i = tail;\n let bytesCount = 0;\n\n while (i !== head) {\n bytesCount += bytes[i++];\n i = i % samplesCount;\n }\n\n head = (head + 1) % samplesCount;\n\n if (head === tail) {\n tail = (tail + 1) % samplesCount;\n }\n\n if (now - firstSampleTS < min) {\n return;\n }\n\n const passed = startedAt && now - startedAt;\n\n return passed ? Math.round(bytesCount * 1000 / passed) : undefined;\n };\n}\n\nexport default speedometer;\n","import speedometer from \"./speedometer.js\";\nimport throttle from \"./throttle.js\";\nimport utils from \"../utils.js\";\n\nexport const progressEventReducer = (listener, isDownloadStream, freq = 3) => {\n let bytesNotified = 0;\n const _speedometer = speedometer(50, 250);\n\n return throttle(e => {\n const loaded = e.loaded;\n const total = e.lengthComputable ? e.total : undefined;\n const progressBytes = loaded - bytesNotified;\n const rate = _speedometer(progressBytes);\n const inRange = loaded <= total;\n\n bytesNotified = loaded;\n\n const data = {\n loaded,\n total,\n progress: total ? (loaded / total) : undefined,\n bytes: progressBytes,\n rate: rate ? rate : undefined,\n estimated: rate && total && inRange ? (total - loaded) / rate : undefined,\n event: e,\n lengthComputable: total != null,\n [isDownloadStream ? 'download' : 'upload']: true\n };\n\n listener(data);\n }, freq);\n}\n\nexport const progressEventDecorator = (total, throttled) => {\n const lengthComputable = total != null;\n\n return [(loaded) => throttled[0]({\n lengthComputable,\n total,\n loaded\n }), throttled[1]];\n}\n\nexport const asyncDecorator = (fn) => (...args) => utils.asap(() => fn(...args));\n","/**\n * Throttle decorator\n * @param {Function} fn\n * @param {Number} freq\n * @return {Function}\n */\nfunction throttle(fn, freq) {\n let timestamp = 0;\n let threshold = 1000 / freq;\n let lastArgs;\n let timer;\n\n const invoke = (args, now = Date.now()) => {\n timestamp = now;\n lastArgs = null;\n if (timer) {\n clearTimeout(timer);\n timer = null;\n }\n fn.apply(null, args);\n }\n\n const throttled = (...args) => {\n const now = Date.now();\n const passed = now - timestamp;\n if ( passed >= threshold) {\n invoke(args, now);\n } else {\n lastArgs = args;\n if (!timer) {\n timer = setTimeout(() => {\n timer = null;\n invoke(lastArgs)\n }, threshold - passed);\n }\n }\n }\n\n const flush = () => lastArgs && invoke(lastArgs);\n\n return [throttled, flush];\n}\n\nexport default throttle;\n","import platform from '../platform/index.js';\n\nexport default platform.hasStandardBrowserEnv ? ((origin, isMSIE) => (url) => {\n url = new URL(url, platform.origin);\n\n return (\n origin.protocol === url.protocol &&\n origin.host === url.host &&\n (isMSIE || origin.port === url.port)\n );\n})(\n new URL(platform.origin),\n platform.navigator && /(msie|trident)/i.test(platform.navigator.userAgent)\n) : () => true;\n","import utils from './../utils.js';\nimport platform from '../platform/index.js';\n\nexport default platform.hasStandardBrowserEnv ?\n\n // Standard browser envs support document.cookie\n {\n write(name, value, expires, path, domain, secure) {\n const cookie = [name + '=' + encodeURIComponent(value)];\n\n utils.isNumber(expires) && cookie.push('expires=' + new Date(expires).toGMTString());\n\n utils.isString(path) && cookie.push('path=' + path);\n\n utils.isString(domain) && cookie.push('domain=' + domain);\n\n secure === true && cookie.push('secure');\n\n document.cookie = cookie.join('; ');\n },\n\n read(name) {\n const match = document.cookie.match(new RegExp('(^|;\\\\s*)(' + name + ')=([^;]*)'));\n return (match ? decodeURIComponent(match[3]) : null);\n },\n\n remove(name) {\n this.write(name, '', Date.now() - 86400000);\n }\n }\n\n :\n\n // Non-standard browser env (web workers, react-native) lack needed support.\n {\n write() {},\n read() {\n return null;\n },\n remove() {}\n };\n\n","'use strict';\n\nimport isAbsoluteURL from '../helpers/isAbsoluteURL.js';\nimport combineURLs from '../helpers/combineURLs.js';\n\n/**\n * Creates a new URL by combining the baseURL with the requestedURL,\n * only when the requestedURL is not already an absolute URL.\n * If the requestURL is absolute, this function returns the requestedURL untouched.\n *\n * @param {string} baseURL The base URL\n * @param {string} requestedURL Absolute or relative URL to combine\n *\n * @returns {string} The combined full path\n */\nexport default function buildFullPath(baseURL, requestedURL) {\n if (baseURL && !isAbsoluteURL(requestedURL)) {\n return combineURLs(baseURL, requestedURL);\n }\n return requestedURL;\n}\n","'use strict';\n\n/**\n * Determines whether the specified URL is absolute\n *\n * @param {string} url The URL to test\n *\n * @returns {boolean} True if the specified URL is absolute, otherwise false\n */\nexport default function isAbsoluteURL(url) {\n // A URL is considered absolute if it begins with \"://\" or \"//\" (protocol-relative URL).\n // RFC 3986 defines scheme name as a sequence of characters beginning with a letter and followed\n // by any combination of letters, digits, plus, period, or hyphen.\n return /^([a-z][a-z\\d+\\-.]*:)?\\/\\//i.test(url);\n}\n","'use strict';\n\n/**\n * Creates a new URL by combining the specified URLs\n *\n * @param {string} baseURL The base URL\n * @param {string} relativeURL The relative URL\n *\n * @returns {string} The combined URL\n */\nexport default function combineURLs(baseURL, relativeURL) {\n return relativeURL\n ? baseURL.replace(/\\/?\\/$/, '') + '/' + relativeURL.replace(/^\\/+/, '')\n : baseURL;\n}\n","'use strict';\n\nimport utils from '../utils.js';\nimport AxiosHeaders from \"./AxiosHeaders.js\";\n\nconst headersToObject = (thing) => thing instanceof AxiosHeaders ? { ...thing } : thing;\n\n/**\n * Config-specific merge-function which creates a new config-object\n * by merging two configuration objects together.\n *\n * @param {Object} config1\n * @param {Object} config2\n *\n * @returns {Object} New object resulting from merging config2 to config1\n */\nexport default function mergeConfig(config1, config2) {\n // eslint-disable-next-line no-param-reassign\n config2 = config2 || {};\n const config = {};\n\n function getMergedValue(target, source, prop, caseless) {\n if (utils.isPlainObject(target) && utils.isPlainObject(source)) {\n return utils.merge.call({caseless}, target, source);\n } else if (utils.isPlainObject(source)) {\n return utils.merge({}, source);\n } else if (utils.isArray(source)) {\n return source.slice();\n }\n return source;\n }\n\n // eslint-disable-next-line consistent-return\n function mergeDeepProperties(a, b, prop , caseless) {\n if (!utils.isUndefined(b)) {\n return getMergedValue(a, b, prop , caseless);\n } else if (!utils.isUndefined(a)) {\n return getMergedValue(undefined, a, prop , caseless);\n }\n }\n\n // eslint-disable-next-line consistent-return\n function valueFromConfig2(a, b) {\n if (!utils.isUndefined(b)) {\n return getMergedValue(undefined, b);\n }\n }\n\n // eslint-disable-next-line consistent-return\n function defaultToConfig2(a, b) {\n if (!utils.isUndefined(b)) {\n return getMergedValue(undefined, b);\n } else if (!utils.isUndefined(a)) {\n return getMergedValue(undefined, a);\n }\n }\n\n // eslint-disable-next-line consistent-return\n function mergeDirectKeys(a, b, prop) {\n if (prop in config2) {\n return getMergedValue(a, b);\n } else if (prop in config1) {\n return getMergedValue(undefined, a);\n }\n }\n\n const mergeMap = {\n url: valueFromConfig2,\n method: valueFromConfig2,\n data: valueFromConfig2,\n baseURL: defaultToConfig2,\n transformRequest: defaultToConfig2,\n transformResponse: defaultToConfig2,\n paramsSerializer: defaultToConfig2,\n timeout: defaultToConfig2,\n timeoutMessage: defaultToConfig2,\n withCredentials: defaultToConfig2,\n withXSRFToken: defaultToConfig2,\n adapter: defaultToConfig2,\n responseType: defaultToConfig2,\n xsrfCookieName: defaultToConfig2,\n xsrfHeaderName: defaultToConfig2,\n onUploadProgress: defaultToConfig2,\n onDownloadProgress: defaultToConfig2,\n decompress: defaultToConfig2,\n maxContentLength: defaultToConfig2,\n maxBodyLength: defaultToConfig2,\n beforeRedirect: defaultToConfig2,\n transport: defaultToConfig2,\n httpAgent: defaultToConfig2,\n httpsAgent: defaultToConfig2,\n cancelToken: defaultToConfig2,\n socketPath: defaultToConfig2,\n responseEncoding: defaultToConfig2,\n validateStatus: mergeDirectKeys,\n headers: (a, b , prop) => mergeDeepProperties(headersToObject(a), headersToObject(b),prop, true)\n };\n\n utils.forEach(Object.keys(Object.assign({}, config1, config2)), function computeConfigValue(prop) {\n const merge = mergeMap[prop] || mergeDeepProperties;\n const configValue = merge(config1[prop], config2[prop], prop);\n (utils.isUndefined(configValue) && merge !== mergeDirectKeys) || (config[prop] = configValue);\n });\n\n return config;\n}\n","import platform from \"../platform/index.js\";\nimport utils from \"../utils.js\";\nimport isURLSameOrigin from \"./isURLSameOrigin.js\";\nimport cookies from \"./cookies.js\";\nimport buildFullPath from \"../core/buildFullPath.js\";\nimport mergeConfig from \"../core/mergeConfig.js\";\nimport AxiosHeaders from \"../core/AxiosHeaders.js\";\nimport buildURL from \"./buildURL.js\";\n\nexport default (config) => {\n const newConfig = mergeConfig({}, config);\n\n let {data, withXSRFToken, xsrfHeaderName, xsrfCookieName, headers, auth} = newConfig;\n\n newConfig.headers = headers = AxiosHeaders.from(headers);\n\n newConfig.url = buildURL(buildFullPath(newConfig.baseURL, newConfig.url), config.params, config.paramsSerializer);\n\n // HTTP basic authentication\n if (auth) {\n headers.set('Authorization', 'Basic ' +\n btoa((auth.username || '') + ':' + (auth.password ? unescape(encodeURIComponent(auth.password)) : ''))\n );\n }\n\n let contentType;\n\n if (utils.isFormData(data)) {\n if (platform.hasStandardBrowserEnv || platform.hasStandardBrowserWebWorkerEnv) {\n headers.setContentType(undefined); // Let the browser set it\n } else if ((contentType = headers.getContentType()) !== false) {\n // fix semicolon duplication issue for ReactNative FormData implementation\n const [type, ...tokens] = contentType ? contentType.split(';').map(token => token.trim()).filter(Boolean) : [];\n headers.setContentType([type || 'multipart/form-data', ...tokens].join('; '));\n }\n }\n\n // Add xsrf header\n // This is only done if running in a standard browser environment.\n // Specifically not if we're in a web worker, or react-native.\n\n if (platform.hasStandardBrowserEnv) {\n withXSRFToken && utils.isFunction(withXSRFToken) && (withXSRFToken = withXSRFToken(newConfig));\n\n if (withXSRFToken || (withXSRFToken !== false && isURLSameOrigin(newConfig.url))) {\n // Add xsrf header\n const xsrfValue = xsrfHeaderName && xsrfCookieName && cookies.read(xsrfCookieName);\n\n if (xsrfValue) {\n headers.set(xsrfHeaderName, xsrfValue);\n }\n }\n }\n\n return newConfig;\n}\n\n","import utils from './../utils.js';\nimport settle from './../core/settle.js';\nimport transitionalDefaults from '../defaults/transitional.js';\nimport AxiosError from '../core/AxiosError.js';\nimport CanceledError from '../cancel/CanceledError.js';\nimport parseProtocol from '../helpers/parseProtocol.js';\nimport platform from '../platform/index.js';\nimport AxiosHeaders from '../core/AxiosHeaders.js';\nimport {progressEventReducer} from '../helpers/progressEventReducer.js';\nimport resolveConfig from \"../helpers/resolveConfig.js\";\n\nconst isXHRAdapterSupported = typeof XMLHttpRequest !== 'undefined';\n\nexport default isXHRAdapterSupported && function (config) {\n return new Promise(function dispatchXhrRequest(resolve, reject) {\n const _config = resolveConfig(config);\n let requestData = _config.data;\n const requestHeaders = AxiosHeaders.from(_config.headers).normalize();\n let {responseType, onUploadProgress, onDownloadProgress} = _config;\n let onCanceled;\n let uploadThrottled, downloadThrottled;\n let flushUpload, flushDownload;\n\n function done() {\n flushUpload && flushUpload(); // flush events\n flushDownload && flushDownload(); // flush events\n\n _config.cancelToken && _config.cancelToken.unsubscribe(onCanceled);\n\n _config.signal && _config.signal.removeEventListener('abort', onCanceled);\n }\n\n let request = new XMLHttpRequest();\n\n request.open(_config.method.toUpperCase(), _config.url, true);\n\n // Set the request timeout in MS\n request.timeout = _config.timeout;\n\n function onloadend() {\n if (!request) {\n return;\n }\n // Prepare the response\n const responseHeaders = AxiosHeaders.from(\n 'getAllResponseHeaders' in request && request.getAllResponseHeaders()\n );\n const responseData = !responseType || responseType === 'text' || responseType === 'json' ?\n request.responseText : request.response;\n const response = {\n data: responseData,\n status: request.status,\n statusText: request.statusText,\n headers: responseHeaders,\n config,\n request\n };\n\n settle(function _resolve(value) {\n resolve(value);\n done();\n }, function _reject(err) {\n reject(err);\n done();\n }, response);\n\n // Clean up request\n request = null;\n }\n\n if ('onloadend' in request) {\n // Use onloadend if available\n request.onloadend = onloadend;\n } else {\n // Listen for ready state to emulate onloadend\n request.onreadystatechange = function handleLoad() {\n if (!request || request.readyState !== 4) {\n return;\n }\n\n // The request errored out and we didn't get a response, this will be\n // handled by onerror instead\n // With one exception: request that using file: protocol, most browsers\n // will return status as 0 even though it's a successful request\n if (request.status === 0 && !(request.responseURL && request.responseURL.indexOf('file:') === 0)) {\n return;\n }\n // readystate handler is calling before onerror or ontimeout handlers,\n // so we should call onloadend on the next 'tick'\n setTimeout(onloadend);\n };\n }\n\n // Handle browser request cancellation (as opposed to a manual cancellation)\n request.onabort = function handleAbort() {\n if (!request) {\n return;\n }\n\n reject(new AxiosError('Request aborted', AxiosError.ECONNABORTED, config, request));\n\n // Clean up request\n request = null;\n };\n\n // Handle low level network errors\n request.onerror = function handleError() {\n // Real errors are hidden from us by the browser\n // onerror should only fire if it's a network error\n reject(new AxiosError('Network Error', AxiosError.ERR_NETWORK, config, request));\n\n // Clean up request\n request = null;\n };\n\n // Handle timeout\n request.ontimeout = function handleTimeout() {\n let timeoutErrorMessage = _config.timeout ? 'timeout of ' + _config.timeout + 'ms exceeded' : 'timeout exceeded';\n const transitional = _config.transitional || transitionalDefaults;\n if (_config.timeoutErrorMessage) {\n timeoutErrorMessage = _config.timeoutErrorMessage;\n }\n reject(new AxiosError(\n timeoutErrorMessage,\n transitional.clarifyTimeoutError ? AxiosError.ETIMEDOUT : AxiosError.ECONNABORTED,\n config,\n request));\n\n // Clean up request\n request = null;\n };\n\n // Remove Content-Type if data is undefined\n requestData === undefined && requestHeaders.setContentType(null);\n\n // Add headers to the request\n if ('setRequestHeader' in request) {\n utils.forEach(requestHeaders.toJSON(), function setRequestHeader(val, key) {\n request.setRequestHeader(key, val);\n });\n }\n\n // Add withCredentials to request if needed\n if (!utils.isUndefined(_config.withCredentials)) {\n request.withCredentials = !!_config.withCredentials;\n }\n\n // Add responseType to request if needed\n if (responseType && responseType !== 'json') {\n request.responseType = _config.responseType;\n }\n\n // Handle progress if needed\n if (onDownloadProgress) {\n ([downloadThrottled, flushDownload] = progressEventReducer(onDownloadProgress, true));\n request.addEventListener('progress', downloadThrottled);\n }\n\n // Not all browsers support upload events\n if (onUploadProgress && request.upload) {\n ([uploadThrottled, flushUpload] = progressEventReducer(onUploadProgress));\n\n request.upload.addEventListener('progress', uploadThrottled);\n\n request.upload.addEventListener('loadend', flushUpload);\n }\n\n if (_config.cancelToken || _config.signal) {\n // Handle cancellation\n // eslint-disable-next-line func-names\n onCanceled = cancel => {\n if (!request) {\n return;\n }\n reject(!cancel || cancel.type ? new CanceledError(null, config, request) : cancel);\n request.abort();\n request = null;\n };\n\n _config.cancelToken && _config.cancelToken.subscribe(onCanceled);\n if (_config.signal) {\n _config.signal.aborted ? onCanceled() : _config.signal.addEventListener('abort', onCanceled);\n }\n }\n\n const protocol = parseProtocol(_config.url);\n\n if (protocol && platform.protocols.indexOf(protocol) === -1) {\n reject(new AxiosError('Unsupported protocol ' + protocol + ':', AxiosError.ERR_BAD_REQUEST, config));\n return;\n }\n\n\n // Send the request\n request.send(requestData || null);\n });\n}\n","'use strict';\n\nexport default function parseProtocol(url) {\n const match = /^([-+\\w]{1,25})(:?\\/\\/|:)/.exec(url);\n return match && match[1] || '';\n}\n","import CanceledError from \"../cancel/CanceledError.js\";\nimport AxiosError from \"../core/AxiosError.js\";\nimport utils from '../utils.js';\n\nconst composeSignals = (signals, timeout) => {\n const {length} = (signals = signals ? signals.filter(Boolean) : []);\n\n if (timeout || length) {\n let controller = new AbortController();\n\n let aborted;\n\n const onabort = function (reason) {\n if (!aborted) {\n aborted = true;\n unsubscribe();\n const err = reason instanceof Error ? reason : this.reason;\n controller.abort(err instanceof AxiosError ? err : new CanceledError(err instanceof Error ? err.message : err));\n }\n }\n\n let timer = timeout && setTimeout(() => {\n timer = null;\n onabort(new AxiosError(`timeout ${timeout} of ms exceeded`, AxiosError.ETIMEDOUT))\n }, timeout)\n\n const unsubscribe = () => {\n if (signals) {\n timer && clearTimeout(timer);\n timer = null;\n signals.forEach(signal => {\n signal.unsubscribe ? signal.unsubscribe(onabort) : signal.removeEventListener('abort', onabort);\n });\n signals = null;\n }\n }\n\n signals.forEach((signal) => signal.addEventListener('abort', onabort));\n\n const {signal} = controller;\n\n signal.unsubscribe = () => utils.asap(unsubscribe);\n\n return signal;\n }\n}\n\nexport default composeSignals;\n","\nexport const streamChunk = function* (chunk, chunkSize) {\n let len = chunk.byteLength;\n\n if (!chunkSize || len < chunkSize) {\n yield chunk;\n return;\n }\n\n let pos = 0;\n let end;\n\n while (pos < len) {\n end = pos + chunkSize;\n yield chunk.slice(pos, end);\n pos = end;\n }\n}\n\nexport const readBytes = async function* (iterable, chunkSize) {\n for await (const chunk of readStream(iterable)) {\n yield* streamChunk(chunk, chunkSize);\n }\n}\n\nconst readStream = async function* (stream) {\n if (stream[Symbol.asyncIterator]) {\n yield* stream;\n return;\n }\n\n const reader = stream.getReader();\n try {\n for (;;) {\n const {done, value} = await reader.read();\n if (done) {\n break;\n }\n yield value;\n }\n } finally {\n await reader.cancel();\n }\n}\n\nexport const trackStream = (stream, chunkSize, onProgress, onFinish) => {\n const iterator = readBytes(stream, chunkSize);\n\n let bytes = 0;\n let done;\n let _onFinish = (e) => {\n if (!done) {\n done = true;\n onFinish && onFinish(e);\n }\n }\n\n return new ReadableStream({\n async pull(controller) {\n try {\n const {done, value} = await iterator.next();\n\n if (done) {\n _onFinish();\n controller.close();\n return;\n }\n\n let len = value.byteLength;\n if (onProgress) {\n let loadedBytes = bytes += len;\n onProgress(loadedBytes);\n }\n controller.enqueue(new Uint8Array(value));\n } catch (err) {\n _onFinish(err);\n throw err;\n }\n },\n cancel(reason) {\n _onFinish(reason);\n return iterator.return();\n }\n }, {\n highWaterMark: 2\n })\n}\n","import platform from \"../platform/index.js\";\nimport utils from \"../utils.js\";\nimport AxiosError from \"../core/AxiosError.js\";\nimport composeSignals from \"../helpers/composeSignals.js\";\nimport {trackStream} from \"../helpers/trackStream.js\";\nimport AxiosHeaders from \"../core/AxiosHeaders.js\";\nimport {progressEventReducer, progressEventDecorator, asyncDecorator} from \"../helpers/progressEventReducer.js\";\nimport resolveConfig from \"../helpers/resolveConfig.js\";\nimport settle from \"../core/settle.js\";\n\nconst isFetchSupported = typeof fetch === 'function' && typeof Request === 'function' && typeof Response === 'function';\nconst isReadableStreamSupported = isFetchSupported && typeof ReadableStream === 'function';\n\n// used only inside the fetch adapter\nconst encodeText = isFetchSupported && (typeof TextEncoder === 'function' ?\n ((encoder) => (str) => encoder.encode(str))(new TextEncoder()) :\n async (str) => new Uint8Array(await new Response(str).arrayBuffer())\n);\n\nconst test = (fn, ...args) => {\n try {\n return !!fn(...args);\n } catch (e) {\n return false\n }\n}\n\nconst supportsRequestStream = isReadableStreamSupported && test(() => {\n let duplexAccessed = false;\n\n const hasContentType = new Request(platform.origin, {\n body: new ReadableStream(),\n method: 'POST',\n get duplex() {\n duplexAccessed = true;\n return 'half';\n },\n }).headers.has('Content-Type');\n\n return duplexAccessed && !hasContentType;\n});\n\nconst DEFAULT_CHUNK_SIZE = 64 * 1024;\n\nconst supportsResponseStream = isReadableStreamSupported &&\n test(() => utils.isReadableStream(new Response('').body));\n\n\nconst resolvers = {\n stream: supportsResponseStream && ((res) => res.body)\n};\n\nisFetchSupported && (((res) => {\n ['text', 'arrayBuffer', 'blob', 'formData', 'stream'].forEach(type => {\n !resolvers[type] && (resolvers[type] = utils.isFunction(res[type]) ? (res) => res[type]() :\n (_, config) => {\n throw new AxiosError(`Response type '${type}' is not supported`, AxiosError.ERR_NOT_SUPPORT, config);\n })\n });\n})(new Response));\n\nconst getBodyLength = async (body) => {\n if (body == null) {\n return 0;\n }\n\n if(utils.isBlob(body)) {\n return body.size;\n }\n\n if(utils.isSpecCompliantForm(body)) {\n const _request = new Request(platform.origin, {\n method: 'POST',\n body,\n });\n return (await _request.arrayBuffer()).byteLength;\n }\n\n if(utils.isArrayBufferView(body) || utils.isArrayBuffer(body)) {\n return body.byteLength;\n }\n\n if(utils.isURLSearchParams(body)) {\n body = body + '';\n }\n\n if(utils.isString(body)) {\n return (await encodeText(body)).byteLength;\n }\n}\n\nconst resolveBodyLength = async (headers, body) => {\n const length = utils.toFiniteNumber(headers.getContentLength());\n\n return length == null ? getBodyLength(body) : length;\n}\n\nexport default isFetchSupported && (async (config) => {\n let {\n url,\n method,\n data,\n signal,\n cancelToken,\n timeout,\n onDownloadProgress,\n onUploadProgress,\n responseType,\n headers,\n withCredentials = 'same-origin',\n fetchOptions\n } = resolveConfig(config);\n\n responseType = responseType ? (responseType + '').toLowerCase() : 'text';\n\n let composedSignal = composeSignals([signal, cancelToken && cancelToken.toAbortSignal()], timeout);\n\n let request;\n\n const unsubscribe = composedSignal && composedSignal.unsubscribe && (() => {\n composedSignal.unsubscribe();\n });\n\n let requestContentLength;\n\n try {\n if (\n onUploadProgress && supportsRequestStream && method !== 'get' && method !== 'head' &&\n (requestContentLength = await resolveBodyLength(headers, data)) !== 0\n ) {\n let _request = new Request(url, {\n method: 'POST',\n body: data,\n duplex: \"half\"\n });\n\n let contentTypeHeader;\n\n if (utils.isFormData(data) && (contentTypeHeader = _request.headers.get('content-type'))) {\n headers.setContentType(contentTypeHeader)\n }\n\n if (_request.body) {\n const [onProgress, flush] = progressEventDecorator(\n requestContentLength,\n progressEventReducer(asyncDecorator(onUploadProgress))\n );\n\n data = trackStream(_request.body, DEFAULT_CHUNK_SIZE, onProgress, flush);\n }\n }\n\n if (!utils.isString(withCredentials)) {\n withCredentials = withCredentials ? 'include' : 'omit';\n }\n\n // Cloudflare Workers throws when credentials are defined\n // see https://github.com/cloudflare/workerd/issues/902\n const isCredentialsSupported = \"credentials\" in Request.prototype;\n request = new Request(url, {\n ...fetchOptions,\n signal: composedSignal,\n method: method.toUpperCase(),\n headers: headers.normalize().toJSON(),\n body: data,\n duplex: \"half\",\n credentials: isCredentialsSupported ? withCredentials : undefined\n });\n\n let response = await fetch(request);\n\n const isStreamResponse = supportsResponseStream && (responseType === 'stream' || responseType === 'response');\n\n if (supportsResponseStream && (onDownloadProgress || (isStreamResponse && unsubscribe))) {\n const options = {};\n\n ['status', 'statusText', 'headers'].forEach(prop => {\n options[prop] = response[prop];\n });\n\n const responseContentLength = utils.toFiniteNumber(response.headers.get('content-length'));\n\n const [onProgress, flush] = onDownloadProgress && progressEventDecorator(\n responseContentLength,\n progressEventReducer(asyncDecorator(onDownloadProgress), true)\n ) || [];\n\n response = new Response(\n trackStream(response.body, DEFAULT_CHUNK_SIZE, onProgress, () => {\n flush && flush();\n unsubscribe && unsubscribe();\n }),\n options\n );\n }\n\n responseType = responseType || 'text';\n\n let responseData = await resolvers[utils.findKey(resolvers, responseType) || 'text'](response, config);\n\n !isStreamResponse && unsubscribe && unsubscribe();\n\n return await new Promise((resolve, reject) => {\n settle(resolve, reject, {\n data: responseData,\n headers: AxiosHeaders.from(response.headers),\n status: response.status,\n statusText: response.statusText,\n config,\n request\n })\n })\n } catch (err) {\n unsubscribe && unsubscribe();\n\n if (err && err.name === 'TypeError' && /fetch/i.test(err.message)) {\n throw Object.assign(\n new AxiosError('Network Error', AxiosError.ERR_NETWORK, config, request),\n {\n cause: err.cause || err\n }\n )\n }\n\n throw AxiosError.from(err, err && err.code, config, request);\n }\n});\n\n\n","import utils from '../utils.js';\nimport httpAdapter from './http.js';\nimport xhrAdapter from './xhr.js';\nimport fetchAdapter from './fetch.js';\nimport AxiosError from \"../core/AxiosError.js\";\n\nconst knownAdapters = {\n http: httpAdapter,\n xhr: xhrAdapter,\n fetch: fetchAdapter\n}\n\nutils.forEach(knownAdapters, (fn, value) => {\n if (fn) {\n try {\n Object.defineProperty(fn, 'name', {value});\n } catch (e) {\n // eslint-disable-next-line no-empty\n }\n Object.defineProperty(fn, 'adapterName', {value});\n }\n});\n\nconst renderReason = (reason) => `- ${reason}`;\n\nconst isResolvedHandle = (adapter) => utils.isFunction(adapter) || adapter === null || adapter === false;\n\nexport default {\n getAdapter: (adapters) => {\n adapters = utils.isArray(adapters) ? adapters : [adapters];\n\n const {length} = adapters;\n let nameOrAdapter;\n let adapter;\n\n const rejectedReasons = {};\n\n for (let i = 0; i < length; i++) {\n nameOrAdapter = adapters[i];\n let id;\n\n adapter = nameOrAdapter;\n\n if (!isResolvedHandle(nameOrAdapter)) {\n adapter = knownAdapters[(id = String(nameOrAdapter)).toLowerCase()];\n\n if (adapter === undefined) {\n throw new AxiosError(`Unknown adapter '${id}'`);\n }\n }\n\n if (adapter) {\n break;\n }\n\n rejectedReasons[id || '#' + i] = adapter;\n }\n\n if (!adapter) {\n\n const reasons = Object.entries(rejectedReasons)\n .map(([id, state]) => `adapter ${id} ` +\n (state === false ? 'is not supported by the environment' : 'is not available in the build')\n );\n\n let s = length ?\n (reasons.length > 1 ? 'since :\\n' + reasons.map(renderReason).join('\\n') : ' ' + renderReason(reasons[0])) :\n 'as no adapter specified';\n\n throw new AxiosError(\n `There is no suitable adapter to dispatch the request ` + s,\n 'ERR_NOT_SUPPORT'\n );\n }\n\n return adapter;\n },\n adapters: knownAdapters\n}\n","// eslint-disable-next-line strict\nexport default null;\n","'use strict';\n\nimport transformData from './transformData.js';\nimport isCancel from '../cancel/isCancel.js';\nimport defaults from '../defaults/index.js';\nimport CanceledError from '../cancel/CanceledError.js';\nimport AxiosHeaders from '../core/AxiosHeaders.js';\nimport adapters from \"../adapters/adapters.js\";\n\n/**\n * Throws a `CanceledError` if cancellation has been requested.\n *\n * @param {Object} config The config that is to be used for the request\n *\n * @returns {void}\n */\nfunction throwIfCancellationRequested(config) {\n if (config.cancelToken) {\n config.cancelToken.throwIfRequested();\n }\n\n if (config.signal && config.signal.aborted) {\n throw new CanceledError(null, config);\n }\n}\n\n/**\n * Dispatch a request to the server using the configured adapter.\n *\n * @param {object} config The config that is to be used for the request\n *\n * @returns {Promise} The Promise to be fulfilled\n */\nexport default function dispatchRequest(config) {\n throwIfCancellationRequested(config);\n\n config.headers = AxiosHeaders.from(config.headers);\n\n // Transform request data\n config.data = transformData.call(\n config,\n config.transformRequest\n );\n\n if (['post', 'put', 'patch'].indexOf(config.method) !== -1) {\n config.headers.setContentType('application/x-www-form-urlencoded', false);\n }\n\n const adapter = adapters.getAdapter(config.adapter || defaults.adapter);\n\n return adapter(config).then(function onAdapterResolution(response) {\n throwIfCancellationRequested(config);\n\n // Transform response data\n response.data = transformData.call(\n config,\n config.transformResponse,\n response\n );\n\n response.headers = AxiosHeaders.from(response.headers);\n\n return response;\n }, function onAdapterRejection(reason) {\n if (!isCancel(reason)) {\n throwIfCancellationRequested(config);\n\n // Transform response data\n if (reason && reason.response) {\n reason.response.data = transformData.call(\n config,\n config.transformResponse,\n reason.response\n );\n reason.response.headers = AxiosHeaders.from(reason.response.headers);\n }\n }\n\n return Promise.reject(reason);\n });\n}\n","export const VERSION = \"1.7.9\";","'use strict';\n\nimport {VERSION} from '../env/data.js';\nimport AxiosError from '../core/AxiosError.js';\n\nconst validators = {};\n\n// eslint-disable-next-line func-names\n['object', 'boolean', 'number', 'function', 'string', 'symbol'].forEach((type, i) => {\n validators[type] = function validator(thing) {\n return typeof thing === type || 'a' + (i < 1 ? 'n ' : ' ') + type;\n };\n});\n\nconst deprecatedWarnings = {};\n\n/**\n * Transitional option validator\n *\n * @param {function|boolean?} validator - set to false if the transitional option has been removed\n * @param {string?} version - deprecated version / removed since version\n * @param {string?} message - some message with additional info\n *\n * @returns {function}\n */\nvalidators.transitional = function transitional(validator, version, message) {\n function formatMessage(opt, desc) {\n return '[Axios v' + VERSION + '] Transitional option \\'' + opt + '\\'' + desc + (message ? '. ' + message : '');\n }\n\n // eslint-disable-next-line func-names\n return (value, opt, opts) => {\n if (validator === false) {\n throw new AxiosError(\n formatMessage(opt, ' has been removed' + (version ? ' in ' + version : '')),\n AxiosError.ERR_DEPRECATED\n );\n }\n\n if (version && !deprecatedWarnings[opt]) {\n deprecatedWarnings[opt] = true;\n // eslint-disable-next-line no-console\n console.warn(\n formatMessage(\n opt,\n ' has been deprecated since v' + version + ' and will be removed in the near future'\n )\n );\n }\n\n return validator ? validator(value, opt, opts) : true;\n };\n};\n\nvalidators.spelling = function spelling(correctSpelling) {\n return (value, opt) => {\n // eslint-disable-next-line no-console\n console.warn(`${opt} is likely a misspelling of ${correctSpelling}`);\n return true;\n }\n};\n\n/**\n * Assert object's properties type\n *\n * @param {object} options\n * @param {object} schema\n * @param {boolean?} allowUnknown\n *\n * @returns {object}\n */\n\nfunction assertOptions(options, schema, allowUnknown) {\n if (typeof options !== 'object') {\n throw new AxiosError('options must be an object', AxiosError.ERR_BAD_OPTION_VALUE);\n }\n const keys = Object.keys(options);\n let i = keys.length;\n while (i-- > 0) {\n const opt = keys[i];\n const validator = schema[opt];\n if (validator) {\n const value = options[opt];\n const result = value === undefined || validator(value, opt, options);\n if (result !== true) {\n throw new AxiosError('option ' + opt + ' must be ' + result, AxiosError.ERR_BAD_OPTION_VALUE);\n }\n continue;\n }\n if (allowUnknown !== true) {\n throw new AxiosError('Unknown option ' + opt, AxiosError.ERR_BAD_OPTION);\n }\n }\n}\n\nexport default {\n assertOptions,\n validators\n};\n","'use strict';\n\nimport utils from './../utils.js';\nimport buildURL from '../helpers/buildURL.js';\nimport InterceptorManager from './InterceptorManager.js';\nimport dispatchRequest from './dispatchRequest.js';\nimport mergeConfig from './mergeConfig.js';\nimport buildFullPath from './buildFullPath.js';\nimport validator from '../helpers/validator.js';\nimport AxiosHeaders from './AxiosHeaders.js';\n\nconst validators = validator.validators;\n\n/**\n * Create a new instance of Axios\n *\n * @param {Object} instanceConfig The default config for the instance\n *\n * @return {Axios} A new instance of Axios\n */\nclass Axios {\n constructor(instanceConfig) {\n this.defaults = instanceConfig;\n this.interceptors = {\n request: new InterceptorManager(),\n response: new InterceptorManager()\n };\n }\n\n /**\n * Dispatch a request\n *\n * @param {String|Object} configOrUrl The config specific for this request (merged with this.defaults)\n * @param {?Object} config\n *\n * @returns {Promise} The Promise to be fulfilled\n */\n async request(configOrUrl, config) {\n try {\n return await this._request(configOrUrl, config);\n } catch (err) {\n if (err instanceof Error) {\n let dummy = {};\n\n Error.captureStackTrace ? Error.captureStackTrace(dummy) : (dummy = new Error());\n\n // slice off the Error: ... line\n const stack = dummy.stack ? dummy.stack.replace(/^.+\\n/, '') : '';\n try {\n if (!err.stack) {\n err.stack = stack;\n // match without the 2 top stack lines\n } else if (stack && !String(err.stack).endsWith(stack.replace(/^.+\\n.+\\n/, ''))) {\n err.stack += '\\n' + stack\n }\n } catch (e) {\n // ignore the case where \"stack\" is an un-writable property\n }\n }\n\n throw err;\n }\n }\n\n _request(configOrUrl, config) {\n /*eslint no-param-reassign:0*/\n // Allow for axios('example/url'[, config]) a la fetch API\n if (typeof configOrUrl === 'string') {\n config = config || {};\n config.url = configOrUrl;\n } else {\n config = configOrUrl || {};\n }\n\n config = mergeConfig(this.defaults, config);\n\n const {transitional, paramsSerializer, headers} = config;\n\n if (transitional !== undefined) {\n validator.assertOptions(transitional, {\n silentJSONParsing: validators.transitional(validators.boolean),\n forcedJSONParsing: validators.transitional(validators.boolean),\n clarifyTimeoutError: validators.transitional(validators.boolean)\n }, false);\n }\n\n if (paramsSerializer != null) {\n if (utils.isFunction(paramsSerializer)) {\n config.paramsSerializer = {\n serialize: paramsSerializer\n }\n } else {\n validator.assertOptions(paramsSerializer, {\n encode: validators.function,\n serialize: validators.function\n }, true);\n }\n }\n\n validator.assertOptions(config, {\n baseUrl: validators.spelling('baseURL'),\n withXsrfToken: validators.spelling('withXSRFToken')\n }, true);\n\n // Set config.method\n config.method = (config.method || this.defaults.method || 'get').toLowerCase();\n\n // Flatten headers\n let contextHeaders = headers && utils.merge(\n headers.common,\n headers[config.method]\n );\n\n headers && utils.forEach(\n ['delete', 'get', 'head', 'post', 'put', 'patch', 'common'],\n (method) => {\n delete headers[method];\n }\n );\n\n config.headers = AxiosHeaders.concat(contextHeaders, headers);\n\n // filter out skipped interceptors\n const requestInterceptorChain = [];\n let synchronousRequestInterceptors = true;\n this.interceptors.request.forEach(function unshiftRequestInterceptors(interceptor) {\n if (typeof interceptor.runWhen === 'function' && interceptor.runWhen(config) === false) {\n return;\n }\n\n synchronousRequestInterceptors = synchronousRequestInterceptors && interceptor.synchronous;\n\n requestInterceptorChain.unshift(interceptor.fulfilled, interceptor.rejected);\n });\n\n const responseInterceptorChain = [];\n this.interceptors.response.forEach(function pushResponseInterceptors(interceptor) {\n responseInterceptorChain.push(interceptor.fulfilled, interceptor.rejected);\n });\n\n let promise;\n let i = 0;\n let len;\n\n if (!synchronousRequestInterceptors) {\n const chain = [dispatchRequest.bind(this), undefined];\n chain.unshift.apply(chain, requestInterceptorChain);\n chain.push.apply(chain, responseInterceptorChain);\n len = chain.length;\n\n promise = Promise.resolve(config);\n\n while (i < len) {\n promise = promise.then(chain[i++], chain[i++]);\n }\n\n return promise;\n }\n\n len = requestInterceptorChain.length;\n\n let newConfig = config;\n\n i = 0;\n\n while (i < len) {\n const onFulfilled = requestInterceptorChain[i++];\n const onRejected = requestInterceptorChain[i++];\n try {\n newConfig = onFulfilled(newConfig);\n } catch (error) {\n onRejected.call(this, error);\n break;\n }\n }\n\n try {\n promise = dispatchRequest.call(this, newConfig);\n } catch (error) {\n return Promise.reject(error);\n }\n\n i = 0;\n len = responseInterceptorChain.length;\n\n while (i < len) {\n promise = promise.then(responseInterceptorChain[i++], responseInterceptorChain[i++]);\n }\n\n return promise;\n }\n\n getUri(config) {\n config = mergeConfig(this.defaults, config);\n const fullPath = buildFullPath(config.baseURL, config.url);\n return buildURL(fullPath, config.params, config.paramsSerializer);\n }\n}\n\n// Provide aliases for supported request methods\nutils.forEach(['delete', 'get', 'head', 'options'], function forEachMethodNoData(method) {\n /*eslint func-names:0*/\n Axios.prototype[method] = function(url, config) {\n return this.request(mergeConfig(config || {}, {\n method,\n url,\n data: (config || {}).data\n }));\n };\n});\n\nutils.forEach(['post', 'put', 'patch'], function forEachMethodWithData(method) {\n /*eslint func-names:0*/\n\n function generateHTTPMethod(isForm) {\n return function httpMethod(url, data, config) {\n return this.request(mergeConfig(config || {}, {\n method,\n headers: isForm ? {\n 'Content-Type': 'multipart/form-data'\n } : {},\n url,\n data\n }));\n };\n }\n\n Axios.prototype[method] = generateHTTPMethod();\n\n Axios.prototype[method + 'Form'] = generateHTTPMethod(true);\n});\n\nexport default Axios;\n","'use strict';\n\nimport CanceledError from './CanceledError.js';\n\n/**\n * A `CancelToken` is an object that can be used to request cancellation of an operation.\n *\n * @param {Function} executor The executor function.\n *\n * @returns {CancelToken}\n */\nclass CancelToken {\n constructor(executor) {\n if (typeof executor !== 'function') {\n throw new TypeError('executor must be a function.');\n }\n\n let resolvePromise;\n\n this.promise = new Promise(function promiseExecutor(resolve) {\n resolvePromise = resolve;\n });\n\n const token = this;\n\n // eslint-disable-next-line func-names\n this.promise.then(cancel => {\n if (!token._listeners) return;\n\n let i = token._listeners.length;\n\n while (i-- > 0) {\n token._listeners[i](cancel);\n }\n token._listeners = null;\n });\n\n // eslint-disable-next-line func-names\n this.promise.then = onfulfilled => {\n let _resolve;\n // eslint-disable-next-line func-names\n const promise = new Promise(resolve => {\n token.subscribe(resolve);\n _resolve = resolve;\n }).then(onfulfilled);\n\n promise.cancel = function reject() {\n token.unsubscribe(_resolve);\n };\n\n return promise;\n };\n\n executor(function cancel(message, config, request) {\n if (token.reason) {\n // Cancellation has already been requested\n return;\n }\n\n token.reason = new CanceledError(message, config, request);\n resolvePromise(token.reason);\n });\n }\n\n /**\n * Throws a `CanceledError` if cancellation has been requested.\n */\n throwIfRequested() {\n if (this.reason) {\n throw this.reason;\n }\n }\n\n /**\n * Subscribe to the cancel signal\n */\n\n subscribe(listener) {\n if (this.reason) {\n listener(this.reason);\n return;\n }\n\n if (this._listeners) {\n this._listeners.push(listener);\n } else {\n this._listeners = [listener];\n }\n }\n\n /**\n * Unsubscribe from the cancel signal\n */\n\n unsubscribe(listener) {\n if (!this._listeners) {\n return;\n }\n const index = this._listeners.indexOf(listener);\n if (index !== -1) {\n this._listeners.splice(index, 1);\n }\n }\n\n toAbortSignal() {\n const controller = new AbortController();\n\n const abort = (err) => {\n controller.abort(err);\n };\n\n this.subscribe(abort);\n\n controller.signal.unsubscribe = () => this.unsubscribe(abort);\n\n return controller.signal;\n }\n\n /**\n * Returns an object that contains a new `CancelToken` and a function that, when called,\n * cancels the `CancelToken`.\n */\n static source() {\n let cancel;\n const token = new CancelToken(function executor(c) {\n cancel = c;\n });\n return {\n token,\n cancel\n };\n }\n}\n\nexport default CancelToken;\n","const HttpStatusCode = {\n Continue: 100,\n SwitchingProtocols: 101,\n Processing: 102,\n EarlyHints: 103,\n Ok: 200,\n Created: 201,\n Accepted: 202,\n NonAuthoritativeInformation: 203,\n NoContent: 204,\n ResetContent: 205,\n PartialContent: 206,\n MultiStatus: 207,\n AlreadyReported: 208,\n ImUsed: 226,\n MultipleChoices: 300,\n MovedPermanently: 301,\n Found: 302,\n SeeOther: 303,\n NotModified: 304,\n UseProxy: 305,\n Unused: 306,\n TemporaryRedirect: 307,\n PermanentRedirect: 308,\n BadRequest: 400,\n Unauthorized: 401,\n PaymentRequired: 402,\n Forbidden: 403,\n NotFound: 404,\n MethodNotAllowed: 405,\n NotAcceptable: 406,\n ProxyAuthenticationRequired: 407,\n RequestTimeout: 408,\n Conflict: 409,\n Gone: 410,\n LengthRequired: 411,\n PreconditionFailed: 412,\n PayloadTooLarge: 413,\n UriTooLong: 414,\n UnsupportedMediaType: 415,\n RangeNotSatisfiable: 416,\n ExpectationFailed: 417,\n ImATeapot: 418,\n MisdirectedRequest: 421,\n UnprocessableEntity: 422,\n Locked: 423,\n FailedDependency: 424,\n TooEarly: 425,\n UpgradeRequired: 426,\n PreconditionRequired: 428,\n TooManyRequests: 429,\n RequestHeaderFieldsTooLarge: 431,\n UnavailableForLegalReasons: 451,\n InternalServerError: 500,\n NotImplemented: 501,\n BadGateway: 502,\n ServiceUnavailable: 503,\n GatewayTimeout: 504,\n HttpVersionNotSupported: 505,\n VariantAlsoNegotiates: 506,\n InsufficientStorage: 507,\n LoopDetected: 508,\n NotExtended: 510,\n NetworkAuthenticationRequired: 511,\n};\n\nObject.entries(HttpStatusCode).forEach(([key, value]) => {\n HttpStatusCode[value] = key;\n});\n\nexport default HttpStatusCode;\n","'use strict';\n\nimport utils from './utils.js';\nimport bind from './helpers/bind.js';\nimport Axios from './core/Axios.js';\nimport mergeConfig from './core/mergeConfig.js';\nimport defaults from './defaults/index.js';\nimport formDataToJSON from './helpers/formDataToJSON.js';\nimport CanceledError from './cancel/CanceledError.js';\nimport CancelToken from './cancel/CancelToken.js';\nimport isCancel from './cancel/isCancel.js';\nimport {VERSION} from './env/data.js';\nimport toFormData from './helpers/toFormData.js';\nimport AxiosError from './core/AxiosError.js';\nimport spread from './helpers/spread.js';\nimport isAxiosError from './helpers/isAxiosError.js';\nimport AxiosHeaders from \"./core/AxiosHeaders.js\";\nimport adapters from './adapters/adapters.js';\nimport HttpStatusCode from './helpers/HttpStatusCode.js';\n\n/**\n * Create an instance of Axios\n *\n * @param {Object} defaultConfig The default config for the instance\n *\n * @returns {Axios} A new instance of Axios\n */\nfunction createInstance(defaultConfig) {\n const context = new Axios(defaultConfig);\n const instance = bind(Axios.prototype.request, context);\n\n // Copy axios.prototype to instance\n utils.extend(instance, Axios.prototype, context, {allOwnKeys: true});\n\n // Copy context to instance\n utils.extend(instance, context, null, {allOwnKeys: true});\n\n // Factory for creating new instances\n instance.create = function create(instanceConfig) {\n return createInstance(mergeConfig(defaultConfig, instanceConfig));\n };\n\n return instance;\n}\n\n// Create the default instance to be exported\nconst axios = createInstance(defaults);\n\n// Expose Axios class to allow class inheritance\naxios.Axios = Axios;\n\n// Expose Cancel & CancelToken\naxios.CanceledError = CanceledError;\naxios.CancelToken = CancelToken;\naxios.isCancel = isCancel;\naxios.VERSION = VERSION;\naxios.toFormData = toFormData;\n\n// Expose AxiosError class\naxios.AxiosError = AxiosError;\n\n// alias for CanceledError for backward compatibility\naxios.Cancel = axios.CanceledError;\n\n// Expose all/spread\naxios.all = function all(promises) {\n return Promise.all(promises);\n};\n\naxios.spread = spread;\n\n// Expose isAxiosError\naxios.isAxiosError = isAxiosError;\n\n// Expose mergeConfig\naxios.mergeConfig = mergeConfig;\n\naxios.AxiosHeaders = AxiosHeaders;\n\naxios.formToJSON = thing => formDataToJSON(utils.isHTMLForm(thing) ? new FormData(thing) : thing);\n\naxios.getAdapter = adapters.getAdapter;\n\naxios.HttpStatusCode = HttpStatusCode;\n\naxios.default = axios;\n\n// this module should only have a default export\nexport default axios\n","'use strict';\n\n/**\n * Syntactic sugar for invoking a function and expanding an array for arguments.\n *\n * Common use case would be to use `Function.prototype.apply`.\n *\n * ```js\n * function f(x, y, z) {}\n * var args = [1, 2, 3];\n * f.apply(null, args);\n * ```\n *\n * With `spread` this example can be re-written.\n *\n * ```js\n * spread(function(x, y, z) {})([1, 2, 3]);\n * ```\n *\n * @param {Function} callback\n *\n * @returns {Function}\n */\nexport default function spread(callback) {\n return function wrap(arr) {\n return callback.apply(null, arr);\n };\n}\n","'use strict';\n\nimport utils from './../utils.js';\n\n/**\n * Determines whether the payload is an error thrown by Axios\n *\n * @param {*} payload The value to test\n *\n * @returns {boolean} True if the payload is an error thrown by Axios, otherwise false\n */\nexport default function isAxiosError(payload) {\n return utils.isObject(payload) && (payload.isAxiosError === true);\n}\n","import TypesenseError from \"./TypesenseError\";\n\nexport default class RequestMalformed extends TypesenseError {}\n","import TypesenseError from \"./TypesenseError\";\n\nexport default class RequestUnauthorized extends TypesenseError {}\n","import TypesenseError from \"./TypesenseError\";\n\nexport default class ObjectNotFound extends TypesenseError {}\n","import TypesenseError from \"./TypesenseError\";\n\nexport default class ObjectAlreadyExists extends TypesenseError {}\n","import TypesenseError from \"./TypesenseError\";\n\nexport default class ObjectUnprocessable extends TypesenseError {}\n","import TypesenseError from \"./TypesenseError\";\n\nexport default class ServerError extends TypesenseError {}\n","import TypesenseError from \"./TypesenseError\";\n\nexport default class HTTPError extends TypesenseError {}\n","import type {\n AxiosAdapter,\n AxiosRequestConfig,\n AxiosResponse,\n Method,\n} from \"axios\";\nimport axios from \"axios\";\nimport { Agent as HTTPAgent } from \"http\";\nimport { Agent as HTTPSAgent } from \"https\";\nimport { Logger } from \"loglevel\";\nimport Configuration, { NodeConfiguration } from \"./Configuration\";\nimport {\n HTTPError,\n ObjectAlreadyExists,\n ObjectNotFound,\n ObjectUnprocessable,\n RequestMalformed,\n RequestUnauthorized,\n ServerError,\n} from \"./Errors\";\nimport TypesenseError from \"./Errors/TypesenseError\";\n\nconst APIKEYHEADERNAME = \"X-TYPESENSE-API-KEY\";\nconst HEALTHY = true;\nconst UNHEALTHY = false;\n\ninterface Node extends NodeConfiguration {\n isHealthy: boolean;\n index: string | number;\n}\n\nconst isNodeJSEnvironment =\n typeof process !== \"undefined\" &&\n process.versions != null &&\n process.versions.node != null;\n\nexport default class ApiCall {\n private readonly apiKey: string;\n private readonly nodes: Node[];\n private readonly nearestNode: Node;\n private readonly connectionTimeoutSeconds: number;\n private readonly healthcheckIntervalSeconds: number;\n private readonly retryIntervalSeconds: number;\n private readonly sendApiKeyAsQueryParam?: boolean;\n private readonly numRetriesPerRequest: number;\n private readonly additionalUserHeaders?: Record;\n\n private readonly logger: Logger;\n private currentNodeIndex: number;\n\n constructor(private configuration: Configuration) {\n this.apiKey = this.configuration.apiKey;\n this.nodes =\n this.configuration.nodes == null\n ? this.configuration.nodes\n : JSON.parse(JSON.stringify(this.configuration.nodes)); // Make a copy, since we'll be adding additional metadata to the nodes\n this.nearestNode =\n this.configuration.nearestNode == null\n ? this.configuration.nearestNode\n : JSON.parse(JSON.stringify(this.configuration.nearestNode));\n this.connectionTimeoutSeconds = this.configuration.connectionTimeoutSeconds;\n this.healthcheckIntervalSeconds =\n this.configuration.healthcheckIntervalSeconds;\n this.numRetriesPerRequest = this.configuration.numRetries;\n this.retryIntervalSeconds = this.configuration.retryIntervalSeconds;\n this.sendApiKeyAsQueryParam = this.configuration.sendApiKeyAsQueryParam;\n this.additionalUserHeaders = this.configuration.additionalHeaders;\n\n this.logger = this.configuration.logger;\n\n this.initializeMetadataForNodes();\n this.currentNodeIndex = -1;\n }\n\n async get(\n endpoint: string,\n queryParameters: any = {},\n {\n abortSignal = null,\n responseType = undefined,\n }: {\n abortSignal?: any;\n responseType?: AxiosRequestConfig[\"responseType\"] | undefined;\n } = {},\n ): Promise {\n return this.performRequest(\"get\", endpoint, {\n queryParameters,\n abortSignal,\n responseType,\n });\n }\n\n async delete(endpoint: string, queryParameters: any = {}): Promise {\n return this.performRequest(\"delete\", endpoint, { queryParameters });\n }\n\n async post(\n endpoint: string,\n bodyParameters: any = {},\n queryParameters: any = {},\n additionalHeaders: any = {},\n ): Promise {\n return this.performRequest(\"post\", endpoint, {\n queryParameters,\n bodyParameters,\n additionalHeaders,\n });\n }\n\n async put(\n endpoint: string,\n bodyParameters: any = {},\n queryParameters: any = {},\n ): Promise {\n return this.performRequest(\"put\", endpoint, {\n queryParameters,\n bodyParameters,\n });\n }\n\n async patch(\n endpoint: string,\n bodyParameters: any = {},\n queryParameters: any = {},\n ): Promise {\n return this.performRequest(\"patch\", endpoint, {\n queryParameters,\n bodyParameters,\n });\n }\n\n private getAdapter(): AxiosAdapter | undefined {\n if (!this.configuration.axiosAdapter) return undefined;\n\n if (typeof this.configuration.axiosAdapter === \"function\")\n return this.configuration.axiosAdapter;\n\n const isCloudflareWorkers =\n typeof navigator !== \"undefined\" &&\n navigator.userAgent === \"Cloudflare-Workers\";\n\n return isCloudflareWorkers\n ? axios.getAdapter(this.configuration.axiosAdapter).bind(globalThis)\n : axios.getAdapter(this.configuration.axiosAdapter);\n }\n\n async performRequest(\n requestType: Method,\n endpoint: string,\n {\n queryParameters = null,\n bodyParameters = null,\n additionalHeaders = {},\n abortSignal = null,\n responseType = undefined,\n skipConnectionTimeout = false,\n enableKeepAlive = undefined,\n }: {\n queryParameters?: any;\n bodyParameters?: any;\n additionalHeaders?: any;\n abortSignal?: any;\n responseType?: AxiosRequestConfig[\"responseType\"] | undefined;\n skipConnectionTimeout?: boolean;\n enableKeepAlive?: boolean | undefined;\n },\n ): Promise {\n this.configuration.validate();\n\n const requestNumber = Date.now();\n let lastException;\n let wasAborted = false;\n this.logger.debug(\n `Request #${requestNumber}: Performing ${requestType.toUpperCase()} request: ${endpoint}`,\n );\n for (\n let numTries = 1;\n numTries <= this.numRetriesPerRequest + 1;\n numTries++\n ) {\n const node = this.getNextNode(requestNumber);\n this.logger.debug(\n `Request #${requestNumber}: Attempting ${requestType.toUpperCase()} request Try #${numTries} to Node ${\n node.index\n }`,\n );\n\n if (abortSignal && abortSignal.aborted) {\n return Promise.reject(new Error(\"Request aborted by caller.\"));\n }\n\n let abortListener: ((event: Event) => void) | undefined;\n\n try {\n const requestOptions: AxiosRequestConfig = {\n adapter: this.getAdapter(),\n method: requestType,\n url: this.uriFor(endpoint, node),\n headers: Object.assign(\n {},\n this.defaultHeaders(),\n additionalHeaders,\n this.additionalUserHeaders,\n ),\n maxContentLength: Infinity,\n maxBodyLength: Infinity,\n responseType,\n validateStatus: (status) => {\n /* Override default validateStatus, which only considers 2xx a success.\n In our case, if the server returns any HTTP code, we will handle it below.\n We do this to be able to raise custom errors based on response code.\n */\n return status > 0;\n },\n transformResponse: [\n (data, headers) => {\n let transformedData = data;\n if (\n headers !== undefined &&\n typeof data === \"string\" &&\n headers[\"content-type\"] &&\n headers[\"content-type\"].startsWith(\"application/json\")\n ) {\n transformedData = JSON.parse(data);\n }\n return transformedData;\n },\n ],\n };\n\n if (skipConnectionTimeout !== true) {\n requestOptions.timeout = this.connectionTimeoutSeconds * 1000;\n }\n\n if (queryParameters && Object.keys(queryParameters).length !== 0) {\n requestOptions.params = queryParameters;\n }\n\n if (this.sendApiKeyAsQueryParam) {\n requestOptions.params = requestOptions.params || {};\n requestOptions.params[\"x-typesense-api-key\"] = this.apiKey;\n }\n\n if (this.configuration.httpAgent) {\n this.logger.debug(\n `Request #${requestNumber}: Using custom httpAgent`,\n );\n requestOptions.httpAgent = this.configuration.httpAgent;\n } else if (enableKeepAlive === true) {\n if (!isNodeJSEnvironment) {\n this.logger.warn(\n `Request #${requestNumber}: Cannot use custom httpAgent in a browser environment to enable keepAlive`,\n );\n } else {\n this.logger.debug(`Request #${requestNumber}: Enabling KeepAlive`);\n requestOptions.httpAgent = new HTTPAgent({ keepAlive: true });\n }\n }\n\n if (this.configuration.httpsAgent) {\n this.logger.debug(\n `Request #${requestNumber}: Using custom httpsAgent`,\n );\n requestOptions.httpsAgent = this.configuration.httpsAgent;\n } else if (enableKeepAlive === true) {\n if (!isNodeJSEnvironment) {\n this.logger.warn(\n `Request #${requestNumber}: Cannot use custom httpAgent in a browser environment to enable keepAlive`,\n );\n } else {\n this.logger.debug(`Request #${requestNumber}: Enabling keepAlive`);\n requestOptions.httpsAgent = new HTTPSAgent({ keepAlive: true });\n }\n }\n\n if (this.configuration.paramsSerializer) {\n this.logger.debug(\n `Request #${requestNumber}: Using custom paramsSerializer`,\n );\n requestOptions.paramsSerializer = this.configuration.paramsSerializer;\n }\n\n if (\n bodyParameters &&\n ((typeof bodyParameters === \"string\" &&\n bodyParameters.length !== 0) ||\n (typeof bodyParameters === \"object\" &&\n Object.keys(bodyParameters).length !== 0))\n ) {\n requestOptions.data = bodyParameters;\n }\n\n // Translate from user-provided AbortController to the Axios request cancel mechanism.\n if (abortSignal) {\n const cancelToken = axios.CancelToken;\n const source = cancelToken.source();\n abortListener = () => {\n wasAborted = true;\n source.cancel();\n };\n abortSignal.addEventListener(\"abort\", abortListener);\n requestOptions.cancelToken = source.token;\n }\n\n const response = await axios(requestOptions);\n if (response.status >= 1 && response.status <= 499) {\n // Treat any status code > 0 and < 500 to be an indication that node is healthy\n // We exclude 0 since some clients return 0 when request fails\n this.setNodeHealthcheck(node, HEALTHY);\n }\n this.logger.debug(\n `Request #${requestNumber}: Request to Node ${node.index} was made. Response Code was ${response.status}.`,\n );\n\n if (response.status >= 200 && response.status < 300) {\n // If response is 2xx return a resolved promise\n return Promise.resolve(response.data);\n } else if (response.status < 500) {\n // Next, if response is anything but 5xx, don't retry, return a custom error\n return Promise.reject(\n this.customErrorForResponse(\n response,\n response.data?.message,\n requestOptions.data,\n ),\n );\n } else {\n // Retry all other HTTP errors (HTTPStatus > 500)\n // This will get caught by the catch block below\n throw this.customErrorForResponse(\n response,\n response.data?.message,\n requestOptions.data,\n );\n }\n } catch (error: any) {\n // This block handles retries for HTTPStatus > 500 and network layer issues like connection timeouts\n if (!wasAborted) {\n this.setNodeHealthcheck(node, UNHEALTHY);\n }\n lastException = error;\n this.logger.warn(\n `Request #${requestNumber}: Request to Node ${\n node.index\n } failed due to \"${error?.code ?? \"\"} ${error.message}${\n error.response == null\n ? \"\"\n : \" - \" + JSON.stringify(error.response?.data)\n }\"`,\n );\n // this.logger.debug(error.stack)\n if (wasAborted) {\n return Promise.reject(new Error(\"Request aborted by caller.\"));\n }\n if (numTries < this.numRetriesPerRequest + 1) {\n this.logger.warn(\n `Request #${requestNumber}: Sleeping for ${this.retryIntervalSeconds}s and then retrying request...`,\n );\n }\n await this.timer(this.retryIntervalSeconds);\n } finally {\n if (abortSignal && abortListener) {\n abortSignal.removeEventListener(\"abort\", abortListener);\n }\n }\n }\n this.logger.debug(\n `Request #${requestNumber}: No retries left. Raising last error`,\n );\n return Promise.reject(lastException);\n }\n\n // Attempts to find the next healthy node, looping through the list of nodes once.\n // But if no healthy nodes are found, it will just return the next node, even if it's unhealthy\n // so we can try the request for good measure, in case that node has become healthy since\n getNextNode(requestNumber = 0): Node {\n // Check if nearestNode is set and is healthy, if so return it\n if (this.nearestNode != null) {\n this.logger.debug(\n `Request #${requestNumber}: Nodes Health: Node ${\n this.nearestNode.index\n } is ${this.nearestNode.isHealthy === true ? \"Healthy\" : \"Unhealthy\"}`,\n );\n if (\n this.nearestNode.isHealthy === true ||\n this.nodeDueForHealthcheck(this.nearestNode, requestNumber)\n ) {\n this.logger.debug(\n `Request #${requestNumber}: Updated current node to Node ${this.nearestNode.index}`,\n );\n return this.nearestNode;\n }\n this.logger.debug(\n `Request #${requestNumber}: Falling back to individual nodes`,\n );\n }\n\n // Fallback to nodes as usual\n this.logger.debug(\n `Request #${requestNumber}: Nodes Health: ${this.nodes\n .map(\n (node) =>\n `Node ${node.index} is ${\n node.isHealthy === true ? \"Healthy\" : \"Unhealthy\"\n }`,\n )\n .join(\" || \")}`,\n );\n let candidateNode: Node = this.nodes[0];\n for (let i = 0; i <= this.nodes.length; i++) {\n this.currentNodeIndex = (this.currentNodeIndex + 1) % this.nodes.length;\n candidateNode = this.nodes[this.currentNodeIndex];\n if (\n candidateNode.isHealthy === true ||\n this.nodeDueForHealthcheck(candidateNode, requestNumber)\n ) {\n this.logger.debug(\n `Request #${requestNumber}: Updated current node to Node ${candidateNode.index}`,\n );\n return candidateNode;\n }\n }\n\n // None of the nodes are marked healthy, but some of them could have become healthy since last health check.\n // So we will just return the next node.\n this.logger.debug(\n `Request #${requestNumber}: No healthy nodes were found. Returning the next node, Node ${candidateNode.index}`,\n );\n return candidateNode;\n }\n\n nodeDueForHealthcheck(node, requestNumber = 0): boolean {\n const isDueForHealthcheck =\n Date.now() - node.lastAccessTimestamp >\n this.healthcheckIntervalSeconds * 1000;\n if (isDueForHealthcheck) {\n this.logger.debug(\n `Request #${requestNumber}: Node ${node.index} has exceeded healtcheckIntervalSeconds of ${this.healthcheckIntervalSeconds}. Adding it back into rotation.`,\n );\n }\n return isDueForHealthcheck;\n }\n\n initializeMetadataForNodes(): void {\n if (this.nearestNode != null) {\n this.nearestNode.index = \"nearestNode\";\n this.setNodeHealthcheck(this.nearestNode, HEALTHY);\n }\n\n this.nodes.forEach((node, i) => {\n node.index = i;\n this.setNodeHealthcheck(node, HEALTHY);\n });\n }\n\n setNodeHealthcheck(node, isHealthy): void {\n node.isHealthy = isHealthy;\n node.lastAccessTimestamp = Date.now();\n }\n\n uriFor(endpoint: string, node): string {\n if (node.url != null) {\n return `${node.url}${endpoint}`;\n }\n return `${node.protocol}://${node.host}:${node.port}${node.path}${endpoint}`;\n }\n\n defaultHeaders(): any {\n const defaultHeaders = {};\n if (!this.sendApiKeyAsQueryParam) {\n defaultHeaders[APIKEYHEADERNAME] = this.apiKey;\n }\n defaultHeaders[\"Content-Type\"] = \"application/json\";\n return defaultHeaders;\n }\n\n async timer(seconds): Promise {\n return new Promise((resolve) => setTimeout(resolve, seconds * 1000));\n }\n\n customErrorForResponse(\n response: AxiosResponse,\n messageFromServer: string,\n httpBody?: string,\n ): TypesenseError {\n let errorMessage = `Request failed with HTTP code ${response.status}`;\n if (\n typeof messageFromServer === \"string\" &&\n messageFromServer.trim() !== \"\"\n ) {\n errorMessage += ` | Server said: ${messageFromServer}`;\n }\n\n let error = new TypesenseError(errorMessage, httpBody, response.status);\n\n if (response.status === 400) {\n error = new RequestMalformed(errorMessage);\n } else if (response.status === 401) {\n error = new RequestUnauthorized(errorMessage);\n } else if (response.status === 404) {\n error = new ObjectNotFound(errorMessage);\n } else if (response.status === 409) {\n error = new ObjectAlreadyExists(errorMessage);\n } else if (response.status === 422) {\n error = new ObjectUnprocessable(errorMessage);\n } else if (response.status >= 500 && response.status <= 599) {\n error = new ServerError(errorMessage);\n } else {\n error = new HTTPError(errorMessage);\n }\n\n return error;\n }\n}\n","import ApiCall from \"./ApiCall\";\nimport type { CollectionFieldSchema, CollectionSchema } from \"./Collection\";\n\nexport interface BaseCollectionCreateSchema {\n name: string;\n default_sorting_field?: string;\n symbols_to_index?: string[];\n token_separators?: string[];\n enable_nested_fields?: boolean;\n metadata?: object;\n voice_query_model?: {\n model_name?: string;\n };\n}\n\ninterface CollectionCreateSchemaWithSrc\n extends Pick {\n fields?: CollectionFieldSchema[];\n}\n\ninterface CollectionCreateSchemaWithoutSrc extends BaseCollectionCreateSchema {\n fields: CollectionFieldSchema[];\n}\n\n/**\n * Defines the schema for creating a collection in Typesense.\n *\n * If the `src_name` property in `Options` is a string, the `fields` prop is optional, and only used for embedding fields.\n * Otherwise, `fields` will be required.\n */\nexport type CollectionCreateSchema<\n Options extends CollectionCreateOptions = CollectionCreateOptions,\n> = Options[\"src_name\"] extends string\n ? CollectionCreateSchemaWithSrc\n : CollectionCreateSchemaWithoutSrc;\n\nexport interface CollectionCreateOptions {\n src_name?: string;\n}\n\nexport interface CollectionsRetrieveOptions {\n exclude_fields?: string;\n}\n\nconst RESOURCEPATH = \"/collections\";\n\nexport default class Collections {\n constructor(private apiCall: ApiCall) {}\n\n async create(\n schema: CollectionCreateSchema,\n options?: Options,\n ): Promise {\n return this.apiCall.post(RESOURCEPATH, schema, options);\n }\n\n async retrieve(\n options: CollectionsRetrieveOptions = {},\n ): Promise {\n return this.apiCall.get(RESOURCEPATH, options);\n }\n\n static get RESOURCEPATH() {\n return RESOURCEPATH;\n }\n}\n","import TypesenseError from \"./TypesenseError\";\nimport type { DocumentImportParameters, ImportResponse } from \"../Documents\";\nimport { ReadStream } from \"node:fs\";\n\ninterface ImportErrorPayload {\n documentsInJSONLFormat: string | ReadStream;\n options: DocumentImportParameters;\n failedItems: ImportResponse[];\n successCount: number;\n}\n\nexport default class ImportError extends TypesenseError {\n payload: ImportErrorPayload;\n importResults: ImportResponse[];\n constructor(\n message: string,\n importResults: ImportResponse[],\n payload: ImportErrorPayload,\n ) {\n super(message);\n this.importResults = importResults;\n this.payload = payload;\n }\n}\n","function _arrayLikeToArray(r, a) {\n (null == a || a > r.length) && (a = r.length);\n for (var e = 0, n = Array(a); e < a; e++) n[e] = r[e];\n return n;\n}\nexport { _arrayLikeToArray as default };","import arrayLikeToArray from \"./arrayLikeToArray.js\";\nfunction _unsupportedIterableToArray(r, a) {\n if (r) {\n if (\"string\" == typeof r) return arrayLikeToArray(r, a);\n var t = {}.toString.call(r).slice(8, -1);\n return \"Object\" === t && r.constructor && (t = r.constructor.name), \"Map\" === t || \"Set\" === t ? Array.from(r) : \"Arguments\" === t || /^(?:Ui|I)nt(?:8|16|32)(?:Clamped)?Array$/.test(t) ? arrayLikeToArray(r, a) : void 0;\n }\n}\nexport { _unsupportedIterableToArray as default };","import arrayWithoutHoles from \"./arrayWithoutHoles.js\";\nimport iterableToArray from \"./iterableToArray.js\";\nimport unsupportedIterableToArray from \"./unsupportedIterableToArray.js\";\nimport nonIterableSpread from \"./nonIterableSpread.js\";\nfunction _toConsumableArray(r) {\n return arrayWithoutHoles(r) || iterableToArray(r) || unsupportedIterableToArray(r) || nonIterableSpread();\n}\nexport { _toConsumableArray as default };","import arrayLikeToArray from \"./arrayLikeToArray.js\";\nfunction _arrayWithoutHoles(r) {\n if (Array.isArray(r)) return arrayLikeToArray(r);\n}\nexport { _arrayWithoutHoles as default };","function _iterableToArray(r) {\n if (\"undefined\" != typeof Symbol && null != r[Symbol.iterator] || null != r[\"@@iterator\"]) return Array.from(r);\n}\nexport { _iterableToArray as default };","function _nonIterableSpread() {\n throw new TypeError(\"Invalid attempt to spread non-iterable instance.\\nIn order to be iterable, non-array objects must have a [Symbol.iterator]() method.\");\n}\nexport { _nonIterableSpread as default };","const defaultCacheResponseForSeconds = 2 * 60;\nconst defaultMaxSize = 100;\n\nexport default class RequestWithCache {\n private responseCache: Map = new Map();\n private responsePromiseCache: Map = new Map();\n\n clearCache() {\n this.responseCache = new Map();\n this.responsePromiseCache = new Map();\n }\n\n // Todo: should probably be passed a callback instead, or an apiCall instance. Types are messy this way\n async perform(\n requestContext: any,\n requestFunction: (...params: any) => unknown,\n requestFunctionArguments: any[],\n cacheOptions: CacheOptions\n ): Promise {\n const {\n cacheResponseForSeconds = defaultCacheResponseForSeconds,\n maxSize = defaultMaxSize,\n } = cacheOptions;\n const isCacheDisabled = cacheResponseForSeconds <= 0 || maxSize <= 0;\n\n if (isCacheDisabled) {\n return requestFunction.call(requestContext, ...requestFunctionArguments);\n }\n\n const requestFunctionArgumentsJSON = JSON.stringify(\n requestFunctionArguments\n );\n const cacheEntry = this.responseCache.get(requestFunctionArgumentsJSON);\n const now = Date.now();\n\n if (cacheEntry) {\n const isEntryValid =\n now - cacheEntry.requestTimestamp < cacheResponseForSeconds * 1000;\n if (isEntryValid) {\n this.responseCache.delete(requestFunctionArgumentsJSON);\n this.responseCache.set(requestFunctionArgumentsJSON, cacheEntry);\n return Promise.resolve(cacheEntry.response);\n } else {\n this.responseCache.delete(requestFunctionArgumentsJSON);\n }\n }\n\n const cachePromiseEntry = this.responsePromiseCache.get(\n requestFunctionArgumentsJSON\n );\n\n if (cachePromiseEntry) {\n const isEntryValid =\n now - cachePromiseEntry.requestTimestamp <\n cacheResponseForSeconds * 1000;\n if (isEntryValid) {\n this.responsePromiseCache.delete(requestFunctionArgumentsJSON);\n this.responsePromiseCache.set(\n requestFunctionArgumentsJSON,\n cachePromiseEntry\n );\n return cachePromiseEntry.responsePromise;\n } else {\n this.responsePromiseCache.delete(requestFunctionArgumentsJSON);\n }\n }\n\n const responsePromise = requestFunction.call(\n requestContext,\n ...requestFunctionArguments\n );\n this.responsePromiseCache.set(requestFunctionArgumentsJSON, {\n requestTimestamp: now,\n responsePromise,\n });\n\n const response = await responsePromise;\n this.responseCache.set(requestFunctionArgumentsJSON, {\n requestTimestamp: now,\n response,\n });\n\n const isCacheOverMaxSize = this.responseCache.size > maxSize;\n if (isCacheOverMaxSize) {\n const oldestEntry = this.responseCache.keys().next().value;\n if (oldestEntry) {\n this.responseCache.delete(oldestEntry);\n }\n }\n const isResponsePromiseCacheOverMaxSize =\n this.responsePromiseCache.size > maxSize;\n if (isResponsePromiseCacheOverMaxSize) {\n const oldestEntry = this.responsePromiseCache.keys().next().value;\n if (oldestEntry) {\n this.responsePromiseCache.delete(oldestEntry);\n }\n }\n return response as T;\n }\n}\n\ninterface CacheOptions {\n cacheResponseForSeconds?: number;\n maxSize?: number;\n}\n","import {\n DocumentSchema,\n SearchParamsWithPreset,\n SearchOptions,\n SearchResponse,\n DocumentWriteParameters,\n DeleteQuery,\n DeleteResponse,\n ImportResponse,\n DocumentsExportParameters,\n} from \"./Documents\";\n\nexport type DropTokensMode = \"right_to_left\" | \"left_to_right\" | \"both_sides:3\";\n\nexport type OperationMode = \"off\" | \"always\" | \"fallback\";\n\nexport type UnionArrayKeys = {\n [K in keyof T]: T[K] extends undefined\n ? never\n : NonNullable extends infer R\n ? R extends R[]\n ? never\n : R extends (infer U)[] | infer U\n ? U[] extends R\n ? K\n : never\n : never\n : never;\n}[keyof T] &\n keyof T;\n\nexport type UnionArraySearchParams = UnionArrayKeys;\n\nexport type ArraybleParams = {\n readonly [K in UnionArraySearchParams]: string;\n};\n\nexport type ExtractBaseTypes = {\n [K in keyof T]: K extends UnionArrayKeys\n ? T[K] extends (infer U)[] | infer U\n ? U\n : T[K]\n : T[K];\n};\n\nexport const arrayableParams: ArraybleParams = {\n query_by: \"query_by\",\n query_by_weights: \"query_by_weights\",\n facet_by: \"facet_by\",\n group_by: \"group_by\",\n include_fields: \"include_fields\",\n exclude_fields: \"exclude_fields\",\n highlight_fields: \"highlight_fields\",\n highlight_full_fields: \"highlight_full_fields\",\n pinned_hits: \"pinned_hits\",\n hidden_hits: \"hidden_hits\",\n infix: \"infix\",\n override_tags: \"override_tags\",\n num_typos: \"num_typos\",\n prefix: \"prefix\",\n sort_by: \"sort_by\",\n};\n\nexport interface SearchParams {\n // From https://typesense.org/docs/latest/api/documents.html#arguments\n // eslint-disable-next-line @typescript-eslint/ban-types -- Can't use `object` here, it needs to intersect with `{}`\n q?: \"*\" | (string & {});\n query_by?: string | string[];\n query_by_weights?: string | number[];\n prefix?: string | boolean | boolean[]; // default: true\n filter_by?: string;\n max_filter_by_candidates?: number; // default: 4\n enable_synonyms?: boolean; // default: true\n enable_analytics?: boolean; // default: true\n filter_curated_hits?: boolean; // default: false\n enable_lazy_filter?: boolean; // default: false\n sort_by?: string | string[]; // default: text match desc\n facet_by?: string | string[];\n max_facet_values?: number;\n facet_sample_threshold?: number;\n facet_sample_percent?: number;\n facet_query?: string;\n facet_query_num_typos?: number;\n facet_return_parent?: string;\n facet_strategy?: \"exhaustive\" | \"top_values\" | \"automatic\";\n page?: number; // default: 1\n per_page?: number; // default: 10, max 250\n group_by?: string | string[];\n group_limit?: number; // default:\n group_missing_values?: boolean;\n include_fields?: string | string[];\n exclude_fields?: string | string[];\n highlight_fields?: string | string[]; // default: all queried fields\n highlight_full_fields?: string | string[]; // default: all fields\n highlight_affix_num_tokens?: number; // default: 4\n highlight_start_tag?: string; // default: \n highlight_end_tag?: string; // default: \n enable_highlight_v1?: boolean;\n snippet_threshold?: number; // default: 30\n num_typos?: string | number | number[]; // default: 2\n min_len_1typo?: number;\n min_len_2typo?: number;\n split_join_tokens?: OperationMode;\n exhaustive_search?: boolean;\n drop_tokens_threshold?: number; // default: 10\n drop_tokens_mode?: DropTokensMode;\n typo_tokens_threshold?: number; // default: 100\n pinned_hits?: string | string[];\n hidden_hits?: string | string[];\n limit_hits?: number; // default: no limit\n pre_segmented_query?: boolean;\n enable_overrides?: boolean;\n override_tags?: string | string[];\n prioritize_exact_match?: boolean; // default: true\n prioritize_token_position?: boolean;\n prioritize_num_matching_fields?: boolean;\n search_cutoff_ms?: number;\n use_cache?: boolean;\n max_candidates?: number;\n infix?: OperationMode | OperationMode[];\n preset?: string;\n text_match_type?: \"max_score\" | \"max_weight\";\n vector_query?: string;\n \"x-typesense-api-key\"?: string;\n \"x-typesense-user-id\"?: string;\n offset?: number;\n limit?: number;\n stopwords?: string;\n conversation?: boolean;\n conversation_model_id?: string;\n conversation_id?: string;\n voice_query?: string;\n}\nexport interface SearchableDocuments {\n search(\n searchParameters: SearchParams | SearchParamsWithPreset,\n options: SearchOptions,\n ): Promise>;\n clearCache(): void;\n}\n\nexport interface WriteableDocuments {\n create(document: T, options: DocumentWriteParameters): Promise;\n upsert(document: T, options: DocumentWriteParameters): Promise;\n update(document: T, options: DocumentWriteParameters): Promise;\n delete(query: DeleteQuery): Promise;\n import(\n documents: T[] | string,\n options: DocumentWriteParameters,\n ): Promise;\n export(options: DocumentsExportParameters): Promise;\n}\n","import { arrayableParams } from \"./Types\";\nimport type { UnionArrayKeys, ExtractBaseTypes, SearchParams } from \"./Types\";\n\nfunction hasNoArrayValues(\n params: T | ExtractBaseTypes,\n): params is ExtractBaseTypes {\n return Object.keys(arrayableParams)\n .filter((key) => params[key] !== undefined)\n .every((key) => isNonArrayValue(params[key]));\n}\n\nexport function normalizeArrayableParams(\n params: T,\n): Prettify> {\n const result = { ...params };\n\n const transformedValues = Object.keys(arrayableParams)\n .filter((key) => Array.isArray(result[key]))\n .map((key) => {\n result[key] = result[key].join(\",\");\n return key;\n });\n\n if (!transformedValues.length && hasNoArrayValues(result)) {\n return result;\n }\n\n if (!hasNoArrayValues(result)) {\n throw new Error(\n `Failed to normalize arrayable params: ${JSON.stringify(result)}`,\n );\n }\n\n return result;\n}\n\nfunction isNonArrayValue>(\n value: T[K] | ExtractBaseTypes[K],\n): value is ExtractBaseTypes[K] {\n return !Array.isArray(value);\n}\n\ntype Prettify = {\n [K in keyof T]: T[K];\n // eslint-disable-next-line @typescript-eslint/ban-types\n} & {};\n","import RequestWithCache from \"./RequestWithCache\";\nimport ApiCall from \"./ApiCall\";\nimport Configuration from \"./Configuration\";\nimport Collections from \"./Collections\";\nimport type {\n DocumentSchema,\n SearchOptions,\n SearchParamsWithPreset,\n SearchResponse,\n} from \"./Documents\";\nimport { normalizeArrayableParams } from \"./Utils\";\nimport { SearchableDocuments, SearchParams } from \"./Types\";\n\nconst RESOURCEPATH = \"/documents\";\n\nexport class SearchOnlyDocuments\n implements SearchableDocuments\n{\n protected requestWithCache: RequestWithCache = new RequestWithCache();\n\n constructor(\n protected collectionName: string,\n protected apiCall: ApiCall,\n protected configuration: Configuration\n ) {}\n\n clearCache() {\n this.requestWithCache.clearCache();\n }\n\n async search(\n searchParameters: SearchParams | SearchParamsWithPreset,\n {\n cacheSearchResultsForSeconds = this.configuration\n .cacheSearchResultsForSeconds,\n abortSignal = null,\n }: SearchOptions = {}\n ): Promise> {\n const additionalQueryParams = {};\n if (this.configuration.useServerSideSearchCache === true) {\n additionalQueryParams[\"use_cache\"] = true;\n }\n const normalizedParams = normalizeArrayableParams(searchParameters);\n const queryParams = Object.assign(\n {},\n additionalQueryParams,\n normalizedParams,\n );\n\n return this.requestWithCache.perform(\n this.apiCall,\n this.apiCall.get,\n [this.endpointPath(\"search\"), queryParams, { abortSignal }],\n {\n cacheResponseForSeconds: cacheSearchResultsForSeconds,\n }\n ) as Promise>;\n }\n\n protected endpointPath(operation?: string) {\n return `${Collections.RESOURCEPATH}/${this.collectionName}${RESOURCEPATH}${\n operation === undefined ? \"\" : \"/\" + operation\n }`;\n }\n\n static get RESOURCEPATH() {\n return RESOURCEPATH;\n }\n}\n","import type { ReadStream } from \"fs\";\nimport ApiCall from \"./ApiCall\";\nimport Configuration from \"./Configuration\";\nimport { ImportError, RequestMalformed } from \"./Errors\";\nimport { SearchOnlyDocuments } from \"./SearchOnlyDocuments\";\nimport { SearchParams, WriteableDocuments } from \"./Types\";\n\n// Todo: use generic to extract filter_by values\nexport type DeleteQuery =\n | {\n truncate?: true;\n }\n | {\n truncate?: never;\n filter_by?: string;\n batch_size?: number;\n ignore_not_found?: boolean;\n };\n\nexport interface DeleteResponse {\n num_deleted: number;\n}\n\ninterface ImportResponseSuccess {\n success: true;\n}\n\nexport interface ImportResponseFail {\n success: false;\n error: string;\n document: DocumentSchema;\n code: number;\n}\n\nexport type ImportResponse = ImportResponseSuccess | ImportResponseFail;\n\nexport type DocumentSchema = Record;\n\nexport interface SearchParamsWithPreset extends Partial {\n preset: string;\n}\n\ntype SearchResponseHighlightObject = {\n matched_tokens?: string[];\n snippet?: string;\n value?: string;\n};\n\nexport type SearchResponseHighlight = T extends string | number\n ? SearchResponseHighlightObject\n : {\n [TAttribute in keyof T]?: SearchResponseHighlight;\n };\n\nexport interface SearchResponseHit {\n curated?: true;\n highlights?: [\n {\n field: keyof T;\n snippet?: string;\n value?: string;\n snippets?: string[];\n indices?: number[];\n matched_tokens: string[][] | string[];\n },\n ];\n highlight: SearchResponseHighlight;\n document: T;\n text_match: number;\n text_match_info?: {\n best_field_score: `${number}`; // To prevent scores from being truncated by JSON spec\n best_field_weight: number;\n fields_matched: number;\n score: `${number}`; // To prevent scores from being truncated by JSON spec\n tokens_matched: number;\n };\n}\n\nexport interface SearchResponseFacetCountSchema {\n counts: {\n count: number;\n highlighted: string;\n value: string;\n }[];\n field_name: keyof T;\n stats: {\n avg?: number;\n max?: number;\n min?: number;\n sum?: number;\n };\n}\n\nexport interface SearchResponseRequestParams {\n collection_name?: string;\n q?: string;\n page?: number;\n per_page?: number;\n first_q?: string;\n voice_query?: {\n transcribed_query?: string;\n };\n}\n\n// Todo: we could infer whether this is a grouped response by adding the search params as a generic\nexport interface SearchResponse {\n facet_counts?: SearchResponseFacetCountSchema[];\n found: number;\n found_docs?: number;\n out_of: number;\n page: number;\n request_params: SearchResponseRequestParams;\n search_time_ms: number;\n search_cutoff?: boolean;\n hits?: SearchResponseHit[];\n grouped_hits?: {\n group_key: string[];\n hits: SearchResponseHit[];\n found?: number;\n }[];\n conversation?: {\n answer: string;\n conversation_history: {\n conversation: object[];\n id: string;\n last_updated: number;\n ttl: number;\n };\n conversation_id: string;\n query: string;\n };\n error?: string;\n code?: number;\n}\n\nexport interface DocumentWriteParameters {\n dirty_values?: \"coerce_or_reject\" | \"coerce_or_drop\" | \"drop\" | \"reject\";\n action?: \"create\" | \"update\" | \"upsert\" | \"emplace\";\n}\n\nexport interface UpdateByFilterParameters {\n filter_by?: string;\n}\n\nexport interface UpdateByFilterResponse {\n num_updated: number;\n}\n\nexport interface DocumentImportParameters extends DocumentWriteParameters {\n batch_size?: number;\n return_doc?: boolean;\n return_id?: boolean;\n}\n\nexport interface DocumentsExportParameters {\n filter_by?: string;\n include_fields?: string;\n exclude_fields?: string;\n}\n\nexport interface SearchOptions {\n cacheSearchResultsForSeconds?: number;\n abortSignal?: AbortSignal | null;\n}\n\nconst isNodeJSEnvironment =\n typeof process !== \"undefined\" &&\n process.versions != null &&\n process.versions.node != null;\n\nexport default class Documents\n extends SearchOnlyDocuments\n implements WriteableDocuments\n{\n constructor(\n collectionName: string,\n apiCall: ApiCall,\n configuration: Configuration,\n ) {\n super(collectionName, apiCall, configuration);\n }\n\n async create(document: T, options: DocumentWriteParameters = {}): Promise {\n if (!document) throw new Error(\"No document provided\");\n return this.apiCall.post(this.endpointPath(), document, options);\n }\n\n async upsert(document: T, options: DocumentWriteParameters = {}): Promise {\n if (!document) throw new Error(\"No document provided\");\n return this.apiCall.post(\n this.endpointPath(),\n document,\n Object.assign({}, options, { action: \"upsert\" }),\n );\n }\n\n async update(\n document: T,\n options: UpdateByFilterParameters,\n ): Promise;\n async update(document: T, options: DocumentWriteParameters): Promise;\n async update(\n document: T,\n options: DocumentWriteParameters | UpdateByFilterParameters = {},\n ): Promise {\n if (!document) throw new Error(\"No document provided\");\n\n if (options[\"filter_by\"] != null) {\n return this.apiCall.patch(\n this.endpointPath(),\n document,\n Object.assign({}, options),\n );\n } else {\n return this.apiCall.post(\n this.endpointPath(),\n document,\n Object.assign({}, options, { action: \"update\" }),\n );\n }\n }\n\n async delete(\n query: DeleteQuery = {} as DeleteQuery,\n ): Promise {\n return this.apiCall.delete(this.endpointPath(), query);\n }\n\n async createMany(documents: T[], options: DocumentImportParameters = {}) {\n this.configuration.logger.warn(\n \"createMany is deprecated and will be removed in a future version. Use import instead, which now takes both an array of documents or a JSONL string of documents\",\n );\n return this.import(documents, options);\n }\n\n /**\n * Import a set of documents in a batch.\n * @param {string|Array} documents - Can be a JSONL string of documents or an array of document objects.\n * @param options\n * @return {string|Array} Returns a JSONL string if the input was a JSONL string, otherwise it returns an array of results.\n */\n async import(\n documents: string,\n options?: DocumentImportParameters,\n ): Promise;\n async import(\n documents: T[],\n options?: DocumentImportParameters,\n ): Promise;\n async import(\n documents: T[] | string,\n options: DocumentImportParameters = {},\n ): Promise {\n let documentsInJSONLFormat;\n if (Array.isArray(documents)) {\n if (documents.length === 0) {\n throw new RequestMalformed(\"No documents provided\");\n }\n try {\n documentsInJSONLFormat = documents\n .map((document) => JSON.stringify(document))\n .join(\"\\n\");\n } catch (error: any) {\n // if rangeerror, throw custom error message\n if (\n error instanceof RangeError &&\n error.message.includes(\"Too many properties to enumerate\")\n ) {\n throw new Error(`${error}\n It looks like you have reached a Node.js limit that restricts the number of keys in an Object: https://stackoverflow.com/questions/9282869/are-there-limits-to-the-number-of-properties-in-a-javascript-object\n\n Please try reducing the number of keys in your document, or using CURL to import your data.\n `);\n }\n\n // else, throw the non-range error anyways\n throw new Error(error);\n }\n } else {\n documentsInJSONLFormat = documents;\n if (isEmptyString(documentsInJSONLFormat)) {\n throw new RequestMalformed(\"No documents provided\");\n }\n }\n\n const resultsInJSONLFormat = await this.apiCall.performRequest(\n \"post\",\n this.endpointPath(\"import\"),\n {\n queryParameters: options,\n bodyParameters: documentsInJSONLFormat,\n additionalHeaders: { \"Content-Type\": \"text/plain\" },\n skipConnectionTimeout: true, // We never want to client-side-timeout on an import and retry, since imports are syncronous and we want to let them take as long as it takes to complete fully\n enableKeepAlive: isNodeJSEnvironment ? true : false, // This is to prevent ECONNRESET socket hang up errors. Reference: https://github.com/axios/axios/issues/2936#issuecomment-779439991\n },\n );\n\n if (Array.isArray(documents)) {\n const resultsInJSONFormat = resultsInJSONLFormat\n .split(\"\\n\")\n .map((r) => JSON.parse(r)) as ImportResponse[];\n const failedItems = resultsInJSONFormat.filter(\n (r) => r.success === false,\n );\n if (failedItems.length > 0) {\n throw new ImportError(\n `${\n resultsInJSONFormat.length - failedItems.length\n } documents imported successfully, ${\n failedItems.length\n } documents failed during import. Use \\`error.importResults\\` from the raised exception to get a detailed error reason for each document.`,\n resultsInJSONFormat,\n {\n documentsInJSONLFormat,\n options,\n failedItems,\n successCount: resultsInJSONFormat.length - failedItems.length,\n },\n );\n } else {\n return resultsInJSONFormat;\n }\n } else {\n return resultsInJSONLFormat as string;\n }\n }\n /**\n * Imports documents from a NodeJS readable stream of JSONL.\n */\n async importStream(\n readableStream: ReadStream,\n options: DocumentImportParameters = {},\n ): Promise {\n const resultsInJSONLFormat = await this.apiCall.performRequest(\n \"post\",\n this.endpointPath(\"import\"),\n {\n queryParameters: options,\n bodyParameters: readableStream,\n additionalHeaders: { \"Content-Type\": \"text/plain\" },\n skipConnectionTimeout: true, // We never want to client-side-timeout on an import and retry, since imports are syncronous and we want to let them take as long as it takes to complete fully\n enableKeepAlive: isNodeJSEnvironment ? true : false, // This is to prevent ECONNRESET socket hang up errors. Reference: https://github.com/axios/axios/issues/2936#issuecomment-779439991\n },\n );\n\n const resultsInJSONFormat = resultsInJSONLFormat\n .split(\"\\n\")\n .map((r) => JSON.parse(r)) as ImportResponse[];\n const failedItems = resultsInJSONFormat.filter((r) => r.success === false);\n if (failedItems.length > 0) {\n throw new ImportError(\n `${\n resultsInJSONFormat.length - failedItems.length\n } documents imported successfully, ${\n failedItems.length\n } documents failed during import. Use \\`error.importResults\\` from the raised exception to get a detailed error reason for each document.`,\n resultsInJSONFormat,\n {\n documentsInJSONLFormat: readableStream,\n options,\n failedItems,\n successCount: resultsInJSONFormat.length - failedItems.length,\n },\n );\n } else {\n return resultsInJSONFormat;\n }\n }\n\n /**\n * Returns a JSONL string for all the documents in this collection\n */\n async export(options: DocumentsExportParameters = {}): Promise {\n return this.apiCall.get(this.endpointPath(\"export\"), options);\n }\n\n /**\n * Returns a NodeJS readable stream of JSONL for all the documents in this collection.\n */\n async exportStream(\n options: DocumentsExportParameters = {},\n ): Promise {\n return this.apiCall.get(this.endpointPath(\"export\"), options, {\n responseType: \"stream\",\n });\n }\n}\n\nfunction isEmptyString(str: string | null | undefined): boolean {\n return str == null || str === \"\" || str.length === 0;\n}\n\n/**\n * @deprecated Import from './Types' instead\n */\nexport type {\n SearchParams,\n WriteableDocuments,\n SearchableDocuments,\n DropTokensMode,\n OperationMode,\n UnionArrayKeys,\n UnionArraySearchParams,\n ArraybleParams,\n ExtractBaseTypes,\n} from \"./Types\";\n","import ApiCall from \"./ApiCall\";\nimport Collections from \"./Collections\";\nimport { OverrideSchema } from \"./Override\";\n\nconst RESOURCEPATH = \"/overrides\";\n\nexport interface OverrideRuleQuerySchema {\n query?: string;\n match?: \"exact\" | \"contains\";\n}\n\nexport interface OverrideRuleFilterSchema {\n filter_by?: string;\n}\n\nexport interface OverrideRuleTagsSchema {\n tags?: string[];\n}\n\nexport interface OverrideCreateSchema {\n rule: OverrideRuleQuerySchema &\n OverrideRuleFilterSchema &\n OverrideRuleTagsSchema;\n filter_by?: string;\n sort_by?: string;\n remove_matched_tokens?: boolean;\n replace_query?: string;\n includes?: Array<{\n id: string;\n position: number;\n }>;\n excludes?: Array<{ id: string }>;\n filter_curated_hits?: boolean;\n effective_from_ts?: number;\n effective_to_ts?: number;\n stop_processing?: boolean;\n metadata?: object;\n}\n\nexport interface OverridesRetrieveSchema {\n overrides: OverrideSchema[];\n}\n\nexport default class Overrides {\n constructor(\n private collectionName: string,\n private apiCall: ApiCall,\n ) {}\n\n async upsert(\n overrideId: string,\n params: OverrideCreateSchema,\n ): Promise {\n return this.apiCall.put(\n this.endpointPath(overrideId),\n params,\n );\n }\n\n async retrieve(): Promise {\n return this.apiCall.get(this.endpointPath());\n }\n\n private endpointPath(operation?: string): string {\n return `${Collections.RESOURCEPATH}/${this.collectionName}${\n Overrides.RESOURCEPATH\n }${operation === undefined ? \"\" : \"/\" + encodeURIComponent(operation)}`;\n }\n\n static get RESOURCEPATH(): string {\n return RESOURCEPATH;\n }\n}\n","import ApiCall from \"./ApiCall\";\nimport Collections from \"./Collections\";\nimport Overrides, { OverrideCreateSchema } from \"./Overrides\";\n\nexport interface OverrideSchema extends OverrideCreateSchema {\n id: string;\n}\n\nexport interface OverrideDeleteSchema {\n id: string;\n}\n\nexport default class Override {\n constructor(\n private collectionName: string,\n private overrideId: string,\n private apiCall: ApiCall\n ) {}\n\n async retrieve(): Promise {\n return this.apiCall.get(this.endpointPath());\n }\n\n async delete(): Promise {\n return this.apiCall.delete(this.endpointPath());\n }\n\n private endpointPath(): string {\n return `${Collections.RESOURCEPATH}/${encodeURIComponent(this.collectionName)}${Overrides.RESOURCEPATH}/${encodeURIComponent(this.overrideId)}`;\n }\n}\n","import ApiCall from \"./ApiCall\";\nimport Collections from \"./Collections\";\nimport { SynonymSchema } from \"./Synonym\";\n\nconst RESOURCEPATH = \"/synonyms\";\n\nexport interface SynonymCreateSchema {\n synonyms: string[];\n root?: string;\n locale?: string;\n symbols_to_index?: string[];\n}\n\nexport interface SynonymsRetrieveSchema {\n synonyms: SynonymSchema[];\n}\n\nexport default class Synonyms {\n constructor(private collectionName: string, private apiCall: ApiCall) {}\n\n async upsert(\n synonymId: string,\n params: SynonymCreateSchema\n ): Promise {\n return this.apiCall.put(\n this.endpointPath(synonymId),\n params\n );\n }\n\n async retrieve(): Promise {\n return this.apiCall.get(this.endpointPath());\n }\n\n private endpointPath(operation?: string) {\n return `${Collections.RESOURCEPATH}/${encodeURIComponent(this.collectionName)}${\n Synonyms.RESOURCEPATH\n }${operation === undefined ? \"\" : \"/\" + encodeURIComponent(operation)}`;\n }\n\n static get RESOURCEPATH(): string {\n return RESOURCEPATH;\n }\n}\n","import ApiCall from \"./ApiCall\";\nimport Collections from \"./Collections\";\nimport Synonyms, { SynonymCreateSchema } from \"./Synonyms\";\n\nexport interface SynonymSchema extends SynonymCreateSchema {\n id: string;\n}\n\nexport interface SynonymDeleteSchema {\n id: string;\n}\n\nexport default class Synonym {\n constructor(\n private collectionName: string,\n private synonymId: string,\n private apiCall: ApiCall\n ) {}\n\n async retrieve(): Promise {\n return this.apiCall.get(this.endpointPath());\n }\n\n async delete(): Promise {\n return this.apiCall.delete(this.endpointPath());\n }\n\n private endpointPath(): string {\n return `${Collections.RESOURCEPATH}/${encodeURIComponent(this.collectionName)}${Synonyms.RESOURCEPATH}/${encodeURIComponent(this.synonymId)}`;\n }\n}\n","import ApiCall from \"./ApiCall\";\nimport Collections from \"./Collections\";\nimport Documents, {\n DeleteQuery,\n DocumentSchema,\n DocumentWriteParameters,\n} from \"./Documents\";\n\nexport class Document {\n constructor(\n private collectionName: string,\n private documentId: string,\n private apiCall: ApiCall\n ) {}\n\n async retrieve(): Promise {\n return this.apiCall.get(this.endpointPath());\n }\n\n async delete(options?: DeleteQuery): Promise {\n return this.apiCall.delete(this.endpointPath(), options);\n }\n\n async update(\n partialDocument: Partial,\n options: DocumentWriteParameters = {}\n ): Promise {\n return this.apiCall.patch(this.endpointPath(), partialDocument, options);\n }\n\n private endpointPath(): string {\n return `${Collections.RESOURCEPATH}/${encodeURIComponent(this.collectionName)}${Documents.RESOURCEPATH}/${encodeURIComponent(this.documentId)}`;\n }\n}\n","import ApiCall from \"./ApiCall\";\nimport Collections from \"./Collections\";\nimport type {\n BaseCollectionCreateSchema,\n CollectionCreateSchema,\n} from \"./Collections\";\nimport Documents, { DocumentSchema } from \"./Documents\";\nimport { ObjectNotFound } from \"./Errors\";\nimport Overrides from \"./Overrides\";\nimport Override from \"./Override\";\nimport Synonyms from \"./Synonyms\";\nimport Synonym from \"./Synonym\";\nimport { Document } from \"./Document\";\n\nexport type FieldType =\n | \"string\"\n | \"int32\"\n | \"int64\"\n | \"float\"\n | \"bool\"\n | \"geopoint\"\n | \"geopolygon\"\n | \"geopoint[]\"\n | \"string[]\"\n | \"int32[]\"\n | \"int64[]\"\n | \"float[]\"\n | \"bool[]\"\n | \"object\"\n | \"object[]\"\n | \"auto\"\n | \"string*\"\n | \"image\";\n\nexport interface CollectionFieldSchema\n extends Partial<\n Pick\n > {\n name: string;\n type: FieldType;\n optional?: boolean;\n facet?: boolean;\n index?: boolean;\n sort?: boolean;\n locale?: string;\n infix?: boolean;\n stem?: boolean;\n num_dim?: number;\n store?: boolean;\n range_index?: boolean;\n [t: string]: unknown;\n}\n\nexport interface CollectionSchema extends CollectionCreateSchema {\n created_at: number;\n num_documents: number;\n num_memory_shards: number;\n}\n\nexport interface CollectionDropFieldSchema {\n name: string;\n drop: true;\n}\n\nexport interface CollectionUpdateSchema\n extends Partial> {\n fields?: (CollectionFieldSchema | CollectionDropFieldSchema)[];\n}\n\nexport interface CollectionDeleteOptions {\n compact_store?: boolean;\n}\n\nexport default class Collection {\n private readonly _documents: Documents;\n private individualDocuments: Record> = {};\n private readonly _overrides: Overrides;\n private individualOverrides: Record = {};\n private readonly _synonyms: Synonyms;\n private individualSynonyms: Record = {};\n\n constructor(\n private readonly name: string,\n private readonly apiCall: ApiCall,\n private readonly configuration: any,\n ) {\n this.name = name;\n this.apiCall = apiCall;\n this.configuration = configuration;\n\n this._documents = new Documents(\n this.name,\n this.apiCall,\n this.configuration,\n );\n this._overrides = new Overrides(this.name, this.apiCall);\n this._synonyms = new Synonyms(this.name, this.apiCall);\n }\n\n async retrieve(): Promise {\n return this.apiCall.get(this.endpointPath());\n }\n\n async update(schema: CollectionUpdateSchema): Promise {\n return this.apiCall.patch(this.endpointPath(), schema);\n }\n\n async delete(\n options: CollectionDeleteOptions = {},\n ): Promise {\n return this.apiCall.delete(this.endpointPath(), options);\n }\n\n async exists(): Promise {\n try {\n await this.retrieve();\n return true;\n } catch (e) {\n if (e instanceof ObjectNotFound) return false;\n throw e;\n }\n }\n\n documents(): Documents;\n documents(documentId: string): Document;\n documents(documentId?: string): Document | Documents {\n if (!documentId) {\n return this._documents;\n } else {\n if (this.individualDocuments[documentId] === undefined) {\n this.individualDocuments[documentId] = new Document(\n this.name,\n documentId,\n this.apiCall,\n );\n }\n return this.individualDocuments[documentId];\n }\n }\n\n overrides(): Overrides;\n overrides(overrideId: string): Override;\n overrides(overrideId?: string): Overrides | Override {\n if (overrideId === undefined) {\n return this._overrides;\n } else {\n if (this.individualOverrides[overrideId] === undefined) {\n this.individualOverrides[overrideId] = new Override(\n this.name,\n overrideId,\n this.apiCall,\n );\n }\n return this.individualOverrides[overrideId];\n }\n }\n\n synonyms(): Synonyms;\n synonyms(synonymId: string): Synonym;\n synonyms(synonymId?: string): Synonyms | Synonym {\n if (synonymId === undefined) {\n return this._synonyms;\n } else {\n if (this.individualSynonyms[synonymId] === undefined) {\n this.individualSynonyms[synonymId] = new Synonym(\n this.name,\n synonymId,\n this.apiCall,\n );\n }\n return this.individualSynonyms[synonymId];\n }\n }\n\n private endpointPath(): string {\n return `${Collections.RESOURCEPATH}/${encodeURIComponent(this.name)}`;\n }\n}\n","import ApiCall from \"./ApiCall\";\n\nconst RESOURCEPATH = \"/aliases\";\n\nexport interface CollectionAliasCreateSchema {\n collection_name: string;\n}\n\nexport interface CollectionAliasSchema extends CollectionAliasCreateSchema {\n name: string;\n}\n\nexport interface CollectionAliasesResponseSchema {\n aliases: CollectionAliasSchema[];\n}\n\nexport default class Aliases {\n constructor(private apiCall: ApiCall) {}\n\n async upsert(\n name: string,\n mapping: CollectionAliasCreateSchema\n ): Promise {\n return this.apiCall.put(\n this.endpointPath(name),\n mapping\n );\n }\n\n async retrieve(): Promise {\n return this.apiCall.get(RESOURCEPATH);\n }\n\n private endpointPath(aliasName): string {\n return `${Aliases.RESOURCEPATH}/${encodeURIComponent(aliasName)}`;\n }\n\n static get RESOURCEPATH(): string {\n return RESOURCEPATH;\n }\n}\n","import Aliases, { CollectionAliasSchema } from \"./Aliases\";\nimport ApiCall from \"./ApiCall\";\n\nexport default class Alias {\n constructor(private name: string, private apiCall: ApiCall) {}\n\n async retrieve(): Promise {\n return this.apiCall.get(this.endpointPath());\n }\n\n async delete(): Promise {\n return this.apiCall.delete(this.endpointPath());\n }\n\n private endpointPath(): string {\n return `${Aliases.RESOURCEPATH}/${encodeURIComponent(this.name)}`;\n }\n}\n","import { createHmac } from \"crypto\";\nimport ApiCall from \"./ApiCall\";\nimport { KeyCreateSchema, KeySchema } from \"./Key\";\nimport { SearchParams } from \"./Documents\";\nimport { normalizeArrayableParams } from \"./Utils\";\n\nconst RESOURCEPATH = \"/keys\";\n\nexport interface KeysRetrieveSchema {\n keys: KeySchema[];\n}\n\nexport interface GenerateScopedSearchKeyParams extends Partial {\n expires_at?: number;\n cache_ttl?: number;\n limit_multi_searches?: number;\n}\n\nexport default class Keys {\n constructor(private apiCall: ApiCall) {\n this.apiCall = apiCall;\n }\n\n async create(params: KeyCreateSchema): Promise {\n return this.apiCall.post(Keys.RESOURCEPATH, params);\n }\n\n async retrieve(): Promise {\n return this.apiCall.get(RESOURCEPATH);\n }\n\n generateScopedSearchKey(\n searchKey: string,\n parameters: GenerateScopedSearchKeyParams\n ): string {\n // Note: only a key generated with the `documents:search` action will be\n // accepted by the server, when usined with the search endpoint.\n const normalizedParams = normalizeArrayableParams(parameters);\n const paramsJSON = JSON.stringify(normalizedParams);\n const digest = Buffer.from(\n createHmac(\"sha256\", searchKey).update(paramsJSON).digest(\"base64\")\n );\n const keyPrefix = searchKey.substr(0, 4);\n const rawScopedKey = `${digest}${keyPrefix}${paramsJSON}`;\n\n return Buffer.from(rawScopedKey).toString(\"base64\");\n }\n\n static get RESOURCEPATH() {\n return RESOURCEPATH;\n }\n}\n","import ApiCall from \"./ApiCall\";\nimport Keys from \"./Keys\";\n\nexport interface KeyCreateSchema {\n actions: string[];\n collections: string[];\n description?: string;\n value?: string;\n value_prefix?: string;\n expires_at?: number;\n autodelete?: boolean;\n}\n\nexport interface KeyDeleteSchema {\n id: number;\n}\n\nexport interface KeySchema extends KeyCreateSchema {\n id: number;\n}\n\nexport default class Key {\n constructor(\n private id: number,\n private apiCall: ApiCall,\n ) {}\n\n async retrieve(): Promise {\n return this.apiCall.get(this.endpointPath());\n }\n\n async delete(): Promise {\n return this.apiCall.delete(this.endpointPath());\n }\n\n private endpointPath(): string {\n return `${Keys.RESOURCEPATH}/${encodeURIComponent(this.id)}`;\n }\n}\n","import ApiCall from \"./ApiCall\";\n\nconst RESOURCEPATH = \"/debug\";\n\nexport interface DebugResponseSchema {\n state: number;\n version: string;\n}\n\nexport default class Debug {\n constructor(private apiCall: ApiCall) {}\n\n async retrieve(): Promise {\n return this.apiCall.get(RESOURCEPATH);\n }\n}\n","import ApiCall from \"./ApiCall\";\n\nconst RESOURCEPATH = \"/metrics.json\";\n\nexport interface MetricsResponse {\n [key: `system_cpu${number}_active_percentage`]: string;\n system_cpu_active_percentage: string;\n system_disk_total_bytes: string;\n system_disk_used_bytes: string;\n system_memory_total_bytes: string;\n system_memory_total_swap_bytes?: string;\n system_memory_used_bytes: string;\n system_memory_used_swap_bytes?: string;\n system_network_received_bytes: string;\n system_network_sent_bytes: string;\n typesense_memory_active_bytes: string;\n typesense_memory_allocated_bytes: string;\n typesense_memory_fragmentation_ratio: string;\n typesense_memory_mapped_bytes: string;\n typesense_memory_metadata_bytes: string;\n typesense_memory_resident_bytes: string;\n typesense_memory_retained_bytes: string;\n}\n\nexport default class Metrics {\n constructor(private apiCall: ApiCall) {}\n\n async retrieve(): Promise {\n return this.apiCall.get(RESOURCEPATH);\n }\n}\n","import ApiCall from \"./ApiCall\";\n\nconst RESOURCEPATH = \"/stats.json\";\n\nexport interface EndpointStats {\n [endpoint: string]: number;\n}\n\nexport interface StatsResponse {\n delete_latency_ms?: number;\n delete_requests_per_second?: number;\n import_latency_ms?: number;\n import_requests_per_second?: number;\n latency_ms?: EndpointStats;\n overloaded_requests_per_second?: number;\n pending_write_batches?: number;\n requests_per_second?: EndpointStats;\n search_latency_ms?: number;\n search_requests_per_second?: number;\n total_requests_per_second?: number;\n write_latency_ms?: number;\n write_requests_per_second?: number;\n}\n\nexport default class Metrics {\n constructor(private apiCall: ApiCall) {}\n\n async retrieve(): Promise {\n return this.apiCall.get(RESOURCEPATH);\n }\n}\n","import ApiCall from \"./ApiCall\";\n\nconst RESOURCEPATH = \"/health\";\n\nexport interface HealthResponse {\n ok: boolean;\n}\n\nexport default class Health {\n constructor(private apiCall: ApiCall) {}\n\n async retrieve(): Promise {\n return this.apiCall.get(RESOURCEPATH);\n }\n}\n","import ApiCall from \"./ApiCall\";\n\nconst RESOURCEPATH = \"/operations\";\n\nexport default class Operations {\n constructor(private apiCall: ApiCall) {}\n\n async perform(\n operationName:\n | \"vote\"\n | \"snapshot\"\n | \"cache/clear\"\n | \"schema_changes\"\n // eslint-disable-next-line @typescript-eslint/ban-types -- Can't use `object` here, it needs to intersect with `{}`\n | (string & {}),\n queryParameters: Record = {},\n ): Promise {\n return this.apiCall.post(\n `${RESOURCEPATH}/${operationName}`,\n {},\n queryParameters,\n );\n }\n}\n","import ApiCall from \"./ApiCall\";\nimport Configuration from \"./Configuration\";\nimport RequestWithCache from \"./RequestWithCache\";\nimport {\n DocumentSchema,\n SearchParams,\n SearchParamsWithPreset,\n SearchResponse,\n SearchResponseRequestParams,\n} from \"./Documents\";\nimport { normalizeArrayableParams } from \"./Utils\";\n\nconst RESOURCEPATH = \"/multi_search\";\n\nexport interface MultiSearchRequestSchema extends SearchParams {\n collection?: string;\n rerank_hybrid_matches?: boolean;\n \"x-typesense-api-key\"?: string;\n}\n\nexport interface MultiSearchRequestWithPresetSchema\n extends SearchParamsWithPreset {\n collection?: string;\n \"x-typesense-api-key\"?: string;\n}\n\nexport interface MultiSearchRequestsSchema<\n U extends boolean | undefined = undefined,\n> {\n union?: U;\n searches: (MultiSearchRequestSchema | MultiSearchRequestWithPresetSchema)[];\n}\n\nexport interface UnionSearchResponse\n extends Omit, \"request_params\"> {\n union_request_params: SearchResponseRequestParams[];\n}\n\nexport type MultiSearchResponse<\n U extends boolean | undefined,\n T extends DocumentSchema[],\n> = U extends true\n ? UnionSearchResponse\n : {\n results: { [Index in keyof T]: SearchResponse } & {\n length: T[\"length\"];\n };\n };\n\nexport default class MultiSearch {\n private requestWithCache: RequestWithCache;\n\n constructor(\n private apiCall: ApiCall,\n private configuration: Configuration,\n private useTextContentType: boolean = false,\n ) {\n this.requestWithCache = new RequestWithCache();\n }\n\n clearCache() {\n this.requestWithCache.clearCache();\n }\n\n async perform<\n T extends DocumentSchema[] = [],\n const U extends boolean | undefined = undefined,\n >(\n searchRequests: MultiSearchRequestsSchema,\n commonParams: Partial = {},\n {\n cacheSearchResultsForSeconds = this.configuration\n .cacheSearchResultsForSeconds,\n }: { cacheSearchResultsForSeconds?: number } = {},\n ): Promise> {\n const additionalHeaders = {};\n if (this.useTextContentType) {\n additionalHeaders[\"content-type\"] = \"text/plain\";\n }\n\n const additionalQueryParams = {};\n if (this.configuration.useServerSideSearchCache === true) {\n additionalQueryParams[\"use_cache\"] = true;\n }\n\n const queryParams = { ...commonParams, ...additionalQueryParams };\n\n const normalizedSearchRequests = {\n ...searchRequests,\n searches: searchRequests.searches.map(normalizeArrayableParams),\n };\n\n const normalizedQueryParams = normalizeArrayableParams(queryParams);\n\n return this.requestWithCache.perform(\n this.apiCall,\n this.apiCall.post,\n [\n RESOURCEPATH,\n normalizedSearchRequests,\n normalizedQueryParams,\n additionalHeaders,\n ],\n { cacheResponseForSeconds: cacheSearchResultsForSeconds },\n ) as Promise>;\n }\n}\n","import ApiCall from \"./ApiCall\";\nimport { PresetSchema } from \"./Preset\";\nimport { SearchParams } from \"./Documents\";\nimport { MultiSearchRequestsSchema } from \"./MultiSearch\";\nimport { normalizeArrayableParams } from \"./Utils\";\n\nconst RESOURCEPATH = \"/presets\";\n\nexport interface PresetCreateSchema {\n value: SearchParams | MultiSearchRequestsSchema;\n}\n\nexport interface PresetsRetrieveSchema {\n presets: PresetSchema[];\n}\n\nexport default class Presets {\n constructor(private apiCall: ApiCall) {}\n\n async upsert(\n presetId: string,\n params: PresetCreateSchema,\n ): Promise {\n if (typeof params.value === \"object\" && \"searches\" in params.value) {\n const normalizedParams = params.value.searches.map((search) =>\n normalizeArrayableParams(search),\n );\n\n return this.apiCall.put(this.endpointPath(presetId), {\n value: { searches: normalizedParams },\n });\n }\n const normalizedParams = normalizeArrayableParams(params.value);\n\n return this.apiCall.put(this.endpointPath(presetId), {\n value: normalizedParams,\n });\n }\n\n async retrieve(): Promise {\n return this.apiCall.get(this.endpointPath());\n }\n\n private endpointPath(operation?: string): string {\n return `${Presets.RESOURCEPATH}${\n operation === undefined ? \"\" : \"/\" + encodeURIComponent(operation)\n }`;\n }\n\n static get RESOURCEPATH(): string {\n return RESOURCEPATH;\n }\n}\n","import ApiCall from \"./ApiCall\";\nimport Presets, { PresetCreateSchema } from \"./Presets\";\n\nexport interface PresetSchema extends PresetCreateSchema {\n name: string;\n}\n\nexport interface PresetDeleteSchema {\n name: string;\n}\n\nexport default class Preset {\n constructor(private presetId: string, private apiCall: ApiCall) {}\n\n async retrieve(): Promise {\n return this.apiCall.get(this.endpointPath());\n }\n\n async delete(): Promise {\n return this.apiCall.delete(this.endpointPath());\n }\n\n private endpointPath(): string {\n return `${Presets.RESOURCEPATH}/${encodeURIComponent(this.presetId)}`;\n }\n}\n","import ApiCall from \"./ApiCall\";\nimport {\n AnalyticsRuleCreateSchema,\n AnalyticsRuleSchema,\n} from \"./AnalyticsRule\";\n\nexport interface AnalyticsRulesRetrieveSchema {\n rules: AnalyticsRuleSchema[];\n}\n\nconst RESOURCEPATH = \"/analytics/rules\";\n\nexport default class AnalyticsRules {\n constructor(private readonly apiCall: ApiCall) {\n this.apiCall = apiCall;\n }\n\n async upsert(\n name: string,\n params: AnalyticsRuleCreateSchema\n ): Promise {\n return this.apiCall.put(\n this.endpointPath(name),\n params\n );\n }\n\n async retrieve(): Promise {\n return this.apiCall.get(this.endpointPath());\n }\n\n private endpointPath(operation?: string): string {\n return `${AnalyticsRules.RESOURCEPATH}${\n operation === undefined ? \"\" : \"/\" + encodeURIComponent(operation)\n }`;\n }\n\n static get RESOURCEPATH() {\n return RESOURCEPATH;\n }\n}\n","import ApiCall from \"./ApiCall\";\nimport AnalyticsRules from \"./AnalyticsRules\";\n\nexport interface AnalyticsRuleCreateSchema {\n type: \"popular_queries\" | \"nohits_queries\" | \"counter\";\n params: {\n enable_auto_aggregation?: boolean;\n source: {\n collections: string[];\n events?: Array<{\n type: string;\n weight: number;\n name: string;\n }>;\n };\n expand_query?: boolean;\n destination: {\n collection: string;\n counter_field?: string;\n };\n limit?: number;\n };\n}\n\nexport interface AnalyticsRuleDeleteSchema {\n name: string;\n}\n\nexport interface AnalyticsRuleSchema extends AnalyticsRuleCreateSchema {\n name: string;\n}\n\nexport default class AnalyticsRule {\n constructor(\n private name: string,\n private apiCall: ApiCall,\n ) {}\n\n async retrieve(): Promise {\n return this.apiCall.get(this.endpointPath());\n }\n\n async delete(): Promise {\n return this.apiCall.delete(this.endpointPath());\n }\n\n private endpointPath(): string {\n return `${AnalyticsRules.RESOURCEPATH}/${encodeURIComponent(this.name)}`;\n }\n}\n","import ApiCall from \"./ApiCall\";\nimport { AnalyticsEventCreateSchema } from \"./AnalyticsEvent\";\n\nconst RESOURCEPATH = \"/analytics/events\";\n\nexport default class AnalyticsEvents {\n constructor(private readonly apiCall: ApiCall) {\n this.apiCall = apiCall;\n }\n\n async create(\n params: AnalyticsEventCreateSchema,\n ): Promise {\n return this.apiCall.post(\n this.endpointPath(),\n params,\n );\n }\n\n private endpointPath(operation?: string): string {\n return `${AnalyticsEvents.RESOURCEPATH}${\n operation === undefined ? \"\" : \"/\" + encodeURIComponent(operation)\n }`;\n }\n\n static get RESOURCEPATH() {\n return RESOURCEPATH;\n }\n}\n","import ApiCall from \"./ApiCall\";\nimport AnalyticsRules from \"./AnalyticsRules\";\nimport AnalyticsRule from \"./AnalyticsRule\";\nimport AnalyticsEvents from \"./AnalyticsEvents\";\n\nconst RESOURCEPATH = \"/analytics\";\n\nexport default class Analytics {\n private readonly _analyticsRules: AnalyticsRules;\n private readonly individualAnalyticsRules: Record = {};\n private readonly _analyticsEvents: AnalyticsEvents;\n\n constructor(private readonly apiCall: ApiCall) {\n this.apiCall = apiCall;\n this._analyticsRules = new AnalyticsRules(this.apiCall);\n this._analyticsEvents = new AnalyticsEvents(this.apiCall);\n }\n\n rules(): AnalyticsRules;\n rules(id: string): AnalyticsRule;\n rules(id?: string): AnalyticsRules | AnalyticsRule {\n if (id === undefined) {\n return this._analyticsRules;\n } else {\n if (this.individualAnalyticsRules[id] === undefined) {\n this.individualAnalyticsRules[id] = new AnalyticsRule(id, this.apiCall);\n }\n return this.individualAnalyticsRules[id];\n }\n }\n\n events(): AnalyticsEvents {\n return this._analyticsEvents;\n }\n\n static get RESOURCEPATH() {\n return RESOURCEPATH;\n }\n}\n","import ApiCall from \"./ApiCall\";\nimport { StopwordSchema } from \"./Stopword\";\n\nconst RESOURCEPATH = \"/stopwords\";\n\nexport interface StopwordCreateSchema {\n stopwords: string[];\n locale?: string;\n}\n\nexport interface StopwordsRetrieveSchema {\n stopwords: StopwordSchema[];\n}\n\nexport default class Stopwords {\n constructor(private apiCall: ApiCall) {}\n\n async upsert(\n stopwordId: string,\n params: StopwordCreateSchema,\n ): Promise {\n return this.apiCall.put(\n this.endpointPath(stopwordId),\n params,\n );\n }\n\n async retrieve(): Promise {\n return this.apiCall.get(this.endpointPath());\n }\n\n private endpointPath(operation?: string): string {\n return `${Stopwords.RESOURCEPATH}${\n operation === undefined ? \"\" : \"/\" + encodeURIComponent(operation)\n }`;\n }\n\n static get RESOURCEPATH(): string {\n return RESOURCEPATH;\n }\n}\n","import ApiCall from \"./ApiCall\";\nimport Stopwords, { StopwordCreateSchema } from \"./Stopwords\";\n\nexport interface StopwordSchema extends StopwordCreateSchema {\n id: string;\n stopwords: string[];\n locale?: string;\n}\n\nexport interface StopwordDeleteSchema {\n id: string;\n}\n\nexport default class Stopword {\n constructor(\n private stopwordId: string,\n private apiCall: ApiCall,\n ) {}\n\n async retrieve(): Promise {\n return this.apiCall.get(this.endpointPath());\n }\n\n async delete(): Promise {\n return this.apiCall.delete(this.endpointPath());\n }\n\n private endpointPath(): string {\n return `${Stopwords.RESOURCEPATH}/${encodeURIComponent(this.stopwordId)}`;\n }\n}\n","import ApiCall from \"./ApiCall\";\nimport {\n ConversationModelCreateSchema,\n ConversationModelSchema,\n} from \"./ConversationModel\";\n\nconst RESOURCEPATH = \"/conversations/models\";\n\nexport default class ConversationModels {\n constructor(private readonly apiCall: ApiCall) {\n this.apiCall = apiCall;\n }\n\n async create(\n params: ConversationModelCreateSchema,\n ): Promise {\n return this.apiCall.post(\n this.endpointPath(),\n params,\n );\n }\n\n async retrieve(): Promise {\n return this.apiCall.get(\n this.endpointPath(),\n );\n }\n\n private endpointPath(operation?: string): string {\n return `${ConversationModels.RESOURCEPATH}${\n operation === undefined ? \"\" : \"/\" + encodeURIComponent(operation)\n }`;\n }\n\n static get RESOURCEPATH() {\n return RESOURCEPATH;\n }\n}\n","import ApiCall from \"./ApiCall\";\nimport ConversationModels from \"./ConversationModels\";\n\nexport interface ConversationModelCreateSchema {\n id?: string;\n model_name: string;\n api_key?: string;\n system_prompt?: string;\n max_bytes: number;\n history_collection?: string;\n}\n\nexport interface ConversationModelDeleteSchema {\n id: string;\n}\n\nexport interface ConversationModelSchema extends ConversationModelCreateSchema {\n id: string;\n}\n\nexport default class ConversationModel {\n constructor(\n private id: string,\n private apiCall: ApiCall,\n ) {}\n\n async update(\n params: ConversationModelCreateSchema,\n ): Promise {\n return this.apiCall.put(\n this.endpointPath(),\n params,\n );\n }\n\n async retrieve(): Promise {\n return this.apiCall.get(this.endpointPath());\n }\n\n async delete(): Promise {\n return this.apiCall.delete(\n this.endpointPath(),\n );\n }\n\n private endpointPath(): string {\n return `${ConversationModels.RESOURCEPATH}/${encodeURIComponent(this.id)}`;\n }\n}\n","import ApiCall from \"./ApiCall\";\nimport ConversationModels from \"./ConversationModels\";\nimport ConversationModel from \"./ConversationModel\";\nimport { ConversationSchema } from \"./Conversation\";\n\nconst RESOURCEPATH = \"/conversations\";\n\nexport interface ConversationsRetrieveSchema {\n conversations: ConversationSchema[];\n}\n\nexport default class Conversations {\n private readonly _conversationsModels: ConversationModels;\n private readonly individualConversationModels: Record<\n string,\n ConversationModel\n > = {};\n\n constructor(private readonly apiCall: ApiCall) {\n this.apiCall = apiCall;\n this._conversationsModels = new ConversationModels(this.apiCall);\n }\n\n async retrieve(): Promise {\n return this.apiCall.get(RESOURCEPATH);\n }\n\n models(): ConversationModels;\n models(id: string): ConversationModel;\n models(id?: string): ConversationModels | ConversationModel {\n if (id === undefined) {\n return this._conversationsModels;\n } else {\n if (this.individualConversationModels[id] === undefined) {\n this.individualConversationModels[id] = new ConversationModel(\n id,\n this.apiCall,\n );\n }\n return this.individualConversationModels[id];\n }\n }\n\n static get RESOURCEPATH() {\n return RESOURCEPATH;\n }\n}\n","import ApiCall from \"./ApiCall\";\nimport Conversations from \"./Conversations\";\n\nexport interface ConversationDeleteSchema {\n id: number;\n}\n\nexport interface ConversationUpdateSchema {\n ttl: number;\n}\n\nexport interface ConversationSchema {\n id: number;\n conversation: object[];\n last_updated: number;\n ttl: number;\n}\n\nexport default class Conversation {\n constructor(\n private id: string,\n private apiCall: ApiCall,\n ) {}\n\n async retrieve(): Promise {\n return this.apiCall.get(this.endpointPath());\n }\n\n async update(\n params: ConversationUpdateSchema,\n ): Promise {\n return this.apiCall.put(\n this.endpointPath(),\n params,\n );\n }\n\n async delete(): Promise {\n return this.apiCall.delete(this.endpointPath());\n }\n\n private endpointPath(): string {\n return `${Conversations.RESOURCEPATH}/${encodeURIComponent(this.id)}`;\n }\n}\n","import ApiCall from \"./ApiCall\";\nimport type { StemmingDictionaryCreateSchema } from \"./StemmingDictionary\";\n\nconst RESOURCEPATH = \"/stemming/dictionaries\";\n\nexport interface StemmingDictionariesRetrieveSchema {\n dictionaries: string[];\n}\n\nexport default class StemmingDictionaries {\n constructor(private readonly apiCall: ApiCall) {\n this.apiCall = apiCall;\n }\n\n async upsert(\n id: string,\n wordRootCombinations: StemmingDictionaryCreateSchema[] | string,\n ): Promise {\n const wordRootCombinationsInJSONLFormat = Array.isArray(\n wordRootCombinations,\n )\n ? wordRootCombinations.map((combo) => JSON.stringify(combo)).join(\"\\n\")\n : wordRootCombinations;\n\n const resultsInJSONLFormat = await this.apiCall.performRequest(\n\n \"post\",\n this.endpointPath(\"import\"),\n {\n queryParameters: {id},\n bodyParameters: wordRootCombinationsInJSONLFormat,\n additionalHeaders: {\"Content-Type\": \"text/plain\"},\n skipConnectionTimeout: true,\n }\n );\n\n return Array.isArray(wordRootCombinations)\n ? resultsInJSONLFormat\n .split(\"\\n\")\n .map((line) => JSON.parse(line) as StemmingDictionaryCreateSchema)\n : resultsInJSONLFormat;\n }\n\n async retrieve(): Promise {\n return this.apiCall.get(\n this.endpointPath(),\n );\n }\n\n private endpointPath(operation?: string): string {\n return operation === undefined\n ? `${StemmingDictionaries.RESOURCEPATH}`\n : `${StemmingDictionaries.RESOURCEPATH}/${encodeURIComponent(operation)}`;\n }\n\n static get RESOURCEPATH() {\n return RESOURCEPATH;\n }\n}\n","import ApiCall from \"./ApiCall\";\nimport StemmingDictionaries from \"./StemmingDictionaries\";\n\nexport interface StemmingDictionaryCreateSchema {\n root: string;\n word: string;\n}\n\nexport interface StemmingDictionarySchema {\n id: string;\n words: StemmingDictionaryCreateSchema[];\n}\n\nexport default class StemmingDictionary {\n constructor(\n private id: string,\n private apiCall: ApiCall,\n ) {}\n\n async retrieve(): Promise {\n return this.apiCall.get(this.endpointPath());\n }\n\n private endpointPath(): string {\n return `${StemmingDictionaries.RESOURCEPATH}/${encodeURIComponent(this.id)}`;\n }\n}\n","import type ApiCall from \"./ApiCall\";\nimport StemmingDictionaries from \"./StemmingDictionaries\";\nimport StemmingDictionary from \"./StemmingDictionary\";\n\nconst RESOURCEPATH = \"/stemming\";\n\nexport default class Stemming {\n private readonly _stemmingDictionaries: StemmingDictionaries;\n private readonly individualStemmingDictionaries: Record<\n string,\n StemmingDictionary\n > = {};\n\n constructor(private readonly apiCall: ApiCall) {\n this.apiCall = apiCall;\n this._stemmingDictionaries = new StemmingDictionaries(this.apiCall);\n }\n\n dictionaries(): StemmingDictionaries;\n dictionaries(id: string): StemmingDictionary;\n dictionaries(id?: string): StemmingDictionaries | StemmingDictionary {\n if (id === undefined) {\n return this._stemmingDictionaries;\n } else {\n if (this.individualStemmingDictionaries[id] === undefined) {\n this.individualStemmingDictionaries[id] = new StemmingDictionary(\n id,\n this.apiCall,\n );\n }\n return this.individualStemmingDictionaries[id];\n }\n }\n\n static get RESOURCEPATH() {\n return RESOURCEPATH;\n }\n}\n","/* eslint-disable no-dupe-class-members */\n\nimport Configuration, { ConfigurationOptions } from \"./Configuration\";\nimport ApiCall from \"./ApiCall\";\nimport Collections from \"./Collections\";\nimport Collection from \"./Collection\";\nimport Aliases from \"./Aliases\";\nimport Alias from \"./Alias\";\nimport Keys from \"./Keys\";\nimport Key from \"./Key\";\nimport Debug from \"./Debug\";\nimport Metrics from \"./Metrics\";\nimport Stats from \"./Stats\";\nimport Health from \"./Health\";\nimport Operations from \"./Operations\";\nimport MultiSearch from \"./MultiSearch\";\nimport Presets from \"./Presets\";\nimport Preset from \"./Preset\";\nimport Analytics from \"./Analytics\";\nimport Stopwords from \"./Stopwords\";\nimport Stopword from \"./Stopword\";\nimport Conversations from \"./Conversations\";\nimport Conversation from \"./Conversation\";\nimport Stemming from \"./Stemming\";\n\nexport default class Client {\n configuration: Configuration;\n apiCall: ApiCall;\n debug: Debug;\n metrics: Metrics;\n stats: Stats;\n health: Health;\n operations: Operations;\n multiSearch: MultiSearch;\n analytics: Analytics;\n stemming: Stemming;\n private readonly _collections: Collections;\n private readonly individualCollections: Record;\n private readonly _aliases: Aliases;\n private readonly individualAliases: Record;\n private readonly _keys: Keys;\n private readonly individualKeys: Record;\n private readonly _presets: Presets;\n private readonly individualPresets: Record;\n private readonly _stopwords: Stopwords;\n private readonly individualStopwords: Record;\n private readonly _conversations: Conversations;\n private readonly individualConversations: Record;\n\n constructor(options: ConfigurationOptions) {\n options.sendApiKeyAsQueryParam = options.sendApiKeyAsQueryParam ?? false;\n\n this.configuration = new Configuration(options);\n this.apiCall = new ApiCall(this.configuration);\n this.debug = new Debug(this.apiCall);\n this.metrics = new Metrics(this.apiCall);\n this.stats = new Stats(this.apiCall);\n this.health = new Health(this.apiCall);\n this.operations = new Operations(this.apiCall);\n this.multiSearch = new MultiSearch(this.apiCall, this.configuration);\n this._collections = new Collections(this.apiCall);\n this.individualCollections = {};\n this._aliases = new Aliases(this.apiCall);\n this.individualAliases = {};\n this._keys = new Keys(this.apiCall);\n this.individualKeys = {};\n this._presets = new Presets(this.apiCall);\n this.individualPresets = {};\n this._stopwords = new Stopwords(this.apiCall);\n this.individualStopwords = {};\n this.analytics = new Analytics(this.apiCall);\n this.stemming = new Stemming(this.apiCall);\n this._conversations = new Conversations(this.apiCall);\n this.individualConversations = {};\n }\n\n collections(): Collections;\n collections = object>(\n collectionName: string,\n ): Collection;\n collections(collectionName?: string): Collections | Collection {\n if (collectionName === undefined) {\n return this._collections;\n } else {\n if (this.individualCollections[collectionName] === undefined) {\n this.individualCollections[collectionName] = new Collection(\n collectionName,\n this.apiCall,\n this.configuration,\n );\n }\n return this.individualCollections[collectionName];\n }\n }\n\n aliases(): Aliases;\n aliases(aliasName: string): Alias;\n aliases(aliasName?: string): Aliases | Alias {\n if (aliasName === undefined) {\n return this._aliases;\n } else {\n if (this.individualAliases[aliasName] === undefined) {\n this.individualAliases[aliasName] = new Alias(aliasName, this.apiCall);\n }\n return this.individualAliases[aliasName];\n }\n }\n\n keys(): Keys;\n keys(id: number): Key;\n keys(id?: number): Keys | Key {\n if (id === undefined) {\n return this._keys;\n } else {\n if (this.individualKeys[id] === undefined) {\n this.individualKeys[id] = new Key(id, this.apiCall);\n }\n return this.individualKeys[id];\n }\n }\n\n presets(): Presets;\n presets(id: string): Preset;\n presets(id?: string): Presets | Preset {\n if (id === undefined) {\n return this._presets;\n } else {\n if (this.individualPresets[id] === undefined) {\n this.individualPresets[id] = new Preset(id, this.apiCall);\n }\n return this.individualPresets[id];\n }\n }\n\n stopwords(): Stopwords;\n stopwords(id: string): Stopword;\n stopwords(id?: string): Stopwords | Stopword {\n if (id === undefined) {\n return this._stopwords;\n } else {\n if (this.individualStopwords[id] === undefined) {\n this.individualStopwords[id] = new Stopword(id, this.apiCall);\n }\n return this.individualStopwords[id];\n }\n }\n\n conversations(): Conversations;\n conversations(id: string): Conversation;\n conversations(id?: string): Conversations | Conversation {\n if (id === undefined) {\n return this._conversations;\n } else {\n if (this.individualConversations[id] === undefined) {\n this.individualConversations[id] = new Conversation(id, this.apiCall);\n }\n return this.individualConversations[id];\n }\n }\n}\n","import type { DocumentSchema } from \"./Documents\";\nimport ApiCall from \"./ApiCall\";\nimport { SearchOnlyDocuments } from \"./SearchOnlyDocuments\";\nimport type { SearchableDocuments } from \"./Types\";\n\nexport class SearchOnlyCollection {\n private readonly _documents: SearchableDocuments;\n\n constructor(\n private readonly name: string,\n private readonly apiCall: ApiCall,\n private readonly configuration: any\n ) {\n this._documents = new SearchOnlyDocuments(\n this.name,\n this.apiCall,\n this.configuration\n );\n }\n\n documents(): SearchableDocuments {\n return this._documents;\n }\n}\n","import Configuration, { ConfigurationOptions } from \"./Configuration\";\nimport ApiCall from \"./ApiCall\";\nimport MultiSearch from \"./MultiSearch\";\nimport { DocumentSchema } from \"./Documents\";\nimport { SearchOnlyCollection } from \"./SearchOnlyCollection\";\n\nexport default class SearchClient {\n public readonly multiSearch: MultiSearch;\n private readonly configuration: Configuration;\n private readonly apiCall: ApiCall;\n private readonly individualCollections: Record;\n\n constructor(options: ConfigurationOptions) {\n options.sendApiKeyAsQueryParam = options.sendApiKeyAsQueryParam ?? true;\n if (\n options.sendApiKeyAsQueryParam === true &&\n (options.apiKey || \"\").length > 2000\n ) {\n console.warn(\n \"[typesense] API Key is longer than 2000 characters which is over the allowed limit, so disabling sending it as a query parameter.\"\n );\n options.sendApiKeyAsQueryParam = false;\n }\n\n this.configuration = new Configuration(options);\n this.apiCall = new ApiCall(this.configuration);\n this.multiSearch = new MultiSearch(this.apiCall, this.configuration, true);\n this.individualCollections = {};\n }\n\n clearCache() {\n this.multiSearch.clearCache();\n\n // eslint-disable-next-line @typescript-eslint/no-unused-vars\n Object.entries(this.individualCollections).forEach(([_, collection]) => {\n collection.documents().clearCache();\n });\n }\n\n collections(\n collectionName: string\n ): SearchOnlyCollection | SearchOnlyCollection {\n if (!collectionName) {\n throw new Error(\n \"Typesense.SearchClient only supports search operations, so the collectionName that needs to \" +\n \"be searched must be specified. Use Typesense.Client if you need to access the collection object.\"\n );\n } else {\n if (this.individualCollections[collectionName] === undefined) {\n this.individualCollections[collectionName] = new SearchOnlyCollection(\n collectionName,\n this.apiCall,\n this.configuration\n );\n }\n return this.individualCollections[collectionName];\n }\n }\n}\n","import arrayWithHoles from \"./arrayWithHoles.js\";\nimport iterableToArrayLimit from \"./iterableToArrayLimit.js\";\nimport unsupportedIterableToArray from \"./unsupportedIterableToArray.js\";\nimport nonIterableRest from \"./nonIterableRest.js\";\nfunction _slicedToArray(r, e) {\n return arrayWithHoles(r) || iterableToArrayLimit(r, e) || unsupportedIterableToArray(r, e) || nonIterableRest();\n}\nexport { _slicedToArray as default };","function _arrayWithHoles(r) {\n if (Array.isArray(r)) return r;\n}\nexport { _arrayWithHoles as default };","function _iterableToArrayLimit(r, l) {\n var t = null == r ? null : \"undefined\" != typeof Symbol && r[Symbol.iterator] || r[\"@@iterator\"];\n if (null != t) {\n var e,\n n,\n i,\n u,\n a = [],\n f = !0,\n o = !1;\n try {\n if (i = (t = t.call(r)).next, 0 === l) {\n if (Object(t) !== t) return;\n f = !1;\n } else for (; !(f = (e = i.call(t)).done) && (a.push(e.value), a.length !== l); f = !0);\n } catch (r) {\n o = !0, n = r;\n } finally {\n try {\n if (!f && null != t[\"return\"] && (u = t[\"return\"](), Object(u) !== u)) return;\n } finally {\n if (o) throw n;\n }\n }\n return a;\n }\n}\nexport { _iterableToArrayLimit as default };","function _nonIterableRest() {\n throw new TypeError(\"Invalid attempt to destructure non-iterable instance.\\nIn order to be iterable, non-array objects must have a [Symbol.iterator]() method.\");\n}\nexport { _nonIterableRest as default };","import Client from \"./Typesense/Client\";\nimport SearchClient from \"./Typesense/SearchClient\";\nimport * as Errors from \"./Typesense/Errors\";\n\nexport { Client, SearchClient, Errors };\nexport default { Client, SearchClient, Errors };\n"],"names":["_typeof","_regeneratorRuntime","module","exports","e","__esModule","t","r","Object","prototype","n","hasOwnProperty","o","defineProperty","value","i","Symbol","a","iterator","c","asyncIterator","u","toStringTag","define","enumerable","configurable","writable","wrap","Generator","create","Context","makeInvokeMethod","tryCatch","type","arg","call","h","l","f","s","y","GeneratorFunction","GeneratorFunctionPrototype","p","this","d","getPrototypeOf","v","values","g","defineIteratorMethods","forEach","_invoke","AsyncIterator","invoke","resolve","__await","then","callInvokeWithMethodAndArg","Error","done","method","delegate","maybeInvokeDelegate","sent","_sent","dispatchException","abrupt","TypeError","resultName","next","nextLoc","pushTryEntry","tryLoc","catchLoc","finallyLoc","afterLoc","tryEntries","push","resetTryEntry","completion","reset","isNaN","length","displayName","isGeneratorFunction","constructor","name","mark","setPrototypeOf","__proto__","awrap","async","Promise","keys","reverse","pop","prev","charAt","slice","stop","rval","handle","complete","finish","delegateYield","noop","undefinedType","isIE","window","navigator","test","userAgent","logMethods","_loggersByName","defaultLogger","bindMethod","obj","methodName","bind","Function","apply","arguments","traceForIE","console","log","trace","replaceLoggingMethods","level","getLevel","methodFactory","debug","levels","SILENT","enableLoggingWhenConsoleArrives","defaultMethodFactory","_level","_loggerName","undefined","realMethod","Logger","factory","inheritedLevel","defaultLevel","userLevel","self","storageKey","getPersistedLevel","storedLevel","localStorage","ignore","cookie","document","cookieName","encodeURIComponent","location","indexOf","exec","normalizeLevel","input","toUpperCase","setLevel","persist","levelNum","levelName","persistLevelIfPossible","setDefaultLevel","resetLevel","removeItem","clearPersistedLevel","enableAll","TRACE","disableAll","rebuild","childName","initialLevel","getLogger","logger","_log","noConflict","getLoggers","runtime","regeneratorRuntime","accidentalStrictMode","globalThis","__webpack_module_cache__","__webpack_require__","moduleId","cachedModule","__webpack_modules__","getter","definition","key","get","prop","_classCallCheck","toPropertyKey","toPrimitive","String","_defineProperties","_createClass","_defineProperty","_possibleConstructorReturn","ReferenceError","_getPrototypeOf","_setPrototypeOf","_inherits","_isNativeReflectConstruct","Boolean","valueOf","Reflect","construct","_wrapNativeSuper","Map","toString","has","set","Wrapper","TypesenseError","_Error","message","httpBody","httpStatus","_this","MissingConfigurationError","_TypesenseError","Configuration","options","nodes","map","node","setDefaultPathInNode","setDefaultPortInNode","_objectSpread","randomizeNodes","shuffleArray","nearestNode","connectionTimeoutSeconds","timeoutSeconds","healthcheckIntervalSeconds","numRetries","retryIntervalSeconds","apiKey","sendApiKeyAsQueryParam","cacheSearchResultsForSeconds","useServerSideSearchCache","axiosAdapter","logLevel","additionalHeaders","httpAgent","httpsAgent","paramsSerializer","showDeprecationWarnings","validate","validateNodes","isNodeMissingAnyParameters","_this2","some","every","warn","masterNode","readReplicaNodes","array","j","Math","floor","random","_ref","asyncGeneratorStep","_asyncToGenerator","_next","_throw","fn","thisArg","kindOf","cache","thing","str","toLowerCase","kindOfTest","typeOfTest","isArray","Array","isUndefined","isArrayBuffer","isString","isFunction","isNumber","isObject","isPlainObject","val","isDate","isFile","isBlob","isFileList","isURLSearchParams","isReadableStream","isRequest","isResponse","isHeaders","allOwnKeys","getOwnPropertyNames","len","findKey","_key","_global","global","isContextDefined","context","isTypedArray","TypedArray","Uint8Array","isHTMLForm","isRegExp","reduceDescriptors","reducer","descriptors","getOwnPropertyDescriptors","reducedDescriptors","descriptor","ret","defineProperties","ALPHA","DIGIT","ALPHABET","ALPHA_DIGIT","isAsyncFn","_setImmediate","setImmediateSupported","setImmediate","postMessageSupported","postMessage","token","callbacks","addEventListener","source","data","shift","cb","setTimeout","asap","queueMicrotask","process","nextTick","isBuffer","isFormData","kind","FormData","append","isArrayBufferView","result","ArrayBuffer","isView","buffer","isBoolean","isStream","pipe","merge","caseless","assignValue","targetKey","extend","b","trim","replace","stripBOM","content","charCodeAt","inherits","superConstructor","props","assign","toFlatObject","sourceObj","destObj","filter","propFilter","merged","endsWith","searchString","position","lastIndex","toArray","arr","forEachEntry","pair","matchAll","regExp","matches","hasOwnProp","freezeMethods","toObjectSet","arrayOrString","delimiter","split","toCamelCase","m","p1","p2","toFiniteNumber","defaultValue","Number","isFinite","generateString","size","alphabet","isSpecCompliantForm","toJSONObject","stack","visit","target","reducedValue","isThenable","catch","AxiosError","code","config","request","response","captureStackTrace","status","utils","toJSON","description","number","fileName","lineNumber","columnNumber","from","error","customProps","axiosError","cause","isVisitable","removeBrackets","renderKey","path","dots","concat","join","predicates","formData","metaTokens","indexes","option","visitor","defaultVisitor","useBlob","Blob","convertValue","toISOString","Buffer","JSON","stringify","isFlatArray","el","index","exposedHelpers","build","encode","charMap","match","AxiosURLSearchParams","params","_pairs","encoder","_encode","buildURL","url","serialize","serializeFn","serializedParams","hashmarkIndex","handlers","use","fulfilled","rejected","synchronous","runWhen","eject","id","clear","silentJSONParsing","forcedJSONParsing","clarifyTimeoutError","isBrowser","classes","URLSearchParams","protocols","hasBrowserEnv","_navigator","hasStandardBrowserEnv","product","hasStandardBrowserWebWorkerEnv","WorkerGlobalScope","importScripts","origin","href","buildPath","isNumericKey","isLast","arrayToObject","entries","parsePropPath","defaults","transitional","adapter","transformRequest","headers","contentType","getContentType","hasJSONContentType","isObjectPayload","setContentType","platform","helpers","isNode","toURLEncodedForm","formSerializer","_FormData","env","rawValue","parse","stringifySafely","transformResponse","JSONRequested","responseType","strictJSONParsing","ERR_BAD_RESPONSE","timeout","xsrfCookieName","xsrfHeaderName","maxContentLength","maxBodyLength","validateStatus","common","ignoreDuplicateOf","$internals","normalizeHeader","header","normalizeValue","matchHeaderValue","isHeaderNameFilter","AxiosHeaders","valueOrRewrite","rewrite","setHeader","_value","_header","_rewrite","lHeader","setHeaders","rawHeaders","parsed","line","substring","parseHeaders","parser","tokens","tokensRE","parseTokens","matcher","deleted","deleteHeader","normalize","format","normalized","w","char","formatHeader","targets","asStrings","first","computed","accessor","accessors","defineAccessor","accessorName","arg1","arg2","arg3","buildAccessors","mapped","headerValue","transformData","fns","isCancel","__CANCEL__","CanceledError","ERR_CANCELED","settle","reject","ERR_BAD_REQUEST","progressEventReducer","listener","isDownloadStream","freq","bytesNotified","_speedometer","samplesCount","min","bytes","timestamps","firstSampleTS","head","tail","chunkLength","now","Date","startedAt","bytesCount","passed","round","lastArgs","timer","timestamp","threshold","args","clearTimeout","loaded","total","lengthComputable","progressBytes","rate","progress","estimated","event","progressEventDecorator","throttled","asyncDecorator","isMSIE","URL","protocol","host","port","write","expires","domain","secure","toGMTString","read","RegExp","decodeURIComponent","remove","buildFullPath","baseURL","requestedURL","relativeURL","combineURLs","headersToObject","mergeConfig","config1","config2","getMergedValue","mergeDeepProperties","valueFromConfig2","defaultToConfig2","mergeDirectKeys","mergeMap","timeoutMessage","withCredentials","withXSRFToken","onUploadProgress","onDownloadProgress","decompress","beforeRedirect","transport","cancelToken","socketPath","responseEncoding","configValue","newConfig","auth","btoa","username","password","unescape","isURLSameOrigin","xsrfValue","cookies","XMLHttpRequest","_config","resolveConfig","requestData","requestHeaders","onCanceled","uploadThrottled","downloadThrottled","flushUpload","flushDownload","unsubscribe","signal","removeEventListener","onloadend","responseHeaders","getAllResponseHeaders","err","responseText","statusText","open","onreadystatechange","readyState","responseURL","onabort","ECONNABORTED","onerror","ERR_NETWORK","ontimeout","timeoutErrorMessage","ETIMEDOUT","setRequestHeader","upload","cancel","abort","subscribe","aborted","parseProtocol","send","signals","controller","AbortController","reason","streamChunk","chunk","chunkSize","byteLength","end","pos","trackStream","stream","onProgress","onFinish","iterable","reader","getReader","readStream","readBytes","_onFinish","ReadableStream","pull","close","loadedBytes","enqueue","return","highWaterMark","isFetchSupported","fetch","Request","Response","isReadableStreamSupported","encodeText","TextEncoder","arrayBuffer","supportsRequestStream","duplexAccessed","hasContentType","body","duplex","supportsResponseStream","resolvers","res","_","ERR_NOT_SUPPORT","knownAdapters","http","xhr","fetchOptions","composedSignal","toAbortSignal","requestContentLength","getContentLength","_request","getBodyLength","resolveBodyLength","contentTypeHeader","flush","isCredentialsSupported","credentials","isStreamResponse","responseContentLength","responseData","renderReason","isResolvedHandle","adapters","nameOrAdapter","rejectedReasons","reasons","state","throwIfCancellationRequested","throwIfRequested","dispatchRequest","validators","deprecatedWarnings","validator","version","formatMessage","opt","desc","opts","ERR_DEPRECATED","spelling","correctSpelling","assertOptions","schema","allowUnknown","ERR_BAD_OPTION_VALUE","ERR_BAD_OPTION","Axios","instanceConfig","interceptors","configOrUrl","dummy","boolean","function","baseUrl","withXsrfToken","contextHeaders","requestInterceptorChain","synchronousRequestInterceptors","interceptor","unshift","responseInterceptorChain","promise","chain","onFulfilled","onRejected","getUri","generateHTTPMethod","isForm","CancelToken","executor","resolvePromise","_listeners","onfulfilled","_resolve","splice","HttpStatusCode","Continue","SwitchingProtocols","Processing","EarlyHints","Ok","Created","Accepted","NonAuthoritativeInformation","NoContent","ResetContent","PartialContent","MultiStatus","AlreadyReported","ImUsed","MultipleChoices","MovedPermanently","Found","SeeOther","NotModified","UseProxy","Unused","TemporaryRedirect","PermanentRedirect","BadRequest","Unauthorized","PaymentRequired","Forbidden","NotFound","MethodNotAllowed","NotAcceptable","ProxyAuthenticationRequired","RequestTimeout","Conflict","Gone","LengthRequired","PreconditionFailed","PayloadTooLarge","UriTooLong","UnsupportedMediaType","RangeNotSatisfiable","ExpectationFailed","ImATeapot","MisdirectedRequest","UnprocessableEntity","Locked","FailedDependency","TooEarly","UpgradeRequired","PreconditionRequired","TooManyRequests","RequestHeaderFieldsTooLarge","UnavailableForLegalReasons","InternalServerError","NotImplemented","BadGateway","ServiceUnavailable","GatewayTimeout","HttpVersionNotSupported","VariantAlsoNegotiates","InsufficientStorage","LoopDetected","NotExtended","NetworkAuthenticationRequired","axios","createInstance","defaultConfig","instance","VERSION","toFormData","Cancel","all","promises","spread","callback","isAxiosError","payload","formToJSON","getAdapter","default","RequestMalformed","RequestUnauthorized","ObjectNotFound","ObjectAlreadyExists","ObjectUnprocessable","ServerError","HTTPError","HEALTHY","isNodeJSEnvironment","versions","ApiCall","configuration","numRetriesPerRequest","additionalUserHeaders","initializeMetadataForNodes","currentNodeIndex","_get","_callee","endpoint","queryParameters","_ref$abortSignal","abortSignal","_ref$responseType","_args","_context","performRequest","_x","_delete2","_callee2","_args2","_context2","_x2","_post","_callee3","bodyParameters","_args3","_context3","_x3","_put","_callee4","_args4","_context4","_x4","_patch","_callee5","_args5","_context5","_x5","_performRequest","_callee6","requestType","_ref2","_ref2$queryParameters","_ref2$bodyParameters","_ref2$additionalHeade","_ref2$abortSignal","_ref2$responseType","_ref2$skipConnectionT","skipConnectionTimeout","_ref2$enableKeepAlive","enableKeepAlive","requestNumber","lastException","wasAborted","_loop","_ret","numTries","_context7","abortListener","requestOptions","_response$data","_response$data2","_error$code","_error$response","_context6","getNextNode","uriFor","defaultHeaders","Infinity","transformedData","startsWith","HTTPAgent","keepAlive","HTTPSAgent","setNodeHealthcheck","customErrorForResponse","t0","_x6","_x7","_x8","isHealthy","nodeDueForHealthcheck","candidateNode","isDueForHealthcheck","lastAccessTimestamp","_timer","_callee7","seconds","_context8","_x9","messageFromServer","errorMessage","RESOURCEPATH","Collections","apiCall","_create","post","_retrieve","ImportError","importResults","_arrayLikeToArray","_unsupportedIterableToArray","_toConsumableArray","RequestWithCache","responseCache","responsePromiseCache","_perform","requestContext","requestFunction","requestFunctionArguments","cacheOptions","_cacheOptions$cacheRe","cacheResponseForSeconds","_cacheOptions$maxSize","maxSize","requestFunctionArgumentsJSON","cacheEntry","cachePromiseEntry","responsePromise","oldestEntry","_oldestEntry","requestTimestamp","delete","arrayableParams","query_by","query_by_weights","facet_by","group_by","include_fields","exclude_fields","highlight_fields","highlight_full_fields","pinned_hits","hidden_hits","infix","override_tags","num_typos","prefix","sort_by","hasNoArrayValues","normalizeArrayableParams","SearchOnlyDocuments","collectionName","requestWithCache","clearCache","_search","searchParameters","_ref$cacheSearchResul","additionalQueryParams","normalizedParams","queryParams","perform","endpointPath","operation","Documents","_upsert","action","_update","patch","query","_createMany","documents","import","_import2","documentsInJSONLFormat","resultsInJSONLFormat","resultsInJSONFormat","failedItems","_args6","RangeError","includes","success","successCount","_importStream","readableStream","_args7","_export2","_callee8","_args8","_exportStream","_callee9","_args9","_context9","Overrides","overrideId","put","Override","Synonyms","synonymId","Synonym","Document","documentId","partialDocument","Collection","_documents","_overrides","_synonyms","_exists","retrieve","individualDocuments","individualOverrides","individualSynonyms","Aliases","mapping","aliasName","Alias","Keys","searchKey","parameters","paramsJSON","digest","createHmac","update","keyPrefix","substr","rawScopedKey","Key","Debug","Metrics","Health","Operations","operationName","MultiSearch","useTextContentType","searchRequests","commonParams","normalizedSearchRequests","normalizedQueryParams","searches","Presets","presetId","_normalizedParams","search","Preset","AnalyticsRules","AnalyticsRule","AnalyticsEvents","Analytics","_analyticsRules","_analyticsEvents","individualAnalyticsRules","Stopwords","stopwordId","Stopword","ConversationModels","ConversationModel","Conversations","_conversationsModels","individualConversationModels","Conversation","StemmingDictionaries","wordRootCombinations","wordRootCombinationsInJSONLFormat","combo","StemmingDictionary","Stemming","_stemmingDictionaries","individualStemmingDictionaries","Client","_options$sendApiKeyAs","metrics","stats","Stats","health","operations","multiSearch","_collections","individualCollections","_aliases","individualAliases","_keys","individualKeys","_presets","individualPresets","_stopwords","individualStopwords","analytics","stemming","_conversations","individualConversations","SearchOnlyCollection","SearchClient","Errors"],"sourceRoot":""} \ No newline at end of file diff --git a/lib/Typesense/ApiCall.js b/lib/Typesense/ApiCall.js index badafd04..248828d3 100644 --- a/lib/Typesense/ApiCall.js +++ b/lib/Typesense/ApiCall.js @@ -35,10 +35,10 @@ var ApiCall = /** @class */ (function () { this.initializeMetadataForNodes(); this.currentNodeIndex = -1; } - ApiCall.prototype.get = function (endpoint, queryParameters, _a) { - if (queryParameters === void 0) { queryParameters = {}; } - var _b = _a === void 0 ? {} : _a, _c = _b.abortSignal, abortSignal = _c === void 0 ? null : _c, _d = _b.responseType, responseType = _d === void 0 ? undefined : _d; - return tslib_1.__awaiter(this, void 0, void 0, function () { + ApiCall.prototype.get = function (endpoint_1) { + return tslib_1.__awaiter(this, arguments, void 0, function (endpoint, queryParameters, _a) { + if (queryParameters === void 0) { queryParameters = {}; } + var _b = _a === void 0 ? {} : _a, _c = _b.abortSignal, abortSignal = _c === void 0 ? null : _c, _d = _b.responseType, responseType = _d === void 0 ? undefined : _d; return tslib_1.__generator(this, function (_e) { return [2 /*return*/, this.performRequest("get", endpoint, { queryParameters: queryParameters, @@ -48,19 +48,19 @@ var ApiCall = /** @class */ (function () { }); }); }; - ApiCall.prototype.delete = function (endpoint, queryParameters) { - if (queryParameters === void 0) { queryParameters = {}; } - return tslib_1.__awaiter(this, void 0, void 0, function () { + ApiCall.prototype.delete = function (endpoint_1) { + return tslib_1.__awaiter(this, arguments, void 0, function (endpoint, queryParameters) { + if (queryParameters === void 0) { queryParameters = {}; } return tslib_1.__generator(this, function (_a) { return [2 /*return*/, this.performRequest("delete", endpoint, { queryParameters: queryParameters })]; }); }); }; - ApiCall.prototype.post = function (endpoint, bodyParameters, queryParameters, additionalHeaders) { - if (bodyParameters === void 0) { bodyParameters = {}; } - if (queryParameters === void 0) { queryParameters = {}; } - if (additionalHeaders === void 0) { additionalHeaders = {}; } - return tslib_1.__awaiter(this, void 0, void 0, function () { + ApiCall.prototype.post = function (endpoint_1) { + return tslib_1.__awaiter(this, arguments, void 0, function (endpoint, bodyParameters, queryParameters, additionalHeaders) { + if (bodyParameters === void 0) { bodyParameters = {}; } + if (queryParameters === void 0) { queryParameters = {}; } + if (additionalHeaders === void 0) { additionalHeaders = {}; } return tslib_1.__generator(this, function (_a) { return [2 /*return*/, this.performRequest("post", endpoint, { queryParameters: queryParameters, @@ -70,10 +70,10 @@ var ApiCall = /** @class */ (function () { }); }); }; - ApiCall.prototype.put = function (endpoint, bodyParameters, queryParameters) { - if (bodyParameters === void 0) { bodyParameters = {}; } - if (queryParameters === void 0) { queryParameters = {}; } - return tslib_1.__awaiter(this, void 0, void 0, function () { + ApiCall.prototype.put = function (endpoint_1) { + return tslib_1.__awaiter(this, arguments, void 0, function (endpoint, bodyParameters, queryParameters) { + if (bodyParameters === void 0) { bodyParameters = {}; } + if (queryParameters === void 0) { queryParameters = {}; } return tslib_1.__generator(this, function (_a) { return [2 /*return*/, this.performRequest("put", endpoint, { queryParameters: queryParameters, @@ -82,10 +82,10 @@ var ApiCall = /** @class */ (function () { }); }); }; - ApiCall.prototype.patch = function (endpoint, bodyParameters, queryParameters) { - if (bodyParameters === void 0) { bodyParameters = {}; } - if (queryParameters === void 0) { queryParameters = {}; } - return tslib_1.__awaiter(this, void 0, void 0, function () { + ApiCall.prototype.patch = function (endpoint_1) { + return tslib_1.__awaiter(this, arguments, void 0, function (endpoint, bodyParameters, queryParameters) { + if (bodyParameters === void 0) { bodyParameters = {}; } + if (queryParameters === void 0) { queryParameters = {}; } return tslib_1.__generator(this, function (_a) { return [2 /*return*/, this.performRequest("patch", endpoint, { queryParameters: queryParameters, @@ -105,13 +105,13 @@ var ApiCall = /** @class */ (function () { ? axios_1.default.getAdapter(this.configuration.axiosAdapter).bind(globalThis) : axios_1.default.getAdapter(this.configuration.axiosAdapter); }; - ApiCall.prototype.performRequest = function (requestType, endpoint, _a) { - var _b, _c, _d, _e; - var _f = _a.queryParameters, queryParameters = _f === void 0 ? null : _f, _g = _a.bodyParameters, bodyParameters = _g === void 0 ? null : _g, _h = _a.additionalHeaders, additionalHeaders = _h === void 0 ? {} : _h, _j = _a.abortSignal, abortSignal = _j === void 0 ? null : _j, _k = _a.responseType, responseType = _k === void 0 ? undefined : _k, _l = _a.skipConnectionTimeout, skipConnectionTimeout = _l === void 0 ? false : _l, _m = _a.enableKeepAlive, enableKeepAlive = _m === void 0 ? undefined : _m; - return tslib_1.__awaiter(this, void 0, void 0, function () { + ApiCall.prototype.performRequest = function (requestType_1, endpoint_1, _a) { + return tslib_1.__awaiter(this, arguments, void 0, function (requestType, endpoint, _b) { var requestNumber, lastException, wasAborted, _loop_1, this_1, numTries, state_1; - return tslib_1.__generator(this, function (_o) { - switch (_o.label) { + var _c, _d, _e, _f; + var _g = _b.queryParameters, queryParameters = _g === void 0 ? null : _g, _h = _b.bodyParameters, bodyParameters = _h === void 0 ? null : _h, _j = _b.additionalHeaders, additionalHeaders = _j === void 0 ? {} : _j, _k = _b.abortSignal, abortSignal = _k === void 0 ? null : _k, _l = _b.responseType, responseType = _l === void 0 ? undefined : _l, _m = _b.skipConnectionTimeout, skipConnectionTimeout = _m === void 0 ? false : _m, _o = _b.enableKeepAlive, enableKeepAlive = _o === void 0 ? undefined : _o; + return tslib_1.__generator(this, function (_p) { + switch (_p.label) { case 0: this.configuration.validate(); requestNumber = Date.now(); @@ -119,8 +119,8 @@ var ApiCall = /** @class */ (function () { this.logger.debug("Request #".concat(requestNumber, ": Performing ").concat(requestType.toUpperCase(), " request: ").concat(endpoint)); _loop_1 = function (numTries) { var node, abortListener, requestOptions, cancelToken, source_1, response, error_1; - return tslib_1.__generator(this, function (_p) { - switch (_p.label) { + return tslib_1.__generator(this, function (_q) { + switch (_q.label) { case 0: node = this_1.getNextNode(requestNumber); this_1.logger.debug("Request #".concat(requestNumber, ": Attempting ").concat(requestType.toUpperCase(), " request Try #").concat(numTries, " to Node ").concat(node.index)); @@ -128,9 +128,9 @@ var ApiCall = /** @class */ (function () { return [2 /*return*/, { value: Promise.reject(new Error("Request aborted by caller.")) }]; } abortListener = void 0; - _p.label = 1; + _q.label = 1; case 1: - _p.trys.push([1, 3, 5, 6]); + _q.trys.push([1, 3, 5, 6]); requestOptions = { adapter: this_1.getAdapter(), method: requestType, @@ -219,7 +219,7 @@ var ApiCall = /** @class */ (function () { } return [4 /*yield*/, (0, axios_1.default)(requestOptions)]; case 2: - response = _p.sent(); + response = _q.sent(); if (response.status >= 1 && response.status <= 499) { // Treat any status code > 0 and < 500 to be an indication that node is healthy // We exclude 0 since some clients return 0 when request fails @@ -230,24 +230,24 @@ var ApiCall = /** @class */ (function () { return [2 /*return*/, { value: Promise.resolve(response.data) }]; } else if (response.status < 500) { - return [2 /*return*/, { value: Promise.reject(this_1.customErrorForResponse(response, (_b = response.data) === null || _b === void 0 ? void 0 : _b.message, requestOptions.data)) }]; + return [2 /*return*/, { value: Promise.reject(this_1.customErrorForResponse(response, (_c = response.data) === null || _c === void 0 ? void 0 : _c.message, requestOptions.data)) }]; } else { // Retry all other HTTP errors (HTTPStatus > 500) // This will get caught by the catch block below - throw this_1.customErrorForResponse(response, (_c = response.data) === null || _c === void 0 ? void 0 : _c.message, requestOptions.data); + throw this_1.customErrorForResponse(response, (_d = response.data) === null || _d === void 0 ? void 0 : _d.message, requestOptions.data); } return [3 /*break*/, 6]; case 3: - error_1 = _p.sent(); + error_1 = _q.sent(); // This block handles retries for HTTPStatus > 500 and network layer issues like connection timeouts if (!wasAborted) { this_1.setNodeHealthcheck(node, UNHEALTHY); } lastException = error_1; - this_1.logger.warn("Request #".concat(requestNumber, ": Request to Node ").concat(node.index, " failed due to \"").concat((_d = error_1 === null || error_1 === void 0 ? void 0 : error_1.code) !== null && _d !== void 0 ? _d : "", " ").concat(error_1.message).concat(error_1.response == null + this_1.logger.warn("Request #".concat(requestNumber, ": Request to Node ").concat(node.index, " failed due to \"").concat((_e = error_1 === null || error_1 === void 0 ? void 0 : error_1.code) !== null && _e !== void 0 ? _e : "", " ").concat(error_1.message).concat(error_1.response == null ? "" - : " - " + JSON.stringify((_e = error_1.response) === null || _e === void 0 ? void 0 : _e.data), "\"")); + : " - " + JSON.stringify((_f = error_1.response) === null || _f === void 0 ? void 0 : _f.data), "\"")); // this.logger.debug(error.stack) if (wasAborted) { return [2 /*return*/, { value: Promise.reject(new Error("Request aborted by caller.")) }]; @@ -257,7 +257,7 @@ var ApiCall = /** @class */ (function () { } return [4 /*yield*/, this_1.timer(this_1.retryIntervalSeconds)]; case 4: - _p.sent(); + _q.sent(); return [3 /*break*/, 6]; case 5: if (abortSignal && abortListener) { @@ -270,15 +270,15 @@ var ApiCall = /** @class */ (function () { }; this_1 = this; numTries = 1; - _o.label = 1; + _p.label = 1; case 1: if (!(numTries <= this.numRetriesPerRequest + 1)) return [3 /*break*/, 4]; return [5 /*yield**/, _loop_1(numTries)]; case 2: - state_1 = _o.sent(); + state_1 = _p.sent(); if (typeof state_1 === "object") return [2 /*return*/, state_1.value]; - _o.label = 3; + _p.label = 3; case 3: numTries++; return [3 /*break*/, 1]; diff --git a/lib/Typesense/ApiCall.js.map b/lib/Typesense/ApiCall.js.map index baecfc6f..0ef7fe16 100644 --- a/lib/Typesense/ApiCall.js.map +++ b/lib/Typesense/ApiCall.js.map @@ -1 +1 @@ -{"version":3,"file":"ApiCall.js","sourceRoot":"","sources":["../../src/Typesense/ApiCall.ts"],"names":[],"mappings":"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"} \ No newline at end of file +{"version":3,"file":"ApiCall.js","sourceRoot":"","sources":["../../src/Typesense/ApiCall.ts"],"names":[],"mappings":"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"} \ No newline at end of file diff --git a/lib/Typesense/Collection.js b/lib/Typesense/Collection.js index b14bcadd..92c6b063 100644 --- a/lib/Typesense/Collection.js +++ b/lib/Typesense/Collection.js @@ -38,9 +38,9 @@ var Collection = /** @class */ (function () { }); }); }; - Collection.prototype.delete = function (options) { - if (options === void 0) { options = {}; } - return tslib_1.__awaiter(this, void 0, void 0, function () { + Collection.prototype.delete = function () { + return tslib_1.__awaiter(this, arguments, void 0, function (options) { + if (options === void 0) { options = {}; } return tslib_1.__generator(this, function (_a) { return [2 /*return*/, this.apiCall.delete(this.endpointPath(), options)]; }); diff --git a/lib/Typesense/Collection.js.map b/lib/Typesense/Collection.js.map index 1be5a6b1..b959070c 100644 --- a/lib/Typesense/Collection.js.map +++ b/lib/Typesense/Collection.js.map @@ -1 +1 @@ -{"version":3,"file":"Collection.js","sourceRoot":"","sources":["../../src/Typesense/Collection.ts"],"names":[],"mappings":"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"} \ No newline at end of file +{"version":3,"file":"Collection.js","sourceRoot":"","sources":["../../src/Typesense/Collection.ts"],"names":[],"mappings":"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"} \ No newline at end of file diff --git a/lib/Typesense/Collections.js b/lib/Typesense/Collections.js index 4df61f81..673c813c 100644 --- a/lib/Typesense/Collections.js +++ b/lib/Typesense/Collections.js @@ -13,9 +13,9 @@ var Collections = /** @class */ (function () { }); }); }; - Collections.prototype.retrieve = function (options) { - if (options === void 0) { options = {}; } - return tslib_1.__awaiter(this, void 0, void 0, function () { + Collections.prototype.retrieve = function () { + return tslib_1.__awaiter(this, arguments, void 0, function (options) { + if (options === void 0) { options = {}; } return tslib_1.__generator(this, function (_a) { return [2 /*return*/, this.apiCall.get(RESOURCEPATH, options)]; }); diff --git a/lib/Typesense/Collections.js.map b/lib/Typesense/Collections.js.map index 588a13bb..3303d924 100644 --- a/lib/Typesense/Collections.js.map +++ b/lib/Typesense/Collections.js.map @@ -1 +1 @@ -{"version":3,"file":"Collections.js","sourceRoot":"","sources":["../../src/Typesense/Collections.ts"],"names":[],"mappings":";;;AA4CA,IAAM,YAAY,GAAG,cAAc,CAAC;AAEpC;IACE,qBAAoB,OAAgB;QAAhB,YAAO,GAAP,OAAO,CAAS;IAAG,CAAC;IAElC,4BAAM,GAAZ,UACE,MAAuC,EACvC,OAAiB;;;gBAEjB,sBAAO,IAAI,CAAC,OAAO,CAAC,IAAI,CAAmB,YAAY,EAAE,MAAM,EAAE,OAAO,CAAC,EAAC;;;KAC3E;IAEK,8BAAQ,GAAd,UACE,OAAwC;QAAxC,wBAAA,EAAA,YAAwC;;;gBAExC,sBAAO,IAAI,CAAC,OAAO,CAAC,GAAG,CAAqB,YAAY,EAAE,OAAO,CAAC,EAAC;;;KACpE;IAED,sBAAW,2BAAY;aAAvB;YACE,OAAO,YAAY,CAAC;QACtB,CAAC;;;OAAA;IACH,kBAAC;AAAD,CAAC,AAnBD,IAmBC"} \ No newline at end of file +{"version":3,"file":"Collections.js","sourceRoot":"","sources":["../../src/Typesense/Collections.ts"],"names":[],"mappings":";;;AA4CA,IAAM,YAAY,GAAG,cAAc,CAAC;AAEpC;IACE,qBAAoB,OAAgB;QAAhB,YAAO,GAAP,OAAO,CAAS;IAAG,CAAC;IAElC,4BAAM,GAAZ,UACE,MAAuC,EACvC,OAAiB;;;gBAEjB,sBAAO,IAAI,CAAC,OAAO,CAAC,IAAI,CAAmB,YAAY,EAAE,MAAM,EAAE,OAAO,CAAC,EAAC;;;KAC3E;IAEK,8BAAQ,GAAd;oEACE,OAAwC;YAAxC,wBAAA,EAAA,YAAwC;;gBAExC,sBAAO,IAAI,CAAC,OAAO,CAAC,GAAG,CAAqB,YAAY,EAAE,OAAO,CAAC,EAAC;;;KACpE;IAED,sBAAW,2BAAY;aAAvB;YACE,OAAO,YAAY,CAAC;QACtB,CAAC;;;OAAA;IACH,kBAAC;AAAD,CAAC,AAnBD,IAmBC"} \ No newline at end of file diff --git a/lib/Typesense/Configuration.d.ts b/lib/Typesense/Configuration.d.ts index a291c53e..1699ecf3 100644 --- a/lib/Typesense/Configuration.d.ts +++ b/lib/Typesense/Configuration.d.ts @@ -1,5 +1,3 @@ -/// -/// import { Logger, LogLevelDesc } from "loglevel"; import type { Agent as HTTPAgent } from "http"; import type { Agent as HTTPSAgent } from "https"; diff --git a/lib/Typesense/Document.js b/lib/Typesense/Document.js index 222c16ca..fc7f8f4e 100644 --- a/lib/Typesense/Document.js +++ b/lib/Typesense/Document.js @@ -24,9 +24,9 @@ var Document = /** @class */ (function () { }); }); }; - Document.prototype.update = function (partialDocument, options) { - if (options === void 0) { options = {}; } - return tslib_1.__awaiter(this, void 0, void 0, function () { + Document.prototype.update = function (partialDocument_1) { + return tslib_1.__awaiter(this, arguments, void 0, function (partialDocument, options) { + if (options === void 0) { options = {}; } return tslib_1.__generator(this, function (_a) { return [2 /*return*/, this.apiCall.patch(this.endpointPath(), partialDocument, options)]; }); diff --git a/lib/Typesense/Document.js.map b/lib/Typesense/Document.js.map index b697d67b..d7129738 100644 --- a/lib/Typesense/Document.js.map +++ b/lib/Typesense/Document.js.map @@ -1 +1 @@ -{"version":3,"file":"Document.js","sourceRoot":"","sources":["../../src/Typesense/Document.ts"],"names":[],"mappings":";;;;AACA,sEAAwC;AACxC,kEAIqB;AAErB;IACE,kBACU,cAAsB,EACtB,UAAkB,EAClB,OAAgB;QAFhB,mBAAc,GAAd,cAAc,CAAQ;QACtB,eAAU,GAAV,UAAU,CAAQ;QAClB,YAAO,GAAP,OAAO,CAAS;IACvB,CAAC;IAEE,2BAAQ,GAAd;;;gBACE,sBAAO,IAAI,CAAC,OAAO,CAAC,GAAG,CAAI,IAAI,CAAC,YAAY,EAAE,CAAC,EAAC;;;KACjD;IAEK,yBAAM,GAAZ,UAAa,OAAqB;;;gBAChC,sBAAO,IAAI,CAAC,OAAO,CAAC,MAAM,CAAI,IAAI,CAAC,YAAY,EAAE,EAAE,OAAO,CAAC,EAAC;;;KAC7D;IAEK,yBAAM,GAAZ,UACE,eAA2B,EAC3B,OAAqC;QAArC,wBAAA,EAAA,YAAqC;;;gBAErC,sBAAO,IAAI,CAAC,OAAO,CAAC,KAAK,CAAI,IAAI,CAAC,YAAY,EAAE,EAAE,eAAe,EAAE,OAAO,CAAC,EAAC;;;KAC7E;IAEO,+BAAY,GAApB;QACE,OAAO,UAAG,qBAAW,CAAC,YAAY,cAAI,kBAAkB,CAAC,IAAI,CAAC,cAAc,CAAC,SAAG,mBAAS,CAAC,YAAY,cAAI,kBAAkB,CAAC,IAAI,CAAC,UAAU,CAAC,CAAE,CAAC;IAClJ,CAAC;IACH,eAAC;AAAD,CAAC,AAzBD,IAyBC;AAzBY,4BAAQ"} \ No newline at end of file +{"version":3,"file":"Document.js","sourceRoot":"","sources":["../../src/Typesense/Document.ts"],"names":[],"mappings":";;;;AACA,sEAAwC;AACxC,kEAIqB;AAErB;IACE,kBACU,cAAsB,EACtB,UAAkB,EAClB,OAAgB;QAFhB,mBAAc,GAAd,cAAc,CAAQ;QACtB,eAAU,GAAV,UAAU,CAAQ;QAClB,YAAO,GAAP,OAAO,CAAS;IACvB,CAAC;IAEE,2BAAQ,GAAd;;;gBACE,sBAAO,IAAI,CAAC,OAAO,CAAC,GAAG,CAAI,IAAI,CAAC,YAAY,EAAE,CAAC,EAAC;;;KACjD;IAEK,yBAAM,GAAZ,UAAa,OAAqB;;;gBAChC,sBAAO,IAAI,CAAC,OAAO,CAAC,MAAM,CAAI,IAAI,CAAC,YAAY,EAAE,EAAE,OAAO,CAAC,EAAC;;;KAC7D;IAEK,yBAAM,GAAZ;oEACE,eAA2B,EAC3B,OAAqC;YAArC,wBAAA,EAAA,YAAqC;;gBAErC,sBAAO,IAAI,CAAC,OAAO,CAAC,KAAK,CAAI,IAAI,CAAC,YAAY,EAAE,EAAE,eAAe,EAAE,OAAO,CAAC,EAAC;;;KAC7E;IAEO,+BAAY,GAApB;QACE,OAAO,UAAG,qBAAW,CAAC,YAAY,cAAI,kBAAkB,CAAC,IAAI,CAAC,cAAc,CAAC,SAAG,mBAAS,CAAC,YAAY,cAAI,kBAAkB,CAAC,IAAI,CAAC,UAAU,CAAC,CAAE,CAAC;IAClJ,CAAC;IACH,eAAC;AAAD,CAAC,AAzBD,IAyBC;AAzBY,4BAAQ"} \ No newline at end of file diff --git a/lib/Typesense/Documents.d.ts b/lib/Typesense/Documents.d.ts index 79ebd040..3458abc6 100644 --- a/lib/Typesense/Documents.d.ts +++ b/lib/Typesense/Documents.d.ts @@ -1,8 +1,8 @@ -/// import type { ReadStream } from "fs"; import ApiCall from "./ApiCall"; import Configuration from "./Configuration"; import { SearchOnlyDocuments } from "./SearchOnlyDocuments"; +import { SearchParams, WriteableDocuments } from "./Types"; export type DeleteQuery = { truncate?: true; } | { @@ -28,87 +28,6 @@ export type DocumentSchema = Record; export interface SearchParamsWithPreset extends Partial { preset: string; } -export type DropTokensMode = "right_to_left" | "left_to_right" | "both_sides:3"; -export type OperationMode = "off" | "always" | "fallback"; -export type UnionArrayKeys = { - [K in keyof T]: T[K] extends undefined ? never : NonNullable extends infer R ? R extends R[] ? never : R extends (infer U)[] | infer U ? U[] extends R ? K : never : never : never; -}[keyof T] & keyof T; -export type UnionArraySearchParams = UnionArrayKeys; -export type ArraybleParams = { - readonly [K in UnionArraySearchParams]: string; -}; -export type ExtractBaseTypes = { - [K in keyof T]: K extends UnionArrayKeys ? T[K] extends (infer U)[] | infer U ? U : T[K] : T[K]; -}; -export declare const arrayableParams: ArraybleParams; -export interface SearchParams { - q?: "*" | (string & {}); - query_by?: string | string[]; - query_by_weights?: string | number[]; - prefix?: string | boolean | boolean[]; - filter_by?: string; - max_filter_by_candidates?: number; - enable_synonyms?: boolean; - enable_analytics?: boolean; - filter_curated_hits?: boolean; - enable_lazy_filter?: boolean; - sort_by?: string | string[]; - facet_by?: string | string[]; - max_facet_values?: number; - facet_sample_threshold?: number; - facet_sample_percent?: number; - facet_query?: string; - facet_query_num_typos?: number; - facet_return_parent?: string; - facet_strategy?: "exhaustive" | "top_values" | "automatic"; - page?: number; - per_page?: number; - group_by?: string | string[]; - group_limit?: number; - group_missing_values?: boolean; - include_fields?: string | string[]; - exclude_fields?: string | string[]; - highlight_fields?: string | string[]; - highlight_full_fields?: string | string[]; - highlight_affix_num_tokens?: number; - highlight_start_tag?: string; - highlight_end_tag?: string; - enable_highlight_v1?: boolean; - snippet_threshold?: number; - num_typos?: string | number | number[]; - min_len_1typo?: number; - min_len_2typo?: number; - split_join_tokens?: OperationMode; - exhaustive_search?: boolean; - drop_tokens_threshold?: number; - drop_tokens_mode?: DropTokensMode; - typo_tokens_threshold?: number; - pinned_hits?: string | string[]; - hidden_hits?: string | string[]; - limit_hits?: number; - pre_segmented_query?: boolean; - enable_overrides?: boolean; - override_tags?: string | string[]; - prioritize_exact_match?: boolean; - prioritize_token_position?: boolean; - prioritize_num_matching_fields?: boolean; - search_cutoff_ms?: number; - use_cache?: boolean; - max_candidates?: number; - infix?: OperationMode | OperationMode[]; - preset?: string; - text_match_type?: "max_score" | "max_weight"; - vector_query?: string; - "x-typesense-api-key"?: string; - "x-typesense-user-id"?: string; - offset?: number; - limit?: number; - stopwords?: string; - conversation?: boolean; - conversation_model_id?: string; - conversation_id?: string; - voice_query?: string; -} type SearchResponseHighlightObject = { matched_tokens?: string[]; snippet?: string; @@ -213,18 +132,6 @@ export interface DocumentsExportParameters { include_fields?: string; exclude_fields?: string; } -export interface SearchableDocuments { - search(searchParameters: SearchParams | SearchParamsWithPreset, options: SearchOptions): Promise>; - clearCache(): void; -} -export interface WriteableDocuments { - create(document: T, options: DocumentWriteParameters): Promise; - upsert(document: T, options: DocumentWriteParameters): Promise; - update(document: T, options: DocumentWriteParameters): Promise; - delete(query: DeleteQuery): Promise; - import(documents: T[] | string, options: DocumentWriteParameters): Promise; - export(options: DocumentsExportParameters): Promise; -} export interface SearchOptions { cacheSearchResultsForSeconds?: number; abortSignal?: AbortSignal | null; @@ -258,4 +165,7 @@ export default class Documents extends Search */ exportStream(options?: DocumentsExportParameters): Promise; } -export {}; +/** + * @deprecated Import from './Types' instead + */ +export type { SearchParams, WriteableDocuments, SearchableDocuments, DropTokensMode, OperationMode, UnionArrayKeys, UnionArraySearchParams, ArraybleParams, ExtractBaseTypes, } from "./Types"; diff --git a/lib/Typesense/Documents.js b/lib/Typesense/Documents.js index 43862617..e6772156 100644 --- a/lib/Typesense/Documents.js +++ b/lib/Typesense/Documents.js @@ -1,26 +1,8 @@ "use strict"; Object.defineProperty(exports, "__esModule", { value: true }); -exports.arrayableParams = void 0; var tslib_1 = require("tslib"); var Errors_1 = require("./Errors"); var SearchOnlyDocuments_1 = require("./SearchOnlyDocuments"); -exports.arrayableParams = { - query_by: "query_by", - query_by_weights: "query_by_weights", - facet_by: "facet_by", - group_by: "group_by", - include_fields: "include_fields", - exclude_fields: "exclude_fields", - highlight_fields: "highlight_fields", - highlight_full_fields: "highlight_full_fields", - pinned_hits: "pinned_hits", - hidden_hits: "hidden_hits", - infix: "infix", - override_tags: "override_tags", - num_typos: "num_typos", - prefix: "prefix", - sort_by: "sort_by", -}; var isNodeJSEnvironment = typeof process !== "undefined" && process.versions != null && process.versions.node != null; @@ -29,9 +11,9 @@ var Documents = /** @class */ (function (_super) { function Documents(collectionName, apiCall, configuration) { return _super.call(this, collectionName, apiCall, configuration) || this; } - Documents.prototype.create = function (document, options) { - if (options === void 0) { options = {}; } - return tslib_1.__awaiter(this, void 0, void 0, function () { + Documents.prototype.create = function (document_1) { + return tslib_1.__awaiter(this, arguments, void 0, function (document, options) { + if (options === void 0) { options = {}; } return tslib_1.__generator(this, function (_a) { if (!document) throw new Error("No document provided"); @@ -39,9 +21,9 @@ var Documents = /** @class */ (function (_super) { }); }); }; - Documents.prototype.upsert = function (document, options) { - if (options === void 0) { options = {}; } - return tslib_1.__awaiter(this, void 0, void 0, function () { + Documents.prototype.upsert = function (document_1) { + return tslib_1.__awaiter(this, arguments, void 0, function (document, options) { + if (options === void 0) { options = {}; } return tslib_1.__generator(this, function (_a) { if (!document) throw new Error("No document provided"); @@ -49,9 +31,9 @@ var Documents = /** @class */ (function (_super) { }); }); }; - Documents.prototype.update = function (document, options) { - if (options === void 0) { options = {}; } - return tslib_1.__awaiter(this, void 0, void 0, function () { + Documents.prototype.update = function (document_1) { + return tslib_1.__awaiter(this, arguments, void 0, function (document, options) { + if (options === void 0) { options = {}; } return tslib_1.__generator(this, function (_a) { if (!document) throw new Error("No document provided"); @@ -65,27 +47,27 @@ var Documents = /** @class */ (function (_super) { }); }); }; - Documents.prototype.delete = function (query) { - if (query === void 0) { query = {}; } - return tslib_1.__awaiter(this, void 0, void 0, function () { + Documents.prototype.delete = function () { + return tslib_1.__awaiter(this, arguments, void 0, function (query) { + if (query === void 0) { query = {}; } return tslib_1.__generator(this, function (_a) { return [2 /*return*/, this.apiCall.delete(this.endpointPath(), query)]; }); }); }; - Documents.prototype.createMany = function (documents, options) { - if (options === void 0) { options = {}; } - return tslib_1.__awaiter(this, void 0, void 0, function () { + Documents.prototype.createMany = function (documents_1) { + return tslib_1.__awaiter(this, arguments, void 0, function (documents, options) { + if (options === void 0) { options = {}; } return tslib_1.__generator(this, function (_a) { this.configuration.logger.warn("createMany is deprecated and will be removed in a future version. Use import instead, which now takes both an array of documents or a JSONL string of documents"); return [2 /*return*/, this.import(documents, options)]; }); }); }; - Documents.prototype.import = function (documents, options) { - if (options === void 0) { options = {}; } - return tslib_1.__awaiter(this, void 0, void 0, function () { + Documents.prototype.import = function (documents_1) { + return tslib_1.__awaiter(this, arguments, void 0, function (documents, options) { var documentsInJSONLFormat, resultsInJSONLFormat, resultsInJSONFormat, failedItems; + if (options === void 0) { options = {}; } return tslib_1.__generator(this, function (_a) { switch (_a.label) { case 0: @@ -151,10 +133,10 @@ var Documents = /** @class */ (function (_super) { /** * Imports documents from a NodeJS readable stream of JSONL. */ - Documents.prototype.importStream = function (readableStream, options) { - if (options === void 0) { options = {}; } - return tslib_1.__awaiter(this, void 0, void 0, function () { + Documents.prototype.importStream = function (readableStream_1) { + return tslib_1.__awaiter(this, arguments, void 0, function (readableStream, options) { var resultsInJSONLFormat, resultsInJSONFormat, failedItems; + if (options === void 0) { options = {}; } return tslib_1.__generator(this, function (_a) { switch (_a.label) { case 0: return [4 /*yield*/, this.apiCall.performRequest("post", this.endpointPath("import"), { @@ -189,9 +171,9 @@ var Documents = /** @class */ (function (_super) { /** * Returns a JSONL string for all the documents in this collection */ - Documents.prototype.export = function (options) { - if (options === void 0) { options = {}; } - return tslib_1.__awaiter(this, void 0, void 0, function () { + Documents.prototype.export = function () { + return tslib_1.__awaiter(this, arguments, void 0, function (options) { + if (options === void 0) { options = {}; } return tslib_1.__generator(this, function (_a) { return [2 /*return*/, this.apiCall.get(this.endpointPath("export"), options)]; }); @@ -200,9 +182,9 @@ var Documents = /** @class */ (function (_super) { /** * Returns a NodeJS readable stream of JSONL for all the documents in this collection. */ - Documents.prototype.exportStream = function (options) { - if (options === void 0) { options = {}; } - return tslib_1.__awaiter(this, void 0, void 0, function () { + Documents.prototype.exportStream = function () { + return tslib_1.__awaiter(this, arguments, void 0, function (options) { + if (options === void 0) { options = {}; } return tslib_1.__generator(this, function (_a) { return [2 /*return*/, this.apiCall.get(this.endpointPath("export"), options, { responseType: "stream", diff --git a/lib/Typesense/Documents.js.map b/lib/Typesense/Documents.js.map index 7e382089..52cb6b37 100644 --- a/lib/Typesense/Documents.js.map +++ b/lib/Typesense/Documents.js.map @@ -1 +1 @@ -{"version":3,"file":"Documents.js","sourceRoot":"","sources":["../../src/Typesense/Documents.ts"],"names":[],"mappings":"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"} \ No newline at end of file +{"version":3,"file":"Documents.js","sourceRoot":"","sources":["../../src/Typesense/Documents.ts"],"names":[],"mappings":"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"} \ No newline at end of file diff --git a/lib/Typesense/Errors/ImportError.d.ts b/lib/Typesense/Errors/ImportError.d.ts index f24943af..d6abbc85 100644 --- a/lib/Typesense/Errors/ImportError.d.ts +++ b/lib/Typesense/Errors/ImportError.d.ts @@ -1,4 +1,3 @@ -/// import TypesenseError from "./TypesenseError"; import type { DocumentImportParameters, ImportResponse } from "../Documents"; import { ReadStream } from "node:fs"; diff --git a/lib/Typesense/MultiSearch.js b/lib/Typesense/MultiSearch.js index 215259af..1e49870e 100644 --- a/lib/Typesense/MultiSearch.js +++ b/lib/Typesense/MultiSearch.js @@ -15,12 +15,12 @@ var MultiSearch = /** @class */ (function () { MultiSearch.prototype.clearCache = function () { this.requestWithCache.clearCache(); }; - MultiSearch.prototype.perform = function (searchRequests, commonParams, _a) { - if (commonParams === void 0) { commonParams = {}; } - var _b = _a === void 0 ? {} : _a, _c = _b.cacheSearchResultsForSeconds, cacheSearchResultsForSeconds = _c === void 0 ? this.configuration - .cacheSearchResultsForSeconds : _c; - return tslib_1.__awaiter(this, void 0, void 0, function () { + MultiSearch.prototype.perform = function (searchRequests_1) { + return tslib_1.__awaiter(this, arguments, void 0, function (searchRequests, commonParams, _a) { var additionalHeaders, additionalQueryParams, queryParams, normalizedSearchRequests, normalizedQueryParams; + if (commonParams === void 0) { commonParams = {}; } + var _b = _a === void 0 ? {} : _a, _c = _b.cacheSearchResultsForSeconds, cacheSearchResultsForSeconds = _c === void 0 ? this.configuration + .cacheSearchResultsForSeconds : _c; return tslib_1.__generator(this, function (_d) { additionalHeaders = {}; if (this.useTextContentType) { diff --git a/lib/Typesense/MultiSearch.js.map b/lib/Typesense/MultiSearch.js.map index f758d806..3bfb1e04 100644 --- a/lib/Typesense/MultiSearch.js.map +++ b/lib/Typesense/MultiSearch.js.map @@ -1 +1 @@ -{"version":3,"file":"MultiSearch.js","sourceRoot":"","sources":["../../src/Typesense/MultiSearch.ts"],"names":[],"mappings":";;;AAEA,gFAAkD;AAQlD,iCAAmD;AAEnD,IAAM,YAAY,GAAG,eAAe,CAAC;AAqCrC;IAGE,qBACU,OAAgB,EAChB,aAA4B,EAC5B,kBAAmC;QAAnC,mCAAA,EAAA,0BAAmC;QAFnC,YAAO,GAAP,OAAO,CAAS;QAChB,kBAAa,GAAb,aAAa,CAAe;QAC5B,uBAAkB,GAAlB,kBAAkB,CAAiB;QAE3C,IAAI,CAAC,gBAAgB,GAAG,IAAI,0BAAgB,EAAE,CAAC;IACjD,CAAC;IAED,gCAAU,GAAV;QACE,IAAI,CAAC,gBAAgB,CAAC,UAAU,EAAE,CAAC;IACrC,CAAC;IAEK,6BAAO,GAAb,UAIE,cAA4C,EAC5C,YAAoD,EACpD,EAGiD;QAJjD,6BAAA,EAAA,iBAAoD;YACpD,qBAG+C,EAAE,KAAA,EAF/C,oCAC+B,EAD/B,4BAA4B,mBAAG,IAAI,CAAC,aAAa;aAC9C,4BAA4B,KAAA;;;;gBAG3B,iBAAiB,GAAG,EAAE,CAAC;gBAC7B,IAAI,IAAI,CAAC,kBAAkB,EAAE,CAAC;oBAC5B,iBAAiB,CAAC,cAAc,CAAC,GAAG,YAAY,CAAC;gBACnD,CAAC;gBAEK,qBAAqB,GAAG,EAAE,CAAC;gBACjC,IAAI,IAAI,CAAC,aAAa,CAAC,wBAAwB,KAAK,IAAI,EAAE,CAAC;oBACzD,qBAAqB,CAAC,WAAW,CAAC,GAAG,IAAI,CAAC;gBAC5C,CAAC;gBAEK,WAAW,yCAAQ,YAAY,GAAK,qBAAqB,CAAE,CAAC;gBAE5D,wBAAwB,yCACzB,cAAc,KACjB,QAAQ,EAAE,cAAc,CAAC,QAAQ,CAAC,GAAG,CAAC,gCAAwB,CAAC,GAChE,CAAC;gBAEI,qBAAqB,GAAG,IAAA,gCAAwB,EAAC,WAAW,CAAC,CAAC;gBAEpE,sBAAO,IAAI,CAAC,gBAAgB,CAAC,OAAO,CAClC,IAAI,CAAC,OAAO,EACZ,IAAI,CAAC,OAAO,CAAC,IAAI,EACjB;wBACE,YAAY;wBACZ,wBAAwB;wBACxB,qBAAqB;wBACrB,iBAAiB;qBAClB,EACD,EAAE,uBAAuB,EAAE,4BAA4B,EAAE,CACpB,EAAC;;;KACzC;IACH,kBAAC;AAAD,CAAC,AAzDD,IAyDC"} \ No newline at end of file +{"version":3,"file":"MultiSearch.js","sourceRoot":"","sources":["../../src/Typesense/MultiSearch.ts"],"names":[],"mappings":";;;AAEA,gFAAkD;AAQlD,iCAAmD;AAEnD,IAAM,YAAY,GAAG,eAAe,CAAC;AAqCrC;IAGE,qBACU,OAAgB,EAChB,aAA4B,EAC5B,kBAAmC;QAAnC,mCAAA,EAAA,0BAAmC;QAFnC,YAAO,GAAP,OAAO,CAAS;QAChB,kBAAa,GAAb,aAAa,CAAe;QAC5B,uBAAkB,GAAlB,kBAAkB,CAAiB;QAE3C,IAAI,CAAC,gBAAgB,GAAG,IAAI,0BAAgB,EAAE,CAAC;IACjD,CAAC;IAED,gCAAU,GAAV;QACE,IAAI,CAAC,gBAAgB,CAAC,UAAU,EAAE,CAAC;IACrC,CAAC;IAEK,6BAAO,GAAb;oEAIE,cAA4C,EAC5C,YAAoD,EACpD,EAGiD;;YAJjD,6BAAA,EAAA,iBAAoD;gBACpD,qBAG+C,EAAE,KAAA,EAF/C,oCAC+B,EAD/B,4BAA4B,mBAAG,IAAI,CAAC,aAAa;iBAC9C,4BAA4B,KAAA;;gBAG3B,iBAAiB,GAAG,EAAE,CAAC;gBAC7B,IAAI,IAAI,CAAC,kBAAkB,EAAE,CAAC;oBAC5B,iBAAiB,CAAC,cAAc,CAAC,GAAG,YAAY,CAAC;gBACnD,CAAC;gBAEK,qBAAqB,GAAG,EAAE,CAAC;gBACjC,IAAI,IAAI,CAAC,aAAa,CAAC,wBAAwB,KAAK,IAAI,EAAE,CAAC;oBACzD,qBAAqB,CAAC,WAAW,CAAC,GAAG,IAAI,CAAC;gBAC5C,CAAC;gBAEK,WAAW,yCAAQ,YAAY,GAAK,qBAAqB,CAAE,CAAC;gBAE5D,wBAAwB,yCACzB,cAAc,KACjB,QAAQ,EAAE,cAAc,CAAC,QAAQ,CAAC,GAAG,CAAC,gCAAwB,CAAC,GAChE,CAAC;gBAEI,qBAAqB,GAAG,IAAA,gCAAwB,EAAC,WAAW,CAAC,CAAC;gBAEpE,sBAAO,IAAI,CAAC,gBAAgB,CAAC,OAAO,CAClC,IAAI,CAAC,OAAO,EACZ,IAAI,CAAC,OAAO,CAAC,IAAI,EACjB;wBACE,YAAY;wBACZ,wBAAwB;wBACxB,qBAAqB;wBACrB,iBAAiB;qBAClB,EACD,EAAE,uBAAuB,EAAE,4BAA4B,EAAE,CACpB,EAAC;;;KACzC;IACH,kBAAC;AAAD,CAAC,AAzDD,IAyDC"} \ No newline at end of file diff --git a/lib/Typesense/Operations.js b/lib/Typesense/Operations.js index d34c3237..9d42d93b 100644 --- a/lib/Typesense/Operations.js +++ b/lib/Typesense/Operations.js @@ -6,9 +6,9 @@ var Operations = /** @class */ (function () { function Operations(apiCall) { this.apiCall = apiCall; } - Operations.prototype.perform = function (operationName, queryParameters) { - if (queryParameters === void 0) { queryParameters = {}; } - return tslib_1.__awaiter(this, void 0, void 0, function () { + Operations.prototype.perform = function (operationName_1) { + return tslib_1.__awaiter(this, arguments, void 0, function (operationName, queryParameters) { + if (queryParameters === void 0) { queryParameters = {}; } return tslib_1.__generator(this, function (_a) { return [2 /*return*/, this.apiCall.post("".concat(RESOURCEPATH, "/").concat(operationName), {}, queryParameters)]; }); diff --git a/lib/Typesense/Operations.js.map b/lib/Typesense/Operations.js.map index c71cbef4..7aa222a9 100644 --- a/lib/Typesense/Operations.js.map +++ b/lib/Typesense/Operations.js.map @@ -1 +1 @@ -{"version":3,"file":"Operations.js","sourceRoot":"","sources":["../../src/Typesense/Operations.ts"],"names":[],"mappings":";;;AAEA,IAAM,YAAY,GAAG,aAAa,CAAC;AAEnC;IACE,oBAAoB,OAAgB;QAAhB,YAAO,GAAP,OAAO,CAAS;IAAG,CAAC;IAElC,4BAAO,GAAb,UACE,aAMiB,EACjB,eAAyC;QAAzC,gCAAA,EAAA,oBAAyC;;;gBAEzC,sBAAO,IAAI,CAAC,OAAO,CAAC,IAAI,CACtB,UAAG,YAAY,cAAI,aAAa,CAAE,EAClC,EAAE,EACF,eAAe,CAChB,EAAC;;;KACH;IACH,iBAAC;AAAD,CAAC,AAnBD,IAmBC"} \ No newline at end of file +{"version":3,"file":"Operations.js","sourceRoot":"","sources":["../../src/Typesense/Operations.ts"],"names":[],"mappings":";;;AAEA,IAAM,YAAY,GAAG,aAAa,CAAC;AAEnC;IACE,oBAAoB,OAAgB;QAAhB,YAAO,GAAP,OAAO,CAAS;IAAG,CAAC;IAElC,4BAAO,GAAb;oEACE,aAMiB,EACjB,eAAyC;YAAzC,gCAAA,EAAA,oBAAyC;;gBAEzC,sBAAO,IAAI,CAAC,OAAO,CAAC,IAAI,CACtB,UAAG,YAAY,cAAI,aAAa,CAAE,EAClC,EAAE,EACF,eAAe,CAChB,EAAC;;;KACH;IACH,iBAAC;AAAD,CAAC,AAnBD,IAmBC"} \ No newline at end of file diff --git a/lib/Typesense/SearchOnlyCollection.d.ts b/lib/Typesense/SearchOnlyCollection.d.ts index c74fb562..5671eedd 100644 --- a/lib/Typesense/SearchOnlyCollection.d.ts +++ b/lib/Typesense/SearchOnlyCollection.d.ts @@ -1,5 +1,6 @@ -import { DocumentSchema, SearchableDocuments } from "./Documents"; +import type { DocumentSchema } from "./Documents"; import ApiCall from "./ApiCall"; +import type { SearchableDocuments } from "./Types"; export declare class SearchOnlyCollection { private readonly name; private readonly apiCall; diff --git a/lib/Typesense/SearchOnlyCollection.js.map b/lib/Typesense/SearchOnlyCollection.js.map index c52e0a87..459ab12b 100644 --- a/lib/Typesense/SearchOnlyCollection.js.map +++ b/lib/Typesense/SearchOnlyCollection.js.map @@ -1 +1 @@ -{"version":3,"file":"SearchOnlyCollection.js","sourceRoot":"","sources":["../../src/Typesense/SearchOnlyCollection.ts"],"names":[],"mappings":";;;AAEA,6DAA4D;AAE5D;IAGE,8BACmB,IAAY,EACZ,OAAgB,EAChB,aAAkB;QAFlB,SAAI,GAAJ,IAAI,CAAQ;QACZ,YAAO,GAAP,OAAO,CAAS;QAChB,kBAAa,GAAb,aAAa,CAAK;QAEnC,IAAI,CAAC,UAAU,GAAG,IAAI,yCAAmB,CACvC,IAAI,CAAC,IAAI,EACT,IAAI,CAAC,OAAO,EACZ,IAAI,CAAC,aAAa,CACnB,CAAC;IACJ,CAAC;IAED,wCAAS,GAAT;QACE,OAAO,IAAI,CAAC,UAAU,CAAC;IACzB,CAAC;IACH,2BAAC;AAAD,CAAC,AAlBD,IAkBC;AAlBY,oDAAoB"} \ No newline at end of file +{"version":3,"file":"SearchOnlyCollection.js","sourceRoot":"","sources":["../../src/Typesense/SearchOnlyCollection.ts"],"names":[],"mappings":";;;AAEA,6DAA4D;AAG5D;IAGE,8BACmB,IAAY,EACZ,OAAgB,EAChB,aAAkB;QAFlB,SAAI,GAAJ,IAAI,CAAQ;QACZ,YAAO,GAAP,OAAO,CAAS;QAChB,kBAAa,GAAb,aAAa,CAAK;QAEnC,IAAI,CAAC,UAAU,GAAG,IAAI,yCAAmB,CACvC,IAAI,CAAC,IAAI,EACT,IAAI,CAAC,OAAO,EACZ,IAAI,CAAC,aAAa,CACnB,CAAC;IACJ,CAAC;IAED,wCAAS,GAAT;QACE,OAAO,IAAI,CAAC,UAAU,CAAC;IACzB,CAAC;IACH,2BAAC;AAAD,CAAC,AAlBD,IAkBC;AAlBY,oDAAoB"} \ No newline at end of file diff --git a/lib/Typesense/SearchOnlyDocuments.d.ts b/lib/Typesense/SearchOnlyDocuments.d.ts index 93453b0a..544c4be9 100644 --- a/lib/Typesense/SearchOnlyDocuments.d.ts +++ b/lib/Typesense/SearchOnlyDocuments.d.ts @@ -1,7 +1,8 @@ import RequestWithCache from "./RequestWithCache"; import ApiCall from "./ApiCall"; import Configuration from "./Configuration"; -import type { DocumentSchema, SearchableDocuments, SearchOptions, SearchParams, SearchParamsWithPreset, SearchResponse } from "./Documents"; +import type { DocumentSchema, SearchOptions, SearchParamsWithPreset, SearchResponse } from "./Documents"; +import { SearchableDocuments, SearchParams } from "./Types"; export declare class SearchOnlyDocuments implements SearchableDocuments { protected collectionName: string; protected apiCall: ApiCall; diff --git a/lib/Typesense/SearchOnlyDocuments.js b/lib/Typesense/SearchOnlyDocuments.js index 6e8d5f74..11aa915e 100644 --- a/lib/Typesense/SearchOnlyDocuments.js +++ b/lib/Typesense/SearchOnlyDocuments.js @@ -16,11 +16,11 @@ var SearchOnlyDocuments = /** @class */ (function () { SearchOnlyDocuments.prototype.clearCache = function () { this.requestWithCache.clearCache(); }; - SearchOnlyDocuments.prototype.search = function (searchParameters, _a) { - var _b = _a === void 0 ? {} : _a, _c = _b.cacheSearchResultsForSeconds, cacheSearchResultsForSeconds = _c === void 0 ? this.configuration - .cacheSearchResultsForSeconds : _c, _d = _b.abortSignal, abortSignal = _d === void 0 ? null : _d; - return tslib_1.__awaiter(this, void 0, void 0, function () { + SearchOnlyDocuments.prototype.search = function (searchParameters_1) { + return tslib_1.__awaiter(this, arguments, void 0, function (searchParameters, _a) { var additionalQueryParams, normalizedParams, queryParams; + var _b = _a === void 0 ? {} : _a, _c = _b.cacheSearchResultsForSeconds, cacheSearchResultsForSeconds = _c === void 0 ? this.configuration + .cacheSearchResultsForSeconds : _c, _d = _b.abortSignal, abortSignal = _d === void 0 ? null : _d; return tslib_1.__generator(this, function (_e) { additionalQueryParams = {}; if (this.configuration.useServerSideSearchCache === true) { diff --git a/lib/Typesense/SearchOnlyDocuments.js.map b/lib/Typesense/SearchOnlyDocuments.js.map index bd616666..daec70aa 100644 --- a/lib/Typesense/SearchOnlyDocuments.js.map +++ b/lib/Typesense/SearchOnlyDocuments.js.map @@ -1 +1 @@ -{"version":3,"file":"SearchOnlyDocuments.js","sourceRoot":"","sources":["../../src/Typesense/SearchOnlyDocuments.ts"],"names":[],"mappings":";;;;AAAA,gFAAkD;AAGlD,sEAAwC;AASxC,iCAAmD;AAEnD,IAAM,YAAY,GAAG,YAAY,CAAC;AAElC;IAKE,6BACY,cAAsB,EACtB,OAAgB,EAChB,aAA4B;QAF5B,mBAAc,GAAd,cAAc,CAAQ;QACtB,YAAO,GAAP,OAAO,CAAS;QAChB,kBAAa,GAAb,aAAa,CAAe;QAL9B,qBAAgB,GAAqB,IAAI,0BAAgB,EAAE,CAAC;IAMnE,CAAC;IAEJ,wCAAU,GAAV;QACE,IAAI,CAAC,gBAAgB,CAAC,UAAU,EAAE,CAAC;IACrC,CAAC;IAEK,oCAAM,GAAZ,UACE,gBAAuD,EACvD,EAIqB;YAJrB,qBAImB,EAAE,KAAA,EAHnB,oCAC+B,EAD/B,4BAA4B,mBAAG,IAAI,CAAC,aAAa;aAC9C,4BAA4B,KAAA,EAC/B,mBAAkB,EAAlB,WAAW,mBAAG,IAAI,KAAA;;;;gBAGd,qBAAqB,GAAG,EAAE,CAAC;gBACjC,IAAI,IAAI,CAAC,aAAa,CAAC,wBAAwB,KAAK,IAAI,EAAE,CAAC;oBACzD,qBAAqB,CAAC,WAAW,CAAC,GAAG,IAAI,CAAC;gBAC5C,CAAC;gBACK,gBAAgB,GAAG,IAAA,gCAAwB,EAAC,gBAAgB,CAAC,CAAC;gBAC9D,WAAW,GAAG,MAAM,CAAC,MAAM,CAC/B,EAAE,EACF,qBAAqB,EACrB,gBAAgB,CACjB,CAAC;gBAEF,sBAAO,IAAI,CAAC,gBAAgB,CAAC,OAAO,CAClC,IAAI,CAAC,OAAO,EACZ,IAAI,CAAC,OAAO,CAAC,GAAG,EAChB,CAAC,IAAI,CAAC,YAAY,CAAC,QAAQ,CAAC,EAAE,WAAW,EAAE,EAAE,WAAW,aAAA,EAAE,CAAC,EAC3D;wBACE,uBAAuB,EAAE,4BAA4B;qBACtD,CAC4B,EAAC;;;KACjC;IAES,0CAAY,GAAtB,UAAuB,SAAkB;QACvC,OAAO,UAAG,qBAAW,CAAC,YAAY,cAAI,IAAI,CAAC,cAAc,SAAG,YAAY,SACtE,SAAS,KAAK,SAAS,CAAC,CAAC,CAAC,EAAE,CAAC,CAAC,CAAC,GAAG,GAAG,SAAS,CAC9C,CAAC;IACL,CAAC;IAED,sBAAW,mCAAY;aAAvB;YACE,OAAO,YAAY,CAAC;QACtB,CAAC;;;OAAA;IACH,0BAAC;AAAD,CAAC,AArDD,IAqDC;AArDY,kDAAmB"} \ No newline at end of file +{"version":3,"file":"SearchOnlyDocuments.js","sourceRoot":"","sources":["../../src/Typesense/SearchOnlyDocuments.ts"],"names":[],"mappings":";;;;AAAA,gFAAkD;AAGlD,sEAAwC;AAOxC,iCAAmD;AAGnD,IAAM,YAAY,GAAG,YAAY,CAAC;AAElC;IAKE,6BACY,cAAsB,EACtB,OAAgB,EAChB,aAA4B;QAF5B,mBAAc,GAAd,cAAc,CAAQ;QACtB,YAAO,GAAP,OAAO,CAAS;QAChB,kBAAa,GAAb,aAAa,CAAe;QAL9B,qBAAgB,GAAqB,IAAI,0BAAgB,EAAE,CAAC;IAMnE,CAAC;IAEJ,wCAAU,GAAV;QACE,IAAI,CAAC,gBAAgB,CAAC,UAAU,EAAE,CAAC;IACrC,CAAC;IAEK,oCAAM,GAAZ;oEACE,gBAAuD,EACvD,EAIqB;;gBAJrB,qBAImB,EAAE,KAAA,EAHnB,oCAC+B,EAD/B,4BAA4B,mBAAG,IAAI,CAAC,aAAa;iBAC9C,4BAA4B,KAAA,EAC/B,mBAAkB,EAAlB,WAAW,mBAAG,IAAI,KAAA;;gBAGd,qBAAqB,GAAG,EAAE,CAAC;gBACjC,IAAI,IAAI,CAAC,aAAa,CAAC,wBAAwB,KAAK,IAAI,EAAE,CAAC;oBACzD,qBAAqB,CAAC,WAAW,CAAC,GAAG,IAAI,CAAC;gBAC5C,CAAC;gBACK,gBAAgB,GAAG,IAAA,gCAAwB,EAAC,gBAAgB,CAAC,CAAC;gBAC9D,WAAW,GAAG,MAAM,CAAC,MAAM,CAC/B,EAAE,EACF,qBAAqB,EACrB,gBAAgB,CACjB,CAAC;gBAEF,sBAAO,IAAI,CAAC,gBAAgB,CAAC,OAAO,CAClC,IAAI,CAAC,OAAO,EACZ,IAAI,CAAC,OAAO,CAAC,GAAG,EAChB,CAAC,IAAI,CAAC,YAAY,CAAC,QAAQ,CAAC,EAAE,WAAW,EAAE,EAAE,WAAW,aAAA,EAAE,CAAC,EAC3D;wBACE,uBAAuB,EAAE,4BAA4B;qBACtD,CAC4B,EAAC;;;KACjC;IAES,0CAAY,GAAtB,UAAuB,SAAkB;QACvC,OAAO,UAAG,qBAAW,CAAC,YAAY,cAAI,IAAI,CAAC,cAAc,SAAG,YAAY,SACtE,SAAS,KAAK,SAAS,CAAC,CAAC,CAAC,EAAE,CAAC,CAAC,CAAC,GAAG,GAAG,SAAS,CAC9C,CAAC;IACL,CAAC;IAED,sBAAW,mCAAY;aAAvB;YACE,OAAO,YAAY,CAAC;QACtB,CAAC;;;OAAA;IACH,0BAAC;AAAD,CAAC,AArDD,IAqDC;AArDY,kDAAmB"} \ No newline at end of file diff --git a/lib/Typesense/Types.d.ts b/lib/Typesense/Types.d.ts new file mode 100644 index 00000000..7a476770 --- /dev/null +++ b/lib/Typesense/Types.d.ts @@ -0,0 +1,94 @@ +import { DocumentSchema, SearchParamsWithPreset, SearchOptions, SearchResponse, DocumentWriteParameters, DeleteQuery, DeleteResponse, ImportResponse, DocumentsExportParameters } from "./Documents"; +export type DropTokensMode = "right_to_left" | "left_to_right" | "both_sides:3"; +export type OperationMode = "off" | "always" | "fallback"; +export type UnionArrayKeys = { + [K in keyof T]: T[K] extends undefined ? never : NonNullable extends infer R ? R extends R[] ? never : R extends (infer U)[] | infer U ? U[] extends R ? K : never : never : never; +}[keyof T] & keyof T; +export type UnionArraySearchParams = UnionArrayKeys; +export type ArraybleParams = { + readonly [K in UnionArraySearchParams]: string; +}; +export type ExtractBaseTypes = { + [K in keyof T]: K extends UnionArrayKeys ? T[K] extends (infer U)[] | infer U ? U : T[K] : T[K]; +}; +export declare const arrayableParams: ArraybleParams; +export interface SearchParams { + q?: "*" | (string & {}); + query_by?: string | string[]; + query_by_weights?: string | number[]; + prefix?: string | boolean | boolean[]; + filter_by?: string; + max_filter_by_candidates?: number; + enable_synonyms?: boolean; + enable_analytics?: boolean; + filter_curated_hits?: boolean; + enable_lazy_filter?: boolean; + sort_by?: string | string[]; + facet_by?: string | string[]; + max_facet_values?: number; + facet_sample_threshold?: number; + facet_sample_percent?: number; + facet_query?: string; + facet_query_num_typos?: number; + facet_return_parent?: string; + facet_strategy?: "exhaustive" | "top_values" | "automatic"; + page?: number; + per_page?: number; + group_by?: string | string[]; + group_limit?: number; + group_missing_values?: boolean; + include_fields?: string | string[]; + exclude_fields?: string | string[]; + highlight_fields?: string | string[]; + highlight_full_fields?: string | string[]; + highlight_affix_num_tokens?: number; + highlight_start_tag?: string; + highlight_end_tag?: string; + enable_highlight_v1?: boolean; + snippet_threshold?: number; + num_typos?: string | number | number[]; + min_len_1typo?: number; + min_len_2typo?: number; + split_join_tokens?: OperationMode; + exhaustive_search?: boolean; + drop_tokens_threshold?: number; + drop_tokens_mode?: DropTokensMode; + typo_tokens_threshold?: number; + pinned_hits?: string | string[]; + hidden_hits?: string | string[]; + limit_hits?: number; + pre_segmented_query?: boolean; + enable_overrides?: boolean; + override_tags?: string | string[]; + prioritize_exact_match?: boolean; + prioritize_token_position?: boolean; + prioritize_num_matching_fields?: boolean; + search_cutoff_ms?: number; + use_cache?: boolean; + max_candidates?: number; + infix?: OperationMode | OperationMode[]; + preset?: string; + text_match_type?: "max_score" | "max_weight"; + vector_query?: string; + "x-typesense-api-key"?: string; + "x-typesense-user-id"?: string; + offset?: number; + limit?: number; + stopwords?: string; + conversation?: boolean; + conversation_model_id?: string; + conversation_id?: string; + voice_query?: string; +} +export interface SearchableDocuments { + search(searchParameters: SearchParams | SearchParamsWithPreset, options: SearchOptions): Promise>; + clearCache(): void; +} +export interface WriteableDocuments { + create(document: T, options: DocumentWriteParameters): Promise; + upsert(document: T, options: DocumentWriteParameters): Promise; + update(document: T, options: DocumentWriteParameters): Promise; + delete(query: DeleteQuery): Promise; + import(documents: T[] | string, options: DocumentWriteParameters): Promise; + export(options: DocumentsExportParameters): Promise; +} diff --git a/lib/Typesense/Types.js b/lib/Typesense/Types.js new file mode 100644 index 00000000..81a0c1b9 --- /dev/null +++ b/lib/Typesense/Types.js @@ -0,0 +1,21 @@ +"use strict"; +Object.defineProperty(exports, "__esModule", { value: true }); +exports.arrayableParams = void 0; +exports.arrayableParams = { + query_by: "query_by", + query_by_weights: "query_by_weights", + facet_by: "facet_by", + group_by: "group_by", + include_fields: "include_fields", + exclude_fields: "exclude_fields", + highlight_fields: "highlight_fields", + highlight_full_fields: "highlight_full_fields", + pinned_hits: "pinned_hits", + hidden_hits: "hidden_hits", + infix: "infix", + override_tags: "override_tags", + num_typos: "num_typos", + prefix: "prefix", + sort_by: "sort_by", +}; +//# sourceMappingURL=Types.js.map \ No newline at end of file diff --git a/lib/Typesense/Types.js.map b/lib/Typesense/Types.js.map new file mode 100644 index 00000000..1c7fddee --- /dev/null +++ b/lib/Typesense/Types.js.map @@ -0,0 +1 @@ +{"version":3,"file":"Types.js","sourceRoot":"","sources":["../../src/Typesense/Types.ts"],"names":[],"mappings":";;;AA6Ca,QAAA,eAAe,GAAmB;IAC7C,QAAQ,EAAE,UAAU;IACpB,gBAAgB,EAAE,kBAAkB;IACpC,QAAQ,EAAE,UAAU;IACpB,QAAQ,EAAE,UAAU;IACpB,cAAc,EAAE,gBAAgB;IAChC,cAAc,EAAE,gBAAgB;IAChC,gBAAgB,EAAE,kBAAkB;IACpC,qBAAqB,EAAE,uBAAuB;IAC9C,WAAW,EAAE,aAAa;IAC1B,WAAW,EAAE,aAAa;IAC1B,KAAK,EAAE,OAAO;IACd,aAAa,EAAE,eAAe;IAC9B,SAAS,EAAE,WAAW;IACtB,MAAM,EAAE,QAAQ;IAChB,OAAO,EAAE,SAAS;CACnB,CAAC"} \ No newline at end of file diff --git a/lib/Typesense/Utils.d.ts b/lib/Typesense/Utils.d.ts index 768c81c2..a2bedea1 100644 --- a/lib/Typesense/Utils.d.ts +++ b/lib/Typesense/Utils.d.ts @@ -1,4 +1,4 @@ -import type { ExtractBaseTypes, SearchParams } from "./Documents"; +import type { ExtractBaseTypes, SearchParams } from "./Types"; export declare function normalizeArrayableParams(params: T): Prettify>; type Prettify = { [K in keyof T]: T[K]; diff --git a/lib/Typesense/Utils.js b/lib/Typesense/Utils.js index fb351913..a34a7e21 100644 --- a/lib/Typesense/Utils.js +++ b/lib/Typesense/Utils.js @@ -1,16 +1,16 @@ "use strict"; Object.defineProperty(exports, "__esModule", { value: true }); -exports.normalizeArrayableParams = void 0; +exports.normalizeArrayableParams = normalizeArrayableParams; var tslib_1 = require("tslib"); -var Documents_1 = require("./Documents"); +var Types_1 = require("./Types"); function hasNoArrayValues(params) { - return Object.keys(Documents_1.arrayableParams) + return Object.keys(Types_1.arrayableParams) .filter(function (key) { return params[key] !== undefined; }) .every(function (key) { return isNonArrayValue(params[key]); }); } function normalizeArrayableParams(params) { var result = tslib_1.__assign({}, params); - var transformedValues = Object.keys(Documents_1.arrayableParams) + var transformedValues = Object.keys(Types_1.arrayableParams) .filter(function (key) { return Array.isArray(result[key]); }) .map(function (key) { result[key] = result[key].join(","); @@ -24,7 +24,6 @@ function normalizeArrayableParams(params) { } return result; } -exports.normalizeArrayableParams = normalizeArrayableParams; function isNonArrayValue(value) { return !Array.isArray(value); } diff --git a/lib/Typesense/Utils.js.map b/lib/Typesense/Utils.js.map index e8a3a5b7..2e341a16 100644 --- a/lib/Typesense/Utils.js.map +++ b/lib/Typesense/Utils.js.map @@ -1 +1 @@ -{"version":3,"file":"Utils.js","sourceRoot":"","sources":["../../src/Typesense/Utils.ts"],"names":[],"mappings":";;;;AAAA,yCAA8C;AAO9C,SAAS,gBAAgB,CACvB,MAA+B;IAE/B,OAAO,MAAM,CAAC,IAAI,CAAC,2BAAe,CAAC;SAChC,MAAM,CAAC,UAAC,GAAG,IAAK,OAAA,MAAM,CAAC,GAAG,CAAC,KAAK,SAAS,EAAzB,CAAyB,CAAC;SAC1C,KAAK,CAAC,UAAC,GAAG,IAAK,OAAA,eAAe,CAAC,MAAM,CAAC,GAAG,CAAC,CAAC,EAA5B,CAA4B,CAAC,CAAC;AAClD,CAAC;AAED,SAAgB,wBAAwB,CACtC,MAAS;IAET,IAAM,MAAM,wBAAQ,MAAM,CAAE,CAAC;IAE7B,IAAM,iBAAiB,GAAG,MAAM,CAAC,IAAI,CAAC,2BAAe,CAAC;SACnD,MAAM,CAAC,UAAC,GAAG,IAAK,OAAA,KAAK,CAAC,OAAO,CAAC,MAAM,CAAC,GAAG,CAAC,CAAC,EAA1B,CAA0B,CAAC;SAC3C,GAAG,CAAC,UAAC,GAAG;QACP,MAAM,CAAC,GAAG,CAAC,GAAG,MAAM,CAAC,GAAG,CAAC,CAAC,IAAI,CAAC,GAAG,CAAC,CAAC;QACpC,OAAO,GAAG,CAAC;IACb,CAAC,CAAC,CAAC;IAEL,IAAI,CAAC,iBAAiB,CAAC,MAAM,IAAI,gBAAgB,CAAC,MAAM,CAAC,EAAE,CAAC;QAC1D,OAAO,MAAM,CAAC;IAChB,CAAC;IAED,IAAI,CAAC,gBAAgB,CAAC,MAAM,CAAC,EAAE,CAAC;QAC9B,MAAM,IAAI,KAAK,CACb,gDAAyC,IAAI,CAAC,SAAS,CAAC,MAAM,CAAC,CAAE,CAClE,CAAC;IACJ,CAAC;IAED,OAAO,MAAM,CAAC;AAChB,CAAC;AAvBD,4DAuBC;AAED,SAAS,eAAe,CACtB,KAAoC;IAEpC,OAAO,CAAC,KAAK,CAAC,OAAO,CAAC,KAAK,CAAC,CAAC;AAC/B,CAAC"} \ No newline at end of file +{"version":3,"file":"Utils.js","sourceRoot":"","sources":["../../src/Typesense/Utils.ts"],"names":[],"mappings":";;AAWA,4DAuBC;;AAlCD,iCAA0C;AAG1C,SAAS,gBAAgB,CACvB,MAA+B;IAE/B,OAAO,MAAM,CAAC,IAAI,CAAC,uBAAe,CAAC;SAChC,MAAM,CAAC,UAAC,GAAG,IAAK,OAAA,MAAM,CAAC,GAAG,CAAC,KAAK,SAAS,EAAzB,CAAyB,CAAC;SAC1C,KAAK,CAAC,UAAC,GAAG,IAAK,OAAA,eAAe,CAAC,MAAM,CAAC,GAAG,CAAC,CAAC,EAA5B,CAA4B,CAAC,CAAC;AAClD,CAAC;AAED,SAAgB,wBAAwB,CACtC,MAAS;IAET,IAAM,MAAM,wBAAQ,MAAM,CAAE,CAAC;IAE7B,IAAM,iBAAiB,GAAG,MAAM,CAAC,IAAI,CAAC,uBAAe,CAAC;SACnD,MAAM,CAAC,UAAC,GAAG,IAAK,OAAA,KAAK,CAAC,OAAO,CAAC,MAAM,CAAC,GAAG,CAAC,CAAC,EAA1B,CAA0B,CAAC;SAC3C,GAAG,CAAC,UAAC,GAAG;QACP,MAAM,CAAC,GAAG,CAAC,GAAG,MAAM,CAAC,GAAG,CAAC,CAAC,IAAI,CAAC,GAAG,CAAC,CAAC;QACpC,OAAO,GAAG,CAAC;IACb,CAAC,CAAC,CAAC;IAEL,IAAI,CAAC,iBAAiB,CAAC,MAAM,IAAI,gBAAgB,CAAC,MAAM,CAAC,EAAE,CAAC;QAC1D,OAAO,MAAM,CAAC;IAChB,CAAC;IAED,IAAI,CAAC,gBAAgB,CAAC,MAAM,CAAC,EAAE,CAAC;QAC9B,MAAM,IAAI,KAAK,CACb,gDAAyC,IAAI,CAAC,SAAS,CAAC,MAAM,CAAC,CAAE,CAClE,CAAC;IACJ,CAAC;IAED,OAAO,MAAM,CAAC;AAChB,CAAC;AAED,SAAS,eAAe,CACtB,KAAoC;IAEpC,OAAO,CAAC,KAAK,CAAC,OAAO,CAAC,KAAK,CAAC,CAAC;AAC/B,CAAC"} \ No newline at end of file diff --git a/src/Typesense/Documents.ts b/src/Typesense/Documents.ts index 0aff0232..d30d0236 100644 --- a/src/Typesense/Documents.ts +++ b/src/Typesense/Documents.ts @@ -3,6 +3,7 @@ import ApiCall from "./ApiCall"; import Configuration from "./Configuration"; import { ImportError, RequestMalformed } from "./Errors"; import { SearchOnlyDocuments } from "./SearchOnlyDocuments"; +import { SearchParams, WriteableDocuments } from "./Types"; // Todo: use generic to extract filter_by values export type DeleteQuery = @@ -39,128 +40,6 @@ export interface SearchParamsWithPreset extends Partial { preset: string; } -export type DropTokensMode = "right_to_left" | "left_to_right" | "both_sides:3"; - -export type OperationMode = "off" | "always" | "fallback"; - -export type UnionArrayKeys = { - [K in keyof T]: T[K] extends undefined - ? never - : NonNullable extends infer R - ? R extends R[] - ? never - : R extends (infer U)[] | infer U - ? U[] extends R - ? K - : never - : never - : never; -}[keyof T] & - keyof T; - -export type UnionArraySearchParams = UnionArrayKeys; - -export type ArraybleParams = { - readonly [K in UnionArraySearchParams]: string; -}; - -export type ExtractBaseTypes = { - [K in keyof T]: K extends UnionArrayKeys - ? T[K] extends (infer U)[] | infer U - ? U - : T[K] - : T[K]; -}; - -export const arrayableParams: ArraybleParams = { - query_by: "query_by", - query_by_weights: "query_by_weights", - facet_by: "facet_by", - group_by: "group_by", - include_fields: "include_fields", - exclude_fields: "exclude_fields", - highlight_fields: "highlight_fields", - highlight_full_fields: "highlight_full_fields", - pinned_hits: "pinned_hits", - hidden_hits: "hidden_hits", - infix: "infix", - override_tags: "override_tags", - num_typos: "num_typos", - prefix: "prefix", - sort_by: "sort_by", -}; - -export interface SearchParams { - // From https://typesense.org/docs/latest/api/documents.html#arguments - // eslint-disable-next-line @typescript-eslint/ban-types -- Can't use `object` here, it needs to intersect with `{}` - q?: "*" | (string & {}); - query_by?: string | string[]; - query_by_weights?: string | number[]; - prefix?: string | boolean | boolean[]; // default: true - filter_by?: string; - max_filter_by_candidates?: number; // default: 4 - enable_synonyms?: boolean; // default: true - enable_analytics?: boolean; // default: true - filter_curated_hits?: boolean; // default: false - enable_lazy_filter?: boolean; // default: false - sort_by?: string | string[]; // default: text match desc - facet_by?: string | string[]; - max_facet_values?: number; - facet_sample_threshold?: number; - facet_sample_percent?: number; - facet_query?: string; - facet_query_num_typos?: number; - facet_return_parent?: string; - facet_strategy?: "exhaustive" | "top_values" | "automatic"; - page?: number; // default: 1 - per_page?: number; // default: 10, max 250 - group_by?: string | string[]; - group_limit?: number; // default: - group_missing_values?: boolean; - include_fields?: string | string[]; - exclude_fields?: string | string[]; - highlight_fields?: string | string[]; // default: all queried fields - highlight_full_fields?: string | string[]; // default: all fields - highlight_affix_num_tokens?: number; // default: 4 - highlight_start_tag?: string; // default: - highlight_end_tag?: string; // default: - enable_highlight_v1?: boolean; - snippet_threshold?: number; // default: 30 - num_typos?: string | number | number[]; // default: 2 - min_len_1typo?: number; - min_len_2typo?: number; - split_join_tokens?: OperationMode; - exhaustive_search?: boolean; - drop_tokens_threshold?: number; // default: 10 - drop_tokens_mode?: DropTokensMode; - typo_tokens_threshold?: number; // default: 100 - pinned_hits?: string | string[]; - hidden_hits?: string | string[]; - limit_hits?: number; // default: no limit - pre_segmented_query?: boolean; - enable_overrides?: boolean; - override_tags?: string | string[]; - prioritize_exact_match?: boolean; // default: true - prioritize_token_position?: boolean; - prioritize_num_matching_fields?: boolean; - search_cutoff_ms?: number; - use_cache?: boolean; - max_candidates?: number; - infix?: OperationMode | OperationMode[]; - preset?: string; - text_match_type?: "max_score" | "max_weight"; - vector_query?: string; - "x-typesense-api-key"?: string; - "x-typesense-user-id"?: string; - offset?: number; - limit?: number; - stopwords?: string; - conversation?: boolean; - conversation_model_id?: string; - conversation_id?: string; - voice_query?: string; -} - type SearchResponseHighlightObject = { matched_tokens?: string[]; snippet?: string; @@ -279,26 +158,6 @@ export interface DocumentsExportParameters { exclude_fields?: string; } -export interface SearchableDocuments { - search( - searchParameters: SearchParams | SearchParamsWithPreset, - options: SearchOptions, - ): Promise>; - clearCache(): void; -} - -export interface WriteableDocuments { - create(document: T, options: DocumentWriteParameters): Promise; - upsert(document: T, options: DocumentWriteParameters): Promise; - update(document: T, options: DocumentWriteParameters): Promise; - delete(query: DeleteQuery): Promise; - import( - documents: T[] | string, - options: DocumentWriteParameters, - ): Promise; - export(options: DocumentsExportParameters): Promise; -} - export interface SearchOptions { cacheSearchResultsForSeconds?: number; abortSignal?: AbortSignal | null; @@ -530,3 +389,18 @@ export default class Documents function isEmptyString(str: string | null | undefined): boolean { return str == null || str === "" || str.length === 0; } + +/** + * @deprecated Import from './Types' instead + */ +export type { + SearchParams, + WriteableDocuments, + SearchableDocuments, + DropTokensMode, + OperationMode, + UnionArrayKeys, + UnionArraySearchParams, + ArraybleParams, + ExtractBaseTypes, +} from "./Types"; diff --git a/src/Typesense/SearchOnlyCollection.ts b/src/Typesense/SearchOnlyCollection.ts index d5c9cbef..4595e97b 100644 --- a/src/Typesense/SearchOnlyCollection.ts +++ b/src/Typesense/SearchOnlyCollection.ts @@ -1,6 +1,7 @@ -import { DocumentSchema, SearchableDocuments } from "./Documents"; +import type { DocumentSchema } from "./Documents"; import ApiCall from "./ApiCall"; import { SearchOnlyDocuments } from "./SearchOnlyDocuments"; +import type { SearchableDocuments } from "./Types"; export class SearchOnlyCollection { private readonly _documents: SearchableDocuments; diff --git a/src/Typesense/SearchOnlyDocuments.ts b/src/Typesense/SearchOnlyDocuments.ts index 85bcc828..921ffe23 100644 --- a/src/Typesense/SearchOnlyDocuments.ts +++ b/src/Typesense/SearchOnlyDocuments.ts @@ -4,13 +4,12 @@ import Configuration from "./Configuration"; import Collections from "./Collections"; import type { DocumentSchema, - SearchableDocuments, SearchOptions, - SearchParams, SearchParamsWithPreset, SearchResponse, } from "./Documents"; import { normalizeArrayableParams } from "./Utils"; +import { SearchableDocuments, SearchParams } from "./Types"; const RESOURCEPATH = "/documents"; diff --git a/src/Typesense/Types.ts b/src/Typesense/Types.ts new file mode 100644 index 00000000..432b5e05 --- /dev/null +++ b/src/Typesense/Types.ts @@ -0,0 +1,152 @@ +import { + DocumentSchema, + SearchParamsWithPreset, + SearchOptions, + SearchResponse, + DocumentWriteParameters, + DeleteQuery, + DeleteResponse, + ImportResponse, + DocumentsExportParameters, +} from "./Documents"; + +export type DropTokensMode = "right_to_left" | "left_to_right" | "both_sides:3"; + +export type OperationMode = "off" | "always" | "fallback"; + +export type UnionArrayKeys = { + [K in keyof T]: T[K] extends undefined + ? never + : NonNullable extends infer R + ? R extends R[] + ? never + : R extends (infer U)[] | infer U + ? U[] extends R + ? K + : never + : never + : never; +}[keyof T] & + keyof T; + +export type UnionArraySearchParams = UnionArrayKeys; + +export type ArraybleParams = { + readonly [K in UnionArraySearchParams]: string; +}; + +export type ExtractBaseTypes = { + [K in keyof T]: K extends UnionArrayKeys + ? T[K] extends (infer U)[] | infer U + ? U + : T[K] + : T[K]; +}; + +export const arrayableParams: ArraybleParams = { + query_by: "query_by", + query_by_weights: "query_by_weights", + facet_by: "facet_by", + group_by: "group_by", + include_fields: "include_fields", + exclude_fields: "exclude_fields", + highlight_fields: "highlight_fields", + highlight_full_fields: "highlight_full_fields", + pinned_hits: "pinned_hits", + hidden_hits: "hidden_hits", + infix: "infix", + override_tags: "override_tags", + num_typos: "num_typos", + prefix: "prefix", + sort_by: "sort_by", +}; + +export interface SearchParams { + // From https://typesense.org/docs/latest/api/documents.html#arguments + // eslint-disable-next-line @typescript-eslint/ban-types -- Can't use `object` here, it needs to intersect with `{}` + q?: "*" | (string & {}); + query_by?: string | string[]; + query_by_weights?: string | number[]; + prefix?: string | boolean | boolean[]; // default: true + filter_by?: string; + max_filter_by_candidates?: number; // default: 4 + enable_synonyms?: boolean; // default: true + enable_analytics?: boolean; // default: true + filter_curated_hits?: boolean; // default: false + enable_lazy_filter?: boolean; // default: false + sort_by?: string | string[]; // default: text match desc + facet_by?: string | string[]; + max_facet_values?: number; + facet_sample_threshold?: number; + facet_sample_percent?: number; + facet_query?: string; + facet_query_num_typos?: number; + facet_return_parent?: string; + facet_strategy?: "exhaustive" | "top_values" | "automatic"; + page?: number; // default: 1 + per_page?: number; // default: 10, max 250 + group_by?: string | string[]; + group_limit?: number; // default: + group_missing_values?: boolean; + include_fields?: string | string[]; + exclude_fields?: string | string[]; + highlight_fields?: string | string[]; // default: all queried fields + highlight_full_fields?: string | string[]; // default: all fields + highlight_affix_num_tokens?: number; // default: 4 + highlight_start_tag?: string; // default: + highlight_end_tag?: string; // default: + enable_highlight_v1?: boolean; + snippet_threshold?: number; // default: 30 + num_typos?: string | number | number[]; // default: 2 + min_len_1typo?: number; + min_len_2typo?: number; + split_join_tokens?: OperationMode; + exhaustive_search?: boolean; + drop_tokens_threshold?: number; // default: 10 + drop_tokens_mode?: DropTokensMode; + typo_tokens_threshold?: number; // default: 100 + pinned_hits?: string | string[]; + hidden_hits?: string | string[]; + limit_hits?: number; // default: no limit + pre_segmented_query?: boolean; + enable_overrides?: boolean; + override_tags?: string | string[]; + prioritize_exact_match?: boolean; // default: true + prioritize_token_position?: boolean; + prioritize_num_matching_fields?: boolean; + search_cutoff_ms?: number; + use_cache?: boolean; + max_candidates?: number; + infix?: OperationMode | OperationMode[]; + preset?: string; + text_match_type?: "max_score" | "max_weight"; + vector_query?: string; + "x-typesense-api-key"?: string; + "x-typesense-user-id"?: string; + offset?: number; + limit?: number; + stopwords?: string; + conversation?: boolean; + conversation_model_id?: string; + conversation_id?: string; + voice_query?: string; +} +export interface SearchableDocuments { + search( + searchParameters: SearchParams | SearchParamsWithPreset, + options: SearchOptions, + ): Promise>; + clearCache(): void; +} + +export interface WriteableDocuments { + create(document: T, options: DocumentWriteParameters): Promise; + upsert(document: T, options: DocumentWriteParameters): Promise; + update(document: T, options: DocumentWriteParameters): Promise; + delete(query: DeleteQuery): Promise; + import( + documents: T[] | string, + options: DocumentWriteParameters, + ): Promise; + export(options: DocumentsExportParameters): Promise; +} diff --git a/src/Typesense/Utils.ts b/src/Typesense/Utils.ts index 5b91c04d..c4cd7e94 100644 --- a/src/Typesense/Utils.ts +++ b/src/Typesense/Utils.ts @@ -1,9 +1,5 @@ -import { arrayableParams } from "./Documents"; -import type { - UnionArrayKeys, - ExtractBaseTypes, - SearchParams, -} from "./Documents"; +import { arrayableParams } from "./Types"; +import type { UnionArrayKeys, ExtractBaseTypes, SearchParams } from "./Types"; function hasNoArrayValues( params: T | ExtractBaseTypes,