Column.Renderer https://www.bryntum.com/docs/scheduler/ ... g-renderer
EventRenderer https://www.bryntum.com/docs/scheduler/ ... ntRenderer
example code:
if (event.type === 'eventpaint' || event.type === 'eventrepaint') {
// event paint must be before final rendering of event, settimeout so that it runs after
setTimeout(() => {
if (event.element) {
const container = document.createElement('app-event');
const factory = this.cfr.resolveComponentFactory(EventComponent);
// use viewcontainerRef so that components are destroyed when this component is destroyed
const componentRef = this.viewContainerRef.createComponent(factory);
(<EventComponent>componentRef.instance).event = event.eventRecord;
componentRef.changeDetectorRef.detectChanges();
event.element.innerHTML = '';
event.element.appendChild(container);
this.renderer.appendChild(container, componentRef.location.nativeElement);
const destroyObserver = new MutationObserver(function(e) {
if (e[0].removedNodes) {
console.log('removed', e, e[0].removedNodes);
componentRef.destroy();
pull(this.observers, (event.element as any)._destroyObserver);
destroyObserver.disconnect();
}
});
this.observers.push(destroyObserver);
destroyObserver.observe(event.element, {
childList: true
});
}
});