@fctc/sme-widget-ui 1.3.2 → 1.3.4

This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
package/dist/icons.d.mts CHANGED
@@ -12,7 +12,7 @@ declare const AttachIcon: () => JSX.Element;
12
12
 
13
13
  declare const BackIcon: () => JSX.Element;
14
14
 
15
- declare const CalandarIcon: () => JSX.Element;
15
+ declare const CalendarIcon: () => JSX.Element;
16
16
 
17
17
  declare const CheckIcon: () => JSX.Element;
18
18
 
@@ -85,4 +85,4 @@ declare const GoogleIcon: ({ width, height, ...props }: React.SVGProps<SVGSVGEle
85
85
 
86
86
  declare const EyeClosedIcon: () => JSX.Element;
87
87
 
88
- export { AddIcon, ArchiveIcon, ArrowDownIcon, ArrowRightIcon, AttachIcon, BackIcon, CalandarIcon, CheckIcon, ChevronBottomIcon, CloseIcon, CopyIcon, DeleteIcon, DownloadIcon, ExcelIcon, ExportIcon, EyeClosedIcon, EyeIcon, FilterIcon, GoogleIcon, GroupByIcon, KanbanIcon, ListIcon, LoadingIcon, MoreIcon, PaidIcon, PdfIcon, PlaceHolderIcon, PlayIcon, ResetIcon, SearchIcon, SettingIcon, StarIcon, TriangleIcon, UnArchiveIcon, VectorIcon, ZipIcon };
88
+ export { AddIcon, ArchiveIcon, ArrowDownIcon, ArrowRightIcon, AttachIcon, BackIcon, CalendarIcon, CheckIcon, ChevronBottomIcon, CloseIcon, CopyIcon, DeleteIcon, DownloadIcon, ExcelIcon, ExportIcon, EyeClosedIcon, EyeIcon, FilterIcon, GoogleIcon, GroupByIcon, KanbanIcon, ListIcon, LoadingIcon, MoreIcon, PaidIcon, PdfIcon, PlaceHolderIcon, PlayIcon, ResetIcon, SearchIcon, SettingIcon, StarIcon, TriangleIcon, UnArchiveIcon, VectorIcon, ZipIcon };
package/dist/icons.d.ts CHANGED
@@ -12,7 +12,7 @@ declare const AttachIcon: () => JSX.Element;
12
12
 
13
13
  declare const BackIcon: () => JSX.Element;
14
14
 
15
- declare const CalandarIcon: () => JSX.Element;
15
+ declare const CalendarIcon: () => JSX.Element;
16
16
 
17
17
  declare const CheckIcon: () => JSX.Element;
18
18
 
@@ -85,4 +85,4 @@ declare const GoogleIcon: ({ width, height, ...props }: React.SVGProps<SVGSVGEle
85
85
 
86
86
  declare const EyeClosedIcon: () => JSX.Element;
87
87
 
88
- export { AddIcon, ArchiveIcon, ArrowDownIcon, ArrowRightIcon, AttachIcon, BackIcon, CalandarIcon, CheckIcon, ChevronBottomIcon, CloseIcon, CopyIcon, DeleteIcon, DownloadIcon, ExcelIcon, ExportIcon, EyeClosedIcon, EyeIcon, FilterIcon, GoogleIcon, GroupByIcon, KanbanIcon, ListIcon, LoadingIcon, MoreIcon, PaidIcon, PdfIcon, PlaceHolderIcon, PlayIcon, ResetIcon, SearchIcon, SettingIcon, StarIcon, TriangleIcon, UnArchiveIcon, VectorIcon, ZipIcon };
88
+ export { AddIcon, ArchiveIcon, ArrowDownIcon, ArrowRightIcon, AttachIcon, BackIcon, CalendarIcon, CheckIcon, ChevronBottomIcon, CloseIcon, CopyIcon, DeleteIcon, DownloadIcon, ExcelIcon, ExportIcon, EyeClosedIcon, EyeIcon, FilterIcon, GoogleIcon, GroupByIcon, KanbanIcon, ListIcon, LoadingIcon, MoreIcon, PaidIcon, PdfIcon, PlaceHolderIcon, PlayIcon, ResetIcon, SearchIcon, SettingIcon, StarIcon, TriangleIcon, UnArchiveIcon, VectorIcon, ZipIcon };
package/dist/icons.js CHANGED
@@ -26,7 +26,7 @@ __export(icons_exports, {
26
26
  ArrowRightIcon: () => ArrowRightIcon,
27
27
  AttachIcon: () => AttachIcon,
28
28
  BackIcon: () => BackIcon,
29
- CalandarIcon: () => CalandarIcon,
29
+ CalendarIcon: () => CalendarIcon,
30
30
  CheckIcon: () => CheckIcon,
31
31
  ChevronBottomIcon: () => ChevronBottomIcon,
32
32
  CloseIcon: () => CloseIcon,
@@ -198,9 +198,9 @@ var BackIcon = () => {
198
198
  );
199
199
  };
200
200
 
201
- // src/icons/calandar-icon.tsx
201
+ // src/icons/calendar-icon.tsx
202
202
  var import_jsx_runtime7 = require("react/jsx-runtime");
203
- var CalandarIcon = () => {
203
+ var CalendarIcon = () => {
204
204
  return /* @__PURE__ */ (0, import_jsx_runtime7.jsxs)(
205
205
  "svg",
206
206
  {
@@ -1810,7 +1810,7 @@ var EyeClosedIcon = () => {
1810
1810
  ArrowRightIcon,
1811
1811
  AttachIcon,
1812
1812
  BackIcon,
1813
- CalandarIcon,
1813
+ CalendarIcon,
1814
1814
  CheckIcon,
1815
1815
  ChevronBottomIcon,
1816
1816
  CloseIcon,
package/dist/icons.mjs CHANGED
@@ -137,9 +137,9 @@ var BackIcon = () => {
137
137
  );
138
138
  };
139
139
 
140
- // src/icons/calandar-icon.tsx
140
+ // src/icons/calendar-icon.tsx
141
141
  import { jsx as jsx7, jsxs } from "react/jsx-runtime";
142
- var CalandarIcon = () => {
142
+ var CalendarIcon = () => {
143
143
  return /* @__PURE__ */ jsxs(
144
144
  "svg",
145
145
  {
@@ -1748,7 +1748,7 @@ export {
1748
1748
  ArrowRightIcon,
1749
1749
  AttachIcon,
1750
1750
  BackIcon,
1751
- CalandarIcon,
1751
+ CalendarIcon,
1752
1752
  CheckIcon,
1753
1753
  ChevronBottomIcon,
1754
1754
  CloseIcon,
package/dist/index.d.mts CHANGED
@@ -1,5 +1,5 @@
1
1
  export { useClickOutside } from './hooks.mjs';
2
- export { AddIcon, ArchiveIcon, ArrowDownIcon, ArrowRightIcon, AttachIcon, BackIcon, CalandarIcon, CheckIcon, ChevronBottomIcon, CloseIcon, CopyIcon, DeleteIcon, DownloadIcon, ExcelIcon, ExportIcon, EyeClosedIcon, EyeIcon, FilterIcon, GoogleIcon, GroupByIcon, KanbanIcon, ListIcon, LoadingIcon, MoreIcon, PaidIcon, PdfIcon, PlaceHolderIcon, PlayIcon, ResetIcon, SearchIcon, SettingIcon, StarIcon, TriangleIcon, UnArchiveIcon, VectorIcon, ZipIcon } from './icons.mjs';
2
+ export { AddIcon, ArchiveIcon, ArrowDownIcon, ArrowRightIcon, AttachIcon, BackIcon, CalendarIcon, CheckIcon, ChevronBottomIcon, CloseIcon, CopyIcon, DeleteIcon, DownloadIcon, ExcelIcon, ExportIcon, EyeClosedIcon, EyeIcon, FilterIcon, GoogleIcon, GroupByIcon, KanbanIcon, ListIcon, LoadingIcon, MoreIcon, PaidIcon, PdfIcon, PlaceHolderIcon, PlayIcon, ResetIcon, SearchIcon, SettingIcon, StarIcon, TriangleIcon, UnArchiveIcon, VectorIcon, ZipIcon } from './icons.mjs';
3
3
  export { IInputFieldProps, LoginData, LoginProps, Provider, ValuePropsType, loginSchema } from './types.mjs';
4
4
  export { ActiveBadgeField, AvatarField, BinaryField, ButtonBadgeField, ButtonField, ButtonSelectFiles, CharField, CheckboxField, ColorField, ColorWrapper, CopyLinkButtonField, DateField, DateOptionField, DownLoadBinaryField, DownloadFileField, DropdownField, EmptyTable, FeeField, FileUploadField, FloatField, FloatTimeField, HtmlField, IActiveBadgeProps, IAvatarProps, IBinaryFieldProps, IButtonBadgeProps, IButtonProps, ICharFieldProps, IColorFieldProps, IColorWrapperProps, ICopyLinkButtonProps, IDateFieldProps, IDownLoadBinary, IDownloadFileProps, IDurationProps, IFileUploadProps, IMany2ManyTagsProps, IMonetaryProps, IOptionProps, IPaginationProps, IPriorityFieldProps, IRadioGroupProps, IRatingStarProps, ISelectDropdownProps, IStatusDropdownFieldProps, ImageField, InfomationField, IntegerField, LayerLoading, LoadingSmall, Login, Many2ManyField, Many2ManyProps, Many2ManyTagField, Many2OneField, Many2OneProps, ModalConfirm, ModalDetail, ModalLayer, MonetaryField, PaginationView, PaidBadgedField, PriorityField, RadioGroupField, RatingStarField, RemainingDaysField, RenderFiles, Row, Search, SelectDropdownField, StatusBarOptionField, StatusDropdownField, StatusbarDurationField, TDropdownSelectorProps, TableBody, TableFilter, TableFooter, TableGroup, TableHead, TextAreaField, ToggleButtonField, VideoPlayer, usePagination } from './widgets.mjs';
5
5
  export { COLORS, DOTS, SearchType, checkIsImageLink, convertFloatToTime, convertTimeToFloat, formatFileSize, formatFloatNumber, formatNumberOnly, getPasswordMessage, isBase64Image, isObjectEmpty, parseFormattedNumber, range, typeStyles, useFormatDate, validateAndParseDate, validateInput } from './utils.mjs';
package/dist/index.d.ts CHANGED
@@ -1,5 +1,5 @@
1
1
  export { useClickOutside } from './hooks.js';
2
- export { AddIcon, ArchiveIcon, ArrowDownIcon, ArrowRightIcon, AttachIcon, BackIcon, CalandarIcon, CheckIcon, ChevronBottomIcon, CloseIcon, CopyIcon, DeleteIcon, DownloadIcon, ExcelIcon, ExportIcon, EyeClosedIcon, EyeIcon, FilterIcon, GoogleIcon, GroupByIcon, KanbanIcon, ListIcon, LoadingIcon, MoreIcon, PaidIcon, PdfIcon, PlaceHolderIcon, PlayIcon, ResetIcon, SearchIcon, SettingIcon, StarIcon, TriangleIcon, UnArchiveIcon, VectorIcon, ZipIcon } from './icons.js';
2
+ export { AddIcon, ArchiveIcon, ArrowDownIcon, ArrowRightIcon, AttachIcon, BackIcon, CalendarIcon, CheckIcon, ChevronBottomIcon, CloseIcon, CopyIcon, DeleteIcon, DownloadIcon, ExcelIcon, ExportIcon, EyeClosedIcon, EyeIcon, FilterIcon, GoogleIcon, GroupByIcon, KanbanIcon, ListIcon, LoadingIcon, MoreIcon, PaidIcon, PdfIcon, PlaceHolderIcon, PlayIcon, ResetIcon, SearchIcon, SettingIcon, StarIcon, TriangleIcon, UnArchiveIcon, VectorIcon, ZipIcon } from './icons.js';
3
3
  export { IInputFieldProps, LoginData, LoginProps, Provider, ValuePropsType, loginSchema } from './types.js';
4
4
  export { ActiveBadgeField, AvatarField, BinaryField, ButtonBadgeField, ButtonField, ButtonSelectFiles, CharField, CheckboxField, ColorField, ColorWrapper, CopyLinkButtonField, DateField, DateOptionField, DownLoadBinaryField, DownloadFileField, DropdownField, EmptyTable, FeeField, FileUploadField, FloatField, FloatTimeField, HtmlField, IActiveBadgeProps, IAvatarProps, IBinaryFieldProps, IButtonBadgeProps, IButtonProps, ICharFieldProps, IColorFieldProps, IColorWrapperProps, ICopyLinkButtonProps, IDateFieldProps, IDownLoadBinary, IDownloadFileProps, IDurationProps, IFileUploadProps, IMany2ManyTagsProps, IMonetaryProps, IOptionProps, IPaginationProps, IPriorityFieldProps, IRadioGroupProps, IRatingStarProps, ISelectDropdownProps, IStatusDropdownFieldProps, ImageField, InfomationField, IntegerField, LayerLoading, LoadingSmall, Login, Many2ManyField, Many2ManyProps, Many2ManyTagField, Many2OneField, Many2OneProps, ModalConfirm, ModalDetail, ModalLayer, MonetaryField, PaginationView, PaidBadgedField, PriorityField, RadioGroupField, RatingStarField, RemainingDaysField, RenderFiles, Row, Search, SelectDropdownField, StatusBarOptionField, StatusDropdownField, StatusbarDurationField, TDropdownSelectorProps, TableBody, TableFilter, TableFooter, TableGroup, TableHead, TextAreaField, ToggleButtonField, VideoPlayer, usePagination } from './widgets.js';
5
5
  export { COLORS, DOTS, SearchType, checkIsImageLink, convertFloatToTime, convertTimeToFloat, formatFileSize, formatFloatNumber, formatNumberOnly, getPasswordMessage, isBase64Image, isObjectEmpty, parseFormattedNumber, range, typeStyles, useFormatDate, validateAndParseDate, validateInput } from './utils.js';
package/dist/index.js CHANGED
@@ -4951,7 +4951,7 @@ __export(index_exports, {
4951
4951
  ButtonField: () => ButtonField,
4952
4952
  ButtonSelectFiles: () => ButtonSelectFiles,
4953
4953
  COLORS: () => COLORS,
4954
- CalandarIcon: () => CalandarIcon,
4954
+ CalendarIcon: () => CalendarIcon,
4955
4955
  CharField: () => CharField,
4956
4956
  CheckIcon: () => CheckIcon,
4957
4957
  CheckboxField: () => CheckboxField,
@@ -5225,9 +5225,9 @@ var BackIcon = () => {
5225
5225
  );
5226
5226
  };
5227
5227
 
5228
- // src/icons/calandar-icon.tsx
5228
+ // src/icons/calendar-icon.tsx
5229
5229
  var import_jsx_runtime7 = require("react/jsx-runtime");
5230
- var CalandarIcon = () => {
5230
+ var CalendarIcon = () => {
5231
5231
  return /* @__PURE__ */ (0, import_jsx_runtime7.jsxs)(
5232
5232
  "svg",
5233
5233
  {
@@ -15419,7 +15419,7 @@ var Search = ({
15419
15419
  "div",
15420
15420
  {
15421
15421
  ref: popupFilterRef,
15422
- className: `search gap-[8px] p-2 items-center ${selectedRowKeys?.length <= 0 ? "flex" : "hidden"} !order-3 xl:!order-2 bg-white custom-search-input relative flex-1 xl:min-w-[480px] xl:flex-1 rounded-[10px] shadow-[0px_1px_3px_rgba(16,24,40,0.1),0px_1px_2px_rgba(16,24,40,0.06)] min-h-[40px] border border-[var(--stroke-default)]`,
15422
+ className: `search gap-[8px] p-2 items-center flex !order-3 xl:!order-2 bg-white custom-search-input relative flex-1 xl:min-w-[480px] xl:flex-1 rounded-[10px] shadow-[0px_1px_3px_rgba(16,24,40,0.1),0px_1px_2px_rgba(16,24,40,0.06)] min-h-[40px] border border-[var(--stroke-default)]`,
15423
15423
  children: [
15424
15424
  /* @__PURE__ */ (0, import_jsx_runtime58.jsx)("div", { className: "size-5", children: /* @__PURE__ */ (0, import_jsx_runtime58.jsx)(SearchIcon, {}) }),
15425
15425
  /* @__PURE__ */ (0, import_jsx_runtime58.jsxs)("div", { className: "flex flex-1 flex-wrap items-center gap-[8px]", children: [
@@ -18122,7 +18122,8 @@ var BinaryField = (props) => {
18122
18122
  handleImageChange,
18123
18123
  handleRemoveImage,
18124
18124
  checkIsImageLink: checkIsImageLink2,
18125
- getImageBase64WithMimeType
18125
+ getImageBase64WithMimeType,
18126
+ image
18126
18127
  } = props;
18127
18128
  return /* @__PURE__ */ (0, import_jsx_runtime69.jsx)(
18128
18129
  Controller,
@@ -18135,7 +18136,7 @@ var BinaryField = (props) => {
18135
18136
  "div",
18136
18137
  {
18137
18138
  ref: binaryRef,
18138
- className: "relative flex w-fit items-center gap-4 rounded-lg shadow-md mb-11",
18139
+ className: "flex w-fit items-center gap-4 rounded-lg shadow-md mb-11",
18139
18140
  children: renderImage ? /* @__PURE__ */ (0, import_jsx_runtime69.jsxs)("div", { className: "relative group", children: [
18140
18141
  renderImage && checkIsImageLink2(renderImage) ? /* @__PURE__ */ (0, import_jsx_runtime69.jsx)(
18141
18142
  "img",
@@ -18165,9 +18166,8 @@ var BinaryField = (props) => {
18165
18166
  "label",
18166
18167
  {
18167
18168
  htmlFor: inputId,
18168
- className: `flex h-32 w-32 cursor-pointer items-center justify-center rounded-lg border-4 border-dashed border-gray-300 bg-white transition-colors duration-300 hover:bg-gray-200 ${readonly && "pointer-events-none"}`,
18169
+ className: `relative p-2 flex h-32 w-32 cursor-pointer items-center justify-center rounded-lg border border-gray-300 hover:border-gray-500 bg-white transition-colors duration-300 ${readonly && "pointer-events-none"}`,
18169
18170
  children: [
18170
- /* @__PURE__ */ (0, import_jsx_runtime69.jsx)("div", { className: "w-[48px] h-[48px]", children: /* @__PURE__ */ (0, import_jsx_runtime69.jsx)(AddIcon, {}) }),
18171
18171
  /* @__PURE__ */ (0, import_jsx_runtime69.jsx)(
18172
18172
  "input",
18173
18173
  {
@@ -18177,7 +18177,38 @@ var BinaryField = (props) => {
18177
18177
  placeholder,
18178
18178
  required: !invisible && required,
18179
18179
  onChange: (e3) => handleImageChange(e3, field.onChange),
18180
- className: "hidden"
18180
+ className: "hidden z-10 relative"
18181
+ }
18182
+ ),
18183
+ /* @__PURE__ */ (0, import_jsx_runtime69.jsx)("img", { src: image, alt: "", className: "z-0 relative" }),
18184
+ /* @__PURE__ */ (0, import_jsx_runtime69.jsx)(
18185
+ "div",
18186
+ {
18187
+ className: "absolute size-8 bg-white rounded-full flex justify-center items-center z-20",
18188
+ style: {
18189
+ bottom: "-8px",
18190
+ left: "-8px",
18191
+ boxShadow: "0 1px 2px 0 rgba(228, 229, 231, 0.24)"
18192
+ },
18193
+ children: /* @__PURE__ */ (0, import_jsx_runtime69.jsx)(
18194
+ "svg",
18195
+ {
18196
+ xmlns: "http://www.w3.org/2000/svg",
18197
+ width: "14",
18198
+ height: "14",
18199
+ viewBox: "0 0 14 14",
18200
+ fill: "none",
18201
+ children: /* @__PURE__ */ (0, import_jsx_runtime69.jsx)(
18202
+ "path",
18203
+ {
18204
+ "fill-rule": "evenodd",
18205
+ "clip-rule": "evenodd",
18206
+ d: "M13.1868 0.813097C12.7961 0.422532 12.2663 0.203125 11.7139 0.203125C11.1615 0.203125 10.6317 0.422532 10.241 0.813097L9.35765 1.69726L12.3035 4.64393L12.0085 4.9381L11.7143 5.2331L8.76765 2.28643L1.40182 9.65226C1.34395 9.7104 1.30452 9.78432 1.28848 9.86476L0.698483 12.8114C0.685057 12.8787 0.688459 12.9483 0.708387 13.014C0.728316 13.0796 0.764154 13.1394 0.812719 13.1878C0.861283 13.2363 0.92107 13.2721 0.986769 13.2919C1.05247 13.3117 1.12204 13.315 1.18932 13.3014L4.13515 12.7123C4.21599 12.6961 4.29023 12.6564 4.34848 12.5981L13.1868 3.75976C13.3803 3.5663 13.5338 3.33661 13.6386 3.08381C13.7433 2.83102 13.7972 2.56006 13.7972 2.28643C13.7972 2.0128 13.7433 1.74184 13.6386 1.48905C13.5338 1.23625 13.3803 1.00656 13.1868 0.813097Z",
18207
+ fill: "black"
18208
+ }
18209
+ )
18210
+ }
18211
+ )
18181
18212
  }
18182
18213
  )
18183
18214
  ]
@@ -26398,7 +26429,7 @@ var Calendar = (
26398
26429
  return Calendar2;
26399
26430
  }(import_react42.Component)
26400
26431
  );
26401
- var CalendarIcon = function(_a2) {
26432
+ var CalendarIcon2 = function(_a2) {
26402
26433
  var icon = _a2.icon, _b = _a2.className, className = _b === void 0 ? "" : _b, onClick = _a2.onClick;
26403
26434
  var defaultClass = "react-datepicker__calendar-icon";
26404
26435
  if (typeof icon === "string") {
@@ -27343,7 +27374,7 @@ var DatePicker = (
27343
27374
  return import_react42.default.createElement(
27344
27375
  "div",
27345
27376
  { className: "react-datepicker__input-container".concat(showIcon ? " react-datepicker__view-calendar-icon" : "") },
27346
- showIcon && import_react42.default.createElement(CalendarIcon, _assign({ icon, className: clsx(calendarIconClassName, !calendarIconClassName && calendarIconClassname, open && "react-datepicker-ignore-onclickoutside") }, toggleCalendarOnIconClick ? {
27377
+ showIcon && import_react42.default.createElement(CalendarIcon2, _assign({ icon, className: clsx(calendarIconClassName, !calendarIconClassName && calendarIconClassname, open && "react-datepicker-ignore-onclickoutside") }, toggleCalendarOnIconClick ? {
27347
27378
  onClick: this.toggleCalendar
27348
27379
  } : null)),
27349
27380
  this.state.isRenderAriaLiveMessage && this.renderAriaLiveRegion(),
@@ -32466,7 +32497,7 @@ var DateField = (props) => {
32466
32497
  value: defaultValue && (0, import_moment2.default)(defaultValue).isValid() ? (0, import_moment2.default)(defaultValue).add(7, "hours").format(formatDate2) : ""
32467
32498
  }
32468
32499
  ),
32469
- isForm2 && /* @__PURE__ */ (0, import_jsx_runtime78.jsx)(CalandarIcon, {})
32500
+ isForm2 && /* @__PURE__ */ (0, import_jsx_runtime78.jsx)(CalendarIcon, {})
32470
32501
  ] })
32471
32502
  );
32472
32503
  if (!isForm && !isEditTable) {
@@ -34222,6 +34253,7 @@ var Many2ManyField = (props) => {
34222
34253
  setPage,
34223
34254
  evalJSONContext,
34224
34255
  searchController,
34256
+ tableGroupController,
34225
34257
  viewData,
34226
34258
  setDomain,
34227
34259
  isDisplayCheckbox,
@@ -34251,7 +34283,7 @@ var Many2ManyField = (props) => {
34251
34283
  "div",
34252
34284
  {
34253
34285
  style: {
34254
- zIndex: 99999
34286
+ zIndex: 999
34255
34287
  },
34256
34288
  className: "fixed bottom-0 left-0 right-0 top-0",
34257
34289
  children: [
@@ -34345,6 +34377,7 @@ var Many2ManyField = (props) => {
34345
34377
  /* @__PURE__ */ (0, import_jsx_runtime101.jsx)(
34346
34378
  TableBody,
34347
34379
  {
34380
+ tableGroupController,
34348
34381
  columns,
34349
34382
  rows,
34350
34383
  rootField,
@@ -34551,7 +34584,7 @@ var Many2OneField = (props) => {
34551
34584
  classNames: {
34552
34585
  control: ({ isFocused }) => `w-full flex h-full ring-0 cursor-pointer outline-0 bg-white shadow-none rounded-[10px] py-2 px-3 text-sm text-[#1A1A1B] font-normal cursor-pointer gap-2 opacity-100 leading-5 resize-none overflow-hidden field-sizing-content ${isForm && (isFocused ? "border-[1px] border-primary !ring-0 outline-none" : "border border-[rgba(66,66,66,0.12)]")} ${readonly && "!cursor-not-allowed"} ${isEditTable && "md:!min-w-[300px] max-w-[300px] !rounded-none !border !border-transparent !border-b !border-[#f7f7f7] hover:border-b-primary !bg-transparent min-h-auto"}`,
34553
34586
  valueContainer: () => "!m-0 !p-0 ",
34554
- singleValue: () => `!m-0 ${readonly ? "!text-[#5c5a5a]" : ""}`,
34587
+ singleValue: () => `!m-0`,
34555
34588
  input: () => "!m-0 !p-0",
34556
34589
  dropdownIndicator: () => `${isEditTable ? "invisible group-hover:visible" : ""} !m-0 !p-0`,
34557
34590
  clearIndicator: () => `${isEditTable ? "invisible group-hover:visible !m-0 !p-0" : ""} `,
@@ -34866,7 +34899,7 @@ var DateOptionField = (props) => {
34866
34899
  ButtonField,
34867
34900
  ButtonSelectFiles,
34868
34901
  COLORS,
34869
- CalandarIcon,
34902
+ CalendarIcon,
34870
34903
  CharField,
34871
34904
  CheckIcon,
34872
34905
  CheckboxField,
package/dist/index.mjs CHANGED
@@ -5106,9 +5106,9 @@ var BackIcon = () => {
5106
5106
  );
5107
5107
  };
5108
5108
 
5109
- // src/icons/calandar-icon.tsx
5109
+ // src/icons/calendar-icon.tsx
5110
5110
  import { jsx as jsx7, jsxs } from "react/jsx-runtime";
5111
- var CalandarIcon = () => {
5111
+ var CalendarIcon = () => {
5112
5112
  return /* @__PURE__ */ jsxs(
5113
5113
  "svg",
5114
5114
  {
@@ -15300,7 +15300,7 @@ var Search = ({
15300
15300
  "div",
15301
15301
  {
15302
15302
  ref: popupFilterRef,
15303
- className: `search gap-[8px] p-2 items-center ${selectedRowKeys?.length <= 0 ? "flex" : "hidden"} !order-3 xl:!order-2 bg-white custom-search-input relative flex-1 xl:min-w-[480px] xl:flex-1 rounded-[10px] shadow-[0px_1px_3px_rgba(16,24,40,0.1),0px_1px_2px_rgba(16,24,40,0.06)] min-h-[40px] border border-[var(--stroke-default)]`,
15303
+ className: `search gap-[8px] p-2 items-center flex !order-3 xl:!order-2 bg-white custom-search-input relative flex-1 xl:min-w-[480px] xl:flex-1 rounded-[10px] shadow-[0px_1px_3px_rgba(16,24,40,0.1),0px_1px_2px_rgba(16,24,40,0.06)] min-h-[40px] border border-[var(--stroke-default)]`,
15304
15304
  children: [
15305
15305
  /* @__PURE__ */ jsx58("div", { className: "size-5", children: /* @__PURE__ */ jsx58(SearchIcon, {}) }),
15306
15306
  /* @__PURE__ */ jsxs38("div", { className: "flex flex-1 flex-wrap items-center gap-[8px]", children: [
@@ -18003,7 +18003,8 @@ var BinaryField = (props) => {
18003
18003
  handleImageChange,
18004
18004
  handleRemoveImage,
18005
18005
  checkIsImageLink: checkIsImageLink2,
18006
- getImageBase64WithMimeType
18006
+ getImageBase64WithMimeType,
18007
+ image
18007
18008
  } = props;
18008
18009
  return /* @__PURE__ */ jsx69(
18009
18010
  Controller,
@@ -18016,7 +18017,7 @@ var BinaryField = (props) => {
18016
18017
  "div",
18017
18018
  {
18018
18019
  ref: binaryRef,
18019
- className: "relative flex w-fit items-center gap-4 rounded-lg shadow-md mb-11",
18020
+ className: "flex w-fit items-center gap-4 rounded-lg shadow-md mb-11",
18020
18021
  children: renderImage ? /* @__PURE__ */ jsxs47("div", { className: "relative group", children: [
18021
18022
  renderImage && checkIsImageLink2(renderImage) ? /* @__PURE__ */ jsx69(
18022
18023
  "img",
@@ -18046,9 +18047,8 @@ var BinaryField = (props) => {
18046
18047
  "label",
18047
18048
  {
18048
18049
  htmlFor: inputId,
18049
- className: `flex h-32 w-32 cursor-pointer items-center justify-center rounded-lg border-4 border-dashed border-gray-300 bg-white transition-colors duration-300 hover:bg-gray-200 ${readonly && "pointer-events-none"}`,
18050
+ className: `relative p-2 flex h-32 w-32 cursor-pointer items-center justify-center rounded-lg border border-gray-300 hover:border-gray-500 bg-white transition-colors duration-300 ${readonly && "pointer-events-none"}`,
18050
18051
  children: [
18051
- /* @__PURE__ */ jsx69("div", { className: "w-[48px] h-[48px]", children: /* @__PURE__ */ jsx69(AddIcon, {}) }),
18052
18052
  /* @__PURE__ */ jsx69(
18053
18053
  "input",
18054
18054
  {
@@ -18058,7 +18058,38 @@ var BinaryField = (props) => {
18058
18058
  placeholder,
18059
18059
  required: !invisible && required,
18060
18060
  onChange: (e3) => handleImageChange(e3, field.onChange),
18061
- className: "hidden"
18061
+ className: "hidden z-10 relative"
18062
+ }
18063
+ ),
18064
+ /* @__PURE__ */ jsx69("img", { src: image, alt: "", className: "z-0 relative" }),
18065
+ /* @__PURE__ */ jsx69(
18066
+ "div",
18067
+ {
18068
+ className: "absolute size-8 bg-white rounded-full flex justify-center items-center z-20",
18069
+ style: {
18070
+ bottom: "-8px",
18071
+ left: "-8px",
18072
+ boxShadow: "0 1px 2px 0 rgba(228, 229, 231, 0.24)"
18073
+ },
18074
+ children: /* @__PURE__ */ jsx69(
18075
+ "svg",
18076
+ {
18077
+ xmlns: "http://www.w3.org/2000/svg",
18078
+ width: "14",
18079
+ height: "14",
18080
+ viewBox: "0 0 14 14",
18081
+ fill: "none",
18082
+ children: /* @__PURE__ */ jsx69(
18083
+ "path",
18084
+ {
18085
+ "fill-rule": "evenodd",
18086
+ "clip-rule": "evenodd",
18087
+ d: "M13.1868 0.813097C12.7961 0.422532 12.2663 0.203125 11.7139 0.203125C11.1615 0.203125 10.6317 0.422532 10.241 0.813097L9.35765 1.69726L12.3035 4.64393L12.0085 4.9381L11.7143 5.2331L8.76765 2.28643L1.40182 9.65226C1.34395 9.7104 1.30452 9.78432 1.28848 9.86476L0.698483 12.8114C0.685057 12.8787 0.688459 12.9483 0.708387 13.014C0.728316 13.0796 0.764154 13.1394 0.812719 13.1878C0.861283 13.2363 0.92107 13.2721 0.986769 13.2919C1.05247 13.3117 1.12204 13.315 1.18932 13.3014L4.13515 12.7123C4.21599 12.6961 4.29023 12.6564 4.34848 12.5981L13.1868 3.75976C13.3803 3.5663 13.5338 3.33661 13.6386 3.08381C13.7433 2.83102 13.7972 2.56006 13.7972 2.28643C13.7972 2.0128 13.7433 1.74184 13.6386 1.48905C13.5338 1.23625 13.3803 1.00656 13.1868 0.813097Z",
18088
+ fill: "black"
18089
+ }
18090
+ )
18091
+ }
18092
+ )
18062
18093
  }
18063
18094
  )
18064
18095
  ]
@@ -26279,7 +26310,7 @@ var Calendar = (
26279
26310
  return Calendar2;
26280
26311
  }(Component)
26281
26312
  );
26282
- var CalendarIcon = function(_a2) {
26313
+ var CalendarIcon2 = function(_a2) {
26283
26314
  var icon = _a2.icon, _b = _a2.className, className = _b === void 0 ? "" : _b, onClick = _a2.onClick;
26284
26315
  var defaultClass = "react-datepicker__calendar-icon";
26285
26316
  if (typeof icon === "string") {
@@ -27224,7 +27255,7 @@ var DatePicker = (
27224
27255
  return React9.createElement(
27225
27256
  "div",
27226
27257
  { className: "react-datepicker__input-container".concat(showIcon ? " react-datepicker__view-calendar-icon" : "") },
27227
- showIcon && React9.createElement(CalendarIcon, _assign({ icon, className: clsx(calendarIconClassName, !calendarIconClassName && calendarIconClassname, open && "react-datepicker-ignore-onclickoutside") }, toggleCalendarOnIconClick ? {
27258
+ showIcon && React9.createElement(CalendarIcon2, _assign({ icon, className: clsx(calendarIconClassName, !calendarIconClassName && calendarIconClassname, open && "react-datepicker-ignore-onclickoutside") }, toggleCalendarOnIconClick ? {
27228
27259
  onClick: this.toggleCalendar
27229
27260
  } : null)),
27230
27261
  this.state.isRenderAriaLiveMessage && this.renderAriaLiveRegion(),
@@ -32347,7 +32378,7 @@ var DateField = (props) => {
32347
32378
  value: defaultValue && (0, import_moment2.default)(defaultValue).isValid() ? (0, import_moment2.default)(defaultValue).add(7, "hours").format(formatDate2) : ""
32348
32379
  }
32349
32380
  ),
32350
- isForm2 && /* @__PURE__ */ jsx80(CalandarIcon, {})
32381
+ isForm2 && /* @__PURE__ */ jsx80(CalendarIcon, {})
32351
32382
  ] })
32352
32383
  );
32353
32384
  if (!isForm && !isEditTable) {
@@ -34103,6 +34134,7 @@ var Many2ManyField = (props) => {
34103
34134
  setPage,
34104
34135
  evalJSONContext,
34105
34136
  searchController,
34137
+ tableGroupController,
34106
34138
  viewData,
34107
34139
  setDomain,
34108
34140
  isDisplayCheckbox,
@@ -34132,7 +34164,7 @@ var Many2ManyField = (props) => {
34132
34164
  "div",
34133
34165
  {
34134
34166
  style: {
34135
- zIndex: 99999
34167
+ zIndex: 999
34136
34168
  },
34137
34169
  className: "fixed bottom-0 left-0 right-0 top-0",
34138
34170
  children: [
@@ -34226,6 +34258,7 @@ var Many2ManyField = (props) => {
34226
34258
  /* @__PURE__ */ jsx103(
34227
34259
  TableBody,
34228
34260
  {
34261
+ tableGroupController,
34229
34262
  columns,
34230
34263
  rows,
34231
34264
  rootField,
@@ -34432,7 +34465,7 @@ var Many2OneField = (props) => {
34432
34465
  classNames: {
34433
34466
  control: ({ isFocused }) => `w-full flex h-full ring-0 cursor-pointer outline-0 bg-white shadow-none rounded-[10px] py-2 px-3 text-sm text-[#1A1A1B] font-normal cursor-pointer gap-2 opacity-100 leading-5 resize-none overflow-hidden field-sizing-content ${isForm && (isFocused ? "border-[1px] border-primary !ring-0 outline-none" : "border border-[rgba(66,66,66,0.12)]")} ${readonly && "!cursor-not-allowed"} ${isEditTable && "md:!min-w-[300px] max-w-[300px] !rounded-none !border !border-transparent !border-b !border-[#f7f7f7] hover:border-b-primary !bg-transparent min-h-auto"}`,
34434
34467
  valueContainer: () => "!m-0 !p-0 ",
34435
- singleValue: () => `!m-0 ${readonly ? "!text-[#5c5a5a]" : ""}`,
34468
+ singleValue: () => `!m-0`,
34436
34469
  input: () => "!m-0 !p-0",
34437
34470
  dropdownIndicator: () => `${isEditTable ? "invisible group-hover:visible" : ""} !m-0 !p-0`,
34438
34471
  clearIndicator: () => `${isEditTable ? "invisible group-hover:visible !m-0 !p-0" : ""} `,
@@ -34746,7 +34779,7 @@ export {
34746
34779
  ButtonField,
34747
34780
  ButtonSelectFiles,
34748
34781
  COLORS,
34749
- CalandarIcon,
34782
+ CalendarIcon,
34750
34783
  CharField,
34751
34784
  CheckIcon,
34752
34785
  CheckboxField,
@@ -166,6 +166,7 @@ interface IBinaryFieldProps extends IInputFieldProps {
166
166
  handleRemoveImage: any;
167
167
  checkIsImageLink: any;
168
168
  getImageBase64WithMimeType: any;
169
+ image: any;
169
170
  }
170
171
 
171
172
  declare const BinaryField: (props: IBinaryFieldProps) => JSX.Element;
@@ -423,6 +424,7 @@ interface Many2ManyProps extends IInputFieldProps {
423
424
  setPage?: (page: number) => void;
424
425
  setDomain?: Dispatch<SetStateAction<any>>;
425
426
  searchController: SearchController;
427
+ tableGroupController: (props: TableGroupControllerProps) => TableGroupControllerReturn;
426
428
  evalJSONContext?: any;
427
429
  checkedAll?: any;
428
430
  handleCheckBoxAll?: any;
package/dist/widgets.d.ts CHANGED
@@ -166,6 +166,7 @@ interface IBinaryFieldProps extends IInputFieldProps {
166
166
  handleRemoveImage: any;
167
167
  checkIsImageLink: any;
168
168
  getImageBase64WithMimeType: any;
169
+ image: any;
169
170
  }
170
171
 
171
172
  declare const BinaryField: (props: IBinaryFieldProps) => JSX.Element;
@@ -423,6 +424,7 @@ interface Many2ManyProps extends IInputFieldProps {
423
424
  setPage?: (page: number) => void;
424
425
  setDomain?: Dispatch<SetStateAction<any>>;
425
426
  searchController: SearchController;
427
+ tableGroupController: (props: TableGroupControllerProps) => TableGroupControllerReturn;
426
428
  evalJSONContext?: any;
427
429
  checkedAll?: any;
428
430
  handleCheckBoxAll?: any;
package/dist/widgets.js CHANGED
@@ -8148,26 +8148,6 @@ var loadLanguages2 = instance.loadLanguages;
8148
8148
 
8149
8149
  // src/icons/add-icon.tsx
8150
8150
  var import_jsx_runtime3 = require("react/jsx-runtime");
8151
- var AddIcon = () => {
8152
- return /* @__PURE__ */ (0, import_jsx_runtime3.jsx)(
8153
- "svg",
8154
- {
8155
- xmlns: "http://www.w3.org/2000/svg",
8156
- width: "16",
8157
- height: "16",
8158
- viewBox: "0 0 16 16",
8159
- fill: "none",
8160
- children: /* @__PURE__ */ (0, import_jsx_runtime3.jsx)(
8161
- "path",
8162
- {
8163
- d: "M8.09961 4.30078V7.90039H11.7002V8.10059H8.09961V11.7012H7.89941V8.10059H4.2998V7.90039H7.89941V4.30078H8.09961Z",
8164
- fill: "#060606",
8165
- stroke: "currentColor"
8166
- }
8167
- )
8168
- }
8169
- );
8170
- };
8171
8151
 
8172
8152
  // src/icons/archive-icon.tsx
8173
8153
  var import_jsx_runtime4 = require("react/jsx-runtime");
@@ -8204,9 +8184,9 @@ var AttachIcon = () => {
8204
8184
  // src/icons/back-icon.tsx
8205
8185
  var import_jsx_runtime8 = require("react/jsx-runtime");
8206
8186
 
8207
- // src/icons/calandar-icon.tsx
8187
+ // src/icons/calendar-icon.tsx
8208
8188
  var import_jsx_runtime9 = require("react/jsx-runtime");
8209
- var CalandarIcon = () => {
8189
+ var CalendarIcon = () => {
8210
8190
  return /* @__PURE__ */ (0, import_jsx_runtime9.jsxs)(
8211
8191
  "svg",
8212
8192
  {
@@ -15065,7 +15045,7 @@ var Search = ({
15065
15045
  "div",
15066
15046
  {
15067
15047
  ref: popupFilterRef,
15068
- className: `search gap-[8px] p-2 items-center ${selectedRowKeys?.length <= 0 ? "flex" : "hidden"} !order-3 xl:!order-2 bg-white custom-search-input relative flex-1 xl:min-w-[480px] xl:flex-1 rounded-[10px] shadow-[0px_1px_3px_rgba(16,24,40,0.1),0px_1px_2px_rgba(16,24,40,0.06)] min-h-[40px] border border-[var(--stroke-default)]`,
15048
+ className: `search gap-[8px] p-2 items-center flex !order-3 xl:!order-2 bg-white custom-search-input relative flex-1 xl:min-w-[480px] xl:flex-1 rounded-[10px] shadow-[0px_1px_3px_rgba(16,24,40,0.1),0px_1px_2px_rgba(16,24,40,0.06)] min-h-[40px] border border-[var(--stroke-default)]`,
15069
15049
  children: [
15070
15050
  /* @__PURE__ */ (0, import_jsx_runtime58.jsx)("div", { className: "size-5", children: /* @__PURE__ */ (0, import_jsx_runtime58.jsx)(SearchIcon, {}) }),
15071
15051
  /* @__PURE__ */ (0, import_jsx_runtime58.jsxs)("div", { className: "flex flex-1 flex-wrap items-center gap-[8px]", children: [
@@ -17768,7 +17748,8 @@ var BinaryField = (props) => {
17768
17748
  handleImageChange,
17769
17749
  handleRemoveImage,
17770
17750
  checkIsImageLink: checkIsImageLink2,
17771
- getImageBase64WithMimeType
17751
+ getImageBase64WithMimeType,
17752
+ image
17772
17753
  } = props;
17773
17754
  return /* @__PURE__ */ (0, import_jsx_runtime69.jsx)(
17774
17755
  Controller,
@@ -17781,7 +17762,7 @@ var BinaryField = (props) => {
17781
17762
  "div",
17782
17763
  {
17783
17764
  ref: binaryRef,
17784
- className: "relative flex w-fit items-center gap-4 rounded-lg shadow-md mb-11",
17765
+ className: "flex w-fit items-center gap-4 rounded-lg shadow-md mb-11",
17785
17766
  children: renderImage ? /* @__PURE__ */ (0, import_jsx_runtime69.jsxs)("div", { className: "relative group", children: [
17786
17767
  renderImage && checkIsImageLink2(renderImage) ? /* @__PURE__ */ (0, import_jsx_runtime69.jsx)(
17787
17768
  "img",
@@ -17811,9 +17792,8 @@ var BinaryField = (props) => {
17811
17792
  "label",
17812
17793
  {
17813
17794
  htmlFor: inputId,
17814
- className: `flex h-32 w-32 cursor-pointer items-center justify-center rounded-lg border-4 border-dashed border-gray-300 bg-white transition-colors duration-300 hover:bg-gray-200 ${readonly && "pointer-events-none"}`,
17795
+ className: `relative p-2 flex h-32 w-32 cursor-pointer items-center justify-center rounded-lg border border-gray-300 hover:border-gray-500 bg-white transition-colors duration-300 ${readonly && "pointer-events-none"}`,
17815
17796
  children: [
17816
- /* @__PURE__ */ (0, import_jsx_runtime69.jsx)("div", { className: "w-[48px] h-[48px]", children: /* @__PURE__ */ (0, import_jsx_runtime69.jsx)(AddIcon, {}) }),
17817
17797
  /* @__PURE__ */ (0, import_jsx_runtime69.jsx)(
17818
17798
  "input",
17819
17799
  {
@@ -17823,7 +17803,38 @@ var BinaryField = (props) => {
17823
17803
  placeholder,
17824
17804
  required: !invisible && required,
17825
17805
  onChange: (e3) => handleImageChange(e3, field.onChange),
17826
- className: "hidden"
17806
+ className: "hidden z-10 relative"
17807
+ }
17808
+ ),
17809
+ /* @__PURE__ */ (0, import_jsx_runtime69.jsx)("img", { src: image, alt: "", className: "z-0 relative" }),
17810
+ /* @__PURE__ */ (0, import_jsx_runtime69.jsx)(
17811
+ "div",
17812
+ {
17813
+ className: "absolute size-8 bg-white rounded-full flex justify-center items-center z-20",
17814
+ style: {
17815
+ bottom: "-8px",
17816
+ left: "-8px",
17817
+ boxShadow: "0 1px 2px 0 rgba(228, 229, 231, 0.24)"
17818
+ },
17819
+ children: /* @__PURE__ */ (0, import_jsx_runtime69.jsx)(
17820
+ "svg",
17821
+ {
17822
+ xmlns: "http://www.w3.org/2000/svg",
17823
+ width: "14",
17824
+ height: "14",
17825
+ viewBox: "0 0 14 14",
17826
+ fill: "none",
17827
+ children: /* @__PURE__ */ (0, import_jsx_runtime69.jsx)(
17828
+ "path",
17829
+ {
17830
+ "fill-rule": "evenodd",
17831
+ "clip-rule": "evenodd",
17832
+ d: "M13.1868 0.813097C12.7961 0.422532 12.2663 0.203125 11.7139 0.203125C11.1615 0.203125 10.6317 0.422532 10.241 0.813097L9.35765 1.69726L12.3035 4.64393L12.0085 4.9381L11.7143 5.2331L8.76765 2.28643L1.40182 9.65226C1.34395 9.7104 1.30452 9.78432 1.28848 9.86476L0.698483 12.8114C0.685057 12.8787 0.688459 12.9483 0.708387 13.014C0.728316 13.0796 0.764154 13.1394 0.812719 13.1878C0.861283 13.2363 0.92107 13.2721 0.986769 13.2919C1.05247 13.3117 1.12204 13.315 1.18932 13.3014L4.13515 12.7123C4.21599 12.6961 4.29023 12.6564 4.34848 12.5981L13.1868 3.75976C13.3803 3.5663 13.5338 3.33661 13.6386 3.08381C13.7433 2.83102 13.7972 2.56006 13.7972 2.28643C13.7972 2.0128 13.7433 1.74184 13.6386 1.48905C13.5338 1.23625 13.3803 1.00656 13.1868 0.813097Z",
17833
+ fill: "black"
17834
+ }
17835
+ )
17836
+ }
17837
+ )
17827
17838
  }
17828
17839
  )
17829
17840
  ]
@@ -26044,7 +26055,7 @@ var Calendar = (
26044
26055
  return Calendar2;
26045
26056
  }(import_react42.Component)
26046
26057
  );
26047
- var CalendarIcon = function(_a2) {
26058
+ var CalendarIcon2 = function(_a2) {
26048
26059
  var icon = _a2.icon, _b = _a2.className, className = _b === void 0 ? "" : _b, onClick = _a2.onClick;
26049
26060
  var defaultClass = "react-datepicker__calendar-icon";
26050
26061
  if (typeof icon === "string") {
@@ -26989,7 +27000,7 @@ var DatePicker = (
26989
27000
  return import_react42.default.createElement(
26990
27001
  "div",
26991
27002
  { className: "react-datepicker__input-container".concat(showIcon ? " react-datepicker__view-calendar-icon" : "") },
26992
- showIcon && import_react42.default.createElement(CalendarIcon, _assign({ icon, className: clsx(calendarIconClassName, !calendarIconClassName && calendarIconClassname, open && "react-datepicker-ignore-onclickoutside") }, toggleCalendarOnIconClick ? {
27003
+ showIcon && import_react42.default.createElement(CalendarIcon2, _assign({ icon, className: clsx(calendarIconClassName, !calendarIconClassName && calendarIconClassname, open && "react-datepicker-ignore-onclickoutside") }, toggleCalendarOnIconClick ? {
26993
27004
  onClick: this.toggleCalendar
26994
27005
  } : null)),
26995
27006
  this.state.isRenderAriaLiveMessage && this.renderAriaLiveRegion(),
@@ -32112,7 +32123,7 @@ var DateField = (props) => {
32112
32123
  value: defaultValue && (0, import_moment2.default)(defaultValue).isValid() ? (0, import_moment2.default)(defaultValue).add(7, "hours").format(formatDate2) : ""
32113
32124
  }
32114
32125
  ),
32115
- isForm2 && /* @__PURE__ */ (0, import_jsx_runtime78.jsx)(CalandarIcon, {})
32126
+ isForm2 && /* @__PURE__ */ (0, import_jsx_runtime78.jsx)(CalendarIcon, {})
32116
32127
  ] })
32117
32128
  );
32118
32129
  if (!isForm && !isEditTable) {
@@ -33868,6 +33879,7 @@ var Many2ManyField = (props) => {
33868
33879
  setPage,
33869
33880
  evalJSONContext,
33870
33881
  searchController,
33882
+ tableGroupController,
33871
33883
  viewData,
33872
33884
  setDomain,
33873
33885
  isDisplayCheckbox,
@@ -33897,7 +33909,7 @@ var Many2ManyField = (props) => {
33897
33909
  "div",
33898
33910
  {
33899
33911
  style: {
33900
- zIndex: 99999
33912
+ zIndex: 999
33901
33913
  },
33902
33914
  className: "fixed bottom-0 left-0 right-0 top-0",
33903
33915
  children: [
@@ -33991,6 +34003,7 @@ var Many2ManyField = (props) => {
33991
34003
  /* @__PURE__ */ (0, import_jsx_runtime101.jsx)(
33992
34004
  TableBody,
33993
34005
  {
34006
+ tableGroupController,
33994
34007
  columns,
33995
34008
  rows,
33996
34009
  rootField,
@@ -34197,7 +34210,7 @@ var Many2OneField = (props) => {
34197
34210
  classNames: {
34198
34211
  control: ({ isFocused }) => `w-full flex h-full ring-0 cursor-pointer outline-0 bg-white shadow-none rounded-[10px] py-2 px-3 text-sm text-[#1A1A1B] font-normal cursor-pointer gap-2 opacity-100 leading-5 resize-none overflow-hidden field-sizing-content ${isForm && (isFocused ? "border-[1px] border-primary !ring-0 outline-none" : "border border-[rgba(66,66,66,0.12)]")} ${readonly && "!cursor-not-allowed"} ${isEditTable && "md:!min-w-[300px] max-w-[300px] !rounded-none !border !border-transparent !border-b !border-[#f7f7f7] hover:border-b-primary !bg-transparent min-h-auto"}`,
34199
34212
  valueContainer: () => "!m-0 !p-0 ",
34200
- singleValue: () => `!m-0 ${readonly ? "!text-[#5c5a5a]" : ""}`,
34213
+ singleValue: () => `!m-0`,
34201
34214
  input: () => "!m-0 !p-0",
34202
34215
  dropdownIndicator: () => `${isEditTable ? "invisible group-hover:visible" : ""} !m-0 !p-0`,
34203
34216
  clearIndicator: () => `${isEditTable ? "invisible group-hover:visible !m-0 !p-0" : ""} `,
package/dist/widgets.mjs CHANGED
@@ -8085,26 +8085,6 @@ var loadLanguages2 = instance.loadLanguages;
8085
8085
 
8086
8086
  // src/icons/add-icon.tsx
8087
8087
  import { jsx as jsx3 } from "react/jsx-runtime";
8088
- var AddIcon = () => {
8089
- return /* @__PURE__ */ jsx3(
8090
- "svg",
8091
- {
8092
- xmlns: "http://www.w3.org/2000/svg",
8093
- width: "16",
8094
- height: "16",
8095
- viewBox: "0 0 16 16",
8096
- fill: "none",
8097
- children: /* @__PURE__ */ jsx3(
8098
- "path",
8099
- {
8100
- d: "M8.09961 4.30078V7.90039H11.7002V8.10059H8.09961V11.7012H7.89941V8.10059H4.2998V7.90039H7.89941V4.30078H8.09961Z",
8101
- fill: "#060606",
8102
- stroke: "currentColor"
8103
- }
8104
- )
8105
- }
8106
- );
8107
- };
8108
8088
 
8109
8089
  // src/icons/archive-icon.tsx
8110
8090
  import { jsx as jsx4 } from "react/jsx-runtime";
@@ -8141,9 +8121,9 @@ var AttachIcon = () => {
8141
8121
  // src/icons/back-icon.tsx
8142
8122
  import { jsx as jsx8 } from "react/jsx-runtime";
8143
8123
 
8144
- // src/icons/calandar-icon.tsx
8124
+ // src/icons/calendar-icon.tsx
8145
8125
  import { jsx as jsx9, jsxs as jsxs2 } from "react/jsx-runtime";
8146
- var CalandarIcon = () => {
8126
+ var CalendarIcon = () => {
8147
8127
  return /* @__PURE__ */ jsxs2(
8148
8128
  "svg",
8149
8129
  {
@@ -15002,7 +14982,7 @@ var Search = ({
15002
14982
  "div",
15003
14983
  {
15004
14984
  ref: popupFilterRef,
15005
- className: `search gap-[8px] p-2 items-center ${selectedRowKeys?.length <= 0 ? "flex" : "hidden"} !order-3 xl:!order-2 bg-white custom-search-input relative flex-1 xl:min-w-[480px] xl:flex-1 rounded-[10px] shadow-[0px_1px_3px_rgba(16,24,40,0.1),0px_1px_2px_rgba(16,24,40,0.06)] min-h-[40px] border border-[var(--stroke-default)]`,
14985
+ className: `search gap-[8px] p-2 items-center flex !order-3 xl:!order-2 bg-white custom-search-input relative flex-1 xl:min-w-[480px] xl:flex-1 rounded-[10px] shadow-[0px_1px_3px_rgba(16,24,40,0.1),0px_1px_2px_rgba(16,24,40,0.06)] min-h-[40px] border border-[var(--stroke-default)]`,
15006
14986
  children: [
15007
14987
  /* @__PURE__ */ jsx58("div", { className: "size-5", children: /* @__PURE__ */ jsx58(SearchIcon, {}) }),
15008
14988
  /* @__PURE__ */ jsxs38("div", { className: "flex flex-1 flex-wrap items-center gap-[8px]", children: [
@@ -17705,7 +17685,8 @@ var BinaryField = (props) => {
17705
17685
  handleImageChange,
17706
17686
  handleRemoveImage,
17707
17687
  checkIsImageLink: checkIsImageLink2,
17708
- getImageBase64WithMimeType
17688
+ getImageBase64WithMimeType,
17689
+ image
17709
17690
  } = props;
17710
17691
  return /* @__PURE__ */ jsx69(
17711
17692
  Controller,
@@ -17718,7 +17699,7 @@ var BinaryField = (props) => {
17718
17699
  "div",
17719
17700
  {
17720
17701
  ref: binaryRef,
17721
- className: "relative flex w-fit items-center gap-4 rounded-lg shadow-md mb-11",
17702
+ className: "flex w-fit items-center gap-4 rounded-lg shadow-md mb-11",
17722
17703
  children: renderImage ? /* @__PURE__ */ jsxs47("div", { className: "relative group", children: [
17723
17704
  renderImage && checkIsImageLink2(renderImage) ? /* @__PURE__ */ jsx69(
17724
17705
  "img",
@@ -17748,9 +17729,8 @@ var BinaryField = (props) => {
17748
17729
  "label",
17749
17730
  {
17750
17731
  htmlFor: inputId,
17751
- className: `flex h-32 w-32 cursor-pointer items-center justify-center rounded-lg border-4 border-dashed border-gray-300 bg-white transition-colors duration-300 hover:bg-gray-200 ${readonly && "pointer-events-none"}`,
17732
+ className: `relative p-2 flex h-32 w-32 cursor-pointer items-center justify-center rounded-lg border border-gray-300 hover:border-gray-500 bg-white transition-colors duration-300 ${readonly && "pointer-events-none"}`,
17752
17733
  children: [
17753
- /* @__PURE__ */ jsx69("div", { className: "w-[48px] h-[48px]", children: /* @__PURE__ */ jsx69(AddIcon, {}) }),
17754
17734
  /* @__PURE__ */ jsx69(
17755
17735
  "input",
17756
17736
  {
@@ -17760,7 +17740,38 @@ var BinaryField = (props) => {
17760
17740
  placeholder,
17761
17741
  required: !invisible && required,
17762
17742
  onChange: (e3) => handleImageChange(e3, field.onChange),
17763
- className: "hidden"
17743
+ className: "hidden z-10 relative"
17744
+ }
17745
+ ),
17746
+ /* @__PURE__ */ jsx69("img", { src: image, alt: "", className: "z-0 relative" }),
17747
+ /* @__PURE__ */ jsx69(
17748
+ "div",
17749
+ {
17750
+ className: "absolute size-8 bg-white rounded-full flex justify-center items-center z-20",
17751
+ style: {
17752
+ bottom: "-8px",
17753
+ left: "-8px",
17754
+ boxShadow: "0 1px 2px 0 rgba(228, 229, 231, 0.24)"
17755
+ },
17756
+ children: /* @__PURE__ */ jsx69(
17757
+ "svg",
17758
+ {
17759
+ xmlns: "http://www.w3.org/2000/svg",
17760
+ width: "14",
17761
+ height: "14",
17762
+ viewBox: "0 0 14 14",
17763
+ fill: "none",
17764
+ children: /* @__PURE__ */ jsx69(
17765
+ "path",
17766
+ {
17767
+ "fill-rule": "evenodd",
17768
+ "clip-rule": "evenodd",
17769
+ d: "M13.1868 0.813097C12.7961 0.422532 12.2663 0.203125 11.7139 0.203125C11.1615 0.203125 10.6317 0.422532 10.241 0.813097L9.35765 1.69726L12.3035 4.64393L12.0085 4.9381L11.7143 5.2331L8.76765 2.28643L1.40182 9.65226C1.34395 9.7104 1.30452 9.78432 1.28848 9.86476L0.698483 12.8114C0.685057 12.8787 0.688459 12.9483 0.708387 13.014C0.728316 13.0796 0.764154 13.1394 0.812719 13.1878C0.861283 13.2363 0.92107 13.2721 0.986769 13.2919C1.05247 13.3117 1.12204 13.315 1.18932 13.3014L4.13515 12.7123C4.21599 12.6961 4.29023 12.6564 4.34848 12.5981L13.1868 3.75976C13.3803 3.5663 13.5338 3.33661 13.6386 3.08381C13.7433 2.83102 13.7972 2.56006 13.7972 2.28643C13.7972 2.0128 13.7433 1.74184 13.6386 1.48905C13.5338 1.23625 13.3803 1.00656 13.1868 0.813097Z",
17770
+ fill: "black"
17771
+ }
17772
+ )
17773
+ }
17774
+ )
17764
17775
  }
17765
17776
  )
17766
17777
  ]
@@ -25981,7 +25992,7 @@ var Calendar = (
25981
25992
  return Calendar2;
25982
25993
  }(Component)
25983
25994
  );
25984
- var CalendarIcon = function(_a2) {
25995
+ var CalendarIcon2 = function(_a2) {
25985
25996
  var icon = _a2.icon, _b = _a2.className, className = _b === void 0 ? "" : _b, onClick = _a2.onClick;
25986
25997
  var defaultClass = "react-datepicker__calendar-icon";
25987
25998
  if (typeof icon === "string") {
@@ -26926,7 +26937,7 @@ var DatePicker = (
26926
26937
  return React9.createElement(
26927
26938
  "div",
26928
26939
  { className: "react-datepicker__input-container".concat(showIcon ? " react-datepicker__view-calendar-icon" : "") },
26929
- showIcon && React9.createElement(CalendarIcon, _assign({ icon, className: clsx(calendarIconClassName, !calendarIconClassName && calendarIconClassname, open && "react-datepicker-ignore-onclickoutside") }, toggleCalendarOnIconClick ? {
26940
+ showIcon && React9.createElement(CalendarIcon2, _assign({ icon, className: clsx(calendarIconClassName, !calendarIconClassName && calendarIconClassname, open && "react-datepicker-ignore-onclickoutside") }, toggleCalendarOnIconClick ? {
26930
26941
  onClick: this.toggleCalendar
26931
26942
  } : null)),
26932
26943
  this.state.isRenderAriaLiveMessage && this.renderAriaLiveRegion(),
@@ -32049,7 +32060,7 @@ var DateField = (props) => {
32049
32060
  value: defaultValue && (0, import_moment2.default)(defaultValue).isValid() ? (0, import_moment2.default)(defaultValue).add(7, "hours").format(formatDate2) : ""
32050
32061
  }
32051
32062
  ),
32052
- isForm2 && /* @__PURE__ */ jsx80(CalandarIcon, {})
32063
+ isForm2 && /* @__PURE__ */ jsx80(CalendarIcon, {})
32053
32064
  ] })
32054
32065
  );
32055
32066
  if (!isForm && !isEditTable) {
@@ -33805,6 +33816,7 @@ var Many2ManyField = (props) => {
33805
33816
  setPage,
33806
33817
  evalJSONContext,
33807
33818
  searchController,
33819
+ tableGroupController,
33808
33820
  viewData,
33809
33821
  setDomain,
33810
33822
  isDisplayCheckbox,
@@ -33834,7 +33846,7 @@ var Many2ManyField = (props) => {
33834
33846
  "div",
33835
33847
  {
33836
33848
  style: {
33837
- zIndex: 99999
33849
+ zIndex: 999
33838
33850
  },
33839
33851
  className: "fixed bottom-0 left-0 right-0 top-0",
33840
33852
  children: [
@@ -33928,6 +33940,7 @@ var Many2ManyField = (props) => {
33928
33940
  /* @__PURE__ */ jsx103(
33929
33941
  TableBody,
33930
33942
  {
33943
+ tableGroupController,
33931
33944
  columns,
33932
33945
  rows,
33933
33946
  rootField,
@@ -34134,7 +34147,7 @@ var Many2OneField = (props) => {
34134
34147
  classNames: {
34135
34148
  control: ({ isFocused }) => `w-full flex h-full ring-0 cursor-pointer outline-0 bg-white shadow-none rounded-[10px] py-2 px-3 text-sm text-[#1A1A1B] font-normal cursor-pointer gap-2 opacity-100 leading-5 resize-none overflow-hidden field-sizing-content ${isForm && (isFocused ? "border-[1px] border-primary !ring-0 outline-none" : "border border-[rgba(66,66,66,0.12)]")} ${readonly && "!cursor-not-allowed"} ${isEditTable && "md:!min-w-[300px] max-w-[300px] !rounded-none !border !border-transparent !border-b !border-[#f7f7f7] hover:border-b-primary !bg-transparent min-h-auto"}`,
34136
34149
  valueContainer: () => "!m-0 !p-0 ",
34137
- singleValue: () => `!m-0 ${readonly ? "!text-[#5c5a5a]" : ""}`,
34150
+ singleValue: () => `!m-0`,
34138
34151
  input: () => "!m-0 !p-0",
34139
34152
  dropdownIndicator: () => `${isEditTable ? "invisible group-hover:visible" : ""} !m-0 !p-0`,
34140
34153
  clearIndicator: () => `${isEditTable ? "invisible group-hover:visible !m-0 !p-0" : ""} `,
package/package.json CHANGED
@@ -1,6 +1,6 @@
1
1
  {
2
2
  "name": "@fctc/sme-widget-ui",
3
- "version": "1.3.2",
3
+ "version": "1.3.4",
4
4
  "main": "dist/index.cjs",
5
5
  "module": "dist/index.mjs",
6
6
  "types": "dist/index.d.ts",