FormData for the JavaScript target: https://developer.mozilla.org/en-US/docs/Web/API/FormData
Example: cmd: -r:off
import std/jsformdata
let data: FormData = newFormData()
data["key0"] = "value0".cstring
data.add("key1".cstring, "value1".cstring)
data.delete("key1")
assert data.hasKey("key0")
assert data["key0"] == "value0".cstring
data.clear()
assert data.len == 0 func `[]`(self: FormData; name: cstring): cstring {.importjs: "#.get(#)",
...raises: [], tags: [], forbids: [].}func `[]=`(self: FormData; name: cstring;
value: SomeNumber | bool | cstring | Blob) {.importjs: "#.set(#, #)",
...raises: [], tags: [], forbids: [].}func add(self: FormData; name: cstring;
value: SomeNumber | bool | cstring | Blob) {.
importjs: "#.append(#, #)", ...raises: [], tags: [], forbids: [].}func add(self: FormData; name: cstring;
value: SomeNumber | bool | cstring | Blob; filename: cstring) {.
importjs: "#.append(#, #, #)", ...raises: [], tags: [], forbids: [].}func delete(self: FormData; name: cstring) {.importjs: "#.$1(#)", ...raises: [],
tags: [], forbids: [].}func getAll(self: FormData; name: cstring): seq[cstring] {.importjs: "#.$1(#)",
...raises: [], tags: [], forbids: [].}func hasKey(self: FormData; name: cstring): bool {.importjs: "#.has(#)",
...raises: [], tags: [], forbids: [].}func keys(self: FormData): seq[cstring] {.importjs: "Array.from(#.$1())",
...raises: [], tags: [], forbids: [].}func pairs(self: FormData): seq[tuple[key, val: cstring]] {.
importjs: "Array.from(#.entries())", ...raises: [], tags: [], forbids: [].}func put(self: FormData; name: cstring;
value: SomeNumber | bool | cstring | Blob; filename: cstring) {.
importjs: "#.set(#, #, #)", ...raises: [], tags: [], forbids: [].}func values(self: FormData): seq[cstring] {.importjs: "Array.from(#.$1())",
...raises: [], tags: [], forbids: [].}
© 2006–2024 Andreas Rumpf
Licensed under the MIT License.
https://nim-lang.org/docs/jsformdata.html