@app-studio/web 0.8.89 → 0.8.91

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.
Files changed (46) hide show
  1. package/dist/components/CookieConsent/CookieConsent/CookieConsent.props.d.ts +57 -0
  2. package/dist/components/CookieConsent/CookieConsent/CookieConsent.state.d.ts +13 -0
  3. package/dist/components/CookieConsent/CookieConsent/CookieConsent.style.d.ts +68 -0
  4. package/dist/components/CookieConsent/CookieConsent/CookieConsent.type.d.ts +13 -0
  5. package/dist/components/CookieConsent/CookieConsent/CookieConsent.view.d.ts +8 -0
  6. package/dist/components/CookieConsent/CookieConsent.d.ts +3 -0
  7. package/dist/components/CookieConsent/examples/custom.d.ts +5 -0
  8. package/dist/components/CookieConsent/examples/default.d.ts +5 -0
  9. package/dist/components/CookieConsent/examples/index.d.ts +4 -0
  10. package/dist/components/CookieConsent/examples/positions.d.ts +5 -0
  11. package/dist/components/CookieConsent/examples/variants.d.ts +5 -0
  12. package/dist/components/Icon/Icon.d.ts +4 -1
  13. package/dist/components/Title/Title/Title.props.d.ts +89 -0
  14. package/dist/components/Title/Title/Title.state.d.ts +124 -0
  15. package/dist/components/Title/Title/Title.style.d.ts +25 -0
  16. package/dist/components/Title/Title/Title.type.d.ts +25 -0
  17. package/dist/components/Title/Title/Title.view.d.ts +9 -0
  18. package/dist/components/Title/Title/useInView.d.ts +9 -0
  19. package/dist/components/Title/Title.d.ts +3 -0
  20. package/dist/components/Title/examples/alternating.d.ts +5 -0
  21. package/dist/components/Title/examples/animated.d.ts +5 -0
  22. package/dist/components/Title/examples/animationTest.d.ts +5 -0
  23. package/dist/components/Title/examples/custom.d.ts +5 -0
  24. package/dist/components/Title/examples/default.d.ts +5 -0
  25. package/dist/components/Title/examples/directAnimation.d.ts +5 -0
  26. package/dist/components/Title/examples/gradientTest.d.ts +5 -0
  27. package/dist/components/Title/examples/hero.d.ts +5 -0
  28. package/dist/components/Title/examples/highlightTest.d.ts +5 -0
  29. package/dist/components/Title/examples/highlighted.d.ts +5 -0
  30. package/dist/components/Title/examples/index.d.ts +10 -0
  31. package/dist/components/Title/examples/responsive.d.ts +5 -0
  32. package/dist/components/Title/index.d.ts +1 -0
  33. package/dist/components/index.d.ts +4 -0
  34. package/dist/pages/cookieConsent.page.d.ts +6 -0
  35. package/dist/pages/title.page.d.ts +6 -0
  36. package/dist/web.cjs.development.js +957 -139
  37. package/dist/web.cjs.development.js.map +1 -1
  38. package/dist/web.cjs.production.min.js +1 -1
  39. package/dist/web.cjs.production.min.js.map +1 -1
  40. package/dist/web.esm.js +954 -141
  41. package/dist/web.esm.js.map +1 -1
  42. package/dist/web.umd.development.js +958 -141
  43. package/dist/web.umd.development.js.map +1 -1
  44. package/dist/web.umd.production.min.js +1 -1
  45. package/dist/web.umd.production.min.js.map +1 -1
  46. package/package.json +2 -2
@@ -1,6 +1,6 @@
1
1
  (function (global, factory) {
2
- typeof exports === 'object' && typeof module !== 'undefined' ? factory(exports, require('core-js/modules/es.object.assign.js'), require('react'), require('core-js/modules/es.array.includes.js'), require('core-js/modules/es.array.iterator.js'), require('core-js/modules/es.string.includes.js'), require('core-js/modules/web.dom-collections.iterator.js'), require('core-js/modules/es.regexp.to-string.js'), require('app-studio'), require('core-js/modules/es.symbol.description.js'), require('core-js/modules/es.parse-float.js'), require('core-js/modules/es.string.trim-end.js'), require('react-router-dom'), require('contrast'), require('core-js/modules/es.promise.js'), require('core-js/modules/es.array.reduce.js'), require('core-js/modules/es.number.to-fixed.js'), require('core-js/modules/es.string.starts-with.js'), require('date-fns/format'), require('core-js/modules/es.parse-int.js'), require('core-js/modules/es.regexp.constructor.js'), require('core-js/modules/es.regexp.exec.js'), require('formik'), require('core-js/modules/web.url.js'), require('core-js/modules/web.url.to-json.js'), require('core-js/modules/web.url-search-params.js'), require('zustand'), require('core-js/modules/es.string.ends-with.js'), require('core-js/modules/es.string.match.js'), require('core-js/modules/es.string.search.js'), require('core-js/modules/es.array.flat-map.js'), require('core-js/modules/es.array.unscopables.flat-map.js'), require('core-js/modules/es.string.trim.js')) :
3
- typeof define === 'function' && define.amd ? define(['exports', 'core-js/modules/es.object.assign.js', 'react', 'core-js/modules/es.array.includes.js', 'core-js/modules/es.array.iterator.js', 'core-js/modules/es.string.includes.js', 'core-js/modules/web.dom-collections.iterator.js', 'core-js/modules/es.regexp.to-string.js', 'app-studio', 'core-js/modules/es.symbol.description.js', 'core-js/modules/es.parse-float.js', 'core-js/modules/es.string.trim-end.js', 'react-router-dom', 'contrast', 'core-js/modules/es.promise.js', 'core-js/modules/es.array.reduce.js', 'core-js/modules/es.number.to-fixed.js', 'core-js/modules/es.string.starts-with.js', 'date-fns/format', 'core-js/modules/es.parse-int.js', 'core-js/modules/es.regexp.constructor.js', 'core-js/modules/es.regexp.exec.js', 'formik', 'core-js/modules/web.url.js', 'core-js/modules/web.url.to-json.js', 'core-js/modules/web.url-search-params.js', 'zustand', 'core-js/modules/es.string.ends-with.js', 'core-js/modules/es.string.match.js', 'core-js/modules/es.string.search.js', 'core-js/modules/es.array.flat-map.js', 'core-js/modules/es.array.unscopables.flat-map.js', 'core-js/modules/es.string.trim.js'], factory) :
2
+ typeof exports === 'object' && typeof module !== 'undefined' ? factory(exports, require('core-js/modules/es.object.assign.js'), require('react'), require('core-js/modules/es.array.includes.js'), require('core-js/modules/es.array.iterator.js'), require('core-js/modules/es.string.includes.js'), require('core-js/modules/web.dom-collections.iterator.js'), require('core-js/modules/es.regexp.to-string.js'), require('app-studio'), require('core-js/modules/es.symbol.description.js'), require('core-js/modules/es.parse-float.js'), require('core-js/modules/es.string.trim-end.js'), require('react-router-dom'), require('contrast'), require('core-js/modules/es.promise.js'), require('core-js/modules/es.array.reduce.js'), require('core-js/modules/es.number.to-fixed.js'), require('core-js/modules/es.string.starts-with.js'), require('date-fns/format'), require('core-js/modules/es.parse-int.js'), require('core-js/modules/es.regexp.constructor.js'), require('core-js/modules/es.regexp.exec.js'), require('formik'), require('core-js/modules/web.url.js'), require('core-js/modules/web.url.to-json.js'), require('core-js/modules/web.url-search-params.js'), require('zustand'), require('core-js/modules/es.string.replace.js'), require('core-js/modules/es.string.ends-with.js'), require('core-js/modules/es.string.match.js'), require('core-js/modules/es.string.search.js'), require('core-js/modules/es.array.flat-map.js'), require('core-js/modules/es.array.unscopables.flat-map.js'), require('core-js/modules/es.string.trim.js')) :
3
+ typeof define === 'function' && define.amd ? define(['exports', 'core-js/modules/es.object.assign.js', 'react', 'core-js/modules/es.array.includes.js', 'core-js/modules/es.array.iterator.js', 'core-js/modules/es.string.includes.js', 'core-js/modules/web.dom-collections.iterator.js', 'core-js/modules/es.regexp.to-string.js', 'app-studio', 'core-js/modules/es.symbol.description.js', 'core-js/modules/es.parse-float.js', 'core-js/modules/es.string.trim-end.js', 'react-router-dom', 'contrast', 'core-js/modules/es.promise.js', 'core-js/modules/es.array.reduce.js', 'core-js/modules/es.number.to-fixed.js', 'core-js/modules/es.string.starts-with.js', 'date-fns/format', 'core-js/modules/es.parse-int.js', 'core-js/modules/es.regexp.constructor.js', 'core-js/modules/es.regexp.exec.js', 'formik', 'core-js/modules/web.url.js', 'core-js/modules/web.url.to-json.js', 'core-js/modules/web.url-search-params.js', 'zustand', 'core-js/modules/es.string.replace.js', 'core-js/modules/es.string.ends-with.js', 'core-js/modules/es.string.match.js', 'core-js/modules/es.string.search.js', 'core-js/modules/es.array.flat-map.js', 'core-js/modules/es.array.unscopables.flat-map.js', 'core-js/modules/es.string.trim.js'], factory) :
4
4
  (global = global || self, factory(global['@app-studio/web'] = {}, null, global.React, null, null, null, null, null, global.appStudio, null, null, null, global.reactRouterDom, global.contrast, null, null, null, null, global.format, null, null, null, global.formik, null, null, null, global.zustand));
5
5
  }(this, (function (exports, es_object_assign_js, React, es_array_includes_js, es_array_iterator_js, es_string_includes_js, web_domCollections_iterator_js, es_regexp_toString_js, appStudio, es_symbol_description_js, es_parseFloat_js, es_string_trimEnd_js, reactRouterDom, contrast, es_promise_js, es_array_reduce_js, es_number_toFixed_js, es_string_startsWith_js, format, es_parseInt_js, es_regexp_constructor_js, es_regexp_exec_js, formik, web_url_js, web_url_toJson_js, web_urlSearchParams_js, zustand) { 'use strict';
6
6
 
@@ -563,7 +563,7 @@
563
563
  n.style.lineHeight = lineHeight;
564
564
  }
565
565
  }, [text, maxLines]);
566
- return /*#__PURE__*/React__default.createElement(appStudio.View, Object.assign({
566
+ return /*#__PURE__*/React__default.createElement(appStudio.Text, Object.assign({
567
567
  ref: containerRef,
568
568
  overflow: "hidden" // Crucial for final display state
569
569
  }, views == null ? void 0 : views.truncateText, rest, {
@@ -608,12 +608,7 @@
608
608
  fontStyle: isItalic ? 'italic' : 'normal',
609
609
  fontWeight: fontWeight,
610
610
  letterSpacing: "-0.01em",
611
- textDecoration: isStriked ? 'line-through' : isUnderlined ? 'underline' : 'none',
612
- color: "color.gray.900",
613
- // Apply dark mode styles
614
- _dark: {
615
- color: 'color.gray.100'
616
- }
611
+ textDecoration: isStriked ? 'line-through' : isUnderlined ? 'underline' : 'none'
617
612
  }, noLineBreak, headingStyles, props, views == null ? void 0 : views.container), maxLines && typeof children === 'string' ? (/*#__PURE__*/React__default.createElement(TruncateText, {
618
613
  text: children,
619
614
  maxLines: maxLines
@@ -633,7 +628,7 @@
633
628
 
634
629
  var _excluded$3 = ["widthHeight", "color", "transform", "orientation", "children"],
635
630
  _excluded2$2 = ["widthHeight", "color", "filled", "strokeWidth"],
636
- _excluded3$1 = ["widthHeight", "color", "filled", "strokeWidth"],
631
+ _excluded3$1 = ["widthHeight", "color", "strokeWidth", "filled"],
637
632
  _excluded4$1 = ["widthHeight", "color", "filled", "strokeWidth"],
638
633
  _excluded5 = ["widthHeight", "color", "filled", "strokeWidth"],
639
634
  _excluded6 = ["widthHeight", "color", "filled", "strokeWidth"],
@@ -707,7 +702,9 @@
707
702
  _excluded74 = ["widthHeight", "color", "strokeWidth", "filled"],
708
703
  _excluded75 = ["widthHeight", "color", "strokeWidth", "filled"],
709
704
  _excluded76 = ["widthHeight", "color", "strokeWidth", "filled"],
710
- _excluded77 = ["widthHeight", "color", "strokeWidth", "filled"];
705
+ _excluded77 = ["widthHeight", "color", "strokeWidth", "filled"],
706
+ _excluded78 = ["widthHeight", "color", "strokeWidth", "filled"],
707
+ _excluded79 = ["widthHeight", "color", "strokeWidth", "filled"];
711
708
  // Default wrapper component for consistent sizing and styling
712
709
  var IconWrapper = _ref => {
713
710
  var {
@@ -762,8 +759,8 @@
762
759
  var {
763
760
  widthHeight = 24,
764
761
  color = 'currentColor',
765
- filled = true,
766
- strokeWidth = 1
762
+ strokeWidth = 1,
763
+ filled = false
767
764
  } = _ref3,
768
765
  props = _objectWithoutPropertiesLoose(_ref3, _excluded3$1);
769
766
  return /*#__PURE__*/React__default.createElement(IconWrapper, Object.assign({
@@ -771,10 +768,19 @@
771
768
  color: color
772
769
  }, props), /*#__PURE__*/React__default.createElement("svg", Object.assign({
773
770
  viewBox: "0 0 24 24",
774
- "aria-hidden": "true",
771
+ "aria-hidden": "false",
775
772
  focusable: "false"
776
- }, getSvgProps(filled, color, strokeWidth)), /*#__PURE__*/React__default.createElement("path", {
777
- d: "M12 2C6.48 2 2 6.48 2 12s4.48 10 10 10 10-4.48 10-10S17.52 2 12 2zm0 18c-4.41 0-8-3.59-8-8s3.59-8 8-8 8 3.59 8 8-3.59 8-8 8z"
773
+ }, getSvgProps(filled, color, strokeWidth)), /*#__PURE__*/React__default.createElement("circle", {
774
+ cx: "12",
775
+ cy: "12",
776
+ r: "10"
777
+ }), /*#__PURE__*/React__default.createElement("path", {
778
+ d: "M9.09 9a3 3 0 1 1 5.91 1c0 2-3 3-3 3"
779
+ }), /*#__PURE__*/React__default.createElement("line", {
780
+ x1: "12",
781
+ y1: "17",
782
+ x2: "12",
783
+ y2: "17"
778
784
  })));
779
785
  };
780
786
  // Example Icon Component: ChevronIcon
@@ -1754,31 +1760,13 @@
1754
1760
  "aria-hidden": "false",
1755
1761
  focusable: "false"
1756
1762
  }, getSvgProps(filled, color, strokeWidth)), /*#__PURE__*/React__default.createElement("rect", {
1757
- x: "3",
1758
- y: "3",
1759
1763
  width: "18",
1760
1764
  height: "18",
1765
+ x: "3",
1766
+ y: "3",
1761
1767
  rx: "2"
1762
- }), /*#__PURE__*/React__default.createElement("line", {
1763
- x1: "9",
1764
- y1: "3",
1765
- x2: "9",
1766
- y2: "21"
1767
- }), /*#__PURE__*/React__default.createElement("line", {
1768
- x1: "12",
1769
- y1: "7",
1770
- x2: "17",
1771
- y2: "7"
1772
- }), /*#__PURE__*/React__default.createElement("line", {
1773
- x1: "12",
1774
- y1: "11",
1775
- x2: "17",
1776
- y2: "11"
1777
- }), /*#__PURE__*/React__default.createElement("line", {
1778
- x1: "12",
1779
- y1: "15",
1780
- x2: "17",
1781
- y2: "15"
1768
+ }), /*#__PURE__*/React__default.createElement("path", {
1769
+ d: "M9 3v18"
1782
1770
  })));
1783
1771
  };
1784
1772
  var FilterIcon = _ref41 => {
@@ -2731,6 +2719,59 @@
2731
2719
  y2: "17"
2732
2720
  })));
2733
2721
  };
