Jesus sucks
This commit is contained in:
113
backend/frontend/node_modules/@restart/ui/esm/TabPanel.js
generated
vendored
Normal file
113
backend/frontend/node_modules/@restart/ui/esm/TabPanel.js
generated
vendored
Normal file
@@ -0,0 +1,113 @@
|
||||
const _excluded = ["active", "eventKey", "mountOnEnter", "transition", "unmountOnExit", "role", "onEnter", "onEntering", "onEntered", "onExit", "onExiting", "onExited"],
|
||||
_excluded2 = ["activeKey", "getControlledId", "getControllerId"],
|
||||
_excluded3 = ["as"];
|
||||
function _objectWithoutPropertiesLoose(r, e) { if (null == r) return {}; var t = {}; for (var n in r) if ({}.hasOwnProperty.call(r, n)) { if (e.indexOf(n) >= 0) continue; t[n] = r[n]; } return t; }
|
||||
import * as React from 'react';
|
||||
import { useContext } from 'react';
|
||||
import TabContext from './TabContext';
|
||||
import SelectableContext, { makeEventKey } from './SelectableContext';
|
||||
import NoopTransition from './NoopTransition';
|
||||
import { jsx as _jsx } from "react/jsx-runtime";
|
||||
export function useTabPanel(_ref) {
|
||||
let {
|
||||
active,
|
||||
eventKey,
|
||||
mountOnEnter,
|
||||
transition,
|
||||
unmountOnExit,
|
||||
role = 'tabpanel',
|
||||
onEnter,
|
||||
onEntering,
|
||||
onEntered,
|
||||
onExit,
|
||||
onExiting,
|
||||
onExited
|
||||
} = _ref,
|
||||
props = _objectWithoutPropertiesLoose(_ref, _excluded);
|
||||
const context = useContext(TabContext);
|
||||
if (!context) return [Object.assign({}, props, {
|
||||
role
|
||||
}), {
|
||||
eventKey,
|
||||
isActive: active,
|
||||
mountOnEnter,
|
||||
transition,
|
||||
unmountOnExit,
|
||||
onEnter,
|
||||
onEntering,
|
||||
onEntered,
|
||||
onExit,
|
||||
onExiting,
|
||||
onExited
|
||||
}];
|
||||
const {
|
||||
activeKey,
|
||||
getControlledId,
|
||||
getControllerId
|
||||
} = context,
|
||||
rest = _objectWithoutPropertiesLoose(context, _excluded2);
|
||||
const key = makeEventKey(eventKey);
|
||||
return [Object.assign({}, props, {
|
||||
role,
|
||||
id: getControlledId(eventKey),
|
||||
'aria-labelledby': getControllerId(eventKey)
|
||||
}), {
|
||||
eventKey,
|
||||
isActive: active == null && key != null ? makeEventKey(activeKey) === key : active,
|
||||
transition: transition || rest.transition,
|
||||
mountOnEnter: mountOnEnter != null ? mountOnEnter : rest.mountOnEnter,
|
||||
unmountOnExit: unmountOnExit != null ? unmountOnExit : rest.unmountOnExit,
|
||||
onEnter,
|
||||
onEntering,
|
||||
onEntered,
|
||||
onExit,
|
||||
onExiting,
|
||||
onExited
|
||||
}];
|
||||
}
|
||||
const TabPanel = /*#__PURE__*/React.forwardRef(
|
||||
// Need to define the default "as" during prop destructuring to be compatible with styled-components github.com/react-bootstrap/react-bootstrap/issues/3595
|
||||
(_ref2, ref) => {
|
||||
let {
|
||||
as: Component = 'div'
|
||||
} = _ref2,
|
||||
props = _objectWithoutPropertiesLoose(_ref2, _excluded3);
|
||||
const [tabPanelProps, {
|
||||
isActive,
|
||||
onEnter,
|
||||
onEntering,
|
||||
onEntered,
|
||||
onExit,
|
||||
onExiting,
|
||||
onExited,
|
||||
mountOnEnter,
|
||||
unmountOnExit,
|
||||
transition: Transition = NoopTransition
|
||||
}] = useTabPanel(props);
|
||||
// We provide an empty the TabContext so `<Nav>`s in `<TabPanel>`s don't
|
||||
// conflict with the top level one.
|
||||
return /*#__PURE__*/_jsx(TabContext.Provider, {
|
||||
value: null,
|
||||
children: /*#__PURE__*/_jsx(SelectableContext.Provider, {
|
||||
value: null,
|
||||
children: /*#__PURE__*/_jsx(Transition, {
|
||||
in: isActive,
|
||||
onEnter: onEnter,
|
||||
onEntering: onEntering,
|
||||
onEntered: onEntered,
|
||||
onExit: onExit,
|
||||
onExiting: onExiting,
|
||||
onExited: onExited,
|
||||
mountOnEnter: mountOnEnter,
|
||||
unmountOnExit: unmountOnExit,
|
||||
children: /*#__PURE__*/_jsx(Component, Object.assign({}, tabPanelProps, {
|
||||
ref: ref,
|
||||
hidden: !isActive,
|
||||
"aria-hidden": !isActive
|
||||
}))
|
||||
})
|
||||
})
|
||||
});
|
||||
});
|
||||
TabPanel.displayName = 'TabPanel';
|
||||
export default TabPanel;
|
||||
Reference in New Issue
Block a user