@itilite/lumina-ui 1.1.5 → 1.1.6
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/atom/LoadingSpinner/LoadingSpinner.d.mts +19 -0
- package/dist/atom/LoadingSpinner/LoadingSpinner.d.ts +19 -0
- package/dist/atom/LoadingSpinner/LoadingSpinner.js +90 -0
- package/dist/atom/LoadingSpinner/LoadingSpinner.mjs +9 -0
- package/dist/atom/RangePicker/RangePicker.js +265 -136
- package/dist/atom/RangePicker/RangePicker.mjs +4 -2
- package/dist/atom/Select/Select.d.mts +6 -3
- package/dist/atom/Select/Select.d.ts +6 -3
- package/dist/atom/Select/Select.js +213 -91
- package/dist/atom/Select/Select.mjs +3 -1
- package/dist/chunk-22VF7AVT.mjs +618 -0
- package/dist/chunk-2BNAAOBU.mjs +670 -0
- package/dist/chunk-2IMRLK6M.mjs +44 -0
- package/dist/chunk-2JIINZEK.mjs +618 -0
- package/dist/chunk-2LBFKQDZ.mjs +660 -0
- package/dist/chunk-2ZJBF5C4.mjs +618 -0
- package/dist/chunk-3IMCN4K3.mjs +670 -0
- package/dist/chunk-3KBQQCET.mjs +674 -0
- package/dist/chunk-3KUHXNFH.mjs +678 -0
- package/dist/chunk-3PPNOIXN.mjs +618 -0
- package/dist/chunk-3XFY3TXJ.mjs +611 -0
- package/dist/chunk-3XW7HS5W.mjs +618 -0
- package/dist/chunk-447HZYZ4.mjs +612 -0
- package/dist/chunk-46F3B4U6.mjs +618 -0
- package/dist/chunk-4K5RZHL4.mjs +618 -0
- package/dist/chunk-4QHFP4YD.mjs +666 -0
- package/dist/chunk-4TFX4DHY.mjs +702 -0
- package/dist/chunk-4TWO6JES.mjs +666 -0
- package/dist/chunk-4UQVJ3ZU.mjs +666 -0
- package/dist/chunk-5247J65D.mjs +670 -0
- package/dist/chunk-66H5WSEJ.mjs +618 -0
- package/dist/chunk-6OGEXG5U.mjs +618 -0
- package/dist/chunk-6ROQXYVN.mjs +672 -0
- package/dist/chunk-6WNI6X5Q.mjs +618 -0
- package/dist/chunk-72PPCN6D.mjs +675 -0
- package/dist/chunk-74EGXFNN.mjs +618 -0
- package/dist/chunk-77NCDGJA.mjs +707 -0
- package/dist/chunk-7NGBIPZT.mjs +618 -0
- package/dist/chunk-7NM4FNMQ.mjs +666 -0
- package/dist/chunk-7YBBSVUA.mjs +672 -0
- package/dist/chunk-7Z52UP7P.mjs +618 -0
- package/dist/chunk-B3LDL3KD.mjs +670 -0
- package/dist/chunk-B65LGQ47.mjs +666 -0
- package/dist/chunk-B6MTRO54.mjs +618 -0
- package/dist/chunk-BJBP5XYB.mjs +618 -0
- package/dist/chunk-BLLSWPCC.mjs +618 -0
- package/dist/chunk-BOYB7REJ.mjs +670 -0
- package/dist/chunk-BP2D64XI.mjs +618 -0
- package/dist/chunk-BRT5IPGQ.mjs +618 -0
- package/dist/chunk-C2J3VBFZ.mjs +670 -0
- package/dist/chunk-CDOR7GQP.mjs +618 -0
- package/dist/chunk-CI2RMA4V.mjs +612 -0
- package/dist/chunk-CNUIZOQJ.mjs +669 -0
- package/dist/chunk-CPBXPEST.mjs +672 -0
- package/dist/chunk-CVOLXLMU.mjs +618 -0
- package/dist/chunk-CWUCNC36.mjs +666 -0
- package/dist/chunk-CZBGN6GS.mjs +612 -0
- package/dist/chunk-D3APB62N.mjs +618 -0
- package/dist/chunk-D7TWXVL2.mjs +674 -0
- package/dist/chunk-DAZ53AD7.mjs +671 -0
- package/dist/chunk-DBY5U6IU.mjs +618 -0
- package/dist/chunk-DXTVU4M5.mjs +618 -0
- package/dist/chunk-DZBTD6QK.mjs +666 -0
- package/dist/chunk-EAK2IMM4.mjs +37 -0
- package/dist/chunk-EQT2Q2LW.mjs +610 -0
- package/dist/chunk-EWMCELQV.mjs +670 -0
- package/dist/chunk-EYKWBEHX.mjs +612 -0
- package/dist/chunk-FHLCFUP6.mjs +666 -0
- package/dist/chunk-FMPFLQZV.mjs +670 -0
- package/dist/chunk-G25YXZ74.mjs +618 -0
- package/dist/chunk-GSG6ZC3R.mjs +37 -0
- package/dist/chunk-H3MQUFTJ.mjs +618 -0
- package/dist/chunk-HKZRLVBX.mjs +618 -0
- package/dist/chunk-HQALJGVT.mjs +618 -0
- package/dist/chunk-I5GBZ3UX.mjs +676 -0
- package/dist/chunk-IV4V55OA.mjs +672 -0
- package/dist/chunk-J2RAFKAD.mjs +618 -0
- package/dist/chunk-JL34UFI7.mjs +670 -0
- package/dist/chunk-JTKSGGQM.mjs +611 -0
- package/dist/chunk-JZC2RRDH.mjs +618 -0
- package/dist/chunk-K3Y7VKT6.mjs +670 -0
- package/dist/chunk-KEVXNUFG.mjs +672 -0
- package/dist/chunk-KRYAP7NG.mjs +670 -0
- package/dist/chunk-KU655POK.mjs +657 -0
- package/dist/chunk-L55SLVNX.mjs +618 -0
- package/dist/chunk-LCRYOZEV.mjs +618 -0
- package/dist/chunk-LH7PP6V2.mjs +618 -0
- package/dist/chunk-LJMMYKE2.mjs +618 -0
- package/dist/chunk-LK5TROLL.mjs +666 -0
- package/dist/chunk-MDR7DAKM.mjs +618 -0
- package/dist/chunk-MJZLCWZ5.mjs +666 -0
- package/dist/chunk-MKZTEJLS.mjs +612 -0
- package/dist/chunk-MQCOQHHP.mjs +618 -0
- package/dist/chunk-MSM4KUBM.mjs +618 -0
- package/dist/chunk-MTIUER63.mjs +676 -0
- package/dist/chunk-NBLV3UX5.mjs +618 -0
- package/dist/chunk-NLADSOJS.mjs +618 -0
- package/dist/chunk-NPMTWR3Y.mjs +618 -0
- package/dist/chunk-NQ6GKEO7.mjs +670 -0
- package/dist/chunk-NZSFYNUK.mjs +618 -0
- package/dist/chunk-OCNF4O5U.mjs +612 -0
- package/dist/chunk-OCW5QSWA.mjs +618 -0
- package/dist/chunk-OQF7JZFS.mjs +670 -0
- package/dist/chunk-OT675HGC.mjs +670 -0
- package/dist/chunk-P47TCYKN.mjs +618 -0
- package/dist/chunk-P7TOGXPI.mjs +672 -0
- package/dist/chunk-PCAXXEEQ.mjs +618 -0
- package/dist/chunk-PDHMG7OZ.mjs +672 -0
- package/dist/chunk-PFGVOZGM.mjs +618 -0
- package/dist/chunk-PQSSDK3E.mjs +618 -0
- package/dist/chunk-PST7W3NG.mjs +618 -0
- package/dist/chunk-QGPBZ2YV.mjs +664 -0
- package/dist/chunk-QKTMWS4J.mjs +43 -0
- package/dist/chunk-QOPCJITC.mjs +618 -0
- package/dist/chunk-QSE52CRC.mjs +618 -0
- package/dist/chunk-QTP2QMPL.mjs +669 -0
- package/dist/chunk-R47XX6IW.mjs +611 -0
- package/dist/chunk-RL6AEU6E.mjs +612 -0
- package/dist/chunk-T7T4HCHH.mjs +618 -0
- package/dist/chunk-TED2WCDG.mjs +618 -0
- package/dist/chunk-TJLIMMMB.mjs +612 -0
- package/dist/chunk-TNOJDLON.mjs +611 -0
- package/dist/chunk-TOR67IHH.mjs +672 -0
- package/dist/chunk-TOV7NVKM.mjs +618 -0
- package/dist/chunk-TSYMIRRN.mjs +618 -0
- package/dist/chunk-TTSRI4V7.mjs +708 -0
- package/dist/chunk-UBS3DTE5.mjs +672 -0
- package/dist/chunk-UBW6RYVF.mjs +670 -0
- package/dist/chunk-UJNUFKR5.mjs +43 -0
- package/dist/chunk-VAZZJOSJ.mjs +618 -0
- package/dist/chunk-VCWXOX2B.mjs +618 -0
- package/dist/chunk-VHCLEOHZ.mjs +618 -0
- package/dist/chunk-VTZSCGME.mjs +666 -0
- package/dist/chunk-W33KZ2XR.mjs +618 -0
- package/dist/chunk-WOVMTYDV.mjs +612 -0
- package/dist/chunk-WR3USBWK.mjs +672 -0
- package/dist/chunk-WXYQARQ6.mjs +618 -0
- package/dist/chunk-Y6XKW4NG.mjs +618 -0
- package/dist/chunk-YQSNJFZE.mjs +618 -0
- package/dist/chunk-Z6VG6AG7.mjs +678 -0
- package/dist/chunk-ZAPKQ4C3.mjs +678 -0
- package/dist/chunk-ZCWDQNHL.mjs +618 -0
- package/dist/chunk-ZF5JBNCI.mjs +618 -0
- package/dist/chunk-ZN7BHWOF.mjs +672 -0
- package/dist/chunk-ZUQJKA5J.mjs +666 -0
- package/dist/chunk-ZWHWIGYQ.mjs +618 -0
- package/dist/index.d.mts +2 -0
- package/dist/index.d.ts +2 -0
- package/dist/index.js +227 -136
- package/dist/index.mjs +18 -14
- package/dist/styles.css +128 -87
- package/package.json +3 -2
package/dist/index.js
CHANGED
|
@@ -62,6 +62,7 @@ __export(index_exports, {
|
|
|
62
62
|
Avatar: () => Avatar_default,
|
|
63
63
|
Button: () => Button_default,
|
|
64
64
|
Checkbox: () => Checkbox_default,
|
|
65
|
+
LoadingSpinner: () => LoadingSpinner_default,
|
|
65
66
|
Modal: () => Modal_default,
|
|
66
67
|
Radio: () => Radio_default,
|
|
67
68
|
RangePicker: () => RangePicker_default,
|
|
@@ -587,7 +588,7 @@ Tag.displayName = "Tag";
|
|
|
587
588
|
var Tag_default = Tag;
|
|
588
589
|
|
|
589
590
|
// src/atom/RangePicker/RangePicker.tsx
|
|
590
|
-
var
|
|
591
|
+
var import_react3 = require("react");
|
|
591
592
|
var import_clsx9 = __toESM(require("clsx"));
|
|
592
593
|
var import_dayjs = __toESM(require("dayjs"));
|
|
593
594
|
|
|
@@ -639,7 +640,7 @@ var Chevron = React.memo(
|
|
|
639
640
|
var RangePicker_module_default = { "range_start": "RangePicker-module__range_start___hGQp-", "range_end": "RangePicker-module__range_end___JJNib" };
|
|
640
641
|
|
|
641
642
|
// src/atom/Select/Select.tsx
|
|
642
|
-
var
|
|
643
|
+
var import_react2 = require("react");
|
|
643
644
|
var import_clsx8 = __toESM(require("clsx"));
|
|
644
645
|
|
|
645
646
|
// src/icons/Chevron.tsx
|
|
@@ -684,16 +685,13 @@ var CrossV2 = React3.memo(
|
|
|
684
685
|
width: size,
|
|
685
686
|
height: size,
|
|
686
687
|
fill: "none",
|
|
687
|
-
viewBox: "0 0
|
|
688
|
-
className
|
|
688
|
+
viewBox: "0 0 20 20"
|
|
689
689
|
}, rest), {
|
|
690
690
|
children: /* @__PURE__ */ (0, import_jsx_runtime11.jsx)(
|
|
691
691
|
"path",
|
|
692
692
|
{
|
|
693
693
|
fill: color,
|
|
694
|
-
|
|
695
|
-
d: "M4.293 4.293a1 1 0 011.414 0L8 6.586l2.293-2.293a1 1 0 111.414 1.414L9.414 8l2.293 2.293a1 1 0 01-1.414 1.414L8 9.414l-2.293 2.293a1 1 0 01-1.414-1.414L6.586 8 4.293 5.707a1 1 0 010-1.414z",
|
|
696
|
-
clipRule: "evenodd"
|
|
694
|
+
d: "M4.411 4.41a.833.833 0 0 1 1.179 0L10 8.822l4.411-4.41a.833.833 0 1 1 1.179 1.178L11.179 10l4.41 4.41a.833.833 0 0 1-1.178 1.18l-4.41-4.411-4.411 4.41a.833.833 0 1 1-1.179-1.178L8.821 10l-4.41-4.41a.833.833 0 0 1 0-1.18"
|
|
697
695
|
}
|
|
698
696
|
)
|
|
699
697
|
})
|
|
@@ -702,8 +700,66 @@ var CrossV2 = React3.memo(
|
|
|
702
700
|
);
|
|
703
701
|
CrossV2.displayName = "CrossV2";
|
|
704
702
|
|
|
705
|
-
// src/
|
|
703
|
+
// src/icons/Lock.tsx
|
|
704
|
+
var import_react = __toESM(require("react"));
|
|
706
705
|
var import_jsx_runtime12 = require("react/jsx-runtime");
|
|
706
|
+
var Lock = import_react.default.memo((_a) => {
|
|
707
|
+
var _b = _a, { size = 16, color = "#000" } = _b, rest = __objRest(_b, ["size", "color"]);
|
|
708
|
+
return /* @__PURE__ */ (0, import_jsx_runtime12.jsx)(
|
|
709
|
+
"svg",
|
|
710
|
+
__spreadProps(__spreadValues({
|
|
711
|
+
xmlns: "http://www.w3.org/2000/svg",
|
|
712
|
+
width: size,
|
|
713
|
+
height: size,
|
|
714
|
+
fill: "none",
|
|
715
|
+
viewBox: "0 0 16 16"
|
|
716
|
+
}, rest), {
|
|
717
|
+
children: /* @__PURE__ */ (0, import_jsx_runtime12.jsx)(
|
|
718
|
+
"path",
|
|
719
|
+
{
|
|
720
|
+
fill: color,
|
|
721
|
+
d: "M9 9a1 1 0 11-2 0 1 1 0 012 0zM5 4h-.5A2.5 2.5 0 002 6.5v5A2.5 2.5 0 004.5 14h7a2.5 2.5 0 002.5-2.5v-5A2.5 2.5 0 0011.5 4H11v-.5a3 3 0 00-6 0V4zm1-.5a2 2 0 114 0V4H6v-.5zM11.5 5A1.5 1.5 0 0113 6.5v5a1.5 1.5 0 01-1.5 1.5h-7A1.5 1.5 0 013 11.5v-5A1.5 1.5 0 014.5 5h7z"
|
|
722
|
+
}
|
|
723
|
+
)
|
|
724
|
+
})
|
|
725
|
+
);
|
|
726
|
+
});
|
|
727
|
+
|
|
728
|
+
// src/atom/LoadingSpinner/LoadingSpinner.tsx
|
|
729
|
+
var import_icons = require("@ant-design/icons");
|
|
730
|
+
var import_antd8 = require("antd");
|
|
731
|
+
|
|
732
|
+
// src/atom/LoadingSpinner/LoadingSpinner.module.scss
|
|
733
|
+
var LoadingSpinner_module_default = { "spinnerContainer": "LoadingSpinner-module__spinnerContainer___DiPLf" };
|
|
734
|
+
|
|
735
|
+
// src/atom/LoadingSpinner/LoadingSpinner.tsx
|
|
736
|
+
var import_jsx_runtime13 = require("react/jsx-runtime");
|
|
737
|
+
var sizeMapping = {
|
|
738
|
+
xs: 16,
|
|
739
|
+
small: 24,
|
|
740
|
+
medium: 36,
|
|
741
|
+
large: 48
|
|
742
|
+
};
|
|
743
|
+
var LoadingSpinner = (_a) => {
|
|
744
|
+
var _b = _a, { size = "small", color = "#ec5d25" } = _b, rest = __objRest(_b, ["size", "color"]);
|
|
745
|
+
return /* @__PURE__ */ (0, import_jsx_runtime13.jsx)("div", __spreadProps(__spreadValues({ className: LoadingSpinner_module_default.spinnerContainer }, rest), { children: /* @__PURE__ */ (0, import_jsx_runtime13.jsx)(
|
|
746
|
+
import_antd8.Spin,
|
|
747
|
+
{
|
|
748
|
+
indicator: /* @__PURE__ */ (0, import_jsx_runtime13.jsx)(
|
|
749
|
+
import_icons.LoadingOutlined,
|
|
750
|
+
{
|
|
751
|
+
style: { fontSize: sizeMapping[size], color },
|
|
752
|
+
spin: true
|
|
753
|
+
}
|
|
754
|
+
)
|
|
755
|
+
}
|
|
756
|
+
) }));
|
|
757
|
+
};
|
|
758
|
+
LoadingSpinner.displayName = "LoadingSpinner";
|
|
759
|
+
var LoadingSpinner_default = LoadingSpinner;
|
|
760
|
+
|
|
761
|
+
// src/atom/Select/Select.tsx
|
|
762
|
+
var import_jsx_runtime14 = require("react/jsx-runtime");
|
|
707
763
|
var Select = ({
|
|
708
764
|
label,
|
|
709
765
|
mandatory = false,
|
|
@@ -714,6 +770,10 @@ var Select = ({
|
|
|
714
770
|
value: _valueProp,
|
|
715
771
|
// Rename to avoid potential conflicts with native value attribute
|
|
716
772
|
onChange,
|
|
773
|
+
onSearch,
|
|
774
|
+
isLoading = false,
|
|
775
|
+
disabled = false,
|
|
776
|
+
disabledTooltip = "",
|
|
717
777
|
className = "",
|
|
718
778
|
dropdownClassName = "",
|
|
719
779
|
optionClassName = "",
|
|
@@ -722,7 +782,6 @@ var Select = ({
|
|
|
722
782
|
// New prop to show displayValue instead of label
|
|
723
783
|
allowClear = true,
|
|
724
784
|
enableSearch = true,
|
|
725
|
-
// New prop to control search functionality, default true
|
|
726
785
|
doubleCharSearch = false,
|
|
727
786
|
id,
|
|
728
787
|
name,
|
|
@@ -742,45 +801,45 @@ var Select = ({
|
|
|
742
801
|
// Custom height
|
|
743
802
|
experience = "business"
|
|
744
803
|
}) => {
|
|
745
|
-
const normalizeValue = (0,
|
|
804
|
+
const normalizeValue = (0, import_react2.useCallback)(
|
|
746
805
|
(val) => {
|
|
747
806
|
if (val === null || val === void 0) return "";
|
|
748
807
|
return String(val);
|
|
749
808
|
},
|
|
750
809
|
[]
|
|
751
810
|
);
|
|
752
|
-
const validatedOptions = (0,
|
|
811
|
+
const validatedOptions = (0, import_react2.useMemo)(() => {
|
|
753
812
|
if (!Array.isArray(options)) return [];
|
|
754
813
|
return options.filter(
|
|
755
814
|
(opt) => opt && typeof opt === "object" && opt.value !== void 0 && opt.value !== null && opt.label !== void 0
|
|
756
815
|
);
|
|
757
816
|
}, [options]);
|
|
758
|
-
const [isOpen, setIsOpen] = (0,
|
|
759
|
-
const [isFocused, setIsFocused] = (0,
|
|
760
|
-
const [searchTerm, setSearchTerm] = (0,
|
|
761
|
-
const [isHovering, setIsHovering] = (0,
|
|
762
|
-
const [highlightedIndex, setHighlightedIndex] = (0,
|
|
763
|
-
const [selectedValue, setSelectedValue] = (0,
|
|
817
|
+
const [isOpen, setIsOpen] = (0, import_react2.useState)(false);
|
|
818
|
+
const [isFocused, setIsFocused] = (0, import_react2.useState)(false);
|
|
819
|
+
const [searchTerm, setSearchTerm] = (0, import_react2.useState)("");
|
|
820
|
+
const [isHovering, setIsHovering] = (0, import_react2.useState)(false);
|
|
821
|
+
const [highlightedIndex, setHighlightedIndex] = (0, import_react2.useState)(-1);
|
|
822
|
+
const [selectedValue, setSelectedValue] = (0, import_react2.useState)(() => {
|
|
764
823
|
const initialValue = valueSelected;
|
|
765
824
|
if (initialValue === null || initialValue === void 0) return "";
|
|
766
825
|
return String(initialValue);
|
|
767
826
|
});
|
|
768
|
-
const inputRef = (0,
|
|
769
|
-
const inputValueRef = (0,
|
|
770
|
-
const dropdownRef = (0,
|
|
771
|
-
const optionRefs = (0,
|
|
772
|
-
const optionListRef = (0,
|
|
773
|
-
const blurTimeoutRef = (0,
|
|
774
|
-
const hoverTimeoutRef = (0,
|
|
827
|
+
const inputRef = (0, import_react2.useRef)(null);
|
|
828
|
+
const inputValueRef = (0, import_react2.useRef)("");
|
|
829
|
+
const dropdownRef = (0, import_react2.useRef)(null);
|
|
830
|
+
const optionRefs = (0, import_react2.useRef)([]);
|
|
831
|
+
const optionListRef = (0, import_react2.useRef)(null);
|
|
832
|
+
const blurTimeoutRef = (0, import_react2.useRef)(null);
|
|
833
|
+
const hoverTimeoutRef = (0, import_react2.useRef)(null);
|
|
775
834
|
const isActive = isFocused || Boolean(selectedValue) || Boolean(valueSelected) || Boolean(searchTerm);
|
|
776
|
-
const sizeClasses = (0,
|
|
835
|
+
const sizeClasses = (0, import_react2.useMemo)(() => {
|
|
777
836
|
switch (size) {
|
|
778
837
|
case "small":
|
|
779
838
|
return {
|
|
780
|
-
input: "tw-h-
|
|
781
|
-
padding:
|
|
782
|
-
labelActive: "tw-top-0 tw-typography-
|
|
783
|
-
labelInactive: "tw-top-
|
|
839
|
+
input: "tw-h-6 tw-px-3 tw-typography-caption1Bold !tw-rounded-lg",
|
|
840
|
+
padding: "tw-px-2 tw-py-1",
|
|
841
|
+
labelActive: "tw-top-0.5 tw-typography-caption2",
|
|
842
|
+
labelInactive: "tw-top-1.5 tw-typography-caption3"
|
|
784
843
|
};
|
|
785
844
|
case "medium":
|
|
786
845
|
return {
|
|
@@ -805,7 +864,7 @@ var Select = ({
|
|
|
805
864
|
};
|
|
806
865
|
}
|
|
807
866
|
}, [size, label, height]);
|
|
808
|
-
const variantClasses = (0,
|
|
867
|
+
const variantClasses = (0, import_react2.useMemo)(() => {
|
|
809
868
|
switch (variant) {
|
|
810
869
|
case "filled":
|
|
811
870
|
return "tw-bg-gray-50 tw-border-transparent";
|
|
@@ -815,7 +874,7 @@ var Select = ({
|
|
|
815
874
|
return " tw-border";
|
|
816
875
|
}
|
|
817
876
|
}, [variant]);
|
|
818
|
-
const handleBlur = (0,
|
|
877
|
+
const handleBlur = (0, import_react2.useCallback)(() => {
|
|
819
878
|
blurTimeoutRef.current = setTimeout(() => {
|
|
820
879
|
setIsOpen(false);
|
|
821
880
|
setSearchTerm("");
|
|
@@ -824,24 +883,28 @@ var Select = ({
|
|
|
824
883
|
setIsFocused(false);
|
|
825
884
|
}, 150);
|
|
826
885
|
}, []);
|
|
827
|
-
const handleSearchChange = (0,
|
|
886
|
+
const handleSearchChange = (0, import_react2.useCallback)(
|
|
828
887
|
(e) => {
|
|
829
888
|
var _a;
|
|
889
|
+
const searchValue = doubleCharSearch ? e.target.value.slice(0, 2) || "" : e.target.value;
|
|
830
890
|
if (doubleCharSearch) {
|
|
831
|
-
setSearchTerm(
|
|
891
|
+
setSearchTerm(searchValue);
|
|
832
892
|
} else {
|
|
833
|
-
setSearchTerm(
|
|
893
|
+
setSearchTerm(searchValue);
|
|
834
894
|
}
|
|
835
895
|
setIsOpen(true);
|
|
836
896
|
setHighlightedIndex(-1);
|
|
897
|
+
if (onSearch && typeof onSearch === "function") {
|
|
898
|
+
onSearch(searchValue);
|
|
899
|
+
}
|
|
837
900
|
(_a = optionListRef == null ? void 0 : optionListRef.current) == null ? void 0 : _a.scrollTo({
|
|
838
901
|
top: 0,
|
|
839
902
|
behavior: "smooth"
|
|
840
903
|
});
|
|
841
904
|
},
|
|
842
|
-
[doubleCharSearch]
|
|
905
|
+
[doubleCharSearch, onSearch]
|
|
843
906
|
);
|
|
844
|
-
const handleOptionSelect = (0,
|
|
907
|
+
const handleOptionSelect = (0, import_react2.useCallback)(
|
|
845
908
|
(option) => {
|
|
846
909
|
var _a;
|
|
847
910
|
if (blurTimeoutRef.current) {
|
|
@@ -862,7 +925,7 @@ var Select = ({
|
|
|
862
925
|
},
|
|
863
926
|
[normalizeValue, onChange, enableSearch]
|
|
864
927
|
);
|
|
865
|
-
const handleClear = (0,
|
|
928
|
+
const handleClear = (0, import_react2.useCallback)(
|
|
866
929
|
(e) => {
|
|
867
930
|
var _a;
|
|
868
931
|
inputValueRef.current = "";
|
|
@@ -882,21 +945,22 @@ var Select = ({
|
|
|
882
945
|
},
|
|
883
946
|
[onChange, enableSearch]
|
|
884
947
|
);
|
|
885
|
-
(0,
|
|
948
|
+
(0, import_react2.useEffect)(() => {
|
|
886
949
|
if (!validatedOptions.length) {
|
|
887
950
|
setSelectedValue("");
|
|
888
951
|
setSearchTerm("");
|
|
889
952
|
inputValueRef.current = "";
|
|
890
953
|
}
|
|
891
954
|
}, [validatedOptions.length]);
|
|
892
|
-
(0,
|
|
893
|
-
const
|
|
955
|
+
(0, import_react2.useEffect)(() => {
|
|
956
|
+
const externalValue = _valueProp !== void 0 ? _valueProp : valueSelected;
|
|
957
|
+
const newValue = normalizeValue(externalValue);
|
|
894
958
|
setSelectedValue((prevValue) => {
|
|
895
959
|
const prevNormalized = normalizeValue(prevValue);
|
|
896
960
|
return prevNormalized !== newValue ? newValue : prevValue;
|
|
897
961
|
});
|
|
898
|
-
}, [valueSelected, normalizeValue]);
|
|
899
|
-
(0,
|
|
962
|
+
}, [valueSelected, _valueProp, normalizeValue]);
|
|
963
|
+
(0, import_react2.useEffect)(() => {
|
|
900
964
|
const handleClickOutside = (event) => {
|
|
901
965
|
if (dropdownRef.current && !dropdownRef.current.contains(event.target)) {
|
|
902
966
|
if (blurTimeoutRef.current) {
|
|
@@ -920,7 +984,7 @@ var Select = ({
|
|
|
920
984
|
}
|
|
921
985
|
};
|
|
922
986
|
}, []);
|
|
923
|
-
const getDisplayValue = (0,
|
|
987
|
+
const getDisplayValue = (0, import_react2.useCallback)(() => {
|
|
924
988
|
if (selectedValue && (validatedOptions == null ? void 0 : validatedOptions.length) > 0) {
|
|
925
989
|
const selected = validatedOptions.find(
|
|
926
990
|
(opt) => normalizeValue(opt.value) === normalizeValue(selectedValue)
|
|
@@ -934,7 +998,7 @@ var Select = ({
|
|
|
934
998
|
}
|
|
935
999
|
return "";
|
|
936
1000
|
}, [selectedValue, validatedOptions, showDisplayValue, normalizeValue]);
|
|
937
|
-
const filteredOptions = (0,
|
|
1001
|
+
const filteredOptions = (0, import_react2.useMemo)(() => {
|
|
938
1002
|
var _a;
|
|
939
1003
|
if (!enableSearch) {
|
|
940
1004
|
return validatedOptions;
|
|
@@ -946,7 +1010,7 @@ var Select = ({
|
|
|
946
1010
|
});
|
|
947
1011
|
return updatedFilteredOptions;
|
|
948
1012
|
}, [validatedOptions, searchTerm, enableSearch]);
|
|
949
|
-
const getSelectedOptionIndex = (0,
|
|
1013
|
+
const getSelectedOptionIndex = (0, import_react2.useCallback)(() => {
|
|
950
1014
|
if (!selectedValue || !filteredOptions.length) {
|
|
951
1015
|
return 0;
|
|
952
1016
|
}
|
|
@@ -955,7 +1019,7 @@ var Select = ({
|
|
|
955
1019
|
);
|
|
956
1020
|
return index >= 0 ? index : 0;
|
|
957
1021
|
}, [selectedValue, filteredOptions, normalizeValue]);
|
|
958
|
-
const handleInputInteraction = (0,
|
|
1022
|
+
const handleInputInteraction = (0, import_react2.useCallback)(
|
|
959
1023
|
(_e) => {
|
|
960
1024
|
var _a;
|
|
961
1025
|
if (blurTimeoutRef.current) {
|
|
@@ -979,7 +1043,7 @@ var Select = ({
|
|
|
979
1043
|
},
|
|
980
1044
|
[isOpen, getSelectedOptionIndex]
|
|
981
1045
|
);
|
|
982
|
-
const handleKeyDown = (0,
|
|
1046
|
+
const handleKeyDown = (0, import_react2.useCallback)(
|
|
983
1047
|
(e) => {
|
|
984
1048
|
var _a;
|
|
985
1049
|
if (!isOpen) return;
|
|
@@ -1018,7 +1082,7 @@ var Select = ({
|
|
|
1018
1082
|
},
|
|
1019
1083
|
[isOpen, highlightedIndex, filteredOptions, handleOptionSelect]
|
|
1020
1084
|
);
|
|
1021
|
-
(0,
|
|
1085
|
+
(0, import_react2.useEffect)(() => {
|
|
1022
1086
|
if (highlightedIndex >= 0 && optionRefs.current[highlightedIndex]) {
|
|
1023
1087
|
optionRefs.current[highlightedIndex].scrollIntoView({
|
|
1024
1088
|
block: "nearest",
|
|
@@ -1026,10 +1090,10 @@ var Select = ({
|
|
|
1026
1090
|
});
|
|
1027
1091
|
}
|
|
1028
1092
|
}, [highlightedIndex]);
|
|
1029
|
-
(0,
|
|
1093
|
+
(0, import_react2.useEffect)(() => {
|
|
1030
1094
|
optionRefs.current = [];
|
|
1031
1095
|
}, [filteredOptions]);
|
|
1032
|
-
const handleMouseEnter = (0,
|
|
1096
|
+
const handleMouseEnter = (0, import_react2.useCallback)(() => {
|
|
1033
1097
|
if (hoverTimeoutRef.current) {
|
|
1034
1098
|
clearTimeout(hoverTimeoutRef.current);
|
|
1035
1099
|
}
|
|
@@ -1037,12 +1101,12 @@ var Select = ({
|
|
|
1037
1101
|
setIsHovering(true);
|
|
1038
1102
|
}
|
|
1039
1103
|
}, [isHovering]);
|
|
1040
|
-
const handleMouseLeave = (0,
|
|
1104
|
+
const handleMouseLeave = (0, import_react2.useCallback)(() => {
|
|
1041
1105
|
hoverTimeoutRef.current = setTimeout(() => {
|
|
1042
1106
|
setIsHovering(false);
|
|
1043
1107
|
}, 50);
|
|
1044
1108
|
}, []);
|
|
1045
|
-
const handleChevronClick = (0,
|
|
1109
|
+
const handleChevronClick = (0, import_react2.useCallback)(
|
|
1046
1110
|
(e) => {
|
|
1047
1111
|
var _a;
|
|
1048
1112
|
e.preventDefault();
|
|
@@ -1065,17 +1129,23 @@ var Select = ({
|
|
|
1065
1129
|
},
|
|
1066
1130
|
[isOpen, handleInputInteraction]
|
|
1067
1131
|
);
|
|
1068
|
-
|
|
1132
|
+
const InputWrapper = ({ children }) => {
|
|
1133
|
+
return /* @__PURE__ */ (0, import_jsx_runtime14.jsx)(Tooltip_default, { title: disabledTooltip, children });
|
|
1134
|
+
return children;
|
|
1135
|
+
};
|
|
1136
|
+
return /* @__PURE__ */ (0, import_jsx_runtime14.jsx)(InputWrapper, { children: /* @__PURE__ */ (0, import_jsx_runtime14.jsxs)(
|
|
1069
1137
|
"div",
|
|
1070
1138
|
{
|
|
1071
1139
|
style,
|
|
1072
|
-
className: (0, import_clsx8.default)("tw-relative tw-w-full", wrapperClassName
|
|
1140
|
+
className: (0, import_clsx8.default)("tw-relative tw-w-full", wrapperClassName, {
|
|
1141
|
+
"tw-cursor-not-allowed": disabled
|
|
1142
|
+
}),
|
|
1073
1143
|
ref: dropdownRef,
|
|
1074
1144
|
onMouseEnter: handleMouseEnter,
|
|
1075
1145
|
onMouseLeave: handleMouseLeave,
|
|
1076
1146
|
children: [
|
|
1077
|
-
/* @__PURE__ */ (0,
|
|
1078
|
-
/* @__PURE__ */ (0,
|
|
1147
|
+
/* @__PURE__ */ (0, import_jsx_runtime14.jsxs)("div", { className: "tw-relative", children: [
|
|
1148
|
+
/* @__PURE__ */ (0, import_jsx_runtime14.jsx)(
|
|
1079
1149
|
"input",
|
|
1080
1150
|
{
|
|
1081
1151
|
ref: inputRef,
|
|
@@ -1098,7 +1168,8 @@ var Select = ({
|
|
|
1098
1168
|
variantClasses,
|
|
1099
1169
|
{
|
|
1100
1170
|
"tw-bg-white": valueSelected || getDisplayValue() || isFocused,
|
|
1101
|
-
"tw-bg-color-gray-5": !valueSelected || !getDisplayValue()
|
|
1171
|
+
"tw-bg-color-gray-5": !valueSelected || !getDisplayValue(),
|
|
1172
|
+
"!tw-bg-[#F8F7F6] tw-cursor-not-allowed tw-pointer-events-none": disabled
|
|
1102
1173
|
},
|
|
1103
1174
|
// Conditional padding based on label presence
|
|
1104
1175
|
!label && "tw-flex tw-items-center",
|
|
@@ -1118,7 +1189,7 @@ var Select = ({
|
|
|
1118
1189
|
readOnly: !isFocused || !enableSearch
|
|
1119
1190
|
}
|
|
1120
1191
|
),
|
|
1121
|
-
label && /* @__PURE__ */ (0,
|
|
1192
|
+
label && size !== "small" && /* @__PURE__ */ (0, import_jsx_runtime14.jsxs)(
|
|
1122
1193
|
"label",
|
|
1123
1194
|
{
|
|
1124
1195
|
htmlFor: id,
|
|
@@ -1130,47 +1201,59 @@ var Select = ({
|
|
|
1130
1201
|
),
|
|
1131
1202
|
children: [
|
|
1132
1203
|
label,
|
|
1133
|
-
mandatory && /* @__PURE__ */ (0,
|
|
1204
|
+
mandatory && /* @__PURE__ */ (0, import_jsx_runtime14.jsx)("span", { className: "tw-text-color-text-critical tw-ml-1", children: "*" })
|
|
1134
1205
|
]
|
|
1135
1206
|
}
|
|
1136
1207
|
),
|
|
1137
|
-
/* @__PURE__ */ (0,
|
|
1208
|
+
/* @__PURE__ */ (0, import_jsx_runtime14.jsxs)(
|
|
1138
1209
|
"div",
|
|
1139
1210
|
{
|
|
1140
1211
|
className: (0, import_clsx8.default)(
|
|
1141
|
-
"tw-absolute tw-right-3 tw
|
|
1212
|
+
"tw-absolute tw-right-3 tw--translate-y-1/2 tw-flex tw-items-center",
|
|
1142
1213
|
{
|
|
1143
|
-
"!tw-right-[5px]": doubleCharSearch && !(isHovering && selectedValue && allowClear)
|
|
1214
|
+
"!tw-right-[5px]": doubleCharSearch && !(isHovering && selectedValue && allowClear),
|
|
1215
|
+
"tw-top-3.5 !tw-right-2": size === "small",
|
|
1216
|
+
"tw-top-1/2": size !== "small"
|
|
1144
1217
|
}
|
|
1145
1218
|
),
|
|
1146
|
-
children:
|
|
1147
|
-
"div",
|
|
1148
|
-
{
|
|
1149
|
-
|
|
1150
|
-
|
|
1151
|
-
|
|
1152
|
-
|
|
1153
|
-
|
|
1154
|
-
|
|
1155
|
-
|
|
1156
|
-
|
|
1157
|
-
|
|
1158
|
-
|
|
1159
|
-
|
|
1160
|
-
|
|
1161
|
-
|
|
1162
|
-
|
|
1163
|
-
|
|
1164
|
-
|
|
1165
|
-
|
|
1166
|
-
|
|
1167
|
-
|
|
1168
|
-
|
|
1169
|
-
|
|
1219
|
+
children: [
|
|
1220
|
+
disabled && /* @__PURE__ */ (0, import_jsx_runtime14.jsx)("div", { className: "tw-absolute tw-right-0 -tw-top-2", children: /* @__PURE__ */ (0, import_jsx_runtime14.jsx)(Lock, { size: 16 }) }),
|
|
1221
|
+
isLoading ? /* @__PURE__ */ (0, import_jsx_runtime14.jsx)("div", { children: /* @__PURE__ */ (0, import_jsx_runtime14.jsx)(LoadingSpinner_default, { size: "xs" }) }) : /* @__PURE__ */ (0, import_jsx_runtime14.jsx)(
|
|
1222
|
+
"div",
|
|
1223
|
+
{
|
|
1224
|
+
className: (0, import_clsx8.default)(
|
|
1225
|
+
"tw-transition-all tw-duration-200 tw-cursor-pointer tw-flex tw-items-center",
|
|
1226
|
+
// Only rotate chevron when open and not showing clear icon
|
|
1227
|
+
isOpen && !(isHovering && selectedValue && allowClear) && "-tw-rotate-180"
|
|
1228
|
+
),
|
|
1229
|
+
onMouseDown: (e) => {
|
|
1230
|
+
if (isHovering && selectedValue && allowClear) {
|
|
1231
|
+
handleClear(e);
|
|
1232
|
+
} else {
|
|
1233
|
+
handleChevronClick(e);
|
|
1234
|
+
}
|
|
1235
|
+
},
|
|
1236
|
+
children: disabled ? null : isHovering && selectedValue && allowClear ? /* @__PURE__ */ (0, import_jsx_runtime14.jsx)(
|
|
1237
|
+
CrossV2,
|
|
1238
|
+
{
|
|
1239
|
+
color: "#111827",
|
|
1240
|
+
className: (0, import_clsx8.default)({ "tw-mr-1": size !== "small" }),
|
|
1241
|
+
size: size === "small" ? 12 : 16
|
|
1242
|
+
}
|
|
1243
|
+
) : /* @__PURE__ */ (0, import_jsx_runtime14.jsx)(
|
|
1244
|
+
Chevron2,
|
|
1245
|
+
{
|
|
1246
|
+
className: (0, import_clsx8.default)("tw-text-gray-400"),
|
|
1247
|
+
color: "#6B7280"
|
|
1248
|
+
}
|
|
1249
|
+
)
|
|
1250
|
+
}
|
|
1251
|
+
)
|
|
1252
|
+
]
|
|
1170
1253
|
}
|
|
1171
1254
|
)
|
|
1172
1255
|
] }),
|
|
1173
|
-
isOpen && /* @__PURE__ */ (0,
|
|
1256
|
+
isOpen && /* @__PURE__ */ (0, import_jsx_runtime14.jsx)(
|
|
1174
1257
|
"div",
|
|
1175
1258
|
{
|
|
1176
1259
|
className: (0, import_clsx8.default)(
|
|
@@ -1180,7 +1263,7 @@ var Select = ({
|
|
|
1180
1263
|
dropdownClassName
|
|
1181
1264
|
),
|
|
1182
1265
|
ref: optionListRef,
|
|
1183
|
-
children: filteredOptions.length > 0 ? filteredOptions.map((option, index) => /* @__PURE__ */ (0,
|
|
1266
|
+
children: filteredOptions.length > 0 ? filteredOptions.map((option, index) => /* @__PURE__ */ (0, import_jsx_runtime14.jsx)(
|
|
1184
1267
|
"div",
|
|
1185
1268
|
{
|
|
1186
1269
|
ref: (el) => optionRefs.current[index] = el,
|
|
@@ -1191,7 +1274,7 @@ var Select = ({
|
|
|
1191
1274
|
// Selected option styling
|
|
1192
1275
|
optionClassName
|
|
1193
1276
|
),
|
|
1194
|
-
children: /* @__PURE__ */ (0,
|
|
1277
|
+
children: /* @__PURE__ */ (0, import_jsx_runtime14.jsx)(
|
|
1195
1278
|
"div",
|
|
1196
1279
|
{
|
|
1197
1280
|
className: (0, import_clsx8.default)(
|
|
@@ -1209,12 +1292,12 @@ var Select = ({
|
|
|
1209
1292
|
)
|
|
1210
1293
|
},
|
|
1211
1294
|
doubleCharSearch ? option.label : option.value
|
|
1212
|
-
)) : /* @__PURE__ */ (0,
|
|
1295
|
+
)) : /* @__PURE__ */ (0, import_jsx_runtime14.jsx)("div", { className: "tw-px-4 tw-py-3 tw-text-gray-500 tw-text-sm", children: "No options found" })
|
|
1213
1296
|
}
|
|
1214
1297
|
)
|
|
1215
1298
|
]
|
|
1216
1299
|
}
|
|
1217
|
-
);
|
|
1300
|
+
) });
|
|
1218
1301
|
};
|
|
1219
1302
|
var arePropsEqual = (prevProps, nextProps) => {
|
|
1220
1303
|
var _a, _b;
|
|
@@ -1247,10 +1330,10 @@ var arePropsEqual = (prevProps, nextProps) => {
|
|
|
1247
1330
|
return true;
|
|
1248
1331
|
};
|
|
1249
1332
|
Select.displayName = "Select";
|
|
1250
|
-
var Select_default = (0,
|
|
1333
|
+
var Select_default = (0, import_react2.memo)(Select, arePropsEqual);
|
|
1251
1334
|
|
|
1252
1335
|
// src/atom/RangePicker/RangePicker.tsx
|
|
1253
|
-
var
|
|
1336
|
+
var import_jsx_runtime15 = require("react/jsx-runtime");
|
|
1254
1337
|
function CustomRangePicker(props) {
|
|
1255
1338
|
var _a, _b;
|
|
1256
1339
|
const {
|
|
@@ -1277,8 +1360,8 @@ function CustomRangePicker(props) {
|
|
|
1277
1360
|
showToastError = () => {
|
|
1278
1361
|
}
|
|
1279
1362
|
} = props;
|
|
1280
|
-
const onChangeRef = (0,
|
|
1281
|
-
(0,
|
|
1363
|
+
const onChangeRef = (0, import_react3.useRef)(onChange);
|
|
1364
|
+
(0, import_react3.useEffect)(() => {
|
|
1282
1365
|
onChangeRef.current = onChange;
|
|
1283
1366
|
}, [onChange]);
|
|
1284
1367
|
const getInitialDate = () => {
|
|
@@ -1309,18 +1392,18 @@ function CustomRangePicker(props) {
|
|
|
1309
1392
|
}
|
|
1310
1393
|
return /* @__PURE__ */ new Date();
|
|
1311
1394
|
};
|
|
1312
|
-
const [currentDate, setCurrentDate] = (0,
|
|
1313
|
-
const [startDate, setStartDate] = (0,
|
|
1395
|
+
const [currentDate, setCurrentDate] = (0, import_react3.useState)(() => getInitialDate());
|
|
1396
|
+
const [startDate, setStartDate] = (0, import_react3.useState)(
|
|
1314
1397
|
dateRange[0] ? new Date(dateRange[0]) : null
|
|
1315
1398
|
);
|
|
1316
|
-
const [endDate, setEndDate] = (0,
|
|
1399
|
+
const [endDate, setEndDate] = (0, import_react3.useState)(
|
|
1317
1400
|
dateRange[0] && dateRange[1] ? new Date(dateRange[1]) : null
|
|
1318
1401
|
);
|
|
1319
|
-
const [hoverDate, setHoverDate] = (0,
|
|
1320
|
-
const [isSelectingEnd, setIsSelectingEnd] = (0,
|
|
1402
|
+
const [hoverDate, setHoverDate] = (0, import_react3.useState)(null);
|
|
1403
|
+
const [isSelectingEnd, setIsSelectingEnd] = (0, import_react3.useState)(
|
|
1321
1404
|
dateRange[0] && !dateRange[1] ? true : false
|
|
1322
1405
|
);
|
|
1323
|
-
const [selectedDate, setSelectedDate] = (0,
|
|
1406
|
+
const [selectedDate, setSelectedDate] = (0, import_react3.useState)(
|
|
1324
1407
|
!isRange && dateRange[0] ? new Date(dateRange[0]) : null
|
|
1325
1408
|
);
|
|
1326
1409
|
const getDaysBetween = (start, end) => {
|
|
@@ -1491,7 +1574,7 @@ function CustomRangePicker(props) {
|
|
|
1491
1574
|
setHoverDate(null);
|
|
1492
1575
|
}
|
|
1493
1576
|
};
|
|
1494
|
-
(0,
|
|
1577
|
+
(0, import_react3.useEffect)(() => {
|
|
1495
1578
|
if (isRange) {
|
|
1496
1579
|
sessionStorage.removeItem("rangePickerStartDate");
|
|
1497
1580
|
onChangeRef.current(null, [
|
|
@@ -1506,7 +1589,7 @@ function CustomRangePicker(props) {
|
|
|
1506
1589
|
);
|
|
1507
1590
|
}
|
|
1508
1591
|
}, [startDate, endDate, isRange]);
|
|
1509
|
-
(0,
|
|
1592
|
+
(0, import_react3.useEffect)(() => {
|
|
1510
1593
|
if (!isRange && selectedDate) {
|
|
1511
1594
|
onChangeRef.current(null, (0, import_dayjs.default)(selectedDate).format("D MMM, YYYY"));
|
|
1512
1595
|
}
|
|
@@ -1571,8 +1654,8 @@ function CustomRangePicker(props) {
|
|
|
1571
1654
|
};
|
|
1572
1655
|
const isSameDay = ((_a = (0, import_dayjs.default)(startDate)) == null ? void 0 : _a.format("D MMM, YYYY")) === ((_b = (0, import_dayjs.default)(endDate)) == null ? void 0 : _b.format("D MMM, YYYY"));
|
|
1573
1656
|
const NightCountTooltip = () => {
|
|
1574
|
-
const TooltipArrow = (0,
|
|
1575
|
-
return /* @__PURE__ */ (0,
|
|
1657
|
+
const TooltipArrow = (0, import_react3.memo)(() => {
|
|
1658
|
+
return /* @__PURE__ */ (0, import_jsx_runtime15.jsx)("div", { className: "tw-w-3 tw-h-3 tw-flex tw-items-center tw-justify-center tw-rounded tw-bg-transparent tw-rotate-90", children: /* @__PURE__ */ (0, import_jsx_runtime15.jsx)(
|
|
1576
1659
|
"div",
|
|
1577
1660
|
{
|
|
1578
1661
|
style: {
|
|
@@ -1583,16 +1666,16 @@ function CustomRangePicker(props) {
|
|
|
1583
1666
|
}
|
|
1584
1667
|
) });
|
|
1585
1668
|
});
|
|
1586
|
-
return /* @__PURE__ */ (0,
|
|
1669
|
+
return /* @__PURE__ */ (0, import_jsx_runtime15.jsxs)("div", { className: "tw-absolute tw-bottom-11 tw-py-2 tw-bg-black tw-text-white tw-px-2 tw-rounded-lg tw-z-50 tw-text-xs tw-whitespace-nowrap tw-opacity-0 tw-pointer-events-none group-hover:tw-opacity-100 tw-transition-opacity tw-duration-200", children: [
|
|
1587
1670
|
nightCountText,
|
|
1588
|
-
/* @__PURE__ */ (0,
|
|
1671
|
+
/* @__PURE__ */ (0, import_jsx_runtime15.jsx)("div", { className: "tw-absolute tw-right-[42%] tw-bottom-[-7px]", children: /* @__PURE__ */ (0, import_jsx_runtime15.jsx)(TooltipArrow, {}) })
|
|
1589
1672
|
] });
|
|
1590
1673
|
};
|
|
1591
1674
|
const renderCalendar = (monthDate, isSecondCalendar = false) => {
|
|
1592
1675
|
const days = generateCalendarDays(monthDate);
|
|
1593
1676
|
const monthName = monthNames[monthDate.getMonth()];
|
|
1594
1677
|
const year = monthDate.getFullYear();
|
|
1595
|
-
return /* @__PURE__ */ (0,
|
|
1678
|
+
return /* @__PURE__ */ (0, import_jsx_runtime15.jsxs)(
|
|
1596
1679
|
"div",
|
|
1597
1680
|
{
|
|
1598
1681
|
className: (0, import_clsx9.default)("tw-flex-1 tw-max-w-[83vw] tw-mb-2", {
|
|
@@ -1600,13 +1683,13 @@ function CustomRangePicker(props) {
|
|
|
1600
1683
|
"tw-h-[290px]": !showYearDropdown || days.length <= 35
|
|
1601
1684
|
}),
|
|
1602
1685
|
children: [
|
|
1603
|
-
/* @__PURE__ */ (0,
|
|
1604
|
-
/* @__PURE__ */ (0,
|
|
1686
|
+
/* @__PURE__ */ (0, import_jsx_runtime15.jsx)("div", { className: "tw-text-center tw-mb-4 sm:tw-mt-0", children: /* @__PURE__ */ (0, import_jsx_runtime15.jsxs)("div", { className: " tw-flex tw-justify-center tw-items-center tw-gap-4 ", children: [
|
|
1687
|
+
/* @__PURE__ */ (0, import_jsx_runtime15.jsxs)("h3", { className: "tw-typography-footNoteBold tw-text-color-text-default tw-m-0", children: [
|
|
1605
1688
|
monthName,
|
|
1606
1689
|
" ",
|
|
1607
1690
|
!showYearDropdown && ` ${year}`
|
|
1608
1691
|
] }),
|
|
1609
|
-
showYearDropdown && /* @__PURE__ */ (0,
|
|
1692
|
+
showYearDropdown && /* @__PURE__ */ (0, import_jsx_runtime15.jsx)(
|
|
1610
1693
|
Select_default,
|
|
1611
1694
|
{
|
|
1612
1695
|
options: yearOptions,
|
|
@@ -1628,7 +1711,7 @@ function CustomRangePicker(props) {
|
|
|
1628
1711
|
}
|
|
1629
1712
|
)
|
|
1630
1713
|
] }) }),
|
|
1631
|
-
/* @__PURE__ */ (0,
|
|
1714
|
+
/* @__PURE__ */ (0, import_jsx_runtime15.jsx)("div", { className: "tw-grid tw-grid-cols-7 tw-mb-2", children: dayNames.map((day) => /* @__PURE__ */ (0, import_jsx_runtime15.jsx)(
|
|
1632
1715
|
"div",
|
|
1633
1716
|
{
|
|
1634
1717
|
className: "tw-py-2 tw-px-0 tw-text-center tw-typography-caption2 tw-text-[#6B7280]",
|
|
@@ -1636,9 +1719,9 @@ function CustomRangePicker(props) {
|
|
|
1636
1719
|
},
|
|
1637
1720
|
day
|
|
1638
1721
|
)) }),
|
|
1639
|
-
/* @__PURE__ */ (0,
|
|
1722
|
+
/* @__PURE__ */ (0, import_jsx_runtime15.jsx)("div", { className: "tw-grid tw-grid-cols-7", children: days.map((date, index) => {
|
|
1640
1723
|
if (!date) {
|
|
1641
|
-
return /* @__PURE__ */ (0,
|
|
1724
|
+
return /* @__PURE__ */ (0, import_jsx_runtime15.jsx)("div", { className: "tw-h-10" }, index);
|
|
1642
1725
|
}
|
|
1643
1726
|
const isStart = isRange ? isSameDate(date, startDate) : false;
|
|
1644
1727
|
const isEnd = isRange ? isSameDate(date, endDate) : false;
|
|
@@ -1688,8 +1771,8 @@ function CustomRangePicker(props) {
|
|
|
1688
1771
|
(0, import_dayjs.default)(startDate),
|
|
1689
1772
|
"day"
|
|
1690
1773
|
);
|
|
1691
|
-
return /* @__PURE__ */ (0,
|
|
1692
|
-
(isStart || isEnd) && startDate && endDate && !isSameDay && isRange && /* @__PURE__ */ (0,
|
|
1774
|
+
return /* @__PURE__ */ (0, import_jsx_runtime15.jsxs)("div", { className: "tw-relative", children: [
|
|
1775
|
+
(isStart || isEnd) && startDate && endDate && !isSameDay && isRange && /* @__PURE__ */ (0, import_jsx_runtime15.jsx)(
|
|
1693
1776
|
"div",
|
|
1694
1777
|
{
|
|
1695
1778
|
className: (0, import_clsx9.default)(
|
|
@@ -1702,8 +1785,8 @@ function CustomRangePicker(props) {
|
|
|
1702
1785
|
)
|
|
1703
1786
|
}
|
|
1704
1787
|
),
|
|
1705
|
-
isHoveringDate && isHovering && /* @__PURE__ */ (0,
|
|
1706
|
-
/* @__PURE__ */ (0,
|
|
1788
|
+
isHoveringDate && isHovering && /* @__PURE__ */ (0, import_jsx_runtime15.jsxs)(import_jsx_runtime15.Fragment, { children: [
|
|
1789
|
+
/* @__PURE__ */ (0, import_jsx_runtime15.jsx)(
|
|
1707
1790
|
"div",
|
|
1708
1791
|
{
|
|
1709
1792
|
className: (0, import_clsx9.default)(
|
|
@@ -1716,7 +1799,7 @@ function CustomRangePicker(props) {
|
|
|
1716
1799
|
)
|
|
1717
1800
|
}
|
|
1718
1801
|
),
|
|
1719
|
-
/* @__PURE__ */ (0,
|
|
1802
|
+
/* @__PURE__ */ (0, import_jsx_runtime15.jsx)(
|
|
1720
1803
|
"div",
|
|
1721
1804
|
{
|
|
1722
1805
|
className: (0, import_clsx9.default)(
|
|
@@ -1729,8 +1812,8 @@ function CustomRangePicker(props) {
|
|
|
1729
1812
|
}
|
|
1730
1813
|
)
|
|
1731
1814
|
] }),
|
|
1732
|
-
isStart && /* @__PURE__ */ (0,
|
|
1733
|
-
/* @__PURE__ */ (0,
|
|
1815
|
+
isStart && /* @__PURE__ */ (0, import_jsx_runtime15.jsxs)(import_jsx_runtime15.Fragment, { children: [
|
|
1816
|
+
/* @__PURE__ */ (0, import_jsx_runtime15.jsx)(
|
|
1734
1817
|
"div",
|
|
1735
1818
|
{
|
|
1736
1819
|
className: (0, import_clsx9.default)(
|
|
@@ -1743,7 +1826,7 @@ function CustomRangePicker(props) {
|
|
|
1743
1826
|
)
|
|
1744
1827
|
}
|
|
1745
1828
|
),
|
|
1746
|
-
/* @__PURE__ */ (0,
|
|
1829
|
+
/* @__PURE__ */ (0, import_jsx_runtime15.jsx)(
|
|
1747
1830
|
"div",
|
|
1748
1831
|
{
|
|
1749
1832
|
className: (0, import_clsx9.default)(
|
|
@@ -1756,7 +1839,7 @@ function CustomRangePicker(props) {
|
|
|
1756
1839
|
}
|
|
1757
1840
|
)
|
|
1758
1841
|
] }),
|
|
1759
|
-
/* @__PURE__ */ (0,
|
|
1842
|
+
/* @__PURE__ */ (0, import_jsx_runtime15.jsxs)(
|
|
1760
1843
|
"div",
|
|
1761
1844
|
{
|
|
1762
1845
|
className: (0, import_clsx9.default)(className, pseudoClass, "tw-group", {
|
|
@@ -1766,7 +1849,7 @@ function CustomRangePicker(props) {
|
|
|
1766
1849
|
onMouseEnter: () => handleDateHover(date),
|
|
1767
1850
|
"data-date": titleDate,
|
|
1768
1851
|
children: [
|
|
1769
|
-
showNightCount && isRange && isHovering && /* @__PURE__ */ (0,
|
|
1852
|
+
showNightCount && isRange && isHovering && /* @__PURE__ */ (0, import_jsx_runtime15.jsx)(NightCountTooltip, {}),
|
|
1770
1853
|
date.getDate()
|
|
1771
1854
|
]
|
|
1772
1855
|
}
|
|
@@ -1777,7 +1860,8 @@ function CustomRangePicker(props) {
|
|
|
1777
1860
|
}
|
|
1778
1861
|
);
|
|
1779
1862
|
};
|
|
1780
|
-
|
|
1863
|
+
const arrowClasses = "tw-relative tw-top-3 sm:tw-top-0 tw-cursor-pointer tw-rounded-full tw-w-10 tw-h-10 tw-flex tw-justify-center hover:tw-bg-gray-100 tw-items-center";
|
|
1864
|
+
return /* @__PURE__ */ (0, import_jsx_runtime15.jsxs)(
|
|
1781
1865
|
"div",
|
|
1782
1866
|
{
|
|
1783
1867
|
className: (0, import_clsx9.default)(
|
|
@@ -1788,36 +1872,42 @@ function CustomRangePicker(props) {
|
|
|
1788
1872
|
}
|
|
1789
1873
|
),
|
|
1790
1874
|
children: [
|
|
1791
|
-
/* @__PURE__ */ (0,
|
|
1792
|
-
!isPreviousMonthDisabled() && /* @__PURE__ */ (0,
|
|
1875
|
+
/* @__PURE__ */ (0, import_jsx_runtime15.jsxs)("div", { className: "tw-flex tw-items-center tw-px-4 tw-justify-between tw-mb-4 tw-absolute tw-right-0 tw-left-0 tw-top-0.5 sm:tw-top-4 tw-w-auto", children: [
|
|
1876
|
+
!isPreviousMonthDisabled() && /* @__PURE__ */ (0, import_jsx_runtime15.jsx)(
|
|
1793
1877
|
"div",
|
|
1794
1878
|
{
|
|
1795
|
-
className:
|
|
1879
|
+
className: (0, import_clsx9.default)(arrowClasses, "tw-left-1"),
|
|
1796
1880
|
onClick: () => navigateMonth(-1),
|
|
1797
1881
|
id: "calendar-previous-month-button",
|
|
1798
|
-
children: /* @__PURE__ */ (0,
|
|
1882
|
+
children: /* @__PURE__ */ (0, import_jsx_runtime15.jsx)(
|
|
1883
|
+
Chevron,
|
|
1884
|
+
{
|
|
1885
|
+
size: "medium",
|
|
1886
|
+
className: "tw-relative -tw-top-0.5 tw-right-0.5"
|
|
1887
|
+
}
|
|
1888
|
+
)
|
|
1799
1889
|
}
|
|
1800
1890
|
),
|
|
1801
|
-
isPreviousMonthDisabled() && /* @__PURE__ */ (0,
|
|
1802
|
-
!isNextMonthDisabled() && /* @__PURE__ */ (0,
|
|
1891
|
+
isPreviousMonthDisabled() && /* @__PURE__ */ (0, import_jsx_runtime15.jsx)("div", { className: "tw-w-10 tw-h-10" }),
|
|
1892
|
+
!isNextMonthDisabled() && /* @__PURE__ */ (0, import_jsx_runtime15.jsx)(
|
|
1803
1893
|
"div",
|
|
1804
1894
|
{
|
|
1805
|
-
className:
|
|
1895
|
+
className: (0, import_clsx9.default)(arrowClasses, "tw-mt-[1px] tw-right-1"),
|
|
1806
1896
|
onClick: () => navigateMonth(1),
|
|
1807
1897
|
id: "calendar-next-month-button",
|
|
1808
|
-
children: /* @__PURE__ */ (0,
|
|
1898
|
+
children: /* @__PURE__ */ (0, import_jsx_runtime15.jsx)(
|
|
1809
1899
|
Chevron,
|
|
1810
1900
|
{
|
|
1811
1901
|
size: "medium",
|
|
1812
1902
|
onClick: () => navigateMonth(1),
|
|
1813
|
-
className: "tw-rotate-180"
|
|
1903
|
+
className: "tw-rotate-180 tw-relative tw-top-0.5 tw-left-0.5"
|
|
1814
1904
|
}
|
|
1815
1905
|
)
|
|
1816
1906
|
}
|
|
1817
1907
|
),
|
|
1818
|
-
isNextMonthDisabled() && /* @__PURE__ */ (0,
|
|
1908
|
+
isNextMonthDisabled() && /* @__PURE__ */ (0, import_jsx_runtime15.jsx)("div", { className: "tw-w-10 tw-h-10" })
|
|
1819
1909
|
] }),
|
|
1820
|
-
/* @__PURE__ */ (0,
|
|
1910
|
+
/* @__PURE__ */ (0, import_jsx_runtime15.jsx)("div", { className: "tw-flex tw-items-center tw-justify-between tw-px-6 tw-border-solid tw-border-color-gray-100 tw-border-b tw-border-t-0 tw-border-l-0 tw-border-r-0 tw-w-auto", children: /* @__PURE__ */ (0, import_jsx_runtime15.jsxs)(
|
|
1821
1911
|
"div",
|
|
1822
1912
|
{
|
|
1823
1913
|
className: (0, import_clsx9.default)("tw-flex tw-w-full", {
|
|
@@ -1845,6 +1935,7 @@ var RangePicker_default = CustomRangePicker;
|
|
|
1845
1935
|
Avatar,
|
|
1846
1936
|
Button,
|
|
1847
1937
|
Checkbox,
|
|
1938
|
+
LoadingSpinner,
|
|
1848
1939
|
Modal,
|
|
1849
1940
|
Radio,
|
|
1850
1941
|
RangePicker,
|