@yr3/ui 1.0.17 → 1.0.19

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/index.js CHANGED
@@ -102,6 +102,20 @@ function getMonthCalendar(year, month, startIndex, selected, props) {
102
102
  currentDay: dayCurrent
103
103
  };
104
104
  }
105
+ function getMonthCalendarProps({ year, years, month, formatMonth, monthsDisabled }) {
106
+ const startIndex = dayjs().year(year).month().valueOf();
107
+ return {
108
+ month: dayjs().set("m", month).format(formatMonth || "MMM"),
109
+ year,
110
+ startIndex,
111
+ years,
112
+ months: Array.from({ length: 12 }, (_, i) => ({
113
+ label: dayjs().month(i).format(formatMonth || "MMM"),
114
+ value: dayjs().month(i).format("MM"),
115
+ disabled: dayjs().year(year).month(i).isAfter(dayjs(), "month") || monthsDisabled && monthsDisabled.includes(i)
116
+ }))
117
+ };
118
+ }
105
119
 
106
120
  // src/utils/color.ts
107
121
  var rgbToHex = (r, g, b) => {
@@ -1382,9 +1396,385 @@ var Drawer = ({ open, anchor = null, onClose, children, propsComponent }) => {
1382
1396
  );
1383
1397
  };
1384
1398
 
1385
- // src/components/Fade/Fade.tsx
1399
+ // src/components/Input/Input.tsx
1386
1400
  import * as React9 from "react";
1401
+
1402
+ // src/components/Label/Label.tsx
1387
1403
  import { jsx as jsx17 } from "react/jsx-runtime";
