File size: 401 Bytes
bc20498
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
/**
 * @param {import('estree').Node} node
 * @param {import('estree').Node} replacement
 */
export default function replace_object(node, replacement) {
	if (node.type === 'Identifier') return replacement;

	const ancestor = node;
	let parent;
	while (node.type === 'MemberExpression') {
		parent = node;
		node = node.object;
	}
	parent.object = /** @type {any} */ (replacement);
	return ancestor;
}