@dust-tt/sparkle 0.2.162 → 0.2.163
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/cjs/components/Tree.d.ts +11 -2
- package/dist/cjs/index.js +18 -3
- package/dist/cjs/index.js.map +1 -1
- package/dist/esm/components/Tree.d.ts +11 -2
- package/dist/esm/index.js +18 -3
- package/dist/esm/index.js.map +1 -1
- package/dist/tsconfig.tsbuildinfo +1 -1
- package/package.json +1 -1
|
@@ -6,9 +6,9 @@ export interface TreeProps {
|
|
|
6
6
|
}
|
|
7
7
|
export declare function Tree({ children, isLoading }: TreeProps): React.JSX.Element;
|
|
8
8
|
export declare namespace Tree {
|
|
9
|
-
var Item: ({ label, type, className, variant, visual, checkbox, onChevronClick, collapsed,
|
|
9
|
+
var Item: ({ label, type, className, variant, visual, checkbox, onChevronClick, collapsed, defaultCollapsed, actions, renderTreeItems, children, }: TreeItemPropsWithChildren | TreeItemPropsWithRender) => React.JSX.Element;
|
|
10
10
|
}
|
|
11
|
-
|
|
11
|
+
interface TreeItemProps {
|
|
12
12
|
label?: string;
|
|
13
13
|
type?: "node" | "item" | "leaf";
|
|
14
14
|
variant?: "file" | "folder" | "database" | "channel";
|
|
@@ -16,7 +16,16 @@ export interface TreeItemProps {
|
|
|
16
16
|
checkbox?: CheckboxProps;
|
|
17
17
|
onChevronClick?: () => void;
|
|
18
18
|
collapsed?: boolean;
|
|
19
|
+
defaultCollapsed?: boolean;
|
|
19
20
|
className?: string;
|
|
20
21
|
actions?: React.ReactNode;
|
|
22
|
+
}
|
|
23
|
+
export interface TreeItemPropsWithChildren extends TreeItemProps {
|
|
24
|
+
renderTreeItems?: never;
|
|
21
25
|
children?: React.ReactNode;
|
|
22
26
|
}
|
|
27
|
+
export interface TreeItemPropsWithRender extends TreeItemProps {
|
|
28
|
+
renderTreeItems: () => React.ReactNode;
|
|
29
|
+
children?: never;
|
|
30
|
+
}
|
|
31
|
+
export {};
|
package/dist/esm/index.js
CHANGED
|
@@ -75987,10 +75987,25 @@ var visualTable = {
|
|
|
75987
75987
|
channel: SvgChatBubbleBottomCenterText,
|
|
75988
75988
|
};
|
|
75989
75989
|
Tree.Item = function (_a) {
|
|
75990
|
-
var label = _a.label, _b = _a.type, type = _b === void 0 ? "node" : _b, _c = _a.className, className = _c === void 0 ? "" : _c, _d = _a.variant, variant = _d === void 0 ? "file" : _d, visual = _a.visual, checkbox = _a.checkbox, onChevronClick = _a.onChevronClick, collapsed = _a.collapsed,
|
|
75990
|
+
var label = _a.label, _b = _a.type, type = _b === void 0 ? "node" : _b, _c = _a.className, className = _c === void 0 ? "" : _c, _d = _a.variant, variant = _d === void 0 ? "file" : _d, visual = _a.visual, checkbox = _a.checkbox, onChevronClick = _a.onChevronClick, collapsed = _a.collapsed, defaultCollapsed = _a.defaultCollapsed, actions = _a.actions, renderTreeItems = _a.renderTreeItems, children = _a.children;
|
|
75991
|
+
var _e = __read(useState(defaultCollapsed !== null && defaultCollapsed !== void 0 ? defaultCollapsed : true), 2), collapsedState = _e[0], setCollapsedState = _e[1];
|
|
75992
|
+
var isControlledCollapse = collapsed !== undefined;
|
|
75993
|
+
var effectiveCollapsed = isControlledCollapse ? collapsed : collapsedState;
|
|
75994
|
+
var effectiveOnChevronClick = isControlledCollapse
|
|
75995
|
+
? onChevronClick
|
|
75996
|
+
: function () { return setCollapsedState(!collapsedState); };
|
|
75997
|
+
var getChildren = function () {
|
|
75998
|
+
if (effectiveCollapsed) {
|
|
75999
|
+
return [];
|
|
76000
|
+
}
|
|
76001
|
+
return typeof renderTreeItems === "function" ? renderTreeItems() : children;
|
|
76002
|
+
};
|
|
76003
|
+
var childrenToRender = getChildren();
|
|
75991
76004
|
return (React__default.createElement(React__default.Fragment, null,
|
|
75992
76005
|
React__default.createElement("div", { className: classNames(className ? className : "", "s-flex s-flex-row s-items-center s-gap-4 s-py-1") },
|
|
75993
|
-
type === "node" && (React__default.createElement(IconButton, { icon:
|
|
76006
|
+
type === "node" && (React__default.createElement(IconButton, { icon: childrenToRender && !effectiveCollapsed
|
|
76007
|
+
? SvgChevronDown
|
|
76008
|
+
: SvgChevronRight, size: "sm", variant: "secondary", onClick: effectiveOnChevronClick })),
|
|
75994
76009
|
type === "leaf" && React__default.createElement("div", { className: "s-w-5" }),
|
|
75995
76010
|
checkbox && React__default.createElement(Checkbox, __assign({}, checkbox)),
|
|
75996
76011
|
React__default.createElement("div", { className: "s-flex s-w-full s-items-center s-gap-1.5 s-text-sm s-font-medium s-text-element-900" },
|
|
@@ -75998,7 +76013,7 @@ Tree.Item = function (_a) {
|
|
|
75998
76013
|
visual ? (visual) : (React__default.createElement(Icon, { visual: visualTable[variant], size: "sm", className: "s-flex-shrink-0 s-text-element-700" })),
|
|
75999
76014
|
React__default.createElement("div", { className: "s-truncate" }, label),
|
|
76000
76015
|
actions && React__default.createElement("div", { className: "s-inline-block s-pl-5" }, actions)))),
|
|
76001
|
-
React__default.Children.count(
|
|
76016
|
+
React__default.Children.count(childrenToRender) > 0 && (React__default.createElement("div", { className: "s-pl-5" }, childrenToRender))));
|
|
76002
76017
|
};
|
|
76003
76018
|
|
|
76004
76019
|
var baseClasses = "s-transition-all s-ease-out s-duration-300 s-cursor-pointer hover:s-scale-110";
|