2722
+ var GiftIcon = _ref78 => {
2723
+ var {
2724
+ widthHeight = 24,
2725
+ color = 'currentColor',
2726
+ strokeWidth = 1,
2727
+ filled = false
2728
+ } = _ref78,
2729
+ props = _objectWithoutPropertiesLoose(_ref78, _excluded78);
2730
+ return /*#__PURE__*/React__default.createElement(IconWrapper, Object.assign({
2731
+ widthHeight: widthHeight,
2732
+ color: color
2733
+ }, props), /*#__PURE__*/React__default.createElement("svg", Object.assign({
2734
+ viewBox: "0 0 24 24",
2735
+ "aria-hidden": "false",
2736
+ focusable: "false"
2737
+ }, getSvgProps(filled, color, strokeWidth)), /*#__PURE__*/React__default.createElement("rect", {
2738
+ x: "3",
2739
+ y: "8",
2740
+ width: "18",
2741
+ height: "4",
2742
+ rx: "1"
2743
+ }), /*#__PURE__*/React__default.createElement("path", {
2744
+ d: "M12 8V21"
2745
+ }), /*#__PURE__*/React__default.createElement("path", {
2746
+ d: "M3 12v6a3 3 0 0 0 3 3h3V12"
2747
+ }), /*#__PURE__*/React__default.createElement("path", {
2748
+ d: "M18 21h-3v-9h6v6a3 3 0 0 1-3 3z"
2749
+ }), /*#__PURE__*/React__default.createElement("path", {
2750
+ d: "M12 8c-.5-2.5-4-3-5-1.5S9 10 12 8z"
2751
+ }), /*#__PURE__*/React__default.createElement("path", {
2752
+ d: "M12 8c.5-2.5 4-3 5-1.5S15 10 12 8z"
2753
+ })));
2754
+ };
2755
+ var ShieldIcon = _ref79 => {
2756
+ var {
2757
+ widthHeight = 24,
2758
+ color = 'currentColor',
2759
+ strokeWidth = 1,
2760
+ filled = true
2761
+ } = _ref79,
2762
+ props = _objectWithoutPropertiesLoose(_ref79, _excluded79);
2763
+ return /*#__PURE__*/React__default.createElement(IconWrapper, Object.assign({
2764
+ widthHeight: widthHeight,
2765
+ color: color
2766
+ }, props), /*#__PURE__*/React__default.createElement("svg", Object.assign({
2767
+ viewBox: "0 0 24 24",
2768
+ "aria-hidden": "false",
2769
+ focusable: "false"
2770
+ }, getSvgProps(filled, color, strokeWidth)), /*#__PURE__*/React__default.createElement("path", {
2771
+ d: "M12 22s8-4 8-10V5l-8-3-8 3v7c0 6 8 10 8 10z"
2772
+ })));
2773
+ };
2774
+ var CheckIcon = TickIcon;
2734
2775
 
2735
2776
  var Icon = {
2736
2777
  __proto__: null,
@@ -2810,7 +2851,10 @@
2810
2851
  ShapeIcon: ShapeIcon,
2811
2852
  RotateIcon: RotateIcon,
2812
2853
  DocumentIcon: DocumentIcon,
2813
- ChartIcon: ChartIcon
2854
+ ChartIcon: ChartIcon,
2855
+ GiftIcon: GiftIcon,
2856
+ ShieldIcon: ShieldIcon,
2857
+ CheckIcon: CheckIcon
2814
2858
  };
2815
2859
 
2816
2860
  /**
@@ -5556,6 +5600,273 @@
5556
5600
  };
5557
5601
  var Chart = ChartComponent;
5558
5602
 
5603
+ /**
5604
+ * Custom hook to manage cookie consent state
5605
+ * @param cookieExpiration Number of days until the cookie expires
5606
+ * @returns State and functions for managing cookie consent
5607
+ */
5608
+ var useCookieConsentState = function useCookieConsentState(cookieExpiration) {
5609
+ if (cookieExpiration === void 0) {
5610
+ cookieExpiration = 365;
5611
+ }
5612
+ // State for hover effects
5613
+ var [isHovered, setIsHovered] = React.useState(false);
5614
+ // State for tracking if consent has been given
5615
+ var [hasConsent, setHasConsent] = React.useState(null);
5616
+ // Cookie name for storing consent
5617
+ var COOKIE_CONSENT_KEY = 'app-studio-cookie-consent';
5618
+ // Check for existing consent when component mounts
5619
+ React.useEffect(() => {
5620
+ var storedConsent = localStorage.getItem(COOKIE_CONSENT_KEY);
5621
+ if (storedConsent !== null) {
5622
+ setHasConsent(storedConsent === 'true');
5623
+ } else {
5624
+ setHasConsent(false);
5625
+ }
5626
+ }, []);
5627
+ /**
5628
+ * Save consent to localStorage with expiration
5629
+ */
5630
+ var saveConsent = consent => {
5631
+ localStorage.setItem(COOKIE_CONSENT_KEY, String(consent));
5632
+ // Set expiration date
5633
+ var expirationDate = new Date();
5634
+ expirationDate.setDate(expirationDate.getDate() + cookieExpiration);
5635
+ localStorage.setItem(COOKIE_CONSENT_KEY + "-expires", expirationDate.toISOString());
5636
+ setHasConsent(consent);
5637
+ };
5638
+ /**
5639
+ * Accept cookies
5640
+ */
5641
+ var acceptCookies = () => {
5642
+ saveConsent(true);
5643
+ };
5644
+ /**
5645
+ * Reset cookie consent (for testing)
5646
+ */
5647
+ var resetConsent = () => {
5648
+ localStorage.removeItem(COOKIE_CONSENT_KEY);
5649
+ localStorage.removeItem(COOKIE_CONSENT_KEY + "-expires");
5650
+ setHasConsent(false);
5651
+ };
5652
+ return {
5653
+ isHovered,
5654
+ setIsHovered,
5655
+ hasConsent,
5656
+ acceptCookies,
5657
+ resetConsent
5658
+ };
5659
+ };
5660
+
5661
+ /**
5662
+ * Get theme-based styles for the CookieConsent component
5663
+ */
5664
+ var getThemes$1 = themeMode => {
5665
+ var isDark = themeMode === 'dark';
5666
+ return {
5667
+ default: {
5668
+ container: {
5669
+ backgroundColor: isDark ? '#1f2937' : '#ffffff',
5670
+ borderColor: isDark ? '#374151' : '#e5e7eb',
5671
+ boxShadow: '0 4px 6px -1px rgba(0, 0, 0, 0.1), 0 2px 4px -1px rgba(0, 0, 0, 0.06)'
5672
+ },
5673
+ content: {
5674
+ color: isDark ? '#e5e7eb' : '#1f2937'
5675
+ },
5676
+ acceptButton: {
5677
+ backgroundColor: '#3b82f6',
5678
+ color: '#ffffff',
5679
+ hoverBackgroundColor: '#2563eb'
5680
+ },
5681
+ customizeButton: {
5682
+ backgroundColor: 'transparent',
5683
+ color: isDark ? '#e5e7eb' : '#4b5563',
5684
+ borderColor: isDark ? '#4b5563' : '#d1d5db',
5685
+ hoverBackgroundColor: isDark ? '#374151' : '#f3f4f6'
5686
+ }
5687
+ },
5688
+ info: {
5689
+ container: {
5690
+ backgroundColor: isDark ? '#1e3a8a' : '#eff6ff',
5691
+ borderColor: isDark ? '#1e40af' : '#bfdbfe',
5692
+ boxShadow: '0 4px 6px -1px rgba(0, 0, 0, 0.1), 0 2px 4px -1px rgba(0, 0, 0, 0.06)'
5693
+ },
5694
+ content: {
5695
+ color: isDark ? '#bfdbfe' : '#1e40af'
5696
+ },
5697
+ acceptButton: {
5698
+ backgroundColor: '#3b82f6',
5699
+ color: '#ffffff',
5700
+ hoverBackgroundColor: '#2563eb'
5701
+ },
5702
+ customizeButton: {
5703
+ backgroundColor: 'transparent',
5704
+ color: isDark ? '#bfdbfe' : '#1e40af',
5705
+ borderColor: isDark ? '#3b82f6' : '#93c5fd',
5706
+ hoverBackgroundColor: isDark ? '#1e40af' : '#dbeafe'
5707
+ }
5708
+ },
5709
+ primary: {
5710
+ container: {
5711
+ backgroundColor: isDark ? '#0c4a6e' : '#f0f9ff',
5712
+ borderColor: isDark ? '#0369a1' : '#bae6fd',
5713
+ boxShadow: '0 4px 6px -1px rgba(0, 0, 0, 0.1), 0 2px 4px -1px rgba(0, 0, 0, 0.06)'
5714
+ },
5715
+ content: {
5716
+ color: isDark ? '#bae6fd' : '#0369a1'
5717
+ },
5718
+ acceptButton: {
5719
+ backgroundColor: '#0ea5e9',
5720
+ color: '#ffffff',
5721
+ hoverBackgroundColor: '#0284c7'
5722
+ },
5723
+ customizeButton: {
5724
+ backgroundColor: 'transparent',
5725
+ color: isDark ? '#bae6fd' : '#0369a1',
5726
+ borderColor: isDark ? '#0ea5e9' : '#7dd3fc',
5727
+ hoverBackgroundColor: isDark ? '#0369a1' : '#e0f2fe'
5728
+ }
5729
+ }
5730
+ };
5731
+ };
5732
+
5733
+ var _excluded$e = ["title", "description", "acceptButtonText", "customizeButtonText", "position", "variant", "onAccept", "onCustomize", "views", "showCustomizeButton", "cookieExpiration", "themeMode"];
5734
+ /**
5735
+ * CookieConsent View Component
5736
+ *
5737
+ * Renders a cookie consent banner with customizable styling, position, and content.
5738
+ */
5739
+ var CookieConsentView = _ref => {
5740
+ var {
5741
+ title = 'Nous utilisons des cookies',
5742
+ description = 'Ce site utilise des cookies pour améliorer votre expérience. En continuant à naviguer sur ce site, vous acceptez notre utilisation des cookies conformément à notre politique de confidentialité.',
5743
+ acceptButtonText = 'Accepter',
5744
+ customizeButtonText = 'Personnaliser',
5745
+ position = 'bottom',
5746
+ variant = 'default',
5747
+ onAccept,
5748
+ onCustomize,
5749
+ views,
5750
+ showCustomizeButton = true,
5751
+ cookieExpiration = 365,
5752
+ themeMode: propThemeMode
5753
+ } = _ref,
5754
+ props = _objectWithoutPropertiesLoose(_ref, _excluded$e);
5755
+ // Get theme context
5756
+ var {
5757
+ themeMode: contextThemeMode
5758
+ } = appStudio.useTheme();
5759
+ // Use provided theme mode or fall back to context
5760
+ var themeMode = propThemeMode || contextThemeMode || 'light';
5761
+ // Get state and functions from custom hook
5762
+ var {
5763
+ hasConsent,
5764
+ acceptCookies
5765
+ } = useCookieConsentState(cookieExpiration);
5766
+ // Get theme-based styles
5767
+ var themes = getThemes$1(themeMode);
5768
+ var themeStyles = themes[variant];
5769
+ // If user has already given consent, don't show the banner
5770
+ if (hasConsent) {
5771
+ return null;
5772
+ }
5773
+ // Handle accept button click
5774
+ var handleAccept = () => {
5775
+ acceptCookies();
5776
+ if (onAccept) {
5777
+ onAccept();
5778
+ }
5779
+ };
5780
+ // Handle customize button click
5781
+ var handleCustomize = () => {
5782
+ if (onCustomize) {
5783
+ onCustomize();
5784
+ }
5785
+ };
5786
+ return /*#__PURE__*/React__default.createElement(appStudio.View, Object.assign({
5787
+ position: "fixed",
5788
+ left: 16,
5789
+ right: 16,
5790
+ zIndex: 1000,
5791
+ padding: 16,
5792
+ borderWidth: "1px",
5793
+ borderStyle: "solid",
5794
+ borderRadius: 8,
5795
+ maxWidth: "800px",
5796
+ marginX: "auto"
5797
+ }, position === 'bottom' ? {
5798
+ bottom: 16
5799
+ } : {
5800
+ top: 16
5801
+ }, themeStyles.container, views == null ? void 0 : views.container, props), /*#__PURE__*/React__default.createElement(appStudio.Vertical, {
5802
+ gap: 12,
5803
+ maxWidth: 1200,
5804
+ marginX: "auto"
5805
+ }, title && (/*#__PURE__*/React__default.createElement(appStudio.Text, Object.assign({
5806
+ fontWeight: "bold",
5807
+ fontSize: 18,
5808
+ color: "color.black"
5809
+ }, views == null ? void 0 : views.title), title)), description && (/*#__PURE__*/React__default.createElement(appStudio.Text, Object.assign({
5810
+ fontSize: 14,
5811
+ color: "color.black"
5812
+ }, views == null ? void 0 : views.description), typeof description === 'string' ? description : description)), /*#__PURE__*/React__default.createElement(appStudio.Horizontal, Object.assign({
5813
+ gap: 12,
5814
+ justifyContent: "flex-end",
5815
+ marginTop: 8
5816
+ }, views == null ? void 0 : views.buttonGroup), showCustomizeButton && (/*#__PURE__*/React__default.createElement(Button, Object.assign({
5817
+ variant: "outline",
5818
+ onClick: handleCustomize,
5819
+ size: "sm"
5820
+ }, views == null ? void 0 : views.customizeButton), customizeButtonText)), /*#__PURE__*/React__default.createElement(Button, Object.assign({
5821
+ variant: "primary",
5822
+ onClick: handleAccept,
5823
+ size: "sm"
5824
+ }, views == null ? void 0 : views.acceptButton), acceptButtonText))));
5825
+ };
5826
+
5827
+ /**
5828
+ * CookieConsent Component
5829
+ *
5830
+ * A component for displaying a cookie consent banner with customizable styling and content.
5831
+ *
5832
+ * Features:
5833
+ * - Customizable title and description
5834
+ * - Configurable button text
5835
+ * - Multiple visual variants
5836
+ * - Position control (top or bottom)
5837
+ * - Theme mode support (light or dark)
5838
+ * - Custom styling via views prop
5839
+ *
5840
+ * @example
5841
+ * // Basic usage
5842
+ * <CookieConsent />
5843
+ *
5844
+ * @example
5845
+ * // With custom text
5846
+ * <CookieConsent
5847
+ * title="Avis de confidentialité"
5848
+ * description="Nous utilisons des cookies pour améliorer votre expérience."
5849
+ * acceptButtonText="J'accepte"
5850
+ * />
5851
+ *
5852
+ * @example
5853
+ * // With custom styling and callbacks
5854
+ * <CookieConsent
5855
+ * variant="primary"
5856
+ * position="top"
5857
+ * onAccept={() => console.log('Cookies accepted')}
5858
+ * onCustomize={() => openPreferencesModal()}
5859
+ * views={{
5860
+ * container: { backgroundColor: 'color.blue.50' },
5861
+ * title: { color: 'color.blue.800' }
5862
+ * }}
5863
+ * />
5864
+ */
5865
+ var CookieConsentComponent = props => {
5866
+ return /*#__PURE__*/React__default.createElement(CookieConsentView, Object.assign({}, props));
5867
+ };
5868
+ var CookieConsent = CookieConsentComponent;
5869
+
5559
5870
  var useContextMenuState = props => {
5560
5871
  var {
5561
5872
  size,
@@ -5733,7 +6044,7 @@
5733
6044
  };
5734
6045
  };
