@app-studio/web 0.8.91 → 0.8.93
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/components/Title/Title/Title.props.d.ts +26 -27
- package/dist/components/Title/Title/Title.state.d.ts +4 -118
- package/dist/components/Title/Title/Title.type.d.ts +1 -9
- package/dist/components/Title/Title/Title.view.d.ts +0 -5
- package/dist/components/Title/Title/TypewriterEffect.d.ts +17 -0
- package/dist/components/Title/examples/alternating.d.ts +1 -1
- package/dist/components/Title/examples/animated.d.ts +1 -1
- package/dist/components/Title/examples/custom.d.ts +1 -1
- package/dist/components/Title/examples/default.d.ts +1 -1
- package/dist/components/Title/examples/directAnimation.d.ts +1 -1
- package/dist/components/Title/examples/{gradientTest.d.ts → gradient.d.ts} +1 -1
- package/dist/components/Title/examples/hero.d.ts +1 -1
- package/dist/components/Title/examples/{highlightTest.d.ts → highlight.d.ts} +1 -1
- package/dist/components/Title/examples/highlightStyles.d.ts +5 -0
- package/dist/components/Title/examples/highlighted.d.ts +1 -1
- package/dist/components/Title/examples/index.d.ts +4 -2
- package/dist/components/Title/examples/responsive.d.ts +1 -1
- package/dist/components/Title/examples/typewriterHighlight.d.ts +5 -0
- package/dist/web.cjs.development.js +260 -397
- package/dist/web.cjs.development.js.map +1 -1
- package/dist/web.cjs.production.min.js +1 -1
- package/dist/web.cjs.production.min.js.map +1 -1
- package/dist/web.esm.js +261 -398
- package/dist/web.esm.js.map +1 -1
- package/dist/web.umd.development.js +260 -397
- package/dist/web.umd.development.js.map +1 -1
- package/dist/web.umd.production.min.js +1 -1
- package/dist/web.umd.production.min.js.map +1 -1
- package/package.json +2 -2
- package/dist/components/Title/examples/animationTest.d.ts +0 -5
package/dist/web.esm.js
CHANGED
|
@@ -5,7 +5,7 @@ import 'core-js/modules/es.array.iterator.js';
|
|
|
5
5
|
import 'core-js/modules/es.string.includes.js';
|
|
6
6
|
import 'core-js/modules/web.dom-collections.iterator.js';
|
|
7
7
|
import 'core-js/modules/es.regexp.to-string.js';
|
|
8
|
-
import { View, Horizontal, Vertical, Element, Text as Text$1, Center, useTheme, Image, Typography, Input, Form, useInView } from 'app-studio';
|
|
8
|
+
import { View, Horizontal, Vertical, Element, Text as Text$1, Center, useTheme, Image, useHover, Typography, Input, Form, useInView } from 'app-studio';
|
|
9
9
|
import 'core-js/modules/es.symbol.description.js';
|
|
10
10
|
import 'core-js/modules/es.parse-float.js';
|
|
11
11
|
import 'core-js/modules/es.string.trim-end.js';
|
|
@@ -3394,18 +3394,6 @@ var BadgeView = _ref => {
|
|
|
3394
3394
|
// Badge component that displays a small indicator, typically used for counts or status
|
|
3395
3395
|
var Badge = props => /*#__PURE__*/React.createElement(BadgeView, Object.assign({}, props));
|
|
3396
3396
|
|
|
3397
|
-
var useButtonState = () => {
|
|
3398
|
-
var [isHovered, setIsHovered] = React.useState(false);
|
|
3399
|
-
// This custom react hook 'useButtonState' is defined for managing the state of a button, especially for hover interactions.
|
|
3400
|
-
return {
|
|
3401
|
-
isHovered,
|
|
3402
|
-
setIsHovered
|
|
3403
|
-
};
|
|
3404
|
-
// The 'setIsHovered' function is used to update the value of 'isHovered' state when the hover status of the button changes.
|
|
3405
|
-
// A state variable 'isHovered' is declared with its initial value set to 'false', indicating that the button is not hovered by default.
|
|
3406
|
-
};
|
|
3407
|
-
// The hook returns an object containing 'isHovered' state and the 'setIsHovered' function to enable state management from the consumer component.
|
|
3408
|
-
|
|
3409
3397
|
// This function initializes the Link component's state using the useState hook and exposes its state and setter function.
|
|
3410
3398
|
var useLinkState = () => {
|
|
3411
3399
|
var [isHovered, setIsHovered] = useState(false);
|
|
@@ -3990,25 +3978,14 @@ var ButtonView = _ref => {
|
|
|
3990
3978
|
|
|
3991
3979
|
// Importing a custom hook to manage the state specific to the button component.
|
|
3992
3980
|
var ButtonComponent = props => {
|
|
3993
|
-
|
|
3994
|
-
var {
|
|
3995
|
-
isHovered,
|
|
3996
|
-
setIsHovered
|
|
3997
|
-
} = useButtonState();
|
|
3998
|
-
// Defining the button component with generic React Functional Component type augmented with ButtonProps type.
|
|
3999
|
-
var handleHover = () => setIsHovered(!isHovered);
|
|
3981
|
+
var [ref, hover] = useHover();
|
|
4000
3982
|
// Destructuring the state and state update function from the custom hook for button state management.
|
|
4001
3983
|
return (
|
|
4002
3984
|
/*#__PURE__*/
|
|
4003
3985
|
// Defines a function to toggle the hover state of the button.
|
|
4004
3986
|
React.createElement(ButtonView, Object.assign({
|
|
4005
|
-
|
|
4006
|
-
|
|
4007
|
-
setIsHovered: setIsHovered,
|
|
4008
|
-
// Passing the isHovered state and the setIsHovered function to the ButtonView.
|
|
4009
|
-
onMouseEnter: handleHover,
|
|
4010
|
-
// Binding handleHover function to onMouseEnter and onMouseLeave events to toggle hover effect.
|
|
4011
|
-
onMouseLeave: handleHover
|
|
3987
|
+
ref: ref,
|
|
3988
|
+
isHovered: hover
|
|
4012
3989
|
}, props))
|
|
4013
3990
|
);
|
|
4014
3991
|
// Exports the Button component for use in other parts of the application.
|
|
@@ -13638,227 +13615,66 @@ var TabsComponent = _ref => {
|
|
|
13638
13615
|
var Tabs = /*#__PURE__*/React.memo(TabsComponent);
|
|
13639
13616
|
|
|
13640
13617
|
/**
|
|
13641
|
-
* Custom hook for managing Title component state
|
|
13618
|
+
* Custom hook for managing Title component state
|
|
13642
13619
|
*/
|
|
13643
13620
|
var useTitleState = props => {
|
|
13644
13621
|
var {
|
|
13645
|
-
animation = 'none',
|
|
13646
|
-
animationDirection = 'left',
|
|
13647
|
-
animationDuration = '1s',
|
|
13648
|
-
animationDelay = '0s',
|
|
13649
13622
|
children,
|
|
13623
|
+
// Original children
|
|
13650
13624
|
_isInView = false,
|
|
13651
13625
|
alternateHighlightText = [],
|
|
13652
13626
|
alternateAnimation = false,
|
|
13627
|
+
// Default to false as per prop definition
|
|
13653
13628
|
alternateDuration = 3000,
|
|
13654
|
-
highlightText
|
|
13629
|
+
highlightText: initialHighlightText,
|
|
13630
|
+
// Renamed to avoid confusion with the dynamic target
|
|
13631
|
+
highlightTypewriter = false,
|
|
13632
|
+
highlightTypewriterDuration = 1500
|
|
13655
13633
|
} = props;
|
|
13656
|
-
// State for
|
|
13657
|
-
var [
|
|
13658
|
-
// State for
|
|
13659
|
-
var [
|
|
13660
|
-
//
|
|
13661
|
-
var [alternatingContent, setAlternatingContent] = useState(children);
|
|
13634
|
+
// State for the final text to be displayed (could be original children or alternating text)
|
|
13635
|
+
var [finalDisplayedText, setFinalDisplayedText] = useState(children);
|
|
13636
|
+
// State for the text that should be actively highlighted (could be initialHighlightText or a word from alternateHighlightText)
|
|
13637
|
+
var [activeHighlightTarget, setActiveHighlightTarget] = useState(initialHighlightText);
|
|
13638
|
+
// We don't need state for typewriter text anymore as we're using the TypewriterEffect component
|
|
13662
13639
|
// Handle alternating highlight text animation
|
|
13663
13640
|
useEffect(() => {
|
|
13664
|
-
//
|
|
13665
|
-
|
|
13666
|
-
//
|
|
13667
|
-
|
|
13641
|
+
// If not using alternating animation or conditions not met, reset to initial/non-alternating state
|
|
13642
|
+
if (!alternateAnimation || alternateHighlightText.length === 0 || !_isInView || typeof children !== 'string' ||
|
|
13643
|
+
// Base text must be a string for replacement
|
|
13644
|
+
typeof initialHighlightText !== 'string' // Placeholder must be a string
|
|
13645
|
+
) {
|
|
13646
|
+
setFinalDisplayedText(children);
|
|
13647
|
+
setActiveHighlightTarget(initialHighlightText);
|
|
13668
13648
|
return () => {};
|
|
13669
13649
|
}
|
|
13670
|
-
//
|
|
13671
|
-
if (typeof children !== 'string') {
|
|
13672
|
-
return () => {};
|
|
13673
|
-
}
|
|
13674
|
-
// Set initial content with the first alternating text
|
|
13650
|
+
// Proceed with alternating animation
|
|
13675
13651
|
var baseText = children;
|
|
13652
|
+
var placeholder = initialHighlightText;
|
|
13676
13653
|
var currentIndex = 0;
|
|
13677
|
-
// Function to update the
|
|
13678
|
-
var
|
|
13679
|
-
|
|
13680
|
-
|
|
13681
|
-
|
|
13682
|
-
|
|
13683
|
-
|
|
13684
|
-
|
|
13654
|
+
// Function to update the state for alternating text
|
|
13655
|
+
var updateAlternatingState = index => {
|
|
13656
|
+
var currentWordToHighlight = alternateHighlightText[index];
|
|
13657
|
+
// Replace the placeholder in the baseText with the current alternating word
|
|
13658
|
+
var regex = new RegExp(placeholder, 'gi');
|
|
13659
|
+
var newContent = baseText.replace(regex, currentWordToHighlight);
|
|
13660
|
+
setFinalDisplayedText(newContent);
|
|
13661
|
+
setActiveHighlightTarget(currentWordToHighlight); // Set the current word as the highlight target
|
|
13685
13662
|
};
|
|
13686
|
-
// Set initial
|
|
13687
|
-
|
|
13663
|
+
// Set initial alternating state
|
|
13664
|
+
updateAlternatingState(currentIndex);
|
|
13688
13665
|
// Create interval to cycle through the alternateHighlightText array
|
|
13689
13666
|
var interval = setInterval(() => {
|
|
13690
13667
|
currentIndex = (currentIndex + 1) % alternateHighlightText.length;
|
|
13691
|
-
|
|
13668
|
+
updateAlternatingState(currentIndex);
|
|
13692
13669
|
}, alternateDuration);
|
|
13693
13670
|
return () => clearInterval(interval);
|
|
13694
|
-
}, [alternateAnimation, alternateHighlightText, alternateDuration,
|
|
13695
|
-
//
|
|
13696
|
-
|
|
13697
|
-
// Only start the typewriter animation when the component is in view
|
|
13698
|
-
if (animation === 'typewriter' && typeof children === 'string' && _isInView) {
|
|
13699
|
-
var text = children;
|
|
13700
|
-
var currentIndex = 0;
|
|
13701
|
-
setDisplayText('');
|
|
13702
|
-
var interval = setInterval(() => {
|
|
13703
|
-
if (currentIndex <= text.length) {
|
|
13704
|
-
setDisplayText(text.substring(0, currentIndex));
|
|
13705
|
-
currentIndex++;
|
|
13706
|
-
} else {
|
|
13707
|
-
clearInterval(interval);
|
|
13708
|
-
}
|
|
13709
|
-
}, 100);
|
|
13710
|
-
return () => clearInterval(interval);
|
|
13711
|
-
}
|
|
13712
|
-
// Reset the text if not in view
|
|
13713
|
-
if (animation === 'typewriter' && !_isInView) {
|
|
13714
|
-
setDisplayText('');
|
|
13715
|
-
}
|
|
13716
|
-
return () => {};
|
|
13717
|
-
}, [animation, children, _isInView]);
|
|
13718
|
-
// Get animation configuration based on animation type
|
|
13719
|
-
var getAnimation = () => {
|
|
13720
|
-
// For typewriter animation, we handle it separately with useState and useEffect
|
|
13721
|
-
if (animation === 'typewriter') {
|
|
13722
|
-
return undefined;
|
|
13723
|
-
}
|
|
13724
|
-
switch (animation) {
|
|
13725
|
-
case 'fadeIn':
|
|
13726
|
-
return {
|
|
13727
|
-
from: {
|
|
13728
|
-
opacity: 0
|
|
13729
|
-
},
|
|
13730
|
-
to: {
|
|
13731
|
-
opacity: 1
|
|
13732
|
-
},
|
|
13733
|
-
duration: animationDuration,
|
|
13734
|
-
delay: animationDelay,
|
|
13735
|
-
// iterationCount: 'infinite',
|
|
13736
|
-
direction: 'alternate'
|
|
13737
|
-
};
|
|
13738
|
-
case 'slideIn':
|
|
13739
|
-
switch (animationDirection) {
|
|
13740
|
-
case 'left':
|
|
13741
|
-
return {
|
|
13742
|
-
from: {
|
|
13743
|
-
transform: 'translateX(-100%)'
|
|
13744
|
-
},
|
|
13745
|
-
to: {
|
|
13746
|
-
transform: 'translateX(0)'
|
|
13747
|
-
},
|
|
13748
|
-
duration: animationDuration,
|
|
13749
|
-
delay: animationDelay,
|
|
13750
|
-
// iterationCount: 'infinite',
|
|
13751
|
-
direction: 'alternate'
|
|
13752
|
-
};
|
|
13753
|
-
case 'right':
|
|
13754
|
-
return {
|
|
13755
|
-
from: {
|
|
13756
|
-
transform: 'translateX(100%)'
|
|
13757
|
-
},
|
|
13758
|
-
to: {
|
|
13759
|
-
transform: 'translateX(0)'
|
|
13760
|
-
},
|
|
13761
|
-
duration: animationDuration,
|
|
13762
|
-
delay: animationDelay,
|
|
13763
|
-
// iterationCount: 'infinite',
|
|
13764
|
-
direction: 'alternate'
|
|
13765
|
-
};
|
|
13766
|
-
case 'top':
|
|
13767
|
-
return {
|
|
13768
|
-
from: {
|
|
13769
|
-
transform: 'translateY(-100%)'
|
|
13770
|
-
},
|
|
13771
|
-
to: {
|
|
13772
|
-
transform: 'translateY(0)'
|
|
13773
|
-
},
|
|
13774
|
-
duration: animationDuration,
|
|
13775
|
-
delay: animationDelay,
|
|
13776
|
-
// iterationCount: 'infinite',
|
|
13777
|
-
direction: 'alternate'
|
|
13778
|
-
};
|
|
13779
|
-
case 'bottom':
|
|
13780
|
-
return {
|
|
13781
|
-
from: {
|
|
13782
|
-
transform: 'translateY(100%)'
|
|
13783
|
-
},
|
|
13784
|
-
to: {
|
|
13785
|
-
transform: 'translateY(0)'
|
|
13786
|
-
},
|
|
13787
|
-
duration: animationDuration,
|
|
13788
|
-
delay: animationDelay,
|
|
13789
|
-
// iterationCount: 'infinite',
|
|
13790
|
-
direction: 'alternate'
|
|
13791
|
-
};
|
|
13792
|
-
default:
|
|
13793
|
-
return {
|
|
13794
|
-
from: {
|
|
13795
|
-
transform: 'translateX(-100%)'
|
|
13796
|
-
},
|
|
13797
|
-
to: {
|
|
13798
|
-
transform: 'translateX(0)'
|
|
13799
|
-
},
|
|
13800
|
-
duration: animationDuration,
|
|
13801
|
-
delay: animationDelay,
|
|
13802
|
-
// iterationCount: 'infinite',
|
|
13803
|
-
direction: 'alternate'
|
|
13804
|
-
};
|
|
13805
|
-
}
|
|
13806
|
-
case 'bounce':
|
|
13807
|
-
return {
|
|
13808
|
-
from: {
|
|
13809
|
-
transform: 'translateY(0)'
|
|
13810
|
-
},
|
|
13811
|
-
'20%': {
|
|
13812
|
-
transform: 'translateY(-30px)'
|
|
13813
|
-
},
|
|
13814
|
-
'40%': {
|
|
13815
|
-
transform: 'translateY(0)'
|
|
13816
|
-
},
|
|
13817
|
-
'60%': {
|
|
13818
|
-
transform: 'translateY(-15px)'
|
|
13819
|
-
},
|
|
13820
|
-
'80%': {
|
|
13821
|
-
transform: 'translateY(0)'
|
|
13822
|
-
},
|
|
13823
|
-
to: {
|
|
13824
|
-
transform: 'translateY(0)'
|
|
13825
|
-
},
|
|
13826
|
-
duration: animationDuration,
|
|
13827
|
-
delay: animationDelay,
|
|
13828
|
-
iterationCount: '1'
|
|
13829
|
-
};
|
|
13830
|
-
case 'highlight':
|
|
13831
|
-
return {
|
|
13832
|
-
from: {
|
|
13833
|
-
backgroundSize: '0 100%'
|
|
13834
|
-
},
|
|
13835
|
-
to: {
|
|
13836
|
-
backgroundSize: '100% 100%'
|
|
13837
|
-
},
|
|
13838
|
-
duration: animationDuration,
|
|
13839
|
-
delay: animationDelay
|
|
13840
|
-
};
|
|
13841
|
-
case 'reveal':
|
|
13842
|
-
return {
|
|
13843
|
-
from: {
|
|
13844
|
-
clipPath: 'polygon(0 0, 0 0, 0 100%, 0% 100%)'
|
|
13845
|
-
},
|
|
13846
|
-
to: {
|
|
13847
|
-
clipPath: 'polygon(0 0, 100% 0, 100% 100%, 0 100%)'
|
|
13848
|
-
},
|
|
13849
|
-
duration: animationDuration,
|
|
13850
|
-
delay: animationDelay
|
|
13851
|
-
};
|
|
13852
|
-
case 'none':
|
|
13853
|
-
default:
|
|
13854
|
-
return undefined;
|
|
13855
|
-
}
|
|
13856
|
-
};
|
|
13671
|
+
}, [alternateAnimation, alternateHighlightText, alternateDuration, initialHighlightText, children, _isInView]);
|
|
13672
|
+
// We don't need a separate effect for typewriter animation anymore
|
|
13673
|
+
// as we're using the TypewriterEffect component directly in the view
|
|
13857
13674
|
return {
|
|
13858
|
-
|
|
13859
|
-
|
|
13860
|
-
|
|
13861
|
-
alternatingContent
|
|
13675
|
+
finalDisplayedText,
|
|
13676
|
+
activeHighlightTarget,
|
|
13677
|
+
highlightTypewriter
|
|
13862
13678
|
};
|
|
13863
13679
|
};
|
|
13864
13680
|
|
|
@@ -13884,8 +13700,13 @@ var LineHeights$1 = {
|
|
|
13884
13700
|
xs: 24,
|
|
13885
13701
|
sm: 28,
|
|
13886
13702
|
md: 32,
|
|
13887
|
-
lg:
|
|
13888
|
-
xl:
|
|
13703
|
+
lg: 40,
|
|
13704
|
+
xl: 48,
|
|
13705
|
+
'2xl': 56,
|
|
13706
|
+
'3xl': 64,
|
|
13707
|
+
'4xl': 72,
|
|
13708
|
+
'5xl': 80,
|
|
13709
|
+
'6xl': 88
|
|
13889
13710
|
};
|
|
13890
13711
|
/**
|
|
13891
13712
|
* Default styles for different highlight types
|
|
@@ -13905,11 +13726,12 @@ var HighlightStyles = {
|
|
|
13905
13726
|
}),
|
|
13906
13727
|
gradient: (color, secondaryColor) => ({
|
|
13907
13728
|
background: "linear-gradient(135deg, " + color + ", " + (secondaryColor || color) + ")",
|
|
13908
|
-
webkitBackgroundClip: 'text',
|
|
13909
|
-
webkitTextFillColor: 'transparent',
|
|
13910
13729
|
backgroundClip: 'text',
|
|
13730
|
+
webkitBackgroundClip: 'text',
|
|
13911
13731
|
color: 'transparent',
|
|
13912
|
-
|
|
13732
|
+
webkitTextFillColor: 'transparent',
|
|
13733
|
+
display: 'inline-block',
|
|
13734
|
+
textShadow: 'none'
|
|
13913
13735
|
}),
|
|
13914
13736
|
outline: color => ({
|
|
13915
13737
|
webkitTextStroke: "1px " + color,
|
|
@@ -13923,12 +13745,91 @@ var HighlightStyles = {
|
|
|
13923
13745
|
})
|
|
13924
13746
|
};
|
|
13925
13747
|
|
|
13926
|
-
var _excluded$L = ["
|
|
13748
|
+
var _excluded$L = ["text", "typingSpeed", "pauseTime", "onComplete", "showCursor", "cursorColor", "textStyle", "as"];
|
|
13927
13749
|
/**
|
|
13928
|
-
*
|
|
13929
|
-
*
|
|
13930
|
-
* Renders a title with optional highlighting and animations for hero sections.
|
|
13750
|
+
* A component that creates a typewriter effect for text
|
|
13931
13751
|
*/
|
|
13752
|
+
var TypewriterEffect = _ref => {
|
|
13753
|
+
var {
|
|
13754
|
+
text,
|
|
13755
|
+
typingSpeed = 50,
|
|
13756
|
+
pauseTime = 500,
|
|
13757
|
+
onComplete,
|
|
13758
|
+
showCursor = true,
|
|
13759
|
+
cursorColor = 'currentColor',
|
|
13760
|
+
textStyle
|
|
13761
|
+
} = _ref,
|
|
13762
|
+
props = _objectWithoutPropertiesLoose(_ref, _excluded$L);
|
|
13763
|
+
// Convert text to array if it's a string
|
|
13764
|
+
var textArray = Array.isArray(text) ? text : [text];
|
|
13765
|
+
// State for the currently displayed text
|
|
13766
|
+
var [displayedText, setDisplayedText] = useState(textArray.map(() => ''));
|
|
13767
|
+
// State to track if typing is complete
|
|
13768
|
+
var [isComplete, setIsComplete] = useState(false);
|
|
13769
|
+
// State to track which text item we're currently typing
|
|
13770
|
+
var [currentTextIndex, setCurrentTextIndex] = useState(0);
|
|
13771
|
+
// State to track the character position within the current text
|
|
13772
|
+
var [charIndex, setCharIndex] = useState(0);
|
|
13773
|
+
useEffect(() => {
|
|
13774
|
+
// Reset state when text changes
|
|
13775
|
+
setDisplayedText(textArray.map(() => ''));
|
|
13776
|
+
setIsComplete(false);
|
|
13777
|
+
setCurrentTextIndex(0);
|
|
13778
|
+
setCharIndex(0);
|
|
13779
|
+
}, [text]);
|
|
13780
|
+
useEffect(() => {
|
|
13781
|
+
// If all text is typed, call onComplete and return
|
|
13782
|
+
if (isComplete) {
|
|
13783
|
+
if (onComplete) onComplete();
|
|
13784
|
+
return;
|
|
13785
|
+
}
|
|
13786
|
+
// Get the current text we're typing
|
|
13787
|
+
var currentText = textArray[currentTextIndex];
|
|
13788
|
+
// If we've typed all characters in the current text
|
|
13789
|
+
if (charIndex >= currentText.length) {
|
|
13790
|
+
// If we've typed all texts, we're done
|
|
13791
|
+
if (currentTextIndex >= textArray.length - 1) {
|
|
13792
|
+
setIsComplete(true);
|
|
13793
|
+
return;
|
|
13794
|
+
}
|
|
13795
|
+
// Otherwise, move to the next text after a pause
|
|
13796
|
+
var _timeout = setTimeout(() => {
|
|
13797
|
+
setCurrentTextIndex(prev => prev + 1);
|
|
13798
|
+
setCharIndex(0);
|
|
13799
|
+
}, pauseTime);
|
|
13800
|
+
return () => clearTimeout(_timeout);
|
|
13801
|
+
}
|
|
13802
|
+
// Type the next character
|
|
13803
|
+
var timeout = setTimeout(() => {
|
|
13804
|
+
setDisplayedText(prev => {
|
|
13805
|
+
var newText = [...prev];
|
|
13806
|
+
newText[currentTextIndex] = currentText.substring(0, charIndex + 1);
|
|
13807
|
+
return newText;
|
|
13808
|
+
});
|
|
13809
|
+
setCharIndex(prev => prev + 1);
|
|
13810
|
+
}, typingSpeed);
|
|
13811
|
+
return () => clearTimeout(timeout);
|
|
13812
|
+
}, [textArray, currentTextIndex, charIndex, isComplete, onComplete, pauseTime, typingSpeed]);
|
|
13813
|
+
return /*#__PURE__*/React.createElement(React.Fragment, null, displayedText.map((text, index) => (/*#__PURE__*/React.createElement(React.Fragment, {
|
|
13814
|
+
key: index
|
|
13815
|
+
}, text, showCursor && index === currentTextIndex && !isComplete && (/*#__PURE__*/React.createElement(Text$1, {
|
|
13816
|
+
as: "span",
|
|
13817
|
+
display: "inline-block",
|
|
13818
|
+
width: "0.1em",
|
|
13819
|
+
height: "1em",
|
|
13820
|
+
backgroundColor: cursorColor,
|
|
13821
|
+
style: Object.assign({
|
|
13822
|
+
animation: 'blink 1s step-end infinite',
|
|
13823
|
+
verticalAlign: 'text-bottom',
|
|
13824
|
+
marginLeft: '1px'
|
|
13825
|
+
}, textStyle)
|
|
13826
|
+
}))))));
|
|
13827
|
+
};
|
|
13828
|
+
|
|
13829
|
+
var _excluded$M = ["children", "highlightText", "highlightStyle", "highlightColor", "highlightSecondaryColor", "size", "centered", "views", "highlightAnimate", "animate", "highlightTypewriter", "highlightTypewriterDuration"];
|
|
13830
|
+
function escapeRegExp(string) {
|
|
13831
|
+
return string.replace(/[.*+?^${}()|[\\]\\/g, '\\$&');
|
|
13832
|
+
}
|
|
13932
13833
|
var TitleView = _ref => {
|
|
13933
13834
|
var {
|
|
13934
13835
|
children,
|
|
@@ -13936,150 +13837,112 @@ var TitleView = _ref => {
|
|
|
13936
13837
|
highlightStyle = 'background',
|
|
13937
13838
|
highlightColor = 'theme.primary',
|
|
13938
13839
|
highlightSecondaryColor,
|
|
13939
|
-
animation = 'none',
|
|
13940
13840
|
size = 'xl',
|
|
13941
13841
|
centered = false,
|
|
13942
|
-
views
|
|
13842
|
+
views,
|
|
13843
|
+
highlightAnimate,
|
|
13844
|
+
animate,
|
|
13845
|
+
highlightTypewriter: propHighlightTypewriter = false,
|
|
13846
|
+
highlightTypewriterDuration = 3000
|
|
13943
13847
|
} = _ref,
|
|
13944
|
-
props = _objectWithoutPropertiesLoose(_ref, _excluded$
|
|
13945
|
-
// Use the inView hook to detect when the component is visible
|
|
13848
|
+
props = _objectWithoutPropertiesLoose(_ref, _excluded$M);
|
|
13946
13849
|
var {
|
|
13947
13850
|
ref,
|
|
13948
13851
|
inView
|
|
13949
13852
|
} = useInView();
|
|
13950
|
-
// Get theme utilities
|
|
13951
13853
|
var {
|
|
13952
13854
|
getColor,
|
|
13953
|
-
themeMode:
|
|
13855
|
+
themeMode: ctxMode
|
|
13954
13856
|
} = useTheme();
|
|
13955
|
-
var themeMode = props.themeMode ||
|
|
13956
|
-
// Resolve theme colors
|
|
13957
|
-
var
|
|
13958
|
-
|
|
13959
|
-
|
|
13960
|
-
|
|
13961
|
-
|
|
13962
|
-
|
|
13963
|
-
|
|
13857
|
+
var themeMode = props.themeMode || ctxMode;
|
|
13858
|
+
// Resolve colors, handling both theme colors and direct hex values
|
|
13859
|
+
var resolveColorValue = colorValue => {
|
|
13860
|
+
// If it's already a hex color, return it directly
|
|
13861
|
+
if (colorValue.startsWith('#')) {
|
|
13862
|
+
return colorValue;
|
|
13863
|
+
}
|
|
13864
|
+
// Otherwise, use the theme's getColor function
|
|
13865
|
+
return getColor(colorValue, {
|
|
13866
|
+
themeMode
|
|
13867
|
+
});
|
|
13868
|
+
};
|
|
13869
|
+
var resolvedColor = resolveColorValue(highlightColor);
|
|
13870
|
+
var resolvedSecondary = highlightSecondaryColor ? resolveColorValue(highlightSecondaryColor) : undefined;
|
|
13964
13871
|
var {
|
|
13965
|
-
|
|
13966
|
-
|
|
13967
|
-
|
|
13968
|
-
alternatingContent
|
|
13872
|
+
finalDisplayedText,
|
|
13873
|
+
activeHighlightTarget,
|
|
13874
|
+
highlightTypewriter
|
|
13969
13875
|
} = useTitleState(Object.assign({
|
|
13970
13876
|
children,
|
|
13971
13877
|
highlightText,
|
|
13972
|
-
|
|
13973
|
-
|
|
13974
|
-
|
|
13975
|
-
_isInView: inView
|
|
13878
|
+
_isInView: inView,
|
|
13879
|
+
highlightTypewriter: propHighlightTypewriter,
|
|
13880
|
+
highlightTypewriterDuration
|
|
13976
13881
|
}, props));
|
|
13977
|
-
// Get animation configuration only when the component is in view
|
|
13978
|
-
// For typewriter animation, we don't need an animation config as it's handled by useState/useEffect
|
|
13979
|
-
var animationConfig = inView && animation !== 'typewriter' ? getAnimation() : undefined;
|
|
13980
|
-
// Get highlight styles
|
|
13981
|
-
var highlightStyleProps = HighlightStyles[highlightStyle](resolvedHighlightColor, resolvedSecondaryColor);
|
|
13982
|
-
// Get font size and line height based on size prop
|
|
13983
13882
|
var fontSize = TitleSizes[size];
|
|
13984
13883
|
var lineHeight = LineHeights$1[size];
|
|
13985
|
-
//
|
|
13986
|
-
|
|
13987
|
-
|
|
13988
|
-
|
|
13989
|
-
|
|
13990
|
-
var
|
|
13991
|
-
|
|
13992
|
-
|
|
13993
|
-
|
|
13994
|
-
|
|
13995
|
-
var pattern = new RegExp("(" + currentHighlightText + ")", 'gi');
|
|
13996
|
-
// Check if the pattern matches anything in the text
|
|
13997
|
-
if (pattern.test(text)) {
|
|
13998
|
-
// Reset the regex pattern's lastIndex property
|
|
13999
|
-
pattern.lastIndex = 0;
|
|
14000
|
-
// Split the text by the pattern and keep the matches
|
|
14001
|
-
var parts = [];
|
|
14002
|
-
var lastIndex = 0;
|
|
14003
|
-
var match;
|
|
14004
|
-
while ((match = pattern.exec(text)) !== null) {
|
|
14005
|
-
// Add the text before the match
|
|
14006
|
-
if (match.index > lastIndex) {
|
|
14007
|
-
parts.push(text.substring(lastIndex, match.index));
|
|
14008
|
-
}
|
|
14009
|
-
// Add the match as a special part to be highlighted
|
|
14010
|
-
parts.push({
|
|
14011
|
-
highlight: true,
|
|
14012
|
-
text: match[0]
|
|
14013
|
-
});
|
|
14014
|
-
lastIndex = match.index + match[0].length;
|
|
14015
|
-
}
|
|
14016
|
-
// Add any remaining text after the last match
|
|
14017
|
-
if (lastIndex < text.length) {
|
|
14018
|
-
parts.push(text.substring(lastIndex));
|
|
14019
|
-
}
|
|
14020
|
-
return /*#__PURE__*/React.createElement(Element, Object.assign({
|
|
14021
|
-
ref: ref,
|
|
14022
|
-
as: "h1",
|
|
14023
|
-
fontSize: fontSize,
|
|
14024
|
-
lineHeight: lineHeight + "px",
|
|
14025
|
-
fontWeight: "bold",
|
|
14026
|
-
textAlign: centered ? 'center' : 'left',
|
|
14027
|
-
animate: animationConfig
|
|
14028
|
-
}, props, views == null ? void 0 : views.container), parts.map((part, index) => (/*#__PURE__*/React.createElement(React.Fragment, {
|
|
14029
|
-
key: index
|
|
14030
|
-
}, typeof part === 'string' ? part : (/*#__PURE__*/React.createElement(Text$1, Object.assign({
|
|
14031
|
-
as: "span",
|
|
14032
|
-
display: "inline"
|
|
14033
|
-
}, highlightStyleProps, views == null ? void 0 : views.highlight), part.text))))));
|
|
13884
|
+
// Get the text to display
|
|
13885
|
+
var text = typeof finalDisplayedText === 'string' ? finalDisplayedText : typeof children === 'string' ? children : '';
|
|
13886
|
+
if (typeof text === 'string' && activeHighlightTarget) {
|
|
13887
|
+
var pattern = new RegExp("(" + escapeRegExp(Array.isArray(activeHighlightTarget) ? activeHighlightTarget.join('|') : activeHighlightTarget) + ")", 'gi');
|
|
13888
|
+
var parts = [];
|
|
13889
|
+
var lastIndex = 0;
|
|
13890
|
+
var match;
|
|
13891
|
+
while (match = pattern.exec(text)) {
|
|
13892
|
+
if (match.index > lastIndex) {
|
|
13893
|
+
parts.push(text.substring(lastIndex, match.index));
|
|
14034
13894
|
}
|
|
13895
|
+
parts.push({
|
|
13896
|
+
highlight: true,
|
|
13897
|
+
text: match[0]
|
|
13898
|
+
});
|
|
13899
|
+
lastIndex = match.index + match[0].length;
|
|
14035
13900
|
}
|
|
14036
|
-
|
|
14037
|
-
|
|
14038
|
-
// Create a regex pattern to match any of the highlight texts
|
|
14039
|
-
// Use a more flexible approach that can match within words
|
|
14040
|
-
var _pattern = new RegExp("(" + currentHighlightText.join('|') + ")", 'gi');
|
|
14041
|
-
// Check if the pattern matches anything in the text
|
|
14042
|
-
if (_pattern.test(text)) {
|
|
14043
|
-
// Reset the regex pattern's lastIndex property
|
|
14044
|
-
_pattern.lastIndex = 0;
|
|
14045
|
-
// Split the text by the pattern and keep the matches
|
|
14046
|
-
var _parts = [];
|
|
14047
|
-
var _lastIndex = 0;
|
|
14048
|
-
var _match;
|
|
14049
|
-
while ((_match = _pattern.exec(text)) !== null) {
|
|
14050
|
-
// Add the text before the match
|
|
14051
|
-
if (_match.index > _lastIndex) {
|
|
14052
|
-
_parts.push(text.substring(_lastIndex, _match.index));
|
|
14053
|
-
}
|
|
14054
|
-
// Add the match as a special part to be highlighted
|
|
14055
|
-
_parts.push({
|
|
14056
|
-
highlight: true,
|
|
14057
|
-
text: _match[0]
|
|
14058
|
-
});
|
|
14059
|
-
_lastIndex = _match.index + _match[0].length;
|
|
14060
|
-
}
|
|
14061
|
-
// Add any remaining text after the last match
|
|
14062
|
-
if (_lastIndex < text.length) {
|
|
14063
|
-
_parts.push(text.substring(_lastIndex));
|
|
14064
|
-
}
|
|
14065
|
-
return /*#__PURE__*/React.createElement(Element, Object.assign({
|
|
14066
|
-
ref: ref,
|
|
14067
|
-
as: "h1",
|
|
14068
|
-
fontSize: fontSize,
|
|
14069
|
-
lineHeight: lineHeight + "px",
|
|
14070
|
-
fontWeight: "bold",
|
|
14071
|
-
textAlign: centered ? 'center' : 'left',
|
|
14072
|
-
animate: animationConfig
|
|
14073
|
-
}, props, views == null ? void 0 : views.container), _parts.map((part, index) => (/*#__PURE__*/React.createElement(React.Fragment, {
|
|
14074
|
-
key: index
|
|
14075
|
-
}, typeof part === 'string' ? part : (/*#__PURE__*/React.createElement(Text$1, Object.assign({
|
|
14076
|
-
as: "span",
|
|
14077
|
-
display: "inline"
|
|
14078
|
-
}, highlightStyleProps, views == null ? void 0 : views.highlight), part.text))))));
|
|
14079
|
-
}
|
|
13901
|
+
if (lastIndex < text.length) {
|
|
13902
|
+
parts.push(text.substring(lastIndex));
|
|
14080
13903
|
}
|
|
13904
|
+
return /*#__PURE__*/React.createElement(Element, Object.assign({
|
|
13905
|
+
ref: ref,
|
|
13906
|
+
as: "h1",
|
|
13907
|
+
fontSize: fontSize,
|
|
13908
|
+
lineHeight: lineHeight + "px",
|
|
13909
|
+
fontWeight: "bold",
|
|
13910
|
+
textAlign: centered ? 'center' : 'left',
|
|
13911
|
+
animate: inView ? animate : undefined
|
|
13912
|
+
}, views == null ? void 0 : views.container, props), parts.map((part, idx) => typeof part === 'string' ? part : (/*#__PURE__*/React.createElement(Text$1, Object.assign({
|
|
13913
|
+
key: part.text + "-" + idx,
|
|
13914
|
+
as: "span",
|
|
13915
|
+
display: "inline",
|
|
13916
|
+
animate: inView ? highlightAnimate : undefined
|
|
13917
|
+
}, HighlightStyles[highlightStyle](resolvedColor, resolvedSecondary), views == null ? void 0 : views.highlight), highlightTypewriter ? (/*#__PURE__*/React.createElement(TypewriterEffect, {
|
|
13918
|
+
text: part.text,
|
|
13919
|
+
typingSpeed: Math.max(30, highlightTypewriterDuration / (part.text.length * 10)),
|
|
13920
|
+
showCursor: true,
|
|
13921
|
+
cursorColor: "currentColor"
|
|
13922
|
+
})) : part.text))));
|
|
14081
13923
|
}
|
|
14082
|
-
//
|
|
13924
|
+
// If highlightStyle is provided but no highlightText, apply the style to the entire title
|
|
13925
|
+
if (highlightStyle && !activeHighlightTarget) {
|
|
13926
|
+
return /*#__PURE__*/React.createElement(Element, Object.assign({
|
|
13927
|
+
ref: ref,
|
|
13928
|
+
as: "h1",
|
|
13929
|
+
fontSize: fontSize,
|
|
13930
|
+
lineHeight: lineHeight + "px",
|
|
13931
|
+
fontWeight: "bold",
|
|
13932
|
+
textAlign: centered ? 'center' : 'left',
|
|
13933
|
+
animate: inView ? animate : undefined
|
|
13934
|
+
}, views == null ? void 0 : views.container, props), /*#__PURE__*/React.createElement(Text$1, Object.assign({
|
|
13935
|
+
as: "span",
|
|
13936
|
+
display: "inline",
|
|
13937
|
+
animate: inView ? highlightAnimate : undefined
|
|
13938
|
+
}, HighlightStyles[highlightStyle](resolvedColor, resolvedSecondary), views == null ? void 0 : views.highlight), highlightTypewriter ? (/*#__PURE__*/React.createElement(TypewriterEffect, {
|
|
13939
|
+
text: text,
|
|
13940
|
+
typingSpeed: Math.max(30, highlightTypewriterDuration / (text.length * 10)),
|
|
13941
|
+
showCursor: true,
|
|
13942
|
+
cursorColor: "currentColor"
|
|
13943
|
+
})) : text));
|
|
13944
|
+
}
|
|
13945
|
+
// Default case - no highlighting
|
|
14083
13946
|
return /*#__PURE__*/React.createElement(Element, Object.assign({
|
|
14084
13947
|
ref: ref,
|
|
14085
13948
|
as: "h1",
|
|
@@ -14087,8 +13950,8 @@ var TitleView = _ref => {
|
|
|
14087
13950
|
lineHeight: lineHeight + "px",
|
|
14088
13951
|
fontWeight: "bold",
|
|
14089
13952
|
textAlign: centered ? 'center' : 'left',
|
|
14090
|
-
animate:
|
|
14091
|
-
},
|
|
13953
|
+
animate: inView ? animate : undefined
|
|
13954
|
+
}, views == null ? void 0 : views.container, props), text);
|
|
14092
13955
|
};
|
|
14093
13956
|
|
|
14094
13957
|
/**
|
|
@@ -14153,7 +14016,7 @@ var useToggleState = defaultToggled => {
|
|
|
14153
14016
|
};
|
|
14154
14017
|
};
|
|
14155
14018
|
|
|
14156
|
-
var _excluded$
|
|
14019
|
+
var _excluded$N = ["children", "shape", "variant", "isHovered", "setIsHovered", "isDisabled", "isToggle", "setIsToggled", "onToggle", "views"];
|
|
14157
14020
|
var ToggleView = _ref => {
|
|
14158
14021
|
var {
|
|
14159
14022
|
children,
|
|
@@ -14167,7 +14030,7 @@ var ToggleView = _ref => {
|
|
|
14167
14030
|
onToggle,
|
|
14168
14031
|
views
|
|
14169
14032
|
} = _ref,
|
|
14170
|
-
props = _objectWithoutPropertiesLoose(_ref, _excluded$
|
|
14033
|
+
props = _objectWithoutPropertiesLoose(_ref, _excluded$N);
|
|
14171
14034
|
var toggleColor = !isDisabled ? 'color.trueGray.400' : 'theme.disabled';
|
|
14172
14035
|
var isActive = !!(isToggle || isHovered);
|
|
14173
14036
|
var toggleVariants = {
|
|
@@ -14210,7 +14073,7 @@ var ToggleView = _ref => {
|
|
|
14210
14073
|
}, toggleVariants[variant], props, views == null ? void 0 : views.container), children);
|
|
14211
14074
|
};
|
|
14212
14075
|
|
|
14213
|
-
var _excluded$
|
|
14076
|
+
var _excluded$O = ["children", "shape", "variant", "isDisabled", "isToggled", "onToggle"];
|
|
14214
14077
|
// Destructuring properties from ToggleProps to be used within the ToggleComponent.
|
|
14215
14078
|
var ToggleComponent = _ref => {
|
|
14216
14079
|
var {
|
|
@@ -14222,7 +14085,7 @@ var ToggleComponent = _ref => {
|
|
|
14222
14085
|
isToggled = false,
|
|
14223
14086
|
onToggle
|
|
14224
14087
|
} = _ref,
|
|
14225
|
-
props = _objectWithoutPropertiesLoose(_ref, _excluded$
|
|
14088
|
+
props = _objectWithoutPropertiesLoose(_ref, _excluded$O);
|
|
14226
14089
|
// Initializing toggle state and set state functions using the custom hook useToggleState.
|
|
14227
14090
|
var {
|
|
14228
14091
|
isHovered,
|
|
@@ -14613,7 +14476,7 @@ var getDropdownPosition = function getDropdownPosition(side, align) {
|
|
|
14613
14476
|
return positions[side];
|
|
14614
14477
|
};
|
|
14615
14478
|
|
|
14616
|
-
var _excluded$
|
|
14479
|
+
var _excluded$P = ["children", "views"],
|
|
14617
14480
|
_excluded2$d = ["items", "side", "align", "views"],
|
|
14618
14481
|
_excluded3$9 = ["item", "views"],
|
|
14619
14482
|
_excluded4$8 = ["views"],
|
|
@@ -14651,7 +14514,7 @@ var DropdownMenuTrigger = _ref2 => {
|
|
|
14651
14514
|
children,
|
|
14652
14515
|
views
|
|
14653
14516
|
} = _ref2,
|
|
14654
|
-
props = _objectWithoutPropertiesLoose(_ref2, _excluded$
|
|
14517
|
+
props = _objectWithoutPropertiesLoose(_ref2, _excluded$P);
|
|
14655
14518
|
var {
|
|
14656
14519
|
isOpen,
|
|
14657
14520
|
setIsOpen
|
|
@@ -14811,7 +14674,7 @@ var DropdownMenuView = _ref6 => {
|
|
|
14811
14674
|
}));
|
|
14812
14675
|
};
|
|
14813
14676
|
|
|
14814
|
-
var _excluded$
|
|
14677
|
+
var _excluded$Q = ["trigger", "items", "size", "variant", "side", "align", "defaultOpen", "views"];
|
|
14815
14678
|
/**
|
|
14816
14679
|
* DropdownMenu component for displaying a menu when clicking on a trigger element.
|
|
14817
14680
|
*/
|
|
@@ -14826,7 +14689,7 @@ var DropdownMenuComponent = _ref => {
|
|
|
14826
14689
|
defaultOpen = false,
|
|
14827
14690
|
views
|
|
14828
14691
|
} = _ref,
|
|
14829
|
-
props = _objectWithoutPropertiesLoose(_ref, _excluded$
|
|
14692
|
+
props = _objectWithoutPropertiesLoose(_ref, _excluded$Q);
|
|
14830
14693
|
var {
|
|
14831
14694
|
isOpen,
|
|
14832
14695
|
setIsOpen,
|
|
@@ -15024,7 +14887,7 @@ var useRect = ref => {
|
|
|
15024
14887
|
return rect;
|
|
15025
14888
|
};
|
|
15026
14889
|
|
|
15027
|
-
var _excluded$
|
|
14890
|
+
var _excluded$R = ["children", "views", "asChild"],
|
|
15028
14891
|
_excluded2$e = ["children", "views", "side", "align", "sideOffset", "style", "backgroundColor", "borderRadius", "boxShadow", "padding", "minWidth", "maxWidth"];
|
|
15029
14892
|
// Create context for the HoverCard
|
|
15030
14893
|
var HoverCardContext = /*#__PURE__*/createContext({
|
|
@@ -15063,7 +14926,7 @@ var HoverCardTrigger = _ref2 => {
|
|
|
15063
14926
|
views,
|
|
15064
14927
|
asChild = false
|
|
15065
14928
|
} = _ref2,
|
|
15066
|
-
props = _objectWithoutPropertiesLoose(_ref2, _excluded$
|
|
14929
|
+
props = _objectWithoutPropertiesLoose(_ref2, _excluded$R);
|
|
15067
14930
|
var {
|
|
15068
14931
|
openCard,
|
|
15069
14932
|
closeCard,
|
|
@@ -15150,7 +15013,7 @@ var HoverCardContent = _ref3 => {
|
|
|
15150
15013
|
}, views == null ? void 0 : views.container, props), children);
|
|
15151
15014
|
};
|
|
15152
15015
|
|
|
15153
|
-
var _excluded$
|
|
15016
|
+
var _excluded$S = ["children", "views", "openDelay", "closeDelay"];
|
|
15154
15017
|
/**
|
|
15155
15018
|
* HoverCard component displays floating content when hovering over a trigger element.
|
|
15156
15019
|
* Supports configurable open and close delays for a smoother user experience.
|
|
@@ -15162,7 +15025,7 @@ var HoverCardComponent = _ref => {
|
|
|
15162
15025
|
openDelay,
|
|
15163
15026
|
closeDelay
|
|
15164
15027
|
} = _ref,
|
|
15165
|
-
props = _objectWithoutPropertiesLoose(_ref, _excluded$
|
|
15028
|
+
props = _objectWithoutPropertiesLoose(_ref, _excluded$S);
|
|
15166
15029
|
var hoverCardState = useHoverCardState({
|
|
15167
15030
|
openDelay,
|
|
15168
15031
|
closeDelay
|
|
@@ -15292,7 +15155,7 @@ var getMenubarContentPosition = orientation => {
|
|
|
15292
15155
|
};
|
|
15293
15156
|
};
|
|
15294
15157
|
|
|
15295
|
-
var _excluded$
|
|
15158
|
+
var _excluded$T = ["children", "orientation", "size", "variant", "views"];
|
|
15296
15159
|
// Create context for the Menubar
|
|
15297
15160
|
var MenubarContext = /*#__PURE__*/createContext({
|
|
15298
15161
|
activeMenuId: null,
|
|
@@ -15326,7 +15189,7 @@ var MenubarRoot = _ref2 => {
|
|
|
15326
15189
|
variant = 'default',
|
|
15327
15190
|
views
|
|
15328
15191
|
} = _ref2,
|
|
15329
|
-
props = _objectWithoutPropertiesLoose(_ref2, _excluded$
|
|
15192
|
+
props = _objectWithoutPropertiesLoose(_ref2, _excluded$T);
|
|
15330
15193
|
var Container = orientation === 'horizontal' ? Horizontal : Vertical;
|
|
15331
15194
|
return /*#__PURE__*/React.createElement(Container, Object.assign({
|
|
15332
15195
|
role: "menubar",
|
|
@@ -15512,7 +15375,7 @@ var MenubarView = _ref8 => {
|
|
|
15512
15375
|
})))))));
|
|
15513
15376
|
};
|
|
15514
15377
|
|
|
15515
|
-
var _excluded$
|
|
15378
|
+
var _excluded$U = ["items", "orientation", "size", "variant", "defaultActiveMenuId", "defaultOpenMenuId", "views"];
|
|
15516
15379
|
/**
|
|
15517
15380
|
* Menubar component for creating horizontal or vertical menu bars with dropdown menus.
|
|
15518
15381
|
*/
|
|
@@ -15526,7 +15389,7 @@ var MenubarComponent = _ref => {
|
|
|
15526
15389
|
defaultOpenMenuId = null,
|
|
15527
15390
|
views
|
|
15528
15391
|
} = _ref,
|
|
15529
|
-
props = _objectWithoutPropertiesLoose(_ref, _excluded$
|
|
15392
|
+
props = _objectWithoutPropertiesLoose(_ref, _excluded$U);
|
|
15530
15393
|
var {
|
|
15531
15394
|
activeMenuId,
|
|
15532
15395
|
setActiveMenuId,
|
|
@@ -15682,7 +15545,7 @@ var DisabledButtonStyles = {
|
|
|
15682
15545
|
}
|
|
15683
15546
|
};
|
|
15684
15547
|
|
|
15685
|
-
var _excluded$
|
|
15548
|
+
var _excluded$V = ["currentPage", "totalPages", "onPageChange", "pageSize", "pageSizeOptions", "onPageSizeChange", "showPageSizeSelector", "showPageInfo", "maxPageButtons", "showFirstLastButtons", "size", "variant", "shape", "visiblePageNumbers", "views"];
|
|
15686
15549
|
var PaginationView = _ref => {
|
|
15687
15550
|
var {
|
|
15688
15551
|
currentPage,
|
|
@@ -15713,7 +15576,7 @@ var PaginationView = _ref => {
|
|
|
15713
15576
|
visiblePageNumbers,
|
|
15714
15577
|
views
|
|
15715
15578
|
} = _ref,
|
|
15716
|
-
props = _objectWithoutPropertiesLoose(_ref, _excluded$
|
|
15579
|
+
props = _objectWithoutPropertiesLoose(_ref, _excluded$V);
|
|
15717
15580
|
var handlePageChange = page => {
|
|
15718
15581
|
if (page < 1 || page > totalPages || page === currentPage) {
|
|
15719
15582
|
return;
|
|
@@ -15832,7 +15695,7 @@ var PaginationView = _ref => {
|
|
|
15832
15695
|
}, option.label))))));
|
|
15833
15696
|
};
|
|
15834
15697
|
|
|
15835
|
-
var _excluded$
|
|
15698
|
+
var _excluded$W = ["currentPage", "totalPages", "onPageChange", "pageSize", "pageSizeOptions", "onPageSizeChange", "showPageSizeSelector", "showPageInfo", "maxPageButtons", "showFirstLastButtons", "size", "variant", "shape", "views"];
|
|
15836
15699
|
/**
|
|
15837
15700
|
* Pagination component for navigating through pages of content.
|
|
15838
15701
|
*/
|
|
@@ -15853,7 +15716,7 @@ var PaginationComponent = _ref => {
|
|
|
15853
15716
|
shape = 'rounded',
|
|
15854
15717
|
views
|
|
15855
15718
|
} = _ref,
|
|
15856
|
-
props = _objectWithoutPropertiesLoose(_ref, _excluded$
|
|
15719
|
+
props = _objectWithoutPropertiesLoose(_ref, _excluded$W);
|
|
15857
15720
|
var {
|
|
15858
15721
|
visiblePageNumbers
|
|
15859
15722
|
} = usePaginationState(currentPage, totalPages, maxPageButtons);
|
|
@@ -15923,7 +15786,7 @@ var DefaultSeparatorStyles = {
|
|
|
15923
15786
|
}
|
|
15924
15787
|
};
|
|
15925
15788
|
|
|
15926
|
-
var _excluded$
|
|
15789
|
+
var _excluded$X = ["orientation", "variant", "thickness", "color", "spacing", "label", "decorative", "views", "themeMode"];
|
|
15927
15790
|
var SeparatorView = _ref => {
|
|
15928
15791
|
var {
|
|
15929
15792
|
orientation = 'horizontal',
|
|
@@ -15935,7 +15798,7 @@ var SeparatorView = _ref => {
|
|
|
15935
15798
|
decorative = false,
|
|
15936
15799
|
views
|
|
15937
15800
|
} = _ref,
|
|
15938
|
-
props = _objectWithoutPropertiesLoose(_ref, _excluded$
|
|
15801
|
+
props = _objectWithoutPropertiesLoose(_ref, _excluded$X);
|
|
15939
15802
|
// Access theme if needed for future enhancements
|
|
15940
15803
|
var {
|
|
15941
15804
|
themeMode
|
|
@@ -16173,7 +16036,7 @@ var SidebarTransitions = {
|
|
|
16173
16036
|
bounce: 'width 0.3s cubic-bezier(0.68, -0.55, 0.27, 1.55), transform 0.3s cubic-bezier(0.68, -0.55, 0.27, 1.55)'
|
|
16174
16037
|
};
|
|
16175
16038
|
|
|
16176
|
-
var _excluded$
|
|
16039
|
+
var _excluded$Y = ["children", "showToggleButton", "views"],
|
|
16177
16040
|
_excluded2$f = ["children", "views"],
|
|
16178
16041
|
_excluded3$a = ["children", "views"],
|
|
16179
16042
|
_excluded4$9 = ["children", "position", "size", "variant", "fixed", "hasBackdrop", "expandedWidth", "collapsedWidth", "breakpointBehavior", "elevation", "transitionPreset", "ariaLabel", "isExpanded", "isMobile", "collapse", "views", "themeMode"];
|
|
@@ -16206,7 +16069,7 @@ var SidebarHeader = _ref2 => {
|
|
|
16206
16069
|
showToggleButton = true,
|
|
16207
16070
|
views
|
|
16208
16071
|
} = _ref2,
|
|
16209
|
-
props = _objectWithoutPropertiesLoose(_ref2, _excluded$
|
|
16072
|
+
props = _objectWithoutPropertiesLoose(_ref2, _excluded$Y);
|
|
16210
16073
|
var {
|
|
16211
16074
|
isExpanded,
|
|
16212
16075
|
toggleExpanded,
|
|
@@ -16361,7 +16224,7 @@ var SidebarView = _ref5 => {
|
|
|
16361
16224
|
}))));
|
|
16362
16225
|
};
|
|
16363
16226
|
|
|
16364
|
-
var _excluded$
|
|
16227
|
+
var _excluded$Z = ["children", "position", "size", "variant", "defaultExpanded", "expanded", "onExpandedChange", "fixed", "hasBackdrop", "showToggleButton", "expandedWidth", "collapsedWidth", "breakpoint", "breakpointBehavior", "views"];
|
|
16365
16228
|
/**
|
|
16366
16229
|
* Sidebar component for creating collapsible, themeable and customizable sidebars.
|
|
16367
16230
|
*/
|
|
@@ -16383,7 +16246,7 @@ var SidebarComponent = _ref => {
|
|
|
16383
16246
|
breakpointBehavior = 'overlay',
|
|
16384
16247
|
views
|
|
16385
16248
|
} = _ref,
|
|
16386
|
-
props = _objectWithoutPropertiesLoose(_ref, _excluded$
|
|
16249
|
+
props = _objectWithoutPropertiesLoose(_ref, _excluded$Z);
|
|
16387
16250
|
var {
|
|
16388
16251
|
isExpanded,
|
|
16389
16252
|
toggleExpanded,
|
|
@@ -16848,7 +16711,7 @@ var HandleIconStyles = {
|
|
|
16848
16711
|
}
|
|
16849
16712
|
};
|
|
16850
16713
|
|
|
16851
|
-
var _excluded$
|
|
16714
|
+
var _excluded$_ = ["children", "id", "defaultSize", "minSize", "maxSize", "collapsible", "defaultCollapsed", "onCollapseChange", "views"],
|
|
16852
16715
|
_excluded2$g = ["id", "position", "disabled", "withVisualIndicator", "withCollapseButton", "collapseTarget", "views"],
|
|
16853
16716
|
_excluded3$b = ["children", "orientation", "size", "variant", "defaultSizes", "minSize", "maxSize", "collapsible", "containerRef", "autoSaveId", "views"];
|
|
16854
16717
|
// Create context for the Resizable component
|
|
@@ -16893,7 +16756,7 @@ var ResizablePanel = _ref2 => {
|
|
|
16893
16756
|
onCollapseChange,
|
|
16894
16757
|
views
|
|
16895
16758
|
} = _ref2,
|
|
16896
|
-
props = _objectWithoutPropertiesLoose(_ref2, _excluded$
|
|
16759
|
+
props = _objectWithoutPropertiesLoose(_ref2, _excluded$_);
|
|
16897
16760
|
var {
|
|
16898
16761
|
orientation,
|
|
16899
16762
|
registerPanel,
|
|
@@ -17108,7 +16971,7 @@ var ResizableView = _ref4 => {
|
|
|
17108
16971
|
}, ResizableOrientations[orientation], views == null ? void 0 : views.container, props), children);
|
|
17109
16972
|
};
|
|
17110
16973
|
|
|
17111
|
-
var _excluded
|
|
16974
|
+
var _excluded$$ = ["children", "orientation", "size", "variant", "defaultSizes", "onSizesChange", "minSize", "maxSize", "collapsible", "autoSaveId", "storage", "keyboardResizeBy", "views"];
|
|
17112
16975
|
/**
|
|
17113
16976
|
* Resizable component for creating resizable panel groups and layouts.
|
|
17114
16977
|
*/
|
|
@@ -17128,7 +16991,7 @@ var ResizableComponent = _ref => {
|
|
|
17128
16991
|
keyboardResizeBy = 10,
|
|
17129
16992
|
views
|
|
17130
16993
|
} = _ref,
|
|
17131
|
-
props = _objectWithoutPropertiesLoose(_ref, _excluded
|
|
16994
|
+
props = _objectWithoutPropertiesLoose(_ref, _excluded$$);
|
|
17132
16995
|
var {
|
|
17133
16996
|
isResizing,
|
|
17134
16997
|
setIsResizing,
|
|
@@ -17896,7 +17759,7 @@ var CommandFooterStyles = {
|
|
|
17896
17759
|
color: 'color.gray.500'
|
|
17897
17760
|
};
|
|
17898
17761
|
|
|
17899
|
-
var _excluded
|
|
17762
|
+
var _excluded$10 = ["value", "onValueChange", "placeholder", "views"],
|
|
17900
17763
|
_excluded2$h = ["children", "views"],
|
|
17901
17764
|
_excluded3$c = ["heading", "children", "views"],
|
|
17902
17765
|
_excluded4$a = ["item", "selected", "onSelect", "views"],
|
|
@@ -17928,7 +17791,7 @@ var CommandInput = _ref2 => {
|
|
|
17928
17791
|
placeholder = 'Type a command or search...',
|
|
17929
17792
|
views
|
|
17930
17793
|
} = _ref2,
|
|
17931
|
-
props = _objectWithoutPropertiesLoose(_ref2, _excluded
|
|
17794
|
+
props = _objectWithoutPropertiesLoose(_ref2, _excluded$10);
|
|
17932
17795
|
var inputRef = useRef(null);
|
|
17933
17796
|
// Focus input when component mounts
|
|
17934
17797
|
React.useEffect(() => {
|
|
@@ -18111,7 +17974,7 @@ var CommandView = _ref7 => {
|
|
|
18111
17974
|
})))), footer && (/*#__PURE__*/React.createElement(View, Object.assign({}, CommandFooterStyles, views == null ? void 0 : views.footer), footer)))));
|
|
18112
17975
|
};
|
|
18113
17976
|
|
|
18114
|
-
var _excluded$
|
|
17977
|
+
var _excluded$11 = ["open", "onOpenChange", "groups", "commands", "placeholder", "size", "variant", "filter", "emptyState", "footer", "views"];
|
|
18115
17978
|
/**
|
|
18116
17979
|
* Command component for displaying a command palette with search functionality.
|
|
18117
17980
|
*/
|
|
@@ -18129,7 +17992,7 @@ var CommandComponent = _ref => {
|
|
|
18129
17992
|
footer,
|
|
18130
17993
|
views
|
|
18131
17994
|
} = _ref,
|
|
18132
|
-
props = _objectWithoutPropertiesLoose(_ref, _excluded$
|
|
17995
|
+
props = _objectWithoutPropertiesLoose(_ref, _excluded$11);
|
|
18133
17996
|
var {
|
|
18134
17997
|
search,
|
|
18135
17998
|
setSearch,
|
|
@@ -18416,7 +18279,7 @@ var getArrowStyles = position => {
|
|
|
18416
18279
|
}
|
|
18417
18280
|
};
|
|
18418
18281
|
|
|
18419
|
-
var _excluded$
|
|
18282
|
+
var _excluded$12 = ["children", "views", "asChild"],
|
|
18420
18283
|
_excluded2$i = ["children", "views"],
|
|
18421
18284
|
_excluded3$d = ["content", "children", "position", "align", "size", "variant", "showArrow", "views", "themeMode"];
|
|
18422
18285
|
// Create context for the Tooltip
|
|
@@ -18452,7 +18315,7 @@ var TooltipTrigger = _ref2 => {
|
|
|
18452
18315
|
views,
|
|
18453
18316
|
asChild = false
|
|
18454
18317
|
} = _ref2,
|
|
18455
|
-
props = _objectWithoutPropertiesLoose(_ref2, _excluded$
|
|
18318
|
+
props = _objectWithoutPropertiesLoose(_ref2, _excluded$12);
|
|
18456
18319
|
var {
|
|
18457
18320
|
openTooltip,
|
|
18458
18321
|
closeTooltip,
|
|
@@ -18545,7 +18408,7 @@ var TooltipView = _ref4 => {
|
|
|
18545
18408
|
}, TooltipSizes[size], TooltipVariants[variant], positionStyles, views == null ? void 0 : views.content), typeof content === 'string' ? (/*#__PURE__*/React.createElement(Text$1, Object.assign({}, views == null ? void 0 : views.text), content)) : content, showArrow && /*#__PURE__*/React.createElement(View, Object.assign({}, arrowStyles, views == null ? void 0 : views.arrow)))));
|
|
18546
18409
|
};
|
|
18547
18410
|
|
|
18548
|
-
var _excluded$
|
|
18411
|
+
var _excluded$13 = ["content", "children", "position", "align", "size", "variant", "openDelay", "closeDelay", "showArrow", "defaultOpen", "isDisabled", "views"];
|
|
18549
18412
|
/**
|
|
18550
18413
|
* Tooltip component for displaying additional information when hovering over an element.
|
|
18551
18414
|
* Supports configurable positions, delays, and styling.
|
|
@@ -18565,7 +18428,7 @@ var TooltipComponent = _ref => {
|
|
|
18565
18428
|
isDisabled = false,
|
|
18566
18429
|
views
|
|
18567
18430
|
} = _ref,
|
|
18568
|
-
props = _objectWithoutPropertiesLoose(_ref, _excluded$
|
|
18431
|
+
props = _objectWithoutPropertiesLoose(_ref, _excluded$13);
|
|
18569
18432
|
var tooltipState = useTooltipState({
|
|
18570
18433
|
defaultOpen,
|
|
18571
18434
|
openDelay,
|