@literals/parser
Version:
Parse template literals from code
56 lines (43 loc) • 1.33 kB
Markdown
# parse-literals
_Because sometimes you literally need to parse template literals._
[](https://www.npmjs.com/package/%40literals%2Fparser)
<!-- [](https://travis-ci.com/asyncLiz/parse-literals) -->
<!-- [](https://coveralls.io/github/asyncLiz/parse-literals?branch=master) -->
## Why?
Template literals are often used in JavaScript for HTML and CSS. This library
allows developers to extract the strings from the literals for post-processing,
such as minifying or linting.
## Usage
> [!IMPORTANT]
> All `@literals/*` packages are published as **ESM-only**!
```js
import * as pl from '@literals/parser';
const templates = pl.parseLiterals(`
render() {
return html\`
<h1>\${"Hello World"}</h1>
\`;
}
`);
console.log(templates);
// [
// {
// "tag": "html",
// "parts": [
// {
// "text": "\n <h1>",
// "start": 30,
// "end": 41
// },
// {
// "text": "</h1>\n ",
// "start": 57,
// "end": 67
// }
// ]
// }
// ]
```
## Supported Source Syntax
- JavaScript
- TypeScript