@dust-tt/sparkle 0.1.64 → 0.1.66-rc1

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.
@@ -11,3 +11,4 @@ export declare const ListItemExample: () => React.JSX.Element;
11
11
  export declare const ItemMD: Story;
12
12
  export declare const ItemSM: Story;
13
13
  export declare const ItemWithoutIcon: Story;
14
+ export declare const ItemWithImage: Story;
@@ -7,7 +7,7 @@ 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, tooltip, icon, children, tooltipPosition, className, disabled, }: DropdownButtonProps) => React.JSX.Element;
10
- var Item: ({ label, href, disabled, key, onClick, }: DropdownItemProps) => React.JSX.Element;
10
+ var Item: ({ label, href, disabled, key, imageUrl, onClick, }: DropdownItemProps) => React.JSX.Element;
11
11
  var Items: ({ origin, width, children, }: DropdownItemsProps) => React.JSX.Element;
12
12
  }
13
13
  export interface DropdownButtonProps {
@@ -25,6 +25,7 @@ interface DropdownItemProps {
25
25
  href?: string;
26
26
  disabled?: boolean;
27
27
  key?: string;
28
+ imageUrl?: string;
28
29
  onClick?: () => void;
29
30
  }
30
31
  interface DropdownItemsProps {
@@ -7,10 +7,11 @@ type ItemProps = {
7
7
  disabled?: boolean;
8
8
  label: string;
9
9
  icon?: ComponentType;
10
+ imageUrl?: string;
10
11
  className?: string;
11
12
  href?: string;
12
13
  };
13
- export declare function Item({ onClick, selected, size, disabled, variant, label, icon, className, href, }: ItemProps): React.JSX.Element;
14
+ export declare function Item({ onClick, selected, size, disabled, variant, label, icon, imageUrl, className, href, }: ItemProps): React.JSX.Element;
14
15
  export declare namespace Item {
15
16
  var SectionHeader: ({ label }: ItemSectionHeaderProps) => React.JSX.Element;
16
17
  var List: ({ children, className }: ListItemProps) => React.JSX.Element;
package/dist/esm/index.js CHANGED
@@ -497,12 +497,13 @@ function Tab(_a) {
497
497
  ? "s-flex s-gap-x-2"
498
498
  : "s-flex s-gap-x-2 s-transition s-duration-300 s-ease-out" },
499
499
  tab.icon && (React__default.createElement(Icon, { visual: tab.icon, className: finalIconClasses, size: "sm" })), (_b = tab.hideLabel) !== null && _b !== void 0 ? _b : tab.label)));
500
- return tab.hideLabel ? (tab.label ? (React__default.createElement("div", { key: "tab-".concat(i) },
501
- React__default.createElement(Tooltip, { label: tab.label }, content),
502
- tab.hasSeparator && React__default.createElement("div", { className: "s-flex s-h-full s-grow" }))) : (React__default.createElement("div", { key: "tab-".concat(i) },
503
- content,
504
- tab.hasSeparator && React__default.createElement("div", { className: "s-flex s-h-full s-grow" })))) : (React__default.createElement("div", { key: "tab-".concat(i) },
505
- content,
500
+ return tab.hideLabel ? (tab.label ? (React__default.createElement(React__default.Fragment, null,
501
+ React__default.createElement("div", { key: "tab-".concat(i) },
502
+ React__default.createElement(Tooltip, { label: tab.label }, content)),
503
+ tab.hasSeparator && React__default.createElement("div", { className: "s-flex s-h-full s-grow" }))) : (React__default.createElement(React__default.Fragment, null,
504
+ React__default.createElement("div", { key: "tab-".concat(i) }, content),
505
+ tab.hasSeparator && React__default.createElement("div", { className: "s-flex s-h-full s-grow" })))) : (React__default.createElement(React__default.Fragment, null,
506
+ React__default.createElement("div", { key: "tab-".concat(i) }, content),
506
507
  tab.hasSeparator && React__default.createElement("div", { className: "s-flex s-h-full s-grow" })));
507
508
  });
508
509
  };
@@ -534,6 +535,11 @@ var iconClasses$3 = {
534
535
  },
535
536
  },
536
537
  };
