Faits :
A.
Entre le 19 septembre 2018 et le 1 er mars 2019, A._ a déposé quatre plaintes pénales successives contre B._, son compagnon jusqu'à leur séparation en juin 2018, avec lequel elle avait eu trois enfants, nés respectivement en 2006, 2008 et 2010. Elle lui reprochait des actes susceptibles d'être qualifiés de menaces (art. 180 CP), de voies de fait (art. 126 CP), d'injure (art. 177 CP), de tentative de contrainte (art. 181 CP cum art. 22 al. 1 CP), d'accès indu à un système informatique (art. 143 bis CP), de violation du devoir d'assistance ou d'éducation (art. 219 CP), d'enlèvement de mineur (art. 220 CP), de dommages à la propriété (art. 144 CP) et de faux dans les titres (art. 251 CP).
Le 23 janvier 2019, le Ministère public de la République et canton de Genève a ouvert une instruction pénale contre B._. Le même jour ainsi que le 28 mars 2019, la plaignante et le prévenu ont été auditionnés dans le cadre de confrontations. A ces occasions, la première était assistée de son conseil, alors que le second avait comparu seul.
B.
B.a. Par ordonnance du 5 avril 2019, confirmée par arrêt du 10 juillet 2019 de la Chambre pénale de recours de la Cour de justice genevoise, le Ministère public a rejeté la demande de A._ tendant à être mise au bénéfice de l'assistance judiciaire gratuite.
B.b. Le 29 août 2019, A._ a requis une nouvelle fois du Ministère public l'octroi de l'assistance judiciaire gratuite.
Par ordonnance du 18 septembre 2019, le Ministère public a refusé d'accorder à A._ le bénéfice de l'assistance judiciaire. Le recours formé par A._ contre cette ordonnance a été rejeté par arrêt du 25 novembre 2019 de la Chambre pénale de recours.
C.
Contre cet arrêt, A._ forme un recours en matière pénale au Tribunal fédéral. Elle conclut, avec suite de frais et dépens, principalement à sa réforme en ce sens qu'elle est mise au bénéfice de l'assistance judiciaire avec effet rétroactif au 12 septembre 2018. Subsidiairement, elle conclut à l'annulation de l'arrêt et au renvoi de la cause à l'autorité précédente pour nouvelle décision. Elle sollicite en outre le bénéfice de l'assistance judiciaire pour la procédure fédérale.
Invitée à se déterminer, la cour cantonale a renoncé à présenter des observations, se référant aux considérants de son arrêt. Le Ministère public a pour sa part conclu au rejet du recours.
Considérant en droit :
1.
Le recours en matière pénale est ouvert contre une décision incidente par laquelle l'assistance judiciaire est refusée à une partie à la procédure pénale (art. 78 al. 1 LTF). Un tel refus est susceptible de causer un préjudice irréparable à son destinataire, au sens de l'art. 93 al. 1 let. a LTF, de sorte qu'il peut faire l'objet d'un recours immédiat au Tribunal fédéral (ATF 140 IV 202 consid. 2.2 p. 205; 133 IV 335 consid. 4 p. 338; arrêt 1B_49/2019 du 20 mai 2019 consid. 1).
Aux termes de l'art. 81 al. 1 let. a et b ch. 5 LTF, la partie plaignante qui a participé à la procédure de dernière instance cantonale est habilitée à recourir au Tribunal fédéral si la décision attaquée peut avoir des effets sur le jugement de ses prétentions civiles. La qualité pour recourir doit aussi être reconnue à la partie qui invoque une violation de ses droits de procédure lorsque cette violation équivaut à un déni de justice formel (ATF 141 IV 1 consid. 1.1 p. 5). Il en va notamment ainsi du droit à l'assistance judiciaire. Ce droit étant reconnu à la partie plaignante aux conditions de l'art. 136 CPP, celle-ci est recevable à se plaindre du fait que l'assistance judiciaire lui a été refusée (arrêts 1B_49/2019 précité consid. 1; 1B_245/2017 du 23 août 2017 consid. 1 et les arrêts cités).
Pour le surplus, le recours a été déposé en temps utile (art. 46 al. 1 let. b, 48 al. 2 et 100 al. 1 LTF) contre une décision rendue par une autorité cantonale de dernière instance (art. 80 LTF). Partant, il y a lieu d'entrer en matière.
2.
Invoquant des violations des art. 29 al. 3 Cst. et 136 CPP, la recourante se plaint que le bénéfice de l'assistance judiciaire gratuite lui a été refusée.
2.1. A teneur de l'art. 29 al. 3 Cst., toute personne qui ne dispose pas de ressources suffisantes a droit, à moins que sa cause paraisse dépourvue de toute chance de succès, à l'assistance gratuite d'un défenseur, dans la mesure où la sauvegarde de ses droits le requiert.
L'art. 136 CPP concrétise les conditions d'octroi de l'assistance judiciaire pour la partie plaignante dans un procès pénal. Selon l'art. 136 al. 1 CPP, la direction de la procédure accorde entièrement ou partiellement l'assistance judiciaire à la partie plaignante indigente (let. a) pour lui permettre de faire valoir ses prétentions civiles si l'action civile ne paraît pas vouée à l'échec (let. b). L'assistance judiciaire comprend l'exonération d'avances de frais et de sûretés (art. 136 al. 2 let. a CPP), l'exonération des frais de procédure (let. b) et/ou la désignation d'un conseil juridique gratuit, lorsque la défense des intérêts de la partie plaignante l'exige (let. c).
Cette norme reprend ainsi les trois conditions cumulatives découlant de l'art. 29 al. 3 Cst., à savoir l'indigence, les chances de succès et le besoin d'être assisté.
2.2. En l'espèce, la cour cantonale a reconnu, sans que cela ne soit remis en cause par les parties, que la recourante était indigente et que ses prétentions civiles, certes non encore formellement déposées, n'apparaissaient pas vouées à l'échec (cf. arrêt entrepris, consid. 3.5 p. 7).
La cour cantonale a en revanche nié que la défense des intérêts de la recourante exigeait qu'elle fût mise au bénéfice d'un conseil juridique gratuit (cf. arrêt entrepris, ibidem), ce que l'intéressée conteste.
2.2.1. Selon les critères déduits de l'art. 29 al. 3 Cst. par la jurisprudence pour juger de la nécessité de la désignation d'un conseil juridique au lésé, il est considéré en principe que la procédure pénale ne nécessite que des connaissances juridiques modestes pour la sauvegarde des droits du lésé; il s'agit essentiellement d'annoncer ses éventuelles prétentions en réparation de son dommage et de son tort moral ainsi que de participer aux auditions des prévenus, des témoins et de poser, cas échéant, des questions complémentaires; un citoyen ordinaire devrait ainsi être en mesure de défendre lui-même ses intérêts de lésé dans une enquête pénale (ATF 123 I 145 consid. 2b/bb p. 147, repris dans le Message du 21 décembre 2005 relatif à l'unification de la procédure pénale, FF 2006 1160; cf. également arrêts 1B_39/2019 du 20 mars 2019 consid. 2.4; 1B_450/2015 du 22 avril 2016 consid. 2.3 et références citées).
Pour évaluer si l'affaire présente des difficultés que la partie plaignante ne pourrait pas surmonter sans l'aide d'un avocat, il y a lieu d'apprécier l'ensemble des circonstances concrètes. Il faut tenir compte notamment des intérêts en jeu, de la complexité de la cause en fait et en droit, des circonstances personnelles du demandeur, de ses connaissances linguistiques, de son âge, de sa situation sociale et de son état de santé (ATF 123 I 145 consid. 2b/cc p. 147 et 3a/bb p. 149 s.; arrêts 1B_39/2019 du 20 mars 2019 consid. 2.4; 1B_314/2016 du 28 septembre 2016 consid. 2.1).
2.2.2. Par le dépôt de ses plaintes pénales successives, la recourante avait porté à la connaissance du Ministère public divers comportements de son ex-compagnon, qui, depuis leur séparation en juin 2018, n'aurait cessé de s'en prendre à elle, la harcelant constamment, notamment par des messages injurieux ou par le fait de l'attendre parfois à proximité de son domicile. En particulier, elle lui reprochait de l'avoir menacée de mort à plusieurs reprises, en lui disant par exemple qu'il "aura[it] sa peau", qu'il ne la "lâchera[it] jamais" et qu'il allait "l'écraser jusqu'à ce [qu'elle soit] morte", ayant feint à une occasion de passer à l'acte en dirigeant son véhicule dans sa direction. Les menaces du prévenu auraient également visé la mère de la recourante, dès lors qu'il aurait déclaré vouloir engager un tueur à gage pour la supprimer. Parmi les actes dénoncés figuraient aussi les circonstances dans lesquelles son ex-compagnon aurait requis, sans son accord, de nouveaux documents d'identité pour ses enfants et les aurait emmenés durant plusieurs jours en France, sans donner de nouvelles autres que quelques photographies, alors qu'elle en avait la garde exclusive. Dans ce contexte, elle a encore allégué que son ex-compagnon mettait régulièrement en danger le développement de ses enfants en annulant des rendez-vous médicaux importants ou en refusant de les y emmener. La recourante reprochait aussi au prévenu d'avoir usurpé son identité en confectionnant un montage de sa carte d'identité et en effectuant des achats à son nom. A cet égard, elle a signalé que l'Office cantonal de la population et des migrations l'avait informée d'une demande de changement d'adresse concernant ses enfants qui portait sa signature, mais qu'elle n'aurait jamais signée. Les plaintes avaient encore trait à la notification d'un commandement de payer portant sur une créance sans fondement ainsi qu'à un éventuel accès indu aux données de son téléphone portable, la recourante faisant grief au prévenu d'avoir utilisé son identifiant Apple, de sorte qu'il aurait été en mesure d'intervenir dans sa messagerie. Enfin, elle avait relaté que le prévenu lui aurait craché dessus à une reprise, qu'il aurait donné des coups de poing et de pied sur sa voiture et qu'il aurait arraché la porte de sa cave (cf. arrêt entrepris, let. B.b p. 2).
2.3. Les divers faits relatés par la recourante, dont la vraisemblance peut en partie être déduite des photographies et des nombreux messages privés produits au dossier cantonal, s'inscrivent dans le contexte d'une séparation apparemment très conflictuelle, reflétant un acharnement particulier de l'auteur dénoncé durant, à tout le moins, plusieurs mois et impliquant de surcroît des enfants mineurs. Ainsi, au regard des comportements en cause, les infractions susceptibles d'entrer en considération sont nombreuses et concernent des biens juridiques différents, rendant d'autant plus difficile la détermination du préjudice relatif à d'éventuelles atteintes illicites à la personnalité qui auraient été subies par la partie plaignante.
Dans ce contexte, il y a lieu d'admettre que la cause revêt une complexité suffisante, tant en fait qu'en droit, pour justifier le besoin de la recourante d'être assistée par un conseil juridique. Il n'est pas décisif en l'occurrence que le prévenu n'ait jusqu'alors pas agi avec l'assistance d'un défenseur.
2.4. L'octroi de l'assistance judiciaire rétroagit en principe au jour du dépôt de la demande, sous réserve de démarches urgentes entreprises peu de temps avant (ATF 122 I 203 consid. 2f p. 208; arrêt 1B_205/2019 du 14 juin 2019 consid. 5 et les références citées).
Dans la mesure où il peut être déduit du dossier cantonal que la première demande d'assistance judiciaire de la recourante avait été formée le 15 octobre 2018 (cf. recours du 23 avril 2019, p. 2) et étant donné que l'indigence de la recourante, de même que les chances de succès de son action civile, avaient déjà été reconnues comme avérées dans l'arrêt de la cour cantonale du 10 juillet 2019 rejetant cette première demande (cf. arrêt entrepris, let. B.h p. 4), il y a lieu d'admettre que le bénéfice de l'assistance judiciaire doive prendre rétroactivement effet, selon les conclusions prises, dès le 12 septembre 2018, couvrant ainsi déjà les démarches liées au dépôt de la première plainte pénale, qui paraît avoir été déposée dans l'urgence.
3.
Il résulte de ce qui précède que le recours doit être admis. L'arrêt du 25 novembre 2019 de la Chambre pénale de recours est annulé et la cause renvoyée à l'autorité précédente pour nouvelle décision au sens des considérants.
La recourante, qui obtient gain de cause avec l'assistance d'un mandataire professionnel, a droit à des dépens à la charge du canton de Genève (art. 68 a. 1 LTF). Il n'est pas perçu de frais judiciaires (art. 66 al. 4 LTF). La requête d'assistance judiciaire est sans objet.
Par ces motifs, le Tribunal fédéral prononce :
1.
Le recours est admis. L'arrêt du 25 novembre 2019 de la Chambre pénale de recours est annulé. La cause est renvoyée à l'autorité précédente pour nouvelle décision au sens des considérants.
2.
Une indemnité de dépens, fixée à 2'500 fr., est allouée au mandataire de la recourante, à la charge du canton de Genève.
3.
Il n'est pas perçu de frais judiciaires.
4.
La requête d'assistance judiciaire pour la procédure fédérale est sans objet.
5.
Le présent arrêt est communiqué au mandataire de la recourante, au Ministère public de la République et canton de Genève et à la Cour de justice de la République et canton de Genève, Chambre pénale de recours.
Lausanne, le 17 mars 2020
Au nom de la Ire Cour de droit public
du Tribunal fédéral suisse
Le Président : Chaix
Le Greffier : Tinguely