UNPKG

@open-formulieren/formio-builder

Version:

An opinionated Formio webform builder for Open Forms

44 lines (43 loc) 2.37 kB
"use strict"; var __rest = (this && this.__rest) || function (s, e) { var t = {}; for (var p in s) if (Object.prototype.hasOwnProperty.call(s, p) && e.indexOf(p) < 0) t[p] = s[p]; if (s != null && typeof Object.getOwnPropertySymbols === "function") for (var i = 0, p = Object.getOwnPropertySymbols(s); i < p.length; i++) { if (e.indexOf(p[i]) < 0 && Object.prototype.propertyIsEnumerable.call(s, p[i])) t[p[i]] = s[p[i]]; } return t; }; var __importDefault = (this && this.__importDefault) || function (mod) { return (mod && mod.__esModule) ? mod : { "default": mod }; }; Object.defineProperty(exports, "__esModule", { value: true }); exports.Tabs = exports.TabPanel = exports.TabList = exports.Tab = void 0; const jsx_runtime_1 = require("react/jsx-runtime"); const clsx_1 = __importDefault(require("clsx")); const react_tabs_1 = require("react-tabs"); const CustomTab = (_a) => { var { children, hasErrors = false } = _a, props = __rest(_a, ["children", "hasErrors"]); const linkClassName = (0, clsx_1.default)('nav-link', { active: props.selected, 'is-invalid': hasErrors, 'tab-error': hasErrors, }); return ((0, jsx_runtime_1.jsx)(react_tabs_1.Tab, Object.assign({ className: "nav-item", selectedClassName: "active" }, props, { children: (0, jsx_runtime_1.jsx)("a", Object.assign({ href: "#", onClick: e => e.preventDefault(), className: linkClassName }, { children: children })) }))); }; exports.Tab = CustomTab; CustomTab.tabsRole = 'Tab'; const CustomTabList = props => ((0, jsx_runtime_1.jsx)("div", Object.assign({ className: "card-header" }, { children: (0, jsx_runtime_1.jsx)(react_tabs_1.TabList, Object.assign({ className: "nav nav-tabs card-header-tabs" }, props)) }))); exports.TabList = CustomTabList; CustomTabList.tabsRole = 'TabList'; const CustomTabs = props => ((0, jsx_runtime_1.jsx)(react_tabs_1.Tabs, Object.assign({ className: "card" }, props))); exports.Tabs = CustomTabs; CustomTabs.tabsRole = 'Tabs'; const CustomTabPanel = props => { const style = props.selected ? {} : { display: 'none' }; return ((0, jsx_runtime_1.jsx)(react_tabs_1.TabPanel, Object.assign({ className: "card-body tab-pane", selectedClassName: "active", style: style }, props))); }; exports.TabPanel = CustomTabPanel; CustomTabPanel.tabsRole = 'TabPanel';