5735
6046
 
5736
- var _excluded$e = ["children", "disableNativeContextMenu", "asChild", "isDisabled", "views"],
6047
+ var _excluded$f = ["children", "disableNativeContextMenu", "asChild", "isDisabled", "views"],
5737
6048
  _excluded2$6 = ["items", "children", "position", "side", "align", "views", "style"],
5738
6049
  _excluded3$5 = ["item", "children", "onSelect", "isDisabled", "views"],
5739
6050
  _excluded4$5 = ["views"],
@@ -5789,7 +6100,7 @@
5789
6100
  isDisabled = false,
5790
6101
  views
5791
6102
  } = _ref2,
5792
- props = _objectWithoutPropertiesLoose(_ref2, _excluded$e);
6103
+ props = _objectWithoutPropertiesLoose(_ref2, _excluded$f);
5793
6104
  var {
5794
6105
  triggerRef,
5795
6106
  contentId,
@@ -6072,7 +6383,7 @@
6072
6383
  }));
6073
6384
  };
6074
6385
 
6075
- var _excluded$f = ["children", "items", "size", "variant", "disableNativeContextMenu", "onOpenChange", "views"];
6386
+ var _excluded$g = ["children", "items", "size", "variant", "disableNativeContextMenu", "onOpenChange", "views"];
6076
6387
  /**
6077
6388
  * ContextMenu component for displaying a custom context menu on right-click.
6078
6389
  * Supports both data-driven approach (with items prop) and compound component pattern.
@@ -6087,7 +6398,7 @@
6087
6398
  onOpenChange,
6088
6399
  views
6089
6400
  } = _ref,
6090
- props = _objectWithoutPropertiesLoose(_ref, _excluded$f);
6401
+ props = _objectWithoutPropertiesLoose(_ref, _excluded$g);
6091
6402
  var state = useContextMenuState({
6092
6403
  size,
6093
6404
  variant,
@@ -6139,7 +6450,7 @@
6139
6450
  ContextMenu.Divider = ContextMenuDivider;
6140
6451
  ContextMenu.Separator = ContextMenuSeparator; // Add the Separator component
6141
6452
 
6142
- var _excluded$g = ["src", "color", "views", "themeMode"],
6453
+ var _excluded$h = ["src", "color", "views", "themeMode"],
6143
6454
  _excluded2$7 = ["path"];
6144
6455
  var FileSVG = _ref => {
6145
6456
  var {
@@ -6147,7 +6458,7 @@
6147
6458
  color,
6148
6459
  views
6149
6460
  } = _ref,
6150
- props = _objectWithoutPropertiesLoose(_ref, _excluded$g);
6461
+ props = _objectWithoutPropertiesLoose(_ref, _excluded$h);
6151
6462
  var {
6152
6463
  getColor,
6153
6464
  themeMode
@@ -6221,7 +6532,7 @@
6221
6532
  };
6222
6533
  };
6223
6534
 
6224
- var _excluded$h = ["children", "views"];
6535
+ var _excluded$i = ["children", "views"];
6225
6536
  var HelperText = _ref => {
6226
6537
  var {
6227
6538
  children,
@@ -6229,7 +6540,7 @@
6229
6540
  helperText: {}
6230
6541
  }
6231
6542
  } = _ref,
6232
- props = _objectWithoutPropertiesLoose(_ref, _excluded$h);
6543
+ props = _objectWithoutPropertiesLoose(_ref, _excluded$i);
6233
6544
  return /*#__PURE__*/React__default.createElement(Text
6234
6545
  // Typography properties
6235
6546
  , Object.assign({
@@ -6255,7 +6566,7 @@
6255
6566
  }, views['helperText'], props), children);
6256
6567
  };
6257
6568
 
6258
- var _excluded$i = ["children", "helperText", "error", "views"];
6569
+ var _excluded$j = ["children", "helperText", "error", "views"];
6259
6570
  var FieldContainer = _ref => {
6260
6571
  var {
6261
6572
  children,
@@ -6263,7 +6574,7 @@
6263
6574
  error = false,
6264
6575
  views
6265
6576
  } = _ref,
6266
- props = _objectWithoutPropertiesLoose(_ref, _excluded$i);
6577
+ props = _objectWithoutPropertiesLoose(_ref, _excluded$j);
6267
6578
  return /*#__PURE__*/React__default.createElement(appStudio.Vertical
6268
6579
  // Layout properties
6269
6580
  , Object.assign({
@@ -6379,7 +6690,7 @@
6379
6690
  paddingRight: '16px'
6380
6691
  };
6381
6692
 
6382
- var _excluded$j = ["label", "shadow", "children", "value", "size", "shape", "variant", "error", "showLabel", "isFocused", "isHovered", "isDisabled", "isReadOnly", "views"];
6693
+ var _excluded$k = ["label", "shadow", "children", "value", "size", "shape", "variant", "error", "showLabel", "isFocused", "isHovered", "isDisabled", "isReadOnly", "views"];
6383
6694
  var FieldContent = _ref => {
6384
6695
  var {
6385
6696
  shadow,
@@ -6397,7 +6708,7 @@
6397
6708
  pickerBox: {}
6398
6709
  }
6399
6710
  } = _ref,
6400
- props = _objectWithoutPropertiesLoose(_ref, _excluded$j);
6711
+ props = _objectWithoutPropertiesLoose(_ref, _excluded$k);
6401
6712
  // Determine if the field is in an interactive state
6402
6713
  var isInteractive = (isHovered || isFocused) && !isDisabled;
6403
6714
  // Set the appropriate color based on state
@@ -6426,12 +6737,12 @@
6426
6737
  }, showLabel ? PadddingWithLabel : PaddingWithoutLabel, shadow, Shapes[shape], InputVariants[variant], views['box'], props), children);
6427
6738
  };
6428
6739
 
6429
- var _excluded$k = ["children"];
6740
+ var _excluded$l = ["children"];
6430
6741
  var FieldIcons = _ref => {
6431
6742
  var {
6432
6743
  children
6433
6744
  } = _ref,
6434
- props = _objectWithoutPropertiesLoose(_ref, _excluded$k);
6745
+ props = _objectWithoutPropertiesLoose(_ref, _excluded$l);
6435
6746
  return /*#__PURE__*/React__default.createElement(appStudio.Center, Object.assign({
6436
6747
  gap: 10,
6437
6748
  right: 16,
@@ -6483,7 +6794,7 @@
6483
6794
  }
6484
6795
  };
6485
6796
 
6486
- var _excluded$l = ["children", "heading", "isItalic", "isUnderlined", "isStriked", "weight", "size", "dropDown"];
6797
+ var _excluded$m = ["children", "heading", "isItalic", "isUnderlined", "isStriked", "weight", "size", "dropDown"];
6487
6798
  var LabelView = _ref => {
6488
6799
  var {
6489
6800
  children,
@@ -6499,7 +6810,7 @@
6499
6810
  size = 'sm'
6500
6811
  // The fontSize prop for the Element is determined by the 'size' prop passed to LabelView.
6501
6812
  } = _ref,
6502
- props = _objectWithoutPropertiesLoose(_ref, _excluded$l);
6813
+ props = _objectWithoutPropertiesLoose(_ref, _excluded$m);
6503
6814
  // The fontStyle prop toggles between 'italic' and 'normal' based on the 'isItalic' boolean prop.
6504
6815
  var headingStyles = heading ? HeadingSizes$1[heading] : {};
6505
6816
  // fontWeight is derived from the Typography module, ensuring consistent font weighting across the app.
@@ -6531,7 +6842,7 @@
6531
6842
  var Label = LabelComponent;
6532
6843
  // Export the 'LabelComponent' as 'Label' to be reused throughout the project.
6533
6844
 
6534
- var _excluded$m = ["children", "size", "error", "color", "views", "helperText"];
6845
+ var _excluded$n = ["children", "size", "error", "color", "views", "helperText"];
6535
6846
  var FieldLabel = _ref => {
6536
6847
  var {
6537
6848
  children,
@@ -6542,7 +6853,7 @@
6542
6853
  label: {}
6543
6854
  }
6544
6855
  } = _ref,
6545
- props = _objectWithoutPropertiesLoose(_ref, _excluded$m);
6856
+ props = _objectWithoutPropertiesLoose(_ref, _excluded$n);
6546
6857
  return /*#__PURE__*/React__default.createElement(Label
6547
6858
  // Position properties
6548
6859
  , Object.assign({
@@ -6563,12 +6874,12 @@
6563
6874
  }, views['label'], props), children);
6564
6875
  };
6565
6876
 
6566
- var _excluded$n = ["children"];
6877
+ var _excluded$o = ["children"];
6567
6878
  var FieldWrapper = _ref => {
6568
6879
  var {
6569
6880
  children
6570
6881
  } = _ref,
6571
- props = _objectWithoutPropertiesLoose(_ref, _excluded$n);
6882
+ props = _objectWithoutPropertiesLoose(_ref, _excluded$o);
6572
6883
  return /*#__PURE__*/React__default.createElement(appStudio.Vertical
6573
6884
  // Layout properties
6574
6885
  , Object.assign({
@@ -6601,7 +6912,7 @@
6601
6912
  xl: 28
6602
6913
  };
6603
6914
 
6604
- var _excluded$o = ["isHovered", "setIsHovered", "option", "size", "callback", "style"],
6915
+ var _excluded$p = ["isHovered", "setIsHovered", "option", "size", "callback", "style"],
6605
6916
  _excluded2$8 = ["id", "name", "value", "onChange", "isMulti", "isDisabled", "isReadOnly", "options"],
6606
6917
  _excluded3$6 = ["option", "size", "removeOption"],
6607
6918
  _excluded4$6 = ["id", "name", "label", "value", "placeholder", "helperText", "hide", "error", "isMulti", "isFocused", "isHovered", "isDisabled", "isReadOnly", "options", "shadow", "size", "shape", "variant", "views", "onChange", "setHide", "setValue", "setIsHovered", "setIsFocused", "setHighlightedIndex", "highlightedIndex"];
@@ -6619,7 +6930,7 @@
6619
6930
  callback = () => {},
6620
6931
  style
6621
6932
  } = _ref,
6622
- props = _objectWithoutPropertiesLoose(_ref, _excluded$o);
6933
+ props = _objectWithoutPropertiesLoose(_ref, _excluded$p);
6623
6934
  // Handles the click event on an option by invoking the callback with the selected option's value
6624
6935
  var handleOptionClick = option => callback(option);
6625
6936
  // Toggles the hover state on the item
@@ -7112,7 +7423,7 @@
7112
7423
  }
7113
7424
  };
7114
7425
 
7115
- var _excluded$p = ["id", "name", "label", "inActiveChild", "isChecked", "activeChild", "labelPosition", "shadow", "size", "value", "isHovered", "isDisabled", "isReadOnly", "on", "setOn", "onChange", "setValue", "setIsHovered", "helperText", "views"];
7426
+ var _excluded$q = ["id", "name", "label", "inActiveChild", "isChecked", "activeChild", "labelPosition", "shadow", "size", "value", "isHovered", "isDisabled", "isReadOnly", "on", "setOn", "onChange", "setValue", "setIsHovered", "helperText", "views"];
7116
7427
  var SwitchContent = props => /*#__PURE__*/React__default.createElement(appStudio.Input, Object.assign({
7117
7428
  type: "checkbox"
7118
7429
  }, props));
@@ -7141,7 +7452,7 @@
7141
7452
  label: {}
7142
7453
  }
7143
7454
  } = _ref,
