Secure your code as it's written. Use Snyk Code to scan source code in minutes - no build needed - and fix issues immediately.
const ast = parse(content, { sourceType: 'module' });
let idx = 0;
const len = ast.tokens.length;
let capturing = false;
const data = {};
while (idx < len) {
const token = ast.tokens[idx];
if (
token.type === tokTypes._export &&
ast.tokens[idx + 1].type === tokTypes._default &&
ast.tokens[idx + 2].type === tokTypes.braceL
) {
capturing = true;
idx += 3;
} else if (capturing) {
if (token.type === tokTypes.braceR) {
break;
} else {
const {
key,
value,
startIdx,
endIdx,
valueStart,
valueEnd,
} = parseLine(ast.tokens, idx);
data[key] = {
key,
value,
valueStart,
valueEnd,
startIdx,
value,
startIdx,
endIdx,
valueStart,
valueEnd,
} = parseLine(ast.tokens, idx);
data[key] = {
key,
value,
valueStart,
valueEnd,
startIdx,
endIdx,
source: annotations.get(key),
};
if (ast.tokens[endIdx].type !== tokTypes.braceR) {
idx = endIdx + 1;
} else {
break;
}
}
} else {
idx += 1;
}
}
return {
content,
data,
ast,
};
}