i18next-http-backend
Advanced tools
Comparing version 1.4.4 to 1.4.5
@@ -7,17 +7,9 @@ "use strict"; | ||
exports.default = void 0; | ||
var _utils = require("./utils.js"); | ||
var _request = _interopRequireDefault(require("./request.js")); | ||
function _interopRequireDefault(obj) { return obj && obj.__esModule ? obj : { default: obj }; } | ||
function _classCallCheck(instance, Constructor) { if (!(instance instanceof Constructor)) { throw new TypeError("Cannot call a class as a function"); } } | ||
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, 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; } | ||
function _defineProperty(obj, key, value) { if (key in obj) { Object.defineProperty(obj, key, { value: value, enumerable: true, configurable: true, writable: true }); } else { obj[key] = value; } return obj; } | ||
var getDefaults = function getDefaults() { | ||
@@ -49,3 +41,2 @@ return { | ||
}; | ||
var Backend = function () { | ||
@@ -55,5 +46,3 @@ function Backend(services) { | ||
var allOptions = arguments.length > 2 && arguments[2] !== undefined ? arguments[2] : {}; | ||
_classCallCheck(this, Backend); | ||
this.services = services; | ||
@@ -65,3 +54,2 @@ this.options = options; | ||
} | ||
_createClass(Backend, [{ | ||
@@ -71,3 +59,2 @@ key: "init", | ||
var _this = this; | ||
var options = arguments.length > 1 && arguments[1] !== undefined ? arguments[1] : {}; | ||
@@ -78,3 +65,2 @@ var allOptions = arguments.length > 2 && arguments[2] !== undefined ? arguments[2] : {}; | ||
this.allOptions = allOptions; | ||
if (this.services && this.options.reloadInterval) { | ||
@@ -100,13 +86,9 @@ setInterval(function () { | ||
var _this2 = this; | ||
var loadPath = this.options.loadPath; | ||
if (typeof this.options.loadPath === 'function') { | ||
loadPath = this.options.loadPath(languages, namespaces); | ||
} | ||
loadPath = (0, _utils.makePromise)(loadPath); | ||
loadPath.then(function (resolvedLoadPath) { | ||
if (!resolvedLoadPath) return callback(null, {}); | ||
var url = _this2.services.interpolator.interpolate(resolvedLoadPath, { | ||
@@ -116,3 +98,2 @@ lng: languages.join('+'), | ||
}); | ||
_this2.loadUrl(url, callback, loadUrlLanguages, loadUrlNamespaces); | ||
@@ -125,3 +106,2 @@ }); | ||
var _this3 = this; | ||
this.options.request(this.options, url, undefined, function (err, res) { | ||
@@ -133,3 +113,2 @@ if (res && (res.status >= 500 && res.status < 600 || !res.status)) return callback('failed loading ' + url + '; status code: ' + res.status, true); | ||
var ret, parseErr; | ||
try { | ||
@@ -144,3 +123,2 @@ if (typeof res.data === 'string') { | ||
} | ||
if (parseErr) return callback(parseErr, false); | ||
@@ -154,3 +132,2 @@ callback(null, ret); | ||
var _this4 = this; | ||
if (!this.options.addPath) return; | ||
@@ -164,7 +141,5 @@ if (typeof languages === 'string') languages = [languages]; | ||
var addPath = _this4.options.addPath; | ||
if (typeof _this4.options.addPath === 'function') { | ||
addPath = _this4.options.addPath(lng, namespace); | ||
} | ||
var url = _this4.services.interpolator.interpolate(addPath, { | ||
@@ -174,3 +149,2 @@ lng: lng, | ||
}); | ||
_this4.options.request(_this4.options, url, payload, function (data, res) { | ||
@@ -180,3 +154,2 @@ finished += 1; | ||
resArray.push(res); | ||
if (finished === languages.length) { | ||
@@ -192,11 +165,10 @@ if (callback) callback(dataArray, resArray); | ||
var _this5 = this; | ||
var _this$services = this.services, | ||
backendConnector = _this$services.backendConnector, | ||
languageUtils = _this$services.languageUtils, | ||
logger = _this$services.logger; | ||
backendConnector = _this$services.backendConnector, | ||
languageUtils = _this$services.languageUtils, | ||
logger = _this$services.logger; | ||
var currentLanguage = backendConnector.language; | ||
if (currentLanguage && currentLanguage.toLowerCase() === 'cimode') return; | ||
var toLoad = []; | ||
var append = function append(lng) { | ||
@@ -208,3 +180,2 @@ var lngs = languageUtils.toResolveHierarchy(lng); | ||
}; | ||
append(currentLanguage); | ||
@@ -225,6 +196,4 @@ if (this.allOptions.preload) this.allOptions.preload.forEach(function (l) { | ||
}]); | ||
return Backend; | ||
}(); | ||
Backend.type = 'backend'; | ||
@@ -231,0 +200,0 @@ var _default = Backend; |
@@ -7,15 +7,8 @@ "use strict"; | ||
exports.default = void 0; | ||
var _utils = require("./utils.js"); | ||
var fetchNode = _interopRequireWildcard(require("./getFetch.js")); | ||
function _getRequireWildcardCache(nodeInterop) { if (typeof WeakMap !== "function") return null; var cacheBabelInterop = new WeakMap(); var cacheNodeInterop = new WeakMap(); return (_getRequireWildcardCache = function _getRequireWildcardCache(nodeInterop) { return nodeInterop ? cacheNodeInterop : cacheBabelInterop; })(nodeInterop); } | ||
function _interopRequireWildcard(obj, nodeInterop) { if (!nodeInterop && obj && obj.__esModule) { return obj; } if (obj === null || _typeof(obj) !== "object" && typeof obj !== "function") { return { default: obj }; } var cache = _getRequireWildcardCache(nodeInterop); if (cache && cache.has(obj)) { return cache.get(obj); } var newObj = {}; var hasPropertyDescriptor = Object.defineProperty && Object.getOwnPropertyDescriptor; for (var key in obj) { if (key !== "default" && Object.prototype.hasOwnProperty.call(obj, key)) { var desc = hasPropertyDescriptor ? Object.getOwnPropertyDescriptor(obj, key) : null; if (desc && (desc.get || desc.set)) { Object.defineProperty(newObj, key, desc); } else { newObj[key] = obj[key]; } } } newObj.default = obj; if (cache) { cache.set(obj, newObj); } return newObj; } | ||
function _typeof(obj) { "@babel/helpers - typeof"; return _typeof = "function" == typeof Symbol && "symbol" == typeof Symbol.iterator ? function (obj) { return typeof obj; } : function (obj) { return obj && "function" == typeof Symbol && obj.constructor === Symbol && obj !== Symbol.prototype ? "symbol" : typeof obj; }, _typeof(obj); } | ||
var fetchApi; | ||
if (typeof fetch === 'function') { | ||
@@ -30,5 +23,3 @@ if (typeof global !== 'undefined' && global.fetch) { | ||
} | ||
var XmlHttpRequestApi; | ||
if ((0, _utils.hasXMLHttpRequest)()) { | ||
@@ -41,5 +32,3 @@ if (typeof global !== 'undefined' && global.XMLHttpRequest) { | ||
} | ||
var ActiveXObjectApi; | ||
if (typeof ActiveXObject === 'function') { | ||
@@ -52,21 +41,15 @@ if (typeof global !== 'undefined' && global.ActiveXObject) { | ||
} | ||
if (!fetchApi && fetchNode && !XmlHttpRequestApi && !ActiveXObjectApi) fetchApi = fetchNode.default || fetchNode; | ||
if (typeof fetchApi !== 'function') fetchApi = undefined; | ||
var addQueryString = function addQueryString(url, params) { | ||
if (params && _typeof(params) === 'object') { | ||
var queryString = ''; | ||
for (var paramName in params) { | ||
queryString += '&' + encodeURIComponent(paramName) + '=' + encodeURIComponent(params[paramName]); | ||
} | ||
if (!queryString) return url; | ||
url = url + (url.indexOf('?') !== -1 ? '&' : '?') + queryString.slice(1); | ||
} | ||
return url; | ||
}; | ||
var fetchIt = function fetchIt(url, fetchOptions, callback) { | ||
@@ -85,3 +68,2 @@ fetchApi(url, fetchOptions).then(function (response) { | ||
}; | ||
var omitFetchOptions = false; | ||
@@ -93,3 +75,2 @@ | ||
} | ||
var headers = (0, _utils.defaults)({}, typeof options.customHeaders === 'function' ? options.customHeaders() : options.customHeaders); | ||
@@ -103,3 +84,2 @@ if (payload) headers['Content-Type'] = 'application/json'; | ||
}, omitFetchOptions ? {} : reqOptions); | ||
try { | ||
@@ -111,3 +91,2 @@ fetchIt(url, fetchOptions, callback); | ||
} | ||
try { | ||
@@ -129,10 +108,7 @@ Object.keys(reqOptions).forEach(function (opt) { | ||
} | ||
if (options.queryStringParams) { | ||
url = addQueryString(url, options.queryStringParams); | ||
} | ||
try { | ||
var x; | ||
if (XmlHttpRequestApi) { | ||
@@ -143,22 +119,15 @@ x = new XmlHttpRequestApi(); | ||
} | ||
x.open(payload ? 'POST' : 'GET', url, 1); | ||
if (!options.crossDomain) { | ||
x.setRequestHeader('X-Requested-With', 'XMLHttpRequest'); | ||
} | ||
x.withCredentials = !!options.withCredentials; | ||
if (payload) { | ||
x.setRequestHeader('Content-Type', 'application/x-www-form-urlencoded'); | ||
} | ||
if (x.overrideMimeType) { | ||
x.overrideMimeType('application/json'); | ||
} | ||
var h = options.customHeaders; | ||
h = typeof h === 'function' ? h() : h; | ||
if (h) { | ||
@@ -169,3 +138,2 @@ for (var i in h) { | ||
} | ||
x.onreadystatechange = function () { | ||
@@ -177,3 +145,2 @@ x.readyState > 3 && callback(x.status >= 400 ? x.statusText : null, { | ||
}; | ||
x.send(payload); | ||
@@ -184,3 +151,2 @@ } catch (e) { | ||
}; | ||
var request = function request(options, url, payload, callback) { | ||
@@ -191,18 +157,13 @@ if (typeof payload === 'function') { | ||
} | ||
callback = callback || function () {}; | ||
if (fetchApi) { | ||
return requestWithFetch(options, url, payload, callback); | ||
} | ||
if ((0, _utils.hasXMLHttpRequest)() || typeof ActiveXObject === 'function') { | ||
return requestWithXmlHttpRequest(options, url, payload, callback); | ||
} | ||
callback(new Error('No fetch and no xhr implementation found!')); | ||
}; | ||
var _default = request; | ||
exports.default = _default; | ||
module.exports = exports.default; |
@@ -9,9 +9,6 @@ "use strict"; | ||
exports.makePromise = makePromise; | ||
function _typeof(obj) { "@babel/helpers - typeof"; return _typeof = "function" == typeof Symbol && "symbol" == typeof Symbol.iterator ? function (obj) { return typeof obj; } : function (obj) { return obj && "function" == typeof Symbol && obj.constructor === Symbol && obj !== Symbol.prototype ? "symbol" : typeof obj; }, _typeof(obj); } | ||
var arr = []; | ||
var each = arr.forEach; | ||
var slice = arr.slice; | ||
function defaults(obj) { | ||
@@ -27,3 +24,2 @@ each.call(slice.call(arguments, 1), function (source) { | ||
} | ||
function hasXMLHttpRequest() { | ||
@@ -41,4 +37,3 @@ return typeof XMLHttpRequest === 'function' || (typeof XMLHttpRequest === "undefined" ? "undefined" : _typeof(XMLHttpRequest)) === 'object'; | ||
} | ||
return Promise.resolve(maybePromise); | ||
} |
function _classCallCheck(instance, Constructor) { if (!(instance instanceof Constructor)) { throw new TypeError("Cannot call a class as a function"); } } | ||
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, 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; } | ||
function _defineProperty(obj, key, value) { if (key in obj) { Object.defineProperty(obj, key, { value: value, enumerable: true, configurable: true, writable: true }); } else { obj[key] = value; } return obj; } | ||
import { defaults, makePromise } from './utils.js'; | ||
import request from './request.js'; | ||
var getDefaults = function getDefaults() { | ||
@@ -38,3 +33,2 @@ return { | ||
}; | ||
var Backend = function () { | ||
@@ -44,5 +38,3 @@ function Backend(services) { | ||
var allOptions = arguments.length > 2 && arguments[2] !== undefined ? arguments[2] : {}; | ||
_classCallCheck(this, Backend); | ||
this.services = services; | ||
@@ -54,3 +46,2 @@ this.options = options; | ||
} | ||
_createClass(Backend, [{ | ||
@@ -60,3 +51,2 @@ key: "init", | ||
var _this = this; | ||
var options = arguments.length > 1 && arguments[1] !== undefined ? arguments[1] : {}; | ||
@@ -67,3 +57,2 @@ var allOptions = arguments.length > 2 && arguments[2] !== undefined ? arguments[2] : {}; | ||
this.allOptions = allOptions; | ||
if (this.services && this.options.reloadInterval) { | ||
@@ -89,13 +78,9 @@ setInterval(function () { | ||
var _this2 = this; | ||
var loadPath = this.options.loadPath; | ||
if (typeof this.options.loadPath === 'function') { | ||
loadPath = this.options.loadPath(languages, namespaces); | ||
} | ||
loadPath = makePromise(loadPath); | ||
loadPath.then(function (resolvedLoadPath) { | ||
if (!resolvedLoadPath) return callback(null, {}); | ||
var url = _this2.services.interpolator.interpolate(resolvedLoadPath, { | ||
@@ -105,3 +90,2 @@ lng: languages.join('+'), | ||
}); | ||
_this2.loadUrl(url, callback, loadUrlLanguages, loadUrlNamespaces); | ||
@@ -114,3 +98,2 @@ }); | ||
var _this3 = this; | ||
this.options.request(this.options, url, undefined, function (err, res) { | ||
@@ -122,3 +105,2 @@ if (res && (res.status >= 500 && res.status < 600 || !res.status)) return callback('failed loading ' + url + '; status code: ' + res.status, true); | ||
var ret, parseErr; | ||
try { | ||
@@ -133,3 +115,2 @@ if (typeof res.data === 'string') { | ||
} | ||
if (parseErr) return callback(parseErr, false); | ||
@@ -143,3 +124,2 @@ callback(null, ret); | ||
var _this4 = this; | ||
if (!this.options.addPath) return; | ||
@@ -153,7 +133,5 @@ if (typeof languages === 'string') languages = [languages]; | ||
var addPath = _this4.options.addPath; | ||
if (typeof _this4.options.addPath === 'function') { | ||
addPath = _this4.options.addPath(lng, namespace); | ||
} | ||
var url = _this4.services.interpolator.interpolate(addPath, { | ||
@@ -163,3 +141,2 @@ lng: lng, | ||
}); | ||
_this4.options.request(_this4.options, url, payload, function (data, res) { | ||
@@ -169,3 +146,2 @@ finished += 1; | ||
resArray.push(res); | ||
if (finished === languages.length) { | ||
@@ -181,11 +157,10 @@ if (callback) callback(dataArray, resArray); | ||
var _this5 = this; | ||
var _this$services = this.services, | ||
backendConnector = _this$services.backendConnector, | ||
languageUtils = _this$services.languageUtils, | ||
logger = _this$services.logger; | ||
backendConnector = _this$services.backendConnector, | ||
languageUtils = _this$services.languageUtils, | ||
logger = _this$services.logger; | ||
var currentLanguage = backendConnector.language; | ||
if (currentLanguage && currentLanguage.toLowerCase() === 'cimode') return; | ||
var toLoad = []; | ||
var append = function append(lng) { | ||
@@ -197,3 +172,2 @@ var lngs = languageUtils.toResolveHierarchy(lng); | ||
}; | ||
append(currentLanguage); | ||
@@ -214,7 +188,5 @@ if (this.allOptions.preload) this.allOptions.preload.forEach(function (l) { | ||
}]); | ||
return Backend; | ||
}(); | ||
Backend.type = 'backend'; | ||
export default Backend; |
function _typeof(obj) { "@babel/helpers - typeof"; return _typeof = "function" == typeof Symbol && "symbol" == typeof Symbol.iterator ? function (obj) { return typeof obj; } : function (obj) { return obj && "function" == typeof Symbol && obj.constructor === Symbol && obj !== Symbol.prototype ? "symbol" : typeof obj; }, _typeof(obj); } | ||
import { defaults, hasXMLHttpRequest } from './utils.js'; | ||
import * as fetchNode from './getFetch.cjs'; | ||
var fetchApi; | ||
if (typeof fetch === 'function') { | ||
@@ -16,5 +14,3 @@ if (typeof global !== 'undefined' && global.fetch) { | ||
} | ||
var XmlHttpRequestApi; | ||
if (hasXMLHttpRequest()) { | ||
@@ -27,5 +23,3 @@ if (typeof global !== 'undefined' && global.XMLHttpRequest) { | ||
} | ||
var ActiveXObjectApi; | ||
if (typeof ActiveXObject === 'function') { | ||
@@ -38,21 +32,15 @@ if (typeof global !== 'undefined' && global.ActiveXObject) { | ||
} | ||
if (!fetchApi && fetchNode && !XmlHttpRequestApi && !ActiveXObjectApi) fetchApi = fetchNode.default || fetchNode; | ||
if (typeof fetchApi !== 'function') fetchApi = undefined; | ||
var addQueryString = function addQueryString(url, params) { | ||
if (params && _typeof(params) === 'object') { | ||
var queryString = ''; | ||
for (var paramName in params) { | ||
queryString += '&' + encodeURIComponent(paramName) + '=' + encodeURIComponent(params[paramName]); | ||
} | ||
if (!queryString) return url; | ||
url = url + (url.indexOf('?') !== -1 ? '&' : '?') + queryString.slice(1); | ||
} | ||
return url; | ||
}; | ||
var fetchIt = function fetchIt(url, fetchOptions, callback) { | ||
@@ -71,3 +59,2 @@ fetchApi(url, fetchOptions).then(function (response) { | ||
}; | ||
var omitFetchOptions = false; | ||
@@ -79,3 +66,2 @@ | ||
} | ||
var headers = defaults({}, typeof options.customHeaders === 'function' ? options.customHeaders() : options.customHeaders); | ||
@@ -89,3 +75,2 @@ if (payload) headers['Content-Type'] = 'application/json'; | ||
}, omitFetchOptions ? {} : reqOptions); | ||
try { | ||
@@ -97,3 +82,2 @@ fetchIt(url, fetchOptions, callback); | ||
} | ||
try { | ||
@@ -115,10 +99,7 @@ Object.keys(reqOptions).forEach(function (opt) { | ||
} | ||
if (options.queryStringParams) { | ||
url = addQueryString(url, options.queryStringParams); | ||
} | ||
try { | ||
var x; | ||
if (XmlHttpRequestApi) { | ||
@@ -129,22 +110,15 @@ x = new XmlHttpRequestApi(); | ||
} | ||
x.open(payload ? 'POST' : 'GET', url, 1); | ||
if (!options.crossDomain) { | ||
x.setRequestHeader('X-Requested-With', 'XMLHttpRequest'); | ||
} | ||
x.withCredentials = !!options.withCredentials; | ||
if (payload) { | ||
x.setRequestHeader('Content-Type', 'application/x-www-form-urlencoded'); | ||
} | ||
if (x.overrideMimeType) { | ||
x.overrideMimeType('application/json'); | ||
} | ||
var h = options.customHeaders; | ||
h = typeof h === 'function' ? h() : h; | ||
if (h) { | ||
@@ -155,3 +129,2 @@ for (var i in h) { | ||
} | ||
x.onreadystatechange = function () { | ||
@@ -163,3 +136,2 @@ x.readyState > 3 && callback(x.status >= 400 ? x.statusText : null, { | ||
}; | ||
x.send(payload); | ||
@@ -170,3 +142,2 @@ } catch (e) { | ||
}; | ||
var request = function request(options, url, payload, callback) { | ||
@@ -177,16 +148,11 @@ if (typeof payload === 'function') { | ||
} | ||
callback = callback || function () {}; | ||
if (fetchApi) { | ||
return requestWithFetch(options, url, payload, callback); | ||
} | ||
if (hasXMLHttpRequest() || typeof ActiveXObject === 'function') { | ||
return requestWithXmlHttpRequest(options, url, payload, callback); | ||
} | ||
callback(new Error('No fetch and no xhr implementation found!')); | ||
}; | ||
export default request; |
function _typeof(obj) { "@babel/helpers - typeof"; return _typeof = "function" == typeof Symbol && "symbol" == typeof Symbol.iterator ? function (obj) { return typeof obj; } : function (obj) { return obj && "function" == typeof Symbol && obj.constructor === Symbol && obj !== Symbol.prototype ? "symbol" : typeof obj; }, _typeof(obj); } | ||
var arr = []; | ||
@@ -28,4 +27,3 @@ var each = arr.forEach; | ||
} | ||
return Promise.resolve(maybePromise); | ||
} |
@@ -29,17 +29,9 @@ (function(f){if(typeof exports==="object"&&typeof module!=="undefined"){module.exports=f()}else if(typeof define==="function"&&define.amd){define([],f)}else{var g;if(typeof window!=="undefined"){g=window}else if(typeof global!=="undefined"){g=global}else if(typeof self!=="undefined"){g=self}else{g=this}g.i18nextHttpBackend = f()}})(function(){var define,module,exports;return (function(){function r(e,n,t){function o(i,f){if(!n[i]){if(!e[i]){var c="function"==typeof require&&require;if(!f&&c)return c(i,!0);if(u)return u(i,!0);var a=new Error("Cannot find module '"+i+"'");throw a.code="MODULE_NOT_FOUND",a}var p=n[i]={exports:{}};e[i][0].call(p.exports,function(r){var n=e[i][1][r];return o(n||r)},p,p.exports,r,e,n,t)}return n[i].exports}for(var u="function"==typeof require&&require,i=0;i<t.length;i++)o(t[i]);return o}return r})()({1:[function(require,module,exports){ | ||
exports.default = void 0; | ||
var _utils = require("./utils.js"); | ||
var _request = _interopRequireDefault(require("./request.js")); | ||
function _interopRequireDefault(obj) { return obj && obj.__esModule ? obj : { default: obj }; } | ||
function _classCallCheck(instance, Constructor) { if (!(instance instanceof Constructor)) { throw new TypeError("Cannot call a class as a function"); } } | ||
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, 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; } | ||
function _defineProperty(obj, key, value) { if (key in obj) { Object.defineProperty(obj, key, { value: value, enumerable: true, configurable: true, writable: true }); } else { obj[key] = value; } return obj; } | ||
var getDefaults = function getDefaults() { | ||
@@ -71,3 +63,2 @@ return { | ||
}; | ||
var Backend = function () { | ||
@@ -77,5 +68,3 @@ function Backend(services) { | ||
var allOptions = arguments.length > 2 && arguments[2] !== undefined ? arguments[2] : {}; | ||
_classCallCheck(this, Backend); | ||
this.services = services; | ||
@@ -87,3 +76,2 @@ this.options = options; | ||
} | ||
_createClass(Backend, [{ | ||
@@ -93,3 +81,2 @@ key: "init", | ||
var _this = this; | ||
var options = arguments.length > 1 && arguments[1] !== undefined ? arguments[1] : {}; | ||
@@ -100,3 +87,2 @@ var allOptions = arguments.length > 2 && arguments[2] !== undefined ? arguments[2] : {}; | ||
this.allOptions = allOptions; | ||
if (this.services && this.options.reloadInterval) { | ||
@@ -122,13 +108,9 @@ setInterval(function () { | ||
var _this2 = this; | ||
var loadPath = this.options.loadPath; | ||
if (typeof this.options.loadPath === 'function') { | ||
loadPath = this.options.loadPath(languages, namespaces); | ||
} | ||
loadPath = (0, _utils.makePromise)(loadPath); | ||
loadPath.then(function (resolvedLoadPath) { | ||
if (!resolvedLoadPath) return callback(null, {}); | ||
var url = _this2.services.interpolator.interpolate(resolvedLoadPath, { | ||
@@ -138,3 +120,2 @@ lng: languages.join('+'), | ||
}); | ||
_this2.loadUrl(url, callback, loadUrlLanguages, loadUrlNamespaces); | ||
@@ -147,3 +128,2 @@ }); | ||
var _this3 = this; | ||
this.options.request(this.options, url, undefined, function (err, res) { | ||
@@ -155,3 +135,2 @@ if (res && (res.status >= 500 && res.status < 600 || !res.status)) return callback('failed loading ' + url + '; status code: ' + res.status, true); | ||
var ret, parseErr; | ||
try { | ||
@@ -166,3 +145,2 @@ if (typeof res.data === 'string') { | ||
} | ||
if (parseErr) return callback(parseErr, false); | ||
@@ -176,3 +154,2 @@ callback(null, ret); | ||
var _this4 = this; | ||
if (!this.options.addPath) return; | ||
@@ -186,7 +163,5 @@ if (typeof languages === 'string') languages = [languages]; | ||
var addPath = _this4.options.addPath; | ||
if (typeof _this4.options.addPath === 'function') { | ||
addPath = _this4.options.addPath(lng, namespace); | ||
} | ||
var url = _this4.services.interpolator.interpolate(addPath, { | ||
@@ -196,3 +171,2 @@ lng: lng, | ||
}); | ||
_this4.options.request(_this4.options, url, payload, function (data, res) { | ||
@@ -202,3 +176,2 @@ finished += 1; | ||
resArray.push(res); | ||
if (finished === languages.length) { | ||
@@ -214,11 +187,10 @@ if (callback) callback(dataArray, resArray); | ||
var _this5 = this; | ||
var _this$services = this.services, | ||
backendConnector = _this$services.backendConnector, | ||
languageUtils = _this$services.languageUtils, | ||
logger = _this$services.logger; | ||
backendConnector = _this$services.backendConnector, | ||
languageUtils = _this$services.languageUtils, | ||
logger = _this$services.logger; | ||
var currentLanguage = backendConnector.language; | ||
if (currentLanguage && currentLanguage.toLowerCase() === 'cimode') return; | ||
var toLoad = []; | ||
var append = function append(lng) { | ||
@@ -230,3 +202,2 @@ var lngs = languageUtils.toResolveHierarchy(lng); | ||
}; | ||
append(currentLanguage); | ||
@@ -247,6 +218,4 @@ if (this.allOptions.preload) this.allOptions.preload.forEach(function (l) { | ||
}]); | ||
return Backend; | ||
}(); | ||
Backend.type = 'backend'; | ||
@@ -264,15 +233,8 @@ var _default = Backend; | ||
exports.default = void 0; | ||
var _utils = require("./utils.js"); | ||
var fetchNode = _interopRequireWildcard(require("./getFetch.js")); | ||
function _getRequireWildcardCache(nodeInterop) { if (typeof WeakMap !== "function") return null; var cacheBabelInterop = new WeakMap(); var cacheNodeInterop = new WeakMap(); return (_getRequireWildcardCache = function _getRequireWildcardCache(nodeInterop) { return nodeInterop ? cacheNodeInterop : cacheBabelInterop; })(nodeInterop); } | ||
function _interopRequireWildcard(obj, nodeInterop) { if (!nodeInterop && obj && obj.__esModule) { return obj; } if (obj === null || _typeof(obj) !== "object" && typeof obj !== "function") { return { default: obj }; } var cache = _getRequireWildcardCache(nodeInterop); if (cache && cache.has(obj)) { return cache.get(obj); } var newObj = {}; var hasPropertyDescriptor = Object.defineProperty && Object.getOwnPropertyDescriptor; for (var key in obj) { if (key !== "default" && Object.prototype.hasOwnProperty.call(obj, key)) { var desc = hasPropertyDescriptor ? Object.getOwnPropertyDescriptor(obj, key) : null; if (desc && (desc.get || desc.set)) { Object.defineProperty(newObj, key, desc); } else { newObj[key] = obj[key]; } } } newObj.default = obj; if (cache) { cache.set(obj, newObj); } return newObj; } | ||
function _typeof(obj) { "@babel/helpers - typeof"; return _typeof = "function" == typeof Symbol && "symbol" == typeof Symbol.iterator ? function (obj) { return typeof obj; } : function (obj) { return obj && "function" == typeof Symbol && obj.constructor === Symbol && obj !== Symbol.prototype ? "symbol" : typeof obj; }, _typeof(obj); } | ||
var fetchApi; | ||
if (typeof fetch === 'function') { | ||
@@ -287,5 +249,3 @@ if (typeof global !== 'undefined' && global.fetch) { | ||
} | ||
var XmlHttpRequestApi; | ||
if ((0, _utils.hasXMLHttpRequest)()) { | ||
@@ -298,5 +258,3 @@ if (typeof global !== 'undefined' && global.XMLHttpRequest) { | ||
} | ||
var ActiveXObjectApi; | ||
if (typeof ActiveXObject === 'function') { | ||
@@ -309,21 +267,15 @@ if (typeof global !== 'undefined' && global.ActiveXObject) { | ||
} | ||
if (!fetchApi && fetchNode && !XmlHttpRequestApi && !ActiveXObjectApi) fetchApi = fetchNode.default || fetchNode; | ||
if (typeof fetchApi !== 'function') fetchApi = undefined; | ||
var addQueryString = function addQueryString(url, params) { | ||
if (params && _typeof(params) === 'object') { | ||
var queryString = ''; | ||
for (var paramName in params) { | ||
queryString += '&' + encodeURIComponent(paramName) + '=' + encodeURIComponent(params[paramName]); | ||
} | ||
if (!queryString) return url; | ||
url = url + (url.indexOf('?') !== -1 ? '&' : '?') + queryString.slice(1); | ||
} | ||
return url; | ||
}; | ||
var fetchIt = function fetchIt(url, fetchOptions, callback) { | ||
@@ -342,3 +294,2 @@ fetchApi(url, fetchOptions).then(function (response) { | ||
}; | ||
var omitFetchOptions = false; | ||
@@ -350,3 +301,2 @@ | ||
} | ||
var headers = (0, _utils.defaults)({}, typeof options.customHeaders === 'function' ? options.customHeaders() : options.customHeaders); | ||
@@ -360,3 +310,2 @@ if (payload) headers['Content-Type'] = 'application/json'; | ||
}, omitFetchOptions ? {} : reqOptions); | ||
try { | ||
@@ -368,3 +317,2 @@ fetchIt(url, fetchOptions, callback); | ||
} | ||
try { | ||
@@ -386,10 +334,7 @@ Object.keys(reqOptions).forEach(function (opt) { | ||
} | ||
if (options.queryStringParams) { | ||
url = addQueryString(url, options.queryStringParams); | ||
} | ||
try { | ||
var x; | ||
if (XmlHttpRequestApi) { | ||
@@ -400,22 +345,15 @@ x = new XmlHttpRequestApi(); | ||
} | ||
x.open(payload ? 'POST' : 'GET', url, 1); | ||
if (!options.crossDomain) { | ||
x.setRequestHeader('X-Requested-With', 'XMLHttpRequest'); | ||
} | ||
x.withCredentials = !!options.withCredentials; | ||
if (payload) { | ||
x.setRequestHeader('Content-Type', 'application/x-www-form-urlencoded'); | ||
} | ||
if (x.overrideMimeType) { | ||
x.overrideMimeType('application/json'); | ||
} | ||
var h = options.customHeaders; | ||
h = typeof h === 'function' ? h() : h; | ||
if (h) { | ||
@@ -426,3 +364,2 @@ for (var i in h) { | ||
} | ||
x.onreadystatechange = function () { | ||
@@ -434,3 +371,2 @@ x.readyState > 3 && callback(x.status >= 400 ? x.statusText : null, { | ||
}; | ||
x.send(payload); | ||
@@ -441,3 +377,2 @@ } catch (e) { | ||
}; | ||
var request = function request(options, url, payload, callback) { | ||
@@ -448,16 +383,11 @@ if (typeof payload === 'function') { | ||
} | ||
callback = callback || function () {}; | ||
if (fetchApi) { | ||
return requestWithFetch(options, url, payload, callback); | ||
} | ||
if ((0, _utils.hasXMLHttpRequest)() || typeof ActiveXObject === 'function') { | ||
return requestWithXmlHttpRequest(options, url, payload, callback); | ||
} | ||
callback(new Error('No fetch and no xhr implementation found!')); | ||
}; | ||
var _default = request; | ||
@@ -476,9 +406,6 @@ exports.default = _default; | ||
exports.makePromise = makePromise; | ||
function _typeof(obj) { "@babel/helpers - typeof"; return _typeof = "function" == typeof Symbol && "symbol" == typeof Symbol.iterator ? function (obj) { return typeof obj; } : function (obj) { return obj && "function" == typeof Symbol && obj.constructor === Symbol && obj !== Symbol.prototype ? "symbol" : typeof obj; }, _typeof(obj); } | ||
var arr = []; | ||
var each = arr.forEach; | ||
var slice = arr.slice; | ||
function defaults(obj) { | ||
@@ -494,3 +421,2 @@ each.call(slice.call(arguments, 1), function (source) { | ||
} | ||
function hasXMLHttpRequest() { | ||
@@ -508,3 +434,2 @@ return typeof XMLHttpRequest === 'function' || (typeof XMLHttpRequest === "undefined" ? "undefined" : _typeof(XMLHttpRequest)) === 'object'; | ||
} | ||
return Promise.resolve(maybePromise); | ||
@@ -511,0 +436,0 @@ } |
{ | ||
"name": "i18next-http-backend", | ||
"version": "1.4.4", | ||
"version": "1.4.5", | ||
"private": false, | ||
@@ -10,2 +10,3 @@ "type": "module", | ||
".": { | ||
"types": "./index.d.ts", | ||
"require": "./cjs/index.js", | ||
@@ -15,5 +16,7 @@ "default": "./esm/index.js" | ||
"./cjs": { | ||
"types": "./index.d.ts", | ||
"default": "./cjs/index.js" | ||
}, | ||
"./esm": { | ||
"types": "./index.d.ts", | ||
"default": "./esm/index.js" | ||
@@ -28,20 +31,20 @@ } | ||
"devDependencies": { | ||
"@babel/cli": "7.18.10", | ||
"@babel/core": "7.19.1", | ||
"@babel/preset-env": "7.19.1", | ||
"@babel/cli": "7.19.3", | ||
"@babel/core": "7.19.6", | ||
"@babel/preset-env": "7.19.4", | ||
"babel-plugin-add-module-exports": "1.0.4", | ||
"browserify": "17.0.0", | ||
"eslint": "8.23.1", | ||
"eslint": "8.26.0", | ||
"eslint-config-standard": "17.0.0", | ||
"eslint-plugin-import": "2.26.0", | ||
"eslint-plugin-n": "15.2.5", | ||
"eslint-plugin-promise": "6.0.1", | ||
"eslint-plugin-n": "15.3.0", | ||
"eslint-plugin-promise": "6.1.1", | ||
"eslint-plugin-require-path-exists": "1.1.9", | ||
"eslint-plugin-standard": "5.0.0", | ||
"expect.js": "0.3.1", | ||
"i18next": "21.9.2", | ||
"i18next": "22.0.2", | ||
"json-server": "0.17.0", | ||
"json5": "2.2.1", | ||
"mocha": "10.0.0", | ||
"uglify-js": "3.17.0", | ||
"mocha": "10.1.0", | ||
"uglify-js": "3.17.4", | ||
"xmlhttprequest": "1.8.0" | ||
@@ -48,0 +51,0 @@ }, |
License Policy Violation
LicenseThis package is not allowed per your license policy. Review the package's license to ensure compliance.
Found 1 instance in 1 package
License Policy Violation
LicenseThis package is not allowed per your license policy. Review the package's license to ensure compliance.
Found 1 instance in 1 package
85751