@dust-tt/sparkle 0.2.61-alpha-2 → 0.2.61-alpha-4

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.
@@ -1,7 +1,8 @@
1
1
  import React from "react";
2
2
  type AssistantPreviewVariant = "sm" | "md" | "lg" | "list";
3
3
  interface AssistantPreviewProps {
4
- allowAddAction: boolean;
4
+ allowAddAction?: boolean;
5
+ allowRemoveAction?: boolean;
5
6
  description: string;
6
7
  isAdded: boolean;
7
8
  isUpdatingList: boolean;
@@ -15,4 +16,10 @@ interface AssistantPreviewProps {
15
16
  onUpdate: (action: "added" | "removed") => Promise<void> | void;
16
17
  }
17
18
  export declare function AssistantPreview(props: AssistantPreviewProps): React.JSX.Element;
19
+ export declare namespace AssistantPreview {
20
+ var defaultProps: {
21
+ allowAddAction: boolean;
22
+ allowRemoveAction: boolean;
23
+ };
24
+ }
18
25
  export {};
package/dist/esm/index.js CHANGED
@@ -32215,7 +32215,12 @@ Chip.List = function (_a) {
32215
32215
  React__default.createElement("div", { className: classNames("s-flex s-flex-row s-gap-2", isWrapping ? "s-flex-wrap" : "") }, children)));
32216
32216
  };
32217
32217
 
