Lightweight React textarea for Domain Specific Language (DSL) editing.
npm install react-dsl-editorLightweight React textarea for Domain Specific Language (DSL) editing.
bash
pnpm install @rzymek/react-dsl-editor
``typescript jsx
// Define your grammar using the provided parser combinator library:
const identifier = pattern([a-zA-Z_][a-zA-Z0-9_]*, 'identifier');
const grammar = sequence('declaration',
term('var'),
ws,
identifier,
term('='),
rational,
);// Optionally provide autocomplete suggestions for specific types of tokens:
function suggest(type: NodeTypes) {
if(type === 'identifier') {
return ['x', 'y', 'z'];
}
}
function Usage() {
const [code, setCode] = useState(
.trim());
return code={code}
onChange={setCode}
suggestions={suggest} />;
}``