@fctc/sme-widget-ui 2.2.8 → 2.3.0

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/index.js CHANGED
@@ -11016,7 +11016,7 @@ var Row = (props) => {
11016
11016
  children: /* @__PURE__ */ (0, import_jsx_runtime47.jsx)(DeleteIcon, {})
11017
11017
  }
11018
11018
  ) }) }),
11019
- columns && Array.isArray(columns) && columns?.some((column2) => column2?.optional) && /* @__PURE__ */ (0, import_jsx_runtime47.jsx)(
11019
+ (!onAddRow || typeof onAddRow !== "function") && columns && Array.isArray(columns) && columns?.some((column2) => column2?.optional) && /* @__PURE__ */ (0, import_jsx_runtime47.jsx)(
11020
11020
  "td",
11021
11021
  {
11022
11022
  style: {
@@ -11128,98 +11128,65 @@ var TableBody = (props) => {
11128
11128
  };
11129
11129
 
11130
11130
  // src/widgets/advanced/table/table-filter.tsx
11131
- var import_react15 = require("react");
11132
- var import_react_dom = require("react-dom");
11131
+ var import_react15 = require("@headlessui/react");
11133
11132
  var import_jsx_runtime49 = require("react/jsx-runtime");
11134
11133
  var TableFilter = ({ columns, onToggleColumnOptional }) => {
11135
- const [openTableFilter, setOpenTableFilter] = (0, import_react15.useState)();
11136
- const [filterPosition, setFilterPosition] = (0, import_react15.useState)(null);
11137
- const filterPopupRef = (0, import_react15.useRef)(null);
11138
- const filterRef = useClickOutside({
11139
- handler: () => {
11140
- if (openTableFilter) {
11141
- setOpenTableFilter(false);
11142
- }
11143
- },
11144
- refs: [filterPopupRef]
11145
- });
11146
- (0, import_react15.useEffect)(() => {
11147
- const updatePosition = () => {
11148
- if (filterRef.current && openTableFilter) {
11149
- const rect = filterRef.current.getBoundingClientRect();
11150
- setFilterPosition({
11151
- top: rect.bottom + window.scrollY,
11152
- left: rect.left + window.scrollX,
11153
- right: window.innerWidth - rect.right
11154
- });
11155
- }
11156
- };
11157
- updatePosition();
11158
- window.addEventListener("scroll", updatePosition);
11159
- window.addEventListener("resize", updatePosition);
11160
- return () => {
11161
- window.removeEventListener("scroll", updatePosition);
11162
- window.removeEventListener("resize", updatePosition);
11163
- };
11164
- }, [filterRef, openTableFilter]);
11165
- return /* @__PURE__ */ (0, import_jsx_runtime49.jsxs)(
11134
+ return /* @__PURE__ */ (0, import_jsx_runtime49.jsx)(
11166
11135
  "div",
11167
11136
  {
11168
- ref: filterRef,
11169
11137
  style: {
11170
11138
  transform: "translateY(-50%)"
11171
11139
  },
11172
- className: "w-fit absolute top-[50%] translate-y-[-50%] right-[10px] ms-auto z-[32] bg-white",
11173
- children: [
11174
- /* @__PURE__ */ (0, import_jsx_runtime49.jsx)(
11140
+ className: "w-fit absolute top-[50%] translate-y-[-50%] right-[0px] ms-auto z-[32] ",
11141
+ children: /* @__PURE__ */ (0, import_jsx_runtime49.jsxs)(import_react15.Popover, { children: [
11142
+ /* @__PURE__ */ (0, import_jsx_runtime49.jsx)(import_react15.PopoverButton, { className: "p-2 rounded-lg cursor-pointer outline-none", children: /* @__PURE__ */ (0, import_jsx_runtime49.jsx)(
11175
11143
  "button",
11176
11144
  {
11177
11145
  type: "button",
11178
11146
  className: "bg-white size-8 p-1 rounded-lg cursor-pointer flex items-center justify-center",
11179
- onClick: () => {
11180
- setOpenTableFilter(!openTableFilter);
11181
- },
11182
11147
  children: /* @__PURE__ */ (0, import_jsx_runtime49.jsx)(FilterColumnIcon, {})
11183
11148
  }
11184
- ),
11185
- filterPosition && openTableFilter && (0, import_react_dom.createPortal)(
11186
- /* @__PURE__ */ (0, import_jsx_runtime49.jsx)(
11187
- "div",
11188
- {
11189
- ref: filterPopupRef,
11190
- style: {
11191
- top: filterPosition?.top,
11192
- right: filterPosition?.right,
11193
- zIndex: 9999
11194
- },
11195
- className: "absolute z-[9999] flex w-[250px] h-auto max-h-[800%] overflow-auto flex-col gap-[16px] rounded-[8px] bg-[#fff] px-[24px] py-[16px] shadow-md",
11196
- children: columns?.filter((val) => val?.optional !== void 0)?.map((item) => {
11197
- return /* @__PURE__ */ (0, import_jsx_runtime49.jsxs)("div", { className: "flex items-center gap-2", children: [
11198
- /* @__PURE__ */ (0, import_jsx_runtime49.jsx)(
11199
- "input",
11200
- {
11201
- type: "checkbox",
11202
- id: `${item.name}`,
11203
- onChange: () => onToggleColumnOptional(item),
11204
- checked: item.optional !== "hide",
11205
- className: "cursor-pointer"
11206
- }
11207
- ),
11208
- /* @__PURE__ */ (0, import_jsx_runtime49.jsx)(
11209
- "label",
11210
- {
11211
- htmlFor: `${item.name}`,
11212
- className: "flex items-center gap-[8px]",
11213
- children: item.field.string
11214
- }
11215
- )
11216
- ] }, item.name);
11217
- })
11218
- }
11219
- ),
11220
- document.body
11149
+ ) }),
11150
+ /* @__PURE__ */ (0, import_jsx_runtime49.jsx)(
11151
+ import_react15.PopoverPanel,
11152
+ {
11153
+ transition: true,
11154
+ anchor: "bottom end",
11155
+ className: "shadow-lg z-[99] gap-2 bg-white rounded-lg transition duration-200 ease-in-out border border-stroke-disabled",
11156
+ children: /* @__PURE__ */ (0, import_jsx_runtime49.jsx)(
11157
+ "div",
11158
+ {
11159
+ style: {
11160
+ zIndex: 9999
11161
+ },
11162
+ className: "flex w-[250px] h-auto overflow-auto flex-col gap-[16px] rounded-[8px] bg-[#fff] px-[24px] py-[16px] shadow-md",
11163
+ children: columns?.filter((val) => val?.optional !== void 0)?.map((item) => {
11164
+ return /* @__PURE__ */ (0, import_jsx_runtime49.jsxs)("div", { className: "flex items-center gap-2", children: [
11165
+ /* @__PURE__ */ (0, import_jsx_runtime49.jsx)(
11166
+ "input",
11167
+ {
11168
+ type: "checkbox",
11169
+ id: `${item.name}`,
11170
+ onChange: () => onToggleColumnOptional(item),
11171
+ checked: item.optional !== "hide",
11172
+ className: "cursor-pointer"
11173
+ }
11174
+ ),
11175
+ /* @__PURE__ */ (0, import_jsx_runtime49.jsx)(
11176
+ "label",
11177
+ {
11178
+ htmlFor: `${item.name}`,
11179
+ className: "flex items-center gap-[8px]",
11180
+ children: item.field.string
11181
+ }
11182
+ )
11183
+ ] }, item.name);
11184
+ })
11185
+ }
11186
+ )
11187
+ }
11221
11188
  )
11222
- ]
11189
+ ] })
11223
11190
  }
11224
11191
  );
11225
11192
  };
@@ -13082,7 +13049,7 @@ var M = import_react16.default.forwardRef(({ id: t3, anchorId: l2, anchorSelect:
13082
13049
  });
13083
13050
 
13084
13051
  // src/widgets/advanced/table/table-head.tsx
13085
- var import_react_dom2 = require("react-dom");
13052
+ var import_react_dom = require("react-dom");
13086
13053
  var import_jsx_runtime51 = require("react/jsx-runtime");
13087
13054
  var TableHead = (props) => {
13088
13055
  const {
@@ -13130,7 +13097,7 @@ var TableHead = (props) => {
13130
13097
  children: /* @__PURE__ */ (0, import_jsx_runtime51.jsxs)("div", { className: "cursor-pointer flex items-center gap-[4px] w-full group relative", children: [
13131
13098
  /* @__PURE__ */ (0, import_jsx_runtime51.jsx)("span", { className: "truncate line-clamp-1 w-fit", children: col.title }),
13132
13099
  col?.field?.help && /* @__PURE__ */ (0, import_jsx_runtime51.jsxs)(import_jsx_runtime51.Fragment, { children: [
13133
- (0, import_react_dom2.createPortal)(
13100
+ (0, import_react_dom.createPortal)(
13134
13101
  /* @__PURE__ */ (0, import_jsx_runtime51.jsx)(
13135
13102
  M,
13136
13103
  {
@@ -16296,7 +16263,7 @@ var ModalConfirm = ({
16296
16263
 
16297
16264
  // src/widgets/common/modal-detail.tsx
16298
16265
  var import_react24 = require("react");
16299
- var import_react_dom3 = require("react-dom");
16266
+ var import_react_dom2 = require("react-dom");
16300
16267
  var import_jsx_runtime69 = require("react/jsx-runtime");
16301
16268
  var ModalDetail = ({
16302
16269
  idToolTip,
@@ -16319,7 +16286,7 @@ var ModalDetail = ({
16319
16286
  sessionStorage.setItem("actionData", JSON.stringify(actionData));
16320
16287
  window.location.href = `/form/menu?model=${model}&id=${idForm}`;
16321
16288
  };
16322
- return (0, import_react_dom3.createPortal)(
16289
+ return (0, import_react_dom2.createPortal)(
16323
16290
  /* @__PURE__ */ (0, import_jsx_runtime69.jsx)(import_jsx_runtime69.Fragment, { children: showModalDetail && /* @__PURE__ */ (0, import_jsx_runtime69.jsxs)("div", { className: "fixed bottom-0 left-0 right-0 top-0 z-[100]", children: [
16324
16291
  /* @__PURE__ */ (0, import_jsx_runtime69.jsx)("div", { className: "absolute inset-0 bg-[rgba(27,27,27,0.48)]" }),
16325
16292
  /* @__PURE__ */ (0, import_jsx_runtime69.jsx)("div", { className: "absolute inset-0 overflow-auto flex flex-col justify-center items-center px-5", children: /* @__PURE__ */ (0, import_jsx_runtime69.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: [
@@ -22214,7 +22181,7 @@ function useFloating2(options2) {
22214
22181
  }
22215
22182
 
22216
22183
  // node_modules/react-datepicker/dist/index.es.js
22217
- var import_react_dom6 = __toESM(require("react-dom"));
22184
+ var import_react_dom5 = __toESM(require("react-dom"));
22218
22185
  var _extendStatics = function extendStatics(d, b2) {
22219
22186
  _extendStatics = Object.setPrototypeOf || {
22220
22187
  __proto__: []
@@ -25457,7 +25424,7 @@ var Portal = (
25457
25424
  }
25458
25425
  };
25459
25426
  Portal2.prototype.render = function() {
25460
- return import_react_dom6.default.createPortal(this.props.children, this.el);
25427
+ return import_react_dom5.default.createPortal(this.props.children, this.el);
25461
25428
  };
25462
25429
  return Portal2;
25463
25430
  }(import_react45.Component)
@@ -28025,7 +27992,7 @@ function _taggedTemplateLiteral(e3, t3) {
28025
27992
 
28026
27993
  // node_modules/react-select/dist/index-641ee5b8.esm.js
28027
27994
  var import_react51 = require("react");
28028
- var import_react_dom7 = require("react-dom");
27995
+ var import_react_dom6 = require("react-dom");
28029
27996
 
28030
27997
  // node_modules/use-isomorphic-layout-effect/dist/use-isomorphic-layout-effect.esm.js
28031
27998
  var import_react49 = require("react");
@@ -28528,7 +28495,7 @@ var MenuPortal = function MenuPortal2(props) {
28528
28495
  }), innerProps), children);
28529
28496
  return jsx84(PortalPlacementContext.Provider, {
28530
28497
  value: portalPlacementContext
28531
- }, appendTo ? /* @__PURE__ */ (0, import_react_dom7.createPortal)(menuWrapper, appendTo) : menuWrapper);
28498
+ }, appendTo ? /* @__PURE__ */ (0, import_react_dom6.createPortal)(menuWrapper, appendTo) : menuWrapper);
28532
28499
  };
28533
28500
  var containerCSS = function containerCSS2(_ref3) {
28534
28501
  var isDisabled = _ref3.isDisabled, isRtl = _ref3.isRtl;
@@ -31421,7 +31388,7 @@ var import_toConsumableArray2 = __toESM(require_toConsumableArray());
31421
31388
  var import_typeof5 = __toESM(require_typeof());
31422
31389
  var import_taggedTemplateLiteral2 = __toESM(require_taggedTemplateLiteral());
31423
31390
  var import_defineProperty3 = __toESM(require_defineProperty());
31424
- var import_react_dom8 = require("react-dom");
31391
+ var import_react_dom7 = require("react-dom");
31425
31392
  var StateManagedSelect = /* @__PURE__ */ (0, import_react54.forwardRef)(function(props, ref) {
31426
31393
  var baseSelectProps = useStateManager(props);
31427
31394
  return /* @__PURE__ */ React14.createElement(Select, _extends({
@@ -33374,7 +33341,7 @@ var StatusDropdownField = (props) => {
33374
33341
  };
33375
33342
 
33376
33343
  // src/widgets/basic/many2many-field/many2many.tsx
33377
- var import_react_dom9 = require("react-dom");
33344
+ var import_react_dom8 = require("react-dom");
33378
33345
  var import_react66 = require("react");
33379
33346
  var import_jsx_runtime107 = require("react/jsx-runtime");
33380
33347
  var Many2ManyField = (props) => {
@@ -33449,7 +33416,7 @@ var Many2ManyField = (props) => {
33449
33416
  typeof setGroupByList === "function" && setGroupByList(null);
33450
33417
  };
33451
33418
  }, [selectedTags]);
33452
- return (0, import_react_dom9.createPortal)(
33419
+ return (0, import_react_dom8.createPortal)(
33453
33420
  /* @__PURE__ */ (0, import_jsx_runtime107.jsxs)(
33454
33421
  "div",
33455
33422
  {