public async Task <(int wordsAdded, IEnumerable <string> familyMembersNamed)> IncreaseVocabulary(Guid babyId, string transcript)
        {
            var babyWords = transcript
                            .Split(' ')
                            .Where(word => !string.IsNullOrEmpty(word))
                            .ToList();

            var uniqueWordsInserted = await _babyRepository.InsertIntoVocabulary(babyId, babyWords);

            var familyMemberNames = await _babyRepository.GetAllFamilyMemberNames(babyId) ?? new List <string>();

            var familyMembersMentioned = babyWords.Where(word => familyMemberNames.Contains(word));

            return(uniqueWordsInserted, familyMembersMentioned);
        }
        public async Task <IActionResult> GetBaby(
            [Required, FromRoute] Guid babyId)
        {
            var baby = await _babyRepository.GetBaby(babyId);

            if (baby == null)
            {
                return(NotFound());
            }

            var vocabulary = await _babyRepository.GetVocabulary(babyId);

            var familyMembers = await _babyRepository.GetAllFamilyMemberNames(babyId);

            return(Ok(new GetBabyResponse
            {
                BabyId = baby.BabyId,
                Name = baby.Name,
                Age = baby.Age,
                Vocabulary = vocabulary,
                FamilyMembers = familyMembers
            }));
        }