7144
- props = _objectWithoutPropertiesLoose(_ref, _excluded$p);
7455
+ props = _objectWithoutPropertiesLoose(_ref, _excluded$q);
7145
7456
  var handleToggle = event => {
7146
7457
  if (!isReadOnly) {
7147
7458
  setValue(!value);
@@ -7265,7 +7576,7 @@
7265
7576
  // Export of the useTextAreaState hook for external usage.
7266
7577
  };
7267
7578
 
7268
- var _excluded$q = ["id", "name", "hint", "error", "value", "label", "shadow", "helperText", "placeholder", "size", "shape", "variant", "isHovered", "isFocused", "isEditable", "isReadOnly", "isDisabled", "isAutoFocus", "isMultiline", "maxRows", "maxCols", "onBlur", "onChange", "onFocus", "setHint", "setValue", "setIsFocused", "setIsHovered", "views"];
7579
+ var _excluded$r = ["id", "name", "hint", "error", "value", "label", "shadow", "helperText", "placeholder", "size", "shape", "variant", "isHovered", "isFocused", "isEditable", "isReadOnly", "isDisabled", "isAutoFocus", "isMultiline", "maxRows", "maxCols", "onBlur", "onChange", "onFocus", "setHint", "setValue", "setIsFocused", "setIsHovered", "views"];
7269
7580
  var TextAreaView = _ref => {
7270
7581
  var {
7271
7582
  id,
@@ -7300,7 +7611,7 @@
7300
7611
  helperText: {}
7301
7612
  }
7302
7613
  } = _ref,
7303
- props = _objectWithoutPropertiesLoose(_ref, _excluded$q);
7614
+ props = _objectWithoutPropertiesLoose(_ref, _excluded$r);
7304
7615
  var showLabel = !!(isFocused && label);
7305
7616
  /**
7306
7617
  * Styles for the textarea field
@@ -7439,7 +7750,7 @@
7439
7750
  };
7440
7751
  };
7441
7752
 
7442
- var _excluded$r = ["id", "name", "label", "hint", "value", "onChange", "left", "right", "helperText", "placeholder", "onChangeText", "shadow", "views", "size", "shape", "variant", "error", "isFocused", "isHovered", "isDisabled", "isReadOnly", "isClearable", "isAutoFocus", "setHint", "setIsFocused", "setIsHovered", "setValue", "onClick", "onFocus", "onBlur", "themeMode"];
7753
+ var _excluded$s = ["id", "name", "label", "hint", "value", "onChange", "left", "right", "helperText", "placeholder", "onChangeText", "shadow", "views", "size", "shape", "variant", "error", "isFocused", "isHovered", "isDisabled", "isReadOnly", "isClearable", "isAutoFocus", "setHint", "setIsFocused", "setIsHovered", "setValue", "onClick", "onFocus", "onBlur", "themeMode"];
7443
7754
  /**
7444
7755
  * Input component for text fields
7445
7756
  */
@@ -7485,7 +7796,7 @@
7485
7796
  onBlur = () => {},
7486
7797
  themeMode: elementMode
7487
7798
  } = _ref,
7488
- props = _objectWithoutPropertiesLoose(_ref, _excluded$r);
7799
+ props = _objectWithoutPropertiesLoose(_ref, _excluded$s);
7489
7800
  var {
7490
7801
  getColor,
7491
7802
  themeMode
@@ -7741,7 +8052,7 @@
7741
8052
  }
7742
8053
  };
7743
8054
 
7744
- var _excluded$s = ["id", "icon", "name", "label", "isChecked", "onChange", "onValueChange", "shadow", "labelPosition", "size", "error", "isSelected", "isHovered", "isDisabled", "isReadOnly", "isIndeterminate", "defaultIsSelected", "setIsSelected", "setIsHovered", "views", "infoText", "helperText"];
8055
+ var _excluded$t = ["id", "icon", "name", "label", "isChecked", "onChange", "onValueChange", "shadow", "labelPosition", "size", "error", "isSelected", "isHovered", "isDisabled", "isReadOnly", "isIndeterminate", "defaultIsSelected", "setIsSelected", "setIsHovered", "views", "infoText", "helperText"];
7745
8056
  var CheckboxView = _ref => {
7746
8057
  var {
7747
8058
  id,
@@ -7768,7 +8079,7 @@
7768
8079
  },
7769
8080
  infoText
7770
8081
  } = _ref,
7771
- props = _objectWithoutPropertiesLoose(_ref, _excluded$s);
8082
+ props = _objectWithoutPropertiesLoose(_ref, _excluded$t);
7772
8083
  var handleHover = () => setIsHovered(!isHovered);
7773
8084
  var handleChange = () => {
7774
8085
  if (!isReadOnly && !isDisabled) {
@@ -9354,11 +9665,11 @@
9354
9665
  xl: 16
9355
9666
  };
9356
9667
 
9357
- var _excluded$t = ["size"],
9668
+ var _excluded$u = ["size"],
9358
9669
  _excluded2$9 = ["size"],
9359
9670
  _excluded3$7 = ["id", "name", "label", "value", "placeholder", "helperText", "hide", "error", "isHovered", "isFocused", "isAutoFocus", "isDisabled", "isReadOnly", "shadow", "newOptions", "size", "variant", "shape", "onChange", "onBlur", "setHide", "setNewOptions", "setIsHovered", "setIsFocused", "setValue", "views", "themeMode"];
9360
9671
  var CountryList = _ref => {
9361
- var props = _objectWithoutPropertiesLoose(_ref, _excluded$t);
9672
+ var props = _objectWithoutPropertiesLoose(_ref, _excluded$u);
9362
9673
  return /*#__PURE__*/React__default.createElement(appStudio.Element, Object.assign({
9363
9674
  as: "ul"
9364
9675
  }, props));
@@ -9599,7 +9910,7 @@
9599
9910
  };
9600
9911
  };
9601
9912
 
9602
- var _excluded$u = ["id", "icon", "name", "label", "date", "children", "helperText", "shadow", "size", "variant", "shape", "views", "error", "isHovered", "isFocused", "isDisabled", "isReadOnly", "setDate", "setIsFocused", "setIsHovered", "onChange", "onChangeText"];
9913
+ var _excluded$v = ["id", "icon", "name", "label", "date", "children", "helperText", "shadow", "size", "variant", "shape", "views", "error", "isHovered", "isFocused", "isDisabled", "isReadOnly", "setDate", "setIsFocused", "setIsHovered", "onChange", "onChangeText"];
9603
9914
  var DatePickerContent = props => /*#__PURE__*/React__default.createElement(appStudio.Input, Object.assign({
9604
9915
  type: "date"
9605
9916
  }, props));
@@ -9632,7 +9943,7 @@
9632
9943
  onChange,
9633
9944
  onChangeText
9634
9945
  } = _ref,
9635
- props = _objectWithoutPropertiesLoose(_ref, _excluded$u);
9946
+ props = _objectWithoutPropertiesLoose(_ref, _excluded$v);
9636
9947
  var showLabel = !!(isFocused && label);
9637
9948
  var handleHover = () => setIsHovered(!isHovered);
9638
9949
  var handleFocus = () => setIsFocused(true);
@@ -9719,7 +10030,7 @@
9719
10030
  }, props, textFieldStates);
9720
10031
  };
9721
10032
 
9722
- var _excluded$v = ["visibleIcon", "hiddenIcon"],
10033
+ var _excluded$w = ["visibleIcon", "hiddenIcon"],
9723
10034
  _excluded2$a = ["isVisible", "setIsVisible"];
9724
10035
  var PasswordComponent = _ref => {
9725
10036
  var {
@@ -9730,7 +10041,7 @@
9730
10041
  widthHeight: 14
9731
10042
  })
9732
10043
  } = _ref,
9733
- props = _objectWithoutPropertiesLoose(_ref, _excluded$v);
10044
+ props = _objectWithoutPropertiesLoose(_ref, _excluded$w);
9734
10045
  var _usePasswordState = usePasswordState(props),
9735
10046
  {
9736
10047
  isVisible,
@@ -9784,7 +10095,7 @@
9784
10095
  };
9785
10096
  };
9786
10097
 
9787
- var _excluded$w = ["placeholder", "items", "showTick", "onSelect", "searchEnabled", "left", "right", "label", "filteredItems", "setSelectedItem", "selectedItem", "highlightedIndex", "setHighlightedIndex", "searchQuery", "setSearchQuery", "setFilteredItems", "views", "isDropdownVisible", "setIsDropdownVisible"];
10098
+ var _excluded$x = ["placeholder", "items", "showTick", "onSelect", "searchEnabled", "left", "right", "label", "filteredItems", "setSelectedItem", "selectedItem", "highlightedIndex", "setHighlightedIndex", "searchQuery", "setSearchQuery", "setFilteredItems", "views", "isDropdownVisible", "setIsDropdownVisible"];
9788
10099
  // Defines the functional component 'ComboBoxView' with destructured props.
9789
10100
  var ComboBoxView = _ref => {
9790
10101
  var {
@@ -9809,7 +10120,7 @@
9809
10120
  setIsDropdownVisible
9810
10121
  // Collects all further props not destructured explicitly.
9811
10122
  } = _ref,
9812
- props = _objectWithoutPropertiesLoose(_ref, _excluded$w);
10123
+ props = _objectWithoutPropertiesLoose(_ref, _excluded$x);
9813
10124
  // Sets up an effect to handle clicking outside the dropdown to close it.
9814
10125
  React.useEffect(() => {
9815
10126
  var handleClickOutside = event => {
@@ -9921,7 +10232,7 @@
9921
10232
  }))))))))))));
9922
10233
  };
9923
10234
 
9924
- var _excluded$x = ["id", "name", "items", "placeholder", "searchPlaceholder"];
10235
+ var _excluded$y = ["id", "name", "items", "placeholder", "searchPlaceholder"];
9925
10236
  // Defines the ComboBoxComponent functional component with ComboBoxProps
9926
10237
  var ComboBoxComponent = _ref => {
9927
10238
  var {
@@ -9937,7 +10248,7 @@
9937
10248
  searchPlaceholder
9938
10249
  // Destructures the rest of the props not explicitly defined
9939
10250
  } = _ref,
9940
- props = _objectWithoutPropertiesLoose(_ref, _excluded$x);
10251
+ props = _objectWithoutPropertiesLoose(_ref, _excluded$y);
9941
10252
  // Initializes ComboBox state using custom hook with items and placeholders
9942
10253
  var state = useComboBoxState(items, placeholder, searchPlaceholder);
9943
10254
  return (
@@ -10259,7 +10570,7 @@
10259
10570
  };
10260
10571
  };
10261
10572
 
