{"version":3,"file":"ui-scroll.js","mappings":"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","sources":["webpack://angular-ui-scroll/./src/modules/jqLiteExtras.js","webpack://angular-ui-scroll/./src/modules/elementRoutines.js","webpack://angular-ui-scroll/./src/modules/utils.js","webpack://angular-ui-scroll/./src/modules/buffer.js","webpack://angular-ui-scroll/./src/modules/padding.js","webpack://angular-ui-scroll/./src/modules/viewport.js","webpack://angular-ui-scroll/./src/modules/adapter.js","webpack://angular-ui-scroll/./src/ui-scroll.js"],"sourcesContent":["/*!\r\n globals: angular, window\r\n List of used element methods available in JQuery but not in JQuery Lite\r\n element.before(elem)\r\n element.height()\r\n element.outerHeight(true)\r\n element.height(value) = only for Top/Bottom padding elements\r\n element.scrollTop()\r\n element.scrollTop(value)\r\n */\r\n\r\nexport default class JQLiteExtras {\r\n\r\n registerFor(element) {\r\n let convertToPx, css, getStyle, isWindow;\r\n // angular implementation blows up if elem is the window\r\n css = angular.element.prototype.css;\r\n\r\n element.prototype.css = function (name, value) {\r\n let self = this;\r\n let elem = self[0];\r\n if (!(!elem || elem.nodeType === 3 || elem.nodeType === 8 || !elem.style)) {\r\n return css.call(self, name, value);\r\n }\r\n };\r\n\r\n // as defined in angularjs v1.0.5\r\n isWindow = (obj) => obj && obj.document && obj.location && obj.alert && obj.setInterval;\r\n\r\n function scrollTo(self, direction, value) {\r\n let elem = self[0];\r\n let [method, prop, preserve] = {\r\n top: [\r\n 'scrollTop',\r\n 'pageYOffset',\r\n 'scrollLeft'\r\n ],\r\n left: [\r\n 'scrollLeft',\r\n 'pageXOffset',\r\n 'scrollTop'\r\n ]\r\n }[direction];\r\n\r\n const isValueDefined = typeof value !== 'undefined';\r\n if (isWindow(elem)) {\r\n if (isValueDefined) {\r\n return elem.scrollTo(self[preserve].call(self), value);\r\n }\r\n return (prop in elem) ? elem[prop] : elem.document.documentElement[method];\r\n } else {\r\n if (isValueDefined) {\r\n elem[method] = value;\r\n }\r\n return elem[method];\r\n }\r\n }\r\n\r\n if (window.getComputedStyle) {\r\n getStyle = (elem) => window.getComputedStyle(elem, null);\r\n convertToPx = (elem, value) => parseFloat(value);\r\n } else {\r\n getStyle = (elem) => elem.currentStyle;\r\n convertToPx = (elem, value) => {\r\n let left, result, rs, rsLeft, style;\r\n let core_pnum = /[+-]?(?:\\d*\\.|)\\d+(?:[eE][+-]?\\d+|)/.source;\r\n let rnumnonpx = new RegExp('^(' + core_pnum + ')(?!px)[a-z%]+$', 'i');\r\n\r\n if (!rnumnonpx.test(value)) {\r\n return parseFloat(value);\r\n }\r\n\r\n // ported from JQuery\r\n style = elem.style;\r\n left = style.left;\r\n rs = elem.runtimeStyle;\r\n rsLeft = rs && rs.left;\r\n if (rs) {\r\n rs.left = style.left;\r\n }\r\n // put in the new values to get a computed style out\r\n style.left = value;\r\n result = style.pixelLeft;\r\n style.left = left;\r\n if (rsLeft) {\r\n rs.left = rsLeft;\r\n }\r\n return result;\r\n };\r\n }\r\n\r\n function getMeasurements(elem, measure) {\r\n let base, borderA, borderB, computedMarginA, computedMarginB, computedStyle, dirA, dirB, marginA, marginB, paddingA, paddingB;\r\n\r\n if (isWindow(elem)) {\r\n base = document.documentElement[{height: 'clientHeight', width: 'clientWidth'}[measure]];\r\n\r\n return {\r\n base: base,\r\n padding: 0,\r\n border: 0,\r\n margin: 0\r\n };\r\n }\r\n\r\n // Start with offset property\r\n [\r\n base,\r\n dirA,\r\n dirB\r\n ] = {\r\n width: [\r\n elem.offsetWidth,\r\n 'Left',\r\n 'Right'\r\n ],\r\n height: [\r\n elem.offsetHeight,\r\n 'Top',\r\n 'Bottom'\r\n ]\r\n }[measure];\r\n\r\n computedStyle = getStyle(elem);\r\n paddingA = convertToPx(elem, computedStyle['padding' + dirA]) || 0;\r\n paddingB = convertToPx(elem, computedStyle['padding' + dirB]) || 0;\r\n borderA = convertToPx(elem, computedStyle['border' + dirA + 'Width']) || 0;\r\n borderB = convertToPx(elem, computedStyle['border' + dirB + 'Width']) || 0;\r\n computedMarginA = computedStyle['margin' + dirA];\r\n computedMarginB = computedStyle['margin' + dirB];\r\n\r\n // I do not care for width for now, so this hack is irrelevant\r\n // if ( !supportsPercentMargin )\r\n // computedMarginA = hackPercentMargin( elem, computedStyle, computedMarginA )\r\n // computedMarginB = hackPercentMargin( elem, computedStyle, computedMarginB )\r\n marginA = convertToPx(elem, computedMarginA) || 0;\r\n marginB = convertToPx(elem, computedMarginB) || 0;\r\n\r\n return {\r\n base: base,\r\n padding: paddingA + paddingB,\r\n border: borderA + borderB,\r\n margin: marginA + marginB\r\n };\r\n }\r\n\r\n function getWidthHeight(elem, direction, measure) {\r\n let computedStyle, result;\r\n\r\n let measurements = getMeasurements(elem, direction);\r\n\r\n if (measurements.base > 0) {\r\n return {\r\n base: measurements.base - measurements.padding - measurements.border,\r\n outer: measurements.base,\r\n outerfull: measurements.base + measurements.margin\r\n }[measure];\r\n }\r\n\r\n // Fall back to computed then uncomputed css if necessary\r\n computedStyle = getStyle(elem);\r\n result = computedStyle[direction];\r\n\r\n if (result < 0 || result === null) {\r\n result = elem.style[direction] || 0;\r\n }\r\n\r\n // Normalize \"\", auto, and prepare for extra\r\n result = parseFloat(result) || 0;\r\n\r\n return {\r\n base: result - measurements.padding - measurements.border,\r\n outer: result,\r\n outerfull: result + measurements.padding + measurements.border + measurements.margin\r\n }[measure];\r\n }\r\n\r\n // define missing methods\r\n return angular.forEach({\r\n before(newElem) {\r\n var children, elem, i, j, parent, ref, self;\r\n self = this;\r\n elem = self[0];\r\n parent = self.parent();\r\n children = parent.contents();\r\n if (children[0] === elem) {\r\n return parent.prepend(newElem);\r\n } else {\r\n for (i = j = 1, ref = children.length - 1; 1 <= ref ? j <= ref : j >= ref; i = 1 <= ref ? ++j : --j) {\r\n if (children[i] === elem) {\r\n angular.element(children[i - 1]).after(newElem);\r\n return;\r\n }\r\n }\r\n throw new Error('invalid DOM structure ' + elem.outerHTML);\r\n }\r\n },\r\n height (value){\r\n var self;\r\n self = this;\r\n if (typeof value !== 'undefined') {\r\n if (angular.isNumber(value)) {\r\n value = value + 'px';\r\n }\r\n return css.call(self, 'height', value);\r\n } else {\r\n return getWidthHeight(this[0], 'height', 'base');\r\n }\r\n },\r\n outerHeight(option) {\r\n return getWidthHeight(this[0], 'height', option ? 'outerfull' : 'outer');\r\n },\r\n outerWidth(option) {\r\n return getWidthHeight(this[0], 'width', option ? 'outerfull' : 'outer');\r\n },\r\n\r\n /*\r\n The offset setter method is not implemented\r\n */\r\n offset(value) {\r\n let docElem, win;\r\n let self = this;\r\n let box = {\r\n top: 0,\r\n left: 0\r\n };\r\n let elem = self[0];\r\n let doc = elem && elem.ownerDocument;\r\n\r\n if (arguments.length) {\r\n if (value === undefined) {\r\n return self;\r\n }\r\n // TODO: implement setter\r\n throw new Error('offset setter method is not implemented');\r\n }\r\n\r\n if (!doc) {\r\n return;\r\n }\r\n\r\n docElem = doc.documentElement;\r\n\r\n // TODO: Make sure it's not a disconnected DOM node\r\n\r\n if (elem.getBoundingClientRect != null) {\r\n box = elem.getBoundingClientRect();\r\n }\r\n\r\n win = doc.defaultView || doc.parentWindow;\r\n\r\n return {\r\n top: box.top + (win.pageYOffset || docElem.scrollTop) - (docElem.clientTop || 0),\r\n left: box.left + (win.pageXOffset || docElem.scrollLeft) - (docElem.clientLeft || 0)\r\n };\r\n },\r\n scrollTop(value) {\r\n return scrollTo(this, 'top', value);\r\n },\r\n scrollLeft(value) {\r\n return scrollTo(this, 'left', value);\r\n }\r\n }, (value, key) => {\r\n if (!element.prototype[key]) {\r\n return element.prototype[key] = value;\r\n }\r\n });\r\n }\r\n\r\n}\r\n","const hideClassToken = 'ng-ui-scroll-hide';\r\n\r\nexport default class ElementRoutines {\r\n\r\n static addCSSRules() {\r\n const selector = '.' + hideClassToken;\r\n const rules = 'display: none';\r\n const sheet = document.styleSheets[0];\r\n let index;\r\n try {\r\n index = sheet.cssRules.length;\r\n } catch (err) {\r\n index = 0;\r\n }\r\n if('insertRule' in sheet) {\r\n sheet.insertRule(selector + '{' + rules + '}', index);\r\n }\r\n else if('addRule' in sheet) {\r\n sheet.addRule(selector, rules, index);\r\n }\r\n }\r\n\r\n constructor($injector, $q) {\r\n this.$animate = ($injector.has && $injector.has('$animate')) ? $injector.get('$animate') : null;\r\n this.isAngularVersionLessThen1_3 = angular.version.major === 1 && angular.version.minor < 3;\r\n this.$q = $q;\r\n }\r\n\r\n hideElement(wrapper) {\r\n wrapper.element.addClass(hideClassToken);\r\n }\r\n\r\n showElement(wrapper) {\r\n wrapper.element.removeClass(hideClassToken);\r\n }\r\n\r\n insertElement(newElement, previousElement) {\r\n previousElement.after(newElement);\r\n return [];\r\n }\r\n\r\n removeElement(wrapper) {\r\n wrapper.element.remove();\r\n wrapper.scope.$destroy();\r\n return [];\r\n }\r\n\r\n insertElementAnimated(newElement, previousElement) {\r\n if (!this.$animate) {\r\n return this.insertElement(newElement, previousElement);\r\n }\r\n\r\n if (this.isAngularVersionLessThen1_3) {\r\n const deferred = this.$q.defer();\r\n // no need for parent - previous element is never null\r\n this.$animate.enter(newElement, null, previousElement, () => deferred.resolve());\r\n\r\n return [deferred.promise];\r\n }\r\n\r\n // no need for parent - previous element is never null\r\n return [this.$animate.enter(newElement, null, previousElement)];\r\n }\r\n\r\n removeElementAnimated(wrapper) {\r\n if (!this.$animate) {\r\n return this.removeElement(wrapper);\r\n }\r\n\r\n if (this.isAngularVersionLessThen1_3) {\r\n const deferred = this.$q.defer();\r\n this.$animate.leave(wrapper.element, () => {\r\n wrapper.scope.$destroy();\r\n return deferred.resolve();\r\n });\r\n\r\n return [deferred.promise];\r\n }\r\n\r\n return [(this.$animate.leave(wrapper.element)).then(() => wrapper.scope.$destroy())];\r\n }\r\n}","export const OPERATIONS = {\r\n PREPEND: 'prepend',\r\n APPEND: 'append',\r\n INSERT: 'insert',\r\n REMOVE: 'remove',\r\n NONE: 'none'\r\n};\r\n","import { OPERATIONS } from './utils';\r\n\r\nexport default function ScrollBuffer(elementRoutines, bufferSize, startIndex) {\r\n const buffer = Object.create(Array.prototype);\r\n\r\n angular.extend(buffer, {\r\n size: bufferSize,\r\n\r\n reset(startIndex) {\r\n buffer.remove(0, buffer.length);\r\n buffer.eof = false;\r\n buffer.bof = false;\r\n buffer.first = startIndex;\r\n buffer.next = startIndex;\r\n buffer.minIndex = startIndex;\r\n buffer.maxIndex = startIndex;\r\n buffer.minIndexUser = null;\r\n buffer.maxIndexUser = null;\r\n },\r\n\r\n append(items) {\r\n items.forEach((item) => {\r\n ++buffer.next;\r\n buffer.insert(OPERATIONS.APPEND, item);\r\n });\r\n buffer.maxIndex = buffer.eof ? buffer.next - 1 : Math.max(buffer.next - 1, buffer.maxIndex);\r\n },\r\n\r\n prepend(items, immutableTop) {\r\n items.reverse().forEach((item) => {\r\n if (immutableTop) {\r\n ++buffer.next;\r\n }\r\n else {\r\n --buffer.first;\r\n }\r\n buffer.insert(OPERATIONS.PREPEND, item);\r\n });\r\n buffer.minIndex = buffer.bof ? buffer.minIndex = buffer.first : Math.min(buffer.first, buffer.minIndex);\r\n },\r\n\r\n /**\r\n * inserts wrapped element in the buffer\r\n * the first argument is either operation keyword (see below) or a number for operation 'insert'\r\n * for insert the number is the index for the buffer element the new one have to be inserted after\r\n * operations: 'append', 'prepend', 'insert', 'remove', 'none'\r\n */\r\n insert(operation, item, shiftTop) {\r\n const wrapper = {\r\n item: item\r\n };\r\n\r\n if (operation % 1 === 0) { // it is an insert\r\n wrapper.op = OPERATIONS.INSERT;\r\n buffer.splice(operation, 0, wrapper);\r\n if (shiftTop) {\r\n buffer.first--;\r\n }\r\n else {\r\n buffer.next++;\r\n }\r\n } else {\r\n wrapper.op = operation;\r\n switch (operation) {\r\n case OPERATIONS.APPEND:\r\n buffer.push(wrapper);\r\n break;\r\n case OPERATIONS.PREPEND:\r\n buffer.unshift(wrapper);\r\n break;\r\n }\r\n }\r\n },\r\n\r\n // removes elements from buffer\r\n remove(arg1, arg2) {\r\n if (angular.isNumber(arg1)) {\r\n // removes items from arg1 (including) through arg2 (excluding)\r\n for (let i = arg1; i < arg2; i++) {\r\n elementRoutines.removeElement(buffer[i]);\r\n }\r\n return buffer.splice(arg1, arg2 - arg1);\r\n }\r\n // removes single item (wrapper) from the buffer\r\n buffer.splice(buffer.indexOf(arg1), 1);\r\n if (arg1.shiftTop && buffer.first === this.getAbsMinIndex()) {\r\n this.incrementMinIndex();\r\n }\r\n else {\r\n this.decrementMaxIndex();\r\n }\r\n if (arg1.shiftTop) {\r\n buffer.first++;\r\n }\r\n else {\r\n buffer.next--;\r\n }\r\n if (!buffer.length) {\r\n buffer.minIndex = Math.min(buffer.maxIndex, buffer.minIndex);\r\n }\r\n\r\n return elementRoutines.removeElementAnimated(arg1);\r\n },\r\n\r\n incrementMinIndex() {\r\n if (buffer.minIndexUser !== null) {\r\n if (buffer.minIndex > buffer.minIndexUser) {\r\n buffer.minIndexUser++;\r\n return;\r\n }\r\n if (buffer.minIndex === buffer.minIndexUser) {\r\n buffer.minIndexUser++;\r\n }\r\n }\r\n buffer.minIndex++;\r\n },\r\n\r\n decrementMaxIndex() {\r\n if (buffer.maxIndexUser !== null && buffer.maxIndex <= buffer.maxIndexUser) {\r\n buffer.maxIndexUser--;\r\n }\r\n buffer.maxIndex--;\r\n },\r\n\r\n getAbsMinIndex() {\r\n if (buffer.minIndexUser !== null) {\r\n return Math.min(buffer.minIndexUser, buffer.minIndex);\r\n }\r\n return buffer.minIndex;\r\n },\r\n\r\n getAbsMaxIndex() {\r\n if (buffer.maxIndexUser !== null) {\r\n return Math.max(buffer.maxIndexUser, buffer.maxIndex);\r\n }\r\n return buffer.maxIndex;\r\n },\r\n\r\n effectiveHeight(elements) {\r\n if (!elements.length) {\r\n return 0;\r\n }\r\n let top = Number.MAX_VALUE;\r\n let bottom = Number.NEGATIVE_INFINITY;\r\n elements.forEach((wrapper) => {\r\n if (wrapper.element[0].offsetParent) {\r\n // element style is not display:none\r\n top = Math.min(top, wrapper.element.offset().top);\r\n bottom = Math.max(bottom, wrapper.element.offset().top + wrapper.element.outerHeight(true));\r\n }\r\n });\r\n return Math.max(0, bottom - top);\r\n },\r\n\r\n getItems() {\r\n return buffer.filter(item => item.op === OPERATIONS.NONE);\r\n },\r\n\r\n getFirstItem() {\r\n const list = buffer.getItems();\r\n if (!list.length) {\r\n return null;\r\n }\r\n return list[0].item;\r\n },\r\n\r\n getLastItem() {\r\n const list = buffer.getItems();\r\n if (!list.length) {\r\n return null;\r\n }\r\n return list[list.length - 1].item;\r\n }\r\n\r\n });\r\n\r\n buffer.reset(startIndex);\r\n\r\n return buffer;\r\n}\r\n","// Can't just extend the Array, due to Babel does not support built-in classes extending\r\n// This solution was taken from https://stackoverflow.com/questions/46897414/es6-class-extends-array-workaround-for-es5-babel-transpile\r\nclass CacheProto {\r\n add(item) {\r\n for (let i = this.length - 1; i >= 0; i--) {\r\n if (this[i].index === item.scope.$index) {\r\n this[i].height = item.element.outerHeight();\r\n return;\r\n }\r\n }\r\n this.push({\r\n index: item.scope.$index,\r\n height: item.element.outerHeight()\r\n });\r\n this.sort((a, b) => ((a.index < b.index) ? -1 : ((a.index > b.index) ? 1 : 0)));\r\n }\r\n\r\n remove(argument, _shiftTop) {\r\n const index = argument % 1 === 0 ? argument : argument.scope.$index;\r\n const shiftTop = argument % 1 === 0 ? _shiftTop : argument.shiftTop;\r\n for (let i = this.length - 1; i >= 0; i--) {\r\n if (this[i].index === index) {\r\n this.splice(i, 1);\r\n break;\r\n }\r\n }\r\n if (!shiftTop) {\r\n for (let i = this.length - 1; i >= 0; i--) {\r\n if (this[i].index > index) {\r\n this[i].index--;\r\n }\r\n }\r\n }\r\n }\r\n\r\n clear() {\r\n this.length = 0;\r\n }\r\n}\r\n\r\nfunction Cache() {\r\n const instance = [];\r\n instance.push.apply(instance, arguments);\r\n Object.setPrototypeOf(instance, Cache.prototype);\r\n return instance;\r\n}\r\nCache.prototype = Object.create(Array.prototype);\r\nObject.getOwnPropertyNames(CacheProto.prototype).forEach(methodName =>\r\n Cache.prototype[methodName] = CacheProto.prototype[methodName]\r\n);\r\n\r\nfunction generateElement(template) {\r\n if (template.nodeType !== Node.ELEMENT_NODE) {\r\n throw new Error('ui-scroll directive requires an Element node for templating the view');\r\n }\r\n let element;\r\n switch (template.tagName.toLowerCase()) {\r\n case 'dl':\r\n throw new Error(`ui-scroll directive does not support <${template.tagName}> as a repeating tag: ${template.outerHTML}`);\r\n case 'tr':\r\n let table = angular.element('