uikit 3.11.1-dev.fbcf9eec9 → 3.11.2-dev.31cd2ba38
This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
- package/CHANGELOG.md +30 -0
- package/dist/css/uikit-core-rtl.css +1 -1
- package/dist/css/uikit-core-rtl.min.css +1 -1
- package/dist/css/uikit-core.css +1 -1
- package/dist/css/uikit-core.min.css +1 -1
- package/dist/css/uikit-rtl.css +1 -1
- package/dist/css/uikit-rtl.min.css +1 -1
- package/dist/css/uikit.css +1 -1
- package/dist/css/uikit.min.css +1 -1
- package/dist/js/components/countdown.js +1 -1
- package/dist/js/components/countdown.min.js +1 -1
- package/dist/js/components/filter.js +1 -1
- package/dist/js/components/filter.min.js +1 -1
- package/dist/js/components/lightbox-panel.js +1 -1
- package/dist/js/components/lightbox-panel.min.js +1 -1
- package/dist/js/components/lightbox.js +1 -1
- package/dist/js/components/lightbox.min.js +1 -1
- package/dist/js/components/notification.js +1 -1
- package/dist/js/components/notification.min.js +1 -1
- package/dist/js/components/parallax.js +37 -41
- package/dist/js/components/parallax.min.js +1 -1
- package/dist/js/components/slider-parallax.js +32 -25
- package/dist/js/components/slider-parallax.min.js +1 -1
- package/dist/js/components/slider.js +2 -2
- package/dist/js/components/slider.min.js +1 -1
- package/dist/js/components/slideshow-parallax.js +32 -25
- package/dist/js/components/slideshow-parallax.min.js +1 -1
- package/dist/js/components/slideshow.js +1 -1
- package/dist/js/components/slideshow.min.js +1 -1
- package/dist/js/components/sortable.js +2 -3
- package/dist/js/components/sortable.min.js +1 -1
- package/dist/js/components/tooltip.js +1 -1
- package/dist/js/components/tooltip.min.js +1 -1
- package/dist/js/components/upload.js +1 -1
- package/dist/js/components/upload.min.js +1 -1
- package/dist/js/uikit-core.js +224 -195
- package/dist/js/uikit-core.min.js +1 -1
- package/dist/js/uikit-icons.js +1 -1
- package/dist/js/uikit-icons.min.js +1 -1
- package/dist/js/uikit.js +287 -263
- package/dist/js/uikit.min.js +1 -1
- package/package.json +1 -1
- package/src/js/api/state.js +4 -4
- package/src/js/components/parallax.js +5 -16
- package/src/js/components/slider.js +1 -1
- package/src/js/components/sortable.js +1 -2
- package/src/js/core/core.js +2 -2
- package/src/js/core/drop.js +1 -1
- package/src/js/core/height-viewport.js +2 -2
- package/src/js/core/img.js +68 -92
- package/src/js/core/navbar.js +6 -2
- package/src/js/core/sticky.js +82 -50
- package/src/js/mixin/parallax.js +32 -21
- package/src/js/util/dimensions.js +28 -12
- package/src/js/util/fastdom.js +2 -2
- package/src/js/util/options.js +5 -5
- package/src/js/util/viewport.js +7 -3
- package/tests/image.html +22 -38
- package/tests/images/test.avif +0 -0
- package/tests/images/test.webp +0 -0
- package/tests/sticky-parallax.html +44 -41
- package/tests/sticky.html +56 -24
package/dist/js/uikit-core.js
CHANGED
|
@@ -1,4 +1,4 @@
|
|
|
1
|
-
/*! UIkit 3.11.
|
|
1
|
+
/*! UIkit 3.11.2-dev.31cd2ba38 | https://www.getuikit.com | (c) 2014 - 2022 YOOtheme | MIT License */
|
|
2
2
|
|
|
3
3
|
(function (global, factory) {
|
|
4
4
|
typeof exports === 'object' && typeof module !== 'undefined' ? module.exports = factory() :
|
|
@@ -1750,19 +1750,35 @@
|
|
|
1750
1750
|
if ( element === void 0 ) element = window;
|
|
1751
1751
|
if ( offsetDim === void 0 ) offsetDim = false;
|
|
1752
1752
|
|
|
1753
|
-
|
|
1754
|
-
|
|
1755
|
-
|
|
1756
|
-
|
|
1757
|
-
|
|
1758
|
-
|
|
1759
|
-
|
|
1760
|
-
|
|
1761
|
-
|
|
1762
|
-
|
|
1763
|
-
|
|
1753
|
+
|
|
1754
|
+
if (!isString(value)) {
|
|
1755
|
+
return toFloat(value);
|
|
1756
|
+
}
|
|
1757
|
+
|
|
1758
|
+
return parseCalc(value).reduce(function (result, value) {
|
|
1759
|
+
var unit = parseUnit(value);
|
|
1760
|
+
if (unit) {
|
|
1761
|
+
value = percent(
|
|
1762
|
+
unit === 'vh'
|
|
1763
|
+
? height(toWindow(element))
|
|
1764
|
+
: unit === 'vw'
|
|
1765
|
+
? width(toWindow(element))
|
|
1766
|
+
: offsetDim
|
|
1767
|
+
? element[("offset" + (ucfirst(property)))]
|
|
1768
|
+
: dimensions(element)[property],
|
|
1769
|
+
value
|
|
1770
|
+
);
|
|
1771
|
+
}
|
|
1772
|
+
|
|
1773
|
+
return result + toFloat(value);
|
|
1774
|
+
}, 0);
|
|
1764
1775
|
}
|
|
1765
1776
|
|
|
1777
|
+
var calcRe = /-?\d+(?:\.\d+)?(?:v[wh]|%|px)?/g;
|
|
1778
|
+
var parseCalc = memoize(function (calc) { return calc.toString().replace(/\s/g, '').match(calcRe) || []; });
|
|
1779
|
+
var unitRe = /(?:v[hw]|%)$/;
|
|
1780
|
+
var parseUnit = memoize(function (str) { return (str.match(unitRe) || [])[0]; });
|
|
1781
|
+
|
|
1766
1782
|
function percent(base, value) {
|
|
1767
1783
|
return base * toFloat(value) / 100;
|
|
1768
1784
|
}
|
|
@@ -1800,8 +1816,6 @@
|
|
|
1800
1816
|
};
|
|
1801
1817
|
|
|
1802
1818
|
function flush(recursion) {
|
|
1803
|
-
if ( recursion === void 0 ) recursion = 1;
|
|
1804
|
-
|
|
1805
1819
|
runTasks(fastdom.reads);
|
|
1806
1820
|
runTasks(fastdom.writes.splice(0));
|
|
1807
1821
|
|
|
@@ -1823,7 +1837,7 @@
|
|
|
1823
1837
|
if (recursion && recursion < RECURSION_LIMIT) {
|
|
1824
1838
|
Promise$1.resolve().then(function () { return flush(recursion); });
|
|
1825
1839
|
} else {
|
|
1826
|
-
requestAnimationFrame(function () { return flush(); });
|
|
1840
|
+
requestAnimationFrame(function () { return flush(1); });
|
|
1827
1841
|
}
|
|
1828
1842
|
|
|
1829
1843
|
}
|
|
@@ -2079,9 +2093,8 @@
|
|
|
2079
2093
|
|
|
2080
2094
|
try {
|
|
2081
2095
|
|
|
2082
|
-
return
|
|
2083
|
-
? {
|
|
2084
|
-
: startsWith(options, '{')
|
|
2096
|
+
return options
|
|
2097
|
+
? options.match(/^[{[]/)
|
|
2085
2098
|
? JSON.parse(options)
|
|
2086
2099
|
: args.length && !includes(options, ':')
|
|
2087
2100
|
? (( obj = {}, obj[args[0]] = options, obj ))
|
|
@@ -2093,7 +2106,8 @@
|
|
|
2093
2106
|
options[key.trim()] = value.trim();
|
|
2094
2107
|
}
|
|
2095
2108
|
return options;
|
|
2096
|
-
}, {})
|
|
2109
|
+
}, {})
|
|
2110
|
+
: {};
|
|
2097
2111
|
|
|
2098
2112
|
} catch (e) {
|
|
2099
2113
|
return {};
|
|
@@ -2241,7 +2255,11 @@
|
|
|
2241
2255
|
element = toNode(element);
|
|
2242
2256
|
}
|
|
2243
2257
|
|
|
2244
|
-
|
|
2258
|
+
if (isUndefined(top)) {
|
|
2259
|
+
return element.scrollTop;
|
|
2260
|
+
} else {
|
|
2261
|
+
element.scrollTop = top;
|
|
2262
|
+
}
|
|
2245
2263
|
}
|
|
2246
2264
|
|
|
2247
2265
|
function scrollIntoView(element, ref) {
|
|
@@ -2673,7 +2691,8 @@
|
|
|
2673
2691
|
scrolledOver: scrolledOver,
|
|
2674
2692
|
scrollParents: scrollParents,
|
|
2675
2693
|
getViewport: getViewport$1,
|
|
2676
|
-
getViewportClientHeight: getViewportClientHeight
|
|
2694
|
+
getViewportClientHeight: getViewportClientHeight,
|
|
2695
|
+
getScrollingElement: getScrollingElement
|
|
2677
2696
|
});
|
|
2678
2697
|
|
|
2679
2698
|
function globalAPI (UIkit) {
|
|
@@ -3137,11 +3156,11 @@
|
|
|
3137
3156
|
on(
|
|
3138
3157
|
el,
|
|
3139
3158
|
name,
|
|
3140
|
-
|
|
3141
|
-
?
|
|
3142
|
-
: isString(delegate)
|
|
3159
|
+
delegate
|
|
3160
|
+
? isString(delegate)
|
|
3143
3161
|
? delegate
|
|
3144
|
-
: delegate.call(component)
|
|
3162
|
+
: delegate.call(component)
|
|
3163
|
+
: null,
|
|
3145
3164
|
isString(handler) ? component[handler] : handler.bind(component),
|
|
3146
3165
|
{passive: passive, capture: capture, self: self}
|
|
3147
3166
|
)
|
|
@@ -3462,7 +3481,7 @@
|
|
|
3462
3481
|
UIkit.data = '__uikit__';
|
|
3463
3482
|
UIkit.prefix = 'uk-';
|
|
3464
3483
|
UIkit.options = {};
|
|
3465
|
-
UIkit.version = '3.11.
|
|
3484
|
+
UIkit.version = '3.11.2-dev.31cd2ba38';
|
|
3466
3485
|
|
|
3467
3486
|
globalAPI(UIkit);
|
|
3468
3487
|
hooksAPI(UIkit);
|
|
@@ -3483,7 +3502,7 @@
|
|
|
3483
3502
|
return;
|
|
3484
3503
|
}
|
|
3485
3504
|
pendingResize = true;
|
|
3486
|
-
fastdom.
|
|
3505
|
+
fastdom.read(function () { return pendingResize = false; });
|
|
3487
3506
|
UIkit.update(null, 'resize');
|
|
3488
3507
|
};
|
|
3489
3508
|
|
|
@@ -3502,7 +3521,7 @@
|
|
|
3502
3521
|
return;
|
|
3503
3522
|
}
|
|
3504
3523
|
pending = true;
|
|
3505
|
-
fastdom.
|
|
3524
|
+
fastdom.read(function () { return pending = false; });
|
|
3506
3525
|
|
|
3507
3526
|
UIkit.update(null, e.type);
|
|
3508
3527
|
|
|
@@ -4588,7 +4607,7 @@
|
|
|
4588
4607
|
if (active$1) {
|
|
4589
4608
|
|
|
4590
4609
|
if (delay && active$1.isDelaying) {
|
|
4591
|
-
this.showTimer = setTimeout(this.show, 10);
|
|
4610
|
+
this.showTimer = setTimeout(function () { return matches(target, ':hover') && this$1$1.show(); }, 10);
|
|
4592
4611
|
return;
|
|
4593
4612
|
}
|
|
4594
4613
|
|
|
@@ -5312,7 +5331,7 @@
|
|
|
5312
5331
|
css(this.$el, {minHeight: minHeight});
|
|
5313
5332
|
|
|
5314
5333
|
if (minHeight !== prev) {
|
|
5315
|
-
|
|
5334
|
+
trigger(this.$el, 'resize');
|
|
5316
5335
|
}
|
|
5317
5336
|
|
|
5318
5337
|
if (this.minHeight && toFloat(css(this.$el, 'minHeight')) < this.minHeight) {
|
|
@@ -5789,10 +5808,7 @@
|
|
|
5789
5808
|
|
|
5790
5809
|
props: {
|
|
5791
5810
|
dataSrc: String,
|
|
5792
|
-
|
|
5793
|
-
sizes: String,
|
|
5794
|
-
width: Number,
|
|
5795
|
-
height: Number,
|
|
5811
|
+
dataSources: String,
|
|
5796
5812
|
offsetTop: String,
|
|
5797
5813
|
offsetLeft: String,
|
|
5798
5814
|
target: String
|
|
@@ -5800,10 +5816,7 @@
|
|
|
5800
5816
|
|
|
5801
5817
|
data: {
|
|
5802
5818
|
dataSrc: '',
|
|
5803
|
-
|
|
5804
|
-
sizes: false,
|
|
5805
|
-
width: false,
|
|
5806
|
-
height: false,
|
|
5819
|
+
dataSources: [],
|
|
5807
5820
|
offsetTop: '50vh',
|
|
5808
5821
|
offsetLeft: '50vw',
|
|
5809
5822
|
target: false
|
|
@@ -5811,37 +5824,6 @@
|
|
|
5811
5824
|
|
|
5812
5825
|
computed: {
|
|
5813
5826
|
|
|
5814
|
-
cacheKey: function(ref) {
|
|
5815
|
-
var dataSrc = ref.dataSrc;
|
|
5816
|
-
|
|
5817
|
-
return ((this.$name) + "." + dataSrc);
|
|
5818
|
-
},
|
|
5819
|
-
|
|
5820
|
-
width: function(ref) {
|
|
5821
|
-
var width = ref.width;
|
|
5822
|
-
var dataWidth = ref.dataWidth;
|
|
5823
|
-
|
|
5824
|
-
return width || dataWidth;
|
|
5825
|
-
},
|
|
5826
|
-
|
|
5827
|
-
height: function(ref) {
|
|
5828
|
-
var height = ref.height;
|
|
5829
|
-
var dataHeight = ref.dataHeight;
|
|
5830
|
-
|
|
5831
|
-
return height || dataHeight;
|
|
5832
|
-
},
|
|
5833
|
-
|
|
5834
|
-
sizes: function(ref) {
|
|
5835
|
-
var sizes = ref.sizes;
|
|
5836
|
-
var dataSizes = ref.dataSizes;
|
|
5837
|
-
|
|
5838
|
-
return sizes || dataSizes;
|
|
5839
|
-
},
|
|
5840
|
-
|
|
5841
|
-
isImg: function(_, $el) {
|
|
5842
|
-
return isImg($el);
|
|
5843
|
-
},
|
|
5844
|
-
|
|
5845
5827
|
target: {
|
|
5846
5828
|
|
|
5847
5829
|
get: function(ref) {
|
|
@@ -5854,18 +5836,6 @@
|
|
|
5854
5836
|
this.observe();
|
|
5855
5837
|
}
|
|
5856
5838
|
|
|
5857
|
-
},
|
|
5858
|
-
|
|
5859
|
-
offsetTop: function(ref) {
|
|
5860
|
-
var offsetTop = ref.offsetTop;
|
|
5861
|
-
|
|
5862
|
-
return toPx(offsetTop, 'height');
|
|
5863
|
-
},
|
|
5864
|
-
|
|
5865
|
-
offsetLeft: function(ref) {
|
|
5866
|
-
var offsetLeft = ref.offsetLeft;
|
|
5867
|
-
|
|
5868
|
-
return toPx(offsetLeft, 'width');
|
|
5869
5839
|
}
|
|
5870
5840
|
|
|
5871
5841
|
},
|
|
@@ -5873,21 +5843,13 @@
|
|
|
5873
5843
|
connected: function() {
|
|
5874
5844
|
|
|
5875
5845
|
if (!window.IntersectionObserver) {
|
|
5876
|
-
setSrcAttrs(this.$el, this.dataSrc
|
|
5846
|
+
setSrcAttrs(this.$el, this.dataSrc);
|
|
5877
5847
|
return;
|
|
5878
5848
|
}
|
|
5879
5849
|
|
|
5880
|
-
|
|
5881
|
-
|
|
5882
|
-
|
|
5883
|
-
setSrcAttrs(this.$el, getPlaceholderImage(this.width, this.height, this.sizes));
|
|
5884
|
-
}
|
|
5885
|
-
|
|
5886
|
-
this.observer = new IntersectionObserver(this.load, {
|
|
5887
|
-
rootMargin: ((this.offsetTop) + "px " + (this.offsetLeft) + "px")
|
|
5888
|
-
});
|
|
5889
|
-
|
|
5890
|
-
requestAnimationFrame(this.observe);
|
|
5850
|
+
var rootMargin = (toPx(this.offsetTop, 'height')) + "px " + (toPx(this.offsetLeft, 'width')) + "px";
|
|
5851
|
+
this.observer = new IntersectionObserver(this.load, {rootMargin: rootMargin});
|
|
5852
|
+
this.observe();
|
|
5891
5853
|
|
|
5892
5854
|
},
|
|
5893
5855
|
|
|
@@ -5898,34 +5860,26 @@
|
|
|
5898
5860
|
update: {
|
|
5899
5861
|
|
|
5900
5862
|
read: function(ref) {
|
|
5901
|
-
var this$1$1 = this;
|
|
5902
5863
|
var image = ref.image;
|
|
5903
5864
|
|
|
5904
5865
|
|
|
5905
|
-
if (!this.observer) {
|
|
5866
|
+
if (!this.observer || isImg(this.$el)) {
|
|
5906
5867
|
return false;
|
|
5907
5868
|
}
|
|
5908
5869
|
|
|
5909
|
-
|
|
5910
|
-
this.load(this.observer.takeRecords());
|
|
5911
|
-
}
|
|
5912
|
-
|
|
5913
|
-
if (this.isImg) {
|
|
5914
|
-
return false;
|
|
5915
|
-
}
|
|
5916
|
-
|
|
5917
|
-
image && image.then(function (img) { return img && img.currentSrc !== '' && setSrcAttrs(this$1$1.$el, currentSrc(img)); });
|
|
5870
|
+
setSrcAttrs(this.$el, image && image.currentSrc);
|
|
5918
5871
|
|
|
5919
5872
|
},
|
|
5920
5873
|
|
|
5921
|
-
write: function(
|
|
5874
|
+
write: function(store) {
|
|
5922
5875
|
|
|
5923
|
-
|
|
5876
|
+
var srcset = data(this.$el, 'data-srcset');
|
|
5877
|
+
if (srcset && window.devicePixelRatio !== 1) {
|
|
5924
5878
|
|
|
5925
5879
|
var bgSize = css(this.$el, 'backgroundSize');
|
|
5926
|
-
if (bgSize.match(/^(auto\s?)+$/) || toFloat(bgSize) ===
|
|
5927
|
-
|
|
5928
|
-
css(this.$el, 'backgroundSize', ((
|
|
5880
|
+
if (bgSize.match(/^(auto\s?)+$/) || toFloat(bgSize) === store.bgSize) {
|
|
5881
|
+
store.bgSize = getSourceSize(srcset, data(this.$el, 'sizes'));
|
|
5882
|
+
css(this.$el, 'backgroundSize', ((store.bgSize) + "px"));
|
|
5929
5883
|
}
|
|
5930
5884
|
|
|
5931
5885
|
}
|
|
@@ -5939,21 +5893,22 @@
|
|
|
5939
5893
|
methods: {
|
|
5940
5894
|
|
|
5941
5895
|
load: function(entries) {
|
|
5942
|
-
var this$1$1 = this;
|
|
5943
|
-
|
|
5944
5896
|
|
|
5945
5897
|
// Old chromium based browsers (UC Browser) did not implement `isIntersecting`
|
|
5946
5898
|
if (!entries.some(function (entry) { return isUndefined(entry.isIntersecting) || entry.isIntersecting; })) {
|
|
5947
5899
|
return;
|
|
5948
5900
|
}
|
|
5949
5901
|
|
|
5950
|
-
this._data.image
|
|
5902
|
+
if (this._data.image) {
|
|
5903
|
+
return this._data.image;
|
|
5904
|
+
}
|
|
5951
5905
|
|
|
5952
|
-
|
|
5953
|
-
|
|
5954
|
-
|
|
5906
|
+
var image = isImg(this.$el)
|
|
5907
|
+
? this.$el
|
|
5908
|
+
: getImageFromElement(this.$el, this.dataSrc, parseOptions(this.dataSources));
|
|
5955
5909
|
|
|
5956
|
-
|
|
5910
|
+
this._data.image = image;
|
|
5911
|
+
setSrcAttrs(this.$el, image.currentSrc || this.dataSrc);
|
|
5957
5912
|
|
|
5958
5913
|
this.observer.disconnect();
|
|
5959
5914
|
},
|
|
@@ -5970,13 +5925,15 @@
|
|
|
5970
5925
|
|
|
5971
5926
|
};
|
|
5972
5927
|
|
|
5973
|
-
function setSrcAttrs(el, src
|
|
5928
|
+
function setSrcAttrs(el, src) {
|
|
5974
5929
|
|
|
5975
5930
|
if (isImg(el)) {
|
|
5976
|
-
|
|
5977
|
-
|
|
5978
|
-
|
|
5979
|
-
|
|
5931
|
+
|
|
5932
|
+
var parentNode = parent(el);
|
|
5933
|
+
var elements = isPicture(parentNode) ? children(parentNode) : [el];
|
|
5934
|
+
elements.forEach(function (el) { return setSourceProps(el, el); });
|
|
5935
|
+
src && attr(el, 'src', src);
|
|
5936
|
+
|
|
5980
5937
|
} else if (src) {
|
|
5981
5938
|
|
|
5982
5939
|
var change = !includes(el.style.backgroundImage, src);
|
|
@@ -5989,15 +5946,43 @@
|
|
|
5989
5946
|
|
|
5990
5947
|
}
|
|
5991
5948
|
|
|
5992
|
-
|
|
5993
|
-
|
|
5949
|
+
var srcProps = ['data-src', 'data-srcset', 'sizes'];
|
|
5950
|
+
function setSourceProps(sourceEl, targetEl) {
|
|
5951
|
+
srcProps.forEach(function (prop) {
|
|
5952
|
+
var value = data(sourceEl, prop);
|
|
5953
|
+
if (value) {
|
|
5954
|
+
attr(targetEl, prop.replace(/^(data-)+/, ''), value);
|
|
5955
|
+
}
|
|
5956
|
+
});
|
|
5957
|
+
}
|
|
5994
5958
|
|
|
5959
|
+
function getImageFromElement(el, src, sources) {
|
|
5960
|
+
if ( sources === void 0 ) sources = [];
|
|
5995
5961
|
|
|
5996
|
-
|
|
5997
|
-
|
|
5962
|
+
|
|
5963
|
+
if (!src) {
|
|
5964
|
+
return false;
|
|
5998
5965
|
}
|
|
5999
5966
|
|
|
6000
|
-
|
|
5967
|
+
var img = new Image();
|
|
5968
|
+
|
|
5969
|
+
if (!isArray(sources) && isObject(sources)) {
|
|
5970
|
+
sources = [sources];
|
|
5971
|
+
}
|
|
5972
|
+
|
|
5973
|
+
if (sources.length) {
|
|
5974
|
+
var picture = fragment('<picture>');
|
|
5975
|
+
sources.forEach(function (attrs) {
|
|
5976
|
+
var source = fragment('<source>');
|
|
5977
|
+
attr(source, attrs);
|
|
5978
|
+
append(picture, source);
|
|
5979
|
+
});
|
|
5980
|
+
append(picture, img);
|
|
5981
|
+
}
|
|
5982
|
+
|
|
5983
|
+
setSourceProps(el, img);
|
|
5984
|
+
attr(img, 'src', src);
|
|
5985
|
+
return img;
|
|
6001
5986
|
}
|
|
6002
5987
|
|
|
6003
5988
|
var sizesRe = /\s*(.*?)\s*(\w+|calc\(.*?\))\s*(?:,|$)/g;
|
|
@@ -6037,24 +6022,16 @@
|
|
|
6037
6022
|
return descriptors.filter(function (size) { return size >= srcSize; })[0] || descriptors.pop() || '';
|
|
6038
6023
|
}
|
|
6039
6024
|
|
|
6040
|
-
function
|
|
6041
|
-
return el
|
|
6025
|
+
function isPicture(el) {
|
|
6026
|
+
return isA(el, 'PICTURE');
|
|
6042
6027
|
}
|
|
6043
6028
|
|
|
6044
|
-
function
|
|
6045
|
-
return el
|
|
6029
|
+
function isImg(el) {
|
|
6030
|
+
return isA(el, 'IMG');
|
|
6046
6031
|
}
|
|
6047
6032
|
|
|
6048
|
-
|
|
6049
|
-
|
|
6050
|
-
|
|
6051
|
-
// workaround for Safari's private browsing mode and accessing sessionStorage in Blink
|
|
6052
|
-
try {
|
|
6053
|
-
storage = window.sessionStorage || {};
|
|
6054
|
-
storage[key] = 1;
|
|
6055
|
-
delete storage[key];
|
|
6056
|
-
} catch (e) {
|
|
6057
|
-
storage = {};
|
|
6033
|
+
function isA(el, tagName) {
|
|
6034
|
+
return el && el.tagName === tagName;
|
|
6058
6035
|
}
|
|
6059
6036
|
|
|
6060
6037
|
var Media = {
|
|
@@ -6720,7 +6697,7 @@
|
|
|
6720
6697
|
var current = ref.current;
|
|
6721
6698
|
|
|
6722
6699
|
var active = this.getActive();
|
|
6723
|
-
if (active && includes(active.mode, 'hover') && active.target && !within(active.target, current) && !active.
|
|
6700
|
+
if (active && includes(active.mode, 'hover') && active.target && !within(active.target, current) && !active.isDelaying) {
|
|
6724
6701
|
active.hide(false);
|
|
6725
6702
|
}
|
|
6726
6703
|
}
|
|
@@ -6895,7 +6872,11 @@
|
|
|
6895
6872
|
|
|
6896
6873
|
var active = this.getActive();
|
|
6897
6874
|
|
|
6898
|
-
if (matches(this.dropbar, ':hover')
|
|
6875
|
+
if (matches(this.dropbar, ':hover')
|
|
6876
|
+
&& active
|
|
6877
|
+
&& active.$el === $el
|
|
6878
|
+
&& !this.toggles.some(function (el) { return active.target !== el && matches(el, ':focus'); })
|
|
6879
|
+
) {
|
|
6899
6880
|
e.preventDefault();
|
|
6900
6881
|
}
|
|
6901
6882
|
}
|
|
@@ -7687,6 +7668,7 @@
|
|
|
7687
7668
|
mixins: [Class, Media],
|
|
7688
7669
|
|
|
7689
7670
|
props: {
|
|
7671
|
+
position: String,
|
|
7690
7672
|
top: null,
|
|
7691
7673
|
bottom: Boolean,
|
|
7692
7674
|
offset: String,
|
|
@@ -7702,6 +7684,7 @@
|
|
|
7702
7684
|
},
|
|
7703
7685
|
|
|
7704
7686
|
data: {
|
|
7687
|
+
position: 'top',
|
|
7705
7688
|
top: 0,
|
|
7706
7689
|
bottom: false,
|
|
7707
7690
|
offset: 0,
|
|
@@ -7718,10 +7701,23 @@
|
|
|
7718
7701
|
|
|
7719
7702
|
computed: {
|
|
7720
7703
|
|
|
7721
|
-
|
|
7704
|
+
position: function(ref, $el) {
|
|
7705
|
+
var position = ref.position;
|
|
7706
|
+
|
|
7707
|
+
return position === 'auto'
|
|
7708
|
+
? (this.isFixed ? this.placeholder : $el).offsetHeight > height(window)
|
|
7709
|
+
? 'bottom'
|
|
7710
|
+
: 'top'
|
|
7711
|
+
: position;
|
|
7712
|
+
},
|
|
7713
|
+
|
|
7714
|
+
offset: function(ref, $el) {
|
|
7722
7715
|
var offset = ref.offset;
|
|
7723
7716
|
|
|
7724
|
-
|
|
7717
|
+
if (this.position === 'bottom') {
|
|
7718
|
+
offset += '+100vh-100%';
|
|
7719
|
+
}
|
|
7720
|
+
return toPx(offset, 'height', $el);
|
|
7725
7721
|
},
|
|
7726
7722
|
|
|
7727
7723
|
selTarget: function(ref, $el) {
|
|
@@ -7788,7 +7784,7 @@
|
|
|
7788
7784
|
var this$1$1 = this;
|
|
7789
7785
|
|
|
7790
7786
|
|
|
7791
|
-
if (!(this.targetOffset !== false && location.hash && window
|
|
7787
|
+
if (!(this.targetOffset !== false && location.hash && scrollTop(window) > 0)) {
|
|
7792
7788
|
return;
|
|
7793
7789
|
}
|
|
7794
7790
|
|
|
@@ -7821,6 +7817,7 @@
|
|
|
7821
7817
|
|
|
7822
7818
|
read: function(ref, types) {
|
|
7823
7819
|
var height$1 = ref.height;
|
|
7820
|
+
var margin = ref.margin;
|
|
7824
7821
|
|
|
7825
7822
|
|
|
7826
7823
|
this.inactive = !this.matchMedia || !isVisible(this.$el);
|
|
@@ -7829,46 +7826,56 @@
|
|
|
7829
7826
|
return false;
|
|
7830
7827
|
}
|
|
7831
7828
|
|
|
7832
|
-
|
|
7829
|
+
var hide = this.isActive && types.has('resize');
|
|
7830
|
+
if (hide) {
|
|
7833
7831
|
this.hide();
|
|
7834
|
-
height$1 = this.$el.offsetHeight;
|
|
7835
|
-
this.show();
|
|
7836
7832
|
}
|
|
7837
7833
|
|
|
7838
|
-
|
|
7834
|
+
if (!this.isActive) {
|
|
7835
|
+
height$1 = this.$el.offsetHeight;
|
|
7836
|
+
margin = css(this.$el, 'margin');
|
|
7837
|
+
}
|
|
7839
7838
|
|
|
7840
|
-
if (
|
|
7841
|
-
this.
|
|
7842
|
-
return false;
|
|
7839
|
+
if (hide) {
|
|
7840
|
+
this.show();
|
|
7843
7841
|
}
|
|
7844
7842
|
|
|
7843
|
+
var overflow = Math.max(0, height$1 + this.offset - height(window));
|
|
7844
|
+
|
|
7845
7845
|
var referenceElement = this.isFixed ? this.placeholder : this.$el;
|
|
7846
|
-
|
|
7847
|
-
|
|
7848
|
-
this.offsetParentTop = offset(referenceElement.offsetParent).top;
|
|
7846
|
+
var topOffset = offset(referenceElement).top;
|
|
7847
|
+
var offsetParentTop = offset(referenceElement.offsetParent).top;
|
|
7849
7848
|
|
|
7850
|
-
var
|
|
7849
|
+
var top = parseProp(this.top, this.$el, topOffset);
|
|
7850
|
+
var bottom = parseProp(this.bottom, this.$el, topOffset + height$1);
|
|
7851
7851
|
|
|
7852
|
-
|
|
7853
|
-
|
|
7854
|
-
|
|
7852
|
+
var start = Math.max(top, topOffset) - this.offset;
|
|
7853
|
+
var end = bottom
|
|
7854
|
+
? bottom - this.$el.offsetHeight + overflow - this.offset
|
|
7855
|
+
: getScrollingElement(this.$el).scrollHeight - height(window);
|
|
7855
7856
|
|
|
7856
7857
|
return {
|
|
7858
|
+
start: start,
|
|
7859
|
+
end: end,
|
|
7860
|
+
overflow: overflow,
|
|
7861
|
+
topOffset: topOffset,
|
|
7862
|
+
offsetParentTop: offsetParentTop,
|
|
7857
7863
|
height: height$1,
|
|
7858
|
-
|
|
7859
|
-
|
|
7864
|
+
margin: margin,
|
|
7865
|
+
width: dimensions(isVisible(this.widthElement) ? this.widthElement : this.$el).width,
|
|
7866
|
+
top: offsetPosition(this.placeholder)[0]
|
|
7860
7867
|
};
|
|
7861
7868
|
},
|
|
7862
7869
|
|
|
7863
7870
|
write: function(ref) {
|
|
7864
7871
|
var height = ref.height;
|
|
7865
|
-
var
|
|
7872
|
+
var margin = ref.margin;
|
|
7866
7873
|
|
|
7867
7874
|
|
|
7868
7875
|
var ref$1 = this;
|
|
7869
7876
|
var placeholder = ref$1.placeholder;
|
|
7870
7877
|
|
|
7871
|
-
css(placeholder,
|
|
7878
|
+
css(placeholder, {height: height, margin: margin});
|
|
7872
7879
|
|
|
7873
7880
|
if (!within(placeholder, document)) {
|
|
7874
7881
|
after(this.$el, placeholder);
|
|
@@ -7886,14 +7893,29 @@
|
|
|
7886
7893
|
{
|
|
7887
7894
|
|
|
7888
7895
|
read: function(ref) {
|
|
7889
|
-
var
|
|
7896
|
+
var prevScroll = ref.scroll; if ( prevScroll === void 0 ) prevScroll = 0;
|
|
7897
|
+
var prevDir = ref.dir; if ( prevDir === void 0 ) prevDir = 'down';
|
|
7898
|
+
var overflow = ref.overflow;
|
|
7899
|
+
var overflowScroll = ref.overflowScroll; if ( overflowScroll === void 0 ) overflowScroll = 0;
|
|
7900
|
+
var start = ref.start;
|
|
7901
|
+
var end = ref.end;
|
|
7890
7902
|
|
|
7891
7903
|
|
|
7892
|
-
|
|
7904
|
+
var scroll = scrollTop(window);
|
|
7905
|
+
var dir = prevScroll <= scroll ? 'down' : 'up';
|
|
7893
7906
|
|
|
7894
7907
|
return {
|
|
7895
|
-
dir:
|
|
7896
|
-
|
|
7908
|
+
dir: dir,
|
|
7909
|
+
prevDir: prevDir,
|
|
7910
|
+
scroll: scroll,
|
|
7911
|
+
prevScroll: prevScroll,
|
|
7912
|
+
overflowScroll: clamp(
|
|
7913
|
+
overflowScroll
|
|
7914
|
+
+ clamp(scroll, start, end)
|
|
7915
|
+
- clamp(prevScroll, start, end),
|
|
7916
|
+
0,
|
|
7917
|
+
overflow
|
|
7918
|
+
)
|
|
7897
7919
|
};
|
|
7898
7920
|
},
|
|
7899
7921
|
|
|
@@ -7901,35 +7923,34 @@
|
|
|
7901
7923
|
var this$1$1 = this;
|
|
7902
7924
|
|
|
7903
7925
|
|
|
7904
|
-
var now = Date.now();
|
|
7905
7926
|
var isScrollUpdate = types.has('scroll');
|
|
7906
7927
|
var initTimestamp = data.initTimestamp; if ( initTimestamp === void 0 ) initTimestamp = 0;
|
|
7907
7928
|
var dir = data.dir;
|
|
7908
|
-
var
|
|
7909
|
-
var lastScroll = data.lastScroll;
|
|
7929
|
+
var prevDir = data.prevDir;
|
|
7910
7930
|
var scroll = data.scroll;
|
|
7931
|
+
var prevScroll = data.prevScroll; if ( prevScroll === void 0 ) prevScroll = 0;
|
|
7911
7932
|
var top = data.top;
|
|
7933
|
+
var start = data.start;
|
|
7934
|
+
var topOffset = data.topOffset;
|
|
7935
|
+
var height = data.height;
|
|
7912
7936
|
|
|
7913
|
-
|
|
7914
|
-
|
|
7915
|
-
if (scroll < 0 || scroll === lastScroll && isScrollUpdate || this.showOnUp && !isScrollUpdate && !this.isFixed) {
|
|
7937
|
+
if (scroll < 0 || scroll === prevScroll && isScrollUpdate || this.showOnUp && !isScrollUpdate && !this.isFixed) {
|
|
7916
7938
|
return;
|
|
7917
7939
|
}
|
|
7918
7940
|
|
|
7919
|
-
|
|
7941
|
+
var now = Date.now();
|
|
7942
|
+
if (now - initTimestamp > 300 || dir !== prevDir) {
|
|
7920
7943
|
data.initScroll = scroll;
|
|
7921
7944
|
data.initTimestamp = now;
|
|
7922
7945
|
}
|
|
7923
7946
|
|
|
7924
|
-
data.
|
|
7925
|
-
|
|
7926
|
-
if (this.showOnUp && !this.isFixed && Math.abs(data.initScroll - scroll) <= 30 && Math.abs(lastScroll - scroll) <= 10) {
|
|
7947
|
+
if (this.showOnUp && !this.isFixed && Math.abs(data.initScroll - scroll) <= 30 && Math.abs(prevScroll - scroll) <= 10) {
|
|
7927
7948
|
return;
|
|
7928
7949
|
}
|
|
7929
7950
|
|
|
7930
7951
|
if (this.inactive
|
|
7931
|
-
|| scroll <
|
|
7932
|
-
|| this.showOnUp && (scroll <=
|
|
7952
|
+
|| scroll < start
|
|
7953
|
+
|| this.showOnUp && (scroll <= start || dir === 'down' && isScrollUpdate || dir === 'up' && !this.isFixed && scroll <= topOffset + height)
|
|
7933
7954
|
) {
|
|
7934
7955
|
|
|
7935
7956
|
if (!this.isFixed) {
|
|
@@ -7944,7 +7965,7 @@
|
|
|
7944
7965
|
|
|
7945
7966
|
this.isFixed = false;
|
|
7946
7967
|
|
|
7947
|
-
if (this.animation && scroll >
|
|
7968
|
+
if (this.animation && scroll > topOffset) {
|
|
7948
7969
|
Animation.cancel(this.$el);
|
|
7949
7970
|
Animation.out(this.$el, this.animation).then(function () { return this$1$1.hide(); }, noop);
|
|
7950
7971
|
} else {
|
|
@@ -7994,23 +8015,37 @@
|
|
|
7994
8015
|
|
|
7995
8016
|
update: function() {
|
|
7996
8017
|
|
|
7997
|
-
var
|
|
7998
|
-
var
|
|
8018
|
+
var ref = this._data;
|
|
8019
|
+
var width = ref.width;
|
|
8020
|
+
var scroll = ref.scroll; if ( scroll === void 0 ) scroll = 0;
|
|
8021
|
+
var overflow = ref.overflow;
|
|
8022
|
+
var overflowScroll = ref.overflowScroll; if ( overflowScroll === void 0 ) overflowScroll = 0;
|
|
8023
|
+
var start = ref.start;
|
|
8024
|
+
var end = ref.end;
|
|
8025
|
+
var topOffset = ref.topOffset;
|
|
8026
|
+
var height = ref.height;
|
|
8027
|
+
var offsetParentTop = ref.offsetParentTop;
|
|
8028
|
+
var active = start !== 0 || scroll > start;
|
|
8029
|
+
var top = this.offset;
|
|
7999
8030
|
var position = 'fixed';
|
|
8000
8031
|
|
|
8001
|
-
if (
|
|
8002
|
-
top = this.
|
|
8032
|
+
if (scroll > end) {
|
|
8033
|
+
top = end + this.offset - offsetParentTop;
|
|
8003
8034
|
position = 'absolute';
|
|
8004
8035
|
}
|
|
8005
8036
|
|
|
8037
|
+
if (overflow) {
|
|
8038
|
+
top -= overflowScroll;
|
|
8039
|
+
}
|
|
8040
|
+
|
|
8006
8041
|
css(this.$el, {
|
|
8007
8042
|
position: position,
|
|
8008
8043
|
top: (top + "px"),
|
|
8009
|
-
width:
|
|
8044
|
+
width: width
|
|
8010
8045
|
});
|
|
8011
8046
|
|
|
8012
8047
|
this.isActive = active;
|
|
8013
|
-
toggleClass(this.$el, this.clsBelow,
|
|
8048
|
+
toggleClass(this.$el, this.clsBelow, scroll > topOffset + height);
|
|
8014
8049
|
addClass(this.$el, this.clsFixed);
|
|
8015
8050
|
|
|
8016
8051
|
}
|
|
@@ -8019,16 +8054,10 @@
|
|
|
8019
8054
|
|
|
8020
8055
|
};
|
|
8021
8056
|
|
|
8022
|
-
function parseProp(
|
|
8023
|
-
var $props = ref.$props;
|
|
8024
|
-
var $el = ref.$el;
|
|
8025
|
-
var propOffset = ref[(prop + "Offset")];
|
|
8026
|
-
|
|
8027
|
-
|
|
8028
|
-
var value = $props[prop];
|
|
8057
|
+
function parseProp(value, el, propOffset) {
|
|
8029
8058
|
|
|
8030
8059
|
if (!value) {
|
|
8031
|
-
return;
|
|
8060
|
+
return 0;
|
|
8032
8061
|
}
|
|
8033
8062
|
|
|
8034
8063
|
if (isString(value) && value.match(/^-?\d/)) {
|
|
@@ -8037,7 +8066,7 @@
|
|
|
8037
8066
|
|
|
8038
8067
|
} else {
|
|
8039
8068
|
|
|
8040
|
-
return offset(value === true ? parent(
|
|
8069
|
+
return offset(value === true ? parent(el) : query(value, el)).bottom;
|
|
8041
8070
|
|
|
8042
8071
|
}
|
|
8043
8072
|
}
|