uikit 3.14.4-dev.fea9fd466 → 3.15.1-dev.022704dc6
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 +32 -18
- package/build/util.js +1 -0
- package/dist/css/uikit-core-rtl.css +284 -63
- package/dist/css/uikit-core-rtl.min.css +1 -1
- package/dist/css/uikit-core.css +284 -63
- package/dist/css/uikit-core.min.css +1 -1
- package/dist/css/uikit-rtl.css +306 -92
- package/dist/css/uikit-rtl.min.css +1 -1
- package/dist/css/uikit.css +306 -92
- 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 +98 -131
- package/dist/js/components/lightbox-panel.min.js +1 -1
- package/dist/js/components/lightbox.js +98 -131
- package/dist/js/components/lightbox.min.js +1 -1
- package/dist/js/components/notification.js +4 -2
- package/dist/js/components/notification.min.js +1 -1
- package/dist/js/components/parallax.js +1 -1
- package/dist/js/components/parallax.min.js +1 -1
- package/dist/js/components/slider-parallax.js +1 -1
- package/dist/js/components/slider-parallax.min.js +1 -1
- package/dist/js/components/slider.js +9 -2
- package/dist/js/components/slider.min.js +1 -1
- package/dist/js/components/slideshow-parallax.js +1 -1
- package/dist/js/components/slideshow-parallax.min.js +1 -1
- package/dist/js/components/slideshow.js +9 -2
- package/dist/js/components/slideshow.min.js +1 -1
- package/dist/js/components/sortable.js +1 -1
- package/dist/js/components/sortable.min.js +1 -1
- package/dist/js/components/tooltip.js +101 -136
- 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 +531 -486
- package/dist/js/uikit-core.min.js +17 -1
- package/dist/js/uikit-icons.js +1 -1
- package/dist/js/uikit-icons.min.js +1 -1
- package/dist/js/uikit.js +534 -487
- package/dist/js/uikit.min.js +17 -1
- package/package.json +11 -11
- package/src/images/components/navbar-toggle-icon.svg +25 -3
- package/src/js/api/hooks.js +5 -1
- package/src/js/api/state.js +2 -2
- package/src/js/components/notification.js +3 -1
- package/src/js/core/accordion.js +9 -17
- package/src/js/core/alert.js +35 -14
- package/src/js/core/drop.js +110 -82
- package/src/js/core/navbar.js +33 -49
- package/src/js/core/offcanvas.js +8 -4
- package/src/js/core/scroll.js +37 -10
- package/src/js/core/switcher.js +4 -5
- package/src/js/core/toggle.js +4 -7
- package/src/js/mixin/lazyload.js +8 -1
- package/src/js/mixin/modal.js +15 -12
- package/src/js/mixin/position.js +21 -22
- package/src/js/mixin/style.js +11 -0
- package/src/js/mixin/togglable.js +90 -124
- package/src/js/util/animation.js +9 -7
- package/src/js/util/class.js +3 -1
- package/src/js/util/filter.js +3 -7
- package/src/js/util/position.js +136 -130
- package/src/js/util/viewport.js +1 -1
- package/src/less/components/_import.less +1 -0
- package/src/less/components/drop.less +1 -18
- package/src/less/components/dropbar.less +126 -0
- package/src/less/components/dropdown.less +6 -20
- package/src/less/components/nav.less +214 -23
- package/src/less/components/navbar.less +26 -54
- package/src/less/theme/_import.less +1 -0
- package/src/less/theme/dropbar.less +44 -0
- package/src/less/theme/dropdown.less +0 -11
- package/src/less/theme/nav.less +46 -0
- package/src/less/theme/navbar.less +5 -36
- package/src/scss/components/_import.scss +1 -0
- package/src/scss/components/drop.scss +1 -18
- package/src/scss/components/dropbar.scss +126 -0
- package/src/scss/components/dropdown.scss +6 -20
- package/src/scss/components/nav.scss +163 -22
- package/src/scss/components/navbar.scss +26 -54
- package/src/scss/mixins-theme.scss +81 -35
- package/src/scss/mixins.scss +77 -3
- package/src/scss/theme/_import.scss +1 -0
- package/src/scss/theme/dropbar.scss +44 -0
- package/src/scss/theme/dropdown.scss +0 -8
- package/src/scss/theme/nav.scss +44 -0
- package/src/scss/theme/navbar.scss +4 -8
- package/src/scss/variables-theme.scss +58 -13
- package/src/scss/variables.scss +46 -8
- package/tests/accordion.html +2 -2
- package/tests/alert.html +2 -2
- package/tests/countdown.html +1 -1
- package/tests/drop.html +446 -416
- package/tests/dropbar.html +458 -0
- package/tests/dropdown.html +8 -470
- package/tests/filter.html +9 -12
- package/tests/flex.html +36 -36
- package/tests/form.html +1 -1
- package/tests/grid.html +22 -22
- package/tests/height.html +6 -6
- package/tests/index.html +127 -108
- package/tests/js/index.js +1 -4
- package/tests/lightbox.html +5 -5
- package/tests/list.html +8 -8
- package/tests/modal.html +15 -15
- package/tests/nav.html +121 -12
- package/tests/navbar.html +111 -220
- package/tests/offcanvas.html +10 -14
- package/tests/pagination.html +6 -6
- package/tests/parallax.html +1 -1
- package/tests/position.html +18 -16
- package/tests/progress.html +9 -9
- package/tests/scroll.html +7 -10
- package/tests/search.html +6 -6
- package/tests/slider.html +6 -5
- package/tests/slideshow.html +8 -8
- package/tests/sortable.html +6 -8
- package/tests/sticky-navbar.html +15 -15
- package/tests/sticky.html +8 -8
- package/tests/switcher.html +1 -1
- package/tests/tab.html +1 -1
- package/tests/table.html +7 -7
- package/tests/toggle.html +2 -2
- package/tests/tooltip.html +1 -1
- package/tests/upload.html +11 -11
- package/tests/utility.html +16 -16
package/dist/js/uikit.js
CHANGED
|
@@ -1,4 +1,4 @@
|
|
|
1
|
-
/*! UIkit 3.
|
|
1
|
+
/*! UIkit 3.15.1-dev.022704dc6 | 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() :
|
|
@@ -383,12 +383,8 @@
|
|
|
383
383
|
}
|
|
384
384
|
|
|
385
385
|
function closest(element, selector) {
|
|
386
|
-
if (startsWith(selector, '>')) {
|
|
387
|
-
selector = selector.slice(1);
|
|
388
|
-
}
|
|
389
|
-
|
|
390
386
|
return isElement(element) ?
|
|
391
|
-
element.closest(selector) :
|
|
387
|
+
element.closest(startsWith(selector, '>') ? selector.slice(1) : selector) :
|
|
392
388
|
toNodes(element).
|
|
393
389
|
map((element) => closest(element, selector)).
|
|
394
390
|
filter(Boolean);
|
|
@@ -396,8 +392,8 @@
|
|
|
396
392
|
|
|
397
393
|
function within(element, selector) {
|
|
398
394
|
return isString(selector) ?
|
|
399
|
-
|
|
400
|
-
|
|
395
|
+
!!closest(element, selector) :
|
|
396
|
+
toNode(selector).contains(toNode(element));
|
|
401
397
|
}
|
|
402
398
|
|
|
403
399
|
function parents(element, selector) {
|
|
@@ -818,7 +814,9 @@
|
|
|
818
814
|
}
|
|
819
815
|
|
|
820
816
|
function removeClasses(element, cls) {
|
|
821
|
-
attr(element, 'class', (value) =>
|
|
817
|
+
attr(element, 'class', (value) =>
|
|
818
|
+
(value || '').replace(new RegExp("\\b" + cls + "\\b\\s?", 'g'), ''));
|
|
819
|
+
|
|
822
820
|
}
|
|
823
821
|
|
|
824
822
|
function replaceClass(element) {
|
|
@@ -903,13 +901,14 @@
|
|
|
903
901
|
const Transition = {
|
|
904
902
|
start: transition,
|
|
905
903
|
|
|
906
|
-
stop(element) {
|
|
904
|
+
async stop(element) {
|
|
907
905
|
trigger(element, 'transitionend');
|
|
908
|
-
|
|
906
|
+
await Promise.resolve();
|
|
909
907
|
},
|
|
910
908
|
|
|
911
|
-
cancel(element) {
|
|
909
|
+
async cancel(element) {
|
|
912
910
|
trigger(element, 'transitioncanceled');
|
|
911
|
+
await Promise.resolve();
|
|
913
912
|
},
|
|
914
913
|
|
|
915
914
|
inProgress(element) {
|
|
@@ -919,7 +918,7 @@
|
|
|
919
918
|
|
|
920
919
|
const animationPrefix = 'uk-animation-';
|
|
921
920
|
|
|
922
|
-
function animate$
|
|
921
|
+
function animate$2(element, animation, duration, origin, out) {if (duration === void 0) {duration = 200;}
|
|
923
922
|
return Promise.all(
|
|
924
923
|
toNodes(element).map(
|
|
925
924
|
(element) =>
|
|
@@ -953,16 +952,17 @@
|
|
|
953
952
|
|
|
954
953
|
}
|
|
955
954
|
|
|
956
|
-
const
|
|
955
|
+
const inProgressRe = new RegExp(animationPrefix + "(enter|leave)");
|
|
956
|
+
|
|
957
957
|
const Animation = {
|
|
958
|
-
in: animate$
|
|
958
|
+
in: animate$2,
|
|
959
959
|
|
|
960
960
|
out(element, animation, duration, origin) {
|
|
961
|
-
return animate$
|
|
961
|
+
return animate$2(element, animation, duration, origin, true);
|
|
962
962
|
},
|
|
963
963
|
|
|
964
964
|
inProgress(element) {
|
|
965
|
-
return
|
|
965
|
+
return inProgressRe.test(attr(element, 'class'));
|
|
966
966
|
},
|
|
967
967
|
|
|
968
968
|
cancel(element) {
|
|
@@ -1911,7 +1911,7 @@
|
|
|
1911
1911
|
// iOS 12 returns <body> as scrollingElement
|
|
1912
1912
|
viewportElement = documentElement;
|
|
1913
1913
|
} else {
|
|
1914
|
-
rect[start] += toFloat(css(viewportElement, "border" +
|
|
1914
|
+
rect[start] += toFloat(css(viewportElement, "border-" + start + "-width"));
|
|
1915
1915
|
}
|
|
1916
1916
|
rect[prop] = rect[dir] = viewportElement["client" + ucfirst(prop)];
|
|
1917
1917
|
rect[end] = rect[prop] + rect[start];
|
|
@@ -1936,127 +1936,47 @@
|
|
|
1936
1936
|
...options.attach },
|
|
1937
1937
|
|
|
1938
1938
|
offset: [0, 0],
|
|
1939
|
+
placement: [],
|
|
1939
1940
|
...options };
|
|
1940
1941
|
|
|
1941
1942
|
|
|
1942
|
-
|
|
1943
|
-
|
|
1944
|
-
attachTo(element, target, options);
|
|
1945
|
-
|
|
1946
|
-
offset(element, dim);
|
|
1947
|
-
}
|
|
1948
|
-
|
|
1949
|
-
function attachTo(element, target, options) {
|
|
1950
|
-
let { attach, offset: offsetBy } = {
|
|
1951
|
-
attach: {
|
|
1952
|
-
element: ['left', 'top'],
|
|
1953
|
-
target: ['left', 'top'],
|
|
1954
|
-
...options.attach },
|
|
1955
|
-
|
|
1956
|
-
offset: [0, 0],
|
|
1957
|
-
...options };
|
|
1958
|
-
|
|
1959
|
-
|
|
1960
|
-
const position = offset(element);
|
|
1961
|
-
const targetOffset = offset(target);
|
|
1962
|
-
for (const [i, [prop, dir, start, end]] of Object.entries(dirs)) {
|
|
1963
|
-
position[start] = position[dir] =
|
|
1964
|
-
targetOffset[start] +
|
|
1965
|
-
moveBy(attach.target[i], end, targetOffset[prop]) -
|
|
1966
|
-
moveBy(attach.element[i], end, position[prop]) +
|
|
1967
|
-
+offsetBy[i];
|
|
1968
|
-
position[end] = position[start] + position[prop];
|
|
1943
|
+
if (!isArray(target)) {
|
|
1944
|
+
target = [target, target];
|
|
1969
1945
|
}
|
|
1970
|
-
return position;
|
|
1971
|
-
}
|
|
1972
1946
|
|
|
1973
|
-
|
|
1974
|
-
return start === 'center' ? dim / 2 : start === end ? dim : 0;
|
|
1947
|
+
offset(element, getPosition(element, target, options));
|
|
1975
1948
|
}
|
|
1976
1949
|
|
|
1977
|
-
function
|
|
1950
|
+
function getPosition(element, target, options) {
|
|
1978
1951
|
const position = attachTo(element, target, options);
|
|
1979
|
-
const
|
|
1980
|
-
|
|
1981
|
-
let {
|
|
1982
|
-
flip,
|
|
1983
|
-
attach: { element: elAttach, target: targetAttach },
|
|
1984
|
-
offset: elOffset,
|
|
1985
|
-
boundary,
|
|
1986
|
-
viewport,
|
|
1987
|
-
viewportOffset } =
|
|
1988
|
-
options;
|
|
1989
|
-
|
|
1990
|
-
let viewports = scrollParents(element);
|
|
1991
|
-
if (boundary === target) {
|
|
1992
|
-
viewports = viewports.filter((viewport) => viewport !== boundary);
|
|
1993
|
-
}
|
|
1994
|
-
const [scrollElement] = viewports;
|
|
1995
|
-
viewports.push(viewport);
|
|
1996
|
-
|
|
1997
|
-
const offsetPosition = { ...position };
|
|
1998
|
-
for (const [i, [prop, dir, start, end]] of Object.entries(dirs)) {
|
|
1999
|
-
if (flip !== true && !includes(flip, dir)) {
|
|
2000
|
-
continue;
|
|
2001
|
-
}
|
|
2002
|
-
|
|
2003
|
-
const willFlip =
|
|
2004
|
-
!intersectLine(position, targetDim, i) && intersectLine(position, targetDim, 1 - i);
|
|
2005
|
-
|
|
2006
|
-
viewport = getIntersectionArea(...viewports.filter(Boolean).map(offsetViewport));
|
|
2007
|
-
|
|
2008
|
-
if (viewportOffset) {
|
|
2009
|
-
viewport[start] += viewportOffset;
|
|
2010
|
-
viewport[end] -= viewportOffset;
|
|
2011
|
-
}
|
|
1952
|
+
const { boundary, viewportOffset = 0, placement } = options;
|
|
2012
1953
|
|
|
2013
|
-
|
|
2014
|
-
|
|
2015
|
-
|
|
2016
|
-
|
|
2017
|
-
const isInStartBoundary = position[start] >= viewport[start];
|
|
2018
|
-
const isInEndBoundary = position[end] <= viewport[end];
|
|
1954
|
+
let offsetPosition = position;
|
|
1955
|
+
for (const [i, [prop,, start, end]] of Object.entries(dirs)) {
|
|
1956
|
+
const viewport = getViewport$1(target[i], viewportOffset, boundary, i);
|
|
2019
1957
|
|
|
2020
|
-
if (
|
|
1958
|
+
if (isWithin(position, viewport, i)) {
|
|
2021
1959
|
continue;
|
|
2022
1960
|
}
|
|
2023
1961
|
|
|
2024
|
-
let offsetBy;
|
|
1962
|
+
let offsetBy = 0;
|
|
2025
1963
|
|
|
2026
1964
|
// Flip
|
|
2027
|
-
if (
|
|
1965
|
+
if (placement[i] === 'flip') {
|
|
1966
|
+
const attach = options.attach.target[i];
|
|
2028
1967
|
if (
|
|
2029
|
-
|
|
2030
|
-
|
|
1968
|
+
attach === end && position[end] <= viewport[end] ||
|
|
1969
|
+
attach === start && position[start] >= viewport[start])
|
|
2031
1970
|
{
|
|
2032
1971
|
continue;
|
|
2033
1972
|
}
|
|
2034
1973
|
|
|
2035
|
-
offsetBy =
|
|
2036
|
-
(elAttach[i] === start ?
|
|
2037
|
-
-position[prop] :
|
|
2038
|
-
elAttach[i] === end ?
|
|
2039
|
-
position[prop] :
|
|
2040
|
-
0) + (
|
|
2041
|
-
targetAttach[i] === start ?
|
|
2042
|
-
targetDim[prop] :
|
|
2043
|
-
targetAttach[i] === end ?
|
|
2044
|
-
-targetDim[prop] :
|
|
2045
|
-
0) -
|
|
2046
|
-
elOffset[i] * 2;
|
|
1974
|
+
offsetBy = flip(element, target, options, i)[start] - position[start];
|
|
2047
1975
|
|
|
2048
|
-
|
|
2049
|
-
!isInScrollArea(
|
|
2050
|
-
{
|
|
2051
|
-
...position,
|
|
2052
|
-
[start]: position[start] + offsetBy,
|
|
2053
|
-
[end]: position[end] + offsetBy },
|
|
1976
|
+
const scrollArea = getScrollArea(target[i], viewportOffset, i);
|
|
2054
1977
|
|
|
2055
|
-
|
|
2056
|
-
|
|
2057
|
-
|
|
2058
|
-
{
|
|
2059
|
-
if (isInScrollArea(position, scrollElement, i)) {
|
|
1978
|
+
if (!isWithin(applyOffset(position, offsetBy, i), scrollArea, i)) {
|
|
1979
|
+
if (isWithin(position, scrollArea, i)) {
|
|
2060
1980
|
continue;
|
|
2061
1981
|
}
|
|
2062
1982
|
|
|
@@ -2064,27 +1984,19 @@
|
|
|
2064
1984
|
return false;
|
|
2065
1985
|
}
|
|
2066
1986
|
|
|
2067
|
-
|
|
2068
|
-
const newPos = attachToWithFlip(element, target, {
|
|
2069
|
-
...options,
|
|
2070
|
-
attach: {
|
|
2071
|
-
element: elAttach.map(flipDir).reverse(),
|
|
2072
|
-
target: targetAttach.map(flipDir).reverse() },
|
|
2073
|
-
|
|
2074
|
-
offset: elOffset.reverse(),
|
|
2075
|
-
flip: flip === true ? flip : [...flip, dirs[1 - i][1]],
|
|
2076
|
-
recursion: true });
|
|
2077
|
-
|
|
1987
|
+
const newPos = flipAxis(element, target, options);
|
|
2078
1988
|
|
|
2079
|
-
|
|
2080
|
-
|
|
2081
|
-
}
|
|
1989
|
+
if (newPos && isWithin(newPos, scrollArea, 1 - i)) {
|
|
1990
|
+
return newPos;
|
|
2082
1991
|
}
|
|
1992
|
+
|
|
2083
1993
|
continue;
|
|
2084
1994
|
}
|
|
2085
1995
|
|
|
2086
|
-
//
|
|
2087
|
-
} else {
|
|
1996
|
+
// Shift
|
|
1997
|
+
} else if (placement[i] === 'shift') {
|
|
1998
|
+
const targetDim = offset(target[i]);
|
|
1999
|
+
const { offset: elOffset } = options;
|
|
2088
2000
|
offsetBy =
|
|
2089
2001
|
clamp(
|
|
2090
2002
|
clamp(position[start], viewport[start], viewport[end] - position[prop]),
|
|
@@ -2093,13 +2005,78 @@
|
|
|
2093
2005
|
position[start];
|
|
2094
2006
|
}
|
|
2095
2007
|
|
|
2096
|
-
offsetPosition
|
|
2097
|
-
offsetPosition[end] += offsetBy;
|
|
2008
|
+
offsetPosition = applyOffset(offsetPosition, offsetBy, i);
|
|
2098
2009
|
}
|
|
2099
2010
|
|
|
2100
2011
|
return offsetPosition;
|
|
2101
2012
|
}
|
|
2102
2013
|
|
|
2014
|
+
function attachTo(element, target, options) {
|
|
2015
|
+
let { attach, offset: offsetBy } = {
|
|
2016
|
+
attach: {
|
|
2017
|
+
element: ['left', 'top'],
|
|
2018
|
+
target: ['left', 'top'],
|
|
2019
|
+
...options.attach },
|
|
2020
|
+
|
|
2021
|
+
offset: [0, 0],
|
|
2022
|
+
...options };
|
|
2023
|
+
|
|
2024
|
+
|
|
2025
|
+
let elOffset = offset(element);
|
|
2026
|
+
|
|
2027
|
+
for (const [i, [prop,, start, end]] of Object.entries(dirs)) {
|
|
2028
|
+
const targetOffset =
|
|
2029
|
+
attach.target[i] === attach.element[i] ? offsetViewport(target[i]) : offset(target[i]);
|
|
2030
|
+
|
|
2031
|
+
elOffset = applyOffset(
|
|
2032
|
+
elOffset,
|
|
2033
|
+
targetOffset[start] -
|
|
2034
|
+
elOffset[start] +
|
|
2035
|
+
moveBy(attach.target[i], end, targetOffset[prop]) -
|
|
2036
|
+
moveBy(attach.element[i], end, elOffset[prop]) +
|
|
2037
|
+
+offsetBy[i],
|
|
2038
|
+
i);
|
|
2039
|
+
|
|
2040
|
+
}
|
|
2041
|
+
return elOffset;
|
|
2042
|
+
}
|
|
2043
|
+
|
|
2044
|
+
function applyOffset(position, offset, i) {
|
|
2045
|
+
const [, dir, start, end] = dirs[i];
|
|
2046
|
+
const newPos = { ...position };
|
|
2047
|
+
newPos[start] = position[dir] = position[start] + offset;
|
|
2048
|
+
newPos[end] += offset;
|
|
2049
|
+
return newPos;
|
|
2050
|
+
}
|
|
2051
|
+
|
|
2052
|
+
function moveBy(attach, end, dim) {
|
|
2053
|
+
return attach === 'center' ? dim / 2 : attach === end ? dim : 0;
|
|
2054
|
+
}
|
|
2055
|
+
|
|
2056
|
+
function getViewport$1(element, viewportOffset, boundary, i) {
|
|
2057
|
+
let viewport = getIntersectionArea(...scrollParents(element).map(offsetViewport));
|
|
2058
|
+
|
|
2059
|
+
if (viewportOffset) {
|
|
2060
|
+
viewport[dirs[i][2]] += viewportOffset;
|
|
2061
|
+
viewport[dirs[i][3]] -= viewportOffset;
|
|
2062
|
+
}
|
|
2063
|
+
|
|
2064
|
+
if (boundary) {
|
|
2065
|
+
viewport = getIntersectionArea(viewport, offset(boundary));
|
|
2066
|
+
}
|
|
2067
|
+
|
|
2068
|
+
return viewport;
|
|
2069
|
+
}
|
|
2070
|
+
|
|
2071
|
+
function getScrollArea(element, viewportOffset, i) {
|
|
2072
|
+
const [prop,, start, end] = dirs[i];
|
|
2073
|
+
const [scrollElement] = scrollParents(element);
|
|
2074
|
+
const viewport = offsetViewport(scrollElement);
|
|
2075
|
+
viewport[start] -= scrollElement["scroll" + ucfirst(start)] - viewportOffset;
|
|
2076
|
+
viewport[end] = viewport[start] + scrollElement["scroll" + ucfirst(prop)] - viewportOffset;
|
|
2077
|
+
return viewport;
|
|
2078
|
+
}
|
|
2079
|
+
|
|
2103
2080
|
function getIntersectionArea() {
|
|
2104
2081
|
let area = {};for (var _len = arguments.length, rects = new Array(_len), _key = 0; _key < _len; _key++) {rects[_key] = arguments[_key];}
|
|
2105
2082
|
for (const rect of rects) {
|
|
@@ -2111,21 +2088,44 @@
|
|
|
2111
2088
|
return area;
|
|
2112
2089
|
}
|
|
2113
2090
|
|
|
2114
|
-
function
|
|
2115
|
-
const
|
|
2116
|
-
|
|
2117
|
-
|
|
2118
|
-
|
|
2091
|
+
function isWithin(positionA, positionB, i) {
|
|
2092
|
+
const [,, start, end] = dirs[i];
|
|
2093
|
+
return positionA[start] >= positionB[start] && positionA[end] <= positionB[end];
|
|
2094
|
+
}
|
|
2095
|
+
|
|
2096
|
+
function flip(element, target, _ref, i) {let { offset, attach } = _ref;
|
|
2097
|
+
return attachTo(element, target, {
|
|
2098
|
+
attach: {
|
|
2099
|
+
element: flipAttach(attach.element, i),
|
|
2100
|
+
target: flipAttach(attach.target, i) },
|
|
2101
|
+
|
|
2102
|
+
offset: flipOffset(offset, i) });
|
|
2103
|
+
|
|
2104
|
+
}
|
|
2105
|
+
|
|
2106
|
+
function flipAxis(element, target, options) {
|
|
2107
|
+
return getPosition(element, target, {
|
|
2108
|
+
...options,
|
|
2109
|
+
attach: {
|
|
2110
|
+
element: options.attach.element.map(flipAttachAxis).reverse(),
|
|
2111
|
+
target: options.attach.target.map(flipAttachAxis).reverse() },
|
|
2112
|
+
|
|
2113
|
+
offset: options.offset.reverse(),
|
|
2114
|
+
placement: options.placement.reverse(),
|
|
2115
|
+
recursion: true });
|
|
2119
2116
|
|
|
2120
|
-
return position[start] >= viewport[start] && position[end] <= viewport[end];
|
|
2121
2117
|
}
|
|
2122
2118
|
|
|
2123
|
-
function
|
|
2124
|
-
const
|
|
2125
|
-
|
|
2119
|
+
function flipAttach(attach, i) {
|
|
2120
|
+
const newAttach = [...attach];
|
|
2121
|
+
const index = dirs[i].indexOf(attach[i]);
|
|
2122
|
+
if (~index) {
|
|
2123
|
+
newAttach[i] = dirs[i][1 - index % 2 + 2];
|
|
2124
|
+
}
|
|
2125
|
+
return newAttach;
|
|
2126
2126
|
}
|
|
2127
2127
|
|
|
2128
|
-
function
|
|
2128
|
+
function flipAttachAxis(prop) {
|
|
2129
2129
|
for (let i = 0; i < dirs.length; i++) {
|
|
2130
2130
|
const index = dirs[i].indexOf(prop);
|
|
2131
2131
|
if (~index) {
|
|
@@ -2134,13 +2134,17 @@
|
|
|
2134
2134
|
}
|
|
2135
2135
|
}
|
|
2136
2136
|
|
|
2137
|
+
function flipOffset(offset, i) {
|
|
2138
|
+
offset = [...offset];
|
|
2139
|
+
offset[i] *= -1;
|
|
2140
|
+
return offset;
|
|
2141
|
+
}
|
|
2142
|
+
|
|
2137
2143
|
var util = /*#__PURE__*/Object.freeze({
|
|
2138
2144
|
__proto__: null,
|
|
2139
2145
|
ajax: ajax,
|
|
2140
2146
|
getImage: getImage,
|
|
2141
|
-
transition: transition,
|
|
2142
2147
|
Transition: Transition,
|
|
2143
|
-
animate: animate$1,
|
|
2144
2148
|
Animation: Animation,
|
|
2145
2149
|
attr: attr,
|
|
2146
2150
|
hasAttr: hasAttr,
|
|
@@ -2445,7 +2449,11 @@
|
|
|
2445
2449
|
}
|
|
2446
2450
|
|
|
2447
2451
|
if (write && result !== false) {
|
|
2448
|
-
fastdom.write(() =>
|
|
2452
|
+
fastdom.write(() => {
|
|
2453
|
+
if (this._connected) {
|
|
2454
|
+
write.call(this, this._data, types);
|
|
2455
|
+
}
|
|
2456
|
+
});
|
|
2449
2457
|
}
|
|
2450
2458
|
}
|
|
2451
2459
|
}
|
|
@@ -2594,7 +2602,7 @@
|
|
|
2594
2602
|
|
|
2595
2603
|
value = props[key] === Boolean && value === '' ? true : coerce$1(props[key], value);
|
|
2596
2604
|
|
|
2597
|
-
if (prop === 'target' &&
|
|
2605
|
+
if (prop === 'target' && startsWith(value, '_')) {
|
|
2598
2606
|
continue;
|
|
2599
2607
|
}
|
|
2600
2608
|
|
|
@@ -2605,7 +2613,7 @@
|
|
|
2605
2613
|
|
|
2606
2614
|
for (const key in options) {
|
|
2607
2615
|
const prop = camelize(key);
|
|
2608
|
-
if (props[prop]
|
|
2616
|
+
if (!isUndefined(props[prop])) {
|
|
2609
2617
|
data$1[prop] = coerce$1(props[prop], options[key]);
|
|
2610
2618
|
}
|
|
2611
2619
|
}
|
|
@@ -2934,7 +2942,7 @@
|
|
|
2934
2942
|
UIkit.data = '__uikit__';
|
|
2935
2943
|
UIkit.prefix = 'uk-';
|
|
2936
2944
|
UIkit.options = {};
|
|
2937
|
-
UIkit.version = '3.
|
|
2945
|
+
UIkit.version = '3.15.1-dev.022704dc6';
|
|
2938
2946
|
|
|
2939
2947
|
globalAPI(UIkit);
|
|
2940
2948
|
hooksAPI(UIkit);
|
|
@@ -3005,13 +3013,20 @@
|
|
|
3005
3013
|
} };
|
|
3006
3014
|
|
|
3007
3015
|
var Lazyload = {
|
|
3016
|
+
data: {
|
|
3017
|
+
preload: 5 },
|
|
3018
|
+
|
|
3019
|
+
|
|
3008
3020
|
methods: {
|
|
3009
3021
|
lazyload(observeTargets, targets) {if (observeTargets === void 0) {observeTargets = this.$el;}if (targets === void 0) {targets = this.$el;}
|
|
3010
3022
|
this.registerObserver(
|
|
3011
3023
|
observeIntersection(observeTargets, (entries, observer) => {
|
|
3012
3024
|
for (const el of toNodes(isFunction(targets) ? targets() : targets)) {
|
|
3013
|
-
$$('[loading="lazy"]', el).
|
|
3025
|
+
$$('[loading="lazy"]', el).
|
|
3026
|
+
slice(0, this.preload - 1).
|
|
3027
|
+
forEach((el) => removeAttr(el, 'loading'));
|
|
3014
3028
|
}
|
|
3029
|
+
|
|
3015
3030
|
for (const el of entries.
|
|
3016
3031
|
filter((_ref) => {let { isIntersecting } = _ref;return isIntersecting;}).
|
|
3017
3032
|
map((_ref2) => {let { target } = _ref2;return target;})) {
|
|
@@ -3039,27 +3054,7 @@
|
|
|
3039
3054
|
origin: false,
|
|
3040
3055
|
transition: 'ease',
|
|
3041
3056
|
clsEnter: 'uk-togglabe-enter',
|
|
3042
|
-
clsLeave: 'uk-togglabe-leave',
|
|
3043
|
-
|
|
3044
|
-
initProps: {
|
|
3045
|
-
overflow: '',
|
|
3046
|
-
maxHeight: '',
|
|
3047
|
-
paddingTop: '',
|
|
3048
|
-
paddingBottom: '',
|
|
3049
|
-
marginTop: '',
|
|
3050
|
-
marginBottom: '',
|
|
3051
|
-
boxShadow: '' },
|
|
3052
|
-
|
|
3053
|
-
|
|
3054
|
-
hideProps: {
|
|
3055
|
-
overflow: 'hidden',
|
|
3056
|
-
maxHeight: 0,
|
|
3057
|
-
paddingTop: 0,
|
|
3058
|
-
paddingBottom: 0,
|
|
3059
|
-
marginTop: 0,
|
|
3060
|
-
marginBottom: 0,
|
|
3061
|
-
boxShadow: 'none' } },
|
|
3062
|
-
|
|
3057
|
+
clsLeave: 'uk-togglabe-leave' },
|
|
3063
3058
|
|
|
3064
3059
|
|
|
3065
3060
|
computed: {
|
|
@@ -3068,7 +3063,7 @@
|
|
|
3068
3063
|
},
|
|
3069
3064
|
|
|
3070
3065
|
hasTransition(_ref2) {let { animation } = _ref2;
|
|
3071
|
-
return startsWith(animation[0],
|
|
3066
|
+
return ['slide', 'reveal'].some((transition) => startsWith(animation[0], transition));
|
|
3072
3067
|
} },
|
|
3073
3068
|
|
|
3074
3069
|
|
|
@@ -3161,122 +3156,107 @@
|
|
|
3161
3156
|
};
|
|
3162
3157
|
}
|
|
3163
3158
|
|
|
3164
|
-
function toggleTransition(cmp) {
|
|
3165
|
-
|
|
3166
|
-
case 'slide-left':
|
|
3167
|
-
return slideHorizontal(cmp);
|
|
3168
|
-
case 'slide-right':
|
|
3169
|
-
return slideHorizontal(cmp, true);}
|
|
3170
|
-
|
|
3171
|
-
return slide$1(cmp);
|
|
3172
|
-
}
|
|
3173
|
-
|
|
3174
|
-
function slide$1(_ref4)
|
|
3175
|
-
|
|
3176
|
-
|
|
3159
|
+
function toggleTransition(cmp) {var _cmp$animation$;
|
|
3160
|
+
const [mode = 'reveal', startProp = 'top'] = ((_cmp$animation$ = cmp.animation[0]) == null ? void 0 : _cmp$animation$.split('-')) || [];
|
|
3177
3161
|
|
|
3162
|
+
const dirs = [
|
|
3163
|
+
['left', 'right'],
|
|
3164
|
+
['top', 'bottom']];
|
|
3178
3165
|
|
|
3166
|
+
const dir = dirs[includes(dirs[0], startProp) ? 0 : 1];
|
|
3167
|
+
const end = dir[1] === startProp;
|
|
3168
|
+
const props = ['width', 'height'];
|
|
3169
|
+
const dimProp = props[dirs.indexOf(dir)];
|
|
3170
|
+
const marginProp = "margin-" + dir[0];
|
|
3171
|
+
const marginStartProp = "margin-" + startProp;
|
|
3179
3172
|
|
|
3173
|
+
return async (el, show) => {
|
|
3174
|
+
let { duration, velocity, transition, _toggle } = cmp;
|
|
3180
3175
|
|
|
3176
|
+
let currentDim = dimensions$1(el)[dimProp];
|
|
3181
3177
|
|
|
3182
|
-
{let { isToggled, duration, velocity, initProps, hideProps, transition, _toggle } = _ref4;
|
|
3183
|
-
return (el, show) => {
|
|
3184
3178
|
const inProgress = Transition.inProgress(el);
|
|
3185
|
-
|
|
3186
|
-
!inProgress && el.hasChildNodes() ?
|
|
3187
|
-
toFloat(css(el.firstElementChild, 'marginTop')) +
|
|
3188
|
-
toFloat(css(el.lastElementChild, 'marginBottom')) :
|
|
3189
|
-
0;
|
|
3190
|
-
const currentHeight = isVisible(el) ? toFloat(css(el, 'height')) + inner : 0;
|
|
3191
|
-
|
|
3192
|
-
const props = inProgress ? css(el, Object.keys(initProps)) : show ? hideProps : initProps;
|
|
3179
|
+
await Transition.cancel(el);
|
|
3193
3180
|
|
|
3194
|
-
|
|
3195
|
-
|
|
3196
|
-
if (!isToggled(el)) {
|
|
3181
|
+
if (show) {
|
|
3197
3182
|
_toggle(el, true);
|
|
3198
3183
|
}
|
|
3199
3184
|
|
|
3200
|
-
|
|
3201
|
-
|
|
3202
|
-
|
|
3203
|
-
|
|
3204
|
-
|
|
3205
|
-
|
|
3206
|
-
|
|
3207
|
-
|
|
3208
|
-
|
|
3209
|
-
|
|
3210
|
-
|
|
3211
|
-
|
|
3212
|
-
|
|
3213
|
-
el
|
|
3214
|
-
|
|
3215
|
-
|
|
3216
|
-
|
|
3217
|
-
|
|
3218
|
-
|
|
3219
|
-
|
|
3220
|
-
|
|
3221
|
-
|
|
3222
|
-
|
|
3223
|
-
|
|
3224
|
-
|
|
3225
|
-
|
|
3226
|
-
|
|
3227
|
-
|
|
3228
|
-
|
|
3229
|
-
|
|
3230
|
-
|
|
3231
|
-
|
|
3232
|
-
|
|
3233
|
-
|
|
3234
|
-
|
|
3235
|
-
|
|
3236
|
-
css(scrollElement, 'overflowX', 'hidden');
|
|
3237
|
-
|
|
3238
|
-
if (!isToggled(el)) {
|
|
3239
|
-
_toggle(el, true);
|
|
3240
|
-
}
|
|
3185
|
+
const prevProps = Object.fromEntries(
|
|
3186
|
+
[
|
|
3187
|
+
'padding',
|
|
3188
|
+
'border',
|
|
3189
|
+
'width',
|
|
3190
|
+
'height',
|
|
3191
|
+
'overflowY',
|
|
3192
|
+
'overflowX',
|
|
3193
|
+
marginProp,
|
|
3194
|
+
marginStartProp].
|
|
3195
|
+
map((key) => [key, el.style[key]]));
|
|
3196
|
+
|
|
3197
|
+
|
|
3198
|
+
const dim = dimensions$1(el);
|
|
3199
|
+
const currentMargin = toFloat(css(el, marginProp));
|
|
3200
|
+
const marginStart = toFloat(css(el, marginStartProp));
|
|
3201
|
+
const endDim = dim[dimProp] + marginStart;
|
|
3202
|
+
|
|
3203
|
+
if (!inProgress && !show) {
|
|
3204
|
+
currentDim += marginStart;
|
|
3205
|
+
}
|
|
3206
|
+
|
|
3207
|
+
const [wrapper] = wrapInner(el, '<div>');
|
|
3208
|
+
css(wrapper, {
|
|
3209
|
+
boxSizing: 'border-box',
|
|
3210
|
+
height: dim.height,
|
|
3211
|
+
width: dim.width,
|
|
3212
|
+
...css(el, [
|
|
3213
|
+
'overflow',
|
|
3214
|
+
'padding',
|
|
3215
|
+
'borderTop',
|
|
3216
|
+
'borderRight',
|
|
3217
|
+
'borderBottom',
|
|
3218
|
+
'borderLeft',
|
|
3219
|
+
'borderImage',
|
|
3220
|
+
marginStartProp]) });
|
|
3241
3221
|
|
|
3242
|
-
const width = toFloat(css(el, 'width'));
|
|
3243
|
-
duration = velocity * width + duration;
|
|
3244
3222
|
|
|
3245
|
-
const percent = visible ? (width + marginLeft * (right ? -1 : 1)) / width * 100 : 0;
|
|
3246
3223
|
|
|
3247
3224
|
css(el, {
|
|
3248
|
-
|
|
3249
|
-
|
|
3250
|
-
|
|
3251
|
-
|
|
3225
|
+
padding: 0,
|
|
3226
|
+
border: 0,
|
|
3227
|
+
minWidth: 0,
|
|
3228
|
+
minHeight: 0,
|
|
3229
|
+
[marginStartProp]: 0,
|
|
3230
|
+
width: dim.width,
|
|
3231
|
+
height: dim.height,
|
|
3232
|
+
overflow: 'hidden',
|
|
3233
|
+
[dimProp]: currentDim });
|
|
3252
3234
|
|
|
3253
3235
|
|
|
3254
|
-
|
|
3255
|
-
show ?
|
|
3256
|
-
|
|
3257
|
-
el,
|
|
3258
|
-
{
|
|
3259
|
-
clipPath: "polygon(0 0,100% 0,100% 100%,0 100%)",
|
|
3260
|
-
marginLeft: 0 },
|
|
3236
|
+
const percent = currentDim / endDim;
|
|
3237
|
+
duration = (velocity * endDim + duration) * (show ? 1 - percent : percent);
|
|
3238
|
+
const endProps = { [dimProp]: show ? endDim : 0 };
|
|
3261
3239
|
|
|
3262
|
-
|
|
3263
|
-
|
|
3264
|
-
|
|
3265
|
-
|
|
3266
|
-
el,
|
|
3267
|
-
{
|
|
3268
|
-
clipPath: right ? "polygon(0 0,0 0,0 100%,0 100%)" : "polygon(100% 0,100% 0,100% 100%,100% 100%)",
|
|
3240
|
+
if (end) {
|
|
3241
|
+
css(el, marginProp, endDim - currentDim + currentMargin);
|
|
3242
|
+
endProps[marginProp] = show ? currentMargin : endDim + currentMargin;
|
|
3243
|
+
}
|
|
3269
3244
|
|
|
3245
|
+
if (!end ^ mode === 'reveal') {
|
|
3246
|
+
css(wrapper, marginProp, -endDim + currentDim);
|
|
3247
|
+
Transition.start(wrapper, { [marginProp]: show ? 0 : -endDim }, duration, transition);
|
|
3248
|
+
}
|
|
3270
3249
|
|
|
3271
|
-
|
|
3250
|
+
try {
|
|
3251
|
+
await Transition.start(el, endProps, duration, transition);
|
|
3252
|
+
} finally {
|
|
3253
|
+
css(el, prevProps);
|
|
3254
|
+
unwrap(wrapper.firstChild);
|
|
3272
3255
|
|
|
3273
|
-
|
|
3274
|
-
|
|
3275
|
-
|
|
3276
|
-
|
|
3277
|
-
css(scrollElement, 'overflowX', '');
|
|
3278
|
-
css(el, { clipPath: '', marginLeft: '' });
|
|
3279
|
-
});
|
|
3256
|
+
if (!show) {
|
|
3257
|
+
_toggle(el, false);
|
|
3258
|
+
}
|
|
3259
|
+
}
|
|
3280
3260
|
};
|
|
3281
3261
|
}
|
|
3282
3262
|
|
|
@@ -3301,6 +3281,7 @@
|
|
|
3301
3281
|
mixins: [Class, Lazyload, Togglable],
|
|
3302
3282
|
|
|
3303
3283
|
props: {
|
|
3284
|
+
animation: Boolean,
|
|
3304
3285
|
targets: String,
|
|
3305
3286
|
active: null,
|
|
3306
3287
|
collapsible: Boolean,
|
|
@@ -3313,7 +3294,7 @@
|
|
|
3313
3294
|
data: {
|
|
3314
3295
|
targets: '> *',
|
|
3315
3296
|
active: false,
|
|
3316
|
-
animation:
|
|
3297
|
+
animation: true,
|
|
3317
3298
|
collapsible: true,
|
|
3318
3299
|
multiple: false,
|
|
3319
3300
|
clsOpen: 'uk-open',
|
|
@@ -3359,7 +3340,7 @@
|
|
|
3359
3340
|
hide(
|
|
3360
3341
|
el,
|
|
3361
3342
|
!hasClass(
|
|
3362
|
-
this.items.find((item) =>
|
|
3343
|
+
this.items.find((item) => within(el, item)),
|
|
3363
3344
|
this.clsOpen));
|
|
3364
3345
|
|
|
3365
3346
|
|
|
@@ -3411,23 +3392,15 @@
|
|
|
3411
3392
|
toggleClass(el, this.clsOpen, show);
|
|
3412
3393
|
attr($(this.$props.toggle, el), 'aria-expanded', show);
|
|
3413
3394
|
|
|
3414
|
-
const content = $(
|
|
3395
|
+
const content = $(this.content, el);
|
|
3415
3396
|
|
|
3416
|
-
if (animate === false || !this.
|
|
3397
|
+
if (animate === false || !this.animation) {
|
|
3398
|
+
content.hidden = !show;
|
|
3417
3399
|
hide(content, !show);
|
|
3418
3400
|
return;
|
|
3419
3401
|
}
|
|
3420
3402
|
|
|
3421
|
-
|
|
3422
|
-
el._wrapper = wrapAll(content, "<div" + (show ? ' hidden' : '') + ">");
|
|
3423
|
-
}
|
|
3424
|
-
|
|
3425
|
-
hide(content, false);
|
|
3426
|
-
await slide$1(this)(el._wrapper, show);
|
|
3427
|
-
hide(content, !show);
|
|
3428
|
-
|
|
3429
|
-
delete el._wrapper;
|
|
3430
|
-
unwrap(content);
|
|
3403
|
+
await toggleTransition(this)(content, show);
|
|
3431
3404
|
|
|
3432
3405
|
if (show) {
|
|
3433
3406
|
const toggle = $(this.$props.toggle, el);
|
|
@@ -3453,18 +3426,17 @@
|
|
|
3453
3426
|
args: 'animation',
|
|
3454
3427
|
|
|
3455
3428
|
props: {
|
|
3429
|
+
animation: Boolean,
|
|
3456
3430
|
close: String },
|
|
3457
3431
|
|
|
3458
3432
|
|
|
3459
3433
|
data: {
|
|
3460
|
-
animation:
|
|
3434
|
+
animation: true,
|
|
3461
3435
|
selClose: '.uk-alert-close',
|
|
3462
|
-
duration: 150,
|
|
3463
|
-
hideProps: { opacity: 0, ...Togglable.data.hideProps } },
|
|
3436
|
+
duration: 150 },
|
|
3464
3437
|
|
|
3465
3438
|
|
|
3466
|
-
events:
|
|
3467
|
-
{
|
|
3439
|
+
events: {
|
|
3468
3440
|
name: 'click',
|
|
3469
3441
|
|
|
3470
3442
|
delegate() {
|
|
@@ -3474,16 +3446,39 @@
|
|
|
3474
3446
|
handler(e) {
|
|
3475
3447
|
e.preventDefault();
|
|
3476
3448
|
this.close();
|
|
3477
|
-
} }
|
|
3478
|
-
|
|
3449
|
+
} },
|
|
3479
3450
|
|
|
3480
3451
|
|
|
3481
3452
|
methods: {
|
|
3482
3453
|
async close() {
|
|
3483
|
-
await this.toggleElement(this.$el);
|
|
3454
|
+
await this.toggleElement(this.$el, false, animate$1(this));
|
|
3484
3455
|
this.$destroy(true);
|
|
3485
3456
|
} } };
|
|
3486
3457
|
|
|
3458
|
+
|
|
3459
|
+
|
|
3460
|
+
function animate$1(_ref) {let { duration, transition, velocity } = _ref;
|
|
3461
|
+
return (el) => {
|
|
3462
|
+
const height = toFloat(css(el, 'height'));
|
|
3463
|
+
css(el, 'height', height);
|
|
3464
|
+
return Transition.start(
|
|
3465
|
+
el,
|
|
3466
|
+
{
|
|
3467
|
+
height: 0,
|
|
3468
|
+
marginTop: 0,
|
|
3469
|
+
marginBottom: 0,
|
|
3470
|
+
paddingTop: 0,
|
|
3471
|
+
paddingBottom: 0,
|
|
3472
|
+
borderTop: 0,
|
|
3473
|
+
borderBottom: 0,
|
|
3474
|
+
opacity: 0 },
|
|
3475
|
+
|
|
3476
|
+
velocity * height + duration,
|
|
3477
|
+
transition);
|
|
3478
|
+
|
|
3479
|
+
};
|
|
3480
|
+
}
|
|
3481
|
+
|
|
3487
3482
|
var Video = {
|
|
3488
3483
|
args: 'autoplay',
|
|
3489
3484
|
|
|
@@ -3632,13 +3627,17 @@
|
|
|
3632
3627
|
props: {
|
|
3633
3628
|
pos: String,
|
|
3634
3629
|
offset: null,
|
|
3635
|
-
flip: Boolean
|
|
3630
|
+
flip: Boolean,
|
|
3631
|
+
shift: Boolean,
|
|
3632
|
+
inset: Boolean },
|
|
3636
3633
|
|
|
3637
3634
|
|
|
3638
3635
|
data: {
|
|
3639
3636
|
pos: "bottom-" + (isRtl ? 'right' : 'left'),
|
|
3637
|
+
offset: false,
|
|
3640
3638
|
flip: true,
|
|
3641
|
-
|
|
3639
|
+
shift: true,
|
|
3640
|
+
inset: false },
|
|
3642
3641
|
|
|
3643
3642
|
|
|
3644
3643
|
connected() {
|
|
@@ -3650,17 +3649,19 @@
|
|
|
3650
3649
|
methods: {
|
|
3651
3650
|
positionAt(element, target, boundary) {
|
|
3652
3651
|
let offset = [this.getPositionOffset(element), this.getShiftOffset(element)];
|
|
3652
|
+
const placement = [this.flip && 'flip', this.shift && 'shift'];
|
|
3653
3653
|
|
|
3654
3654
|
const attach = {
|
|
3655
|
-
element: [flipPosition(this.dir), this.align],
|
|
3655
|
+
element: [this.inset ? this.dir : flipPosition(this.dir), this.align],
|
|
3656
3656
|
target: [this.dir, this.align] };
|
|
3657
3657
|
|
|
3658
3658
|
|
|
3659
3659
|
if (this.axis === 'y') {
|
|
3660
3660
|
for (const prop in attach) {
|
|
3661
|
-
attach[prop]
|
|
3661
|
+
attach[prop].reverse();
|
|
3662
3662
|
}
|
|
3663
|
-
offset
|
|
3663
|
+
offset.reverse();
|
|
3664
|
+
placement.reverse();
|
|
3664
3665
|
}
|
|
3665
3666
|
|
|
3666
3667
|
const [scrollElement] = scrollParents(element, /auto|scroll/);
|
|
@@ -3670,21 +3671,13 @@
|
|
|
3670
3671
|
const elDim = dimensions$1(element);
|
|
3671
3672
|
css(element, { top: -elDim.height, left: -elDim.width });
|
|
3672
3673
|
|
|
3673
|
-
|
|
3674
|
-
element,
|
|
3675
|
-
target,
|
|
3676
|
-
{
|
|
3674
|
+
positionAt(element, target, {
|
|
3677
3675
|
attach,
|
|
3678
3676
|
offset,
|
|
3679
3677
|
boundary,
|
|
3680
|
-
|
|
3681
|
-
viewportOffset: this.getViewportOffset(element) }
|
|
3682
|
-
|
|
3683
|
-
|
|
3684
|
-
|
|
3685
|
-
trigger(element, 'beforeposition', args);
|
|
3678
|
+
placement,
|
|
3679
|
+
viewportOffset: this.getViewportOffset(element) });
|
|
3686
3680
|
|
|
3687
|
-
positionAt(...args);
|
|
3688
3681
|
|
|
3689
3682
|
// Restore scroll position
|
|
3690
3683
|
scrollElement.scrollTop = scrollTop;
|
|
@@ -3697,12 +3690,14 @@
|
|
|
3697
3690
|
this.offset === false ? css(element, '--uk-position-offset') : this.offset,
|
|
3698
3691
|
this.axis === 'x' ? 'width' : 'height',
|
|
3699
3692
|
element) * (
|
|
3700
|
-
|
|
3693
|
+
|
|
3694
|
+
includes(['left', 'top'], this.dir) ? -1 : 1) * (
|
|
3695
|
+
this.inset ? -1 : 1));
|
|
3701
3696
|
|
|
3702
3697
|
},
|
|
3703
3698
|
|
|
3704
3699
|
getShiftOffset(element) {
|
|
3705
|
-
return
|
|
3700
|
+
return this.align === 'center' ?
|
|
3706
3701
|
0 :
|
|
3707
3702
|
toPx(
|
|
3708
3703
|
css(element, '--uk-position-shift-offset'),
|
|
@@ -3715,6 +3710,15 @@
|
|
|
3715
3710
|
return toPx(css(element, '--uk-position-viewport-offset'));
|
|
3716
3711
|
} } };
|
|
3717
3712
|
|
|
3713
|
+
var Style = {
|
|
3714
|
+
beforeConnect() {
|
|
3715
|
+
this._style = attr(this.$el, 'style');
|
|
3716
|
+
},
|
|
3717
|
+
|
|
3718
|
+
disconnected() {
|
|
3719
|
+
attr(this.$el, 'style', this._style);
|
|
3720
|
+
} };
|
|
3721
|
+
|
|
3718
3722
|
const active$1 = [];
|
|
3719
3723
|
|
|
3720
3724
|
var Modal = {
|
|
@@ -3824,8 +3828,8 @@
|
|
|
3824
3828
|
|
|
3825
3829
|
|
|
3826
3830
|
if (this.overlay) {
|
|
3827
|
-
once(this.$el, '
|
|
3828
|
-
once(this.$el, '
|
|
3831
|
+
once(this.$el, 'hidden', preventOverscroll(this.$el), { self: true });
|
|
3832
|
+
once(this.$el, 'hidden', preventBackgroundScroll(), { self: true });
|
|
3829
3833
|
}
|
|
3830
3834
|
|
|
3831
3835
|
if (this.stack) {
|
|
@@ -3907,10 +3911,6 @@
|
|
|
3907
3911
|
active$1.splice(active$1.indexOf(this), 1);
|
|
3908
3912
|
}
|
|
3909
3913
|
|
|
3910
|
-
if (!active$1.length) {
|
|
3911
|
-
css(document.body, 'overflowY', '');
|
|
3912
|
-
}
|
|
3913
|
-
|
|
3914
3914
|
css(this.$el, 'zIndex', '');
|
|
3915
3915
|
|
|
3916
3916
|
if (!active$1.some((modal) => modal.clsPage === this.clsPage)) {
|
|
@@ -4027,16 +4027,22 @@
|
|
|
4027
4027
|
return () => events.forEach((fn) => fn());
|
|
4028
4028
|
}
|
|
4029
4029
|
|
|
4030
|
+
let prevented;
|
|
4030
4031
|
function preventBackgroundScroll() {
|
|
4031
|
-
|
|
4032
|
-
|
|
4033
|
-
|
|
4034
|
-
|
|
4032
|
+
if (prevented) {
|
|
4033
|
+
return noop;
|
|
4034
|
+
}
|
|
4035
|
+
prevented = true;
|
|
4036
|
+
|
|
4037
|
+
const { scrollingElement } = document;
|
|
4038
|
+
css(scrollingElement, {
|
|
4039
|
+
overflowY: 'hidden',
|
|
4040
|
+
touchAction: 'none',
|
|
4041
|
+
paddingRight: width(window) - scrollingElement.clientWidth });
|
|
4035
4042
|
|
|
4036
|
-
css(documentElement, 'overflowY', 'hidden');
|
|
4037
4043
|
return () => {
|
|
4038
|
-
|
|
4039
|
-
css(
|
|
4044
|
+
prevented = false;
|
|
4045
|
+
css(scrollingElement, { overflowY: '', touchAction: '', paddingRight: '' });
|
|
4040
4046
|
};
|
|
4041
4047
|
}
|
|
4042
4048
|
|
|
@@ -4053,7 +4059,7 @@
|
|
|
4053
4059
|
let active;
|
|
4054
4060
|
|
|
4055
4061
|
var drop = {
|
|
4056
|
-
mixins: [Container, Lazyload, Position, Togglable],
|
|
4062
|
+
mixins: [Container, Lazyload, Position, Style, Togglable],
|
|
4057
4063
|
|
|
4058
4064
|
args: 'pos',
|
|
4059
4065
|
|
|
@@ -4061,10 +4067,13 @@
|
|
|
4061
4067
|
mode: 'list',
|
|
4062
4068
|
toggle: Boolean,
|
|
4063
4069
|
boundary: Boolean,
|
|
4064
|
-
|
|
4070
|
+
target: Boolean,
|
|
4071
|
+
targetX: Boolean,
|
|
4072
|
+
targetY: Boolean,
|
|
4073
|
+
stretch: Boolean,
|
|
4065
4074
|
delayShow: Number,
|
|
4066
4075
|
delayHide: Number,
|
|
4067
|
-
|
|
4076
|
+
autoUpdate: Boolean,
|
|
4068
4077
|
clsDrop: String,
|
|
4069
4078
|
animateOut: Boolean,
|
|
4070
4079
|
bgScroll: Boolean },
|
|
@@ -4073,17 +4082,32 @@
|
|
|
4073
4082
|
data: {
|
|
4074
4083
|
mode: ['click', 'hover'],
|
|
4075
4084
|
toggle: '- *',
|
|
4076
|
-
boundary:
|
|
4077
|
-
|
|
4085
|
+
boundary: false,
|
|
4086
|
+
target: false,
|
|
4087
|
+
targetX: false,
|
|
4088
|
+
targetY: false,
|
|
4089
|
+
stretch: false,
|
|
4078
4090
|
delayShow: 0,
|
|
4079
4091
|
delayHide: 800,
|
|
4080
|
-
|
|
4092
|
+
autoUpdate: true,
|
|
4081
4093
|
clsDrop: false,
|
|
4094
|
+
animateOut: false,
|
|
4095
|
+
bgScroll: true,
|
|
4082
4096
|
animation: ['uk-animation-fade'],
|
|
4083
4097
|
cls: 'uk-open',
|
|
4084
|
-
container: false,
|
|
4085
|
-
|
|
4086
|
-
|
|
4098
|
+
container: false },
|
|
4099
|
+
|
|
4100
|
+
|
|
4101
|
+
computed: {
|
|
4102
|
+
target(_ref, $el) {let { target, targetX, targetY } = _ref;
|
|
4103
|
+
targetX = targetX || target || this.targetEl;
|
|
4104
|
+
targetY = targetY || target || this.targetEl;
|
|
4105
|
+
|
|
4106
|
+
return [
|
|
4107
|
+
targetX === true ? window : query(targetX, $el),
|
|
4108
|
+
targetY === true ? window : query(targetY, $el)];
|
|
4109
|
+
|
|
4110
|
+
} },
|
|
4087
4111
|
|
|
4088
4112
|
|
|
4089
4113
|
created() {
|
|
@@ -4097,18 +4121,19 @@
|
|
|
4097
4121
|
connected() {
|
|
4098
4122
|
addClass(this.$el, this.clsDrop);
|
|
4099
4123
|
|
|
4100
|
-
if (this.toggle && !this.
|
|
4101
|
-
this.
|
|
4124
|
+
if (this.toggle && !this.targetEl) {
|
|
4125
|
+
this.targetEl = this.$create('toggle', query(this.toggle, this.$el), {
|
|
4102
4126
|
target: this.$el,
|
|
4103
4127
|
mode: this.mode }).
|
|
4104
4128
|
$el;
|
|
4105
|
-
attr(this.
|
|
4106
|
-
this.lazyload(this.
|
|
4129
|
+
attr(this.targetEl, 'aria-haspopup', true);
|
|
4130
|
+
this.lazyload(this.targetEl);
|
|
4107
4131
|
}
|
|
4108
4132
|
},
|
|
4109
4133
|
|
|
4110
4134
|
disconnected() {
|
|
4111
4135
|
if (this.isActive()) {
|
|
4136
|
+
this.hide(false);
|
|
4112
4137
|
active = null;
|
|
4113
4138
|
}
|
|
4114
4139
|
},
|
|
@@ -4134,7 +4159,7 @@
|
|
|
4134
4159
|
return 'a[href^="#"]';
|
|
4135
4160
|
},
|
|
4136
4161
|
|
|
4137
|
-
handler(
|
|
4162
|
+
handler(_ref2) {let { defaultPrevented, current: { hash } } = _ref2;
|
|
4138
4163
|
if (!defaultPrevented && hash && !within(hash, this.$el)) {
|
|
4139
4164
|
this.hide(false);
|
|
4140
4165
|
}
|
|
@@ -4242,21 +4267,22 @@
|
|
|
4242
4267
|
|
|
4243
4268
|
this.tracker.init();
|
|
4244
4269
|
|
|
4245
|
-
|
|
4270
|
+
const update = () => this.$emit();
|
|
4271
|
+
const handlers = [
|
|
4246
4272
|
on(
|
|
4247
4273
|
document,
|
|
4248
4274
|
pointerDown$1,
|
|
4249
|
-
(
|
|
4275
|
+
(_ref3) => {let { target } = _ref3;return (
|
|
4250
4276
|
!within(target, this.$el) &&
|
|
4251
4277
|
once(
|
|
4252
4278
|
document,
|
|
4253
4279
|
pointerUp$1 + " " + pointerCancel + " scroll",
|
|
4254
|
-
(
|
|
4280
|
+
(_ref4) => {let { defaultPrevented, type, target: newTarget } = _ref4;
|
|
4255
4281
|
if (
|
|
4256
4282
|
!defaultPrevented &&
|
|
4257
4283
|
type === pointerUp$1 &&
|
|
4258
4284
|
target === newTarget &&
|
|
4259
|
-
!(this.
|
|
4285
|
+
!(this.targetEl && within(target, this.targetEl)))
|
|
4260
4286
|
{
|
|
4261
4287
|
this.hide(false);
|
|
4262
4288
|
}
|
|
@@ -4271,29 +4297,28 @@
|
|
|
4271
4297
|
}
|
|
4272
4298
|
}),
|
|
4273
4299
|
|
|
4300
|
+
on(window, 'resize', update),
|
|
4301
|
+
|
|
4302
|
+
(() => {
|
|
4303
|
+
const observer = observeResize(
|
|
4304
|
+
scrollParents(this.$el).concat(this.targetEl),
|
|
4305
|
+
update);
|
|
4306
|
+
|
|
4307
|
+
return () => observer.disconnect();
|
|
4308
|
+
})(),
|
|
4309
|
+
|
|
4310
|
+
...(this.autoUpdate ?
|
|
4311
|
+
[on([document, scrollParents(this.$el)], 'scroll', update)] :
|
|
4312
|
+
[]),
|
|
4313
|
+
|
|
4274
4314
|
...(this.bgScroll ?
|
|
4275
4315
|
[] :
|
|
4276
|
-
[preventOverscroll(this.$el), preventBackgroundScroll()])
|
|
4316
|
+
[preventOverscroll(this.$el), preventBackgroundScroll()])];
|
|
4317
|
+
|
|
4318
|
+
|
|
4319
|
+
once(this.$el, 'hide', () => handlers.forEach((handler) => handler()), {
|
|
4320
|
+
self: true });
|
|
4277
4321
|
|
|
4278
|
-
...(this.display === 'static' && this.align !== 'stretch' ?
|
|
4279
|
-
[] :
|
|
4280
|
-
(() => {
|
|
4281
|
-
const handler = () => this.$emit();
|
|
4282
|
-
return [
|
|
4283
|
-
on(window, 'resize', handler),
|
|
4284
|
-
on(document, 'scroll', handler, true),
|
|
4285
|
-
(() => {
|
|
4286
|
-
const observer = observeResize(
|
|
4287
|
-
scrollParents(this.$el),
|
|
4288
|
-
handler);
|
|
4289
|
-
|
|
4290
|
-
return () => observer.disconnect();
|
|
4291
|
-
})()];
|
|
4292
|
-
|
|
4293
|
-
})())])
|
|
4294
|
-
{
|
|
4295
|
-
once(this.$el, 'hide', handler, { self: true });
|
|
4296
|
-
}
|
|
4297
4322
|
} },
|
|
4298
4323
|
|
|
4299
4324
|
|
|
@@ -4310,7 +4335,7 @@
|
|
|
4310
4335
|
{
|
|
4311
4336
|
name: 'hide',
|
|
4312
4337
|
|
|
4313
|
-
handler(
|
|
4338
|
+
handler(_ref5) {let { target } = _ref5;
|
|
4314
4339
|
if (this.$el !== target) {
|
|
4315
4340
|
active =
|
|
4316
4341
|
active === null && within(target, this.$el) && this.isToggled() ?
|
|
@@ -4334,12 +4359,12 @@
|
|
|
4334
4359
|
|
|
4335
4360
|
|
|
4336
4361
|
methods: {
|
|
4337
|
-
show(target, delay) {if (target === void 0) {target = this.
|
|
4338
|
-
if (this.isToggled() && target && this.
|
|
4362
|
+
show(target, delay) {if (target === void 0) {target = this.targetEl;}if (delay === void 0) {delay = true;}
|
|
4363
|
+
if (this.isToggled() && target && this.targetEl && target !== this.targetEl) {
|
|
4339
4364
|
this.hide(false, false);
|
|
4340
4365
|
}
|
|
4341
4366
|
|
|
4342
|
-
this.
|
|
4367
|
+
this.targetEl = target;
|
|
4343
4368
|
|
|
4344
4369
|
this.clearTimers();
|
|
4345
4370
|
|
|
@@ -4402,60 +4427,69 @@
|
|
|
4402
4427
|
|
|
4403
4428
|
position() {
|
|
4404
4429
|
removeClass(this.$el, this.clsDrop + "-stack");
|
|
4405
|
-
|
|
4406
|
-
toggleClass(this.$el, this.clsDrop + "-stretch", this.align === 'stretch');
|
|
4430
|
+
attr(this.$el, 'style', this._style);
|
|
4407
4431
|
|
|
4408
|
-
|
|
4409
|
-
|
|
4410
|
-
const [scrollParent] = scrollParents(
|
|
4411
|
-
boundary && this.boundaryAlign ? boundary : this.$el);
|
|
4432
|
+
// Ensure none positioned element does not generate scrollbars
|
|
4433
|
+
this.$el.hidden = true;
|
|
4412
4434
|
|
|
4413
|
-
const
|
|
4414
|
-
const boundaryOffset =
|
|
4435
|
+
const boundary = query(this.boundary, this.$el);
|
|
4436
|
+
const boundaryOffset = offset(boundary || window);
|
|
4437
|
+
const viewports = this.target.map((target) => offsetViewport(scrollParents(target)[0]));
|
|
4415
4438
|
const viewportOffset = this.getViewportOffset(this.$el);
|
|
4416
4439
|
|
|
4417
|
-
|
|
4418
|
-
|
|
4440
|
+
const dirs = [
|
|
4441
|
+
[0, ['x', 'width', 'left', 'right']],
|
|
4442
|
+
[1, ['y', 'height', 'top', 'bottom']]];
|
|
4419
4443
|
|
|
4420
|
-
|
|
4421
|
-
|
|
4422
|
-
|
|
4423
|
-
|
|
4424
|
-
|
|
4425
|
-
|
|
4426
|
-
|
|
4427
|
-
|
|
4428
|
-
|
|
4429
|
-
|
|
4430
|
-
|
|
4431
|
-
|
|
4432
|
-
|
|
4433
|
-
|
|
4434
|
-
|
|
4435
|
-
|
|
4436
|
-
const elOffset = Math.abs(this.getPositionOffset(this.$el)) + viewportOffset;
|
|
4437
|
-
|
|
4438
|
-
css(this.$el, {
|
|
4439
|
-
width:
|
|
4440
|
-
this.axis === 'y' ?
|
|
4441
|
-
viewport.width :
|
|
4442
|
-
(this.dir === 'left' ?
|
|
4443
|
-
targetDim.left - viewport.left :
|
|
4444
|
-
viewport.right - targetDim.right) - elOffset,
|
|
4445
|
-
height:
|
|
4446
|
-
this.axis === 'x' ?
|
|
4447
|
-
viewport.height :
|
|
4448
|
-
(this.dir === 'top' ?
|
|
4449
|
-
targetDim.top - viewport.top :
|
|
4450
|
-
viewport.bottom - targetDim.bottom) - elOffset });
|
|
4451
|
-
|
|
4452
|
-
} else if (this.$el.offsetWidth > maxWidth) {
|
|
4444
|
+
|
|
4445
|
+
for (const [i, [axis, prop]] of dirs) {
|
|
4446
|
+
if (this.axis !== axis && includes([axis, true], this.stretch)) {
|
|
4447
|
+
css(this.$el, {
|
|
4448
|
+
[prop]: Math.min(
|
|
4449
|
+
boundaryOffset[prop],
|
|
4450
|
+
viewports[i][prop] - 2 * viewportOffset),
|
|
4451
|
+
|
|
4452
|
+
["overflow-" + axis]: 'auto' });
|
|
4453
|
+
|
|
4454
|
+
}
|
|
4455
|
+
}
|
|
4456
|
+
|
|
4457
|
+
const maxWidth = viewports[0].width - 2 * viewportOffset;
|
|
4458
|
+
|
|
4459
|
+
if (this.$el.offsetWidth > maxWidth) {
|
|
4453
4460
|
addClass(this.$el, this.clsDrop + "-stack");
|
|
4454
4461
|
}
|
|
4455
4462
|
|
|
4456
4463
|
css(this.$el, 'maxWidth', maxWidth);
|
|
4457
4464
|
|
|
4458
|
-
this
|
|
4465
|
+
this.$el.hidden = false;
|
|
4466
|
+
|
|
4467
|
+
this.positionAt(this.$el, this.target, boundary);
|
|
4468
|
+
|
|
4469
|
+
for (const [i, [axis, prop, start, end]] of dirs) {
|
|
4470
|
+
if (this.axis === axis && includes([axis, true], this.stretch)) {
|
|
4471
|
+
const positionOffset = Math.abs(this.getPositionOffset(this.$el));
|
|
4472
|
+
const targetOffset = offset(this.target[i]);
|
|
4473
|
+
const elOffset = offset(this.$el);
|
|
4474
|
+
|
|
4475
|
+
css(this.$el, {
|
|
4476
|
+
[prop]:
|
|
4477
|
+
(targetOffset[start] > elOffset[start] ?
|
|
4478
|
+
targetOffset[start] -
|
|
4479
|
+
Math.max(
|
|
4480
|
+
boundaryOffset[start],
|
|
4481
|
+
viewports[i][start] + viewportOffset) :
|
|
4482
|
+
|
|
4483
|
+
Math.min(
|
|
4484
|
+
boundaryOffset[end],
|
|
4485
|
+
viewports[i][end] - viewportOffset) -
|
|
4486
|
+
targetOffset[end]) - positionOffset,
|
|
4487
|
+
["overflow-" + axis]: 'auto' });
|
|
4488
|
+
|
|
4489
|
+
|
|
4490
|
+
this.positionAt(this.$el, this.target, boundary);
|
|
4491
|
+
}
|
|
4492
|
+
}
|
|
4459
4493
|
} } };
|
|
4460
4494
|
|
|
4461
4495
|
|
|
@@ -5227,7 +5261,7 @@
|
|
|
5227
5261
|
|
|
5228
5262
|
var navbarParentIcon = "<svg xmlns=\"http://www.w3.org/2000/svg\" width=\"12\" height=\"12\" viewBox=\"0 0 12 12\"><polyline fill=\"none\" stroke=\"#000\" stroke-width=\"1.1\" points=\"1 3.5 6 8.5 11 3.5\"/></svg>";
|
|
5229
5263
|
|
|
5230
|
-
var navbarToggleIcon = "<svg width=\"20\" height=\"20\" viewBox=\"0 0 20 20\" xmlns=\"http://www.w3.org/2000/svg\"><rect y=\"
|
|
5264
|
+
var navbarToggleIcon = "<svg width=\"20\" height=\"20\" viewBox=\"0 0 20 20\" xmlns=\"http://www.w3.org/2000/svg\"><style>.uk-navbar-toggle-animate svg > [class*='line-'] {\n transition: 0.2s ease-in-out;\n transition-property: transform, opacity,;\n transform-origin: center;\n opacity: 1;\n }\n\n .uk-navbar-toggle svg > .line-3 { opacity: 0; }\n .uk-navbar-toggle-animate[aria-expanded=\"true\"] svg > .line-3 { opacity: 1; }\n\n .uk-navbar-toggle-animate[aria-expanded=\"true\"] svg > .line-2 { transform: rotate(45deg); }\n .uk-navbar-toggle-animate[aria-expanded=\"true\"] svg > .line-3 { transform: rotate(-45deg); }\n\n .uk-navbar-toggle-animate[aria-expanded=\"true\"] svg > .line-1,\n .uk-navbar-toggle-animate[aria-expanded=\"true\"] svg > .line-4 { opacity: 0; }\n .uk-navbar-toggle-animate[aria-expanded=\"true\"] svg > .line-1 { transform: translateY(6px) scaleX(0); }\n .uk-navbar-toggle-animate[aria-expanded=\"true\"] svg > .line-4 { transform: translateY(-6px) scaleX(0); }</style><rect class=\"line-1\" y=\"3\" width=\"20\" height=\"2\"/><rect class=\"line-2\" y=\"9\" width=\"20\" height=\"2\"/><rect class=\"line-3\" y=\"9\" width=\"20\" height=\"2\"/><rect class=\"line-4\" y=\"15\" width=\"20\" height=\"2\"/></svg>";
|
|
5231
5265
|
|
|
5232
5266
|
var overlayIcon = "<svg width=\"40\" height=\"40\" viewBox=\"0 0 40 40\" xmlns=\"http://www.w3.org/2000/svg\"><rect x=\"19\" y=\"0\" width=\"1\" height=\"40\"/><rect x=\"0\" y=\"19\" width=\"40\" height=\"1\"/></svg>";
|
|
5233
5267
|
|
|
@@ -5829,7 +5863,9 @@
|
|
|
5829
5863
|
align: String,
|
|
5830
5864
|
offset: Number,
|
|
5831
5865
|
boundary: Boolean,
|
|
5832
|
-
|
|
5866
|
+
target: Boolean,
|
|
5867
|
+
targetX: Boolean,
|
|
5868
|
+
targetY: Boolean,
|
|
5833
5869
|
clsDrop: String,
|
|
5834
5870
|
delayShow: Number,
|
|
5835
5871
|
delayHide: Number,
|
|
@@ -5846,9 +5882,12 @@
|
|
|
5846
5882
|
offset: undefined,
|
|
5847
5883
|
delayShow: undefined,
|
|
5848
5884
|
delayHide: undefined,
|
|
5849
|
-
|
|
5850
|
-
|
|
5885
|
+
flip: false,
|
|
5886
|
+
shift: true,
|
|
5851
5887
|
boundary: true,
|
|
5888
|
+
target: false,
|
|
5889
|
+
targetX: false,
|
|
5890
|
+
targetY: false,
|
|
5852
5891
|
dropbar: false,
|
|
5853
5892
|
dropbarAnchor: false,
|
|
5854
5893
|
duration: 200,
|
|
@@ -5861,7 +5900,7 @@
|
|
|
5861
5900
|
},
|
|
5862
5901
|
|
|
5863
5902
|
dropbarAnchor(_ref2, $el) {let { dropbarAnchor } = _ref2;
|
|
5864
|
-
return query(dropbarAnchor, $el);
|
|
5903
|
+
return query(dropbarAnchor, $el) || $el;
|
|
5865
5904
|
},
|
|
5866
5905
|
|
|
5867
5906
|
pos(_ref3) {let { align } = _ref3;
|
|
@@ -5883,7 +5922,7 @@
|
|
|
5883
5922
|
},
|
|
5884
5923
|
|
|
5885
5924
|
watch(dropbar) {
|
|
5886
|
-
addClass(dropbar, 'uk-navbar-dropbar');
|
|
5925
|
+
addClass(dropbar, 'uk-dropbar', 'uk-dropbar-top', 'uk-navbar-dropbar');
|
|
5887
5926
|
},
|
|
5888
5927
|
|
|
5889
5928
|
immediate: true },
|
|
@@ -5899,7 +5938,7 @@
|
|
|
5899
5938
|
|
|
5900
5939
|
if (this.dropContainer !== $el) {
|
|
5901
5940
|
for (const el of $$("." + clsDrop, this.dropContainer)) {var _this$getDropdown;
|
|
5902
|
-
const target = (_this$getDropdown = this.getDropdown(el)) == null ? void 0 : _this$getDropdown.
|
|
5941
|
+
const target = (_this$getDropdown = this.getDropdown(el)) == null ? void 0 : _this$getDropdown.targetEl;
|
|
5903
5942
|
if (!includes(dropdowns, el) && target && within(target, this.$el)) {
|
|
5904
5943
|
dropdowns.push(el);
|
|
5905
5944
|
}
|
|
@@ -5961,8 +6000,8 @@
|
|
|
5961
6000
|
if (
|
|
5962
6001
|
active &&
|
|
5963
6002
|
includes(active.mode, 'hover') &&
|
|
5964
|
-
active.
|
|
5965
|
-
!within(active.
|
|
6003
|
+
active.targetEl &&
|
|
6004
|
+
!within(active.targetEl, current) &&
|
|
5966
6005
|
!active.isDelaying)
|
|
5967
6006
|
{
|
|
5968
6007
|
active.hide(false);
|
|
@@ -5984,7 +6023,7 @@
|
|
|
5984
6023
|
if (keyCode === keyMap.DOWN && hasAttr(current, 'aria-expanded')) {
|
|
5985
6024
|
e.preventDefault();
|
|
5986
6025
|
|
|
5987
|
-
if (!active || active.
|
|
6026
|
+
if (!active || active.targetEl !== current) {
|
|
5988
6027
|
current.click();
|
|
5989
6028
|
once(this.dropContainer, 'show', (_ref8) => {let { target } = _ref8;return (
|
|
5990
6029
|
focusFirstFocusableElement(target));});
|
|
@@ -6034,8 +6073,8 @@
|
|
|
6034
6073
|
}
|
|
6035
6074
|
}
|
|
6036
6075
|
|
|
6037
|
-
if (keyCode === keyMap.ESC) {var _active$
|
|
6038
|
-
active == null ? void 0 : (_active$
|
|
6076
|
+
if (keyCode === keyMap.ESC) {var _active$targetEl;
|
|
6077
|
+
active == null ? void 0 : (_active$targetEl = active.targetEl) == null ? void 0 : _active$targetEl.focus();
|
|
6039
6078
|
}
|
|
6040
6079
|
|
|
6041
6080
|
handleNavItemNavigation(e, this.toggles, active);
|
|
@@ -6082,8 +6121,8 @@
|
|
|
6082
6121
|
return;
|
|
6083
6122
|
}
|
|
6084
6123
|
|
|
6085
|
-
if (
|
|
6086
|
-
after(this.dropbarAnchor
|
|
6124
|
+
if (this.dropbar.previousElementSibling !== this.dropbarAnchor) {
|
|
6125
|
+
after(this.dropbarAnchor, this.dropbar);
|
|
6087
6126
|
}
|
|
6088
6127
|
|
|
6089
6128
|
addClass(target, this.clsDrop + "-dropbar");
|
|
@@ -6106,39 +6145,19 @@
|
|
|
6106
6145
|
return;
|
|
6107
6146
|
}
|
|
6108
6147
|
|
|
6109
|
-
this._observer = observeResize(target, () =>
|
|
6110
|
-
|
|
6111
|
-
|
|
6112
|
-
|
|
6113
|
-
|
|
6114
|
-
|
|
6115
|
-
|
|
6116
|
-
|
|
6117
|
-
|
|
6118
|
-
|
|
6148
|
+
this._observer = observeResize(target, () => {
|
|
6149
|
+
const targetOffsets = parents(target, "." + this.clsDrop).
|
|
6150
|
+
concat(target).
|
|
6151
|
+
map((el) => offset(el));
|
|
6152
|
+
const minTop = Math.min(...targetOffsets.map((_ref11) => {let { top } = _ref11;return top;}));
|
|
6153
|
+
const maxBottom = Math.max(...targetOffsets.map((_ref12) => {let { bottom } = _ref12;return bottom;}));
|
|
6154
|
+
const dropbarOffset = offset(this.dropbar);
|
|
6155
|
+
css(this.dropbar, 'top', this.dropbar.offsetTop - (dropbarOffset.top - minTop));
|
|
6156
|
+
this.transitionTo(
|
|
6157
|
+
maxBottom - minTop + toFloat(css(target, 'marginBottom')),
|
|
6158
|
+
target);
|
|
6119
6159
|
|
|
6120
|
-
|
|
6121
|
-
name: 'beforeposition',
|
|
6122
|
-
|
|
6123
|
-
el() {
|
|
6124
|
-
return this.dropContainer;
|
|
6125
|
-
},
|
|
6126
|
-
|
|
6127
|
-
filter() {
|
|
6128
|
-
return this.dropbar;
|
|
6129
|
-
},
|
|
6130
|
-
|
|
6131
|
-
handler(e, element, target, options) {
|
|
6132
|
-
if (!this.isDropbarDrop(element)) {
|
|
6133
|
-
return;
|
|
6134
|
-
}
|
|
6135
|
-
|
|
6136
|
-
const dropbarOffset = offset(this.dropbar);
|
|
6137
|
-
|
|
6138
|
-
css(element, 'maxWidth', dropbarOffset.width - options.viewportOffset * 2);
|
|
6139
|
-
|
|
6140
|
-
options.offset[1] = dropbarOffset.top - offset(target).bottom;
|
|
6141
|
-
options.viewportOffset += dropbarOffset.left;
|
|
6160
|
+
});
|
|
6142
6161
|
} },
|
|
6143
6162
|
|
|
6144
6163
|
|
|
@@ -6159,7 +6178,7 @@
|
|
|
6159
6178
|
if (
|
|
6160
6179
|
matches(this.dropbar, ':hover') &&
|
|
6161
6180
|
(active == null ? void 0 : active.$el) === e.target &&
|
|
6162
|
-
!this.toggles.some((el) => active.
|
|
6181
|
+
!this.toggles.some((el) => active.targetEl !== el && matches(el, ':focus')))
|
|
6163
6182
|
{
|
|
6164
6183
|
e.preventDefault();
|
|
6165
6184
|
}
|
|
@@ -6177,7 +6196,7 @@
|
|
|
6177
6196
|
return this.dropbar;
|
|
6178
6197
|
},
|
|
6179
6198
|
|
|
6180
|
-
handler(
|
|
6199
|
+
handler(_ref13) {let { target } = _ref13;
|
|
6181
6200
|
if (!this.isDropbarDrop(target)) {
|
|
6182
6201
|
return;
|
|
6183
6202
|
}
|
|
@@ -6195,7 +6214,7 @@
|
|
|
6195
6214
|
|
|
6196
6215
|
methods: {
|
|
6197
6216
|
getActive() {
|
|
6198
|
-
return active
|
|
6217
|
+
return includes(this.dropdowns, active == null ? void 0 : active.$el) && active;
|
|
6199
6218
|
},
|
|
6200
6219
|
|
|
6201
6220
|
transitionTo(newHeight, el) {
|
|
@@ -6228,15 +6247,14 @@
|
|
|
6228
6247
|
},
|
|
6229
6248
|
|
|
6230
6249
|
isDropbarDrop(el) {
|
|
6231
|
-
|
|
6232
|
-
return drop && hasClass(el, this.clsDrop) && drop.align !== 'stretch';
|
|
6250
|
+
return this.getDropdown(el) && hasClass(el, this.clsDrop);
|
|
6233
6251
|
} } };
|
|
6234
6252
|
|
|
6235
6253
|
|
|
6236
6254
|
|
|
6237
6255
|
function handleNavItemNavigation(e, toggles, active) {
|
|
6238
6256
|
const { current, keyCode } = e;
|
|
6239
|
-
const target = (active == null ? void 0 : active.
|
|
6257
|
+
const target = (active == null ? void 0 : active.targetEl) || current;
|
|
6240
6258
|
const i = toggles.indexOf(target);
|
|
6241
6259
|
|
|
6242
6260
|
// Left
|
|
@@ -6436,9 +6454,12 @@
|
|
|
6436
6454
|
addClass(parent(this.panel), this.clsMode);
|
|
6437
6455
|
}
|
|
6438
6456
|
|
|
6439
|
-
|
|
6440
|
-
|
|
6457
|
+
const { body, scrollingElement } = document;
|
|
6458
|
+
|
|
6459
|
+
addClass(body, this.clsContainer, this.clsFlip);
|
|
6460
|
+
css(body, 'touch-action', 'pan-y pinch-zoom');
|
|
6441
6461
|
css(this.$el, 'display', 'block');
|
|
6462
|
+
css(this.panel, 'maxWidth', scrollingElement.clientWidth);
|
|
6442
6463
|
addClass(this.$el, this.clsOverlay);
|
|
6443
6464
|
addClass(
|
|
6444
6465
|
this.panel,
|
|
@@ -6446,8 +6467,8 @@
|
|
|
6446
6467
|
this.mode === 'reveal' ? '' : this.clsMode);
|
|
6447
6468
|
|
|
6448
6469
|
|
|
6449
|
-
height(
|
|
6450
|
-
addClass(
|
|
6470
|
+
height(body); // force reflow
|
|
6471
|
+
addClass(body, this.clsContainerAnimation);
|
|
6451
6472
|
|
|
6452
6473
|
this.clsContainerAnimation && suppressUserScale();
|
|
6453
6474
|
} },
|
|
@@ -6479,6 +6500,7 @@
|
|
|
6479
6500
|
removeClass(this.panel, this.clsSidebarAnimation, this.clsMode);
|
|
6480
6501
|
removeClass(this.$el, this.clsOverlay);
|
|
6481
6502
|
css(this.$el, 'display', '');
|
|
6503
|
+
css(this.panel, 'maxWidth', '');
|
|
6482
6504
|
removeClass(document.body, this.clsContainer, this.clsFlip);
|
|
6483
6505
|
} },
|
|
6484
6506
|
|
|
@@ -6604,6 +6626,14 @@
|
|
|
6604
6626
|
offset: 0 },
|
|
6605
6627
|
|
|
6606
6628
|
|
|
6629
|
+
connected() {
|
|
6630
|
+
registerClick(this);
|
|
6631
|
+
},
|
|
6632
|
+
|
|
6633
|
+
disconnected() {
|
|
6634
|
+
unregisterClick(this);
|
|
6635
|
+
},
|
|
6636
|
+
|
|
6607
6637
|
methods: {
|
|
6608
6638
|
async scrollTo(el) {
|
|
6609
6639
|
el = el && $(el) || document.body;
|
|
@@ -6612,20 +6642,39 @@
|
|
|
6612
6642
|
await scrollIntoView(el, { offset: this.offset });
|
|
6613
6643
|
trigger(this.$el, 'scrolled', [this, el]);
|
|
6614
6644
|
}
|
|
6615
|
-
} }
|
|
6645
|
+
} } };
|
|
6616
6646
|
|
|
6617
6647
|
|
|
6618
|
-
events: {
|
|
6619
|
-
click(e) {
|
|
6620
|
-
if (e.defaultPrevented) {
|
|
6621
|
-
return;
|
|
6622
|
-
}
|
|
6623
6648
|
|
|
6624
|
-
|
|
6625
|
-
|
|
6626
|
-
|
|
6649
|
+
const components$2 = new Set();
|
|
6650
|
+
function registerClick(cmp) {
|
|
6651
|
+
if (!components$2.size) {
|
|
6652
|
+
on(document, 'click', clickHandler);
|
|
6653
|
+
}
|
|
6627
6654
|
|
|
6655
|
+
components$2.add(cmp);
|
|
6656
|
+
}
|
|
6628
6657
|
|
|
6658
|
+
function unregisterClick(cmp) {
|
|
6659
|
+
components$2.delete(cmp);
|
|
6660
|
+
|
|
6661
|
+
if (!components$2.length) {
|
|
6662
|
+
off(document, 'click', clickHandler);
|
|
6663
|
+
}
|
|
6664
|
+
}
|
|
6665
|
+
|
|
6666
|
+
function clickHandler(e) {
|
|
6667
|
+
if (e.defaultPrevented) {
|
|
6668
|
+
return;
|
|
6669
|
+
}
|
|
6670
|
+
|
|
6671
|
+
for (const component of components$2) {
|
|
6672
|
+
if (within(e.target, component.$el)) {
|
|
6673
|
+
e.preventDefault();
|
|
6674
|
+
component.scrollTo(getTargetElement(component.$el));
|
|
6675
|
+
}
|
|
6676
|
+
}
|
|
6677
|
+
}
|
|
6629
6678
|
|
|
6630
6679
|
function getTargetElement(el) {
|
|
6631
6680
|
return document.getElementById(decodeURIComponent(el.hash).substring(1));
|
|
@@ -7288,9 +7337,10 @@
|
|
|
7288
7337
|
}
|
|
7289
7338
|
|
|
7290
7339
|
const index = this.index();
|
|
7291
|
-
this.connects.forEach((el) =>
|
|
7292
|
-
|
|
7293
|
-
|
|
7340
|
+
this.connects.forEach((el) => {
|
|
7341
|
+
children(el).forEach((child, i) => toggleClass(child, this.cls, i === index));
|
|
7342
|
+
this.lazyload(this.$el, children(el));
|
|
7343
|
+
});
|
|
7294
7344
|
},
|
|
7295
7345
|
|
|
7296
7346
|
immediate: true },
|
|
@@ -7323,8 +7373,6 @@
|
|
|
7323
7373
|
|
|
7324
7374
|
|
|
7325
7375
|
connected() {
|
|
7326
|
-
this.lazyload(this.$el, this.connects);
|
|
7327
|
-
|
|
7328
7376
|
// check for connects
|
|
7329
7377
|
ready(() => this.$emit());
|
|
7330
7378
|
},
|
|
@@ -7458,6 +7506,7 @@
|
|
|
7458
7506
|
|
|
7459
7507
|
watch() {
|
|
7460
7508
|
this.updateAria();
|
|
7509
|
+
this.lazyload(this.$el, this.target);
|
|
7461
7510
|
},
|
|
7462
7511
|
|
|
7463
7512
|
immediate: true } },
|
|
@@ -7469,8 +7518,6 @@
|
|
|
7469
7518
|
attr(this.$el, 'tabindex', '0');
|
|
7470
7519
|
}
|
|
7471
7520
|
|
|
7472
|
-
this.lazyload(this.$el, this.target);
|
|
7473
|
-
|
|
7474
7521
|
// check for target
|
|
7475
7522
|
ready(() => this.$emit());
|
|
7476
7523
|
},
|
|
@@ -7588,7 +7635,7 @@
|
|
|
7588
7635
|
|
|
7589
7636
|
|
|
7590
7637
|
{
|
|
7591
|
-
name: '
|
|
7638
|
+
name: 'hide show',
|
|
7592
7639
|
|
|
7593
7640
|
self: true,
|
|
7594
7641
|
|
|
@@ -7596,10 +7643,8 @@
|
|
|
7596
7643
|
return this.target;
|
|
7597
7644
|
},
|
|
7598
7645
|
|
|
7599
|
-
handler(
|
|
7600
|
-
|
|
7601
|
-
this.updateAria(toggled);
|
|
7602
|
-
}
|
|
7646
|
+
handler(_ref2) {let { type } = _ref2;
|
|
7647
|
+
this.updateAria(type === 'show');
|
|
7603
7648
|
} },
|
|
7604
7649
|
|
|
7605
7650
|
|
|
@@ -9480,7 +9525,9 @@
|
|
|
9480
9525
|
this.$mount(
|
|
9481
9526
|
append(
|
|
9482
9527
|
container, "<div class=\"" +
|
|
9483
|
-
this.clsMsg + (
|
|
9528
|
+
this.clsMsg + (
|
|
9529
|
+
this.status ? " " + this.clsMsg + "-" + this.status : '') + "\" role=\"alert\"> <a href class=\"" +
|
|
9530
|
+
|
|
9484
9531
|
this.clsClose + "\" data-uk-close></a> <div>" +
|
|
9485
9532
|
this.message + "</div> </div>"));
|
|
9486
9533
|
|