32218
- function getVariantContent(variant, props) {
32218
+ // Define defaultProps for the AssistantPreview component.
32219
+ AssistantPreview.defaultProps = {
32220
+ allowAddAction: false,
32221
+ allowRemoveAction: false,
32222
+ };
32223
+ function renderVariantContent(variant, props) {
32219
32224
  switch (variant) {
32220
32225
  case "sm":
32221
32226
  return React__default.createElement(SmallVariantContent, null);
@@ -32237,24 +32242,28 @@ var SmallVariantContent = function () {
32237
32242
  var MediumVariantContent = function () {
32238
32243
  throw new Error("Not yet implemented!");
32239
32244
  };
32245
+ var GalleryChip = function (_a) {
32246
+ var allowAddAction = _a.allowAddAction, allowRemoveAction = _a.allowRemoveAction, isAdded = _a.isAdded, isUpdatingList = _a.isUpdatingList, onUpdate = _a.onUpdate;
32247
+ if (!isAdded || !allowAddAction)
32248
+ return null;
32249
+ return (allowAddAction && (React__default.createElement("div", { className: "s-group" },
32250
+ React__default.createElement(Chip, { color: "emerald", size: "xs", label: "Added", className: allowRemoveAction ? "group-hover:s-hidden" : "" }),
32251
+ allowRemoveAction && (React__default.createElement("div", { className: "s-hidden group-hover:s-block" },
32252
+ React__default.createElement(Button.List, { isWrapping: true },
32253
+ React__default.createElement(Button, { key: "remove", variant: "tertiary", icon: SvgDash$1, disabled: isUpdatingList, size: "xs", label: "Remove", onClick: function () { return onUpdate("removed"); } })))))));
32254
+ };
32255
+ var ButtonsGroup = function (_a) {
32256
+ var allowAddAction = _a.allowAddAction, isAdded = _a.isAdded, isUpdatingList = _a.isUpdatingList, isWorkspace = _a.isWorkspace, onShowDetailsClick = _a.onShowDetailsClick, onTestClick = _a.onTestClick, onUpdate = _a.onUpdate;
32257
+ return (React__default.createElement(Button.List, { isWrapping: true },
32258
+ !isAdded && allowAddAction && (React__default.createElement(Button, { key: "add", variant: "tertiary", icon: SvgPlus$1, disabled: isUpdatingList, size: "xs", label: isWorkspace ? "Add to Workspace" : "Add", onClick: function () { return onUpdate("added"); } })),
32259
+ onTestClick && (React__default.createElement(Button, { key: "test", variant: "tertiary", icon: SvgPlay$1, size: "xs", label: "Test", onClick: onTestClick })),
32260
+ onShowDetailsClick && (React__default.createElement(Button, { key: "show_details", icon: SvgMore$1, label: "View Assistant", labelVisible: false, size: "xs", variant: "tertiary", onClick: onShowDetailsClick }))));
32261
+ };
32240
32262
  var LargeVariantContent = function (_a) {
32241
- var _b;
32242
32263
  var props = _a.props;
32243
- var description = props.description, isAdded = props.isAdded, allowAddAction = props.allowAddAction, isUpdatingList = props.isUpdatingList, isWorkspace = props.isWorkspace, name = props.name, onShowDetailsClick = props.onShowDetailsClick, onTestClick = props.onTestClick, onUpdate = props.onUpdate, pictureUrl = props.pictureUrl, subtitle = props.subtitle;
32244
- var galleryChip = isAdded && (React__default.createElement("div", { className: "s-group" },
32245
- React__default.createElement(Chip, { color: "emerald", size: "xs", label: "Added", className: "group-hover:s-hidden" }),
32246
- allowAddAction && (React__default.createElement("div", { className: "s-hidden group-hover:s-block" },
32247
- React__default.createElement(Button.List, { isWrapping: true },
32248
- React__default.createElement(Button, { key: "remove", variant: "tertiary", icon: SvgDash$1, disabled: isUpdatingList, size: "xs", label: "Remove", onClick: function () { return onUpdate("removed"); } }))))));
32249
- var addButton = !isAdded && allowAddAction && (React__default.createElement(Button, { key: "add", variant: "tertiary", icon: SvgPlus$1, disabled: isUpdatingList, size: "xs", label: isWorkspace ? "Add to Workspace" : "Add", onClick: function () { return onUpdate("added"); } }));
32250
- var testButton = null;
32251
- if (onTestClick) {
32252
- testButton = (React__default.createElement(Button, { key: "test", variant: "tertiary", icon: SvgPlay$1, size: "xs", label: "Test", onClick: onTestClick }));
32253
- }
32254
- var showAssistantButton = (React__default.createElement(Button, { key: "show_details", icon: SvgMore$1, label: "View Assistant", labelVisible: false, size: "xs", variant: "tertiary", onClick: onShowDetailsClick }));
32255
- var buttonsToRender = (_b = [addButton, testButton, showAssistantButton].filter(Boolean)) !== null && _b !== void 0 ? _b : [];
32264
+ var allowAddAction = props.allowAddAction, allowRemoveAction = props.allowRemoveAction, description = props.description, isAdded = props.isAdded, isUpdatingList = props.isUpdatingList, isWorkspace = props.isWorkspace, name = props.name, onShowDetailsClick = props.onShowDetailsClick, onTestClick = props.onTestClick, onUpdate = props.onUpdate, pictureUrl = props.pictureUrl, subtitle = props.subtitle;
32256
32265
  return (React__default.createElement("div", { className: "s-flex s-flex-row s-gap-2 s-py-2" },
32257
- React__default.createElement(Avatar, { visual: React__default.createElement("img", { src: pictureUrl, alt: "Agent Avatar" }), size: "md" }),
32266
+ React__default.createElement(Avatar, { visual: React__default.createElement("img", { src: pictureUrl, alt: "Avatar of ".concat(name) }), size: "md" }),
32258
32267
  React__default.createElement("div", { className: "s-flex s-flex-col s-gap-2" },
32259
32268
  React__default.createElement("div", null,
32260
32269
  React__default.createElement("div", { className: "s-text-sm s-font-medium s-text-element-900" },
@@ -32262,8 +32271,8 @@ var LargeVariantContent = function (_a) {
32262
32271
  name),
32263
32272
  React__default.createElement("div", { className: "s-text-sm s-font-normal s-text-element-700" }, subtitle)),
32264
32273
  React__default.createElement("div", { className: "s-flex s-flex-row s-gap-2" },
32265
- galleryChip,
32266
- React__default.createElement(Button.List, { isWrapping: true }, buttonsToRender)),
32274
+ React__default.createElement(GalleryChip, { allowAddAction: allowAddAction, allowRemoveAction: allowRemoveAction, isAdded: isAdded, isUpdatingList: isUpdatingList, onUpdate: onUpdate }),
32275
+ React__default.createElement(ButtonsGroup, { allowAddAction: allowAddAction, isAdded: isAdded, isUpdatingList: isUpdatingList, isWorkspace: isWorkspace, onShowDetailsClick: onShowDetailsClick, onTestClick: onTestClick, onUpdate: onUpdate })),
32267
32276
  React__default.createElement("div", { className: "s-text-sm s-font-normal s-text-element-800" }, description))));
32268
32277
  };
32269
32278
  // TODO:
@@ -32271,8 +32280,7 @@ var ListVariantContent = function () {
32271
32280
  throw new Error("Not yet implemented!");
32272
32281
  };
32273
32282
  function AssistantPreview(props) {
32274
- // You can also use a function to get variant-specific styles or components
32275
- var VariantContent = getVariantContent(props.variant, props);
32283
+ var VariantContent = renderVariantContent(props.variant, props);
32276
32284
  return React__default.createElement("div", null, VariantContent);
32277
32285
  }
32278
32286