@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/cjs/index.js
CHANGED
|
@@ -76007,10 +76007,25 @@ var visualTable = {
|
|
|
76007
76007
|
channel: SvgChatBubbleBottomCenterText,
|
|
76008
76008
|
};
|
|
76009
76009
|
Tree.Item = function (_a) {
|
|
76010
|
-
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,
|
|
76010
|
+
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;
|
|
76011
|
+
var _e = __read(React.useState(defaultCollapsed !== null && defaultCollapsed !== void 0 ? defaultCollapsed : true), 2), collapsedState = _e[0], setCollapsedState = _e[1];
|
|
76012
|
+
var isControlledCollapse = collapsed !== undefined;
|
|
76013
|
+
var effectiveCollapsed = isControlledCollapse ? collapsed : collapsedState;
|
|
76014
|
+
var effectiveOnChevronClick = isControlledCollapse
|
|
76015
|
+
? onChevronClick
|
|
76016
|
+
: function () { return setCollapsedState(!collapsedState); };
|
|
76017
|
+
var getChildren = function () {
|
|
76018
|
+
if (effectiveCollapsed) {
|
|
76019
|
+
return [];
|
|
76020
|
+
}
|
|
76021
|
+
return typeof renderTreeItems === "function" ? renderTreeItems() : children;
|
|
76022
|
+
};
|
|
76023
|
+
var childrenToRender = getChildren();
|
|
76011
76024
|
return (React.createElement(React.Fragment, null,
|
|
76012
76025
|
React.createElement("div", { className: classNames(className ? className : "", "s-flex s-flex-row s-items-center s-gap-4 s-py-1") },
|
|
76013
|
-
type === "node" && (React.createElement(IconButton, { icon:
|
|
76026
|
+
type === "node" && (React.createElement(IconButton, { icon: childrenToRender && !effectiveCollapsed
|
|
76027
|
+
? SvgChevronDown
|
|
76028
|
+
: SvgChevronRight, size: "sm", variant: "secondary", onClick: effectiveOnChevronClick })),
|
|
76014
76029
|
type === "leaf" && React.createElement("div", { className: "s-w-5" }),
|
|
76015
76030
|
checkbox && React.createElement(Checkbox, __assign({}, checkbox)),
|
|
76016
76031
|
React.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" },
|
|
@@ -76018,7 +76033,7 @@ Tree.Item = function (_a) {
|
|
|
76018
76033
|
visual ? (visual) : (React.createElement(Icon, { visual: visualTable[variant], size: "sm", className: "s-flex-shrink-0 s-text-element-700" })),
|
|
76019
76034
|
React.createElement("div", { className: "s-truncate" }, label),
|
|
76020
76035
|
actions && React.createElement("div", { className: "s-inline-block s-pl-5" }, actions)))),
|
|
76021
|
-
React.Children.count(
|
|
76036
|
+
React.Children.count(childrenToRender) > 0 && (React.createElement("div", { className: "s-pl-5" }, childrenToRender))));
|
|
76022
76037
|
};
|
|
76023
76038
|
|
|
76024
76039
|
var baseClasses = "s-transition-all s-ease-out s-duration-300 s-cursor-pointer hover:s-scale-110";
|