@lets-events/react 12.11.2 → 12.11.4

This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
@@ -1,6 +1,6 @@
1
1
 
2
2
 
3
- > @lets-events/react@12.11.2 build
3
+ > @lets-events/react@12.11.4 build
4
4
  > tsup src/index.tsx --format esm,cjs --dts --external react
5
5
 
6
6
  CLI Building entry: src/index.tsx
@@ -10,12 +10,12 @@
10
10
  CLI Target: es6
11
11
  ESM Build start
12
12
  CJS Build start
13
- CJS dist/index.js 438.04 KB
14
- CJS ⚡️ Build success in 304ms
15
- ESM dist/index.mjs 421.97 KB
16
- ESM ⚡️ Build success in 306ms
13
+ CJS dist/index.js 439.40 KB
14
+ CJS ⚡️ Build success in 524ms
15
+ ESM dist/index.mjs 423.28 KB
16
+ ESM ⚡️ Build success in 525ms
17
17
  DTS Build start
18
- DTS ⚡️ Build success in 6512ms
18
+ DTS ⚡️ Build success in 11253ms
19
19
  DTS dist/index.d.mts 411.19 KB
20
20
  DTS dist/index.d.ts 411.19 KB
21
21
  ⠙
package/CHANGELOG.md CHANGED
@@ -1,5 +1,17 @@
1
1
  # @lets-events/react
2
2
 
3
+ ## 12.11.4
4
+
5
+ ### Patch Changes
6
+
7
+ - Drawer height
8
+
9
+ ## 12.11.3
10
+
11
+ ### Patch Changes
12
+
13
+ - mobile calendar
14
+
3
15
  ## 12.11.2
4
16
 
5
17
  ### Patch Changes
package/dist/index.js CHANGED
@@ -7936,6 +7936,27 @@ var CalendarStyled = styled("div", {
7936
7936
  }
7937
7937
  }
7938
7938
  });
