core-ds/core-components

Добавить возможность переопределять функцию getPortalContainer через контекст

Closed this issue · 0 comments

Описание

На данный момент нет способа из одного места поменять то, куда нужно рендрится всем компонентам, работающим через порталы. Все больше и больше направлений начинают активно добавлять микрофронты, и для них иногда становится критичным переопределять то, куда именно порталы будут добавляться. Сейчас используются какие то хаки, типа переопределения дефолта в самом компоненте портала.

Поведение

Если выше по дереву определен контекст типа <PortalContainerProvider value={() => document.getElementById('..') }> - портал должен брать дефолтное значение для getPortalContainer из него. В самом контексте дефолтом должна стать текущая функция getDefaultPortalContainer.
Таким образом для текущих пользователей не поменяется ничего, просто добавится новая функциональность.