@kushagradhawan/kookie-ui 0.1.57 → 0.1.58

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 (53) hide show
  1. package/dist/cjs/components/_internal/shell-bottom.d.ts.map +1 -1
  2. package/dist/cjs/components/_internal/shell-bottom.js +1 -1
  3. package/dist/cjs/components/_internal/shell-bottom.js.map +3 -3
  4. package/dist/cjs/components/_internal/shell-inspector.d.ts.map +1 -1
  5. package/dist/cjs/components/_internal/shell-inspector.js +1 -1
  6. package/dist/cjs/components/_internal/shell-inspector.js.map +3 -3
  7. package/dist/cjs/components/_internal/shell-sidebar.js +1 -1
  8. package/dist/cjs/components/_internal/shell-sidebar.js.map +3 -3
  9. package/dist/cjs/components/chatbar.d.ts.map +1 -1
  10. package/dist/cjs/components/chatbar.js.map +2 -2
  11. package/dist/cjs/components/icons.d.ts +1 -1
  12. package/dist/cjs/components/icons.d.ts.map +1 -1
  13. package/dist/cjs/components/icons.js.map +2 -2
  14. package/dist/cjs/components/schemas/shell.schema.d.ts +2 -2
  15. package/dist/cjs/components/schemas/shell.schema.d.ts.map +1 -1
  16. package/dist/cjs/components/schemas/shell.schema.js +1 -1
  17. package/dist/cjs/components/schemas/shell.schema.js.map +3 -3
  18. package/dist/cjs/components/shell.d.ts.map +1 -1
  19. package/dist/cjs/components/shell.js +1 -1
  20. package/dist/cjs/components/shell.js.map +3 -3
  21. package/dist/esm/components/_internal/shell-bottom.d.ts.map +1 -1
  22. package/dist/esm/components/_internal/shell-bottom.js +1 -1
  23. package/dist/esm/components/_internal/shell-bottom.js.map +3 -3
  24. package/dist/esm/components/_internal/shell-inspector.d.ts.map +1 -1
  25. package/dist/esm/components/_internal/shell-inspector.js +1 -1
  26. package/dist/esm/components/_internal/shell-inspector.js.map +3 -3
  27. package/dist/esm/components/_internal/shell-sidebar.js +1 -1
  28. package/dist/esm/components/_internal/shell-sidebar.js.map +3 -3
  29. package/dist/esm/components/chatbar.d.ts.map +1 -1
  30. package/dist/esm/components/chatbar.js.map +2 -2
  31. package/dist/esm/components/icons.d.ts +1 -1
  32. package/dist/esm/components/icons.d.ts.map +1 -1
  33. package/dist/esm/components/icons.js.map +2 -2
  34. package/dist/esm/components/schemas/shell.schema.d.ts +2 -2
  35. package/dist/esm/components/schemas/shell.schema.d.ts.map +1 -1
  36. package/dist/esm/components/schemas/shell.schema.js.map +3 -3
  37. package/dist/esm/components/shell.d.ts.map +1 -1
  38. package/dist/esm/components/shell.js +1 -1
  39. package/dist/esm/components/shell.js.map +3 -3
  40. package/package.json +1 -1
  41. package/schemas/base-button.json +1 -1
  42. package/schemas/button.json +1 -1
  43. package/schemas/icon-button.json +1 -1
  44. package/schemas/index.json +6 -6
  45. package/schemas/toggle-button.json +1 -1
  46. package/schemas/toggle-icon-button.json +1 -1
  47. package/src/components/_internal/shell-bottom.tsx +14 -13
  48. package/src/components/_internal/shell-inspector.tsx +13 -11
  49. package/src/components/_internal/shell-sidebar.tsx +12 -12
  50. package/src/components/chatbar.tsx +0 -1
  51. package/src/components/icons.tsx +19 -87
  52. package/src/components/schemas/shell.schema.ts +10 -33
  53. package/src/components/shell.tsx +32 -24
@@ -309,18 +309,24 @@ const Root = React.forwardRef<HTMLDivElement, ShellRootProps>(({ className, chil
309
309
  }
310
310
  dispatchPane({ type: 'TOGGLE_PANE', target });
311
311
  },
312
- [paneState.sidebarMode],
312
+ [paneState.sidebarMode, setSidebarMode],
313
313
  );
