Skip to content

pantoken / renderers/web-components/src / buildRegisterContext

Функція: buildRegisterContext()

buildRegisterContext(options, target, resolveIconSvg): RegisterContext

Альфа

Побудуйте спільний RegisterContext як register()-подібний виклик, що проходить через define кожного елемента. Резолвер іконок інжектується: register() завжди передає реальний, @pantoken/icons-підтримуваний iconSvg (невтручана поведінка за замовчуванням для всіх існуючих викликів), тоді як CDN-збірка для окремого елемента передає noopIconSvg для елементів, які ніколи його не викликають — @pantoken/icons/@pantoken/tokens є залежністю розміром у кілька мегабайт, і оскільки Rollup не може код-сплітити iife/umd вивід, усе, що статично досяжне з entry бандлу, потрапляє в увесь бандл, незалежно від того, чи викликає його конкретний шлях виконання. З цієї причини модуль не має побічних ефектів на верхньому рівні — імпортуючи його (на відміну від імпорту ../index.ts, який автоматично реєструє все при імпорті) iconSvg не буде досягнуто, якщо лише викликач не передасть його.

Параметри

options

RegisterContextOptions

Та сама структура, що й опції register(), за винятком only.

target

ElementRegistry

Реєстр, у який слід визначити.

resolveIconSvg

(name) => string

Резолвер, підключений до ctx.iconSvg — передавайте iconSvg для реальних іконок або noopIconSvg, коли набір елементів викликача гарантовано ніколи не рендерить іконку (див. ICON_ELEMENTS у ./elements-meta.ts).

Повертає

RegisterContext