impact-ui 4.0.6 → 4.0.7-alpha.2

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 (93) hide show
  1. package/dist/_virtual/index3.js +4 -2
  2. package/dist/_virtual/index4.js +3 -3
  3. package/dist/_virtual/index5.js +2 -4
  4. package/dist/components/Accordion/index.d.ts.map +1 -1
  5. package/dist/components/Accordion/index.js +1 -0
  6. package/dist/components/BottomSheet/index.d.ts.map +1 -1
  7. package/dist/components/BottomSheet/index.js +27 -21
  8. package/dist/components/Button/index.d.ts.map +1 -1
  9. package/dist/components/Button/index.js +1 -0
  10. package/dist/components/Chatbot/Chatbot.types.d.ts +12 -1
  11. package/dist/components/Chatbot/Chatbot.types.d.ts.map +1 -1
  12. package/dist/components/Chatbot/chatInput.d.ts.map +1 -1
  13. package/dist/components/Chatbot/chatInput.js +22 -4
  14. package/dist/components/Chatbot/chatbotModuleMenu.d.ts +1 -1
  15. package/dist/components/Chatbot/chatbotModuleMenu.d.ts.map +1 -1
  16. package/dist/components/Chatbot/chatbotModuleMenu.js +162 -186
  17. package/dist/components/Chatbot/conversationScreen.d.ts +1 -1
  18. package/dist/components/Chatbot/conversationScreen.d.ts.map +1 -1
  19. package/dist/components/Chatbot/conversationScreen.js +7 -3
  20. package/dist/components/Chatbot/customScreen.d.ts +1 -1
  21. package/dist/components/Chatbot/customScreen.d.ts.map +1 -1
  22. package/dist/components/Chatbot/customScreen.js +26 -25
  23. package/dist/components/Chatbot/index.d.ts.map +1 -1
  24. package/dist/components/Chatbot/index.js +340 -242
  25. package/dist/components/Chatbot/newChatComponent.d.ts +1 -1
  26. package/dist/components/Chatbot/newChatComponent.d.ts.map +1 -1
  27. package/dist/components/Chatbot/newChatComponent.js +5 -2
  28. package/dist/components/Checkbox/index.js +1 -1
  29. package/dist/components/Chips/index.js +1 -1
  30. package/dist/components/CommentsPanel/CommentsPanel.impl.d.ts +2 -6
  31. package/dist/components/CommentsPanel/CommentsPanel.impl.d.ts.map +1 -1
  32. package/dist/components/CommentsPanel/CommentsPanel.impl.js +7 -2
  33. package/dist/components/CommentsPanel/CommentsPanel.types.d.ts +2 -2
  34. package/dist/components/CommentsPanel/CommentsPanel.types.d.ts.map +1 -1
  35. package/dist/components/DatePicker/index.js +1 -1
  36. package/dist/components/DateRangePicker/index.js +1 -1
  37. package/dist/components/FilterPanel/index.js +1 -1
  38. package/dist/components/Header/index.js +1 -1
  39. package/dist/components/HomePage/index.js +1 -1
  40. package/dist/components/Input/index.js +1 -1
  41. package/dist/components/KeyboardShortCuts/ShortcutLandingPage.js +1 -1
  42. package/dist/components/KeyboardShortCuts/ShortcutModal.js +1 -1
  43. package/dist/components/KeyboardShortCuts/allSetBox.js +1 -1
  44. package/dist/components/KeyboardShortCuts/index.js +1 -1
  45. package/dist/components/KeyboardShortCuts/tutorial.js +1 -1
  46. package/dist/components/Menu/IconMenuItem.d.ts.map +1 -1
  47. package/dist/components/Menu/IconMenuItem.js +2 -1
  48. package/dist/components/Menu/MenuHeaderInfo.js +1 -1
  49. package/dist/components/Menu/NestedMenuItem.js +2 -2
  50. package/dist/components/Menu/index.js +1 -1
  51. package/dist/components/Menu/nestedMenuItemsFromObject.js +1 -1
  52. package/dist/components/Modal/index.js +1 -1
  53. package/dist/components/MonthPicker/index.js +1 -1
  54. package/dist/components/MonthRangePicker/index.js +1 -1
  55. package/dist/components/Notification/NotificationBody/NotificationList/NotificationList.js +1 -1
  56. package/dist/components/Notification/index.js +1 -1
  57. package/dist/components/Panel/index.js +1 -1
  58. package/dist/components/Prompt/index.js +1 -1
  59. package/dist/components/RadioButtonGroup/index.js +1 -1
  60. package/dist/components/Select/index.js +1 -1
  61. package/dist/components/Stepper/index.js +1 -1
  62. package/dist/components/Table/index.js +1 -1
  63. package/dist/components/Table/tableFunctions.d.ts.map +1 -1
  64. package/dist/components/Table/tableFunctions.js +105 -174
  65. package/dist/components/TableChat/components/TableChatLeftSection/TableChatChannelHeader.js +1 -1
  66. package/dist/components/TableOld/index.d.ts.map +1 -1
  67. package/dist/components/TableOld/index.js +2 -1
  68. package/dist/components/TableOld/tableFunctions.d.ts.map +1 -1
  69. package/dist/components/TableOld/tableFunctions.js +104 -173
  70. package/dist/components/TextArea/index.js +1 -1
  71. package/dist/components/common/HelperText/index.js +1 -1
  72. package/dist/hooks/useDraggableResizable.d.ts +104 -0
  73. package/dist/hooks/useDraggableResizable.d.ts.map +1 -0
  74. package/dist/hooks/useDraggableResizable.js +323 -0
  75. package/dist/hooks/useMediaQuery.d.ts +9 -0
  76. package/dist/hooks/useMediaQuery.d.ts.map +1 -0
  77. package/dist/mcp-component-registry.json +1 -1
  78. package/dist/node_modules/@mui/system/colorManipulator.js +2 -2
  79. package/dist/node_modules/react-is/index.js +1 -1
  80. package/dist/stories/LocaleDictionaryCollapse.d.ts +6 -0
  81. package/dist/stories/LocaleDictionaryCollapse.d.ts.map +1 -0
  82. package/dist/utils/assetBase.d.ts +1 -0
  83. package/dist/utils/assetBase.d.ts.map +1 -1
  84. package/dist/utils/assetBase.js +4 -7
  85. package/dist/utils/assetBaseDefault.d.ts +11 -0
  86. package/dist/utils/assetBaseDefault.d.ts.map +1 -0
  87. package/dist/utils/assetBaseDefault.js +9 -0
  88. package/dist/utils/index.d.ts +1 -0
  89. package/dist/utils/index.d.ts.map +1 -1
  90. package/dist/utils/onResize.d.ts +24 -0
  91. package/dist/utils/onResize.d.ts.map +1 -0
  92. package/dist/utils/onResize.js +28 -0
  93. package/package.json +4 -5
