Skip to content

Commit

Permalink
refactor: move web stuff into their own folder (nodejs#2793)
Browse files Browse the repository at this point in the history
  • Loading branch information
ronag authored and crysmags committed Feb 27, 2024
1 parent b3db1da commit 009d0c5
Show file tree
Hide file tree
Showing 83 changed files with 109 additions and 109 deletions.
2 changes: 1 addition & 1 deletion benchmarks/cacheGetFieldValues.mjs
Original file line number Diff line number Diff line change
@@ -1,5 +1,5 @@
import { bench, group, run } from 'mitata'
import { getFieldValues } from '../lib/cache/util.js'
import { getFieldValues } from '../lib/web/cache/util.js'

const values = [
'',
Expand Down
2 changes: 1 addition & 1 deletion benchmarks/headers-length32.mjs
Original file line number Diff line number Diff line change
@@ -1,5 +1,5 @@
import { bench, run } from 'mitata'
import { Headers } from '../lib/fetch/headers.js'
import { Headers } from '../lib/web/fetch/headers.js'

const headers = new Headers(
[
Expand Down
2 changes: 1 addition & 1 deletion benchmarks/headers.mjs
Original file line number Diff line number Diff line change
@@ -1,5 +1,5 @@
import { bench, group, run } from 'mitata'
import { Headers } from '../lib/fetch/headers.js'
import { Headers } from '../lib/web/fetch/headers.js'

const characters = 'ABCDEFGHIJKLMNOPQRSTUVWXYZabcdefghijklmnopqrstuvwxyz0123456789'
const charactersLength = characters.length
Expand Down
2 changes: 1 addition & 1 deletion benchmarks/sort.mjs
Original file line number Diff line number Diff line change
@@ -1,5 +1,5 @@
import { bench, group, run } from 'mitata'
import { sort, heapSort, introSort } from '../lib/fetch/sort.js'
import { sort, heapSort, introSort } from '../lib/web/fetch/sort.js'

function compare (a, b) {
return a < b ? -1 : 1
Expand Down
16 changes: 8 additions & 8 deletions index-fetch.js
Original file line number Diff line number Diff line change
@@ -1,6 +1,6 @@
'use strict'

const fetchImpl = require('./lib/fetch').fetch
const fetchImpl = require('./lib/web/fetch').fetch

module.exports.fetch = function fetch (resource, init = undefined) {
return fetchImpl(resource, init).catch((err) => {
Expand All @@ -10,12 +10,12 @@ module.exports.fetch = function fetch (resource, init = undefined) {
throw err
})
}
module.exports.FormData = require('./lib/fetch/formdata').FormData
module.exports.Headers = require('./lib/fetch/headers').Headers
module.exports.Response = require('./lib/fetch/response').Response
module.exports.Request = require('./lib/fetch/request').Request
module.exports.FormData = require('./lib/web/fetch/formdata').FormData
module.exports.Headers = require('./lib/web/fetch/headers').Headers
module.exports.Response = require('./lib/web/fetch/response').Response
module.exports.Request = require('./lib/web/fetch/request').Request

module.exports.WebSocket = require('./lib/websocket/websocket').WebSocket
module.exports.MessageEvent = require('./lib/websocket/events').MessageEvent
module.exports.WebSocket = require('./lib/web/websocket/websocket').WebSocket
module.exports.MessageEvent = require('./lib/web/websocket/events').MessageEvent

module.exports.EventSource = require('./lib/eventsource/eventsource').EventSource
module.exports.EventSource = require('./lib/web/eventsource/eventsource').EventSource
30 changes: 15 additions & 15 deletions index.js
Original file line number Diff line number Diff line change
Expand Up @@ -96,7 +96,7 @@ function makeDispatcher (fn) {
module.exports.setGlobalDispatcher = setGlobalDispatcher
module.exports.getGlobalDispatcher = getGlobalDispatcher

const fetchImpl = require('./lib/fetch').fetch
const fetchImpl = require('./lib/web/fetch').fetch
module.exports.fetch = async function fetch (init, options = undefined) {
try {
return await fetchImpl(init, options)
Expand All @@ -108,39 +108,39 @@ module.exports.fetch = async function fetch (init, options = undefined) {
throw err
}
}
module.exports.Headers = require('./lib/fetch/headers').Headers
module.exports.Response = require('./lib/fetch/response').Response
module.exports.Request = require('./lib/fetch/request').Request
module.exports.FormData = require('./lib/fetch/formdata').FormData
module.exports.File = require('./lib/fetch/file').File
module.exports.FileReader = require('./lib/fileapi/filereader').FileReader
module.exports.Headers = require('./lib/web/fetch/headers').Headers
module.exports.Response = require('./lib/web/fetch/response').Response
module.exports.Request = require('./lib/web/fetch/request').Request
module.exports.FormData = require('./lib/web/fetch/formdata').FormData
module.exports.File = require('./lib/web/fetch/file').File
module.exports.FileReader = require('./lib/web/fileapi/filereader').FileReader

const { setGlobalOrigin, getGlobalOrigin } = require('./lib/fetch/global')
const { setGlobalOrigin, getGlobalOrigin } = require('./lib/web/fetch/global')

module.exports.setGlobalOrigin = setGlobalOrigin
module.exports.getGlobalOrigin = getGlobalOrigin

const { CacheStorage } = require('./lib/cache/cachestorage')
const { kConstruct } = require('./lib/cache/symbols')
const { CacheStorage } = require('./lib/web/cache/cachestorage')
const { kConstruct } = require('./lib/web/cache/symbols')

// Cache & CacheStorage are tightly coupled with fetch. Even if it may run
// in an older version of Node, it doesn't have any use without fetch.
module.exports.caches = new CacheStorage(kConstruct)

const { deleteCookie, getCookies, getSetCookies, setCookie } = require('./lib/cookies')
const { deleteCookie, getCookies, getSetCookies, setCookie } = require('./lib/web/cookies')

module.exports.deleteCookie = deleteCookie
module.exports.getCookies = getCookies
module.exports.getSetCookies = getSetCookies
module.exports.setCookie = setCookie

const { parseMIMEType, serializeAMimeType } = require('./lib/fetch/dataURL')
const { parseMIMEType, serializeAMimeType } = require('./lib/web/fetch/dataURL')

module.exports.parseMIMEType = parseMIMEType
module.exports.serializeAMimeType = serializeAMimeType

const { CloseEvent, ErrorEvent, MessageEvent } = require('./lib/websocket/events')
module.exports.WebSocket = require('./lib/websocket/websocket').WebSocket
const { CloseEvent, ErrorEvent, MessageEvent } = require('./lib/web/websocket/events')
module.exports.WebSocket = require('./lib/web/websocket/websocket').WebSocket
module.exports.CloseEvent = CloseEvent
module.exports.ErrorEvent = ErrorEvent
module.exports.MessageEvent = MessageEvent
Expand All @@ -156,6 +156,6 @@ module.exports.MockPool = MockPool
module.exports.MockAgent = MockAgent
module.exports.mockErrors = mockErrors

const { EventSource } = require('./lib/eventsource/eventsource')
const { EventSource } = require('./lib/web/eventsource/eventsource')

module.exports.EventSource = EventSource
5 changes: 0 additions & 5 deletions lib/cache/symbols.js

This file was deleted.

2 changes: 1 addition & 1 deletion lib/client.js
Original file line number Diff line number Diff line change
Expand Up @@ -1500,7 +1500,7 @@ function write (client, request) {

if (util.isFormDataLike(body)) {
if (!extractBody) {
extractBody = require('./fetch/body.js').extractBody
extractBody = require('./web/fetch/body.js').extractBody
}

const [bodyStream, contentType] = extractBody(body)
Expand Down
2 changes: 1 addition & 1 deletion lib/mock/mock-interceptor.js
Original file line number Diff line number Diff line change
Expand Up @@ -74,7 +74,7 @@ class MockInterceptor {
if (opts.query) {
opts.path = buildURL(opts.path, opts.query)
} else {
// Matches https://github.com/nodejs/undici/blob/main/lib/fetch/index.js#L1811
// Matches https://github.com/nodejs/undici/blob/main/lib/web/fetch/index.js#L1811
const parsedURL = new URL(opts.path, 'data://')
opts.path = parsedURL.pathname + parsedURL.search
}
Expand Down
4 changes: 2 additions & 2 deletions lib/cache/cache.js → lib/web/cache/cache.js
Original file line number Diff line number Diff line change
Expand Up @@ -2,15 +2,15 @@

const { kConstruct } = require('./symbols')
const { urlEquals, getFieldValues } = require('./util')
const { kEnumerableProperty, isDisturbed } = require('../core/util')
const { kEnumerableProperty, isDisturbed } = require('../../core/util')
const { webidl } = require('../fetch/webidl')
const { Response, cloneResponse, fromInnerResponse } = require('../fetch/response')
const { Request, fromInnerRequest } = require('../fetch/request')
const { kState } = require('../fetch/symbols')
const { fetching } = require('../fetch/index')
const { urlIsHttpHttpsScheme, createDeferredPromise, readAllBytes } = require('../fetch/util')
const assert = require('node:assert')
const { getGlobalDispatcher } = require('../global')
const { getGlobalDispatcher } = require('../../global')

/**
* @see https://w3c.github.io/ServiceWorker/#dfn-cache-batch-operation
Expand Down
Original file line number Diff line number Diff line change
Expand Up @@ -3,7 +3,7 @@
const { kConstruct } = require('./symbols')
const { Cache } = require('./cache')
const { webidl } = require('../fetch/webidl')
const { kEnumerableProperty } = require('../core/util')
const { kEnumerableProperty } = require('../../core/util')

class CacheStorage {
/**
Expand Down
5 changes: 5 additions & 0 deletions lib/web/cache/symbols.js
Original file line number Diff line number Diff line change
@@ -0,0 +1,5 @@
'use strict'

module.exports = {
kConstruct: require('../../core/symbols').kConstruct
}
File renamed without changes.
File renamed without changes.
File renamed without changes.
File renamed without changes.
2 changes: 1 addition & 1 deletion lib/cookies/util.js → lib/web/cookies/util.js
Original file line number Diff line number Diff line change
@@ -1,7 +1,7 @@
'use strict'

const assert = require('node:assert')
const { kHeadersList } = require('../core/symbols')
const { kHeadersList } = require('../../core/symbols')

function isCTLExcludingHtab (value) {
if (value.length === 0) {
Expand Down
File renamed without changes.
Original file line number Diff line number Diff line change
Expand Up @@ -9,7 +9,7 @@ const { EventSourceStream } = require('./eventsource-stream')
const { parseMIMEType } = require('../fetch/dataURL')
const { MessageEvent } = require('../websocket/events')
const { isNetworkError } = require('../fetch/response')
const { getGlobalDispatcher } = require('../global')
const { getGlobalDispatcher } = require('../../global')
const { delay } = require('./util')

let experimentalWarned = false
Expand Down
File renamed without changes.
File renamed without changes.
4 changes: 2 additions & 2 deletions lib/fetch/body.js → lib/web/fetch/body.js
Original file line number Diff line number Diff line change
@@ -1,7 +1,7 @@
'use strict'

const Busboy = require('@fastify/busboy')
const util = require('../core/util')
const util = require('../../core/util')
const {
ReadableStreamFrom,
isBlobLike,
Expand All @@ -16,7 +16,7 @@ const { kState } = require('./symbols')
const { webidl } = require('./webidl')
const { Blob, File: NativeFile } = require('node:buffer')
const assert = require('node:assert')
const { isErrored } = require('../core/util')
const { isErrored } = require('../../core/util')
const { isArrayBuffer } = require('node:util/types')
const { File: UndiciFile } = require('./file')
const { serializeAMimeType } = require('./dataURL')
Expand Down
File renamed without changes.
File renamed without changes.
Original file line number Diff line number Diff line change
@@ -1,6 +1,6 @@
'use strict'

const { kConnected, kSize } = require('../core/symbols')
const { kConnected, kSize } = require('../../core/symbols')

class CompatWeakRef {
constructor (value) {
Expand Down
2 changes: 1 addition & 1 deletion lib/fetch/file.js → lib/web/fetch/file.js
Original file line number Diff line number Diff line change
Expand Up @@ -6,7 +6,7 @@ const { kState } = require('./symbols')
const { isBlobLike } = require('./util')
const { webidl } = require('./webidl')
const { parseMIMEType, serializeAMimeType } = require('./dataURL')
const { kEnumerableProperty } = require('../core/util')
const { kEnumerableProperty } = require('../../core/util')
const encoder = new TextEncoder()

class File extends Blob {
Expand Down
2 changes: 1 addition & 1 deletion lib/fetch/formdata.js → lib/web/fetch/formdata.js
Original file line number Diff line number Diff line change
Expand Up @@ -2,7 +2,7 @@

const { isBlobLike, iteratorMixin } = require('./util')
const { kState } = require('./symbols')
const { kEnumerableProperty } = require('../core/util')
const { kEnumerableProperty } = require('../../core/util')
const { File: UndiciFile, FileLike, isFileLike } = require('./file')
const { webidl } = require('./webidl')
const { File: NativeFile } = require('node:buffer')
Expand Down
File renamed without changes.
4 changes: 2 additions & 2 deletions lib/fetch/headers.js → lib/web/fetch/headers.js
Original file line number Diff line number Diff line change
Expand Up @@ -2,9 +2,9 @@

'use strict'

const { kHeadersList, kConstruct } = require('../core/symbols')
const { kHeadersList, kConstruct } = require('../../core/symbols')
const { kGuard } = require('./symbols')
const { kEnumerableProperty } = require('../core/util')
const { kEnumerableProperty } = require('../../core/util')
const {
iteratorMixin,
isValidHeaderName,
Expand Down
4 changes: 2 additions & 2 deletions lib/fetch/index.js → lib/web/fetch/index.js
Original file line number Diff line number Diff line change
Expand Up @@ -59,9 +59,9 @@ const {
} = require('./constants')
const EE = require('node:events')
const { Readable, pipeline } = require('node:stream')
const { addAbortListener, isErrored, isReadable, nodeMajor, nodeMinor, bufferToLowerCasedHeaderName } = require('../core/util')
const { addAbortListener, isErrored, isReadable, nodeMajor, nodeMinor, bufferToLowerCasedHeaderName } = require('../../core/util')
const { dataURLProcessor, serializeAMimeType, minimizeSupportedMimeType } = require('./dataURL')
const { getGlobalDispatcher } = require('../global')
const { getGlobalDispatcher } = require('../../global')
const { webidl } = require('./webidl')
const { STATUS_CODES } = require('node:http')
const GET_OR_HEAD = ['GET', 'HEAD']
Expand Down
6 changes: 3 additions & 3 deletions lib/fetch/request.js → lib/web/fetch/request.js
Original file line number Diff line number Diff line change
Expand Up @@ -4,8 +4,8 @@

const { extractBody, mixinBody, cloneBody } = require('./body')
const { Headers, fill: fillHeaders, HeadersList } = require('./headers')
const { FinalizationRegistry } = require('../compat/dispatcher-weakref')()
const util = require('../core/util')
const { FinalizationRegistry } = require('./dispatcher-weakref')()
const util = require('../../core/util')
const {
isValidHTTPToken,
sameOrigin,
Expand All @@ -28,7 +28,7 @@ const { kHeaders, kSignal, kState, kGuard, kRealm } = require('./symbols')
const { webidl } = require('./webidl')
const { getGlobalOrigin } = require('./global')
const { URLSerializer } = require('./dataURL')
const { kHeadersList, kConstruct } = require('../core/symbols')
const { kHeadersList, kConstruct } = require('../../core/symbols')
const assert = require('node:assert')
const { getMaxListeners, setMaxListeners, getEventListeners, defaultMaxListeners } = require('node:events')

Expand Down
4 changes: 2 additions & 2 deletions lib/fetch/response.js → lib/web/fetch/response.js
Original file line number Diff line number Diff line change
Expand Up @@ -2,7 +2,7 @@

const { Headers, HeadersList, fill } = require('./headers')
const { extractBody, cloneBody, mixinBody } = require('./body')
const util = require('../core/util')
const util = require('../../core/util')
const { kEnumerableProperty } = util
const {
isValidReasonPhrase,
Expand All @@ -22,7 +22,7 @@ const { webidl } = require('./webidl')
const { FormData } = require('./formdata')
const { getGlobalOrigin } = require('./global')
const { URLSerializer } = require('./dataURL')
const { kHeadersList, kConstruct } = require('../core/symbols')
const { kHeadersList, kConstruct } = require('../../core/symbols')
const assert = require('node:assert')
const { types } = require('node:util')

Expand Down
File renamed without changes.
File renamed without changes.
2 changes: 1 addition & 1 deletion lib/fetch/util.js → lib/web/fetch/util.js
Original file line number Diff line number Diff line change
Expand Up @@ -6,7 +6,7 @@ const { redirectStatusSet, referrerPolicySet: referrerPolicyTokens, badPortsSet
const { getGlobalOrigin } = require('./global')
const { collectASequenceOfCodePoints, collectAnHTTPQuotedString, removeChars, parseMIMEType } = require('./dataURL')
const { performance } = require('node:perf_hooks')
const { isBlobLike, ReadableStreamFrom, isValidHTTPToken } = require('../core/util')
const { isBlobLike, ReadableStreamFrom, isValidHTTPToken } = require('../../core/util')
const assert = require('node:assert')
const { isUint8Array } = require('node:util/types')
const { webidl } = require('./webidl')
Expand Down
2 changes: 1 addition & 1 deletion lib/fetch/webidl.js → lib/web/fetch/webidl.js
Original file line number Diff line number Diff line change
@@ -1,7 +1,7 @@
'use strict'

const { types } = require('node:util')
const { toUSVString } = require('../core/util')
const { toUSVString } = require('../../core/util')

/** @type {import('../../types/webidl').Webidl} */
const webidl = {}
Expand Down
File renamed without changes.
Original file line number Diff line number Diff line change
Expand Up @@ -13,7 +13,7 @@ const {
kAborted
} = require('./symbols')
const { webidl } = require('../fetch/webidl')
const { kEnumerableProperty } = require('../core/util')
const { kEnumerableProperty } = require('../../core/util')

class FileReader extends EventTarget {
constructor () {
Expand Down
File renamed without changes.
File renamed without changes.
File renamed without changes.
Original file line number Diff line number Diff line change
Expand Up @@ -8,13 +8,13 @@ const {
kReceivedClose
} = require('./symbols')
const { fireEvent, failWebsocketConnection } = require('./util')
const { channels } = require('../core/diagnostics')
const { channels } = require('../../core/diagnostics')
const { CloseEvent } = require('./events')
const { makeRequest } = require('../fetch/request')
const { fetching } = require('../fetch/index')
const { Headers } = require('../fetch/headers')
const { getGlobalDispatcher } = require('../global')
const { kHeadersList } = require('../core/symbols')
const { getGlobalDispatcher } = require('../../global')
const { kHeadersList } = require('../../core/symbols')

/** @type {import('crypto')} */
let crypto
Expand Down
File renamed without changes.
2 changes: 1 addition & 1 deletion lib/websocket/events.js → lib/web/websocket/events.js
Original file line number Diff line number Diff line change
@@ -1,7 +1,7 @@
'use strict'

const { webidl } = require('../fetch/webidl')
const { kEnumerableProperty } = require('../core/util')
const { kEnumerableProperty } = require('../../core/util')
const { MessagePort } = require('node:worker_threads')

/**
Expand Down
File renamed without changes.
Original file line number Diff line number Diff line change
Expand Up @@ -3,7 +3,7 @@
const { Writable } = require('node:stream')
const { parserStates, opcodes, states, emptyBuffer } = require('./constants')
const { kReadyState, kSentClose, kResponse, kReceivedClose } = require('./symbols')
const { channels } = require('../core/diagnostics')
const { channels } = require('../../core/diagnostics')
const { isValidStatusCode, failWebsocketConnection, websocketMessageReceived } = require('./util')
const { WebsocketFrameSend } = require('./frame')

Expand Down
File renamed without changes.
File renamed without changes.
4 changes: 2 additions & 2 deletions lib/websocket/websocket.js → lib/web/websocket/websocket.js
Original file line number Diff line number Diff line change
Expand Up @@ -17,8 +17,8 @@ const { isEstablished, isClosing, isValidSubprotocol, failWebsocketConnection, f
const { establishWebSocketConnection } = require('./connection')
const { WebsocketFrameSend } = require('./frame')
const { ByteParser } = require('./receiver')
const { kEnumerableProperty, isBlobLike } = require('../core/util')
const { getGlobalDispatcher } = require('../global')
const { kEnumerableProperty, isBlobLike } = require('../../core/util')
const { getGlobalDispatcher } = require('../../global')
const { types } = require('node:util')

let experimentalWarned = false
Expand Down
2 changes: 1 addition & 1 deletion test/cache/get-field-values.js
Original file line number Diff line number Diff line change
Expand Up @@ -2,7 +2,7 @@

const { deepStrictEqual, throws } = require('node:assert')
const { test } = require('node:test')
const { getFieldValues } = require('../../lib/cache/util')
const { getFieldValues } = require('../../lib/web/cache/util')

test('getFieldValues', () => {
throws(() => getFieldValues(null), {
Expand Down
2 changes: 1 addition & 1 deletion test/cookie/global-headers.js
Original file line number Diff line number Diff line change
Expand Up @@ -8,7 +8,7 @@ const {
getSetCookies,
setCookie
} = require('../..')
const { getHeadersList } = require('../../lib/cookies/util')
const { getHeadersList } = require('../../lib/web/cookies/util')

describe('Using global Headers', async () => {
test('deleteCookies', () => {
Expand Down

0 comments on commit 009d0c5

Please sign in to comment.