@ai-matrx/design-system 0.48.6 → 0.48.8

This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
Files changed (37) hide show
  1. package/CHANGELOG.md +14 -0
  2. package/dist/data-table/copy-helpers.d.cts +1 -1
  3. package/dist/data-table/copy-helpers.d.ts +1 -1
  4. package/dist/data-table/filter-engine.d.cts +1 -1
  5. package/dist/data-table/filter-engine.d.ts +1 -1
  6. package/dist/data-table/host.d.cts +1 -1
  7. package/dist/data-table/host.d.ts +1 -1
  8. package/dist/data-table/index.cjs +22 -4
  9. package/dist/data-table/index.cjs.map +1 -1
  10. package/dist/data-table/index.d.cts +2 -2
  11. package/dist/data-table/index.d.ts +2 -2
  12. package/dist/data-table/index.js +22 -4
  13. package/dist/data-table/index.js.map +1 -1
  14. package/dist/data-table/infer-filter.d.cts +1 -1
  15. package/dist/data-table/infer-filter.d.ts +1 -1
  16. package/dist/data-table/layered-filters.d.cts +1 -1
  17. package/dist/data-table/layered-filters.d.ts +1 -1
  18. package/dist/data-table/pagination.cjs +1 -1
  19. package/dist/data-table/pagination.cjs.map +1 -1
  20. package/dist/data-table/pagination.js +1 -1
  21. package/dist/data-table/pagination.js.map +1 -1
  22. package/dist/data-table/query-control.d.cts +1 -1
  23. package/dist/data-table/query-control.d.ts +1 -1
  24. package/dist/data-table/spreadsheet.cjs +18 -0
  25. package/dist/data-table/spreadsheet.cjs.map +1 -1
  26. package/dist/data-table/spreadsheet.js +18 -0
  27. package/dist/data-table/spreadsheet.js.map +1 -1
  28. package/dist/data-table/types.cjs.map +1 -1
  29. package/dist/data-table/types.d.cts +1 -1
  30. package/dist/data-table/types.d.ts +1 -1
  31. package/dist/data-table/url-state.d.cts +1 -1
  32. package/dist/data-table/url-state.d.ts +1 -1
  33. package/dist/data-table/xlsx.d.cts +1 -1
  34. package/dist/data-table/xlsx.d.ts +1 -1
  35. package/dist/{types-hMqC2Fwn.d.ts → types-BqLsZ2o1.d.ts} +3 -3
  36. package/dist/{types-Dh3wRc0N.d.cts → types-ufKpwnVR.d.cts} +3 -3
  37. package/package.json +1 -1
@@ -638,6 +638,7 @@ function camePastAPortalIntoTheContainer(target) {
638
638
  if (!element) return false;
639
639
  return element.closest('[data-matrx-table-spreadsheet="true"]') === null;
640
640
  }
641
+ var LAYERS_THE_GRID_OPENS = '[data-radix-popper-content-wrapper], [data-radix-portal], [role="menu"], [role="listbox"], [role="dialog"], [role="alertdialog"], [data-sonner-toaster]';
641
642
  var NOTHING = [];
642
643
  var READ_ONLY_REASON = "This table is view-only \u2014 you can select and copy, but not change cells.";
643
644
  function useSpreadsheetGrid(options) {
@@ -893,6 +894,23 @@ function useSpreadsheetGrid(options) {
893
894
  },
894
895
  [endEdit, focusIsLost]
895
896
  );
897
+ const holdsARange = range !== null;
898
+ useEffect(() => {
899
+ if (!holdsARange || typeof document === "undefined") return;
900
+ const onPointerDown = (event) => {
901
+ const target = event.target instanceof Element ? event.target : null;
902
+ const container = catcherRef.current?.closest('[data-matrx-table-spreadsheet="true"]');
903
+ if (!target || !container || !container.isConnected) return;
904
+ const table = container.closest("[data-matrx-table]") ?? container;
905
+ if (table.contains(target) || target.closest(LAYERS_THE_GRID_OPENS)) return;
906
+ setRange(null);
907
+ setFillTarget(null);
908
+ const active = document.activeElement;
909
+ if (active instanceof HTMLElement && container.contains(active)) active.blur();
910
+ };
911
+ document.addEventListener("pointerdown", onPointerDown, true);
912
+ return () => document.removeEventListener("pointerdown", onPointerDown, true);
913
+ }, [holdsARange]);
896
914
  const controller = useMemo(() => ({ endEdit, select, focusGrid }), [endEdit, select, focusGrid]);
897
915
  const onKeyDown = useCallback(
898
916
  (event) => {