@srph/tofd2

tofd2 converts an object to a FormData representation.

Usage no npm install needed!

<script type="module">
  import srphTofd2 from 'https://cdn.skypack.dev/@srph/tofd2';
</script>

README

tofd2 npm version Build Status

Converts an object to a FormData representation. Also supports nested arrays, objects, File, and Buffers.

Fork of tugorez/tofd.

Installation

npm i @srph/tofd2 --save

Why

This library allows you to declaratively create a FormData instead of having to append each property.

- const payload = new FormData()
- payload.append('first_name', firstName)
- payload.append('last_name', lastName)
+ const payload = tofd({
+   first_name: firstName,
+   last_name: lastName
+ })
fetch('/user', { method: 'POST', body: payload })

Usage

const payload = tofd({
  // Basic data types
  first_name: 'hello',
  last_name: 'hello',
  // Nested arrays and objects
  tags: [{ id: 1 } , { id: 2 }],
  // Files and Buffers
  attachments: [File, File],
  avatar: File
})

API

tofd(obj: Object): FormData

Accepts an object that gets converted into FormData.

Contributing

Formatting

Run Prettier on the codebase.

yarn fmt

Running tests

yarn test