scrivito
Version:
Scrivito is a professional, yet easy to use SaaS Enterprise Content Management Service, built for digital agencies and medium to large businesses. It is completely maintenance-free, cost-effective, and has unprecedented performance and security.
26 lines (19 loc) • 574 B
text/typescript
import { createStateContainer } from 'scrivito_sdk/state';
const state = createStateContainer<string>();
export function observeDocumentTitle(): () => void {
const observer = new MutationObserver(documentTitleChanged);
observer.observe(document.head, {
attributes: true,
attributeFilter: ['title'],
characterData: true,
childList: true,
subtree: true,
});
return () => observer.disconnect();
}
export function getDocumentTitle(): string {
return state.get() || '';
}
function documentTitleChanged(): void {
state.set(document.title);
}