contentful 10.2.0 → 10.2.2
This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
|
@@ -387,7 +387,7 @@ eval("__webpack_require__.r(__webpack_exports__);\n/* harmony export */ __webpac
|
|
|
387
387
|
/***/ ((__unused_webpack_module, __webpack_exports__, __webpack_require__) => {
|
|
388
388
|
|
|
389
389
|
"use strict";
|
|
390
|
-
eval("__webpack_require__.r(__webpack_exports__);\n/* harmony export */ __webpack_require__.d(__webpack_exports__, {\n/* harmony export */ \"createHttpClient\": () => (/* binding */ createHttpClient),\n/* harmony export */ \"createRequestConfig\": () => (/* binding */ createRequestConfig),\n/* harmony export */ \"enforceObjPath\": () => (/* binding */ enforceObjPath),\n/* harmony export */ \"errorHandler\": () => (/* binding */ errorHandler),\n/* harmony export */ \"freezeSys\": () => (/* binding */ freezeSys),\n/* harmony export */ \"getUserAgentHeader\": () => (/* binding */ getUserAgentHeader),\n/* harmony export */ \"toPlainObject\": () => (/* binding */ toPlainObject)\n/* harmony export */ });\n/* harmony import */ var fast_copy__WEBPACK_IMPORTED_MODULE_0__ = __webpack_require__(/*! fast-copy */ \"../node_modules/fast-copy/dist/fast-copy.js\");\n/* harmony import */ var fast_copy__WEBPACK_IMPORTED_MODULE_0___default = /*#__PURE__*/__webpack_require__.n(fast_copy__WEBPACK_IMPORTED_MODULE_0__);\n/* harmony import */ var qs__WEBPACK_IMPORTED_MODULE_1__ = __webpack_require__(/*! qs */ \"../node_modules/qs/lib/index.js\");\n/* harmony import */ var qs__WEBPACK_IMPORTED_MODULE_1___default = /*#__PURE__*/__webpack_require__.n(qs__WEBPACK_IMPORTED_MODULE_1__);\n/* harmony import */ var lodash_isstring__WEBPACK_IMPORTED_MODULE_2__ = __webpack_require__(/*! lodash.isstring */ \"../node_modules/lodash.isstring/index.js\");\n/* harmony import */ var lodash_isstring__WEBPACK_IMPORTED_MODULE_2___default = /*#__PURE__*/__webpack_require__.n(lodash_isstring__WEBPACK_IMPORTED_MODULE_2__);\n/* harmony import */ var p_throttle__WEBPACK_IMPORTED_MODULE_3__ = __webpack_require__(/*! p-throttle */ \"../node_modules/p-throttle/index.js\");\n/* harmony import */ var p_throttle__WEBPACK_IMPORTED_MODULE_3___default = /*#__PURE__*/__webpack_require__.n(p_throttle__WEBPACK_IMPORTED_MODULE_3__);\n/* harmony import */ var lodash_isplainobject__WEBPACK_IMPORTED_MODULE_4__ = __webpack_require__(/*! lodash.isplainobject */ \"../node_modules/lodash.isplainobject/index.js\");\n/* harmony import */ var lodash_isplainobject__WEBPACK_IMPORTED_MODULE_4___default = /*#__PURE__*/__webpack_require__.n(lodash_isplainobject__WEBPACK_IMPORTED_MODULE_4__);\n\n\n\n\n\n\nfunction _iterableToArrayLimit(arr, i) {\n var _i = null == arr ? null : \"undefined\" != typeof Symbol && arr[Symbol.iterator] || arr[\"@@iterator\"];\n if (null != _i) {\n var _s,\n _e,\n _x,\n _r,\n _arr = [],\n _n = !0,\n _d = !1;\n try {\n if (_x = (_i = _i.call(arr)).next, 0 === i) {\n if (Object(_i) !== _i) return;\n _n = !1;\n } else for (; !(_n = (_s = _x.call(_i)).done) && (_arr.push(_s.value), _arr.length !== i); _n = !0);\n } catch (err) {\n _d = !0, _e = err;\n } finally {\n try {\n if (!_n && null != _i.return && (_r = _i.return(), Object(_r) !== _r)) return;\n } finally {\n if (_d) throw _e;\n }\n }\n return _arr;\n }\n}\nfunction ownKeys(object, enumerableOnly) {\n var keys = Object.keys(object);\n if (Object.getOwnPropertySymbols) {\n var symbols = Object.getOwnPropertySymbols(object);\n enumerableOnly && (symbols = symbols.filter(function (sym) {\n return Object.getOwnPropertyDescriptor(object, sym).enumerable;\n })), keys.push.apply(keys, symbols);\n }\n return keys;\n}\nfunction _objectSpread2(target) {\n for (var i = 1; i < arguments.length; i++) {\n var source = null != arguments[i] ? arguments[i] : {};\n i % 2 ? ownKeys(Object(source), !0).forEach(function (key) {\n _defineProperty(target, key, source[key]);\n }) : Object.getOwnPropertyDescriptors ? Object.defineProperties(target, Object.getOwnPropertyDescriptors(source)) : ownKeys(Object(source)).forEach(function (key) {\n Object.defineProperty(target, key, Object.getOwnPropertyDescriptor(source, key));\n });\n }\n return target;\n}\nfunction _typeof(obj) {\n \"@babel/helpers - typeof\";\n\n return _typeof = \"function\" == typeof Symbol && \"symbol\" == typeof Symbol.iterator ? function (obj) {\n return typeof obj;\n } : function (obj) {\n return obj && \"function\" == typeof Symbol && obj.constructor === Symbol && obj !== Symbol.prototype ? \"symbol\" : typeof obj;\n }, _typeof(obj);\n}\nfunction _wrapRegExp() {\n _wrapRegExp = function (re, groups) {\n return new BabelRegExp(re, void 0, groups);\n };\n var _super = RegExp.prototype,\n _groups = new WeakMap();\n function BabelRegExp(re, flags, groups) {\n var _this = new RegExp(re, flags);\n return _groups.set(_this, groups || _groups.get(re)), _setPrototypeOf(_this, BabelRegExp.prototype);\n }\n function buildGroups(result, re) {\n var g = _groups.get(re);\n return Object.keys(g).reduce(function (groups, name) {\n var i = g[name];\n if (\"number\" == typeof i) groups[name] = result[i];else {\n for (var k = 0; void 0 === result[i[k]] && k + 1 < i.length;) k++;\n groups[name] = result[i[k]];\n }\n return groups;\n }, Object.create(null));\n }\n return _inherits(BabelRegExp, RegExp), BabelRegExp.prototype.exec = function (str) {\n var result = _super.exec.call(this, str);\n if (result) {\n result.groups = buildGroups(result, this);\n var indices = result.indices;\n indices && (indices.groups = buildGroups(indices, this));\n }\n return result;\n }, BabelRegExp.prototype[Symbol.replace] = function (str, substitution) {\n if (\"string\" == typeof substitution) {\n var groups = _groups.get(this);\n return _super[Symbol.replace].call(this, str, substitution.replace(/\\$<([^>]+)>/g, function (_, name) {\n var group = groups[name];\n return \"$\" + (Array.isArray(group) ? group.join(\"$\") : group);\n }));\n }\n if (\"function\" == typeof substitution) {\n var _this = this;\n return _super[Symbol.replace].call(this, str, function () {\n var args = arguments;\n return \"object\" != typeof args[args.length - 1] && (args = [].slice.call(args)).push(buildGroups(args, _this)), substitution.apply(this, args);\n });\n }\n return _super[Symbol.replace].call(this, str, substitution);\n }, _wrapRegExp.apply(this, arguments);\n}\nfunction _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}\nfunction _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}\nfunction _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}\nfunction _slicedToArray(arr, i) {\n return _arrayWithHoles(arr) || _iterableToArrayLimit(arr, i) || _unsupportedIterableToArray(arr, i) || _nonIterableRest();\n}\nfunction _arrayWithHoles(arr) {\n if (Array.isArray(arr)) return arr;\n}\nfunction _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}\nfunction _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}\nfunction _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}\nfunction _createForOfIteratorHelper(o, allowArrayLike) {\n var it = typeof Symbol !== \"undefined\" && o[Symbol.iterator] || o[\"@@iterator\"];\n if (!it) {\n if (Array.isArray(o) || (it = _unsupportedIterableToArray(o)) || allowArrayLike && o && typeof o.length === \"number\") {\n if (it) o = it;\n var i = 0;\n var F = function () {};\n return {\n s: F,\n n: function () {\n if (i >= o.length) return {\n done: true\n };\n return {\n done: false,\n value: o[i++]\n };\n },\n e: function (e) {\n throw e;\n },\n f: F\n };\n }\n throw new TypeError(\"Invalid attempt to iterate non-iterable instance.\\nIn order to be iterable, non-array objects must have a [Symbol.iterator]() method.\");\n }\n var normalCompletion = true,\n didErr = false,\n err;\n return {\n s: function () {\n it = it.call(o);\n },\n n: function () {\n var step = it.next();\n normalCompletion = step.done;\n return step;\n },\n e: function (e) {\n didErr = true;\n err = e;\n },\n f: function () {\n try {\n if (!normalCompletion && it.return != null) it.return();\n } finally {\n if (didErr) throw err;\n }\n }\n };\n}\nfunction _toPrimitive(input, hint) {\n if (typeof input !== \"object\" || input === null) return input;\n var prim = input[Symbol.toPrimitive];\n if (prim !== undefined) {\n var res = prim.call(input, hint || \"default\");\n if (typeof res !== \"object\") return res;\n throw new TypeError(\"@@toPrimitive must return a primitive value.\");\n }\n return (hint === \"string\" ? String : Number)(input);\n}\nfunction _toPropertyKey(arg) {\n var key = _toPrimitive(arg, \"string\");\n return typeof key === \"symbol\" ? key : String(key);\n}\n\nfunction isNode() {\n /**\n * Polyfills of 'process' might set process.browser === true\n *\n * See:\n * https://github.com/webpack/node-libs-browser/blob/master/mock/process.js#L8\n * https://github.com/defunctzombie/node-process/blob/master/browser.js#L156\n **/\n return typeof process !== 'undefined' && !process.browser;\n}\nfunction isReactNative() {\n return typeof window !== 'undefined' && 'navigator' in window && 'product' in window.navigator && window.navigator.product === 'ReactNative';\n}\nfunction getNodeVersion() {\n return process.versions && process.versions.node ? \"v\".concat(process.versions.node) : process.version;\n}\nfunction getWindow() {\n return window;\n}\nfunction noop() {\n return undefined;\n}\n\nvar PERCENTAGE_REGEX = /*#__PURE__*/_wrapRegExp(/(\\d+)(%)/, {\n value: 1\n});\nfunction calculateLimit(type) {\n var max = arguments.length > 1 && arguments[1] !== undefined ? arguments[1] : 7;\n var limit = max;\n if (PERCENTAGE_REGEX.test(type)) {\n var _type$match;\n var groups = (_type$match = type.match(PERCENTAGE_REGEX)) === null || _type$match === void 0 ? void 0 : _type$match.groups;\n if (groups && groups.value) {\n var percentage = parseInt(groups.value) / 100;\n limit = Math.round(max * percentage);\n }\n }\n return Math.min(30, Math.max(1, limit));\n}\nfunction createThrottle(limit, logger) {\n logger('info', \"Throttle request to \".concat(limit, \"/s\"));\n return p_throttle__WEBPACK_IMPORTED_MODULE_3___default()({\n limit: limit,\n interval: 1000,\n strict: false\n });\n}\nvar rateLimitThrottle = (function (axiosInstance) {\n var type = arguments.length > 1 && arguments[1] !== undefined ? arguments[1] : 'auto';\n var _axiosInstance$defaul = axiosInstance.defaults.logHandler,\n logHandler = _axiosInstance$defaul === void 0 ? noop : _axiosInstance$defaul;\n var limit = lodash_isstring__WEBPACK_IMPORTED_MODULE_2___default()(type) ? calculateLimit(type) : calculateLimit('auto', type);\n var throttle = createThrottle(limit, logHandler);\n var isCalculated = false;\n var requestInterceptorId = axiosInstance.interceptors.request.use(function (config) {\n return throttle(function () {\n return config;\n })();\n }, function (error) {\n return Promise.reject(error);\n });\n var responseInterceptorId = axiosInstance.interceptors.response.use(function (response) {\n if (!isCalculated && lodash_isstring__WEBPACK_IMPORTED_MODULE_2___default()(type) && (type === 'auto' || PERCENTAGE_REGEX.test(type)) && response.headers && response.headers['x-contentful-ratelimit-second-limit']) {\n var rawLimit = parseInt(response.headers['x-contentful-ratelimit-second-limit']);\n var nextLimit = calculateLimit(type, rawLimit);\n if (nextLimit !== limit) {\n if (requestInterceptorId) {\n axiosInstance.interceptors.request.eject(requestInterceptorId);\n }\n limit = nextLimit;\n throttle = createThrottle(nextLimit, logHandler);\n requestInterceptorId = axiosInstance.interceptors.request.use(function (config) {\n return throttle(function () {\n return config;\n })();\n }, function (error) {\n return Promise.reject(error);\n });\n }\n isCalculated = true;\n }\n return response;\n }, function (error) {\n return Promise.reject(error);\n });\n return function () {\n axiosInstance.interceptors.request.eject(requestInterceptorId);\n axiosInstance.interceptors.response.eject(responseInterceptorId);\n };\n});\n\nvar delay = function delay(ms) {\n return new Promise(function (resolve) {\n setTimeout(resolve, ms);\n });\n};\nvar defaultWait = function defaultWait(attempts) {\n return Math.pow(Math.SQRT2, attempts);\n};\nfunction rateLimit(instance) {\n var maxRetry = arguments.length > 1 && arguments[1] !== undefined ? arguments[1] : 5;\n var _instance$defaults = instance.defaults,\n _instance$defaults$re = _instance$defaults.responseLogger,\n responseLogger = _instance$defaults$re === void 0 ? noop : _instance$defaults$re,\n _instance$defaults$re2 = _instance$defaults.requestLogger,\n requestLogger = _instance$defaults$re2 === void 0 ? noop : _instance$defaults$re2;\n instance.interceptors.request.use(function (config) {\n requestLogger(config);\n return config;\n }, function (error) {\n requestLogger(error);\n return Promise.reject(error);\n });\n instance.interceptors.response.use(function (response) {\n // we don't need to do anything here\n responseLogger(response);\n return response;\n }, function (error) {\n var response = error.response;\n var config = error.config;\n responseLogger(error);\n // Do not retry if it is disabled or no request config exists (not an axios error)\n if (!config || !instance.defaults.retryOnError) {\n return Promise.reject(error);\n }\n\n // Retried already for max attempts\n var doneAttempts = config.attempts || 1;\n if (doneAttempts > maxRetry) {\n error.attempts = config.attempts;\n return Promise.reject(error);\n }\n var retryErrorType = null;\n var wait = defaultWait(doneAttempts);\n\n // Errors without response did not receive anything from the server\n if (!response) {\n retryErrorType = 'Connection';\n } else if (response.status >= 500 && response.status < 600) {\n // 5** errors are server related\n retryErrorType = \"Server \".concat(response.status);\n } else if (response.status === 429) {\n // 429 errors are exceeded rate limit exceptions\n retryErrorType = 'Rate limit';\n // all headers are lowercased by axios https://github.com/mzabriskie/axios/issues/413\n if (response.headers && error.response.headers['x-contentful-ratelimit-reset']) {\n wait = response.headers['x-contentful-ratelimit-reset'];\n }\n }\n if (retryErrorType) {\n // convert to ms and add jitter\n wait = Math.floor(wait * 1000 + Math.random() * 200 + 500);\n instance.defaults.logHandler('warning', \"\".concat(retryErrorType, \" error occurred. Waiting for \").concat(wait, \" ms before retrying...\"));\n\n // increase attempts counter\n config.attempts = doneAttempts + 1;\n\n /* Somehow between the interceptor and retrying the request the httpAgent/httpsAgent gets transformed from an Agent-like object\n to a regular object, causing failures on retries after rate limits. Removing these properties here fixes the error, but retry\n requests still use the original http/httpsAgent property */\n delete config.httpAgent;\n delete config.httpsAgent;\n return delay(wait).then(function () {\n return instance(config);\n });\n }\n return Promise.reject(error);\n });\n}\n\nfunction asyncToken(instance, getToken) {\n instance.interceptors.request.use(function (config) {\n return getToken().then(function (accessToken) {\n config.headers = _objectSpread2(_objectSpread2({}, config.headers), {}, {\n Authorization: \"Bearer \".concat(accessToken)\n });\n return config;\n });\n });\n}\n\n// Matches 'sub.host:port' or 'host:port' and extracts hostname and port\n// Also enforces toplevel domain specified, no spaces and no protocol\nvar HOST_REGEX = /^(?!\\w+:\\/\\/)([^\\s:]+\\.?[^\\s:]+)(?::(\\d+))?(?!:)$/;\n\n/**\n * Create pre configured axios instance\n * @private\n * @param {AxiosStatic} axios - Axios library\n * @param {CreateHttpClientParams} options - Initialization parameters for the HTTP client\n * @return {ContentfulAxiosInstance} Initialized axios instance\n */\nfunction createHttpClient(axios, options) {\n var defaultConfig = {\n insecure: false,\n retryOnError: true,\n // eslint-disable-next-line @typescript-eslint/no-explicit-any\n logHandler: function logHandler(level, data) {\n if (level === 'error' && data) {\n var title = [data.name, data.message].filter(function (a) {\n return a;\n }).join(' - ');\n console.error(\"[error] \".concat(title));\n console.error(data);\n return;\n }\n console.log(\"[\".concat(level, \"] \").concat(data));\n },\n // Passed to axios\n headers: {},\n httpAgent: false,\n httpsAgent: false,\n timeout: 30000,\n throttle: 0,\n proxy: false,\n basePath: '',\n adapter: undefined,\n maxContentLength: 1073741824,\n // 1GB\n maxBodyLength: 1073741824 // 1GB\n };\n\n var config = _objectSpread2(_objectSpread2({}, defaultConfig), options);\n if (!config.accessToken) {\n var missingAccessTokenError = new TypeError('Expected parameter accessToken');\n config.logHandler('error', missingAccessTokenError);\n throw missingAccessTokenError;\n }\n\n // Construct axios baseURL option\n var protocol = config.insecure ? 'http' : 'https';\n var space = config.space ? \"\".concat(config.space, \"/\") : '';\n var hostname = config.defaultHostname;\n var port = config.insecure ? 80 : 443;\n if (config.host && HOST_REGEX.test(config.host)) {\n var parsed = config.host.split(':');\n if (parsed.length === 2) {\n var _parsed = _slicedToArray(parsed, 2);\n hostname = _parsed[0];\n port = _parsed[1];\n } else {\n hostname = parsed[0];\n }\n }\n\n // Ensure that basePath does start but not end with a slash\n if (config.basePath) {\n config.basePath = \"/\".concat(config.basePath.split('/').filter(Boolean).join('/'));\n }\n var baseURL = options.baseURL || \"\".concat(protocol, \"://\").concat(hostname, \":\").concat(port).concat(config.basePath, \"/spaces/\").concat(space);\n if (!config.headers.Authorization && typeof config.accessToken !== 'function') {\n config.headers.Authorization = 'Bearer ' + config.accessToken;\n }\n var axiosOptions = {\n // Axios\n baseURL: baseURL,\n headers: config.headers,\n httpAgent: config.httpAgent,\n httpsAgent: config.httpsAgent,\n paramsSerializer: (qs__WEBPACK_IMPORTED_MODULE_1___default().stringify),\n proxy: config.proxy,\n timeout: config.timeout,\n adapter: config.adapter,\n maxContentLength: config.maxContentLength,\n maxBodyLength: config.maxBodyLength,\n // Contentful\n logHandler: config.logHandler,\n responseLogger: config.responseLogger,\n requestLogger: config.requestLogger,\n retryOnError: config.retryOnError\n };\n var instance = axios.create(axiosOptions);\n instance.httpClientParams = options;\n\n /**\n * Creates a new axios instance with the same default base parameters as the\n * current one, and with any overrides passed to the newParams object\n * This is useful as the SDKs use dependency injection to get the axios library\n * and the version of the library comes from different places depending\n * on whether it's a browser build or a node.js build.\n * @private\n * @param {CreateHttpClientParams} httpClientParams - Initialization parameters for the HTTP client\n * @return {ContentfulAxiosInstance} Initialized axios instance\n */\n instance.cloneWithNewParams = function (newParams) {\n return createHttpClient(axios, _objectSpread2(_objectSpread2({}, fast_copy__WEBPACK_IMPORTED_MODULE_0___default()(options)), newParams));\n };\n\n /**\n * Apply interceptors.\n * Please note that the order of interceptors is important\n */\n\n if (config.onBeforeRequest) {\n instance.interceptors.request.use(config.onBeforeRequest);\n }\n if (typeof config.accessToken === 'function') {\n asyncToken(instance, config.accessToken);\n }\n if (config.throttle) {\n rateLimitThrottle(instance, config.throttle);\n }\n rateLimit(instance, config.retryLimit);\n if (config.onError) {\n instance.interceptors.response.use(function (response) {\n return response;\n }, config.onError);\n }\n return instance;\n}\n\n/* eslint-disable @typescript-eslint/no-explicit-any */\n/**\n * Creates request parameters configuration by parsing an existing query object\n * @private\n * @param {Object} query\n * @return {Object} Config object with `params` property, ready to be used in axios\n */\nfunction createRequestConfig(_ref) {\n var query = _ref.query;\n var config = {};\n delete query.resolveLinks;\n config.params = fast_copy__WEBPACK_IMPORTED_MODULE_0___default()(query);\n return config;\n}\n\n// eslint-disable-next-line @typescript-eslint/no-explicit-any\nfunction enforceObjPath(obj, path) {\n if (!(path in obj)) {\n var err = new Error();\n err.name = 'PropertyMissing';\n err.message = \"Required property \".concat(path, \" missing from:\\n\\n\").concat(JSON.stringify(obj), \"\\n\\n\");\n throw err;\n }\n return true;\n}\n\n// copied from https://developer.mozilla.org/en-US/docs/Web/JavaScript/Reference/Global_Objects/Object/freeze\n\nfunction deepFreeze(object) {\n var propNames = Object.getOwnPropertyNames(object);\n var _iterator = _createForOfIteratorHelper(propNames),\n _step;\n try {\n for (_iterator.s(); !(_step = _iterator.n()).done;) {\n var name = _step.value;\n var value = object[name];\n if (value && _typeof(value) === 'object') {\n deepFreeze(value);\n }\n }\n } catch (err) {\n _iterator.e(err);\n } finally {\n _iterator.f();\n }\n return Object.freeze(object);\n}\nfunction freezeSys(obj) {\n deepFreeze(obj.sys || {});\n return obj;\n}\n\nfunction getBrowserOS() {\n var win = getWindow();\n if (!win) {\n return null;\n }\n var userAgent = win.navigator.userAgent;\n // TODO: platform is deprecated.\n var platform = win.navigator.platform;\n var macosPlatforms = ['Macintosh', 'MacIntel', 'MacPPC', 'Mac68K'];\n var windowsPlatforms = ['Win32', 'Win64', 'Windows', 'WinCE'];\n var iosPlatforms = ['iPhone', 'iPad', 'iPod'];\n if (macosPlatforms.indexOf(platform) !== -1) {\n return 'macOS';\n } else if (iosPlatforms.indexOf(platform) !== -1) {\n return 'iOS';\n } else if (windowsPlatforms.indexOf(platform) !== -1) {\n return 'Windows';\n } else if (/Android/.test(userAgent)) {\n return 'Android';\n } else if (/Linux/.test(platform)) {\n return 'Linux';\n }\n return null;\n}\nfunction getNodeOS() {\n var platform = process.platform || 'linux';\n var version = process.version || '0.0.0';\n var platformMap = {\n android: 'Android',\n aix: 'Linux',\n darwin: 'macOS',\n freebsd: 'Linux',\n linux: 'Linux',\n openbsd: 'Linux',\n sunos: 'Linux',\n win32: 'Windows'\n };\n if (platform in platformMap) {\n return \"\".concat(platformMap[platform] || 'Linux', \"/\").concat(version);\n }\n return null;\n}\nfunction getUserAgentHeader(sdk, application, integration, feature) {\n var headerParts = [];\n if (application) {\n headerParts.push(\"app \".concat(application));\n }\n if (integration) {\n headerParts.push(\"integration \".concat(integration));\n }\n if (feature) {\n headerParts.push('feature ' + feature);\n }\n headerParts.push(\"sdk \".concat(sdk));\n var platform = null;\n try {\n if (isReactNative()) {\n platform = getBrowserOS();\n headerParts.push('platform ReactNative');\n } else if (isNode()) {\n platform = getNodeOS();\n headerParts.push(\"platform node.js/\".concat(getNodeVersion()));\n } else {\n platform = getBrowserOS();\n headerParts.push('platform browser');\n }\n } catch (e) {\n platform = null;\n }\n if (platform) {\n headerParts.push(\"os \".concat(platform));\n }\n return \"\".concat(headerParts.filter(function (item) {\n return item !== '';\n }).join('; '), \";\");\n}\n\n/**\n * Mixes in a method to return just a plain object with no additional methods\n * @private\n * @param data - Any plain JSON response returned from the API\n * @return Enhanced object with toPlainObject method\n */\nfunction toPlainObject(data) {\n // eslint-disable-next-line @typescript-eslint/ban-ts-comment\n // @ts-expect-error\n return Object.defineProperty(data, 'toPlainObject', {\n enumerable: false,\n configurable: false,\n writable: false,\n value: function value() {\n return fast_copy__WEBPACK_IMPORTED_MODULE_0___default()(this);\n }\n });\n}\n\n/**\n * Handles errors received from the server. Parses the error into a more useful\n * format, places it in an exception and throws it.\n * See https://www.contentful.com/developers/docs/references/errors/\n * for more details on the data received on the errorResponse.data property\n * and the expected error codes.\n * @private\n */\nfunction errorHandler(errorResponse) {\n var config = errorResponse.config,\n response = errorResponse.response;\n var errorName;\n\n // Obscure the Management token\n if (config && config.headers && config.headers['Authorization']) {\n var token = \"...\".concat(config.headers['Authorization'].toString().substr(-5));\n config.headers['Authorization'] = \"Bearer \".concat(token);\n }\n if (!lodash_isplainobject__WEBPACK_IMPORTED_MODULE_4___default()(response) || !lodash_isplainobject__WEBPACK_IMPORTED_MODULE_4___default()(config)) {\n throw errorResponse;\n }\n var data = response === null || response === void 0 ? void 0 : response.data;\n var errorData = {\n status: response === null || response === void 0 ? void 0 : response.status,\n statusText: response === null || response === void 0 ? void 0 : response.statusText,\n message: '',\n details: {}\n };\n if (lodash_isplainobject__WEBPACK_IMPORTED_MODULE_4___default()(config)) {\n errorData.request = {\n url: config.url,\n headers: config.headers,\n method: config.method,\n payloadData: config.data\n };\n }\n if (data && lodash_isplainobject__WEBPACK_IMPORTED_MODULE_4___default()(data)) {\n if ('requestId' in data) {\n errorData.requestId = data.requestId || 'UNKNOWN';\n }\n if ('message' in data) {\n errorData.message = data.message || '';\n }\n if ('details' in data) {\n errorData.details = data.details || {};\n }\n if ('sys' in data) {\n if ('id' in data.sys) {\n errorName = data.sys.id;\n }\n }\n }\n var error = new Error();\n error.name = errorName && errorName !== 'Unknown' ? errorName : \"\".concat(response === null || response === void 0 ? void 0 : response.status, \" \").concat(response === null || response === void 0 ? void 0 : response.statusText);\n try {\n error.message = JSON.stringify(errorData, null, ' ');\n } catch (_unused) {\n var _errorData$message;\n error.message = (_errorData$message = errorData === null || errorData === void 0 ? void 0 : errorData.message) !== null && _errorData$message !== void 0 ? _errorData$message : '';\n }\n throw error;\n}\n\n\n\n\n//# sourceURL=webpack://contentful/../node_modules/contentful-sdk-core/dist/index.es-modules.js?");
|
|
390
|
+
eval("__webpack_require__.r(__webpack_exports__);\n/* harmony export */ __webpack_require__.d(__webpack_exports__, {\n/* harmony export */ createHttpClient: () => (/* binding */ createHttpClient),\n/* harmony export */ createRequestConfig: () => (/* binding */ createRequestConfig),\n/* harmony export */ enforceObjPath: () => (/* binding */ enforceObjPath),\n/* harmony export */ errorHandler: () => (/* binding */ errorHandler),\n/* harmony export */ freezeSys: () => (/* binding */ freezeSys),\n/* harmony export */ getUserAgentHeader: () => (/* binding */ getUserAgentHeader),\n/* harmony export */ toPlainObject: () => (/* binding */ toPlainObject)\n/* harmony export */ });\n/* harmony import */ var fast_copy__WEBPACK_IMPORTED_MODULE_0__ = __webpack_require__(/*! fast-copy */ \"../node_modules/fast-copy/dist/fast-copy.js\");\n/* harmony import */ var fast_copy__WEBPACK_IMPORTED_MODULE_0___default = /*#__PURE__*/__webpack_require__.n(fast_copy__WEBPACK_IMPORTED_MODULE_0__);\n/* harmony import */ var qs__WEBPACK_IMPORTED_MODULE_1__ = __webpack_require__(/*! qs */ \"../node_modules/qs/lib/index.js\");\n/* harmony import */ var qs__WEBPACK_IMPORTED_MODULE_1___default = /*#__PURE__*/__webpack_require__.n(qs__WEBPACK_IMPORTED_MODULE_1__);\n/* harmony import */ var lodash_isstring__WEBPACK_IMPORTED_MODULE_2__ = __webpack_require__(/*! lodash.isstring */ \"../node_modules/lodash.isstring/index.js\");\n/* harmony import */ var lodash_isstring__WEBPACK_IMPORTED_MODULE_2___default = /*#__PURE__*/__webpack_require__.n(lodash_isstring__WEBPACK_IMPORTED_MODULE_2__);\n/* harmony import */ var p_throttle__WEBPACK_IMPORTED_MODULE_3__ = __webpack_require__(/*! p-throttle */ \"../node_modules/p-throttle/index.js\");\n/* harmony import */ var p_throttle__WEBPACK_IMPORTED_MODULE_3___default = /*#__PURE__*/__webpack_require__.n(p_throttle__WEBPACK_IMPORTED_MODULE_3__);\n/* harmony import */ var lodash_isplainobject__WEBPACK_IMPORTED_MODULE_4__ = __webpack_require__(/*! lodash.isplainobject */ \"../node_modules/lodash.isplainobject/index.js\");\n/* harmony import */ var lodash_isplainobject__WEBPACK_IMPORTED_MODULE_4___default = /*#__PURE__*/__webpack_require__.n(lodash_isplainobject__WEBPACK_IMPORTED_MODULE_4__);\n\n\n\n\n\n\nfunction _iterableToArrayLimit(arr, i) {\n var _i = null == arr ? null : \"undefined\" != typeof Symbol && arr[Symbol.iterator] || arr[\"@@iterator\"];\n if (null != _i) {\n var _s,\n _e,\n _x,\n _r,\n _arr = [],\n _n = !0,\n _d = !1;\n try {\n if (_x = (_i = _i.call(arr)).next, 0 === i) {\n if (Object(_i) !== _i) return;\n _n = !1;\n } else for (; !(_n = (_s = _x.call(_i)).done) && (_arr.push(_s.value), _arr.length !== i); _n = !0);\n } catch (err) {\n _d = !0, _e = err;\n } finally {\n try {\n if (!_n && null != _i.return && (_r = _i.return(), Object(_r) !== _r)) return;\n } finally {\n if (_d) throw _e;\n }\n }\n return _arr;\n }\n}\nfunction ownKeys(object, enumerableOnly) {\n var keys = Object.keys(object);\n if (Object.getOwnPropertySymbols) {\n var symbols = Object.getOwnPropertySymbols(object);\n enumerableOnly && (symbols = symbols.filter(function (sym) {\n return Object.getOwnPropertyDescriptor(object, sym).enumerable;\n })), keys.push.apply(keys, symbols);\n }\n return keys;\n}\nfunction _objectSpread2(target) {\n for (var i = 1; i < arguments.length; i++) {\n var source = null != arguments[i] ? arguments[i] : {};\n i % 2 ? ownKeys(Object(source), !0).forEach(function (key) {\n _defineProperty(target, key, source[key]);\n }) : Object.getOwnPropertyDescriptors ? Object.defineProperties(target, Object.getOwnPropertyDescriptors(source)) : ownKeys(Object(source)).forEach(function (key) {\n Object.defineProperty(target, key, Object.getOwnPropertyDescriptor(source, key));\n });\n }\n return target;\n}\nfunction _typeof(obj) {\n \"@babel/helpers - typeof\";\n\n return _typeof = \"function\" == typeof Symbol && \"symbol\" == typeof Symbol.iterator ? function (obj) {\n return typeof obj;\n } : function (obj) {\n return obj && \"function\" == typeof Symbol && obj.constructor === Symbol && obj !== Symbol.prototype ? \"symbol\" : typeof obj;\n }, _typeof(obj);\n}\nfunction _wrapRegExp() {\n _wrapRegExp = function (re, groups) {\n return new BabelRegExp(re, void 0, groups);\n };\n var _super = RegExp.prototype,\n _groups = new WeakMap();\n function BabelRegExp(re, flags, groups) {\n var _this = new RegExp(re, flags);\n return _groups.set(_this, groups || _groups.get(re)), _setPrototypeOf(_this, BabelRegExp.prototype);\n }\n function buildGroups(result, re) {\n var g = _groups.get(re);\n return Object.keys(g).reduce(function (groups, name) {\n var i = g[name];\n if (\"number\" == typeof i) groups[name] = result[i];else {\n for (var k = 0; void 0 === result[i[k]] && k + 1 < i.length;) k++;\n groups[name] = result[i[k]];\n }\n return groups;\n }, Object.create(null));\n }\n return _inherits(BabelRegExp, RegExp), BabelRegExp.prototype.exec = function (str) {\n var result = _super.exec.call(this, str);\n if (result) {\n result.groups = buildGroups(result, this);\n var indices = result.indices;\n indices && (indices.groups = buildGroups(indices, this));\n }\n return result;\n }, BabelRegExp.prototype[Symbol.replace] = function (str, substitution) {\n if (\"string\" == typeof substitution) {\n var groups = _groups.get(this);\n return _super[Symbol.replace].call(this, str, substitution.replace(/\\$<([^>]+)>/g, function (_, name) {\n var group = groups[name];\n return \"$\" + (Array.isArray(group) ? group.join(\"$\") : group);\n }));\n }\n if (\"function\" == typeof substitution) {\n var _this = this;\n return _super[Symbol.replace].call(this, str, function () {\n var args = arguments;\n return \"object\" != typeof args[args.length - 1] && (args = [].slice.call(args)).push(buildGroups(args, _this)), substitution.apply(this, args);\n });\n }\n return _super[Symbol.replace].call(this, str, substitution);\n }, _wrapRegExp.apply(this, arguments);\n}\nfunction _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}\nfunction _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}\nfunction _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}\nfunction _slicedToArray(arr, i) {\n return _arrayWithHoles(arr) || _iterableToArrayLimit(arr, i) || _unsupportedIterableToArray(arr, i) || _nonIterableRest();\n}\nfunction _arrayWithHoles(arr) {\n if (Array.isArray(arr)) return arr;\n}\nfunction _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}\nfunction _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}\nfunction _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}\nfunction _createForOfIteratorHelper(o, allowArrayLike) {\n var it = typeof Symbol !== \"undefined\" && o[Symbol.iterator] || o[\"@@iterator\"];\n if (!it) {\n if (Array.isArray(o) || (it = _unsupportedIterableToArray(o)) || allowArrayLike && o && typeof o.length === \"number\") {\n if (it) o = it;\n var i = 0;\n var F = function () {};\n return {\n s: F,\n n: function () {\n if (i >= o.length) return {\n done: true\n };\n return {\n done: false,\n value: o[i++]\n };\n },\n e: function (e) {\n throw e;\n },\n f: F\n };\n }\n throw new TypeError(\"Invalid attempt to iterate non-iterable instance.\\nIn order to be iterable, non-array objects must have a [Symbol.iterator]() method.\");\n }\n var normalCompletion = true,\n didErr = false,\n err;\n return {\n s: function () {\n it = it.call(o);\n },\n n: function () {\n var step = it.next();\n normalCompletion = step.done;\n return step;\n },\n e: function (e) {\n didErr = true;\n err = e;\n },\n f: function () {\n try {\n if (!normalCompletion && it.return != null) it.return();\n } finally {\n if (didErr) throw err;\n }\n }\n };\n}\nfunction _toPrimitive(input, hint) {\n if (typeof input !== \"object\" || input === null) return input;\n var prim = input[Symbol.toPrimitive];\n if (prim !== undefined) {\n var res = prim.call(input, hint || \"default\");\n if (typeof res !== \"object\") return res;\n throw new TypeError(\"@@toPrimitive must return a primitive value.\");\n }\n return (hint === \"string\" ? String : Number)(input);\n}\nfunction _toPropertyKey(arg) {\n var key = _toPrimitive(arg, \"string\");\n return typeof key === \"symbol\" ? key : String(key);\n}\n\nfunction isNode() {\n /**\n * Polyfills of 'process' might set process.browser === true\n *\n * See:\n * https://github.com/webpack/node-libs-browser/blob/master/mock/process.js#L8\n * https://github.com/defunctzombie/node-process/blob/master/browser.js#L156\n **/\n return typeof process !== 'undefined' && !process.browser;\n}\nfunction isReactNative() {\n return typeof window !== 'undefined' && 'navigator' in window && 'product' in window.navigator && window.navigator.product === 'ReactNative';\n}\nfunction getNodeVersion() {\n return process.versions && process.versions.node ? \"v\".concat(process.versions.node) : process.version;\n}\nfunction getWindow() {\n return window;\n}\nfunction noop() {\n return undefined;\n}\n\nvar PERCENTAGE_REGEX = /*#__PURE__*/_wrapRegExp(/(\\d+)(%)/, {\n value: 1\n});\nfunction calculateLimit(type) {\n var max = arguments.length > 1 && arguments[1] !== undefined ? arguments[1] : 7;\n var limit = max;\n if (PERCENTAGE_REGEX.test(type)) {\n var _type$match;\n var groups = (_type$match = type.match(PERCENTAGE_REGEX)) === null || _type$match === void 0 ? void 0 : _type$match.groups;\n if (groups && groups.value) {\n var percentage = parseInt(groups.value) / 100;\n limit = Math.round(max * percentage);\n }\n }\n return Math.min(30, Math.max(1, limit));\n}\nfunction createThrottle(limit, logger) {\n logger('info', \"Throttle request to \".concat(limit, \"/s\"));\n return p_throttle__WEBPACK_IMPORTED_MODULE_3___default()({\n limit: limit,\n interval: 1000,\n strict: false\n });\n}\nvar rateLimitThrottle = (function (axiosInstance) {\n var type = arguments.length > 1 && arguments[1] !== undefined ? arguments[1] : 'auto';\n var _axiosInstance$defaul = axiosInstance.defaults.logHandler,\n logHandler = _axiosInstance$defaul === void 0 ? noop : _axiosInstance$defaul;\n var limit = lodash_isstring__WEBPACK_IMPORTED_MODULE_2___default()(type) ? calculateLimit(type) : calculateLimit('auto', type);\n var throttle = createThrottle(limit, logHandler);\n var isCalculated = false;\n var requestInterceptorId = axiosInstance.interceptors.request.use(function (config) {\n return throttle(function () {\n return config;\n })();\n }, function (error) {\n return Promise.reject(error);\n });\n var responseInterceptorId = axiosInstance.interceptors.response.use(function (response) {\n if (!isCalculated && lodash_isstring__WEBPACK_IMPORTED_MODULE_2___default()(type) && (type === 'auto' || PERCENTAGE_REGEX.test(type)) && response.headers && response.headers['x-contentful-ratelimit-second-limit']) {\n var rawLimit = parseInt(response.headers['x-contentful-ratelimit-second-limit']);\n var nextLimit = calculateLimit(type, rawLimit);\n if (nextLimit !== limit) {\n if (requestInterceptorId) {\n axiosInstance.interceptors.request.eject(requestInterceptorId);\n }\n limit = nextLimit;\n throttle = createThrottle(nextLimit, logHandler);\n requestInterceptorId = axiosInstance.interceptors.request.use(function (config) {\n return throttle(function () {\n return config;\n })();\n }, function (error) {\n return Promise.reject(error);\n });\n }\n isCalculated = true;\n }\n return response;\n }, function (error) {\n return Promise.reject(error);\n });\n return function () {\n axiosInstance.interceptors.request.eject(requestInterceptorId);\n axiosInstance.interceptors.response.eject(responseInterceptorId);\n };\n});\n\nvar delay = function delay(ms) {\n return new Promise(function (resolve) {\n setTimeout(resolve, ms);\n });\n};\nvar defaultWait = function defaultWait(attempts) {\n return Math.pow(Math.SQRT2, attempts);\n};\nfunction rateLimit(instance) {\n var maxRetry = arguments.length > 1 && arguments[1] !== undefined ? arguments[1] : 5;\n var _instance$defaults = instance.defaults,\n _instance$defaults$re = _instance$defaults.responseLogger,\n responseLogger = _instance$defaults$re === void 0 ? noop : _instance$defaults$re,\n _instance$defaults$re2 = _instance$defaults.requestLogger,\n requestLogger = _instance$defaults$re2 === void 0 ? noop : _instance$defaults$re2;\n instance.interceptors.request.use(function (config) {\n requestLogger(config);\n return config;\n }, function (error) {\n requestLogger(error);\n return Promise.reject(error);\n });\n instance.interceptors.response.use(function (response) {\n // we don't need to do anything here\n responseLogger(response);\n return response;\n }, function (error) {\n var response = error.response;\n var config = error.config;\n responseLogger(error);\n // Do not retry if it is disabled or no request config exists (not an axios error)\n if (!config || !instance.defaults.retryOnError) {\n return Promise.reject(error);\n }\n\n // Retried already for max attempts\n var doneAttempts = config.attempts || 1;\n if (doneAttempts > maxRetry) {\n error.attempts = config.attempts;\n return Promise.reject(error);\n }\n var retryErrorType = null;\n var wait = defaultWait(doneAttempts);\n\n // Errors without response did not receive anything from the server\n if (!response) {\n retryErrorType = 'Connection';\n } else if (response.status >= 500 && response.status < 600) {\n // 5** errors are server related\n retryErrorType = \"Server \".concat(response.status);\n } else if (response.status === 429) {\n // 429 errors are exceeded rate limit exceptions\n retryErrorType = 'Rate limit';\n // all headers are lowercased by axios https://github.com/mzabriskie/axios/issues/413\n if (response.headers && error.response.headers['x-contentful-ratelimit-reset']) {\n wait = response.headers['x-contentful-ratelimit-reset'];\n }\n }\n if (retryErrorType) {\n // convert to ms and add jitter\n wait = Math.floor(wait * 1000 + Math.random() * 200 + 500);\n instance.defaults.logHandler('warning', \"\".concat(retryErrorType, \" error occurred. Waiting for \").concat(wait, \" ms before retrying...\"));\n\n // increase attempts counter\n config.attempts = doneAttempts + 1;\n\n /* Somehow between the interceptor and retrying the request the httpAgent/httpsAgent gets transformed from an Agent-like object\n to a regular object, causing failures on retries after rate limits. Removing these properties here fixes the error, but retry\n requests still use the original http/httpsAgent property */\n delete config.httpAgent;\n delete config.httpsAgent;\n return delay(wait).then(function () {\n return instance(config);\n });\n }\n return Promise.reject(error);\n });\n}\n\nfunction asyncToken(instance, getToken) {\n instance.interceptors.request.use(function (config) {\n return getToken().then(function (accessToken) {\n config.headers = _objectSpread2(_objectSpread2({}, config.headers), {}, {\n Authorization: \"Bearer \".concat(accessToken)\n });\n return config;\n });\n });\n}\n\n// Matches 'sub.host:port' or 'host:port' and extracts hostname and port\n// Also enforces toplevel domain specified, no spaces and no protocol\nvar HOST_REGEX = /^(?!\\w+:\\/\\/)([^\\s:]+\\.?[^\\s:]+)(?::(\\d+))?(?!:)$/;\n\n/**\n * Create pre configured axios instance\n * @private\n * @param {AxiosStatic} axios - Axios library\n * @param {CreateHttpClientParams} options - Initialization parameters for the HTTP client\n * @return {ContentfulAxiosInstance} Initialized axios instance\n */\nfunction createHttpClient(axios, options) {\n var defaultConfig = {\n insecure: false,\n retryOnError: true,\n // eslint-disable-next-line @typescript-eslint/no-explicit-any\n logHandler: function logHandler(level, data) {\n if (level === 'error' && data) {\n var title = [data.name, data.message].filter(function (a) {\n return a;\n }).join(' - ');\n console.error(\"[error] \".concat(title));\n console.error(data);\n return;\n }\n console.log(\"[\".concat(level, \"] \").concat(data));\n },\n // Passed to axios\n headers: {},\n httpAgent: false,\n httpsAgent: false,\n timeout: 30000,\n throttle: 0,\n proxy: false,\n basePath: '',\n adapter: undefined,\n maxContentLength: 1073741824,\n // 1GB\n maxBodyLength: 1073741824 // 1GB\n };\n\n var config = _objectSpread2(_objectSpread2({}, defaultConfig), options);\n if (!config.accessToken) {\n var missingAccessTokenError = new TypeError('Expected parameter accessToken');\n config.logHandler('error', missingAccessTokenError);\n throw missingAccessTokenError;\n }\n\n // Construct axios baseURL option\n var protocol = config.insecure ? 'http' : 'https';\n var space = config.space ? \"\".concat(config.space, \"/\") : '';\n var hostname = config.defaultHostname;\n var port = config.insecure ? 80 : 443;\n if (config.host && HOST_REGEX.test(config.host)) {\n var parsed = config.host.split(':');\n if (parsed.length === 2) {\n var _parsed = _slicedToArray(parsed, 2);\n hostname = _parsed[0];\n port = _parsed[1];\n } else {\n hostname = parsed[0];\n }\n }\n\n // Ensure that basePath does start but not end with a slash\n if (config.basePath) {\n config.basePath = \"/\".concat(config.basePath.split('/').filter(Boolean).join('/'));\n }\n var baseURL = options.baseURL || \"\".concat(protocol, \"://\").concat(hostname, \":\").concat(port).concat(config.basePath, \"/spaces/\").concat(space);\n if (!config.headers.Authorization && typeof config.accessToken !== 'function') {\n config.headers.Authorization = 'Bearer ' + config.accessToken;\n }\n var axiosOptions = {\n // Axios\n baseURL: baseURL,\n headers: config.headers,\n httpAgent: config.httpAgent,\n httpsAgent: config.httpsAgent,\n paramsSerializer: (qs__WEBPACK_IMPORTED_MODULE_1___default().stringify),\n proxy: config.proxy,\n timeout: config.timeout,\n adapter: config.adapter,\n maxContentLength: config.maxContentLength,\n maxBodyLength: config.maxBodyLength,\n // Contentful\n logHandler: config.logHandler,\n responseLogger: config.responseLogger,\n requestLogger: config.requestLogger,\n retryOnError: config.retryOnError\n };\n var instance = axios.create(axiosOptions);\n instance.httpClientParams = options;\n\n /**\n * Creates a new axios instance with the same default base parameters as the\n * current one, and with any overrides passed to the newParams object\n * This is useful as the SDKs use dependency injection to get the axios library\n * and the version of the library comes from different places depending\n * on whether it's a browser build or a node.js build.\n * @private\n * @param {CreateHttpClientParams} httpClientParams - Initialization parameters for the HTTP client\n * @return {ContentfulAxiosInstance} Initialized axios instance\n */\n instance.cloneWithNewParams = function (newParams) {\n return createHttpClient(axios, _objectSpread2(_objectSpread2({}, fast_copy__WEBPACK_IMPORTED_MODULE_0___default()(options)), newParams));\n };\n\n /**\n * Apply interceptors.\n * Please note that the order of interceptors is important\n */\n\n if (config.onBeforeRequest) {\n instance.interceptors.request.use(config.onBeforeRequest);\n }\n if (typeof config.accessToken === 'function') {\n asyncToken(instance, config.accessToken);\n }\n if (config.throttle) {\n rateLimitThrottle(instance, config.throttle);\n }\n rateLimit(instance, config.retryLimit);\n if (config.onError) {\n instance.interceptors.response.use(function (response) {\n return response;\n }, config.onError);\n }\n return instance;\n}\n\n/* eslint-disable @typescript-eslint/no-explicit-any */\n/**\n * Creates request parameters configuration by parsing an existing query object\n * @private\n * @param {Object} query\n * @return {Object} Config object with `params` property, ready to be used in axios\n */\nfunction createRequestConfig(_ref) {\n var query = _ref.query;\n var config = {};\n delete query.resolveLinks;\n config.params = fast_copy__WEBPACK_IMPORTED_MODULE_0___default()(query);\n return config;\n}\n\n// eslint-disable-next-line @typescript-eslint/no-explicit-any\nfunction enforceObjPath(obj, path) {\n if (!(path in obj)) {\n var err = new Error();\n err.name = 'PropertyMissing';\n err.message = \"Required property \".concat(path, \" missing from:\\n\\n\").concat(JSON.stringify(obj), \"\\n\\n\");\n throw err;\n }\n return true;\n}\n\n// copied from https://developer.mozilla.org/en-US/docs/Web/JavaScript/Reference/Global_Objects/Object/freeze\n\nfunction deepFreeze(object) {\n var propNames = Object.getOwnPropertyNames(object);\n var _iterator = _createForOfIteratorHelper(propNames),\n _step;\n try {\n for (_iterator.s(); !(_step = _iterator.n()).done;) {\n var name = _step.value;\n var value = object[name];\n if (value && _typeof(value) === 'object') {\n deepFreeze(value);\n }\n }\n } catch (err) {\n _iterator.e(err);\n } finally {\n _iterator.f();\n }\n return Object.freeze(object);\n}\nfunction freezeSys(obj) {\n deepFreeze(obj.sys || {});\n return obj;\n}\n\nfunction getBrowserOS() {\n var win = getWindow();\n if (!win) {\n return null;\n }\n var userAgent = win.navigator.userAgent;\n // TODO: platform is deprecated.\n var platform = win.navigator.platform;\n var macosPlatforms = ['Macintosh', 'MacIntel', 'MacPPC', 'Mac68K'];\n var windowsPlatforms = ['Win32', 'Win64', 'Windows', 'WinCE'];\n var iosPlatforms = ['iPhone', 'iPad', 'iPod'];\n if (macosPlatforms.indexOf(platform) !== -1) {\n return 'macOS';\n } else if (iosPlatforms.indexOf(platform) !== -1) {\n return 'iOS';\n } else if (windowsPlatforms.indexOf(platform) !== -1) {\n return 'Windows';\n } else if (/Android/.test(userAgent)) {\n return 'Android';\n } else if (/Linux/.test(platform)) {\n return 'Linux';\n }\n return null;\n}\nfunction getNodeOS() {\n var platform = process.platform || 'linux';\n var version = process.version || '0.0.0';\n var platformMap = {\n android: 'Android',\n aix: 'Linux',\n darwin: 'macOS',\n freebsd: 'Linux',\n linux: 'Linux',\n openbsd: 'Linux',\n sunos: 'Linux',\n win32: 'Windows'\n };\n if (platform in platformMap) {\n return \"\".concat(platformMap[platform] || 'Linux', \"/\").concat(version);\n }\n return null;\n}\nfunction getUserAgentHeader(sdk, application, integration, feature) {\n var headerParts = [];\n if (application) {\n headerParts.push(\"app \".concat(application));\n }\n if (integration) {\n headerParts.push(\"integration \".concat(integration));\n }\n if (feature) {\n headerParts.push('feature ' + feature);\n }\n headerParts.push(\"sdk \".concat(sdk));\n var platform = null;\n try {\n if (isReactNative()) {\n platform = getBrowserOS();\n headerParts.push('platform ReactNative');\n } else if (isNode()) {\n platform = getNodeOS();\n headerParts.push(\"platform node.js/\".concat(getNodeVersion()));\n } else {\n platform = getBrowserOS();\n headerParts.push('platform browser');\n }\n } catch (e) {\n platform = null;\n }\n if (platform) {\n headerParts.push(\"os \".concat(platform));\n }\n return \"\".concat(headerParts.filter(function (item) {\n return item !== '';\n }).join('; '), \";\");\n}\n\n/**\n * Mixes in a method to return just a plain object with no additional methods\n * @private\n * @param data - Any plain JSON response returned from the API\n * @return Enhanced object with toPlainObject method\n */\nfunction toPlainObject(data) {\n // eslint-disable-next-line @typescript-eslint/ban-ts-comment\n // @ts-expect-error\n return Object.defineProperty(data, 'toPlainObject', {\n enumerable: false,\n configurable: false,\n writable: false,\n value: function value() {\n return fast_copy__WEBPACK_IMPORTED_MODULE_0___default()(this);\n }\n });\n}\n\n/**\n * Handles errors received from the server. Parses the error into a more useful\n * format, places it in an exception and throws it.\n * See https://www.contentful.com/developers/docs/references/errors/\n * for more details on the data received on the errorResponse.data property\n * and the expected error codes.\n * @private\n */\nfunction errorHandler(errorResponse) {\n var config = errorResponse.config,\n response = errorResponse.response;\n var errorName;\n\n // Obscure the Management token\n if (config && config.headers && config.headers['Authorization']) {\n var token = \"...\".concat(config.headers['Authorization'].toString().substr(-5));\n config.headers['Authorization'] = \"Bearer \".concat(token);\n }\n if (!lodash_isplainobject__WEBPACK_IMPORTED_MODULE_4___default()(response) || !lodash_isplainobject__WEBPACK_IMPORTED_MODULE_4___default()(config)) {\n throw errorResponse;\n }\n var data = response === null || response === void 0 ? void 0 : response.data;\n var errorData = {\n status: response === null || response === void 0 ? void 0 : response.status,\n statusText: response === null || response === void 0 ? void 0 : response.statusText,\n message: '',\n details: {}\n };\n if (lodash_isplainobject__WEBPACK_IMPORTED_MODULE_4___default()(config)) {\n errorData.request = {\n url: config.url,\n headers: config.headers,\n method: config.method,\n payloadData: config.data\n };\n }\n if (data && lodash_isplainobject__WEBPACK_IMPORTED_MODULE_4___default()(data)) {\n if ('requestId' in data) {\n errorData.requestId = data.requestId || 'UNKNOWN';\n }\n if ('message' in data) {\n errorData.message = data.message || '';\n }\n if ('details' in data) {\n errorData.details = data.details || {};\n }\n if ('sys' in data) {\n if ('id' in data.sys) {\n errorName = data.sys.id;\n }\n }\n }\n var error = new Error();\n error.name = errorName && errorName !== 'Unknown' ? errorName : \"\".concat(response === null || response === void 0 ? void 0 : response.status, \" \").concat(response === null || response === void 0 ? void 0 : response.statusText);\n try {\n error.message = JSON.stringify(errorData, null, ' ');\n } catch (_unused) {\n var _errorData$message;\n error.message = (_errorData$message = errorData === null || errorData === void 0 ? void 0 : errorData.message) !== null && _errorData$message !== void 0 ? _errorData$message : '';\n }\n throw error;\n}\n\n\n\n\n//# sourceURL=webpack://contentful/../node_modules/contentful-sdk-core/dist/index.es-modules.js?");
|
|
391
391
|
|
|
392
392
|
/***/ }),
|
|
393
393
|
|
|
@@ -591,7 +591,7 @@ eval("\n\nvar GetIntrinsic = __webpack_require__(/*! get-intrinsic */ \"../node_
|
|
|
591
591
|
/***/ ((__unused_webpack_module, __webpack_exports__, __webpack_require__) => {
|
|
592
592
|
|
|
593
593
|
"use strict";
|
|
594
|
-
eval("__webpack_require__.r(__webpack_exports__);\n/* harmony export */ __webpack_require__.d(__webpack_exports__, {\n/* harmony export */
|
|
594
|
+
eval("__webpack_require__.r(__webpack_exports__);\n/* harmony export */ __webpack_require__.d(__webpack_exports__, {\n/* harmony export */ createClient: () => (/* binding */ createClient)\n/* harmony export */ });\n/* harmony import */ var axios__WEBPACK_IMPORTED_MODULE_0__ = __webpack_require__(/*! axios */ \"../node_modules/axios/index.js\");\n/* harmony import */ var axios__WEBPACK_IMPORTED_MODULE_0___default = /*#__PURE__*/__webpack_require__.n(axios__WEBPACK_IMPORTED_MODULE_0__);\n/* harmony import */ var contentful_sdk_core__WEBPACK_IMPORTED_MODULE_1__ = __webpack_require__(/*! contentful-sdk-core */ \"../node_modules/contentful-sdk-core/dist/index.es-modules.js\");\n/* harmony import */ var _create_global_options__WEBPACK_IMPORTED_MODULE_2__ = __webpack_require__(/*! ./create-global-options */ \"./create-global-options.ts\");\n/* harmony import */ var _make_client__WEBPACK_IMPORTED_MODULE_3__ = __webpack_require__(/*! ./make-client */ \"./make-client.ts\");\n/* harmony import */ var _utils_validate_params__WEBPACK_IMPORTED_MODULE_4__ = __webpack_require__(/*! ./utils/validate-params */ \"./utils/validate-params.ts\");\n/**\n * Contentful Delivery API SDK. Allows you to create instances of a client\n * with access to the Contentful Content Delivery API.\n */\n\n\n\n\n\n/**\n * Create a client instance\n * @param params - Client initialization parameters\n * @category Client\n * @example\n * ```typescript\n * const contentful = require('contentful')\n * const client = contentful.createClient({\n * accessToken: 'myAccessToken',\n * space: 'mySpaceId'\n * })\n * ```\n */\nfunction createClient(params) {\n if (!params.accessToken) {\n throw new TypeError('Expected parameter accessToken');\n }\n if (!params.space) {\n throw new TypeError('Expected parameter space');\n }\n (0,_utils_validate_params__WEBPACK_IMPORTED_MODULE_4__.validateResolveLinksParam)(params);\n (0,_utils_validate_params__WEBPACK_IMPORTED_MODULE_4__.validateRemoveUnresolvedParam)(params);\n const defaultConfig = {\n resolveLinks: true,\n removeUnresolved: false,\n defaultHostname: 'cdn.contentful.com',\n environment: 'master',\n };\n const config = {\n ...defaultConfig,\n ...params,\n };\n const userAgentHeader = (0,contentful_sdk_core__WEBPACK_IMPORTED_MODULE_1__.getUserAgentHeader)(`contentful.js/${\"10.2.2\"}`, config.application, config.integration);\n config.headers = {\n ...config.headers,\n 'Content-Type': 'application/vnd.contentful.delivery.v1+json',\n 'X-Contentful-User-Agent': userAgentHeader,\n };\n const http = (0,contentful_sdk_core__WEBPACK_IMPORTED_MODULE_1__.createHttpClient)((axios__WEBPACK_IMPORTED_MODULE_0___default()), config);\n if (!http.defaults.baseURL) {\n throw new Error('Please define a baseURL');\n }\n const getGlobalOptions = (0,_create_global_options__WEBPACK_IMPORTED_MODULE_2__.createGlobalOptions)({\n space: config.space,\n environment: config.environment,\n spaceBaseUrl: http.defaults.baseURL,\n environmentBaseUrl: `${http.defaults.baseURL}environments/${config.environment}`,\n });\n // Append environment to baseURL\n http.defaults.baseURL = getGlobalOptions({}).environmentBaseUrl;\n return (0,_make_client__WEBPACK_IMPORTED_MODULE_3__.makeClient)({\n http,\n getGlobalOptions,\n });\n}\n\n\n//# sourceURL=webpack://contentful/./contentful.ts?");
|
|
595
595
|
|
|
596
596
|
/***/ }),
|
|
597
597
|
|
|
@@ -602,7 +602,7 @@ eval("__webpack_require__.r(__webpack_exports__);\n/* harmony export */ __webpac
|
|
|
602
602
|
/***/ ((__unused_webpack_module, __webpack_exports__, __webpack_require__) => {
|
|
603
603
|
|
|
604
604
|
"use strict";
|
|
605
|
-
eval("__webpack_require__.r(__webpack_exports__);\n/* harmony export */ __webpack_require__.d(__webpack_exports__, {\n/* harmony export */ \"default\": () => (/* binding */ createContentfulApi)\n/* harmony export */ });\n/* harmony import */ var contentful_sdk_core__WEBPACK_IMPORTED_MODULE_0__ = __webpack_require__(/*! contentful-sdk-core */ \"../node_modules/contentful-sdk-core/dist/index.es-modules.js\");\n/* harmony import */ var _paged_sync__WEBPACK_IMPORTED_MODULE_1__ = __webpack_require__(/*! ./paged-sync */ \"./paged-sync.ts\");\n/* harmony import */ var _utils_normalize_search_parameters__WEBPACK_IMPORTED_MODULE_2__ = __webpack_require__(/*! ./utils/normalize-search-parameters */ \"./utils/normalize-search-parameters.ts\");\n/* harmony import */ var _utils_normalize_select__WEBPACK_IMPORTED_MODULE_3__ = __webpack_require__(/*! ./utils/normalize-select */ \"./utils/normalize-select.ts\");\n/* harmony import */ var _utils_resolve_circular__WEBPACK_IMPORTED_MODULE_4__ = __webpack_require__(/*! ./utils/resolve-circular */ \"./utils/resolve-circular.ts\");\n/* harmony import */ var _utils_validate_timestamp__WEBPACK_IMPORTED_MODULE_5__ = __webpack_require__(/*! ./utils/validate-timestamp */ \"./utils/validate-timestamp.ts\");\n/* harmony import */ var _utils_validate_params__WEBPACK_IMPORTED_MODULE_6__ = __webpack_require__(/*! ./utils/validate-params */ \"./utils/validate-params.ts\");\n/* harmony import */ var _utils_validate_search_parameters__WEBPACK_IMPORTED_MODULE_7__ = __webpack_require__(/*! ./utils/validate-search-parameters */ \"./utils/validate-search-parameters.ts\");\n/**\n * Contentful Delivery API Client. Contains methods which allow access to the\n * different kinds of entities present in Contentful (Entries, Assets, etc).\n */\n\n\n\n\n\n\n\n\nconst ASSET_KEY_MAX_LIFETIME = 48 * 60 * 60;\nclass NotFoundError extends Error {\n sys;\n details;\n constructor(id, environment, space) {\n super('The resource could not be found.');\n this.sys = {\n type: 'Error',\n id: 'NotFound',\n };\n this.details = {\n type: 'Entry',\n id,\n environment,\n space,\n };\n }\n}\nfunction createContentfulApi({ http, getGlobalOptions }, options) {\n const notFoundError = (id = 'unknown') => {\n return new NotFoundError(id, getGlobalOptions().environment, getGlobalOptions().space);\n };\n const getBaseUrl = (context) => {\n let baseUrl = context === 'space' ? getGlobalOptions().spaceBaseUrl : getGlobalOptions().environmentBaseUrl;\n if (!baseUrl) {\n throw new Error('Please define baseUrl for ' + context);\n }\n if (!baseUrl.endsWith('/')) {\n baseUrl += '/';\n }\n return baseUrl;\n };\n async function get({ context, path, config }) {\n const baseUrl = getBaseUrl(context);\n try {\n const response = await http.get(baseUrl + path, config);\n return response.data;\n }\n catch (error) {\n (0,contentful_sdk_core__WEBPACK_IMPORTED_MODULE_0__.errorHandler)(error);\n }\n }\n async function post({ context, path, data, config }) {\n const baseUrl = getBaseUrl(context);\n try {\n const response = await http.post(baseUrl + path, data, config);\n return response.data;\n }\n catch (error) {\n (0,contentful_sdk_core__WEBPACK_IMPORTED_MODULE_0__.errorHandler)(error);\n }\n }\n async function getSpace() {\n return get({ context: 'space', path: '' });\n }\n async function getContentType(id) {\n return get({\n context: 'environment',\n path: `content_types/${id}`,\n });\n }\n async function getContentTypes(query = {}) {\n return get({\n context: 'environment',\n path: 'content_types',\n config: (0,contentful_sdk_core__WEBPACK_IMPORTED_MODULE_0__.createRequestConfig)({ query }),\n });\n }\n async function getEntry(id, query = {}) {\n return makeGetEntry(id, query, options);\n }\n async function getEntries(query = {}) {\n return makeGetEntries(query, options);\n }\n async function makeGetEntry(id, query, options = {\n withAllLocales: false,\n withoutLinkResolution: false,\n withoutUnresolvableLinks: false,\n }) {\n const { withAllLocales } = options;\n (0,_utils_validate_params__WEBPACK_IMPORTED_MODULE_6__.validateLocaleParam)(query, withAllLocales);\n (0,_utils_validate_params__WEBPACK_IMPORTED_MODULE_6__.validateResolveLinksParam)(query);\n (0,_utils_validate_params__WEBPACK_IMPORTED_MODULE_6__.validateRemoveUnresolvedParam)(query);\n (0,_utils_validate_search_parameters__WEBPACK_IMPORTED_MODULE_7__[\"default\"])(query);\n return internalGetEntry(id, withAllLocales ? { ...query, locale: '*' } : query, options);\n }\n async function internalGetEntry(id, query, options) {\n if (!id) {\n throw notFoundError(id);\n }\n try {\n const response = await internalGetEntries({ 'sys.id': id, ...query }, options);\n if (response.items.length > 0) {\n return response.items[0];\n }\n else {\n throw notFoundError(id);\n }\n }\n catch (error) {\n (0,contentful_sdk_core__WEBPACK_IMPORTED_MODULE_0__.errorHandler)(error);\n }\n }\n async function makeGetEntries(query, options = {\n withAllLocales: false,\n withoutLinkResolution: false,\n withoutUnresolvableLinks: false,\n }) {\n const { withAllLocales } = options;\n (0,_utils_validate_params__WEBPACK_IMPORTED_MODULE_6__.validateLocaleParam)(query, withAllLocales);\n (0,_utils_validate_params__WEBPACK_IMPORTED_MODULE_6__.validateResolveLinksParam)(query);\n (0,_utils_validate_params__WEBPACK_IMPORTED_MODULE_6__.validateRemoveUnresolvedParam)(query);\n (0,_utils_validate_search_parameters__WEBPACK_IMPORTED_MODULE_7__[\"default\"])(query);\n return internalGetEntries(withAllLocales\n ? {\n ...query,\n locale: '*',\n }\n : query, options);\n }\n async function internalGetEntries(query, options) {\n const { withoutLinkResolution, withoutUnresolvableLinks } = options;\n try {\n const entries = await get({\n context: 'environment',\n path: 'entries',\n config: (0,contentful_sdk_core__WEBPACK_IMPORTED_MODULE_0__.createRequestConfig)({ query: (0,_utils_normalize_search_parameters__WEBPACK_IMPORTED_MODULE_2__[\"default\"])((0,_utils_normalize_select__WEBPACK_IMPORTED_MODULE_3__[\"default\"])(query)) }),\n });\n return (0,_utils_resolve_circular__WEBPACK_IMPORTED_MODULE_4__[\"default\"])(entries, {\n resolveLinks: !withoutLinkResolution ?? true,\n removeUnresolved: withoutUnresolvableLinks ?? false,\n });\n }\n catch (error) {\n (0,contentful_sdk_core__WEBPACK_IMPORTED_MODULE_0__.errorHandler)(error);\n }\n }\n async function getAsset(id, query = {}) {\n return makeGetAsset(id, query, options);\n }\n async function getAssets(query = {}) {\n return makeGetAssets(query, options);\n }\n async function makeGetAssets(query, options = {\n withAllLocales: false,\n withoutLinkResolution: false,\n withoutUnresolvableLinks: false,\n }) {\n const { withAllLocales } = options;\n (0,_utils_validate_params__WEBPACK_IMPORTED_MODULE_6__.validateLocaleParam)(query, withAllLocales);\n (0,_utils_validate_search_parameters__WEBPACK_IMPORTED_MODULE_7__[\"default\"])(query);\n const localeSpecificQuery = withAllLocales ? { ...query, locale: '*' } : query;\n return internalGetAssets(localeSpecificQuery);\n }\n async function internalGetAsset(id, query) {\n try {\n return get({\n context: 'environment',\n path: `assets/${id}`,\n config: (0,contentful_sdk_core__WEBPACK_IMPORTED_MODULE_0__.createRequestConfig)({ query: (0,_utils_normalize_select__WEBPACK_IMPORTED_MODULE_3__[\"default\"])(query) }),\n });\n }\n catch (error) {\n (0,contentful_sdk_core__WEBPACK_IMPORTED_MODULE_0__.errorHandler)(error);\n }\n }\n async function makeGetAsset(id, query, options = {\n withAllLocales: false,\n withoutLinkResolution: false,\n withoutUnresolvableLinks: false,\n }) {\n const { withAllLocales } = options;\n (0,_utils_validate_params__WEBPACK_IMPORTED_MODULE_6__.validateLocaleParam)(query, withAllLocales);\n (0,_utils_validate_search_parameters__WEBPACK_IMPORTED_MODULE_7__[\"default\"])(query);\n const localeSpecificQuery = withAllLocales ? { ...query, locale: '*' } : query;\n return internalGetAsset(id, localeSpecificQuery);\n }\n async function internalGetAssets(query) {\n try {\n return get({\n context: 'environment',\n path: 'assets',\n config: (0,contentful_sdk_core__WEBPACK_IMPORTED_MODULE_0__.createRequestConfig)({ query: (0,_utils_normalize_search_parameters__WEBPACK_IMPORTED_MODULE_2__[\"default\"])((0,_utils_normalize_select__WEBPACK_IMPORTED_MODULE_3__[\"default\"])(query)) }),\n });\n }\n catch (error) {\n (0,contentful_sdk_core__WEBPACK_IMPORTED_MODULE_0__.errorHandler)(error);\n }\n }\n async function getTag(id) {\n return get({\n context: 'environment',\n path: `tags/${id}`,\n });\n }\n async function getTags(query = {}) {\n (0,_utils_validate_search_parameters__WEBPACK_IMPORTED_MODULE_7__[\"default\"])(query);\n return get({\n context: 'environment',\n path: 'tags',\n config: (0,contentful_sdk_core__WEBPACK_IMPORTED_MODULE_0__.createRequestConfig)({ query: (0,_utils_normalize_search_parameters__WEBPACK_IMPORTED_MODULE_2__[\"default\"])((0,_utils_normalize_select__WEBPACK_IMPORTED_MODULE_3__[\"default\"])(query)) }),\n });\n }\n async function createAssetKey(expiresAt) {\n try {\n const now = Math.floor(Date.now() / 1000);\n const currentMaxLifetime = now + ASSET_KEY_MAX_LIFETIME;\n (0,_utils_validate_timestamp__WEBPACK_IMPORTED_MODULE_5__[\"default\"])('expiresAt', expiresAt, { maximum: currentMaxLifetime, now });\n }\n catch (error) {\n (0,contentful_sdk_core__WEBPACK_IMPORTED_MODULE_0__.errorHandler)(error);\n }\n return post({\n context: 'environment',\n path: 'asset_keys',\n data: { expiresAt },\n });\n }\n async function getLocales(query = {}) {\n (0,_utils_validate_search_parameters__WEBPACK_IMPORTED_MODULE_7__[\"default\"])(query);\n return get({\n context: 'environment',\n path: 'locales',\n config: (0,contentful_sdk_core__WEBPACK_IMPORTED_MODULE_0__.createRequestConfig)({ query: (0,_utils_normalize_select__WEBPACK_IMPORTED_MODULE_3__[\"default\"])(query) }),\n });\n }\n async function sync(query, syncOptions = { paginate: true }) {\n return makePagedSync(query, syncOptions, options);\n }\n async function makePagedSync(query, syncOptions, options = {\n withAllLocales: false,\n withoutLinkResolution: false,\n withoutUnresolvableLinks: false,\n }) {\n (0,_utils_validate_params__WEBPACK_IMPORTED_MODULE_6__.validateResolveLinksParam)(query);\n (0,_utils_validate_params__WEBPACK_IMPORTED_MODULE_6__.validateRemoveUnresolvedParam)(query);\n const combinedOptions = {\n ...syncOptions,\n ...options,\n };\n switchToEnvironment(http);\n return (0,_paged_sync__WEBPACK_IMPORTED_MODULE_1__[\"default\"])(http, query, combinedOptions);\n }\n function parseEntries(data) {\n return makeParseEntries(data, options);\n }\n function makeParseEntries(data, options = {\n withAllLocales: false,\n withoutLinkResolution: false,\n withoutUnresolvableLinks: false,\n }) {\n return internalParseEntries(data, options);\n }\n function internalParseEntries(data, options) {\n const { withoutLinkResolution, withoutUnresolvableLinks } = options;\n return (0,_utils_resolve_circular__WEBPACK_IMPORTED_MODULE_4__[\"default\"])(data, {\n resolveLinks: !withoutLinkResolution ?? true,\n removeUnresolved: withoutUnresolvableLinks ?? false,\n });\n }\n /*\n * Switches BaseURL to use /environments path\n * */\n function switchToEnvironment(http) {\n http.defaults.baseURL = getGlobalOptions().environmentBaseUrl;\n }\n return {\n version: \"10.2.0\",\n getSpace,\n getContentType,\n getContentTypes,\n getAsset,\n getAssets,\n getTag,\n getTags,\n getLocales,\n parseEntries,\n sync,\n getEntry,\n getEntries,\n createAssetKey,\n };\n}\n\n\n//# sourceURL=webpack://contentful/./create-contentful-api.ts?");
|
|
605
|
+
eval("__webpack_require__.r(__webpack_exports__);\n/* harmony export */ __webpack_require__.d(__webpack_exports__, {\n/* harmony export */ \"default\": () => (/* binding */ createContentfulApi)\n/* harmony export */ });\n/* harmony import */ var contentful_sdk_core__WEBPACK_IMPORTED_MODULE_0__ = __webpack_require__(/*! contentful-sdk-core */ \"../node_modules/contentful-sdk-core/dist/index.es-modules.js\");\n/* harmony import */ var _paged_sync__WEBPACK_IMPORTED_MODULE_1__ = __webpack_require__(/*! ./paged-sync */ \"./paged-sync.ts\");\n/* harmony import */ var _utils_normalize_search_parameters__WEBPACK_IMPORTED_MODULE_2__ = __webpack_require__(/*! ./utils/normalize-search-parameters */ \"./utils/normalize-search-parameters.ts\");\n/* harmony import */ var _utils_normalize_select__WEBPACK_IMPORTED_MODULE_3__ = __webpack_require__(/*! ./utils/normalize-select */ \"./utils/normalize-select.ts\");\n/* harmony import */ var _utils_resolve_circular__WEBPACK_IMPORTED_MODULE_4__ = __webpack_require__(/*! ./utils/resolve-circular */ \"./utils/resolve-circular.ts\");\n/* harmony import */ var _utils_validate_timestamp__WEBPACK_IMPORTED_MODULE_5__ = __webpack_require__(/*! ./utils/validate-timestamp */ \"./utils/validate-timestamp.ts\");\n/* harmony import */ var _utils_validate_params__WEBPACK_IMPORTED_MODULE_6__ = __webpack_require__(/*! ./utils/validate-params */ \"./utils/validate-params.ts\");\n/* harmony import */ var _utils_validate_search_parameters__WEBPACK_IMPORTED_MODULE_7__ = __webpack_require__(/*! ./utils/validate-search-parameters */ \"./utils/validate-search-parameters.ts\");\n/**\n * Contentful Delivery API Client. Contains methods which allow access to the\n * different kinds of entities present in Contentful (Entries, Assets, etc).\n */\n\n\n\n\n\n\n\n\nconst ASSET_KEY_MAX_LIFETIME = 48 * 60 * 60;\nclass NotFoundError extends Error {\n sys;\n details;\n constructor(id, environment, space) {\n super('The resource could not be found.');\n this.sys = {\n type: 'Error',\n id: 'NotFound',\n };\n this.details = {\n type: 'Entry',\n id,\n environment,\n space,\n };\n }\n}\nfunction createContentfulApi({ http, getGlobalOptions }, options) {\n const notFoundError = (id = 'unknown') => {\n return new NotFoundError(id, getGlobalOptions().environment, getGlobalOptions().space);\n };\n const getBaseUrl = (context) => {\n let baseUrl = context === 'space' ? getGlobalOptions().spaceBaseUrl : getGlobalOptions().environmentBaseUrl;\n if (!baseUrl) {\n throw new Error('Please define baseUrl for ' + context);\n }\n if (!baseUrl.endsWith('/')) {\n baseUrl += '/';\n }\n return baseUrl;\n };\n async function get({ context, path, config }) {\n const baseUrl = getBaseUrl(context);\n try {\n const response = await http.get(baseUrl + path, config);\n return response.data;\n }\n catch (error) {\n (0,contentful_sdk_core__WEBPACK_IMPORTED_MODULE_0__.errorHandler)(error);\n }\n }\n async function post({ context, path, data, config }) {\n const baseUrl = getBaseUrl(context);\n try {\n const response = await http.post(baseUrl + path, data, config);\n return response.data;\n }\n catch (error) {\n (0,contentful_sdk_core__WEBPACK_IMPORTED_MODULE_0__.errorHandler)(error);\n }\n }\n async function getSpace() {\n return get({ context: 'space', path: '' });\n }\n async function getContentType(id) {\n return get({\n context: 'environment',\n path: `content_types/${id}`,\n });\n }\n async function getContentTypes(query = {}) {\n return get({\n context: 'environment',\n path: 'content_types',\n config: (0,contentful_sdk_core__WEBPACK_IMPORTED_MODULE_0__.createRequestConfig)({ query }),\n });\n }\n async function getEntry(id, query = {}) {\n return makeGetEntry(id, query, options);\n }\n async function getEntries(query = {}) {\n return makeGetEntries(query, options);\n }\n async function makeGetEntry(id, query, options = {\n withAllLocales: false,\n withoutLinkResolution: false,\n withoutUnresolvableLinks: false,\n }) {\n const { withAllLocales } = options;\n (0,_utils_validate_params__WEBPACK_IMPORTED_MODULE_6__.validateLocaleParam)(query, withAllLocales);\n (0,_utils_validate_params__WEBPACK_IMPORTED_MODULE_6__.validateResolveLinksParam)(query);\n (0,_utils_validate_params__WEBPACK_IMPORTED_MODULE_6__.validateRemoveUnresolvedParam)(query);\n (0,_utils_validate_search_parameters__WEBPACK_IMPORTED_MODULE_7__[\"default\"])(query);\n return internalGetEntry(id, withAllLocales ? { ...query, locale: '*' } : query, options);\n }\n async function internalGetEntry(id, query, options) {\n if (!id) {\n throw notFoundError(id);\n }\n try {\n const response = await internalGetEntries({ 'sys.id': id, ...query }, options);\n if (response.items.length > 0) {\n return response.items[0];\n }\n else {\n throw notFoundError(id);\n }\n }\n catch (error) {\n (0,contentful_sdk_core__WEBPACK_IMPORTED_MODULE_0__.errorHandler)(error);\n }\n }\n async function makeGetEntries(query, options = {\n withAllLocales: false,\n withoutLinkResolution: false,\n withoutUnresolvableLinks: false,\n }) {\n const { withAllLocales } = options;\n (0,_utils_validate_params__WEBPACK_IMPORTED_MODULE_6__.validateLocaleParam)(query, withAllLocales);\n (0,_utils_validate_params__WEBPACK_IMPORTED_MODULE_6__.validateResolveLinksParam)(query);\n (0,_utils_validate_params__WEBPACK_IMPORTED_MODULE_6__.validateRemoveUnresolvedParam)(query);\n (0,_utils_validate_search_parameters__WEBPACK_IMPORTED_MODULE_7__[\"default\"])(query);\n return internalGetEntries(withAllLocales\n ? {\n ...query,\n locale: '*',\n }\n : query, options);\n }\n async function internalGetEntries(query, options) {\n const { withoutLinkResolution, withoutUnresolvableLinks } = options;\n try {\n const entries = await get({\n context: 'environment',\n path: 'entries',\n config: (0,contentful_sdk_core__WEBPACK_IMPORTED_MODULE_0__.createRequestConfig)({ query: (0,_utils_normalize_search_parameters__WEBPACK_IMPORTED_MODULE_2__[\"default\"])((0,_utils_normalize_select__WEBPACK_IMPORTED_MODULE_3__[\"default\"])(query)) }),\n });\n return (0,_utils_resolve_circular__WEBPACK_IMPORTED_MODULE_4__[\"default\"])(entries, {\n resolveLinks: !withoutLinkResolution ?? true,\n removeUnresolved: withoutUnresolvableLinks ?? false,\n });\n }\n catch (error) {\n (0,contentful_sdk_core__WEBPACK_IMPORTED_MODULE_0__.errorHandler)(error);\n }\n }\n async function getAsset(id, query = {}) {\n return makeGetAsset(id, query, options);\n }\n async function getAssets(query = {}) {\n return makeGetAssets(query, options);\n }\n async function makeGetAssets(query, options = {\n withAllLocales: false,\n withoutLinkResolution: false,\n withoutUnresolvableLinks: false,\n }) {\n const { withAllLocales } = options;\n (0,_utils_validate_params__WEBPACK_IMPORTED_MODULE_6__.validateLocaleParam)(query, withAllLocales);\n (0,_utils_validate_search_parameters__WEBPACK_IMPORTED_MODULE_7__[\"default\"])(query);\n const localeSpecificQuery = withAllLocales ? { ...query, locale: '*' } : query;\n return internalGetAssets(localeSpecificQuery);\n }\n async function internalGetAsset(id, query) {\n try {\n return get({\n context: 'environment',\n path: `assets/${id}`,\n config: (0,contentful_sdk_core__WEBPACK_IMPORTED_MODULE_0__.createRequestConfig)({ query: (0,_utils_normalize_select__WEBPACK_IMPORTED_MODULE_3__[\"default\"])(query) }),\n });\n }\n catch (error) {\n (0,contentful_sdk_core__WEBPACK_IMPORTED_MODULE_0__.errorHandler)(error);\n }\n }\n async function makeGetAsset(id, query, options = {\n withAllLocales: false,\n withoutLinkResolution: false,\n withoutUnresolvableLinks: false,\n }) {\n const { withAllLocales } = options;\n (0,_utils_validate_params__WEBPACK_IMPORTED_MODULE_6__.validateLocaleParam)(query, withAllLocales);\n (0,_utils_validate_search_parameters__WEBPACK_IMPORTED_MODULE_7__[\"default\"])(query);\n const localeSpecificQuery = withAllLocales ? { ...query, locale: '*' } : query;\n return internalGetAsset(id, localeSpecificQuery);\n }\n async function internalGetAssets(query) {\n try {\n return get({\n context: 'environment',\n path: 'assets',\n config: (0,contentful_sdk_core__WEBPACK_IMPORTED_MODULE_0__.createRequestConfig)({ query: (0,_utils_normalize_search_parameters__WEBPACK_IMPORTED_MODULE_2__[\"default\"])((0,_utils_normalize_select__WEBPACK_IMPORTED_MODULE_3__[\"default\"])(query)) }),\n });\n }\n catch (error) {\n (0,contentful_sdk_core__WEBPACK_IMPORTED_MODULE_0__.errorHandler)(error);\n }\n }\n async function getTag(id) {\n return get({\n context: 'environment',\n path: `tags/${id}`,\n });\n }\n async function getTags(query = {}) {\n (0,_utils_validate_search_parameters__WEBPACK_IMPORTED_MODULE_7__[\"default\"])(query);\n return get({\n context: 'environment',\n path: 'tags',\n config: (0,contentful_sdk_core__WEBPACK_IMPORTED_MODULE_0__.createRequestConfig)({ query: (0,_utils_normalize_search_parameters__WEBPACK_IMPORTED_MODULE_2__[\"default\"])((0,_utils_normalize_select__WEBPACK_IMPORTED_MODULE_3__[\"default\"])(query)) }),\n });\n }\n async function createAssetKey(expiresAt) {\n try {\n const now = Math.floor(Date.now() / 1000);\n const currentMaxLifetime = now + ASSET_KEY_MAX_LIFETIME;\n (0,_utils_validate_timestamp__WEBPACK_IMPORTED_MODULE_5__[\"default\"])('expiresAt', expiresAt, { maximum: currentMaxLifetime, now });\n }\n catch (error) {\n (0,contentful_sdk_core__WEBPACK_IMPORTED_MODULE_0__.errorHandler)(error);\n }\n return post({\n context: 'environment',\n path: 'asset_keys',\n data: { expiresAt },\n });\n }\n async function getLocales(query = {}) {\n (0,_utils_validate_search_parameters__WEBPACK_IMPORTED_MODULE_7__[\"default\"])(query);\n return get({\n context: 'environment',\n path: 'locales',\n config: (0,contentful_sdk_core__WEBPACK_IMPORTED_MODULE_0__.createRequestConfig)({ query: (0,_utils_normalize_select__WEBPACK_IMPORTED_MODULE_3__[\"default\"])(query) }),\n });\n }\n async function sync(query, syncOptions = { paginate: true }) {\n return makePagedSync(query, syncOptions, options);\n }\n async function makePagedSync(query, syncOptions, options = {\n withAllLocales: false,\n withoutLinkResolution: false,\n withoutUnresolvableLinks: false,\n }) {\n (0,_utils_validate_params__WEBPACK_IMPORTED_MODULE_6__.validateResolveLinksParam)(query);\n (0,_utils_validate_params__WEBPACK_IMPORTED_MODULE_6__.validateRemoveUnresolvedParam)(query);\n const combinedOptions = {\n ...syncOptions,\n ...options,\n };\n switchToEnvironment(http);\n return (0,_paged_sync__WEBPACK_IMPORTED_MODULE_1__[\"default\"])(http, query, combinedOptions);\n }\n function parseEntries(data) {\n return makeParseEntries(data, options);\n }\n function makeParseEntries(data, options = {\n withAllLocales: false,\n withoutLinkResolution: false,\n withoutUnresolvableLinks: false,\n }) {\n return internalParseEntries(data, options);\n }\n function internalParseEntries(data, options) {\n const { withoutLinkResolution, withoutUnresolvableLinks } = options;\n return (0,_utils_resolve_circular__WEBPACK_IMPORTED_MODULE_4__[\"default\"])(data, {\n resolveLinks: !withoutLinkResolution ?? true,\n removeUnresolved: withoutUnresolvableLinks ?? false,\n });\n }\n /*\n * Switches BaseURL to use /environments path\n * */\n function switchToEnvironment(http) {\n http.defaults.baseURL = getGlobalOptions().environmentBaseUrl;\n }\n return {\n version: \"10.2.2\",\n getSpace,\n getContentType,\n getContentTypes,\n getAsset,\n getAssets,\n getTag,\n getTags,\n getLocales,\n parseEntries,\n sync,\n getEntry,\n getEntries,\n createAssetKey,\n };\n}\n\n\n//# sourceURL=webpack://contentful/./create-contentful-api.ts?");
|
|
606
606
|
|
|
607
607
|
/***/ }),
|
|
608
608
|
|
|
@@ -613,7 +613,7 @@ eval("__webpack_require__.r(__webpack_exports__);\n/* harmony export */ __webpac
|
|
|
613
613
|
/***/ ((__unused_webpack_module, __webpack_exports__, __webpack_require__) => {
|
|
614
614
|
|
|
615
615
|
"use strict";
|
|
616
|
-
eval("__webpack_require__.r(__webpack_exports__);\n/* harmony export */ __webpack_require__.d(__webpack_exports__, {\n/* harmony export */
|
|
616
|
+
eval("__webpack_require__.r(__webpack_exports__);\n/* harmony export */ __webpack_require__.d(__webpack_exports__, {\n/* harmony export */ createGlobalOptions: () => (/* binding */ createGlobalOptions)\n/* harmony export */ });\n/**\n * @param globalSettings - Global library settings\n * @returns getGlobalSettings - Method returning client settings\n * @category Client\n */\nfunction createGlobalOptions(globalSettings) {\n /**\n * Method merging pre-configured global options and provided local parameters\n * @param query - regular query object used for collection endpoints\n * @param query.environment - optional name of the environment\n * @param query.space - optional space ID\n * @param query.spaceBaseUrl - optional base URL for the space\n * @param query.environmentBaseUrl - optional base URL for the environment\n * @returns global options\n */\n return function getGlobalOptions(query) {\n return Object.assign({}, globalSettings, query);\n };\n}\n\n\n//# sourceURL=webpack://contentful/./create-global-options.ts?");
|
|
617
617
|
|
|
618
618
|
/***/ }),
|
|
619
619
|
|
|
@@ -624,7 +624,7 @@ eval("__webpack_require__.r(__webpack_exports__);\n/* harmony export */ __webpac
|
|
|
624
624
|
/***/ ((__unused_webpack_module, __webpack_exports__, __webpack_require__) => {
|
|
625
625
|
|
|
626
626
|
"use strict";
|
|
627
|
-
eval("__webpack_require__.r(__webpack_exports__);\n/* harmony export */ __webpack_require__.d(__webpack_exports__, {\n/* harmony export */
|
|
627
|
+
eval("__webpack_require__.r(__webpack_exports__);\n/* harmony export */ __webpack_require__.d(__webpack_exports__, {\n/* harmony export */ createClient: () => (/* reexport safe */ _contentful__WEBPACK_IMPORTED_MODULE_0__.createClient),\n/* harmony export */ createGlobalOptions: () => (/* reexport safe */ _create_global_options__WEBPACK_IMPORTED_MODULE_1__.createGlobalOptions)\n/* harmony export */ });\n/* harmony import */ var _contentful__WEBPACK_IMPORTED_MODULE_0__ = __webpack_require__(/*! ./contentful */ \"./contentful.ts\");\n/* harmony import */ var _create_global_options__WEBPACK_IMPORTED_MODULE_1__ = __webpack_require__(/*! ./create-global-options */ \"./create-global-options.ts\");\n/* harmony import */ var _mixins_stringify_safe__WEBPACK_IMPORTED_MODULE_2__ = __webpack_require__(/*! ./mixins/stringify-safe */ \"./mixins/stringify-safe.ts\");\n/* harmony import */ var _utils_normalize_select__WEBPACK_IMPORTED_MODULE_3__ = __webpack_require__(/*! ./utils/normalize-select */ \"./utils/normalize-select.ts\");\n/* harmony import */ var _utils_resolve_circular__WEBPACK_IMPORTED_MODULE_4__ = __webpack_require__(/*! ./utils/resolve-circular */ \"./utils/resolve-circular.ts\");\n/* harmony import */ var _types__WEBPACK_IMPORTED_MODULE_5__ = __webpack_require__(/*! ./types */ \"./types/index.ts\");\n\n\n\n\n\n\n\n\n//# sourceURL=webpack://contentful/./index.ts?");
|
|
628
628
|
|
|
629
629
|
/***/ }),
|
|
630
630
|
|
|
@@ -635,7 +635,7 @@ eval("__webpack_require__.r(__webpack_exports__);\n/* harmony export */ __webpac
|
|
|
635
635
|
/***/ ((__unused_webpack_module, __webpack_exports__, __webpack_require__) => {
|
|
636
636
|
|
|
637
637
|
"use strict";
|
|
638
|
-
eval("__webpack_require__.r(__webpack_exports__);\n/* harmony export */ __webpack_require__.d(__webpack_exports__, {\n/* harmony export */
|
|
638
|
+
eval("__webpack_require__.r(__webpack_exports__);\n/* harmony export */ __webpack_require__.d(__webpack_exports__, {\n/* harmony export */ makeClient: () => (/* binding */ makeClient)\n/* harmony export */ });\n/* harmony import */ var _create_contentful_api__WEBPACK_IMPORTED_MODULE_0__ = __webpack_require__(/*! ./create-contentful-api */ \"./create-contentful-api.ts\");\n\nfunction create({ http, getGlobalOptions }, options, makeInnerClient) {\n const client = (0,_create_contentful_api__WEBPACK_IMPORTED_MODULE_0__[\"default\"])({\n http,\n getGlobalOptions,\n }, options);\n const response = client;\n Object.defineProperty(response, 'withAllLocales', {\n get: () => makeInnerClient({ ...options, withAllLocales: true }),\n });\n Object.defineProperty(response, 'withoutLinkResolution', {\n get: () => makeInnerClient({ ...options, withoutLinkResolution: true }),\n });\n Object.defineProperty(response, 'withoutUnresolvableLinks', {\n get: () => makeInnerClient({ ...options, withoutUnresolvableLinks: true }),\n });\n return Object.create(response);\n}\nconst makeClient = ({ http, getGlobalOptions, }) => {\n function makeInnerClient(options) {\n return create({ http, getGlobalOptions }, options, makeInnerClient);\n }\n const client = (0,_create_contentful_api__WEBPACK_IMPORTED_MODULE_0__[\"default\"])({ http, getGlobalOptions }, {\n withoutLinkResolution: false,\n withAllLocales: false,\n withoutUnresolvableLinks: false,\n });\n return {\n ...client,\n get withAllLocales() {\n return makeInnerClient({\n withAllLocales: true,\n withoutLinkResolution: false,\n withoutUnresolvableLinks: false,\n });\n },\n get withoutLinkResolution() {\n return makeInnerClient({\n withAllLocales: false,\n withoutLinkResolution: true,\n withoutUnresolvableLinks: false,\n });\n },\n get withoutUnresolvableLinks() {\n return makeInnerClient({\n withAllLocales: false,\n withoutLinkResolution: false,\n withoutUnresolvableLinks: true,\n });\n },\n };\n};\n\n\n//# sourceURL=webpack://contentful/./make-client.ts?");
|
|
639
639
|
|
|
640
640
|
/***/ }),
|
|
641
641
|
|
|
@@ -987,7 +987,7 @@ eval("__webpack_require__.r(__webpack_exports__);\n/* harmony export */ __webpac
|
|
|
987
987
|
/***/ ((__unused_webpack_module, __webpack_exports__, __webpack_require__) => {
|
|
988
988
|
|
|
989
989
|
"use strict";
|
|
990
|
-
eval("__webpack_require__.r(__webpack_exports__);\n/* harmony export */ __webpack_require__.d(__webpack_exports__, {\n/* harmony export */
|
|
990
|
+
eval("__webpack_require__.r(__webpack_exports__);\n/* harmony export */ __webpack_require__.d(__webpack_exports__, {\n/* harmony export */ validateLocaleParam: () => (/* binding */ validateLocaleParam),\n/* harmony export */ validateRemoveUnresolvedParam: () => (/* binding */ validateRemoveUnresolvedParam),\n/* harmony export */ validateResolveLinksParam: () => (/* binding */ validateResolveLinksParam)\n/* harmony export */ });\n/* harmony import */ var _validation_error__WEBPACK_IMPORTED_MODULE_0__ = __webpack_require__(/*! ./validation-error */ \"./utils/validation-error.ts\");\n\nfunction checkLocaleParamIsAll(query) {\n if (query.locale === '*') {\n throw new _validation_error__WEBPACK_IMPORTED_MODULE_0__.ValidationError('locale', `The use of locale='*' is no longer supported.To fetch an entry in all existing locales, \n use client.withAllLocales instead of the locale='*' parameter.`);\n }\n}\nfunction checkLocaleParamExists(query) {\n if (query.locale) {\n throw new _validation_error__WEBPACK_IMPORTED_MODULE_0__.ValidationError('locale', 'The `locale` parameter is not allowed');\n }\n}\nfunction validateLocaleParam(query, isWithAllLocalesClient) {\n if (isWithAllLocalesClient) {\n checkLocaleParamExists(query);\n }\n else {\n checkLocaleParamIsAll(query);\n }\n return;\n}\nfunction validateResolveLinksParam(query) {\n if ('resolveLinks' in query) {\n throw new _validation_error__WEBPACK_IMPORTED_MODULE_0__.ValidationError('resolveLinks', `The use of the 'resolveLinks' parameter is no longer supported. By default, links are resolved. \n If you do not want to resolve links, use client.withoutLinkResolution.`);\n }\n return;\n}\nfunction validateRemoveUnresolvedParam(query) {\n if ('removeUnresolved' in query) {\n throw new _validation_error__WEBPACK_IMPORTED_MODULE_0__.ValidationError('removeUnresolved', `The use of the 'removeUnresolved' parameter is no longer supported. By default, unresolved links are kept as link objects.\n If you do not want to include unresolved links, use client.withoutUnresolvableLinks.`);\n }\n return;\n}\n\n\n//# sourceURL=webpack://contentful/./utils/validate-params.ts?");
|
|
991
991
|
|
|
992
992
|
/***/ }),
|
|
993
993
|
|
|
@@ -1020,7 +1020,7 @@ eval("__webpack_require__.r(__webpack_exports__);\n/* harmony export */ __webpac
|
|
|
1020
1020
|
/***/ ((__unused_webpack_module, __webpack_exports__, __webpack_require__) => {
|
|
1021
1021
|
|
|
1022
1022
|
"use strict";
|
|
1023
|
-
eval("__webpack_require__.r(__webpack_exports__);\n/* harmony export */ __webpack_require__.d(__webpack_exports__, {\n/* harmony export */
|
|
1023
|
+
eval("__webpack_require__.r(__webpack_exports__);\n/* harmony export */ __webpack_require__.d(__webpack_exports__, {\n/* harmony export */ ValidationError: () => (/* binding */ ValidationError)\n/* harmony export */ });\nclass ValidationError extends Error {\n constructor(name, message) {\n super(`Invalid \"${name}\" provided, ` + message);\n this.name = 'ValidationError';\n }\n}\n\n\n//# sourceURL=webpack://contentful/./utils/validation-error.ts?");
|
|
1024
1024
|
|
|
1025
1025
|
/***/ }),
|
|
1026
1026
|
|