@mackin.com/styleguide 8.5.1 → 8.5.2
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/index.d.ts +23 -1
- package/index.js +22 -0
- package/package.json +1 -1
package/index.d.ts
CHANGED
|
@@ -1079,4 +1079,26 @@ interface ThemeRendererProps extends MackinTheme {
|
|
|
1079
1079
|
}
|
|
1080
1080
|
declare const ThemeRenderer: (p: ThemeRendererProps) => JSX.Element;
|
|
1081
1081
|
|
|
1082
|
-
|
|
1082
|
+
interface TabContainerProps {
|
|
1083
|
+
tabs: {
|
|
1084
|
+
name: string;
|
|
1085
|
+
getContent: () => JSX.Element;
|
|
1086
|
+
}[];
|
|
1087
|
+
id?: string;
|
|
1088
|
+
/** Defaults to 10rem. */
|
|
1089
|
+
maxTabWidth?: string;
|
|
1090
|
+
/** Defaults to 'tab'. */
|
|
1091
|
+
variant?: 'tab' | 'button';
|
|
1092
|
+
contentClassName?: string;
|
|
1093
|
+
tabHeaderClassName?: string;
|
|
1094
|
+
tabClassName?: string;
|
|
1095
|
+
tabHeaderDividerClassName?: string;
|
|
1096
|
+
/** Defaults to 0. */
|
|
1097
|
+
startingIndex?: number;
|
|
1098
|
+
onTabChanged?: (tabIndex: number) => void;
|
|
1099
|
+
/** If present, tab change will be delayed until this method resolves. */
|
|
1100
|
+
onBeforeTabChanged?: (tabIndex: number) => Promise<void>;
|
|
1101
|
+
}
|
|
1102
|
+
declare const TabContainer: (p: TabContainerProps) => JSX.Element;
|
|
1103
|
+
|
|
1104
|
+
export { Accordian, AccordianProps, Alignment, Autocomplete, AutocompleteProps, AutocompleteValue, Backdrop$1 as Backdrop, Backdrop as Backdrop2, BoundMemoryPager, BoundStaticPager, Button, ButtonProps, Calendar, CalendarProps, Checkbox, CheckboxProps, ConfirmModal, ConfirmModalProps, CopyButton, DateInput, DateInputProps, Divider, ErrorModal, FileUploader, Form, FormColumnRow, FormFlexRow, FormProps, GlobalStyles, Header, Highlight, ICONS, Icon, Image, ImageProps, InfoPanel, InfoTip, InfoTipProps, Input, InputProps, ItemPager, Label, LabelProps, Link, LinkProps, List, ListItem, ListItemProps, ListProps, MackinTheme, Modal, ModalProps, Nav, NormalizeCss, NumberInput, NumberInputProps, OmniLink, OmniLinkProps, PagedResult, Pager, PagerProps, Picker, PickerOption, PickerProps, PickerValue, Popover, ProgressBar, ProgressBarProps, SearchBox, SearchBoxProps, Slider, TabContainer, TabContainerProps, TabHeader, TabHeaderProps, TabLocker, Table, Td, TdCurrency, TdNumber, Text, TextArea, TextAreaProps, TextInput, TextInputProps, TextProps, Th, ThSort, ThemeProvider, ThemeRenderer, ToggleButton, ToggleButtonGroup, ToggleButtonGroupProps, ToggleButtonProps, TogglePasswordInput, Tr, WaitingIndicator, calcDynamicThemeProps, defaultTheme, enumToEntities, getCurrencyDisplay, getFileSizeDisplay, useAccordianState, useBooleanChanged, useIgnoreMount, useMediaQuery, useScrollbarSize, useThemeSafely, useWaiting };
|
package/index.js
CHANGED
|
@@ -4732,6 +4732,27 @@ const flatten = (obj, parent, path = 'theme') => {
|
|
|
4732
4732
|
return flatObj;
|
|
4733
4733
|
};
|
|
4734
4734
|
|
|
4735
|
+
const TabContainer = (p) => {
|
|
4736
|
+
var _a;
|
|
4737
|
+
const [tabIndex, setTabIndex] = React__namespace.useState((_a = p.startingIndex) !== null && _a !== void 0 ? _a : 0);
|
|
4738
|
+
const theme = useThemeSafely();
|
|
4739
|
+
return (React__namespace.createElement("div", { className: css.css({
|
|
4740
|
+
label: 'TabContainer'
|
|
4741
|
+
}) },
|
|
4742
|
+
React__namespace.createElement(TabHeader, { tabs: p.tabs, maxTabWidth: p.maxTabWidth, variant: p.variant, containerClassName: p.tabHeaderClassName, tabClassName: p.tabClassName, tabHeaderDividerClassName: p.tabHeaderDividerClassName, startingIndex: tabIndex, onBeforeTabChanged: p.onBeforeTabChanged, onTabChanged: newIndex => {
|
|
4743
|
+
var _a;
|
|
4744
|
+
setTabIndex(newIndex);
|
|
4745
|
+
(_a = p.onTabChanged) === null || _a === void 0 ? void 0 : _a.call(p, newIndex);
|
|
4746
|
+
} }),
|
|
4747
|
+
React__namespace.createElement("div", { className: css.cx(css.css({
|
|
4748
|
+
label: 'TabContainerContent',
|
|
4749
|
+
padding: '1rem',
|
|
4750
|
+
borderLeft: theme.controls.border,
|
|
4751
|
+
borderRight: theme.controls.border,
|
|
4752
|
+
borderBottom: theme.controls.border,
|
|
4753
|
+
}), p.contentClassName) }, p.tabs[tabIndex].getContent())));
|
|
4754
|
+
};
|
|
4755
|
+
|
|
4735
4756
|
exports.Accordian = Accordian;
|
|
4736
4757
|
exports.Autocomplete = Autocomplete;
|
|
4737
4758
|
exports.Backdrop = Backdrop$1;
|
|
@@ -4776,6 +4797,7 @@ exports.Popover = Popover;
|
|
|
4776
4797
|
exports.ProgressBar = ProgressBar;
|
|
4777
4798
|
exports.SearchBox = SearchBox;
|
|
4778
4799
|
exports.Slider = Slider;
|
|
4800
|
+
exports.TabContainer = TabContainer;
|
|
4779
4801
|
exports.TabHeader = TabHeader;
|
|
4780
4802
|
exports.TabLocker = TabLocker;
|
|
4781
4803
|
exports.Table = Table;
|