10262
- var _excluded$y = ["id", "name", "label", "value", "length", "onChange", "onChangeText", "onComplete", "helperText", "placeholder", "shadow", "views", "size", "shape", "variant", "gap", "type", "error", "isFocused", "isHovered", "isDisabled", "isReadOnly", "isAutoFocus", "setValue", "setIsFocused", "setIsHovered", "inputRef", "containerRef", "mirrorSelectionStart", "mirrorSelectionEnd", "setMirrorSelectionStart", "setMirrorSelectionEnd", "handlePaste", "handleChange", "handleFocus", "handleBlur", "handleKeyDown", "handleKeyPress", "secureTextEntry", "isFirstColumn", "stepValues", "setInputRef", "onBlur", "onClick", "onFocus"];
10573
+ var _excluded$z = ["id", "name", "label", "value", "length", "onChange", "onChangeText", "onComplete", "helperText", "placeholder", "shadow", "views", "size", "shape", "variant", "gap", "type", "error", "isFocused", "isHovered", "isDisabled", "isReadOnly", "isAutoFocus", "setValue", "setIsFocused", "setIsHovered", "inputRef", "containerRef", "mirrorSelectionStart", "mirrorSelectionEnd", "setMirrorSelectionStart", "setMirrorSelectionEnd", "handlePaste", "handleChange", "handleFocus", "handleBlur", "handleKeyDown", "handleKeyPress", "secureTextEntry", "isFirstColumn", "stepValues", "setInputRef", "onBlur", "onClick", "onFocus"];
10263
10574
  // Create a context for OTP input slots
10264
10575
  var OTPInputContext = /*#__PURE__*/React.createContext({
10265
10576
  slots: [],
@@ -10313,7 +10624,7 @@
10313
10624
  onFocus = () => {}
10314
10625
  // eslint-disable-next-line @typescript-eslint/no-unused-vars
10315
10626
  } = _ref,
10316
- props = _objectWithoutPropertiesLoose(_ref, _excluded$y);
10627
+ props = _objectWithoutPropertiesLoose(_ref, _excluded$z);
10317
10628
  appStudio.useTheme(); // Initialize theme context
10318
10629
  var showLabel = !!label;
10319
10630
  // Create context value for slots
@@ -10545,7 +10856,7 @@
10545
10856
  };
10546
10857
  var OTPInput = OTPInputComponent;
10547
10858
 
10548
- var _excluded$z = ["children", "autoFocus", "initFocus", "onChange"];
10859
+ var _excluded$A = ["children", "autoFocus", "initFocus", "onChange"];
10549
10860
  var FocusContext = /*#__PURE__*/React.createContext({
10550
10861
  active: false,
10551
10862
  focusNextInput: () => {},
@@ -10561,7 +10872,7 @@
10561
10872
  initFocus,
10562
10873
  onChange = () => {}
10563
10874
  } = _ref,
10564
- props = _objectWithoutPropertiesLoose(_ref, _excluded$z);
10875
+ props = _objectWithoutPropertiesLoose(_ref, _excluded$A);
10565
10876
  var formik$1 = formik.useFormikContext();
10566
10877
  React.useEffect(() => {
10567
10878
  onChange(formik$1.values);
@@ -10609,7 +10920,7 @@
10609
10920
  }, /*#__PURE__*/React__default.createElement(appStudio.Form, Object.assign({}, props), children));
10610
10921
  };
10611
10922
 
10612
- var _excluded$A = ["name", "type"];
10923
+ var _excluded$B = ["name", "type"];
10613
10924
  var getInputTypeProps = type => {
10614
10925
  switch (type) {
10615
10926
  case 'email':
@@ -10648,7 +10959,7 @@
10648
10959
  name,
10649
10960
  type
10650
10961
  } = _ref,
10651
- props = _objectWithoutPropertiesLoose(_ref, _excluded$A);
10962
+ props = _objectWithoutPropertiesLoose(_ref, _excluded$B);
10652
10963
  var focus = useFormFocus();
10653
10964
  var {
10654
10965
  touched,
@@ -10692,13 +11003,13 @@
10692
11003
  } : {});
10693
11004
  };
10694
11005
 
10695
- var _excluded$B = ["value"];
11006
+ var _excluded$C = ["value"];
10696
11007
  var CheckboxComponent$1 = props => {
10697
11008
  var _useFormikInput = useFormikInput(props),
10698
11009
  {
10699
11010
  value
10700
11011
  } = _useFormikInput,
10701
- formProps = _objectWithoutPropertiesLoose(_useFormikInput, _excluded$B);
11012
+ formProps = _objectWithoutPropertiesLoose(_useFormikInput, _excluded$C);
10702
11013
  formProps.isChecked = value;
10703
11014
  var checkboxStates = useCheckboxState(props);
10704
11015
  return /*#__PURE__*/React__default.createElement(CheckboxView, Object.assign({}, checkboxStates, formProps));
@@ -10756,11 +11067,11 @@
10756
11067
  */
10757
11068
  var FormikTextArea = TextAreaComponent$1;
10758
11069
 
10759
- var _excluded$C = ["value"];
11070
+ var _excluded$D = ["value"];
10760
11071
  var TextFieldComponent$1 = props => {
10761
11072
  var formProps = useFormikInput(props);
10762
11073
  var _useTextFieldState = useTextFieldState(props),
10763
- textFieldStates = _objectWithoutPropertiesLoose(_useTextFieldState, _excluded$C);
11074
+ textFieldStates = _objectWithoutPropertiesLoose(_useTextFieldState, _excluded$D);
10764
11075
  return /*#__PURE__*/React__default.createElement(TextFieldView, Object.assign({}, textFieldStates, formProps));
10765
11076
  };
10766
11077
  /**
@@ -10768,7 +11079,7 @@
10768
11079
  */
10769
11080
  var FormikTextField = TextFieldComponent$1;
10770
11081
 
10771
- var _excluded$D = ["visibleIcon", "hiddenIcon"],
11082
+ var _excluded$E = ["visibleIcon", "hiddenIcon"],
10772
11083
  _excluded2$b = ["isVisible", "setIsVisible"];
10773
11084
  var PasswordComponent$1 = _ref => {
10774
11085
  var {
@@ -10779,7 +11090,7 @@
10779
11090
  widthHeight: 14
10780
11091
  })
10781
11092
  } = _ref,
10782
- props = _objectWithoutPropertiesLoose(_ref, _excluded$D);
11093
+ props = _objectWithoutPropertiesLoose(_ref, _excluded$E);
10783
11094
  var formProps = useFormikInput(props);
10784
11095
  var _usePasswordState = usePasswordState(formProps),
10785
11096
  {
@@ -10804,14 +11115,14 @@
10804
11115
  */
10805
11116
  var FormikPassword = PasswordComponent$1;
10806
11117
 
10807
- var _excluded$E = ["items", "placeholder", "searchPlaceholder"];
11118
+ var _excluded$F = ["items", "placeholder", "searchPlaceholder"];
10808
11119
  var ComboBoxComponent$1 = _ref => {
10809
11120
  var {
10810
11121
  items,
10811
11122
  placeholder,
10812
11123
  searchPlaceholder
10813
11124
  } = _ref,
10814
- props = _objectWithoutPropertiesLoose(_ref, _excluded$E);
11125
+ props = _objectWithoutPropertiesLoose(_ref, _excluded$F);
10815
11126
  var formProps = useFormikInput(props);
10816
11127
  var ComboBoxStates = useComboBoxState(items, placeholder, searchPlaceholder);
10817
11128
  // Ensure the onChange function from formProps is being called when an item is selected
@@ -11092,7 +11403,7 @@
11092
11403
  }
11093
11404
  };
11094
11405
 
11095
- var _excluded$F = ["min", "max", "step", "currentValue", "stepValues", "shape", "size", "variant", "orientation", "isDisabled", "showValue", "showTooltip", "backgroundColor", "label", "helperText", "themeMode", "shadow", "isDragging", "isHovered", "setIsHovered", "trackRef", "thumbRef", "handleThumbMouseDown", "handleTrackMouseDown", "handleKeyDown", "thumbPositionPercent", "ariaLabel", "views"];
11406
+ var _excluded$G = ["min", "max", "step", "currentValue", "stepValues", "shape", "size", "variant", "orientation", "isDisabled", "showValue", "showTooltip", "backgroundColor", "label", "helperText", "themeMode", "shadow", "isDragging", "isHovered", "setIsHovered", "trackRef", "thumbRef", "handleThumbMouseDown", "handleTrackMouseDown", "handleKeyDown", "thumbPositionPercent", "ariaLabel", "views"];
11096
11407
  var SliderView = _ref => {
11097
11408
  var _views$tooltip, _views$tooltip2;
11098
11409
  var {
@@ -11135,7 +11446,7 @@
11135
11446
  tooltip: {}
11136
11447
  }
11137
11448
  } = _ref,
11138
- props = _objectWithoutPropertiesLoose(_ref, _excluded$F);
11449
+ props = _objectWithoutPropertiesLoose(_ref, _excluded$G);
11139
11450
  var {
11140
11451
  getColor,
11141
11452
  themeMode
@@ -12013,7 +12324,7 @@
12013
12324
  }, views == null ? void 0 : views.view)));
12014
12325
  };
12015
12326
 
12016
- var _excluded$G = ["accept", "icon", "text", "maxSize", "onFileSelect", "validateFile", "isLoading", "progress", "fileType"];
12327
+ var _excluded$H = ["accept", "icon", "text", "maxSize", "onFileSelect", "validateFile", "isLoading", "progress", "fileType"];
12017
12328
  var Uploader = _ref => {
12018
12329
  var {
12019
12330
  accept = '*/*',
@@ -12026,7 +12337,7 @@
12026
12337
  progress = 0,
12027
12338
  fileType
12028
12339
  } = _ref,
12029
- props = _objectWithoutPropertiesLoose(_ref, _excluded$G);
12340
+ props = _objectWithoutPropertiesLoose(_ref, _excluded$H);
12030
12341
  var {
12031
12342
  previewUrl,
12032
12343
  thumbnailUrl,
@@ -12217,7 +12528,7 @@
12217
12528
  }
12218
12529
  };
12219
12530
 
12220
- var _excluded$H = ["children", "blur", "isOpen", "isClosePrevented", "onClose", "position", "views"],
12531
+ var _excluded$I = ["children", "blur", "isOpen", "isClosePrevented", "onClose", "position", "views"],
12221
12532
  _excluded2$c = ["children", "shadow", "isFullScreen", "shape", "views", "isOpen"],
12222
12533
  _excluded3$8 = ["children", "buttonColor", "iconSize", "buttonPosition", "views"],
12223
12534
  _excluded4$7 = ["children", "views"],
@@ -12232,7 +12543,7 @@
12232
12543
  position = 'center',
12233
12544
  views
12234
12545
  } = _ref,
12235
- props = _objectWithoutPropertiesLoose(_ref, _excluded$H);
12546
+ props = _objectWithoutPropertiesLoose(_ref, _excluded$I);
12236
12547
  var handleClick = () => {
12237
12548
  if (!isClosePrevented) onClose();
12238
12549
  };
@@ -12528,7 +12839,7 @@
12528
12839
  }
12529
12840
  };
12530
12841
 
12531
- var _excluded$I = ["href", "children", "views"];
12842
+ var _excluded$J = ["href", "children", "views"];
12532
12843
  // Create context for the NavigationMenu
12533
12844
  var NavigationMenuContext = /*#__PURE__*/React.createContext({
12534
12845
  activeItemId: null,
@@ -12763,7 +13074,7 @@
12763
13074
  children,
12764
13075
  views
12765
13076
  } = _ref6,
12766
- props = _objectWithoutPropertiesLoose(_ref6, _excluded$I);
13077
+ props = _objectWithoutPropertiesLoose(_ref6, _excluded$J);
12767
13078
  var {
12768
13079
  itemValue,
12769
13080
  isDisabled
@@ -12830,7 +13141,7 @@
12830
13141
  })))));
12831
13142
  };
12832
13143
 
12833
- var _excluded$J = ["items", "children", "orientation", "size", "variant", "defaultActiveItemId", "defaultExpandedItemIds", "onItemActivate", "views"];
13144
+ var _excluded$K = ["items", "children", "orientation", "size", "variant", "defaultActiveItemId", "defaultExpandedItemIds", "onItemActivate", "views"];
12834
13145
  /**
12835
13146
  * NavigationMenu component for creating navigation menus with optional nested items.
12836
13147
  * Supports both data-driven approach (with items prop) and compound component pattern.
@@ -12847,7 +13158,7 @@
12847
13158
  onItemActivate,
12848
13159
  views
12849
13160
  } = _ref,
12850
- props = _objectWithoutPropertiesLoose(_ref, _excluded$J);
13161
+ props = _objectWithoutPropertiesLoose(_ref, _excluded$K);
12851
13162
  var {
12852
13163
  activeItemId,
12853
13164
  setActiveItemId,
@@ -13302,6 +13613,507 @@
13302
13613
  // Export the component wrapped in React.memo for performance optimization
13303
13614
  var Tabs = /*#__PURE__*/React__default.memo(TabsComponent);
13304
13615
 
