tp-react-elements 1.2.0 → 1.2.3

This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
Files changed (40) hide show
  1. package/dist/_virtual/index.esm11.js +2 -2
  2. package/dist/_virtual/index.esm12.js +2 -2
  3. package/dist/_virtual/index.esm13.js +2 -2
  4. package/dist/_virtual/index.esm14.js +2 -2
  5. package/dist/_virtual/index.esm4.js +2 -2
  6. package/dist/_virtual/index.esm5.js +2 -2
  7. package/dist/_virtual/index.esm7.js +2 -2
  8. package/dist/components/DateRangePicker/DateRangePicker.esm.js +7 -8
  9. package/dist/components/FormComponents/DatePicker/DatepickerWrapperV2.esm.js +3 -3
  10. package/dist/components/FormComponents/DatePicker/Monthpickerrender.esm.js +3 -3
  11. package/dist/components/FormComponents/FileUpload/FormRenderFileUpload.esm.js +3 -3
  12. package/dist/components/FormComponents/FileUpload/FormRenderMultiFileUpload.esm.js +3 -3
  13. package/dist/components/FormComponents/FormCheckBoxGroup/FormCheckBoxGroup.esm.js +3 -3
  14. package/dist/components/FormComponents/FormNumberField/FormNumberField.esm.js +3 -3
  15. package/dist/components/FormComponents/FormNumberField/FormNumberFieldDecimal.esm.js +3 -3
  16. package/dist/components/FormComponents/FormRadioGroup/FormRadioGroup.esm.js +3 -3
  17. package/dist/components/FormComponents/FormTextAreaField/FormTextAreaField.esm.js +33 -32
  18. package/dist/components/FormComponents/FormTextField/FormTextField.esm.js +20 -19
  19. package/dist/components/FormComponents/FormTextFieldWithSelect/FormTextFieldWithSelect.esm.js +3 -3
  20. package/dist/components/FormComponents/PasswordField/PasswordField.esm.js +3 -3
  21. package/dist/components/FormComponents/RichTextEditor/RichTextEditorWrapper.esm.js +2 -2
  22. package/dist/components/FormComponents/Select/MultiSelectAutocomplete.esm.js +3 -3
  23. package/dist/components/FormComponents/Select/MultiSelectTable.esm.js +3 -3
  24. package/dist/components/FormComponents/Select/MultiSelectv1.esm.js +3 -3
  25. package/dist/components/FormComponents/Select/SingleSelect.esm.js +45 -57
  26. package/dist/components/FormComponents/Select/SingleSelectNonAutoComplete.esm.js +3 -3
  27. package/dist/components/FormComponents/Select/SingleSelectSearchApi.esm.js +9 -13
  28. package/dist/components/FormComponents/TimePicker/TimePicker.esm.js +3 -3
  29. package/dist/node_modules/react-date-range/dist/components/Calendar/index.esm.js +1 -1
  30. package/dist/node_modules/react-date-range/dist/components/DateInput/index.esm.js +1 -1
  31. package/dist/node_modules/react-date-range/dist/components/DateRange/index.esm.js +1 -1
  32. package/dist/node_modules/react-date-range/dist/components/DateRangePicker/index.esm.js +1 -1
  33. package/dist/node_modules/react-date-range/dist/components/DayCell/index.esm.js +1 -1
  34. package/dist/node_modules/react-date-range/dist/components/InputRangeField/index.esm.js +1 -1
  35. package/dist/node_modules/react-date-range/dist/components/Month/index.esm.js +1 -1
  36. package/dist/utils/Constants/FormConstants.d.ts +0 -7
  37. package/dist/utils/Constants/FormConstants.esm.js +2 -22
  38. package/dist/utils/Interface/FormInterface.d.ts +1 -2
  39. package/dist/utils/index.esm.js +1 -1
  40. package/package.json +1 -1
@@ -1,3 +1,3 @@
1
- var DayCell = {};
1
+ var DateInput = {};
2
2
 
3
- export { DayCell as __exports };
3
+ export { DateInput as __exports };
@@ -1,3 +1,3 @@
1
- var DateInput = {};
1
+ var Month = {};
2
2
 
3
- export { DateInput as __exports };
3
+ export { Month as __exports };
@@ -1,3 +1,3 @@
1
- var InputRangeField = {};
1
+ var DayCell = {};
2
2
 
3
- export { InputRangeField as __exports };
3
+ export { DayCell as __exports };
@@ -1,3 +1,3 @@
1
- var Month = {};
1
+ var InputRangeField = {};
2
2
 
3
- export { Month as __exports };
3
+ export { InputRangeField as __exports };
@@ -1,3 +1,3 @@
1
- var DateRangePicker = {};
1
+ var Calendar = {};
2
2
 
3
- export { DateRangePicker as __exports };
3
+ export { Calendar as __exports };
@@ -1,3 +1,3 @@
1
- var DateRange = {};
1
+ var DateRangePicker = {};
2
2
 
3
- export { DateRange as __exports };
3
+ export { DateRangePicker as __exports };
@@ -1,3 +1,3 @@
1
- var Calendar = {};
1
+ var DateRange = {};
2
2
 
3
- export { Calendar as __exports };
3
+ export { DateRange as __exports };
@@ -3,7 +3,7 @@ import { useState, useEffect } from 'react';
3
3
  import { Controller } from 'react-hook-form';
4
4
  import { d as distExports } from '../../_virtual/index.esm.js';
5
5
  import 'dayjs';
6
- import { renderLabel, wrapFieldWithLabelTooltipIfEnabled } from '../../utils/Constants/FormConstants.esm.js';
6
+ import { renderLabel } from '../../utils/Constants/FormConstants.esm.js';
7
7
  import FormBottomField from '../FormComponents/FormBottomField/FormBottomField.esm.js';
8
8
  import { Box, TextField, Popover } from '@mui/material';
9
9
  import { format } from '../../node_modules/date-fns/format.esm.js';