@@ -1 +1 @@
1
- {"version":3,"file":"tableFunctions.d.ts","sourceRoot":"","sources":["../../../src/components/TableOld/tableFunctions.tsx"],"names":[],"mappings":"AAoDA,eAAO,MAAM,oBAAoB,GAAI,WAAM,SAQ1C,CAAC;AAEF,eAAO,MAAM,YAAY,GAAI,WAAM,EAAE,aAAQ,SAK5C,CAAC;AAEF,eAAO,MAAM,wBAAwB,GAAI,WAAM,SAK9C,CAAC;AAEF,eAAO,MAAM,QAAQ,GAAI,eAAU,EAAE,WAAM,EAAE,QAAG,SAM/C,CAAC;AAEF,eAAO,MAAM,gBAAgB,GAAI,WAAM;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;IAsItC,CAAC;AA0BF,eAAO,MAAM,OAAO,mFA26ClB,CAAC;AAEH,eAAO,MAAM,yBAAyB,GAAI,iBAAY,WAgBrD,CAAC"}
1
+ {"version":3,"file":"tableFunctions.d.ts","sourceRoot":"","sources":["../../../src/components/TableOld/tableFunctions.tsx"],"names":[],"mappings":"AAoDA,eAAO,MAAM,oBAAoB,GAAI,WAAM,SAQ1C,CAAC;AAEF,eAAO,MAAM,YAAY,GAAI,WAAM,EAAE,aAAQ,SAK5C,CAAC;AAEF,eAAO,MAAM,wBAAwB,GAAI,WAAM,SAK9C,CAAC;AAEF,eAAO,MAAM,QAAQ,GAAI,eAAU,EAAE,WAAM,EAAE,QAAG,SAM/C,CAAC;AAEF,eAAO,MAAM,gBAAgB,GAAI,WAAM;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;IAsItC,CAAC;AAiEF,eAAO,MAAM,OAAO,mFA0xClB,CAAC;AAEH,eAAO,MAAM,yBAAyB,GAAI,iBAAY,WAgBrD,CAAC"}
@@ -182,6 +182,34 @@ const getMainMenuItems = (params) => {
182
182
  });
183
183
  return columnMenuItems;
184
184
  };
