diff --git a/src/lib/ui/AccessCodeTable/AccessCodeTable.tsx b/src/lib/ui/AccessCodeTable/AccessCodeTable.tsx index c6a67a4fb..76d740d0e 100644 --- a/src/lib/ui/AccessCodeTable/AccessCodeTable.tsx +++ b/src/lib/ui/AccessCodeTable/AccessCodeTable.tsx @@ -107,7 +107,7 @@ function AccessCodeRow(props: { - {accessCode.name} + {accessCode.name} diff --git a/src/lib/ui/AccessCodeTable/CodeDetails.tsx b/src/lib/ui/AccessCodeTable/CodeDetails.tsx index 114f0718d..cc9366574 100644 --- a/src/lib/ui/AccessCodeTable/CodeDetails.tsx +++ b/src/lib/ui/AccessCodeTable/CodeDetails.tsx @@ -12,7 +12,9 @@ export function CodeDetails(props: { accessCode: AccessCode }): JSX.Element { return (
- {device?.properties.name} + + {device?.properties.name} + diff --git a/src/lib/ui/DeviceTable/DeviceRow.tsx b/src/lib/ui/DeviceTable/DeviceRow.tsx index 0351c2db0..90eb579bf 100644 --- a/src/lib/ui/DeviceTable/DeviceRow.tsx +++ b/src/lib/ui/DeviceTable/DeviceRow.tsx @@ -39,7 +39,7 @@ export function DeviceRow({ - {device.properties.name} + {device.properties.name}
{deviceModel}
diff --git a/src/lib/ui/types.ts b/src/lib/ui/types.ts index b88f85fe4..2c4b64c66 100644 --- a/src/lib/ui/types.ts +++ b/src/lib/ui/types.ts @@ -2,3 +2,4 @@ import type { HTMLAttributes, HtmlHTMLAttributes } from 'react' export type DivProps = HTMLAttributes export type ButtonProps = HtmlHTMLAttributes +export type SpanProps = HtmlHTMLAttributes diff --git a/src/lib/ui/typography/Title.tsx b/src/lib/ui/typography/Title.tsx index 7a1ad477e..8fc07746e 100644 --- a/src/lib/ui/typography/Title.tsx +++ b/src/lib/ui/typography/Title.tsx @@ -1,5 +1,15 @@ -import type { PropsWithChildren } from 'react' +import classNames from 'classnames' -export function Title({ children }: PropsWithChildren): JSX.Element { - return {children} +import type { SpanProps } from 'lib/ui/types.js' + +export function Title({ + children, + className, + ...props +}: SpanProps): JSX.Element { + return ( + + {children} + + ) } diff --git a/src/styles/_access-code-table.scss b/src/styles/_access-code-table.scss index 75667089f..ebe5339b3 100644 --- a/src/styles/_access-code-table.scss +++ b/src/styles/_access-code-table.scss @@ -26,11 +26,22 @@ justify-content: center; align-items: flex-start; gap: 2px; + overflow: hidden; + + .seam-title { + max-width: 380px; + } .seam-code-details { font-size: 14px; line-height: 134%; color: colors.$text-gray-1; + display: flex; + + .seam-device-name { + max-width: 190px; + width: auto; + } .seam-dot-divider { margin: 0 4px; diff --git a/src/styles/_device-table.scss b/src/styles/_device-table.scss index 4a34b36a9..ebd3cdd5e 100644 --- a/src/styles/_device-table.scss +++ b/src/styles/_device-table.scss @@ -21,6 +21,11 @@ justify-content: center; align-items: flex-start; gap: 2px; + overflow: hidden; + + .seam-title { + max-width: 380px; + } .seam-bottom { display: flex; diff --git a/src/styles/_typography.scss b/src/styles/_typography.scss index 4292ada3b..5dc9835de 100644 --- a/src/styles/_typography.scss +++ b/src/styles/_typography.scss @@ -35,10 +35,21 @@ } } +@mixin truncated-text { + .seam-truncated-text { + display: block; + width: 100%; + white-space: nowrap; + overflow: hidden; + text-overflow: ellipsis; + } +} + @mixin all { @include headers; @include caption; @include danger-text; @include font-family; @include defaults; + @include truncated-text; }