@pega/cosmos-react-core 7.0.0-build.26.3 → 7.0.0-build.26.5

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.
Files changed (49) hide show
  1. package/lib/components/FieldGroup/FieldGroup.d.ts +6 -0
  2. package/lib/components/FieldGroup/FieldGroup.d.ts.map +1 -1
  3. package/lib/components/FieldGroup/FieldGroup.js +26 -4
  4. package/lib/components/FieldGroup/FieldGroup.js.map +1 -1
  5. package/lib/components/Icon/streamline-icons/calendar-now.icon.d.ts +5 -0
  6. package/lib/components/Icon/streamline-icons/calendar-now.icon.d.ts.map +1 -0
  7. package/lib/components/Icon/streamline-icons/calendar-now.icon.js +7 -0
  8. package/lib/components/Icon/streamline-icons/calendar-now.icon.js.map +1 -0
  9. package/lib/components/Icon/streamlineIconNames.d.ts +1 -1
  10. package/lib/components/Icon/streamlineIconNames.d.ts.map +1 -1
  11. package/lib/components/Icon/streamlineIconNames.js +1 -0
  12. package/lib/components/Icon/streamlineIconNames.js.map +1 -1
  13. package/lib/components/PageTemplates/CategorySubPage.styles.d.ts +3 -1
  14. package/lib/components/PageTemplates/CategorySubPage.styles.d.ts.map +1 -1
  15. package/lib/components/Tabs/Tab.d.ts +3 -1
  16. package/lib/components/Tabs/Tab.d.ts.map +1 -1
  17. package/lib/components/Tabs/Tab.js +77 -18
  18. package/lib/components/Tabs/Tab.js.map +1 -1
  19. package/lib/components/Tabs/TabPanel.d.ts +10 -1
  20. package/lib/components/Tabs/TabPanel.d.ts.map +1 -1
  21. package/lib/components/Tabs/TabPanel.js +24 -7
  22. package/lib/components/Tabs/TabPanel.js.map +1 -1
  23. package/lib/components/Tabs/Tabs.d.ts.map +1 -1
  24. package/lib/components/Tabs/Tabs.js +23 -18
  25. package/lib/components/Tabs/Tabs.js.map +1 -1
  26. package/lib/components/Tabs/Tabs.styles.d.ts +8 -0
  27. package/lib/components/Tabs/Tabs.styles.d.ts.map +1 -1
  28. package/lib/components/Tabs/Tabs.styles.js +90 -44
  29. package/lib/components/Tabs/Tabs.styles.js.map +1 -1
  30. package/lib/components/Tabs/TabsContext.d.ts +6 -0
  31. package/lib/components/Tabs/TabsContext.d.ts.map +1 -0
  32. package/lib/components/Tabs/TabsContext.js +6 -0
  33. package/lib/components/Tabs/TabsContext.js.map +1 -0
  34. package/lib/components/Tabs/index.d.ts +1 -0
  35. package/lib/components/Tabs/index.d.ts.map +1 -1
  36. package/lib/components/Tabs/index.js +1 -0
  37. package/lib/components/Tabs/index.js.map +1 -1
  38. package/lib/components/Text/Text.js +1 -1
  39. package/lib/components/Text/Text.js.map +1 -1
  40. package/lib/hooks/useI18n.d.ts +1 -0
  41. package/lib/hooks/useI18n.d.ts.map +1 -1
  42. package/lib/i18n/default.d.ts +1 -0
  43. package/lib/i18n/default.d.ts.map +1 -1
  44. package/lib/i18n/default.js +1 -0
  45. package/lib/i18n/default.js.map +1 -1
  46. package/lib/i18n/i18n.d.ts +1 -0
  47. package/lib/i18n/i18n.d.ts.map +1 -1
  48. package/lib/theme/themeDefinition.json +1 -1
  49. package/package.json +1 -1
