in src/providers/firestore.ts [261:301]
export function clearFirestoreData(options: { projectId: string } | string) {
return new Promise((resolve, reject) => {
let projectId;
if (typeof options === 'string') {
projectId = options;
} else if (typeof options === 'object' && has(options, 'projectId')) {
projectId = options.projectId;
} else {
throw new Error('projectId not specified');
}
const config = {
method: 'DELETE',
hostname: 'localhost',
port: FIRESTORE_PORT,
path: `/emulator/v1/projects/${projectId}/databases/(default)/documents`,
};
const req = http.request(config, (res) => {
if (res.statusCode !== 200) {
reject(new Error(`statusCode: ${res.statusCode}`));
}
res.on('data', () => {});
res.on('end', resolve);
});
req.on('error', (error) => {
reject(error);
});
const postData = JSON.stringify({
database: `projects/${projectId}/databases/(default)`,
});
req.setHeader('Content-Length', postData.length);
req.write(postData);
req.end();
});
}