{"version":3,"file":"vendor.aurelia-history-browser.2421f8e2979c21e9.bundle.js","mappings":"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","sources":["webpack://client-app/./node_modules/aurelia-history-browser/dist/native-modules/aurelia-history-browser.js"],"sourcesContent":["import { History } from 'aurelia-history';\nimport { DOM, PLATFORM } from 'aurelia-pal';\n\n/*! *****************************************************************************\r\nCopyright (c) Microsoft Corporation. All rights reserved.\r\nLicensed under the Apache License, Version 2.0 (the \"License\"); you may not use\r\nthis file except in compliance with the License. You may obtain a copy of the\r\nLicense at http://www.apache.org/licenses/LICENSE-2.0\r\n\r\nTHIS CODE IS PROVIDED ON AN *AS IS* BASIS, WITHOUT WARRANTIES OR CONDITIONS OF ANY\r\nKIND, EITHER EXPRESS OR IMPLIED, INCLUDING WITHOUT LIMITATION ANY IMPLIED\r\nWARRANTIES OR CONDITIONS OF TITLE, FITNESS FOR A PARTICULAR PURPOSE,\r\nMERCHANTABLITY OR NON-INFRINGEMENT.\r\n\r\nSee the Apache Version 2.0 License for specific language governing permissions\r\nand limitations under the License.\r\n***************************************************************************** */\r\n/* global Reflect, Promise */\r\n\r\nvar extendStatics = function(d, b) {\r\n extendStatics = Object.setPrototypeOf ||\r\n ({ __proto__: [] } instanceof Array && function (d, b) { d.__proto__ = b; }) ||\r\n function (d, b) { for (var p in b) if (b.hasOwnProperty(p)) d[p] = b[p]; };\r\n return extendStatics(d, b);\r\n};\r\n\r\nfunction __extends(d, b) {\r\n extendStatics(d, b);\r\n function __() { this.constructor = d; }\r\n d.prototype = b === null ? Object.create(b) : (__.prototype = b.prototype, new __());\r\n}\n\nvar LinkHandler = (function () {\r\n function LinkHandler() {\r\n }\r\n LinkHandler.prototype.activate = function (history) { };\r\n LinkHandler.prototype.deactivate = function () { };\r\n return LinkHandler;\r\n}());\r\nvar DefaultLinkHandler = (function (_super) {\r\n __extends(DefaultLinkHandler, _super);\r\n function DefaultLinkHandler() {\r\n var _this = _super.call(this) || this;\r\n _this.handler = function (e) {\r\n var _a = DefaultLinkHandler.getEventInfo(e), shouldHandleEvent = _a.shouldHandleEvent, href = _a.href;\r\n if (shouldHandleEvent) {\r\n e.preventDefault();\r\n _this.history.navigate(href);\r\n }\r\n };\r\n return _this;\r\n }\r\n DefaultLinkHandler.prototype.activate = function (history) {\r\n if (history._hasPushState) {\r\n this.history = history;\r\n DOM.addEventListener('click', this.handler, true);\r\n }\r\n };\r\n DefaultLinkHandler.prototype.deactivate = function () {\r\n DOM.removeEventListener('click', this.handler, true);\r\n };\r\n DefaultLinkHandler.getEventInfo = function (event) {\r\n var $event = event;\r\n var info = {\r\n shouldHandleEvent: false,\r\n href: null,\r\n anchor: null\r\n };\r\n var target = DefaultLinkHandler.findClosestAnchor($event.target);\r\n if (!target || !DefaultLinkHandler.targetIsThisWindow(target)) {\r\n return info;\r\n }\r\n if (hasAttribute(target, 'download')\r\n || hasAttribute(target, 'router-ignore')\r\n || hasAttribute(target, 'data-router-ignore')) {\r\n return info;\r\n }\r\n if ($event.altKey || $event.ctrlKey || $event.metaKey || $event.shiftKey) {\r\n return info;\r\n }\r\n var href = target.getAttribute('href');\r\n info.anchor = target;\r\n info.href = href;\r\n var leftButtonClicked = $event.which === 1;\r\n var isRelative = href && !(href.charAt(0) === '#' || (/^[a-z]+:/i).test(href));\r\n info.shouldHandleEvent = leftButtonClicked && isRelative;\r\n return info;\r\n };\r\n DefaultLinkHandler.findClosestAnchor = function (el) {\r\n while (el) {\r\n if (el.tagName === 'A') {\r\n return el;\r\n }\r\n el = el.parentNode;\r\n }\r\n };\r\n DefaultLinkHandler.targetIsThisWindow = function (target) {\r\n var targetWindow = target.getAttribute('target');\r\n var win = PLATFORM.global;\r\n return !targetWindow ||\r\n targetWindow === win.name ||\r\n targetWindow === '_self';\r\n };\r\n return DefaultLinkHandler;\r\n}(LinkHandler));\r\nvar hasAttribute = function (el, attr) { return el.hasAttribute(attr); };\n\nvar BrowserHistory = (function (_super) {\r\n __extends(BrowserHistory, _super);\r\n function BrowserHistory(linkHandler) {\r\n var _this = _super.call(this) || this;\r\n _this._isActive = false;\r\n _this._checkUrlCallback = _this._checkUrl.bind(_this);\r\n _this.location = PLATFORM.location;\r\n _this.history = PLATFORM.history;\r\n _this.linkHandler = linkHandler;\r\n return _this;\r\n }\r\n BrowserHistory.prototype.activate = function (options) {\r\n if (this._isActive) {\r\n throw new Error('History has already been activated.');\r\n }\r\n var $history = this.history;\r\n var wantsPushState = !!options.pushState;\r\n this._isActive = true;\r\n var normalizedOptions = this.options = Object.assign({}, { root: '/' }, this.options, options);\r\n var rootUrl = this.root = ('/' + normalizedOptions.root + '/').replace(rootStripper, '/');\r\n var wantsHashChange = this._wantsHashChange = normalizedOptions.hashChange !== false;\r\n var hasPushState = this._hasPushState = !!(normalizedOptions.pushState && $history && $history.pushState);\r\n var eventName;\r\n if (hasPushState) {\r\n eventName = 'popstate';\r\n }\r\n else if (wantsHashChange) {\r\n eventName = 'hashchange';\r\n }\r\n PLATFORM.addEventListener(eventName, this._checkUrlCallback);\r\n if (wantsHashChange && wantsPushState) {\r\n var $location = this.location;\r\n var atRoot = $location.pathname.replace(/[^\\/]$/, '$&/') === rootUrl;\r\n if (!hasPushState && !atRoot) {\r\n var fragment = this.fragment = this._getFragment(null, true);\r\n $location.replace(rootUrl + $location.search + '#' + fragment);\r\n return true;\r\n }\r\n else if (hasPushState && atRoot && $location.hash) {\r\n var fragment = this.fragment = this._getHash().replace(routeStripper, '');\r\n $history.replaceState({}, DOM.title, rootUrl + fragment + $location.search);\r\n }\r\n }\r\n if (!this.fragment) {\r\n this.fragment = this._getFragment('');\r\n }\r\n this.linkHandler.activate(this);\r\n if (!normalizedOptions.silent) {\r\n return this._loadUrl('');\r\n }\r\n };\r\n BrowserHistory.prototype.deactivate = function () {\r\n var handler = this._checkUrlCallback;\r\n PLATFORM.removeEventListener('popstate', handler);\r\n PLATFORM.removeEventListener('hashchange', handler);\r\n this._isActive = false;\r\n this.linkHandler.deactivate();\r\n };\r\n BrowserHistory.prototype.getAbsoluteRoot = function () {\r\n var $location = this.location;\r\n var origin = createOrigin($location.protocol, $location.hostname, $location.port);\r\n return \"\" + origin + this.root;\r\n };\r\n BrowserHistory.prototype.navigate = function (fragment, _a) {\r\n var _b = _a === void 0 ? {} : _a, _c = _b.trigger, trigger = _c === void 0 ? true : _c, _d = _b.replace, replace = _d === void 0 ? false : _d;\r\n var location = this.location;\r\n if (fragment && absoluteUrl.test(fragment)) {\r\n location.href = fragment;\r\n return true;\r\n }\r\n if (!this._isActive) {\r\n return false;\r\n }\r\n fragment = this._getFragment(fragment || '');\r\n if (this.fragment === fragment && !replace) {\r\n return false;\r\n }\r\n this.fragment = fragment;\r\n var url = this.root + fragment;\r\n if (fragment === '' && url !== '/') {\r\n url = url.slice(0, -1);\r\n }\r\n if (this._hasPushState) {\r\n url = url.replace('//', '/');\r\n this.history[replace ? 'replaceState' : 'pushState']({}, DOM.title, url);\r\n }\r\n else if (this._wantsHashChange) {\r\n updateHash(location, fragment, replace);\r\n }\r\n else {\r\n location.assign(url);\r\n }\r\n if (trigger) {\r\n return this._loadUrl(fragment);\r\n }\r\n return true;\r\n };\r\n BrowserHistory.prototype.navigateBack = function () {\r\n this.history.back();\r\n };\r\n BrowserHistory.prototype.setTitle = function (title) {\r\n DOM.title = title;\r\n };\r\n BrowserHistory.prototype.setState = function (key, value) {\r\n var $history = this.history;\r\n var state = Object.assign({}, $history.state);\r\n var _a = this.location, pathname = _a.pathname, search = _a.search, hash = _a.hash;\r\n state[key] = value;\r\n $history.replaceState(state, null, \"\" + pathname + search + hash);\r\n };\r\n BrowserHistory.prototype.getState = function (key) {\r\n var state = Object.assign({}, this.history.state);\r\n return state[key];\r\n };\r\n BrowserHistory.prototype.getHistoryIndex = function () {\r\n var historyIndex = this.getState('HistoryIndex');\r\n if (historyIndex === undefined) {\r\n historyIndex = this.history.length - 1;\r\n this.setState('HistoryIndex', historyIndex);\r\n }\r\n return historyIndex;\r\n };\r\n BrowserHistory.prototype.go = function (movement) {\r\n this.history.go(movement);\r\n };\r\n BrowserHistory.prototype._getHash = function () {\r\n return this.location.hash.substr(1);\r\n };\r\n BrowserHistory.prototype._getFragment = function (fragment, forcePushState) {\r\n var rootUrl;\r\n if (!fragment) {\r\n if (this._hasPushState || !this._wantsHashChange || forcePushState) {\r\n var location_1 = this.location;\r\n fragment = location_1.pathname + location_1.search;\r\n rootUrl = this.root.replace(trailingSlash, '');\r\n if (!fragment.indexOf(rootUrl)) {\r\n fragment = fragment.substr(rootUrl.length);\r\n }\r\n }\r\n else {\r\n fragment = this._getHash();\r\n }\r\n }\r\n return '/' + fragment.replace(routeStripper, '');\r\n };\r\n BrowserHistory.prototype._checkUrl = function () {\r\n var current = this._getFragment('');\r\n if (current !== this.fragment) {\r\n this._loadUrl('');\r\n }\r\n };\r\n BrowserHistory.prototype._loadUrl = function (fragmentOverride) {\r\n var fragment = this.fragment = this._getFragment(fragmentOverride);\r\n return this.options.routeHandler ?\r\n this.options.routeHandler(fragment) :\r\n false;\r\n };\r\n BrowserHistory.inject = [LinkHandler];\r\n return BrowserHistory;\r\n}(History));\r\nvar routeStripper = /^#?\\/*|\\s+$/g;\r\nvar rootStripper = /^\\/+|\\/+$/g;\r\nvar trailingSlash = /\\/$/;\r\nvar absoluteUrl = /^([a-z][a-z0-9+\\-.]*:)?\\/\\//i;\r\nfunction updateHash($location, fragment, replace) {\r\n if (replace) {\r\n var href = $location.href.replace(/(javascript:|#).*$/, '');\r\n $location.replace(href + '#' + fragment);\r\n }\r\n else {\r\n $location.hash = '#' + fragment;\r\n }\r\n}\r\nfunction createOrigin(protocol, hostname, port) {\r\n return protocol + \"//\" + hostname + (port ? ':' + port : '');\r\n}\n\nfunction configure(config) {\r\n var $config = config;\r\n $config.singleton(History, BrowserHistory);\r\n $config.transient(LinkHandler, DefaultLinkHandler);\r\n}\n\nexport { BrowserHistory, DefaultLinkHandler, LinkHandler, configure };\n//# sourceMappingURL=aurelia-history-browser.js.map\n"],"names":["extendStatics","d","b","Object","setPrototypeOf","__proto__","Array","p","hasOwnProperty","__extends","__","this","constructor","prototype","create","LinkHandler","activate","history","deactivate","DefaultLinkHandler","_super","_this","call","handler","e","_a","getEventInfo","shouldHandleEvent","href","preventDefault","navigate","_hasPushState","event","$event","info","anchor","target","findClosestAnchor","targetIsThisWindow","hasAttribute","altKey","ctrlKey","metaKey","shiftKey","getAttribute","leftButtonClicked","which","isRelative","charAt","test","el","tagName","parentNode","targetWindow","win","name","attr","BrowserHistory","linkHandler","_isActive","_checkUrlCallback","_checkUrl","bind","location","options","Error","$history","wantsPushState","pushState","eventName","normalizedOptions","assign","root","rootUrl","replace","rootStripper","wantsHashChange","_wantsHashChange","hashChange","hasPushState","$location","atRoot","pathname","fragment","_getFragment","search","hash","_getHash","routeStripper","replaceState","silent","_loadUrl","getAbsoluteRoot","port","protocol","hostname","_b","_c","trigger","_d","absoluteUrl","url","slice","updateHash","navigateBack","back","setTitle","title","setState","key","value","state","getState","getHistoryIndex","historyIndex","undefined","length","go","movement","substr","forcePushState","location_1","trailingSlash","indexOf","fragmentOverride","routeHandler","inject","configure","config","$config","singleton","transient"],"sourceRoot":""}