314
314
 
315
- const expandPane = React.useCallback((target: PaneTarget) => {
316
- if (target === 'sidebar') return setSidebarMode('expanded');
317
- dispatchPane({ type: 'EXPAND_PANE', target });
318
- }, []);
315
+ const expandPane = React.useCallback(
316
+ (target: PaneTarget) => {
317
+ if (target === 'sidebar') return setSidebarMode('expanded');
318
+ dispatchPane({ type: 'EXPAND_PANE', target });
319
+ },
320
+ [setSidebarMode],
321
+ );
319
322
 
320
- const collapsePane = React.useCallback((target: PaneTarget) => {
321
- if (target === 'sidebar') return setSidebarMode('collapsed');
322
- dispatchPane({ type: 'COLLAPSE_PANE', target });
323
- }, []);
323
+ const collapsePane = React.useCallback(
324
+ (target: PaneTarget) => {
325
+ if (target === 'sidebar') return setSidebarMode('collapsed');
326
+ dispatchPane({ type: 'COLLAPSE_PANE', target });
327
+ },
328
+ [setSidebarMode],
329
+ );
324
330
 
325
331
  const baseContextValue = React.useMemo(
326
332
  () => ({
@@ -351,10 +357,15 @@ const Root = React.forwardRef<HTMLDivElement, ShellRootProps>(({ className, chil
351
357
  }),
352
358
  [
353
359
  paneState.leftMode,
360
+ setLeftMode,
354
361
  paneState.panelMode,
362
+ setPanelMode,
355
363
  paneState.sidebarMode,
364
+ setSidebarMode,
356
365
  paneState.inspectorMode,
366
+ setInspectorMode,
357
367
  paneState.bottomMode,
368
+ setBottomMode,
358
369
  hasLeft,
359
370
  hasSidebar,
360
371
  currentBreakpoint,
@@ -388,7 +399,7 @@ const Root = React.forwardRef<HTMLDivElement, ShellRootProps>(({ className, chil
388
399
  if (typeof firstRailOpen === 'undefined') return;
389
400
  const shouldOpen = Boolean(firstRailOpen);
390
401
  setLeftMode(shouldOpen ? 'expanded' : 'collapsed');
391
- }, [firstRailOpen]);
402
+ }, [firstRailOpen, setLeftMode]);
392
403
 
393
404
  const heightStyle = React.useMemo(() => {
394
405
  if (height === 'full') return { height: '100vh' };
@@ -588,25 +599,27 @@ const Left = React.forwardRef<HTMLDivElement, LeftProps>(
588
599
 
589
600
  // Initialize from responsive defaultOpen once when uncontrolled and breakpoint ready
590
601
  const didInitFromDefaultOpenRef = React.useRef(false);
602
+ const propsOpen = (props as any).open;
603
+ const propsDefaultOpen = (props as any).defaultOpen;
591
604
  React.useEffect(() => {
592
605
  if (didInitFromDefaultOpenRef.current) return;
593
606
  if (!shell.currentBreakpointReady) return;
594
- if (typeof (props as any).open !== 'undefined') return; // controlled
595
- if (typeof (props as any).defaultOpen === 'undefined') return;
607
+ if (typeof propsOpen !== 'undefined') return; // controlled
608
+ if (typeof propsDefaultOpen === 'undefined') return;
596
609
  didInitFromDefaultOpenRef.current = true;
597
610
  const initial = Boolean(resolvedDefaultOpen);
598
611
  shell.setLeftMode(initial ? 'expanded' : 'collapsed');
599
612
  (props as any).onOpenChange?.(initial, { reason: 'init' });
600
- }, [shell.currentBreakpointReady, (props as any).open, (props as any).defaultOpen, resolvedDefaultOpen]);
613
+ }, [shell, propsOpen, propsDefaultOpen, resolvedDefaultOpen, props]);
601
614
  React.useEffect(() => {
602
615
  // Controlled Left via Rail.open
603
- if (typeof (props as any).open !== 'undefined') {
604
- const shouldOpen = Boolean((props as any).open);
616
+ if (typeof propsOpen !== 'undefined') {
617
+ const shouldOpen = Boolean(propsOpen);
605
618
  shell.setLeftMode(shouldOpen ? 'expanded' : 'collapsed');
606
619
  return;
607
620
  }
608
621
  // defaultOpen is applied in Rail; Left no longer follows responsive defaults
609
- }, [shell, (props as any).open]);
622
+ }, [shell, propsOpen]);
610
623
 
611
624
  // Sync controlled mode
612
625
  // removed mode sync
@@ -622,7 +635,7 @@ const Left = React.forwardRef<HTMLDivElement, LeftProps>(
622
635
  (props as any).onOpenChange?.(shell.leftMode === 'expanded', { reason: 'toggle' });
623
636
  }
624
637
  lastLeftModeRef.current = shell.leftMode;
625
- }, [shell.leftMode, resolvedDefaultOpen]);
638
+ }, [shell, resolvedDefaultOpen, props]);
626
639
 