7939
+ var calendarMobileCentered = {
7940
+ position: "fixed",
7941
+ top: "50%",
7942
+ left: "50%",
7943
+ right: "auto",
7944
+ bottom: "auto",
7945
+ transform: "translate(-50%, -50%)",
7946
+ maxWidth: "calc(100vw - 32px)",
7947
+ maxHeight: "90vh",
7948
+ overflowY: "auto"
7949
+ };
7950
+ var CalendarOverlayStyled = styled("div", {
7951
+ display: "none",
7952
+ "@media (max-width: 748px)": {
7953
+ display: "block",
7954
+ position: "fixed",
7955
+ inset: 0,
7956
+ backgroundColor: "rgba(0, 0, 0, 0.5)",
7957
+ zIndex: 999998
7958
+ }
7959
+ });
7939
7960
  var CalendarButtonStyled = styled("button", {
7940
7961
  backgroundColor: "transparent",
7941
7962
  border: "none",
@@ -7969,23 +7990,28 @@ var CalendarContentStyled = styled("div", {
7969
7990
  position: "absolute",
7970
7991
  backgroundColor: "$neutral50",
7971
7992
  zIndex: "999999",
7993
+ "@media (max-width: 748px)": calendarMobileCentered,
7972
7994
  variants: {
7973
7995
  position: {
7974
7996
  top: {
7975
7997
  bottom: "110%",
7976
- left: "0"
7998
+ left: "0",
7999
+ "@media (max-width: 748px)": calendarMobileCentered
7977
8000
  },
7978
8001
  bottom: {
7979
8002
  top: "110%",
7980
- left: "0"
8003
+ left: "0",
8004
+ "@media (max-width: 748px)": calendarMobileCentered
7981
8005
  },
7982
8006
  "top-right": {
7983
8007
  bottom: "110%",
7984
- right: "0"
8008
+ right: "0",
8009
+ "@media (max-width: 748px)": calendarMobileCentered
7985
8010
  },
7986
8011
  "bottom-right": {
7987
8012
  top: "110%",
7988
- right: "0"
8013
+ right: "0",
8014
+ "@media (max-width: 748px)": calendarMobileCentered
7989
8015
  }
7990
8016
  }
7991
8017
  }
@@ -8463,60 +8489,63 @@ function Calendar(_a) {
8463
8489
  console.warn("Data inv\xE1lida inserida no input:", masked);
8464
8490
  }
8465
8491
  };
8466
- return /* @__PURE__ */ (0, import_jsx_runtime15.jsx)("div", { children: /* @__PURE__ */ (0, import_jsx_runtime15.jsxs)(CalendarStyled, __spreadProps(__spreadValues({}, props), { expand, ref: dropdownRef, children: [
8467
- /* @__PURE__ */ (0, import_jsx_runtime15.jsx)(
8468
- CalendarButtonStyled,
8469
- {
8470
- expand,
8471
- type: "button",
8472
- onClick: () => setShowCalendar((prev) => !prev),
8473
- children: /* @__PURE__ */ (0, import_jsx_runtime15.jsx)(
8474
- TextField,
8475
- {
8476
- placeholder: "00/00/0000",
8477
- type: "text",
8478
- value: inputValue,
8479
- onChange: handleInputChange,
8480
- inputMode: "numeric",
8481
- textAlign: "right",
8482
- color: hasError ? "error" : "default",
8483
- disabled,
8484
- children: /* @__PURE__ */ (0, import_jsx_runtime15.jsx)(TextFieldSlot, { children: /* @__PURE__ */ (0, import_jsx_runtime15.jsx)(Icon_default, { name: "calendar", size: "xl", color: "#4C4F54" }) })
8485
- }
8486
- )
8487
- }
8488
- ),
8489
- showContainer && /* @__PURE__ */ (0, import_jsx_runtime15.jsxs)(CalendarContentStyled, { position, children: [
8490
- /* @__PURE__ */ (0, import_jsx_runtime15.jsx)(Box, { children: /* @__PURE__ */ (0, import_jsx_runtime15.jsx)(DayPickerWrapperStyled, { children: /* @__PURE__ */ (0, import_jsx_runtime15.jsx)(
8491
- import_react_day_picker.DayPicker,
8492
- {
8493
- mode: "single",
8494
- captionLayout: calendarLayout,
8495
- selected,
8496
- onSelect: setSelected,
8497
- required: true,
8498
- locale: ptBR,
8499
- disabled: disabledDays.length > 0 ? disabledDays : void 0,
8500
- startMonth: allowPastDates ? void 0 : today,
8501
- endMonth: resolvedMaxDate
8502
- }
8503
- ) }) }),
8504
- action && /* @__PURE__ */ (0, import_jsx_runtime15.jsx)(CalendarFooterStyled, { actionAlign, children: /* @__PURE__ */ (0, import_jsx_runtime15.jsx)(
8505
- Button,
8492
+ return /* @__PURE__ */ (0, import_jsx_runtime15.jsxs)("div", { children: [
8493
+ showContainer && /* @__PURE__ */ (0, import_jsx_runtime15.jsx)(CalendarOverlayStyled, { onClick: () => setShowCalendar(false) }),
8494
+ /* @__PURE__ */ (0, import_jsx_runtime15.jsxs)(CalendarStyled, __spreadProps(__spreadValues({}, props), { expand, ref: dropdownRef, children: [
8495
+ /* @__PURE__ */ (0, import_jsx_runtime15.jsx)(
8496
+ CalendarButtonStyled,
8506
8497
  {
8507
- variant: "text",
8508
- color: "brand",
8498
+ expand,
8509
8499
  type: "button",
8510
- onClick: () => {
8511
- setShowCalendar(false);
8512
- },
8513
- size: "medium",
8514
- fontWeight: "medium",
8515
- children: actionText != null ? actionText : "Aplicar"
8500
+ onClick: () => setShowCalendar((prev) => !prev),
8501
+ children: /* @__PURE__ */ (0, import_jsx_runtime15.jsx)(
8502
+ TextField,
8503
+ {
8504
+ placeholder: "00/00/0000",
8505
+ type: "text",
8506
+ value: inputValue,
8507
+ onChange: handleInputChange,
8508
+ inputMode: "numeric",
8509
+ textAlign: "right",
8510
+ color: hasError ? "error" : "default",
8511
+ disabled,
8512
+ children: /* @__PURE__ */ (0, import_jsx_runtime15.jsx)(TextFieldSlot, { children: /* @__PURE__ */ (0, import_jsx_runtime15.jsx)(Icon_default, { name: "calendar", size: "xl", color: "#4C4F54" }) })
8513
+ }
8514
+ )
8516
8515
  }
8517
- ) })
8518
- ] })
8519
- ] })) });
8516
+ ),
8517
+ showContainer && /* @__PURE__ */ (0, import_jsx_runtime15.jsxs)(CalendarContentStyled, { position, children: [
8518
+ /* @__PURE__ */ (0, import_jsx_runtime15.jsx)(Box, { children: /* @__PURE__ */ (0, import_jsx_runtime15.jsx)(DayPickerWrapperStyled, { children: /* @__PURE__ */ (0, import_jsx_runtime15.jsx)(
8519
+ import_react_day_picker.DayPicker,
8520
+ {
8521
+ mode: "single",
8522
+ captionLayout: calendarLayout,
8523
+ selected,
8524
+ onSelect: setSelected,
8525
+ required: true,
8526
+ locale: ptBR,
8527
+ disabled: disabledDays.length > 0 ? disabledDays : void 0,
8528
+ startMonth: allowPastDates ? void 0 : today,
8529
+ endMonth: resolvedMaxDate
8530
+ }
8531
+ ) }) }),
8532
+ action && /* @__PURE__ */ (0, import_jsx_runtime15.jsx)(CalendarFooterStyled, { actionAlign, children: /* @__PURE__ */ (0, import_jsx_runtime15.jsx)(
8533
+ Button,
8534
+ {
8535
+ variant: "text",
8536
+ color: "brand",
8537
+ type: "button",
8538
+ onClick: () => {
8539
+ setShowCalendar(false);
8540
+ },
8541
+ size: "medium",
8542
+ fontWeight: "medium",
8543
+ children: actionText != null ? actionText : "Aplicar"
8544
+ }
8545
+ ) })
8546
+ ] })
8547
+ ] }))
8548
+ ] });
8520
8549
  }
8521
8550
 
8522
8551
  // src/components/DoubleCalendar/index.tsx
@@ -8582,89 +8611,71 @@ function DoubleCalendar(_a) {
8582
8611
  setEndValue("");
8583
8612
  }
8584
8613
  }, [selected]);
