@nurix/ui-component-library 1.1.4-stage.128 → 1.1.5-stage.129
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/dist/index.d.mts +67 -1
- package/dist/index.d.ts +67 -1
- package/dist/index.js +190 -48
- package/dist/index.mjs +293 -152
- package/dist/styles.css +108 -14
- package/package.json +1 -1
package/dist/index.d.mts
CHANGED
|
@@ -2897,11 +2897,28 @@ interface SpinnerProps extends React$1.HTMLAttributes<HTMLDivElement> {
|
|
|
2897
2897
|
* Custom className for the spinner container
|
|
2898
2898
|
*/
|
|
2899
2899
|
className?: string;
|
|
2900
|
+
/**
|
|
2901
|
+
* Optional title shown beneath the spinner (Typography `label-md`,
|
|
2902
|
+
* foreground black). Passing `title` or `texts` switches the spinner
|
|
2903
|
+
* into composed loader mode (centered vertical stack, gap-3).
|
|
2904
|
+
*/
|
|
2905
|
+
title?: string;
|
|
2906
|
+
/**
|
|
2907
|
+
* Optional list of sub-texts rotated every 2000ms beneath the title
|
|
2908
|
+
* (Typography `subtext-xs`, muted tone). The rotation stops on the
|
|
2909
|
+
* last item. Resets to index 0 when the array reference changes.
|
|
2910
|
+
*/
|
|
2911
|
+
texts?: string[];
|
|
2900
2912
|
}
|
|
2901
2913
|
|
|
2902
2914
|
/**
|
|
2903
2915
|
* Spinner component - Displays a loading spinner with size variations
|
|
2904
2916
|
* Based on Figma design node: 3357:4429
|
|
2917
|
+
*
|
|
2918
|
+
* When `title` or `texts` is supplied, renders a composed loader layout:
|
|
2919
|
+
* spinner + title (`label-md`) + rotating sub-text (`subtext-xs`, muted).
|
|
2920
|
+
* Sub-texts advance every 2000ms and stop on the last item. With neither
|
|
2921
|
+
* prop set, output is byte-identical to the legacy bare spinner.
|
|
2905
2922
|
*/
|
|
2906
2923
|
declare const Spinner: React$1.ForwardRefExoticComponent<SpinnerProps & React$1.RefAttributes<HTMLDivElement>>;
|
|
2907
2924
|
|
|
@@ -3418,6 +3435,55 @@ interface MultiSelectProps<T extends string = string> {
|
|
|
3418
3435
|
*/
|
|
3419
3436
|
declare function MultiSelect<T extends string = string>({ value, onValueChange, items, placeholder, label, showSearch, searchPlaceholder, showSelectAll, size, bg, disabled, maxHeight, id, className, "data-testid": dataTestId, }: MultiSelectProps<T>): react_jsx_runtime.JSX.Element;
|
|
3420
3437
|
|
|
3438
|
+
interface ChipProps extends Omit<React$1.ButtonHTMLAttributes<HTMLButtonElement>, "type" | "onClick"> {
|
|
3439
|
+
/**
|
|
3440
|
+
* Whether the chip is in the selected state. Selected chips use the
|
|
3441
|
+
* brand-secondary background and brand text color.
|
|
3442
|
+
* @default false
|
|
3443
|
+
*/
|
|
3444
|
+
selected?: boolean;
|
|
3445
|
+
/**
|
|
3446
|
+
* Click handler. When omitted, the chip renders as a non-interactive
|
|
3447
|
+
* `<div>` (no hover, no press scale) — useful for read-only displays.
|
|
3448
|
+
*/
|
|
3449
|
+
onClick?: () => void;
|
|
3450
|
+
/**
|
|
3451
|
+
* Optional icon shown before the label. Sized to 16px by the chip's
|
|
3452
|
+
* own `[&>svg]:size-4` rule, so consumers can pass a raw lucide icon
|
|
3453
|
+
* without wrapping.
|
|
3454
|
+
*/
|
|
3455
|
+
leadingIcon?: React$1.ReactNode;
|
|
3456
|
+
/**
|
|
3457
|
+
* Optional icon shown after the label — typically a remove `<X />`
|
|
3458
|
+
* for filter-style chips.
|
|
3459
|
+
*/
|
|
3460
|
+
trailingIcon?: React$1.ReactNode;
|
|
3461
|
+
/**
|
|
3462
|
+
* Disable interactions. Renders dim and ignores pointer events.
|
|
3463
|
+
*/
|
|
3464
|
+
disabled?: boolean;
|
|
3465
|
+
/**
|
|
3466
|
+
* Optional `data-testid` for Playwright. Defaults to `"chip"`.
|
|
3467
|
+
*/
|
|
3468
|
+
"data-testid"?: string;
|
|
3469
|
+
}
|
|
3470
|
+
|
|
3471
|
+
/**
|
|
3472
|
+
* Chip — small selectable pill with optional leading/trailing icons.
|
|
3473
|
+
*
|
|
3474
|
+
* Figma reference: 6332:23079.
|
|
3475
|
+
*
|
|
3476
|
+
* @example
|
|
3477
|
+
* <Chip selected={isOn} onClick={() => setIsOn((v) => !v)} leadingIcon={<GitCompare />}>
|
|
3478
|
+
* Uncle Chips
|
|
3479
|
+
* </Chip>
|
|
3480
|
+
*
|
|
3481
|
+
* When `onClick` is omitted, the chip renders as a non-interactive
|
|
3482
|
+
* `<div>` (no hover tint, no press scale) so it doesn't read as
|
|
3483
|
+
* clickable in read-only contexts.
|
|
3484
|
+
*/
|
|
3485
|
+
declare const Chip: React$1.ForwardRefExoticComponent<ChipProps & React$1.RefAttributes<HTMLButtonElement>>;
|
|
3486
|
+
|
|
3421
3487
|
interface RuleBuilderProps {
|
|
3422
3488
|
/**
|
|
3423
3489
|
* Badge label shown in the header (e.g. "Rule 1").
|
|
@@ -3563,4 +3629,4 @@ declare const RuleBuilderConnector: React$1.ForwardRefExoticComponent<RuleBuilde
|
|
|
3563
3629
|
*/
|
|
3564
3630
|
declare const RuleBuilderAddCondition: React$1.ForwardRefExoticComponent<RuleBuilderAddConditionProps & React$1.RefAttributes<HTMLButtonElement>>;
|
|
3565
3631
|
|
|
3566
|
-
export { Accordion, AccordionContent, AccordionContentPlaceholder, type AccordionContentProps, AccordionItem, type AccordionItemProps, type AccordionProps, AccordionSectionTrigger, type AccordionSectionTriggerProps, AccordionTrigger, type AccordionTriggerProps, type AccordionType, type AccordionValue, AudioPlayer, type AudioPlayerProps, Avatar, AvatarGroup, type AvatarGroupProps, type AvatarProps, type AvatarShape, type AvatarSize, type BackButtonPosition, Badge, type BadgeProps, type BadgeVariant, Button, type ButtonBorderRadius, ButtonList, type ButtonListItem, type ButtonListProps, type ButtonProps, type ButtonSize, type ButtonVariant, type CellContent, type CellTextContent, ChatBubbleAgent, type ChatBubbleAgentProps, ChatBubbleUser, type ChatBubbleUserProps, Checkbox, type CheckboxProps, type ColumnDef, ColumnWidth, CompoundFilterSelect, type CompoundFilterSelectProps, type CompoundFilterToggleOption, DEFAULT_THEME, DataTable, type DataTableProps, type DatePreset, Dialog, DialogBody, type DialogBodyProps, DialogFooter, type DialogFooterProps, DialogHeader, DialogHeaderNavigation, type DialogHeaderNavigationProps, type DialogHeaderNavigationVariant, type DialogHeaderProps, DialogIcon, type DialogIconProps, type DialogProps, type DialogSize, type DialogType, EmptyState, type EmptyStateIllustrationPosition, type EmptyStateIllustrationSize, type EmptyStateProps, FileInput, type FileInputProps, type FilterItem, type FilterItemWithSection, FilterListItem, type FilterListItemProps, FilterSelect, type FilterSelectProps, type IconColor, IconPicker, type IconPickerProps, type IconSize, IconWrapper, type IconWrapperProps, Input, type InputBorderRadius, type InputForceState, InputGroup, type InputGroupBorderRadius, type InputGroupForceState, type InputGroupProps, type InputProps, type InputVariant, JSON_EDITOR_LANGUAGE_OPTIONS, JsonEditor, type JsonEditorLanguage, type JsonEditorProps, KeyValueEditor, type KeyValueEditorProps, type KeyValuePair, LegoLandWrapper, type LegoLandWrapperProps, List, type ListBorderRadius, type ListNavItemProps, ListNavigation, type ListNavigationProps, type ListProps, type ListType, type ListVariant, MONACO_OPTIONS, MONACO_OPTIONS_DIALOG, MultiSelect, type MultiSelectItem, type MultiSelectProps, NestedButtonGroup, type NestedButtonGroupProps, NumberBadge, type NumberBadgeProps, type NumberBadgeVariant, NurixThemeProvider, Pagination, type PaginationProps, PlaySelect, type PlaySelectAudioItem, type PlaySelectProps, PlaybackControl, type PlaybackControlProps, type PlaybackState, Popover, type PopoverAlign, type PopoverProps, type PopoverShadow, type PopoverSide, ProgressBar, type ProgressBarProps, RadioGroup, RadioGroupItem, type RadioGroupItemProps, type RadioGroupProps, RuleBuilder, RuleBuilderAddCondition, type RuleBuilderAddConditionProps, RuleBuilderClause, type RuleBuilderClauseProps, RuleBuilderCondition, type RuleBuilderConditionProps, RuleBuilderConnector, type RuleBuilderConnectorProps, type RuleBuilderProps, Select, SelectContent, type SelectContentItem, SelectFormLabel, SelectGroup, type SelectGroupProps, SelectItem, SelectLabel, type SelectLabelProps, type SelectMenuItemProps, type SelectProps, SelectScrollDownButton, SelectScrollUpButton, SelectSeparator, SelectTrigger, SelectValue, ShadowDOMWrapper, type ShowToastOptions, SidePanel, type SidePanelProps, type SidePanelSize, Slider, type SliderProps, type SortDirection, type SortState, Spinner, type SpinnerProps, type SpinnerSize, type StepItem, type StepState, Stepper, StepperBar, type StepperBarProps, type StepperProps, type SupportingTextType, Surface, type SurfaceBackground, SurfaceBody, type SurfaceBodyProps, SurfaceFooter, type SurfaceFooterProps, SurfaceHeader, type SurfaceHeaderProps, type SurfaceProps, Switch, type SwitchProps, type SwitchSize, type TabVariant, type TableAction, Tabs, TabsContent, type TabsContentProps, TabsList, type TabsListProps, type TabsProps, TabsTrigger, type TabsTriggerProps, TagBadge, type TagBadgeProps, type TagOption, Textarea, type TextareaBorderRadius, type TextareaForceState, type TextareaProps, ThemeProvider, Toast, type ToastProps, type ToastVariant, Toaster, Toggle, ToggleItem, type ToggleItemProps, type ToggleProps, type ToggleType, Tooltip, TooltipContent, type TooltipContentProps, TooltipProvider, TooltipTrigger, Typography, type TypographyProps, type TypographySize, type TypographyTone, type TypographyVariant, type TypographyWeight, type UsePlaySelectProps, type UseSelectProps, enhanceJsonError, showToast, useJsonEditor, usePlaySelect, useSelect, useTheme };
|
|
3632
|
+
export { Accordion, AccordionContent, AccordionContentPlaceholder, type AccordionContentProps, AccordionItem, type AccordionItemProps, type AccordionProps, AccordionSectionTrigger, type AccordionSectionTriggerProps, AccordionTrigger, type AccordionTriggerProps, type AccordionType, type AccordionValue, AudioPlayer, type AudioPlayerProps, Avatar, AvatarGroup, type AvatarGroupProps, type AvatarProps, type AvatarShape, type AvatarSize, type BackButtonPosition, Badge, type BadgeProps, type BadgeVariant, Button, type ButtonBorderRadius, ButtonList, type ButtonListItem, type ButtonListProps, type ButtonProps, type ButtonSize, type ButtonVariant, type CellContent, type CellTextContent, ChatBubbleAgent, type ChatBubbleAgentProps, ChatBubbleUser, type ChatBubbleUserProps, Checkbox, type CheckboxProps, Chip, type ChipProps, type ColumnDef, ColumnWidth, CompoundFilterSelect, type CompoundFilterSelectProps, type CompoundFilterToggleOption, DEFAULT_THEME, DataTable, type DataTableProps, type DatePreset, Dialog, DialogBody, type DialogBodyProps, DialogFooter, type DialogFooterProps, DialogHeader, DialogHeaderNavigation, type DialogHeaderNavigationProps, type DialogHeaderNavigationVariant, type DialogHeaderProps, DialogIcon, type DialogIconProps, type DialogProps, type DialogSize, type DialogType, EmptyState, type EmptyStateIllustrationPosition, type EmptyStateIllustrationSize, type EmptyStateProps, FileInput, type FileInputProps, type FilterItem, type FilterItemWithSection, FilterListItem, type FilterListItemProps, FilterSelect, type FilterSelectProps, type IconColor, IconPicker, type IconPickerProps, type IconSize, IconWrapper, type IconWrapperProps, Input, type InputBorderRadius, type InputForceState, InputGroup, type InputGroupBorderRadius, type InputGroupForceState, type InputGroupProps, type InputProps, type InputVariant, JSON_EDITOR_LANGUAGE_OPTIONS, JsonEditor, type JsonEditorLanguage, type JsonEditorProps, KeyValueEditor, type KeyValueEditorProps, type KeyValuePair, LegoLandWrapper, type LegoLandWrapperProps, List, type ListBorderRadius, type ListNavItemProps, ListNavigation, type ListNavigationProps, type ListProps, type ListType, type ListVariant, MONACO_OPTIONS, MONACO_OPTIONS_DIALOG, MultiSelect, type MultiSelectItem, type MultiSelectProps, NestedButtonGroup, type NestedButtonGroupProps, NumberBadge, type NumberBadgeProps, type NumberBadgeVariant, NurixThemeProvider, Pagination, type PaginationProps, PlaySelect, type PlaySelectAudioItem, type PlaySelectProps, PlaybackControl, type PlaybackControlProps, type PlaybackState, Popover, type PopoverAlign, type PopoverProps, type PopoverShadow, type PopoverSide, ProgressBar, type ProgressBarProps, RadioGroup, RadioGroupItem, type RadioGroupItemProps, type RadioGroupProps, RuleBuilder, RuleBuilderAddCondition, type RuleBuilderAddConditionProps, RuleBuilderClause, type RuleBuilderClauseProps, RuleBuilderCondition, type RuleBuilderConditionProps, RuleBuilderConnector, type RuleBuilderConnectorProps, type RuleBuilderProps, Select, SelectContent, type SelectContentItem, SelectFormLabel, SelectGroup, type SelectGroupProps, SelectItem, SelectLabel, type SelectLabelProps, type SelectMenuItemProps, type SelectProps, SelectScrollDownButton, SelectScrollUpButton, SelectSeparator, SelectTrigger, SelectValue, ShadowDOMWrapper, type ShowToastOptions, SidePanel, type SidePanelProps, type SidePanelSize, Slider, type SliderProps, type SortDirection, type SortState, Spinner, type SpinnerProps, type SpinnerSize, type StepItem, type StepState, Stepper, StepperBar, type StepperBarProps, type StepperProps, type SupportingTextType, Surface, type SurfaceBackground, SurfaceBody, type SurfaceBodyProps, SurfaceFooter, type SurfaceFooterProps, SurfaceHeader, type SurfaceHeaderProps, type SurfaceProps, Switch, type SwitchProps, type SwitchSize, type TabVariant, type TableAction, Tabs, TabsContent, type TabsContentProps, TabsList, type TabsListProps, type TabsProps, TabsTrigger, type TabsTriggerProps, TagBadge, type TagBadgeProps, type TagOption, Textarea, type TextareaBorderRadius, type TextareaForceState, type TextareaProps, ThemeProvider, Toast, type ToastProps, type ToastVariant, Toaster, Toggle, ToggleItem, type ToggleItemProps, type ToggleProps, type ToggleType, Tooltip, TooltipContent, type TooltipContentProps, TooltipProvider, TooltipTrigger, Typography, type TypographyProps, type TypographySize, type TypographyTone, type TypographyVariant, type TypographyWeight, type UsePlaySelectProps, type UseSelectProps, enhanceJsonError, showToast, useJsonEditor, usePlaySelect, useSelect, useTheme };
|
package/dist/index.d.ts
CHANGED
|
@@ -2897,11 +2897,28 @@ interface SpinnerProps extends React$1.HTMLAttributes<HTMLDivElement> {
|
|
|
2897
2897
|
* Custom className for the spinner container
|
|
2898
2898
|
*/
|
|
2899
2899
|
className?: string;
|
|
2900
|
+
/**
|
|
2901
|
+
* Optional title shown beneath the spinner (Typography `label-md`,
|
|
2902
|
+
* foreground black). Passing `title` or `texts` switches the spinner
|
|
2903
|
+
* into composed loader mode (centered vertical stack, gap-3).
|
|
2904
|
+
*/
|
|
2905
|
+
title?: string;
|
|
2906
|
+
/**
|
|
2907
|
+
* Optional list of sub-texts rotated every 2000ms beneath the title
|
|
2908
|
+
* (Typography `subtext-xs`, muted tone). The rotation stops on the
|
|
2909
|
+
* last item. Resets to index 0 when the array reference changes.
|
|
2910
|
+
*/
|
|
2911
|
+
texts?: string[];
|
|
2900
2912
|
}
|
|
2901
2913
|
|
|
2902
2914
|
/**
|
|
2903
2915
|
* Spinner component - Displays a loading spinner with size variations
|
|
2904
2916
|
* Based on Figma design node: 3357:4429
|
|
2917
|
+
*
|
|
2918
|
+
* When `title` or `texts` is supplied, renders a composed loader layout:
|
|
2919
|
+
* spinner + title (`label-md`) + rotating sub-text (`subtext-xs`, muted).
|
|
2920
|
+
* Sub-texts advance every 2000ms and stop on the last item. With neither
|
|
2921
|
+
* prop set, output is byte-identical to the legacy bare spinner.
|
|
2905
2922
|
*/
|
|
2906
2923
|
declare const Spinner: React$1.ForwardRefExoticComponent<SpinnerProps & React$1.RefAttributes<HTMLDivElement>>;
|
|
2907
2924
|
|
|
@@ -3418,6 +3435,55 @@ interface MultiSelectProps<T extends string = string> {
|
|
|
3418
3435
|
*/
|
|
3419
3436
|
declare function MultiSelect<T extends string = string>({ value, onValueChange, items, placeholder, label, showSearch, searchPlaceholder, showSelectAll, size, bg, disabled, maxHeight, id, className, "data-testid": dataTestId, }: MultiSelectProps<T>): react_jsx_runtime.JSX.Element;
|
|
3420
3437
|
|
|
3438
|
+
interface ChipProps extends Omit<React$1.ButtonHTMLAttributes<HTMLButtonElement>, "type" | "onClick"> {
|
|
3439
|
+
/**
|
|
3440
|
+
* Whether the chip is in the selected state. Selected chips use the
|
|
3441
|
+
* brand-secondary background and brand text color.
|
|
3442
|
+
* @default false
|
|
3443
|
+
*/
|
|
3444
|
+
selected?: boolean;
|
|
3445
|
+
/**
|
|
3446
|
+
* Click handler. When omitted, the chip renders as a non-interactive
|
|
3447
|
+
* `<div>` (no hover, no press scale) — useful for read-only displays.
|
|
3448
|
+
*/
|
|
3449
|
+
onClick?: () => void;
|
|
3450
|
+
/**
|
|
3451
|
+
* Optional icon shown before the label. Sized to 16px by the chip's
|
|
3452
|
+
* own `[&>svg]:size-4` rule, so consumers can pass a raw lucide icon
|
|
3453
|
+
* without wrapping.
|
|
3454
|
+
*/
|
|
3455
|
+
leadingIcon?: React$1.ReactNode;
|
|
3456
|
+
/**
|
|
3457
|
+
* Optional icon shown after the label — typically a remove `<X />`
|
|
3458
|
+
* for filter-style chips.
|
|
3459
|
+
*/
|
|
3460
|
+
trailingIcon?: React$1.ReactNode;
|
|
3461
|
+
/**
|
|
3462
|
+
* Disable interactions. Renders dim and ignores pointer events.
|
|
3463
|
+
*/
|
|
3464
|
+
disabled?: boolean;
|
|
3465
|
+
/**
|
|
3466
|
+
* Optional `data-testid` for Playwright. Defaults to `"chip"`.
|
|
3467
|
+
*/
|
|
3468
|
+
"data-testid"?: string;
|
|
3469
|
+
}
|
|
3470
|
+
|
|
3471
|
+
/**
|
|
3472
|
+
* Chip — small selectable pill with optional leading/trailing icons.
|
|
3473
|
+
*
|
|
3474
|
+
* Figma reference: 6332:23079.
|
|
3475
|
+
*
|
|
3476
|
+
* @example
|
|
3477
|
+
* <Chip selected={isOn} onClick={() => setIsOn((v) => !v)} leadingIcon={<GitCompare />}>
|
|
3478
|
+
* Uncle Chips
|
|
3479
|
+
* </Chip>
|
|
3480
|
+
*
|
|
3481
|
+
* When `onClick` is omitted, the chip renders as a non-interactive
|
|
3482
|
+
* `<div>` (no hover tint, no press scale) so it doesn't read as
|
|
3483
|
+
* clickable in read-only contexts.
|
|
3484
|
+
*/
|
|
3485
|
+
declare const Chip: React$1.ForwardRefExoticComponent<ChipProps & React$1.RefAttributes<HTMLButtonElement>>;
|
|
3486
|
+
|
|
3421
3487
|
interface RuleBuilderProps {
|
|
3422
3488
|
/**
|
|
3423
3489
|
* Badge label shown in the header (e.g. "Rule 1").
|
|
@@ -3563,4 +3629,4 @@ declare const RuleBuilderConnector: React$1.ForwardRefExoticComponent<RuleBuilde
|
|
|
3563
3629
|
*/
|
|
3564
3630
|
declare const RuleBuilderAddCondition: React$1.ForwardRefExoticComponent<RuleBuilderAddConditionProps & React$1.RefAttributes<HTMLButtonElement>>;
|
|
3565
3631
|
|
|
3566
|
-
export { Accordion, AccordionContent, AccordionContentPlaceholder, type AccordionContentProps, AccordionItem, type AccordionItemProps, type AccordionProps, AccordionSectionTrigger, type AccordionSectionTriggerProps, AccordionTrigger, type AccordionTriggerProps, type AccordionType, type AccordionValue, AudioPlayer, type AudioPlayerProps, Avatar, AvatarGroup, type AvatarGroupProps, type AvatarProps, type AvatarShape, type AvatarSize, type BackButtonPosition, Badge, type BadgeProps, type BadgeVariant, Button, type ButtonBorderRadius, ButtonList, type ButtonListItem, type ButtonListProps, type ButtonProps, type ButtonSize, type ButtonVariant, type CellContent, type CellTextContent, ChatBubbleAgent, type ChatBubbleAgentProps, ChatBubbleUser, type ChatBubbleUserProps, Checkbox, type CheckboxProps, type ColumnDef, ColumnWidth, CompoundFilterSelect, type CompoundFilterSelectProps, type CompoundFilterToggleOption, DEFAULT_THEME, DataTable, type DataTableProps, type DatePreset, Dialog, DialogBody, type DialogBodyProps, DialogFooter, type DialogFooterProps, DialogHeader, DialogHeaderNavigation, type DialogHeaderNavigationProps, type DialogHeaderNavigationVariant, type DialogHeaderProps, DialogIcon, type DialogIconProps, type DialogProps, type DialogSize, type DialogType, EmptyState, type EmptyStateIllustrationPosition, type EmptyStateIllustrationSize, type EmptyStateProps, FileInput, type FileInputProps, type FilterItem, type FilterItemWithSection, FilterListItem, type FilterListItemProps, FilterSelect, type FilterSelectProps, type IconColor, IconPicker, type IconPickerProps, type IconSize, IconWrapper, type IconWrapperProps, Input, type InputBorderRadius, type InputForceState, InputGroup, type InputGroupBorderRadius, type InputGroupForceState, type InputGroupProps, type InputProps, type InputVariant, JSON_EDITOR_LANGUAGE_OPTIONS, JsonEditor, type JsonEditorLanguage, type JsonEditorProps, KeyValueEditor, type KeyValueEditorProps, type KeyValuePair, LegoLandWrapper, type LegoLandWrapperProps, List, type ListBorderRadius, type ListNavItemProps, ListNavigation, type ListNavigationProps, type ListProps, type ListType, type ListVariant, MONACO_OPTIONS, MONACO_OPTIONS_DIALOG, MultiSelect, type MultiSelectItem, type MultiSelectProps, NestedButtonGroup, type NestedButtonGroupProps, NumberBadge, type NumberBadgeProps, type NumberBadgeVariant, NurixThemeProvider, Pagination, type PaginationProps, PlaySelect, type PlaySelectAudioItem, type PlaySelectProps, PlaybackControl, type PlaybackControlProps, type PlaybackState, Popover, type PopoverAlign, type PopoverProps, type PopoverShadow, type PopoverSide, ProgressBar, type ProgressBarProps, RadioGroup, RadioGroupItem, type RadioGroupItemProps, type RadioGroupProps, RuleBuilder, RuleBuilderAddCondition, type RuleBuilderAddConditionProps, RuleBuilderClause, type RuleBuilderClauseProps, RuleBuilderCondition, type RuleBuilderConditionProps, RuleBuilderConnector, type RuleBuilderConnectorProps, type RuleBuilderProps, Select, SelectContent, type SelectContentItem, SelectFormLabel, SelectGroup, type SelectGroupProps, SelectItem, SelectLabel, type SelectLabelProps, type SelectMenuItemProps, type SelectProps, SelectScrollDownButton, SelectScrollUpButton, SelectSeparator, SelectTrigger, SelectValue, ShadowDOMWrapper, type ShowToastOptions, SidePanel, type SidePanelProps, type SidePanelSize, Slider, type SliderProps, type SortDirection, type SortState, Spinner, type SpinnerProps, type SpinnerSize, type StepItem, type StepState, Stepper, StepperBar, type StepperBarProps, type StepperProps, type SupportingTextType, Surface, type SurfaceBackground, SurfaceBody, type SurfaceBodyProps, SurfaceFooter, type SurfaceFooterProps, SurfaceHeader, type SurfaceHeaderProps, type SurfaceProps, Switch, type SwitchProps, type SwitchSize, type TabVariant, type TableAction, Tabs, TabsContent, type TabsContentProps, TabsList, type TabsListProps, type TabsProps, TabsTrigger, type TabsTriggerProps, TagBadge, type TagBadgeProps, type TagOption, Textarea, type TextareaBorderRadius, type TextareaForceState, type TextareaProps, ThemeProvider, Toast, type ToastProps, type ToastVariant, Toaster, Toggle, ToggleItem, type ToggleItemProps, type ToggleProps, type ToggleType, Tooltip, TooltipContent, type TooltipContentProps, TooltipProvider, TooltipTrigger, Typography, type TypographyProps, type TypographySize, type TypographyTone, type TypographyVariant, type TypographyWeight, type UsePlaySelectProps, type UseSelectProps, enhanceJsonError, showToast, useJsonEditor, usePlaySelect, useSelect, useTheme };
|
|
3632
|
+
export { Accordion, AccordionContent, AccordionContentPlaceholder, type AccordionContentProps, AccordionItem, type AccordionItemProps, type AccordionProps, AccordionSectionTrigger, type AccordionSectionTriggerProps, AccordionTrigger, type AccordionTriggerProps, type AccordionType, type AccordionValue, AudioPlayer, type AudioPlayerProps, Avatar, AvatarGroup, type AvatarGroupProps, type AvatarProps, type AvatarShape, type AvatarSize, type BackButtonPosition, Badge, type BadgeProps, type BadgeVariant, Button, type ButtonBorderRadius, ButtonList, type ButtonListItem, type ButtonListProps, type ButtonProps, type ButtonSize, type ButtonVariant, type CellContent, type CellTextContent, ChatBubbleAgent, type ChatBubbleAgentProps, ChatBubbleUser, type ChatBubbleUserProps, Checkbox, type CheckboxProps, Chip, type ChipProps, type ColumnDef, ColumnWidth, CompoundFilterSelect, type CompoundFilterSelectProps, type CompoundFilterToggleOption, DEFAULT_THEME, DataTable, type DataTableProps, type DatePreset, Dialog, DialogBody, type DialogBodyProps, DialogFooter, type DialogFooterProps, DialogHeader, DialogHeaderNavigation, type DialogHeaderNavigationProps, type DialogHeaderNavigationVariant, type DialogHeaderProps, DialogIcon, type DialogIconProps, type DialogProps, type DialogSize, type DialogType, EmptyState, type EmptyStateIllustrationPosition, type EmptyStateIllustrationSize, type EmptyStateProps, FileInput, type FileInputProps, type FilterItem, type FilterItemWithSection, FilterListItem, type FilterListItemProps, FilterSelect, type FilterSelectProps, type IconColor, IconPicker, type IconPickerProps, type IconSize, IconWrapper, type IconWrapperProps, Input, type InputBorderRadius, type InputForceState, InputGroup, type InputGroupBorderRadius, type InputGroupForceState, type InputGroupProps, type InputProps, type InputVariant, JSON_EDITOR_LANGUAGE_OPTIONS, JsonEditor, type JsonEditorLanguage, type JsonEditorProps, KeyValueEditor, type KeyValueEditorProps, type KeyValuePair, LegoLandWrapper, type LegoLandWrapperProps, List, type ListBorderRadius, type ListNavItemProps, ListNavigation, type ListNavigationProps, type ListProps, type ListType, type ListVariant, MONACO_OPTIONS, MONACO_OPTIONS_DIALOG, MultiSelect, type MultiSelectItem, type MultiSelectProps, NestedButtonGroup, type NestedButtonGroupProps, NumberBadge, type NumberBadgeProps, type NumberBadgeVariant, NurixThemeProvider, Pagination, type PaginationProps, PlaySelect, type PlaySelectAudioItem, type PlaySelectProps, PlaybackControl, type PlaybackControlProps, type PlaybackState, Popover, type PopoverAlign, type PopoverProps, type PopoverShadow, type PopoverSide, ProgressBar, type ProgressBarProps, RadioGroup, RadioGroupItem, type RadioGroupItemProps, type RadioGroupProps, RuleBuilder, RuleBuilderAddCondition, type RuleBuilderAddConditionProps, RuleBuilderClause, type RuleBuilderClauseProps, RuleBuilderCondition, type RuleBuilderConditionProps, RuleBuilderConnector, type RuleBuilderConnectorProps, type RuleBuilderProps, Select, SelectContent, type SelectContentItem, SelectFormLabel, SelectGroup, type SelectGroupProps, SelectItem, SelectLabel, type SelectLabelProps, type SelectMenuItemProps, type SelectProps, SelectScrollDownButton, SelectScrollUpButton, SelectSeparator, SelectTrigger, SelectValue, ShadowDOMWrapper, type ShowToastOptions, SidePanel, type SidePanelProps, type SidePanelSize, Slider, type SliderProps, type SortDirection, type SortState, Spinner, type SpinnerProps, type SpinnerSize, type StepItem, type StepState, Stepper, StepperBar, type StepperBarProps, type StepperProps, type SupportingTextType, Surface, type SurfaceBackground, SurfaceBody, type SurfaceBodyProps, SurfaceFooter, type SurfaceFooterProps, SurfaceHeader, type SurfaceHeaderProps, type SurfaceProps, Switch, type SwitchProps, type SwitchSize, type TabVariant, type TableAction, Tabs, TabsContent, type TabsContentProps, TabsList, type TabsListProps, type TabsProps, TabsTrigger, type TabsTriggerProps, TagBadge, type TagBadgeProps, type TagOption, Textarea, type TextareaBorderRadius, type TextareaForceState, type TextareaProps, ThemeProvider, Toast, type ToastProps, type ToastVariant, Toaster, Toggle, ToggleItem, type ToggleItemProps, type ToggleProps, type ToggleType, Tooltip, TooltipContent, type TooltipContentProps, TooltipProvider, TooltipTrigger, Typography, type TypographyProps, type TypographySize, type TypographyTone, type TypographyVariant, type TypographyWeight, type UsePlaySelectProps, type UseSelectProps, enhanceJsonError, showToast, useJsonEditor, usePlaySelect, useSelect, useTheme };
|
package/dist/index.js
CHANGED
|
@@ -6500,6 +6500,7 @@ __export(index_exports, {
|
|
|
6500
6500
|
ChatBubbleAgent: () => ChatBubbleAgent,
|
|
6501
6501
|
ChatBubbleUser: () => ChatBubbleUser,
|
|
6502
6502
|
Checkbox: () => Checkbox,
|
|
6503
|
+
Chip: () => Chip,
|
|
6503
6504
|
ColumnWidth: () => ColumnWidth,
|
|
6504
6505
|
CompoundFilterSelect: () => CompoundFilterSelect,
|
|
6505
6506
|
DEFAULT_THEME: () => DEFAULT_THEME,
|
|
@@ -8006,11 +8007,19 @@ var SliderPrimitive = __toESM(require("@radix-ui/react-slider"));
|
|
|
8006
8007
|
|
|
8007
8008
|
// src/slider/variables.ts
|
|
8008
8009
|
var SLIDER_TOKENS = {
|
|
8009
|
-
root: "relative flex w-full touch-none select-none items-center py-2",
|
|
8010
|
-
|
|
8011
|
-
|
|
8010
|
+
root: "group relative flex w-full touch-none select-none items-center py-2",
|
|
8011
|
+
// `pointer-events-none` suppresses the hover/pressed visuals when the
|
|
8012
|
+
// slider is disabled — otherwise hovering a 50%-opacity slider would
|
|
8013
|
+
// still tint the track and a stuck "pressed" thumb width would persist.
|
|
8014
|
+
rootDisabled: "opacity-50 cursor-not-allowed pointer-events-none",
|
|
8015
|
+
// `before` element hosts the hover overlay so we can transition the
|
|
8016
|
+
// overlay opacity independently of the pressed-state background swap.
|
|
8017
|
+
track: "relative h-2 w-full grow overflow-hidden rounded-full bg-token-grey transition-colors before:content-[''] before:absolute before:inset-0 before:rounded-full before:bg-black/5 before:opacity-0 before:pointer-events-none before:transition-opacity group-hover:before:opacity-100 group-active:bg-token-dark-grey group-active:before:opacity-0",
|
|
8012
8018
|
range: "absolute h-full rounded-full bg-token-brand-primary",
|
|
8013
|
-
|
|
8019
|
+
// Width transitions on press so the 20→28px swap doesn't snap. Radix
|
|
8020
|
+
// applies `translateX(-50%)` to the thumb, so it stays centered on the
|
|
8021
|
+
// current value as it widens.
|
|
8022
|
+
thumb: "block h-5 w-5 rounded-full bg-token-white border border-token-xlight shadow-[0px_1px_3px_0px_rgba(0,0,0,0.1)] transition-[width,box-shadow] group-active:w-7 focus-visible:outline focus-visible:outline-2 focus-visible:outline-token-brand focus-visible:outline-offset-2 disabled:pointer-events-none",
|
|
8014
8023
|
labelRow: "mt-2 flex w-full items-center justify-between text-xs leading-4 font-medium text-fg-grey-secondary whitespace-nowrap",
|
|
8015
8024
|
wrapper: "flex w-full flex-col py-2"
|
|
8016
8025
|
};
|
|
@@ -8693,14 +8702,21 @@ var ACCORDION_TOKENS = {
|
|
|
8693
8702
|
item: "border-b border-token-light",
|
|
8694
8703
|
// Card variant (Figma 707:17455 / 6441:22282) — bordered, rounded,
|
|
8695
8704
|
// drop-shadowed surface. No bottom divider; sits as its own visual block.
|
|
8696
|
-
|
|
8705
|
+
//
|
|
8706
|
+
// Open-state divider (Figma Agent Builder 690:15041): when the item is
|
|
8707
|
+
// open, its trigger gets a 1px bottom border separating header from
|
|
8708
|
+
// content. Scoped to `itemCard` via a child selector so the default
|
|
8709
|
+
// variant (which already has its own `border-b` per row) is unaffected
|
|
8710
|
+
// and we avoid double borders.
|
|
8711
|
+
itemCard: "border border-token-xlight rounded-2xl shadow-[0px_1px_2px_0px_rgba(0,0,0,0.1)] bg-token-white overflow-hidden [&_button[data-state=open]]:border-b [&_button[data-state=open]]:border-token-xlight",
|
|
8697
8712
|
trigger: "w-full flex items-center text-left transition-colors hover:bg-token-dark-grey active:bg-token-dark-grey focus-visible:outline focus-visible:outline-2 focus-visible:outline-token-brand focus-visible:outline-offset-2 disabled:pointer-events-none disabled:opacity-50 [&[data-state=open]>div>svg]:rotate-180",
|
|
8698
8713
|
// Size-specific paddings on the trigger row itself.
|
|
8699
8714
|
triggerSize: {
|
|
8700
8715
|
default: "py-4",
|
|
8701
|
-
// Card-sized trigger — 12px gutter all around
|
|
8702
|
-
//
|
|
8703
|
-
|
|
8716
|
+
// Card-sized trigger — 12px gutter all around. Hover/pressed states use
|
|
8717
|
+
// the same interaction tokens as `sectionTrigger` for consistency
|
|
8718
|
+
// (Figma Nurix Design System 2026 nodes 6441:22355 / 22356).
|
|
8719
|
+
sm: "p-3 hover:bg-interaction-hov-solid-primary active:bg-interaction-pressed-opacity-secondary"
|
|
8704
8720
|
},
|
|
8705
8721
|
textWrap: "flex-1 min-w-0 pr-2.5 flex flex-col gap-0.5",
|
|
8706
8722
|
// Default trigger title — long-list look.
|
|
@@ -13096,14 +13112,62 @@ var SPINNER_TOKENS = {
|
|
|
13096
13112
|
// src/spinner/spinner.tsx
|
|
13097
13113
|
var import_jsx_runtime33 = require("react/jsx-runtime");
|
|
13098
13114
|
var Spinner = React37.forwardRef(
|
|
13099
|
-
({ size = "md", className, ...props }, ref) => {
|
|
13100
|
-
|
|
13101
|
-
|
|
13115
|
+
({ size = "md", className, title, texts, ...props }, ref) => {
|
|
13116
|
+
const hasLoaderText = title !== void 0 || texts !== void 0 && texts.length > 0;
|
|
13117
|
+
const [currentTextIndex, setCurrentTextIndex] = React37.useState(0);
|
|
13118
|
+
React37.useEffect(() => {
|
|
13119
|
+
if (!texts || texts.length === 0) return;
|
|
13120
|
+
setCurrentTextIndex(0);
|
|
13121
|
+
const intervalId = setInterval(() => {
|
|
13122
|
+
setCurrentTextIndex((prevIndex) => {
|
|
13123
|
+
if (prevIndex < texts.length - 1) {
|
|
13124
|
+
return prevIndex + 1;
|
|
13125
|
+
}
|
|
13126
|
+
clearInterval(intervalId);
|
|
13127
|
+
return prevIndex;
|
|
13128
|
+
});
|
|
13129
|
+
}, 2e3);
|
|
13130
|
+
return () => clearInterval(intervalId);
|
|
13131
|
+
}, [texts]);
|
|
13132
|
+
if (!hasLoaderText) {
|
|
13133
|
+
return /* @__PURE__ */ (0, import_jsx_runtime33.jsx)(
|
|
13134
|
+
"div",
|
|
13135
|
+
{
|
|
13136
|
+
ref,
|
|
13137
|
+
className: cn(SPINNER_TOKENS.base, className),
|
|
13138
|
+
...props,
|
|
13139
|
+
children: /* @__PURE__ */ (0, import_jsx_runtime33.jsx)(
|
|
13140
|
+
import_lucide_react14.Loader2,
|
|
13141
|
+
{
|
|
13142
|
+
className: cn(SPINNER_TOKENS.size[size], SPINNER_TOKENS.icon),
|
|
13143
|
+
strokeWidth: 1.5
|
|
13144
|
+
}
|
|
13145
|
+
)
|
|
13146
|
+
}
|
|
13147
|
+
);
|
|
13148
|
+
}
|
|
13149
|
+
return /* @__PURE__ */ (0, import_jsx_runtime33.jsxs)(
|
|
13150
|
+
"div",
|
|
13102
13151
|
{
|
|
13103
|
-
|
|
13104
|
-
|
|
13152
|
+
ref,
|
|
13153
|
+
className: cn(
|
|
13154
|
+
"flex flex-col items-center justify-center gap-3 text-center",
|
|
13155
|
+
className
|
|
13156
|
+
),
|
|
13157
|
+
...props,
|
|
13158
|
+
children: [
|
|
13159
|
+
/* @__PURE__ */ (0, import_jsx_runtime33.jsx)("div", { className: SPINNER_TOKENS.base, children: /* @__PURE__ */ (0, import_jsx_runtime33.jsx)(
|
|
13160
|
+
import_lucide_react14.Loader2,
|
|
13161
|
+
{
|
|
13162
|
+
className: cn(SPINNER_TOKENS.size[size], SPINNER_TOKENS.icon),
|
|
13163
|
+
strokeWidth: 1.5
|
|
13164
|
+
}
|
|
13165
|
+
) }),
|
|
13166
|
+
title ? /* @__PURE__ */ (0, import_jsx_runtime33.jsx)(Typography, { variant: "label-md", tone: "default", children: title }) : null,
|
|
13167
|
+
texts && texts.length > 0 ? /* @__PURE__ */ (0, import_jsx_runtime33.jsx)(Typography, { variant: "subtext-xs", tone: "muted", children: texts[currentTextIndex] }) : null
|
|
13168
|
+
]
|
|
13105
13169
|
}
|
|
13106
|
-
)
|
|
13170
|
+
);
|
|
13107
13171
|
}
|
|
13108
13172
|
);
|
|
13109
13173
|
Spinner.displayName = "Spinner";
|
|
@@ -17359,8 +17423,85 @@ function MultiSelectRow({
|
|
|
17359
17423
|
);
|
|
17360
17424
|
}
|
|
17361
17425
|
|
|
17362
|
-
// src/
|
|
17426
|
+
// src/chip/chip.tsx
|
|
17363
17427
|
var React48 = __toESM(require("react"));
|
|
17428
|
+
|
|
17429
|
+
// src/chip/variables.ts
|
|
17430
|
+
var CHIP_TOKENS = {
|
|
17431
|
+
base: (
|
|
17432
|
+
// Layout
|
|
17433
|
+
"relative inline-flex items-center justify-center gap-2.5 px-2.5 py-1.5 rounded-full text-xs leading-4 font-semibold tracking-normal whitespace-nowrap border border-transparent transition-[background-color,color,border-color,transform] duration-150 [&>svg]:size-4 [&>svg]:shrink-0 focus-visible:outline focus-visible:outline-2 focus-visible:outline-token-brand focus-visible:outline-offset-2 disabled:pointer-events-none disabled:opacity-50 cursor-pointer active:scale-[0.96]"
|
|
17434
|
+
),
|
|
17435
|
+
// Active (unselected)
|
|
17436
|
+
active: "bg-transparent border-token-light text-fg-grey-secondary hover:bg-interaction-hov-solid-primary hover:text-fg-black active:bg-interaction-hov-solid-primary active:text-fg-black",
|
|
17437
|
+
// Selected — uses ::after for the hover/pressed overlay so the brand
|
|
17438
|
+
// bg color stays consistent and the overlay strength is independent.
|
|
17439
|
+
selected: "bg-token-brand-secondary text-fg-brand overflow-hidden after:content-[''] after:absolute after:inset-0 after:rounded-[inherit] after:pointer-events-none after:bg-black/5 after:opacity-0 after:transition-opacity hover:after:opacity-100 active:after:opacity-100",
|
|
17440
|
+
// Non-interactive — used when the chip is rendered as a static <div>
|
|
17441
|
+
// (e.g. for display-only contexts). Skips the cursor / focus / press
|
|
17442
|
+
// affordances so it doesn't read as clickable.
|
|
17443
|
+
staticOverrides: "cursor-default active:scale-100"
|
|
17444
|
+
};
|
|
17445
|
+
|
|
17446
|
+
// src/chip/chip.tsx
|
|
17447
|
+
var import_jsx_runtime44 = require("react/jsx-runtime");
|
|
17448
|
+
var Chip = React48.forwardRef(
|
|
17449
|
+
({
|
|
17450
|
+
className,
|
|
17451
|
+
selected = false,
|
|
17452
|
+
onClick,
|
|
17453
|
+
leadingIcon,
|
|
17454
|
+
trailingIcon,
|
|
17455
|
+
disabled = false,
|
|
17456
|
+
children,
|
|
17457
|
+
"data-testid": dataTestId,
|
|
17458
|
+
...rest
|
|
17459
|
+
}, ref) => {
|
|
17460
|
+
const classes = cn(
|
|
17461
|
+
CHIP_TOKENS.base,
|
|
17462
|
+
selected ? CHIP_TOKENS.selected : CHIP_TOKENS.active,
|
|
17463
|
+
!onClick && CHIP_TOKENS.staticOverrides,
|
|
17464
|
+
className
|
|
17465
|
+
);
|
|
17466
|
+
const content = /* @__PURE__ */ (0, import_jsx_runtime44.jsxs)(import_jsx_runtime44.Fragment, { children: [
|
|
17467
|
+
leadingIcon,
|
|
17468
|
+
children !== void 0 && children !== null && /* @__PURE__ */ (0, import_jsx_runtime44.jsx)("span", { className: "text-left", children }),
|
|
17469
|
+
trailingIcon
|
|
17470
|
+
] });
|
|
17471
|
+
if (!onClick) {
|
|
17472
|
+
return /* @__PURE__ */ (0, import_jsx_runtime44.jsx)(
|
|
17473
|
+
"div",
|
|
17474
|
+
{
|
|
17475
|
+
ref,
|
|
17476
|
+
className: classes,
|
|
17477
|
+
"data-testid": dataTestId != null ? dataTestId : "chip",
|
|
17478
|
+
"data-state": selected ? "selected" : "active",
|
|
17479
|
+
"aria-disabled": disabled || void 0,
|
|
17480
|
+
children: content
|
|
17481
|
+
}
|
|
17482
|
+
);
|
|
17483
|
+
}
|
|
17484
|
+
return /* @__PURE__ */ (0, import_jsx_runtime44.jsx)(
|
|
17485
|
+
"button",
|
|
17486
|
+
{
|
|
17487
|
+
ref,
|
|
17488
|
+
type: "button",
|
|
17489
|
+
className: classes,
|
|
17490
|
+
onClick,
|
|
17491
|
+
disabled,
|
|
17492
|
+
"aria-pressed": selected,
|
|
17493
|
+
"data-state": selected ? "selected" : "active",
|
|
17494
|
+
"data-testid": dataTestId != null ? dataTestId : "chip",
|
|
17495
|
+
...rest,
|
|
17496
|
+
children: content
|
|
17497
|
+
}
|
|
17498
|
+
);
|
|
17499
|
+
}
|
|
17500
|
+
);
|
|
17501
|
+
Chip.displayName = "Chip";
|
|
17502
|
+
|
|
17503
|
+
// src/rule-builder/rule-builder.tsx
|
|
17504
|
+
var React49 = __toESM(require("react"));
|
|
17364
17505
|
var import_lucide_react25 = require("lucide-react");
|
|
17365
17506
|
|
|
17366
17507
|
// src/rule-builder/variables.ts
|
|
@@ -17400,8 +17541,8 @@ var RULE_BUILDER_TOKENS = {
|
|
|
17400
17541
|
};
|
|
17401
17542
|
|
|
17402
17543
|
// src/rule-builder/rule-builder.tsx
|
|
17403
|
-
var
|
|
17404
|
-
var RuleBuilder =
|
|
17544
|
+
var import_jsx_runtime45 = require("react/jsx-runtime");
|
|
17545
|
+
var RuleBuilder = React49.forwardRef(
|
|
17405
17546
|
({
|
|
17406
17547
|
title,
|
|
17407
17548
|
open: openProp,
|
|
@@ -17417,17 +17558,17 @@ var RuleBuilder = React48.forwardRef(
|
|
|
17417
17558
|
style,
|
|
17418
17559
|
"data-testid": dataTestId
|
|
17419
17560
|
}, ref) => {
|
|
17420
|
-
const [openState, setOpenState] =
|
|
17561
|
+
const [openState, setOpenState] = React49.useState(defaultOpen);
|
|
17421
17562
|
const isControlled = openProp !== void 0;
|
|
17422
17563
|
const open = isControlled ? openProp : openState;
|
|
17423
|
-
const handleToggle =
|
|
17564
|
+
const handleToggle = React49.useCallback(() => {
|
|
17424
17565
|
const next = !open;
|
|
17425
17566
|
if (!isControlled) setOpenState(next);
|
|
17426
17567
|
onOpenChange == null ? void 0 : onOpenChange(next);
|
|
17427
17568
|
}, [open, isControlled, onOpenChange]);
|
|
17428
|
-
const titleIconNode = titleIcon != null ? titleIcon : /* @__PURE__ */ (0,
|
|
17429
|
-
const thenIconNode = thenIcon != null ? thenIcon : /* @__PURE__ */ (0,
|
|
17430
|
-
return /* @__PURE__ */ (0,
|
|
17569
|
+
const titleIconNode = titleIcon != null ? titleIcon : /* @__PURE__ */ (0, import_jsx_runtime45.jsx)(import_lucide_react25.Workflow, {});
|
|
17570
|
+
const thenIconNode = thenIcon != null ? thenIcon : /* @__PURE__ */ (0, import_jsx_runtime45.jsx)(import_lucide_react25.FileOutput, {});
|
|
17571
|
+
return /* @__PURE__ */ (0, import_jsx_runtime45.jsxs)(
|
|
17431
17572
|
"div",
|
|
17432
17573
|
{
|
|
17433
17574
|
ref,
|
|
@@ -17436,31 +17577,31 @@ var RuleBuilder = React48.forwardRef(
|
|
|
17436
17577
|
"data-testid": dataTestId != null ? dataTestId : "rule-builder",
|
|
17437
17578
|
"data-state": open ? "open" : "closed",
|
|
17438
17579
|
children: [
|
|
17439
|
-
/* @__PURE__ */ (0,
|
|
17580
|
+
/* @__PURE__ */ (0, import_jsx_runtime45.jsxs)(
|
|
17440
17581
|
"div",
|
|
17441
17582
|
{
|
|
17442
17583
|
className: open ? RULE_BUILDER_TOKENS.card : RULE_BUILDER_TOKENS.cardCollapsed,
|
|
17443
17584
|
children: [
|
|
17444
|
-
/* @__PURE__ */ (0,
|
|
17445
|
-
/* @__PURE__ */ (0,
|
|
17446
|
-
/* @__PURE__ */ (0,
|
|
17447
|
-
onDelete ? /* @__PURE__ */ (0,
|
|
17585
|
+
/* @__PURE__ */ (0, import_jsx_runtime45.jsxs)("div", { className: RULE_BUILDER_TOKENS.header, children: [
|
|
17586
|
+
/* @__PURE__ */ (0, import_jsx_runtime45.jsx)(Badge, { variant: "default", interactive: false, leadingIcon: titleIconNode, children: title }),
|
|
17587
|
+
/* @__PURE__ */ (0, import_jsx_runtime45.jsxs)("div", { className: RULE_BUILDER_TOKENS.headerActions, children: [
|
|
17588
|
+
onDelete ? /* @__PURE__ */ (0, import_jsx_runtime45.jsx)(
|
|
17448
17589
|
Button,
|
|
17449
17590
|
{
|
|
17450
17591
|
variant: "iconLink",
|
|
17451
17592
|
size: "iconXs",
|
|
17452
|
-
leadingIcon: /* @__PURE__ */ (0,
|
|
17593
|
+
leadingIcon: /* @__PURE__ */ (0, import_jsx_runtime45.jsx)(import_lucide_react25.Trash2, {}),
|
|
17453
17594
|
onClick: onDelete,
|
|
17454
17595
|
"aria-label": "Delete rule",
|
|
17455
17596
|
"data-testid": "rule-builder-delete"
|
|
17456
17597
|
}
|
|
17457
17598
|
) : null,
|
|
17458
|
-
/* @__PURE__ */ (0,
|
|
17599
|
+
/* @__PURE__ */ (0, import_jsx_runtime45.jsx)(
|
|
17459
17600
|
Button,
|
|
17460
17601
|
{
|
|
17461
17602
|
variant: "iconLink",
|
|
17462
17603
|
size: "iconXs",
|
|
17463
|
-
leadingIcon: open ? /* @__PURE__ */ (0,
|
|
17604
|
+
leadingIcon: open ? /* @__PURE__ */ (0, import_jsx_runtime45.jsx)(import_lucide_react25.ChevronUp, {}) : /* @__PURE__ */ (0, import_jsx_runtime45.jsx)(import_lucide_react25.ChevronDown, {}),
|
|
17464
17605
|
onClick: handleToggle,
|
|
17465
17606
|
"aria-expanded": open,
|
|
17466
17607
|
"aria-label": open ? "Collapse rule" : "Expand rule",
|
|
@@ -17469,16 +17610,16 @@ var RuleBuilder = React48.forwardRef(
|
|
|
17469
17610
|
)
|
|
17470
17611
|
] })
|
|
17471
17612
|
] }),
|
|
17472
|
-
open ? /* @__PURE__ */ (0,
|
|
17613
|
+
open ? /* @__PURE__ */ (0, import_jsx_runtime45.jsx)("div", { className: RULE_BUILDER_TOKENS.body, children }) : null
|
|
17473
17614
|
]
|
|
17474
17615
|
}
|
|
17475
17616
|
),
|
|
17476
|
-
open && thenContent ? /* @__PURE__ */ (0,
|
|
17477
|
-
/* @__PURE__ */ (0,
|
|
17617
|
+
open && thenContent ? /* @__PURE__ */ (0, import_jsx_runtime45.jsxs)("div", { className: RULE_BUILDER_TOKENS.thenStrip, children: [
|
|
17618
|
+
/* @__PURE__ */ (0, import_jsx_runtime45.jsxs)("div", { className: RULE_BUILDER_TOKENS.thenLabel, children: [
|
|
17478
17619
|
thenIconNode,
|
|
17479
|
-
/* @__PURE__ */ (0,
|
|
17620
|
+
/* @__PURE__ */ (0, import_jsx_runtime45.jsx)("span", { children: thenLabel })
|
|
17480
17621
|
] }),
|
|
17481
|
-
/* @__PURE__ */ (0,
|
|
17622
|
+
/* @__PURE__ */ (0, import_jsx_runtime45.jsx)("div", { className: RULE_BUILDER_TOKENS.thenContent, children: thenContent })
|
|
17482
17623
|
] }) : null
|
|
17483
17624
|
]
|
|
17484
17625
|
}
|
|
@@ -17486,19 +17627,19 @@ var RuleBuilder = React48.forwardRef(
|
|
|
17486
17627
|
}
|
|
17487
17628
|
);
|
|
17488
17629
|
RuleBuilder.displayName = "RuleBuilder";
|
|
17489
|
-
var RuleBuilderClause =
|
|
17490
|
-
label !== null && label !== void 0 && label !== "" ? /* @__PURE__ */ (0,
|
|
17491
|
-
/* @__PURE__ */ (0,
|
|
17630
|
+
var RuleBuilderClause = React49.forwardRef(({ label = "IF", children, className }, ref) => /* @__PURE__ */ (0, import_jsx_runtime45.jsxs)("div", { ref, className: cn("flex flex-col gap-2 w-full", className), children: [
|
|
17631
|
+
label !== null && label !== void 0 && label !== "" ? /* @__PURE__ */ (0, import_jsx_runtime45.jsx)("div", { className: RULE_BUILDER_TOKENS.clauseLabel, children: label }) : null,
|
|
17632
|
+
/* @__PURE__ */ (0, import_jsx_runtime45.jsx)("div", { className: RULE_BUILDER_TOKENS.conditionsGroup, children })
|
|
17492
17633
|
] }));
|
|
17493
17634
|
RuleBuilderClause.displayName = "RuleBuilderClause";
|
|
17494
|
-
var RuleBuilderCondition =
|
|
17635
|
+
var RuleBuilderCondition = React49.forwardRef(({ children, onDelete, className }, ref) => /* @__PURE__ */ (0, import_jsx_runtime45.jsxs)("div", { ref, className: cn(RULE_BUILDER_TOKENS.conditionRow, className), children: [
|
|
17495
17636
|
children,
|
|
17496
|
-
onDelete ? /* @__PURE__ */ (0,
|
|
17637
|
+
onDelete ? /* @__PURE__ */ (0, import_jsx_runtime45.jsx)(
|
|
17497
17638
|
Button,
|
|
17498
17639
|
{
|
|
17499
17640
|
variant: "iconLink",
|
|
17500
17641
|
size: "iconXs",
|
|
17501
|
-
leadingIcon: /* @__PURE__ */ (0,
|
|
17642
|
+
leadingIcon: /* @__PURE__ */ (0, import_jsx_runtime45.jsx)(import_lucide_react25.Trash2, {}),
|
|
17502
17643
|
onClick: onDelete,
|
|
17503
17644
|
"aria-label": "Delete condition",
|
|
17504
17645
|
"data-testid": "rule-builder-condition-delete"
|
|
@@ -17506,26 +17647,26 @@ var RuleBuilderCondition = React48.forwardRef(({ children, onDelete, className }
|
|
|
17506
17647
|
) : null
|
|
17507
17648
|
] }));
|
|
17508
17649
|
RuleBuilderCondition.displayName = "RuleBuilderCondition";
|
|
17509
|
-
var RuleBuilderConnector =
|
|
17510
|
-
/* @__PURE__ */ (0,
|
|
17511
|
-
/* @__PURE__ */ (0,
|
|
17512
|
-
/* @__PURE__ */ (0,
|
|
17650
|
+
var RuleBuilderConnector = React49.forwardRef(({ children, className }, ref) => /* @__PURE__ */ (0, import_jsx_runtime45.jsxs)("div", { ref, className: cn("flex flex-col w-full", className), children: [
|
|
17651
|
+
/* @__PURE__ */ (0, import_jsx_runtime45.jsx)("div", { className: RULE_BUILDER_TOKENS.connectorLine, "aria-hidden": "true", children: /* @__PURE__ */ (0, import_jsx_runtime45.jsx)("div", { className: RULE_BUILDER_TOKENS.connectorLineInner }) }),
|
|
17652
|
+
/* @__PURE__ */ (0, import_jsx_runtime45.jsx)("div", { className: RULE_BUILDER_TOKENS.connectorRow, children }),
|
|
17653
|
+
/* @__PURE__ */ (0, import_jsx_runtime45.jsx)("div", { className: RULE_BUILDER_TOKENS.connectorLine, "aria-hidden": "true", children: /* @__PURE__ */ (0, import_jsx_runtime45.jsx)("div", { className: RULE_BUILDER_TOKENS.connectorLineInner }) })
|
|
17513
17654
|
] }));
|
|
17514
17655
|
RuleBuilderConnector.displayName = "RuleBuilderConnector";
|
|
17515
|
-
var RuleBuilderAddCondition =
|
|
17656
|
+
var RuleBuilderAddCondition = React49.forwardRef(
|
|
17516
17657
|
({
|
|
17517
17658
|
label = "Add Condition",
|
|
17518
17659
|
onClick,
|
|
17519
17660
|
disabled,
|
|
17520
17661
|
className,
|
|
17521
17662
|
"data-testid": dataTestId
|
|
17522
|
-
}, ref) => /* @__PURE__ */ (0,
|
|
17663
|
+
}, ref) => /* @__PURE__ */ (0, import_jsx_runtime45.jsx)("div", { className: RULE_BUILDER_TOKENS.addConditionRow, children: /* @__PURE__ */ (0, import_jsx_runtime45.jsx)(
|
|
17523
17664
|
Button,
|
|
17524
17665
|
{
|
|
17525
17666
|
ref,
|
|
17526
17667
|
variant: "outline",
|
|
17527
17668
|
size: "xs",
|
|
17528
|
-
leadingIcon: /* @__PURE__ */ (0,
|
|
17669
|
+
leadingIcon: /* @__PURE__ */ (0, import_jsx_runtime45.jsx)(import_lucide_react25.Plus, {}),
|
|
17529
17670
|
onClick,
|
|
17530
17671
|
disabled,
|
|
17531
17672
|
className,
|
|
@@ -17552,6 +17693,7 @@ RuleBuilderAddCondition.displayName = "RuleBuilderAddCondition";
|
|
|
17552
17693
|
ChatBubbleAgent,
|
|
17553
17694
|
ChatBubbleUser,
|
|
17554
17695
|
Checkbox,
|
|
17696
|
+
Chip,
|
|
17555
17697
|
ColumnWidth,
|
|
17556
17698
|
CompoundFilterSelect,
|
|
17557
17699
|
DEFAULT_THEME,
|