Utilities for processing 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.
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();
Index
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. |