diff options
author | Satya Rohith <me@satyarohith.com> | 2021-07-06 15:02:59 +0530 |
---|---|---|
committer | GitHub <noreply@github.com> | 2021-07-06 11:32:59 +0200 |
commit | ab6b0cefd36f4a2530267c03683e1db1a1b81838 (patch) | |
tree | b625b0bc87148830e266e640a29142402a9b934c /extensions/fetch/23_request.js | |
parent | e8258e0210c4690a1fbbcefe0e6a859da8efc19b (diff) |
refactor: use primordials in extensions/fetch (#11266)
Diffstat (limited to 'extensions/fetch/23_request.js')
-rw-r--r-- | extensions/fetch/23_request.js | 41 |
1 files changed, 31 insertions, 10 deletions
diff --git a/extensions/fetch/23_request.js b/extensions/fetch/23_request.js index 93d13e8d8..829f7e6dc 100644 --- a/extensions/fetch/23_request.js +++ b/extensions/fetch/23_request.js @@ -26,6 +26,20 @@ } = window.__bootstrap.headers; const { HttpClient } = window.__bootstrap.fetch; const abortSignal = window.__bootstrap.abortSignal; + const { + ArrayPrototypeMap, + ArrayPrototypeSlice, + ArrayPrototypeSplice, + MapPrototypeHas, + MapPrototypeGet, + MapPrototypeSet, + ObjectKeys, + RegExpPrototypeTest, + Symbol, + SymbolFor, + SymbolToStringTag, + TypeError, + } = window.__bootstrap.primordials; const _request = Symbol("request"); const _headers = Symbol("headers"); @@ -81,7 +95,9 @@ * @returns {InnerRequest} */ function cloneInnerRequest(request) { - const headerList = [...request.headerList.map((x) => [x[0], x[1]])]; + const headerList = [ + ...ArrayPrototypeMap(request.headerList, (x) => [x[0], x[1]]), + ]; let body = null; if (request.body !== null) { body = request.body.clone(); @@ -129,7 +145,7 @@ } // Regular path - if (!HTTP_TOKEN_CODE_POINT_RE.test(m)) { + if (!RegExpPrototypeTest(HTTP_TOKEN_CODE_POINT_RE, m)) { throw new TypeError("Method is not valid."); } const upperCase = byteUpperCase(m); @@ -166,14 +182,17 @@ mimeType = temporaryMimeType; if (mimesniff.essence(mimeType) !== essence) { charset = null; - const newCharset = mimeType.parameters.get("charset"); + const newCharset = MapPrototypeGet(mimeType.parameters, "charset"); if (newCharset !== undefined) { charset = newCharset; } essence = mimesniff.essence(mimeType); } else { - if (mimeType.parameters.has("charset") === null && charset !== null) { - mimeType.parameters.set("charset", charset); + if ( + MapPrototypeHas(mimeType.parameters, "charset") === null && + charset !== null + ) { + MapPrototypeSet(mimeType.parameters, "charset", charset); } } } @@ -267,15 +286,17 @@ this[_headers] = headersFromHeaderList(request.headerList, "request"); // 32. - if (Object.keys(init).length > 0) { - let headers = headerListFromHeaders(this[_headers]).slice( + if (ObjectKeys(init).length > 0) { + let headers = ArrayPrototypeSlice( + headerListFromHeaders(this[_headers]), 0, headerListFromHeaders(this[_headers]).length, ); if (init.headers !== undefined) { headers = init.headers; } - headerListFromHeaders(this[_headers]).splice( + ArrayPrototypeSplice( + headerListFromHeaders(this[_headers]), 0, headerListFromHeaders(this[_headers]).length, ); @@ -367,11 +388,11 @@ ); } - get [Symbol.toStringTag]() { + get [SymbolToStringTag]() { return "Request"; } - [Symbol.for("Deno.customInspect")](inspect) { + [SymbolFor("Deno.customInspect")](inspect) { const inner = { bodyUsed: this.bodyUsed, headers: this.headers, |