627
640
  // Emit expand/collapse events
628
641
  React.useEffect(() => {
@@ -739,7 +752,6 @@ const Rail = React.forwardRef<HTMLDivElement, RailProps>(({ className, presentat
739
752
  const wasControlledRef = React.useRef<boolean | null>(null);
740
753
  if (process.env.NODE_ENV !== 'production') {
741
754
  if (typeof props.open !== 'undefined' && typeof props.defaultOpen !== 'undefined') {
742
- // eslint-disable-next-line no-console
743
755
  console.error('Shell.Rail: Do not pass both `open` and `defaultOpen`. Choose one.');
744
756
  }
745
757
  }
@@ -752,7 +764,6 @@ const Rail = React.forwardRef<HTMLDivElement, RailProps>(({ className, presentat
752
764
  return;
753
765
  }
754
766
  if (wasControlledRef.current !== isControlled) {
755
- // eslint-disable-next-line no-console
756
767
  console.warn('Shell.Rail: Switching between controlled and uncontrolled `open` is not supported.');
757
768
  wasControlledRef.current = isControlled;
758
769
  }
@@ -891,11 +902,9 @@ const Panel = React.forwardRef<HTMLDivElement, PanelPublicProps>(
891
902
  // Dev-only runtime guard
892
903
  if (process.env.NODE_ENV !== 'production') {
893
904
  if (typeof open !== 'undefined' && typeof defaultOpen !== 'undefined') {
894
- // eslint-disable-next-line no-console
895
905
  console.error('Shell.Panel: Do not pass both `open` and `defaultOpen`. Choose one.');
896
906
  }
897
907
  if (typeof size !== 'undefined' && typeof defaultSize !== 'undefined') {
898
- // eslint-disable-next-line no-console
899
908
  console.error('Shell.Panel: Do not pass both `size` and `defaultSize`. Choose one.');
900
909
  }
901
910
  }
@@ -924,14 +933,13 @@ const Panel = React.forwardRef<HTMLDivElement, PanelPublicProps>(
924
933
  } else {
925
934
  if (shell.panelMode !== 'collapsed') shell.setPanelMode('collapsed');
926
935
  }
927
- }, [open, shell.leftMode, shell.panelMode]);
936
+ }, [shell, open]);
928
937
 
929
938
  // Dev-only warning if switching controlled/uncontrolled between renders
930
939
  React.useEffect(() => {
931
940
  const isControlled = typeof open !== 'undefined';
932
941
  (Panel as any)._wasControlled = (Panel as any)._wasControlled ?? isControlled;
933
942
  if ((Panel as any)._wasControlled !== isControlled) {
934
- // eslint-disable-next-line no-console
935
943
  console.warn('Shell.Panel: Switching between controlled and uncontrolled `open` is not supported.');
936
944
  (Panel as any)._wasControlled = isControlled;
937
945
  }
@@ -1057,7 +1065,7 @@ const Panel = React.forwardRef<HTMLDivElement, PanelPublicProps>(
1057
1065
  localRef.current.style.setProperty('--panel-size', `${clamped}px`);
1058
1066
  emitSizeChange(clamped, { reason: 'controlled' });
1059
1067
  }
1060
- }, [size, minSize, maxSize, normalizeToPx]);
1068
+ }, [size, minSize, maxSize, normalizeToPx, emitSizeChange]);
1061
1069
 
1062
1070
  // Ensure Left container width is auto whenever Panel is expanded in fixed presentation
1063
1071
  React.useEffect(() => {