@darajs/core 1.17.3 → 1.17.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.
@@ -45830,9 +45830,7 @@ You must set sticky: 'left' | 'right' for the '${bugWithUnderColumnsSticky.Heade
45830
45830
  }
45831
45831
  function FilterContainer(props) {
45832
45832
  var _a;
45833
- const [visible, setVisible] = React.useState(false);
45834
- const show = () => setVisible(true);
45835
- const hide2 = () => setVisible(false);
45833
+ const [isOpen, setIsOpen] = React.useState(false);
45836
45834
  const hasFilter = !(props.col.filterValue === void 0 || ((_a = props.col.filterValue) === null || _a === void 0 ? void 0 : _a.selected) === "None" || Array.isArray(props.col.filterValue) && props.col.filterValue.length === 0);
45837
45835
  const items = React.useMemo(() => {
45838
45836
  var _a2;
@@ -45841,16 +45839,29 @@ You must set sticky: 'left' | 'right' for the '${bugWithUnderColumnsSticky.Heade
45841
45839
  }
45842
45840
  }, [props.col]);
45843
45841
  const portalsRef = React.useRef([]);
45844
- function onClickOutside(instance, event) {
45845
- const target = event.target;
45846
- for (const portal of portalsRef.current) {
45847
- if (portal === null || portal === void 0 ? void 0 : portal.contains(target)) {
45848
- return;
45842
+ const { refs, floatingStyles, context: context2 } = useFloating({
45843
+ open: isOpen,
45844
+ onOpenChange: setIsOpen,
45845
+ placement: "bottom-start",
45846
+ middleware: [offset$2(8), flip$2(), shift({ padding: 8 })],
45847
+ whileElementsMounted: autoUpdate
45848
+ });
45849
+ const click = useClick(context2);
45850
+ const dismiss = useDismiss(context2, {
45851
+ outsidePress: (event) => {
45852
+ const target = event.target;
45853
+ for (const portal of portalsRef.current) {
45854
+ if (portal === null || portal === void 0 ? void 0 : portal.contains(target)) {
45855
+ return false;
45856
+ }
45849
45857
  }
45858
+ return true;
45850
45859
  }
45851
- hide2();
45852
- }
45853
- return jsxRuntime.exports.jsx(Tooltip, { content: props.col.render("Filter", { items, onChange: hide2, portalsRef }), hidden: true, interactive: true, onClickOutside, visible, children: jsxRuntime.exports.jsx("span", { children: jsxRuntime.exports.jsx(HeaderIconWrapper, { hasFilter, children: jsxRuntime.exports.jsx(FilterIcon, { "$hasFilter": hasFilter, icon: faFilter, onClick: show }) }) }) });
45860
+ });
45861
+ const role = useRole(context2);
45862
+ const { getReferenceProps, getFloatingProps } = useInteractions([click, dismiss, role]);
45863
+ const hide2 = () => setIsOpen(false);
45864
+ return jsxRuntime.exports.jsxs(jsxRuntime.exports.Fragment, { children: [jsxRuntime.exports.jsx("span", Object.assign({ ref: refs.setReference }, getReferenceProps(), { children: jsxRuntime.exports.jsx(HeaderIconWrapper, { hasFilter, children: jsxRuntime.exports.jsx(FilterIcon, { "$hasFilter": hasFilter, icon: faFilter }) }) })), jsxRuntime.exports.jsx(FloatingPortal, { children: jsxRuntime.exports.jsx("div", Object.assign({ ref: refs.setFloating, style: Object.assign(Object.assign({}, floatingStyles), { zIndex: 9999, pointerEvents: "auto", display: isOpen ? "block" : "none" }) }, getFloatingProps(), { children: props.col.render("Filter", { items, onChange: hide2, portalsRef }) })) })] });
45854
45865
  }
45855
45866
  var CheckboxState;
45856
45867
  (function(CheckboxState2) {
package/package.json CHANGED
@@ -1,6 +1,6 @@
1
1
  {
2
2
  "name": "@darajs/core",
3
- "version": "1.17.3",
3
+ "version": "1.17.4",
4
4
  "description": "Dara Framework core",
5
5
  "main": "dist/index.js",
6
6
  "module": "dist/index.js",
@@ -37,9 +37,9 @@
37
37
  "@babel/preset-env": "^7.23.0",
38
38
  "@babel/preset-react": "^7.22.15",
39
39
  "@babel/preset-typescript": "^7.23.0",
40
- "@darajs/eslint-config": "1.17.3",
41
- "@darajs/prettier-config": "1.17.3",
42
- "@darajs/stylelint-config": "1.17.3",
40
+ "@darajs/eslint-config": "1.17.4",
41
+ "@darajs/prettier-config": "1.17.4",
42
+ "@darajs/stylelint-config": "1.17.4",
43
43
  "@rollup/plugin-inject": "^4.0.4",
44
44
  "@testing-library/dom": "^9.3.0",
45
45
  "@testing-library/jest-dom": "^5.16.5",
@@ -79,10 +79,10 @@
79
79
  "whatwg-fetch": "^3.6.2"
80
80
  },
81
81
  "dependencies": {
82
- "@darajs/styled-components": "1.17.3",
83
- "@darajs/ui-components": "1.17.3",
84
- "@darajs/ui-notifications": "1.17.3",
85
- "@darajs/ui-utils": "1.17.3",
82
+ "@darajs/styled-components": "1.17.4",
83
+ "@darajs/ui-components": "1.17.4",
84
+ "@darajs/ui-notifications": "1.17.4",
85
+ "@darajs/ui-utils": "1.17.4",
86
86
  "@fortawesome/fontawesome-free": "~6.4.0",
87
87
  "@recoiljs/refine": "^0.1.1",
88
88
  "@tanstack/query-core": "^4.0.0",
@@ -118,5 +118,5 @@
118
118
  "publishConfig": {
119
119
  "access": "public"
120
120
  },
121
- "gitHead": "906132970837bf3c4b17c0977f68aa534afa69b0"
121
+ "gitHead": "d7757081acb2b0cd1b1a12748357dbf8911627df"
122
122
  }