Skip to content
This repository was archived by the owner on Jul 30, 2024. It is now read-only.

Add more Node.js 16 additions (Node.js v16.3.0-v16.9.0) #434

Merged
merged 1 commit into from
Nov 9, 2021
Merged
Show file tree
Hide file tree
Changes from all commits
Commits
File filter

Filter by extension

Filter by extension

Conversations
Failed to load comments.
Loading
Jump to
Jump to file
Failed to load files.
Loading
Diff view
Diff view
2 changes: 1 addition & 1 deletion .node-version
Original file line number Diff line number Diff line change
@@ -1 +1 @@
v16.3.0
v16.9.1
Original file line number Diff line number Diff line change
@@ -1,6 +1,7 @@
package io.scalajs.nodejs.buffer

import com.thoughtworks.enableMembersIf
import io.scalajs.nodejs.webstream
import net.exoego.scalajs.types.util.Factory

import scala.scalajs.js
Expand Down Expand Up @@ -31,6 +32,8 @@ class Blob() extends js.Object {
*/
@JSName("type")
def contentType: String = js.native

def stream(): webstream.ReadableStream = js.native
}

@Factory
Expand Down
Original file line number Diff line number Diff line change
Expand Up @@ -29,4 +29,7 @@ class PromisesResolver extends js.Object {
def resolvePtr(hostname: String): js.Promise[js.Array[String]] = js.native
def resolveTxt(hostname: String): js.Promise[js.Array[String]] = js.native
def reverse(ipAddress: String): js.Promise[js.Array[String]] = js.native

@enableIf(io.scalajs.nodejs.internal.CompilerSwitches.gteNodeJs14)
def setDefaultResultOrder(order: String): js.Promise[Unit] = js.native
}
25 changes: 25 additions & 0 deletions app/nodejs-v16/src/main/scala/io/scalajs/nodejs/fs/Fs.scala
Original file line number Diff line number Diff line change
Expand Up @@ -1332,6 +1332,16 @@ trait Fs extends js.Object {
def writevSync(fd: FileDescriptor, buffers: js.Array[js.typedarray.ArrayBufferView], position: Int): Unit = js.native
@enableIf(io.scalajs.nodejs.internal.CompilerSwitches.gteNodeJs12)
def writevSync(fd: FileDescriptor, buffers: js.Array[js.typedarray.ArrayBufferView]): Unit = js.native

@enableIf(io.scalajs.nodejs.internal.CompilerSwitches.gteNodeJs16)
def cpSync(src: Path, dest: Path, options: CpOptions): Unit = js.native
@enableIf(io.scalajs.nodejs.internal.CompilerSwitches.gteNodeJs16)
def cpSync(src: Path, dest: Path): Unit = js.native

@enableIf(io.scalajs.nodejs.internal.CompilerSwitches.gteNodeJs16)
def cp(src: Path, dest: Path, options: CpOptions, fsCallback2: FsCallback0): Unit = js.native
@enableIf(io.scalajs.nodejs.internal.CompilerSwitches.gteNodeJs16)
def cp(src: Path, dest: Path, fsCallback2: FsCallback0): Unit = js.native
}

/** File System Singleton
Expand Down Expand Up @@ -1451,6 +1461,11 @@ object Fs extends Fs {
def writeFile(file: FileHandle, data: BufferLike, options: FileWriteOptions): js.Promise[Unit] = js.native
def writeFile(file: FileHandle, data: String): js.Promise[Unit] = js.native
def writeFile(file: FileHandle, data: BufferLike): js.Promise[Unit] = js.native

@enableIf(io.scalajs.nodejs.internal.CompilerSwitches.gteNodeJs16)
def cp(src: Path, dest: Path): js.Promise[Unit] = js.native
@enableIf(io.scalajs.nodejs.internal.CompilerSwitches.gteNodeJs16)
def cp(src: Path, dest: Path, options: CpOptions): js.Promise[Unit] = js.native
}

@js.native
Expand Down Expand Up @@ -1680,3 +1695,13 @@ trait FsPromiseWatchOptions extends js.Object {
var persistent: js.UndefOr[Boolean] = js.undefined
var recursive: js.UndefOr[Boolean] = js.undefined
}

@Factory
trait CpOptions extends js.Object {
var filter: js.UndefOr[js.Function1[String, Boolean]] = js.undefined
var dereference: js.UndefOr[Boolean] = js.undefined
var errorOnExist: js.UndefOr[Boolean] = js.undefined
var force: js.UndefOr[Boolean] = js.undefined
var preserveTimestamps: js.UndefOr[Boolean] = js.undefined
var recursive: js.UndefOr[Boolean] = js.undefined
}
Original file line number Diff line number Diff line change
Expand Up @@ -19,6 +19,15 @@ trait Stream extends js.Object
@js.native
@JSImport("stream", JSImport.Namespace)
object Stream extends js.Object {
@enableIf(io.scalajs.nodejs.internal.CompilerSwitches.gteNodeJs16)
def compose(first: Stream, rest: Stream*): Duplex = js.native

@enableIf(io.scalajs.nodejs.internal.CompilerSwitches.gteNodeJs16)
def compose(first: js.Iterable[Stream], rest: js.Iterable[Stream]*): Duplex = js.native

@enableIf(io.scalajs.nodejs.internal.CompilerSwitches.gteNodeJs16)
def compose(first: js.Function0[Stream], rest: js.Function0[Stream]*): Duplex = js.native

@enableIf(io.scalajs.nodejs.internal.CompilerSwitches.gteNodeJs14)
def addAbortSignal[T <: Stream](signal: AbortSignal, stream: T): T = js.native

Expand Down
Original file line number Diff line number Diff line change
@@ -0,0 +1,8 @@
package io.scalajs.nodejs

import scala.scalajs.js

package object webstream {
// FIXME
type ReadableStream = js.Any
}