13616
+ /**
13617
+ * Custom hook for managing Title component state and animations
13618
+ */
13619
+ var useTitleState = props => {
13620
+ var {
13621
+ animation = 'none',
13622
+ animationDirection = 'left',
13623
+ animationDuration = '1s',
13624
+ animationDelay = '0s',
13625
+ children,
13626
+ _isInView = false,
13627
+ alternateHighlightText = [],
13628
+ alternateAnimation = false,
13629
+ alternateDuration = 3000,
13630
+ highlightText
13631
+ } = props;
13632
+ // State for typewriter animation
13633
+ var [displayText, setDisplayText] = React.useState('');
13634
+ // State for alternating highlight text
13635
+ var [currentHighlightText, setCurrentHighlightText] = React.useState(highlightText);
13636
+ // State for the alternating text content
13637
+ var [alternatingContent, setAlternatingContent] = React.useState(children);
13638
+ // Handle alternating highlight text animation
13639
+ React.useEffect(() => {
13640
+ // Initialize with the provided highlightText
13641
+ setCurrentHighlightText(highlightText);
13642
+ // If not using alternating animation or no alternateHighlightText provided, return early
13643
+ if (!alternateAnimation || alternateHighlightText.length === 0 || !_isInView) {
13644
+ return () => {};
13645
+ }
13646
+ // Only proceed if children is a string
13647
+ if (typeof children !== 'string') {
13648
+ return () => {};
13649
+ }
13650
+ // Set initial content with the first alternating text
13651
+ var baseText = children;
13652
+ var currentIndex = 0;
13653
+ // Function to update the content with the current alternating text
13654
+ var updateContent = index => {
13655
+ if (highlightText && typeof highlightText === 'string') {
13656
+ // Replace the highlightText with the current alternating text
13657
+ var regex = new RegExp(highlightText, 'gi');
13658
+ var newContent = baseText.replace(regex, alternateHighlightText[index]);
13659
+ setAlternatingContent(newContent);
13660
+ }
13661
+ };
13662
+ // Set initial content
13663
+ updateContent(currentIndex);
13664
+ // Create interval to cycle through the alternateHighlightText array
13665
+ var interval = setInterval(() => {
13666
+ currentIndex = (currentIndex + 1) % alternateHighlightText.length;
13667
+ updateContent(currentIndex);
13668
+ }, alternateDuration);
13669
+ return () => clearInterval(interval);
13670
+ }, [alternateAnimation, alternateHighlightText, alternateDuration, highlightText, children, _isInView]);
13671
+ // Handle typewriter animation
13672
+ React.useEffect(() => {
13673
+ // Only start the typewriter animation when the component is in view
13674
+ if (animation === 'typewriter' && typeof children === 'string' && _isInView) {
13675
+ var text = children;
13676
+ var currentIndex = 0;
13677
+ setDisplayText('');
13678
+ var interval = setInterval(() => {
13679
+ if (currentIndex <= text.length) {
13680
+ setDisplayText(text.substring(0, currentIndex));
13681
+ currentIndex++;
13682
+ } else {
13683
+ clearInterval(interval);
13684
+ }
13685
+ }, 100);
13686
+ return () => clearInterval(interval);
13687
+ }
13688
+ // Reset the text if not in view
13689
+ if (animation === 'typewriter' && !_isInView) {
13690
+ setDisplayText('');
13691
+ }
13692
+ return () => {};
13693
+ }, [animation, children, _isInView]);
13694
+ // Get animation configuration based on animation type
13695
+ var getAnimation = () => {
13696
+ // For typewriter animation, we handle it separately with useState and useEffect
13697
+ if (animation === 'typewriter') {
13698
+ return undefined;
13699
+ }
13700
+ switch (animation) {
13701
+ case 'fadeIn':
13702
+ return {
13703
+ from: {
13704
+ opacity: 0
13705
+ },
13706
+ to: {
13707
+ opacity: 1
13708
+ },
13709
+ duration: animationDuration,
13710
+ delay: animationDelay,
13711
+ // iterationCount: 'infinite',
13712
+ direction: 'alternate'
13713
+ };
13714
+ case 'slideIn':
13715
+ switch (animationDirection) {
13716
+ case 'left':
13717
+ return {
13718
+ from: {
13719
+ transform: 'translateX(-100%)'
13720
+ },
13721
+ to: {
13722
+ transform: 'translateX(0)'
13723
+ },
13724
+ duration: animationDuration,
13725
+ delay: animationDelay,
13726
+ // iterationCount: 'infinite',
13727
+ direction: 'alternate'
13728
+ };
13729
+ case 'right':
13730
+ return {
13731
+ from: {
13732
+ transform: 'translateX(100%)'
13733
+ },
13734
+ to: {
13735
+ transform: 'translateX(0)'
13736
+ },
13737
+ duration: animationDuration,
13738
+ delay: animationDelay,
13739
+ // iterationCount: 'infinite',
13740
+ direction: 'alternate'
13741
+ };
13742
+ case 'top':
13743
+ return {
13744
+ from: {
13745
+ transform: 'translateY(-100%)'
13746
+ },
13747
+ to: {
13748
+ transform: 'translateY(0)'
13749
+ },
13750
+ duration: animationDuration,
13751
+ delay: animationDelay,
13752
+ // iterationCount: 'infinite',
13753
+ direction: 'alternate'
13754
+ };
13755
+ case 'bottom':
13756
+ return {
13757
+ from: {
13758
+ transform: 'translateY(100%)'
13759
+ },
13760
+ to: {
13761
+ transform: 'translateY(0)'
13762
+ },
13763
+ duration: animationDuration,
13764
+ delay: animationDelay,
13765
+ // iterationCount: 'infinite',
13766
+ direction: 'alternate'
13767
+ };
13768
+ default:
13769
+ return {
13770
+ from: {
13771
+ transform: 'translateX(-100%)'
13772
+ },
13773
+ to: {
13774
+ transform: 'translateX(0)'
13775
+ },
13776
+ duration: animationDuration,
13777
+ delay: animationDelay,
13778
+ // iterationCount: 'infinite',
13779
+ direction: 'alternate'
13780
+ };
13781
+ }
13782
+ case 'bounce':
13783
+ return {
13784
+ from: {
13785
+ transform: 'translateY(0)'
13786
+ },
13787
+ '20%': {
13788
+ transform: 'translateY(-30px)'
13789
+ },
13790
+ '40%': {
13791
+ transform: 'translateY(0)'
13792
+ },
13793
+ '60%': {
13794
+ transform: 'translateY(-15px)'
13795
+ },
13796
+ '80%': {
13797
+ transform: 'translateY(0)'
13798
+ },
13799
+ to: {
13800
+ transform: 'translateY(0)'
13801
+ },
13802
+ duration: animationDuration,
13803
+ delay: animationDelay,
13804
+ iterationCount: '1'
13805
+ };
13806
+ case 'highlight':
13807
+ return {
13808
+ from: {
13809
+ backgroundSize: '0 100%'
13810
+ },
13811
+ to: {
13812
+ backgroundSize: '100% 100%'
13813
+ },
13814
+ duration: animationDuration,
13815
+ delay: animationDelay
13816
+ };
13817
+ case 'reveal':
13818
+ return {
13819
+ from: {
13820
+ clipPath: 'polygon(0 0, 0 0, 0 100%, 0% 100%)'
13821
+ },
13822
+ to: {
13823
+ clipPath: 'polygon(0 0, 100% 0, 100% 100%, 0 100%)'
13824
+ },
13825
+ duration: animationDuration,
13826
+ delay: animationDelay
13827
+ };
13828
+ case 'none':
13829
+ default:
13830
+ return undefined;
13831
+ }
13832
+ };
13833
+ return {
13834
+ displayText,
13835
+ getAnimation,
13836
+ currentHighlightText,
13837
+ alternatingContent
13838
+ };
13839
+ };
13840
+
13841
+ /**
13842
+ * Font sizes for different title sizes
13843
+ */
13844
+ var TitleSizes = {
13845
+ xs: 16,
13846
+ sm: 20,
13847
+ md: 24,
13848
+ lg: 32,
13849
+ xl: 40,
13850
+ '2xl': 48,
13851
+ '3xl': 56,
13852
+ '4xl': 64,
13853
+ '5xl': 72,
13854
+ '6xl': 80
13855
+ };
13856
+ /**
13857
+ * Line heights for different title sizes
13858
+ */
13859
+ var LineHeights$1 = {
13860
+ xs: 24,
13861
+ sm: 28,
13862
+ md: 32,
13863
+ lg: 64,
13864
+ xl: 88
13865
+ };
13866
+ /**
13867
+ * Default styles for different highlight types
13868
+ */
13869
+ var HighlightStyles = {
13870
+ underline: color => ({
13871
+ textDecoration: 'underline',
13872
+ textDecorationColor: color,
13873
+ textDecorationThickness: '4px',
13874
+ textUnderlineOffset: '4px'
13875
+ }),
13876
+ background: color => ({
13877
+ backgroundColor: color,
13878
+ color: 'color.white',
13879
+ padding: '0 8px',
13880
+ borderRadius: '4px'
13881
+ }),
13882
+ gradient: (color, secondaryColor) => ({
13883
+ background: "linear-gradient(135deg, " + color + ", " + (secondaryColor || color) + ")",
13884
+ webkitBackgroundClip: 'text',
13885
+ webkitTextFillColor: 'transparent',
13886
+ backgroundClip: 'text',
13887
+ color: 'transparent',
13888
+ display: 'inline-block'
13889
+ }),
13890
+ outline: color => ({
13891
+ webkitTextStroke: "1px " + color,
13892
+ webkitTextFillColor: 'transparent',
13893
+ color: 'transparent',
13894
+ textShadow: 'none'
13895
+ }),
13896
+ glow: color => ({
13897
+ color: color,
13898
+ textShadow: "0 0 10px " + color + "80, 0 0 20px " + color + "40, 0 0 30px " + color + "20"
13899
+ })
13900
+ };
13901
+
13902
+ var _excluded$L = ["children", "highlightText", "highlightStyle", "highlightColor", "highlightSecondaryColor", "animation", "size", "centered", "views"];
13903
+ /**
13904
+ * Title View Component
13905
+ *
13906
+ * Renders a title with optional highlighting and animations for hero sections.
13907
+ */
13908
+ var TitleView = _ref => {
13909
+ var {
13910
+ children,
13911
+ highlightText,
13912
+ highlightStyle = 'background',
13913
+ highlightColor = 'theme.primary',
13914
+ highlightSecondaryColor,
13915
+ animation = 'none',
13916
+ size = 'xl',
13917
+ centered = false,
13918
+ views
13919
+ } = _ref,
13920
+ props = _objectWithoutPropertiesLoose(_ref, _excluded$L);
13921
+ // Use the inView hook to detect when the component is visible
13922
+ var {
13923
+ ref,
13924
+ inView
13925
+ } = appStudio.useInView();
13926
+ // Get theme utilities
13927
+ var {
13928
+ getColor,
13929
+ themeMode: contextThemeMode
13930
+ } = appStudio.useTheme();
13931
+ var themeMode = props.themeMode || contextThemeMode;
13932
+ // Resolve theme colors
13933
+ var resolvedHighlightColor = getColor(highlightColor, {
13934
+ themeMode
13935
+ });
13936
+ var resolvedSecondaryColor = highlightSecondaryColor ? getColor(highlightSecondaryColor, {
13937
+ themeMode
13938
+ }) : undefined;
13939
+ // Get state and animation functions from custom hook
13940
+ var {
13941
+ displayText,
13942
+ getAnimation,
13943
+ currentHighlightText,
13944
+ alternatingContent
13945
+ } = useTitleState(Object.assign({
13946
+ children,
13947
+ highlightText,
13948
+ highlightStyle,
13949
+ highlightColor: resolvedHighlightColor,
13950
+ animation,
13951
+ _isInView: inView
13952
+ }, props));
13953
+ // Get animation configuration only when the component is in view
13954
+ // For typewriter animation, we don't need an animation config as it's handled by useState/useEffect
13955
+ var animationConfig = inView && animation !== 'typewriter' ? getAnimation() : undefined;
13956
+ // Get highlight styles
13957
+ var highlightStyleProps = HighlightStyles[highlightStyle](resolvedHighlightColor, resolvedSecondaryColor);
13958
+ // Get font size and line height based on size prop
13959
+ var fontSize = TitleSizes[size];
13960
+ var lineHeight = LineHeights$1[size];
13961
+ // For typewriter animation, use the displayText state
13962
+ // For alternating animation, use the alternatingContent state
13963
+ var content = animation === 'typewriter' ? displayText : props.alternateAnimation && typeof alternatingContent === 'string' ? alternatingContent : children;
13964
+ // If the content is a simple string and we have highlight text
13965
+ if (typeof children === 'string' && currentHighlightText) {
13966
+ var text = children;
13967
+ // For a single highlight text
13968
+ if (typeof currentHighlightText === 'string') {
13969
+ // Create a regex pattern to match the highlight text
13970
+ // Use a more flexible approach that can match within words
13971
+ var pattern = new RegExp("(" + currentHighlightText + ")", 'gi');
13972
+ // Check if the pattern matches anything in the text
13973
+ if (pattern.test(text)) {
13974
+ // Reset the regex pattern's lastIndex property
13975
+ pattern.lastIndex = 0;
13976
+ // Split the text by the pattern and keep the matches
13977
+ var parts = [];
13978
+ var lastIndex = 0;
13979
+ var match;
13980
+ while ((match = pattern.exec(text)) !== null) {
13981
+ // Add the text before the match
13982
+ if (match.index > lastIndex) {
13983
+ parts.push(text.substring(lastIndex, match.index));
13984
+ }
13985
+ // Add the match as a special part to be highlighted
13986
+ parts.push({
13987
+ highlight: true,
13988
+ text: match[0]
13989
+ });
13990
+ lastIndex = match.index + match[0].length;
13991
+ }
13992
+ // Add any remaining text after the last match
13993
+ if (lastIndex < text.length) {
13994
+ parts.push(text.substring(lastIndex));
13995
+ }
13996
+ return /*#__PURE__*/React__default.createElement(appStudio.Element, Object.assign({
13997
+ ref: ref,
13998
+ as: "h1",
13999
+ fontSize: fontSize,
14000
+ lineHeight: lineHeight + "px",
14001
+ fontWeight: "bold",
14002
+ textAlign: centered ? 'center' : 'left',
14003
+ animate: animationConfig
14004
+ }, props, views == null ? void 0 : views.container), parts.map((part, index) => (/*#__PURE__*/React__default.createElement(React__default.Fragment, {
14005
+ key: index
14006
+ }, typeof part === 'string' ? part : (/*#__PURE__*/React__default.createElement(appStudio.Text, Object.assign({
14007
+ as: "span",
14008
+ display: "inline"
14009
+ }, highlightStyleProps, views == null ? void 0 : views.highlight), part.text))))));
14010
+ }
14011
+ }
14012
+ // For multiple highlight texts
14013
+ if (Array.isArray(currentHighlightText)) {
14014
+ // Create a regex pattern to match any of the highlight texts
14015
+ // Use a more flexible approach that can match within words
14016
+ var _pattern = new RegExp("(" + currentHighlightText.join('|') + ")", 'gi');
14017
+ // Check if the pattern matches anything in the text
14018
+ if (_pattern.test(text)) {
14019
+ // Reset the regex pattern's lastIndex property
14020
+ _pattern.lastIndex = 0;
14021
+ // Split the text by the pattern and keep the matches
14022
+ var _parts = [];
14023
+ var _lastIndex = 0;
14024
+ var _match;
14025
+ while ((_match = _pattern.exec(text)) !== null) {
14026
+ // Add the text before the match
14027
+ if (_match.index > _lastIndex) {
14028
+ _parts.push(text.substring(_lastIndex, _match.index));
14029
+ }
14030
+ // Add the match as a special part to be highlighted
14031
+ _parts.push({
14032
+ highlight: true,
14033
+ text: _match[0]
14034
+ });
14035
+ _lastIndex = _match.index + _match[0].length;
14036
+ }
14037
+ // Add any remaining text after the last match
14038
+ if (_lastIndex < text.length) {
14039
+ _parts.push(text.substring(_lastIndex));
14040
+ }
14041
+ return /*#__PURE__*/React__default.createElement(appStudio.Element, Object.assign({
14042
+ ref: ref,
14043
+ as: "h1",
14044
+ fontSize: fontSize,
14045
+ lineHeight: lineHeight + "px",
14046
+ fontWeight: "bold",
14047
+ textAlign: centered ? 'center' : 'left',
14048
+ animate: animationConfig
14049
+ }, props, views == null ? void 0 : views.container), _parts.map((part, index) => (/*#__PURE__*/React__default.createElement(React__default.Fragment, {
14050
+ key: index
14051
+ }, typeof part === 'string' ? part : (/*#__PURE__*/React__default.createElement(appStudio.Text, Object.assign({
14052
+ as: "span",
14053
+ display: "inline"
14054
+ }, highlightStyleProps, views == null ? void 0 : views.highlight), part.text))))));
14055
+ }
14056
+ }
14057
+ }
14058
+ // Default rendering for non-string children or no highlighting
14059
+ return /*#__PURE__*/React__default.createElement(appStudio.Element, Object.assign({
14060
+ ref: ref,
14061
+ as: "h1",
14062
+ fontSize: fontSize,
14063
+ lineHeight: lineHeight + "px",
14064
+ fontWeight: "bold",
14065
+ textAlign: centered ? 'center' : 'left',
14066
+ animate: animationConfig
14067
+ }, props, views == null ? void 0 : views.container), content);
14068
+ };
14069
+
14070
+ /**
14071
+ * Title Component
14072
+ *
14073
+ * A component for rendering animated and highlighted titles in hero sections.
14074
+ *
14075
+ * Features:
14076
+ * - Text highlighting with various styles (background, underline, gradient, outline, glow)
14077
+ * - Multiple animation options (fade, slide, typewriter, reveal)
14078
+ * - Responsive sizing
14079
+ * - Customizable styling
14080
+ *
14081
+ * @example
14082
+ * // Basic usage
14083
+ * <Title>Welcome to Our Platform</Title>
14084
+ *
14085
+ * @example
14086
+ * // With highlighting
14087
+ * <Title highlightText="Platform" highlightStyle="background" highlightColor="theme.primary">
14088
+ * Welcome to Our Platform
14089
+ * </Title>
14090
+ *
14091
+ * @example
14092
+ * // With animation
14093
+ * <Title
14094
+ * animation="fadeIn"
14095
+ * animationDuration="1.5s"
14096
+ * size="2xl"
14097
+ * >
14098
+ * Animated Title
14099
+ * </Title>
14100
+ *
14101
+ * @example
14102
+ * // With multiple highlights
14103
+ * <Title
14104
+ * highlightText={["Amazing", "Features"]}
14105
+ * highlightStyle="gradient"
14106
+ * highlightColor="theme.primary"
14107
+ * highlightSecondaryColor="theme.secondary"
14108
+ * >
14109
+ * Discover our Amazing Product with Great Features
14110
+ * </Title>
14111
+ */
14112
+ var TitleComponent = props => {
14113
+ return /*#__PURE__*/React__default.createElement(TitleView, Object.assign({}, props));
14114
+ };
14115
+ var Title = TitleComponent;
14116
+
13305
14117
  // Declares the useToggleState function which takes defaultToggled parameter to initialize the toggle state.
