@zextras/carbonio-design-system 12.2.1 → 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 +3 -3
package/dist/zapp-ui.bundle.mjs
CHANGED
|
@@ -1156,10 +1156,10 @@ function requireSharedStore () {
|
|
|
1156
1156
|
var store = sharedStore.exports = globalThis[SHARED] || defineGlobalProperty(SHARED, {});
|
|
1157
1157
|
|
|
1158
1158
|
(store.versions || (store.versions = [])).push({
|
|
1159
|
-
version: '3.
|
|
1159
|
+
version: '3.50.0',
|
|
1160
1160
|
mode: IS_PURE ? 'pure' : 'global',
|
|
1161
1161
|
copyright: '© 2013–2025 Denis Pushkarev (zloirock.ru), 2025–2026 CoreJS Company (core-js.io). All rights reserved.',
|
|
1162
|
-
license: 'https://github.com/zloirock/core-js/blob/v3.
|
|
1162
|
+
license: 'https://github.com/zloirock/core-js/blob/v3.50.0/LICENSE',
|
|
1163
1163
|
source: 'https://github.com/zloirock/core-js'
|
|
1164
1164
|
});
|
|
1165
1165
|
return sharedStore.exports;
|
|
@@ -1172,9 +1172,11 @@ function requireShared () {
|
|
|
1172
1172
|
if (hasRequiredShared) return shared;
|
|
1173
1173
|
hasRequiredShared = 1;
|
|
1174
1174
|
var store = requireSharedStore();
|
|
1175
|
+
// eslint-disable-next-line es/no-object-create -- safe
|
|
1176
|
+
var create = Object.create || Object;
|
|
1175
1177
|
|
|
1176
1178
|
shared = function (key, value) {
|
|
1177
|
-
return store[key] || (store[key] = value ||
|
|
1179
|
+
return store[key] || (store[key] = value || create(null));
|
|
1178
1180
|
};
|
|
1179
1181
|
return shared;
|
|
1180
1182
|
}
|
|
@@ -2622,6 +2624,20 @@ function requireIteratorCloseAll () {
|
|
|
2622
2624
|
return iteratorCloseAll;
|
|
2623
2625
|
}
|
|
2624
2626
|
|
|
2627
|
+
var iteratorCleanupState;
|
|
2628
|
+
var hasRequiredIteratorCleanupState;
|
|
2629
|
+
|
|
2630
|
+
function requireIteratorCleanupState () {
|
|
2631
|
+
if (hasRequiredIteratorCleanupState) return iteratorCleanupState;
|
|
2632
|
+
hasRequiredIteratorCleanupState = 1;
|
|
2633
|
+
// release references held by exhausted / closed iterator helpers to allow GC of the source chain
|
|
2634
|
+
iteratorCleanupState = function (state) {
|
|
2635
|
+
state.iterator = state.next = state.nextHandler = state.mapper = state.predicate = state.inner =
|
|
2636
|
+
state.iterables = state.iters = state.openIters = state.padding = state.finishResults = state.buffer = null;
|
|
2637
|
+
};
|
|
2638
|
+
return iteratorCleanupState;
|
|
2639
|
+
}
|
|
2640
|
+
|
|
2625
2641
|
var iteratorCreateProxy;
|
|
2626
2642
|
var hasRequiredIteratorCreateProxy;
|
|
2627
2643
|
|
|
@@ -2639,6 +2655,7 @@ function requireIteratorCreateProxy () {
|
|
|
2639
2655
|
var createIterResultObject = requireCreateIterResultObject();
|
|
2640
2656
|
var iteratorClose = requireIteratorClose();
|
|
2641
2657
|
var iteratorCloseAll = requireIteratorCloseAll();
|
|
2658
|
+
var cleanupState = requireIteratorCleanupState();
|
|
2642
2659
|
|
|
2643
2660
|
var TO_STRING_TAG = wellKnownSymbol('toStringTag');
|
|
2644
2661
|
var ITERATOR_HELPER = 'IteratorHelper';
|
|
@@ -2660,29 +2677,34 @@ function requireIteratorCreateProxy () {
|
|
|
2660
2677
|
if (state.done) return createIterResultObject(undefined, true);
|
|
2661
2678
|
try {
|
|
2662
2679
|
var result = state.nextHandler();
|
|
2680
|
+
if (state.done) cleanupState(state);
|
|
2663
2681
|
return state.returnHandlerResult ? result : createIterResultObject(result, state.done);
|
|
2664
2682
|
} catch (error) {
|
|
2665
2683
|
state.done = true;
|
|
2684
|
+
cleanupState(state);
|
|
2666
2685
|
throw error;
|
|
2667
2686
|
}
|
|
2668
2687
|
},
|
|
2669
2688
|
'return': function () {
|
|
2670
2689
|
var state = getInternalState(this);
|
|
2671
2690
|
var iterator = state.iterator;
|
|
2691
|
+
var inner = state.inner;
|
|
2692
|
+
var openIters = state.openIters;
|
|
2672
2693
|
var done = state.done;
|
|
2673
2694
|
state.done = true;
|
|
2674
2695
|
if (IS_ITERATOR) {
|
|
2675
2696
|
var returnMethod = getMethod(iterator, 'return');
|
|
2676
2697
|
return returnMethod ? call(returnMethod, iterator) : createIterResultObject(undefined, true);
|
|
2677
2698
|
}
|
|
2699
|
+
cleanupState(state);
|
|
2678
2700
|
if (done) return createIterResultObject(undefined, true);
|
|
2679
|
-
if (
|
|
2680
|
-
iteratorClose(
|
|
2701
|
+
if (inner) try {
|
|
2702
|
+
iteratorClose(inner.iterator, NORMAL);
|
|
2681
2703
|
} catch (error) {
|
|
2682
2704
|
return iteratorClose(iterator, THROW, error);
|
|
2683
2705
|
}
|
|
2684
|
-
if (
|
|
2685
|
-
iteratorCloseAll(
|
|
2706
|
+
if (openIters) try {
|
|
2707
|
+
iteratorCloseAll(openIters, NORMAL);
|
|
2686
2708
|
} catch (error) {
|
|
2687
2709
|
if (iterator) return iteratorClose(iterator, THROW, error);
|
|
2688
2710
|
throw error;
|
|
@@ -2910,7 +2932,7 @@ var hasRequiredIterators;
|
|
|
2910
2932
|
function requireIterators () {
|
|
2911
2933
|
if (hasRequiredIterators) return iterators;
|
|
2912
2934
|
hasRequiredIterators = 1;
|
|
2913
|
-
iterators = {};
|
|
2935
|
+
iterators = Object.create ? Object.create(null) : {};
|
|
2914
2936
|
return iterators;
|
|
2915
2937
|
}
|
|
2916
2938
|
|
|
@@ -2933,103 +2955,48 @@ function requireIsArrayIteratorMethod () {
|
|
|
2933
2955
|
return isArrayIteratorMethod;
|
|
2934
2956
|
}
|
|
2935
2957
|
|
|
2936
|
-
var
|
|
2937
|
-
var
|
|
2938
|
-
|
|
2939
|
-
function requireToStringTagSupport () {
|
|
2940
|
-
if (hasRequiredToStringTagSupport) return toStringTagSupport;
|
|
2941
|
-
hasRequiredToStringTagSupport = 1;
|
|
2942
|
-
var wellKnownSymbol = requireWellKnownSymbol();
|
|
2943
|
-
|
|
2944
|
-
var TO_STRING_TAG = wellKnownSymbol('toStringTag');
|
|
2945
|
-
var test = {};
|
|
2946
|
-
// eslint-disable-next-line unicorn/no-immediate-mutation -- ES3 syntax limitation
|
|
2947
|
-
test[TO_STRING_TAG] = 'z';
|
|
2948
|
-
|
|
2949
|
-
toStringTagSupport = String(test) === '[object z]';
|
|
2950
|
-
return toStringTagSupport;
|
|
2951
|
-
}
|
|
2952
|
-
|
|
2953
|
-
var classof;
|
|
2954
|
-
var hasRequiredClassof;
|
|
2955
|
-
|
|
2956
|
-
function requireClassof () {
|
|
2957
|
-
if (hasRequiredClassof) return classof;
|
|
2958
|
-
hasRequiredClassof = 1;
|
|
2959
|
-
var TO_STRING_TAG_SUPPORT = requireToStringTagSupport();
|
|
2960
|
-
var isCallable = requireIsCallable();
|
|
2961
|
-
var classofRaw = requireClassofRaw();
|
|
2962
|
-
var wellKnownSymbol = requireWellKnownSymbol();
|
|
2963
|
-
|
|
2964
|
-
var TO_STRING_TAG = wellKnownSymbol('toStringTag');
|
|
2965
|
-
var $Object = Object;
|
|
2966
|
-
|
|
2967
|
-
// ES3 wrong here
|
|
2968
|
-
var CORRECT_ARGUMENTS = classofRaw(function () { return arguments; }()) === 'Arguments';
|
|
2969
|
-
|
|
2970
|
-
// fallback for IE11 Script Access Denied error
|
|
2971
|
-
var tryGet = function (it, key) {
|
|
2972
|
-
try {
|
|
2973
|
-
return it[key];
|
|
2974
|
-
} catch (error) { /* empty */ }
|
|
2975
|
-
};
|
|
2976
|
-
|
|
2977
|
-
// getting tag from ES6+ `Object.prototype.toString`
|
|
2978
|
-
classof = TO_STRING_TAG_SUPPORT ? classofRaw : function (it) {
|
|
2979
|
-
var O, tag, result;
|
|
2980
|
-
return it === undefined ? 'Undefined' : it === null ? 'Null'
|
|
2981
|
-
// @@toStringTag case
|
|
2982
|
-
: typeof (tag = tryGet(O = $Object(it), TO_STRING_TAG)) == 'string' ? tag
|
|
2983
|
-
// builtinTag case
|
|
2984
|
-
: CORRECT_ARGUMENTS ? classofRaw(O)
|
|
2985
|
-
// ES3 arguments fallback
|
|
2986
|
-
: (result = classofRaw(O)) === 'Object' && isCallable(O.callee) ? 'Arguments' : result;
|
|
2987
|
-
};
|
|
2988
|
-
return classof;
|
|
2989
|
-
}
|
|
2990
|
-
|
|
2991
|
-
var getIteratorMethod;
|
|
2992
|
-
var hasRequiredGetIteratorMethod;
|
|
2958
|
+
var getIteratorMethodInternal;
|
|
2959
|
+
var hasRequiredGetIteratorMethodInternal;
|
|
2993
2960
|
|
|
2994
|
-
function
|
|
2995
|
-
if (
|
|
2996
|
-
|
|
2997
|
-
var classof =
|
|
2998
|
-
var getMethod = requireGetMethod();
|
|
2961
|
+
function requireGetIteratorMethodInternal () {
|
|
2962
|
+
if (hasRequiredGetIteratorMethodInternal) return getIteratorMethodInternal;
|
|
2963
|
+
hasRequiredGetIteratorMethodInternal = 1;
|
|
2964
|
+
var classof = requireClassofRaw();
|
|
2999
2965
|
var isNullOrUndefined = requireIsNullOrUndefined();
|
|
3000
|
-
var
|
|
2966
|
+
var getMethod = requireGetMethod();
|
|
3001
2967
|
var wellKnownSymbol = requireWellKnownSymbol();
|
|
3002
2968
|
|
|
3003
2969
|
var ITERATOR = wellKnownSymbol('iterator');
|
|
2970
|
+
var ArrayPrototype = Array.prototype;
|
|
3004
2971
|
|
|
3005
|
-
|
|
2972
|
+
getIteratorMethodInternal = function (it) {
|
|
3006
2973
|
if (!isNullOrUndefined(it)) return getMethod(it, ITERATOR)
|
|
3007
2974
|
|| getMethod(it, '@@iterator')
|
|
3008
|
-
||
|
|
2975
|
+
|| (classof(it) === 'Arguments' ? ArrayPrototype[ITERATOR] : undefined);
|
|
3009
2976
|
};
|
|
3010
|
-
return
|
|
2977
|
+
return getIteratorMethodInternal;
|
|
3011
2978
|
}
|
|
3012
2979
|
|
|
3013
|
-
var
|
|
3014
|
-
var
|
|
2980
|
+
var getIteratorInternal;
|
|
2981
|
+
var hasRequiredGetIteratorInternal;
|
|
3015
2982
|
|
|
3016
|
-
function
|
|
3017
|
-
if (
|
|
3018
|
-
|
|
2983
|
+
function requireGetIteratorInternal () {
|
|
2984
|
+
if (hasRequiredGetIteratorInternal) return getIteratorInternal;
|
|
2985
|
+
hasRequiredGetIteratorInternal = 1;
|
|
3019
2986
|
var call = requireFunctionCall();
|
|
3020
|
-
var
|
|
2987
|
+
var isCallable = requireIsCallable();
|
|
3021
2988
|
var anObject = requireAnObject();
|
|
3022
2989
|
var tryToString = requireTryToString();
|
|
3023
|
-
var getIteratorMethod =
|
|
2990
|
+
var getIteratorMethod = requireGetIteratorMethodInternal();
|
|
3024
2991
|
|
|
3025
2992
|
var $TypeError = TypeError;
|
|
3026
2993
|
|
|
3027
|
-
|
|
2994
|
+
getIteratorInternal = function (argument, usingIterator) {
|
|
3028
2995
|
var iteratorMethod = arguments.length < 2 ? getIteratorMethod(argument) : usingIterator;
|
|
3029
|
-
if (
|
|
2996
|
+
if (isCallable(iteratorMethod)) return anObject(call(iteratorMethod, argument));
|
|
3030
2997
|
throw new $TypeError(tryToString(argument) + ' is not iterable');
|
|
3031
2998
|
};
|
|
3032
|
-
return
|
|
2999
|
+
return getIteratorInternal;
|
|
3033
3000
|
}
|
|
3034
3001
|
|
|
3035
3002
|
var iterate;
|
|
@@ -3045,8 +3012,8 @@ function requireIterate () {
|
|
|
3045
3012
|
var isArrayIteratorMethod = requireIsArrayIteratorMethod();
|
|
3046
3013
|
var lengthOfArrayLike = requireLengthOfArrayLike();
|
|
3047
3014
|
var isPrototypeOf = requireObjectIsPrototypeOf();
|
|
3048
|
-
var getIterator =
|
|
3049
|
-
var getIteratorMethod =
|
|
3015
|
+
var getIterator = requireGetIteratorInternal();
|
|
3016
|
+
var getIteratorMethod = requireGetIteratorMethodInternal();
|
|
3050
3017
|
var iteratorClose = requireIteratorClose();
|
|
3051
3018
|
|
|
3052
3019
|
var $TypeError = TypeError;
|
|
@@ -5129,7 +5096,7 @@ const MAX_RESET_COUNT = 50;
|
|
|
5129
5096
|
* This export does not have any `platform` interface logic. You will need to
|
|
5130
5097
|
* write one for the platform you are using Floating UI with.
|
|
5131
5098
|
*/
|
|
5132
|
-
const computePosition$
|
|
5099
|
+
const computePosition$1 = async (reference, floating, config) => {
|
|
5133
5100
|
const {
|
|
5134
5101
|
placement = 'bottom',
|
|
5135
5102
|
strategy = 'absolute',
|
|
@@ -5304,7 +5271,7 @@ const arrow$3 = options => ({
|
|
|
5304
5271
|
* clipping boundary. Alternative to `autoPlacement`.
|
|
5305
5272
|
* @see https://floating-ui.com/docs/flip
|
|
5306
5273
|
*/
|
|
5307
|
-
const flip$
|
|
5274
|
+
const flip$2 = function (options) {
|
|
5308
5275
|
if (options === void 0) {
|
|
5309
5276
|
options = {};
|
|
5310
5277
|
}
|
|
@@ -5482,7 +5449,7 @@ async function convertValueToCoords(state, options) {
|
|
|
5482
5449
|
* object may be passed.
|
|
5483
5450
|
* @see https://floating-ui.com/docs/offset
|
|
5484
5451
|
*/
|
|
5485
|
-
const offset$
|
|
5452
|
+
const offset$2 = function (options) {
|
|
5486
5453
|
if (options === void 0) {
|
|
5487
5454
|
options = 0;
|
|
5488
5455
|
}
|
|
@@ -5820,7 +5787,7 @@ function getFrameElement(win) {
|
|
|
5820
5787
|
return win.parent && Object.getPrototypeOf(win.parent) ? win.frameElement : null;
|
|
5821
5788
|
}
|
|
5822
5789
|
|
|
5823
|
-
function getCssDimensions
|
|
5790
|
+
function getCssDimensions(element) {
|
|
5824
5791
|
const css = getComputedStyle$1(element);
|
|
5825
5792
|
// In testing environments, the `width` and `height` properties are empty
|
|
5826
5793
|
// strings for SVG elements, returning NaN. Fallback to `0` in this case.
|
|
@@ -5841,12 +5808,12 @@ function getCssDimensions$1(element) {
|
|
|
5841
5808
|
};
|
|
5842
5809
|
}
|
|
5843
5810
|
|
|
5844
|
-
function unwrapElement
|
|
5811
|
+
function unwrapElement(element) {
|
|
5845
5812
|
return !isElement(element) ? element.contextElement : element;
|
|
5846
5813
|
}
|
|
5847
5814
|
|
|
5848
|
-
function getScale
|
|
5849
|
-
const domElement = unwrapElement
|
|
5815
|
+
function getScale(element) {
|
|
5816
|
+
const domElement = unwrapElement(element);
|
|
5850
5817
|
if (!isHTMLElement(domElement)) {
|
|
5851
5818
|
return createCoords(1);
|
|
5852
5819
|
}
|
|
@@ -5855,7 +5822,7 @@ function getScale$1(element) {
|
|
|
5855
5822
|
width,
|
|
5856
5823
|
height,
|
|
5857
5824
|
$
|
|
5858
|
-
} = getCssDimensions
|
|
5825
|
+
} = getCssDimensions(domElement);
|
|
5859
5826
|
let x = ($ ? round(rect.width) : rect.width) / width;
|
|
5860
5827
|
let y = ($ ? round(rect.height) : rect.height) / height;
|
|
5861
5828
|
|
|
@@ -5873,28 +5840,25 @@ function getScale$1(element) {
|
|
|
5873
5840
|
};
|
|
5874
5841
|
}
|
|
5875
5842
|
|
|
5876
|
-
const noOffsets
|
|
5877
|
-
function getVisualOffsets
|
|
5843
|
+
const noOffsets = /*#__PURE__*/createCoords(0);
|
|
5844
|
+
function getVisualOffsets(element) {
|
|
5878
5845
|
const win = getWindow(element);
|
|
5879
5846
|
if (!isWebKit() || !win.visualViewport) {
|
|
5880
|
-
return noOffsets
|
|
5847
|
+
return noOffsets;
|
|
5881
5848
|
}
|
|
5882
5849
|
return {
|
|
5883
5850
|
x: win.visualViewport.offsetLeft,
|
|
5884
5851
|
y: win.visualViewport.offsetTop
|
|
5885
5852
|
};
|
|
5886
5853
|
}
|
|
5887
|
-
function shouldAddVisualOffsets
|
|
5854
|
+
function shouldAddVisualOffsets(element, isFixed, floatingOffsetParent) {
|
|
5888
5855
|
if (isFixed === void 0) {
|
|
5889
5856
|
isFixed = false;
|
|
5890
5857
|
}
|
|
5891
|
-
|
|
5892
|
-
return false;
|
|
5893
|
-
}
|
|
5894
|
-
return isFixed;
|
|
5858
|
+
return !!floatingOffsetParent && isFixed && floatingOffsetParent === getWindow(element);
|
|
5895
5859
|
}
|
|
5896
5860
|
|
|
5897
|
-
function getBoundingClientRect
|
|
5861
|
+
function getBoundingClientRect(element, includeScale, isFixedStrategy, offsetParent) {
|
|
5898
5862
|
if (includeScale === void 0) {
|
|
5899
5863
|
includeScale = false;
|
|
5900
5864
|
}
|
|
@@ -5902,29 +5866,29 @@ function getBoundingClientRect$1(element, includeScale, isFixedStrategy, offsetP
|
|
|
5902
5866
|
isFixedStrategy = false;
|
|
5903
5867
|
}
|
|
5904
5868
|
const clientRect = element.getBoundingClientRect();
|
|
5905
|
-
const domElement = unwrapElement
|
|
5869
|
+
const domElement = unwrapElement(element);
|
|
5906
5870
|
let scale = createCoords(1);
|
|
5907
5871
|
if (includeScale) {
|
|
5908
5872
|
if (offsetParent) {
|
|
5909
5873
|
if (isElement(offsetParent)) {
|
|
5910
|
-
scale = getScale
|
|
5874
|
+
scale = getScale(offsetParent);
|
|
5911
5875
|
}
|
|
5912
5876
|
} else {
|
|
5913
|
-
scale = getScale
|
|
5877
|
+
scale = getScale(element);
|
|
5914
5878
|
}
|
|
5915
5879
|
}
|
|
5916
|
-
const visualOffsets = shouldAddVisualOffsets
|
|
5880
|
+
const visualOffsets = shouldAddVisualOffsets(domElement, isFixedStrategy, offsetParent) ? getVisualOffsets(domElement) : createCoords(0);
|
|
5917
5881
|
let x = (clientRect.left + visualOffsets.x) / scale.x;
|
|
5918
5882
|
let y = (clientRect.top + visualOffsets.y) / scale.y;
|
|
5919
5883
|
let width = clientRect.width / scale.x;
|
|
5920
5884
|
let height = clientRect.height / scale.y;
|
|
5921
|
-
if (domElement) {
|
|
5885
|
+
if (domElement && offsetParent) {
|
|
5922
5886
|
const win = getWindow(domElement);
|
|
5923
|
-
const offsetWin =
|
|
5887
|
+
const offsetWin = isElement(offsetParent) ? getWindow(offsetParent) : offsetParent;
|
|
5924
5888
|
let currentWin = win;
|
|
5925
5889
|
let currentIFrame = getFrameElement(currentWin);
|
|
5926
|
-
while (currentIFrame &&
|
|
5927
|
-
const iframeScale = getScale
|
|
5890
|
+
while (currentIFrame && offsetWin !== currentWin) {
|
|
5891
|
+
const iframeScale = getScale(currentIFrame);
|
|
5928
5892
|
const iframeRect = currentIFrame.getBoundingClientRect();
|
|
5929
5893
|
const css = getComputedStyle$1(currentIFrame);
|
|
5930
5894
|
const left = iframeRect.left + (currentIFrame.clientLeft + parseFloat(css.paddingLeft)) * iframeScale.x;
|
|
@@ -5949,17 +5913,17 @@ function getBoundingClientRect$1(element, includeScale, isFixedStrategy, offsetP
|
|
|
5949
5913
|
|
|
5950
5914
|
// If <html> has a CSS width greater than the viewport, then this will be
|
|
5951
5915
|
// incorrect for RTL.
|
|
5952
|
-
function getWindowScrollBarX
|
|
5916
|
+
function getWindowScrollBarX(element, rect) {
|
|
5953
5917
|
const leftScroll = getNodeScroll(element).scrollLeft;
|
|
5954
5918
|
if (!rect) {
|
|
5955
|
-
return getBoundingClientRect
|
|
5919
|
+
return getBoundingClientRect(getDocumentElement(element)).left + leftScroll;
|
|
5956
5920
|
}
|
|
5957
5921
|
return rect.left + leftScroll;
|
|
5958
5922
|
}
|
|
5959
5923
|
|
|
5960
|
-
function getHTMLOffset
|
|
5924
|
+
function getHTMLOffset(documentElement, scroll) {
|
|
5961
5925
|
const htmlRect = documentElement.getBoundingClientRect();
|
|
5962
|
-
const x = htmlRect.left + scroll.scrollLeft - getWindowScrollBarX
|
|
5926
|
+
const x = htmlRect.left + scroll.scrollLeft - getWindowScrollBarX(documentElement, htmlRect);
|
|
5963
5927
|
const y = htmlRect.top + scroll.scrollTop;
|
|
5964
5928
|
return {
|
|
5965
5929
|
x,
|
|
@@ -5967,7 +5931,7 @@ function getHTMLOffset$1(documentElement, scroll) {
|
|
|
5967
5931
|
};
|
|
5968
5932
|
}
|
|
5969
5933
|
|
|
5970
|
-
function convertOffsetParentRelativeRectToViewportRelativeRect
|
|
5934
|
+
function convertOffsetParentRelativeRectToViewportRelativeRect(_ref) {
|
|
5971
5935
|
let {
|
|
5972
5936
|
elements,
|
|
5973
5937
|
rect,
|
|
@@ -5987,18 +5951,18 @@ function convertOffsetParentRelativeRectToViewportRelativeRect$1(_ref) {
|
|
|
5987
5951
|
let scale = createCoords(1);
|
|
5988
5952
|
const offsets = createCoords(0);
|
|
5989
5953
|
const isOffsetParentAnElement = isHTMLElement(offsetParent);
|
|
5990
|
-
if (isOffsetParentAnElement || !
|
|
5954
|
+
if (isOffsetParentAnElement || !isFixed) {
|
|
5991
5955
|
if (getNodeName(offsetParent) !== 'body' || isOverflowElement(documentElement)) {
|
|
5992
5956
|
scroll = getNodeScroll(offsetParent);
|
|
5993
5957
|
}
|
|
5994
5958
|
if (isOffsetParentAnElement) {
|
|
5995
|
-
const offsetRect = getBoundingClientRect
|
|
5996
|
-
scale = getScale
|
|
5959
|
+
const offsetRect = getBoundingClientRect(offsetParent);
|
|
5960
|
+
scale = getScale(offsetParent);
|
|
5997
5961
|
offsets.x = offsetRect.x + offsetParent.clientLeft;
|
|
5998
5962
|
offsets.y = offsetRect.y + offsetParent.clientTop;
|
|
5999
5963
|
}
|
|
6000
5964
|
}
|
|
6001
|
-
const htmlOffset = documentElement && !isOffsetParentAnElement && !isFixed ? getHTMLOffset
|
|
5965
|
+
const htmlOffset = documentElement && !isOffsetParentAnElement && !isFixed ? getHTMLOffset(documentElement, scroll) : createCoords(0);
|
|
6002
5966
|
return {
|
|
6003
5967
|
width: rect.width * scale.x,
|
|
6004
5968
|
height: rect.height * scale.y,
|
|
@@ -6007,19 +5971,18 @@ function convertOffsetParentRelativeRectToViewportRelativeRect$1(_ref) {
|
|
|
6007
5971
|
};
|
|
6008
5972
|
}
|
|
6009
5973
|
|
|
6010
|
-
function getClientRects
|
|
6011
|
-
return Array.from(element.getClientRects());
|
|
5974
|
+
function getClientRects(element) {
|
|
5975
|
+
return element.getClientRects ? Array.from(element.getClientRects()) : [];
|
|
6012
5976
|
}
|
|
6013
5977
|
|
|
6014
5978
|
// Gets the entire size of the scrollable document area, even extending outside
|
|
6015
5979
|
// of the `<html>` and `<body>` rect bounds if horizontally scrollable.
|
|
6016
|
-
function getDocumentRect
|
|
6017
|
-
const
|
|
6018
|
-
const
|
|
6019
|
-
const body = element.ownerDocument.body;
|
|
5980
|
+
function getDocumentRect(html) {
|
|
5981
|
+
const scroll = getNodeScroll(html);
|
|
5982
|
+
const body = html.ownerDocument.body;
|
|
6020
5983
|
const width = max$1(html.scrollWidth, html.clientWidth, body.scrollWidth, body.clientWidth);
|
|
6021
5984
|
const height = max$1(html.scrollHeight, html.clientHeight, body.scrollHeight, body.clientHeight);
|
|
6022
|
-
let x = -scroll.scrollLeft + getWindowScrollBarX
|
|
5985
|
+
let x = -scroll.scrollLeft + getWindowScrollBarX(html);
|
|
6023
5986
|
const y = -scroll.scrollTop;
|
|
6024
5987
|
if (getComputedStyle$1(body).direction === 'rtl') {
|
|
6025
5988
|
x += max$1(html.clientWidth, body.clientWidth) - width;
|
|
@@ -6035,8 +5998,12 @@ function getDocumentRect$1(element) {
|
|
|
6035
5998
|
// Safety check: ensure the scrollbar space is reasonable in case this
|
|
6036
5999
|
// calculation is affected by unusual styles.
|
|
6037
6000
|
// Most scrollbars leave 15-18px of space.
|
|
6038
|
-
const SCROLLBAR_MAX
|
|
6039
|
-
function getViewportRect
|
|
6001
|
+
const SCROLLBAR_MAX = 25;
|
|
6002
|
+
function getViewportRect(element, strategy, rootBoundary) {
|
|
6003
|
+
if (rootBoundary === void 0) {
|
|
6004
|
+
rootBoundary = 'viewport';
|
|
6005
|
+
}
|
|
6006
|
+
const isLayoutViewport = rootBoundary === 'layoutViewport';
|
|
6040
6007
|
const win = getWindow(element);
|
|
6041
6008
|
const html = getDocumentElement(element);
|
|
6042
6009
|
const visualViewport = win.visualViewport;
|
|
@@ -6045,31 +6012,42 @@ function getViewportRect$1(element, strategy) {
|
|
|
6045
6012
|
let x = 0;
|
|
6046
6013
|
let y = 0;
|
|
6047
6014
|
if (visualViewport) {
|
|
6048
|
-
|
|
6049
|
-
|
|
6050
|
-
|
|
6051
|
-
|
|
6052
|
-
|
|
6053
|
-
|
|
6054
|
-
|
|
6055
|
-
|
|
6056
|
-
|
|
6057
|
-
|
|
6058
|
-
|
|
6059
|
-
|
|
6015
|
+
// Client coordinates are relative to the layout viewport, except in
|
|
6016
|
+
// WebKit with an `absolute` strategy, where they are relative to the
|
|
6017
|
+
// visual viewport.
|
|
6018
|
+
const layoutRelativeClientCoords = !isWebKit() || strategy === 'fixed';
|
|
6019
|
+
if (isLayoutViewport) {
|
|
6020
|
+
if (!layoutRelativeClientCoords) {
|
|
6021
|
+
x = -visualViewport.offsetLeft;
|
|
6022
|
+
y = -visualViewport.offsetTop;
|
|
6023
|
+
}
|
|
6024
|
+
} else {
|
|
6025
|
+
width = visualViewport.width;
|
|
6026
|
+
height = visualViewport.height;
|
|
6027
|
+
if (layoutRelativeClientCoords) {
|
|
6028
|
+
x = visualViewport.offsetLeft;
|
|
6029
|
+
y = visualViewport.offsetTop;
|
|
6030
|
+
}
|
|
6031
|
+
}
|
|
6032
|
+
}
|
|
6033
|
+
const windowScrollbarX = getWindowScrollBarX(html);
|
|
6034
|
+
// `scrollbar-gutter: stable` on the <html> reserves gutter space that shrinks
|
|
6035
|
+
// the visual width but isn't reflected in `html.clientWidth`, so subtract it.
|
|
6036
|
+
// Only the inline-end (right) gutter can hold the scrollbar; `both-edges` also
|
|
6037
|
+
// reserves an empty inline-start gutter that clips nothing, so exclude just
|
|
6038
|
+
// the one scrollbar-side gutter — halve the measured (two-gutter) total. A
|
|
6039
|
+
// left-side scrollbar (`windowScrollbarX > 0`) is already handled by
|
|
6040
|
+
// `getHTMLOffset`/`visualViewport.width`; skip it here.
|
|
6060
6041
|
if (windowScrollbarX <= 0) {
|
|
6061
6042
|
const doc = html.ownerDocument;
|
|
6062
6043
|
const body = doc.body;
|
|
6063
6044
|
const bodyStyles = getComputedStyle(body);
|
|
6064
6045
|
const bodyMarginInline = doc.compatMode === 'CSS1Compat' ? parseFloat(bodyStyles.marginLeft) + parseFloat(bodyStyles.marginRight) || 0 : 0;
|
|
6065
|
-
const
|
|
6066
|
-
|
|
6067
|
-
|
|
6046
|
+
const reservedWidth = Math.abs(html.clientWidth - body.clientWidth - bodyMarginInline);
|
|
6047
|
+
const gutter = getComputedStyle(html).scrollbarGutter === 'stable both-edges' ? reservedWidth / 2 : reservedWidth;
|
|
6048
|
+
if (gutter <= SCROLLBAR_MAX) {
|
|
6049
|
+
width -= gutter;
|
|
6068
6050
|
}
|
|
6069
|
-
} else if (windowScrollbarX <= SCROLLBAR_MAX$1) {
|
|
6070
|
-
// If the <body> scrollbar is on the left, the width needs to be extended
|
|
6071
|
-
// by the scrollbar amount so there isn't extra space on the right.
|
|
6072
|
-
width += windowScrollbarX;
|
|
6073
6051
|
}
|
|
6074
6052
|
return {
|
|
6075
6053
|
width,
|
|
@@ -6080,11 +6058,11 @@ function getViewportRect$1(element, strategy) {
|
|
|
6080
6058
|
}
|
|
6081
6059
|
|
|
6082
6060
|
// Returns the inner client rect, subtracting scrollbars if present.
|
|
6083
|
-
function getInnerBoundingClientRect
|
|
6084
|
-
const clientRect = getBoundingClientRect
|
|
6061
|
+
function getInnerBoundingClientRect(element, strategy) {
|
|
6062
|
+
const clientRect = getBoundingClientRect(element, true, strategy === 'fixed');
|
|
6085
6063
|
const top = clientRect.top + element.clientTop;
|
|
6086
6064
|
const left = clientRect.left + element.clientLeft;
|
|
6087
|
-
const scale =
|
|
6065
|
+
const scale = getScale(element);
|
|
6088
6066
|
const width = element.clientWidth * scale.x;
|
|
6089
6067
|
const height = element.clientHeight * scale.y;
|
|
6090
6068
|
const x = left * scale.x;
|
|
@@ -6096,16 +6074,16 @@ function getInnerBoundingClientRect$1(element, strategy) {
|
|
|
6096
6074
|
y
|
|
6097
6075
|
};
|
|
6098
6076
|
}
|
|
6099
|
-
function getClientRectFromClippingAncestor
|
|
6077
|
+
function getClientRectFromClippingAncestor(element, clippingAncestor, strategy) {
|
|
6100
6078
|
let rect;
|
|
6101
|
-
if (clippingAncestor === 'viewport') {
|
|
6102
|
-
rect = getViewportRect
|
|
6079
|
+
if (clippingAncestor === 'viewport' || clippingAncestor === 'layoutViewport') {
|
|
6080
|
+
rect = getViewportRect(element, strategy, clippingAncestor);
|
|
6103
6081
|
} else if (clippingAncestor === 'document') {
|
|
6104
|
-
rect = getDocumentRect
|
|
6082
|
+
rect = getDocumentRect(getDocumentElement(element));
|
|
6105
6083
|
} else if (isElement(clippingAncestor)) {
|
|
6106
|
-
rect = getInnerBoundingClientRect
|
|
6084
|
+
rect = getInnerBoundingClientRect(clippingAncestor, strategy);
|
|
6107
6085
|
} else {
|
|
6108
|
-
const visualOffsets = getVisualOffsets
|
|
6086
|
+
const visualOffsets = getVisualOffsets(element);
|
|
6109
6087
|
rect = {
|
|
6110
6088
|
x: clippingAncestor.x - visualOffsets.x,
|
|
6111
6089
|
y: clippingAncestor.y - visualOffsets.y,
|
|
@@ -6115,24 +6093,17 @@ function getClientRectFromClippingAncestor$1(element, clippingAncestor, strategy
|
|
|
6115
6093
|
}
|
|
6116
6094
|
return rectToClientRect(rect);
|
|
6117
6095
|
}
|
|
6118
|
-
function hasFixedPositionAncestor(element, stopNode) {
|
|
6119
|
-
const parentNode = getParentNode(element);
|
|
6120
|
-
if (parentNode === stopNode || !isElement(parentNode) || isLastTraversableNode(parentNode)) {
|
|
6121
|
-
return false;
|
|
6122
|
-
}
|
|
6123
|
-
return getComputedStyle$1(parentNode).position === 'fixed' || hasFixedPositionAncestor(parentNode, stopNode);
|
|
6124
|
-
}
|
|
6125
6096
|
|
|
6126
6097
|
// A "clipping ancestor" is an `overflow` element with the characteristic of
|
|
6127
6098
|
// clipping (or hiding) child elements. This returns all clipping ancestors
|
|
6128
6099
|
// of the given element up the tree.
|
|
6129
|
-
function getClippingElementAncestors
|
|
6100
|
+
function getClippingElementAncestors(element, cache) {
|
|
6130
6101
|
const cachedResult = cache.get(element);
|
|
6131
6102
|
if (cachedResult) {
|
|
6132
6103
|
return cachedResult;
|
|
6133
6104
|
}
|
|
6134
6105
|
let result = getOverflowAncestors(element, [], false).filter(el => isElement(el) && getNodeName(el) !== 'body');
|
|
6135
|
-
let
|
|
6106
|
+
let lastKeptComputedStyle = null;
|
|
6136
6107
|
const elementIsFixed = getComputedStyle$1(element).position === 'fixed';
|
|
6137
6108
|
let currentNode = elementIsFixed ? getParentNode(element) : element;
|
|
6138
6109
|
|
|
@@ -6140,16 +6111,20 @@ function getClippingElementAncestors$1(element, cache) {
|
|
|
6140
6111
|
while (isElement(currentNode) && !isLastTraversableNode(currentNode)) {
|
|
6141
6112
|
const computedStyle = getComputedStyle$1(currentNode);
|
|
6142
6113
|
const currentNodeIsContaining = isContainingBlock(currentNode);
|
|
6143
|
-
|
|
6144
|
-
|
|
6145
|
-
|
|
6146
|
-
|
|
6114
|
+
// Position of the containing block chain below the current node. A fixed
|
|
6115
|
+
// element whose containing block hasn't been found yet is a fixed chain.
|
|
6116
|
+
const lastPosition = lastKeptComputedStyle ? lastKeptComputedStyle.position : elementIsFixed ? 'fixed' : '';
|
|
6117
|
+
|
|
6118
|
+
// A non-containing ancestor does not clip the element when the chain
|
|
6119
|
+
// below it escapes it: a fixed chain escapes all ancestors up to the
|
|
6120
|
+
// next containing block, an absolute chain escapes static ancestors.
|
|
6121
|
+
const shouldDropCurrentNode = !currentNodeIsContaining && (lastPosition === 'fixed' || lastPosition === 'absolute' && computedStyle.position === 'static');
|
|
6147
6122
|
if (shouldDropCurrentNode) {
|
|
6148
6123
|
// Drop non-containing blocks.
|
|
6149
6124
|
result = result.filter(ancestor => ancestor !== currentNode);
|
|
6150
6125
|
} else {
|
|
6151
|
-
//
|
|
6152
|
-
|
|
6126
|
+
// The kept node carries the chain position for the next iteration.
|
|
6127
|
+
lastKeptComputedStyle = computedStyle;
|
|
6153
6128
|
}
|
|
6154
6129
|
currentNode = getParentNode(currentNode);
|
|
6155
6130
|
}
|
|
@@ -6159,22 +6134,22 @@ function getClippingElementAncestors$1(element, cache) {
|
|
|
6159
6134
|
|
|
6160
6135
|
// Gets the maximum area that the element is visible in due to any number of
|
|
6161
6136
|
// clipping ancestors.
|
|
6162
|
-
function getClippingRect
|
|
6137
|
+
function getClippingRect(_ref) {
|
|
6163
6138
|
let {
|
|
6164
6139
|
element,
|
|
6165
6140
|
boundary,
|
|
6166
6141
|
rootBoundary,
|
|
6167
6142
|
strategy
|
|
6168
6143
|
} = _ref;
|
|
6169
|
-
const elementClippingAncestors = boundary === 'clippingAncestors' ? isTopLayer(element) ? [] : getClippingElementAncestors
|
|
6144
|
+
const elementClippingAncestors = boundary === 'clippingAncestors' ? isTopLayer(element) ? [] : getClippingElementAncestors(element, this._c) : [].concat(boundary);
|
|
6170
6145
|
const clippingAncestors = [...elementClippingAncestors, rootBoundary];
|
|
6171
|
-
const firstRect = getClientRectFromClippingAncestor
|
|
6146
|
+
const firstRect = getClientRectFromClippingAncestor(element, clippingAncestors[0], strategy);
|
|
6172
6147
|
let top = firstRect.top;
|
|
6173
6148
|
let right = firstRect.right;
|
|
6174
6149
|
let bottom = firstRect.bottom;
|
|
6175
6150
|
let left = firstRect.left;
|
|
6176
6151
|
for (let i = 1; i < clippingAncestors.length; i++) {
|
|
6177
|
-
const rect = getClientRectFromClippingAncestor
|
|
6152
|
+
const rect = getClientRectFromClippingAncestor(element, clippingAncestors[i], strategy);
|
|
6178
6153
|
top = max$1(rect.top, top);
|
|
6179
6154
|
right = min$1(rect.right, right);
|
|
6180
6155
|
bottom = min$1(rect.bottom, bottom);
|
|
@@ -6188,49 +6163,44 @@ function getClippingRect$1(_ref) {
|
|
|
6188
6163
|
};
|
|
6189
6164
|
}
|
|
6190
6165
|
|
|
6191
|
-
function getDimensions
|
|
6166
|
+
function getDimensions(element) {
|
|
6192
6167
|
const {
|
|
6193
6168
|
width,
|
|
6194
6169
|
height
|
|
6195
|
-
} = getCssDimensions
|
|
6170
|
+
} = getCssDimensions(element);
|
|
6196
6171
|
return {
|
|
6197
6172
|
width,
|
|
6198
6173
|
height
|
|
6199
6174
|
};
|
|
6200
6175
|
}
|
|
6201
6176
|
|
|
6202
|
-
function getRectRelativeToOffsetParent
|
|
6177
|
+
function getRectRelativeToOffsetParent(element, offsetParent, strategy) {
|
|
6203
6178
|
const isOffsetParentAnElement = isHTMLElement(offsetParent);
|
|
6204
6179
|
const documentElement = getDocumentElement(offsetParent);
|
|
6205
6180
|
const isFixed = strategy === 'fixed';
|
|
6206
|
-
const rect = getBoundingClientRect
|
|
6181
|
+
const rect = getBoundingClientRect(element, true, isFixed, offsetParent);
|
|
6207
6182
|
let scroll = {
|
|
6208
6183
|
scrollLeft: 0,
|
|
6209
6184
|
scrollTop: 0
|
|
6210
6185
|
};
|
|
6211
6186
|
const offsets = createCoords(0);
|
|
6212
|
-
|
|
6213
|
-
// If the <body> scrollbar appears on the left (e.g. RTL systems). Use
|
|
6214
|
-
// Firefox with layout.scrollbar.side = 3 in about:config to test this.
|
|
6215
|
-
function setLeftRTLScrollbarOffset() {
|
|
6216
|
-
offsets.x = getWindowScrollBarX$1(documentElement);
|
|
6217
|
-
}
|
|
6218
|
-
if (isOffsetParentAnElement || !isOffsetParentAnElement && !isFixed) {
|
|
6187
|
+
if (isOffsetParentAnElement || !isFixed) {
|
|
6219
6188
|
if (getNodeName(offsetParent) !== 'body' || isOverflowElement(documentElement)) {
|
|
6220
6189
|
scroll = getNodeScroll(offsetParent);
|
|
6221
6190
|
}
|
|
6222
6191
|
if (isOffsetParentAnElement) {
|
|
6223
|
-
const offsetRect = getBoundingClientRect
|
|
6192
|
+
const offsetRect = getBoundingClientRect(offsetParent, true, isFixed, offsetParent);
|
|
6224
6193
|
offsets.x = offsetRect.x + offsetParent.clientLeft;
|
|
6225
6194
|
offsets.y = offsetRect.y + offsetParent.clientTop;
|
|
6226
|
-
} else if (documentElement) {
|
|
6227
|
-
setLeftRTLScrollbarOffset();
|
|
6228
6195
|
}
|
|
6229
6196
|
}
|
|
6230
|
-
|
|
6231
|
-
|
|
6197
|
+
|
|
6198
|
+
// If the <body> scrollbar appears on the left (e.g. RTL systems). Use
|
|
6199
|
+
// Firefox with layout.scrollbar.side = 3 in about:config to test this.
|
|
6200
|
+
if (!isOffsetParentAnElement && documentElement) {
|
|
6201
|
+
offsets.x = getWindowScrollBarX(documentElement);
|
|
6232
6202
|
}
|
|
6233
|
-
const htmlOffset = documentElement && !isOffsetParentAnElement && !isFixed ? getHTMLOffset
|
|
6203
|
+
const htmlOffset = documentElement && !isOffsetParentAnElement && !isFixed ? getHTMLOffset(documentElement, scroll) : createCoords(0);
|
|
6234
6204
|
const x = rect.left + scroll.scrollLeft - offsets.x - htmlOffset.x;
|
|
6235
6205
|
const y = rect.top + scroll.scrollTop - offsets.y - htmlOffset.y;
|
|
6236
6206
|
return {
|
|
@@ -6241,11 +6211,11 @@ function getRectRelativeToOffsetParent$1(element, offsetParent, strategy) {
|
|
|
6241
6211
|
};
|
|
6242
6212
|
}
|
|
6243
6213
|
|
|
6244
|
-
function isStaticPositioned
|
|
6214
|
+
function isStaticPositioned(element) {
|
|
6245
6215
|
return getComputedStyle$1(element).position === 'static';
|
|
6246
6216
|
}
|
|
6247
6217
|
|
|
6248
|
-
function getTrueOffsetParent
|
|
6218
|
+
function getTrueOffsetParent(element, polyfill) {
|
|
6249
6219
|
if (!isHTMLElement(element) || getComputedStyle$1(element).position === 'fixed') {
|
|
6250
6220
|
return null;
|
|
6251
6221
|
}
|
|
@@ -6266,7 +6236,7 @@ function getTrueOffsetParent$1(element, polyfill) {
|
|
|
6266
6236
|
|
|
6267
6237
|
// Gets the closest ancestor positioned element. Handles some edge cases,
|
|
6268
6238
|
// such as table ancestors and cross browser bugs.
|
|
6269
|
-
function getOffsetParent
|
|
6239
|
+
function getOffsetParent(element, polyfill) {
|
|
6270
6240
|
const win = getWindow(element);
|
|
6271
6241
|
if (isTopLayer(element)) {
|
|
6272
6242
|
return win;
|
|
@@ -6274,29 +6244,29 @@ function getOffsetParent$1(element, polyfill) {
|
|
|
6274
6244
|
if (!isHTMLElement(element)) {
|
|
6275
6245
|
let svgOffsetParent = getParentNode(element);
|
|
6276
6246
|
while (svgOffsetParent && !isLastTraversableNode(svgOffsetParent)) {
|
|
6277
|
-
if (isElement(svgOffsetParent) && !isStaticPositioned
|
|
6247
|
+
if (isElement(svgOffsetParent) && !isStaticPositioned(svgOffsetParent)) {
|
|
6278
6248
|
return svgOffsetParent;
|
|
6279
6249
|
}
|
|
6280
6250
|
svgOffsetParent = getParentNode(svgOffsetParent);
|
|
6281
6251
|
}
|
|
6282
6252
|
return win;
|
|
6283
6253
|
}
|
|
6284
|
-
let offsetParent = getTrueOffsetParent
|
|
6285
|
-
while (offsetParent && isTableElement(offsetParent) && isStaticPositioned
|
|
6286
|
-
offsetParent = getTrueOffsetParent
|
|
6254
|
+
let offsetParent = getTrueOffsetParent(element, polyfill);
|
|
6255
|
+
while (offsetParent && isTableElement(offsetParent) && isStaticPositioned(offsetParent)) {
|
|
6256
|
+
offsetParent = getTrueOffsetParent(offsetParent, polyfill);
|
|
6287
6257
|
}
|
|
6288
|
-
if (offsetParent && isLastTraversableNode(offsetParent) && isStaticPositioned
|
|
6258
|
+
if (offsetParent && isLastTraversableNode(offsetParent) && isStaticPositioned(offsetParent) && !isContainingBlock(offsetParent)) {
|
|
6289
6259
|
return win;
|
|
6290
6260
|
}
|
|
6291
6261
|
return offsetParent || getContainingBlock(element) || win;
|
|
6292
6262
|
}
|
|
6293
6263
|
|
|
6294
|
-
const getElementRects
|
|
6295
|
-
const getOffsetParentFn = this.getOffsetParent || getOffsetParent
|
|
6264
|
+
const getElementRects = async function (data) {
|
|
6265
|
+
const getOffsetParentFn = this.getOffsetParent || getOffsetParent;
|
|
6296
6266
|
const getDimensionsFn = this.getDimensions;
|
|
6297
6267
|
const floatingDimensions = await getDimensionsFn(data.floating);
|
|
6298
6268
|
return {
|
|
6299
|
-
reference: getRectRelativeToOffsetParent
|
|
6269
|
+
reference: getRectRelativeToOffsetParent(data.reference, await getOffsetParentFn(data.floating), data.strategy),
|
|
6300
6270
|
floating: {
|
|
6301
6271
|
x: 0,
|
|
6302
6272
|
y: 0,
|
|
@@ -6306,29 +6276,29 @@ const getElementRects$1 = async function (data) {
|
|
|
6306
6276
|
};
|
|
6307
6277
|
};
|
|
6308
6278
|
|
|
6309
|
-
function isRTL
|
|
6279
|
+
function isRTL(element) {
|
|
6310
6280
|
return getComputedStyle$1(element).direction === 'rtl';
|
|
6311
6281
|
}
|
|
6312
6282
|
|
|
6313
|
-
const platform
|
|
6314
|
-
convertOffsetParentRelativeRectToViewportRelativeRect
|
|
6283
|
+
const platform = {
|
|
6284
|
+
convertOffsetParentRelativeRectToViewportRelativeRect,
|
|
6315
6285
|
getDocumentElement,
|
|
6316
|
-
getClippingRect
|
|
6317
|
-
getOffsetParent
|
|
6318
|
-
getElementRects
|
|
6319
|
-
getClientRects
|
|
6320
|
-
getDimensions
|
|
6321
|
-
getScale
|
|
6286
|
+
getClippingRect,
|
|
6287
|
+
getOffsetParent,
|
|
6288
|
+
getElementRects,
|
|
6289
|
+
getClientRects,
|
|
6290
|
+
getDimensions,
|
|
6291
|
+
getScale,
|
|
6322
6292
|
isElement,
|
|
6323
|
-
isRTL
|
|
6293
|
+
isRTL
|
|
6324
6294
|
};
|
|
6325
6295
|
|
|
6326
|
-
function rectsAreEqual
|
|
6296
|
+
function rectsAreEqual(a, b) {
|
|
6327
6297
|
return a.x === b.x && a.y === b.y && a.width === b.width && a.height === b.height;
|
|
6328
6298
|
}
|
|
6329
6299
|
|
|
6330
6300
|
// https://samthor.au/2021/observing-dom/
|
|
6331
|
-
function observeMove
|
|
6301
|
+
function observeMove(element, onMove, ancestorResize) {
|
|
6332
6302
|
let io = null;
|
|
6333
6303
|
let timeoutId;
|
|
6334
6304
|
const root = getDocumentElement(element);
|
|
@@ -6371,13 +6341,22 @@ function observeMove$1(element, onMove) {
|
|
|
6371
6341
|
let isFirstUpdate = true;
|
|
6372
6342
|
function handleObserve(entries) {
|
|
6373
6343
|
const ratio = entries[0].intersectionRatio;
|
|
6344
|
+
|
|
6345
|
+
// The entry is a snapshot, so the reference may have moved since the
|
|
6346
|
+
// intersection was computed (under performance constraints, or between
|
|
6347
|
+
// consecutive frames of a multi-frame layout shift). The reported ratio
|
|
6348
|
+
// and the observed area are stale in that case and cannot be trusted to
|
|
6349
|
+
// detect subsequent movement, so refresh regardless of the ratio.
|
|
6350
|
+
if (!rectsAreEqual(elementRectForRootMargin, element.getBoundingClientRect())) {
|
|
6351
|
+
return refresh();
|
|
6352
|
+
}
|
|
6374
6353
|
if (ratio !== threshold) {
|
|
6375
6354
|
if (!isFirstUpdate) {
|
|
6376
6355
|
return refresh();
|
|
6377
6356
|
}
|
|
6378
6357
|
if (!ratio) {
|
|
6379
|
-
// If the reference is clipped, the ratio is 0. Throttle
|
|
6380
|
-
// to prevent an infinite loop of updates.
|
|
6358
|
+
// If the reference is clipped in place, the ratio is 0. Throttle
|
|
6359
|
+
// the refresh to prevent an infinite loop of updates.
|
|
6381
6360
|
timeoutId = setTimeout(() => {
|
|
6382
6361
|
refresh(false, 1e-7);
|
|
6383
6362
|
}, 1000);
|
|
@@ -6385,16 +6364,6 @@ function observeMove$1(element, onMove) {
|
|
|
6385
6364
|
refresh(false, ratio);
|
|
6386
6365
|
}
|
|
6387
6366
|
}
|
|
6388
|
-
if (ratio === 1 && !rectsAreEqual$1(elementRectForRootMargin, element.getBoundingClientRect())) {
|
|
6389
|
-
// It's possible that even though the ratio is reported as 1, the
|
|
6390
|
-
// element is not actually fully within the IntersectionObserver's root
|
|
6391
|
-
// area anymore. This can happen under performance constraints. This may
|
|
6392
|
-
// be a bug in the browser's IntersectionObserver implementation. To
|
|
6393
|
-
// work around this, we compare the element's bounding rect now with
|
|
6394
|
-
// what it was at the time we created the IntersectionObserver. If they
|
|
6395
|
-
// are not equal then the element moved, so we refresh.
|
|
6396
|
-
refresh();
|
|
6397
|
-
}
|
|
6398
6367
|
isFirstUpdate = false;
|
|
6399
6368
|
}
|
|
6400
6369
|
|
|
@@ -6411,8 +6380,18 @@ function observeMove$1(element, onMove) {
|
|
|
6411
6380
|
}
|
|
6412
6381
|
io.observe(element);
|
|
6413
6382
|
}
|
|
6383
|
+
const win = getWindow(element);
|
|
6384
|
+
// The window is a resize ancestor, so when `ancestorResize` is enabled its
|
|
6385
|
+
// listener already runs the update on resize. Here we only need to rebuild
|
|
6386
|
+
// the `IntersectionObserver` for the new root size, skipping a redundant
|
|
6387
|
+
// update. When `ancestorResize` is disabled, this becomes the sole update.
|
|
6388
|
+
const handleResize = () => refresh(ancestorResize);
|
|
6389
|
+
win.addEventListener('resize', handleResize);
|
|
6414
6390
|
refresh(true);
|
|
6415
|
-
return
|
|
6391
|
+
return () => {
|
|
6392
|
+
win.removeEventListener('resize', handleResize);
|
|
6393
|
+
cleanup();
|
|
6394
|
+
};
|
|
6416
6395
|
}
|
|
6417
6396
|
|
|
6418
6397
|
/**
|
|
@@ -6423,7 +6402,7 @@ function observeMove$1(element, onMove) {
|
|
|
6423
6402
|
* removed from the DOM or hidden from the screen.
|
|
6424
6403
|
* @see https://floating-ui.com/docs/autoUpdate
|
|
6425
6404
|
*/
|
|
6426
|
-
function autoUpdate
|
|
6405
|
+
function autoUpdate(reference, floating, update, options) {
|
|
6427
6406
|
if (options === void 0) {
|
|
6428
6407
|
options = {};
|
|
6429
6408
|
}
|
|
@@ -6434,15 +6413,13 @@ function autoUpdate$1(reference, floating, update, options) {
|
|
|
6434
6413
|
layoutShift = typeof IntersectionObserver === 'function',
|
|
6435
6414
|
animationFrame = false
|
|
6436
6415
|
} = options;
|
|
6437
|
-
const referenceEl = unwrapElement
|
|
6416
|
+
const referenceEl = unwrapElement(reference);
|
|
6438
6417
|
const ancestors = ancestorScroll || ancestorResize ? [...(referenceEl ? getOverflowAncestors(referenceEl) : []), ...(floating ? getOverflowAncestors(floating) : [])] : [];
|
|
6439
6418
|
ancestors.forEach(ancestor => {
|
|
6440
|
-
ancestorScroll && ancestor.addEventListener('scroll', update
|
|
6441
|
-
passive: true
|
|
6442
|
-
});
|
|
6419
|
+
ancestorScroll && ancestor.addEventListener('scroll', update);
|
|
6443
6420
|
ancestorResize && ancestor.addEventListener('resize', update);
|
|
6444
6421
|
});
|
|
6445
|
-
const cleanupIo = referenceEl && layoutShift ? observeMove
|
|
6422
|
+
const cleanupIo = referenceEl && layoutShift ? observeMove(referenceEl, update, ancestorResize) : null;
|
|
6446
6423
|
let reobserveFrame = -1;
|
|
6447
6424
|
let resizeObserver = null;
|
|
6448
6425
|
if (elementResize) {
|
|
@@ -6468,13 +6445,13 @@ function autoUpdate$1(reference, floating, update, options) {
|
|
|
6468
6445
|
}
|
|
6469
6446
|
}
|
|
6470
6447
|
let frameId;
|
|
6471
|
-
let prevRefRect = animationFrame ? getBoundingClientRect
|
|
6448
|
+
let prevRefRect = animationFrame ? getBoundingClientRect(reference) : null;
|
|
6472
6449
|
if (animationFrame) {
|
|
6473
6450
|
frameLoop();
|
|
6474
6451
|
}
|
|
6475
6452
|
function frameLoop() {
|
|
6476
|
-
const nextRefRect = getBoundingClientRect
|
|
6477
|
-
if (prevRefRect && !rectsAreEqual
|
|
6453
|
+
const nextRefRect = getBoundingClientRect(reference);
|
|
6454
|
+
if (prevRefRect && !rectsAreEqual(prevRefRect, nextRefRect)) {
|
|
6478
6455
|
update();
|
|
6479
6456
|
}
|
|
6480
6457
|
prevRefRect = nextRefRect;
|
|
@@ -6503,7 +6480,7 @@ function autoUpdate$1(reference, floating, update, options) {
|
|
|
6503
6480
|
* object may be passed.
|
|
6504
6481
|
* @see https://floating-ui.com/docs/offset
|
|
6505
6482
|
*/
|
|
6506
|
-
const offset$
|
|
6483
|
+
const offset$1 = offset$2;
|
|
6507
6484
|
|
|
6508
6485
|
/**
|
|
6509
6486
|
* Optimizes the visibility of the floating element by shifting it in order to
|
|
@@ -6518,7 +6495,14 @@ const shift = shift$1;
|
|
|
6518
6495
|
* clipping boundary. Alternative to `autoPlacement`.
|
|
6519
6496
|
* @see https://floating-ui.com/docs/flip
|
|
6520
6497
|
*/
|
|
6521
|
-
const flip$
|
|
6498
|
+
const flip$1 = flip$2;
|
|
6499
|
+
|
|
6500
|
+
/**
|
|
6501
|
+
* Provides data to position an inner element of the floating element so that it
|
|
6502
|
+
* appears centered to the reference element.
|
|
6503
|
+
* @see https://floating-ui.com/docs/arrow
|
|
6504
|
+
*/
|
|
6505
|
+
const arrow$2 = arrow$3;
|
|
6522
6506
|
|
|
6523
6507
|
/**
|
|
6524
6508
|
* Built-in `limiter` that will stop `shift()` at a certain point.
|
|
@@ -6529,20 +6513,18 @@ const limitShift = limitShift$1;
|
|
|
6529
6513
|
* Computes the `x` and `y` coordinates that will place the floating element
|
|
6530
6514
|
* next to a given reference element.
|
|
6531
6515
|
*/
|
|
6532
|
-
const computePosition
|
|
6516
|
+
const computePosition = (reference, floating, options) => {
|
|
6533
6517
|
// This caches the expensive `getClippingElementAncestors` function so that
|
|
6534
6518
|
// multiple lifecycle resets re-use the same result. It only lives for a
|
|
6535
6519
|
// single call. If other functions become expensive, we can add them as well.
|
|
6536
6520
|
const cache = new Map();
|
|
6537
|
-
const mergedOptions = {
|
|
6538
|
-
platform: platform$1,
|
|
6539
|
-
...options
|
|
6540
|
-
};
|
|
6521
|
+
const mergedOptions = options != null ? options : {};
|
|
6541
6522
|
const platformWithCache = {
|
|
6523
|
+
...platform,
|
|
6542
6524
|
...mergedOptions.platform,
|
|
6543
6525
|
_c: cache
|
|
6544
6526
|
};
|
|
6545
|
-
return computePosition$
|
|
6527
|
+
return computePosition$1(reference, floating, {
|
|
6546
6528
|
...mergedOptions,
|
|
6547
6529
|
platform: platformWithCache
|
|
6548
6530
|
});
|
|
@@ -6571,8 +6553,8 @@ function useCombinedRefs(...refs) {
|
|
|
6571
6553
|
*/
|
|
6572
6554
|
|
|
6573
6555
|
function setupFloating(reference, floating, options) {
|
|
6574
|
-
return autoUpdate
|
|
6575
|
-
computePosition
|
|
6556
|
+
return autoUpdate(reference, floating, () => {
|
|
6557
|
+
computePosition(reference, floating, options).then(({
|
|
6576
6558
|
x,
|
|
6577
6559
|
y
|
|
6578
6560
|
}) => {
|
|
@@ -6768,7 +6750,7 @@ const Tooltip = /*#__PURE__*/React__default.forwardRef(function TooltipFn({
|
|
|
6768
6750
|
if (open && !disabled && combinedTriggerRef.current && tooltipRef.current) {
|
|
6769
6751
|
cleanup = setupFloating(combinedTriggerRef.current, tooltipRef.current, {
|
|
6770
6752
|
placement,
|
|
6771
|
-
middleware: [offset$
|
|
6753
|
+
middleware: [offset$1(8), flip$1({
|
|
6772
6754
|
fallbackPlacements
|
|
6773
6755
|
}), shift({
|
|
6774
6756
|
limiter: limitShift()
|
|
@@ -9055,7 +9037,7 @@ const Dropdown = /*#__PURE__*/React__default.forwardRef(function DropdownFn({
|
|
|
9055
9037
|
if (popperReference && dropdownRef.current) {
|
|
9056
9038
|
cleanup = setupFloating(popperReference, dropdownRef.current, {
|
|
9057
9039
|
placement,
|
|
9058
|
-
middleware: [flip$
|
|
9040
|
+
middleware: [flip$1(), shift({
|
|
9059
9041
|
limiter: limitShift()
|
|
9060
9042
|
})],
|
|
9061
9043
|
strategy: 'fixed'
|
|
@@ -18197,737 +18179,6 @@ function subYears(date, amount) {
|
|
|
18197
18179
|
return addYears(date, -amount);
|
|
18198
18180
|
}
|
|
18199
18181
|
|
|
18200
|
-
function getCssDimensions(element) {
|
|
18201
|
-
const css = getComputedStyle$1(element);
|
|
18202
|
-
// In testing environments, the `width` and `height` properties are empty
|
|
18203
|
-
// strings for SVG elements, returning NaN. Fallback to `0` in this case.
|
|
18204
|
-
let width = parseFloat(css.width) || 0;
|
|
18205
|
-
let height = parseFloat(css.height) || 0;
|
|
18206
|
-
const hasOffset = isHTMLElement(element);
|
|
18207
|
-
const offsetWidth = hasOffset ? element.offsetWidth : width;
|
|
18208
|
-
const offsetHeight = hasOffset ? element.offsetHeight : height;
|
|
18209
|
-
const shouldFallback = round(width) !== offsetWidth || round(height) !== offsetHeight;
|
|
18210
|
-
if (shouldFallback) {
|
|
18211
|
-
width = offsetWidth;
|
|
18212
|
-
height = offsetHeight;
|
|
18213
|
-
}
|
|
18214
|
-
return {
|
|
18215
|
-
width,
|
|
18216
|
-
height,
|
|
18217
|
-
$: shouldFallback
|
|
18218
|
-
};
|
|
18219
|
-
}
|
|
18220
|
-
|
|
18221
|
-
function unwrapElement(element) {
|
|
18222
|
-
return !isElement(element) ? element.contextElement : element;
|
|
18223
|
-
}
|
|
18224
|
-
|
|
18225
|
-
function getScale(element) {
|
|
18226
|
-
const domElement = unwrapElement(element);
|
|
18227
|
-
if (!isHTMLElement(domElement)) {
|
|
18228
|
-
return createCoords(1);
|
|
18229
|
-
}
|
|
18230
|
-
const rect = domElement.getBoundingClientRect();
|
|
18231
|
-
const {
|
|
18232
|
-
width,
|
|
18233
|
-
height,
|
|
18234
|
-
$
|
|
18235
|
-
} = getCssDimensions(domElement);
|
|
18236
|
-
let x = ($ ? round(rect.width) : rect.width) / width;
|
|
18237
|
-
let y = ($ ? round(rect.height) : rect.height) / height;
|
|
18238
|
-
|
|
18239
|
-
// 0, NaN, or Infinity should always fallback to 1.
|
|
18240
|
-
|
|
18241
|
-
if (!x || !Number.isFinite(x)) {
|
|
18242
|
-
x = 1;
|
|
18243
|
-
}
|
|
18244
|
-
if (!y || !Number.isFinite(y)) {
|
|
18245
|
-
y = 1;
|
|
18246
|
-
}
|
|
18247
|
-
return {
|
|
18248
|
-
x,
|
|
18249
|
-
y
|
|
18250
|
-
};
|
|
18251
|
-
}
|
|
18252
|
-
|
|
18253
|
-
const noOffsets = /*#__PURE__*/createCoords(0);
|
|
18254
|
-
function getVisualOffsets(element) {
|
|
18255
|
-
const win = getWindow(element);
|
|
18256
|
-
if (!isWebKit() || !win.visualViewport) {
|
|
18257
|
-
return noOffsets;
|
|
18258
|
-
}
|
|
18259
|
-
return {
|
|
18260
|
-
x: win.visualViewport.offsetLeft,
|
|
18261
|
-
y: win.visualViewport.offsetTop
|
|
18262
|
-
};
|
|
18263
|
-
}
|
|
18264
|
-
function shouldAddVisualOffsets(element, isFixed, floatingOffsetParent) {
|
|
18265
|
-
if (isFixed === void 0) {
|
|
18266
|
-
isFixed = false;
|
|
18267
|
-
}
|
|
18268
|
-
return !!floatingOffsetParent && isFixed && floatingOffsetParent === getWindow(element);
|
|
18269
|
-
}
|
|
18270
|
-
|
|
18271
|
-
function getBoundingClientRect(element, includeScale, isFixedStrategy, offsetParent) {
|
|
18272
|
-
if (includeScale === void 0) {
|
|
18273
|
-
includeScale = false;
|
|
18274
|
-
}
|
|
18275
|
-
if (isFixedStrategy === void 0) {
|
|
18276
|
-
isFixedStrategy = false;
|
|
18277
|
-
}
|
|
18278
|
-
const clientRect = element.getBoundingClientRect();
|
|
18279
|
-
const domElement = unwrapElement(element);
|
|
18280
|
-
let scale = createCoords(1);
|
|
18281
|
-
if (includeScale) {
|
|
18282
|
-
if (offsetParent) {
|
|
18283
|
-
if (isElement(offsetParent)) {
|
|
18284
|
-
scale = getScale(offsetParent);
|
|
18285
|
-
}
|
|
18286
|
-
} else {
|
|
18287
|
-
scale = getScale(element);
|
|
18288
|
-
}
|
|
18289
|
-
}
|
|
18290
|
-
const visualOffsets = shouldAddVisualOffsets(domElement, isFixedStrategy, offsetParent) ? getVisualOffsets(domElement) : createCoords(0);
|
|
18291
|
-
let x = (clientRect.left + visualOffsets.x) / scale.x;
|
|
18292
|
-
let y = (clientRect.top + visualOffsets.y) / scale.y;
|
|
18293
|
-
let width = clientRect.width / scale.x;
|
|
18294
|
-
let height = clientRect.height / scale.y;
|
|
18295
|
-
if (domElement && offsetParent) {
|
|
18296
|
-
const win = getWindow(domElement);
|
|
18297
|
-
const offsetWin = isElement(offsetParent) ? getWindow(offsetParent) : offsetParent;
|
|
18298
|
-
let currentWin = win;
|
|
18299
|
-
let currentIFrame = getFrameElement(currentWin);
|
|
18300
|
-
while (currentIFrame && offsetWin !== currentWin) {
|
|
18301
|
-
const iframeScale = getScale(currentIFrame);
|
|
18302
|
-
const iframeRect = currentIFrame.getBoundingClientRect();
|
|
18303
|
-
const css = getComputedStyle$1(currentIFrame);
|
|
18304
|
-
const left = iframeRect.left + (currentIFrame.clientLeft + parseFloat(css.paddingLeft)) * iframeScale.x;
|
|
18305
|
-
const top = iframeRect.top + (currentIFrame.clientTop + parseFloat(css.paddingTop)) * iframeScale.y;
|
|
18306
|
-
x *= iframeScale.x;
|
|
18307
|
-
y *= iframeScale.y;
|
|
18308
|
-
width *= iframeScale.x;
|
|
18309
|
-
height *= iframeScale.y;
|
|
18310
|
-
x += left;
|
|
18311
|
-
y += top;
|
|
18312
|
-
currentWin = getWindow(currentIFrame);
|
|
18313
|
-
currentIFrame = getFrameElement(currentWin);
|
|
18314
|
-
}
|
|
18315
|
-
}
|
|
18316
|
-
return rectToClientRect({
|
|
18317
|
-
width,
|
|
18318
|
-
height,
|
|
18319
|
-
x,
|
|
18320
|
-
y
|
|
18321
|
-
});
|
|
18322
|
-
}
|
|
18323
|
-
|
|
18324
|
-
// If <html> has a CSS width greater than the viewport, then this will be
|
|
18325
|
-
// incorrect for RTL.
|
|
18326
|
-
function getWindowScrollBarX(element, rect) {
|
|
18327
|
-
const leftScroll = getNodeScroll(element).scrollLeft;
|
|
18328
|
-
if (!rect) {
|
|
18329
|
-
return getBoundingClientRect(getDocumentElement(element)).left + leftScroll;
|
|
18330
|
-
}
|
|
18331
|
-
return rect.left + leftScroll;
|
|
18332
|
-
}
|
|
18333
|
-
|
|
18334
|
-
function getHTMLOffset(documentElement, scroll) {
|
|
18335
|
-
const htmlRect = documentElement.getBoundingClientRect();
|
|
18336
|
-
const x = htmlRect.left + scroll.scrollLeft - getWindowScrollBarX(documentElement, htmlRect);
|
|
18337
|
-
const y = htmlRect.top + scroll.scrollTop;
|
|
18338
|
-
return {
|
|
18339
|
-
x,
|
|
18340
|
-
y
|
|
18341
|
-
};
|
|
18342
|
-
}
|
|
18343
|
-
|
|
18344
|
-
function convertOffsetParentRelativeRectToViewportRelativeRect(_ref) {
|
|
18345
|
-
let {
|
|
18346
|
-
elements,
|
|
18347
|
-
rect,
|
|
18348
|
-
offsetParent,
|
|
18349
|
-
strategy
|
|
18350
|
-
} = _ref;
|
|
18351
|
-
const isFixed = strategy === 'fixed';
|
|
18352
|
-
const documentElement = getDocumentElement(offsetParent);
|
|
18353
|
-
const topLayer = elements ? isTopLayer(elements.floating) : false;
|
|
18354
|
-
if (offsetParent === documentElement || topLayer && isFixed) {
|
|
18355
|
-
return rect;
|
|
18356
|
-
}
|
|
18357
|
-
let scroll = {
|
|
18358
|
-
scrollLeft: 0,
|
|
18359
|
-
scrollTop: 0
|
|
18360
|
-
};
|
|
18361
|
-
let scale = createCoords(1);
|
|
18362
|
-
const offsets = createCoords(0);
|
|
18363
|
-
const isOffsetParentAnElement = isHTMLElement(offsetParent);
|
|
18364
|
-
if (isOffsetParentAnElement || !isFixed) {
|
|
18365
|
-
if (getNodeName(offsetParent) !== 'body' || isOverflowElement(documentElement)) {
|
|
18366
|
-
scroll = getNodeScroll(offsetParent);
|
|
18367
|
-
}
|
|
18368
|
-
if (isOffsetParentAnElement) {
|
|
18369
|
-
const offsetRect = getBoundingClientRect(offsetParent);
|
|
18370
|
-
scale = getScale(offsetParent);
|
|
18371
|
-
offsets.x = offsetRect.x + offsetParent.clientLeft;
|
|
18372
|
-
offsets.y = offsetRect.y + offsetParent.clientTop;
|
|
18373
|
-
}
|
|
18374
|
-
}
|
|
18375
|
-
const htmlOffset = documentElement && !isOffsetParentAnElement && !isFixed ? getHTMLOffset(documentElement, scroll) : createCoords(0);
|
|
18376
|
-
return {
|
|
18377
|
-
width: rect.width * scale.x,
|
|
18378
|
-
height: rect.height * scale.y,
|
|
18379
|
-
x: rect.x * scale.x - scroll.scrollLeft * scale.x + offsets.x + htmlOffset.x,
|
|
18380
|
-
y: rect.y * scale.y - scroll.scrollTop * scale.y + offsets.y + htmlOffset.y
|
|
18381
|
-
};
|
|
18382
|
-
}
|
|
18383
|
-
|
|
18384
|
-
function getClientRects(element) {
|
|
18385
|
-
return element.getClientRects ? Array.from(element.getClientRects()) : [];
|
|
18386
|
-
}
|
|
18387
|
-
|
|
18388
|
-
// Gets the entire size of the scrollable document area, even extending outside
|
|
18389
|
-
// of the `<html>` and `<body>` rect bounds if horizontally scrollable.
|
|
18390
|
-
function getDocumentRect(html) {
|
|
18391
|
-
const scroll = getNodeScroll(html);
|
|
18392
|
-
const body = html.ownerDocument.body;
|
|
18393
|
-
const width = max$1(html.scrollWidth, html.clientWidth, body.scrollWidth, body.clientWidth);
|
|
18394
|
-
const height = max$1(html.scrollHeight, html.clientHeight, body.scrollHeight, body.clientHeight);
|
|
18395
|
-
let x = -scroll.scrollLeft + getWindowScrollBarX(html);
|
|
18396
|
-
const y = -scroll.scrollTop;
|
|
18397
|
-
if (getComputedStyle$1(body).direction === 'rtl') {
|
|
18398
|
-
x += max$1(html.clientWidth, body.clientWidth) - width;
|
|
18399
|
-
}
|
|
18400
|
-
return {
|
|
18401
|
-
width,
|
|
18402
|
-
height,
|
|
18403
|
-
x,
|
|
18404
|
-
y
|
|
18405
|
-
};
|
|
18406
|
-
}
|
|
18407
|
-
|
|
18408
|
-
// Safety check: ensure the scrollbar space is reasonable in case this
|
|
18409
|
-
// calculation is affected by unusual styles.
|
|
18410
|
-
// Most scrollbars leave 15-18px of space.
|
|
18411
|
-
const SCROLLBAR_MAX = 25;
|
|
18412
|
-
function getViewportRect(element, strategy, rootBoundary) {
|
|
18413
|
-
if (rootBoundary === void 0) {
|
|
18414
|
-
rootBoundary = 'viewport';
|
|
18415
|
-
}
|
|
18416
|
-
const isLayoutViewport = rootBoundary === 'layoutViewport';
|
|
18417
|
-
const win = getWindow(element);
|
|
18418
|
-
const html = getDocumentElement(element);
|
|
18419
|
-
const visualViewport = win.visualViewport;
|
|
18420
|
-
let width = html.clientWidth;
|
|
18421
|
-
let height = html.clientHeight;
|
|
18422
|
-
let x = 0;
|
|
18423
|
-
let y = 0;
|
|
18424
|
-
if (visualViewport) {
|
|
18425
|
-
// Client coordinates are relative to the layout viewport, except in
|
|
18426
|
-
// WebKit with an `absolute` strategy, where they are relative to the
|
|
18427
|
-
// visual viewport.
|
|
18428
|
-
const layoutRelativeClientCoords = !isWebKit() || strategy === 'fixed';
|
|
18429
|
-
if (isLayoutViewport) {
|
|
18430
|
-
if (!layoutRelativeClientCoords) {
|
|
18431
|
-
x = -visualViewport.offsetLeft;
|
|
18432
|
-
y = -visualViewport.offsetTop;
|
|
18433
|
-
}
|
|
18434
|
-
} else {
|
|
18435
|
-
width = visualViewport.width;
|
|
18436
|
-
height = visualViewport.height;
|
|
18437
|
-
if (layoutRelativeClientCoords) {
|
|
18438
|
-
x = visualViewport.offsetLeft;
|
|
18439
|
-
y = visualViewport.offsetTop;
|
|
18440
|
-
}
|
|
18441
|
-
}
|
|
18442
|
-
}
|
|
18443
|
-
const windowScrollbarX = getWindowScrollBarX(html);
|
|
18444
|
-
// `scrollbar-gutter: stable` on the <html> reserves gutter space that shrinks
|
|
18445
|
-
// the visual width but isn't reflected in `html.clientWidth`, so subtract it.
|
|
18446
|
-
// Only the inline-end (right) gutter can hold the scrollbar; `both-edges` also
|
|
18447
|
-
// reserves an empty inline-start gutter that clips nothing, so exclude just
|
|
18448
|
-
// the one scrollbar-side gutter — halve the measured (two-gutter) total. A
|
|
18449
|
-
// left-side scrollbar (`windowScrollbarX > 0`) is already handled by
|
|
18450
|
-
// `getHTMLOffset`/`visualViewport.width`; skip it here.
|
|
18451
|
-
if (windowScrollbarX <= 0) {
|
|
18452
|
-
const doc = html.ownerDocument;
|
|
18453
|
-
const body = doc.body;
|
|
18454
|
-
const bodyStyles = getComputedStyle(body);
|
|
18455
|
-
const bodyMarginInline = doc.compatMode === 'CSS1Compat' ? parseFloat(bodyStyles.marginLeft) + parseFloat(bodyStyles.marginRight) || 0 : 0;
|
|
18456
|
-
const reservedWidth = Math.abs(html.clientWidth - body.clientWidth - bodyMarginInline);
|
|
18457
|
-
const gutter = getComputedStyle(html).scrollbarGutter === 'stable both-edges' ? reservedWidth / 2 : reservedWidth;
|
|
18458
|
-
if (gutter <= SCROLLBAR_MAX) {
|
|
18459
|
-
width -= gutter;
|
|
18460
|
-
}
|
|
18461
|
-
}
|
|
18462
|
-
return {
|
|
18463
|
-
width,
|
|
18464
|
-
height,
|
|
18465
|
-
x,
|
|
18466
|
-
y
|
|
18467
|
-
};
|
|
18468
|
-
}
|
|
18469
|
-
|
|
18470
|
-
// Returns the inner client rect, subtracting scrollbars if present.
|
|
18471
|
-
function getInnerBoundingClientRect(element, strategy) {
|
|
18472
|
-
const clientRect = getBoundingClientRect(element, true, strategy === 'fixed');
|
|
18473
|
-
const top = clientRect.top + element.clientTop;
|
|
18474
|
-
const left = clientRect.left + element.clientLeft;
|
|
18475
|
-
const scale = getScale(element);
|
|
18476
|
-
const width = element.clientWidth * scale.x;
|
|
18477
|
-
const height = element.clientHeight * scale.y;
|
|
18478
|
-
const x = left * scale.x;
|
|
18479
|
-
const y = top * scale.y;
|
|
18480
|
-
return {
|
|
18481
|
-
width,
|
|
18482
|
-
height,
|
|
18483
|
-
x,
|
|
18484
|
-
y
|
|
18485
|
-
};
|
|
18486
|
-
}
|
|
18487
|
-
function getClientRectFromClippingAncestor(element, clippingAncestor, strategy) {
|
|
18488
|
-
let rect;
|
|
18489
|
-
if (clippingAncestor === 'viewport' || clippingAncestor === 'layoutViewport') {
|
|
18490
|
-
rect = getViewportRect(element, strategy, clippingAncestor);
|
|
18491
|
-
} else if (clippingAncestor === 'document') {
|
|
18492
|
-
rect = getDocumentRect(getDocumentElement(element));
|
|
18493
|
-
} else if (isElement(clippingAncestor)) {
|
|
18494
|
-
rect = getInnerBoundingClientRect(clippingAncestor, strategy);
|
|
18495
|
-
} else {
|
|
18496
|
-
const visualOffsets = getVisualOffsets(element);
|
|
18497
|
-
rect = {
|
|
18498
|
-
x: clippingAncestor.x - visualOffsets.x,
|
|
18499
|
-
y: clippingAncestor.y - visualOffsets.y,
|
|
18500
|
-
width: clippingAncestor.width,
|
|
18501
|
-
height: clippingAncestor.height
|
|
18502
|
-
};
|
|
18503
|
-
}
|
|
18504
|
-
return rectToClientRect(rect);
|
|
18505
|
-
}
|
|
18506
|
-
|
|
18507
|
-
// A "clipping ancestor" is an `overflow` element with the characteristic of
|
|
18508
|
-
// clipping (or hiding) child elements. This returns all clipping ancestors
|
|
18509
|
-
// of the given element up the tree.
|
|
18510
|
-
function getClippingElementAncestors(element, cache) {
|
|
18511
|
-
const cachedResult = cache.get(element);
|
|
18512
|
-
if (cachedResult) {
|
|
18513
|
-
return cachedResult;
|
|
18514
|
-
}
|
|
18515
|
-
let result = getOverflowAncestors(element, [], false).filter(el => isElement(el) && getNodeName(el) !== 'body');
|
|
18516
|
-
let lastKeptComputedStyle = null;
|
|
18517
|
-
const elementIsFixed = getComputedStyle$1(element).position === 'fixed';
|
|
18518
|
-
let currentNode = elementIsFixed ? getParentNode(element) : element;
|
|
18519
|
-
|
|
18520
|
-
// https://developer.mozilla.org/en-US/docs/Web/CSS/Containing_block#identifying_the_containing_block
|
|
18521
|
-
while (isElement(currentNode) && !isLastTraversableNode(currentNode)) {
|
|
18522
|
-
const computedStyle = getComputedStyle$1(currentNode);
|
|
18523
|
-
const currentNodeIsContaining = isContainingBlock(currentNode);
|
|
18524
|
-
// Position of the containing block chain below the current node. A fixed
|
|
18525
|
-
// element whose containing block hasn't been found yet is a fixed chain.
|
|
18526
|
-
const lastPosition = lastKeptComputedStyle ? lastKeptComputedStyle.position : elementIsFixed ? 'fixed' : '';
|
|
18527
|
-
|
|
18528
|
-
// A non-containing ancestor does not clip the element when the chain
|
|
18529
|
-
// below it escapes it: a fixed chain escapes all ancestors up to the
|
|
18530
|
-
// next containing block, an absolute chain escapes static ancestors.
|
|
18531
|
-
const shouldDropCurrentNode = !currentNodeIsContaining && (lastPosition === 'fixed' || lastPosition === 'absolute' && computedStyle.position === 'static');
|
|
18532
|
-
if (shouldDropCurrentNode) {
|
|
18533
|
-
// Drop non-containing blocks.
|
|
18534
|
-
result = result.filter(ancestor => ancestor !== currentNode);
|
|
18535
|
-
} else {
|
|
18536
|
-
// The kept node carries the chain position for the next iteration.
|
|
18537
|
-
lastKeptComputedStyle = computedStyle;
|
|
18538
|
-
}
|
|
18539
|
-
currentNode = getParentNode(currentNode);
|
|
18540
|
-
}
|
|
18541
|
-
cache.set(element, result);
|
|
18542
|
-
return result;
|
|
18543
|
-
}
|
|
18544
|
-
|
|
18545
|
-
// Gets the maximum area that the element is visible in due to any number of
|
|
18546
|
-
// clipping ancestors.
|
|
18547
|
-
function getClippingRect(_ref) {
|
|
18548
|
-
let {
|
|
18549
|
-
element,
|
|
18550
|
-
boundary,
|
|
18551
|
-
rootBoundary,
|
|
18552
|
-
strategy
|
|
18553
|
-
} = _ref;
|
|
18554
|
-
const elementClippingAncestors = boundary === 'clippingAncestors' ? isTopLayer(element) ? [] : getClippingElementAncestors(element, this._c) : [].concat(boundary);
|
|
18555
|
-
const clippingAncestors = [...elementClippingAncestors, rootBoundary];
|
|
18556
|
-
const firstRect = getClientRectFromClippingAncestor(element, clippingAncestors[0], strategy);
|
|
18557
|
-
let top = firstRect.top;
|
|
18558
|
-
let right = firstRect.right;
|
|
18559
|
-
let bottom = firstRect.bottom;
|
|
18560
|
-
let left = firstRect.left;
|
|
18561
|
-
for (let i = 1; i < clippingAncestors.length; i++) {
|
|
18562
|
-
const rect = getClientRectFromClippingAncestor(element, clippingAncestors[i], strategy);
|
|
18563
|
-
top = max$1(rect.top, top);
|
|
18564
|
-
right = min$1(rect.right, right);
|
|
18565
|
-
bottom = min$1(rect.bottom, bottom);
|
|
18566
|
-
left = max$1(rect.left, left);
|
|
18567
|
-
}
|
|
18568
|
-
return {
|
|
18569
|
-
width: right - left,
|
|
18570
|
-
height: bottom - top,
|
|
18571
|
-
x: left,
|
|
18572
|
-
y: top
|
|
18573
|
-
};
|
|
18574
|
-
}
|
|
18575
|
-
|
|
18576
|
-
function getDimensions(element) {
|
|
18577
|
-
const {
|
|
18578
|
-
width,
|
|
18579
|
-
height
|
|
18580
|
-
} = getCssDimensions(element);
|
|
18581
|
-
return {
|
|
18582
|
-
width,
|
|
18583
|
-
height
|
|
18584
|
-
};
|
|
18585
|
-
}
|
|
18586
|
-
|
|
18587
|
-
function getRectRelativeToOffsetParent(element, offsetParent, strategy) {
|
|
18588
|
-
const isOffsetParentAnElement = isHTMLElement(offsetParent);
|
|
18589
|
-
const documentElement = getDocumentElement(offsetParent);
|
|
18590
|
-
const isFixed = strategy === 'fixed';
|
|
18591
|
-
const rect = getBoundingClientRect(element, true, isFixed, offsetParent);
|
|
18592
|
-
let scroll = {
|
|
18593
|
-
scrollLeft: 0,
|
|
18594
|
-
scrollTop: 0
|
|
18595
|
-
};
|
|
18596
|
-
const offsets = createCoords(0);
|
|
18597
|
-
if (isOffsetParentAnElement || !isFixed) {
|
|
18598
|
-
if (getNodeName(offsetParent) !== 'body' || isOverflowElement(documentElement)) {
|
|
18599
|
-
scroll = getNodeScroll(offsetParent);
|
|
18600
|
-
}
|
|
18601
|
-
if (isOffsetParentAnElement) {
|
|
18602
|
-
const offsetRect = getBoundingClientRect(offsetParent, true, isFixed, offsetParent);
|
|
18603
|
-
offsets.x = offsetRect.x + offsetParent.clientLeft;
|
|
18604
|
-
offsets.y = offsetRect.y + offsetParent.clientTop;
|
|
18605
|
-
}
|
|
18606
|
-
}
|
|
18607
|
-
|
|
18608
|
-
// If the <body> scrollbar appears on the left (e.g. RTL systems). Use
|
|
18609
|
-
// Firefox with layout.scrollbar.side = 3 in about:config to test this.
|
|
18610
|
-
if (!isOffsetParentAnElement && documentElement) {
|
|
18611
|
-
offsets.x = getWindowScrollBarX(documentElement);
|
|
18612
|
-
}
|
|
18613
|
-
const htmlOffset = documentElement && !isOffsetParentAnElement && !isFixed ? getHTMLOffset(documentElement, scroll) : createCoords(0);
|
|
18614
|
-
const x = rect.left + scroll.scrollLeft - offsets.x - htmlOffset.x;
|
|
18615
|
-
const y = rect.top + scroll.scrollTop - offsets.y - htmlOffset.y;
|
|
18616
|
-
return {
|
|
18617
|
-
x,
|
|
18618
|
-
y,
|
|
18619
|
-
width: rect.width,
|
|
18620
|
-
height: rect.height
|
|
18621
|
-
};
|
|
18622
|
-
}
|
|
18623
|
-
|
|
18624
|
-
function isStaticPositioned(element) {
|
|
18625
|
-
return getComputedStyle$1(element).position === 'static';
|
|
18626
|
-
}
|
|
18627
|
-
|
|
18628
|
-
function getTrueOffsetParent(element, polyfill) {
|
|
18629
|
-
if (!isHTMLElement(element) || getComputedStyle$1(element).position === 'fixed') {
|
|
18630
|
-
return null;
|
|
18631
|
-
}
|
|
18632
|
-
if (polyfill) {
|
|
18633
|
-
return polyfill(element);
|
|
18634
|
-
}
|
|
18635
|
-
let rawOffsetParent = element.offsetParent;
|
|
18636
|
-
|
|
18637
|
-
// Firefox returns the <html> element as the offsetParent if it's non-static,
|
|
18638
|
-
// while Chrome and Safari return the <body> element. The <body> element must
|
|
18639
|
-
// be used to perform the correct calculations even if the <html> element is
|
|
18640
|
-
// non-static.
|
|
18641
|
-
if (getDocumentElement(element) === rawOffsetParent) {
|
|
18642
|
-
rawOffsetParent = rawOffsetParent.ownerDocument.body;
|
|
18643
|
-
}
|
|
18644
|
-
return rawOffsetParent;
|
|
18645
|
-
}
|
|
18646
|
-
|
|
18647
|
-
// Gets the closest ancestor positioned element. Handles some edge cases,
|
|
18648
|
-
// such as table ancestors and cross browser bugs.
|
|
18649
|
-
function getOffsetParent(element, polyfill) {
|
|
18650
|
-
const win = getWindow(element);
|
|
18651
|
-
if (isTopLayer(element)) {
|
|
18652
|
-
return win;
|
|
18653
|
-
}
|
|
18654
|
-
if (!isHTMLElement(element)) {
|
|
18655
|
-
let svgOffsetParent = getParentNode(element);
|
|
18656
|
-
while (svgOffsetParent && !isLastTraversableNode(svgOffsetParent)) {
|
|
18657
|
-
if (isElement(svgOffsetParent) && !isStaticPositioned(svgOffsetParent)) {
|
|
18658
|
-
return svgOffsetParent;
|
|
18659
|
-
}
|
|
18660
|
-
svgOffsetParent = getParentNode(svgOffsetParent);
|
|
18661
|
-
}
|
|
18662
|
-
return win;
|
|
18663
|
-
}
|
|
18664
|
-
let offsetParent = getTrueOffsetParent(element, polyfill);
|
|
18665
|
-
while (offsetParent && isTableElement(offsetParent) && isStaticPositioned(offsetParent)) {
|
|
18666
|
-
offsetParent = getTrueOffsetParent(offsetParent, polyfill);
|
|
18667
|
-
}
|
|
18668
|
-
if (offsetParent && isLastTraversableNode(offsetParent) && isStaticPositioned(offsetParent) && !isContainingBlock(offsetParent)) {
|
|
18669
|
-
return win;
|
|
18670
|
-
}
|
|
18671
|
-
return offsetParent || getContainingBlock(element) || win;
|
|
18672
|
-
}
|
|
18673
|
-
|
|
18674
|
-
const getElementRects = async function (data) {
|
|
18675
|
-
const getOffsetParentFn = this.getOffsetParent || getOffsetParent;
|
|
18676
|
-
const getDimensionsFn = this.getDimensions;
|
|
18677
|
-
const floatingDimensions = await getDimensionsFn(data.floating);
|
|
18678
|
-
return {
|
|
18679
|
-
reference: getRectRelativeToOffsetParent(data.reference, await getOffsetParentFn(data.floating), data.strategy),
|
|
18680
|
-
floating: {
|
|
18681
|
-
x: 0,
|
|
18682
|
-
y: 0,
|
|
18683
|
-
width: floatingDimensions.width,
|
|
18684
|
-
height: floatingDimensions.height
|
|
18685
|
-
}
|
|
18686
|
-
};
|
|
18687
|
-
};
|
|
18688
|
-
|
|
18689
|
-
function isRTL(element) {
|
|
18690
|
-
return getComputedStyle$1(element).direction === 'rtl';
|
|
18691
|
-
}
|
|
18692
|
-
|
|
18693
|
-
const platform = {
|
|
18694
|
-
convertOffsetParentRelativeRectToViewportRelativeRect,
|
|
18695
|
-
getDocumentElement,
|
|
18696
|
-
getClippingRect,
|
|
18697
|
-
getOffsetParent,
|
|
18698
|
-
getElementRects,
|
|
18699
|
-
getClientRects,
|
|
18700
|
-
getDimensions,
|
|
18701
|
-
getScale,
|
|
18702
|
-
isElement,
|
|
18703
|
-
isRTL
|
|
18704
|
-
};
|
|
18705
|
-
|
|
18706
|
-
function rectsAreEqual(a, b) {
|
|
18707
|
-
return a.x === b.x && a.y === b.y && a.width === b.width && a.height === b.height;
|
|
18708
|
-
}
|
|
18709
|
-
|
|
18710
|
-
// https://samthor.au/2021/observing-dom/
|
|
18711
|
-
function observeMove(element, onMove, ancestorResize) {
|
|
18712
|
-
let io = null;
|
|
18713
|
-
let timeoutId;
|
|
18714
|
-
const root = getDocumentElement(element);
|
|
18715
|
-
function cleanup() {
|
|
18716
|
-
var _io;
|
|
18717
|
-
clearTimeout(timeoutId);
|
|
18718
|
-
(_io = io) == null || _io.disconnect();
|
|
18719
|
-
io = null;
|
|
18720
|
-
}
|
|
18721
|
-
function refresh(skip, threshold) {
|
|
18722
|
-
if (skip === void 0) {
|
|
18723
|
-
skip = false;
|
|
18724
|
-
}
|
|
18725
|
-
if (threshold === void 0) {
|
|
18726
|
-
threshold = 1;
|
|
18727
|
-
}
|
|
18728
|
-
cleanup();
|
|
18729
|
-
const elementRectForRootMargin = element.getBoundingClientRect();
|
|
18730
|
-
const {
|
|
18731
|
-
left,
|
|
18732
|
-
top,
|
|
18733
|
-
width,
|
|
18734
|
-
height
|
|
18735
|
-
} = elementRectForRootMargin;
|
|
18736
|
-
if (!skip) {
|
|
18737
|
-
onMove();
|
|
18738
|
-
}
|
|
18739
|
-
if (!width || !height) {
|
|
18740
|
-
return;
|
|
18741
|
-
}
|
|
18742
|
-
const insetTop = floor(top);
|
|
18743
|
-
const insetRight = floor(root.clientWidth - (left + width));
|
|
18744
|
-
const insetBottom = floor(root.clientHeight - (top + height));
|
|
18745
|
-
const insetLeft = floor(left);
|
|
18746
|
-
const rootMargin = -insetTop + "px " + -insetRight + "px " + -insetBottom + "px " + -insetLeft + "px";
|
|
18747
|
-
const options = {
|
|
18748
|
-
rootMargin,
|
|
18749
|
-
threshold: max$1(0, min$1(1, threshold)) || 1
|
|
18750
|
-
};
|
|
18751
|
-
let isFirstUpdate = true;
|
|
18752
|
-
function handleObserve(entries) {
|
|
18753
|
-
const ratio = entries[0].intersectionRatio;
|
|
18754
|
-
|
|
18755
|
-
// The entry is a snapshot, so the reference may have moved since the
|
|
18756
|
-
// intersection was computed (under performance constraints, or between
|
|
18757
|
-
// consecutive frames of a multi-frame layout shift). The reported ratio
|
|
18758
|
-
// and the observed area are stale in that case and cannot be trusted to
|
|
18759
|
-
// detect subsequent movement, so refresh regardless of the ratio.
|
|
18760
|
-
if (!rectsAreEqual(elementRectForRootMargin, element.getBoundingClientRect())) {
|
|
18761
|
-
return refresh();
|
|
18762
|
-
}
|
|
18763
|
-
if (ratio !== threshold) {
|
|
18764
|
-
if (!isFirstUpdate) {
|
|
18765
|
-
return refresh();
|
|
18766
|
-
}
|
|
18767
|
-
if (!ratio) {
|
|
18768
|
-
// If the reference is clipped in place, the ratio is 0. Throttle
|
|
18769
|
-
// the refresh to prevent an infinite loop of updates.
|
|
18770
|
-
timeoutId = setTimeout(() => {
|
|
18771
|
-
refresh(false, 1e-7);
|
|
18772
|
-
}, 1000);
|
|
18773
|
-
} else {
|
|
18774
|
-
refresh(false, ratio);
|
|
18775
|
-
}
|
|
18776
|
-
}
|
|
18777
|
-
isFirstUpdate = false;
|
|
18778
|
-
}
|
|
18779
|
-
|
|
18780
|
-
// Older browsers don't support a `document` as the root and will throw an
|
|
18781
|
-
// error.
|
|
18782
|
-
try {
|
|
18783
|
-
io = new IntersectionObserver(handleObserve, {
|
|
18784
|
-
...options,
|
|
18785
|
-
// Handle <iframe>s
|
|
18786
|
-
root: root.ownerDocument
|
|
18787
|
-
});
|
|
18788
|
-
} catch (_e) {
|
|
18789
|
-
io = new IntersectionObserver(handleObserve, options);
|
|
18790
|
-
}
|
|
18791
|
-
io.observe(element);
|
|
18792
|
-
}
|
|
18793
|
-
const win = getWindow(element);
|
|
18794
|
-
// The window is a resize ancestor, so when `ancestorResize` is enabled its
|
|
18795
|
-
// listener already runs the update on resize. Here we only need to rebuild
|
|
18796
|
-
// the `IntersectionObserver` for the new root size, skipping a redundant
|
|
18797
|
-
// update. When `ancestorResize` is disabled, this becomes the sole update.
|
|
18798
|
-
const handleResize = () => refresh(ancestorResize);
|
|
18799
|
-
win.addEventListener('resize', handleResize);
|
|
18800
|
-
refresh(true);
|
|
18801
|
-
return () => {
|
|
18802
|
-
win.removeEventListener('resize', handleResize);
|
|
18803
|
-
cleanup();
|
|
18804
|
-
};
|
|
18805
|
-
}
|
|
18806
|
-
|
|
18807
|
-
/**
|
|
18808
|
-
* Automatically updates the position of the floating element when necessary.
|
|
18809
|
-
* Should only be called when the floating element is mounted on the DOM or
|
|
18810
|
-
* visible on the screen.
|
|
18811
|
-
* @returns cleanup function that should be invoked when the floating element is
|
|
18812
|
-
* removed from the DOM or hidden from the screen.
|
|
18813
|
-
* @see https://floating-ui.com/docs/autoUpdate
|
|
18814
|
-
*/
|
|
18815
|
-
function autoUpdate(reference, floating, update, options) {
|
|
18816
|
-
if (options === void 0) {
|
|
18817
|
-
options = {};
|
|
18818
|
-
}
|
|
18819
|
-
const {
|
|
18820
|
-
ancestorScroll = true,
|
|
18821
|
-
ancestorResize = true,
|
|
18822
|
-
elementResize = typeof ResizeObserver === 'function',
|
|
18823
|
-
layoutShift = typeof IntersectionObserver === 'function',
|
|
18824
|
-
animationFrame = false
|
|
18825
|
-
} = options;
|
|
18826
|
-
const referenceEl = unwrapElement(reference);
|
|
18827
|
-
const ancestors = ancestorScroll || ancestorResize ? [...(referenceEl ? getOverflowAncestors(referenceEl) : []), ...(floating ? getOverflowAncestors(floating) : [])] : [];
|
|
18828
|
-
ancestors.forEach(ancestor => {
|
|
18829
|
-
ancestorScroll && ancestor.addEventListener('scroll', update);
|
|
18830
|
-
ancestorResize && ancestor.addEventListener('resize', update);
|
|
18831
|
-
});
|
|
18832
|
-
const cleanupIo = referenceEl && layoutShift ? observeMove(referenceEl, update, ancestorResize) : null;
|
|
18833
|
-
let reobserveFrame = -1;
|
|
18834
|
-
let resizeObserver = null;
|
|
18835
|
-
if (elementResize) {
|
|
18836
|
-
resizeObserver = new ResizeObserver(_ref => {
|
|
18837
|
-
let [firstEntry] = _ref;
|
|
18838
|
-
if (firstEntry && firstEntry.target === referenceEl && resizeObserver && floating) {
|
|
18839
|
-
// Prevent update loops when using the `size` middleware.
|
|
18840
|
-
// https://github.com/floating-ui/floating-ui/issues/1740
|
|
18841
|
-
resizeObserver.unobserve(floating);
|
|
18842
|
-
cancelAnimationFrame(reobserveFrame);
|
|
18843
|
-
reobserveFrame = requestAnimationFrame(() => {
|
|
18844
|
-
var _resizeObserver;
|
|
18845
|
-
(_resizeObserver = resizeObserver) == null || _resizeObserver.observe(floating);
|
|
18846
|
-
});
|
|
18847
|
-
}
|
|
18848
|
-
update();
|
|
18849
|
-
});
|
|
18850
|
-
if (referenceEl && !animationFrame) {
|
|
18851
|
-
resizeObserver.observe(referenceEl);
|
|
18852
|
-
}
|
|
18853
|
-
if (floating) {
|
|
18854
|
-
resizeObserver.observe(floating);
|
|
18855
|
-
}
|
|
18856
|
-
}
|
|
18857
|
-
let frameId;
|
|
18858
|
-
let prevRefRect = animationFrame ? getBoundingClientRect(reference) : null;
|
|
18859
|
-
if (animationFrame) {
|
|
18860
|
-
frameLoop();
|
|
18861
|
-
}
|
|
18862
|
-
function frameLoop() {
|
|
18863
|
-
const nextRefRect = getBoundingClientRect(reference);
|
|
18864
|
-
if (prevRefRect && !rectsAreEqual(prevRefRect, nextRefRect)) {
|
|
18865
|
-
update();
|
|
18866
|
-
}
|
|
18867
|
-
prevRefRect = nextRefRect;
|
|
18868
|
-
frameId = requestAnimationFrame(frameLoop);
|
|
18869
|
-
}
|
|
18870
|
-
update();
|
|
18871
|
-
return () => {
|
|
18872
|
-
var _resizeObserver2;
|
|
18873
|
-
ancestors.forEach(ancestor => {
|
|
18874
|
-
ancestorScroll && ancestor.removeEventListener('scroll', update);
|
|
18875
|
-
ancestorResize && ancestor.removeEventListener('resize', update);
|
|
18876
|
-
});
|
|
18877
|
-
cleanupIo == null || cleanupIo();
|
|
18878
|
-
(_resizeObserver2 = resizeObserver) == null || _resizeObserver2.disconnect();
|
|
18879
|
-
resizeObserver = null;
|
|
18880
|
-
if (animationFrame) {
|
|
18881
|
-
cancelAnimationFrame(frameId);
|
|
18882
|
-
}
|
|
18883
|
-
};
|
|
18884
|
-
}
|
|
18885
|
-
|
|
18886
|
-
/**
|
|
18887
|
-
* Modifies the placement by translating the floating element along the
|
|
18888
|
-
* specified axes.
|
|
18889
|
-
* A number (shorthand for `mainAxis` or distance), or an axes configuration
|
|
18890
|
-
* object may be passed.
|
|
18891
|
-
* @see https://floating-ui.com/docs/offset
|
|
18892
|
-
*/
|
|
18893
|
-
const offset$1 = offset$3;
|
|
18894
|
-
|
|
18895
|
-
/**
|
|
18896
|
-
* Optimizes the visibility of the floating element by flipping the `placement`
|
|
18897
|
-
* in order to keep it in view when the preferred placement(s) will overflow the
|
|
18898
|
-
* clipping boundary. Alternative to `autoPlacement`.
|
|
18899
|
-
* @see https://floating-ui.com/docs/flip
|
|
18900
|
-
*/
|
|
18901
|
-
const flip$1 = flip$3;
|
|
18902
|
-
|
|
18903
|
-
/**
|
|
18904
|
-
* Provides data to position an inner element of the floating element so that it
|
|
18905
|
-
* appears centered to the reference element.
|
|
18906
|
-
* @see https://floating-ui.com/docs/arrow
|
|
18907
|
-
*/
|
|
18908
|
-
const arrow$2 = arrow$3;
|
|
18909
|
-
|
|
18910
|
-
/**
|
|
18911
|
-
* Computes the `x` and `y` coordinates that will place the floating element
|
|
18912
|
-
* next to a given reference element.
|
|
18913
|
-
*/
|
|
18914
|
-
const computePosition = (reference, floating, options) => {
|
|
18915
|
-
// This caches the expensive `getClippingElementAncestors` function so that
|
|
18916
|
-
// multiple lifecycle resets re-use the same result. It only lives for a
|
|
18917
|
-
// single call. If other functions become expensive, we can add them as well.
|
|
18918
|
-
const cache = new Map();
|
|
18919
|
-
const mergedOptions = options != null ? options : {};
|
|
18920
|
-
const platformWithCache = {
|
|
18921
|
-
...platform,
|
|
18922
|
-
...mergedOptions.platform,
|
|
18923
|
-
_c: cache
|
|
18924
|
-
};
|
|
18925
|
-
return computePosition$2(reference, floating, {
|
|
18926
|
-
...mergedOptions,
|
|
18927
|
-
platform: platformWithCache
|
|
18928
|
-
});
|
|
18929
|
-
};
|
|
18930
|
-
|
|
18931
18182
|
var isClient = typeof document !== 'undefined';
|
|
18932
18183
|
|
|
18933
18184
|
var noop = function noop() {};
|
|
@@ -24933,7 +24184,7 @@ const DateTimePickerInput = /*#__PURE__*/React__default.forwardRef(function Date
|
|
|
24933
24184
|
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";
|
|
24934
24185
|
styleInject(css_248z);
|
|
24935
24186
|
|
|
24936
|
-
const DEFAULT_MODIFIERS = [flip$
|
|
24187
|
+
const DEFAULT_MODIFIERS = [flip$1({
|
|
24937
24188
|
fallbackPlacements: ['bottom']
|
|
24938
24189
|
}), shift({
|
|
24939
24190
|
limiter: limitShift()
|
|
@@ -26530,7 +25781,7 @@ const Popper = /*#__PURE__*/React__default.forwardRef(function PopperFn({
|
|
|
26530
25781
|
if (popperRef.current) {
|
|
26531
25782
|
cleanup = setupFloating(virtualEl || anchorElement, popperRef.current, {
|
|
26532
25783
|
placement,
|
|
26533
|
-
middleware: [offset$
|
|
25784
|
+
middleware: [offset$1(8), !virtualEl && flip$1({
|
|
26534
25785
|
fallbackPlacements: ['bottom']
|
|
26535
25786
|
}), shift({
|
|
26536
25787
|
limiter: limitShift()
|