@guardian/stand 0.0.56 → 0.0.58
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/dist/Tabs.cjs +5 -0
- package/dist/Tabs.d.cts +5 -0
- package/dist/Tabs.d.ts +5 -0
- package/dist/Tabs.js +3 -0
- package/dist/components/RadioGroup/RadioGroup.cjs +5 -2
- package/dist/components/RadioGroup/RadioGroup.d.cts +1 -0
- package/dist/components/RadioGroup/RadioGroup.d.ts +1 -0
- package/dist/components/RadioGroup/RadioGroup.js +5 -2
- package/dist/components/RadioGroup/styles.cjs +6 -2
- package/dist/components/RadioGroup/styles.js +6 -2
- package/dist/components/RadioGroup/types.d.cts +5 -0
- package/dist/components/RadioGroup/types.d.ts +5 -0
- package/dist/components/Tabs/Tabs.cjs +88 -0
- package/dist/components/Tabs/Tabs.d.cts +15 -0
- package/dist/components/Tabs/Tabs.d.ts +15 -0
- package/dist/components/Tabs/Tabs.js +86 -0
- package/dist/components/Tabs/styles.cjs +146 -0
- package/dist/components/Tabs/styles.d.cts +17 -0
- package/dist/components/Tabs/styles.d.ts +17 -0
- package/dist/components/Tabs/styles.js +137 -0
- package/dist/components/Tabs/types.d.cts +63 -0
- package/dist/components/Tabs/types.d.ts +63 -0
- package/dist/index.cjs +2 -0
- package/dist/index.d.cts +2 -1
- package/dist/index.d.ts +2 -1
- package/dist/index.js +2 -1
- package/dist/styleD/build/css/component/radioGroup.css +2 -1
- package/dist/styleD/build/css/component/tabs.css +49 -0
- package/dist/styleD/build/typescript/component/radioGroup.cjs +4 -1
- package/dist/styleD/build/typescript/component/radioGroup.d.cts +8 -1
- package/dist/styleD/build/typescript/component/radioGroup.d.ts +8 -1
- package/dist/styleD/build/typescript/component/radioGroup.js +4 -1
- package/dist/styleD/build/typescript/component/tabs.cjs +87 -0
- package/dist/styleD/build/typescript/component/tabs.d.cts +104 -0
- package/dist/styleD/build/typescript/component/tabs.d.ts +104 -0
- package/dist/styleD/build/typescript/component/tabs.js +87 -0
- package/package.json +18 -4
|
@@ -0,0 +1,137 @@
|
|
|
1
|
+
import { convertTypographyToEmotionStringStyle } from "../../styleD/utils/semantic/typography.js";
|
|
2
|
+
import { componentTabs } from "../../styleD/build/typescript/component/tabs.js";
|
|
3
|
+
import { css } from "@emotion/react";
|
|
4
|
+
//#region src/components/Tabs/styles.ts
|
|
5
|
+
const defaultTabsTheme = componentTabs.tabs;
|
|
6
|
+
const tabsStyles = (theme) => {
|
|
7
|
+
return css`
|
|
8
|
+
display: ${theme.shared.display};
|
|
9
|
+
max-width: ${theme.shared.maxWidth};
|
|
10
|
+
|
|
11
|
+
&[data-orientation='vertical'] {
|
|
12
|
+
flex-direction: ${theme.shared.orientation.vertical.flexDirection};
|
|
13
|
+
width: ${theme.shared.orientation.vertical.width};
|
|
14
|
+
}
|
|
15
|
+
|
|
16
|
+
&[data-orientation='horizontal'] {
|
|
17
|
+
flex-direction: ${theme.shared.orientation.horizontal.flexDirection};
|
|
18
|
+
}
|
|
19
|
+
`;
|
|
20
|
+
};
|
|
21
|
+
const defaultTabTheme = componentTabs.tab;
|
|
22
|
+
const tabStyles = (theme, { orientation, size, icon }) => {
|
|
23
|
+
const hasIcon = !!icon;
|
|
24
|
+
return css`
|
|
25
|
+
position: ${theme.shared.position};
|
|
26
|
+
display: ${theme.shared.display};
|
|
27
|
+
gap: ${theme.shared.gap};
|
|
28
|
+
height: ${theme[size].height};
|
|
29
|
+
cursor: ${theme.shared.cursor};
|
|
30
|
+
flex-direction: ${theme.shared.flexDirection};
|
|
31
|
+
justify-content: ${theme.shared.justifyContent};
|
|
32
|
+
align-items: ${theme.shared.alignItems};
|
|
33
|
+
padding: ${theme.shared.padding.top} ${theme.shared.padding.right}
|
|
34
|
+
${theme.shared.padding.bottom} ${theme.shared.padding.left};
|
|
35
|
+
${hasIcon && css`
|
|
36
|
+
padding-right: ${theme.shared.padding.withIcon.right};
|
|
37
|
+
`}
|
|
38
|
+
color: ${theme.shared.color};
|
|
39
|
+
${convertTypographyToEmotionStringStyle(theme[size].typography)}
|
|
40
|
+
|
|
41
|
+
&[data-disabled] {
|
|
42
|
+
cursor: ${theme.shared.disabled.cursor};
|
|
43
|
+
color: ${theme.shared.disabled.color};
|
|
44
|
+
}
|
|
45
|
+
|
|
46
|
+
/* Override default browser focus behaviour */
|
|
47
|
+
&:focus-visible {
|
|
48
|
+
outline: none;
|
|
49
|
+
}
|
|
50
|
+
|
|
51
|
+
&[data-focus-visible] {
|
|
52
|
+
outline: ${theme.shared.focusVisible.outline};
|
|
53
|
+
outline-offset: ${theme.shared.focusVisible.outlineOffset};
|
|
54
|
+
}
|
|
55
|
+
|
|
56
|
+
&[data-selected] {
|
|
57
|
+
background: ${theme.shared.selected.background};
|
|
58
|
+
}
|
|
59
|
+
|
|
60
|
+
&[data-hovered]::after,
|
|
61
|
+
&[data-selected]::after {
|
|
62
|
+
background: ${theme.shared.selected.border.background};
|
|
63
|
+
}
|
|
64
|
+
|
|
65
|
+
${orientation === "horizontal" && css`
|
|
66
|
+
border-right: ${theme.shared.border};
|
|
67
|
+
|
|
68
|
+
&:first-child {
|
|
69
|
+
border-left: ${theme.shared.border};
|
|
70
|
+
}
|
|
71
|
+
|
|
72
|
+
&::after {
|
|
73
|
+
content: '';
|
|
74
|
+
position: absolute;
|
|
75
|
+
bottom: 0;
|
|
76
|
+
left: 0;
|
|
77
|
+
right: 0;
|
|
78
|
+
height: ${theme.shared.selected.border.size};
|
|
79
|
+
background: transparent;
|
|
80
|
+
}
|
|
81
|
+
`}
|
|
82
|
+
|
|
83
|
+
${orientation === "vertical" && css`
|
|
84
|
+
border-bottom: ${theme.shared.border};
|
|
85
|
+
padding-right: ${theme.shared.padding.verticalRight};
|
|
86
|
+
${hasIcon && css`
|
|
87
|
+
padding-right: ${theme.shared.padding.withIcon.verticalRight};
|
|
88
|
+
`}
|
|
89
|
+
|
|
90
|
+
&:first-child {
|
|
91
|
+
border-top: ${theme.shared.border};
|
|
92
|
+
}
|
|
93
|
+
|
|
94
|
+
&::after {
|
|
95
|
+
content: '';
|
|
96
|
+
position: absolute;
|
|
97
|
+
top: 0;
|
|
98
|
+
bottom: 0;
|
|
99
|
+
right: 0;
|
|
100
|
+
width: ${theme.shared.selected.border.size};
|
|
101
|
+
background: transparent;
|
|
102
|
+
}
|
|
103
|
+
`}
|
|
104
|
+
`;
|
|
105
|
+
};
|
|
106
|
+
const defaultTabListTheme = componentTabs.tabList;
|
|
107
|
+
const tabListStyles = (theme) => {
|
|
108
|
+
return css`
|
|
109
|
+
display: ${theme.shared.display};
|
|
110
|
+
|
|
111
|
+
&[data-orientation='horizontal'] {
|
|
112
|
+
flex-direction: ${theme.shared.orientation.horizontal.flexDirection};
|
|
113
|
+
}
|
|
114
|
+
|
|
115
|
+
&[data-orientation='vertical'] {
|
|
116
|
+
flex-direction: ${theme.shared.orientation.vertical.flexDirection};
|
|
117
|
+
}
|
|
118
|
+
`;
|
|
119
|
+
};
|
|
120
|
+
const defaultTabPanelsTheme = componentTabs.tabPanels;
|
|
121
|
+
const tabPanelsStyles = (theme) => {
|
|
122
|
+
return css`
|
|
123
|
+
position: ${theme.shared.position};
|
|
124
|
+
height: var(--tab-panel-height, auto);
|
|
125
|
+
width: var(--tab-panel-width, auto);
|
|
126
|
+
overflow: ${theme.shared.overflow};
|
|
127
|
+
`;
|
|
128
|
+
};
|
|
129
|
+
const defaultTabPanelTheme = componentTabs.tabPanel;
|
|
130
|
+
const tabPanelStyles = (theme) => {
|
|
131
|
+
return css`
|
|
132
|
+
/* TODO: Designs to be provided for tab panel */
|
|
133
|
+
position: ${theme.shared.position};
|
|
134
|
+
`;
|
|
135
|
+
};
|
|
136
|
+
//#endregion
|
|
137
|
+
export { defaultTabListTheme, defaultTabPanelTheme, defaultTabPanelsTheme, defaultTabTheme, defaultTabsTheme, tabListStyles, tabPanelStyles, tabPanelsStyles, tabStyles, tabsStyles };
|
|
@@ -0,0 +1,63 @@
|
|
|
1
|
+
import { DefaultPropsWithChildren } from "../../util/types.cjs";
|
|
2
|
+
import { IconProps } from "../Icon/types.cjs";
|
|
3
|
+
import { TabListTheme, TabPanelTheme, TabPanelsTheme, TabTheme, TabsTheme } from "./styles.cjs";
|
|
4
|
+
import { TabListProps, TabPanelProps, TabPanelsProps, TabProps, TabsProps } from "react-aria-components";
|
|
5
|
+
|
|
6
|
+
//#region src/components/Tabs/types.d.ts
|
|
7
|
+
interface TabsProps$1 extends DefaultPropsWithChildren<TabsTheme, TabsProps['className']>, Omit<TabsProps, 'children'> {
|
|
8
|
+
/**
|
|
9
|
+
* Size of the tab. Can be either 'sm', 'md'.
|
|
10
|
+
* Shouldn't need to set this manually, as it will be inherited from the parent `Tabs`.
|
|
11
|
+
* @default 'md'
|
|
12
|
+
*/
|
|
13
|
+
size?: keyof Omit<TabTheme, 'shared'>;
|
|
14
|
+
}
|
|
15
|
+
interface TabListProps$1 extends DefaultPropsWithChildren<TabListTheme, TabListProps<object>['className']>, Omit<TabListProps<object>, 'children'> {
|
|
16
|
+
/**
|
|
17
|
+
* Orientation of the tabs. Can be either 'horizontal' or 'vertical'.
|
|
18
|
+
* Shouldn't need to set this manually, as it will be inherited from the parent `Tabs`.
|
|
19
|
+
* @default 'horizontal'
|
|
20
|
+
*/
|
|
21
|
+
orientation?: TabsProps$1['orientation'];
|
|
22
|
+
/**
|
|
23
|
+
* Size of the tab. Can be either 'sm', 'md'.
|
|
24
|
+
* Shouldn't need to set this manually, as it will be inherited from the parent `Tabs`.
|
|
25
|
+
* @default 'md'
|
|
26
|
+
*/
|
|
27
|
+
size?: keyof Omit<TabTheme, 'shared'>;
|
|
28
|
+
}
|
|
29
|
+
interface TabProps$1 extends DefaultPropsWithChildren<TabTheme, TabProps['className']>, Omit<TabProps, 'children'> {
|
|
30
|
+
/**
|
|
31
|
+
* Orientation of the tabs. Can be either 'horizontal' or 'vertical'.
|
|
32
|
+
* Shouldn't need to set this manually, as it will be inherited from `Tabs` via `TabList`.
|
|
33
|
+
* @default 'horizontal'
|
|
34
|
+
*/
|
|
35
|
+
orientation?: TabsProps$1['orientation'];
|
|
36
|
+
/**
|
|
37
|
+
* Size of the tab. Can be either 'sm', 'md'.
|
|
38
|
+
* Shouldn't need to set this manually, as it will be inherited from `Tabs` via `TabList`.
|
|
39
|
+
* @default 'md'
|
|
40
|
+
*/
|
|
41
|
+
size?: keyof Omit<TabTheme, 'shared'>;
|
|
42
|
+
/**
|
|
43
|
+
* Icon to display in the tab. Can be either a symbol from the Icon component or a custom ReactNode.
|
|
44
|
+
*/
|
|
45
|
+
icon?: IconProps['symbol'] | Exclude<IconProps['children'], string>;
|
|
46
|
+
}
|
|
47
|
+
interface TabPanelsProps$1 extends DefaultPropsWithChildren<TabPanelsTheme, TabPanelsProps<object>['className']>, Omit<TabPanelsProps<object>, 'children'> {
|
|
48
|
+
/**
|
|
49
|
+
* Orientation of the tabs. Can be either 'horizontal' or 'vertical'.
|
|
50
|
+
* Shouldn't need to set this manually, as it will be inherited from the parent `TabList`.
|
|
51
|
+
* @default 'horizontal'
|
|
52
|
+
*/
|
|
53
|
+
orientation?: TabsProps$1['orientation'];
|
|
54
|
+
/**
|
|
55
|
+
* Size of the tab. Can be either 'sm', 'md'.
|
|
56
|
+
* Shouldn't need to set this manually, as it will be inherited from the parent `Tabs`.
|
|
57
|
+
* @default 'md'
|
|
58
|
+
*/
|
|
59
|
+
size?: keyof Omit<TabTheme, 'shared'>;
|
|
60
|
+
}
|
|
61
|
+
interface TabPanelProps$1 extends DefaultPropsWithChildren<TabPanelTheme, TabPanelProps['className']>, Omit<TabPanelProps, 'children'> {}
|
|
62
|
+
//#endregion
|
|
63
|
+
export { TabListProps$1 as TabListProps, TabPanelProps$1 as TabPanelProps, TabPanelsProps$1 as TabPanelsProps, TabProps$1 as TabProps, TabsProps$1 as TabsProps };
|
|
@@ -0,0 +1,63 @@
|
|
|
1
|
+
import { DefaultPropsWithChildren } from "../../util/types.js";
|
|
2
|
+
import { IconProps } from "../Icon/types.js";
|
|
3
|
+
import { TabListTheme, TabPanelTheme, TabPanelsTheme, TabTheme, TabsTheme } from "./styles.js";
|
|
4
|
+
import { TabListProps, TabPanelProps, TabPanelsProps, TabProps, TabsProps } from "react-aria-components";
|
|
5
|
+
|
|
6
|
+
//#region src/components/Tabs/types.d.ts
|
|
7
|
+
interface TabsProps$1 extends DefaultPropsWithChildren<TabsTheme, TabsProps['className']>, Omit<TabsProps, 'children'> {
|
|
8
|
+
/**
|
|
9
|
+
* Size of the tab. Can be either 'sm', 'md'.
|
|
10
|
+
* Shouldn't need to set this manually, as it will be inherited from the parent `Tabs`.
|
|
11
|
+
* @default 'md'
|
|
12
|
+
*/
|
|
13
|
+
size?: keyof Omit<TabTheme, 'shared'>;
|
|
14
|
+
}
|
|
15
|
+
interface TabListProps$1 extends DefaultPropsWithChildren<TabListTheme, TabListProps<object>['className']>, Omit<TabListProps<object>, 'children'> {
|
|
16
|
+
/**
|
|
17
|
+
* Orientation of the tabs. Can be either 'horizontal' or 'vertical'.
|
|
18
|
+
* Shouldn't need to set this manually, as it will be inherited from the parent `Tabs`.
|
|
19
|
+
* @default 'horizontal'
|
|
20
|
+
*/
|
|
21
|
+
orientation?: TabsProps$1['orientation'];
|
|
22
|
+
/**
|
|
23
|
+
* Size of the tab. Can be either 'sm', 'md'.
|
|
24
|
+
* Shouldn't need to set this manually, as it will be inherited from the parent `Tabs`.
|
|
25
|
+
* @default 'md'
|
|
26
|
+
*/
|
|
27
|
+
size?: keyof Omit<TabTheme, 'shared'>;
|
|
28
|
+
}
|
|
29
|
+
interface TabProps$1 extends DefaultPropsWithChildren<TabTheme, TabProps['className']>, Omit<TabProps, 'children'> {
|
|
30
|
+
/**
|
|
31
|
+
* Orientation of the tabs. Can be either 'horizontal' or 'vertical'.
|
|
32
|
+
* Shouldn't need to set this manually, as it will be inherited from `Tabs` via `TabList`.
|
|
33
|
+
* @default 'horizontal'
|
|
34
|
+
*/
|
|
35
|
+
orientation?: TabsProps$1['orientation'];
|
|
36
|
+
/**
|
|
37
|
+
* Size of the tab. Can be either 'sm', 'md'.
|
|
38
|
+
* Shouldn't need to set this manually, as it will be inherited from `Tabs` via `TabList`.
|
|
39
|
+
* @default 'md'
|
|
40
|
+
*/
|
|
41
|
+
size?: keyof Omit<TabTheme, 'shared'>;
|
|
42
|
+
/**
|
|
43
|
+
* Icon to display in the tab. Can be either a symbol from the Icon component or a custom ReactNode.
|
|
44
|
+
*/
|
|
45
|
+
icon?: IconProps['symbol'] | Exclude<IconProps['children'], string>;
|
|
46
|
+
}
|
|
47
|
+
interface TabPanelsProps$1 extends DefaultPropsWithChildren<TabPanelsTheme, TabPanelsProps<object>['className']>, Omit<TabPanelsProps<object>, 'children'> {
|
|
48
|
+
/**
|
|
49
|
+
* Orientation of the tabs. Can be either 'horizontal' or 'vertical'.
|
|
50
|
+
* Shouldn't need to set this manually, as it will be inherited from the parent `TabList`.
|
|
51
|
+
* @default 'horizontal'
|
|
52
|
+
*/
|
|
53
|
+
orientation?: TabsProps$1['orientation'];
|
|
54
|
+
/**
|
|
55
|
+
* Size of the tab. Can be either 'sm', 'md'.
|
|
56
|
+
* Shouldn't need to set this manually, as it will be inherited from the parent `Tabs`.
|
|
57
|
+
* @default 'md'
|
|
58
|
+
*/
|
|
59
|
+
size?: keyof Omit<TabTheme, 'shared'>;
|
|
60
|
+
}
|
|
61
|
+
interface TabPanelProps$1 extends DefaultPropsWithChildren<TabPanelTheme, TabPanelProps['className']>, Omit<TabPanelProps, 'children'> {}
|
|
62
|
+
//#endregion
|
|
63
|
+
export { TabListProps$1 as TabListProps, TabPanelProps$1 as TabPanelProps, TabPanelsProps$1 as TabPanelsProps, TabProps$1 as TabProps, TabsProps$1 as TabsProps };
|
package/dist/index.cjs
CHANGED
|
@@ -26,6 +26,7 @@ const require_textArea = require("./styleD/build/typescript/component/textArea.c
|
|
|
26
26
|
const require_textInput = require("./styleD/build/typescript/component/textInput.cjs");
|
|
27
27
|
const require_topBar = require("./styleD/build/typescript/component/topBar.cjs");
|
|
28
28
|
const require_typography = require("./styleD/build/typescript/component/typography.cjs");
|
|
29
|
+
const require_tabs = require("./styleD/build/typescript/component/tabs.cjs");
|
|
29
30
|
const require_colors = require("./styleD/build/typescript/base/colors.cjs");
|
|
30
31
|
const require_radius = require("./styleD/build/typescript/base/radius.cjs");
|
|
31
32
|
const require_sizing = require("./styleD/build/typescript/base/sizing.cjs");
|
|
@@ -63,6 +64,7 @@ exports.componentMenu = require_menu.componentMenu;
|
|
|
63
64
|
exports.componentModal = require_modal.componentModal;
|
|
64
65
|
exports.componentRadioGroup = require_radioGroup.componentRadioGroup;
|
|
65
66
|
exports.componentSelect = require_select.componentSelect;
|
|
67
|
+
exports.componentTabs = require_tabs.componentTabs;
|
|
66
68
|
exports.componentTagTable = require_tagTable.componentTagTable;
|
|
67
69
|
exports.componentTextArea = require_textArea.componentTextArea;
|
|
68
70
|
exports.componentTextInput = require_textInput.componentTextInput;
|
package/dist/index.d.cts
CHANGED
|
@@ -20,6 +20,7 @@ import { ComponentMenu, componentMenu } from "./styleD/build/typescript/componen
|
|
|
20
20
|
import { ComponentModal, componentModal } from "./styleD/build/typescript/component/modal.cjs";
|
|
21
21
|
import { ComponentRadioGroup, componentRadioGroup } from "./styleD/build/typescript/component/radioGroup.cjs";
|
|
22
22
|
import { ComponentSelect, componentSelect } from "./styleD/build/typescript/component/select.cjs";
|
|
23
|
+
import { ComponentTabs, componentTabs } from "./styleD/build/typescript/component/tabs.cjs";
|
|
23
24
|
import { ComponentAutocomplete, componentAutocomplete } from "./styleD/build/typescript/component/autocomplete.cjs";
|
|
24
25
|
import { ComponentTagTable, componentTagTable } from "./styleD/build/typescript/component/tagTable.cjs";
|
|
25
26
|
import { ComponentTextArea, componentTextArea } from "./styleD/build/typescript/component/textArea.cjs";
|
|
@@ -37,4 +38,4 @@ import { SemanticSizing, semanticSizing } from "./styleD/build/typescript/semant
|
|
|
37
38
|
import { SemanticShadow, semanticShadow } from "./styleD/build/typescript/semantic/shadow.cjs";
|
|
38
39
|
import { SemanticRadius, semanticRadius } from "./styleD/build/typescript/semantic/radius.cjs";
|
|
39
40
|
import { SemanticSpacing, semanticSpacing } from "./styleD/build/typescript/semantic/spacing.cjs";
|
|
40
|
-
export { type BaseColors, type BaseRadius, type BaseSizing, type BaseSpacing, type BaseTypography, type ComponentAlertBanner, type ComponentAutocomplete, type ComponentAvatar, type ComponentButton, type ComponentButtonGroup, type ComponentByline, type ComponentCheckbox, type ComponentDatePicker, type ComponentFavicon, type ComponentForm, type ComponentGrid, type ComponentIcon, type ComponentInlineMessage, type ComponentIntendedAudienceSignifier, type ComponentLayout, type ComponentLink, type ComponentMenu, type ComponentModal, type ComponentRadioGroup, type ComponentSelect, type ComponentTagTable, type ComponentTextArea, type ComponentTextInput, type ComponentTopBar, type ComponentTypography, type ComponentUserMenu, type SemanticBreakpoints, type SemanticColors, type SemanticGrid, type SemanticRadius, type SemanticShadow, type SemanticSizing, type SemanticSpacing, type SemanticTypography, baseColors, baseRadius, baseSizing, baseSpacing, baseTypography, componentAlertBanner, componentAutocomplete, componentAvatar, componentButton, componentButtonGroup, componentByline, componentCheckbox, componentDatePicker, componentFavicon, componentForm, componentGrid, componentIcon, componentInlineMessage, componentIntendedAudienceSignifier, componentLayout, componentLink, componentMenu, componentModal, componentRadioGroup, componentSelect, componentTagTable, componentTextArea, componentTextInput, componentTopBar, componentTypography, componentUserMenu, semanticBreakpoints, semanticColors, semanticGrid, semanticRadius, semanticShadow, semanticSizing, semanticSpacing, semanticTypography };
|
|
41
|
+
export { type BaseColors, type BaseRadius, type BaseSizing, type BaseSpacing, type BaseTypography, type ComponentAlertBanner, type ComponentAutocomplete, type ComponentAvatar, type ComponentButton, type ComponentButtonGroup, type ComponentByline, type ComponentCheckbox, type ComponentDatePicker, type ComponentFavicon, type ComponentForm, type ComponentGrid, type ComponentIcon, type ComponentInlineMessage, type ComponentIntendedAudienceSignifier, type ComponentLayout, type ComponentLink, type ComponentMenu, type ComponentModal, type ComponentRadioGroup, type ComponentSelect, type ComponentTabs, type ComponentTagTable, type ComponentTextArea, type ComponentTextInput, type ComponentTopBar, type ComponentTypography, type ComponentUserMenu, type SemanticBreakpoints, type SemanticColors, type SemanticGrid, type SemanticRadius, type SemanticShadow, type SemanticSizing, type SemanticSpacing, type SemanticTypography, baseColors, baseRadius, baseSizing, baseSpacing, baseTypography, componentAlertBanner, componentAutocomplete, componentAvatar, componentButton, componentButtonGroup, componentByline, componentCheckbox, componentDatePicker, componentFavicon, componentForm, componentGrid, componentIcon, componentInlineMessage, componentIntendedAudienceSignifier, componentLayout, componentLink, componentMenu, componentModal, componentRadioGroup, componentSelect, componentTabs, componentTagTable, componentTextArea, componentTextInput, componentTopBar, componentTypography, componentUserMenu, semanticBreakpoints, semanticColors, semanticGrid, semanticRadius, semanticShadow, semanticSizing, semanticSpacing, semanticTypography };
|
package/dist/index.d.ts
CHANGED
|
@@ -20,6 +20,7 @@ import { ComponentMenu, componentMenu } from "./styleD/build/typescript/componen
|
|
|
20
20
|
import { ComponentModal, componentModal } from "./styleD/build/typescript/component/modal.js";
|
|
21
21
|
import { ComponentRadioGroup, componentRadioGroup } from "./styleD/build/typescript/component/radioGroup.js";
|
|
22
22
|
import { ComponentSelect, componentSelect } from "./styleD/build/typescript/component/select.js";
|
|
23
|
+
import { ComponentTabs, componentTabs } from "./styleD/build/typescript/component/tabs.js";
|
|
23
24
|
import { ComponentAutocomplete, componentAutocomplete } from "./styleD/build/typescript/component/autocomplete.js";
|
|
24
25
|
import { ComponentTagTable, componentTagTable } from "./styleD/build/typescript/component/tagTable.js";
|
|
25
26
|
import { ComponentTextArea, componentTextArea } from "./styleD/build/typescript/component/textArea.js";
|
|
@@ -37,4 +38,4 @@ import { SemanticSizing, semanticSizing } from "./styleD/build/typescript/semant
|
|
|
37
38
|
import { SemanticShadow, semanticShadow } from "./styleD/build/typescript/semantic/shadow.js";
|
|
38
39
|
import { SemanticRadius, semanticRadius } from "./styleD/build/typescript/semantic/radius.js";
|
|
39
40
|
import { SemanticSpacing, semanticSpacing } from "./styleD/build/typescript/semantic/spacing.js";
|
|
40
|
-
export { type BaseColors, type BaseRadius, type BaseSizing, type BaseSpacing, type BaseTypography, type ComponentAlertBanner, type ComponentAutocomplete, type ComponentAvatar, type ComponentButton, type ComponentButtonGroup, type ComponentByline, type ComponentCheckbox, type ComponentDatePicker, type ComponentFavicon, type ComponentForm, type ComponentGrid, type ComponentIcon, type ComponentInlineMessage, type ComponentIntendedAudienceSignifier, type ComponentLayout, type ComponentLink, type ComponentMenu, type ComponentModal, type ComponentRadioGroup, type ComponentSelect, type ComponentTagTable, type ComponentTextArea, type ComponentTextInput, type ComponentTopBar, type ComponentTypography, type ComponentUserMenu, type SemanticBreakpoints, type SemanticColors, type SemanticGrid, type SemanticRadius, type SemanticShadow, type SemanticSizing, type SemanticSpacing, type SemanticTypography, baseColors, baseRadius, baseSizing, baseSpacing, baseTypography, componentAlertBanner, componentAutocomplete, componentAvatar, componentButton, componentButtonGroup, componentByline, componentCheckbox, componentDatePicker, componentFavicon, componentForm, componentGrid, componentIcon, componentInlineMessage, componentIntendedAudienceSignifier, componentLayout, componentLink, componentMenu, componentModal, componentRadioGroup, componentSelect, componentTagTable, componentTextArea, componentTextInput, componentTopBar, componentTypography, componentUserMenu, semanticBreakpoints, semanticColors, semanticGrid, semanticRadius, semanticShadow, semanticSizing, semanticSpacing, semanticTypography };
|
|
41
|
+
export { type BaseColors, type BaseRadius, type BaseSizing, type BaseSpacing, type BaseTypography, type ComponentAlertBanner, type ComponentAutocomplete, type ComponentAvatar, type ComponentButton, type ComponentButtonGroup, type ComponentByline, type ComponentCheckbox, type ComponentDatePicker, type ComponentFavicon, type ComponentForm, type ComponentGrid, type ComponentIcon, type ComponentInlineMessage, type ComponentIntendedAudienceSignifier, type ComponentLayout, type ComponentLink, type ComponentMenu, type ComponentModal, type ComponentRadioGroup, type ComponentSelect, type ComponentTabs, type ComponentTagTable, type ComponentTextArea, type ComponentTextInput, type ComponentTopBar, type ComponentTypography, type ComponentUserMenu, type SemanticBreakpoints, type SemanticColors, type SemanticGrid, type SemanticRadius, type SemanticShadow, type SemanticSizing, type SemanticSpacing, type SemanticTypography, baseColors, baseRadius, baseSizing, baseSpacing, baseTypography, componentAlertBanner, componentAutocomplete, componentAvatar, componentButton, componentButtonGroup, componentByline, componentCheckbox, componentDatePicker, componentFavicon, componentForm, componentGrid, componentIcon, componentInlineMessage, componentIntendedAudienceSignifier, componentLayout, componentLink, componentMenu, componentModal, componentRadioGroup, componentSelect, componentTabs, componentTagTable, componentTextArea, componentTextInput, componentTopBar, componentTypography, componentUserMenu, semanticBreakpoints, semanticColors, semanticGrid, semanticRadius, semanticShadow, semanticSizing, semanticSpacing, semanticTypography };
|
package/dist/index.js
CHANGED
|
@@ -25,6 +25,7 @@ import { componentTextArea } from "./styleD/build/typescript/component/textArea.
|
|
|
25
25
|
import { componentTextInput } from "./styleD/build/typescript/component/textInput.js";
|
|
26
26
|
import { componentTopBar } from "./styleD/build/typescript/component/topBar.js";
|
|
27
27
|
import { componentTypography } from "./styleD/build/typescript/component/typography.js";
|
|
28
|
+
import { componentTabs } from "./styleD/build/typescript/component/tabs.js";
|
|
28
29
|
import { baseColors } from "./styleD/build/typescript/base/colors.js";
|
|
29
30
|
import { baseRadius } from "./styleD/build/typescript/base/radius.js";
|
|
30
31
|
import { baseSizing } from "./styleD/build/typescript/base/sizing.js";
|
|
@@ -37,4 +38,4 @@ import { semanticSizing } from "./styleD/build/typescript/semantic/sizing.js";
|
|
|
37
38
|
import { semanticShadow } from "./styleD/build/typescript/semantic/shadow.js";
|
|
38
39
|
import { semanticRadius } from "./styleD/build/typescript/semantic/radius.js";
|
|
39
40
|
import { semanticSpacing } from "./styleD/build/typescript/semantic/spacing.js";
|
|
40
|
-
export { baseColors, baseRadius, baseSizing, baseSpacing, baseTypography, componentAlertBanner, componentAutocomplete, componentAvatar, componentButton, componentButtonGroup, componentByline, componentCheckbox, componentDatePicker, componentFavicon, componentForm, componentGrid, componentIcon, componentInlineMessage, componentIntendedAudienceSignifier, componentLayout, componentLink, componentMenu, componentModal, componentRadioGroup, componentSelect, componentTagTable, componentTextArea, componentTextInput, componentTopBar, componentTypography, componentUserMenu, semanticBreakpoints, semanticColors, semanticGrid, semanticRadius, semanticShadow, semanticSizing, semanticSpacing, semanticTypography };
|
|
41
|
+
export { baseColors, baseRadius, baseSizing, baseSpacing, baseTypography, componentAlertBanner, componentAutocomplete, componentAvatar, componentButton, componentButtonGroup, componentByline, componentCheckbox, componentDatePicker, componentFavicon, componentForm, componentGrid, componentIcon, componentInlineMessage, componentIntendedAudienceSignifier, componentLayout, componentLink, componentMenu, componentModal, componentRadioGroup, componentSelect, componentTabs, componentTagTable, componentTextArea, componentTextInput, componentTopBar, componentTypography, componentUserMenu, semanticBreakpoints, semanticColors, semanticGrid, semanticRadius, semanticShadow, semanticSizing, semanticSpacing, semanticTypography };
|
|
@@ -6,7 +6,8 @@
|
|
|
6
6
|
--component-radio-group-shared-margin-top: 0.5rem; /** spacing between the input itself and the previous element (label or description) minus the flex gap (default 4px), e.g. if the spacing between label and input should be 12px, then margin-top should be 8px */
|
|
7
7
|
--component-radio-group-shared-margin-bottom: 0.5rem; /** spacing between the input itself and the next element (error text) minus the flex gap (default 4px), e.g. if the spacing between label and input should be 12px, then margin-top should be 8px */
|
|
8
8
|
--component-radio-group-shared-display: flex;
|
|
9
|
-
--component-radio-group-shared-flex-direction: column;
|
|
9
|
+
--component-radio-group-shared-orientation-vertical-flex-direction: column;
|
|
10
|
+
--component-radio-group-shared-orientation-horizontal-flex-direction: row;
|
|
10
11
|
--component-radio-group-shared-radio-color: #000000;
|
|
11
12
|
--component-radio-group-shared-radio-disabled-color: #999999;
|
|
12
13
|
--component-radio-group-shared-radio-display: flex;
|
|
@@ -0,0 +1,49 @@
|
|
|
1
|
+
/**
|
|
2
|
+
* Do not edit directly, this file was auto-generated.
|
|
3
|
+
*/
|
|
4
|
+
|
|
5
|
+
:root {
|
|
6
|
+
--component-tabs-tabs-shared-display: flex;
|
|
7
|
+
--component-tabs-tabs-shared-max-width: 100%;
|
|
8
|
+
--component-tabs-tabs-shared-orientation-vertical-flex-direction: row;
|
|
9
|
+
--component-tabs-tabs-shared-orientation-vertical-width: 100%;
|
|
10
|
+
--component-tabs-tabs-shared-orientation-horizontal-flex-direction: column;
|
|
11
|
+
--component-tabs-tab-shared-position: relative;
|
|
12
|
+
--component-tabs-tab-shared-display: inline-flex;
|
|
13
|
+
--component-tabs-tab-shared-gap: 0.375rem;
|
|
14
|
+
--component-tabs-tab-shared-cursor: pointer;
|
|
15
|
+
--component-tabs-tab-shared-flex-direction: row;
|
|
16
|
+
--component-tabs-tab-shared-justify-content: center;
|
|
17
|
+
--component-tabs-tab-shared-align-items: center;
|
|
18
|
+
--component-tabs-tab-shared-padding-top: 0;
|
|
19
|
+
--component-tabs-tab-shared-padding-bottom: 0;
|
|
20
|
+
--component-tabs-tab-shared-padding-left: 1rem;
|
|
21
|
+
--component-tabs-tab-shared-padding-right: 1rem;
|
|
22
|
+
--component-tabs-tab-shared-padding-vertical-right: 1.25rem;
|
|
23
|
+
--component-tabs-tab-shared-padding-with-icon-right: 1.25rem;
|
|
24
|
+
--component-tabs-tab-shared-padding-with-icon-vertical-right: 1.5rem;
|
|
25
|
+
--component-tabs-tab-shared-color: #545454;
|
|
26
|
+
--component-tabs-tab-shared-border: 0.0625rem solid #cccccc;
|
|
27
|
+
--component-tabs-tab-shared-selected-background: #f6f6f6;
|
|
28
|
+
--component-tabs-tab-shared-selected-border-border: 0.5rem solid #0072a9;
|
|
29
|
+
--component-tabs-tab-shared-selected-border-size: 0.5rem;
|
|
30
|
+
--component-tabs-tab-shared-selected-border-background: #0072a9;
|
|
31
|
+
--component-tabs-tab-shared-disabled-cursor: not-allowed;
|
|
32
|
+
--component-tabs-tab-shared-disabled-color: #999999;
|
|
33
|
+
--component-tabs-tab-shared-focus-visible-outline: 0.125rem solid #0072a9;
|
|
34
|
+
--component-tabs-tab-shared-focus-visible-outline-offset: -0.0625rem;
|
|
35
|
+
--component-tabs-tab-md-height: 3rem;
|
|
36
|
+
--component-tabs-tab-md-typography-font: normal 700 1rem/1.15 'Open Sans';
|
|
37
|
+
--component-tabs-tab-md-typography-letter-spacing: -0.03125rem;
|
|
38
|
+
--component-tabs-tab-md-typography-font-width: 95;
|
|
39
|
+
--component-tabs-tab-sm-height: 2.5rem;
|
|
40
|
+
--component-tabs-tab-sm-typography-font: normal 700 0.875rem/1.15 'Open Sans';
|
|
41
|
+
--component-tabs-tab-sm-typography-letter-spacing: -0.0125rem;
|
|
42
|
+
--component-tabs-tab-sm-typography-font-width: 95;
|
|
43
|
+
--component-tabs-tab-list-shared-display: flex;
|
|
44
|
+
--component-tabs-tab-list-shared-orientation-horizontal-flex-direction: row;
|
|
45
|
+
--component-tabs-tab-list-shared-orientation-vertical-flex-direction: column;
|
|
46
|
+
--component-tabs-tab-panels-shared-position: relative;
|
|
47
|
+
--component-tabs-tab-panels-shared-overflow: clip;
|
|
48
|
+
--component-tabs-tab-panel-shared-position: initial;
|
|
49
|
+
}
|
|
@@ -7,7 +7,10 @@ const componentRadioGroup = {
|
|
|
7
7
|
marginTop: "0.5rem",
|
|
8
8
|
marginBottom: "0.5rem",
|
|
9
9
|
display: "flex",
|
|
10
|
-
|
|
10
|
+
orientation: {
|
|
11
|
+
vertical: { flexDirection: "column" },
|
|
12
|
+
horizontal: { flexDirection: "row" }
|
|
13
|
+
},
|
|
11
14
|
radio: {
|
|
12
15
|
color: "#000000",
|
|
13
16
|
disabled: { color: "#999999" },
|
|
@@ -7,7 +7,14 @@ declare const componentRadioGroup: {
|
|
|
7
7
|
marginTop: string;
|
|
8
8
|
marginBottom: string;
|
|
9
9
|
display: string;
|
|
10
|
-
|
|
10
|
+
orientation: {
|
|
11
|
+
vertical: {
|
|
12
|
+
flexDirection: string;
|
|
13
|
+
};
|
|
14
|
+
horizontal: {
|
|
15
|
+
flexDirection: string;
|
|
16
|
+
};
|
|
17
|
+
};
|
|
11
18
|
radio: {
|
|
12
19
|
color: string;
|
|
13
20
|
disabled: {
|
|
@@ -7,7 +7,14 @@ declare const componentRadioGroup: {
|
|
|
7
7
|
marginTop: string;
|
|
8
8
|
marginBottom: string;
|
|
9
9
|
display: string;
|
|
10
|
-
|
|
10
|
+
orientation: {
|
|
11
|
+
vertical: {
|
|
12
|
+
flexDirection: string;
|
|
13
|
+
};
|
|
14
|
+
horizontal: {
|
|
15
|
+
flexDirection: string;
|
|
16
|
+
};
|
|
17
|
+
};
|
|
11
18
|
radio: {
|
|
12
19
|
color: string;
|
|
13
20
|
disabled: {
|
|
@@ -7,7 +7,10 @@ const componentRadioGroup = {
|
|
|
7
7
|
marginTop: "0.5rem",
|
|
8
8
|
marginBottom: "0.5rem",
|
|
9
9
|
display: "flex",
|
|
10
|
-
|
|
10
|
+
orientation: {
|
|
11
|
+
vertical: { flexDirection: "column" },
|
|
12
|
+
horizontal: { flexDirection: "row" }
|
|
13
|
+
},
|
|
11
14
|
radio: {
|
|
12
15
|
color: "#000000",
|
|
13
16
|
disabled: { color: "#999999" },
|
|
@@ -0,0 +1,87 @@
|
|
|
1
|
+
//#region src/styleD/build/typescript/component/tabs.ts
|
|
2
|
+
/**
|
|
3
|
+
* Do not edit directly, this file was auto-generated.
|
|
4
|
+
*/
|
|
5
|
+
const componentTabs = {
|
|
6
|
+
tabs: { shared: {
|
|
7
|
+
display: "flex",
|
|
8
|
+
maxWidth: "100%",
|
|
9
|
+
orientation: {
|
|
10
|
+
vertical: {
|
|
11
|
+
flexDirection: "row",
|
|
12
|
+
width: "100%"
|
|
13
|
+
},
|
|
14
|
+
horizontal: { flexDirection: "column" }
|
|
15
|
+
}
|
|
16
|
+
} },
|
|
17
|
+
tab: {
|
|
18
|
+
shared: {
|
|
19
|
+
position: "relative",
|
|
20
|
+
display: "inline-flex",
|
|
21
|
+
gap: "0.375rem",
|
|
22
|
+
cursor: "pointer",
|
|
23
|
+
flexDirection: "row",
|
|
24
|
+
justifyContent: "center",
|
|
25
|
+
alignItems: "center",
|
|
26
|
+
padding: {
|
|
27
|
+
top: "0",
|
|
28
|
+
bottom: "0",
|
|
29
|
+
left: "1rem",
|
|
30
|
+
right: "1rem",
|
|
31
|
+
verticalRight: "1.25rem",
|
|
32
|
+
withIcon: {
|
|
33
|
+
right: "1.25rem",
|
|
34
|
+
verticalRight: "1.5rem"
|
|
35
|
+
}
|
|
36
|
+
},
|
|
37
|
+
color: "#545454",
|
|
38
|
+
border: "0.0625rem solid #cccccc",
|
|
39
|
+
selected: {
|
|
40
|
+
background: "#f6f6f6",
|
|
41
|
+
border: {
|
|
42
|
+
border: "0.5rem solid #0072a9",
|
|
43
|
+
size: "0.5rem",
|
|
44
|
+
background: "#0072a9"
|
|
45
|
+
}
|
|
46
|
+
},
|
|
47
|
+
disabled: {
|
|
48
|
+
cursor: "not-allowed",
|
|
49
|
+
color: "#999999"
|
|
50
|
+
},
|
|
51
|
+
focusVisible: {
|
|
52
|
+
outline: "0.125rem solid #0072a9",
|
|
53
|
+
outlineOffset: "-0.0625rem"
|
|
54
|
+
}
|
|
55
|
+
},
|
|
56
|
+
md: {
|
|
57
|
+
height: "3rem",
|
|
58
|
+
typography: {
|
|
59
|
+
font: "normal 700 1rem/1.15 Open Sans",
|
|
60
|
+
letterSpacing: "-0.03125rem",
|
|
61
|
+
fontWidth: 95
|
|
62
|
+
}
|
|
63
|
+
},
|
|
64
|
+
sm: {
|
|
65
|
+
height: "2.5rem",
|
|
66
|
+
typography: {
|
|
67
|
+
font: "normal 700 0.875rem/1.15 Open Sans",
|
|
68
|
+
letterSpacing: "-0.0125rem",
|
|
69
|
+
fontWidth: 95
|
|
70
|
+
}
|
|
71
|
+
}
|
|
72
|
+
},
|
|
73
|
+
tabList: { shared: {
|
|
74
|
+
display: "flex",
|
|
75
|
+
orientation: {
|
|
76
|
+
horizontal: { flexDirection: "row" },
|
|
77
|
+
vertical: { flexDirection: "column" }
|
|
78
|
+
}
|
|
79
|
+
} },
|
|
80
|
+
tabPanels: { shared: {
|
|
81
|
+
position: "relative",
|
|
82
|
+
overflow: "clip"
|
|
83
|
+
} },
|
|
84
|
+
tabPanel: { shared: { position: "initial" } }
|
|
85
|
+
};
|
|
86
|
+
//#endregion
|
|
87
|
+
exports.componentTabs = componentTabs;
|
|
@@ -0,0 +1,104 @@
|
|
|
1
|
+
//#region src/styleD/build/typescript/component/tabs.d.ts
|
|
2
|
+
/**
|
|
3
|
+
* Do not edit directly, this file was auto-generated.
|
|
4
|
+
*/
|
|
5
|
+
declare const componentTabs: {
|
|
6
|
+
tabs: {
|
|
7
|
+
shared: {
|
|
8
|
+
display: string;
|
|
9
|
+
maxWidth: string;
|
|
10
|
+
orientation: {
|
|
11
|
+
vertical: {
|
|
12
|
+
flexDirection: string;
|
|
13
|
+
width: string;
|
|
14
|
+
};
|
|
15
|
+
horizontal: {
|
|
16
|
+
flexDirection: string;
|
|
17
|
+
};
|
|
18
|
+
};
|
|
19
|
+
};
|
|
20
|
+
};
|
|
21
|
+
tab: {
|
|
22
|
+
shared: {
|
|
23
|
+
position: string;
|
|
24
|
+
display: string;
|
|
25
|
+
gap: string;
|
|
26
|
+
cursor: string;
|
|
27
|
+
flexDirection: string;
|
|
28
|
+
justifyContent: string;
|
|
29
|
+
alignItems: string;
|
|
30
|
+
padding: {
|
|
31
|
+
top: string;
|
|
32
|
+
bottom: string;
|
|
33
|
+
left: string;
|
|
34
|
+
right: string;
|
|
35
|
+
verticalRight: string;
|
|
36
|
+
withIcon: {
|
|
37
|
+
right: string;
|
|
38
|
+
verticalRight: string;
|
|
39
|
+
};
|
|
40
|
+
};
|
|
41
|
+
color: string;
|
|
42
|
+
border: string;
|
|
43
|
+
selected: {
|
|
44
|
+
background: string;
|
|
45
|
+
border: {
|
|
46
|
+
border: string;
|
|
47
|
+
size: string;
|
|
48
|
+
background: string;
|
|
49
|
+
};
|
|
50
|
+
};
|
|
51
|
+
disabled: {
|
|
52
|
+
cursor: string;
|
|
53
|
+
color: string;
|
|
54
|
+
};
|
|
55
|
+
focusVisible: {
|
|
56
|
+
outline: string;
|
|
57
|
+
outlineOffset: string;
|
|
58
|
+
};
|
|
59
|
+
};
|
|
60
|
+
md: {
|
|
61
|
+
height: string;
|
|
62
|
+
typography: {
|
|
63
|
+
font: string;
|
|
64
|
+
letterSpacing: string;
|
|
65
|
+
fontWidth: number;
|
|
66
|
+
};
|
|
67
|
+
};
|
|
68
|
+
sm: {
|
|
69
|
+
height: string;
|
|
70
|
+
typography: {
|
|
71
|
+
font: string;
|
|
72
|
+
letterSpacing: string;
|
|
73
|
+
fontWidth: number;
|
|
74
|
+
};
|
|
75
|
+
};
|
|
76
|
+
};
|
|
77
|
+
tabList: {
|
|
78
|
+
shared: {
|
|
79
|
+
display: string;
|
|
80
|
+
orientation: {
|
|
81
|
+
horizontal: {
|
|
82
|
+
flexDirection: string;
|
|
83
|
+
};
|
|
84
|
+
vertical: {
|
|
85
|
+
flexDirection: string;
|
|
86
|
+
};
|
|
87
|
+
};
|
|
88
|
+
};
|
|
89
|
+
};
|
|
90
|
+
tabPanels: {
|
|
91
|
+
shared: {
|
|
92
|
+
position: string;
|
|
93
|
+
overflow: string;
|
|
94
|
+
};
|
|
95
|
+
};
|
|
96
|
+
tabPanel: {
|
|
97
|
+
shared: {
|
|
98
|
+
position: string;
|
|
99
|
+
};
|
|
100
|
+
};
|
|
101
|
+
};
|
|
102
|
+
type ComponentTabs = typeof componentTabs;
|
|
103
|
+
//#endregion
|
|
104
|
+
export { ComponentTabs, componentTabs };
|