;(function() { window.createMeasureObserver = (measureName) => { var markPrefix = `_uol-measure-${measureName}-${new Date().getTime()}`; performance.mark(`${markPrefix}-start`); return { end: function() { performance.mark(`${markPrefix}-end`); performance.measure(`uol-measure-${measureName}`, `${markPrefix}-start`, `${markPrefix}-end`); performance.clearMarks(`${markPrefix}-start`); performance.clearMarks(`${markPrefix}-end`); } } }; /** * Gerenciador de eventos */ window.gevent = { stack: [], RUN_ONCE: true, on: function(name, callback, once) { this.stack.push([name, callback, !!once]); }, emit: function(name, args) { for (var i = this.stack.length, item; i--;) { item = this.stack[i]; if (item[0] === name) { item[1](args); if (item[2]) { this.stack.splice(i, 1); } } } } }; var runningSearch = false; var hadAnEvent = true; var elementsToWatch = window.elementsToWatch = new Map(); var innerHeight = window.innerHeight; // timestamp da última rodada do requestAnimationFrame // É usado para limitar a procura por elementos visíveis. var lastAnimationTS = 0; // verifica se elemento está no viewport do usuário var isElementInViewport = function(el) { var rect = el.getBoundingClientRect(); var clientHeight = window.innerHeight || document.documentElement.clientHeight; // renderizando antes, evitando troca de conteúdo visível no chartbeat-related-content if(el.className.includes('related-content-front')) return true; // garante que usa ao mínimo 280px de margem para fazer o lazyload var margin = clientHeight + Math.max(280, clientHeight * 0.2); // se a base do componente está acima da altura da tela do usuário, está oculto if(rect.bottom < 0 && rect.bottom > margin * -1) { return false; } // se o topo do elemento está abaixo da altura da tela do usuário, está oculto if(rect.top > margin) { return false; } // se a posição do topo é negativa, verifica se a altura dele ainda // compensa o que já foi scrollado if(rect.top < 0 && rect.height + rect.top < 0) { return false; } return true; }; var asynxNextFreeTime = () => { return new Promise((resolve) => { if(window.requestIdleCallback) { window.requestIdleCallback(resolve, { timeout: 5000, }); } else { window.requestAnimationFrame(resolve); } }); }; var asyncValidateIfElIsInViewPort = function(promise, el) { return promise.then(() => { if(el) { if(isElementInViewport(el) == true) { const cb = elementsToWatch.get(el); // remove da lista para não ser disparado novamente elementsToWatch.delete(el); cb(); } } }).then(asynxNextFreeTime); }; // inicia o fluxo de procura de elementos procurados var look = function() { if(window.requestIdleCallback) { window.requestIdleCallback(findByVisibleElements, { timeout: 5000, }); } else { window.requestAnimationFrame(findByVisibleElements); } }; var findByVisibleElements = function(ts) { var elapsedSinceLast = ts - lastAnimationTS; // se não teve nenhum evento que possa alterar a página if(hadAnEvent == false) { return look(); } if(elementsToWatch.size == 0) { return look(); } if(runningSearch == true) { return look(); } // procura por elementos visíveis apenas 5x/seg if(elapsedSinceLast < 1000/5) { return look(); } // atualiza o último ts lastAnimationTS = ts; // reseta status de scroll para não entrar novamente aqui hadAnEvent = false; // indica que está rodando a procura por elementos no viewport runningSearch = true; const done = Array.from(elementsToWatch.keys()).reduce(asyncValidateIfElIsInViewPort, Promise.resolve()); // obtém todos os elementos que podem ter view contabilizados //elementsToWatch.forEach(function(cb, el) { // if(isElementInViewport(el) == true) { // // remove da lista para não ser disparado novamente // elementsToWatch.delete(el); // cb(el); // } //}); done.then(function() { runningSearch = false; }); // reinicia o fluxo de procura look(); }; /** * Quando o elemento `el` entrar no viewport (-20%), cb será disparado. */ window.lazyload = function(el, cb) { if(el.nodeType != Node.ELEMENT_NODE) { throw new Error("element parameter should be a Element Node"); } if(typeof cb !== 'function') { throw new Error("callback parameter should be a Function"); } elementsToWatch.set(el, cb); } var setEvent = function() { hadAnEvent = true; }; window.addEventListener('scroll', setEvent, { capture: true, ive: true }); window.addEventListener('click', setEvent, { ive: true }); window.addEventListener('resize', setEvent, { ive: true }); window.addEventListener('load', setEvent, { once: true, ive: true }); window.addEventListener('DOMContentLoaded', setEvent, { once: true, ive: true }); window.gevent.on('allJSLoadedAndCreated', setEvent, window.gevent.RUN_ONCE); // inicia a validação look(); })();
  • AssineUOL
Topo

Supermodelo relembra parto humanizado de 16 horas no Brasil: 'Eu renasci'

A supermodelo sul-africana Candice Swanepoel escolheu ter um parto humanizado no Brasil, em 2016 - Reprodução/ Instagram @candiceswanepoel
A supermodelo sul-africana Candice Swanepoel escolheu ter um parto humanizado no Brasil, em 2016 Imagem: Reprodução/ Instagram @candiceswanepoel

Colaboração para Splash, em São Paulo

14/05/2023 19h44Atualizada em 14/05/2023 20h07

A supermodelo Candice Swanepoel, 34, relembrou neste Dia das Mães o parto humanizado de seu primeiro filho, Anacan, fruto do relacionamento que teve com o modelo brasileiro Hermann Nicoli, realizado em Vitória. Ela compartilhou um vídeo inédito mostrando trechos do dia do nascimento do primogênito.

Anacan nasceu em 5 de outubro de 2016 após 16 horas de trabalho de parto: "O dia em que me tornei mãe foi o dia mais transformador, eufórico e arrebatador da minha vida. Estive em trabalho de parto por 16 horas com minha parteira", contou a supermodelo.

Candice esteve sob cuidados de uma equipe médica para o parto natural e humanizado. Sua doula e fisioterapeuta de gestantes, Leticia Rios, do grupo Gesta Vida, esteve com ela todo momento pré, durante e pós-nascimento de Anacan.

Por mais da metade do tempo a modelo ficou em casa entrando e saindo de um banho quente: "[ei] as últimas seis horas em um hospital que tinha uma banheira onde meu primeiro filho nasceu. [Foi] Onde eu renasci".

1 - Reprodução/ Instagram @candiceswanepoel - Reprodução/ Instagram @candiceswanepoel
Candice segura corda enquanto estava sentada em uma bola de pilates e em trabalho de parto, em Vitória
Imagem: Reprodução/ Instagram @candiceswanepoel

Ela acrescenta que, apesar de ter sido um dos momentos mais assustadores da vida dela, naquele dia foi quando se sentiu mais forte.

Conexão com a natureza e sentimento de seu poder feminino divino. Essas foram duas das justificativas da supermodelo e ex-Angel da Victoria's Secret para a escolha do Brasil como local para o nascimento dos filhos — além de Anacan, ela tem Ariel, nascido em junho de 2018.

1 - Reprodução/ Instagram @candiceswanepoel - Reprodução/ Instagram @candiceswanepoel
Candice Swanepoel e os dois filhos, Ariel e Anacan, em foto publicada no Instagram em setembro de 2019
Imagem: Reprodução/ Instagram @candiceswanepoel

Ela fez o parto após uma pesquisa minuciosa sobre quem estaria com ela nesse momento crucial, que não utilizou drogas ou outras intervenções. "Muita gente achou que eu era louca de querer isso, inclusive minha família".

"Eu queria estar totalmente presente naquele momento, inclusive sentir cada dor e onda de contrações, e receber meu filho olhando em seus olhos deixando-o saber que eu estava ali. Com ele. Não apenas a mãe a por dificuldades até o parto, mas também o bebê, que vem de um espaço seguro para este grande mundo", complementou.