mirror of https://github.com/gchq/CyberChef.git
add named exports to wiki
parent
50dc2317fa
commit
aef76aeeed
31
Node-API.md
31
Node-API.md
|
@ -43,9 +43,9 @@ const aestTime = chef.translateDateTimeFormat("15/06/2015 20:45:00", {
|
||||||
|
|
||||||
### Parse a Teredo IPv6 Address
|
### Parse a Teredo IPv6 Address
|
||||||
```javascript
|
```javascript
|
||||||
import { parseIPv6Address } from "cyberchef";
|
import chef from "cyberchef";
|
||||||
|
|
||||||
console.log(parseIPv6Address("2001:0000:4136:e378:8000:63bf:3fff:fdd2"));
|
console.log(chef.parseIPv6Address("2001:0000:4136:e378:8000:63bf:3fff:fdd2"));
|
||||||
/** =>
|
/** =>
|
||||||
Longhand: 2001:0000:4136:e378:8000:63bf:3fff:fdd2
|
Longhand: 2001:0000:4136:e378:8000:63bf:3fff:fdd2
|
||||||
Shorthand: 2001:0:4136:e378:8000:63bf:3fff:fdd2
|
Shorthand: 2001:0:4136:e378:8000:63bf:3fff:fdd2
|
||||||
|
@ -69,29 +69,29 @@ Teredo prefix range: 2001::/32 */
|
||||||
|
|
||||||
### Convert data from a Hexdump, then decompress
|
### Convert data from a Hexdump, then decompress
|
||||||
```javascript
|
```javascript
|
||||||
import { Dish, fromHexdump, gunzip } from "cyberchef";
|
import chef from "cyberchef";
|
||||||
|
|
||||||
const message = new Dish(`00000000 1f 8b 08 00 12 bc f3 57 00 ff 0d c7 c1 09 00 20 |.....¼óW.ÿ.ÇÁ.. |
|
const message = new chef.Dish(`00000000 1f 8b 08 00 12 bc f3 57 00 ff 0d c7 c1 09 00 20 |.....¼óW.ÿ.ÇÁ.. |
|
||||||
00000010 08 05 d0 55 fe 04 2d d3 04 1f ca 8c 44 21 5b ff |..ÐUþ.-Ó..Ê.D![ÿ|
|
00000010 08 05 d0 55 fe 04 2d d3 04 1f ca 8c 44 21 5b ff |..ÐUþ.-Ó..Ê.D![ÿ|
|
||||||
00000020 60 c7 d7 03 16 be 40 1f 78 4a 3f 09 89 0b 9a 7d |\`Ç×..¾@.xJ?....}|
|
00000020 60 c7 d7 03 16 be 40 1f 78 4a 3f 09 89 0b 9a 7d |\`Ç×..¾@.xJ?....}|
|
||||||
00000030 4e c8 4e 6d 05 1e 01 8b 4c 24 00 00 00 |NÈNm....L$...|`)
|
00000030 4e c8 4e 6d 05 1e 01 8b 4c 24 00 00 00 |NÈNm....L$...|`)
|
||||||
.apply(fromHexdump)
|
.apply(chef.fromHexdump)
|
||||||
.apply(gunzip)
|
.apply(chef.gunzip)
|
||||||
.toString();
|
.toString();
|
||||||
// =>"So long and thanks for all the fish." //true
|
// =>"So long and thanks for all the fish." //true
|
||||||
```
|
```
|
||||||
|
|
||||||
### Interact with files from Node.js `fs` library
|
### Interact with files from Node.js `fs` library
|
||||||
```javascript
|
```javascript
|
||||||
import { Dish, toHex, fromHex } from "cyberchef";
|
import chef from "cyberchef";
|
||||||
|
|
||||||
fs.writeFileSync("test.txt", toHex("hello").toString());
|
fs.writeFileSync("test.txt", chef.toHex("hello").toString());
|
||||||
|
|
||||||
const file = new Dish(fs.readFileSync("test.txt"));
|
const file = new chef.Dish(fs.readFileSync("test.txt"));
|
||||||
console.log(file) ;
|
console.log(file) ;
|
||||||
// => 68 65 6c 6c 6f
|
// => 68 65 6c 6c 6f
|
||||||
|
|
||||||
file.apply(fromHex).toString()
|
file.apply(chef.fromHex).toString()
|
||||||
// => hello;
|
// => hello;
|
||||||
```
|
```
|
||||||
|
|
||||||
|
@ -106,6 +106,14 @@ chef.toMorseCode("hello").toString();
|
||||||
// => .... . .-.. .-.. ---
|
// => .... . .-.. .-.. ---
|
||||||
```
|
```
|
||||||
|
|
||||||
|
#### Named imports
|
||||||
|
You can import specific operations Using a deep import specifier:
|
||||||
|
```javascript
|
||||||
|
import { toHex } from "cyberchef/module.mjs";
|
||||||
|
toHex("Menu a la carte");
|
||||||
|
// => 4d 65 6e 75 20 61 20 6c 61 20 63 61 72 74 65
|
||||||
|
```
|
||||||
|
|
||||||
### CommonJS require
|
### CommonJS require
|
||||||
|
|
||||||
```javascript
|
```javascript
|
||||||
|
@ -266,6 +274,9 @@ Calling `toString` will give a string representation of the result.
|
||||||
|
|
||||||
[See more about `Dish` here.](#the-dish-type)
|
[See more about `Dish` here.](#the-dish-type)
|
||||||
|
|
||||||
|
##### `File` output type from Dish
|
||||||
|
Node.js does not have a `File` API, so for operations that return a `File`, we use a shim which creates an object with the same shape as the `File` Web API. You can access the underlying data if this file type with `file.data`, which will be an `ArrayBuffer`.
|
||||||
|
|
||||||
#### Compose operations
|
#### Compose operations
|
||||||
Operations can be composed using `apply`. This example performs ROT13 substitution followed by conversion to Hex on some input:
|
Operations can be composed using `apply`. This example performs ROT13 substitution followed by conversion to Hex on some input:
|
||||||
```javascript
|
```javascript
|
||||||
|
|
Loading…
Reference in New Issue