{"version":3,"sources":["node_modules/tslib/tslib.es6.js","foundation.ts","component.ts","events.ts","ponyfill.ts","constants.ts","util.ts","rtl-scroller.ts","rtl-default-scroller.ts","rtl-negative-scroller.ts","rtl-reverse-scroller.ts","fading-foundation.ts","sliding-foundation.ts"],"names":["extendStatics","d","b","Object","setPrototypeOf","__proto__","Array","p","hasOwnProperty","__extends","__","this","constructor","prototype","create","__assign","assign","t","s","i","n","arguments","length","call","apply","__read","o","m","Symbol","iterator","r","e","ar","next","done","push","value","error","__spread","concat","MDCTabScrollerRTLDefault","incrementScrollRTL","finalScrollPosition","scrollDelta","MDCTabScrollerRTLNegative","MDCTabScrollerRTLReverse","ACCEPTABLE_KEYS","add","KEYCODE_MAP","set","defineProperty","MDCTabBarFoundation","index"],"mappings":"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","file":"hashed/31.53897eac.chunk.js","sourcesContent":["/*! *****************************************************************************\r\nCopyright (c) Microsoft Corporation.\r\n\r\nPermission to use, copy, modify, and/or distribute this software for any\r\npurpose with or without fee is hereby granted.\r\n\r\nTHE SOFTWARE IS PROVIDED \"AS IS\" AND THE AUTHOR DISCLAIMS ALL WARRANTIES WITH\r\nREGARD TO THIS SOFTWARE INCLUDING ALL IMPLIED WARRANTIES OF MERCHANTABILITY\r\nAND FITNESS. IN NO EVENT SHALL THE AUTHOR BE LIABLE FOR ANY SPECIAL, DIRECT,\r\nINDIRECT, OR CONSEQUENTIAL DAMAGES OR ANY DAMAGES WHATSOEVER RESULTING FROM\r\nLOSS OF USE, DATA OR PROFITS, WHETHER IN AN ACTION OF CONTRACT, NEGLIGENCE OR\r\nOTHER TORTIOUS ACTION, ARISING OUT OF OR IN CONNECTION WITH THE USE OR\r\nPERFORMANCE OF THIS SOFTWARE.\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\nexport function __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}\r\n\r\nexport var __assign = function() {\r\n __assign = Object.assign || function __assign(t) {\r\n for (var s, i = 1, n = arguments.length; i < n; i++) {\r\n s = arguments[i];\r\n for (var p in s) if (Object.prototype.hasOwnProperty.call(s, p)) t[p] = s[p];\r\n }\r\n return t;\r\n }\r\n return __assign.apply(this, arguments);\r\n}\r\n\r\nexport function __rest(s, e) {\r\n var t = {};\r\n for (var p in s) if (Object.prototype.hasOwnProperty.call(s, p) && e.indexOf(p) < 0)\r\n t[p] = s[p];\r\n if (s != null && typeof Object.getOwnPropertySymbols === \"function\")\r\n for (var i = 0, p = Object.getOwnPropertySymbols(s); i < p.length; i++) {\r\n if (e.indexOf(p[i]) < 0 && Object.prototype.propertyIsEnumerable.call(s, p[i]))\r\n t[p[i]] = s[p[i]];\r\n }\r\n return t;\r\n}\r\n\r\nexport function __decorate(decorators, target, key, desc) {\r\n var c = arguments.length, r = c < 3 ? target : desc === null ? desc = Object.getOwnPropertyDescriptor(target, key) : desc, d;\r\n if (typeof Reflect === \"object\" && typeof Reflect.decorate === \"function\") r = Reflect.decorate(decorators, target, key, desc);\r\n else for (var i = decorators.length - 1; i >= 0; i--) if (d = decorators[i]) r = (c < 3 ? d(r) : c > 3 ? d(target, key, r) : d(target, key)) || r;\r\n return c > 3 && r && Object.defineProperty(target, key, r), r;\r\n}\r\n\r\nexport function __param(paramIndex, decorator) {\r\n return function (target, key) { decorator(target, key, paramIndex); }\r\n}\r\n\r\nexport function __metadata(metadataKey, metadataValue) {\r\n if (typeof Reflect === \"object\" && typeof Reflect.metadata === \"function\") return Reflect.metadata(metadataKey, metadataValue);\r\n}\r\n\r\nexport function __awaiter(thisArg, _arguments, P, generator) {\r\n function adopt(value) { return value instanceof P ? value : new P(function (resolve) { resolve(value); }); }\r\n return new (P || (P = Promise))(function (resolve, reject) {\r\n function fulfilled(value) { try { step(generator.next(value)); } catch (e) { reject(e); } }\r\n function rejected(value) { try { step(generator[\"throw\"](value)); } catch (e) { reject(e); } }\r\n function step(result) { result.done ? resolve(result.value) : adopt(result.value).then(fulfilled, rejected); }\r\n step((generator = generator.apply(thisArg, _arguments || [])).next());\r\n });\r\n}\r\n\r\nexport function __generator(thisArg, body) {\r\n var _ = { label: 0, sent: function() { if (t[0] & 1) throw t[1]; return t[1]; }, trys: [], ops: [] }, f, y, t, g;\r\n return g = { next: verb(0), \"throw\": verb(1), \"return\": verb(2) }, typeof Symbol === \"function\" && (g[Symbol.iterator] = function() { return this; }), g;\r\n function verb(n) { return function (v) { return step([n, v]); }; }\r\n function step(op) {\r\n if (f) throw new TypeError(\"Generator is already executing.\");\r\n while (_) try {\r\n if (f = 1, y && (t = op[0] & 2 ? y[\"return\"] : op[0] ? y[\"throw\"] || ((t = y[\"return\"]) && t.call(y), 0) : y.next) && !(t = t.call(y, op[1])).done) return t;\r\n if (y = 0, t) op = [op[0] & 2, t.value];\r\n switch (op[0]) {\r\n case 0: case 1: t = op; break;\r\n case 4: _.label++; return { value: op[1], done: false };\r\n case 5: _.label++; y = op[1]; op = [0]; continue;\r\n case 7: op = _.ops.pop(); _.trys.pop(); continue;\r\n default:\r\n if (!(t = _.trys, t = t.length > 0 && t[t.length - 1]) && (op[0] === 6 || op[0] === 2)) { _ = 0; continue; }\r\n if (op[0] === 3 && (!t || (op[1] > t[0] && op[1] < t[3]))) { _.label = op[1]; break; }\r\n if (op[0] === 6 && _.label < t[1]) { _.label = t[1]; t = op; break; }\r\n if (t && _.label < t[2]) { _.label = t[2]; _.ops.push(op); break; }\r\n if (t[2]) _.ops.pop();\r\n _.trys.pop(); continue;\r\n }\r\n op = body.call(thisArg, _);\r\n } catch (e) { op = [6, e]; y = 0; } finally { f = t = 0; }\r\n if (op[0] & 5) throw op[1]; return { value: op[0] ? op[1] : void 0, done: true };\r\n }\r\n}\r\n\r\nexport function __createBinding(o, m, k, k2) {\r\n if (k2 === undefined) k2 = k;\r\n o[k2] = m[k];\r\n}\r\n\r\nexport function __exportStar(m, exports) {\r\n for (var p in m) if (p !== \"default\" && !exports.hasOwnProperty(p)) exports[p] = m[p];\r\n}\r\n\r\nexport function __values(o) {\r\n var s = typeof Symbol === \"function\" && Symbol.iterator, m = s && o[s], i = 0;\r\n if (m) return m.call(o);\r\n if (o && typeof o.length === \"number\") return {\r\n next: function () {\r\n if (o && i >= o.length) o = void 0;\r\n return { value: o && o[i++], done: !o };\r\n }\r\n };\r\n throw new TypeError(s ? \"Object is not iterable.\" : \"Symbol.iterator is not defined.\");\r\n}\r\n\r\nexport function __read(o, n) {\r\n var m = typeof Symbol === \"function\" && o[Symbol.iterator];\r\n if (!m) return o;\r\n var i = m.call(o), r, ar = [], e;\r\n try {\r\n while ((n === void 0 || n-- > 0) && !(r = i.next()).done) ar.push(r.value);\r\n }\r\n catch (error) { e = { error: error }; }\r\n finally {\r\n try {\r\n if (r && !r.done && (m = i[\"return\"])) m.call(i);\r\n }\r\n finally { if (e) throw e.error; }\r\n }\r\n return ar;\r\n}\r\n\r\nexport function __spread() {\r\n for (var ar = [], i = 0; i < arguments.length; i++)\r\n ar = ar.concat(__read(arguments[i]));\r\n return ar;\r\n}\r\n\r\nexport function __spreadArrays() {\r\n for (var s = 0, i = 0, il = arguments.length; i < il; i++) s += arguments[i].length;\r\n for (var r = Array(s), k = 0, i = 0; i < il; i++)\r\n for (var a = arguments[i], j = 0, jl = a.length; j < jl; j++, k++)\r\n r[k] = a[j];\r\n return r;\r\n};\r\n\r\nexport function __await(v) {\r\n return this instanceof __await ? (this.v = v, this) : new __await(v);\r\n}\r\n\r\nexport function __asyncGenerator(thisArg, _arguments, generator) {\r\n if (!Symbol.asyncIterator) throw new TypeError(\"Symbol.asyncIterator is not defined.\");\r\n var g = generator.apply(thisArg, _arguments || []), i, q = [];\r\n return i = {}, verb(\"next\"), verb(\"throw\"), verb(\"return\"), i[Symbol.asyncIterator] = function () { return this; }, i;\r\n function verb(n) { if (g[n]) i[n] = function (v) { return new Promise(function (a, b) { q.push([n, v, a, b]) > 1 || resume(n, v); }); }; }\r\n function resume(n, v) { try { step(g[n](v)); } catch (e) { settle(q[0][3], e); } }\r\n function step(r) { r.value instanceof __await ? Promise.resolve(r.value.v).then(fulfill, reject) : settle(q[0][2], r); }\r\n function fulfill(value) { resume(\"next\", value); }\r\n function reject(value) { resume(\"throw\", value); }\r\n function settle(f, v) { if (f(v), q.shift(), q.length) resume(q[0][0], q[0][1]); }\r\n}\r\n\r\nexport function __asyncDelegator(o) {\r\n var i, p;\r\n return i = {}, verb(\"next\"), verb(\"throw\", function (e) { throw e; }), verb(\"return\"), i[Symbol.iterator] = function () { return this; }, i;\r\n function verb(n, f) { i[n] = o[n] ? function (v) { return (p = !p) ? { value: __await(o[n](v)), done: n === \"return\" } : f ? f(v) : v; } : f; }\r\n}\r\n\r\nexport function __asyncValues(o) {\r\n if (!Symbol.asyncIterator) throw new TypeError(\"Symbol.asyncIterator is not defined.\");\r\n var m = o[Symbol.asyncIterator], i;\r\n return m ? m.call(o) : (o = typeof __values === \"function\" ? __values(o) : o[Symbol.iterator](), i = {}, verb(\"next\"), verb(\"throw\"), verb(\"return\"), i[Symbol.asyncIterator] = function () { return this; }, i);\r\n function verb(n) { i[n] = o[n] && function (v) { return new Promise(function (resolve, reject) { v = o[n](v), settle(resolve, reject, v.done, v.value); }); }; }\r\n function settle(resolve, reject, d, v) { Promise.resolve(v).then(function(v) { resolve({ value: v, done: d }); }, reject); }\r\n}\r\n\r\nexport function __makeTemplateObject(cooked, raw) {\r\n if (Object.defineProperty) { Object.defineProperty(cooked, \"raw\", { value: raw }); } else { cooked.raw = raw; }\r\n return cooked;\r\n};\r\n\r\nexport function __importStar(mod) {\r\n if (mod && mod.__esModule) return mod;\r\n var result = {};\r\n if (mod != null) for (var k in mod) if (Object.hasOwnProperty.call(mod, k)) result[k] = mod[k];\r\n result.default = mod;\r\n return result;\r\n}\r\n\r\nexport function __importDefault(mod) {\r\n return (mod && mod.__esModule) ? mod : { default: mod };\r\n}\r\n\r\nexport function __classPrivateFieldGet(receiver, privateMap) {\r\n if (!privateMap.has(receiver)) {\r\n throw new TypeError(\"attempted to get private field on non-instance\");\r\n }\r\n return privateMap.get(receiver);\r\n}\r\n\r\nexport function __classPrivateFieldSet(receiver, privateMap, value) {\r\n if (!privateMap.has(receiver)) {\r\n throw new TypeError(\"attempted to set private field on non-instance\");\r\n }\r\n privateMap.set(receiver, value);\r\n return value;\r\n}\r\n","/**\n * @license\n * Copyright 2018 Google Inc.\n *\n * Permission is hereby granted, free of charge, to any person obtaining a copy\n * of this software and associated documentation files (the \"Software\"), to deal\n * in the Software without restriction, including without limitation the rights\n * to use, copy, modify, merge, publish, distribute, sublicense, and/or sell\n * copies of the Software, and to permit persons to whom the Software is\n * furnished to do so, subject to the following conditions:\n *\n * The above copyright notice and this permission notice shall be included in\n * all copies or substantial portions of the Software.\n *\n * THE SOFTWARE IS PROVIDED \"AS IS\", WITHOUT WARRANTY OF ANY KIND, EXPRESS OR\n * IMPLIED, INCLUDING BUT NOT LIMITED TO THE WARRANTIES OF MERCHANTABILITY,\n * FITNESS FOR A PARTICULAR PURPOSE AND NONINFRINGEMENT. IN NO EVENT SHALL THE\n * AUTHORS OR COPYRIGHT HOLDERS BE LIABLE FOR ANY CLAIM, DAMAGES OR OTHER\n * LIABILITY, WHETHER IN AN ACTION OF CONTRACT, TORT OR OTHERWISE, ARISING FROM,\n * OUT OF OR IN CONNECTION WITH THE SOFTWARE OR THE USE OR OTHER DEALINGS IN\n * THE SOFTWARE.\n */\nimport * as tslib_1 from \"tslib\";\nimport { MDCFoundation } from '@material/base/foundation';\nimport { numbers, strings } from './constants';\nvar ACCEPTABLE_KEYS = new Set();\n// IE11 has no support for new Set with iterable so we need to initialize this by hand\nACCEPTABLE_KEYS.add(strings.ARROW_LEFT_KEY);\nACCEPTABLE_KEYS.add(strings.ARROW_RIGHT_KEY);\nACCEPTABLE_KEYS.add(strings.END_KEY);\nACCEPTABLE_KEYS.add(strings.HOME_KEY);\nACCEPTABLE_KEYS.add(strings.ENTER_KEY);\nACCEPTABLE_KEYS.add(strings.SPACE_KEY);\nvar KEYCODE_MAP = new Map();\n// IE11 has no support for new Map with iterable so we need to initialize this by hand\nKEYCODE_MAP.set(numbers.ARROW_LEFT_KEYCODE, strings.ARROW_LEFT_KEY);\nKEYCODE_MAP.set(numbers.ARROW_RIGHT_KEYCODE, strings.ARROW_RIGHT_KEY);\nKEYCODE_MAP.set(numbers.END_KEYCODE, strings.END_KEY);\nKEYCODE_MAP.set(numbers.HOME_KEYCODE, strings.HOME_KEY);\nKEYCODE_MAP.set(numbers.ENTER_KEYCODE, strings.ENTER_KEY);\nKEYCODE_MAP.set(numbers.SPACE_KEYCODE, strings.SPACE_KEY);\nvar MDCTabBarFoundation = /** @class */ (function (_super) {\n tslib_1.__extends(MDCTabBarFoundation, _super);\n function MDCTabBarFoundation(adapter) {\n var _this = _super.call(this, tslib_1.__assign({}, MDCTabBarFoundation.defaultAdapter, adapter)) || this;\n _this.useAutomaticActivation_ = false;\n return _this;\n }\n Object.defineProperty(MDCTabBarFoundation, \"strings\", {\n get: function () {\n return strings;\n },\n enumerable: true,\n configurable: true\n });\n Object.defineProperty(MDCTabBarFoundation, \"numbers\", {\n get: function () {\n return numbers;\n },\n enumerable: true,\n configurable: true\n });\n Object.defineProperty(MDCTabBarFoundation, \"defaultAdapter\", {\n get: function () {\n // tslint:disable:object-literal-sort-keys Methods should be in the same order as the adapter interface.\n return {\n scrollTo: function () { return undefined; },\n incrementScroll: function () { return undefined; },\n getScrollPosition: function () { return 0; },\n getScrollContentWidth: function () { return 0; },\n getOffsetWidth: function () { return 0; },\n isRTL: function () { return false; },\n setActiveTab: function () { return undefined; },\n activateTabAtIndex: function () { return undefined; },\n deactivateTabAtIndex: function () { return undefined; },\n focusTabAtIndex: function () { return undefined; },\n getTabIndicatorClientRectAtIndex: function () { return ({ top: 0, right: 0, bottom: 0, left: 0, width: 0, height: 0 }); },\n getTabDimensionsAtIndex: function () { return ({ rootLeft: 0, rootRight: 0, contentLeft: 0, contentRight: 0 }); },\n getPreviousActiveTabIndex: function () { return -1; },\n getFocusedTabIndex: function () { return -1; },\n getIndexOfTabById: function () { return -1; },\n getTabListLength: function () { return 0; },\n notifyTabActivated: function () { return undefined; },\n };\n // tslint:enable:object-literal-sort-keys\n },\n enumerable: true,\n configurable: true\n });\n /**\n * Switches between automatic and manual activation modes.\n * See https://www.w3.org/TR/wai-aria-practices/#tabpanel for examples.\n */\n MDCTabBarFoundation.prototype.setUseAutomaticActivation = function (useAutomaticActivation) {\n this.useAutomaticActivation_ = useAutomaticActivation;\n };\n MDCTabBarFoundation.prototype.activateTab = function (index) {\n var previousActiveIndex = this.adapter_.getPreviousActiveTabIndex();\n if (!this.indexIsInRange_(index) || index === previousActiveIndex) {\n return;\n }\n var previousClientRect;\n if (previousActiveIndex !== -1) {\n this.adapter_.deactivateTabAtIndex(previousActiveIndex);\n previousClientRect = this.adapter_.getTabIndicatorClientRectAtIndex(previousActiveIndex);\n }\n this.adapter_.activateTabAtIndex(index, previousClientRect);\n this.scrollIntoView(index);\n this.adapter_.notifyTabActivated(index);\n };\n MDCTabBarFoundation.prototype.handleKeyDown = function (evt) {\n // Get the key from the event\n var key = this.getKeyFromEvent_(evt);\n // Early exit if the event key isn't one of the keyboard navigation keys\n if (key === undefined) {\n return;\n }\n // Prevent default behavior for movement keys, but not for activation keys, since :active is used to apply ripple\n if (!this.isActivationKey_(key)) {\n evt.preventDefault();\n }\n if (this.useAutomaticActivation_) {\n if (this.isActivationKey_(key)) {\n return;\n }\n var index = this.determineTargetFromKey_(this.adapter_.getPreviousActiveTabIndex(), key);\n this.adapter_.setActiveTab(index);\n this.scrollIntoView(index);\n }\n else {\n var focusedTabIndex = this.adapter_.getFocusedTabIndex();\n if (this.isActivationKey_(key)) {\n this.adapter_.setActiveTab(focusedTabIndex);\n }\n else {\n var index = this.determineTargetFromKey_(focusedTabIndex, key);\n this.adapter_.focusTabAtIndex(index);\n this.scrollIntoView(index);\n }\n }\n };\n /**\n * Handles the MDCTab:interacted event\n */\n MDCTabBarFoundation.prototype.handleTabInteraction = function (evt) {\n this.adapter_.setActiveTab(this.adapter_.getIndexOfTabById(evt.detail.tabId));\n };\n /**\n * Scrolls the tab at the given index into view\n * @param index The tab index to make visible\n */\n MDCTabBarFoundation.prototype.scrollIntoView = function (index) {\n // Early exit if the index is out of range\n if (!this.indexIsInRange_(index)) {\n return;\n }\n // Always scroll to 0 if scrolling to the 0th index\n if (index === 0) {\n return this.adapter_.scrollTo(0);\n }\n // Always scroll to the max value if scrolling to the Nth index\n // MDCTabScroller.scrollTo() will never scroll past the max possible value\n if (index === this.adapter_.getTabListLength() - 1) {\n return this.adapter_.scrollTo(this.adapter_.getScrollContentWidth());\n }\n if (this.isRTL_()) {\n return this.scrollIntoViewRTL_(index);\n }\n this.scrollIntoView_(index);\n };\n /**\n * Private method for determining the index of the destination tab based on what key was pressed\n * @param origin The original index from which to determine the destination\n * @param key The name of the key\n */\n MDCTabBarFoundation.prototype.determineTargetFromKey_ = function (origin, key) {\n var isRTL = this.isRTL_();\n var maxIndex = this.adapter_.getTabListLength() - 1;\n var shouldGoToEnd = key === strings.END_KEY;\n var shouldDecrement = key === strings.ARROW_LEFT_KEY && !isRTL || key === strings.ARROW_RIGHT_KEY && isRTL;\n var shouldIncrement = key === strings.ARROW_RIGHT_KEY && !isRTL || key === strings.ARROW_LEFT_KEY && isRTL;\n var index = origin;\n if (shouldGoToEnd) {\n index = maxIndex;\n }\n else if (shouldDecrement) {\n index -= 1;\n }\n else if (shouldIncrement) {\n index += 1;\n }\n else {\n index = 0;\n }\n if (index < 0) {\n index = maxIndex;\n }\n else if (index > maxIndex) {\n index = 0;\n }\n return index;\n };\n /**\n * Calculates the scroll increment that will make the tab at the given index visible\n * @param index The index of the tab\n * @param nextIndex The index of the next tab\n * @param scrollPosition The current scroll position\n * @param barWidth The width of the Tab Bar\n */\n MDCTabBarFoundation.prototype.calculateScrollIncrement_ = function (index, nextIndex, scrollPosition, barWidth) {\n var nextTabDimensions = this.adapter_.getTabDimensionsAtIndex(nextIndex);\n var relativeContentLeft = nextTabDimensions.contentLeft - scrollPosition - barWidth;\n var relativeContentRight = nextTabDimensions.contentRight - scrollPosition;\n var leftIncrement = relativeContentRight - numbers.EXTRA_SCROLL_AMOUNT;\n var rightIncrement = relativeContentLeft + numbers.EXTRA_SCROLL_AMOUNT;\n if (nextIndex < index) {\n return Math.min(leftIncrement, 0);\n }\n return Math.max(rightIncrement, 0);\n };\n /**\n * Calculates the scroll increment that will make the tab at the given index visible in RTL\n * @param index The index of the tab\n * @param nextIndex The index of the next tab\n * @param scrollPosition The current scroll position\n * @param barWidth The width of the Tab Bar\n * @param scrollContentWidth The width of the scroll content\n */\n MDCTabBarFoundation.prototype.calculateScrollIncrementRTL_ = function (index, nextIndex, scrollPosition, barWidth, scrollContentWidth) {\n var nextTabDimensions = this.adapter_.getTabDimensionsAtIndex(nextIndex);\n var relativeContentLeft = scrollContentWidth - nextTabDimensions.contentLeft - scrollPosition;\n var relativeContentRight = scrollContentWidth - nextTabDimensions.contentRight - scrollPosition - barWidth;\n var leftIncrement = relativeContentRight + numbers.EXTRA_SCROLL_AMOUNT;\n var rightIncrement = relativeContentLeft - numbers.EXTRA_SCROLL_AMOUNT;\n if (nextIndex > index) {\n return Math.max(leftIncrement, 0);\n }\n return Math.min(rightIncrement, 0);\n };\n /**\n * Determines the index of the adjacent tab closest to either edge of the Tab Bar\n * @param index The index of the tab\n * @param tabDimensions The dimensions of the tab\n * @param scrollPosition The current scroll position\n * @param barWidth The width of the tab bar\n */\n MDCTabBarFoundation.prototype.findAdjacentTabIndexClosestToEdge_ = function (index, tabDimensions, scrollPosition, barWidth) {\n /**\n * Tabs are laid out in the Tab Scroller like this:\n *\n * Scroll Position\n * +---+\n * | | Bar Width\n * | +-----------------------------------+\n * | | |\n * | V V\n * | +-----------------------------------+\n * V | Tab Scroller |\n * +------------+--------------+-------------------+\n * | Tab | Tab | Tab |\n * +------------+--------------+-------------------+\n * | |\n * +-----------------------------------+\n *\n * To determine the next adjacent index, we look at the Tab root left and\n * Tab root right, both relative to the scroll position. If the Tab root\n * left is less than 0, then we know it's out of view to the left. If the\n * Tab root right minus the bar width is greater than 0, we know the Tab is\n * out of view to the right. From there, we either increment or decrement\n * the index.\n */\n var relativeRootLeft = tabDimensions.rootLeft - scrollPosition;\n var relativeRootRight = tabDimensions.rootRight - scrollPosition - barWidth;\n var relativeRootDelta = relativeRootLeft + relativeRootRight;\n var leftEdgeIsCloser = relativeRootLeft < 0 || relativeRootDelta < 0;\n var rightEdgeIsCloser = relativeRootRight > 0 || relativeRootDelta > 0;\n if (leftEdgeIsCloser) {\n return index - 1;\n }\n if (rightEdgeIsCloser) {\n return index + 1;\n }\n return -1;\n };\n /**\n * Determines the index of the adjacent tab closest to either edge of the Tab Bar in RTL\n * @param index The index of the tab\n * @param tabDimensions The dimensions of the tab\n * @param scrollPosition The current scroll position\n * @param barWidth The width of the tab bar\n * @param scrollContentWidth The width of the scroller content\n */\n MDCTabBarFoundation.prototype.findAdjacentTabIndexClosestToEdgeRTL_ = function (index, tabDimensions, scrollPosition, barWidth, scrollContentWidth) {\n var rootLeft = scrollContentWidth - tabDimensions.rootLeft - barWidth - scrollPosition;\n var rootRight = scrollContentWidth - tabDimensions.rootRight - scrollPosition;\n var rootDelta = rootLeft + rootRight;\n var leftEdgeIsCloser = rootLeft > 0 || rootDelta > 0;\n var rightEdgeIsCloser = rootRight < 0 || rootDelta < 0;\n if (leftEdgeIsCloser) {\n return index + 1;\n }\n if (rightEdgeIsCloser) {\n return index - 1;\n }\n return -1;\n };\n /**\n * Returns the key associated with a keydown event\n * @param evt The keydown event\n */\n MDCTabBarFoundation.prototype.getKeyFromEvent_ = function (evt) {\n if (ACCEPTABLE_KEYS.has(evt.key)) {\n return evt.key;\n }\n return KEYCODE_MAP.get(evt.keyCode);\n };\n MDCTabBarFoundation.prototype.isActivationKey_ = function (key) {\n return key === strings.SPACE_KEY || key === strings.ENTER_KEY;\n };\n /**\n * Returns whether a given index is inclusively between the ends\n * @param index The index to test\n */\n MDCTabBarFoundation.prototype.indexIsInRange_ = function (index) {\n return index >= 0 && index < this.adapter_.getTabListLength();\n };\n /**\n * Returns the view's RTL property\n */\n MDCTabBarFoundation.prototype.isRTL_ = function () {\n return this.adapter_.isRTL();\n };\n /**\n * Scrolls the tab at the given index into view for left-to-right user agents.\n * @param index The index of the tab to scroll into view\n */\n MDCTabBarFoundation.prototype.scrollIntoView_ = function (index) {\n var scrollPosition = this.adapter_.getScrollPosition();\n var barWidth = this.adapter_.getOffsetWidth();\n var tabDimensions = this.adapter_.getTabDimensionsAtIndex(index);\n var nextIndex = this.findAdjacentTabIndexClosestToEdge_(index, tabDimensions, scrollPosition, barWidth);\n if (!this.indexIsInRange_(nextIndex)) {\n return;\n }\n var scrollIncrement = this.calculateScrollIncrement_(index, nextIndex, scrollPosition, barWidth);\n this.adapter_.incrementScroll(scrollIncrement);\n };\n /**\n * Scrolls the tab at the given index into view in RTL\n * @param index The tab index to make visible\n */\n MDCTabBarFoundation.prototype.scrollIntoViewRTL_ = function (index) {\n var scrollPosition = this.adapter_.getScrollPosition();\n var barWidth = this.adapter_.getOffsetWidth();\n var tabDimensions = this.adapter_.getTabDimensionsAtIndex(index);\n var scrollWidth = this.adapter_.getScrollContentWidth();\n var nextIndex = this.findAdjacentTabIndexClosestToEdgeRTL_(index, tabDimensions, scrollPosition, barWidth, scrollWidth);\n if (!this.indexIsInRange_(nextIndex)) {\n return;\n }\n var scrollIncrement = this.calculateScrollIncrementRTL_(index, nextIndex, scrollPosition, barWidth, scrollWidth);\n this.adapter_.incrementScroll(scrollIncrement);\n };\n return MDCTabBarFoundation;\n}(MDCFoundation));\nexport { MDCTabBarFoundation };\n// tslint:disable-next-line:no-default-export Needed for backward compatibility with MDC Web v0.44.0 and earlier.\nexport default MDCTabBarFoundation;\n//# sourceMappingURL=foundation.js.map","/**\n * @license\n * Copyright 2018 Google Inc.\n *\n * Permission is hereby granted, free of charge, to any person obtaining a copy\n * of this software and associated documentation files (the \"Software\"), to deal\n * in the Software without restriction, including without limitation the rights\n * to use, copy, modify, merge, publish, distribute, sublicense, and/or sell\n * copies of the Software, and to permit persons to whom the Software is\n * furnished to do so, subject to the following conditions:\n *\n * The above copyright notice and this permission notice shall be included in\n * all copies or substantial portions of the Software.\n *\n * THE SOFTWARE IS PROVIDED \"AS IS\", WITHOUT WARRANTY OF ANY KIND, EXPRESS OR\n * IMPLIED, INCLUDING BUT NOT LIMITED TO THE WARRANTIES OF MERCHANTABILITY,\n * FITNESS FOR A PARTICULAR PURPOSE AND NONINFRINGEMENT. IN NO EVENT SHALL THE\n * AUTHORS OR COPYRIGHT HOLDERS BE LIABLE FOR ANY CLAIM, DAMAGES OR OTHER\n * LIABILITY, WHETHER IN AN ACTION OF CONTRACT, TORT OR OTHERWISE, ARISING FROM,\n * OUT OF OR IN CONNECTION WITH THE SOFTWARE OR THE USE OR OTHER DEALINGS IN\n * THE SOFTWARE.\n */\nimport * as tslib_1 from \"tslib\";\nimport { MDCComponent } from '@material/base/component';\nimport { MDCTabScroller } from '@material/tab-scroller/component';\nimport { MDCTab } from '@material/tab/component';\nimport { MDCTabFoundation } from '@material/tab/foundation';\nimport { MDCTabBarFoundation } from './foundation';\nvar strings = MDCTabBarFoundation.strings;\nvar tabIdCounter = 0;\nvar MDCTabBar = /** @class */ (function (_super) {\n tslib_1.__extends(MDCTabBar, _super);\n function MDCTabBar() {\n return _super !== null && _super.apply(this, arguments) || this;\n }\n MDCTabBar.attachTo = function (root) {\n return new MDCTabBar(root);\n };\n Object.defineProperty(MDCTabBar.prototype, \"focusOnActivate\", {\n set: function (focusOnActivate) {\n this.tabList_.forEach(function (tab) { return tab.focusOnActivate = focusOnActivate; });\n },\n enumerable: true,\n configurable: true\n });\n Object.defineProperty(MDCTabBar.prototype, \"useAutomaticActivation\", {\n set: function (useAutomaticActivation) {\n this.foundation_.setUseAutomaticActivation(useAutomaticActivation);\n },\n enumerable: true,\n configurable: true\n });\n MDCTabBar.prototype.initialize = function (tabFactory, tabScrollerFactory) {\n if (tabFactory === void 0) { tabFactory = function (el) { return new MDCTab(el); }; }\n if (tabScrollerFactory === void 0) { tabScrollerFactory = function (el) { return new MDCTabScroller(el); }; }\n this.tabList_ = this.instantiateTabs_(tabFactory);\n this.tabScroller_ = this.instantiateTabScroller_(tabScrollerFactory);\n };\n MDCTabBar.prototype.initialSyncWithDOM = function () {\n var _this = this;\n this.handleTabInteraction_ = function (evt) { return _this.foundation_.handleTabInteraction(evt); };\n this.handleKeyDown_ = function (evt) { return _this.foundation_.handleKeyDown(evt); };\n this.listen(MDCTabFoundation.strings.INTERACTED_EVENT, this.handleTabInteraction_);\n this.listen('keydown', this.handleKeyDown_);\n for (var i = 0; i < this.tabList_.length; i++) {\n if (this.tabList_[i].active) {\n this.scrollIntoView(i);\n break;\n }\n }\n };\n MDCTabBar.prototype.destroy = function () {\n _super.prototype.destroy.call(this);\n this.unlisten(MDCTabFoundation.strings.INTERACTED_EVENT, this.handleTabInteraction_);\n this.unlisten('keydown', this.handleKeyDown_);\n this.tabList_.forEach(function (tab) { return tab.destroy(); });\n if (this.tabScroller_) {\n this.tabScroller_.destroy();\n }\n };\n MDCTabBar.prototype.getDefaultFoundation = function () {\n var _this = this;\n // DO NOT INLINE this variable. For backward compatibility, foundations take a Partial.\n // To ensure we don't accidentally omit any methods, we need a separate, strongly typed adapter variable.\n // tslint:disable:object-literal-sort-keys Methods should be in the same order as the adapter interface.\n var adapter = {\n scrollTo: function (scrollX) { return _this.tabScroller_.scrollTo(scrollX); },\n incrementScroll: function (scrollXIncrement) { return _this.tabScroller_.incrementScroll(scrollXIncrement); },\n getScrollPosition: function () { return _this.tabScroller_.getScrollPosition(); },\n getScrollContentWidth: function () { return _this.tabScroller_.getScrollContentWidth(); },\n getOffsetWidth: function () { return _this.root_.offsetWidth; },\n isRTL: function () { return window.getComputedStyle(_this.root_).getPropertyValue('direction') === 'rtl'; },\n setActiveTab: function (index) { return _this.foundation_.activateTab(index); },\n activateTabAtIndex: function (index, clientRect) { return _this.tabList_[index].activate(clientRect); },\n deactivateTabAtIndex: function (index) { return _this.tabList_[index].deactivate(); },\n focusTabAtIndex: function (index) { return _this.tabList_[index].focus(); },\n getTabIndicatorClientRectAtIndex: function (index) { return _this.tabList_[index].computeIndicatorClientRect(); },\n getTabDimensionsAtIndex: function (index) { return _this.tabList_[index].computeDimensions(); },\n getPreviousActiveTabIndex: function () {\n for (var i = 0; i < _this.tabList_.length; i++) {\n if (_this.tabList_[i].active) {\n return i;\n }\n }\n return -1;\n },\n getFocusedTabIndex: function () {\n var tabElements = _this.getTabElements_();\n var activeElement = document.activeElement;\n return tabElements.indexOf(activeElement);\n },\n getIndexOfTabById: function (id) {\n for (var i = 0; i < _this.tabList_.length; i++) {\n if (_this.tabList_[i].id === id) {\n return i;\n }\n }\n return -1;\n },\n getTabListLength: function () { return _this.tabList_.length; },\n notifyTabActivated: function (index) {\n return _this.emit(strings.TAB_ACTIVATED_EVENT, { index: index }, true);\n },\n };\n // tslint:enable:object-literal-sort-keys\n return new MDCTabBarFoundation(adapter);\n };\n /**\n * Activates the tab at the given index\n * @param index The index of the tab\n */\n MDCTabBar.prototype.activateTab = function (index) {\n this.foundation_.activateTab(index);\n };\n /**\n * Scrolls the tab at the given index into view\n * @param index THe index of the tab\n */\n MDCTabBar.prototype.scrollIntoView = function (index) {\n this.foundation_.scrollIntoView(index);\n };\n /**\n * Returns all the tab elements in a nice clean array\n */\n MDCTabBar.prototype.getTabElements_ = function () {\n return [].slice.call(this.root_.querySelectorAll(strings.TAB_SELECTOR));\n };\n /**\n * Instantiates tab components on all child tab elements\n */\n MDCTabBar.prototype.instantiateTabs_ = function (tabFactory) {\n return this.getTabElements_().map(function (el) {\n el.id = el.id || \"mdc-tab-\" + ++tabIdCounter;\n return tabFactory(el);\n });\n };\n /**\n * Instantiates tab scroller component on the child tab scroller element\n */\n MDCTabBar.prototype.instantiateTabScroller_ = function (tabScrollerFactory) {\n var tabScrollerElement = this.root_.querySelector(strings.TAB_SCROLLER_SELECTOR);\n if (tabScrollerElement) {\n return tabScrollerFactory(tabScrollerElement);\n }\n return null;\n };\n return MDCTabBar;\n}(MDCComponent));\nexport { MDCTabBar };\n//# sourceMappingURL=component.js.map","/**\n * @license\n * Copyright 2019 Google Inc.\n *\n * Permission is hereby granted, free of charge, to any person obtaining a copy\n * of this software and associated documentation files (the \"Software\"), to deal\n * in the Software without restriction, including without limitation the rights\n * to use, copy, modify, merge, publish, distribute, sublicense, and/or sell\n * copies of the Software, and to permit persons to whom the Software is\n * furnished to do so, subject to the following conditions:\n *\n * The above copyright notice and this permission notice shall be included in\n * all copies or substantial portions of the Software.\n *\n * THE SOFTWARE IS PROVIDED \"AS IS\", WITHOUT WARRANTY OF ANY KIND, EXPRESS OR\n * IMPLIED, INCLUDING BUT NOT LIMITED TO THE WARRANTIES OF MERCHANTABILITY,\n * FITNESS FOR A PARTICULAR PURPOSE AND NONINFRINGEMENT. IN NO EVENT SHALL THE\n * AUTHORS OR COPYRIGHT HOLDERS BE LIABLE FOR ANY CLAIM, DAMAGES OR OTHER\n * LIABILITY, WHETHER IN AN ACTION OF CONTRACT, TORT OR OTHERWISE, ARISING FROM,\n * OUT OF OR IN CONNECTION WITH THE SOFTWARE OR THE USE OR OTHER DEALINGS IN\n * THE SOFTWARE.\n */\n/**\n * Determine whether the current browser supports passive event listeners, and\n * if so, use them.\n */\nexport function applyPassive(globalObj) {\n if (globalObj === void 0) { globalObj = window; }\n return supportsPassiveOption(globalObj) ?\n { passive: true } :\n false;\n}\nfunction supportsPassiveOption(globalObj) {\n if (globalObj === void 0) { globalObj = window; }\n // See\n // https://developer.mozilla.org/en-US/docs/Web/API/EventTarget/addEventListener\n var passiveSupported = false;\n try {\n var options = {\n // This function will be called when the browser\n // attempts to access the passive property.\n get passive() {\n passiveSupported = true;\n return false;\n }\n };\n var handler = function () { };\n globalObj.document.addEventListener('test', handler, options);\n globalObj.document.removeEventListener('test', handler, options);\n }\n catch (err) {\n passiveSupported = false;\n }\n return passiveSupported;\n}\n//# sourceMappingURL=events.js.map","/**\n * @license\n * Copyright 2018 Google Inc.\n *\n * Permission is hereby granted, free of charge, to any person obtaining a copy\n * of this software and associated documentation files (the \"Software\"), to deal\n * in the Software without restriction, including without limitation the rights\n * to use, copy, modify, merge, publish, distribute, sublicense, and/or sell\n * copies of the Software, and to permit persons to whom the Software is\n * furnished to do so, subject to the following conditions:\n *\n * The above copyright notice and this permission notice shall be included in\n * all copies or substantial portions of the Software.\n *\n * THE SOFTWARE IS PROVIDED \"AS IS\", WITHOUT WARRANTY OF ANY KIND, EXPRESS OR\n * IMPLIED, INCLUDING BUT NOT LIMITED TO THE WARRANTIES OF MERCHANTABILITY,\n * FITNESS FOR A PARTICULAR PURPOSE AND NONINFRINGEMENT. IN NO EVENT SHALL THE\n * AUTHORS OR COPYRIGHT HOLDERS BE LIABLE FOR ANY CLAIM, DAMAGES OR OTHER\n * LIABILITY, WHETHER IN AN ACTION OF CONTRACT, TORT OR OTHERWISE, ARISING FROM,\n * OUT OF OR IN CONNECTION WITH THE SOFTWARE OR THE USE OR OTHER DEALINGS IN\n * THE SOFTWARE.\n */\n/**\n * @fileoverview A \"ponyfill\" is a polyfill that doesn't modify the global prototype chain.\n * This makes ponyfills safer than traditional polyfills, especially for libraries like MDC.\n */\nexport function closest(element, selector) {\n if (element.closest) {\n return element.closest(selector);\n }\n var el = element;\n while (el) {\n if (matches(el, selector)) {\n return el;\n }\n el = el.parentElement;\n }\n return null;\n}\nexport function matches(element, selector) {\n var nativeMatches = element.matches\n || element.webkitMatchesSelector\n || element.msMatchesSelector;\n return nativeMatches.call(element, selector);\n}\n/**\n * Used to compute the estimated scroll width of elements. When an element is\n * hidden due to display: none; being applied to a parent element, the width is\n * returned as 0. However, the element will have a true width once no longer\n * inside a display: none context. This method computes an estimated width when\n * the element is hidden or returns the true width when the element is visble.\n * @param {Element} element the element whose width to estimate\n */\nexport function estimateScrollWidth(element) {\n // Check the offsetParent. If the element inherits display: none from any\n // parent, the offsetParent property will be null (see\n // https://developer.mozilla.org/en-US/docs/Web/API/HTMLElement/offsetParent).\n // This check ensures we only clone the node when necessary.\n var htmlEl = element;\n if (htmlEl.offsetParent !== null) {\n return htmlEl.scrollWidth;\n }\n var clone = htmlEl.cloneNode(true);\n clone.style.setProperty('position', 'absolute');\n clone.style.setProperty('transform', 'translate(-9999px, -9999px)');\n document.documentElement.appendChild(clone);\n var scrollWidth = clone.scrollWidth;\n document.documentElement.removeChild(clone);\n return scrollWidth;\n}\n//# sourceMappingURL=ponyfill.js.map","/**\n * @license\n * Copyright 2018 Google Inc.\n *\n * Permission is hereby granted, free of charge, to any person obtaining a copy\n * of this software and associated documentation files (the \"Software\"), to deal\n * in the Software without restriction, including without limitation the rights\n * to use, copy, modify, merge, publish, distribute, sublicense, and/or sell\n * copies of the Software, and to permit persons to whom the Software is\n * furnished to do so, subject to the following conditions:\n *\n * The above copyright notice and this permission notice shall be included in\n * all copies or substantial portions of the Software.\n *\n * THE SOFTWARE IS PROVIDED \"AS IS\", WITHOUT WARRANTY OF ANY KIND, EXPRESS OR\n * IMPLIED, INCLUDING BUT NOT LIMITED TO THE WARRANTIES OF MERCHANTABILITY,\n * FITNESS FOR A PARTICULAR PURPOSE AND NONINFRINGEMENT. IN NO EVENT SHALL THE\n * AUTHORS OR COPYRIGHT HOLDERS BE LIABLE FOR ANY CLAIM, DAMAGES OR OTHER\n * LIABILITY, WHETHER IN AN ACTION OF CONTRACT, TORT OR OTHERWISE, ARISING FROM,\n * OUT OF OR IN CONNECTION WITH THE SOFTWARE OR THE USE OR OTHER DEALINGS IN\n * THE SOFTWARE.\n */\nvar strings = {\n ARROW_LEFT_KEY: 'ArrowLeft',\n ARROW_RIGHT_KEY: 'ArrowRight',\n END_KEY: 'End',\n ENTER_KEY: 'Enter',\n HOME_KEY: 'Home',\n SPACE_KEY: 'Space',\n TAB_ACTIVATED_EVENT: 'MDCTabBar:activated',\n TAB_SCROLLER_SELECTOR: '.mdc-tab-scroller',\n TAB_SELECTOR: '.mdc-tab',\n};\nvar numbers = {\n ARROW_LEFT_KEYCODE: 37,\n ARROW_RIGHT_KEYCODE: 39,\n END_KEYCODE: 35,\n ENTER_KEYCODE: 13,\n EXTRA_SCROLL_AMOUNT: 20,\n HOME_KEYCODE: 36,\n SPACE_KEYCODE: 32,\n};\nexport { numbers, strings };\n//# sourceMappingURL=constants.js.map","/**\n * Stores result from supportsCssVariables to avoid redundant processing to\n * detect CSS custom variable support.\n */\nvar supportsCssVariables_;\nexport function supportsCssVariables(windowObj, forceRefresh) {\n if (forceRefresh === void 0) { forceRefresh = false; }\n var CSS = windowObj.CSS;\n var supportsCssVars = supportsCssVariables_;\n if (typeof supportsCssVariables_ === 'boolean' && !forceRefresh) {\n return supportsCssVariables_;\n }\n var supportsFunctionPresent = CSS && typeof CSS.supports === 'function';\n if (!supportsFunctionPresent) {\n return false;\n }\n var explicitlySupportsCssVars = CSS.supports('--css-vars', 'yes');\n // See: https://bugs.webkit.org/show_bug.cgi?id=154669\n // See: README section on Safari\n var weAreFeatureDetectingSafari10plus = (CSS.supports('(--css-vars: yes)') &&\n CSS.supports('color', '#00000000'));\n supportsCssVars =\n explicitlySupportsCssVars || weAreFeatureDetectingSafari10plus;\n if (!forceRefresh) {\n supportsCssVariables_ = supportsCssVars;\n }\n return supportsCssVars;\n}\nexport function getNormalizedEventCoords(evt, pageOffset, clientRect) {\n if (!evt) {\n return { x: 0, y: 0 };\n }\n var x = pageOffset.x, y = pageOffset.y;\n var documentX = x + clientRect.left;\n var documentY = y + clientRect.top;\n var normalizedX;\n var normalizedY;\n // Determine touch point relative to the ripple container.\n if (evt.type === 'touchstart') {\n var touchEvent = evt;\n normalizedX = touchEvent.changedTouches[0].pageX - documentX;\n normalizedY = touchEvent.changedTouches[0].pageY - documentY;\n }\n else {\n var mouseEvent = evt;\n normalizedX = mouseEvent.pageX - documentX;\n normalizedY = mouseEvent.pageY - documentY;\n }\n return { x: normalizedX, y: normalizedY };\n}\n//# sourceMappingURL=util.js.map","/**\n * @license\n * Copyright 2018 Google Inc.\n *\n * Permission is hereby granted, free of charge, to any person obtaining a copy\n * of this software and associated documentation files (the \"Software\"), to deal\n * in the Software without restriction, including without limitation the rights\n * to use, copy, modify, merge, publish, distribute, sublicense, and/or sell\n * copies of the Software, and to permit persons to whom the Software is\n * furnished to do so, subject to the following conditions:\n *\n * The above copyright notice and this permission notice shall be included in\n * all copies or substantial portions of the Software.\n *\n * THE SOFTWARE IS PROVIDED \"AS IS\", WITHOUT WARRANTY OF ANY KIND, EXPRESS OR\n * IMPLIED, INCLUDING BUT NOT LIMITED TO THE WARRANTIES OF MERCHANTABILITY,\n * FITNESS FOR A PARTICULAR PURPOSE AND NONINFRINGEMENT. IN NO EVENT SHALL THE\n * AUTHORS OR COPYRIGHT HOLDERS BE LIABLE FOR ANY CLAIM, DAMAGES OR OTHER\n * LIABILITY, WHETHER IN AN ACTION OF CONTRACT, TORT OR OTHERWISE, ARISING FROM,\n * OUT OF OR IN CONNECTION WITH THE SOFTWARE OR THE USE OR OTHER DEALINGS IN\n * THE SOFTWARE.\n */\nvar MDCTabScrollerRTL = /** @class */ (function () {\n function MDCTabScrollerRTL(adapter) {\n this.adapter_ = adapter;\n }\n return MDCTabScrollerRTL;\n}());\nexport { MDCTabScrollerRTL };\n// tslint:disable-next-line:no-default-export Needed for backward compatibility with MDC Web v0.44.0 and earlier.\nexport default MDCTabScrollerRTL;\n//# sourceMappingURL=rtl-scroller.js.map","/**\n * @license\n * Copyright 2018 Google Inc.\n *\n * Permission is hereby granted, free of charge, to any person obtaining a copy\n * of this software and associated documentation files (the \"Software\"), to deal\n * in the Software without restriction, including without limitation the rights\n * to use, copy, modify, merge, publish, distribute, sublicense, and/or sell\n * copies of the Software, and to permit persons to whom the Software is\n * furnished to do so, subject to the following conditions:\n *\n * The above copyright notice and this permission notice shall be included in\n * all copies or substantial portions of the Software.\n *\n * THE SOFTWARE IS PROVIDED \"AS IS\", WITHOUT WARRANTY OF ANY KIND, EXPRESS OR\n * IMPLIED, INCLUDING BUT NOT LIMITED TO THE WARRANTIES OF MERCHANTABILITY,\n * FITNESS FOR A PARTICULAR PURPOSE AND NONINFRINGEMENT. IN NO EVENT SHALL THE\n * AUTHORS OR COPYRIGHT HOLDERS BE LIABLE FOR ANY CLAIM, DAMAGES OR OTHER\n * LIABILITY, WHETHER IN AN ACTION OF CONTRACT, TORT OR OTHERWISE, ARISING FROM,\n * OUT OF OR IN CONNECTION WITH THE SOFTWARE OR THE USE OR OTHER DEALINGS IN\n * THE SOFTWARE.\n */\nimport * as tslib_1 from \"tslib\";\nimport { MDCTabScrollerRTL } from './rtl-scroller';\nvar MDCTabScrollerRTLDefault = /** @class */ (function (_super) {\n tslib_1.__extends(MDCTabScrollerRTLDefault, _super);\n function MDCTabScrollerRTLDefault() {\n return _super !== null && _super.apply(this, arguments) || this;\n }\n MDCTabScrollerRTLDefault.prototype.getScrollPositionRTL = function () {\n var currentScrollLeft = this.adapter_.getScrollAreaScrollLeft();\n var right = this.calculateScrollEdges_().right;\n // Scroll values on most browsers are ints instead of floats so we round\n return Math.round(right - currentScrollLeft);\n };\n MDCTabScrollerRTLDefault.prototype.scrollToRTL = function (scrollX) {\n var edges = this.calculateScrollEdges_();\n var currentScrollLeft = this.adapter_.getScrollAreaScrollLeft();\n var clampedScrollLeft = this.clampScrollValue_(edges.right - scrollX);\n return {\n finalScrollPosition: clampedScrollLeft,\n scrollDelta: clampedScrollLeft - currentScrollLeft,\n };\n };\n MDCTabScrollerRTLDefault.prototype.incrementScrollRTL = function (scrollX) {\n var currentScrollLeft = this.adapter_.getScrollAreaScrollLeft();\n var clampedScrollLeft = this.clampScrollValue_(currentScrollLeft - scrollX);\n return {\n finalScrollPosition: clampedScrollLeft,\n scrollDelta: clampedScrollLeft - currentScrollLeft,\n };\n };\n MDCTabScrollerRTLDefault.prototype.getAnimatingScrollPosition = function (scrollX) {\n return scrollX;\n };\n MDCTabScrollerRTLDefault.prototype.calculateScrollEdges_ = function () {\n var contentWidth = this.adapter_.getScrollContentOffsetWidth();\n var rootWidth = this.adapter_.getScrollAreaOffsetWidth();\n return {\n left: 0,\n right: contentWidth - rootWidth,\n };\n };\n MDCTabScrollerRTLDefault.prototype.clampScrollValue_ = function (scrollX) {\n var edges = this.calculateScrollEdges_();\n return Math.min(Math.max(edges.left, scrollX), edges.right);\n };\n return MDCTabScrollerRTLDefault;\n}(MDCTabScrollerRTL));\nexport { MDCTabScrollerRTLDefault };\n// tslint:disable-next-line:no-default-export Needed for backward compatibility with MDC Web v0.44.0 and earlier.\nexport default MDCTabScrollerRTLDefault;\n//# sourceMappingURL=rtl-default-scroller.js.map","/**\n * @license\n * Copyright 2018 Google Inc.\n *\n * Permission is hereby granted, free of charge, to any person obtaining a copy\n * of this software and associated documentation files (the \"Software\"), to deal\n * in the Software without restriction, including without limitation the rights\n * to use, copy, modify, merge, publish, distribute, sublicense, and/or sell\n * copies of the Software, and to permit persons to whom the Software is\n * furnished to do so, subject to the following conditions:\n *\n * The above copyright notice and this permission notice shall be included in\n * all copies or substantial portions of the Software.\n *\n * THE SOFTWARE IS PROVIDED \"AS IS\", WITHOUT WARRANTY OF ANY KIND, EXPRESS OR\n * IMPLIED, INCLUDING BUT NOT LIMITED TO THE WARRANTIES OF MERCHANTABILITY,\n * FITNESS FOR A PARTICULAR PURPOSE AND NONINFRINGEMENT. IN NO EVENT SHALL THE\n * AUTHORS OR COPYRIGHT HOLDERS BE LIABLE FOR ANY CLAIM, DAMAGES OR OTHER\n * LIABILITY, WHETHER IN AN ACTION OF CONTRACT, TORT OR OTHERWISE, ARISING FROM,\n * OUT OF OR IN CONNECTION WITH THE SOFTWARE OR THE USE OR OTHER DEALINGS IN\n * THE SOFTWARE.\n */\nimport * as tslib_1 from \"tslib\";\nimport { MDCTabScrollerRTL } from './rtl-scroller';\nvar MDCTabScrollerRTLNegative = /** @class */ (function (_super) {\n tslib_1.__extends(MDCTabScrollerRTLNegative, _super);\n function MDCTabScrollerRTLNegative() {\n return _super !== null && _super.apply(this, arguments) || this;\n }\n MDCTabScrollerRTLNegative.prototype.getScrollPositionRTL = function (translateX) {\n var currentScrollLeft = this.adapter_.getScrollAreaScrollLeft();\n return Math.round(translateX - currentScrollLeft);\n };\n MDCTabScrollerRTLNegative.prototype.scrollToRTL = function (scrollX) {\n var currentScrollLeft = this.adapter_.getScrollAreaScrollLeft();\n var clampedScrollLeft = this.clampScrollValue_(-scrollX);\n return {\n finalScrollPosition: clampedScrollLeft,\n scrollDelta: clampedScrollLeft - currentScrollLeft,\n };\n };\n MDCTabScrollerRTLNegative.prototype.incrementScrollRTL = function (scrollX) {\n var currentScrollLeft = this.adapter_.getScrollAreaScrollLeft();\n var clampedScrollLeft = this.clampScrollValue_(currentScrollLeft - scrollX);\n return {\n finalScrollPosition: clampedScrollLeft,\n scrollDelta: clampedScrollLeft - currentScrollLeft,\n };\n };\n MDCTabScrollerRTLNegative.prototype.getAnimatingScrollPosition = function (scrollX, translateX) {\n return scrollX - translateX;\n };\n MDCTabScrollerRTLNegative.prototype.calculateScrollEdges_ = function () {\n var contentWidth = this.adapter_.getScrollContentOffsetWidth();\n var rootWidth = this.adapter_.getScrollAreaOffsetWidth();\n return {\n left: rootWidth - contentWidth,\n right: 0,\n };\n };\n MDCTabScrollerRTLNegative.prototype.clampScrollValue_ = function (scrollX) {\n var edges = this.calculateScrollEdges_();\n return Math.max(Math.min(edges.right, scrollX), edges.left);\n };\n return MDCTabScrollerRTLNegative;\n}(MDCTabScrollerRTL));\nexport { MDCTabScrollerRTLNegative };\n// tslint:disable-next-line:no-default-export Needed for backward compatibility with MDC Web v0.44.0 and earlier.\nexport default MDCTabScrollerRTLNegative;\n//# sourceMappingURL=rtl-negative-scroller.js.map","/**\n * @license\n * Copyright 2018 Google Inc.\n *\n * Permission is hereby granted, free of charge, to any person obtaining a copy\n * of this software and associated documentation files (the \"Software\"), to deal\n * in the Software without restriction, including without limitation the rights\n * to use, copy, modify, merge, publish, distribute, sublicense, and/or sell\n * copies of the Software, and to permit persons to whom the Software is\n * furnished to do so, subject to the following conditions:\n *\n * The above copyright notice and this permission notice shall be included in\n * all copies or substantial portions of the Software.\n *\n * THE SOFTWARE IS PROVIDED \"AS IS\", WITHOUT WARRANTY OF ANY KIND, EXPRESS OR\n * IMPLIED, INCLUDING BUT NOT LIMITED TO THE WARRANTIES OF MERCHANTABILITY,\n * FITNESS FOR A PARTICULAR PURPOSE AND NONINFRINGEMENT. IN NO EVENT SHALL THE\n * AUTHORS OR COPYRIGHT HOLDERS BE LIABLE FOR ANY CLAIM, DAMAGES OR OTHER\n * LIABILITY, WHETHER IN AN ACTION OF CONTRACT, TORT OR OTHERWISE, ARISING FROM,\n * OUT OF OR IN CONNECTION WITH THE SOFTWARE OR THE USE OR OTHER DEALINGS IN\n * THE SOFTWARE.\n */\nimport * as tslib_1 from \"tslib\";\nimport { MDCTabScrollerRTL } from './rtl-scroller';\nvar MDCTabScrollerRTLReverse = /** @class */ (function (_super) {\n tslib_1.__extends(MDCTabScrollerRTLReverse, _super);\n function MDCTabScrollerRTLReverse() {\n return _super !== null && _super.apply(this, arguments) || this;\n }\n MDCTabScrollerRTLReverse.prototype.getScrollPositionRTL = function (translateX) {\n var currentScrollLeft = this.adapter_.getScrollAreaScrollLeft();\n // Scroll values on most browsers are ints instead of floats so we round\n return Math.round(currentScrollLeft - translateX);\n };\n MDCTabScrollerRTLReverse.prototype.scrollToRTL = function (scrollX) {\n var currentScrollLeft = this.adapter_.getScrollAreaScrollLeft();\n var clampedScrollLeft = this.clampScrollValue_(scrollX);\n return {\n finalScrollPosition: clampedScrollLeft,\n scrollDelta: currentScrollLeft - clampedScrollLeft,\n };\n };\n MDCTabScrollerRTLReverse.prototype.incrementScrollRTL = function (scrollX) {\n var currentScrollLeft = this.adapter_.getScrollAreaScrollLeft();\n var clampedScrollLeft = this.clampScrollValue_(currentScrollLeft + scrollX);\n return {\n finalScrollPosition: clampedScrollLeft,\n scrollDelta: currentScrollLeft - clampedScrollLeft,\n };\n };\n MDCTabScrollerRTLReverse.prototype.getAnimatingScrollPosition = function (scrollX, translateX) {\n return scrollX + translateX;\n };\n MDCTabScrollerRTLReverse.prototype.calculateScrollEdges_ = function () {\n var contentWidth = this.adapter_.getScrollContentOffsetWidth();\n var rootWidth = this.adapter_.getScrollAreaOffsetWidth();\n return {\n left: contentWidth - rootWidth,\n right: 0,\n };\n };\n MDCTabScrollerRTLReverse.prototype.clampScrollValue_ = function (scrollX) {\n var edges = this.calculateScrollEdges_();\n return Math.min(Math.max(edges.right, scrollX), edges.left);\n };\n return MDCTabScrollerRTLReverse;\n}(MDCTabScrollerRTL));\nexport { MDCTabScrollerRTLReverse };\n// tslint:disable-next-line:no-default-export Needed for backward compatibility with MDC Web v0.44.0 and earlier.\nexport default MDCTabScrollerRTLReverse;\n//# sourceMappingURL=rtl-reverse-scroller.js.map","/**\n * @license\n * Copyright 2018 Google Inc.\n *\n * Permission is hereby granted, free of charge, to any person obtaining a copy\n * of this software and associated documentation files (the \"Software\"), to deal\n * in the Software without restriction, including without limitation the rights\n * to use, copy, modify, merge, publish, distribute, sublicense, and/or sell\n * copies of the Software, and to permit persons to whom the Software is\n * furnished to do so, subject to the following conditions:\n *\n * The above copyright notice and this permission notice shall be included in\n * all copies or substantial portions of the Software.\n *\n * THE SOFTWARE IS PROVIDED \"AS IS\", WITHOUT WARRANTY OF ANY KIND, EXPRESS OR\n * IMPLIED, INCLUDING BUT NOT LIMITED TO THE WARRANTIES OF MERCHANTABILITY,\n * FITNESS FOR A PARTICULAR PURPOSE AND NONINFRINGEMENT. IN NO EVENT SHALL THE\n * AUTHORS OR COPYRIGHT HOLDERS BE LIABLE FOR ANY CLAIM, DAMAGES OR OTHER\n * LIABILITY, WHETHER IN AN ACTION OF CONTRACT, TORT OR OTHERWISE, ARISING FROM,\n * OUT OF OR IN CONNECTION WITH THE SOFTWARE OR THE USE OR OTHER DEALINGS IN\n * THE SOFTWARE.\n */\nimport * as tslib_1 from \"tslib\";\nimport { MDCTabIndicatorFoundation } from './foundation';\n/* istanbul ignore next: subclass is not a branch statement */\nvar MDCFadingTabIndicatorFoundation = /** @class */ (function (_super) {\n tslib_1.__extends(MDCFadingTabIndicatorFoundation, _super);\n function MDCFadingTabIndicatorFoundation() {\n return _super !== null && _super.apply(this, arguments) || this;\n }\n MDCFadingTabIndicatorFoundation.prototype.activate = function () {\n this.adapter_.addClass(MDCTabIndicatorFoundation.cssClasses.ACTIVE);\n };\n MDCFadingTabIndicatorFoundation.prototype.deactivate = function () {\n this.adapter_.removeClass(MDCTabIndicatorFoundation.cssClasses.ACTIVE);\n };\n return MDCFadingTabIndicatorFoundation;\n}(MDCTabIndicatorFoundation));\nexport { MDCFadingTabIndicatorFoundation };\n// tslint:disable-next-line:no-default-export Needed for backward compatibility with MDC Web v0.44.0 and earlier.\nexport default MDCFadingTabIndicatorFoundation;\n//# sourceMappingURL=fading-foundation.js.map","/**\n * @license\n * Copyright 2018 Google Inc.\n *\n * Permission is hereby granted, free of charge, to any person obtaining a copy\n * of this software and associated documentation files (the \"Software\"), to deal\n * in the Software without restriction, including without limitation the rights\n * to use, copy, modify, merge, publish, distribute, sublicense, and/or sell\n * copies of the Software, and to permit persons to whom the Software is\n * furnished to do so, subject to the following conditions:\n *\n * The above copyright notice and this permission notice shall be included in\n * all copies or substantial portions of the Software.\n *\n * THE SOFTWARE IS PROVIDED \"AS IS\", WITHOUT WARRANTY OF ANY KIND, EXPRESS OR\n * IMPLIED, INCLUDING BUT NOT LIMITED TO THE WARRANTIES OF MERCHANTABILITY,\n * FITNESS FOR A PARTICULAR PURPOSE AND NONINFRINGEMENT. IN NO EVENT SHALL THE\n * AUTHORS OR COPYRIGHT HOLDERS BE LIABLE FOR ANY CLAIM, DAMAGES OR OTHER\n * LIABILITY, WHETHER IN AN ACTION OF CONTRACT, TORT OR OTHERWISE, ARISING FROM,\n * OUT OF OR IN CONNECTION WITH THE SOFTWARE OR THE USE OR OTHER DEALINGS IN\n * THE SOFTWARE.\n */\nimport * as tslib_1 from \"tslib\";\nimport { MDCTabIndicatorFoundation } from './foundation';\n/* istanbul ignore next: subclass is not a branch statement */\nvar MDCSlidingTabIndicatorFoundation = /** @class */ (function (_super) {\n tslib_1.__extends(MDCSlidingTabIndicatorFoundation, _super);\n function MDCSlidingTabIndicatorFoundation() {\n return _super !== null && _super.apply(this, arguments) || this;\n }\n MDCSlidingTabIndicatorFoundation.prototype.activate = function (previousIndicatorClientRect) {\n // Early exit if no indicator is present to handle cases where an indicator\n // may be activated without a prior indicator state\n if (!previousIndicatorClientRect) {\n this.adapter_.addClass(MDCTabIndicatorFoundation.cssClasses.ACTIVE);\n return;\n }\n // This animation uses the FLIP approach. You can read more about it at the link below:\n // https://aerotwist.com/blog/flip-your-animations/\n // Calculate the dimensions based on the dimensions of the previous indicator\n var currentClientRect = this.computeContentClientRect();\n var widthDelta = previousIndicatorClientRect.width / currentClientRect.width;\n var xPosition = previousIndicatorClientRect.left - currentClientRect.left;\n this.adapter_.addClass(MDCTabIndicatorFoundation.cssClasses.NO_TRANSITION);\n this.adapter_.setContentStyleProperty('transform', \"translateX(\" + xPosition + \"px) scaleX(\" + widthDelta + \")\");\n // Force repaint before updating classes and transform to ensure the transform properly takes effect\n this.computeContentClientRect();\n this.adapter_.removeClass(MDCTabIndicatorFoundation.cssClasses.NO_TRANSITION);\n this.adapter_.addClass(MDCTabIndicatorFoundation.cssClasses.ACTIVE);\n this.adapter_.setContentStyleProperty('transform', '');\n };\n MDCSlidingTabIndicatorFoundation.prototype.deactivate = function () {\n this.adapter_.removeClass(MDCTabIndicatorFoundation.cssClasses.ACTIVE);\n };\n return MDCSlidingTabIndicatorFoundation;\n}(MDCTabIndicatorFoundation));\nexport { MDCSlidingTabIndicatorFoundation };\n// tslint:disable-next-line:no-default-export Needed for backward compatibility with MDC Web v0.44.0 and earlier.\nexport default MDCSlidingTabIndicatorFoundation;\n//# sourceMappingURL=sliding-foundation.js.map"],"sourceRoot":""}