UNPKG

@stencil/router

Version:
60 lines (55 loc) 1.43 kB
'use strict'; Object.defineProperty(exports, '__esModule', { value: true }); const __chunk_1 = require('./stencilrouter-a3d77a87.js'); const __chunk_2 = require('./chunk-94c92d88.js'); class StencilRouterPrompt { constructor(hostRef) { __chunk_1.registerInstance(this, hostRef); this.when = true; this.message = ''; } enable(message) { if (this.unblock) { this.unblock(); } if (this.history) { this.unblock = this.history.block(message); } } disable() { if (this.unblock) { this.unblock(); this.unblock = undefined; } } componentWillLoad() { if (this.when) { this.enable(this.message); } } updateMessage(newMessage, prevMessage) { if (this.when) { if (!this.when || prevMessage !== newMessage) { this.enable(this.message); } } else { this.disable(); } } componentDidUnload() { this.disable(); } render() { return null; } get el() { return __chunk_1.getElement(this); } static get watchers() { return { "message": ["updateMessage"], "when": ["updateMessage"] }; } } __chunk_2.ActiveRouter.injectProps(StencilRouterPrompt, [ 'history', ]); exports.stencil_router_prompt = StencilRouterPrompt;