UNPKG

@levante-framework/firekit

Version:

A library to facilitate Firebase authentication and Firestore interaction for LEVANTE apps

32 lines (31 loc) 1.21 kB
"use strict"; Object.defineProperty(exports, "__esModule", { value: true }); exports.getTaskAndVariant = void 0; const firestore_1 = require("firebase/firestore"); const getTaskAndVariant = async ({ db, taskId, variantId, }) => { const taskRef = (0, firestore_1.doc)(db, 'tasks', taskId); const variantsCollectionRef = (0, firestore_1.collection)(taskRef, 'variants'); const docSnap = await (0, firestore_1.getDoc)(taskRef); if (docSnap.exists()) { const taskData = docSnap.data(); // Check to see if variant exists already by querying for a match on the params. const q = (0, firestore_1.query)(variantsCollectionRef, (0, firestore_1.where)('id', '==', variantId), (0, firestore_1.limit)(1)); const querySnapshot = await (0, firestore_1.getDocs)(q); let variantData; querySnapshot.forEach((docRef) => { variantData = { ...docRef.data(), id: docRef.id, }; }); return { task: taskData, variant: variantData, }; } return { task: undefined, variant: undefined, }; }; exports.getTaskAndVariant = getTaskAndVariant;