)}
- {withafterSeparator &&
}
+ {withAfterSeparator &&
}
{after && (
, 'ref'>{
footer?: React.ReactNode;
withFooterBorder?: boolean;
+ // FIXME: these props should be merged
+ withoutWrapInFooter?: boolean;
+ withLargeBreakpointInHeader?: boolean,
+
pending?: boolean;
overlayPending?: boolean;
empty?: boolean;
@@ -69,6 +74,8 @@ export interface Props extends Omit, 'ref'>{
spacingOffset?: number;
withoutSpacingOpticalCorrection?: boolean;
withFixedHeight?: boolean;
+
+ withCenteredContent?: boolean;
}
function Container(props: Props) {
@@ -78,7 +85,7 @@ function Container(props: Props) {
heading,
withEllipsizedHeading,
- headingLevel,
+ headingLevel = 3,
headerIcons,
headerActions,
headerDescription,
@@ -86,6 +93,7 @@ function Container(props: Props) {
withCenteredHeading,
withCenteredHeaderDescription,
withoutWrapInHeader,
+ withLargeBreakpointInHeader,
filters,
@@ -93,6 +101,7 @@ function Container(props: Props) {
footer,
footerActions,
withFooterBorder,
+ withoutWrapInFooter,
children,
withContentOverflow,
@@ -119,6 +128,8 @@ function Container(props: Props) {
spacingOffset = 0,
withoutSpacingOpticalCorrection,
+ withCenteredContent,
+
...divProps
} = props;
@@ -174,6 +185,22 @@ function Container(props: Props) {
>
);
+ const headerWrapBreakpoint = useMemo(() => {
+ if (withoutWrapInHeader) {
+ return 'none';
+ }
+
+ if (headingLevel > 3) {
+ return 'sm';
+ }
+
+ if (withLargeBreakpointInHeader) {
+ return 'lg';
+ }
+
+ return 'md';
+ }, [headingLevel, withLargeBreakpointInHeader, withoutWrapInHeader]);
+
return (
{footer}
)}
- withbeforeSeparator={withHeaderBorder}
- withafterSeparator={withFooterBorder}
+ withBeforeSeparator={withHeaderBorder}
+ withAfterSeparator={withFooterBorder}
childrenContainerClassName={_cs(
styles.content,
overlayPending && styles.pendingOverlaid,
diff --git a/packages/ui/src/components/Container/styles.module.css b/packages/ui/src/components/Container/styles.module.css
index 549ed7ad90..8547493b4d 100644
--- a/packages/ui/src/components/Container/styles.module.css
+++ b/packages/ui/src/components/Container/styles.module.css
@@ -1,4 +1,10 @@
.container {
+ &.with-centered-content {
+ margin: 0 auto;
+ width: 100%;
+ max-width: var(--go-ui-width-content-max);
+ }
+
&.with-fixed-height {
/* FIXME: use variable */
max-height: 18rem;
diff --git a/packages/ui/src/components/ExpandableContainer/index.tsx b/packages/ui/src/components/ExpandableContainer/index.tsx
index 2a2202e413..b2b0346e04 100644
--- a/packages/ui/src/components/ExpandableContainer/index.tsx
+++ b/packages/ui/src/components/ExpandableContainer/index.tsx
@@ -127,6 +127,7 @@ function ExpandableContainer(props: Props) {
// elementRef={containerRef}
className={_cs(styles.expandableContainer, className)}
withHeaderBorder={withHeaderBorder && expanded}
+ withoutWrapInHeader={!withToggleButtonOnFooter}
headerActions={(
<>
{headerActions}
diff --git a/packages/ui/src/components/InlineView/index.tsx b/packages/ui/src/components/InlineView/index.tsx
index d0b4885d6e..cbec1de224 100644
--- a/packages/ui/src/components/InlineView/index.tsx
+++ b/packages/ui/src/components/InlineView/index.tsx
@@ -7,7 +7,7 @@ import styles from './styles.module.css';
export interface Props extends InlineLayoutProps {
layoutClassName?: string;
layoutElementRef?: InlineLayoutProps['elementRef'];
- withoutWrap?: boolean;
+ wrapBreakpoint?: 'sm' | 'md' | 'lg' | 'none';
}
function InlineView(props: Props) {
@@ -27,7 +27,7 @@ function InlineView(props: Props) {
spacingOffset,
withPadding,
withoutSpacingOpticalCorrection,
- withoutWrap = false,
+ wrapBreakpoint = 'md',
...divProps
} = props;
@@ -39,7 +39,9 @@ function InlineView(props: Props) {
ref={elementRef}
className={_cs(
styles.inlineView,
- !withoutWrap && styles.withWrap,
+ wrapBreakpoint === 'sm' && styles.withSmWrapBreakpoint,
+ wrapBreakpoint === 'md' && styles.withMdWrapBreakpoint,
+ wrapBreakpoint === 'lg' && styles.withLgWrapBreakpoint,
className,
)}
>
diff --git a/packages/ui/src/components/InlineView/styles.module.css b/packages/ui/src/components/InlineView/styles.module.css
index b107bf6efc..ff6961fb79 100644
--- a/packages/ui/src/components/InlineView/styles.module.css
+++ b/packages/ui/src/components/InlineView/styles.module.css
@@ -1,10 +1,48 @@
.inline-view {
- &.with-wrap {
+ &.with-sm-wrap-breakpoint,
+ &.with-md-wrap-breakpoint,
+ &.with-lg-wrap-breakpoint {
container-type: inline-size;
}
@container (max-width: 18rem) {
- &.with-wrap {
+ &.with-sm-wrap-breakpoint {
+ >.inline-layout {
+ &:has(> .before-content) {
+ grid-template-columns: auto minmax(0, 1fr);
+ }
+
+ &:not(:has(> .before-content)) {
+ grid-template-columns: minmax(0, 1fr);
+ }
+
+ > .after-content {
+ grid-column: 1 / -1;
+ }
+ }
+ }
+ }
+
+ @container (max-width: 24rem) {
+ &.with-md-wrap-breakpoint {
+ >.inline-layout {
+ &:has(> .before-content) {
+ grid-template-columns: auto minmax(0, 1fr);
+ }
+
+ &:not(:has(> .before-content)) {
+ grid-template-columns: minmax(0, 1fr);
+ }
+
+ > .after-content {
+ grid-column: 1 / -1;
+ }
+ }
+ }
+ }
+
+ @container (max-width: 32rem) {
+ &.with-lg-wrap-breakpoint {
>.inline-layout {
&:has(> .before-content) {
grid-template-columns: auto minmax(0, 1fr);
@@ -15,9 +53,7 @@
}
> .after-content {
- grid-row-start: 1;
grid-column: 1 / -1;
- justify-self: end;
}
}
}
diff --git a/packages/ui/src/components/PageHeader/index.tsx b/packages/ui/src/components/PageHeader/index.tsx
index 5145e43f31..769b9b2e31 100644
--- a/packages/ui/src/components/PageHeader/index.tsx
+++ b/packages/ui/src/components/PageHeader/index.tsx
@@ -56,6 +56,7 @@ function PageHeader(props: Props) {
{wikiLink}
)}
+ wrapBreakpoint="lg"
>
{breadCrumbs}
diff --git a/packages/ui/src/components/Popup/styles.module.css b/packages/ui/src/components/Popup/styles.module.css
index 5730905097..3eae3be78b 100644
--- a/packages/ui/src/components/Popup/styles.module.css
+++ b/packages/ui/src/components/Popup/styles.module.css
@@ -3,7 +3,7 @@
border-radius: var(--go-ui-spacing-xs);
box-shadow: var(--go-ui-box-shadow-2xl);
background-color: var(--go-ui-color-white);
- max-height: 40vh;
+ max-height: 50vh;
overflow: auto;
&.top-orientation {
diff --git a/packages/ui/src/components/TabListLayout/index.tsx b/packages/ui/src/components/TabListLayout/index.tsx
index a68a24d150..c5a959f581 100644
--- a/packages/ui/src/components/TabListLayout/index.tsx
+++ b/packages/ui/src/components/TabListLayout/index.tsx
@@ -74,6 +74,7 @@ function TabListLayout(props: Props) {
: spacing}
role="tablist"
withWrap={styleVariant === 'nav'}
+ withSpacingOpticalCorrection
>
{children}
diff --git a/packages/ui/src/components/Table/ColumnShortcuts/index.ts b/packages/ui/src/components/Table/ColumnShortcuts/index.ts
index 8fcbcd27a9..7fb9ae2a7f 100644
--- a/packages/ui/src/components/Table/ColumnShortcuts/index.ts
+++ b/packages/ui/src/components/Table/ColumnShortcuts/index.ts
@@ -96,7 +96,7 @@ export function createProgressColumn(
} = {
id,
title,
- columnClassName: options?.columnClassName,
+ columnClassName: _cs(styles.progressColumn, options?.columnClassName),
headerCellRenderer: HeaderCell,
headerCellRendererClassName: options?.headerCellRendererClassName,
headerContainerClassName: options?.headerContainerClassName,
@@ -421,7 +421,7 @@ export function createTimelineColumn(
}),
headerContainerClassName: options?.headerContainerClassName,
cellRendererClassName: options?.cellRendererClassName,
- columnClassName: options?.columnClassName,
+ columnClassName: _cs(styles.timelineColumn, options?.columnClassName),
headerCellRendererClassName: options?.headerCellRendererClassName,
cellContainerClassName: _cs(
options?.cellContainerClassName,
diff --git a/packages/ui/src/components/Table/ColumnShortcuts/styles.module.css b/packages/ui/src/components/Table/ColumnShortcuts/styles.module.css
index 3d6c082322..d3605ef6c7 100644
--- a/packages/ui/src/components/Table/ColumnShortcuts/styles.module.css
+++ b/packages/ui/src/components/Table/ColumnShortcuts/styles.module.css
@@ -23,3 +23,13 @@
width: 0%;
min-width: 3rem;
}
+
+.progress-column {
+ width: 0%;
+ min-width: 8rem;
+}
+
+.timeline-column {
+ width: 0%;
+ min-width: 22rem;
+}
diff --git a/packages/ui/src/components/Table/HeaderCell/styles.module.css b/packages/ui/src/components/Table/HeaderCell/styles.module.css
index 5bfa21a695..7198aece8f 100644
--- a/packages/ui/src/components/Table/HeaderCell/styles.module.css
+++ b/packages/ui/src/components/Table/HeaderCell/styles.module.css
@@ -3,7 +3,6 @@
align-items: center;
color: var(--go-ui-color-text-black);
font-weight: var(--go-ui-font-weight-semibold);
- gap: var(--go-ui-spacing-2xs);
.sort-button {
flex-shrink: 0;
diff --git a/packages/ui/src/components/Table/TableBodyContent/styles.module.css b/packages/ui/src/components/Table/TableBodyContent/styles.module.css
index eb0a51b09c..8939a3e238 100644
--- a/packages/ui/src/components/Table/TableBodyContent/styles.module.css
+++ b/packages/ui/src/components/Table/TableBodyContent/styles.module.css
@@ -1,6 +1,6 @@
.row {
.cell {
- padding: var(--go-ui-spacing-sm);
+ padding: var(--go-ui-spacing-xs);
overflow: hidden;
overflow-wrap: break-word;
}
diff --git a/packages/ui/src/components/Table/styles.module.css b/packages/ui/src/components/Table/styles.module.css
index fc9afd77c0..072f6910f1 100644
--- a/packages/ui/src/components/Table/styles.module.css
+++ b/packages/ui/src/components/Table/styles.module.css
@@ -28,7 +28,7 @@
background-color: var(--go-ui-color-background);
.header-component {
- padding: var(--go-ui-spacing-xs) var(--go-ui-spacing-sm);
+ padding: var(--go-ui-spacing-xs);
font-size: var(--go-ui-font-size-sm);
}
}
diff --git a/packages/ui/src/index.css b/packages/ui/src/index.css
index 76624f0776..41bfd5c4a2 100644
--- a/packages/ui/src/index.css
+++ b/packages/ui/src/index.css
@@ -17,17 +17,12 @@
--go-ui-font-size-3xl: calc(var(--base-font-size) * 2.1428);
--go-ui-font-size-4xl: calc(var(--base-font-size) * 2.7142);
- @media screen and (max-width: 40rem) {
- --base-font-size: 0.875rem;
- }
-
-
--go-ui-height-icon-multiplier: 1.33em;
- --go-ui-height-brand-icon: 2.5rem;
+ --go-ui-height-brand-icon: 2.25rem;
--go-ui-height-social-icon: 2.5rem;
--go-ui-height-key-figure-icon: 3rem;
- --go-ui-height-status-icon: 2.5rem;
+ --go-ui-height-status-icon: 2.536rem;
--go-ui-height-compact-status-icon: 2rem;
--go-ui-line-height-none: 1;
@@ -49,36 +44,24 @@
--go-ui-width-screen-xl: 1280px;
--go-ui-width-screen-2xl: 1536px;
- --base-spacing: 1rem;
-
- --go-ui-spacing-5xs: calc(var(--base-spacing) * 0.1);
- --go-ui-spacing-4xs: calc(var(--base-spacing) * 0.2);
- --go-ui-spacing-3xs: calc(var(--base-spacing) * 0.3);
- --go-ui-spacing-2xs: calc(var(--base-spacing) * 0.4);
- --go-ui-spacing-xs: calc(var(--base-spacing) * 0.6);
- --go-ui-spacing-sm: calc(var(--base-spacing) * 0.8);
- --go-ui-spacing-md: calc(var(--base-spacing) * 1);
- --go-ui-spacing-lg: calc(var(--base-spacing) * 1.5);
- --go-ui-spacing-xl: calc(var(--base-spacing) * 2.25);
- --go-ui-spacing-2xl: calc(var(--base-spacing) * 3.5);
- --go-ui-spacing-3xl: calc(var(--base-spacing) * 4.75);
- --go-ui-spacing-4xl: calc(var(--base-spacing) * 6);
- --go-ui-spacing-5xl: calc(var(--base-spacing) * 7.25);
+ --base-spacing: 0.03125rem;
+
+ --go-ui-spacing-5xs: calc(var(--base-spacing) * 3);
+ --go-ui-spacing-4xs: calc(var(--base-spacing) * 6);
+ --go-ui-spacing-3xs: calc(var(--base-spacing) * 10);
+ --go-ui-spacing-2xs: calc(var(--base-spacing) * 15);
+ --go-ui-spacing-xs: calc(var(--base-spacing) * 21);
+ --go-ui-spacing-sm: calc(var(--base-spacing) * 28);
+ --go-ui-spacing-md: calc(var(--base-spacing) * 36);
+ --go-ui-spacing-lg: calc(var(--base-spacing) * 47);
+ --go-ui-spacing-xl: calc(var(--base-spacing) * 62);
+ --go-ui-spacing-2xl: calc(var(--base-spacing) * 82);
+ --go-ui-spacing-3xl: calc(var(--base-spacing) * 110);
+ --go-ui-spacing-4xl: calc(var(--base-spacing) * 145);
+ --go-ui-spacing-5xl: calc(var(--base-spacing) * 195);
@media screen and (max-width: 40rem) {
- --go-ui-spacing-5xs: calc(var(--base-spacing) * 0.1);
- --go-ui-spacing-4xs: calc(var(--base-spacing) * 0.2);
- --go-ui-spacing-3xs: calc(var(--base-spacing) * 0.3);
- --go-ui-spacing-2xs: calc(var(--base-spacing) * 0.4);
- --go-ui-spacing-xs: calc(var(--base-spacing) * 0.6);
- --go-ui-spacing-sm: calc(var(--base-spacing) * 0.8);
- --go-ui-spacing-md: calc(var(--base-spacing) * 1);
- --go-ui-spacing-lg: calc(var(--base-spacing) * 1.25);
- --go-ui-spacing-xl: calc(var(--base-spacing) * 1.5625);
- --go-ui-spacing-2xl: calc(var(--base-spacing) * 1.95);
- --go-ui-spacing-3xl: calc(var(--base-spacing) * 2.44);
- --go-ui-spacing-4xl: calc(var(--base-spacing) * 3);
- --go-ui-spacing-5xl: calc(var(--base-spacing) * 3.8);
+ --base-spacing: 0.0277777rem;
}
--go-ui-width-separator-sm: 1pt;
diff --git a/translationMigrations/000063-1765977376504.json b/translationMigrations/000063-1765977376504.json
new file mode 100644
index 0000000000..fc47319571
--- /dev/null
+++ b/translationMigrations/000063-1765977376504.json
@@ -0,0 +1,29 @@
+{
+ "parent": "000062-1765884779160.json",
+ "actions": [
+ {
+ "action": "update",
+ "key": "appealsTableCode",
+ "namespace": "appealsTable",
+ "newValue": "Code"
+ },
+ {
+ "action": "update",
+ "key": "appealsTableFundedAmount",
+ "namespace": "appealsTable",
+ "newValue": "Funding"
+ },
+ {
+ "action": "update",
+ "key": "appealsTableRequestedAmount",
+ "namespace": "appealsTable",
+ "newValue": "Requested"
+ },
+ {
+ "action": "update",
+ "key": "appealsTableType",
+ "namespace": "appealsTable",
+ "newValue": "Type"
+ }
+ ]
+}
\ No newline at end of file