Changeset 3467005
- Timestamp:
- 02/22/2026 05:19:55 PM (6 weeks ago)
- Location:
- block-ip-address-for-woocommerce
- Files:
-
- 1 added
- 7 edited
-
assets/screenshot-1.png (modified) (previous)
-
assets/screenshot-2.png (added)
-
trunk/blocipadwoo_store.php (modified) (8 diffs)
-
trunk/build/index.asset.php (modified) (1 diff)
-
trunk/build/index.js (modified) (18 diffs)
-
trunk/readme.txt (modified) (3 diffs)
-
trunk/src/components/NewIp.js (modified) (7 diffs)
-
trunk/src/components/ViewIblocklist.js (modified) (5 diffs)
Legend:
- Unmodified
- Added
- Removed
-
block-ip-address-for-woocommerce/trunk/blocipadwoo_store.php
r3322565 r3467005 54 54 id mediumint(9) NOT NULL AUTO_INCREMENT, 55 55 ipaddress varchar(100) NOT NULL, 56 blocktype varchar(100) NOT NULL, 57 blkcategory varchar(100) NOT NULL, 56 58 startdate date NOT NULL, 57 59 enddate date NOT NULL, … … 113 115 // Sanitize inputs 114 116 $ipaddress = sanitize_text_field($request->get_param('ipaddress')); 117 $blocktype = sanitize_text_field($request->get_param('blocktype')); 118 $blkcategory = sanitize_text_field($request->get_param('blkcategory')); 115 119 $redirect = esc_url_raw($request->get_param('redirect')); 116 120 $startdate = sanitize_text_field($request->get_param('startdate')); … … 125 129 } 126 130 127 // Check for duplicate IP 131 // Check for duplicate IP for same blocktype and category 128 132 $existing = $wpdb->get_var( 129 $wpdb->prepare("SELECT COUNT(*) FROM $table_name WHERE ipaddress = %s", $ipaddress) 133 $wpdb->prepare( 134 "SELECT COUNT(*) FROM $table_name WHERE ipaddress = %s AND blocktype = %s AND blkcategory = %s", 135 $ipaddress, $blocktype, $blkcategory 136 ) 130 137 ); 131 138 if ($existing > 0) { 132 139 return rest_ensure_response([ 133 140 'status' => 'error', 134 'message' => 'This IP address is already blocked .'141 'message' => 'This IP address is already blocked for this block type and category.' 135 142 ]); 136 143 } … … 164 171 [ 165 172 'ipaddress' => $ipaddress, 173 'blocktype' => $blocktype, 174 'blkcategory' => $blkcategory, 166 175 'redirect' => $redirect, 167 176 'startdate' => $startdate, 168 177 'enddate' => $enddate, 169 178 ], 170 ['%s', '%s', '%s', '%s' ]179 ['%s', '%s', '%s', '%s', '%s', '%s'] 171 180 ); 172 181 … … 223 232 $id = intval($request->get_param('id')); 224 233 $ip_address = sanitize_text_field($request->get_param('ipaddress')); 234 $blocktype = sanitize_text_field($request->get_param('blocktype')); 235 $blkcategory = sanitize_text_field($request->get_param('blkcategory')); 225 236 $redirect = sanitize_text_field($request->get_param('redirect')); 226 237 $startdate = sanitize_text_field($request->get_param('startdate')); … … 243 254 [ // columns to update 244 255 "ipaddress" => $ip_address, 256 "blocktype" => $blocktype, 257 "blkcategory" => $blkcategory, 245 258 "redirect" => $redirect, 246 259 "startdate" => $startdate, … … 317 330 $user_ip = $this->blocipadwoo_get_user_ip(); 318 331 319 $blocked_ip = $wpdb->get_var($wpdb->prepare( 320 "SELECT ipaddress FROM $table_name WHERE ipaddress = %s AND startdate <= NOW() AND enddate >= NOW()", 321 $user_ip 322 )); 323 return !empty($blocked_ip); 332 // Home page block 333 if (is_front_page()) { 334 $blocked_ip = $wpdb->get_var($wpdb->prepare( 335 "SELECT ipaddress FROM $table_name WHERE ipaddress = %s AND blocktype = 'home' AND startdate <= NOW() AND enddate >= NOW()", 336 $user_ip 337 )); 338 if (!empty($blocked_ip)) return true; 339 } 340 341 // Shop page block 342 if (is_shop()) { 343 $blocked_ip = $wpdb->get_var($wpdb->prepare( 344 "SELECT ipaddress FROM $table_name WHERE ipaddress = %s AND blocktype = 'shop' AND startdate <= NOW() AND enddate >= NOW()", 345 $user_ip 346 )); 347 if (!empty($blocked_ip)) return true; 348 } 349 350 // Category-wise block (using category name) 351 if (is_product_category()) { 352 $category = get_queried_object(); 353 $cat_name = $category ? $category->name : ''; 354 $blocked_ip = $wpdb->get_var($wpdb->prepare( 355 "SELECT ipaddress FROM $table_name WHERE ipaddress = %s AND blocktype = 'category' AND blkcategory = %s AND startdate <= NOW() AND enddate >= NOW()", 356 $user_ip, $cat_name 357 )); 358 if (!empty($blocked_ip)) return true; 359 } 360 361 return false; 324 362 } 325 363 … … 327 365 328 366 public function blocipadwoo_from_shop() { 329 330 if (is_shop() && $this->blocipadwoo_ip_blocked()) { 331 // Get the user's IP address 332 $user_ip = $this->blocipadwoo_get_user_ip(); 333 334 // Fetch the redirect URL for the blocked IP from the database 335 global $wpdb; 336 $table_name = $wpdb->prefix . 'wooip_blockip_list'; 337 367 global $wpdb; 368 $table_name = $wpdb->prefix . 'wooip_blockip_list'; 369 $user_ip = $this->blocipadwoo_get_user_ip(); 370 371 // Home page block 372 if (is_front_page()) { 338 373 $redirect_url = $wpdb->get_var($wpdb->prepare( 339 "SELECT redirect FROM $table_name WHERE ipaddress = %s AND startdate <= NOW() AND enddate >= NOW()",374 "SELECT redirect FROM $table_name WHERE ipaddress = %s AND blocktype = 'home' AND startdate <= NOW() AND enddate >= NOW()", 340 375 $user_ip 341 376 )); 342 // If a redirect URL is found, redirect the user343 377 if ($redirect_url) { 344 378 wp_redirect($redirect_url); 345 exit; // Make sure to exit after the redirect346 } else {379 exit; 380 } elseif ($this->blocipadwoo_ip_blocked()) { 347 381 wp_die('Access Denied: Your IP has been blocked from this page.', 'Access Denied', ['response' => 403]); 348 382 } 349 383 } 384 385 // Shop page block 386 if (is_shop()) { 387 $redirect_url = $wpdb->get_var($wpdb->prepare( 388 "SELECT redirect FROM $table_name WHERE ipaddress = %s AND blocktype = 'shop' AND startdate <= NOW() AND enddate >= NOW()", 389 $user_ip 390 )); 391 if ($redirect_url) { 392 wp_redirect($redirect_url); 393 exit; 394 } elseif ($this->blocipadwoo_ip_blocked()) { 395 wp_die('Access Denied: Your IP has been blocked from this page.', 'Access Denied', ['response' => 403]); 396 } 397 } 398 399 // Category-wise block (using category name) 400 if (is_product_category()) { 401 $category = get_queried_object(); 402 $cat_name = $category ? $category->name : ''; 403 $redirect_url = $wpdb->get_var($wpdb->prepare( 404 "SELECT redirect FROM $table_name WHERE ipaddress = %s AND blocktype = 'category' AND blkcategory = %s AND startdate <= NOW() AND enddate >= NOW()", 405 $user_ip, $cat_name 406 )); 407 if ($redirect_url) { 408 wp_redirect($redirect_url); 409 exit; 410 } elseif ($this->blocipadwoo_ip_blocked()) { 411 wp_die('Access Denied: Your IP has been blocked from this page.', 'Access Denied', ['response' => 403]); 412 } 413 } 350 414 } 351 415 } -
block-ip-address-for-woocommerce/trunk/build/index.asset.php
r3322565 r3467005 1 <?php return array('dependencies' => array('react', 'react-jsx-runtime', 'wp-dom-ready', 'wp-element'), 'version' => ' 4d1333a61a053b18d283');1 <?php return array('dependencies' => array('react', 'react-jsx-runtime', 'wp-dom-ready', 'wp-element'), 'version' => '760a34d79c3021f24b68'); -
block-ip-address-for-woocommerce/trunk/build/index.js
r3322565 r3467005 1 /******/ (() => { // webpackBootstrap 2 /******/ "use strict"; 3 /******/ var __webpack_modules__ = ({ 4 5 /***/ "./node_modules/axios/lib/adapters/adapters.js": 6 /*!*****************************************************!*\ 7 !*** ./node_modules/axios/lib/adapters/adapters.js ***! 8 \*****************************************************/ 9 /***/ ((__unused_webpack___webpack_module__, __webpack_exports__, __webpack_require__) => { 10 11 __webpack_require__.r(__webpack_exports__); 12 /* harmony export */ __webpack_require__.d(__webpack_exports__, { 13 /* harmony export */ "default": () => (__WEBPACK_DEFAULT_EXPORT__) 14 /* harmony export */ }); 15 /* harmony import */ var _utils_js__WEBPACK_IMPORTED_MODULE_3__ = __webpack_require__(/*! ../utils.js */ "./node_modules/axios/lib/utils.js"); 16 /* harmony import */ var _http_js__WEBPACK_IMPORTED_MODULE_0__ = __webpack_require__(/*! ./http.js */ "./node_modules/axios/lib/helpers/null.js"); 17 /* harmony import */ var _xhr_js__WEBPACK_IMPORTED_MODULE_1__ = __webpack_require__(/*! ./xhr.js */ "./node_modules/axios/lib/adapters/xhr.js"); 18 /* harmony import */ var _fetch_js__WEBPACK_IMPORTED_MODULE_2__ = __webpack_require__(/*! ./fetch.js */ "./node_modules/axios/lib/adapters/fetch.js"); 19 /* harmony import */ var _core_AxiosError_js__WEBPACK_IMPORTED_MODULE_4__ = __webpack_require__(/*! ../core/AxiosError.js */ "./node_modules/axios/lib/core/AxiosError.js"); 20 21 22 23 24 25 26 const knownAdapters = { 27 http: _http_js__WEBPACK_IMPORTED_MODULE_0__["default"], 28 xhr: _xhr_js__WEBPACK_IMPORTED_MODULE_1__["default"], 29 fetch: _fetch_js__WEBPACK_IMPORTED_MODULE_2__["default"] 30 } 31 32 _utils_js__WEBPACK_IMPORTED_MODULE_3__["default"].forEach(knownAdapters, (fn, value) => { 33 if (fn) { 34 try { 35 Object.defineProperty(fn, 'name', {value}); 36 } catch (e) { 37 // eslint-disable-next-line no-empty 38 } 39 Object.defineProperty(fn, 'adapterName', {value}); 40 } 41 }); 42 43 const renderReason = (reason) => `- ${reason}`; 44 45 const isResolvedHandle = (adapter) => _utils_js__WEBPACK_IMPORTED_MODULE_3__["default"].isFunction(adapter) || adapter === null || adapter === false; 46 47 /* harmony default export */ const __WEBPACK_DEFAULT_EXPORT__ = ({ 48 getAdapter: (adapters) => { 49 adapters = _utils_js__WEBPACK_IMPORTED_MODULE_3__["default"].isArray(adapters) ? adapters : [adapters]; 50 51 const {length} = adapters; 52 let nameOrAdapter; 53 let adapter; 54 55 const rejectedReasons = {}; 56 57 for (let i = 0; i < length; i++) { 58 nameOrAdapter = adapters[i]; 59 let id; 60 61 adapter = nameOrAdapter; 62 63 if (!isResolvedHandle(nameOrAdapter)) { 64 adapter = knownAdapters[(id = String(nameOrAdapter)).toLowerCase()]; 65 66 if (adapter === undefined) { 67 throw new _core_AxiosError_js__WEBPACK_IMPORTED_MODULE_4__["default"](`Unknown adapter '${id}'`); 68 } 69 } 70 71 if (adapter) { 72 break; 73 } 74 75 rejectedReasons[id || '#' + i] = adapter; 76 } 77 78 if (!adapter) { 79 80 const reasons = Object.entries(rejectedReasons) 81 .map(([id, state]) => `adapter ${id} ` + 82 (state === false ? 'is not supported by the environment' : 'is not available in the build') 83 ); 84 85 let s = length ? 86 (reasons.length > 1 ? 'since :\n' + reasons.map(renderReason).join('\n') : ' ' + renderReason(reasons[0])) : 87 'as no adapter specified'; 88 89 throw new _core_AxiosError_js__WEBPACK_IMPORTED_MODULE_4__["default"]( 90 `There is no suitable adapter to dispatch the request ` + s, 91 'ERR_NOT_SUPPORT' 92 ); 93 } 94 95 return adapter; 96 }, 97 adapters: knownAdapters 98 }); 99 100 101 /***/ }), 102 103 /***/ "./node_modules/axios/lib/adapters/fetch.js": 104 /*!**************************************************!*\ 105 !*** ./node_modules/axios/lib/adapters/fetch.js ***! 106 \**************************************************/ 107 /***/ ((__unused_webpack___webpack_module__, __webpack_exports__, __webpack_require__) => { 108 109 __webpack_require__.r(__webpack_exports__); 110 /* harmony export */ __webpack_require__.d(__webpack_exports__, { 111 /* harmony export */ "default": () => (__WEBPACK_DEFAULT_EXPORT__) 112 /* harmony export */ }); 113 /* harmony import */ var _platform_index_js__WEBPACK_IMPORTED_MODULE_0__ = __webpack_require__(/*! ../platform/index.js */ "./node_modules/axios/lib/platform/index.js"); 114 /* harmony import */ var _utils_js__WEBPACK_IMPORTED_MODULE_1__ = __webpack_require__(/*! ../utils.js */ "./node_modules/axios/lib/utils.js"); 115 /* harmony import */ var _core_AxiosError_js__WEBPACK_IMPORTED_MODULE_2__ = __webpack_require__(/*! ../core/AxiosError.js */ "./node_modules/axios/lib/core/AxiosError.js"); 116 /* harmony import */ var _helpers_composeSignals_js__WEBPACK_IMPORTED_MODULE_4__ = __webpack_require__(/*! ../helpers/composeSignals.js */ "./node_modules/axios/lib/helpers/composeSignals.js"); 117 /* harmony import */ var _helpers_trackStream_js__WEBPACK_IMPORTED_MODULE_6__ = __webpack_require__(/*! ../helpers/trackStream.js */ "./node_modules/axios/lib/helpers/trackStream.js"); 118 /* harmony import */ var _core_AxiosHeaders_js__WEBPACK_IMPORTED_MODULE_8__ = __webpack_require__(/*! ../core/AxiosHeaders.js */ "./node_modules/axios/lib/core/AxiosHeaders.js"); 119 /* harmony import */ var _helpers_progressEventReducer_js__WEBPACK_IMPORTED_MODULE_5__ = __webpack_require__(/*! ../helpers/progressEventReducer.js */ "./node_modules/axios/lib/helpers/progressEventReducer.js"); 120 /* harmony import */ var _helpers_resolveConfig_js__WEBPACK_IMPORTED_MODULE_3__ = __webpack_require__(/*! ../helpers/resolveConfig.js */ "./node_modules/axios/lib/helpers/resolveConfig.js"); 121 /* harmony import */ var _core_settle_js__WEBPACK_IMPORTED_MODULE_7__ = __webpack_require__(/*! ../core/settle.js */ "./node_modules/axios/lib/core/settle.js"); 122 123 124 125 126 127 128 129 130 131 132 const isFetchSupported = typeof fetch === 'function' && typeof Request === 'function' && typeof Response === 'function'; 133 const isReadableStreamSupported = isFetchSupported && typeof ReadableStream === 'function'; 134 135 // used only inside the fetch adapter 136 const encodeText = isFetchSupported && (typeof TextEncoder === 'function' ? 137 ((encoder) => (str) => encoder.encode(str))(new TextEncoder()) : 138 async (str) => new Uint8Array(await new Response(str).arrayBuffer()) 139 ); 140 141 const test = (fn, ...args) => { 142 try { 143 return !!fn(...args); 144 } catch (e) { 145 return false 146 } 147 } 148 149 const supportsRequestStream = isReadableStreamSupported && test(() => { 150 let duplexAccessed = false; 151 152 const hasContentType = new Request(_platform_index_js__WEBPACK_IMPORTED_MODULE_0__["default"].origin, { 153 body: new ReadableStream(), 154 method: 'POST', 155 get duplex() { 156 duplexAccessed = true; 157 return 'half'; 158 }, 159 }).headers.has('Content-Type'); 160 161 return duplexAccessed && !hasContentType; 162 }); 163 164 const DEFAULT_CHUNK_SIZE = 64 * 1024; 165 166 const supportsResponseStream = isReadableStreamSupported && 167 test(() => _utils_js__WEBPACK_IMPORTED_MODULE_1__["default"].isReadableStream(new Response('').body)); 168 169 170 const resolvers = { 171 stream: supportsResponseStream && ((res) => res.body) 172 }; 173 174 isFetchSupported && (((res) => { 175 ['text', 'arrayBuffer', 'blob', 'formData', 'stream'].forEach(type => { 176 !resolvers[type] && (resolvers[type] = _utils_js__WEBPACK_IMPORTED_MODULE_1__["default"].isFunction(res[type]) ? (res) => res[type]() : 177 (_, config) => { 178 throw new _core_AxiosError_js__WEBPACK_IMPORTED_MODULE_2__["default"](`Response type '${type}' is not supported`, _core_AxiosError_js__WEBPACK_IMPORTED_MODULE_2__["default"].ERR_NOT_SUPPORT, config); 179 }) 180 }); 181 })(new Response)); 182 183 const getBodyLength = async (body) => { 184 if (body == null) { 185 return 0; 186 } 187 188 if(_utils_js__WEBPACK_IMPORTED_MODULE_1__["default"].isBlob(body)) { 189 return body.size; 190 } 191 192 if(_utils_js__WEBPACK_IMPORTED_MODULE_1__["default"].isSpecCompliantForm(body)) { 193 const _request = new Request(_platform_index_js__WEBPACK_IMPORTED_MODULE_0__["default"].origin, { 194 method: 'POST', 195 body, 196 }); 197 return (await _request.arrayBuffer()).byteLength; 198 } 199 200 if(_utils_js__WEBPACK_IMPORTED_MODULE_1__["default"].isArrayBufferView(body) || _utils_js__WEBPACK_IMPORTED_MODULE_1__["default"].isArrayBuffer(body)) { 201 return body.byteLength; 202 } 203 204 if(_utils_js__WEBPACK_IMPORTED_MODULE_1__["default"].isURLSearchParams(body)) { 205 body = body + ''; 206 } 207 208 if(_utils_js__WEBPACK_IMPORTED_MODULE_1__["default"].isString(body)) { 209 return (await encodeText(body)).byteLength; 210 } 211 } 212 213 const resolveBodyLength = async (headers, body) => { 214 const length = _utils_js__WEBPACK_IMPORTED_MODULE_1__["default"].toFiniteNumber(headers.getContentLength()); 215 216 return length == null ? getBodyLength(body) : length; 217 } 218 219 /* harmony default export */ const __WEBPACK_DEFAULT_EXPORT__ = (isFetchSupported && (async (config) => { 220 let { 221 url, 222 method, 223 data, 224 signal, 225 cancelToken, 226 timeout, 227 onDownloadProgress, 228 onUploadProgress, 229 responseType, 230 headers, 231 withCredentials = 'same-origin', 232 fetchOptions 233 } = (0,_helpers_resolveConfig_js__WEBPACK_IMPORTED_MODULE_3__["default"])(config); 234 235 responseType = responseType ? (responseType + '').toLowerCase() : 'text'; 236 237 let composedSignal = (0,_helpers_composeSignals_js__WEBPACK_IMPORTED_MODULE_4__["default"])([signal, cancelToken && cancelToken.toAbortSignal()], timeout); 238 239 let request; 240 241 const unsubscribe = composedSignal && composedSignal.unsubscribe && (() => { 242 composedSignal.unsubscribe(); 243 }); 244 245 let requestContentLength; 246 247 try { 248 if ( 249 onUploadProgress && supportsRequestStream && method !== 'get' && method !== 'head' && 250 (requestContentLength = await resolveBodyLength(headers, data)) !== 0 251 ) { 252 let _request = new Request(url, { 253 method: 'POST', 254 body: data, 255 duplex: "half" 256 }); 257 258 let contentTypeHeader; 259 260 if (_utils_js__WEBPACK_IMPORTED_MODULE_1__["default"].isFormData(data) && (contentTypeHeader = _request.headers.get('content-type'))) { 261 headers.setContentType(contentTypeHeader) 262 } 263 264 if (_request.body) { 265 const [onProgress, flush] = (0,_helpers_progressEventReducer_js__WEBPACK_IMPORTED_MODULE_5__.progressEventDecorator)( 266 requestContentLength, 267 (0,_helpers_progressEventReducer_js__WEBPACK_IMPORTED_MODULE_5__.progressEventReducer)((0,_helpers_progressEventReducer_js__WEBPACK_IMPORTED_MODULE_5__.asyncDecorator)(onUploadProgress)) 268 ); 269 270 data = (0,_helpers_trackStream_js__WEBPACK_IMPORTED_MODULE_6__.trackStream)(_request.body, DEFAULT_CHUNK_SIZE, onProgress, flush); 271 } 272 } 273 274 if (!_utils_js__WEBPACK_IMPORTED_MODULE_1__["default"].isString(withCredentials)) { 275 withCredentials = withCredentials ? 'include' : 'omit'; 276 } 277 278 // Cloudflare Workers throws when credentials are defined 279 // see https://github.com/cloudflare/workerd/issues/902 280 const isCredentialsSupported = "credentials" in Request.prototype; 281 request = new Request(url, { 282 ...fetchOptions, 283 signal: composedSignal, 284 method: method.toUpperCase(), 285 headers: headers.normalize().toJSON(), 286 body: data, 287 duplex: "half", 288 credentials: isCredentialsSupported ? withCredentials : undefined 289 }); 290 291 let response = await fetch(request); 292 293 const isStreamResponse = supportsResponseStream && (responseType === 'stream' || responseType === 'response'); 294 295 if (supportsResponseStream && (onDownloadProgress || (isStreamResponse && unsubscribe))) { 296 const options = {}; 297 298 ['status', 'statusText', 'headers'].forEach(prop => { 299 options[prop] = response[prop]; 300 }); 301 302 const responseContentLength = _utils_js__WEBPACK_IMPORTED_MODULE_1__["default"].toFiniteNumber(response.headers.get('content-length')); 303 304 const [onProgress, flush] = onDownloadProgress && (0,_helpers_progressEventReducer_js__WEBPACK_IMPORTED_MODULE_5__.progressEventDecorator)( 305 responseContentLength, 306 (0,_helpers_progressEventReducer_js__WEBPACK_IMPORTED_MODULE_5__.progressEventReducer)((0,_helpers_progressEventReducer_js__WEBPACK_IMPORTED_MODULE_5__.asyncDecorator)(onDownloadProgress), true) 307 ) || []; 308 309 response = new Response( 310 (0,_helpers_trackStream_js__WEBPACK_IMPORTED_MODULE_6__.trackStream)(response.body, DEFAULT_CHUNK_SIZE, onProgress, () => { 311 flush && flush(); 312 unsubscribe && unsubscribe(); 313 }), 314 options 315 ); 316 } 317 318 responseType = responseType || 'text'; 319 320 let responseData = await resolvers[_utils_js__WEBPACK_IMPORTED_MODULE_1__["default"].findKey(resolvers, responseType) || 'text'](response, config); 321 322 !isStreamResponse && unsubscribe && unsubscribe(); 323 324 return await new Promise((resolve, reject) => { 325 (0,_core_settle_js__WEBPACK_IMPORTED_MODULE_7__["default"])(resolve, reject, { 326 data: responseData, 327 headers: _core_AxiosHeaders_js__WEBPACK_IMPORTED_MODULE_8__["default"].from(response.headers), 328 status: response.status, 329 statusText: response.statusText, 330 config, 331 request 332 }) 333 }) 334 } catch (err) { 335 unsubscribe && unsubscribe(); 336 337 if (err && err.name === 'TypeError' && /fetch/i.test(err.message)) { 338 throw Object.assign( 339 new _core_AxiosError_js__WEBPACK_IMPORTED_MODULE_2__["default"]('Network Error', _core_AxiosError_js__WEBPACK_IMPORTED_MODULE_2__["default"].ERR_NETWORK, config, request), 340 { 341 cause: err.cause || err 342 } 343 ) 344 } 345 346 throw _core_AxiosError_js__WEBPACK_IMPORTED_MODULE_2__["default"].from(err, err && err.code, config, request); 347 } 348 })); 349 350 351 352 353 /***/ }), 354 355 /***/ "./node_modules/axios/lib/adapters/xhr.js": 356 /*!************************************************!*\ 357 !*** ./node_modules/axios/lib/adapters/xhr.js ***! 358 \************************************************/ 359 /***/ ((__unused_webpack___webpack_module__, __webpack_exports__, __webpack_require__) => { 360 361 __webpack_require__.r(__webpack_exports__); 362 /* harmony export */ __webpack_require__.d(__webpack_exports__, { 363 /* harmony export */ "default": () => (__WEBPACK_DEFAULT_EXPORT__) 364 /* harmony export */ }); 365 /* harmony import */ var _utils_js__WEBPACK_IMPORTED_MODULE_5__ = __webpack_require__(/*! ./../utils.js */ "./node_modules/axios/lib/utils.js"); 366 /* harmony import */ var _core_settle_js__WEBPACK_IMPORTED_MODULE_2__ = __webpack_require__(/*! ./../core/settle.js */ "./node_modules/axios/lib/core/settle.js"); 367 /* harmony import */ var _defaults_transitional_js__WEBPACK_IMPORTED_MODULE_4__ = __webpack_require__(/*! ../defaults/transitional.js */ "./node_modules/axios/lib/defaults/transitional.js"); 368 /* harmony import */ var _core_AxiosError_js__WEBPACK_IMPORTED_MODULE_3__ = __webpack_require__(/*! ../core/AxiosError.js */ "./node_modules/axios/lib/core/AxiosError.js"); 369 /* harmony import */ var _cancel_CanceledError_js__WEBPACK_IMPORTED_MODULE_7__ = __webpack_require__(/*! ../cancel/CanceledError.js */ "./node_modules/axios/lib/cancel/CanceledError.js"); 370 /* harmony import */ var _helpers_parseProtocol_js__WEBPACK_IMPORTED_MODULE_8__ = __webpack_require__(/*! ../helpers/parseProtocol.js */ "./node_modules/axios/lib/helpers/parseProtocol.js"); 371 /* harmony import */ var _platform_index_js__WEBPACK_IMPORTED_MODULE_9__ = __webpack_require__(/*! ../platform/index.js */ "./node_modules/axios/lib/platform/index.js"); 372 /* harmony import */ var _core_AxiosHeaders_js__WEBPACK_IMPORTED_MODULE_1__ = __webpack_require__(/*! ../core/AxiosHeaders.js */ "./node_modules/axios/lib/core/AxiosHeaders.js"); 373 /* harmony import */ var _helpers_progressEventReducer_js__WEBPACK_IMPORTED_MODULE_6__ = __webpack_require__(/*! ../helpers/progressEventReducer.js */ "./node_modules/axios/lib/helpers/progressEventReducer.js"); 374 /* harmony import */ var _helpers_resolveConfig_js__WEBPACK_IMPORTED_MODULE_0__ = __webpack_require__(/*! ../helpers/resolveConfig.js */ "./node_modules/axios/lib/helpers/resolveConfig.js"); 375 376 377 378 379 380 381 382 383 384 385 386 const isXHRAdapterSupported = typeof XMLHttpRequest !== 'undefined'; 387 388 /* harmony default export */ const __WEBPACK_DEFAULT_EXPORT__ = (isXHRAdapterSupported && function (config) { 389 return new Promise(function dispatchXhrRequest(resolve, reject) { 390 const _config = (0,_helpers_resolveConfig_js__WEBPACK_IMPORTED_MODULE_0__["default"])(config); 391 let requestData = _config.data; 392 const requestHeaders = _core_AxiosHeaders_js__WEBPACK_IMPORTED_MODULE_1__["default"].from(_config.headers).normalize(); 393 let {responseType, onUploadProgress, onDownloadProgress} = _config; 394 let onCanceled; 395 let uploadThrottled, downloadThrottled; 396 let flushUpload, flushDownload; 397 398 function done() { 399 flushUpload && flushUpload(); // flush events 400 flushDownload && flushDownload(); // flush events 401 402 _config.cancelToken && _config.cancelToken.unsubscribe(onCanceled); 403 404 _config.signal && _config.signal.removeEventListener('abort', onCanceled); 405 } 406 407 let request = new XMLHttpRequest(); 408 409 request.open(_config.method.toUpperCase(), _config.url, true); 410 411 // Set the request timeout in MS 412 request.timeout = _config.timeout; 413 414 function onloadend() { 415 if (!request) { 416 return; 417 } 418 // Prepare the response 419 const responseHeaders = _core_AxiosHeaders_js__WEBPACK_IMPORTED_MODULE_1__["default"].from( 420 'getAllResponseHeaders' in request && request.getAllResponseHeaders() 421 ); 422 const responseData = !responseType || responseType === 'text' || responseType === 'json' ? 423 request.responseText : request.response; 424 const response = { 425 data: responseData, 426 status: request.status, 427 statusText: request.statusText, 428 headers: responseHeaders, 429 config, 430 request 431 }; 432 433 (0,_core_settle_js__WEBPACK_IMPORTED_MODULE_2__["default"])(function _resolve(value) { 434 resolve(value); 435 done(); 436 }, function _reject(err) { 437 reject(err); 438 done(); 439 }, response); 440 441 // Clean up request 442 request = null; 443 } 444 445 if ('onloadend' in request) { 446 // Use onloadend if available 447 request.onloadend = onloadend; 448 } else { 449 // Listen for ready state to emulate onloadend 450 request.onreadystatechange = function handleLoad() { 451 if (!request || request.readyState !== 4) { 452 return; 453 } 454 455 // The request errored out and we didn't get a response, this will be 456 // handled by onerror instead 457 // With one exception: request that using file: protocol, most browsers 458 // will return status as 0 even though it's a successful request 459 if (request.status === 0 && !(request.responseURL && request.responseURL.indexOf('file:') === 0)) { 460 return; 461 } 462 // readystate handler is calling before onerror or ontimeout handlers, 463 // so we should call onloadend on the next 'tick' 464 setTimeout(onloadend); 465 }; 466 } 467 468 // Handle browser request cancellation (as opposed to a manual cancellation) 469 request.onabort = function handleAbort() { 470 if (!request) { 471 return; 472 } 473 474 reject(new _core_AxiosError_js__WEBPACK_IMPORTED_MODULE_3__["default"]('Request aborted', _core_AxiosError_js__WEBPACK_IMPORTED_MODULE_3__["default"].ECONNABORTED, config, request)); 475 476 // Clean up request 477 request = null; 478 }; 479 480 // Handle low level network errors 481 request.onerror = function handleError() { 482 // Real errors are hidden from us by the browser 483 // onerror should only fire if it's a network error 484 reject(new _core_AxiosError_js__WEBPACK_IMPORTED_MODULE_3__["default"]('Network Error', _core_AxiosError_js__WEBPACK_IMPORTED_MODULE_3__["default"].ERR_NETWORK, config, request)); 485 486 // Clean up request 487 request = null; 488 }; 489 490 // Handle timeout 491 request.ontimeout = function handleTimeout() { 492 let timeoutErrorMessage = _config.timeout ? 'timeout of ' + _config.timeout + 'ms exceeded' : 'timeout exceeded'; 493 const transitional = _config.transitional || _defaults_transitional_js__WEBPACK_IMPORTED_MODULE_4__["default"]; 494 if (_config.timeoutErrorMessage) { 495 timeoutErrorMessage = _config.timeoutErrorMessage; 496 } 497 reject(new _core_AxiosError_js__WEBPACK_IMPORTED_MODULE_3__["default"]( 498 timeoutErrorMessage, 499 transitional.clarifyTimeoutError ? _core_AxiosError_js__WEBPACK_IMPORTED_MODULE_3__["default"].ETIMEDOUT : _core_AxiosError_js__WEBPACK_IMPORTED_MODULE_3__["default"].ECONNABORTED, 500 config, 501 request)); 502 503 // Clean up request 504 request = null; 505 }; 506 507 // Remove Content-Type if data is undefined 508 requestData === undefined && requestHeaders.setContentType(null); 509 510 // Add headers to the request 511 if ('setRequestHeader' in request) { 512 _utils_js__WEBPACK_IMPORTED_MODULE_5__["default"].forEach(requestHeaders.toJSON(), function setRequestHeader(val, key) { 513 request.setRequestHeader(key, val); 514 }); 515 } 516 517 // Add withCredentials to request if needed 518 if (!_utils_js__WEBPACK_IMPORTED_MODULE_5__["default"].isUndefined(_config.withCredentials)) { 519 request.withCredentials = !!_config.withCredentials; 520 } 521 522 // Add responseType to request if needed 523 if (responseType && responseType !== 'json') { 524 request.responseType = _config.responseType; 525 } 526 527 // Handle progress if needed 528 if (onDownloadProgress) { 529 ([downloadThrottled, flushDownload] = (0,_helpers_progressEventReducer_js__WEBPACK_IMPORTED_MODULE_6__.progressEventReducer)(onDownloadProgress, true)); 530 request.addEventListener('progress', downloadThrottled); 531 } 532 533 // Not all browsers support upload events 534 if (onUploadProgress && request.upload) { 535 ([uploadThrottled, flushUpload] = (0,_helpers_progressEventReducer_js__WEBPACK_IMPORTED_MODULE_6__.progressEventReducer)(onUploadProgress)); 536 537 request.upload.addEventListener('progress', uploadThrottled); 538 539 request.upload.addEventListener('loadend', flushUpload); 540 } 541 542 if (_config.cancelToken || _config.signal) { 543 // Handle cancellation 544 // eslint-disable-next-line func-names 545 onCanceled = cancel => { 546 if (!request) { 547 return; 548 } 549 reject(!cancel || cancel.type ? new _cancel_CanceledError_js__WEBPACK_IMPORTED_MODULE_7__["default"](null, config, request) : cancel); 550 request.abort(); 551 request = null; 552 }; 553 554 _config.cancelToken && _config.cancelToken.subscribe(onCanceled); 555 if (_config.signal) { 556 _config.signal.aborted ? onCanceled() : _config.signal.addEventListener('abort', onCanceled); 557 } 558 } 559 560 const protocol = (0,_helpers_parseProtocol_js__WEBPACK_IMPORTED_MODULE_8__["default"])(_config.url); 561 562 if (protocol && _platform_index_js__WEBPACK_IMPORTED_MODULE_9__["default"].protocols.indexOf(protocol) === -1) { 563 reject(new _core_AxiosError_js__WEBPACK_IMPORTED_MODULE_3__["default"]('Unsupported protocol ' + protocol + ':', _core_AxiosError_js__WEBPACK_IMPORTED_MODULE_3__["default"].ERR_BAD_REQUEST, config)); 564 return; 565 } 566 567 568 // Send the request 569 request.send(requestData || null); 570 }); 571 }); 572 573 574 /***/ }), 575 576 /***/ "./node_modules/axios/lib/axios.js": 577 /*!*****************************************!*\ 578 !*** ./node_modules/axios/lib/axios.js ***! 579 \*****************************************/ 580 /***/ ((__unused_webpack___webpack_module__, __webpack_exports__, __webpack_require__) => { 581 582 __webpack_require__.r(__webpack_exports__); 583 /* harmony export */ __webpack_require__.d(__webpack_exports__, { 584 /* harmony export */ "default": () => (__WEBPACK_DEFAULT_EXPORT__) 585 /* harmony export */ }); 586 /* harmony import */ var _utils_js__WEBPACK_IMPORTED_MODULE_2__ = __webpack_require__(/*! ./utils.js */ "./node_modules/axios/lib/utils.js"); 587 /* harmony import */ var _helpers_bind_js__WEBPACK_IMPORTED_MODULE_1__ = __webpack_require__(/*! ./helpers/bind.js */ "./node_modules/axios/lib/helpers/bind.js"); 588 /* harmony import */ var _core_Axios_js__WEBPACK_IMPORTED_MODULE_0__ = __webpack_require__(/*! ./core/Axios.js */ "./node_modules/axios/lib/core/Axios.js"); 589 /* harmony import */ var _core_mergeConfig_js__WEBPACK_IMPORTED_MODULE_3__ = __webpack_require__(/*! ./core/mergeConfig.js */ "./node_modules/axios/lib/core/mergeConfig.js"); 590 /* harmony import */ var _defaults_index_js__WEBPACK_IMPORTED_MODULE_4__ = __webpack_require__(/*! ./defaults/index.js */ "./node_modules/axios/lib/defaults/index.js"); 591 /* harmony import */ var _helpers_formDataToJSON_js__WEBPACK_IMPORTED_MODULE_14__ = __webpack_require__(/*! ./helpers/formDataToJSON.js */ "./node_modules/axios/lib/helpers/formDataToJSON.js"); 592 /* harmony import */ var _cancel_CanceledError_js__WEBPACK_IMPORTED_MODULE_5__ = __webpack_require__(/*! ./cancel/CanceledError.js */ "./node_modules/axios/lib/cancel/CanceledError.js"); 593 /* harmony import */ var _cancel_CancelToken_js__WEBPACK_IMPORTED_MODULE_6__ = __webpack_require__(/*! ./cancel/CancelToken.js */ "./node_modules/axios/lib/cancel/CancelToken.js"); 594 /* harmony import */ var _cancel_isCancel_js__WEBPACK_IMPORTED_MODULE_7__ = __webpack_require__(/*! ./cancel/isCancel.js */ "./node_modules/axios/lib/cancel/isCancel.js"); 595 /* harmony import */ var _env_data_js__WEBPACK_IMPORTED_MODULE_8__ = __webpack_require__(/*! ./env/data.js */ "./node_modules/axios/lib/env/data.js"); 596 /* harmony import */ var _helpers_toFormData_js__WEBPACK_IMPORTED_MODULE_9__ = __webpack_require__(/*! ./helpers/toFormData.js */ "./node_modules/axios/lib/helpers/toFormData.js"); 597 /* harmony import */ var _core_AxiosError_js__WEBPACK_IMPORTED_MODULE_10__ = __webpack_require__(/*! ./core/AxiosError.js */ "./node_modules/axios/lib/core/AxiosError.js"); 598 /* harmony import */ var _helpers_spread_js__WEBPACK_IMPORTED_MODULE_11__ = __webpack_require__(/*! ./helpers/spread.js */ "./node_modules/axios/lib/helpers/spread.js"); 599 /* harmony import */ var _helpers_isAxiosError_js__WEBPACK_IMPORTED_MODULE_12__ = __webpack_require__(/*! ./helpers/isAxiosError.js */ "./node_modules/axios/lib/helpers/isAxiosError.js"); 600 /* harmony import */ var _core_AxiosHeaders_js__WEBPACK_IMPORTED_MODULE_13__ = __webpack_require__(/*! ./core/AxiosHeaders.js */ "./node_modules/axios/lib/core/AxiosHeaders.js"); 601 /* harmony import */ var _adapters_adapters_js__WEBPACK_IMPORTED_MODULE_15__ = __webpack_require__(/*! ./adapters/adapters.js */ "./node_modules/axios/lib/adapters/adapters.js"); 602 /* harmony import */ var _helpers_HttpStatusCode_js__WEBPACK_IMPORTED_MODULE_16__ = __webpack_require__(/*! ./helpers/HttpStatusCode.js */ "./node_modules/axios/lib/helpers/HttpStatusCode.js"); 603 604 605 606 607 608 609 610 611 612 613 614 615 616 617 618 619 620 621 622 623 /** 624 * Create an instance of Axios 625 * 626 * @param {Object} defaultConfig The default config for the instance 627 * 628 * @returns {Axios} A new instance of Axios 629 */ 630 function createInstance(defaultConfig) { 631 const context = new _core_Axios_js__WEBPACK_IMPORTED_MODULE_0__["default"](defaultConfig); 632 const instance = (0,_helpers_bind_js__WEBPACK_IMPORTED_MODULE_1__["default"])(_core_Axios_js__WEBPACK_IMPORTED_MODULE_0__["default"].prototype.request, context); 633 634 // Copy axios.prototype to instance 635 _utils_js__WEBPACK_IMPORTED_MODULE_2__["default"].extend(instance, _core_Axios_js__WEBPACK_IMPORTED_MODULE_0__["default"].prototype, context, {allOwnKeys: true}); 636 637 // Copy context to instance 638 _utils_js__WEBPACK_IMPORTED_MODULE_2__["default"].extend(instance, context, null, {allOwnKeys: true}); 639 640 // Factory for creating new instances 641 instance.create = function create(instanceConfig) { 642 return createInstance((0,_core_mergeConfig_js__WEBPACK_IMPORTED_MODULE_3__["default"])(defaultConfig, instanceConfig)); 643 }; 644 645 return instance; 646 } 647 648 // Create the default instance to be exported 649 const axios = createInstance(_defaults_index_js__WEBPACK_IMPORTED_MODULE_4__["default"]); 650 651 // Expose Axios class to allow class inheritance 652 axios.Axios = _core_Axios_js__WEBPACK_IMPORTED_MODULE_0__["default"]; 653 654 // Expose Cancel & CancelToken 655 axios.CanceledError = _cancel_CanceledError_js__WEBPACK_IMPORTED_MODULE_5__["default"]; 656 axios.CancelToken = _cancel_CancelToken_js__WEBPACK_IMPORTED_MODULE_6__["default"]; 657 axios.isCancel = _cancel_isCancel_js__WEBPACK_IMPORTED_MODULE_7__["default"]; 658 axios.VERSION = _env_data_js__WEBPACK_IMPORTED_MODULE_8__.VERSION; 659 axios.toFormData = _helpers_toFormData_js__WEBPACK_IMPORTED_MODULE_9__["default"]; 660 661 // Expose AxiosError class 662 axios.AxiosError = _core_AxiosError_js__WEBPACK_IMPORTED_MODULE_10__["default"]; 663 664 // alias for CanceledError for backward compatibility 665 axios.Cancel = axios.CanceledError; 666 667 // Expose all/spread 668 axios.all = function all(promises) { 669 return Promise.all(promises); 670 }; 671 672 axios.spread = _helpers_spread_js__WEBPACK_IMPORTED_MODULE_11__["default"]; 673 674 // Expose isAxiosError 675 axios.isAxiosError = _helpers_isAxiosError_js__WEBPACK_IMPORTED_MODULE_12__["default"]; 676 677 // Expose mergeConfig 678 axios.mergeConfig = _core_mergeConfig_js__WEBPACK_IMPORTED_MODULE_3__["default"]; 679 680 axios.AxiosHeaders = _core_AxiosHeaders_js__WEBPACK_IMPORTED_MODULE_13__["default"]; 681 682 axios.formToJSON = thing => (0,_helpers_formDataToJSON_js__WEBPACK_IMPORTED_MODULE_14__["default"])(_utils_js__WEBPACK_IMPORTED_MODULE_2__["default"].isHTMLForm(thing) ? new FormData(thing) : thing); 683 684 axios.getAdapter = _adapters_adapters_js__WEBPACK_IMPORTED_MODULE_15__["default"].getAdapter; 685 686 axios.HttpStatusCode = _helpers_HttpStatusCode_js__WEBPACK_IMPORTED_MODULE_16__["default"]; 687 688 axios.default = axios; 689 690 // this module should only have a default export 691 /* harmony default export */ const __WEBPACK_DEFAULT_EXPORT__ = (axios); 692 693 694 /***/ }), 695 696 /***/ "./node_modules/axios/lib/cancel/CancelToken.js": 697 /*!******************************************************!*\ 698 !*** ./node_modules/axios/lib/cancel/CancelToken.js ***! 699 \******************************************************/ 700 /***/ ((__unused_webpack___webpack_module__, __webpack_exports__, __webpack_require__) => { 701 702 __webpack_require__.r(__webpack_exports__); 703 /* harmony export */ __webpack_require__.d(__webpack_exports__, { 704 /* harmony export */ "default": () => (__WEBPACK_DEFAULT_EXPORT__) 705 /* harmony export */ }); 706 /* harmony import */ var _CanceledError_js__WEBPACK_IMPORTED_MODULE_0__ = __webpack_require__(/*! ./CanceledError.js */ "./node_modules/axios/lib/cancel/CanceledError.js"); 707 708 709 710 711 /** 712 * A `CancelToken` is an object that can be used to request cancellation of an operation. 713 * 714 * @param {Function} executor The executor function. 715 * 716 * @returns {CancelToken} 717 */ 718 class CancelToken { 719 constructor(executor) { 720 if (typeof executor !== 'function') { 721 throw new TypeError('executor must be a function.'); 722 } 723 724 let resolvePromise; 725 726 this.promise = new Promise(function promiseExecutor(resolve) { 727 resolvePromise = resolve; 728 }); 729 730 const token = this; 731 732 // eslint-disable-next-line func-names 733 this.promise.then(cancel => { 734 if (!token._listeners) return; 735 736 let i = token._listeners.length; 737 738 while (i-- > 0) { 739 token._listeners[i](cancel); 740 } 741 token._listeners = null; 742 }); 743 744 // eslint-disable-next-line func-names 745 this.promise.then = onfulfilled => { 746 let _resolve; 747 // eslint-disable-next-line func-names 748 const promise = new Promise(resolve => { 749 token.subscribe(resolve); 750 _resolve = resolve; 751 }).then(onfulfilled); 752 753 promise.cancel = function reject() { 754 token.unsubscribe(_resolve); 755 }; 756 757 return promise; 758 }; 759 760 executor(function cancel(message, config, request) { 761 if (token.reason) { 762 // Cancellation has already been requested 763 return; 764 } 765 766 token.reason = new _CanceledError_js__WEBPACK_IMPORTED_MODULE_0__["default"](message, config, request); 767 resolvePromise(token.reason); 768 }); 769 } 770 771 /** 772 * Throws a `CanceledError` if cancellation has been requested. 773 */ 774 throwIfRequested() { 775 if (this.reason) { 776 throw this.reason; 777 } 778 } 779 780 /** 781 * Subscribe to the cancel signal 782 */ 783 784 subscribe(listener) { 785 if (this.reason) { 786 listener(this.reason); 787 return; 788 } 789 790 if (this._listeners) { 791 this._listeners.push(listener); 792 } else { 793 this._listeners = [listener]; 794 } 795 } 796 797 /** 798 * Unsubscribe from the cancel signal 799 */ 800 801 unsubscribe(listener) { 802 if (!this._listeners) { 803 return; 804 } 805 const index = this._listeners.indexOf(listener); 806 if (index !== -1) { 807 this._listeners.splice(index, 1); 808 } 809 } 810 811 toAbortSignal() { 812 const controller = new AbortController(); 813 814 const abort = (err) => { 815 controller.abort(err); 816 }; 817 818 this.subscribe(abort); 819 820 controller.signal.unsubscribe = () => this.unsubscribe(abort); 821 822 return controller.signal; 823 } 824 825 /** 826 * Returns an object that contains a new `CancelToken` and a function that, when called, 827 * cancels the `CancelToken`. 828 */ 829 static source() { 830 let cancel; 831 const token = new CancelToken(function executor(c) { 832 cancel = c; 833 }); 834 return { 835 token, 836 cancel 837 }; 838 } 839 } 840 841 /* harmony default export */ const __WEBPACK_DEFAULT_EXPORT__ = (CancelToken); 842 843 844 /***/ }), 845 846 /***/ "./node_modules/axios/lib/cancel/CanceledError.js": 847 /*!********************************************************!*\ 848 !*** ./node_modules/axios/lib/cancel/CanceledError.js ***! 849 \********************************************************/ 850 /***/ ((__unused_webpack___webpack_module__, __webpack_exports__, __webpack_require__) => { 851 852 __webpack_require__.r(__webpack_exports__); 853 /* harmony export */ __webpack_require__.d(__webpack_exports__, { 854 /* harmony export */ "default": () => (__WEBPACK_DEFAULT_EXPORT__) 855 /* harmony export */ }); 856 /* harmony import */ var _core_AxiosError_js__WEBPACK_IMPORTED_MODULE_0__ = __webpack_require__(/*! ../core/AxiosError.js */ "./node_modules/axios/lib/core/AxiosError.js"); 857 /* harmony import */ var _utils_js__WEBPACK_IMPORTED_MODULE_1__ = __webpack_require__(/*! ../utils.js */ "./node_modules/axios/lib/utils.js"); 858 859 860 861 862 863 /** 864 * A `CanceledError` is an object that is thrown when an operation is canceled. 865 * 866 * @param {string=} message The message. 867 * @param {Object=} config The config. 868 * @param {Object=} request The request. 869 * 870 * @returns {CanceledError} The created error. 871 */ 872 function CanceledError(message, config, request) { 873 // eslint-disable-next-line no-eq-null,eqeqeq 874 _core_AxiosError_js__WEBPACK_IMPORTED_MODULE_0__["default"].call(this, message == null ? 'canceled' : message, _core_AxiosError_js__WEBPACK_IMPORTED_MODULE_0__["default"].ERR_CANCELED, config, request); 875 this.name = 'CanceledError'; 876 } 877 878 _utils_js__WEBPACK_IMPORTED_MODULE_1__["default"].inherits(CanceledError, _core_AxiosError_js__WEBPACK_IMPORTED_MODULE_0__["default"], { 879 __CANCEL__: true 880 }); 881 882 /* harmony default export */ const __WEBPACK_DEFAULT_EXPORT__ = (CanceledError); 883 884 885 /***/ }), 886 887 /***/ "./node_modules/axios/lib/cancel/isCancel.js": 888 /*!***************************************************!*\ 889 !*** ./node_modules/axios/lib/cancel/isCancel.js ***! 890 \***************************************************/ 891 /***/ ((__unused_webpack___webpack_module__, __webpack_exports__, __webpack_require__) => { 892 893 __webpack_require__.r(__webpack_exports__); 894 /* harmony export */ __webpack_require__.d(__webpack_exports__, { 895 /* harmony export */ "default": () => (/* binding */ isCancel) 896 /* harmony export */ }); 897 898 899 function isCancel(value) { 900 return !!(value && value.__CANCEL__); 901 } 902 903 904 /***/ }), 905 906 /***/ "./node_modules/axios/lib/core/Axios.js": 907 /*!**********************************************!*\ 908 !*** ./node_modules/axios/lib/core/Axios.js ***! 909 \**********************************************/ 910 /***/ ((__unused_webpack___webpack_module__, __webpack_exports__, __webpack_require__) => { 911 912 __webpack_require__.r(__webpack_exports__); 913 /* harmony export */ __webpack_require__.d(__webpack_exports__, { 914 /* harmony export */ "default": () => (__WEBPACK_DEFAULT_EXPORT__) 915 /* harmony export */ }); 916 /* harmony import */ var _utils_js__WEBPACK_IMPORTED_MODULE_3__ = __webpack_require__(/*! ./../utils.js */ "./node_modules/axios/lib/utils.js"); 917 /* harmony import */ var _helpers_buildURL_js__WEBPACK_IMPORTED_MODULE_7__ = __webpack_require__(/*! ../helpers/buildURL.js */ "./node_modules/axios/lib/helpers/buildURL.js"); 918 /* harmony import */ var _InterceptorManager_js__WEBPACK_IMPORTED_MODULE_1__ = __webpack_require__(/*! ./InterceptorManager.js */ "./node_modules/axios/lib/core/InterceptorManager.js"); 919 /* harmony import */ var _dispatchRequest_js__WEBPACK_IMPORTED_MODULE_5__ = __webpack_require__(/*! ./dispatchRequest.js */ "./node_modules/axios/lib/core/dispatchRequest.js"); 920 /* harmony import */ var _mergeConfig_js__WEBPACK_IMPORTED_MODULE_2__ = __webpack_require__(/*! ./mergeConfig.js */ "./node_modules/axios/lib/core/mergeConfig.js"); 921 /* harmony import */ var _buildFullPath_js__WEBPACK_IMPORTED_MODULE_6__ = __webpack_require__(/*! ./buildFullPath.js */ "./node_modules/axios/lib/core/buildFullPath.js"); 922 /* harmony import */ var _helpers_validator_js__WEBPACK_IMPORTED_MODULE_0__ = __webpack_require__(/*! ../helpers/validator.js */ "./node_modules/axios/lib/helpers/validator.js"); 923 /* harmony import */ var _AxiosHeaders_js__WEBPACK_IMPORTED_MODULE_4__ = __webpack_require__(/*! ./AxiosHeaders.js */ "./node_modules/axios/lib/core/AxiosHeaders.js"); 924 925 926 927 928 929 930 931 932 933 934 935 const validators = _helpers_validator_js__WEBPACK_IMPORTED_MODULE_0__["default"].validators; 936 937 /** 938 * Create a new instance of Axios 939 * 940 * @param {Object} instanceConfig The default config for the instance 941 * 942 * @return {Axios} A new instance of Axios 943 */ 944 class Axios { 945 constructor(instanceConfig) { 946 this.defaults = instanceConfig; 947 this.interceptors = { 948 request: new _InterceptorManager_js__WEBPACK_IMPORTED_MODULE_1__["default"](), 949 response: new _InterceptorManager_js__WEBPACK_IMPORTED_MODULE_1__["default"]() 950 }; 951 } 952 953 /** 954 * Dispatch a request 955 * 956 * @param {String|Object} configOrUrl The config specific for this request (merged with this.defaults) 957 * @param {?Object} config 958 * 959 * @returns {Promise} The Promise to be fulfilled 960 */ 961 async request(configOrUrl, config) { 962 try { 963 return await this._request(configOrUrl, config); 964 } catch (err) { 965 if (err instanceof Error) { 966 let dummy = {}; 967 968 Error.captureStackTrace ? Error.captureStackTrace(dummy) : (dummy = new Error()); 969 970 // slice off the Error: ... line 971 const stack = dummy.stack ? dummy.stack.replace(/^.+\n/, '') : ''; 972 try { 973 if (!err.stack) { 974 err.stack = stack; 975 // match without the 2 top stack lines 976 } else if (stack && !String(err.stack).endsWith(stack.replace(/^.+\n.+\n/, ''))) { 977 err.stack += '\n' + stack 978 } 979 } catch (e) { 980 // ignore the case where "stack" is an un-writable property 981 } 982 } 983 984 throw err; 985 } 986 } 987 988 _request(configOrUrl, config) { 989 /*eslint no-param-reassign:0*/ 990 // Allow for axios('example/url'[, config]) a la fetch API 991 if (typeof configOrUrl === 'string') { 992 config = config || {}; 993 config.url = configOrUrl; 994 } else { 995 config = configOrUrl || {}; 996 } 997 998 config = (0,_mergeConfig_js__WEBPACK_IMPORTED_MODULE_2__["default"])(this.defaults, config); 999 1000 const {transitional, paramsSerializer, headers} = config; 1001 1002 if (transitional !== undefined) { 1003 _helpers_validator_js__WEBPACK_IMPORTED_MODULE_0__["default"].assertOptions(transitional, { 1004 silentJSONParsing: validators.transitional(validators.boolean), 1005 forcedJSONParsing: validators.transitional(validators.boolean), 1006 clarifyTimeoutError: validators.transitional(validators.boolean) 1007 }, false); 1008 } 1009 1010 if (paramsSerializer != null) { 1011 if (_utils_js__WEBPACK_IMPORTED_MODULE_3__["default"].isFunction(paramsSerializer)) { 1012 config.paramsSerializer = { 1013 serialize: paramsSerializer 1014 } 1015 } else { 1016 _helpers_validator_js__WEBPACK_IMPORTED_MODULE_0__["default"].assertOptions(paramsSerializer, { 1017 encode: validators.function, 1018 serialize: validators.function 1019 }, true); 1020 } 1021 } 1022 1023 _helpers_validator_js__WEBPACK_IMPORTED_MODULE_0__["default"].assertOptions(config, { 1024 baseUrl: validators.spelling('baseURL'), 1025 withXsrfToken: validators.spelling('withXSRFToken') 1026 }, true); 1027 1028 // Set config.method 1029 config.method = (config.method || this.defaults.method || 'get').toLowerCase(); 1030 1031 // Flatten headers 1032 let contextHeaders = headers && _utils_js__WEBPACK_IMPORTED_MODULE_3__["default"].merge( 1033 headers.common, 1034 headers[config.method] 1035 ); 1036 1037 headers && _utils_js__WEBPACK_IMPORTED_MODULE_3__["default"].forEach( 1038 ['delete', 'get', 'head', 'post', 'put', 'patch', 'common'], 1039 (method) => { 1040 delete headers[method]; 1041 } 1042 ); 1043 1044 config.headers = _AxiosHeaders_js__WEBPACK_IMPORTED_MODULE_4__["default"].concat(contextHeaders, headers); 1045 1046 // filter out skipped interceptors 1047 const requestInterceptorChain = []; 1048 let synchronousRequestInterceptors = true; 1049 this.interceptors.request.forEach(function unshiftRequestInterceptors(interceptor) { 1050 if (typeof interceptor.runWhen === 'function' && interceptor.runWhen(config) === false) { 1051 return; 1052 } 1053 1054 synchronousRequestInterceptors = synchronousRequestInterceptors && interceptor.synchronous; 1055 1056 requestInterceptorChain.unshift(interceptor.fulfilled, interceptor.rejected); 1057 }); 1058 1059 const responseInterceptorChain = []; 1060 this.interceptors.response.forEach(function pushResponseInterceptors(interceptor) { 1061 responseInterceptorChain.push(interceptor.fulfilled, interceptor.rejected); 1062 }); 1063 1064 let promise; 1065 let i = 0; 1066 let len; 1067 1068 if (!synchronousRequestInterceptors) { 1069 const chain = [_dispatchRequest_js__WEBPACK_IMPORTED_MODULE_5__["default"].bind(this), undefined]; 1070 chain.unshift.apply(chain, requestInterceptorChain); 1071 chain.push.apply(chain, responseInterceptorChain); 1072 len = chain.length; 1073 1074 promise = Promise.resolve(config); 1075 1076 while (i < len) { 1077 promise = promise.then(chain[i++], chain[i++]); 1078 } 1079 1080 return promise; 1081 } 1082 1083 len = requestInterceptorChain.length; 1084 1085 let newConfig = config; 1086 1087 i = 0; 1088 1089 while (i < len) { 1090 const onFulfilled = requestInterceptorChain[i++]; 1091 const onRejected = requestInterceptorChain[i++]; 1092 try { 1093 newConfig = onFulfilled(newConfig); 1094 } catch (error) { 1095 onRejected.call(this, error); 1096 break; 1097 } 1098 } 1099 1100 try { 1101 promise = _dispatchRequest_js__WEBPACK_IMPORTED_MODULE_5__["default"].call(this, newConfig); 1102 } catch (error) { 1103 return Promise.reject(error); 1104 } 1105 1106 i = 0; 1107 len = responseInterceptorChain.length; 1108 1109 while (i < len) { 1110 promise = promise.then(responseInterceptorChain[i++], responseInterceptorChain[i++]); 1111 } 1112 1113 return promise; 1114 } 1115 1116 getUri(config) { 1117 config = (0,_mergeConfig_js__WEBPACK_IMPORTED_MODULE_2__["default"])(this.defaults, config); 1118 const fullPath = (0,_buildFullPath_js__WEBPACK_IMPORTED_MODULE_6__["default"])(config.baseURL, config.url); 1119 return (0,_helpers_buildURL_js__WEBPACK_IMPORTED_MODULE_7__["default"])(fullPath, config.params, config.paramsSerializer); 1120 } 1121 } 1122 1123 // Provide aliases for supported request methods 1124 _utils_js__WEBPACK_IMPORTED_MODULE_3__["default"].forEach(['delete', 'get', 'head', 'options'], function forEachMethodNoData(method) { 1125 /*eslint func-names:0*/ 1126 Axios.prototype[method] = function(url, config) { 1127 return this.request((0,_mergeConfig_js__WEBPACK_IMPORTED_MODULE_2__["default"])(config || {}, { 1128 method, 1129 url, 1130 data: (config || {}).data 1131 })); 1132 }; 1133 }); 1134 1135 _utils_js__WEBPACK_IMPORTED_MODULE_3__["default"].forEach(['post', 'put', 'patch'], function forEachMethodWithData(method) { 1136 /*eslint func-names:0*/ 1137 1138 function generateHTTPMethod(isForm) { 1139 return function httpMethod(url, data, config) { 1140 return this.request((0,_mergeConfig_js__WEBPACK_IMPORTED_MODULE_2__["default"])(config || {}, { 1141 method, 1142 headers: isForm ? { 1143 'Content-Type': 'multipart/form-data' 1144 } : {}, 1145 url, 1146 data 1147 })); 1148 }; 1149 } 1150 1151 Axios.prototype[method] = generateHTTPMethod(); 1152 1153 Axios.prototype[method + 'Form'] = generateHTTPMethod(true); 1154 }); 1155 1156 /* harmony default export */ const __WEBPACK_DEFAULT_EXPORT__ = (Axios); 1157 1158 1159 /***/ }), 1160 1161 /***/ "./node_modules/axios/lib/core/AxiosError.js": 1162 /*!***************************************************!*\ 1163 !*** ./node_modules/axios/lib/core/AxiosError.js ***! 1164 \***************************************************/ 1165 /***/ ((__unused_webpack___webpack_module__, __webpack_exports__, __webpack_require__) => { 1166 1167 __webpack_require__.r(__webpack_exports__); 1168 /* harmony export */ __webpack_require__.d(__webpack_exports__, { 1169 /* harmony export */ "default": () => (__WEBPACK_DEFAULT_EXPORT__) 1170 /* harmony export */ }); 1171 /* harmony import */ var _utils_js__WEBPACK_IMPORTED_MODULE_0__ = __webpack_require__(/*! ../utils.js */ "./node_modules/axios/lib/utils.js"); 1172 1173 1174 1175 1176 /** 1177 * Create an Error with the specified message, config, error code, request and response. 1178 * 1179 * @param {string} message The error message. 1180 * @param {string} [code] The error code (for example, 'ECONNABORTED'). 1181 * @param {Object} [config] The config. 1182 * @param {Object} [request] The request. 1183 * @param {Object} [response] The response. 1184 * 1185 * @returns {Error} The created error. 1186 */ 1187 function AxiosError(message, code, config, request, response) { 1188 Error.call(this); 1189 1190 if (Error.captureStackTrace) { 1191 Error.captureStackTrace(this, this.constructor); 1192 } else { 1193 this.stack = (new Error()).stack; 1194 } 1195 1196 this.message = message; 1197 this.name = 'AxiosError'; 1198 code && (this.code = code); 1199 config && (this.config = config); 1200 request && (this.request = request); 1201 if (response) { 1202 this.response = response; 1203 this.status = response.status ? response.status : null; 1204 } 1205 } 1206 1207 _utils_js__WEBPACK_IMPORTED_MODULE_0__["default"].inherits(AxiosError, Error, { 1208 toJSON: function toJSON() { 1209 return { 1210 // Standard 1211 message: this.message, 1212 name: this.name, 1213 // Microsoft 1214 description: this.description, 1215 number: this.number, 1216 // Mozilla 1217 fileName: this.fileName, 1218 lineNumber: this.lineNumber, 1219 columnNumber: this.columnNumber, 1220 stack: this.stack, 1221 // Axios 1222 config: _utils_js__WEBPACK_IMPORTED_MODULE_0__["default"].toJSONObject(this.config), 1223 code: this.code, 1224 status: this.status 1225 }; 1226 } 1227 }); 1228 1229 const prototype = AxiosError.prototype; 1230 const descriptors = {}; 1231 1232 [ 1233 'ERR_BAD_OPTION_VALUE', 1234 'ERR_BAD_OPTION', 1235 'ECONNABORTED', 1236 'ETIMEDOUT', 1237 'ERR_NETWORK', 1238 'ERR_FR_TOO_MANY_REDIRECTS', 1239 'ERR_DEPRECATED', 1240 'ERR_BAD_RESPONSE', 1241 'ERR_BAD_REQUEST', 1242 'ERR_CANCELED', 1243 'ERR_NOT_SUPPORT', 1244 'ERR_INVALID_URL' 1245 // eslint-disable-next-line func-names 1246 ].forEach(code => { 1247 descriptors[code] = {value: code}; 1248 }); 1249 1250 Object.defineProperties(AxiosError, descriptors); 1251 Object.defineProperty(prototype, 'isAxiosError', {value: true}); 1252 1253 // eslint-disable-next-line func-names 1254 AxiosError.from = (error, code, config, request, response, customProps) => { 1255 const axiosError = Object.create(prototype); 1256 1257 _utils_js__WEBPACK_IMPORTED_MODULE_0__["default"].toFlatObject(error, axiosError, function filter(obj) { 1258 return obj !== Error.prototype; 1259 }, prop => { 1260 return prop !== 'isAxiosError'; 1261 }); 1262 1263 AxiosError.call(axiosError, error.message, code, config, request, response); 1264 1265 axiosError.cause = error; 1266 1267 axiosError.name = error.name; 1268 1269 customProps && Object.assign(axiosError, customProps); 1270 1271 return axiosError; 1272 }; 1273 1274 /* harmony default export */ const __WEBPACK_DEFAULT_EXPORT__ = (AxiosError); 1275 1276 1277 /***/ }), 1278 1279 /***/ "./node_modules/axios/lib/core/AxiosHeaders.js": 1280 /*!*****************************************************!*\ 1281 !*** ./node_modules/axios/lib/core/AxiosHeaders.js ***! 1282 \*****************************************************/ 1283 /***/ ((__unused_webpack___webpack_module__, __webpack_exports__, __webpack_require__) => { 1284 1285 __webpack_require__.r(__webpack_exports__); 1286 /* harmony export */ __webpack_require__.d(__webpack_exports__, { 1287 /* harmony export */ "default": () => (__WEBPACK_DEFAULT_EXPORT__) 1288 /* harmony export */ }); 1289 /* harmony import */ var _utils_js__WEBPACK_IMPORTED_MODULE_0__ = __webpack_require__(/*! ../utils.js */ "./node_modules/axios/lib/utils.js"); 1290 /* harmony import */ var _helpers_parseHeaders_js__WEBPACK_IMPORTED_MODULE_1__ = __webpack_require__(/*! ../helpers/parseHeaders.js */ "./node_modules/axios/lib/helpers/parseHeaders.js"); 1291 1292 1293 1294 1295 1296 const $internals = Symbol('internals'); 1297 1298 function normalizeHeader(header) { 1299 return header && String(header).trim().toLowerCase(); 1300 } 1301 1302 function normalizeValue(value) { 1303 if (value === false || value == null) { 1304 return value; 1305 } 1306 1307 return _utils_js__WEBPACK_IMPORTED_MODULE_0__["default"].isArray(value) ? value.map(normalizeValue) : String(value); 1308 } 1309 1310 function parseTokens(str) { 1311 const tokens = Object.create(null); 1312 const tokensRE = /([^\s,;=]+)\s*(?:=\s*([^,;]+))?/g; 1313 let match; 1314 1315 while ((match = tokensRE.exec(str))) { 1316 tokens[match[1]] = match[2]; 1317 } 1318 1319 return tokens; 1320 } 1321 1322 const isValidHeaderName = (str) => /^[-_a-zA-Z0-9^`|~,!#$%&'*+.]+$/.test(str.trim()); 1323 1324 function matchHeaderValue(context, value, header, filter, isHeaderNameFilter) { 1325 if (_utils_js__WEBPACK_IMPORTED_MODULE_0__["default"].isFunction(filter)) { 1326 return filter.call(this, value, header); 1327 } 1328 1329 if (isHeaderNameFilter) { 1330 value = header; 1331 } 1332 1333 if (!_utils_js__WEBPACK_IMPORTED_MODULE_0__["default"].isString(value)) return; 1334 1335 if (_utils_js__WEBPACK_IMPORTED_MODULE_0__["default"].isString(filter)) { 1336 return value.indexOf(filter) !== -1; 1337 } 1338 1339 if (_utils_js__WEBPACK_IMPORTED_MODULE_0__["default"].isRegExp(filter)) { 1340 return filter.test(value); 1341 } 1342 } 1343 1344 function formatHeader(header) { 1345 return header.trim() 1346 .toLowerCase().replace(/([a-z\d])(\w*)/g, (w, char, str) => { 1347 return char.toUpperCase() + str; 1348 }); 1349 } 1350 1351 function buildAccessors(obj, header) { 1352 const accessorName = _utils_js__WEBPACK_IMPORTED_MODULE_0__["default"].toCamelCase(' ' + header); 1353 1354 ['get', 'set', 'has'].forEach(methodName => { 1355 Object.defineProperty(obj, methodName + accessorName, { 1356 value: function(arg1, arg2, arg3) { 1357 return this[methodName].call(this, header, arg1, arg2, arg3); 1358 }, 1359 configurable: true 1360 }); 1361 }); 1362 } 1363 1364 class AxiosHeaders { 1365 constructor(headers) { 1366 headers && this.set(headers); 1367 } 1368 1369 set(header, valueOrRewrite, rewrite) { 1370 const self = this; 1371 1372 function setHeader(_value, _header, _rewrite) { 1373 const lHeader = normalizeHeader(_header); 1374 1375 if (!lHeader) { 1376 throw new Error('header name must be a non-empty string'); 1377 } 1378 1379 const key = _utils_js__WEBPACK_IMPORTED_MODULE_0__["default"].findKey(self, lHeader); 1380 1381 if(!key || self[key] === undefined || _rewrite === true || (_rewrite === undefined && self[key] !== false)) { 1382 self[key || _header] = normalizeValue(_value); 1383 } 1384 } 1385 1386 const setHeaders = (headers, _rewrite) => 1387 _utils_js__WEBPACK_IMPORTED_MODULE_0__["default"].forEach(headers, (_value, _header) => setHeader(_value, _header, _rewrite)); 1388 1389 if (_utils_js__WEBPACK_IMPORTED_MODULE_0__["default"].isPlainObject(header) || header instanceof this.constructor) { 1390 setHeaders(header, valueOrRewrite) 1391 } else if(_utils_js__WEBPACK_IMPORTED_MODULE_0__["default"].isString(header) && (header = header.trim()) && !isValidHeaderName(header)) { 1392 setHeaders((0,_helpers_parseHeaders_js__WEBPACK_IMPORTED_MODULE_1__["default"])(header), valueOrRewrite); 1393 } else if (_utils_js__WEBPACK_IMPORTED_MODULE_0__["default"].isHeaders(header)) { 1394 for (const [key, value] of header.entries()) { 1395 setHeader(value, key, rewrite); 1396 } 1397 } else { 1398 header != null && setHeader(valueOrRewrite, header, rewrite); 1399 } 1400 1401 return this; 1402 } 1403 1404 get(header, parser) { 1405 header = normalizeHeader(header); 1406 1407 if (header) { 1408 const key = _utils_js__WEBPACK_IMPORTED_MODULE_0__["default"].findKey(this, header); 1409 1410 if (key) { 1411 const value = this[key]; 1412 1413 if (!parser) { 1414 return value; 1415 } 1416 1417 if (parser === true) { 1418 return parseTokens(value); 1419 } 1420 1421 if (_utils_js__WEBPACK_IMPORTED_MODULE_0__["default"].isFunction(parser)) { 1422 return parser.call(this, value, key); 1423 } 1424 1425 if (_utils_js__WEBPACK_IMPORTED_MODULE_0__["default"].isRegExp(parser)) { 1426 return parser.exec(value); 1427 } 1428 1429 throw new TypeError('parser must be boolean|regexp|function'); 1430 } 1431 } 1432 } 1433 1434 has(header, matcher) { 1435 header = normalizeHeader(header); 1436 1437 if (header) { 1438 const key = _utils_js__WEBPACK_IMPORTED_MODULE_0__["default"].findKey(this, header); 1439 1440 return !!(key && this[key] !== undefined && (!matcher || matchHeaderValue(this, this[key], key, matcher))); 1441 } 1442 1443 return false; 1444 } 1445 1446 delete(header, matcher) { 1447 const self = this; 1448 let deleted = false; 1449 1450 function deleteHeader(_header) { 1451 _header = normalizeHeader(_header); 1452 1453 if (_header) { 1454 const key = _utils_js__WEBPACK_IMPORTED_MODULE_0__["default"].findKey(self, _header); 1455 1456 if (key && (!matcher || matchHeaderValue(self, self[key], key, matcher))) { 1457 delete self[key]; 1458 1459 deleted = true; 1460 } 1461 } 1462 } 1463 1464 if (_utils_js__WEBPACK_IMPORTED_MODULE_0__["default"].isArray(header)) { 1465 header.forEach(deleteHeader); 1466 } else { 1467 deleteHeader(header); 1468 } 1469 1470 return deleted; 1471 } 1472 1473 clear(matcher) { 1474 const keys = Object.keys(this); 1475 let i = keys.length; 1476 let deleted = false; 1477 1478 while (i--) { 1479 const key = keys[i]; 1480 if(!matcher || matchHeaderValue(this, this[key], key, matcher, true)) { 1481 delete this[key]; 1482 deleted = true; 1483 } 1484 } 1485 1486 return deleted; 1487 } 1488 1489 normalize(format) { 1490 const self = this; 1491 const headers = {}; 1492 1493 _utils_js__WEBPACK_IMPORTED_MODULE_0__["default"].forEach(this, (value, header) => { 1494 const key = _utils_js__WEBPACK_IMPORTED_MODULE_0__["default"].findKey(headers, header); 1495 1496 if (key) { 1497 self[key] = normalizeValue(value); 1498 delete self[header]; 1499 return; 1500 } 1501 1502 const normalized = format ? formatHeader(header) : String(header).trim(); 1503 1504 if (normalized !== header) { 1505 delete self[header]; 1506 } 1507 1508 self[normalized] = normalizeValue(value); 1509 1510 headers[normalized] = true; 1511 }); 1512 1513 return this; 1514 } 1515 1516 concat(...targets) { 1517 return this.constructor.concat(this, ...targets); 1518 } 1519 1520 toJSON(asStrings) { 1521 const obj = Object.create(null); 1522 1523 _utils_js__WEBPACK_IMPORTED_MODULE_0__["default"].forEach(this, (value, header) => { 1524 value != null && value !== false && (obj[header] = asStrings && _utils_js__WEBPACK_IMPORTED_MODULE_0__["default"].isArray(value) ? value.join(', ') : value); 1525 }); 1526 1527 return obj; 1528 } 1529 1530 [Symbol.iterator]() { 1531 return Object.entries(this.toJSON())[Symbol.iterator](); 1532 } 1533 1534 toString() { 1535 return Object.entries(this.toJSON()).map(([header, value]) => header + ': ' + value).join('\n'); 1536 } 1537 1538 get [Symbol.toStringTag]() { 1539 return 'AxiosHeaders'; 1540 } 1541 1542 static from(thing) { 1543 return thing instanceof this ? thing : new this(thing); 1544 } 1545 1546 static concat(first, ...targets) { 1547 const computed = new this(first); 1548 1549 targets.forEach((target) => computed.set(target)); 1550 1551 return computed; 1552 } 1553 1554 static accessor(header) { 1555 const internals = this[$internals] = (this[$internals] = { 1556 accessors: {} 1557 }); 1558 1559 const accessors = internals.accessors; 1560 const prototype = this.prototype; 1561 1562 function defineAccessor(_header) { 1563 const lHeader = normalizeHeader(_header); 1564 1565 if (!accessors[lHeader]) { 1566 buildAccessors(prototype, _header); 1567 accessors[lHeader] = true; 1568 } 1569 } 1570 1571 _utils_js__WEBPACK_IMPORTED_MODULE_0__["default"].isArray(header) ? header.forEach(defineAccessor) : defineAccessor(header); 1572 1573 return this; 1574 } 1575 } 1576 1577 AxiosHeaders.accessor(['Content-Type', 'Content-Length', 'Accept', 'Accept-Encoding', 'User-Agent', 'Authorization']); 1578 1579 // reserved names hotfix 1580 _utils_js__WEBPACK_IMPORTED_MODULE_0__["default"].reduceDescriptors(AxiosHeaders.prototype, ({value}, key) => { 1581 let mapped = key[0].toUpperCase() + key.slice(1); // map `set` => `Set` 1582 return { 1583 get: () => value, 1584 set(headerValue) { 1585 this[mapped] = headerValue; 1586 } 1587 } 1588 }); 1589 1590 _utils_js__WEBPACK_IMPORTED_MODULE_0__["default"].freezeMethods(AxiosHeaders); 1591 1592 /* harmony default export */ const __WEBPACK_DEFAULT_EXPORT__ = (AxiosHeaders); 1593 1594 1595 /***/ }), 1596 1597 /***/ "./node_modules/axios/lib/core/InterceptorManager.js": 1598 /*!***********************************************************!*\ 1599 !*** ./node_modules/axios/lib/core/InterceptorManager.js ***! 1600 \***********************************************************/ 1601 /***/ ((__unused_webpack___webpack_module__, __webpack_exports__, __webpack_require__) => { 1602 1603 __webpack_require__.r(__webpack_exports__); 1604 /* harmony export */ __webpack_require__.d(__webpack_exports__, { 1605 /* harmony export */ "default": () => (__WEBPACK_DEFAULT_EXPORT__) 1606 /* harmony export */ }); 1607 /* harmony import */ var _utils_js__WEBPACK_IMPORTED_MODULE_0__ = __webpack_require__(/*! ./../utils.js */ "./node_modules/axios/lib/utils.js"); 1608 1609 1610 1611 1612 class InterceptorManager { 1613 constructor() { 1614 this.handlers = []; 1615 } 1616 1617 /** 1618 * Add a new interceptor to the stack 1619 * 1620 * @param {Function} fulfilled The function to handle `then` for a `Promise` 1621 * @param {Function} rejected The function to handle `reject` for a `Promise` 1622 * 1623 * @return {Number} An ID used to remove interceptor later 1624 */ 1625 use(fulfilled, rejected, options) { 1626 this.handlers.push({ 1627 fulfilled, 1628 rejected, 1629 synchronous: options ? options.synchronous : false, 1630 runWhen: options ? options.runWhen : null 1631 }); 1632 return this.handlers.length - 1; 1633 } 1634 1635 /** 1636 * Remove an interceptor from the stack 1637 * 1638 * @param {Number} id The ID that was returned by `use` 1639 * 1640 * @returns {Boolean} `true` if the interceptor was removed, `false` otherwise 1641 */ 1642 eject(id) { 1643 if (this.handlers[id]) { 1644 this.handlers[id] = null; 1645 } 1646 } 1647 1648 /** 1649 * Clear all interceptors from the stack 1650 * 1651 * @returns {void} 1652 */ 1653 clear() { 1654 if (this.handlers) { 1655 this.handlers = []; 1656 } 1657 } 1658 1659 /** 1660 * Iterate over all the registered interceptors 1661 * 1662 * This method is particularly useful for skipping over any 1663 * interceptors that may have become `null` calling `eject`. 1664 * 1665 * @param {Function} fn The function to call for each interceptor 1666 * 1667 * @returns {void} 1668 */ 1669 forEach(fn) { 1670 _utils_js__WEBPACK_IMPORTED_MODULE_0__["default"].forEach(this.handlers, function forEachHandler(h) { 1671 if (h !== null) { 1672 fn(h); 1673 } 1674 }); 1675 } 1676 } 1677 1678 /* harmony default export */ const __WEBPACK_DEFAULT_EXPORT__ = (InterceptorManager); 1679 1680 1681 /***/ }), 1682 1683 /***/ "./node_modules/axios/lib/core/buildFullPath.js": 1684 /*!******************************************************!*\ 1685 !*** ./node_modules/axios/lib/core/buildFullPath.js ***! 1686 \******************************************************/ 1687 /***/ ((__unused_webpack___webpack_module__, __webpack_exports__, __webpack_require__) => { 1688 1689 __webpack_require__.r(__webpack_exports__); 1690 /* harmony export */ __webpack_require__.d(__webpack_exports__, { 1691 /* harmony export */ "default": () => (/* binding */ buildFullPath) 1692 /* harmony export */ }); 1693 /* harmony import */ var _helpers_isAbsoluteURL_js__WEBPACK_IMPORTED_MODULE_0__ = __webpack_require__(/*! ../helpers/isAbsoluteURL.js */ "./node_modules/axios/lib/helpers/isAbsoluteURL.js"); 1694 /* harmony import */ var _helpers_combineURLs_js__WEBPACK_IMPORTED_MODULE_1__ = __webpack_require__(/*! ../helpers/combineURLs.js */ "./node_modules/axios/lib/helpers/combineURLs.js"); 1695 1696 1697 1698 1699 1700 /** 1701 * Creates a new URL by combining the baseURL with the requestedURL, 1702 * only when the requestedURL is not already an absolute URL. 1703 * If the requestURL is absolute, this function returns the requestedURL untouched. 1704 * 1705 * @param {string} baseURL The base URL 1706 * @param {string} requestedURL Absolute or relative URL to combine 1707 * 1708 * @returns {string} The combined full path 1709 */ 1710 function buildFullPath(baseURL, requestedURL) { 1711 if (baseURL && !(0,_helpers_isAbsoluteURL_js__WEBPACK_IMPORTED_MODULE_0__["default"])(requestedURL)) { 1712 return (0,_helpers_combineURLs_js__WEBPACK_IMPORTED_MODULE_1__["default"])(baseURL, requestedURL); 1713 } 1714 return requestedURL; 1715 } 1716 1717 1718 /***/ }), 1719 1720 /***/ "./node_modules/axios/lib/core/dispatchRequest.js": 1721 /*!********************************************************!*\ 1722 !*** ./node_modules/axios/lib/core/dispatchRequest.js ***! 1723 \********************************************************/ 1724 /***/ ((__unused_webpack___webpack_module__, __webpack_exports__, __webpack_require__) => { 1725 1726 __webpack_require__.r(__webpack_exports__); 1727 /* harmony export */ __webpack_require__.d(__webpack_exports__, { 1728 /* harmony export */ "default": () => (/* binding */ dispatchRequest) 1729 /* harmony export */ }); 1730 /* harmony import */ var _transformData_js__WEBPACK_IMPORTED_MODULE_2__ = __webpack_require__(/*! ./transformData.js */ "./node_modules/axios/lib/core/transformData.js"); 1731 /* harmony import */ var _cancel_isCancel_js__WEBPACK_IMPORTED_MODULE_5__ = __webpack_require__(/*! ../cancel/isCancel.js */ "./node_modules/axios/lib/cancel/isCancel.js"); 1732 /* harmony import */ var _defaults_index_js__WEBPACK_IMPORTED_MODULE_4__ = __webpack_require__(/*! ../defaults/index.js */ "./node_modules/axios/lib/defaults/index.js"); 1733 /* harmony import */ var _cancel_CanceledError_js__WEBPACK_IMPORTED_MODULE_0__ = __webpack_require__(/*! ../cancel/CanceledError.js */ "./node_modules/axios/lib/cancel/CanceledError.js"); 1734 /* harmony import */ var _core_AxiosHeaders_js__WEBPACK_IMPORTED_MODULE_1__ = __webpack_require__(/*! ../core/AxiosHeaders.js */ "./node_modules/axios/lib/core/AxiosHeaders.js"); 1735 /* harmony import */ var _adapters_adapters_js__WEBPACK_IMPORTED_MODULE_3__ = __webpack_require__(/*! ../adapters/adapters.js */ "./node_modules/axios/lib/adapters/adapters.js"); 1736 1737 1738 1739 1740 1741 1742 1743 1744 1745 /** 1746 * Throws a `CanceledError` if cancellation has been requested. 1747 * 1748 * @param {Object} config The config that is to be used for the request 1749 * 1750 * @returns {void} 1751 */ 1752 function throwIfCancellationRequested(config) { 1753 if (config.cancelToken) { 1754 config.cancelToken.throwIfRequested(); 1755 } 1756 1757 if (config.signal && config.signal.aborted) { 1758 throw new _cancel_CanceledError_js__WEBPACK_IMPORTED_MODULE_0__["default"](null, config); 1759 } 1760 } 1761 1762 /** 1763 * Dispatch a request to the server using the configured adapter. 1764 * 1765 * @param {object} config The config that is to be used for the request 1766 * 1767 * @returns {Promise} The Promise to be fulfilled 1768 */ 1769 function dispatchRequest(config) { 1770 throwIfCancellationRequested(config); 1771 1772 config.headers = _core_AxiosHeaders_js__WEBPACK_IMPORTED_MODULE_1__["default"].from(config.headers); 1773 1774 // Transform request data 1775 config.data = _transformData_js__WEBPACK_IMPORTED_MODULE_2__["default"].call( 1776 config, 1777 config.transformRequest 1778 ); 1779 1780 if (['post', 'put', 'patch'].indexOf(config.method) !== -1) { 1781 config.headers.setContentType('application/x-www-form-urlencoded', false); 1782 } 1783 1784 const adapter = _adapters_adapters_js__WEBPACK_IMPORTED_MODULE_3__["default"].getAdapter(config.adapter || _defaults_index_js__WEBPACK_IMPORTED_MODULE_4__["default"].adapter); 1785 1786 return adapter(config).then(function onAdapterResolution(response) { 1787 throwIfCancellationRequested(config); 1788 1789 // Transform response data 1790 response.data = _transformData_js__WEBPACK_IMPORTED_MODULE_2__["default"].call( 1791 config, 1792 config.transformResponse, 1793 response 1794 ); 1795 1796 response.headers = _core_AxiosHeaders_js__WEBPACK_IMPORTED_MODULE_1__["default"].from(response.headers); 1797 1798 return response; 1799 }, function onAdapterRejection(reason) { 1800 if (!(0,_cancel_isCancel_js__WEBPACK_IMPORTED_MODULE_5__["default"])(reason)) { 1801 throwIfCancellationRequested(config); 1802 1803 // Transform response data 1804 if (reason && reason.response) { 1805 reason.response.data = _transformData_js__WEBPACK_IMPORTED_MODULE_2__["default"].call( 1806 config, 1807 config.transformResponse, 1808 reason.response 1809 ); 1810 reason.response.headers = _core_AxiosHeaders_js__WEBPACK_IMPORTED_MODULE_1__["default"].from(reason.response.headers); 1811 } 1812 } 1813 1814 return Promise.reject(reason); 1815 }); 1816 } 1817 1818 1819 /***/ }), 1820 1821 /***/ "./node_modules/axios/lib/core/mergeConfig.js": 1822 /*!****************************************************!*\ 1823 !*** ./node_modules/axios/lib/core/mergeConfig.js ***! 1824 \****************************************************/ 1825 /***/ ((__unused_webpack___webpack_module__, __webpack_exports__, __webpack_require__) => { 1826 1827 __webpack_require__.r(__webpack_exports__); 1828 /* harmony export */ __webpack_require__.d(__webpack_exports__, { 1829 /* harmony export */ "default": () => (/* binding */ mergeConfig) 1830 /* harmony export */ }); 1831 /* harmony import */ var _utils_js__WEBPACK_IMPORTED_MODULE_1__ = __webpack_require__(/*! ../utils.js */ "./node_modules/axios/lib/utils.js"); 1832 /* harmony import */ var _AxiosHeaders_js__WEBPACK_IMPORTED_MODULE_0__ = __webpack_require__(/*! ./AxiosHeaders.js */ "./node_modules/axios/lib/core/AxiosHeaders.js"); 1833 1834 1835 1836 1837 1838 const headersToObject = (thing) => thing instanceof _AxiosHeaders_js__WEBPACK_IMPORTED_MODULE_0__["default"] ? { ...thing } : thing; 1839 1840 /** 1841 * Config-specific merge-function which creates a new config-object 1842 * by merging two configuration objects together. 1843 * 1844 * @param {Object} config1 1845 * @param {Object} config2 1846 * 1847 * @returns {Object} New object resulting from merging config2 to config1 1848 */ 1849 function mergeConfig(config1, config2) { 1850 // eslint-disable-next-line no-param-reassign 1851 config2 = config2 || {}; 1852 const config = {}; 1853 1854 function getMergedValue(target, source, prop, caseless) { 1855 if (_utils_js__WEBPACK_IMPORTED_MODULE_1__["default"].isPlainObject(target) && _utils_js__WEBPACK_IMPORTED_MODULE_1__["default"].isPlainObject(source)) { 1856 return _utils_js__WEBPACK_IMPORTED_MODULE_1__["default"].merge.call({caseless}, target, source); 1857 } else if (_utils_js__WEBPACK_IMPORTED_MODULE_1__["default"].isPlainObject(source)) { 1858 return _utils_js__WEBPACK_IMPORTED_MODULE_1__["default"].merge({}, source); 1859 } else if (_utils_js__WEBPACK_IMPORTED_MODULE_1__["default"].isArray(source)) { 1860 return source.slice(); 1861 } 1862 return source; 1863 } 1864 1865 // eslint-disable-next-line consistent-return 1866 function mergeDeepProperties(a, b, prop , caseless) { 1867 if (!_utils_js__WEBPACK_IMPORTED_MODULE_1__["default"].isUndefined(b)) { 1868 return getMergedValue(a, b, prop , caseless); 1869 } else if (!_utils_js__WEBPACK_IMPORTED_MODULE_1__["default"].isUndefined(a)) { 1870 return getMergedValue(undefined, a, prop , caseless); 1871 } 1872 } 1873 1874 // eslint-disable-next-line consistent-return 1875 function valueFromConfig2(a, b) { 1876 if (!_utils_js__WEBPACK_IMPORTED_MODULE_1__["default"].isUndefined(b)) { 1877 return getMergedValue(undefined, b); 1878 } 1879 } 1880 1881 // eslint-disable-next-line consistent-return 1882 function defaultToConfig2(a, b) { 1883 if (!_utils_js__WEBPACK_IMPORTED_MODULE_1__["default"].isUndefined(b)) { 1884 return getMergedValue(undefined, b); 1885 } else if (!_utils_js__WEBPACK_IMPORTED_MODULE_1__["default"].isUndefined(a)) { 1886 return getMergedValue(undefined, a); 1887 } 1888 } 1889 1890 // eslint-disable-next-line consistent-return 1891 function mergeDirectKeys(a, b, prop) { 1892 if (prop in config2) { 1893 return getMergedValue(a, b); 1894 } else if (prop in config1) { 1895 return getMergedValue(undefined, a); 1896 } 1897 } 1898 1899 const mergeMap = { 1900 url: valueFromConfig2, 1901 method: valueFromConfig2, 1902 data: valueFromConfig2, 1903 baseURL: defaultToConfig2, 1904 transformRequest: defaultToConfig2, 1905 transformResponse: defaultToConfig2, 1906 paramsSerializer: defaultToConfig2, 1907 timeout: defaultToConfig2, 1908 timeoutMessage: defaultToConfig2, 1909 withCredentials: defaultToConfig2, 1910 withXSRFToken: defaultToConfig2, 1911 adapter: defaultToConfig2, 1912 responseType: defaultToConfig2, 1913 xsrfCookieName: defaultToConfig2, 1914 xsrfHeaderName: defaultToConfig2, 1915 onUploadProgress: defaultToConfig2, 1916 onDownloadProgress: defaultToConfig2, 1917 decompress: defaultToConfig2, 1918 maxContentLength: defaultToConfig2, 1919 maxBodyLength: defaultToConfig2, 1920 beforeRedirect: defaultToConfig2, 1921 transport: defaultToConfig2, 1922 httpAgent: defaultToConfig2, 1923 httpsAgent: defaultToConfig2, 1924 cancelToken: defaultToConfig2, 1925 socketPath: defaultToConfig2, 1926 responseEncoding: defaultToConfig2, 1927 validateStatus: mergeDirectKeys, 1928 headers: (a, b , prop) => mergeDeepProperties(headersToObject(a), headersToObject(b),prop, true) 1929 }; 1930 1931 _utils_js__WEBPACK_IMPORTED_MODULE_1__["default"].forEach(Object.keys(Object.assign({}, config1, config2)), function computeConfigValue(prop) { 1932 const merge = mergeMap[prop] || mergeDeepProperties; 1933 const configValue = merge(config1[prop], config2[prop], prop); 1934 (_utils_js__WEBPACK_IMPORTED_MODULE_1__["default"].isUndefined(configValue) && merge !== mergeDirectKeys) || (config[prop] = configValue); 1935 }); 1936 1937 return config; 1938 } 1939 1940 1941 /***/ }), 1942 1943 /***/ "./node_modules/axios/lib/core/settle.js": 1944 /*!***********************************************!*\ 1945 !*** ./node_modules/axios/lib/core/settle.js ***! 1946 \***********************************************/ 1947 /***/ ((__unused_webpack___webpack_module__, __webpack_exports__, __webpack_require__) => { 1948 1949 __webpack_require__.r(__webpack_exports__); 1950 /* harmony export */ __webpack_require__.d(__webpack_exports__, { 1951 /* harmony export */ "default": () => (/* binding */ settle) 1952 /* harmony export */ }); 1953 /* harmony import */ var _AxiosError_js__WEBPACK_IMPORTED_MODULE_0__ = __webpack_require__(/*! ./AxiosError.js */ "./node_modules/axios/lib/core/AxiosError.js"); 1954 1955 1956 1957 1958 /** 1959 * Resolve or reject a Promise based on response status. 1960 * 1961 * @param {Function} resolve A function that resolves the promise. 1962 * @param {Function} reject A function that rejects the promise. 1963 * @param {object} response The response. 1964 * 1965 * @returns {object} The response. 1966 */ 1967 function settle(resolve, reject, response) { 1968 const validateStatus = response.config.validateStatus; 1969 if (!response.status || !validateStatus || validateStatus(response.status)) { 1970 resolve(response); 1971 } else { 1972 reject(new _AxiosError_js__WEBPACK_IMPORTED_MODULE_0__["default"]( 1973 'Request failed with status code ' + response.status, 1974 [_AxiosError_js__WEBPACK_IMPORTED_MODULE_0__["default"].ERR_BAD_REQUEST, _AxiosError_js__WEBPACK_IMPORTED_MODULE_0__["default"].ERR_BAD_RESPONSE][Math.floor(response.status / 100) - 4], 1975 response.config, 1976 response.request, 1977 response 1978 )); 1979 } 1980 } 1981 1982 1983 /***/ }), 1984 1985 /***/ "./node_modules/axios/lib/core/transformData.js": 1986 /*!******************************************************!*\ 1987 !*** ./node_modules/axios/lib/core/transformData.js ***! 1988 \******************************************************/ 1989 /***/ ((__unused_webpack___webpack_module__, __webpack_exports__, __webpack_require__) => { 1990 1991 __webpack_require__.r(__webpack_exports__); 1992 /* harmony export */ __webpack_require__.d(__webpack_exports__, { 1993 /* harmony export */ "default": () => (/* binding */ transformData) 1994 /* harmony export */ }); 1995 /* harmony import */ var _utils_js__WEBPACK_IMPORTED_MODULE_2__ = __webpack_require__(/*! ./../utils.js */ "./node_modules/axios/lib/utils.js"); 1996 /* harmony import */ var _defaults_index_js__WEBPACK_IMPORTED_MODULE_0__ = __webpack_require__(/*! ../defaults/index.js */ "./node_modules/axios/lib/defaults/index.js"); 1997 /* harmony import */ var _core_AxiosHeaders_js__WEBPACK_IMPORTED_MODULE_1__ = __webpack_require__(/*! ../core/AxiosHeaders.js */ "./node_modules/axios/lib/core/AxiosHeaders.js"); 1998 1999 2000 2001 2002 2003 2004 /** 2005 * Transform the data for a request or a response 2006 * 2007 * @param {Array|Function} fns A single function or Array of functions 2008 * @param {?Object} response The response object 2009 * 2010 * @returns {*} The resulting transformed data 2011 */ 2012 function transformData(fns, response) { 2013 const config = this || _defaults_index_js__WEBPACK_IMPORTED_MODULE_0__["default"]; 2014 const context = response || config; 2015 const headers = _core_AxiosHeaders_js__WEBPACK_IMPORTED_MODULE_1__["default"].from(context.headers); 2016 let data = context.data; 2017 2018 _utils_js__WEBPACK_IMPORTED_MODULE_2__["default"].forEach(fns, function transform(fn) { 2019 data = fn.call(config, data, headers.normalize(), response ? response.status : undefined); 2020 }); 2021 2022 headers.normalize(); 2023 2024 return data; 2025 } 2026 2027 2028 /***/ }), 2029 2030 /***/ "./node_modules/axios/lib/defaults/index.js": 2031 /*!**************************************************!*\ 2032 !*** ./node_modules/axios/lib/defaults/index.js ***! 2033 \**************************************************/ 2034 /***/ ((__unused_webpack___webpack_module__, __webpack_exports__, __webpack_require__) => { 2035 2036 __webpack_require__.r(__webpack_exports__); 2037 /* harmony export */ __webpack_require__.d(__webpack_exports__, { 2038 /* harmony export */ "default": () => (__WEBPACK_DEFAULT_EXPORT__) 2039 /* harmony export */ }); 2040 /* harmony import */ var _utils_js__WEBPACK_IMPORTED_MODULE_0__ = __webpack_require__(/*! ../utils.js */ "./node_modules/axios/lib/utils.js"); 2041 /* harmony import */ var _core_AxiosError_js__WEBPACK_IMPORTED_MODULE_5__ = __webpack_require__(/*! ../core/AxiosError.js */ "./node_modules/axios/lib/core/AxiosError.js"); 2042 /* harmony import */ var _transitional_js__WEBPACK_IMPORTED_MODULE_1__ = __webpack_require__(/*! ./transitional.js */ "./node_modules/axios/lib/defaults/transitional.js"); 2043 /* harmony import */ var _helpers_toFormData_js__WEBPACK_IMPORTED_MODULE_4__ = __webpack_require__(/*! ../helpers/toFormData.js */ "./node_modules/axios/lib/helpers/toFormData.js"); 2044 /* harmony import */ var _helpers_toURLEncodedForm_js__WEBPACK_IMPORTED_MODULE_3__ = __webpack_require__(/*! ../helpers/toURLEncodedForm.js */ "./node_modules/axios/lib/helpers/toURLEncodedForm.js"); 2045 /* harmony import */ var _platform_index_js__WEBPACK_IMPORTED_MODULE_6__ = __webpack_require__(/*! ../platform/index.js */ "./node_modules/axios/lib/platform/index.js"); 2046 /* harmony import */ var _helpers_formDataToJSON_js__WEBPACK_IMPORTED_MODULE_2__ = __webpack_require__(/*! ../helpers/formDataToJSON.js */ "./node_modules/axios/lib/helpers/formDataToJSON.js"); 2047 2048 2049 2050 2051 2052 2053 2054 2055 2056 2057 /** 2058 * It takes a string, tries to parse it, and if it fails, it returns the stringified version 2059 * of the input 2060 * 2061 * @param {any} rawValue - The value to be stringified. 2062 * @param {Function} parser - A function that parses a string into a JavaScript object. 2063 * @param {Function} encoder - A function that takes a value and returns a string. 2064 * 2065 * @returns {string} A stringified version of the rawValue. 2066 */ 2067 function stringifySafely(rawValue, parser, encoder) { 2068 if (_utils_js__WEBPACK_IMPORTED_MODULE_0__["default"].isString(rawValue)) { 2069 try { 2070 (parser || JSON.parse)(rawValue); 2071 return _utils_js__WEBPACK_IMPORTED_MODULE_0__["default"].trim(rawValue); 2072 } catch (e) { 2073 if (e.name !== 'SyntaxError') { 2074 throw e; 2075 } 2076 } 2077 } 2078 2079 return (encoder || JSON.stringify)(rawValue); 2080 } 2081 2082 const defaults = { 2083 2084 transitional: _transitional_js__WEBPACK_IMPORTED_MODULE_1__["default"], 2085 2086 adapter: ['xhr', 'http', 'fetch'], 2087 2088 transformRequest: [function transformRequest(data, headers) { 2089 const contentType = headers.getContentType() || ''; 2090 const hasJSONContentType = contentType.indexOf('application/json') > -1; 2091 const isObjectPayload = _utils_js__WEBPACK_IMPORTED_MODULE_0__["default"].isObject(data); 2092 2093 if (isObjectPayload && _utils_js__WEBPACK_IMPORTED_MODULE_0__["default"].isHTMLForm(data)) { 2094 data = new FormData(data); 2095 } 2096 2097 const isFormData = _utils_js__WEBPACK_IMPORTED_MODULE_0__["default"].isFormData(data); 2098 2099 if (isFormData) { 2100 return hasJSONContentType ? JSON.stringify((0,_helpers_formDataToJSON_js__WEBPACK_IMPORTED_MODULE_2__["default"])(data)) : data; 2101 } 2102 2103 if (_utils_js__WEBPACK_IMPORTED_MODULE_0__["default"].isArrayBuffer(data) || 2104 _utils_js__WEBPACK_IMPORTED_MODULE_0__["default"].isBuffer(data) || 2105 _utils_js__WEBPACK_IMPORTED_MODULE_0__["default"].isStream(data) || 2106 _utils_js__WEBPACK_IMPORTED_MODULE_0__["default"].isFile(data) || 2107 _utils_js__WEBPACK_IMPORTED_MODULE_0__["default"].isBlob(data) || 2108 _utils_js__WEBPACK_IMPORTED_MODULE_0__["default"].isReadableStream(data) 2109 ) { 2110 return data; 2111 } 2112 if (_utils_js__WEBPACK_IMPORTED_MODULE_0__["default"].isArrayBufferView(data)) { 2113 return data.buffer; 2114 } 2115 if (_utils_js__WEBPACK_IMPORTED_MODULE_0__["default"].isURLSearchParams(data)) { 2116 headers.setContentType('application/x-www-form-urlencoded;charset=utf-8', false); 2117 return data.toString(); 2118 } 2119 2120 let isFileList; 2121 2122 if (isObjectPayload) { 2123 if (contentType.indexOf('application/x-www-form-urlencoded') > -1) { 2124 return (0,_helpers_toURLEncodedForm_js__WEBPACK_IMPORTED_MODULE_3__["default"])(data, this.formSerializer).toString(); 2125 } 2126 2127 if ((isFileList = _utils_js__WEBPACK_IMPORTED_MODULE_0__["default"].isFileList(data)) || contentType.indexOf('multipart/form-data') > -1) { 2128 const _FormData = this.env && this.env.FormData; 2129 2130 return (0,_helpers_toFormData_js__WEBPACK_IMPORTED_MODULE_4__["default"])( 2131 isFileList ? {'files[]': data} : data, 2132 _FormData && new _FormData(), 2133 this.formSerializer 2134 ); 2135 } 2136 } 2137 2138 if (isObjectPayload || hasJSONContentType ) { 2139 headers.setContentType('application/json', false); 2140 return stringifySafely(data); 2141 } 2142 2143 return data; 2144 }], 2145 2146 transformResponse: [function transformResponse(data) { 2147 const transitional = this.transitional || defaults.transitional; 2148 const forcedJSONParsing = transitional && transitional.forcedJSONParsing; 2149 const JSONRequested = this.responseType === 'json'; 2150 2151 if (_utils_js__WEBPACK_IMPORTED_MODULE_0__["default"].isResponse(data) || _utils_js__WEBPACK_IMPORTED_MODULE_0__["default"].isReadableStream(data)) { 2152 return data; 2153 } 2154 2155 if (data && _utils_js__WEBPACK_IMPORTED_MODULE_0__["default"].isString(data) && ((forcedJSONParsing && !this.responseType) || JSONRequested)) { 2156 const silentJSONParsing = transitional && transitional.silentJSONParsing; 2157 const strictJSONParsing = !silentJSONParsing && JSONRequested; 2158 2159 try { 2160 return JSON.parse(data); 2161 } catch (e) { 2162 if (strictJSONParsing) { 2163 if (e.name === 'SyntaxError') { 2164 throw _core_AxiosError_js__WEBPACK_IMPORTED_MODULE_5__["default"].from(e, _core_AxiosError_js__WEBPACK_IMPORTED_MODULE_5__["default"].ERR_BAD_RESPONSE, this, null, this.response); 2165 } 2166 throw e; 2167 } 2168 } 2169 } 2170 2171 return data; 2172 }], 2173 2174 /** 2175 * A timeout in milliseconds to abort a request. If set to 0 (default) a 2176 * timeout is not created. 2177 */ 2178 timeout: 0, 2179 2180 xsrfCookieName: 'XSRF-TOKEN', 2181 xsrfHeaderName: 'X-XSRF-TOKEN', 2182 2183 maxContentLength: -1, 2184 maxBodyLength: -1, 2185 2186 env: { 2187 FormData: _platform_index_js__WEBPACK_IMPORTED_MODULE_6__["default"].classes.FormData, 2188 Blob: _platform_index_js__WEBPACK_IMPORTED_MODULE_6__["default"].classes.Blob 2189 }, 2190 2191 validateStatus: function validateStatus(status) { 2192 return status >= 200 && status < 300; 2193 }, 2194 2195 headers: { 2196 common: { 2197 'Accept': 'application/json, text/plain, */*', 2198 'Content-Type': undefined 2199 } 2200 } 2201 }; 2202 2203 _utils_js__WEBPACK_IMPORTED_MODULE_0__["default"].forEach(['delete', 'get', 'head', 'post', 'put', 'patch'], (method) => { 2204 defaults.headers[method] = {}; 2205 }); 2206 2207 /* harmony default export */ const __WEBPACK_DEFAULT_EXPORT__ = (defaults); 2208 2209 2210 /***/ }), 2211 2212 /***/ "./node_modules/axios/lib/defaults/transitional.js": 2213 /*!*********************************************************!*\ 2214 !*** ./node_modules/axios/lib/defaults/transitional.js ***! 2215 \*********************************************************/ 2216 /***/ ((__unused_webpack___webpack_module__, __webpack_exports__, __webpack_require__) => { 2217 2218 __webpack_require__.r(__webpack_exports__); 2219 /* harmony export */ __webpack_require__.d(__webpack_exports__, { 2220 /* harmony export */ "default": () => (__WEBPACK_DEFAULT_EXPORT__) 2221 /* harmony export */ }); 2222 2223 2224 /* harmony default export */ const __WEBPACK_DEFAULT_EXPORT__ = ({ 2225 silentJSONParsing: true, 2226 forcedJSONParsing: true, 2227 clarifyTimeoutError: false 2228 }); 2229 2230 2231 /***/ }), 2232 2233 /***/ "./node_modules/axios/lib/env/data.js": 2234 /*!********************************************!*\ 2235 !*** ./node_modules/axios/lib/env/data.js ***! 2236 \********************************************/ 2237 /***/ ((__unused_webpack___webpack_module__, __webpack_exports__, __webpack_require__) => { 2238 2239 __webpack_require__.r(__webpack_exports__); 2240 /* harmony export */ __webpack_require__.d(__webpack_exports__, { 2241 /* harmony export */ VERSION: () => (/* binding */ VERSION) 2242 /* harmony export */ }); 2243 const VERSION = "1.7.9"; 2244 2245 /***/ }), 2246 2247 /***/ "./node_modules/axios/lib/helpers/AxiosURLSearchParams.js": 2248 /*!****************************************************************!*\ 2249 !*** ./node_modules/axios/lib/helpers/AxiosURLSearchParams.js ***! 2250 \****************************************************************/ 2251 /***/ ((__unused_webpack___webpack_module__, __webpack_exports__, __webpack_require__) => { 2252 2253 __webpack_require__.r(__webpack_exports__); 2254 /* harmony export */ __webpack_require__.d(__webpack_exports__, { 2255 /* harmony export */ "default": () => (__WEBPACK_DEFAULT_EXPORT__) 2256 /* harmony export */ }); 2257 /* harmony import */ var _toFormData_js__WEBPACK_IMPORTED_MODULE_0__ = __webpack_require__(/*! ./toFormData.js */ "./node_modules/axios/lib/helpers/toFormData.js"); 2258 2259 2260 2261 2262 /** 2263 * It encodes a string by replacing all characters that are not in the unreserved set with 2264 * their percent-encoded equivalents 2265 * 2266 * @param {string} str - The string to encode. 2267 * 2268 * @returns {string} The encoded string. 2269 */ 2270 function encode(str) { 2271 const charMap = { 2272 '!': '%21', 2273 "'": '%27', 2274 '(': '%28', 2275 ')': '%29', 2276 '~': '%7E', 2277 '%20': '+', 2278 '%00': '\x00' 2279 }; 2280 return encodeURIComponent(str).replace(/[!'()~]|%20|%00/g, function replacer(match) { 2281 return charMap[match]; 2282 }); 2283 } 2284 2285 /** 2286 * It takes a params object and converts it to a FormData object 2287 * 2288 * @param {Object<string, any>} params - The parameters to be converted to a FormData object. 2289 * @param {Object<string, any>} options - The options object passed to the Axios constructor. 2290 * 2291 * @returns {void} 2292 */ 2293 function AxiosURLSearchParams(params, options) { 2294 this._pairs = []; 2295 2296 params && (0,_toFormData_js__WEBPACK_IMPORTED_MODULE_0__["default"])(params, this, options); 2297 } 2298 2299 const prototype = AxiosURLSearchParams.prototype; 2300 2301 prototype.append = function append(name, value) { 2302 this._pairs.push([name, value]); 2303 }; 2304 2305 prototype.toString = function toString(encoder) { 2306 const _encode = encoder ? function(value) { 2307 return encoder.call(this, value, encode); 2308 } : encode; 2309 2310 return this._pairs.map(function each(pair) { 2311 return _encode(pair[0]) + '=' + _encode(pair[1]); 2312 }, '').join('&'); 2313 }; 2314 2315 /* harmony default export */ const __WEBPACK_DEFAULT_EXPORT__ = (AxiosURLSearchParams); 2316 2317 2318 /***/ }), 2319 2320 /***/ "./node_modules/axios/lib/helpers/HttpStatusCode.js": 2321 /*!**********************************************************!*\ 2322 !*** ./node_modules/axios/lib/helpers/HttpStatusCode.js ***! 2323 \**********************************************************/ 2324 /***/ ((__unused_webpack___webpack_module__, __webpack_exports__, __webpack_require__) => { 2325 2326 __webpack_require__.r(__webpack_exports__); 2327 /* harmony export */ __webpack_require__.d(__webpack_exports__, { 2328 /* harmony export */ "default": () => (__WEBPACK_DEFAULT_EXPORT__) 2329 /* harmony export */ }); 2330 const HttpStatusCode = { 2331 Continue: 100, 2332 SwitchingProtocols: 101, 2333 Processing: 102, 2334 EarlyHints: 103, 2335 Ok: 200, 2336 Created: 201, 2337 Accepted: 202, 2338 NonAuthoritativeInformation: 203, 2339 NoContent: 204, 2340 ResetContent: 205, 2341 PartialContent: 206, 2342 MultiStatus: 207, 2343 AlreadyReported: 208, 2344 ImUsed: 226, 2345 MultipleChoices: 300, 2346 MovedPermanently: 301, 2347 Found: 302, 2348 SeeOther: 303, 2349 NotModified: 304, 2350 UseProxy: 305, 2351 Unused: 306, 2352 TemporaryRedirect: 307, 2353 PermanentRedirect: 308, 2354 BadRequest: 400, 2355 Unauthorized: 401, 2356 PaymentRequired: 402, 2357 Forbidden: 403, 2358 NotFound: 404, 2359 MethodNotAllowed: 405, 2360 NotAcceptable: 406, 2361 ProxyAuthenticationRequired: 407, 2362 RequestTimeout: 408, 2363 Conflict: 409, 2364 Gone: 410, 2365 LengthRequired: 411, 2366 PreconditionFailed: 412, 2367 PayloadTooLarge: 413, 2368 UriTooLong: 414, 2369 UnsupportedMediaType: 415, 2370 RangeNotSatisfiable: 416, 2371 ExpectationFailed: 417, 2372 ImATeapot: 418, 2373 MisdirectedRequest: 421, 2374 UnprocessableEntity: 422, 2375 Locked: 423, 2376 FailedDependency: 424, 2377 TooEarly: 425, 2378 UpgradeRequired: 426, 2379 PreconditionRequired: 428, 2380 TooManyRequests: 429, 2381 RequestHeaderFieldsTooLarge: 431, 2382 UnavailableForLegalReasons: 451, 2383 InternalServerError: 500, 2384 NotImplemented: 501, 2385 BadGateway: 502, 2386 ServiceUnavailable: 503, 2387 GatewayTimeout: 504, 2388 HttpVersionNotSupported: 505, 2389 VariantAlsoNegotiates: 506, 2390 InsufficientStorage: 507, 2391 LoopDetected: 508, 2392 NotExtended: 510, 2393 NetworkAuthenticationRequired: 511, 2394 }; 2395 2396 Object.entries(HttpStatusCode).forEach(([key, value]) => { 2397 HttpStatusCode[value] = key; 2398 }); 2399 2400 /* harmony default export */ const __WEBPACK_DEFAULT_EXPORT__ = (HttpStatusCode); 2401 2402 2403 /***/ }), 2404 2405 /***/ "./node_modules/axios/lib/helpers/bind.js": 2406 /*!************************************************!*\ 2407 !*** ./node_modules/axios/lib/helpers/bind.js ***! 2408 \************************************************/ 2409 /***/ ((__unused_webpack___webpack_module__, __webpack_exports__, __webpack_require__) => { 2410 2411 __webpack_require__.r(__webpack_exports__); 2412 /* harmony export */ __webpack_require__.d(__webpack_exports__, { 2413 /* harmony export */ "default": () => (/* binding */ bind) 2414 /* harmony export */ }); 2415 2416 2417 function bind(fn, thisArg) { 2418 return function wrap() { 2419 return fn.apply(thisArg, arguments); 2420 }; 2421 } 2422 2423 2424 /***/ }), 2425 2426 /***/ "./node_modules/axios/lib/helpers/buildURL.js": 2427 /*!****************************************************!*\ 2428 !*** ./node_modules/axios/lib/helpers/buildURL.js ***! 2429 \****************************************************/ 2430 /***/ ((__unused_webpack___webpack_module__, __webpack_exports__, __webpack_require__) => { 2431 2432 __webpack_require__.r(__webpack_exports__); 2433 /* harmony export */ __webpack_require__.d(__webpack_exports__, { 2434 /* harmony export */ "default": () => (/* binding */ buildURL) 2435 /* harmony export */ }); 2436 /* harmony import */ var _utils_js__WEBPACK_IMPORTED_MODULE_0__ = __webpack_require__(/*! ../utils.js */ "./node_modules/axios/lib/utils.js"); 2437 /* harmony import */ var _helpers_AxiosURLSearchParams_js__WEBPACK_IMPORTED_MODULE_1__ = __webpack_require__(/*! ../helpers/AxiosURLSearchParams.js */ "./node_modules/axios/lib/helpers/AxiosURLSearchParams.js"); 2438 2439 2440 2441 2442 2443 /** 2444 * It replaces all instances of the characters `:`, `$`, `,`, `+`, `[`, and `]` with their 2445 * URI encoded counterparts 2446 * 2447 * @param {string} val The value to be encoded. 2448 * 2449 * @returns {string} The encoded value. 2450 */ 2451 function encode(val) { 2452 return encodeURIComponent(val). 2453 replace(/%3A/gi, ':'). 2454 replace(/%24/g, '$'). 2455 replace(/%2C/gi, ','). 2456 replace(/%20/g, '+'). 2457 replace(/%5B/gi, '['). 2458 replace(/%5D/gi, ']'); 2459 } 2460 2461 /** 2462 * Build a URL by appending params to the end 2463 * 2464 * @param {string} url The base of the url (e.g., http://www.google.com) 2465 * @param {object} [params] The params to be appended 2466 * @param {?(object|Function)} options 2467 * 2468 * @returns {string} The formatted url 2469 */ 2470 function buildURL(url, params, options) { 2471 /*eslint no-param-reassign:0*/ 2472 if (!params) { 2473 return url; 2474 } 2475 2476 const _encode = options && options.encode || encode; 2477 2478 if (_utils_js__WEBPACK_IMPORTED_MODULE_0__["default"].isFunction(options)) { 2479 options = { 2480 serialize: options 2481 }; 2482 } 2483 2484 const serializeFn = options && options.serialize; 2485 2486 let serializedParams; 2487 2488 if (serializeFn) { 2489 serializedParams = serializeFn(params, options); 2490 } else { 2491 serializedParams = _utils_js__WEBPACK_IMPORTED_MODULE_0__["default"].isURLSearchParams(params) ? 2492 params.toString() : 2493 new _helpers_AxiosURLSearchParams_js__WEBPACK_IMPORTED_MODULE_1__["default"](params, options).toString(_encode); 2494 } 2495 2496 if (serializedParams) { 2497 const hashmarkIndex = url.indexOf("#"); 2498 2499 if (hashmarkIndex !== -1) { 2500 url = url.slice(0, hashmarkIndex); 2501 } 2502 url += (url.indexOf('?') === -1 ? '?' : '&') + serializedParams; 2503 } 2504 2505 return url; 2506 } 2507 2508 2509 /***/ }), 2510 2511 /***/ "./node_modules/axios/lib/helpers/combineURLs.js": 2512 /*!*******************************************************!*\ 2513 !*** ./node_modules/axios/lib/helpers/combineURLs.js ***! 2514 \*******************************************************/ 2515 /***/ ((__unused_webpack___webpack_module__, __webpack_exports__, __webpack_require__) => { 2516 2517 __webpack_require__.r(__webpack_exports__); 2518 /* harmony export */ __webpack_require__.d(__webpack_exports__, { 2519 /* harmony export */ "default": () => (/* binding */ combineURLs) 2520 /* harmony export */ }); 2521 2522 2523 /** 2524 * Creates a new URL by combining the specified URLs 2525 * 2526 * @param {string} baseURL The base URL 2527 * @param {string} relativeURL The relative URL 2528 * 2529 * @returns {string} The combined URL 2530 */ 2531 function combineURLs(baseURL, relativeURL) { 2532 return relativeURL 2533 ? baseURL.replace(/\/?\/$/, '') + '/' + relativeURL.replace(/^\/+/, '') 2534 : baseURL; 2535 } 2536 2537 2538 /***/ }), 2539 2540 /***/ "./node_modules/axios/lib/helpers/composeSignals.js": 2541 /*!**********************************************************!*\ 2542 !*** ./node_modules/axios/lib/helpers/composeSignals.js ***! 2543 \**********************************************************/ 2544 /***/ ((__unused_webpack___webpack_module__, __webpack_exports__, __webpack_require__) => { 2545 2546 __webpack_require__.r(__webpack_exports__); 2547 /* harmony export */ __webpack_require__.d(__webpack_exports__, { 2548 /* harmony export */ "default": () => (__WEBPACK_DEFAULT_EXPORT__) 2549 /* harmony export */ }); 2550 /* harmony import */ var _cancel_CanceledError_js__WEBPACK_IMPORTED_MODULE_1__ = __webpack_require__(/*! ../cancel/CanceledError.js */ "./node_modules/axios/lib/cancel/CanceledError.js"); 2551 /* harmony import */ var _core_AxiosError_js__WEBPACK_IMPORTED_MODULE_0__ = __webpack_require__(/*! ../core/AxiosError.js */ "./node_modules/axios/lib/core/AxiosError.js"); 2552 /* harmony import */ var _utils_js__WEBPACK_IMPORTED_MODULE_2__ = __webpack_require__(/*! ../utils.js */ "./node_modules/axios/lib/utils.js"); 2553 2554 2555 2556 2557 const composeSignals = (signals, timeout) => { 2558 const {length} = (signals = signals ? signals.filter(Boolean) : []); 2559 2560 if (timeout || length) { 2561 let controller = new AbortController(); 2562 2563 let aborted; 2564 2565 const onabort = function (reason) { 2566 if (!aborted) { 2567 aborted = true; 2568 unsubscribe(); 2569 const err = reason instanceof Error ? reason : this.reason; 2570 controller.abort(err instanceof _core_AxiosError_js__WEBPACK_IMPORTED_MODULE_0__["default"] ? err : new _cancel_CanceledError_js__WEBPACK_IMPORTED_MODULE_1__["default"](err instanceof Error ? err.message : err)); 2571 } 2572 } 2573 2574 let timer = timeout && setTimeout(() => { 2575 timer = null; 2576 onabort(new _core_AxiosError_js__WEBPACK_IMPORTED_MODULE_0__["default"](`timeout ${timeout} of ms exceeded`, _core_AxiosError_js__WEBPACK_IMPORTED_MODULE_0__["default"].ETIMEDOUT)) 2577 }, timeout) 2578 2579 const unsubscribe = () => { 2580 if (signals) { 2581 timer && clearTimeout(timer); 2582 timer = null; 2583 signals.forEach(signal => { 2584 signal.unsubscribe ? signal.unsubscribe(onabort) : signal.removeEventListener('abort', onabort); 2585 }); 2586 signals = null; 2587 } 2588 } 2589 2590 signals.forEach((signal) => signal.addEventListener('abort', onabort)); 2591 2592 const {signal} = controller; 2593 2594 signal.unsubscribe = () => _utils_js__WEBPACK_IMPORTED_MODULE_2__["default"].asap(unsubscribe); 2595 2596 return signal; 2597 } 2598 } 2599 2600 /* harmony default export */ const __WEBPACK_DEFAULT_EXPORT__ = (composeSignals); 2601 2602 2603 /***/ }), 2604 2605 /***/ "./node_modules/axios/lib/helpers/cookies.js": 2606 /*!***************************************************!*\ 2607 !*** ./node_modules/axios/lib/helpers/cookies.js ***! 2608 \***************************************************/ 2609 /***/ ((__unused_webpack___webpack_module__, __webpack_exports__, __webpack_require__) => { 2610 2611 __webpack_require__.r(__webpack_exports__); 2612 /* harmony export */ __webpack_require__.d(__webpack_exports__, { 2613 /* harmony export */ "default": () => (__WEBPACK_DEFAULT_EXPORT__) 2614 /* harmony export */ }); 2615 /* harmony import */ var _utils_js__WEBPACK_IMPORTED_MODULE_1__ = __webpack_require__(/*! ./../utils.js */ "./node_modules/axios/lib/utils.js"); 2616 /* harmony import */ var _platform_index_js__WEBPACK_IMPORTED_MODULE_0__ = __webpack_require__(/*! ../platform/index.js */ "./node_modules/axios/lib/platform/index.js"); 2617 2618 2619 2620 /* harmony default export */ const __WEBPACK_DEFAULT_EXPORT__ = (_platform_index_js__WEBPACK_IMPORTED_MODULE_0__["default"].hasStandardBrowserEnv ? 2621 2622 // Standard browser envs support document.cookie 2623 { 2624 write(name, value, expires, path, domain, secure) { 2625 const cookie = [name + '=' + encodeURIComponent(value)]; 2626 2627 _utils_js__WEBPACK_IMPORTED_MODULE_1__["default"].isNumber(expires) && cookie.push('expires=' + new Date(expires).toGMTString()); 2628 2629 _utils_js__WEBPACK_IMPORTED_MODULE_1__["default"].isString(path) && cookie.push('path=' + path); 2630 2631 _utils_js__WEBPACK_IMPORTED_MODULE_1__["default"].isString(domain) && cookie.push('domain=' + domain); 2632 2633 secure === true && cookie.push('secure'); 2634 2635 document.cookie = cookie.join('; '); 2636 }, 2637 2638 read(name) { 2639 const match = document.cookie.match(new RegExp('(^|;\\s*)(' + name + ')=([^;]*)')); 2640 return (match ? decodeURIComponent(match[3]) : null); 2641 }, 2642 2643 remove(name) { 2644 this.write(name, '', Date.now() - 86400000); 2645 } 2646 } 2647 2648 : 2649 2650 // Non-standard browser env (web workers, react-native) lack needed support. 2651 { 2652 write() {}, 2653 read() { 2654 return null; 2655 }, 2656 remove() {} 2657 }); 2658 2659 2660 2661 /***/ }), 2662 2663 /***/ "./node_modules/axios/lib/helpers/formDataToJSON.js": 2664 /*!**********************************************************!*\ 2665 !*** ./node_modules/axios/lib/helpers/formDataToJSON.js ***! 2666 \**********************************************************/ 2667 /***/ ((__unused_webpack___webpack_module__, __webpack_exports__, __webpack_require__) => { 2668 2669 __webpack_require__.r(__webpack_exports__); 2670 /* harmony export */ __webpack_require__.d(__webpack_exports__, { 2671 /* harmony export */ "default": () => (__WEBPACK_DEFAULT_EXPORT__) 2672 /* harmony export */ }); 2673 /* harmony import */ var _utils_js__WEBPACK_IMPORTED_MODULE_0__ = __webpack_require__(/*! ../utils.js */ "./node_modules/axios/lib/utils.js"); 2674 2675 2676 2677 2678 /** 2679 * It takes a string like `foo[x][y][z]` and returns an array like `['foo', 'x', 'y', 'z'] 2680 * 2681 * @param {string} name - The name of the property to get. 2682 * 2683 * @returns An array of strings. 2684 */ 2685 function parsePropPath(name) { 2686 // foo[x][y][z] 2687 // foo.x.y.z 2688 // foo-x-y-z 2689 // foo x y z 2690 return _utils_js__WEBPACK_IMPORTED_MODULE_0__["default"].matchAll(/\w+|\[(\w*)]/g, name).map(match => { 2691 return match[0] === '[]' ? '' : match[1] || match[0]; 2692 }); 2693 } 2694 2695 /** 2696 * Convert an array to an object. 2697 * 2698 * @param {Array<any>} arr - The array to convert to an object. 2699 * 2700 * @returns An object with the same keys and values as the array. 2701 */ 2702 function arrayToObject(arr) { 2703 const obj = {}; 2704 const keys = Object.keys(arr); 2705 let i; 2706 const len = keys.length; 2707 let key; 2708 for (i = 0; i < len; i++) { 2709 key = keys[i]; 2710 obj[key] = arr[key]; 2711 } 2712 return obj; 2713 } 2714 2715 /** 2716 * It takes a FormData object and returns a JavaScript object 2717 * 2718 * @param {string} formData The FormData object to convert to JSON. 2719 * 2720 * @returns {Object<string, any> | null} The converted object. 2721 */ 2722 function formDataToJSON(formData) { 2723 function buildPath(path, value, target, index) { 2724 let name = path[index++]; 2725 2726 if (name === '__proto__') return true; 2727 2728 const isNumericKey = Number.isFinite(+name); 2729 const isLast = index >= path.length; 2730 name = !name && _utils_js__WEBPACK_IMPORTED_MODULE_0__["default"].isArray(target) ? target.length : name; 2731 2732 if (isLast) { 2733 if (_utils_js__WEBPACK_IMPORTED_MODULE_0__["default"].hasOwnProp(target, name)) { 2734 target[name] = [target[name], value]; 2735 } else { 2736 target[name] = value; 2737 } 2738 2739 return !isNumericKey; 2740 } 2741 2742 if (!target[name] || !_utils_js__WEBPACK_IMPORTED_MODULE_0__["default"].isObject(target[name])) { 2743 target[name] = []; 2744 } 2745 2746 const result = buildPath(path, value, target[name], index); 2747 2748 if (result && _utils_js__WEBPACK_IMPORTED_MODULE_0__["default"].isArray(target[name])) { 2749 target[name] = arrayToObject(target[name]); 2750 } 2751 2752 return !isNumericKey; 2753 } 2754 2755 if (_utils_js__WEBPACK_IMPORTED_MODULE_0__["default"].isFormData(formData) && _utils_js__WEBPACK_IMPORTED_MODULE_0__["default"].isFunction(formData.entries)) { 2756 const obj = {}; 2757 2758 _utils_js__WEBPACK_IMPORTED_MODULE_0__["default"].forEachEntry(formData, (name, value) => { 2759 buildPath(parsePropPath(name), value, obj, 0); 2760 }); 2761 2762 return obj; 2763 } 2764 2765 return null; 2766 } 2767 2768 /* harmony default export */ const __WEBPACK_DEFAULT_EXPORT__ = (formDataToJSON); 2769 2770 2771 /***/ }), 2772 2773 /***/ "./node_modules/axios/lib/helpers/isAbsoluteURL.js": 2774 /*!*********************************************************!*\ 2775 !*** ./node_modules/axios/lib/helpers/isAbsoluteURL.js ***! 2776 \*********************************************************/ 2777 /***/ ((__unused_webpack___webpack_module__, __webpack_exports__, __webpack_require__) => { 2778 2779 __webpack_require__.r(__webpack_exports__); 2780 /* harmony export */ __webpack_require__.d(__webpack_exports__, { 2781 /* harmony export */ "default": () => (/* binding */ isAbsoluteURL) 2782 /* harmony export */ }); 2783 2784 2785 /** 2786 * Determines whether the specified URL is absolute 2787 * 2788 * @param {string} url The URL to test 2789 * 2790 * @returns {boolean} True if the specified URL is absolute, otherwise false 2791 */ 2792 function isAbsoluteURL(url) { 2793 // A URL is considered absolute if it begins with "<scheme>://" or "//" (protocol-relative URL). 2794 // RFC 3986 defines scheme name as a sequence of characters beginning with a letter and followed 2795 // by any combination of letters, digits, plus, period, or hyphen. 2796 return /^([a-z][a-z\d+\-.]*:)?\/\//i.test(url); 2797 } 2798 2799 2800 /***/ }), 2801 2802 /***/ "./node_modules/axios/lib/helpers/isAxiosError.js": 2803 /*!********************************************************!*\ 2804 !*** ./node_modules/axios/lib/helpers/isAxiosError.js ***! 2805 \********************************************************/ 2806 /***/ ((__unused_webpack___webpack_module__, __webpack_exports__, __webpack_require__) => { 2807 2808 __webpack_require__.r(__webpack_exports__); 2809 /* harmony export */ __webpack_require__.d(__webpack_exports__, { 2810 /* harmony export */ "default": () => (/* binding */ isAxiosError) 2811 /* harmony export */ }); 2812 /* harmony import */ var _utils_js__WEBPACK_IMPORTED_MODULE_0__ = __webpack_require__(/*! ./../utils.js */ "./node_modules/axios/lib/utils.js"); 2813 2814 2815 2816 2817 /** 2818 * Determines whether the payload is an error thrown by Axios 2819 * 2820 * @param {*} payload The value to test 2821 * 2822 * @returns {boolean} True if the payload is an error thrown by Axios, otherwise false 2823 */ 2824 function isAxiosError(payload) { 2825 return _utils_js__WEBPACK_IMPORTED_MODULE_0__["default"].isObject(payload) && (payload.isAxiosError === true); 2826 } 2827 2828 2829 /***/ }), 2830 2831 /***/ "./node_modules/axios/lib/helpers/isURLSameOrigin.js": 2832 /*!***********************************************************!*\ 2833 !*** ./node_modules/axios/lib/helpers/isURLSameOrigin.js ***! 2834 \***********************************************************/ 2835 /***/ ((__unused_webpack___webpack_module__, __webpack_exports__, __webpack_require__) => { 2836 2837 __webpack_require__.r(__webpack_exports__); 2838 /* harmony export */ __webpack_require__.d(__webpack_exports__, { 2839 /* harmony export */ "default": () => (__WEBPACK_DEFAULT_EXPORT__) 2840 /* harmony export */ }); 2841 /* harmony import */ var _platform_index_js__WEBPACK_IMPORTED_MODULE_0__ = __webpack_require__(/*! ../platform/index.js */ "./node_modules/axios/lib/platform/index.js"); 2842 2843 2844 /* harmony default export */ const __WEBPACK_DEFAULT_EXPORT__ = (_platform_index_js__WEBPACK_IMPORTED_MODULE_0__["default"].hasStandardBrowserEnv ? ((origin, isMSIE) => (url) => { 2845 url = new URL(url, _platform_index_js__WEBPACK_IMPORTED_MODULE_0__["default"].origin); 2846 2847 return ( 2848 origin.protocol === url.protocol && 2849 origin.host === url.host && 2850 (isMSIE || origin.port === url.port) 2851 ); 2852 })( 2853 new URL(_platform_index_js__WEBPACK_IMPORTED_MODULE_0__["default"].origin), 2854 _platform_index_js__WEBPACK_IMPORTED_MODULE_0__["default"].navigator && /(msie|trident)/i.test(_platform_index_js__WEBPACK_IMPORTED_MODULE_0__["default"].navigator.userAgent) 2855 ) : () => true); 2856 2857 2858 /***/ }), 2859 2860 /***/ "./node_modules/axios/lib/helpers/null.js": 2861 /*!************************************************!*\ 2862 !*** ./node_modules/axios/lib/helpers/null.js ***! 2863 \************************************************/ 2864 /***/ ((__unused_webpack___webpack_module__, __webpack_exports__, __webpack_require__) => { 2865 2866 __webpack_require__.r(__webpack_exports__); 2867 /* harmony export */ __webpack_require__.d(__webpack_exports__, { 2868 /* harmony export */ "default": () => (__WEBPACK_DEFAULT_EXPORT__) 2869 /* harmony export */ }); 2870 // eslint-disable-next-line strict 2871 /* harmony default export */ const __WEBPACK_DEFAULT_EXPORT__ = (null); 2872 2873 2874 /***/ }), 2875 2876 /***/ "./node_modules/axios/lib/helpers/parseHeaders.js": 2877 /*!********************************************************!*\ 2878 !*** ./node_modules/axios/lib/helpers/parseHeaders.js ***! 2879 \********************************************************/ 2880 /***/ ((__unused_webpack___webpack_module__, __webpack_exports__, __webpack_require__) => { 2881 2882 __webpack_require__.r(__webpack_exports__); 2883 /* harmony export */ __webpack_require__.d(__webpack_exports__, { 2884 /* harmony export */ "default": () => (__WEBPACK_DEFAULT_EXPORT__) 2885 /* harmony export */ }); 2886 /* harmony import */ var _utils_js__WEBPACK_IMPORTED_MODULE_0__ = __webpack_require__(/*! ./../utils.js */ "./node_modules/axios/lib/utils.js"); 2887 2888 2889 2890 2891 // RawAxiosHeaders whose duplicates are ignored by node 2892 // c.f. https://nodejs.org/api/http.html#http_message_headers 2893 const ignoreDuplicateOf = _utils_js__WEBPACK_IMPORTED_MODULE_0__["default"].toObjectSet([ 2894 'age', 'authorization', 'content-length', 'content-type', 'etag', 2895 'expires', 'from', 'host', 'if-modified-since', 'if-unmodified-since', 2896 'last-modified', 'location', 'max-forwards', 'proxy-authorization', 2897 'referer', 'retry-after', 'user-agent' 2898 ]); 2899 2900 /** 2901 * Parse headers into an object 2902 * 2903 * ``` 2904 * Date: Wed, 27 Aug 2014 08:58:49 GMT 2905 * Content-Type: application/json 2906 * Connection: keep-alive 2907 * Transfer-Encoding: chunked 2908 * ``` 2909 * 2910 * @param {String} rawHeaders Headers needing to be parsed 2911 * 2912 * @returns {Object} Headers parsed into an object 2913 */ 2914 /* harmony default export */ const __WEBPACK_DEFAULT_EXPORT__ = (rawHeaders => { 2915 const parsed = {}; 2916 let key; 2917 let val; 2918 let i; 2919 2920 rawHeaders && rawHeaders.split('\n').forEach(function parser(line) { 2921 i = line.indexOf(':'); 2922 key = line.substring(0, i).trim().toLowerCase(); 2923 val = line.substring(i + 1).trim(); 2924 2925 if (!key || (parsed[key] && ignoreDuplicateOf[key])) { 2926 return; 2927 } 2928 2929 if (key === 'set-cookie') { 2930 if (parsed[key]) { 2931 parsed[key].push(val); 2932 } else { 2933 parsed[key] = [val]; 2934 } 2935 } else { 2936 parsed[key] = parsed[key] ? parsed[key] + ', ' + val : val; 2937 } 2938 }); 2939 2940 return parsed; 2941 }); 2942 2943 2944 /***/ }), 2945 2946 /***/ "./node_modules/axios/lib/helpers/parseProtocol.js": 2947 /*!*********************************************************!*\ 2948 !*** ./node_modules/axios/lib/helpers/parseProtocol.js ***! 2949 \*********************************************************/ 2950 /***/ ((__unused_webpack___webpack_module__, __webpack_exports__, __webpack_require__) => { 2951 2952 __webpack_require__.r(__webpack_exports__); 2953 /* harmony export */ __webpack_require__.d(__webpack_exports__, { 2954 /* harmony export */ "default": () => (/* binding */ parseProtocol) 2955 /* harmony export */ }); 2956 2957 2958 function parseProtocol(url) { 2959 const match = /^([-+\w]{1,25})(:?\/\/|:)/.exec(url); 2960 return match && match[1] || ''; 2961 } 2962 2963 2964 /***/ }), 2965 2966 /***/ "./node_modules/axios/lib/helpers/progressEventReducer.js": 2967 /*!****************************************************************!*\ 2968 !*** ./node_modules/axios/lib/helpers/progressEventReducer.js ***! 2969 \****************************************************************/ 2970 /***/ ((__unused_webpack___webpack_module__, __webpack_exports__, __webpack_require__) => { 2971 2972 __webpack_require__.r(__webpack_exports__); 2973 /* harmony export */ __webpack_require__.d(__webpack_exports__, { 2974 /* harmony export */ asyncDecorator: () => (/* binding */ asyncDecorator), 2975 /* harmony export */ progressEventDecorator: () => (/* binding */ progressEventDecorator), 2976 /* harmony export */ progressEventReducer: () => (/* binding */ progressEventReducer) 2977 /* harmony export */ }); 2978 /* harmony import */ var _speedometer_js__WEBPACK_IMPORTED_MODULE_0__ = __webpack_require__(/*! ./speedometer.js */ "./node_modules/axios/lib/helpers/speedometer.js"); 2979 /* harmony import */ var _throttle_js__WEBPACK_IMPORTED_MODULE_1__ = __webpack_require__(/*! ./throttle.js */ "./node_modules/axios/lib/helpers/throttle.js"); 2980 /* harmony import */ var _utils_js__WEBPACK_IMPORTED_MODULE_2__ = __webpack_require__(/*! ../utils.js */ "./node_modules/axios/lib/utils.js"); 2981 2982 2983 2984 2985 const progressEventReducer = (listener, isDownloadStream, freq = 3) => { 2986 let bytesNotified = 0; 2987 const _speedometer = (0,_speedometer_js__WEBPACK_IMPORTED_MODULE_0__["default"])(50, 250); 2988 2989 return (0,_throttle_js__WEBPACK_IMPORTED_MODULE_1__["default"])(e => { 2990 const loaded = e.loaded; 2991 const total = e.lengthComputable ? e.total : undefined; 2992 const progressBytes = loaded - bytesNotified; 2993 const rate = _speedometer(progressBytes); 2994 const inRange = loaded <= total; 2995 2996 bytesNotified = loaded; 2997 2998 const data = { 2999 loaded, 3000 total, 3001 progress: total ? (loaded / total) : undefined, 3002 bytes: progressBytes, 3003 rate: rate ? rate : undefined, 3004 estimated: rate && total && inRange ? (total - loaded) / rate : undefined, 3005 event: e, 3006 lengthComputable: total != null, 3007 [isDownloadStream ? 'download' : 'upload']: true 3008 }; 3009 3010 listener(data); 3011 }, freq); 3012 } 3013 3014 const progressEventDecorator = (total, throttled) => { 3015 const lengthComputable = total != null; 3016 3017 return [(loaded) => throttled[0]({ 3018 lengthComputable, 3019 total, 3020 loaded 3021 }), throttled[1]]; 3022 } 3023 3024 const asyncDecorator = (fn) => (...args) => _utils_js__WEBPACK_IMPORTED_MODULE_2__["default"].asap(() => fn(...args)); 3025 3026 3027 /***/ }), 3028 3029 /***/ "./node_modules/axios/lib/helpers/resolveConfig.js": 3030 /*!*********************************************************!*\ 3031 !*** ./node_modules/axios/lib/helpers/resolveConfig.js ***! 3032 \*********************************************************/ 3033 /***/ ((__unused_webpack___webpack_module__, __webpack_exports__, __webpack_require__) => { 3034 3035 __webpack_require__.r(__webpack_exports__); 3036 /* harmony export */ __webpack_require__.d(__webpack_exports__, { 3037 /* harmony export */ "default": () => (__WEBPACK_DEFAULT_EXPORT__) 3038 /* harmony export */ }); 3039 /* harmony import */ var _platform_index_js__WEBPACK_IMPORTED_MODULE_5__ = __webpack_require__(/*! ../platform/index.js */ "./node_modules/axios/lib/platform/index.js"); 3040 /* harmony import */ var _utils_js__WEBPACK_IMPORTED_MODULE_4__ = __webpack_require__(/*! ../utils.js */ "./node_modules/axios/lib/utils.js"); 3041 /* harmony import */ var _isURLSameOrigin_js__WEBPACK_IMPORTED_MODULE_6__ = __webpack_require__(/*! ./isURLSameOrigin.js */ "./node_modules/axios/lib/helpers/isURLSameOrigin.js"); 3042 /* harmony import */ var _cookies_js__WEBPACK_IMPORTED_MODULE_7__ = __webpack_require__(/*! ./cookies.js */ "./node_modules/axios/lib/helpers/cookies.js"); 3043 /* harmony import */ var _core_buildFullPath_js__WEBPACK_IMPORTED_MODULE_3__ = __webpack_require__(/*! ../core/buildFullPath.js */ "./node_modules/axios/lib/core/buildFullPath.js"); 3044 /* harmony import */ var _core_mergeConfig_js__WEBPACK_IMPORTED_MODULE_0__ = __webpack_require__(/*! ../core/mergeConfig.js */ "./node_modules/axios/lib/core/mergeConfig.js"); 3045 /* harmony import */ var _core_AxiosHeaders_js__WEBPACK_IMPORTED_MODULE_1__ = __webpack_require__(/*! ../core/AxiosHeaders.js */ "./node_modules/axios/lib/core/AxiosHeaders.js"); 3046 /* harmony import */ var _buildURL_js__WEBPACK_IMPORTED_MODULE_2__ = __webpack_require__(/*! ./buildURL.js */ "./node_modules/axios/lib/helpers/buildURL.js"); 3047 3048 3049 3050 3051 3052 3053 3054 3055 3056 /* harmony default export */ const __WEBPACK_DEFAULT_EXPORT__ = ((config) => { 3057 const newConfig = (0,_core_mergeConfig_js__WEBPACK_IMPORTED_MODULE_0__["default"])({}, config); 3058 3059 let {data, withXSRFToken, xsrfHeaderName, xsrfCookieName, headers, auth} = newConfig; 3060 3061 newConfig.headers = headers = _core_AxiosHeaders_js__WEBPACK_IMPORTED_MODULE_1__["default"].from(headers); 3062 3063 newConfig.url = (0,_buildURL_js__WEBPACK_IMPORTED_MODULE_2__["default"])((0,_core_buildFullPath_js__WEBPACK_IMPORTED_MODULE_3__["default"])(newConfig.baseURL, newConfig.url), config.params, config.paramsSerializer); 3064 3065 // HTTP basic authentication 3066 if (auth) { 3067 headers.set('Authorization', 'Basic ' + 3068 btoa((auth.username || '') + ':' + (auth.password ? unescape(encodeURIComponent(auth.password)) : '')) 3069 ); 3070 } 3071 3072 let contentType; 3073 3074 if (_utils_js__WEBPACK_IMPORTED_MODULE_4__["default"].isFormData(data)) { 3075 if (_platform_index_js__WEBPACK_IMPORTED_MODULE_5__["default"].hasStandardBrowserEnv || _platform_index_js__WEBPACK_IMPORTED_MODULE_5__["default"].hasStandardBrowserWebWorkerEnv) { 3076 headers.setContentType(undefined); // Let the browser set it 3077 } else if ((contentType = headers.getContentType()) !== false) { 3078 // fix semicolon duplication issue for ReactNative FormData implementation 3079 const [type, ...tokens] = contentType ? contentType.split(';').map(token => token.trim()).filter(Boolean) : []; 3080 headers.setContentType([type || 'multipart/form-data', ...tokens].join('; ')); 3081 } 3082 } 3083 3084 // Add xsrf header 3085 // This is only done if running in a standard browser environment. 3086 // Specifically not if we're in a web worker, or react-native. 3087 3088 if (_platform_index_js__WEBPACK_IMPORTED_MODULE_5__["default"].hasStandardBrowserEnv) { 3089 withXSRFToken && _utils_js__WEBPACK_IMPORTED_MODULE_4__["default"].isFunction(withXSRFToken) && (withXSRFToken = withXSRFToken(newConfig)); 3090 3091 if (withXSRFToken || (withXSRFToken !== false && (0,_isURLSameOrigin_js__WEBPACK_IMPORTED_MODULE_6__["default"])(newConfig.url))) { 3092 // Add xsrf header 3093 const xsrfValue = xsrfHeaderName && xsrfCookieName && _cookies_js__WEBPACK_IMPORTED_MODULE_7__["default"].read(xsrfCookieName); 3094 3095 if (xsrfValue) { 3096 headers.set(xsrfHeaderName, xsrfValue); 3097 } 3098 } 3099 } 3100 3101 return newConfig; 3102 }); 3103 3104 3105 3106 /***/ }), 3107 3108 /***/ "./node_modules/axios/lib/helpers/speedometer.js": 3109 /*!*******************************************************!*\ 3110 !*** ./node_modules/axios/lib/helpers/speedometer.js ***! 3111 \*******************************************************/ 3112 /***/ ((__unused_webpack___webpack_module__, __webpack_exports__, __webpack_require__) => { 3113 3114 __webpack_require__.r(__webpack_exports__); 3115 /* harmony export */ __webpack_require__.d(__webpack_exports__, { 3116 /* harmony export */ "default": () => (__WEBPACK_DEFAULT_EXPORT__) 3117 /* harmony export */ }); 3118 3119 3120 /** 3121 * Calculate data maxRate 3122 * @param {Number} [samplesCount= 10] 3123 * @param {Number} [min= 1000] 3124 * @returns {Function} 3125 */ 3126 function speedometer(samplesCount, min) { 3127 samplesCount = samplesCount || 10; 3128 const bytes = new Array(samplesCount); 3129 const timestamps = new Array(samplesCount); 3130 let head = 0; 3131 let tail = 0; 3132 let firstSampleTS; 3133 3134 min = min !== undefined ? min : 1000; 3135 3136 return function push(chunkLength) { 3137 const now = Date.now(); 3138 3139 const startedAt = timestamps[tail]; 3140 3141 if (!firstSampleTS) { 3142 firstSampleTS = now; 3143 } 3144 3145 bytes[head] = chunkLength; 3146 timestamps[head] = now; 3147 3148 let i = tail; 3149 let bytesCount = 0; 3150 3151 while (i !== head) { 3152 bytesCount += bytes[i++]; 3153 i = i % samplesCount; 3154 } 3155 3156 head = (head + 1) % samplesCount; 3157 3158 if (head === tail) { 3159 tail = (tail + 1) % samplesCount; 3160 } 3161 3162 if (now - firstSampleTS < min) { 3163 return; 3164 } 3165 3166 const passed = startedAt && now - startedAt; 3167 3168 return passed ? Math.round(bytesCount * 1000 / passed) : undefined; 3169 }; 3170 } 3171 3172 /* harmony default export */ const __WEBPACK_DEFAULT_EXPORT__ = (speedometer); 3173 3174 3175 /***/ }), 3176 3177 /***/ "./node_modules/axios/lib/helpers/spread.js": 3178 /*!**************************************************!*\ 3179 !*** ./node_modules/axios/lib/helpers/spread.js ***! 3180 \**************************************************/ 3181 /***/ ((__unused_webpack___webpack_module__, __webpack_exports__, __webpack_require__) => { 3182 3183 __webpack_require__.r(__webpack_exports__); 3184 /* harmony export */ __webpack_require__.d(__webpack_exports__, { 3185 /* harmony export */ "default": () => (/* binding */ spread) 3186 /* harmony export */ }); 3187 3188 3189 /** 3190 * Syntactic sugar for invoking a function and expanding an array for arguments. 3191 * 3192 * Common use case would be to use `Function.prototype.apply`. 3193 * 3194 * ```js 3195 * function f(x, y, z) {} 3196 * var args = [1, 2, 3]; 3197 * f.apply(null, args); 3198 * ``` 3199 * 3200 * With `spread` this example can be re-written. 3201 * 3202 * ```js 3203 * spread(function(x, y, z) {})([1, 2, 3]); 3204 * ``` 3205 * 3206 * @param {Function} callback 3207 * 3208 * @returns {Function} 3209 */ 3210 function spread(callback) { 3211 return function wrap(arr) { 3212 return callback.apply(null, arr); 3213 }; 3214 } 3215 3216 3217 /***/ }), 3218 3219 /***/ "./node_modules/axios/lib/helpers/throttle.js": 3220 /*!****************************************************!*\ 3221 !*** ./node_modules/axios/lib/helpers/throttle.js ***! 3222 \****************************************************/ 3223 /***/ ((__unused_webpack___webpack_module__, __webpack_exports__, __webpack_require__) => { 3224 3225 __webpack_require__.r(__webpack_exports__); 3226 /* harmony export */ __webpack_require__.d(__webpack_exports__, { 3227 /* harmony export */ "default": () => (__WEBPACK_DEFAULT_EXPORT__) 3228 /* harmony export */ }); 3229 /** 3230 * Throttle decorator 3231 * @param {Function} fn 3232 * @param {Number} freq 3233 * @return {Function} 3234 */ 3235 function throttle(fn, freq) { 3236 let timestamp = 0; 3237 let threshold = 1000 / freq; 3238 let lastArgs; 3239 let timer; 3240 3241 const invoke = (args, now = Date.now()) => { 3242 timestamp = now; 3243 lastArgs = null; 3244 if (timer) { 3245 clearTimeout(timer); 3246 timer = null; 3247 } 3248 fn.apply(null, args); 3249 } 3250 3251 const throttled = (...args) => { 3252 const now = Date.now(); 3253 const passed = now - timestamp; 3254 if ( passed >= threshold) { 3255 invoke(args, now); 3256 } else { 3257 lastArgs = args; 3258 if (!timer) { 3259 timer = setTimeout(() => { 3260 timer = null; 3261 invoke(lastArgs) 3262 }, threshold - passed); 3263 } 3264 } 3265 } 3266 3267 const flush = () => lastArgs && invoke(lastArgs); 3268 3269 return [throttled, flush]; 3270 } 3271 3272 /* harmony default export */ const __WEBPACK_DEFAULT_EXPORT__ = (throttle); 3273 3274 3275 /***/ }), 3276 3277 /***/ "./node_modules/axios/lib/helpers/toFormData.js": 3278 /*!******************************************************!*\ 3279 !*** ./node_modules/axios/lib/helpers/toFormData.js ***! 3280 \******************************************************/ 3281 /***/ ((__unused_webpack___webpack_module__, __webpack_exports__, __webpack_require__) => { 3282 3283 __webpack_require__.r(__webpack_exports__); 3284 /* harmony export */ __webpack_require__.d(__webpack_exports__, { 3285 /* harmony export */ "default": () => (__WEBPACK_DEFAULT_EXPORT__) 3286 /* harmony export */ }); 3287 /* harmony import */ var _utils_js__WEBPACK_IMPORTED_MODULE_0__ = __webpack_require__(/*! ../utils.js */ "./node_modules/axios/lib/utils.js"); 3288 /* harmony import */ var _core_AxiosError_js__WEBPACK_IMPORTED_MODULE_2__ = __webpack_require__(/*! ../core/AxiosError.js */ "./node_modules/axios/lib/core/AxiosError.js"); 3289 /* harmony import */ var _platform_node_classes_FormData_js__WEBPACK_IMPORTED_MODULE_1__ = __webpack_require__(/*! ../platform/node/classes/FormData.js */ "./node_modules/axios/lib/helpers/null.js"); 3290 3291 3292 3293 3294 // temporary hotfix to avoid circular references until AxiosURLSearchParams is refactored 3295 3296 3297 /** 3298 * Determines if the given thing is a array or js object. 3299 * 3300 * @param {string} thing - The object or array to be visited. 3301 * 3302 * @returns {boolean} 3303 */ 3304 function isVisitable(thing) { 3305 return _utils_js__WEBPACK_IMPORTED_MODULE_0__["default"].isPlainObject(thing) || _utils_js__WEBPACK_IMPORTED_MODULE_0__["default"].isArray(thing); 3306 } 3307 3308 /** 3309 * It removes the brackets from the end of a string 3310 * 3311 * @param {string} key - The key of the parameter. 3312 * 3313 * @returns {string} the key without the brackets. 3314 */ 3315 function removeBrackets(key) { 3316 return _utils_js__WEBPACK_IMPORTED_MODULE_0__["default"].endsWith(key, '[]') ? key.slice(0, -2) : key; 3317 } 3318 3319 /** 3320 * It takes a path, a key, and a boolean, and returns a string 3321 * 3322 * @param {string} path - The path to the current key. 3323 * @param {string} key - The key of the current object being iterated over. 3324 * @param {string} dots - If true, the key will be rendered with dots instead of brackets. 3325 * 3326 * @returns {string} The path to the current key. 3327 */ 3328 function renderKey(path, key, dots) { 3329 if (!path) return key; 3330 return path.concat(key).map(function each(token, i) { 3331 // eslint-disable-next-line no-param-reassign 3332 token = removeBrackets(token); 3333 return !dots && i ? '[' + token + ']' : token; 3334 }).join(dots ? '.' : ''); 3335 } 3336 3337 /** 3338 * If the array is an array and none of its elements are visitable, then it's a flat array. 3339 * 3340 * @param {Array<any>} arr - The array to check 3341 * 3342 * @returns {boolean} 3343 */ 3344 function isFlatArray(arr) { 3345 return _utils_js__WEBPACK_IMPORTED_MODULE_0__["default"].isArray(arr) && !arr.some(isVisitable); 3346 } 3347 3348 const predicates = _utils_js__WEBPACK_IMPORTED_MODULE_0__["default"].toFlatObject(_utils_js__WEBPACK_IMPORTED_MODULE_0__["default"], {}, null, function filter(prop) { 3349 return /^is[A-Z]/.test(prop); 3350 }); 3351 3352 /** 3353 * Convert a data object to FormData 3354 * 3355 * @param {Object} obj 3356 * @param {?Object} [formData] 3357 * @param {?Object} [options] 3358 * @param {Function} [options.visitor] 3359 * @param {Boolean} [options.metaTokens = true] 3360 * @param {Boolean} [options.dots = false] 3361 * @param {?Boolean} [options.indexes = false] 3362 * 3363 * @returns {Object} 3364 **/ 3365 3366 /** 3367 * It converts an object into a FormData object 3368 * 3369 * @param {Object<any, any>} obj - The object to convert to form data. 3370 * @param {string} formData - The FormData object to append to. 3371 * @param {Object<string, any>} options 3372 * 3373 * @returns 3374 */ 3375 function toFormData(obj, formData, options) { 3376 if (!_utils_js__WEBPACK_IMPORTED_MODULE_0__["default"].isObject(obj)) { 3377 throw new TypeError('target must be an object'); 3378 } 3379 3380 // eslint-disable-next-line no-param-reassign 3381 formData = formData || new (_platform_node_classes_FormData_js__WEBPACK_IMPORTED_MODULE_1__["default"] || FormData)(); 3382 3383 // eslint-disable-next-line no-param-reassign 3384 options = _utils_js__WEBPACK_IMPORTED_MODULE_0__["default"].toFlatObject(options, { 3385 metaTokens: true, 3386 dots: false, 3387 indexes: false 3388 }, false, function defined(option, source) { 3389 // eslint-disable-next-line no-eq-null,eqeqeq 3390 return !_utils_js__WEBPACK_IMPORTED_MODULE_0__["default"].isUndefined(source[option]); 3391 }); 3392 3393 const metaTokens = options.metaTokens; 3394 // eslint-disable-next-line no-use-before-define 3395 const visitor = options.visitor || defaultVisitor; 3396 const dots = options.dots; 3397 const indexes = options.indexes; 3398 const _Blob = options.Blob || typeof Blob !== 'undefined' && Blob; 3399 const useBlob = _Blob && _utils_js__WEBPACK_IMPORTED_MODULE_0__["default"].isSpecCompliantForm(formData); 3400 3401 if (!_utils_js__WEBPACK_IMPORTED_MODULE_0__["default"].isFunction(visitor)) { 3402 throw new TypeError('visitor must be a function'); 3403 } 3404 3405 function convertValue(value) { 3406 if (value === null) return ''; 3407 3408 if (_utils_js__WEBPACK_IMPORTED_MODULE_0__["default"].isDate(value)) { 3409 return value.toISOString(); 3410 } 3411 3412 if (!useBlob && _utils_js__WEBPACK_IMPORTED_MODULE_0__["default"].isBlob(value)) { 3413 throw new _core_AxiosError_js__WEBPACK_IMPORTED_MODULE_2__["default"]('Blob is not supported. Use a Buffer instead.'); 3414 } 3415 3416 if (_utils_js__WEBPACK_IMPORTED_MODULE_0__["default"].isArrayBuffer(value) || _utils_js__WEBPACK_IMPORTED_MODULE_0__["default"].isTypedArray(value)) { 3417 return useBlob && typeof Blob === 'function' ? new Blob([value]) : Buffer.from(value); 3418 } 3419 3420 return value; 3421 } 3422 3423 /** 3424 * Default visitor. 3425 * 3426 * @param {*} value 3427 * @param {String|Number} key 3428 * @param {Array<String|Number>} path 3429 * @this {FormData} 3430 * 3431 * @returns {boolean} return true to visit the each prop of the value recursively 3432 */ 3433 function defaultVisitor(value, key, path) { 3434 let arr = value; 3435 3436 if (value && !path && typeof value === 'object') { 3437 if (_utils_js__WEBPACK_IMPORTED_MODULE_0__["default"].endsWith(key, '{}')) { 3438 // eslint-disable-next-line no-param-reassign 3439 key = metaTokens ? key : key.slice(0, -2); 3440 // eslint-disable-next-line no-param-reassign 3441 value = JSON.stringify(value); 3442 } else if ( 3443 (_utils_js__WEBPACK_IMPORTED_MODULE_0__["default"].isArray(value) && isFlatArray(value)) || 3444 ((_utils_js__WEBPACK_IMPORTED_MODULE_0__["default"].isFileList(value) || _utils_js__WEBPACK_IMPORTED_MODULE_0__["default"].endsWith(key, '[]')) && (arr = _utils_js__WEBPACK_IMPORTED_MODULE_0__["default"].toArray(value)) 3445 )) { 3446 // eslint-disable-next-line no-param-reassign 3447 key = removeBrackets(key); 3448 3449 arr.forEach(function each(el, index) { 3450 !(_utils_js__WEBPACK_IMPORTED_MODULE_0__["default"].isUndefined(el) || el === null) && formData.append( 3451 // eslint-disable-next-line no-nested-ternary 3452 indexes === true ? renderKey([key], index, dots) : (indexes === null ? key : key + '[]'), 3453 convertValue(el) 3454 ); 3455 }); 3456 return false; 3457 } 3458 } 3459 3460 if (isVisitable(value)) { 3461 return true; 3462 } 3463 3464 formData.append(renderKey(path, key, dots), convertValue(value)); 3465 3466 return false; 3467 } 3468 3469 const stack = []; 3470 3471 const exposedHelpers = Object.assign(predicates, { 3472 defaultVisitor, 3473 convertValue, 3474 isVisitable 3475 }); 3476 3477 function build(value, path) { 3478 if (_utils_js__WEBPACK_IMPORTED_MODULE_0__["default"].isUndefined(value)) return; 3479 3480 if (stack.indexOf(value) !== -1) { 3481 throw Error('Circular reference detected in ' + path.join('.')); 3482 } 3483 3484 stack.push(value); 3485 3486 _utils_js__WEBPACK_IMPORTED_MODULE_0__["default"].forEach(value, function each(el, key) { 3487 const result = !(_utils_js__WEBPACK_IMPORTED_MODULE_0__["default"].isUndefined(el) || el === null) && visitor.call( 3488 formData, el, _utils_js__WEBPACK_IMPORTED_MODULE_0__["default"].isString(key) ? key.trim() : key, path, exposedHelpers 3489 ); 3490 3491 if (result === true) { 3492 build(el, path ? path.concat(key) : [key]); 3493 } 3494 }); 3495 3496 stack.pop(); 3497 } 3498 3499 if (!_utils_js__WEBPACK_IMPORTED_MODULE_0__["default"].isObject(obj)) { 3500 throw new TypeError('data must be an object'); 3501 } 3502 3503 build(obj); 3504 3505 return formData; 3506 } 3507 3508 /* harmony default export */ const __WEBPACK_DEFAULT_EXPORT__ = (toFormData); 3509 3510 3511 /***/ }), 3512 3513 /***/ "./node_modules/axios/lib/helpers/toURLEncodedForm.js": 3514 /*!************************************************************!*\ 3515 !*** ./node_modules/axios/lib/helpers/toURLEncodedForm.js ***! 3516 \************************************************************/ 3517 /***/ ((__unused_webpack___webpack_module__, __webpack_exports__, __webpack_require__) => { 3518 3519 __webpack_require__.r(__webpack_exports__); 3520 /* harmony export */ __webpack_require__.d(__webpack_exports__, { 3521 /* harmony export */ "default": () => (/* binding */ toURLEncodedForm) 3522 /* harmony export */ }); 3523 /* harmony import */ var _utils_js__WEBPACK_IMPORTED_MODULE_2__ = __webpack_require__(/*! ../utils.js */ "./node_modules/axios/lib/utils.js"); 3524 /* harmony import */ var _toFormData_js__WEBPACK_IMPORTED_MODULE_0__ = __webpack_require__(/*! ./toFormData.js */ "./node_modules/axios/lib/helpers/toFormData.js"); 3525 /* harmony import */ var _platform_index_js__WEBPACK_IMPORTED_MODULE_1__ = __webpack_require__(/*! ../platform/index.js */ "./node_modules/axios/lib/platform/index.js"); 3526 3527 3528 3529 3530 3531 3532 function toURLEncodedForm(data, options) { 3533 return (0,_toFormData_js__WEBPACK_IMPORTED_MODULE_0__["default"])(data, new _platform_index_js__WEBPACK_IMPORTED_MODULE_1__["default"].classes.URLSearchParams(), Object.assign({ 3534 visitor: function(value, key, path, helpers) { 3535 if (_platform_index_js__WEBPACK_IMPORTED_MODULE_1__["default"].isNode && _utils_js__WEBPACK_IMPORTED_MODULE_2__["default"].isBuffer(value)) { 3536 this.append(key, value.toString('base64')); 3537 return false; 3538 } 3539 3540 return helpers.defaultVisitor.apply(this, arguments); 3541 } 3542 }, options)); 3543 } 3544 3545 3546 /***/ }), 3547 3548 /***/ "./node_modules/axios/lib/helpers/trackStream.js": 3549 /*!*******************************************************!*\ 3550 !*** ./node_modules/axios/lib/helpers/trackStream.js ***! 3551 \*******************************************************/ 3552 /***/ ((__unused_webpack___webpack_module__, __webpack_exports__, __webpack_require__) => { 3553 3554 __webpack_require__.r(__webpack_exports__); 3555 /* harmony export */ __webpack_require__.d(__webpack_exports__, { 3556 /* harmony export */ readBytes: () => (/* binding */ readBytes), 3557 /* harmony export */ streamChunk: () => (/* binding */ streamChunk), 3558 /* harmony export */ trackStream: () => (/* binding */ trackStream) 3559 /* harmony export */ }); 3560 3561 const streamChunk = function* (chunk, chunkSize) { 3562 let len = chunk.byteLength; 3563 3564 if (!chunkSize || len < chunkSize) { 3565 yield chunk; 3566 return; 3567 } 3568 3569 let pos = 0; 3570 let end; 3571 3572 while (pos < len) { 3573 end = pos + chunkSize; 3574 yield chunk.slice(pos, end); 3575 pos = end; 3576 } 3577 } 3578 3579 const readBytes = async function* (iterable, chunkSize) { 3580 for await (const chunk of readStream(iterable)) { 3581 yield* streamChunk(chunk, chunkSize); 3582 } 3583 } 3584 3585 const readStream = async function* (stream) { 3586 if (stream[Symbol.asyncIterator]) { 3587 yield* stream; 3588 return; 3589 } 3590 3591 const reader = stream.getReader(); 3592 try { 3593 for (;;) { 3594 const {done, value} = await reader.read(); 3595 if (done) { 3596 break; 3597 } 3598 yield value; 3599 } 3600 } finally { 3601 await reader.cancel(); 3602 } 3603 } 3604 3605 const trackStream = (stream, chunkSize, onProgress, onFinish) => { 3606 const iterator = readBytes(stream, chunkSize); 3607 3608 let bytes = 0; 3609 let done; 3610 let _onFinish = (e) => { 3611 if (!done) { 3612 done = true; 3613 onFinish && onFinish(e); 3614 } 3615 } 3616 3617 return new ReadableStream({ 3618 async pull(controller) { 3619 try { 3620 const {done, value} = await iterator.next(); 3621 3622 if (done) { 3623 _onFinish(); 3624 controller.close(); 3625 return; 3626 } 3627 3628 let len = value.byteLength; 3629 if (onProgress) { 3630 let loadedBytes = bytes += len; 3631 onProgress(loadedBytes); 3632 } 3633 controller.enqueue(new Uint8Array(value)); 3634 } catch (err) { 3635 _onFinish(err); 3636 throw err; 3637 } 3638 }, 3639 cancel(reason) { 3640 _onFinish(reason); 3641 return iterator.return(); 3642 } 3643 }, { 3644 highWaterMark: 2 3645 }) 3646 } 3647 3648 3649 /***/ }), 3650 3651 /***/ "./node_modules/axios/lib/helpers/validator.js": 3652 /*!*****************************************************!*\ 3653 !*** ./node_modules/axios/lib/helpers/validator.js ***! 3654 \*****************************************************/ 3655 /***/ ((__unused_webpack___webpack_module__, __webpack_exports__, __webpack_require__) => { 3656 3657 __webpack_require__.r(__webpack_exports__); 3658 /* harmony export */ __webpack_require__.d(__webpack_exports__, { 3659 /* harmony export */ "default": () => (__WEBPACK_DEFAULT_EXPORT__) 3660 /* harmony export */ }); 3661 /* harmony import */ var _env_data_js__WEBPACK_IMPORTED_MODULE_0__ = __webpack_require__(/*! ../env/data.js */ "./node_modules/axios/lib/env/data.js"); 3662 /* harmony import */ var _core_AxiosError_js__WEBPACK_IMPORTED_MODULE_1__ = __webpack_require__(/*! ../core/AxiosError.js */ "./node_modules/axios/lib/core/AxiosError.js"); 3663 3664 3665 3666 3667 3668 const validators = {}; 3669 3670 // eslint-disable-next-line func-names 3671 ['object', 'boolean', 'number', 'function', 'string', 'symbol'].forEach((type, i) => { 3672 validators[type] = function validator(thing) { 3673 return typeof thing === type || 'a' + (i < 1 ? 'n ' : ' ') + type; 3674 }; 3675 }); 3676 3677 const deprecatedWarnings = {}; 3678 3679 /** 3680 * Transitional option validator 3681 * 3682 * @param {function|boolean?} validator - set to false if the transitional option has been removed 3683 * @param {string?} version - deprecated version / removed since version 3684 * @param {string?} message - some message with additional info 3685 * 3686 * @returns {function} 3687 */ 3688 validators.transitional = function transitional(validator, version, message) { 3689 function formatMessage(opt, desc) { 3690 return '[Axios v' + _env_data_js__WEBPACK_IMPORTED_MODULE_0__.VERSION + '] Transitional option \'' + opt + '\'' + desc + (message ? '. ' + message : ''); 3691 } 3692 3693 // eslint-disable-next-line func-names 3694 return (value, opt, opts) => { 3695 if (validator === false) { 3696 throw new _core_AxiosError_js__WEBPACK_IMPORTED_MODULE_1__["default"]( 3697 formatMessage(opt, ' has been removed' + (version ? ' in ' + version : '')), 3698 _core_AxiosError_js__WEBPACK_IMPORTED_MODULE_1__["default"].ERR_DEPRECATED 3699 ); 3700 } 3701 3702 if (version && !deprecatedWarnings[opt]) { 3703 deprecatedWarnings[opt] = true; 3704 // eslint-disable-next-line no-console 3705 console.warn( 3706 formatMessage( 3707 opt, 3708 ' has been deprecated since v' + version + ' and will be removed in the near future' 3709 ) 3710 ); 3711 } 3712 3713 return validator ? validator(value, opt, opts) : true; 3714 }; 3715 }; 3716 3717 validators.spelling = function spelling(correctSpelling) { 3718 return (value, opt) => { 3719 // eslint-disable-next-line no-console 3720 console.warn(`${opt} is likely a misspelling of ${correctSpelling}`); 3721 return true; 3722 } 3723 }; 3724 3725 /** 3726 * Assert object's properties type 3727 * 3728 * @param {object} options 3729 * @param {object} schema 3730 * @param {boolean?} allowUnknown 3731 * 3732 * @returns {object} 3733 */ 3734 3735 function assertOptions(options, schema, allowUnknown) { 3736 if (typeof options !== 'object') { 3737 throw new _core_AxiosError_js__WEBPACK_IMPORTED_MODULE_1__["default"]('options must be an object', _core_AxiosError_js__WEBPACK_IMPORTED_MODULE_1__["default"].ERR_BAD_OPTION_VALUE); 3738 } 3739 const keys = Object.keys(options); 3740 let i = keys.length; 3741 while (i-- > 0) { 3742 const opt = keys[i]; 3743 const validator = schema[opt]; 3744 if (validator) { 3745 const value = options[opt]; 3746 const result = value === undefined || validator(value, opt, options); 3747 if (result !== true) { 3748 throw new _core_AxiosError_js__WEBPACK_IMPORTED_MODULE_1__["default"]('option ' + opt + ' must be ' + result, _core_AxiosError_js__WEBPACK_IMPORTED_MODULE_1__["default"].ERR_BAD_OPTION_VALUE); 3749 } 3750 continue; 3751 } 3752 if (allowUnknown !== true) { 3753 throw new _core_AxiosError_js__WEBPACK_IMPORTED_MODULE_1__["default"]('Unknown option ' + opt, _core_AxiosError_js__WEBPACK_IMPORTED_MODULE_1__["default"].ERR_BAD_OPTION); 3754 } 3755 } 3756 } 3757 3758 /* harmony default export */ const __WEBPACK_DEFAULT_EXPORT__ = ({ 3759 assertOptions, 3760 validators 3761 }); 3762 3763 3764 /***/ }), 3765 3766 /***/ "./node_modules/axios/lib/platform/browser/classes/Blob.js": 3767 /*!*****************************************************************!*\ 3768 !*** ./node_modules/axios/lib/platform/browser/classes/Blob.js ***! 3769 \*****************************************************************/ 3770 /***/ ((__unused_webpack___webpack_module__, __webpack_exports__, __webpack_require__) => { 3771 3772 __webpack_require__.r(__webpack_exports__); 3773 /* harmony export */ __webpack_require__.d(__webpack_exports__, { 3774 /* harmony export */ "default": () => (__WEBPACK_DEFAULT_EXPORT__) 3775 /* harmony export */ }); 3776 3777 3778 /* harmony default export */ const __WEBPACK_DEFAULT_EXPORT__ = (typeof Blob !== 'undefined' ? Blob : null); 3779 3780 3781 /***/ }), 3782 3783 /***/ "./node_modules/axios/lib/platform/browser/classes/FormData.js": 3784 /*!*********************************************************************!*\ 3785 !*** ./node_modules/axios/lib/platform/browser/classes/FormData.js ***! 3786 \*********************************************************************/ 3787 /***/ ((__unused_webpack___webpack_module__, __webpack_exports__, __webpack_require__) => { 3788 3789 __webpack_require__.r(__webpack_exports__); 3790 /* harmony export */ __webpack_require__.d(__webpack_exports__, { 3791 /* harmony export */ "default": () => (__WEBPACK_DEFAULT_EXPORT__) 3792 /* harmony export */ }); 3793 3794 3795 /* harmony default export */ const __WEBPACK_DEFAULT_EXPORT__ = (typeof FormData !== 'undefined' ? FormData : null); 3796 3797 3798 /***/ }), 3799 3800 /***/ "./node_modules/axios/lib/platform/browser/classes/URLSearchParams.js": 3801 /*!****************************************************************************!*\ 3802 !*** ./node_modules/axios/lib/platform/browser/classes/URLSearchParams.js ***! 3803 \****************************************************************************/ 3804 /***/ ((__unused_webpack___webpack_module__, __webpack_exports__, __webpack_require__) => { 3805 3806 __webpack_require__.r(__webpack_exports__); 3807 /* harmony export */ __webpack_require__.d(__webpack_exports__, { 3808 /* harmony export */ "default": () => (__WEBPACK_DEFAULT_EXPORT__) 3809 /* harmony export */ }); 3810 /* harmony import */ var _helpers_AxiosURLSearchParams_js__WEBPACK_IMPORTED_MODULE_0__ = __webpack_require__(/*! ../../../helpers/AxiosURLSearchParams.js */ "./node_modules/axios/lib/helpers/AxiosURLSearchParams.js"); 3811 3812 3813 3814 /* harmony default export */ const __WEBPACK_DEFAULT_EXPORT__ = (typeof URLSearchParams !== 'undefined' ? URLSearchParams : _helpers_AxiosURLSearchParams_js__WEBPACK_IMPORTED_MODULE_0__["default"]); 3815 3816 3817 /***/ }), 3818 3819 /***/ "./node_modules/axios/lib/platform/browser/index.js": 3820 /*!**********************************************************!*\ 3821 !*** ./node_modules/axios/lib/platform/browser/index.js ***! 3822 \**********************************************************/ 3823 /***/ ((__unused_webpack___webpack_module__, __webpack_exports__, __webpack_require__) => { 3824 3825 __webpack_require__.r(__webpack_exports__); 3826 /* harmony export */ __webpack_require__.d(__webpack_exports__, { 3827 /* harmony export */ "default": () => (__WEBPACK_DEFAULT_EXPORT__) 3828 /* harmony export */ }); 3829 /* harmony import */ var _classes_URLSearchParams_js__WEBPACK_IMPORTED_MODULE_0__ = __webpack_require__(/*! ./classes/URLSearchParams.js */ "./node_modules/axios/lib/platform/browser/classes/URLSearchParams.js"); 3830 /* harmony import */ var _classes_FormData_js__WEBPACK_IMPORTED_MODULE_1__ = __webpack_require__(/*! ./classes/FormData.js */ "./node_modules/axios/lib/platform/browser/classes/FormData.js"); 3831 /* harmony import */ var _classes_Blob_js__WEBPACK_IMPORTED_MODULE_2__ = __webpack_require__(/*! ./classes/Blob.js */ "./node_modules/axios/lib/platform/browser/classes/Blob.js"); 3832 3833 3834 3835 3836 /* harmony default export */ const __WEBPACK_DEFAULT_EXPORT__ = ({ 3837 isBrowser: true, 3838 classes: { 3839 URLSearchParams: _classes_URLSearchParams_js__WEBPACK_IMPORTED_MODULE_0__["default"], 3840 FormData: _classes_FormData_js__WEBPACK_IMPORTED_MODULE_1__["default"], 3841 Blob: _classes_Blob_js__WEBPACK_IMPORTED_MODULE_2__["default"] 3842 }, 3843 protocols: ['http', 'https', 'file', 'blob', 'url', 'data'] 3844 }); 3845 3846 3847 /***/ }), 3848 3849 /***/ "./node_modules/axios/lib/platform/common/utils.js": 3850 /*!*********************************************************!*\ 3851 !*** ./node_modules/axios/lib/platform/common/utils.js ***! 3852 \*********************************************************/ 3853 /***/ ((__unused_webpack___webpack_module__, __webpack_exports__, __webpack_require__) => { 3854 3855 __webpack_require__.r(__webpack_exports__); 3856 /* harmony export */ __webpack_require__.d(__webpack_exports__, { 3857 /* harmony export */ hasBrowserEnv: () => (/* binding */ hasBrowserEnv), 3858 /* harmony export */ hasStandardBrowserEnv: () => (/* binding */ hasStandardBrowserEnv), 3859 /* harmony export */ hasStandardBrowserWebWorkerEnv: () => (/* binding */ hasStandardBrowserWebWorkerEnv), 3860 /* harmony export */ navigator: () => (/* binding */ _navigator), 3861 /* harmony export */ origin: () => (/* binding */ origin) 3862 /* harmony export */ }); 3863 const hasBrowserEnv = typeof window !== 'undefined' && typeof document !== 'undefined'; 3864 3865 const _navigator = typeof navigator === 'object' && navigator || undefined; 3866 3867 /** 3868 * Determine if we're running in a standard browser environment 3869 * 3870 * This allows axios to run in a web worker, and react-native. 3871 * Both environments support XMLHttpRequest, but not fully standard globals. 3872 * 3873 * web workers: 3874 * typeof window -> undefined 3875 * typeof document -> undefined 3876 * 3877 * react-native: 3878 * navigator.product -> 'ReactNative' 3879 * nativescript 3880 * navigator.product -> 'NativeScript' or 'NS' 3881 * 3882 * @returns {boolean} 3883 */ 3884 const hasStandardBrowserEnv = hasBrowserEnv && 3885 (!_navigator || ['ReactNative', 'NativeScript', 'NS'].indexOf(_navigator.product) < 0); 3886 3887 /** 3888 * Determine if we're running in a standard browser webWorker environment 3889 * 3890 * Although the `isStandardBrowserEnv` method indicates that 3891 * `allows axios to run in a web worker`, the WebWorker will still be 3892 * filtered out due to its judgment standard 3893 * `typeof window !== 'undefined' && typeof document !== 'undefined'`. 3894 * This leads to a problem when axios post `FormData` in webWorker 3895 */ 3896 const hasStandardBrowserWebWorkerEnv = (() => { 3897 return ( 3898 typeof WorkerGlobalScope !== 'undefined' && 3899 // eslint-disable-next-line no-undef 3900 self instanceof WorkerGlobalScope && 3901 typeof self.importScripts === 'function' 3902 ); 3903 })(); 3904 3905 const origin = hasBrowserEnv && window.location.href || 'http://localhost'; 3906 3907 3908 3909 3910 /***/ }), 3911 3912 /***/ "./node_modules/axios/lib/platform/index.js": 3913 /*!**************************************************!*\ 3914 !*** ./node_modules/axios/lib/platform/index.js ***! 3915 \**************************************************/ 3916 /***/ ((__unused_webpack___webpack_module__, __webpack_exports__, __webpack_require__) => { 3917 3918 __webpack_require__.r(__webpack_exports__); 3919 /* harmony export */ __webpack_require__.d(__webpack_exports__, { 3920 /* harmony export */ "default": () => (__WEBPACK_DEFAULT_EXPORT__) 3921 /* harmony export */ }); 3922 /* harmony import */ var _node_index_js__WEBPACK_IMPORTED_MODULE_1__ = __webpack_require__(/*! ./node/index.js */ "./node_modules/axios/lib/platform/browser/index.js"); 3923 /* harmony import */ var _common_utils_js__WEBPACK_IMPORTED_MODULE_0__ = __webpack_require__(/*! ./common/utils.js */ "./node_modules/axios/lib/platform/common/utils.js"); 3924 3925 3926 3927 /* harmony default export */ const __WEBPACK_DEFAULT_EXPORT__ = ({ 3928 ..._common_utils_js__WEBPACK_IMPORTED_MODULE_0__, 3929 ..._node_index_js__WEBPACK_IMPORTED_MODULE_1__["default"] 3930 }); 3931 3932 3933 /***/ }), 3934 3935 /***/ "./node_modules/axios/lib/utils.js": 3936 /*!*****************************************!*\ 3937 !*** ./node_modules/axios/lib/utils.js ***! 3938 \*****************************************/ 3939 /***/ ((__unused_webpack___webpack_module__, __webpack_exports__, __webpack_require__) => { 3940 3941 __webpack_require__.r(__webpack_exports__); 3942 /* harmony export */ __webpack_require__.d(__webpack_exports__, { 3943 /* harmony export */ "default": () => (__WEBPACK_DEFAULT_EXPORT__) 3944 /* harmony export */ }); 3945 /* harmony import */ var _helpers_bind_js__WEBPACK_IMPORTED_MODULE_0__ = __webpack_require__(/*! ./helpers/bind.js */ "./node_modules/axios/lib/helpers/bind.js"); 3946 3947 3948 3949 3950 // utils is a library of generic helper functions non-specific to axios 3951 3952 const {toString} = Object.prototype; 3953 const {getPrototypeOf} = Object; 3954 3955 const kindOf = (cache => thing => { 3956 const str = toString.call(thing); 3957 return cache[str] || (cache[str] = str.slice(8, -1).toLowerCase()); 3958 })(Object.create(null)); 3959 3960 const kindOfTest = (type) => { 3961 type = type.toLowerCase(); 3962 return (thing) => kindOf(thing) === type 3963 } 3964 3965 const typeOfTest = type => thing => typeof thing === type; 3966 3967 /** 3968 * Determine if a value is an Array 3969 * 3970 * @param {Object} val The value to test 3971 * 3972 * @returns {boolean} True if value is an Array, otherwise false 3973 */ 3974 const {isArray} = Array; 3975 3976 /** 3977 * Determine if a value is undefined 3978 * 3979 * @param {*} val The value to test 3980 * 3981 * @returns {boolean} True if the value is undefined, otherwise false 3982 */ 3983 const isUndefined = typeOfTest('undefined'); 3984 3985 /** 3986 * Determine if a value is a Buffer 3987 * 3988 * @param {*} val The value to test 3989 * 3990 * @returns {boolean} True if value is a Buffer, otherwise false 3991 */ 3992 function isBuffer(val) { 3993 return val !== null && !isUndefined(val) && val.constructor !== null && !isUndefined(val.constructor) 3994 && isFunction(val.constructor.isBuffer) && val.constructor.isBuffer(val); 3995 } 3996 3997 /** 3998 * Determine if a value is an ArrayBuffer 3999 * 4000 * @param {*} val The value to test 4001 * 4002 * @returns {boolean} True if value is an ArrayBuffer, otherwise false 4003 */ 4004 const isArrayBuffer = kindOfTest('ArrayBuffer'); 4005 4006 4007 /** 4008 * Determine if a value is a view on an ArrayBuffer 4009 * 4010 * @param {*} val The value to test 4011 * 4012 * @returns {boolean} True if value is a view on an ArrayBuffer, otherwise false 4013 */ 4014 function isArrayBufferView(val) { 4015 let result; 4016 if ((typeof ArrayBuffer !== 'undefined') && (ArrayBuffer.isView)) { 4017 result = ArrayBuffer.isView(val); 4018 } else { 4019 result = (val) && (val.buffer) && (isArrayBuffer(val.buffer)); 4020 } 4021 return result; 4022 } 4023 4024 /** 4025 * Determine if a value is a String 4026 * 4027 * @param {*} val The value to test 4028 * 4029 * @returns {boolean} True if value is a String, otherwise false 4030 */ 4031 const isString = typeOfTest('string'); 4032 4033 /** 4034 * Determine if a value is a Function 4035 * 4036 * @param {*} val The value to test 4037 * @returns {boolean} True if value is a Function, otherwise false 4038 */ 4039 const isFunction = typeOfTest('function'); 4040 4041 /** 4042 * Determine if a value is a Number 4043 * 4044 * @param {*} val The value to test 4045 * 4046 * @returns {boolean} True if value is a Number, otherwise false 4047 */ 4048 const isNumber = typeOfTest('number'); 4049 4050 /** 4051 * Determine if a value is an Object 4052 * 4053 * @param {*} thing The value to test 4054 * 4055 * @returns {boolean} True if value is an Object, otherwise false 4056 */ 4057 const isObject = (thing) => thing !== null && typeof thing === 'object'; 4058 4059 /** 4060 * Determine if a value is a Boolean 4061 * 4062 * @param {*} thing The value to test 4063 * @returns {boolean} True if value is a Boolean, otherwise false 4064 */ 4065 const isBoolean = thing => thing === true || thing === false; 4066 4067 /** 4068 * Determine if a value is a plain Object 4069 * 4070 * @param {*} val The value to test 4071 * 4072 * @returns {boolean} True if value is a plain Object, otherwise false 4073 */ 4074 const isPlainObject = (val) => { 4075 if (kindOf(val) !== 'object') { 4076 return false; 4077 } 4078 4079 const prototype = getPrototypeOf(val); 4080 return (prototype === null || prototype === Object.prototype || Object.getPrototypeOf(prototype) === null) && !(Symbol.toStringTag in val) && !(Symbol.iterator in val); 4081 } 4082 4083 /** 4084 * Determine if a value is a Date 4085 * 4086 * @param {*} val The value to test 4087 * 4088 * @returns {boolean} True if value is a Date, otherwise false 4089 */ 4090 const isDate = kindOfTest('Date'); 4091 4092 /** 4093 * Determine if a value is a File 4094 * 4095 * @param {*} val The value to test 4096 * 4097 * @returns {boolean} True if value is a File, otherwise false 4098 */ 4099 const isFile = kindOfTest('File'); 4100 4101 /** 4102 * Determine if a value is a Blob 4103 * 4104 * @param {*} val The value to test 4105 * 4106 * @returns {boolean} True if value is a Blob, otherwise false 4107 */ 4108 const isBlob = kindOfTest('Blob'); 4109 4110 /** 4111 * Determine if a value is a FileList 4112 * 4113 * @param {*} val The value to test 4114 * 4115 * @returns {boolean} True if value is a File, otherwise false 4116 */ 4117 const isFileList = kindOfTest('FileList'); 4118 4119 /** 4120 * Determine if a value is a Stream 4121 * 4122 * @param {*} val The value to test 4123 * 4124 * @returns {boolean} True if value is a Stream, otherwise false 4125 */ 4126 const isStream = (val) => isObject(val) && isFunction(val.pipe); 4127 4128 /** 4129 * Determine if a value is a FormData 4130 * 4131 * @param {*} thing The value to test 4132 * 4133 * @returns {boolean} True if value is an FormData, otherwise false 4134 */ 4135 const isFormData = (thing) => { 4136 let kind; 4137 return thing && ( 4138 (typeof FormData === 'function' && thing instanceof FormData) || ( 4139 isFunction(thing.append) && ( 4140 (kind = kindOf(thing)) === 'formdata' || 4141 // detect form-data instance 4142 (kind === 'object' && isFunction(thing.toString) && thing.toString() === '[object FormData]') 4143 ) 4144 ) 4145 ) 4146 } 4147 4148 /** 4149 * Determine if a value is a URLSearchParams object 4150 * 4151 * @param {*} val The value to test 4152 * 4153 * @returns {boolean} True if value is a URLSearchParams object, otherwise false 4154 */ 4155 const isURLSearchParams = kindOfTest('URLSearchParams'); 4156 4157 const [isReadableStream, isRequest, isResponse, isHeaders] = ['ReadableStream', 'Request', 'Response', 'Headers'].map(kindOfTest); 4158 4159 /** 4160 * Trim excess whitespace off the beginning and end of a string 4161 * 4162 * @param {String} str The String to trim 4163 * 4164 * @returns {String} The String freed of excess whitespace 4165 */ 4166 const trim = (str) => str.trim ? 4167 str.trim() : str.replace(/^[\s\uFEFF\xA0]+|[\s\uFEFF\xA0]+$/g, ''); 4168 4169 /** 4170 * Iterate over an Array or an Object invoking a function for each item. 4171 * 4172 * If `obj` is an Array callback will be called passing 4173 * the value, index, and complete array for each item. 4174 * 4175 * If 'obj' is an Object callback will be called passing 4176 * the value, key, and complete object for each property. 4177 * 4178 * @param {Object|Array} obj The object to iterate 4179 * @param {Function} fn The callback to invoke for each item 4180 * 4181 * @param {Boolean} [allOwnKeys = false] 4182 * @returns {any} 4183 */ 4184 function forEach(obj, fn, {allOwnKeys = false} = {}) { 4185 // Don't bother if no value provided 4186 if (obj === null || typeof obj === 'undefined') { 4187 return; 4188 } 4189 4190 let i; 4191 let l; 4192 4193 // Force an array if not already something iterable 4194 if (typeof obj !== 'object') { 4195 /*eslint no-param-reassign:0*/ 4196 obj = [obj]; 4197 } 4198 4199 if (isArray(obj)) { 4200 // Iterate over array values 4201 for (i = 0, l = obj.length; i < l; i++) { 4202 fn.call(null, obj[i], i, obj); 4203 } 4204 } else { 4205 // Iterate over object keys 4206 const keys = allOwnKeys ? Object.getOwnPropertyNames(obj) : Object.keys(obj); 4207 const len = keys.length; 4208 let key; 4209 4210 for (i = 0; i < len; i++) { 4211 key = keys[i]; 4212 fn.call(null, obj[key], key, obj); 4213 } 4214 } 4215 } 4216 4217 function findKey(obj, key) { 4218 key = key.toLowerCase(); 4219 const keys = Object.keys(obj); 4220 let i = keys.length; 4221 let _key; 4222 while (i-- > 0) { 4223 _key = keys[i]; 4224 if (key === _key.toLowerCase()) { 4225 return _key; 4226 } 4227 } 4228 return null; 4229 } 4230 4231 const _global = (() => { 4232 /*eslint no-undef:0*/ 4233 if (typeof globalThis !== "undefined") return globalThis; 4234 return typeof self !== "undefined" ? self : (typeof window !== 'undefined' ? window : global) 4235 })(); 4236 4237 const isContextDefined = (context) => !isUndefined(context) && context !== _global; 4238 4239 /** 4240 * Accepts varargs expecting each argument to be an object, then 4241 * immutably merges the properties of each object and returns result. 4242 * 4243 * When multiple objects contain the same key the later object in 4244 * the arguments list will take precedence. 4245 * 4246 * Example: 4247 * 4248 * ```js 4249 * var result = merge({foo: 123}, {foo: 456}); 4250 * console.log(result.foo); // outputs 456 4251 * ``` 4252 * 4253 * @param {Object} obj1 Object to merge 4254 * 4255 * @returns {Object} Result of all merge properties 4256 */ 4257 function merge(/* obj1, obj2, obj3, ... */) { 4258 const {caseless} = isContextDefined(this) && this || {}; 4259 const result = {}; 4260 const assignValue = (val, key) => { 4261 const targetKey = caseless && findKey(result, key) || key; 4262 if (isPlainObject(result[targetKey]) && isPlainObject(val)) { 4263 result[targetKey] = merge(result[targetKey], val); 4264 } else if (isPlainObject(val)) { 4265 result[targetKey] = merge({}, val); 4266 } else if (isArray(val)) { 4267 result[targetKey] = val.slice(); 4268 } else { 4269 result[targetKey] = val; 4270 } 4271 } 4272 4273 for (let i = 0, l = arguments.length; i < l; i++) { 4274 arguments[i] && forEach(arguments[i], assignValue); 4275 } 4276 return result; 4277 } 4278 4279 /** 4280 * Extends object a by mutably adding to it the properties of object b. 4281 * 4282 * @param {Object} a The object to be extended 4283 * @param {Object} b The object to copy properties from 4284 * @param {Object} thisArg The object to bind function to 4285 * 4286 * @param {Boolean} [allOwnKeys] 4287 * @returns {Object} The resulting value of object a 4288 */ 4289 const extend = (a, b, thisArg, {allOwnKeys}= {}) => { 4290 forEach(b, (val, key) => { 4291 if (thisArg && isFunction(val)) { 4292 a[key] = (0,_helpers_bind_js__WEBPACK_IMPORTED_MODULE_0__["default"])(val, thisArg); 4293 } else { 4294 a[key] = val; 4295 } 4296 }, {allOwnKeys}); 4297 return a; 4298 } 4299 4300 /** 4301 * Remove byte order marker. This catches EF BB BF (the UTF-8 BOM) 4302 * 4303 * @param {string} content with BOM 4304 * 4305 * @returns {string} content value without BOM 4306 */ 4307 const stripBOM = (content) => { 4308 if (content.charCodeAt(0) === 0xFEFF) { 4309 content = content.slice(1); 4310 } 4311 return content; 4312 } 4313 4314 /** 4315 * Inherit the prototype methods from one constructor into another 4316 * @param {function} constructor 4317 * @param {function} superConstructor 4318 * @param {object} [props] 4319 * @param {object} [descriptors] 4320 * 4321 * @returns {void} 4322 */ 4323 const inherits = (constructor, superConstructor, props, descriptors) => { 4324 constructor.prototype = Object.create(superConstructor.prototype, descriptors); 4325 constructor.prototype.constructor = constructor; 4326 Object.defineProperty(constructor, 'super', { 4327 value: superConstructor.prototype 4328 }); 4329 props && Object.assign(constructor.prototype, props); 4330 } 4331 4332 /** 4333 * Resolve object with deep prototype chain to a flat object 4334 * @param {Object} sourceObj source object 4335 * @param {Object} [destObj] 4336 * @param {Function|Boolean} [filter] 4337 * @param {Function} [propFilter] 4338 * 4339 * @returns {Object} 4340 */ 4341 const toFlatObject = (sourceObj, destObj, filter, propFilter) => { 4342 let props; 4343 let i; 4344 let prop; 4345 const merged = {}; 4346 4347 destObj = destObj || {}; 4348 // eslint-disable-next-line no-eq-null,eqeqeq 4349 if (sourceObj == null) return destObj; 4350 4351 do { 4352 props = Object.getOwnPropertyNames(sourceObj); 4353 i = props.length; 4354 while (i-- > 0) { 4355 prop = props[i]; 4356 if ((!propFilter || propFilter(prop, sourceObj, destObj)) && !merged[prop]) { 4357 destObj[prop] = sourceObj[prop]; 4358 merged[prop] = true; 4359 } 4360 } 4361 sourceObj = filter !== false && getPrototypeOf(sourceObj); 4362 } while (sourceObj && (!filter || filter(sourceObj, destObj)) && sourceObj !== Object.prototype); 4363 4364 return destObj; 4365 } 4366 4367 /** 4368 * Determines whether a string ends with the characters of a specified string 4369 * 4370 * @param {String} str 4371 * @param {String} searchString 4372 * @param {Number} [position= 0] 4373 * 4374 * @returns {boolean} 4375 */ 4376 const endsWith = (str, searchString, position) => { 4377 str = String(str); 4378 if (position === undefined || position > str.length) { 4379 position = str.length; 4380 } 4381 position -= searchString.length; 4382 const lastIndex = str.indexOf(searchString, position); 4383 return lastIndex !== -1 && lastIndex === position; 4384 } 4385 4386 4387 /** 4388 * Returns new array from array like object or null if failed 4389 * 4390 * @param {*} [thing] 4391 * 4392 * @returns {?Array} 4393 */ 4394 const toArray = (thing) => { 4395 if (!thing) return null; 4396 if (isArray(thing)) return thing; 4397 let i = thing.length; 4398 if (!isNumber(i)) return null; 4399 const arr = new Array(i); 4400 while (i-- > 0) { 4401 arr[i] = thing[i]; 4402 } 4403 return arr; 4404 } 4405 4406 /** 4407 * Checking if the Uint8Array exists and if it does, it returns a function that checks if the 4408 * thing passed in is an instance of Uint8Array 4409 * 4410 * @param {TypedArray} 4411 * 4412 * @returns {Array} 4413 */ 4414 // eslint-disable-next-line func-names 4415 const isTypedArray = (TypedArray => { 4416 // eslint-disable-next-line func-names 4417 return thing => { 4418 return TypedArray && thing instanceof TypedArray; 4419 }; 4420 })(typeof Uint8Array !== 'undefined' && getPrototypeOf(Uint8Array)); 4421 4422 /** 4423 * For each entry in the object, call the function with the key and value. 4424 * 4425 * @param {Object<any, any>} obj - The object to iterate over. 4426 * @param {Function} fn - The function to call for each entry. 4427 * 4428 * @returns {void} 4429 */ 4430 const forEachEntry = (obj, fn) => { 4431 const generator = obj && obj[Symbol.iterator]; 4432 4433 const iterator = generator.call(obj); 4434 4435 let result; 4436 4437 while ((result = iterator.next()) && !result.done) { 4438 const pair = result.value; 4439 fn.call(obj, pair[0], pair[1]); 4440 } 4441 } 4442 4443 /** 4444 * It takes a regular expression and a string, and returns an array of all the matches 4445 * 4446 * @param {string} regExp - The regular expression to match against. 4447 * @param {string} str - The string to search. 4448 * 4449 * @returns {Array<boolean>} 4450 */ 4451 const matchAll = (regExp, str) => { 4452 let matches; 4453 const arr = []; 4454 4455 while ((matches = regExp.exec(str)) !== null) { 4456 arr.push(matches); 4457 } 4458 4459 return arr; 4460 } 4461 4462 /* Checking if the kindOfTest function returns true when passed an HTMLFormElement. */ 4463 const isHTMLForm = kindOfTest('HTMLFormElement'); 4464 4465 const toCamelCase = str => { 4466 return str.toLowerCase().replace(/[-_\s]([a-z\d])(\w*)/g, 4467 function replacer(m, p1, p2) { 4468 return p1.toUpperCase() + p2; 4469 } 4470 ); 4471 }; 4472 4473 /* Creating a function that will check if an object has a property. */ 4474 const hasOwnProperty = (({hasOwnProperty}) => (obj, prop) => hasOwnProperty.call(obj, prop))(Object.prototype); 4475 4476 /** 4477 * Determine if a value is a RegExp object 4478 * 4479 * @param {*} val The value to test 4480 * 4481 * @returns {boolean} True if value is a RegExp object, otherwise false 4482 */ 4483 const isRegExp = kindOfTest('RegExp'); 4484 4485 const reduceDescriptors = (obj, reducer) => { 4486 const descriptors = Object.getOwnPropertyDescriptors(obj); 4487 const reducedDescriptors = {}; 4488 4489 forEach(descriptors, (descriptor, name) => { 4490 let ret; 4491 if ((ret = reducer(descriptor, name, obj)) !== false) { 4492 reducedDescriptors[name] = ret || descriptor; 4493 } 4494 }); 4495 4496 Object.defineProperties(obj, reducedDescriptors); 4497 } 4498 4499 /** 4500 * Makes all methods read-only 4501 * @param {Object} obj 4502 */ 4503 4504 const freezeMethods = (obj) => { 4505 reduceDescriptors(obj, (descriptor, name) => { 4506 // skip restricted props in strict mode 4507 if (isFunction(obj) && ['arguments', 'caller', 'callee'].indexOf(name) !== -1) { 4508 return false; 4509 } 4510 4511 const value = obj[name]; 4512 4513 if (!isFunction(value)) return; 4514 4515 descriptor.enumerable = false; 4516 4517 if ('writable' in descriptor) { 4518 descriptor.writable = false; 4519 return; 4520 } 4521 4522 if (!descriptor.set) { 4523 descriptor.set = () => { 4524 throw Error('Can not rewrite read-only method \'' + name + '\''); 4525 }; 4526 } 4527 }); 4528 } 4529 4530 const toObjectSet = (arrayOrString, delimiter) => { 4531 const obj = {}; 4532 4533 const define = (arr) => { 4534 arr.forEach(value => { 4535 obj[value] = true; 4536 }); 4537 } 4538 4539 isArray(arrayOrString) ? define(arrayOrString) : define(String(arrayOrString).split(delimiter)); 4540 4541 return obj; 4542 } 4543 4544 const noop = () => {} 4545 4546 const toFiniteNumber = (value, defaultValue) => { 4547 return value != null && Number.isFinite(value = +value) ? value : defaultValue; 4548 } 4549 4550 const ALPHA = 'abcdefghijklmnopqrstuvwxyz' 4551 4552 const DIGIT = '0123456789'; 4553 4554 const ALPHABET = { 4555 DIGIT, 4556 ALPHA, 4557 ALPHA_DIGIT: ALPHA + ALPHA.toUpperCase() + DIGIT 4558 } 4559 4560 const generateString = (size = 16, alphabet = ALPHABET.ALPHA_DIGIT) => { 4561 let str = ''; 4562 const {length} = alphabet; 4563 while (size--) { 4564 str += alphabet[Math.random() * length|0] 4565 } 4566 4567 return str; 4568 } 4569 4570 /** 4571 * If the thing is a FormData object, return true, otherwise return false. 4572 * 4573 * @param {unknown} thing - The thing to check. 4574 * 4575 * @returns {boolean} 4576 */ 4577 function isSpecCompliantForm(thing) { 4578 return !!(thing && isFunction(thing.append) && thing[Symbol.toStringTag] === 'FormData' && thing[Symbol.iterator]); 4579 } 4580 4581 const toJSONObject = (obj) => { 4582 const stack = new Array(10); 4583 4584 const visit = (source, i) => { 4585 4586 if (isObject(source)) { 4587 if (stack.indexOf(source) >= 0) { 4588 return; 4589 } 4590 4591 if(!('toJSON' in source)) { 4592 stack[i] = source; 4593 const target = isArray(source) ? [] : {}; 4594 4595 forEach(source, (value, key) => { 4596 const reducedValue = visit(value, i + 1); 4597 !isUndefined(reducedValue) && (target[key] = reducedValue); 4598 }); 4599 4600 stack[i] = undefined; 4601 4602 return target; 4603 } 4604 } 4605 4606 return source; 4607 } 4608 4609 return visit(obj, 0); 4610 } 4611 4612 const isAsyncFn = kindOfTest('AsyncFunction'); 4613 4614 const isThenable = (thing) => 4615 thing && (isObject(thing) || isFunction(thing)) && isFunction(thing.then) && isFunction(thing.catch); 4616 4617 // original code 4618 // https://github.com/DigitalBrainJS/AxiosPromise/blob/16deab13710ec09779922131f3fa5954320f83ab/lib/utils.js#L11-L34 4619 4620 const _setImmediate = ((setImmediateSupported, postMessageSupported) => { 4621 if (setImmediateSupported) { 4622 return setImmediate; 4623 } 4624 4625 return postMessageSupported ? ((token, callbacks) => { 4626 _global.addEventListener("message", ({source, data}) => { 4627 if (source === _global && data === token) { 4628 callbacks.length && callbacks.shift()(); 4629 } 4630 }, false); 4631 4632 return (cb) => { 4633 callbacks.push(cb); 4634 _global.postMessage(token, "*"); 4635 } 4636 })(`axios@${Math.random()}`, []) : (cb) => setTimeout(cb); 4637 })( 4638 typeof setImmediate === 'function', 4639 isFunction(_global.postMessage) 4640 ); 4641 4642 const asap = typeof queueMicrotask !== 'undefined' ? 4643 queueMicrotask.bind(_global) : ( typeof process !== 'undefined' && process.nextTick || _setImmediate); 4644 4645 // ********************* 4646 4647 /* harmony default export */ const __WEBPACK_DEFAULT_EXPORT__ = ({ 4648 isArray, 4649 isArrayBuffer, 4650 isBuffer, 4651 isFormData, 4652 isArrayBufferView, 4653 isString, 4654 isNumber, 4655 isBoolean, 4656 isObject, 4657 isPlainObject, 4658 isReadableStream, 4659 isRequest, 4660 isResponse, 4661 isHeaders, 4662 isUndefined, 4663 isDate, 4664 isFile, 4665 isBlob, 4666 isRegExp, 4667 isFunction, 4668 isStream, 4669 isURLSearchParams, 4670 isTypedArray, 4671 isFileList, 4672 forEach, 4673 merge, 4674 extend, 4675 trim, 4676 stripBOM, 4677 inherits, 4678 toFlatObject, 4679 kindOf, 4680 kindOfTest, 4681 endsWith, 4682 toArray, 4683 forEachEntry, 4684 matchAll, 4685 isHTMLForm, 4686 hasOwnProperty, 4687 hasOwnProp: hasOwnProperty, // an alias to avoid ESLint no-prototype-builtins detection 4688 reduceDescriptors, 4689 freezeMethods, 4690 toObjectSet, 4691 toCamelCase, 4692 noop, 4693 toFiniteNumber, 4694 findKey, 4695 global: _global, 4696 isContextDefined, 4697 ALPHABET, 4698 generateString, 4699 isSpecCompliantForm, 4700 toJSONObject, 4701 isAsyncFn, 4702 isThenable, 4703 setImmediate: _setImmediate, 4704 asap 4705 }); 4706 4707 4708 /***/ }), 4709 4710 /***/ "./node_modules/goober/dist/goober.modern.js": 4711 /*!***************************************************!*\ 4712 !*** ./node_modules/goober/dist/goober.modern.js ***! 4713 \***************************************************/ 4714 /***/ ((__unused_webpack___webpack_module__, __webpack_exports__, __webpack_require__) => { 4715 4716 __webpack_require__.r(__webpack_exports__); 4717 /* harmony export */ __webpack_require__.d(__webpack_exports__, { 4718 /* harmony export */ css: () => (/* binding */ u), 4719 /* harmony export */ extractCss: () => (/* binding */ r), 4720 /* harmony export */ glob: () => (/* binding */ b), 4721 /* harmony export */ keyframes: () => (/* binding */ h), 4722 /* harmony export */ setup: () => (/* binding */ m), 4723 /* harmony export */ styled: () => (/* binding */ j) 4724 /* harmony export */ }); 4725 let e={data:""},t=t=>"object"==typeof window?((t?t.querySelector("#_goober"):window._goober)||Object.assign((t||document.head).appendChild(document.createElement("style")),{innerHTML:" ",id:"_goober"})).firstChild:t||e,r=e=>{let r=t(e),l=r.data;return r.data="",l},l=/(?:([\u0080-\uFFFF\w-%@]+) *:? *([^{;]+?);|([^;}{]*?) *{)|(}\s*)/g,a=/\/\*[^]*?\*\/| +/g,n=/\n+/g,o=(e,t)=>{let r="",l="",a="";for(let n in e){let c=e[n];"@"==n[0]?"i"==n[1]?r=n+" "+c+";":l+="f"==n[1]?o(c,n):n+"{"+o(c,"k"==n[1]?"":t)+"}":"object"==typeof c?l+=o(c,t?t.replace(/([^,])+/g,e=>n.replace(/([^,]*:\S+\([^)]*\))|([^,])+/g,t=>/&/.test(t)?t.replace(/&/g,e):e?e+" "+t:t)):n):null!=c&&(n=/^--/.test(n)?n:n.replace(/[A-Z]/g,"-$&").toLowerCase(),a+=o.p?o.p(n,c):n+":"+c+";")}return r+(t&&a?t+"{"+a+"}":a)+l},c={},s=e=>{if("object"==typeof e){let t="";for(let r in e)t+=r+s(e[r]);return t}return e},i=(e,t,r,i,p)=>{let u=s(e),d=c[u]||(c[u]=(e=>{let t=0,r=11;for(;t<e.length;)r=101*r+e.charCodeAt(t++)>>>0;return"go"+r})(u));if(!c[d]){let t=u!==e?e:(e=>{let t,r,o=[{}];for(;t=l.exec(e.replace(a,""));)t[4]?o.shift():t[3]?(r=t[3].replace(n," ").trim(),o.unshift(o[0][r]=o[0][r]||{})):o[0][t[1]]=t[2].replace(n," ").trim();return o[0]})(e);c[d]=o(p?{["@keyframes "+d]:t}:t,r?"":"."+d)}let f=r&&c.g?c.g:null;return r&&(c.g=c[d]),((e,t,r,l)=>{l?t.data=t.data.replace(l,e):-1===t.data.indexOf(e)&&(t.data=r?e+t.data:t.data+e)})(c[d],t,i,f),d},p=(e,t,r)=>e.reduce((e,l,a)=>{let n=t[a];if(n&&n.call){let e=n(r),t=e&&e.props&&e.props.className||/^go/.test(e)&&e;n=t?"."+t:e&&"object"==typeof e?e.props?"":o(e,""):!1===e?"":e}return e+l+(null==n?"":n)},"");function u(e){let r=this||{},l=e.call?e(r.p):e;return i(l.unshift?l.raw?p(l,[].slice.call(arguments,1),r.p):l.reduce((e,t)=>Object.assign(e,t&&t.call?t(r.p):t),{}):l,t(r.target),r.g,r.o,r.k)}let d,f,g,b=u.bind({g:1}),h=u.bind({k:1});function m(e,t,r,l){o.p=t,d=e,f=r,g=l}function j(e,t){let r=this||{};return function(){let l=arguments;function a(n,o){let c=Object.assign({},n),s=c.className||a.className;r.p=Object.assign({theme:f&&f()},c),r.o=/ *go\d+/.test(s),c.className=u.apply(r,l)+(s?" "+s:""),t&&(c.ref=o);let i=e;return e[0]&&(i=c.as||e,delete c.as),g&&i[0]&&g(c),d(i,c)}return t?t(a):a}} 4726 4727 4728 /***/ }), 4729 4730 /***/ "./node_modules/react-hot-toast/dist/index.mjs": 4731 /*!*****************************************************!*\ 4732 !*** ./node_modules/react-hot-toast/dist/index.mjs ***! 4733 \*****************************************************/ 4734 /***/ ((__unused_webpack___webpack_module__, __webpack_exports__, __webpack_require__) => { 4735 4736 __webpack_require__.r(__webpack_exports__); 4737 /* harmony export */ __webpack_require__.d(__webpack_exports__, { 4738 /* harmony export */ CheckmarkIcon: () => (/* binding */ _), 4739 /* harmony export */ ErrorIcon: () => (/* binding */ k), 4740 /* harmony export */ LoaderIcon: () => (/* binding */ V), 4741 /* harmony export */ ToastBar: () => (/* binding */ C), 4742 /* harmony export */ ToastIcon: () => (/* binding */ M), 4743 /* harmony export */ Toaster: () => (/* binding */ Oe), 4744 /* harmony export */ "default": () => (/* binding */ Vt), 4745 /* harmony export */ resolveValue: () => (/* binding */ f), 4746 /* harmony export */ toast: () => (/* binding */ c), 4747 /* harmony export */ useToaster: () => (/* binding */ O), 4748 /* harmony export */ useToasterStore: () => (/* binding */ D) 4749 /* harmony export */ }); 4750 /* harmony import */ var react__WEBPACK_IMPORTED_MODULE_0__ = __webpack_require__(/*! react */ "react"); 4751 /* harmony import */ var goober__WEBPACK_IMPORTED_MODULE_1__ = __webpack_require__(/*! goober */ "./node_modules/goober/dist/goober.modern.js"); 4752 "use client"; 4753 var W=e=>typeof e=="function",f=(e,t)=>W(e)?e(t):e;var F=(()=>{let e=0;return()=>(++e).toString()})(),A=(()=>{let e;return()=>{if(e===void 0&&typeof window<"u"){let t=matchMedia("(prefers-reduced-motion: reduce)");e=!t||t.matches}return e}})();var Y=20;var U=(e,t)=>{switch(t.type){case 0:return{...e,toasts:[t.toast,...e.toasts].slice(0,Y)};case 1:return{...e,toasts:e.toasts.map(o=>o.id===t.toast.id?{...o,...t.toast}:o)};case 2:let{toast:r}=t;return U(e,{type:e.toasts.find(o=>o.id===r.id)?1:0,toast:r});case 3:let{toastId:s}=t;return{...e,toasts:e.toasts.map(o=>o.id===s||s===void 0?{...o,dismissed:!0,visible:!1}:o)};case 4:return t.toastId===void 0?{...e,toasts:[]}:{...e,toasts:e.toasts.filter(o=>o.id!==t.toastId)};case 5:return{...e,pausedAt:t.time};case 6:let a=t.time-(e.pausedAt||0);return{...e,pausedAt:void 0,toasts:e.toasts.map(o=>({...o,pauseDuration:o.pauseDuration+a}))}}},P=[],y={toasts:[],pausedAt:void 0},u=e=>{y=U(y,e),P.forEach(t=>{t(y)})},q={blank:4e3,error:4e3,success:2e3,loading:1/0,custom:4e3},D=(e={})=>{let[t,r]=(0,react__WEBPACK_IMPORTED_MODULE_0__.useState)(y),s=(0,react__WEBPACK_IMPORTED_MODULE_0__.useRef)(y);(0,react__WEBPACK_IMPORTED_MODULE_0__.useEffect)(()=>(s.current!==y&&r(y),P.push(r),()=>{let o=P.indexOf(r);o>-1&&P.splice(o,1)}),[]);let a=t.toasts.map(o=>{var n,i,p;return{...e,...e[o.type],...o,removeDelay:o.removeDelay||((n=e[o.type])==null?void 0:n.removeDelay)||(e==null?void 0:e.removeDelay),duration:o.duration||((i=e[o.type])==null?void 0:i.duration)||(e==null?void 0:e.duration)||q[o.type],style:{...e.style,...(p=e[o.type])==null?void 0:p.style,...o.style}}});return{...t,toasts:a}};var J=(e,t="blank",r)=>({createdAt:Date.now(),visible:!0,dismissed:!1,type:t,ariaProps:{role:"status","aria-live":"polite"},message:e,pauseDuration:0,...r,id:(r==null?void 0:r.id)||F()}),x=e=>(t,r)=>{let s=J(t,e,r);return u({type:2,toast:s}),s.id},c=(e,t)=>x("blank")(e,t);c.error=x("error");c.success=x("success");c.loading=x("loading");c.custom=x("custom");c.dismiss=e=>{u({type:3,toastId:e})};c.remove=e=>u({type:4,toastId:e});c.promise=(e,t,r)=>{let s=c.loading(t.loading,{...r,...r==null?void 0:r.loading});return typeof e=="function"&&(e=e()),e.then(a=>{let o=t.success?f(t.success,a):void 0;return o?c.success(o,{id:s,...r,...r==null?void 0:r.success}):c.dismiss(s),a}).catch(a=>{let o=t.error?f(t.error,a):void 0;o?c.error(o,{id:s,...r,...r==null?void 0:r.error}):c.dismiss(s)}),e};var K=(e,t)=>{u({type:1,toast:{id:e,height:t}})},X=()=>{u({type:5,time:Date.now()})},b=new Map,Z=1e3,ee=(e,t=Z)=>{if(b.has(e))return;let r=setTimeout(()=>{b.delete(e),u({type:4,toastId:e})},t);b.set(e,r)},O=e=>{let{toasts:t,pausedAt:r}=D(e);(0,react__WEBPACK_IMPORTED_MODULE_0__.useEffect)(()=>{if(r)return;let o=Date.now(),n=t.map(i=>{if(i.duration===1/0)return;let p=(i.duration||0)+i.pauseDuration-(o-i.createdAt);if(p<0){i.visible&&c.dismiss(i.id);return}return setTimeout(()=>c.dismiss(i.id),p)});return()=>{n.forEach(i=>i&&clearTimeout(i))}},[t,r]);let s=(0,react__WEBPACK_IMPORTED_MODULE_0__.useCallback)(()=>{r&&u({type:6,time:Date.now()})},[r]),a=(0,react__WEBPACK_IMPORTED_MODULE_0__.useCallback)((o,n)=>{let{reverseOrder:i=!1,gutter:p=8,defaultPosition:d}=n||{},h=t.filter(m=>(m.position||d)===(o.position||d)&&m.height),v=h.findIndex(m=>m.id===o.id),S=h.filter((m,E)=>E<v&&m.visible).length;return h.filter(m=>m.visible).slice(...i?[S+1]:[0,S]).reduce((m,E)=>m+(E.height||0)+p,0)},[t]);return (0,react__WEBPACK_IMPORTED_MODULE_0__.useEffect)(()=>{t.forEach(o=>{if(o.dismissed)ee(o.id,o.removeDelay);else{let n=b.get(o.id);n&&(clearTimeout(n),b.delete(o.id))}})},[t]),{toasts:t,handlers:{updateHeight:K,startPause:X,endPause:s,calculateOffset:a}}};var oe=(0,goober__WEBPACK_IMPORTED_MODULE_1__.keyframes)` 1 (()=>{"use strict";var e={d:(t,n)=>{for(var r in n)e.o(n,r)&&!e.o(t,r)&&Object.defineProperty(t,r,{enumerable:!0,get:n[r]})},o:(e,t)=>Object.prototype.hasOwnProperty.call(e,t),r:e=>{"undefined"!=typeof Symbol&&Symbol.toStringTag&&Object.defineProperty(e,Symbol.toStringTag,{value:"Module"}),Object.defineProperty(e,"__esModule",{value:!0})}},t={};e.r(t),e.d(t,{hasBrowserEnv:()=>ut,hasStandardBrowserEnv:()=>ft,hasStandardBrowserWebWorkerEnv:()=>ht,navigator:()=>pt,origin:()=>mt}),window.wp.domReady,window.wp.element;const n=window.React;let r={data:""},o=e=>"object"==typeof window?((e?e.querySelector("#_goober"):window._goober)||Object.assign((e||document.head).appendChild(document.createElement("style")),{innerHTML:" ",id:"_goober"})).firstChild:e||r,s=/(?:([\u0080-\uFFFF\w-%@]+) *:? *([^{;]+?);|([^;}{]*?) *{)|(}\s*)/g,i=/\/\*[^]*?\*\/| +/g,a=/\n+/g,c=(e,t)=>{let n="",r="",o="";for(let s in e){let i=e[s];"@"==s[0]?"i"==s[1]?n=s+" "+i+";":r+="f"==s[1]?c(i,s):s+"{"+c(i,"k"==s[1]?"":t)+"}":"object"==typeof i?r+=c(i,t?t.replace(/([^,])+/g,(e=>s.replace(/([^,]*:\S+\([^)]*\))|([^,])+/g,(t=>/&/.test(t)?t.replace(/&/g,e):e?e+" "+t:t)))):s):null!=i&&(s=/^--/.test(s)?s:s.replace(/[A-Z]/g,"-$&").toLowerCase(),o+=c.p?c.p(s,i):s+":"+i+";")}return n+(t&&o?t+"{"+o+"}":o)+r},l={},d=e=>{if("object"==typeof e){let t="";for(let n in e)t+=n+d(e[n]);return t}return e},u=(e,t,n,r,o)=>{let u=d(e),p=l[u]||(l[u]=(e=>{let t=0,n=11;for(;t<e.length;)n=101*n+e.charCodeAt(t++)>>>0;return"go"+n})(u));if(!l[p]){let t=u!==e?e:(e=>{let t,n,r=[{}];for(;t=s.exec(e.replace(i,""));)t[4]?r.shift():t[3]?(n=t[3].replace(a," ").trim(),r.unshift(r[0][n]=r[0][n]||{})):r[0][t[1]]=t[2].replace(a," ").trim();return r[0]})(e);l[p]=c(o?{["@keyframes "+p]:t}:t,n?"":"."+p)}let f=n&&l.g?l.g:null;return n&&(l.g=l[p]),((e,t,n,r)=>{r?t.data=t.data.replace(r,e):-1===t.data.indexOf(e)&&(t.data=n?e+t.data:t.data+e)})(l[p],t,r,f),p};function p(e){let t=this||{},n=e.call?e(t.p):e;return u(n.unshift?n.raw?((e,t,n)=>e.reduce(((e,r,o)=>{let s=t[o];if(s&&s.call){let e=s(n),t=e&&e.props&&e.props.className||/^go/.test(e)&&e;s=t?"."+t:e&&"object"==typeof e?e.props?"":c(e,""):!1===e?"":e}return e+r+(null==s?"":s)}),""))(n,[].slice.call(arguments,1),t.p):n.reduce(((e,n)=>Object.assign(e,n&&n.call?n(t.p):n)),{}):n,o(t.target),t.g,t.o,t.k)}p.bind({g:1});let f,h,m,g=p.bind({k:1});function y(e,t){let n=this||{};return function(){let r=arguments;function o(s,i){let a=Object.assign({},s),c=a.className||o.className;n.p=Object.assign({theme:h&&h()},a),n.o=/ *go\d+/.test(c),a.className=p.apply(n,r)+(c?" "+c:""),t&&(a.ref=i);let l=e;return e[0]&&(l=a.as||e,delete a.as),m&&l[0]&&m(a),f(l,a)}return t?t(o):o}}var b=(e,t)=>(e=>"function"==typeof e)(e)?e(t):e,w=(()=>{let e=0;return()=>(++e).toString()})(),x=(()=>{let e;return()=>{if(void 0===e&&typeof window<"u"){let t=matchMedia("(prefers-reduced-motion: reduce)");e=!t||t.matches}return e}})(),v=(e,t)=>{switch(t.type){case 0:return{...e,toasts:[t.toast,...e.toasts].slice(0,20)};case 1:return{...e,toasts:e.toasts.map((e=>e.id===t.toast.id?{...e,...t.toast}:e))};case 2:let{toast:n}=t;return v(e,{type:e.toasts.find((e=>e.id===n.id))?1:0,toast:n});case 3:let{toastId:r}=t;return{...e,toasts:e.toasts.map((e=>e.id===r||void 0===r?{...e,dismissed:!0,visible:!1}:e))};case 4:return void 0===t.toastId?{...e,toasts:[]}:{...e,toasts:e.toasts.filter((e=>e.id!==t.toastId))};case 5:return{...e,pausedAt:t.time};case 6:let o=t.time-(e.pausedAt||0);return{...e,pausedAt:void 0,toasts:e.toasts.map((e=>({...e,pauseDuration:e.pauseDuration+o})))}}},E=[],S={toasts:[],pausedAt:void 0},O=e=>{S=v(S,e),E.forEach((e=>{e(S)}))},j={blank:4e3,error:4e3,success:2e3,loading:1/0,custom:4e3},R=e=>(t,n)=>{let r=((e,t="blank",n)=>({createdAt:Date.now(),visible:!0,dismissed:!1,type:t,ariaProps:{role:"status","aria-live":"polite"},message:e,pauseDuration:0,...n,id:(null==n?void 0:n.id)||w()}))(t,e,n);return O({type:2,toast:r}),r.id},T=(e,t)=>R("blank")(e,t);T.error=R("error"),T.success=R("success"),T.loading=R("loading"),T.custom=R("custom"),T.dismiss=e=>{O({type:3,toastId:e})},T.remove=e=>O({type:4,toastId:e}),T.promise=(e,t,n)=>{let r=T.loading(t.loading,{...n,...null==n?void 0:n.loading});return"function"==typeof e&&(e=e()),e.then((e=>{let o=t.success?b(t.success,e):void 0;return o?T.success(o,{id:r,...n,...null==n?void 0:n.success}):T.dismiss(r),e})).catch((e=>{let o=t.error?b(t.error,e):void 0;o?T.error(o,{id:r,...n,...null==n?void 0:n.error}):T.dismiss(r)})),e};var A=(e,t)=>{O({type:1,toast:{id:e,height:t}})},C=()=>{O({type:5,time:Date.now()})},N=new Map,P=g` 4754 2 from { 4755 3 transform: scale(0) rotate(45deg); … … 4759 7 transform: scale(1) rotate(45deg); 4760 8 opacity: 1; 4761 }`, re=(0,goober__WEBPACK_IMPORTED_MODULE_1__.keyframes)`9 }`,k=g` 4762 10 from { 4763 11 transform: scale(0); … … 4767 15 transform: scale(1); 4768 16 opacity: 1; 4769 }`, se=(0,goober__WEBPACK_IMPORTED_MODULE_1__.keyframes)`17 }`,D=g` 4770 18 from { 4771 19 transform: scale(0) rotate(90deg); … … 4775 23 transform: scale(1) rotate(90deg); 4776 24 opacity: 1; 4777 }`, k=(0,goober__WEBPACK_IMPORTED_MODULE_1__.styled)("div")`25 }`,F=y("div")` 4778 26 width: 20px; 4779 27 opacity: 0; … … 4784 32 transform: rotate(45deg); 4785 33 4786 animation: ${ oe} 0.3s cubic-bezier(0.175, 0.885, 0.32, 1.275)34 animation: ${P} 0.3s cubic-bezier(0.175, 0.885, 0.32, 1.275) 4787 35 forwards; 4788 36 animation-delay: 100ms; … … 4791 39 &:before { 4792 40 content: ''; 4793 animation: ${ re} 0.15s ease-out forwards;41 animation: ${k} 0.15s ease-out forwards; 4794 42 animation-delay: 150ms; 4795 43 position: absolute; … … 4804 52 4805 53 &:before { 4806 animation: ${ se} 0.15s ease-out forwards;54 animation: ${D} 0.15s ease-out forwards; 4807 55 animation-delay: 180ms; 4808 56 transform: rotate(90deg); 4809 57 } 4810 ` ;var ne=(0,goober__WEBPACK_IMPORTED_MODULE_1__.keyframes)`58 `,U=g` 4811 59 from { 4812 60 transform: rotate(0deg); … … 4815 63 transform: rotate(360deg); 4816 64 } 4817 `, V=(0,goober__WEBPACK_IMPORTED_MODULE_1__.styled)("div")`65 `,L=y("div")` 4818 66 width: 12px; 4819 67 height: 12px; … … 4823 71 border-color: ${e=>e.secondary||"#e0e0e0"}; 4824 72 border-right-color: ${e=>e.primary||"#616161"}; 4825 animation: ${ ne} 1s linear infinite;4826 ` ;var pe=(0,goober__WEBPACK_IMPORTED_MODULE_1__.keyframes)`73 animation: ${U} 1s linear infinite; 74 `,_=g` 4827 75 from { 4828 76 transform: scale(0) rotate(45deg); … … 4832 80 transform: scale(1) rotate(45deg); 4833 81 opacity: 1; 4834 }`, de=(0,goober__WEBPACK_IMPORTED_MODULE_1__.keyframes)`82 }`,B=g` 4835 83 0% { 4836 84 height: 0; … … 4846 94 opacity: 1; 4847 95 height: 10px; 4848 }`, _=(0,goober__WEBPACK_IMPORTED_MODULE_1__.styled)("div")`96 }`,I=y("div")` 4849 97 width: 20px; 4850 98 opacity: 0; … … 4855 103 transform: rotate(45deg); 4856 104 4857 animation: ${ pe} 0.3s cubic-bezier(0.175, 0.885, 0.32, 1.275)105 animation: ${_} 0.3s cubic-bezier(0.175, 0.885, 0.32, 1.275) 4858 106 forwards; 4859 107 animation-delay: 100ms; … … 4861 109 content: ''; 4862 110 box-sizing: border-box; 4863 animation: ${ de} 0.2s ease-out forwards;111 animation: ${B} 0.2s ease-out forwards; 4864 112 opacity: 0; 4865 113 animation-delay: 200ms; … … 4873 121 width: 6px; 4874 122 } 4875 ` ;var ue=(0,goober__WEBPACK_IMPORTED_MODULE_1__.styled)("div")`123 `,q=y("div")` 4876 124 position: absolute; 4877 `, le=(0,goober__WEBPACK_IMPORTED_MODULE_1__.styled)("div")`125 `,M=y("div")` 4878 126 position: relative; 4879 127 display: flex; … … 4882 130 min-width: 20px; 4883 131 min-height: 20px; 4884 `, fe=(0,goober__WEBPACK_IMPORTED_MODULE_1__.keyframes)`132 `,$=g` 4885 133 from { 4886 134 transform: scale(0.6); … … 4890 138 transform: scale(1); 4891 139 opacity: 1; 4892 }`, Te=(0,goober__WEBPACK_IMPORTED_MODULE_1__.styled)("div")`140 }`,z=y("div")` 4893 141 position: relative; 4894 142 transform: scale(0.6); 4895 143 opacity: 0.4; 4896 144 min-width: 20px; 4897 animation: ${ fe} 0.3s 0.12s cubic-bezier(0.175, 0.885, 0.32, 1.275)145 animation: ${$} 0.3s 0.12s cubic-bezier(0.175, 0.885, 0.32, 1.275) 4898 146 forwards; 4899 `,M=({toast:e})=>{let{icon:t,type:r,iconTheme:s}=e;return t!==void 0?typeof t=="string"?react__WEBPACK_IMPORTED_MODULE_0__.createElement(Te,null,t):t:r==="blank"?null:react__WEBPACK_IMPORTED_MODULE_0__.createElement(le,null,react__WEBPACK_IMPORTED_MODULE_0__.createElement(V,{...s}),r!=="loading"&&react__WEBPACK_IMPORTED_MODULE_0__.createElement(ue,null,r==="error"?react__WEBPACK_IMPORTED_MODULE_0__.createElement(k,{...s}):react__WEBPACK_IMPORTED_MODULE_0__.createElement(_,{...s})))};var ye=e=>` 4900 0% {transform: translate3d(0,${e*-200}%,0) scale(.6); opacity:.5;} 4901 100% {transform: translate3d(0,0,0) scale(1); opacity:1;} 4902 `,ge=e=>` 4903 0% {transform: translate3d(0,0,-1px) scale(1); opacity:1;} 4904 100% {transform: translate3d(0,${e*-150}%,-1px) scale(.6); opacity:0;} 4905 `,he="0%{opacity:0;} 100%{opacity:1;}",xe="0%{opacity:1;} 100%{opacity:0;}",be=(0,goober__WEBPACK_IMPORTED_MODULE_1__.styled)("div")` 147 `,H=({toast:e})=>{let{icon:t,type:r,iconTheme:o}=e;return void 0!==t?"string"==typeof t?n.createElement(z,null,t):t:"blank"===r?null:n.createElement(M,null,n.createElement(L,{...o}),"loading"!==r&&n.createElement(q,null,"error"===r?n.createElement(F,{...o}):n.createElement(I,{...o})))},W=e=>`\n0% {transform: translate3d(0,${-200*e}%,0) scale(.6); opacity:.5;}\n100% {transform: translate3d(0,0,0) scale(1); opacity:1;}\n`,J=e=>`\n0% {transform: translate3d(0,0,-1px) scale(1); opacity:1;}\n100% {transform: translate3d(0,${-150*e}%,-1px) scale(.6); opacity:0;}\n`,K=y("div")` 4906 148 display: flex; 4907 149 align-items: center; … … 4915 157 padding: 8px 10px; 4916 158 border-radius: 8px; 4917 `, Se=(0,goober__WEBPACK_IMPORTED_MODULE_1__.styled)("div")`159 `,V=y("div")` 4918 160 display: flex; 4919 161 justify-content: center; … … 4922 164 flex: 1 1 auto; 4923 165 white-space: pre-line; 4924 `, Ae=(e,t)=>{let s=e.includes("top")?1:-1,[a,o]=A()?[he,xe]:[ye(s),ge(s)];return{animation:t?`${(0,goober__WEBPACK_IMPORTED_MODULE_1__.keyframes)(a)} 0.35s cubic-bezier(.21,1.02,.73,1) forwards`:`${(0,goober__WEBPACK_IMPORTED_MODULE_1__.keyframes)(o)} 0.4s forwards cubic-bezier(.06,.71,.55,1)`}},C=react__WEBPACK_IMPORTED_MODULE_0__.memo(({toast:e,position:t,style:r,children:s})=>{let a=e.height?Ae(e.position||t||"top-center",e.visible):{opacity:0},o=react__WEBPACK_IMPORTED_MODULE_0__.createElement(M,{toast:e}),n=react__WEBPACK_IMPORTED_MODULE_0__.createElement(Se,{...e.ariaProps},f(e.message,e));return react__WEBPACK_IMPORTED_MODULE_0__.createElement(be,{className:e.className,style:{...a,...r,...e.style}},typeof s=="function"?s({icon:o,message:n}):react__WEBPACK_IMPORTED_MODULE_0__.createElement(react__WEBPACK_IMPORTED_MODULE_0__.Fragment,null,o,n))});(0,goober__WEBPACK_IMPORTED_MODULE_1__.setup)(react__WEBPACK_IMPORTED_MODULE_0__.createElement);var ve=({id:e,className:t,style:r,onHeightUpdate:s,children:a})=>{let o=react__WEBPACK_IMPORTED_MODULE_0__.useCallback(n=>{if(n){let i=()=>{let p=n.getBoundingClientRect().height;s(e,p)};i(),new MutationObserver(i).observe(n,{subtree:!0,childList:!0,characterData:!0})}},[e,s]);return react__WEBPACK_IMPORTED_MODULE_0__.createElement("div",{ref:o,className:t,style:r},a)},Ee=(e,t)=>{let r=e.includes("top"),s=r?{top:0}:{bottom:0},a=e.includes("center")?{justifyContent:"center"}:e.includes("right")?{justifyContent:"flex-end"}:{};return{left:0,right:0,display:"flex",position:"absolute",transition:A()?void 0:"all 230ms cubic-bezier(.21,1.02,.73,1)",transform:`translateY(${t*(r?1:-1)}px)`,...s,...a}},De=(0,goober__WEBPACK_IMPORTED_MODULE_1__.css)`166 `,X=n.memo((({toast:e,position:t,style:r,children:o})=>{let s=e.height?((e,t)=>{let n=e.includes("top")?1:-1,[r,o]=x()?["0%{opacity:0;} 100%{opacity:1;}","0%{opacity:1;} 100%{opacity:0;}"]:[W(n),J(n)];return{animation:t?`${g(r)} 0.35s cubic-bezier(.21,1.02,.73,1) forwards`:`${g(o)} 0.4s forwards cubic-bezier(.06,.71,.55,1)`}})(e.position||t||"top-center",e.visible):{opacity:0},i=n.createElement(H,{toast:e}),a=n.createElement(V,{...e.ariaProps},b(e.message,e));return n.createElement(K,{className:e.className,style:{...s,...r,...e.style}},"function"==typeof o?o({icon:i,message:a}):n.createElement(n.Fragment,null,i,a))}));!function(e){c.p=void 0,f=e,h=void 0,m=void 0}(n.createElement);var G=({id:e,className:t,style:r,onHeightUpdate:o,children:s})=>{let i=n.useCallback((t=>{if(t){let n=()=>{let n=t.getBoundingClientRect().height;o(e,n)};n(),new MutationObserver(n).observe(t,{subtree:!0,childList:!0,characterData:!0})}}),[e,o]);return n.createElement("div",{ref:i,className:t,style:r},s)},Q=p` 4925 167 z-index: 9999; 4926 168 > * { 4927 169 pointer-events: auto; 4928 170 } 4929 `,R=16,Oe=({reverseOrder:e,position:t="top-center",toastOptions:r,gutter:s,children:a,containerStyle:o,containerClassName:n})=>{let{toasts:i,handlers:p}=O(r);return react__WEBPACK_IMPORTED_MODULE_0__.createElement("div",{id:"_rht_toaster",style:{position:"fixed",zIndex:9999,top:R,left:R,right:R,bottom:R,pointerEvents:"none",...o},className:n,onMouseEnter:p.startPause,onMouseLeave:p.endPause},i.map(d=>{let h=d.position||t,v=p.calculateOffset(d,{reverseOrder:e,gutter:s,defaultPosition:t}),S=Ee(h,v);return react__WEBPACK_IMPORTED_MODULE_0__.createElement(ve,{id:d.id,key:d.id,onHeightUpdate:p.updateHeight,className:d.visible?De:"",style:S},d.type==="custom"?f(d.message,d):a?a(d):react__WEBPACK_IMPORTED_MODULE_0__.createElement(C,{toast:d,position:h}))}))};var Vt=c; 4930 //# sourceMappingURL=index.mjs.map 4931 4932 /***/ }), 4933 4934 /***/ "./src/App.js": 4935 /*!********************!*\ 4936 !*** ./src/App.js ***! 4937 \********************/ 4938 /***/ ((__unused_webpack_module, __webpack_exports__, __webpack_require__) => { 4939 4940 __webpack_require__.r(__webpack_exports__); 4941 /* harmony export */ __webpack_require__.d(__webpack_exports__, { 4942 /* harmony export */ "default": () => (__WEBPACK_DEFAULT_EXPORT__) 4943 /* harmony export */ }); 4944 /* harmony import */ var react__WEBPACK_IMPORTED_MODULE_0__ = __webpack_require__(/*! react */ "react"); 4945 /* harmony import */ var react__WEBPACK_IMPORTED_MODULE_0___default = /*#__PURE__*/__webpack_require__.n(react__WEBPACK_IMPORTED_MODULE_0__); 4946 /* harmony import */ var react_hot_toast__WEBPACK_IMPORTED_MODULE_1__ = __webpack_require__(/*! react-hot-toast */ "./node_modules/react-hot-toast/dist/index.mjs"); 4947 /* harmony import */ var react_jsx_runtime__WEBPACK_IMPORTED_MODULE_2__ = __webpack_require__(/*! react/jsx-runtime */ "react/jsx-runtime"); 4948 /* harmony import */ var react_jsx_runtime__WEBPACK_IMPORTED_MODULE_2___default = /*#__PURE__*/__webpack_require__.n(react_jsx_runtime__WEBPACK_IMPORTED_MODULE_2__); 4949 4950 4951 4952 function App() { 4953 return /*#__PURE__*/(0,react_jsx_runtime__WEBPACK_IMPORTED_MODULE_2__.jsxs)(react_jsx_runtime__WEBPACK_IMPORTED_MODULE_2__.Fragment, { 4954 children: [/*#__PURE__*/(0,react_jsx_runtime__WEBPACK_IMPORTED_MODULE_2__.jsx)("h1", { 4955 children: " Add Block IP " 4956 }), /*#__PURE__*/(0,react_jsx_runtime__WEBPACK_IMPORTED_MODULE_2__.jsx)(react_hot_toast__WEBPACK_IMPORTED_MODULE_1__.Toaster, { 4957 position: "top-center" 4958 })] 4959 }); 4960 } 4961 /* harmony default export */ const __WEBPACK_DEFAULT_EXPORT__ = (App); 4962 4963 /***/ }), 4964 4965 /***/ "./src/components/IpManager.js": 4966 /*!*************************************!*\ 4967 !*** ./src/components/IpManager.js ***! 4968 \*************************************/ 4969 /***/ ((__unused_webpack_module, __webpack_exports__, __webpack_require__) => { 4970 4971 __webpack_require__.r(__webpack_exports__); 4972 /* harmony export */ __webpack_require__.d(__webpack_exports__, { 4973 /* harmony export */ "default": () => (__WEBPACK_DEFAULT_EXPORT__) 4974 /* harmony export */ }); 4975 /* harmony import */ var react__WEBPACK_IMPORTED_MODULE_0__ = __webpack_require__(/*! react */ "react"); 4976 /* harmony import */ var react__WEBPACK_IMPORTED_MODULE_0___default = /*#__PURE__*/__webpack_require__.n(react__WEBPACK_IMPORTED_MODULE_0__); 4977 /* harmony import */ var axios__WEBPACK_IMPORTED_MODULE_5__ = __webpack_require__(/*! axios */ "./node_modules/axios/lib/axios.js"); 4978 /* harmony import */ var react_hot_toast__WEBPACK_IMPORTED_MODULE_1__ = __webpack_require__(/*! react-hot-toast */ "./node_modules/react-hot-toast/dist/index.mjs"); 4979 /* harmony import */ var _NewIp__WEBPACK_IMPORTED_MODULE_2__ = __webpack_require__(/*! ./NewIp */ "./src/components/NewIp.js"); 4980 /* harmony import */ var _ViewIblocklist__WEBPACK_IMPORTED_MODULE_3__ = __webpack_require__(/*! ./ViewIblocklist */ "./src/components/ViewIblocklist.js"); 4981 /* harmony import */ var react_jsx_runtime__WEBPACK_IMPORTED_MODULE_4__ = __webpack_require__(/*! react/jsx-runtime */ "react/jsx-runtime"); 4982 /* harmony import */ var react_jsx_runtime__WEBPACK_IMPORTED_MODULE_4___default = /*#__PURE__*/__webpack_require__.n(react_jsx_runtime__WEBPACK_IMPORTED_MODULE_4__); 4983 4984 4985 4986 4987 4988 4989 const IpManager = () => { 4990 const [blockedIps, setBlockedIps] = (0,react__WEBPACK_IMPORTED_MODULE_0__.useState)([]); 4991 const [loading, setLoading] = (0,react__WEBPACK_IMPORTED_MODULE_0__.useState)(true); 4992 const fetchBlockedIps = () => { 4993 axios__WEBPACK_IMPORTED_MODULE_5__["default"].get(`${blocipadwoo.apiUrl}/wprk/v1/get_blkip`, { 4994 headers: { 4995 'Content-Type': 'application/json', 4996 'X-WP-NONCE': blocipadwoo.nonce 4997 } 4998 }).then(res => { 4999 setBlockedIps(res.data); 5000 setLoading(false); 5001 }).catch(err => { 5002 console.error('Error fetching blocked IPs:', err); 5003 setLoading(false); 5004 }); 5005 }; 5006 (0,react__WEBPACK_IMPORTED_MODULE_0__.useEffect)(() => { 5007 fetchBlockedIps(); 5008 }, []); 5009 return /*#__PURE__*/(0,react_jsx_runtime__WEBPACK_IMPORTED_MODULE_4__.jsxs)("div", { 5010 children: [/*#__PURE__*/(0,react_jsx_runtime__WEBPACK_IMPORTED_MODULE_4__.jsx)(_NewIp__WEBPACK_IMPORTED_MODULE_2__["default"], { 5011 onIpAdded: fetchBlockedIps 5012 }), /*#__PURE__*/(0,react_jsx_runtime__WEBPACK_IMPORTED_MODULE_4__.jsx)(_ViewIblocklist__WEBPACK_IMPORTED_MODULE_3__["default"], { 5013 blockedIps: blockedIps, 5014 loading: loading, 5015 refresh: fetchBlockedIps 5016 })] 5017 }); 5018 }; 5019 /* harmony default export */ const __WEBPACK_DEFAULT_EXPORT__ = (IpManager); 5020 5021 /***/ }), 5022 5023 /***/ "./src/components/NewIp.js": 5024 /*!*********************************!*\ 5025 !*** ./src/components/NewIp.js ***! 5026 \*********************************/ 5027 /***/ ((__unused_webpack_module, __webpack_exports__, __webpack_require__) => { 5028 5029 __webpack_require__.r(__webpack_exports__); 5030 /* harmony export */ __webpack_require__.d(__webpack_exports__, { 5031 /* harmony export */ "default": () => (__WEBPACK_DEFAULT_EXPORT__) 5032 /* harmony export */ }); 5033 /* harmony import */ var react__WEBPACK_IMPORTED_MODULE_0__ = __webpack_require__(/*! react */ "react"); 5034 /* harmony import */ var react__WEBPACK_IMPORTED_MODULE_0___default = /*#__PURE__*/__webpack_require__.n(react__WEBPACK_IMPORTED_MODULE_0__); 5035 /* harmony import */ var axios__WEBPACK_IMPORTED_MODULE_3__ = __webpack_require__(/*! axios */ "./node_modules/axios/lib/axios.js"); 5036 /* harmony import */ var react_hot_toast__WEBPACK_IMPORTED_MODULE_1__ = __webpack_require__(/*! react-hot-toast */ "./node_modules/react-hot-toast/dist/index.mjs"); 5037 /* harmony import */ var react_jsx_runtime__WEBPACK_IMPORTED_MODULE_2__ = __webpack_require__(/*! react/jsx-runtime */ "react/jsx-runtime"); 5038 /* harmony import */ var react_jsx_runtime__WEBPACK_IMPORTED_MODULE_2___default = /*#__PURE__*/__webpack_require__.n(react_jsx_runtime__WEBPACK_IMPORTED_MODULE_2__); 5039 5040 5041 5042 5043 const NewIp = ({ 5044 onIpAdded 5045 }) => { 5046 const [ipaddress, setIpaddress] = (0,react__WEBPACK_IMPORTED_MODULE_0__.useState)(''); 5047 const [redirect, setRedirect] = (0,react__WEBPACK_IMPORTED_MODULE_0__.useState)(''); 5048 const [startdate, setStartdate] = (0,react__WEBPACK_IMPORTED_MODULE_0__.useState)(''); 5049 const [enddate, setEnddate] = (0,react__WEBPACK_IMPORTED_MODULE_0__.useState)(''); 5050 const [loader, setLoader] = (0,react__WEBPACK_IMPORTED_MODULE_0__.useState)('Save Settings'); 5051 const handleSubmit = e => { 5052 e.preventDefault(); 5053 setLoader('Saving...'); 5054 const ipRegex = /^(?:(?:25[0-5]|2[0-4][0-9]|1[0-9]{2}|[1-9]?[0-9])\.){3}(?:25[0-5]|2[0-4][0-9]|1[0-9]{2}|[1-9]?[0-9])$|^([a-fA-F0-9:]+:+)+[a-fA-F0-9]+$/; 5055 console.log('IP Address:', ipaddress); 5056 if (!ipRegex.test(ipaddress)) { 5057 react_hot_toast__WEBPACK_IMPORTED_MODULE_1__["default"].error('Invalid IP address! Please enter a valid IP.', { 5058 position: 'top-center', 5059 duration: 4000, 5060 style: { 5061 color: '#D32F2F', 5062 marginTop: '20px', 5063 padding: '10px' 5064 } 5065 }); 5066 setLoader('Save Settings'); 5067 return; 5068 } 5069 const start = new Date(startdate); 5070 const end = new Date(enddate); 5071 if (end <= start) { 5072 react_hot_toast__WEBPACK_IMPORTED_MODULE_1__["default"].error('End Date must be later than Start Date', { 5073 position: 'top-center', 5074 duration: 4000, 5075 style: { 5076 color: '#D32F2F', 5077 marginTop: '20px', 5078 padding: '10px' 5079 } 5080 }); 5081 setLoader('Save Settings'); 5082 return; 5083 } 5084 console.log('IP Address:'); 5085 axios__WEBPACK_IMPORTED_MODULE_3__["default"].post(`${blocipadwoo.apiUrl}/wooip/v1/new_ip`, { 5086 ipaddress, 5087 redirect, 5088 startdate, 5089 enddate 5090 }, { 5091 headers: { 5092 'Content-Type': 'application/json', 5093 'X-WP-NONCE': blocipadwoo.nonce 5094 } 5095 }).then(res => { 5096 const response = res?.data; 5097 if (response?.status === 'success') { 5098 react_hot_toast__WEBPACK_IMPORTED_MODULE_1__["default"].success(response.message, { 5099 position: 'top-center', 5100 duration: 4000, 5101 style: { 5102 color: '#2e7d32', 5103 marginTop: '20px', 5104 padding: '10px' 5105 } 5106 }); 5107 setIpaddress(''); 5108 setRedirect(''); 5109 setStartdate(''); 5110 setEnddate(''); 5111 onIpAdded?.(); // Optional callback 5112 } else if (response?.status === 'error') { 5113 react_hot_toast__WEBPACK_IMPORTED_MODULE_1__["default"].error(response.message, { 5114 position: 'top-center', 5115 duration: 4000, 5116 style: { 5117 color: '#D32F2F', 5118 marginTop: '20px', 5119 padding: '10px' 5120 } 5121 }); 5122 } 5123 setLoader('Save Settings'); 5124 }).catch(error => { 5125 react_hot_toast__WEBPACK_IMPORTED_MODULE_1__["default"].error('Something went wrong. Please try again.', { 5126 position: 'top-center', 5127 duration: 4000, 5128 style: { 5129 background: '#fff3cd', 5130 color: '#856404', 5131 padding: '12px' 5132 } 5133 }); 5134 setLoader('Save Settings'); 5135 }); 5136 }; 5137 return /*#__PURE__*/(0,react_jsx_runtime__WEBPACK_IMPORTED_MODULE_2__.jsx)("form", { 5138 onSubmit: handleSubmit, 5139 children: /*#__PURE__*/(0,react_jsx_runtime__WEBPACK_IMPORTED_MODULE_2__.jsxs)("div", { 5140 className: "form-section", 5141 children: [/*#__PURE__*/(0,react_jsx_runtime__WEBPACK_IMPORTED_MODULE_2__.jsxs)("div", { 5142 className: "form-group", 5143 children: [/*#__PURE__*/(0,react_jsx_runtime__WEBPACK_IMPORTED_MODULE_2__.jsx)("label", { 5144 htmlFor: "ipaddress", 5145 children: "Ip Address :" 5146 }), /*#__PURE__*/(0,react_jsx_runtime__WEBPACK_IMPORTED_MODULE_2__.jsx)("input", { 5147 type: "text", 5148 name: "ipaddress", 5149 id: "ipaddress", 5150 placeholder: "Type your block IP address", 5151 value: ipaddress, 5152 onChange: e => setIpaddress(e.target.value) 5153 })] 5154 }), /*#__PURE__*/(0,react_jsx_runtime__WEBPACK_IMPORTED_MODULE_2__.jsxs)("div", { 5155 className: "form-group", 5156 children: [/*#__PURE__*/(0,react_jsx_runtime__WEBPACK_IMPORTED_MODULE_2__.jsx)("label", { 5157 htmlFor: "redirect", 5158 children: "Redirect URL :" 5159 }), /*#__PURE__*/(0,react_jsx_runtime__WEBPACK_IMPORTED_MODULE_2__.jsx)("input", { 5160 type: "url", 5161 name: "redirect", 5162 id: "redirect", 5163 placeholder: "Redirect Url", 5164 value: redirect, 5165 onChange: e => setRedirect(e.target.value) 5166 })] 5167 }), /*#__PURE__*/(0,react_jsx_runtime__WEBPACK_IMPORTED_MODULE_2__.jsxs)("div", { 5168 className: "form-group", 5169 children: [/*#__PURE__*/(0,react_jsx_runtime__WEBPACK_IMPORTED_MODULE_2__.jsx)("label", { 5170 htmlFor: "startdate", 5171 children: "Start Date :" 5172 }), /*#__PURE__*/(0,react_jsx_runtime__WEBPACK_IMPORTED_MODULE_2__.jsx)("input", { 5173 type: "date", 5174 name: "startdate", 5175 id: "startdate", 5176 value: startdate, 5177 onChange: e => setStartdate(e.target.value) 5178 })] 5179 }), /*#__PURE__*/(0,react_jsx_runtime__WEBPACK_IMPORTED_MODULE_2__.jsxs)("div", { 5180 className: "form-group", 5181 children: [/*#__PURE__*/(0,react_jsx_runtime__WEBPACK_IMPORTED_MODULE_2__.jsx)("label", { 5182 htmlFor: "enddate", 5183 children: "End Date :" 5184 }), /*#__PURE__*/(0,react_jsx_runtime__WEBPACK_IMPORTED_MODULE_2__.jsx)("input", { 5185 type: "date", 5186 name: "enddate", 5187 id: "enddate", 5188 value: enddate, 5189 onChange: e => setEnddate(e.target.value) 5190 })] 5191 }), /*#__PURE__*/(0,react_jsx_runtime__WEBPACK_IMPORTED_MODULE_2__.jsxs)("div", { 5192 className: "form-group", 5193 children: [/*#__PURE__*/(0,react_jsx_runtime__WEBPACK_IMPORTED_MODULE_2__.jsx)("div", { 5194 className: "col-sm-4", 5195 children: /*#__PURE__*/(0,react_jsx_runtime__WEBPACK_IMPORTED_MODULE_2__.jsx)("button", { 5196 type: "submit", 5197 className: "button button-primary", 5198 children: loader 5199 }) 5200 }), /*#__PURE__*/(0,react_jsx_runtime__WEBPACK_IMPORTED_MODULE_2__.jsx)("div", { 5201 className: "col-sm-8" 5202 })] 5203 })] 5204 }) 5205 }); 5206 }; 5207 /* harmony default export */ const __WEBPACK_DEFAULT_EXPORT__ = (NewIp); 5208 5209 /***/ }), 5210 5211 /***/ "./src/components/ViewIblocklist.js": 5212 /*!******************************************!*\ 5213 !*** ./src/components/ViewIblocklist.js ***! 5214 \******************************************/ 5215 /***/ ((__unused_webpack_module, __webpack_exports__, __webpack_require__) => { 5216 5217 __webpack_require__.r(__webpack_exports__); 5218 /* harmony export */ __webpack_require__.d(__webpack_exports__, { 5219 /* harmony export */ "default": () => (__WEBPACK_DEFAULT_EXPORT__) 5220 /* harmony export */ }); 5221 /* harmony import */ var react__WEBPACK_IMPORTED_MODULE_0__ = __webpack_require__(/*! react */ "react"); 5222 /* harmony import */ var react__WEBPACK_IMPORTED_MODULE_0___default = /*#__PURE__*/__webpack_require__.n(react__WEBPACK_IMPORTED_MODULE_0__); 5223 /* harmony import */ var axios__WEBPACK_IMPORTED_MODULE_2__ = __webpack_require__(/*! axios */ "./node_modules/axios/lib/axios.js"); 5224 /* harmony import */ var react_jsx_runtime__WEBPACK_IMPORTED_MODULE_1__ = __webpack_require__(/*! react/jsx-runtime */ "react/jsx-runtime"); 5225 /* harmony import */ var react_jsx_runtime__WEBPACK_IMPORTED_MODULE_1___default = /*#__PURE__*/__webpack_require__.n(react_jsx_runtime__WEBPACK_IMPORTED_MODULE_1__); 5226 5227 5228 5229 const ViewIblocklist = ({ 5230 blockedIps = [], 5231 refresh 5232 }) => { 5233 const [editingIndex, setEditingIndex] = (0,react__WEBPACK_IMPORTED_MODULE_0__.useState)(null); 5234 const [editIp, setEditIp] = (0,react__WEBPACK_IMPORTED_MODULE_0__.useState)(""); 5235 const [editRedirect, setRedirect] = (0,react__WEBPACK_IMPORTED_MODULE_0__.useState)(""); 5236 const [editstartDate, setStartdate] = (0,react__WEBPACK_IMPORTED_MODULE_0__.useState)(""); 5237 const [editendDate, setEnddate] = (0,react__WEBPACK_IMPORTED_MODULE_0__.useState)(""); 5238 const handleDelete = id => { 5239 if (window.confirm("Are you sure you want to delete this blocked IP?")) { 5240 axios__WEBPACK_IMPORTED_MODULE_2__["default"].post(`${blocipadwoo.apiUrl}/wprk/v1/delete_blkip`, { 5241 id 5242 }, { 5243 headers: { 5244 'Content-Type': 'application/json', 5245 'X-WP-NONCE': blocipadwoo.nonce 5246 } 5247 }).then(() => { 5248 alert("IP deleted successfully!"); 5249 refresh(); 5250 }).catch(err => console.error("Error deleting IP:", err)); 5251 } 5252 }; 5253 const handleEdit = (index, ip) => { 5254 setEditingIndex(index); 5255 setEditIp(ip.ipaddress); 5256 setRedirect(ip.redirect); 5257 setStartdate(ip.startdate); 5258 setEnddate(ip.enddate); 5259 }; 5260 const handleUpdate = ip => { 5261 const ipRegex = /^(?:(?:25[0-5]|2[0-4][0-9]|1\d{2}|[1-9]?\d)\.){3}(?:25[0-5]|2[0-4][0-9]|1\d{2}|[1-9]?\d)$|^([a-fA-F0-9:]+:+)+[a-fA-F0-9]+$/; 5262 if (!ipRegex.test(editIp)) { 5263 alert("❌ Invalid IP address format."); 5264 return; 5265 } 5266 const urlRegex = /^(https?:\/\/)?([\w\-])+(\.[\w\-]+)+[/#?]?.*$/; 5267 if (editRedirect && !urlRegex.test(editRedirect)) { 5268 alert("❌ Invalid Redirect URL format."); 5269 return; 5270 } 5271 const start = new Date(editstartDate); 5272 const end = new Date(editendDate); 5273 if (end <= start) { 5274 alert("❌ End date must be later than start date."); 5275 return; 5276 } 5277 axios__WEBPACK_IMPORTED_MODULE_2__["default"].post(`${blocipadwoo.apiUrl}/wprk/v1/update_blkip`, { 5278 id: ip.id, 5279 ipaddress: editIp, 5280 redirect: editRedirect, 5281 startdate: editstartDate, 5282 enddate: editendDate 5283 }, { 5284 headers: { 5285 'Content-Type': 'application/json', 5286 'X-WP-NONCE': blocipadwoo.nonce 5287 } 5288 }).then(() => { 5289 alert("IP updated successfully!"); 5290 setEditingIndex(null); 5291 refresh(); 5292 }).catch(err => console.error("Error updating IP:", err)); 5293 }; 5294 return /*#__PURE__*/(0,react_jsx_runtime__WEBPACK_IMPORTED_MODULE_1__.jsxs)("div", { 5295 className: "table-container", 5296 children: [/*#__PURE__*/(0,react_jsx_runtime__WEBPACK_IMPORTED_MODULE_1__.jsx)("div", { 5297 className: "section-title", 5298 children: "Blocked IP List" 5299 }), /*#__PURE__*/(0,react_jsx_runtime__WEBPACK_IMPORTED_MODULE_1__.jsxs)("table", { 5300 children: [/*#__PURE__*/(0,react_jsx_runtime__WEBPACK_IMPORTED_MODULE_1__.jsx)("thead", { 5301 children: /*#__PURE__*/(0,react_jsx_runtime__WEBPACK_IMPORTED_MODULE_1__.jsxs)("tr", { 5302 children: [/*#__PURE__*/(0,react_jsx_runtime__WEBPACK_IMPORTED_MODULE_1__.jsx)("th", { 5303 children: "IP Address" 5304 }), /*#__PURE__*/(0,react_jsx_runtime__WEBPACK_IMPORTED_MODULE_1__.jsx)("th", { 5305 children: "Redirect URL" 5306 }), /*#__PURE__*/(0,react_jsx_runtime__WEBPACK_IMPORTED_MODULE_1__.jsx)("th", { 5307 children: "Start Date" 5308 }), /*#__PURE__*/(0,react_jsx_runtime__WEBPACK_IMPORTED_MODULE_1__.jsx)("th", { 5309 children: "End Date" 5310 }), /*#__PURE__*/(0,react_jsx_runtime__WEBPACK_IMPORTED_MODULE_1__.jsx)("th", { 5311 children: "Action" 5312 })] 5313 }) 5314 }), /*#__PURE__*/(0,react_jsx_runtime__WEBPACK_IMPORTED_MODULE_1__.jsx)("tbody", { 5315 children: blockedIps.length > 0 ? blockedIps.map((ip, index) => /*#__PURE__*/(0,react_jsx_runtime__WEBPACK_IMPORTED_MODULE_1__.jsxs)("tr", { 5316 children: [/*#__PURE__*/(0,react_jsx_runtime__WEBPACK_IMPORTED_MODULE_1__.jsx)("td", { 5317 children: editingIndex === index ? /*#__PURE__*/(0,react_jsx_runtime__WEBPACK_IMPORTED_MODULE_1__.jsx)("input", { 5318 type: "text", 5319 value: editIp, 5320 onChange: e => setEditIp(e.target.value) 5321 }) : ip.ipaddress 5322 }), /*#__PURE__*/(0,react_jsx_runtime__WEBPACK_IMPORTED_MODULE_1__.jsx)("td", { 5323 children: editingIndex === index ? /*#__PURE__*/(0,react_jsx_runtime__WEBPACK_IMPORTED_MODULE_1__.jsx)("input", { 5324 type: "text", 5325 value: editRedirect, 5326 onChange: e => setRedirect(e.target.value) 5327 }) : ip.redirect 5328 }), /*#__PURE__*/(0,react_jsx_runtime__WEBPACK_IMPORTED_MODULE_1__.jsx)("td", { 5329 children: editingIndex === index ? /*#__PURE__*/(0,react_jsx_runtime__WEBPACK_IMPORTED_MODULE_1__.jsx)("input", { 5330 type: "date", 5331 value: editstartDate, 5332 onChange: e => setStartdate(e.target.value) 5333 }) : ip.startdate 5334 }), /*#__PURE__*/(0,react_jsx_runtime__WEBPACK_IMPORTED_MODULE_1__.jsx)("td", { 5335 children: editingIndex === index ? /*#__PURE__*/(0,react_jsx_runtime__WEBPACK_IMPORTED_MODULE_1__.jsx)("input", { 5336 type: "date", 5337 value: editendDate, 5338 onChange: e => setEnddate(e.target.value) 5339 }) : ip.enddate 5340 }), /*#__PURE__*/(0,react_jsx_runtime__WEBPACK_IMPORTED_MODULE_1__.jsxs)("td", { 5341 children: [editingIndex === index ? /*#__PURE__*/(0,react_jsx_runtime__WEBPACK_IMPORTED_MODULE_1__.jsx)("button", { 5342 className: "btn btn-edit", 5343 onClick: () => handleUpdate(ip), 5344 children: "Update" 5345 }) : /*#__PURE__*/(0,react_jsx_runtime__WEBPACK_IMPORTED_MODULE_1__.jsx)("button", { 5346 className: "btn btn-edit", 5347 onClick: () => handleEdit(index, ip), 5348 children: "Edit" 5349 }), /*#__PURE__*/(0,react_jsx_runtime__WEBPACK_IMPORTED_MODULE_1__.jsx)("button", { 5350 className: "btn btn-delete", 5351 onClick: () => handleDelete(ip.id), 5352 style: { 5353 marginLeft: "10px" 5354 }, 5355 children: "Delete" 5356 })] 5357 })] 5358 }, ip.id)) : /*#__PURE__*/(0,react_jsx_runtime__WEBPACK_IMPORTED_MODULE_1__.jsx)("tr", { 5359 children: /*#__PURE__*/(0,react_jsx_runtime__WEBPACK_IMPORTED_MODULE_1__.jsx)("td", { 5360 colSpan: "5", 5361 children: "No blocked IPs found." 5362 }) 5363 }) 5364 })] 5365 })] 5366 }); 5367 }; 5368 /* harmony default export */ const __WEBPACK_DEFAULT_EXPORT__ = (ViewIblocklist); 5369 5370 /***/ }), 5371 5372 /***/ "@wordpress/dom-ready": 5373 /*!**********************************!*\ 5374 !*** external ["wp","domReady"] ***! 5375 \**********************************/ 5376 /***/ ((module) => { 5377 5378 module.exports = window["wp"]["domReady"]; 5379 5380 /***/ }), 5381 5382 /***/ "@wordpress/element": 5383 /*!*********************************!*\ 5384 !*** external ["wp","element"] ***! 5385 \*********************************/ 5386 /***/ ((module) => { 5387 5388 module.exports = window["wp"]["element"]; 5389 5390 /***/ }), 5391 5392 /***/ "react": 5393 /*!************************!*\ 5394 !*** external "React" ***! 5395 \************************/ 5396 /***/ ((module) => { 5397 5398 module.exports = window["React"]; 5399 5400 /***/ }), 5401 5402 /***/ "react/jsx-runtime": 5403 /*!**********************************!*\ 5404 !*** external "ReactJSXRuntime" ***! 5405 \**********************************/ 5406 /***/ ((module) => { 5407 5408 module.exports = window["ReactJSXRuntime"]; 5409 5410 /***/ }) 5411 5412 /******/ }); 5413 /************************************************************************/ 5414 /******/ // The module cache 5415 /******/ var __webpack_module_cache__ = {}; 5416 /******/ 5417 /******/ // The require function 5418 /******/ function __webpack_require__(moduleId) { 5419 /******/ // Check if module is in cache 5420 /******/ var cachedModule = __webpack_module_cache__[moduleId]; 5421 /******/ if (cachedModule !== undefined) { 5422 /******/ return cachedModule.exports; 5423 /******/ } 5424 /******/ // Create a new module (and put it into the cache) 5425 /******/ var module = __webpack_module_cache__[moduleId] = { 5426 /******/ // no module.id needed 5427 /******/ // no module.loaded needed 5428 /******/ exports: {} 5429 /******/ }; 5430 /******/ 5431 /******/ // Execute the module function 5432 /******/ __webpack_modules__[moduleId](module, module.exports, __webpack_require__); 5433 /******/ 5434 /******/ // Return the exports of the module 5435 /******/ return module.exports; 5436 /******/ } 5437 /******/ 5438 /************************************************************************/ 5439 /******/ /* webpack/runtime/compat get default export */ 5440 /******/ (() => { 5441 /******/ // getDefaultExport function for compatibility with non-harmony modules 5442 /******/ __webpack_require__.n = (module) => { 5443 /******/ var getter = module && module.__esModule ? 5444 /******/ () => (module['default']) : 5445 /******/ () => (module); 5446 /******/ __webpack_require__.d(getter, { a: getter }); 5447 /******/ return getter; 5448 /******/ }; 5449 /******/ })(); 5450 /******/ 5451 /******/ /* webpack/runtime/define property getters */ 5452 /******/ (() => { 5453 /******/ // define getter functions for harmony exports 5454 /******/ __webpack_require__.d = (exports, definition) => { 5455 /******/ for(var key in definition) { 5456 /******/ if(__webpack_require__.o(definition, key) && !__webpack_require__.o(exports, key)) { 5457 /******/ Object.defineProperty(exports, key, { enumerable: true, get: definition[key] }); 5458 /******/ } 5459 /******/ } 5460 /******/ }; 5461 /******/ })(); 5462 /******/ 5463 /******/ /* webpack/runtime/hasOwnProperty shorthand */ 5464 /******/ (() => { 5465 /******/ __webpack_require__.o = (obj, prop) => (Object.prototype.hasOwnProperty.call(obj, prop)) 5466 /******/ })(); 5467 /******/ 5468 /******/ /* webpack/runtime/make namespace object */ 5469 /******/ (() => { 5470 /******/ // define __esModule on exports 5471 /******/ __webpack_require__.r = (exports) => { 5472 /******/ if(typeof Symbol !== 'undefined' && Symbol.toStringTag) { 5473 /******/ Object.defineProperty(exports, Symbol.toStringTag, { value: 'Module' }); 5474 /******/ } 5475 /******/ Object.defineProperty(exports, '__esModule', { value: true }); 5476 /******/ }; 5477 /******/ })(); 5478 /******/ 5479 /************************************************************************/ 5480 var __webpack_exports__ = {}; 5481 // This entry needs to be wrapped in an IIFE because it needs to be isolated against other modules in the chunk. 5482 (() => { 5483 /*!**********************!*\ 5484 !*** ./src/index.js ***! 5485 \**********************/ 5486 __webpack_require__.r(__webpack_exports__); 5487 /* harmony import */ var _wordpress_dom_ready__WEBPACK_IMPORTED_MODULE_0__ = __webpack_require__(/*! @wordpress/dom-ready */ "@wordpress/dom-ready"); 5488 /* harmony import */ var _wordpress_dom_ready__WEBPACK_IMPORTED_MODULE_0___default = /*#__PURE__*/__webpack_require__.n(_wordpress_dom_ready__WEBPACK_IMPORTED_MODULE_0__); 5489 /* harmony import */ var _wordpress_element__WEBPACK_IMPORTED_MODULE_1__ = __webpack_require__(/*! @wordpress/element */ "@wordpress/element"); 5490 /* harmony import */ var _wordpress_element__WEBPACK_IMPORTED_MODULE_1___default = /*#__PURE__*/__webpack_require__.n(_wordpress_element__WEBPACK_IMPORTED_MODULE_1__); 5491 /* harmony import */ var _App__WEBPACK_IMPORTED_MODULE_2__ = __webpack_require__(/*! ./App */ "./src/App.js"); 5492 /* harmony import */ var _components_NewIp__WEBPACK_IMPORTED_MODULE_3__ = __webpack_require__(/*! ./components/NewIp */ "./src/components/NewIp.js"); 5493 /* harmony import */ var _components_ViewIblocklist__WEBPACK_IMPORTED_MODULE_4__ = __webpack_require__(/*! ./components/ViewIblocklist */ "./src/components/ViewIblocklist.js"); 5494 /* harmony import */ var _components_IpManager__WEBPACK_IMPORTED_MODULE_5__ = __webpack_require__(/*! ./components/IpManager */ "./src/components/IpManager.js"); 5495 /* harmony import */ var react_jsx_runtime__WEBPACK_IMPORTED_MODULE_6__ = __webpack_require__(/*! react/jsx-runtime */ "react/jsx-runtime"); 5496 /* harmony import */ var react_jsx_runtime__WEBPACK_IMPORTED_MODULE_6___default = /*#__PURE__*/__webpack_require__.n(react_jsx_runtime__WEBPACK_IMPORTED_MODULE_6__); 5497 5498 5499 5500 5501 5502 5503 5504 /* domready( () => { 5505 const root = createRoot( 5506 document.getElementById('ip-admin'), 5507 ); 5508 root.render(<App />); 5509 }); 5510 */ 5511 5512 document.addEventListener("DOMContentLoaded", function () { 5513 var element = document.getElementById('ip-admin'); 5514 ReactDOM.render(/*#__PURE__*/(0,react_jsx_runtime__WEBPACK_IMPORTED_MODULE_6__.jsx)(_App__WEBPACK_IMPORTED_MODULE_2__["default"], {}), element); 5515 }); 5516 let newip = document.getElementById('new-ipaddress'); 5517 if (newip) { 5518 ReactDOM.render(/*#__PURE__*/(0,react_jsx_runtime__WEBPACK_IMPORTED_MODULE_6__.jsx)(_components_IpManager__WEBPACK_IMPORTED_MODULE_5__["default"], {}), newip); 5519 } 5520 let viewip = document.getElementById('view-iplist'); 5521 if (viewip) { 5522 ReactDOM.render(/*#__PURE__*/(0,react_jsx_runtime__WEBPACK_IMPORTED_MODULE_6__.jsx)(_components_ViewIblocklist__WEBPACK_IMPORTED_MODULE_4__["default"], {}), viewip); 5523 } 5524 })(); 5525 5526 /******/ })() 5527 ; 5528 //# sourceMappingURL=index.js.map 171 `,Z=({reverseOrder:e,position:t="top-center",toastOptions:r,gutter:o,children:s,containerStyle:i,containerClassName:a})=>{let{toasts:c,handlers:l}=(e=>{let{toasts:t,pausedAt:r}=((e={})=>{let[t,r]=(0,n.useState)(S),o=(0,n.useRef)(S);(0,n.useEffect)((()=>(o.current!==S&&r(S),E.push(r),()=>{let e=E.indexOf(r);e>-1&&E.splice(e,1)})),[]);let s=t.toasts.map((t=>{var n,r,o;return{...e,...e[t.type],...t,removeDelay:t.removeDelay||(null==(n=e[t.type])?void 0:n.removeDelay)||(null==e?void 0:e.removeDelay),duration:t.duration||(null==(r=e[t.type])?void 0:r.duration)||(null==e?void 0:e.duration)||j[t.type],style:{...e.style,...null==(o=e[t.type])?void 0:o.style,...t.style}}}));return{...t,toasts:s}})(e);(0,n.useEffect)((()=>{if(r)return;let e=Date.now(),n=t.map((t=>{if(t.duration===1/0)return;let n=(t.duration||0)+t.pauseDuration-(e-t.createdAt);if(!(n<0))return setTimeout((()=>T.dismiss(t.id)),n);t.visible&&T.dismiss(t.id)}));return()=>{n.forEach((e=>e&&clearTimeout(e)))}}),[t,r]);let o=(0,n.useCallback)((()=>{r&&O({type:6,time:Date.now()})}),[r]),s=(0,n.useCallback)(((e,n)=>{let{reverseOrder:r=!1,gutter:o=8,defaultPosition:s}=n||{},i=t.filter((t=>(t.position||s)===(e.position||s)&&t.height)),a=i.findIndex((t=>t.id===e.id)),c=i.filter(((e,t)=>t<a&&e.visible)).length;return i.filter((e=>e.visible)).slice(...r?[c+1]:[0,c]).reduce(((e,t)=>e+(t.height||0)+o),0)}),[t]);return(0,n.useEffect)((()=>{t.forEach((e=>{if(e.dismissed)((e,t=1e3)=>{if(N.has(e))return;let n=setTimeout((()=>{N.delete(e),O({type:4,toastId:e})}),t);N.set(e,n)})(e.id,e.removeDelay);else{let t=N.get(e.id);t&&(clearTimeout(t),N.delete(e.id))}}))}),[t]),{toasts:t,handlers:{updateHeight:A,startPause:C,endPause:o,calculateOffset:s}}})(r);return n.createElement("div",{id:"_rht_toaster",style:{position:"fixed",zIndex:9999,top:16,left:16,right:16,bottom:16,pointerEvents:"none",...i},className:a,onMouseEnter:l.startPause,onMouseLeave:l.endPause},c.map((r=>{let i=r.position||t,a=((e,t)=>{let n=e.includes("top"),r=n?{top:0}:{bottom:0},o=e.includes("center")?{justifyContent:"center"}:e.includes("right")?{justifyContent:"flex-end"}:{};return{left:0,right:0,display:"flex",position:"absolute",transition:x()?void 0:"all 230ms cubic-bezier(.21,1.02,.73,1)",transform:`translateY(${t*(n?1:-1)}px)`,...r,...o}})(i,l.calculateOffset(r,{reverseOrder:e,gutter:o,defaultPosition:t}));return n.createElement(G,{id:r.id,key:r.id,onHeightUpdate:l.updateHeight,className:r.visible?Q:"",style:a},"custom"===r.type?b(r.message,r):s?s(r):n.createElement(X,{toast:r,position:i}))})))},Y=T;const ee=window.ReactJSXRuntime,te=function(){return(0,ee.jsxs)(ee.Fragment,{children:[(0,ee.jsx)("h1",{children:" Add Block IP "}),(0,ee.jsx)(Z,{position:"top-center"})]})};function ne(e,t){return function(){return e.apply(t,arguments)}}const{toString:re}=Object.prototype,{getPrototypeOf:oe}=Object,se=(ie=Object.create(null),e=>{const t=re.call(e);return ie[t]||(ie[t]=t.slice(8,-1).toLowerCase())});var ie;const ae=e=>(e=e.toLowerCase(),t=>se(t)===e),ce=e=>t=>typeof t===e,{isArray:le}=Array,de=ce("undefined"),ue=ae("ArrayBuffer"),pe=ce("string"),fe=ce("function"),he=ce("number"),me=e=>null!==e&&"object"==typeof e,ge=e=>{if("object"!==se(e))return!1;const t=oe(e);return!(null!==t&&t!==Object.prototype&&null!==Object.getPrototypeOf(t)||Symbol.toStringTag in e||Symbol.iterator in e)},ye=ae("Date"),be=ae("File"),we=ae("Blob"),xe=ae("FileList"),ve=ae("URLSearchParams"),[Ee,Se,Oe,je]=["ReadableStream","Request","Response","Headers"].map(ae);function Re(e,t,{allOwnKeys:n=!1}={}){if(null==e)return;let r,o;if("object"!=typeof e&&(e=[e]),le(e))for(r=0,o=e.length;r<o;r++)t.call(null,e[r],r,e);else{const o=n?Object.getOwnPropertyNames(e):Object.keys(e),s=o.length;let i;for(r=0;r<s;r++)i=o[r],t.call(null,e[i],i,e)}}function Te(e,t){t=t.toLowerCase();const n=Object.keys(e);let r,o=n.length;for(;o-- >0;)if(r=n[o],t===r.toLowerCase())return r;return null}const Ae="undefined"!=typeof globalThis?globalThis:"undefined"!=typeof self?self:"undefined"!=typeof window?window:global,Ce=e=>!de(e)&&e!==Ae,Ne=(Pe="undefined"!=typeof Uint8Array&&oe(Uint8Array),e=>Pe&&e instanceof Pe);var Pe;const ke=ae("HTMLFormElement"),De=(({hasOwnProperty:e})=>(t,n)=>e.call(t,n))(Object.prototype),Fe=ae("RegExp"),Ue=(e,t)=>{const n=Object.getOwnPropertyDescriptors(e),r={};Re(n,((n,o)=>{let s;!1!==(s=t(n,o,e))&&(r[o]=s||n)})),Object.defineProperties(e,r)},Le="abcdefghijklmnopqrstuvwxyz",_e="0123456789",Be={DIGIT:_e,ALPHA:Le,ALPHA_DIGIT:Le+Le.toUpperCase()+_e},Ie=ae("AsyncFunction"),qe=(Me="function"==typeof setImmediate,$e=fe(Ae.postMessage),Me?setImmediate:$e?(ze=`axios@${Math.random()}`,He=[],Ae.addEventListener("message",(({source:e,data:t})=>{e===Ae&&t===ze&&He.length&&He.shift()()}),!1),e=>{He.push(e),Ae.postMessage(ze,"*")}):e=>setTimeout(e));var Me,$e,ze,He;const We="undefined"!=typeof queueMicrotask?queueMicrotask.bind(Ae):"undefined"!=typeof process&&process.nextTick||qe,Je={isArray:le,isArrayBuffer:ue,isBuffer:function(e){return null!==e&&!de(e)&&null!==e.constructor&&!de(e.constructor)&&fe(e.constructor.isBuffer)&&e.constructor.isBuffer(e)},isFormData:e=>{let t;return e&&("function"==typeof FormData&&e instanceof FormData||fe(e.append)&&("formdata"===(t=se(e))||"object"===t&&fe(e.toString)&&"[object FormData]"===e.toString()))},isArrayBufferView:function(e){let t;return t="undefined"!=typeof ArrayBuffer&&ArrayBuffer.isView?ArrayBuffer.isView(e):e&&e.buffer&&ue(e.buffer),t},isString:pe,isNumber:he,isBoolean:e=>!0===e||!1===e,isObject:me,isPlainObject:ge,isReadableStream:Ee,isRequest:Se,isResponse:Oe,isHeaders:je,isUndefined:de,isDate:ye,isFile:be,isBlob:we,isRegExp:Fe,isFunction:fe,isStream:e=>me(e)&&fe(e.pipe),isURLSearchParams:ve,isTypedArray:Ne,isFileList:xe,forEach:Re,merge:function e(){const{caseless:t}=Ce(this)&&this||{},n={},r=(r,o)=>{const s=t&&Te(n,o)||o;ge(n[s])&&ge(r)?n[s]=e(n[s],r):ge(r)?n[s]=e({},r):le(r)?n[s]=r.slice():n[s]=r};for(let e=0,t=arguments.length;e<t;e++)arguments[e]&&Re(arguments[e],r);return n},extend:(e,t,n,{allOwnKeys:r}={})=>(Re(t,((t,r)=>{n&&fe(t)?e[r]=ne(t,n):e[r]=t}),{allOwnKeys:r}),e),trim:e=>e.trim?e.trim():e.replace(/^[\s\uFEFF\xA0]+|[\s\uFEFF\xA0]+$/g,""),stripBOM:e=>(65279===e.charCodeAt(0)&&(e=e.slice(1)),e),inherits:(e,t,n,r)=>{e.prototype=Object.create(t.prototype,r),e.prototype.constructor=e,Object.defineProperty(e,"super",{value:t.prototype}),n&&Object.assign(e.prototype,n)},toFlatObject:(e,t,n,r)=>{let o,s,i;const a={};if(t=t||{},null==e)return t;do{for(o=Object.getOwnPropertyNames(e),s=o.length;s-- >0;)i=o[s],r&&!r(i,e,t)||a[i]||(t[i]=e[i],a[i]=!0);e=!1!==n&&oe(e)}while(e&&(!n||n(e,t))&&e!==Object.prototype);return t},kindOf:se,kindOfTest:ae,endsWith:(e,t,n)=>{e=String(e),(void 0===n||n>e.length)&&(n=e.length),n-=t.length;const r=e.indexOf(t,n);return-1!==r&&r===n},toArray:e=>{if(!e)return null;if(le(e))return e;let t=e.length;if(!he(t))return null;const n=new Array(t);for(;t-- >0;)n[t]=e[t];return n},forEachEntry:(e,t)=>{const n=(e&&e[Symbol.iterator]).call(e);let r;for(;(r=n.next())&&!r.done;){const n=r.value;t.call(e,n[0],n[1])}},matchAll:(e,t)=>{let n;const r=[];for(;null!==(n=e.exec(t));)r.push(n);return r},isHTMLForm:ke,hasOwnProperty:De,hasOwnProp:De,reduceDescriptors:Ue,freezeMethods:e=>{Ue(e,((t,n)=>{if(fe(e)&&-1!==["arguments","caller","callee"].indexOf(n))return!1;const r=e[n];fe(r)&&(t.enumerable=!1,"writable"in t?t.writable=!1:t.set||(t.set=()=>{throw Error("Can not rewrite read-only method '"+n+"'")}))}))},toObjectSet:(e,t)=>{const n={},r=e=>{e.forEach((e=>{n[e]=!0}))};return le(e)?r(e):r(String(e).split(t)),n},toCamelCase:e=>e.toLowerCase().replace(/[-_\s]([a-z\d])(\w*)/g,(function(e,t,n){return t.toUpperCase()+n})),noop:()=>{},toFiniteNumber:(e,t)=>null!=e&&Number.isFinite(e=+e)?e:t,findKey:Te,global:Ae,isContextDefined:Ce,ALPHABET:Be,generateString:(e=16,t=Be.ALPHA_DIGIT)=>{let n="";const{length:r}=t;for(;e--;)n+=t[Math.random()*r|0];return n},isSpecCompliantForm:function(e){return!!(e&&fe(e.append)&&"FormData"===e[Symbol.toStringTag]&&e[Symbol.iterator])},toJSONObject:e=>{const t=new Array(10),n=(e,r)=>{if(me(e)){if(t.indexOf(e)>=0)return;if(!("toJSON"in e)){t[r]=e;const o=le(e)?[]:{};return Re(e,((e,t)=>{const s=n(e,r+1);!de(s)&&(o[t]=s)})),t[r]=void 0,o}}return e};return n(e,0)},isAsyncFn:Ie,isThenable:e=>e&&(me(e)||fe(e))&&fe(e.then)&&fe(e.catch),setImmediate:qe,asap:We};function Ke(e,t,n,r,o){Error.call(this),Error.captureStackTrace?Error.captureStackTrace(this,this.constructor):this.stack=(new Error).stack,this.message=e,this.name="AxiosError",t&&(this.code=t),n&&(this.config=n),r&&(this.request=r),o&&(this.response=o,this.status=o.status?o.status:null)}Je.inherits(Ke,Error,{toJSON:function(){return{message:this.message,name:this.name,description:this.description,number:this.number,fileName:this.fileName,lineNumber:this.lineNumber,columnNumber:this.columnNumber,stack:this.stack,config:Je.toJSONObject(this.config),code:this.code,status:this.status}}});const Ve=Ke.prototype,Xe={};["ERR_BAD_OPTION_VALUE","ERR_BAD_OPTION","ECONNABORTED","ETIMEDOUT","ERR_NETWORK","ERR_FR_TOO_MANY_REDIRECTS","ERR_DEPRECATED","ERR_BAD_RESPONSE","ERR_BAD_REQUEST","ERR_CANCELED","ERR_NOT_SUPPORT","ERR_INVALID_URL"].forEach((e=>{Xe[e]={value:e}})),Object.defineProperties(Ke,Xe),Object.defineProperty(Ve,"isAxiosError",{value:!0}),Ke.from=(e,t,n,r,o,s)=>{const i=Object.create(Ve);return Je.toFlatObject(e,i,(function(e){return e!==Error.prototype}),(e=>"isAxiosError"!==e)),Ke.call(i,e.message,t,n,r,o),i.cause=e,i.name=e.name,s&&Object.assign(i,s),i};const Ge=Ke;function Qe(e){return Je.isPlainObject(e)||Je.isArray(e)}function Ze(e){return Je.endsWith(e,"[]")?e.slice(0,-2):e}function Ye(e,t,n){return e?e.concat(t).map((function(e,t){return e=Ze(e),!n&&t?"["+e+"]":e})).join(n?".":""):t}const et=Je.toFlatObject(Je,{},null,(function(e){return/^is[A-Z]/.test(e)})),tt=function(e,t,n){if(!Je.isObject(e))throw new TypeError("target must be an object");t=t||new FormData;const r=(n=Je.toFlatObject(n,{metaTokens:!0,dots:!1,indexes:!1},!1,(function(e,t){return!Je.isUndefined(t[e])}))).metaTokens,o=n.visitor||l,s=n.dots,i=n.indexes,a=(n.Blob||"undefined"!=typeof Blob&&Blob)&&Je.isSpecCompliantForm(t);if(!Je.isFunction(o))throw new TypeError("visitor must be a function");function c(e){if(null===e)return"";if(Je.isDate(e))return e.toISOString();if(!a&&Je.isBlob(e))throw new Ge("Blob is not supported. Use a Buffer instead.");return Je.isArrayBuffer(e)||Je.isTypedArray(e)?a&&"function"==typeof Blob?new Blob([e]):Buffer.from(e):e}function l(e,n,o){let a=e;if(e&&!o&&"object"==typeof e)if(Je.endsWith(n,"{}"))n=r?n:n.slice(0,-2),e=JSON.stringify(e);else if(Je.isArray(e)&&function(e){return Je.isArray(e)&&!e.some(Qe)}(e)||(Je.isFileList(e)||Je.endsWith(n,"[]"))&&(a=Je.toArray(e)))return n=Ze(n),a.forEach((function(e,r){!Je.isUndefined(e)&&null!==e&&t.append(!0===i?Ye([n],r,s):null===i?n:n+"[]",c(e))})),!1;return!!Qe(e)||(t.append(Ye(o,n,s),c(e)),!1)}const d=[],u=Object.assign(et,{defaultVisitor:l,convertValue:c,isVisitable:Qe});if(!Je.isObject(e))throw new TypeError("data must be an object");return function e(n,r){if(!Je.isUndefined(n)){if(-1!==d.indexOf(n))throw Error("Circular reference detected in "+r.join("."));d.push(n),Je.forEach(n,(function(n,s){!0===(!(Je.isUndefined(n)||null===n)&&o.call(t,n,Je.isString(s)?s.trim():s,r,u))&&e(n,r?r.concat(s):[s])})),d.pop()}}(e),t};function nt(e){const t={"!":"%21","'":"%27","(":"%28",")":"%29","~":"%7E","%20":"+","%00":"\0"};return encodeURIComponent(e).replace(/[!'()~]|%20|%00/g,(function(e){return t[e]}))}function rt(e,t){this._pairs=[],e&&tt(e,this,t)}const ot=rt.prototype;ot.append=function(e,t){this._pairs.push([e,t])},ot.toString=function(e){const t=e?function(t){return e.call(this,t,nt)}:nt;return this._pairs.map((function(e){return t(e[0])+"="+t(e[1])}),"").join("&")};const st=rt;function it(e){return encodeURIComponent(e).replace(/%3A/gi,":").replace(/%24/g,"$").replace(/%2C/gi,",").replace(/%20/g,"+").replace(/%5B/gi,"[").replace(/%5D/gi,"]")}function at(e,t,n){if(!t)return e;const r=n&&n.encode||it;Je.isFunction(n)&&(n={serialize:n});const o=n&&n.serialize;let s;if(s=o?o(t,n):Je.isURLSearchParams(t)?t.toString():new st(t,n).toString(r),s){const t=e.indexOf("#");-1!==t&&(e=e.slice(0,t)),e+=(-1===e.indexOf("?")?"?":"&")+s}return e}const ct=class{constructor(){this.handlers=[]}use(e,t,n){return this.handlers.push({fulfilled:e,rejected:t,synchronous:!!n&&n.synchronous,runWhen:n?n.runWhen:null}),this.handlers.length-1}eject(e){this.handlers[e]&&(this.handlers[e]=null)}clear(){this.handlers&&(this.handlers=[])}forEach(e){Je.forEach(this.handlers,(function(t){null!==t&&e(t)}))}},lt={silentJSONParsing:!0,forcedJSONParsing:!0,clarifyTimeoutError:!1},dt={isBrowser:!0,classes:{URLSearchParams:"undefined"!=typeof URLSearchParams?URLSearchParams:st,FormData:"undefined"!=typeof FormData?FormData:null,Blob:"undefined"!=typeof Blob?Blob:null},protocols:["http","https","file","blob","url","data"]},ut="undefined"!=typeof window&&"undefined"!=typeof document,pt="object"==typeof navigator&&navigator||void 0,ft=ut&&(!pt||["ReactNative","NativeScript","NS"].indexOf(pt.product)<0),ht="undefined"!=typeof WorkerGlobalScope&&self instanceof WorkerGlobalScope&&"function"==typeof self.importScripts,mt=ut&&window.location.href||"http://localhost",gt={...t,...dt},yt=function(e){function t(e,n,r,o){let s=e[o++];if("__proto__"===s)return!0;const i=Number.isFinite(+s),a=o>=e.length;return s=!s&&Je.isArray(r)?r.length:s,a?(Je.hasOwnProp(r,s)?r[s]=[r[s],n]:r[s]=n,!i):(r[s]&&Je.isObject(r[s])||(r[s]=[]),t(e,n,r[s],o)&&Je.isArray(r[s])&&(r[s]=function(e){const t={},n=Object.keys(e);let r;const o=n.length;let s;for(r=0;r<o;r++)s=n[r],t[s]=e[s];return t}(r[s])),!i)}if(Je.isFormData(e)&&Je.isFunction(e.entries)){const n={};return Je.forEachEntry(e,((e,r)=>{t(function(e){return Je.matchAll(/\w+|\[(\w*)]/g,e).map((e=>"[]"===e[0]?"":e[1]||e[0]))}(e),r,n,0)})),n}return null},bt={transitional:lt,adapter:["xhr","http","fetch"],transformRequest:[function(e,t){const n=t.getContentType()||"",r=n.indexOf("application/json")>-1,o=Je.isObject(e);if(o&&Je.isHTMLForm(e)&&(e=new FormData(e)),Je.isFormData(e))return r?JSON.stringify(yt(e)):e;if(Je.isArrayBuffer(e)||Je.isBuffer(e)||Je.isStream(e)||Je.isFile(e)||Je.isBlob(e)||Je.isReadableStream(e))return e;if(Je.isArrayBufferView(e))return e.buffer;if(Je.isURLSearchParams(e))return t.setContentType("application/x-www-form-urlencoded;charset=utf-8",!1),e.toString();let s;if(o){if(n.indexOf("application/x-www-form-urlencoded")>-1)return function(e,t){return tt(e,new gt.classes.URLSearchParams,Object.assign({visitor:function(e,t,n,r){return gt.isNode&&Je.isBuffer(e)?(this.append(t,e.toString("base64")),!1):r.defaultVisitor.apply(this,arguments)}},t))}(e,this.formSerializer).toString();if((s=Je.isFileList(e))||n.indexOf("multipart/form-data")>-1){const t=this.env&&this.env.FormData;return tt(s?{"files[]":e}:e,t&&new t,this.formSerializer)}}return o||r?(t.setContentType("application/json",!1),function(e){if(Je.isString(e))try{return(0,JSON.parse)(e),Je.trim(e)}catch(e){if("SyntaxError"!==e.name)throw e}return(0,JSON.stringify)(e)}(e)):e}],transformResponse:[function(e){const t=this.transitional||bt.transitional,n=t&&t.forcedJSONParsing,r="json"===this.responseType;if(Je.isResponse(e)||Je.isReadableStream(e))return e;if(e&&Je.isString(e)&&(n&&!this.responseType||r)){const n=!(t&&t.silentJSONParsing)&&r;try{return JSON.parse(e)}catch(e){if(n){if("SyntaxError"===e.name)throw Ge.from(e,Ge.ERR_BAD_RESPONSE,this,null,this.response);throw e}}}return e}],timeout:0,xsrfCookieName:"XSRF-TOKEN",xsrfHeaderName:"X-XSRF-TOKEN",maxContentLength:-1,maxBodyLength:-1,env:{FormData:gt.classes.FormData,Blob:gt.classes.Blob},validateStatus:function(e){return e>=200&&e<300},headers:{common:{Accept:"application/json, text/plain, */*","Content-Type":void 0}}};Je.forEach(["delete","get","head","post","put","patch"],(e=>{bt.headers[e]={}}));const wt=bt,xt=Je.toObjectSet(["age","authorization","content-length","content-type","etag","expires","from","host","if-modified-since","if-unmodified-since","last-modified","location","max-forwards","proxy-authorization","referer","retry-after","user-agent"]),vt=Symbol("internals");function Et(e){return e&&String(e).trim().toLowerCase()}function St(e){return!1===e||null==e?e:Je.isArray(e)?e.map(St):String(e)}function Ot(e,t,n,r,o){return Je.isFunction(r)?r.call(this,t,n):(o&&(t=n),Je.isString(t)?Je.isString(r)?-1!==t.indexOf(r):Je.isRegExp(r)?r.test(t):void 0:void 0)}class jt{constructor(e){e&&this.set(e)}set(e,t,n){const r=this;function o(e,t,n){const o=Et(t);if(!o)throw new Error("header name must be a non-empty string");const s=Je.findKey(r,o);(!s||void 0===r[s]||!0===n||void 0===n&&!1!==r[s])&&(r[s||t]=St(e))}const s=(e,t)=>Je.forEach(e,((e,n)=>o(e,n,t)));if(Je.isPlainObject(e)||e instanceof this.constructor)s(e,t);else if(Je.isString(e)&&(e=e.trim())&&!/^[-_a-zA-Z0-9^`|~,!#$%&'*+.]+$/.test(e.trim()))s((e=>{const t={};let n,r,o;return e&&e.split("\n").forEach((function(e){o=e.indexOf(":"),n=e.substring(0,o).trim().toLowerCase(),r=e.substring(o+1).trim(),!n||t[n]&&xt[n]||("set-cookie"===n?t[n]?t[n].push(r):t[n]=[r]:t[n]=t[n]?t[n]+", "+r:r)})),t})(e),t);else if(Je.isHeaders(e))for(const[t,r]of e.entries())o(r,t,n);else null!=e&&o(t,e,n);return this}get(e,t){if(e=Et(e)){const n=Je.findKey(this,e);if(n){const e=this[n];if(!t)return e;if(!0===t)return function(e){const t=Object.create(null),n=/([^\s,;=]+)\s*(?:=\s*([^,;]+))?/g;let r;for(;r=n.exec(e);)t[r[1]]=r[2];return t}(e);if(Je.isFunction(t))return t.call(this,e,n);if(Je.isRegExp(t))return t.exec(e);throw new TypeError("parser must be boolean|regexp|function")}}}has(e,t){if(e=Et(e)){const n=Je.findKey(this,e);return!(!n||void 0===this[n]||t&&!Ot(0,this[n],n,t))}return!1}delete(e,t){const n=this;let r=!1;function o(e){if(e=Et(e)){const o=Je.findKey(n,e);!o||t&&!Ot(0,n[o],o,t)||(delete n[o],r=!0)}}return Je.isArray(e)?e.forEach(o):o(e),r}clear(e){const t=Object.keys(this);let n=t.length,r=!1;for(;n--;){const o=t[n];e&&!Ot(0,this[o],o,e,!0)||(delete this[o],r=!0)}return r}normalize(e){const t=this,n={};return Je.forEach(this,((r,o)=>{const s=Je.findKey(n,o);if(s)return t[s]=St(r),void delete t[o];const i=e?function(e){return e.trim().toLowerCase().replace(/([a-z\d])(\w*)/g,((e,t,n)=>t.toUpperCase()+n))}(o):String(o).trim();i!==o&&delete t[o],t[i]=St(r),n[i]=!0})),this}concat(...e){return this.constructor.concat(this,...e)}toJSON(e){const t=Object.create(null);return Je.forEach(this,((n,r)=>{null!=n&&!1!==n&&(t[r]=e&&Je.isArray(n)?n.join(", "):n)})),t}[Symbol.iterator](){return Object.entries(this.toJSON())[Symbol.iterator]()}toString(){return Object.entries(this.toJSON()).map((([e,t])=>e+": "+t)).join("\n")}get[Symbol.toStringTag](){return"AxiosHeaders"}static from(e){return e instanceof this?e:new this(e)}static concat(e,...t){const n=new this(e);return t.forEach((e=>n.set(e))),n}static accessor(e){const t=(this[vt]=this[vt]={accessors:{}}).accessors,n=this.prototype;function r(e){const r=Et(e);t[r]||(function(e,t){const n=Je.toCamelCase(" "+t);["get","set","has"].forEach((r=>{Object.defineProperty(e,r+n,{value:function(e,n,o){return this[r].call(this,t,e,n,o)},configurable:!0})}))}(n,e),t[r]=!0)}return Je.isArray(e)?e.forEach(r):r(e),this}}jt.accessor(["Content-Type","Content-Length","Accept","Accept-Encoding","User-Agent","Authorization"]),Je.reduceDescriptors(jt.prototype,(({value:e},t)=>{let n=t[0].toUpperCase()+t.slice(1);return{get:()=>e,set(e){this[n]=e}}})),Je.freezeMethods(jt);const Rt=jt;function Tt(e,t){const n=this||wt,r=t||n,o=Rt.from(r.headers);let s=r.data;return Je.forEach(e,(function(e){s=e.call(n,s,o.normalize(),t?t.status:void 0)})),o.normalize(),s}function At(e){return!(!e||!e.__CANCEL__)}function Ct(e,t,n){Ge.call(this,null==e?"canceled":e,Ge.ERR_CANCELED,t,n),this.name="CanceledError"}Je.inherits(Ct,Ge,{__CANCEL__:!0});const Nt=Ct;function Pt(e,t,n){const r=n.config.validateStatus;n.status&&r&&!r(n.status)?t(new Ge("Request failed with status code "+n.status,[Ge.ERR_BAD_REQUEST,Ge.ERR_BAD_RESPONSE][Math.floor(n.status/100)-4],n.config,n.request,n)):e(n)}const kt=(e,t,n=3)=>{let r=0;const o=function(e,t){e=e||10;const n=new Array(e),r=new Array(e);let o,s=0,i=0;return t=void 0!==t?t:1e3,function(a){const c=Date.now(),l=r[i];o||(o=c),n[s]=a,r[s]=c;let d=i,u=0;for(;d!==s;)u+=n[d++],d%=e;if(s=(s+1)%e,s===i&&(i=(i+1)%e),c-o<t)return;const p=l&&c-l;return p?Math.round(1e3*u/p):void 0}}(50,250);return function(e,t){let n,r,o=0,s=1e3/t;const i=(t,s=Date.now())=>{o=s,n=null,r&&(clearTimeout(r),r=null),e.apply(null,t)};return[(...e)=>{const t=Date.now(),a=t-o;a>=s?i(e,t):(n=e,r||(r=setTimeout((()=>{r=null,i(n)}),s-a)))},()=>n&&i(n)]}((n=>{const s=n.loaded,i=n.lengthComputable?n.total:void 0,a=s-r,c=o(a);r=s,e({loaded:s,total:i,progress:i?s/i:void 0,bytes:a,rate:c||void 0,estimated:c&&i&&s<=i?(i-s)/c:void 0,event:n,lengthComputable:null!=i,[t?"download":"upload"]:!0})}),n)},Dt=(e,t)=>{const n=null!=e;return[r=>t[0]({lengthComputable:n,total:e,loaded:r}),t[1]]},Ft=e=>(...t)=>Je.asap((()=>e(...t))),Ut=gt.hasStandardBrowserEnv?((e,t)=>n=>(n=new URL(n,gt.origin),e.protocol===n.protocol&&e.host===n.host&&(t||e.port===n.port)))(new URL(gt.origin),gt.navigator&&/(msie|trident)/i.test(gt.navigator.userAgent)):()=>!0,Lt=gt.hasStandardBrowserEnv?{write(e,t,n,r,o,s){const i=[e+"="+encodeURIComponent(t)];Je.isNumber(n)&&i.push("expires="+new Date(n).toGMTString()),Je.isString(r)&&i.push("path="+r),Je.isString(o)&&i.push("domain="+o),!0===s&&i.push("secure"),document.cookie=i.join("; ")},read(e){const t=document.cookie.match(new RegExp("(^|;\\s*)("+e+")=([^;]*)"));return t?decodeURIComponent(t[3]):null},remove(e){this.write(e,"",Date.now()-864e5)}}:{write(){},read:()=>null,remove(){}};function _t(e,t){return e&&!/^([a-z][a-z\d+\-.]*:)?\/\//i.test(t)?function(e,t){return t?e.replace(/\/?\/$/,"")+"/"+t.replace(/^\/+/,""):e}(e,t):t}const Bt=e=>e instanceof Rt?{...e}:e;function It(e,t){t=t||{};const n={};function r(e,t,n,r){return Je.isPlainObject(e)&&Je.isPlainObject(t)?Je.merge.call({caseless:r},e,t):Je.isPlainObject(t)?Je.merge({},t):Je.isArray(t)?t.slice():t}function o(e,t,n,o){return Je.isUndefined(t)?Je.isUndefined(e)?void 0:r(void 0,e,0,o):r(e,t,0,o)}function s(e,t){if(!Je.isUndefined(t))return r(void 0,t)}function i(e,t){return Je.isUndefined(t)?Je.isUndefined(e)?void 0:r(void 0,e):r(void 0,t)}function a(n,o,s){return s in t?r(n,o):s in e?r(void 0,n):void 0}const c={url:s,method:s,data:s,baseURL:i,transformRequest:i,transformResponse:i,paramsSerializer:i,timeout:i,timeoutMessage:i,withCredentials:i,withXSRFToken:i,adapter:i,responseType:i,xsrfCookieName:i,xsrfHeaderName:i,onUploadProgress:i,onDownloadProgress:i,decompress:i,maxContentLength:i,maxBodyLength:i,beforeRedirect:i,transport:i,httpAgent:i,httpsAgent:i,cancelToken:i,socketPath:i,responseEncoding:i,validateStatus:a,headers:(e,t,n)=>o(Bt(e),Bt(t),0,!0)};return Je.forEach(Object.keys(Object.assign({},e,t)),(function(r){const s=c[r]||o,i=s(e[r],t[r],r);Je.isUndefined(i)&&s!==a||(n[r]=i)})),n}const qt=e=>{const t=It({},e);let n,{data:r,withXSRFToken:o,xsrfHeaderName:s,xsrfCookieName:i,headers:a,auth:c}=t;if(t.headers=a=Rt.from(a),t.url=at(_t(t.baseURL,t.url),e.params,e.paramsSerializer),c&&a.set("Authorization","Basic "+btoa((c.username||"")+":"+(c.password?unescape(encodeURIComponent(c.password)):""))),Je.isFormData(r))if(gt.hasStandardBrowserEnv||gt.hasStandardBrowserWebWorkerEnv)a.setContentType(void 0);else if(!1!==(n=a.getContentType())){const[e,...t]=n?n.split(";").map((e=>e.trim())).filter(Boolean):[];a.setContentType([e||"multipart/form-data",...t].join("; "))}if(gt.hasStandardBrowserEnv&&(o&&Je.isFunction(o)&&(o=o(t)),o||!1!==o&&Ut(t.url))){const e=s&&i&&Lt.read(i);e&&a.set(s,e)}return t},Mt="undefined"!=typeof XMLHttpRequest&&function(e){return new Promise((function(t,n){const r=qt(e);let o=r.data;const s=Rt.from(r.headers).normalize();let i,a,c,l,d,{responseType:u,onUploadProgress:p,onDownloadProgress:f}=r;function h(){l&&l(),d&&d(),r.cancelToken&&r.cancelToken.unsubscribe(i),r.signal&&r.signal.removeEventListener("abort",i)}let m=new XMLHttpRequest;function g(){if(!m)return;const r=Rt.from("getAllResponseHeaders"in m&&m.getAllResponseHeaders());Pt((function(e){t(e),h()}),(function(e){n(e),h()}),{data:u&&"text"!==u&&"json"!==u?m.response:m.responseText,status:m.status,statusText:m.statusText,headers:r,config:e,request:m}),m=null}m.open(r.method.toUpperCase(),r.url,!0),m.timeout=r.timeout,"onloadend"in m?m.onloadend=g:m.onreadystatechange=function(){m&&4===m.readyState&&(0!==m.status||m.responseURL&&0===m.responseURL.indexOf("file:"))&&setTimeout(g)},m.onabort=function(){m&&(n(new Ge("Request aborted",Ge.ECONNABORTED,e,m)),m=null)},m.onerror=function(){n(new Ge("Network Error",Ge.ERR_NETWORK,e,m)),m=null},m.ontimeout=function(){let t=r.timeout?"timeout of "+r.timeout+"ms exceeded":"timeout exceeded";const o=r.transitional||lt;r.timeoutErrorMessage&&(t=r.timeoutErrorMessage),n(new Ge(t,o.clarifyTimeoutError?Ge.ETIMEDOUT:Ge.ECONNABORTED,e,m)),m=null},void 0===o&&s.setContentType(null),"setRequestHeader"in m&&Je.forEach(s.toJSON(),(function(e,t){m.setRequestHeader(t,e)})),Je.isUndefined(r.withCredentials)||(m.withCredentials=!!r.withCredentials),u&&"json"!==u&&(m.responseType=r.responseType),f&&([c,d]=kt(f,!0),m.addEventListener("progress",c)),p&&m.upload&&([a,l]=kt(p),m.upload.addEventListener("progress",a),m.upload.addEventListener("loadend",l)),(r.cancelToken||r.signal)&&(i=t=>{m&&(n(!t||t.type?new Nt(null,e,m):t),m.abort(),m=null)},r.cancelToken&&r.cancelToken.subscribe(i),r.signal&&(r.signal.aborted?i():r.signal.addEventListener("abort",i)));const y=function(e){const t=/^([-+\w]{1,25})(:?\/\/|:)/.exec(e);return t&&t[1]||""}(r.url);y&&-1===gt.protocols.indexOf(y)?n(new Ge("Unsupported protocol "+y+":",Ge.ERR_BAD_REQUEST,e)):m.send(o||null)}))},$t=(e,t)=>{const{length:n}=e=e?e.filter(Boolean):[];if(t||n){let n,r=new AbortController;const o=function(e){if(!n){n=!0,i();const t=e instanceof Error?e:this.reason;r.abort(t instanceof Ge?t:new Nt(t instanceof Error?t.message:t))}};let s=t&&setTimeout((()=>{s=null,o(new Ge(`timeout ${t} of ms exceeded`,Ge.ETIMEDOUT))}),t);const i=()=>{e&&(s&&clearTimeout(s),s=null,e.forEach((e=>{e.unsubscribe?e.unsubscribe(o):e.removeEventListener("abort",o)})),e=null)};e.forEach((e=>e.addEventListener("abort",o)));const{signal:a}=r;return a.unsubscribe=()=>Je.asap(i),a}},zt=function*(e,t){let n=e.byteLength;if(!t||n<t)return void(yield e);let r,o=0;for(;o<n;)r=o+t,yield e.slice(o,r),o=r},Ht=(e,t,n,r)=>{const o=async function*(e,t){for await(const n of async function*(e){if(e[Symbol.asyncIterator])return void(yield*e);const t=e.getReader();try{for(;;){const{done:e,value:n}=await t.read();if(e)break;yield n}}finally{await t.cancel()}}(e))yield*zt(n,t)}(e,t);let s,i=0,a=e=>{s||(s=!0,r&&r(e))};return new ReadableStream({async pull(e){try{const{done:t,value:r}=await o.next();if(t)return a(),void e.close();let s=r.byteLength;if(n){let e=i+=s;n(e)}e.enqueue(new Uint8Array(r))}catch(e){throw a(e),e}},cancel:e=>(a(e),o.return())},{highWaterMark:2})},Wt="function"==typeof fetch&&"function"==typeof Request&&"function"==typeof Response,Jt=Wt&&"function"==typeof ReadableStream,Kt=Wt&&("function"==typeof TextEncoder?(Vt=new TextEncoder,e=>Vt.encode(e)):async e=>new Uint8Array(await new Response(e).arrayBuffer()));var Vt;const Xt=(e,...t)=>{try{return!!e(...t)}catch(e){return!1}},Gt=Jt&&Xt((()=>{let e=!1;const t=new Request(gt.origin,{body:new ReadableStream,method:"POST",get duplex(){return e=!0,"half"}}).headers.has("Content-Type");return e&&!t})),Qt=Jt&&Xt((()=>Je.isReadableStream(new Response("").body))),Zt={stream:Qt&&(e=>e.body)};var Yt;Wt&&(Yt=new Response,["text","arrayBuffer","blob","formData","stream"].forEach((e=>{!Zt[e]&&(Zt[e]=Je.isFunction(Yt[e])?t=>t[e]():(t,n)=>{throw new Ge(`Response type '${e}' is not supported`,Ge.ERR_NOT_SUPPORT,n)})})));const en={http:null,xhr:Mt,fetch:Wt&&(async e=>{let{url:t,method:n,data:r,signal:o,cancelToken:s,timeout:i,onDownloadProgress:a,onUploadProgress:c,responseType:l,headers:d,withCredentials:u="same-origin",fetchOptions:p}=qt(e);l=l?(l+"").toLowerCase():"text";let f,h=$t([o,s&&s.toAbortSignal()],i);const m=h&&h.unsubscribe&&(()=>{h.unsubscribe()});let g;try{if(c&&Gt&&"get"!==n&&"head"!==n&&0!==(g=await(async(e,t)=>{const n=Je.toFiniteNumber(e.getContentLength());return null==n?(async e=>{if(null==e)return 0;if(Je.isBlob(e))return e.size;if(Je.isSpecCompliantForm(e)){const t=new Request(gt.origin,{method:"POST",body:e});return(await t.arrayBuffer()).byteLength}return Je.isArrayBufferView(e)||Je.isArrayBuffer(e)?e.byteLength:(Je.isURLSearchParams(e)&&(e+=""),Je.isString(e)?(await Kt(e)).byteLength:void 0)})(t):n})(d,r))){let e,n=new Request(t,{method:"POST",body:r,duplex:"half"});if(Je.isFormData(r)&&(e=n.headers.get("content-type"))&&d.setContentType(e),n.body){const[e,t]=Dt(g,kt(Ft(c)));r=Ht(n.body,65536,e,t)}}Je.isString(u)||(u=u?"include":"omit");const o="credentials"in Request.prototype;f=new Request(t,{...p,signal:h,method:n.toUpperCase(),headers:d.normalize().toJSON(),body:r,duplex:"half",credentials:o?u:void 0});let s=await fetch(f);const i=Qt&&("stream"===l||"response"===l);if(Qt&&(a||i&&m)){const e={};["status","statusText","headers"].forEach((t=>{e[t]=s[t]}));const t=Je.toFiniteNumber(s.headers.get("content-length")),[n,r]=a&&Dt(t,kt(Ft(a),!0))||[];s=new Response(Ht(s.body,65536,n,(()=>{r&&r(),m&&m()})),e)}l=l||"text";let y=await Zt[Je.findKey(Zt,l)||"text"](s,e);return!i&&m&&m(),await new Promise(((t,n)=>{Pt(t,n,{data:y,headers:Rt.from(s.headers),status:s.status,statusText:s.statusText,config:e,request:f})}))}catch(t){if(m&&m(),t&&"TypeError"===t.name&&/fetch/i.test(t.message))throw Object.assign(new Ge("Network Error",Ge.ERR_NETWORK,e,f),{cause:t.cause||t});throw Ge.from(t,t&&t.code,e,f)}})};Je.forEach(en,((e,t)=>{if(e){try{Object.defineProperty(e,"name",{value:t})}catch(e){}Object.defineProperty(e,"adapterName",{value:t})}}));const tn=e=>`- ${e}`,nn=e=>Je.isFunction(e)||null===e||!1===e,rn=e=>{e=Je.isArray(e)?e:[e];const{length:t}=e;let n,r;const o={};for(let s=0;s<t;s++){let t;if(n=e[s],r=n,!nn(n)&&(r=en[(t=String(n)).toLowerCase()],void 0===r))throw new Ge(`Unknown adapter '${t}'`);if(r)break;o[t||"#"+s]=r}if(!r){const e=Object.entries(o).map((([e,t])=>`adapter ${e} `+(!1===t?"is not supported by the environment":"is not available in the build")));let n=t?e.length>1?"since :\n"+e.map(tn).join("\n"):" "+tn(e[0]):"as no adapter specified";throw new Ge("There is no suitable adapter to dispatch the request "+n,"ERR_NOT_SUPPORT")}return r};function on(e){if(e.cancelToken&&e.cancelToken.throwIfRequested(),e.signal&&e.signal.aborted)throw new Nt(null,e)}function sn(e){return on(e),e.headers=Rt.from(e.headers),e.data=Tt.call(e,e.transformRequest),-1!==["post","put","patch"].indexOf(e.method)&&e.headers.setContentType("application/x-www-form-urlencoded",!1),rn(e.adapter||wt.adapter)(e).then((function(t){return on(e),t.data=Tt.call(e,e.transformResponse,t),t.headers=Rt.from(t.headers),t}),(function(t){return At(t)||(on(e),t&&t.response&&(t.response.data=Tt.call(e,e.transformResponse,t.response),t.response.headers=Rt.from(t.response.headers))),Promise.reject(t)}))}const an={};["object","boolean","number","function","string","symbol"].forEach(((e,t)=>{an[e]=function(n){return typeof n===e||"a"+(t<1?"n ":" ")+e}}));const cn={};an.transitional=function(e,t,n){function r(e,t){return"[Axios v1.7.9] Transitional option '"+e+"'"+t+(n?". "+n:"")}return(n,o,s)=>{if(!1===e)throw new Ge(r(o," has been removed"+(t?" in "+t:"")),Ge.ERR_DEPRECATED);return t&&!cn[o]&&(cn[o]=!0,console.warn(r(o," has been deprecated since v"+t+" and will be removed in the near future"))),!e||e(n,o,s)}},an.spelling=function(e){return(t,n)=>(console.warn(`${n} is likely a misspelling of ${e}`),!0)};const ln={assertOptions:function(e,t,n){if("object"!=typeof e)throw new Ge("options must be an object",Ge.ERR_BAD_OPTION_VALUE);const r=Object.keys(e);let o=r.length;for(;o-- >0;){const s=r[o],i=t[s];if(i){const t=e[s],n=void 0===t||i(t,s,e);if(!0!==n)throw new Ge("option "+s+" must be "+n,Ge.ERR_BAD_OPTION_VALUE)}else if(!0!==n)throw new Ge("Unknown option "+s,Ge.ERR_BAD_OPTION)}},validators:an},dn=ln.validators;class un{constructor(e){this.defaults=e,this.interceptors={request:new ct,response:new ct}}async request(e,t){try{return await this._request(e,t)}catch(e){if(e instanceof Error){let t={};Error.captureStackTrace?Error.captureStackTrace(t):t=new Error;const n=t.stack?t.stack.replace(/^.+\n/,""):"";try{e.stack?n&&!String(e.stack).endsWith(n.replace(/^.+\n.+\n/,""))&&(e.stack+="\n"+n):e.stack=n}catch(e){}}throw e}}_request(e,t){"string"==typeof e?(t=t||{}).url=e:t=e||{},t=It(this.defaults,t);const{transitional:n,paramsSerializer:r,headers:o}=t;void 0!==n&&ln.assertOptions(n,{silentJSONParsing:dn.transitional(dn.boolean),forcedJSONParsing:dn.transitional(dn.boolean),clarifyTimeoutError:dn.transitional(dn.boolean)},!1),null!=r&&(Je.isFunction(r)?t.paramsSerializer={serialize:r}:ln.assertOptions(r,{encode:dn.function,serialize:dn.function},!0)),ln.assertOptions(t,{baseUrl:dn.spelling("baseURL"),withXsrfToken:dn.spelling("withXSRFToken")},!0),t.method=(t.method||this.defaults.method||"get").toLowerCase();let s=o&&Je.merge(o.common,o[t.method]);o&&Je.forEach(["delete","get","head","post","put","patch","common"],(e=>{delete o[e]})),t.headers=Rt.concat(s,o);const i=[];let a=!0;this.interceptors.request.forEach((function(e){"function"==typeof e.runWhen&&!1===e.runWhen(t)||(a=a&&e.synchronous,i.unshift(e.fulfilled,e.rejected))}));const c=[];let l;this.interceptors.response.forEach((function(e){c.push(e.fulfilled,e.rejected)}));let d,u=0;if(!a){const e=[sn.bind(this),void 0];for(e.unshift.apply(e,i),e.push.apply(e,c),d=e.length,l=Promise.resolve(t);u<d;)l=l.then(e[u++],e[u++]);return l}d=i.length;let p=t;for(u=0;u<d;){const e=i[u++],t=i[u++];try{p=e(p)}catch(e){t.call(this,e);break}}try{l=sn.call(this,p)}catch(e){return Promise.reject(e)}for(u=0,d=c.length;u<d;)l=l.then(c[u++],c[u++]);return l}getUri(e){return at(_t((e=It(this.defaults,e)).baseURL,e.url),e.params,e.paramsSerializer)}}Je.forEach(["delete","get","head","options"],(function(e){un.prototype[e]=function(t,n){return this.request(It(n||{},{method:e,url:t,data:(n||{}).data}))}})),Je.forEach(["post","put","patch"],(function(e){function t(t){return function(n,r,o){return this.request(It(o||{},{method:e,headers:t?{"Content-Type":"multipart/form-data"}:{},url:n,data:r}))}}un.prototype[e]=t(),un.prototype[e+"Form"]=t(!0)}));const pn=un;class fn{constructor(e){if("function"!=typeof e)throw new TypeError("executor must be a function.");let t;this.promise=new Promise((function(e){t=e}));const n=this;this.promise.then((e=>{if(!n._listeners)return;let t=n._listeners.length;for(;t-- >0;)n._listeners[t](e);n._listeners=null})),this.promise.then=e=>{let t;const r=new Promise((e=>{n.subscribe(e),t=e})).then(e);return r.cancel=function(){n.unsubscribe(t)},r},e((function(e,r,o){n.reason||(n.reason=new Nt(e,r,o),t(n.reason))}))}throwIfRequested(){if(this.reason)throw this.reason}subscribe(e){this.reason?e(this.reason):this._listeners?this._listeners.push(e):this._listeners=[e]}unsubscribe(e){if(!this._listeners)return;const t=this._listeners.indexOf(e);-1!==t&&this._listeners.splice(t,1)}toAbortSignal(){const e=new AbortController,t=t=>{e.abort(t)};return this.subscribe(t),e.signal.unsubscribe=()=>this.unsubscribe(t),e.signal}static source(){let e;const t=new fn((function(t){e=t}));return{token:t,cancel:e}}}const hn=fn,mn={Continue:100,SwitchingProtocols:101,Processing:102,EarlyHints:103,Ok:200,Created:201,Accepted:202,NonAuthoritativeInformation:203,NoContent:204,ResetContent:205,PartialContent:206,MultiStatus:207,AlreadyReported:208,ImUsed:226,MultipleChoices:300,MovedPermanently:301,Found:302,SeeOther:303,NotModified:304,UseProxy:305,Unused:306,TemporaryRedirect:307,PermanentRedirect:308,BadRequest:400,Unauthorized:401,PaymentRequired:402,Forbidden:403,NotFound:404,MethodNotAllowed:405,NotAcceptable:406,ProxyAuthenticationRequired:407,RequestTimeout:408,Conflict:409,Gone:410,LengthRequired:411,PreconditionFailed:412,PayloadTooLarge:413,UriTooLong:414,UnsupportedMediaType:415,RangeNotSatisfiable:416,ExpectationFailed:417,ImATeapot:418,MisdirectedRequest:421,UnprocessableEntity:422,Locked:423,FailedDependency:424,TooEarly:425,UpgradeRequired:426,PreconditionRequired:428,TooManyRequests:429,RequestHeaderFieldsTooLarge:431,UnavailableForLegalReasons:451,InternalServerError:500,NotImplemented:501,BadGateway:502,ServiceUnavailable:503,GatewayTimeout:504,HttpVersionNotSupported:505,VariantAlsoNegotiates:506,InsufficientStorage:507,LoopDetected:508,NotExtended:510,NetworkAuthenticationRequired:511};Object.entries(mn).forEach((([e,t])=>{mn[t]=e}));const gn=mn,yn=function e(t){const n=new pn(t),r=ne(pn.prototype.request,n);return Je.extend(r,pn.prototype,n,{allOwnKeys:!0}),Je.extend(r,n,null,{allOwnKeys:!0}),r.create=function(n){return e(It(t,n))},r}(wt);yn.Axios=pn,yn.CanceledError=Nt,yn.CancelToken=hn,yn.isCancel=At,yn.VERSION="1.7.9",yn.toFormData=tt,yn.AxiosError=Ge,yn.Cancel=yn.CanceledError,yn.all=function(e){return Promise.all(e)},yn.spread=function(e){return function(t){return e.apply(null,t)}},yn.isAxiosError=function(e){return Je.isObject(e)&&!0===e.isAxiosError},yn.mergeConfig=It,yn.AxiosHeaders=Rt,yn.formToJSON=e=>yt(Je.isHTMLForm(e)?new FormData(e):e),yn.getAdapter=rn,yn.HttpStatusCode=gn,yn.default=yn;const bn=yn,wn=({onIpAdded:e})=>{const[t,r]=(0,n.useState)(""),[o,s]=(0,n.useState)(""),[i,a]=(0,n.useState)(""),[c,l]=(0,n.useState)(""),[d,u]=(0,n.useState)("Save Settings"),[p,f]=(0,n.useState)([]),[h,m]=(0,n.useState)(""),[g,y]=(0,n.useState)(""),[b,w]=(0,n.useState)(""),[x,v]=(0,n.useState)("");return(0,n.useEffect)((()=>{bn.get(`${blocipadwoo.apiUrl}/wp/v2/product_cat`).then((e=>{f(e.data)})).catch((()=>{f([])}))}),[]),(0,ee.jsx)("form",{onSubmit:n=>{if(n.preventDefault(),u("Saving..."),console.log("IP Address:",t),!/^(?:(?:25[0-5]|2[0-4][0-9]|1[0-9]{2}|[1-9]?[0-9])\.){3}(?:25[0-5]|2[0-4][0-9]|1[0-9]{2}|[1-9]?[0-9])$|^([a-fA-F0-9:]+:+)+[a-fA-F0-9]+$/.test(t))return Y.error("Invalid IP address! Please enter a valid IP.",{position:"top-center",duration:4e3,style:{color:"#D32F2F",marginTop:"20px",padding:"10px"}}),void u("Save Settings");const d=new Date(i);if(new Date(c)<=d)return Y.error("End Date must be later than Start Date",{position:"top-center",duration:4e3,style:{color:"#D32F2F",marginTop:"20px",padding:"10px"}}),void u("Save Settings");console.log("IP Address:");let p=x,f="category"===x?b:"";bn.post(`${blocipadwoo.apiUrl}/wooip/v1/new_ip`,{ipaddress:t,blocktype:p,blkcategory:f,redirect:o,startdate:i,enddate:c},{headers:{"Content-Type":"application/json","X-WP-NONCE":blocipadwoo.nonce}}).then((t=>{const n=t?.data;"success"===n?.status?(Y.success(n.message,{position:"top-center",duration:4e3,style:{color:"#2e7d32",marginTop:"20px",padding:"10px"}}),r(""),s(""),a(""),l(""),m(""),y(""),e?.()):"error"===n?.status&&Y.error(n.message,{position:"top-center",duration:4e3,style:{color:"#D32F2F",marginTop:"20px",padding:"10px"}}),u("Save Settings")})).catch((e=>{Y.error("Something went wrong. Please try again.",{position:"top-center",duration:4e3,style:{background:"#fff3cd",color:"#856404",padding:"12px"}}),u("Save Settings")}))},children:(0,ee.jsxs)("div",{className:"form-section",children:[(0,ee.jsxs)("div",{className:"form-group",children:[(0,ee.jsx)("label",{children:"Page Option :"}),(0,ee.jsxs)("div",{style:{display:"flex",gap:"20px",marginBottom:"10px"},children:[(0,ee.jsxs)("label",{children:[(0,ee.jsx)("input",{type:"radio",name:"pageOption",value:"home",checked:"home"===x,onChange:()=>v("home")}),"Home Page"]}),(0,ee.jsxs)("label",{children:[(0,ee.jsx)("input",{type:"radio",name:"pageOption",value:"shop",checked:"shop"===x,onChange:()=>v("shop")}),"Shop Page"]}),(0,ee.jsxs)("label",{children:[(0,ee.jsx)("input",{type:"radio",name:"pageOption",value:"category",checked:"category"===x,onChange:()=>v("category")}),"Category"]})]})]}),"category"===x&&(0,ee.jsxs)("div",{className:"form-group",children:[(0,ee.jsx)("label",{htmlFor:"product-category",children:"Product Category :"}),(0,ee.jsxs)("select",{id:"product-category",value:b,onChange:e=>w(e.target.value),children:[(0,ee.jsx)("option",{value:"",children:"Select a category"}),p.map((e=>(0,ee.jsx)("option",{value:e.name,children:e.name},e.id)))]})]}),(0,ee.jsxs)("div",{className:"form-group",children:[(0,ee.jsx)("label",{htmlFor:"ipaddress",children:"Ip Address :"}),(0,ee.jsx)("input",{type:"text",name:"ipaddress",id:"ipaddress",placeholder:"Type your block IP address",value:t,onChange:e=>r(e.target.value)})]}),(0,ee.jsxs)("div",{className:"form-group",children:[(0,ee.jsx)("label",{htmlFor:"redirect",children:"Redirect URL :"}),(0,ee.jsx)("input",{type:"url",name:"redirect",id:"redirect",placeholder:"Redirect Url",value:o,onChange:e=>s(e.target.value)})]}),(0,ee.jsxs)("div",{className:"form-group",children:[(0,ee.jsx)("label",{htmlFor:"startdate",children:"Start Date :"}),(0,ee.jsx)("input",{type:"date",name:"startdate",id:"startdate",value:i,onChange:e=>a(e.target.value)})]}),(0,ee.jsxs)("div",{className:"form-group",children:[(0,ee.jsx)("label",{htmlFor:"enddate",children:"End Date :"}),(0,ee.jsx)("input",{type:"date",name:"enddate",id:"enddate",value:c,onChange:e=>l(e.target.value)})]}),(0,ee.jsxs)("div",{className:"form-group",children:[(0,ee.jsx)("div",{className:"col-sm-4",children:(0,ee.jsx)("button",{type:"submit",className:"button button-primary",children:d})}),(0,ee.jsx)("div",{className:"col-sm-8"})]})]})})},xn=({blockedIps:e=[],refresh:t})=>{const[r,o]=(0,n.useState)(null),[s,i]=(0,n.useState)(""),[a,c]=(0,n.useState)(""),[l,d]=(0,n.useState)(""),[u,p]=(0,n.useState)(""),[f,h]=(0,n.useState)(""),[m,g]=(0,n.useState)("");return(0,ee.jsxs)("div",{className:"table-container",children:[(0,ee.jsx)("div",{className:"section-title",children:"Blocked IP List"}),(0,ee.jsxs)("table",{children:[(0,ee.jsx)("thead",{children:(0,ee.jsxs)("tr",{children:[(0,ee.jsx)("th",{children:"IP Address"}),(0,ee.jsx)("th",{children:"Redirect URL"}),(0,ee.jsx)("th",{children:"Block Type"}),(0,ee.jsx)("th",{children:"Block Category"}),(0,ee.jsx)("th",{children:"Start Date"}),(0,ee.jsx)("th",{children:"End Date"}),(0,ee.jsx)("th",{children:"Action"})]})}),(0,ee.jsx)("tbody",{children:e.length>0?e.map(((e,n)=>(0,ee.jsxs)("tr",{children:[(0,ee.jsx)("td",{children:r===n?(0,ee.jsx)("input",{type:"text",value:s,onChange:e=>i(e.target.value)}):e.ipaddress}),(0,ee.jsx)("td",{children:r===n?(0,ee.jsx)("input",{type:"text",value:a,onChange:e=>c(e.target.value)}):e.redirect}),(0,ee.jsx)("td",{children:r===n?(0,ee.jsx)("input",{type:"text",value:f,onChange:e=>h(e.target.value)}):e.blocktype}),(0,ee.jsx)("td",{children:r===n?(0,ee.jsx)("input",{type:"text",value:m,onChange:e=>g(e.target.value)}):e.blkcategory}),(0,ee.jsx)("td",{children:r===n?(0,ee.jsx)("input",{type:"date",value:l,onChange:e=>d(e.target.value)}):e.startdate}),(0,ee.jsx)("td",{children:r===n?(0,ee.jsx)("input",{type:"date",value:u,onChange:e=>p(e.target.value)}):e.enddate}),(0,ee.jsxs)("td",{children:[r===n?(0,ee.jsx)("button",{className:"btn btn-edit",onClick:()=>(e=>{if(!/^(?:(?:25[0-5]|2[0-4][0-9]|1\d{2}|[1-9]?\d)\.){3}(?:25[0-5]|2[0-4][0-9]|1\d{2}|[1-9]?\d)$|^([a-fA-F0-9:]+:+)+[a-fA-F0-9]+$/.test(s))return void alert("❌ Invalid IP address format.");if(a&&!/^(https?:\/\/)?([\w\-])+(\.[\w\-]+)+[/#?]?.*$/.test(a))return void alert("❌ Invalid Redirect URL format.");const n=new Date(l);new Date(u)<=n?alert("❌ End date must be later than start date."):bn.post(`${blocipadwoo.apiUrl}/wprk/v1/update_blkip`,{id:e.id,ipaddress:s,blocktype:f,blkcategory:m,redirect:a,startdate:l,enddate:u},{headers:{"Content-Type":"application/json","X-WP-NONCE":blocipadwoo.nonce}}).then((()=>{alert("IP updated successfully!"),o(null),t()})).catch((e=>console.error("Error updating IP:",e)))})(e),children:"Update"}):(0,ee.jsx)("button",{className:"btn btn-edit",onClick:()=>((e,t)=>{o(e),i(t.ipaddress),h(t.blocktype),g(t.blkcategory),c(t.redirect),d(t.startdate),p(t.enddate)})(n,e),children:"Edit"}),(0,ee.jsx)("button",{className:"btn btn-delete",onClick:()=>{return n=e.id,void(window.confirm("Are you sure you want to delete this blocked IP?")&&bn.post(`${blocipadwoo.apiUrl}/wprk/v1/delete_blkip`,{id:n},{headers:{"Content-Type":"application/json","X-WP-NONCE":blocipadwoo.nonce}}).then((()=>{alert("IP deleted successfully!"),t()})).catch((e=>console.error("Error deleting IP:",e))));var n},style:{marginLeft:"10px"},children:"Delete"})]})]},e.id))):(0,ee.jsx)("tr",{children:(0,ee.jsx)("td",{colSpan:"5",children:"No blocked IPs found."})})})]})]})},vn=()=>{const[e,t]=(0,n.useState)([]),[r,o]=(0,n.useState)(!0),s=()=>{bn.get(`${blocipadwoo.apiUrl}/wprk/v1/get_blkip`,{headers:{"Content-Type":"application/json","X-WP-NONCE":blocipadwoo.nonce}}).then((e=>{t(e.data),o(!1)})).catch((e=>{console.error("Error fetching blocked IPs:",e),o(!1)}))};return(0,n.useEffect)((()=>{s()}),[]),(0,ee.jsxs)("div",{children:[(0,ee.jsx)(wn,{onIpAdded:s}),(0,ee.jsx)(xn,{blockedIps:e,loading:r,refresh:s})]})};document.addEventListener("DOMContentLoaded",(function(){var e=document.getElementById("ip-admin");ReactDOM.render((0,ee.jsx)(te,{}),e)}));let En=document.getElementById("new-ipaddress");En&&ReactDOM.render((0,ee.jsx)(vn,{}),En);let Sn=document.getElementById("view-iplist");Sn&&ReactDOM.render((0,ee.jsx)(xn,{}),Sn)})(); -
block-ip-address-for-woocommerce/trunk/readme.txt
r3452057 r3467005 9 9 License URI: https://www.gnu.org/licenses/gpl-2.0.html 10 10 11 Block unwanted IPs from accessing your WooCommerce shop . Redirect them to another page and control access with start and end dates.11 Block unwanted IPs from accessing your WooCommerce shop,home and specific category redirect them to another page and control access with start and end dates. 12 12 13 13 == Description == 14 14 15 The **WC Block IP Address** plugin allows you to restrict access to your WooCommerce shop pagebased on specific IP addresses. If a visitor's IP address matches a blocked entry, they will be redirected to a custom page of your choice instead of being able to view the shop.15 The **WC Block IP Address** plugin allows you to restrict access to your **WooCommerce Shop, Home and Specific Category** based on specific IP addresses. If a visitor's IP address matches a blocked entry, they will be redirected to a custom page of your choice instead of being able to view the shop. 16 16 17 17 You can also **set a start and end date** for each blocked IP, enabling **time-based restrictions** for more flexible access control. … … 61 61 == Changelog == 62 62 63 = 1.0.0 = 63 = 1.0.2 = 64 * Initial release with support for blocking IP addresses and defining block duration using start and end dates. 65 66 = 1.0.1 = 64 67 * Initial release with support for blocking IP addresses and defining block duration using start and end dates. 65 68 … … 67 70 68 71 = 1.0.0 = 69 First stable release of WC Block IP Address with block duration and redirection features.72 * Initial release with support for blocking IP addresses and defining block duration using start and end dates. -
block-ip-address-for-woocommerce/trunk/src/components/NewIp.js
r3322565 r3467005 1 import React, { useState } from 'react';1 import React, { useState, useEffect } from 'react'; 2 2 import axios from 'axios'; 3 3 import toast from 'react-hot-toast'; … … 10 10 const [enddate, setEnddate] = useState(''); 11 11 const [loader, setLoader] = useState('Save Settings'); 12 const [categories, setCategories] = useState([]); 13 const [editBlockType, setBlockType] = useState(""); 14 const [editBlockCategory, setBlockCategory] = useState(""); 15 const [selectedCategory, setSelectedCategory] = useState(''); 16 const [pageOption, setPageOption] = useState(''); 17 18 useEffect(() => { 19 axios.get(`${blocipadwoo.apiUrl}/wp/v2/product_cat`) 20 .then(res => { 21 setCategories(res.data); 22 }) 23 .catch(() => { 24 setCategories([]); 25 }); 26 }, []); 12 27 13 28 const handleSubmit = (e) => { … … 50 65 console.log('IP Address:'); 51 66 67 // Determine blocktype and blkcategory 68 let blocktype = pageOption; 69 let blkcategory = pageOption === 'category' ? selectedCategory : ''; 70 52 71 axios.post(`${blocipadwoo.apiUrl}/wooip/v1/new_ip`, { 53 72 ipaddress, 73 blocktype, 74 blkcategory, 54 75 redirect, 55 76 startdate, … … 79 100 setStartdate(''); 80 101 setEnddate(''); 102 setBlockType(''); 103 setBlockCategory(''); 81 104 onIpAdded?.(); // Optional callback 82 105 } else if (response?.status === 'error') { … … 110 133 return ( 111 134 <form onSubmit={handleSubmit}> 112 113 <div className="form-section"> 135 <div className="form-section"> 136 {/* Option Buttons */} 137 <div className="form-group"> 138 <label>Page Option :</label> 139 <div style={{ display: 'flex', gap: '20px', marginBottom: '10px' }}> 140 <label> 141 <input 142 type="radio" 143 name="pageOption" 144 value="home" 145 checked={pageOption === 'home'} 146 onChange={() => setPageOption('home')} 147 /> 148 Home Page 149 </label> 150 <label> 151 <input 152 type="radio" 153 name="pageOption" 154 value="shop" 155 checked={pageOption === 'shop'} 156 onChange={() => setPageOption('shop')} 157 /> 158 Shop Page 159 </label> 160 <label> 161 <input 162 type="radio" 163 name="pageOption" 164 value="category" 165 checked={pageOption === 'category'} 166 onChange={() => setPageOption('category')} 167 /> 168 Category 169 </label> 170 </div> 171 </div> 172 {/* Category Dropdown - only show if 'category' is selected */} 173 {pageOption === 'category' && ( 174 <div className="form-group"> 175 <label htmlFor="product-category">Product Category :</label> 176 <select 177 id="product-category" 178 value={selectedCategory} 179 onChange={e => setSelectedCategory(e.target.value)} 180 > 181 <option value="">Select a category</option> 182 {categories.map(cat => ( 183 <option key={cat.id} value={cat.name}>{cat.name}</option> 184 ))} 185 </select> 186 </div> 187 )} 114 188 <div className="form-group"> 115 189 <label htmlFor="ipaddress">Ip Address :</label> … … 126 200 <label htmlFor="redirect">Redirect URL :</label> 127 201 <input 128 type="url" 129 name="redirect" 130 id="redirect" 131 placeholder="Redirect Url" 132 value={redirect} 133 onChange={(e) => setRedirect(e.target.value)} 134 /> 135 202 type="url" 203 name="redirect" 204 id="redirect" 205 placeholder="Redirect Url" 206 value={redirect} 207 onChange={(e) => setRedirect(e.target.value)} 208 /> 136 209 </div> 137 210 <div className="form-group"> … … 147 220 <div className="form-group"> 148 221 <label htmlFor="enddate">End Date :</label> 149 <input150 type="date"151 name="enddate"152 id="enddate"153 value={enddate}154 onChange={(e) => setEnddate(e.target.value)}155 />222 <input 223 type="date" 224 name="enddate" 225 id="enddate" 226 value={enddate} 227 onChange={(e) => setEnddate(e.target.value)} 228 /> 156 229 </div> 157 230 <div className="form-group"> -
block-ip-address-for-woocommerce/trunk/src/components/ViewIblocklist.js
r3322565 r3467005 8 8 const [editstartDate, setStartdate] = useState(""); 9 9 const [editendDate, setEnddate] = useState(""); 10 const [editBlockType, setBlockType] = useState(""); 11 const [editBlockCategory, setBlockCategory] = useState(""); 10 12 11 13 const handleDelete = (id) => { … … 28 30 setEditingIndex(index); 29 31 setEditIp(ip.ipaddress); 32 setBlockType(ip.blocktype); 33 setBlockCategory(ip.blkcategory); 30 34 setRedirect(ip.redirect); 31 35 setStartdate(ip.startdate); … … 56 60 id: ip.id, 57 61 ipaddress: editIp, 62 blocktype: editBlockType, 63 blkcategory: editBlockCategory, 58 64 redirect: editRedirect, 59 65 startdate: editstartDate, … … 81 87 <th>IP Address</th> 82 88 <th>Redirect URL</th> 89 <th>Block Type</th> 90 <th>Block Category</th> 83 91 <th>Start Date</th> 84 92 <th>End Date</th> … … 104 112 )} 105 113 </td> 114 <td> 115 {editingIndex === index ? ( 116 <input type="text" value={editBlockType} onChange={(e) => setBlockType(e.target.value)} /> 117 ) : ( 118 ip.blocktype 119 )} 120 </td> 121 <td> 122 {editingIndex === index ? ( 123 <input type="text" value={editBlockCategory} onChange={(e) => setBlockCategory(e.target.value)} /> 124 ) : ( 125 ip.blkcategory 126 )} 127 </td> 128 106 129 <td> 107 130 {editingIndex === index ? (
Note: See TracChangeset
for help on using the changeset viewer.