Julie Ferne's final sacrifice was to protect her 4-day-old grandson, her family have told mourners at a service for a woman they described as loving, resilient, generous and kind.
More than 200 people crowded North Harbour Chapel in Albany to farewell Ms Ferne, 68, who died when she fell three storeys from a stairwell at her son's Vietnam home with her grandson in her arms.
Shielding baby Carter in the fall was her final sacrifice, said her son Phil Preston, who is Carter's father.
"It is entrenched in our minds forever,'' he said.
Mr Preston flew back to New Zealand for his mother's funeral, leaving his partner Chau at their son's bedside in Ho Chi Minh Children's Hospital.
Three weeks on from the terrible accident on August 24, Cater continued to make a "miraculous recovery'', Mr Preston said.
Ms Ferne's three sons spoke of the grief of losing their mother and their sadness at not being able to share more memories together.
But they wanted the service was a celebration of her life.
They spoke about treasured memories of growing up with their mother, including 'upside-down nights' where they did things the wrong way around, eating cheese scones on the lawn, and the "adventure'' of a rain-soaked holiday in the Bay of Islands.
"The most important gift that mum gave us was her absolute love for us and the belief in us that we could do anything we wanted to,'' said son Sean Preston.
"Mum, thank you for giving us love, creativity, humour, craziness, generosity and passion for everything that we do.''
Ms Ferne's funeral reflected her talent for art and love of gardening, music, books, poetry and, particularly, her family.
The casket was painted by artist friends and all her grandchildren and was inscribed with the words of poet John Keats.
A trust fund set up in Ms Ferne's name to buy hospital equipment in Vietnam has so far raised about $50,000.
Sean Preston said the family was deeply touched by the donations that had come from around the world and they would be used to help those in need.
People wishing to donate to the Julie Ferne Memorial Trust can deposit funds in ASB account 12-3198-0065427-00.