@fctc/sme-widget-ui 1.9.8 → 1.9.9

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.js CHANGED
@@ -992,8 +992,8 @@ var ZipIcon = () => {
992
992
  return /* @__PURE__ */ (0, import_jsx_runtime31.jsxs)(
993
993
  "svg",
994
994
  {
995
- width: "40",
996
- height: "40",
995
+ width: "30",
996
+ height: "30",
997
997
  viewBox: "0 0 40 40",
998
998
  fill: "none",
999
999
  xmlns: "http://www.w3.org/2000/svg",
package/dist/icons.mjs CHANGED
@@ -928,8 +928,8 @@ var ZipIcon = () => {
928
928
  return /* @__PURE__ */ jsxs15(
929
929
  "svg",
930
930
  {
931
- width: "40",
932
- height: "40",
931
+ width: "30",
932
+ height: "30",
933
933
  viewBox: "0 0 40 40",
934
934
  fill: "none",
935
935
  xmlns: "http://www.w3.org/2000/svg",
package/dist/index.js CHANGED
@@ -6234,8 +6234,8 @@ var ZipIcon = () => {
6234
6234
  return /* @__PURE__ */ (0, import_jsx_runtime31.jsxs)(
6235
6235
  "svg",
6236
6236
  {
6237
- width: "40",
6238
- height: "40",
6237
+ width: "30",
6238
+ height: "30",
6239
6239
  viewBox: "0 0 40 40",
6240
6240
  fill: "none",
6241
6241
  xmlns: "http://www.w3.org/2000/svg",
@@ -9949,8 +9949,8 @@ var en_default = {
9949
9949
  download_file: "Download this file",
9950
9950
  upload_success: "Upload file success",
9951
9951
  upload_failure: "Upload file failure",
9952
- file_accept_single: "Only JPEG, PNG, PDF, MP4, XLS, XLXS, ZIP formats are allowed, and each file should be up to 10MB.",
9953
- file_accept_total: "Only JPEG, PNG, PDF, MP4, XLS, XLXS, ZIP formats are allowed, and total should be up to 50MB.",
9952
+ file_accept_single: "Only JPEG, PNG, PDF, MP4, XLS, XLXS, ZIP, JSON formats are allowed, and each file should be up to 10MB.",
9953
+ file_accept_total: "Only JPEG, PNG, PDF, MP4, XLS, XLXS, ZIP, JSON formats are allowed, and total should be up to 50MB.",
9954
9954
  must_required: "is required",
9955
9955
  invalid_number: "Invalid number",
9956
9956
  active: "Active",
@@ -13044,6 +13044,7 @@ var M = import_react16.default.forwardRef(({ id: t3, anchorId: l2, anchorSelect:
13044
13044
  });
13045
13045
 
13046
13046
  // src/widgets/advanced/table/table-head.tsx
13047
+ var import_react_dom2 = require("react-dom");
13047
13048
  var import_jsx_runtime48 = require("react/jsx-runtime");
13048
13049
  var TableHead = (props) => {
13049
13050
  const {
@@ -13085,27 +13086,31 @@ var TableHead = (props) => {
13085
13086
  return /* @__PURE__ */ (0, import_jsx_runtime48.jsx)(
13086
13087
  "th",
13087
13088
  {
13089
+ "data-rtc-resizable": col?.name,
13088
13090
  className: `column whitespace-nowrap text-left p-3 text-sm font-semibold capitalize text-[#060606]`,
13089
13091
  children: /* @__PURE__ */ (0, import_jsx_runtime48.jsxs)("div", { className: "cursor-pointer flex items-center gap-[4px] w-full min-w-max group relative", children: [
13090
13092
  col.title,
13091
13093
  col?.field?.help && /* @__PURE__ */ (0, import_jsx_runtime48.jsxs)(import_jsx_runtime48.Fragment, { children: [
13092
- /* @__PURE__ */ (0, import_jsx_runtime48.jsx)(
13093
- M,
13094
- {
13095
- style: {
13096
- padding: "6px 12px",
13097
- fontSize: "12px",
13098
- borderRadius: "4px",
13099
- maxWidth: "200%",
13100
- whiteSpace: "wrap",
13101
- fontWeight: 400,
13102
- textTransform: "none"
13103
- },
13104
- id: `field-help-${col?.field?.name}`,
13105
- content: col?.field?.help,
13106
- place: "top",
13107
- className: "z-30"
13108
- }
13094
+ (0, import_react_dom2.createPortal)(
13095
+ /* @__PURE__ */ (0, import_jsx_runtime48.jsx)(
13096
+ M,
13097
+ {
13098
+ style: {
13099
+ padding: "6px 12px",
13100
+ fontSize: "12px",
13101
+ borderRadius: "4px",
13102
+ maxWidth: "200px",
13103
+ whiteSpace: "wrap",
13104
+ fontWeight: 400,
13105
+ textTransform: "none",
13106
+ zIndex: "9999"
13107
+ },
13108
+ id: `field-help-${col?.field?.name}`,
13109
+ content: col?.field?.help,
13110
+ place: "top"
13111
+ }
13112
+ ),
13113
+ document.body
13109
13114
  ),
13110
13115
  /* @__PURE__ */ (0, import_jsx_runtime48.jsx)(
13111
13116
  "span",
@@ -16232,7 +16237,7 @@ var ModalConfirm = ({
16232
16237
 
16233
16238
  // src/widgets/common/modal-detail.tsx
16234
16239
  var import_react24 = require("react");
16235
- var import_react_dom2 = require("react-dom");
16240
+ var import_react_dom3 = require("react-dom");
16236
16241
  var import_jsx_runtime66 = require("react/jsx-runtime");
16237
16242
  var ModalDetail = ({
16238
16243
  idToolTip,
@@ -16255,7 +16260,7 @@ var ModalDetail = ({
16255
16260
  sessionStorage.setItem("actionData", JSON.stringify(actionData));
16256
16261
  window.location.href = `/form/menu?model=${model}&id=${idForm}`;
16257
16262
  };
16258
- return (0, import_react_dom2.createPortal)(
16263
+ return (0, import_react_dom3.createPortal)(
16259
16264
  /* @__PURE__ */ (0, import_jsx_runtime66.jsx)(import_jsx_runtime66.Fragment, { children: showModalDetail && /* @__PURE__ */ (0, import_jsx_runtime66.jsxs)("div", { className: "fixed bottom-0 left-0 right-0 top-0 z-[100]", children: [
16260
16265
  /* @__PURE__ */ (0, import_jsx_runtime66.jsx)("div", { className: "absolute inset-0 bg-[rgba(27,27,27,0.48)]" }),
16261
16266
  /* @__PURE__ */ (0, import_jsx_runtime66.jsx)("div", { className: "absolute inset-0 overflow-auto flex flex-col justify-center items-center px-5", children: /* @__PURE__ */ (0, import_jsx_runtime66.jsxs)("div", { className: "relative z-[1] max-w-full p-4 flex flex-col gap-4 w-[1000px] transform rounded-3xl bg-[#FFF] h-[90%]", children: [
@@ -16548,7 +16553,8 @@ var ButtonSelectFiles = ({
16548
16553
  "application/zip",
16549
16554
  "application/x-zip-compressed",
16550
16555
  "application/vnd.ms-excel",
16551
- "application/vnd.openxmlformats-officedocument.spreadsheetml.sheet"
16556
+ "application/vnd.openxmlformats-officedocument.spreadsheetml.sheet",
16557
+ "application/json"
16552
16558
  ];
16553
16559
  const MAX_FILE_SIZE = 10 * 1024 * 1024;
16554
16560
  const MAX_TOTAL_SIZE = 50 * 1024 * 1024;
@@ -16649,7 +16655,7 @@ var ButtonSelectFiles = ({
16649
16655
  style: { display: "none" },
16650
16656
  onChange: handleOnChange,
16651
16657
  multiple: true,
16652
- accept: ".jpeg,.jpg,.png,.pdf,.mp4,.zip,application/vnd.openxmlformats-officedocument.spreadsheetml.sheet, application/vnd.ms-excel"
16658
+ accept: ".jpeg,.jpg,.png,.pdf,.json,.mp4,.zip,application/vnd.openxmlformats-officedocument.spreadsheetml.sheet, application/vnd.ms-excel"
16653
16659
  }
16654
16660
  )
16655
16661
  ] });
@@ -21995,7 +22001,7 @@ function useFloating2(options2) {
21995
22001
  }
21996
22002
 
21997
22003
  // node_modules/react-datepicker/dist/index.es.js
21998
- var import_react_dom5 = __toESM(require("react-dom"));
22004
+ var import_react_dom6 = __toESM(require("react-dom"));
21999
22005
  var _extendStatics = function extendStatics(d, b2) {
22000
22006
  _extendStatics = Object.setPrototypeOf || {
22001
22007
  __proto__: []
@@ -25238,7 +25244,7 @@ var Portal = (
25238
25244
  }
25239
25245
  };
25240
25246
  Portal2.prototype.render = function() {
25241
- return import_react_dom5.default.createPortal(this.props.children, this.el);
25247
+ return import_react_dom6.default.createPortal(this.props.children, this.el);
25242
25248
  };
25243
25249
  return Portal2;
25244
25250
  }(import_react44.Component)
@@ -27806,7 +27812,7 @@ function _taggedTemplateLiteral(e3, t3) {
27806
27812
 
27807
27813
  // node_modules/react-select/dist/index-641ee5b8.esm.js
27808
27814
  var import_react50 = require("react");
27809
- var import_react_dom6 = require("react-dom");
27815
+ var import_react_dom7 = require("react-dom");
27810
27816
 
27811
27817
  // node_modules/use-isomorphic-layout-effect/dist/use-isomorphic-layout-effect.esm.js
27812
27818
  var import_react48 = require("react");
@@ -28309,7 +28315,7 @@ var MenuPortal = function MenuPortal2(props) {
28309
28315
  }), innerProps), children);
28310
28316
  return jsx81(PortalPlacementContext.Provider, {
28311
28317
  value: portalPlacementContext
28312
- }, appendTo ? /* @__PURE__ */ (0, import_react_dom6.createPortal)(menuWrapper, appendTo) : menuWrapper);
28318
+ }, appendTo ? /* @__PURE__ */ (0, import_react_dom7.createPortal)(menuWrapper, appendTo) : menuWrapper);
28313
28319
  };
28314
28320
  var containerCSS = function containerCSS2(_ref3) {
28315
28321
  var isDisabled = _ref3.isDisabled, isRtl = _ref3.isRtl;
@@ -31202,7 +31208,7 @@ var import_toConsumableArray2 = __toESM(require_toConsumableArray());
31202
31208
  var import_typeof5 = __toESM(require_typeof());
31203
31209
  var import_taggedTemplateLiteral2 = __toESM(require_taggedTemplateLiteral());
31204
31210
  var import_defineProperty3 = __toESM(require_defineProperty());
31205
- var import_react_dom7 = require("react-dom");
31211
+ var import_react_dom8 = require("react-dom");
31206
31212
  var StateManagedSelect = /* @__PURE__ */ (0, import_react53.forwardRef)(function(props, ref) {
31207
31213
  var baseSelectProps = useStateManager(props);
31208
31214
  return /* @__PURE__ */ React14.createElement(Select, _extends({
@@ -33149,7 +33155,7 @@ var StatusDropdownField = (props) => {
33149
33155
  };
33150
33156
 
33151
33157
  // src/widgets/basic/many2many-field/many2many.tsx
33152
- var import_react_dom8 = require("react-dom");
33158
+ var import_react_dom9 = require("react-dom");
33153
33159
  var import_react65 = require("react");
33154
33160
  var import_jsx_runtime104 = require("react/jsx-runtime");
33155
33161
  var Many2ManyField = (props) => {
@@ -33224,7 +33230,7 @@ var Many2ManyField = (props) => {
33224
33230
  typeof setGroupByList === "function" && setGroupByList(null);
33225
33231
  };
33226
33232
  }, [selectedTags]);
33227
- return (0, import_react_dom8.createPortal)(
33233
+ return (0, import_react_dom9.createPortal)(
33228
33234
  /* @__PURE__ */ (0, import_jsx_runtime104.jsxs)(
33229
33235
  "div",
33230
33236
  {
package/dist/index.mjs CHANGED
@@ -6111,8 +6111,8 @@ var ZipIcon = () => {
6111
6111
  return /* @__PURE__ */ jsxs15(
6112
6112
  "svg",
6113
6113
  {
6114
- width: "40",
6115
- height: "40",
6114
+ width: "30",
6115
+ height: "30",
6116
6116
  viewBox: "0 0 40 40",
6117
6117
  fill: "none",
6118
6118
  xmlns: "http://www.w3.org/2000/svg",
@@ -9826,8 +9826,8 @@ var en_default = {
9826
9826
  download_file: "Download this file",
9827
9827
  upload_success: "Upload file success",
9828
9828
  upload_failure: "Upload file failure",
9829
- file_accept_single: "Only JPEG, PNG, PDF, MP4, XLS, XLXS, ZIP formats are allowed, and each file should be up to 10MB.",
9830
- file_accept_total: "Only JPEG, PNG, PDF, MP4, XLS, XLXS, ZIP formats are allowed, and total should be up to 50MB.",
9829
+ file_accept_single: "Only JPEG, PNG, PDF, MP4, XLS, XLXS, ZIP, JSON formats are allowed, and each file should be up to 10MB.",
9830
+ file_accept_total: "Only JPEG, PNG, PDF, MP4, XLS, XLXS, ZIP, JSON formats are allowed, and total should be up to 50MB.",
9831
9831
  must_required: "is required",
9832
9832
  invalid_number: "Invalid number",
9833
9833
  active: "Active",
@@ -12921,6 +12921,7 @@ var M = e2.forwardRef(({ id: t3, anchorId: l2, anchorSelect: n4, content: i3, ht
12921
12921
  });
12922
12922
 
12923
12923
  // src/widgets/advanced/table/table-head.tsx
12924
+ import { createPortal as createPortal2 } from "react-dom";
12924
12925
  import { Fragment as Fragment4, jsx as jsx48, jsxs as jsxs27 } from "react/jsx-runtime";
12925
12926
  var TableHead = (props) => {
12926
12927
  const {
@@ -12962,27 +12963,31 @@ var TableHead = (props) => {
12962
12963
  return /* @__PURE__ */ jsx48(
12963
12964
  "th",
12964
12965
  {
12966
+ "data-rtc-resizable": col?.name,
12965
12967
  className: `column whitespace-nowrap text-left p-3 text-sm font-semibold capitalize text-[#060606]`,
12966
12968
  children: /* @__PURE__ */ jsxs27("div", { className: "cursor-pointer flex items-center gap-[4px] w-full min-w-max group relative", children: [
12967
12969
  col.title,
12968
12970
  col?.field?.help && /* @__PURE__ */ jsxs27(Fragment4, { children: [
12969
- /* @__PURE__ */ jsx48(
12970
- M,
12971
- {
12972
- style: {
12973
- padding: "6px 12px",
12974
- fontSize: "12px",
12975
- borderRadius: "4px",
12976
- maxWidth: "200%",
12977
- whiteSpace: "wrap",
12978
- fontWeight: 400,
12979
- textTransform: "none"
12980
- },
12981
- id: `field-help-${col?.field?.name}`,
12982
- content: col?.field?.help,
12983
- place: "top",
12984
- className: "z-30"
12985
- }
12971
+ createPortal2(
12972
+ /* @__PURE__ */ jsx48(
12973
+ M,
12974
+ {
12975
+ style: {
12976
+ padding: "6px 12px",
12977
+ fontSize: "12px",
12978
+ borderRadius: "4px",
12979
+ maxWidth: "200px",
12980
+ whiteSpace: "wrap",
12981
+ fontWeight: 400,
12982
+ textTransform: "none",
12983
+ zIndex: "9999"
12984
+ },
12985
+ id: `field-help-${col?.field?.name}`,
12986
+ content: col?.field?.help,
12987
+ place: "top"
12988
+ }
12989
+ ),
12990
+ document.body
12986
12991
  ),
12987
12992
  /* @__PURE__ */ jsx48(
12988
12993
  "span",
@@ -16109,7 +16114,7 @@ var ModalConfirm = ({
16109
16114
 
16110
16115
  // src/widgets/common/modal-detail.tsx
16111
16116
  import { useState as useState7 } from "react";
16112
- import { createPortal as createPortal2 } from "react-dom";
16117
+ import { createPortal as createPortal3 } from "react-dom";
16113
16118
  import { Fragment as Fragment13, jsx as jsx66, jsxs as jsxs42 } from "react/jsx-runtime";
16114
16119
  var ModalDetail = ({
16115
16120
  idToolTip,
@@ -16132,7 +16137,7 @@ var ModalDetail = ({
16132
16137
  sessionStorage.setItem("actionData", JSON.stringify(actionData));
16133
16138
  window.location.href = `/form/menu?model=${model}&id=${idForm}`;
16134
16139
  };
16135
- return createPortal2(
16140
+ return createPortal3(
16136
16141
  /* @__PURE__ */ jsx66(Fragment13, { children: showModalDetail && /* @__PURE__ */ jsxs42("div", { className: "fixed bottom-0 left-0 right-0 top-0 z-[100]", children: [
16137
16142
  /* @__PURE__ */ jsx66("div", { className: "absolute inset-0 bg-[rgba(27,27,27,0.48)]" }),
16138
16143
  /* @__PURE__ */ jsx66("div", { className: "absolute inset-0 overflow-auto flex flex-col justify-center items-center px-5", children: /* @__PURE__ */ jsxs42("div", { className: "relative z-[1] max-w-full p-4 flex flex-col gap-4 w-[1000px] transform rounded-3xl bg-[#FFF] h-[90%]", children: [
@@ -16425,7 +16430,8 @@ var ButtonSelectFiles = ({
16425
16430
  "application/zip",
16426
16431
  "application/x-zip-compressed",
16427
16432
  "application/vnd.ms-excel",
16428
- "application/vnd.openxmlformats-officedocument.spreadsheetml.sheet"
16433
+ "application/vnd.openxmlformats-officedocument.spreadsheetml.sheet",
16434
+ "application/json"
16429
16435
  ];
16430
16436
  const MAX_FILE_SIZE = 10 * 1024 * 1024;
16431
16437
  const MAX_TOTAL_SIZE = 50 * 1024 * 1024;
@@ -16526,7 +16532,7 @@ var ButtonSelectFiles = ({
16526
16532
  style: { display: "none" },
16527
16533
  onChange: handleOnChange,
16528
16534
  multiple: true,
16529
- accept: ".jpeg,.jpg,.png,.pdf,.mp4,.zip,application/vnd.openxmlformats-officedocument.spreadsheetml.sheet, application/vnd.ms-excel"
16535
+ accept: ".jpeg,.jpg,.png,.pdf,.json,.mp4,.zip,application/vnd.openxmlformats-officedocument.spreadsheetml.sheet, application/vnd.ms-excel"
16530
16536
  }
16531
16537
  )
16532
16538
  ] });
@@ -27683,7 +27689,7 @@ function _taggedTemplateLiteral(e3, t3) {
27683
27689
 
27684
27690
  // node_modules/react-select/dist/index-641ee5b8.esm.js
27685
27691
  import { useContext as useContext9, useRef as useRef13, useState as useState15, useMemo as useMemo7, useCallback as useCallback7, createContext as createContext5 } from "react";
27686
- import { createPortal as createPortal4 } from "react-dom";
27692
+ import { createPortal as createPortal5 } from "react-dom";
27687
27693
 
27688
27694
  // node_modules/use-isomorphic-layout-effect/dist/use-isomorphic-layout-effect.esm.js
27689
27695
  import { useLayoutEffect as useLayoutEffect4 } from "react";
@@ -28186,7 +28192,7 @@ var MenuPortal = function MenuPortal2(props) {
28186
28192
  }), innerProps), children);
28187
28193
  return jsx81(PortalPlacementContext.Provider, {
28188
28194
  value: portalPlacementContext
28189
- }, appendTo ? /* @__PURE__ */ createPortal4(menuWrapper, appendTo) : menuWrapper);
28195
+ }, appendTo ? /* @__PURE__ */ createPortal5(menuWrapper, appendTo) : menuWrapper);
28190
28196
  };
28191
28197
  var containerCSS = function containerCSS2(_ref3) {
28192
28198
  var isDisabled = _ref3.isDisabled, isRtl = _ref3.isRtl;
@@ -33026,7 +33032,7 @@ var StatusDropdownField = (props) => {
33026
33032
  };
33027
33033
 
33028
33034
  // src/widgets/basic/many2many-field/many2many.tsx
33029
- import { createPortal as createPortal5 } from "react-dom";
33035
+ import { createPortal as createPortal6 } from "react-dom";
33030
33036
  import { useEffect as useEffect26 } from "react";
33031
33037
  import { jsx as jsx106, jsxs as jsxs71 } from "react/jsx-runtime";
33032
33038
  var Many2ManyField = (props) => {
@@ -33101,7 +33107,7 @@ var Many2ManyField = (props) => {
33101
33107
  typeof setGroupByList === "function" && setGroupByList(null);
33102
33108
  };
33103
33109
  }, [selectedTags]);
33104
- return createPortal5(
33110
+ return createPortal6(
33105
33111
  /* @__PURE__ */ jsxs71(
33106
33112
  "div",
33107
33113
  {
package/dist/utils.js CHANGED
@@ -6894,8 +6894,8 @@ var en_default = {
6894
6894
  download_file: "Download this file",
6895
6895
  upload_success: "Upload file success",
6896
6896
  upload_failure: "Upload file failure",
6897
- file_accept_single: "Only JPEG, PNG, PDF, MP4, XLS, XLXS, ZIP formats are allowed, and each file should be up to 10MB.",
6898
- file_accept_total: "Only JPEG, PNG, PDF, MP4, XLS, XLXS, ZIP formats are allowed, and total should be up to 50MB.",
6897
+ file_accept_single: "Only JPEG, PNG, PDF, MP4, XLS, XLXS, ZIP, JSON formats are allowed, and each file should be up to 10MB.",
6898
+ file_accept_total: "Only JPEG, PNG, PDF, MP4, XLS, XLXS, ZIP, JSON formats are allowed, and total should be up to 50MB.",
6899
6899
  must_required: "is required",
6900
6900
  invalid_number: "Invalid number",
6901
6901
  active: "Active",
package/dist/utils.mjs CHANGED
@@ -6871,8 +6871,8 @@ var en_default = {
6871
6871
  download_file: "Download this file",
6872
6872
  upload_success: "Upload file success",
6873
6873
  upload_failure: "Upload file failure",
6874
- file_accept_single: "Only JPEG, PNG, PDF, MP4, XLS, XLXS, ZIP formats are allowed, and each file should be up to 10MB.",
6875
- file_accept_total: "Only JPEG, PNG, PDF, MP4, XLS, XLXS, ZIP formats are allowed, and total should be up to 50MB.",
6874
+ file_accept_single: "Only JPEG, PNG, PDF, MP4, XLS, XLXS, ZIP, JSON formats are allowed, and each file should be up to 10MB.",
6875
+ file_accept_total: "Only JPEG, PNG, PDF, MP4, XLS, XLXS, ZIP, JSON formats are allowed, and total should be up to 50MB.",
6876
6876
  must_required: "is required",
6877
6877
  invalid_number: "Invalid number",
6878
6878
  active: "Active",
package/dist/widgets.js CHANGED
@@ -7817,8 +7817,8 @@ var en_default = {
7817
7817
  download_file: "Download this file",
7818
7818
  upload_success: "Upload file success",
7819
7819
  upload_failure: "Upload file failure",
7820
- file_accept_single: "Only JPEG, PNG, PDF, MP4, XLS, XLXS, ZIP formats are allowed, and each file should be up to 10MB.",
7821
- file_accept_total: "Only JPEG, PNG, PDF, MP4, XLS, XLXS, ZIP formats are allowed, and total should be up to 50MB.",
7820
+ file_accept_single: "Only JPEG, PNG, PDF, MP4, XLS, XLXS, ZIP, JSON formats are allowed, and each file should be up to 10MB.",
7821
+ file_accept_total: "Only JPEG, PNG, PDF, MP4, XLS, XLXS, ZIP, JSON formats are allowed, and total should be up to 50MB.",
7822
7822
  must_required: "is required",
7823
7823
  invalid_number: "Invalid number",
7824
7824
  active: "Active",
@@ -9097,8 +9097,8 @@ var ZipIcon = () => {
9097
9097
  return /* @__PURE__ */ (0, import_jsx_runtime34.jsxs)(
9098
9098
  "svg",
9099
9099
  {
9100
- width: "40",
9101
- height: "40",
9100
+ width: "30",
9101
+ height: "30",
9102
9102
  viewBox: "0 0 40 40",
9103
9103
  fill: "none",
9104
9104
  xmlns: "http://www.w3.org/2000/svg",
@@ -12288,6 +12288,7 @@ var M = import_react16.default.forwardRef(({ id: t3, anchorId: l2, anchorSelect:
12288
12288
  });
12289
12289
 
12290
12290
  // src/widgets/advanced/table/table-head.tsx
12291
+ var import_react_dom2 = require("react-dom");
12291
12292
  var import_jsx_runtime48 = require("react/jsx-runtime");
12292
12293
  var TableHead = (props) => {
12293
12294
  const {
@@ -12329,27 +12330,31 @@ var TableHead = (props) => {
12329
12330
  return /* @__PURE__ */ (0, import_jsx_runtime48.jsx)(
12330
12331
  "th",
12331
12332
  {
12333
+ "data-rtc-resizable": col?.name,
12332
12334
  className: `column whitespace-nowrap text-left p-3 text-sm font-semibold capitalize text-[#060606]`,
12333
12335
  children: /* @__PURE__ */ (0, import_jsx_runtime48.jsxs)("div", { className: "cursor-pointer flex items-center gap-[4px] w-full min-w-max group relative", children: [
12334
12336
  col.title,
12335
12337
  col?.field?.help && /* @__PURE__ */ (0, import_jsx_runtime48.jsxs)(import_jsx_runtime48.Fragment, { children: [
12336
- /* @__PURE__ */ (0, import_jsx_runtime48.jsx)(
12337
- M,
12338
- {
12339
- style: {
12340
- padding: "6px 12px",
12341
- fontSize: "12px",
12342
- borderRadius: "4px",
12343
- maxWidth: "200%",
12344
- whiteSpace: "wrap",
12345
- fontWeight: 400,
12346
- textTransform: "none"
12347
- },
12348
- id: `field-help-${col?.field?.name}`,
12349
- content: col?.field?.help,
12350
- place: "top",
12351
- className: "z-30"
12352
- }
12338
+ (0, import_react_dom2.createPortal)(
12339
+ /* @__PURE__ */ (0, import_jsx_runtime48.jsx)(
12340
+ M,
12341
+ {
12342
+ style: {
12343
+ padding: "6px 12px",
12344
+ fontSize: "12px",
12345
+ borderRadius: "4px",
12346
+ maxWidth: "200px",
12347
+ whiteSpace: "wrap",
12348
+ fontWeight: 400,
12349
+ textTransform: "none",
12350
+ zIndex: "9999"
12351
+ },
12352
+ id: `field-help-${col?.field?.name}`,
12353
+ content: col?.field?.help,
12354
+ place: "top"
12355
+ }
12356
+ ),
12357
+ document.body
12353
12358
  ),
12354
12359
  /* @__PURE__ */ (0, import_jsx_runtime48.jsx)(
12355
12360
  "span",
@@ -15487,7 +15492,7 @@ var ModalConfirm = ({
15487
15492
 
15488
15493
  // src/widgets/common/modal-detail.tsx
15489
15494
  var import_react24 = require("react");
15490
- var import_react_dom2 = require("react-dom");
15495
+ var import_react_dom3 = require("react-dom");
15491
15496
  var import_jsx_runtime66 = require("react/jsx-runtime");
15492
15497
  var ModalDetail = ({
15493
15498
  idToolTip,
@@ -15510,7 +15515,7 @@ var ModalDetail = ({
15510
15515
  sessionStorage.setItem("actionData", JSON.stringify(actionData));
15511
15516
  window.location.href = `/form/menu?model=${model}&id=${idForm}`;
15512
15517
  };
15513
- return (0, import_react_dom2.createPortal)(
15518
+ return (0, import_react_dom3.createPortal)(
15514
15519
  /* @__PURE__ */ (0, import_jsx_runtime66.jsx)(import_jsx_runtime66.Fragment, { children: showModalDetail && /* @__PURE__ */ (0, import_jsx_runtime66.jsxs)("div", { className: "fixed bottom-0 left-0 right-0 top-0 z-[100]", children: [
15515
15520
  /* @__PURE__ */ (0, import_jsx_runtime66.jsx)("div", { className: "absolute inset-0 bg-[rgba(27,27,27,0.48)]" }),
15516
15521
  /* @__PURE__ */ (0, import_jsx_runtime66.jsx)("div", { className: "absolute inset-0 overflow-auto flex flex-col justify-center items-center px-5", children: /* @__PURE__ */ (0, import_jsx_runtime66.jsxs)("div", { className: "relative z-[1] max-w-full p-4 flex flex-col gap-4 w-[1000px] transform rounded-3xl bg-[#FFF] h-[90%]", children: [
@@ -15803,7 +15808,8 @@ var ButtonSelectFiles = ({
15803
15808
  "application/zip",
15804
15809
  "application/x-zip-compressed",
15805
15810
  "application/vnd.ms-excel",
15806
- "application/vnd.openxmlformats-officedocument.spreadsheetml.sheet"
15811
+ "application/vnd.openxmlformats-officedocument.spreadsheetml.sheet",
15812
+ "application/json"
15807
15813
  ];
15808
15814
  const MAX_FILE_SIZE = 10 * 1024 * 1024;
15809
15815
  const MAX_TOTAL_SIZE = 50 * 1024 * 1024;
@@ -15904,7 +15910,7 @@ var ButtonSelectFiles = ({
15904
15910
  style: { display: "none" },
15905
15911
  onChange: handleOnChange,
15906
15912
  multiple: true,
15907
- accept: ".jpeg,.jpg,.png,.pdf,.mp4,.zip,application/vnd.openxmlformats-officedocument.spreadsheetml.sheet, application/vnd.ms-excel"
15913
+ accept: ".jpeg,.jpg,.png,.pdf,.json,.mp4,.zip,application/vnd.openxmlformats-officedocument.spreadsheetml.sheet, application/vnd.ms-excel"
15908
15914
  }
15909
15915
  )
15910
15916
  ] });
@@ -21250,7 +21256,7 @@ function useFloating2(options2) {
21250
21256
  }
21251
21257
 
21252
21258
  // node_modules/react-datepicker/dist/index.es.js
21253
- var import_react_dom5 = __toESM(require("react-dom"));
21259
+ var import_react_dom6 = __toESM(require("react-dom"));
21254
21260
  var _extendStatics = function extendStatics(d, b2) {
21255
21261
  _extendStatics = Object.setPrototypeOf || {
21256
21262
  __proto__: []
@@ -24493,7 +24499,7 @@ var Portal = (
24493
24499
  }
24494
24500
  };
24495
24501
  Portal2.prototype.render = function() {
24496
- return import_react_dom5.default.createPortal(this.props.children, this.el);
24502
+ return import_react_dom6.default.createPortal(this.props.children, this.el);
24497
24503
  };
24498
24504
  return Portal2;
24499
24505
  }(import_react44.Component)
@@ -27061,7 +27067,7 @@ function _taggedTemplateLiteral(e3, t3) {
27061
27067
 
27062
27068
  // node_modules/react-select/dist/index-641ee5b8.esm.js
27063
27069
  var import_react50 = require("react");
27064
- var import_react_dom6 = require("react-dom");
27070
+ var import_react_dom7 = require("react-dom");
27065
27071
 
27066
27072
  // node_modules/use-isomorphic-layout-effect/dist/use-isomorphic-layout-effect.esm.js
27067
27073
  var import_react48 = require("react");
@@ -27564,7 +27570,7 @@ var MenuPortal = function MenuPortal2(props) {
27564
27570
  }), innerProps), children);
27565
27571
  return jsx81(PortalPlacementContext.Provider, {
27566
27572
  value: portalPlacementContext
27567
- }, appendTo ? /* @__PURE__ */ (0, import_react_dom6.createPortal)(menuWrapper, appendTo) : menuWrapper);
27573
+ }, appendTo ? /* @__PURE__ */ (0, import_react_dom7.createPortal)(menuWrapper, appendTo) : menuWrapper);
27568
27574
  };
27569
27575
  var containerCSS = function containerCSS2(_ref3) {
27570
27576
  var isDisabled = _ref3.isDisabled, isRtl = _ref3.isRtl;
@@ -30457,7 +30463,7 @@ var import_toConsumableArray2 = __toESM(require_toConsumableArray());
30457
30463
  var import_typeof5 = __toESM(require_typeof());
30458
30464
  var import_taggedTemplateLiteral2 = __toESM(require_taggedTemplateLiteral());
30459
30465
  var import_defineProperty3 = __toESM(require_defineProperty());
30460
- var import_react_dom7 = require("react-dom");
30466
+ var import_react_dom8 = require("react-dom");
30461
30467
  var StateManagedSelect = /* @__PURE__ */ (0, import_react53.forwardRef)(function(props, ref) {
30462
30468
  var baseSelectProps = useStateManager(props);
30463
30469
  return /* @__PURE__ */ React14.createElement(Select, _extends({
@@ -32404,7 +32410,7 @@ var StatusDropdownField = (props) => {
32404
32410
  };
32405
32411
 
32406
32412
  // src/widgets/basic/many2many-field/many2many.tsx
32407
- var import_react_dom8 = require("react-dom");
32413
+ var import_react_dom9 = require("react-dom");
32408
32414
  var import_react65 = require("react");
32409
32415
  var import_jsx_runtime104 = require("react/jsx-runtime");
32410
32416
  var Many2ManyField = (props) => {
@@ -32479,7 +32485,7 @@ var Many2ManyField = (props) => {
32479
32485
  typeof setGroupByList === "function" && setGroupByList(null);
32480
32486
  };
32481
32487
  }, [selectedTags]);
32482
- return (0, import_react_dom8.createPortal)(
32488
+ return (0, import_react_dom9.createPortal)(
32483
32489
  /* @__PURE__ */ (0, import_jsx_runtime104.jsxs)(
32484
32490
  "div",
32485
32491
  {
package/dist/widgets.mjs CHANGED
@@ -7755,8 +7755,8 @@ var en_default = {
7755
7755
  download_file: "Download this file",
7756
7756
  upload_success: "Upload file success",
7757
7757
  upload_failure: "Upload file failure",
7758
- file_accept_single: "Only JPEG, PNG, PDF, MP4, XLS, XLXS, ZIP formats are allowed, and each file should be up to 10MB.",
7759
- file_accept_total: "Only JPEG, PNG, PDF, MP4, XLS, XLXS, ZIP formats are allowed, and total should be up to 50MB.",
7758
+ file_accept_single: "Only JPEG, PNG, PDF, MP4, XLS, XLXS, ZIP, JSON formats are allowed, and each file should be up to 10MB.",
7759
+ file_accept_total: "Only JPEG, PNG, PDF, MP4, XLS, XLXS, ZIP, JSON formats are allowed, and total should be up to 50MB.",
7760
7760
  must_required: "is required",
7761
7761
  invalid_number: "Invalid number",
7762
7762
  active: "Active",
@@ -9035,8 +9035,8 @@ var ZipIcon = () => {
9035
9035
  return /* @__PURE__ */ jsxs16(
9036
9036
  "svg",
9037
9037
  {
9038
- width: "40",
9039
- height: "40",
9038
+ width: "30",
9039
+ height: "30",
9040
9040
  viewBox: "0 0 40 40",
9041
9041
  fill: "none",
9042
9042
  xmlns: "http://www.w3.org/2000/svg",
@@ -12226,6 +12226,7 @@ var M = e2.forwardRef(({ id: t3, anchorId: l2, anchorSelect: n4, content: i3, ht
12226
12226
  });
12227
12227
 
12228
12228
  // src/widgets/advanced/table/table-head.tsx
12229
+ import { createPortal as createPortal2 } from "react-dom";
12229
12230
  import { Fragment as Fragment4, jsx as jsx48, jsxs as jsxs27 } from "react/jsx-runtime";
12230
12231
  var TableHead = (props) => {
12231
12232
  const {
@@ -12267,27 +12268,31 @@ var TableHead = (props) => {
12267
12268
  return /* @__PURE__ */ jsx48(
12268
12269
  "th",
12269
12270
  {
12271
+ "data-rtc-resizable": col?.name,
12270
12272
  className: `column whitespace-nowrap text-left p-3 text-sm font-semibold capitalize text-[#060606]`,
12271
12273
  children: /* @__PURE__ */ jsxs27("div", { className: "cursor-pointer flex items-center gap-[4px] w-full min-w-max group relative", children: [
12272
12274
  col.title,
12273
12275
  col?.field?.help && /* @__PURE__ */ jsxs27(Fragment4, { children: [
12274
- /* @__PURE__ */ jsx48(
12275
- M,
12276
- {
12277
- style: {
12278
- padding: "6px 12px",
12279
- fontSize: "12px",
12280
- borderRadius: "4px",
12281
- maxWidth: "200%",
12282
- whiteSpace: "wrap",
12283
- fontWeight: 400,
12284
- textTransform: "none"
12285
- },
12286
- id: `field-help-${col?.field?.name}`,
12287
- content: col?.field?.help,
12288
- place: "top",
12289
- className: "z-30"
12290
- }
12276
+ createPortal2(
12277
+ /* @__PURE__ */ jsx48(
12278
+ M,
12279
+ {
12280
+ style: {
12281
+ padding: "6px 12px",
12282
+ fontSize: "12px",
12283
+ borderRadius: "4px",
12284
+ maxWidth: "200px",
12285
+ whiteSpace: "wrap",
12286
+ fontWeight: 400,
12287
+ textTransform: "none",
12288
+ zIndex: "9999"
12289
+ },
12290
+ id: `field-help-${col?.field?.name}`,
12291
+ content: col?.field?.help,
12292
+ place: "top"
12293
+ }
12294
+ ),
12295
+ document.body
12291
12296
  ),
12292
12297
  /* @__PURE__ */ jsx48(
12293
12298
  "span",
@@ -15425,7 +15430,7 @@ var ModalConfirm = ({
15425
15430
 
15426
15431
  // src/widgets/common/modal-detail.tsx
15427
15432
  import { useState as useState7 } from "react";
15428
- import { createPortal as createPortal2 } from "react-dom";
15433
+ import { createPortal as createPortal3 } from "react-dom";
15429
15434
  import { Fragment as Fragment13, jsx as jsx66, jsxs as jsxs42 } from "react/jsx-runtime";
15430
15435
  var ModalDetail = ({
15431
15436
  idToolTip,
@@ -15448,7 +15453,7 @@ var ModalDetail = ({
15448
15453
  sessionStorage.setItem("actionData", JSON.stringify(actionData));
15449
15454
  window.location.href = `/form/menu?model=${model}&id=${idForm}`;
15450
15455
  };
15451
- return createPortal2(
15456
+ return createPortal3(
15452
15457
  /* @__PURE__ */ jsx66(Fragment13, { children: showModalDetail && /* @__PURE__ */ jsxs42("div", { className: "fixed bottom-0 left-0 right-0 top-0 z-[100]", children: [
15453
15458
  /* @__PURE__ */ jsx66("div", { className: "absolute inset-0 bg-[rgba(27,27,27,0.48)]" }),
15454
15459
  /* @__PURE__ */ jsx66("div", { className: "absolute inset-0 overflow-auto flex flex-col justify-center items-center px-5", children: /* @__PURE__ */ jsxs42("div", { className: "relative z-[1] max-w-full p-4 flex flex-col gap-4 w-[1000px] transform rounded-3xl bg-[#FFF] h-[90%]", children: [
@@ -15741,7 +15746,8 @@ var ButtonSelectFiles = ({
15741
15746
  "application/zip",
15742
15747
  "application/x-zip-compressed",
15743
15748
  "application/vnd.ms-excel",
15744
- "application/vnd.openxmlformats-officedocument.spreadsheetml.sheet"
15749
+ "application/vnd.openxmlformats-officedocument.spreadsheetml.sheet",
15750
+ "application/json"
15745
15751
  ];
15746
15752
  const MAX_FILE_SIZE = 10 * 1024 * 1024;
15747
15753
  const MAX_TOTAL_SIZE = 50 * 1024 * 1024;
@@ -15842,7 +15848,7 @@ var ButtonSelectFiles = ({
15842
15848
  style: { display: "none" },
15843
15849
  onChange: handleOnChange,
15844
15850
  multiple: true,
15845
- accept: ".jpeg,.jpg,.png,.pdf,.mp4,.zip,application/vnd.openxmlformats-officedocument.spreadsheetml.sheet, application/vnd.ms-excel"
15851
+ accept: ".jpeg,.jpg,.png,.pdf,.json,.mp4,.zip,application/vnd.openxmlformats-officedocument.spreadsheetml.sheet, application/vnd.ms-excel"
15846
15852
  }
15847
15853
  )
15848
15854
  ] });
@@ -26999,7 +27005,7 @@ function _taggedTemplateLiteral(e3, t3) {
26999
27005
 
27000
27006
  // node_modules/react-select/dist/index-641ee5b8.esm.js
27001
27007
  import { useContext as useContext9, useRef as useRef13, useState as useState15, useMemo as useMemo7, useCallback as useCallback7, createContext as createContext5 } from "react";
27002
- import { createPortal as createPortal4 } from "react-dom";
27008
+ import { createPortal as createPortal5 } from "react-dom";
27003
27009
 
27004
27010
  // node_modules/use-isomorphic-layout-effect/dist/use-isomorphic-layout-effect.esm.js
27005
27011
  import { useLayoutEffect as useLayoutEffect4 } from "react";
@@ -27502,7 +27508,7 @@ var MenuPortal = function MenuPortal2(props) {
27502
27508
  }), innerProps), children);
27503
27509
  return jsx81(PortalPlacementContext.Provider, {
27504
27510
  value: portalPlacementContext
27505
- }, appendTo ? /* @__PURE__ */ createPortal4(menuWrapper, appendTo) : menuWrapper);
27511
+ }, appendTo ? /* @__PURE__ */ createPortal5(menuWrapper, appendTo) : menuWrapper);
27506
27512
  };
27507
27513
  var containerCSS = function containerCSS2(_ref3) {
27508
27514
  var isDisabled = _ref3.isDisabled, isRtl = _ref3.isRtl;
@@ -32342,7 +32348,7 @@ var StatusDropdownField = (props) => {
32342
32348
  };
32343
32349
 
32344
32350
  // src/widgets/basic/many2many-field/many2many.tsx
32345
- import { createPortal as createPortal5 } from "react-dom";
32351
+ import { createPortal as createPortal6 } from "react-dom";
32346
32352
  import { useEffect as useEffect26 } from "react";
32347
32353
  import { jsx as jsx106, jsxs as jsxs71 } from "react/jsx-runtime";
32348
32354
  var Many2ManyField = (props) => {
@@ -32417,7 +32423,7 @@ var Many2ManyField = (props) => {
32417
32423
  typeof setGroupByList === "function" && setGroupByList(null);
32418
32424
  };
32419
32425
  }, [selectedTags]);
32420
- return createPortal5(
32426
+ return createPortal6(
32421
32427
  /* @__PURE__ */ jsxs71(
32422
32428
  "div",
32423
32429
  {
package/package.json CHANGED
@@ -1,6 +1,6 @@
1
1
  {
2
2
  "name": "@fctc/sme-widget-ui",
3
- "version": "1.9.8",
3
+ "version": "1.9.9",
4
4
  "main": "dist/index.cjs",
5
5
  "module": "dist/index.mjs",
6
6
  "types": "dist/index.d.ts",