13306
14118
  var useToggleState = defaultToggled => {
13307
14119
  // Creates a stateful value isHovered for tracking hover state and a function setIsHovered to update that state, initially false.
@@ -13317,7 +14129,7 @@
13317
14129
  };
13318
14130
  };
13319
14131
 
13320
- var _excluded$K = ["children", "shape", "variant", "isHovered", "setIsHovered", "isDisabled", "isToggle", "setIsToggled", "onToggle", "views"];
14132
+ var _excluded$M = ["children", "shape", "variant", "isHovered", "setIsHovered", "isDisabled", "isToggle", "setIsToggled", "onToggle", "views"];
13321
14133
  var ToggleView = _ref => {
13322
14134
  var {
13323
14135
  children,
@@ -13331,7 +14143,7 @@
13331
14143
  onToggle,
13332
14144
  views
13333
14145
  } = _ref,
13334
- props = _objectWithoutPropertiesLoose(_ref, _excluded$K);
14146
+ props = _objectWithoutPropertiesLoose(_ref, _excluded$M);
13335
14147
  var toggleColor = !isDisabled ? 'color.trueGray.400' : 'theme.disabled';
13336
14148
  var isActive = !!(isToggle || isHovered);
13337
14149
  var toggleVariants = {
@@ -13374,7 +14186,7 @@
13374
14186
  }, toggleVariants[variant], props, views == null ? void 0 : views.container), children);
13375
14187
  };
13376
14188
 
13377
- var _excluded$L = ["children", "shape", "variant", "isDisabled", "isToggled", "onToggle"];
14189
+ var _excluded$N = ["children", "shape", "variant", "isDisabled", "isToggled", "onToggle"];
13378
14190
  // Destructuring properties from ToggleProps to be used within the ToggleComponent.
13379
14191
  var ToggleComponent = _ref => {
13380
14192
  var {
@@ -13386,7 +14198,7 @@
13386
14198
  isToggled = false,
13387
14199
  onToggle
13388
14200
  } = _ref,
13389
- props = _objectWithoutPropertiesLoose(_ref, _excluded$L);
14201
+ props = _objectWithoutPropertiesLoose(_ref, _excluded$N);
13390
14202
  // Initializing toggle state and set state functions using the custom hook useToggleState.
13391
14203
  var {
13392
14204
  isHovered,
@@ -13777,7 +14589,7 @@
13777
14589
  return positions[side];
13778
14590
  };
13779
14591
 
13780
- var _excluded$M = ["children", "views"],
14592
+ var _excluded$O = ["children", "views"],
13781
14593
  _excluded2$d = ["items", "side", "align", "views"],
13782
14594
  _excluded3$9 = ["item", "views"],
13783
14595
  _excluded4$8 = ["views"],
@@ -13815,7 +14627,7 @@
13815
14627
  children,
13816
14628
  views
13817
14629
  } = _ref2,
13818
- props = _objectWithoutPropertiesLoose(_ref2, _excluded$M);
14630
+ props = _objectWithoutPropertiesLoose(_ref2, _excluded$O);
13819
14631
  var {
13820
14632
  isOpen,
13821
14633
  setIsOpen
@@ -13975,7 +14787,7 @@
13975
14787
  }));
13976
14788
  };
13977
14789
 
13978
- var _excluded$N = ["trigger", "items", "size", "variant", "side", "align", "defaultOpen", "views"];
14790
+ var _excluded$P = ["trigger", "items", "size", "variant", "side", "align", "defaultOpen", "views"];
13979
14791
  /**
13980
14792
  * DropdownMenu component for displaying a menu when clicking on a trigger element.
13981
14793
  */
@@ -13990,7 +14802,7 @@
13990
14802
  defaultOpen = false,
13991
14803
  views
13992
14804
  } = _ref,
13993
- props = _objectWithoutPropertiesLoose(_ref, _excluded$N);
14805
+ props = _objectWithoutPropertiesLoose(_ref, _excluded$P);
13994
14806
  var {
13995
14807
  isOpen,
13996
14808
  setIsOpen,
@@ -14188,7 +15000,7 @@
14188
15000
  return rect;
14189
15001
  };
14190
15002
 
14191
- var _excluded$O = ["children", "views", "asChild"],
15003
+ var _excluded$Q = ["children", "views", "asChild"],
14192
15004
  _excluded2$e = ["children", "views", "side", "align", "sideOffset", "style", "backgroundColor", "borderRadius", "boxShadow", "padding", "minWidth", "maxWidth"];
14193
15005
  // Create context for the HoverCard
14194
15006
  var HoverCardContext = /*#__PURE__*/React.createContext({
@@ -14227,7 +15039,7 @@
14227
15039
  views,
14228
15040
  asChild = false
14229
15041
  } = _ref2,
14230
- props = _objectWithoutPropertiesLoose(_ref2, _excluded$O);
15042
+ props = _objectWithoutPropertiesLoose(_ref2, _excluded$Q);
14231
15043
  var {
14232
15044
  openCard,
14233
15045
  closeCard,
@@ -14314,7 +15126,7 @@
14314
15126
  }, views == null ? void 0 : views.container, props), children);
14315
15127
  };
14316
15128
 
14317
- var _excluded$P = ["children", "views", "openDelay", "closeDelay"];
15129
+ var _excluded$R = ["children", "views", "openDelay", "closeDelay"];
14318
15130
  /**
14319
15131
  * HoverCard component displays floating content when hovering over a trigger element.
14320
15132
  * Supports configurable open and close delays for a smoother user experience.
@@ -14326,7 +15138,7 @@
14326
15138
  openDelay,
14327
15139
  closeDelay
14328
15140
  } = _ref,
14329
- props = _objectWithoutPropertiesLoose(_ref, _excluded$P);
15141
+ props = _objectWithoutPropertiesLoose(_ref, _excluded$R);
14330
15142
  var hoverCardState = useHoverCardState({
14331
15143
  openDelay,
14332
15144
  closeDelay
@@ -14456,7 +15268,7 @@
14456
15268
  };
14457
15269
  };
14458
15270
 
14459
- var _excluded$Q = ["children", "orientation", "size", "variant", "views"];
15271
+ var _excluded$S = ["children", "orientation", "size", "variant", "views"];
14460
15272
  // Create context for the Menubar
14461
15273
  var MenubarContext = /*#__PURE__*/React.createContext({
14462
15274
  activeMenuId: null,
@@ -14490,7 +15302,7 @@
14490
15302
  variant = 'default',
14491
15303
  views
14492
15304
  } = _ref2,
14493
- props = _objectWithoutPropertiesLoose(_ref2, _excluded$Q);
15305
+ props = _objectWithoutPropertiesLoose(_ref2, _excluded$S);
14494
15306
  var Container = orientation === 'horizontal' ? appStudio.Horizontal : appStudio.Vertical;
14495
15307
  return /*#__PURE__*/React__default.createElement(Container, Object.assign({
14496
15308
  role: "menubar",
@@ -14676,7 +15488,7 @@
14676
15488
  })))))));
14677
15489
  };
14678
15490
 
14679
- var _excluded$R = ["items", "orientation", "size", "variant", "defaultActiveMenuId", "defaultOpenMenuId", "views"];
15491
+ var _excluded$T = ["items", "orientation", "size", "variant", "defaultActiveMenuId", "defaultOpenMenuId", "views"];
14680
15492
  /**
14681
15493
  * Menubar component for creating horizontal or vertical menu bars with dropdown menus.
14682
15494
  */
@@ -14690,7 +15502,7 @@
14690
15502
  defaultOpenMenuId = null,
14691
15503
  views
14692
15504
  } = _ref,
14693
- props = _objectWithoutPropertiesLoose(_ref, _excluded$R);
15505
+ props = _objectWithoutPropertiesLoose(_ref, _excluded$T);
14694
15506
  var {
14695
15507
  activeMenuId,
14696
15508
  setActiveMenuId,
@@ -14846,7 +15658,7 @@
14846
15658
  }
14847
15659
  };
14848
15660
 
14849
- var _excluded$S = ["currentPage", "totalPages", "onPageChange", "pageSize", "pageSizeOptions", "onPageSizeChange", "showPageSizeSelector", "showPageInfo", "maxPageButtons", "showFirstLastButtons", "size", "variant", "shape", "visiblePageNumbers", "views"];
15661
+ var _excluded$U = ["currentPage", "totalPages", "onPageChange", "pageSize", "pageSizeOptions", "onPageSizeChange", "showPageSizeSelector", "showPageInfo", "maxPageButtons", "showFirstLastButtons", "size", "variant", "shape", "visiblePageNumbers", "views"];
14850
15662
  var PaginationView = _ref => {
14851
15663
  var {
14852
15664
  currentPage,
@@ -14877,7 +15689,7 @@
14877
15689
  visiblePageNumbers,
14878
15690
  views
14879
15691
  } = _ref,
14880
- props = _objectWithoutPropertiesLoose(_ref, _excluded$S);
15692
+ props = _objectWithoutPropertiesLoose(_ref, _excluded$U);
14881
15693
  var handlePageChange = page => {
14882
15694
  if (page < 1 || page > totalPages || page === currentPage) {
14883
15695
  return;
@@ -14996,7 +15808,7 @@
14996
15808
  }, option.label))))));
