toml-eslint-parser
A TOML parser that produces output compatible with ESLint.
Features
Installation
npm install --save-dev toml-eslint-parser
Usage
Configuration
Use .eslintrc.*
file to configure parser. See also: https://eslint.org/docs/user-guide/configuring.
Example .eslintrc.js:
module.exports = {
"overrides": [
{
"files": ["*.toml"],
"parser": "toml-eslint-parser"
}
]
}
Usage for Custom Rules / Plugins
Usage for Directly
Example:
import type { AST } from "toml-eslint-parser"
import { parseTOML, getStaticTOMLValue } from "toml-eslint-parser"
const code = `
# This is a TOML document
title = "TOML Example"
[owner]
name = "Tom Preston-Werner"
dob = 1979-05-27T07:32:00-08:00
[database]
enabled = true
ports = [ 8001, 8001, 8002 ]
data = [ ["delta", "phi"], [3.14] ]
temp_targets = { cpu = 79.5, case = 72.0 }
[servers]
[servers.alpha]
ip = "10.0.0.1"
role = "frontend"
[servers.beta]
ip = "10.0.0.2"
role = "backend"
`
const ast: AST.TOMLProgram = parseTOML(code)
console.log(ast)
const value = getStaticTOMLValue(ast)
console.log(value)
Testing
This project uses files from BurntSushi/toml-test and iarna/toml-spec-tests repositories for testing.
Related Packages