@noya-app/noya-designsystem 0.1.43 → 0.1.45
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.
- package/.turbo/turbo-build.log +12 -9
- package/CHANGELOG.md +15 -0
- package/dist/index.css +1 -1
- package/dist/index.d.mts +323 -80
- package/dist/index.d.ts +323 -80
- package/dist/index.js +2126 -1373
- package/dist/index.js.map +1 -1
- package/dist/index.mjs +2012 -1272
- package/dist/index.mjs.map +1 -1
- package/package.json +3 -3
- package/src/components/AnimatePresence.tsx +10 -1
- package/src/components/Avatar.tsx +2 -0
- package/src/components/Checkbox.tsx +6 -1
- package/src/components/Combobox.tsx +28 -14
- package/src/components/ComboboxMenu.tsx +30 -15
- package/src/components/CommandPalette.tsx +69 -0
- package/src/components/ContextMenu.tsx +33 -134
- package/src/components/DropdownMenu.tsx +47 -155
- package/src/components/Fade.tsx +62 -0
- package/src/components/InputField.tsx +109 -133
- package/src/components/Label.tsx +81 -7
- package/src/components/LabeledField.tsx +112 -0
- package/src/components/ListView.tsx +55 -52
- package/src/components/Popover.tsx +12 -1
- package/src/components/SearchCompletionMenu.tsx +206 -0
- package/src/components/SegmentedControl.tsx +5 -2
- package/src/components/SelectMenu.tsx +108 -124
- package/src/components/SidebarList.tsx +252 -0
- package/src/components/Slider.tsx +18 -26
- package/src/components/Text.tsx +1 -0
- package/src/components/TextArea.tsx +4 -1
- package/src/components/Toolbar.tsx +6 -2
- package/src/components/TreeView.tsx +3 -0
- package/src/components/WorkspaceLayout.tsx +38 -18
- package/src/components/internal/Menu.tsx +58 -10
- package/src/components/internal/MenuViewport.tsx +151 -0
- package/src/components/internal/SelectItem.tsx +111 -0
- package/src/hooks/useIndent.ts +12 -0
- package/src/hooks/useLabel.ts +51 -0
- package/src/hooks/usePreservePanelSize.tsx +50 -19
- package/src/index.tsx +12 -5
- package/src/utils/combobox.ts +4 -1
- package/src/utils/createSectionedMenu.ts +11 -8
- package/src/utils/selection.ts +36 -0
package/dist/index.d.mts
CHANGED
|
@@ -1,5 +1,5 @@
|
|
|
1
1
|
import * as React from 'react';
|
|
2
|
-
import React__default, { CSSProperties, ReactNode, AriaRole, KeyboardEventHandler, MouseEventHandler, PointerEventHandler, FocusEventHandler, InputHTMLAttributes, HTMLAttributes, ComponentProps, SyntheticEvent, ReactHTML } from 'react';
|
|
2
|
+
import React__default, { CSSProperties, ReactNode, AriaRole, KeyboardEventHandler, MouseEventHandler, PointerEventHandler, FocusEventHandler, InputHTMLAttributes, LabelHTMLAttributes, ForwardedRef, HTMLAttributes, ComponentProps, SyntheticEvent, ReactHTML } from 'react';
|
|
3
3
|
import { IItemScore } from 'vscode-fuzzy-scorer';
|
|
4
4
|
import { Property } from 'csstype';
|
|
5
5
|
import * as Icons from '@noya-app/noya-icons';
|
|
@@ -7,24 +7,27 @@ export { Icons };
|
|
|
7
7
|
import * as _noya_app_noya_geometry from '@noya-app/noya-geometry';
|
|
8
8
|
import { Size } from '@noya-app/noya-geometry';
|
|
9
9
|
import { useSortable } from '@dnd-kit/sortable';
|
|
10
|
+
import * as _noya_app_noya_designsystem from '@noya-app/noya-designsystem';
|
|
11
|
+
import { ComboboxOption as ComboboxOption$1 } from '@noya-app/noya-designsystem';
|
|
10
12
|
import * as DialogPrimitive from '@radix-ui/react-dialog';
|
|
11
13
|
import * as RadixDropdownMenu from '@radix-ui/react-dropdown-menu';
|
|
12
14
|
import { Sketch } from '@noya-app/noya-file-format';
|
|
13
15
|
import * as _noya_app_noya_keymap from '@noya-app/noya-keymap';
|
|
14
16
|
import { KeyModifiers, PlatformName } from '@noya-app/noya-keymap';
|
|
17
|
+
import * as RadixContextMenu from '@radix-ui/react-context-menu';
|
|
15
18
|
import { MultiplayerUser } from '@noya-app/noya-multiplayer-react';
|
|
16
19
|
import * as PopoverPrimitive from '@radix-ui/react-popover';
|
|
17
20
|
import { SelectProps } from '@radix-ui/react-select';
|
|
18
21
|
import { ImperativePanelGroupHandle } from 'react-resizable-panels';
|
|
19
22
|
import { RgbaColor } from '@noya-app/noya-colorpicker';
|
|
20
23
|
|
|
21
|
-
interface Props$
|
|
24
|
+
interface Props$d {
|
|
22
25
|
size?: number;
|
|
23
26
|
opacity?: number;
|
|
24
27
|
color?: string;
|
|
25
28
|
trackColor?: string;
|
|
26
29
|
}
|
|
27
|
-
declare const ActivityIndicator: React.NamedExoticComponent<Props$
|
|
30
|
+
declare const ActivityIndicator: React.NamedExoticComponent<Props$d>;
|
|
28
31
|
|
|
29
32
|
type AnimatePresenceProps = {
|
|
30
33
|
children: React__default.ReactNode;
|
|
@@ -49,8 +52,9 @@ type AnimatePresenceProps = {
|
|
|
49
52
|
* "crossfade" - crossfade between the previous and next animation
|
|
50
53
|
*/
|
|
51
54
|
mode?: "wait" | "crossfade";
|
|
55
|
+
className?: string;
|
|
52
56
|
};
|
|
53
|
-
declare const AnimatePresence: ({ children, duration, animationStyles, skipInitialAnimation, mode, }: AnimatePresenceProps) => React__default.JSX.Element;
|
|
57
|
+
declare const AnimatePresence: ({ children, duration, animationStyles, skipInitialAnimation, mode, className, }: AnimatePresenceProps) => React__default.JSX.Element;
|
|
54
58
|
|
|
55
59
|
type AvatarProps = {
|
|
56
60
|
image?: string;
|
|
@@ -164,7 +168,10 @@ type ComboboxOption = {
|
|
|
164
168
|
id: string;
|
|
165
169
|
name: string;
|
|
166
170
|
icon?: ReactNode;
|
|
171
|
+
shortcut?: string;
|
|
172
|
+
disabled?: boolean;
|
|
167
173
|
alwaysInclude?: boolean;
|
|
174
|
+
checked?: boolean;
|
|
168
175
|
};
|
|
169
176
|
type ComboboxSectionHeader = {
|
|
170
177
|
type: "sectionHeader";
|
|
@@ -207,13 +214,16 @@ declare class ComboboxState {
|
|
|
207
214
|
setSelectedIndex(index: number): void;
|
|
208
215
|
submitArbitraryFilter(filter: string): void;
|
|
209
216
|
}
|
|
217
|
+
declare function getNextIndex<T>(items: T[], currentIndex: number, direction: "next" | "previous", isDisabled: (item: T) => boolean): number;
|
|
210
218
|
declare function useComboboxState(state: ComboboxState): ComboboxStateSnapshot;
|
|
211
219
|
|
|
212
220
|
type IconName = keyof typeof Icons;
|
|
213
221
|
|
|
214
222
|
declare function renderIcon(iconName: Exclude<React.ReactNode, string> | IconName): React.ReactNode;
|
|
215
223
|
|
|
216
|
-
|
|
224
|
+
type SeparatorItem = {
|
|
225
|
+
type: "separator";
|
|
226
|
+
};
|
|
217
227
|
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";
|
|
218
228
|
type RegularMenuItem<T extends string> = {
|
|
219
229
|
value?: T;
|
|
@@ -224,15 +234,38 @@ type RegularMenuItem<T extends string> = {
|
|
|
224
234
|
icon?: Exclude<ReactNode, string> | IconName;
|
|
225
235
|
items?: MenuItem<T>[];
|
|
226
236
|
role?: MenuItemRole;
|
|
237
|
+
type?: undefined;
|
|
238
|
+
alwaysInclude?: boolean;
|
|
227
239
|
};
|
|
228
|
-
type
|
|
240
|
+
type SectionHeaderMenuItem = {
|
|
241
|
+
type: "sectionHeader";
|
|
242
|
+
id: string;
|
|
243
|
+
title: string;
|
|
244
|
+
maxVisibleItems?: number;
|
|
245
|
+
variant?: "normal" | "label";
|
|
246
|
+
};
|
|
247
|
+
type MenuItem<T extends string> = SeparatorItem | RegularMenuItem<T> | SectionHeaderMenuItem;
|
|
229
248
|
type ExtractMenuItemType<T> = T extends RegularMenuItem<infer U> ? U : never;
|
|
249
|
+
declare const CHECKBOX_WIDTH = 16;
|
|
250
|
+
declare const CHECKBOX_RIGHT_INSET = 8;
|
|
251
|
+
declare const styles: {
|
|
252
|
+
separatorStyle: string;
|
|
253
|
+
itemStyle: ({ disabled }: {
|
|
254
|
+
disabled?: boolean;
|
|
255
|
+
}) => string;
|
|
256
|
+
itemIndicatorStyle: string;
|
|
257
|
+
contentStyle: string;
|
|
258
|
+
};
|
|
230
259
|
declare function getKeyboardShortcutsForMenuItems<T extends string>(menuItems: MenuItem<T>[], onSelect: (type: T) => void): Record<string, () => void>;
|
|
231
260
|
declare const KeyboardShortcut: React__default.NamedExoticComponent<{
|
|
232
261
|
shortcut: string;
|
|
233
262
|
}>;
|
|
263
|
+
declare const SectionHeader$1: React__default.NamedExoticComponent<Omit<SectionHeaderMenuItem, "type" | "maxVisibleItems"> & {
|
|
264
|
+
isFirst?: boolean;
|
|
265
|
+
indented?: boolean;
|
|
266
|
+
}>;
|
|
234
267
|
|
|
235
|
-
type Props$
|
|
268
|
+
type Props$c = {
|
|
236
269
|
id?: string;
|
|
237
270
|
style?: any;
|
|
238
271
|
className?: string;
|
|
@@ -250,29 +283,74 @@ type Props$d = {
|
|
|
250
283
|
onFocusChange?: (isFocused: boolean) => void;
|
|
251
284
|
onBlur?: FocusEventHandler;
|
|
252
285
|
} & Pick<InputHTMLAttributes<HTMLInputElement>, "autoComplete" | "autoCapitalize" | "autoCorrect" | "spellCheck" | "autoFocus">;
|
|
253
|
-
type ReadOnlyProps = Props$
|
|
286
|
+
type ReadOnlyProps = Props$c & {
|
|
254
287
|
readOnly: true;
|
|
255
288
|
};
|
|
256
|
-
type ControlledProps = Props$
|
|
289
|
+
type ControlledProps = Props$c & {
|
|
257
290
|
onChange: (value: string) => void;
|
|
258
291
|
onFocus?: FocusEventHandler;
|
|
259
292
|
onBlur?: FocusEventHandler;
|
|
260
293
|
};
|
|
261
|
-
type SubmittableProps = Props$
|
|
294
|
+
type SubmittableProps = Props$c & {
|
|
262
295
|
onSubmit: (value: string) => void;
|
|
263
296
|
allowSubmittingWithSameValue?: boolean;
|
|
264
297
|
submitAutomaticallyAfterDelay?: number;
|
|
265
298
|
};
|
|
266
299
|
type TextInputProps = ReadOnlyProps | ControlledProps | SubmittableProps;
|
|
267
300
|
|
|
268
|
-
type LabelPosition = "start" | "end";
|
|
301
|
+
type LabelPosition = "inset" | "start" | "end" | "above";
|
|
302
|
+
interface LabelProps extends LabelHTMLAttributes<HTMLLabelElement> {
|
|
303
|
+
/** @default start */
|
|
304
|
+
position?: Exclude<LabelPosition, "inset">;
|
|
305
|
+
}
|
|
306
|
+
type InsetLabelProps = {
|
|
307
|
+
/** @default medium */
|
|
308
|
+
size?: InputFieldSize;
|
|
309
|
+
/** 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 */
|
|
310
|
+
buttonSize?: number;
|
|
311
|
+
} & LabelHTMLAttributes<HTMLLabelElement>;
|
|
312
|
+
declare const insetLabelTextStyles = "font-sans text-label uppercase text-text-disabled leading-[19px] font-bold text-[60%] truncate pointer-events-none text-right";
|
|
313
|
+
declare const insetLabelStyles = "flex items-center absolute top-0 bottom-0 z-label";
|
|
314
|
+
declare const InsetLabel: React__default.MemoExoticComponent<React__default.ForwardRefExoticComponent<{
|
|
315
|
+
/** @default medium */
|
|
316
|
+
size?: InputFieldSize;
|
|
317
|
+
/** 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 */
|
|
318
|
+
buttonSize?: number;
|
|
319
|
+
} & React__default.LabelHTMLAttributes<HTMLLabelElement> & React__default.RefAttributes<HTMLLabelElement>>>;
|
|
320
|
+
declare const Label: React__default.MemoExoticComponent<React__default.ForwardRefExoticComponent<LabelProps & React__default.RefAttributes<HTMLLabelElement>>>;
|
|
321
|
+
|
|
269
322
|
type InputFieldSize = "small" | "medium" | "large";
|
|
323
|
+
type InputFieldContextValue = {
|
|
324
|
+
labelSize?: number;
|
|
325
|
+
buttonSize?: number;
|
|
326
|
+
/** @default medium */
|
|
327
|
+
size: InputFieldSize;
|
|
328
|
+
isFocused: boolean;
|
|
329
|
+
onFocusChange: (isFocused: boolean) => void;
|
|
330
|
+
inputRef?: ForwardedRef<HTMLInputElement>;
|
|
331
|
+
setInputRef?: (ref: ForwardedRef<HTMLInputElement>) => void;
|
|
332
|
+
setLabelWidth?: (width: number) => void;
|
|
333
|
+
setButtonWidth?: (width: number) => void;
|
|
334
|
+
id?: string;
|
|
335
|
+
label?: ReactNode;
|
|
336
|
+
labelPosition?: LabelPosition;
|
|
337
|
+
};
|
|
338
|
+
declare const useInputFieldContext: () => InputFieldContextValue;
|
|
339
|
+
declare const getFieldSpacing: ({ buttonSize, labelSize, variant, }: {
|
|
340
|
+
buttonSize?: number;
|
|
341
|
+
labelSize?: number;
|
|
342
|
+
variant?: InputFieldVariant;
|
|
343
|
+
}) => {
|
|
344
|
+
paddingLeft: string;
|
|
345
|
+
paddingRight: string;
|
|
346
|
+
};
|
|
270
347
|
interface InputFieldDropdownProps<T extends string> {
|
|
271
348
|
id?: string;
|
|
272
349
|
items: MenuItem<T>[];
|
|
273
350
|
onSelect: (value: T) => void;
|
|
274
351
|
children?: ReactNode;
|
|
275
352
|
}
|
|
353
|
+
type InputFieldVariant = "normal" | "bare";
|
|
276
354
|
type InputFieldInputProps = TextInputProps & {
|
|
277
355
|
textAlign?: Property.TextAlign;
|
|
278
356
|
variant?: "bare";
|
|
@@ -284,6 +362,7 @@ type InputFieldNumberInputProps = Omit<TextInputProps, "value" | "onChange" | "o
|
|
|
284
362
|
onFocus?: FocusEventHandler;
|
|
285
363
|
onBlur?: FocusEventHandler;
|
|
286
364
|
readOnly?: boolean;
|
|
365
|
+
className?: string;
|
|
287
366
|
} & ({
|
|
288
367
|
onChange: (value: number) => void;
|
|
289
368
|
} | {
|
|
@@ -294,8 +373,6 @@ interface InputFieldRootProps {
|
|
|
294
373
|
id?: string;
|
|
295
374
|
children?: ReactNode;
|
|
296
375
|
width?: number;
|
|
297
|
-
/** @default end */
|
|
298
|
-
labelPosition?: LabelPosition;
|
|
299
376
|
labelSize?: number;
|
|
300
377
|
/** @default medium */
|
|
301
378
|
size?: InputFieldSize;
|
|
@@ -311,27 +388,28 @@ interface InputFieldRootProps {
|
|
|
311
388
|
style?: React__default.CSSProperties;
|
|
312
389
|
className?: string;
|
|
313
390
|
}
|
|
314
|
-
declare function InputFieldRoot({ id, children, width,
|
|
315
|
-
|
|
316
|
-
|
|
317
|
-
|
|
318
|
-
|
|
391
|
+
declare function InputFieldRoot({ id: idProp, children, width, sideOffset, labelSize, size, renderPopoverContent, onFocusChange, style, className, }: InputFieldRootProps): React__default.JSX.Element;
|
|
392
|
+
type InputFieldProps = InputFieldRootProps & InputFieldInputProps;
|
|
393
|
+
declare const InputField: React__default.ForwardRefExoticComponent<InputFieldProps & React__default.RefAttributes<HTMLInputElement>> & {
|
|
394
|
+
readonly Root: React__default.MemoExoticComponent<typeof InputFieldRoot>;
|
|
395
|
+
readonly Input: React__default.MemoExoticComponent<React__default.ForwardRefExoticComponent<InputFieldInputProps & React__default.RefAttributes<HTMLInputElement>>>;
|
|
396
|
+
readonly Typeahead: React__default.MemoExoticComponent<(props: {
|
|
319
397
|
prefix: string;
|
|
320
398
|
value: string;
|
|
321
399
|
isFocused: boolean;
|
|
322
400
|
}) => React__default.JSX.Element>;
|
|
323
|
-
|
|
324
|
-
|
|
325
|
-
|
|
401
|
+
readonly NumberInput: React__default.MemoExoticComponent<typeof InputFieldNumberInput>;
|
|
402
|
+
readonly DropdownMenu: <T extends string>(props: InputFieldDropdownProps<T>) => React__default.ReactElement | null;
|
|
403
|
+
readonly Button: React__default.MemoExoticComponent<React__default.ForwardRefExoticComponent<React__default.ButtonHTMLAttributes<HTMLButtonElement> & ButtonRootProps & {
|
|
326
404
|
buttonClassName?: string;
|
|
327
405
|
variant?: "floating" | "normal";
|
|
328
406
|
} & React__default.RefAttributes<HTMLButtonElement>>>;
|
|
329
|
-
|
|
330
|
-
|
|
407
|
+
readonly Label: React__default.MemoExoticComponent<React__default.ForwardRefExoticComponent<React__default.LabelHTMLAttributes<HTMLLabelElement> & React__default.RefAttributes<HTMLLabelElement>>>;
|
|
408
|
+
readonly PrimitiveElement: ({ readOnly, disabled, className, style, ...props }: {
|
|
331
409
|
readOnly?: boolean;
|
|
332
410
|
disabled?: boolean;
|
|
333
411
|
} & React__default.DetailedHTMLProps<React__default.InputHTMLAttributes<HTMLInputElement>, HTMLInputElement>) => React__default.JSX.Element;
|
|
334
|
-
}
|
|
412
|
+
};
|
|
335
413
|
|
|
336
414
|
type BaseComboboxProps = {
|
|
337
415
|
id?: string;
|
|
@@ -352,7 +430,7 @@ type BaseComboboxProps = {
|
|
|
352
430
|
};
|
|
353
431
|
type StringModeOnlyProps = {
|
|
354
432
|
mode: "string";
|
|
355
|
-
|
|
433
|
+
value?: string;
|
|
356
434
|
onChange?: (value: string) => void;
|
|
357
435
|
onSelectItem?: (value: string) => void;
|
|
358
436
|
onBlur?: (didSubmit: boolean, value: string) => void;
|
|
@@ -362,7 +440,7 @@ type StringModeOnlyProps = {
|
|
|
362
440
|
type StringModeProps = BaseComboboxProps & StringModeOnlyProps;
|
|
363
441
|
type OptionModeOnlyProps = {
|
|
364
442
|
mode?: "option";
|
|
365
|
-
|
|
443
|
+
value?: ComboboxOption;
|
|
366
444
|
onChange?: (value: ComboboxOption) => void;
|
|
367
445
|
onSelectItem?: (value: ComboboxOption) => void;
|
|
368
446
|
onBlur?: (didSubmit: boolean, value: ComboboxOption) => void;
|
|
@@ -426,8 +504,9 @@ interface EditableRowProps {
|
|
|
426
504
|
onSubmitEditing: (value: string) => void;
|
|
427
505
|
autoFocus: boolean;
|
|
428
506
|
placeholder?: string;
|
|
507
|
+
className?: string;
|
|
429
508
|
}
|
|
430
|
-
declare function ListViewEditableRowTitle({ value, onSubmitEditing, autoFocus, placeholder, }: EditableRowProps): React__default.JSX.Element;
|
|
509
|
+
declare function ListViewEditableRowTitle({ value, onSubmitEditing, autoFocus, placeholder, className, }: EditableRowProps): React__default.JSX.Element;
|
|
431
510
|
interface ListViewClickInfo {
|
|
432
511
|
shiftKey: boolean;
|
|
433
512
|
altKey: boolean;
|
|
@@ -437,6 +516,7 @@ interface ListViewClickInfo {
|
|
|
437
516
|
interface ListViewRowProps<MenuItemType extends string = string> {
|
|
438
517
|
id?: string;
|
|
439
518
|
tabIndex?: number;
|
|
519
|
+
role?: string;
|
|
440
520
|
selected?: boolean;
|
|
441
521
|
/** @default 0 */
|
|
442
522
|
depth?: number;
|
|
@@ -484,12 +564,16 @@ type RenderProps<T> = {
|
|
|
484
564
|
sortable?: boolean;
|
|
485
565
|
virtualized?: Size;
|
|
486
566
|
};
|
|
487
|
-
type ListViewVariant = "normal" | "
|
|
567
|
+
type ListViewVariant = "normal" | "bare";
|
|
488
568
|
type ListViewSectionHeaderVariant = "normal" | "label";
|
|
489
569
|
type ListViewRootProps = {
|
|
490
570
|
id?: string;
|
|
491
571
|
className?: string;
|
|
492
572
|
style?: CSSProperties;
|
|
573
|
+
role?: string;
|
|
574
|
+
"aria-labelledby"?: string;
|
|
575
|
+
"aria-orientation"?: "vertical" | "horizontal";
|
|
576
|
+
"aria-multiselectable"?: boolean;
|
|
493
577
|
onPress?: () => void;
|
|
494
578
|
scrollable?: boolean;
|
|
495
579
|
expandable?: boolean;
|
|
@@ -502,6 +586,11 @@ type ListViewRootProps = {
|
|
|
502
586
|
divider?: boolean;
|
|
503
587
|
gap?: number;
|
|
504
588
|
colorScheme?: ListColorScheme;
|
|
589
|
+
containerRef?: React__default.RefObject<HTMLDivElement>;
|
|
590
|
+
onDragOver?: React__default.DragEventHandler<HTMLDivElement>;
|
|
591
|
+
onDragEnter?: React__default.DragEventHandler<HTMLDivElement>;
|
|
592
|
+
onDragLeave?: React__default.DragEventHandler<HTMLDivElement>;
|
|
593
|
+
onDrop?: React__default.DragEventHandler<HTMLDivElement>;
|
|
505
594
|
};
|
|
506
595
|
declare namespace ListView {
|
|
507
596
|
const RowTitle: React__default.MemoExoticComponent<({ className, children, ...props }: {
|
|
@@ -538,6 +627,28 @@ interface ComboboxMenuProps {
|
|
|
538
627
|
}
|
|
539
628
|
declare const ComboboxMenu: React__default.MemoExoticComponent<React__default.ForwardRefExoticComponent<ComboboxMenuProps & React__default.RefAttributes<IVirtualizedList>>>;
|
|
540
629
|
|
|
630
|
+
interface ISearchCompletionMenu {
|
|
631
|
+
focus: () => void;
|
|
632
|
+
}
|
|
633
|
+
declare const SearchCompletionMenu: React__default.ForwardRefExoticComponent<{
|
|
634
|
+
onSelect: (item: ComboboxOption$1) => void;
|
|
635
|
+
onHover?: (item: ComboboxOption$1) => void;
|
|
636
|
+
onClose: () => void;
|
|
637
|
+
items: ComboboxOption$1[];
|
|
638
|
+
width?: number;
|
|
639
|
+
} & React__default.RefAttributes<ISearchCompletionMenu>>;
|
|
640
|
+
|
|
641
|
+
declare const CommandPalette: React__default.NamedExoticComponent<{
|
|
642
|
+
showCommandPalette: boolean;
|
|
643
|
+
setShowCommandPalette: (value: boolean) => void;
|
|
644
|
+
} & Pick<{
|
|
645
|
+
onSelect: (item: _noya_app_noya_designsystem.ComboboxOption) => void;
|
|
646
|
+
onHover?: (item: _noya_app_noya_designsystem.ComboboxOption) => void;
|
|
647
|
+
onClose: () => void;
|
|
648
|
+
items: _noya_app_noya_designsystem.ComboboxOption[];
|
|
649
|
+
width?: number;
|
|
650
|
+
} & React__default.RefAttributes<ISearchCompletionMenu>, "onSelect" | "items" | "onHover">>;
|
|
651
|
+
|
|
541
652
|
interface MenuItemProps<T extends string> {
|
|
542
653
|
value?: T;
|
|
543
654
|
children: ReactNode;
|
|
@@ -553,7 +664,6 @@ interface MenuProps<T extends string> {
|
|
|
553
664
|
children: ReactNode;
|
|
554
665
|
items: MenuItem<T>[];
|
|
555
666
|
onSelect: (value: T) => void;
|
|
556
|
-
isNested?: boolean;
|
|
557
667
|
shouldBindKeyboardShortcuts?: boolean;
|
|
558
668
|
onOpenChange?: (open: boolean) => void;
|
|
559
669
|
}
|
|
@@ -563,7 +673,7 @@ declare const StyledContent: React__default.ForwardRefExoticComponent<Omit<Dialo
|
|
|
563
673
|
interface IDialog {
|
|
564
674
|
containsElement: (element: HTMLElement) => boolean;
|
|
565
675
|
}
|
|
566
|
-
interface Props$
|
|
676
|
+
interface Props$b {
|
|
567
677
|
title?: ReactNode;
|
|
568
678
|
description?: ReactNode;
|
|
569
679
|
children?: ReactNode;
|
|
@@ -575,8 +685,8 @@ interface Props$c {
|
|
|
575
685
|
showCloseButton?: boolean;
|
|
576
686
|
className?: string;
|
|
577
687
|
}
|
|
578
|
-
declare const Dialog: React__default.ForwardRefExoticComponent<Props$
|
|
579
|
-
declare const FullscreenDialog: React__default.ForwardRefExoticComponent<Props$
|
|
688
|
+
declare const Dialog: React__default.ForwardRefExoticComponent<Props$b & React__default.RefAttributes<IDialog>>;
|
|
689
|
+
declare const FullscreenDialog: React__default.ForwardRefExoticComponent<Props$b & React__default.RefAttributes<IDialog>>;
|
|
580
690
|
|
|
581
691
|
type DividerVariant = "normal" | "subtle" | "strong";
|
|
582
692
|
interface DividerProps {
|
|
@@ -597,12 +707,35 @@ declare const DraggableMenuButton: <T extends string>(props: {
|
|
|
597
707
|
isVisible?: boolean;
|
|
598
708
|
}) => React__default.ReactElement | null;
|
|
599
709
|
|
|
710
|
+
type DropdownRootProps<T extends string> = MenuProps<T> & {
|
|
711
|
+
open?: boolean;
|
|
712
|
+
onCloseAutoFocus?: React__default.EventHandler<SyntheticEvent<unknown>>;
|
|
713
|
+
emptyState?: React__default.ReactNode;
|
|
714
|
+
contentStyle?: React__default.CSSProperties;
|
|
715
|
+
} & Pick<ComponentProps<typeof RadixDropdownMenu.Content>, "side" | "sideOffset" | "align" | "alignOffset" | "collisionPadding">;
|
|
600
716
|
declare const DropdownMenu: <T extends string>(props: MenuProps<T> & {
|
|
601
717
|
open?: boolean;
|
|
602
718
|
onCloseAutoFocus?: React__default.EventHandler<SyntheticEvent<unknown>>;
|
|
603
719
|
emptyState?: React__default.ReactNode;
|
|
720
|
+
contentStyle?: React__default.CSSProperties;
|
|
604
721
|
} & Pick<RadixDropdownMenu.DropdownMenuContentProps & React__default.RefAttributes<HTMLDivElement>, "align" | "side" | "sideOffset" | "alignOffset" | "collisionPadding"> & React__default.RefAttributes<HTMLElement>) => React__default.ReactElement | null;
|
|
605
722
|
|
|
723
|
+
type FadeDirection = "left" | "right" | "top" | "bottom";
|
|
724
|
+
type FadeProps = {
|
|
725
|
+
children: ReactNode;
|
|
726
|
+
direction?: FadeDirection;
|
|
727
|
+
width?: number;
|
|
728
|
+
height?: number;
|
|
729
|
+
className?: string;
|
|
730
|
+
zIndex?: number;
|
|
731
|
+
/**
|
|
732
|
+
* @default "front"
|
|
733
|
+
* If "back", the fade will be positioned behind the children
|
|
734
|
+
*/
|
|
735
|
+
position?: "front" | "back";
|
|
736
|
+
};
|
|
737
|
+
declare const Fade: ({ children, direction, width, height, className, zIndex, position, }: FadeProps) => React__default.JSX.Element;
|
|
738
|
+
|
|
606
739
|
declare const SUPPORTED_IMAGE_UPLOAD_TYPES: ("image/png" | "image/jpeg" | "image/webp" | "image/svg+xml" | "application/pdf")[];
|
|
607
740
|
declare const SUPPORTED_CANVAS_UPLOAD_TYPES: ("" | "image/png" | "image/jpeg" | "image/webp" | "image/svg+xml" | "application/pdf")[];
|
|
608
741
|
type SupportedImageUploadType = (typeof SUPPORTED_IMAGE_UPLOAD_TYPES)[number];
|
|
@@ -614,21 +747,21 @@ type SketchPattern = {
|
|
|
614
747
|
patternTileScale: number;
|
|
615
748
|
};
|
|
616
749
|
|
|
617
|
-
interface Props$
|
|
750
|
+
interface Props$a {
|
|
618
751
|
id?: string;
|
|
619
752
|
value?: Sketch.Color | Sketch.Gradient | SketchPattern;
|
|
620
753
|
}
|
|
621
|
-
declare const FillInputField: React__default.MemoExoticComponent<React__default.ForwardRefExoticComponent<Props$
|
|
754
|
+
declare const FillInputField: React__default.MemoExoticComponent<React__default.ForwardRefExoticComponent<Props$a & React__default.RefAttributes<HTMLButtonElement>>>;
|
|
622
755
|
|
|
623
756
|
declare const PatternPreviewBackground: React.NamedExoticComponent<{
|
|
624
757
|
fillType: Sketch.PatternFillType;
|
|
625
758
|
tileScale: number;
|
|
626
759
|
imageRef: string;
|
|
627
760
|
}>;
|
|
628
|
-
interface Props$
|
|
761
|
+
interface Props$9 {
|
|
629
762
|
value?: Sketch.Color | Sketch.Gradient | SketchPattern;
|
|
630
763
|
}
|
|
631
|
-
declare const FillPreviewBackground: React.NamedExoticComponent<Props$
|
|
764
|
+
declare const FillPreviewBackground: React.NamedExoticComponent<Props$9>;
|
|
632
765
|
|
|
633
766
|
interface FloatingWindowProps {
|
|
634
767
|
title?: string;
|
|
@@ -649,7 +782,7 @@ interface FloatingWindowProps {
|
|
|
649
782
|
}
|
|
650
783
|
declare const FloatingWindow: React__default.FC<FloatingWindowProps>;
|
|
651
784
|
|
|
652
|
-
interface Props$
|
|
785
|
+
interface Props$8 {
|
|
653
786
|
value: Sketch.GradientStop[];
|
|
654
787
|
selectedStop: number;
|
|
655
788
|
onChangeColor: (color: Sketch.Color) => void;
|
|
@@ -658,7 +791,7 @@ interface Props$9 {
|
|
|
658
791
|
onDelete: () => void;
|
|
659
792
|
onSelectStop: (index: number) => void;
|
|
660
793
|
}
|
|
661
|
-
declare const GradientPicker: React.NamedExoticComponent<Props$
|
|
794
|
+
declare const GradientPicker: React.NamedExoticComponent<Props$8>;
|
|
662
795
|
|
|
663
796
|
type GridViewSize = "xxs" | "xs" | "small" | "medium" | "large" | "xl";
|
|
664
797
|
interface ItemProps<MenuItemType extends string = string> {
|
|
@@ -722,9 +855,47 @@ declare const InspectorContainer: React__default.MemoExoticComponent<React__defa
|
|
|
722
855
|
style?: React__default.CSSProperties;
|
|
723
856
|
} & React__default.RefAttributes<HTMLDivElement>>>;
|
|
724
857
|
|
|
725
|
-
|
|
726
|
-
|
|
727
|
-
|
|
858
|
+
type MenuSeparatorComponent = React__default.FC<{
|
|
859
|
+
className?: string;
|
|
860
|
+
}>;
|
|
861
|
+
type MenuItemTextComponent = React__default.FC<{
|
|
862
|
+
children?: React__default.ReactNode;
|
|
863
|
+
}>;
|
|
864
|
+
type MenuItemComponent = React__default.ForwardRefExoticComponent<React__default.RefAttributes<HTMLDivElement> & React__default.PropsWithoutRef<{
|
|
865
|
+
className?: string;
|
|
866
|
+
disabled?: boolean;
|
|
867
|
+
children?: React__default.ReactNode;
|
|
868
|
+
value: string;
|
|
869
|
+
onSelect?: (event: any) => void;
|
|
870
|
+
}>>;
|
|
871
|
+
type MenuCheckboxItemComponent = React__default.FC<{
|
|
872
|
+
checked?: boolean | "indeterminate";
|
|
873
|
+
disabled?: boolean;
|
|
874
|
+
onSelect?: (event: any) => void;
|
|
875
|
+
className?: string;
|
|
876
|
+
children?: React__default.ReactNode;
|
|
877
|
+
}>;
|
|
878
|
+
type MenuItemIndicatorComponent = React__default.FC<{
|
|
879
|
+
className?: string;
|
|
880
|
+
children?: React__default.ReactNode;
|
|
881
|
+
}>;
|
|
882
|
+
type MenuComponents = {
|
|
883
|
+
Separator: MenuSeparatorComponent;
|
|
884
|
+
ItemText: MenuItemTextComponent;
|
|
885
|
+
Item: MenuItemComponent;
|
|
886
|
+
CheckboxItem?: MenuCheckboxItemComponent;
|
|
887
|
+
ItemIndicator?: MenuItemIndicatorComponent;
|
|
888
|
+
Sub?: typeof RadixDropdownMenu.Sub | typeof RadixContextMenu.Sub;
|
|
889
|
+
SubTrigger?: typeof RadixDropdownMenu.SubTrigger | typeof RadixContextMenu.SubTrigger;
|
|
890
|
+
SubContent?: typeof RadixDropdownMenu.SubContent | typeof RadixContextMenu.SubContent;
|
|
891
|
+
Portal?: typeof RadixDropdownMenu.Portal | typeof RadixContextMenu.Portal;
|
|
892
|
+
};
|
|
893
|
+
type MenuViewportProps<T extends string> = {
|
|
894
|
+
items: MenuItem<T>[];
|
|
895
|
+
Components: MenuComponents;
|
|
896
|
+
onSelect?: (value: any) => void;
|
|
897
|
+
};
|
|
898
|
+
declare const MenuViewport: <T extends string>({ items, Components, onSelect, }: MenuViewportProps<T>) => React__default.JSX.Element;
|
|
728
899
|
|
|
729
900
|
interface ContainerProps {
|
|
730
901
|
children: React.ReactNode;
|
|
@@ -735,6 +906,19 @@ interface ContainerProps {
|
|
|
735
906
|
}
|
|
736
907
|
declare const LabeledElementView: React.NamedExoticComponent<ContainerProps>;
|
|
737
908
|
|
|
909
|
+
declare const labeledFieldStyles: (labelPosition?: LabelPosition) => string;
|
|
910
|
+
declare const LabeledField: React__default.NamedExoticComponent<{
|
|
911
|
+
children: React__default.ReactNode;
|
|
912
|
+
label: React__default.ReactNode;
|
|
913
|
+
labelPosition?: LabelPosition;
|
|
914
|
+
/** Used for both the `id` of the field and the `htmlFor` of the label, unless `id` and `htmlFor` are explicitly provided */
|
|
915
|
+
fieldId?: string;
|
|
916
|
+
className?: string;
|
|
917
|
+
style?: React__default.CSSProperties;
|
|
918
|
+
/** @default 100 */
|
|
919
|
+
minWidth?: number;
|
|
920
|
+
}>;
|
|
921
|
+
|
|
738
922
|
type MessageProps = {
|
|
739
923
|
role: "user" | "assistant" | "system" | "data";
|
|
740
924
|
children?: React__default.ReactNode;
|
|
@@ -745,7 +929,7 @@ type MessageProps = {
|
|
|
745
929
|
declare const Message: React__default.MemoExoticComponent<React__default.ForwardRefExoticComponent<MessageProps & React__default.RefAttributes<HTMLDivElement>>>;
|
|
746
930
|
|
|
747
931
|
type PopoverVariant = "normal" | "large";
|
|
748
|
-
interface Props$
|
|
932
|
+
interface Props$7 extends Pick<ComponentProps<(typeof PopoverPrimitive)["Content"]>, "onOpenAutoFocus" | "onCloseAutoFocus" | "onPointerDownOutside" | "onInteractOutside" | "onFocusOutside" | "side"> {
|
|
749
933
|
children: React__default.ReactNode;
|
|
750
934
|
trigger: React__default.ReactNode;
|
|
751
935
|
variant?: PopoverVariant;
|
|
@@ -755,8 +939,9 @@ interface Props$8 extends Pick<ComponentProps<(typeof PopoverPrimitive)["Content
|
|
|
755
939
|
sideOffset?: number;
|
|
756
940
|
onClickClose?: () => void;
|
|
757
941
|
showArrow?: boolean;
|
|
942
|
+
className?: string;
|
|
758
943
|
}
|
|
759
|
-
declare function Popover({ children, trigger, variant, closable, open, side, sideOffset, showArrow, onOpenChange, onOpenAutoFocus, onCloseAutoFocus, onPointerDownOutside, onInteractOutside, onFocusOutside, onClickClose, }: Props$
|
|
944
|
+
declare function Popover({ children, trigger, variant, closable, open, side, sideOffset, showArrow, onOpenChange, onOpenAutoFocus, onCloseAutoFocus, onPointerDownOutside, onInteractOutside, onFocusOutside, onClickClose, className, }: Props$7): React__default.JSX.Element;
|
|
760
945
|
|
|
761
946
|
type ProgressVariant = "normal" | "warning" | "primary" | "secondary";
|
|
762
947
|
declare function Progress({ value, variant, className, }: {
|
|
@@ -765,10 +950,10 @@ declare function Progress({ value, variant, className, }: {
|
|
|
765
950
|
className?: string;
|
|
766
951
|
}): React.JSX.Element;
|
|
767
952
|
|
|
768
|
-
interface Props$
|
|
953
|
+
interface Props$6 {
|
|
769
954
|
children?: React.ReactNode | ((scrollElementRef: HTMLDivElement) => React.ReactNode);
|
|
770
955
|
}
|
|
771
|
-
declare const ScrollArea: React.NamedExoticComponent<Props$
|
|
956
|
+
declare const ScrollArea: React.NamedExoticComponent<Props$6>;
|
|
772
957
|
|
|
773
958
|
type SegmentedControlColorScheme = "primary" | "secondary";
|
|
774
959
|
interface SegmentedControlProps<T extends string> {
|
|
@@ -789,13 +974,13 @@ type SegmentedControlItemProps<T extends string> = {
|
|
|
789
974
|
style?: React__default.CSSProperties;
|
|
790
975
|
tooltip?: ReactNode;
|
|
791
976
|
} & Pick<RegularMenuItem<T>, "value" | "disabled" | "icon" | "role">;
|
|
792
|
-
declare const SegmentedControl: React__default.MemoExoticComponent<(<T extends string>({ id, value, onValueChange, colorScheme, allowEmpty, items, separator, className, style, }: SegmentedControlProps<T>) => React__default.JSX.Element)>;
|
|
977
|
+
declare const SegmentedControl: React__default.MemoExoticComponent<(<T extends string>({ id: idProp, value, onValueChange, colorScheme, allowEmpty, items, separator, className, style, }: SegmentedControlProps<T>) => React__default.JSX.Element)>;
|
|
793
978
|
|
|
794
|
-
type Props$
|
|
979
|
+
type Props$5<T extends string> = {
|
|
795
980
|
id?: string;
|
|
796
981
|
style?: React__default.CSSProperties;
|
|
797
982
|
className?: string;
|
|
798
|
-
|
|
983
|
+
items: MenuItem<T>[];
|
|
799
984
|
value: T;
|
|
800
985
|
onSelect?: (value: T) => void;
|
|
801
986
|
placeholder?: string;
|
|
@@ -804,12 +989,44 @@ type Props$6<T extends string> = {
|
|
|
804
989
|
label?: React__default.ReactNode;
|
|
805
990
|
onFocus?: FocusEventHandler;
|
|
806
991
|
onBlur?: FocusEventHandler;
|
|
992
|
+
contentStyle?: React__default.CSSProperties;
|
|
807
993
|
} & Pick<SelectProps, "open" | "onOpenChange">;
|
|
808
|
-
declare const
|
|
809
|
-
|
|
994
|
+
declare const SelectMenu: <T extends string = string>(props: Props$5<T>) => React__default.ReactElement | null;
|
|
995
|
+
|
|
996
|
+
interface SidebarListProps<T, M extends string = string> {
|
|
997
|
+
className?: string;
|
|
998
|
+
items: T[];
|
|
999
|
+
getId: (item: T) => string;
|
|
1000
|
+
getName: (item: T) => string;
|
|
1001
|
+
getExpanded?: (item: T) => boolean | undefined;
|
|
1002
|
+
expandable?: boolean;
|
|
1003
|
+
menuItems?: MenuItem<M>[];
|
|
1004
|
+
onSelectMenuItem?: (action: M, selectedItems: T[]) => void;
|
|
1005
|
+
onRename?: (itemId: string, newName: string) => void;
|
|
1006
|
+
renderThumbnail?: (item: T) => React__default.ReactNode;
|
|
1007
|
+
renderHoverAction?: (item: T, selected: boolean) => React__default.ReactNode;
|
|
1008
|
+
renderDetail?: (item: T) => React__default.ReactNode;
|
|
1009
|
+
onSelectionChange?: (selectedItems: T[]) => void;
|
|
1010
|
+
scrollable?: boolean;
|
|
1011
|
+
itemRoleDescription?: string;
|
|
1012
|
+
/** Position of the detail content. Defaults to 'end'. */
|
|
1013
|
+
detailPosition?: "end" | "below";
|
|
1014
|
+
/** Size of the list items. Defaults to 'medium'. */
|
|
1015
|
+
size?: "medium" | "large";
|
|
1016
|
+
/** For testing: Override the hover state with a specific item ID */
|
|
1017
|
+
testHoveredId?: string;
|
|
1018
|
+
/** For testing: Override the renaming state with a specific item ID */
|
|
1019
|
+
testRenamingId?: string;
|
|
1020
|
+
setExpanded?: (item: T, expanded: boolean) => void;
|
|
1021
|
+
acceptsDrop?: ListViewRootProps["acceptsDrop"];
|
|
1022
|
+
onMoveItem?: ListViewRootProps["onMoveItem"];
|
|
1023
|
+
getDepth?: (item: T) => number;
|
|
1024
|
+
onFilesDrop?: (event: React__default.DragEvent<Element>) => void;
|
|
1025
|
+
}
|
|
1026
|
+
declare function SidebarList<T, M extends string = string>({ className, items, getId, getName, expandable, getExpanded, getDepth, setExpanded, menuItems, onSelectMenuItem, onRename, renderThumbnail, renderHoverAction, renderDetail, onSelectionChange, itemRoleDescription, detailPosition, size, testHoveredId, testRenamingId, scrollable, acceptsDrop, onMoveItem, onFilesDrop, }: SidebarListProps<T, M>): React__default.JSX.Element;
|
|
810
1027
|
|
|
811
1028
|
type ColorScheme = "primary" | "secondary";
|
|
812
|
-
interface Props$
|
|
1029
|
+
interface Props$4 {
|
|
813
1030
|
id?: string;
|
|
814
1031
|
style?: React__default.CSSProperties;
|
|
815
1032
|
className?: string;
|
|
@@ -824,19 +1041,19 @@ interface Props$5 {
|
|
|
824
1041
|
onBlur?: FocusEventHandler;
|
|
825
1042
|
readOnly?: boolean;
|
|
826
1043
|
}
|
|
827
|
-
declare const Slider: React__default.NamedExoticComponent<Props$
|
|
1044
|
+
declare const Slider: React__default.NamedExoticComponent<Props$4>;
|
|
828
1045
|
|
|
829
|
-
interface Props$
|
|
1046
|
+
interface Props$3 {
|
|
830
1047
|
size?: number | string;
|
|
831
1048
|
inline?: boolean;
|
|
832
1049
|
}
|
|
833
1050
|
declare namespace Spacer {
|
|
834
|
-
const Vertical: React.ForwardRefExoticComponent<Props$
|
|
835
|
-
const Horizontal: React.ForwardRefExoticComponent<Props$
|
|
1051
|
+
const Vertical: React.ForwardRefExoticComponent<Props$3 & React.RefAttributes<HTMLSpanElement>>;
|
|
1052
|
+
const Horizontal: React.ForwardRefExoticComponent<Props$3 & React.RefAttributes<HTMLSpanElement>>;
|
|
836
1053
|
}
|
|
837
1054
|
|
|
838
1055
|
type SwitchColorScheme = "primary" | "secondary";
|
|
839
|
-
interface Props$
|
|
1056
|
+
interface Props$2 {
|
|
840
1057
|
id?: string;
|
|
841
1058
|
value: boolean;
|
|
842
1059
|
onChange: (value: boolean) => void;
|
|
@@ -848,7 +1065,7 @@ interface Props$3 {
|
|
|
848
1065
|
className?: string;
|
|
849
1066
|
style?: React.CSSProperties;
|
|
850
1067
|
}
|
|
851
|
-
declare const Switch: ({ id, value, onChange, colorScheme, disabled, onFocus, onBlur, style, className, }: Props$
|
|
1068
|
+
declare const Switch: ({ id, value, onChange, colorScheme, disabled, onFocus, onBlur, style, className, }: Props$2) => React.JSX.Element;
|
|
852
1069
|
|
|
853
1070
|
declare const config: {
|
|
854
1071
|
content: string[];
|
|
@@ -1195,6 +1412,7 @@ type TextProps = {
|
|
|
1195
1412
|
variant: Variant;
|
|
1196
1413
|
color?: KebabToCamelCase<ThemeColor>;
|
|
1197
1414
|
children: ReactNode;
|
|
1415
|
+
id?: string;
|
|
1198
1416
|
onClick?: () => void;
|
|
1199
1417
|
onDoubleClick?: () => void;
|
|
1200
1418
|
onKeyDown?: (event: React__default.KeyboardEvent<HTMLSpanElement>) => void;
|
|
@@ -1242,15 +1460,16 @@ declare const ToastProvider: ({ children }: {
|
|
|
1242
1460
|
children: React__default.ReactNode;
|
|
1243
1461
|
}) => React__default.JSX.Element;
|
|
1244
1462
|
|
|
1245
|
-
interface Props$
|
|
1463
|
+
interface Props$1 {
|
|
1246
1464
|
children: React.ReactNode;
|
|
1247
1465
|
content: React.ReactNode;
|
|
1248
1466
|
}
|
|
1249
|
-
declare const Tooltip: React.NamedExoticComponent<Props$
|
|
1467
|
+
declare const Tooltip: React.NamedExoticComponent<Props$1>;
|
|
1250
1468
|
|
|
1251
1469
|
type TreeRowBaseProps = {
|
|
1252
1470
|
icon?: Exclude<ReactNode, string> | IconName;
|
|
1253
1471
|
expanded?: boolean;
|
|
1472
|
+
chevronClassName?: string;
|
|
1254
1473
|
onClickChevron?: ({ altKey }: {
|
|
1255
1474
|
altKey: boolean;
|
|
1256
1475
|
}) => void;
|
|
@@ -1267,28 +1486,12 @@ declare namespace TreeView {
|
|
|
1267
1486
|
keyExtractor: (item: T, index: number) => string;
|
|
1268
1487
|
sortable?: boolean;
|
|
1269
1488
|
virtualized?: _noya_app_noya_geometry.Size;
|
|
1270
|
-
}) &
|
|
1271
|
-
id?: string;
|
|
1272
|
-
className?: string;
|
|
1273
|
-
style?: React__default.CSSProperties;
|
|
1274
|
-
onPress?: () => void;
|
|
1275
|
-
scrollable?: boolean;
|
|
1276
|
-
expandable?: boolean;
|
|
1277
|
-
onMoveItem?: (sourceIndex: number, destinationIndex: number, position: RelativeDropPosition) => void;
|
|
1278
|
-
indentation?: number;
|
|
1279
|
-
acceptsDrop?: DropValidator;
|
|
1280
|
-
pressEventName?: "onClick" | "onPointerDown";
|
|
1281
|
-
variant?: "normal" | "bare" | "padded";
|
|
1282
|
-
sectionHeaderVariant?: "normal" | "label";
|
|
1283
|
-
divider?: boolean;
|
|
1284
|
-
gap?: number;
|
|
1285
|
-
colorScheme?: "primary" | "secondary";
|
|
1286
|
-
}) & React__default.RefAttributes<IVirtualizedList>) => React__default.ReactElement | null;
|
|
1489
|
+
}) & ListViewRootProps) & React__default.RefAttributes<IVirtualizedList>) => React__default.ReactElement | null;
|
|
1287
1490
|
const RowTitle: React__default.MemoExoticComponent<({ className, children, ...props }: {
|
|
1288
1491
|
className?: string;
|
|
1289
1492
|
children: React__default.ReactNode;
|
|
1290
1493
|
} & React__default.HTMLAttributes<HTMLSpanElement>) => React__default.JSX.Element>;
|
|
1291
|
-
const EditableRowTitle: React__default.MemoExoticComponent<({ value, onSubmitEditing, autoFocus, placeholder, }: EditableRowProps) => React__default.JSX.Element>;
|
|
1494
|
+
const EditableRowTitle: React__default.MemoExoticComponent<({ value, onSubmitEditing, autoFocus, placeholder, className, }: EditableRowProps) => React__default.JSX.Element>;
|
|
1292
1495
|
const Row: <MenuItemType extends string>(props: ListView.RowProps<MenuItemType> & TreeRowBaseProps & React__default.RefAttributes<HTMLLIElement>) => React__default.ReactElement | null;
|
|
1293
1496
|
type ClickInfo = ListView.ClickInfo;
|
|
1294
1497
|
type RowProps<MenuItemType extends string> = TreeViewRowProps<MenuItemType>;
|
|
@@ -1321,10 +1524,11 @@ type PanelLayoutState = {
|
|
|
1321
1524
|
};
|
|
1322
1525
|
declare function usePreservePanelSize(panelGroupRef: React__default.RefObject<ImperativePanelGroupHandle | null>, setPanelLayoutState?: (state: PanelLayoutState) => void): void;
|
|
1323
1526
|
|
|
1324
|
-
interface
|
|
1527
|
+
interface WorkspaceLayoutProps {
|
|
1325
1528
|
id?: string;
|
|
1326
1529
|
className?: string;
|
|
1327
1530
|
style?: React__default.CSSProperties;
|
|
1531
|
+
theme?: "light" | "dark";
|
|
1328
1532
|
autoSavePrefix?: string;
|
|
1329
1533
|
left?: React__default.ReactNode;
|
|
1330
1534
|
leftOptions?: SideOptions;
|
|
@@ -1351,8 +1555,9 @@ type SideOptions = {
|
|
|
1351
1555
|
*/
|
|
1352
1556
|
initialSize?: number | string;
|
|
1353
1557
|
minSize?: number | string;
|
|
1558
|
+
maxSize?: number | string;
|
|
1354
1559
|
};
|
|
1355
|
-
declare const WorkspaceLayout: React__default.ForwardRefExoticComponent<
|
|
1560
|
+
declare const WorkspaceLayout: React__default.ForwardRefExoticComponent<WorkspaceLayoutProps & React__default.RefAttributes<IWorkspaceLayout>>;
|
|
1356
1561
|
|
|
1357
1562
|
type DesignSystemConfigurationContextValue = {
|
|
1358
1563
|
platform: PlatformName;
|
|
@@ -1461,6 +1666,34 @@ interface HoverResult {
|
|
|
1461
1666
|
*/
|
|
1462
1667
|
declare function useHover(props?: HoverProps): HoverResult;
|
|
1463
1668
|
|
|
1669
|
+
declare const IndentContext: React__default.Context<{
|
|
1670
|
+
indentLevel: number;
|
|
1671
|
+
}>;
|
|
1672
|
+
declare const useIndent: () => number;
|
|
1673
|
+
|
|
1674
|
+
declare const LabelContext: React__default.Context<{
|
|
1675
|
+
fieldId?: string;
|
|
1676
|
+
label?: React__default.ReactNode;
|
|
1677
|
+
}>;
|
|
1678
|
+
type UseLabelParams = {
|
|
1679
|
+
label?: ReactNode;
|
|
1680
|
+
fieldId?: string;
|
|
1681
|
+
};
|
|
1682
|
+
declare const useLabel: ({ label, fieldId }: UseLabelParams) => {
|
|
1683
|
+
label: React__default.ReactNode;
|
|
1684
|
+
fieldId: string | undefined;
|
|
1685
|
+
};
|
|
1686
|
+
declare const LabelPositionContext: React__default.Context<LabelPositionContextValue>;
|
|
1687
|
+
declare const useLabelPosition: () => LabelPosition;
|
|
1688
|
+
type LabelPositionContextValue = {
|
|
1689
|
+
position: LabelPosition;
|
|
1690
|
+
};
|
|
1691
|
+
type LabelWidthContextValue = {
|
|
1692
|
+
width: number;
|
|
1693
|
+
};
|
|
1694
|
+
declare const LabelWidthContext: React__default.Context<LabelWidthContextValue>;
|
|
1695
|
+
declare const useLabelWidth: () => number;
|
|
1696
|
+
|
|
1464
1697
|
declare function usePlatform(): _noya_app_noya_keymap.PlatformName;
|
|
1465
1698
|
/**
|
|
1466
1699
|
* Either ctrl or meta, depending on the platform
|
|
@@ -1503,6 +1736,16 @@ declare const colorForStringValues: Record<string, string>;
|
|
|
1503
1736
|
*/
|
|
1504
1737
|
declare function colorFromString(str: string): string;
|
|
1505
1738
|
|
|
1739
|
+
/**
|
|
1740
|
+
* Updates the selection state based on user interaction.
|
|
1741
|
+
* Handles single selection, multi-selection with meta/ctrl, and range selection with shift.
|
|
1742
|
+
*/
|
|
1743
|
+
declare function updateSelection(allIds: string[], selectedIds: string[], clickedId: string, event?: {
|
|
1744
|
+
shiftKey?: boolean;
|
|
1745
|
+
metaKey?: boolean;
|
|
1746
|
+
ctrlKey?: boolean;
|
|
1747
|
+
}): string[];
|
|
1748
|
+
|
|
1506
1749
|
declare function sketchColorToRgba(value: Sketch.Color): RgbaColor;
|
|
1507
1750
|
declare function sketchColorToRgbaString(value: Sketch.Color): string;
|
|
1508
1751
|
declare function rgbaToSketchColor(value: RgbaColor): Sketch.Color;
|
|
@@ -1592,4 +1835,4 @@ declare function ToolbarMenu<T extends string>({ items, onSelectMenuItem, }: {
|
|
|
1592
1835
|
onSelectMenuItem?: (value: T) => void;
|
|
1593
1836
|
}): React__default.JSX.Element;
|
|
1594
1837
|
|
|
1595
|
-
export { ActivityIndicator, AnimatePresence, type AnimatePresenceProps, Avatar, type AvatarProps, AvatarStack, type BaseComboboxProps, BaseToolbar, type BaseToolbarProps, Body, Button, type ButtonRootProps, CONTENT_AREA_ID, Checkbox$1 as Checkbox, Chip, type ChipProps, Combobox, type ComboboxItem, ComboboxMenu, type ComboboxOption, type ComboboxProps, type ComboboxRef, type ComboboxSectionHeader, ComboboxState, type ComboboxStateSnapshot, ContextMenu, type DesignSystemConfigurationContextValue, DesignSystemConfigurationProvider, Dialog, type DialogContextValue, DialogProvider, DimensionInput, type DimensionValue, Divider, DividerVertical, DraggableMenuButton, type DropValidator, DropdownMenu, EDITOR_PANEL_GROUP_ID, type EditableRowProps, type ExtractMenuItemType, FillInputField, FillPreviewBackground, FloatingWindow, FloatingWindowProvider, FullscreenDialog, type GlobalInputBlurContextValue, GlobalInputBlurProvider, GradientPicker, GridView, type GridViewSize, Heading1, Heading2, Heading3, Heading4, Heading5, type HoverEvent, type HoverEvents, type HoverProps, type IDialog, type IScoredItem, type IToken, type IVirtualizedList, type IWorkspaceLayout, IconButton, type IconName, type ImageDataContextValue, ImageDataProvider, InputField, type InputFieldInputProps, type InputFieldSize, InspectorContainer, InspectorPrimitives, type InternalComboboxItem, Italic, KeyboardShortcut, LEFT_SIDEBAR_ID, Label, LabeledElementView, type ListRowMarginType, type ListRowPosition, ListView, type MatchRange, type MenuConfig, type MenuItem, type MenuItemProps, type MenuProps, Message, type MessageProps, type OptionModeOnlyProps, type OptionModeProps, type Optional, type PanelLayoutState, PatternPreviewBackground, Popover, Progress, RIGHT_SIDEBAR_ID, type RegularMenuItem, type RelativeDropPosition,
|
|
1838
|
+
export { ActivityIndicator, AnimatePresence, type AnimatePresenceProps, Avatar, type AvatarProps, AvatarStack, type BaseComboboxProps, BaseToolbar, type BaseToolbarProps, Body, Button, type ButtonRootProps, CHECKBOX_RIGHT_INSET, CHECKBOX_WIDTH, CONTENT_AREA_ID, Checkbox$1 as Checkbox, Chip, type ChipProps, Combobox, type ComboboxItem, ComboboxMenu, type ComboboxOption, type ComboboxProps, type ComboboxRef, type ComboboxSectionHeader, ComboboxState, type ComboboxStateSnapshot, CommandPalette, ContextMenu, type DesignSystemConfigurationContextValue, DesignSystemConfigurationProvider, Dialog, type DialogContextValue, DialogProvider, DimensionInput, type DimensionValue, Divider, DividerVertical, DraggableMenuButton, type DropValidator, DropdownMenu, type DropdownRootProps, EDITOR_PANEL_GROUP_ID, type EditableRowProps, type ExtractMenuItemType, Fade, type FadeDirection, type FadeProps, FillInputField, FillPreviewBackground, FloatingWindow, FloatingWindowProvider, FullscreenDialog, type GlobalInputBlurContextValue, GlobalInputBlurProvider, GradientPicker, GridView, type GridViewSize, Heading1, Heading2, Heading3, Heading4, Heading5, type HoverEvent, type HoverEvents, type HoverProps, type IDialog, type IScoredItem, type ISearchCompletionMenu, type IToken, type IVirtualizedList, type IWorkspaceLayout, IconButton, type IconName, type ImageDataContextValue, ImageDataProvider, IndentContext, InputField, type InputFieldInputProps, type InputFieldProps, type InputFieldSize, InsetLabel, type InsetLabelProps, InspectorContainer, InspectorPrimitives, type InternalComboboxItem, Italic, KeyboardShortcut, LEFT_SIDEBAR_ID, Label, LabelContext, type LabelPosition, LabelPositionContext, type LabelPositionContextValue, type LabelProps, LabelWidthContext, type LabelWidthContextValue, LabeledElementView, LabeledField, type ListRowMarginType, type ListRowPosition, ListView, type ListViewRootProps, type MatchRange, type MenuComponents, type MenuConfig, type MenuItem, type MenuItemProps, type MenuItemRole, type MenuProps, MenuViewport, Message, type MessageProps, type OptionModeOnlyProps, type OptionModeProps, type Optional, type PanelLayoutState, PatternPreviewBackground, Popover, Progress, RIGHT_SIDEBAR_ID, type RegularMenuItem, type RelativeDropPosition, SUPPORTED_CANVAS_UPLOAD_TYPES, SUPPORTED_IMAGE_UPLOAD_TYPES, ScrollArea, SearchCompletionMenu, SectionHeader$1 as SectionHeader, type SectionHeaderMenuItem, SegmentedControl, type SegmentedControlItemProps, type SegmentedControlProps, SelectMenu, type SeparatorItem, type SetNumberMode, type SideOptions, SidebarList, 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, colorForStringValues, colorFromString, createSectionedMenu, cssVars, cx, fuzzyFilter, fuzzyScore, fuzzyTokenize, getFieldSpacing, getGradientBackground, getKeyboardShortcutsForMenuItems, getNewValue, getNextIndex, insetLabelStyles, insetLabelTextStyles, labeledFieldStyles, mediaQuery, normalizeListDestinationIndex, renderIcon, rgbaToSketchColor, size, sketchColorToHex, sketchColorToRgba, sketchColorToRgbaString, styles, textStyles, updateSelection, useAutoResize, useComboboxState, useCurrentFloatingWindowInternal, useDesignSystemConfiguration, useDialogContainsElement, useFloatingWindowManager, useGlobalInputBlur, useGlobalInputBlurListener, useGlobalInputBlurTrigger, useHover, useImageData, useIndent, useInputFieldContext, useLabel, useLabelPosition, useLabelWidth, useOpenConfirmationDialog, useOpenInputDialog, usePlatform, usePlatformModKey, usePreservePanelSize, useTheme, withSeparatorElements };
|