Skip to content

createShadowModule() function

Home > @rimitive/view > createShadowModule

Create a Shadow module for a given adapter.

Signature:

createShadowModule: <TConfig extends TreeConfig>(adapter: Adapter<TConfig>) => Module<"shadow", ShadowService<NodeOf<TConfig>>, {
scopes: CreateScopes;
}>

Parameter

Type

Description

adapter

Adapter<TConfig>

Returns:

Module<“shadow”, ShadowService<NodeOf<TConfig>>, { scopes: CreateScopes; }>

import { compose } from '@rimitive/core';
import { createShadowModule } from '@rimitive/view/shadow';
import { createDOMAdapter } from '@rimitive/view/adapters/dom';
const adapter = createDOMAdapter();
const ShadowModule = createShadowModule(adapter);
const { shadow, el } = compose(ElModule, ShadowModule);
el('div')(
shadow({ mode: 'open', styles: css })(
el('p')('Isolated content')
)
)