@ctlyst.id/internal-ui 3.1.4 → 3.1.6

Sign up to get free protection for your applications and to get access to all the features.
package/dist/index.mjs CHANGED
@@ -1083,7 +1083,7 @@ var DataTable = React5.forwardRef(
1083
1083
  React5.useImperativeHandle(ref, () => ({
1084
1084
  toggleAllRowsSelected
1085
1085
  }));
1086
- return /* @__PURE__ */ jsx24(Box11, { overflowX: "auto", position: "relative", maxW: "100%", minH: 400, w: "full", ...container, children: isLoading ? /* @__PURE__ */ jsxs8(Table, { ...styles == null ? void 0 : styles.table, "data-loading": "true", children: [
1086
+ return /* @__PURE__ */ jsx24(Box11, { overflowX: "auto", position: "relative", maxW: "100%", w: "full", ...container, children: isLoading ? /* @__PURE__ */ jsxs8(Table, { ...styles == null ? void 0 : styles.table, "data-loading": "true", children: [
1087
1087
  /* @__PURE__ */ jsx24(Thead, { ...(styles == null ? void 0 : styles.tableHead, headerSticky ? { position: "sticky", top: 0, bg: "white", zIndex: 1 } : {}), children: table.getHeaderGroups().map((headerGroup) => /* @__PURE__ */ jsx24(Tr, { mx: "2", ...styles == null ? void 0 : styles.tableRow, children: headerGroup.headers.map((header, index) => /* @__PURE__ */ jsx24(
1088
1088
  Th,
1089
1089
  {
@@ -1103,49 +1103,56 @@ var DataTable = React5.forwardRef(
1103
1103
  },
1104
1104
  header.id
1105
1105
  )) }, headerGroup.id)) }),
1106
- /* @__PURE__ */ jsx24(Tbody, { children: [...Array(5)].map((num) => /* @__PURE__ */ jsx24(Tr, { mx: "2", children: [...Array(generateColumn().length)].map((i) => /* @__PURE__ */ jsx24(Td, { width: 210, children: /* @__PURE__ */ jsx24(Skeleton2, { startColor: "gray.50", endColor: "gray.100", h: "30px", w: "100%" }, i) }, i)) }, num)) })
1106
+ /* @__PURE__ */ jsx24(Tbody, { children: [...Array(5)].map((num) => /* @__PURE__ */ jsx24(Tr, { mx: "2", children: [...Array(generateColumn().length)].map((i) => /* @__PURE__ */ jsx24(Td, { width: 210, children: /* @__PURE__ */ jsx24(Skeleton2, { startColor: "neutral.100", endColor: "neutral.200", h: "20px", w: "70%" }, i) }, i)) }, num)) })
1107
1107
  ] }) : /* @__PURE__ */ jsxs8(Table, { ...styles == null ? void 0 : styles.table, children: [
1108
- /* @__PURE__ */ jsx24(Thead, { ...(styles == null ? void 0 : styles.tableHead, headerSticky ? { position: "sticky", top: 0, bg: "white", zIndex: 1 } : {}), children: table.getHeaderGroups().map((headerGroup) => /* @__PURE__ */ jsx24(Tr, { bg: useColorModeValue("initial", "ebony-clay.700"), ...styles == null ? void 0 : styles.tableRow, children: headerGroup.headers.map((header, index) => {
1109
- var _a;
1110
- return /* @__PURE__ */ jsx24(
1111
- Th,
1112
- {
1113
- colSpan: header.colSpan,
1114
- sx: getCommonPinningStyles(header.column),
1115
- width: `${header.getSize() + (index === 0 || index === headerGroup.headers.length - 1 ? 16 : 0)}px`,
1116
- ...styles == null ? void 0 : styles.tableColumnHeader,
1117
- children: /* @__PURE__ */ jsxs8(
1118
- Flex2,
1108
+ /* @__PURE__ */ jsx24(
1109
+ Thead,
1110
+ {
1111
+ maxH: "50px",
1112
+ ...(styles == null ? void 0 : styles.tableHead, headerSticky ? { position: "sticky", top: 0, bg: "white", zIndex: 1 } : {}),
1113
+ children: table.getHeaderGroups().map((headerGroup) => /* @__PURE__ */ jsx24(Tr, { bg: useColorModeValue("initial", "ebony-clay.700"), ...styles == null ? void 0 : styles.tableRow, children: headerGroup.headers.map((header, index) => {
1114
+ var _a;
1115
+ return /* @__PURE__ */ jsx24(
1116
+ Th,
1119
1117
  {
1120
- backgroundColor: "white",
1121
- height: "100%",
1122
- "data-test-id": `CT_Container_TableHeader_${header.id}`,
1123
- textTransform: "capitalize",
1124
- userSelect: "none",
1125
- align: "center",
1126
- gap: 2,
1127
- children: [
1128
- /* @__PURE__ */ jsx24(Text4, { children: flexRender(header.column.columnDef.header, header.getContext()) }),
1129
- /* @__PURE__ */ jsx24(
1130
- Box11,
1131
- {
1132
- as: "span",
1133
- cursor: header.column.getCanSort() ? "pointer" : "default",
1134
- "data-test-id": `CT_Container_SortingIcon_${header.id}`,
1135
- onClick: header.column.getToggleSortingHandler(),
1136
- children: (_a = header.column.getCanSort() && {
1137
- asc: /* @__PURE__ */ jsx24(ChevronUpIcon, { h: 4, w: 4, color: "neutral.500" }),
1138
- desc: /* @__PURE__ */ jsx24(ChevronDownIcon, { h: 4, w: 4, color: "neutral.500" })
1139
- }[header.column.getIsSorted()]) != null ? _a : /* @__PURE__ */ jsx24(UpDownIcon, { h: 4, w: 4, color: "neutral.500" })
1140
- }
1141
- )
1142
- ]
1143
- }
1144
- )
1145
- },
1146
- header.id
1147
- );
1148
- }) }, headerGroup.id)) }),
1118
+ colSpan: header.colSpan,
1119
+ sx: getCommonPinningStyles(header.column),
1120
+ width: `${header.getSize() + (index === 0 || index === headerGroup.headers.length - 1 ? 16 : 0)}px`,
1121
+ ...styles == null ? void 0 : styles.tableColumnHeader,
1122
+ children: /* @__PURE__ */ jsxs8(
1123
+ Flex2,
1124
+ {
1125
+ backgroundColor: "white",
1126
+ height: "100%",
1127
+ "data-test-id": `CT_Container_TableHeader_${header.id}`,
1128
+ textTransform: "capitalize",
1129
+ userSelect: "none",
1130
+ align: "center",
1131
+ gap: 2,
1132
+ children: [
1133
+ /* @__PURE__ */ jsx24(Text4, { children: flexRender(header.column.columnDef.header, header.getContext()) }),
1134
+ /* @__PURE__ */ jsx24(
1135
+ Box11,
1136
+ {
1137
+ as: "span",
1138
+ cursor: header.column.getCanSort() ? "pointer" : "default",
1139
+ "data-test-id": `CT_Container_SortingIcon_${header.id}`,
1140
+ onClick: header.column.getToggleSortingHandler(),
1141
+ children: (_a = header.column.getCanSort() && {
1142
+ asc: /* @__PURE__ */ jsx24(ChevronUpIcon, { h: 4, w: 4, color: "neutral.500" }),
1143
+ desc: /* @__PURE__ */ jsx24(ChevronDownIcon, { h: 4, w: 4, color: "neutral.500" })
1144
+ }[header.column.getIsSorted()]) != null ? _a : /* @__PURE__ */ jsx24(Box11, { display: "flex", justifyContent: "center", alignItems: "center", boxSize: 4, children: /* @__PURE__ */ jsx24(UpDownIcon, { color: "neutral.500" }) })
1145
+ }
1146
+ )
1147
+ ]
1148
+ }
1149
+ )
1150
+ },
1151
+ header.id
1152
+ );
1153
+ }) }, headerGroup.id))
1154
+ }
1155
+ ),
1149
1156
  /* @__PURE__ */ jsx24(Tbody, { ...styles == null ? void 0 : styles.tableBody, children: table.getRowModel().rows.map((row) => {
1150
1157
  const trRef = useRef();
1151
1158
  return /* @__PURE__ */ jsx24(
@@ -2557,33 +2564,45 @@ import {
2557
2564
  Portal,
2558
2565
  Tooltip as ChakraTooltip
2559
2566
  } from "@chakra-ui/react";
2560
- import { jsx as jsx35, jsxs as jsxs14 } from "react/jsx-runtime";
2567
+ import { Fragment as Fragment3, jsx as jsx35, jsxs as jsxs14 } from "react/jsx-runtime";
2561
2568
  var Tooltip = (props) => {
2562
- const { children, bg = "neutral.700", textStyle = "text.sm", color = "white", width } = props;
2563
- const content = /* @__PURE__ */ jsxs14(
2569
+ const {
2570
+ children,
2571
+ bg = "neutral.700",
2572
+ textStyle = "text.sm",
2573
+ color = "white",
2574
+ width,
2575
+ borderRadius = 4,
2576
+ fontWeight = "400"
2577
+ } = props;
2578
+ const content = ({ onClose }) => /* @__PURE__ */ jsxs14(
2564
2579
  PopoverContent,
2565
2580
  {
2581
+ "data-test-id": "",
2566
2582
  border: "none",
2567
2583
  bg,
2568
2584
  textStyle,
2569
2585
  width,
2570
- ml: 1,
2571
2586
  placeItems: "center",
2572
- borderRadius: props.borderRadius,
2587
+ borderRadius,
2588
+ onClick: (e) => {
2589
+ e.stopPropagation();
2590
+ onClose();
2591
+ },
2573
2592
  children: [
2574
2593
  props.hasArrow && /* @__PURE__ */ jsx35(PopoverArrow, { color, bg, shadow: "none" }),
2575
- /* @__PURE__ */ jsx35(PopoverBody, { color, ...props, children: props.label })
2594
+ /* @__PURE__ */ jsx35(PopoverBody, { color, ...props, fontWeight, children: props.label })
2576
2595
  ]
2577
2596
  }
2578
2597
  );
2579
- return props.isInteractive === true ? /* @__PURE__ */ jsxs14(Popover, { trigger: "hover", placement: props.placement, ...props.popoverProps, children: [
2598
+ return props.isInteractive === true ? /* @__PURE__ */ jsx35(Popover, { trigger: "hover", placement: props.placement, ...props.popoverProps, children: ({ onClose }) => /* @__PURE__ */ jsxs14(Fragment3, { children: [
2580
2599
  /* @__PURE__ */ jsx35(PopoverTrigger, { children }),
2581
- props.portal ? /* @__PURE__ */ jsx35(Portal, { children: content }) : content
2582
- ] }) : /* @__PURE__ */ jsx35(ChakraTooltip, { ...props, children });
2600
+ props.portal ? /* @__PURE__ */ jsx35(Portal, { children: content({ onClose }) }) : content({ onClose })
2601
+ ] }) }) : /* @__PURE__ */ jsx35(ChakraTooltip, { ...props, children });
2583
2602
  };
2584
2603
 
2585
2604
  // src/components/header/components/profile.tsx
2586
- import { Fragment as Fragment3, jsx as jsx36, jsxs as jsxs15 } from "react/jsx-runtime";
2605
+ import { Fragment as Fragment4, jsx as jsx36, jsxs as jsxs15 } from "react/jsx-runtime";
2587
2606
  var Profile = ({
2588
2607
  color,
2589
2608
  brandColor,
@@ -2618,7 +2637,7 @@ var Profile = ({
2618
2637
  /* @__PURE__ */ jsxs15(VStack2, { alignItems: "flex-end", spacing: "0", ml: "2", color, children: [
2619
2638
  /* @__PURE__ */ jsx36(Text8, { textStyle: "text.xs", mb: "1", children: data == null ? void 0 : data.email }),
2620
2639
  /* @__PURE__ */ jsxs15(Flex5, { alignItems: "center", children: [
2621
- (data == null ? void 0 : data.userRole) && /* @__PURE__ */ jsxs15(Fragment3, { children: [
2640
+ (data == null ? void 0 : data.userRole) && /* @__PURE__ */ jsxs15(Fragment4, { children: [
2622
2641
  /* @__PURE__ */ jsx36(Text8, { textStyle: "text.xs", children: (data == null ? void 0 : data.userRole) || "user" }),
2623
2642
  !!((_a = data.office) == null ? void 0 : _a.length) && /* @__PURE__ */ jsx36(
2624
2643
  Box16,
@@ -2645,18 +2664,19 @@ var Profile = ({
2645
2664
  ] }),
2646
2665
  textAlign: "left",
2647
2666
  placement: "bottom-end",
2667
+ cursor: "text",
2668
+ portal: true,
2648
2669
  popoverProps: {
2649
2670
  offset: [10, 8]
2650
2671
  },
2651
- width: 186,
2672
+ width: 300,
2652
2673
  ...officeContainer,
2653
- children: /* @__PURE__ */ jsx36(Box16, { display: "flex", children: /* @__PURE__ */ jsxs15(
2674
+ children: /* @__PURE__ */ jsx36(Box16, { ml: 1, children: /* @__PURE__ */ jsxs15(
2654
2675
  badge_default,
2655
2676
  {
2656
- ml: "1",
2657
- pill: true,
2677
+ rounded: "full",
2658
2678
  variant: "neutral-light",
2659
- boxSize: "4.5",
2679
+ boxSize: "5",
2660
2680
  justifyContent: "center",
2661
2681
  p: "0.5",
2662
2682
  ...badgeStyle,
@@ -2717,14 +2737,14 @@ function environmentName(env) {
2717
2737
  }
2718
2738
 
2719
2739
  // src/components/header/components/version.tsx
2720
- import { Fragment as Fragment4, jsx as jsx38, jsxs as jsxs16 } from "react/jsx-runtime";
2740
+ import { Fragment as Fragment5, jsx as jsx38, jsxs as jsxs16 } from "react/jsx-runtime";
2721
2741
  var Version = ({
2722
2742
  hideEnv,
2723
2743
  version,
2724
2744
  environment,
2725
2745
  onOpenModalRelease,
2726
2746
  versionStyle
2727
- }) => /* @__PURE__ */ jsxs16(Fragment4, { children: [
2747
+ }) => /* @__PURE__ */ jsxs16(Fragment5, { children: [
2728
2748
  typeof version === "string" ? /* @__PURE__ */ jsx38(
2729
2749
  badge_default,
2730
2750
  {
@@ -2988,7 +3008,7 @@ var mappingIcon = /* @__PURE__ */ new Map([
2988
3008
  ]);
2989
3009
 
2990
3010
  // src/components/navigation/components/navigation.tsx
2991
- import { Fragment as Fragment5, jsx as jsx43, jsxs as jsxs18 } from "react/jsx-runtime";
3011
+ import { Fragment as Fragment6, jsx as jsx43, jsxs as jsxs18 } from "react/jsx-runtime";
2992
3012
  var Navigation = ({ navigations, activePath, as, host, ...props }) => {
2993
3013
  return /* @__PURE__ */ jsx43(Box21, { borderRadius: "md", overflowX: "auto", ...props, children: /* @__PURE__ */ jsx43(
2994
3014
  Flex9,
@@ -3005,7 +3025,7 @@ var Navigation = ({ navigations, activePath, as, host, ...props }) => {
3005
3025
  children: navigations == null ? void 0 : navigations.map((navigation) => {
3006
3026
  const isActive = activePath.startsWith(navigation.navLink || "");
3007
3027
  const activeBg = isActive ? "primary.500" : void 0;
3008
- return /* @__PURE__ */ jsx43(Popover3, { trigger: "hover", placement: "bottom-start", children: ({ isOpen }) => /* @__PURE__ */ jsxs18(Fragment5, { children: [
3028
+ return /* @__PURE__ */ jsx43(Popover3, { trigger: "hover", placement: "bottom-start", children: ({ isOpen }) => /* @__PURE__ */ jsxs18(Fragment6, { children: [
3009
3029
  /* @__PURE__ */ jsx43(PopoverTrigger3, { children: /* @__PURE__ */ jsx43(
3010
3030
  Button3,
3011
3031
  {
@@ -3105,7 +3125,7 @@ var navigation_default = Navigation;
3105
3125
  // src/components/navigation/components/navigation-bar.tsx
3106
3126
  import { Box as Box22, Button as Button4, Flex as Flex10, Link as Link4, Popover as Popover4, PopoverContent as PopoverContent4, PopoverTrigger as PopoverTrigger4, Text as Text10 } from "@chakra-ui/react";
3107
3127
  import * as Icon6 from "@ctlyst.id/internal-icon";
3108
- import { Fragment as Fragment6, jsx as jsx44, jsxs as jsxs19 } from "react/jsx-runtime";
3128
+ import { Fragment as Fragment7, jsx as jsx44, jsxs as jsxs19 } from "react/jsx-runtime";
3109
3129
  var NavigationBar = ({
3110
3130
  navigations,
3111
3131
  isFetched,
@@ -3137,7 +3157,7 @@ var NavigationBar = ({
3137
3157
  const childMenu = item.children.filter((subMenu) => asPath == null ? void 0 : asPath.includes(subMenu.navLink));
3138
3158
  const isActive = pathname == null ? void 0 : pathname.startsWith((_a = childMenu[0]) == null ? void 0 : _a.navLink);
3139
3159
  const activeBg = isActive ? "primary.500" : void 0;
3140
- return /* @__PURE__ */ jsx44(Popover4, { isLazy: true, trigger: "hover", placement: "bottom-start", openDelay: 100, closeDelay: 100, children: ({ isOpen, onClose }) => /* @__PURE__ */ jsxs19(Fragment6, { children: [
3160
+ return /* @__PURE__ */ jsx44(Popover4, { isLazy: true, trigger: "hover", placement: "bottom-start", openDelay: 100, closeDelay: 100, children: ({ isOpen, onClose }) => /* @__PURE__ */ jsxs19(Fragment7, { children: [
3141
3161
  /* @__PURE__ */ jsx44(PopoverTrigger4, { children: /* @__PURE__ */ jsx44(
3142
3162
  Button4,
3143
3163
  {
@@ -3527,8 +3547,10 @@ var Rating = ({ value }) => {
3527
3547
  var rating_default = Rating;
3528
3548
 
3529
3549
  // src/components/select/components/select.tsx
3550
+ import { Badge as Badge2, Flex as Flex11 } from "@chakra-ui/react";
3530
3551
  import { useColorMode as useColorMode3 } from "@chakra-ui/system";
3531
- import ReactSelect from "react-select";
3552
+ import * as Icon7 from "@ctlyst.id/internal-icon";
3553
+ import ReactSelect, { components as componentRS } from "react-select";
3532
3554
 
3533
3555
  // src/config/theme/foundations/shadows.ts
3534
3556
  import { theme } from "@chakra-ui/react";
@@ -3835,10 +3857,10 @@ function selectStyles(colorMode, _isError) {
3835
3857
  return { ...base, ...selectStyle };
3836
3858
  },
3837
3859
  dropdownIndicator: (base) => {
3838
- return { ...base, ...selectStyle };
3860
+ return { ...base, ...selectStyle, color: "var(--chakra-colors-neutral-400)" };
3839
3861
  },
3840
3862
  indicatorSeparator: (base) => {
3841
- return { ...base, ...selectStyle };
3863
+ return { ...base, background: "var(--chakra-colors-neutral-400)", borderRadius: 10 };
3842
3864
  },
3843
3865
  placeholder: (base) => {
3844
3866
  return { ...base, ...selectStyle, color: "var(--chakra-colors-black-low)" };
@@ -3853,13 +3875,15 @@ function selectStyles(colorMode, _isError) {
3853
3875
  multiValueLabel: (base) => ({
3854
3876
  ...base,
3855
3877
  borderRadius: 4,
3856
- fontWeight: "bold"
3878
+ fontWeight: "bold",
3879
+ padding: 0,
3880
+ paddingLeft: 0
3857
3881
  }),
3858
3882
  multiValueRemove: (base) => ({
3859
3883
  ...base,
3860
3884
  color: "var(--chakra-colors-neutral-900)",
3861
3885
  ":hover": {
3862
- backgroundColor: "var(--chakra-colors-neutral-300)"
3886
+ backgroundColor: "transparent"
3863
3887
  }
3864
3888
  })
3865
3889
  };
@@ -3879,19 +3903,40 @@ var themeSelect = (theme5) => {
3879
3903
 
3880
3904
  // src/components/select/components/select.tsx
3881
3905
  import { jsx as jsx53 } from "react/jsx-runtime";
3906
+ function DropdownIndicator(props) {
3907
+ return /* @__PURE__ */ jsx53(componentRS.DropdownIndicator, { ...props, children: /* @__PURE__ */ jsx53(Icon7.ChevronDown, { size: 4, color: "neutral.400" }) });
3908
+ }
3909
+ function ClearIndicator(props) {
3910
+ const { hasValue } = props;
3911
+ return /* @__PURE__ */ jsx53(componentRS.ClearIndicator, { ...props, children: /* @__PURE__ */ jsx53(Icon7.Close, { size: 4, color: hasValue ? "black.medium" : "neutral.400" }) });
3912
+ }
3913
+ function MultiValue(props) {
3914
+ return /* @__PURE__ */ jsx53(componentRS.MultiValue, { ...props, children: /* @__PURE__ */ jsx53(Badge2, { pr: 0, variant: "neutral-light", children: props == null ? void 0 : props.data.label }) });
3915
+ }
3916
+ function MultiValueRemove(props) {
3917
+ return /* @__PURE__ */ jsx53(componentRS.MultiValueRemove, { ...props, children: /* @__PURE__ */ jsx53(Flex11, { align: "center", justify: "center", children: /* @__PURE__ */ jsx53(Icon7.Close, { size: 2.5, color: "inherit" }) }) });
3918
+ }
3882
3919
  function Select2({
3883
3920
  styles,
3884
3921
  isError = false,
3885
3922
  ...rest
3886
3923
  }) {
3887
3924
  const { colorMode } = useColorMode3();
3925
+ const { components } = rest;
3888
3926
  return /* @__PURE__ */ jsx53(
3889
3927
  ReactSelect,
3890
3928
  {
3891
3929
  classNamePrefix: "react-select",
3892
- ...rest,
3930
+ components: {
3931
+ DropdownIndicator,
3932
+ ClearIndicator,
3933
+ MultiValue,
3934
+ MultiValueRemove,
3935
+ ...components
3936
+ },
3893
3937
  styles: { ...selectStyles(colorMode, isError) },
3894
- theme: themeSelect
3938
+ theme: themeSelect,
3939
+ ...rest
3895
3940
  }
3896
3941
  );
3897
3942
  }
@@ -3911,6 +3956,10 @@ function SelectAsync({
3911
3956
  AsyncPaginate,
3912
3957
  {
3913
3958
  classNamePrefix: "react-select",
3959
+ components: {
3960
+ DropdownIndicator,
3961
+ ClearIndicator
3962
+ },
3914
3963
  ...rest,
3915
3964
  styles: { ...selectStyles(colorMode, isError), ...styles },
3916
3965
  theme: themeSelect
@@ -3929,6 +3978,10 @@ function SelectAsyncCreatable({ styles, isError = false, ...rest }) {
3929
3978
  ReactSelectAsyncCreatable,
3930
3979
  {
3931
3980
  classNamePrefix: "react-select",
3981
+ components: {
3982
+ DropdownIndicator,
3983
+ ClearIndicator
3984
+ },
3932
3985
  ...rest,
3933
3986
  styles: { ...selectStyles(colorMode, isError), ...styles },
3934
3987
  theme: themeSelect
@@ -3946,6 +3999,10 @@ function SelectCreatable({ styles, isError = false, ...rest }) {
3946
3999
  ReactSelectCreatable,
3947
4000
  {
3948
4001
  classNamePrefix: "react-select",
4002
+ components: {
4003
+ DropdownIndicator,
4004
+ ClearIndicator
4005
+ },
3949
4006
  ...rest,
3950
4007
  styles: { ...selectStyles(colorMode, isError), ...styles },
3951
4008
  theme: themeSelect
@@ -3954,10 +4011,10 @@ function SelectCreatable({ styles, isError = false, ...rest }) {
3954
4011
  }
3955
4012
 
3956
4013
  // src/components/select/components/select-with-checkbox.tsx
3957
- import { Checkbox as Checkbox3, Flex as Flex11, Text as Text15 } from "@chakra-ui/react";
4014
+ import { Checkbox as Checkbox3, Flex as Flex12, Text as Text15 } from "@chakra-ui/react";
3958
4015
  import { useColorMode as useColorMode7 } from "@chakra-ui/system";
3959
4016
  import ReactSelect2, { components as ComponentRS } from "react-select";
3960
- import { Fragment as Fragment7, jsx as jsx57, jsxs as jsxs24 } from "react/jsx-runtime";
4017
+ import { Fragment as Fragment8, jsx as jsx57, jsxs as jsxs24 } from "react/jsx-runtime";
3961
4018
  var CHECKBOX_STATE = {
3962
4019
  UNCHECKED: 0,
3963
4020
  INDETERMINATE: 1,
@@ -4004,7 +4061,7 @@ var InputOption = ({
4004
4061
  onClick: isDisabled ? void 0 : innerProps.onClick,
4005
4062
  style
4006
4063
  };
4007
- return /* @__PURE__ */ jsxs24(Fragment7, { children: [
4064
+ return /* @__PURE__ */ jsxs24(Fragment8, { children: [
4008
4065
  /* @__PURE__ */ jsx57(
4009
4066
  ComponentRS.Option,
4010
4067
  {
@@ -4017,7 +4074,7 @@ var InputOption = ({
4017
4074
  innerProps: props,
4018
4075
  ...rest,
4019
4076
  children: /* @__PURE__ */ jsxs24(
4020
- Flex11,
4077
+ Flex12,
4021
4078
  {
4022
4079
  alignItems: "center",
4023
4080
  width: "100%",
@@ -4068,7 +4125,7 @@ var SelectWithCheckboxBase = ({
4068
4125
  );
4069
4126
  };
4070
4127
  var SelectCheckbox = (props) => {
4071
- const { isMulti, options, value, ...rest } = props;
4128
+ const { isMulti, options, value, components, ...rest } = props;
4072
4129
  const selectValue = value || [];
4073
4130
  return /* @__PURE__ */ jsx57(
4074
4131
  SelectWithCheckboxBase,
@@ -4076,6 +4133,11 @@ var SelectCheckbox = (props) => {
4076
4133
  isMulti,
4077
4134
  options,
4078
4135
  components: {
4136
+ DropdownIndicator,
4137
+ ClearIndicator,
4138
+ MultiValue,
4139
+ MultiValueRemove,
4140
+ ...components,
4079
4141
  Option: (optionProps) => {
4080
4142
  const { isSelected, data } = optionProps;
4081
4143
  const optionLength = (options == null ? void 0 : options.length) ? options.length - 1 : 0;
@@ -4091,13 +4153,13 @@ var SelectCheckbox = (props) => {
4091
4153
  var select_with_checkbox_default = SelectCheckbox;
4092
4154
 
4093
4155
  // src/components/sidebar/components/sidebar.tsx
4094
- import { Flex as Flex12 } from "@chakra-ui/react";
4156
+ import { Flex as Flex13 } from "@chakra-ui/react";
4095
4157
  import { motion } from "framer-motion";
4096
4158
  import { jsx as jsx58 } from "react/jsx-runtime";
4097
4159
  var Sidebar = ({ isCollapse, children, ...props }) => {
4098
4160
  const { width = "220px" } = props;
4099
4161
  return /* @__PURE__ */ jsx58(
4100
- Flex12,
4162
+ Flex13,
4101
4163
  {
4102
4164
  position: "relative",
4103
4165
  as: motion.div,
@@ -4117,7 +4179,7 @@ var Sidebar = ({ isCollapse, children, ...props }) => {
4117
4179
  Sidebar.displayName = "Sidebar";
4118
4180
 
4119
4181
  // src/components/sidebar/components/sidebar-header.tsx
4120
- import { Box as Box27, Flex as Flex13, Text as Text16 } from "@chakra-ui/react";
4182
+ import { Box as Box27, Flex as Flex14, Text as Text16 } from "@chakra-ui/react";
4121
4183
  import { ArrowRight } from "@ctlyst.id/internal-icon";
4122
4184
  import { AnimatePresence, motion as motion2 } from "framer-motion";
4123
4185
  import { jsx as jsx59, jsxs as jsxs25 } from "react/jsx-runtime";
@@ -4133,7 +4195,7 @@ var SidebarHeader = ({ isCollapse, setCollapse, title }) => {
4133
4195
  color: "primary.500"
4134
4196
  },
4135
4197
  children: /* @__PURE__ */ jsxs25(
4136
- Flex13,
4198
+ Flex14,
4137
4199
  {
4138
4200
  "data-test-id": "nLkz69YipW818FioeAxVI",
4139
4201
  direction: "row",
@@ -4195,9 +4257,9 @@ import {
4195
4257
  Portal as Portal4,
4196
4258
  Text as Text17
4197
4259
  } from "@chakra-ui/react";
4198
- import * as Icon7 from "@ctlyst.id/internal-icon";
4260
+ import * as Icon8 from "@ctlyst.id/internal-icon";
4199
4261
  import { motion as motion3 } from "framer-motion";
4200
- import { Fragment as Fragment8, jsx as jsx60, jsxs as jsxs26 } from "react/jsx-runtime";
4262
+ import { Fragment as Fragment9, jsx as jsx60, jsxs as jsxs26 } from "react/jsx-runtime";
4201
4263
  var SidebarMenu = ({ menu, isCollapse, mappingIcon: mappingIcon2, itemStyles, setActive, active }) => {
4202
4264
  return /* @__PURE__ */ jsx60(Box28, { as: motion3.div, animate: { padding: isCollapse ? "8px 16px" : "8px" }, children: /* @__PURE__ */ jsx60(Accordion2, { index: menu.findIndex((item) => item.children.some((child) => child.navLink === active)), children: menu.map((item) => {
4203
4265
  const isActive = active == null ? void 0 : active.includes(item.navLink);
@@ -4205,12 +4267,12 @@ var SidebarMenu = ({ menu, isCollapse, mappingIcon: mappingIcon2, itemStyles, se
4205
4267
  const isOpenOptions = isCollapse || !isCollapse && !isExpanded;
4206
4268
  const noChild = !item.children.length;
4207
4269
  const offsetStyle = isCollapse ? noChild ? [-5, 16] : [-1, 16] : [-1, 8];
4208
- return /* @__PURE__ */ jsxs26(Fragment8, { children: [
4270
+ return /* @__PURE__ */ jsxs26(Fragment9, { children: [
4209
4271
  /* @__PURE__ */ jsx60(Popover6, { trigger: "hover", placement: "right-start", offset: offsetStyle, children: ({ isOpen, onClose }) => {
4210
4272
  const activeOption = isOpen ? "primary.50" : "white";
4211
4273
  const backgroundColor = isOpen && !isActive ? "primary.50" : "primary.100";
4212
4274
  const activeParent = isActive ? backgroundColor : activeOption;
4213
- return /* @__PURE__ */ jsxs26(Fragment8, { children: [
4275
+ return /* @__PURE__ */ jsxs26(Fragment9, { children: [
4214
4276
  /* @__PURE__ */ jsx60(PopoverTrigger6, { children: /* @__PURE__ */ jsx60(
4215
4277
  AccordionButton2,
4216
4278
  {
@@ -4252,7 +4314,7 @@ var SidebarMenu = ({ menu, isCollapse, mappingIcon: mappingIcon2, itemStyles, se
4252
4314
  boxSize: "3",
4253
4315
  as: motion3.div,
4254
4316
  animate: { transform: isExpanded ? "rotate(-180deg)" : "rotate(0)" },
4255
- children: /* @__PURE__ */ jsx60(Icon7.ChevronDown, { size: 3 })
4317
+ children: /* @__PURE__ */ jsx60(Icon8.ChevronDown, { size: 3 })
4256
4318
  }
4257
4319
  )
4258
4320
  ]
@@ -4331,9 +4393,9 @@ SidebarMenu.defaultProps = {
4331
4393
  };
4332
4394
 
4333
4395
  // src/components/switch/components/switch.tsx
4334
- import { chakra as chakra6, Flex as Flex14, forwardRef as forwardRef10, omitThemingProps as omitThemingProps2, useCheckbox as useCheckbox3, useMultiStyleConfig as useMultiStyleConfig2 } from "@chakra-ui/react";
4396
+ import { chakra as chakra6, Flex as Flex15, forwardRef as forwardRef10, omitThemingProps as omitThemingProps2, useCheckbox as useCheckbox3, useMultiStyleConfig as useMultiStyleConfig2 } from "@chakra-ui/react";
4335
4397
  import { cx as cx10, dataAttr } from "@chakra-ui/shared-utils";
4336
- import { Check as Check2, Close as Close4 } from "@ctlyst.id/internal-icon";
4398
+ import { Check as Check2, Close as Close5 } from "@ctlyst.id/internal-icon";
4337
4399
  import { useMemo as useMemo3 } from "react";
4338
4400
  import { jsx as jsx61, jsxs as jsxs27 } from "react/jsx-runtime";
4339
4401
  var Switch = forwardRef10(function Switch2(props, ref) {
@@ -4389,9 +4451,9 @@ var Switch = forwardRef10(function Switch2(props, ref) {
4389
4451
  children: [
4390
4452
  /* @__PURE__ */ jsx61("input", { "data-test-id": "", className: "chakra-switch__input", ...getInputProps({}, ref) }),
4391
4453
  /* @__PURE__ */ jsxs27(chakra6.span, { ...getCheckboxProps(), className: "chakra-switch__track", pos: "relative", __css: trackStyles, children: [
4392
- /* @__PURE__ */ jsxs27(Flex14, { gap: 1, pos: "absolute", top: "50%", left: "50%", transform: "translate(-50%, -50%)", children: [
4454
+ /* @__PURE__ */ jsxs27(Flex15, { gap: 1, pos: "absolute", top: "50%", left: "50%", transform: "translate(-50%, -50%)", children: [
4393
4455
  /* @__PURE__ */ jsx61(Check2, { color: "white", size: getIconSize(props.size) }),
4394
- /* @__PURE__ */ jsx61(Close4, { color: state.isDisabled ? "neutral.600" : "neutral.900", size: getIconSize(props.size) })
4456
+ /* @__PURE__ */ jsx61(Close5, { color: state.isDisabled ? "neutral.600" : "neutral.900", size: getIconSize(props.size) })
4395
4457
  ] }),
4396
4458
  /* @__PURE__ */ jsx61(
4397
4459
  chakra6.span,
@@ -4440,7 +4502,7 @@ import {
4440
4502
  } from "@chakra-ui/react";
4441
4503
 
4442
4504
  // src/components/tabs/components/tab.tsx
4443
- import { Button as Button6, Flex as Flex15, forwardRef as forwardRef11, useMultiStyleConfig as useMultiStyleConfig3, useTab } from "@chakra-ui/react";
4505
+ import { Button as Button6, Flex as Flex16, forwardRef as forwardRef11, useMultiStyleConfig as useMultiStyleConfig3, useTab } from "@chakra-ui/react";
4444
4506
  import { jsx as jsx62, jsxs as jsxs28 } from "react/jsx-runtime";
4445
4507
  var Tab = forwardRef11((props, ref) => {
4446
4508
  var _a, _b;
@@ -4473,7 +4535,7 @@ var Tab = forwardRef11((props, ref) => {
4473
4535
  },
4474
4536
  __css: styles.tab,
4475
4537
  ...tabProps,
4476
- children: /* @__PURE__ */ jsxs28(Flex15, { alignItems: "center", children: [
4538
+ children: /* @__PURE__ */ jsxs28(Flex16, { alignItems: "center", children: [
4477
4539
  (_a = props.leftAddon) == null ? void 0 : _a.call(props, { isSelected }),
4478
4540
  tabProps.children,
4479
4541
  (_b = props.rightAddon) == null ? void 0 : _b.call(props, { isSelected })
@@ -4522,7 +4584,7 @@ import {
4522
4584
  import { Code, CodeProps, Heading, HeadingProps, Link as Link5, LinkProps, Text as Text18, TextProps } from "@chakra-ui/react";
4523
4585
 
4524
4586
  // src/components/toast/components/toast.tsx
4525
- import { chakra as chakra7, Flex as Flex16, Link as Link6, useToken } from "@chakra-ui/react";
4587
+ import { chakra as chakra7, Flex as Flex17, Link as Link6, useToken } from "@chakra-ui/react";
4526
4588
  import { Bounce, toast } from "react-toastify";
4527
4589
 
4528
4590
  // src/components/toast/components/styles.tsx
@@ -4561,7 +4623,7 @@ var Styles2 = () => {
4561
4623
  var styles_default2 = Styles2;
4562
4624
 
4563
4625
  // src/components/toast/components/toast.tsx
4564
- import { Fragment as Fragment9, jsx as jsx64, jsxs as jsxs29 } from "react/jsx-runtime";
4626
+ import { Fragment as Fragment10, jsx as jsx64, jsxs as jsxs29 } from "react/jsx-runtime";
4565
4627
  var DEFAULT_OPTIONS = {
4566
4628
  position: "top-right",
4567
4629
  autoClose: 5e3,
@@ -4592,10 +4654,10 @@ var useToast = () => {
4592
4654
  "success.500"
4593
4655
  ]);
4594
4656
  const content = (icon, message, link) => {
4595
- return /* @__PURE__ */ jsxs29(Fragment9, { children: [
4657
+ return /* @__PURE__ */ jsxs29(Fragment10, { children: [
4596
4658
  /* @__PURE__ */ jsx64(styles_default2, {}),
4597
- /* @__PURE__ */ jsxs29(Flex16, { justifyContent: "space-between", alignItems: "center", gap: 4, children: [
4598
- /* @__PURE__ */ jsxs29(Flex16, { alignItems: "center", children: [
4659
+ /* @__PURE__ */ jsxs29(Flex17, { justifyContent: "space-between", alignItems: "center", gap: 4, children: [
4660
+ /* @__PURE__ */ jsxs29(Flex17, { alignItems: "center", children: [
4599
4661
  icon && /* @__PURE__ */ jsx64(chakra7.span, { mr: 2, w: 4, h: 4, children: renderIcon(icon, "default") }),
4600
4662
  /* @__PURE__ */ jsx64(chakra7.span, { noOfLines: 2, children: message })
4601
4663
  ] }),
@@ -4681,7 +4743,7 @@ import { ToastContainer } from "react-toastify";
4681
4743
  import {
4682
4744
  Box as Box29,
4683
4745
  Button as Button7,
4684
- Flex as Flex17,
4746
+ Flex as Flex18,
4685
4747
  FormControl as FormControl4,
4686
4748
  FormLabel as FormLabel4,
4687
4749
  Heading as Heading2,
@@ -4722,7 +4784,7 @@ var concatList = (list) => {
4722
4784
  var formatValidationMessage = (extension) => `Foto harus dalam format ${concatList(extension.map((ext) => `.${ext}`))}.`;
4723
4785
 
4724
4786
  // src/components/uploader/components/uploader.tsx
4725
- import { Fragment as Fragment10, jsx as jsx65, jsxs as jsxs30 } from "react/jsx-runtime";
4787
+ import { Fragment as Fragment11, jsx as jsx65, jsxs as jsxs30 } from "react/jsx-runtime";
4726
4788
  import { createElement } from "react";
4727
4789
  var Uploader = ({
4728
4790
  onHandleUploadFile,
@@ -4841,13 +4903,13 @@ var Uploader = ({
4841
4903
  return /* @__PURE__ */ jsxs30(FormControl4, { isRequired, children: [
4842
4904
  label && typeof label === "string" ? (
4843
4905
  // eslint-disable-next-line react/jsx-no-useless-fragment
4844
- /* @__PURE__ */ jsxs30(FormLabel4, { requiredIndicator: /* @__PURE__ */ jsx65(Fragment10, {}), fontSize: "text.sm", children: [
4906
+ /* @__PURE__ */ jsxs30(FormLabel4, { requiredIndicator: /* @__PURE__ */ jsx65(Fragment11, {}), fontSize: "text.sm", children: [
4845
4907
  isRequired && /* @__PURE__ */ jsx65(RequiredIndicator2, { mr: 1, ml: 0 }),
4846
4908
  label
4847
4909
  ] })
4848
4910
  ) : label,
4849
4911
  /* @__PURE__ */ jsxs30(
4850
- Flex17,
4912
+ Flex18,
4851
4913
  {
4852
4914
  minH: containerHeight,
4853
4915
  maxW: !isSmall ? "full" : "120px",
@@ -4883,7 +4945,7 @@ var Uploader = ({
4883
4945
  }
4884
4946
  ) }),
4885
4947
  filePreview && /* @__PURE__ */ jsx65(Box29, { w: "full", children: /* @__PURE__ */ jsx65(
4886
- Flex17,
4948
+ Flex18,
4887
4949
  {
4888
4950
  position: "relative",
4889
4951
  "data-test-id": `CT_component_base-image-uploader_image-preview${testId ? `_${testId}` : ""}`,
@@ -4900,7 +4962,7 @@ var Uploader = ({
4900
4962
  )
4901
4963
  }
4902
4964
  ) }),
4903
- !filePreview && /* @__PURE__ */ jsxs30(Fragment10, { children: [
4965
+ !filePreview && /* @__PURE__ */ jsxs30(Fragment11, { children: [
4904
4966
  /* @__PURE__ */ jsx65(
4905
4967
  "input",
4906
4968
  {
@@ -4908,7 +4970,7 @@ var Uploader = ({
4908
4970
  ...getInputProps()
4909
4971
  }
4910
4972
  ),
4911
- isDragActive ? /* @__PURE__ */ jsx65(Text19, { children: dragActiveText != null ? dragActiveText : messages.dragActive }) : /* @__PURE__ */ jsxs30(Flex17, { gap: 2, flexDirection: "column", alignItems: "center", color: isError ? "danger.500" : color, children: [
4973
+ isDragActive ? /* @__PURE__ */ jsx65(Text19, { children: dragActiveText != null ? dragActiveText : messages.dragActive }) : /* @__PURE__ */ jsxs30(Flex18, { gap: 2, flexDirection: "column", alignItems: "center", color: isError ? "danger.500" : color, children: [
4912
4974
  size2 === "sm" && /* @__PURE__ */ jsx65(Plus, { size: 6, color }),
4913
4975
  /* @__PURE__ */ jsxs30(Box29, { children: [
4914
4976
  !filePreview && /* @__PURE__ */ jsx65(
@@ -4928,7 +4990,7 @@ var Uploader = ({
4928
4990
  ]
4929
4991
  }
4930
4992
  ),
4931
- filePreview && !isSmall && /* @__PURE__ */ jsxs30(Flex17, { align: "center", justify: "center", my: 2, children: [
4993
+ filePreview && !isSmall && /* @__PURE__ */ jsxs30(Flex18, { align: "center", justify: "center", my: 2, children: [
4932
4994
  /* @__PURE__ */ createElement(
4933
4995
  "input",
4934
4996
  {
@@ -5212,7 +5274,7 @@ var alertTheme = defineMultiStyleConfig2({
5212
5274
  var alert_default = alertTheme;
5213
5275
 
5214
5276
  // src/config/theme/components/badge.ts
5215
- var Badge2 = {
5277
+ var Badge3 = {
5216
5278
  baseStyle: {
5217
5279
  h: "fit-content",
5218
5280
  display: "inline-block",
@@ -5286,7 +5348,7 @@ var Badge2 = {
5286
5348
  variant: "primary-solid"
5287
5349
  }
5288
5350
  };
5289
- var badge_default2 = Badge2;
5351
+ var badge_default2 = Badge3;
5290
5352
 
5291
5353
  // src/config/theme/components/button.ts
5292
5354
  import { defineStyleConfig } from "@chakra-ui/styled-system";
@@ -6776,6 +6838,7 @@ export {
6776
6838
  CheckboxIconProps,
6777
6839
  CheckboxState,
6778
6840
  chips_default as Chips,
6841
+ ClearIndicator,
6779
6842
  CloseButton,
6780
6843
  CloseButtonProps,
6781
6844
  Code,
@@ -6803,6 +6866,7 @@ export {
6803
6866
  ModalHeader3 as DrawerHeader,
6804
6867
  ModalOverlay3 as DrawerOverlay,
6805
6868
  DrawerProps,
6869
+ DropdownIndicator,
6806
6870
  empty_state_default as EmptyState,
6807
6871
  Fade,
6808
6872
  FadeProps,
@@ -6876,6 +6940,8 @@ export {
6876
6940
  ModalOverlayProps,
6877
6941
  ModalProps,
6878
6942
  multi_datepicker_month_default as MultiDatePickerMonth,
6943
+ MultiValue,
6944
+ MultiValueRemove,
6879
6945
  NavItem,
6880
6946
  Navbar,
6881
6947
  navigation_bar_default as NavigationBar,