react-native-auto-positioned-popup 1.0.18 → 1.1.1
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.
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"AutoPositionedPopup.d.ts","sourceRoot":"","sources":["../src/AutoPositionedPopup.tsx"],"names":[],"mappings":"AAAA,OAAO,KAYN,MAAM,OAAO,CAAC;AAcf,OAAO,EAAC,wBAAwB,EAAqB,MAAM,4BAA4B,CAAC;AAuRxF,QAAA,MAAM,mBAAmB,
|
|
1
|
+
{"version":3,"file":"AutoPositionedPopup.d.ts","sourceRoot":"","sources":["../src/AutoPositionedPopup.tsx"],"names":[],"mappings":"AAAA,OAAO,KAYN,MAAM,OAAO,CAAC;AAcf,OAAO,EAAC,wBAAwB,EAAqB,MAAM,4BAA4B,CAAC;AAuRxF,QAAA,MAAM,mBAAmB,qFAk0BxB,CAAC;AAEF,eAAe,mBAAmB,CAAC"}
|
|
@@ -35,7 +35,7 @@ const ListItem = memo(({ updateState, item, index, selectedItem, }) => {
|
|
|
35
35
|
}, [rootViews]);
|
|
36
36
|
return useMemo(() => {
|
|
37
37
|
// console.log('AutoPositionedPopup.tsx ListItem=', {index, item, selectedItem});
|
|
38
|
-
const isSelected = item.id === (selectedItem === null || selectedItem === void 0 ? void 0 : selectedItem.id);
|
|
38
|
+
const isSelected = item.id === (selectedItem === null || selectedItem === void 0 ? void 0 : selectedItem.id) || item.title === (selectedItem === null || selectedItem === void 0 ? void 0 : selectedItem.title);
|
|
39
39
|
return (<TouchableOpacity key={item.id} style={[
|
|
40
40
|
styles.commonModalRow,
|
|
41
41
|
{ backgroundColor: isSelected ? 'rgba(116, 116, 128, 0.08)' : 'transparent' },
|
|
@@ -262,7 +262,7 @@ const AutoPositionedPopup = memo(forwardRef((props, parentRef) => {
|
|
|
262
262
|
};
|
|
263
263
|
}, []);
|
|
264
264
|
useEffect(() => {
|
|
265
|
-
console.log('AutoPositionedPopup rootViews=', rootViews);
|
|
265
|
+
console.log('AutoPositionedPopup rootViews=', { tag, rootViews });
|
|
266
266
|
rootViewsRef.current = rootViews;
|
|
267
267
|
if (rootViews.length === 0) {
|
|
268
268
|
hasAddedRootView.current = false;
|
|
@@ -331,6 +331,20 @@ const AutoPositionedPopup = memo(forwardRef((props, parentRef) => {
|
|
|
331
331
|
// }
|
|
332
332
|
return;
|
|
333
333
|
}
|
|
334
|
+
const getStatusBarHeight = () => {
|
|
335
|
+
if (Platform.OS === 'android') {
|
|
336
|
+
// Android: Use StatusBar.currentHeight API
|
|
337
|
+
return StatusBar.currentHeight || 24; // Fallback to 24 if undefined
|
|
338
|
+
}
|
|
339
|
+
else {
|
|
340
|
+
// iOS: Calculate from screen vs window height difference
|
|
341
|
+
const { height: screenHeightFull } = Dimensions.get('screen');
|
|
342
|
+
const { height: windowHeight } = Dimensions.get('window');
|
|
343
|
+
return screenHeightFull - windowHeight; // Safe area top (status bar)
|
|
344
|
+
}
|
|
345
|
+
};
|
|
346
|
+
// Get accurate status bar height for both iOS and Android
|
|
347
|
+
const statusBarHeight = getStatusBarHeight();
|
|
334
348
|
if (useTextInput) {
|
|
335
349
|
if (isKeyboardFullyShown && hasAddedRootView.current && !hasShownRootView.current && state.isFocus) {
|
|
336
350
|
// CRITICAL FIX FOR KEYBOARD POSITION CALCULATION
|
|
@@ -374,11 +388,11 @@ const AutoPositionedPopup = memo(forwardRef((props, parentRef) => {
|
|
|
374
388
|
// 1. ALWAYS try to show popup ABOVE the input field first
|
|
375
389
|
// 2. Only if that goes off the top of screen, show BELOW instead
|
|
376
390
|
// 3. Don't cover/overlap the input field
|
|
377
|
-
let popupY = y - listLayout.height; // Default: above input field
|
|
391
|
+
let popupY = y - listLayout.height + statusBarHeight; // Default: above input field
|
|
378
392
|
// Check if showing above would go off the top of screen
|
|
379
|
-
if (popupY <
|
|
393
|
+
if (popupY < statusBarHeight) {
|
|
380
394
|
console.log('AutoPositionedPopup with keyboard: would go off screen top, showing BELOW instead');
|
|
381
|
-
popupY = y + height; // Show below input field
|
|
395
|
+
popupY = y + height + statusBarHeight; // Show below input field
|
|
382
396
|
// Also check if showing below would go off the bottom
|
|
383
397
|
const maxY = screenHeight - listLayout.height;
|
|
384
398
|
if (popupY > maxY) {
|
|
@@ -418,180 +432,53 @@ const AutoPositionedPopup = memo(forwardRef((props, parentRef) => {
|
|
|
418
432
|
}
|
|
419
433
|
else {
|
|
420
434
|
if (state.isFocus) {
|
|
435
|
+
if (isKeyboardFullyShown) {
|
|
436
|
+
Keyboard.dismiss();
|
|
437
|
+
return;
|
|
438
|
+
}
|
|
421
439
|
(_a = refAutoPositionedPopup.current) === null || _a === void 0 ? void 0 : _a.measureInWindow((x, y, width, height) => {
|
|
422
440
|
console.log('AutoPositionedPopup !useTextInput measureInWindow=', { x, y, width, height });
|
|
423
|
-
//
|
|
441
|
+
// CORRECT POSITIONING LOGIC (as per user requirement)
|
|
442
|
+
// Default: show popup ABOVE the input field
|
|
443
|
+
// Only if that goes off the top of screen (considering status bar), show BELOW instead
|
|
424
444
|
const calculateOptimalPosition = (componentY, componentHeight, popupHeight) => {
|
|
425
|
-
console.log('AutoPositionedPopup
|
|
426
|
-
// Use window height (visible area) instead of screen height
|
|
427
|
-
const
|
|
428
|
-
const visibleAreaCenter = windowHeight / 2;
|
|
429
|
-
// Cross-platform status bar height handling
|
|
430
|
-
const getStatusBarHeight = () => {
|
|
431
|
-
if (Platform.OS === 'android') {
|
|
432
|
-
return StatusBar.currentHeight || 24; // Android default
|
|
433
|
-
}
|
|
434
|
-
else {
|
|
435
|
-
// iOS status bar heights vary by device
|
|
436
|
-
const { height: screenHeight } = Dimensions.get('screen');
|
|
437
|
-
const { height: windowHeightLocal } = Dimensions.get('window');
|
|
438
|
-
return screenHeight - windowHeightLocal; // Safe area top
|
|
439
|
-
}
|
|
440
|
-
};
|
|
441
|
-
const statusBarHeight = getStatusBarHeight();
|
|
442
|
-
console.log('AutoPositionedPopup 🔥 Cross-platform StatusBar height:', statusBarHeight, 'Platform:', Platform.OS);
|
|
443
|
-
// Calculate component center point as requested
|
|
444
|
-
const componentCenterY = componentY + componentHeight / 2;
|
|
445
|
+
console.log('AutoPositionedPopup calculateOptimalPosition executing');
|
|
446
|
+
// Use window height (visible area) instead of screen height
|
|
447
|
+
const screenHeight = Dimensions.get('window').height;
|
|
445
448
|
console.log('AutoPositionedPopup positioning data:', {
|
|
446
|
-
|
|
447
|
-
visibleAreaCenter,
|
|
448
|
-
componentCenterY,
|
|
449
|
+
screenHeight,
|
|
449
450
|
componentY,
|
|
450
451
|
componentHeight,
|
|
451
452
|
popupHeight,
|
|
452
|
-
statusBarHeight
|
|
453
|
-
});
|
|
454
|
-
let showAbove = false;
|
|
455
|
-
let finalY = componentY + componentHeight; // Default fallback: show below
|
|
456
|
-
// CORRECTED LOGIC: Calculate actual usable space considering status bar
|
|
457
|
-
const rawSpaceAbove = componentY;
|
|
458
|
-
const spaceBelow = windowHeight - (componentY + componentHeight);
|
|
459
|
-
// Actual usable space above must account for status bar
|
|
460
|
-
const usableSpaceAbove = componentY - statusBarHeight;
|
|
461
|
-
console.log('🔥 AutoPositionedPopup CORRECTED SPACE CALCULATION (pre-spacing):', {
|
|
462
|
-
rawSpaceAbove,
|
|
463
|
-
usableSpaceAbove,
|
|
464
|
-
spaceBelow,
|
|
465
|
-
popupHeight,
|
|
466
|
-
componentY,
|
|
467
|
-
componentHeight,
|
|
468
|
-
windowHeight,
|
|
469
|
-
statusBarHeight
|
|
470
|
-
});
|
|
471
|
-
// ULTRA-TIGHT SPACING: Minimal spacing for tight visual connection
|
|
472
|
-
const getOptimalSpacing = (compY, compHeight, winHeight) => {
|
|
473
|
-
const componentCenter = compY + compHeight / 2;
|
|
474
|
-
const screenCenter = winHeight / 2;
|
|
475
|
-
const distanceFromCenter = Math.abs(componentCenter - screenCenter) / screenCenter;
|
|
476
|
-
// Check if component is in bottom half for ultra-tight spacing
|
|
477
|
-
const isInBottomHalf = componentCenter > screenCenter;
|
|
478
|
-
// Base spacing: extremely small for bottom components
|
|
479
|
-
const baseSpacing = isInBottomHalf ? 0.5 : 3;
|
|
480
|
-
// Aggressive spacing reduction for edge positions - ultra tight for bottom half
|
|
481
|
-
const edgeProximityFactor = isInBottomHalf ?
|
|
482
|
-
Math.max(0.15, 1 - distanceFromCenter * 1.2) :
|
|
483
|
-
Math.max(0.4, 1 - distanceFromCenter * 0.7);
|
|
484
|
-
// Minimal component-relative spacing for bottom components
|
|
485
|
-
const relativeSpacingPercent = isInBottomHalf ? 0.02 : 0.12;
|
|
486
|
-
const relativeSpacing = Math.min(compHeight * relativeSpacingPercent, isInBottomHalf ? 3 : 10);
|
|
487
|
-
// Strong platform adjustment - much smaller for Android bottom components
|
|
488
|
-
const platformMultiplier = Platform.OS === 'ios' ? 1.0 : (isInBottomHalf ? 0.5 : 0.9);
|
|
489
|
-
const finalSpacing = Math.max(baseSpacing, relativeSpacing) * edgeProximityFactor * platformMultiplier;
|
|
490
|
-
console.log('AutoPositionedPopup 🔥 Advanced spacing calculation:', {
|
|
491
|
-
componentCenter,
|
|
492
|
-
screenCenter,
|
|
493
|
-
distanceFromCenter,
|
|
494
|
-
isInBottomHalf,
|
|
495
|
-
edgeProximityFactor,
|
|
496
|
-
baseSpacing,
|
|
497
|
-
relativeSpacing,
|
|
498
|
-
relativeSpacingPercent,
|
|
499
|
-
platformMultiplier,
|
|
500
|
-
finalSpacing
|
|
501
|
-
});
|
|
502
|
-
return finalSpacing;
|
|
503
|
-
};
|
|
504
|
-
// const POPUP_SPACING = getOptimalSpacing(componentY, componentHeight, windowHeight);
|
|
505
|
-
// console.log('🔥 Optimal popup spacing calculated:', POPUP_SPACING, 'for componentHeight:', componentHeight, 'at Y:', componentY);
|
|
506
|
-
// console.log('🔥 AutoPositionedPopup FINAL SPACE CHECK WITH SPACING:', {
|
|
507
|
-
// POPUP_SPACING,
|
|
508
|
-
// 'usableSpaceAbove >= popupHeight + POPUP_SPACING': usableSpaceAbove >= popupHeight + POPUP_SPACING,
|
|
509
|
-
// 'spaceBelow >= popupHeight + POPUP_SPACING': spaceBelow >= popupHeight + POPUP_SPACING,
|
|
510
|
-
// 'usableSpaceAbove needed': popupHeight + POPUP_SPACING,
|
|
511
|
-
// 'spaceBelow needed': popupHeight + POPUP_SPACING
|
|
512
|
-
// });
|
|
513
|
-
// FORCE ABOVE PRIORITY: If component is in bottom half, always try above first
|
|
514
|
-
const isInBottomHalf = componentCenterY > visibleAreaCenter;
|
|
515
|
-
// console.log('🔥 Position decision factors:', {
|
|
516
|
-
// isInBottomHalf,
|
|
517
|
-
// componentCenterY,
|
|
518
|
-
// visibleAreaCenter,
|
|
519
|
-
// 'spaceBelow >= needed': spaceBelow >= popupHeight + POPUP_SPACING,
|
|
520
|
-
// 'usableSpaceAbove >= needed': usableSpaceAbove >= popupHeight + POPUP_SPACING
|
|
521
|
-
// });
|
|
522
|
-
if (isInBottomHalf && usableSpaceAbove >= popupHeight) {
|
|
523
|
-
// Component in bottom half + enough space above = FORCE ABOVE
|
|
524
|
-
showAbove = true;
|
|
525
|
-
finalY = componentY - popupHeight + componentHeight / 2;
|
|
526
|
-
console.log('AutoPositionedPopup 🔥 AutoPositionedPopup: FORCE ABOVE - bottom half component with enough space, finalY=', finalY);
|
|
527
|
-
}
|
|
528
|
-
else if (!isInBottomHalf && spaceBelow >= popupHeight) {
|
|
529
|
-
// Component in top half + enough space below = show below
|
|
530
|
-
showAbove = false;
|
|
531
|
-
finalY = componentY + componentHeight * 2;
|
|
532
|
-
console.log('🔥 AutoPositionedPopup: Showing below - top half component with enough space, finalY=', finalY);
|
|
533
|
-
}
|
|
534
|
-
else if (usableSpaceAbove >= popupHeight) {
|
|
535
|
-
// Fallback: enough space above
|
|
536
|
-
showAbove = true;
|
|
537
|
-
finalY = componentY - popupHeight;
|
|
538
|
-
console.log('🔥 AutoPositionedPopup: Showing above - enough space available (fallback), finalY=', finalY);
|
|
539
|
-
}
|
|
540
|
-
else if (spaceBelow >= popupHeight) {
|
|
541
|
-
// Fallback: enough space below
|
|
542
|
-
showAbove = false;
|
|
543
|
-
finalY = componentY + componentHeight;
|
|
544
|
-
console.log('🔥 AutoPositionedPopup: Showing below - enough space available (fallback), finalY=', finalY);
|
|
545
|
-
}
|
|
546
|
-
else {
|
|
547
|
-
// Emergency fallback: choose larger space
|
|
548
|
-
if (usableSpaceAbove >= spaceBelow) {
|
|
549
|
-
showAbove = true;
|
|
550
|
-
finalY = Math.max(statusBarHeight, componentY - popupHeight);
|
|
551
|
-
console.log('🔥 AutoPositionedPopup: Emergency above - larger space, finalY=', finalY);
|
|
552
|
-
}
|
|
553
|
-
else {
|
|
554
|
-
showAbove = false;
|
|
555
|
-
finalY = componentY + componentHeight;
|
|
556
|
-
console.log('🔥 AutoPositionedPopup: Emergency below - larger space, finalY=', finalY);
|
|
557
|
-
}
|
|
558
|
-
}
|
|
559
|
-
// Enhanced boundary check with detailed logging
|
|
560
|
-
console.log('AutoPositionedPopup 🔥 Pre-boundary check:', {
|
|
561
|
-
originalFinalY: finalY,
|
|
562
|
-
showAbove,
|
|
563
453
|
statusBarHeight,
|
|
564
|
-
|
|
565
|
-
popupHeight,
|
|
566
|
-
'finalY < statusBarHeight': finalY < statusBarHeight,
|
|
567
|
-
'finalY + popupHeight > windowHeight': finalY + popupHeight > windowHeight
|
|
454
|
+
platform: Platform.OS
|
|
568
455
|
});
|
|
569
|
-
|
|
570
|
-
|
|
571
|
-
|
|
572
|
-
|
|
573
|
-
|
|
574
|
-
if (
|
|
575
|
-
|
|
576
|
-
|
|
577
|
-
|
|
578
|
-
|
|
579
|
-
|
|
580
|
-
|
|
581
|
-
|
|
456
|
+
// CORRECT POSITIONING LOGIC (with status bar consideration):
|
|
457
|
+
// 1. Default: above input field
|
|
458
|
+
let popupY = componentY - popupHeight + statusBarHeight;
|
|
459
|
+
// 2. Check if showing above would overlap with status bar
|
|
460
|
+
// The top boundary should be statusBarHeight, not 0
|
|
461
|
+
if (popupY < statusBarHeight) {
|
|
462
|
+
console.log('AutoPositionedPopup: would overlap status bar, showing BELOW instead');
|
|
463
|
+
popupY = componentY + componentHeight + statusBarHeight; // Show below input field
|
|
464
|
+
// 3. Also check if showing below would go off the bottom
|
|
465
|
+
const maxY = screenHeight - popupHeight;
|
|
466
|
+
if (popupY > maxY) {
|
|
467
|
+
// If both positions are problematic, clamp to visible area
|
|
468
|
+
// But ensure it doesn't go above status bar
|
|
469
|
+
console.log('AutoPositionedPopup: both positions problematic, clamping to visible area');
|
|
470
|
+
popupY = Math.min(Math.max(statusBarHeight, componentY - popupHeight), maxY);
|
|
471
|
+
}
|
|
582
472
|
}
|
|
583
|
-
|
|
584
|
-
console.log('AutoPositionedPopup
|
|
473
|
+
else {
|
|
474
|
+
console.log('AutoPositionedPopup: showing ABOVE input field (preferred position, below status bar)');
|
|
585
475
|
}
|
|
586
|
-
console.log('AutoPositionedPopup
|
|
587
|
-
|
|
588
|
-
|
|
589
|
-
'
|
|
590
|
-
'popupBottom': finalY + popupHeight,
|
|
591
|
-
'componentTop': componentY,
|
|
592
|
-
'componentBottom': componentY + componentHeight
|
|
476
|
+
console.log('AutoPositionedPopup final position:', {
|
|
477
|
+
popupY,
|
|
478
|
+
'showing above': popupY < componentY,
|
|
479
|
+
'below status bar': popupY >= statusBarHeight
|
|
593
480
|
});
|
|
594
|
-
return { finalY, showAbove };
|
|
481
|
+
return { finalY: popupY, showAbove: popupY < componentY };
|
|
595
482
|
};
|
|
596
483
|
// Calculate position ONCE based on actual popup height
|
|
597
484
|
const actualPopupHeight = CustomPopView && CustomPopViewStyle && typeof CustomPopViewStyle.height === 'number'
|
|
@@ -897,11 +784,13 @@ const AutoPositionedPopup = memo(forwardRef((props, parentRef) => {
|
|
|
897
784
|
'hasAddedRootView.current': hasAddedRootView.current,
|
|
898
785
|
'hasShownRootView.current': hasShownRootView.current,
|
|
899
786
|
'hasTriggeredFocus.current': hasTriggeredFocus.current,
|
|
900
|
-
'
|
|
901
|
-
});
|
|
902
|
-
setState((prevState) => {
|
|
903
|
-
return Object.assign(Object.assign({}, prevState), { isFocus: true });
|
|
787
|
+
'selectedItem': selectedItem
|
|
904
788
|
});
|
|
789
|
+
{
|
|
790
|
+
setState((prevState) => {
|
|
791
|
+
return Object.assign(Object.assign({}, prevState), { isFocus: true });
|
|
792
|
+
});
|
|
793
|
+
}
|
|
905
794
|
if (!hasAddedRootView.current && useTextInput) {
|
|
906
795
|
// TextInput version: hide first, show after keyboard is fully displayed
|
|
907
796
|
hasAddedRootView.current = true;
|
|
@@ -915,7 +804,7 @@ const AutoPositionedPopup = memo(forwardRef((props, parentRef) => {
|
|
|
915
804
|
height: listLayout.height,
|
|
916
805
|
opacity: 0,
|
|
917
806
|
},
|
|
918
|
-
component: (<AutoPositionedPopupList tag={tag} updateState={updateState} fetchData={fetchData} pageSize={pageSize} renderItem={renderItem} selectedItem={
|
|
807
|
+
component: (<AutoPositionedPopupList tag={tag} updateState={updateState} fetchData={fetchData} pageSize={pageSize} renderItem={renderItem} selectedItem={selectedItem} localSearch={localSearch} showListEmptyComponent={showListEmptyComponent} emptyText={emptyText}/>),
|
|
919
808
|
useModal: false,
|
|
920
809
|
});
|
|
921
810
|
}
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"AutoPositionedPopup.js","sourceRoot":"","sources":["../src/AutoPositionedPopup.tsx"],"names":[],"mappings":"AAAA,OAAO,KAAK,EAAE,EAEZ,UAAU,EAEV,IAAI,EAEJ,WAAW,EACX,SAAS,EACT,mBAAmB,EACnB,OAAO,EACP,MAAM,EACN,QAAQ,GACT,MAAM,OAAO,CAAC;AACf,OAAO,EACL,UAAU,EACV,QAAQ,EACR,QAAQ,EACR,SAAS,EACT,IAAI,EACJ,SAAS,IAAI,WAAW,EACxB,gBAAgB,EAChB,IAAI,GACL,MAAM,cAAc,CAAC;AACtB,OAAO,EAAC,gBAAgB,EAA4B,MAAM,gCAAgC,CAAC;AAI3F,OAAO,MAAM,MAAM,6BAA6B,CAAC;AACjD,OAAO,EAAC,WAAW,EAAC,MAAM,mBAAmB,CAAC;AAC9C,OAAO,EAAC,iBAAiB,EAAC,MAAM,mBAAmB,CAAC;AAIpD,MAAM,oBAAoB,GAAoB,EAAE,CAAC;AACjD,MAAM,eAAe,GAAG,CAAC,KAAa,EAAE,EAAE;IACxC,OAAO,CAAC,GAAG,CAAC,gDAAgD,EAAE,KAAK,EAAE,aAAa,EAAE,oBAAoB,CAAC,MAAM,CAAC,CAAC;IACjH,oBAAoB,CAAC,OAAO,CAAC,CAAC,CAAC,EAAE,EAAE,CAAC,CAAC,CAAC,KAAK,CAAC,CAAC,CAAC;AAChD,CAAC,CAAC;AACF,MAAM,oBAAoB,GAAG,CAAC,QAAuB,EAAE,EAAE;IACvD,oBAAoB,CAAC,IAAI,CAAC,QAAQ,CAAC,CAAC;IACpC,OAAO,GAAG,EAAE;QACV,MAAM,GAAG,GAAG,oBAAoB,CAAC,OAAO,CAAC,QAAQ,CAAC,CAAC;QACnD,IAAI,GAAG,KAAK,CAAC,CAAC;YAAE,oBAAoB,CAAC,MAAM,CAAC,GAAG,EAAE,CAAC,CAAC,CAAC;IACtD,CAAC,CAAC;AACJ,CAAC,CAAC;AAYF,sBAAsB;AACtB,MAAM,YAAY,GAAU;IAC1B,MAAM,EAAE;QACN,IAAI,EAAE,SAAS;QACf,eAAe,EAAE,SAAS;QAC1B,UAAU,EAAE,SAAS;QACrB,MAAM,EAAE,SAAS;KAClB;CACF,CAAC;AAEF,qDAAqD;AACrD,MAAM,QAAQ,GAKT,IAAI,CACP,CAAC,EACE,WAAW,EACX,IAAI,EACJ,KAAK,EACL,YAAY,GAMd,EAAqB,EAAE;IACtB,MAAM,EAAC,WAAW,EAAE,sBAAsB,EAAE,cAAc,EAAE,SAAS,EAAC,GAAG,WAAW,EAAE,CAAC;IACvF,MAAM,YAAY,GAAG,MAAM,CAAC,SAAS,CAAC,CAAC;IACvC,SAAS,CAAC,GAAG,EAAE;QACb,YAAY,CAAC,OAAO,GAAG,SAAS,CAAC;IACnC,CAAC,EAAE,CAAC,SAAS,CAAC,CAAC,CAAC;IAChB,OAAO,OAAO,CAAC,GAAG,EAAE;QAClB,iFAAiF;QACjF,MAAM,UAAU,GAAG,IAAI,CAAC,EAAE,MAAK,YAAY,aAAZ,YAAY,uBAAZ,YAAY,CAAE,EAAE,CAAA,CAAC;QAChD,OAAO,CACL,CAAC,gBAAgB,CACf,GAAG,CAAC,CAAC,IAAI,CAAC,EAAE,CAAC,CACb,KAAK,CAAC,CAAC;gBACL,MAAM,CAAC,cAAc;gBACrB,EAAC,eAAe,EAAE,UAAU,CAAC,CAAC,CAAC,2BAA2B,CAAC,CAAC,CAAC,aAAa,EAAC;aAC5E,CAAC,CACF,OAAO,CAAC,CAAC,GAAG,EAAE;gBACZ,oGAAoG;gBACpG,yHAAyH;gBACzH,WAAW,CAAC,cAAc,EAAE,IAAI,CAAC,CAAC;YACpC,CAAC,CAAC,CAEF;UAAA,CAAC,IAAI,CAAC,KAAK,CAAC,CAAC,MAAM,CAAC,YAAY,CAAC,CAAC,aAAa,CAAC,CAAC,CAAC,CAAC,CAAC,aAAa,CAAC,MAAM,CACtE;YAAA,CAAC,IAAI,CAAC,KAAK,CACb;UAAA,EAAE,IAAI,CACR;QAAA,EAAE,gBAAgB,CAAC,CACpB,CAAC;IACJ,CAAC,EAAE,CAAC,WAAW,EAAE,IAAI,EAAE,KAAK,EAAE,YAAY,EAAE,YAAY,CAAC,CAAC,CAAC;AAC7D,CAAC,CACF,CAAC;AAwBF,MAAM,uBAAuB,GAA2C,IAAI,CAC1E,CAAC,EACE,GAAG,EACH,WAAW,EACX,SAAS,EACT,YAAY,GAAG,CAAC,IAAI,EAAE,EAAE,CAAC,MAAM,CAAC,IAAI,CAAC,EAAE,CAAC,EACxC,UAAU,EACV,YAAY,EACZ,WAAW,EACX,QAAQ,EAAE,sBAAsB,EAAE,SAAS,EACd,EAAqB,EAAE;IACrD,MAAM,CAAC,KAAK,EAAE,QAAQ,CAAC,GAAG,QAAQ,CAG/B;QACD,YAAY,EAAE,YAAY;QAC1B,SAAS,EAAE,EAAE;KACd,CAAC,CAAC;IACH,wEAAwE;IACxE,MAAM,QAAQ,GAAG,MAAM,CAA0D,IAAI,CAAC,CAAC;IACvF,MAAM,eAAe,GAAG,MAAM,CAAS,EAAE,CAAC,CAAC;IAC3C,MAAM,EAAC,WAAW,EAAE,cAAc,EAAE,SAAS,EAAC,GAAG,WAAW,EAAE,CAAC;IAC/D,MAAM,YAAY,GAAG,MAAM,CAAC,SAAS,CAAC,CAAC;IACvC,SAAS,CAAC,GAAG,EAAE;QACb,YAAY,CAAC,OAAO,GAAG,SAAS,CAAC;IACnC,CAAC,EAAE,CAAC,SAAS,CAAC,CAAC,CAAC;IAChB;;OAEG;IACH,SAAS,CAAC,GAAG,EAAE;QACb,CAAC,KAAK,IAAI,EAAE;QACZ,CAAC,CAAC,EAAE,CAAC;QACL,OAAO,CAAC,GAAG,CAAC,2CAA2C,CAAC,CAAC;QACzD,sBAAsB;QACtB,OAAO,GAAG,EAAE;YACV,OAAO,CAAC,GAAG,CAAC,8CAA8C,CAAC,CAAC;YAC5D,cAAc,CAAC,EAAE,CAAC,CAAC;QACrB,CAAC,CAAC;IACJ,CAAC,EAAE,EAAE,CAAC,CAAC;IACP,oBAAoB;IACpB,mGAAmG;IACnG,8EAA8E;IAC9E,2CAA2C;IAC3C,gFAAgF;IAChF,wFAAwF;IACxF,0FAA0F;IAC1F,gFAAgF;IAChF,2FAA2F;IAC3F,sCAAsC;IACtC,kCAAkC;IAClC,MAAM;IACN,mDAAmD;IACnD,SAAS,CAAC,GAAG,EAAE;QACb,MAAM,WAAW,GAAG,oBAAoB,CAAC,CAAC,QAAgB,EAAE,EAAE;YAC5D,OAAO,CAAC,GAAG,CAAC,kEAAkE,EAAE,QAAQ,CAAC,CAAC;YAC1F,eAAe,CAAC,OAAO,GAAG,QAAQ,CAAC;YACnC,IAAI,QAAQ,CAAC,OAAO,EAAE,CAAC;gBACrB,QAAQ,CAAC,OAAO,CAAC,WAAW,EAAE,CAAC;gBAC/B,QAAQ,CAAC,OAAO,CAAC,OAAO,EAAE,CAAC;YAC7B,CAAC;QACH,CAAC,CAAC,CAAC;QACH,OAAO,WAAW,CAAC;IACrB,CAAC,EAAE,EAAE,CAAC,CAAC;IACP,MAAM,YAAY,GAAG,CAAC,GAAW,EAAE,KAAmB,EAAE,EAAE;QACxD,OAAO,CAAC,GAAG,CAAC,2CAA2C,EAAE,GAAG,EAAE,SAAS,EAAE,KAAK,CAAC,CAAC;QAChF,QAAQ,CAAC,CAAC,SAAS,EAAE,EAAE,CAAC,iCACnB,SAAS,KACZ,CAAC,GAAG,CAAC,EAAE,KAAK,IACZ,CAAC,CAAC;QACJ,OAAO,CAAC,GAAG,CAAC,iDAAiD,EAAE,YAAY,CAAC,OAAO,CAAC,CAAC;QACrF,WAAW,CAAC,GAAG,EAAE,KAAK,CAAC,CAAC;IAC1B,CAAC,CAAC;IACF,MAAM,UAAU,GAAG,KAAK,EAAE,EACE,SAAS,EACT,QAAQ,EAAE,eAAe,GACT,EAA4B,EAAE;QACxE,OAAO,CAAC,GAAG,CAAC,qCAAqC,EAAE,EAAC,SAAS,EAAE,QAAQ,EAAE,eAAe,EAAE,iBAAiB,EAAE,KAAK,CAAC,SAAS,EAAE,yBAAyB,EAAE,eAAe,CAAC,OAAO,EAAE,WAAW,EAAC,CAAC,CAAC;QAChM,IAAI,WAAW,IAAI,KAAK,CAAC,SAAS,CAAC,MAAM,GAAG,CAAC,EAAE,CAAC;YAC9C,MAAM,MAAM,GAAmB,KAAK,CAAC,SAAS,CAAC,MAAM,CAAC,CAAC,IAAkB,EAAE,EAAE;;gBAC3E,OAAO,MAAA,IAAI,CAAC,KAAK,0CAAE,WAAW,GAAG,QAAQ,CAAC,eAAe,CAAC,OAAO,CAAC,WAAW,EAAE,CAAC,CAAC;YACnF,CAAC,CAAC,CAAC;YACH,OAAO,CAAC,GAAG,CAAC,wDAAwD,EAAE,MAAM,CAAC,CAAC;YAC9E,OAAO,OAAO,CAAC,OAAO,CAAC;gBACrB,KAAK,EAAE,MAAM;gBACb,SAAS,EAAE,CAAC;gBACZ,YAAY,EAAE,KAAK;aACpB,CAAC,CAAC;QACL,CAAC;QACD,IAAI,CAAC;YACH,MAAM,GAAG,GAAgB,MAAM,SAAS,CAAC;gBACvC,SAAS;gBACT,QAAQ,EAAE,QAAQ,IAAI,EAAE;gBACxB,WAAW,EAAE,eAAe,CAAC,OAAO;aACrC,CAAC,CAAC;YACH,OAAO,CAAC,GAAG,CAAC,yCAAyC,EAAE,GAAG,CAAC,CAAC;YAC5D,IAAI,CAAA,GAAG,aAAH,GAAG,uBAAH,GAAG,CAAE,KAAK,KAAI,WAAW,EAAE,CAAC;gBAC9B,QAAQ,CAAC,CAAC,SAAS,EAAE,EAAE;oBACrB,uCACK,SAAS,KACZ,SAAS,EAAE,GAAG,CAAC,KAAK,IACpB;gBACJ,CAAC,CAAC,CAAC;YACL,CAAC;YACD,qCAAqC;YACrC,IAAI,GAAG,EAAE,CAAC;gBACR,OAAO,OAAO,CAAC,OAAO,CAAC;oBACrB,KAAK,EAAE,GAAG,CAAC,KAAc,EAAE,4BAA4B;oBACvD,SAAS,EAAE,GAAG,CAAC,SAAS;oBACxB,YAAY,EAAE,GAAG,CAAC,YAAY;iBAC/B,CAAC,CAAC;YACL,CAAC;YACD,OAAO,IAAI,CAAC;QACd,CAAC;QAAC,OAAO,CAAC,EAAE,CAAC;YACX,OAAO,CAAC,IAAI,CAAC,qBAAqB,EAAE,CAAC,CAAC,CAAC;QACzC,CAAC;QACD,OAAO,CAAC,GAAG,CAAC,yCAAyC,EAAE,IAAI,CAAC,CAAC;QAC7D,OAAO,IAAI,CAAC;IACd,CAAC,CAAC;IACF,MAAM,WAAW,GAAG,WAAW,CAC7B,CAAC,EAAC,IAAI,EAAE,KAAK,EAAwC,EAAE,EAAE;QACvD,OAAO,CAAC,QAAQ,CAAC,IAAI,CAAC,CAAC,IAAI,CAAC,CAAC,KAAK,CAAC,CAAC,KAAK,CAAC,CAAC,WAAW,CAAC,CAAC,YAAY,CAAC,CAAC,YAAY,CAAC,CAAC,KAAK,CAAC,YAAY,CAAC,EAAG,CAAC;IAC7G,CAAC,EACD,CAAC,KAAK,CAAC,YAAY,CAAC,CACrB,CAAC;IACF,OAAO,OAAO,CAAC,GAAG,EAAE;QAClB,OAAO,CAAC,GAAG,CAAC,iDAAiD,EAAG,MAAc,aAAd,MAAM,uBAAN,MAAM,CAAU,KAAK,CAAC,CAAC;QACvF,yEAAyE;QACzE,sCAAsC;QACtC,OAAO,CACL,CAAC,IAAI,CAAC,KAAK,CAAC,CAAC,CAAC,MAAM,CAAC,aAAa,EAAE,MAAM,CAAC,uBAAuB,CAAC,CAAC,CAClE;UAAA,CAAC,gBAAgB,CACf,KAAK,CAAC,CAAC,CAAC,EAAC,YAAY,EAAE,CAAC,EAAC,CAAC,CAAC,CAC3B,IAAI,CAAC,QAAQ,IAAI,EAAC,GAAG,EAAE,QAAQ,EAAC,CAAC,CAAC,CAClC,YAAY,CAAC,CAAC,CAAC,IAAI,EAAE,KAAK,EAAE,EAAE,CAAC,YAAY,CAAC,CAAC,CAAC,YAAY,CAAC,IAAoB,CAAC,CAAC,CAAC,CAAE,IAAqB,CAAC,EAAE,CAAC,CAC7G,yBAAyB,CAAC,CAAC,QAAQ,CAAC,CACpC,SAAS,CAAC,CAAC,UAAU,CAAC,CACtB,UAAU,CAAC,CAAC,UAAU,CAAC,CAAC,CAAC,CAAC,EAAC,IAAI,EAAE,KAAK,EAAC,EAAE,EAAE,CAAC,UAAU,CAAC,EAAC,IAAI,EAAE,IAAoB,EAAE,KAAK,EAAC,CAAC,CAAC,CAAC,CAAC,CAAC,EAAC,IAAI,EAAE,KAAK,EAAC,EAAE,EAAE,CAAC,WAAW,CAAC,EAAC,IAAI,EAAE,IAAoB,EAAE,KAAK,EAAC,CAAC,CAAC,CAClK,sBAAsB,CAAC,CAAC,sBAAsB,CAAC,CAC/C,SAAS,CAAC,CAAC,SAAS,CAAC,EAEzB;QAAA,EAAE,IAAI,CAAC,CACR,CAAC;IACJ,CAAC,EAAE,CAAC,GAAG;QACL,WAAW;QACX,SAAS;QACT,YAAY;QACZ,UAAU;QACV,KAAK,CAAC,YAAY;QAClB,KAAK,CAAC,SAAS;QACf,WAAW;QACX,WAAW;QACX,QAAQ;QACR,YAAY,EAAE,sBAAsB,EAAE,SAAS;KAChD,CAAC,CAAC;AACL,CAAC,CACF,CAAC;AAQF,wBAAwB;AACxB,MAAM,UAAU,GAAG;IACjB,MAAM,EAAE,GAAG;CACZ,CAAC;AAEF,qCAAqC;AACrC,MAAM,mBAAmB,GAAG,IAAI,CAC9B,UAAU,CACR,CAAC,KAA+B,EAAE,SAAgC,EAAqB,EAAE;IACvF,OAAO,CAAC,GAAG,CAAC,4BAA4B,EAAE,KAAK,CAAC,CAAC;IACjD,MAAM,EACJ,GAAG,EACH,KAAK,EACL,2BAA2B,EAC3B,WAAW,GAAG,eAAe,EAC7B,eAAe,EACf,cAAc,EAAC,sBAAsB;IACrC,UAAU,EACV,UAAU,EACV,cAAc,GAAG,EAAC,IAAI,EAAE,IAAI,EAAE,KAAK,EAAE,KAAK,EAAC,EAC3C,SAAS,GAAG,KAAK,EAAE,EACE,SAAS,EACT,QAAQ,EACR,WAAW,GAK/B,EAAwB,EAAE;QACzB,MAAM,GAAG,GAAG;YACV,KAAK,EAAE,EAAW;YAClB,SAAS;YACT,YAAY,EAAE,KAAK;SACpB,CAAC;QACF,IAAI,CAAC;YACH,+CAA+C;YAC/C,uCAAuC;YACvC,mBAAmB;YACnB,8CAA8C;QAChD,CAAC;QAAC,OAAO,CAAC,EAAE,CAAC;YACX,OAAO,CAAC,IAAI,CAAC,2BAA2B,EAAE,CAAC,CAAC,CAAC;QAC/C,CAAC;QACD,OAAO,GAAG,CAAC;IACb,CAAC,EACD,UAAU,EACV,cAAc,EACd,WAAW,GAAG,KAAK,EACnB,QAAQ,GAAG,EAAE,EACb,YAAY,EACZ,YAAY,GAAG,KAAK,EACpB,WAAW,EACX,SAAS,GAAG,CAAC,EAAC,QAAQ,EAAC,EAAE,EAAE,CAAC,CAAC,IAAI,CAAC,CAAC,QAAQ,CAAC,EAAE,IAAI,CAAC,EACnD,YAAY,GAAG,CAAC,IAAS,EAAE,EAAE,CAAC,MAAM,CAAC,CAAA,IAAI,aAAJ,IAAI,uBAAJ,IAAI,CAAE,EAAE,KAAI,EAAE,CAAC,EACpD,8BAA8B,GAAG,KAAK,EACtC,oCAAoC,GAAG,KAAK,EAC5C,aAAa,GAAG,KAAK,EACrB,2BAA2B,GAAG,2BAA2B,EACzD,SAAS,GAAG,OAAO,EACnB,aAAa,GAAG,SAAS,EAAE,kBAAkB,EAAE,sBAAsB,GAAG,IAAI,EAAE,SAAS,GAAG,EAAE,EAAE,YAAY,EAC3G,GAAG,KAAK,CAAC;IACV,qDAAqD;IACrD,MAAM,CAAC,KAAK,EAAE,QAAQ,CAAC,GAAG,QAAQ,CAAa;QAC7C,OAAO,EAAE,KAAK;QACd,YAAY,EAAE,YAAY;KAC3B,CAAC,CAAC;IACH,uBAAuB;IACvB,MAAM,EAAC,WAAW,EAAE,sBAAsB,EAAE,cAAc,EAAE,SAAS,EAAE,cAAc,EAAC,GAAG,WAAW,EAAE,CAAC;IACvG,MAAM,YAAY,GAAG,MAAM,CAAC,SAAS,CAAC,CAAC;IACvC,wEAAwE;IACxE,MAAM,iBAAiB,GAAG,MAAM,CAAC,KAAK,CAAC,CAAC;IACxC,MAAM,gBAAgB,GAAG,MAAM,CAAC,KAAK,CAAC,CAAC;IACvC,MAAM,gBAAgB,GAAG,MAAM,CAAC,KAAK,CAAC,CAAC;IACvC,qDAAqD;IACrD,MAAM,WAAW,GAAG,MAAM,CAAU,KAAK,CAAC,CAAC;IAC3C,MAAM,wBAAwB,GAAG,MAAM,CAAU,KAAK,CAAC,CAAC;IACxD,MAAM,WAAW,GAA0B,MAAM,CAA8B,SAAS,CAAC,CAAA;IACzF,MAAM,kBAAkB,GAAG,MAAM,CAAC,KAAK,CAAC,CAAC;IACzC,MAAM,sBAAsB,GAAG,MAAM,CAAO,IAAI,CAAC,CAAC;IAClD,MAAM,eAAe,GAAG,MAAM,CAAS,EAAE,CAAC,CAAC;IAC3C,sGAAsG;IACtG,MAAM,2BAA2B,GAAG,MAAM,CAAU,KAAK,CAAC,CAAC;IAC3D,MAAM,YAAY,GAAG,MAAM,CAIxB,EAAE,CAAC,CAAC;IACP,qFAAqF;IACrF,MAAM,gBAAgB,GAAG,MAAM,CAAS,CAAC,CAAC,CAAC;IAC3C,MAAM,yBAAyB,GAAG,MAAM,CAAU,KAAK,CAAC,CAAC;IACzD,iDAAiD;IACjD,+IAA+I;IAC/I,MAAM,mBAAmB,GAAG,MAAM,CAAM,UAAU,CAAC,CAAC;IACpD,MAAM,uBAAuB,GAAG,MAAM,CAAM,cAAc,CAAC,CAAC;IAC5D,0EAA0E;IAC1E,iCAAiC;IACjC,MAAM,CAAC,SAAS,EAAE,YAAY,CAAC,GAAG,QAAQ,CAAC,KAAK,CAAC,CAAC;IAClD,MAAM,CAAC,IAAI,EAAE,OAAO,CAAC,GAAG,QAAQ,CAAiB,EAAE,CAAC,CAAC;IACrD,MAAM,CAAC,OAAO,EAAE,UAAU,CAAC,GAAG,QAAQ,CAAC,KAAK,CAAC,CAAC;IAC9C,MAAM,CAAC,aAAa,EAAE,gBAAgB,CAAC,GAAG,QAAQ,CAI/C,EAAC,GAAG,EAAE,CAAC,EAAE,IAAI,EAAE,CAAC,EAAE,KAAK,EAAE,CAAC,EAAC,CAAC,CAAC;IAChC,oCAAoC;IACpC,MAAM,YAAY,GAAG,MAAM,CAAO,IAAI,CAAC,CAAC;IACxC,MAAM,YAAY,GAAG,MAAM,CAAc,IAAI,CAAC,CAAC;IAC/C,MAAM,gBAAgB,GAAG,MAAM,CAAwB,IAAI,CAAC,CAAC;IAC7D,MAAM,cAAc,GAAG,MAAM,CAAS,EAAE,CAAC,CAAC,CAAC,+CAA+C;IAC1F,+EAA+E;IAC/E,MAAM,OAAO,GAAG,MAAM,CAAiB,IAAI,CAAC,CAAC;IAC7C,MAAM,oBAAoB,GAAG,iBAAiB,EAAE,CAAC;IACjD,MAAM,KAAK,GAAG,YAAY,CAAC;IAC3B;;OAEG;IACH,SAAS,CAAC,GAAG,EAAE;QACb,CAAC,KAAK,IAAI,EAAE;QACZ,CAAC,CAAC,EAAE,CAAC;QACL,OAAO,CAAC,GAAG,CAAC,wCAAwC,EAAE,EAAC,GAAG,EAAE,aAAa,EAAC,CAAC,CAAC;QAC5E,sBAAsB;QACtB,OAAO,GAAG,EAAE;YACV,OAAO,CAAC,GAAG,CAAC,+CAA+C,EAAE,GAAG,CAAC,CAAC;YAClE,cAAc,CAAC,GAAG,EAAE,oCAAoC,EAAE,YAAY,CAAC,OAAO,CAAC,CAAC;YAChF,cAAc,CAAC,EAAE,CAAC,CAAC;YACnB,IAAI,YAAY,CAAC,OAAO,EAAE,CAAC;gBACzB,YAAY,CAAC,OAAO,CAAC,IAAI,EAAE,CAAC;gBAC5B,iBAAiB,CAAC,OAAO,GAAG,KAAK,CAAC;gBAClC,gBAAgB,CAAC,OAAO,GAAG,KAAK,CAAC;gBACjC,gBAAgB,CAAC,OAAO,GAAG,KAAK,CAAC;gBACjC,WAAW,CAAC,OAAO,GAAG,KAAK,CAAC;YAC9B,CAAC;QACH,CAAC,CAAC;IACJ,CAAC,EAAE,EAAE,CAAC,CAAC;IACP,SAAS,CAAC,GAAG,EAAE;QACb,OAAO,CAAC,GAAG,CAAC,gCAAgC,EAAE,SAAS,CAAC,CAAC;QACzD,YAAY,CAAC,OAAO,GAAG,SAAS,CAAC;QACjC,IAAI,SAAS,CAAC,MAAM,KAAK,CAAC,EAAE,CAAC;YAC3B,gBAAgB,CAAC,OAAO,GAAG,KAAK,CAAC;YACjC,gBAAgB,CAAC,OAAO,GAAG,KAAK,CAAC;YACjC,WAAW,CAAC,OAAO,GAAG,KAAK,CAAC;YAC5B,wBAAwB,CAAC,OAAO,GAAG,KAAK,CAAC;YACzC,iBAAiB,CAAC,OAAO,GAAG,KAAK,CAAC;YAClC,QAAQ,CAAC,CAAC,SAAS,EAAE,EAAE;gBACrB,uCACK,SAAS,KACZ,OAAO,EAAE,KAAK,IACd;YACJ,CAAC,CAAC,CAAC;QACL,CAAC;IACH,CAAC,EAAE,CAAC,SAAS,CAAC,CAAC,CAAC;IAChB,SAAS,CAAC,GAAG,EAAE;;QACb,OAAO,CAAC,GAAG,CAAC,wEAAwE,EAAE,EAAC,GAAG,EAAE,YAAY,EAAE,oBAAoB,EAAE,KAAK,CAAC,YAAY,EAAC,CAAC,CAAC;QACrJ,OAAO,CAAC,GAAG,CAAC,mDAAmD,EAAE,KAAK,CAAC,YAAY,CAAC,CAAC;QACrF,IAAI,CAAA,MAAA,KAAK,CAAC,YAAY,0CAAE,EAAE,OAAK,YAAY,aAAZ,YAAY,uBAAZ,YAAY,CAAE,EAAE,CAAA,IAAI,CAAA,MAAA,KAAK,CAAC,YAAY,0CAAE,KAAK,OAAK,YAAY,aAAZ,YAAY,uBAAZ,YAAY,CAAE,KAAK,CAAA,EAAE,CAAC;YACrG,OAAO,CAAC,GAAG,CAAC,gEAAgE,CAAC,CAAC;YAC9E,QAAQ,CAAC,CAAC,SAAS,EAAE,EAAE;gBACrB,uCACK,SAAS,KACZ,YAAY,EAAE,YAAY,IAC1B;YACJ,CAAC,CAAC,CAAC;QACL,CAAC;IACH,CAAC,EAAE,CAAC,YAAY,EAAE,KAAK,CAAC,YAAY,EAAE,GAAG,CAAC,CAAC,CAAC;IAC5C,SAAS,CAAC,GAAG,EAAE;;QACb,2GAA2G;QAC3G,MAAM,oBAAoB,GAAG,2BAA2B,CAAC,OAAO,KAAK,oBAAoB,CAAC;QAC1F,MAAM,YAAY,GAChB,YAAY,CAAC,OAAO,CAAC,aAAa,KAAK,aAAa;YACpD,YAAY,CAAC,OAAO,CAAC,kBAAkB,KAAK,kBAAkB;YAC9D,CAAC,YAAY,CAAC,OAAO,CAAC,cAAc,KAAK,cAAc,IAAI,YAAY,CAAC,CAAC;QAC3E,OAAO,CAAC,GAAG,CAAC,wDAAwD;YAClE,0BAA0B;YAC1B,yBAAyB;YACzB,0BAA0B;YAC1B,+BAA+B;YAC/B,iDAAiD;YACjD,gCAAgC;YAChC,sDAAsD;YACtD,UAAU,EAAE;YACZ,GAAG;YACH,eAAe,EAAE,KAAK,CAAC,OAAO;YAC9B,oBAAoB;YACpB,qBAAqB,EAAE,WAAW,CAAC,OAAO;YAC1C,kCAAkC,EAAE,wBAAwB,CAAC,OAAO;YACpE,YAAY,EAAE,cAAc;YAC5B,0BAA0B,EAAE,gBAAgB,CAAC,OAAO;YACpD,0BAA0B,EAAE,gBAAgB,CAAC,OAAO;YACpD,sBAAsB,EAAE,oBAAoB;YAC5C,cAAc,EAAE,YAAY;YAC5B,sDAAsD,EAAE,YAAY,CAAC,OAAO,CAAC,aAAa,KAAK,aAAa;YAC5G,gEAAgE,EAAE,YAAY,CAAC,OAAO,CAAC,kBAAkB,KAAK,kBAAkB;YAChI,wDAAwD,EAAE,YAAY,CAAC,OAAO,CAAC,cAAc,KAAK,cAAc;SACjH,CAAC,CAAC;QACH,qCAAqC;QACrC,2BAA2B,CAAC,OAAO,GAAG,oBAAoB,CAAC;QAC3D,YAAY,CAAC,OAAO,GAAG;YACrB,aAAa;YACb,kBAAkB;YAClB,cAAc;SACf,CAAC;QACF,oFAAoF;QACpF,IAAI,CAAC,oBAAoB,IAAI,gBAAgB,CAAC,OAAO,EAAE,CAAC;YACtD,OAAO,CAAC,GAAG,CAAC,uHAAuH,EAAE,YAAY,CAAC,OAAO,CAAC,CAAC;YAC3J,8BAA8B;YAC9B,kCAAkC;YAClC,IAAI;YACJ,OAAO;QACT,CAAC;QACD,IAAI,YAAY,EAAE,CAAC;YACjB,IAAI,oBAAoB,IAAI,gBAAgB,CAAC,OAAO,IAAI,CAAC,gBAAgB,CAAC,OAAO,IAAI,KAAK,CAAC,OAAO,EAAE,CAAC;gBACnG,iDAAiD;gBACjD,4FAA4F;gBAC5F,kGAAkG;gBAClG,EAAE;gBACF,oBAAoB;gBACpB,kDAAkD;gBAClD,6DAA6D;gBAC7D,kDAAkD;gBAClD,6CAA6C;gBAC7C,EAAE;gBACF,qEAAqE;gBACrE,iFAAiF;gBACjF,UAAU,CAAC,GAAG,EAAE;oBACd,qBAAqB,CAAC,GAAG,EAAE;;wBACzB,MAAA,sBAAsB,CAAC,OAAO,0CAAE,eAAe,CAAC,CAAC,CAAS,EAAE,CAAS,EAAE,KAAa,EAAE,MAAc,EAAE,EAAE;;4BACtG,OAAO,CAAC,GAAG,CAAC,sFAAsF,EAAE,EAAC,CAAC,EAAE,CAAC,EAAE,KAAK,EAAE,MAAM,EAAC,CAAC,CAAC;4BAC3H,iDAAiD;4BACjD,qFAAqF;4BACrF,qGAAqG;4BACrG,EAAE;4BACF,yBAAyB;4BACzB,+EAA+E;4BAC/E,mEAAmE;4BACnE,+FAA+F;4BAC/F,EAAE;4BACF,iFAAiF;4BACjF,mFAAmF;4BACnF,+DAA+D;4BAC/D,MAAM,YAAY,GAAG,UAAU,CAAC,GAAG,CAAC,QAAQ,CAAC,CAAC,MAAM,CAAC,CAAC,gCAAgC;4BACtF,OAAO,CAAC,GAAG,CAAC,oDAAoD,EAAE;gCAChE,YAAY;gCACZ,UAAU,EAAE,CAAC;gCACb,eAAe,EAAE,MAAM;gCACvB,UAAU,EAAE,UAAU,CAAC,MAAM;6BAC9B,CAAC,CAAC;4BACH,uDAAuD;4BACvD,0DAA0D;4BAC1D,iEAAiE;4BACjE,yCAAyC;4BACzC,IAAI,MAAM,GAAG,CAAC,GAAG,UAAU,CAAC,MAAM,CAAC,CAAC,6BAA6B;4BACjE,wDAAwD;4BACxD,IAAI,MAAM,GAAG,CAAC,EAAE,CAAC;gCACf,OAAO,CAAC,GAAG,CAAC,mFAAmF,CAAC,CAAC;gCACjG,MAAM,GAAG,CAAC,GAAG,MAAM,CAAC,CAAC,yBAAyB;gCAC9C,sDAAsD;gCACtD,MAAM,IAAI,GAAG,YAAY,GAAG,UAAU,CAAC,MAAM,CAAC;gCAC9C,IAAI,MAAM,GAAG,IAAI,EAAE,CAAC;oCAClB,2DAA2D;oCAC3D,OAAO,CAAC,GAAG,CAAC,yFAAyF,CAAC,CAAC;oCACvG,MAAM,GAAG,IAAI,CAAC,GAAG,CAAC,IAAI,CAAC,GAAG,CAAC,CAAC,EAAE,CAAC,GAAG,UAAU,CAAC,MAAM,CAAC,EAAE,IAAI,CAAC,CAAC;gCAC9D,CAAC;4BACH,CAAC;iCAAM,CAAC;gCACN,OAAO,CAAC,GAAG,CAAC,mFAAmF,CAAC,CAAC;4BACnG,CAAC;4BACD,WAAW,CAAC,OAAO,GAAG,EAAC,CAAC,EAAE,CAAC,EAAE,CAAC,EAAE,MAAM,EAAE,KAAK,EAAE,KAAK,EAAC,CAAC;4BACtD,OAAO,CAAC,GAAG,CAAC,kDAAkD,EAAE,WAAW,CAAC,OAAO,CAAC,CAAC;4BACrF,sBAAsB,CAAC,GAAG,EAAE;gCAC1B,GAAG,EAAE,MAAA,WAAW,CAAC,OAAO,0CAAE,CAAC;gCAC3B,IAAI,EAAE,cAAc,aAAd,cAAc,uBAAd,cAAc,CAAE,IAAI;gCAC1B,KAAK,EAAE,cAAc,aAAd,cAAc,uBAAd,cAAc,CAAE,KAAK;gCAC5B,MAAM,EAAE,UAAU,CAAC,MAAM;gCACzB,OAAO,EAAE,CAAC;6BACX,CAAC,CAAC;4BACH,gBAAgB,CAAC,OAAO,GAAG,IAAI,CAAC;wBAClC,CAAC,CAAC,CAAC;oBACL,CAAC,CAAC,CAAC;gBACL,CAAC,EAAE,GAAG,CAAC,CAAA,CAAC,6GAA6G;YACvH,CAAC;iBAAM,IAAI,CAAC,oBAAoB,IAAI,WAAW,CAAC,OAAO,IAAI,oBAAoB,EAAE,CAAC;gBAChF,mFAAmF;gBACnF,OAAO,CAAC,GAAG,CACT,6FAA6F,EAC7F,EAAC,GAAG,EAAE,oCAAoC,EAAE,oBAAoB,EAAC,CAClE,CAAC;gBACF,cAAc,CAAC,GAAG,EAAE,oCAAoC,CAAC,CAAC;gBAC1D,QAAQ,CAAC,CAAC,SAAS,EAAE,EAAE;oBACrB,uCACK,SAAS,KACZ,OAAO,EAAE,KAAK,IACd;gBACJ,CAAC,CAAC,CAAC;gBACH,cAAc,CAAC,EAAE,CAAC,CAAC;gBACnB,gBAAgB,CAAC,OAAO,GAAG,KAAK,CAAC;gBACjC,gBAAgB,CAAC,OAAO,GAAG,KAAK,CAAC;YACnC,CAAC;QACH,CAAC;aAAM,CAAC;YACN,IAAI,KAAK,CAAC,OAAO,EAAE,CAAC;gBAClB,MAAA,sBAAsB,CAAC,OAAO,0CAAE,eAAe,CAAC,CAAC,CAAS,EAAE,CAAS,EAAE,KAAa,EAAE,MAAc,EAAE,EAAE;oBACtG,OAAO,CAAC,GAAG,CAAC,oDAAoD,EAAE,EAAC,CAAC,EAAE,CAAC,EAAE,KAAK,EAAE,MAAM,EAAC,CAAC,CAAC;oBACzF,6EAA6E;oBAC7E,MAAM,wBAAwB,GAAG,CAAC,UAAkB,EAAE,eAAuB,EAAE,WAAmB,EAAE,EAAE;wBACpG,OAAO,CAAC,GAAG,CAAC,qFAAqF,CAAC,CAAC;wBAEnG,kFAAkF;wBAClF,MAAM,YAAY,GAAG,UAAU,CAAC,GAAG,CAAC,QAAQ,CAAC,CAAC,MAAM,CAAC;wBACrD,MAAM,iBAAiB,GAAG,YAAY,GAAG,CAAC,CAAC;wBAE3C,4CAA4C;wBAC5C,MAAM,kBAAkB,GAAG,GAAG,EAAE;4BAC9B,IAAI,QAAQ,CAAC,EAAE,KAAK,SAAS,EAAE,CAAC;gCAC9B,OAAO,SAAS,CAAC,aAAa,IAAI,EAAE,CAAC,CAAC,kBAAkB;4BAC1D,CAAC;iCAAM,CAAC;gCACN,wCAAwC;gCACxC,MAAM,EAAC,MAAM,EAAE,YAAY,EAAC,GAAG,UAAU,CAAC,GAAG,CAAC,QAAQ,CAAC,CAAC;gCACxD,MAAM,EAAC,MAAM,EAAE,iBAAiB,EAAC,GAAG,UAAU,CAAC,GAAG,CAAC,QAAQ,CAAC,CAAC;gCAC7D,OAAO,YAAY,GAAG,iBAAiB,CAAC,CAAC,gBAAgB;4BAC3D,CAAC;wBACH,CAAC,CAAC;wBACF,MAAM,eAAe,GAAG,kBAAkB,EAAE,CAAC;wBAC7C,OAAO,CAAC,GAAG,CAAC,yDAAyD,EAAE,eAAe,EAAE,WAAW,EAAE,QAAQ,CAAC,EAAE,CAAC,CAAC;wBAElH,gDAAgD;wBAChD,MAAM,gBAAgB,GAAG,UAAU,GAAG,eAAe,GAAG,CAAC,CAAC;wBAE1D,OAAO,CAAC,GAAG,CAAC,uCAAuC,EAAE;4BACnD,YAAY;4BACZ,iBAAiB;4BACjB,gBAAgB;4BAChB,UAAU;4BACV,eAAe;4BACf,WAAW;4BACX,eAAe;yBAChB,CAAC,CAAC;wBAEH,IAAI,SAAS,GAAG,KAAK,CAAC;wBACtB,IAAI,MAAM,GAAG,UAAU,GAAG,eAAe,CAAC,CAAC,+BAA+B;wBAE1E,wEAAwE;wBACxE,MAAM,aAAa,GAAG,UAAU,CAAC;wBACjC,MAAM,UAAU,GAAG,YAAY,GAAG,CAAC,UAAU,GAAG,eAAe,CAAC,CAAC;wBACjE,wDAAwD;wBACxD,MAAM,gBAAgB,GAAG,UAAU,GAAG,eAAe,CAAC;wBAEtD,OAAO,CAAC,GAAG,CAAC,mEAAmE,EAAE;4BAC/E,aAAa;4BACb,gBAAgB;4BAChB,UAAU;4BACV,WAAW;4BACX,UAAU;4BACV,eAAe;4BACf,YAAY;4BACZ,eAAe;yBAChB,CAAC,CAAC;wBAEH,mEAAmE;wBACnE,MAAM,iBAAiB,GAAG,CAAC,KAAa,EAAE,UAAkB,EAAE,SAAiB,EAAE,EAAE;4BACjF,MAAM,eAAe,GAAG,KAAK,GAAG,UAAU,GAAG,CAAC,CAAC;4BAC/C,MAAM,YAAY,GAAG,SAAS,GAAG,CAAC,CAAC;4BACnC,MAAM,kBAAkB,GAAG,IAAI,CAAC,GAAG,CAAC,eAAe,GAAG,YAAY,CAAC,GAAG,YAAY,CAAC;4BAEnF,+DAA+D;4BAC/D,MAAM,cAAc,GAAG,eAAe,GAAG,YAAY,CAAC;4BAEtD,sDAAsD;4BACtD,MAAM,WAAW,GAAG,cAAc,CAAC,CAAC,CAAC,GAAG,CAAC,CAAC,CAAC,CAAC,CAAC;4BAE7C,gFAAgF;4BAChF,MAAM,mBAAmB,GAAG,cAAc,CAAC,CAAC;gCAC1C,IAAI,CAAC,GAAG,CAAC,IAAI,EAAE,CAAC,GAAG,kBAAkB,GAAG,GAAG,CAAC,CAAC,CAAC;gCAC9C,IAAI,CAAC,GAAG,CAAC,GAAG,EAAE,CAAC,GAAG,kBAAkB,GAAG,GAAG,CAAC,CAAC;4BAE9C,2DAA2D;4BAC3D,MAAM,sBAAsB,GAAG,cAAc,CAAC,CAAC,CAAC,IAAI,CAAC,CAAC,CAAC,IAAI,CAAC;4BAC5D,MAAM,eAAe,GAAG,IAAI,CAAC,GAAG,CAAC,UAAU,GAAG,sBAAsB,EAAE,cAAc,CAAC,CAAC,CAAC,CAAC,CAAC,CAAC,CAAC,EAAE,CAAC,CAAC;4BAE/F,0EAA0E;4BAC1E,MAAM,kBAAkB,GAAG,QAAQ,CAAC,EAAE,KAAK,KAAK,CAAC,CAAC,CAAC,GAAG,CAAC,CAAC,CAAC,CAAC,cAAc,CAAC,CAAC,CAAC,GAAG,CAAC,CAAC,CAAC,GAAG,CAAC,CAAC;4BAEtF,MAAM,YAAY,GAAG,IAAI,CAAC,GAAG,CAAC,WAAW,EAAE,eAAe,CAAC,GAAG,mBAAmB,GAAG,kBAAkB,CAAC;4BAEvG,OAAO,CAAC,GAAG,CAAC,sDAAsD,EAAE;gCAClE,eAAe;gCACf,YAAY;gCACZ,kBAAkB;gCAClB,cAAc;gCACd,mBAAmB;gCACnB,WAAW;gCACX,eAAe;gCACf,sBAAsB;gCACtB,kBAAkB;gCAClB,YAAY;6BACb,CAAC,CAAC;4BAEH,OAAO,YAAY,CAAC;wBACtB,CAAC,CAAC;wBACF,sFAAsF;wBACtF,oIAAoI;wBAEpI,0EAA0E;wBAC1E,mBAAmB;wBACnB,wGAAwG;wBACxG,4FAA4F;wBAC5F,4DAA4D;wBAC5D,qDAAqD;wBACrD,MAAM;wBAEN,+EAA+E;wBAC/E,MAAM,cAAc,GAAG,gBAAgB,GAAG,iBAAiB,CAAC;wBAE5D,iDAAiD;wBACjD,oBAAoB;wBACpB,sBAAsB;wBACtB,uBAAuB;wBACvB,uEAAuE;wBACvE,kFAAkF;wBAClF,MAAM;wBAEN,IAAI,cAAc,IAAI,gBAAgB,IAAI,WAAW,EAAE,CAAC;4BACtD,8DAA8D;4BAC9D,SAAS,GAAG,IAAI,CAAC;4BACjB,MAAM,GAAG,UAAU,GAAG,WAAW,GAAG,eAAe,GAAG,CAAC,CAAC;4BACxD,OAAO,CAAC,GAAG,CAAC,4GAA4G,EAAE,MAAM,CAAC,CAAC;wBACpI,CAAC;6BAAM,IAAI,CAAC,cAAc,IAAI,UAAU,IAAI,WAAW,EAAE,CAAC;4BACxD,0DAA0D;4BAC1D,SAAS,GAAG,KAAK,CAAC;4BAClB,MAAM,GAAG,UAAU,GAAG,eAAe,GAAG,CAAC,CAAC;4BAC1C,OAAO,CAAC,GAAG,CAAC,uFAAuF,EAAE,MAAM,CAAC,CAAC;wBAC/G,CAAC;6BAAM,IAAI,gBAAgB,IAAI,WAAW,EAAE,CAAC;4BAC3C,+BAA+B;4BAC/B,SAAS,GAAG,IAAI,CAAC;4BACjB,MAAM,GAAG,UAAU,GAAG,WAAW,CAAC;4BAClC,OAAO,CAAC,GAAG,CAAC,oFAAoF,EAAE,MAAM,CAAC,CAAC;wBAC5G,CAAC;6BAAM,IAAI,UAAU,IAAI,WAAW,EAAE,CAAC;4BACrC,+BAA+B;4BAC/B,SAAS,GAAG,KAAK,CAAC;4BAClB,MAAM,GAAG,UAAU,GAAG,eAAe,CAAC;4BACtC,OAAO,CAAC,GAAG,CAAC,oFAAoF,EAAE,MAAM,CAAC,CAAC;wBAC5G,CAAC;6BAAM,CAAC;4BACN,0CAA0C;4BAC1C,IAAI,gBAAgB,IAAI,UAAU,EAAE,CAAC;gCACnC,SAAS,GAAG,IAAI,CAAC;gCACjB,MAAM,GAAG,IAAI,CAAC,GAAG,CAAC,eAAe,EAAE,UAAU,GAAG,WAAW,CAAC,CAAC;gCAC7D,OAAO,CAAC,GAAG,CAAC,iEAAiE,EAAE,MAAM,CAAC,CAAC;4BACzF,CAAC;iCAAM,CAAC;gCACN,SAAS,GAAG,KAAK,CAAC;gCAClB,MAAM,GAAG,UAAU,GAAG,eAAe,CAAC;gCACtC,OAAO,CAAC,GAAG,CAAC,iEAAiE,EAAE,MAAM,CAAC,CAAC;4BACzF,CAAC;wBACH,CAAC;wBAED,gDAAgD;wBAChD,OAAO,CAAC,GAAG,CAAC,4CAA4C,EAAE;4BACxD,cAAc,EAAE,MAAM;4BACtB,SAAS;4BACT,eAAe;4BACf,YAAY;4BACZ,WAAW;4BACX,0BAA0B,EAAE,MAAM,GAAG,eAAe;4BACpD,qCAAqC,EAAE,MAAM,GAAG,WAAW,GAAG,YAAY;yBAC3E,CAAC,CAAC;wBAEH,IAAI,SAAS,IAAI,MAAM,GAAG,eAAe,EAAE,CAAC;4BAC1C,MAAM,SAAS,GAAG,MAAM,CAAC;4BACzB,MAAM,GAAG,eAAe,CAAC;4BACzB,OAAO,CAAC,GAAG,CAAC,0EAA0E,EAAE,SAAS,EAAE,IAAI,EAAE,MAAM,CAAC,CAAC;wBACnH,CAAC;wBAED,IAAI,CAAC,SAAS,IAAI,MAAM,GAAG,WAAW,GAAG,YAAY,EAAE,CAAC;4BACtD,MAAM,SAAS,GAAG,MAAM,CAAC;4BACzB,MAAM,GAAG,YAAY,GAAG,WAAW,CAAC;4BACpC,OAAO,CAAC,GAAG,CAAC,yEAAyE,EAAE,SAAS,EAAE,IAAI,EAAE,MAAM,CAAC,CAAC;wBAClH,CAAC;wBAED,yEAAyE;wBACzE,IAAI,SAAS,IAAI,MAAM,GAAG,WAAW,GAAG,UAAU,EAAE,CAAC;4BACnD,OAAO,CAAC,GAAG,CAAC,+EAA+E,CAAC,CAAC;wBAC/F,CAAC;wBAED,IAAI,CAAC,SAAS,IAAI,MAAM,GAAG,UAAU,GAAG,eAAe,EAAE,CAAC;4BACxD,OAAO,CAAC,GAAG,CAAC,+EAA+E,CAAC,CAAC;wBAC/F,CAAC;wBAED,OAAO,CAAC,GAAG,CAAC,0DAA0D,EAAE;4BACtE,MAAM;4BACN,SAAS;4BACT,UAAU,EAAE,MAAM;4BAClB,aAAa,EAAE,MAAM,GAAG,WAAW;4BACnC,cAAc,EAAE,UAAU;4BAC1B,iBAAiB,EAAE,UAAU,GAAG,eAAe;yBAChD,CAAC,CAAC;wBAEH,OAAO,EAAC,MAAM,EAAE,SAAS,EAAC,CAAC;oBAC7B,CAAC,CAAC;oBAEF,uDAAuD;oBACvD,MAAM,iBAAiB,GAAG,aAAa,IAAI,kBAAkB,IAAI,OAAO,kBAAkB,CAAC,MAAM,KAAK,QAAQ;wBAC5G,CAAC,CAAC,kBAAkB,CAAC,MAAM;wBAC3B,CAAC,CAAC,UAAU,CAAC,MAAM,CAAC;oBACtB,OAAO,CAAC,GAAG,CAAC,iEAAiE,EAAE,EAAC,iBAAiB,EAAE,aAAa,EAAE,CAAC,CAAC,aAAa,EAAC,CAAC,CAAC;oBACpI,MAAM,cAAc,GAAG,wBAAwB,CAAC,CAAC,EAAE,MAAM,EAAE,iBAAiB,CAAC,CAAC;oBAC9E,OAAO,CAAC,GAAG,CAAC,4CAA4C,EAAE,cAAc,CAAC,CAAC;oBAC1E,WAAW,CAAC,OAAO,GAAG,EAAC,CAAC,EAAE,CAAC,EAAE,CAAC,EAAE,cAAc,CAAC,MAAM,EAAE,KAAK,EAAE,KAAK,EAAC,CAAC;oBACrE,OAAO,CAAC,GAAG,CAAC,wDAAwD,EAAE,WAAW,CAAC,OAAO,CAAC,CAAC;oBAC3F,IAAI,aAAa,IAAI,kBAAkB,EAAE,CAAC;wBACxC,sEAAsE;wBACtE,MAAM,gBAAgB,GAAG,aAAa,EAAE,CAAC;wBACzC,OAAO,CAAC,GAAG,CAAC,gDAAgD,EAAE,EAAC,kBAAkB,EAAE,gBAAgB,EAAE,oBAAoB,EAAE,KAAK,CAAC,YAAY,EAAC,CAAC,CAAC;wBAChJ,WAAW,CAAC;4BACV,EAAE,EAAE,GAAG;4BACP,KAAK,EAAE,CAAC,aAAa;gCACnB,CAAC,iBACC,GAAG,EAAE,WAAW,CAAC,OAAO,CAAC,CAAC,EAC1B,IAAI,EAAE,cAAc,aAAd,cAAc,uBAAd,cAAc,CAAE,IAAI,EAC1B,KAAK,EAAE,cAAc,aAAd,cAAc,uBAAd,cAAc,CAAE,KAAK,EAC5B,MAAM,EAAE,UAAU,CAAC,MAAM,EACzB,OAAO,EAAE,CAAC,IACP,kBAAkB,EAEvB,CAAC,iBAAE,KAAK,EAAE,cAAc,aAAd,cAAc,uBAAd,cAAc,CAAE,KAAK,EAAE,MAAM,EAAE,UAAU,CAAC,MAAM,IAAK,kBAAkB,CAAC;4BACpF,SAAS,EAAE,CAAC,gBAAgB,CAAC,YAAY,CAAC,CAAC,KAAK,CAAC,YAAY,CAAC,CAAC,EAAE,gBAAgB,CAAC;4BAClF,QAAQ,EAAE,IAAI;4BACd,YAAY,EAAE,GAAG,EAAE;gCACjB,OAAO,CAAC,GAAG,CAAC,kCAAkC,CAAC,CAAC;gCAChD,cAAc,CAAC,GAAG,EAAE,oCAAoC,EAAE,YAAY,CAAC,OAAO,CAAC,CAAC;gCAChF,QAAQ,CAAC,CAAC,SAAS,EAAE,EAAE;oCACrB,uCACK,SAAS,KACZ,OAAO,EAAE,KAAK,IACd;gCACJ,CAAC,CAAC,CAAC;gCACH,gBAAgB,CAAC,OAAO,GAAG,KAAK,CAAC;gCACjC,gBAAgB,CAAC,OAAO,GAAG,KAAK,CAAC;gCACjC,iBAAiB,CAAC,OAAO,GAAG,KAAK,CAAC;gCAClC,cAAc,CAAC,EAAE,CAAC,CAAC;4BACrB,CAAC;4BACD,aAAa;yBACd,CAAC,CAAC;oBACL,CAAC;yBAAM,CAAC;wBACN,OAAO,CAAC,GAAG,CAAC,oDAAoD,EAAE,GAAG,CAAC,CAAC;wBACvE,WAAW,CAAC;4BACV,EAAE,EAAE,GAAG;4BACP,KAAK,EAAE;gCACL,GAAG,EAAE,WAAW,CAAC,OAAO,CAAC,CAAC;gCAC1B,IAAI,EAAE,cAAc,aAAd,cAAc,uBAAd,cAAc,CAAE,IAAI;gCAC1B,KAAK,EAAE,cAAc,aAAd,cAAc,uBAAd,cAAc,CAAE,KAAK;gCAC5B,MAAM,EAAE,UAAU,CAAC,MAAM;gCACzB,OAAO,EAAE,CAAC;6BACX;4BACD,SAAS,EAAE,CACT,CAAC,uBAAuB,CACtB,GAAG,CAAC,CAAC,GAAG,CAAC,CACT,WAAW,CAAC,CAAC,WAAW,CAAC,CACzB,SAAS,CAAC,CAAC,SAAS,CAAC,CACrB,QAAQ,CAAC,CAAC,QAAQ,CAAC,CACnB,UAAU,CAAC,CAAC,UAAU,CAAC,CACvB,YAAY,CAAC,CAAC,KAAK,CAAC,YAAY,CAAC,CACjC,WAAW,CAAC,CAAC,WAAW,CAAC,CACzB,sBAAsB,CAAC,CAAC,sBAAsB,CAAC,CAC/C,SAAS,CAAC,CAAC,SAAS,CAAC,EACrB,CACH;4BACD,QAAQ,EAAE,IAAI;4BACd,YAAY,EAAE,GAAG,EAAE;gCACjB,OAAO,CAAC,GAAG,CAAC,uCAAuC,EAAE,GAAG,CAAC,CAAC;gCAC1D,cAAc,CAAC,GAAG,EAAE,oCAAoC,EAAE,YAAY,CAAC,OAAO,CAAC,CAAC;gCAChF,QAAQ,CAAC,CAAC,SAAS,EAAE,EAAE;oCACrB,yBACK,SAAS,EACZ;gCACJ,CAAC,CAAC,CAAC;gCACH,cAAc,CAAC,EAAE,CAAC,CAAC;4BACrB,CAAC;yBACF,CAAC,CAAC;oBACL,CAAC;gBACH,CAAC,CAAC,CAAC;YACL,CAAC;QACH,CAAC;QACD,IAAI,oBAAoB,EAAE,CAAC;YACzB,WAAW,CAAC,OAAO,GAAG,MAAA,KAAK,CAAC,OAAO,mCAAI,KAAK,CAAC;YAC7C,IAAI,oBAAoB,KAAK,kBAAkB,CAAC,OAAO,EAAE,CAAC;gBACxD,kBAAkB,CAAC,OAAO,GAAG,oBAAoB,CAAC;gBAClD,IAAI,oBAAoB,IAAI,YAAY,CAAC,OAAO,EAAE,CAAC;oBACjD,IAAI,eAAe,CAAC,OAAO,EAAE,CAAC;wBAC5B,YAAY,CAAC,OAAO,CAAC,cAAc,CAAC,EAAC,IAAI,EAAE,eAAe,CAAC,OAAO,EAAC,CAAC,CAAC;oBACvE,CAAC;gBACH,CAAC;YACH,CAAC;QACH,CAAC;IACH,CAAC,EAAE,CAAC,oBAAoB;QACtB,KAAK,CAAC,OAAO;QACb,YAAY;QACZ,aAAa;QACb,kBAAkB;QAClB,oCAAoC;QACpC,GAAG,EAAE,cAAc;QACnB,KAAK,CAAC,YAAY,EAAE,sBAAsB;KAC3C,CAAC,CAAC;IACH,gDAAgD;IAChD,mBAAmB,CACjB,SAAS,EACT,GAAG,EAAE,CAAC,CAAC;QACL,iBAAiB,EAAE,GAAG,EAAE;YACtB,OAAO,CAAC,GAAG,CAAC,4CAA4C,EAAE,GAAG,CAAC,CAAC;YAC/D,QAAQ,CAAC,CAAC,SAAS,EAAE,EAAE;gBACrB,uCACK,SAAS,KACZ,YAAY,EAAE,SAAS,EAAE,OAAO,EAAE,KAAK,IACvC;YACJ,CAAC,CAAC,CAAC;YACH,eAAe,CAAC,OAAO,GAAG,EAAE,CAAC;YAC7B,iBAAiB,CAAC,OAAO,GAAG,KAAK,CAAC;YAClC,gBAAgB,CAAC,OAAO,GAAG,KAAK,CAAC;YACjC,gBAAgB,CAAC,OAAO,GAAG,KAAK,CAAC;YACjC,WAAW,CAAC,OAAO,GAAG,KAAK,CAAC;YAC5B,cAAc,CAAC,GAAG,EAAE,oCAAoC,CAAC,CAAC;YAC1D,cAAc,CAAC,EAAE,CAAC,CAAC;YACnB,IAAI,YAAY,CAAC,OAAO,EAAE,CAAC;gBACzB,YAAY,CAAC,OAAO,CAAC,cAAc,CAAC,EAAC,IAAI,EAAE,EAAE,EAAC,CAAC,CAAC;YAClD,CAAC;QACH,CAAC;KACF,CAAC,EACF,EAAE,CACH,CAAC;IACF,MAAM,WAAW,GAAG,CAAC,GAAW,EAAE,KAAmB,EAAE,EAAE;QACvD,OAAO,CAAC,GAAG,CAAC,kCAAkC,EAAE,EAAC,GAAG,EAAE,KAAK,EAAC,CAAC,CAAC;QAC9D,QAAQ,CAAC,CAAC,SAAS,EAAE,EAAE,CAAC,iCACnB,SAAS,KACZ,CAAC,GAAG,CAAC,EAAE,KAAK,IACZ,CAAC,CAAC;QACJ,IAAI,GAAG,KAAK,cAAc,IAAI,cAAc,EAAE,CAAC;YAC7C,cAAc,CAAC,KAAK,CAAC,CAAC;YACtB,OAAO,CAAC,GAAG,CAAC,sEAAsE,EAAE,YAAY,CAAC,OAAO,CAAC,CAAC;YAC1G,cAAc,CAAC,GAAG,EAAE,oCAAoC,EAAE,YAAY,CAAC,OAAO,CAAC,CAAC;YAChF,gBAAgB,CAAC,OAAO,GAAG,KAAK,CAAC;YACjC,gBAAgB,CAAC,OAAO,GAAG,KAAK,CAAC;YACjC,iBAAiB,CAAC,OAAO,GAAG,KAAK,CAAC;YAClC,QAAQ,CAAC,CAAC,SAAS,EAAE,EAAE;gBACrB,uCACK,SAAS,KACZ,OAAO,EAAE,KAAK,IACd;YACJ,CAAC,CAAC,CAAC;YACH,cAAc,CAAC,EAAE,CAAC,CAAC;QACrB,CAAC;IACH,CAAC,CAAC;IAEF,2DAA2D;IAC3D,MAAM,YAAY,GAAG,CAAC,IAAS,EAAE,IAAS,EAAW,EAAE;QACrD,IAAI,IAAI,KAAK,IAAI;YAAE,OAAO,IAAI,CAAC;QAC/B,IAAI,CAAC,IAAI,IAAI,CAAC,IAAI;YAAE,OAAO,KAAK,CAAC;QACjC,IAAI,OAAO,IAAI,KAAK,QAAQ,IAAI,OAAO,IAAI,KAAK,QAAQ;YAAE,OAAO,KAAK,CAAC;QAEvE,MAAM,KAAK,GAAG,MAAM,CAAC,IAAI,CAAC,IAAI,CAAC,CAAC;QAChC,MAAM,KAAK,GAAG,MAAM,CAAC,IAAI,CAAC,IAAI,CAAC,CAAC;QAChC,IAAI,KAAK,CAAC,MAAM,KAAK,KAAK,CAAC,MAAM;YAAE,OAAO,KAAK,CAAC;QAEhD,KAAK,MAAM,GAAG,IAAI,KAAK,EAAE,CAAC;YACxB,IAAI,IAAI,CAAC,GAAG,CAAC,KAAK,IAAI,CAAC,GAAG,CAAC;gBAAE,OAAO,KAAK,CAAC;QAC5C,CAAC;QACD,OAAO,IAAI,CAAC;IACd,CAAC,CAAC;IAEF,+CAA+C;IAC/C,+IAA+I;IAC/I,MAAM,gBAAgB,GAAG,OAAO,CAAC,GAAG,EAAE;QACpC,IAAI,CAAC,YAAY,CAAC,mBAAmB,CAAC,OAAO,EAAE,UAAU,CAAC,EAAE,CAAC;YAC3D,OAAO,CAAC,GAAG,CAAC,yFAAyF,GAAG,EAAE,CAAC,CAAC;YAC5G,mBAAmB,CAAC,OAAO,GAAG,UAAU,CAAC;QAC3C,CAAC;QACD,OAAO,mBAAmB,CAAC,OAAO,CAAC;IACrC,CAAC,EAAE,CAAC,UAAU,EAAE,GAAG,CAAC,CAAC,CAAC;IAEtB,MAAM,oBAAoB,GAAG,OAAO,CAAC,GAAG,EAAE;QACxC,IAAI,CAAC,YAAY,CAAC,uBAAuB,CAAC,OAAO,EAAE,cAAc,CAAC,EAAE,CAAC;YACnE,OAAO,CAAC,GAAG,CAAC,6FAA6F,GAAG,EAAE,CAAC,CAAC;YAChH,uBAAuB,CAAC,OAAO,GAAG,cAAc,CAAC;QACnD,CAAC;QACD,OAAO,CAAC,GAAG,CAAC,2CAA2C,EAAE,EAAC,GAAG,EAAE,cAAc,EAAE,iCAAiC,EAAE,uBAAuB,CAAC,OAAO,EAAC,CAAC,CAAA;QACnJ,OAAO,uBAAuB,CAAC,OAAO,CAAC;IACzC,CAAC,EAAE,CAAC,cAAc,EAAE,GAAG,CAAC,CAAC,CAAC;IAE1B,sEAAsE;IACtE,iHAAiH;IACjH,kGAAkG;IAClG,MAAM,QAAQ,GAAG,MAAM,CAAC,KAAK,CAAC,CAAC;IAC/B,QAAQ,CAAC,OAAO,GAAG,KAAK,CAAC;IAEzB,MAAM,oBAAoB,GAAG,WAAW,CAAC,GAAG,EAAE;QAC5C,MAAM,WAAW,GAAG,IAAI,CAAC,GAAG,EAAE,CAAC;QAC/B,MAAM,kBAAkB,GAAG,WAAW,GAAG,gBAAgB,CAAC,OAAO,CAAC;QAClE,OAAO,CAAC,GAAG,CACT,8BAA8B,EAC9B;YACE,GAAG;YACH,oBAAoB,EAAE,QAAQ,CAAC,OAAO,CAAC,YAAY;YACnD,4BAA4B,EAAE,iBAAiB,CAAC,OAAO;YACvD,uBAAuB,EAAE,YAAY,CAAC,OAAO;YAC7C,0BAA0B,EAAE,eAAe,CAAC,OAAO;YACnD,oBAAoB,EAAE,kBAAkB;YACxC,sBAAsB,EAAE,oBAAoB;YAC5C,wBAAwB,EAAE,yBAAyB,CAAC,OAAO;SAC5D,CACF,CAAC;QACF,6EAA6E;QAC7E,IAAI,kBAAkB,GAAG,GAAG,EAAE,CAAC;YAC7B,OAAO,CAAC,GAAG,CAAC,2EAA2E,CAAC,CAAC;YACzF,OAAO;QACT,CAAC;QACD,8DAA8D;QAC9D,IAAI,oBAAoB,IAAI,iBAAiB,CAAC,OAAO,EAAE,CAAC;YACtD,OAAO,CAAC,GAAG,CAAC,6EAA6E,CAAC,CAAC;YAC3F,OAAO;QACT,CAAC;QACD,gCAAgC;QAChC,IAAI,yBAAyB,CAAC,OAAO,EAAE,CAAC;YACtC,OAAO,CAAC,GAAG,CAAC,oEAAoE,CAAC,CAAC;YAClF,OAAO;QACT,CAAC;QACD,yBAAyB,CAAC,OAAO,GAAG,IAAI,CAAC;QACzC,gBAAgB,CAAC,OAAO,GAAG,WAAW,CAAC;QACvC,IAAI,CAAC,iBAAiB,CAAC,OAAO,EAAE,CAAC;YAC/B,iBAAiB,CAAC,OAAO,GAAG,IAAI,CAAC;YACjC,WAAW,CAAC,OAAO,GAAG,IAAI,CAAC;YAC3B,IAAI,QAAQ,CAAC,OAAO,CAAC,YAAY,EAAE,CAAC;gBAClC,eAAe,CAAC,OAAO,GAAG,QAAQ,CAAC,OAAO,CAAC,YAAY,CAAC,KAAK,CAAC;YAChE,CAAC;YACD,IAAI,YAAY,CAAC,OAAO,IAAI,eAAe,CAAC,OAAO,EAAE,CAAC;gBACpD,YAAY,CAAC,OAAO,CAAC,cAAc,CAAC;oBAClC,IAAI,EAAE,eAAe,CAAC,OAAO;iBAC9B,CAAC,CAAC;YACL,CAAC;QACH,CAAC;QACD,uFAAuF;QACvF,UAAU,CAAC,GAAG,EAAE;YACd,yBAAyB,CAAC,OAAO,GAAG,KAAK,CAAC;QAC5C,CAAC,EAAE,GAAG,CAAC,CAAC;IACV,CAAC,EAAE,CAAC,GAAG,EAAE,oBAAoB,CAAC,CAAC,CAAC,CAAC,kDAAkD;IAEnF,MAAM,mBAAmB,GAAG,WAAW,CAAC,GAAG,EAAE;QAC3C,OAAO,CAAC,GAAG,CACT,6BAA6B,EAC7B;YACE,GAAG;YACH,sBAAsB,EAAE,YAAY,CAAC,OAAO;YAC5C,sBAAsB,EAAE,oBAAoB;YAC5C,2BAA2B,EAAE,iBAAiB,CAAC,OAAO;SACvD,CACF,CAAC;QACF,4GAA4G;QAC5G,IAAI,oBAAoB,IAAI,iBAAiB,CAAC,OAAO,EAAE,CAAC;YACtD,OAAO,CAAC,GAAG,CAAC,uGAAuG,CAAC,CAAC;YACrH,OAAO;QACT,CAAC;QAED,4DAA4D;QAC5D,wGAAwG;QACxG,iBAAiB,CAAC,OAAO,GAAG,KAAK,CAAC;QAClC,gBAAgB,CAAC,OAAO,GAAG,KAAK,CAAC;QACjC,gBAAgB,CAAC,OAAO,GAAG,KAAK,CAAC;QACjC,WAAW,CAAC,OAAO,GAAG,KAAK,CAAC;QAC5B,QAAQ,CAAC,CAAC,SAAS,EAAE,EAAE;YACrB,uCACK,SAAS,KACZ,OAAO,EAAE,KAAK,IACd;QACJ,CAAC,CAAC,CAAC;QACH,cAAc,CAAC,GAAG,EAAE,oCAAoC,CAAC,CAAC;QAC1D,cAAc,CAAC,EAAE,CAAC,CAAC;QACnB,IAAI,YAAY,CAAC,OAAO,EAAE,CAAC;YACzB,YAAY,CAAC,OAAO,CAAC,cAAc,CAAC,EAAC,IAAI,EAAE,EAAE,EAAC,CAAC,CAAC;YAChD,eAAe,CAAC,OAAO,GAAG,EAAE,CAAC;YAC7B,oFAAoF;QACtF,CAAC;QACD,qGAAqG;IACvG,CAAC,EAAE,CAAC,GAAG,EAAE,oBAAoB,EAAE,oCAAoC,CAAC,CAAC,CAAC;IAEtE,iFAAiF;IACjF,wGAAwG;IACxG,MAAM,iBAAiB,GAAG,OAAO,CAAC,GAAG,EAAE;QACrC,OAAO,CAAC,GAAG,CAAC,wCAAwC,EAAE,EAAC,GAAG,EAAE,YAAY,EAAE,eAAe,EAAE,KAAK,CAAC,OAAO,EAAE,oBAAoB,EAAC,CAAC,CAAC;QACjI,IAAI,CAAC,YAAY,IAAI,CAAC,KAAK,CAAC,OAAO,EAAE,CAAC;YACpC,OAAO,IAAI,CAAC;QACd,CAAC;QACD,OAAO,CACL,CAAC,WAAW,CACV,GAAG,CAAC,CAAC,CAAC,GAAG,EAAE,EAAE;gBACX,4CAA4C;gBAC5C,IAAI,GAAG,IAAI,CAAC,YAAY,CAAC,OAAO,EAAE,CAAC;oBACjC,OAAO,CAAC,GAAG,CAAC,wDAAwD,GAAG,QAAQ,EAAE,GAAG,CAAC,CAAC;gBACxF,CAAC;qBAAM,IAAI,CAAC,GAAG,IAAI,YAAY,CAAC,OAAO,EAAE,CAAC;oBACxC,OAAO,CAAC,GAAG,CAAC,kDAAkD,GAAG,EAAE,CAAC,CAAC;gBACvE,CAAC;qBAAM,IAAI,GAAG,IAAI,YAAY,CAAC,OAAO,IAAI,GAAG,KAAK,YAAY,CAAC,OAAO,EAAE,CAAC;oBACvE,OAAO,CAAC,GAAG,CAAC,iDAAiD,GAAG,WAAW,EAAE,YAAY,CAAC,OAAO,EAAE,SAAS,EAAE,GAAG,CAAC,CAAC;gBACrH,CAAC;gBACD,YAAY,CAAC,OAAO,GAAG,GAAG,CAAC;YAC7B,CAAC,CAAC,CACF,GAAG,CAAC,CAAC,aAAa,GAAG,EAAE,CAAC,CACxB,KAAK,CAAC,CAAC;gBACL,MAAM,CAAC,UAAU;gBACjB,gBAAgB;aACjB,CAAC,CACF,SAAS,CAAC,CAAC,oBAAoB,IAAI,oBAAoB,CAAC,WAAW,CAAC,IAAI,MAAM,CAAC,CAC/E,SAAS,CAAC,CAAC,oBAAoB,IAAI,oBAAoB,CAAC,WAAW,CAAC,IAAI,KAAK,CAAC,CAC9E,aAAa,CAAC,CAAC,oBAAoB,IAAI,oBAAoB,CAAC,eAAe,CAAC,IAAI,CAAC,CAAC,CAClF,YAAY,CAAC,CAAC,CAAC,WAAW,EAAE,EAAE;gBAC5B,eAAe,CAAC,OAAO,GAAG,WAAW,CAAC;gBACtC,OAAO,CAAC,GAAG,CAAC,6CAA6C,EAAE,SAAS,CAAC,CAAC;gBACtE,IAAI,CAAC,WAAW,EAAE,CAAC;oBACjB,IAAI,gBAAgB,CAAC,OAAO,EAAE,CAAC;wBAC7B,YAAY,CAAC,gBAAgB,CAAC,OAAO,CAAC,CAAC;oBACzC,CAAC;oBACD,gBAAgB,CAAC,OAAO,GAAG,UAAU,CAAC,GAAG,EAAE;wBACzC,eAAe,CAAC,eAAe,CAAC,OAAO,CAAC,CAAC;wBACzC,YAAY,IAAI,YAAY,CAAC,eAAe,CAAC,OAAO,CAAC,CAAA;oBACvD,CAAC,EAAE,GAAG,CAAC,CAAC;gBACV,CAAC;qBAAM,CAAC;oBACN,eAAe,CAAC,eAAe,CAAC,OAAO,CAAC,CAAC;oBACzC,YAAY,IAAI,YAAY,CAAC,eAAe,CAAC,OAAO,CAAC,CAAA;gBACvD,CAAC;YACH,CAAC,CAAC,CACF,oBAAoB,CAAC,CAAC,KAAK,CAAC,MAAM,CAAC,eAAe,CAAC,CACnD,WAAW,CAAC,CAAC,WAAW,CAAC,CACzB,UAAU,CAAC,CAAC,CAAC,CAAC,EAAE,EAAE;gBAChB,IAAI,CAAC,CAAC,WAAW,CAAC,GAAG,KAAK,OAAO,EAAE,CAAC;oBAClC,QAAQ,CAAC,OAAO,EAAE,CAAC;gBACrB,CAAC;YACH,CAAC,CAAC,CACF,YAAY,CAAC,CAAC,oBAAoB,IAAI,oBAAoB,CAAC,cAAc,CAAC,IAAI,SAAS,CAAC,CACxF,eAAe,CAAC,eAAe,CAC/B,aAAa,CAAC,CAAC,oBAAoB,IAAI,oBAAoB,CAAC,eAAe,CAAC,IAAI,MAAM,CAAC,CACvF,SAAS,CAAC,CAAC,oBAAoB,IAAI,oBAAoB,CAAC,WAAW,CAAC,IAAI,GAAG,CAAC,CAC5E,kBAAkB,CAAC,aAAa,CAChC,UAAU,CAAC,CAAC,IAAI,CAAC,CACjB,SAAS,CAAC,CAAC,oBAAoB,IAAI,oBAAoB,CAAC,WAAW,CAAC,IAAI,IAAI,CAAC,CAC7E,WAAW,CAAC,CAAC,KAAK,CAAC,CACnB,qBAAqB,CAAC,aAAa,CACnC,QAAQ,CAAC,CAAC,oBAAoB,IAAI,oBAAoB,CAAC,UAAU,CAAC,IAAI,IAAI,CAAC,CAC3E,eAAe,CAAC,CAAC,oBAAoB,IAAI,oBAAoB,CAAC,iBAAiB,CAAC,IAAI,KAAK,CAAC,CAC1F,YAAY,CAAC,EAAE,CACf,WAAW,CAAC,CAAC,KAAK,CAAC,CACnB,6BAA6B,CAC7B,OAAO,CAAC,CAAC,oBAAoB,CAAC,CAC9B,MAAM,CAAC,CAAC,mBAAmB,CAAC,CAC5B,iBAAiB,CAAC,CAAC,oBAAoB,IAAI,oBAAoB,CAAC,mBAAmB,CAAC,IAAI,KAAK,CAAC,CAC9F,eAAe,CAAC,CAAC,CAAC,CAAwD,EAAE,EAAE;gBAC5E,OAAO,CAAC,GAAG,CACT,6DAA6D,EAC7D,CAAC,CAAC,WAAW,CAAC,IAAI,CACnB,CAAC;gBACF,eAAe,IAAI,eAAe,CAAC,CAAC,CAAC,CAAC;YACxC,CAAC,CAAC,EACF,CACH,CAAC;IACJ,CAAC,EAAE;QACD,GAAG,EAAE,WAAW;QAChB,YAAY,EAAE,oBAAoB;QAClC,KAAK,CAAC,OAAO,EAAE,kBAAkB;QACjC,oBAAoB,EAAE,wCAAwC;QAC9D,mBAAmB,EAAE,wCAAwC;QAC7D,gBAAgB,EAAE,0DAA0D;QAC5E,oBAAoB,EAAE,8DAA8D;QACpF,WAAW,EAAE,6BAA6B;QAC1C,eAAe,EAAE,iCAAiC;QAClD,sFAAsF;QACtF,4JAA4J;KAC7J,CAAC,CAAC;IAEH,wDAAwD;IACxD,OAAO,OAAO,CAAC,GAAG,EAAE;;QAClB,OAAO,CAAC,GAAG,CAAC,iCAAiC,EAAE,GAAG,CAAC,CAAC,CAAC,uCAAuC;QAC5F,OAAO,CACL,CAAC,SAAS,CACR;YAAA,CAAC,IAAI,CAAC,KAAK,CAAC,CAAC,CAAC,MAAM,CAAC,OAAO,EAAE,KAAK,CAAC,CAAC,CAAC,GAAG,CAAC,CAAC,sBAAsB,CAAC,CAChE;cAAA,CAAC,CAAC,KAAK,CAAC,OAAO,IAAI,CAAC,YAAY,CAAC,CAAC,CAAC,CACjC,CAAC,gBAAgB,CACf,KAAK,CAAC,CAAC,CAAC,MAAM,CAAC,sBAAsB,EAAE,2BAA2B,CAAC,CAAC,CACpE,QAAQ,CAAC,CAAC,8BAA8B,CAAC,CACzC,OAAO,CAAC,CAAC,GAAG,EAAE;oBACZ,OAAO,CAAC,GAAG,CAAC,8BAA8B,EAAE;wBAC1C,GAAG;wBACH,eAAe,EAAE,KAAK,CAAC,OAAO;wBAC9B,YAAY;wBACZ,0BAA0B,EAAE,gBAAgB,CAAC,OAAO;wBACpD,0BAA0B,EAAE,gBAAgB,CAAC,OAAO;wBACpD,2BAA2B,EAAE,iBAAiB,CAAC,OAAO;wBACtD,oBAAoB,EAAE,KAAK,CAAC,YAAY;qBACzC,CAAC,CAAC;oBACH,QAAQ,CAAC,CAAC,SAAS,EAAE,EAAE;wBACrB,uCACK,SAAS,KACZ,OAAO,EAAE,IAAI,IACb;oBACJ,CAAC,CAAC,CAAC;oBACH,IAAI,CAAC,gBAAgB,CAAC,OAAO,IAAI,YAAY,EAAE,CAAC;wBAC9C,wEAAwE;wBACxE,gBAAgB,CAAC,OAAO,GAAG,IAAI,CAAC;wBAChC,gBAAgB,CAAC,OAAO,GAAG,KAAK,CAAC;wBACjC,WAAW,CAAC;4BACV,EAAE,EAAE,GAAG;4BACP,KAAK,EAAE;gCACL,GAAG,EAAE,CAAC;gCACN,IAAI,EAAE,CAAC;gCACP,KAAK,EAAE,cAAc,aAAd,cAAc,uBAAd,cAAc,CAAE,KAAK;gCAC5B,MAAM,EAAE,UAAU,CAAC,MAAM;gCACzB,OAAO,EAAE,CAAC;6BACX;4BACD,SAAS,EAAE,CACT,CAAC,uBAAuB,CACtB,GAAG,CAAC,CAAC,GAAG,CAAC,CACT,WAAW,CAAC,CAAC,WAAW,CAAC,CACzB,SAAS,CAAC,CAAC,SAAS,CAAC,CACrB,QAAQ,CAAC,CAAC,QAAQ,CAAC,CACnB,UAAU,CAAC,CAAC,UAAU,CAAC,CACvB,YAAY,CAAC,CAAC,KAAK,CAAC,YAAY,CAAC,CACjC,WAAW,CAAC,CAAC,WAAW,CAAC,CACzB,sBAAsB,CAAC,CAAC,sBAAsB,CAAC,CAC/C,SAAS,CAAC,CAAC,SAAS,CAAC,EACrB,CACH;4BACD,QAAQ,EAAE,KAAK;yBAChB,CAAC,CAAC;oBACL,CAAC;oBACD,OAAO,CAAC,GAAG,CAAC,kCAAkC,CAAC,CAAA;gBACjD,CAAC,CAAC,CAEF;kBAAA,CAAC,CAAC,WAAW,CAAC,CAAC,CAAC,CACd,CAAC,IAAI,CACH,KAAK,CAAC,CAAC;wBACL,MAAM,CAAC,cAAc;wBACrB,KAAK,CAAC,YAAY,IAAI,EAAC,KAAK,EAAE,KAAK,CAAC,MAAM,CAAC,IAAI,EAAC;wBAChD,UAAU;qBACX,CAAC,CACF,aAAa,CAAC,CAAC,CAAC,CAAC,CACjB,aAAa,CAAC,CAAC,MAAM,CAAC,CAEtB;sBAAA,CAAC,CAAA,MAAA,KAAK,CAAC,YAAY,0CAAE,KAAK,KAAI,WAAW,CAC3C;oBAAA,EAAE,IAAI,CAAC,CACR,CAAC,CAAC,CAAC,CACF,WAAW,EAAE,CACd,CACH;gBAAA,EAAE,gBAAgB,CAAC,CACpB,CAAC,CAAC,CAAC,CACF,iBAAiB,CAClB,CACH;YAAA,EAAE,IAAI,CACR;UAAA,EAAE,SAAS,CAAC,CACb,CAAC;IACJ,CAAC,EAAE;QACD,GAAG;QACH,sFAAsF;QACtF,sGAAsG;QACtG,4CAA4C;QAC5C,sDAAsD;QACtD,0DAA0D;QAC1D,2DAA2D;QAC3D,WAAW;QACX,yCAAyC;QACzC,uCAAuC;QACvC,QAAQ;QACR,YAAY;QACZ,qEAAqE;QACrE,YAAY;QACZ,8CAA8C;QAC9C,wDAAwD;QACxD,qEAAqE;QACrE,2CAA2C;QAC3C,gDAAgD;QAChD,oCAAoC;QACpC,KAAK,CAAC,OAAO;QACb,sBAAsB;QACtB,SAAS;QACT,gIAAgI;QAChI,qGAAqG;KACtG,CAAC,CAAC;AACL,CAAC,CACF,CACF,CAAC;AAEF,eAAe,mBAAmB,CAAC"}
|
|
1
|
+
{"version":3,"file":"AutoPositionedPopup.js","sourceRoot":"","sources":["../src/AutoPositionedPopup.tsx"],"names":[],"mappings":"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"}
|
package/package.json
CHANGED
|
@@ -1,6 +1,6 @@
|
|
|
1
1
|
{
|
|
2
2
|
"name": "react-native-auto-positioned-popup",
|
|
3
|
-
"version": "1.
|
|
3
|
+
"version": "1.1.1",
|
|
4
4
|
"description": "A highly customizable React Native auto-positioned popup component with search functionality and flexible styling options",
|
|
5
5
|
"main": "lib/index.js",
|
|
6
6
|
"types": "lib/index.d.ts",
|
|
@@ -63,8 +63,8 @@
|
|
|
63
63
|
"@types/node": "^24.10.0",
|
|
64
64
|
"@types/react": "^19.2.2",
|
|
65
65
|
"@types/react-native": "^0.73.0",
|
|
66
|
-
"@typescript-eslint/eslint-plugin": "^8.46.
|
|
67
|
-
"@typescript-eslint/parser": "^8.46.
|
|
66
|
+
"@typescript-eslint/eslint-plugin": "^8.46.4",
|
|
67
|
+
"@typescript-eslint/parser": "^8.46.4",
|
|
68
68
|
"eslint": "^9.39.1",
|
|
69
69
|
"eslint-plugin-react": "^7.37.5",
|
|
70
70
|
"eslint-plugin-react-hooks": "^7.0.1",
|
|
@@ -89,7 +89,7 @@ const ListItem: React.FC<{
|
|
|
89
89
|
}, [rootViews]);
|
|
90
90
|
return useMemo(() => {
|
|
91
91
|
// console.log('AutoPositionedPopup.tsx ListItem=', {index, item, selectedItem});
|
|
92
|
-
const isSelected = item.id === selectedItem?.id;
|
|
92
|
+
const isSelected = item.id === selectedItem?.id || item.title === selectedItem?.title;
|
|
93
93
|
return (
|
|
94
94
|
<TouchableOpacity
|
|
95
95
|
key={item.id}
|
|
@@ -431,7 +431,7 @@ const AutoPositionedPopup = memo(
|
|
|
431
431
|
};
|
|
432
432
|
}, []);
|
|
433
433
|
useEffect(() => {
|
|
434
|
-
console.log('AutoPositionedPopup rootViews=', rootViews);
|
|
434
|
+
console.log('AutoPositionedPopup rootViews=', {tag,rootViews});
|
|
435
435
|
rootViewsRef.current = rootViews;
|
|
436
436
|
if (rootViews.length === 0) {
|
|
437
437
|
hasAddedRootView.current = false;
|
|
@@ -505,6 +505,19 @@ const AutoPositionedPopup = memo(
|
|
|
505
505
|
// }
|
|
506
506
|
return;
|
|
507
507
|
}
|
|
508
|
+
const getStatusBarHeight = (): number => {
|
|
509
|
+
if (Platform.OS === 'android') {
|
|
510
|
+
// Android: Use StatusBar.currentHeight API
|
|
511
|
+
return StatusBar.currentHeight || 24; // Fallback to 24 if undefined
|
|
512
|
+
} else {
|
|
513
|
+
// iOS: Calculate from screen vs window height difference
|
|
514
|
+
const {height: screenHeightFull} = Dimensions.get('screen');
|
|
515
|
+
const {height: windowHeight} = Dimensions.get('window');
|
|
516
|
+
return screenHeightFull - windowHeight; // Safe area top (status bar)
|
|
517
|
+
}
|
|
518
|
+
};
|
|
519
|
+
// Get accurate status bar height for both iOS and Android
|
|
520
|
+
const statusBarHeight = getStatusBarHeight();
|
|
508
521
|
if (useTextInput) {
|
|
509
522
|
if (isKeyboardFullyShown && hasAddedRootView.current && !hasShownRootView.current && state.isFocus) {
|
|
510
523
|
// CRITICAL FIX FOR KEYBOARD POSITION CALCULATION
|
|
@@ -546,11 +559,11 @@ const AutoPositionedPopup = memo(
|
|
|
546
559
|
// 1. ALWAYS try to show popup ABOVE the input field first
|
|
547
560
|
// 2. Only if that goes off the top of screen, show BELOW instead
|
|
548
561
|
// 3. Don't cover/overlap the input field
|
|
549
|
-
let popupY = y - listLayout.height; // Default: above input field
|
|
562
|
+
let popupY = y - listLayout.height+statusBarHeight; // Default: above input field
|
|
550
563
|
// Check if showing above would go off the top of screen
|
|
551
|
-
if (popupY <
|
|
564
|
+
if (popupY < statusBarHeight) {
|
|
552
565
|
console.log('AutoPositionedPopup with keyboard: would go off screen top, showing BELOW instead');
|
|
553
|
-
popupY = y + height; // Show below input field
|
|
566
|
+
popupY = y + height+statusBarHeight; // Show below input field
|
|
554
567
|
// Also check if showing below would go off the bottom
|
|
555
568
|
const maxY = screenHeight - listLayout.height;
|
|
556
569
|
if (popupY > maxY) {
|
|
@@ -593,203 +606,53 @@ const AutoPositionedPopup = memo(
|
|
|
593
606
|
}
|
|
594
607
|
} else {
|
|
595
608
|
if (state.isFocus) {
|
|
609
|
+
if (isKeyboardFullyShown) {
|
|
610
|
+
Keyboard.dismiss();
|
|
611
|
+
return;
|
|
612
|
+
}
|
|
596
613
|
refAutoPositionedPopup.current?.measureInWindow((x: number, y: number, width: number, height: number) => {
|
|
597
614
|
console.log('AutoPositionedPopup !useTextInput measureInWindow=', {x, y, width, height});
|
|
598
|
-
//
|
|
615
|
+
// CORRECT POSITIONING LOGIC (as per user requirement)
|
|
616
|
+
// Default: show popup ABOVE the input field
|
|
617
|
+
// Only if that goes off the top of screen (considering status bar), show BELOW instead
|
|
599
618
|
const calculateOptimalPosition = (componentY: number, componentHeight: number, popupHeight: number) => {
|
|
600
|
-
console.log('AutoPositionedPopup
|
|
601
|
-
|
|
602
|
-
|
|
603
|
-
const windowHeight = Dimensions.get('window').height;
|
|
604
|
-
const visibleAreaCenter = windowHeight / 2;
|
|
605
|
-
|
|
606
|
-
// Cross-platform status bar height handling
|
|
607
|
-
const getStatusBarHeight = () => {
|
|
608
|
-
if (Platform.OS === 'android') {
|
|
609
|
-
return StatusBar.currentHeight || 24; // Android default
|
|
610
|
-
} else {
|
|
611
|
-
// iOS status bar heights vary by device
|
|
612
|
-
const {height: screenHeight} = Dimensions.get('screen');
|
|
613
|
-
const {height: windowHeightLocal} = Dimensions.get('window');
|
|
614
|
-
return screenHeight - windowHeightLocal; // Safe area top
|
|
615
|
-
}
|
|
616
|
-
};
|
|
617
|
-
const statusBarHeight = getStatusBarHeight();
|
|
618
|
-
console.log('AutoPositionedPopup 🔥 Cross-platform StatusBar height:', statusBarHeight, 'Platform:', Platform.OS);
|
|
619
|
-
|
|
620
|
-
// Calculate component center point as requested
|
|
621
|
-
const componentCenterY = componentY + componentHeight / 2;
|
|
622
|
-
|
|
619
|
+
console.log('AutoPositionedPopup calculateOptimalPosition executing');
|
|
620
|
+
// Use window height (visible area) instead of screen height
|
|
621
|
+
const screenHeight = Dimensions.get('window').height;
|
|
623
622
|
console.log('AutoPositionedPopup positioning data:', {
|
|
624
|
-
|
|
625
|
-
visibleAreaCenter,
|
|
626
|
-
componentCenterY,
|
|
623
|
+
screenHeight,
|
|
627
624
|
componentY,
|
|
628
625
|
componentHeight,
|
|
629
626
|
popupHeight,
|
|
630
|
-
statusBarHeight
|
|
631
|
-
});
|
|
632
|
-
|
|
633
|
-
let showAbove = false;
|
|
634
|
-
let finalY = componentY + componentHeight; // Default fallback: show below
|
|
635
|
-
|
|
636
|
-
// CORRECTED LOGIC: Calculate actual usable space considering status bar
|
|
637
|
-
const rawSpaceAbove = componentY;
|
|
638
|
-
const spaceBelow = windowHeight - (componentY + componentHeight);
|
|
639
|
-
// Actual usable space above must account for status bar
|
|
640
|
-
const usableSpaceAbove = componentY - statusBarHeight;
|
|
641
|
-
|
|
642
|
-
console.log('🔥 AutoPositionedPopup CORRECTED SPACE CALCULATION (pre-spacing):', {
|
|
643
|
-
rawSpaceAbove,
|
|
644
|
-
usableSpaceAbove,
|
|
645
|
-
spaceBelow,
|
|
646
|
-
popupHeight,
|
|
647
|
-
componentY,
|
|
648
|
-
componentHeight,
|
|
649
|
-
windowHeight,
|
|
650
|
-
statusBarHeight
|
|
651
|
-
});
|
|
652
|
-
|
|
653
|
-
// ULTRA-TIGHT SPACING: Minimal spacing for tight visual connection
|
|
654
|
-
const getOptimalSpacing = (compY: number, compHeight: number, winHeight: number) => {
|
|
655
|
-
const componentCenter = compY + compHeight / 2;
|
|
656
|
-
const screenCenter = winHeight / 2;
|
|
657
|
-
const distanceFromCenter = Math.abs(componentCenter - screenCenter) / screenCenter;
|
|
658
|
-
|
|
659
|
-
// Check if component is in bottom half for ultra-tight spacing
|
|
660
|
-
const isInBottomHalf = componentCenter > screenCenter;
|
|
661
|
-
|
|
662
|
-
// Base spacing: extremely small for bottom components
|
|
663
|
-
const baseSpacing = isInBottomHalf ? 0.5 : 3;
|
|
664
|
-
|
|
665
|
-
// Aggressive spacing reduction for edge positions - ultra tight for bottom half
|
|
666
|
-
const edgeProximityFactor = isInBottomHalf ?
|
|
667
|
-
Math.max(0.15, 1 - distanceFromCenter * 1.2) :
|
|
668
|
-
Math.max(0.4, 1 - distanceFromCenter * 0.7);
|
|
669
|
-
|
|
670
|
-
// Minimal component-relative spacing for bottom components
|
|
671
|
-
const relativeSpacingPercent = isInBottomHalf ? 0.02 : 0.12;
|
|
672
|
-
const relativeSpacing = Math.min(compHeight * relativeSpacingPercent, isInBottomHalf ? 3 : 10);
|
|
673
|
-
|
|
674
|
-
// Strong platform adjustment - much smaller for Android bottom components
|
|
675
|
-
const platformMultiplier = Platform.OS === 'ios' ? 1.0 : (isInBottomHalf ? 0.5 : 0.9);
|
|
676
|
-
|
|
677
|
-
const finalSpacing = Math.max(baseSpacing, relativeSpacing) * edgeProximityFactor * platformMultiplier;
|
|
678
|
-
|
|
679
|
-
console.log('AutoPositionedPopup 🔥 Advanced spacing calculation:', {
|
|
680
|
-
componentCenter,
|
|
681
|
-
screenCenter,
|
|
682
|
-
distanceFromCenter,
|
|
683
|
-
isInBottomHalf,
|
|
684
|
-
edgeProximityFactor,
|
|
685
|
-
baseSpacing,
|
|
686
|
-
relativeSpacing,
|
|
687
|
-
relativeSpacingPercent,
|
|
688
|
-
platformMultiplier,
|
|
689
|
-
finalSpacing
|
|
690
|
-
});
|
|
691
|
-
|
|
692
|
-
return finalSpacing;
|
|
693
|
-
};
|
|
694
|
-
// const POPUP_SPACING = getOptimalSpacing(componentY, componentHeight, windowHeight);
|
|
695
|
-
// console.log('🔥 Optimal popup spacing calculated:', POPUP_SPACING, 'for componentHeight:', componentHeight, 'at Y:', componentY);
|
|
696
|
-
|
|
697
|
-
// console.log('🔥 AutoPositionedPopup FINAL SPACE CHECK WITH SPACING:', {
|
|
698
|
-
// POPUP_SPACING,
|
|
699
|
-
// 'usableSpaceAbove >= popupHeight + POPUP_SPACING': usableSpaceAbove >= popupHeight + POPUP_SPACING,
|
|
700
|
-
// 'spaceBelow >= popupHeight + POPUP_SPACING': spaceBelow >= popupHeight + POPUP_SPACING,
|
|
701
|
-
// 'usableSpaceAbove needed': popupHeight + POPUP_SPACING,
|
|
702
|
-
// 'spaceBelow needed': popupHeight + POPUP_SPACING
|
|
703
|
-
// });
|
|
704
|
-
|
|
705
|
-
// FORCE ABOVE PRIORITY: If component is in bottom half, always try above first
|
|
706
|
-
const isInBottomHalf = componentCenterY > visibleAreaCenter;
|
|
707
|
-
|
|
708
|
-
// console.log('🔥 Position decision factors:', {
|
|
709
|
-
// isInBottomHalf,
|
|
710
|
-
// componentCenterY,
|
|
711
|
-
// visibleAreaCenter,
|
|
712
|
-
// 'spaceBelow >= needed': spaceBelow >= popupHeight + POPUP_SPACING,
|
|
713
|
-
// 'usableSpaceAbove >= needed': usableSpaceAbove >= popupHeight + POPUP_SPACING
|
|
714
|
-
// });
|
|
715
|
-
|
|
716
|
-
if (isInBottomHalf && usableSpaceAbove >= popupHeight) {
|
|
717
|
-
// Component in bottom half + enough space above = FORCE ABOVE
|
|
718
|
-
showAbove = true;
|
|
719
|
-
finalY = componentY - popupHeight + componentHeight / 2;
|
|
720
|
-
console.log('AutoPositionedPopup 🔥 AutoPositionedPopup: FORCE ABOVE - bottom half component with enough space, finalY=', finalY);
|
|
721
|
-
} else if (!isInBottomHalf && spaceBelow >= popupHeight) {
|
|
722
|
-
// Component in top half + enough space below = show below
|
|
723
|
-
showAbove = false;
|
|
724
|
-
finalY = componentY + componentHeight * 2;
|
|
725
|
-
console.log('🔥 AutoPositionedPopup: Showing below - top half component with enough space, finalY=', finalY);
|
|
726
|
-
} else if (usableSpaceAbove >= popupHeight) {
|
|
727
|
-
// Fallback: enough space above
|
|
728
|
-
showAbove = true;
|
|
729
|
-
finalY = componentY - popupHeight;
|
|
730
|
-
console.log('🔥 AutoPositionedPopup: Showing above - enough space available (fallback), finalY=', finalY);
|
|
731
|
-
} else if (spaceBelow >= popupHeight) {
|
|
732
|
-
// Fallback: enough space below
|
|
733
|
-
showAbove = false;
|
|
734
|
-
finalY = componentY + componentHeight;
|
|
735
|
-
console.log('🔥 AutoPositionedPopup: Showing below - enough space available (fallback), finalY=', finalY);
|
|
736
|
-
} else {
|
|
737
|
-
// Emergency fallback: choose larger space
|
|
738
|
-
if (usableSpaceAbove >= spaceBelow) {
|
|
739
|
-
showAbove = true;
|
|
740
|
-
finalY = Math.max(statusBarHeight, componentY - popupHeight);
|
|
741
|
-
console.log('🔥 AutoPositionedPopup: Emergency above - larger space, finalY=', finalY);
|
|
742
|
-
} else {
|
|
743
|
-
showAbove = false;
|
|
744
|
-
finalY = componentY + componentHeight;
|
|
745
|
-
console.log('🔥 AutoPositionedPopup: Emergency below - larger space, finalY=', finalY);
|
|
746
|
-
}
|
|
747
|
-
}
|
|
748
|
-
|
|
749
|
-
// Enhanced boundary check with detailed logging
|
|
750
|
-
console.log('AutoPositionedPopup 🔥 Pre-boundary check:', {
|
|
751
|
-
originalFinalY: finalY,
|
|
752
|
-
showAbove,
|
|
753
627
|
statusBarHeight,
|
|
754
|
-
|
|
755
|
-
popupHeight,
|
|
756
|
-
'finalY < statusBarHeight': finalY < statusBarHeight,
|
|
757
|
-
'finalY + popupHeight > windowHeight': finalY + popupHeight > windowHeight
|
|
628
|
+
platform: Platform.OS
|
|
758
629
|
});
|
|
759
|
-
|
|
760
|
-
|
|
761
|
-
|
|
762
|
-
|
|
763
|
-
|
|
764
|
-
|
|
765
|
-
|
|
766
|
-
|
|
767
|
-
|
|
768
|
-
|
|
769
|
-
|
|
770
|
-
|
|
771
|
-
|
|
772
|
-
|
|
773
|
-
|
|
774
|
-
|
|
775
|
-
}
|
|
776
|
-
|
|
777
|
-
if (!showAbove && finalY < componentY + componentHeight) {
|
|
778
|
-
console.log('AutoPositionedPopup 🚨 WARNING: Below positioning may overlap with component!');
|
|
630
|
+
// CORRECT POSITIONING LOGIC (with status bar consideration):
|
|
631
|
+
// 1. Default: above input field
|
|
632
|
+
let popupY = componentY - popupHeight+statusBarHeight;
|
|
633
|
+
// 2. Check if showing above would overlap with status bar
|
|
634
|
+
// The top boundary should be statusBarHeight, not 0
|
|
635
|
+
if (popupY < statusBarHeight) {
|
|
636
|
+
console.log('AutoPositionedPopup: would overlap status bar, showing BELOW instead');
|
|
637
|
+
popupY = componentY + componentHeight+statusBarHeight; // Show below input field
|
|
638
|
+
// 3. Also check if showing below would go off the bottom
|
|
639
|
+
const maxY = screenHeight - popupHeight;
|
|
640
|
+
if (popupY > maxY) {
|
|
641
|
+
// If both positions are problematic, clamp to visible area
|
|
642
|
+
// But ensure it doesn't go above status bar
|
|
643
|
+
console.log('AutoPositionedPopup: both positions problematic, clamping to visible area');
|
|
644
|
+
popupY = Math.min(Math.max(statusBarHeight, componentY - popupHeight), maxY);
|
|
645
|
+
}
|
|
646
|
+
} else {
|
|
647
|
+
console.log('AutoPositionedPopup: showing ABOVE input field (preferred position, below status bar)');
|
|
779
648
|
}
|
|
780
|
-
|
|
781
|
-
|
|
782
|
-
|
|
783
|
-
|
|
784
|
-
'popupTop': finalY,
|
|
785
|
-
'popupBottom': finalY + popupHeight,
|
|
786
|
-
'componentTop': componentY,
|
|
787
|
-
'componentBottom': componentY + componentHeight
|
|
649
|
+
console.log('AutoPositionedPopup final position:', {
|
|
650
|
+
popupY,
|
|
651
|
+
'showing above': popupY < componentY,
|
|
652
|
+
'below status bar': popupY >= statusBarHeight
|
|
788
653
|
});
|
|
789
|
-
|
|
790
|
-
return {finalY, showAbove};
|
|
654
|
+
return {finalY: popupY, showAbove: popupY < componentY};
|
|
791
655
|
};
|
|
792
|
-
|
|
793
656
|
// Calculate position ONCE based on actual popup height
|
|
794
657
|
const actualPopupHeight = CustomPopView && CustomPopViewStyle && typeof CustomPopViewStyle.height === 'number'
|
|
795
658
|
? CustomPopViewStyle.height
|
|
@@ -1181,14 +1044,16 @@ const AutoPositionedPopup = memo(
|
|
|
1181
1044
|
'hasAddedRootView.current': hasAddedRootView.current,
|
|
1182
1045
|
'hasShownRootView.current': hasShownRootView.current,
|
|
1183
1046
|
'hasTriggeredFocus.current': hasTriggeredFocus.current,
|
|
1184
|
-
'
|
|
1185
|
-
});
|
|
1186
|
-
setState((prevState) => {
|
|
1187
|
-
return {
|
|
1188
|
-
...prevState,
|
|
1189
|
-
isFocus: true,
|
|
1190
|
-
};
|
|
1047
|
+
'selectedItem': selectedItem
|
|
1191
1048
|
});
|
|
1049
|
+
{
|
|
1050
|
+
setState((prevState) => {
|
|
1051
|
+
return {
|
|
1052
|
+
...prevState,
|
|
1053
|
+
isFocus: true,
|
|
1054
|
+
};
|
|
1055
|
+
});
|
|
1056
|
+
}
|
|
1192
1057
|
if (!hasAddedRootView.current && useTextInput) {
|
|
1193
1058
|
// TextInput version: hide first, show after keyboard is fully displayed
|
|
1194
1059
|
hasAddedRootView.current = true;
|
|
@@ -1209,7 +1074,7 @@ const AutoPositionedPopup = memo(
|
|
|
1209
1074
|
fetchData={fetchData}
|
|
1210
1075
|
pageSize={pageSize}
|
|
1211
1076
|
renderItem={renderItem}
|
|
1212
|
-
selectedItem={
|
|
1077
|
+
selectedItem={selectedItem}
|
|
1213
1078
|
localSearch={localSearch}
|
|
1214
1079
|
showListEmptyComponent={showListEmptyComponent}
|
|
1215
1080
|
emptyText={emptyText}
|