@@ -7,6 +7,8 @@ export type FieldGroupProps = BaseProps & {
7
7
  children: ReactNode;
8
8
  /** A description of the field group to be displayed above the controls. */
9
9
  description?: string;
10
+ /** The display and markup variant to apply to the group. */
11
+ variant?: 'form-group';
10
12
  /** A reference to the wrapping element. */
11
13
  ref?: Ref<HTMLFieldSetElement>;
12
14
  } & ({
@@ -42,6 +44,10 @@ export type FieldGroupProps = BaseProps & {
42
44
  export declare const StyledFieldGroupName: import("styled-components").StyledComponent<"span", import("styled-components").DefaultTheme, {}, never>;
43
45
  export declare const StyledFieldGroupLegend: import("styled-components").StyledComponent<"legend", import("styled-components").DefaultTheme, Pick<FieldGroupProps, "collapsed">, never>;
44
46
  export declare const StyledFieldGroup: import("styled-components").StyledComponent<"fieldset", import("styled-components").DefaultTheme, {}, never>;
47
+ export declare const StyledGroupContainer: import("styled-components").StyledComponent<"div", import("styled-components").DefaultTheme, {
48
+ collapsed?: boolean | undefined;
49
+ border?: boolean | undefined;
50
+ }, never>;
45
51
  declare const FieldGroup: FunctionComponent<FieldGroupProps & ForwardProps>;
46
52
  export default FieldGroup;
47
53
  //# sourceMappingURL=FieldGroup.d.ts.map
@@ -1 +1 @@
1
- {"version":3,"file":"FieldGroup.d.ts","sourceRoot":"","sources":["../../../src/components/FieldGroup/FieldGroup.tsx"],"names":[],"mappings":"AACA,OAAO,KAAK,EAAE,iBAAiB,EAAmB,GAAG,EAAE,SAAS,EAAE,MAAM,OAAO,CAAC;AAYhF,OAAO,KAAK,EAAE,YAAY,EAAE,MAAM,YAAY,CAAC;AAE/C,OAAO,KAAK,EAAE,SAAS,EAAE,YAAY,EAAE,UAAU,EAAE,MAAM,aAAa,CAAC;AAKvE,OAAO,KAAK,EAAE,mBAAmB,EAAE,MAAM,mBAAmB,CAAC;AAI7D,MAAM,MAAM,eAAe,GAAG,SAAS,GAAG;IACxC,sCAAsC;IACtC,QAAQ,EAAE,SAAS,CAAC;IACpB,2EAA2E;IAC3E,WAAW,CAAC,EAAE,MAAM,CAAC;IACrB,2CAA2C;IAC3C,GAAG,CAAC,EAAE,GAAG,CAAC,mBAAmB,CAAC,CAAC;CAChC,GAAG,CACE;IACE,gDAAgD;IAChD,IAAI,EAAE,MAAM,CAAC;IACb,wCAAwC;IACxC,UAAU,CAAC,EAAE,UAAU,CAAC;IACxB,4DAA4D;IAC5D,cAAc,CAAC,EAAE;QACf,OAAO,CAAC,EAAE,mBAAmB,CAAC,SAAS,CAAC,CAAC;QACzC,OAAO,EAAE,mBAAmB,CAAC,UAAU,CAAC,CAAC;KAC1C,CAAC;IACF,gDAAgD;IAChD,OAAO,CAAC,EAAE,YAAY,CAAC,OAAO,CAAC,CAAC;IAChC;;;;OAIG;IACH,SAAS,CAAC,EAAE,OAAO,CAAC;IACpB;;OAEG;IACH,iBAAiB,CAAC,EAAE,MAAM,IAAI,CAAC;CAChC,GACD;IACE,IAAI,CAAC,EAAE,SAAS,CAAC;IACjB,UAAU,CAAC,EAAE,KAAK,CAAC;IACnB,cAAc,CAAC,EAAE,KAAK,CAAC;IACvB,OAAO,CAAC,EAAE,KAAK,CAAC;IAChB,SAAS,CAAC,EAAE,KAAK,CAAC;IAClB,iBAAiB,CAAC,EAAE,KAAK,CAAC;CAC3B,CACJ,CAAC;AA8BJ,eAAO,MAAM,oBAAoB,0GAAgB,CAAC;AAElD,eAAO,MAAM,sBAAsB,4IA+BlC,CAAC;AAIF,eAAO,MAAM,gBAAgB,8GAiC5B,CAAC;AA6BF,QAAA,MAAM,UAAU,EAAE,iBAAiB,CAAC,eAAe,GAAG,YAAY,CAgFjE,CAAC;AAEF,eAAe,UAAU,CAAC"}
1
+ {"version":3,"file":"FieldGroup.d.ts","sourceRoot":"","sources":["../../../src/components/FieldGroup/FieldGroup.tsx"],"names":[],"mappings":"AACA,OAAO,KAAK,EAAE,iBAAiB,EAAmB,GAAG,EAAE,SAAS,EAAE,MAAM,OAAO,CAAC;AAYhF,OAAO,KAAK,EAAE,YAAY,EAAE,MAAM,YAAY,CAAC;AAE/C,OAAO,KAAK,EAAE,SAAS,EAAE,YAAY,EAAE,UAAU,EAAE,MAAM,aAAa,CAAC;AAKvE,OAAO,KAAK,EAAE,mBAAmB,EAAE,MAAM,mBAAmB,CAAC;AAK7D,MAAM,MAAM,eAAe,GAAG,SAAS,GAAG;IACxC,sCAAsC;IACtC,QAAQ,EAAE,SAAS,CAAC;IACpB,2EAA2E;IAC3E,WAAW,CAAC,EAAE,MAAM,CAAC;IACrB,4DAA4D;IAC5D,OAAO,CAAC,EAAE,YAAY,CAAC;IACvB,2CAA2C;IAC3C,GAAG,CAAC,EAAE,GAAG,CAAC,mBAAmB,CAAC,CAAC;CAChC,GAAG,CACE;IACE,gDAAgD;IAChD,IAAI,EAAE,MAAM,CAAC;IACb,wCAAwC;IACxC,UAAU,CAAC,EAAE,UAAU,CAAC;IACxB,4DAA4D;IAC5D,cAAc,CAAC,EAAE;QACf,OAAO,CAAC,EAAE,mBAAmB,CAAC,SAAS,CAAC,CAAC;QACzC,OAAO,EAAE,mBAAmB,CAAC,UAAU,CAAC,CAAC;KAC1C,CAAC;IACF,gDAAgD;IAChD,OAAO,CAAC,EAAE,YAAY,CAAC,OAAO,CAAC,CAAC;IAChC;;;;OAIG;IACH,SAAS,CAAC,EAAE,OAAO,CAAC;IACpB;;OAEG;IACH,iBAAiB,CAAC,EAAE,MAAM,IAAI,CAAC;CAChC,GACD;IACE,IAAI,CAAC,EAAE,SAAS,CAAC;IACjB,UAAU,CAAC,EAAE,KAAK,CAAC;IACnB,cAAc,CAAC,EAAE,KAAK,CAAC;IACvB,OAAO,CAAC,EAAE,KAAK,CAAC;IAChB,SAAS,CAAC,EAAE,KAAK,CAAC;IAClB,iBAAiB,CAAC,EAAE,KAAK,CAAC;CAC3B,CACJ,CAAC;AA+BJ,eAAO,MAAM,oBAAoB,0GAAgB,CAAC;AAElD,eAAO,MAAM,sBAAsB,4IA+BlC,CAAC;AAIF,eAAO,MAAM,gBAAgB,8GAiC5B,CAAC;AAIF,eAAO,MAAM,oBAAoB;;;SA+BhC,CAAC;AA8BF,QAAA,MAAM,UAAU,EAAE,iBAAiB,CAAC,eAAe,GAAG,YAAY,CAoFjE,CAAC;AAEF,eAAe,UAAU,CAAC"}
@@ -15,6 +15,7 @@ import { useDirection, useI18n, useUID } from '../../hooks';
15
15
  import { calculateFontSize, omitProps } from '../../styles';
16
16
  import AdditionalInfo from '../AdditionalInfo';
17
17
  registerIcon(caretRightIcon);
18
+ // Styles
18
19
  const StyledExpandButton = styled(Button)(({ theme: { base: { animation } } }) => {
19
20
  const { rtl } = useDirection();
20
21
  return css `
@@ -78,16 +79,37 @@ export const StyledFieldGroup = styled.fieldset(({ theme: { base: { 'font-size':
78
79
  `;
79
80
  });
80
81
  StyledFieldGroup.defaultProps = defaultThemeProp;
82
+ export const StyledGroupContainer = styled.div(({ theme, collapsed, border }) => {
83
+ const { base: { animation: { speed, timing }, palette: { 'border-line': borderColor }, spacing, 'border-radius': baseBorderRadius }, components: { 'form-control': { 'border-width': borderWidth } } } = theme;
84
+ if (!border)
85
+ return null;
86
+ const showBorder = !collapsed;
87
+ return css `
88
+ padding: ${spacing};
89
+ border-radius: calc(${baseBorderRadius} / 2);
90
+ border: ${borderWidth} solid transparent;
91
+ transition-property: border-color;
92
+ transition-duration: ${speed};
93
+ transition-timing-function: ${timing.ease};
94
+
95
+ ${showBorder &&
96
+ css `
97
+ border-color: ${borderColor};
98
+ `}
99
+ `;
100
+ });
101
+ StyledGroupContainer.defaultProps = defaultThemeProp;
102
+ // Components
81
103
  const FieldGroupLegend = ({ name, children, collapsed, actions, additionalInfo, ...restProps }) => {
82
104
  return (_jsx(StyledFieldGroupLegend, { collapsed: collapsed, ...restProps, children: _jsxs(Flex, { container: { alignItems: 'center', justify: 'between', gap: 0.5 }, children: [_jsxs(Flex, { container: { alignItems: 'center', gap: 0.5 }, children: [children, additionalInfo && (_jsx(AdditionalInfo, { heading: additionalInfo.heading, contextualLabel: name, children: additionalInfo.content }))] }), actions && _jsx(Actions, { items: actions })] }) }));
83
105
  };
84
- const FieldGroup = forwardRef(function FieldGroup({ children, description, name, additionalInfo, actions, collapsed, headingTag, onToggleCollapsed, ...restProps }, ref) {
106
+ const FieldGroup = forwardRef(function FieldGroup({ children, description, name, additionalInfo, actions, collapsed, headingTag, onToggleCollapsed, variant, ...restProps }, ref) {
85
107
  const t = useI18n();
86
108
  const uid = useUID();
87
109
  const descAndChildren = (_jsxs(Grid, { container: { cols: 'minmax(0, 1fr)', gap: 3 }, children: [description && _jsx(HTML, { id: `${uid}-description`, as: 'p', content: description }), _jsx("div", { children: children })] }));
88
- return (_jsxs(StyledFieldGroup, { "aria-label": name, "aria-describedby": description ? `${uid}-description` : undefined, ...restProps, ref: ref, children: [name && (_jsx(FieldGroupLegend, { collapsed: collapsed, actions: actions, additionalInfo: additionalInfo, name: name, children: typeof collapsed === 'boolean' ? (_jsx(StyledExpandButton, { type: 'button', variant: 'text', onClick: () => {
89
- onToggleCollapsed?.();
90
- }, "aria-expanded": collapsed ? 'false' : 'true', "aria-label": t(collapsed ? 'expand_noun' : 'collapse_noun', [name]), children: _jsxs(Flex, { container: { direction: 'row', alignItems: 'center', gap: 0.5 }, forwardedAs: 'span', children: [_jsx(Icon, { name: 'caret-right' }), headingTag ? (_jsx(Text, { variant: headingTag, children: name })) : (_jsx(StyledFieldGroupName, { children: name }))] }) })) : (_jsx(_Fragment, { children: headingTag ? (_jsx(Text, { variant: headingTag, children: name })) : (_jsx(StyledFieldGroupName, { children: name })) })) })), typeof collapsed === 'boolean' ? (_jsx(ExpandCollapse, { collapsed: collapsed, children: descAndChildren })) : (descAndChildren)] }));
110
+ return (_jsx(StyledGroupContainer, { border: variant === 'form-group', collapsed: collapsed, children: _jsxs(StyledFieldGroup, { "aria-label": name, "aria-describedby": description ? `${uid}-description` : undefined, ...restProps, ref: ref, children: [name && (_jsx(FieldGroupLegend, { collapsed: collapsed, actions: actions, additionalInfo: additionalInfo, name: name, children: typeof collapsed === 'boolean' ? (_jsx(StyledExpandButton, { type: 'button', variant: 'text', onClick: () => {
111
+ onToggleCollapsed?.();
112
+ }, "aria-expanded": collapsed ? 'false' : 'true', "aria-label": t(collapsed ? 'expand_noun' : 'collapse_noun', [name]), children: _jsxs(Flex, { container: { direction: 'row', alignItems: 'center', gap: 0.5 }, forwardedAs: 'span', children: [_jsx(Icon, { name: 'caret-right' }), headingTag ? (_jsx(Text, { variant: headingTag, children: name })) : (_jsx(StyledFieldGroupName, { children: name }))] }) })) : (_jsx(_Fragment, { children: headingTag ? (_jsx(Text, { variant: headingTag, children: name })) : (_jsx(StyledFieldGroupName, { children: name })) })) })), typeof collapsed === 'boolean' ? (_jsx(ExpandCollapse, { collapsed: collapsed, children: descAndChildren })) : (descAndChildren)] }) }));
91
113
  });
92
114
  export default FieldGroup;
93
115
  //# sourceMappingURL=FieldGroup.js.map
@@ -1 +1 @@
1
- {"version":3,"file":"FieldGroup.js","sourceRoot":"","sources":["../../../src/components/FieldGroup/FieldGroup.tsx"],"names":[],"mappings":"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","sourcesContent":["import { forwardRef } from 'react';\nimport type { FunctionComponent, PropsWithoutRef, Ref, ReactNode } from 'react';\nimport styled, { css } from 'styled-components';\n\nimport Text from '../Text';\nimport Button from '../Button';\nimport ExpandCollapse from '../ExpandCollapse';\nimport Flex from '../Flex';\nimport Grid from '../Grid';\nimport HTML from '../HTML';\nimport Icon, { StyledIcon, registerIcon } from '../Icon';\nimport * as caretRightIcon from '../Icon/icons/caret-right.icon';\nimport Actions from '../Actions';\nimport type { ActionsProps } from '../Actions';\nimport { defaultThemeProp } from '../../theme';\nimport type { BaseProps, ForwardProps, HeadingTag } from '../../types';\nimport { useDirection, useI18n, useUID } from '../../hooks';\nimport { calculateFontSize, omitProps } from '../../styles';\nimport type { FontSize } from '../../styles';\nimport AdditionalInfo from '../AdditionalInfo';\nimport type { AdditionalInfoProps } from '../AdditionalInfo';\n\nregisterIcon(caretRightIcon);\n\nexport type FieldGroupProps = BaseProps & {\n /** The content of the Field Group. */\n children: ReactNode;\n /** A description of the field group to be displayed above the controls. */\n description?: string;\n /** A reference to the wrapping element. */\n ref?: Ref<HTMLFieldSetElement>;\n} & (\n | {\n /** The name associated with the Field Group. */\n name: string;\n /** Select the heading tag for header */\n headingTag?: HeadingTag;\n /** Provides additional info relevant to the field group. */\n additionalInfo?: {\n heading?: AdditionalInfoProps['heading'];\n content: AdditionalInfoProps['children'];\n };\n /** An array of actions to add to the header. */\n actions?: ActionsProps['items'];\n /**\n * Controls the collapsed state of the field group.\n * Passing undefined will render the field group as non-collapsible.\n * @default false\n */\n collapsed?: boolean;\n /**\n * Called when user clicks the toggle button.\n */\n onToggleCollapsed?: () => void;\n }\n | {\n name?: undefined;\n headingTag?: never;\n additionalInfo?: never;\n actions?: never;\n collapsed?: never;\n onToggleCollapsed?: never;\n }\n );\n\ninterface FieldGroupLegendProps extends Pick<FieldGroupProps, 'collapsed'> {\n name: NonNullable<FieldGroupProps['name']>;\n actions?: ActionsProps['items'];\n children?: ReactNode;\n additionalInfo?: FieldGroupProps['additionalInfo'];\n}\n\nconst StyledExpandButton = styled(Button)(({\n theme: {\n base: { animation }\n }\n}) => {\n const { rtl } = useDirection();\n return css`\n ${StyledIcon} {\n transition: transform ${animation.speed} ${animation.timing.ease};\n }\n &[aria-expanded='true'] ${StyledIcon} {\n transform: rotate(90deg);\n }\n &[aria-expanded='false'] ${StyledIcon} {\n transform: rotate(${rtl ? 180 : 0}deg);\n }\n `;\n});\n\nStyledExpandButton.defaultProps = defaultThemeProp;\n\nexport const StyledFieldGroupName = styled.span``;\n\nexport const StyledFieldGroupLegend = styled.legend.withConfig<Pick<FieldGroupProps, 'collapsed'>>(\n omitProps('collapsed')\n)(\n ({\n collapsed,\n theme: {\n base: {\n spacing,\n animation,\n 'hit-area': { 'mouse-min': hitAreaMouse, 'finger-min': hitAreaFinger }\n }\n }\n }) => {\n return css`\n width: 100%;\n margin-bottom: 0;\n ${!collapsed &&\n css`\n margin-block-end: calc(1.5 * ${spacing});\n `}\n transition: margin-block-end ${animation.speed} ${animation.timing.ease};\n\n > ${StyledExpandButton} {\n min-height: ${hitAreaMouse};\n\n @media (pointer: 'coarse') {\n min-height: ${hitAreaFinger};\n }\n }\n `;\n }\n);\n\nStyledFieldGroupLegend.defaultProps = defaultThemeProp;\n\nexport const StyledFieldGroup = styled.fieldset(\n ({\n theme: {\n base: { 'font-size': fontSize, 'font-scale': fontScale },\n components: { text }\n }\n }) => {\n const fontSizes = calculateFontSize(fontSize, fontScale);\n\n return css`\n border: none;\n\n & ${StyledFieldGroupName} {\n font-size: ${fontSizes[text.h3['font-size'] as FontSize]};\n font-weight: ${text.h3['font-weight']};\n }\n\n & & ${StyledFieldGroupName} {\n font-size: ${fontSizes[text.h4['font-size'] as FontSize]};\n font-weight: ${text.h4['font-weight']};\n }\n\n & & & ${StyledFieldGroupName} {\n font-size: ${fontSizes[text.h5['font-size'] as FontSize]};\n font-weight: ${text.h5['font-weight']};\n }\n\n & & & & ${StyledFieldGroupName} {\n font-size: ${fontSizes[text.h6['font-size'] as FontSize]};\n font-weight: ${text.h6['font-weight']};\n }\n `;\n }\n);\n\nStyledFieldGroup.defaultProps = defaultThemeProp;\n\nconst FieldGroupLegend: FunctionComponent<FieldGroupLegendProps> = ({\n name,\n children,\n collapsed,\n actions,\n additionalInfo,\n ...restProps\n}) => {\n return (\n <StyledFieldGroupLegend collapsed={collapsed} {...restProps}>\n <Flex container={{ alignItems: 'center', justify: 'between', gap: 0.5 }}>\n <Flex container={{ alignItems: 'center', gap: 0.5 }}>\n {children}\n {additionalInfo && (\n <AdditionalInfo heading={additionalInfo.heading} contextualLabel={name}>\n {additionalInfo.content}\n </AdditionalInfo>\n )}\n </Flex>\n {actions && <Actions items={actions} />}\n </Flex>\n </StyledFieldGroupLegend>\n );\n};\n\nconst FieldGroup: FunctionComponent<FieldGroupProps & ForwardProps> = forwardRef(\n function FieldGroup(\n {\n children,\n description,\n name,\n additionalInfo,\n actions,\n collapsed,\n headingTag,\n onToggleCollapsed,\n ...restProps\n }: PropsWithoutRef<FieldGroupProps>,\n ref: FieldGroupProps['ref']\n ) {\n const t = useI18n();\n const uid = useUID();\n\n const descAndChildren = (\n <Grid container={{ cols: 'minmax(0, 1fr)', gap: 3 }}>\n {description && <HTML id={`${uid}-description`} as='p' content={description} />}\n <div>{children}</div>\n </Grid>\n );\n\n return (\n <StyledFieldGroup\n aria-label={name}\n aria-describedby={description ? `${uid}-description` : undefined}\n {...restProps}\n ref={ref}\n >\n {name && (\n <FieldGroupLegend\n collapsed={collapsed}\n actions={actions}\n additionalInfo={additionalInfo}\n name={name}\n >\n {typeof collapsed === 'boolean' ? (\n <StyledExpandButton\n type='button'\n variant='text'\n onClick={() => {\n onToggleCollapsed?.();\n }}\n aria-expanded={collapsed ? 'false' : 'true'}\n aria-label={t(collapsed ? 'expand_noun' : 'collapse_noun', [name])}\n >\n <Flex\n container={{ direction: 'row', alignItems: 'center', gap: 0.5 }}\n forwardedAs='span'\n >\n <Icon name='caret-right' />\n {headingTag ? (\n <Text variant={headingTag}>{name}</Text>\n ) : (\n <StyledFieldGroupName>{name}</StyledFieldGroupName>\n )}\n </Flex>\n </StyledExpandButton>\n ) : (\n <>\n {headingTag ? (\n <Text variant={headingTag}>{name}</Text>\n ) : (\n <StyledFieldGroupName>{name}</StyledFieldGroupName>\n )}\n </>\n )}\n </FieldGroupLegend>\n )}\n {typeof collapsed === 'boolean' ? (\n <ExpandCollapse collapsed={collapsed}>{descAndChildren}</ExpandCollapse>\n ) : (\n descAndChildren\n )}\n </StyledFieldGroup>\n );\n }\n);\n\nexport default FieldGroup;\n"]}
1
+ {"version":3,"file":"FieldGroup.js","sourceRoot":"","sources":["../../../src/components/FieldGroup/FieldGroup.tsx"],"names":[],"mappings":"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","sourcesContent":["import { forwardRef } from 'react';\nimport type { FunctionComponent, PropsWithoutRef, Ref, ReactNode } from 'react';\nimport styled, { css } from 'styled-components';\n\nimport Text from '../Text';\nimport Button from '../Button';\nimport ExpandCollapse from '../ExpandCollapse';\nimport Flex from '../Flex';\nimport Grid from '../Grid';\nimport HTML from '../HTML';\nimport Icon, { StyledIcon, registerIcon } from '../Icon';\nimport * as caretRightIcon from '../Icon/icons/caret-right.icon';\nimport Actions from '../Actions';\nimport type { ActionsProps } from '../Actions';\nimport { defaultThemeProp } from '../../theme';\nimport type { BaseProps, ForwardProps, HeadingTag } from '../../types';\nimport { useDirection, useI18n, useUID } from '../../hooks';\nimport { calculateFontSize, omitProps } from '../../styles';\nimport type { FontSize } from '../../styles';\nimport AdditionalInfo from '../AdditionalInfo';\nimport type { AdditionalInfoProps } from '../AdditionalInfo';\n\nregisterIcon(caretRightIcon);\n\n// Types\nexport type FieldGroupProps = BaseProps & {\n /** The content of the Field Group. */\n children: ReactNode;\n /** A description of the field group to be displayed above the controls. */\n description?: string;\n /** The display and markup variant to apply to the group. */\n variant?: 'form-group';\n /** A reference to the wrapping element. */\n ref?: Ref<HTMLFieldSetElement>;\n} & (\n | {\n /** The name associated with the Field Group. */\n name: string;\n /** Select the heading tag for header */\n headingTag?: HeadingTag;\n /** Provides additional info relevant to the field group. */\n additionalInfo?: {\n heading?: AdditionalInfoProps['heading'];\n content: AdditionalInfoProps['children'];\n };\n /** An array of actions to add to the header. */\n actions?: ActionsProps['items'];\n /**\n * Controls the collapsed state of the field group.\n * Passing undefined will render the field group as non-collapsible.\n * @default false\n */\n collapsed?: boolean;\n /**\n * Called when user clicks the toggle button.\n */\n onToggleCollapsed?: () => void;\n }\n | {\n name?: undefined;\n headingTag?: never;\n additionalInfo?: never;\n actions?: never;\n collapsed?: never;\n onToggleCollapsed?: never;\n }\n );\n\ninterface FieldGroupLegendProps extends Pick<FieldGroupProps, 'collapsed'> {\n name: NonNullable<FieldGroupProps['name']>;\n actions?: ActionsProps['items'];\n children?: ReactNode;\n additionalInfo?: FieldGroupProps['additionalInfo'];\n}\n\n// Styles\nconst StyledExpandButton = styled(Button)(({\n theme: {\n base: { animation }\n }\n}) => {\n const { rtl } = useDirection();\n return css`\n ${StyledIcon} {\n transition: transform ${animation.speed} ${animation.timing.ease};\n }\n &[aria-expanded='true'] ${StyledIcon} {\n transform: rotate(90deg);\n }\n &[aria-expanded='false'] ${StyledIcon} {\n transform: rotate(${rtl ? 180 : 0}deg);\n }\n `;\n});\n\nStyledExpandButton.defaultProps = defaultThemeProp;\n\nexport const StyledFieldGroupName = styled.span``;\n\nexport const StyledFieldGroupLegend = styled.legend.withConfig<Pick<FieldGroupProps, 'collapsed'>>(\n omitProps('collapsed')\n)(\n ({\n collapsed,\n theme: {\n base: {\n spacing,\n animation,\n 'hit-area': { 'mouse-min': hitAreaMouse, 'finger-min': hitAreaFinger }\n }\n }\n }) => {\n return css`\n width: 100%;\n margin-bottom: 0;\n ${!collapsed &&\n css`\n margin-block-end: calc(1.5 * ${spacing});\n `}\n transition: margin-block-end ${animation.speed} ${animation.timing.ease};\n\n > ${StyledExpandButton} {\n min-height: ${hitAreaMouse};\n\n @media (pointer: 'coarse') {\n min-height: ${hitAreaFinger};\n }\n }\n `;\n }\n);\n\nStyledFieldGroupLegend.defaultProps = defaultThemeProp;\n\nexport const StyledFieldGroup = styled.fieldset(\n ({\n theme: {\n base: { 'font-size': fontSize, 'font-scale': fontScale },\n components: { text }\n }\n }) => {\n const fontSizes = calculateFontSize(fontSize, fontScale);\n\n return css`\n border: none;\n\n & ${StyledFieldGroupName} {\n font-size: ${fontSizes[text.h3['font-size'] as FontSize]};\n font-weight: ${text.h3['font-weight']};\n }\n\n & & ${StyledFieldGroupName} {\n font-size: ${fontSizes[text.h4['font-size'] as FontSize]};\n font-weight: ${text.h4['font-weight']};\n }\n\n & & & ${StyledFieldGroupName} {\n font-size: ${fontSizes[text.h5['font-size'] as FontSize]};\n font-weight: ${text.h5['font-weight']};\n }\n\n & & & & ${StyledFieldGroupName} {\n font-size: ${fontSizes[text.h6['font-size'] as FontSize]};\n font-weight: ${text.h6['font-weight']};\n }\n `;\n }\n);\n\nStyledFieldGroup.defaultProps = defaultThemeProp;\n\nexport const StyledGroupContainer = styled.div<{ collapsed?: boolean; border?: boolean }>(\n ({ theme, collapsed, border }) => {\n const {\n base: {\n animation: { speed, timing },\n palette: { 'border-line': borderColor },\n spacing,\n 'border-radius': baseBorderRadius\n },\n components: {\n 'form-control': { 'border-width': borderWidth }\n }\n } = theme;\n if (!border) return null;\n\n const showBorder = !collapsed;\n\n return css`\n padding: ${spacing};\n border-radius: calc(${baseBorderRadius} / 2);\n border: ${borderWidth} solid transparent;\n transition-property: border-color;\n transition-duration: ${speed};\n transition-timing-function: ${timing.ease};\n\n ${showBorder &&\n css`\n border-color: ${borderColor};\n `}\n `;\n }\n);\n\nStyledGroupContainer.defaultProps = defaultThemeProp;\n\n// Components\nconst FieldGroupLegend: FunctionComponent<FieldGroupLegendProps> = ({\n name,\n children,\n collapsed,\n actions,\n additionalInfo,\n ...restProps\n}) => {\n return (\n <StyledFieldGroupLegend collapsed={collapsed} {...restProps}>\n <Flex container={{ alignItems: 'center', justify: 'between', gap: 0.5 }}>\n <Flex container={{ alignItems: 'center', gap: 0.5 }}>\n {children}\n {additionalInfo && (\n <AdditionalInfo heading={additionalInfo.heading} contextualLabel={name}>\n {additionalInfo.content}\n </AdditionalInfo>\n )}\n </Flex>\n {actions && <Actions items={actions} />}\n </Flex>\n </StyledFieldGroupLegend>\n );\n};\n\nconst FieldGroup: FunctionComponent<FieldGroupProps & ForwardProps> = forwardRef(\n function FieldGroup(\n {\n children,\n description,\n name,\n additionalInfo,\n actions,\n collapsed,\n headingTag,\n onToggleCollapsed,\n variant,\n ...restProps\n }: PropsWithoutRef<FieldGroupProps>,\n ref: FieldGroupProps['ref']\n ) {\n const t = useI18n();\n const uid = useUID();\n\n const descAndChildren = (\n <Grid container={{ cols: 'minmax(0, 1fr)', gap: 3 }}>\n {description && <HTML id={`${uid}-description`} as='p' content={description} />}\n <div>{children}</div>\n </Grid>\n );\n\n return (\n <StyledGroupContainer border={variant === 'form-group'} collapsed={collapsed}>\n <StyledFieldGroup\n aria-label={name}\n aria-describedby={description ? `${uid}-description` : undefined}\n {...restProps}\n ref={ref}\n >\n {name && (\n <FieldGroupLegend\n collapsed={collapsed}\n actions={actions}\n additionalInfo={additionalInfo}\n name={name}\n >\n {typeof collapsed === 'boolean' ? (\n <StyledExpandButton\n type='button'\n variant='text'\n onClick={() => {\n onToggleCollapsed?.();\n }}\n aria-expanded={collapsed ? 'false' : 'true'}\n aria-label={t(collapsed ? 'expand_noun' : 'collapse_noun', [name])}\n >\n <Flex\n container={{ direction: 'row', alignItems: 'center', gap: 0.5 }}\n forwardedAs='span'\n >\n <Icon name='caret-right' />\n {headingTag ? (\n <Text variant={headingTag}>{name}</Text>\n ) : (\n <StyledFieldGroupName>{name}</StyledFieldGroupName>\n )}\n </Flex>\n </StyledExpandButton>\n ) : (\n <>\n {headingTag ? (\n <Text variant={headingTag}>{name}</Text>\n ) : (\n <StyledFieldGroupName>{name}</StyledFieldGroupName>\n )}\n </>\n )}\n </FieldGroupLegend>\n )}\n\n {typeof collapsed === 'boolean' ? (\n <ExpandCollapse collapsed={collapsed}>{descAndChildren}</ExpandCollapse>\n ) : (\n descAndChildren\n )}\n </StyledFieldGroup>\n </StyledGroupContainer>\n );\n }\n);\n\nexport default FieldGroup;\n"]}
@@ -0,0 +1,5 @@
1
+ export declare const set = "streamline";
2
+ export declare const name = "calendar-now";
3
+ export declare const Component: () => JSX.Element;
4
+ export declare const viewBox = "0 0 18 18";
5
+ //# sourceMappingURL=calendar-now.icon.d.ts.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"calendar-now.icon.d.ts","sourceRoot":"","sources":["../../../../src/components/Icon/streamline-icons/calendar-now.icon.tsx"],"names":[],"mappings":"AAEA,eAAO,MAAM,GAAG,eAAe,CAAC;AAEhC,eAAO,MAAM,IAAI,iBAAiB,CAAC;AAEnC,eAAO,MAAM,SAAS,mBAKrB,CAAC;AAEF,eAAO,MAAM,OAAO,cAAc,CAAC"}
@@ -0,0 +1,7 @@
1
+ import { jsx as _jsx, jsxs as _jsxs } from "react/jsx-runtime";
2
+ // This file is autogenerated. Any changes will be overwritten.
3
+ export const set = 'streamline';
4
+ export const name = 'calendar-now';
5
+ export const Component = () => (_jsxs("g", { fill: 'none', stroke: 'currentColor', strokeLinecap: 'round', strokeLinejoin: 'round', children: [_jsx("path", { d: 'M16.344 2.808H1.656c-.648 0-1.152.504-1.152 1.152v12.384c0 .648.504 1.152 1.152 1.152h14.616c.648 0 1.152-.504 1.152-1.152V3.96c0-.648-.504-1.152-1.08-1.152zM.576 7.344h16.848M5.04 4.464V.576m7.92 3.888V.576' }), _jsx("path", { fill: 'currentColor', d: 'M7.5 12.5a1.5 1.5 0 1 0 3 0 1.5 1.5 0 0 0-3 0z' })] }));
6
+ export const viewBox = '0 0 18 18';
7
+ //# sourceMappingURL=calendar-now.icon.js.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"calendar-now.icon.js","sourceRoot":"","sources":["../../../../src/components/Icon/streamline-icons/calendar-now.icon.tsx"],"names":[],"mappings":";AAAA,+DAA+D;AAE/D,MAAM,CAAC,MAAM,GAAG,GAAG,YAAY,CAAC;AAEhC,MAAM,CAAC,MAAM,IAAI,GAAG,cAAc,CAAC;AAEnC,MAAM,CAAC,MAAM,SAAS,GAAG,GAAG,EAAE,CAAC,CAC7B,aAAG,IAAI,EAAC,MAAM,EAAC,MAAM,EAAC,cAAc,EAAC,aAAa,EAAC,OAAO,EAAC,cAAc,EAAC,OAAO,aAC/E,eAAM,CAAC,EAAC,iNAAiN,GAAG,EAC5N,eAAM,IAAI,EAAC,cAAc,EAAC,CAAC,EAAC,gDAAgD,GAAG,IAC7E,CACL,CAAC;AAEF,MAAM,CAAC,MAAM,OAAO,GAAG,WAAW,CAAC","sourcesContent":["// This file is autogenerated. Any changes will be overwritten.\n\nexport const set = 'streamline';\n\nexport const name = 'calendar-now';\n\nexport const Component = () => (\n <g fill='none' stroke='currentColor' strokeLinecap='round' strokeLinejoin='round'>\n <path d='M16.344 2.808H1.656c-.648 0-1.152.504-1.152 1.152v12.384c0 .648.504 1.152 1.152 1.152h14.616c.648 0 1.152-.504 1.152-1.152V3.96c0-.648-.504-1.152-1.08-1.152zM.576 7.344h16.848M5.04 4.464V.576m7.92 3.888V.576' />\n <path fill='currentColor' d='M7.5 12.5a1.5 1.5 0 1 0 3 0 1.5 1.5 0 0 0-3 0z' />\n </g>\n);\n\nexport const viewBox = '0 0 18 18';\n"]}
@@ -1,4 +1,4 @@
1
- declare const streamlineIconNames: readonly ["ai-assist", "alexa", "align-center", "align-left", "align-right", "amazon", "api", "app", "arrow-above-row-right", "arrow-bend-left", "arrow-down", "arrow-left-column", "arrow-left", "arrow-micro-down", "arrow-micro-left", "arrow-micro-right", "arrow-micro-up", "arrow-out", "arrow-right-column", "arrow-right", "arrow-up-down", "arrow-up", "bank", "bars", "bell-push-notification", "bell", "bluetooth", "book-open", "bookmark", "box-4", "box", "browser-code", "browser", "bug", "building-2", "building-3-solid", "building-3", "bulb", "calendar-empty", "calendar-range", "calendar", "car", "caret-down", "caret-left", "caret-right", "caret-up", "case-medical", "case-solid", "case", "chain", "chart-line", "chart-pie", "chat-check", "chat-exclamation-mark", "chat-help", "chat-quote", "chat-transfer", "chat-typing", "chat-unavailable", "chat", "chats", "check-badge", "check", "chevron-solid", "chevron", "circle-mixed-left", "circle", "clipboard-check", "clipboard-medical", "clipboard-pencil-solid", "clipboard-pencil", "clipboard-plus", "clipboard", "clock-solid", "clock", "cloud", "code-search", "code", "column-delete", "conversation", "copy", "credit", "csr-agent", "currency", "custom-column", "database-search", "dataviz-area-multi", "dataviz-area-stacked", "dataviz-area", "dataviz-bar-clustered", "dataviz-bar-stacked", "dataviz-bar", "dataviz-bell-curve", "dataviz-bubble", "dataviz-column-clustered", "dataviz-column-stacked", "dataviz-column", "dataviz-combo", "dataviz-datetime-field", "dataviz-donut", "dataviz-flip-counter", "dataviz-forecast", "dataviz-funnel", "dataviz-gauge-linear", "dataviz-gauge-progress", "dataviz-gauge", "dataviz-geo-choropleth", "dataviz-heatmap", "dataviz-histogram", "dataviz-line-horizontal", "dataviz-line-multi", "dataviz-line-stepped", "dataviz-line", "dataviz-numeric-field", "dataviz-pareto", "dataviz-pie", "dataviz-pivot-table", "dataviz-radar", "dataviz-scatter", "dataviz-spark", "dataviz-sparklines-area", "dataviz-sparklines-columns", "dataviz-sparklines-line", "dataviz-sparklines-pies", "dataviz-spline", "dataviz-string-field", "dataviz-table-with-bars", "dataviz-trend-down", "dataviz-trend-up", "dataviz-waterfall", "desktop", "diamond", "disc-stack-solid", "disc-stack", "dock", "doctor-female", "doctor-male", "document-pdf", "document", "docusign", "dot-9-solid", "download", "drag", "email-open", "exchange", "expression", "eye-off", "face-blank", "face-happy", "face-sad", "facebook", "farming-wheat", "fast-forward", "field-cursor", "filetype-text", "filter", "fingerprint-search", "flag-check", "flag-finish", "flag-wave-solid", "flag-wave", "flashlight", "flow-process", "folder-closed", "folder-empty", "folder-hierarchy", "folder-nested", "folder-search", "folder", "folders", "forward-all", "forward", "function", "gear-play", "gear-solid", "gear", "globe", "google", "government", "graduate", "hand-book-open", "hand-over-paper", "hand", "handshake", "header", "headset", "home-solid", "home", "house-bed", "house-person", "indent", "infinity", "information-solid", "information", "ios-face-id", "ios-finger-id", "layers", "letter", "linkedin", "list-number", "list", "location-solid", "location", "mail-warning", "mail", "megaphone", "merge", "messages-to-chat", "mic-off", "mic", "micro-arrow-down", "micro-arrow-left", "micro-arrow-right", "micro-arrow-up", "minus", "mobile-phone", "module", "money-atm", "money", "monitor-lock", "more", "mountain-top", "multi-device", "navigation", "newspaper-fold", "newspaper", "nodes-down", "note-pin", "notepad", "number-decimal", "offer-list", "offer-table", "offer", "open-new-tab", "open", "opportunity-refresh", "opportunity", "os-apple", "paper-clip", "paper-search", "password-lock", "pause", "paypal", "pega", "pegasus", "pencil", "people-group-stakeholders", "percentage", "person-connection", "person-hierarchy-check", "person-stars", "person", "persons-group", "phone-call", "phone-dial", "phone-hangup", "phone-in", "phone-ivr", "phone-off", "phone-out", "phone-split", "phone-transfer", "phone", "phonebook", "picture", "play-solid", "play", "plug-solid", "plug", "plus", "polaris-solid", "polaris", "presentation", "product", "project-plan", "project", "qr", "receipt", "reply-all", "reply", "reset", "robot-happy", "robot-sad", "robot", "roof-people", "row-delete", "row-insert", "row", "rule-library-solid", "rule-library", "rule", "scale-down", "scale-up", "script", "search-analytics-solid", "search-analytics", "search", "send", "server", "set", "share", "shield-solid", "shield", "shipment-box", "shop", "shuffle", "sigma", "slideshow", "snow", "speaker", "split", "stakeholders", "star-mixed", "star-solid", "star", "sub-step", "table-bolt-solid", "table-bolt", "table", "tag", "target-path", "team", "thumbs-down-solid", "thumbs-down", "thumbs-up-solid", "thumbs-up", "times", "todo", "toolbox-open", "toolbox-wrench", "transform", "trash", "tribox", "twitter", "two-disk-stacks", "type-cursor", "umbrella", "undock", "unindent", "user-check", "user-document", "user-information", "user-pencil", "user-solid", "user-star", "user-unavailable", "user", "variable", "voice", "wand", "warn-solid", "warn", "widget", "wifi", "youtube"];
1
+ declare const streamlineIconNames: readonly ["ai-assist", "alexa", "align-center", "align-left", "align-right", "amazon", "api", "app", "arrow-above-row-right", "arrow-bend-left", "arrow-down", "arrow-left-column", "arrow-left", "arrow-micro-down", "arrow-micro-left", "arrow-micro-right", "arrow-micro-up", "arrow-out", "arrow-right-column", "arrow-right", "arrow-up-down", "arrow-up", "bank", "bars", "bell-push-notification", "bell", "bluetooth", "book-open", "bookmark", "box-4", "box", "browser-code", "browser", "bug", "building-2", "building-3-solid", "building-3", "bulb", "calendar-empty", "calendar-now", "calendar-range", "calendar", "car", "caret-down", "caret-left", "caret-right", "caret-up", "case-medical", "case-solid", "case", "chain", "chart-line", "chart-pie", "chat-check", "chat-exclamation-mark", "chat-help", "chat-quote", "chat-transfer", "chat-typing", "chat-unavailable", "chat", "chats", "check-badge", "check", "chevron-solid", "chevron", "circle-mixed-left", "circle", "clipboard-check", "clipboard-medical", "clipboard-pencil-solid", "clipboard-pencil", "clipboard-plus", "clipboard", "clock-solid", "clock", "cloud", "code-search", "code", "column-delete", "conversation", "copy", "credit", "csr-agent", "currency", "custom-column", "database-search", "dataviz-area-multi", "dataviz-area-stacked", "dataviz-area", "dataviz-bar-clustered", "dataviz-bar-stacked", "dataviz-bar", "dataviz-bell-curve", "dataviz-bubble", "dataviz-column-clustered", "dataviz-column-stacked", "dataviz-column", "dataviz-combo", "dataviz-datetime-field", "dataviz-donut", "dataviz-flip-counter", "dataviz-forecast", "dataviz-funnel", "dataviz-gauge-linear", "dataviz-gauge-progress", "dataviz-gauge", "dataviz-geo-choropleth", "dataviz-heatmap", "dataviz-histogram", "dataviz-line-horizontal", "dataviz-line-multi", "dataviz-line-stepped", "dataviz-line", "dataviz-numeric-field", "dataviz-pareto", "dataviz-pie", "dataviz-pivot-table", "dataviz-radar", "dataviz-scatter", "dataviz-spark", "dataviz-sparklines-area", "dataviz-sparklines-columns", "dataviz-sparklines-line", "dataviz-sparklines-pies", "dataviz-spline", "dataviz-string-field", "dataviz-table-with-bars", "dataviz-trend-down", "dataviz-trend-up", "dataviz-waterfall", "desktop", "diamond", "disc-stack-solid", "disc-stack", "dock", "doctor-female", "doctor-male", "document-pdf", "document", "docusign", "dot-9-solid", "download", "drag", "email-open", "exchange", "expression", "eye-off", "face-blank", "face-happy", "face-sad", "facebook", "farming-wheat", "fast-forward", "field-cursor", "filetype-text", "filter", "fingerprint-search", "flag-check", "flag-finish", "flag-wave-solid", "flag-wave", "flashlight", "flow-process", "folder-closed", "folder-empty", "folder-hierarchy", "folder-nested", "folder-search", "folder", "folders", "forward-all", "forward", "function", "gear-play", "gear-solid", "gear", "globe", "google", "government", "graduate", "hand-book-open", "hand-over-paper", "hand", "handshake", "header", "headset", "home-solid", "home", "house-bed", "house-person", "indent", "infinity", "information-solid", "information", "ios-face-id", "ios-finger-id", "layers", "letter", "linkedin", "list-number", "list", "location-solid", "location", "mail-warning", "mail", "megaphone", "merge", "messages-to-chat", "mic-off", "mic", "micro-arrow-down", "micro-arrow-left", "micro-arrow-right", "micro-arrow-up", "minus", "mobile-phone", "module", "money-atm", "money", "monitor-lock", "more", "mountain-top", "multi-device", "navigation", "newspaper-fold", "newspaper", "nodes-down", "note-pin", "notepad", "number-decimal", "offer-list", "offer-table", "offer", "open-new-tab", "open", "opportunity-refresh", "opportunity", "os-apple", "paper-clip", "paper-search", "password-lock", "pause", "paypal", "pega", "pegasus", "pencil", "people-group-stakeholders", "percentage", "person-connection", "person-hierarchy-check", "person-stars", "person", "persons-group", "phone-call", "phone-dial", "phone-hangup", "phone-in", "phone-ivr", "phone-off", "phone-out", "phone-split", "phone-transfer", "phone", "phonebook", "picture", "play-solid", "play", "plug-solid", "plug", "plus", "polaris-solid", "polaris", "presentation", "product", "project-plan", "project", "qr", "receipt", "reply-all", "reply", "reset", "robot-happy", "robot-sad", "robot", "roof-people", "row-delete", "row-insert", "row", "rule-library-solid", "rule-library", "rule", "scale-down", "scale-up", "script", "search-analytics-solid", "search-analytics", "search", "send", "server", "set", "share", "shield-solid", "shield", "shipment-box", "shop", "shuffle", "sigma", "slideshow", "snow", "speaker", "split", "stakeholders", "star-mixed", "star-solid", "star", "sub-step", "table-bolt-solid", "table-bolt", "table", "tag", "target-path", "team", "thumbs-down-solid", "thumbs-down", "thumbs-up-solid", "thumbs-up", "times", "todo", "toolbox-open", "toolbox-wrench", "transform", "trash", "tribox", "twitter", "two-disk-stacks", "type-cursor", "umbrella", "undock", "unindent", "user-check", "user-document", "user-information", "user-pencil", "user-solid", "user-star", "user-unavailable", "user", "variable", "voice", "wand", "warn-solid", "warn", "widget", "wifi", "youtube"];
2
2
  export default streamlineIconNames;
3
3
  export type StreamlineIconName = (typeof streamlineIconNames)[number];
4
4
  //# sourceMappingURL=streamlineIconNames.d.ts.map
@@ -1 +1 @@
1
- {"version":3,"file":"streamlineIconNames.d.ts","sourceRoot":"","sources":["../../../src/components/Icon/streamlineIconNames.ts"],"names":[],"mappings":"AAEA,QAAA,MAAM,mBAAmB,+jKAoWf,CAAC;AAEX,eAAe,mBAAmB,CAAC;AAEnC,MAAM,MAAM,kBAAkB,GAAG,CAAC,OAAO,mBAAmB,CAAC,CAAC,MAAM,CAAC,CAAC"}
1
+ {"version":3,"file":"streamlineIconNames.d.ts","sourceRoot":"","sources":["../../../src/components/Icon/streamlineIconNames.ts"],"names":[],"mappings":"AAEA,QAAA,MAAM,mBAAmB,+kKAqWf,CAAC;AAEX,eAAe,mBAAmB,CAAC;AAEnC,MAAM,MAAM,kBAAkB,GAAG,CAAC,OAAO,mBAAmB,CAAC,CAAC,MAAM,CAAC,CAAC"}
@@ -39,6 +39,7 @@ const streamlineIconNames = [
39
39
  'building-3',
40
40
  'bulb',
41
41
  'calendar-empty',
42
+ 'calendar-now',
42
43
  'calendar-range',
43
44
  'calendar',
44
45
  'car',
@@ -1 +1 @@
1
- {"version":3,"file":"streamlineIconNames.js","sourceRoot":"","sources":["../../../src/components/Icon/streamlineIconNames.ts"],"names":[],"mappings":"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","sourcesContent":["// This file is autogenerated. Any changes will be overwritten.\n\nconst streamlineIconNames = [\n 'ai-assist',\n 'alexa',\n 'align-center',\n 'align-left',\n 'align-right',\n 'amazon',\n 'api',\n 'app',\n 'arrow-above-row-right',\n 'arrow-bend-left',\n 'arrow-down',\n 'arrow-left-column',\n 'arrow-left',\n 'arrow-micro-down',\n 'arrow-micro-left',\n 'arrow-micro-right',\n 'arrow-micro-up',\n 'arrow-out',\n 'arrow-right-column',\n 'arrow-right',\n 'arrow-up-down',\n 'arrow-up',\n 'bank',\n 'bars',\n 'bell-push-notification',\n 'bell',\n 'bluetooth',\n 'book-open',\n 'bookmark',\n 'box-4',\n 'box',\n 'browser-code',\n 'browser',\n 'bug',\n 'building-2',\n 'building-3-solid',\n 'building-3',\n 'bulb',\n 'calendar-empty',\n 'calendar-range',\n 'calendar',\n 'car',\n 'caret-down',\n 'caret-left',\n 'caret-right',\n 'caret-up',\n 'case-medical',\n 'case-solid',\n 'case',\n 'chain',\n 'chart-line',\n 'chart-pie',\n 'chat-check',\n 'chat-exclamation-mark',\n 'chat-help',\n 'chat-quote',\n 'chat-transfer',\n 'chat-typing',\n 'chat-unavailable',\n 'chat',\n 'chats',\n 'check-badge',\n 'check',\n 'chevron-solid',\n 'chevron',\n 'circle-mixed-left',\n 'circle',\n 'clipboard-check',\n 'clipboard-medical',\n 'clipboard-pencil-solid',\n 'clipboard-pencil',\n 'clipboard-plus',\n 'clipboard',\n 'clock-solid',\n 'clock',\n 'cloud',\n 'code-search',\n 'code',\n 'column-delete',\n 'conversation',\n 'copy',\n 'credit',\n 'csr-agent',\n 'currency',\n 'custom-column',\n 'database-search',\n 'dataviz-area-multi',\n 'dataviz-area-stacked',\n 'dataviz-area',\n 'dataviz-bar-clustered',\n 'dataviz-bar-stacked',\n 'dataviz-bar',\n 'dataviz-bell-curve',\n 'dataviz-bubble',\n 'dataviz-column-clustered',\n 'dataviz-column-stacked',\n 'dataviz-column',\n 'dataviz-combo',\n 'dataviz-datetime-field',\n 'dataviz-donut',\n 'dataviz-flip-counter',\n 'dataviz-forecast',\n 'dataviz-funnel',\n 'dataviz-gauge-linear',\n 'dataviz-gauge-progress',\n 'dataviz-gauge',\n 'dataviz-geo-choropleth',\n 'dataviz-heatmap',\n 'dataviz-histogram',\n 'dataviz-line-horizontal',\n 'dataviz-line-multi',\n 'dataviz-line-stepped',\n 'dataviz-line',\n 'dataviz-numeric-field',\n 'dataviz-pareto',\n 'dataviz-pie',\n 'dataviz-pivot-table',\n 'dataviz-radar',\n 'dataviz-scatter',\n 'dataviz-spark',\n 'dataviz-sparklines-area',\n 'dataviz-sparklines-columns',\n 'dataviz-sparklines-line',\n 'dataviz-sparklines-pies',\n 'dataviz-spline',\n 'dataviz-string-field',\n 'dataviz-table-with-bars',\n 'dataviz-trend-down',\n 'dataviz-trend-up',\n 'dataviz-waterfall',\n 'desktop',\n 'diamond',\n 'disc-stack-solid',\n 'disc-stack',\n 'dock',\n 'doctor-female',\n 'doctor-male',\n 'document-pdf',\n 'document',\n 'docusign',\n 'dot-9-solid',\n 'download',\n 'drag',\n 'email-open',\n 'exchange',\n 'expression',\n 'eye-off',\n 'face-blank',\n 'face-happy',\n 'face-sad',\n 'facebook',\n 'farming-wheat',\n 'fast-forward',\n 'field-cursor',\n 'filetype-text',\n 'filter',\n 'fingerprint-search',\n 'flag-check',\n 'flag-finish',\n 'flag-wave-solid',\n 'flag-wave',\n 'flashlight',\n 'flow-process',\n 'folder-closed',\n 'folder-empty',\n 'folder-hierarchy',\n 'folder-nested',\n 'folder-search',\n 'folder',\n 'folders',\n 'forward-all',\n 'forward',\n 'function',\n 'gear-play',\n 'gear-solid',\n 'gear',\n 'globe',\n 'google',\n 'government',\n 'graduate',\n 'hand-book-open',\n 'hand-over-paper',\n 'hand',\n 'handshake',\n 'header',\n 'headset',\n 'home-solid',\n 'home',\n 'house-bed',\n 'house-person',\n 'indent',\n 'infinity',\n 'information-solid',\n 'information',\n 'ios-face-id',\n 'ios-finger-id',\n 'layers',\n 'letter',\n 'linkedin',\n 'list-number',\n 'list',\n 'location-solid',\n 'location',\n 'mail-warning',\n 'mail',\n 'megaphone',\n 'merge',\n 'messages-to-chat',\n 'mic-off',\n 'mic',\n 'micro-arrow-down',\n 'micro-arrow-left',\n 'micro-arrow-right',\n 'micro-arrow-up',\n 'minus',\n 'mobile-phone',\n 'module',\n 'money-atm',\n 'money',\n 'monitor-lock',\n 'more',\n 'mountain-top',\n 'multi-device',\n 'navigation',\n 'newspaper-fold',\n 'newspaper',\n 'nodes-down',\n 'note-pin',\n 'notepad',\n 'number-decimal',\n 'offer-list',\n 'offer-table',\n 'offer',\n 'open-new-tab',\n 'open',\n 'opportunity-refresh',\n 'opportunity',\n 'os-apple',\n 'paper-clip',\n 'paper-search',\n 'password-lock',\n 'pause',\n 'paypal',\n 'pega',\n 'pegasus',\n 'pencil',\n 'people-group-stakeholders',\n 'percentage',\n 'person-connection',\n 'person-hierarchy-check',\n 'person-stars',\n 'person',\n 'persons-group',\n 'phone-call',\n 'phone-dial',\n 'phone-hangup',\n 'phone-in',\n 'phone-ivr',\n 'phone-off',\n 'phone-out',\n 'phone-split',\n 'phone-transfer',\n 'phone',\n 'phonebook',\n 'picture',\n 'play-solid',\n 'play',\n 'plug-solid',\n 'plug',\n 'plus',\n 'polaris-solid',\n 'polaris',\n 'presentation',\n 'product',\n 'project-plan',\n 'project',\n 'qr',\n 'receipt',\n 'reply-all',\n 'reply',\n 'reset',\n 'robot-happy',\n 'robot-sad',\n 'robot',\n 'roof-people',\n 'row-delete',\n 'row-insert',\n 'row',\n 'rule-library-solid',\n 'rule-library',\n 'rule',\n 'scale-down',\n 'scale-up',\n 'script',\n 'search-analytics-solid',\n 'search-analytics',\n 'search',\n 'send',\n 'server',\n 'set',\n 'share',\n 'shield-solid',\n 'shield',\n 'shipment-box',\n 'shop',\n 'shuffle',\n 'sigma',\n 'slideshow',\n 'snow',\n 'speaker',\n 'split',\n 'stakeholders',\n 'star-mixed',\n 'star-solid',\n 'star',\n 'sub-step',\n 'table-bolt-solid',\n 'table-bolt',\n 'table',\n 'tag',\n 'target-path',\n 'team',\n 'thumbs-down-solid',\n 'thumbs-down',\n 'thumbs-up-solid',\n 'thumbs-up',\n 'times',\n 'todo',\n 'toolbox-open',\n 'toolbox-wrench',\n 'transform',\n 'trash',\n 'tribox',\n 'twitter',\n 'two-disk-stacks',\n 'type-cursor',\n 'umbrella',\n 'undock',\n 'unindent',\n 'user-check',\n 'user-document',\n 'user-information',\n 'user-pencil',\n 'user-solid',\n 'user-star',\n 'user-unavailable',\n 'user',\n 'variable',\n 'voice',\n 'wand',\n 'warn-solid',\n 'warn',\n 'widget',\n 'wifi',\n 'youtube'\n] as const;\n\nexport default streamlineIconNames;\n\nexport type StreamlineIconName = (typeof streamlineIconNames)[number];\n"]}
1
+ {"version":3,"file":"streamlineIconNames.js","sourceRoot":"","sources":["../../../src/components/Icon/streamlineIconNames.ts"],"names":[],"mappings":"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","sourcesContent":["// This file is autogenerated. Any changes will be overwritten.\n\nconst streamlineIconNames = [\n 'ai-assist',\n 'alexa',\n 'align-center',\n 'align-left',\n 'align-right',\n 'amazon',\n 'api',\n 'app',\n 'arrow-above-row-right',\n 'arrow-bend-left',\n 'arrow-down',\n 'arrow-left-column',\n 'arrow-left',\n 'arrow-micro-down',\n 'arrow-micro-left',\n 'arrow-micro-right',\n 'arrow-micro-up',\n 'arrow-out',\n 'arrow-right-column',\n 'arrow-right',\n 'arrow-up-down',\n 'arrow-up',\n 'bank',\n 'bars',\n 'bell-push-notification',\n 'bell',\n 'bluetooth',\n 'book-open',\n 'bookmark',\n 'box-4',\n 'box',\n 'browser-code',\n 'browser',\n 'bug',\n 'building-2',\n 'building-3-solid',\n 'building-3',\n 'bulb',\n 'calendar-empty',\n 'calendar-now',\n 'calendar-range',\n 'calendar',\n 'car',\n 'caret-down',\n 'caret-left',\n 'caret-right',\n 'caret-up',\n 'case-medical',\n 'case-solid',\n 'case',\n 'chain',\n 'chart-line',\n 'chart-pie',\n 'chat-check',\n 'chat-exclamation-mark',\n 'chat-help',\n 'chat-quote',\n 'chat-transfer',\n 'chat-typing',\n 'chat-unavailable',\n 'chat',\n 'chats',\n 'check-badge',\n 'check',\n 'chevron-solid',\n 'chevron',\n 'circle-mixed-left',\n 'circle',\n 'clipboard-check',\n 'clipboard-medical',\n 'clipboard-pencil-solid',\n 'clipboard-pencil',\n 'clipboard-plus',\n 'clipboard',\n 'clock-solid',\n 'clock',\n 'cloud',\n 'code-search',\n 'code',\n 'column-delete',\n 'conversation',\n 'copy',\n 'credit',\n 'csr-agent',\n 'currency',\n 'custom-column',\n 'database-search',\n 'dataviz-area-multi',\n 'dataviz-area-stacked',\n 'dataviz-area',\n 'dataviz-bar-clustered',\n 'dataviz-bar-stacked',\n 'dataviz-bar',\n 'dataviz-bell-curve',\n 'dataviz-bubble',\n 'dataviz-column-clustered',\n 'dataviz-column-stacked',\n 'dataviz-column',\n 'dataviz-combo',\n 'dataviz-datetime-field',\n 'dataviz-donut',\n 'dataviz-flip-counter',\n 'dataviz-forecast',\n 'dataviz-funnel',\n 'dataviz-gauge-linear',\n 'dataviz-gauge-progress',\n 'dataviz-gauge',\n 'dataviz-geo-choropleth',\n 'dataviz-heatmap',\n 'dataviz-histogram',\n 'dataviz-line-horizontal',\n 'dataviz-line-multi',\n 'dataviz-line-stepped',\n 'dataviz-line',\n 'dataviz-numeric-field',\n 'dataviz-pareto',\n 'dataviz-pie',\n 'dataviz-pivot-table',\n 'dataviz-radar',\n 'dataviz-scatter',\n 'dataviz-spark',\n 'dataviz-sparklines-area',\n 'dataviz-sparklines-columns',\n 'dataviz-sparklines-line',\n 'dataviz-sparklines-pies',\n 'dataviz-spline',\n 'dataviz-string-field',\n 'dataviz-table-with-bars',\n 'dataviz-trend-down',\n 'dataviz-trend-up',\n 'dataviz-waterfall',\n 'desktop',\n 'diamond',\n 'disc-stack-solid',\n 'disc-stack',\n 'dock',\n 'doctor-female',\n 'doctor-male',\n 'document-pdf',\n 'document',\n 'docusign',\n 'dot-9-solid',\n 'download',\n 'drag',\n 'email-open',\n 'exchange',\n 'expression',\n 'eye-off',\n 'face-blank',\n 'face-happy',\n 'face-sad',\n 'facebook',\n 'farming-wheat',\n 'fast-forward',\n 'field-cursor',\n 'filetype-text',\n 'filter',\n 'fingerprint-search',\n 'flag-check',\n 'flag-finish',\n 'flag-wave-solid',\n 'flag-wave',\n 'flashlight',\n 'flow-process',\n 'folder-closed',\n 'folder-empty',\n 'folder-hierarchy',\n 'folder-nested',\n 'folder-search',\n 'folder',\n 'folders',\n 'forward-all',\n 'forward',\n 'function',\n 'gear-play',\n 'gear-solid',\n 'gear',\n 'globe',\n 'google',\n 'government',\n 'graduate',\n 'hand-book-open',\n 'hand-over-paper',\n 'hand',\n 'handshake',\n 'header',\n 'headset',\n 'home-solid',\n 'home',\n 'house-bed',\n 'house-person',\n 'indent',\n 'infinity',\n 'information-solid',\n 'information',\n 'ios-face-id',\n 'ios-finger-id',\n 'layers',\n 'letter',\n 'linkedin',\n 'list-number',\n 'list',\n 'location-solid',\n 'location',\n 'mail-warning',\n 'mail',\n 'megaphone',\n 'merge',\n 'messages-to-chat',\n 'mic-off',\n 'mic',\n 'micro-arrow-down',\n 'micro-arrow-left',\n 'micro-arrow-right',\n 'micro-arrow-up',\n 'minus',\n 'mobile-phone',\n 'module',\n 'money-atm',\n 'money',\n 'monitor-lock',\n 'more',\n 'mountain-top',\n 'multi-device',\n 'navigation',\n 'newspaper-fold',\n 'newspaper',\n 'nodes-down',\n 'note-pin',\n 'notepad',\n 'number-decimal',\n 'offer-list',\n 'offer-table',\n 'offer',\n 'open-new-tab',\n 'open',\n 'opportunity-refresh',\n 'opportunity',\n 'os-apple',\n 'paper-clip',\n 'paper-search',\n 'password-lock',\n 'pause',\n 'paypal',\n 'pega',\n 'pegasus',\n 'pencil',\n 'people-group-stakeholders',\n 'percentage',\n 'person-connection',\n 'person-hierarchy-check',\n 'person-stars',\n 'person',\n 'persons-group',\n 'phone-call',\n 'phone-dial',\n 'phone-hangup',\n 'phone-in',\n 'phone-ivr',\n 'phone-off',\n 'phone-out',\n 'phone-split',\n 'phone-transfer',\n 'phone',\n 'phonebook',\n 'picture',\n 'play-solid',\n 'play',\n 'plug-solid',\n 'plug',\n 'plus',\n 'polaris-solid',\n 'polaris',\n 'presentation',\n 'product',\n 'project-plan',\n 'project',\n 'qr',\n 'receipt',\n 'reply-all',\n 'reply',\n 'reset',\n 'robot-happy',\n 'robot-sad',\n 'robot',\n 'roof-people',\n 'row-delete',\n 'row-insert',\n 'row',\n 'rule-library-solid',\n 'rule-library',\n 'rule',\n 'scale-down',\n 'scale-up',\n 'script',\n 'search-analytics-solid',\n 'search-analytics',\n 'search',\n 'send',\n 'server',\n 'set',\n 'share',\n 'shield-solid',\n 'shield',\n 'shipment-box',\n 'shop',\n 'shuffle',\n 'sigma',\n 'slideshow',\n 'snow',\n 'speaker',\n 'split',\n 'stakeholders',\n 'star-mixed',\n 'star-solid',\n 'star',\n 'sub-step',\n 'table-bolt-solid',\n 'table-bolt',\n 'table',\n 'tag',\n 'target-path',\n 'team',\n 'thumbs-down-solid',\n 'thumbs-down',\n 'thumbs-up-solid',\n 'thumbs-up',\n 'times',\n 'todo',\n 'toolbox-open',\n 'toolbox-wrench',\n 'transform',\n 'trash',\n 'tribox',\n 'twitter',\n 'two-disk-stacks',\n 'type-cursor',\n 'umbrella',\n 'undock',\n 'unindent',\n 'user-check',\n 'user-document',\n 'user-information',\n 'user-pencil',\n 'user-solid',\n 'user-star',\n 'user-unavailable',\n 'user',\n 'variable',\n 'voice',\n 'wand',\n 'warn-solid',\n 'warn',\n 'widget',\n 'wifi',\n 'youtube'\n] as const;\n\nexport default streamlineIconNames;\n\nexport type StreamlineIconName = (typeof streamlineIconNames)[number];\n"]}
@@ -1,5 +1,7 @@
1
1
  export declare const StyledSkipNavigation: import("styled-components").StyledComponent<import("react").FunctionComponent<import("../Button").ButtonProps & import("../..").ForwardProps>, import("styled-components").DefaultTheme, {}, never>;
2
- export declare const StyledNavItem: import("styled-components").StyledComponent<import("react").FunctionComponent<import("../Button/BareButton").BareButtonProps & import("../..").ForwardProps>, import("styled-components").DefaultTheme, import("../Tabs/Tab").StyledTabProps, never>;
2
+ export declare const StyledNavItem: import("styled-components").StyledComponent<import("react").FunctionComponent<import("../Button/BareButton").BareButtonProps & import("../..").ForwardProps>, import("styled-components").DefaultTheme, import("../Tabs/Tab").StyledTabProps & {
3
+ level?: number | undefined;
4
+ }, never>;
3
5
  export declare const StyledNavGroupHeader: import("styled-components").StyledComponent<import("react").FunctionComponent<import("../Text").TextProps & import("../..").ForwardProps>, import("styled-components").DefaultTheme, {}, never>;
4
6
  export declare const StyledNavGroupList: import("styled-components").StyledComponent<"ul", import("styled-components").DefaultTheme, {}, never>;
5
7
  export declare const StyledNavGroup: import("styled-components").StyledComponent<"div", import("styled-components").DefaultTheme, {}, never>;
@@ -1 +1 @@
1
- {"version":3,"file":"CategorySubPage.styles.d.ts","sourceRoot":"","sources":["../../../src/components/PageTemplates/CategorySubPage.styles.ts"],"names":[],"mappings":"AAUA,eAAO,MAAM,oBAAoB,qMAoB/B,CAAC;AAEH,eAAO,MAAM,aAAa,sPAgExB,CAAC;AAGH,eAAO,MAAM,oBAAoB,iMAa/B,CAAC;AAGH,eAAO,MAAM,kBAAkB,wGAAc,CAAC;AAE9C,eAAO,MAAM,cAAc,yGAazB,CAAC;AAGH,eAAO,MAAM,aAAa,wGAwBxB,CAAC;AAEH,eAAO,MAAM,SAAS,yGAAe,CAAC;AAEtC,eAAO,MAAM,uBAAuB,yGAsBlC,CAAC;AAGH,eAAO,MAAM,wBAAwB,yGAmBnC,CAAC;AAGH,eAAO,MAAM,gBAAgB,yGAuC3B,CAAC;AAGH,eAAO,MAAM,eAAe,wGAe1B,CAAC;AAGH,eAAO,MAAM,mBAAmB,yGAAe,CAAC;AAEhD,eAAO,MAAM,mBAAmB,4GAe9B,CAAC;AAGH,eAAO,MAAM,iBAAiB,6GA0B5B,CAAC;AAGH,eAAO,MAAM,iBAAiB,yGAe5B,CAAC;AAGH,eAAO,MAAM,cAAc,yGAG1B,CAAC"}
1
+ {"version":3,"file":"CategorySubPage.styles.d.ts","sourceRoot":"","sources":["../../../src/components/PageTemplates/CategorySubPage.styles.ts"],"names":[],"mappings":"AAUA,eAAO,MAAM,oBAAoB,qMAoB/B,CAAC;AAEH,eAAO,MAAM,aAAa;;SAgExB,CAAC;AAGH,eAAO,MAAM,oBAAoB,iMAa/B,CAAC;AAGH,eAAO,MAAM,kBAAkB,wGAAc,CAAC;AAE9C,eAAO,MAAM,cAAc,yGAazB,CAAC;AAGH,eAAO,MAAM,aAAa,wGAwBxB,CAAC;AAEH,eAAO,MAAM,SAAS,yGAAe,CAAC;AAEtC,eAAO,MAAM,uBAAuB,yGAsBlC,CAAC;AAGH,eAAO,MAAM,wBAAwB,yGAmBnC,CAAC;AAGH,eAAO,MAAM,gBAAgB,yGAuC3B,CAAC;AAGH,eAAO,MAAM,eAAe,wGAe1B,CAAC;AAGH,eAAO,MAAM,mBAAmB,yGAAe,CAAC;AAEhD,eAAO,MAAM,mBAAmB,4GAe9B,CAAC;AAGH,eAAO,MAAM,iBAAiB,6GA0B5B,CAAC;AAGH,eAAO,MAAM,iBAAiB,yGAe5B,CAAC;AAGH,eAAO,MAAM,cAAc,yGAG1B,CAAC"}
@@ -21,7 +21,9 @@ export interface StyledTabProps {
21
21
  selected: TabProps['selected'];
22
22
  tabType: TabProps['type'];
23
23
  }
24
- export declare const StyledTab: import("styled-components").StyledComponent<import("react").FunctionComponent<import("../Button/BareButton").BareButtonProps & ForwardProps>, import("styled-components").DefaultTheme, StyledTabProps, never>;
24
+ export declare const StyledTab: import("styled-components").StyledComponent<import("react").FunctionComponent<import("../Button/BareButton").BareButtonProps & ForwardProps>, import("styled-components").DefaultTheme, StyledTabProps & {
25
+ level?: number | undefined;
26
+ }, never>;
25
27
  declare const Tab: FC<TabProps & ForwardProps>;
26
28
  export default Tab;
27
29
  //# sourceMappingURL=Tab.d.ts.map
@@ -1 +1 @@
1
- {"version":3,"file":"Tab.d.ts","sourceRoot":"","sources":["../../../src/components/Tabs/Tab.tsx"],"names":[],"mappings":"AACA,OAAO,KAAK,EAAE,EAAE,EAAE,SAAS,EAAmB,GAAG,EAAE,MAAM,OAAO,CAAC;AAYjE,OAAO,KAAK,EAAE,YAAY,EAAE,MAAM,aAAa,CAAC;AAGhD,OAAO,KAAK,EAAE,SAAS,EAAE,MAAM,cAAc,CAAC;AAK9C,MAAM,WAAW,QAAQ;IACvB,uCAAuC;IACvC,QAAQ,EAAE,OAAO,CAAC;IAClB,kDAAkD;IAClD,OAAO,EAAE,MAAM,CAAC;IAChB,0CAA0C;IAC1C,KAAK,CAAC,EAAE,SAAS,CAAC;IAClB,6DAA6D;IAC7D,IAAI,EAAE,SAAS,CAAC,MAAM,CAAC,CAAC;IACxB,+BAA+B;IAC/B,QAAQ,CAAC,EAAE,OAAO,CAAC;IACnB,0CAA0C;IAC1C,MAAM,CAAC,EAAE,MAAM,GAAG,OAAO,CAAC;IAC1B,8BAA8B;IAC9B,GAAG,CAAC,EAAE,GAAG,CAAC,iBAAiB,GAAG,iBAAiB,CAAC,CAAC;CAClD;AAED,MAAM,WAAW,cAAc;IAC7B,QAAQ,EAAE,QAAQ,CAAC,UAAU,CAAC,CAAC;IAC/B,OAAO,EAAE,QAAQ,CAAC,MAAM,CAAC,CAAC;CAC3B;AAgID,eAAO,MAAM,SAAS,gNAiCrB,CAAC;AAIF,QAAA,MAAM,GAAG,EAAE,EAAE,CAAC,QAAQ,GAAG,YAAY,CAwBnC,CAAC;AAEH,eAAe,GAAG,CAAC"}
1
+ {"version":3,"file":"Tab.d.ts","sourceRoot":"","sources":["../../../src/components/Tabs/Tab.tsx"],"names":[],"mappings":"AACA,OAAO,KAAK,EAAE,EAAE,EAAE,SAAS,EAAmB,GAAG,EAAE,MAAM,OAAO,CAAC;AAajE,OAAO,KAAK,EAAE,YAAY,EAAE,MAAM,aAAa,CAAC;AAKhD,OAAO,KAAK,EAAE,SAAS,EAAE,MAAM,cAAc,CAAC;AAK9C,MAAM,WAAW,QAAQ;IACvB,uCAAuC;IACvC,QAAQ,EAAE,OAAO,CAAC;IAClB,kDAAkD;IAClD,OAAO,EAAE,MAAM,CAAC;IAChB,0CAA0C;IAC1C,KAAK,CAAC,EAAE,SAAS,CAAC;IAClB,6DAA6D;IAC7D,IAAI,EAAE,SAAS,CAAC,MAAM,CAAC,CAAC;IACxB,+BAA+B;IAC/B,QAAQ,CAAC,EAAE,OAAO,CAAC;IACnB,0CAA0C;IAC1C,MAAM,CAAC,EAAE,MAAM,GAAG,OAAO,CAAC;IAC1B,8BAA8B;IAC9B,GAAG,CAAC,EAAE,GAAG,CAAC,iBAAiB,GAAG,iBAAiB,CAAC,CAAC;CAClD;AAED,MAAM,WAAW,cAAc;IAC7B,QAAQ,EAAE,QAAQ,CAAC,UAAU,CAAC,CAAC;IAC/B,OAAO,EAAE,QAAQ,CAAC,MAAM,CAAC,CAAC;CAC3B;AAkMD,eAAO,MAAM,SAAS;;SAqCrB,CAAC;AAIF,QAAA,MAAM,GAAG,EAAE,EAAE,CAAC,QAAQ,GAAG,YAAY,CAgCnC,CAAC;AAEH,eAAe,GAAG,CAAC"}
@@ -1,7 +1,8 @@
1
1
  import { jsx as _jsx, Fragment as _Fragment, jsxs as _jsxs } from "react/jsx-runtime";
2
- import { forwardRef } from 'react';
2
+ import { forwardRef, useContext } from 'react';
3
3
  import styled, { css } from 'styled-components';
4
- import { transparentize } from 'polished';
4
+ import { meetsContrastGuidelines, mix, transparentize } from 'polished';
5
+ import { readableHue } from '../../styles';
5
6
  import * as warnSolidIcon from '../Icon/icons/warn-solid.icon';
6
7
  import { registerIcon } from '../Icon';
7
8
  import { useConsolidatedRef, useElement, useI18n } from '../../hooks';
@@ -10,6 +11,7 @@ import { defaultThemeProp } from '../../theme';
10
11
  import { tryCatch } from '../../utils';
11
12
  import { StyledCount } from '../Badges/Count';
12
13
  import BareButton from '../Button/BareButton';
14
+ import TabsContext from './TabsContext';
13
15
  import { StyledErrorIcon } from './Tabs.styles';
14
16
  registerIcon(warnSolidIcon);
15
17
  const activeStyle = (color) => css `
@@ -18,21 +20,49 @@ const activeStyle = (color) => css `
18
20
  background-color: ${color};
19
21
  }
20
22
  `;
21
- const getHorizontalStyles = ({ selected, theme }) => {
22
- const primaryColor = theme.base.palette.interactive;
23
- const lightenedColor = tryCatch(() => transparentize(0.3, primaryColor)) ?? '';
23
+ const getHorizontalUnselectedHoverStyle = ({ level, opacity, color }) => level && level > 1
24
+ ? css `
25
+ ::before {
26
+ content: '';
27
+ position: absolute;
28
+ top: 0;
29
+ bottom: 0;
30
+ left: 0;
31
+ right: 0;
32
+ border-radius: inherit;
33
+ background-color: currentColor;
34
+ opacity: ${opacity};
35
+ }
36
+ `
37
+ : css `
38
+ background-color: ${color};
39
+ border-start-start-radius: calc(0.5rem * 0.5);
40
+ border-start-end-radius: calc(0.5rem * 0.5);
41
+ `;
42
+ const getHorizontalStyles = ({ selected, level, theme }) => {
43
+ const color = theme.components.button.color;
44
+ const secondaryColor = theme.components.button['secondary-color'];
45
+ const lightenedColor = tryCatch(() => transparentize(0.3, color)) ?? '';
46
+ const backgroundUsable = meetsContrastGuidelines(color, secondaryColor).AA;
47
+ const usableColor = backgroundUsable ? color : readableHue(color, secondaryColor);
48
+ const hoverBackgroundColor = tryCatch(() => mix(0.9, secondaryColor, usableColor));
49
+ const activeBackgroundColor = tryCatch(() => mix(0.8, secondaryColor, usableColor));
24
50
  const { spacing } = theme.base;
25
51
  return css `
26
52
  align-items: center;
27
53
  display: flex;
28
54
  flex-direction: row;
29
55
  height: calc(4 * ${spacing});
30
- padding: 0 calc(2 * ${spacing});
56
+ padding: 0 calc(1.5 * ${spacing});
31
57
  border: none;
32
58
  text-decoration: none;
33
59
 
60
+ @media (pointer: coarse) {
61
+ height: ${theme.base['hit-area']['finger-min']};
62
+ }
63
+
34
64
  span:first-of-type {
35
- color: ${selected ? primaryColor : theme.base.palette['foreground-color']};
65
+ color: ${selected ? color : theme.base.palette['foreground-color']};
36
66
  display: inline-block;
37
67
 
38
68
  ::before {
@@ -50,26 +80,54 @@ const getHorizontalStyles = ({ selected, theme }) => {
50
80
  }
51
81
 
52
82
  ::after {
53
- background: ${selected ? primaryColor : lightenedColor};
83
+ background: ${selected ? color : lightenedColor};
54
84
  display: ${selected ? 'block' : 'none'};
55
85
  content: '';
56
86
  position: absolute;
57
87
  height: 0.125rem;
58
88
  bottom: 0;
59
- left: 0;
60
- right: 0;
89
+ left: calc(1.5 * ${spacing});
90
+ right: calc(1.5 * ${spacing});
61
91
  }
62
92
 
63
- &:hover&:not(:disabled) {
64
- ${activeStyle(lightenedColor)}
65
- text-decoration: none;
66
- }
93
+ ${!selected
94
+ ? css `
95
+ @media (hover: hover) {
96
+ &:not(:disabled):hover {
97
+ text-decoration: none;
98
+ ${getHorizontalUnselectedHoverStyle({
99
+ level,
100
+ opacity: 0.1,
101
+ color: hoverBackgroundColor
102
+ })}
103
+ }
104
+
105
+ &:not(:disabled):active {
106
+ text-decoration: none;
107
+ ${getHorizontalUnselectedHoverStyle({
108
+ level,
109
+ opacity: 0.2,
110
+ color: activeBackgroundColor
111
+ })}
112
+ }
113
+ }
114
+ `
115
+ : css `
116
+ ${level &&
117
+ level > 1 &&
118
+ css `
119
+ background-color: ${theme.base.palette['primary-background']};
120
+ `}
121
+ `}
67
122
 
68
123
  &:focus,
69
124
  &:not([disabled]):focus {
70
- ${activeStyle(lightenedColor)}
125
+ border-radius: calc(0.5rem * 0.5);
71
126
  box-shadow: ${theme.base.shadow['focus-inset']};
72
127
  text-decoration: none;
128
+ ::after {
129
+ display: none;
130
+ }
73
131
  }
74
132
 
75
133
  @media (pointer: coarse) {
@@ -127,7 +185,7 @@ const getVerticalStyles = ({ selected, theme }) => {
127
185
  }
128
186
  `;
129
187
  };
130
- export const StyledTab = styled(BareButton)(({ theme, tabType, selected }) => css `
188
+ export const StyledTab = styled(BareButton)(({ theme, tabType, selected, level }) => css `
131
189
  position: relative;
132
190
  background: none;
133
191
  cursor: pointer;
@@ -152,7 +210,7 @@ export const StyledTab = styled(BareButton)(({ theme, tabType, selected }) => cs
152
210
  }
153
211
 
154
212
  ${tabType === 'horizontal'
155
- ? getHorizontalStyles({ theme, selected })
213
+ ? getHorizontalStyles({ theme, selected, level })
156
214
  : getVerticalStyles({ theme, selected })}
157
215
 
158
216
  ${StyledErrorIcon} {
@@ -164,7 +222,8 @@ const Tab = forwardRef(function Tab({ selected, content, count, type, disabled,
164
222
  const t = useI18n();
165
223
  const [tabEl, setTabEl] = useElement();
166
224
  const tabRef = useConsolidatedRef(ref, setTabEl);
167
- return (_jsxs(StyledTab, { ref: tabRef, selected: selected, tabType: type, disabled: disabled, ...restProps, children: [_jsxs("span", { children: [!!errors && (_jsxs(_Fragment, { children: [_jsx(StyledErrorIcon, { name: 'warn-solid' }), _jsx(Tooltip, { target: tabEl, hideDelay: 'none', showDelay: 'none', children: t('tab_error_tooltip', [content]) })] })), _jsx("span", { "data-content": content, children: content })] }), count] }));
225
+ const { level } = useContext(TabsContext);
226
+ return (_jsxs(StyledTab, { ref: tabRef, selected: selected, tabType: type, disabled: disabled, level: level, ...restProps, children: [_jsxs("span", { children: [!!errors && (_jsxs(_Fragment, { children: [_jsx(StyledErrorIcon, { name: 'warn-solid' }), _jsx(Tooltip, { target: tabEl, hideDelay: 'none', showDelay: 'none', children: t('tab_error_tooltip', [content]) })] })), _jsx("span", { "data-content": content, children: content })] }), count] }));
168
227
  });
169
228
  export default Tab;
170
229
  //# sourceMappingURL=Tab.js.map
@@ -1 +1 @@
1
- {"version":3,"file":"Tab.js","sourceRoot":"","sources":["../../../src/components/Tabs/Tab.tsx"],"names":[],"mappings":"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","sourcesContent":["import { forwardRef } from 'react';\nimport type { FC, ReactNode, PropsWithoutRef, Ref } from 'react';\nimport styled, { css } from 'styled-components';\nimport type { StyledProps } from 'styled-components';\nimport { transparentize } from 'polished';\n\nimport * as warnSolidIcon from '../Icon/icons/warn-solid.icon';\nimport { registerIcon } from '../Icon';\nimport { useConsolidatedRef, useElement, useI18n } from '../../hooks';\nimport Tooltip from '../Tooltip';\nimport { defaultThemeProp } from '../../theme';\nimport { tryCatch } from '../../utils';\nimport { StyledCount } from '../Badges/Count';\nimport type { ForwardProps } from '../../types';\nimport BareButton from '../Button/BareButton';\n\nimport type { TabsProps } from './Tabs.types';\nimport { StyledErrorIcon } from './Tabs.styles';\n\nregisterIcon(warnSolidIcon);\n\nexport interface TabProps {\n /** Indicates if this Tab is active. */\n selected: boolean;\n /** The text to display as the name of the Tab. */\n content: string;\n /** A number to associate with the Tab. */\n count?: ReactNode;\n /** Determines the direction in which the Tab will render. */\n type: TabsProps['type'];\n /** Disables the tab if true */\n disabled?: boolean;\n /** An error to associate with the Tab. */\n errors?: number | boolean;\n /** Ref to the tab element. */\n ref?: Ref<HTMLButtonElement | HTMLAnchorElement>;\n}\n\nexport interface StyledTabProps {\n selected: TabProps['selected'];\n tabType: TabProps['type'];\n}\n\nconst activeStyle = (color: string) => css`\n ::after {\n display: block;\n background-color: ${color};\n }\n`;\n\nconst getHorizontalStyles = ({\n selected,\n theme\n}: Pick<StyledProps<StyledTabProps>, 'theme' | 'selected'>) => {\n const primaryColor = theme.base.palette.interactive;\n const lightenedColor = tryCatch(() => transparentize(0.3, primaryColor)) ?? '';\n const { spacing } = theme.base;\n\n return css`\n align-items: center;\n display: flex;\n flex-direction: row;\n height: calc(4 * ${spacing});\n padding: 0 calc(2 * ${spacing});\n border: none;\n text-decoration: none;\n\n span:first-of-type {\n color: ${selected ? primaryColor : theme.base.palette['foreground-color']};\n display: inline-block;\n\n ::before {\n content: attr(data-content);\n display: block;\n font-weight: bold;\n height: 0;\n overflow: hidden;\n visibility: hidden;\n }\n }\n\n &:first-child {\n margin-left: 0;\n }\n\n ::after {\n background: ${selected ? primaryColor : lightenedColor};\n display: ${selected ? 'block' : 'none'};\n content: '';\n position: absolute;\n height: 0.125rem;\n bottom: 0;\n left: 0;\n right: 0;\n }\n\n &:hover&:not(:disabled) {\n ${activeStyle(lightenedColor)}\n text-decoration: none;\n }\n\n &:focus,\n &:not([disabled]):focus {\n ${activeStyle(lightenedColor)}\n box-shadow: ${theme.base.shadow['focus-inset']};\n text-decoration: none;\n }\n\n @media (pointer: coarse) {\n min-block-size: ${theme.base['hit-area'].finger};\n }\n\n ${StyledCount} {\n margin-inline-start: calc(0.5 * ${spacing});\n }\n `;\n};\n\nconst getVerticalStyles = ({\n selected,\n theme\n}: Pick<StyledProps<StyledTabProps>, 'theme' | 'selected'>) => {\n const borderColor = theme.base.palette['border-line'];\n const primaryColor = theme.base.palette.interactive;\n const lightenedColor = tryCatch(() => transparentize(0.5, primaryColor)) ?? '';\n const { spacing } = theme.base;\n\n return css`\n display: flex;\n justify-content: space-between;\n align-items: center;\n border-style: solid;\n color: ${theme.base.palette['foreground-color']};\n border-width: 0.0625rem 0;\n border-color: ${borderColor};\n height: calc(5.5 * ${spacing});\n margin-top: -0.0625rem;\n padding: 0 calc(2 * ${spacing});\n text-decoration: none;\n\n &:first-child {\n border-top: 0.0625rem solid ${borderColor};\n }\n\n ::after {\n content: '';\n position: absolute;\n display: ${selected ? 'block' : 'none'};\n top: 0;\n bottom: 0;\n right: 0;\n width: 0.25rem;\n background: ${primaryColor};\n }\n\n &:hover&:not(:disabled) {\n ${activeStyle(lightenedColor)}\n text-decoration: none;\n }\n\n &:focus,\n &:not([disabled]):focus {\n ${activeStyle(primaryColor)}\n box-shadow: inset 0 0 0 0.0625rem ${primaryColor};\n text-decoration: none;\n }\n `;\n};\n\nexport const StyledTab = styled(BareButton)<StyledTabProps>(\n ({ theme, tabType, selected }) => css`\n position: relative;\n background: none;\n cursor: pointer;\n white-space: nowrap;\n\n ${selected &&\n css`\n font-weight: bold;\n `}\n\n & + & {\n margin-inline-start: 0;\n }\n\n &:focus {\n outline: none;\n }\n\n &:disabled {\n cursor: not-allowed;\n opacity: ${theme.base['disabled-opacity']};\n }\n\n ${tabType === 'horizontal'\n ? getHorizontalStyles({ theme, selected })\n : getVerticalStyles({ theme, selected })}\n\n ${StyledErrorIcon} {\n margin-inline-end: calc(0.5 * ${theme.base.spacing});\n }\n `\n);\n\nStyledTab.defaultProps = defaultThemeProp;\n\nconst Tab: FC<TabProps & ForwardProps> = forwardRef(function Tab(\n { selected, content, count, type, disabled, errors, ...restProps }: PropsWithoutRef<TabProps>,\n ref: TabProps['ref']\n) {\n const t = useI18n();\n const [tabEl, setTabEl] = useElement();\n const tabRef = useConsolidatedRef(ref, setTabEl);\n\n return (\n <StyledTab ref={tabRef} selected={selected} tabType={type} disabled={disabled} {...restProps}>\n <span>\n {!!errors && (\n <>\n <StyledErrorIcon name='warn-solid' />\n <Tooltip target={tabEl} hideDelay='none' showDelay='none'>\n {t('tab_error_tooltip', [content])}\n </Tooltip>\n </>\n )}\n <span data-content={content}>{content}</span>\n </span>\n {count}\n </StyledTab>\n );\n});\n\nexport default Tab;\n"]}
1
+ {"version":3,"file":"Tab.js","sourceRoot":"","sources":["../../../src/components/Tabs/Tab.tsx"],"names":[],"mappings":"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","sourcesContent":["import { forwardRef, useContext } from 'react';\nimport type { FC, ReactNode, PropsWithoutRef, Ref } from 'react';\nimport styled, { css } from 'styled-components';\nimport type { StyledProps } from 'styled-components';\nimport { meetsContrastGuidelines, mix, transparentize } from 'polished';\n\nimport { readableHue } from '../../styles';\nimport * as warnSolidIcon from '../Icon/icons/warn-solid.icon';\nimport { registerIcon } from '../Icon';\nimport { useConsolidatedRef, useElement, useI18n } from '../../hooks';\nimport Tooltip from '../Tooltip';\nimport { defaultThemeProp } from '../../theme';\nimport { tryCatch } from '../../utils';\nimport { StyledCount } from '../Badges/Count';\nimport type { ForwardProps } from '../../types';\nimport BareButton from '../Button/BareButton';\n\nimport TabsContext from './TabsContext';\nimport type { TabsContextValue } from './TabsContext';\nimport type { TabsProps } from './Tabs.types';\nimport { StyledErrorIcon } from './Tabs.styles';\n\nregisterIcon(warnSolidIcon);\n\nexport interface TabProps {\n /** Indicates if this Tab is active. */\n selected: boolean;\n /** The text to display as the name of the Tab. */\n content: string;\n /** A number to associate with the Tab. */\n count?: ReactNode;\n /** Determines the direction in which the Tab will render. */\n type: TabsProps['type'];\n /** Disables the tab if true */\n disabled?: boolean;\n /** An error to associate with the Tab. */\n errors?: number | boolean;\n /** Ref to the tab element. */\n ref?: Ref<HTMLButtonElement | HTMLAnchorElement>;\n}\n\nexport interface StyledTabProps {\n selected: TabProps['selected'];\n tabType: TabProps['type'];\n}\n\nconst activeStyle = (color: string) => css`\n ::after {\n display: block;\n background-color: ${color};\n }\n`;\n\nconst getHorizontalUnselectedHoverStyle = ({\n level,\n opacity,\n color\n}: { level?: TabsContextValue['level'] } & { color?: string; opacity: number }) =>\n level && level > 1\n ? css`\n ::before {\n content: '';\n position: absolute;\n top: 0;\n bottom: 0;\n left: 0;\n right: 0;\n border-radius: inherit;\n background-color: currentColor;\n opacity: ${opacity};\n }\n `\n : css`\n background-color: ${color};\n border-start-start-radius: calc(0.5rem * 0.5);\n border-start-end-radius: calc(0.5rem * 0.5);\n `;\n\nconst getHorizontalStyles = ({\n selected,\n level,\n theme\n}: Pick<StyledProps<StyledTabProps>, 'theme' | 'selected'> & {\n level?: TabsContextValue['level'];\n}) => {\n const color = theme.components.button.color;\n const secondaryColor = theme.components.button['secondary-color'];\n const lightenedColor = tryCatch(() => transparentize(0.3, color)) ?? '';\n const backgroundUsable = meetsContrastGuidelines(color, secondaryColor).AA;\n const usableColor = backgroundUsable ? color : readableHue(color, secondaryColor);\n const hoverBackgroundColor = tryCatch(() => mix(0.9, secondaryColor, usableColor));\n const activeBackgroundColor = tryCatch(() => mix(0.8, secondaryColor, usableColor));\n\n const { spacing } = theme.base;\n\n return css`\n align-items: center;\n display: flex;\n flex-direction: row;\n height: calc(4 * ${spacing});\n padding: 0 calc(1.5 * ${spacing});\n border: none;\n text-decoration: none;\n\n @media (pointer: coarse) {\n height: ${theme.base['hit-area']['finger-min']};\n }\n\n span:first-of-type {\n color: ${selected ? color : theme.base.palette['foreground-color']};\n display: inline-block;\n\n ::before {\n content: attr(data-content);\n display: block;\n font-weight: bold;\n height: 0;\n overflow: hidden;\n visibility: hidden;\n }\n }\n\n &:first-child {\n margin-left: 0;\n }\n\n ::after {\n background: ${selected ? color : lightenedColor};\n display: ${selected ? 'block' : 'none'};\n content: '';\n position: absolute;\n height: 0.125rem;\n bottom: 0;\n left: calc(1.5 * ${spacing});\n right: calc(1.5 * ${spacing});\n }\n\n ${!selected\n ? css`\n @media (hover: hover) {\n &:not(:disabled):hover {\n text-decoration: none;\n ${getHorizontalUnselectedHoverStyle({\n level,\n opacity: 0.1,\n color: hoverBackgroundColor\n })}\n }\n\n &:not(:disabled):active {\n text-decoration: none;\n ${getHorizontalUnselectedHoverStyle({\n level,\n opacity: 0.2,\n color: activeBackgroundColor\n })}\n }\n }\n `\n : css`\n ${level &&\n level > 1 &&\n css`\n background-color: ${theme.base.palette['primary-background']};\n `}\n `}\n\n &:focus,\n &:not([disabled]):focus {\n border-radius: calc(0.5rem * 0.5);\n box-shadow: ${theme.base.shadow['focus-inset']};\n text-decoration: none;\n ::after {\n display: none;\n }\n }\n\n @media (pointer: coarse) {\n min-block-size: ${theme.base['hit-area'].finger};\n }\n\n ${StyledCount} {\n margin-inline-start: calc(0.5 * ${spacing});\n }\n `;\n};\n\nconst getVerticalStyles = ({\n selected,\n theme\n}: Pick<StyledProps<StyledTabProps>, 'theme' | 'selected'>) => {\n const borderColor = theme.base.palette['border-line'];\n const primaryColor = theme.base.palette.interactive;\n const lightenedColor = tryCatch(() => transparentize(0.5, primaryColor)) ?? '';\n const { spacing } = theme.base;\n\n return css`\n display: flex;\n justify-content: space-between;\n align-items: center;\n border-style: solid;\n color: ${theme.base.palette['foreground-color']};\n border-width: 0.0625rem 0;\n border-color: ${borderColor};\n height: calc(5.5 * ${spacing});\n margin-top: -0.0625rem;\n padding: 0 calc(2 * ${spacing});\n text-decoration: none;\n\n &:first-child {\n border-top: 0.0625rem solid ${borderColor};\n }\n\n ::after {\n content: '';\n position: absolute;\n display: ${selected ? 'block' : 'none'};\n top: 0;\n bottom: 0;\n right: 0;\n width: 0.25rem;\n background: ${primaryColor};\n }\n\n &:hover&:not(:disabled) {\n ${activeStyle(lightenedColor)}\n text-decoration: none;\n }\n\n &:focus,\n &:not([disabled]):focus {\n ${activeStyle(primaryColor)}\n box-shadow: inset 0 0 0 0.0625rem ${primaryColor};\n text-decoration: none;\n }\n `;\n};\n\nexport const StyledTab = styled(BareButton)<\n StyledTabProps & {\n level?: TabsContextValue['level'];\n }\n>(\n ({ theme, tabType, selected, level }) => css`\n position: relative;\n background: none;\n cursor: pointer;\n white-space: nowrap;\n\n ${selected &&\n css`\n font-weight: bold;\n `}\n\n & + & {\n margin-inline-start: 0;\n }\n\n &:focus {\n outline: none;\n }\n\n &:disabled {\n cursor: not-allowed;\n opacity: ${theme.base['disabled-opacity']};\n }\n\n ${tabType === 'horizontal'\n ? getHorizontalStyles({ theme, selected, level })\n : getVerticalStyles({ theme, selected })}\n\n ${StyledErrorIcon} {\n margin-inline-end: calc(0.5 * ${theme.base.spacing});\n }\n `\n);\n\nStyledTab.defaultProps = defaultThemeProp;\n\nconst Tab: FC<TabProps & ForwardProps> = forwardRef(function Tab(\n { selected, content, count, type, disabled, errors, ...restProps }: PropsWithoutRef<TabProps>,\n ref: TabProps['ref']\n) {\n const t = useI18n();\n const [tabEl, setTabEl] = useElement();\n const tabRef = useConsolidatedRef(ref, setTabEl);\n const { level } = useContext(TabsContext);\n\n return (\n <StyledTab\n ref={tabRef}\n selected={selected}\n tabType={type}\n disabled={disabled}\n level={level}\n {...restProps}\n >\n <span>\n {!!errors && (\n <>\n <StyledErrorIcon name='warn-solid' />\n <Tooltip target={tabEl} hideDelay='none' showDelay='none'>\n {t('tab_error_tooltip', [content])}\n </Tooltip>\n </>\n )}\n <span data-content={content}>{content}</span>\n </span>\n {count}\n </StyledTab>\n );\n});\n\nexport default Tab;\n"]}
@@ -1,5 +1,6 @@
1
1
  import type { FunctionComponent, ReactNode, Ref, RefObject } from 'react';
2
2
  import type { ForwardProps } from '../../types';
3
+ import type { TabsProps } from './Tabs.types';
3
4
  interface TabPanelProps {
4
5
  /** The id of the Tab that the tab panel is related to. */
5
6
  tabId: string;
@@ -8,15 +9,23 @@ interface TabPanelProps {
8
9
  * The tabsValue must match the tabId in order for the TabPanel to show itself.
9
10
  */
10
11
  currentTabId?: string;
12
+ /** The title for the tab panel */
13
+ title?: string;
11
14
  /** Content of the tab panel. */
12
15
  children: ReactNode;
13
16
  /** Ref to the tablist element. */
14
17
  tablistRef?: RefObject<HTMLElement>;
18
+ /**
19
+ * The tablist type indicates what direction the tabs are rendered in.
20
+ * @default 'horizontal'
21
+ */
22
+ tablistType?: TabsProps['type'];
15
23
  /** Ref for the wrapping element. */
16
24
  ref?: Ref<HTMLDivElement>;
17
25
  }
18
- export declare const StyledTabPanel: import("styled-components").StyledComponent<"div", import("styled-components").DefaultTheme, {
26
+ export declare const StyledTabPanel: import("styled-components").StyledComponent<FunctionComponent<import("../Flex").FlexProps & ForwardProps>, import("styled-components").DefaultTheme, Pick<TabPanelProps, "tablistType"> & {
19
27
  current: boolean;
28
+ level: number;
20
29
  }, never>;
21
30
  declare const TabPanel: FunctionComponent<TabPanelProps & ForwardProps>;
22
31
  export default TabPanel;