@kubit-ui-web/react-components
Version:
Kubit React Components is a customizable, accessible library of React web components, designed to enhance your application's user experience
51 lines • 2.66 kB
JavaScript
;
var __importDefault = (this && this.__importDefault) || function (mod) {
return (mod && mod.__esModule) ? mod : { "default": mod };
};
Object.defineProperty(exports, "__esModule", { value: true });
exports.FunctionalitiesModule = exports.FunctionalitiesModuleUnControlled = void 0;
const jsx_runtime_1 = require("react/jsx-runtime");
const react_1 = __importDefault(require("react"));
const functionalitiesModuleControlled_1 = require("./functionalitiesModuleControlled");
const functionalitiesModule_utils_1 = require("./utils/functionalitiesModule.utils");
const FunctionalitiesModuleUnControlledComponent = ({ defaultOpen = false, trigger, actionBottomSheet, onOpenClose, onOptionClick, defaultSelectedValue, tabsConfig, ...props }, ref) => {
const [selectedValue, setSelectedValue] = react_1.default.useState(defaultSelectedValue);
const [open, setOpen] = react_1.default.useState(defaultOpen);
const handleOptionClick = (value) => {
setSelectedValue(value);
onOptionClick?.(value);
setOpen(false);
};
const handleTriggerClick = e => {
setOpen(true);
trigger?.onClick?.(e);
onOpenClose?.(true);
};
const handleActionBottomSheetCloseIconClick = e => {
setOpen(false);
actionBottomSheet?.closeIcon?.onClick?.(e);
onOpenClose?.(false);
};
const handleActionBottomSheetPopoverCloseInternally = () => {
setOpen(false);
actionBottomSheet?.popover?.onCloseInternally?.();
onOpenClose?.(false);
};
return ((0, jsx_runtime_1.jsx)(functionalitiesModuleControlled_1.FunctionalitiesModuleControlled, { ...props, ref: ref, actionBottomSheet: {
...actionBottomSheet,
closeIcon: {
...actionBottomSheet?.closeIcon,
onClick: handleActionBottomSheetCloseIconClick,
},
popover: {
...actionBottomSheet?.popover,
onCloseInternally: handleActionBottomSheetPopoverCloseInternally,
},
}, open: open, selectedValue: selectedValue, tabsConfig: {
...tabsConfig,
defaultSelectedTab: tabsConfig?.defaultSelectedTab ?? (0, functionalitiesModule_utils_1.getDefaultTabSeleted)(selectedValue, props.sections),
}, trigger: trigger && { ...trigger, onClick: handleTriggerClick }, onOptionClick: handleOptionClick }));
};
exports.FunctionalitiesModuleUnControlled = react_1.default.forwardRef(FunctionalitiesModuleUnControlledComponent);
exports.FunctionalitiesModule = exports.FunctionalitiesModuleUnControlled;
//# sourceMappingURL=functionalitiesModuleUnControlled.js.map