8585
- return /* @__PURE__ */ (0, import_jsx_runtime16.jsx)("div", { children: /* @__PURE__ */ (0, import_jsx_runtime16.jsxs)(CalendarStyled, __spreadProps(__spreadValues({}, props), { expand, ref: dropdownRef, children: [
8586
- /* @__PURE__ */ (0, import_jsx_runtime16.jsx)(
8587
- CalendarButtonStyled,
8588
- {
8589
- expand,
8590
- type: "button",
8591
- onClick: () => setShowCalendar((prev) => {
8592
- const next = !prev;
8593
- if (!prev) initialSelectedRef.current = selected;
8594
- return next;
8595
- }),
8596
- disabled,
8597
- children: /* @__PURE__ */ (0, import_jsx_runtime16.jsx)("div", { style: { display: "flex", gap: "8px", width: "100%" }, children: /* @__PURE__ */ (0, import_jsx_runtime16.jsx)(
8598
- TextField,
8599
- {
8600
- placeholder: "00/00/0000 - 00/00/0000",
8601
- type: "text",
8602
- value: `${startValue || "00/00/0000"} - ${endValue || "00/00/0000"}`,
8603
- readOnly: true,
8604
- inputMode: "numeric",
8605
- textAlign: "right",
8606
- color: hasError ? "error" : "default",
8607
- disabled,
8608
- children: /* @__PURE__ */ (0, import_jsx_runtime16.jsx)(TextFieldSlot, { children: /* @__PURE__ */ (0, import_jsx_runtime16.jsx)(Icon_default, { name: "calendar", size: "xl", color: "#4C4F54" }) })
8609
- }
8610
- ) })
8611
- }
8612
- ),
8613
- showContainer && /* @__PURE__ */ (0, import_jsx_runtime16.jsxs)(CalendarContentStyled, { position, children: [
8614
- /* @__PURE__ */ (0, import_jsx_runtime16.jsx)(Box, { children: /* @__PURE__ */ (0, import_jsx_runtime16.jsx)(DayPickerWrapperStyledToDoubleCalendar, { children: /* @__PURE__ */ (0, import_jsx_runtime16.jsx)(
8615
- import_react_day_picker2.DayPicker,
8614
+ return /* @__PURE__ */ (0, import_jsx_runtime16.jsxs)("div", { children: [
8615
+ showContainer && /* @__PURE__ */ (0, import_jsx_runtime16.jsx)(CalendarOverlayStyled, { onClick: () => setShowCalendar(false) }),
8616
+ /* @__PURE__ */ (0, import_jsx_runtime16.jsxs)(CalendarStyled, __spreadProps(__spreadValues({}, props), { expand, ref: dropdownRef, children: [
8617
+ /* @__PURE__ */ (0, import_jsx_runtime16.jsx)(
8618
+ CalendarButtonStyled,
8616
8619
  {
8617
- mode: "range",
8618
- numberOfMonths: 2,
8619
- captionLayout: calendarLayout,
8620
- selected,
8621
- onSelect: setSelected,
8622
- required: true,
8623
- locale: ptBR,
8624
- disabled: disabledDays.length > 0 ? disabledDays : void 0,
8625
- fromMonth: allowPastDates ? void 0 : today,
8626
- toMonth: resolvedMaxDate
8627
- }
8628
- ) }) }),
8629
- action && /* @__PURE__ */ (0, import_jsx_runtime16.jsxs)(CalendarFooterStyled, { children: [
8630
- /* @__PURE__ */ (0, import_jsx_runtime16.jsx)("div", { style: { textAlign: "center", padding: "1rem" }, children: /* @__PURE__ */ (0, import_jsx_runtime16.jsx)("span", { children: `${(selected == null ? void 0 : selected.from) ? format2(selected.from, "dd/MM/yyyy") : "00/00/0000"} \u2014 ${(selected == null ? void 0 : selected.to) ? format2(selected.to, "dd/MM/yyyy") : "00/00/0000"}` }) }),
8631
- /* @__PURE__ */ (0, import_jsx_runtime16.jsx)(
8632
- Button,
8620
+ expand,
8621
+ type: "button",
8622
+ onClick: () => setShowCalendar((prev) => {
8623
+ const next = !prev;
8624
+ if (!prev) initialSelectedRef.current = selected;
8625
+ return next;
8626
+ }),
8627
+ disabled,
8628
+ children: /* @__PURE__ */ (0, import_jsx_runtime16.jsx)("div", { style: { display: "flex", gap: "8px", width: "100%" }, children: /* @__PURE__ */ (0, import_jsx_runtime16.jsx)(
8629
+ TextField,
8630
+ {
8631
+ placeholder: "00/00/0000 - 00/00/0000",
8632
+ type: "text",
8633
+ value: `${startValue || "00/00/0000"} - ${endValue || "00/00/0000"}`,
8634
+ readOnly: true,
8635
+ inputMode: "numeric",
8636
+ textAlign: "right",
8637
+ color: hasError ? "error" : "default",
8638
+ disabled,
8639
+ children: /* @__PURE__ */ (0, import_jsx_runtime16.jsx)(TextFieldSlot, { children: /* @__PURE__ */ (0, import_jsx_runtime16.jsx)(Icon_default, { name: "calendar", size: "xl", color: "#4C4F54" }) })
8640
+ }
8641
+ ) })
8642
+ }
8643
+ ),
8644
+ showContainer && /* @__PURE__ */ (0, import_jsx_runtime16.jsxs)(CalendarContentStyled, { position, children: [
8645
+ /* @__PURE__ */ (0, import_jsx_runtime16.jsx)(Box, { children: /* @__PURE__ */ (0, import_jsx_runtime16.jsx)(DayPickerWrapperStyledToDoubleCalendar, { children: /* @__PURE__ */ (0, import_jsx_runtime16.jsx)(
8646
+ import_react_day_picker2.DayPicker,
8633
8647
  {
8634
- style: { margin: "0 0.5rem" },
8635
- variant: "text",
8636
- color: "neutral",
8637
- type: "button",
8638
- onClick: () => {
8639
- setSelected(initialSelectedRef.current);
8640
- setShowCalendar(false);
8641
- },
8642
- size: "medium",
8643
- fontWeight: "regular",
8644
- children: "Cancelar"
8648
+ mode: "range",
8649
+ numberOfMonths: 2,
8650
+ captionLayout: calendarLayout,
8651
+ selected,
8652
+ onSelect: setSelected,
8653
+ required: true,
8654
+ locale: ptBR,
8655
+ disabled: disabledDays.length > 0 ? disabledDays : void 0,
8656
+ fromMonth: allowPastDates ? void 0 : today,
8657
+ toMonth: resolvedMaxDate
8645
8658
  }
8646
- ),
8647
- /* @__PURE__ */ (0, import_jsx_runtime16.jsx)(
8648
- Button,
8649
- {
8650
- style: { margin: "0 0.5rem" },
8651
- variant: "text",
8652
- color: "brand",
8653
- type: "button",
8654
- onClick: () => {
8655
- setShowCalendar(false);
8656
- },
8657
- size: "medium",
8658
- fontWeight: "medium",
8659
- children: actionText != null ? actionText : "Aplicar"
8660
- }
8661
- )
8662
- ] }),
8663
- simpleAction && /* @__PURE__ */ (0, import_jsx_runtime16.jsx)(CalendarFooterStyled, { children: /* @__PURE__ */ (0, import_jsx_runtime16.jsx)(
8664
- "div",
8665
- {
8666
- style: { display: "flex", justifyContent: "center", padding: "1rem", width: "100%" },
8667
- children: /* @__PURE__ */ (0, import_jsx_runtime16.jsx)(
8659
+ ) }) }),
8660
+ action && /* @__PURE__ */ (0, import_jsx_runtime16.jsxs)(CalendarFooterStyled, { children: [
8661
+ /* @__PURE__ */ (0, import_jsx_runtime16.jsx)("div", { style: { textAlign: "center", padding: "1rem" }, children: /* @__PURE__ */ (0, import_jsx_runtime16.jsx)("span", { children: `${(selected == null ? void 0 : selected.from) ? format2(selected.from, "dd/MM/yyyy") : "00/00/0000"} \u2014 ${(selected == null ? void 0 : selected.to) ? format2(selected.to, "dd/MM/yyyy") : "00/00/0000"}` }) }),
8662
+ /* @__PURE__ */ (0, import_jsx_runtime16.jsx)(
8663
+ Button,
8664
+ {
8665
+ style: { margin: "0 0.5rem" },
8666
+ variant: "text",
8667
+ color: "neutral",
8668
+ type: "button",
8669
+ onClick: () => {
8670
+ setSelected(initialSelectedRef.current);
8671
+ setShowCalendar(false);
8672
+ },
8673
+ size: "medium",
8674
+ fontWeight: "regular",
8675
+ children: "Cancelar"
8676
+ }
8677
+ ),
8678
+ /* @__PURE__ */ (0, import_jsx_runtime16.jsx)(
8668
8679
  Button,
8669
8680
  {
8670
8681
  style: { margin: "0 0.5rem" },
@@ -8679,10 +8690,31 @@ function DoubleCalendar(_a) {
8679
8690
  children: actionText != null ? actionText : "Aplicar"
8680
8691
  }
8681
8692
  )
8682
- }
8683
- ) })
8684
- ] })
8685
- ] })) });
8693
+ ] }),
8694
+ simpleAction && /* @__PURE__ */ (0, import_jsx_runtime16.jsx)(CalendarFooterStyled, { children: /* @__PURE__ */ (0, import_jsx_runtime16.jsx)(
8695
+ "div",
8696
+ {
8697
+ style: { display: "flex", justifyContent: "center", padding: "1rem", width: "100%" },
8698
+ children: /* @__PURE__ */ (0, import_jsx_runtime16.jsx)(
8699
+ Button,
8700
+ {
8701
+ style: { margin: "0 0.5rem" },
8702
+ variant: "text",
8703
+ color: "brand",
8704
+ type: "button",
8705
+ onClick: () => {
8706
+ setShowCalendar(false);
8707
+ },
8708
+ size: "medium",
8709
+ fontWeight: "medium",
8710
+ children: actionText != null ? actionText : "Aplicar"
8711
+ }
8712
+ )
8713
+ }
8714
+ ) })
8715
+ ] })
8716
+ ] }))
8717
+ ] });
8686
8718
  }