1404
+ var Label = ({ text: text2, children, className, color = "primary", ui, style }) => {
1405
+ const classes = bem("yr3Label");
1406
+ const classComponent = classes(void 0, { color: `color-${color}` });
1407
+ const classnames = bemMerge(classComponent, className);
1408
+ return /* @__PURE__ */ jsx17(
1409
+ "span",
1410
+ {
1411
+ className: classnames,
1412
+ "data-testid": "yr3Label",
1413
+ style: composeStyles(ui, style),
1414
+ children: text2 ? text2 : children
1415
+ }
1416
+ );
1417
+ };
1418
+
1419
+ // src/components/Input/input.variants.ts
1420
+ var inputVariants = createVariants({
1421
+ base: "yr3Input",
1422
+ variants: {
1423
+ variant: {
1424
+ filled: "yr3Input--filled",
1425
+ outlined: "yr3Input--outlined",
1426
+ base: "yr3Input--base",
1427
+ lined: "yr3Input--lined"
1428
+ },
1429
+ color: {
1430
+ primary: "yr3Input--color-primary",
1431
+ secondary: "yr3Input--color-secondary",
1432
+ success: "yr3Input--color-success",
1433
+ text: "yr3Input--color-text",
1434
+ disabled: "yr3Input--color-disabled",
1435
+ background: "yr3Input--color-background",
1436
+ error: "yr3Input--color-error",
1437
+ warning: "yr3Input--color-warning",
1438
+ info: "yr3Input--color-info",
1439
+ common: "yr3Input--color-common"
1440
+ },
1441
+ size: {
1442
+ auto: "yr3Input--size-auto",
1443
+ full: "yr3Input--size-full"
1444
+ },
1445
+ rounded: {
1446
+ true: "yr3Input--rounded"
1447
+ },
1448
+ disabled: {
1449
+ true: "yr3Input--disabled"
1450
+ },
1451
+ animated: {
1452
+ true: "yr3Input--animated"
1453
+ },
1454
+ label: {
1455
+ true: "yr3Input--label"
1456
+ }
1457
+ }
1458
+ });
1459
+
1460
+ // src/components/Input/Input.tsx
1461
+ import { jsx as jsx18, jsxs as jsxs5 } from "react/jsx-runtime";
1462
+ var initiaPropsComponent = {
1463
+ label: {
1464
+ display: true,
1465
+ ui: {},
1466
+ style: {}
1467
+ },
1468
+ control: {}
1469
+ };
1470
+ var Input = React9.forwardRef(
1471
+ ({
1472
+ label,
1473
+ value,
1474
+ defaultValue,
1475
+ onChange,
1476
+ variant = "outlined",
1477
+ error = "ce un errore",
1478
+ separatorCurrency = ",",
1479
+ ui,
1480
+ style,
1481
+ propsComponent = initiaPropsComponent,
1482
+ pattern = "text",
1483
+ color = "primary",
1484
+ size = "auto",
1485
+ ...props
1486
+ }, ref) => {
1487
+ const [focused, setFocused] = React9.useState(false);
1488
+ const [internalValue, setInternalValue] = React9.useState(defaultValue);
1489
+ const isControlled = value !== void 0;
1490
+ const currentValue = isControlled ? value : internalValue;
1491
+ const isActive = focused || !!currentValue;
1492
+ const checkPattern = (type, value2) => {
1493
+ switch (type) {
1494
+ case "email":
1495
+ return /^[\w.-]+@[\w.-]+\.\w{2,}$/.test(value2);
1496
+ case "phone":
1497
+ return /^\d{10}$/.test(value2);
1498
+ case "number":
1499
+ return /^\d+$/.test(value2);
1500
+ case "currency":
1501
+ if (separatorCurrency === ",") return /^\d+(\,\d{0,2})?$/.test(value2);
1502
+ if (separatorCurrency === ".") return /^\d+(\.\d{0,2})?$/.test(value2);
1503
+ default:
1504
+ return true;
1505
+ }
1506
+ };
1507
+ const handleChange = (e) => {
1508
+ const newValue = e.target.value;
1509
+ if (newValue && !checkPattern(pattern, newValue)) return;
1510
+ if (!isControlled) {
1511
+ setInternalValue(newValue);
1512
+ }
1513
+ onChange?.(e, newValue);
1514
+ };
1515
+ const classes = inputVariants({ color, label: propsComponent?.label?.display });
1516
+ return /* @__PURE__ */ jsxs5(Control, { variant, color, label: propsComponent?.label?.display, ...propsComponent.control, children: [
1517
+ propsComponent?.label?.display && /* @__PURE__ */ jsx18(
1518
+ Label,
1519
+ {
1520
+ text: label || "",
1521
+ className: !!isActive ? "yr3Input--active" : "",
1522
+ color,
1523
+ ...propsComponent.label
1524
+ }
1525
+ ),
1526
+ /* @__PURE__ */ jsx18(
1527
+ "input",
1528
+ {
1529
+ ref,
1530
+ value: currentValue,
1531
+ inputMode: pattern === "currency" ? "numeric" : pattern === "phone" ? "tel" : void 0,
1532
+ autoComplete: "off",
1533
+ type: "text",
1534
+ onChange: handleChange,
1535
+ onFocus: () => setFocused(true),
1536
+ onBlur: () => setFocused(false),
1537
+ className: classes,
1538
+ style: composeStyles(ui, style),
1539
+ ...props,
1540
+ "data-testid": "yr3Input"
1541
+ }
1542
+ )
1543
+ ] });
1544
+ }
1545
+ );
1546
+
1547
+ // src/components/Date/MonthSelector.tsx
1548
+ import * as React10 from "react";
1549
+
1550
+ // src/Icons/IconSearch.tsx
1551
+ import { jsx as jsx19 } from "react/jsx-runtime";
1552
+ var IconSearch = (props) => {
1553
+ return /* @__PURE__ */ jsx19("svg", { width: props.width || "64px", height: props.height || "64px", viewBox: "0 0 24 24", fill: "none", xmlns: "http://www.w3.org/2000/svg", children: /* @__PURE__ */ jsx19(
1554
+ "path",
1555
+ {
1556
+ d: "M15.7955 15.8111L21 21M18 10.5C18 14.6421 14.6421 18 10.5 18C6.35786 18 3 14.6421 3 10.5C3 6.35786 6.35786 3 10.5 3C14.6421 3 18 6.35786 18 10.5Z",
1557
+ stroke: props.stroke || "#fff",
1558
+ strokeWidth: props.strokeWidth || "1.5",
1559
+ strokeLinecap: "round",
1560
+ strokeLinejoin: "round"
1561
+ }
1562
+ ) });
1563
+ };
1564
+
1565
+ // src/Icons/IconDown.tsx
1566
+ import { jsx as jsx20 } from "react/jsx-runtime";
1567
+ var IconDown = (props) => {
1568
+ return /* @__PURE__ */ jsx20("svg", { width: props.width || "64px", height: props.height || "64px", viewBox: "0 0 24 24", fill: "none", xmlns: "http://www.w3.org/2000/svg", "data-testid": "yr3Icons", children: /* @__PURE__ */ jsx20("path", { d: "M7 10L12 15L17 10", stroke: props.stroke || "#fff", strokeWidth: props.strokeWidth || "1.5", strokeLinecap: "round", strokeLinejoin: "round" }) });
1569
+ };
1570
+
1571
+ // src/Icons/IconCalendar.tsx
1572
+ import { jsx as jsx21 } from "react/jsx-runtime";
1573
+ var IconCalendar = (props) => {
1574
+ return /* @__PURE__ */ jsx21("svg", { width: props.width || "24px", height: props.height || "24px", viewBox: "0 0 24 24", fill: "none", xmlns: "http://www.w3.org/2000/svg", children: /* @__PURE__ */ jsx21("path", { stroke: props.stroke, strokeLinecap: "round", strokeLinejoin: "round", d: "M6.75 3v2.25M17.25 3v2.25M3 18.75V7.5a2.25 2.25 0 0 1 2.25-2.25h13.5A2.25 2.25 0 0 1 21 7.5v11.25m-18 0A2.25 2.25 0 0 0 5.25 21h13.5A2.25 2.25 0 0 0 21 18.75m-18 0v-7.5A2.25 2.25 0 0 1 5.25 9h13.5A2.25 2.25 0 0 1 21 11.25v7.5" }) });
1575
+ };
1576
+
1577
+ // src/Icons/IconLeft.tsx
1578
+ import { jsx as jsx22 } from "react/jsx-runtime";
1579
+ var IconLeft = (props) => {
1580
+ return /* @__PURE__ */ jsx22("svg", { width: props.width || "24px", height: props.height || "24px", viewBox: "0 0 24 24", fill: "none", xmlns: "http://www.w3.org/2000/svg", children: /* @__PURE__ */ jsx22("path", { d: "M15 7L10 12L15 17", stroke: props.stroke || "currentColor", strokeWidth: props.strokeWidth || "2", strokeLinecap: "round", strokeLinejoin: "round" }) });
1581
+ };
1582
+
1583
+ // src/components/Date/month.variants.ts
1584
+ var monthSelectorIconVariants = createVariants({
1585
+ base: "yr3MonthSelector--icon",
1586
+ variants: {
1587
+ color: {
1588
+ primary: "yr3MonthSelector--icon-color-primary",
1589
+ secondary: "yr3MonthSelector--icon-color-secondary",
1590
+ success: "yr3MonthSelector--icon-color-success",
1591
+ text: "yr3MonthSelector--icon-color-text",
1592
+ disabled: "yr3MonthSelector--icon-color-disabled",
1593
+ background: "yr3MonthSelector--icon-color-background",
1594
+ error: "yr3MonthSelector--icon-color-error",
1595
+ warning: "yr3MonthSelector--icon-color-warning",
1596
+ info: "yr3MonthSelector--icon-color-info",
1597
+ common: "yr3MonthSelector--icon-color-common"
1598
+ },
1599
+ animated: {
1600
+ true: "yr3MonthSelector--icon-animated"
1601
+ },
1602
+ open: {
1603
+ true: "yr3MonthSelector--icon-open"
1604
+ }
1605
+ }
1606
+ });
1607
+ var monthSelectorContainerVariants = createVariants({
1608
+ base: "yr3MonthSelector--year-options",
1609
+ variants: {
1610
+ color: {
1611
+ primary: "yr3MonthSelector--icon-color-primary",
1612
+ secondary: "yr3MonthSelector--icon-color-secondary",
1613
+ success: "yr3MonthSelector--icon-color-success",
1614
+ text: "yr3MonthSelector--icon-color-text",
1615
+ disabled: "yr3MonthSelector--icon-color-disabled",
1616
+ background: "yr3MonthSelector--icon-color-background",
1617
+ error: "yr3MonthSelector--icon-color-error",
1618
+ warning: "yr3MonthSelector--icon-color-warning",
1619
+ info: "yr3MonthSelector--icon-color-info",
1620
+ common: "yr3MonthSelector--icon-color-common"
1621
+ }
1622
+ }
1623
+ });
1624
+
1625
+ // src/Icons/IconRight.tsx
1626
+ import { jsx as jsx23 } from "react/jsx-runtime";
1627
+ var IconRight = (props) => {
1628
+ return /* @__PURE__ */ jsx23("svg", { width: props.width || "24px", height: props.height || "24px", viewBox: "0 0 24 24", fill: "none", xmlns: "http://www.w3.org/2000/svg", children: /* @__PURE__ */ jsx23(
1629
+ "path",
1630
+ {
1631
+ d: "M9 7L14 12L9 17",
1632
+ stroke: props.stroke || "currentColor",
1633
+ strokeWidth: props.strokeWidth || "2",
1634
+ strokeLinecap: "round",
1635
+ strokeLinejoin: "round"
1636
+ }
1637
+ ) });
1638
+ };
1639
+
1640
+ // src/components/Date/MonthSelector.tsx
1641
+ import { jsx as jsx24, jsxs as jsxs6 } from "react/jsx-runtime";
1642
+ var initialPropsComponent3 = {
1643
+ control: {
1644
+ variant: "outlined",
1645
+ color: "primary",
1646
+ ui: {},
1647
+ style: {}
1648
+ },
1649
+ label: {
1650
+ display: true,
1651
+ color: "primary",
1652
+ ui: {},
1653
+ style: {}
1654
+ },
1655
+ wrapper: {
1656
+ ui: {},
1657
+ style: {}
1658
+ },
1659
+ icon: {
1660
+ color: "primary",
1661
+ style: {},
1662
+ svg: {
1663
+ width: 20,
1664
+ height: 20
1665
+ },
1666
+ component: void 0
1667
+ },
1668
+ text: {
1669
+ variant: "caption",
1670
+ color: "primary",
1671
+ ui: {},
1672
+ style: {},
1673
+ button: {}
1674
+ },
1675
+ container: {
1676
+ color: "primary",
1677
+ ui: {},
1678
+ style: {}
1679
+ }
1680
+ };
1681
+ var MonthSelector = ({ label, year, month, value, defaultValue, propsComponent, years, language, formatMonth = "MMM", monthsDisabled }) => {
1682
+ const [open, setOpen] = React10.useState(false);
1683
+ const [valueState, setValueState] = React10.useState(value || defaultValue || null);
1684
+ const [yearSelected, setYearSelected] = React10.useState(years.findIndex((y) => y === year) || 0);
1685
+ const ref = React10.useRef(null);
1686
+ useClickAway(ref, () => setOpen(false));
1687
+ const properties = mergeDeep(initialPropsComponent3, propsComponent || {});
1688
+ const iconClasses = monthSelectorIconVariants({ color: properties?.icon?.color });
1689
+ const containerClasses = monthSelectorContainerVariants({ color: properties?.container?.color });
1690
+ const data = React10.useMemo(() => getMonthCalendarProps({ year, month, years, language, formatMonth, monthsDisabled }), [year, month, years, language, formatMonth, monthsDisabled]);
1691
+ return /* @__PURE__ */ jsxs6("div", { className: "yr3MonthSelector", ref, children: [
1692
+ /* @__PURE__ */ jsx24(
1693
+ Input,
1694
+ {
1695
+ label,
1696
+ variant: "base",
1697
+ disabled: true,
1698
+ value: valueState || "",
1699
+ propsComponent: {
1700
+ control: properties?.control,
1701
+ label: properties?.label
1702
+ }
1703
+ }
1704
+ ),
1705
+ /* @__PURE__ */ jsx24(
1706
+ "div",
1707
+ {
1708
+ className: iconClasses,
1709
+ style: properties?.icon?.style,
1710
+ onClick: () => setOpen((prev) => !prev),
1711
+ "data-testid": "yr3MonthSelector--icon",
1712
+ children: properties?.icon?.component ? properties?.icon.component : /* @__PURE__ */ jsx24(
1713
+ IconCalendar,
1714
+ {
1715
+ width: properties?.icon?.svg?.width,
1716
+ height: properties?.icon?.svg?.height,
1717
+ stroke: "currentColor",
1718
+ style: properties?.icon?.svg
1719
+ }
1720
+ )
1721
+ }
1722
+ ),
1723
+ open && /* @__PURE__ */ jsx24(
1724
+ "div",
1725
+ {
1726
+ className: "yr3MonthSelector--wrapper",
1727
+ style: composeStyles(properties?.wrapper?.ui, properties?.wrapper?.style),
1728
+ "data-testid": "yr3MonthSelector--wrapper",
1729
+ children: /* @__PURE__ */ jsxs6("div", { className: "yr3MonthSelector--component", children: [
1730
+ /* @__PURE__ */ jsxs6(
1731
+ "div",
1732
+ {
1733
+ className: containerClasses,
1734
+ style: composeStyles(properties?.container?.ui, properties?.container?.style),
1735
+ children: [
1736
+ /* @__PURE__ */ jsx24("button", { disabled: yearSelected === 0, type: "button", className: `yr3MonthSelector--year-button-back ${yearSelected === 0 ? "yr3MonthSelector--year-button-back--disabled" : ""} `, onClick: () => setYearSelected(yearSelected - 1), children: /* @__PURE__ */ jsx24(IconLeft, { width: 20, height: 20, stroke: "currentColor" }) }),
1737
+ /* @__PURE__ */ jsx24("div", { className: `yr3MonthSelector--year-option`, children: /* @__PURE__ */ jsxs6(Text, { variant: "body1", color: "primary", children: [
1738
+ years[yearSelected],
1739
+ " "
1740
+ ] }) }),
1741
+ /* @__PURE__ */ jsx24(
1742
+ "button",
1743
+ {
1744
+ disabled: yearSelected === years.length - 1,
1745
+ type: "button",
1746
+ className: `yr3MonthSelector--year-button-next ${yearSelected === years.length - 1 ? "yr3MonthSelector--year-button-next--disabled" : ""}`,
1747
+ onClick: () => setYearSelected(yearSelected + 1),
1748
+ children: /* @__PURE__ */ jsx24(IconRight, { width: 20, height: 30, stroke: "currentColor" })
1749
+ }
1750
+ )
1751
+ ]
1752
+ }
1753
+ ),
1754
+ /* @__PURE__ */ jsx24("div", { className: "yr3MonthSelector--months", children: data.months.map((m) => /* @__PURE__ */ jsx24(
1755
+ "button",
1756
+ {
1757
+ type: "button",
1758
+ style: properties?.text?.button,
1759
+ disabled: m.disabled,
1760
+ className: `yr3MonthSelector--month ${m.disabled ? "yr3MonthSelector--month-disabled" : ""}`,
1761
+ onClick: () => {
1762
+ setValueState(`${m.value}-${years[yearSelected]}`);
1763
+ setOpen(false);
1764
+ },
1765
+ children: /* @__PURE__ */ jsx24(Text, { ...properties?.text, weight: m.disabled ? "thin" : "medium", children: m.label })
1766
+ },
1767
+ "month-" + m.value
1768
+ )) })
1769
+ ] })
1770
+ }
1771
+ )
1772
+ ] });
1773
+ };
1774
+
1775
+ // src/components/Fade/Fade.tsx
1776
+ import * as React11 from "react";
1777
+ import { jsx as jsx25 } from "react/jsx-runtime";
1388
1778
  var Fade = ({
1389
1779
  in: inProp,
1390
1780
  children,
@@ -1392,7 +1782,7 @@ var Fade = ({
1392
1782
  onTransitionEnd,
1393
1783
  style
1394
1784
  }) => {
1395
- React9.useEffect(() => {
1785
+ React11.useEffect(() => {
1396
1786
  let timeoutId;
1397
1787
  if (inProp) {
1398
1788
  timeoutId = setTimeout(() => {
@@ -1401,7 +1791,7 @@ var Fade = ({
1401
1791
  }
1402
1792
  return () => clearTimeout(timeoutId);
1403
1793
  }, [inProp, duration, onTransitionEnd]);
1404
- return /* @__PURE__ */ jsx17(
1794
+ return /* @__PURE__ */ jsx25(
1405
1795
  "div",
1406
1796
  {
1407
1797
  className: `yr3Fade ${inProp ? "yr3Fade--in" : ""}`,
@@ -1438,7 +1828,7 @@ var flexVariants = createVariants({
1438
1828
  var flex_variants_default = flexVariants;
1439
1829
 
1440
1830
  // src/components/Flex/Flex.tsx
1441
- import { jsx as jsx18 } from "react/jsx-runtime";
1831
+ import { jsx as jsx26 } from "react/jsx-runtime";
1442
1832
  var Flex = ({
1443
1833
  container = false,
1444
1834
  spacing: spacing2 = 1,
@@ -1453,7 +1843,7 @@ var Flex = ({
1453
1843
  ...props
1454
1844
  }) => {
1455
1845
  const classes = flex_variants_default({ variant, container, center, between, bordered, spacing: spacing2 });
1456
- return /* @__PURE__ */ jsx18(
1846
+ return /* @__PURE__ */ jsx26(
1457
1847
  "div",
1458
1848
  {
1459
1849
  className: classes,
@@ -1466,7 +1856,7 @@ var Flex = ({
1466
1856
  };
1467
1857
 
1468
1858
  // src/components/Grid/Grid.tsx
1469
- import { jsx as jsx19 } from "react/jsx-runtime";
1859
+ import { jsx as jsx27 } from "react/jsx-runtime";
1470
1860
  var Grid = ({
1471
1861
  container = false,
1472
1862
  spacing: spacing2 = 0,
@@ -1499,7 +1889,7 @@ var Grid = ({
1499
1889
  }
1500
1890
  const classes = bem("yr3Grid");
1501
1891
  const className = classes(void 0, { container, [`spacing-${spacing2}`]: center, span: item && `Col-${size}` });
1502
- return /* @__PURE__ */ jsx19(
1892
+ return /* @__PURE__ */ jsx27(
1503
1893
  "div",
1504
1894
  {
1505
1895
  className,
@@ -1512,7 +1902,7 @@ var Grid = ({
1512
1902
  };
1513
1903
 
1514
1904
  // src/components/Group/Group.tsx
1515
- import * as React10 from "react";
1905
+ import * as React12 from "react";
1516
1906
 
1517
1907
  // src/components/Group/group.variants.ts
1518
1908
  var groupVariants = createVariants({
@@ -1543,7 +1933,7 @@ var groupVariants = createVariants({
1543
1933
  });
1544
1934
 
1545
1935
  // src/components/Group/Group.tsx
1546
- import { jsx as jsx20 } from "react/jsx-runtime";
1936
+ import { jsx as jsx28 } from "react/jsx-runtime";
1547
1937
  var initialComponents = (color) => ({
1548
1938
  group: {
1549
1939
  ui: {},
@@ -1576,9 +1966,9 @@ var Group = ({
1576
1966
  initialComponents(type === "rounded" ? "text" : color),
1577
1967
  propsComponent || {}
1578
1968
  );
1579
- const [internalValue, setInternalValue] = React10.useState(null);
1969
+ const [internalValue, setInternalValue] = React12.useState(null);
1580
1970
  const isControlled = value !== void 0;
1581
- React10.useEffect(() => {
1971
+ React12.useEffect(() => {
1582
1972
  if (isControlled) {
1583
1973
  setInternalValue(value);
1584
1974
  }
@@ -1589,7 +1979,7 @@ var Group = ({
1589
1979
  active: !exclude ? Array.isArray(value) ? value.includes(item?.value) : internalValue === item.value : false,
1590
1980
  exclude: exclude && Array.isArray(value) ? !value.includes(item?.value) : ""
1591
1981
  });
1592
- const mappingStyle = React10.useMemo(() => {
1982
+ const mappingStyle = React12.useMemo(() => {
1593
1983
  if (variant !== "filled") return options.map((opt, index) => ({
1594
1984
  ...opt,
1595
1985
  index,
@@ -1620,13 +2010,13 @@ var Group = ({
1620
2010
  }
1621
2011
  }));
1622
2012
  }, [exclude, value, options, type]);
1623
- return /* @__PURE__ */ jsx20(
2013
+ return /* @__PURE__ */ jsx28(
1624
2014
  "div",
1625
2015
  {
1626
2016
  className: groupVariants({ variant, color, type }),
1627
2017
  "data-testid": "yr3Group",
1628
2018
  style: composeStyles(properties.group?.ui, properties.group?.style),
1629
- children: options.map((opt, index) => /* @__PURE__ */ jsx20(
2019
+ children: options.map((opt, index) => /* @__PURE__ */ jsx28(
1630
2020
  "div",
1631
2021
  {
1632
2022
  "data-testid": "yr3Group-item",
@@ -1644,7 +2034,7 @@ var Group = ({
1644
2034
  ...mappingStyle?.find((o) => o.value === opt.value)?.style
1645
2035
  }
1646
2036
  ),
1647
- children: /* @__PURE__ */ jsx20(
2037
+ children: /* @__PURE__ */ jsx28(
1648
2038
  Text,
1649
2039
  {
1650
2040
  ...properties.item?.text,
@@ -1660,14 +2050,14 @@ var Group = ({
1660
2050
  };
1661
2051
 
1662
2052
  // src/components/Image/Image.tsx
1663
- import { jsx as jsx21 } from "react/jsx-runtime";
2053
+ import { jsx as jsx29 } from "react/jsx-runtime";
1664
2054
  var Image = ({
1665
2055
  src,
1666
2056
  alt = "",
1667
2057
  ui,
1668
2058
  style
1669
2059
  }) => {
1670
- return /* @__PURE__ */ jsx21(
2060
+ return /* @__PURE__ */ jsx29(
1671
2061
  "img",
1672
2062
  {
1673
2063
  src,
@@ -1680,9 +2070,9 @@ var Image = ({
1680
2070
  };
1681
2071
 
1682
2072
  // src/components/ImageDropzone/ImageDropzone.tsx
1683
- import * as React11 from "react";
1684
- import { jsx as jsx22, jsxs as jsxs5 } from "react/jsx-runtime";
1685
- var initialPropsComponent3 = {
2073
+ import * as React13 from "react";
2074
+ import { jsx as jsx30, jsxs as jsxs7 } from "react/jsx-runtime";
2075
+ var initialPropsComponent4 = {
1686
2076
  box: {},
1687
2077
  text: {},
1688
2078
  container: {},
@@ -1690,10 +2080,10 @@ var initialPropsComponent3 = {
1690
2080
  content: {}
1691
2081
  };
1692
2082
  var ImageDropzone = ({ onChange, multiple, propsComponent, bordered, component, defaultImage, variant = "outlined" }) => {
1693
- const properties = mergeDeep(initialPropsComponent3, propsComponent || {});
1694
- const [dragging, setDragging] = React11.useState(false);
1695
- const [files, setFiles] = React11.useState([]);
1696
- const inputRef = React11.useRef(null);
2083
+ const properties = mergeDeep(initialPropsComponent4, propsComponent || {});
2084
+ const [dragging, setDragging] = React13.useState(false);
2085
+ const [files, setFiles] = React13.useState([]);
2086
+ const inputRef = React13.useRef(null);
1697
2087
  const handleFiles = (fileList) => {
1698
2088
  if (!fileList) return;
1699
2089
  const newFiles = Array.from(fileList);
@@ -1705,7 +2095,7 @@ var ImageDropzone = ({ onChange, multiple, propsComponent, bordered, component,
1705
2095
  };
1706
2096
  const classes = bem("yr3Dropzone");
1707
2097
  const classComponent = classes(void 0, { "dragging": !!dragging, "bordered": !!bordered, variant });
1708
- return /* @__PURE__ */ jsx22(Box, { as: "div", position: "relative", content: "center", ...properties?.box, children: /* @__PURE__ */ jsxs5(
2098
+ return /* @__PURE__ */ jsx30(Box, { as: "div", position: "relative", content: "center", ...properties?.box, children: /* @__PURE__ */ jsxs7(
1709
2099
  "div",
1710
2100
  {
1711
2101
  className: classComponent,
@@ -1722,7 +2112,7 @@ var ImageDropzone = ({ onChange, multiple, propsComponent, bordered, component,
1722
2112
  onClick: () => inputRef.current?.click(),
1723
2113
  style: composeStyles(properties?.container?.ui, properties?.container?.style),
1724
2114
  children: [
1725
- /* @__PURE__ */ jsx22(
2115
+ /* @__PURE__ */ jsx30(
1726
2116
  "input",
1727
2117
  {
1728
2118
  ref: inputRef,
@@ -1733,166 +2123,18 @@ var ImageDropzone = ({ onChange, multiple, propsComponent, bordered, component,
1733
2123
  onChange: (e) => handleFiles(e.target.files)
1734
2124
  }
1735
2125
  ),
1736
- isEmpty(files) && /* @__PURE__ */ jsx22("div", { className: "yr3Dropzone--content", style: composeStyles(properties?.content?.ui, properties?.content?.style), children: /* @__PURE__ */ jsx22(Text, { variant: "helper", color: "disabled", ...propsComponent?.text, children: propsComponent?.text?.primary || "Drag and drop an image here, or click to select one" }) }),
1737
- multiple && /* @__PURE__ */ jsx22("div", { className: "yr3Dropzone--previews", style: composeStyles(properties?.preview?.ui, properties?.preview?.style), children: files.map((file, i) => /* @__PURE__ */ jsx22("img", { src: URL.createObjectURL(file) }, i)) }),
1738
- !multiple && /* @__PURE__ */ jsx22("div", { className: "yr3Dropzone--preview", style: composeStyles(properties?.preview?.ui, properties?.preview?.style), children: files.map((file, i) => /* @__PURE__ */ jsx22("img", { src: URL.createObjectURL(file) }, i)) }),
1739
- !!defaultImage && /* @__PURE__ */ jsx22("div", { className: "yr3Dropzone--preview", style: composeStyles(properties?.preview?.ui, properties?.preview?.style), children: /* @__PURE__ */ jsx22("img", { src: defaultImage }) }),
2126
+ isEmpty(files) && /* @__PURE__ */ jsx30("div", { className: "yr3Dropzone--content", style: composeStyles(properties?.content?.ui, properties?.content?.style), children: /* @__PURE__ */ jsx30(Text, { variant: "helper", color: "disabled", ...propsComponent?.text, children: propsComponent?.text?.primary || "Drag and drop an image here, or click to select one" }) }),
2127
+ multiple && /* @__PURE__ */ jsx30("div", { className: "yr3Dropzone--previews", style: composeStyles(properties?.preview?.ui, properties?.preview?.style), children: files.map((file, i) => /* @__PURE__ */ jsx30("img", { src: URL.createObjectURL(file) }, i)) }),
2128
+ !multiple && /* @__PURE__ */ jsx30("div", { className: "yr3Dropzone--preview", style: composeStyles(properties?.preview?.ui, properties?.preview?.style), children: files.map((file, i) => /* @__PURE__ */ jsx30("img", { src: URL.createObjectURL(file) }, i)) }),
2129
+ !!defaultImage && /* @__PURE__ */ jsx30("div", { className: "yr3Dropzone--preview", style: composeStyles(properties?.preview?.ui, properties?.preview?.style), children: /* @__PURE__ */ jsx30("img", { src: defaultImage }) }),
1740
2130
  component
1741
2131
  ]
1742
2132
  }
1743
2133
  ) });
1744
2134
  };
1745
2135
 
1746
- // src/components/Input/Input.tsx
1747
- import * as React12 from "react";
1748
-
1749
- // src/components/Label/Label.tsx
1750
- import { jsx as jsx23 } from "react/jsx-runtime";
1751
- var Label = ({ text: text2, children, className, color = "primary", ui, style }) => {
1752
- const classes = bem("yr3Label");
1753
- const classComponent = classes(void 0, { color: `color-${color}` });
1754
- const classnames = bemMerge(classComponent, className);
1755
- return /* @__PURE__ */ jsx23(
1756
- "span",
1757
- {
1758
- className: classnames,
1759
- "data-testid": "yr3Label",
1760
- style: composeStyles(ui, style),
1761
- children: text2 ? text2 : children
1762
- }
1763
- );
1764
- };
1765
-
1766
- // src/components/Input/input.variants.ts
1767
- var inputVariants = createVariants({
1768
- base: "yr3Input",
1769
- variants: {
1770
- variant: {
1771
- filled: "yr3Input--filled",
1772
- outlined: "yr3Input--outlined",
1773
- base: "yr3Input--base",
1774
- lined: "yr3Input--lined"
1775
- },
1776
- color: {
1777
- primary: "yr3Input--color-primary",
1778
- secondary: "yr3Input--color-secondary",
1779
- success: "yr3Input--color-success",
1780
- text: "yr3Input--color-text",
1781
- disabled: "yr3Input--color-disabled",
1782
- background: "yr3Input--color-background",
1783
- error: "yr3Input--color-error",
1784
- warning: "yr3Input--color-warning",
1785
- info: "yr3Input--color-info",
1786
- common: "yr3Input--color-common"
1787
- },
1788
- size: {
1789
- auto: "yr3Input--size-auto",
1790
- full: "yr3Input--size-full"
1791
- },
1792
- rounded: {
1793
- true: "yr3Input--rounded"
1794
- },
1795
- disabled: {
1796
- true: "yr3Input--disabled"
1797
- },
1798
- animated: {
1799
- true: "yr3Input--animated"
1800
- },
1801
- label: {
1802
- true: "yr3Input--label"
1803
- }
1804
- }
1805
- });
1806
-
1807
- // src/components/Input/Input.tsx
1808
- import { jsx as jsx24, jsxs as jsxs6 } from "react/jsx-runtime";
1809
- var initiaPropsComponent = {
1810
- label: {
1811
- display: true,
1812
- ui: {},
1813
- style: {}
1814
- },
1815
- control: {}
1816
- };
1817
- var Input = React12.forwardRef(
1818
- ({
1819
- label,
1820
- value,
1821
- defaultValue,
1822
- onChange,
1823
- variant = "outlined",
1824
- error = "ce un errore",
1825
- separatorCurrency = ",",
1826
- ui,
1827
- style,
1828
- propsComponent = initiaPropsComponent,
1829
- pattern = "text",
1830
- color = "primary",
1831
- size = "auto",
1832
- ...props
1833
- }, ref) => {
1834
- const [focused, setFocused] = React12.useState(false);
1835
- const [internalValue, setInternalValue] = React12.useState(defaultValue);
1836
- const isControlled = value !== void 0;
1837
- const currentValue = isControlled ? value : internalValue;
1838
- const isActive = focused || !!currentValue;
1839
- const checkPattern = (type, value2) => {
1840
- switch (type) {
1841
- case "email":
1842
- return /^[\w.-]+@[\w.-]+\.\w{2,}$/.test(value2);
1843
- case "phone":
1844
- return /^\d{10}$/.test(value2);
1845
- case "number":
1846
- return /^\d+$/.test(value2);
1847
- case "currency":
1848
- if (separatorCurrency === ",") return /^\d+(\,\d{0,2})?$/.test(value2);
1849
- if (separatorCurrency === ".") return /^\d+(\.\d{0,2})?$/.test(value2);
1850
- default:
1851
- return true;
1852
- }
1853
- };
1854
- const handleChange = (e) => {
1855
- const newValue = e.target.value;
1856
- if (newValue && !checkPattern(pattern, newValue)) return;
1857
- if (!isControlled) {
1858
- setInternalValue(newValue);
1859
- }
1860
- onChange?.(e, newValue);
1861
- };
1862
- const classes = inputVariants({ color, label: propsComponent?.label?.display });
1863
- return /* @__PURE__ */ jsxs6(Control, { variant, color, label: propsComponent?.label?.display, ...propsComponent.control, children: [
1864
- propsComponent?.label?.display && /* @__PURE__ */ jsx24(
1865
- Label,
1866
- {
1867
- text: label || "",
1868
- className: !!isActive ? "yr3Input--active" : "",
1869
- color,
1870
- ...propsComponent.label
1871
- }
1872
- ),
1873
- /* @__PURE__ */ jsx24(
1874
- "input",
1875
- {
1876
- ref,
1877
- value: currentValue,
1878
- inputMode: pattern === "currency" ? "numeric" : pattern === "phone" ? "tel" : void 0,
1879
- autoComplete: "off",
1880
- type: "text",
1881
- onChange: handleChange,
1882
- onFocus: () => setFocused(true),
1883
- onBlur: () => setFocused(false),
1884
- className: classes,
1885
- style: composeStyles(ui, style),
1886
- ...props,
1887
- "data-testid": "yr3Input"
1888
- }
1889
- )
1890
- ] });
1891
- }
1892
- );
1893
-
1894
2136
  // src/components/InputArea/InputArea.tsx
1895
- import * as React13 from "react";
2137
+ import * as React14 from "react";
1896
2138
 
1897
2139
  // src/components/InputArea/inputAreaVariants.ts
1898
2140
  var inputAreaVariants = createVariants({
@@ -1933,7 +2175,7 @@ var inputAreaVariants = createVariants({
1933
2175
  });
1934
2176
 
1935
2177
  // src/components/InputArea/InputArea.tsx
1936
- import { jsx as jsx25, jsxs as jsxs7 } from "react/jsx-runtime";
2178
+ import { jsx as jsx31, jsxs as jsxs8 } from "react/jsx-runtime";
1937
2179
  var initiaPropsComponent2 = {
1938
2180
  label: {
1939
2181
  display: true,
@@ -1958,8 +2200,8 @@ var InputArea = ({
1958
2200
  rounded = false,
1959
2201
  propsComponent = initiaPropsComponent2
1960
2202
  }) => {
1961
- const ref = React13.useRef(null);
1962
- const [internalValue, setInternalValue] = React13.useState(defaultValue);
2203
+ const ref = React14.useRef(null);
2204
+ const [internalValue, setInternalValue] = React14.useState(defaultValue);
1963
2205
  const isControlled = value !== void 0;
1964
2206
  const currentValue = isControlled ? value : internalValue;
1965
2207
  const handleChange = (e) => {
@@ -1976,8 +2218,8 @@ var InputArea = ({
1976
2218
  el.style.resize = resize;
1977
2219
  }
1978
2220
  const classes = inputAreaVariants({ variant, color, rounded });
1979
- return /* @__PURE__ */ jsxs7("div", { style: { position: "relative" }, children: [
1980
- propsComponent?.label?.display && /* @__PURE__ */ jsx25(
2221
+ return /* @__PURE__ */ jsxs8("div", { style: { position: "relative" }, children: [
2222
+ propsComponent?.label?.display && /* @__PURE__ */ jsx31(
1981
2223
  Label,
1982
2224
  {
1983
2225
  text: label || "",
@@ -1985,7 +2227,7 @@ var InputArea = ({
1985
2227
  ...propsComponent.label
1986
2228
  }
1987
2229
  ),
1988
- /* @__PURE__ */ jsx25(
2230
+ /* @__PURE__ */ jsx31(
1989
2231
  "textarea",
1990
2232
  {
1991
2233
  className: classes,
@@ -1997,7 +2239,7 @@ var InputArea = ({
1997
2239
  "data-testid": "yr3InputArea"
1998
2240
  }
1999
2241
  ),
2000
- /* @__PURE__ */ jsx25(Text, { variant: "helper", color: currentValue.length > maxLength ? "error" : "disabled", ui: { textAlign: "right" }, "data-testid": "yr3InputAreaError", children: validate && maxLength ? `${currentValue.length}/${maxLength}` || propsComponent.helperText : "" })
2242
+ /* @__PURE__ */ jsx31(Text, { variant: "helper", color: currentValue.length > maxLength ? "error" : "disabled", ui: { textAlign: "right" }, "data-testid": "yr3InputAreaError", children: validate && maxLength ? `${currentValue.length}/${maxLength}` || propsComponent.helperText : "" })
2001
2243
  ] });
2002
2244
  };
2003
2245
 
@@ -2031,8 +2273,8 @@ var loaderSpinnerVariants = createVariants({
2031
2273
  });
2032
2274
 
2033
2275
  // src/components/Loader/Loader.tsx
2034
- import * as React14 from "react";
2035
- import { jsx as jsx26, jsxs as jsxs8 } from "react/jsx-runtime";
2276
+ import * as React15 from "react";
2277
+ import { jsx as jsx32, jsxs as jsxs9 } from "react/jsx-runtime";
2036
2278
  var initialComponents2 = {
2037
2279
  loader: {
2038
2280
  ui: {},
@@ -2060,29 +2302,29 @@ var Loader = ({ component, loading = false, propsComponent }) => {
2060
2302
  size: properties?.spinner?.size
2061
2303
  });
2062
2304
  if (!loading) return null;
2063
- return /* @__PURE__ */ jsx26("div", { className: "yr3Loader", style: composeStyles(properties?.loader?.ui, properties?.loader?.style), children: /* @__PURE__ */ jsx26(Flex, { ...properties?.container, children: component || /* @__PURE__ */ jsx26("div", { className: classSpinner, children: properties?.spinner?.type === "dots" && /* @__PURE__ */ jsxs8(React14.Fragment, { children: [
2064
- /* @__PURE__ */ jsx26("span", {}),
2065
- /* @__PURE__ */ jsx26("span", {}),
2066
- /* @__PURE__ */ jsx26("span", {})
2305
+ return /* @__PURE__ */ jsx32("div", { className: "yr3Loader", style: composeStyles(properties?.loader?.ui, properties?.loader?.style), children: /* @__PURE__ */ jsx32(Flex, { ...properties?.container, children: component || /* @__PURE__ */ jsx32("div", { className: classSpinner, children: properties?.spinner?.type === "dots" && /* @__PURE__ */ jsxs9(React15.Fragment, { children: [
2306
+ /* @__PURE__ */ jsx32("span", {}),
2307
+ /* @__PURE__ */ jsx32("span", {}),
2308
+ /* @__PURE__ */ jsx32("span", {})
2067
2309
  ] }) }) }) });
2068
2310
  };
2069
2311
 
2070
2312
  // src/components/Modal/Modal.tsx
2071
- import * as React15 from "react";
2313
+ import * as React16 from "react";
2072
2314
 
2073
2315
  // src/components/Modal/ModalContainer.tsx
2074
- import { jsx as jsx27 } from "react/jsx-runtime";
2316
+ import { jsx as jsx33 } from "react/jsx-runtime";
2075
2317
  var ModalContainer = ({ children, size = "sm", ui, style }) => {
2076
2318
  const classes = bem("yr3Modal-container");
2077
2319
  const classComponent = classes(void 0, { [`${size}`]: !!size });
2078
- return /* @__PURE__ */ jsx27("div", { className: classComponent, style: composeStyles(ui, style), "data-testid": "yr3Modal-container", children });
2320
+ return /* @__PURE__ */ jsx33("div", { className: classComponent, style: composeStyles(ui, style), "data-testid": "yr3Modal-container", children });
2079
2321
  };
2080
2322
 
2081
2323
  // src/components/Modal/Modal.tsx
2082
- import { jsx as jsx28, jsxs as jsxs9 } from "react/jsx-runtime";
2324
+ import { jsx as jsx34, jsxs as jsxs10 } from "react/jsx-runtime";
2083
2325
  var Modal = ({ open, onClose, children, propsComponent }) => {
2084
2326
  const { show, hide } = useBackdrop();
2085
- React15.useEffect(() => {
2327
+ React16.useEffect(() => {
2086
2328
  if (open) {
2087
2329
  show("modal");
2088
2330
  } else {
@@ -2091,9 +2333,9 @@ var Modal = ({ open, onClose, children, propsComponent }) => {
2091
2333
  }, [open]);
2092
2334
  const classes = bem("yr3Modal");
2093
2335
  const classComponent = classes(void 0, { "open": !!open });
2094
- return /* @__PURE__ */ jsx28("div", { className: classComponent, onClick: (e) => e.stopPropagation(), "data-testid": "yr3Modal", children: /* @__PURE__ */ jsx28(ModalContainer, { ...propsComponent?.container, children: /* @__PURE__ */ jsxs9(Flex, { variant: "column", container: true, center: true, gap: 1, children: [
2336
+ return /* @__PURE__ */ jsx34("div", { className: classComponent, onClick: (e) => e.stopPropagation(), "data-testid": "yr3Modal", children: /* @__PURE__ */ jsx34(ModalContainer, { ...propsComponent?.container, children: /* @__PURE__ */ jsxs10(Flex, { variant: "column", container: true, center: true, gap: 1, children: [
2095
2337
  children,
2096
- propsComponent?.close ? propsComponent.close : /* @__PURE__ */ jsx28(Button, { variant: "filled", color: "secondary", onClick: onClose, "data-testid": "yr3Modal-close", children: "Close" })
2338
+ propsComponent?.close ? propsComponent.close : /* @__PURE__ */ jsx34(Button, { variant: "filled", color: "secondary", onClick: onClose, "data-testid": "yr3Modal-close", children: "Close" })
2097
2339
  ] }) }) });
2098
2340
  };
2099
2341
 
@@ -2133,15 +2375,15 @@ var notistackVariants = createVariants({
2133
2375
  });
2134
2376
 
2135
2377
  // src/components/Notistack/Notistack.tsx
2136
- import { jsx as jsx29, jsxs as jsxs10 } from "react/jsx-runtime";
2378
+ import { jsx as jsx35, jsxs as jsxs11 } from "react/jsx-runtime";
2137
2379
  var Notistack = ({ message, duration = 3e3, variant = "info", color, propsComponent, anchor, exiting = false }) => {
2138
2380
  const classes = notistackVariants({ type: variant, color, exiting, direction: `${anchor?.vertical || "bottom"}-${anchor?.horizontal || "right"}` });
2139
2381
  const containerStyle = composeStyles(propsComponent?.container?.ui, propsComponent?.container?.style);
2140
2382
  const notistackStyle = composeStyles(propsComponent?.notistack?.ui, propsComponent?.notistack?.style);
2141
2383
  const progressStyle = composeStyles(propsComponent?.progress?.ui, propsComponent?.progress?.style);
2142
- return /* @__PURE__ */ jsxs10("div", { className: classes, "data-testid": "yr3Notistack", style: notistackStyle, children: [
2143
- /* @__PURE__ */ jsx29("span", { style: containerStyle, children: message }),
2144
- /* @__PURE__ */ jsx29(
2384
+ return /* @__PURE__ */ jsxs11("div", { className: classes, "data-testid": "yr3Notistack", style: notistackStyle, children: [
2385
+ /* @__PURE__ */ jsx35("span", { style: containerStyle, children: message }),
2386
+ /* @__PURE__ */ jsx35(
2145
2387
  "div",
2146
2388
  {
2147
2389
  className: "yr3Notistack--progress",
@@ -2176,7 +2418,7 @@ var pendingVariants = createVariants({
2176
2418
  });
2177
2419
 
2178
2420
  // src/components/Pending/Pending.tsx
2179
- import { jsx as jsx30 } from "react/jsx-runtime";
2421
+ import { jsx as jsx36 } from "react/jsx-runtime";
2180
2422
  var Pending = ({
2181
2423
  variant,
2182
2424
  width,
@@ -2189,7 +2431,7 @@ var Pending = ({
2189
2431
  const widthStyle = variant === "circle" ? size : width;
2190
2432
  const heightStyle = variant === "circle" ? size : height;
2191
2433
  const uiStylePending = uiStyle({ width: widthStyle, height: heightStyle, ...ui });
2192
- return /* @__PURE__ */ jsx30(
2434
+ return /* @__PURE__ */ jsx36(
2193
2435
  "div",
2194
2436
  {
2195
2437
  className: pendingVariants({ variant, color }),
@@ -2200,19 +2442,11 @@ var Pending = ({
2200
2442
  };
2201
2443
 
2202
2444
  // src/components/Phone/Phone.tsx
2203
- import * as React17 from "react";
2204
-
2205
- // src/components/Selector/Selector.tsx
2206
- import * as React16 from "react";
2207
-
2208
- // src/Icons/IconDown.tsx
2209
- import { jsx as jsx31 } from "react/jsx-runtime";
2210
- var IconDown = (props) => {
2211
- return /* @__PURE__ */ jsx31("svg", { width: props.width || "64px", height: props.height || "64px", viewBox: "0 0 24 24", fill: "none", xmlns: "http://www.w3.org/2000/svg", "data-testid": "yr3Icons", children: /* @__PURE__ */ jsx31("path", { d: "M7 10L12 15L17 10", stroke: props.stroke || "#fff", strokeWidth: props.strokeWidth || "1.5", strokeLinecap: "round", strokeLinejoin: "round" }) });
2212
- };
2445
+ import * as React18 from "react";
2213
2446
 
2214
2447
  // src/components/Selector/Selector.tsx
2215
- import { jsx as jsx32, jsxs as jsxs11 } from "react/jsx-runtime";
2448
+ import * as React17 from "react";
2449
+ import { jsx as jsx37, jsxs as jsxs12 } from "react/jsx-runtime";
2216
2450
  var initalPropsComponent2 = {
2217
2451
  text: {
2218
2452
  variant: "caption",
@@ -2225,16 +2459,16 @@ var initalPropsComponent2 = {
2225
2459
  }
2226
2460
  };
2227
2461
  var Selector = ({ ui, style, options, name, value, defaultValue, onChange, iconColor, icon, propsComponent = initalPropsComponent2 }) => {
2228
- const [open, setOpen] = React16.useState(false);
2229
- const [valueState, setValueState] = React16.useState(value || defaultValue || null);
2230
- const ref = React16.useRef(null);
2462
+ const [open, setOpen] = React17.useState(false);
2463
+ const [valueState, setValueState] = React17.useState(value || defaultValue || null);
2464
+ const ref = React17.useRef(null);
2231
2465
  useClickAway(ref, () => setOpen(false));
2232
- return /* @__PURE__ */ jsxs11("div", { className: "yr3Selector-wrapper", ref, children: [
2233
- /* @__PURE__ */ jsx32("div", { className: `yr3Selector ${open ? "yr3Selector--open" : ""}`, style: composeStyles(ui, style), children: /* @__PURE__ */ jsxs11("div", { className: "yr3Selector--control", children: [
2234
- /* @__PURE__ */ jsx32("div", { className: "yr3Selector--icon", onClick: () => setOpen((prev) => !prev), children: icon ? icon : /* @__PURE__ */ jsx32(IconDown, { stroke: `var(--color-${iconColor || "disabled"})`, width: 24, height: 24 }) }),
2466
+ return /* @__PURE__ */ jsxs12("div", { className: "yr3Selector-wrapper", ref, children: [
2467
+ /* @__PURE__ */ jsx37("div", { className: `yr3Selector ${open ? "yr3Selector--open" : ""}`, style: composeStyles(ui, style), children: /* @__PURE__ */ jsxs12("div", { className: "yr3Selector--control", children: [
2468
+ /* @__PURE__ */ jsx37("div", { className: "yr3Selector--icon", onClick: () => setOpen((prev) => !prev), children: icon ? icon : /* @__PURE__ */ jsx37(IconDown, { stroke: `var(--color-${iconColor || "disabled"})`, width: 24, height: 24 }) }),
2235
2469
  valueState
2236
2470
  ] }) }),
2237
- open && /* @__PURE__ */ jsx32("div", { className: "yr3Selector--menu", style: composeStyles(propsComponent.menu?.ui, propsComponent.menu?.style), children: options.map((opt) => /* @__PURE__ */ jsx32(
2471
+ open && /* @__PURE__ */ jsx37("div", { className: "yr3Selector--menu", style: composeStyles(propsComponent.menu?.ui, propsComponent.menu?.style), children: options.map((opt) => /* @__PURE__ */ jsx37(
2238
2472
  "div",
2239
2473
  {
2240
2474
  className: "yr3Selector--option",
@@ -2255,16 +2489,15 @@ var Selector = ({ ui, style, options, name, value, defaultValue, onChange, iconC
2255
2489
  };
2256
2490
  onChange?.(event, opt.value);
2257
2491
  },
2258
- children: /* @__PURE__ */ jsx32(Text, { ...propsComponent?.text, children: propsComponent?.text?.children || opt.label })
2492
+ children: /* @__PURE__ */ jsx37(Text, { ...propsComponent?.text, children: propsComponent?.text?.children || opt.label })
2259
2493
  },
2260
2494
  opt.value
2261
2495
  )) })
2262
2496
  ] });
2263
2497
  };
2264
- var Selector_default = Selector;
2265
2498
 
2266
2499
  // src/components/Phone/Phone.tsx
2267
- import { jsx as jsx33, jsxs as jsxs12 } from "react/jsx-runtime";
2500
+ import { jsx as jsx38, jsxs as jsxs13 } from "react/jsx-runtime";
2268
2501
  var Phone = ({
2269
2502
  name,
2270
2503
  value,
@@ -2276,13 +2509,13 @@ var Phone = ({
2276
2509
  }) => {
2277
2510
  const isControlled = value !== void 0;
2278
2511
  const initial = value || defaultValue || "";
2279
- const [prefix, setPrefix] = React17.useState(
2512
+ const [prefix, setPrefix] = React18.useState(
2280
2513
  getDialPhone(initial, countries) || countries[0].dial
2281
2514
  );
2282
- const [number, setNumber] = React17.useState(
2515
+ const [number, setNumber] = React18.useState(
2283
2516
  getNumberPhone(initial, prefix) || ""
2284
2517
  );
2285
- React17.useEffect(() => {
2518
+ React18.useEffect(() => {
2286
2519
  if (isControlled && value) {
2287
2520
  const dial = getDialPhone(value, countries);
2288
2521
  const num = getNumberPhone(value, dial);
@@ -2301,11 +2534,11 @@ var Phone = ({
2301
2534
  setPrefix(val);
2302
2535
  onChange?.(null, `${val}${number}`);
2303
2536
  };
2304
- return /* @__PURE__ */ jsxs12(Control, { variant: "outlined", ui: { height: 50, position: "relative" }, children: [
2305
- /* @__PURE__ */ jsx33(Label, { text: label, className: "yr3Input--active" }),
2306
- /* @__PURE__ */ jsxs12(Flex, { variant: "row", container: true, center: true, children: [
2307
- /* @__PURE__ */ jsx33(
2308
- Selector_default,
2537
+ return /* @__PURE__ */ jsxs13(Control, { variant: "outlined", ui: { height: 50, position: "relative" }, children: [
2538
+ /* @__PURE__ */ jsx38(Label, { text: label, className: "yr3Input--active" }),
2539
+ /* @__PURE__ */ jsxs13(Flex, { variant: "row", container: true, center: true, children: [
2540
+ /* @__PURE__ */ jsx38(
2541
+ Selector,
2309
2542
  {
2310
2543
  options: countries.map((c) => ({
2311
2544
  value: c.dial,
@@ -2316,7 +2549,7 @@ var Phone = ({
2316
2549
  ...propsComponent?.selector
2317
2550
  }
2318
2551
  ),
2319
- /* @__PURE__ */ jsx33(
2552
+ /* @__PURE__ */ jsx38(
2320
2553
  Divider,
2321
2554
  {
2322
2555
  orientation: "vertical",
@@ -2325,7 +2558,7 @@ var Phone = ({
2325
2558
  ...propsComponent?.divider
2326
2559
  }
2327
2560
  ),
2328
- /* @__PURE__ */ jsx33(
2561
+ /* @__PURE__ */ jsx38(
2329
2562
  Input,
2330
2563
  {
2331
2564
  type: "number",
@@ -2341,9 +2574,9 @@ var Phone = ({
2341
2574
  };
2342
2575
 
2343
2576
  // src/components/Places/PlacesAutocomplete.tsx
2344
- import * as React18 from "react";
2577
+ import * as React19 from "react";
2345
2578
  import { useAutocompletePlaces } from "@yr3/autocomplete-places";
2346
- import { jsx as jsx34, jsxs as jsxs13 } from "react/jsx-runtime";
2579
+ import { jsx as jsx39, jsxs as jsxs14 } from "react/jsx-runtime";
2347
2580
  var initPropsComponent = {
2348
2581
  label: {
2349
2582
  display: true,
@@ -2383,9 +2616,9 @@ var PlacesAutocomplete = ({
2383
2616
  keyApi,
2384
2617
  propsComponent = initPropsComponent
2385
2618
  }) => {
2386
- const [value, setValue] = React18.useState(null);
2387
- const inputRef = React18.useRef(null);
2388
- const [anchorEl, setAnchorEl] = React18.useState(null);
2619
+ const [value, setValue] = React19.useState(null);
2620
+ const inputRef = React19.useRef(null);
2621
+ const [anchorEl, setAnchorEl] = React19.useState(null);
2389
2622
  const { suggestions, selectPlace } = useAutocompletePlaces({ input: value, apiKey: keyApi, language, provider });
2390
2623
  const handleSelect = async (id) => {
2391
2624
  const place = await selectPlace(id);
@@ -2405,12 +2638,12 @@ var PlacesAutocomplete = ({
2405
2638
  setValue(place.address);
2406
2639
  setAnchorEl(null);
2407
2640
  };
2408
- React18.useEffect(() => {
2641
+ React19.useEffect(() => {
2409
2642
  if (defaultLocation) {
2410
2643
  setValue(defaultLocation);
2411
2644
  }
2412
2645
  }, [defaultLocation]);
2413
- React18.useEffect(() => {
2646
+ React19.useEffect(() => {
2414
2647
  if (value === "") {
2415
2648
  onSelect(null);
2416
2649
  }
@@ -2420,13 +2653,13 @@ var PlacesAutocomplete = ({
2420
2653
  setAnchorEl(e.target.value ? inputRef.current : null);
2421
2654
  };
2422
2655
  const open = suggestions.length > 0 && Boolean(anchorEl);
2423
- React18.useEffect(() => {
2656
+ React19.useEffect(() => {
2424
2657
  if (onChangeForm) {
2425
2658
  onChangeForm({ target: { value } });
2426
2659
  }
2427
2660
  }, [onChangeForm]);
2428
- return /* @__PURE__ */ jsxs13(Control, { ...propsComponent?.control, children: [
2429
- /* @__PURE__ */ jsx34(
2661
+ return /* @__PURE__ */ jsxs14(Control, { ...propsComponent?.control, children: [
2662
+ /* @__PURE__ */ jsx39(
2430
2663
  Input,
2431
2664
  {
2432
2665
  ref: inputRef,
@@ -2440,7 +2673,7 @@ var PlacesAutocomplete = ({
2440
2673
  },
2441
2674
  "input-places"
2442
2675
  ),
2443
- open && /* @__PURE__ */ jsx34("div", { className: "yr3Places--menu", style: composeStyles(propsComponent.menu?.ui, propsComponent?.menu?.style), children: /* @__PURE__ */ jsx34(Flex, { container: true, ui: { p: 1 }, children: suggestions.map((s) => /* @__PURE__ */ jsx34(Flex, { onClick: () => handleSelect(s.id), ui: { padding: 8, cursor: "pointer", "&:hover": { backgroundColor: "rgba(0,0,0,0.1)" } }, children: /* @__PURE__ */ jsx34(Text, { ...propsComponent?.menu?.text, children: s.description }) }, s.id)) }) })
2676
+ open && /* @__PURE__ */ jsx39("div", { className: "yr3Places--menu", style: composeStyles(propsComponent.menu?.ui, propsComponent?.menu?.style), children: /* @__PURE__ */ jsx39(Flex, { container: true, ui: { p: 1 }, children: suggestions.map((s) => /* @__PURE__ */ jsx39(Flex, { onClick: () => handleSelect(s.id), ui: { padding: 8, cursor: "pointer", "&:hover": { backgroundColor: "rgba(0,0,0,0.1)" } }, children: /* @__PURE__ */ jsx39(Text, { ...propsComponent?.menu?.text, children: s.description }) }, s.id)) }) })
2444
2677
  ] });
2445
2678
  };
2446
2679
 
@@ -2468,7 +2701,7 @@ var radioVariant = createVariants({
2468
2701
  });
2469
2702
 
2470
2703
  // src/components/Radio/Radio.tsx
2471
- import { jsx as jsx35, jsxs as jsxs14 } from "react/jsx-runtime";
2704
+ import { jsx as jsx40, jsxs as jsxs15 } from "react/jsx-runtime";
2472
2705
  var Radio = ({
2473
2706
  checked,
2474
2707
  value,
@@ -2484,8 +2717,8 @@ var Radio = ({
2484
2717
  const bemClass = bem("yr3Radio");
2485
2718
  const classes = bemClass(void 0, { [color]: `color-${color}` });
2486
2719
  const variantClass = radioVariant({ variant });
2487
- return /* @__PURE__ */ jsxs14("label", { className: classes, "data-testid": "yr3Radio", style: composeStyles(propsComponent?.radio?.ui, propsComponent?.radio?.style), children: [
2488
- /* @__PURE__ */ jsx35(
2720
+ return /* @__PURE__ */ jsxs15("label", { className: classes, "data-testid": "yr3Radio", style: composeStyles(propsComponent?.radio?.ui, propsComponent?.radio?.style), children: [
2721
+ /* @__PURE__ */ jsx40(
2489
2722
  "input",
2490
2723
  {
2491
2724
  type: "radio",
@@ -2497,8 +2730,8 @@ var Radio = ({
2497
2730
  }
2498
2731
  ),
2499
2732
  iconChecked && checked ? iconChecked : !checked && iconUnchecked ? iconUnchecked : null,
2500
- !iconChecked && !iconUnchecked && /* @__PURE__ */ jsx35("span", { className: variantClass, "data-testid": "yr3Radio-dot" }),
2501
- typeof label === "string" && /* @__PURE__ */ jsx35(
2733
+ !iconChecked && !iconUnchecked && /* @__PURE__ */ jsx40("span", { className: variantClass, "data-testid": "yr3Radio-dot" }),
2734
+ typeof label === "string" && /* @__PURE__ */ jsx40(
2502
2735
  "span",
2503
2736
  {
2504
2737
  className: "yr3Radio--label",
@@ -2511,7 +2744,7 @@ var Radio = ({
2511
2744
  };
2512
2745
 
2513
2746
  // src/components/Select/Select.tsx
2514
- import * as React19 from "react";
2747
+ import * as React20 from "react";
2515
2748
 
2516
2749
  // src/components/Select/select.variants.ts
2517
2750
  var selectVariants = createVariants({
@@ -2571,7 +2804,7 @@ var selectIconVariants = createVariants({
2571
2804
  });
2572
2805
 
2573
2806
  // src/components/Select/Select.tsx
2574
- import { jsx as jsx36, jsxs as jsxs15 } from "react/jsx-runtime";
2807
+ import { jsx as jsx41, jsxs as jsxs16 } from "react/jsx-runtime";
2575
2808
  var initiaPropsComponent3 = {
2576
2809
  control: {
2577
2810
  variant: "outlined",
@@ -2611,15 +2844,15 @@ var initiaPropsComponent3 = {
2611
2844
  }
2612
2845
  };
2613
2846
  var Select = ({ label, options, name, value, defaultValue, onChange, propsComponent }) => {
2614
- const [open, setOpen] = React19.useState(false);
2615
- const [valueState, setValueState] = React19.useState(value || defaultValue || null);
2616
- const ref = React19.useRef(null);
2847
+ const [open, setOpen] = React20.useState(false);
2848
+ const [valueState, setValueState] = React20.useState(value || defaultValue || null);
2849
+ const ref = React20.useRef(null);
2617
2850
  useClickAway(ref, () => setOpen(false));
2618
2851
  const properties = mergeDeep(initiaPropsComponent3, propsComponent || {});
2619
2852
  const classesIcon = selectIconVariants({ color: properties?.icon?.color, animated: open, open });
2620
2853
  const classes = selectVariants({ wrapper: true });
2621
- return /* @__PURE__ */ jsxs15("div", { className: classes, ref, children: [
2622
- /* @__PURE__ */ jsx36(
2854
+ return /* @__PURE__ */ jsxs16("div", { className: classes, ref, children: [
2855
+ /* @__PURE__ */ jsx41(
2623
2856
  Input,
2624
2857
  {
2625
2858
  label,
@@ -2632,14 +2865,14 @@ var Select = ({ label, options, name, value, defaultValue, onChange, propsCompon
2632
2865
  }
2633
2866
  }
2634
2867
  ),
2635
- /* @__PURE__ */ jsx36(
2868
+ /* @__PURE__ */ jsx41(
2636
2869
  "div",
2637
2870
  {
2638
2871
  className: classesIcon,
2639
2872
  style: properties?.icon?.style,
2640
2873
  onClick: () => setOpen((prev) => !prev),
2641
2874
  "data-testid": "yr3Select-icon",
2642
- children: properties?.icon?.component ? properties?.icon.component : /* @__PURE__ */ jsx36(
2875
+ children: properties?.icon?.component ? properties?.icon.component : /* @__PURE__ */ jsx41(
2643
2876
  IconDown,
2644
2877
  {
2645
2878
  width: properties?.icon?.style?.width,
@@ -2650,13 +2883,13 @@ var Select = ({ label, options, name, value, defaultValue, onChange, propsCompon
2650
2883
  )
2651
2884
  }
2652
2885
  ),
2653
- open && /* @__PURE__ */ jsx36(
2886
+ open && /* @__PURE__ */ jsx41(
2654
2887
  "div",
2655
2888
  {
2656
2889
  className: "yr3Select--menu",
2657
2890
  style: composeStyles(properties?.menu?.ui, properties?.menu?.style),
2658
2891
  "data-testid": "yr3Select-menu",
2659
- children: options.map((opt) => /* @__PURE__ */ jsx36(
2892
+ children: options.map((opt) => /* @__PURE__ */ jsx41(
2660
2893
  "div",
2661
2894
  {
2662
2895
  className: "yr3Select--option",
@@ -2678,7 +2911,7 @@ var Select = ({ label, options, name, value, defaultValue, onChange, propsCompon
2678
2911
  onChange?.(event, opt.value);
2679
2912
  },
2680
2913
  style: composeStyles(properties?.menu?.options?.ui, properties?.menu?.options?.style),
2681
- children: /* @__PURE__ */ jsx36(Text, { as: "span", variant: "caption", color: properties?.menu?.options?.text?.color || "primary", ...properties?.menu?.options?.text, children: opt.label })
2914
+ children: /* @__PURE__ */ jsx41(Text, { as: "span", variant: "caption", color: properties?.menu?.options?.text?.color || "primary", ...properties?.menu?.options?.text, children: opt.label })
2682
2915
  },
2683
2916
  opt.value
2684
2917
  ))
@@ -2688,9 +2921,9 @@ var Select = ({ label, options, name, value, defaultValue, onChange, propsCompon
2688
2921
  };
2689
2922
 
2690
2923
  // src/components/Slide/Slide.tsx
2691
- import * as React20 from "react";
2692
- import { jsx as jsx37 } from "react/jsx-runtime";
2693
- var initialPropsComponent4 = {
2924
+ import * as React21 from "react";
2925
+ import { jsx as jsx42 } from "react/jsx-runtime";
2926
+ var initialPropsComponent5 = {
2694
2927
  slide: {
2695
2928
  ui: {},
2696
2929
  style: {}
@@ -2705,14 +2938,14 @@ var Slide = ({
2705
2938
  onTransitionEnd,
2706
2939
  propsComponent
2707
2940
  }) => {
2708
- const properties = mergeDeep(initialPropsComponent4, propsComponent || {});
2941
+ const properties = mergeDeep(initialPropsComponent5, propsComponent || {});
2709
2942
  const bemContent = bem("yr3Slide--content");
2710
2943
  const classNameContent = bemContent(void 0, {
2711
2944
  [direction]: true,
2712
2945
  "in": !!inProp,
2713
2946
  "out": !inProp
2714
2947
  });
2715
- React20.useEffect(() => {
2948
+ React21.useEffect(() => {
2716
2949
  let timeoutId;
2717
2950
  if (inProp) {
2718
2951
  timeoutId = setTimeout(() => {
@@ -2722,19 +2955,19 @@ var Slide = ({
2722
2955
  return () => clearTimeout(timeoutId);
2723
2956
  }, [inProp, duration, onTransitionEnd]);
2724
2957
  const uiStyleContent = uiStyle({ ...properties?.slide?.ui, transitionDuration: `${duration}ms` });
2725
- return /* @__PURE__ */ jsx37(
2958
+ return /* @__PURE__ */ jsx42(
2726
2959
  "div",
2727
2960
  {
2728
2961
  className: "yr3Slide",
2729
2962
  style: composeStyles(),
2730
2963
  "data-testid": "yr3Slide",
2731
- children: /* @__PURE__ */ jsx37(
2964
+ children: /* @__PURE__ */ jsx42(
2732
2965
  "div",
2733
2966
  {
2734
2967
  className: classNameContent,
2735
2968
  style: composeStyles(uiStyleContent, properties?.slide?.style || {}),
2736
2969
  "data-testid": "yr3Slide-content",
2737
- children: /* @__PURE__ */ jsx37(Box, { ...properties?.box, "data-testid": "yr3Slide-box", children })
2970
+ children: /* @__PURE__ */ jsx42(Box, { ...properties?.box, "data-testid": "yr3Slide-box", children })
2738
2971
  }
2739
2972
  )
2740
2973
  }
@@ -2742,7 +2975,7 @@ var Slide = ({
2742
2975
  };
2743
2976
 
2744
2977
  // src/components/Switch/Switch.tsx
2745
- import * as React21 from "react";
2978
+ import * as React22 from "react";
2746
2979
 
2747
2980
  // src/components/Switch/switch.variants.ts
2748
2981
  var switchVariants = createVariants({
@@ -2779,7 +3012,7 @@ var switchVariants = createVariants({
2779
3012
  });
2780
3013
 
2781
3014
  // src/components/Switch/Switch.tsx
2782
- import { jsx as jsx38, jsxs as jsxs16 } from "react/jsx-runtime";
3015
+ import { jsx as jsx43, jsxs as jsxs17 } from "react/jsx-runtime";
2783
3016
  var Switch = ({
2784
3017
  checked,
2785
3018
  defaultChecked,
@@ -2791,7 +3024,7 @@ var Switch = ({
2791
3024
  placement = "end",
2792
3025
  propsComponent
2793
3026
  }) => {
2794
- const [internal, setInternal] = React21.useState(defaultChecked || false);
3027
+ const [internal, setInternal] = React22.useState(defaultChecked || false);
2795
3028
  const classname = switchVariants({ colors: color, size, disabled: !!disabled, checked: checked ?? internal, placement });
2796
3029
  const isControlled = checked !== void 0;
2797
3030
  const value = isControlled ? checked : internal;
@@ -2799,13 +3032,13 @@ var Switch = ({
2799
3032
  if (!isControlled) setInternal(e.target.checked);
2800
3033
  onChange?.(e, e.target.checked);
2801
3034
  };
2802
- return /* @__PURE__ */ jsxs16(
3035
+ return /* @__PURE__ */ jsxs17(
2803
3036
  "label",
2804
3037
  {
2805
3038
  className: classname,
2806
3039
  "data-testid": "yr3Switch",
2807
3040
  children: [
2808
- /* @__PURE__ */ jsx38(
3041
+ /* @__PURE__ */ jsx43(
2809
3042
  "input",
2810
3043
  {
2811
3044
  type: "checkbox",
@@ -2814,8 +3047,8 @@ var Switch = ({
2814
3047
  disabled
2815
3048
  }
2816
3049
  ),
2817
- /* @__PURE__ */ jsx38("span", { className: "yr3Switch--track", children: /* @__PURE__ */ jsx38("span", { className: "yr3Switch--thumb" }) }),
2818
- /* @__PURE__ */ jsx38(
3050
+ /* @__PURE__ */ jsx43("span", { className: "yr3Switch--track", children: /* @__PURE__ */ jsx43("span", { className: "yr3Switch--thumb" }) }),
3051
+ /* @__PURE__ */ jsx43(
2819
3052
  "span",
2820
3053
  {
2821
3054
  className: "yr3Switch--label",
@@ -2829,30 +3062,15 @@ var Switch = ({
2829
3062
  );
2830
3063
  };
2831
3064
 
2832
- // src/Icons/IconSearch.tsx
2833
- import { jsx as jsx39 } from "react/jsx-runtime";
2834
- var IconSearch = (props) => {
2835
- return /* @__PURE__ */ jsx39("svg", { width: props.width || "64px", height: props.height || "64px", viewBox: "0 0 24 24", fill: "none", xmlns: "http://www.w3.org/2000/svg", children: /* @__PURE__ */ jsx39(
2836
- "path",
2837
- {
2838
- d: "M15.7955 15.8111L21 21M18 10.5C18 14.6421 14.6421 18 10.5 18C6.35786 18 3 14.6421 3 10.5C3 6.35786 6.35786 3 10.5 3C14.6421 3 18 6.35786 18 10.5Z",
2839
- stroke: props.stroke || "#fff",
2840
- strokeWidth: props.strokeWidth || "1.5",
2841
- strokeLinecap: "round",
2842
- strokeLinejoin: "round"
2843
- }
2844
- ) });
2845
- };
2846
-
2847
3065
  // src/theme/ThemeProvider.tsx
2848
- import * as React23 from "react";
3066
+ import * as React24 from "react";
2849
3067
 
2850
3068
  // src/theme/notistackContext.tsx
2851
- import * as React22 from "react";
2852
- import { jsx as jsx40, jsxs as jsxs17 } from "react/jsx-runtime";
2853
- var NotistackContext = React22.createContext(null);
3069
+ import * as React23 from "react";
3070
+ import { jsx as jsx44, jsxs as jsxs18 } from "react/jsx-runtime";
3071
+ var NotistackContext = React23.createContext(null);
2854
3072
  var NotistackProvider = ({ children }) => {
2855
- const [snacks, setSnacks] = React22.useState([]);
3073
+ const [snacks, setSnacks] = React23.useState([]);
2856
3074
  const notistack = (snack) => {
2857
3075
  const id = Date.now();
2858
3076
  setSnacks((prev) => [...prev, { ...snack, id, exiting: false }]);
@@ -2867,13 +3085,13 @@ var NotistackProvider = ({ children }) => {
2867
3085
  setSnacks((prev) => prev.filter((s) => s.id !== id));
2868
3086
  }, duration + exitDuration);
2869
3087
  };
2870
- return /* @__PURE__ */ jsxs17(NotistackContext.Provider, { value: { notistack }, children: [
3088
+ return /* @__PURE__ */ jsxs18(NotistackContext.Provider, { value: { notistack }, children: [
2871
3089
  children,
2872
- /* @__PURE__ */ jsx40("div", { className: "yr3NotistackContainer", children: snacks.map((snack) => /* @__PURE__ */ jsx40(Notistack, { ...snack }, snack.id)) })
3090
+ /* @__PURE__ */ jsx44("div", { className: "yr3NotistackContainer", children: snacks.map((snack) => /* @__PURE__ */ jsx44(Notistack, { ...snack }, snack.id)) })
2873
3091
  ] });
2874
3092
  };
2875
3093
  var useNotistack = () => {
2876
- const ctx = React22.useContext(NotistackContext);
3094
+ const ctx = React23.useContext(NotistackContext);
2877
3095
  if (!ctx) {
2878
3096
  throw new Error("NotistackProvider missing");
2879
3097
  }
@@ -2881,15 +3099,15 @@ var useNotistack = () => {
2881
3099
  };
2882
3100
 
2883
3101
  // src/theme/ThemeProvider.tsx
2884
- import { jsx as jsx41 } from "react/jsx-runtime";
2885
- var ThemeContext = React23.createContext(null);
3102
+ import { jsx as jsx45 } from "react/jsx-runtime";
3103
+ var ThemeContext = React24.createContext(null);
2886
3104
  var ThemeProvider = ({ theme, children }) => {
2887
- React23.useEffect(() => {
3105
+ React24.useEffect(() => {
2888
3106
  applyTheme(theme);
2889
3107
  }, [theme]);
2890
- return /* @__PURE__ */ jsx41(ThemeContext.Provider, { value: theme, children: /* @__PURE__ */ jsx41(BackdropProvider, { children: /* @__PURE__ */ jsx41(NotistackProvider, { children }) }) });
3108
+ return /* @__PURE__ */ jsx45(ThemeContext.Provider, { value: theme, children: /* @__PURE__ */ jsx45(BackdropProvider, { children: /* @__PURE__ */ jsx45(NotistackProvider, { children }) }) });
2891
3109
  };
2892
- var useTheme = () => React23.useContext(ThemeContext);
3110
+ var useTheme = () => React24.useContext(ThemeContext);
2893
3111
 
2894
3112
  // src/theme/tokens.ts
2895
3113
  var baseTokens = {
@@ -2910,15 +3128,15 @@ var baseTokens = {
2910
3128
  };
2911
3129
 
2912
3130
  // src/theme/useMediaQuery.tsx
2913
- import * as React24 from "react";
3131
+ import * as React25 from "react";
2914
3132
  function useMediaQuery(query) {
2915
3133
  const theme = useTheme();
2916
3134
  const computedQuery = typeof query === "function" ? query(theme) : query;
2917
- const [matches, setMatches] = React24.useState(() => {
3135
+ const [matches, setMatches] = React25.useState(() => {
2918
3136
  if (typeof window === "undefined") return false;
2919
3137
  return window.matchMedia(computedQuery).matches;
2920
3138
  });
2921
- React24.useEffect(() => {
3139
+ React25.useEffect(() => {
2922
3140
  if (typeof window === "undefined") return;
2923
3141
  const media = window.matchMedia(computedQuery);
2924
3142
  const listener = () => setMatches(media.matches);
@@ -2952,7 +3170,7 @@ var usePlaces = ({ input, language, apiKey, provider }) => {
2952
3170
  };
2953
3171
 
2954
3172
  // src/hooks/useBreakpoint.ts
2955
- import * as React25 from "react";
3173
+ import * as React26 from "react";
2956
3174
  var breakUp = (bp) => `(min-width: ${bp}px)`;
2957
3175
  var breakDown = (bp) => `(max-width: ${bp}px)`;
2958
3176
  function useBreakpoint(queryInput) {
@@ -2962,8 +3180,8 @@ function useBreakpoint(queryInput) {
2962
3180
  if (typeof window === "undefined") return false;
2963
3181
  return window.matchMedia(query).matches;
2964
3182
  };
2965
- const [matches, setMatches] = React25.useState(getMatch);
2966
- React25.useEffect(() => {
3183
+ const [matches, setMatches] = React26.useState(getMatch);
3184
+ React26.useEffect(() => {
2967
3185
  if (typeof window === "undefined") return;
2968
3186
  const media = window.matchMedia(query);
2969
3187
  const listener = (e) => {
@@ -3008,8 +3226,10 @@ export {
3008
3226
  Flex,
3009
3227
  Grid,
3010
3228
  Group,
3229
+ IconCalendar,
3011
3230
  IconClose,
3012
3231
  IconDown,
3232
+ IconLeft,
3013
3233
  IconSearch,
3014
3234
  Image,
3015
3235
  ImageDropzone,
@@ -3019,6 +3239,7 @@ export {
3019
3239
  Loader,
3020
3240
  Modal,
3021
3241
  ModalContainer,
3242
+ MonthSelector,
3022
3243
  Notistack,
3023
3244
  NotistackContext,
3024
3245
  NotistackProvider,
@@ -3027,6 +3248,7 @@ export {
3027
3248
  PlacesAutocomplete,
3028
3249
  Radio,
3029
3250
  Select,
3251
+ Selector,
3030
3252
  Slide,
3031
3253
  Switch,
3032
3254
  Text,
@@ -3051,6 +3273,7 @@ export {
3051
3273
  getCountryCodePhone,
3052
3274
  getDialPhone,
3053
3275
  getMonthCalendar,
3276
+ getMonthCalendarProps,
3054
3277
  getNumberPhone,
3055
3278
  hexToRgb,
3056
3279
  initTheme,