Introducing Socket Firewall: Free, Proactive Protection for Your Software Supply Chain.Learn More
Socket
Book a DemoInstallSign in
Socket

@aduh95/toml

Package Overview
Dependencies
Maintainers
1
Versions
6
Alerts
File Explorer

Advanced tools

Socket logo

Install Socket

Detect and block malicious and high-risk dependencies

Install

@aduh95/toml

This package contains methods for parsing Tom's Obvious, Minimal Language (TOML) and converting values to TOML.

latest
Source
npmnpm
Version
0.4.2
Version published
Maintainers
1
Created
Source

toml

This package contains methods for parsing TOML documents and converting JS objects to TOML.

Usage

Node.js

import * as TOML from "@aduh95/toml";

console.log(
  TOML.parse(`
[package]
name = "@aduh95/toml"
version = "0.1.0"

[dependencies]
serde-transcode = "1.1.0"
serde_json = "1.0.40"
toml = "0.5.3"
wasm-bindgen = "0.2"
`)
);

This outputs:

{
  "dependencies": {
    "serde-transcode": "1.1.0",
    "serde_json": "1.0.40",
    "toml": "0.5.3",
    "wasm-bindgen": "0.2"
  },
  "package": {
    "name": "@aduh95/toml",
    "version": "0.1.0"
  }
}

You can also use the stringify method that outputs a TOML string:

import * as TOML from "@aduh95/toml";

console.log(
  TOML.stringify({
    dependencies: {
      "serde-transcode": "1.1.0",
      serde_json: "1.0.40",
      toml: "0.5.3",
      "wasm-bindgen": "0.2",
    },
    package: {
      name: "@aduh95/toml",
      version: "0.1.0",
    },
  })
);

If you are not using ECMAScript modules, you can use require instead of import:

const TOML = require("@aduh95/toml");
TOML.parse('Hello = "World!"');

Web browser

Works great on workers!

Main difference with Node.js API is that the WASM fetching and compilation happen asynchronously. You must call the TOML.default function before using the parse and stringify methods.

import * as TOML from "https://unpkg.com/@aduh95/toml/web/toml2js.js";

// Init the module
await TOML.default();
// Optionally, you can provide the absolute path to the WASM file
// await TOML.default("https://unpckg.com/@aduh95/toml/web/toml2js_bg.wasm");

const tomlString = TOML.stringify({
  hello: "world!",
});
const jsObject = TOML.parse(`pi=3.1415`);

Deno

Works same as the browser API.

If you are using the CDN version, you need to pass the allow-net flag in order for TOML.default to download the WASM file.

If you are working from your local file system, you can pass the WASM file directly to the TOML.default function in addition with the --allow-read CLI flag.

import * as TOML from "/path/to/toml2js.js";
// Init the module when the wasm file is on the file system
await TOML.default(await Deno.readFile("/path/to/toml2js_bg.wasm"));

Limitations

No support for dates.

Build

You need NodeJS and wasm-pack.

$ npm run build
$ npm run test

Keywords

toml

FAQs

Package last updated on 23 Mar 2021

Did you know?

Socket

Socket for GitHub automatically highlights issues in each pull request and monitors the health of all your open source dependencies. Discover the contents of your packages and block harmful activity before you install or update your dependencies.

Install

Related posts