@@ -54,13 +54,12 @@ const DateRangePickerComponent = ({ item, control, watch, setValue, getValues, c
54
54
  ? `${format(state[0].startDate, 'dd/MM/yyyy')} - ${format(state[0].endDate, 'dd/MM/yyyy')}`
55
55
  : '';
56
56
  const label = variant !== 'standard' ? `${item.label}${item.required ? ' *' : ''}` : '';
57
- const formProps = {
58
- item,
59
- ...rest,
60
- };
61
- return (jsxs(Fragment, { children: [jsx(Box, { onClick: handleClick, sx: { width: '100%' }, children: jsx(Controller, { name: fromDateName, control: control, render: ({ fieldState }) => (jsxs(Fragment, { children: [renderLabel(variant, formProps), ' ', wrapFieldWithLabelTooltipIfEnabled(variant, formProps, (jsx(TextField, { fullWidth: true, value: displayValue, placeholder: item.placeholder || 'DD/MM/YYYY - DD/MM/YYYY', error: !!fieldState.error, InputProps: {
57
+ return (jsxs(Fragment, { children: [jsx(Box, { onClick: handleClick, sx: { width: '100%' }, children: jsx(Controller, { name: fromDateName, control: control, render: ({ fieldState }) => (jsxs(Fragment, { children: [renderLabel(variant, {
58
+ item,
59
+ ...rest,
60
+ }), ' ', jsx(TextField, { fullWidth: true, value: displayValue, placeholder: item.placeholder || 'DD/MM/YYYY - DD/MM/YYYY', error: !!fieldState.error, InputProps: {
62
61
  readOnly: true,
63
- }, label: label, size: "small" })))] })) }) }), jsx(Popover, { id: id, open: open, anchorEl: anchorEl, onClose: handleClose, anchorOrigin: {
62
+ }, label: label, size: "small" })] })) }) }), jsx(Popover, { id: id, open: open, anchorEl: anchorEl, onClose: handleClose, anchorOrigin: {
64
63
  vertical: 'bottom',
65
64
  horizontal: 'left',
66
65
  }, PaperProps: {
@@ -95,7 +94,7 @@ const DateRangePickerComponent = ({ item, control, watch, setValue, getValues, c
95
94
  item.onChangeFn && item.onChangeFn(dateObject || null);
96
95
  handleClose();
97
96
  }
98
- }, moveRangeOnFirstSelection: false, ranges: state, months: 2, direction: "horizontal", showDateDisplay: false, dateDisplayFormat: "dd/MM/yyyy", rangeColors: ['#4d73b1ff'], minDate: getValidDate(item?.minDate), maxDate: getValidDate(item?.maxDate) }) }), jsx(FormBottomField, { item,
97
+ }, moveRangeOnFirstSelection: false, ranges: state, months: 2, direction: "horizontal", showDateDisplay: false, dateDisplayFormat: "dd/MM/yyyy", rangeColors: ['#4d73b1ff'] }) }), jsx(FormBottomField, { item,
99
98
  control,
100
99
  errors,
101
100
  getValues,
@@ -6,7 +6,7 @@ import { AdapterDayjs } from '@mui/x-date-pickers/AdapterDayjs';
6
6
  import dayjs from 'dayjs';
7
7
  import { Controller } from 'react-hook-form';
8
8
  import FormBottomField from '../FormBottomField/FormBottomField.esm.js';
9
- import { renderLabel, wrapFieldWithLabelTooltipIfEnabled } from '../../../utils/Constants/FormConstants.esm.js';
9
+ import { renderLabel } from '../../../utils/Constants/FormConstants.esm.js';
10
10
 
11
11
  const DatepickerWrapperV2 = ({ props, variant, }) => {
12
12
  const inputTextRef = useRef(null);
@@ -35,7 +35,7 @@ const DatepickerWrapperV2 = ({ props, variant, }) => {
35
35
  return jsx("div", { style: { minHeight: '36px' }, children: "Loading..." });
36
36
  }
37
37
  return (jsx(Controller, { control: props.control, name: props.item.name, render: ({ field }) => {
38
- return (jsxs(Fragment, { children: [DatePicker && (jsxs(LocalizationProvider, { dateAdapter: AdapterDayjs, children: [renderLabel(variant, props), wrapFieldWithLabelTooltipIfEnabled(variant, props, (jsx(DatePicker, { views: ['month', 'year', 'day'], label: variant !== 'standard'
38
+ return (jsxs(Fragment, { children: [DatePicker && (jsxs(LocalizationProvider, { dateAdapter: AdapterDayjs, children: [renderLabel(variant, props), jsx(DatePicker, { views: ['month', 'year', 'day'], label: variant !== 'standard'
39
39
  ? `${props.item.label}${props.item.required ? ' *' : ''}`
40
40
  : '', value: field.value
41
41
  ? typeof field.value === 'string'
@@ -69,7 +69,7 @@ const DatepickerWrapperV2 = ({ props, variant, }) => {
69
69
  },
70
70
  },
71
71
  },
72
- } })))] })), jsx(FormBottomField, { ...props })] }));
72
+ } })] })), jsx(FormBottomField, { ...props })] }));
73
73
  } }, props.item.name));
74
74
  };
75
75
 
@@ -6,7 +6,7 @@ import { AdapterDayjs } from '@mui/x-date-pickers/AdapterDayjs';
6
6
  import dayjs from 'dayjs';
7
7
  import { Controller } from 'react-hook-form';
8
8
  import FormBottomField from '../FormBottomField/FormBottomField.esm.js';
9
- import { renderLabel, wrapFieldWithLabelTooltipIfEnabled, formatDateMonthAndYear } from '../../../utils/Constants/FormConstants.esm.js';
9
+ import { renderLabel, formatDateMonthAndYear } from '../../../utils/Constants/FormConstants.esm.js';
10
10
 
11
11
  const Monthpickerrender = ({ props, variant, }) => {
12
12
  const ref = useRef(null);
@@ -34,7 +34,7 @@ const Monthpickerrender = ({ props, variant, }) => {
34
34
  if (isLoading) {
35
35
  return jsx("div", { style: { minHeight: '36px' }, children: "Loading..." });
36
36
  }
37
- return (jsx(Fragment, { children: DatePicker && (jsx(Controller, { control: props.control, name: props.item.name, render: ({ field }) => (jsxs(Fragment, { children: [jsxs(LocalizationProvider, { dateAdapter: AdapterDayjs, children: [renderLabel(variant, props), wrapFieldWithLabelTooltipIfEnabled(variant, props, (jsx(DatePicker, { ref: ref, label: variant !== 'standard' &&
37
+ return (jsx(Fragment, { children: DatePicker && (jsx(Controller, { control: props.control, name: props.item.name, render: ({ field }) => (jsxs(Fragment, { children: [jsxs(LocalizationProvider, { dateAdapter: AdapterDayjs, children: [renderLabel(variant, props), jsx(DatePicker, { ref: ref, label: variant !== 'standard' &&
38
38
  `${props.item.label}${props.item.required ? ' *' : ''}`, views: ['month', 'year'], disabled: props.item.disable, value: field.value ? dayjs(formatDateMonthAndYear(field.value || null)) : null, slotProps: {
39
39
  textField: {
40
40
  onClick: () => handleToggle(),
@@ -66,7 +66,7 @@ const Monthpickerrender = ({ props, variant, }) => {
66
66
  '& .MuiInputLabel-shrink': {
67
67
  top: 0,
68
68
  },
69
- }, minDate: props.item.minDate ? dayjs(props.item.minDate, 'MM/YYYY') : undefined, maxDate: props.item.maxDate ? dayjs(props.item.maxDate, 'MM/YYYY') : undefined })))] }), props?.item?.helperText && (jsxs("span", { style: {
69
+ }, minDate: props.item.minDate ? dayjs(props.item.minDate, 'MM/YYYY') : undefined, maxDate: props.item.maxDate ? dayjs(props.item.maxDate, 'MM/YYYY') : undefined })] }), props?.item?.helperText && (jsxs("span", { style: {
70
70
  fontSize: '11px',
71
71
  color: '#3651d3',
72
72
  }, children: ["(", props?.item?.helperText, ")"] })), jsx(FormBottomField, { ...props })] })) })) }));
@@ -4,7 +4,7 @@ import { useRef, useEffect } from 'react';
4
4
  import { useWatch } from 'react-hook-form';
5
5
  import FormBottomField from '../FormBottomField/FormBottomField.esm.js';
6
6
  import 'dayjs';
7
- import { renderLabel, wrapFieldWithLabelTooltipIfEnabled } from '../../../utils/Constants/FormConstants.esm.js';
7
+ import { renderLabel } from '../../../utils/Constants/FormConstants.esm.js';
8
8
 
9
9
  const FormRenderFileUpload = ({ props, variant, }) => {
10
10
  const isError = !!props.errors?.[props.item.name];
@@ -57,7 +57,7 @@ const FormRenderFileUpload = ({ props, variant, }) => {
57
57
  return extensions.map((ext) => `.${ext}`).join(',');
58
58
  };
59
59
  const accept = getAcceptString();
60
- return (jsxs(Fragment, { children: [jsxs(Box, { paddingLeft: '4px', sx: { ...props.item.sx }, children: [props.item?.label && (jsx(Box, { sx: { fontSize: '10px;' }, children: renderLabel(variant, props, true) })), wrapFieldWithLabelTooltipIfEnabled(variant, props, (jsx(TextField, { type: "file", id: props.item.name, error: isShowBorderError, inputRef: inputRef, inputProps: {
60
+ return (jsxs(Fragment, { children: [jsxs(Box, { paddingLeft: '4px', sx: { ...props.item.sx }, children: [props.item?.label && (jsx(Box, { sx: { fontSize: '10px;' }, children: renderLabel(variant, props, true) })), jsx(TextField, { type: "file", id: props.item.name, error: isShowBorderError, inputRef: inputRef, inputProps: {
61
61
  accept,
62
62
  'aria-labelledby': `${props.item.name}-label`,
63
63
  'aria-describedby': `${props.item.name}-helper ${props.item.name}-error`,
@@ -90,7 +90,7 @@ const FormRenderFileUpload = ({ props, variant, }) => {
90
90
  props.clearErrors(props.item?.name);
91
91
  props.item.onChangeSetFileFn &&
92
92
  props.item.onChangeSetFileFn(file);
93
- }, sx: { width: '100%' } })))] }), jsx(FormBottomField, { ...props })] }));
93
+ }, sx: { width: '100%' } })] }), jsx(FormBottomField, { ...props })] }));
94
94
  };
95
95
 
96
96
  export { FormRenderFileUpload as default };
@@ -3,7 +3,7 @@ import { Box, TextField } from '@mui/material';
3
3
  import { useRef, useEffect } from 'react';
4
4
  import { useWatch } from 'react-hook-form';
5
5
  import 'dayjs';
6
- import { renderLabel, wrapFieldWithLabelTooltipIfEnabled } from '../../../utils/Constants/FormConstants.esm.js';
6
+ import { renderLabel } from '../../../utils/Constants/FormConstants.esm.js';
7
7
  import FormBottomField from '../FormBottomField/FormBottomField.esm.js';
8
8
 
9
9
  const FormRenderMultiFileUpload = ({ props, variant, }) => {
@@ -57,7 +57,7 @@ const FormRenderMultiFileUpload = ({ props, variant, }) => {
57
57
  const extensions = getValidExtensions();
58
58
  return extensions.map((ext) => `.${ext}`).join(',');
59
59
  };
60
- return (jsxs(Fragment, { children: [jsxs(Box, { paddingLeft: '4px', sx: { ...props.item.sx }, children: [props.item?.label && (jsx(Box, { sx: { fontSize: '10px;' }, children: renderLabel(variant, props, true) })), wrapFieldWithLabelTooltipIfEnabled(variant, props, (jsx(TextField, { type: "file", id: props.item.name, error: isShowBorderError, inputRef: inputRef, inputProps: {
60
+ return (jsxs(Fragment, { children: [jsxs(Box, { paddingLeft: '4px', sx: { ...props.item.sx }, children: [props.item?.label && (jsx(Box, { sx: { fontSize: '10px;' }, children: renderLabel(variant, props, true) })), jsx(TextField, { type: "file", id: props.item.name, error: isShowBorderError, inputRef: inputRef, inputProps: {
61
61
  multiple: true,
62
62
  accept: getAcceptString(),
63
63
  'aria-labelledby': `${props.item.name}-label`,
@@ -98,7 +98,7 @@ const FormRenderMultiFileUpload = ({ props, variant, }) => {
98
98
  props.setValue(props.item?.name, fileName);
99
99
  props.setValue(props.item?.name + 'File', fileArray);
100
100
  props.clearErrors(props.item?.name);
101
- }, sx: { width: '100%' } })))] }), jsx(FormBottomField, { ...props })] }));
101
+ }, sx: { width: '100%' } })] }), jsx(FormBottomField, { ...props })] }));
102
102
  };
103
103
 
104
104
  export { FormRenderMultiFileUpload as default };
@@ -3,7 +3,7 @@ import { FormControl, FormGroup, FormControlLabel, Typography, Checkbox } from '
3
3
  import { Controller } from 'react-hook-form';
4
4
  import FormBottomField from '../FormBottomField/FormBottomField.esm.js';
5
5
  import 'dayjs';
6
- import { renderLabel, wrapFieldWithLabelTooltipIfEnabled } from '../../../utils/Constants/FormConstants.esm.js';
6
+ import { renderLabel } from '../../../utils/Constants/FormConstants.esm.js';
7
7
 
8
8
  /**
9
9
  * FormCheckBoxGroup Component
@@ -24,7 +24,7 @@ const FormCheckBoxGroup = ({ props, variant, }) => {
24
24
  /**
25
25
  * Renders a group of checkboxes with labels and validation support
26
26
  */
27
- return (jsxs(Fragment, { children: [renderLabel(variant, props), wrapFieldWithLabelTooltipIfEnabled(variant, props, (jsx(FormControl, { component: "fieldset", children: jsx(FormGroup, { row: true, children: props.item?.settings &&
27
+ return (jsxs(Fragment, { children: [renderLabel(variant, props), jsx(FormControl, { component: "fieldset", children: jsx(FormGroup, { row: true, children: props.item?.settings &&
28
28
  props.item.settings.map((settings, i) => {
29
29
  return (jsx(Controller, { name: settings.name, control: props.control, render: ({ field }) => {
30
30
  return (jsx(FormControlLabel, { control: jsx(Checkbox, { ...field, checked: field.value }), sx: {
@@ -36,7 +36,7 @@ const FormCheckBoxGroup = ({ props, variant, }) => {
36
36
  },
37
37
  }, label: jsx(Typography, { variant: "subtitle2", fontSize: '11px', fontWeight: 'normal !important', children: settings.label }), labelPlacement: "end" }));
38
38
  } }, i));
39
- }) }) }))), jsx(FormBottomField, { ...props })] }));
39
+ }) }) }), jsx(FormBottomField, { ...props })] }));
40
40
  };
41
41
 
42
42
  export { FormCheckBoxGroup as default };
@@ -3,7 +3,7 @@ import { TextField } from '@mui/material';
3
3
  import { Controller } from 'react-hook-form';
4
4
  import FormBottomField from '../FormBottomField/FormBottomField.esm.js';
5
5
  import 'dayjs';
6
- import { renderLabel, wrapFieldWithLabelTooltipIfEnabled } from '../../../utils/Constants/FormConstants.esm.js';
6
+ import { renderLabel } from '../../../utils/Constants/FormConstants.esm.js';
7
7
 
8
8
  /**
9
9
  * FormNumberField Component
@@ -55,7 +55,7 @@ const FormNumberField = ({ props, variant }) => {
55
55
  * for controlled form state management
56
56
  */
57
57
  return (jsx(Fragment, { children: jsx(Controller, { control: props.control, name: props.item.name, render: ({ field }) => {
58
- return (jsxs(Fragment, { children: [renderLabel(variant, props), wrapFieldWithLabelTooltipIfEnabled(variant, props, (jsx(TextField, { ...field, size: "small", label: label, error: isShowBorderError, value: field.value ?? '',
58
+ return (jsxs(Fragment, { children: [renderLabel(variant, props), jsx(TextField, { ...field, size: "small", label: label, error: isShowBorderError, value: field.value ?? '',
59
59
  /**
60
60
  * Handles input events with numeric restrictions
61
61
  * - Removes non-numeric characters
@@ -99,7 +99,7 @@ const FormNumberField = ({ props, variant }) => {
99
99
  'aria-labelledby': `${props.item.name}-label`,
100
100
  'aria-describedby': `${props.item.name}-helper ${props.item.name}-error`,
101
101
  'aria-required': props.item.required ? true : undefined,
102
- }, disabled: props.item.disable }))), jsx(FormBottomField, { ...props })] }));
102
+ }, disabled: props.item.disable }), jsx(FormBottomField, { ...props })] }));
103
103
  } }, props.item.name) }));
104
104
  };
105
105
 
@@ -3,7 +3,7 @@ import { TextField } from '@mui/material';
3
3
  import { Controller } from 'react-hook-form';
4
4
  import FormBottomField from '../FormBottomField/FormBottomField.esm.js';
5
5
  import 'dayjs';
6
- import { renderLabel, wrapFieldWithLabelTooltipIfEnabled } from '../../../utils/Constants/FormConstants.esm.js';
6
+ import { renderLabel } from '../../../utils/Constants/FormConstants.esm.js';
7
7
 
8
8
  const FormNumberFieldDecimal = ({ props, variant, }) => {
9
9
  const fixedLength = props.item.decimalFixedTo || 2;
@@ -21,7 +21,7 @@ const FormNumberFieldDecimal = ({ props, variant, }) => {
21
21
  const label = variant !== 'standard' ? `${props.item.label}${props.item.required ? ' *' : ''}` : '';
22
22
  const isError = !!props.errors?.[props.item.name];
23
23
  const isShowBorderError = isError;
24
- return (jsx(Controller, { name: props.item.name, control: props.control, disabled: props.item?.disable, render: ({ field }) => (jsxs(Fragment, { children: [renderLabel(variant, props), wrapFieldWithLabelTooltipIfEnabled(variant, props, (jsx(TextField, { type: "text", size: "small", label: label, error: isShowBorderError, ...field, onChange: (e) => {
24
+ return (jsx(Controller, { name: props.item.name, control: props.control, disabled: props.item?.disable, render: ({ field }) => (jsxs(Fragment, { children: [renderLabel(variant, props), jsx(TextField, { type: "text", size: "small", label: label, error: isShowBorderError, ...field, onChange: (e) => {
25
25
  const sanitized = sanitizeDecimal(e.target.value ?? '');
26
26
  const value = sanitized === '' ? '' : sanitized;
27
27
  field.onChange(value);
@@ -44,7 +44,7 @@ const FormNumberFieldDecimal = ({ props, variant, }) => {
44
44
  'aria-describedby': `${props.item.name}-helper ${props.item.name}-error`,
45
45
  'aria-required': props.item.required ? true : undefined,
46
46
  },
47
- } }))), jsx(FormBottomField, { ...props })] })) }, props.item.name));
47
+ } }), jsx(FormBottomField, { ...props })] })) }, props.item.name));
48
48
  };
49
49
 
50
50
  export { FormNumberFieldDecimal as default };
@@ -3,7 +3,7 @@ import { FormControl, RadioGroup, FormControlLabel, Typography, Radio } from '@m
3
3
  import { Controller } from 'react-hook-form';
4
4
  import FormBottomField from '../FormBottomField/FormBottomField.esm.js';
5
5
  import 'dayjs';
6
- import { renderLabel, wrapFieldWithLabelTooltipIfEnabled } from '../../../utils/Constants/FormConstants.esm.js';
6
+ import { renderLabel } from '../../../utils/Constants/FormConstants.esm.js';
7
7
 
8
8
  /**
9
9
  * FormRadioGroup Component
@@ -24,7 +24,7 @@ const FormRadioGroup = ({ props, variant }) => {
24
24
  /**
25
25
  * Renders a group of radio buttons with labels and validation support
26
26
  */
27
- return (jsxs(Fragment, { children: [renderLabel(variant, props), wrapFieldWithLabelTooltipIfEnabled(variant, props, (jsx(FormControl, { component: "fieldset", children: jsx(Controller, { name: props.item.name, control: props.control, render: ({ field }) => (jsx(RadioGroup, { value: field.value || '', onChange: (e) => {
27
+ return (jsxs(Fragment, { children: [renderLabel(variant, props), jsx(FormControl, { component: "fieldset", children: jsx(Controller, { name: props.item.name, control: props.control, render: ({ field }) => (jsx(RadioGroup, { value: field.value || '', onChange: (e) => {
28
28
  field.onChange(e.target.value); // update form state
29
29
  props.item.onChangeFn && props.item.onChangeFn(e.target.value); // optional handler
30
30
  }, row: true, sx: {
@@ -38,7 +38,7 @@ const FormRadioGroup = ({ props, variant }) => {
38
38
  '& .MuiSvgIcon-root': {
39
39
  fontSize: 16, // controls the radio icon size
40
40
  },
41
- } }), label: jsx(Typography, { fontSize: '11px', fontWeight: 'normal !important', children: option.label }) }, i))) })) }) }))), jsx(FormBottomField, { ...props })] }));
41
+ } }), label: jsx(Typography, { fontSize: '11px', fontWeight: 'normal !important', children: option.label }) }, i))) })) }) }), jsx(FormBottomField, { ...props })] }));
42
42
  };
43
43
 
44
44
  export { FormRadioGroup as default };
@@ -1,9 +1,10 @@
1
1
  import { jsx, Fragment, jsxs } from 'react/jsx-runtime';
2
2
  import { Controller } from 'react-hook-form';
3
+ import { Tooltip, Box } from '@mui/material';
3
4
  import FormBottomField from '../FormBottomField/FormBottomField.esm.js';
4
5
  import { TextAreaField } from './FormTextAreaField.styles.esm.js';
5
6
  import 'dayjs';
6
- import { renderLabel, wrapFieldWithLabelTooltipIfEnabled } from '../../../utils/Constants/FormConstants.esm.js';
7
+ import { renderLabel } from '../../../utils/Constants/FormConstants.esm.js';
7
8
 
8
9
  /**
9
10
  * FormTextAreaField Component
@@ -29,37 +30,37 @@ const FormTextAreaField = ({ props, variant, }) => {
29
30
  /**
30
31
  * Renders the textarea component with validation support
31
32
  */
32
- return (jsx(Fragment, { children: jsx(Controller, { control: props.control, name: props.item.name, render: ({ field }) => (jsxs(Fragment, { children: [renderLabel(variant, props), wrapFieldWithLabelTooltipIfEnabled(variant, props, (jsx(TextAreaField, { multiline: true, size: "small", InputProps: {
33
- style: {
34
- border: 'none',
35
- },
36
- }, sx: {
37
- ...props.item.sx,
38
- }, minRows: props.item.minRows || 1, maxRows: props.item.maxRows || 100, placeholder: props.item.placeholder || 'Type Something...', ...field, label: variant !== 'standard'
39
- ? `${props.item.label}${props.item.required ? ' *' : ''}`
40
- : '', error: isShowBorderError, value: field.value || '', disabled: props.item.disable, inputProps: {
41
- /**
42
- * Handles input events with text restrictions
43
- *
44
- * @param {any} e - The input event object
45
- *
46
- * @remarks
47
- * - Removes special characters if allowSpecialChars is false
48
- * - Prevents input that starts with a space
49
- */
50
- onInput: (e) => {
51
- if (!props?.item?.allowSpecialChars) {
52
- const value = e.target.value;
53
- e.target.value = value.replace(/[^a-zA-Z0-9 ]/g, '');
54
- } // Allow only alphanumeric and space
55
- if (e.target.value.length === 1 && e.target.value === ' ') {
56
- e.target.value = '';
57
- }
58
- },
59
- 'aria-labelledby': `${props.item.name}-label`,
60
- 'aria-describedby': `${props.item.name}-helper ${props.item.name}-error`,
61
- 'aria-required': props.item.required ? true : undefined,
62
- } }))), jsx(FormBottomField, { ...props })] })) }, props.item.name) }));
33
+ return (jsx(Fragment, { children: jsx(Controller, { control: props.control, name: props.item.name, render: ({ field }) => (jsxs(Fragment, { children: [renderLabel(variant, props), jsx(Tooltip, { title: props.item.isTooltipEnable ? (field.value || '') : '', placement: "bottom-start", children: jsxs(Box, { sx: { width: '100%', position: 'relative' }, children: [jsx(TextAreaField, { multiline: true, size: "small", InputProps: {
34
+ style: {
35
+ border: 'none',
36
+ },
37
+ }, sx: {
38
+ ...props.item.sx,
39
+ }, minRows: props.item.minRows || 1, maxRows: props.item.maxRows || 100, placeholder: props.item.placeholder || 'Type Something...', ...field, label: variant !== 'standard'
40
+ ? `${props.item.label}${props.item.required ? ' *' : ''}`
41
+ : '', error: isShowBorderError, value: field.value || '', disabled: props.item.disable, inputProps: {
42
+ /**
43
+ * Handles input events with text restrictions
44
+ *
45
+ * @param {any} e - The input event object
46
+ *
47
+ * @remarks
48
+ * - Removes special characters if allowSpecialChars is false
49
+ * - Prevents input that starts with a space
50
+ */
51
+ onInput: (e) => {
52
+ if (!props?.item?.allowSpecialChars) {
53
+ const value = e.target.value;
54
+ e.target.value = value.replace(/[^a-zA-Z0-9 ]/g, '');
55
+ } // Allow only alphanumeric and space
56
+ if (e.target.value.length === 1 && e.target.value === ' ') {
57
+ e.target.value = '';
58
+ }
59
+ },
60
+ 'aria-labelledby': `${props.item.name}-label`,
61
+ 'aria-describedby': `${props.item.name}-helper ${props.item.name}-error`,
62
+ 'aria-required': props.item.required ? true : undefined,
63
+ } }), props.item.disable && props.item.isTooltipEnable && (jsx(Box, { sx: { position: 'absolute', top: 0, left: 0, width: '100%', height: '100%', zIndex: 1 } }))] }) }), jsx(FormBottomField, { ...props })] })) }, props.item.name) }));
63
64
  };
64
65
 
65
66
  export { FormTextAreaField as default };
@@ -1,9 +1,10 @@
1
1
  import { jsx, jsxs, Fragment } from 'react/jsx-runtime';
2
2
  import { Controller } from 'react-hook-form';
3
+ import { Tooltip, Box } from '@mui/material';
3
4
  import { FormTextFieldComponent } from './FormTextField.styles.esm.js';
4
5
  import FormBottomField from '../FormBottomField/FormBottomField.esm.js';
5
6
  import 'dayjs';
6
- import { renderLabel, wrapFieldWithLabelTooltipIfEnabled } from '../../../utils/Constants/FormConstants.esm.js';
7
+ import { renderLabel } from '../../../utils/Constants/FormConstants.esm.js';
7
8
 
8
9
  /**
9
10
  * FormTextField Component
@@ -88,24 +89,24 @@ const FormTextField = ({ props, variant }) => {
88
89
  * Renders the text field component using react-hook-form's Controller
89
90
  * for controlled form state management
90
91
  */
91
- return (jsx(Controller, { control: props.control, name: props.item.name, render: ({ field, fieldState }) => (jsxs(Fragment, { children: [renderLabel(variant, props), wrapFieldWithLabelTooltipIfEnabled(variant, props, (jsx(FormTextFieldComponent, { ...field, fullWidth: true, autoFocus: props.item.autoFocus, error: !!fieldState.error, label: label, placeholder: props.item.placeholder || '', autoComplete: "off", sx: {
92
- ...props.item.sx,
93
- }, value: field.value || '', size: "small", disabled: props.item.disable, onBlur: (e) => {
94
- // Call custom onBlur handler if provided
95
- props?.item?.onBlurFn && props?.item?.onBlurFn(e);
96
- }, inputProps: {
97
- ...{
98
- maxLength: props.item.maxLength || 100,
99
- onInput: onInput,
100
- onPaste: (e) => {
101
- if (props.item.doNotAllowPaste)
102
- e.preventDefault();
103
- },
104
- },
105
- 'aria-labelledby': `${props.item.name}-label`,
106
- 'aria-describedby': `${props.item.name}-helper ${props.item.name}-error`,
107
- 'aria-required': props.item.required ? true : undefined,
108
- } }))), jsx(FormBottomField, { ...props })] })) }, props.item.name));
92
+ return (jsx(Controller, { control: props.control, name: props.item.name, render: ({ field, fieldState }) => (jsxs(Fragment, { children: [renderLabel(variant, props), jsx(Tooltip, { title: props.item.isTooltipEnable ? (field.value || '') : '', placement: "bottom-start", children: jsxs(Box, { sx: { width: '100%', position: 'relative' }, children: [jsx(FormTextFieldComponent, { ...field, fullWidth: true, autoFocus: props.item.autoFocus, error: !!fieldState.error, label: label, placeholder: props.item.placeholder || '', autoComplete: "off", sx: {
93
+ ...props.item.sx,
94
+ }, value: field.value || '', size: "small", disabled: props.item.disable, onBlur: (e) => {
95
+ // Call custom onBlur handler if provided
96
+ props?.item?.onBlurFn && props?.item?.onBlurFn(e);
97
+ }, inputProps: {
98
+ ...{
99
+ maxLength: props.item.maxLength || 100,
100
+ onInput: onInput,
101
+ onPaste: (e) => {
102
+ if (props.item.doNotAllowPaste)
103
+ e.preventDefault();
104
+ },
105
+ },
106
+ 'aria-labelledby': `${props.item.name}-label`,
107
+ 'aria-describedby': `${props.item.name}-helper ${props.item.name}-error`,
108
+ 'aria-required': props.item.required ? true : undefined,
109
+ } }), props.item.disable && props.item.isTooltipEnable && (jsx(Box, { sx: { position: 'absolute', top: 0, left: 0, width: '100%', height: '100%', zIndex: 1 } }))] }) }), jsx(FormBottomField, { ...props })] })) }, props.item.name));
109
110
  };
110
111
 
111
112
  export { FormTextField as default };
@@ -2,7 +2,7 @@ import { jsx, jsxs, Fragment } from 'react/jsx-runtime';
2
2
  import { Controller } from 'react-hook-form';
3
3
  import FormBottomField from '../FormBottomField/FormBottomField.esm.js';
4
4
  import 'dayjs';
5
- import { renderLabel, wrapFieldWithLabelTooltipIfEnabled } from '../../../utils/Constants/FormConstants.esm.js';
5
+ import { renderLabel } from '../../../utils/Constants/FormConstants.esm.js';
6
6
  import { Box, TextField, Select, MenuItem } from '@mui/material';
7
7
 
8
8
  /**
@@ -66,7 +66,7 @@ const FormTextFieldWithSelect = ({ props, variant, }) => {
66
66
  * Renders the text field component using react-hook-form's Controller
67
67
  * for controlled form state management
68
68
  */
69
- return (jsx(Controller, { control: props.control, name: props.item.name, render: ({ field, fieldState }) => (jsxs(Fragment, { children: [renderLabel(variant, props), wrapFieldWithLabelTooltipIfEnabled(variant, props, (jsxs(Box, { sx: { display: 'flex', width: '100%' }, children: [jsx(TextField, { ...field, fullWidth: true, autoFocus: props.item.autoFocus, error: !!fieldState.error, label: label, placeholder: props.item.placeholder || '', autoComplete: "off", sx: {
69
+ return (jsx(Controller, { control: props.control, name: props.item.name, render: ({ field, fieldState }) => (jsxs(Fragment, { children: [renderLabel(variant, props), jsxs(Box, { sx: { display: 'flex', width: '100%' }, children: [jsx(TextField, { ...field, fullWidth: true, autoFocus: props.item.autoFocus, error: !!fieldState.error, label: label, placeholder: props.item.placeholder || '', autoComplete: "off", sx: {
70
70
  ...props.item.sx,
71
71
  '& .MuiOutlinedInput-root': {
72
72
  borderTopRightRadius: 0,
@@ -96,7 +96,7 @@ const FormTextFieldWithSelect = ({ props, variant, }) => {
96
96
  // },
97
97
  }, disabled: props.item.disable, error: !!fieldState.error, children: props?.item?.options?.map((item) => {
98
98
  return (jsx(MenuItem, { value: item.value, children: item.label }, item.value));
99
- }) })) })] }))), jsx(FormBottomField, { ...props })] })) }, props.item.name));
99
+ }) })) })] }), jsx(FormBottomField, { ...props })] })) }, props.item.name));
100
100
  };
101
101
 
102
102
  export { FormTextFieldWithSelect as default };
@@ -5,7 +5,7 @@ import { useState } from 'react';
5
5
  import { Controller } from 'react-hook-form';
6
6
  import FormBottomField from '../FormBottomField/FormBottomField.esm.js';
7
7
  import 'dayjs';
8
- import { renderLabel, wrapFieldWithLabelTooltipIfEnabled } from '../../../utils/Constants/FormConstants.esm.js';
8
+ import { renderLabel } from '../../../utils/Constants/FormConstants.esm.js';
9
9
 
10
10
  /**
11
11
  * PasswordField Component
@@ -46,7 +46,7 @@ const PasswordField = ({ props, variant }) => {
46
46
  /**
47
47
  * Renders the password field component with visibility toggle
48
48
  */
49
- return (jsx(Box, { position: 'relative', children: jsx(FormControl, { fullWidth: true, children: jsx(Controller, { control: props.control, name: props.item.name, render: ({ field }) => (jsxs(Fragment, { children: [jsxs(Box, { sx: { position: 'relative' }, children: [renderLabel(variant, props), wrapFieldWithLabelTooltipIfEnabled(variant, props, (jsx(TextField, { size: "small", error: isShowBorderError, type: showPassword ? 'text' : 'password', autoComplete: props.item?.InputProps?.autoComplete || 'off', placeholder: props.item.placeholder || '', ...field, label: label, sx: {
49
+ return (jsx(Box, { position: 'relative', children: jsx(FormControl, { fullWidth: true, children: jsx(Controller, { control: props.control, name: props.item.name, render: ({ field }) => (jsxs(Fragment, { children: [jsxs(Box, { sx: { position: 'relative' }, children: [renderLabel(variant, props), jsx(TextField, { size: "small", error: isShowBorderError, type: showPassword ? 'text' : 'password', autoComplete: props.item?.InputProps?.autoComplete || 'off', placeholder: props.item.placeholder || '', ...field, label: label, sx: {
50
50
  width: '100%',
51
51
  '& .css-kichxs-MuiFormLabel-root-MuiInputLabel-root,.css-1holvmy': {
52
52
  top: '-8px',
@@ -73,7 +73,7 @@ const PasswordField = ({ props, variant }) => {
73
73
  e.preventDefault();
74
74
  }
75
75
  },
76
- }, value: field.value || null, disabled: props.item.disable }))), jsx(IconButton, { sx: {
76
+ }, value: field.value || null, disabled: props.item.disable }), jsx(IconButton, { sx: {
77
77
  position: 'absolute',
78
78
  right: '14px',
79
79
  top: variant === 'standard' ? '70%' : '50%',
@@ -3,10 +3,10 @@ import { Controller } from 'react-hook-form';
3
3
  import FormBottomField from '../FormBottomField/FormBottomField.esm.js';
4
4
  import RichTextEditor from './RichTextEditor.esm.js';
5
5
  import 'dayjs';
6
- import { renderLabel, wrapFieldWithLabelTooltipIfEnabled } from '../../../utils/Constants/FormConstants.esm.js';
6
+ import { renderLabel } from '../../../utils/Constants/FormConstants.esm.js';
7
7
 
8
8
  const RichTextEditorWrapper = ({ props, variant, }) => {
9
- return (jsx(Controller, { control: props.control, name: props.item.name, render: () => (jsxs(Fragment, { children: [renderLabel(variant, props), wrapFieldWithLabelTooltipIfEnabled(variant, props, (jsx(RichTextEditor, { props: props }))), jsx(FormBottomField, { ...props })] })) }, props.item.name));
9
+ return (jsx(Controller, { control: props.control, name: props.item.name, render: () => (jsxs(Fragment, { children: [renderLabel(variant, props), jsx(RichTextEditor, { props: props }), jsx(FormBottomField, { ...props })] })) }, props.item.name));
10
10
  };
11
11
 
12
12
  export { RichTextEditorWrapper as default };
@@ -4,7 +4,7 @@ import { useState, useRef, useMemo, useCallback } from 'react';
4
4
  import { useWatch, Controller } from 'react-hook-form';
5
5
  import FormBottomField from '../FormBottomField/FormBottomField.esm.js';
6
6
  import 'dayjs';
7
- import { renderLabel, wrapFieldWithLabelTooltipIfEnabled } from '../../../utils/Constants/FormConstants.esm.js';
7
+ import { renderLabel } from '../../../utils/Constants/FormConstants.esm.js';
8
8
 
9
9
  //region old code
10
10
  // const MultiSelectAutocomplete = ({
@@ -185,7 +185,7 @@ const MultiSelectAutocomplete = ({ props, variant, }) => {
185
185
  const handleBlur = useCallback((e) => {
186
186
  props?.item?.onBlurFn && props?.item?.onBlurFn(e);
187
187
  }, [props]);
188
- return (jsx(Controller, { control: props.control, name: props.item.name, render: ({ field: { ref, onBlur: fieldOnBlur } }) => (jsxs(Fragment, { children: [renderLabel(variant, props), wrapFieldWithLabelTooltipIfEnabled(variant, props, (jsx(Autocomplete, { ref: ref, open: open, onOpen: () => setOpen(true), onClose: () => setOpen(false), multiple: true, disableCloseOnSelect: true, id: `${props.item.name}-autocomplete-multi`, options: options, value: selectedOptions, getOptionLabel: getOptionLabelCb, isOptionEqualToValue: isOptionEqualCb, onChange: handleChange, onBlur: (e) => {
188
+ return (jsx(Controller, { control: props.control, name: props.item.name, render: ({ field: { ref, onBlur: fieldOnBlur } }) => (jsxs(Fragment, { children: [renderLabel(variant, props), jsx(Autocomplete, { ref: ref, open: open, onOpen: () => setOpen(true), onClose: () => setOpen(false), multiple: true, disableCloseOnSelect: true, id: `${props.item.name}-autocomplete-multi`, options: options, value: selectedOptions, getOptionLabel: getOptionLabelCb, isOptionEqualToValue: isOptionEqualCb, onChange: handleChange, onBlur: (e) => {
189
189
  fieldOnBlur();
190
190
  handleBlur(e);
191
191
  }, size: "small", disablePortal: false, autoHighlight: true, selectOnFocus: true, clearOnBlur: false, renderTags: (tagValue, getTagProps) => (jsx(Box, { ref: tagsContainerRef, sx: {
@@ -232,7 +232,7 @@ const MultiSelectAutocomplete = ({ props, variant, }) => {
232
232
  'aria-labelledby': `${props.item.name}-label`,
233
233
  'aria-describedby': `${props.item.name}-helper ${props.item.name}-error`,
234
234
  'aria-required': props.item.required ? true : undefined,
235
- } })) }))), jsx(FormBottomField, { ...props })] })) }, props.item.name));
235
+ } })) }), jsx(FormBottomField, { ...props })] })) }, props.item.name));
236
236
  };
237
237
 
238
238
  export { MultiSelectAutocomplete as default };
@@ -4,7 +4,7 @@ import { useState, useRef, useMemo, useCallback } from 'react';
4
4
  import { useWatch } from 'react-hook-form';
5
5
  import FormBottomField from '../FormBottomField/FormBottomField.esm.js';
6
6
  import 'dayjs';
7
- import { renderLabel, wrapFieldWithLabelTooltipIfEnabled } from '../../../utils/Constants/FormConstants.esm.js';
7
+ import { renderLabel } from '../../../utils/Constants/FormConstants.esm.js';
8
8
  import { useMaterialReactTable, MaterialReactTable } from 'material-react-table';
9
9
 
10
10
  const ITEM_HEIGHT = 50;
@@ -337,7 +337,7 @@ const MultiSelectTable = ({ props, variant, }) => {
337
337
  '& .MuiTablePagination-root': {
338
338
  padding: '0px !important'
339
339
  }
340
- }, children: [renderLabel(variant, props), variant !== 'standard' ? (jsxs(InputLabel, { error: isShowBorderError, id: `${props.item.name}-mst-labelId`, children: [props.item.label, props.item.required ? ' *' : ''] })) : null, wrapFieldWithLabelTooltipIfEnabled(variant, props, (jsx(Select, { labelId: `${props.item.name}-mst-labelId`, id: `${props.item.name}-mst-select`, multiple: true, sx: {
340
+ }, children: [renderLabel(variant, props), variant !== 'standard' ? (jsxs(InputLabel, { error: isShowBorderError, id: `${props.item.name}-mst-labelId`, children: [props.item.label, props.item.required ? ' *' : ''] })) : null, jsx(Select, { labelId: `${props.item.name}-mst-labelId`, id: `${props.item.name}-mst-select`, multiple: true, sx: {
341
341
  '& .MuiTypography-root': {
342
342
  fontSize: '5px !important',
343
343
  },
@@ -356,7 +356,7 @@ const MultiSelectTable = ({ props, variant, }) => {
356
356
  maxHeight: 450, width: '100%', overflow: 'hidden', overflowY: 'auto', '.MuiTextField-root': {
357
357
  width: '280% !important'
358
358
  }
359
- }, children: rows.length > 0 ? (jsx(MaterialReactTable, { table: table })) : (jsx(Box, { sx: { padding: '16px', textAlign: 'center', color: '#999', fontSize: '11px' }, children: "No Options found" })) }) }))), jsx(FormBottomField, { ...props })] }) }, props.item.name));
359
+ }, children: rows.length > 0 ? (jsx(MaterialReactTable, { table: table })) : (jsx(Box, { sx: { padding: '16px', textAlign: 'center', color: '#999', fontSize: '11px' }, children: "No Options found" })) }) }), jsx(FormBottomField, { ...props })] }) }, props.item.name));
360
360
  };
361
361
 
362
362
  export { MultiSelectTable as default };
@@ -10,7 +10,7 @@ import React__default, { useState, useRef, useMemo } from 'react';
10
10
  import { useWatch } from 'react-hook-form';
11
11
  import FormBottomField from '../FormBottomField/FormBottomField.esm.js';
12
12
  import 'dayjs';
13
- import { renderLabel, wrapFieldWithLabelTooltipIfEnabled } from '../../../utils/Constants/FormConstants.esm.js';
13
+ import { renderLabel } from '../../../utils/Constants/FormConstants.esm.js';
14
14
 
15
15
  const ITEM_HEIGHT = 36;
16
16
  const ITEM_PADDING_TOP = 2;
@@ -56,7 +56,7 @@ function MultiSelectV1({ props, variant, }) {
56
56
  const selectedOptions = useMemo(() => options.filter((item) => fieldValue?.split(',').some((value) => value === item.value)), [options, fieldValue]);
57
57
  const selectedValuesString = selectedOptions.map((item) => item.label).join(' , ');
58
58
  const isShowBorderError = !!props.errors?.[props.item.name];
59
- return (jsx(Box, { children: jsxs(FormControl, { fullWidth: true, ref: containerRef, sx: { '& .MuiFormLabel-root': { top: -10 }, '& .MuiInputLabel-shrink': { top: 0 } }, children: [renderLabel(variant, props), variant !== 'standard' && (jsxs(InputLabel, { error: isShowBorderError, id: `${props.item.name}-ms-labelId`, children: [props.item.label, props.item.required ? ' *' : ''] })), wrapFieldWithLabelTooltipIfEnabled(variant, props, (jsxs(Select, { labelId: `${props.item.name}-ms-labelId`, id: `${props.item.name}-ms-select`, multiple: true, displayEmpty: true, error: isShowBorderError, disabled: props.item.disable, value: fieldValue ? extractValuesToArray(fieldValue) : [], onChange: handleChange, onOpen: () => {
59
+ return (jsx(Box, { children: jsxs(FormControl, { fullWidth: true, ref: containerRef, sx: { '& .MuiFormLabel-root': { top: -10 }, '& .MuiInputLabel-shrink': { top: 0 } }, children: [renderLabel(variant, props), variant !== 'standard' && (jsxs(InputLabel, { error: isShowBorderError, id: `${props.item.name}-ms-labelId`, children: [props.item.label, props.item.required ? ' *' : ''] })), jsxs(Select, { labelId: `${props.item.name}-ms-labelId`, id: `${props.item.name}-ms-select`, multiple: true, displayEmpty: true, error: isShowBorderError, disabled: props.item.disable, value: fieldValue ? extractValuesToArray(fieldValue) : [], onChange: handleChange, onOpen: () => {
60
60
  setSavedSortValue(fieldValue);
61
61
  setTimeout(() => textfieldRef.current?.focus(), 0);
62
62
  }, onClose: () => {
@@ -118,7 +118,7 @@ function MultiSelectV1({ props, variant, }) {
118
118
  lineHeight: '1.2'
119
119
  }
120
120
  } })] }, option.value));
121
- })) : (jsx(MenuItem, { className: 'multiselect-datanotfound', sx: { marginLeft: '30px', fontSize: '12px' }, disabled: true, children: "No data Found" }))] }))), jsx(FormBottomField, { ...props })] }) }, props.item.name));
121
+ })) : (jsx(MenuItem, { disabled: true, children: "No data Found" }))] }), jsx(FormBottomField, { ...props })] }) }, props.item.name));
122
122
  }
123
123
 
124
124
  export { MultiSelectV1 as default };
@@ -1,10 +1,10 @@
1
1
  import { jsx, jsxs, Fragment } from 'react/jsx-runtime';
2
2
  import { createElement } from 'react';
3
- import { Autocomplete, TextField, Tooltip } from '@mui/material';
3
+ import { Tooltip, Box, Autocomplete, TextField } from '@mui/material';
4
4
  import { useWatch, Controller } from 'react-hook-form';
5
5
  import FormBottomField from '../FormBottomField/FormBottomField.esm.js';
6
6
  import 'dayjs';
7
- import { renderLabel, wrapFieldWithLabelTooltipIfEnabled } from '../../../utils/Constants/FormConstants.esm.js';
7
+ import { renderLabel } from '../../../utils/Constants/FormConstants.esm.js';
8
8
 
9
9
  const SingleSelect = ({ props, variant }) => {
10
10
  const isError = !!props.errors?.[props.item.name];
@@ -14,61 +14,49 @@ const SingleSelect = ({ props, variant }) => {
14
14
  const value = currentValue
15
15
  ? props.item.options?.find((item) => item.value === currentValue)
16
16
  : null;
17
- return (jsx(Controller, { control: props.control, name: props.item.name, render: ({ field }) => (jsxs(Fragment, { children: [renderLabel(variant, props), wrapFieldWithLabelTooltipIfEnabled(variant, props, (jsx(Autocomplete, { ...field, id: `${props.item.name}-autocomplete`, value: value, onChange: (_, newValue) => {
18
- props.setValue(props?.item?.name, newValue?.value);
19
- props?.item?.onChangeFn && props?.item?.onChangeFn(newValue?.value, newValue);
20
- props?.clearErrors && props?.clearErrors(props?.item?.name);
21
- }, onBlur: (e) => {
22
- props?.item?.onBlurFn && props?.item?.onBlurFn(e);
23
- }, size: "small", sx: {
24
- '& .MuiAutocomplete-input': {
25
- padding: '0px 0px 0px 5px !important',
26
- },
27
- '& .css-erkti9-MuiFormLabel-root-MuiInputLabel-root,.css-8edmr2-MuiFormLabel-root-MuiInputLabel-root': {
28
- top: '-3px',
29
- },
30
- // Note: Options are rendered in a portal; keep this as a fallback only
31
- '& .MuiAutocomplete-option': {
32
- fontSize: '11px',
33
- zIndex: 2000,
34
- },
35
- ...props.item.sx,
36
- }, ListboxProps: {
37
- onScroll: (event) => {
38
- const listboxNode = event.currentTarget;
39
- if (listboxNode.scrollTop + listboxNode.clientHeight === listboxNode.scrollHeight) ;
40
- },
41
- }, disabled: props.item.disable, options: props.item.options || [], slotProps: {
42
- popper: {
43
- sx: {
44
- zIndex: 1401,
45
- },
46
- },
47
- listbox: {
48
- sx: {
49
- fontSize: '11px',
50
- },
51
- },
52
- }, renderOption: (props, option) => (createElement("li", { ...props, value: option.value, key: option.value }, option.label)), renderInput: (params) => {
53
- const inputField = (jsx(TextField, { ...params, placeholder: props.item.placeholder, error: isShowBorderError, label: variant !== 'standard'
54
- ? `${props.item.label}${props.item.required ? ' *' : ''}`
55
- : '', inputProps: {
56
- ...params.inputProps,
57
- 'aria-labelledby': `${props.item.name}-label`,
58
- 'aria-describedby': `${props.item.name}-helper ${props.item.name}-error`,
59
- 'aria-required': props.item.required ? true : undefined,
60
- } }));
61
- if (!props.item.isLabelToolTipEnable) {
62
- return inputField;
63
- }
64
- return (jsx(Tooltip, { title: value?.label ?? '', disableHoverListener: !value, children: jsx("span", { style: {
65
- display: 'block',
66
- overflow: 'hidden',
67
- textOverflow: 'ellipsis',
68
- whiteSpace: 'nowrap',
69
- width: '100%',
70
- }, children: inputField }) }));
71
- } }))), jsx(FormBottomField, { ...props })] })) }, props.item.name));
17
+ return (jsx(Controller, { control: props.control, name: props.item.name, render: ({ field }) => (jsxs(Fragment, { children: [renderLabel(variant, props), jsx(Tooltip, { title: props.item.isTooltipEnable ? (value?.label || '') : '', placement: "bottom-start", children: jsxs(Box, { sx: { width: '100%', position: 'relative' }, children: [jsx(Autocomplete, { ...field, id: `${props.item.name}-autocomplete`, value: value, onChange: (_, newValue) => {
18
+ props.setValue(props?.item?.name, newValue?.value);
19
+ props?.item?.onChangeFn && props?.item?.onChangeFn(newValue?.value, newValue);
20
+ props?.clearErrors && props?.clearErrors(props?.item?.name);
21
+ }, onBlur: (e) => {
22
+ props?.item?.onBlurFn && props?.item?.onBlurFn(e);
23
+ }, size: "small", sx: {
24
+ '& .MuiAutocomplete-input': {
25
+ padding: '0px 0px 0px 5px !important',
26
+ },
27
+ '& .css-erkti9-MuiFormLabel-root-MuiInputLabel-root,.css-8edmr2-MuiFormLabel-root-MuiInputLabel-root': {
28
+ top: '-3px',
29
+ },
30
+ // Note: Options are rendered in a portal; keep this as a fallback only
31
+ '& .MuiAutocomplete-option': {
32
+ fontSize: '11px',
33
+ zIndex: 2000,
34
+ },
35
+ ...props.item.sx,
36
+ }, ListboxProps: {
37
+ onScroll: (event) => {
38
+ const listboxNode = event.currentTarget;
39
+ if (listboxNode.scrollTop + listboxNode.clientHeight === listboxNode.scrollHeight) ;
40
+ },
41
+ }, disabled: props.item.disable, options: props.item.options || [], slotProps: {
42
+ popper: {
43
+ sx: {
44
+ zIndex: 1401,
45
+ },
46
+ },
47
+ listbox: {
48
+ sx: {
49
+ fontSize: '11px',
50
+ },
51
+ },
52
+ }, renderOption: (props, option) => (createElement("li", { ...props, value: option.value, key: option.value }, option.label)), renderInput: (params) => (jsx(TextField, { ...params, placeholder: props.item.placeholder, error: isShowBorderError, label: variant !== 'standard'
53
+ ? `${props.item.label}${props.item.required ? ' *' : ''}`
54
+ : '', inputProps: {
55
+ ...params.inputProps,
56
+ 'aria-labelledby': `${props.item.name}-label`,
57
+ 'aria-describedby': `${props.item.name}-helper ${props.item.name}-error`,
58
+ 'aria-required': props.item.required ? true : undefined,
59
+ } })) }), props.item.disable && props.item.isTooltipEnable && (jsx(Box, { sx: { position: 'absolute', top: 0, left: 0, width: '100%', height: '100%', zIndex: 1 } }))] }) }), jsx(FormBottomField, { ...props })] })) }, props.item.name));
72
60
  };
73
61
 
74
62
  export { SingleSelect as default };
@@ -3,7 +3,7 @@ import { FormControl, InputLabel, Select, MenuItem } from '@mui/material';
3
3
  import { useWatch } from 'react-hook-form';
4
4
  import FormBottomField from '../FormBottomField/FormBottomField.esm.js';
5
5
  import 'dayjs';
6
- import { renderLabel, wrapFieldWithLabelTooltipIfEnabled } from '../../../utils/Constants/FormConstants.esm.js';
6
+ import { renderLabel } from '../../../utils/Constants/FormConstants.esm.js';
7
7
 
8
8
  const SingleSelectNonAutoComplete = ({ props, variant, }) => {
9
9
  const isError = !!props.errors?.[props.item.name];
@@ -17,7 +17,7 @@ const SingleSelectNonAutoComplete = ({ props, variant, }) => {
17
17
  '& .MuiInputLabel-shrink': {
18
18
  top: 0,
19
19
  },
20
- }, disabled: props.item.disable, children: [renderLabel(variant, props), variant !== 'standard' && (jsx(InputLabel, { error: isShowBorderError, id: `${props.item.name}-labelId`, children: props.item.label })), wrapFieldWithLabelTooltipIfEnabled(variant, props, (jsx(Select, { labelId: `${props.item.name}-labelId`, id: `${props.item.name}-select`, value: value, label: variant !== 'standard' ? `${props.item.label}${props.item.required ? ' *' : ''}` : '', disabled: props.item.disable, onChange: (e) => props.setValue(props.item.name, e.target.value), onBlur: (e) => {
20
+ }, disabled: props.item.disable, children: [renderLabel(variant, props), variant !== 'standard' && (jsx(InputLabel, { error: isShowBorderError, id: `${props.item.name}-labelId`, children: props.item.label })), jsx(Select, { labelId: `${props.item.name}-labelId`, id: `${props.item.name}-select`, value: value, label: variant !== 'standard' ? `${props.item.label}${props.item.required ? ' *' : ''}` : '', disabled: props.item.disable, onChange: (e) => props.setValue(props.item.name, e.target.value), onBlur: (e) => {
21
21
  props?.item?.onBlurFn && props?.item?.onBlurFn(e);
22
22
  }, error: isShowBorderError, inputProps: {
23
23
  'aria-labelledby': `${props.item.name}-label`,
@@ -26,7 +26,7 @@ const SingleSelectNonAutoComplete = ({ props, variant, }) => {
26
26
  }, children: (props.item.options || []).map((item) => (jsx(MenuItem, { sx: {
27
27
  fontSize: '11px', // Adjust the font size as needed
28
28
  zIndex: 2000,
29
- }, value: item.value, children: item.label }, item.value))) }))), jsx(FormBottomField, { ...props })] }, props.item.name));
29
+ }, value: item.value, children: item.label }, item.value))) }), jsx(FormBottomField, { ...props })] }, props.item.name));
30
30
  };
31
31
 
32
32
  export { SingleSelectNonAutoComplete as default };
@@ -1,10 +1,10 @@
1
1
  import { jsx, jsxs, Fragment } from 'react/jsx-runtime';
2
- import { Autocomplete, Stack, Skeleton, TextField, Tooltip } from '@mui/material';
2
+ import { Autocomplete, Stack, Skeleton, Tooltip, TextField } from '@mui/material';
3
3
  import { useState, useEffect } from 'react';
4
4
  import { Controller } from 'react-hook-form';
5
5
  import '../../../node_modules/axios/index.esm.js';
6
6
  import 'dayjs';
7
- import { renderLabel, wrapFieldWithLabelTooltipIfEnabled } from '../../../utils/Constants/FormConstants.esm.js';
7
+ import { renderLabel } from '../../../utils/Constants/FormConstants.esm.js';
8
8
  import FormBottomField from '../FormBottomField/FormBottomField.esm.js';
9
9
  import axios from '../../../node_modules/axios/lib/axios.esm.js';
10
10
 
@@ -48,7 +48,7 @@ const SingleSelectSearchApi = ({ props, variant, }) => {
48
48
  // setSearchValue('');
49
49
  // }, [props.item?.changeValue]);
50
50
  const isOptionEqualToValue = (option, value) => option?.value === value?.value; // Assuming there's a 'value' property in your options
51
- return (jsx(Controller, { control: props.control, name: props.item.name, render: ({ field }) => (jsxs(Fragment, { children: [renderLabel(variant, props), wrapFieldWithLabelTooltipIfEnabled(variant, props, (jsx(Autocomplete, { ...field, value: props.getValues(props.item.name)
51
+ return (jsx(Controller, { control: props.control, name: props.item.name, render: ({ field }) => (jsxs(Fragment, { children: [renderLabel(variant, props), jsx(Autocomplete, { ...field, value: props.getValues(props.item.name)
52
52
  ? optionsFetched?.find((item) => item.value === props.getValues(props.item.name))
53
53
  : null, onChange: (_, newValue) => {
54
54
  // field.onChange(newValue);
@@ -68,18 +68,14 @@ const SingleSelectSearchApi = ({ props, variant, }) => {
68
68
  fontSize: '16px',
69
69
  },
70
70
  }, disabled: props.item.disable, options: optionsFetched, getOptionLabel: (option) => option.label, renderInput: (params) => {
71
- const inputField = (jsx(TextField, { ...params, onChange: (e) => {
72
- setSearchValue(e.target.value);
73
- }, label: variant !== 'standard'
74
- ? `${props.item.label}${props.item.required ? ' *' : ''}`
75
- : '', placeholder: props.item.placeholder }));
76
- if (!props.item.isLabelToolTipEnable) {
77
- return inputField;
78
- }
79
- return (jsx(Tooltip, { title: params.inputProps.value && params.inputProps.value, children: jsx("span", { style: { display: 'block', width: '100%' }, children: inputField }) }));
71
+ return (jsx(Tooltip, { title: params.inputProps.value && params.inputProps.value, children: jsx(TextField, { ...params, onChange: (e) => {
72
+ setSearchValue(e.target.value);
73
+ }, label: variant !== 'standard'
74
+ ? `${props.item.label}${props.item.required ? ' *' : ''}`
75
+ : '', placeholder: props.item.placeholder }) }));
80
76
  }, PaperComponent: ({ children }) => (jsx("div", { style: {
81
77
  background: '#fff',
82
- }, children: isLoading ? (jsxs(Stack, { padding: 2, spacing: 1, children: [jsx(Skeleton, { variant: "rectangular", width: '100%', height: 20 }), jsx(Skeleton, { variant: "rectangular", width: '100%', height: 20 }), jsx(Skeleton, { variant: "rectangular", width: '100%', height: 20 }), jsx(Skeleton, { variant: "rectangular", width: '100%', height: 20 }), jsx(Skeleton, { variant: "rectangular", width: '100%', height: 20 }), jsx(Skeleton, { variant: "rectangular", width: '100%', height: 20 })] })) : (children) })), isOptionEqualToValue: isOptionEqualToValue }))), props?.item?.helperText && (jsxs("span", { style: {
78
+ }, children: isLoading ? (jsxs(Stack, { padding: 2, spacing: 1, children: [jsx(Skeleton, { variant: "rectangular", width: '100%', height: 20 }), jsx(Skeleton, { variant: "rectangular", width: '100%', height: 20 }), jsx(Skeleton, { variant: "rectangular", width: '100%', height: 20 }), jsx(Skeleton, { variant: "rectangular", width: '100%', height: 20 }), jsx(Skeleton, { variant: "rectangular", width: '100%', height: 20 }), jsx(Skeleton, { variant: "rectangular", width: '100%', height: 20 })] })) : (children) })), isOptionEqualToValue: isOptionEqualToValue }), props?.item?.helperText && (jsxs("span", { style: {
83
79
  fontFamily: 'Roboto-Reg',
84
80
  fontSize: '11px',
85
81
  color: '#3651d3',
@@ -7,7 +7,7 @@ import { AdapterDayjs } from '@mui/x-date-pickers/AdapterDayjs';
7
7
  import { useWatch, Controller } from 'react-hook-form';
8
8
  import { ErrorMessageComponent } from '../../Form/Form.styles.esm.js';
9
9
  import 'dayjs';
10
- import { renderLabel, wrapFieldWithLabelTooltipIfEnabled, parseCustomTime, formatDayjsToCustomTime } from '../../../utils/Constants/FormConstants.esm.js';
10
+ import { renderLabel, parseCustomTime, formatDayjsToCustomTime } from '../../../utils/Constants/FormConstants.esm.js';
11
11
 
12
12
  function TimePickerFieldWrapper({ props, variant, }) {
13
13
  const [TimePicker, setTimePicker] = useState(null);
@@ -27,7 +27,7 @@ function TimePickerFieldWrapper({ props, variant, }) {
27
27
  if (isLoading) {
28
28
  return jsx("div", { style: { minHeight: '36px' }, children: "Loading..." });
29
29
  }
30
- return (jsx(Fragment, { children: TimePicker && (jsxs(LocalizationProvider, { dateAdapter: AdapterDayjs, children: [jsx(Controller, { name: props.item.name, control: props.control, render: ({ field }) => (jsxs(Fragment, { children: [renderLabel(variant, props), wrapFieldWithLabelTooltipIfEnabled(variant, props, (jsx(TimePicker, { ...field, value: value ? parseCustomTime(value) : null, onChange: (newTime) => {
30
+ return (jsx(Fragment, { children: TimePicker && (jsxs(LocalizationProvider, { dateAdapter: AdapterDayjs, children: [jsx(Controller, { name: props.item.name, control: props.control, render: ({ field }) => (jsxs(Fragment, { children: [renderLabel(variant, props), jsx(TimePicker, { ...field, value: value ? parseCustomTime(value) : null, onChange: (newTime) => {
31
31
  const parsedTime = parseCustomTime(formatDayjsToCustomTime(newTime));
32
32
  const min = props.item.minTime ? parseCustomTime(props.item.minTime) : null;
33
33
  const max = props.item.maxTime ? parseCustomTime(props.item.maxTime) : null;
@@ -64,7 +64,7 @@ function TimePickerFieldWrapper({ props, variant, }) {
64
64
  },
65
65
  },
66
66
  },
67
- } })))] })) }), jsx(ErrorMessageComponent, { children: jsx(ErrorMessage, { errors: props.errors, name: props.item.name }) })] })) }));
67
+ } })] })) }), jsx(ErrorMessageComponent, { children: jsx(ErrorMessage, { errors: props.errors, name: props.item.name }) })] })) }));
68
68
  }
69
69
 
70
70
  export { TimePickerFieldWrapper as default };
@@ -1,4 +1,4 @@
1
- import { __exports as Calendar } from '../../../../../_virtual/index.esm7.js';
1
+ import { __exports as Calendar } from '../../../../../_virtual/index.esm4.js';
2
2
  import React__default from 'react';
3
3
  import { __require as requirePropTypes } from '../../../../prop-types/index.esm.js';
4
4
  import { __require as requireDayCell } from '../DayCell/index.esm.js';
@@ -1,4 +1,4 @@
1
- import { __exports as DateInput } from '../../../../../_virtual/index.esm12.js';
1
+ import { __exports as DateInput } from '../../../../../_virtual/index.esm11.js';
2
2
  import React__default from 'react';
3
3
  import { __require as requirePropTypes } from '../../../../prop-types/index.esm.js';
4
4
  import { __require as requireClassnames } from '../../../../classnames/index.esm.js';
@@ -1,4 +1,4 @@
1
- import { __exports as DateRange } from '../../../../../_virtual/index.esm5.js';
1
+ import { __exports as DateRange } from '../../../../../_virtual/index.esm7.js';
2
2
  import React__default from 'react';
3
3
  import { __require as requirePropTypes } from '../../../../prop-types/index.esm.js';
4
4
  import { __require as requireCalendar } from '../Calendar/index.esm.js';
@@ -1,4 +1,4 @@
1
- import { __exports as DateRangePicker } from '../../../../../_virtual/index.esm4.js';
1
+ import { __exports as DateRangePicker } from '../../../../../_virtual/index.esm5.js';
2
2
  import React__default from 'react';
3
3
  import { __require as requirePropTypes } from '../../../../prop-types/index.esm.js';
4
4
  import { __require as requireDateRange } from '../DateRange/index.esm.js';
@@ -1,4 +1,4 @@
1
- import { __exports as DayCell } from '../../../../../_virtual/index.esm11.js';
1
+ import { __exports as DayCell } from '../../../../../_virtual/index.esm13.js';
2
2
  import React__default from 'react';
3
3
  import { __require as requirePropTypes } from '../../../../prop-types/index.esm.js';
4
4
  import { __require as requireClassnames } from '../../../../classnames/index.esm.js';
@@ -1,4 +1,4 @@
1
- import { __exports as InputRangeField } from '../../../../../_virtual/index.esm13.js';
1
+ import { __exports as InputRangeField } from '../../../../../_virtual/index.esm14.js';
2
2
  import React__default from 'react';
3
3
  import { __require as requirePropTypes } from '../../../../prop-types/index.esm.js';
4
4
 
@@ -1,4 +1,4 @@
1
- import { __exports as Month } from '../../../../../_virtual/index.esm14.js';
1
+ import { __exports as Month } from '../../../../../_virtual/index.esm12.js';
2
2
  import React__default from 'react';
3
3
  import { __require as requirePropTypes } from '../../../../prop-types/index.esm.js';
4
4
  import { __require as requireDayCell } from '../DayCell/index.esm.js';
@@ -1,12 +1,5 @@
1
- import type { ReactElement } from 'react';
2
1
  import dayjs, { Dayjs } from 'dayjs';
3
2
  import { VariantProps, FormRenderProps } from '../Interface/FormInterface';
4
- /** Full label text used for tooltips (label + required asterisk when applicable). */
5
- export declare const getLabelTooltipTitle: (props: FormRenderProps) => string;
6
- /**
7
- * For non-`standard` variants the visible label sits on the input; wrap the control so the full label shows on hover.
8
- */
9
- export declare const wrapFieldWithLabelTooltipIfEnabled: (variant: VariantProps, props: FormRenderProps, children: ReactElement) => ReactElement;
10
3
  /**
11
4
  * Renders a form input label with an optional required asterisk.
12
5
  *
@@ -1,18 +1,6 @@
1
1
  import { jsxs, jsx } from 'react/jsx-runtime';
2
- import { Tooltip } from '@mui/material';
3
2
  import dayjs from 'dayjs';
4
3
 
5
- /** Full label text used for tooltips (label + required asterisk when applicable). */
6
- const getLabelTooltipTitle = (props) => `${props.item.label}${props.item.required ? ' *' : ''}`;
7
- /**
8
- * For non-`standard` variants the visible label sits on the input; wrap the control so the full label shows on hover.
9
- */
10
- const wrapFieldWithLabelTooltipIfEnabled = (variant, props, children) => {
11
- if (!props.item.isLabelToolTipEnable || variant === 'standard') {
12
- return children;
13
- }
14
- return (jsx(Tooltip, { title: getLabelTooltipTitle(props), placement: "top", children: jsx("span", { style: { display: 'block', width: '100%' }, children: children }) }));
15
- };
16
4
  /**
17
5
  * Renders a form input label with an optional required asterisk.
18
6
  *
@@ -21,15 +9,7 @@ const wrapFieldWithLabelTooltipIfEnabled = (variant, props, children) => {
21
9
  * @param {boolean} [showLabel=false] - Whether to always show the label.
22
10
  * @returns {JSX.Element | false} The rendered label element or false if not shown.
23
11
  */
24
- const renderLabel = (variant, props, showLabel = false) => {
25
- if (!(variant === 'standard' || showLabel))
26
- return false;
27
- const labelInner = (jsxs("span", { id: `${props.item.name}-label`, className: "formInputlabel", style: { fontSize: '12px' }, children: [props.item.label, ' ', props.item.required && (jsx("span", { "aria-hidden": "true", style: { color: 'var(--mui-palette-error-main, #B3261E)' }, children: "*" }))] }));
28
- if (props.item.isLabelToolTipEnable) {
29
- return (jsx(Tooltip, { title: getLabelTooltipTitle(props), placement: "top", children: jsx("span", { style: { display: 'inline-block', maxWidth: '100%' }, children: labelInner }) }));
30
- }
31
- return labelInner;
32
- };
12
+ const renderLabel = (variant, props, showLabel = false) => (variant === 'standard' || showLabel) && (jsxs("span", { id: `${props.item.name}-label`, className: "formInputlabel", style: { fontSize: '12px' }, children: [props.item.label, ' ', props.item.required && (jsx("span", { "aria-hidden": "true", style: { color: 'var(--mui-palette-error-main, #B3261E)' }, children: "*" }))] }));
33
13
  /**
34
14
  * Formats a date string in "M/YYYY" or "MM/YYYY" format to "MM/01/YYYY".
35
15
  *
@@ -95,4 +75,4 @@ const extractDate = (inputDateString) => {
95
75
  return formattedDate;
96
76
  };
97
77
 
98
- export { extractDate, formatDateMonthAndYear, formatDayjsToCustomTime, getLabelTooltipTitle, parseCustomTime, renderLabel, wrapFieldWithLabelTooltipIfEnabled };
78
+ export { extractDate, formatDateMonthAndYear, formatDayjsToCustomTime, parseCustomTime, renderLabel };
@@ -81,8 +81,7 @@ export interface FormSectionPropsItem {
81
81
  labelField?: string;
82
82
  headerColor?: string;
83
83
  optionFontSize?: string;
84
- /** When true, shows a tooltip with the full field label on standard labels and outlined field wrappers (and single-select value overflow). Multi-select selection/value tooltips are always shown. */
85
- isLabelToolTipEnable?: boolean;
84
+ isTooltipEnable?: boolean;
86
85
  }
87
86
  export type VariantProps = 'standard' | 'outlined' | '';
88
87
  export interface FormRenderProps {
@@ -1,4 +1,4 @@
1
1
  export { calculateTotalArrayValueTotal, checkIsDateIsBefore, findMenuHierarchy, getDesiredDate, getFormattedDate, getInitials, getUsernameFromEmail, handleDownloadReactTableDataExcel, lightenColor } from './Constants/FunctionConstants.esm.js';
2
- export { extractDate, formatDateMonthAndYear, formatDayjsToCustomTime, getLabelTooltipTitle, parseCustomTime, renderLabel, wrapFieldWithLabelTooltipIfEnabled } from './Constants/FormConstants.esm.js';
2
+ export { extractDate, formatDateMonthAndYear, formatDayjsToCustomTime, parseCustomTime, renderLabel } from './Constants/FormConstants.esm.js';
3
3
 
4
4
  // Utility Functions - Helper functions for form operations and data manipulation
package/package.json CHANGED
@@ -1,6 +1,6 @@
1
1
  {
2
2
  "name": "tp-react-elements",
3
- "version": "1.2.0",
3
+ "version": "1.2.3",
4
4
  "private": false,
5
5
  "type": "module",
6
6
  "description": "React form components library built with React Hook Form and Yup",