@zextras/carbonio-design-system 12.2.0 → 12.2.2
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/dist/zapp-ui.bundle.cjs +234 -983
- package/dist/zapp-ui.bundle.mjs +234 -983
- package/package.json +4 -3
package/dist/zapp-ui.bundle.cjs
CHANGED
|
@@ -1176,10 +1176,10 @@ function requireSharedStore () {
|
|
|
1176
1176
|
var store = sharedStore.exports = globalThis[SHARED] || defineGlobalProperty(SHARED, {});
|
|
1177
1177
|
|
|
1178
1178
|
(store.versions || (store.versions = [])).push({
|
|
1179
|
-
version: '3.
|
|
1179
|
+
version: '3.50.0',
|
|
1180
1180
|
mode: IS_PURE ? 'pure' : 'global',
|
|
1181
1181
|
copyright: '© 2013–2025 Denis Pushkarev (zloirock.ru), 2025–2026 CoreJS Company (core-js.io). All rights reserved.',
|
|
1182
|
-
license: 'https://github.com/zloirock/core-js/blob/v3.
|
|
1182
|
+
license: 'https://github.com/zloirock/core-js/blob/v3.50.0/LICENSE',
|
|
1183
1183
|
source: 'https://github.com/zloirock/core-js'
|
|
1184
1184
|
});
|
|
1185
1185
|
return sharedStore.exports;
|
|
@@ -1192,9 +1192,11 @@ function requireShared () {
|
|
|
1192
1192
|
if (hasRequiredShared) return shared;
|
|
1193
1193
|
hasRequiredShared = 1;
|
|
1194
1194
|
var store = requireSharedStore();
|
|
1195
|
+
// eslint-disable-next-line es/no-object-create -- safe
|
|
1196
|
+
var create = Object.create || Object;
|
|
1195
1197
|
|
|
1196
1198
|
shared = function (key, value) {
|
|
1197
|
-
return store[key] || (store[key] = value ||
|
|
1199
|
+
return store[key] || (store[key] = value || create(null));
|
|
1198
1200
|
};
|
|
1199
1201
|
return shared;
|
|
1200
1202
|
}
|
|
@@ -2642,6 +2644,20 @@ function requireIteratorCloseAll () {
|
|
|
2642
2644
|
return iteratorCloseAll;
|
|
2643
2645
|
}
|
|
2644
2646
|
|
|
2647
|
+
var iteratorCleanupState;
|
|
2648
|
+
var hasRequiredIteratorCleanupState;
|
|
2649
|
+
|
|
2650
|
+
function requireIteratorCleanupState () {
|
|
2651
|
+
if (hasRequiredIteratorCleanupState) return iteratorCleanupState;
|
|
2652
|
+
hasRequiredIteratorCleanupState = 1;
|
|
2653
|
+
// release references held by exhausted / closed iterator helpers to allow GC of the source chain
|
|
2654
|
+
iteratorCleanupState = function (state) {
|
|
2655
|
+
state.iterator = state.next = state.nextHandler = state.mapper = state.predicate = state.inner =
|
|
2656
|
+
state.iterables = state.iters = state.openIters = state.padding = state.finishResults = state.buffer = null;
|
|
2657
|
+
};
|
|
2658
|
+
return iteratorCleanupState;
|
|
2659
|
+
}
|
|
2660
|
+
|
|
2645
2661
|
var iteratorCreateProxy;
|
|
2646
2662
|
var hasRequiredIteratorCreateProxy;
|
|
2647
2663
|
|
|
@@ -2659,6 +2675,7 @@ function requireIteratorCreateProxy () {
|
|
|
2659
2675
|
var createIterResultObject = requireCreateIterResultObject();
|
|
2660
2676
|
var iteratorClose = requireIteratorClose();
|
|
2661
2677
|
var iteratorCloseAll = requireIteratorCloseAll();
|
|
2678
|
+
var cleanupState = requireIteratorCleanupState();
|
|
2662
2679
|
|
|
2663
2680
|
var TO_STRING_TAG = wellKnownSymbol('toStringTag');
|
|
2664
2681
|
var ITERATOR_HELPER = 'IteratorHelper';
|
|
@@ -2680,29 +2697,34 @@ function requireIteratorCreateProxy () {
|
|
|
2680
2697
|
if (state.done) return createIterResultObject(undefined, true);
|
|
2681
2698
|
try {
|
|
2682
2699
|
var result = state.nextHandler();
|
|
2700
|
+
if (state.done) cleanupState(state);
|
|
2683
2701
|
return state.returnHandlerResult ? result : createIterResultObject(result, state.done);
|
|
2684
2702
|
} catch (error) {
|
|
2685
2703
|
state.done = true;
|
|
2704
|
+
cleanupState(state);
|
|
2686
2705
|
throw error;
|
|
2687
2706
|
}
|
|
2688
2707
|
},
|
|
2689
2708
|
'return': function () {
|
|
2690
2709
|
var state = getInternalState(this);
|
|
2691
2710
|
var iterator = state.iterator;
|
|
2711
|
+
var inner = state.inner;
|
|
2712
|
+
var openIters = state.openIters;
|
|
2692
2713
|
var done = state.done;
|
|
2693
2714
|
state.done = true;
|
|
2694
2715
|
if (IS_ITERATOR) {
|
|
2695
2716
|
var returnMethod = getMethod(iterator, 'return');
|
|
2696
2717
|
return returnMethod ? call(returnMethod, iterator) : createIterResultObject(undefined, true);
|
|
2697
2718
|
}
|
|
2719
|
+
cleanupState(state);
|
|
2698
2720
|
if (done) return createIterResultObject(undefined, true);
|
|
2699
|
-
if (
|
|
2700
|
-
iteratorClose(
|
|
2721
|
+
if (inner) try {
|
|
2722
|
+
iteratorClose(inner.iterator, NORMAL);
|
|
2701
2723
|
} catch (error) {
|
|
2702
2724
|
return iteratorClose(iterator, THROW, error);
|
|
2703
2725
|
}
|
|
2704
|
-
if (
|
|
2705
|
-
iteratorCloseAll(
|
|
2726
|
+
if (openIters) try {
|
|
2727
|
+
iteratorCloseAll(openIters, NORMAL);
|
|
2706
2728
|
} catch (error) {
|
|
2707
2729
|
if (iterator) return iteratorClose(iterator, THROW, error);
|
|
2708
2730
|
throw error;
|
|
@@ -2930,7 +2952,7 @@ var hasRequiredIterators;
|
|
|
2930
2952
|
function requireIterators () {
|
|
2931
2953
|
if (hasRequiredIterators) return iterators;
|
|
2932
2954
|
hasRequiredIterators = 1;
|
|
2933
|
-
iterators = {};
|
|
2955
|
+
iterators = Object.create ? Object.create(null) : {};
|
|
2934
2956
|
return iterators;
|
|
2935
2957
|
}
|
|
2936
2958
|
|
|
@@ -2953,103 +2975,48 @@ function requireIsArrayIteratorMethod () {
|
|
|
2953
2975
|
return isArrayIteratorMethod;
|
|
2954
2976
|
}
|
|
2955
2977
|
|
|
2956
|
-
var
|
|
2957
|
-
var
|
|
2958
|
-
|
|
2959
|
-
function requireToStringTagSupport () {
|
|
2960
|
-
if (hasRequiredToStringTagSupport) return toStringTagSupport;
|
|
2961
|
-
hasRequiredToStringTagSupport = 1;
|
|
2962
|
-
var wellKnownSymbol = requireWellKnownSymbol();
|
|
2963
|
-
|
|
2964
|
-
var TO_STRING_TAG = wellKnownSymbol('toStringTag');
|
|
2965
|
-
var test = {};
|
|
2966
|
-
// eslint-disable-next-line unicorn/no-immediate-mutation -- ES3 syntax limitation
|
|
2967
|
-
test[TO_STRING_TAG] = 'z';
|
|
2968
|
-
|
|
2969
|
-
toStringTagSupport = String(test) === '[object z]';
|
|
2970
|
-
return toStringTagSupport;
|
|
2971
|
-
}
|
|
2972
|
-
|
|
2973
|
-
var classof;
|
|
2974
|
-
var hasRequiredClassof;
|
|
2975
|
-
|
|
2976
|
-
function requireClassof () {
|
|
2977
|
-
if (hasRequiredClassof) return classof;
|
|
2978
|
-
hasRequiredClassof = 1;
|
|
2979
|
-
var TO_STRING_TAG_SUPPORT = requireToStringTagSupport();
|
|
2980
|
-
var isCallable = requireIsCallable();
|
|
2981
|
-
var classofRaw = requireClassofRaw();
|
|
2982
|
-
var wellKnownSymbol = requireWellKnownSymbol();
|
|
2983
|
-
|
|
2984
|
-
var TO_STRING_TAG = wellKnownSymbol('toStringTag');
|
|
2985
|
-
var $Object = Object;
|
|
2986
|
-
|
|
2987
|
-
// ES3 wrong here
|
|
2988
|
-
var CORRECT_ARGUMENTS = classofRaw(function () { return arguments; }()) === 'Arguments';
|
|
2989
|
-
|
|
2990
|
-
// fallback for IE11 Script Access Denied error
|
|
2991
|
-
var tryGet = function (it, key) {
|
|
2992
|
-
try {
|
|
2993
|
-
return it[key];
|
|
2994
|
-
} catch (error) { /* empty */ }
|
|
2995
|
-
};
|
|
2996
|
-
|
|
2997
|
-
// getting tag from ES6+ `Object.prototype.toString`
|
|
2998
|
-
classof = TO_STRING_TAG_SUPPORT ? classofRaw : function (it) {
|
|
2999
|
-
var O, tag, result;
|
|
3000
|
-
return it === undefined ? 'Undefined' : it === null ? 'Null'
|
|
3001
|
-
// @@toStringTag case
|
|
3002
|
-
: typeof (tag = tryGet(O = $Object(it), TO_STRING_TAG)) == 'string' ? tag
|
|
3003
|
-
// builtinTag case
|
|
3004
|
-
: CORRECT_ARGUMENTS ? classofRaw(O)
|
|
3005
|
-
// ES3 arguments fallback
|
|
3006
|
-
: (result = classofRaw(O)) === 'Object' && isCallable(O.callee) ? 'Arguments' : result;
|
|
3007
|
-
};
|
|
3008
|
-
return classof;
|
|
3009
|
-
}
|
|
3010
|
-
|
|
3011
|
-
var getIteratorMethod;
|
|
3012
|
-
var hasRequiredGetIteratorMethod;
|
|
2978
|
+
var getIteratorMethodInternal;
|
|
2979
|
+
var hasRequiredGetIteratorMethodInternal;
|
|
3013
2980
|
|
|
3014
|
-
function
|
|
3015
|
-
if (
|
|
3016
|
-
|
|
3017
|
-
var classof =
|
|
3018
|
-
var getMethod = requireGetMethod();
|
|
2981
|
+
function requireGetIteratorMethodInternal () {
|
|
2982
|
+
if (hasRequiredGetIteratorMethodInternal) return getIteratorMethodInternal;
|
|
2983
|
+
hasRequiredGetIteratorMethodInternal = 1;
|
|
2984
|
+
var classof = requireClassofRaw();
|
|
3019
2985
|
var isNullOrUndefined = requireIsNullOrUndefined();
|
|
3020
|
-
var
|
|
2986
|
+
var getMethod = requireGetMethod();
|
|
3021
2987
|
var wellKnownSymbol = requireWellKnownSymbol();
|
|
3022
2988
|
|
|
3023
2989
|
var ITERATOR = wellKnownSymbol('iterator');
|
|
2990
|
+
var ArrayPrototype = Array.prototype;
|
|
3024
2991
|
|
|
3025
|
-
|
|
2992
|
+
getIteratorMethodInternal = function (it) {
|
|
3026
2993
|
if (!isNullOrUndefined(it)) return getMethod(it, ITERATOR)
|
|
3027
2994
|
|| getMethod(it, '@@iterator')
|
|
3028
|
-
||
|
|
2995
|
+
|| (classof(it) === 'Arguments' ? ArrayPrototype[ITERATOR] : undefined);
|
|
3029
2996
|
};
|
|
3030
|
-
return
|
|
2997
|
+
return getIteratorMethodInternal;
|
|
3031
2998
|
}
|
|
3032
2999
|
|
|
3033
|
-
var
|
|
3034
|
-
var
|
|
3000
|
+
var getIteratorInternal;
|
|
3001
|
+
var hasRequiredGetIteratorInternal;
|
|
3035
3002
|
|
|
3036
|
-
function
|
|
3037
|
-
if (
|
|
3038
|
-
|
|
3003
|
+
function requireGetIteratorInternal () {
|
|
3004
|
+
if (hasRequiredGetIteratorInternal) return getIteratorInternal;
|
|
3005
|
+
hasRequiredGetIteratorInternal = 1;
|
|
3039
3006
|
var call = requireFunctionCall();
|
|
3040
|
-
var
|
|
3007
|
+
var isCallable = requireIsCallable();
|
|
3041
3008
|
var anObject = requireAnObject();
|
|
3042
3009
|
var tryToString = requireTryToString();
|
|
3043
|
-
var getIteratorMethod =
|
|
3010
|
+
var getIteratorMethod = requireGetIteratorMethodInternal();
|
|
3044
3011
|
|
|
3045
3012
|
var $TypeError = TypeError;
|
|
3046
3013
|
|
|
3047
|
-
|
|
3014
|
+
getIteratorInternal = function (argument, usingIterator) {
|
|
3048
3015
|
var iteratorMethod = arguments.length < 2 ? getIteratorMethod(argument) : usingIterator;
|
|
3049
|
-
if (
|
|
3016
|
+
if (isCallable(iteratorMethod)) return anObject(call(iteratorMethod, argument));
|
|
3050
3017
|
throw new $TypeError(tryToString(argument) + ' is not iterable');
|
|
3051
3018
|
};
|
|
3052
|
-
return
|
|
3019
|
+
return getIteratorInternal;
|
|
3053
3020
|
}
|
|
3054
3021
|
|
|
3055
3022
|
var iterate;
|
|
@@ -3065,8 +3032,8 @@ function requireIterate () {
|
|
|
3065
3032
|
var isArrayIteratorMethod = requireIsArrayIteratorMethod();
|
|
3066
3033
|
var lengthOfArrayLike = requireLengthOfArrayLike();
|
|
3067
3034
|
var isPrototypeOf = requireObjectIsPrototypeOf();
|
|
3068
|
-
var getIterator =
|
|
3069
|
-
var getIteratorMethod =
|
|
3035
|
+
var getIterator = requireGetIteratorInternal();
|
|
3036
|
+
var getIteratorMethod = requireGetIteratorMethodInternal();
|
|
3070
3037
|
var iteratorClose = requireIteratorClose();
|
|
3071
3038
|
|
|
3072
3039
|
var $TypeError = TypeError;
|
|
@@ -5149,7 +5116,7 @@ const MAX_RESET_COUNT = 50;
|
|
|
5149
5116
|
* This export does not have any `platform` interface logic. You will need to
|
|
5150
5117
|
* write one for the platform you are using Floating UI with.
|
|
5151
5118
|
*/
|
|
5152
|
-
const computePosition$
|
|
5119
|
+
const computePosition$1 = async (reference, floating, config) => {
|
|
5153
5120
|
const {
|
|
5154
5121
|
placement = 'bottom',
|
|
5155
5122
|
strategy = 'absolute',
|
|
@@ -5324,7 +5291,7 @@ const arrow$3 = options => ({
|
|
|
5324
5291
|
* clipping boundary. Alternative to `autoPlacement`.
|
|
5325
5292
|
* @see https://floating-ui.com/docs/flip
|
|
5326
5293
|
*/
|
|
5327
|
-
const flip$
|
|
5294
|
+
const flip$2 = function (options) {
|
|
5328
5295
|
if (options === void 0) {
|
|
5329
5296
|
options = {};
|
|
5330
5297
|
}
|
|
@@ -5502,7 +5469,7 @@ async function convertValueToCoords(state, options) {
|
|
|
5502
5469
|
* object may be passed.
|
|
5503
5470
|
* @see https://floating-ui.com/docs/offset
|
|
5504
5471
|
*/
|
|
5505
|
-
const offset$
|
|
5472
|
+
const offset$2 = function (options) {
|
|
5506
5473
|
if (options === void 0) {
|
|
5507
5474
|
options = 0;
|
|
5508
5475
|
}
|
|
@@ -5840,7 +5807,7 @@ function getFrameElement(win) {
|
|
|
5840
5807
|
return win.parent && Object.getPrototypeOf(win.parent) ? win.frameElement : null;
|
|
5841
5808
|
}
|
|
5842
5809
|
|
|
5843
|
-
function getCssDimensions
|
|
5810
|
+
function getCssDimensions(element) {
|
|
5844
5811
|
const css = getComputedStyle$1(element);
|
|
5845
5812
|
// In testing environments, the `width` and `height` properties are empty
|
|
5846
5813
|
// strings for SVG elements, returning NaN. Fallback to `0` in this case.
|
|
@@ -5861,12 +5828,12 @@ function getCssDimensions$1(element) {
|
|
|
5861
5828
|
};
|
|
5862
5829
|
}
|
|
5863
5830
|
|
|
5864
|
-
function unwrapElement
|
|
5831
|
+
function unwrapElement(element) {
|
|
5865
5832
|
return !isElement(element) ? element.contextElement : element;
|
|
5866
5833
|
}
|
|
5867
5834
|
|
|
5868
|
-
function getScale
|
|
5869
|
-
const domElement = unwrapElement
|
|
5835
|
+
function getScale(element) {
|
|
5836
|
+
const domElement = unwrapElement(element);
|
|
5870
5837
|
if (!isHTMLElement(domElement)) {
|
|
5871
5838
|
return createCoords(1);
|
|
5872
5839
|
}
|
|
@@ -5875,7 +5842,7 @@ function getScale$1(element) {
|
|
|
5875
5842
|
width,
|
|
5876
5843
|
height,
|
|
5877
5844
|
$
|
|
5878
|
-
} = getCssDimensions
|
|
5845
|
+
} = getCssDimensions(domElement);
|
|
5879
5846
|
let x = ($ ? round(rect.width) : rect.width) / width;
|
|
5880
5847
|
let y = ($ ? round(rect.height) : rect.height) / height;
|
|
5881
5848
|
|
|
@@ -5893,28 +5860,25 @@ function getScale$1(element) {
|
|
|
5893
5860
|
};
|
|
5894
5861
|
}
|
|
5895
5862
|
|
|
5896
|
-
const noOffsets
|
|
5897
|
-
function getVisualOffsets
|
|
5863
|
+
const noOffsets = /*#__PURE__*/createCoords(0);
|
|
5864
|
+
function getVisualOffsets(element) {
|
|
5898
5865
|
const win = getWindow(element);
|
|
5899
5866
|
if (!isWebKit() || !win.visualViewport) {
|
|
5900
|
-
return noOffsets
|
|
5867
|
+
return noOffsets;
|
|
5901
5868
|
}
|
|
5902
5869
|
return {
|
|
5903
5870
|
x: win.visualViewport.offsetLeft,
|
|
5904
5871
|
y: win.visualViewport.offsetTop
|
|
5905
5872
|
};
|
|
5906
5873
|
}
|
|
5907
|
-
function shouldAddVisualOffsets
|
|
5874
|
+
function shouldAddVisualOffsets(element, isFixed, floatingOffsetParent) {
|
|
5908
5875
|
if (isFixed === void 0) {
|
|
5909
5876
|
isFixed = false;
|
|
5910
5877
|
}
|
|
5911
|
-
|
|
5912
|
-
return false;
|
|
5913
|
-
}
|
|
5914
|
-
return isFixed;
|
|
5878
|
+
return !!floatingOffsetParent && isFixed && floatingOffsetParent === getWindow(element);
|
|
5915
5879
|
}
|
|
5916
5880
|
|
|
5917
|
-
function getBoundingClientRect
|
|
5881
|
+
function getBoundingClientRect(element, includeScale, isFixedStrategy, offsetParent) {
|
|
5918
5882
|
if (includeScale === void 0) {
|
|
5919
5883
|
includeScale = false;
|
|
5920
5884
|
}
|
|
@@ -5922,29 +5886,29 @@ function getBoundingClientRect$1(element, includeScale, isFixedStrategy, offsetP
|
|
|
5922
5886
|
isFixedStrategy = false;
|
|
5923
5887
|
}
|
|
5924
5888
|
const clientRect = element.getBoundingClientRect();
|
|
5925
|
-
const domElement = unwrapElement
|
|
5889
|
+
const domElement = unwrapElement(element);
|
|
5926
5890
|
let scale = createCoords(1);
|
|
5927
5891
|
if (includeScale) {
|
|
5928
5892
|
if (offsetParent) {
|
|
5929
5893
|
if (isElement(offsetParent)) {
|
|
5930
|
-
scale = getScale
|
|
5894
|
+
scale = getScale(offsetParent);
|
|
5931
5895
|
}
|
|
5932
5896
|
} else {
|
|
5933
|
-
scale = getScale
|
|
5897
|
+
scale = getScale(element);
|
|
5934
5898
|
}
|
|
5935
5899
|
}
|
|
5936
|
-
const visualOffsets = shouldAddVisualOffsets
|
|
5900
|
+
const visualOffsets = shouldAddVisualOffsets(domElement, isFixedStrategy, offsetParent) ? getVisualOffsets(domElement) : createCoords(0);
|
|
5937
5901
|
let x = (clientRect.left + visualOffsets.x) / scale.x;
|
|
5938
5902
|
let y = (clientRect.top + visualOffsets.y) / scale.y;
|
|
5939
5903
|
let width = clientRect.width / scale.x;
|
|
5940
5904
|
let height = clientRect.height / scale.y;
|
|
5941
|
-
if (domElement) {
|
|
5905
|
+
if (domElement && offsetParent) {
|
|
5942
5906
|
const win = getWindow(domElement);
|
|
5943
|
-
const offsetWin =
|
|
5907
|
+
const offsetWin = isElement(offsetParent) ? getWindow(offsetParent) : offsetParent;
|
|
5944
5908
|
let currentWin = win;
|
|
5945
5909
|
let currentIFrame = getFrameElement(currentWin);
|
|
5946
|
-
while (currentIFrame &&
|
|
5947
|
-
const iframeScale = getScale
|
|
5910
|
+
while (currentIFrame && offsetWin !== currentWin) {
|
|
5911
|
+
const iframeScale = getScale(currentIFrame);
|
|
5948
5912
|
const iframeRect = currentIFrame.getBoundingClientRect();
|
|
5949
5913
|
const css = getComputedStyle$1(currentIFrame);
|
|
5950
5914
|
const left = iframeRect.left + (currentIFrame.clientLeft + parseFloat(css.paddingLeft)) * iframeScale.x;
|
|
@@ -5969,17 +5933,17 @@ function getBoundingClientRect$1(element, includeScale, isFixedStrategy, offsetP
|
|
|
5969
5933
|
|
|
5970
5934
|
// If <html> has a CSS width greater than the viewport, then this will be
|
|
5971
5935
|
// incorrect for RTL.
|
|
5972
|
-
function getWindowScrollBarX
|
|
5936
|
+
function getWindowScrollBarX(element, rect) {
|
|
5973
5937
|
const leftScroll = getNodeScroll(element).scrollLeft;
|
|
5974
5938
|
if (!rect) {
|
|
5975
|
-
return getBoundingClientRect
|
|
5939
|
+
return getBoundingClientRect(getDocumentElement(element)).left + leftScroll;
|
|
5976
5940
|
}
|
|
5977
5941
|
return rect.left + leftScroll;
|
|
5978
5942
|
}
|
|
5979
5943
|
|
|
5980
|
-
function getHTMLOffset
|
|
5944
|
+
function getHTMLOffset(documentElement, scroll) {
|
|
5981
5945
|
const htmlRect = documentElement.getBoundingClientRect();
|
|
5982
|
-
const x = htmlRect.left + scroll.scrollLeft - getWindowScrollBarX
|
|
5946
|
+
const x = htmlRect.left + scroll.scrollLeft - getWindowScrollBarX(documentElement, htmlRect);
|
|
5983
5947
|
const y = htmlRect.top + scroll.scrollTop;
|
|
5984
5948
|
return {
|
|
5985
5949
|
x,
|
|
@@ -5987,7 +5951,7 @@ function getHTMLOffset$1(documentElement, scroll) {
|
|
|
5987
5951
|
};
|
|
5988
5952
|
}
|
|
5989
5953
|
|
|
5990
|
-
function convertOffsetParentRelativeRectToViewportRelativeRect
|
|
5954
|
+
function convertOffsetParentRelativeRectToViewportRelativeRect(_ref) {
|
|
5991
5955
|
let {
|
|
5992
5956
|
elements,
|
|
5993
5957
|
rect,
|
|
@@ -6007,18 +5971,18 @@ function convertOffsetParentRelativeRectToViewportRelativeRect$1(_ref) {
|
|
|
6007
5971
|
let scale = createCoords(1);
|
|
6008
5972
|
const offsets = createCoords(0);
|
|
6009
5973
|
const isOffsetParentAnElement = isHTMLElement(offsetParent);
|
|
6010
|
-
if (isOffsetParentAnElement || !
|
|
5974
|
+
if (isOffsetParentAnElement || !isFixed) {
|
|
6011
5975
|
if (getNodeName(offsetParent) !== 'body' || isOverflowElement(documentElement)) {
|
|
6012
5976
|
scroll = getNodeScroll(offsetParent);
|
|
6013
5977
|
}
|
|
6014
5978
|
if (isOffsetParentAnElement) {
|
|
6015
|
-
const offsetRect = getBoundingClientRect
|
|
6016
|
-
scale = getScale
|
|
5979
|
+
const offsetRect = getBoundingClientRect(offsetParent);
|
|
5980
|
+
scale = getScale(offsetParent);
|
|
6017
5981
|
offsets.x = offsetRect.x + offsetParent.clientLeft;
|
|
6018
5982
|
offsets.y = offsetRect.y + offsetParent.clientTop;
|
|
6019
5983
|
}
|
|
6020
5984
|
}
|
|
6021
|
-
const htmlOffset = documentElement && !isOffsetParentAnElement && !isFixed ? getHTMLOffset
|
|
5985
|
+
const htmlOffset = documentElement && !isOffsetParentAnElement && !isFixed ? getHTMLOffset(documentElement, scroll) : createCoords(0);
|
|
6022
5986
|
return {
|
|
6023
5987
|
width: rect.width * scale.x,
|
|
6024
5988
|
height: rect.height * scale.y,
|
|
@@ -6027,19 +5991,18 @@ function convertOffsetParentRelativeRectToViewportRelativeRect$1(_ref) {
|
|
|
6027
5991
|
};
|
|
6028
5992
|
}
|
|
6029
5993
|
|
|
6030
|
-
function getClientRects
|
|
6031
|
-
return Array.from(element.getClientRects());
|
|
5994
|
+
function getClientRects(element) {
|
|
5995
|
+
return element.getClientRects ? Array.from(element.getClientRects()) : [];
|
|
6032
5996
|
}
|
|
6033
5997
|
|
|
6034
5998
|
// Gets the entire size of the scrollable document area, even extending outside
|
|
6035
5999
|
// of the `<html>` and `<body>` rect bounds if horizontally scrollable.
|
|
6036
|
-
function getDocumentRect
|
|
6037
|
-
const
|
|
6038
|
-
const
|
|
6039
|
-
const body = element.ownerDocument.body;
|
|
6000
|
+
function getDocumentRect(html) {
|
|
6001
|
+
const scroll = getNodeScroll(html);
|
|
6002
|
+
const body = html.ownerDocument.body;
|
|
6040
6003
|
const width = max$1(html.scrollWidth, html.clientWidth, body.scrollWidth, body.clientWidth);
|
|
6041
6004
|
const height = max$1(html.scrollHeight, html.clientHeight, body.scrollHeight, body.clientHeight);
|
|
6042
|
-
let x = -scroll.scrollLeft + getWindowScrollBarX
|
|
6005
|
+
let x = -scroll.scrollLeft + getWindowScrollBarX(html);
|
|
6043
6006
|
const y = -scroll.scrollTop;
|
|
6044
6007
|
if (getComputedStyle$1(body).direction === 'rtl') {
|
|
6045
6008
|
x += max$1(html.clientWidth, body.clientWidth) - width;
|
|
@@ -6055,8 +6018,12 @@ function getDocumentRect$1(element) {
|
|
|
6055
6018
|
// Safety check: ensure the scrollbar space is reasonable in case this
|
|
6056
6019
|
// calculation is affected by unusual styles.
|
|
6057
6020
|
// Most scrollbars leave 15-18px of space.
|
|
6058
|
-
const SCROLLBAR_MAX
|
|
6059
|
-
function getViewportRect
|
|
6021
|
+
const SCROLLBAR_MAX = 25;
|
|
6022
|
+
function getViewportRect(element, strategy, rootBoundary) {
|
|
6023
|
+
if (rootBoundary === void 0) {
|
|
6024
|
+
rootBoundary = 'viewport';
|
|
6025
|
+
}
|
|
6026
|
+
const isLayoutViewport = rootBoundary === 'layoutViewport';
|
|
6060
6027
|
const win = getWindow(element);
|
|
6061
6028
|
const html = getDocumentElement(element);
|
|
6062
6029
|
const visualViewport = win.visualViewport;
|
|
@@ -6065,31 +6032,42 @@ function getViewportRect$1(element, strategy) {
|
|
|
6065
6032
|
let x = 0;
|
|
6066
6033
|
let y = 0;
|
|
6067
6034
|
if (visualViewport) {
|
|
6068
|
-
|
|
6069
|
-
|
|
6070
|
-
|
|
6071
|
-
|
|
6072
|
-
|
|
6073
|
-
|
|
6074
|
-
|
|
6075
|
-
|
|
6076
|
-
|
|
6077
|
-
|
|
6078
|
-
|
|
6079
|
-
|
|
6035
|
+
// Client coordinates are relative to the layout viewport, except in
|
|
6036
|
+
// WebKit with an `absolute` strategy, where they are relative to the
|
|
6037
|
+
// visual viewport.
|
|
6038
|
+
const layoutRelativeClientCoords = !isWebKit() || strategy === 'fixed';
|
|
6039
|
+
if (isLayoutViewport) {
|
|
6040
|
+
if (!layoutRelativeClientCoords) {
|
|
6041
|
+
x = -visualViewport.offsetLeft;
|
|
6042
|
+
y = -visualViewport.offsetTop;
|
|
6043
|
+
}
|
|
6044
|
+
} else {
|
|
6045
|
+
width = visualViewport.width;
|
|
6046
|
+
height = visualViewport.height;
|
|
6047
|
+
if (layoutRelativeClientCoords) {
|
|
6048
|
+
x = visualViewport.offsetLeft;
|
|
6049
|
+
y = visualViewport.offsetTop;
|
|
6050
|
+
}
|
|
6051
|
+
}
|
|
6052
|
+
}
|
|
6053
|
+
const windowScrollbarX = getWindowScrollBarX(html);
|
|
6054
|
+
// `scrollbar-gutter: stable` on the <html> reserves gutter space that shrinks
|
|
6055
|
+
// the visual width but isn't reflected in `html.clientWidth`, so subtract it.
|
|
6056
|
+
// Only the inline-end (right) gutter can hold the scrollbar; `both-edges` also
|
|
6057
|
+
// reserves an empty inline-start gutter that clips nothing, so exclude just
|
|
6058
|
+
// the one scrollbar-side gutter — halve the measured (two-gutter) total. A
|
|
6059
|
+
// left-side scrollbar (`windowScrollbarX > 0`) is already handled by
|
|
6060
|
+
// `getHTMLOffset`/`visualViewport.width`; skip it here.
|
|
6080
6061
|
if (windowScrollbarX <= 0) {
|
|
6081
6062
|
const doc = html.ownerDocument;
|
|
6082
6063
|
const body = doc.body;
|
|
6083
6064
|
const bodyStyles = getComputedStyle(body);
|
|
6084
6065
|
const bodyMarginInline = doc.compatMode === 'CSS1Compat' ? parseFloat(bodyStyles.marginLeft) + parseFloat(bodyStyles.marginRight) || 0 : 0;
|
|
6085
|
-
const
|
|
6086
|
-
|
|
6087
|
-
|
|
6066
|
+
const reservedWidth = Math.abs(html.clientWidth - body.clientWidth - bodyMarginInline);
|
|
6067
|
+
const gutter = getComputedStyle(html).scrollbarGutter === 'stable both-edges' ? reservedWidth / 2 : reservedWidth;
|
|
6068
|
+
if (gutter <= SCROLLBAR_MAX) {
|
|
6069
|
+
width -= gutter;
|
|
6088
6070
|
}
|
|
6089
|
-
} else if (windowScrollbarX <= SCROLLBAR_MAX$1) {
|
|
6090
|
-
// If the <body> scrollbar is on the left, the width needs to be extended
|
|
6091
|
-
// by the scrollbar amount so there isn't extra space on the right.
|
|
6092
|
-
width += windowScrollbarX;
|
|
6093
6071
|
}
|
|
6094
6072
|
return {
|
|
6095
6073
|
width,
|
|
@@ -6100,11 +6078,11 @@ function getViewportRect$1(element, strategy) {
|
|
|
6100
6078
|
}
|
|
6101
6079
|
|
|
6102
6080
|
// Returns the inner client rect, subtracting scrollbars if present.
|
|
6103
|
-
function getInnerBoundingClientRect
|
|
6104
|
-
const clientRect = getBoundingClientRect
|
|
6081
|
+
function getInnerBoundingClientRect(element, strategy) {
|
|
6082
|
+
const clientRect = getBoundingClientRect(element, true, strategy === 'fixed');
|
|
6105
6083
|
const top = clientRect.top + element.clientTop;
|
|
6106
6084
|
const left = clientRect.left + element.clientLeft;
|
|
6107
|
-
const scale =
|
|
6085
|
+
const scale = getScale(element);
|
|
6108
6086
|
const width = element.clientWidth * scale.x;
|
|
6109
6087
|
const height = element.clientHeight * scale.y;
|
|
6110
6088
|
const x = left * scale.x;
|
|
@@ -6116,16 +6094,16 @@ function getInnerBoundingClientRect$1(element, strategy) {
|
|
|
6116
6094
|
y
|
|
6117
6095
|
};
|
|
6118
6096
|
}
|
|
6119
|
-
function getClientRectFromClippingAncestor
|
|
6097
|
+
function getClientRectFromClippingAncestor(element, clippingAncestor, strategy) {
|
|
6120
6098
|
let rect;
|
|
6121
|
-
if (clippingAncestor === 'viewport') {
|
|
6122
|
-
rect = getViewportRect
|
|
6099
|
+
if (clippingAncestor === 'viewport' || clippingAncestor === 'layoutViewport') {
|
|
6100
|
+
rect = getViewportRect(element, strategy, clippingAncestor);
|
|
6123
6101
|
} else if (clippingAncestor === 'document') {
|
|
6124
|
-
rect = getDocumentRect
|
|
6102
|
+
rect = getDocumentRect(getDocumentElement(element));
|
|
6125
6103
|
} else if (isElement(clippingAncestor)) {
|
|
6126
|
-
rect = getInnerBoundingClientRect
|
|
6104
|
+
rect = getInnerBoundingClientRect(clippingAncestor, strategy);
|
|
6127
6105
|
} else {
|
|
6128
|
-
const visualOffsets = getVisualOffsets
|
|
6106
|
+
const visualOffsets = getVisualOffsets(element);
|
|
6129
6107
|
rect = {
|
|
6130
6108
|
x: clippingAncestor.x - visualOffsets.x,
|
|
6131
6109
|
y: clippingAncestor.y - visualOffsets.y,
|
|
@@ -6135,24 +6113,17 @@ function getClientRectFromClippingAncestor$1(element, clippingAncestor, strategy
|
|
|
6135
6113
|
}
|
|
6136
6114
|
return rectToClientRect(rect);
|
|
6137
6115
|
}
|
|
6138
|
-
function hasFixedPositionAncestor(element, stopNode) {
|
|
6139
|
-
const parentNode = getParentNode(element);
|
|
6140
|
-
if (parentNode === stopNode || !isElement(parentNode) || isLastTraversableNode(parentNode)) {
|
|
6141
|
-
return false;
|
|
6142
|
-
}
|
|
6143
|
-
return getComputedStyle$1(parentNode).position === 'fixed' || hasFixedPositionAncestor(parentNode, stopNode);
|
|
6144
|
-
}
|
|
6145
6116
|
|
|
6146
6117
|
// A "clipping ancestor" is an `overflow` element with the characteristic of
|
|
6147
6118
|
// clipping (or hiding) child elements. This returns all clipping ancestors
|
|
6148
6119
|
// of the given element up the tree.
|
|
6149
|
-
function getClippingElementAncestors
|
|
6120
|
+
function getClippingElementAncestors(element, cache) {
|
|
6150
6121
|
const cachedResult = cache.get(element);
|
|
6151
6122
|
if (cachedResult) {
|
|
6152
6123
|
return cachedResult;
|
|
6153
6124
|
}
|
|
6154
6125
|
let result = getOverflowAncestors(element, [], false).filter(el => isElement(el) && getNodeName(el) !== 'body');
|
|
6155
|
-
let
|
|
6126
|
+
let lastKeptComputedStyle = null;
|
|
6156
6127
|
const elementIsFixed = getComputedStyle$1(element).position === 'fixed';
|
|
6157
6128
|
let currentNode = elementIsFixed ? getParentNode(element) : element;
|
|
6158
6129
|
|
|
@@ -6160,16 +6131,20 @@ function getClippingElementAncestors$1(element, cache) {
|
|
|
6160
6131
|
while (isElement(currentNode) && !isLastTraversableNode(currentNode)) {
|
|
6161
6132
|
const computedStyle = getComputedStyle$1(currentNode);
|
|
6162
6133
|
const currentNodeIsContaining = isContainingBlock(currentNode);
|
|
6163
|
-
|
|
6164
|
-
|
|
6165
|
-
|
|
6166
|
-
|
|
6134
|
+
// Position of the containing block chain below the current node. A fixed
|
|
6135
|
+
// element whose containing block hasn't been found yet is a fixed chain.
|
|
6136
|
+
const lastPosition = lastKeptComputedStyle ? lastKeptComputedStyle.position : elementIsFixed ? 'fixed' : '';
|
|
6137
|
+
|
|
6138
|
+
// A non-containing ancestor does not clip the element when the chain
|
|
6139
|
+
// below it escapes it: a fixed chain escapes all ancestors up to the
|
|
6140
|
+
// next containing block, an absolute chain escapes static ancestors.
|
|
6141
|
+
const shouldDropCurrentNode = !currentNodeIsContaining && (lastPosition === 'fixed' || lastPosition === 'absolute' && computedStyle.position === 'static');
|
|
6167
6142
|
if (shouldDropCurrentNode) {
|
|
6168
6143
|
// Drop non-containing blocks.
|
|
6169
6144
|
result = result.filter(ancestor => ancestor !== currentNode);
|
|
6170
6145
|
} else {
|
|
6171
|
-
//
|
|
6172
|
-
|
|
6146
|
+
// The kept node carries the chain position for the next iteration.
|
|
6147
|
+
lastKeptComputedStyle = computedStyle;
|
|
6173
6148
|
}
|
|
6174
6149
|
currentNode = getParentNode(currentNode);
|
|
6175
6150
|
}
|
|
@@ -6179,22 +6154,22 @@ function getClippingElementAncestors$1(element, cache) {
|
|
|
6179
6154
|
|
|
6180
6155
|
// Gets the maximum area that the element is visible in due to any number of
|
|
6181
6156
|
// clipping ancestors.
|
|
6182
|
-
function getClippingRect
|
|
6157
|
+
function getClippingRect(_ref) {
|
|
6183
6158
|
let {
|
|
6184
6159
|
element,
|
|
6185
6160
|
boundary,
|
|
6186
6161
|
rootBoundary,
|
|
6187
6162
|
strategy
|
|
6188
6163
|
} = _ref;
|
|
6189
|
-
const elementClippingAncestors = boundary === 'clippingAncestors' ? isTopLayer(element) ? [] : getClippingElementAncestors
|
|
6164
|
+
const elementClippingAncestors = boundary === 'clippingAncestors' ? isTopLayer(element) ? [] : getClippingElementAncestors(element, this._c) : [].concat(boundary);
|
|
6190
6165
|
const clippingAncestors = [...elementClippingAncestors, rootBoundary];
|
|
6191
|
-
const firstRect = getClientRectFromClippingAncestor
|
|
6166
|
+
const firstRect = getClientRectFromClippingAncestor(element, clippingAncestors[0], strategy);
|
|
6192
6167
|
let top = firstRect.top;
|
|
6193
6168
|
let right = firstRect.right;
|
|
6194
6169
|
let bottom = firstRect.bottom;
|
|
6195
6170
|
let left = firstRect.left;
|
|
6196
6171
|
for (let i = 1; i < clippingAncestors.length; i++) {
|
|
6197
|
-
const rect = getClientRectFromClippingAncestor
|
|
6172
|
+
const rect = getClientRectFromClippingAncestor(element, clippingAncestors[i], strategy);
|
|
6198
6173
|
top = max$1(rect.top, top);
|
|
6199
6174
|
right = min$1(rect.right, right);
|
|
6200
6175
|
bottom = min$1(rect.bottom, bottom);
|
|
@@ -6208,49 +6183,44 @@ function getClippingRect$1(_ref) {
|
|
|
6208
6183
|
};
|
|
6209
6184
|
}
|
|
6210
6185
|
|
|
6211
|
-
function getDimensions
|
|
6186
|
+
function getDimensions(element) {
|
|
6212
6187
|
const {
|
|
6213
6188
|
width,
|
|
6214
6189
|
height
|
|
6215
|
-
} = getCssDimensions
|
|
6190
|
+
} = getCssDimensions(element);
|
|
6216
6191
|
return {
|
|
6217
6192
|
width,
|
|
6218
6193
|
height
|
|
6219
6194
|
};
|
|
6220
6195
|
}
|
|
6221
6196
|
|
|
6222
|
-
function getRectRelativeToOffsetParent
|
|
6197
|
+
function getRectRelativeToOffsetParent(element, offsetParent, strategy) {
|
|
6223
6198
|
const isOffsetParentAnElement = isHTMLElement(offsetParent);
|
|
6224
6199
|
const documentElement = getDocumentElement(offsetParent);
|
|
6225
6200
|
const isFixed = strategy === 'fixed';
|
|
6226
|
-
const rect = getBoundingClientRect
|
|
6201
|
+
const rect = getBoundingClientRect(element, true, isFixed, offsetParent);
|
|
6227
6202
|
let scroll = {
|
|
6228
6203
|
scrollLeft: 0,
|
|
6229
6204
|
scrollTop: 0
|
|
6230
6205
|
};
|
|
6231
6206
|
const offsets = createCoords(0);
|
|
6232
|
-
|
|
6233
|
-
// If the <body> scrollbar appears on the left (e.g. RTL systems). Use
|
|
6234
|
-
// Firefox with layout.scrollbar.side = 3 in about:config to test this.
|
|
6235
|
-
function setLeftRTLScrollbarOffset() {
|
|
6236
|
-
offsets.x = getWindowScrollBarX$1(documentElement);
|
|
6237
|
-
}
|
|
6238
|
-
if (isOffsetParentAnElement || !isOffsetParentAnElement && !isFixed) {
|
|
6207
|
+
if (isOffsetParentAnElement || !isFixed) {
|
|
6239
6208
|
if (getNodeName(offsetParent) !== 'body' || isOverflowElement(documentElement)) {
|
|
6240
6209
|
scroll = getNodeScroll(offsetParent);
|
|
6241
6210
|
}
|
|
6242
6211
|
if (isOffsetParentAnElement) {
|
|
6243
|
-
const offsetRect = getBoundingClientRect
|
|
6212
|
+
const offsetRect = getBoundingClientRect(offsetParent, true, isFixed, offsetParent);
|
|
6244
6213
|
offsets.x = offsetRect.x + offsetParent.clientLeft;
|
|
6245
6214
|
offsets.y = offsetRect.y + offsetParent.clientTop;
|
|
6246
|
-
} else if (documentElement) {
|
|
6247
|
-
setLeftRTLScrollbarOffset();
|
|
6248
6215
|
}
|
|
6249
6216
|
}
|
|
6250
|
-
|
|
6251
|
-
|
|
6217
|
+
|
|
6218
|
+
// If the <body> scrollbar appears on the left (e.g. RTL systems). Use
|
|
6219
|
+
// Firefox with layout.scrollbar.side = 3 in about:config to test this.
|
|
6220
|
+
if (!isOffsetParentAnElement && documentElement) {
|
|
6221
|
+
offsets.x = getWindowScrollBarX(documentElement);
|
|
6252
6222
|
}
|
|
6253
|
-
const htmlOffset = documentElement && !isOffsetParentAnElement && !isFixed ? getHTMLOffset
|
|
6223
|
+
const htmlOffset = documentElement && !isOffsetParentAnElement && !isFixed ? getHTMLOffset(documentElement, scroll) : createCoords(0);
|
|
6254
6224
|
const x = rect.left + scroll.scrollLeft - offsets.x - htmlOffset.x;
|
|
6255
6225
|
const y = rect.top + scroll.scrollTop - offsets.y - htmlOffset.y;
|
|
6256
6226
|
return {
|
|
@@ -6261,11 +6231,11 @@ function getRectRelativeToOffsetParent$1(element, offsetParent, strategy) {
|
|
|
6261
6231
|
};
|
|
6262
6232
|
}
|
|
6263
6233
|
|
|
6264
|
-
function isStaticPositioned
|
|
6234
|
+
function isStaticPositioned(element) {
|
|
6265
6235
|
return getComputedStyle$1(element).position === 'static';
|
|
6266
6236
|
}
|
|
6267
6237
|
|
|
6268
|
-
function getTrueOffsetParent
|
|
6238
|
+
function getTrueOffsetParent(element, polyfill) {
|
|
6269
6239
|
if (!isHTMLElement(element) || getComputedStyle$1(element).position === 'fixed') {
|
|
6270
6240
|
return null;
|
|
6271
6241
|
}
|
|
@@ -6286,7 +6256,7 @@ function getTrueOffsetParent$1(element, polyfill) {
|
|
|
6286
6256
|
|
|
6287
6257
|
// Gets the closest ancestor positioned element. Handles some edge cases,
|
|
6288
6258
|
// such as table ancestors and cross browser bugs.
|
|
6289
|
-
function getOffsetParent
|
|
6259
|
+
function getOffsetParent(element, polyfill) {
|
|
6290
6260
|
const win = getWindow(element);
|
|
6291
6261
|
if (isTopLayer(element)) {
|
|
6292
6262
|
return win;
|
|
@@ -6294,29 +6264,29 @@ function getOffsetParent$1(element, polyfill) {
|
|
|
6294
6264
|
if (!isHTMLElement(element)) {
|
|
6295
6265
|
let svgOffsetParent = getParentNode(element);
|
|
6296
6266
|
while (svgOffsetParent && !isLastTraversableNode(svgOffsetParent)) {
|
|
6297
|
-
if (isElement(svgOffsetParent) && !isStaticPositioned
|
|
6267
|
+
if (isElement(svgOffsetParent) && !isStaticPositioned(svgOffsetParent)) {
|
|
6298
6268
|
return svgOffsetParent;
|
|
6299
6269
|
}
|
|
6300
6270
|
svgOffsetParent = getParentNode(svgOffsetParent);
|
|
6301
6271
|
}
|
|
6302
6272
|
return win;
|
|
6303
6273
|
}
|
|
6304
|
-
let offsetParent = getTrueOffsetParent
|
|
6305
|
-
while (offsetParent && isTableElement(offsetParent) && isStaticPositioned
|
|
6306
|
-
offsetParent = getTrueOffsetParent
|
|
6274
|
+
let offsetParent = getTrueOffsetParent(element, polyfill);
|
|
6275
|
+
while (offsetParent && isTableElement(offsetParent) && isStaticPositioned(offsetParent)) {
|
|
6276
|
+
offsetParent = getTrueOffsetParent(offsetParent, polyfill);
|
|
6307
6277
|
}
|
|
6308
|
-
if (offsetParent && isLastTraversableNode(offsetParent) && isStaticPositioned
|
|
6278
|
+
if (offsetParent && isLastTraversableNode(offsetParent) && isStaticPositioned(offsetParent) && !isContainingBlock(offsetParent)) {
|
|
6309
6279
|
return win;
|
|
6310
6280
|
}
|
|
6311
6281
|
return offsetParent || getContainingBlock(element) || win;
|
|
6312
6282
|
}
|
|
6313
6283
|
|
|
6314
|
-
const getElementRects
|
|
6315
|
-
const getOffsetParentFn = this.getOffsetParent || getOffsetParent
|
|
6284
|
+
const getElementRects = async function (data) {
|
|
6285
|
+
const getOffsetParentFn = this.getOffsetParent || getOffsetParent;
|
|
6316
6286
|
const getDimensionsFn = this.getDimensions;
|
|
6317
6287
|
const floatingDimensions = await getDimensionsFn(data.floating);
|
|
6318
6288
|
return {
|
|
6319
|
-
reference: getRectRelativeToOffsetParent
|
|
6289
|
+
reference: getRectRelativeToOffsetParent(data.reference, await getOffsetParentFn(data.floating), data.strategy),
|
|
6320
6290
|
floating: {
|
|
6321
6291
|
x: 0,
|
|
6322
6292
|
y: 0,
|
|
@@ -6326,29 +6296,29 @@ const getElementRects$1 = async function (data) {
|
|
|
6326
6296
|
};
|
|
6327
6297
|
};
|
|
6328
6298
|
|
|
6329
|
-
function isRTL
|
|
6299
|
+
function isRTL(element) {
|
|
6330
6300
|
return getComputedStyle$1(element).direction === 'rtl';
|
|
6331
6301
|
}
|
|
6332
6302
|
|
|
6333
|
-
const platform
|
|
6334
|
-
convertOffsetParentRelativeRectToViewportRelativeRect
|
|
6303
|
+
const platform = {
|
|
6304
|
+
convertOffsetParentRelativeRectToViewportRelativeRect,
|
|
6335
6305
|
getDocumentElement,
|
|
6336
|
-
getClippingRect
|
|
6337
|
-
getOffsetParent
|
|
6338
|
-
getElementRects
|
|
6339
|
-
getClientRects
|
|
6340
|
-
getDimensions
|
|
6341
|
-
getScale
|
|
6306
|
+
getClippingRect,
|
|
6307
|
+
getOffsetParent,
|
|
6308
|
+
getElementRects,
|
|
6309
|
+
getClientRects,
|
|
6310
|
+
getDimensions,
|
|
6311
|
+
getScale,
|
|
6342
6312
|
isElement,
|
|
6343
|
-
isRTL
|
|
6313
|
+
isRTL
|
|
6344
6314
|
};
|
|
6345
6315
|
|
|
6346
|
-
function rectsAreEqual
|
|
6316
|
+
function rectsAreEqual(a, b) {
|
|
6347
6317
|
return a.x === b.x && a.y === b.y && a.width === b.width && a.height === b.height;
|
|
6348
6318
|
}
|
|
6349
6319
|
|
|
6350
6320
|
// https://samthor.au/2021/observing-dom/
|
|
6351
|
-
function observeMove
|
|
6321
|
+
function observeMove(element, onMove, ancestorResize) {
|
|
6352
6322
|
let io = null;
|
|
6353
6323
|
let timeoutId;
|
|
6354
6324
|
const root = getDocumentElement(element);
|
|
@@ -6391,13 +6361,22 @@ function observeMove$1(element, onMove) {
|
|
|
6391
6361
|
let isFirstUpdate = true;
|
|
6392
6362
|
function handleObserve(entries) {
|
|
6393
6363
|
const ratio = entries[0].intersectionRatio;
|
|
6364
|
+
|
|
6365
|
+
// The entry is a snapshot, so the reference may have moved since the
|
|
6366
|
+
// intersection was computed (under performance constraints, or between
|
|
6367
|
+
// consecutive frames of a multi-frame layout shift). The reported ratio
|
|
6368
|
+
// and the observed area are stale in that case and cannot be trusted to
|
|
6369
|
+
// detect subsequent movement, so refresh regardless of the ratio.
|
|
6370
|
+
if (!rectsAreEqual(elementRectForRootMargin, element.getBoundingClientRect())) {
|
|
6371
|
+
return refresh();
|
|
6372
|
+
}
|
|
6394
6373
|
if (ratio !== threshold) {
|
|
6395
6374
|
if (!isFirstUpdate) {
|
|
6396
6375
|
return refresh();
|
|
6397
6376
|
}
|
|
6398
6377
|
if (!ratio) {
|
|
6399
|
-
// If the reference is clipped, the ratio is 0. Throttle
|
|
6400
|
-
// to prevent an infinite loop of updates.
|
|
6378
|
+
// If the reference is clipped in place, the ratio is 0. Throttle
|
|
6379
|
+
// the refresh to prevent an infinite loop of updates.
|
|
6401
6380
|
timeoutId = setTimeout(() => {
|
|
6402
6381
|
refresh(false, 1e-7);
|
|
6403
6382
|
}, 1000);
|
|
@@ -6405,16 +6384,6 @@ function observeMove$1(element, onMove) {
|
|
|
6405
6384
|
refresh(false, ratio);
|
|
6406
6385
|
}
|
|
6407
6386
|
}
|
|
6408
|
-
if (ratio === 1 && !rectsAreEqual$1(elementRectForRootMargin, element.getBoundingClientRect())) {
|
|
6409
|
-
// It's possible that even though the ratio is reported as 1, the
|
|
6410
|
-
// element is not actually fully within the IntersectionObserver's root
|
|
6411
|
-
// area anymore. This can happen under performance constraints. This may
|
|
6412
|
-
// be a bug in the browser's IntersectionObserver implementation. To
|
|
6413
|
-
// work around this, we compare the element's bounding rect now with
|
|
6414
|
-
// what it was at the time we created the IntersectionObserver. If they
|
|
6415
|
-
// are not equal then the element moved, so we refresh.
|
|
6416
|
-
refresh();
|
|
6417
|
-
}
|
|
6418
6387
|
isFirstUpdate = false;
|
|
6419
6388
|
}
|
|
6420
6389
|
|
|
@@ -6431,8 +6400,18 @@ function observeMove$1(element, onMove) {
|
|
|
6431
6400
|
}
|
|
6432
6401
|
io.observe(element);
|
|
6433
6402
|
}
|
|
6403
|
+
const win = getWindow(element);
|
|
6404
|
+
// The window is a resize ancestor, so when `ancestorResize` is enabled its
|
|
6405
|
+
// listener already runs the update on resize. Here we only need to rebuild
|
|
6406
|
+
// the `IntersectionObserver` for the new root size, skipping a redundant
|
|
6407
|
+
// update. When `ancestorResize` is disabled, this becomes the sole update.
|
|
6408
|
+
const handleResize = () => refresh(ancestorResize);
|
|
6409
|
+
win.addEventListener('resize', handleResize);
|
|
6434
6410
|
refresh(true);
|
|
6435
|
-
return
|
|
6411
|
+
return () => {
|
|
6412
|
+
win.removeEventListener('resize', handleResize);
|
|
6413
|
+
cleanup();
|
|
6414
|
+
};
|
|
6436
6415
|
}
|
|
6437
6416
|
|
|
6438
6417
|
/**
|
|
@@ -6443,7 +6422,7 @@ function observeMove$1(element, onMove) {
|
|
|
6443
6422
|
* removed from the DOM or hidden from the screen.
|
|
6444
6423
|
* @see https://floating-ui.com/docs/autoUpdate
|
|
6445
6424
|
*/
|
|
6446
|
-
function autoUpdate
|
|
6425
|
+
function autoUpdate(reference, floating, update, options) {
|
|
6447
6426
|
if (options === void 0) {
|
|
6448
6427
|
options = {};
|
|
6449
6428
|
}
|
|
@@ -6454,15 +6433,13 @@ function autoUpdate$1(reference, floating, update, options) {
|
|
|
6454
6433
|
layoutShift = typeof IntersectionObserver === 'function',
|
|
6455
6434
|
animationFrame = false
|
|
6456
6435
|
} = options;
|
|
6457
|
-
const referenceEl = unwrapElement
|
|
6436
|
+
const referenceEl = unwrapElement(reference);
|
|
6458
6437
|
const ancestors = ancestorScroll || ancestorResize ? [...(referenceEl ? getOverflowAncestors(referenceEl) : []), ...(floating ? getOverflowAncestors(floating) : [])] : [];
|
|
6459
6438
|
ancestors.forEach(ancestor => {
|
|
6460
|
-
ancestorScroll && ancestor.addEventListener('scroll', update
|
|
6461
|
-
passive: true
|
|
6462
|
-
});
|
|
6439
|
+
ancestorScroll && ancestor.addEventListener('scroll', update);
|
|
6463
6440
|
ancestorResize && ancestor.addEventListener('resize', update);
|
|
6464
6441
|
});
|
|
6465
|
-
const cleanupIo = referenceEl && layoutShift ? observeMove
|
|
6442
|
+
const cleanupIo = referenceEl && layoutShift ? observeMove(referenceEl, update, ancestorResize) : null;
|
|
6466
6443
|
let reobserveFrame = -1;
|
|
6467
6444
|
let resizeObserver = null;
|
|
6468
6445
|
if (elementResize) {
|
|
@@ -6488,13 +6465,13 @@ function autoUpdate$1(reference, floating, update, options) {
|
|
|
6488
6465
|
}
|
|
6489
6466
|
}
|
|
6490
6467
|
let frameId;
|
|
6491
|
-
let prevRefRect = animationFrame ? getBoundingClientRect
|
|
6468
|
+
let prevRefRect = animationFrame ? getBoundingClientRect(reference) : null;
|
|
6492
6469
|
if (animationFrame) {
|
|
6493
6470
|
frameLoop();
|
|
6494
6471
|
}
|
|
6495
6472
|
function frameLoop() {
|
|
6496
|
-
const nextRefRect = getBoundingClientRect
|
|
6497
|
-
if (prevRefRect && !rectsAreEqual
|
|
6473
|
+
const nextRefRect = getBoundingClientRect(reference);
|
|
6474
|
+
if (prevRefRect && !rectsAreEqual(prevRefRect, nextRefRect)) {
|
|
6498
6475
|
update();
|
|
6499
6476
|
}
|
|
6500
6477
|
prevRefRect = nextRefRect;
|
|
@@ -6523,7 +6500,7 @@ function autoUpdate$1(reference, floating, update, options) {
|
|
|
6523
6500
|
* object may be passed.
|
|
6524
6501
|
* @see https://floating-ui.com/docs/offset
|
|
6525
6502
|
*/
|
|
6526
|
-
const offset$
|
|
6503
|
+
const offset$1 = offset$2;
|
|
6527
6504
|
|
|
6528
6505
|
/**
|
|
6529
6506
|
* Optimizes the visibility of the floating element by shifting it in order to
|
|
@@ -6538,7 +6515,14 @@ const shift = shift$1;
|
|
|
6538
6515
|
* clipping boundary. Alternative to `autoPlacement`.
|
|
6539
6516
|
* @see https://floating-ui.com/docs/flip
|
|
6540
6517
|
*/
|
|
6541
|
-
const flip$
|
|
6518
|
+
const flip$1 = flip$2;
|
|
6519
|
+
|
|
6520
|
+
/**
|
|
6521
|
+
* Provides data to position an inner element of the floating element so that it
|
|
6522
|
+
* appears centered to the reference element.
|
|
6523
|
+
* @see https://floating-ui.com/docs/arrow
|
|
6524
|
+
*/
|
|
6525
|
+
const arrow$2 = arrow$3;
|
|
6542
6526
|
|
|
6543
6527
|
/**
|
|
6544
6528
|
* Built-in `limiter` that will stop `shift()` at a certain point.
|
|
@@ -6549,20 +6533,18 @@ const limitShift = limitShift$1;
|
|
|
6549
6533
|
* Computes the `x` and `y` coordinates that will place the floating element
|
|
6550
6534
|
* next to a given reference element.
|
|
6551
6535
|
*/
|
|
6552
|
-
const computePosition
|
|
6536
|
+
const computePosition = (reference, floating, options) => {
|
|
6553
6537
|
// This caches the expensive `getClippingElementAncestors` function so that
|
|
6554
6538
|
// multiple lifecycle resets re-use the same result. It only lives for a
|
|
6555
6539
|
// single call. If other functions become expensive, we can add them as well.
|
|
6556
6540
|
const cache = new Map();
|
|
6557
|
-
const mergedOptions = {
|
|
6558
|
-
platform: platform$1,
|
|
6559
|
-
...options
|
|
6560
|
-
};
|
|
6541
|
+
const mergedOptions = options != null ? options : {};
|
|
6561
6542
|
const platformWithCache = {
|
|
6543
|
+
...platform,
|
|
6562
6544
|
...mergedOptions.platform,
|
|
6563
6545
|
_c: cache
|
|
6564
6546
|
};
|
|
6565
|
-
return computePosition$
|
|
6547
|
+
return computePosition$1(reference, floating, {
|
|
6566
6548
|
...mergedOptions,
|
|
6567
6549
|
platform: platformWithCache
|
|
6568
6550
|
});
|
|
@@ -6591,8 +6573,8 @@ function useCombinedRefs(...refs) {
|
|
|
6591
6573
|
*/
|
|
6592
6574
|
|
|
6593
6575
|
function setupFloating(reference, floating, options) {
|
|
6594
|
-
return autoUpdate
|
|
6595
|
-
computePosition
|
|
6576
|
+
return autoUpdate(reference, floating, () => {
|
|
6577
|
+
computePosition(reference, floating, options).then(({
|
|
6596
6578
|
x,
|
|
6597
6579
|
y
|
|
6598
6580
|
}) => {
|
|
@@ -6788,7 +6770,7 @@ const Tooltip = /*#__PURE__*/React__namespace.default.forwardRef(function Toolti
|
|
|
6788
6770
|
if (open && !disabled && combinedTriggerRef.current && tooltipRef.current) {
|
|
6789
6771
|
cleanup = setupFloating(combinedTriggerRef.current, tooltipRef.current, {
|
|
6790
6772
|
placement,
|
|
6791
|
-
middleware: [offset$
|
|
6773
|
+
middleware: [offset$1(8), flip$1({
|
|
6792
6774
|
fallbackPlacements
|
|
6793
6775
|
}), shift({
|
|
6794
6776
|
limiter: limitShift()
|
|
@@ -9075,7 +9057,7 @@ const Dropdown = /*#__PURE__*/React__namespace.default.forwardRef(function Dropd
|
|
|
9075
9057
|
if (popperReference && dropdownRef.current) {
|
|
9076
9058
|
cleanup = setupFloating(popperReference, dropdownRef.current, {
|
|
9077
9059
|
placement,
|
|
9078
|
-
middleware: [flip$
|
|
9060
|
+
middleware: [flip$1(), shift({
|
|
9079
9061
|
limiter: limitShift()
|
|
9080
9062
|
})],
|
|
9081
9063
|
strategy: 'fixed'
|
|
@@ -18217,737 +18199,6 @@ function subYears(date, amount) {
|
|
|
18217
18199
|
return addYears(date, -amount);
|
|
18218
18200
|
}
|
|
18219
18201
|
|
|
18220
|
-
function getCssDimensions(element) {
|
|
18221
|
-
const css = getComputedStyle$1(element);
|
|
18222
|
-
// In testing environments, the `width` and `height` properties are empty
|
|
18223
|
-
// strings for SVG elements, returning NaN. Fallback to `0` in this case.
|
|
18224
|
-
let width = parseFloat(css.width) || 0;
|
|
18225
|
-
let height = parseFloat(css.height) || 0;
|
|
18226
|
-
const hasOffset = isHTMLElement(element);
|
|
18227
|
-
const offsetWidth = hasOffset ? element.offsetWidth : width;
|
|
18228
|
-
const offsetHeight = hasOffset ? element.offsetHeight : height;
|
|
18229
|
-
const shouldFallback = round(width) !== offsetWidth || round(height) !== offsetHeight;
|
|
18230
|
-
if (shouldFallback) {
|
|
18231
|
-
width = offsetWidth;
|
|
18232
|
-
height = offsetHeight;
|
|
18233
|
-
}
|
|
18234
|
-
return {
|
|
18235
|
-
width,
|
|
18236
|
-
height,
|
|
18237
|
-
$: shouldFallback
|
|
18238
|
-
};
|
|
18239
|
-
}
|
|
18240
|
-
|
|
18241
|
-
function unwrapElement(element) {
|
|
18242
|
-
return !isElement(element) ? element.contextElement : element;
|
|
18243
|
-
}
|
|
18244
|
-
|
|
18245
|
-
function getScale(element) {
|
|
18246
|
-
const domElement = unwrapElement(element);
|
|
18247
|
-
if (!isHTMLElement(domElement)) {
|
|
18248
|
-
return createCoords(1);
|
|
18249
|
-
}
|
|
18250
|
-
const rect = domElement.getBoundingClientRect();
|
|
18251
|
-
const {
|
|
18252
|
-
width,
|
|
18253
|
-
height,
|
|
18254
|
-
$
|
|
18255
|
-
} = getCssDimensions(domElement);
|
|
18256
|
-
let x = ($ ? round(rect.width) : rect.width) / width;
|
|
18257
|
-
let y = ($ ? round(rect.height) : rect.height) / height;
|
|
18258
|
-
|
|
18259
|
-
// 0, NaN, or Infinity should always fallback to 1.
|
|
18260
|
-
|
|
18261
|
-
if (!x || !Number.isFinite(x)) {
|
|
18262
|
-
x = 1;
|
|
18263
|
-
}
|
|
18264
|
-
if (!y || !Number.isFinite(y)) {
|
|
18265
|
-
y = 1;
|
|
18266
|
-
}
|
|
18267
|
-
return {
|
|
18268
|
-
x,
|
|
18269
|
-
y
|
|
18270
|
-
};
|
|
18271
|
-
}
|
|
18272
|
-
|
|
18273
|
-
const noOffsets = /*#__PURE__*/createCoords(0);
|
|
18274
|
-
function getVisualOffsets(element) {
|
|
18275
|
-
const win = getWindow(element);
|
|
18276
|
-
if (!isWebKit() || !win.visualViewport) {
|
|
18277
|
-
return noOffsets;
|
|
18278
|
-
}
|
|
18279
|
-
return {
|
|
18280
|
-
x: win.visualViewport.offsetLeft,
|
|
18281
|
-
y: win.visualViewport.offsetTop
|
|
18282
|
-
};
|
|
18283
|
-
}
|
|
18284
|
-
function shouldAddVisualOffsets(element, isFixed, floatingOffsetParent) {
|
|
18285
|
-
if (isFixed === void 0) {
|
|
18286
|
-
isFixed = false;
|
|
18287
|
-
}
|
|
18288
|
-
return !!floatingOffsetParent && isFixed && floatingOffsetParent === getWindow(element);
|
|
18289
|
-
}
|
|
18290
|
-
|
|
18291
|
-
function getBoundingClientRect(element, includeScale, isFixedStrategy, offsetParent) {
|
|
18292
|
-
if (includeScale === void 0) {
|
|
18293
|
-
includeScale = false;
|
|
18294
|
-
}
|
|
18295
|
-
if (isFixedStrategy === void 0) {
|
|
18296
|
-
isFixedStrategy = false;
|
|
18297
|
-
}
|
|
18298
|
-
const clientRect = element.getBoundingClientRect();
|
|
18299
|
-
const domElement = unwrapElement(element);
|
|
18300
|
-
let scale = createCoords(1);
|
|
18301
|
-
if (includeScale) {
|
|
18302
|
-
if (offsetParent) {
|
|
18303
|
-
if (isElement(offsetParent)) {
|
|
18304
|
-
scale = getScale(offsetParent);
|
|
18305
|
-
}
|
|
18306
|
-
} else {
|
|
18307
|
-
scale = getScale(element);
|
|
18308
|
-
}
|
|
18309
|
-
}
|
|
18310
|
-
const visualOffsets = shouldAddVisualOffsets(domElement, isFixedStrategy, offsetParent) ? getVisualOffsets(domElement) : createCoords(0);
|
|
18311
|
-
let x = (clientRect.left + visualOffsets.x) / scale.x;
|
|
18312
|
-
let y = (clientRect.top + visualOffsets.y) / scale.y;
|
|
18313
|
-
let width = clientRect.width / scale.x;
|
|
18314
|
-
let height = clientRect.height / scale.y;
|
|
18315
|
-
if (domElement && offsetParent) {
|
|
18316
|
-
const win = getWindow(domElement);
|
|
18317
|
-
const offsetWin = isElement(offsetParent) ? getWindow(offsetParent) : offsetParent;
|
|
18318
|
-
let currentWin = win;
|
|
18319
|
-
let currentIFrame = getFrameElement(currentWin);
|
|
18320
|
-
while (currentIFrame && offsetWin !== currentWin) {
|
|
18321
|
-
const iframeScale = getScale(currentIFrame);
|
|
18322
|
-
const iframeRect = currentIFrame.getBoundingClientRect();
|
|
18323
|
-
const css = getComputedStyle$1(currentIFrame);
|
|
18324
|
-
const left = iframeRect.left + (currentIFrame.clientLeft + parseFloat(css.paddingLeft)) * iframeScale.x;
|
|
18325
|
-
const top = iframeRect.top + (currentIFrame.clientTop + parseFloat(css.paddingTop)) * iframeScale.y;
|
|
18326
|
-
x *= iframeScale.x;
|
|
18327
|
-
y *= iframeScale.y;
|
|
18328
|
-
width *= iframeScale.x;
|
|
18329
|
-
height *= iframeScale.y;
|
|
18330
|
-
x += left;
|
|
18331
|
-
y += top;
|
|
18332
|
-
currentWin = getWindow(currentIFrame);
|
|
18333
|
-
currentIFrame = getFrameElement(currentWin);
|
|
18334
|
-
}
|
|
18335
|
-
}
|
|
18336
|
-
return rectToClientRect({
|
|
18337
|
-
width,
|
|
18338
|
-
height,
|
|
18339
|
-
x,
|
|
18340
|
-
y
|
|
18341
|
-
});
|
|
18342
|
-
}
|
|
18343
|
-
|
|
18344
|
-
// If <html> has a CSS width greater than the viewport, then this will be
|
|
18345
|
-
// incorrect for RTL.
|
|
18346
|
-
function getWindowScrollBarX(element, rect) {
|
|
18347
|
-
const leftScroll = getNodeScroll(element).scrollLeft;
|
|
18348
|
-
if (!rect) {
|
|
18349
|
-
return getBoundingClientRect(getDocumentElement(element)).left + leftScroll;
|
|
18350
|
-
}
|
|
18351
|
-
return rect.left + leftScroll;
|
|
18352
|
-
}
|
|
18353
|
-
|
|
18354
|
-
function getHTMLOffset(documentElement, scroll) {
|
|
18355
|
-
const htmlRect = documentElement.getBoundingClientRect();
|
|
18356
|
-
const x = htmlRect.left + scroll.scrollLeft - getWindowScrollBarX(documentElement, htmlRect);
|
|
18357
|
-
const y = htmlRect.top + scroll.scrollTop;
|
|
18358
|
-
return {
|
|
18359
|
-
x,
|
|
18360
|
-
y
|
|
18361
|
-
};
|
|
18362
|
-
}
|
|
18363
|
-
|
|
18364
|
-
function convertOffsetParentRelativeRectToViewportRelativeRect(_ref) {
|
|
18365
|
-
let {
|
|
18366
|
-
elements,
|
|
18367
|
-
rect,
|
|
18368
|
-
offsetParent,
|
|
18369
|
-
strategy
|
|
18370
|
-
} = _ref;
|
|
18371
|
-
const isFixed = strategy === 'fixed';
|
|
18372
|
-
const documentElement = getDocumentElement(offsetParent);
|
|
18373
|
-
const topLayer = elements ? isTopLayer(elements.floating) : false;
|
|
18374
|
-
if (offsetParent === documentElement || topLayer && isFixed) {
|
|
18375
|
-
return rect;
|
|
18376
|
-
}
|
|
18377
|
-
let scroll = {
|
|
18378
|
-
scrollLeft: 0,
|
|
18379
|
-
scrollTop: 0
|
|
18380
|
-
};
|
|
18381
|
-
let scale = createCoords(1);
|
|
18382
|
-
const offsets = createCoords(0);
|
|
18383
|
-
const isOffsetParentAnElement = isHTMLElement(offsetParent);
|
|
18384
|
-
if (isOffsetParentAnElement || !isFixed) {
|
|
18385
|
-
if (getNodeName(offsetParent) !== 'body' || isOverflowElement(documentElement)) {
|
|
18386
|
-
scroll = getNodeScroll(offsetParent);
|
|
18387
|
-
}
|
|
18388
|
-
if (isOffsetParentAnElement) {
|
|
18389
|
-
const offsetRect = getBoundingClientRect(offsetParent);
|
|
18390
|
-
scale = getScale(offsetParent);
|
|
18391
|
-
offsets.x = offsetRect.x + offsetParent.clientLeft;
|
|
18392
|
-
offsets.y = offsetRect.y + offsetParent.clientTop;
|
|
18393
|
-
}
|
|
18394
|
-
}
|
|
18395
|
-
const htmlOffset = documentElement && !isOffsetParentAnElement && !isFixed ? getHTMLOffset(documentElement, scroll) : createCoords(0);
|
|
18396
|
-
return {
|
|
18397
|
-
width: rect.width * scale.x,
|
|
18398
|
-
height: rect.height * scale.y,
|
|
18399
|
-
x: rect.x * scale.x - scroll.scrollLeft * scale.x + offsets.x + htmlOffset.x,
|
|
18400
|
-
y: rect.y * scale.y - scroll.scrollTop * scale.y + offsets.y + htmlOffset.y
|
|
18401
|
-
};
|
|
18402
|
-
}
|
|
18403
|
-
|
|
18404
|
-
function getClientRects(element) {
|
|
18405
|
-
return element.getClientRects ? Array.from(element.getClientRects()) : [];
|
|
18406
|
-
}
|
|
18407
|
-
|
|
18408
|
-
// Gets the entire size of the scrollable document area, even extending outside
|
|
18409
|
-
// of the `<html>` and `<body>` rect bounds if horizontally scrollable.
|
|
18410
|
-
function getDocumentRect(html) {
|
|
18411
|
-
const scroll = getNodeScroll(html);
|
|
18412
|
-
const body = html.ownerDocument.body;
|
|
18413
|
-
const width = max$1(html.scrollWidth, html.clientWidth, body.scrollWidth, body.clientWidth);
|
|
18414
|
-
const height = max$1(html.scrollHeight, html.clientHeight, body.scrollHeight, body.clientHeight);
|
|
18415
|
-
let x = -scroll.scrollLeft + getWindowScrollBarX(html);
|
|
18416
|
-
const y = -scroll.scrollTop;
|
|
18417
|
-
if (getComputedStyle$1(body).direction === 'rtl') {
|
|
18418
|
-
x += max$1(html.clientWidth, body.clientWidth) - width;
|
|
18419
|
-
}
|
|
18420
|
-
return {
|
|
18421
|
-
width,
|
|
18422
|
-
height,
|
|
18423
|
-
x,
|
|
18424
|
-
y
|
|
18425
|
-
};
|
|
18426
|
-
}
|
|
18427
|
-
|
|
18428
|
-
// Safety check: ensure the scrollbar space is reasonable in case this
|
|
18429
|
-
// calculation is affected by unusual styles.
|
|
18430
|
-
// Most scrollbars leave 15-18px of space.
|
|
18431
|
-
const SCROLLBAR_MAX = 25;
|
|
18432
|
-
function getViewportRect(element, strategy, rootBoundary) {
|
|
18433
|
-
if (rootBoundary === void 0) {
|
|
18434
|
-
rootBoundary = 'viewport';
|
|
18435
|
-
}
|
|
18436
|
-
const isLayoutViewport = rootBoundary === 'layoutViewport';
|
|
18437
|
-
const win = getWindow(element);
|
|
18438
|
-
const html = getDocumentElement(element);
|
|
18439
|
-
const visualViewport = win.visualViewport;
|
|
18440
|
-
let width = html.clientWidth;
|
|
18441
|
-
let height = html.clientHeight;
|
|
18442
|
-
let x = 0;
|
|
18443
|
-
let y = 0;
|
|
18444
|
-
if (visualViewport) {
|
|
18445
|
-
// Client coordinates are relative to the layout viewport, except in
|
|
18446
|
-
// WebKit with an `absolute` strategy, where they are relative to the
|
|
18447
|
-
// visual viewport.
|
|
18448
|
-
const layoutRelativeClientCoords = !isWebKit() || strategy === 'fixed';
|
|
18449
|
-
if (isLayoutViewport) {
|
|
18450
|
-
if (!layoutRelativeClientCoords) {
|
|
18451
|
-
x = -visualViewport.offsetLeft;
|
|
18452
|
-
y = -visualViewport.offsetTop;
|
|
18453
|
-
}
|
|
18454
|
-
} else {
|
|
18455
|
-
width = visualViewport.width;
|
|
18456
|
-
height = visualViewport.height;
|
|
18457
|
-
if (layoutRelativeClientCoords) {
|
|
18458
|
-
x = visualViewport.offsetLeft;
|
|
18459
|
-
y = visualViewport.offsetTop;
|
|
18460
|
-
}
|
|
18461
|
-
}
|
|
18462
|
-
}
|
|
18463
|
-
const windowScrollbarX = getWindowScrollBarX(html);
|
|
18464
|
-
// `scrollbar-gutter: stable` on the <html> reserves gutter space that shrinks
|
|
18465
|
-
// the visual width but isn't reflected in `html.clientWidth`, so subtract it.
|
|
18466
|
-
// Only the inline-end (right) gutter can hold the scrollbar; `both-edges` also
|
|
18467
|
-
// reserves an empty inline-start gutter that clips nothing, so exclude just
|
|
18468
|
-
// the one scrollbar-side gutter — halve the measured (two-gutter) total. A
|
|
18469
|
-
// left-side scrollbar (`windowScrollbarX > 0`) is already handled by
|
|
18470
|
-
// `getHTMLOffset`/`visualViewport.width`; skip it here.
|
|
18471
|
-
if (windowScrollbarX <= 0) {
|
|
18472
|
-
const doc = html.ownerDocument;
|
|
18473
|
-
const body = doc.body;
|
|
18474
|
-
const bodyStyles = getComputedStyle(body);
|
|
18475
|
-
const bodyMarginInline = doc.compatMode === 'CSS1Compat' ? parseFloat(bodyStyles.marginLeft) + parseFloat(bodyStyles.marginRight) || 0 : 0;
|
|
18476
|
-
const reservedWidth = Math.abs(html.clientWidth - body.clientWidth - bodyMarginInline);
|
|
18477
|
-
const gutter = getComputedStyle(html).scrollbarGutter === 'stable both-edges' ? reservedWidth / 2 : reservedWidth;
|
|
18478
|
-
if (gutter <= SCROLLBAR_MAX) {
|
|
18479
|
-
width -= gutter;
|
|
18480
|
-
}
|
|
18481
|
-
}
|
|
18482
|
-
return {
|
|
18483
|
-
width,
|
|
18484
|
-
height,
|
|
18485
|
-
x,
|
|
18486
|
-
y
|
|
18487
|
-
};
|
|
18488
|
-
}
|
|
18489
|
-
|
|
18490
|
-
// Returns the inner client rect, subtracting scrollbars if present.
|
|
18491
|
-
function getInnerBoundingClientRect(element, strategy) {
|
|
18492
|
-
const clientRect = getBoundingClientRect(element, true, strategy === 'fixed');
|
|
18493
|
-
const top = clientRect.top + element.clientTop;
|
|
18494
|
-
const left = clientRect.left + element.clientLeft;
|
|
18495
|
-
const scale = getScale(element);
|
|
18496
|
-
const width = element.clientWidth * scale.x;
|
|
18497
|
-
const height = element.clientHeight * scale.y;
|
|
18498
|
-
const x = left * scale.x;
|
|
18499
|
-
const y = top * scale.y;
|
|
18500
|
-
return {
|
|
18501
|
-
width,
|
|
18502
|
-
height,
|
|
18503
|
-
x,
|
|
18504
|
-
y
|
|
18505
|
-
};
|
|
18506
|
-
}
|
|
18507
|
-
function getClientRectFromClippingAncestor(element, clippingAncestor, strategy) {
|
|
18508
|
-
let rect;
|
|
18509
|
-
if (clippingAncestor === 'viewport' || clippingAncestor === 'layoutViewport') {
|
|
18510
|
-
rect = getViewportRect(element, strategy, clippingAncestor);
|
|
18511
|
-
} else if (clippingAncestor === 'document') {
|
|
18512
|
-
rect = getDocumentRect(getDocumentElement(element));
|
|
18513
|
-
} else if (isElement(clippingAncestor)) {
|
|
18514
|
-
rect = getInnerBoundingClientRect(clippingAncestor, strategy);
|
|
18515
|
-
} else {
|
|
18516
|
-
const visualOffsets = getVisualOffsets(element);
|
|
18517
|
-
rect = {
|
|
18518
|
-
x: clippingAncestor.x - visualOffsets.x,
|
|
18519
|
-
y: clippingAncestor.y - visualOffsets.y,
|
|
18520
|
-
width: clippingAncestor.width,
|
|
18521
|
-
height: clippingAncestor.height
|
|
18522
|
-
};
|
|
18523
|
-
}
|
|
18524
|
-
return rectToClientRect(rect);
|
|
18525
|
-
}
|
|
18526
|
-
|
|
18527
|
-
// A "clipping ancestor" is an `overflow` element with the characteristic of
|
|
18528
|
-
// clipping (or hiding) child elements. This returns all clipping ancestors
|
|
18529
|
-
// of the given element up the tree.
|
|
18530
|
-
function getClippingElementAncestors(element, cache) {
|
|
18531
|
-
const cachedResult = cache.get(element);
|
|
18532
|
-
if (cachedResult) {
|
|
18533
|
-
return cachedResult;
|
|
18534
|
-
}
|
|
18535
|
-
let result = getOverflowAncestors(element, [], false).filter(el => isElement(el) && getNodeName(el) !== 'body');
|
|
18536
|
-
let lastKeptComputedStyle = null;
|
|
18537
|
-
const elementIsFixed = getComputedStyle$1(element).position === 'fixed';
|
|
18538
|
-
let currentNode = elementIsFixed ? getParentNode(element) : element;
|
|
18539
|
-
|
|
18540
|
-
// https://developer.mozilla.org/en-US/docs/Web/CSS/Containing_block#identifying_the_containing_block
|
|
18541
|
-
while (isElement(currentNode) && !isLastTraversableNode(currentNode)) {
|
|
18542
|
-
const computedStyle = getComputedStyle$1(currentNode);
|
|
18543
|
-
const currentNodeIsContaining = isContainingBlock(currentNode);
|
|
18544
|
-
// Position of the containing block chain below the current node. A fixed
|
|
18545
|
-
// element whose containing block hasn't been found yet is a fixed chain.
|
|
18546
|
-
const lastPosition = lastKeptComputedStyle ? lastKeptComputedStyle.position : elementIsFixed ? 'fixed' : '';
|
|
18547
|
-
|
|
18548
|
-
// A non-containing ancestor does not clip the element when the chain
|
|
18549
|
-
// below it escapes it: a fixed chain escapes all ancestors up to the
|
|
18550
|
-
// next containing block, an absolute chain escapes static ancestors.
|
|
18551
|
-
const shouldDropCurrentNode = !currentNodeIsContaining && (lastPosition === 'fixed' || lastPosition === 'absolute' && computedStyle.position === 'static');
|
|
18552
|
-
if (shouldDropCurrentNode) {
|
|
18553
|
-
// Drop non-containing blocks.
|
|
18554
|
-
result = result.filter(ancestor => ancestor !== currentNode);
|
|
18555
|
-
} else {
|
|
18556
|
-
// The kept node carries the chain position for the next iteration.
|
|
18557
|
-
lastKeptComputedStyle = computedStyle;
|
|
18558
|
-
}
|
|
18559
|
-
currentNode = getParentNode(currentNode);
|
|
18560
|
-
}
|
|
18561
|
-
cache.set(element, result);
|
|
18562
|
-
return result;
|
|
18563
|
-
}
|
|
18564
|
-
|
|
18565
|
-
// Gets the maximum area that the element is visible in due to any number of
|
|
18566
|
-
// clipping ancestors.
|
|
18567
|
-
function getClippingRect(_ref) {
|
|
18568
|
-
let {
|
|
18569
|
-
element,
|
|
18570
|
-
boundary,
|
|
18571
|
-
rootBoundary,
|
|
18572
|
-
strategy
|
|
18573
|
-
} = _ref;
|
|
18574
|
-
const elementClippingAncestors = boundary === 'clippingAncestors' ? isTopLayer(element) ? [] : getClippingElementAncestors(element, this._c) : [].concat(boundary);
|
|
18575
|
-
const clippingAncestors = [...elementClippingAncestors, rootBoundary];
|
|
18576
|
-
const firstRect = getClientRectFromClippingAncestor(element, clippingAncestors[0], strategy);
|
|
18577
|
-
let top = firstRect.top;
|
|
18578
|
-
let right = firstRect.right;
|
|
18579
|
-
let bottom = firstRect.bottom;
|
|
18580
|
-
let left = firstRect.left;
|
|
18581
|
-
for (let i = 1; i < clippingAncestors.length; i++) {
|
|
18582
|
-
const rect = getClientRectFromClippingAncestor(element, clippingAncestors[i], strategy);
|
|
18583
|
-
top = max$1(rect.top, top);
|
|
18584
|
-
right = min$1(rect.right, right);
|
|
18585
|
-
bottom = min$1(rect.bottom, bottom);
|
|
18586
|
-
left = max$1(rect.left, left);
|
|
18587
|
-
}
|
|
18588
|
-
return {
|
|
18589
|
-
width: right - left,
|
|
18590
|
-
height: bottom - top,
|
|
18591
|
-
x: left,
|
|
18592
|
-
y: top
|
|
18593
|
-
};
|
|
18594
|
-
}
|
|
18595
|
-
|
|
18596
|
-
function getDimensions(element) {
|
|
18597
|
-
const {
|
|
18598
|
-
width,
|
|
18599
|
-
height
|
|
18600
|
-
} = getCssDimensions(element);
|
|
18601
|
-
return {
|
|
18602
|
-
width,
|
|
18603
|
-
height
|
|
18604
|
-
};
|
|
18605
|
-
}
|
|
18606
|
-
|
|
18607
|
-
function getRectRelativeToOffsetParent(element, offsetParent, strategy) {
|
|
18608
|
-
const isOffsetParentAnElement = isHTMLElement(offsetParent);
|
|
18609
|
-
const documentElement = getDocumentElement(offsetParent);
|
|
18610
|
-
const isFixed = strategy === 'fixed';
|
|
18611
|
-
const rect = getBoundingClientRect(element, true, isFixed, offsetParent);
|
|
18612
|
-
let scroll = {
|
|
18613
|
-
scrollLeft: 0,
|
|
18614
|
-
scrollTop: 0
|
|
18615
|
-
};
|
|
18616
|
-
const offsets = createCoords(0);
|
|
18617
|
-
if (isOffsetParentAnElement || !isFixed) {
|
|
18618
|
-
if (getNodeName(offsetParent) !== 'body' || isOverflowElement(documentElement)) {
|
|
18619
|
-
scroll = getNodeScroll(offsetParent);
|
|
18620
|
-
}
|
|
18621
|
-
if (isOffsetParentAnElement) {
|
|
18622
|
-
const offsetRect = getBoundingClientRect(offsetParent, true, isFixed, offsetParent);
|
|
18623
|
-
offsets.x = offsetRect.x + offsetParent.clientLeft;
|
|
18624
|
-
offsets.y = offsetRect.y + offsetParent.clientTop;
|
|
18625
|
-
}
|
|
18626
|
-
}
|
|
18627
|
-
|
|
18628
|
-
// If the <body> scrollbar appears on the left (e.g. RTL systems). Use
|
|
18629
|
-
// Firefox with layout.scrollbar.side = 3 in about:config to test this.
|
|
18630
|
-
if (!isOffsetParentAnElement && documentElement) {
|
|
18631
|
-
offsets.x = getWindowScrollBarX(documentElement);
|
|
18632
|
-
}
|
|
18633
|
-
const htmlOffset = documentElement && !isOffsetParentAnElement && !isFixed ? getHTMLOffset(documentElement, scroll) : createCoords(0);
|
|
18634
|
-
const x = rect.left + scroll.scrollLeft - offsets.x - htmlOffset.x;
|
|
18635
|
-
const y = rect.top + scroll.scrollTop - offsets.y - htmlOffset.y;
|
|
18636
|
-
return {
|
|
18637
|
-
x,
|
|
18638
|
-
y,
|
|
18639
|
-
width: rect.width,
|
|
18640
|
-
height: rect.height
|
|
18641
|
-
};
|
|
18642
|
-
}
|
|
18643
|
-
|
|
18644
|
-
function isStaticPositioned(element) {
|
|
18645
|
-
return getComputedStyle$1(element).position === 'static';
|
|
18646
|
-
}
|
|
18647
|
-
|
|
18648
|
-
function getTrueOffsetParent(element, polyfill) {
|
|
18649
|
-
if (!isHTMLElement(element) || getComputedStyle$1(element).position === 'fixed') {
|
|
18650
|
-
return null;
|
|
18651
|
-
}
|
|
18652
|
-
if (polyfill) {
|
|
18653
|
-
return polyfill(element);
|
|
18654
|
-
}
|
|
18655
|
-
let rawOffsetParent = element.offsetParent;
|
|
18656
|
-
|
|
18657
|
-
// Firefox returns the <html> element as the offsetParent if it's non-static,
|
|
18658
|
-
// while Chrome and Safari return the <body> element. The <body> element must
|
|
18659
|
-
// be used to perform the correct calculations even if the <html> element is
|
|
18660
|
-
// non-static.
|
|
18661
|
-
if (getDocumentElement(element) === rawOffsetParent) {
|
|
18662
|
-
rawOffsetParent = rawOffsetParent.ownerDocument.body;
|
|
18663
|
-
}
|
|
18664
|
-
return rawOffsetParent;
|
|
18665
|
-
}
|
|
18666
|
-
|
|
18667
|
-
// Gets the closest ancestor positioned element. Handles some edge cases,
|
|
18668
|
-
// such as table ancestors and cross browser bugs.
|
|
18669
|
-
function getOffsetParent(element, polyfill) {
|
|
18670
|
-
const win = getWindow(element);
|
|
18671
|
-
if (isTopLayer(element)) {
|
|
18672
|
-
return win;
|
|
18673
|
-
}
|
|
18674
|
-
if (!isHTMLElement(element)) {
|
|
18675
|
-
let svgOffsetParent = getParentNode(element);
|
|
18676
|
-
while (svgOffsetParent && !isLastTraversableNode(svgOffsetParent)) {
|
|
18677
|
-
if (isElement(svgOffsetParent) && !isStaticPositioned(svgOffsetParent)) {
|
|
18678
|
-
return svgOffsetParent;
|
|
18679
|
-
}
|
|
18680
|
-
svgOffsetParent = getParentNode(svgOffsetParent);
|
|
18681
|
-
}
|
|
18682
|
-
return win;
|
|
18683
|
-
}
|
|
18684
|
-
let offsetParent = getTrueOffsetParent(element, polyfill);
|
|
18685
|
-
while (offsetParent && isTableElement(offsetParent) && isStaticPositioned(offsetParent)) {
|
|
18686
|
-
offsetParent = getTrueOffsetParent(offsetParent, polyfill);
|
|
18687
|
-
}
|
|
18688
|
-
if (offsetParent && isLastTraversableNode(offsetParent) && isStaticPositioned(offsetParent) && !isContainingBlock(offsetParent)) {
|
|
18689
|
-
return win;
|
|
18690
|
-
}
|
|
18691
|
-
return offsetParent || getContainingBlock(element) || win;
|
|
18692
|
-
}
|
|
18693
|
-
|
|
18694
|
-
const getElementRects = async function (data) {
|
|
18695
|
-
const getOffsetParentFn = this.getOffsetParent || getOffsetParent;
|
|
18696
|
-
const getDimensionsFn = this.getDimensions;
|
|
18697
|
-
const floatingDimensions = await getDimensionsFn(data.floating);
|
|
18698
|
-
return {
|
|
18699
|
-
reference: getRectRelativeToOffsetParent(data.reference, await getOffsetParentFn(data.floating), data.strategy),
|
|
18700
|
-
floating: {
|
|
18701
|
-
x: 0,
|
|
18702
|
-
y: 0,
|
|
18703
|
-
width: floatingDimensions.width,
|
|
18704
|
-
height: floatingDimensions.height
|
|
18705
|
-
}
|
|
18706
|
-
};
|
|
18707
|
-
};
|
|
18708
|
-
|
|
18709
|
-
function isRTL(element) {
|
|
18710
|
-
return getComputedStyle$1(element).direction === 'rtl';
|
|
18711
|
-
}
|
|
18712
|
-
|
|
18713
|
-
const platform = {
|
|
18714
|
-
convertOffsetParentRelativeRectToViewportRelativeRect,
|
|
18715
|
-
getDocumentElement,
|
|
18716
|
-
getClippingRect,
|
|
18717
|
-
getOffsetParent,
|
|
18718
|
-
getElementRects,
|
|
18719
|
-
getClientRects,
|
|
18720
|
-
getDimensions,
|
|
18721
|
-
getScale,
|
|
18722
|
-
isElement,
|
|
18723
|
-
isRTL
|
|
18724
|
-
};
|
|
18725
|
-
|
|
18726
|
-
function rectsAreEqual(a, b) {
|
|
18727
|
-
return a.x === b.x && a.y === b.y && a.width === b.width && a.height === b.height;
|
|
18728
|
-
}
|
|
18729
|
-
|
|
18730
|
-
// https://samthor.au/2021/observing-dom/
|
|
18731
|
-
function observeMove(element, onMove, ancestorResize) {
|
|
18732
|
-
let io = null;
|
|
18733
|
-
let timeoutId;
|
|
18734
|
-
const root = getDocumentElement(element);
|
|
18735
|
-
function cleanup() {
|
|
18736
|
-
var _io;
|
|
18737
|
-
clearTimeout(timeoutId);
|
|
18738
|
-
(_io = io) == null || _io.disconnect();
|
|
18739
|
-
io = null;
|
|
18740
|
-
}
|
|
18741
|
-
function refresh(skip, threshold) {
|
|
18742
|
-
if (skip === void 0) {
|
|
18743
|
-
skip = false;
|
|
18744
|
-
}
|
|
18745
|
-
if (threshold === void 0) {
|
|
18746
|
-
threshold = 1;
|
|
18747
|
-
}
|
|
18748
|
-
cleanup();
|
|
18749
|
-
const elementRectForRootMargin = element.getBoundingClientRect();
|
|
18750
|
-
const {
|
|
18751
|
-
left,
|
|
18752
|
-
top,
|
|
18753
|
-
width,
|
|
18754
|
-
height
|
|
18755
|
-
} = elementRectForRootMargin;
|
|
18756
|
-
if (!skip) {
|
|
18757
|
-
onMove();
|
|
18758
|
-
}
|
|
18759
|
-
if (!width || !height) {
|
|
18760
|
-
return;
|
|
18761
|
-
}
|
|
18762
|
-
const insetTop = floor(top);
|
|
18763
|
-
const insetRight = floor(root.clientWidth - (left + width));
|
|
18764
|
-
const insetBottom = floor(root.clientHeight - (top + height));
|
|
18765
|
-
const insetLeft = floor(left);
|
|
18766
|
-
const rootMargin = -insetTop + "px " + -insetRight + "px " + -insetBottom + "px " + -insetLeft + "px";
|
|
18767
|
-
const options = {
|
|
18768
|
-
rootMargin,
|
|
18769
|
-
threshold: max$1(0, min$1(1, threshold)) || 1
|
|
18770
|
-
};
|
|
18771
|
-
let isFirstUpdate = true;
|
|
18772
|
-
function handleObserve(entries) {
|
|
18773
|
-
const ratio = entries[0].intersectionRatio;
|
|
18774
|
-
|
|
18775
|
-
// The entry is a snapshot, so the reference may have moved since the
|
|
18776
|
-
// intersection was computed (under performance constraints, or between
|
|
18777
|
-
// consecutive frames of a multi-frame layout shift). The reported ratio
|
|
18778
|
-
// and the observed area are stale in that case and cannot be trusted to
|
|
18779
|
-
// detect subsequent movement, so refresh regardless of the ratio.
|
|
18780
|
-
if (!rectsAreEqual(elementRectForRootMargin, element.getBoundingClientRect())) {
|
|
18781
|
-
return refresh();
|
|
18782
|
-
}
|
|
18783
|
-
if (ratio !== threshold) {
|
|
18784
|
-
if (!isFirstUpdate) {
|
|
18785
|
-
return refresh();
|
|
18786
|
-
}
|
|
18787
|
-
if (!ratio) {
|
|
18788
|
-
// If the reference is clipped in place, the ratio is 0. Throttle
|
|
18789
|
-
// the refresh to prevent an infinite loop of updates.
|
|
18790
|
-
timeoutId = setTimeout(() => {
|
|
18791
|
-
refresh(false, 1e-7);
|
|
18792
|
-
}, 1000);
|
|
18793
|
-
} else {
|
|
18794
|
-
refresh(false, ratio);
|
|
18795
|
-
}
|
|
18796
|
-
}
|
|
18797
|
-
isFirstUpdate = false;
|
|
18798
|
-
}
|
|
18799
|
-
|
|
18800
|
-
// Older browsers don't support a `document` as the root and will throw an
|
|
18801
|
-
// error.
|
|
18802
|
-
try {
|
|
18803
|
-
io = new IntersectionObserver(handleObserve, {
|
|
18804
|
-
...options,
|
|
18805
|
-
// Handle <iframe>s
|
|
18806
|
-
root: root.ownerDocument
|
|
18807
|
-
});
|
|
18808
|
-
} catch (_e) {
|
|
18809
|
-
io = new IntersectionObserver(handleObserve, options);
|
|
18810
|
-
}
|
|
18811
|
-
io.observe(element);
|
|
18812
|
-
}
|
|
18813
|
-
const win = getWindow(element);
|
|
18814
|
-
// The window is a resize ancestor, so when `ancestorResize` is enabled its
|
|
18815
|
-
// listener already runs the update on resize. Here we only need to rebuild
|
|
18816
|
-
// the `IntersectionObserver` for the new root size, skipping a redundant
|
|
18817
|
-
// update. When `ancestorResize` is disabled, this becomes the sole update.
|
|
18818
|
-
const handleResize = () => refresh(ancestorResize);
|
|
18819
|
-
win.addEventListener('resize', handleResize);
|
|
18820
|
-
refresh(true);
|
|
18821
|
-
return () => {
|
|
18822
|
-
win.removeEventListener('resize', handleResize);
|
|
18823
|
-
cleanup();
|
|
18824
|
-
};
|
|
18825
|
-
}
|
|
18826
|
-
|
|
18827
|
-
/**
|
|
18828
|
-
* Automatically updates the position of the floating element when necessary.
|
|
18829
|
-
* Should only be called when the floating element is mounted on the DOM or
|
|
18830
|
-
* visible on the screen.
|
|
18831
|
-
* @returns cleanup function that should be invoked when the floating element is
|
|
18832
|
-
* removed from the DOM or hidden from the screen.
|
|
18833
|
-
* @see https://floating-ui.com/docs/autoUpdate
|
|
18834
|
-
*/
|
|
18835
|
-
function autoUpdate(reference, floating, update, options) {
|
|
18836
|
-
if (options === void 0) {
|
|
18837
|
-
options = {};
|
|
18838
|
-
}
|
|
18839
|
-
const {
|
|
18840
|
-
ancestorScroll = true,
|
|
18841
|
-
ancestorResize = true,
|
|
18842
|
-
elementResize = typeof ResizeObserver === 'function',
|
|
18843
|
-
layoutShift = typeof IntersectionObserver === 'function',
|
|
18844
|
-
animationFrame = false
|
|
18845
|
-
} = options;
|
|
18846
|
-
const referenceEl = unwrapElement(reference);
|
|
18847
|
-
const ancestors = ancestorScroll || ancestorResize ? [...(referenceEl ? getOverflowAncestors(referenceEl) : []), ...(floating ? getOverflowAncestors(floating) : [])] : [];
|
|
18848
|
-
ancestors.forEach(ancestor => {
|
|
18849
|
-
ancestorScroll && ancestor.addEventListener('scroll', update);
|
|
18850
|
-
ancestorResize && ancestor.addEventListener('resize', update);
|
|
18851
|
-
});
|
|
18852
|
-
const cleanupIo = referenceEl && layoutShift ? observeMove(referenceEl, update, ancestorResize) : null;
|
|
18853
|
-
let reobserveFrame = -1;
|
|
18854
|
-
let resizeObserver = null;
|
|
18855
|
-
if (elementResize) {
|
|
18856
|
-
resizeObserver = new ResizeObserver(_ref => {
|
|
18857
|
-
let [firstEntry] = _ref;
|
|
18858
|
-
if (firstEntry && firstEntry.target === referenceEl && resizeObserver && floating) {
|
|
18859
|
-
// Prevent update loops when using the `size` middleware.
|
|
18860
|
-
// https://github.com/floating-ui/floating-ui/issues/1740
|
|
18861
|
-
resizeObserver.unobserve(floating);
|
|
18862
|
-
cancelAnimationFrame(reobserveFrame);
|
|
18863
|
-
reobserveFrame = requestAnimationFrame(() => {
|
|
18864
|
-
var _resizeObserver;
|
|
18865
|
-
(_resizeObserver = resizeObserver) == null || _resizeObserver.observe(floating);
|
|
18866
|
-
});
|
|
18867
|
-
}
|
|
18868
|
-
update();
|
|
18869
|
-
});
|
|
18870
|
-
if (referenceEl && !animationFrame) {
|
|
18871
|
-
resizeObserver.observe(referenceEl);
|
|
18872
|
-
}
|
|
18873
|
-
if (floating) {
|
|
18874
|
-
resizeObserver.observe(floating);
|
|
18875
|
-
}
|
|
18876
|
-
}
|
|
18877
|
-
let frameId;
|
|
18878
|
-
let prevRefRect = animationFrame ? getBoundingClientRect(reference) : null;
|
|
18879
|
-
if (animationFrame) {
|
|
18880
|
-
frameLoop();
|
|
18881
|
-
}
|
|
18882
|
-
function frameLoop() {
|
|
18883
|
-
const nextRefRect = getBoundingClientRect(reference);
|
|
18884
|
-
if (prevRefRect && !rectsAreEqual(prevRefRect, nextRefRect)) {
|
|
18885
|
-
update();
|
|
18886
|
-
}
|
|
18887
|
-
prevRefRect = nextRefRect;
|
|
18888
|
-
frameId = requestAnimationFrame(frameLoop);
|
|
18889
|
-
}
|
|
18890
|
-
update();
|
|
18891
|
-
return () => {
|
|
18892
|
-
var _resizeObserver2;
|
|
18893
|
-
ancestors.forEach(ancestor => {
|
|
18894
|
-
ancestorScroll && ancestor.removeEventListener('scroll', update);
|
|
18895
|
-
ancestorResize && ancestor.removeEventListener('resize', update);
|
|
18896
|
-
});
|
|
18897
|
-
cleanupIo == null || cleanupIo();
|
|
18898
|
-
(_resizeObserver2 = resizeObserver) == null || _resizeObserver2.disconnect();
|
|
18899
|
-
resizeObserver = null;
|
|
18900
|
-
if (animationFrame) {
|
|
18901
|
-
cancelAnimationFrame(frameId);
|
|
18902
|
-
}
|
|
18903
|
-
};
|
|
18904
|
-
}
|
|
18905
|
-
|
|
18906
|
-
/**
|
|
18907
|
-
* Modifies the placement by translating the floating element along the
|
|
18908
|
-
* specified axes.
|
|
18909
|
-
* A number (shorthand for `mainAxis` or distance), or an axes configuration
|
|
18910
|
-
* object may be passed.
|
|
18911
|
-
* @see https://floating-ui.com/docs/offset
|
|
18912
|
-
*/
|
|
18913
|
-
const offset$1 = offset$3;
|
|
18914
|
-
|
|
18915
|
-
/**
|
|
18916
|
-
* Optimizes the visibility of the floating element by flipping the `placement`
|
|
18917
|
-
* in order to keep it in view when the preferred placement(s) will overflow the
|
|
18918
|
-
* clipping boundary. Alternative to `autoPlacement`.
|
|
18919
|
-
* @see https://floating-ui.com/docs/flip
|
|
18920
|
-
*/
|
|
18921
|
-
const flip$1 = flip$3;
|
|
18922
|
-
|
|
18923
|
-
/**
|
|
18924
|
-
* Provides data to position an inner element of the floating element so that it
|
|
18925
|
-
* appears centered to the reference element.
|
|
18926
|
-
* @see https://floating-ui.com/docs/arrow
|
|
18927
|
-
*/
|
|
18928
|
-
const arrow$2 = arrow$3;
|
|
18929
|
-
|
|
18930
|
-
/**
|
|
18931
|
-
* Computes the `x` and `y` coordinates that will place the floating element
|
|
18932
|
-
* next to a given reference element.
|
|
18933
|
-
*/
|
|
18934
|
-
const computePosition = (reference, floating, options) => {
|
|
18935
|
-
// This caches the expensive `getClippingElementAncestors` function so that
|
|
18936
|
-
// multiple lifecycle resets re-use the same result. It only lives for a
|
|
18937
|
-
// single call. If other functions become expensive, we can add them as well.
|
|
18938
|
-
const cache = new Map();
|
|
18939
|
-
const mergedOptions = options != null ? options : {};
|
|
18940
|
-
const platformWithCache = {
|
|
18941
|
-
...platform,
|
|
18942
|
-
...mergedOptions.platform,
|
|
18943
|
-
_c: cache
|
|
18944
|
-
};
|
|
18945
|
-
return computePosition$2(reference, floating, {
|
|
18946
|
-
...mergedOptions,
|
|
18947
|
-
platform: platformWithCache
|
|
18948
|
-
});
|
|
18949
|
-
};
|
|
18950
|
-
|
|
18951
18202
|
var isClient = typeof document !== 'undefined';
|
|
18952
18203
|
|
|
18953
18204
|
var noop = function noop() {};
|
|
@@ -24953,7 +24204,7 @@ const DateTimePickerInput = /*#__PURE__*/React__namespace.default.forwardRef(fun
|
|
|
24953
24204
|
var css_248z = ".react-datepicker__year-read-view--down-arrow,.react-datepicker__month-read-view--down-arrow,.react-datepicker__month-year-read-view--down-arrow,.react-datepicker__navigation-icon::before{border-color:#ccc;border-style:solid;border-width:3px 3px 0 0;content:\"\";display:block;height:9px;position:absolute;top:6px;width:9px}.react-datepicker-wrapper{display:inline-block;padding:0;border:0}.react-datepicker{font-family:\"Helvetica Neue\",helvetica,arial,sans-serif;font-size:.8rem;background-color:#fff;color:#000;border:1px solid #aeaeae;border-radius:.3rem;display:inline-block;position:relative;line-height:initial}.react-datepicker--time-only .react-datepicker__time-container{border-left:0}.react-datepicker--time-only .react-datepicker__time,.react-datepicker--time-only .react-datepicker__time-box{border-bottom-left-radius:.3rem;border-bottom-right-radius:.3rem}.react-datepicker-popper{z-index:1;line-height:0}.react-datepicker-popper .react-datepicker__triangle{stroke:#aeaeae}.react-datepicker-popper[data-placement^=bottom] .react-datepicker__triangle{fill:#f0f0f0;color:#f0f0f0}.react-datepicker-popper[data-placement^=top] .react-datepicker__triangle{fill:#fff;color:#fff}.react-datepicker__header{text-align:center;background-color:#f0f0f0;border-bottom:1px solid #aeaeae;border-top-left-radius:.3rem;padding:8px 0;position:relative}.react-datepicker__header--time{padding-bottom:8px;padding-left:5px;padding-right:5px}.react-datepicker__header--time:not(.react-datepicker__header--time--only){border-top-left-radius:0}.react-datepicker__header:not(.react-datepicker__header--has-time-select){border-top-right-radius:.3rem}.react-datepicker__year-dropdown-container--select,.react-datepicker__month-dropdown-container--select,.react-datepicker__month-year-dropdown-container--select,.react-datepicker__year-dropdown-container--scroll,.react-datepicker__month-dropdown-container--scroll,.react-datepicker__month-year-dropdown-container--scroll{display:inline-block;margin:0 15px}.react-datepicker__current-month,.react-datepicker-time__header,.react-datepicker-year-header{margin-top:0;color:#000;font-weight:bold;font-size:.944rem}h2.react-datepicker__current-month{padding:0;margin:0}.react-datepicker-time__header{text-overflow:ellipsis;white-space:nowrap;overflow:hidden}.react-datepicker__navigation{align-items:center;background:none;display:flex;justify-content:center;text-align:center;cursor:pointer;position:absolute;top:2px;padding:0;border:none;z-index:1;height:32px;width:32px;text-indent:-999em;overflow:hidden}.react-datepicker__navigation--previous{left:2px}.react-datepicker__navigation--next{right:2px}.react-datepicker__navigation--next--with-time:not(.react-datepicker__navigation--next--with-today-button){right:85px}.react-datepicker__navigation--years{position:relative;top:0;display:block;margin-left:auto;margin-right:auto}.react-datepicker__navigation--years-previous{top:4px}.react-datepicker__navigation--years-upcoming{top:-4px}.react-datepicker__navigation:hover *::before{border-color:hsl(0,0%,65%)}.react-datepicker__navigation-icon{position:relative;top:-1px;font-size:20px;width:0}.react-datepicker__navigation-icon--next{left:-2px}.react-datepicker__navigation-icon--next::before{transform:rotate(45deg);left:-7px}.react-datepicker__navigation-icon--previous{right:-2px}.react-datepicker__navigation-icon--previous::before{transform:rotate(225deg);right:-7px}.react-datepicker__month-container{float:left}.react-datepicker__year{margin:.4rem;text-align:center}.react-datepicker__year-wrapper{display:flex;flex-wrap:wrap;max-width:180px}.react-datepicker__year .react-datepicker__year-text{display:inline-block;width:4rem;margin:2px}.react-datepicker__month{margin:.4rem;text-align:center}.react-datepicker__month .react-datepicker__month-text,.react-datepicker__month .react-datepicker__quarter-text{display:inline-block;width:4rem;margin:2px}.react-datepicker__input-time-container{clear:both;width:100%;float:left;margin:5px 0 10px 15px;text-align:left}.react-datepicker__input-time-container .react-datepicker-time__caption{display:inline-block}.react-datepicker__input-time-container .react-datepicker-time__input-container{display:inline-block}.react-datepicker__input-time-container .react-datepicker-time__input-container .react-datepicker-time__input{display:inline-block;margin-left:10px}.react-datepicker__input-time-container .react-datepicker-time__input-container .react-datepicker-time__input input{width:auto}.react-datepicker__input-time-container .react-datepicker-time__input-container .react-datepicker-time__input input[type=time]::-webkit-inner-spin-button,.react-datepicker__input-time-container .react-datepicker-time__input-container .react-datepicker-time__input input[type=time]::-webkit-outer-spin-button{-webkit-appearance:none;margin:0}.react-datepicker__input-time-container .react-datepicker-time__input-container .react-datepicker-time__input input[type=time]{-moz-appearance:textfield}.react-datepicker__input-time-container .react-datepicker-time__input-container .react-datepicker-time__delimiter{margin-left:5px;display:inline-block}.react-datepicker__time-container{float:right;border-left:1px solid #aeaeae;width:85px}.react-datepicker__time-container--with-today-button{display:inline;border:1px solid #aeaeae;border-radius:.3rem;position:absolute;right:-87px;top:0}.react-datepicker__time-container .react-datepicker__time{position:relative;background:#fff;border-bottom-right-radius:.3rem}.react-datepicker__time-container .react-datepicker__time .react-datepicker__time-box{width:85px;overflow-x:hidden;margin:0 auto;text-align:center;border-bottom-right-radius:.3rem}.react-datepicker__time-container .react-datepicker__time .react-datepicker__time-box ul.react-datepicker__time-list{list-style:none;margin:0;height:calc(195px + 1.7rem/2);overflow-y:scroll;padding-right:0;padding-left:0;width:100%;box-sizing:content-box}.react-datepicker__time-container .react-datepicker__time .react-datepicker__time-box ul.react-datepicker__time-list li.react-datepicker__time-list-item{height:30px;padding:5px 10px;white-space:nowrap}.react-datepicker__time-container .react-datepicker__time .react-datepicker__time-box ul.react-datepicker__time-list li.react-datepicker__time-list-item:hover{cursor:pointer;background-color:#f0f0f0}.react-datepicker__time-container .react-datepicker__time .react-datepicker__time-box ul.react-datepicker__time-list li.react-datepicker__time-list-item--selected{background-color:#216ba5;color:#fff;font-weight:bold}.react-datepicker__time-container .react-datepicker__time .react-datepicker__time-box ul.react-datepicker__time-list li.react-datepicker__time-list-item--selected:hover{background-color:#216ba5}.react-datepicker__time-container .react-datepicker__time .react-datepicker__time-box ul.react-datepicker__time-list li.react-datepicker__time-list-item--disabled{color:#ccc}.react-datepicker__time-container .react-datepicker__time .react-datepicker__time-box ul.react-datepicker__time-list li.react-datepicker__time-list-item--disabled:hover{cursor:default;background-color:rgba(0,0,0,0)}.react-datepicker__week-number{color:#ccc;display:inline-block;width:1.7rem;line-height:1.7rem;text-align:center;margin:.166rem}.react-datepicker__week-number.react-datepicker__week-number--clickable{cursor:pointer}.react-datepicker__week-number.react-datepicker__week-number--clickable:not(.react-datepicker__week-number--selected,.react-datepicker__week-number--keyboard-selected):hover{border-radius:.3rem;background-color:#f0f0f0}.react-datepicker__week-number--selected{border-radius:.3rem;background-color:#216ba5;color:#fff}.react-datepicker__week-number--selected:hover{background-color:rgb(28.75,93.2196969697,143.75)}.react-datepicker__week-number--keyboard-selected{border-radius:.3rem;background-color:rgb(41.5,134.5606060606,207.5);color:#fff}.react-datepicker__week-number--keyboard-selected:hover{background-color:rgb(28.75,93.2196969697,143.75)}.react-datepicker__day-names{white-space:nowrap;margin-bottom:-8px}.react-datepicker__week{white-space:nowrap}.react-datepicker__day-name,.react-datepicker__day,.react-datepicker__time-name{color:#000;display:inline-block;width:1.7rem;line-height:1.7rem;text-align:center;margin:.166rem}.react-datepicker__day,.react-datepicker__month-text,.react-datepicker__quarter-text,.react-datepicker__year-text{cursor:pointer}.react-datepicker__day:not([aria-disabled=true]):hover,.react-datepicker__month-text:not([aria-disabled=true]):hover,.react-datepicker__quarter-text:not([aria-disabled=true]):hover,.react-datepicker__year-text:not([aria-disabled=true]):hover{border-radius:.3rem;background-color:#f0f0f0}.react-datepicker__day--today,.react-datepicker__month-text--today,.react-datepicker__quarter-text--today,.react-datepicker__year-text--today{font-weight:bold}.react-datepicker__day--highlighted,.react-datepicker__month-text--highlighted,.react-datepicker__quarter-text--highlighted,.react-datepicker__year-text--highlighted{border-radius:.3rem;background-color:#3dcc4a;color:#fff}.react-datepicker__day--highlighted:not([aria-disabled=true]):hover,.react-datepicker__month-text--highlighted:not([aria-disabled=true]):hover,.react-datepicker__quarter-text--highlighted:not([aria-disabled=true]):hover,.react-datepicker__year-text--highlighted:not([aria-disabled=true]):hover{background-color:rgb(49.8551020408,189.6448979592,62.5632653061)}.react-datepicker__day--highlighted-custom-1,.react-datepicker__month-text--highlighted-custom-1,.react-datepicker__quarter-text--highlighted-custom-1,.react-datepicker__year-text--highlighted-custom-1{color:#f0f}.react-datepicker__day--highlighted-custom-2,.react-datepicker__month-text--highlighted-custom-2,.react-datepicker__quarter-text--highlighted-custom-2,.react-datepicker__year-text--highlighted-custom-2{color:green}.react-datepicker__day--holidays,.react-datepicker__month-text--holidays,.react-datepicker__quarter-text--holidays,.react-datepicker__year-text--holidays{position:relative;border-radius:.3rem;background-color:#ff6803;color:#fff}.react-datepicker__day--holidays .overlay,.react-datepicker__month-text--holidays .overlay,.react-datepicker__quarter-text--holidays .overlay,.react-datepicker__year-text--holidays .overlay{position:absolute;bottom:100%;left:50%;transform:translateX(-50%);background-color:#333;color:#fff;padding:4px;border-radius:4px;white-space:nowrap;visibility:hidden;opacity:0;transition:visibility 0s,opacity .3s ease-in-out}.react-datepicker__day--holidays:not([aria-disabled=true]):hover,.react-datepicker__month-text--holidays:not([aria-disabled=true]):hover,.react-datepicker__quarter-text--holidays:not([aria-disabled=true]):hover,.react-datepicker__year-text--holidays:not([aria-disabled=true]):hover{background-color:rgb(207,82.9642857143,0)}.react-datepicker__day--holidays:hover .overlay,.react-datepicker__month-text--holidays:hover .overlay,.react-datepicker__quarter-text--holidays:hover .overlay,.react-datepicker__year-text--holidays:hover .overlay{visibility:visible;opacity:1}.react-datepicker__day--selected,.react-datepicker__day--in-selecting-range,.react-datepicker__day--in-range,.react-datepicker__month-text--selected,.react-datepicker__month-text--in-selecting-range,.react-datepicker__month-text--in-range,.react-datepicker__quarter-text--selected,.react-datepicker__quarter-text--in-selecting-range,.react-datepicker__quarter-text--in-range,.react-datepicker__year-text--selected,.react-datepicker__year-text--in-selecting-range,.react-datepicker__year-text--in-range{border-radius:.3rem;background-color:#216ba5;color:#fff}.react-datepicker__day--selected:not([aria-disabled=true]):hover,.react-datepicker__day--in-selecting-range:not([aria-disabled=true]):hover,.react-datepicker__day--in-range:not([aria-disabled=true]):hover,.react-datepicker__month-text--selected:not([aria-disabled=true]):hover,.react-datepicker__month-text--in-selecting-range:not([aria-disabled=true]):hover,.react-datepicker__month-text--in-range:not([aria-disabled=true]):hover,.react-datepicker__quarter-text--selected:not([aria-disabled=true]):hover,.react-datepicker__quarter-text--in-selecting-range:not([aria-disabled=true]):hover,.react-datepicker__quarter-text--in-range:not([aria-disabled=true]):hover,.react-datepicker__year-text--selected:not([aria-disabled=true]):hover,.react-datepicker__year-text--in-selecting-range:not([aria-disabled=true]):hover,.react-datepicker__year-text--in-range:not([aria-disabled=true]):hover{background-color:rgb(28.75,93.2196969697,143.75)}.react-datepicker__day--keyboard-selected,.react-datepicker__month-text--keyboard-selected,.react-datepicker__quarter-text--keyboard-selected,.react-datepicker__year-text--keyboard-selected{border-radius:.3rem;background-color:rgb(186.25,217.0833333333,241.25);color:#000}.react-datepicker__day--keyboard-selected:not([aria-disabled=true]):hover,.react-datepicker__month-text--keyboard-selected:not([aria-disabled=true]):hover,.react-datepicker__quarter-text--keyboard-selected:not([aria-disabled=true]):hover,.react-datepicker__year-text--keyboard-selected:not([aria-disabled=true]):hover{background-color:rgb(28.75,93.2196969697,143.75)}.react-datepicker__day--in-selecting-range:not(.react-datepicker__day--in-range,.react-datepicker__month-text--in-range,.react-datepicker__quarter-text--in-range,.react-datepicker__year-text--in-range),.react-datepicker__month-text--in-selecting-range:not(.react-datepicker__day--in-range,.react-datepicker__month-text--in-range,.react-datepicker__quarter-text--in-range,.react-datepicker__year-text--in-range),.react-datepicker__quarter-text--in-selecting-range:not(.react-datepicker__day--in-range,.react-datepicker__month-text--in-range,.react-datepicker__quarter-text--in-range,.react-datepicker__year-text--in-range),.react-datepicker__year-text--in-selecting-range:not(.react-datepicker__day--in-range,.react-datepicker__month-text--in-range,.react-datepicker__quarter-text--in-range,.react-datepicker__year-text--in-range){background-color:rgba(33,107,165,.5)}.react-datepicker__month--selecting-range .react-datepicker__day--in-range:not(.react-datepicker__day--in-selecting-range,.react-datepicker__month-text--in-selecting-range,.react-datepicker__quarter-text--in-selecting-range,.react-datepicker__year-text--in-selecting-range),.react-datepicker__year--selecting-range .react-datepicker__day--in-range:not(.react-datepicker__day--in-selecting-range,.react-datepicker__month-text--in-selecting-range,.react-datepicker__quarter-text--in-selecting-range,.react-datepicker__year-text--in-selecting-range),.react-datepicker__month--selecting-range .react-datepicker__month-text--in-range:not(.react-datepicker__day--in-selecting-range,.react-datepicker__month-text--in-selecting-range,.react-datepicker__quarter-text--in-selecting-range,.react-datepicker__year-text--in-selecting-range),.react-datepicker__year--selecting-range .react-datepicker__month-text--in-range:not(.react-datepicker__day--in-selecting-range,.react-datepicker__month-text--in-selecting-range,.react-datepicker__quarter-text--in-selecting-range,.react-datepicker__year-text--in-selecting-range),.react-datepicker__month--selecting-range .react-datepicker__quarter-text--in-range:not(.react-datepicker__day--in-selecting-range,.react-datepicker__month-text--in-selecting-range,.react-datepicker__quarter-text--in-selecting-range,.react-datepicker__year-text--in-selecting-range),.react-datepicker__year--selecting-range .react-datepicker__quarter-text--in-range:not(.react-datepicker__day--in-selecting-range,.react-datepicker__month-text--in-selecting-range,.react-datepicker__quarter-text--in-selecting-range,.react-datepicker__year-text--in-selecting-range),.react-datepicker__month--selecting-range .react-datepicker__year-text--in-range:not(.react-datepicker__day--in-selecting-range,.react-datepicker__month-text--in-selecting-range,.react-datepicker__quarter-text--in-selecting-range,.react-datepicker__year-text--in-selecting-range),.react-datepicker__year--selecting-range .react-datepicker__year-text--in-range:not(.react-datepicker__day--in-selecting-range,.react-datepicker__month-text--in-selecting-range,.react-datepicker__quarter-text--in-selecting-range,.react-datepicker__year-text--in-selecting-range){background-color:#f0f0f0;color:#000}.react-datepicker__day--disabled,.react-datepicker__month-text--disabled,.react-datepicker__quarter-text--disabled,.react-datepicker__year-text--disabled{cursor:default;color:#ccc}.react-datepicker__day--disabled .overlay,.react-datepicker__month-text--disabled .overlay,.react-datepicker__quarter-text--disabled .overlay,.react-datepicker__year-text--disabled .overlay{position:absolute;bottom:70%;left:50%;transform:translateX(-50%);background-color:#333;color:#fff;padding:4px;border-radius:4px;white-space:nowrap;visibility:hidden;opacity:0;transition:visibility 0s,opacity .3s ease-in-out}.react-datepicker__input-container{position:relative;display:inline-block;width:100%}.react-datepicker__input-container .react-datepicker__calendar-icon{position:absolute;padding:.5rem;box-sizing:content-box}.react-datepicker__view-calendar-icon input{padding:6px 10px 5px 25px}.react-datepicker__year-read-view,.react-datepicker__month-read-view,.react-datepicker__month-year-read-view{border:1px solid rgba(0,0,0,0);border-radius:.3rem;position:relative}.react-datepicker__year-read-view:hover,.react-datepicker__month-read-view:hover,.react-datepicker__month-year-read-view:hover{cursor:pointer}.react-datepicker__year-read-view:hover .react-datepicker__year-read-view--down-arrow,.react-datepicker__year-read-view:hover .react-datepicker__month-read-view--down-arrow,.react-datepicker__month-read-view:hover .react-datepicker__year-read-view--down-arrow,.react-datepicker__month-read-view:hover .react-datepicker__month-read-view--down-arrow,.react-datepicker__month-year-read-view:hover .react-datepicker__year-read-view--down-arrow,.react-datepicker__month-year-read-view:hover .react-datepicker__month-read-view--down-arrow{border-top-color:hsl(0,0%,70%)}.react-datepicker__year-read-view--down-arrow,.react-datepicker__month-read-view--down-arrow,.react-datepicker__month-year-read-view--down-arrow{transform:rotate(135deg);right:-16px;top:0}.react-datepicker__year-dropdown,.react-datepicker__month-dropdown,.react-datepicker__month-year-dropdown{background-color:#f0f0f0;position:absolute;width:50%;left:25%;top:30px;z-index:1;text-align:center;border-radius:.3rem;border:1px solid #aeaeae}.react-datepicker__year-dropdown:hover,.react-datepicker__month-dropdown:hover,.react-datepicker__month-year-dropdown:hover{cursor:pointer}.react-datepicker__year-dropdown--scrollable,.react-datepicker__month-dropdown--scrollable,.react-datepicker__month-year-dropdown--scrollable{height:150px;overflow-y:scroll}.react-datepicker__year-option,.react-datepicker__month-option,.react-datepicker__month-year-option{line-height:20px;width:100%;display:block;margin-left:auto;margin-right:auto}.react-datepicker__year-option:first-of-type,.react-datepicker__month-option:first-of-type,.react-datepicker__month-year-option:first-of-type{border-top-left-radius:.3rem;border-top-right-radius:.3rem}.react-datepicker__year-option:last-of-type,.react-datepicker__month-option:last-of-type,.react-datepicker__month-year-option:last-of-type{-webkit-user-select:none;-moz-user-select:none;-ms-user-select:none;user-select:none;border-bottom-left-radius:.3rem;border-bottom-right-radius:.3rem}.react-datepicker__year-option:hover,.react-datepicker__month-option:hover,.react-datepicker__month-year-option:hover{background-color:#ccc}.react-datepicker__year-option:hover .react-datepicker__navigation--years-upcoming,.react-datepicker__month-option:hover .react-datepicker__navigation--years-upcoming,.react-datepicker__month-year-option:hover .react-datepicker__navigation--years-upcoming{border-bottom-color:hsl(0,0%,70%)}.react-datepicker__year-option:hover .react-datepicker__navigation--years-previous,.react-datepicker__month-option:hover .react-datepicker__navigation--years-previous,.react-datepicker__month-year-option:hover .react-datepicker__navigation--years-previous{border-top-color:hsl(0,0%,70%)}.react-datepicker__year-option--selected,.react-datepicker__month-option--selected,.react-datepicker__month-year-option--selected{position:absolute;left:15px}.react-datepicker__close-icon{cursor:pointer;background-color:rgba(0,0,0,0);border:0;outline:0;padding:0 6px 0 0;position:absolute;top:0;right:0;height:100%;display:table-cell;vertical-align:middle}.react-datepicker__close-icon::after{cursor:pointer;background-color:#216ba5;color:#fff;border-radius:50%;height:16px;width:16px;padding:2px;font-size:12px;line-height:1;text-align:center;display:table-cell;vertical-align:middle;content:\"×\"}.react-datepicker__close-icon--disabled{cursor:default}.react-datepicker__close-icon--disabled::after{cursor:default;background-color:#ccc}.react-datepicker__today-button{background:#f0f0f0;border-top:1px solid #aeaeae;cursor:pointer;text-align:center;font-weight:bold;padding:5px 0;clear:left}.react-datepicker__portal{position:fixed;width:100vw;height:100vh;background-color:rgba(0,0,0,.8);left:0;top:0;justify-content:center;align-items:center;display:flex;z-index:2147483647}.react-datepicker__portal .react-datepicker__day-name,.react-datepicker__portal .react-datepicker__day,.react-datepicker__portal .react-datepicker__time-name{width:3rem;line-height:3rem}@media(max-width: 400px),(max-height: 550px){.react-datepicker__portal .react-datepicker__day-name,.react-datepicker__portal .react-datepicker__day,.react-datepicker__portal .react-datepicker__time-name{width:2rem;line-height:2rem}}.react-datepicker__portal .react-datepicker__current-month,.react-datepicker__portal .react-datepicker-time__header{font-size:1.44rem}.react-datepicker__children-container{width:13.8rem;margin:.4rem;padding-right:.2rem;padding-left:.2rem;height:auto}.react-datepicker__aria-live{position:absolute;clip-path:circle(0);border:0;height:1px;margin:-1px;overflow:hidden;padding:0;width:1px;white-space:nowrap}.react-datepicker__calendar-icon{width:1em;height:1em;vertical-align:-0.125em}\n";
|
|
24954
24205
|
styleInject(css_248z);
|
|
24955
24206
|
|
|
24956
|
-
const DEFAULT_MODIFIERS = [flip$
|
|
24207
|
+
const DEFAULT_MODIFIERS = [flip$1({
|
|
24957
24208
|
fallbackPlacements: ['bottom']
|
|
24958
24209
|
}), shift({
|
|
24959
24210
|
limiter: limitShift()
|
|
@@ -26550,7 +25801,7 @@ const Popper = /*#__PURE__*/React__namespace.default.forwardRef(function PopperF
|
|
|
26550
25801
|
if (popperRef.current) {
|
|
26551
25802
|
cleanup = setupFloating(virtualEl || anchorElement, popperRef.current, {
|
|
26552
25803
|
placement,
|
|
26553
|
-
middleware: [offset$
|
|
25804
|
+
middleware: [offset$1(8), !virtualEl && flip$1({
|
|
26554
25805
|
fallbackPlacements: ['bottom']
|
|
26555
25806
|
}), shift({
|
|
26556
25807
|
limiter: limitShift()
|