@streamsai/ui 0.1.6 → 0.1.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.
@@ -1004,7 +1004,23 @@ function TypeaheadMenuAboveCaret({ anchor, dataAttr, className, children, option
1004
1004
  // Lexical writes top/left on the absolute anchor when the caret moves.
1005
1005
  const observer = new MutationObserver(update);
1006
1006
  observer.observe(anchor, { attributes: true, attributeFilter: ['style'] });
1007
+ // The iOS app lifts the composer on the keyboard's curve by tweening its padding in JS: the
1008
+ // editor moves frame by frame with no viewport, scroll, selection or resize event to follow.
1009
+ // A menu opened with the keyboard down stayed where the composer used to be, on top of it.
1010
+ const editorRoot = editor.getRootElement();
1011
+ let editorTop = editorRoot?.getBoundingClientRect().top;
1012
+ let watchRaf = 0;
1013
+ const watchEditor = () => {
1014
+ const top = editorRoot?.getBoundingClientRect().top;
1015
+ if (top !== editorTop) {
1016
+ editorTop = top;
1017
+ update();
1018
+ }
1019
+ watchRaf = window.requestAnimationFrame(watchEditor);
1020
+ };
1021
+ watchRaf = window.requestAnimationFrame(watchEditor);
1007
1022
  return () => {
1023
+ window.cancelAnimationFrame(watchRaf);
1008
1024
  if (rafRef.current != null)
1009
1025
  window.cancelAnimationFrame(rafRef.current);
1010
1026
  rafRef.current = null;
@@ -27,7 +27,7 @@ export { DropdownChevronDown as ChevronDown, DropdownChevronLeft as ChevronLeft,
27
27
  export { ChevronsDownUp, ChevronsUpDown, Menu, WifiOff } from 'lucide-react';
28
28
  export { MoveArrowDown as ArrowDown, MoveArrowLeft as ArrowLeft, MoveArrowRight as ArrowRight, MoveArrowUp as ArrowUp, } from '@vibe/icons';
29
29
  export { CornerDownRight, SkipForward } from 'lucide-react';
30
- export { Calendar, Check, Duplicate as Copy, Download, Show as Eye, Hide as EyeOff, Home, LogOut, Fullscreen as Maximize, FullscreenClose as Minimize, Open, Pause, Play, Add as Plus, Redo as Redo2, Reply, Retry as RotateCcw, Search, Shuffle, Sort, Undo as Undo2, Close as X, } from '@vibe/icons';
30
+ export { Calendar, Check, Duplicate as Copy, Download, Show as Eye, Hide as EyeOff, Home, LogOut, Fullscreen as Maximize, FullscreenClose as Minimize, Open, Pause, Play, Add as Plus, Redo as Redo2, Reply, Retry as RotateCcw, Search, Shuffle, Sort, TextCopy, Translation, Undo as Undo2, Close as X, } from '@vibe/icons';
31
31
  export { LoaderCircle, Minimize2, Repeat, Square } from 'lucide-react';
32
32
  export { File, AddNewDoc as FilePlus, ConnectedDoc as FileSymlink, Doc as FileText, Folder, } from '@vibe/icons';
33
33
  export { Bold, Code, Italic, Bullets as List, Numbers as ListOrdered, Edit as Pencil, Wand as PencilSparkles, StrikethroughS as Strikethrough, TextFormatting as Type, } from '@vibe/icons';
@@ -27,7 +27,7 @@ export { DropdownChevronDown as ChevronDown, DropdownChevronLeft as ChevronLeft,
27
27
  export { ChevronsDownUp, ChevronsUpDown, Menu, WifiOff } from 'lucide-react';
28
28
  export { MoveArrowDown as ArrowDown, MoveArrowLeft as ArrowLeft, MoveArrowRight as ArrowRight, MoveArrowUp as ArrowUp, } from '@vibe/icons';
29
29
  export { CornerDownRight, SkipForward } from 'lucide-react';
30
- export { Calendar, Check, Duplicate as Copy, Download, Show as Eye, Hide as EyeOff, Home, LogOut, Fullscreen as Maximize, FullscreenClose as Minimize, Open, Pause, Play, Add as Plus, Redo as Redo2, Reply, Retry as RotateCcw, Search, Shuffle, Sort, Undo as Undo2, Close as X, } from '@vibe/icons';
30
+ export { Calendar, Check, Duplicate as Copy, Download, Show as Eye, Hide as EyeOff, Home, LogOut, Fullscreen as Maximize, FullscreenClose as Minimize, Open, Pause, Play, Add as Plus, Redo as Redo2, Reply, Retry as RotateCcw, Search, Shuffle, Sort, TextCopy, Translation, Undo as Undo2, Close as X, } from '@vibe/icons';
31
31
  export { LoaderCircle, Minimize2, Repeat, Square } from 'lucide-react';
32
32
  export { File, AddNewDoc as FilePlus, ConnectedDoc as FileSymlink, Doc as FileText, Folder, } from '@vibe/icons';
33
33
  export { Bold, Code, Italic, Bullets as List, Numbers as ListOrdered, Edit as Pencil, Wand as PencilSparkles, StrikethroughS as Strikethrough, TextFormatting as Type, } from '@vibe/icons';
package/package.json CHANGED
@@ -1,6 +1,6 @@
1
1
  {
2
2
  "name": "@streamsai/ui",
3
- "version": "0.1.6",
3
+ "version": "0.1.8",
4
4
  "description": "Streams design system: shadcn/ui components on Base UI, design tokens (Tailwind v4) and a theme provider for React 19.",
5
5
  "license": "MIT",
6
6
  "repository": {