UNPKG

@nodeject/ui-components

Version:

UI library for non-trivial components

27 lines (26 loc) 1.51 kB
"use strict"; var __assign = (this && this.__assign) || function () { __assign = Object.assign || function(t) { for (var s, i = 1, n = arguments.length; i < n; i++) { s = arguments[i]; for (var p in s) if (Object.prototype.hasOwnProperty.call(s, p)) t[p] = s[p]; } return t; }; return __assign.apply(this, arguments); }; Object.defineProperty(exports, "__esModule", { value: true }); exports.ToggleComponents = void 0; var React = require("react"); var hooks_1 = require("../hooks"); var ToggleComponents = function (props) { var OtherComponent = props.OtherComponent, InitialComponent = props.InitialComponent, initialComponentProps = props.initialComponentProps, otherComponentProps = props.otherComponentProps; var initialToggleComponent = props.initialState !== undefined ? props.initialState : 'initial'; var defaultToggle = hooks_1.useToggle({ initialState: initialToggleComponent !== 'initial' }); var _a = (props === null || props === void 0 ? void 0 : props.toggle) || defaultToggle, active = _a.active, toggle = _a.toggle, toggleOn = _a.toggleOn, toggleOff = _a.toggleOff; return active ? (React.createElement(OtherComponent, __assign({ toggle: toggle, toggleOff: toggleOff }, otherComponentProps))) : (React.createElement(InitialComponent, __assign({ toggle: toggle, toggleOn: toggleOn }, initialComponentProps))); }; exports.ToggleComponents = ToggleComponents;