@dust-tt/sparkle 0.2.56 → 0.2.57

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.
@@ -7,12 +7,12 @@ export interface DropdownMenuProps {
7
7
  export declare function DropdownMenu({ children, className }: DropdownMenuProps): React.JSX.Element;
8
8
  export declare namespace DropdownMenu {
9
9
  var Button: ({ label, type, size, tooltip, icon, children, tooltipPosition, className, disabled, onClick, }: DropdownButtonProps) => React.JSX.Element;
10
- var Item: ({ label, description, href, disabled, visual, icon, onClick, }: DropdownItemProps) => React.JSX.Element;
10
+ var Item: ({ label, description, href, disabled, visual, icon, onClick, hasChildren, children, }: DropdownItemProps) => React.JSX.Element;
11
11
  var Items: ({ origin, width, children, }: DropdownItemsProps) => React.JSX.Element;
12
12
  }
13
13
  export interface DropdownButtonProps {
14
14
  label?: string;
15
- type?: "menu" | "select";
15
+ type?: "menu" | "submenu" | "select";
16
16
  size?: "sm" | "md";
17
17
  tooltip?: string;
18
18
  tooltipPosition?: TooltipProps["position"];
@@ -30,6 +30,8 @@ interface DropdownItemProps {
30
30
  visual?: string | React.ReactNode;
31
31
  icon?: ComponentType;
32
32
  onClick?: () => void;
33
+ hasChildren?: boolean;
34
+ children?: React.ReactNode;
33
35
  }
34
36
  interface DropdownItemsProps {
35
37
  origin?: "topLeft" | "topRight" | "bottomLeft" | "bottomRight" | "auto";
package/dist/cjs/index.js CHANGED
@@ -32758,17 +32758,18 @@ DropdownMenu.Button = function (_a) {
32758
32758
  return (React.createElement(React.Fragment, null, tooltip ? (React.createElement(Tooltip, { label: tooltip, position: tooltipPosition },
32759
32759
  React.createElement(it.Button, { disabled: disabled, ref: buttonRef, className: classNames(disabled ? "s-cursor-default" : "s-cursor-pointer", className, "s-group s-flex s-justify-items-center s-text-sm s-font-medium focus:s-outline-none focus:s-ring-0", label ? (size === "md" ? "s-gap-2" : "s-gap-1.5") : "s-gap-0.5") },
32760
32760
  React.createElement(Icon, { visual: icon, size: size, className: finalIconClasses }),
32761
- React.createElement(Icon, { visual: type === "select" ? SvgChevronUpDown$1 : SvgChevronDown$1, size: size === "sm" ? "xs" : "sm", className: finalChevronClasses })))) : (React.createElement(it.Button, { disabled: disabled, ref: buttonRef, className: classNames(disabled ? "s-cursor-default" : "s-cursor-pointer", className, "s-group s-flex s-justify-items-center s-text-sm s-font-medium focus:s-outline-none focus:s-ring-0", label ? (size === "md" ? "s-gap-2" : "s-gap-1.5") : "s-gap-0.5") },
32761
+ React.createElement(Icon, { visual: type === "select" ? SvgChevronUpDown$1 : SvgChevronDown$1, size: size === "sm" ? "xs" : "sm", className: finalChevronClasses })))) : (React.createElement(it.Button, { disabled: disabled, ref: buttonRef, className: classNames(disabled ? "s-cursor-default" : "s-cursor-pointer", className, "s-group s-flex s-justify-items-center s-text-sm s-font-medium focus:s-outline-none focus:s-ring-0", label ? (size === "md" ? "s-gap-2" : "s-gap-1.5") : "s-gap-0.5", type === "submenu" ? "s-opacity-50" : "") },
32762
32762
  React.createElement(Icon, { visual: icon, size: size, className: finalIconClasses }),
32763
- React.createElement("span", { className: finalLabelClasses }, label),
32763
+ React.createElement("span", { className: classNames(finalLabelClasses, type === "submenu" ? "s-w-full" : "") }, label),
32764
32764
  React.createElement(Icon, { visual: type === "select" ? SvgChevronUpDown$1 : SvgChevronDown$1, size: size === "sm" ? "xs" : "sm", className: finalChevronClasses })))));
32765
32765
  };
32766
32766
  DropdownMenu.Item = function (_a) {
32767
- var label = _a.label, description = _a.description, href = _a.href, disabled = _a.disabled, visual = _a.visual, icon = _a.icon, onClick = _a.onClick;
32767
+ var label = _a.label, description = _a.description, href = _a.href, disabled = _a.disabled, visual = _a.visual, icon = _a.icon, onClick = _a.onClick, hasChildren = _a.hasChildren, children = _a.children;
32768
32768
  return (
32769
32769
  // need to use as="div" -- otherwise we get a "forwardRef" error in the console
32770
- React.createElement(it.Item, { disabled: disabled, as: "div" },
32771
- React.createElement(Item.Dropdown, { className: "s-w-full s-px-4", href: href, onClick: onClick, label: label, visual: visual, icon: icon, description: description })));
32770
+ React.createElement(it.Item, { disabled: disabled, as: "div" }, hasChildren ? (React.createElement(DropdownMenu, { className: "s-w-full s-gap-x-2 s-px-4 s-py-2" },
32771
+ React.createElement(DropdownMenu.Button, { label: label, type: "submenu", className: "s-w-full" }),
32772
+ children)) : (React.createElement(Item.Dropdown, { className: "s-w-full s-px-4", href: href, onClick: onClick, label: label, visual: visual, icon: icon, description: description }))));
32772
32773
  };
32773
32774
  DropdownMenu.Items = function (_a) {
32774
32775
  var _b = _a.origin, origin = _b === void 0 ? "auto" : _b, _c = _a.width, width = _c === void 0 ? 160 : _c, children = _a.children;