asset cleanup

This commit is contained in:
Nabeel Shahzad
2018-03-27 14:46:32 -05:00
parent 504b33ba2a
commit 8ad83a5f9f
16 changed files with 778 additions and 1782 deletions

View File

@@ -72,9 +72,7 @@
{{--<script src="https://cdn.rawgit.com/google/code-prettify/master/loader/run_prettify.js"></script>--}} {{--<script src="https://cdn.rawgit.com/google/code-prettify/master/loader/run_prettify.js"></script>--}}
<script src="{{ public_asset('/assets/system/js/installer-vendor.js') }}" type="text/javascript"></script> <script src="{{ public_asset('/assets/installer/js/vendor.js') }}" type="text/javascript"></script>
{{--<script src="/assets/frontend/js/core/bootstrap.min.js" type="text/javascript"></script>--}}
{{--<script src="/assets/frontend/js/now-ui-kit.js" type="text/javascript"></script>--}}
<script src="//cdnjs.cloudflare.com/ajax/libs/highlight.js/9.12.0/highlight.min.js"></script> <script src="//cdnjs.cloudflare.com/ajax/libs/highlight.js/9.12.0/highlight.min.js"></script>
<script> <script>

View File

@@ -17084,10 +17084,6 @@
}.call(this)); }.call(this));
//! moment.js //! moment.js
//! version : 2.20.1
//! authors : Tim Wood, Iskren Chernev, Moment.js contributors
//! license : MIT
//! momentjs.com
;(function (global, factory) { ;(function (global, factory) {
typeof exports === 'object' && typeof module !== 'undefined' ? module.exports = factory() : typeof exports === 'object' && typeof module !== 'undefined' ? module.exports = factory() :
@@ -17746,7 +17742,6 @@ var matchTimestamp = /[+-]?\d+(\.\d{1,3})?/; // 123456789 123456789.123
// includes scottish gaelic two word and hyphenated months // includes scottish gaelic two word and hyphenated months
var matchWord = /[0-9]{0,256}['a-z\u00A0-\u05FF\u0700-\uD7FF\uF900-\uFDCF\uFDF0-\uFF07\uFF10-\uFFEF]{1,256}|[\u0600-\u06FF\/]{1,256}(\s*?[\u0600-\u06FF]{1,256}){1,2}/i; var matchWord = /[0-9]{0,256}['a-z\u00A0-\u05FF\u0700-\uD7FF\uF900-\uFDCF\uFDF0-\uFF07\uFF10-\uFFEF]{1,256}|[\u0600-\u06FF\/]{1,256}(\s*?[\u0600-\u06FF]{1,256}){1,2}/i;
var regexes = {}; var regexes = {};
function addRegexToken (token, regex, strictRegex) { function addRegexToken (token, regex, strictRegex) {
@@ -18859,10 +18854,6 @@ function localeMeridiem (hours, minutes, isLower) {
// this rule. // this rule.
var getSetHour = makeGetSet('Hours', true); var getSetHour = makeGetSet('Hours', true);
// months
// week
// weekdays
// meridiem
var baseConfig = { var baseConfig = {
calendar: defaultCalendar, calendar: defaultCalendar,
longDateFormat: defaultLongDateFormat, longDateFormat: defaultLongDateFormat,
@@ -18916,7 +18907,7 @@ function chooseLocale(names) {
} }
i++; i++;
} }
return null; return globalLocale;
} }
function loadLocale(name) { function loadLocale(name) {
@@ -18951,6 +18942,12 @@ function getSetGlobalLocale (key, values) {
// moment.duration._locale = moment._locale = data; // moment.duration._locale = moment._locale = data;
globalLocale = data; globalLocale = data;
} }
else {
if ((typeof console !== 'undefined') && console.warn) {
//warn user if arguments are passed but the locale could not be set
console.warn('Locale ' + key + ' not found. Did you forget to load it?');
}
}
} }
return globalLocale._abbr; return globalLocale._abbr;
@@ -18958,7 +18955,7 @@ function getSetGlobalLocale (key, values) {
function defineLocale (name, config) { function defineLocale (name, config) {
if (config !== null) { if (config !== null) {
var parentConfig = baseConfig; var locale, parentConfig = baseConfig;
config.abbr = name; config.abbr = name;
if (locales[name] != null) { if (locales[name] != null) {
deprecateSimple('defineLocaleOverride', deprecateSimple('defineLocaleOverride',
@@ -18971,14 +18968,19 @@ function defineLocale (name, config) {
if (locales[config.parentLocale] != null) { if (locales[config.parentLocale] != null) {
parentConfig = locales[config.parentLocale]._config; parentConfig = locales[config.parentLocale]._config;
} else { } else {
if (!localeFamilies[config.parentLocale]) { locale = loadLocale(config.parentLocale);
localeFamilies[config.parentLocale] = []; if (locale != null) {
parentConfig = locale._config;
} else {
if (!localeFamilies[config.parentLocale]) {
localeFamilies[config.parentLocale] = [];
}
localeFamilies[config.parentLocale].push({
name: name,
config: config
});
return null;
} }
localeFamilies[config.parentLocale].push({
name: name,
config: config
});
return null;
} }
} }
locales[name] = new Locale(mergeConfigs(parentConfig, config)); locales[name] = new Locale(mergeConfigs(parentConfig, config));
@@ -20326,7 +20328,7 @@ function isSameOrBefore (input, units) {
function diff (input, units, asFloat) { function diff (input, units, asFloat) {
var that, var that,
zoneDelta, zoneDelta,
delta, output; output;
if (!this.isValid()) { if (!this.isValid()) {
return NaN; return NaN;
@@ -20399,7 +20401,7 @@ function toISOString(keepOffset) {
if (utc) { if (utc) {
return this.toDate().toISOString(); return this.toDate().toISOString();
} else { } else {
return new Date(this._d.valueOf()).toISOString().replace('Z', formatMoment(m, 'Z')); return new Date(this.valueOf() + this.utcOffset() * 60 * 1000).toISOString().replace('Z', formatMoment(m, 'Z'));
} }
} }
return formatMoment(m, utc ? 'YYYY-MM-DD[T]HH:mm:ss.SSS[Z]' : 'YYYY-MM-DD[T]HH:mm:ss.SSSZ'); return formatMoment(m, utc ? 'YYYY-MM-DD[T]HH:mm:ss.SSS[Z]' : 'YYYY-MM-DD[T]HH:mm:ss.SSSZ');
@@ -20953,48 +20955,26 @@ proto.toString = toString;
proto.unix = unix; proto.unix = unix;
proto.valueOf = valueOf; proto.valueOf = valueOf;
proto.creationData = creationData; proto.creationData = creationData;
// Year
proto.year = getSetYear; proto.year = getSetYear;
proto.isLeapYear = getIsLeapYear; proto.isLeapYear = getIsLeapYear;
// Week Year
proto.weekYear = getSetWeekYear; proto.weekYear = getSetWeekYear;
proto.isoWeekYear = getSetISOWeekYear; proto.isoWeekYear = getSetISOWeekYear;
// Quarter
proto.quarter = proto.quarters = getSetQuarter; proto.quarter = proto.quarters = getSetQuarter;
// Month
proto.month = getSetMonth; proto.month = getSetMonth;
proto.daysInMonth = getDaysInMonth; proto.daysInMonth = getDaysInMonth;
// Week
proto.week = proto.weeks = getSetWeek; proto.week = proto.weeks = getSetWeek;
proto.isoWeek = proto.isoWeeks = getSetISOWeek; proto.isoWeek = proto.isoWeeks = getSetISOWeek;
proto.weeksInYear = getWeeksInYear; proto.weeksInYear = getWeeksInYear;
proto.isoWeeksInYear = getISOWeeksInYear; proto.isoWeeksInYear = getISOWeeksInYear;
// Day
proto.date = getSetDayOfMonth; proto.date = getSetDayOfMonth;
proto.day = proto.days = getSetDayOfWeek; proto.day = proto.days = getSetDayOfWeek;
proto.weekday = getSetLocaleDayOfWeek; proto.weekday = getSetLocaleDayOfWeek;
proto.isoWeekday = getSetISODayOfWeek; proto.isoWeekday = getSetISODayOfWeek;
proto.dayOfYear = getSetDayOfYear; proto.dayOfYear = getSetDayOfYear;
// Hour
proto.hour = proto.hours = getSetHour; proto.hour = proto.hours = getSetHour;
// Minute
proto.minute = proto.minutes = getSetMinute; proto.minute = proto.minutes = getSetMinute;
// Second
proto.second = proto.seconds = getSetSecond; proto.second = proto.seconds = getSetSecond;
// Millisecond
proto.millisecond = proto.milliseconds = getSetMillisecond; proto.millisecond = proto.milliseconds = getSetMillisecond;
// Offset
proto.utcOffset = getSetOffset; proto.utcOffset = getSetOffset;
proto.utc = setOffsetToUTC; proto.utc = setOffsetToUTC;
proto.local = setOffsetToLocal; proto.local = setOffsetToLocal;
@@ -21005,12 +20985,8 @@ proto.isLocal = isLocal;
proto.isUtcOffset = isUtcOffset; proto.isUtcOffset = isUtcOffset;
proto.isUtc = isUtc; proto.isUtc = isUtc;
proto.isUTC = isUtc; proto.isUTC = isUtc;
// Timezone
proto.zoneAbbr = getZoneAbbr; proto.zoneAbbr = getZoneAbbr;
proto.zoneName = getZoneName; proto.zoneName = getZoneName;
// Deprecations
proto.dates = deprecate('dates accessor is deprecated. Use date instead.', getSetDayOfMonth); proto.dates = deprecate('dates accessor is deprecated. Use date instead.', getSetDayOfMonth);
proto.months = deprecate('months accessor is deprecated. Use month instead', getSetMonth); proto.months = deprecate('months accessor is deprecated. Use month instead', getSetMonth);
proto.years = deprecate('years accessor is deprecated. Use year instead', getSetYear); proto.years = deprecate('years accessor is deprecated. Use year instead', getSetYear);
@@ -21041,19 +21017,15 @@ proto$1.relativeTime = relativeTime;
proto$1.pastFuture = pastFuture; proto$1.pastFuture = pastFuture;
proto$1.set = set; proto$1.set = set;
// Month
proto$1.months = localeMonths; proto$1.months = localeMonths;
proto$1.monthsShort = localeMonthsShort; proto$1.monthsShort = localeMonthsShort;
proto$1.monthsParse = localeMonthsParse; proto$1.monthsParse = localeMonthsParse;
proto$1.monthsRegex = monthsRegex; proto$1.monthsRegex = monthsRegex;
proto$1.monthsShortRegex = monthsShortRegex; proto$1.monthsShortRegex = monthsShortRegex;
// Week
proto$1.week = localeWeek; proto$1.week = localeWeek;
proto$1.firstDayOfYear = localeFirstDayOfYear; proto$1.firstDayOfYear = localeFirstDayOfYear;
proto$1.firstDayOfWeek = localeFirstDayOfWeek; proto$1.firstDayOfWeek = localeFirstDayOfWeek;
// Day of Week
proto$1.weekdays = localeWeekdays; proto$1.weekdays = localeWeekdays;
proto$1.weekdaysMin = localeWeekdaysMin; proto$1.weekdaysMin = localeWeekdaysMin;
proto$1.weekdaysShort = localeWeekdaysShort; proto$1.weekdaysShort = localeWeekdaysShort;
@@ -21063,7 +21035,6 @@ proto$1.weekdaysRegex = weekdaysRegex;
proto$1.weekdaysShortRegex = weekdaysShortRegex; proto$1.weekdaysShortRegex = weekdaysShortRegex;
proto$1.weekdaysMinRegex = weekdaysMinRegex; proto$1.weekdaysMinRegex = weekdaysMinRegex;
// Hours
proto$1.isPM = localeIsPM; proto$1.isPM = localeIsPM;
proto$1.meridiem = localeMeridiem; proto$1.meridiem = localeMeridiem;
@@ -21170,6 +21141,7 @@ getSetGlobalLocale('en', {
}); });
// Side effect imports // Side effect imports
hooks.lang = deprecate('moment.lang is deprecated. Use moment.locale instead.', getSetGlobalLocale); hooks.lang = deprecate('moment.lang is deprecated. Use moment.locale instead.', getSetGlobalLocale);
hooks.langData = deprecate('moment.langData is deprecated. Use moment.localeData instead.', getLocale); hooks.langData = deprecate('moment.langData is deprecated. Use moment.localeData instead.', getLocale);
@@ -21545,7 +21517,6 @@ proto$2.toJSON = toISOString$1;
proto$2.locale = locale; proto$2.locale = locale;
proto$2.localeData = localeData; proto$2.localeData = localeData;
// Deprecations
proto$2.toIsoString = deprecate('toIsoString() is deprecated. Please use toISOString() instead (notice the capitals)', toISOString$1); proto$2.toIsoString = deprecate('toIsoString() is deprecated. Please use toISOString() instead (notice the capitals)', toISOString$1);
proto$2.lang = lang; proto$2.lang = lang;
@@ -21570,7 +21541,7 @@ addParseToken('x', function (input, array, config) {
// Side effect imports // Side effect imports
hooks.version = '2.20.1'; hooks.version = '2.21.0';
setHookCallback(createLocal); setHookCallback(createLocal);
@@ -25858,7 +25829,7 @@ if (typeof jQuery === 'undefined') {
/**! /**!
* @fileOverview Kickass library to create and place poppers near their reference elements. * @fileOverview Kickass library to create and place poppers near their reference elements.
* @version 1.13.0 * @version 1.14.0
* @license * @license
* Copyright (c) 2016 Federico Zivolo and contributors * Copyright (c) 2016 Federico Zivolo and contributors
* *
@@ -26006,13 +25977,48 @@ function getScrollParent(element) {
overflowX = _getStyleComputedProp.overflowX, overflowX = _getStyleComputedProp.overflowX,
overflowY = _getStyleComputedProp.overflowY; overflowY = _getStyleComputedProp.overflowY;
if (/(auto|scroll)/.test(overflow + overflowY + overflowX)) { if (/(auto|scroll|overlay)/.test(overflow + overflowY + overflowX)) {
return element; return element;
} }
return getScrollParent(getParentNode(element)); return getScrollParent(getParentNode(element));
} }
/**
* Tells if you are running Internet Explorer
* @method
* @memberof Popper.Utils
* @argument {number} version to check
* @returns {Boolean} isIE
*/
var cache = {};
var isIE = function () {
var version = arguments.length > 0 && arguments[0] !== undefined ? arguments[0] : 'all';
version = version.toString();
if (cache.hasOwnProperty(version)) {
return cache[version];
}
switch (version) {
case '11':
cache[version] = navigator.userAgent.indexOf('Trident') !== -1;
break;
case '10':
cache[version] = navigator.appVersion.indexOf('MSIE 10') !== -1;
break;
case 'all':
cache[version] = navigator.userAgent.indexOf('Trident') !== -1 || navigator.userAgent.indexOf('MSIE') !== -1;
break;
}
//Set IE
cache.all = cache.all || Object.keys(cache).some(function (key) {
return cache[key];
});
return cache[version];
};
/** /**
* Returns the offset parent of the given element * Returns the offset parent of the given element
* @method * @method
@@ -26021,16 +26027,23 @@ function getScrollParent(element) {
* @returns {Element} offset parent * @returns {Element} offset parent
*/ */
function getOffsetParent(element) { function getOffsetParent(element) {
if (!element) {
return document.documentElement;
}
var noOffsetParent = isIE(10) ? document.body : null;
// NOTE: 1 DOM access here // NOTE: 1 DOM access here
var offsetParent = element && element.offsetParent; var offsetParent = element.offsetParent;
// Skip hidden elements which don't have an offsetParent
while (offsetParent === noOffsetParent && element.nextElementSibling) {
offsetParent = (element = element.nextElementSibling).offsetParent;
}
var nodeName = offsetParent && offsetParent.nodeName; var nodeName = offsetParent && offsetParent.nodeName;
if (!nodeName || nodeName === 'BODY' || nodeName === 'HTML') { if (!nodeName || nodeName === 'BODY' || nodeName === 'HTML') {
if (element) { return element ? element.ownerDocument.documentElement : document.documentElement;
return element.ownerDocument.documentElement;
}
return document.documentElement;
} }
// .offsetParent will return the closest TD or TABLE in case // .offsetParent will return the closest TD or TABLE in case
@@ -26172,29 +26185,14 @@ function getBordersSize(styles, axis) {
return parseFloat(styles['border' + sideA + 'Width'], 10) + parseFloat(styles['border' + sideB + 'Width'], 10); return parseFloat(styles['border' + sideA + 'Width'], 10) + parseFloat(styles['border' + sideB + 'Width'], 10);
} }
/**
* Tells if you are running Internet Explorer 10
* @method
* @memberof Popper.Utils
* @returns {Boolean} isIE10
*/
var isIE10 = undefined;
var isIE10$1 = function () {
if (isIE10 === undefined) {
isIE10 = navigator.appVersion.indexOf('MSIE 10') !== -1;
}
return isIE10;
};
function getSize(axis, body, html, computedStyle) { function getSize(axis, body, html, computedStyle) {
return Math.max(body['offset' + axis], body['scroll' + axis], html['client' + axis], html['offset' + axis], html['scroll' + axis], isIE10$1() ? html['offset' + axis] + computedStyle['margin' + (axis === 'Height' ? 'Top' : 'Left')] + computedStyle['margin' + (axis === 'Height' ? 'Bottom' : 'Right')] : 0); return Math.max(body['offset' + axis], body['scroll' + axis], html['client' + axis], html['offset' + axis], html['scroll' + axis], isIE(10) ? html['offset' + axis] + computedStyle['margin' + (axis === 'Height' ? 'Top' : 'Left')] + computedStyle['margin' + (axis === 'Height' ? 'Bottom' : 'Right')] : 0);
} }
function getWindowSizes() { function getWindowSizes() {
var body = document.body; var body = document.body;
var html = document.documentElement; var html = document.documentElement;
var computedStyle = isIE10$1() && getComputedStyle(html); var computedStyle = isIE(10) && getComputedStyle(html);
return { return {
height: getSize('Height', body, html, computedStyle), height: getSize('Height', body, html, computedStyle),
@@ -26286,8 +26284,8 @@ function getBoundingClientRect(element) {
// IE10 10 FIX: Please, don't ask, the element isn't // IE10 10 FIX: Please, don't ask, the element isn't
// considered in DOM in some circumstances... // considered in DOM in some circumstances...
// This isn't reproducible in IE10 compatibility mode of IE11 // This isn't reproducible in IE10 compatibility mode of IE11
if (isIE10$1()) { try {
try { if (isIE(10)) {
rect = element.getBoundingClientRect(); rect = element.getBoundingClientRect();
var scrollTop = getScroll(element, 'top'); var scrollTop = getScroll(element, 'top');
var scrollLeft = getScroll(element, 'left'); var scrollLeft = getScroll(element, 'left');
@@ -26295,10 +26293,10 @@ function getBoundingClientRect(element) {
rect.left += scrollLeft; rect.left += scrollLeft;
rect.bottom += scrollTop; rect.bottom += scrollTop;
rect.right += scrollLeft; rect.right += scrollLeft;
} catch (err) {} } else {
} else { rect = element.getBoundingClientRect();
rect = element.getBoundingClientRect(); }
} } catch (e) {}
var result = { var result = {
left: rect.left, left: rect.left,
@@ -26330,7 +26328,9 @@ function getBoundingClientRect(element) {
} }
function getOffsetRectRelativeToArbitraryNode(children, parent) { function getOffsetRectRelativeToArbitraryNode(children, parent) {
var isIE10 = isIE10$1(); var fixedPosition = arguments.length > 2 && arguments[2] !== undefined ? arguments[2] : false;
var isIE10 = isIE(10);
var isHTML = parent.nodeName === 'HTML'; var isHTML = parent.nodeName === 'HTML';
var childrenRect = getBoundingClientRect(children); var childrenRect = getBoundingClientRect(children);
var parentRect = getBoundingClientRect(parent); var parentRect = getBoundingClientRect(parent);
@@ -26340,6 +26340,11 @@ function getOffsetRectRelativeToArbitraryNode(children, parent) {
var borderTopWidth = parseFloat(styles.borderTopWidth, 10); var borderTopWidth = parseFloat(styles.borderTopWidth, 10);
var borderLeftWidth = parseFloat(styles.borderLeftWidth, 10); var borderLeftWidth = parseFloat(styles.borderLeftWidth, 10);
// In cases where the parent is fixed, we must ignore negative scroll in offset calc
if (fixedPosition && parent.nodeName === 'HTML') {
parentRect.top = Math.max(parentRect.top, 0);
parentRect.left = Math.max(parentRect.left, 0);
}
var offsets = getClientRect({ var offsets = getClientRect({
top: childrenRect.top - parentRect.top - borderTopWidth, top: childrenRect.top - parentRect.top - borderTopWidth,
left: childrenRect.left - parentRect.left - borderLeftWidth, left: childrenRect.left - parentRect.left - borderLeftWidth,
@@ -26367,7 +26372,7 @@ function getOffsetRectRelativeToArbitraryNode(children, parent) {
offsets.marginLeft = marginLeft; offsets.marginLeft = marginLeft;
} }
if (isIE10 ? parent.contains(scrollParent) : parent === scrollParent && scrollParent.nodeName !== 'BODY') { if (isIE10 && !fixedPosition ? parent.contains(scrollParent) : parent === scrollParent && scrollParent.nodeName !== 'BODY') {
offsets = includeScroll(offsets, parent); offsets = includeScroll(offsets, parent);
} }
@@ -26375,13 +26380,15 @@ function getOffsetRectRelativeToArbitraryNode(children, parent) {
} }
function getViewportOffsetRectRelativeToArtbitraryNode(element) { function getViewportOffsetRectRelativeToArtbitraryNode(element) {
var excludeScroll = arguments.length > 1 && arguments[1] !== undefined ? arguments[1] : false;
var html = element.ownerDocument.documentElement; var html = element.ownerDocument.documentElement;
var relativeOffset = getOffsetRectRelativeToArbitraryNode(element, html); var relativeOffset = getOffsetRectRelativeToArbitraryNode(element, html);
var width = Math.max(html.clientWidth, window.innerWidth || 0); var width = Math.max(html.clientWidth, window.innerWidth || 0);
var height = Math.max(html.clientHeight, window.innerHeight || 0); var height = Math.max(html.clientHeight, window.innerHeight || 0);
var scrollTop = getScroll(html); var scrollTop = !excludeScroll ? getScroll(html) : 0;
var scrollLeft = getScroll(html, 'left'); var scrollLeft = !excludeScroll ? getScroll(html, 'left') : 0;
var offset = { var offset = {
top: scrollTop - relativeOffset.top + relativeOffset.marginTop, top: scrollTop - relativeOffset.top + relativeOffset.marginTop,
@@ -26412,6 +26419,26 @@ function isFixed(element) {
return isFixed(getParentNode(element)); return isFixed(getParentNode(element));
} }
/**
* Finds the first parent of an element that has a transformed property defined
* @method
* @memberof Popper.Utils
* @argument {Element} element
* @returns {Element} first transformed parent or documentElement
*/
function getFixedPositionOffsetParent(element) {
// This check is needed to avoid errors in case one of the elements isn't defined for any reason
if (!element || !element.parentElement || isIE()) {
return document.documentElement;
}
var el = element.parentElement;
while (el && getStyleComputedProperty(el, 'transform') === 'none') {
el = el.parentElement;
}
return el || document.documentElement;
}
/** /**
* Computed the boundaries limits and return them * Computed the boundaries limits and return them
* @method * @method
@@ -26420,16 +26447,20 @@ function isFixed(element) {
* @param {HTMLElement} reference * @param {HTMLElement} reference
* @param {number} padding * @param {number} padding
* @param {HTMLElement} boundariesElement - Element used to define the boundaries * @param {HTMLElement} boundariesElement - Element used to define the boundaries
* @param {Boolean} fixedPosition - Is in fixed position mode
* @returns {Object} Coordinates of the boundaries * @returns {Object} Coordinates of the boundaries
*/ */
function getBoundaries(popper, reference, padding, boundariesElement) { function getBoundaries(popper, reference, padding, boundariesElement) {
var fixedPosition = arguments.length > 4 && arguments[4] !== undefined ? arguments[4] : false;
// NOTE: 1 DOM access here // NOTE: 1 DOM access here
var boundaries = { top: 0, left: 0 }; var boundaries = { top: 0, left: 0 };
var offsetParent = findCommonOffsetParent(popper, reference); var offsetParent = fixedPosition ? getFixedPositionOffsetParent(popper) : findCommonOffsetParent(popper, reference);
// Handle viewport case // Handle viewport case
if (boundariesElement === 'viewport') { if (boundariesElement === 'viewport') {
boundaries = getViewportOffsetRectRelativeToArtbitraryNode(offsetParent); boundaries = getViewportOffsetRectRelativeToArtbitraryNode(offsetParent, fixedPosition);
} else { } else {
// Handle other cases based on DOM element used as boundaries // Handle other cases based on DOM element used as boundaries
var boundariesNode = void 0; var boundariesNode = void 0;
@@ -26444,7 +26475,7 @@ function getBoundaries(popper, reference, padding, boundariesElement) {
boundariesNode = boundariesElement; boundariesNode = boundariesElement;
} }
var offsets = getOffsetRectRelativeToArbitraryNode(boundariesNode, offsetParent); var offsets = getOffsetRectRelativeToArbitraryNode(boundariesNode, offsetParent, fixedPosition);
// In case of HTML, we need a different computation // In case of HTML, we need a different computation
if (boundariesNode.nodeName === 'HTML' && !isFixed(offsetParent)) { if (boundariesNode.nodeName === 'HTML' && !isFixed(offsetParent)) {
@@ -26545,11 +26576,14 @@ function computeAutoPlacement(placement, refRect, popper, reference, boundariesE
* @param {Object} state * @param {Object} state
* @param {Element} popper - the popper element * @param {Element} popper - the popper element
* @param {Element} reference - the reference element (the popper will be relative to this) * @param {Element} reference - the reference element (the popper will be relative to this)
* @param {Element} fixedPosition - is in fixed position mode
* @returns {Object} An object containing the offsets which will be applied to the popper * @returns {Object} An object containing the offsets which will be applied to the popper
*/ */
function getReferenceOffsets(state, popper, reference) { function getReferenceOffsets(state, popper, reference) {
var commonOffsetParent = findCommonOffsetParent(popper, reference); var fixedPosition = arguments.length > 3 && arguments[3] !== undefined ? arguments[3] : null;
return getOffsetRectRelativeToArbitraryNode(reference, commonOffsetParent);
var commonOffsetParent = fixedPosition ? getFixedPositionOffsetParent(popper) : findCommonOffsetParent(popper, reference);
return getOffsetRectRelativeToArbitraryNode(reference, commonOffsetParent, fixedPosition);
} }
/** /**
@@ -26722,7 +26756,7 @@ function update() {
}; };
// compute reference element offsets // compute reference element offsets
data.offsets.reference = getReferenceOffsets(this.state, this.popper, this.reference); data.offsets.reference = getReferenceOffsets(this.state, this.popper, this.reference, this.options.positionFixed);
// compute auto placement, store placement inside the data object, // compute auto placement, store placement inside the data object,
// modifiers will be able to edit `placement` if needed // modifiers will be able to edit `placement` if needed
@@ -26732,9 +26766,11 @@ function update() {
// store the computed placement inside `originalPlacement` // store the computed placement inside `originalPlacement`
data.originalPlacement = data.placement; data.originalPlacement = data.placement;
data.positionFixed = this.options.positionFixed;
// compute the popper offsets // compute the popper offsets
data.offsets.popper = getPopperOffsets(this.popper, data.offsets.reference, data.placement); data.offsets.popper = getPopperOffsets(this.popper, data.offsets.reference, data.placement);
data.offsets.popper.position = 'absolute'; data.offsets.popper.position = this.options.positionFixed ? 'fixed' : 'absolute';
// run the modifiers // run the modifiers
data = runModifiers(this.modifiers, data); data = runModifiers(this.modifiers, data);
@@ -26774,7 +26810,7 @@ function getSupportedPropertyName(property) {
var prefixes = [false, 'ms', 'Webkit', 'Moz', 'O']; var prefixes = [false, 'ms', 'Webkit', 'Moz', 'O'];
var upperProp = property.charAt(0).toUpperCase() + property.slice(1); var upperProp = property.charAt(0).toUpperCase() + property.slice(1);
for (var i = 0; i < prefixes.length - 1; i++) { for (var i = 0; i < prefixes.length; i++) {
var prefix = prefixes[i]; var prefix = prefixes[i];
var toCheck = prefix ? '' + prefix + upperProp : property; var toCheck = prefix ? '' + prefix + upperProp : property;
if (typeof document.body.style[toCheck] !== 'undefined') { if (typeof document.body.style[toCheck] !== 'undefined') {
@@ -26795,9 +26831,12 @@ function destroy() {
// touch DOM only if `applyStyle` modifier is enabled // touch DOM only if `applyStyle` modifier is enabled
if (isModifierEnabled(this.modifiers, 'applyStyle')) { if (isModifierEnabled(this.modifiers, 'applyStyle')) {
this.popper.removeAttribute('x-placement'); this.popper.removeAttribute('x-placement');
this.popper.style.left = '';
this.popper.style.position = ''; this.popper.style.position = '';
this.popper.style.top = ''; this.popper.style.top = '';
this.popper.style.left = '';
this.popper.style.right = '';
this.popper.style.bottom = '';
this.popper.style.willChange = '';
this.popper.style[getSupportedPropertyName('transform')] = ''; this.popper.style[getSupportedPropertyName('transform')] = '';
} }
@@ -26985,12 +27024,12 @@ function applyStyle(data) {
* @method * @method
* @memberof Popper.modifiers * @memberof Popper.modifiers
* @param {HTMLElement} reference - The reference element used to position the popper * @param {HTMLElement} reference - The reference element used to position the popper
* @param {HTMLElement} popper - The HTML element used as popper. * @param {HTMLElement} popper - The HTML element used as popper
* @param {Object} options - Popper.js options * @param {Object} options - Popper.js options
*/ */
function applyStyleOnLoad(reference, popper, options, modifierOptions, state) { function applyStyleOnLoad(reference, popper, options, modifierOptions, state) {
// compute reference element offsets // compute reference element offsets
var referenceOffsets = getReferenceOffsets(state, popper, reference); var referenceOffsets = getReferenceOffsets(state, popper, reference, options.positionFixed);
// compute auto placement, store placement inside the data object, // compute auto placement, store placement inside the data object,
// modifiers will be able to edit `placement` if needed // modifiers will be able to edit `placement` if needed
@@ -27001,7 +27040,7 @@ function applyStyleOnLoad(reference, popper, options, modifierOptions, state) {
// Apply `position` to popper before anything else because // Apply `position` to popper before anything else because
// without the position applied we can't guarantee correct computations // without the position applied we can't guarantee correct computations
setStyles(popper, { position: 'absolute' }); setStyles(popper, { position: options.positionFixed ? 'fixed' : 'absolute' });
return options; return options;
} }
@@ -27304,7 +27343,7 @@ function flip(data, options) {
return data; return data;
} }
var boundaries = getBoundaries(data.instance.popper, data.instance.reference, options.padding, options.boundariesElement); var boundaries = getBoundaries(data.instance.popper, data.instance.reference, options.padding, options.boundariesElement, data.positionFixed);
var placement = data.placement.split('-')[0]; var placement = data.placement.split('-')[0];
var placementOpposite = getOppositePlacement(placement); var placementOpposite = getOppositePlacement(placement);
@@ -27596,7 +27635,7 @@ function preventOverflow(data, options) {
boundariesElement = getOffsetParent(boundariesElement); boundariesElement = getOffsetParent(boundariesElement);
} }
var boundaries = getBoundaries(data.instance.popper, data.instance.reference, options.padding, boundariesElement); var boundaries = getBoundaries(data.instance.popper, data.instance.reference, options.padding, boundariesElement, data.positionFixed);
options.boundaries = boundaries; options.boundaries = boundaries;
var order = options.priority; var order = options.priority;
@@ -28093,6 +28132,12 @@ var Defaults = {
*/ */
placement: 'bottom', placement: 'bottom',
/**
* Set this to true if you want popper to position it self in 'fixed' mode
* @prop {Boolean} positionFixed=false
*/
positionFixed: false,
/** /**
* Whether events (resize, scroll) are initially enabled * Whether events (resize, scroll) are initially enabled
* @prop {Boolean} eventsEnabled=true * @prop {Boolean} eventsEnabled=true
@@ -28304,7 +28349,7 @@ return Popper;
/**! /**!
* @fileOverview Kickass library to create and place poppers near their reference elements. * @fileOverview Kickass library to create and place poppers near their reference elements.
* @version 1.13.0 * @version 1.14.0
* @license * @license
* Copyright (c) 2016 Federico Zivolo and contributors * Copyright (c) 2016 Federico Zivolo and contributors
* *
@@ -28390,13 +28435,48 @@ function getScrollParent(element) {
overflowX = _getStyleComputedProp.overflowX, overflowX = _getStyleComputedProp.overflowX,
overflowY = _getStyleComputedProp.overflowY; overflowY = _getStyleComputedProp.overflowY;
if (/(auto|scroll)/.test(overflow + overflowY + overflowX)) { if (/(auto|scroll|overlay)/.test(overflow + overflowY + overflowX)) {
return element; return element;
} }
return getScrollParent(getParentNode(element)); return getScrollParent(getParentNode(element));
} }
/**
* Tells if you are running Internet Explorer
* @method
* @memberof Popper.Utils
* @argument {number} version to check
* @returns {Boolean} isIE
*/
var cache = {};
var isIE = function () {
var version = arguments.length > 0 && arguments[0] !== undefined ? arguments[0] : 'all';
version = version.toString();
if (cache.hasOwnProperty(version)) {
return cache[version];
}
switch (version) {
case '11':
cache[version] = navigator.userAgent.indexOf('Trident') !== -1;
break;
case '10':
cache[version] = navigator.appVersion.indexOf('MSIE 10') !== -1;
break;
case 'all':
cache[version] = navigator.userAgent.indexOf('Trident') !== -1 || navigator.userAgent.indexOf('MSIE') !== -1;
break;
}
//Set IE
cache.all = cache.all || Object.keys(cache).some(function (key) {
return cache[key];
});
return cache[version];
};
/** /**
* Returns the offset parent of the given element * Returns the offset parent of the given element
* @method * @method
@@ -28405,16 +28485,23 @@ function getScrollParent(element) {
* @returns {Element} offset parent * @returns {Element} offset parent
*/ */
function getOffsetParent(element) { function getOffsetParent(element) {
if (!element) {
return document.documentElement;
}
var noOffsetParent = isIE(10) ? document.body : null;
// NOTE: 1 DOM access here // NOTE: 1 DOM access here
var offsetParent = element && element.offsetParent; var offsetParent = element.offsetParent;
// Skip hidden elements which don't have an offsetParent
while (offsetParent === noOffsetParent && element.nextElementSibling) {
offsetParent = (element = element.nextElementSibling).offsetParent;
}
var nodeName = offsetParent && offsetParent.nodeName; var nodeName = offsetParent && offsetParent.nodeName;
if (!nodeName || nodeName === 'BODY' || nodeName === 'HTML') { if (!nodeName || nodeName === 'BODY' || nodeName === 'HTML') {
if (element) { return element ? element.ownerDocument.documentElement : document.documentElement;
return element.ownerDocument.documentElement;
}
return document.documentElement;
} }
// .offsetParent will return the closest TD or TABLE in case // .offsetParent will return the closest TD or TABLE in case
@@ -28556,29 +28643,14 @@ function getBordersSize(styles, axis) {
return parseFloat(styles['border' + sideA + 'Width'], 10) + parseFloat(styles['border' + sideB + 'Width'], 10); return parseFloat(styles['border' + sideA + 'Width'], 10) + parseFloat(styles['border' + sideB + 'Width'], 10);
} }
/**
* Tells if you are running Internet Explorer 10
* @method
* @memberof Popper.Utils
* @returns {Boolean} isIE10
*/
var isIE10 = undefined;
var isIE10$1 = function () {
if (isIE10 === undefined) {
isIE10 = navigator.appVersion.indexOf('MSIE 10') !== -1;
}
return isIE10;
};
function getSize(axis, body, html, computedStyle) { function getSize(axis, body, html, computedStyle) {
return Math.max(body['offset' + axis], body['scroll' + axis], html['client' + axis], html['offset' + axis], html['scroll' + axis], isIE10$1() ? html['offset' + axis] + computedStyle['margin' + (axis === 'Height' ? 'Top' : 'Left')] + computedStyle['margin' + (axis === 'Height' ? 'Bottom' : 'Right')] : 0); return Math.max(body['offset' + axis], body['scroll' + axis], html['client' + axis], html['offset' + axis], html['scroll' + axis], isIE(10) ? html['offset' + axis] + computedStyle['margin' + (axis === 'Height' ? 'Top' : 'Left')] + computedStyle['margin' + (axis === 'Height' ? 'Bottom' : 'Right')] : 0);
} }
function getWindowSizes() { function getWindowSizes() {
var body = document.body; var body = document.body;
var html = document.documentElement; var html = document.documentElement;
var computedStyle = isIE10$1() && getComputedStyle(html); var computedStyle = isIE(10) && getComputedStyle(html);
return { return {
height: getSize('Height', body, html, computedStyle), height: getSize('Height', body, html, computedStyle),
@@ -28627,8 +28699,8 @@ function getBoundingClientRect(element) {
// IE10 10 FIX: Please, don't ask, the element isn't // IE10 10 FIX: Please, don't ask, the element isn't
// considered in DOM in some circumstances... // considered in DOM in some circumstances...
// This isn't reproducible in IE10 compatibility mode of IE11 // This isn't reproducible in IE10 compatibility mode of IE11
if (isIE10$1()) { try {
try { if (isIE(10)) {
rect = element.getBoundingClientRect(); rect = element.getBoundingClientRect();
var scrollTop = getScroll(element, 'top'); var scrollTop = getScroll(element, 'top');
var scrollLeft = getScroll(element, 'left'); var scrollLeft = getScroll(element, 'left');
@@ -28636,10 +28708,10 @@ function getBoundingClientRect(element) {
rect.left += scrollLeft; rect.left += scrollLeft;
rect.bottom += scrollTop; rect.bottom += scrollTop;
rect.right += scrollLeft; rect.right += scrollLeft;
} catch (err) {} } else {
} else { rect = element.getBoundingClientRect();
rect = element.getBoundingClientRect(); }
} } catch (e) {}
var result = { var result = {
left: rect.left, left: rect.left,
@@ -28671,7 +28743,9 @@ function getBoundingClientRect(element) {
} }
function getOffsetRectRelativeToArbitraryNode(children, parent) { function getOffsetRectRelativeToArbitraryNode(children, parent) {
var isIE10 = isIE10$1(); var fixedPosition = arguments.length > 2 && arguments[2] !== undefined ? arguments[2] : false;
var isIE10 = isIE(10);
var isHTML = parent.nodeName === 'HTML'; var isHTML = parent.nodeName === 'HTML';
var childrenRect = getBoundingClientRect(children); var childrenRect = getBoundingClientRect(children);
var parentRect = getBoundingClientRect(parent); var parentRect = getBoundingClientRect(parent);
@@ -28681,6 +28755,11 @@ function getOffsetRectRelativeToArbitraryNode(children, parent) {
var borderTopWidth = parseFloat(styles.borderTopWidth, 10); var borderTopWidth = parseFloat(styles.borderTopWidth, 10);
var borderLeftWidth = parseFloat(styles.borderLeftWidth, 10); var borderLeftWidth = parseFloat(styles.borderLeftWidth, 10);
// In cases where the parent is fixed, we must ignore negative scroll in offset calc
if (fixedPosition && parent.nodeName === 'HTML') {
parentRect.top = Math.max(parentRect.top, 0);
parentRect.left = Math.max(parentRect.left, 0);
}
var offsets = getClientRect({ var offsets = getClientRect({
top: childrenRect.top - parentRect.top - borderTopWidth, top: childrenRect.top - parentRect.top - borderTopWidth,
left: childrenRect.left - parentRect.left - borderLeftWidth, left: childrenRect.left - parentRect.left - borderLeftWidth,
@@ -28708,7 +28787,7 @@ function getOffsetRectRelativeToArbitraryNode(children, parent) {
offsets.marginLeft = marginLeft; offsets.marginLeft = marginLeft;
} }
if (isIE10 ? parent.contains(scrollParent) : parent === scrollParent && scrollParent.nodeName !== 'BODY') { if (isIE10 && !fixedPosition ? parent.contains(scrollParent) : parent === scrollParent && scrollParent.nodeName !== 'BODY') {
offsets = includeScroll(offsets, parent); offsets = includeScroll(offsets, parent);
} }
@@ -28716,13 +28795,15 @@ function getOffsetRectRelativeToArbitraryNode(children, parent) {
} }
function getViewportOffsetRectRelativeToArtbitraryNode(element) { function getViewportOffsetRectRelativeToArtbitraryNode(element) {
var excludeScroll = arguments.length > 1 && arguments[1] !== undefined ? arguments[1] : false;
var html = element.ownerDocument.documentElement; var html = element.ownerDocument.documentElement;
var relativeOffset = getOffsetRectRelativeToArbitraryNode(element, html); var relativeOffset = getOffsetRectRelativeToArbitraryNode(element, html);
var width = Math.max(html.clientWidth, window.innerWidth || 0); var width = Math.max(html.clientWidth, window.innerWidth || 0);
var height = Math.max(html.clientHeight, window.innerHeight || 0); var height = Math.max(html.clientHeight, window.innerHeight || 0);
var scrollTop = getScroll(html); var scrollTop = !excludeScroll ? getScroll(html) : 0;
var scrollLeft = getScroll(html, 'left'); var scrollLeft = !excludeScroll ? getScroll(html, 'left') : 0;
var offset = { var offset = {
top: scrollTop - relativeOffset.top + relativeOffset.marginTop, top: scrollTop - relativeOffset.top + relativeOffset.marginTop,
@@ -28753,6 +28834,26 @@ function isFixed(element) {
return isFixed(getParentNode(element)); return isFixed(getParentNode(element));
} }
/**
* Finds the first parent of an element that has a transformed property defined
* @method
* @memberof Popper.Utils
* @argument {Element} element
* @returns {Element} first transformed parent or documentElement
*/
function getFixedPositionOffsetParent(element) {
// This check is needed to avoid errors in case one of the elements isn't defined for any reason
if (!element || !element.parentElement || isIE()) {
return document.documentElement;
}
var el = element.parentElement;
while (el && getStyleComputedProperty(el, 'transform') === 'none') {
el = el.parentElement;
}
return el || document.documentElement;
}
/** /**
* Computed the boundaries limits and return them * Computed the boundaries limits and return them
* @method * @method
@@ -28761,16 +28862,20 @@ function isFixed(element) {
* @param {HTMLElement} reference * @param {HTMLElement} reference
* @param {number} padding * @param {number} padding
* @param {HTMLElement} boundariesElement - Element used to define the boundaries * @param {HTMLElement} boundariesElement - Element used to define the boundaries
* @param {Boolean} fixedPosition - Is in fixed position mode
* @returns {Object} Coordinates of the boundaries * @returns {Object} Coordinates of the boundaries
*/ */
function getBoundaries(popper, reference, padding, boundariesElement) { function getBoundaries(popper, reference, padding, boundariesElement) {
var fixedPosition = arguments.length > 4 && arguments[4] !== undefined ? arguments[4] : false;
// NOTE: 1 DOM access here // NOTE: 1 DOM access here
var boundaries = { top: 0, left: 0 }; var boundaries = { top: 0, left: 0 };
var offsetParent = findCommonOffsetParent(popper, reference); var offsetParent = fixedPosition ? getFixedPositionOffsetParent(popper) : findCommonOffsetParent(popper, reference);
// Handle viewport case // Handle viewport case
if (boundariesElement === 'viewport') { if (boundariesElement === 'viewport') {
boundaries = getViewportOffsetRectRelativeToArtbitraryNode(offsetParent); boundaries = getViewportOffsetRectRelativeToArtbitraryNode(offsetParent, fixedPosition);
} else { } else {
// Handle other cases based on DOM element used as boundaries // Handle other cases based on DOM element used as boundaries
var boundariesNode = void 0; var boundariesNode = void 0;
@@ -28785,7 +28890,7 @@ function getBoundaries(popper, reference, padding, boundariesElement) {
boundariesNode = boundariesElement; boundariesNode = boundariesElement;
} }
var offsets = getOffsetRectRelativeToArbitraryNode(boundariesNode, offsetParent); var offsets = getOffsetRectRelativeToArbitraryNode(boundariesNode, offsetParent, fixedPosition);
// In case of HTML, we need a different computation // In case of HTML, we need a different computation
if (boundariesNode.nodeName === 'HTML' && !isFixed(offsetParent)) { if (boundariesNode.nodeName === 'HTML' && !isFixed(offsetParent)) {
@@ -29083,11 +29188,14 @@ function getPopperOffsets(popper, referenceOffsets, placement) {
* @param {Object} state * @param {Object} state
* @param {Element} popper - the popper element * @param {Element} popper - the popper element
* @param {Element} reference - the reference element (the popper will be relative to this) * @param {Element} reference - the reference element (the popper will be relative to this)
* @param {Element} fixedPosition - is in fixed position mode
* @returns {Object} An object containing the offsets which will be applied to the popper * @returns {Object} An object containing the offsets which will be applied to the popper
*/ */
function getReferenceOffsets(state, popper, reference) { function getReferenceOffsets(state, popper, reference) {
var commonOffsetParent = findCommonOffsetParent(popper, reference); var fixedPosition = arguments.length > 3 && arguments[3] !== undefined ? arguments[3] : null;
return getOffsetRectRelativeToArbitraryNode(reference, commonOffsetParent);
var commonOffsetParent = fixedPosition ? getFixedPositionOffsetParent(popper) : findCommonOffsetParent(popper, reference);
return getOffsetRectRelativeToArbitraryNode(reference, commonOffsetParent, fixedPosition);
} }
/** /**
@@ -29101,7 +29209,7 @@ function getSupportedPropertyName(property) {
var prefixes = [false, 'ms', 'Webkit', 'Moz', 'O']; var prefixes = [false, 'ms', 'Webkit', 'Moz', 'O'];
var upperProp = property.charAt(0).toUpperCase() + property.slice(1); var upperProp = property.charAt(0).toUpperCase() + property.slice(1);
for (var i = 0; i < prefixes.length - 1; i++) { for (var i = 0; i < prefixes.length; i++) {
var prefix = prefixes[i]; var prefix = prefixes[i];
var toCheck = prefix ? '' + prefix + upperProp : property; var toCheck = prefix ? '' + prefix + upperProp : property;
if (typeof document.body.style[toCheck] !== 'undefined') { if (typeof document.body.style[toCheck] !== 'undefined') {

File diff suppressed because one or more lines are too long

File diff suppressed because one or more lines are too long

View File

@@ -31415,7 +31415,7 @@ if (typeof jQuery === 'undefined') {
/**! /**!
* @fileOverview Kickass library to create and place poppers near their reference elements. * @fileOverview Kickass library to create and place poppers near their reference elements.
* @version 1.13.0 * @version 1.14.0
* @license * @license
* Copyright (c) 2016 Federico Zivolo and contributors * Copyright (c) 2016 Federico Zivolo and contributors
* *
@@ -31563,13 +31563,48 @@ function getScrollParent(element) {
overflowX = _getStyleComputedProp.overflowX, overflowX = _getStyleComputedProp.overflowX,
overflowY = _getStyleComputedProp.overflowY; overflowY = _getStyleComputedProp.overflowY;
if (/(auto|scroll)/.test(overflow + overflowY + overflowX)) { if (/(auto|scroll|overlay)/.test(overflow + overflowY + overflowX)) {
return element; return element;
} }
return getScrollParent(getParentNode(element)); return getScrollParent(getParentNode(element));
} }
/**
* Tells if you are running Internet Explorer
* @method
* @memberof Popper.Utils
* @argument {number} version to check
* @returns {Boolean} isIE
*/
var cache = {};
var isIE = function () {
var version = arguments.length > 0 && arguments[0] !== undefined ? arguments[0] : 'all';
version = version.toString();
if (cache.hasOwnProperty(version)) {
return cache[version];
}
switch (version) {
case '11':
cache[version] = navigator.userAgent.indexOf('Trident') !== -1;
break;
case '10':
cache[version] = navigator.appVersion.indexOf('MSIE 10') !== -1;
break;
case 'all':
cache[version] = navigator.userAgent.indexOf('Trident') !== -1 || navigator.userAgent.indexOf('MSIE') !== -1;
break;
}
//Set IE
cache.all = cache.all || Object.keys(cache).some(function (key) {
return cache[key];
});
return cache[version];
};
/** /**
* Returns the offset parent of the given element * Returns the offset parent of the given element
* @method * @method
@@ -31578,16 +31613,23 @@ function getScrollParent(element) {
* @returns {Element} offset parent * @returns {Element} offset parent
*/ */
function getOffsetParent(element) { function getOffsetParent(element) {
if (!element) {
return document.documentElement;
}
var noOffsetParent = isIE(10) ? document.body : null;
// NOTE: 1 DOM access here // NOTE: 1 DOM access here
var offsetParent = element && element.offsetParent; var offsetParent = element.offsetParent;
// Skip hidden elements which don't have an offsetParent
while (offsetParent === noOffsetParent && element.nextElementSibling) {
offsetParent = (element = element.nextElementSibling).offsetParent;
}
var nodeName = offsetParent && offsetParent.nodeName; var nodeName = offsetParent && offsetParent.nodeName;
if (!nodeName || nodeName === 'BODY' || nodeName === 'HTML') { if (!nodeName || nodeName === 'BODY' || nodeName === 'HTML') {
if (element) { return element ? element.ownerDocument.documentElement : document.documentElement;
return element.ownerDocument.documentElement;
}
return document.documentElement;
} }
// .offsetParent will return the closest TD or TABLE in case // .offsetParent will return the closest TD or TABLE in case
@@ -31729,29 +31771,14 @@ function getBordersSize(styles, axis) {
return parseFloat(styles['border' + sideA + 'Width'], 10) + parseFloat(styles['border' + sideB + 'Width'], 10); return parseFloat(styles['border' + sideA + 'Width'], 10) + parseFloat(styles['border' + sideB + 'Width'], 10);
} }
/**
* Tells if you are running Internet Explorer 10
* @method
* @memberof Popper.Utils
* @returns {Boolean} isIE10
*/
var isIE10 = undefined;
var isIE10$1 = function () {
if (isIE10 === undefined) {
isIE10 = navigator.appVersion.indexOf('MSIE 10') !== -1;
}
return isIE10;
};
function getSize(axis, body, html, computedStyle) { function getSize(axis, body, html, computedStyle) {
return Math.max(body['offset' + axis], body['scroll' + axis], html['client' + axis], html['offset' + axis], html['scroll' + axis], isIE10$1() ? html['offset' + axis] + computedStyle['margin' + (axis === 'Height' ? 'Top' : 'Left')] + computedStyle['margin' + (axis === 'Height' ? 'Bottom' : 'Right')] : 0); return Math.max(body['offset' + axis], body['scroll' + axis], html['client' + axis], html['offset' + axis], html['scroll' + axis], isIE(10) ? html['offset' + axis] + computedStyle['margin' + (axis === 'Height' ? 'Top' : 'Left')] + computedStyle['margin' + (axis === 'Height' ? 'Bottom' : 'Right')] : 0);
} }
function getWindowSizes() { function getWindowSizes() {
var body = document.body; var body = document.body;
var html = document.documentElement; var html = document.documentElement;
var computedStyle = isIE10$1() && getComputedStyle(html); var computedStyle = isIE(10) && getComputedStyle(html);
return { return {
height: getSize('Height', body, html, computedStyle), height: getSize('Height', body, html, computedStyle),
@@ -31843,8 +31870,8 @@ function getBoundingClientRect(element) {
// IE10 10 FIX: Please, don't ask, the element isn't // IE10 10 FIX: Please, don't ask, the element isn't
// considered in DOM in some circumstances... // considered in DOM in some circumstances...
// This isn't reproducible in IE10 compatibility mode of IE11 // This isn't reproducible in IE10 compatibility mode of IE11
if (isIE10$1()) { try {
try { if (isIE(10)) {
rect = element.getBoundingClientRect(); rect = element.getBoundingClientRect();
var scrollTop = getScroll(element, 'top'); var scrollTop = getScroll(element, 'top');
var scrollLeft = getScroll(element, 'left'); var scrollLeft = getScroll(element, 'left');
@@ -31852,10 +31879,10 @@ function getBoundingClientRect(element) {
rect.left += scrollLeft; rect.left += scrollLeft;
rect.bottom += scrollTop; rect.bottom += scrollTop;
rect.right += scrollLeft; rect.right += scrollLeft;
} catch (err) {} } else {
} else { rect = element.getBoundingClientRect();
rect = element.getBoundingClientRect(); }
} } catch (e) {}
var result = { var result = {
left: rect.left, left: rect.left,
@@ -31887,7 +31914,9 @@ function getBoundingClientRect(element) {
} }
function getOffsetRectRelativeToArbitraryNode(children, parent) { function getOffsetRectRelativeToArbitraryNode(children, parent) {
var isIE10 = isIE10$1(); var fixedPosition = arguments.length > 2 && arguments[2] !== undefined ? arguments[2] : false;
var isIE10 = isIE(10);
var isHTML = parent.nodeName === 'HTML'; var isHTML = parent.nodeName === 'HTML';
var childrenRect = getBoundingClientRect(children); var childrenRect = getBoundingClientRect(children);
var parentRect = getBoundingClientRect(parent); var parentRect = getBoundingClientRect(parent);
@@ -31897,6 +31926,11 @@ function getOffsetRectRelativeToArbitraryNode(children, parent) {
var borderTopWidth = parseFloat(styles.borderTopWidth, 10); var borderTopWidth = parseFloat(styles.borderTopWidth, 10);
var borderLeftWidth = parseFloat(styles.borderLeftWidth, 10); var borderLeftWidth = parseFloat(styles.borderLeftWidth, 10);
// In cases where the parent is fixed, we must ignore negative scroll in offset calc
if (fixedPosition && parent.nodeName === 'HTML') {
parentRect.top = Math.max(parentRect.top, 0);
parentRect.left = Math.max(parentRect.left, 0);
}
var offsets = getClientRect({ var offsets = getClientRect({
top: childrenRect.top - parentRect.top - borderTopWidth, top: childrenRect.top - parentRect.top - borderTopWidth,
left: childrenRect.left - parentRect.left - borderLeftWidth, left: childrenRect.left - parentRect.left - borderLeftWidth,
@@ -31924,7 +31958,7 @@ function getOffsetRectRelativeToArbitraryNode(children, parent) {
offsets.marginLeft = marginLeft; offsets.marginLeft = marginLeft;
} }
if (isIE10 ? parent.contains(scrollParent) : parent === scrollParent && scrollParent.nodeName !== 'BODY') { if (isIE10 && !fixedPosition ? parent.contains(scrollParent) : parent === scrollParent && scrollParent.nodeName !== 'BODY') {
offsets = includeScroll(offsets, parent); offsets = includeScroll(offsets, parent);
} }
@@ -31932,13 +31966,15 @@ function getOffsetRectRelativeToArbitraryNode(children, parent) {
} }
function getViewportOffsetRectRelativeToArtbitraryNode(element) { function getViewportOffsetRectRelativeToArtbitraryNode(element) {
var excludeScroll = arguments.length > 1 && arguments[1] !== undefined ? arguments[1] : false;
var html = element.ownerDocument.documentElement; var html = element.ownerDocument.documentElement;
var relativeOffset = getOffsetRectRelativeToArbitraryNode(element, html); var relativeOffset = getOffsetRectRelativeToArbitraryNode(element, html);
var width = Math.max(html.clientWidth, window.innerWidth || 0); var width = Math.max(html.clientWidth, window.innerWidth || 0);
var height = Math.max(html.clientHeight, window.innerHeight || 0); var height = Math.max(html.clientHeight, window.innerHeight || 0);
var scrollTop = getScroll(html); var scrollTop = !excludeScroll ? getScroll(html) : 0;
var scrollLeft = getScroll(html, 'left'); var scrollLeft = !excludeScroll ? getScroll(html, 'left') : 0;
var offset = { var offset = {
top: scrollTop - relativeOffset.top + relativeOffset.marginTop, top: scrollTop - relativeOffset.top + relativeOffset.marginTop,
@@ -31969,6 +32005,26 @@ function isFixed(element) {
return isFixed(getParentNode(element)); return isFixed(getParentNode(element));
} }
/**
* Finds the first parent of an element that has a transformed property defined
* @method
* @memberof Popper.Utils
* @argument {Element} element
* @returns {Element} first transformed parent or documentElement
*/
function getFixedPositionOffsetParent(element) {
// This check is needed to avoid errors in case one of the elements isn't defined for any reason
if (!element || !element.parentElement || isIE()) {
return document.documentElement;
}
var el = element.parentElement;
while (el && getStyleComputedProperty(el, 'transform') === 'none') {
el = el.parentElement;
}
return el || document.documentElement;
}
/** /**
* Computed the boundaries limits and return them * Computed the boundaries limits and return them
* @method * @method
@@ -31977,16 +32033,20 @@ function isFixed(element) {
* @param {HTMLElement} reference * @param {HTMLElement} reference
* @param {number} padding * @param {number} padding
* @param {HTMLElement} boundariesElement - Element used to define the boundaries * @param {HTMLElement} boundariesElement - Element used to define the boundaries
* @param {Boolean} fixedPosition - Is in fixed position mode
* @returns {Object} Coordinates of the boundaries * @returns {Object} Coordinates of the boundaries
*/ */
function getBoundaries(popper, reference, padding, boundariesElement) { function getBoundaries(popper, reference, padding, boundariesElement) {
var fixedPosition = arguments.length > 4 && arguments[4] !== undefined ? arguments[4] : false;
// NOTE: 1 DOM access here // NOTE: 1 DOM access here
var boundaries = { top: 0, left: 0 }; var boundaries = { top: 0, left: 0 };
var offsetParent = findCommonOffsetParent(popper, reference); var offsetParent = fixedPosition ? getFixedPositionOffsetParent(popper) : findCommonOffsetParent(popper, reference);
// Handle viewport case // Handle viewport case
if (boundariesElement === 'viewport') { if (boundariesElement === 'viewport') {
boundaries = getViewportOffsetRectRelativeToArtbitraryNode(offsetParent); boundaries = getViewportOffsetRectRelativeToArtbitraryNode(offsetParent, fixedPosition);
} else { } else {
// Handle other cases based on DOM element used as boundaries // Handle other cases based on DOM element used as boundaries
var boundariesNode = void 0; var boundariesNode = void 0;
@@ -32001,7 +32061,7 @@ function getBoundaries(popper, reference, padding, boundariesElement) {
boundariesNode = boundariesElement; boundariesNode = boundariesElement;
} }
var offsets = getOffsetRectRelativeToArbitraryNode(boundariesNode, offsetParent); var offsets = getOffsetRectRelativeToArbitraryNode(boundariesNode, offsetParent, fixedPosition);
// In case of HTML, we need a different computation // In case of HTML, we need a different computation
if (boundariesNode.nodeName === 'HTML' && !isFixed(offsetParent)) { if (boundariesNode.nodeName === 'HTML' && !isFixed(offsetParent)) {
@@ -32102,11 +32162,14 @@ function computeAutoPlacement(placement, refRect, popper, reference, boundariesE
* @param {Object} state * @param {Object} state
* @param {Element} popper - the popper element * @param {Element} popper - the popper element
* @param {Element} reference - the reference element (the popper will be relative to this) * @param {Element} reference - the reference element (the popper will be relative to this)
* @param {Element} fixedPosition - is in fixed position mode
* @returns {Object} An object containing the offsets which will be applied to the popper * @returns {Object} An object containing the offsets which will be applied to the popper
*/ */
function getReferenceOffsets(state, popper, reference) { function getReferenceOffsets(state, popper, reference) {
var commonOffsetParent = findCommonOffsetParent(popper, reference); var fixedPosition = arguments.length > 3 && arguments[3] !== undefined ? arguments[3] : null;
return getOffsetRectRelativeToArbitraryNode(reference, commonOffsetParent);
var commonOffsetParent = fixedPosition ? getFixedPositionOffsetParent(popper) : findCommonOffsetParent(popper, reference);
return getOffsetRectRelativeToArbitraryNode(reference, commonOffsetParent, fixedPosition);
} }
/** /**
@@ -32279,7 +32342,7 @@ function update() {
}; };
// compute reference element offsets // compute reference element offsets
data.offsets.reference = getReferenceOffsets(this.state, this.popper, this.reference); data.offsets.reference = getReferenceOffsets(this.state, this.popper, this.reference, this.options.positionFixed);
// compute auto placement, store placement inside the data object, // compute auto placement, store placement inside the data object,
// modifiers will be able to edit `placement` if needed // modifiers will be able to edit `placement` if needed
@@ -32289,9 +32352,11 @@ function update() {
// store the computed placement inside `originalPlacement` // store the computed placement inside `originalPlacement`
data.originalPlacement = data.placement; data.originalPlacement = data.placement;
data.positionFixed = this.options.positionFixed;
// compute the popper offsets // compute the popper offsets
data.offsets.popper = getPopperOffsets(this.popper, data.offsets.reference, data.placement); data.offsets.popper = getPopperOffsets(this.popper, data.offsets.reference, data.placement);
data.offsets.popper.position = 'absolute'; data.offsets.popper.position = this.options.positionFixed ? 'fixed' : 'absolute';
// run the modifiers // run the modifiers
data = runModifiers(this.modifiers, data); data = runModifiers(this.modifiers, data);
@@ -32331,7 +32396,7 @@ function getSupportedPropertyName(property) {
var prefixes = [false, 'ms', 'Webkit', 'Moz', 'O']; var prefixes = [false, 'ms', 'Webkit', 'Moz', 'O'];
var upperProp = property.charAt(0).toUpperCase() + property.slice(1); var upperProp = property.charAt(0).toUpperCase() + property.slice(1);
for (var i = 0; i < prefixes.length - 1; i++) { for (var i = 0; i < prefixes.length; i++) {
var prefix = prefixes[i]; var prefix = prefixes[i];
var toCheck = prefix ? '' + prefix + upperProp : property; var toCheck = prefix ? '' + prefix + upperProp : property;
if (typeof document.body.style[toCheck] !== 'undefined') { if (typeof document.body.style[toCheck] !== 'undefined') {
@@ -32352,9 +32417,12 @@ function destroy() {
// touch DOM only if `applyStyle` modifier is enabled // touch DOM only if `applyStyle` modifier is enabled
if (isModifierEnabled(this.modifiers, 'applyStyle')) { if (isModifierEnabled(this.modifiers, 'applyStyle')) {
this.popper.removeAttribute('x-placement'); this.popper.removeAttribute('x-placement');
this.popper.style.left = '';
this.popper.style.position = ''; this.popper.style.position = '';
this.popper.style.top = ''; this.popper.style.top = '';
this.popper.style.left = '';
this.popper.style.right = '';
this.popper.style.bottom = '';
this.popper.style.willChange = '';
this.popper.style[getSupportedPropertyName('transform')] = ''; this.popper.style[getSupportedPropertyName('transform')] = '';
} }
@@ -32542,12 +32610,12 @@ function applyStyle(data) {
* @method * @method
* @memberof Popper.modifiers * @memberof Popper.modifiers
* @param {HTMLElement} reference - The reference element used to position the popper * @param {HTMLElement} reference - The reference element used to position the popper
* @param {HTMLElement} popper - The HTML element used as popper. * @param {HTMLElement} popper - The HTML element used as popper
* @param {Object} options - Popper.js options * @param {Object} options - Popper.js options
*/ */
function applyStyleOnLoad(reference, popper, options, modifierOptions, state) { function applyStyleOnLoad(reference, popper, options, modifierOptions, state) {
// compute reference element offsets // compute reference element offsets
var referenceOffsets = getReferenceOffsets(state, popper, reference); var referenceOffsets = getReferenceOffsets(state, popper, reference, options.positionFixed);
// compute auto placement, store placement inside the data object, // compute auto placement, store placement inside the data object,
// modifiers will be able to edit `placement` if needed // modifiers will be able to edit `placement` if needed
@@ -32558,7 +32626,7 @@ function applyStyleOnLoad(reference, popper, options, modifierOptions, state) {
// Apply `position` to popper before anything else because // Apply `position` to popper before anything else because
// without the position applied we can't guarantee correct computations // without the position applied we can't guarantee correct computations
setStyles(popper, { position: 'absolute' }); setStyles(popper, { position: options.positionFixed ? 'fixed' : 'absolute' });
return options; return options;
} }
@@ -32861,7 +32929,7 @@ function flip(data, options) {
return data; return data;
} }
var boundaries = getBoundaries(data.instance.popper, data.instance.reference, options.padding, options.boundariesElement); var boundaries = getBoundaries(data.instance.popper, data.instance.reference, options.padding, options.boundariesElement, data.positionFixed);
var placement = data.placement.split('-')[0]; var placement = data.placement.split('-')[0];
var placementOpposite = getOppositePlacement(placement); var placementOpposite = getOppositePlacement(placement);
@@ -33153,7 +33221,7 @@ function preventOverflow(data, options) {
boundariesElement = getOffsetParent(boundariesElement); boundariesElement = getOffsetParent(boundariesElement);
} }
var boundaries = getBoundaries(data.instance.popper, data.instance.reference, options.padding, boundariesElement); var boundaries = getBoundaries(data.instance.popper, data.instance.reference, options.padding, boundariesElement, data.positionFixed);
options.boundaries = boundaries; options.boundaries = boundaries;
var order = options.priority; var order = options.priority;
@@ -33650,6 +33718,12 @@ var Defaults = {
*/ */
placement: 'bottom', placement: 'bottom',
/**
* Set this to true if you want popper to position it self in 'fixed' mode
* @prop {Boolean} positionFixed=false
*/
positionFixed: false,
/** /**
* Whether events (resize, scroll) are initially enabled * Whether events (resize, scroll) are initially enabled
* @prop {Boolean} eventsEnabled=true * @prop {Boolean} eventsEnabled=true
@@ -33861,7 +33935,7 @@ return Popper;
/**! /**!
* @fileOverview Kickass library to create and place poppers near their reference elements. * @fileOverview Kickass library to create and place poppers near their reference elements.
* @version 1.13.0 * @version 1.14.0
* @license * @license
* Copyright (c) 2016 Federico Zivolo and contributors * Copyright (c) 2016 Federico Zivolo and contributors
* *
@@ -33947,13 +34021,48 @@ function getScrollParent(element) {
overflowX = _getStyleComputedProp.overflowX, overflowX = _getStyleComputedProp.overflowX,
overflowY = _getStyleComputedProp.overflowY; overflowY = _getStyleComputedProp.overflowY;
if (/(auto|scroll)/.test(overflow + overflowY + overflowX)) { if (/(auto|scroll|overlay)/.test(overflow + overflowY + overflowX)) {
return element; return element;
} }
return getScrollParent(getParentNode(element)); return getScrollParent(getParentNode(element));
} }
/**
* Tells if you are running Internet Explorer
* @method
* @memberof Popper.Utils
* @argument {number} version to check
* @returns {Boolean} isIE
*/
var cache = {};
var isIE = function () {
var version = arguments.length > 0 && arguments[0] !== undefined ? arguments[0] : 'all';
version = version.toString();
if (cache.hasOwnProperty(version)) {
return cache[version];
}
switch (version) {
case '11':
cache[version] = navigator.userAgent.indexOf('Trident') !== -1;
break;
case '10':
cache[version] = navigator.appVersion.indexOf('MSIE 10') !== -1;
break;
case 'all':
cache[version] = navigator.userAgent.indexOf('Trident') !== -1 || navigator.userAgent.indexOf('MSIE') !== -1;
break;
}
//Set IE
cache.all = cache.all || Object.keys(cache).some(function (key) {
return cache[key];
});
return cache[version];
};
/** /**
* Returns the offset parent of the given element * Returns the offset parent of the given element
* @method * @method
@@ -33962,16 +34071,23 @@ function getScrollParent(element) {
* @returns {Element} offset parent * @returns {Element} offset parent
*/ */
function getOffsetParent(element) { function getOffsetParent(element) {
if (!element) {
return document.documentElement;
}
var noOffsetParent = isIE(10) ? document.body : null;
// NOTE: 1 DOM access here // NOTE: 1 DOM access here
var offsetParent = element && element.offsetParent; var offsetParent = element.offsetParent;
// Skip hidden elements which don't have an offsetParent
while (offsetParent === noOffsetParent && element.nextElementSibling) {
offsetParent = (element = element.nextElementSibling).offsetParent;
}
var nodeName = offsetParent && offsetParent.nodeName; var nodeName = offsetParent && offsetParent.nodeName;
if (!nodeName || nodeName === 'BODY' || nodeName === 'HTML') { if (!nodeName || nodeName === 'BODY' || nodeName === 'HTML') {
if (element) { return element ? element.ownerDocument.documentElement : document.documentElement;
return element.ownerDocument.documentElement;
}
return document.documentElement;
} }
// .offsetParent will return the closest TD or TABLE in case // .offsetParent will return the closest TD or TABLE in case
@@ -34113,29 +34229,14 @@ function getBordersSize(styles, axis) {
return parseFloat(styles['border' + sideA + 'Width'], 10) + parseFloat(styles['border' + sideB + 'Width'], 10); return parseFloat(styles['border' + sideA + 'Width'], 10) + parseFloat(styles['border' + sideB + 'Width'], 10);
} }
/**
* Tells if you are running Internet Explorer 10
* @method
* @memberof Popper.Utils
* @returns {Boolean} isIE10
*/
var isIE10 = undefined;
var isIE10$1 = function () {
if (isIE10 === undefined) {
isIE10 = navigator.appVersion.indexOf('MSIE 10') !== -1;
}
return isIE10;
};
function getSize(axis, body, html, computedStyle) { function getSize(axis, body, html, computedStyle) {
return Math.max(body['offset' + axis], body['scroll' + axis], html['client' + axis], html['offset' + axis], html['scroll' + axis], isIE10$1() ? html['offset' + axis] + computedStyle['margin' + (axis === 'Height' ? 'Top' : 'Left')] + computedStyle['margin' + (axis === 'Height' ? 'Bottom' : 'Right')] : 0); return Math.max(body['offset' + axis], body['scroll' + axis], html['client' + axis], html['offset' + axis], html['scroll' + axis], isIE(10) ? html['offset' + axis] + computedStyle['margin' + (axis === 'Height' ? 'Top' : 'Left')] + computedStyle['margin' + (axis === 'Height' ? 'Bottom' : 'Right')] : 0);
} }
function getWindowSizes() { function getWindowSizes() {
var body = document.body; var body = document.body;
var html = document.documentElement; var html = document.documentElement;
var computedStyle = isIE10$1() && getComputedStyle(html); var computedStyle = isIE(10) && getComputedStyle(html);
return { return {
height: getSize('Height', body, html, computedStyle), height: getSize('Height', body, html, computedStyle),
@@ -34184,8 +34285,8 @@ function getBoundingClientRect(element) {
// IE10 10 FIX: Please, don't ask, the element isn't // IE10 10 FIX: Please, don't ask, the element isn't
// considered in DOM in some circumstances... // considered in DOM in some circumstances...
// This isn't reproducible in IE10 compatibility mode of IE11 // This isn't reproducible in IE10 compatibility mode of IE11
if (isIE10$1()) { try {
try { if (isIE(10)) {
rect = element.getBoundingClientRect(); rect = element.getBoundingClientRect();
var scrollTop = getScroll(element, 'top'); var scrollTop = getScroll(element, 'top');
var scrollLeft = getScroll(element, 'left'); var scrollLeft = getScroll(element, 'left');
@@ -34193,10 +34294,10 @@ function getBoundingClientRect(element) {
rect.left += scrollLeft; rect.left += scrollLeft;
rect.bottom += scrollTop; rect.bottom += scrollTop;
rect.right += scrollLeft; rect.right += scrollLeft;
} catch (err) {} } else {
} else { rect = element.getBoundingClientRect();
rect = element.getBoundingClientRect(); }
} } catch (e) {}
var result = { var result = {
left: rect.left, left: rect.left,
@@ -34228,7 +34329,9 @@ function getBoundingClientRect(element) {
} }
function getOffsetRectRelativeToArbitraryNode(children, parent) { function getOffsetRectRelativeToArbitraryNode(children, parent) {
var isIE10 = isIE10$1(); var fixedPosition = arguments.length > 2 && arguments[2] !== undefined ? arguments[2] : false;
var isIE10 = isIE(10);
var isHTML = parent.nodeName === 'HTML'; var isHTML = parent.nodeName === 'HTML';
var childrenRect = getBoundingClientRect(children); var childrenRect = getBoundingClientRect(children);
var parentRect = getBoundingClientRect(parent); var parentRect = getBoundingClientRect(parent);
@@ -34238,6 +34341,11 @@ function getOffsetRectRelativeToArbitraryNode(children, parent) {
var borderTopWidth = parseFloat(styles.borderTopWidth, 10); var borderTopWidth = parseFloat(styles.borderTopWidth, 10);
var borderLeftWidth = parseFloat(styles.borderLeftWidth, 10); var borderLeftWidth = parseFloat(styles.borderLeftWidth, 10);
// In cases where the parent is fixed, we must ignore negative scroll in offset calc
if (fixedPosition && parent.nodeName === 'HTML') {
parentRect.top = Math.max(parentRect.top, 0);
parentRect.left = Math.max(parentRect.left, 0);
}
var offsets = getClientRect({ var offsets = getClientRect({
top: childrenRect.top - parentRect.top - borderTopWidth, top: childrenRect.top - parentRect.top - borderTopWidth,
left: childrenRect.left - parentRect.left - borderLeftWidth, left: childrenRect.left - parentRect.left - borderLeftWidth,
@@ -34265,7 +34373,7 @@ function getOffsetRectRelativeToArbitraryNode(children, parent) {
offsets.marginLeft = marginLeft; offsets.marginLeft = marginLeft;
} }
if (isIE10 ? parent.contains(scrollParent) : parent === scrollParent && scrollParent.nodeName !== 'BODY') { if (isIE10 && !fixedPosition ? parent.contains(scrollParent) : parent === scrollParent && scrollParent.nodeName !== 'BODY') {
offsets = includeScroll(offsets, parent); offsets = includeScroll(offsets, parent);
} }
@@ -34273,13 +34381,15 @@ function getOffsetRectRelativeToArbitraryNode(children, parent) {
} }
function getViewportOffsetRectRelativeToArtbitraryNode(element) { function getViewportOffsetRectRelativeToArtbitraryNode(element) {
var excludeScroll = arguments.length > 1 && arguments[1] !== undefined ? arguments[1] : false;
var html = element.ownerDocument.documentElement; var html = element.ownerDocument.documentElement;
var relativeOffset = getOffsetRectRelativeToArbitraryNode(element, html); var relativeOffset = getOffsetRectRelativeToArbitraryNode(element, html);
var width = Math.max(html.clientWidth, window.innerWidth || 0); var width = Math.max(html.clientWidth, window.innerWidth || 0);
var height = Math.max(html.clientHeight, window.innerHeight || 0); var height = Math.max(html.clientHeight, window.innerHeight || 0);
var scrollTop = getScroll(html); var scrollTop = !excludeScroll ? getScroll(html) : 0;
var scrollLeft = getScroll(html, 'left'); var scrollLeft = !excludeScroll ? getScroll(html, 'left') : 0;
var offset = { var offset = {
top: scrollTop - relativeOffset.top + relativeOffset.marginTop, top: scrollTop - relativeOffset.top + relativeOffset.marginTop,
@@ -34310,6 +34420,26 @@ function isFixed(element) {
return isFixed(getParentNode(element)); return isFixed(getParentNode(element));
} }
/**
* Finds the first parent of an element that has a transformed property defined
* @method
* @memberof Popper.Utils
* @argument {Element} element
* @returns {Element} first transformed parent or documentElement
*/
function getFixedPositionOffsetParent(element) {
// This check is needed to avoid errors in case one of the elements isn't defined for any reason
if (!element || !element.parentElement || isIE()) {
return document.documentElement;
}
var el = element.parentElement;
while (el && getStyleComputedProperty(el, 'transform') === 'none') {
el = el.parentElement;
}
return el || document.documentElement;
}
/** /**
* Computed the boundaries limits and return them * Computed the boundaries limits and return them
* @method * @method
@@ -34318,16 +34448,20 @@ function isFixed(element) {
* @param {HTMLElement} reference * @param {HTMLElement} reference
* @param {number} padding * @param {number} padding
* @param {HTMLElement} boundariesElement - Element used to define the boundaries * @param {HTMLElement} boundariesElement - Element used to define the boundaries
* @param {Boolean} fixedPosition - Is in fixed position mode
* @returns {Object} Coordinates of the boundaries * @returns {Object} Coordinates of the boundaries
*/ */
function getBoundaries(popper, reference, padding, boundariesElement) { function getBoundaries(popper, reference, padding, boundariesElement) {
var fixedPosition = arguments.length > 4 && arguments[4] !== undefined ? arguments[4] : false;
// NOTE: 1 DOM access here // NOTE: 1 DOM access here
var boundaries = { top: 0, left: 0 }; var boundaries = { top: 0, left: 0 };
var offsetParent = findCommonOffsetParent(popper, reference); var offsetParent = fixedPosition ? getFixedPositionOffsetParent(popper) : findCommonOffsetParent(popper, reference);
// Handle viewport case // Handle viewport case
if (boundariesElement === 'viewport') { if (boundariesElement === 'viewport') {
boundaries = getViewportOffsetRectRelativeToArtbitraryNode(offsetParent); boundaries = getViewportOffsetRectRelativeToArtbitraryNode(offsetParent, fixedPosition);
} else { } else {
// Handle other cases based on DOM element used as boundaries // Handle other cases based on DOM element used as boundaries
var boundariesNode = void 0; var boundariesNode = void 0;
@@ -34342,7 +34476,7 @@ function getBoundaries(popper, reference, padding, boundariesElement) {
boundariesNode = boundariesElement; boundariesNode = boundariesElement;
} }
var offsets = getOffsetRectRelativeToArbitraryNode(boundariesNode, offsetParent); var offsets = getOffsetRectRelativeToArbitraryNode(boundariesNode, offsetParent, fixedPosition);
// In case of HTML, we need a different computation // In case of HTML, we need a different computation
if (boundariesNode.nodeName === 'HTML' && !isFixed(offsetParent)) { if (boundariesNode.nodeName === 'HTML' && !isFixed(offsetParent)) {
@@ -34640,11 +34774,14 @@ function getPopperOffsets(popper, referenceOffsets, placement) {
* @param {Object} state * @param {Object} state
* @param {Element} popper - the popper element * @param {Element} popper - the popper element
* @param {Element} reference - the reference element (the popper will be relative to this) * @param {Element} reference - the reference element (the popper will be relative to this)
* @param {Element} fixedPosition - is in fixed position mode
* @returns {Object} An object containing the offsets which will be applied to the popper * @returns {Object} An object containing the offsets which will be applied to the popper
*/ */
function getReferenceOffsets(state, popper, reference) { function getReferenceOffsets(state, popper, reference) {
var commonOffsetParent = findCommonOffsetParent(popper, reference); var fixedPosition = arguments.length > 3 && arguments[3] !== undefined ? arguments[3] : null;
return getOffsetRectRelativeToArbitraryNode(reference, commonOffsetParent);
var commonOffsetParent = fixedPosition ? getFixedPositionOffsetParent(popper) : findCommonOffsetParent(popper, reference);
return getOffsetRectRelativeToArbitraryNode(reference, commonOffsetParent, fixedPosition);
} }
/** /**
@@ -34658,7 +34795,7 @@ function getSupportedPropertyName(property) {
var prefixes = [false, 'ms', 'Webkit', 'Moz', 'O']; var prefixes = [false, 'ms', 'Webkit', 'Moz', 'O'];
var upperProp = property.charAt(0).toUpperCase() + property.slice(1); var upperProp = property.charAt(0).toUpperCase() + property.slice(1);
for (var i = 0; i < prefixes.length - 1; i++) { for (var i = 0; i < prefixes.length; i++) {
var prefix = prefixes[i]; var prefix = prefixes[i];
var toCheck = prefix ? '' + prefix + upperProp : property; var toCheck = prefix ? '' + prefix + upperProp : property;
if (typeof document.body.style[toCheck] !== 'undefined') { if (typeof document.body.style[toCheck] !== 'undefined') {

File diff suppressed because one or more lines are too long

View File

@@ -1,101 +0,0 @@
/******/ (function(modules) { // webpackBootstrap
/******/ // install a JSONP callback for chunk loading
/******/ var parentJsonpFunction = window["webpackJsonp"];
/******/ window["webpackJsonp"] = function webpackJsonpCallback(chunkIds, moreModules, executeModules) {
/******/ // add "moreModules" to the modules object,
/******/ // then flag all "chunkIds" as loaded and fire callback
/******/ var moduleId, chunkId, i = 0, resolves = [], result;
/******/ for(;i < chunkIds.length; i++) {
/******/ chunkId = chunkIds[i];
/******/ if(installedChunks[chunkId]) {
/******/ resolves.push(installedChunks[chunkId][0]);
/******/ }
/******/ installedChunks[chunkId] = 0;
/******/ }
/******/ for(moduleId in moreModules) {
/******/ if(Object.prototype.hasOwnProperty.call(moreModules, moduleId)) {
/******/ modules[moduleId] = moreModules[moduleId];
/******/ }
/******/ }
/******/ if(parentJsonpFunction) parentJsonpFunction(chunkIds, moreModules, executeModules);
/******/ while(resolves.length) {
/******/ resolves.shift()();
/******/ }
/******/ if(executeModules) {
/******/ for(i=0; i < executeModules.length; i++) {
/******/ result = __webpack_require__(__webpack_require__.s = executeModules[i]);
/******/ }
/******/ }
/******/ return result;
/******/ };
/******/
/******/ // The module cache
/******/ var installedModules = {};
/******/
/******/ // objects to store loaded and loading chunks
/******/ var installedChunks = {
/******/ 3: 0
/******/ };
/******/
/******/ // The require function
/******/ function __webpack_require__(moduleId) {
/******/
/******/ // Check if module is in cache
/******/ if(installedModules[moduleId]) {
/******/ return installedModules[moduleId].exports;
/******/ }
/******/ // Create a new module (and put it into the cache)
/******/ var module = installedModules[moduleId] = {
/******/ i: moduleId,
/******/ l: false,
/******/ exports: {}
/******/ };
/******/
/******/ // Execute the module function
/******/ modules[moduleId].call(module.exports, module, module.exports, __webpack_require__);
/******/
/******/ // Flag the module as loaded
/******/ module.l = true;
/******/
/******/ // Return the exports of the module
/******/ return module.exports;
/******/ }
/******/
/******/
/******/ // expose the modules object (__webpack_modules__)
/******/ __webpack_require__.m = modules;
/******/
/******/ // expose the module cache
/******/ __webpack_require__.c = installedModules;
/******/
/******/ // define getter function for harmony exports
/******/ __webpack_require__.d = function(exports, name, getter) {
/******/ if(!__webpack_require__.o(exports, name)) {
/******/ Object.defineProperty(exports, name, {
/******/ configurable: false,
/******/ enumerable: true,
/******/ get: getter
/******/ });
/******/ }
/******/ };
/******/
/******/ // getDefaultExport function for compatibility with non-harmony modules
/******/ __webpack_require__.n = function(module) {
/******/ var getter = module && module.__esModule ?
/******/ function getDefault() { return module['default']; } :
/******/ function getModuleExports() { return module; };
/******/ __webpack_require__.d(getter, 'a', getter);
/******/ return getter;
/******/ };
/******/
/******/ // Object.prototype.hasOwnProperty.call
/******/ __webpack_require__.o = function(object, property) { return Object.prototype.hasOwnProperty.call(object, property); };
/******/
/******/ // __webpack_public_path__
/******/ __webpack_require__.p = "";
/******/
/******/ // on error function for async loading
/******/ __webpack_require__.oe = function(err) { console.error(err); throw err; };
/******/ })
/************************************************************************/
/******/ ([]);

File diff suppressed because one or more lines are too long

View File

@@ -1,9 +1,9 @@
{ {
"/js/frontend/app.js": "/js/frontend/app.js?id=3dade2872dd9c5f40690", "/assets/frontend/js/app.js": "/assets/frontend/js/app.js?id=3dade2872dd9c5f40690",
"/assets/admin/vendor/paper-dashboard.css": "/assets/admin/vendor/paper-dashboard.css?id=1e97d08716e0c4630ae9", "/assets/admin/vendor/paper-dashboard.css": "/assets/admin/vendor/paper-dashboard.css?id=1e97d08716e0c4630ae9",
"/assets/frontend/css/now-ui-kit.css": "/assets/frontend/css/now-ui-kit.css?id=9923ce002ceafb1d740a", "/assets/frontend/css/now-ui-kit.css": "/assets/frontend/css/now-ui-kit.css?id=9923ce002ceafb1d740a",
"/js/frontend/vendor.js": "/js/frontend/vendor.js?id=e0423758b58fa78616dd", "/assets/frontend/js/vendor.js": "/assets/frontend/js/vendor.js?id=a6c163b9fbf4c3248a51",
"/js/frontend/manifest.js": "/js/frontend/manifest.js?id=8dc6cd78606fe58b6628", "/assets/frontend/js/manifest.js": "/assets/frontend/js/manifest.js?id=8dc6cd78606fe58b6628",
"/assets/fonts/glyphicons-halflings-regular.woff2": "/assets/fonts/glyphicons-halflings-regular.woff2?id=b5b5055c6d812c0f9f0d", "/assets/fonts/glyphicons-halflings-regular.woff2": "/assets/fonts/glyphicons-halflings-regular.woff2?id=b5b5055c6d812c0f9f0d",
"/assets/admin/fonts/glyphicons-halflings-regular.woff2": "/assets/admin/fonts/glyphicons-halflings-regular.woff2?id=b5b5055c6d812c0f9f0d", "/assets/admin/fonts/glyphicons-halflings-regular.woff2": "/assets/admin/fonts/glyphicons-halflings-regular.woff2?id=b5b5055c6d812c0f9f0d",
"/assets/admin/js/icheck.js": "/assets/admin/js/icheck.js?id=14d0d9d9cae155580c5e", "/assets/admin/js/icheck.js": "/assets/admin/js/icheck.js?id=14d0d9d9cae155580c5e",
@@ -12,12 +12,12 @@
"/assets/admin/img/clear.png": "/assets/admin/img/clear.png?id=0e92f4c3efc6988a3c96", "/assets/admin/img/clear.png": "/assets/admin/img/clear.png?id=0e92f4c3efc6988a3c96",
"/assets/admin/img/loading.gif": "/assets/admin/img/loading.gif?id=90a4b76b4f11558691f6", "/assets/admin/img/loading.gif": "/assets/admin/img/loading.gif?id=90a4b76b4f11558691f6",
"/assets/admin/css/vendor.min.css": "/assets/admin/css/vendor.min.css?id=88e01e7683bc0807f1ba", "/assets/admin/css/vendor.min.css": "/assets/admin/css/vendor.min.css?id=88e01e7683bc0807f1ba",
"/assets/admin/js/vendor.js": "/assets/admin/js/vendor.js?id=ae877cb8b94dd56c2e46", "/assets/admin/js/vendor.js": "/assets/admin/js/vendor.js?id=ffb4cf337de6d63b3ec6",
"/assets/admin/css/blue.png": "/assets/admin/css/blue.png?id=753a3c0dec86d3a38d9c", "/assets/admin/css/blue.png": "/assets/admin/css/blue.png?id=753a3c0dec86d3a38d9c",
"/assets/admin/css/blue@2x.png": "/assets/admin/css/blue@2x.png?id=97da23d47b838cbd4bef", "/assets/admin/css/blue@2x.png": "/assets/admin/css/blue@2x.png?id=97da23d47b838cbd4bef",
"/assets/system/js/jquery.js": "/assets/system/js/jquery.js?id=6a07da9fae934baf3f74", "/assets/system/js/jquery.js": "/assets/system/js/jquery.js?id=6a07da9fae934baf3f74",
"/assets/system/js/vendor.js": "/assets/system/js/vendor.js?id=377bd4e1042239b37046", "/assets/system/js/vendor.js": "/assets/system/js/vendor.js?id=0e6df5b264518fb37f48",
"/assets/system/css/vendor.min.css": "/assets/system/css/vendor.min.css?id=23451051c1ac99cae5fb", "/assets/system/css/vendor.min.css": "/assets/system/css/vendor.min.css?id=23451051c1ac99cae5fb",
"/assets/system/css/installer.css": "/assets/system/css/installer.css?id=1101b178b0383008aaa1", "/assets/system/css/installer.css": "/assets/system/css/installer.css?id=1101b178b0383008aaa1",
"/assets/system/js/installer-vendor.js": "/assets/system/js/installer-vendor.js?id=efb330ef732d2f856623" "/assets/installer/js/vendor.js": "/assets/installer/js/vendor.js?id=efb330ef732d2f856623"
} }

View File

@@ -0,0 +1,8 @@
/**
* Admin stuff needed
*/
require('./../bootstrap');
// Import the mapping function
window.phpvms.map = require('../maps/index');

View File

@@ -0,0 +1,5 @@
/**
* Admin stuff needed
*/
require('./../bootstrap');

View File

@@ -78,9 +78,9 @@
<script defer src="https://use.fontawesome.com/releases/v5.0.6/js/all.js"></script> <script defer src="https://use.fontawesome.com/releases/v5.0.6/js/all.js"></script>
{{-- Start of the required tags block. Don't remove these or things will break!! --}} {{-- Start of the required tags block. Don't remove these or things will break!! --}}
<script src="{{ public_asset('/js/frontend/manifest.js') }}"></script> <script src="{{ public_asset('/assets/frontend/js/manifest.js') }}"></script>
<script src="{{ public_asset('/js/frontend/vendor.js') }}"></script> <script src="{{ public_asset('/assets/frontend/js/vendor.js') }}"></script>
<script src="{{ public_asset('/js/frontend/app.js') }}"></script> <script src="{{ public_asset('/assets/frontend/js/app.js') }}"></script>
@yield('scripts') @yield('scripts')
{{-- End the required tags block --}} {{-- End the required tags block --}}

View File

@@ -118,7 +118,7 @@ mix.scripts([
'node_modules/jquery/dist/jquery.js', 'node_modules/jquery/dist/jquery.js',
'node_modules/pjax/pjax.js', 'node_modules/pjax/pjax.js',
'node_modules/select2/dist/js/select2.js', 'node_modules/select2/dist/js/select2.js',
], 'public/assets/system/js/installer-vendor.js') ], 'public/assets/installer/js/vendor.js');
/** /**
* DEFAULT SKIN FRONTEND FILES * DEFAULT SKIN FRONTEND FILES
@@ -142,9 +142,10 @@ const extract = [
'leaflet', 'leaflet',
'Leaflet.Geodesic', 'Leaflet.Geodesic',
'leaflet-rotatedmarker' 'leaflet-rotatedmarker'
] ];
mix.js('resources/js/frontend/app.js', 'public/js/frontend') mix.js('resources/js/frontend/app.js', 'public/assets/frontend/js')
.extract(extract) .extract(extract);
//mix.js('resources/js/admin/app.js', 'public/js/admin') /*mix.js('resources/js/admin/app.js', 'public/assets/admin/js')
.extract(extract);*/