@noya-app/noya-designsystem 0.1.48 → 0.1.49

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 (43) hide show
  1. package/.turbo/turbo-build.log +10 -10
  2. package/CHANGELOG.md +8 -0
  3. package/dist/index.css +1 -1
  4. package/dist/index.d.mts +213 -164
  5. package/dist/index.d.ts +213 -164
  6. package/dist/index.js +3583 -3290
  7. package/dist/index.js.map +1 -1
  8. package/dist/index.mjs +3617 -3329
  9. package/dist/index.mjs.map +1 -1
  10. package/package.json +3 -2
  11. package/src/__tests__/validateDropIndicator.test.ts +4 -4
  12. package/src/components/ActionMenu.tsx +15 -4
  13. package/src/components/BaseToolbar.tsx +2 -2
  14. package/src/components/Checkbox.tsx +2 -2
  15. package/src/components/Chip.tsx +7 -6
  16. package/src/components/Collection.tsx +19 -1
  17. package/src/components/Combobox.tsx +22 -23
  18. package/src/components/ComboboxMenu.tsx +1 -1
  19. package/src/components/DimensionInput.tsx +14 -12
  20. package/src/components/EditableText.tsx +3 -1
  21. package/src/components/FillInputField.tsx +2 -2
  22. package/src/components/Grid.tsx +133 -113
  23. package/src/components/GridView.tsx +36 -18
  24. package/src/components/InputField.tsx +116 -171
  25. package/src/components/Label.tsx +4 -68
  26. package/src/components/LabeledField.tsx +7 -1
  27. package/src/components/List.tsx +103 -44
  28. package/src/components/ListView.tsx +42 -26
  29. package/src/components/MediaThumbnail.tsx +3 -3
  30. package/src/components/Message.tsx +8 -8
  31. package/src/components/NoyaLogo.tsx +41 -0
  32. package/src/components/SegmentedControl.tsx +1 -1
  33. package/src/components/SelectMenu.tsx +9 -4
  34. package/src/components/Slider.tsx +16 -7
  35. package/src/components/Sortable.tsx +62 -25
  36. package/src/components/internal/Menu.tsx +8 -3
  37. package/src/components/internal/SelectItem.tsx +3 -2
  38. package/src/index.css +7 -1
  39. package/src/index.tsx +2 -0
  40. package/src/theme/index.ts +2 -0
  41. package/src/utils/classNames.ts +51 -3
  42. package/src/utils/inputs.ts +21 -0
  43. package/tailwind.config.ts +7 -0
package/dist/index.d.ts CHANGED
@@ -1,8 +1,9 @@
1
1
  import * as React$1 from 'react';
2
- import React__default, { ReactHTML, ReactNode, CSSProperties, HTMLAttributes, AriaRole, KeyboardEventHandler, MouseEventHandler, PointerEventHandler, FocusEventHandler, InputHTMLAttributes, LabelHTMLAttributes, ForwardedRef, ComponentProps, SyntheticEvent } from 'react';
2
+ import React__default, { ReactNode, ReactHTML, CSSProperties, HTMLAttributes, AriaRole, KeyboardEventHandler, MouseEventHandler, PointerEventHandler, FocusEventHandler, InputHTMLAttributes, ForwardedRef, ComponentProps, SyntheticEvent, LabelHTMLAttributes } from 'react';
3
3
  import { IItemScore } from 'vscode-fuzzy-scorer';
4
4
  import * as Icons from '@noya-app/noya-icons';
5
5
  export { Icons };
6
+ import * as tailwindcss_types_config from 'tailwindcss/types/config';
6
7
  import * as _noya_app_noya_geometry from '@noya-app/noya-geometry';
7
8
  import { Size } from '@noya-app/noya-geometry';
8
9
  import { UniqueIdentifier } from '@dnd-kit/core';
@@ -21,6 +22,118 @@ import { SelectProps } from '@radix-ui/react-select';
21
22
  import { ImperativePanelGroupHandle } from 'react-resizable-panels';
22
23
  import { RgbaColor } from '@noya-app/noya-colorpicker';
23
24
 
