extra-javascript-text.web
Version:
Utilities for processing JavaScript text{web}.
140 lines (122 loc) ⢠5.89 kB
Markdown
Utilities for processing JavaScript text.<br>
š¦ [Node.js](https://www.npmjs.com/package/extra-javascript-text),
š [Web](https://www.npmjs.com/package/extra-javascript-text.web),
š [Files](https://unpkg.com/extra-javascript-text.web/),
š° [Docs](https://nodef.github.io/extra-javascript-text/).
This package is available in *Node.js* and *Web* formats. To use it on the web,
simply use the `extra_javascript_text` global variable after loading with a `<script>`
tag from the [jsDelivr CDN].
> Stability: [Experimental](https://www.youtube.com/watch?v=L1j93RnIxEo).
[ ]: https://cdn.jsdelivr.net/npm/extra-javascript-text.web/index.js
<br>
```javascript
const fs = require('fs');
const xjavascript = require('extra-javascript-text');
function main() {
var txt = fs.readFileSync('src/index.ts', 'utf8').replace(/\r?\n/, '\n');
xjavascript.importSymbols(txt);
// []
xjavascript.exportSymbols(txt);
// [
// {
// full: 'export function tagStrings',
// name: 'tagStrings',
// kind: 'function',
// isDefault: false
// },
// {
// full: 'export function untagStrings',
// name: 'untagStrings',
// kind: 'function',
// isDefault: false
// },
// ...
// ]
xjavascript.jsdocSymbols(txt);
// [
// {
// full: '/**\r\n' +
// ' * Get index of string end.\r\n' +
// ' * @param txt javascript text\r\n' +
// ' * @param i index of string begin\r\n' +
// ' */\r\n' +
// ' function indexOfClosingString',
// jsdoc: '/**\r\n' +
// ' * Get index of string end.\r\n' +
// ' * @param txt javascript text\r\n' +
// ' * @param i index of string begin\r\n' +
// ' */',
// name: 'indexOfClosingString',
// kind: 'function',
// isExported: false,
// isDefault: false
// },
// {
// full: '/**\r\n' +
// ' * Tag strings in javascript text and remove them.\r\n' +
// ' * @param txt javascript text\r\n' +
// ' * @returns [updated javascript text, tags]\r\n' +
// ' */\r\n' +
// 'export function tagStrings',
// jsdoc: '/**\r\n' +
// ' * Tag strings in javascript text and remove them.\r\n' +
// ' * @param txt javascript text\r\n' +
// ' * @returns [updated javascript text, tags]\r\n' +
// ' */',
// name: 'tagStrings',
// kind: 'function',
// isExported: true,
// isDefault: false
// },
// ...
// ]
}
main();
```
<br>
<br>
| Property | Description |
| ---- | ---- |
| [tagStrings] | Tag strings in javascript text and remove them. |
| [untagStrings] | Untag strings in javascript text by adding them back. |
| [forEachComment] | Match links in javascript text. |
| [comments] | Get comments in javascript text. |
| [replaceComments] | Replace comments in javascript text. |
| [tagComments] | Tag comments in javascript text and remove them. |
| [untagComments] | Untag comments in javascript text by adding them back. |
| [uncomment] | Remove comments from javascript text. |
| [forEachJsdocSymbol] | Match jsdoc symbols in javascript text. |
| [jsdocSymbols] | Get jsdoc symbols in javascript text. |
| [replaceJsdocSymbols] | Replace jsdoc symbols in javascript text. |
| [forEachExportSymbol] | Match export symbols in javascript text. |
| [exportSymbols] | Get export symbols in javascript text. |
| [replaceExportSymbols] | Replace export symbols in javascript text. |
| [forEachImportSymbol] | Match import symbols in javascript text. |
| [importSymbols] | Get import symbols in javascript text. |
| [replaceImportSymbols] | Replace import symbols in javascript text. |
| [correctDeclarations] | Correct type declarations after generation. |
<br>
<br>
[](https://www.youtube.com/watch?v=rJYcZX8na_Q)<br>
[](https://nodef.github.io)
[](https://zenodo.org/badge/latestdoi/476759917)

[ ]: https://nodef.github.io/extra-javascript-text/modules.html#tagStrings
[ ]: https://nodef.github.io/extra-javascript-text/modules.html#untagStrings
[ ]: https://nodef.github.io/extra-javascript-text/modules.html#forEachComment
[ ]: https://nodef.github.io/extra-javascript-text/modules.html#comments
[ ]: https://nodef.github.io/extra-javascript-text/modules.html#replaceComments
[ ]: https://nodef.github.io/extra-javascript-text/modules.html#tagComments
[ ]: https://nodef.github.io/extra-javascript-text/modules.html#untagComments
[ ]: https://nodef.github.io/extra-javascript-text/modules.html#uncomment
[ ]: https://nodef.github.io/extra-javascript-text/modules.html#forEachJsdocSymbol
[ ]: https://nodef.github.io/extra-javascript-text/modules.html#jsdocSymbols
[ ]: https://nodef.github.io/extra-javascript-text/modules.html#replaceJsdocSymbols
[ ]: https://nodef.github.io/extra-javascript-text/modules.html#forEachExportSymbol
[ ]: https://nodef.github.io/extra-javascript-text/modules.html#exportSymbols
[ ]: https://nodef.github.io/extra-javascript-text/modules.html#replaceExportSymbols
[ ]: https://nodef.github.io/extra-javascript-text/modules.html#forEachImportSymbol
[ ]: https://nodef.github.io/extra-javascript-text/modules.html#importSymbols
[ ]: https://nodef.github.io/extra-javascript-text/modules.html#replaceImportSymbols
[ ]: https://nodef.github.io/extra-javascript-text/modules.html#correctDeclarations