@pega/cosmos-react-work 9.0.0-build.29.11 → 9.0.0-build.29.12

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.
@@ -1 +1 @@
1
- {"version":3,"file":"CaseView.styles.d.ts","sourceRoot":"","sources":["../../../src/components/CaseView/CaseView.styles.ts"],"names":[],"mappings":"AACA,OAAO,KAAK,EAAE,YAAY,EAAE,MAAM,mBAAmB,CAAC;AAiDtD,OAAO,KAAK,EAAE,oBAAoB,EAAE,MAAM,iEAAiE,CAAC;AAiC5G,eAAO,MAAM,oBAAoB,GAC/B,OAAO,YAAY,EACnB,OAAO,MAAM,GAAG,SAAS,KACxB,MAAM,GAAG,SAKX,CAAC;AAoBF,eAAO,MAAM,wBAAwB;cACzB,OAAO;;2BAbmB,CAAC;iDAuCrC,CAAC;AAIH,eAAO,MAAM,0BAA0B;2BA3CD,CAAC;iDAiDrC,CAAC;AAEH,eAAO,MAAM,uBAAuB,6NAsBlC,CAAC;AAIH,eAAO,MAAM,uBAAuB,6ZAelC,CAAC;AAIH,eAAO,MAAM,oBAAoB;;yLAI/B,CAAC;AAIH,eAAO,MAAM,mBAAmB;;0LAE/B,CAAC;AAEF,eAAO,MAAM,gBAAgB,6NAmD3B,CAAC;AAIH,eAAO,MAAM,oBAAoB,sOAUhC,CAAC;AAIF,eAAO,MAAM,gBAAgB,yOAAa,CAAC;AAI3C,eAAO,MAAM,8BAA8B;;2LAkDzC,CAAC;AAIH,eAAO,MAAM,mBAAmB;eAA2B,OAAO;YAmBhE,CAAC;AAIH,eAAO,MAAM,oBAAoB,uNA6D/B,CAAC;AAIH,eAAO,MAAM,wBAAwB;cAA0B,OAAO;YAoBpE,CAAC;AAmCH,eAAO,MAAM,mBAAmB,iOAqD9B,CAAC;AAIH,eAAO,MAAM,wBAAwB;;;WAC5B,OAAO;eACH,OAAO;WACX,YAAY;YAiCnB,CAAC;AAIH,eAAO,MAAM,qBAAqB,6NA6BjC,CAAC;AAIF,eAAO,MAAM,0BAA0B,6NAkBrC,CAAC;AAIH,eAAO,MAAM,0BAA0B;;2LASrC,CAAC;AAIH,eAAO,MAAM,iCAAiC;;2BAgC5C,CAAC;AAIH,eAAO,MAAM,iBAAiB,6NA0E7B,CAAC;AAIF,eAAO,MAAM,WAAW,6NAavB,CAAC;AAGF,eAAO,MAAM,qBAAqB,6NAuEjC,CAAC;AAKF,eAAO,MAAM,iCAAiC,6NAM5C,CAAC;AAEH,eAAO,MAAM,cAAc,6NA4I1B,CAAC;AAIF,eAAO,MAAM,sBAAsB;;yLAAiB,CAAC;AAErD,eAAO,MAAM,mCAAmC;;2BAO9C,CAAC;AAMH,eAAO,MAAM,eAAe,6NAsC1B,CAAC;AAIH,eAAO,MAAM,aAAa,6NAiEzB,CAAC;AAIF,eAAO,MAAM,gBAAgB;oBACX,oBAAoB,CAAC,eAAe,CAAC;wBACjC,OAAO;YA8B3B,CAAC;AAIH,eAAO,MAAM,uBAAuB,6NAwBnC,CAAC;AAIF,eAAO,MAAM,uBAAuB;gCAA4C,OAAO;YAatF,CAAC;AAIF,eAAO,MAAM,yBAAyB,6NAQpC,CAAC;AAIH,eAAO,MAAM,uBAAuB,6NAIlC,CAAC;AAIH,eAAO,MAAM,WAAW,6NAGvB,CAAC;AAEF,eAAO,MAAM,cAAc,6NA+F1B,CAAC;AAIF,eAAO,MAAM,qBAAqB;;yLAMjC,CAAC;AAIF,eAAO,MAAM,iBAAiB;;;;;;;;;;;;;;;;sSAsB5B,CAAC;AAIH,eAAO,MAAM,sBAAsB,6NAAe,CAAC;AAEnD,eAAO,MAAM,kBAAkB,kaAoC7B,CAAC"}
1
+ {"version":3,"file":"CaseView.styles.d.ts","sourceRoot":"","sources":["../../../src/components/CaseView/CaseView.styles.ts"],"names":[],"mappings":"AACA,OAAO,KAAK,EAAE,YAAY,EAAE,MAAM,mBAAmB,CAAC;AA0CtD,OAAO,KAAK,EAAE,oBAAoB,EAAE,MAAM,iEAAiE,CAAC;AAkC5G,eAAO,MAAM,oBAAoB,GAC/B,OAAO,YAAY,EACnB,OAAO,MAAM,GAAG,SAAS,KACxB,MAAM,GAAG,SAKX,CAAC;AAyEF,eAAO,MAAM,wBAAwB;cACzB,OAAO;;2BAlEwC,CAAC;iDA4F1D,CAAC;AAIH,eAAO,MAAM,0BAA0B;2BAhGoB,CAAC;iDAsG1D,CAAC;AAEH,eAAO,MAAM,uBAAuB,6NAsBlC,CAAC;AAIH,eAAO,MAAM,uBAAuB,6ZAelC,CAAC;AAIH,eAAO,MAAM,oBAAoB;;yLAI/B,CAAC;AAIH,eAAO,MAAM,mBAAmB;;0LAE/B,CAAC;AAEF,eAAO,MAAM,gBAAgB,6NA6C3B,CAAC;AAIH,eAAO,MAAM,oBAAoB,sOAUhC,CAAC;AAIF,eAAO,MAAM,gBAAgB,yOAAa,CAAC;AAI3C,eAAO,MAAM,8BAA8B;;2LA8BzC,CAAC;AAIH,eAAO,MAAM,mBAAmB;eAA2B,OAAO;YAmBhE,CAAC;AAIH,eAAO,MAAM,oBAAoB,uNAkD/B,CAAC;AAIH,eAAO,MAAM,wBAAwB;cAA0B,OAAO;YAoBpE,CAAC;AAmCH,eAAO,MAAM,mBAAmB,iOAoC9B,CAAC;AAIH,eAAO,MAAM,wBAAwB;;;WAC5B,OAAO;eACH,OAAO;WACX,YAAY;YAiCnB,CAAC;AAIH,eAAO,MAAM,qBAAqB,6NA6BjC,CAAC;AAIF,eAAO,MAAM,0BAA0B,6NAkBrC,CAAC;AAIH,eAAO,MAAM,0BAA0B;;2LASrC,CAAC;AAIH,eAAO,MAAM,iCAAiC;;2BAgC5C,CAAC;AAIH,eAAO,MAAM,iBAAiB,6NA+E7B,CAAC;AAIF,eAAO,MAAM,WAAW,6NAavB,CAAC;AAGF,eAAO,MAAM,qBAAqB,6NAuEjC,CAAC;AAKF,eAAO,MAAM,iCAAiC,6NAM5C,CAAC;AAEH,eAAO,MAAM,cAAc,6NA4I1B,CAAC;AAIF,eAAO,MAAM,sBAAsB;;yLAAiB,CAAC;AAErD,eAAO,MAAM,mCAAmC;;2BAO9C,CAAC;AAMH,eAAO,MAAM,eAAe,6NAsC1B,CAAC;AAIH,eAAO,MAAM,aAAa,6NAiEzB,CAAC;AAIF,eAAO,MAAM,gBAAgB;oBACX,oBAAoB,CAAC,eAAe,CAAC;wBACjC,OAAO;YA8B3B,CAAC;AAIH,eAAO,MAAM,uBAAuB,6NAwBnC,CAAC;AAIF,eAAO,MAAM,uBAAuB;gCAA4C,OAAO;YAatF,CAAC;AAIF,eAAO,MAAM,yBAAyB,6NAQpC,CAAC;AAIH,eAAO,MAAM,uBAAuB,6NAIlC,CAAC;AAIH,eAAO,MAAM,WAAW,6NAGvB,CAAC;AAEF,eAAO,MAAM,cAAc,6NA+F1B,CAAC;AAIF,eAAO,MAAM,qBAAqB;;yLAMjC,CAAC;AAIF,eAAO,MAAM,iBAAiB;;;;;;;;;;;;;;;;sSAsB5B,CAAC;AAIH,eAAO,MAAM,sBAAsB,6NAAe,CAAC;AAEnD,eAAO,MAAM,kBAAkB,kaAoC7B,CAAC"}
@@ -1,12 +1,12 @@
1
1
  import styled, { css } from 'styled-components';
2
- import { getContrast, hideVisually, meetsContrastGuidelines, mix, rgba, transparentize } from 'polished';
2
+ import { getContrast, hideVisually, mix, rgba, transparentize } from 'polished';
3
3
  import { useContext } from 'react';
4
4
  import { Button, calculateFontSize, CardContent, defaultThemeProp, resolveSupplementalColor, StyledBreadcrumbs, StyledButtonLink, StyledFieldValue, StyledInlineFieldValueRow, StyledStackedFieldValue, StyledIcon, StyledLabel, StyledPopover, StyledText, StyledTooltip, tryCatch, FieldValueList, StyledLink, readableHue, StyledCard, Text, readableColor, AppShellContext, AIButton, StyledButton, calculateForegroundColor, calculateBackgroundAndContrastColor, isSolidColor, StyledSummaryListItem, StyledProgressBackdrop, Image, Icon, animations, useDirection } from '@pega/cosmos-react-core';
5
5
  import { StyledMenu } from '@pega/cosmos-react-core/lib/components/Menu/Menu.styles';
6
6
  import { headerHeight } from '@pega/cosmos-react-core/lib/components/AppShell/AppShell.styles';
7
7
  import { StyledCardHeader } from '@pega/cosmos-react-core/lib/components/Card/CardHeader';
8
8
  import { StyledAllTabsWrapper, StyledTabs, StylesAllTabsButtonWrapper } from '@pega/cosmos-react-core/lib/components/Tabs/Tabs.styles';
9
- import { resizeDrawerMinWidth, resizeDrawerMaxWidth, resizeDrawerDefaultWidth } from '@pega/cosmos-react-core/lib/styles/constants';
9
+ import { resizeDrawerMinWidth, resizeDrawerMaxWidth, resizeDrawerDefaultWidth, wcagContrast } from '@pega/cosmos-react-core/lib/styles/constants';
10
10
  import { StyledMenuButton } from '@pega/cosmos-react-core/lib/components/MenuButton/MenuButton';
11
11
  import { StyledTab } from '@pega/cosmos-react-core/lib/components/Tabs/Tab';
12
12
  import { StyledTabPanel } from '@pega/cosmos-react-core/lib/components/Tabs/TabPanel';
@@ -36,7 +36,35 @@ const getCaseTypeHeaderColors = (theme, color) => {
36
36
  isSolidColor(theme.components.card.background)
37
37
  ? mixCaseColorWithBackground(resolvedCaseTypeColor, theme.components.card.background)
38
38
  : theme.components['case-view'].header.background;
39
- return { caseTypeColor: resolvedCaseTypeColor, headerBackground };
39
+ const headerForeground = resolvedCaseTypeColor && theme.base['case-type-colors'] === 'header-and-icon'
40
+ ? readableColor(headerBackground)
41
+ : calculateForegroundColor(headerBackground, theme.components['case-view'].header['foreground-color']);
42
+ return { caseTypeColor: resolvedCaseTypeColor ?? undefined, headerBackground, headerForeground };
43
+ };
44
+ const getCaseViewColors = (theme, caseTypeColor) => {
45
+ const interactive = theme.base.palette.interactive;
46
+ const caseTypeHeaderColors = getCaseTypeHeaderColors(theme, caseTypeColor);
47
+ const headerBackground = caseTypeHeaderColors.headerBackground;
48
+ const foregroundColor = caseTypeHeaderColors.headerForeground;
49
+ const isGradientBackground = !isSolidColor(headerBackground);
50
+ const elementBackground = isGradientBackground
51
+ ? readableColor(foregroundColor)
52
+ : headerBackground;
53
+ const interactiveUsable = getContrast(elementBackground, interactive) >= wcagContrast.AA;
54
+ const interactiveColor = !isGradientBackground && interactiveUsable ? interactive : foregroundColor;
55
+ let hoverBackground = rgba(interactiveColor, 0.15);
56
+ if (!isGradientBackground && interactiveUsable) {
57
+ hoverBackground = readableHue(interactive, interactiveColor);
58
+ }
59
+ return {
60
+ caseTypeColor: caseTypeHeaderColors.caseTypeColor,
61
+ headerBackground,
62
+ foregroundColor,
63
+ elementBackground,
64
+ interactiveColor,
65
+ interactiveUsable,
66
+ hoverBackground
67
+ };
40
68
  };