185
+ const filterColumnsByText = (columns, searchText) => {
186
+ if (!searchText) return columns;
187
+ return columns.map((column) => {
188
+ var _a;
189
+ const matches = (_a = column.headerName) == null ? void 0 : _a.toLowerCase().includes(searchText);
190
+ if (matches) {
191
+ return {
192
+ ...column,
193
+ isVisible: column.isVisible
194
+ };
195
+ }
196
+ const filteredChildren = column.children ? filterColumnsByText(column.children, searchText) : null;
197
+ if ((filteredChildren == null ? void 0 : filteredChildren.length) > 0) {
198
+ return {
199
+ ...column,
200
+ children: filteredChildren,
201
+ isVisible: column.isVisible
202
+ };
203
+ }
204
+ return null;
205
+ }).filter(Boolean);
206
+ };
207
+ const isColumnTreeVisible = (columns) => columns.some(
208
+ (column) => {
209
+ var _a;
210
+ return ((_a = column.children) == null ? void 0 : _a.length) > 0 ? isColumnTreeVisible(column.children) : column.isVisible;
211
+ }
212
+ );
185
213
  const SortableColumnItem = ({ column, level, renderFn, dragIconClass, onToggle, ...props }) => {
186
214
  const { attributes, listeners, setNodeRef, transform, transition, isDragging } = useSortable({
187
215
  id: column.colId
@@ -237,6 +265,7 @@ const Columns = forwardRef((props, ref) => {
237
265
  const [deleteView, setDeleteView] = useState(null);
238
266
  const [selectedView, setSelectedView] = useState(null);
239
267
  const isColumnPinnedRef = useRef(false);
268
+ const searchTextRef = useRef("");
240
269
  useEffect(() => {
241
270
  const views = props.savedViewsOptions ?? [];
242
271
  setSavedViewsOptions(views);
@@ -324,10 +353,11 @@ const Columns = forwardRef((props, ref) => {
324
353
  },
325
354
  { frozColumn: [], scrollColumn: [] }
326
355
  );
356
+ const activeSearchText = searchTextRef.current;
327
357
  setFrozenColumn(frozColumn);
328
- setFilteredFrozenColumns(frozColumn);
358
+ setFilteredFrozenColumns(filterColumnsByText(frozColumn, activeSearchText));
329
359
  setScrollableColumn(scrollColumn);
330
- setFilteredScrollableColumns(scrollColumn);
360
+ setFilteredScrollableColumns(filterColumnsByText(scrollColumn, activeSearchText));
331
361
  }, [getColumnDefs, ref, props.column, t]);
332
362
  const debouncedUpdateColumnState = useMemo(
333
363
  () => debounce(updateColumnState, 100),
@@ -377,131 +407,62 @@ const Columns = forwardRef((props, ref) => {
377
407
  }, [filteredFrozenColumns, filteredScrollableColumns]);
378
408
  const handleSearchChange = (e) => {
379
409
  const searchText2 = e.target.value.toLowerCase();
380
- const filterColumns = (columns, searchText3) => {
381
- return columns.map((column) => {
382
- const matches = column.headerName.toLowerCase().includes(searchText3);
383
- const filteredChildren = column.children ? filterColumns(column.children, searchText3) : null;
384
- if (matches || (filteredChildren == null ? void 0 : filteredChildren.length) > 0) {
385
- return {
386
- ...column,
387
- children: filteredChildren,
388
- isVisible: column.isVisible
389
- };
390
- }
391
- return null;
392
- }).filter(Boolean);
393
- };
394
- const filteredFrozenColumns2 = filterColumns(frozenColumn, searchText2);
395
- const filteredScrollableColumns2 = filterColumns(scrollableColumn, searchText2);
410
+ searchTextRef.current = searchText2;
396
411
  setSearchText(searchText2);
397
- setFilteredFrozenColumns(filteredFrozenColumns2);
398
- setFilteredScrollableColumns(filteredScrollableColumns2);
412
+ setFilteredFrozenColumns(filterColumnsByText(frozenColumn, searchText2));
413
+ setFilteredScrollableColumns(filterColumnsByText(scrollableColumn, searchText2));
399
414
  };
400
415
  useEffect(() => {
401
- const isAnyScrollableColumnVisible = filteredScrollableColumns.some((column) => {
402
- if (column.children) {
403
- return column.children.some((child) => child.isVisible);
404
- }
405
- return column.isVisible;
406
- });
407
- const isAnyFrozenColumnVisible = filteredFrozenColumns.some((column) => {
408
- if (column.children) {
409
- return column.children.some((child) => child.isVisible);
410
- }
411
- return column.isVisible;
412
- });
416
+ const isAnyScrollableColumnVisible = isColumnTreeVisible(filteredScrollableColumns);
417
+ const isAnyFrozenColumnVisible = isColumnTreeVisible(filteredFrozenColumns);
413
418
  setMainChecked(isAnyScrollableColumnVisible);
414
419
  setAllColumnvisisbility(isAnyFrozenColumnVisible || isAnyScrollableColumnVisible);
415
420
  }, [filteredFrozenColumns, filteredScrollableColumns]);
416
- const toggleColumnVisibilityFrozen = (colId) => {
417
- const updateChildrenVisibility = (columns, parentVisibility = null) => columns.map((column) => {
418
- var _a2, _b2;
419
- const updatedChildren = column.children ? updateChildrenVisibility(column.children, parentVisibility) : null;
420
- (_b2 = (_a2 = ref == null ? void 0 : ref.current) == null ? void 0 : _a2.columnApi) == null ? void 0 : _b2.setColumnVisible(column.colId, parentVisibility);
421
- return {
422
- ...column,
423
- isVisible: parentVisibility,
424
- children: updatedChildren
425
- };
426
- });
427
- const updateVisibility = (columns, parentVisibility = null) => columns.map((column) => {
428
- var _a2, _b2, _c2, _d2;
421
+ const setSubtreeVisibility = (columns, visibility) => columns.map((column) => {
422
+ var _a2, _b2, _c2;
423
+ (_b2 = (_a2 = ref == null ? void 0 : ref.current) == null ? void 0 : _a2.columnApi) == null ? void 0 : _b2.setColumnVisible(column.colId, visibility);
424
+ return {
425
+ ...column,
426
+ isVisible: visibility,
427
+ children: ((_c2 = column.children) == null ? void 0 : _c2.length) > 0 ? setSubtreeVisibility(column.children, visibility) : column.children
428
+ };
429
+ });
430
+ const applyVisibilityToggle = (columns, colId) => {
431
+ let changed = false;
432
+ const updated = columns.map((column) => {
433
+ var _a2, _b2, _c2, _d2, _e2, _f2;
434
+ if (changed) return column;
429
435
  if (column.colId === colId) {
430
- const newVisibility = parentVisibility !== null ? parentVisibility : !column.isVisible;
431
- const updatedChildren = column.children ? updateChildrenVisibility(column.children, newVisibility) : null;
436
+ changed = true;
437
+ const newVisibility = !column.isVisible;
432
438
  (_b2 = (_a2 = ref == null ? void 0 : ref.current) == null ? void 0 : _a2.columnApi) == null ? void 0 : _b2.setColumnVisible(column.colId, newVisibility);
433
439
  return {
434
440
  ...column,
435
441
  isVisible: newVisibility,
436
- children: updatedChildren
442
+ children: ((_c2 = column.children) == null ? void 0 : _c2.length) > 0 ? setSubtreeVisibility(column.children, newVisibility) : column.children
437
443
  };
438
444
  }
439
- if (column.children) {
440
- const updatedChildren = updateVisibility(column.children);
441
- const isAnyChildVisible = updatedChildren.some((child) => child.isVisible);
442
- (_d2 = (_c2 = ref == null ? void 0 : ref.current) == null ? void 0 : _c2.columnApi) == null ? void 0 : _d2.setColumnVisible(column.colId, isAnyChildVisible);
443
- return {
444
- ...column,
445
- isVisible: isAnyChildVisible,
446
- children: updatedChildren
447
- };
445
+ if (((_d2 = column.children) == null ? void 0 : _d2.length) > 0) {
446
+ const result = applyVisibilityToggle(column.children, colId);
447
+ if (!result.changed) return column;
448
+ changed = true;
449
+ const isAnyChildVisible = isColumnTreeVisible(result.columns);
450
+ (_f2 = (_e2 = ref == null ? void 0 : ref.current) == null ? void 0 : _e2.columnApi) == null ? void 0 : _f2.setColumnVisible(column.colId, isAnyChildVisible);
451
+ return { ...column, isVisible: isAnyChildVisible, children: result.columns };
448
452
  }
449
453
  return column;
450
454
  });
451
- const updatedColumns = updateVisibility(filteredFrozenColumns);
452
- setFilteredFrozenColumns(updatedColumns);
453
- setFrozenColumn((prev) => {
454
- const updatedMap = Object.fromEntries(updatedColumns.map((col) => [col.colId, col]));
455
- const merged = prev.map((col) => updatedMap[col.colId] ? updatedMap[col.colId] : col);
456
- const prevColIds = new Set(prev.map((col) => col.colId));
457
- const newCols = updatedColumns.filter((col) => !prevColIds.has(col.colId));
458
- return [...merged, ...newCols];
459
- });
455
+ return { columns: updated, changed };
456
+ };
457
+ const toggleColumnVisibilityFrozen = (colId) => {
458
+ const { columns } = applyVisibilityToggle(frozenColumn, colId);
459
+ setFrozenColumn(columns);
460
+ setFilteredFrozenColumns(filterColumnsByText(columns, searchTextRef.current));
460
461
  };
461
462
  const toggleColumnVisibilityScroll = (colId) => {
462
- const updateChildrenVisibility = (columns, parentVisibility = null) => columns.map((column) => {
463
- var _a2, _b2;
464
- const updatedChildren = column.children ? updateChildrenVisibility(column.children, parentVisibility) : null;
465
- (_b2 = (_a2 = ref == null ? void 0 : ref.current) == null ? void 0 : _a2.columnApi) == null ? void 0 : _b2.setColumnVisible(column.colId, parentVisibility);
466
- return {
467
- ...column,
468
- isVisible: parentVisibility,
469
- children: updatedChildren
470
- };
471
- });
472
- const updateVisibility = (columns, parentVisibility = null) => columns.map((column) => {
473
- var _a2, _b2, _c2, _d2;
474
- if (column.colId === colId) {
475
- const newVisibility = parentVisibility !== null ? parentVisibility : !column.isVisible;
476
- const updatedChildren = column.children ? updateChildrenVisibility(column.children, newVisibility) : null;
477
- (_b2 = (_a2 = ref == null ? void 0 : ref.current) == null ? void 0 : _a2.columnApi) == null ? void 0 : _b2.setColumnVisible(column.colId, newVisibility);
478
- return {
479
- ...column,
480
- isVisible: newVisibility,
481
- children: updatedChildren
482
- };
483
- }
484
- if (column.children) {
485
- const updatedChildren = updateVisibility(column.children);
486
- const isAnyChildVisible = updatedChildren.some((child) => child.isVisible);
487
- (_d2 = (_c2 = ref == null ? void 0 : ref.current) == null ? void 0 : _c2.columnApi) == null ? void 0 : _d2.setColumnVisible(column.colId, isAnyChildVisible);
488
- return {
489
- ...column,
490
- isVisible: isAnyChildVisible,
491
- children: updatedChildren
492
- };
493
- }
494
- return column;
495
- });
496
- const updatedColumns = updateVisibility(filteredScrollableColumns);
497
- setFilteredScrollableColumns(updatedColumns);
498
- setScrollableColumn((prev) => {
499
- const updatedMap = Object.fromEntries(updatedColumns.map((col) => [col.colId, col]));
500
- const merged = prev.map((col) => updatedMap[col.colId] ? updatedMap[col.colId] : col);
501
- const prevColIds = new Set(prev.map((col) => col.colId));
502
- const newCols = updatedColumns.filter((col) => !prevColIds.has(col.colId));
503
- return [...merged, ...newCols];
504
- });
463
+ const { columns } = applyVisibilityToggle(scrollableColumn, colId);
464
+ setScrollableColumn(columns);
465
+ setFilteredScrollableColumns(filterColumnsByText(columns, searchTextRef.current));
505
466
  };
506
467
  const toggleScrollableCollapse = (e) => {
507
468
  e.stopPropagation();
@@ -511,75 +472,45 @@ const Columns = forwardRef((props, ref) => {
511
472
  e.stopPropagation();
512
473
  setCollapsedcolumn(!collapsedColumn);
513
474
  };
475
+ const applyBulkVisibility = (columns, visibility, allowedIds) => columns.map((column) => {
476
+ var _a2, _b2, _c2, _d2, _e2;
477
+ const isAllowed = !allowedIds || allowedIds.has(column.colId);
478
+ if (((_a2 = column.children) == null ? void 0 : _a2.length) > 0) {
479
+ const children = applyBulkVisibility(
480
+ column.children,
481
+ visibility,
482
+ isAllowed ? null : allowedIds
483
+ );
484
+ const isAnyChildVisible = isColumnTreeVisible(children);
485
+ (_c2 = (_b2 = ref == null ? void 0 : ref.current) == null ? void 0 : _b2.columnApi) == null ? void 0 : _c2.setColumnVisible(column.colId, isAnyChildVisible);
486
+ return { ...column, isVisible: isAnyChildVisible, children };
487
+ }
488
+ if (!isAllowed) return column;
489
+ (_e2 = (_d2 = ref == null ? void 0 : ref.current) == null ? void 0 : _d2.columnApi) == null ? void 0 : _e2.setColumnVisible(column.colId, visibility);
490
+ return { ...column, isVisible: visibility };
491
+ });
514
492
  const onMainCheckboxChange = () => {
515
- setMainChecked((prev) => !prev);
516
- const updateVisibility = (columns, visibility) => {
517
- return columns.map((column) => {
518
- var _a2, _b2;
519
- (_b2 = (_a2 = ref == null ? void 0 : ref.current) == null ? void 0 : _a2.columnApi) == null ? void 0 : _b2.setColumnVisible(column.colId, visibility);
520
- if (column.children) {
521
- updateVisibility(column.children, visibility);
522
- }
523
- return {
524
- ...column,
525
- isVisible: visibility,
526
- children: column.children ? updateVisibility(column.children, visibility) : null
527
- };
528
- });
529
- };
530
- const updatedColumns = updateVisibility(filteredScrollableColumns, !mainChecked);
531
- setFilteredScrollableColumns(updatedColumns);
532
- setScrollableColumn((prev) => {
533
- const updatedMap = Object.fromEntries(updatedColumns.map((col) => [col.colId, col]));
534
- const merged = prev.map((col) => updatedMap[col.colId] ? updatedMap[col.colId] : col);
535
- const prevColIds = new Set(prev.map((col) => col.colId));
536
- const newCols = updatedColumns.filter((col) => !prevColIds.has(col.colId));
537
- return [...merged, ...newCols];
538
- });
493
+ const listedIds = new Set(getAllColumnIds(filteredScrollableColumns));
494
+ const updatedColumns = applyBulkVisibility(scrollableColumn, !mainChecked, listedIds);
495
+ setScrollableColumn(updatedColumns);
496
+ setFilteredScrollableColumns(filterColumnsByText(updatedColumns, searchTextRef.current));
539
497
  };
540
498
  const onAllColumnCheckBoxChange = () => {
541
- setAllColumnvisisbility((prev) => !prev);
542
- setMainChecked(!allColumnVisibility);
543
- const updateColumnVisibility = (columns, visibility) => {
544
- return columns.map((column) => {
545
- var _a2, _b2;
546
- (_b2 = (_a2 = ref == null ? void 0 : ref.current) == null ? void 0 : _a2.columnApi) == null ? void 0 : _b2.setColumnVisible(column.colId, visibility);
547
- if (column.children) {
548
- updateColumnVisibility(column.children, visibility);
549
- }
550
- return {
551
- ...column,
552
- isVisible: visibility,
553
- children: column.children ? updateColumnVisibility(column.children, visibility) : null
554
- };
555
- });
556
- };
557
- const updatedFrozenColumns = updateColumnVisibility(
558
- filteredFrozenColumns,
559
- !allColumnVisibility
499
+ const visibility = !allColumnVisibility;
500
+ const listedFrozenIds = new Set(getAllColumnIds(filteredFrozenColumns));
501
+ const listedScrollableIds = new Set(getAllColumnIds(filteredScrollableColumns));
502
+ const updatedFrozenColumns = applyBulkVisibility(frozenColumn, visibility, listedFrozenIds);
503
+ const updatedScrollableColumns = applyBulkVisibility(
504
+ scrollableColumn,
505
+ visibility,
506
+ listedScrollableIds
560
507
  );
561
- const updatedScrollableColumns = updateColumnVisibility(
562
- filteredScrollableColumns,
563
- !allColumnVisibility
508
+ setFrozenColumn(updatedFrozenColumns);
509
+ setScrollableColumn(updatedScrollableColumns);
510
+ setFilteredFrozenColumns(filterColumnsByText(updatedFrozenColumns, searchTextRef.current));
511
+ setFilteredScrollableColumns(
512
+ filterColumnsByText(updatedScrollableColumns, searchTextRef.current)
564
513
  );
565
- setFilteredFrozenColumns(updatedFrozenColumns);
566
- setFilteredScrollableColumns(updatedScrollableColumns);
567
- setFrozenColumn((prev) => {
568
- const updatedMap = Object.fromEntries(updatedFrozenColumns.map((col) => [col.colId, col]));
569
- const merged = prev.map((col) => updatedMap[col.colId] ? updatedMap[col.colId] : col);
570
- const prevColIds = new Set(prev.map((col) => col.colId));
571
- const newCols = updatedFrozenColumns.filter((col) => !prevColIds.has(col.colId));
572
- return [...merged, ...newCols];
573
- });
574
- setScrollableColumn((prev) => {
575
- const updatedMap = Object.fromEntries(
576
- updatedScrollableColumns.map((col) => [col.colId, col])
577
- );
578
- const merged = prev.map((col) => updatedMap[col.colId] ? updatedMap[col.colId] : col);
579
- const prevColIds = new Set(prev.map((col) => col.colId));
580
- const newCols = updatedScrollableColumns.filter((col) => !prevColIds.has(col.colId));
581
- return [...merged, ...newCols];
582
- });
583
514
  };
584
515
  const toggleScrollColumnCollapse = (colId) => {
585
516
  setCollapsedScrollColumns((prev) => ({
@@ -1,4 +1,4 @@
1
- !function(){"use strict";try{if("undefined"!=typeof document){var e=document.createElement("style");e.appendChild(document.createTextNode('@keyframes ia-shimmer-horizontal{0%{background-position:100% 0}to{background-position:0 0}}@keyframes ia-shimmer-vertical{0%{background-position:0 100%}to{background-position:0 0}}@property --ia-shimmer-angle{syntax:"<angle>";inherits:false;initial-value:0deg}@keyframes ia-shimmer-circular{0%{--ia-shimmer-angle:0deg}to{--ia-shimmer-angle:360deg}}.ia-shimmer{animation:ia-shimmer-horizontal 1.6s ease-in-out infinite;animation-direction:normal;background-color:#e8edf5;background-image:linear-gradient(90deg,#e8edf5,#eceef4 22%,#e8edf5 48%,#d5dbe8 62%,#e8edf5);background-repeat:no-repeat;background-size:300% 100%}@media (prefers-reduced-motion:reduce){.ia-shimmer{animation:none;background-image:linear-gradient(90deg,#e8edf5,#eceef4 40%,#d5dbe8);background-size:100% 100%}}.ia-shimmer--ltr{animation:ia-shimmer-horizontal 1.6s ease-in-out infinite;animation-direction:normal;background-color:#e8edf5;background-image:linear-gradient(90deg,#e8edf5,#eceef4 22%,#e8edf5 48%,#d5dbe8 62%,#e8edf5);background-repeat:no-repeat;background-size:300% 100%}@media (prefers-reduced-motion:reduce){.ia-shimmer--ltr{animation:none;background-image:linear-gradient(90deg,#e8edf5,#eceef4 40%,#d5dbe8);background-size:100% 100%}}.ia-shimmer--rtl{animation:ia-shimmer-horizontal 1.6s ease-in-out infinite;animation-direction:reverse;background-color:#e8edf5;background-image:linear-gradient(270deg,#e8edf5,#eceef4 22%,#e8edf5 48%,#d5dbe8 62%,#e8edf5);background-repeat:no-repeat;background-size:300% 100%}@media (prefers-reduced-motion:reduce){.ia-shimmer--rtl{animation:none;background-image:linear-gradient(270deg,#e8edf5,#eceef4 40%,#d5dbe8);background-size:100% 100%}}.ia-shimmer--btt{animation:ia-shimmer-vertical 1.6s ease-in-out infinite;animation-direction:reverse;background-color:#e8edf5;background-image:linear-gradient(0deg,#e8edf5,#eceef4 22%,#e8edf5 48%,#d5dbe8 62%,#e8edf5);background-repeat:no-repeat;background-size:100% 300%}@media (prefers-reduced-motion:reduce){.ia-shimmer--btt{animation:none;background-image:linear-gradient(0deg,#e8edf5,#eceef4 40%,#d5dbe8);background-size:100% 100%}}.ia-shimmer--ttb{animation:ia-shimmer-vertical 1.6s ease-in-out infinite;animation-direction:normal;background-color:#e8edf5;background-image:linear-gradient(0deg,#e8edf5,#eceef4 22%,#e8edf5 48%,#d5dbe8 62%,#e8edf5);background-repeat:no-repeat;background-size:100% 300%}@media (prefers-reduced-motion:reduce){.ia-shimmer--ttb{animation:none;background-image:linear-gradient(0deg,#e8edf5,#eceef4 40%,#d5dbe8);background-size:100% 100%}}.ia-shimmer--circular{background-color:#e8edf5;background-repeat:no-repeat;--ia-shimmer-angle:0deg;animation:ia-shimmer-circular 1.6s linear infinite;background-image:conic-gradient(from var(--ia-shimmer-angle),#eceef4 0deg,#e8edf5 80deg,#d5dbe8 160deg,#e8edf5 260deg,#eceef4 1turn);background-size:100% 100%}@media (prefers-reduced-motion:reduce){.ia-shimmer--circular{animation:none;background-image:conic-gradient(from 0deg,#eceef4,#e8edf5,#d5dbe8,#e8edf5 1turn)}}.impact_textarea_label{color:#60697d;font-size:12px;padding-bottom:6px}.impact_textarea{margin-top:6px}.impact_textarea textarea{border:1px solid #d9dde7;border-radius:8px;min-height:100px;min-width:240px;padding:12px;position:relative;resize:none}.impact_textarea textarea:focus-visible{box-shadow:0 0 0 var(--ia-focus-ring-offset,2px) var(--ia-focus-bg,#fff),0 0 0 calc(var(--ia-focus-ring-offset, 2px) + var(--ia-focus-ring-width, 2px)) var(--ia-focus-color,#4259ee);outline:none;transition:box-shadow .15s ease-in-out}.impact_textarea textarea:focus:not(:focus-visible){box-shadow:none;outline:none}.impact_textarea textarea:focus,.impact_textarea textarea:hover{border:1px solid #4259ee;outline:none}.impact_textarea_btm_container{display:flex;justify-content:space-between;margin-top:6px}.impact_textarea_btm_container .left_secondary_label_container,.impact_textarea_btm_container .right_numeric_container{color:#5f6673;font-size:10px}.impact_textarea_disabled .impact_textarea_label{color:#b4bac7}.impact_textarea_disabled textarea{background:#f8f9fb;color:#d9dde7;pointer-events:none}.impact_textarea_disabled .impact_textarea_btm_container .left_secondary_label_container{color:#b4bac7;text-align:start}.impact_textarea_disabled .impact_textarea_btm_container .right_numeric_container{color:#b4bac7}.impact_textarea_error textarea{color:#ab3939}textarea{font-family:Manrope,sans-serif!important}.impact_textarea_disabled textarea::-webkit-input-placeholder,textarea::-webkit-input-placeholder{color:#b4bac7}.impact_textarea_error .left_secondary_label_container,.impact_textarea_error .right_numeric_container{color:#ab3939}.impact_textarea_error textarea,.impact_textarea_error textarea:focus,.impact_textarea_error textarea:hover{border:1px solid #ec4c5c}.impact_textarea_error textarea{background:url(https://impact-kit.devs.iaproducts.ai/api/v1/files/uploads/impact-ui/prod/icons/material-symbols_error.svg) no-repeat;background-position:top 12px right 12px;background-size:16px;padding-right:34px}.impact_textarea_success textarea{background:url(https://impact-kit.devs.iaproducts.ai/api/v1/files/uploads/impact-ui/prod/icons/success-icon.svg) no-repeat;background-position:top 12px right 12px;background-size:16px;padding-right:34px}.impact_textarea_success textarea,.impact_textarea_success textarea:focus,.impact_textarea_success textarea:hover{border:1px solid #108431}.impact_textarea_success .left_secondary_label_container,.impact_textarea_success .right_numeric_container{color:#26734b}.impact_textarea_warning textarea{background:url(https://impact-kit.devs.iaproducts.ai/api/v1/files/uploads/impact-ui/prod/icons/warning-fill.svg) no-repeat;background-position:top 12px right 12px;background-size:16px;border:1px solid #ffe174;padding-right:34px}.impact_textarea_warning textarea:focus,.impact_textarea_warning textarea:hover{border:1px solid #ffe174}.impact_textarea_warning .left_secondary_label_container,.impact_textarea_warning .right_numeric_container{color:#9d831c}.impact_textarea textarea::placeholder{color:#b4bac7;font-weight:400;transition:font-weight .2s ease}.impact_textarea_disabled textarea::placeholder{color:#b4bac7}.impact_textarea textarea:focus::placeholder{color:#0000}')),document.head.appendChild(e)}}catch(a){console.error("vite-plugin-css-injected-by-js",a)}}();
1
+ !function(){"use strict";try{if("undefined"!=typeof document){var e=document.createElement("style");e.appendChild(document.createTextNode('@keyframes ia-shimmer-horizontal{0%{background-position:100% 0}to{background-position:0 0}}@keyframes ia-shimmer-vertical{0%{background-position:0 100%}to{background-position:0 0}}@property --ia-shimmer-angle{syntax:"<angle>";inherits:false;initial-value:0deg}@keyframes ia-shimmer-circular{0%{--ia-shimmer-angle:0deg}to{--ia-shimmer-angle:360deg}}.ia-shimmer{animation:ia-shimmer-horizontal 1.6s ease-in-out infinite;animation-direction:normal;background-color:#e8edf5;background-image:linear-gradient(90deg,#e8edf5,#eceef4 22%,#e8edf5 48%,#d5dbe8 62%,#e8edf5);background-repeat:no-repeat;background-size:300% 100%}@media (prefers-reduced-motion:reduce){.ia-shimmer{animation:none;background-image:linear-gradient(90deg,#e8edf5,#eceef4 40%,#d5dbe8);background-size:100% 100%}}.ia-shimmer--ltr{animation:ia-shimmer-horizontal 1.6s ease-in-out infinite;animation-direction:normal;background-color:#e8edf5;background-image:linear-gradient(90deg,#e8edf5,#eceef4 22%,#e8edf5 48%,#d5dbe8 62%,#e8edf5);background-repeat:no-repeat;background-size:300% 100%}@media (prefers-reduced-motion:reduce){.ia-shimmer--ltr{animation:none;background-image:linear-gradient(90deg,#e8edf5,#eceef4 40%,#d5dbe8);background-size:100% 100%}}.ia-shimmer--rtl{animation:ia-shimmer-horizontal 1.6s ease-in-out infinite;animation-direction:reverse;background-color:#e8edf5;background-image:linear-gradient(270deg,#e8edf5,#eceef4 22%,#e8edf5 48%,#d5dbe8 62%,#e8edf5);background-repeat:no-repeat;background-size:300% 100%}@media (prefers-reduced-motion:reduce){.ia-shimmer--rtl{animation:none;background-image:linear-gradient(270deg,#e8edf5,#eceef4 40%,#d5dbe8);background-size:100% 100%}}.ia-shimmer--btt{animation:ia-shimmer-vertical 1.6s ease-in-out infinite;animation-direction:reverse;background-color:#e8edf5;background-image:linear-gradient(0deg,#e8edf5,#eceef4 22%,#e8edf5 48%,#d5dbe8 62%,#e8edf5);background-repeat:no-repeat;background-size:100% 300%}@media (prefers-reduced-motion:reduce){.ia-shimmer--btt{animation:none;background-image:linear-gradient(0deg,#e8edf5,#eceef4 40%,#d5dbe8);background-size:100% 100%}}.ia-shimmer--ttb{animation:ia-shimmer-vertical 1.6s ease-in-out infinite;animation-direction:normal;background-color:#e8edf5;background-image:linear-gradient(0deg,#e8edf5,#eceef4 22%,#e8edf5 48%,#d5dbe8 62%,#e8edf5);background-repeat:no-repeat;background-size:100% 300%}@media (prefers-reduced-motion:reduce){.ia-shimmer--ttb{animation:none;background-image:linear-gradient(0deg,#e8edf5,#eceef4 40%,#d5dbe8);background-size:100% 100%}}.ia-shimmer--circular{background-color:#e8edf5;background-repeat:no-repeat;--ia-shimmer-angle:0deg;animation:ia-shimmer-circular 1.6s linear infinite;background-image:conic-gradient(from var(--ia-shimmer-angle),#eceef4 0deg,#e8edf5 80deg,#d5dbe8 160deg,#e8edf5 260deg,#eceef4 1turn);background-size:100% 100%}@media (prefers-reduced-motion:reduce){.ia-shimmer--circular{animation:none;background-image:conic-gradient(from 0deg,#eceef4,#e8edf5,#d5dbe8,#e8edf5 1turn)}}.impact_textarea_label{color:#60697d;font-size:12px;padding-bottom:6px}.impact_textarea{margin-top:6px}.impact_textarea textarea{border:1px solid #d9dde7;border-radius:8px;min-height:100px;min-width:240px;padding:12px;position:relative;resize:none}.impact_textarea textarea:focus-visible{box-shadow:0 0 0 var(--ia-focus-ring-offset,2px) var(--ia-focus-bg,#fff),0 0 0 calc(var(--ia-focus-ring-offset, 2px) + var(--ia-focus-ring-width, 2px)) var(--ia-focus-color,#4259ee);outline:none;transition:box-shadow .15s ease-in-out}.impact_textarea textarea:focus:not(:focus-visible){box-shadow:none;outline:none}.impact_textarea textarea:focus,.impact_textarea textarea:hover{border:1px solid #4259ee;outline:none}.impact_textarea_btm_container{display:flex;justify-content:space-between;margin-top:6px}.impact_textarea_btm_container .left_secondary_label_container,.impact_textarea_btm_container .right_numeric_container{color:#5f6673;font-size:10px}.impact_textarea_disabled .impact_textarea_label{color:#b4bac7}.impact_textarea_disabled textarea{background:#f8f9fb;color:#d9dde7;pointer-events:none}.impact_textarea_disabled .impact_textarea_btm_container .left_secondary_label_container{color:#b4bac7;text-align:start}.impact_textarea_disabled .impact_textarea_btm_container .right_numeric_container{color:#b4bac7}.impact_textarea_error textarea{color:#ab3939}textarea{font-family:Manrope,sans-serif!important}.impact_textarea_disabled textarea::-webkit-input-placeholder,textarea::-webkit-input-placeholder{color:#b4bac7}.impact_textarea_error .left_secondary_label_container,.impact_textarea_error .right_numeric_container{color:#ab3939}.impact_textarea_error textarea,.impact_textarea_error textarea:focus,.impact_textarea_error textarea:hover{border:1px solid #ec4c5c}.impact_textarea_error textarea{background:url(https://impact-kit.iaproducts.ai/api/v1/files/uploads/impact-ui/prod/icons/material-symbols_error.svg) no-repeat;background-position:top 12px right 12px;background-size:16px;padding-right:34px}.impact_textarea_success textarea{background:url(https://impact-kit.iaproducts.ai/api/v1/files/uploads/impact-ui/prod/icons/success-icon.svg) no-repeat;background-position:top 12px right 12px;background-size:16px;padding-right:34px}.impact_textarea_success textarea,.impact_textarea_success textarea:focus,.impact_textarea_success textarea:hover{border:1px solid #108431}.impact_textarea_success .left_secondary_label_container,.impact_textarea_success .right_numeric_container{color:#26734b}.impact_textarea_warning textarea{background:url(https://impact-kit.iaproducts.ai/api/v1/files/uploads/impact-ui/prod/icons/warning-fill.svg) no-repeat;background-position:top 12px right 12px;background-size:16px;border:1px solid #ffe174;padding-right:34px}.impact_textarea_warning textarea:focus,.impact_textarea_warning textarea:hover{border:1px solid #ffe174}.impact_textarea_warning .left_secondary_label_container,.impact_textarea_warning .right_numeric_container{color:#9d831c}.impact_textarea textarea::placeholder{color:#b4bac7;font-weight:400;transition:font-weight .2s ease}.impact_textarea_disabled textarea::placeholder{color:#b4bac7}.impact_textarea textarea:focus::placeholder{color:#0000}')),document.head.appendChild(e)}}catch(a){console.error("vite-plugin-css-injected-by-js",a)}}();
2
2
  import { jsx, jsxs } from "react/jsx-runtime";
3
3
  import { useState } from "react";
4
4
 
@@ -1,4 +1,4 @@
1
- !function(){"use strict";try{if("undefined"!=typeof document){var e=document.createElement("style");e.appendChild(document.createTextNode(".MuiFormHelperText-root{background:url(https://impact-kit.devs.iaproducts.ai/api/v1/files/uploads/impact-ui/prod/icons/info-icon.svg) no-repeat;background-position:0;color:#7a8294!important;font-family:Manrope,sans-serif!important;margin-left:0!important;overflow:hidden;padding-left:14px;text-overflow:ellipsis;white-space:nowrap}.MuiFormHelperText-root.Mui-error{background:url(https://impact-kit.devs.iaproducts.ai/api/v1/files/uploads/impact-ui/prod/icons/info-red.svg) no-repeat;background-position:0;color:#e15554!important}")),document.head.appendChild(e)}}catch(o){console.error("vite-plugin-css-injected-by-js",o)}}();
1
+ !function(){"use strict";try{if("undefined"!=typeof document){var o=document.createElement("style");o.appendChild(document.createTextNode(".MuiFormHelperText-root{background:url(https://impact-kit.iaproducts.ai/api/v1/files/uploads/impact-ui/prod/icons/info-icon.svg) no-repeat;background-position:0;color:#7a8294!important;font-family:Manrope,sans-serif!important;margin-left:0!important;overflow:hidden;padding-left:14px;text-overflow:ellipsis;white-space:nowrap}.MuiFormHelperText-root.Mui-error{background:url(https://impact-kit.iaproducts.ai/api/v1/files/uploads/impact-ui/prod/icons/info-red.svg) no-repeat;background-position:0;color:#e15554!important}")),document.head.appendChild(o)}}catch(e){console.error("vite-plugin-css-injected-by-js",e)}}();
2
2
  import { jsx } from "react/jsx-runtime";
3
3
  import { useRef, useState, useEffect } from "react";
4
4
  import { Tooltip } from "../../Tooltip/index.js";
@@ -0,0 +1,104 @@
1
+ import { KeyboardEvent as ReactKeyboardEvent, PointerEvent as ReactPointerEvent } from 'react';
2
+
3
+ export interface Rect {
4
+ x: number;
5
+ y: number;
6
+ width: number;
7
+ height: number;
8
+ }
9
+ export type ResizeDirection = 'n' | 's' | 'e' | 'w' | 'ne' | 'nw' | 'se' | 'sw';
10
+ export declare const BOTTOM_VIEWPORT_MARGIN = 24;
11
+ export interface ViewportMargin {
12
+ top: number;
13
+ right: number;
14
+ bottom: number;
15
+ left: number;
16
+ }
17
+ /** Accepts a single number (all sides) or per-side overrides. */
18
+ export type ViewportMarginInput = number | Partial<ViewportMargin>;
19
+ export interface UseDraggableResizableOptions {
20
+ /** Starting position/size. Only read once on mount (use `setRect`/`collapseTo` to change later). */
21
+ initialRect: Rect;
22
+ minWidth?: number;
23
+ minHeight?: number;
24
+ maxWidth?: number;
25
+ maxHeight?: number;
26
+ /**
27
+ * Gap kept clear between the panel and the viewport edges while dragging/resizing, so it
28
+ * stops short of the edge instead of touching it. Pass a number for a uniform margin, or
29
+ * per-side values (e.g. `{ top: 56, bottom: 24 }` to also clear a fixed app header).
30
+ * Pass `0` for docked panels that should sit flush with the viewport.
31
+ * @default 0
32
+ */
33
+ viewportMargin?: ViewportMarginInput;
34
+ /** Disables both dragging and resizing (e.g. while in a "full width" mode). */
35
+ disabled?: boolean;
36
+ onChange?: (rect: Rect) => void;
37
+ onDragEnd?: (rect: Rect) => void;
38
+ onResizeEnd?: (rect: Rect) => void;
39
+ }
40
+ export interface HandleProps {
41
+ onPointerDown: (e: ReactPointerEvent) => void;
42
+ onKeyDown: (e: ReactKeyboardEvent) => void;
43
+ }
44
+ /** Viewport corner the collapsed panel is pinned to. */
45
+ export type CollapseAnchor = 'bottom-right' | 'bottom-left' | 'top-right' | 'top-left';
46
+ export interface CollapseOptions {
47
+ /** @default 'bottom-right' */
48
+ anchor?: CollapseAnchor;
49
+ /**
50
+ * Margin to inset the collapsed panel from the viewport edges. Pass this when the margin
51
+ * changes in the same event that triggers the collapse - the `viewportMargin` *prop* is
52
+ * still the pre-update value at that point (React batches state), so relying on it would
53
+ * anchor against the wrong gap.
54
+ */
55
+ viewportMargin?: ViewportMarginInput;
56
+ }
57
+ export interface UseDraggableResizableResult {
58
+ rect: Rect;
59
+ isDragging: boolean;
60
+ isResizing: boolean;
61
+ isCollapsed: boolean;
62
+ setRect: (updater: Rect | ((prev: Rect) => Rect)) => void;
63
+ /** Spread onto the element that should act as the "title bar" drag handle. */
64
+ dragHandleProps: HandleProps;
65
+ /** Spread onto one of the 8 resize handle elements. */
66
+ getResizeHandleProps: (direction: ResizeDirection) => HandleProps & {
67
+ role: 'separator';
68
+ tabIndex: 0;
69
+ 'aria-orientation': 'horizontal' | 'vertical';
70
+ };
71
+ /**
72
+ * Shrink to a fixed compact size pinned to a viewport corner (default: bottom-right),
73
+ * remembering the current rect so `restore()` can bring it back.
74
+ */
75
+ collapseTo: (size: {
76
+ width: number;
77
+ height: number;
78
+ }, options?: CollapseOptions) => void;
79
+ /** Restore the rect that was active before the last `collapseTo` call. */
80
+ restore: () => void;
81
+ }
82
+ /**
83
+ * Headless drag + 8-direction resize behavior for a floating panel (think: Google Meet's
84
+ * pop-out mini window). Framework-agnostic logic lives here so any component (chatbot,
85
+ * modal, side panel, etc.) can opt in just by spreading `dragHandleProps` /
86
+ * `getResizeHandleProps(direction)` onto its own markup.
87
+ *
88
+ * Implementation notes (see chat discussion for rationale):
89
+ * - Uses Pointer Events + `setPointerCapture` (works for mouse, touch, and pen) instead of
90
+ * plain `mousedown`/`mousemove`, and keeps receiving events on the same element even if the
91
+ * pointer moves faster than layout, so there is no need for `document`-level listeners.
92
+ * - Batches state updates via `requestAnimationFrame` so dragging/resizing doesn't trigger a
93
+ * React re-render on every single pixel of pointer movement.
94
+ * - Clamps the rect to the viewport (recomputed on every move, not just drag-start) so the
95
+ * panel can never be dragged/resized off-screen on any edge, and always keeps a small margin
96
+ * clear at the bottom of the viewport.
97
+ * - Toggles a `no-select`/`col-resize`-style class on `<body>` while interacting, and always
98
+ * cleans up listeners + that class on `pointerup`/`pointercancel` and on unmount, even if the
99
+ * consumer unmounts mid-drag.
100
+ * - Resize handles expose `role="separator"` + keyboard nudging (arrow keys, Shift for a
101
+ * larger step) for accessibility.
102
+ */
103
+ export declare function useDraggableResizable({ initialRect, minWidth, minHeight, maxWidth, maxHeight, viewportMargin, disabled, onChange, onDragEnd, onResizeEnd, }: UseDraggableResizableOptions): UseDraggableResizableResult;
104
+ //# sourceMappingURL=useDraggableResizable.d.ts.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"useDraggableResizable.d.ts","sourceRoot":"","sources":["../../src/hooks/useDraggableResizable.ts"],"names":[],"mappings":"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"}