@rovula/ui 0.0.59 → 0.0.61
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/bundle.js +1 -1
- package/dist/cjs/bundle.js.map +1 -1
- package/dist/cjs/types/components/Tree/type.d.ts +3 -3
- package/dist/components/DatePicker/DatePicker.js +2 -2
- package/dist/components/Tree/Tree.js +5 -5
- package/dist/components/Tree/TreeItem.js +1 -1
- package/dist/esm/bundle.js +2 -2
- package/dist/esm/bundle.js.map +1 -1
- package/dist/esm/types/components/Tree/type.d.ts +3 -3
- package/dist/index.d.ts +3 -3
- package/package.json +1 -1
- package/src/components/DatePicker/DatePicker.tsx +6 -1
- package/src/components/Tree/Tree.tsx +5 -5
- package/src/components/Tree/TreeItem.tsx +1 -1
- package/src/components/Tree/type.ts +4 -3
|
@@ -33,7 +33,7 @@ export interface TreeItemProps extends TreeData {
|
|
|
33
33
|
checkAutoDisabled: (id: string) => boolean;
|
|
34
34
|
checkIsLoading?: (id: string) => void;
|
|
35
35
|
onExpandChange?: (id: string, expanded: boolean, itemData: any) => void;
|
|
36
|
-
onCheckedChange?: (id: string, checked: boolean) => void;
|
|
36
|
+
onCheckedChange?: (id: string, checked: boolean, itemData: any) => void;
|
|
37
37
|
notifyClickItem?: (id: string, itemData: any) => void;
|
|
38
38
|
renderRightSection?: (params: {
|
|
39
39
|
id: string;
|
|
@@ -84,9 +84,9 @@ export interface TreeProps extends Pick<TreeItemProps, "renderIcon" | "renderRig
|
|
|
84
84
|
checkedId?: string[];
|
|
85
85
|
loadingId?: string[];
|
|
86
86
|
onExpandChange?: (id: string, expanded: boolean, itemData: any) => void;
|
|
87
|
-
onCheckedChange?: (checkedState: Record<string, boolean>, id?: string) => void;
|
|
87
|
+
onCheckedChange?: (checkedState: Record<string, boolean>, id?: string, itemData?: any) => void;
|
|
88
88
|
onClickItem?: (id: string, itemData: any) => void;
|
|
89
|
-
onCheckedItem?: (id: string, checked: boolean) => void;
|
|
89
|
+
onCheckedItem?: (id: string, checked: boolean, itemData: any) => void;
|
|
90
90
|
defaultExpandAll?: boolean;
|
|
91
91
|
defaultCheckAll?: boolean;
|
|
92
92
|
hierarchicalCheck?: boolean;
|
|
@@ -17,11 +17,11 @@ import { Calendar } from "../Calendar";
|
|
|
17
17
|
import { Popover, PopoverContent, PopoverTrigger } from "../Popover/Popover";
|
|
18
18
|
import { TextInput } from "../TextInput/TextInput";
|
|
19
19
|
import { format } from "date-fns/format";
|
|
20
|
+
import { cn } from "@/utils/cn";
|
|
20
21
|
const DatePicker = (_a) => {
|
|
21
22
|
var { date, onSelect, textInputProps, popoverContentProps } = _a, props = __rest(_a, ["date", "onSelect", "textInputProps", "popoverContentProps"]);
|
|
22
23
|
const [isOpen, setIsOpen] = useState(false);
|
|
23
|
-
return (_jsx("div", { children: _jsxs(Popover, { modal: true, open: isOpen, onOpenChange: setIsOpen, children: [_jsx(PopoverTrigger, { asChild: true, children: _jsx("div", { className: "flex", children: _jsx(TextInput, Object.assign({ fullwidth: true, id: "
|
|
24
|
-
, readOnly: true, label: "Date", size: "md", value: date ? format(date, "dd MMM yyyy") : isOpen ? " " : "", hasClearIcon: false, endIcon: _jsx(CalendarIcon, { fill: "inherit", className: "cursor-pointer" }) }, textInputProps)) }) }), _jsx(PopoverContent, Object.assign({ className: "w-auto p-0 z-[100]" }, popoverContentProps, { children: _jsx(Calendar, Object.assign({ defaultMonth: date }, props, { mode: "single", selected: date, onSelect: (...value) => {
|
|
24
|
+
return (_jsx("div", { children: _jsxs(Popover, { modal: true, open: isOpen, onOpenChange: setIsOpen, children: [_jsx(PopoverTrigger, { asChild: true, children: _jsx("div", { className: "flex", children: _jsx(TextInput, Object.assign({ fullwidth: true, id: "date-picker", readOnly: true, label: "Date", size: "md", value: date ? format(date, "dd MMM yyyy") : isOpen ? " " : "", hasClearIcon: false, endIcon: _jsx(CalendarIcon, { fill: "inherit", className: "cursor-pointer" }) }, textInputProps, { labelClassName: cn("pointer-events-none", textInputProps === null || textInputProps === void 0 ? void 0 : textInputProps.labelClassName) })) }) }), _jsx(PopoverContent, Object.assign({ className: "w-auto p-0 z-[100]" }, popoverContentProps, { children: _jsx(Calendar, Object.assign({ defaultMonth: date }, props, { mode: "single", selected: date, onSelect: (...value) => {
|
|
25
25
|
onSelect === null || onSelect === void 0 ? void 0 : onSelect(...value);
|
|
26
26
|
setIsOpen(false);
|
|
27
27
|
} })) }))] }) }));
|
|
@@ -80,15 +80,15 @@ const Tree = ({ classes, data, defaultExpandedId, defaultCheckedId, checkedId, l
|
|
|
80
80
|
onExpandChange === null || onExpandChange === void 0 ? void 0 : onExpandChange(id, expanded, itemData);
|
|
81
81
|
setExpandedState((prev) => (Object.assign(Object.assign({}, prev), { [id]: expanded })));
|
|
82
82
|
}, [onExpandChange]);
|
|
83
|
-
const handleCheckedChange = useCallback((id, checked) => {
|
|
83
|
+
const handleCheckedChange = useCallback((id, checked, itemData) => {
|
|
84
84
|
if (mode === "radio") {
|
|
85
85
|
let newState = { [id]: checked };
|
|
86
|
-
onCheckedItem === null || onCheckedItem === void 0 ? void 0 : onCheckedItem(id, checked);
|
|
86
|
+
onCheckedItem === null || onCheckedItem === void 0 ? void 0 : onCheckedItem(id, checked, itemData);
|
|
87
87
|
setCheckedState(newState);
|
|
88
|
-
onCheckedChange === null || onCheckedChange === void 0 ? void 0 : onCheckedChange(newState, id);
|
|
88
|
+
onCheckedChange === null || onCheckedChange === void 0 ? void 0 : onCheckedChange(newState, id, itemData);
|
|
89
89
|
return;
|
|
90
90
|
}
|
|
91
|
-
onCheckedItem === null || onCheckedItem === void 0 ? void 0 : onCheckedItem(id, checked);
|
|
91
|
+
onCheckedItem === null || onCheckedItem === void 0 ? void 0 : onCheckedItem(id, checked, itemData);
|
|
92
92
|
let newState = Object.assign(Object.assign({}, checkedState), { [id]: checked });
|
|
93
93
|
if (hierarchicalCheck) {
|
|
94
94
|
const updateCheckedState = (nodeId, isChecked, state) => {
|
|
@@ -123,7 +123,7 @@ const Tree = ({ classes, data, defaultExpandedId, defaultCheckedId, checkedId, l
|
|
|
123
123
|
}
|
|
124
124
|
setCheckedState(newState);
|
|
125
125
|
if (onCheckedChange) {
|
|
126
|
-
onCheckedChange === null || onCheckedChange === void 0 ? void 0 : onCheckedChange(newState, id);
|
|
126
|
+
onCheckedChange === null || onCheckedChange === void 0 ? void 0 : onCheckedChange(newState, id, itemData);
|
|
127
127
|
}
|
|
128
128
|
}, [
|
|
129
129
|
checkedState,
|
|
@@ -83,7 +83,7 @@ const TreeItem = ({ id, title, classes, children, isFirstLevel = false, isLeaf =
|
|
|
83
83
|
: content;
|
|
84
84
|
return elementWrapper(_jsx("div", { className: cn("flex flex-row w-full", classes === null || classes === void 0 ? void 0 : classes.elementWrapper), children: _jsxs("div", { className: cn("flex flex-col w-full", classes === null || classes === void 0 ? void 0 : classes.itemWrapper), children: [_jsxs("div", { className: cn("flex flex-row flex-1", classes === null || classes === void 0 ? void 0 : classes.rowWrapperClasses), children: [_jsxs("div", { className: cn("flex flex-col h-full", classes === null || classes === void 0 ? void 0 : classes.columnWrapperClasses), children: [!isFirstLevel && (_jsx("div", { className: cn("flex w-[2px] h-1/2 bg-grey-150", classes === null || classes === void 0 ? void 0 : classes.branch), style: styles.branch })), !isFirstLevel &&
|
|
85
85
|
!isLastItem &&
|
|
86
|
-
((isExpanded && (hasChildren || isLoading)) || !isExpanded) && (_jsx("div", { className: cn("flex w-[2px] h-1/2 bg-grey-150", classes === null || classes === void 0 ? void 0 : classes.branch), style: styles.branch }))] }), _jsxs("div", { className: cn("flex flex-1 items-center py-2 min-h-10", classes === null || classes === void 0 ? void 0 : classes.itemContainer), children: [!isFirstLevel && (_jsx("div", { className: cn("bg-grey-150", classes === null || classes === void 0 ? void 0 : classes.horizontalLine), style: styles.horizontalLine })), isFirstLevel && !shouldExpandButton && (_jsx("div", { className: cn("flex mr-[2px]", classes === null || classes === void 0 ? void 0 : classes.expandButton), style: styles.expandButton })), shouldExpandButton && (_jsx("div", { className: cn("flex mr-[2px]", classes === null || classes === void 0 ? void 0 : classes.expandButton), style: styles.expandButton, onClick: !isLoading && handleExpandToggle, children: _jsx(ActionButton, { variant: "icon", size: "sm", children: isLoading ? (_jsx(Loading, {})) : (_jsx(Icon, { name: isExpanded ? "chevron-down" : "chevron-right" })) }) })), shouldShowCheckbox ? (_jsx(Checkbox, { id: id, className: cn("size-[16px]", classes === null || classes === void 0 ? void 0 : classes.checkbox), checked: isChecked, disabled: disabled, onCheckedChange: (newChecked) => onCheckedChange === null || onCheckedChange === void 0 ? void 0 : onCheckedChange(id, newChecked) })) : (_jsx("div", { className: isFirstLevel && checkable
|
|
86
|
+
((isExpanded && (hasChildren || isLoading)) || !isExpanded) && (_jsx("div", { className: cn("flex w-[2px] h-1/2 bg-grey-150", classes === null || classes === void 0 ? void 0 : classes.branch), style: styles.branch }))] }), _jsxs("div", { className: cn("flex flex-1 items-center py-2 min-h-10", classes === null || classes === void 0 ? void 0 : classes.itemContainer), children: [!isFirstLevel && (_jsx("div", { className: cn("bg-grey-150", classes === null || classes === void 0 ? void 0 : classes.horizontalLine), style: styles.horizontalLine })), isFirstLevel && !shouldExpandButton && (_jsx("div", { className: cn("flex mr-[2px]", classes === null || classes === void 0 ? void 0 : classes.expandButton), style: styles.expandButton })), shouldExpandButton && (_jsx("div", { className: cn("flex mr-[2px]", classes === null || classes === void 0 ? void 0 : classes.expandButton), style: styles.expandButton, onClick: !isLoading && handleExpandToggle, children: _jsx(ActionButton, { variant: "icon", size: "sm", children: isLoading ? (_jsx(Loading, {})) : (_jsx(Icon, { name: isExpanded ? "chevron-down" : "chevron-right" })) }) })), shouldShowCheckbox ? (_jsx(Checkbox, { id: id, className: cn("size-[16px]", classes === null || classes === void 0 ? void 0 : classes.checkbox), checked: isChecked, disabled: disabled, onCheckedChange: (newChecked) => onCheckedChange === null || onCheckedChange === void 0 ? void 0 : onCheckedChange(id, newChecked, itemData) })) : (_jsx("div", { className: isFirstLevel && checkable
|
|
87
87
|
? cn("size-[16px]", classes === null || classes === void 0 ? void 0 : classes.checkbox)
|
|
88
88
|
: "" })), _jsxs("div", { className: cn("ml-2 gap-1 flex flex-1 items-center text-foreground", classes === null || classes === void 0 ? void 0 : classes.item), onClick: handleOnClickItem, children: [showIcon ? customIcon || defaultIcon : null, _jsx("div", { className: cn("flex flex-1 cursor-pointer text-subtitle5 text-ellipsis", classes === null || classes === void 0 ? void 0 : classes.title), children: titleContent })] }), rightIcon] })] }), isExpanded && hasChildren && currentLevel < (maxLevel || Infinity) && (_jsxs("div", { className: cn("flex flex-row overflow-hidden", classes === null || classes === void 0 ? void 0 : classes.expandedChildrenWrapper), children: [!isFirstLevel && !isLastItem && (_jsx("div", { className: cn("flex w-[2px] h-full bg-grey-150", classes === null || classes === void 0 ? void 0 : classes.branch), style: styles.branch })), _jsx("div", { className: cn("flex flex-col overflow-hidden", classes === null || classes === void 0 ? void 0 : classes.expandedChildrenWrapperInner), style: styles.childPadding, children: children === null || children === void 0 ? void 0 : children.map((child, idx) => (_jsx(TreeItem, Object.assign({ classes: classes, isLastItem: idx === children.length - 1, checkIsExpanded: checkIsExpanded, checkIsChecked: checkIsChecked, checkAutoDisabled: checkAutoDisabled, checkIsLoading: checkIsLoading, onExpandChange: onExpandChange, onCheckedChange: onCheckedChange, renderIcon: renderIcon, renderElement: renderElement, renderTitle: renderTitle, disabled: checkAutoDisabled(child.id), showIcon: showIcon, lineSize: lineSize, horizontalLineWidth: horizontalLineWidth, expandButtonSize: expandButtonSize, spacing: spacing, notifyClickItem: notifyClickItem, maxLevel: maxLevel, currentLevel: currentLevel + 1, checkable: checkable }, child), child.id))) })] })), enableSeparatorLine && isFirstLevel && !isLastItem && (_jsx("div", { className: cn("bg-grey-150 w-full h-[2px] rounded", classes === null || classes === void 0 ? void 0 : classes.separatorLine) }))] }) }));
|
|
89
89
|
};
|