fepper-ui
Version:
The client-side package that powers the Fepper UI
27 lines (23 loc) • 761 B
JavaScript
export default class UrlHandler {
constructor(fepperUi) {
this.codeViewer = fepperUi.codeViewer;
this.$orgs = fepperUi.requerio.$orgs;
this.uiData = fepperUi.uiData;
this.uiFns = fepperUi.uiFns;
this.urlHandler = fepperUi.urlHandler;
}
listen() {
window.onpopstate = (e) => {
this.urlHandler.skipBack = true;
this.urlHandler.popPattern(e);
};
this.$orgs['#sg-viewport'].on('load', () => {
const patternPartial =
this.uiFns.getPatternPartialFromUrl(this.$orgs['#sg-viewport'][0].contentWindow.location.href);
if (patternPartial) {
this.codeViewer.setPanelContent('feplet', patternPartial);
this.codeViewer.setPanelContent('markdown', patternPartial);
}
});
}
}