@pega/cosmos-react-demos 5.0.0-dev.12.0 → 5.0.0-dev.12.1
This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
- package/jsx/work/CaseView/CaseView.mocks.d.ts +3 -1
- package/jsx/work/CaseView/CaseView.mocks.d.ts.map +1 -1
- package/jsx/work/CaseView/CaseView.mocks.jsx +49 -17
- package/jsx/work/CaseView/CaseView.mocks.jsx.map +1 -1
- package/lib/work/CaseView/CaseView.mocks.d.ts +3 -1
- package/lib/work/CaseView/CaseView.mocks.d.ts.map +1 -1
- package/lib/work/CaseView/CaseView.mocks.js +49 -17
- package/lib/work/CaseView/CaseView.mocks.js.map +1 -1
- package/package.json +7 -7
|
@@ -95,9 +95,11 @@ interface UtilitySummaryItemsArgs {
|
|
|
95
95
|
setDialogTarget: (instance: HTMLElement | null) => void;
|
|
96
96
|
setDialogContent: React.Dispatch<React.SetStateAction<ReactNode>>;
|
|
97
97
|
setShowDialog: React.Dispatch<React.SetStateAction<boolean>>;
|
|
98
|
+
dialogTarget: HTMLElement | null;
|
|
99
|
+
showDialog: boolean;
|
|
98
100
|
}
|
|
99
101
|
export declare const Utilities: ({ predictions, attachments, stakeholders, followers, tags }: UtilitiesArgs) => import("react").JSX.Element;
|
|
100
|
-
export declare const getUtilitiesSummaryItems: ({ predictions, attachments, stakeholders, followers, tags, hideStakeholdersAddNew, setDialogTarget, setDialogContent, setShowDialog }: UtilitySummaryItemsArgs) => NonNullable<CaseViewProps['utilitiesSummaryItems']>;
|
|
102
|
+
export declare const getUtilitiesSummaryItems: ({ predictions, attachments, stakeholders, followers, tags, hideStakeholdersAddNew, setDialogTarget, setDialogContent, setShowDialog, dialogTarget, showDialog }: UtilitySummaryItemsArgs) => NonNullable<CaseViewProps['utilitiesSummaryItems']>;
|
|
101
103
|
export declare const getCaseActions: () => {
|
|
102
104
|
text: string;
|
|
103
105
|
id: string;
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"CaseView.mocks.d.ts","sourceRoot":"","sources":["../../../src/work/CaseView/CaseView.mocks.tsx"],"names":[],"mappings":"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
|
|
1
|
+
{"version":3,"file":"CaseView.mocks.d.ts","sourceRoot":"","sources":["../../../src/work/CaseView/CaseView.mocks.tsx"],"names":[],"mappings":"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"}
|
|
@@ -381,16 +381,22 @@ export const Utilities = ({ predictions, attachments, stakeholders, followers, t
|
|
|
381
381
|
{tags && <TagsDemo />}
|
|
382
382
|
</>);
|
|
383
383
|
};
|
|
384
|
-
export const getUtilitiesSummaryItems = ({ predictions, attachments, stakeholders, followers, tags, hideStakeholdersAddNew, setDialogTarget, setDialogContent, setShowDialog }) => {
|
|
384
|
+
export const getUtilitiesSummaryItems = ({ predictions, attachments, stakeholders, followers, tags, hideStakeholdersAddNew, setDialogTarget, setDialogContent, setShowDialog, dialogTarget, showDialog }) => {
|
|
385
385
|
const items = [];
|
|
386
386
|
if (predictions)
|
|
387
387
|
items.push({
|
|
388
388
|
iconName: 'polaris',
|
|
389
389
|
name: 'Predictions',
|
|
390
390
|
onClick: e => {
|
|
391
|
-
|
|
392
|
-
|
|
393
|
-
|
|
391
|
+
if (dialogTarget !== e.currentTarget || !showDialog) {
|
|
392
|
+
setDialogTarget(e.currentTarget);
|
|
393
|
+
setDialogContent(<PredictionsDemo />);
|
|
394
|
+
setShowDialog(true);
|
|
395
|
+
}
|
|
396
|
+
else {
|
|
397
|
+
setDialogTarget(null);
|
|
398
|
+
setShowDialog(false);
|
|
399
|
+
}
|
|
394
400
|
}
|
|
395
401
|
});
|
|
396
402
|
if (attachments)
|
|
@@ -399,9 +405,15 @@ export const getUtilitiesSummaryItems = ({ predictions, attachments, stakeholder
|
|
|
399
405
|
count: 4,
|
|
400
406
|
name: 'Attachments',
|
|
401
407
|
onClick: e => {
|
|
402
|
-
|
|
403
|
-
|
|
404
|
-
|
|
408
|
+
if (dialogTarget !== e.currentTarget || !showDialog) {
|
|
409
|
+
setDialogTarget(e.currentTarget);
|
|
410
|
+
setDialogContent(<AttachmentsMock />);
|
|
411
|
+
setShowDialog(true);
|
|
412
|
+
}
|
|
413
|
+
else {
|
|
414
|
+
setDialogTarget(null);
|
|
415
|
+
setShowDialog(false);
|
|
416
|
+
}
|
|
405
417
|
}
|
|
406
418
|
});
|
|
407
419
|
if (stakeholders)
|
|
@@ -410,9 +422,15 @@ export const getUtilitiesSummaryItems = ({ predictions, attachments, stakeholder
|
|
|
410
422
|
count: 10,
|
|
411
423
|
name: 'Stakeholders',
|
|
412
424
|
onClick: e => {
|
|
413
|
-
|
|
414
|
-
|
|
415
|
-
|
|
425
|
+
if (dialogTarget !== e.currentTarget || !showDialog) {
|
|
426
|
+
setDialogTarget(e.currentTarget);
|
|
427
|
+
setDialogContent(<StakeHoldersDemo hideAddNew={hideStakeholdersAddNew}/>);
|
|
428
|
+
setShowDialog(true);
|
|
429
|
+
}
|
|
430
|
+
else {
|
|
431
|
+
setDialogTarget(null);
|
|
432
|
+
setShowDialog(false);
|
|
433
|
+
}
|
|
416
434
|
}
|
|
417
435
|
});
|
|
418
436
|
if (followers)
|
|
@@ -421,9 +439,15 @@ export const getUtilitiesSummaryItems = ({ predictions, attachments, stakeholder
|
|
|
421
439
|
count: 5,
|
|
422
440
|
name: 'Followers',
|
|
423
441
|
onClick: e => {
|
|
424
|
-
|
|
425
|
-
|
|
426
|
-
|
|
442
|
+
if (dialogTarget !== e.currentTarget || !showDialog) {
|
|
443
|
+
setDialogTarget(e.currentTarget);
|
|
444
|
+
setDialogContent(<MockSummaryList icon='user-star' name='Followers'/>);
|
|
445
|
+
setShowDialog(true);
|
|
446
|
+
}
|
|
447
|
+
else {
|
|
448
|
+
setDialogTarget(null);
|
|
449
|
+
setShowDialog(false);
|
|
450
|
+
}
|
|
427
451
|
}
|
|
428
452
|
});
|
|
429
453
|
if (tags)
|
|
@@ -432,9 +456,15 @@ export const getUtilitiesSummaryItems = ({ predictions, attachments, stakeholder
|
|
|
432
456
|
count: 10,
|
|
433
457
|
name: 'Tags',
|
|
434
458
|
onClick: e => {
|
|
435
|
-
|
|
436
|
-
|
|
437
|
-
|
|
459
|
+
if (dialogTarget !== e.currentTarget || !showDialog) {
|
|
460
|
+
setDialogTarget(e.currentTarget);
|
|
461
|
+
setDialogContent(<TagsDemo />);
|
|
462
|
+
setShowDialog(true);
|
|
463
|
+
}
|
|
464
|
+
else {
|
|
465
|
+
setDialogTarget(null);
|
|
466
|
+
setShowDialog(false);
|
|
467
|
+
}
|
|
438
468
|
}
|
|
439
469
|
});
|
|
440
470
|
return items;
|
|
@@ -580,7 +610,9 @@ export const CaseViewMock = ({ caseId: caseIdProp, heading, subheading, parentCa
|
|
|
580
610
|
hideStakeholdersAddNew,
|
|
581
611
|
setDialogTarget,
|
|
582
612
|
setDialogContent,
|
|
583
|
-
setShowDialog
|
|
613
|
+
setShowDialog,
|
|
614
|
+
dialogTarget,
|
|
615
|
+
showDialog
|
|
584
616
|
})} utilitiesExpanded={utilitiesExpanded} onToggleUtilities={() => {
|
|
585
617
|
setUtilitiesExpanded(cur => !cur);
|
|
586
618
|
}} intelligentGuidance={intelligentGuidance} banners={banner ? (<Banner variant='urgent' messages={[
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"CaseView.mocks.jsx","sourceRoot":"","sources":["../../../src/work/CaseView/CaseView.mocks.tsx"],"names":[],"mappings":"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","sourcesContent":["import { useMemo, useState } from 'react';\nimport type { Dispatch, MouseEvent, ReactNode, SetStateAction } from 'react';\nimport createDOMPurify from 'dompurify';\nimport styled, { css } from 'styled-components';\n\nimport {\n Button,\n Link,\n createStringMatcher,\n Modal,\n SummaryList,\n useModalManager,\n useElement,\n ViewAll,\n Status,\n Flex,\n Grid,\n registerIcon,\n Banner,\n createUID,\n useBreakpoint,\n Avatar,\n Tabs,\n TabPanel,\n Card,\n CardHeader,\n Text\n} from '@pega/cosmos-react-core';\nimport type { SummaryListProps } from '@pega/cosmos-react-core';\nimport type { Tab } from '@pega/cosmos-react-core/lib/components/Tabs/Tabs.types';\nimport { Glimpse, CaseView, CasePreview, UtilitySummaryItemDialog } from '@pega/cosmos-react-work';\nimport type { CaseViewProps } from '@pega/cosmos-react-work';\nimport { RichTextViewer } from '@pega/cosmos-react-rte';\nimport type { TokenMap } from '@pega/cosmos-react-rte';\nimport * as userSolidIcon from '@pega/cosmos-react-core/lib/components/Icon/icons/user-solid.icon';\nimport type { FeedProps } from '@pega/cosmos-react-social';\n\nimport { PredictionsDemo } from '../Predictions/Predictions.stories';\nimport { useMockListData } from '../../core/SummaryList/SummaryList.mocks';\nimport { StakeHoldersDemo } from '../Stakeholders/Stakeholders.stories';\nimport { TagsDemo } from '../Tags/Tags.stories';\nimport { StagesDemo } from '../Stages/Stages.stories';\nimport { AssignmentsDemo } from '../Assignments/Assignments.stories';\n\nimport { PulseMock } from './Pulse.mocks';\nimport { Details } from './Details.mocks';\nimport { AttachmentsMock } from './Attachments.mocks';\n\nregisterIcon(userSolidIcon);\n\nconst DOMPurify = createDOMPurify();\n\nexport interface CaseViewMockProps {\n caseId: CaseViewProps['caseId'];\n heading: CaseViewProps['heading'];\n subheading?: CaseViewProps['subheading'];\n parentCases?: boolean;\n summaryFields?: 'All' | 'Primary only' | 'Secondary only';\n tabs?: CaseViewProps['tabs'];\n stages?: boolean;\n tasks?: boolean | CaseViewProps['tasks'];\n taskCount?: number;\n predictions?: boolean;\n attachments?: boolean;\n stakeholders?: boolean;\n followers?: boolean;\n tags?: boolean;\n persistentUtility?: boolean | CaseViewProps['persistentUtility'];\n intelligentGuidance?: CaseViewProps['intelligentGuidance'];\n banner?: boolean;\n utilitiesExpanded?: boolean;\n promotedActions?: 0 | 1 | 2 | 3 | 4 | 5;\n headingLength?: 'short' | 'medium' | 'long';\n defaultExpanded?: boolean;\n hideStakeholdersAddNew?: boolean;\n}\n\ninterface PreviewSetters {\n setPreviewCaseId: Dispatch<SetStateAction<string | null>>;\n setPreviewCurrentTabId: Dispatch<SetStateAction<string>>;\n}\n\nconst StyledRSWrapper = styled.div(\n ({ theme }) => css`\n display: grid;\n place-items: center;\n border: 0.1875rem dashed ${theme.base.palette['border-line']};\n min-height: 6rem;\n height: var(--content-height-in-view);\n border-radius: calc(${theme.components.card['border-radius']});\n `\n);\n\n// This is a mini mock of the Constellation table component aka Repeating Structures\nconst RSTable = () => {\n return (\n <article style={{ display: 'block' }}>\n <StyledRSWrapper className='rs-wrapper'>\n <Text variant='secondary'>Table goes here</Text>\n </StyledRSWrapper>\n </article>\n );\n};\n\nconst TableSizingTabs = ({ tabCount = 3 }: { tabCount?: number }) => {\n const [currentTabId, setCurrentTabId] = useState('1');\n\n const tabs = [\n { name: 'Tab 1', id: '1' },\n { name: 'Tab 2', id: '2' },\n { name: 'Tab 3', id: '3' }\n ].slice(0, tabCount);\n\n return (\n <Flex container={{ direction: 'column', gap: 2 }}>\n <Tabs\n tabs={tabs}\n type='horizontal'\n onTabClick={id => {\n setCurrentTabId(id);\n }}\n currentTabId={currentTabId}\n />\n {tabs.map(tab => (\n <TabPanel tabId={tab.id} currentTabId={currentTabId} key={tab.id}>\n <Flex container={{ direction: 'column', gap: 1 }}>\n {(() => {\n switch (tab.id) {\n case '1':\n return <RSTable />;\n\n case '2':\n return (\n <>\n <RSTable />\n <p>\n Lorem ipsum dolor sit amet, consectetur adipiscing elit, sed do eiusmod\n tempor incididunt ut labore et dolore magna aliqua. Ut enim ad minim veniam,\n quis nostrud exercitation ullamco laboris nisi ut aliquip ex ea commodo\n consequat. Duis aute irure dolor in reprehenderit in voluptate velit esse\n cillum dolore eu fugiat nulla pariatur. Excepteur sint occaecat cupidatat\n non proident, sunt in culpa qui officia deserunt mollit anim id est laborum.\n </p>\n </>\n );\n\n case '3':\n return <TableSizingTabs tabCount={2} />;\n\n default:\n return null;\n }\n })()}\n </Flex>\n </TabPanel>\n ))}\n </Flex>\n );\n};\n\nexport const caseId = 'C-123456';\n\nexport const createDate = new Date(2016, 1, 8);\nconst msInYear = 1000 * 60 * 60 * 24 * 365;\nconst diffInYears = Math.floor((Date.now() - createDate.getTime()) / msInYear);\n\nexport const tabLabels = ['Details', 'Pulse', 'Single table', 'Sub tab table', 'Multiple tables'];\n\nexport const baseCaseTabs = tabLabels.map((name): Tab => {\n return {\n name,\n id: name\n };\n});\n\nconst singularize = (s = '') => s.replace(/s$/i, '').toLowerCase();\n\nexport const MockSummaryListViewAllModal = ({ name, count }: any) => {\n const [search, setSearch] = useState('');\n const [loading, setLoading] = useState(true);\n const [items] = useMockListData(\n () => {\n setLoading(false);\n },\n {\n count\n }\n );\n\n const onSearchChange = (value: string) => {\n setSearch(value.trim());\n };\n\n const itemsToRender = useMemo(() => {\n if (search) {\n const regEx = createStringMatcher(search, 'boundary');\n return items.filter(({ primary, id }) => regEx.test(primary) || regEx.test(id));\n }\n\n return items;\n }, [items, search]);\n\n return (\n <Modal heading={name}>\n <ViewAll\n loading={loading}\n items={itemsToRender}\n actions={[\n {\n id: 'addNew',\n text: `Add ${singularize(name)}`\n }\n ]}\n searchInputProps={{ onSearchChange }}\n />\n </Modal>\n );\n};\n\nexport const MockSummaryList = ({\n icon,\n name,\n actions,\n limit\n}: Pick<SummaryListProps, 'icon' | 'name'> & { actions?: null; limit?: number }) => {\n const { create: createModal } = useModalManager();\n const [loading, setLoading] = useState(true);\n const count = 50;\n\n const [items] = useMockListData(\n () => {\n setLoading(false);\n },\n { count: limit }\n );\n\n return (\n <SummaryList\n loading={loading}\n items={items}\n icon={icon}\n name={name}\n headingTag='h3'\n count={loading ? undefined : count}\n actions={\n actions !== null\n ? [\n {\n text: 'Add',\n id: `${name}:addNew`,\n icon: 'plus',\n onClick() {\n createModal(() => {\n const singularName = singularize(name);\n return (\n <Modal heading={`Add new ${singularName}`}>\n {`Content for adding a new ${singularName} goes here…`}\n </Modal>\n );\n });\n }\n }\n ]\n : undefined\n }\n onViewAll={() => {\n createModal(MockSummaryListViewAllModal, {\n name,\n count\n });\n }}\n />\n );\n};\n\nexport const MockOperatorFieldValue = () => {\n const [target, setTarget] = useElement<HTMLButtonElement>(null);\n\n return (\n <>\n <Button\n variant='link'\n onClick={(e: MouseEvent<HTMLButtonElement>) => {\n setTarget(e.currentTarget);\n }}\n >\n constellation@pega.com\n </Button>\n {target && (\n <Glimpse\n id='constellation'\n target={target}\n onDismiss={() => setTarget(null)}\n heading={{\n primary: 'Constellation Operator',\n secondary: 'Director of the stars',\n visual: <Avatar name='Constellation Operator' />\n }}\n fields={[\n {\n id: '1',\n name: 'Department',\n value: 'Space Travel'\n },\n {\n id: '2',\n name: 'Manager',\n value: 'Captain Galaxy'\n },\n {\n id: '3',\n name: 'Location',\n value: 'A galaxy far away'\n },\n {\n id: '4',\n name: 'Email',\n value: <Link href='mailto:constellation@pega.com'>constellation@pega.com</Link>\n },\n {\n id: '5',\n name: 'Telephone',\n value: <Link href='tel:555-123-4567'>555-123-4567</Link>\n }\n ]}\n onViewProfile={() => {}}\n />\n )}\n </>\n );\n};\n\nexport const PreviewLinkComponent = ({\n token: linkToken,\n setPreviewCaseId,\n setPreviewCurrentTabId\n}: { token: TokenMap['link'] } & PreviewSetters) => {\n return (\n <Link\n href={linkToken.href}\n previewable\n onPreview={() => {\n setPreviewCaseId(linkToken.href);\n setPreviewCurrentTabId(`summary-${linkToken.href}`);\n }}\n >\n {linkToken.text}\n </Link>\n );\n};\n\nexport const getPulseMarkdownMap = ({\n setPreviewCaseId,\n setPreviewCurrentTabId\n}: PreviewSetters): FeedProps['markdownMap'] => {\n return {\n link: (linkToken: TokenMap['link']) => {\n if (linkToken.href?.startsWith('C-')) {\n return () => (\n <PreviewLinkComponent\n token={linkToken}\n setPreviewCaseId={setPreviewCaseId}\n setPreviewCurrentTabId={setPreviewCurrentTabId}\n />\n );\n }\n }\n };\n};\n\nexport const onMentionPreview = ({\n id,\n type,\n setPreviewCaseId,\n setPreviewCurrentTabId\n}: {\n id: string;\n type: string;\n} & PreviewSetters) => {\n if (type === 'case') {\n setPreviewCaseId(id);\n setPreviewCurrentTabId(`summary-${id}`);\n }\n};\n\nexport const getTabContent = ({ setPreviewCaseId, setPreviewCurrentTabId }: PreviewSetters) => {\n return [\n {\n id: 'Details',\n content: <Details />\n },\n {\n id: 'Pulse',\n content: (\n <PulseMock\n markdownMap={getPulseMarkdownMap({ setPreviewCaseId, setPreviewCurrentTabId })}\n onMentionPreview={({ id, type }) => {\n onMentionPreview({ id, type, setPreviewCaseId, setPreviewCurrentTabId });\n }}\n />\n )\n },\n {\n id: 'Single table',\n content: <RSTable />\n },\n {\n id: 'Sub tab table',\n content: <TableSizingTabs />\n },\n {\n id: 'Multiple tables',\n content: (\n <Card>\n <CardHeader>\n <Text variant='h2'>Multiple tables</Text>\n </CardHeader>\n <Flex container={{ direction: 'column', gap: 2 }}>\n <RSTable />\n <RSTable />\n </Flex>\n </Card>\n )\n },\n {\n id: 'not found',\n content: <h2>Not Found</h2>\n }\n ];\n};\n\nexport const previewTabContent = [\n {\n id: 'Details',\n content: <Details />\n },\n {\n id: 'Pulse',\n content: <PulseMock />\n },\n {\n id: 'Single table',\n content: <RSTable />\n },\n {\n id: 'Sub tab table',\n content: <TableSizingTabs />\n },\n {\n id: 'Multiple tables',\n content: (\n <Card>\n <CardHeader>\n <Text variant='h2'>Multiple tables</Text>\n </CardHeader>\n <Flex container={{ direction: 'column', gap: 2 }}>\n <RSTable />\n <RSTable />\n </Flex>\n </Card>\n )\n },\n {\n id: 'not found',\n content: <h2>Not Found</h2>\n }\n];\n\nexport const getPrimaryFields = () => {\n return [\n {\n name: 'Create date',\n value: createDate.toDateString()\n },\n {\n name: 'Member ID',\n value: 'M205435569FD1234567890'\n },\n {\n name: 'Assigned to',\n value: 'Dean Thomas'\n },\n {\n name: 'Priority',\n value: '95'\n }\n ].map((f, i) => ({ ...f, id: `p-${i}` }));\n};\n\nconst baseSecondaryFields: CaseViewProps['summaryFields']['secondary'] = [\n {\n name: 'Status',\n value: <Status variant='info'>New</Status>\n },\n {\n name: 'Update date',\n value: `${diffInYears} years ago`\n },\n {\n name: 'Description',\n value: (\n <RichTextViewer\n content='<p>Lorem ipsum dolor sit amet, consectetur adipiscing elit. Suspendisse commodo nulla vitae mi bibendum, a fringilla nisl efficitur. Praesent vitae nulla lobortis, finibus felis ultricies, fermentum mi. Nunc lorem ligula, placerat nec elit id, auctor pellentesque est.</p> </br> <p>Pellentesque pharetra justo augue, non maximus nulla venenatis et. Sed laoreet ultricies ullamcorper. Mauris ac nulla quis ipsum semper fringilla in eget risus. Fusce cursus sollicitudin nibh molestie volutpat.</p>'\n type='html'\n />\n ),\n simpleValue: DOMPurify.sanitize(\n '<p>Lorem ipsum dolor sit amet, consectetur adipiscing elit. Suspendisse commodo nulla vitae mi bibendum, a fringilla nisl efficitur. Praesent vitae nulla lobortis, finibus felis ultricies, fermentum mi. Nunc lorem ligula, placerat nec elit id, auctor pellentesque est.</p> </br> <p>Pellentesque pharetra justo augue, non maximus nulla venenatis et. Sed laoreet ultricies ullamcorper. Mauris ac nulla quis ipsum semper fringilla in eget risus. Fusce cursus sollicitudin nibh molestie volutpat.</p>',\n {\n ALLOWED_TAGS: [],\n ALLOWED_ATTR: [],\n KEEP_CONTENT: true\n }\n ),\n variant: 'stacked'\n }\n];\n\nexport const getSecondaryFields = ({\n setPreviewCaseId,\n setPreviewCurrentTabId\n}: PreviewSetters) => {\n return [\n ...baseSecondaryFields,\n {\n name: 'Created by',\n value: <MockOperatorFieldValue />\n },\n {\n name: 'Previewable case',\n value: (\n <Link\n href='/cases/C-456'\n previewable\n onPreview={() => {\n setPreviewCaseId('C-456');\n setPreviewCurrentTabId('summary-C-456');\n }}\n >\n Previewable Case - C-456\n </Link>\n )\n }\n ];\n};\n\nexport const casePreviewPrimaryFields = [\n {\n name: 'Member ID',\n value: 'M204859F438G'\n },\n {\n name: 'Priority',\n value: '95'\n }\n];\n\nexport const casePreviewSecondaryFields = baseSecondaryFields;\n\nexport const getParentCases = ({\n setPreviewCaseId,\n setPreviewCurrentTabId\n}: {\n caseId: CaseViewProps['caseId'];\n} & PreviewSetters) => {\n let ids: number[] = [];\n\n /** random-ish number from 100000 to 999999 */\n const randomId = (seed = 1) => {\n const x = Math.sin(seed);\n let rand = x - Math.floor(x);\n\n if (rand < 0.1) {\n rand += 0.1;\n }\n\n return Math.floor(rand * 1000000);\n };\n\n for (let i = 0; i < 5; i += 1) {\n ids.push(randomId(i + 1));\n }\n\n ids = ids.sort((a, b) => a - b);\n\n return ids.map(num => {\n const id = `C-${num}`;\n return {\n id,\n primary: id,\n href: `/cases/${id}`,\n previewable: true,\n onPreview: () => {\n setPreviewCaseId(id);\n setPreviewCurrentTabId(`summary-${id}`);\n }\n };\n });\n};\n\ninterface UtilitiesArgs {\n predictions?: CaseViewMockProps['predictions'];\n attachments?: CaseViewMockProps['attachments'];\n stakeholders?: CaseViewMockProps['stakeholders'];\n followers?: CaseViewMockProps['followers'];\n tags?: CaseViewMockProps['tags'];\n}\n\ninterface UtilitySummaryItemsArgs {\n predictions?: CaseViewMockProps['predictions'];\n attachments?: CaseViewMockProps['attachments'];\n stakeholders?: CaseViewMockProps['stakeholders'];\n followers?: CaseViewMockProps['followers'];\n tags?: CaseViewMockProps['tags'];\n hideStakeholdersAddNew?: boolean;\n setDialogTarget: (instance: HTMLElement | null) => void;\n setDialogContent: React.Dispatch<React.SetStateAction<ReactNode>>;\n setShowDialog: React.Dispatch<React.SetStateAction<boolean>>;\n}\n\nexport const Utilities = ({\n predictions,\n attachments,\n stakeholders,\n followers,\n tags\n}: UtilitiesArgs) => {\n return (\n <>\n {predictions && <PredictionsDemo />}\n {attachments && <AttachmentsMock />}\n {stakeholders && <StakeHoldersDemo />}\n {followers && <MockSummaryList icon='user-star' name='Followers' />}\n {tags && <TagsDemo />}\n </>\n );\n};\n\nexport const getUtilitiesSummaryItems = ({\n predictions,\n attachments,\n stakeholders,\n followers,\n tags,\n hideStakeholdersAddNew,\n setDialogTarget,\n setDialogContent,\n setShowDialog\n}: UtilitySummaryItemsArgs): NonNullable<CaseViewProps['utilitiesSummaryItems']> => {\n const items: NonNullable<CaseViewProps['utilitiesSummaryItems']> = [];\n\n if (predictions)\n items.push({\n iconName: 'polaris',\n name: 'Predictions',\n onClick: e => {\n setDialogTarget(e.currentTarget);\n setDialogContent(<PredictionsDemo />);\n setShowDialog(true);\n }\n });\n if (attachments)\n items.push({\n iconName: 'paper-clip',\n count: 4,\n name: 'Attachments',\n onClick: e => {\n setDialogTarget(e.currentTarget);\n setDialogContent(<AttachmentsMock />);\n setShowDialog(true);\n }\n });\n if (stakeholders)\n items.push({\n iconName: 'user-search-solid',\n count: 10,\n name: 'Stakeholders',\n onClick: e => {\n setDialogTarget(e.currentTarget);\n setDialogContent(<StakeHoldersDemo hideAddNew={hideStakeholdersAddNew} />);\n setShowDialog(true);\n }\n });\n if (followers)\n items.push({\n iconName: 'user-star-solid',\n count: 5,\n name: 'Followers',\n onClick: e => {\n setDialogTarget(e.currentTarget);\n setDialogContent(<MockSummaryList icon='user-star' name='Followers' />);\n setShowDialog(true);\n }\n });\n if (tags)\n items.push({\n iconName: 'tag',\n count: 10,\n name: 'Tags',\n onClick: e => {\n setDialogTarget(e.currentTarget);\n setDialogContent(<TagsDemo />);\n setShowDialog(true);\n }\n });\n\n return items;\n};\n\nexport const getCaseActions = () => {\n return Array.from({ length: 12 }, (_, i) => {\n return {\n text: `Action ${i + 1}`,\n id: `${i + 1}`,\n onClick: () => {}\n };\n });\n};\n\nconst getHeading = (size: 'short' | 'medium' | 'long') => {\n return {\n short: 'Constellation',\n medium: 'Complicated constellation demo case of some distinction',\n long: 'The scenario in this case is almost too obscure to put into words and so the title is quite long'\n }[size];\n};\n\nexport const getPromotedActions = (count: number) => {\n return [\n {\n id: createUID(),\n text: 'Reassign',\n onClick: () => {}\n },\n {\n id: createUID(),\n text: 'Add dependency',\n onClick: () => {}\n },\n {\n id: createUID(),\n text: 'Clone',\n onClick: () => {}\n },\n {\n id: createUID(),\n text: 'Move',\n onClick: () => {}\n },\n {\n id: createUID(),\n text: 'Withdraw',\n onClick: () => {}\n }\n ].slice(0, count);\n};\n\nconst StyledPersistentUtilityContent = styled.div(({ theme }) => {\n return css`\n height: 100%;\n border-inline: 0.0625rem dashed ${theme.base.palette['border-line']};\n `;\n});\n\nexport const PersistentUtilityContent = () => {\n return (\n <Flex\n container={{ justify: 'center', alignItems: 'center' }}\n as={StyledPersistentUtilityContent}\n >\n Persistent utility content\n </Flex>\n );\n};\n\nexport const CaseViewMock = ({\n caseId: caseIdProp,\n heading,\n subheading,\n parentCases = false,\n promotedActions = 1,\n summaryFields = 'All',\n tabs,\n stages = true,\n tasks = true,\n taskCount = 4,\n utilitiesExpanded: utilitiesExpandedProp = true,\n predictions = true,\n attachments = true,\n stakeholders = true,\n followers = true,\n tags = true,\n persistentUtility = false,\n intelligentGuidance = false,\n banner = false,\n headingLength,\n defaultExpanded,\n hideStakeholdersAddNew\n}: CaseViewMockProps) => {\n const [previewCaseId, setPreviewCaseId] = useState<null | string>(null);\n const [previewCurrentTabId, setPreviewCurrentTabId] = useState(baseCaseTabs[0].id);\n const isMediumOrAbove = useBreakpoint('md');\n const [demoCurrentTabId, setDemoCurrentTabId] = useState(\n isMediumOrAbove ? tabs?.currentTabId ?? baseCaseTabs[0].id : `summary-${caseIdProp}`\n );\n\n const [dialogContent, setDialogContent] = useState<ReactNode>();\n const [dialogTarget, setDialogTarget] = useElement<HTMLElement>();\n const [showDialog, setShowDialog] = useState(false);\n\n const demoTabs = tabs ?? {\n items: baseCaseTabs,\n currentTabId: demoCurrentTabId,\n onClick: setDemoCurrentTabId\n };\n\n const previewTabs = {\n items: baseCaseTabs,\n currentTabId: previewCurrentTabId,\n onClick: setPreviewCurrentTabId\n };\n\n const parentCasesContent = getParentCases({\n caseId: caseIdProp,\n setPreviewCaseId,\n setPreviewCurrentTabId\n });\n\n const demoStages = <StagesDemo currentStage={3} />;\n\n const [followed, setFollowed] = useState(false);\n\n const [summaryExpanded, setSummaryExpanded] = useState(!!defaultExpanded);\n const [utilitiesExpanded, setUtilitiesExpanded] = useState(utilitiesExpandedProp);\n const tabContent = getTabContent({\n setPreviewCaseId,\n setPreviewCurrentTabId\n });\n\n return (\n <>\n {previewCaseId && (\n <CasePreview\n open\n onAfterClose={() => {\n setPreviewCaseId(null);\n }}\n caseId={previewCaseId}\n parentCases={\n Math.random() > 0.5\n ? [...parentCasesContent]\n .filter(c => c.id !== previewCaseId)\n .map(c => ({ ...c, id: `preview-${c.id}` }))\n : undefined\n }\n heading='Previewable demo case'\n subheading={previewCaseId}\n caseLink={{ href: `/cases/${previewCaseId}`, target: '_blank' }}\n icon='user-solid'\n followed={!followed}\n onEdit={() => {}}\n actions={getCaseActions()}\n promotedActions={getPromotedActions(2)}\n summaryFields={{\n primary: casePreviewPrimaryFields,\n secondary: casePreviewSecondaryFields\n }}\n stages={demoStages}\n tasks={<AssignmentsDemo count={4} />}\n tabs={previewTabs}\n tabContent={tabContent}\n utilities={\n <Grid container={{ rowGap: 2 }}>\n <Utilities\n predictions={predictions}\n attachments={attachments}\n stakeholders={stakeholders}\n followers={followers}\n tags={tags}\n />\n </Grid>\n }\n />\n )}\n {dialogTarget && showDialog && (\n <UtilitySummaryItemDialog\n target={dialogTarget}\n onDismiss={() => {\n setShowDialog(false);\n }}\n >\n {dialogContent}\n </UtilitySummaryItemDialog>\n )}\n <CaseView\n caseId={caseIdProp}\n parentCases={\n parentCases\n ? getParentCases({\n caseId: caseIdProp,\n setPreviewCaseId,\n setPreviewCurrentTabId\n })\n : undefined\n }\n heading={headingLength ? getHeading(headingLength) : heading}\n subheading={subheading}\n icon='user-solid'\n followed={followed}\n onFollowedChange={setFollowed}\n actions={getCaseActions()}\n promotedActions={promotedActions ? getPromotedActions(promotedActions) : undefined}\n onEdit={() => {}}\n summaryFields={(() => {\n const obj: CaseViewProps['summaryFields'] = {\n primary: getPrimaryFields(),\n secondary: getSecondaryFields({ setPreviewCaseId, setPreviewCurrentTabId })\n };\n\n if (summaryFields === 'Primary only') {\n obj.secondary = undefined;\n }\n\n if (summaryFields === 'Secondary only') {\n obj.primary = undefined;\n }\n\n return obj;\n })()}\n summaryExpanded={summaryExpanded}\n onToggleSummary={() => {\n setSummaryExpanded(cur => !cur);\n }}\n tabs={demoTabs}\n persistentUtility={(() => {\n if (typeof persistentUtility === 'boolean') {\n return persistentUtility\n ? { title: 'Persistent utility', content: <PersistentUtilityContent /> }\n : undefined;\n }\n\n return persistentUtility;\n })()}\n stages={stages ? demoStages : undefined}\n tasks={tasks ? <AssignmentsDemo count={taskCount} /> : undefined}\n tabContent={tabContent}\n utilities={\n <Utilities\n predictions={predictions}\n attachments={attachments}\n stakeholders={stakeholders}\n followers={followers}\n tags={tags}\n />\n }\n utilitiesSummaryItems={getUtilitiesSummaryItems({\n predictions,\n attachments,\n stakeholders,\n followers,\n tags,\n hideStakeholdersAddNew,\n setDialogTarget,\n setDialogContent,\n setShowDialog\n })}\n utilitiesExpanded={utilitiesExpanded}\n onToggleUtilities={() => {\n setUtilitiesExpanded(cur => !cur);\n }}\n intelligentGuidance={intelligentGuidance}\n banners={\n banner ? (\n <Banner\n variant='urgent'\n messages={[\n {\n label: 'An error occurred',\n description:\n 'Lorem ipsum dolor sit amet, consectetur adipiscing elit, sed do eiusmod tempor incididunt ut labore et dolore magna aliqua. Ut enim ad minim veniam, quis nostrud exercitation ullamco laboris nisi ut aliquip ex ea commodo consequat. Duis aute irure dolor in reprehenderit in voluptate velit esse cillum dolore eu fugiat nulla pariatur. Excepteur sint occaecat cupidatat non proident, sunt in culpa qui officia deserunt mollit anim id est laborum.',\n action: {\n text: 'Take acton'\n }\n }\n ]}\n />\n ) : undefined\n }\n />\n </>\n );\n};\n"]}
|
|
1
|
+
{"version":3,"file":"CaseView.mocks.jsx","sourceRoot":"","sources":["../../../src/work/CaseView/CaseView.mocks.tsx"],"names":[],"mappings":"AAAA,OAAO,EAAE,OAAO,EAAE,QAAQ,EAAE,MAAM,OAAO,CAAC;AAE1C,OAAO,eAAe,MAAM,WAAW,CAAC;AACxC,OAAO,MAAM,EAAE,EAAE,GAAG,EAAE,MAAM,mBAAmB,CAAC;AAEhD,OAAO,EACL,MAAM,EACN,IAAI,EACJ,mBAAmB,EACnB,KAAK,EACL,WAAW,EACX,eAAe,EACf,UAAU,EACV,OAAO,EACP,MAAM,EACN,IAAI,EACJ,IAAI,EACJ,YAAY,EACZ,MAAM,EACN,SAAS,EACT,aAAa,EACb,MAAM,EACN,IAAI,EACJ,QAAQ,EACR,IAAI,EACJ,UAAU,EACV,IAAI,EACL,MAAM,yBAAyB,CAAC;AAGjC,OAAO,EAAE,OAAO,EAAE,QAAQ,EAAE,WAAW,EAAE,wBAAwB,EAAE,MAAM,yBAAyB,CAAC;AAEnG,OAAO,EAAE,cAAc,EAAE,MAAM,wBAAwB,CAAC;AAExD,OAAO,KAAK,aAAa,MAAM,mEAAmE,CAAC;AAGnG,OAAO,EAAE,eAAe,EAAE,MAAM,oCAAoC,CAAC;AACrE,OAAO,EAAE,eAAe,EAAE,MAAM,0CAA0C,CAAC;AAC3E,OAAO,EAAE,gBAAgB,EAAE,MAAM,sCAAsC,CAAC;AACxE,OAAO,EAAE,QAAQ,EAAE,MAAM,sBAAsB,CAAC;AAChD,OAAO,EAAE,UAAU,EAAE,MAAM,0BAA0B,CAAC;AACtD,OAAO,EAAE,eAAe,EAAE,MAAM,oCAAoC,CAAC;AAErE,OAAO,EAAE,SAAS,EAAE,MAAM,eAAe,CAAC;AAC1C,OAAO,EAAE,OAAO,EAAE,MAAM,iBAAiB,CAAC;AAC1C,OAAO,EAAE,eAAe,EAAE,MAAM,qBAAqB,CAAC;AAEtD,YAAY,CAAC,aAAa,CAAC,CAAC;AAE5B,MAAM,SAAS,GAAG,eAAe,EAAE,CAAC;AAgCpC,MAAM,eAAe,GAAG,MAAM,CAAC,GAAG,CAChC,CAAC,EAAE,KAAK,EAAE,EAAE,EAAE,CAAC,GAAG,CAAA;;;+BAGW,KAAK,CAAC,IAAI,CAAC,OAAO,CAAC,aAAa,CAAC;;;0BAGtC,KAAK,CAAC,UAAU,CAAC,IAAI,CAAC,eAAe,CAAC;GAC7D,CACF,CAAC;AAGF,MAAM,OAAO,GAAG,GAAG,EAAE;IACnB,OAAO,CACL,CAAC,OAAO,CAAC,KAAK,CAAC,CAAC,EAAE,OAAO,EAAE,OAAO,EAAE,CAAC,CACnC;MAAA,CAAC,eAAe,CAAC,SAAS,CAAC,YAAY,CACrC;QAAA,CAAC,IAAI,CAAC,OAAO,CAAC,WAAW,CAAC,eAAe,EAAE,IAAI,CACjD;MAAA,EAAE,eAAe,CACnB;IAAA,EAAE,OAAO,CAAC,CACX,CAAC;AACJ,CAAC,CAAC;AAEF,MAAM,eAAe,GAAG,CAAC,EAAE,QAAQ,GAAG,CAAC,EAAyB,EAAE,EAAE;IAClE,MAAM,CAAC,YAAY,EAAE,eAAe,CAAC,GAAG,QAAQ,CAAC,GAAG,CAAC,CAAC;IAEtD,MAAM,IAAI,GAAG;QACX,EAAE,IAAI,EAAE,OAAO,EAAE,EAAE,EAAE,GAAG,EAAE;QAC1B,EAAE,IAAI,EAAE,OAAO,EAAE,EAAE,EAAE,GAAG,EAAE;QAC1B,EAAE,IAAI,EAAE,OAAO,EAAE,EAAE,EAAE,GAAG,EAAE;KAC3B,CAAC,KAAK,CAAC,CAAC,EAAE,QAAQ,CAAC,CAAC;IAErB,OAAO,CACL,CAAC,IAAI,CAAC,SAAS,CAAC,CAAC,EAAE,SAAS,EAAE,QAAQ,EAAE,GAAG,EAAE,CAAC,EAAE,CAAC,CAC/C;MAAA,CAAC,IAAI,CACH,IAAI,CAAC,CAAC,IAAI,CAAC,CACX,IAAI,CAAC,YAAY,CACjB,UAAU,CAAC,CAAC,EAAE,CAAC,EAAE;YACf,eAAe,CAAC,EAAE,CAAC,CAAC;QACtB,CAAC,CAAC,CACF,YAAY,CAAC,CAAC,YAAY,CAAC,EAE7B;MAAA,CAAC,IAAI,CAAC,GAAG,CAAC,GAAG,CAAC,EAAE,CAAC,CACf,CAAC,QAAQ,CAAC,KAAK,CAAC,CAAC,GAAG,CAAC,EAAE,CAAC,CAAC,YAAY,CAAC,CAAC,YAAY,CAAC,CAAC,GAAG,CAAC,CAAC,GAAG,CAAC,EAAE,CAAC,CAC/D;UAAA,CAAC,IAAI,CAAC,SAAS,CAAC,CAAC,EAAE,SAAS,EAAE,QAAQ,EAAE,GAAG,EAAE,CAAC,EAAE,CAAC,CAC/C;YAAA,CAAC,CAAC,GAAG,EAAE;gBACL,QAAQ,GAAG,CAAC,EAAE,EAAE;oBACd,KAAK,GAAG;wBACN,OAAO,CAAC,OAAO,CAAC,AAAD,EAAG,CAAC;oBAErB,KAAK,GAAG;wBACN,OAAO,CACL,EACE;sBAAA,CAAC,OAAO,CAAC,AAAD,EACR;sBAAA,CAAC,CAAC,CACA;;;;;;;sBAMF,EAAE,CAAC,CACL;oBAAA,GAAG,CACJ,CAAC;oBAEJ,KAAK,GAAG;wBACN,OAAO,CAAC,eAAe,CAAC,QAAQ,CAAC,CAAC,CAAC,CAAC,EAAG,CAAC;oBAE1C;wBACE,OAAO,IAAI,CAAC;iBACf;YACH,CAAC,CAAC,EAAE,CACN;UAAA,EAAE,IAAI,CACR;QAAA,EAAE,QAAQ,CAAC,CACZ,CAAC,CACJ;IAAA,EAAE,IAAI,CAAC,CACR,CAAC;AACJ,CAAC,CAAC;AAEF,MAAM,CAAC,MAAM,MAAM,GAAG,UAAU,CAAC;AAEjC,MAAM,CAAC,MAAM,UAAU,GAAG,IAAI,IAAI,CAAC,IAAI,EAAE,CAAC,EAAE,CAAC,CAAC,CAAC;AAC/C,MAAM,QAAQ,GAAG,IAAI,GAAG,EAAE,GAAG,EAAE,GAAG,EAAE,GAAG,GAAG,CAAC;AAC3C,MAAM,WAAW,GAAG,IAAI,CAAC,KAAK,CAAC,CAAC,IAAI,CAAC,GAAG,EAAE,GAAG,UAAU,CAAC,OAAO,EAAE,CAAC,GAAG,QAAQ,CAAC,CAAC;AAE/E,MAAM,CAAC,MAAM,SAAS,GAAG,CAAC,SAAS,EAAE,OAAO,EAAE,cAAc,EAAE,eAAe,EAAE,iBAAiB,CAAC,CAAC;AAElG,MAAM,CAAC,MAAM,YAAY,GAAG,SAAS,CAAC,GAAG,CAAC,CAAC,IAAI,EAAO,EAAE;IACtD,OAAO;QACL,IAAI;QACJ,EAAE,EAAE,IAAI;KACT,CAAC;AACJ,CAAC,CAAC,CAAC;AAEH,MAAM,WAAW,GAAG,CAAC,CAAC,GAAG,EAAE,EAAE,EAAE,CAAC,CAAC,CAAC,OAAO,CAAC,KAAK,EAAE,EAAE,CAAC,CAAC,WAAW,EAAE,CAAC;AAEnE,MAAM,CAAC,MAAM,2BAA2B,GAAG,CAAC,EAAE,IAAI,EAAE,KAAK,EAAO,EAAE,EAAE;IAClE,MAAM,CAAC,MAAM,EAAE,SAAS,CAAC,GAAG,QAAQ,CAAC,EAAE,CAAC,CAAC;IACzC,MAAM,CAAC,OAAO,EAAE,UAAU,CAAC,GAAG,QAAQ,CAAC,IAAI,CAAC,CAAC;IAC7C,MAAM,CAAC,KAAK,CAAC,GAAG,eAAe,CAC7B,GAAG,EAAE;QACH,UAAU,CAAC,KAAK,CAAC,CAAC;IACpB,CAAC,EACD;QACE,KAAK;KACN,CACF,CAAC;IAEF,MAAM,cAAc,GAAG,CAAC,KAAa,EAAE,EAAE;QACvC,SAAS,CAAC,KAAK,CAAC,IAAI,EAAE,CAAC,CAAC;IAC1B,CAAC,CAAC;IAEF,MAAM,aAAa,GAAG,OAAO,CAAC,GAAG,EAAE;QACjC,IAAI,MAAM,EAAE;YACV,MAAM,KAAK,GAAG,mBAAmB,CAAC,MAAM,EAAE,UAAU,CAAC,CAAC;YACtD,OAAO,KAAK,CAAC,MAAM,CAAC,CAAC,EAAE,OAAO,EAAE,EAAE,EAAE,EAAE,EAAE,CAAC,KAAK,CAAC,IAAI,CAAC,OAAO,CAAC,IAAI,KAAK,CAAC,IAAI,CAAC,EAAE,CAAC,CAAC,CAAC;SACjF;QAED,OAAO,KAAK,CAAC;IACf,CAAC,EAAE,CAAC,KAAK,EAAE,MAAM,CAAC,CAAC,CAAC;IAEpB,OAAO,CACL,CAAC,KAAK,CAAC,OAAO,CAAC,CAAC,IAAI,CAAC,CACnB;MAAA,CAAC,OAAO,CACN,OAAO,CAAC,CAAC,OAAO,CAAC,CACjB,KAAK,CAAC,CAAC,aAAa,CAAC,CACrB,OAAO,CAAC,CAAC;YACP;gBACE,EAAE,EAAE,QAAQ;gBACZ,IAAI,EAAE,OAAO,WAAW,CAAC,IAAI,CAAC,EAAE;aACjC;SACF,CAAC,CACF,gBAAgB,CAAC,CAAC,EAAE,cAAc,EAAE,CAAC,EAEzC;IAAA,EAAE,KAAK,CAAC,CACT,CAAC;AACJ,CAAC,CAAC;AAEF,MAAM,CAAC,MAAM,eAAe,GAAG,CAAC,EAC9B,IAAI,EACJ,IAAI,EACJ,OAAO,EACP,KAAK,EACwE,EAAE,EAAE;IACjF,MAAM,EAAE,MAAM,EAAE,WAAW,EAAE,GAAG,eAAe,EAAE,CAAC;IAClD,MAAM,CAAC,OAAO,EAAE,UAAU,CAAC,GAAG,QAAQ,CAAC,IAAI,CAAC,CAAC;IAC7C,MAAM,KAAK,GAAG,EAAE,CAAC;IAEjB,MAAM,CAAC,KAAK,CAAC,GAAG,eAAe,CAC7B,GAAG,EAAE;QACH,UAAU,CAAC,KAAK,CAAC,CAAC;IACpB,CAAC,EACD,EAAE,KAAK,EAAE,KAAK,EAAE,CACjB,CAAC;IAEF,OAAO,CACL,CAAC,WAAW,CACV,OAAO,CAAC,CAAC,OAAO,CAAC,CACjB,KAAK,CAAC,CAAC,KAAK,CAAC,CACb,IAAI,CAAC,CAAC,IAAI,CAAC,CACX,IAAI,CAAC,CAAC,IAAI,CAAC,CACX,UAAU,CAAC,IAAI,CACf,KAAK,CAAC,CAAC,OAAO,CAAC,CAAC,CAAC,SAAS,CAAC,CAAC,CAAC,KAAK,CAAC,CACnC,OAAO,CAAC,CACN,OAAO,KAAK,IAAI;YACd,CAAC,CAAC;gBACE;oBACE,IAAI,EAAE,KAAK;oBACX,EAAE,EAAE,GAAG,IAAI,SAAS;oBACpB,IAAI,EAAE,MAAM;oBACZ,OAAO;wBACL,WAAW,CAAC,GAAG,EAAE;4BACf,MAAM,YAAY,GAAG,WAAW,CAAC,IAAI,CAAC,CAAC;4BACvC,OAAO,CACL,CAAC,KAAK,CAAC,OAAO,CAAC,CAAC,WAAW,YAAY,EAAE,CAAC,CACxC;wBAAA,CAAC,4BAA4B,YAAY,aAAa,CACxD;sBAAA,EAAE,KAAK,CAAC,CACT,CAAC;wBACJ,CAAC,CAAC,CAAC;oBACL,CAAC;iBACF;aACF;YACH,CAAC,CAAC,SAAS,CACd,CACD,SAAS,CAAC,CAAC,GAAG,EAAE;YACd,WAAW,CAAC,2BAA2B,EAAE;gBACvC,IAAI;gBACJ,KAAK;aACN,CAAC,CAAC;QACL,CAAC,CAAC,EACF,CACH,CAAC;AACJ,CAAC,CAAC;AAEF,MAAM,CAAC,MAAM,sBAAsB,GAAG,GAAG,EAAE;IACzC,MAAM,CAAC,MAAM,EAAE,SAAS,CAAC,GAAG,UAAU,CAAoB,IAAI,CAAC,CAAC;IAEhE,OAAO,CACL,EACE;MAAA,CAAC,MAAM,CACL,OAAO,CAAC,MAAM,CACd,OAAO,CAAC,CAAC,CAAC,CAAgC,EAAE,EAAE;YAC5C,SAAS,CAAC,CAAC,CAAC,aAAa,CAAC,CAAC;QAC7B,CAAC,CAAC,CAEF;;MACF,EAAE,MAAM,CACR;MAAA,CAAC,MAAM,IAAI,CACT,CAAC,OAAO,CACN,EAAE,CAAC,eAAe,CAClB,MAAM,CAAC,CAAC,MAAM,CAAC,CACf,SAAS,CAAC,CAAC,GAAG,EAAE,CAAC,SAAS,CAAC,IAAI,CAAC,CAAC,CACjC,OAAO,CAAC,CAAC;gBACP,OAAO,EAAE,wBAAwB;gBACjC,SAAS,EAAE,uBAAuB;gBAClC,MAAM,EAAE,CAAC,MAAM,CAAC,IAAI,CAAC,wBAAwB,EAAG;aACjD,CAAC,CACF,MAAM,CAAC,CAAC;gBACN;oBACE,EAAE,EAAE,GAAG;oBACP,IAAI,EAAE,YAAY;oBAClB,KAAK,EAAE,cAAc;iBACtB;gBACD;oBACE,EAAE,EAAE,GAAG;oBACP,IAAI,EAAE,SAAS;oBACf,KAAK,EAAE,gBAAgB;iBACxB;gBACD;oBACE,EAAE,EAAE,GAAG;oBACP,IAAI,EAAE,UAAU;oBAChB,KAAK,EAAE,mBAAmB;iBAC3B;gBACD;oBACE,EAAE,EAAE,GAAG;oBACP,IAAI,EAAE,OAAO;oBACb,KAAK,EAAE,CAAC,IAAI,CAAC,IAAI,CAAC,+BAA+B,CAAC,sBAAsB,EAAE,IAAI,CAAC;iBAChF;gBACD;oBACE,EAAE,EAAE,GAAG;oBACP,IAAI,EAAE,WAAW;oBACjB,KAAK,EAAE,CAAC,IAAI,CAAC,IAAI,CAAC,kBAAkB,CAAC,YAAY,EAAE,IAAI,CAAC;iBACzD;aACF,CAAC,CACF,aAAa,CAAC,CAAC,GAAG,EAAE,GAAE,CAAC,CAAC,EACxB,CACH,CACH;IAAA,GAAG,CACJ,CAAC;AACJ,CAAC,CAAC;AAEF,MAAM,CAAC,MAAM,oBAAoB,GAAG,CAAC,EACnC,KAAK,EAAE,SAAS,EAChB,gBAAgB,EAChB,sBAAsB,EACuB,EAAE,EAAE;IACjD,OAAO,CACL,CAAC,IAAI,CACH,IAAI,CAAC,CAAC,SAAS,CAAC,IAAI,CAAC,CACrB,WAAW,CACX,SAAS,CAAC,CAAC,GAAG,EAAE;YACd,gBAAgB,CAAC,SAAS,CAAC,IAAI,CAAC,CAAC;YACjC,sBAAsB,CAAC,WAAW,SAAS,CAAC,IAAI,EAAE,CAAC,CAAC;QACtD,CAAC,CAAC,CAEF;MAAA,CAAC,SAAS,CAAC,IAAI,CACjB;IAAA,EAAE,IAAI,CAAC,CACR,CAAC;AACJ,CAAC,CAAC;AAEF,MAAM,CAAC,MAAM,mBAAmB,GAAG,CAAC,EAClC,gBAAgB,EAChB,sBAAsB,EACP,EAA4B,EAAE;IAC7C,OAAO;QACL,IAAI,EAAE,CAAC,SAA2B,EAAE,EAAE;YACpC,IAAI,SAAS,CAAC,IAAI,EAAE,UAAU,CAAC,IAAI,CAAC,EAAE;gBACpC,OAAO,GAAG,EAAE,CAAC,CACX,CAAC,oBAAoB,CACnB,KAAK,CAAC,CAAC,SAAS,CAAC,CACjB,gBAAgB,CAAC,CAAC,gBAAgB,CAAC,CACnC,sBAAsB,CAAC,CAAC,sBAAsB,CAAC,EAC/C,CACH,CAAC;aACH;QACH,CAAC;KACF,CAAC;AACJ,CAAC,CAAC;AAEF,MAAM,CAAC,MAAM,gBAAgB,GAAG,CAAC,EAC/B,EAAE,EACF,IAAI,EACJ,gBAAgB,EAChB,sBAAsB,EAIN,EAAE,EAAE;IACpB,IAAI,IAAI,KAAK,MAAM,EAAE;QACnB,gBAAgB,CAAC,EAAE,CAAC,CAAC;QACrB,sBAAsB,CAAC,WAAW,EAAE,EAAE,CAAC,CAAC;KACzC;AACH,CAAC,CAAC;AAEF,MAAM,CAAC,MAAM,aAAa,GAAG,CAAC,EAAE,gBAAgB,EAAE,sBAAsB,EAAkB,EAAE,EAAE;IAC5F,OAAO;QACL;YACE,EAAE,EAAE,SAAS;YACb,OAAO,EAAE,CAAC,OAAO,CAAC,AAAD,EAAG;SACrB;QACD;YACE,EAAE,EAAE,OAAO;YACX,OAAO,EAAE,CACP,CAAC,SAAS,CACR,WAAW,CAAC,CAAC,mBAAmB,CAAC,EAAE,gBAAgB,EAAE,sBAAsB,EAAE,CAAC,CAAC,CAC/E,gBAAgB,CAAC,CAAC,CAAC,EAAE,EAAE,EAAE,IAAI,EAAE,EAAE,EAAE;oBACjC,gBAAgB,CAAC,EAAE,EAAE,EAAE,IAAI,EAAE,gBAAgB,EAAE,sBAAsB,EAAE,CAAC,CAAC;gBAC3E,CAAC,CAAC,EACF,CACH;SACF;QACD;YACE,EAAE,EAAE,cAAc;YAClB,OAAO,EAAE,CAAC,OAAO,CAAC,AAAD,EAAG;SACrB;QACD;YACE,EAAE,EAAE,eAAe;YACnB,OAAO,EAAE,CAAC,eAAe,CAAC,AAAD,EAAG;SAC7B;QACD;YACE,EAAE,EAAE,iBAAiB;YACrB,OAAO,EAAE,CACP,CAAC,IAAI,CACH;UAAA,CAAC,UAAU,CACT;YAAA,CAAC,IAAI,CAAC,OAAO,CAAC,IAAI,CAAC,eAAe,EAAE,IAAI,CAC1C;UAAA,EAAE,UAAU,CACZ;UAAA,CAAC,IAAI,CAAC,SAAS,CAAC,CAAC,EAAE,SAAS,EAAE,QAAQ,EAAE,GAAG,EAAE,CAAC,EAAE,CAAC,CAC/C;YAAA,CAAC,OAAO,CAAC,AAAD,EACR;YAAA,CAAC,OAAO,CAAC,AAAD,EACV;UAAA,EAAE,IAAI,CACR;QAAA,EAAE,IAAI,CAAC,CACR;SACF;QACD;YACE,EAAE,EAAE,WAAW;YACf,OAAO,EAAE,CAAC,EAAE,CAAC,SAAS,EAAE,EAAE,CAAC;SAC5B;KACF,CAAC;AACJ,CAAC,CAAC;AAEF,MAAM,CAAC,MAAM,iBAAiB,GAAG;IAC/B;QACE,EAAE,EAAE,SAAS;QACb,OAAO,EAAE,CAAC,OAAO,CAAC,AAAD,EAAG;KACrB;IACD;QACE,EAAE,EAAE,OAAO;QACX,OAAO,EAAE,CAAC,SAAS,CAAC,AAAD,EAAG;KACvB;IACD;QACE,EAAE,EAAE,cAAc;QAClB,OAAO,EAAE,CAAC,OAAO,CAAC,AAAD,EAAG;KACrB;IACD;QACE,EAAE,EAAE,eAAe;QACnB,OAAO,EAAE,CAAC,eAAe,CAAC,AAAD,EAAG;KAC7B;IACD;QACE,EAAE,EAAE,iBAAiB;QACrB,OAAO,EAAE,CACP,CAAC,IAAI,CACH;QAAA,CAAC,UAAU,CACT;UAAA,CAAC,IAAI,CAAC,OAAO,CAAC,IAAI,CAAC,eAAe,EAAE,IAAI,CAC1C;QAAA,EAAE,UAAU,CACZ;QAAA,CAAC,IAAI,CAAC,SAAS,CAAC,CAAC,EAAE,SAAS,EAAE,QAAQ,EAAE,GAAG,EAAE,CAAC,EAAE,CAAC,CAC/C;UAAA,CAAC,OAAO,CAAC,AAAD,EACR;UAAA,CAAC,OAAO,CAAC,AAAD,EACV;QAAA,EAAE,IAAI,CACR;MAAA,EAAE,IAAI,CAAC,CACR;KACF;IACD;QACE,EAAE,EAAE,WAAW;QACf,OAAO,EAAE,CAAC,EAAE,CAAC,SAAS,EAAE,EAAE,CAAC;KAC5B;CACF,CAAC;AAEF,MAAM,CAAC,MAAM,gBAAgB,GAAG,GAAG,EAAE;IACnC,OAAO;QACL;YACE,IAAI,EAAE,aAAa;YACnB,KAAK,EAAE,UAAU,CAAC,YAAY,EAAE;SACjC;QACD;YACE,IAAI,EAAE,WAAW;YACjB,KAAK,EAAE,wBAAwB;SAChC;QACD;YACE,IAAI,EAAE,aAAa;YACnB,KAAK,EAAE,aAAa;SACrB;QACD;YACE,IAAI,EAAE,UAAU;YAChB,KAAK,EAAE,IAAI;SACZ;KACF,CAAC,GAAG,CAAC,CAAC,CAAC,EAAE,CAAC,EAAE,EAAE,CAAC,CAAC,EAAE,GAAG,CAAC,EAAE,EAAE,EAAE,KAAK,CAAC,EAAE,EAAE,CAAC,CAAC,CAAC;AAC5C,CAAC,CAAC;AAEF,MAAM,mBAAmB,GAAgD;IACvE;QACE,IAAI,EAAE,QAAQ;QACd,KAAK,EAAE,CAAC,MAAM,CAAC,OAAO,CAAC,MAAM,CAAC,GAAG,EAAE,MAAM,CAAC;KAC3C;IACD;QACE,IAAI,EAAE,aAAa;QACnB,KAAK,EAAE,GAAG,WAAW,YAAY;KAClC;IACD;QACE,IAAI,EAAE,aAAa;QACnB,KAAK,EAAE,CACL,CAAC,cAAc,CACb,OAAO,CAAC,kfAAkf,CAC1f,IAAI,CAAC,MAAM,EACX,CACH;QACD,WAAW,EAAE,SAAS,CAAC,QAAQ,CAC7B,kfAAkf,EAClf;YACE,YAAY,EAAE,EAAE;YAChB,YAAY,EAAE,EAAE;YAChB,YAAY,EAAE,IAAI;SACnB,CACF;QACD,OAAO,EAAE,SAAS;KACnB;CACF,CAAC;AAEF,MAAM,CAAC,MAAM,kBAAkB,GAAG,CAAC,EACjC,gBAAgB,EAChB,sBAAsB,EACP,EAAE,EAAE;IACnB,OAAO;QACL,GAAG,mBAAmB;QACtB;YACE,IAAI,EAAE,YAAY;YAClB,KAAK,EAAE,CAAC,sBAAsB,CAAC,AAAD,EAAG;SAClC;QACD;YACE,IAAI,EAAE,kBAAkB;YACxB,KAAK,EAAE,CACL,CAAC,IAAI,CACH,IAAI,CAAC,cAAc,CACnB,WAAW,CACX,SAAS,CAAC,CAAC,GAAG,EAAE;oBACd,gBAAgB,CAAC,OAAO,CAAC,CAAC;oBAC1B,sBAAsB,CAAC,eAAe,CAAC,CAAC;gBAC1C,CAAC,CAAC,CAEF;;QACF,EAAE,IAAI,CAAC,CACR;SACF;KACF,CAAC;AACJ,CAAC,CAAC;AAEF,MAAM,CAAC,MAAM,wBAAwB,GAAG;IACtC;QACE,IAAI,EAAE,WAAW;QACjB,KAAK,EAAE,cAAc;KACtB;IACD;QACE,IAAI,EAAE,UAAU;QAChB,KAAK,EAAE,IAAI;KACZ;CACF,CAAC;AAEF,MAAM,CAAC,MAAM,0BAA0B,GAAG,mBAAmB,CAAC;AAE9D,MAAM,CAAC,MAAM,cAAc,GAAG,CAAC,EAC7B,gBAAgB,EAChB,sBAAsB,EAGN,EAAE,EAAE;IACpB,IAAI,GAAG,GAAa,EAAE,CAAC;IAGvB,MAAM,QAAQ,GAAG,CAAC,IAAI,GAAG,CAAC,EAAE,EAAE;QAC5B,MAAM,CAAC,GAAG,IAAI,CAAC,GAAG,CAAC,IAAI,CAAC,CAAC;QACzB,IAAI,IAAI,GAAG,CAAC,GAAG,IAAI,CAAC,KAAK,CAAC,CAAC,CAAC,CAAC;QAE7B,IAAI,IAAI,GAAG,GAAG,EAAE;YACd,IAAI,IAAI,GAAG,CAAC;SACb;QAED,OAAO,IAAI,CAAC,KAAK,CAAC,IAAI,GAAG,OAAO,CAAC,CAAC;IACpC,CAAC,CAAC;IAEF,KAAK,IAAI,CAAC,GAAG,CAAC,EAAE,CAAC,GAAG,CAAC,EAAE,CAAC,IAAI,CAAC,EAAE;QAC7B,GAAG,CAAC,IAAI,CAAC,QAAQ,CAAC,CAAC,GAAG,CAAC,CAAC,CAAC,CAAC;KAC3B;IAED,GAAG,GAAG,GAAG,CAAC,IAAI,CAAC,CAAC,CAAC,EAAE,CAAC,EAAE,EAAE,CAAC,CAAC,GAAG,CAAC,CAAC,CAAC;IAEhC,OAAO,GAAG,CAAC,GAAG,CAAC,GAAG,CAAC,EAAE;QACnB,MAAM,EAAE,GAAG,KAAK,GAAG,EAAE,CAAC;QACtB,OAAO;YACL,EAAE;YACF,OAAO,EAAE,EAAE;YACX,IAAI,EAAE,UAAU,EAAE,EAAE;YACpB,WAAW,EAAE,IAAI;YACjB,SAAS,EAAE,GAAG,EAAE;gBACd,gBAAgB,CAAC,EAAE,CAAC,CAAC;gBACrB,sBAAsB,CAAC,WAAW,EAAE,EAAE,CAAC,CAAC;YAC1C,CAAC;SACF,CAAC;IACJ,CAAC,CAAC,CAAC;AACL,CAAC,CAAC;AAwBF,MAAM,CAAC,MAAM,SAAS,GAAG,CAAC,EACxB,WAAW,EACX,WAAW,EACX,YAAY,EACZ,SAAS,EACT,IAAI,EACU,EAAE,EAAE;IAClB,OAAO,CACL,EACE;MAAA,CAAC,WAAW,IAAI,CAAC,eAAe,CAAC,AAAD,EAAG,CACnC;MAAA,CAAC,WAAW,IAAI,CAAC,eAAe,CAAC,AAAD,EAAG,CACnC;MAAA,CAAC,YAAY,IAAI,CAAC,gBAAgB,CAAC,AAAD,EAAG,CACrC;MAAA,CAAC,SAAS,IAAI,CAAC,eAAe,CAAC,IAAI,CAAC,WAAW,CAAC,IAAI,CAAC,WAAW,EAAG,CACnE;MAAA,CAAC,IAAI,IAAI,CAAC,QAAQ,CAAC,AAAD,EAAG,CACvB;IAAA,GAAG,CACJ,CAAC;AACJ,CAAC,CAAC;AAEF,MAAM,CAAC,MAAM,wBAAwB,GAAG,CAAC,EACvC,WAAW,EACX,WAAW,EACX,YAAY,EACZ,SAAS,EACT,IAAI,EACJ,sBAAsB,EACtB,eAAe,EACf,gBAAgB,EAChB,aAAa,EACb,YAAY,EACZ,UAAU,EACc,EAAuD,EAAE;IACjF,MAAM,KAAK,GAAwD,EAAE,CAAC;IAEtE,IAAI,WAAW;QACb,KAAK,CAAC,IAAI,CAAC;YACT,QAAQ,EAAE,SAAS;YACnB,IAAI,EAAE,aAAa;YACnB,OAAO,EAAE,CAAC,CAAC,EAAE;gBACX,IAAI,YAAY,KAAK,CAAC,CAAC,aAAa,IAAI,CAAC,UAAU,EAAE;oBACnD,eAAe,CAAC,CAAC,CAAC,aAAa,CAAC,CAAC;oBACjC,gBAAgB,CAAC,CAAC,eAAe,CAAC,AAAD,EAAG,CAAC,CAAC;oBACtC,aAAa,CAAC,IAAI,CAAC,CAAC;iBACrB;qBAAM;oBACL,eAAe,CAAC,IAAI,CAAC,CAAC;oBACtB,aAAa,CAAC,KAAK,CAAC,CAAC;iBACtB;YACH,CAAC;SACF,CAAC,CAAC;IACL,IAAI,WAAW;QACb,KAAK,CAAC,IAAI,CAAC;YACT,QAAQ,EAAE,YAAY;YACtB,KAAK,EAAE,CAAC;YACR,IAAI,EAAE,aAAa;YACnB,OAAO,EAAE,CAAC,CAAC,EAAE;gBACX,IAAI,YAAY,KAAK,CAAC,CAAC,aAAa,IAAI,CAAC,UAAU,EAAE;oBACnD,eAAe,CAAC,CAAC,CAAC,aAAa,CAAC,CAAC;oBACjC,gBAAgB,CAAC,CAAC,eAAe,CAAC,AAAD,EAAG,CAAC,CAAC;oBACtC,aAAa,CAAC,IAAI,CAAC,CAAC;iBACrB;qBAAM;oBACL,eAAe,CAAC,IAAI,CAAC,CAAC;oBACtB,aAAa,CAAC,KAAK,CAAC,CAAC;iBACtB;YACH,CAAC;SACF,CAAC,CAAC;IACL,IAAI,YAAY;QACd,KAAK,CAAC,IAAI,CAAC;YACT,QAAQ,EAAE,mBAAmB;YAC7B,KAAK,EAAE,EAAE;YACT,IAAI,EAAE,cAAc;YACpB,OAAO,EAAE,CAAC,CAAC,EAAE;gBACX,IAAI,YAAY,KAAK,CAAC,CAAC,aAAa,IAAI,CAAC,UAAU,EAAE;oBACnD,eAAe,CAAC,CAAC,CAAC,aAAa,CAAC,CAAC;oBACjC,gBAAgB,CAAC,CAAC,gBAAgB,CAAC,UAAU,CAAC,CAAC,sBAAsB,CAAC,EAAG,CAAC,CAAC;oBAC3E,aAAa,CAAC,IAAI,CAAC,CAAC;iBACrB;qBAAM;oBACL,eAAe,CAAC,IAAI,CAAC,CAAC;oBACtB,aAAa,CAAC,KAAK,CAAC,CAAC;iBACtB;YACH,CAAC;SACF,CAAC,CAAC;IACL,IAAI,SAAS;QACX,KAAK,CAAC,IAAI,CAAC;YACT,QAAQ,EAAE,iBAAiB;YAC3B,KAAK,EAAE,CAAC;YACR,IAAI,EAAE,WAAW;YACjB,OAAO,EAAE,CAAC,CAAC,EAAE;gBACX,IAAI,YAAY,KAAK,CAAC,CAAC,aAAa,IAAI,CAAC,UAAU,EAAE;oBACnD,eAAe,CAAC,CAAC,CAAC,aAAa,CAAC,CAAC;oBACjC,gBAAgB,CAAC,CAAC,eAAe,CAAC,IAAI,CAAC,WAAW,CAAC,IAAI,CAAC,WAAW,EAAG,CAAC,CAAC;oBACxE,aAAa,CAAC,IAAI,CAAC,CAAC;iBACrB;qBAAM;oBACL,eAAe,CAAC,IAAI,CAAC,CAAC;oBACtB,aAAa,CAAC,KAAK,CAAC,CAAC;iBACtB;YACH,CAAC;SACF,CAAC,CAAC;IACL,IAAI,IAAI;QACN,KAAK,CAAC,IAAI,CAAC;YACT,QAAQ,EAAE,KAAK;YACf,KAAK,EAAE,EAAE;YACT,IAAI,EAAE,MAAM;YACZ,OAAO,EAAE,CAAC,CAAC,EAAE;gBACX,IAAI,YAAY,KAAK,CAAC,CAAC,aAAa,IAAI,CAAC,UAAU,EAAE;oBACnD,eAAe,CAAC,CAAC,CAAC,aAAa,CAAC,CAAC;oBACjC,gBAAgB,CAAC,CAAC,QAAQ,CAAC,AAAD,EAAG,CAAC,CAAC;oBAC/B,aAAa,CAAC,IAAI,CAAC,CAAC;iBACrB;qBAAM;oBACL,eAAe,CAAC,IAAI,CAAC,CAAC;oBACtB,aAAa,CAAC,KAAK,CAAC,CAAC;iBACtB;YACH,CAAC;SACF,CAAC,CAAC;IAEL,OAAO,KAAK,CAAC;AACf,CAAC,CAAC;AAEF,MAAM,CAAC,MAAM,cAAc,GAAG,GAAG,EAAE;IACjC,OAAO,KAAK,CAAC,IAAI,CAAC,EAAE,MAAM,EAAE,EAAE,EAAE,EAAE,CAAC,CAAC,EAAE,CAAC,EAAE,EAAE;QACzC,OAAO;YACL,IAAI,EAAE,UAAU,CAAC,GAAG,CAAC,EAAE;YACvB,EAAE,EAAE,GAAG,CAAC,GAAG,CAAC,EAAE;YACd,OAAO,EAAE,GAAG,EAAE,GAAE,CAAC;SAClB,CAAC;IACJ,CAAC,CAAC,CAAC;AACL,CAAC,CAAC;AAEF,MAAM,UAAU,GAAG,CAAC,IAAiC,EAAE,EAAE;IACvD,OAAO;QACL,KAAK,EAAE,eAAe;QACtB,MAAM,EAAE,yDAAyD;QACjE,IAAI,EAAE,kGAAkG;KACzG,CAAC,IAAI,CAAC,CAAC;AACV,CAAC,CAAC;AAEF,MAAM,CAAC,MAAM,kBAAkB,GAAG,CAAC,KAAa,EAAE,EAAE;IAClD,OAAO;QACL;YACE,EAAE,EAAE,SAAS,EAAE;YACf,IAAI,EAAE,UAAU;YAChB,OAAO,EAAE,GAAG,EAAE,GAAE,CAAC;SAClB;QACD;YACE,EAAE,EAAE,SAAS,EAAE;YACf,IAAI,EAAE,gBAAgB;YACtB,OAAO,EAAE,GAAG,EAAE,GAAE,CAAC;SAClB;QACD;YACE,EAAE,EAAE,SAAS,EAAE;YACf,IAAI,EAAE,OAAO;YACb,OAAO,EAAE,GAAG,EAAE,GAAE,CAAC;SAClB;QACD;YACE,EAAE,EAAE,SAAS,EAAE;YACf,IAAI,EAAE,MAAM;YACZ,OAAO,EAAE,GAAG,EAAE,GAAE,CAAC;SAClB;QACD;YACE,EAAE,EAAE,SAAS,EAAE;YACf,IAAI,EAAE,UAAU;YAChB,OAAO,EAAE,GAAG,EAAE,GAAE,CAAC;SAClB;KACF,CAAC,KAAK,CAAC,CAAC,EAAE,KAAK,CAAC,CAAC;AACpB,CAAC,CAAC;AAEF,MAAM,8BAA8B,GAAG,MAAM,CAAC,GAAG,CAAC,CAAC,EAAE,KAAK,EAAE,EAAE,EAAE;IAC9D,OAAO,GAAG,CAAA;;sCAE0B,KAAK,CAAC,IAAI,CAAC,OAAO,CAAC,aAAa,CAAC;GACpE,CAAC;AACJ,CAAC,CAAC,CAAC;AAEH,MAAM,CAAC,MAAM,wBAAwB,GAAG,GAAG,EAAE;IAC3C,OAAO,CACL,CAAC,IAAI,CACH,SAAS,CAAC,CAAC,EAAE,OAAO,EAAE,QAAQ,EAAE,UAAU,EAAE,QAAQ,EAAE,CAAC,CACvD,EAAE,CAAC,CAAC,8BAA8B,CAAC,CAEnC;;IACF,EAAE,IAAI,CAAC,CACR,CAAC;AACJ,CAAC,CAAC;AAEF,MAAM,CAAC,MAAM,YAAY,GAAG,CAAC,EAC3B,MAAM,EAAE,UAAU,EAClB,OAAO,EACP,UAAU,EACV,WAAW,GAAG,KAAK,EACnB,eAAe,GAAG,CAAC,EACnB,aAAa,GAAG,KAAK,EACrB,IAAI,EACJ,MAAM,GAAG,IAAI,EACb,KAAK,GAAG,IAAI,EACZ,SAAS,GAAG,CAAC,EACb,iBAAiB,EAAE,qBAAqB,GAAG,IAAI,EAC/C,WAAW,GAAG,IAAI,EAClB,WAAW,GAAG,IAAI,EAClB,YAAY,GAAG,IAAI,EACnB,SAAS,GAAG,IAAI,EAChB,IAAI,GAAG,IAAI,EACX,iBAAiB,GAAG,KAAK,EACzB,mBAAmB,GAAG,KAAK,EAC3B,MAAM,GAAG,KAAK,EACd,aAAa,EACb,eAAe,EACf,sBAAsB,EACJ,EAAE,EAAE;IACtB,MAAM,CAAC,aAAa,EAAE,gBAAgB,CAAC,GAAG,QAAQ,CAAgB,IAAI,CAAC,CAAC;IACxE,MAAM,CAAC,mBAAmB,EAAE,sBAAsB,CAAC,GAAG,QAAQ,CAAC,YAAY,CAAC,CAAC,CAAC,CAAC,EAAE,CAAC,CAAC;IACnF,MAAM,eAAe,GAAG,aAAa,CAAC,IAAI,CAAC,CAAC;IAC5C,MAAM,CAAC,gBAAgB,EAAE,mBAAmB,CAAC,GAAG,QAAQ,CACtD,eAAe,CAAC,CAAC,CAAC,IAAI,EAAE,YAAY,IAAI,YAAY,CAAC,CAAC,CAAC,CAAC,EAAE,CAAC,CAAC,CAAC,WAAW,UAAU,EAAE,CACrF,CAAC;IAEF,MAAM,CAAC,aAAa,EAAE,gBAAgB,CAAC,GAAG,QAAQ,EAAa,CAAC;IAChE,MAAM,CAAC,YAAY,EAAE,eAAe,CAAC,GAAG,UAAU,EAAe,CAAC;IAClE,MAAM,CAAC,UAAU,EAAE,aAAa,CAAC,GAAG,QAAQ,CAAC,KAAK,CAAC,CAAC;IAEpD,MAAM,QAAQ,GAAG,IAAI,IAAI;QACvB,KAAK,EAAE,YAAY;QACnB,YAAY,EAAE,gBAAgB;QAC9B,OAAO,EAAE,mBAAmB;KAC7B,CAAC;IAEF,MAAM,WAAW,GAAG;QAClB,KAAK,EAAE,YAAY;QACnB,YAAY,EAAE,mBAAmB;QACjC,OAAO,EAAE,sBAAsB;KAChC,CAAC;IAEF,MAAM,kBAAkB,GAAG,cAAc,CAAC;QACxC,MAAM,EAAE,UAAU;QAClB,gBAAgB;QAChB,sBAAsB;KACvB,CAAC,CAAC;IAEH,MAAM,UAAU,GAAG,CAAC,UAAU,CAAC,YAAY,CAAC,CAAC,CAAC,CAAC,EAAG,CAAC;IAEnD,MAAM,CAAC,QAAQ,EAAE,WAAW,CAAC,GAAG,QAAQ,CAAC,KAAK,CAAC,CAAC;IAEhD,MAAM,CAAC,eAAe,EAAE,kBAAkB,CAAC,GAAG,QAAQ,CAAC,CAAC,CAAC,eAAe,CAAC,CAAC;IAC1E,MAAM,CAAC,iBAAiB,EAAE,oBAAoB,CAAC,GAAG,QAAQ,CAAC,qBAAqB,CAAC,CAAC;IAClF,MAAM,UAAU,GAAG,aAAa,CAAC;QAC/B,gBAAgB;QAChB,sBAAsB;KACvB,CAAC,CAAC;IAEH,OAAO,CACL,EACE;MAAA,CAAC,aAAa,IAAI,CAChB,CAAC,WAAW,CACV,IAAI,CACJ,YAAY,CAAC,CAAC,GAAG,EAAE;gBACjB,gBAAgB,CAAC,IAAI,CAAC,CAAC;YACzB,CAAC,CAAC,CACF,MAAM,CAAC,CAAC,aAAa,CAAC,CACtB,WAAW,CAAC,CACV,IAAI,CAAC,MAAM,EAAE,GAAG,GAAG;gBACjB,CAAC,CAAC,CAAC,GAAG,kBAAkB,CAAC;qBACpB,MAAM,CAAC,CAAC,CAAC,EAAE,CAAC,CAAC,CAAC,EAAE,KAAK,aAAa,CAAC;qBACnC,GAAG,CAAC,CAAC,CAAC,EAAE,CAAC,CAAC,EAAE,GAAG,CAAC,EAAE,EAAE,EAAE,WAAW,CAAC,CAAC,EAAE,EAAE,EAAE,CAAC,CAAC;gBAChD,CAAC,CAAC,SAAS,CACd,CACD,OAAO,CAAC,uBAAuB,CAC/B,UAAU,CAAC,CAAC,aAAa,CAAC,CAC1B,QAAQ,CAAC,CAAC,EAAE,IAAI,EAAE,UAAU,aAAa,EAAE,EAAE,MAAM,EAAE,QAAQ,EAAE,CAAC,CAChE,IAAI,CAAC,YAAY,CACjB,QAAQ,CAAC,CAAC,CAAC,QAAQ,CAAC,CACpB,MAAM,CAAC,CAAC,GAAG,EAAE,GAAE,CAAC,CAAC,CACjB,OAAO,CAAC,CAAC,cAAc,EAAE,CAAC,CAC1B,eAAe,CAAC,CAAC,kBAAkB,CAAC,CAAC,CAAC,CAAC,CACvC,aAAa,CAAC,CAAC;gBACb,OAAO,EAAE,wBAAwB;gBACjC,SAAS,EAAE,0BAA0B;aACtC,CAAC,CACF,MAAM,CAAC,CAAC,UAAU,CAAC,CACnB,KAAK,CAAC,CAAC,CAAC,eAAe,CAAC,KAAK,CAAC,CAAC,CAAC,CAAC,EAAG,CAAC,CACrC,IAAI,CAAC,CAAC,WAAW,CAAC,CAClB,UAAU,CAAC,CAAC,UAAU,CAAC,CACvB,SAAS,CAAC,CACR,CAAC,IAAI,CAAC,SAAS,CAAC,CAAC,EAAE,MAAM,EAAE,CAAC,EAAE,CAAC,CAC7B;cAAA,CAAC,SAAS,CACR,WAAW,CAAC,CAAC,WAAW,CAAC,CACzB,WAAW,CAAC,CAAC,WAAW,CAAC,CACzB,YAAY,CAAC,CAAC,YAAY,CAAC,CAC3B,SAAS,CAAC,CAAC,SAAS,CAAC,CACrB,IAAI,CAAC,CAAC,IAAI,CAAC,EAEf;YAAA,EAAE,IAAI,CAAC,CACR,EACD,CACH,CACD;MAAA,CAAC,YAAY,IAAI,UAAU,IAAI,CAC7B,CAAC,wBAAwB,CACvB,MAAM,CAAC,CAAC,YAAY,CAAC,CACrB,SAAS,CAAC,CAAC,GAAG,EAAE;gBACd,aAAa,CAAC,KAAK,CAAC,CAAC;YACvB,CAAC,CAAC,CAEF;UAAA,CAAC,aAAa,CAChB;QAAA,EAAE,wBAAwB,CAAC,CAC5B,CACD;MAAA,CAAC,QAAQ,CACP,MAAM,CAAC,CAAC,UAAU,CAAC,CACnB,WAAW,CAAC,CACV,WAAW;YACT,CAAC,CAAC,cAAc,CAAC;gBACb,MAAM,EAAE,UAAU;gBAClB,gBAAgB;gBAChB,sBAAsB;aACvB,CAAC;YACJ,CAAC,CAAC,SAAS,CACd,CACD,OAAO,CAAC,CAAC,aAAa,CAAC,CAAC,CAAC,UAAU,CAAC,aAAa,CAAC,CAAC,CAAC,CAAC,OAAO,CAAC,CAC7D,UAAU,CAAC,CAAC,UAAU,CAAC,CACvB,IAAI,CAAC,YAAY,CACjB,QAAQ,CAAC,CAAC,QAAQ,CAAC,CACnB,gBAAgB,CAAC,CAAC,WAAW,CAAC,CAC9B,OAAO,CAAC,CAAC,cAAc,EAAE,CAAC,CAC1B,eAAe,CAAC,CAAC,eAAe,CAAC,CAAC,CAAC,kBAAkB,CAAC,eAAe,CAAC,CAAC,CAAC,CAAC,SAAS,CAAC,CACnF,MAAM,CAAC,CAAC,GAAG,EAAE,GAAE,CAAC,CAAC,CACjB,aAAa,CAAC,CAAC,CAAC,GAAG,EAAE;YACnB,MAAM,GAAG,GAAmC;gBAC1C,OAAO,EAAE,gBAAgB,EAAE;gBAC3B,SAAS,EAAE,kBAAkB,CAAC,EAAE,gBAAgB,EAAE,sBAAsB,EAAE,CAAC;aAC5E,CAAC;YAEF,IAAI,aAAa,KAAK,cAAc,EAAE;gBACpC,GAAG,CAAC,SAAS,GAAG,SAAS,CAAC;aAC3B;YAED,IAAI,aAAa,KAAK,gBAAgB,EAAE;gBACtC,GAAG,CAAC,OAAO,GAAG,SAAS,CAAC;aACzB;YAED,OAAO,GAAG,CAAC;QACb,CAAC,CAAC,EAAE,CAAC,CACL,eAAe,CAAC,CAAC,eAAe,CAAC,CACjC,eAAe,CAAC,CAAC,GAAG,EAAE;YACpB,kBAAkB,CAAC,GAAG,CAAC,EAAE,CAAC,CAAC,GAAG,CAAC,CAAC;QAClC,CAAC,CAAC,CACF,IAAI,CAAC,CAAC,QAAQ,CAAC,CACf,iBAAiB,CAAC,CAAC,CAAC,GAAG,EAAE;YACvB,IAAI,OAAO,iBAAiB,KAAK,SAAS,EAAE;gBAC1C,OAAO,iBAAiB;oBACtB,CAAC,CAAC,EAAE,KAAK,EAAE,oBAAoB,EAAE,OAAO,EAAE,CAAC,wBAAwB,CAAC,AAAD,EAAG,EAAE;oBACxE,CAAC,CAAC,SAAS,CAAC;aACf;YAED,OAAO,iBAAiB,CAAC;QAC3B,CAAC,CAAC,EAAE,CAAC,CACL,MAAM,CAAC,CAAC,MAAM,CAAC,CAAC,CAAC,UAAU,CAAC,CAAC,CAAC,SAAS,CAAC,CACxC,KAAK,CAAC,CAAC,KAAK,CAAC,CAAC,CAAC,CAAC,eAAe,CAAC,KAAK,CAAC,CAAC,SAAS,CAAC,EAAG,CAAC,CAAC,CAAC,SAAS,CAAC,CACjE,UAAU,CAAC,CAAC,UAAU,CAAC,CACvB,SAAS,CAAC,CACR,CAAC,SAAS,CACR,WAAW,CAAC,CAAC,WAAW,CAAC,CACzB,WAAW,CAAC,CAAC,WAAW,CAAC,CACzB,YAAY,CAAC,CAAC,YAAY,CAAC,CAC3B,SAAS,CAAC,CAAC,SAAS,CAAC,CACrB,IAAI,CAAC,CAAC,IAAI,CAAC,EACX,CACH,CACD,qBAAqB,CAAC,CAAC,wBAAwB,CAAC;YAC9C,WAAW;YACX,WAAW;YACX,YAAY;YACZ,SAAS;YACT,IAAI;YACJ,sBAAsB;YACtB,eAAe;YACf,gBAAgB;YAChB,aAAa;YACb,YAAY;YACZ,UAAU;SACX,CAAC,CAAC,CACH,iBAAiB,CAAC,CAAC,iBAAiB,CAAC,CACrC,iBAAiB,CAAC,CAAC,GAAG,EAAE;YACtB,oBAAoB,CAAC,GAAG,CAAC,EAAE,CAAC,CAAC,GAAG,CAAC,CAAC;QACpC,CAAC,CAAC,CACF,mBAAmB,CAAC,CAAC,mBAAmB,CAAC,CACzC,OAAO,CAAC,CACN,MAAM,CAAC,CAAC,CAAC,CACP,CAAC,MAAM,CACL,OAAO,CAAC,QAAQ,CAChB,QAAQ,CAAC,CAAC;gBACR;oBACE,KAAK,EAAE,mBAAmB;oBAC1B,WAAW,EACT,+bAA+b;oBACjc,MAAM,EAAE;wBACN,IAAI,EAAE,YAAY;qBACnB;iBACF;aACF,CAAC,EACF,CACH,CAAC,CAAC,CAAC,SAAS,CACd,EAEL;IAAA,GAAG,CACJ,CAAC;AACJ,CAAC,CAAC","sourcesContent":["import { useMemo, useState } from 'react';\nimport type { Dispatch, MouseEvent, ReactNode, SetStateAction } from 'react';\nimport createDOMPurify from 'dompurify';\nimport styled, { css } from 'styled-components';\n\nimport {\n Button,\n Link,\n createStringMatcher,\n Modal,\n SummaryList,\n useModalManager,\n useElement,\n ViewAll,\n Status,\n Flex,\n Grid,\n registerIcon,\n Banner,\n createUID,\n useBreakpoint,\n Avatar,\n Tabs,\n TabPanel,\n Card,\n CardHeader,\n Text\n} from '@pega/cosmos-react-core';\nimport type { SummaryListProps } from '@pega/cosmos-react-core';\nimport type { Tab } from '@pega/cosmos-react-core/lib/components/Tabs/Tabs.types';\nimport { Glimpse, CaseView, CasePreview, UtilitySummaryItemDialog } from '@pega/cosmos-react-work';\nimport type { CaseViewProps } from '@pega/cosmos-react-work';\nimport { RichTextViewer } from '@pega/cosmos-react-rte';\nimport type { TokenMap } from '@pega/cosmos-react-rte';\nimport * as userSolidIcon from '@pega/cosmos-react-core/lib/components/Icon/icons/user-solid.icon';\nimport type { FeedProps } from '@pega/cosmos-react-social';\n\nimport { PredictionsDemo } from '../Predictions/Predictions.stories';\nimport { useMockListData } from '../../core/SummaryList/SummaryList.mocks';\nimport { StakeHoldersDemo } from '../Stakeholders/Stakeholders.stories';\nimport { TagsDemo } from '../Tags/Tags.stories';\nimport { StagesDemo } from '../Stages/Stages.stories';\nimport { AssignmentsDemo } from '../Assignments/Assignments.stories';\n\nimport { PulseMock } from './Pulse.mocks';\nimport { Details } from './Details.mocks';\nimport { AttachmentsMock } from './Attachments.mocks';\n\nregisterIcon(userSolidIcon);\n\nconst DOMPurify = createDOMPurify();\n\nexport interface CaseViewMockProps {\n caseId: CaseViewProps['caseId'];\n heading: CaseViewProps['heading'];\n subheading?: CaseViewProps['subheading'];\n parentCases?: boolean;\n summaryFields?: 'All' | 'Primary only' | 'Secondary only';\n tabs?: CaseViewProps['tabs'];\n stages?: boolean;\n tasks?: boolean | CaseViewProps['tasks'];\n taskCount?: number;\n predictions?: boolean;\n attachments?: boolean;\n stakeholders?: boolean;\n followers?: boolean;\n tags?: boolean;\n persistentUtility?: boolean | CaseViewProps['persistentUtility'];\n intelligentGuidance?: CaseViewProps['intelligentGuidance'];\n banner?: boolean;\n utilitiesExpanded?: boolean;\n promotedActions?: 0 | 1 | 2 | 3 | 4 | 5;\n headingLength?: 'short' | 'medium' | 'long';\n defaultExpanded?: boolean;\n hideStakeholdersAddNew?: boolean;\n}\n\ninterface PreviewSetters {\n setPreviewCaseId: Dispatch<SetStateAction<string | null>>;\n setPreviewCurrentTabId: Dispatch<SetStateAction<string>>;\n}\n\nconst StyledRSWrapper = styled.div(\n ({ theme }) => css`\n display: grid;\n place-items: center;\n border: 0.1875rem dashed ${theme.base.palette['border-line']};\n min-height: 6rem;\n height: var(--content-height-in-view);\n border-radius: calc(${theme.components.card['border-radius']});\n `\n);\n\n// This is a mini mock of the Constellation table component aka Repeating Structures\nconst RSTable = () => {\n return (\n <article style={{ display: 'block' }}>\n <StyledRSWrapper className='rs-wrapper'>\n <Text variant='secondary'>Table goes here</Text>\n </StyledRSWrapper>\n </article>\n );\n};\n\nconst TableSizingTabs = ({ tabCount = 3 }: { tabCount?: number }) => {\n const [currentTabId, setCurrentTabId] = useState('1');\n\n const tabs = [\n { name: 'Tab 1', id: '1' },\n { name: 'Tab 2', id: '2' },\n { name: 'Tab 3', id: '3' }\n ].slice(0, tabCount);\n\n return (\n <Flex container={{ direction: 'column', gap: 2 }}>\n <Tabs\n tabs={tabs}\n type='horizontal'\n onTabClick={id => {\n setCurrentTabId(id);\n }}\n currentTabId={currentTabId}\n />\n {tabs.map(tab => (\n <TabPanel tabId={tab.id} currentTabId={currentTabId} key={tab.id}>\n <Flex container={{ direction: 'column', gap: 1 }}>\n {(() => {\n switch (tab.id) {\n case '1':\n return <RSTable />;\n\n case '2':\n return (\n <>\n <RSTable />\n <p>\n Lorem ipsum dolor sit amet, consectetur adipiscing elit, sed do eiusmod\n tempor incididunt ut labore et dolore magna aliqua. Ut enim ad minim veniam,\n quis nostrud exercitation ullamco laboris nisi ut aliquip ex ea commodo\n consequat. Duis aute irure dolor in reprehenderit in voluptate velit esse\n cillum dolore eu fugiat nulla pariatur. Excepteur sint occaecat cupidatat\n non proident, sunt in culpa qui officia deserunt mollit anim id est laborum.\n </p>\n </>\n );\n\n case '3':\n return <TableSizingTabs tabCount={2} />;\n\n default:\n return null;\n }\n })()}\n </Flex>\n </TabPanel>\n ))}\n </Flex>\n );\n};\n\nexport const caseId = 'C-123456';\n\nexport const createDate = new Date(2016, 1, 8);\nconst msInYear = 1000 * 60 * 60 * 24 * 365;\nconst diffInYears = Math.floor((Date.now() - createDate.getTime()) / msInYear);\n\nexport const tabLabels = ['Details', 'Pulse', 'Single table', 'Sub tab table', 'Multiple tables'];\n\nexport const baseCaseTabs = tabLabels.map((name): Tab => {\n return {\n name,\n id: name\n };\n});\n\nconst singularize = (s = '') => s.replace(/s$/i, '').toLowerCase();\n\nexport const MockSummaryListViewAllModal = ({ name, count }: any) => {\n const [search, setSearch] = useState('');\n const [loading, setLoading] = useState(true);\n const [items] = useMockListData(\n () => {\n setLoading(false);\n },\n {\n count\n }\n );\n\n const onSearchChange = (value: string) => {\n setSearch(value.trim());\n };\n\n const itemsToRender = useMemo(() => {\n if (search) {\n const regEx = createStringMatcher(search, 'boundary');\n return items.filter(({ primary, id }) => regEx.test(primary) || regEx.test(id));\n }\n\n return items;\n }, [items, search]);\n\n return (\n <Modal heading={name}>\n <ViewAll\n loading={loading}\n items={itemsToRender}\n actions={[\n {\n id: 'addNew',\n text: `Add ${singularize(name)}`\n }\n ]}\n searchInputProps={{ onSearchChange }}\n />\n </Modal>\n );\n};\n\nexport const MockSummaryList = ({\n icon,\n name,\n actions,\n limit\n}: Pick<SummaryListProps, 'icon' | 'name'> & { actions?: null; limit?: number }) => {\n const { create: createModal } = useModalManager();\n const [loading, setLoading] = useState(true);\n const count = 50;\n\n const [items] = useMockListData(\n () => {\n setLoading(false);\n },\n { count: limit }\n );\n\n return (\n <SummaryList\n loading={loading}\n items={items}\n icon={icon}\n name={name}\n headingTag='h3'\n count={loading ? undefined : count}\n actions={\n actions !== null\n ? [\n {\n text: 'Add',\n id: `${name}:addNew`,\n icon: 'plus',\n onClick() {\n createModal(() => {\n const singularName = singularize(name);\n return (\n <Modal heading={`Add new ${singularName}`}>\n {`Content for adding a new ${singularName} goes here…`}\n </Modal>\n );\n });\n }\n }\n ]\n : undefined\n }\n onViewAll={() => {\n createModal(MockSummaryListViewAllModal, {\n name,\n count\n });\n }}\n />\n );\n};\n\nexport const MockOperatorFieldValue = () => {\n const [target, setTarget] = useElement<HTMLButtonElement>(null);\n\n return (\n <>\n <Button\n variant='link'\n onClick={(e: MouseEvent<HTMLButtonElement>) => {\n setTarget(e.currentTarget);\n }}\n >\n constellation@pega.com\n </Button>\n {target && (\n <Glimpse\n id='constellation'\n target={target}\n onDismiss={() => setTarget(null)}\n heading={{\n primary: 'Constellation Operator',\n secondary: 'Director of the stars',\n visual: <Avatar name='Constellation Operator' />\n }}\n fields={[\n {\n id: '1',\n name: 'Department',\n value: 'Space Travel'\n },\n {\n id: '2',\n name: 'Manager',\n value: 'Captain Galaxy'\n },\n {\n id: '3',\n name: 'Location',\n value: 'A galaxy far away'\n },\n {\n id: '4',\n name: 'Email',\n value: <Link href='mailto:constellation@pega.com'>constellation@pega.com</Link>\n },\n {\n id: '5',\n name: 'Telephone',\n value: <Link href='tel:555-123-4567'>555-123-4567</Link>\n }\n ]}\n onViewProfile={() => {}}\n />\n )}\n </>\n );\n};\n\nexport const PreviewLinkComponent = ({\n token: linkToken,\n setPreviewCaseId,\n setPreviewCurrentTabId\n}: { token: TokenMap['link'] } & PreviewSetters) => {\n return (\n <Link\n href={linkToken.href}\n previewable\n onPreview={() => {\n setPreviewCaseId(linkToken.href);\n setPreviewCurrentTabId(`summary-${linkToken.href}`);\n }}\n >\n {linkToken.text}\n </Link>\n );\n};\n\nexport const getPulseMarkdownMap = ({\n setPreviewCaseId,\n setPreviewCurrentTabId\n}: PreviewSetters): FeedProps['markdownMap'] => {\n return {\n link: (linkToken: TokenMap['link']) => {\n if (linkToken.href?.startsWith('C-')) {\n return () => (\n <PreviewLinkComponent\n token={linkToken}\n setPreviewCaseId={setPreviewCaseId}\n setPreviewCurrentTabId={setPreviewCurrentTabId}\n />\n );\n }\n }\n };\n};\n\nexport const onMentionPreview = ({\n id,\n type,\n setPreviewCaseId,\n setPreviewCurrentTabId\n}: {\n id: string;\n type: string;\n} & PreviewSetters) => {\n if (type === 'case') {\n setPreviewCaseId(id);\n setPreviewCurrentTabId(`summary-${id}`);\n }\n};\n\nexport const getTabContent = ({ setPreviewCaseId, setPreviewCurrentTabId }: PreviewSetters) => {\n return [\n {\n id: 'Details',\n content: <Details />\n },\n {\n id: 'Pulse',\n content: (\n <PulseMock\n markdownMap={getPulseMarkdownMap({ setPreviewCaseId, setPreviewCurrentTabId })}\n onMentionPreview={({ id, type }) => {\n onMentionPreview({ id, type, setPreviewCaseId, setPreviewCurrentTabId });\n }}\n />\n )\n },\n {\n id: 'Single table',\n content: <RSTable />\n },\n {\n id: 'Sub tab table',\n content: <TableSizingTabs />\n },\n {\n id: 'Multiple tables',\n content: (\n <Card>\n <CardHeader>\n <Text variant='h2'>Multiple tables</Text>\n </CardHeader>\n <Flex container={{ direction: 'column', gap: 2 }}>\n <RSTable />\n <RSTable />\n </Flex>\n </Card>\n )\n },\n {\n id: 'not found',\n content: <h2>Not Found</h2>\n }\n ];\n};\n\nexport const previewTabContent = [\n {\n id: 'Details',\n content: <Details />\n },\n {\n id: 'Pulse',\n content: <PulseMock />\n },\n {\n id: 'Single table',\n content: <RSTable />\n },\n {\n id: 'Sub tab table',\n content: <TableSizingTabs />\n },\n {\n id: 'Multiple tables',\n content: (\n <Card>\n <CardHeader>\n <Text variant='h2'>Multiple tables</Text>\n </CardHeader>\n <Flex container={{ direction: 'column', gap: 2 }}>\n <RSTable />\n <RSTable />\n </Flex>\n </Card>\n )\n },\n {\n id: 'not found',\n content: <h2>Not Found</h2>\n }\n];\n\nexport const getPrimaryFields = () => {\n return [\n {\n name: 'Create date',\n value: createDate.toDateString()\n },\n {\n name: 'Member ID',\n value: 'M205435569FD1234567890'\n },\n {\n name: 'Assigned to',\n value: 'Dean Thomas'\n },\n {\n name: 'Priority',\n value: '95'\n }\n ].map((f, i) => ({ ...f, id: `p-${i}` }));\n};\n\nconst baseSecondaryFields: CaseViewProps['summaryFields']['secondary'] = [\n {\n name: 'Status',\n value: <Status variant='info'>New</Status>\n },\n {\n name: 'Update date',\n value: `${diffInYears} years ago`\n },\n {\n name: 'Description',\n value: (\n <RichTextViewer\n content='<p>Lorem ipsum dolor sit amet, consectetur adipiscing elit. Suspendisse commodo nulla vitae mi bibendum, a fringilla nisl efficitur. Praesent vitae nulla lobortis, finibus felis ultricies, fermentum mi. Nunc lorem ligula, placerat nec elit id, auctor pellentesque est.</p> </br> <p>Pellentesque pharetra justo augue, non maximus nulla venenatis et. Sed laoreet ultricies ullamcorper. Mauris ac nulla quis ipsum semper fringilla in eget risus. Fusce cursus sollicitudin nibh molestie volutpat.</p>'\n type='html'\n />\n ),\n simpleValue: DOMPurify.sanitize(\n '<p>Lorem ipsum dolor sit amet, consectetur adipiscing elit. Suspendisse commodo nulla vitae mi bibendum, a fringilla nisl efficitur. Praesent vitae nulla lobortis, finibus felis ultricies, fermentum mi. Nunc lorem ligula, placerat nec elit id, auctor pellentesque est.</p> </br> <p>Pellentesque pharetra justo augue, non maximus nulla venenatis et. Sed laoreet ultricies ullamcorper. Mauris ac nulla quis ipsum semper fringilla in eget risus. Fusce cursus sollicitudin nibh molestie volutpat.</p>',\n {\n ALLOWED_TAGS: [],\n ALLOWED_ATTR: [],\n KEEP_CONTENT: true\n }\n ),\n variant: 'stacked'\n }\n];\n\nexport const getSecondaryFields = ({\n setPreviewCaseId,\n setPreviewCurrentTabId\n}: PreviewSetters) => {\n return [\n ...baseSecondaryFields,\n {\n name: 'Created by',\n value: <MockOperatorFieldValue />\n },\n {\n name: 'Previewable case',\n value: (\n <Link\n href='/cases/C-456'\n previewable\n onPreview={() => {\n setPreviewCaseId('C-456');\n setPreviewCurrentTabId('summary-C-456');\n }}\n >\n Previewable Case - C-456\n </Link>\n )\n }\n ];\n};\n\nexport const casePreviewPrimaryFields = [\n {\n name: 'Member ID',\n value: 'M204859F438G'\n },\n {\n name: 'Priority',\n value: '95'\n }\n];\n\nexport const casePreviewSecondaryFields = baseSecondaryFields;\n\nexport const getParentCases = ({\n setPreviewCaseId,\n setPreviewCurrentTabId\n}: {\n caseId: CaseViewProps['caseId'];\n} & PreviewSetters) => {\n let ids: number[] = [];\n\n /** random-ish number from 100000 to 999999 */\n const randomId = (seed = 1) => {\n const x = Math.sin(seed);\n let rand = x - Math.floor(x);\n\n if (rand < 0.1) {\n rand += 0.1;\n }\n\n return Math.floor(rand * 1000000);\n };\n\n for (let i = 0; i < 5; i += 1) {\n ids.push(randomId(i + 1));\n }\n\n ids = ids.sort((a, b) => a - b);\n\n return ids.map(num => {\n const id = `C-${num}`;\n return {\n id,\n primary: id,\n href: `/cases/${id}`,\n previewable: true,\n onPreview: () => {\n setPreviewCaseId(id);\n setPreviewCurrentTabId(`summary-${id}`);\n }\n };\n });\n};\n\ninterface UtilitiesArgs {\n predictions?: CaseViewMockProps['predictions'];\n attachments?: CaseViewMockProps['attachments'];\n stakeholders?: CaseViewMockProps['stakeholders'];\n followers?: CaseViewMockProps['followers'];\n tags?: CaseViewMockProps['tags'];\n}\n\ninterface UtilitySummaryItemsArgs {\n predictions?: CaseViewMockProps['predictions'];\n attachments?: CaseViewMockProps['attachments'];\n stakeholders?: CaseViewMockProps['stakeholders'];\n followers?: CaseViewMockProps['followers'];\n tags?: CaseViewMockProps['tags'];\n hideStakeholdersAddNew?: boolean;\n setDialogTarget: (instance: HTMLElement | null) => void;\n setDialogContent: React.Dispatch<React.SetStateAction<ReactNode>>;\n setShowDialog: React.Dispatch<React.SetStateAction<boolean>>;\n dialogTarget: HTMLElement | null;\n showDialog: boolean;\n}\n\nexport const Utilities = ({\n predictions,\n attachments,\n stakeholders,\n followers,\n tags\n}: UtilitiesArgs) => {\n return (\n <>\n {predictions && <PredictionsDemo />}\n {attachments && <AttachmentsMock />}\n {stakeholders && <StakeHoldersDemo />}\n {followers && <MockSummaryList icon='user-star' name='Followers' />}\n {tags && <TagsDemo />}\n </>\n );\n};\n\nexport const getUtilitiesSummaryItems = ({\n predictions,\n attachments,\n stakeholders,\n followers,\n tags,\n hideStakeholdersAddNew,\n setDialogTarget,\n setDialogContent,\n setShowDialog,\n dialogTarget,\n showDialog\n}: UtilitySummaryItemsArgs): NonNullable<CaseViewProps['utilitiesSummaryItems']> => {\n const items: NonNullable<CaseViewProps['utilitiesSummaryItems']> = [];\n\n if (predictions)\n items.push({\n iconName: 'polaris',\n name: 'Predictions',\n onClick: e => {\n if (dialogTarget !== e.currentTarget || !showDialog) {\n setDialogTarget(e.currentTarget);\n setDialogContent(<PredictionsDemo />);\n setShowDialog(true);\n } else {\n setDialogTarget(null);\n setShowDialog(false);\n }\n }\n });\n if (attachments)\n items.push({\n iconName: 'paper-clip',\n count: 4,\n name: 'Attachments',\n onClick: e => {\n if (dialogTarget !== e.currentTarget || !showDialog) {\n setDialogTarget(e.currentTarget);\n setDialogContent(<AttachmentsMock />);\n setShowDialog(true);\n } else {\n setDialogTarget(null);\n setShowDialog(false);\n }\n }\n });\n if (stakeholders)\n items.push({\n iconName: 'user-search-solid',\n count: 10,\n name: 'Stakeholders',\n onClick: e => {\n if (dialogTarget !== e.currentTarget || !showDialog) {\n setDialogTarget(e.currentTarget);\n setDialogContent(<StakeHoldersDemo hideAddNew={hideStakeholdersAddNew} />);\n setShowDialog(true);\n } else {\n setDialogTarget(null);\n setShowDialog(false);\n }\n }\n });\n if (followers)\n items.push({\n iconName: 'user-star-solid',\n count: 5,\n name: 'Followers',\n onClick: e => {\n if (dialogTarget !== e.currentTarget || !showDialog) {\n setDialogTarget(e.currentTarget);\n setDialogContent(<MockSummaryList icon='user-star' name='Followers' />);\n setShowDialog(true);\n } else {\n setDialogTarget(null);\n setShowDialog(false);\n }\n }\n });\n if (tags)\n items.push({\n iconName: 'tag',\n count: 10,\n name: 'Tags',\n onClick: e => {\n if (dialogTarget !== e.currentTarget || !showDialog) {\n setDialogTarget(e.currentTarget);\n setDialogContent(<TagsDemo />);\n setShowDialog(true);\n } else {\n setDialogTarget(null);\n setShowDialog(false);\n }\n }\n });\n\n return items;\n};\n\nexport const getCaseActions = () => {\n return Array.from({ length: 12 }, (_, i) => {\n return {\n text: `Action ${i + 1}`,\n id: `${i + 1}`,\n onClick: () => {}\n };\n });\n};\n\nconst getHeading = (size: 'short' | 'medium' | 'long') => {\n return {\n short: 'Constellation',\n medium: 'Complicated constellation demo case of some distinction',\n long: 'The scenario in this case is almost too obscure to put into words and so the title is quite long'\n }[size];\n};\n\nexport const getPromotedActions = (count: number) => {\n return [\n {\n id: createUID(),\n text: 'Reassign',\n onClick: () => {}\n },\n {\n id: createUID(),\n text: 'Add dependency',\n onClick: () => {}\n },\n {\n id: createUID(),\n text: 'Clone',\n onClick: () => {}\n },\n {\n id: createUID(),\n text: 'Move',\n onClick: () => {}\n },\n {\n id: createUID(),\n text: 'Withdraw',\n onClick: () => {}\n }\n ].slice(0, count);\n};\n\nconst StyledPersistentUtilityContent = styled.div(({ theme }) => {\n return css`\n height: 100%;\n border-inline: 0.0625rem dashed ${theme.base.palette['border-line']};\n `;\n});\n\nexport const PersistentUtilityContent = () => {\n return (\n <Flex\n container={{ justify: 'center', alignItems: 'center' }}\n as={StyledPersistentUtilityContent}\n >\n Persistent utility content\n </Flex>\n );\n};\n\nexport const CaseViewMock = ({\n caseId: caseIdProp,\n heading,\n subheading,\n parentCases = false,\n promotedActions = 1,\n summaryFields = 'All',\n tabs,\n stages = true,\n tasks = true,\n taskCount = 4,\n utilitiesExpanded: utilitiesExpandedProp = true,\n predictions = true,\n attachments = true,\n stakeholders = true,\n followers = true,\n tags = true,\n persistentUtility = false,\n intelligentGuidance = false,\n banner = false,\n headingLength,\n defaultExpanded,\n hideStakeholdersAddNew\n}: CaseViewMockProps) => {\n const [previewCaseId, setPreviewCaseId] = useState<null | string>(null);\n const [previewCurrentTabId, setPreviewCurrentTabId] = useState(baseCaseTabs[0].id);\n const isMediumOrAbove = useBreakpoint('md');\n const [demoCurrentTabId, setDemoCurrentTabId] = useState(\n isMediumOrAbove ? tabs?.currentTabId ?? baseCaseTabs[0].id : `summary-${caseIdProp}`\n );\n\n const [dialogContent, setDialogContent] = useState<ReactNode>();\n const [dialogTarget, setDialogTarget] = useElement<HTMLElement>();\n const [showDialog, setShowDialog] = useState(false);\n\n const demoTabs = tabs ?? {\n items: baseCaseTabs,\n currentTabId: demoCurrentTabId,\n onClick: setDemoCurrentTabId\n };\n\n const previewTabs = {\n items: baseCaseTabs,\n currentTabId: previewCurrentTabId,\n onClick: setPreviewCurrentTabId\n };\n\n const parentCasesContent = getParentCases({\n caseId: caseIdProp,\n setPreviewCaseId,\n setPreviewCurrentTabId\n });\n\n const demoStages = <StagesDemo currentStage={3} />;\n\n const [followed, setFollowed] = useState(false);\n\n const [summaryExpanded, setSummaryExpanded] = useState(!!defaultExpanded);\n const [utilitiesExpanded, setUtilitiesExpanded] = useState(utilitiesExpandedProp);\n const tabContent = getTabContent({\n setPreviewCaseId,\n setPreviewCurrentTabId\n });\n\n return (\n <>\n {previewCaseId && (\n <CasePreview\n open\n onAfterClose={() => {\n setPreviewCaseId(null);\n }}\n caseId={previewCaseId}\n parentCases={\n Math.random() > 0.5\n ? [...parentCasesContent]\n .filter(c => c.id !== previewCaseId)\n .map(c => ({ ...c, id: `preview-${c.id}` }))\n : undefined\n }\n heading='Previewable demo case'\n subheading={previewCaseId}\n caseLink={{ href: `/cases/${previewCaseId}`, target: '_blank' }}\n icon='user-solid'\n followed={!followed}\n onEdit={() => {}}\n actions={getCaseActions()}\n promotedActions={getPromotedActions(2)}\n summaryFields={{\n primary: casePreviewPrimaryFields,\n secondary: casePreviewSecondaryFields\n }}\n stages={demoStages}\n tasks={<AssignmentsDemo count={4} />}\n tabs={previewTabs}\n tabContent={tabContent}\n utilities={\n <Grid container={{ rowGap: 2 }}>\n <Utilities\n predictions={predictions}\n attachments={attachments}\n stakeholders={stakeholders}\n followers={followers}\n tags={tags}\n />\n </Grid>\n }\n />\n )}\n {dialogTarget && showDialog && (\n <UtilitySummaryItemDialog\n target={dialogTarget}\n onDismiss={() => {\n setShowDialog(false);\n }}\n >\n {dialogContent}\n </UtilitySummaryItemDialog>\n )}\n <CaseView\n caseId={caseIdProp}\n parentCases={\n parentCases\n ? getParentCases({\n caseId: caseIdProp,\n setPreviewCaseId,\n setPreviewCurrentTabId\n })\n : undefined\n }\n heading={headingLength ? getHeading(headingLength) : heading}\n subheading={subheading}\n icon='user-solid'\n followed={followed}\n onFollowedChange={setFollowed}\n actions={getCaseActions()}\n promotedActions={promotedActions ? getPromotedActions(promotedActions) : undefined}\n onEdit={() => {}}\n summaryFields={(() => {\n const obj: CaseViewProps['summaryFields'] = {\n primary: getPrimaryFields(),\n secondary: getSecondaryFields({ setPreviewCaseId, setPreviewCurrentTabId })\n };\n\n if (summaryFields === 'Primary only') {\n obj.secondary = undefined;\n }\n\n if (summaryFields === 'Secondary only') {\n obj.primary = undefined;\n }\n\n return obj;\n })()}\n summaryExpanded={summaryExpanded}\n onToggleSummary={() => {\n setSummaryExpanded(cur => !cur);\n }}\n tabs={demoTabs}\n persistentUtility={(() => {\n if (typeof persistentUtility === 'boolean') {\n return persistentUtility\n ? { title: 'Persistent utility', content: <PersistentUtilityContent /> }\n : undefined;\n }\n\n return persistentUtility;\n })()}\n stages={stages ? demoStages : undefined}\n tasks={tasks ? <AssignmentsDemo count={taskCount} /> : undefined}\n tabContent={tabContent}\n utilities={\n <Utilities\n predictions={predictions}\n attachments={attachments}\n stakeholders={stakeholders}\n followers={followers}\n tags={tags}\n />\n }\n utilitiesSummaryItems={getUtilitiesSummaryItems({\n predictions,\n attachments,\n stakeholders,\n followers,\n tags,\n hideStakeholdersAddNew,\n setDialogTarget,\n setDialogContent,\n setShowDialog,\n dialogTarget,\n showDialog\n })}\n utilitiesExpanded={utilitiesExpanded}\n onToggleUtilities={() => {\n setUtilitiesExpanded(cur => !cur);\n }}\n intelligentGuidance={intelligentGuidance}\n banners={\n banner ? (\n <Banner\n variant='urgent'\n messages={[\n {\n label: 'An error occurred',\n description:\n 'Lorem ipsum dolor sit amet, consectetur adipiscing elit, sed do eiusmod tempor incididunt ut labore et dolore magna aliqua. Ut enim ad minim veniam, quis nostrud exercitation ullamco laboris nisi ut aliquip ex ea commodo consequat. Duis aute irure dolor in reprehenderit in voluptate velit esse cillum dolore eu fugiat nulla pariatur. Excepteur sint occaecat cupidatat non proident, sunt in culpa qui officia deserunt mollit anim id est laborum.',\n action: {\n text: 'Take acton'\n }\n }\n ]}\n />\n ) : undefined\n }\n />\n </>\n );\n};\n"]}
|
|
@@ -95,9 +95,11 @@ interface UtilitySummaryItemsArgs {
|
|
|
95
95
|
setDialogTarget: (instance: HTMLElement | null) => void;
|
|
96
96
|
setDialogContent: React.Dispatch<React.SetStateAction<ReactNode>>;
|
|
97
97
|
setShowDialog: React.Dispatch<React.SetStateAction<boolean>>;
|
|
98
|
+
dialogTarget: HTMLElement | null;
|
|
99
|
+
showDialog: boolean;
|
|
98
100
|
}
|
|
99
101
|
export declare const Utilities: ({ predictions, attachments, stakeholders, followers, tags }: UtilitiesArgs) => JSX.Element;
|
|
100
|
-
export declare const getUtilitiesSummaryItems: ({ predictions, attachments, stakeholders, followers, tags, hideStakeholdersAddNew, setDialogTarget, setDialogContent, setShowDialog }: UtilitySummaryItemsArgs) => NonNullable<CaseViewProps['utilitiesSummaryItems']>;
|
|
102
|
+
export declare const getUtilitiesSummaryItems: ({ predictions, attachments, stakeholders, followers, tags, hideStakeholdersAddNew, setDialogTarget, setDialogContent, setShowDialog, dialogTarget, showDialog }: UtilitySummaryItemsArgs) => NonNullable<CaseViewProps['utilitiesSummaryItems']>;
|
|
101
103
|
export declare const getCaseActions: () => {
|
|
102
104
|
text: string;
|
|
103
105
|
id: string;
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"CaseView.mocks.d.ts","sourceRoot":"","sources":["../../../src/work/CaseView/CaseView.mocks.tsx"],"names":[],"mappings":"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
|
|
1
|
+
{"version":3,"file":"CaseView.mocks.d.ts","sourceRoot":"","sources":["../../../src/work/CaseView/CaseView.mocks.tsx"],"names":[],"mappings":"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"}
|
|
@@ -328,16 +328,22 @@ export const getParentCases = ({ setPreviewCaseId, setPreviewCurrentTabId }) =>
|
|
|
328
328
|
export const Utilities = ({ predictions, attachments, stakeholders, followers, tags }) => {
|
|
329
329
|
return (_jsxs(_Fragment, { children: [predictions && _jsx(PredictionsDemo, {}), attachments && _jsx(AttachmentsMock, {}), stakeholders && _jsx(StakeHoldersDemo, {}), followers && _jsx(MockSummaryList, { icon: 'user-star', name: 'Followers' }), tags && _jsx(TagsDemo, {})] }));
|
|
330
330
|
};
|
|
331
|
-
export const getUtilitiesSummaryItems = ({ predictions, attachments, stakeholders, followers, tags, hideStakeholdersAddNew, setDialogTarget, setDialogContent, setShowDialog }) => {
|
|
331
|
+
export const getUtilitiesSummaryItems = ({ predictions, attachments, stakeholders, followers, tags, hideStakeholdersAddNew, setDialogTarget, setDialogContent, setShowDialog, dialogTarget, showDialog }) => {
|
|
332
332
|
const items = [];
|
|
333
333
|
if (predictions)
|
|
334
334
|
items.push({
|
|
335
335
|
iconName: 'polaris',
|
|
336
336
|
name: 'Predictions',
|
|
337
337
|
onClick: e => {
|
|
338
|
-
|
|
339
|
-
|
|
340
|
-
|
|
338
|
+
if (dialogTarget !== e.currentTarget || !showDialog) {
|
|
339
|
+
setDialogTarget(e.currentTarget);
|
|
340
|
+
setDialogContent(_jsx(PredictionsDemo, {}));
|
|
341
|
+
setShowDialog(true);
|
|
342
|
+
}
|
|
343
|
+
else {
|
|
344
|
+
setDialogTarget(null);
|
|
345
|
+
setShowDialog(false);
|
|
346
|
+
}
|
|
341
347
|
}
|
|
342
348
|
});
|
|
343
349
|
if (attachments)
|
|
@@ -346,9 +352,15 @@ export const getUtilitiesSummaryItems = ({ predictions, attachments, stakeholder
|
|
|
346
352
|
count: 4,
|
|
347
353
|
name: 'Attachments',
|
|
348
354
|
onClick: e => {
|
|
349
|
-
|
|
350
|
-
|
|
351
|
-
|
|
355
|
+
if (dialogTarget !== e.currentTarget || !showDialog) {
|
|
356
|
+
setDialogTarget(e.currentTarget);
|
|
357
|
+
setDialogContent(_jsx(AttachmentsMock, {}));
|
|
358
|
+
setShowDialog(true);
|
|
359
|
+
}
|
|
360
|
+
else {
|
|
361
|
+
setDialogTarget(null);
|
|
362
|
+
setShowDialog(false);
|
|
363
|
+
}
|
|
352
364
|
}
|
|
353
365
|
});
|
|
354
366
|
if (stakeholders)
|
|
@@ -357,9 +369,15 @@ export const getUtilitiesSummaryItems = ({ predictions, attachments, stakeholder
|
|
|
357
369
|
count: 10,
|
|
358
370
|
name: 'Stakeholders',
|
|
359
371
|
onClick: e => {
|
|
360
|
-
|
|
361
|
-
|
|
362
|
-
|
|
372
|
+
if (dialogTarget !== e.currentTarget || !showDialog) {
|
|
373
|
+
setDialogTarget(e.currentTarget);
|
|
374
|
+
setDialogContent(_jsx(StakeHoldersDemo, { hideAddNew: hideStakeholdersAddNew }));
|
|
375
|
+
setShowDialog(true);
|
|
376
|
+
}
|
|
377
|
+
else {
|
|
378
|
+
setDialogTarget(null);
|
|
379
|
+
setShowDialog(false);
|
|
380
|
+
}
|
|
363
381
|
}
|
|
364
382
|
});
|
|
365
383
|
if (followers)
|
|
@@ -368,9 +386,15 @@ export const getUtilitiesSummaryItems = ({ predictions, attachments, stakeholder
|
|
|
368
386
|
count: 5,
|
|
369
387
|
name: 'Followers',
|
|
370
388
|
onClick: e => {
|
|
371
|
-
|
|
372
|
-
|
|
373
|
-
|
|
389
|
+
if (dialogTarget !== e.currentTarget || !showDialog) {
|
|
390
|
+
setDialogTarget(e.currentTarget);
|
|
391
|
+
setDialogContent(_jsx(MockSummaryList, { icon: 'user-star', name: 'Followers' }));
|
|
392
|
+
setShowDialog(true);
|
|
393
|
+
}
|
|
394
|
+
else {
|
|
395
|
+
setDialogTarget(null);
|
|
396
|
+
setShowDialog(false);
|
|
397
|
+
}
|
|
374
398
|
}
|
|
375
399
|
});
|
|
376
400
|
if (tags)
|
|
@@ -379,9 +403,15 @@ export const getUtilitiesSummaryItems = ({ predictions, attachments, stakeholder
|
|
|
379
403
|
count: 10,
|
|
380
404
|
name: 'Tags',
|
|
381
405
|
onClick: e => {
|
|
382
|
-
|
|
383
|
-
|
|
384
|
-
|
|
406
|
+
if (dialogTarget !== e.currentTarget || !showDialog) {
|
|
407
|
+
setDialogTarget(e.currentTarget);
|
|
408
|
+
setDialogContent(_jsx(TagsDemo, {}));
|
|
409
|
+
setShowDialog(true);
|
|
410
|
+
}
|
|
411
|
+
else {
|
|
412
|
+
setDialogTarget(null);
|
|
413
|
+
setShowDialog(false);
|
|
414
|
+
}
|
|
385
415
|
}
|
|
386
416
|
});
|
|
387
417
|
return items;
|
|
@@ -518,7 +548,9 @@ export const CaseViewMock = ({ caseId: caseIdProp, heading, subheading, parentCa
|
|
|
518
548
|
hideStakeholdersAddNew,
|
|
519
549
|
setDialogTarget,
|
|
520
550
|
setDialogContent,
|
|
521
|
-
setShowDialog
|
|
551
|
+
setShowDialog,
|
|
552
|
+
dialogTarget,
|
|
553
|
+
showDialog
|
|
522
554
|
}), utilitiesExpanded: utilitiesExpanded, onToggleUtilities: () => {
|
|
523
555
|
setUtilitiesExpanded(cur => !cur);
|
|
524
556
|
}, intelligentGuidance: intelligentGuidance, banners: banner ? (_jsx(Banner, { variant: 'urgent', messages: [
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"CaseView.mocks.js","sourceRoot":"","sources":["../../../src/work/CaseView/CaseView.mocks.tsx"],"names":[],"mappings":";AAAA,OAAO,EAAE,OAAO,EAAE,QAAQ,EAAE,MAAM,OAAO,CAAC;AAE1C,OAAO,eAAe,MAAM,WAAW,CAAC;AACxC,OAAO,MAAM,EAAE,EAAE,GAAG,EAAE,MAAM,mBAAmB,CAAC;AAEhD,OAAO,EACL,MAAM,EACN,IAAI,EACJ,mBAAmB,EACnB,KAAK,EACL,WAAW,EACX,eAAe,EACf,UAAU,EACV,OAAO,EACP,MAAM,EACN,IAAI,EACJ,IAAI,EACJ,YAAY,EACZ,MAAM,EACN,SAAS,EACT,aAAa,EACb,MAAM,EACN,IAAI,EACJ,QAAQ,EACR,IAAI,EACJ,UAAU,EACV,IAAI,EACL,MAAM,yBAAyB,CAAC;AAGjC,OAAO,EAAE,OAAO,EAAE,QAAQ,EAAE,WAAW,EAAE,wBAAwB,EAAE,MAAM,yBAAyB,CAAC;AAEnG,OAAO,EAAE,cAAc,EAAE,MAAM,wBAAwB,CAAC;AAExD,OAAO,KAAK,aAAa,MAAM,mEAAmE,CAAC;AAGnG,OAAO,EAAE,eAAe,EAAE,MAAM,oCAAoC,CAAC;AACrE,OAAO,EAAE,eAAe,EAAE,MAAM,0CAA0C,CAAC;AAC3E,OAAO,EAAE,gBAAgB,EAAE,MAAM,sCAAsC,CAAC;AACxE,OAAO,EAAE,QAAQ,EAAE,MAAM,sBAAsB,CAAC;AAChD,OAAO,EAAE,UAAU,EAAE,MAAM,0BAA0B,CAAC;AACtD,OAAO,EAAE,eAAe,EAAE,MAAM,oCAAoC,CAAC;AAErE,OAAO,EAAE,SAAS,EAAE,MAAM,eAAe,CAAC;AAC1C,OAAO,EAAE,OAAO,EAAE,MAAM,iBAAiB,CAAC;AAC1C,OAAO,EAAE,eAAe,EAAE,MAAM,qBAAqB,CAAC;AAEtD,YAAY,CAAC,aAAa,CAAC,CAAC;AAE5B,MAAM,SAAS,GAAG,eAAe,EAAE,CAAC;AAgCpC,MAAM,eAAe,GAAG,MAAM,CAAC,GAAG,CAChC,CAAC,EAAE,KAAK,EAAE,EAAE,EAAE,CAAC,GAAG,CAAA;;;+BAGW,KAAK,CAAC,IAAI,CAAC,OAAO,CAAC,aAAa,CAAC;;;0BAGtC,KAAK,CAAC,UAAU,CAAC,IAAI,CAAC,eAAe,CAAC;GAC7D,CACF,CAAC;AAEF,oFAAoF;AACpF,MAAM,OAAO,GAAG,GAAG,EAAE;IACnB,OAAO,CACL,kBAAS,KAAK,EAAE,EAAE,OAAO,EAAE,OAAO,EAAE,YAClC,KAAC,eAAe,IAAC,SAAS,EAAC,YAAY,YACrC,KAAC,IAAI,IAAC,OAAO,EAAC,WAAW,gCAAuB,GAChC,GACV,CACX,CAAC;AACJ,CAAC,CAAC;AAEF,MAAM,eAAe,GAAG,CAAC,EAAE,QAAQ,GAAG,CAAC,EAAyB,EAAE,EAAE;IAClE,MAAM,CAAC,YAAY,EAAE,eAAe,CAAC,GAAG,QAAQ,CAAC,GAAG,CAAC,CAAC;IAEtD,MAAM,IAAI,GAAG;QACX,EAAE,IAAI,EAAE,OAAO,EAAE,EAAE,EAAE,GAAG,EAAE;QAC1B,EAAE,IAAI,EAAE,OAAO,EAAE,EAAE,EAAE,GAAG,EAAE;QAC1B,EAAE,IAAI,EAAE,OAAO,EAAE,EAAE,EAAE,GAAG,EAAE;KAC3B,CAAC,KAAK,CAAC,CAAC,EAAE,QAAQ,CAAC,CAAC;IAErB,OAAO,CACL,MAAC,IAAI,IAAC,SAAS,EAAE,EAAE,SAAS,EAAE,QAAQ,EAAE,GAAG,EAAE,CAAC,EAAE,aAC9C,KAAC,IAAI,IACH,IAAI,EAAE,IAAI,EACV,IAAI,EAAC,YAAY,EACjB,UAAU,EAAE,EAAE,CAAC,EAAE;oBACf,eAAe,CAAC,EAAE,CAAC,CAAC;gBACtB,CAAC,EACD,YAAY,EAAE,YAAY,GAC1B,EACD,IAAI,CAAC,GAAG,CAAC,GAAG,CAAC,EAAE,CAAC,CACf,KAAC,QAAQ,IAAC,KAAK,EAAE,GAAG,CAAC,EAAE,EAAE,YAAY,EAAE,YAAY,YACjD,KAAC,IAAI,IAAC,SAAS,EAAE,EAAE,SAAS,EAAE,QAAQ,EAAE,GAAG,EAAE,CAAC,EAAE,YAC7C,CAAC,GAAG,EAAE;wBACL,QAAQ,GAAG,CAAC,EAAE,EAAE;4BACd,KAAK,GAAG;gCACN,OAAO,KAAC,OAAO,KAAG,CAAC;4BAErB,KAAK,GAAG;gCACN,OAAO,CACL,8BACE,KAAC,OAAO,KAAG,EACX,wdAOI,IACH,CACJ,CAAC;4BAEJ,KAAK,GAAG;gCACN,OAAO,KAAC,eAAe,IAAC,QAAQ,EAAE,CAAC,GAAI,CAAC;4BAE1C;gCACE,OAAO,IAAI,CAAC;yBACf;oBACH,CAAC,CAAC,EAAE,GACC,IA7BiD,GAAG,CAAC,EAAE,CA8BrD,CACZ,CAAC,IACG,CACR,CAAC;AACJ,CAAC,CAAC;AAEF,MAAM,CAAC,MAAM,MAAM,GAAG,UAAU,CAAC;AAEjC,MAAM,CAAC,MAAM,UAAU,GAAG,IAAI,IAAI,CAAC,IAAI,EAAE,CAAC,EAAE,CAAC,CAAC,CAAC;AAC/C,MAAM,QAAQ,GAAG,IAAI,GAAG,EAAE,GAAG,EAAE,GAAG,EAAE,GAAG,GAAG,CAAC;AAC3C,MAAM,WAAW,GAAG,IAAI,CAAC,KAAK,CAAC,CAAC,IAAI,CAAC,GAAG,EAAE,GAAG,UAAU,CAAC,OAAO,EAAE,CAAC,GAAG,QAAQ,CAAC,CAAC;AAE/E,MAAM,CAAC,MAAM,SAAS,GAAG,CAAC,SAAS,EAAE,OAAO,EAAE,cAAc,EAAE,eAAe,EAAE,iBAAiB,CAAC,CAAC;AAElG,MAAM,CAAC,MAAM,YAAY,GAAG,SAAS,CAAC,GAAG,CAAC,CAAC,IAAI,EAAO,EAAE;IACtD,OAAO;QACL,IAAI;QACJ,EAAE,EAAE,IAAI;KACT,CAAC;AACJ,CAAC,CAAC,CAAC;AAEH,MAAM,WAAW,GAAG,CAAC,CAAC,GAAG,EAAE,EAAE,EAAE,CAAC,CAAC,CAAC,OAAO,CAAC,KAAK,EAAE,EAAE,CAAC,CAAC,WAAW,EAAE,CAAC;AAEnE,MAAM,CAAC,MAAM,2BAA2B,GAAG,CAAC,EAAE,IAAI,EAAE,KAAK,EAAO,EAAE,EAAE;IAClE,MAAM,CAAC,MAAM,EAAE,SAAS,CAAC,GAAG,QAAQ,CAAC,EAAE,CAAC,CAAC;IACzC,MAAM,CAAC,OAAO,EAAE,UAAU,CAAC,GAAG,QAAQ,CAAC,IAAI,CAAC,CAAC;IAC7C,MAAM,CAAC,KAAK,CAAC,GAAG,eAAe,CAC7B,GAAG,EAAE;QACH,UAAU,CAAC,KAAK,CAAC,CAAC;IACpB,CAAC,EACD;QACE,KAAK;KACN,CACF,CAAC;IAEF,MAAM,cAAc,GAAG,CAAC,KAAa,EAAE,EAAE;QACvC,SAAS,CAAC,KAAK,CAAC,IAAI,EAAE,CAAC,CAAC;IAC1B,CAAC,CAAC;IAEF,MAAM,aAAa,GAAG,OAAO,CAAC,GAAG,EAAE;QACjC,IAAI,MAAM,EAAE;YACV,MAAM,KAAK,GAAG,mBAAmB,CAAC,MAAM,EAAE,UAAU,CAAC,CAAC;YACtD,OAAO,KAAK,CAAC,MAAM,CAAC,CAAC,EAAE,OAAO,EAAE,EAAE,EAAE,EAAE,EAAE,CAAC,KAAK,CAAC,IAAI,CAAC,OAAO,CAAC,IAAI,KAAK,CAAC,IAAI,CAAC,EAAE,CAAC,CAAC,CAAC;SACjF;QAED,OAAO,KAAK,CAAC;IACf,CAAC,EAAE,CAAC,KAAK,EAAE,MAAM,CAAC,CAAC,CAAC;IAEpB,OAAO,CACL,KAAC,KAAK,IAAC,OAAO,EAAE,IAAI,YAClB,KAAC,OAAO,IACN,OAAO,EAAE,OAAO,EAChB,KAAK,EAAE,aAAa,EACpB,OAAO,EAAE;gBACP;oBACE,EAAE,EAAE,QAAQ;oBACZ,IAAI,EAAE,OAAO,WAAW,CAAC,IAAI,CAAC,EAAE;iBACjC;aACF,EACD,gBAAgB,EAAE,EAAE,cAAc,EAAE,GACpC,GACI,CACT,CAAC;AACJ,CAAC,CAAC;AAEF,MAAM,CAAC,MAAM,eAAe,GAAG,CAAC,EAC9B,IAAI,EACJ,IAAI,EACJ,OAAO,EACP,KAAK,EACwE,EAAE,EAAE;IACjF,MAAM,EAAE,MAAM,EAAE,WAAW,EAAE,GAAG,eAAe,EAAE,CAAC;IAClD,MAAM,CAAC,OAAO,EAAE,UAAU,CAAC,GAAG,QAAQ,CAAC,IAAI,CAAC,CAAC;IAC7C,MAAM,KAAK,GAAG,EAAE,CAAC;IAEjB,MAAM,CAAC,KAAK,CAAC,GAAG,eAAe,CAC7B,GAAG,EAAE;QACH,UAAU,CAAC,KAAK,CAAC,CAAC;IACpB,CAAC,EACD,EAAE,KAAK,EAAE,KAAK,EAAE,CACjB,CAAC;IAEF,OAAO,CACL,KAAC,WAAW,IACV,OAAO,EAAE,OAAO,EAChB,KAAK,EAAE,KAAK,EACZ,IAAI,EAAE,IAAI,EACV,IAAI,EAAE,IAAI,EACV,UAAU,EAAC,IAAI,EACf,KAAK,EAAE,OAAO,CAAC,CAAC,CAAC,SAAS,CAAC,CAAC,CAAC,KAAK,EAClC,OAAO,EACL,OAAO,KAAK,IAAI;YACd,CAAC,CAAC;gBACE;oBACE,IAAI,EAAE,KAAK;oBACX,EAAE,EAAE,GAAG,IAAI,SAAS;oBACpB,IAAI,EAAE,MAAM;oBACZ,OAAO;wBACL,WAAW,CAAC,GAAG,EAAE;4BACf,MAAM,YAAY,GAAG,WAAW,CAAC,IAAI,CAAC,CAAC;4BACvC,OAAO,CACL,KAAC,KAAK,IAAC,OAAO,EAAE,WAAW,YAAY,EAAE,YACtC,4BAA4B,YAAY,aAAa,GAChD,CACT,CAAC;wBACJ,CAAC,CAAC,CAAC;oBACL,CAAC;iBACF;aACF;YACH,CAAC,CAAC,SAAS,EAEf,SAAS,EAAE,GAAG,EAAE;YACd,WAAW,CAAC,2BAA2B,EAAE;gBACvC,IAAI;gBACJ,KAAK;aACN,CAAC,CAAC;QACL,CAAC,GACD,CACH,CAAC;AACJ,CAAC,CAAC;AAEF,MAAM,CAAC,MAAM,sBAAsB,GAAG,GAAG,EAAE;IACzC,MAAM,CAAC,MAAM,EAAE,SAAS,CAAC,GAAG,UAAU,CAAoB,IAAI,CAAC,CAAC;IAEhE,OAAO,CACL,8BACE,KAAC,MAAM,IACL,OAAO,EAAC,MAAM,EACd,OAAO,EAAE,CAAC,CAAgC,EAAE,EAAE;oBAC5C,SAAS,CAAC,CAAC,CAAC,aAAa,CAAC,CAAC;gBAC7B,CAAC,uCAGM,EACR,MAAM,IAAI,CACT,KAAC,OAAO,IACN,EAAE,EAAC,eAAe,EAClB,MAAM,EAAE,MAAM,EACd,SAAS,EAAE,GAAG,EAAE,CAAC,SAAS,CAAC,IAAI,CAAC,EAChC,OAAO,EAAE;oBACP,OAAO,EAAE,wBAAwB;oBACjC,SAAS,EAAE,uBAAuB;oBAClC,MAAM,EAAE,KAAC,MAAM,IAAC,IAAI,EAAC,wBAAwB,GAAG;iBACjD,EACD,MAAM,EAAE;oBACN;wBACE,EAAE,EAAE,GAAG;wBACP,IAAI,EAAE,YAAY;wBAClB,KAAK,EAAE,cAAc;qBACtB;oBACD;wBACE,EAAE,EAAE,GAAG;wBACP,IAAI,EAAE,SAAS;wBACf,KAAK,EAAE,gBAAgB;qBACxB;oBACD;wBACE,EAAE,EAAE,GAAG;wBACP,IAAI,EAAE,UAAU;wBAChB,KAAK,EAAE,mBAAmB;qBAC3B;oBACD;wBACE,EAAE,EAAE,GAAG;wBACP,IAAI,EAAE,OAAO;wBACb,KAAK,EAAE,KAAC,IAAI,IAAC,IAAI,EAAC,+BAA+B,uCAA8B;qBAChF;oBACD;wBACE,EAAE,EAAE,GAAG;wBACP,IAAI,EAAE,WAAW;wBACjB,KAAK,EAAE,KAAC,IAAI,IAAC,IAAI,EAAC,kBAAkB,6BAAoB;qBACzD;iBACF,EACD,aAAa,EAAE,GAAG,EAAE,GAAE,CAAC,GACvB,CACH,IACA,CACJ,CAAC;AACJ,CAAC,CAAC;AAEF,MAAM,CAAC,MAAM,oBAAoB,GAAG,CAAC,EACnC,KAAK,EAAE,SAAS,EAChB,gBAAgB,EAChB,sBAAsB,EACuB,EAAE,EAAE;IACjD,OAAO,CACL,KAAC,IAAI,IACH,IAAI,EAAE,SAAS,CAAC,IAAI,EACpB,WAAW,QACX,SAAS,EAAE,GAAG,EAAE;YACd,gBAAgB,CAAC,SAAS,CAAC,IAAI,CAAC,CAAC;YACjC,sBAAsB,CAAC,WAAW,SAAS,CAAC,IAAI,EAAE,CAAC,CAAC;QACtD,CAAC,YAEA,SAAS,CAAC,IAAI,GACV,CACR,CAAC;AACJ,CAAC,CAAC;AAEF,MAAM,CAAC,MAAM,mBAAmB,GAAG,CAAC,EAClC,gBAAgB,EAChB,sBAAsB,EACP,EAA4B,EAAE;IAC7C,OAAO;QACL,IAAI,EAAE,CAAC,SAA2B,EAAE,EAAE;YACpC,IAAI,SAAS,CAAC,IAAI,EAAE,UAAU,CAAC,IAAI,CAAC,EAAE;gBACpC,OAAO,GAAG,EAAE,CAAC,CACX,KAAC,oBAAoB,IACnB,KAAK,EAAE,SAAS,EAChB,gBAAgB,EAAE,gBAAgB,EAClC,sBAAsB,EAAE,sBAAsB,GAC9C,CACH,CAAC;aACH;QACH,CAAC;KACF,CAAC;AACJ,CAAC,CAAC;AAEF,MAAM,CAAC,MAAM,gBAAgB,GAAG,CAAC,EAC/B,EAAE,EACF,IAAI,EACJ,gBAAgB,EAChB,sBAAsB,EAIN,EAAE,EAAE;IACpB,IAAI,IAAI,KAAK,MAAM,EAAE;QACnB,gBAAgB,CAAC,EAAE,CAAC,CAAC;QACrB,sBAAsB,CAAC,WAAW,EAAE,EAAE,CAAC,CAAC;KACzC;AACH,CAAC,CAAC;AAEF,MAAM,CAAC,MAAM,aAAa,GAAG,CAAC,EAAE,gBAAgB,EAAE,sBAAsB,EAAkB,EAAE,EAAE;IAC5F,OAAO;QACL;YACE,EAAE,EAAE,SAAS;YACb,OAAO,EAAE,KAAC,OAAO,KAAG;SACrB;QACD;YACE,EAAE,EAAE,OAAO;YACX,OAAO,EAAE,CACP,KAAC,SAAS,IACR,WAAW,EAAE,mBAAmB,CAAC,EAAE,gBAAgB,EAAE,sBAAsB,EAAE,CAAC,EAC9E,gBAAgB,EAAE,CAAC,EAAE,EAAE,EAAE,IAAI,EAAE,EAAE,EAAE;oBACjC,gBAAgB,CAAC,EAAE,EAAE,EAAE,IAAI,EAAE,gBAAgB,EAAE,sBAAsB,EAAE,CAAC,CAAC;gBAC3E,CAAC,GACD,CACH;SACF;QACD;YACE,EAAE,EAAE,cAAc;YAClB,OAAO,EAAE,KAAC,OAAO,KAAG;SACrB;QACD;YACE,EAAE,EAAE,eAAe;YACnB,OAAO,EAAE,KAAC,eAAe,KAAG;SAC7B;QACD;YACE,EAAE,EAAE,iBAAiB;YACrB,OAAO,EAAE,CACP,MAAC,IAAI,eACH,KAAC,UAAU,cACT,KAAC,IAAI,IAAC,OAAO,EAAC,IAAI,gCAAuB,GAC9B,EACb,MAAC,IAAI,IAAC,SAAS,EAAE,EAAE,SAAS,EAAE,QAAQ,EAAE,GAAG,EAAE,CAAC,EAAE,aAC9C,KAAC,OAAO,KAAG,EACX,KAAC,OAAO,KAAG,IACN,IACF,CACR;SACF;QACD;YACE,EAAE,EAAE,WAAW;YACf,OAAO,EAAE,qCAAkB;SAC5B;KACF,CAAC;AACJ,CAAC,CAAC;AAEF,MAAM,CAAC,MAAM,iBAAiB,GAAG;IAC/B;QACE,EAAE,EAAE,SAAS;QACb,OAAO,EAAE,KAAC,OAAO,KAAG;KACrB;IACD;QACE,EAAE,EAAE,OAAO;QACX,OAAO,EAAE,KAAC,SAAS,KAAG;KACvB;IACD;QACE,EAAE,EAAE,cAAc;QAClB,OAAO,EAAE,KAAC,OAAO,KAAG;KACrB;IACD;QACE,EAAE,EAAE,eAAe;QACnB,OAAO,EAAE,KAAC,eAAe,KAAG;KAC7B;IACD;QACE,EAAE,EAAE,iBAAiB;QACrB,OAAO,EAAE,CACP,MAAC,IAAI,eACH,KAAC,UAAU,cACT,KAAC,IAAI,IAAC,OAAO,EAAC,IAAI,gCAAuB,GAC9B,EACb,MAAC,IAAI,IAAC,SAAS,EAAE,EAAE,SAAS,EAAE,QAAQ,EAAE,GAAG,EAAE,CAAC,EAAE,aAC9C,KAAC,OAAO,KAAG,EACX,KAAC,OAAO,KAAG,IACN,IACF,CACR;KACF;IACD;QACE,EAAE,EAAE,WAAW;QACf,OAAO,EAAE,qCAAkB;KAC5B;CACF,CAAC;AAEF,MAAM,CAAC,MAAM,gBAAgB,GAAG,GAAG,EAAE;IACnC,OAAO;QACL;YACE,IAAI,EAAE,aAAa;YACnB,KAAK,EAAE,UAAU,CAAC,YAAY,EAAE;SACjC;QACD;YACE,IAAI,EAAE,WAAW;YACjB,KAAK,EAAE,wBAAwB;SAChC;QACD;YACE,IAAI,EAAE,aAAa;YACnB,KAAK,EAAE,aAAa;SACrB;QACD;YACE,IAAI,EAAE,UAAU;YAChB,KAAK,EAAE,IAAI;SACZ;KACF,CAAC,GAAG,CAAC,CAAC,CAAC,EAAE,CAAC,EAAE,EAAE,CAAC,CAAC,EAAE,GAAG,CAAC,EAAE,EAAE,EAAE,KAAK,CAAC,EAAE,EAAE,CAAC,CAAC,CAAC;AAC5C,CAAC,CAAC;AAEF,MAAM,mBAAmB,GAAgD;IACvE;QACE,IAAI,EAAE,QAAQ;QACd,KAAK,EAAE,KAAC,MAAM,IAAC,OAAO,EAAC,MAAM,oBAAa;KAC3C;IACD;QACE,IAAI,EAAE,aAAa;QACnB,KAAK,EAAE,GAAG,WAAW,YAAY;KAClC;IACD;QACE,IAAI,EAAE,aAAa;QACnB,KAAK,EAAE,CACL,KAAC,cAAc,IACb,OAAO,EAAC,kfAAkf,EAC1f,IAAI,EAAC,MAAM,GACX,CACH;QACD,WAAW,EAAE,SAAS,CAAC,QAAQ,CAC7B,kfAAkf,EAClf;YACE,YAAY,EAAE,EAAE;YAChB,YAAY,EAAE,EAAE;YAChB,YAAY,EAAE,IAAI;SACnB,CACF;QACD,OAAO,EAAE,SAAS;KACnB;CACF,CAAC;AAEF,MAAM,CAAC,MAAM,kBAAkB,GAAG,CAAC,EACjC,gBAAgB,EAChB,sBAAsB,EACP,EAAE,EAAE;IACnB,OAAO;QACL,GAAG,mBAAmB;QACtB;YACE,IAAI,EAAE,YAAY;YAClB,KAAK,EAAE,KAAC,sBAAsB,KAAG;SAClC;QACD;YACE,IAAI,EAAE,kBAAkB;YACxB,KAAK,EAAE,CACL,KAAC,IAAI,IACH,IAAI,EAAC,cAAc,EACnB,WAAW,QACX,SAAS,EAAE,GAAG,EAAE;oBACd,gBAAgB,CAAC,OAAO,CAAC,CAAC;oBAC1B,sBAAsB,CAAC,eAAe,CAAC,CAAC;gBAC1C,CAAC,yCAGI,CACR;SACF;KACF,CAAC;AACJ,CAAC,CAAC;AAEF,MAAM,CAAC,MAAM,wBAAwB,GAAG;IACtC;QACE,IAAI,EAAE,WAAW;QACjB,KAAK,EAAE,cAAc;KACtB;IACD;QACE,IAAI,EAAE,UAAU;QAChB,KAAK,EAAE,IAAI;KACZ;CACF,CAAC;AAEF,MAAM,CAAC,MAAM,0BAA0B,GAAG,mBAAmB,CAAC;AAE9D,MAAM,CAAC,MAAM,cAAc,GAAG,CAAC,EAC7B,gBAAgB,EAChB,sBAAsB,EAGN,EAAE,EAAE;IACpB,IAAI,GAAG,GAAa,EAAE,CAAC;IAEvB,8CAA8C;IAC9C,MAAM,QAAQ,GAAG,CAAC,IAAI,GAAG,CAAC,EAAE,EAAE;QAC5B,MAAM,CAAC,GAAG,IAAI,CAAC,GAAG,CAAC,IAAI,CAAC,CAAC;QACzB,IAAI,IAAI,GAAG,CAAC,GAAG,IAAI,CAAC,KAAK,CAAC,CAAC,CAAC,CAAC;QAE7B,IAAI,IAAI,GAAG,GAAG,EAAE;YACd,IAAI,IAAI,GAAG,CAAC;SACb;QAED,OAAO,IAAI,CAAC,KAAK,CAAC,IAAI,GAAG,OAAO,CAAC,CAAC;IACpC,CAAC,CAAC;IAEF,KAAK,IAAI,CAAC,GAAG,CAAC,EAAE,CAAC,GAAG,CAAC,EAAE,CAAC,IAAI,CAAC,EAAE;QAC7B,GAAG,CAAC,IAAI,CAAC,QAAQ,CAAC,CAAC,GAAG,CAAC,CAAC,CAAC,CAAC;KAC3B;IAED,GAAG,GAAG,GAAG,CAAC,IAAI,CAAC,CAAC,CAAC,EAAE,CAAC,EAAE,EAAE,CAAC,CAAC,GAAG,CAAC,CAAC,CAAC;IAEhC,OAAO,GAAG,CAAC,GAAG,CAAC,GAAG,CAAC,EAAE;QACnB,MAAM,EAAE,GAAG,KAAK,GAAG,EAAE,CAAC;QACtB,OAAO;YACL,EAAE;YACF,OAAO,EAAE,EAAE;YACX,IAAI,EAAE,UAAU,EAAE,EAAE;YACpB,WAAW,EAAE,IAAI;YACjB,SAAS,EAAE,GAAG,EAAE;gBACd,gBAAgB,CAAC,EAAE,CAAC,CAAC;gBACrB,sBAAsB,CAAC,WAAW,EAAE,EAAE,CAAC,CAAC;YAC1C,CAAC;SACF,CAAC;IACJ,CAAC,CAAC,CAAC;AACL,CAAC,CAAC;AAsBF,MAAM,CAAC,MAAM,SAAS,GAAG,CAAC,EACxB,WAAW,EACX,WAAW,EACX,YAAY,EACZ,SAAS,EACT,IAAI,EACU,EAAE,EAAE;IAClB,OAAO,CACL,8BACG,WAAW,IAAI,KAAC,eAAe,KAAG,EAClC,WAAW,IAAI,KAAC,eAAe,KAAG,EAClC,YAAY,IAAI,KAAC,gBAAgB,KAAG,EACpC,SAAS,IAAI,KAAC,eAAe,IAAC,IAAI,EAAC,WAAW,EAAC,IAAI,EAAC,WAAW,GAAG,EAClE,IAAI,IAAI,KAAC,QAAQ,KAAG,IACpB,CACJ,CAAC;AACJ,CAAC,CAAC;AAEF,MAAM,CAAC,MAAM,wBAAwB,GAAG,CAAC,EACvC,WAAW,EACX,WAAW,EACX,YAAY,EACZ,SAAS,EACT,IAAI,EACJ,sBAAsB,EACtB,eAAe,EACf,gBAAgB,EAChB,aAAa,EACW,EAAuD,EAAE;IACjF,MAAM,KAAK,GAAwD,EAAE,CAAC;IAEtE,IAAI,WAAW;QACb,KAAK,CAAC,IAAI,CAAC;YACT,QAAQ,EAAE,SAAS;YACnB,IAAI,EAAE,aAAa;YACnB,OAAO,EAAE,CAAC,CAAC,EAAE;gBACX,eAAe,CAAC,CAAC,CAAC,aAAa,CAAC,CAAC;gBACjC,gBAAgB,CAAC,KAAC,eAAe,KAAG,CAAC,CAAC;gBACtC,aAAa,CAAC,IAAI,CAAC,CAAC;YACtB,CAAC;SACF,CAAC,CAAC;IACL,IAAI,WAAW;QACb,KAAK,CAAC,IAAI,CAAC;YACT,QAAQ,EAAE,YAAY;YACtB,KAAK,EAAE,CAAC;YACR,IAAI,EAAE,aAAa;YACnB,OAAO,EAAE,CAAC,CAAC,EAAE;gBACX,eAAe,CAAC,CAAC,CAAC,aAAa,CAAC,CAAC;gBACjC,gBAAgB,CAAC,KAAC,eAAe,KAAG,CAAC,CAAC;gBACtC,aAAa,CAAC,IAAI,CAAC,CAAC;YACtB,CAAC;SACF,CAAC,CAAC;IACL,IAAI,YAAY;QACd,KAAK,CAAC,IAAI,CAAC;YACT,QAAQ,EAAE,mBAAmB;YAC7B,KAAK,EAAE,EAAE;YACT,IAAI,EAAE,cAAc;YACpB,OAAO,EAAE,CAAC,CAAC,EAAE;gBACX,eAAe,CAAC,CAAC,CAAC,aAAa,CAAC,CAAC;gBACjC,gBAAgB,CAAC,KAAC,gBAAgB,IAAC,UAAU,EAAE,sBAAsB,GAAI,CAAC,CAAC;gBAC3E,aAAa,CAAC,IAAI,CAAC,CAAC;YACtB,CAAC;SACF,CAAC,CAAC;IACL,IAAI,SAAS;QACX,KAAK,CAAC,IAAI,CAAC;YACT,QAAQ,EAAE,iBAAiB;YAC3B,KAAK,EAAE,CAAC;YACR,IAAI,EAAE,WAAW;YACjB,OAAO,EAAE,CAAC,CAAC,EAAE;gBACX,eAAe,CAAC,CAAC,CAAC,aAAa,CAAC,CAAC;gBACjC,gBAAgB,CAAC,KAAC,eAAe,IAAC,IAAI,EAAC,WAAW,EAAC,IAAI,EAAC,WAAW,GAAG,CAAC,CAAC;gBACxE,aAAa,CAAC,IAAI,CAAC,CAAC;YACtB,CAAC;SACF,CAAC,CAAC;IACL,IAAI,IAAI;QACN,KAAK,CAAC,IAAI,CAAC;YACT,QAAQ,EAAE,KAAK;YACf,KAAK,EAAE,EAAE;YACT,IAAI,EAAE,MAAM;YACZ,OAAO,EAAE,CAAC,CAAC,EAAE;gBACX,eAAe,CAAC,CAAC,CAAC,aAAa,CAAC,CAAC;gBACjC,gBAAgB,CAAC,KAAC,QAAQ,KAAG,CAAC,CAAC;gBAC/B,aAAa,CAAC,IAAI,CAAC,CAAC;YACtB,CAAC;SACF,CAAC,CAAC;IAEL,OAAO,KAAK,CAAC;AACf,CAAC,CAAC;AAEF,MAAM,CAAC,MAAM,cAAc,GAAG,GAAG,EAAE;IACjC,OAAO,KAAK,CAAC,IAAI,CAAC,EAAE,MAAM,EAAE,EAAE,EAAE,EAAE,CAAC,CAAC,EAAE,CAAC,EAAE,EAAE;QACzC,OAAO;YACL,IAAI,EAAE,UAAU,CAAC,GAAG,CAAC,EAAE;YACvB,EAAE,EAAE,GAAG,CAAC,GAAG,CAAC,EAAE;YACd,OAAO,EAAE,GAAG,EAAE,GAAE,CAAC;SAClB,CAAC;IACJ,CAAC,CAAC,CAAC;AACL,CAAC,CAAC;AAEF,MAAM,UAAU,GAAG,CAAC,IAAiC,EAAE,EAAE;IACvD,OAAO;QACL,KAAK,EAAE,eAAe;QACtB,MAAM,EAAE,yDAAyD;QACjE,IAAI,EAAE,kGAAkG;KACzG,CAAC,IAAI,CAAC,CAAC;AACV,CAAC,CAAC;AAEF,MAAM,CAAC,MAAM,kBAAkB,GAAG,CAAC,KAAa,EAAE,EAAE;IAClD,OAAO;QACL;YACE,EAAE,EAAE,SAAS,EAAE;YACf,IAAI,EAAE,UAAU;YAChB,OAAO,EAAE,GAAG,EAAE,GAAE,CAAC;SAClB;QACD;YACE,EAAE,EAAE,SAAS,EAAE;YACf,IAAI,EAAE,gBAAgB;YACtB,OAAO,EAAE,GAAG,EAAE,GAAE,CAAC;SAClB;QACD;YACE,EAAE,EAAE,SAAS,EAAE;YACf,IAAI,EAAE,OAAO;YACb,OAAO,EAAE,GAAG,EAAE,GAAE,CAAC;SAClB;QACD;YACE,EAAE,EAAE,SAAS,EAAE;YACf,IAAI,EAAE,MAAM;YACZ,OAAO,EAAE,GAAG,EAAE,GAAE,CAAC;SAClB;QACD;YACE,EAAE,EAAE,SAAS,EAAE;YACf,IAAI,EAAE,UAAU;YAChB,OAAO,EAAE,GAAG,EAAE,GAAE,CAAC;SAClB;KACF,CAAC,KAAK,CAAC,CAAC,EAAE,KAAK,CAAC,CAAC;AACpB,CAAC,CAAC;AAEF,MAAM,8BAA8B,GAAG,MAAM,CAAC,GAAG,CAAC,CAAC,EAAE,KAAK,EAAE,EAAE,EAAE;IAC9D,OAAO,GAAG,CAAA;;sCAE0B,KAAK,CAAC,IAAI,CAAC,OAAO,CAAC,aAAa,CAAC;GACpE,CAAC;AACJ,CAAC,CAAC,CAAC;AAEH,MAAM,CAAC,MAAM,wBAAwB,GAAG,GAAG,EAAE;IAC3C,OAAO,CACL,KAAC,IAAI,IACH,SAAS,EAAE,EAAE,OAAO,EAAE,QAAQ,EAAE,UAAU,EAAE,QAAQ,EAAE,EACtD,EAAE,EAAE,8BAA8B,2CAG7B,CACR,CAAC;AACJ,CAAC,CAAC;AAEF,MAAM,CAAC,MAAM,YAAY,GAAG,CAAC,EAC3B,MAAM,EAAE,UAAU,EAClB,OAAO,EACP,UAAU,EACV,WAAW,GAAG,KAAK,EACnB,eAAe,GAAG,CAAC,EACnB,aAAa,GAAG,KAAK,EACrB,IAAI,EACJ,MAAM,GAAG,IAAI,EACb,KAAK,GAAG,IAAI,EACZ,SAAS,GAAG,CAAC,EACb,iBAAiB,EAAE,qBAAqB,GAAG,IAAI,EAC/C,WAAW,GAAG,IAAI,EAClB,WAAW,GAAG,IAAI,EAClB,YAAY,GAAG,IAAI,EACnB,SAAS,GAAG,IAAI,EAChB,IAAI,GAAG,IAAI,EACX,iBAAiB,GAAG,KAAK,EACzB,mBAAmB,GAAG,KAAK,EAC3B,MAAM,GAAG,KAAK,EACd,aAAa,EACb,eAAe,EACf,sBAAsB,EACJ,EAAE,EAAE;IACtB,MAAM,CAAC,aAAa,EAAE,gBAAgB,CAAC,GAAG,QAAQ,CAAgB,IAAI,CAAC,CAAC;IACxE,MAAM,CAAC,mBAAmB,EAAE,sBAAsB,CAAC,GAAG,QAAQ,CAAC,YAAY,CAAC,CAAC,CAAC,CAAC,EAAE,CAAC,CAAC;IACnF,MAAM,eAAe,GAAG,aAAa,CAAC,IAAI,CAAC,CAAC;IAC5C,MAAM,CAAC,gBAAgB,EAAE,mBAAmB,CAAC,GAAG,QAAQ,CACtD,eAAe,CAAC,CAAC,CAAC,IAAI,EAAE,YAAY,IAAI,YAAY,CAAC,CAAC,CAAC,CAAC,EAAE,CAAC,CAAC,CAAC,WAAW,UAAU,EAAE,CACrF,CAAC;IAEF,MAAM,CAAC,aAAa,EAAE,gBAAgB,CAAC,GAAG,QAAQ,EAAa,CAAC;IAChE,MAAM,CAAC,YAAY,EAAE,eAAe,CAAC,GAAG,UAAU,EAAe,CAAC;IAClE,MAAM,CAAC,UAAU,EAAE,aAAa,CAAC,GAAG,QAAQ,CAAC,KAAK,CAAC,CAAC;IAEpD,MAAM,QAAQ,GAAG,IAAI,IAAI;QACvB,KAAK,EAAE,YAAY;QACnB,YAAY,EAAE,gBAAgB;QAC9B,OAAO,EAAE,mBAAmB;KAC7B,CAAC;IAEF,MAAM,WAAW,GAAG;QAClB,KAAK,EAAE,YAAY;QACnB,YAAY,EAAE,mBAAmB;QACjC,OAAO,EAAE,sBAAsB;KAChC,CAAC;IAEF,MAAM,kBAAkB,GAAG,cAAc,CAAC;QACxC,MAAM,EAAE,UAAU;QAClB,gBAAgB;QAChB,sBAAsB;KACvB,CAAC,CAAC;IAEH,MAAM,UAAU,GAAG,KAAC,UAAU,IAAC,YAAY,EAAE,CAAC,GAAI,CAAC;IAEnD,MAAM,CAAC,QAAQ,EAAE,WAAW,CAAC,GAAG,QAAQ,CAAC,KAAK,CAAC,CAAC;IAEhD,MAAM,CAAC,eAAe,EAAE,kBAAkB,CAAC,GAAG,QAAQ,CAAC,CAAC,CAAC,eAAe,CAAC,CAAC;IAC1E,MAAM,CAAC,iBAAiB,EAAE,oBAAoB,CAAC,GAAG,QAAQ,CAAC,qBAAqB,CAAC,CAAC;IAClF,MAAM,UAAU,GAAG,aAAa,CAAC;QAC/B,gBAAgB;QAChB,sBAAsB;KACvB,CAAC,CAAC;IAEH,OAAO,CACL,8BACG,aAAa,IAAI,CAChB,KAAC,WAAW,IACV,IAAI,QACJ,YAAY,EAAE,GAAG,EAAE;oBACjB,gBAAgB,CAAC,IAAI,CAAC,CAAC;gBACzB,CAAC,EACD,MAAM,EAAE,aAAa,EACrB,WAAW,EACT,IAAI,CAAC,MAAM,EAAE,GAAG,GAAG;oBACjB,CAAC,CAAC,CAAC,GAAG,kBAAkB,CAAC;yBACpB,MAAM,CAAC,CAAC,CAAC,EAAE,CAAC,CAAC,CAAC,EAAE,KAAK,aAAa,CAAC;yBACnC,GAAG,CAAC,CAAC,CAAC,EAAE,CAAC,CAAC,EAAE,GAAG,CAAC,EAAE,EAAE,EAAE,WAAW,CAAC,CAAC,EAAE,EAAE,EAAE,CAAC,CAAC;oBAChD,CAAC,CAAC,SAAS,EAEf,OAAO,EAAC,uBAAuB,EAC/B,UAAU,EAAE,aAAa,EACzB,QAAQ,EAAE,EAAE,IAAI,EAAE,UAAU,aAAa,EAAE,EAAE,MAAM,EAAE,QAAQ,EAAE,EAC/D,IAAI,EAAC,YAAY,EACjB,QAAQ,EAAE,CAAC,QAAQ,EACnB,MAAM,EAAE,GAAG,EAAE,GAAE,CAAC,EAChB,OAAO,EAAE,cAAc,EAAE,EACzB,eAAe,EAAE,kBAAkB,CAAC,CAAC,CAAC,EACtC,aAAa,EAAE;oBACb,OAAO,EAAE,wBAAwB;oBACjC,SAAS,EAAE,0BAA0B;iBACtC,EACD,MAAM,EAAE,UAAU,EAClB,KAAK,EAAE,KAAC,eAAe,IAAC,KAAK,EAAE,CAAC,GAAI,EACpC,IAAI,EAAE,WAAW,EACjB,UAAU,EAAE,UAAU,EACtB,SAAS,EACP,KAAC,IAAI,IAAC,SAAS,EAAE,EAAE,MAAM,EAAE,CAAC,EAAE,YAC5B,KAAC,SAAS,IACR,WAAW,EAAE,WAAW,EACxB,WAAW,EAAE,WAAW,EACxB,YAAY,EAAE,YAAY,EAC1B,SAAS,EAAE,SAAS,EACpB,IAAI,EAAE,IAAI,GACV,GACG,GAET,CACH,EACA,YAAY,IAAI,UAAU,IAAI,CAC7B,KAAC,wBAAwB,IACvB,MAAM,EAAE,YAAY,EACpB,SAAS,EAAE,GAAG,EAAE;oBACd,aAAa,CAAC,KAAK,CAAC,CAAC;gBACvB,CAAC,YAEA,aAAa,GACW,CAC5B,EACD,KAAC,QAAQ,IACP,MAAM,EAAE,UAAU,EAClB,WAAW,EACT,WAAW;oBACT,CAAC,CAAC,cAAc,CAAC;wBACb,MAAM,EAAE,UAAU;wBAClB,gBAAgB;wBAChB,sBAAsB;qBACvB,CAAC;oBACJ,CAAC,CAAC,SAAS,EAEf,OAAO,EAAE,aAAa,CAAC,CAAC,CAAC,UAAU,CAAC,aAAa,CAAC,CAAC,CAAC,CAAC,OAAO,EAC5D,UAAU,EAAE,UAAU,EACtB,IAAI,EAAC,YAAY,EACjB,QAAQ,EAAE,QAAQ,EAClB,gBAAgB,EAAE,WAAW,EAC7B,OAAO,EAAE,cAAc,EAAE,EACzB,eAAe,EAAE,eAAe,CAAC,CAAC,CAAC,kBAAkB,CAAC,eAAe,CAAC,CAAC,CAAC,CAAC,SAAS,EAClF,MAAM,EAAE,GAAG,EAAE,GAAE,CAAC,EAChB,aAAa,EAAE,CAAC,GAAG,EAAE;oBACnB,MAAM,GAAG,GAAmC;wBAC1C,OAAO,EAAE,gBAAgB,EAAE;wBAC3B,SAAS,EAAE,kBAAkB,CAAC,EAAE,gBAAgB,EAAE,sBAAsB,EAAE,CAAC;qBAC5E,CAAC;oBAEF,IAAI,aAAa,KAAK,cAAc,EAAE;wBACpC,GAAG,CAAC,SAAS,GAAG,SAAS,CAAC;qBAC3B;oBAED,IAAI,aAAa,KAAK,gBAAgB,EAAE;wBACtC,GAAG,CAAC,OAAO,GAAG,SAAS,CAAC;qBACzB;oBAED,OAAO,GAAG,CAAC;gBACb,CAAC,CAAC,EAAE,EACJ,eAAe,EAAE,eAAe,EAChC,eAAe,EAAE,GAAG,EAAE;oBACpB,kBAAkB,CAAC,GAAG,CAAC,EAAE,CAAC,CAAC,GAAG,CAAC,CAAC;gBAClC,CAAC,EACD,IAAI,EAAE,QAAQ,EACd,iBAAiB,EAAE,CAAC,GAAG,EAAE;oBACvB,IAAI,OAAO,iBAAiB,KAAK,SAAS,EAAE;wBAC1C,OAAO,iBAAiB;4BACtB,CAAC,CAAC,EAAE,KAAK,EAAE,oBAAoB,EAAE,OAAO,EAAE,KAAC,wBAAwB,KAAG,EAAE;4BACxE,CAAC,CAAC,SAAS,CAAC;qBACf;oBAED,OAAO,iBAAiB,CAAC;gBAC3B,CAAC,CAAC,EAAE,EACJ,MAAM,EAAE,MAAM,CAAC,CAAC,CAAC,UAAU,CAAC,CAAC,CAAC,SAAS,EACvC,KAAK,EAAE,KAAK,CAAC,CAAC,CAAC,KAAC,eAAe,IAAC,KAAK,EAAE,SAAS,GAAI,CAAC,CAAC,CAAC,SAAS,EAChE,UAAU,EAAE,UAAU,EACtB,SAAS,EACP,KAAC,SAAS,IACR,WAAW,EAAE,WAAW,EACxB,WAAW,EAAE,WAAW,EACxB,YAAY,EAAE,YAAY,EAC1B,SAAS,EAAE,SAAS,EACpB,IAAI,EAAE,IAAI,GACV,EAEJ,qBAAqB,EAAE,wBAAwB,CAAC;oBAC9C,WAAW;oBACX,WAAW;oBACX,YAAY;oBACZ,SAAS;oBACT,IAAI;oBACJ,sBAAsB;oBACtB,eAAe;oBACf,gBAAgB;oBAChB,aAAa;iBACd,CAAC,EACF,iBAAiB,EAAE,iBAAiB,EACpC,iBAAiB,EAAE,GAAG,EAAE;oBACtB,oBAAoB,CAAC,GAAG,CAAC,EAAE,CAAC,CAAC,GAAG,CAAC,CAAC;gBACpC,CAAC,EACD,mBAAmB,EAAE,mBAAmB,EACxC,OAAO,EACL,MAAM,CAAC,CAAC,CAAC,CACP,KAAC,MAAM,IACL,OAAO,EAAC,QAAQ,EAChB,QAAQ,EAAE;wBACR;4BACE,KAAK,EAAE,mBAAmB;4BAC1B,WAAW,EACT,+bAA+b;4BACjc,MAAM,EAAE;gCACN,IAAI,EAAE,YAAY;6BACnB;yBACF;qBACF,GACD,CACH,CAAC,CAAC,CAAC,SAAS,GAEf,IACD,CACJ,CAAC;AACJ,CAAC,CAAC","sourcesContent":["import { useMemo, useState } from 'react';\nimport type { Dispatch, MouseEvent, ReactNode, SetStateAction } from 'react';\nimport createDOMPurify from 'dompurify';\nimport styled, { css } from 'styled-components';\n\nimport {\n Button,\n Link,\n createStringMatcher,\n Modal,\n SummaryList,\n useModalManager,\n useElement,\n ViewAll,\n Status,\n Flex,\n Grid,\n registerIcon,\n Banner,\n createUID,\n useBreakpoint,\n Avatar,\n Tabs,\n TabPanel,\n Card,\n CardHeader,\n Text\n} from '@pega/cosmos-react-core';\nimport type { SummaryListProps } from '@pega/cosmos-react-core';\nimport type { Tab } from '@pega/cosmos-react-core/lib/components/Tabs/Tabs.types';\nimport { Glimpse, CaseView, CasePreview, UtilitySummaryItemDialog } from '@pega/cosmos-react-work';\nimport type { CaseViewProps } from '@pega/cosmos-react-work';\nimport { RichTextViewer } from '@pega/cosmos-react-rte';\nimport type { TokenMap } from '@pega/cosmos-react-rte';\nimport * as userSolidIcon from '@pega/cosmos-react-core/lib/components/Icon/icons/user-solid.icon';\nimport type { FeedProps } from '@pega/cosmos-react-social';\n\nimport { PredictionsDemo } from '../Predictions/Predictions.stories';\nimport { useMockListData } from '../../core/SummaryList/SummaryList.mocks';\nimport { StakeHoldersDemo } from '../Stakeholders/Stakeholders.stories';\nimport { TagsDemo } from '../Tags/Tags.stories';\nimport { StagesDemo } from '../Stages/Stages.stories';\nimport { AssignmentsDemo } from '../Assignments/Assignments.stories';\n\nimport { PulseMock } from './Pulse.mocks';\nimport { Details } from './Details.mocks';\nimport { AttachmentsMock } from './Attachments.mocks';\n\nregisterIcon(userSolidIcon);\n\nconst DOMPurify = createDOMPurify();\n\nexport interface CaseViewMockProps {\n caseId: CaseViewProps['caseId'];\n heading: CaseViewProps['heading'];\n subheading?: CaseViewProps['subheading'];\n parentCases?: boolean;\n summaryFields?: 'All' | 'Primary only' | 'Secondary only';\n tabs?: CaseViewProps['tabs'];\n stages?: boolean;\n tasks?: boolean | CaseViewProps['tasks'];\n taskCount?: number;\n predictions?: boolean;\n attachments?: boolean;\n stakeholders?: boolean;\n followers?: boolean;\n tags?: boolean;\n persistentUtility?: boolean | CaseViewProps['persistentUtility'];\n intelligentGuidance?: CaseViewProps['intelligentGuidance'];\n banner?: boolean;\n utilitiesExpanded?: boolean;\n promotedActions?: 0 | 1 | 2 | 3 | 4 | 5;\n headingLength?: 'short' | 'medium' | 'long';\n defaultExpanded?: boolean;\n hideStakeholdersAddNew?: boolean;\n}\n\ninterface PreviewSetters {\n setPreviewCaseId: Dispatch<SetStateAction<string | null>>;\n setPreviewCurrentTabId: Dispatch<SetStateAction<string>>;\n}\n\nconst StyledRSWrapper = styled.div(\n ({ theme }) => css`\n display: grid;\n place-items: center;\n border: 0.1875rem dashed ${theme.base.palette['border-line']};\n min-height: 6rem;\n height: var(--content-height-in-view);\n border-radius: calc(${theme.components.card['border-radius']});\n `\n);\n\n// This is a mini mock of the Constellation table component aka Repeating Structures\nconst RSTable = () => {\n return (\n <article style={{ display: 'block' }}>\n <StyledRSWrapper className='rs-wrapper'>\n <Text variant='secondary'>Table goes here</Text>\n </StyledRSWrapper>\n </article>\n );\n};\n\nconst TableSizingTabs = ({ tabCount = 3 }: { tabCount?: number }) => {\n const [currentTabId, setCurrentTabId] = useState('1');\n\n const tabs = [\n { name: 'Tab 1', id: '1' },\n { name: 'Tab 2', id: '2' },\n { name: 'Tab 3', id: '3' }\n ].slice(0, tabCount);\n\n return (\n <Flex container={{ direction: 'column', gap: 2 }}>\n <Tabs\n tabs={tabs}\n type='horizontal'\n onTabClick={id => {\n setCurrentTabId(id);\n }}\n currentTabId={currentTabId}\n />\n {tabs.map(tab => (\n <TabPanel tabId={tab.id} currentTabId={currentTabId} key={tab.id}>\n <Flex container={{ direction: 'column', gap: 1 }}>\n {(() => {\n switch (tab.id) {\n case '1':\n return <RSTable />;\n\n case '2':\n return (\n <>\n <RSTable />\n <p>\n Lorem ipsum dolor sit amet, consectetur adipiscing elit, sed do eiusmod\n tempor incididunt ut labore et dolore magna aliqua. Ut enim ad minim veniam,\n quis nostrud exercitation ullamco laboris nisi ut aliquip ex ea commodo\n consequat. Duis aute irure dolor in reprehenderit in voluptate velit esse\n cillum dolore eu fugiat nulla pariatur. Excepteur sint occaecat cupidatat\n non proident, sunt in culpa qui officia deserunt mollit anim id est laborum.\n </p>\n </>\n );\n\n case '3':\n return <TableSizingTabs tabCount={2} />;\n\n default:\n return null;\n }\n })()}\n </Flex>\n </TabPanel>\n ))}\n </Flex>\n );\n};\n\nexport const caseId = 'C-123456';\n\nexport const createDate = new Date(2016, 1, 8);\nconst msInYear = 1000 * 60 * 60 * 24 * 365;\nconst diffInYears = Math.floor((Date.now() - createDate.getTime()) / msInYear);\n\nexport const tabLabels = ['Details', 'Pulse', 'Single table', 'Sub tab table', 'Multiple tables'];\n\nexport const baseCaseTabs = tabLabels.map((name): Tab => {\n return {\n name,\n id: name\n };\n});\n\nconst singularize = (s = '') => s.replace(/s$/i, '').toLowerCase();\n\nexport const MockSummaryListViewAllModal = ({ name, count }: any) => {\n const [search, setSearch] = useState('');\n const [loading, setLoading] = useState(true);\n const [items] = useMockListData(\n () => {\n setLoading(false);\n },\n {\n count\n }\n );\n\n const onSearchChange = (value: string) => {\n setSearch(value.trim());\n };\n\n const itemsToRender = useMemo(() => {\n if (search) {\n const regEx = createStringMatcher(search, 'boundary');\n return items.filter(({ primary, id }) => regEx.test(primary) || regEx.test(id));\n }\n\n return items;\n }, [items, search]);\n\n return (\n <Modal heading={name}>\n <ViewAll\n loading={loading}\n items={itemsToRender}\n actions={[\n {\n id: 'addNew',\n text: `Add ${singularize(name)}`\n }\n ]}\n searchInputProps={{ onSearchChange }}\n />\n </Modal>\n );\n};\n\nexport const MockSummaryList = ({\n icon,\n name,\n actions,\n limit\n}: Pick<SummaryListProps, 'icon' | 'name'> & { actions?: null; limit?: number }) => {\n const { create: createModal } = useModalManager();\n const [loading, setLoading] = useState(true);\n const count = 50;\n\n const [items] = useMockListData(\n () => {\n setLoading(false);\n },\n { count: limit }\n );\n\n return (\n <SummaryList\n loading={loading}\n items={items}\n icon={icon}\n name={name}\n headingTag='h3'\n count={loading ? undefined : count}\n actions={\n actions !== null\n ? [\n {\n text: 'Add',\n id: `${name}:addNew`,\n icon: 'plus',\n onClick() {\n createModal(() => {\n const singularName = singularize(name);\n return (\n <Modal heading={`Add new ${singularName}`}>\n {`Content for adding a new ${singularName} goes here…`}\n </Modal>\n );\n });\n }\n }\n ]\n : undefined\n }\n onViewAll={() => {\n createModal(MockSummaryListViewAllModal, {\n name,\n count\n });\n }}\n />\n );\n};\n\nexport const MockOperatorFieldValue = () => {\n const [target, setTarget] = useElement<HTMLButtonElement>(null);\n\n return (\n <>\n <Button\n variant='link'\n onClick={(e: MouseEvent<HTMLButtonElement>) => {\n setTarget(e.currentTarget);\n }}\n >\n constellation@pega.com\n </Button>\n {target && (\n <Glimpse\n id='constellation'\n target={target}\n onDismiss={() => setTarget(null)}\n heading={{\n primary: 'Constellation Operator',\n secondary: 'Director of the stars',\n visual: <Avatar name='Constellation Operator' />\n }}\n fields={[\n {\n id: '1',\n name: 'Department',\n value: 'Space Travel'\n },\n {\n id: '2',\n name: 'Manager',\n value: 'Captain Galaxy'\n },\n {\n id: '3',\n name: 'Location',\n value: 'A galaxy far away'\n },\n {\n id: '4',\n name: 'Email',\n value: <Link href='mailto:constellation@pega.com'>constellation@pega.com</Link>\n },\n {\n id: '5',\n name: 'Telephone',\n value: <Link href='tel:555-123-4567'>555-123-4567</Link>\n }\n ]}\n onViewProfile={() => {}}\n />\n )}\n </>\n );\n};\n\nexport const PreviewLinkComponent = ({\n token: linkToken,\n setPreviewCaseId,\n setPreviewCurrentTabId\n}: { token: TokenMap['link'] } & PreviewSetters) => {\n return (\n <Link\n href={linkToken.href}\n previewable\n onPreview={() => {\n setPreviewCaseId(linkToken.href);\n setPreviewCurrentTabId(`summary-${linkToken.href}`);\n }}\n >\n {linkToken.text}\n </Link>\n );\n};\n\nexport const getPulseMarkdownMap = ({\n setPreviewCaseId,\n setPreviewCurrentTabId\n}: PreviewSetters): FeedProps['markdownMap'] => {\n return {\n link: (linkToken: TokenMap['link']) => {\n if (linkToken.href?.startsWith('C-')) {\n return () => (\n <PreviewLinkComponent\n token={linkToken}\n setPreviewCaseId={setPreviewCaseId}\n setPreviewCurrentTabId={setPreviewCurrentTabId}\n />\n );\n }\n }\n };\n};\n\nexport const onMentionPreview = ({\n id,\n type,\n setPreviewCaseId,\n setPreviewCurrentTabId\n}: {\n id: string;\n type: string;\n} & PreviewSetters) => {\n if (type === 'case') {\n setPreviewCaseId(id);\n setPreviewCurrentTabId(`summary-${id}`);\n }\n};\n\nexport const getTabContent = ({ setPreviewCaseId, setPreviewCurrentTabId }: PreviewSetters) => {\n return [\n {\n id: 'Details',\n content: <Details />\n },\n {\n id: 'Pulse',\n content: (\n <PulseMock\n markdownMap={getPulseMarkdownMap({ setPreviewCaseId, setPreviewCurrentTabId })}\n onMentionPreview={({ id, type }) => {\n onMentionPreview({ id, type, setPreviewCaseId, setPreviewCurrentTabId });\n }}\n />\n )\n },\n {\n id: 'Single table',\n content: <RSTable />\n },\n {\n id: 'Sub tab table',\n content: <TableSizingTabs />\n },\n {\n id: 'Multiple tables',\n content: (\n <Card>\n <CardHeader>\n <Text variant='h2'>Multiple tables</Text>\n </CardHeader>\n <Flex container={{ direction: 'column', gap: 2 }}>\n <RSTable />\n <RSTable />\n </Flex>\n </Card>\n )\n },\n {\n id: 'not found',\n content: <h2>Not Found</h2>\n }\n ];\n};\n\nexport const previewTabContent = [\n {\n id: 'Details',\n content: <Details />\n },\n {\n id: 'Pulse',\n content: <PulseMock />\n },\n {\n id: 'Single table',\n content: <RSTable />\n },\n {\n id: 'Sub tab table',\n content: <TableSizingTabs />\n },\n {\n id: 'Multiple tables',\n content: (\n <Card>\n <CardHeader>\n <Text variant='h2'>Multiple tables</Text>\n </CardHeader>\n <Flex container={{ direction: 'column', gap: 2 }}>\n <RSTable />\n <RSTable />\n </Flex>\n </Card>\n )\n },\n {\n id: 'not found',\n content: <h2>Not Found</h2>\n }\n];\n\nexport const getPrimaryFields = () => {\n return [\n {\n name: 'Create date',\n value: createDate.toDateString()\n },\n {\n name: 'Member ID',\n value: 'M205435569FD1234567890'\n },\n {\n name: 'Assigned to',\n value: 'Dean Thomas'\n },\n {\n name: 'Priority',\n value: '95'\n }\n ].map((f, i) => ({ ...f, id: `p-${i}` }));\n};\n\nconst baseSecondaryFields: CaseViewProps['summaryFields']['secondary'] = [\n {\n name: 'Status',\n value: <Status variant='info'>New</Status>\n },\n {\n name: 'Update date',\n value: `${diffInYears} years ago`\n },\n {\n name: 'Description',\n value: (\n <RichTextViewer\n content='<p>Lorem ipsum dolor sit amet, consectetur adipiscing elit. Suspendisse commodo nulla vitae mi bibendum, a fringilla nisl efficitur. Praesent vitae nulla lobortis, finibus felis ultricies, fermentum mi. Nunc lorem ligula, placerat nec elit id, auctor pellentesque est.</p> </br> <p>Pellentesque pharetra justo augue, non maximus nulla venenatis et. Sed laoreet ultricies ullamcorper. Mauris ac nulla quis ipsum semper fringilla in eget risus. Fusce cursus sollicitudin nibh molestie volutpat.</p>'\n type='html'\n />\n ),\n simpleValue: DOMPurify.sanitize(\n '<p>Lorem ipsum dolor sit amet, consectetur adipiscing elit. Suspendisse commodo nulla vitae mi bibendum, a fringilla nisl efficitur. Praesent vitae nulla lobortis, finibus felis ultricies, fermentum mi. Nunc lorem ligula, placerat nec elit id, auctor pellentesque est.</p> </br> <p>Pellentesque pharetra justo augue, non maximus nulla venenatis et. Sed laoreet ultricies ullamcorper. Mauris ac nulla quis ipsum semper fringilla in eget risus. Fusce cursus sollicitudin nibh molestie volutpat.</p>',\n {\n ALLOWED_TAGS: [],\n ALLOWED_ATTR: [],\n KEEP_CONTENT: true\n }\n ),\n variant: 'stacked'\n }\n];\n\nexport const getSecondaryFields = ({\n setPreviewCaseId,\n setPreviewCurrentTabId\n}: PreviewSetters) => {\n return [\n ...baseSecondaryFields,\n {\n name: 'Created by',\n value: <MockOperatorFieldValue />\n },\n {\n name: 'Previewable case',\n value: (\n <Link\n href='/cases/C-456'\n previewable\n onPreview={() => {\n setPreviewCaseId('C-456');\n setPreviewCurrentTabId('summary-C-456');\n }}\n >\n Previewable Case - C-456\n </Link>\n )\n }\n ];\n};\n\nexport const casePreviewPrimaryFields = [\n {\n name: 'Member ID',\n value: 'M204859F438G'\n },\n {\n name: 'Priority',\n value: '95'\n }\n];\n\nexport const casePreviewSecondaryFields = baseSecondaryFields;\n\nexport const getParentCases = ({\n setPreviewCaseId,\n setPreviewCurrentTabId\n}: {\n caseId: CaseViewProps['caseId'];\n} & PreviewSetters) => {\n let ids: number[] = [];\n\n /** random-ish number from 100000 to 999999 */\n const randomId = (seed = 1) => {\n const x = Math.sin(seed);\n let rand = x - Math.floor(x);\n\n if (rand < 0.1) {\n rand += 0.1;\n }\n\n return Math.floor(rand * 1000000);\n };\n\n for (let i = 0; i < 5; i += 1) {\n ids.push(randomId(i + 1));\n }\n\n ids = ids.sort((a, b) => a - b);\n\n return ids.map(num => {\n const id = `C-${num}`;\n return {\n id,\n primary: id,\n href: `/cases/${id}`,\n previewable: true,\n onPreview: () => {\n setPreviewCaseId(id);\n setPreviewCurrentTabId(`summary-${id}`);\n }\n };\n });\n};\n\ninterface UtilitiesArgs {\n predictions?: CaseViewMockProps['predictions'];\n attachments?: CaseViewMockProps['attachments'];\n stakeholders?: CaseViewMockProps['stakeholders'];\n followers?: CaseViewMockProps['followers'];\n tags?: CaseViewMockProps['tags'];\n}\n\ninterface UtilitySummaryItemsArgs {\n predictions?: CaseViewMockProps['predictions'];\n attachments?: CaseViewMockProps['attachments'];\n stakeholders?: CaseViewMockProps['stakeholders'];\n followers?: CaseViewMockProps['followers'];\n tags?: CaseViewMockProps['tags'];\n hideStakeholdersAddNew?: boolean;\n setDialogTarget: (instance: HTMLElement | null) => void;\n setDialogContent: React.Dispatch<React.SetStateAction<ReactNode>>;\n setShowDialog: React.Dispatch<React.SetStateAction<boolean>>;\n}\n\nexport const Utilities = ({\n predictions,\n attachments,\n stakeholders,\n followers,\n tags\n}: UtilitiesArgs) => {\n return (\n <>\n {predictions && <PredictionsDemo />}\n {attachments && <AttachmentsMock />}\n {stakeholders && <StakeHoldersDemo />}\n {followers && <MockSummaryList icon='user-star' name='Followers' />}\n {tags && <TagsDemo />}\n </>\n );\n};\n\nexport const getUtilitiesSummaryItems = ({\n predictions,\n attachments,\n stakeholders,\n followers,\n tags,\n hideStakeholdersAddNew,\n setDialogTarget,\n setDialogContent,\n setShowDialog\n}: UtilitySummaryItemsArgs): NonNullable<CaseViewProps['utilitiesSummaryItems']> => {\n const items: NonNullable<CaseViewProps['utilitiesSummaryItems']> = [];\n\n if (predictions)\n items.push({\n iconName: 'polaris',\n name: 'Predictions',\n onClick: e => {\n setDialogTarget(e.currentTarget);\n setDialogContent(<PredictionsDemo />);\n setShowDialog(true);\n }\n });\n if (attachments)\n items.push({\n iconName: 'paper-clip',\n count: 4,\n name: 'Attachments',\n onClick: e => {\n setDialogTarget(e.currentTarget);\n setDialogContent(<AttachmentsMock />);\n setShowDialog(true);\n }\n });\n if (stakeholders)\n items.push({\n iconName: 'user-search-solid',\n count: 10,\n name: 'Stakeholders',\n onClick: e => {\n setDialogTarget(e.currentTarget);\n setDialogContent(<StakeHoldersDemo hideAddNew={hideStakeholdersAddNew} />);\n setShowDialog(true);\n }\n });\n if (followers)\n items.push({\n iconName: 'user-star-solid',\n count: 5,\n name: 'Followers',\n onClick: e => {\n setDialogTarget(e.currentTarget);\n setDialogContent(<MockSummaryList icon='user-star' name='Followers' />);\n setShowDialog(true);\n }\n });\n if (tags)\n items.push({\n iconName: 'tag',\n count: 10,\n name: 'Tags',\n onClick: e => {\n setDialogTarget(e.currentTarget);\n setDialogContent(<TagsDemo />);\n setShowDialog(true);\n }\n });\n\n return items;\n};\n\nexport const getCaseActions = () => {\n return Array.from({ length: 12 }, (_, i) => {\n return {\n text: `Action ${i + 1}`,\n id: `${i + 1}`,\n onClick: () => {}\n };\n });\n};\n\nconst getHeading = (size: 'short' | 'medium' | 'long') => {\n return {\n short: 'Constellation',\n medium: 'Complicated constellation demo case of some distinction',\n long: 'The scenario in this case is almost too obscure to put into words and so the title is quite long'\n }[size];\n};\n\nexport const getPromotedActions = (count: number) => {\n return [\n {\n id: createUID(),\n text: 'Reassign',\n onClick: () => {}\n },\n {\n id: createUID(),\n text: 'Add dependency',\n onClick: () => {}\n },\n {\n id: createUID(),\n text: 'Clone',\n onClick: () => {}\n },\n {\n id: createUID(),\n text: 'Move',\n onClick: () => {}\n },\n {\n id: createUID(),\n text: 'Withdraw',\n onClick: () => {}\n }\n ].slice(0, count);\n};\n\nconst StyledPersistentUtilityContent = styled.div(({ theme }) => {\n return css`\n height: 100%;\n border-inline: 0.0625rem dashed ${theme.base.palette['border-line']};\n `;\n});\n\nexport const PersistentUtilityContent = () => {\n return (\n <Flex\n container={{ justify: 'center', alignItems: 'center' }}\n as={StyledPersistentUtilityContent}\n >\n Persistent utility content\n </Flex>\n );\n};\n\nexport const CaseViewMock = ({\n caseId: caseIdProp,\n heading,\n subheading,\n parentCases = false,\n promotedActions = 1,\n summaryFields = 'All',\n tabs,\n stages = true,\n tasks = true,\n taskCount = 4,\n utilitiesExpanded: utilitiesExpandedProp = true,\n predictions = true,\n attachments = true,\n stakeholders = true,\n followers = true,\n tags = true,\n persistentUtility = false,\n intelligentGuidance = false,\n banner = false,\n headingLength,\n defaultExpanded,\n hideStakeholdersAddNew\n}: CaseViewMockProps) => {\n const [previewCaseId, setPreviewCaseId] = useState<null | string>(null);\n const [previewCurrentTabId, setPreviewCurrentTabId] = useState(baseCaseTabs[0].id);\n const isMediumOrAbove = useBreakpoint('md');\n const [demoCurrentTabId, setDemoCurrentTabId] = useState(\n isMediumOrAbove ? tabs?.currentTabId ?? baseCaseTabs[0].id : `summary-${caseIdProp}`\n );\n\n const [dialogContent, setDialogContent] = useState<ReactNode>();\n const [dialogTarget, setDialogTarget] = useElement<HTMLElement>();\n const [showDialog, setShowDialog] = useState(false);\n\n const demoTabs = tabs ?? {\n items: baseCaseTabs,\n currentTabId: demoCurrentTabId,\n onClick: setDemoCurrentTabId\n };\n\n const previewTabs = {\n items: baseCaseTabs,\n currentTabId: previewCurrentTabId,\n onClick: setPreviewCurrentTabId\n };\n\n const parentCasesContent = getParentCases({\n caseId: caseIdProp,\n setPreviewCaseId,\n setPreviewCurrentTabId\n });\n\n const demoStages = <StagesDemo currentStage={3} />;\n\n const [followed, setFollowed] = useState(false);\n\n const [summaryExpanded, setSummaryExpanded] = useState(!!defaultExpanded);\n const [utilitiesExpanded, setUtilitiesExpanded] = useState(utilitiesExpandedProp);\n const tabContent = getTabContent({\n setPreviewCaseId,\n setPreviewCurrentTabId\n });\n\n return (\n <>\n {previewCaseId && (\n <CasePreview\n open\n onAfterClose={() => {\n setPreviewCaseId(null);\n }}\n caseId={previewCaseId}\n parentCases={\n Math.random() > 0.5\n ? [...parentCasesContent]\n .filter(c => c.id !== previewCaseId)\n .map(c => ({ ...c, id: `preview-${c.id}` }))\n : undefined\n }\n heading='Previewable demo case'\n subheading={previewCaseId}\n caseLink={{ href: `/cases/${previewCaseId}`, target: '_blank' }}\n icon='user-solid'\n followed={!followed}\n onEdit={() => {}}\n actions={getCaseActions()}\n promotedActions={getPromotedActions(2)}\n summaryFields={{\n primary: casePreviewPrimaryFields,\n secondary: casePreviewSecondaryFields\n }}\n stages={demoStages}\n tasks={<AssignmentsDemo count={4} />}\n tabs={previewTabs}\n tabContent={tabContent}\n utilities={\n <Grid container={{ rowGap: 2 }}>\n <Utilities\n predictions={predictions}\n attachments={attachments}\n stakeholders={stakeholders}\n followers={followers}\n tags={tags}\n />\n </Grid>\n }\n />\n )}\n {dialogTarget && showDialog && (\n <UtilitySummaryItemDialog\n target={dialogTarget}\n onDismiss={() => {\n setShowDialog(false);\n }}\n >\n {dialogContent}\n </UtilitySummaryItemDialog>\n )}\n <CaseView\n caseId={caseIdProp}\n parentCases={\n parentCases\n ? getParentCases({\n caseId: caseIdProp,\n setPreviewCaseId,\n setPreviewCurrentTabId\n })\n : undefined\n }\n heading={headingLength ? getHeading(headingLength) : heading}\n subheading={subheading}\n icon='user-solid'\n followed={followed}\n onFollowedChange={setFollowed}\n actions={getCaseActions()}\n promotedActions={promotedActions ? getPromotedActions(promotedActions) : undefined}\n onEdit={() => {}}\n summaryFields={(() => {\n const obj: CaseViewProps['summaryFields'] = {\n primary: getPrimaryFields(),\n secondary: getSecondaryFields({ setPreviewCaseId, setPreviewCurrentTabId })\n };\n\n if (summaryFields === 'Primary only') {\n obj.secondary = undefined;\n }\n\n if (summaryFields === 'Secondary only') {\n obj.primary = undefined;\n }\n\n return obj;\n })()}\n summaryExpanded={summaryExpanded}\n onToggleSummary={() => {\n setSummaryExpanded(cur => !cur);\n }}\n tabs={demoTabs}\n persistentUtility={(() => {\n if (typeof persistentUtility === 'boolean') {\n return persistentUtility\n ? { title: 'Persistent utility', content: <PersistentUtilityContent /> }\n : undefined;\n }\n\n return persistentUtility;\n })()}\n stages={stages ? demoStages : undefined}\n tasks={tasks ? <AssignmentsDemo count={taskCount} /> : undefined}\n tabContent={tabContent}\n utilities={\n <Utilities\n predictions={predictions}\n attachments={attachments}\n stakeholders={stakeholders}\n followers={followers}\n tags={tags}\n />\n }\n utilitiesSummaryItems={getUtilitiesSummaryItems({\n predictions,\n attachments,\n stakeholders,\n followers,\n tags,\n hideStakeholdersAddNew,\n setDialogTarget,\n setDialogContent,\n setShowDialog\n })}\n utilitiesExpanded={utilitiesExpanded}\n onToggleUtilities={() => {\n setUtilitiesExpanded(cur => !cur);\n }}\n intelligentGuidance={intelligentGuidance}\n banners={\n banner ? (\n <Banner\n variant='urgent'\n messages={[\n {\n label: 'An error occurred',\n description:\n 'Lorem ipsum dolor sit amet, consectetur adipiscing elit, sed do eiusmod tempor incididunt ut labore et dolore magna aliqua. Ut enim ad minim veniam, quis nostrud exercitation ullamco laboris nisi ut aliquip ex ea commodo consequat. Duis aute irure dolor in reprehenderit in voluptate velit esse cillum dolore eu fugiat nulla pariatur. Excepteur sint occaecat cupidatat non proident, sunt in culpa qui officia deserunt mollit anim id est laborum.',\n action: {\n text: 'Take acton'\n }\n }\n ]}\n />\n ) : undefined\n }\n />\n </>\n );\n};\n"]}
|
|
1
|
+
{"version":3,"file":"CaseView.mocks.js","sourceRoot":"","sources":["../../../src/work/CaseView/CaseView.mocks.tsx"],"names":[],"mappings":"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","sourcesContent":["import { useMemo, useState } from 'react';\nimport type { Dispatch, MouseEvent, ReactNode, SetStateAction } from 'react';\nimport createDOMPurify from 'dompurify';\nimport styled, { css } from 'styled-components';\n\nimport {\n Button,\n Link,\n createStringMatcher,\n Modal,\n SummaryList,\n useModalManager,\n useElement,\n ViewAll,\n Status,\n Flex,\n Grid,\n registerIcon,\n Banner,\n createUID,\n useBreakpoint,\n Avatar,\n Tabs,\n TabPanel,\n Card,\n CardHeader,\n Text\n} from '@pega/cosmos-react-core';\nimport type { SummaryListProps } from '@pega/cosmos-react-core';\nimport type { Tab } from '@pega/cosmos-react-core/lib/components/Tabs/Tabs.types';\nimport { Glimpse, CaseView, CasePreview, UtilitySummaryItemDialog } from '@pega/cosmos-react-work';\nimport type { CaseViewProps } from '@pega/cosmos-react-work';\nimport { RichTextViewer } from '@pega/cosmos-react-rte';\nimport type { TokenMap } from '@pega/cosmos-react-rte';\nimport * as userSolidIcon from '@pega/cosmos-react-core/lib/components/Icon/icons/user-solid.icon';\nimport type { FeedProps } from '@pega/cosmos-react-social';\n\nimport { PredictionsDemo } from '../Predictions/Predictions.stories';\nimport { useMockListData } from '../../core/SummaryList/SummaryList.mocks';\nimport { StakeHoldersDemo } from '../Stakeholders/Stakeholders.stories';\nimport { TagsDemo } from '../Tags/Tags.stories';\nimport { StagesDemo } from '../Stages/Stages.stories';\nimport { AssignmentsDemo } from '../Assignments/Assignments.stories';\n\nimport { PulseMock } from './Pulse.mocks';\nimport { Details } from './Details.mocks';\nimport { AttachmentsMock } from './Attachments.mocks';\n\nregisterIcon(userSolidIcon);\n\nconst DOMPurify = createDOMPurify();\n\nexport interface CaseViewMockProps {\n caseId: CaseViewProps['caseId'];\n heading: CaseViewProps['heading'];\n subheading?: CaseViewProps['subheading'];\n parentCases?: boolean;\n summaryFields?: 'All' | 'Primary only' | 'Secondary only';\n tabs?: CaseViewProps['tabs'];\n stages?: boolean;\n tasks?: boolean | CaseViewProps['tasks'];\n taskCount?: number;\n predictions?: boolean;\n attachments?: boolean;\n stakeholders?: boolean;\n followers?: boolean;\n tags?: boolean;\n persistentUtility?: boolean | CaseViewProps['persistentUtility'];\n intelligentGuidance?: CaseViewProps['intelligentGuidance'];\n banner?: boolean;\n utilitiesExpanded?: boolean;\n promotedActions?: 0 | 1 | 2 | 3 | 4 | 5;\n headingLength?: 'short' | 'medium' | 'long';\n defaultExpanded?: boolean;\n hideStakeholdersAddNew?: boolean;\n}\n\ninterface PreviewSetters {\n setPreviewCaseId: Dispatch<SetStateAction<string | null>>;\n setPreviewCurrentTabId: Dispatch<SetStateAction<string>>;\n}\n\nconst StyledRSWrapper = styled.div(\n ({ theme }) => css`\n display: grid;\n place-items: center;\n border: 0.1875rem dashed ${theme.base.palette['border-line']};\n min-height: 6rem;\n height: var(--content-height-in-view);\n border-radius: calc(${theme.components.card['border-radius']});\n `\n);\n\n// This is a mini mock of the Constellation table component aka Repeating Structures\nconst RSTable = () => {\n return (\n <article style={{ display: 'block' }}>\n <StyledRSWrapper className='rs-wrapper'>\n <Text variant='secondary'>Table goes here</Text>\n </StyledRSWrapper>\n </article>\n );\n};\n\nconst TableSizingTabs = ({ tabCount = 3 }: { tabCount?: number }) => {\n const [currentTabId, setCurrentTabId] = useState('1');\n\n const tabs = [\n { name: 'Tab 1', id: '1' },\n { name: 'Tab 2', id: '2' },\n { name: 'Tab 3', id: '3' }\n ].slice(0, tabCount);\n\n return (\n <Flex container={{ direction: 'column', gap: 2 }}>\n <Tabs\n tabs={tabs}\n type='horizontal'\n onTabClick={id => {\n setCurrentTabId(id);\n }}\n currentTabId={currentTabId}\n />\n {tabs.map(tab => (\n <TabPanel tabId={tab.id} currentTabId={currentTabId} key={tab.id}>\n <Flex container={{ direction: 'column', gap: 1 }}>\n {(() => {\n switch (tab.id) {\n case '1':\n return <RSTable />;\n\n case '2':\n return (\n <>\n <RSTable />\n <p>\n Lorem ipsum dolor sit amet, consectetur adipiscing elit, sed do eiusmod\n tempor incididunt ut labore et dolore magna aliqua. Ut enim ad minim veniam,\n quis nostrud exercitation ullamco laboris nisi ut aliquip ex ea commodo\n consequat. Duis aute irure dolor in reprehenderit in voluptate velit esse\n cillum dolore eu fugiat nulla pariatur. Excepteur sint occaecat cupidatat\n non proident, sunt in culpa qui officia deserunt mollit anim id est laborum.\n </p>\n </>\n );\n\n case '3':\n return <TableSizingTabs tabCount={2} />;\n\n default:\n return null;\n }\n })()}\n </Flex>\n </TabPanel>\n ))}\n </Flex>\n );\n};\n\nexport const caseId = 'C-123456';\n\nexport const createDate = new Date(2016, 1, 8);\nconst msInYear = 1000 * 60 * 60 * 24 * 365;\nconst diffInYears = Math.floor((Date.now() - createDate.getTime()) / msInYear);\n\nexport const tabLabels = ['Details', 'Pulse', 'Single table', 'Sub tab table', 'Multiple tables'];\n\nexport const baseCaseTabs = tabLabels.map((name): Tab => {\n return {\n name,\n id: name\n };\n});\n\nconst singularize = (s = '') => s.replace(/s$/i, '').toLowerCase();\n\nexport const MockSummaryListViewAllModal = ({ name, count }: any) => {\n const [search, setSearch] = useState('');\n const [loading, setLoading] = useState(true);\n const [items] = useMockListData(\n () => {\n setLoading(false);\n },\n {\n count\n }\n );\n\n const onSearchChange = (value: string) => {\n setSearch(value.trim());\n };\n\n const itemsToRender = useMemo(() => {\n if (search) {\n const regEx = createStringMatcher(search, 'boundary');\n return items.filter(({ primary, id }) => regEx.test(primary) || regEx.test(id));\n }\n\n return items;\n }, [items, search]);\n\n return (\n <Modal heading={name}>\n <ViewAll\n loading={loading}\n items={itemsToRender}\n actions={[\n {\n id: 'addNew',\n text: `Add ${singularize(name)}`\n }\n ]}\n searchInputProps={{ onSearchChange }}\n />\n </Modal>\n );\n};\n\nexport const MockSummaryList = ({\n icon,\n name,\n actions,\n limit\n}: Pick<SummaryListProps, 'icon' | 'name'> & { actions?: null; limit?: number }) => {\n const { create: createModal } = useModalManager();\n const [loading, setLoading] = useState(true);\n const count = 50;\n\n const [items] = useMockListData(\n () => {\n setLoading(false);\n },\n { count: limit }\n );\n\n return (\n <SummaryList\n loading={loading}\n items={items}\n icon={icon}\n name={name}\n headingTag='h3'\n count={loading ? undefined : count}\n actions={\n actions !== null\n ? [\n {\n text: 'Add',\n id: `${name}:addNew`,\n icon: 'plus',\n onClick() {\n createModal(() => {\n const singularName = singularize(name);\n return (\n <Modal heading={`Add new ${singularName}`}>\n {`Content for adding a new ${singularName} goes here…`}\n </Modal>\n );\n });\n }\n }\n ]\n : undefined\n }\n onViewAll={() => {\n createModal(MockSummaryListViewAllModal, {\n name,\n count\n });\n }}\n />\n );\n};\n\nexport const MockOperatorFieldValue = () => {\n const [target, setTarget] = useElement<HTMLButtonElement>(null);\n\n return (\n <>\n <Button\n variant='link'\n onClick={(e: MouseEvent<HTMLButtonElement>) => {\n setTarget(e.currentTarget);\n }}\n >\n constellation@pega.com\n </Button>\n {target && (\n <Glimpse\n id='constellation'\n target={target}\n onDismiss={() => setTarget(null)}\n heading={{\n primary: 'Constellation Operator',\n secondary: 'Director of the stars',\n visual: <Avatar name='Constellation Operator' />\n }}\n fields={[\n {\n id: '1',\n name: 'Department',\n value: 'Space Travel'\n },\n {\n id: '2',\n name: 'Manager',\n value: 'Captain Galaxy'\n },\n {\n id: '3',\n name: 'Location',\n value: 'A galaxy far away'\n },\n {\n id: '4',\n name: 'Email',\n value: <Link href='mailto:constellation@pega.com'>constellation@pega.com</Link>\n },\n {\n id: '5',\n name: 'Telephone',\n value: <Link href='tel:555-123-4567'>555-123-4567</Link>\n }\n ]}\n onViewProfile={() => {}}\n />\n )}\n </>\n );\n};\n\nexport const PreviewLinkComponent = ({\n token: linkToken,\n setPreviewCaseId,\n setPreviewCurrentTabId\n}: { token: TokenMap['link'] } & PreviewSetters) => {\n return (\n <Link\n href={linkToken.href}\n previewable\n onPreview={() => {\n setPreviewCaseId(linkToken.href);\n setPreviewCurrentTabId(`summary-${linkToken.href}`);\n }}\n >\n {linkToken.text}\n </Link>\n );\n};\n\nexport const getPulseMarkdownMap = ({\n setPreviewCaseId,\n setPreviewCurrentTabId\n}: PreviewSetters): FeedProps['markdownMap'] => {\n return {\n link: (linkToken: TokenMap['link']) => {\n if (linkToken.href?.startsWith('C-')) {\n return () => (\n <PreviewLinkComponent\n token={linkToken}\n setPreviewCaseId={setPreviewCaseId}\n setPreviewCurrentTabId={setPreviewCurrentTabId}\n />\n );\n }\n }\n };\n};\n\nexport const onMentionPreview = ({\n id,\n type,\n setPreviewCaseId,\n setPreviewCurrentTabId\n}: {\n id: string;\n type: string;\n} & PreviewSetters) => {\n if (type === 'case') {\n setPreviewCaseId(id);\n setPreviewCurrentTabId(`summary-${id}`);\n }\n};\n\nexport const getTabContent = ({ setPreviewCaseId, setPreviewCurrentTabId }: PreviewSetters) => {\n return [\n {\n id: 'Details',\n content: <Details />\n },\n {\n id: 'Pulse',\n content: (\n <PulseMock\n markdownMap={getPulseMarkdownMap({ setPreviewCaseId, setPreviewCurrentTabId })}\n onMentionPreview={({ id, type }) => {\n onMentionPreview({ id, type, setPreviewCaseId, setPreviewCurrentTabId });\n }}\n />\n )\n },\n {\n id: 'Single table',\n content: <RSTable />\n },\n {\n id: 'Sub tab table',\n content: <TableSizingTabs />\n },\n {\n id: 'Multiple tables',\n content: (\n <Card>\n <CardHeader>\n <Text variant='h2'>Multiple tables</Text>\n </CardHeader>\n <Flex container={{ direction: 'column', gap: 2 }}>\n <RSTable />\n <RSTable />\n </Flex>\n </Card>\n )\n },\n {\n id: 'not found',\n content: <h2>Not Found</h2>\n }\n ];\n};\n\nexport const previewTabContent = [\n {\n id: 'Details',\n content: <Details />\n },\n {\n id: 'Pulse',\n content: <PulseMock />\n },\n {\n id: 'Single table',\n content: <RSTable />\n },\n {\n id: 'Sub tab table',\n content: <TableSizingTabs />\n },\n {\n id: 'Multiple tables',\n content: (\n <Card>\n <CardHeader>\n <Text variant='h2'>Multiple tables</Text>\n </CardHeader>\n <Flex container={{ direction: 'column', gap: 2 }}>\n <RSTable />\n <RSTable />\n </Flex>\n </Card>\n )\n },\n {\n id: 'not found',\n content: <h2>Not Found</h2>\n }\n];\n\nexport const getPrimaryFields = () => {\n return [\n {\n name: 'Create date',\n value: createDate.toDateString()\n },\n {\n name: 'Member ID',\n value: 'M205435569FD1234567890'\n },\n {\n name: 'Assigned to',\n value: 'Dean Thomas'\n },\n {\n name: 'Priority',\n value: '95'\n }\n ].map((f, i) => ({ ...f, id: `p-${i}` }));\n};\n\nconst baseSecondaryFields: CaseViewProps['summaryFields']['secondary'] = [\n {\n name: 'Status',\n value: <Status variant='info'>New</Status>\n },\n {\n name: 'Update date',\n value: `${diffInYears} years ago`\n },\n {\n name: 'Description',\n value: (\n <RichTextViewer\n content='<p>Lorem ipsum dolor sit amet, consectetur adipiscing elit. Suspendisse commodo nulla vitae mi bibendum, a fringilla nisl efficitur. Praesent vitae nulla lobortis, finibus felis ultricies, fermentum mi. Nunc lorem ligula, placerat nec elit id, auctor pellentesque est.</p> </br> <p>Pellentesque pharetra justo augue, non maximus nulla venenatis et. Sed laoreet ultricies ullamcorper. Mauris ac nulla quis ipsum semper fringilla in eget risus. Fusce cursus sollicitudin nibh molestie volutpat.</p>'\n type='html'\n />\n ),\n simpleValue: DOMPurify.sanitize(\n '<p>Lorem ipsum dolor sit amet, consectetur adipiscing elit. Suspendisse commodo nulla vitae mi bibendum, a fringilla nisl efficitur. Praesent vitae nulla lobortis, finibus felis ultricies, fermentum mi. Nunc lorem ligula, placerat nec elit id, auctor pellentesque est.</p> </br> <p>Pellentesque pharetra justo augue, non maximus nulla venenatis et. Sed laoreet ultricies ullamcorper. Mauris ac nulla quis ipsum semper fringilla in eget risus. Fusce cursus sollicitudin nibh molestie volutpat.</p>',\n {\n ALLOWED_TAGS: [],\n ALLOWED_ATTR: [],\n KEEP_CONTENT: true\n }\n ),\n variant: 'stacked'\n }\n];\n\nexport const getSecondaryFields = ({\n setPreviewCaseId,\n setPreviewCurrentTabId\n}: PreviewSetters) => {\n return [\n ...baseSecondaryFields,\n {\n name: 'Created by',\n value: <MockOperatorFieldValue />\n },\n {\n name: 'Previewable case',\n value: (\n <Link\n href='/cases/C-456'\n previewable\n onPreview={() => {\n setPreviewCaseId('C-456');\n setPreviewCurrentTabId('summary-C-456');\n }}\n >\n Previewable Case - C-456\n </Link>\n )\n }\n ];\n};\n\nexport const casePreviewPrimaryFields = [\n {\n name: 'Member ID',\n value: 'M204859F438G'\n },\n {\n name: 'Priority',\n value: '95'\n }\n];\n\nexport const casePreviewSecondaryFields = baseSecondaryFields;\n\nexport const getParentCases = ({\n setPreviewCaseId,\n setPreviewCurrentTabId\n}: {\n caseId: CaseViewProps['caseId'];\n} & PreviewSetters) => {\n let ids: number[] = [];\n\n /** random-ish number from 100000 to 999999 */\n const randomId = (seed = 1) => {\n const x = Math.sin(seed);\n let rand = x - Math.floor(x);\n\n if (rand < 0.1) {\n rand += 0.1;\n }\n\n return Math.floor(rand * 1000000);\n };\n\n for (let i = 0; i < 5; i += 1) {\n ids.push(randomId(i + 1));\n }\n\n ids = ids.sort((a, b) => a - b);\n\n return ids.map(num => {\n const id = `C-${num}`;\n return {\n id,\n primary: id,\n href: `/cases/${id}`,\n previewable: true,\n onPreview: () => {\n setPreviewCaseId(id);\n setPreviewCurrentTabId(`summary-${id}`);\n }\n };\n });\n};\n\ninterface UtilitiesArgs {\n predictions?: CaseViewMockProps['predictions'];\n attachments?: CaseViewMockProps['attachments'];\n stakeholders?: CaseViewMockProps['stakeholders'];\n followers?: CaseViewMockProps['followers'];\n tags?: CaseViewMockProps['tags'];\n}\n\ninterface UtilitySummaryItemsArgs {\n predictions?: CaseViewMockProps['predictions'];\n attachments?: CaseViewMockProps['attachments'];\n stakeholders?: CaseViewMockProps['stakeholders'];\n followers?: CaseViewMockProps['followers'];\n tags?: CaseViewMockProps['tags'];\n hideStakeholdersAddNew?: boolean;\n setDialogTarget: (instance: HTMLElement | null) => void;\n setDialogContent: React.Dispatch<React.SetStateAction<ReactNode>>;\n setShowDialog: React.Dispatch<React.SetStateAction<boolean>>;\n dialogTarget: HTMLElement | null;\n showDialog: boolean;\n}\n\nexport const Utilities = ({\n predictions,\n attachments,\n stakeholders,\n followers,\n tags\n}: UtilitiesArgs) => {\n return (\n <>\n {predictions && <PredictionsDemo />}\n {attachments && <AttachmentsMock />}\n {stakeholders && <StakeHoldersDemo />}\n {followers && <MockSummaryList icon='user-star' name='Followers' />}\n {tags && <TagsDemo />}\n </>\n );\n};\n\nexport const getUtilitiesSummaryItems = ({\n predictions,\n attachments,\n stakeholders,\n followers,\n tags,\n hideStakeholdersAddNew,\n setDialogTarget,\n setDialogContent,\n setShowDialog,\n dialogTarget,\n showDialog\n}: UtilitySummaryItemsArgs): NonNullable<CaseViewProps['utilitiesSummaryItems']> => {\n const items: NonNullable<CaseViewProps['utilitiesSummaryItems']> = [];\n\n if (predictions)\n items.push({\n iconName: 'polaris',\n name: 'Predictions',\n onClick: e => {\n if (dialogTarget !== e.currentTarget || !showDialog) {\n setDialogTarget(e.currentTarget);\n setDialogContent(<PredictionsDemo />);\n setShowDialog(true);\n } else {\n setDialogTarget(null);\n setShowDialog(false);\n }\n }\n });\n if (attachments)\n items.push({\n iconName: 'paper-clip',\n count: 4,\n name: 'Attachments',\n onClick: e => {\n if (dialogTarget !== e.currentTarget || !showDialog) {\n setDialogTarget(e.currentTarget);\n setDialogContent(<AttachmentsMock />);\n setShowDialog(true);\n } else {\n setDialogTarget(null);\n setShowDialog(false);\n }\n }\n });\n if (stakeholders)\n items.push({\n iconName: 'user-search-solid',\n count: 10,\n name: 'Stakeholders',\n onClick: e => {\n if (dialogTarget !== e.currentTarget || !showDialog) {\n setDialogTarget(e.currentTarget);\n setDialogContent(<StakeHoldersDemo hideAddNew={hideStakeholdersAddNew} />);\n setShowDialog(true);\n } else {\n setDialogTarget(null);\n setShowDialog(false);\n }\n }\n });\n if (followers)\n items.push({\n iconName: 'user-star-solid',\n count: 5,\n name: 'Followers',\n onClick: e => {\n if (dialogTarget !== e.currentTarget || !showDialog) {\n setDialogTarget(e.currentTarget);\n setDialogContent(<MockSummaryList icon='user-star' name='Followers' />);\n setShowDialog(true);\n } else {\n setDialogTarget(null);\n setShowDialog(false);\n }\n }\n });\n if (tags)\n items.push({\n iconName: 'tag',\n count: 10,\n name: 'Tags',\n onClick: e => {\n if (dialogTarget !== e.currentTarget || !showDialog) {\n setDialogTarget(e.currentTarget);\n setDialogContent(<TagsDemo />);\n setShowDialog(true);\n } else {\n setDialogTarget(null);\n setShowDialog(false);\n }\n }\n });\n\n return items;\n};\n\nexport const getCaseActions = () => {\n return Array.from({ length: 12 }, (_, i) => {\n return {\n text: `Action ${i + 1}`,\n id: `${i + 1}`,\n onClick: () => {}\n };\n });\n};\n\nconst getHeading = (size: 'short' | 'medium' | 'long') => {\n return {\n short: 'Constellation',\n medium: 'Complicated constellation demo case of some distinction',\n long: 'The scenario in this case is almost too obscure to put into words and so the title is quite long'\n }[size];\n};\n\nexport const getPromotedActions = (count: number) => {\n return [\n {\n id: createUID(),\n text: 'Reassign',\n onClick: () => {}\n },\n {\n id: createUID(),\n text: 'Add dependency',\n onClick: () => {}\n },\n {\n id: createUID(),\n text: 'Clone',\n onClick: () => {}\n },\n {\n id: createUID(),\n text: 'Move',\n onClick: () => {}\n },\n {\n id: createUID(),\n text: 'Withdraw',\n onClick: () => {}\n }\n ].slice(0, count);\n};\n\nconst StyledPersistentUtilityContent = styled.div(({ theme }) => {\n return css`\n height: 100%;\n border-inline: 0.0625rem dashed ${theme.base.palette['border-line']};\n `;\n});\n\nexport const PersistentUtilityContent = () => {\n return (\n <Flex\n container={{ justify: 'center', alignItems: 'center' }}\n as={StyledPersistentUtilityContent}\n >\n Persistent utility content\n </Flex>\n );\n};\n\nexport const CaseViewMock = ({\n caseId: caseIdProp,\n heading,\n subheading,\n parentCases = false,\n promotedActions = 1,\n summaryFields = 'All',\n tabs,\n stages = true,\n tasks = true,\n taskCount = 4,\n utilitiesExpanded: utilitiesExpandedProp = true,\n predictions = true,\n attachments = true,\n stakeholders = true,\n followers = true,\n tags = true,\n persistentUtility = false,\n intelligentGuidance = false,\n banner = false,\n headingLength,\n defaultExpanded,\n hideStakeholdersAddNew\n}: CaseViewMockProps) => {\n const [previewCaseId, setPreviewCaseId] = useState<null | string>(null);\n const [previewCurrentTabId, setPreviewCurrentTabId] = useState(baseCaseTabs[0].id);\n const isMediumOrAbove = useBreakpoint('md');\n const [demoCurrentTabId, setDemoCurrentTabId] = useState(\n isMediumOrAbove ? tabs?.currentTabId ?? baseCaseTabs[0].id : `summary-${caseIdProp}`\n );\n\n const [dialogContent, setDialogContent] = useState<ReactNode>();\n const [dialogTarget, setDialogTarget] = useElement<HTMLElement>();\n const [showDialog, setShowDialog] = useState(false);\n\n const demoTabs = tabs ?? {\n items: baseCaseTabs,\n currentTabId: demoCurrentTabId,\n onClick: setDemoCurrentTabId\n };\n\n const previewTabs = {\n items: baseCaseTabs,\n currentTabId: previewCurrentTabId,\n onClick: setPreviewCurrentTabId\n };\n\n const parentCasesContent = getParentCases({\n caseId: caseIdProp,\n setPreviewCaseId,\n setPreviewCurrentTabId\n });\n\n const demoStages = <StagesDemo currentStage={3} />;\n\n const [followed, setFollowed] = useState(false);\n\n const [summaryExpanded, setSummaryExpanded] = useState(!!defaultExpanded);\n const [utilitiesExpanded, setUtilitiesExpanded] = useState(utilitiesExpandedProp);\n const tabContent = getTabContent({\n setPreviewCaseId,\n setPreviewCurrentTabId\n });\n\n return (\n <>\n {previewCaseId && (\n <CasePreview\n open\n onAfterClose={() => {\n setPreviewCaseId(null);\n }}\n caseId={previewCaseId}\n parentCases={\n Math.random() > 0.5\n ? [...parentCasesContent]\n .filter(c => c.id !== previewCaseId)\n .map(c => ({ ...c, id: `preview-${c.id}` }))\n : undefined\n }\n heading='Previewable demo case'\n subheading={previewCaseId}\n caseLink={{ href: `/cases/${previewCaseId}`, target: '_blank' }}\n icon='user-solid'\n followed={!followed}\n onEdit={() => {}}\n actions={getCaseActions()}\n promotedActions={getPromotedActions(2)}\n summaryFields={{\n primary: casePreviewPrimaryFields,\n secondary: casePreviewSecondaryFields\n }}\n stages={demoStages}\n tasks={<AssignmentsDemo count={4} />}\n tabs={previewTabs}\n tabContent={tabContent}\n utilities={\n <Grid container={{ rowGap: 2 }}>\n <Utilities\n predictions={predictions}\n attachments={attachments}\n stakeholders={stakeholders}\n followers={followers}\n tags={tags}\n />\n </Grid>\n }\n />\n )}\n {dialogTarget && showDialog && (\n <UtilitySummaryItemDialog\n target={dialogTarget}\n onDismiss={() => {\n setShowDialog(false);\n }}\n >\n {dialogContent}\n </UtilitySummaryItemDialog>\n )}\n <CaseView\n caseId={caseIdProp}\n parentCases={\n parentCases\n ? getParentCases({\n caseId: caseIdProp,\n setPreviewCaseId,\n setPreviewCurrentTabId\n })\n : undefined\n }\n heading={headingLength ? getHeading(headingLength) : heading}\n subheading={subheading}\n icon='user-solid'\n followed={followed}\n onFollowedChange={setFollowed}\n actions={getCaseActions()}\n promotedActions={promotedActions ? getPromotedActions(promotedActions) : undefined}\n onEdit={() => {}}\n summaryFields={(() => {\n const obj: CaseViewProps['summaryFields'] = {\n primary: getPrimaryFields(),\n secondary: getSecondaryFields({ setPreviewCaseId, setPreviewCurrentTabId })\n };\n\n if (summaryFields === 'Primary only') {\n obj.secondary = undefined;\n }\n\n if (summaryFields === 'Secondary only') {\n obj.primary = undefined;\n }\n\n return obj;\n })()}\n summaryExpanded={summaryExpanded}\n onToggleSummary={() => {\n setSummaryExpanded(cur => !cur);\n }}\n tabs={demoTabs}\n persistentUtility={(() => {\n if (typeof persistentUtility === 'boolean') {\n return persistentUtility\n ? { title: 'Persistent utility', content: <PersistentUtilityContent /> }\n : undefined;\n }\n\n return persistentUtility;\n })()}\n stages={stages ? demoStages : undefined}\n tasks={tasks ? <AssignmentsDemo count={taskCount} /> : undefined}\n tabContent={tabContent}\n utilities={\n <Utilities\n predictions={predictions}\n attachments={attachments}\n stakeholders={stakeholders}\n followers={followers}\n tags={tags}\n />\n }\n utilitiesSummaryItems={getUtilitiesSummaryItems({\n predictions,\n attachments,\n stakeholders,\n followers,\n tags,\n hideStakeholdersAddNew,\n setDialogTarget,\n setDialogContent,\n setShowDialog,\n dialogTarget,\n showDialog\n })}\n utilitiesExpanded={utilitiesExpanded}\n onToggleUtilities={() => {\n setUtilitiesExpanded(cur => !cur);\n }}\n intelligentGuidance={intelligentGuidance}\n banners={\n banner ? (\n <Banner\n variant='urgent'\n messages={[\n {\n label: 'An error occurred',\n description:\n 'Lorem ipsum dolor sit amet, consectetur adipiscing elit, sed do eiusmod tempor incididunt ut labore et dolore magna aliqua. Ut enim ad minim veniam, quis nostrud exercitation ullamco laboris nisi ut aliquip ex ea commodo consequat. Duis aute irure dolor in reprehenderit in voluptate velit esse cillum dolore eu fugiat nulla pariatur. Excepteur sint occaecat cupidatat non proident, sunt in culpa qui officia deserunt mollit anim id est laborum.',\n action: {\n text: 'Take acton'\n }\n }\n ]}\n />\n ) : undefined\n }\n />\n </>\n );\n};\n"]}
|
package/package.json
CHANGED
|
@@ -1,6 +1,6 @@
|
|
|
1
1
|
{
|
|
2
2
|
"name": "@pega/cosmos-react-demos",
|
|
3
|
-
"version": "5.0.0-dev.12.
|
|
3
|
+
"version": "5.0.0-dev.12.1",
|
|
4
4
|
"repository": {
|
|
5
5
|
"type": "git",
|
|
6
6
|
"url": "git+https://github.com/pegasystems/cosmos-react.git",
|
|
@@ -19,12 +19,12 @@
|
|
|
19
19
|
"build": "tsc -b tsconfig.build.json && tsc -b tsconfig.build-preserve.json"
|
|
20
20
|
},
|
|
21
21
|
"dependencies": {
|
|
22
|
-
"@pega/cosmos-react-condition-builder": "5.0.0-dev.12.
|
|
23
|
-
"@pega/cosmos-react-core": "5.0.0-dev.12.
|
|
24
|
-
"@pega/cosmos-react-dnd": "5.0.0-dev.12.
|
|
25
|
-
"@pega/cosmos-react-rte": "5.0.0-dev.12.
|
|
26
|
-
"@pega/cosmos-react-social": "5.0.0-dev.12.
|
|
27
|
-
"@pega/cosmos-react-work": "5.0.0-dev.12.
|
|
22
|
+
"@pega/cosmos-react-condition-builder": "5.0.0-dev.12.1",
|
|
23
|
+
"@pega/cosmos-react-core": "5.0.0-dev.12.1",
|
|
24
|
+
"@pega/cosmos-react-dnd": "5.0.0-dev.12.1",
|
|
25
|
+
"@pega/cosmos-react-rte": "5.0.0-dev.12.1",
|
|
26
|
+
"@pega/cosmos-react-social": "5.0.0-dev.12.1",
|
|
27
|
+
"@pega/cosmos-react-work": "5.0.0-dev.12.1",
|
|
28
28
|
"@storybook/addon-actions": "~7.5.3",
|
|
29
29
|
"@storybook/react": "~7.5.3",
|
|
30
30
|
"@types/dompurify": "^3.0.5",
|