14997
15809
  };
14998
15810
 
14999
- var _excluded$T = ["currentPage", "totalPages", "onPageChange", "pageSize", "pageSizeOptions", "onPageSizeChange", "showPageSizeSelector", "showPageInfo", "maxPageButtons", "showFirstLastButtons", "size", "variant", "shape", "views"];
15811
+ var _excluded$V = ["currentPage", "totalPages", "onPageChange", "pageSize", "pageSizeOptions", "onPageSizeChange", "showPageSizeSelector", "showPageInfo", "maxPageButtons", "showFirstLastButtons", "size", "variant", "shape", "views"];
15000
15812
  /**
15001
15813
  * Pagination component for navigating through pages of content.
15002
15814
  */
@@ -15017,7 +15829,7 @@
15017
15829
  shape = 'rounded',
15018
15830
  views
15019
15831
  } = _ref,
15020
- props = _objectWithoutPropertiesLoose(_ref, _excluded$T);
15832
+ props = _objectWithoutPropertiesLoose(_ref, _excluded$V);
15021
15833
  var {
15022
15834
  visiblePageNumbers
15023
15835
  } = usePaginationState(currentPage, totalPages, maxPageButtons);
@@ -15087,7 +15899,7 @@
15087
15899
  }
15088
15900
  };
15089
15901
 
15090
- var _excluded$U = ["orientation", "variant", "thickness", "color", "spacing", "label", "decorative", "views", "themeMode"];
15902
+ var _excluded$W = ["orientation", "variant", "thickness", "color", "spacing", "label", "decorative", "views", "themeMode"];
15091
15903
  var SeparatorView = _ref => {
15092
15904
  var {
15093
15905
  orientation = 'horizontal',
@@ -15099,7 +15911,7 @@
15099
15911
  decorative = false,
15100
15912
  views
15101
15913
  } = _ref,
15102
- props = _objectWithoutPropertiesLoose(_ref, _excluded$U);
15914
+ props = _objectWithoutPropertiesLoose(_ref, _excluded$W);
15103
15915
  // Access theme if needed for future enhancements
15104
15916
  var {
15105
15917
  themeMode
@@ -15337,7 +16149,7 @@
15337
16149
  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)'
15338
16150
  };
15339
16151
 
15340
- var _excluded$V = ["children", "showToggleButton", "views"],
16152
+ var _excluded$X = ["children", "showToggleButton", "views"],
15341
16153
  _excluded2$f = ["children", "views"],
15342
16154
  _excluded3$a = ["children", "views"],
15343
16155
  _excluded4$9 = ["children", "position", "size", "variant", "fixed", "hasBackdrop", "expandedWidth", "collapsedWidth", "breakpointBehavior", "elevation", "transitionPreset", "ariaLabel", "isExpanded", "isMobile", "collapse", "views", "themeMode"];
@@ -15370,7 +16182,7 @@
15370
16182
  showToggleButton = true,
15371
16183
  views
15372
16184
  } = _ref2,
15373
- props = _objectWithoutPropertiesLoose(_ref2, _excluded$V);
16185
+ props = _objectWithoutPropertiesLoose(_ref2, _excluded$X);
15374
16186
  var {
15375
16187
  isExpanded,
15376
16188
  toggleExpanded,
@@ -15525,7 +16337,7 @@
15525
16337
  }))));
15526
16338
  };
15527
16339
 
15528
- var _excluded$W = ["children", "position", "size", "variant", "defaultExpanded", "expanded", "onExpandedChange", "fixed", "hasBackdrop", "showToggleButton", "expandedWidth", "collapsedWidth", "breakpoint", "breakpointBehavior", "views"];
16340
+ var _excluded$Y = ["children", "position", "size", "variant", "defaultExpanded", "expanded", "onExpandedChange", "fixed", "hasBackdrop", "showToggleButton", "expandedWidth", "collapsedWidth", "breakpoint", "breakpointBehavior", "views"];
15529
16341
  /**
15530
16342
  * Sidebar component for creating collapsible, themeable and customizable sidebars.
15531
16343
  */
@@ -15547,7 +16359,7 @@
15547
16359
  breakpointBehavior = 'overlay',
15548
16360
  views
15549
16361
  } = _ref,
15550
- props = _objectWithoutPropertiesLoose(_ref, _excluded$W);
16362
+ props = _objectWithoutPropertiesLoose(_ref, _excluded$Y);
15551
16363
  var {
15552
16364
  isExpanded,
15553
16365
  toggleExpanded,
@@ -16012,7 +16824,7 @@
16012
16824
  }
16013
16825
  };
16014
16826
 
16015
- var _excluded$X = ["children", "id", "defaultSize", "minSize", "maxSize", "collapsible", "defaultCollapsed", "onCollapseChange", "views"],
16827
+ var _excluded$Z = ["children", "id", "defaultSize", "minSize", "maxSize", "collapsible", "defaultCollapsed", "onCollapseChange", "views"],
16016
16828
  _excluded2$g = ["id", "position", "disabled", "withVisualIndicator", "withCollapseButton", "collapseTarget", "views"],
16017
16829
  _excluded3$b = ["children", "orientation", "size", "variant", "defaultSizes", "minSize", "maxSize", "collapsible", "containerRef", "autoSaveId", "views"];
16018
16830
  // Create context for the Resizable component
@@ -16057,7 +16869,7 @@
16057
16869
  onCollapseChange,
16058
16870
  views
16059
16871
  } = _ref2,
16060
- props = _objectWithoutPropertiesLoose(_ref2, _excluded$X);
16872
+ props = _objectWithoutPropertiesLoose(_ref2, _excluded$Z);
16061
16873
  var {
16062
16874
  orientation,
16063
16875
  registerPanel,
@@ -16272,7 +17084,7 @@
16272
17084
  }, ResizableOrientations[orientation], views == null ? void 0 : views.container, props), children);
16273
17085
  };
16274
17086
 
16275
- var _excluded$Y = ["children", "orientation", "size", "variant", "defaultSizes", "onSizesChange", "minSize", "maxSize", "collapsible", "autoSaveId", "storage", "keyboardResizeBy", "views"];
17087
+ var _excluded$_ = ["children", "orientation", "size", "variant", "defaultSizes", "onSizesChange", "minSize", "maxSize", "collapsible", "autoSaveId", "storage", "keyboardResizeBy", "views"];
16276
17088
  /**
16277
17089
  * Resizable component for creating resizable panel groups and layouts.
16278
17090
  */
@@ -16292,7 +17104,7 @@
16292
17104
  keyboardResizeBy = 10,
16293
17105
  views
16294
17106
  } = _ref,
16295
- props = _objectWithoutPropertiesLoose(_ref, _excluded$Y);
17107
+ props = _objectWithoutPropertiesLoose(_ref, _excluded$_);
16296
17108
  var {
16297
17109
  isResizing,
16298
17110
  setIsResizing,
@@ -17060,7 +17872,7 @@
17060
17872
  color: 'color.gray.500'
17061
17873
  };
17062
17874
 
17063
- var _excluded$Z = ["value", "onValueChange", "placeholder", "views"],
17875
+ var _excluded$$ = ["value", "onValueChange", "placeholder", "views"],
17064
17876
  _excluded2$h = ["children", "views"],
17065
17877
  _excluded3$c = ["heading", "children", "views"],
17066
17878
  _excluded4$a = ["item", "selected", "onSelect", "views"],
@@ -17092,7 +17904,7 @@
17092
17904
  placeholder = 'Type a command or search...',
17093
17905
  views
17094
17906
  } = _ref2,
17095
- props = _objectWithoutPropertiesLoose(_ref2, _excluded$Z);
17907
+ props = _objectWithoutPropertiesLoose(_ref2, _excluded$$);
17096
17908
  var inputRef = React.useRef(null);
17097
17909
  // Focus input when component mounts
17098
17910
  React__default.useEffect(() => {
@@ -17275,7 +18087,7 @@
17275
18087
  })))), footer && (/*#__PURE__*/React__default.createElement(appStudio.View, Object.assign({}, CommandFooterStyles, views == null ? void 0 : views.footer), footer)))));
17276
18088
  };
17277
18089
 
17278
- var _excluded$_ = ["open", "onOpenChange", "groups", "commands", "placeholder", "size", "variant", "filter", "emptyState", "footer", "views"];
18090
+ var _excluded$10 = ["open", "onOpenChange", "groups", "commands", "placeholder", "size", "variant", "filter", "emptyState", "footer", "views"];
17279
18091
  /**
17280
18092
  * Command component for displaying a command palette with search functionality.
17281
18093
  */
@@ -17293,7 +18105,7 @@
17293
18105
  footer,
17294
18106
  views
17295
18107
  } = _ref,
17296
- props = _objectWithoutPropertiesLoose(_ref, _excluded$_);
18108
+ props = _objectWithoutPropertiesLoose(_ref, _excluded$10);
17297
18109
  var {
17298
18110
  search,
17299
18111
  setSearch,
@@ -17580,7 +18392,7 @@
17580
18392
  }
17581
18393
  };
17582
18394
 
17583
- var _excluded$$ = ["children", "views", "asChild"],
18395
+ var _excluded$11 = ["children", "views", "asChild"],
17584
18396
  _excluded2$i = ["children", "views"],
17585
18397
  _excluded3$d = ["content", "children", "position", "align", "size", "variant", "showArrow", "views", "themeMode"];
17586
18398
  // Create context for the Tooltip
@@ -17616,7 +18428,7 @@
17616
18428
  views,
17617
18429
  asChild = false
17618
18430
  } = _ref2,
17619
- props = _objectWithoutPropertiesLoose(_ref2, _excluded$$);
18431
+ props = _objectWithoutPropertiesLoose(_ref2, _excluded$11);
17620
18432
  var {
17621
18433
  openTooltip,
17622
18434
  closeTooltip,
@@ -17709,7 +18521,7 @@
17709
18521
  }, TooltipSizes[size], TooltipVariants[variant], positionStyles, views == null ? void 0 : views.content), typeof content === 'string' ? (/*#__PURE__*/React__default.createElement(appStudio.Text, Object.assign({}, views == null ? void 0 : views.text), content)) : content, showArrow && /*#__PURE__*/React__default.createElement(appStudio.View, Object.assign({}, arrowStyles, views == null ? void 0 : views.arrow)))));
17710
18522
  };
17711
18523
 
17712
- var _excluded$10 = ["content", "children", "position", "align", "size", "variant", "openDelay", "closeDelay", "showArrow", "defaultOpen", "isDisabled", "views"];
18524
+ var _excluded$12 = ["content", "children", "position", "align", "size", "variant", "openDelay", "closeDelay", "showArrow", "defaultOpen", "isDisabled", "views"];
17713
18525
  /**
17714
18526
  * Tooltip component for displaying additional information when hovering over an element.
17715
18527
  * Supports configurable positions, delays, and styling.
@@ -17729,7 +18541,7 @@
17729
18541
  isDisabled = false,
17730
18542
  views
17731
18543
  } = _ref,
17732
- props = _objectWithoutPropertiesLoose(_ref, _excluded$10);
18544
+ props = _objectWithoutPropertiesLoose(_ref, _excluded$12);
17733
18545
  var tooltipState = useTooltipState({
17734
18546
  defaultOpen,
17735
18547
  openDelay,
@@ -17770,6 +18582,7 @@
17770
18582
  exports.Carousel = Carousel;
17771
18583
  exports.Chart = Chart;
17772
18584
  exports.ChartIcon = ChartIcon;
18585
+ exports.CheckIcon = CheckIcon;
17773
18586
  exports.Checkbox = Checkbox;
17774
18587
  exports.ChevronIcon = ChevronIcon;
17775
18588
  exports.ClockIcon = ClockIcon;
@@ -17779,6 +18592,7 @@
17779
18592
  exports.ComboBox = ComboBox;
17780
18593
  exports.Command = Command;
17781
18594
  exports.ContextMenu = ContextMenu;
18595
+ exports.CookieConsent = CookieConsent;
17782
18596
  exports.CopyIcon = CopyIcon;
17783
18597
  exports.CountryPicker = CountryPicker;
17784
18598
  exports.CropIcon = CropIcon;
@@ -17812,6 +18626,7 @@
17812
18626
  exports.FormikSwitch = FormikSwitch;
17813
18627
  exports.FormikTextArea = FormikTextArea;
17814
18628
  exports.FormikTextField = FormikTextField;
18629
+ exports.GiftIcon = GiftIcon;
17815
18630
  exports.HeartIcon = HeartIcon;
17816
18631
  exports.HelpIcon = HelpIcon;
17817
18632
  exports.HomeIcon = HomeIcon;
@@ -17857,6 +18672,7 @@
17857
18672
  exports.SettingsIcon = SettingsIcon;
17858
18673
  exports.ShapeIcon = ShapeIcon;
17859
18674
  exports.ShareIcon = ShareIcon;
18675
+ exports.ShieldIcon = ShieldIcon;
17860
18676
  exports.Sidebar = Sidebar;
17861
18677
  exports.Slider = Slider;
17862
18678
  exports.SliderIcon = SliderIcon;
@@ -17873,6 +18689,7 @@
17873
18689
  exports.TextIcon = TextIcon;
17874
18690
  exports.ThreadsIcon = ThreadsIcon;
17875
18691
  exports.TickIcon = TickIcon;
18692
+ exports.Title = Title;
17876
18693
  exports.Toast = Toast;
17877
18694
  exports.Toggle = Toggle;
17878
18695
  exports.ToggleGroup = ToggleGroup;