538
+ var imageClasses = {
539
+ default: {
540
+ base: "s-h-6 s-w-6 s-rounded-full",
541
+ },
542
+ };
537
543
  var chevronClasses$1 = {
538
544
  default: {
539
545
  base: "s-text-element-600",
@@ -604,7 +610,7 @@ var stateClassesMD = {
604
610
  };
605
611
  function Item(_a) {
606
612
  var _b, _c, _d;
607
- var onClick = _a.onClick, _e = _a.selected, selected = _e === void 0 ? false : _e, _f = _a.size, size = _f === void 0 ? "sm" : _f, _g = _a.disabled, disabled = _g === void 0 ? false : _g, _h = _a.variant, variant = _h === void 0 ? "default" : _h, label = _a.label, icon = _a.icon, _j = _a.className, className = _j === void 0 ? "" : _j, href = _a.href;
613
+ var onClick = _a.onClick, _e = _a.selected, selected = _e === void 0 ? false : _e, _f = _a.size, size = _f === void 0 ? "sm" : _f, _g = _a.disabled, disabled = _g === void 0 ? false : _g, _h = _a.variant, variant = _h === void 0 ? "default" : _h, label = _a.label, icon = _a.icon, imageUrl = _a.imageUrl, _j = _a.className, className = _j === void 0 ? "" : _j, href = _a.href;
608
614
  var components = React__default.useContext(SparkleContext).components;
609
615
  var currentStateClasses = size === "md"
610
616
  ? selected
@@ -623,12 +629,14 @@ function Item(_a) {
623
629
  var finalIconClasses = classNames(iconBaseClasses, currentIconClasses.base, !disabled ? currentIconClasses.hover : "", // Add condition here
624
630
  currentIconClasses.dark.base, !disabled ? currentIconClasses.dark.hover : "" // Add condition here
625
631
  );
632
+ var finalImageClasses = classNames(imageClasses.default.base);
626
633
  var finalCevronClasses = classNames(iconBaseClasses, "s-flex-shrink-0", size === "sm" ? "s-text-transparent" : currentChevronClasses.base, !disabled ? currentChevronClasses.hover : "", // Add condition here
627
634
  currentChevronClasses.dark.base, !disabled ? currentChevronClasses.dark.hover : "" // Add condition here
628
635
  );
629
636
  var Link = href ? components.link : noHrefLink;
630
637
  return (React__default.createElement(Link, { className: itemClasses, onClick: selected || disabled ? undefined : onClick, "aria-label": label, href: href || "#" },
631
638
  icon && React__default.createElement(Icon, { visual: icon, className: finalIconClasses }),
639
+ imageUrl && (React__default.createElement("img", { src: imageUrl, className: classNames(finalImageClasses) })),
632
640
  React__default.createElement("span", { className: "s-grow s-truncate" }, label),
633
641
  variant === "default" && (React__default.createElement(Icon, { visual: SvgChevronRight$1, className: finalCevronClasses, size: "sm" }))));
634
642
  }
@@ -31754,9 +31762,9 @@ DropdownMenu.Button = function (_a) {
31754
31762
  React__default.createElement(Icon, { visual: type === "select" ? SvgChevronUpDown$1 : SvgChevronDown$1, size: "xs", className: finalChevronClasses })))));
31755
31763
  };
31756
31764
  DropdownMenu.Item = function (_a) {
31757
- var label = _a.label, href = _a.href, disabled = _a.disabled, _b = _a.key, key = _b === void 0 ? "" : _b, onClick = _a.onClick;
31765
+ var label = _a.label, href = _a.href, disabled = _a.disabled, _b = _a.key, key = _b === void 0 ? "" : _b, imageUrl = _a.imageUrl, onClick = _a.onClick;
31758
31766
  return (React__default.createElement(it.Item, { disabled: disabled, key: key },
31759
- React__default.createElement(Item, { variant: "dropdown", size: "md", href: href, onClick: onClick, label: label })));
31767
+ React__default.createElement(Item, { variant: "dropdown", size: "md", href: href, onClick: onClick, label: label, imageUrl: imageUrl })));
31760
31768
  };
31761
31769
  DropdownMenu.Items = function (_a) {
31762
31770
  var _b = _a.origin, origin = _b === void 0 ? "topRight" : _b, _c = _a.width, width = _c === void 0 ? 160 : _c, children = _a.children;