25
+ declare function fuzzyScore({ item, query }: {
26
+ item: string;
27
+ query: string;
28
+ }): IItemScore;
29
+ type IScoredItem = IItemScore & {
30
+ index: number;
31
+ };
32
+ declare function fuzzyFilter({ items, query, scoreThreshold, }: {
33
+ items: string[];
34
+ query: string;
35
+ scoreThreshold?: number;
36
+ }): IScoredItem[];
37
+ type IToken = {
38
+ type: "text";
39
+ text: string;
40
+ } | {
41
+ type: "match";
42
+ text: string;
43
+ };
44
+ type MatchRange = {
45
+ start: number;
46
+ end: number;
47
+ };
48
+ declare function fuzzyTokenize({ item, itemScore, }: {
49
+ item: string;
50
+ itemScore: IItemScore;
51
+ }): IToken[];
52
+
53
+ type IconName = keyof typeof Icons;
54
+
55
+ declare function renderIcon(iconName: Exclude<React$1.ReactNode, string> | IconName): React$1.ReactNode;
56
+
57
+ type MenuItemRole = "undo" | "redo" | "cut" | "copy" | "paste" | "pasteAndMatchStyle" | "delete" | "selectAll" | "reload" | "forceReload" | "toggleDevTools" | "resetZoom" | "zoomIn" | "zoomOut" | "toggleSpellChecker" | "togglefullscreen" | "window" | "minimize" | "close" | "help" | "about" | "services" | "hide" | "hideOthers" | "unhide" | "quit" | "showSubstitutions" | "toggleSmartQuotes" | "toggleSmartDashes" | "toggleTextReplacement" | "startSpeaking" | "stopSpeaking" | "zoom" | "front" | "appMenu" | "fileMenu" | "editMenu" | "viewMenu" | "shareMenu" | "recentDocuments" | "toggleTabBar" | "selectNextTab" | "selectPreviousTab" | "mergeAllWindows" | "clearRecentDocuments" | "moveTabToNewWindow" | "windowMenu";
58
+ type SeparatorItem = {
59
+ type: "separator";
60
+ };
61
+ declare const separator: SeparatorItem;
62
+ type FalsyReactNode = false | "" | null | undefined;
63
+ type MenuItemIcon = IconName | React__default.ReactElement | FalsyReactNode;
64
+ type BaseMenuItem = {
65
+ checked?: boolean;
66
+ disabled?: boolean;
67
+ icon?: MenuItemIcon;
68
+ role?: MenuItemRole;
69
+ alwaysInclude?: boolean;
70
+ title: NonNullable<ReactNode>;
71
+ };
72
+ type SectionHeaderMenuItem = {
73
+ type: "sectionHeader";
74
+ id: string;
75
+ title: ReactNode;
76
+ maxVisibleItems?: number;
77
+ variant?: "normal" | "label";
78
+ };
79
+ type SelectableMenuItem<T extends string> = BaseMenuItem & {
80
+ type?: undefined;
81
+ shortcut?: string;
82
+ value: T;
83
+ testSelected?: boolean;
84
+ };
85
+ type SubMenuItem<T extends string> = BaseMenuItem & {
86
+ type: "submenu";
87
+ items: MenuItem<T>[];
88
+ id: string;
89
+ };
90
+ type NonSelectableMenuItem<T extends string> = SeparatorItem | SectionHeaderMenuItem | SubMenuItem<T>;
91
+ type MenuItem<T extends string> = SeparatorItem | SelectableMenuItem<T> | SectionHeaderMenuItem | SubMenuItem<T>;
92
+ type ScoredSelectableMenuItem<T extends string> = SelectableMenuItem<T> & IScoredItem;
93
+ type ScoredMenuItem<T extends string> = ScoredSelectableMenuItem<T> | SectionHeaderMenuItem;
94
+ type ExtractMenuItemType<T> = T extends SelectableMenuItem<infer U> ? U : never;
95
+ declare const isSelectableMenuItem: <T extends string>(item: MenuItem<T>) => item is SelectableMenuItem<T>;
96
+ declare const isNonSelectableMenuItem: <T extends string>(item: MenuItem<T>) => item is NonSelectableMenuItem<T>;
97
+ declare const isMenuItemSectionHeader: (item: MenuItem<string>) => item is SectionHeaderMenuItem;
98
+ declare const isSelectableMenuItemWithScore: (item: MenuItem<string>) => item is ScoredSelectableMenuItem<string>;
99
+ declare const getMenuItemKey: <T extends string>(item: MenuItem<T>, index: number) => string;
100
+ declare const CHECKBOX_WIDTH = 15;
101
+ declare const CHECKBOX_RIGHT_INSET = 8;
102
+ declare const CHECKBOX_INDENT_WIDTH = 6;
103
+ declare const styles: {
104
+ separatorStyle: string;
105
+ selectedItemStyle: string;
106
+ testSelectedItemStyle: string;
107
+ itemStyle: ({ disabled }: {
108
+ disabled?: boolean;
109
+ }) => string;
110
+ itemIndicator: {
111
+ className: string;
112
+ style: {
113
+ marginRight: number;
114
+ };
115
+ };
116
+ contentStyle: string;
117
+ };
118
+ declare function getKeyboardShortcutsForMenuItems<T extends string>(menuItems: MenuItem<T>[], onSelect: (type: T) => void): Record<string, () => void>;
119
+ declare const KeyboardShortcut: React__default.NamedExoticComponent<{
120
+ shortcut: string;
121
+ }>;
122
+ declare const SectionHeader$1: React__default.NamedExoticComponent<Omit<SectionHeaderMenuItem, "type" | "maxVisibleItems"> & {
123
+ isFirst?: boolean;
124
+ indented?: boolean;
125
+ }>;
126
+
127
+ type ActionMenuProps<TMenu extends string> = {
128
+ menuItems: MenuItem<TMenu>[];
129
+ onSelect: (action: TMenu) => void;
130
+ selected: boolean;
131
+ onOpenChange: (open: boolean) => void;
132
+ className?: string;
133
+ style?: React__default.CSSProperties;
134
+ };
135
+ declare const ActionMenu: <TMenu extends string>(props: ActionMenuProps<TMenu>) => React__default.ReactElement | null;
136
+
24
137
  interface Props$e {
25
138
  size?: number;
26
139
  opacity?: number;
@@ -112,6 +225,8 @@ declare const config: {
112
225
  "secondary-bright": string;
113
226
  "input-background": string;
114
227
  "input-background-light": string;
228
+ "list-view-hover-background": string;
229
+ "list-view-thumbnail-background": string;
115
230
  "code-background": string;
116
231
  "code-background-dark": string;
117
232
  "selected-background": string;
@@ -156,6 +271,8 @@ declare const config: {
156
271
  "chip-error-shadow": string;
157
272
  "chip-default-shadow": string;
158
273
  "floating-button": string;
274
+ "block-border": string;
275
+ "block-highlight": string;
159
276
  };
160
277
  fontFamily: {
161
278
  sans: [string, string, string, string, string, string, string, string, string, string];
@@ -253,6 +370,10 @@ declare const config: {
253
370
  };
254
371
  };
255
372
  safelist: string[];
373
+ plugins: {
374
+ handler: tailwindcss_types_config.PluginCreator;
375
+ config?: Partial<tailwindcss_types_config.Config> | undefined;
376
+ }[];
256
377
  };
257
378
 
258
379
  type Theme = (typeof config.theme)["extend"];
@@ -279,6 +400,8 @@ declare const cssVars: {
279
400
  secondaryBright: string;
280
401
  inputBackground: string;
281
402
  inputBackgroundLight: string;
403
+ listViewHoverBackground: string;
404
+ listViewThumbnailBackground: string;
282
405
  codeBackground: string;
283
406
  codeBackgroundDark: string;
284
407
  selectedBackground: string;
@@ -323,6 +446,8 @@ declare const cssVars: {
323
446
  chipErrorShadow: string;
324
447
  chipDefaultShadow: string;
325
448
  floatingButton: string;
449
+ blockBorder: string;
450
+ blockHighlight: string;
326
451
  };
327
452
  fontFamily: {
328
453
  sans: [string, string, string, string, string, string, string, string, string, string];
@@ -418,6 +543,7 @@ declare const cssVars: {
418
543
  menu: string;
419
544
  };
420
545
  };
546
+ declare const INPUT_HEIGHT = 27;
421
547
 
422
548
  type KebabToCamelCase<S extends string> = S extends `${infer First}-${infer Rest}` ? `${First}${Capitalize<KebabToCamelCase<Rest>>}` : S;
423
549
 
@@ -502,6 +628,7 @@ interface ChipProps {
502
628
  onHoverDeleteChange?: (hovering: boolean) => void;
503
629
  style?: React__default.CSSProperties;
504
630
  tabIndex?: number;
631
+ role?: string;
505
632
  }
506
633
  declare const Chip: React__default.MemoExoticComponent<React__default.ForwardRefExoticComponent<ChipProps & React__default.RefAttributes<HTMLSpanElement>>>;
507
634
 
@@ -514,107 +641,21 @@ declare const Grid: <T, M extends string = string>(props: CollectionProps<T, M>
514
641
  ref?: React__default.ForwardedRef<CollectionRef>;
515
642
  } & React__default.RefAttributes<CollectionRef>) => React__default.ReactElement | null;
516
643
 
517
- declare function fuzzyScore({ item, query }: {
518
- item: string;
519
- query: string;
520
- }): IItemScore;
521
- type IScoredItem = IItemScore & {
522
- index: number;
523
- };
524
- declare function fuzzyFilter({ items, query, scoreThreshold, }: {
525
- items: string[];
526
- query: string;
527
- scoreThreshold?: number;
528
- }): IScoredItem[];
529
- type IToken = {
530
- type: "text";
531
- text: string;
532
- } | {
533
- type: "match";
534
- text: string;
535
- };
536
- type MatchRange = {
537
- start: number;
538
- end: number;
539
- };
540
- declare function fuzzyTokenize({ item, itemScore, }: {
541
- item: string;
542
- itemScore: IItemScore;
543
- }): IToken[];
544
-
545
- type IconName = keyof typeof Icons;
546
-
547
- declare function renderIcon(iconName: Exclude<React$1.ReactNode, string> | IconName): React$1.ReactNode;
548
-
549
- type MenuItemRole = "undo" | "redo" | "cut" | "copy" | "paste" | "pasteAndMatchStyle" | "delete" | "selectAll" | "reload" | "forceReload" | "toggleDevTools" | "resetZoom" | "zoomIn" | "zoomOut" | "toggleSpellChecker" | "togglefullscreen" | "window" | "minimize" | "close" | "help" | "about" | "services" | "hide" | "hideOthers" | "unhide" | "quit" | "showSubstitutions" | "toggleSmartQuotes" | "toggleSmartDashes" | "toggleTextReplacement" | "startSpeaking" | "stopSpeaking" | "zoom" | "front" | "appMenu" | "fileMenu" | "editMenu" | "viewMenu" | "shareMenu" | "recentDocuments" | "toggleTabBar" | "selectNextTab" | "selectPreviousTab" | "mergeAllWindows" | "clearRecentDocuments" | "moveTabToNewWindow" | "windowMenu";
550
- type SeparatorItem = {
551
- type: "separator";
552
- };
553
- declare const separator: SeparatorItem;
554
- type FalsyReactNode = false | "" | null | undefined;
555
- type MenuItemIcon = IconName | React__default.ReactElement | FalsyReactNode;
556
- type BaseMenuItem = {
557
- checked?: boolean;
558
- disabled?: boolean;
559
- icon?: MenuItemIcon;
560
- role?: MenuItemRole;
561
- alwaysInclude?: boolean;
562
- title: NonNullable<ReactNode>;
563
- };
564
- type SectionHeaderMenuItem = {
565
- type: "sectionHeader";
566
- id: string;
567
- title: ReactNode;
568
- maxVisibleItems?: number;
569
- variant?: "normal" | "label";
570
- };
571
- type SelectableMenuItem<T extends string> = BaseMenuItem & {
572
- type?: undefined;
573
- shortcut?: string;
574
- value: T;
575
- testSelected?: boolean;
576
- };
577
- type SubMenuItem<T extends string> = BaseMenuItem & {
578
- type: "submenu";
579
- items: MenuItem<T>[];
580
- id: string;
581
- };
582
- type NonSelectableMenuItem<T extends string> = SeparatorItem | SectionHeaderMenuItem | SubMenuItem<T>;
583
- type MenuItem<T extends string> = SeparatorItem | SelectableMenuItem<T> | SectionHeaderMenuItem | SubMenuItem<T>;
584
- type ScoredSelectableMenuItem<T extends string> = SelectableMenuItem<T> & IScoredItem;
585
- type ScoredMenuItem<T extends string> = ScoredSelectableMenuItem<T> | SectionHeaderMenuItem;
586
- type ExtractMenuItemType<T> = T extends SelectableMenuItem<infer U> ? U : never;
587
- declare const isSelectableMenuItem: <T extends string>(item: MenuItem<T>) => item is SelectableMenuItem<T>;
588
- declare const isNonSelectableMenuItem: <T extends string>(item: MenuItem<T>) => item is NonSelectableMenuItem<T>;
589
- declare const isMenuItemSectionHeader: (item: MenuItem<string>) => item is SectionHeaderMenuItem;
590
- declare const isSelectableMenuItemWithScore: (item: MenuItem<string>) => item is ScoredSelectableMenuItem<string>;
591
- declare const getMenuItemKey: <T extends string>(item: MenuItem<T>, index: number) => string;
592
- declare const CHECKBOX_WIDTH = 16;
593
- declare const CHECKBOX_RIGHT_INSET = 8;
594
- declare const CHECKBOX_INDENT_WIDTH = 6;
595
- declare const styles: {
596
- separatorStyle: string;
597
- selectedItemStyle: string;
598
- testSelectedItemStyle: string;
599
- itemStyle: ({ disabled }: {
600
- disabled?: boolean;
601
- }) => string;
602
- itemIndicatorStyle: string;
603
- contentStyle: string;
604
- };
605
- declare function getKeyboardShortcutsForMenuItems<T extends string>(menuItems: MenuItem<T>[], onSelect: (type: T) => void): Record<string, () => void>;
606
- declare const KeyboardShortcut: React__default.NamedExoticComponent<{
607
- shortcut: string;
608
- }>;
609
- declare const SectionHeader$1: React__default.NamedExoticComponent<Omit<SectionHeaderMenuItem, "type" | "maxVisibleItems"> & {
610
- isFirst?: boolean;
611
- indented?: boolean;
612
- }>;
613
-
614
644
  type RelativeDropPosition = "above" | "below" | "inside";
615
- type DropValidator = (sourceIndex: number, destinationIndex: number, position: RelativeDropPosition) => boolean;
616
- declare const normalizeListDestinationIndex: (index: number, position: "above" | "below") => number;
645
+ type DropValidator = (sourceIndex: number, targetIndex: number, position: RelativeDropPosition) => boolean;
646
+ declare const normalizeListTargetIndex: (index: number, position: "above" | "below") => number;
617
647
  declare const defaultAcceptsDrop: DropValidator;
648
+ type SortableItemContextProps = {
649
+ keys: UniqueIdentifier[];
650
+ acceptsDrop: DropValidator;
651
+ axis: "x" | "y";
652
+ position: {
653
+ x: number;
654
+ y: number;
655
+ };
656
+ setActivatorEvent: (event: PointerEvent) => void;
657
+ getDropTargetParentIndex?: (index: number) => number | undefined;
658
+ };
618
659
  type ValidateDropIndicatorParams = {
619
660
  acceptsDrop: DropValidator;
620
661
  keys: UniqueIdentifier[];
@@ -639,9 +680,10 @@ interface RootProps {
639
680
  keys: UniqueIdentifier[];
640
681
  children: React$1.ReactNode;
641
682
  renderOverlay?: (index: number) => React$1.ReactNode;
642
- onMoveItem?: (sourceIndex: number, destinationIndex: number, position: RelativeDropPosition) => void;
643
- acceptsDrop?: DropValidator;
644
- axis?: "x" | "y";
683
+ onMoveItem?: (sourceIndex: number, targetIndex: number, position: RelativeDropPosition) => void;
684
+ acceptsDrop?: SortableItemContextProps["acceptsDrop"];
685
+ axis?: SortableItemContextProps["axis"];
686
+ getDropTargetParentIndex?: SortableItemContextProps["getDropTargetParentIndex"];
645
687
  }
646
688
  declare namespace Sortable {
647
689
  const Item: <T extends HTMLElement>(props: ItemProps$1<T>) => React$1.ReactElement | null;
@@ -671,8 +713,9 @@ interface EditableRowProps {
671
713
  autoFocus: boolean;
672
714
  placeholder?: string;
673
715
  className?: string;
716
+ onKeyDown?: (e: React__default.KeyboardEvent) => void;
674
717
  }
675
- declare function ListViewEditableRowTitle({ value, onSubmitEditing, autoFocus, placeholder, className, }: EditableRowProps): React__default.JSX.Element;
718
+ declare function ListViewEditableRowTitle({ value, onSubmitEditing, autoFocus, placeholder, className, onKeyDown, }: EditableRowProps): React__default.JSX.Element;
676
719
  interface ListViewClickInfo {
677
720
  shiftKey: boolean;
678
721
  altKey: boolean;
@@ -703,17 +746,20 @@ interface ListViewRowProps<MenuItemType extends string = string> {
703
746
  onKeyDown?: (event: React__default.KeyboardEvent) => void;
704
747
  style?: CSSProperties;
705
748
  className?: string;
706
- dragIndicatorStyle?: CSSProperties | ((props: {
707
- depth: number;
708
- indentation: number;
709
- position: RelativeDropPosition;
710
- }) => CSSProperties);
749
+ dragIndicatorStyle?: CSSProperties | ((props: DragIndicatorStyleProps) => CSSProperties);
750
+ testRelativeDropPosition?: RelativeDropPosition;
711
751
  }
752
+ type DragIndicatorStyleProps = {
753
+ depth: number;
754
+ indentation: number;
755
+ position: RelativeDropPosition;
756
+ };
712
757
  interface IVirtualizedList {
713
758
  scrollToIndex(index: number): void;
714
759
  }
715
760
  type ListViewItemInfo = {
716
- isDragging: boolean;
761
+ isDragOverlay: boolean;
762
+ activeDragIndex?: number;
717
763
  };
718
764
  type ChildrenProps = {
719
765
  children: ReactNode;
@@ -743,7 +789,7 @@ type ListViewRootProps = {
743
789
  onPress?: () => void;
744
790
  scrollable?: boolean;
745
791
  expandable?: boolean;
746
- onMoveItem?: (sourceIndex: number, destinationIndex: number, position: RelativeDropPosition) => void;
792
+ onMoveItem?: (sourceIndex: number, targetIndex: number, position: RelativeDropPosition) => void;
747
793
  indentation?: number;
748
794
  acceptsDrop?: DropValidator;
749
795
  pressEventName?: PressEventName;
@@ -758,6 +804,7 @@ type ListViewRootProps = {
758
804
  onDragLeave?: React__default.DragEventHandler<HTMLDivElement>;
759
805
  onDrop?: React__default.DragEventHandler<HTMLDivElement>;
760
806
  renderEmptyState?: () => ReactNode;
807
+ getDropTargetParentIndex?: SortableItemContextProps["getDropTargetParentIndex"];
761
808
  };
762
809
  declare namespace ListView {
763
810
  const RowTitle: React__default.MemoExoticComponent<({ className, children, ...props }: {
@@ -773,7 +820,7 @@ declare namespace ListView {
773
820
  type RowProps<MenuItemType extends string = string> = ListViewRowProps<MenuItemType>;
774
821
  type VirtualizedList = IVirtualizedList;
775
822
  const DragIndicator: React__default.ForwardRefExoticComponent<React__default.HTMLAttributes<HTMLDivElement> & {
776
- $relativeDropPosition: RelativeDropPosition;
823
+ $relativeDropPosition?: RelativeDropPosition;
777
824
  $gap: number;
778
825
  $offsetLeft: number;
779
826
  $colorScheme: ListColorScheme;
@@ -784,10 +831,11 @@ declare namespace ListView {
784
831
  menuItemsCount: number;
785
832
  sectionHeaderCount: number;
786
833
  }) => number;
787
- const normalizeDestinationIndex: (index: number, position: "above" | "below") => number;
834
+ const normalizeTargetIndex: (index: number, position: "above" | "below") => number;
788
835
  }
789
836
 
790
837
  type CollectionViewType = "grid" | "list";
838
+ type CollectionThumbnailSize = "auto" | "custom";
791
839
  type CollectionRef = {
792
840
  editName: (id: string) => void;
793
841
  };
@@ -795,12 +843,18 @@ type CollectionThumbnailProps<T> = {
795
843
  item: T;
796
844
  selected: boolean;
797
845
  };
846
+ type CollectionRenderActionProps<T> = {
847
+ item: T;
848
+ selected: boolean;
849
+ onOpenChange: (open: boolean) => void;
850
+ };
798
851
  interface CollectionProps<T, M extends string = string> {
799
852
  className?: string;
800
853
  items: T[];
801
854
  getId: (item: T) => string;
802
855
  getName: (item: T) => string;
803
856
  getExpanded?: (item: T) => boolean | undefined;
857
+ getPlaceholder?: (item: T) => string;
804
858
  /**
805
859
  * Whether directories should be expandable.
806
860
  * @default true
@@ -815,7 +869,7 @@ interface CollectionProps<T, M extends string = string> {
815
869
  onSelectMenuItem?: (action: M, selectedItems: T[]) => void;
816
870
  onRename?: (item: T, newName: string) => void;
817
871
  renderThumbnail?: ({ item, selected, }: CollectionThumbnailProps<T>) => React__default.ReactNode;
818
- renderAction?: "menu" | ((item: T, selected: boolean) => React__default.ReactNode);
872
+ renderAction?: "menu" | ((props: CollectionRenderActionProps<T>) => React__default.ReactNode);
819
873
  renderDetail?: (item: T, selected: boolean) => React__default.ReactNode;
820
874
  /** Callback when selection changes. If not provided, selection will be disabled. */
821
875
  onSelectionChange?: (selectedItemIds: string[], event?: ListView.ClickInfo) => void;
@@ -825,13 +879,18 @@ interface CollectionProps<T, M extends string = string> {
825
879
  detailPosition?: "end" | "below";
826
880
  /** Size of the list items. Defaults to 'medium'. */
827
881
  size?: GridViewSize;
882
+ /** Size of the thumbnail. Defaults to 'auto', which will be based on the size prop. */
883
+ thumbnailSize?: CollectionThumbnailSize;
828
884
  /** For testing: Override the hover state with a specific item ID */
829
885
  testHoveredId?: string;
830
886
  /** For testing: Override the renaming state with a specific item ID */
831
887
  testRenamingId?: string;
888
+ /** For testing: Override the drop indicator state with a specific item ID */
889
+ testShowDropIndicatorId?: string;
832
890
  setExpanded?: (item: T, expanded: boolean) => void;
833
891
  acceptsDrop?: ListViewRootProps["acceptsDrop"];
834
892
  onMoveItem?: ListViewRootProps["onMoveItem"];
893
+ getDropTargetParentIndex?: ListViewRootProps["getDropTargetParentIndex"];
835
894
  getDepth?: (item: T) => number;
836
895
  onFilesDrop?: (event: React__default.DragEvent<Element>) => void;
837
896
  getRenamable?: (item: T) => boolean;
@@ -841,9 +900,13 @@ interface CollectionProps<T, M extends string = string> {
841
900
  onClickItem?: (itemId: string) => void;
842
901
  onDoubleClickItem?: (itemId: string) => void;
843
902
  renderEmptyState?: () => React__default.ReactElement;
903
+ /** @default false */
904
+ sortable?: boolean;
844
905
  }
845
906
  declare const Collection: <T, M extends string = string>(props: CollectionProps<T, M> & React__default.RefAttributes<CollectionRef>) => React__default.ReactElement | null;
846
907
 
908
+ type InputSize = "small" | "medium" | "large";
909
+
847
910
  type Props$d = {
848
911
  id?: string;
849
912
  style?: any;
@@ -877,48 +940,18 @@ type SubmittableProps = Props$d & {
877
940
  };
878
941
  type TextInputProps = ReadOnlyProps | ControlledProps | SubmittableProps;
879
942
 
880
- type LabelPosition = "inset" | "start" | "end" | "above";
881
- interface LabelProps extends LabelHTMLAttributes<HTMLLabelElement> {
882
- /** @default start */
883
- position?: Exclude<LabelPosition, "inset">;
884
- }
885
- type InsetLabelProps = {
886
- /** @default medium */
887
- size?: InputFieldSize;
888
- /** when used with an InputField.Root and label position is inset, it will add padding to the right of the label to account for the button */
889
- buttonWidth?: number;
890
- } & LabelHTMLAttributes<HTMLLabelElement>;
891
- declare const insetLabelTextStyles = "font-sans text-label uppercase text-text-disabled leading-[19px] font-bold text-[60%] truncate pointer-events-none text-right";
892
- declare const insetLabelStyles = "flex items-center absolute top-0 bottom-0 z-label";
893
- declare const InsetLabel: React__default.MemoExoticComponent<React__default.ForwardRefExoticComponent<{
894
- /** @default medium */
895
- size?: InputFieldSize;
896
- /** when used with an InputField.Root and label position is inset, it will add padding to the right of the label to account for the button */
897
- buttonWidth?: number;
898
- } & React__default.LabelHTMLAttributes<HTMLLabelElement> & React__default.RefAttributes<HTMLLabelElement>>>;
899
- declare const Label: React__default.MemoExoticComponent<React__default.ForwardRefExoticComponent<LabelProps & React__default.RefAttributes<HTMLLabelElement>>>;
900
-
901
943
  type InputFieldSize = "small" | "medium" | "large";
902
944
  type InputFieldContextValue = {
903
- labelWidth?: number;
904
- buttonWidth?: number;
905
- startWidth?: number;
906
- /** @default medium */
907
- size: InputFieldSize;
908
945
  isFocused: boolean;
909
946
  onFocusChange: (isFocused: boolean) => void;
910
947
  inputRef: ForwardedRef<HTMLInputElement>;
911
- buttonRef: ForwardedRef<HTMLButtonElement>;
912
- labelRef: ForwardedRef<HTMLLabelElement>;
913
948
  startRef: ForwardedRef<HTMLSpanElement>;
914
- id?: string;
915
- label?: ReactNode;
916
- labelPosition?: LabelPosition;
917
- };
949
+ endRef: ForwardedRef<HTMLSpanElement>;
950
+ endWidth?: number;
951
+ } & Pick<InputFieldRootProps, "endWidth" | "startWidth" | "size" | "id">;
918
952
  declare const useInputFieldContext: () => InputFieldContextValue;
919
- declare const getFieldSpacing: ({ buttonWidth, labelWidth, startWidth, variant, }: {
920
- buttonWidth?: number;
921
- labelWidth?: number;
953
+ declare const getFieldSpacing: ({ endWidth, startWidth, variant, }: {
954
+ endWidth?: number;
922
955
  startWidth?: number;
923
956
  variant?: InputFieldVariant;
924
957
  }) => {
@@ -953,11 +986,14 @@ declare function InputFieldNumberInput(props: InputFieldNumberInputProps): React
953
986
  interface InputFieldRootProps {
954
987
  id?: string;
955
988
  children?: ReactNode;
989
+ start?: ReactNode;
990
+ end?: ReactNode;
991
+ label?: ReactNode;
956
992
  width?: number;
957
- labelWidth?: number;
958
993
  startWidth?: number;
994
+ endWidth?: number;
959
995
  /** @default medium */
960
- size?: InputFieldSize;
996
+ size?: InputSize;
961
997
  renderPopoverContent?: (options: {
962
998
  width: number;
963
999
  }) => ReactNode;
@@ -969,9 +1005,8 @@ interface InputFieldRootProps {
969
1005
  onFocusChange?: (isFocused: boolean) => void;
970
1006
  style?: React__default.CSSProperties;
971
1007
  className?: string;
972
- start?: ReactNode;
973
1008
  }
974
- declare function InputFieldRoot({ id: idProp, children, width, sideOffset, labelWidth, startWidth, size, renderPopoverContent, onFocusChange, style, className, start, }: InputFieldRootProps): React__default.JSX.Element;
1009
+ declare function InputFieldRoot({ id, children, width, sideOffset, startWidth: startWidthProp, endWidth: endWidthProp, size, renderPopoverContent, onFocusChange, style, className, start, end, label: labelProp, }: InputFieldRootProps): React__default.JSX.Element;
975
1010
  type InputFieldProps = InputFieldRootProps & InputFieldInputProps;
976
1011
  declare const InputField: React__default.ForwardRefExoticComponent<InputFieldProps & React__default.RefAttributes<HTMLInputElement>> & {
977
1012
  readonly Root: React__default.MemoExoticComponent<typeof InputFieldRoot>;
@@ -984,11 +1019,8 @@ declare const InputField: React__default.ForwardRefExoticComponent<InputFieldPro
984
1019
  readonly NumberInput: React__default.MemoExoticComponent<typeof InputFieldNumberInput>;
985
1020
  readonly DropdownMenu: <T extends string>(props: InputFieldDropdownProps<T>) => React__default.ReactElement | null;
986
1021
  readonly Button: React__default.MemoExoticComponent<React__default.ForwardRefExoticComponent<React__default.ButtonHTMLAttributes<HTMLButtonElement> & ButtonRootProps & {
987
- buttonClassName?: string;
988
- buttonStyle?: React__default.CSSProperties;
989
1022
  variant?: "floating" | "normal";
990
1023
  } & React__default.RefAttributes<HTMLButtonElement>>>;
991
- readonly Label: React__default.MemoExoticComponent<React__default.ForwardRefExoticComponent<React__default.LabelHTMLAttributes<HTMLLabelElement> & React__default.RefAttributes<HTMLLabelElement>>>;
992
1024
  readonly PrimitiveElement: ({ readOnly, disabled, className, style, ...props }: {
993
1025
  readOnly?: boolean;
994
1026
  disabled?: boolean;
@@ -1217,6 +1249,7 @@ type Props$b = {
1217
1249
  textClassName?: string;
1218
1250
  readOnly?: boolean;
1219
1251
  onBlur?: () => void;
1252
+ tabIndex?: number;
1220
1253
  /**
1221
1254
  * If true, will render an unfocused input. This should only be used for visual regression tests.
1222
1255
  */
@@ -1319,6 +1352,8 @@ interface ItemProps<MenuItemType extends string = string> {
1319
1352
  action?: ReactNode;
1320
1353
  onKeyDown?: (event: React__default.KeyboardEvent) => void;
1321
1354
  hovered?: boolean;
1355
+ testShowInsideDropIndicator?: boolean;
1356
+ role?: string;
1322
1357
  }
1323
1358
  type GridViewContextValue = {
1324
1359
  minColumnWidth: string;
@@ -1336,12 +1371,15 @@ interface GridViewRootProps extends Partial<GridViewContextValue> {
1336
1371
  onDragEnter?: React__default.DragEventHandler<HTMLDivElement>;
1337
1372
  onDragLeave?: React__default.DragEventHandler<HTMLDivElement>;
1338
1373
  onDrop?: React__default.DragEventHandler<HTMLDivElement>;
1374
+ role?: string;
1375
+ renderEmptyState?: () => ReactNode;
1376
+ contentClassName?: string;
1339
1377
  }
1340
1378
  declare function GridViewSection({ children, className, renderEmptyState, }: {
1341
1379
  children?: ReactNode;
1342
1380
  className?: string;
1343
1381
  renderEmptyState?: () => ReactNode;
1344
- }): string | number | boolean | React__default.JSX.Element | Iterable<React__default.ReactNode> | null | undefined;
1382
+ }): string | number | boolean | Iterable<React__default.ReactNode> | React__default.JSX.Element | null | undefined;
1345
1383
  declare function GridViewSectionHeader({ title }: {
1346
1384
  title: string;
1347
1385
  }): React__default.JSX.Element;
@@ -1352,7 +1390,7 @@ declare namespace GridView {
1352
1390
  const SectionHeader: React__default.MemoExoticComponent<typeof GridViewSectionHeader>;
1353
1391
  }
1354
1392
 
1355
- declare const IconButton: React$1.MemoExoticComponent<React$1.ForwardRefExoticComponent<Omit<ButtonRootProps, "size" | "children" | "variant" | "flex"> & {
1393
+ declare const IconButton: React$1.MemoExoticComponent<React$1.ForwardRefExoticComponent<Omit<ButtonRootProps, "size" | "flex" | "children" | "variant"> & {
1356
1394
  iconName: IconName;
1357
1395
  className?: string;
1358
1396
  style?: React$1.CSSProperties;
@@ -1414,6 +1452,11 @@ type MenuViewportProps<T extends string> = {
1414
1452
  };
1415
1453
  declare const MenuViewport: <T extends string>({ items, Components, onSelect, }: MenuViewportProps<T>) => React__default.JSX.Element;
1416
1454
 
1455
+ type LabelPosition = "inset" | "start" | "end" | "above";
1456
+ interface LabelProps extends LabelHTMLAttributes<HTMLLabelElement> {
1457
+ }
1458
+ declare const Label: React__default.MemoExoticComponent<React__default.ForwardRefExoticComponent<LabelProps & React__default.RefAttributes<HTMLLabelElement>>>;
1459
+
1417
1460
  interface ContainerProps {
1418
1461
  children: React$1.ReactNode;
1419
1462
  renderLabel: (provided: {
@@ -1464,6 +1507,8 @@ type MessageProps = {
1464
1507
  };
1465
1508
  declare const Message: React__default.MemoExoticComponent<React__default.ForwardRefExoticComponent<MessageProps & React__default.RefAttributes<HTMLDivElement>>>;
1466
1509
 
1510
+ declare const Logo: React__default.ForwardRefExoticComponent<Omit<React__default.SVGProps<SVGSVGElement>, "ref"> & React__default.RefAttributes<SVGSVGElement>>;
1511
+
1467
1512
  type PopoverVariant = "normal" | "large";
1468
1513
  interface Props$7 extends Pick<ComponentProps<(typeof PopoverPrimitive)["Content"]>, "onOpenAutoFocus" | "onCloseAutoFocus" | "onPointerDownOutside" | "onInteractOutside" | "onFocusOutside" | "side"> {
1469
1514
  children: React__default.ReactNode;
@@ -1621,9 +1666,7 @@ declare namespace TreeView {
1621
1666
  children: ReactNode;
1622
1667
  } | {
1623
1668
  data: T[];
1624
- renderItem: (item: T, index: number, info: {
1625
- isDragging: boolean;
1626
- }) => ReactNode;
1669
+ renderItem: (item: T, index: number, info: ListViewItemInfo) => ReactNode;
1627
1670
  keyExtractor: (item: T, index: number) => string;
1628
1671
  sortable?: boolean;
1629
1672
  virtualized?: _noya_app_noya_geometry.Size;
@@ -1632,7 +1675,7 @@ declare namespace TreeView {
1632
1675
  className?: string;
1633
1676
  children: React__default.ReactNode;
1634
1677
  } & React__default.HTMLAttributes<HTMLSpanElement>) => React__default.JSX.Element>;
1635
- const EditableRowTitle: React__default.MemoExoticComponent<({ value, onSubmitEditing, autoFocus, placeholder, className, }: EditableRowProps) => React__default.JSX.Element>;
1678
+ const EditableRowTitle: React__default.MemoExoticComponent<({ value, onSubmitEditing, autoFocus, placeholder, className, onKeyDown, }: EditableRowProps) => React__default.JSX.Element>;
1636
1679
  const Row: <MenuItemType extends string>(props: ListView.RowProps<MenuItemType> & TreeRowBaseProps & React__default.RefAttributes<HTMLLIElement>) => React__default.ReactElement | null;
1637
1680
  type ClickInfo = ListView.ClickInfo;
1638
1681
  type RowProps<MenuItemType extends string> = TreeViewRowProps<MenuItemType>;
@@ -1869,7 +1912,13 @@ declare const mediaQuery: {
1869
1912
  xlarge: string;
1870
1913
  };
1871
1914
 
1872
- declare function cx(...args: Array<string | number | boolean | null | undefined>): string;
1915
+ type ClassNameItem = string | number | BigInt | boolean | null | undefined;
1916
+ type Category = "text" | "flex";
1917
+ type Options = {
1918
+ categories?: Category[];
1919
+ };
1920
+ declare function cx(...args: ClassNameItem[]): string;
1921
+ declare function mergeConflictingClassNames(classNames: ClassNameItem | ClassNameItem[], options?: Options): string;
1873
1922
 
1874
1923
  type Optional<T> = T | false | null | undefined;
1875
1924
  type MenuConfig<T extends string> = Optional<Optional<MenuItem<T>>[]>[];
@@ -2019,4 +2068,4 @@ declare function ToolbarMenu<T extends string>({ items, onSelectMenuItem, }: {
2019
2068
  onSelectMenuItem?: (value: T) => void;
2020
2069
  }): React__default.JSX.Element;
2021
2070
 
2022
- export { ActivityIndicator, AnimatePresence, type AnimatePresenceProps, Avatar, type AvatarProps, AvatarStack, type BaseComboboxProps, BaseToolbar, type BaseToolbarProps, Body, BreadcrumbText, Button, type ButtonRootProps, CHECKBOX_INDENT_WIDTH, CHECKBOX_RIGHT_INSET, CHECKBOX_WIDTH, CONTENT_AREA_ID, Checkbox$1 as Checkbox, Chip, type ChipProps, Collection, type CollectionProps, type CollectionRef, type CollectionThumbnailProps, type CollectionViewType, Combobox, ComboboxMenu, type ComboboxProps, type ComboboxRef, ComboboxState, type ComboboxStateSnapshot, CommandPalette, ContextMenu, type DesignSystemConfigurationContextValue, DesignSystemConfigurationProvider, type DetectSizeType, Dialog, type DialogContextValue, DialogProvider, DimensionInput, type DimensionValue, Divider, DividerVertical, DraggableMenuButton, Drawer, type DrawerProps, type DropValidator, DropdownMenu, type DropdownRootProps, EDITOR_PANEL_GROUP_ID, type EditableRowProps, EditableText, type EditableTextRef, type ExtractMenuItemType, Fade, type FadeDirection, type FadeProps, FillInputField, FillPreviewBackground, FloatingWindow, FloatingWindowProvider, FullscreenDialog, type GlobalInputBlurContextValue, GlobalInputBlurProvider, GradientPicker, Grid, GridView, type GridViewSize, Heading1, Heading2, Heading3, Heading4, Heading5, type HoverEvent, type HoverEvents, type HoverProps, type IDialog, type IScoredItem, type ISearchCompletionMenu, type IToken, type IVirtualizedList, IconButton, type IconName, type ImageDataContextValue, ImageDataProvider, IndentContext, InputField, type InputFieldInputProps, type InputFieldProps, type InputFieldSize, InsetLabel, type InsetLabelProps, InspectorContainer, InspectorPrimitives, Italic, KeyboardShortcut, LEFT_SIDEBAR_ID, Label, LabelContext, type LabelPosition, LabelPositionContext, type LabelPositionContextValue, type LabelProps, LabelWidthContext, type LabelWidthContextValue, LabeledElementView, LabeledField, type LayoutProps, List, type ListRowMarginType, type ListRowPosition, ListView, type ListViewRootProps, type MatchRange, MediaThumbnail, type MenuComponents, type MenuConfig, type MenuItem, type MenuItemIcon, type MenuItemProps, type MenuItemRole, type MenuProps, MenuViewport, Message, type MessageProps, type NonSelectableMenuItem, type OptionModeOnlyProps, type OptionModeProps, type Optional, type PanelLayoutState, PatternPreviewBackground, type PercentageSidebarOptions, Popover, Progress, RIGHT_SIDEBAR_ID, type RelativeDropPosition, SUPPORTED_CANVAS_UPLOAD_TYPES, SUPPORTED_IMAGE_UPLOAD_TYPES, type ScoredMenuItem, ScrollArea, SearchCompletionMenu, SectionHeader$1 as SectionHeader, type SectionHeaderMenuItem, SegmentedControl, type SegmentedControlItemProps, type SegmentedControlProps, SelectMenu, type SelectableMenuItem, type SeparatorItem, type SetNumberMode, type SideOptions, type SideType, type SidebarRef, type SketchPattern, Slider, Small, Sortable, Spacer, type StringModeOnlyProps, type StringModeProps, type SupportedCanvasUploadType, type SupportedImageUploadType, Switch, Text$1 as Text, TextArea, TextAreaRow, type TextProps, type Theme, type ThemeColor, Toast, ToastProvider, Toolbar, ToolbarMenu, type ToolbarProps, Tooltip, TreeView, type UseThemeReturnType, UserPointer, type UserPointerProps, WorkspaceLayout, type WorkspaceLayoutProps, type WorkspaceLayoutRef, colorForStringValues, colorFromString, createSectionedMenu, cssVars, cx, defaultAcceptsDrop, fuzzyFilter, fuzzyScore, fuzzyTokenize, getFieldSpacing, getGradientBackground, getGridSize, getKeyboardShortcutsForMenuItems, getMenuItemKey, getNewValue, getNextIndex, insetLabelStyles, insetLabelTextStyles, isMenuItemSectionHeader, isNonSelectableMenuItem, isSelectableMenuItem, isSelectableMenuItemWithScore, labeledFieldStyles, mediaQuery, normalizeListDestinationIndex, renderIcon, rgbaToSketchColor, separator, size, sketchColorToHex, sketchColorToRgba, sketchColorToRgbaString, styles, textStyles, updateSelection, useAutoResize, useComboboxState, useCurrentFloatingWindowInternal, useDesignSystemConfiguration, useDialogContainsElement, useDialogContext, useFloatingWindowManager, useGlobalInputBlur, useGlobalInputBlurListener, useGlobalInputBlurTrigger, useHover, useImageData, useIndent, useInputFieldContext, useLabel, useLabelPosition, useLabelWidth, useOpenConfirmationDialog, useOpenDialog, useOpenInputDialog, usePlatform, usePlatformModKey, usePreservePanelSize, useTheme, validateDropIndicator, withSeparatorElements };
2071
+ export { ActionMenu, ActivityIndicator, AnimatePresence, type AnimatePresenceProps, Avatar, type AvatarProps, AvatarStack, type BaseComboboxProps, BaseToolbar, type BaseToolbarProps, Body, BreadcrumbText, Button, type ButtonRootProps, CHECKBOX_INDENT_WIDTH, CHECKBOX_RIGHT_INSET, CHECKBOX_WIDTH, CONTENT_AREA_ID, Checkbox$1 as Checkbox, Chip, type ChipProps, Collection, type CollectionProps, type CollectionRef, type CollectionRenderActionProps, type CollectionThumbnailProps, type CollectionThumbnailSize, type CollectionViewType, Combobox, ComboboxMenu, type ComboboxProps, type ComboboxRef, ComboboxState, type ComboboxStateSnapshot, CommandPalette, ContextMenu, type DesignSystemConfigurationContextValue, DesignSystemConfigurationProvider, type DetectSizeType, Dialog, type DialogContextValue, DialogProvider, DimensionInput, type DimensionValue, Divider, DividerVertical, type DragIndicatorStyleProps, DraggableMenuButton, Drawer, type DrawerProps, type DropValidator, DropdownMenu, type DropdownRootProps, EDITOR_PANEL_GROUP_ID, type EditableRowProps, EditableText, type EditableTextRef, type ExtractMenuItemType, Fade, type FadeDirection, type FadeProps, FillInputField, FillPreviewBackground, FloatingWindow, FloatingWindowProvider, FullscreenDialog, type GlobalInputBlurContextValue, GlobalInputBlurProvider, GradientPicker, Grid, GridView, type GridViewSize, Heading1, Heading2, Heading3, Heading4, Heading5, type HoverEvent, type HoverEvents, type HoverProps, type IDialog, INPUT_HEIGHT, type IScoredItem, type ISearchCompletionMenu, type IToken, type IVirtualizedList, IconButton, type IconName, type ImageDataContextValue, ImageDataProvider, IndentContext, InputField, type InputFieldInputProps, type InputFieldProps, type InputFieldSize, InspectorContainer, InspectorPrimitives, Italic, KeyboardShortcut, LEFT_SIDEBAR_ID, Label, LabelContext, type LabelPosition, LabelPositionContext, type LabelPositionContextValue, type LabelProps, LabelWidthContext, type LabelWidthContextValue, LabeledElementView, LabeledField, type LayoutProps, List, type ListRowMarginType, type ListRowPosition, ListView, type ListViewItemInfo, type ListViewRootProps, Logo, type MatchRange, MediaThumbnail, type MenuComponents, type MenuConfig, type MenuItem, type MenuItemIcon, type MenuItemProps, type MenuItemRole, type MenuProps, MenuViewport, Message, type MessageProps, type NonSelectableMenuItem, type OptionModeOnlyProps, type OptionModeProps, type Optional, type PanelLayoutState, PatternPreviewBackground, type PercentageSidebarOptions, Popover, Progress, RIGHT_SIDEBAR_ID, type RelativeDropPosition, SUPPORTED_CANVAS_UPLOAD_TYPES, SUPPORTED_IMAGE_UPLOAD_TYPES, type ScoredMenuItem, ScrollArea, SearchCompletionMenu, SectionHeader$1 as SectionHeader, type SectionHeaderMenuItem, SegmentedControl, type SegmentedControlItemProps, type SegmentedControlProps, SelectMenu, type SelectableMenuItem, type SeparatorItem, type SetNumberMode, type SideOptions, type SideType, type SidebarRef, type SketchPattern, Slider, Small, Sortable, type SortableItemContextProps, Spacer, type StringModeOnlyProps, type StringModeProps, type SupportedCanvasUploadType, type SupportedImageUploadType, Switch, Text$1 as Text, TextArea, TextAreaRow, type TextProps, type Theme, type ThemeColor, Toast, ToastProvider, Toolbar, ToolbarMenu, type ToolbarProps, Tooltip, TreeView, type UseThemeReturnType, UserPointer, type UserPointerProps, WorkspaceLayout, type WorkspaceLayoutProps, type WorkspaceLayoutRef, colorForStringValues, colorFromString, createSectionedMenu, cssVars, cx, defaultAcceptsDrop, fuzzyFilter, fuzzyScore, fuzzyTokenize, getFieldSpacing, getGradientBackground, getGridSize, getKeyboardShortcutsForMenuItems, getMenuItemKey, getNewValue, getNextIndex, isMenuItemSectionHeader, isNonSelectableMenuItem, isSelectableMenuItem, isSelectableMenuItemWithScore, labeledFieldStyles, mediaQuery, mergeConflictingClassNames, normalizeListTargetIndex, renderIcon, rgbaToSketchColor, separator, size, sketchColorToHex, sketchColorToRgba, sketchColorToRgbaString, styles, textStyles, updateSelection, useAutoResize, useComboboxState, useCurrentFloatingWindowInternal, useDesignSystemConfiguration, useDialogContainsElement, useDialogContext, useFloatingWindowManager, useGlobalInputBlur, useGlobalInputBlurListener, useGlobalInputBlurTrigger, useHover, useImageData, useIndent, useInputFieldContext, useLabel, useLabelPosition, useLabelWidth, useOpenConfirmationDialog, useOpenDialog, useOpenInputDialog, usePlatform, usePlatformModKey, usePreservePanelSize, useTheme, validateDropIndicator, withSeparatorElements };