8687
8719
 
8688
8720
  // src/components/Drawer/index.tsx
@@ -8714,6 +8746,7 @@ var DrawerWrapper = styled("div", {
8714
8746
  top: 0,
8715
8747
  right: 0,
8716
8748
  height: "100dvh",
8749
+ minHeight: "100vh",
8717
8750
  overflow: "hidden",
8718
8751
  variants: {
8719
8752
  open: {
@@ -8729,6 +8762,7 @@ var DrawerContainerStyled = styled("div", {
8729
8762
  top: 0,
8730
8763
  right: 0,
8731
8764
  height: "100dvh",
8765
+ minHeight: "100vh",
8732
8766
  background: "$neutral50",
8733
8767
  display: "flex",
8734
8768
  flexDirection: "column",
package/dist/index.mjs CHANGED
@@ -7819,6 +7819,27 @@ var CalendarStyled = styled("div", {
7819
7819
  }
7820
7820
  }
7821
7821
  });
7822
+ var calendarMobileCentered = {
7823
+ position: "fixed",
7824
+ top: "50%",
7825
+ left: "50%",
7826
+ right: "auto",
7827
+ bottom: "auto",
7828
+ transform: "translate(-50%, -50%)",
7829
+ maxWidth: "calc(100vw - 32px)",
7830
+ maxHeight: "90vh",
7831
+ overflowY: "auto"
7832
+ };
7833
+ var CalendarOverlayStyled = styled("div", {
7834
+ display: "none",
7835
+ "@media (max-width: 748px)": {
7836
+ display: "block",
7837
+ position: "fixed",
7838
+ inset: 0,
7839
+ backgroundColor: "rgba(0, 0, 0, 0.5)",
7840
+ zIndex: 999998
7841
+ }
7842
+ });
7822
7843
  var CalendarButtonStyled = styled("button", {
7823
7844
  backgroundColor: "transparent",
7824
7845
  border: "none",
@@ -7852,23 +7873,28 @@ var CalendarContentStyled = styled("div", {
7852
7873
  position: "absolute",
7853
7874
  backgroundColor: "$neutral50",
7854
7875
  zIndex: "999999",
7876
+ "@media (max-width: 748px)": calendarMobileCentered,
7855
7877
  variants: {
7856
7878
  position: {
7857
7879
  top: {
7858
7880
  bottom: "110%",
7859
- left: "0"
7881
+ left: "0",
7882
+ "@media (max-width: 748px)": calendarMobileCentered
7860
7883
  },
7861
7884
  bottom: {
7862
7885
  top: "110%",
7863
- left: "0"
7886
+ left: "0",
7887
+ "@media (max-width: 748px)": calendarMobileCentered
7864
7888
  },
7865
7889
  "top-right": {
7866
7890
  bottom: "110%",
7867
- right: "0"
7891
+ right: "0",
7892
+ "@media (max-width: 748px)": calendarMobileCentered
7868
7893
  },
7869
7894
  "bottom-right": {
7870
7895
  top: "110%",
7871
- right: "0"
7896
+ right: "0",
7897
+ "@media (max-width: 748px)": calendarMobileCentered
7872
7898
  }
7873
7899
  }
7874
7900
  }
@@ -8346,60 +8372,63 @@ function Calendar(_a) {
8346
8372
  console.warn("Data inv\xE1lida inserida no input:", masked);
8347
8373
  }
8348
8374
  };
8349
- return /* @__PURE__ */ jsx15("div", { children: /* @__PURE__ */ jsxs7(CalendarStyled, __spreadProps(__spreadValues({}, props), { expand, ref: dropdownRef, children: [
8350
- /* @__PURE__ */ jsx15(
8351
- CalendarButtonStyled,
8352
- {
8353
- expand,
8354
- type: "button",
8355
- onClick: () => setShowCalendar((prev) => !prev),
8356
- children: /* @__PURE__ */ jsx15(
8357
- TextField,
8358
- {
8359
- placeholder: "00/00/0000",
8360
- type: "text",
8361
- value: inputValue,
8362
- onChange: handleInputChange,
8363
- inputMode: "numeric",
8364
- textAlign: "right",
8365
- color: hasError ? "error" : "default",
8366
- disabled,
8367
- children: /* @__PURE__ */ jsx15(TextFieldSlot, { children: /* @__PURE__ */ jsx15(Icon_default, { name: "calendar", size: "xl", color: "#4C4F54" }) })
8368
- }
8369
- )
8370
- }
8371
- ),
8372
- showContainer && /* @__PURE__ */ jsxs7(CalendarContentStyled, { position, children: [
8373
- /* @__PURE__ */ jsx15(Box, { children: /* @__PURE__ */ jsx15(DayPickerWrapperStyled, { children: /* @__PURE__ */ jsx15(
8374
- DayPicker,
8375
- {
8376
- mode: "single",
8377
- captionLayout: calendarLayout,
8378
- selected,
8379
- onSelect: setSelected,
8380
- required: true,
8381
- locale: ptBR,
8382
- disabled: disabledDays.length > 0 ? disabledDays : void 0,
8383
- startMonth: allowPastDates ? void 0 : today,
8384
- endMonth: resolvedMaxDate
8385
- }
8386
- ) }) }),
8387
- action && /* @__PURE__ */ jsx15(CalendarFooterStyled, { actionAlign, children: /* @__PURE__ */ jsx15(
8388
- Button,
8375
+ return /* @__PURE__ */ jsxs7("div", { children: [
8376
+ showContainer && /* @__PURE__ */ jsx15(CalendarOverlayStyled, { onClick: () => setShowCalendar(false) }),
8377
+ /* @__PURE__ */ jsxs7(CalendarStyled, __spreadProps(__spreadValues({}, props), { expand, ref: dropdownRef, children: [
8378
+ /* @__PURE__ */ jsx15(
8379
+ CalendarButtonStyled,
8389
8380
  {
8390
- variant: "text",
8391
- color: "brand",
8381
+ expand,
8392
8382
  type: "button",
8393
- onClick: () => {
8394
- setShowCalendar(false);
8395
- },
8396
- size: "medium",
8397
- fontWeight: "medium",
8398
- children: actionText != null ? actionText : "Aplicar"
8383
+ onClick: () => setShowCalendar((prev) => !prev),
8384
+ children: /* @__PURE__ */ jsx15(
8385
+ TextField,
8386
+ {
8387
+ placeholder: "00/00/0000",
8388
+ type: "text",
8389
+ value: inputValue,
8390
+ onChange: handleInputChange,
8391
+ inputMode: "numeric",
8392
+ textAlign: "right",
8393
+ color: hasError ? "error" : "default",
8394
+ disabled,
8395
+ children: /* @__PURE__ */ jsx15(TextFieldSlot, { children: /* @__PURE__ */ jsx15(Icon_default, { name: "calendar", size: "xl", color: "#4C4F54" }) })
8396
+ }
8397
+ )
8399
8398
  }
8400
- ) })
8401
- ] })
8402
- ] })) });
8399
+ ),
8400
+ showContainer && /* @__PURE__ */ jsxs7(CalendarContentStyled, { position, children: [
8401
+ /* @__PURE__ */ jsx15(Box, { children: /* @__PURE__ */ jsx15(DayPickerWrapperStyled, { children: /* @__PURE__ */ jsx15(
8402
+ DayPicker,
8403
+ {
8404
+ mode: "single",
8405
+ captionLayout: calendarLayout,
8406
+ selected,
8407
+ onSelect: setSelected,
8408
+ required: true,
8409
+ locale: ptBR,
8410
+ disabled: disabledDays.length > 0 ? disabledDays : void 0,
8411
+ startMonth: allowPastDates ? void 0 : today,
8412
+ endMonth: resolvedMaxDate
8413
+ }
8414
+ ) }) }),
8415
+ action && /* @__PURE__ */ jsx15(CalendarFooterStyled, { actionAlign, children: /* @__PURE__ */ jsx15(
8416
+ Button,
8417
+ {
8418
+ variant: "text",
8419
+ color: "brand",
8420
+ type: "button",
8421
+ onClick: () => {
8422
+ setShowCalendar(false);
8423
+ },
8424
+ size: "medium",
8425
+ fontWeight: "medium",
8426
+ children: actionText != null ? actionText : "Aplicar"
8427
+ }
8428
+ ) })
8429
+ ] })
8430
+ ] }))
8431
+ ] });
8403
8432
  }
8404
8433
 
8405
8434
  // src/components/DoubleCalendar/index.tsx
@@ -8465,89 +8494,71 @@ function DoubleCalendar(_a) {
8465
8494
  setEndValue("");
8466
8495
  }
8467
8496
  }, [selected]);
8468
- return /* @__PURE__ */ jsx16("div", { children: /* @__PURE__ */ jsxs8(CalendarStyled, __spreadProps(__spreadValues({}, props), { expand, ref: dropdownRef, children: [
8469
- /* @__PURE__ */ jsx16(
8470
- CalendarButtonStyled,
8471
- {
8472
- expand,
8473
- type: "button",
8474
- onClick: () => setShowCalendar((prev) => {
8475
- const next = !prev;
8476
- if (!prev) initialSelectedRef.current = selected;
8477
- return next;
8478
- }),
8479
- disabled,
8480
- children: /* @__PURE__ */ jsx16("div", { style: { display: "flex", gap: "8px", width: "100%" }, children: /* @__PURE__ */ jsx16(
8481
- TextField,
8482
- {
8483
- placeholder: "00/00/0000 - 00/00/0000",
8484
- type: "text",
8485
- value: `${startValue || "00/00/0000"} - ${endValue || "00/00/0000"}`,
8486
- readOnly: true,
8487
- inputMode: "numeric",
8488
- textAlign: "right",
8489
- color: hasError ? "error" : "default",
8490
- disabled,
8491
- children: /* @__PURE__ */ jsx16(TextFieldSlot, { children: /* @__PURE__ */ jsx16(Icon_default, { name: "calendar", size: "xl", color: "#4C4F54" }) })
8492
- }
8493
- ) })
8494
- }
8495
- ),
8496
- showContainer && /* @__PURE__ */ jsxs8(CalendarContentStyled, { position, children: [
8497
- /* @__PURE__ */ jsx16(Box, { children: /* @__PURE__ */ jsx16(DayPickerWrapperStyledToDoubleCalendar, { children: /* @__PURE__ */ jsx16(
8498
- DayPicker2,
8497
+ return /* @__PURE__ */ jsxs8("div", { children: [
8498
+ showContainer && /* @__PURE__ */ jsx16(CalendarOverlayStyled, { onClick: () => setShowCalendar(false) }),
8499
+ /* @__PURE__ */ jsxs8(CalendarStyled, __spreadProps(__spreadValues({}, props), { expand, ref: dropdownRef, children: [
8500
+ /* @__PURE__ */ jsx16(
8501
+ CalendarButtonStyled,
8499
8502
  {
8500
- mode: "range",
8501
- numberOfMonths: 2,
8502
- captionLayout: calendarLayout,
8503
- selected,
8504
- onSelect: setSelected,
8505
- required: true,
8506
- locale: ptBR,
8507
- disabled: disabledDays.length > 0 ? disabledDays : void 0,
8508
- fromMonth: allowPastDates ? void 0 : today,
8509
- toMonth: resolvedMaxDate
8510
- }
8511
- ) }) }),
8512
- action && /* @__PURE__ */ jsxs8(CalendarFooterStyled, { children: [
8513
- /* @__PURE__ */ jsx16("div", { style: { textAlign: "center", padding: "1rem" }, children: /* @__PURE__ */ jsx16("span", { children: `${(selected == null ? void 0 : selected.from) ? format2(selected.from, "dd/MM/yyyy") : "00/00/0000"} \u2014 ${(selected == null ? void 0 : selected.to) ? format2(selected.to, "dd/MM/yyyy") : "00/00/0000"}` }) }),
8514
- /* @__PURE__ */ jsx16(
8515
- Button,
8503
+ expand,
8504
+ type: "button",
8505
+ onClick: () => setShowCalendar((prev) => {
8506
+ const next = !prev;
8507
+ if (!prev) initialSelectedRef.current = selected;
8508
+ return next;
8509
+ }),
8510
+ disabled,
8511
+ children: /* @__PURE__ */ jsx16("div", { style: { display: "flex", gap: "8px", width: "100%" }, children: /* @__PURE__ */ jsx16(
8512
+ TextField,
8513
+ {
8514
+ placeholder: "00/00/0000 - 00/00/0000",
8515
+ type: "text",
8516
+ value: `${startValue || "00/00/0000"} - ${endValue || "00/00/0000"}`,
8517
+ readOnly: true,
8518
+ inputMode: "numeric",
8519
+ textAlign: "right",
8520
+ color: hasError ? "error" : "default",
8521
+ disabled,
8522
+ children: /* @__PURE__ */ jsx16(TextFieldSlot, { children: /* @__PURE__ */ jsx16(Icon_default, { name: "calendar", size: "xl", color: "#4C4F54" }) })
8523
+ }
8524
+ ) })
8525
+ }
8526
+ ),
8527
+ showContainer && /* @__PURE__ */ jsxs8(CalendarContentStyled, { position, children: [
8528
+ /* @__PURE__ */ jsx16(Box, { children: /* @__PURE__ */ jsx16(DayPickerWrapperStyledToDoubleCalendar, { children: /* @__PURE__ */ jsx16(
8529
+ DayPicker2,
8516
8530
  {
8517
- style: { margin: "0 0.5rem" },
8518
- variant: "text",
8519
- color: "neutral",
8520
- type: "button",
8521
- onClick: () => {
8522
- setSelected(initialSelectedRef.current);
8523
- setShowCalendar(false);
8524
- },
8525
- size: "medium",
8526
- fontWeight: "regular",
8527
- children: "Cancelar"
8531
+ mode: "range",
8532
+ numberOfMonths: 2,
8533
+ captionLayout: calendarLayout,
8534
+ selected,
8535
+ onSelect: setSelected,
8536
+ required: true,
8537
+ locale: ptBR,
8538
+ disabled: disabledDays.length > 0 ? disabledDays : void 0,
8539
+ fromMonth: allowPastDates ? void 0 : today,
8540
+ toMonth: resolvedMaxDate
8528
8541
  }
8529
- ),
8530
- /* @__PURE__ */ jsx16(
8531
- Button,
8532
- {
8533
- style: { margin: "0 0.5rem" },
8534
- variant: "text",
8535
- color: "brand",
8536
- type: "button",
8537
- onClick: () => {
8538
- setShowCalendar(false);
8539
- },
8540
- size: "medium",
8541
- fontWeight: "medium",
8542
- children: actionText != null ? actionText : "Aplicar"
8543
- }
8544
- )
8545
- ] }),
8546
- simpleAction && /* @__PURE__ */ jsx16(CalendarFooterStyled, { children: /* @__PURE__ */ jsx16(
8547
- "div",
8548
- {
8549
- style: { display: "flex", justifyContent: "center", padding: "1rem", width: "100%" },
8550
- children: /* @__PURE__ */ jsx16(
8542
+ ) }) }),
8543
+ action && /* @__PURE__ */ jsxs8(CalendarFooterStyled, { children: [
8544
+ /* @__PURE__ */ jsx16("div", { style: { textAlign: "center", padding: "1rem" }, children: /* @__PURE__ */ jsx16("span", { children: `${(selected == null ? void 0 : selected.from) ? format2(selected.from, "dd/MM/yyyy") : "00/00/0000"} \u2014 ${(selected == null ? void 0 : selected.to) ? format2(selected.to, "dd/MM/yyyy") : "00/00/0000"}` }) }),
8545
+ /* @__PURE__ */ jsx16(
8546
+ Button,
8547
+ {
8548
+ style: { margin: "0 0.5rem" },
8549
+ variant: "text",
8550
+ color: "neutral",
8551
+ type: "button",
8552
+ onClick: () => {
8553
+ setSelected(initialSelectedRef.current);
8554
+ setShowCalendar(false);
8555
+ },
8556
+ size: "medium",
8557
+ fontWeight: "regular",
8558
+ children: "Cancelar"
8559
+ }
8560
+ ),
8561
+ /* @__PURE__ */ jsx16(
8551
8562
  Button,
8552
8563
  {
8553
8564
  style: { margin: "0 0.5rem" },
@@ -8562,10 +8573,31 @@ function DoubleCalendar(_a) {
8562
8573
  children: actionText != null ? actionText : "Aplicar"
8563
8574
  }
8564
8575
  )
8565
- }
8566
- ) })
8567
- ] })
8568
- ] })) });
8576
+ ] }),
8577
+ simpleAction && /* @__PURE__ */ jsx16(CalendarFooterStyled, { children: /* @__PURE__ */ jsx16(
8578
+ "div",
8579
+ {
8580
+ style: { display: "flex", justifyContent: "center", padding: "1rem", width: "100%" },
8581
+ children: /* @__PURE__ */ jsx16(
8582
+ Button,
8583
+ {
8584
+ style: { margin: "0 0.5rem" },
8585
+ variant: "text",
8586
+ color: "brand",
8587
+ type: "button",
8588
+ onClick: () => {
8589
+ setShowCalendar(false);
8590
+ },
8591
+ size: "medium",
8592
+ fontWeight: "medium",
8593
+ children: actionText != null ? actionText : "Aplicar"
8594
+ }
8595
+ )
8596
+ }
8597
+ ) })
8598
+ ] })
8599
+ ] }))
8600
+ ] });
8569
8601
  }
8570
8602
 
8571
8603
  // src/components/Drawer/index.tsx
@@ -8597,6 +8629,7 @@ var DrawerWrapper = styled("div", {
8597
8629
  top: 0,
8598
8630
  right: 0,
8599
8631
  height: "100dvh",
8632
+ minHeight: "100vh",
8600
8633
  overflow: "hidden",
8601
8634
  variants: {
8602
8635
  open: {
@@ -8612,6 +8645,7 @@ var DrawerContainerStyled = styled("div", {
8612
8645
  top: 0,
8613
8646
  right: 0,
8614
8647
  height: "100dvh",
8648
+ minHeight: "100vh",
8615
8649
  background: "$neutral50",
8616
8650
  display: "flex",
8617
8651
  flexDirection: "column",
package/package.json CHANGED
@@ -1,6 +1,6 @@
1
1
  {
2
2
  "name": "@lets-events/react",
3
- "version": "12.11.2",
3
+ "version": "12.11.4",
4
4
  "description": "",
5
5
  "main": "./dist/index.js",
6
6
  "module": "./dist/index.mjs",
@@ -10,6 +10,7 @@ import Icon from "../Icon";
10
10
  import {
11
11
  CalendarContentStyled,
12
12
  CalendarFooterStyled,
13
+ CalendarOverlayStyled,
13
14
  CalendarStyled,
14
15
  DayPickerWrapperStyled,
15
16
  CalendarButtonStyled,
@@ -105,6 +106,9 @@ export function Calendar({
105
106
 
106
107
  return (
107
108
  <div>
109
+ {showContainer && (
110
+ <CalendarOverlayStyled onClick={() => setShowCalendar(false)} />
111
+ )}
108
112
  <CalendarStyled {...props} expand={expand} ref={dropdownRef}>
109
113
  <CalendarButtonStyled
110
114
  expand={expand}
@@ -17,6 +17,29 @@ export const CalendarStyled = styled("div", {
17
17
  },
18
18
  },
19
19
  });
20
+ const calendarMobileCentered = {
21
+ position: "fixed",
22
+ top: "50%",
23
+ left: "50%",
24
+ right: "auto",
25
+ bottom: "auto",
26
+ transform: "translate(-50%, -50%)",
27
+ maxWidth: "calc(100vw - 32px)",
28
+ maxHeight: "90vh",
29
+ overflowY: "auto",
30
+ };
31
+
32
+ export const CalendarOverlayStyled = styled("div", {
33
+ display: "none",
34
+ "@media (max-width: 748px)": {
35
+ display: "block",
36
+ position: "fixed",
37
+ inset: 0,
38
+ backgroundColor: "rgba(0, 0, 0, 0.5)",
39
+ zIndex: 999998,
40
+ },
41
+ });
42
+
20
43
  export const CalendarButtonStyled = styled("button", {
21
44
  backgroundColor: "transparent",
22
45
  border: "none",
@@ -50,23 +73,28 @@ export const CalendarContentStyled = styled("div", {
50
73
  position: "absolute",
51
74
  backgroundColor: "$neutral50",
52
75
  zIndex: "999999",
76
+ "@media (max-width: 748px)": calendarMobileCentered,
53
77
  variants: {
54
78
  position: {
55
79
  top: {
56
80
  bottom: "110%",
57
81
  left: "0",
82
+ "@media (max-width: 748px)": calendarMobileCentered,
58
83
  },
59
84
  bottom: {
60
85
  top: "110%",
61
86
  left: "0",
87
+ "@media (max-width: 748px)": calendarMobileCentered,
62
88
  },
63
89
  "top-right": {
64
90
  bottom: "110%",
65
91
  right: "0",
92
+ "@media (max-width: 748px)": calendarMobileCentered,
66
93
  },
67
94
  "bottom-right": {
68
95
  top: "110%",
69
96
  right: "0",
97
+ "@media (max-width: 748px)": calendarMobileCentered,
70
98
  },
71
99
  },
72
100
  },
@@ -10,6 +10,7 @@ import Icon from "../Icon";
10
10
  import {
11
11
  CalendarContentStyled,
12
12
  CalendarFooterStyled,
13
+ CalendarOverlayStyled,
13
14
  CalendarStyled,
14
15
  DayPickerWrapperStyledToDoubleCalendar,
15
16
  CalendarButtonStyled,
@@ -88,6 +89,9 @@ export function DoubleCalendar({
88
89
 
89
90
  return (
90
91
  <div>
92
+ {showContainer && (
93
+ <CalendarOverlayStyled onClick={() => setShowCalendar(false)} />
94
+ )}
91
95
  <CalendarStyled {...props} expand={expand} ref={dropdownRef}>
92
96
  <CalendarButtonStyled
93
97
  expand={expand}
@@ -28,6 +28,7 @@ export const DrawerWrapper = styled("div", {
28
28
  top: 0,
29
29
  right: 0,
30
30
  height: "100dvh",
31
+ minHeight: "100vh",
31
32
  overflow: "hidden",
32
33
 
33
34
  variants: {
@@ -45,6 +46,7 @@ export const DrawerContainerStyled = styled("div", {
45
46
  top: 0,
46
47
  right: 0,
47
48
  height: "100dvh",
49
+ minHeight: "100vh",
48
50
  background: "$neutral50",
49
51
  display: "flex",
50
52
  flexDirection: "column",