41
69
  export const StyledSummaryPrimaryList = styled(FieldValueList)(({ theme, wrapped }) => {
42
70
  const fontSizes = calculateFontSize(theme.base['font-size'], theme.base['font-scale']);
@@ -111,19 +139,15 @@ export const StyledCaseViewImage = styled(Image) `
111
139
  max-height: 100%;
112
140
  `;
113
141
  export const StyledCaseHeader = styled.div(({ theme }) => {
114
- const { components: { 'case-view': { header: { 'foreground-color': caseHeaderForegroundColor, background }, summary: { detached: summaryDetached }, utilities: { detached: utilitiesDetached } } }, base: { 'border-radius': borderRadius, spacing, shadow, 'z-index': zIndex, palette } } = theme;
142
+ const { components: { 'case-view': { summary: { detached: summaryDetached }, utilities: { detached: utilitiesDetached } } }, base: { 'border-radius': borderRadius, spacing, shadow, 'z-index': zIndex, palette } } = theme;
115
143
  const { aboveSM, aboveMD, color, persistentUtility, aboveXL, summaryExpanded, isPreview } = useCaseViewContext();
116
144
  const shouldRenderMobileTabs = !aboveMD || (persistentUtility && !aboveXL) || !summaryExpanded;
117
145
  const caseHeaderBorderRadius = shouldRenderMobileTabs
118
146
  ? `0 0 ${utilitiesDetached ? borderRadius : 0} ${borderRadius}`
119
147
  : `${borderRadius} ${borderRadius} 0 0`;
120
- const caseTypeHeaderColors = getCaseTypeHeaderColors(theme, color);
121
- const headerBackgroundColor = caseTypeHeaderColors?.headerBackground ?? background;
122
- const foregroundColor = caseTypeHeaderColors
123
- ? readableColor(headerBackgroundColor)
124
- : calculateForegroundColor(headerBackgroundColor, caseHeaderForegroundColor);
148
+ const { headerBackground, foregroundColor } = getCaseViewColors(theme, color);
125
149
  return css `
126
- background: ${headerBackgroundColor};
150
+ background: ${headerBackground};
127
151
  color: ${foregroundColor};
128
152
  padding: ${spacing} calc(2 * ${spacing});
129
153
  position: relative;
@@ -165,39 +189,27 @@ StyledFollowIconWrap.defaultProps = defaultThemeProp;
165
189
  export const StyledSubheading = styled.p ``;
166
190
  StyledSubheading.defaultProps = defaultThemeProp;
167
191
  export const StyledCaseHeaderPromotedAction = styled(Button)(({ theme }) => {
168
- const { base: { palette: { interactive } }, components: { 'case-view': { header: { background, 'foreground-color': foregroundColor } } } } = theme;
169
192
  const { color: caseTypeColor } = useCaseViewContext();
170
- const caseTypeHeaderColors = getCaseTypeHeaderColors(theme, caseTypeColor);
171
- /* If the foreground-color is auto, we calculate the text color and transparentColor based on the background color. */
172
- const headerBg = caseTypeHeaderColors?.headerBackground ?? background;
173
- const textColor = calculateForegroundColor(headerBg, foregroundColor);
174
- const isGradientBackground = !isSolidColor(headerBg);
175
- const backgroundColor = isGradientBackground ? readableColor(textColor) : headerBg;
176
- const interactiveUsable = getContrast(backgroundColor, interactive) >= 4.5;
177
- const color = !isGradientBackground && interactiveUsable ? interactive : textColor;
178
- let hoverBackground = rgba(color, 0.15);
179
- if (!isGradientBackground && interactiveUsable) {
180
- hoverBackground = readableHue(interactive, color);
181
- }
193
+ const { elementBackground, interactiveColor, hoverBackground } = getCaseViewColors(theme, caseTypeColor);
182
194
  return css `
183
- --button-background-color: ${backgroundColor};
184
- color: ${color};
195
+ --button-background-color: ${elementBackground};
196
+ color: ${interactiveColor};
185
197
  background-color: transparent;
186
- border-color: ${color};
198
+ border-color: ${interactiveColor};
187
199
 
188
200
  @media (hover: hover) {
189
201
  &:hover {
190
202
  --button-background-color: ${hoverBackground};
191
- color: ${color};
203
+ color: ${interactiveColor};
192
204
  background-color: ${hoverBackground};
193
- border-color: ${color};
205
+ border-color: ${interactiveColor};
194
206
  }
195
207
 
196
208
  &:active {
197
209
  --button-background-color: ${hoverBackground};
198
- color: ${color};
210
+ color: ${interactiveColor};
199
211
  background-color: ${hoverBackground};
200
- border-color: ${color};
212
+ border-color: ${interactiveColor};
201
213
  }
202
214
  }
203
215
  `;
@@ -225,16 +237,12 @@ export const StyledHeaderActions = styled.div(({ offsetEnd, theme }) => {
225
237
  });
226
238
  StyledHeaderActions.defaultProps = defaultThemeProp;
227
239
  export const StyledCaseHeaderText = styled.hgroup(({ theme }) => {
228
- const { components: { 'case-view': { header: { 'foreground-color': foregroundColor, background: caseHeaderBackground } } } } = theme;
229
- const { color: caseTypeColor } = useCaseViewContext();
230
- const caseTypeHeaderColors = getCaseTypeHeaderColors(theme, caseTypeColor);
231
- /* If the foreground-color is auto, we calculate the text color and transparentColor based on the background color. */
232
- const headerBg = caseTypeHeaderColors?.headerBackground ?? caseHeaderBackground;
233
- const color = calculateForegroundColor(headerBg, foregroundColor);
240
+ const { color } = useCaseViewContext();
241
+ const { foregroundColor, interactiveColor } = getCaseViewColors(theme, color);
234
242
  const fontSize = calculateFontSize(theme.base['font-size'], theme.base['font-scale']);
235
243
  const idStyle = css `
236
- color: ${color};
237
- font-size: ${fontSize.s};
244
+ color: ${foregroundColor};
245
+ font-size: ${fontSize.xs};
238
246
  font-weight: normal;
239
247
  `;
240
248
  return css `
@@ -267,7 +275,7 @@ export const StyledCaseHeaderText = styled.hgroup(({ theme }) => {
267
275
  }
268
276
 
269
277
  > ${StyledText} > ${StyledLink} {
270
- color: ${color};
278
+ color: ${interactiveColor};
271
279
  }
272
280
 
273
281
  + ${StyledHeaderActions} {
@@ -317,38 +325,32 @@ const popoverColorReset = (theme) => {
317
325
  `;
318
326
  };
319
327
  export const StyledHeaderSummary = styled.dl(({ theme }) => {
320
- const { base: { palette: { interactive } }, components: { 'case-view': { header: { 'foreground-color': foregroundColor, background } } } } = theme;
321
328
  const { color: caseTypeColor } = useCaseViewContext();
322
- const caseTypeHeaderColors = getCaseTypeHeaderColors(theme, caseTypeColor);
323
- /* If the foreground-color is auto, we calculate the text color and transparentColor based on the background color. */
324
- const headerBg = caseTypeHeaderColors?.headerBackground ?? background;
325
- const color = calculateForegroundColor(headerBg, foregroundColor);
326
- const { backgroundColor } = calculateBackgroundAndContrastColor(headerBg, foregroundColor);
327
- const interactiveUsable = meetsContrastGuidelines(backgroundColor, interactive).AA;
329
+ const { foregroundColor, interactiveUsable } = getCaseViewColors(theme, caseTypeColor);
328
330
  return css `
329
331
  max-width: 100%;
330
332
  min-width: 0;
331
333
 
332
334
  > ${StyledStackedFieldValue} {
333
335
  > ${StyledLabel} {
334
- color: ${color};
336
+ color: ${foregroundColor};
335
337
  white-space: nowrap;
336
338
  }
337
339
 
338
340
  > ${StyledFieldValue} {
339
- color: ${color};
341
+ color: ${foregroundColor};
340
342
  white-space: nowrap;
341
343
  }
342
344
 
343
345
  ${StyledButtonLink},
344
346
  ${StyledLink} {
345
347
  &:focus-visible {
346
- box-shadow: inset 0 0 0 0.0625rem ${color};
348
+ box-shadow: inset 0 0 0 0.0625rem ${foregroundColor};
347
349
  }
348
350
 
349
351
  ${!interactiveUsable &&
350
352
  css `
351
- color: ${color};
353
+ color: ${foregroundColor};
352
354
  text-decoration: underline;
353
355
  `}
354
356
  }
@@ -461,7 +463,7 @@ export const StyledExpandCollapseSummaryButton = styled(StyledExpandCollapseButt
461
463
  StyledExpandCollapseSummaryButton.defaultProps = defaultThemeProp;
462
464
  export const StyledCaseSummary = styled.div(({ theme, theme: { base: { spacing, palette: { 'border-line': borderLine }, 'border-radius': borderRadius, 'hit-area': { 'mouse-min': mouseMin, 'finger-min': fingerMin } }, components: { 'case-view': { summary: { detached } }, card: { background: cardBackground }, tabs: { detached: tabsDetached } } } }) => {
463
465
  const { summaryExpanded, aboveMD, color } = useCaseViewContext();
464
- const caseTypeHeaderColors = getCaseTypeHeaderColors(theme, color);
466
+ const { caseTypeColor, headerBackground, interactiveColor } = getCaseViewColors(theme, color);
465
467
  return css `
466
468
  background: ${cardBackground};
467
469
  position: relative;
@@ -496,20 +498,25 @@ export const StyledCaseSummary = styled.div(({ theme, theme: { base: { spacing,
496
498
  }
497
499
  `}
498
500
 
499
- ${caseTypeHeaderColors.caseTypeColor &&
501
+ ${caseTypeColor &&
502
+ theme.base['case-type-colors'] === 'header-and-icon' &&
500
503
  css `
501
504
  & ${StyledTabs} {
502
505
  &[aria-orientation='vertical']::after {
503
- background: ${caseTypeHeaderColors.caseTypeColor};
506
+ background: ${caseTypeColor};
504
507
  }
505
508
 
506
509
  &[aria-orientation='vertical']::before {
507
- background: ${caseTypeHeaderColors.headerBackground};
510
+ background: ${headerBackground};
508
511
  }
509
512
  }
510
513
 
511
514
  & ${StyledTab}[aria-selected='true'] {
512
- background-color: ${caseTypeHeaderColors.headerBackground};
515
+ background-color: ${headerBackground};
516
+
517
+ span {
518
+ color: ${interactiveColor};
519
+ }
513
520
  }
514
521
  `}
515
522
  `;
@@ -1 +1 @@
1
- {"version":3,"file":"CaseView.styles.js","sourceRoot":"","sources":["../../../src/components/CaseView/CaseView.styles.ts"],"names":[],"mappings":"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","sourcesContent":["import styled, { css } from 'styled-components';\nimport type { DefaultTheme } from 'styled-components';\nimport {\n getContrast,\n hideVisually,\n meetsContrastGuidelines,\n mix,\n rgba,\n transparentize\n} from 'polished';\nimport { useContext } from 'react';\n\nimport {\n Button,\n calculateFontSize,\n CardContent,\n defaultThemeProp,\n resolveSupplementalColor,\n StyledBreadcrumbs,\n StyledButtonLink,\n StyledFieldValue,\n StyledInlineFieldValueRow,\n StyledStackedFieldValue,\n StyledIcon,\n StyledLabel,\n StyledPopover,\n StyledText,\n StyledTooltip,\n tryCatch,\n FieldValueList,\n StyledLink,\n readableHue,\n StyledCard,\n Text,\n readableColor,\n AppShellContext,\n AIButton,\n StyledButton,\n calculateForegroundColor,\n calculateBackgroundAndContrastColor,\n isSolidColor,\n StyledSummaryListItem,\n StyledProgressBackdrop,\n Image,\n Icon,\n animations,\n useDirection\n} from '@pega/cosmos-react-core';\nimport type { FontSize } from '@pega/cosmos-react-core';\nimport { StyledMenu } from '@pega/cosmos-react-core/lib/components/Menu/Menu.styles';\nimport type { AppShellContextValue } from '@pega/cosmos-react-core/lib/components/AppShell/AppShellContext';\nimport { headerHeight } from '@pega/cosmos-react-core/lib/components/AppShell/AppShell.styles';\nimport { StyledCardHeader } from '@pega/cosmos-react-core/lib/components/Card/CardHeader';\nimport {\n StyledAllTabsWrapper,\n StyledTabs,\n StylesAllTabsButtonWrapper\n} from '@pega/cosmos-react-core/lib/components/Tabs/Tabs.styles';\nimport {\n resizeDrawerMinWidth,\n resizeDrawerMaxWidth,\n resizeDrawerDefaultWidth\n} from '@pega/cosmos-react-core/lib/styles/constants';\nimport { StyledMenuButton } from '@pega/cosmos-react-core/lib/components/MenuButton/MenuButton';\nimport { StyledTab } from '@pega/cosmos-react-core/lib/components/Tabs/Tab';\nimport { StyledTabPanel } from '@pega/cosmos-react-core/lib/components/Tabs/TabPanel';\nimport { StyledCardContent } from '@pega/cosmos-react-core/lib/components/Card/CardContent';\n\nimport { StyledStage, StyledStageContainer, StyledStages } from '../Stages/Stages.styles';\nimport { StyledAssignments } from '../Assignments/Assignments.styles';\nimport { StyledAssignments as StyledHierarchicalAssignments } from '../HierarchicalAssignments/Assignments.styles';\nimport {\n StyledGenAICoachContainer,\n StyledInitialMessageContainer\n} from '../GenAICoach/GenAICoach.styles';\nimport { StyledTaskList } from '../Tasks/TaskList';\nimport { oneColumnDetailsColumnWidth } from '../Details/Details.styles';\n\nimport { useCaseViewContext } from './CaseView.context';\n\nconst labelWidth = '16ch';\nconst inlineEndButtonOffset = '0.375rem';\n\nexport const resolveCaseTypeColor = (\n theme: DefaultTheme,\n color: string | undefined\n): string | undefined => {\n if (!color) return undefined;\n const supplementalColor = resolveSupplementalColor(theme, color);\n if (supplementalColor !== undefined) return supplementalColor;\n return color;\n};\n\nconst mixCaseColorWithBackground = (color: string, background: string) =>\n mix(0.85, background, color);\n\nconst getCaseTypeHeaderColors = (\n theme: DefaultTheme,\n color: string | undefined\n): { caseTypeColor: string | undefined; headerBackground: string } => {\n const resolvedCaseTypeColor = resolveCaseTypeColor(theme, color);\n const headerBackground =\n resolvedCaseTypeColor &&\n theme.base['case-type-colors'] === 'header-and-icon' &&\n isSolidColor(theme.components.card.background)\n ? mixCaseColorWithBackground(resolvedCaseTypeColor, theme.components.card.background)\n : theme.components['case-view'].header.background;\n\n return { caseTypeColor: resolvedCaseTypeColor, headerBackground };\n};\n\nexport const StyledSummaryPrimaryList = styled(FieldValueList)<{\n wrapped?: boolean;\n}>(({ theme, wrapped }) => {\n const fontSizes = calculateFontSize(theme.base['font-size'], theme.base['font-scale']);\n const detached = theme.components['field-value-list'].inline.detached;\n\n return css`\n ${wrapped\n ? css`\n grid-template-columns: minmax(0, 1fr);\n `\n : css`\n ${detached &&\n css`\n gap: calc(${theme.base.spacing});\n `}\n grid-template-columns: ${labelWidth} auto;\n `}\n ${StyledFieldValue} {\n font-size: ${fontSizes[theme.components.text.h1['font-size'] as FontSize]};\n font-weight: ${theme.components.text.h1['font-weight']};\n\n > ${StyledButtonLink} {\n font-weight: inherit;\n }\n }\n `;\n});\n\nStyledSummaryPrimaryList.defaultProps = defaultThemeProp;\n\nexport const StyledSummarySecondaryList = styled(FieldValueList)(() => {\n return css`\n ${StyledStackedFieldValue} {\n grid-column: 1 / -1;\n }\n `;\n});\n\nexport const StyledCaseSummaryFields = styled.div(({ theme }) => {\n const {\n components: {\n 'field-value-list': {\n inline: { detached }\n }\n }\n } = theme;\n\n return (\n detached &&\n css`\n ${StyledSummaryPrimaryList} {\n padding-block-start: calc(${theme.components.card.padding} * 2);\n padding-inline: calc(${theme.components.card.padding} * 2);\n }\n\n ${StyledSummarySecondaryList} {\n padding: calc(${theme.components.card.padding} * 2);\n }\n `\n );\n});\n\nStyledCaseSummaryFields.defaultProps = defaultThemeProp;\n\nexport const StyledSummaryTabContent = styled(CardContent)(({ theme }) => {\n const {\n base: { spacing }\n } = theme;\n return css`\n ${StyledSummarySecondaryList} {\n > ${StyledStackedFieldValue} {\n max-width: ${oneColumnDetailsColumnWidth};\n }\n\n > ${StyledFieldValue}, > ${StyledInlineFieldValueRow} > ${StyledFieldValue} {\n max-width: calc(${oneColumnDetailsColumnWidth} - ${labelWidth} - 2 * ${spacing});\n }\n }\n `;\n});\n\nStyledSummaryTabContent.defaultProps = defaultThemeProp;\n\nexport const StyledSummaryHeading = styled(Text)(({ theme }) => {\n return css`\n margin-block-end: ${theme.base.spacing};\n `;\n});\n\nStyledSummaryHeading.defaultProps = defaultThemeProp;\n\nexport const StyledCaseViewImage = styled(Image)`\n max-height: 100%;\n`;\n\nexport const StyledCaseHeader = styled.div(({ theme }) => {\n const {\n components: {\n 'case-view': {\n header: { 'foreground-color': caseHeaderForegroundColor, background },\n summary: { detached: summaryDetached },\n utilities: { detached: utilitiesDetached }\n }\n },\n base: { 'border-radius': borderRadius, spacing, shadow, 'z-index': zIndex, palette }\n } = theme;\n const { aboveSM, aboveMD, color, persistentUtility, aboveXL, summaryExpanded, isPreview } =\n useCaseViewContext();\n const shouldRenderMobileTabs = !aboveMD || (persistentUtility && !aboveXL) || !summaryExpanded;\n const caseHeaderBorderRadius = shouldRenderMobileTabs\n ? `0 0 ${utilitiesDetached ? borderRadius : 0} ${borderRadius}`\n : `${borderRadius} ${borderRadius} 0 0`;\n\n const caseTypeHeaderColors = getCaseTypeHeaderColors(theme, color);\n const headerBackgroundColor = caseTypeHeaderColors?.headerBackground ?? background;\n\n const foregroundColor = caseTypeHeaderColors\n ? readableColor(headerBackgroundColor)\n : calculateForegroundColor(headerBackgroundColor, caseHeaderForegroundColor);\n\n return css`\n background: ${headerBackgroundColor};\n color: ${foregroundColor};\n padding: ${spacing} calc(2 * ${spacing});\n position: relative;\n\n ${summaryDetached &&\n css`\n border-bottom: 0.0625rem solid ${palette['border-line']};\n `}\n ${summaryDetached &&\n !isPreview &&\n aboveSM &&\n css`\n border-radius: ${caseHeaderBorderRadius};\n `}\n h1:focus-visible {\n outline: transparent;\n box-shadow: ${shadow.focus};\n }\n\n ${StyledMenu} {\n color: ${palette['foreground-color']};\n z-index: ${zIndex.popover + 1};\n }\n `;\n});\n\nStyledCaseHeader.defaultProps = defaultThemeProp;\n\nexport const StyledFollowIconWrap = styled.label`\n font-size: 1.25rem;\n\n input {\n ${hideVisually}\n }\n\n input:focus + svg {\n box-shadow: ${({ theme }) => theme.base.shadow.focus};\n }\n`;\n\nStyledFollowIconWrap.defaultProps = defaultThemeProp;\n\nexport const StyledSubheading = styled.p``;\n\nStyledSubheading.defaultProps = defaultThemeProp;\n\nexport const StyledCaseHeaderPromotedAction = styled(Button)(({ theme }) => {\n const {\n base: {\n palette: { interactive }\n },\n components: {\n 'case-view': {\n header: { background, 'foreground-color': foregroundColor }\n }\n }\n } = theme;\n\n const { color: caseTypeColor } = useCaseViewContext();\n const caseTypeHeaderColors = getCaseTypeHeaderColors(theme, caseTypeColor);\n\n /* If the foreground-color is auto, we calculate the text color and transparentColor based on the background color. */\n const headerBg = caseTypeHeaderColors?.headerBackground ?? background;\n const textColor = calculateForegroundColor(headerBg, foregroundColor);\n\n const isGradientBackground = !isSolidColor(headerBg);\n const backgroundColor = isGradientBackground ? readableColor(textColor) : headerBg;\n const interactiveUsable = getContrast(backgroundColor, interactive) >= 4.5;\n const color = !isGradientBackground && interactiveUsable ? interactive : textColor;\n\n let hoverBackground = rgba(color, 0.15);\n if (!isGradientBackground && interactiveUsable) {\n hoverBackground = readableHue(interactive, color);\n }\n return css`\n --button-background-color: ${backgroundColor};\n color: ${color};\n background-color: transparent;\n border-color: ${color};\n\n @media (hover: hover) {\n &:hover {\n --button-background-color: ${hoverBackground};\n color: ${color};\n background-color: ${hoverBackground};\n border-color: ${color};\n }\n\n &:active {\n --button-background-color: ${hoverBackground};\n color: ${color};\n background-color: ${hoverBackground};\n border-color: ${color};\n }\n }\n `;\n});\n\nStyledCaseHeaderPromotedAction.defaultProps = defaultThemeProp;\n\nexport const StyledHeaderActions = styled.div<{ offsetEnd: boolean }>(({ offsetEnd, theme }) => {\n return css`\n margin-inline-start: auto;\n padding-block: ${theme.base.spacing};\n padding-inline-start: calc(2 * ${theme.base.spacing});\n\n ${offsetEnd &&\n css`\n padding-inline-end: ${inlineEndButtonOffset};\n `};\n\n ${StyledButton}:not(${StyledCaseHeaderPromotedAction}) {\n margin-inline-start: 0;\n }\n\n ${StyledCaseHeaderPromotedAction}:not(:has(+ ${StyledCaseHeaderPromotedAction})) {\n margin-inline-end: ${theme.base.spacing};\n }\n `;\n});\n\nStyledHeaderActions.defaultProps = defaultThemeProp;\n\nexport const StyledCaseHeaderText = styled.hgroup(({ theme }) => {\n const {\n components: {\n 'case-view': {\n header: { 'foreground-color': foregroundColor, background: caseHeaderBackground }\n }\n }\n } = theme;\n\n const { color: caseTypeColor } = useCaseViewContext();\n const caseTypeHeaderColors = getCaseTypeHeaderColors(theme, caseTypeColor);\n\n /* If the foreground-color is auto, we calculate the text color and transparentColor based on the background color. */\n const headerBg = caseTypeHeaderColors?.headerBackground ?? caseHeaderBackground;\n const color = calculateForegroundColor(headerBg, foregroundColor);\n\n const fontSize = calculateFontSize(theme.base['font-size'], theme.base['font-scale']);\n\n const idStyle = css`\n color: ${color};\n font-size: ${fontSize.s};\n font-weight: normal;\n `;\n\n return css`\n word-break: break-word;\n\n ${StyledSubheading} {\n ${idStyle}\n }\n\n ${StyledBreadcrumbs} {\n max-width: 100%;\n\n > a,\n > span,\n > button,\n > svg {\n ${idStyle}\n }\n\n > a,\n > button {\n &:focus {\n box-shadow: ${theme.base.shadow.focus};\n }\n }\n\n ${StyledPopover}:not(${StyledTooltip}) {\n color: ${theme.base.palette['foreground-color']};\n }\n }\n\n > ${StyledText} > ${StyledLink} {\n color: ${color};\n }\n\n + ${StyledHeaderActions} {\n padding-inline-start: 0;\n }\n `;\n});\n\nStyledCaseHeaderText.defaultProps = defaultThemeProp;\n\nexport const StyledHeaderSummaryBlock = styled.div<{ hasItems: boolean }>(({ hasItems, theme }) => {\n const {\n base: {\n spacing,\n palette: { 'brand-primary': primary }\n }\n } = theme;\n\n const color = readableColor(primary);\n const transparentColor = tryCatch(() => transparentize(0.5, color));\n\n return css`\n ${hasItems &&\n css`\n border-inline-start: 0.0625rem solid ${transparentColor};\n `}\n ${StyledStackedFieldValue}:first-child {\n margin-inline-start: calc(2 * ${spacing});\n }\n `;\n});\n\nStyledHeaderSummaryBlock.defaultProps = defaultThemeProp;\n\nconst popoverColorReset = (theme: DefaultTheme) => {\n const {\n base: {\n palette: { interactive, light, 'foreground-color': baseForeground }\n }\n } = theme;\n\n return css`\n ${StyledPopover}:not(${StyledTooltip}) {\n color: ${baseForeground};\n\n ${StyledButtonLink},\n ${StyledLink} {\n color: ${interactive};\n text-decoration: none;\n\n &:hover,\n &:active {\n text-decoration: underline;\n }\n\n &:focus {\n box-shadow:\n inset 0 0 0 0.0625rem ${light},\n 0 0 0.125rem 0.0625rem ${interactive};\n }\n }\n }\n `;\n};\n\nexport const StyledHeaderSummary = styled.dl(({ theme }) => {\n const {\n base: {\n palette: { interactive }\n },\n components: {\n 'case-view': {\n header: { 'foreground-color': foregroundColor, background }\n }\n }\n } = theme;\n\n const { color: caseTypeColor } = useCaseViewContext();\n const caseTypeHeaderColors = getCaseTypeHeaderColors(theme, caseTypeColor);\n\n /* If the foreground-color is auto, we calculate the text color and transparentColor based on the background color. */\n const headerBg = caseTypeHeaderColors?.headerBackground ?? background;\n const color = calculateForegroundColor(headerBg, foregroundColor);\n\n const { backgroundColor } = calculateBackgroundAndContrastColor(headerBg, foregroundColor);\n const interactiveUsable = meetsContrastGuidelines(backgroundColor, interactive).AA;\n\n return css`\n max-width: 100%;\n min-width: 0;\n\n > ${StyledStackedFieldValue} {\n > ${StyledLabel} {\n color: ${color};\n white-space: nowrap;\n }\n\n > ${StyledFieldValue} {\n color: ${color};\n white-space: nowrap;\n }\n\n ${StyledButtonLink},\n ${StyledLink} {\n &:focus-visible {\n box-shadow: inset 0 0 0 0.0625rem ${color};\n }\n\n ${!interactiveUsable &&\n css`\n color: ${color};\n text-decoration: underline;\n `}\n }\n\n ${popoverColorReset(theme)}\n }\n `;\n});\n\nStyledHeaderSummary.defaultProps = defaultThemeProp;\n\nexport const StyledHeaderSummaryValue = styled(StyledFieldValue)<{\n bold?: boolean;\n truncate?: boolean;\n theme: DefaultTheme;\n}>(({ bold, truncate, theme }) => {\n const {\n base: {\n 'content-width': { xs }\n },\n components: {\n text: {\n h1: { 'font-weight': h1Weight }\n }\n }\n } = theme;\n\n return css`\n overflow: hidden;\n text-overflow: ellipsis;\n\n ${truncate &&\n css`\n max-width: ${xs};\n `}\n ${bold &&\n css`\n font-weight: ${h1Weight};\n `}\n /*\n * :not([hidden]) necessary to prevent hidden span with preview a11y instructions from\n * factoring into scrollWidth of element when determining truncation.\n */\n > :not([hidden]) {\n display: inline;\n }\n `;\n});\n\nStyledHeaderSummaryValue.defaultProps = defaultThemeProp;\n\nexport const StyledCaseSummaryInfo = styled.div(\n ({\n theme: {\n base: { 'border-radius': borderRadius },\n components: {\n tabs: { detached: tabsDetached },\n card: { background }\n }\n }\n }) => {\n const { intelligentGuidance } = useCaseViewContext();\n\n return css`\n overflow: auto;\n flex: 1;\n ${tabsDetached &&\n css`\n background: ${background};\n border-radius: ${borderRadius};\n border-start-start-radius: 0;\n border-start-end-radius: 0;\n `}\n ${intelligentGuidance &&\n css`\n /* Accounts for collapsed intelligentGuidance list covering summary panel content when fully scrolled. */\n padding-block-end: 4rem;\n `}\n `;\n }\n);\n\nStyledCaseSummaryInfo.defaultProps = defaultThemeProp;\n\nexport const StyledCaseSummaryContainer = styled.div(({ theme }) => {\n const {\n components: {\n 'field-value-list': {\n inline: { detached }\n },\n card: { background }\n }\n } = theme;\n return css`\n padding: calc(1.5 * ${theme.base.spacing}) calc(${theme.components.card.padding} * 2);\n\n ${detached &&\n css`\n padding: 0;\n background: ${background};\n `}\n `;\n});\n\nStyledCaseSummaryContainer.defaultProps = defaultThemeProp;\n\nexport const StyledExpandCollapseButton = styled(Button)(() => {\n return css`\n border: none;\n\n ${StyledIcon} {\n width: 1.5rem;\n height: 1.5rem;\n }\n `;\n});\n\nStyledExpandCollapseButton.defaultProps = defaultThemeProp;\n\nexport const StyledExpandCollapseSummaryButton = styled(StyledExpandCollapseButton)(({ theme }) => {\n const { summaryExpanded } = useCaseViewContext();\n\n return css`\n --half-compact-btn-height: calc(${theme.base['hit-area'].compact} / 2);\n --half-btn-compact-difference: calc(\n (${theme.base['hit-area'].mouse} - ${theme.base['hit-area'].compact}) / 2\n );\n --half-case-icon-compact-difference: calc(\n ((4 * ${theme.base.spacing}) - ${theme.base['hit-area'].compact}) / 2\n );\n @media (pointer: coarse) {\n --half-btn-compact-difference: calc(\n (${theme.base['hit-area'].finger} - ${theme.base['hit-area'].compact}) / 2\n );\n }\n position: absolute;\n z-index: 1;\n box-shadow: ${theme.base.shadow.low};\n\n ${summaryExpanded\n ? css`\n inset-block-start: calc(2 * ${theme.base.spacing} + var(--half-btn-compact-difference));\n inset-inline-start: calc(100% - var(--half-compact-btn-height));\n `\n : css`\n inset-block-end: calc(var(--half-compact-btn-height) * -1);\n inset-inline-start: calc(\n 2 * ${theme.base.spacing} + var(--half-case-icon-compact-difference)\n );\n `}\n `;\n});\n\nStyledExpandCollapseSummaryButton.defaultProps = defaultThemeProp;\n\nexport const StyledCaseSummary = styled.div(\n ({\n theme,\n theme: {\n base: {\n spacing,\n palette: { 'border-line': borderLine },\n 'border-radius': borderRadius,\n 'hit-area': { 'mouse-min': mouseMin, 'finger-min': fingerMin }\n },\n components: {\n 'case-view': {\n summary: { detached }\n },\n card: { background: cardBackground },\n tabs: { detached: tabsDetached }\n }\n }\n }) => {\n const { summaryExpanded, aboveMD, color } = useCaseViewContext();\n const caseTypeHeaderColors = getCaseTypeHeaderColors(theme, color);\n\n return css`\n background: ${cardBackground};\n position: relative;\n height: 100%;\n ${aboveMD &&\n summaryExpanded &&\n css`\n width: 25rem;\n `}\n\n ${detached &&\n css`\n border-radius: ${borderRadius};\n --border-radius: calc(${borderRadius} * 0.5);\n `}\n\n ${tabsDetached &&\n css`\n & ${StyledTabs} {\n &[aria-orientation='vertical'] {\n padding-top: calc(1.5 * ${spacing});\n border-block-start: 0.0625rem solid ${borderLine};\n\n & ${StyledTab} {\n height: ${mouseMin};\n\n @media (pointer: coarse) {\n height: ${fingerMin};\n }\n }\n }\n }\n `}\n\n ${caseTypeHeaderColors.caseTypeColor &&\n css`\n & ${StyledTabs} {\n &[aria-orientation='vertical']::after {\n background: ${caseTypeHeaderColors.caseTypeColor};\n }\n\n &[aria-orientation='vertical']::before {\n background: ${caseTypeHeaderColors.headerBackground};\n }\n }\n\n & ${StyledTab}[aria-selected='true'] {\n background-color: ${caseTypeHeaderColors.headerBackground};\n }\n `}\n `;\n }\n);\n\nStyledCaseSummary.defaultProps = defaultThemeProp;\n\nexport const StyledTasks = styled.div(\n ({\n theme: {\n base: { spacing }\n }\n }) => {\n return css`\n &:not(:has(${StyledCard})) {\n /* Add negative top margin to compensate extra row-gap due to empty Tasks container */\n margin-block-start: calc(-2 * ${spacing});\n }\n `;\n }\n);\nStyledTasks.defaultProps = defaultThemeProp;\n\nexport const StyledTabPanelWrapper = styled.div(\n ({\n theme: {\n base: {\n animation: { speed, timing }\n },\n components: {\n card: { 'border-radius': cardBorderRadius }\n }\n }\n }) => {\n const { start } = useDirection();\n\n return css`\n ${StyledTabPanel} {\n ${StyledProgressBackdrop} {\n border-radius: ${cardBorderRadius};\n }\n }\n\n /* Top-level horizontal tabs (with or without overflow \"All tabs\" button) - slide in from top */\n ${StyledTabs} ~ &,\n ${StyledAllTabsWrapper} ~ & {\n position: relative;\n z-index: 0;\n\n > ${StyledTabPanel} {\n --reveal-from: 0.7;\n --slide-in-y-start-offset: -0.8rem;\n animation-name: ${animations.reveal}, ${animations.slideInYStart};\n animation-duration: max(calc(${speed} * 2), 1ms);\n animation-timing-function: ${timing.ease};\n\n @media (prefers-reduced-motion: reduce) {\n animation-duration: 1ms;\n }\n }\n }\n\n /* Top-level vertical tabs - slide in from start*/\n &:not(${StyledTabs} ~ &):not(${StyledAllTabsWrapper} ~ &) > ${StyledTabPanel} {\n ${start === 'right'\n ? css`\n --slide-in-x-end-offset: 1.5rem;\n animation-name: ${animations.reveal}, ${animations.slideInXEnd};\n `\n : css`\n --slide-in-x-start-offset: -1.5rem;\n animation-name: ${animations.reveal}, ${animations.slideInXStart};\n `}\n animation-duration: max(calc(${speed} * 2), 1ms);\n animation-timing-function: ${timing.ease};\n\n @media (prefers-reduced-motion: reduce) {\n animation-duration: 1ms;\n }\n }\n\n /* Nested tab panels - always fade only */\n ${StyledTabPanel} & ${StyledTabPanel} {\n --reveal-from: 0.7;\n animation-name: ${animations.reveal};\n animation-duration: max(calc(${speed} * 2), 1ms);\n animation-timing-function: ${timing.ease};\n\n @media (prefers-reduced-motion: reduce) {\n animation-duration: 1ms;\n }\n }\n `;\n }\n);\n\nStyledTabPanelWrapper.defaultProps = defaultThemeProp;\n\n// This component defintion was primarily required to conditionally hide empty div and avoid unnecessary row gap in work area.\nexport const StyledBannersStagesTasksContainer = styled.div(() => {\n return css`\n &:has(> ${StyledTasks}:only-child > :only-child:empty[data-flow]) {\n display: none;\n }\n `;\n});\n\nexport const StyledWorkArea = styled.div(\n ({\n theme: {\n base: {\n palette: { 'border-line': borderLine },\n spacing,\n 'border-radius': borderRadius,\n breakpoints\n },\n components: {\n 'case-view': {\n assignments: {\n detached: assignmentDetached,\n background: assignmentBackground,\n 'foreground-color': assignmentForegroundColor\n }\n },\n tabs: { detached: tabsDetached },\n card: { background, 'foreground-color': foregroundColor, 'border-radius': cardBorderRadius }\n }\n }\n }) => {\n const { backgroundColor } = calculateBackgroundAndContrastColor(background, foregroundColor);\n const foregroundColorForAssignment = calculateForegroundColor(\n assignmentBackground,\n assignmentForegroundColor\n );\n const { summaryExpanded, aboveMD, intelligentGuidance, isPreview } = useCaseViewContext();\n let pbeRem = 0;\n\n if (intelligentGuidance) {\n pbeRem = aboveMD && !summaryExpanded ? 4 : 6;\n }\n\n return css`\n grid-area: work-area;\n padding: calc(2 * ${spacing});\n @media (width < ${breakpoints.sm}) {\n padding: calc(2 * ${spacing}) calc(0.75 * ${spacing});\n }\n\n /* Prevents unnecessary gap when case view has neither stages nor assignments */\n &:has(> ${StyledBannersStagesTasksContainer} > ${StyledTasks}:first-child:empty) {\n ${StyledBannersStagesTasksContainer} {\n display: none;\n }\n }\n\n ${aboveMD &&\n css`\n padding: calc(2 * ${spacing}) 0;\n\n /* This is required to make scrollStick work. */\n ${!isPreview &&\n css`\n height: max-content;\n `}\n\n ${!summaryExpanded &&\n css`\n margin-inline-start: calc(2 * ${spacing});\n `}\n `}\n /* Order of style here is necessary for overriding styles above. */\n ${pbeRem > 0 &&\n css`\n /* Accounts for collapsed intelligentGuidance bubble covering work area content when fully scrolled. */\n padding-block-end: ${pbeRem}rem;\n `}\n &:has(${StyledAssignments}),\n &:has(${StyledHierarchicalAssignments}) {\n ${StyledStages} {\n border-block-end: 0.0625rem solid ${borderLine};\n\n &,\n ${StyledStageContainer}:first-of-type > ${StyledStage} {\n border-end-start-radius: 0;\n }\n\n &,\n ${StyledStageContainer}:last-of-type > ${StyledStage} {\n border-end-end-radius: 0;\n }\n }\n }\n\n ${tabsDetached &&\n css`\n ${StyledAllTabsWrapper} {\n border-start-start-radius: ${cardBorderRadius};\n border-start-end-radius: ${cardBorderRadius};\n\n ${StyledTabs} {\n border-radius: unset;\n border-start-end-radius: inherit;\n }\n\n ${StylesAllTabsButtonWrapper}, ${StyledMenuButton} {\n border-start-start-radius: inherit;\n }\n }\n `}\n\n /* Ensure horizontal tabs stay above sliding tab content */\n ${StyledTabs}[aria-orientation='horizontal'],\n ${StyledAllTabsWrapper} {\n z-index: 1;\n }\n\n &:has(${StyledStages}) {\n ${StyledCard}${StyledAssignments},\n ${StyledCard}${StyledHierarchicalAssignments} {\n margin-block-start: calc(-2 * ${spacing});\n border-start-start-radius: 0;\n border-start-end-radius: 0;\n }\n\n &:has(${StyledCard}${StyledAssignments} > ${StyledCardHeader}),\n &:has(${StyledCard}${StyledHierarchicalAssignments} > ${StyledCardHeader}) {\n ${StyledCard}${StyledAssignments},\n ${StyledCard}${StyledHierarchicalAssignments} {\n background: ${assignmentBackground};\n color: ${foregroundColorForAssignment};\n ${assignmentDetached &&\n css`\n ${StyledTaskList} {\n background-color: ${backgroundColor};\n border: solid 0.0625rem ${borderLine};\n border-radius: var(--border-radius, ${borderRadius});\n\n ${StyledSummaryListItem} {\n padding: calc(${spacing} / 2) ${spacing};\n }\n }\n `}\n }\n }\n }\n `;\n }\n);\n\nStyledWorkArea.defaultProps = defaultThemeProp;\n\nexport const StyledUtilitiesHeading = styled(Text)``;\n\nexport const StyledExpandCollapseUtilitiesButton = styled(StyledExpandCollapseButton)(() => {\n const { utilitiesExpanded } = useCaseViewContext();\n\n return css`\n /* Centers button over the utilities summary */\n margin-inline-end: ${utilitiesExpanded && '0.625rem'};\n `;\n});\n\nStyledExpandCollapseUtilitiesButton.defaultProps = defaultThemeProp;\n\nconst genAICoachReservedSpace = '4rem';\n\nexport const StyledUtilities = styled.div(({ theme }) => {\n const { utilitiesExpanded, aboveLG, aboveMD, hasGenAICoach } = useCaseViewContext();\n\n return css`\n height: max-content;\n margin-block: calc(2 * ${theme.base.spacing});\n\n ${StyledCardContent} ${StyledProgressBackdrop} {\n border-radius: ${theme.components.card['border-radius']};\n }\n\n /* If utilities are in an expanded drawer. */\n\n ${utilitiesExpanded &&\n aboveMD &&\n !aboveLG &&\n css`\n /* Maintains the column width to avoid page content shift. */\n visibility: hidden;\n `}\n ${aboveLG &&\n utilitiesExpanded &&\n css`\n width: 25rem;\n `}\n /* Selects the h2 in the utilities column, not the drawer. */\n ${StyledUtilitiesHeading} {\n /* Hide the utilities h2 under certain conditions.*/\n ${((aboveMD && !utilitiesExpanded) || (aboveMD && utilitiesExpanded && !aboveLG)) &&\n hideVisually()}\n }\n\n /* Reserve space below so the docked GenAI coach doesn't overlap utility items. */\n ${hasGenAICoach &&\n css`\n margin-block-end: ${genAICoachReservedSpace};\n `}\n `;\n});\n\nStyledUtilities.defaultProps = defaultThemeProp;\n\nexport const StyledSummary = styled.div(\n ({\n theme: {\n base: {\n spacing,\n breakpoints,\n 'z-index': zIndex,\n palette: { 'app-background': appBackground }\n },\n components: {\n 'app-shell': {\n nav: { background: navBackground }\n },\n 'case-view': {\n summary: { detached: summaryDetached },\n utilities: { detached: utilitiesDetached }\n }\n }\n }\n }) => {\n const { aboveSM, aboveMD, persistentUtility, aboveXL, summaryExpanded, isPreview } =\n useCaseViewContext();\n const shouldRenderMobileTabs = !aboveMD || (persistentUtility && !aboveXL) || !summaryExpanded;\n const inlineStartPadding =\n navBackground === appBackground && summaryExpanded ? `${spacing}` : `calc(${spacing} * 2)`;\n\n return css`\n top: ${summaryExpanded\n ? 'var(--top-offset)'\n : 'calc(var(--appshell-sticky-offset, var(--appshell-offset, 0rem)) + var(--appshell-top-offset, 0rem))'};\n width: 100%;\n z-index: ${zIndex.popover};\n\n ${aboveMD &&\n summaryExpanded &&\n css`\n height: var(--case-view-height);\n `}\n\n ${summaryDetached &&\n aboveSM &&\n css`\n padding-inline-start: ${inlineStartPadding};\n padding-inline-end: ${utilitiesDetached && shouldRenderMobileTabs\n ? `calc(2 * ${spacing})`\n : 0};\n padding-block: ${shouldRenderMobileTabs ? 0 : `calc(2 * ${spacing})`};\n `}\n\n ${isPreview &&\n css`\n padding: 0;\n `}\n\n ${aboveMD\n ? css`\n position: sticky;\n `\n : css`\n @media (min-height: ${breakpoints.sm}) {\n position: sticky;\n }\n `}\n `;\n }\n);\n\nStyledSummary.defaultProps = defaultThemeProp;\n\nexport const StyledCaseDrawer = styled.div<{\n previewActive?: AppShellContextValue['previewActive'];\n utilitiesExpanded?: boolean;\n}>(({ previewActive, utilitiesExpanded, theme }) => {\n return css`\n background-color: ${theme.base.palette['primary-background']};\n height: calc(\n 100dvh - var(--appshell-offset, ${headerHeight}) - var(--appshell-top-offset, 0rem) - var(\n --appshell-bottom-offset,\n 0rem\n )\n );\n inset-block-start: calc(\n var(--appshell-offset, ${headerHeight}) + var(--appshell-top-offset, 0rem)\n );\n z-index: ${theme.base['z-index'].drawer - 1};\n max-width: ${resizeDrawerMinWidth};\n\n ${previewActive &&\n css`\n @media (min-width: ${theme.base.breakpoints.md}) {\n inset-inline-end: ${resizeDrawerDefaultWidth};\n ${utilitiesExpanded &&\n css`\n inset-inline-end: var(--resize-drawer-width);\n `}\n }\n `}\n ${StyledGenAICoachContainer} {\n width: calc(${resizeDrawerMinWidth} - 2rem);\n }\n `;\n});\n\nStyledCaseDrawer.defaultProps = defaultThemeProp;\n\nexport const StyledCaseDrawerContent = styled.div(\n ({\n theme: {\n base: {\n palette: { 'app-background': appBackground },\n spacing\n }\n }\n }) => {\n const { hasGenAICoach } = useCaseViewContext();\n\n return css`\n background: ${appBackground};\n padding: calc(2 * ${spacing});\n height: 100%;\n overflow: auto;\n\n /* Reserve scroll space so the docked GenAI coach doesn't overlap utility items. */\n ${hasGenAICoach &&\n css`\n padding-block-end: ${genAICoachReservedSpace};\n `}\n `;\n }\n);\n\nStyledCaseDrawerContent.defaultProps = defaultThemeProp;\n\nexport const StyledPersistentUtility = styled.div<{ persistentUtilityExpanded?: boolean }>(\n ({ theme, persistentUtilityExpanded }) => {\n return css`\n width: ${persistentUtilityExpanded ? '100%' : theme.base['content-width'].md};\n overflow: auto;\n position: sticky;\n z-index: 1;\n height: var(--case-view-height);\n inset-block-start: var(--top-offset);\n inset-block-end: var(--bottom-offset);\n padding-block: calc(2 * ${theme.base.spacing});\n `;\n }\n);\n\nStyledPersistentUtility.defaultProps = defaultThemeProp;\n\nexport const StyledPersistentContainer = styled.div(({ theme }) => {\n return css`\n height: 100%;\n\n &&& ${StyledCardHeader} {\n padding-inline-start: ${theme.base.spacing};\n }\n `;\n});\n\nStyledPersistentContainer.defaultProps = defaultThemeProp;\n\nexport const StyledPersistentContent = styled.div(({ theme }) => {\n return css`\n height: calc(100% - calc(4 * ${theme.base.spacing}));\n `;\n});\n\nStyledPersistentContent.defaultProps = defaultThemeProp;\n\nexport const ScrollStick = styled.div`\n position: sticky;\n top: 0;\n`;\n\nexport const StyledCaseView = styled.div(\n ({\n theme: {\n base: {\n palette: { 'app-background': appBackground },\n spacing,\n 'border-radius': borderRadius\n },\n components: {\n 'case-view': {\n utilities: {\n detached: utilitiesDetached,\n background: utilitiesBackground,\n 'foreground-color': utilitiesForegroundColor\n },\n summary: { detached: summaryDetached }\n }\n }\n }\n }) => {\n const utilitiesForegroundComputed = calculateForegroundColor(\n utilitiesBackground,\n utilitiesForegroundColor\n );\n const { aboveSM, aboveMD, isPreview } = useCaseViewContext();\n\n return css`\n --top-offset: calc(\n var(--appshell-sticky-offset, var(--appshell-offset, 0rem)) + var(--summary-height) +\n ${aboveSM ? 'var(--appshell-top-offset, 0rem)' : '0rem'}\n );\n /* stylelint-disable-next-line length-zero-no-unit */\n --bottom-offset: var(--appshell-bottom-offset, 0rem);\n --case-view-height: calc(100dvh - var(--top-offset) - var(--bottom-offset));\n position: relative;\n min-height: var(--case-view-height);\n background: ${appBackground};\n\n ${aboveMD &&\n css`\n ${StyledUtilities}:last-child {\n margin-inline-end: calc(2 * ${spacing});\n color: ${utilitiesForegroundComputed};\n\n ${!utilitiesDetached &&\n css`\n background: ${utilitiesBackground};\n margin-inline-end: 0;\n padding: calc(2 * ${spacing});\n padding-inline-end: 0;\n border-start-start-radius: ${borderRadius};\n border-end-start-radius: ${borderRadius};\n border-start-end-radius: 0;\n border-end-end-radius: 0;\n\n ${StyledCard},\n ${StyledGenAICoachContainer} {\n border-start-end-radius: 0;\n border-end-end-radius: 0;\n }\n\n ${StyledGenAICoachContainer} {\n inset-inline-end: 0;\n }\n `}\n }\n `}\n\n ${aboveSM &&\n summaryDetached &&\n !isPreview &&\n css`\n &:not(:has(${StyledUtilities})) {\n ${StyledSummary} {\n padding-inline-end: calc(2 * ${spacing});\n }\n\n ${StyledCaseHeader} {\n border-end-end-radius: ${borderRadius};\n }\n }\n `}\n\n ${!aboveMD &&\n css`\n ${StyledGenAICoachContainer} {\n height: 42.5rem;\n\n ${StyledInitialMessageContainer} {\n justify-content: center;\n }\n }\n `}\n `;\n }\n);\n\nStyledCaseView.defaultProps = defaultThemeProp;\n\nexport const StyledUtilitiesHeader = styled(Text)`\n align-self: center;\n\n &:not(:focus) {\n ${hideVisually}\n }\n`;\n\nStyledUtilitiesHeader.defaultProps = defaultThemeProp;\n\nexport const StyledCoachButton = styled(AIButton)(({\n theme: {\n base: { spacing, breakpoints }\n }\n}) => {\n const { previewActive } = useContext(AppShellContext);\n\n return css`\n position: fixed;\n width: 2.75rem;\n height: 2.75rem;\n inset-block-end: calc(\n var(--footer-height, var(--appshell-bottom-offset, 0rem)) + 2 * ${spacing}\n );\n inset-inline-end: calc(2 * ${spacing});\n ${previewActive &&\n css`\n @media (min-width: ${breakpoints.md}) {\n margin-inline-end: min(var(--resize-drawer-width), ${resizeDrawerMaxWidth});\n }\n `}\n `;\n});\n\nStyledCoachButton.defaultProps = defaultThemeProp;\n\nexport const StyledUtilitiesWrapper = styled.div``;\n\nexport const StyledCaseViewIcon = styled(Icon)(({ theme }) => {\n const { color } = useCaseViewContext();\n const caseTypeColorsEnabled =\n theme.base['case-type-colors'] === 'icon-only' ||\n theme.base['case-type-colors'] === 'header-and-icon';\n const resolvedCaseTypeColor =\n caseTypeColorsEnabled && color !== undefined ? resolveCaseTypeColor(theme, color) : undefined;\n\n return css`\n --icon-color: ${resolvedCaseTypeColor ?? theme.base.palette['brand-accent']};\n --gradient-start: oklch(from var(--icon-color) calc(l - 0.3) calc(c * 1.5) h);\n --gradient-mid: oklch(from var(--icon-color) l c h);\n --gradient-end: oklch(from var(--icon-color) calc(l + 0.5) calc(c * 1.5) h);\n\n ${theme.components['case-view'].icon.color !== 'auto' &&\n css`\n color: ${theme.components['case-view'].icon.color};\n `}\n\n ${theme.components['case-view'].icon.background !== 'auto' &&\n css`\n background: ${theme.components['case-view'].icon.background};\n `}\n\n ${theme.components['case-view'].icon.background === 'auto' &&\n caseTypeColorsEnabled &&\n resolvedCaseTypeColor &&\n css`\n background: ${resolvedCaseTypeColor};\n `}\n\n ${theme.components['case-view'].icon['box-shadow'] !== 'auto' &&\n css`\n box-shadow: ${theme.components['case-view'].icon['box-shadow']};\n `}\n `;\n});\n\nStyledCaseViewIcon.defaultProps = defaultThemeProp;\n"]}
1
+ {"version":3,"file":"CaseView.styles.js","sourceRoot":"","sources":["../../../src/components/CaseView/CaseView.styles.ts"],"names":[],"mappings":"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","sourcesContent":["import styled, { css } from 'styled-components';\nimport type { DefaultTheme } from 'styled-components';\nimport { getContrast, hideVisually, mix, rgba, transparentize } from 'polished';\nimport { useContext } from 'react';\n\nimport {\n Button,\n calculateFontSize,\n CardContent,\n defaultThemeProp,\n resolveSupplementalColor,\n StyledBreadcrumbs,\n StyledButtonLink,\n StyledFieldValue,\n StyledInlineFieldValueRow,\n StyledStackedFieldValue,\n StyledIcon,\n StyledLabel,\n StyledPopover,\n StyledText,\n StyledTooltip,\n tryCatch,\n FieldValueList,\n StyledLink,\n readableHue,\n StyledCard,\n Text,\n readableColor,\n AppShellContext,\n AIButton,\n StyledButton,\n calculateForegroundColor,\n calculateBackgroundAndContrastColor,\n isSolidColor,\n StyledSummaryListItem,\n StyledProgressBackdrop,\n Image,\n Icon,\n animations,\n useDirection\n} from '@pega/cosmos-react-core';\nimport type { FontSize } from '@pega/cosmos-react-core';\nimport { StyledMenu } from '@pega/cosmos-react-core/lib/components/Menu/Menu.styles';\nimport type { AppShellContextValue } from '@pega/cosmos-react-core/lib/components/AppShell/AppShellContext';\nimport { headerHeight } from '@pega/cosmos-react-core/lib/components/AppShell/AppShell.styles';\nimport { StyledCardHeader } from '@pega/cosmos-react-core/lib/components/Card/CardHeader';\nimport {\n StyledAllTabsWrapper,\n StyledTabs,\n StylesAllTabsButtonWrapper\n} from '@pega/cosmos-react-core/lib/components/Tabs/Tabs.styles';\nimport {\n resizeDrawerMinWidth,\n resizeDrawerMaxWidth,\n resizeDrawerDefaultWidth,\n wcagContrast\n} from '@pega/cosmos-react-core/lib/styles/constants';\nimport { StyledMenuButton } from '@pega/cosmos-react-core/lib/components/MenuButton/MenuButton';\nimport { StyledTab } from '@pega/cosmos-react-core/lib/components/Tabs/Tab';\nimport { StyledTabPanel } from '@pega/cosmos-react-core/lib/components/Tabs/TabPanel';\nimport { StyledCardContent } from '@pega/cosmos-react-core/lib/components/Card/CardContent';\n\nimport { StyledStage, StyledStageContainer, StyledStages } from '../Stages/Stages.styles';\nimport { StyledAssignments } from '../Assignments/Assignments.styles';\nimport { StyledAssignments as StyledHierarchicalAssignments } from '../HierarchicalAssignments/Assignments.styles';\nimport {\n StyledGenAICoachContainer,\n StyledInitialMessageContainer\n} from '../GenAICoach/GenAICoach.styles';\nimport { StyledTaskList } from '../Tasks/TaskList';\nimport { oneColumnDetailsColumnWidth } from '../Details/Details.styles';\n\nimport { useCaseViewContext } from './CaseView.context';\n\nconst labelWidth = '16ch';\nconst inlineEndButtonOffset = '0.375rem';\n\nexport const resolveCaseTypeColor = (\n theme: DefaultTheme,\n color: string | undefined\n): string | undefined => {\n if (!color) return undefined;\n const supplementalColor = resolveSupplementalColor(theme, color);\n if (supplementalColor !== undefined) return supplementalColor;\n return color;\n};\n\nconst mixCaseColorWithBackground = (color: string, background: string) =>\n mix(0.85, background, color);\n\nconst getCaseTypeHeaderColors = (\n theme: DefaultTheme,\n color: string | undefined\n): { caseTypeColor: string | undefined; headerBackground: string; headerForeground: string } => {\n const resolvedCaseTypeColor = resolveCaseTypeColor(theme, color);\n const headerBackground =\n resolvedCaseTypeColor &&\n theme.base['case-type-colors'] === 'header-and-icon' &&\n isSolidColor(theme.components.card.background)\n ? mixCaseColorWithBackground(resolvedCaseTypeColor, theme.components.card.background)\n : theme.components['case-view'].header.background;\n const headerForeground =\n resolvedCaseTypeColor && theme.base['case-type-colors'] === 'header-and-icon'\n ? readableColor(headerBackground)\n : calculateForegroundColor(\n headerBackground,\n theme.components['case-view'].header['foreground-color']\n );\n return { caseTypeColor: resolvedCaseTypeColor ?? undefined, headerBackground, headerForeground };\n};\n\ninterface CaseViewColors {\n caseTypeColor: string | undefined;\n headerBackground: string;\n foregroundColor: string;\n elementBackground: string;\n interactiveColor: string;\n interactiveUsable: boolean;\n hoverBackground: string;\n}\n\nconst getCaseViewColors = (\n theme: DefaultTheme,\n caseTypeColor: string | undefined\n): CaseViewColors => {\n const interactive = theme.base.palette.interactive;\n\n const caseTypeHeaderColors = getCaseTypeHeaderColors(theme, caseTypeColor);\n const headerBackground = caseTypeHeaderColors.headerBackground;\n const foregroundColor = caseTypeHeaderColors.headerForeground;\n\n const isGradientBackground = !isSolidColor(headerBackground);\n\n const elementBackground = isGradientBackground\n ? readableColor(foregroundColor)\n : headerBackground;\n\n const interactiveUsable = getContrast(elementBackground, interactive) >= wcagContrast.AA;\n const interactiveColor =\n !isGradientBackground && interactiveUsable ? interactive : foregroundColor;\n\n let hoverBackground = rgba(interactiveColor, 0.15);\n\n if (!isGradientBackground && interactiveUsable) {\n hoverBackground = readableHue(interactive, interactiveColor);\n }\n\n return {\n caseTypeColor: caseTypeHeaderColors.caseTypeColor,\n headerBackground,\n foregroundColor,\n elementBackground,\n interactiveColor,\n interactiveUsable,\n hoverBackground\n };\n};\n\nexport const StyledSummaryPrimaryList = styled(FieldValueList)<{\n wrapped?: boolean;\n}>(({ theme, wrapped }) => {\n const fontSizes = calculateFontSize(theme.base['font-size'], theme.base['font-scale']);\n const detached = theme.components['field-value-list'].inline.detached;\n\n return css`\n ${wrapped\n ? css`\n grid-template-columns: minmax(0, 1fr);\n `\n : css`\n ${detached &&\n css`\n gap: calc(${theme.base.spacing});\n `}\n grid-template-columns: ${labelWidth} auto;\n `}\n ${StyledFieldValue} {\n font-size: ${fontSizes[theme.components.text.h1['font-size'] as FontSize]};\n font-weight: ${theme.components.text.h1['font-weight']};\n\n > ${StyledButtonLink} {\n font-weight: inherit;\n }\n }\n `;\n});\n\nStyledSummaryPrimaryList.defaultProps = defaultThemeProp;\n\nexport const StyledSummarySecondaryList = styled(FieldValueList)(() => {\n return css`\n ${StyledStackedFieldValue} {\n grid-column: 1 / -1;\n }\n `;\n});\n\nexport const StyledCaseSummaryFields = styled.div(({ theme }) => {\n const {\n components: {\n 'field-value-list': {\n inline: { detached }\n }\n }\n } = theme;\n\n return (\n detached &&\n css`\n ${StyledSummaryPrimaryList} {\n padding-block-start: calc(${theme.components.card.padding} * 2);\n padding-inline: calc(${theme.components.card.padding} * 2);\n }\n\n ${StyledSummarySecondaryList} {\n padding: calc(${theme.components.card.padding} * 2);\n }\n `\n );\n});\n\nStyledCaseSummaryFields.defaultProps = defaultThemeProp;\n\nexport const StyledSummaryTabContent = styled(CardContent)(({ theme }) => {\n const {\n base: { spacing }\n } = theme;\n return css`\n ${StyledSummarySecondaryList} {\n > ${StyledStackedFieldValue} {\n max-width: ${oneColumnDetailsColumnWidth};\n }\n\n > ${StyledFieldValue}, > ${StyledInlineFieldValueRow} > ${StyledFieldValue} {\n max-width: calc(${oneColumnDetailsColumnWidth} - ${labelWidth} - 2 * ${spacing});\n }\n }\n `;\n});\n\nStyledSummaryTabContent.defaultProps = defaultThemeProp;\n\nexport const StyledSummaryHeading = styled(Text)(({ theme }) => {\n return css`\n margin-block-end: ${theme.base.spacing};\n `;\n});\n\nStyledSummaryHeading.defaultProps = defaultThemeProp;\n\nexport const StyledCaseViewImage = styled(Image)`\n max-height: 100%;\n`;\n\nexport const StyledCaseHeader = styled.div(({ theme }) => {\n const {\n components: {\n 'case-view': {\n summary: { detached: summaryDetached },\n utilities: { detached: utilitiesDetached }\n }\n },\n base: { 'border-radius': borderRadius, spacing, shadow, 'z-index': zIndex, palette }\n } = theme;\n const { aboveSM, aboveMD, color, persistentUtility, aboveXL, summaryExpanded, isPreview } =\n useCaseViewContext();\n const shouldRenderMobileTabs = !aboveMD || (persistentUtility && !aboveXL) || !summaryExpanded;\n const caseHeaderBorderRadius = shouldRenderMobileTabs\n ? `0 0 ${utilitiesDetached ? borderRadius : 0} ${borderRadius}`\n : `${borderRadius} ${borderRadius} 0 0`;\n\n const { headerBackground, foregroundColor } = getCaseViewColors(theme, color);\n\n return css`\n background: ${headerBackground};\n color: ${foregroundColor};\n padding: ${spacing} calc(2 * ${spacing});\n position: relative;\n\n ${summaryDetached &&\n css`\n border-bottom: 0.0625rem solid ${palette['border-line']};\n `}\n ${summaryDetached &&\n !isPreview &&\n aboveSM &&\n css`\n border-radius: ${caseHeaderBorderRadius};\n `}\n h1:focus-visible {\n outline: transparent;\n box-shadow: ${shadow.focus};\n }\n\n ${StyledMenu} {\n color: ${palette['foreground-color']};\n z-index: ${zIndex.popover + 1};\n }\n `;\n});\n\nStyledCaseHeader.defaultProps = defaultThemeProp;\n\nexport const StyledFollowIconWrap = styled.label`\n font-size: 1.25rem;\n\n input {\n ${hideVisually}\n }\n\n input:focus + svg {\n box-shadow: ${({ theme }) => theme.base.shadow.focus};\n }\n`;\n\nStyledFollowIconWrap.defaultProps = defaultThemeProp;\n\nexport const StyledSubheading = styled.p``;\n\nStyledSubheading.defaultProps = defaultThemeProp;\n\nexport const StyledCaseHeaderPromotedAction = styled(Button)(({ theme }) => {\n const { color: caseTypeColor } = useCaseViewContext();\n\n const { elementBackground, interactiveColor, hoverBackground } = getCaseViewColors(\n theme,\n caseTypeColor\n );\n\n return css`\n --button-background-color: ${elementBackground};\n color: ${interactiveColor};\n background-color: transparent;\n border-color: ${interactiveColor};\n\n @media (hover: hover) {\n &:hover {\n --button-background-color: ${hoverBackground};\n color: ${interactiveColor};\n background-color: ${hoverBackground};\n border-color: ${interactiveColor};\n }\n\n &:active {\n --button-background-color: ${hoverBackground};\n color: ${interactiveColor};\n background-color: ${hoverBackground};\n border-color: ${interactiveColor};\n }\n }\n `;\n});\n\nStyledCaseHeaderPromotedAction.defaultProps = defaultThemeProp;\n\nexport const StyledHeaderActions = styled.div<{ offsetEnd: boolean }>(({ offsetEnd, theme }) => {\n return css`\n margin-inline-start: auto;\n padding-block: ${theme.base.spacing};\n padding-inline-start: calc(2 * ${theme.base.spacing});\n\n ${offsetEnd &&\n css`\n padding-inline-end: ${inlineEndButtonOffset};\n `};\n\n ${StyledButton}:not(${StyledCaseHeaderPromotedAction}) {\n margin-inline-start: 0;\n }\n\n ${StyledCaseHeaderPromotedAction}:not(:has(+ ${StyledCaseHeaderPromotedAction})) {\n margin-inline-end: ${theme.base.spacing};\n }\n `;\n});\n\nStyledHeaderActions.defaultProps = defaultThemeProp;\n\nexport const StyledCaseHeaderText = styled.hgroup(({ theme }) => {\n const { color } = useCaseViewContext();\n\n const { foregroundColor, interactiveColor } = getCaseViewColors(theme, color);\n\n const fontSize = calculateFontSize(theme.base['font-size'], theme.base['font-scale']);\n\n const idStyle = css`\n color: ${foregroundColor};\n font-size: ${fontSize.xs};\n font-weight: normal;\n `;\n\n return css`\n word-break: break-word;\n\n ${StyledSubheading} {\n ${idStyle}\n }\n\n ${StyledBreadcrumbs} {\n max-width: 100%;\n\n > a,\n > span,\n > button,\n > svg {\n ${idStyle}\n }\n\n > a,\n > button {\n &:focus {\n box-shadow: ${theme.base.shadow.focus};\n }\n }\n\n ${StyledPopover}:not(${StyledTooltip}) {\n color: ${theme.base.palette['foreground-color']};\n }\n }\n\n > ${StyledText} > ${StyledLink} {\n color: ${interactiveColor};\n }\n\n + ${StyledHeaderActions} {\n padding-inline-start: 0;\n }\n `;\n});\n\nStyledCaseHeaderText.defaultProps = defaultThemeProp;\n\nexport const StyledHeaderSummaryBlock = styled.div<{ hasItems: boolean }>(({ hasItems, theme }) => {\n const {\n base: {\n spacing,\n palette: { 'brand-primary': primary }\n }\n } = theme;\n\n const color = readableColor(primary);\n const transparentColor = tryCatch(() => transparentize(0.5, color));\n\n return css`\n ${hasItems &&\n css`\n border-inline-start: 0.0625rem solid ${transparentColor};\n `}\n ${StyledStackedFieldValue}:first-child {\n margin-inline-start: calc(2 * ${spacing});\n }\n `;\n});\n\nStyledHeaderSummaryBlock.defaultProps = defaultThemeProp;\n\nconst popoverColorReset = (theme: DefaultTheme) => {\n const {\n base: {\n palette: { interactive, light, 'foreground-color': baseForeground }\n }\n } = theme;\n\n return css`\n ${StyledPopover}:not(${StyledTooltip}) {\n color: ${baseForeground};\n\n ${StyledButtonLink},\n ${StyledLink} {\n color: ${interactive};\n text-decoration: none;\n\n &:hover,\n &:active {\n text-decoration: underline;\n }\n\n &:focus {\n box-shadow:\n inset 0 0 0 0.0625rem ${light},\n 0 0 0.125rem 0.0625rem ${interactive};\n }\n }\n }\n `;\n};\n\nexport const StyledHeaderSummary = styled.dl(({ theme }) => {\n const { color: caseTypeColor } = useCaseViewContext();\n\n const { foregroundColor, interactiveUsable } = getCaseViewColors(theme, caseTypeColor);\n\n return css`\n max-width: 100%;\n min-width: 0;\n\n > ${StyledStackedFieldValue} {\n > ${StyledLabel} {\n color: ${foregroundColor};\n white-space: nowrap;\n }\n\n > ${StyledFieldValue} {\n color: ${foregroundColor};\n white-space: nowrap;\n }\n\n ${StyledButtonLink},\n ${StyledLink} {\n &:focus-visible {\n box-shadow: inset 0 0 0 0.0625rem ${foregroundColor};\n }\n\n ${!interactiveUsable &&\n css`\n color: ${foregroundColor};\n text-decoration: underline;\n `}\n }\n\n ${popoverColorReset(theme)}\n }\n `;\n});\n\nStyledHeaderSummary.defaultProps = defaultThemeProp;\n\nexport const StyledHeaderSummaryValue = styled(StyledFieldValue)<{\n bold?: boolean;\n truncate?: boolean;\n theme: DefaultTheme;\n}>(({ bold, truncate, theme }) => {\n const {\n base: {\n 'content-width': { xs }\n },\n components: {\n text: {\n h1: { 'font-weight': h1Weight }\n }\n }\n } = theme;\n\n return css`\n overflow: hidden;\n text-overflow: ellipsis;\n\n ${truncate &&\n css`\n max-width: ${xs};\n `}\n ${bold &&\n css`\n font-weight: ${h1Weight};\n `}\n /*\n * :not([hidden]) necessary to prevent hidden span with preview a11y instructions from\n * factoring into scrollWidth of element when determining truncation.\n */\n > :not([hidden]) {\n display: inline;\n }\n `;\n});\n\nStyledHeaderSummaryValue.defaultProps = defaultThemeProp;\n\nexport const StyledCaseSummaryInfo = styled.div(\n ({\n theme: {\n base: { 'border-radius': borderRadius },\n components: {\n tabs: { detached: tabsDetached },\n card: { background }\n }\n }\n }) => {\n const { intelligentGuidance } = useCaseViewContext();\n\n return css`\n overflow: auto;\n flex: 1;\n ${tabsDetached &&\n css`\n background: ${background};\n border-radius: ${borderRadius};\n border-start-start-radius: 0;\n border-start-end-radius: 0;\n `}\n ${intelligentGuidance &&\n css`\n /* Accounts for collapsed intelligentGuidance list covering summary panel content when fully scrolled. */\n padding-block-end: 4rem;\n `}\n `;\n }\n);\n\nStyledCaseSummaryInfo.defaultProps = defaultThemeProp;\n\nexport const StyledCaseSummaryContainer = styled.div(({ theme }) => {\n const {\n components: {\n 'field-value-list': {\n inline: { detached }\n },\n card: { background }\n }\n } = theme;\n return css`\n padding: calc(1.5 * ${theme.base.spacing}) calc(${theme.components.card.padding} * 2);\n\n ${detached &&\n css`\n padding: 0;\n background: ${background};\n `}\n `;\n});\n\nStyledCaseSummaryContainer.defaultProps = defaultThemeProp;\n\nexport const StyledExpandCollapseButton = styled(Button)(() => {\n return css`\n border: none;\n\n ${StyledIcon} {\n width: 1.5rem;\n height: 1.5rem;\n }\n `;\n});\n\nStyledExpandCollapseButton.defaultProps = defaultThemeProp;\n\nexport const StyledExpandCollapseSummaryButton = styled(StyledExpandCollapseButton)(({ theme }) => {\n const { summaryExpanded } = useCaseViewContext();\n\n return css`\n --half-compact-btn-height: calc(${theme.base['hit-area'].compact} / 2);\n --half-btn-compact-difference: calc(\n (${theme.base['hit-area'].mouse} - ${theme.base['hit-area'].compact}) / 2\n );\n --half-case-icon-compact-difference: calc(\n ((4 * ${theme.base.spacing}) - ${theme.base['hit-area'].compact}) / 2\n );\n @media (pointer: coarse) {\n --half-btn-compact-difference: calc(\n (${theme.base['hit-area'].finger} - ${theme.base['hit-area'].compact}) / 2\n );\n }\n position: absolute;\n z-index: 1;\n box-shadow: ${theme.base.shadow.low};\n\n ${summaryExpanded\n ? css`\n inset-block-start: calc(2 * ${theme.base.spacing} + var(--half-btn-compact-difference));\n inset-inline-start: calc(100% - var(--half-compact-btn-height));\n `\n : css`\n inset-block-end: calc(var(--half-compact-btn-height) * -1);\n inset-inline-start: calc(\n 2 * ${theme.base.spacing} + var(--half-case-icon-compact-difference)\n );\n `}\n `;\n});\n\nStyledExpandCollapseSummaryButton.defaultProps = defaultThemeProp;\n\nexport const StyledCaseSummary = styled.div(\n ({\n theme,\n theme: {\n base: {\n spacing,\n palette: { 'border-line': borderLine },\n 'border-radius': borderRadius,\n 'hit-area': { 'mouse-min': mouseMin, 'finger-min': fingerMin }\n },\n components: {\n 'case-view': {\n summary: { detached }\n },\n card: { background: cardBackground },\n tabs: { detached: tabsDetached }\n }\n }\n }) => {\n const { summaryExpanded, aboveMD, color } = useCaseViewContext();\n const { caseTypeColor, headerBackground, interactiveColor } = getCaseViewColors(theme, color);\n\n return css`\n background: ${cardBackground};\n position: relative;\n height: 100%;\n ${aboveMD &&\n summaryExpanded &&\n css`\n width: 25rem;\n `}\n\n ${detached &&\n css`\n border-radius: ${borderRadius};\n --border-radius: calc(${borderRadius} * 0.5);\n `}\n\n ${tabsDetached &&\n css`\n & ${StyledTabs} {\n &[aria-orientation='vertical'] {\n padding-top: calc(1.5 * ${spacing});\n border-block-start: 0.0625rem solid ${borderLine};\n\n & ${StyledTab} {\n height: ${mouseMin};\n\n @media (pointer: coarse) {\n height: ${fingerMin};\n }\n }\n }\n }\n `}\n\n ${caseTypeColor &&\n theme.base['case-type-colors'] === 'header-and-icon' &&\n css`\n & ${StyledTabs} {\n &[aria-orientation='vertical']::after {\n background: ${caseTypeColor};\n }\n\n &[aria-orientation='vertical']::before {\n background: ${headerBackground};\n }\n }\n\n & ${StyledTab}[aria-selected='true'] {\n background-color: ${headerBackground};\n\n span {\n color: ${interactiveColor};\n }\n }\n `}\n `;\n }\n);\n\nStyledCaseSummary.defaultProps = defaultThemeProp;\n\nexport const StyledTasks = styled.div(\n ({\n theme: {\n base: { spacing }\n }\n }) => {\n return css`\n &:not(:has(${StyledCard})) {\n /* Add negative top margin to compensate extra row-gap due to empty Tasks container */\n margin-block-start: calc(-2 * ${spacing});\n }\n `;\n }\n);\nStyledTasks.defaultProps = defaultThemeProp;\n\nexport const StyledTabPanelWrapper = styled.div(\n ({\n theme: {\n base: {\n animation: { speed, timing }\n },\n components: {\n card: { 'border-radius': cardBorderRadius }\n }\n }\n }) => {\n const { start } = useDirection();\n\n return css`\n ${StyledTabPanel} {\n ${StyledProgressBackdrop} {\n border-radius: ${cardBorderRadius};\n }\n }\n\n /* Top-level horizontal tabs (with or without overflow \"All tabs\" button) - slide in from top */\n ${StyledTabs} ~ &,\n ${StyledAllTabsWrapper} ~ & {\n position: relative;\n z-index: 0;\n\n > ${StyledTabPanel} {\n --reveal-from: 0.7;\n --slide-in-y-start-offset: -0.8rem;\n animation-name: ${animations.reveal}, ${animations.slideInYStart};\n animation-duration: max(calc(${speed} * 2), 1ms);\n animation-timing-function: ${timing.ease};\n\n @media (prefers-reduced-motion: reduce) {\n animation-duration: 1ms;\n }\n }\n }\n\n /* Top-level vertical tabs - slide in from start*/\n &:not(${StyledTabs} ~ &):not(${StyledAllTabsWrapper} ~ &) > ${StyledTabPanel} {\n ${start === 'right'\n ? css`\n --slide-in-x-end-offset: 1.5rem;\n animation-name: ${animations.reveal}, ${animations.slideInXEnd};\n `\n : css`\n --slide-in-x-start-offset: -1.5rem;\n animation-name: ${animations.reveal}, ${animations.slideInXStart};\n `}\n animation-duration: max(calc(${speed} * 2), 1ms);\n animation-timing-function: ${timing.ease};\n\n @media (prefers-reduced-motion: reduce) {\n animation-duration: 1ms;\n }\n }\n\n /* Nested tab panels - always fade only */\n ${StyledTabPanel} & ${StyledTabPanel} {\n --reveal-from: 0.7;\n animation-name: ${animations.reveal};\n animation-duration: max(calc(${speed} * 2), 1ms);\n animation-timing-function: ${timing.ease};\n\n @media (prefers-reduced-motion: reduce) {\n animation-duration: 1ms;\n }\n }\n `;\n }\n);\n\nStyledTabPanelWrapper.defaultProps = defaultThemeProp;\n\n// This component defintion was primarily required to conditionally hide empty div and avoid unnecessary row gap in work area.\nexport const StyledBannersStagesTasksContainer = styled.div(() => {\n return css`\n &:has(> ${StyledTasks}:only-child > :only-child:empty[data-flow]) {\n display: none;\n }\n `;\n});\n\nexport const StyledWorkArea = styled.div(\n ({\n theme: {\n base: {\n palette: { 'border-line': borderLine },\n spacing,\n 'border-radius': borderRadius,\n breakpoints\n },\n components: {\n 'case-view': {\n assignments: {\n detached: assignmentDetached,\n background: assignmentBackground,\n 'foreground-color': assignmentForegroundColor\n }\n },\n tabs: { detached: tabsDetached },\n card: { background, 'foreground-color': foregroundColor, 'border-radius': cardBorderRadius }\n }\n }\n }) => {\n const { backgroundColor } = calculateBackgroundAndContrastColor(background, foregroundColor);\n const foregroundColorForAssignment = calculateForegroundColor(\n assignmentBackground,\n assignmentForegroundColor\n );\n const { summaryExpanded, aboveMD, intelligentGuidance, isPreview } = useCaseViewContext();\n let pbeRem = 0;\n\n if (intelligentGuidance) {\n pbeRem = aboveMD && !summaryExpanded ? 4 : 6;\n }\n\n return css`\n grid-area: work-area;\n padding: calc(2 * ${spacing});\n @media (width < ${breakpoints.sm}) {\n padding: calc(2 * ${spacing}) calc(0.75 * ${spacing});\n }\n\n /* Prevents unnecessary gap when case view has neither stages nor assignments */\n &:has(> ${StyledBannersStagesTasksContainer} > ${StyledTasks}:first-child:empty) {\n ${StyledBannersStagesTasksContainer} {\n display: none;\n }\n }\n\n ${aboveMD &&\n css`\n padding: calc(2 * ${spacing}) 0;\n\n /* This is required to make scrollStick work. */\n ${!isPreview &&\n css`\n height: max-content;\n `}\n\n ${!summaryExpanded &&\n css`\n margin-inline-start: calc(2 * ${spacing});\n `}\n `}\n /* Order of style here is necessary for overriding styles above. */\n ${pbeRem > 0 &&\n css`\n /* Accounts for collapsed intelligentGuidance bubble covering work area content when fully scrolled. */\n padding-block-end: ${pbeRem}rem;\n `}\n &:has(${StyledAssignments}),\n &:has(${StyledHierarchicalAssignments}) {\n ${StyledStages} {\n border-block-end: 0.0625rem solid ${borderLine};\n\n &,\n ${StyledStageContainer}:first-of-type > ${StyledStage} {\n border-end-start-radius: 0;\n }\n\n &,\n ${StyledStageContainer}:last-of-type > ${StyledStage} {\n border-end-end-radius: 0;\n }\n }\n }\n\n ${tabsDetached &&\n css`\n ${StyledAllTabsWrapper} {\n border-start-start-radius: ${cardBorderRadius};\n border-start-end-radius: ${cardBorderRadius};\n\n ${StyledTabs} {\n border-radius: unset;\n border-start-end-radius: inherit;\n }\n\n ${StylesAllTabsButtonWrapper}, ${StyledMenuButton} {\n border-start-start-radius: inherit;\n }\n }\n `}\n\n /* Ensure horizontal tabs stay above sliding tab content */\n ${StyledTabs}[aria-orientation='horizontal'],\n ${StyledAllTabsWrapper} {\n z-index: 1;\n }\n\n &:has(${StyledStages}) {\n ${StyledCard}${StyledAssignments},\n ${StyledCard}${StyledHierarchicalAssignments} {\n margin-block-start: calc(-2 * ${spacing});\n border-start-start-radius: 0;\n border-start-end-radius: 0;\n }\n\n &:has(${StyledCard}${StyledAssignments} > ${StyledCardHeader}),\n &:has(${StyledCard}${StyledHierarchicalAssignments} > ${StyledCardHeader}) {\n ${StyledCard}${StyledAssignments},\n ${StyledCard}${StyledHierarchicalAssignments} {\n background: ${assignmentBackground};\n color: ${foregroundColorForAssignment};\n ${assignmentDetached &&\n css`\n ${StyledTaskList} {\n background-color: ${backgroundColor};\n border: solid 0.0625rem ${borderLine};\n border-radius: var(--border-radius, ${borderRadius});\n\n ${StyledSummaryListItem} {\n padding: calc(${spacing} / 2) ${spacing};\n }\n }\n `}\n }\n }\n }\n `;\n }\n);\n\nStyledWorkArea.defaultProps = defaultThemeProp;\n\nexport const StyledUtilitiesHeading = styled(Text)``;\n\nexport const StyledExpandCollapseUtilitiesButton = styled(StyledExpandCollapseButton)(() => {\n const { utilitiesExpanded } = useCaseViewContext();\n\n return css`\n /* Centers button over the utilities summary */\n margin-inline-end: ${utilitiesExpanded && '0.625rem'};\n `;\n});\n\nStyledExpandCollapseUtilitiesButton.defaultProps = defaultThemeProp;\n\nconst genAICoachReservedSpace = '4rem';\n\nexport const StyledUtilities = styled.div(({ theme }) => {\n const { utilitiesExpanded, aboveLG, aboveMD, hasGenAICoach } = useCaseViewContext();\n\n return css`\n height: max-content;\n margin-block: calc(2 * ${theme.base.spacing});\n\n ${StyledCardContent} ${StyledProgressBackdrop} {\n border-radius: ${theme.components.card['border-radius']};\n }\n\n /* If utilities are in an expanded drawer. */\n\n ${utilitiesExpanded &&\n aboveMD &&\n !aboveLG &&\n css`\n /* Maintains the column width to avoid page content shift. */\n visibility: hidden;\n `}\n ${aboveLG &&\n utilitiesExpanded &&\n css`\n width: 25rem;\n `}\n /* Selects the h2 in the utilities column, not the drawer. */\n ${StyledUtilitiesHeading} {\n /* Hide the utilities h2 under certain conditions.*/\n ${((aboveMD && !utilitiesExpanded) || (aboveMD && utilitiesExpanded && !aboveLG)) &&\n hideVisually()}\n }\n\n /* Reserve space below so the docked GenAI coach doesn't overlap utility items. */\n ${hasGenAICoach &&\n css`\n margin-block-end: ${genAICoachReservedSpace};\n `}\n `;\n});\n\nStyledUtilities.defaultProps = defaultThemeProp;\n\nexport const StyledSummary = styled.div(\n ({\n theme: {\n base: {\n spacing,\n breakpoints,\n 'z-index': zIndex,\n palette: { 'app-background': appBackground }\n },\n components: {\n 'app-shell': {\n nav: { background: navBackground }\n },\n 'case-view': {\n summary: { detached: summaryDetached },\n utilities: { detached: utilitiesDetached }\n }\n }\n }\n }) => {\n const { aboveSM, aboveMD, persistentUtility, aboveXL, summaryExpanded, isPreview } =\n useCaseViewContext();\n const shouldRenderMobileTabs = !aboveMD || (persistentUtility && !aboveXL) || !summaryExpanded;\n const inlineStartPadding =\n navBackground === appBackground && summaryExpanded ? `${spacing}` : `calc(${spacing} * 2)`;\n\n return css`\n top: ${summaryExpanded\n ? 'var(--top-offset)'\n : 'calc(var(--appshell-sticky-offset, var(--appshell-offset, 0rem)) + var(--appshell-top-offset, 0rem))'};\n width: 100%;\n z-index: ${zIndex.popover};\n\n ${aboveMD &&\n summaryExpanded &&\n css`\n height: var(--case-view-height);\n `}\n\n ${summaryDetached &&\n aboveSM &&\n css`\n padding-inline-start: ${inlineStartPadding};\n padding-inline-end: ${utilitiesDetached && shouldRenderMobileTabs\n ? `calc(2 * ${spacing})`\n : 0};\n padding-block: ${shouldRenderMobileTabs ? 0 : `calc(2 * ${spacing})`};\n `}\n\n ${isPreview &&\n css`\n padding: 0;\n `}\n\n ${aboveMD\n ? css`\n position: sticky;\n `\n : css`\n @media (min-height: ${breakpoints.sm}) {\n position: sticky;\n }\n `}\n `;\n }\n);\n\nStyledSummary.defaultProps = defaultThemeProp;\n\nexport const StyledCaseDrawer = styled.div<{\n previewActive?: AppShellContextValue['previewActive'];\n utilitiesExpanded?: boolean;\n}>(({ previewActive, utilitiesExpanded, theme }) => {\n return css`\n background-color: ${theme.base.palette['primary-background']};\n height: calc(\n 100dvh - var(--appshell-offset, ${headerHeight}) - var(--appshell-top-offset, 0rem) - var(\n --appshell-bottom-offset,\n 0rem\n )\n );\n inset-block-start: calc(\n var(--appshell-offset, ${headerHeight}) + var(--appshell-top-offset, 0rem)\n );\n z-index: ${theme.base['z-index'].drawer - 1};\n max-width: ${resizeDrawerMinWidth};\n\n ${previewActive &&\n css`\n @media (min-width: ${theme.base.breakpoints.md}) {\n inset-inline-end: ${resizeDrawerDefaultWidth};\n ${utilitiesExpanded &&\n css`\n inset-inline-end: var(--resize-drawer-width);\n `}\n }\n `}\n ${StyledGenAICoachContainer} {\n width: calc(${resizeDrawerMinWidth} - 2rem);\n }\n `;\n});\n\nStyledCaseDrawer.defaultProps = defaultThemeProp;\n\nexport const StyledCaseDrawerContent = styled.div(\n ({\n theme: {\n base: {\n palette: { 'app-background': appBackground },\n spacing\n }\n }\n }) => {\n const { hasGenAICoach } = useCaseViewContext();\n\n return css`\n background: ${appBackground};\n padding: calc(2 * ${spacing});\n height: 100%;\n overflow: auto;\n\n /* Reserve scroll space so the docked GenAI coach doesn't overlap utility items. */\n ${hasGenAICoach &&\n css`\n padding-block-end: ${genAICoachReservedSpace};\n `}\n `;\n }\n);\n\nStyledCaseDrawerContent.defaultProps = defaultThemeProp;\n\nexport const StyledPersistentUtility = styled.div<{ persistentUtilityExpanded?: boolean }>(\n ({ theme, persistentUtilityExpanded }) => {\n return css`\n width: ${persistentUtilityExpanded ? '100%' : theme.base['content-width'].md};\n overflow: auto;\n position: sticky;\n z-index: 1;\n height: var(--case-view-height);\n inset-block-start: var(--top-offset);\n inset-block-end: var(--bottom-offset);\n padding-block: calc(2 * ${theme.base.spacing});\n `;\n }\n);\n\nStyledPersistentUtility.defaultProps = defaultThemeProp;\n\nexport const StyledPersistentContainer = styled.div(({ theme }) => {\n return css`\n height: 100%;\n\n &&& ${StyledCardHeader} {\n padding-inline-start: ${theme.base.spacing};\n }\n `;\n});\n\nStyledPersistentContainer.defaultProps = defaultThemeProp;\n\nexport const StyledPersistentContent = styled.div(({ theme }) => {\n return css`\n height: calc(100% - calc(4 * ${theme.base.spacing}));\n `;\n});\n\nStyledPersistentContent.defaultProps = defaultThemeProp;\n\nexport const ScrollStick = styled.div`\n position: sticky;\n top: 0;\n`;\n\nexport const StyledCaseView = styled.div(\n ({\n theme: {\n base: {\n palette: { 'app-background': appBackground },\n spacing,\n 'border-radius': borderRadius\n },\n components: {\n 'case-view': {\n utilities: {\n detached: utilitiesDetached,\n background: utilitiesBackground,\n 'foreground-color': utilitiesForegroundColor\n },\n summary: { detached: summaryDetached }\n }\n }\n }\n }) => {\n const utilitiesForegroundComputed = calculateForegroundColor(\n utilitiesBackground,\n utilitiesForegroundColor\n );\n const { aboveSM, aboveMD, isPreview } = useCaseViewContext();\n\n return css`\n --top-offset: calc(\n var(--appshell-sticky-offset, var(--appshell-offset, 0rem)) + var(--summary-height) +\n ${aboveSM ? 'var(--appshell-top-offset, 0rem)' : '0rem'}\n );\n /* stylelint-disable-next-line length-zero-no-unit */\n --bottom-offset: var(--appshell-bottom-offset, 0rem);\n --case-view-height: calc(100dvh - var(--top-offset) - var(--bottom-offset));\n position: relative;\n min-height: var(--case-view-height);\n background: ${appBackground};\n\n ${aboveMD &&\n css`\n ${StyledUtilities}:last-child {\n margin-inline-end: calc(2 * ${spacing});\n color: ${utilitiesForegroundComputed};\n\n ${!utilitiesDetached &&\n css`\n background: ${utilitiesBackground};\n margin-inline-end: 0;\n padding: calc(2 * ${spacing});\n padding-inline-end: 0;\n border-start-start-radius: ${borderRadius};\n border-end-start-radius: ${borderRadius};\n border-start-end-radius: 0;\n border-end-end-radius: 0;\n\n ${StyledCard},\n ${StyledGenAICoachContainer} {\n border-start-end-radius: 0;\n border-end-end-radius: 0;\n }\n\n ${StyledGenAICoachContainer} {\n inset-inline-end: 0;\n }\n `}\n }\n `}\n\n ${aboveSM &&\n summaryDetached &&\n !isPreview &&\n css`\n &:not(:has(${StyledUtilities})) {\n ${StyledSummary} {\n padding-inline-end: calc(2 * ${spacing});\n }\n\n ${StyledCaseHeader} {\n border-end-end-radius: ${borderRadius};\n }\n }\n `}\n\n ${!aboveMD &&\n css`\n ${StyledGenAICoachContainer} {\n height: 42.5rem;\n\n ${StyledInitialMessageContainer} {\n justify-content: center;\n }\n }\n `}\n `;\n }\n);\n\nStyledCaseView.defaultProps = defaultThemeProp;\n\nexport const StyledUtilitiesHeader = styled(Text)`\n align-self: center;\n\n &:not(:focus) {\n ${hideVisually}\n }\n`;\n\nStyledUtilitiesHeader.defaultProps = defaultThemeProp;\n\nexport const StyledCoachButton = styled(AIButton)(({\n theme: {\n base: { spacing, breakpoints }\n }\n}) => {\n const { previewActive } = useContext(AppShellContext);\n\n return css`\n position: fixed;\n width: 2.75rem;\n height: 2.75rem;\n inset-block-end: calc(\n var(--footer-height, var(--appshell-bottom-offset, 0rem)) + 2 * ${spacing}\n );\n inset-inline-end: calc(2 * ${spacing});\n ${previewActive &&\n css`\n @media (min-width: ${breakpoints.md}) {\n margin-inline-end: min(var(--resize-drawer-width), ${resizeDrawerMaxWidth});\n }\n `}\n `;\n});\n\nStyledCoachButton.defaultProps = defaultThemeProp;\n\nexport const StyledUtilitiesWrapper = styled.div``;\n\nexport const StyledCaseViewIcon = styled(Icon)(({ theme }) => {\n const { color } = useCaseViewContext();\n const caseTypeColorsEnabled =\n theme.base['case-type-colors'] === 'icon-only' ||\n theme.base['case-type-colors'] === 'header-and-icon';\n const resolvedCaseTypeColor =\n caseTypeColorsEnabled && color !== undefined ? resolveCaseTypeColor(theme, color) : undefined;\n\n return css`\n --icon-color: ${resolvedCaseTypeColor ?? theme.base.palette['brand-accent']};\n --gradient-start: oklch(from var(--icon-color) calc(l - 0.3) calc(c * 1.5) h);\n --gradient-mid: oklch(from var(--icon-color) l c h);\n --gradient-end: oklch(from var(--icon-color) calc(l + 0.5) calc(c * 1.5) h);\n\n ${theme.components['case-view'].icon.color !== 'auto' &&\n css`\n color: ${theme.components['case-view'].icon.color};\n `}\n\n ${theme.components['case-view'].icon.background !== 'auto' &&\n css`\n background: ${theme.components['case-view'].icon.background};\n `}\n\n ${theme.components['case-view'].icon.background === 'auto' &&\n caseTypeColorsEnabled &&\n resolvedCaseTypeColor &&\n css`\n background: ${resolvedCaseTypeColor};\n `}\n\n ${theme.components['case-view'].icon['box-shadow'] !== 'auto' &&\n css`\n box-shadow: ${theme.components['case-view'].icon['box-shadow']};\n `}\n `;\n});\n\nStyledCaseViewIcon.defaultProps = defaultThemeProp;\n"]}
package/package.json CHANGED
@@ -1,6 +1,6 @@
1
1
  {
2
2
  "name": "@pega/cosmos-react-work",
3
- "version": "9.0.0-build.29.11",
3
+ "version": "9.0.0-build.29.12",
4
4
  "license": "SEE LICENSE IN LICENSE",
5
5
  "author": "Pegasystems",
6
6
  "sideEffects": false,
@@ -14,8 +14,8 @@
14
14
  "build": "tsc -b tsconfig.build.json"
15
15
  },
16
16
  "dependencies": {
17
- "@pega/cosmos-react-core": "9.0.0-build.29.11",
18
- "@pega/cosmos-react-rte": "9.0.0-build.29.11",
17
+ "@pega/cosmos-react-core": "9.0.0-build.29.12",
18
+ "@pega/cosmos-react-rte": "9.0.0-build.29.12",
19
19
  "@types/react": "^17.0.62 || ^18.3.3",
20
20
  "@types/react-dom": "^17.0.20 || ^18.3.0",
21
21
  "polished": "^4.1.0",