@pega/react-sdk-components 0.25.5 → 0.25.7

This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
Files changed (92) hide show
  1. package/lib/components/designSystemExtension/CaseSummaryFields/CaseSummaryFields.js +1 -1
  2. package/lib/components/designSystemExtension/CaseSummaryFields/CaseSummaryFields.js.map +1 -1
  3. package/lib/components/field/RadioButtons/RadioButtons.js +1 -1
  4. package/lib/components/field/RadioButtons/RadioButtons.js.map +1 -1
  5. package/lib/components/field/SelectableCard/utils.d.ts +0 -1
  6. package/lib/components/field/SelectableCard/utils.d.ts.map +1 -1
  7. package/lib/components/field/SelectableCard/utils.js +2 -4
  8. package/lib/components/field/SelectableCard/utils.js.map +1 -1
  9. package/lib/components/field/SemanticLink/SemanticLink.js +1 -1
  10. package/lib/components/field/SemanticLink/SemanticLink.js.map +1 -1
  11. package/lib/components/helpers/attachmentShared.d.ts +2 -0
  12. package/lib/components/helpers/attachmentShared.d.ts.map +1 -0
  13. package/lib/components/helpers/attachmentShared.js +6 -0
  14. package/lib/components/helpers/attachmentShared.js.map +1 -0
  15. package/lib/components/helpers/common-utils.d.ts.map +1 -1
  16. package/lib/components/helpers/common-utils.js +1 -2
  17. package/lib/components/helpers/common-utils.js.map +1 -1
  18. package/lib/components/helpers/formatters/Currency.d.ts +1 -0
  19. package/lib/components/helpers/formatters/Currency.d.ts.map +1 -1
  20. package/lib/components/helpers/formatters/Currency.js +8 -4
  21. package/lib/components/helpers/formatters/Currency.js.map +1 -1
  22. package/lib/components/helpers/formatters/index.d.ts +1 -0
  23. package/lib/components/helpers/formatters/index.d.ts.map +1 -1
  24. package/lib/components/helpers/object-utils.d.ts +9 -0
  25. package/lib/components/helpers/object-utils.d.ts.map +1 -0
  26. package/lib/components/helpers/object-utils.js +11 -0
  27. package/lib/components/helpers/object-utils.js.map +1 -0
  28. package/lib/components/infra/Assignment/Assignment.js +1 -1
  29. package/lib/components/infra/Assignment/Assignment.js.map +1 -1
  30. package/lib/components/infra/Containers/FlowContainer/FlowContainer.js +2 -2
  31. package/lib/components/infra/Containers/FlowContainer/FlowContainer.js.map +1 -1
  32. package/lib/components/infra/Containers/ModalViewContainer/ModalViewContainer.d.ts.map +1 -1
  33. package/lib/components/infra/Containers/ModalViewContainer/ModalViewContainer.js +4 -3
  34. package/lib/components/infra/Containers/ModalViewContainer/ModalViewContainer.js.map +1 -1
  35. package/lib/components/infra/MultiStep/MultiStep.css +0 -2
  36. package/lib/components/infra/NavBar/NavBar.d.ts.map +1 -1
  37. package/lib/components/infra/NavBar/NavBar.js +1 -2
  38. package/lib/components/infra/NavBar/NavBar.js.map +1 -1
  39. package/lib/components/infra/Stages/Stages.js +1 -1
  40. package/lib/components/infra/Stages/Stages.js.map +1 -1
  41. package/lib/components/template/AppShell/AppShell.d.ts.map +1 -1
  42. package/lib/components/template/AppShell/AppShell.js +4 -0
  43. package/lib/components/template/AppShell/AppShell.js.map +1 -1
  44. package/lib/components/template/CaseSummary/CaseSummary.d.ts.map +1 -1
  45. package/lib/components/template/CaseSummary/CaseSummary.js +56 -2
  46. package/lib/components/template/CaseSummary/CaseSummary.js.map +1 -1
  47. package/lib/components/template/CaseView/CaseView.d.ts.map +1 -1
  48. package/lib/components/template/CaseView/CaseView.js +3 -8
  49. package/lib/components/template/CaseView/CaseView.js.map +1 -1
  50. package/lib/components/template/DataReference/DataReference.d.ts.map +1 -1
  51. package/lib/components/template/DataReference/DataReference.js +1 -2
  52. package/lib/components/template/DataReference/DataReference.js.map +1 -1
  53. package/lib/components/template/ListView/ListView.js +1 -1
  54. package/lib/components/template/ListView/ListView.js.map +1 -1
  55. package/lib/components/template/SimpleTable/SimpleTableManual/SimpleTableManual.js +1 -1
  56. package/lib/components/template/SimpleTable/SimpleTableManual/SimpleTableManual.js.map +1 -1
  57. package/lib/components/template/SingleReferenceReadOnly/SingleReferenceReadOnly.d.ts.map +1 -1
  58. package/lib/components/template/SingleReferenceReadOnly/SingleReferenceReadOnly.js +3 -2
  59. package/lib/components/template/SingleReferenceReadOnly/SingleReferenceReadOnly.js.map +1 -1
  60. package/lib/components/widget/Attachment/Attachment.d.ts +3 -1
  61. package/lib/components/widget/Attachment/Attachment.d.ts.map +1 -1
  62. package/lib/components/widget/Attachment/Attachment.js +241 -189
  63. package/lib/components/widget/Attachment/Attachment.js.map +1 -1
  64. package/lib/components/widget/Attachment/Attachment.types.d.ts +90 -0
  65. package/lib/components/widget/Attachment/Attachment.types.d.ts.map +1 -0
  66. package/lib/components/widget/Attachment/Attachment.types.js +2 -0
  67. package/lib/components/widget/Attachment/Attachment.types.js.map +1 -0
  68. package/lib/components/widget/Attachment/AttachmentUtils.d.ts +25 -0
  69. package/lib/components/widget/Attachment/AttachmentUtils.d.ts.map +1 -0
  70. package/lib/components/widget/Attachment/AttachmentUtils.js +255 -0
  71. package/lib/components/widget/Attachment/AttachmentUtils.js.map +1 -0
  72. package/lib/components/widget/FileUtility/FileUtility/FileUtility.d.ts +1 -0
  73. package/lib/components/widget/FileUtility/FileUtility/FileUtility.d.ts.map +1 -1
  74. package/lib/components/widget/FileUtility/FileUtility/FileUtility.js +21 -8
  75. package/lib/components/widget/FileUtility/FileUtility/FileUtility.js.map +1 -1
  76. package/lib/components/widget/ToDo/ToDo.d.ts.map +1 -1
  77. package/lib/components/widget/ToDo/ToDo.js +6 -3
  78. package/lib/components/widget/ToDo/ToDo.js.map +1 -1
  79. package/lib/mediaco/ToDo/ToDo.css +81 -0
  80. package/lib/mediaco/ToDo/ToDo.d.ts +16 -0
  81. package/lib/mediaco/ToDo/ToDo.d.ts.map +1 -0
  82. package/lib/mediaco/ToDo/ToDo.js +187 -0
  83. package/lib/mediaco/ToDo/ToDo.js.map +1 -0
  84. package/lib/mediaco/ToDo/index.d.ts +2 -0
  85. package/lib/mediaco/ToDo/index.d.ts.map +1 -0
  86. package/lib/mediaco/ToDo/index.js +2 -0
  87. package/lib/mediaco/ToDo/index.js.map +1 -0
  88. package/package.json +1 -1
  89. package/lib/components/helpers/attachmentHelpers.d.ts +0 -16
  90. package/lib/components/helpers/attachmentHelpers.d.ts.map +0 -1
  91. package/lib/components/helpers/attachmentHelpers.js +0 -94
  92. package/lib/components/helpers/attachmentHelpers.js.map +0 -1
@@ -1 +1 @@
1
- {"version":3,"file":"Stages.js","sourceRoot":"","sources":["../../../../src/components/infra/Stages/Stages.tsx"],"names":[],"mappings":"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","sourcesContent":["import { Breadcrumbs, Card, Typography } from '@mui/material';\nimport DoubleArrowIcon from '@mui/icons-material/DoubleArrow';\nimport DoneIcon from '@mui/icons-material/Done';\nimport makeStyles from '@mui/styles/makeStyles';\n\nimport type { PConnProps } from '../../../types/PConnProps';\n\ninterface StagesProps extends PConnProps {\n // If any, enter additional props that only exist on this component\n stages: any[];\n}\n\nconst useStyles = makeStyles(theme => ({\n root: {\n paddingRight: theme.spacing(1),\n paddingLeft: theme.spacing(1),\n paddingTop: theme.spacing(1),\n paddingBottom: theme.spacing(1),\n marginRight: theme.spacing(1),\n marginLeft: theme.spacing(1),\n marginTop: theme.spacing(1),\n marginBottom: theme.spacing(1)\n },\n completedStage: {\n color: theme.palette.text.primary\n },\n currentStage: {\n color: theme.palette.info.dark,\n fontWeight: 600\n },\n futureStage: {\n color: theme.palette.text.secondary\n },\n separatorIcon: {\n color: theme.palette.text.disabled\n }\n}));\n\n/**\n * API to filter out the alternate stages which are not in active and return all other stages\n * @param {Array} stages - Stages of a case type\n *\n * @returns {Array} - Returns stages which are non alternate stages and alternate stage which is active.\n */\nfunction getFilteredStages(stages) {\n if (!Array.isArray(stages)) {\n return [];\n }\n\n return stages.filter(stage => stage.type !== 'Alternate' || (stage.type === 'Alternate' && stage.visited_status === 'active'));\n}\n\n/* TODO - this component should be refactored and not exposed as top level DX Component -\n the stages should be created as part of the CaseView */\nexport default function Stages(props: StagesProps) {\n const classes = useStyles();\n\n const { getPConnect, stages } = props;\n const pConn = getPConnect();\n const key = `${pConn.getCaseInfo().getClassName()}!CASE!${pConn.getCaseInfo().getName()}`.toUpperCase();\n\n const filteredStages = getFilteredStages(stages);\n const currentStageID = pConn.getValue(PCore.getConstants().CASE_INFO.STAGEID, ''); // 2nd arg empty string until typedef allows optional\n const stagesObj = filteredStages.map((stage, index, arr) => {\n const theID = stage.ID || stage.id;\n return {\n name: PCore.getLocaleUtils().getLocaleValue(stage.name, undefined, key),\n id: theID,\n complete: stage.visited_status === 'completed',\n current: theID === currentStageID,\n last: index === arr.length - 1\n };\n });\n\n // debugging/investigation help\n // console.log(`Stages: current: ${currentStageID} stagesObj: ${JSON.stringify(stagesObj)}`);\n\n function getStage(stage, index) {\n // Removing nested ternary for lint\n // const theClass = stage.current ? classes.currentStage : (stage.complete ? classes.completedStage : classes.futureStage);\n let theClass;\n if (stage.current) {\n theClass = classes.currentStage;\n } else if (stage.complete) {\n theClass = classes.completedStage;\n } else {\n theClass = classes.futureStage;\n }\n\n return (\n <span key={index}>\n {stage.complete ? <DoneIcon color='disabled' fontSize='small' /> : null}\n <Typography variant='h5' component='span' display='inline' className={theClass}>\n {stage.name}\n </Typography>\n </span>\n );\n }\n\n function getStages(inStages) {\n return (\n <Breadcrumbs aria-label='stages' separator={<DoubleArrowIcon className={classes.separatorIcon} />}>\n {inStages.map((stage, index) => {\n return getStage(stage, index);\n })}\n </Breadcrumbs>\n );\n }\n\n return (\n <Card id='Stages' className={classes.root}>\n {/* Stages<br />\n currentStageID: {currentStageID}<br />\n {JSON.stringify(stagesObj)}<br /><br /> */}\n {getStages(stagesObj)}\n </Card>\n );\n}\n"]}
1
+ {"version":3,"file":"Stages.js","sourceRoot":"","sources":["../../../../src/components/infra/Stages/Stages.tsx"],"names":[],"mappings":"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","sourcesContent":["import { Breadcrumbs, Card, Typography } from '@mui/material';\nimport DoubleArrowIcon from '@mui/icons-material/DoubleArrow';\nimport DoneIcon from '@mui/icons-material/Done';\nimport makeStyles from '@mui/styles/makeStyles';\n\nimport type { PConnProps } from '../../../types/PConnProps';\n\ninterface StagesProps extends PConnProps {\n // If any, enter additional props that only exist on this component\n stages: any[];\n}\n\nconst useStyles = makeStyles(theme => ({\n root: {\n paddingRight: theme.spacing(1),\n paddingLeft: theme.spacing(1),\n paddingTop: theme.spacing(1),\n paddingBottom: theme.spacing(1),\n marginRight: theme.spacing(1),\n marginLeft: theme.spacing(1),\n marginTop: theme.spacing(1),\n marginBottom: theme.spacing(1)\n },\n completedStage: {\n color: theme.palette.text.primary\n },\n currentStage: {\n color: theme.palette.info.dark,\n fontWeight: 600\n },\n futureStage: {\n color: theme.palette.text.secondary\n },\n separatorIcon: {\n color: theme.palette.text.disabled\n }\n}));\n\n/**\n * API to filter out the alternate stages which are not in active and return all other stages\n * @param {Array} stages - Stages of a case type\n *\n * @returns {Array} - Returns stages which are non alternate stages and alternate stage which is active.\n */\nfunction getFilteredStages(stages) {\n if (!Array.isArray(stages)) {\n return [];\n }\n\n return stages.filter(stage => stage.type !== 'Alternate' || (stage.type === 'Alternate' && stage.visited_status === 'active'));\n}\n\n/* TODO - this component should be refactored and not exposed as top level DX Component -\n the stages should be created as part of the CaseView */\nexport default function Stages(props: StagesProps) {\n const classes = useStyles();\n\n const { getPConnect, stages } = props;\n const pConn = getPConnect();\n const key = getPConnect()?.getCaseLocaleReference();\n\n const filteredStages = getFilteredStages(stages);\n const currentStageID = pConn.getValue(PCore.getConstants().CASE_INFO.STAGEID, ''); // 2nd arg empty string until typedef allows optional\n const stagesObj = filteredStages.map((stage, index, arr) => {\n const theID = stage.ID || stage.id;\n return {\n name: PCore.getLocaleUtils().getLocaleValue(stage.name, undefined, key),\n id: theID,\n complete: stage.visited_status === 'completed',\n current: theID === currentStageID,\n last: index === arr.length - 1\n };\n });\n\n // debugging/investigation help\n // console.log(`Stages: current: ${currentStageID} stagesObj: ${JSON.stringify(stagesObj)}`);\n\n function getStage(stage, index) {\n // Removing nested ternary for lint\n // const theClass = stage.current ? classes.currentStage : (stage.complete ? classes.completedStage : classes.futureStage);\n let theClass;\n if (stage.current) {\n theClass = classes.currentStage;\n } else if (stage.complete) {\n theClass = classes.completedStage;\n } else {\n theClass = classes.futureStage;\n }\n\n return (\n <span key={index}>\n {stage.complete ? <DoneIcon color='disabled' fontSize='small' /> : null}\n <Typography variant='h5' component='span' display='inline' className={theClass}>\n {stage.name}\n </Typography>\n </span>\n );\n }\n\n function getStages(inStages) {\n return (\n <Breadcrumbs aria-label='stages' separator={<DoubleArrowIcon className={classes.separatorIcon} />}>\n {inStages.map((stage, index) => {\n return getStage(stage, index);\n })}\n </Breadcrumbs>\n );\n }\n\n return (\n <Card id='Stages' className={classes.root}>\n {/* Stages<br />\n currentStageID: {currentStageID}<br />\n {JSON.stringify(stagesObj)}<br /><br /> */}\n {getStages(stagesObj)}\n </Card>\n );\n}\n"]}
@@ -1 +1 @@
1
- {"version":3,"file":"AppShell.d.ts","sourceRoot":"","sources":["../../../../src/components/template/AppShell/AppShell.tsx"],"names":[],"mappings":"AAAA,OAAO,EAAE,KAAK,iBAAiB,EAAuB,MAAM,OAAO,CAAC;AAOpE,OAAO,KAAK,EAAE,UAAU,EAAE,MAAM,2BAA2B,CAAC;AAE5D,OAAO,gBAAgB,CAAC;AAExB,UAAU,aAAc,SAAQ,UAAU;IAExC,WAAW,EAAE,OAAO,CAAC;IACrB,KAAK,EAAE;QACL,cAAc,EAAE,MAAM,CAAC;QACvB,WAAW,EAAE,MAAM,CAAC;QACpB,OAAO,EAAE,MAAM,CAAC;QAChB,UAAU,EAAE,MAAM,CAAC;QACnB,YAAY,EAAE,MAAM,CAAC;KACtB,EAAE,CAAC;IACJ,SAAS,CAAC,EAAE,MAAM,EAAE,CAAC;IACrB,cAAc,EAAE,MAAM,CAAC;IACvB,UAAU,EAAE,MAAM,CAAC;IACnB,UAAU,EAAE,MAAM,CAAC;IACnB,iBAAiB,EAAE;QAAE,SAAS,EAAE,MAAM,CAAC;QAAC,QAAQ,EAAE,MAAM,CAAA;KAAE,CAAC;IAC3D,YAAY,EAAE,MAAM,EAAE,CAAC;IACvB,YAAY,EAAE,MAAM,EAAE,CAAC;CACxB;AAmBD,MAAM,CAAC,OAAO,UAAU,QAAQ,CAAC,KAAK,EAAE,iBAAiB,CAAC,aAAa,CAAC,2CA8MvE"}
1
+ {"version":3,"file":"AppShell.d.ts","sourceRoot":"","sources":["../../../../src/components/template/AppShell/AppShell.tsx"],"names":[],"mappings":"AAAA,OAAO,EAAE,KAAK,iBAAiB,EAAuB,MAAM,OAAO,CAAC;AAOpE,OAAO,KAAK,EAAE,UAAU,EAAE,MAAM,2BAA2B,CAAC;AAE5D,OAAO,gBAAgB,CAAC;AAExB,UAAU,aAAc,SAAQ,UAAU;IAExC,WAAW,EAAE,OAAO,CAAC;IACrB,KAAK,EAAE;QACL,cAAc,EAAE,MAAM,CAAC;QACvB,WAAW,EAAE,MAAM,CAAC;QACpB,OAAO,EAAE,MAAM,CAAC;QAChB,UAAU,EAAE,MAAM,CAAC;QACnB,YAAY,EAAE,MAAM,CAAC;KACtB,EAAE,CAAC;IACJ,SAAS,CAAC,EAAE,MAAM,EAAE,CAAC;IACrB,cAAc,EAAE,MAAM,CAAC;IACvB,UAAU,EAAE,MAAM,CAAC;IACnB,UAAU,EAAE,MAAM,CAAC;IACnB,iBAAiB,EAAE;QAAE,SAAS,EAAE,MAAM,CAAC;QAAC,QAAQ,EAAE,MAAM,CAAA;KAAE,CAAC;IAC3D,YAAY,EAAE,MAAM,EAAE,CAAC;IACvB,YAAY,EAAE,MAAM,EAAE,CAAC;CACxB;AAmBD,MAAM,CAAC,OAAO,UAAU,QAAQ,CAAC,KAAK,EAAE,iBAAiB,CAAC,aAAa,CAAC,2CAmNvE"}
@@ -62,6 +62,10 @@ export default function AppShell(props) {
62
62
  return (_jsxs("div", { id: theChildComp, style: { border: 'solid 1px silver', margin: '1px' }, children: [theChildComp, " will be here"] }, theKey));
63
63
  });
64
64
  setMapChildren(tempMap);
65
+ /* TODO: We're setting the `pyPortalTemplate` for now, this would be handled by the CoreJS in the future releases */
66
+ if (portalTemplate === 'wss') {
67
+ PCore.getEnvironmentInfo().setEnvironmentInfo({ ...PCore.getEnvironmentInfo().environmentInfoObject, pyPortalTemplate: 'wss' });
68
+ }
65
69
  }, []);
66
70
  useEffect(() => {
67
71
  // @ts-expect-error
@@ -1 +1 @@
1
- {"version":3,"file":"AppShell.js","sourceRoot":"","sources":["../../../../src/components/template/AppShell/AppShell.tsx"],"names":[],"mappings":"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","sourcesContent":["import { type PropsWithChildren, useEffect, useState } from 'react';\nimport makeStyles from '@mui/styles/makeStyles';\nimport Avatar from '@mui/material/Avatar';\n\nimport { Utils } from '../../helpers/utils';\nimport { NavContext } from '../../helpers/reactContextHelpers';\nimport { getComponentFromMap } from '../../../bridge/helpers/sdk_component_map';\nimport type { PConnProps } from '../../../types/PConnProps';\n\nimport './AppShell.css';\n\ninterface AppShellProps extends PConnProps {\n // If any, enter additional props that only exist on this component\n showAppName: boolean;\n pages: {\n pxPageViewIcon: string;\n pyClassName: string;\n pyLabel: string;\n pyRuleName: string;\n pyURLContent: string;\n }[];\n caseTypes?: object[];\n portalTemplate: string;\n portalName: string;\n portalLogo: string;\n navDisplayOptions: { alignment: string; position: string };\n httpMessages: string[];\n pageMessages: string[];\n}\n\nconst useStyles = makeStyles(theme => ({\n root: {},\n content: {\n flexGrow: 1,\n height: '100vh',\n overflow: 'auto',\n marginLeft: theme.spacing(2),\n marginRight: theme.spacing(2)\n },\n wsscontent: {\n flexGrow: 1,\n height: '100vh',\n marginLeft: theme.spacing(1),\n marginRight: theme.spacing(1)\n }\n}));\n\nexport default function AppShell(props: PropsWithChildren<AppShellProps>) {\n // Get emitted components from map (so we can get any override that may exist)\n const NavBar = getComponentFromMap('NavBar');\n const WssNavBar = getComponentFromMap('WssNavBar');\n const AlertBanner = getComponentFromMap('AlertBanner');\n\n const {\n pages = [],\n caseTypes = [],\n showAppName,\n children = [],\n getPConnect,\n httpMessages = [],\n pageMessages = [],\n portalTemplate,\n portalName,\n portalLogo,\n navDisplayOptions\n } = props;\n\n const [open, setOpen] = useState(true);\n // eslint-disable-next-line @typescript-eslint/no-unused-vars\n const [activeTab, setActiveTab] = useState(!pages ? null : pages[0]?.pyRuleName);\n const pConn = getPConnect();\n const envInfo = PCore.getEnvironmentInfo();\n const imageKey = envInfo.getOperatorImageInsKey();\n const userName = envInfo.getOperatorName() || '';\n const currentUserInitials = Utils.getInitials(userName);\n const appNameToDisplay = showAppName ? envInfo.getApplicationLabel() : '';\n const portalClass = pConn.getValue('.classID', ''); // 2nd arg empty string until typedef marked correctly\n const envPortalName = envInfo.getPortalName();\n const localizedVal = PCore.getLocaleUtils().getLocaleValue;\n\n const classes = useStyles();\n const actionsAPI = pConn.getActionsApi();\n const localeReference = pConn.getValue('.pyLocaleReference', ''); // 2nd arg empty string until typedef marked correctly\n const [imageBlobUrl, setImageBlobUrl] = useState<string | Blob | null>(null);\n // useState for appName and mapChildren - note these are ONLY updated once (on component mount!)\n // eslint-disable-next-line @typescript-eslint/no-unused-vars\n const [appName, setAppName] = useState('');\n // eslint-disable-next-line @typescript-eslint/no-unused-vars\n const [mapChildren, setMapChildren] = useState([]);\n\n const messages = [...httpMessages, ...pageMessages];\n\n const hasBanner = messages && messages.length ? messages.length > 0 : false;\n let banners: any = null;\n banners = hasBanner && (\n <div style={{ display: 'flex', flexDirection: 'column', padding: '1em 0' }}>\n <AlertBanner id='AppShell' variant='urgent' messages={messages} />\n </div>\n );\n // Initial setting of appName and mapChildren\n useEffect(() => {\n setAppName(PCore.getEnvironmentInfo().getApplicationName() || '');\n\n const tempMap: any = (pConn.getChildren() as any)?.map((child: any, index) => {\n const theChildComp = child.getPConnect().getComponentName();\n const theKey = `.${index}`;\n return (\n <div id={theChildComp} key={theKey} style={{ border: 'solid 1px silver', margin: '1px' }}>\n {theChildComp} will be here\n </div>\n );\n });\n\n setMapChildren(tempMap);\n }, []);\n\n useEffect(() => {\n // @ts-expect-error\n const caseTypesAvailableToCreateDP = PCore.getEnvironmentInfo().environmentInfoObject?.pxApplication?.pyCaseTypesAvailableToCreateDP;\n if (caseTypesAvailableToCreateDP) {\n const portalID = pConn.getValue('.pyOwner');\n PCore.getDataPageUtils()\n .getPageDataAsync(caseTypesAvailableToCreateDP, pConn.getContextName(), {\n PortalName: portalID\n })\n .then((response: { pyCaseTypesAvailableToCreate?: any }) => {\n if (response?.pyCaseTypesAvailableToCreate) {\n pConn.replaceState('.pyCaseTypesAvailableToCreate', response.pyCaseTypesAvailableToCreate, {\n skipDirtyValidation: true\n });\n }\n });\n }\n }, []);\n\n const [iconURL, setIconURL] = useState<string | Blob>('');\n const [fullIconURL, setFullIconURL] = useState<string | Blob>('');\n useEffect(() => {\n // using the default icon then fetch it from the static folder (not auth involved)\n if (\n !portalLogo ||\n portalLogo.toLowerCase().includes('pzpega-logo-mark') ||\n portalLogo.toLowerCase().includes('py-logo') ||\n portalLogo.toLowerCase().includes('py-full-logo')\n ) {\n const portalLogoImage = Utils.getIconPath(Utils.getSDKStaticConentUrl()).concat('pzpega-logo-mark.svg');\n setIconURL(portalLogoImage);\n setFullIconURL(`${Utils.getSDKStaticConentUrl()}static/py-full-logo.svg`);\n }\n // not using default icon to fetch it using the way which uses authentication\n else {\n PCore.getAssetLoader()\n .getSvcImageUrl(portalLogo)\n .then(data => {\n setIconURL(data);\n setFullIconURL(data);\n })\n .catch(() => {\n console.error(`${localizedVal('Unable to load the image for the portal logo/icon with the insName', 'AppShell')}:${portalLogo}`);\n });\n }\n }, [portalLogo]);\n\n useEffect(() => {\n if (imageKey && portalTemplate === 'wss') {\n PCore.getAssetLoader()\n .getSvcImageUrl(imageKey)\n .then(imagePath => setImageBlobUrl(imagePath));\n }\n }, []);\n\n const getOperator = () => {\n return {\n avatar: portalTemplate !== 'wss' ? <Avatar /> : { name: userName, imageSrc: imageBlobUrl },\n name: userName,\n currentUserInitials\n };\n };\n\n function showPage(viewName, className) {\n actionsAPI.showPage(viewName, className);\n }\n\n function openURL(URL) {\n window.open(URL, '_blank');\n }\n\n const links = !pages\n ? []\n : pages.map(page => {\n const name = localizedVal(page.pyLabel, '', localeReference);\n return {\n text: name,\n name,\n icon: page.pxPageViewIcon.replace('pi pi-', ''),\n active: page.pyRuleName === activeTab,\n onClick: () => (!page.pyURLContent || page.pyURLContent === '' ? showPage(page.pyRuleName, page.pyClassName) : openURL(page.pyURLContent))\n };\n });\n\n if (pConn.hasChildren()) {\n // const theChildren = pConn.getChildren();\n // const mapChildCompNames = theChildren.map((child) => { return child.getPConnect().getComponentName()});\n // debugging/investigation help\n // console.log(`AppShell has children: ${theChildren.length}`);\n // console.log(`--> ${mapChildCompNames.map((name) => {return name;})}`);\n }\n\n if (portalTemplate === 'wss') {\n return (\n <div id='AppShell' className={classes.root}>\n <WssNavBar\n portalName={portalName}\n imageSrc={iconURL}\n fullImageSrc={fullIconURL}\n appName={localizedVal(appNameToDisplay || '', '', `${portalClass}!PORTAL!${envPortalName}`.toUpperCase())}\n appInfo={{\n imageSrc: iconURL,\n appName: localizedVal(appNameToDisplay || '', '', `${portalClass}!PORTAL!${envPortalName}`.toUpperCase()),\n onClick: links[0] && /* links[0].onClick ? */ links[0].onClick /* : undefined */\n }}\n navLinks={links.filter((link, index) => {\n return index !== 0;\n })}\n operator={getOperator()}\n navDisplayOptions={navDisplayOptions}\n />\n <div className={classes.wsscontent}>\n {banners}\n {children}\n </div>\n </div>\n );\n }\n\n return (\n <NavContext.Provider value={{ open, setOpen }}>\n <div id='AppShell' className={classes.root} style={{ display: 'flex' }}>\n <NavBar\n getPConnect={getPConnect}\n pConn={getPConnect()}\n appName={localizedVal(appNameToDisplay || '', '', `${portalClass}!PORTAL!${envPortalName}`.toUpperCase())}\n pages={pages}\n caseTypes={caseTypes}\n />\n\n <div className={classes.content}>\n {banners}\n {children}\n </div>\n </div>\n </NavContext.Provider>\n );\n}\n"]}
1
+ {"version":3,"file":"AppShell.js","sourceRoot":"","sources":["../../../../src/components/template/AppShell/AppShell.tsx"],"names":[],"mappings":"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","sourcesContent":["import { type PropsWithChildren, useEffect, useState } from 'react';\nimport makeStyles from '@mui/styles/makeStyles';\nimport Avatar from '@mui/material/Avatar';\n\nimport { Utils } from '../../helpers/utils';\nimport { NavContext } from '../../helpers/reactContextHelpers';\nimport { getComponentFromMap } from '../../../bridge/helpers/sdk_component_map';\nimport type { PConnProps } from '../../../types/PConnProps';\n\nimport './AppShell.css';\n\ninterface AppShellProps extends PConnProps {\n // If any, enter additional props that only exist on this component\n showAppName: boolean;\n pages: {\n pxPageViewIcon: string;\n pyClassName: string;\n pyLabel: string;\n pyRuleName: string;\n pyURLContent: string;\n }[];\n caseTypes?: object[];\n portalTemplate: string;\n portalName: string;\n portalLogo: string;\n navDisplayOptions: { alignment: string; position: string };\n httpMessages: string[];\n pageMessages: string[];\n}\n\nconst useStyles = makeStyles(theme => ({\n root: {},\n content: {\n flexGrow: 1,\n height: '100vh',\n overflow: 'auto',\n marginLeft: theme.spacing(2),\n marginRight: theme.spacing(2)\n },\n wsscontent: {\n flexGrow: 1,\n height: '100vh',\n marginLeft: theme.spacing(1),\n marginRight: theme.spacing(1)\n }\n}));\n\nexport default function AppShell(props: PropsWithChildren<AppShellProps>) {\n // Get emitted components from map (so we can get any override that may exist)\n const NavBar = getComponentFromMap('NavBar');\n const WssNavBar = getComponentFromMap('WssNavBar');\n const AlertBanner = getComponentFromMap('AlertBanner');\n\n const {\n pages = [],\n caseTypes = [],\n showAppName,\n children = [],\n getPConnect,\n httpMessages = [],\n pageMessages = [],\n portalTemplate,\n portalName,\n portalLogo,\n navDisplayOptions\n } = props;\n\n const [open, setOpen] = useState(true);\n // eslint-disable-next-line @typescript-eslint/no-unused-vars\n const [activeTab, setActiveTab] = useState(!pages ? null : pages[0]?.pyRuleName);\n const pConn = getPConnect();\n const envInfo = PCore.getEnvironmentInfo();\n const imageKey = envInfo.getOperatorImageInsKey();\n const userName = envInfo.getOperatorName() || '';\n const currentUserInitials = Utils.getInitials(userName);\n const appNameToDisplay = showAppName ? envInfo.getApplicationLabel() : '';\n const portalClass = pConn.getValue('.classID', ''); // 2nd arg empty string until typedef marked correctly\n const envPortalName = envInfo.getPortalName();\n const localizedVal = PCore.getLocaleUtils().getLocaleValue;\n\n const classes = useStyles();\n const actionsAPI = pConn.getActionsApi();\n const localeReference = pConn.getValue('.pyLocaleReference', ''); // 2nd arg empty string until typedef marked correctly\n const [imageBlobUrl, setImageBlobUrl] = useState<string | Blob | null>(null);\n // useState for appName and mapChildren - note these are ONLY updated once (on component mount!)\n // eslint-disable-next-line @typescript-eslint/no-unused-vars\n const [appName, setAppName] = useState('');\n // eslint-disable-next-line @typescript-eslint/no-unused-vars\n const [mapChildren, setMapChildren] = useState([]);\n\n const messages = [...httpMessages, ...pageMessages];\n\n const hasBanner = messages && messages.length ? messages.length > 0 : false;\n let banners: any = null;\n banners = hasBanner && (\n <div style={{ display: 'flex', flexDirection: 'column', padding: '1em 0' }}>\n <AlertBanner id='AppShell' variant='urgent' messages={messages} />\n </div>\n );\n // Initial setting of appName and mapChildren\n useEffect(() => {\n setAppName(PCore.getEnvironmentInfo().getApplicationName() || '');\n\n const tempMap: any = (pConn.getChildren() as any)?.map((child: any, index) => {\n const theChildComp = child.getPConnect().getComponentName();\n const theKey = `.${index}`;\n return (\n <div id={theChildComp} key={theKey} style={{ border: 'solid 1px silver', margin: '1px' }}>\n {theChildComp} will be here\n </div>\n );\n });\n\n setMapChildren(tempMap);\n\n /* TODO: We're setting the `pyPortalTemplate` for now, this would be handled by the CoreJS in the future releases */\n if (portalTemplate === 'wss') {\n PCore.getEnvironmentInfo().setEnvironmentInfo({ ...PCore.getEnvironmentInfo().environmentInfoObject, pyPortalTemplate: 'wss' } as any);\n }\n }, []);\n\n useEffect(() => {\n // @ts-expect-error\n const caseTypesAvailableToCreateDP = PCore.getEnvironmentInfo().environmentInfoObject?.pxApplication?.pyCaseTypesAvailableToCreateDP;\n if (caseTypesAvailableToCreateDP) {\n const portalID = pConn.getValue('.pyOwner');\n PCore.getDataPageUtils()\n .getPageDataAsync(caseTypesAvailableToCreateDP, pConn.getContextName(), {\n PortalName: portalID\n })\n .then((response: { pyCaseTypesAvailableToCreate?: any }) => {\n if (response?.pyCaseTypesAvailableToCreate) {\n pConn.replaceState('.pyCaseTypesAvailableToCreate', response.pyCaseTypesAvailableToCreate, {\n skipDirtyValidation: true\n });\n }\n });\n }\n }, []);\n\n const [iconURL, setIconURL] = useState<string | Blob>('');\n const [fullIconURL, setFullIconURL] = useState<string | Blob>('');\n useEffect(() => {\n // using the default icon then fetch it from the static folder (not auth involved)\n if (\n !portalLogo ||\n portalLogo.toLowerCase().includes('pzpega-logo-mark') ||\n portalLogo.toLowerCase().includes('py-logo') ||\n portalLogo.toLowerCase().includes('py-full-logo')\n ) {\n const portalLogoImage = Utils.getIconPath(Utils.getSDKStaticConentUrl()).concat('pzpega-logo-mark.svg');\n setIconURL(portalLogoImage);\n setFullIconURL(`${Utils.getSDKStaticConentUrl()}static/py-full-logo.svg`);\n }\n // not using default icon to fetch it using the way which uses authentication\n else {\n PCore.getAssetLoader()\n .getSvcImageUrl(portalLogo)\n .then(data => {\n setIconURL(data);\n setFullIconURL(data);\n })\n .catch(() => {\n console.error(`${localizedVal('Unable to load the image for the portal logo/icon with the insName', 'AppShell')}:${portalLogo}`);\n });\n }\n }, [portalLogo]);\n\n useEffect(() => {\n if (imageKey && portalTemplate === 'wss') {\n PCore.getAssetLoader()\n .getSvcImageUrl(imageKey)\n .then(imagePath => setImageBlobUrl(imagePath));\n }\n }, []);\n\n const getOperator = () => {\n return {\n avatar: portalTemplate !== 'wss' ? <Avatar /> : { name: userName, imageSrc: imageBlobUrl },\n name: userName,\n currentUserInitials\n };\n };\n\n function showPage(viewName, className) {\n actionsAPI.showPage(viewName, className);\n }\n\n function openURL(URL) {\n window.open(URL, '_blank');\n }\n\n const links = !pages\n ? []\n : pages.map(page => {\n const name = localizedVal(page.pyLabel, '', localeReference);\n return {\n text: name,\n name,\n icon: page.pxPageViewIcon.replace('pi pi-', ''),\n active: page.pyRuleName === activeTab,\n onClick: () => (!page.pyURLContent || page.pyURLContent === '' ? showPage(page.pyRuleName, page.pyClassName) : openURL(page.pyURLContent))\n };\n });\n\n if (pConn.hasChildren()) {\n // const theChildren = pConn.getChildren();\n // const mapChildCompNames = theChildren.map((child) => { return child.getPConnect().getComponentName()});\n // debugging/investigation help\n // console.log(`AppShell has children: ${theChildren.length}`);\n // console.log(`--> ${mapChildCompNames.map((name) => {return name;})}`);\n }\n\n if (portalTemplate === 'wss') {\n return (\n <div id='AppShell' className={classes.root}>\n <WssNavBar\n portalName={portalName}\n imageSrc={iconURL}\n fullImageSrc={fullIconURL}\n appName={localizedVal(appNameToDisplay || '', '', `${portalClass}!PORTAL!${envPortalName}`.toUpperCase())}\n appInfo={{\n imageSrc: iconURL,\n appName: localizedVal(appNameToDisplay || '', '', `${portalClass}!PORTAL!${envPortalName}`.toUpperCase()),\n onClick: links[0] && /* links[0].onClick ? */ links[0].onClick /* : undefined */\n }}\n navLinks={links.filter((link, index) => {\n return index !== 0;\n })}\n operator={getOperator()}\n navDisplayOptions={navDisplayOptions}\n />\n <div className={classes.wsscontent}>\n {banners}\n {children}\n </div>\n </div>\n );\n }\n\n return (\n <NavContext.Provider value={{ open, setOpen }}>\n <div id='AppShell' className={classes.root} style={{ display: 'flex' }}>\n <NavBar\n getPConnect={getPConnect}\n pConn={getPConnect()}\n appName={localizedVal(appNameToDisplay || '', '', `${portalClass}!PORTAL!${envPortalName}`.toUpperCase())}\n pages={pages}\n caseTypes={caseTypes}\n />\n\n <div className={classes.content}>\n {banners}\n {children}\n </div>\n </div>\n </NavContext.Provider>\n );\n}\n"]}
@@ -1 +1 @@
1
- {"version":3,"file":"CaseSummary.d.ts","sourceRoot":"","sources":["../../../../src/components/template/CaseSummary/CaseSummary.tsx"],"names":[],"mappings":"AAAA,OAAO,KAAK,EAAE,iBAAiB,EAAE,MAAM,OAAO,CAAC;AAE/C,OAAO,KAAK,EAAE,UAAU,EAAE,MAAM,2BAA2B,CAAC;AAE5D,UAAU,gBAAiB,SAAQ,UAAU;IAE3C,eAAe,EAAE,GAAG,EAAE,CAAC;IACvB,iBAAiB,EAAE,GAAG,EAAE,CAAC;CAC1B;AAED,MAAM,CAAC,OAAO,UAAU,WAAW,CAAC,KAAK,EAAE,iBAAiB,CAAC,gBAAgB,CAAC,2CAY7E"}
1
+ {"version":3,"file":"CaseSummary.d.ts","sourceRoot":"","sources":["../../../../src/components/template/CaseSummary/CaseSummary.tsx"],"names":[],"mappings":"AAAA,OAAO,KAAK,EAAE,iBAAiB,EAAgB,MAAM,OAAO,CAAC;AAE7D,OAAO,KAAK,EAAE,UAAU,EAAE,MAAM,2BAA2B,CAAC;AAE5D,UAAU,gBAAiB,SAAQ,UAAU;IAC3C,eAAe,EAAE,GAAG,EAAE,CAAC;IACvB,iBAAiB,EAAE,GAAG,EAAE,CAAC;CAE1B;AAED,MAAM,CAAC,OAAO,UAAU,WAAW,CAAC,KAAK,EAAE,iBAAiB,CAAC,gBAAgB,CAAC,2CAyE7E"}
@@ -3,7 +3,61 @@ import { getComponentFromMap } from '../../../bridge/helpers/sdk_component_map';
3
3
  export default function CaseSummary(props) {
4
4
  // Get emitted components from map (so we can get any override that may exist)
5
5
  const CaseSummaryFields = getComponentFromMap('CaseSummaryFields');
6
- const { arPrimaryFields, arSecondaryFields } = props;
7
- return (_jsxs("div", { id: 'CaseSummary', children: [_jsx(CaseSummaryFields, { theFields: arPrimaryFields }), _jsx(CaseSummaryFields, { theFields: arSecondaryFields })] }));
6
+ const { getPConnect, children } = props;
7
+ let { arPrimaryFields = [], arSecondaryFields = [] } = props;
8
+ const thePConn = getPConnect && getPConnect();
9
+ const theConfigProps = thePConn?.getConfigProps();
10
+ const status = theConfigProps?.status;
11
+ const showStatus = theConfigProps?.showStatus;
12
+ const localizedVal = PCore.getLocaleUtils().getLocaleValue;
13
+ const localeCategory = 'ModalContainer';
14
+ function prepareComponentInCaseSummary(pConnectMeta, getPConnect) {
15
+ const { config, children } = pConnectMeta;
16
+ const pConnect = getPConnect();
17
+ const caseSummaryComponentObject = {};
18
+ const { type } = pConnectMeta;
19
+ const createdComponent = pConnect.createComponent({
20
+ type,
21
+ children: children ? [...children] : [],
22
+ config: {
23
+ ...config
24
+ }
25
+ });
26
+ caseSummaryComponentObject.value = createdComponent;
27
+ return caseSummaryComponentObject;
28
+ }
29
+ function prepareCaseSummaryData(summaryFieldChildren) {
30
+ const convertChildrenToSummaryData = kid => {
31
+ return kid?.map((childItem, index) => {
32
+ const childMeta = childItem.getPConnect().meta;
33
+ const caseSummaryComponentObject = prepareComponentInCaseSummary(childMeta, childItem.getPConnect);
34
+ caseSummaryComponentObject.id = index + 1;
35
+ return caseSummaryComponentObject;
36
+ });
37
+ };
38
+ return summaryFieldChildren ? convertChildrenToSummaryData(summaryFieldChildren?.getChildren()) : undefined;
39
+ }
40
+ if (arPrimaryFields.length === 0 && arSecondaryFields.length === 0) {
41
+ for (const child of children) {
42
+ const childPConn = child.props.getPConnect();
43
+ const childPConnData = childPConn.resolveConfigProps(childPConn.getRawMetadata());
44
+ if (childPConnData.name.toLowerCase() === 'primary fields') {
45
+ arPrimaryFields = childPConnData.children;
46
+ arPrimaryFields.forEach(field => {
47
+ if (field.config?.value && typeof field.config?.value === 'string') {
48
+ field.config.value = localizedVal(field.config.value, localeCategory);
49
+ }
50
+ });
51
+ }
52
+ else if (childPConnData.name.toLowerCase() === 'secondary fields') {
53
+ const secondarySummaryFields = prepareCaseSummaryData(childPConn);
54
+ arSecondaryFields = childPConnData.children;
55
+ arSecondaryFields.forEach((field, index) => {
56
+ field.config.displayLabel = secondarySummaryFields[index]?.value?.props?.label;
57
+ });
58
+ }
59
+ }
60
+ }
61
+ return (_jsxs("div", { id: 'CaseSummary', children: [_jsx(CaseSummaryFields, { status: status, showStatus: showStatus, theFields: arPrimaryFields }), _jsx(CaseSummaryFields, { theFields: arSecondaryFields })] }));
8
62
  }
9
63
  //# sourceMappingURL=CaseSummary.js.map
@@ -1 +1 @@
1
- {"version":3,"file":"CaseSummary.js","sourceRoot":"","sources":["../../../../src/components/template/CaseSummary/CaseSummary.tsx"],"names":[],"mappings":";AACA,OAAO,EAAE,mBAAmB,EAAE,MAAM,2CAA2C,CAAC;AAShF,MAAM,CAAC,OAAO,UAAU,WAAW,CAAC,KAA0C;IAC5E,8EAA8E;IAC9E,MAAM,iBAAiB,GAAG,mBAAmB,CAAC,mBAAmB,CAAC,CAAC;IAEnE,MAAM,EAAE,eAAe,EAAE,iBAAiB,EAAE,GAAG,KAAK,CAAC;IAErD,OAAO,CACL,eAAK,EAAE,EAAC,aAAa,aACnB,KAAC,iBAAiB,IAAC,SAAS,EAAE,eAAe,GAAI,EACjD,KAAC,iBAAiB,IAAC,SAAS,EAAE,iBAAiB,GAAI,IAC/C,CACP,CAAC;AACJ,CAAC","sourcesContent":["import type { PropsWithChildren } from 'react';\nimport { getComponentFromMap } from '../../../bridge/helpers/sdk_component_map';\nimport type { PConnProps } from '../../../types/PConnProps';\n\ninterface CaseSummaryProps extends PConnProps {\n // If any, enter additional props that only exist on this component\n arPrimaryFields: any[];\n arSecondaryFields: any[];\n}\n\nexport default function CaseSummary(props: PropsWithChildren<CaseSummaryProps>) {\n // Get emitted components from map (so we can get any override that may exist)\n const CaseSummaryFields = getComponentFromMap('CaseSummaryFields');\n\n const { arPrimaryFields, arSecondaryFields } = props;\n\n return (\n <div id='CaseSummary'>\n <CaseSummaryFields theFields={arPrimaryFields} />\n <CaseSummaryFields theFields={arSecondaryFields} />\n </div>\n );\n}\n"]}
1
+ {"version":3,"file":"CaseSummary.js","sourceRoot":"","sources":["../../../../src/components/template/CaseSummary/CaseSummary.tsx"],"names":[],"mappings":"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","sourcesContent":["import type { PropsWithChildren, ReactElement } from 'react';\nimport { getComponentFromMap } from '../../../bridge/helpers/sdk_component_map';\nimport type { PConnProps } from '../../../types/PConnProps';\n\ninterface CaseSummaryProps extends PConnProps {\n arPrimaryFields: any[];\n arSecondaryFields: any[];\n // If any, enter additional props that only exist on this component\n}\n\nexport default function CaseSummary(props: PropsWithChildren<CaseSummaryProps>) {\n // Get emitted components from map (so we can get any override that may exist)\n const CaseSummaryFields = getComponentFromMap('CaseSummaryFields');\n\n const { getPConnect, children } = props;\n let { arPrimaryFields = [], arSecondaryFields = [] } = props;\n\n const thePConn = getPConnect && getPConnect();\n const theConfigProps: any = thePConn?.getConfigProps();\n\n const status = theConfigProps?.status;\n const showStatus = theConfigProps?.showStatus;\n const localizedVal = PCore.getLocaleUtils().getLocaleValue;\n const localeCategory = 'ModalContainer';\n\n function prepareComponentInCaseSummary(pConnectMeta, getPConnect) {\n const { config, children } = pConnectMeta;\n const pConnect = getPConnect();\n\n const caseSummaryComponentObject: any = {};\n\n const { type } = pConnectMeta;\n const createdComponent = pConnect.createComponent({\n type,\n children: children ? [...children] : [],\n config: {\n ...config\n }\n });\n\n caseSummaryComponentObject.value = createdComponent;\n return caseSummaryComponentObject;\n }\n\n function prepareCaseSummaryData(summaryFieldChildren) {\n const convertChildrenToSummaryData = kid => {\n return kid?.map((childItem, index) => {\n const childMeta = childItem.getPConnect().meta;\n const caseSummaryComponentObject = prepareComponentInCaseSummary(childMeta, childItem.getPConnect);\n caseSummaryComponentObject.id = index + 1;\n return caseSummaryComponentObject;\n });\n };\n return summaryFieldChildren ? convertChildrenToSummaryData(summaryFieldChildren?.getChildren()) : undefined;\n }\n\n if (arPrimaryFields.length === 0 && arSecondaryFields.length === 0) {\n for (const child of children as ReactElement[]) {\n const childPConn = (child as ReactElement).props.getPConnect();\n const childPConnData = childPConn.resolveConfigProps(childPConn.getRawMetadata());\n if (childPConnData.name.toLowerCase() === 'primary fields') {\n arPrimaryFields = childPConnData.children;\n arPrimaryFields.forEach(field => {\n if (field.config?.value && typeof field.config?.value === 'string') {\n field.config.value = localizedVal(field.config.value, localeCategory);\n }\n });\n } else if (childPConnData.name.toLowerCase() === 'secondary fields') {\n const secondarySummaryFields = prepareCaseSummaryData(childPConn);\n arSecondaryFields = childPConnData.children;\n arSecondaryFields.forEach((field, index) => {\n field.config.displayLabel = secondarySummaryFields[index]?.value?.props?.label;\n });\n }\n }\n }\n\n return (\n <div id='CaseSummary'>\n <CaseSummaryFields status={status} showStatus={showStatus} theFields={arPrimaryFields} />\n <CaseSummaryFields theFields={arSecondaryFields} />\n </div>\n );\n}\n"]}
@@ -1 +1 @@
1
- {"version":3,"file":"CaseView.d.ts","sourceRoot":"","sources":["../../../../src/components/template/CaseView/CaseView.tsx"],"names":[],"mappings":"AAAA,OAAO,EAAE,KAAK,iBAAiB,EAAsD,MAAM,OAAO,CAAC;AAUnG,OAAO,KAAK,EAAE,UAAU,EAAE,MAAM,2BAA2B,CAAC;AAG5D,UAAU,aAAc,SAAQ,UAAU;IAExC,IAAI,EAAE,MAAM,CAAC;IACb,SAAS,EAAE,MAAM,CAAC;IAClB,MAAM,EAAE,MAAM,CAAC;IACf,gBAAgB,EAAE,OAAO,CAAC;IAC1B,QAAQ,EAAE,GAAG,CAAC;IACd,kBAAkB,EAAE,GAAG,CAAC;CACzB;AA0BD,MAAM,CAAC,OAAO,UAAU,QAAQ,CAAC,KAAK,EAAE,iBAAiB,CAAC,aAAa,CAAC,2CA2NvE"}
1
+ {"version":3,"file":"CaseView.d.ts","sourceRoot":"","sources":["../../../../src/components/template/CaseView/CaseView.tsx"],"names":[],"mappings":"AAAA,OAAO,EAAE,KAAK,iBAAiB,EAAsD,MAAM,OAAO,CAAC;AAUnG,OAAO,KAAK,EAAE,UAAU,EAAE,MAAM,2BAA2B,CAAC;AAE5D,UAAU,aAAc,SAAQ,UAAU;IAExC,IAAI,EAAE,MAAM,CAAC;IACb,SAAS,EAAE,MAAM,CAAC;IAClB,MAAM,EAAE,MAAM,CAAC;IACf,gBAAgB,EAAE,OAAO,CAAC;IAC1B,QAAQ,EAAE,GAAG,CAAC;IACd,kBAAkB,EAAE,GAAG,CAAC;CACzB;AA0BD,MAAM,CAAC,OAAO,UAAU,QAAQ,CAAC,KAAK,EAAE,iBAAiB,CAAC,aAAa,CAAC,2CAqNvE"}
@@ -8,7 +8,6 @@ import Grid2 from '@mui/material/Grid2';
8
8
  import { Utils } from '../../helpers/utils';
9
9
  import StoreContext from '../../../bridge/Context/StoreContext';
10
10
  import { getComponentFromMap } from '../../../bridge/helpers/sdk_component_map';
11
- import { prepareCaseSummaryData } from '../utils';
12
11
  const useStyles = makeStyles(theme => ({
13
12
  root: {
14
13
  paddingRight: theme.spacing(1),
@@ -37,7 +36,6 @@ export default function CaseView(props) {
37
36
  const CaseViewActionsMenu = getComponentFromMap('CaseViewActionsMenu');
38
37
  const VerticalTabs = getComponentFromMap('VerticalTabs');
39
38
  const DeferLoad = getComponentFromMap('DeferLoad');
40
- const CaseSummary = getComponentFromMap('CaseSummary');
41
39
  const { getPConnect, icon = '', header, subheader, children = [], caseInfo: { availableActions = [], availableProcesses = [], hasNewAttachments, caseTypeID = '', caseTypeName = '', caseTypeIcon } } = props;
42
40
  const { lastUpdateCaseTime = getPConnect().getValue('caseInfo.lastUpdateTime') } = props;
43
41
  const currentCaseID = props.caseInfo.ID;
@@ -48,7 +46,7 @@ export default function CaseView(props) {
48
46
  const editAction = availableActions.find(action => action.ID === 'pyUpdateCaseDetails');
49
47
  const localizedVal = PCore.getLocaleUtils().getLocaleValue;
50
48
  const localeCategory = 'CaseView';
51
- const localeKey = `${caseTypeID}!CASE!${caseTypeName}`.toUpperCase();
49
+ const localeKey = thePConn?.getCaseLocaleReference();
52
50
  /**
53
51
  *
54
52
  * @param inName the metadata <em>name</em> that will cause a region to be returned
@@ -63,10 +61,7 @@ export default function CaseView(props) {
63
61
  }
64
62
  return null;
65
63
  }
66
- const theSummaryRegion = children && children[0];
67
- const data = prepareCaseSummaryData(theSummaryRegion);
68
- const primarySummaryFields = data.primarySummaryFields;
69
- const secondarySummaryFields = data.secondarySummaryFields;
64
+ const theSummaryRegion = getChildRegionByName('summary');
70
65
  const theStagesRegion = getChildRegionByName('stages');
71
66
  const theTodoRegion = getChildRegionByName('todo');
72
67
  const theUtilitiesRegion = getChildRegionByName('utilities');
@@ -145,7 +140,7 @@ export default function CaseView(props) {
145
140
  function getContainerContents() {
146
141
  if (!displayOnlyFA) {
147
142
  // show full portal
148
- return (_jsxs(Grid2, { container: true, children: [_jsxs(Grid2, { size: { xs: 3 }, children: [_jsx("div", { hidden: true, id: 'current-caseID', children: currentCaseID }), _jsxs(Card, { className: classes.root, children: [_jsx(CardHeader, { className: classes.caseViewHeader, title: _jsx(Typography, { variant: 'h6', component: 'div', id: 'case-name', children: PCore.getLocaleUtils().getLocaleValue(header, '', localeKey) }), subheader: _jsx(Typography, { variant: 'body1', component: 'div', id: 'caseId', children: subheader }), avatar: _jsx(Avatar, { className: classes.caseViewIconBox, variant: 'square', children: _jsx("img", { src: caseSvgIconUrl }) }) }), getActionButtonsHtml(), _jsx(Divider, {}), _jsx(CaseSummary, { arPrimaryFields: primarySummaryFields, arSecondaryFields: secondarySummaryFields }), _jsx(Divider, {}), vertTabInfo.length > 1 && _jsx(VerticalTabs, { tabconfig: vertTabInfo })] })] }), _jsxs(Grid2, { size: { xs: 6 }, children: [theStagesRegion, theTodoRegion, deferLoadInfo.length > 0 && (_jsx(DeferLoad, { getPConnect: getPConnect, name: deferLoadInfo[activeVertTab].config.name, isTab: true, lastUpdateCaseTime: lastUpdateCaseTime }))] }), _jsx(Grid2, { size: { xs: 3 }, children: theUtilitiesRegion })] }));
143
+ return (_jsxs(Grid2, { container: true, children: [_jsxs(Grid2, { size: { xs: 3 }, children: [_jsx("div", { hidden: true, id: 'current-caseID', children: currentCaseID }), _jsxs(Card, { className: classes.root, children: [_jsx(CardHeader, { className: classes.caseViewHeader, title: _jsx(Typography, { variant: 'h6', component: 'div', id: 'case-name', children: PCore.getLocaleUtils().getLocaleValue(header, '', localeKey) }), subheader: _jsx(Typography, { variant: 'body1', component: 'div', id: 'caseId', children: subheader }), avatar: _jsx(Avatar, { className: classes.caseViewIconBox, variant: 'square', children: _jsx("img", { src: caseSvgIconUrl }) }) }), getActionButtonsHtml(), _jsx(Divider, {}), theSummaryRegion, _jsx(Divider, {}), vertTabInfo.length > 1 && _jsx(VerticalTabs, { tabconfig: vertTabInfo })] })] }), _jsxs(Grid2, { size: { xs: 6 }, children: [theStagesRegion, theTodoRegion, deferLoadInfo.length > 0 && (_jsx(DeferLoad, { getPConnect: getPConnect, name: deferLoadInfo[activeVertTab].config.name, isTab: true, lastUpdateCaseTime: lastUpdateCaseTime }))] }), _jsx(Grid2, { size: { xs: 3 }, children: theUtilitiesRegion })] }));
149
144
  }
150
145
  // displayOnlyFA - only show the "todo" region
151
146
  return (_jsx(Grid2, { container: true, children: _jsx(Grid2, { size: { xs: 12 }, children: theTodoRegion }) }));
@@ -1 +1 @@
1
- {"version":3,"file":"CaseView.js","sourceRoot":"","sources":["../../../../src/components/template/CaseView/CaseView.tsx"],"names":[],"mappings":"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","sourcesContent":["import { type PropsWithChildren, type ReactElement, useContext, useEffect, useState } from 'react';\nimport { Avatar, Card, CardHeader, Divider, Typography } from '@mui/material';\nimport makeStyles from '@mui/styles/makeStyles';\nimport Box from '@mui/material/Box';\nimport Button from '@mui/material/Button';\nimport Grid2 from '@mui/material/Grid2';\n\nimport { Utils } from '../../helpers/utils';\nimport StoreContext from '../../../bridge/Context/StoreContext';\nimport { getComponentFromMap } from '../../../bridge/helpers/sdk_component_map';\nimport type { PConnProps } from '../../../types/PConnProps';\nimport { prepareCaseSummaryData } from '../utils';\n\ninterface CaseViewProps extends PConnProps {\n // If any, enter additional props that only exist on this component\n icon: string;\n subheader: string;\n header: string;\n showIconInHeader: boolean;\n caseInfo: any;\n lastUpdateCaseTime: any;\n}\n\nconst useStyles = makeStyles(theme => ({\n root: {\n paddingRight: theme.spacing(1),\n paddingLeft: theme.spacing(1),\n paddingTop: theme.spacing(1),\n paddingBottom: theme.spacing(1),\n marginRight: theme.spacing(1),\n marginLeft: theme.spacing(1),\n marginTop: theme.spacing(1),\n marginBottom: theme.spacing(1)\n },\n caseViewHeader: {\n backgroundColor: theme.palette.info.light,\n color: theme.palette.getContrastText(theme.palette.info.light),\n borderRadius: 'inherit'\n },\n caseViewIconBox: {\n backgroundColor: theme.palette.info.dark,\n width: theme.spacing(8),\n height: theme.spacing(8),\n padding: theme.spacing(1)\n }\n}));\n\nexport default function CaseView(props: PropsWithChildren<CaseViewProps>) {\n // Get emitted components from map (so we can get any override that may exist)\n const CaseViewActionsMenu = getComponentFromMap('CaseViewActionsMenu');\n const VerticalTabs = getComponentFromMap('VerticalTabs');\n const DeferLoad = getComponentFromMap('DeferLoad');\n const CaseSummary = getComponentFromMap('CaseSummary');\n\n const {\n getPConnect,\n icon = '',\n header,\n subheader,\n children = [],\n caseInfo: { availableActions = [], availableProcesses = [], hasNewAttachments, caseTypeID = '', caseTypeName = '', caseTypeIcon }\n } = props;\n const { lastUpdateCaseTime = getPConnect().getValue('caseInfo.lastUpdateTime') } = props;\n const currentCaseID = props.caseInfo.ID;\n let isComponentMounted = true;\n const { displayOnlyFA } = useContext<any>(StoreContext);\n\n const thePConn = getPConnect();\n\n const classes = useStyles();\n\n const editAction = availableActions.find(action => action.ID === 'pyUpdateCaseDetails');\n\n const localizedVal = PCore.getLocaleUtils().getLocaleValue;\n const localeCategory = 'CaseView';\n const localeKey = `${caseTypeID}!CASE!${caseTypeName}`.toUpperCase();\n /**\n *\n * @param inName the metadata <em>name</em> that will cause a region to be returned\n */\n function getChildRegionByName(inName: string): any {\n for (const child of children as ReactElement[]) {\n const theMetadataType: string = (child as ReactElement).props.getPConnect().getRawMetadata().type?.toLowerCase();\n const theMetadataName: string = (child as ReactElement).props.getPConnect().getRawMetadata().name?.toLowerCase();\n if (theMetadataType === 'region' && theMetadataName === inName) {\n return child;\n }\n }\n\n return null;\n }\n\n const theSummaryRegion = children && children[0];\n\n const data = prepareCaseSummaryData(theSummaryRegion);\n const primarySummaryFields = data.primarySummaryFields;\n const secondarySummaryFields = data.secondarySummaryFields;\n\n const theStagesRegion = getChildRegionByName('stages');\n const theTodoRegion = getChildRegionByName('todo');\n const theUtilitiesRegion = getChildRegionByName('utilities');\n const theTabsRegion = getChildRegionByName('tabs');\n\n let iconForCaseType = caseTypeIcon ? caseTypeIcon.replace('pi pi-', '') : icon;\n\n if (!iconForCaseType || iconForCaseType.includes('.')) {\n iconForCaseType = 'polaris-solid';\n }\n const caseSvgIconUrl = Utils.getImageSrc(iconForCaseType, Utils.getSDKStaticConentUrl());\n\n const [activeVertTab, setActiveVertTab] = useState(0);\n\n // const tmpLoadData1 = { config: { label: \"Details\", name: \"pyDetailsTabContent\" }, type: \"DeferLoad\" };\n // const tmpLoadData2 = { config: { label: \"Case History\", name: \"CaseHistory\" }, type: \"DeferLoad\" };\n\n // Extract the tabs we need to display from theTabsRegion (one tab per entry in theTabsRegionChildren)\n const theTabsRegionChildren = theTabsRegion?.props.getPConnect().getChildren();\n\n // vertTabInfo is sent to VerticalTabs component\n const vertTabInfo: object[] = [];\n\n // deferLoadInfo is sent to DeferLoad component (currently selected entry)\n const deferLoadInfo: any[] = [];\n\n if (theTabsRegionChildren) {\n // populate vertTabInfo and deferLoadInfo\n theTabsRegionChildren.forEach((tabComp, index) => {\n const theTabCompConfig = tabComp.getPConnect().getConfigProps();\n // eslint-disable-next-line prefer-const\n let { label, inheritedProps } = theTabCompConfig;\n // For some tabs, \"label\" property is not avaialable in theTabCompConfig, so will get them from inheritedProps\n if (!label) {\n inheritedProps.forEach(inheritedProp => {\n if (inheritedProp.prop === 'label') {\n label = inheritedProp.value;\n }\n });\n }\n // We'll display the tabs when either visibility property doesn't exist or is true(if exists)\n if (theTabCompConfig.visibility === undefined || theTabCompConfig.visibility === true) {\n vertTabInfo.push({ name: label, id: index });\n deferLoadInfo.push({ type: 'DeferLoad', config: theTabCompConfig });\n }\n });\n }\n\n function handleVerticalTabClick(eventDetail: any) {\n const theItem = parseInt(eventDetail.additionalData.itemClicked, 10);\n\n // only call useEffectSetter if the component is mounted\n if (isComponentMounted) {\n setActiveVertTab(theItem);\n }\n }\n\n // Add and Remove event listener for VerticalTabClick only at startup and teardown\n useEffect(() => {\n document.addEventListener('VerticalTabClick', (event: any) => {\n handleVerticalTabClick(event.detail);\n });\n\n return (): void => {\n // inform that the component is unmounted so other code can\n // know not to try to call useState setters (to avoid console warnings)\n isComponentMounted = false;\n\n document.removeEventListener('VerticalTabClick', (event: any) => {\n handleVerticalTabClick(event.detail);\n });\n };\n }, []);\n\n useEffect(() => {\n if (hasNewAttachments) {\n PCore.getPubSubUtils().publish((PCore.getEvents().getCaseEvent() as any).CASE_ATTACHMENTS_UPDATED_FROM_CASEVIEW, true);\n }\n }, [hasNewAttachments]);\n\n function _editClick() {\n const actionsAPI = thePConn.getActionsApi();\n const openLocalAction = actionsAPI.openLocalAction.bind(actionsAPI);\n\n openLocalAction(editAction.ID, { ...editAction, containerName: 'modal', type: 'express' });\n }\n\n function getActionButtonsHtml(): any {\n return (\n <Box>\n {editAction && (\n <Button\n id='edit'\n onClick={() => {\n _editClick();\n }}\n >\n {localizedVal('Edit', localeCategory)}\n </Button>\n )}\n <CaseViewActionsMenu\n getPConnect={getPConnect}\n availableActions={availableActions}\n availableProcesses={availableProcesses}\n caseTypeName={caseTypeName}\n caseTypeID={caseTypeID}\n />\n </Box>\n );\n }\n\n function getContainerContents() {\n if (!displayOnlyFA) {\n // show full portal\n return (\n <Grid2 container>\n <Grid2 size={{ xs: 3 }}>\n <div hidden={true} id='current-caseID'>\n {currentCaseID}\n </div>\n <Card className={classes.root}>\n <CardHeader\n className={classes.caseViewHeader}\n title={\n <Typography variant='h6' component='div' id='case-name'>\n {PCore.getLocaleUtils().getLocaleValue(header, '', localeKey)}\n </Typography>\n }\n subheader={\n <Typography variant='body1' component='div' id='caseId'>\n {subheader}\n </Typography>\n }\n avatar={\n <Avatar className={classes.caseViewIconBox} variant='square'>\n <img src={caseSvgIconUrl} />\n </Avatar>\n }\n />\n {getActionButtonsHtml()}\n <Divider />\n <CaseSummary arPrimaryFields={primarySummaryFields} arSecondaryFields={secondarySummaryFields}></CaseSummary>\n <Divider />\n {vertTabInfo.length > 1 && <VerticalTabs tabconfig={vertTabInfo} />}\n </Card>\n </Grid2>\n\n <Grid2 size={{ xs: 6 }}>\n {theStagesRegion}\n {theTodoRegion}\n {deferLoadInfo.length > 0 && (\n <DeferLoad getPConnect={getPConnect} name={deferLoadInfo[activeVertTab].config.name} isTab lastUpdateCaseTime={lastUpdateCaseTime} />\n )}\n </Grid2>\n\n <Grid2 size={{ xs: 3 }}>{theUtilitiesRegion}</Grid2>\n </Grid2>\n );\n }\n // displayOnlyFA - only show the \"todo\" region\n return (\n <Grid2 container>\n <Grid2 size={{ xs: 12 }}>{theTodoRegion}</Grid2>\n </Grid2>\n );\n }\n\n return getContainerContents();\n}\n"]}
1
+ {"version":3,"file":"CaseView.js","sourceRoot":"","sources":["../../../../src/components/template/CaseView/CaseView.tsx"],"names":[],"mappings":";AAAA,OAAO,EAA6C,UAAU,EAAE,SAAS,EAAE,QAAQ,EAAE,MAAM,OAAO,CAAC;AACnG,OAAO,EAAE,MAAM,EAAE,IAAI,EAAE,UAAU,EAAE,OAAO,EAAE,UAAU,EAAE,MAAM,eAAe,CAAC;AAC9E,OAAO,UAAU,MAAM,wBAAwB,CAAC;AAChD,OAAO,GAAG,MAAM,mBAAmB,CAAC;AACpC,OAAO,MAAM,MAAM,sBAAsB,CAAC;AAC1C,OAAO,KAAK,MAAM,qBAAqB,CAAC;AAExC,OAAO,EAAE,KAAK,EAAE,MAAM,qBAAqB,CAAC;AAC5C,OAAO,YAAY,MAAM,sCAAsC,CAAC;AAChE,OAAO,EAAE,mBAAmB,EAAE,MAAM,2CAA2C,CAAC;AAahF,MAAM,SAAS,GAAG,UAAU,CAAC,KAAK,CAAC,EAAE,CAAC,CAAC;IACrC,IAAI,EAAE;QACJ,YAAY,EAAE,KAAK,CAAC,OAAO,CAAC,CAAC,CAAC;QAC9B,WAAW,EAAE,KAAK,CAAC,OAAO,CAAC,CAAC,CAAC;QAC7B,UAAU,EAAE,KAAK,CAAC,OAAO,CAAC,CAAC,CAAC;QAC5B,aAAa,EAAE,KAAK,CAAC,OAAO,CAAC,CAAC,CAAC;QAC/B,WAAW,EAAE,KAAK,CAAC,OAAO,CAAC,CAAC,CAAC;QAC7B,UAAU,EAAE,KAAK,CAAC,OAAO,CAAC,CAAC,CAAC;QAC5B,SAAS,EAAE,KAAK,CAAC,OAAO,CAAC,CAAC,CAAC;QAC3B,YAAY,EAAE,KAAK,CAAC,OAAO,CAAC,CAAC,CAAC;KAC/B;IACD,cAAc,EAAE;QACd,eAAe,EAAE,KAAK,CAAC,OAAO,CAAC,IAAI,CAAC,KAAK;QACzC,KAAK,EAAE,KAAK,CAAC,OAAO,CAAC,eAAe,CAAC,KAAK,CAAC,OAAO,CAAC,IAAI,CAAC,KAAK,CAAC;QAC9D,YAAY,EAAE,SAAS;KACxB;IACD,eAAe,EAAE;QACf,eAAe,EAAE,KAAK,CAAC,OAAO,CAAC,IAAI,CAAC,IAAI;QACxC,KAAK,EAAE,KAAK,CAAC,OAAO,CAAC,CAAC,CAAC;QACvB,MAAM,EAAE,KAAK,CAAC,OAAO,CAAC,CAAC,CAAC;QACxB,OAAO,EAAE,KAAK,CAAC,OAAO,CAAC,CAAC,CAAC;KAC1B;CACF,CAAC,CAAC,CAAC;AAEJ,MAAM,CAAC,OAAO,UAAU,QAAQ,CAAC,KAAuC;IACtE,8EAA8E;IAC9E,MAAM,mBAAmB,GAAG,mBAAmB,CAAC,qBAAqB,CAAC,CAAC;IACvE,MAAM,YAAY,GAAG,mBAAmB,CAAC,cAAc,CAAC,CAAC;IACzD,MAAM,SAAS,GAAG,mBAAmB,CAAC,WAAW,CAAC,CAAC;IAEnD,MAAM,EACJ,WAAW,EACX,IAAI,GAAG,EAAE,EACT,MAAM,EACN,SAAS,EACT,QAAQ,GAAG,EAAE,EACb,QAAQ,EAAE,EAAE,gBAAgB,GAAG,EAAE,EAAE,kBAAkB,GAAG,EAAE,EAAE,iBAAiB,EAAE,UAAU,GAAG,EAAE,EAAE,YAAY,GAAG,EAAE,EAAE,YAAY,EAAE,EAClI,GAAG,KAAK,CAAC;IACV,MAAM,EAAE,kBAAkB,GAAG,WAAW,EAAE,CAAC,QAAQ,CAAC,yBAAyB,CAAC,EAAE,GAAG,KAAK,CAAC;IACzF,MAAM,aAAa,GAAG,KAAK,CAAC,QAAQ,CAAC,EAAE,CAAC;IACxC,IAAI,kBAAkB,GAAG,IAAI,CAAC;IAC9B,MAAM,EAAE,aAAa,EAAE,GAAG,UAAU,CAAM,YAAY,CAAC,CAAC;IAExD,MAAM,QAAQ,GAAG,WAAW,EAAE,CAAC;IAE/B,MAAM,OAAO,GAAG,SAAS,EAAE,CAAC;IAE5B,MAAM,UAAU,GAAG,gBAAgB,CAAC,IAAI,CAAC,MAAM,CAAC,EAAE,CAAC,MAAM,CAAC,EAAE,KAAK,qBAAqB,CAAC,CAAC;IAExF,MAAM,YAAY,GAAG,KAAK,CAAC,cAAc,EAAE,CAAC,cAAc,CAAC;IAC3D,MAAM,cAAc,GAAG,UAAU,CAAC;IAClC,MAAM,SAAS,GAAG,QAAQ,EAAE,sBAAsB,EAAE,CAAC;IACrD;;;OAGG;IACH,SAAS,oBAAoB,CAAC,MAAc;QAC1C,KAAK,MAAM,KAAK,IAAI,QAA0B,EAAE,CAAC;YAC/C,MAAM,eAAe,GAAY,KAAsB,CAAC,KAAK,CAAC,WAAW,EAAE,CAAC,cAAc,EAAE,CAAC,IAAI,EAAE,WAAW,EAAE,CAAC;YACjH,MAAM,eAAe,GAAY,KAAsB,CAAC,KAAK,CAAC,WAAW,EAAE,CAAC,cAAc,EAAE,CAAC,IAAI,EAAE,WAAW,EAAE,CAAC;YACjH,IAAI,eAAe,KAAK,QAAQ,IAAI,eAAe,KAAK,MAAM,EAAE,CAAC;gBAC/D,OAAO,KAAK,CAAC;YACf,CAAC;QACH,CAAC;QAED,OAAO,IAAI,CAAC;IACd,CAAC;IAED,MAAM,gBAAgB,GAAG,oBAAoB,CAAC,SAAS,CAAC,CAAC;IACzD,MAAM,eAAe,GAAG,oBAAoB,CAAC,QAAQ,CAAC,CAAC;IACvD,MAAM,aAAa,GAAG,oBAAoB,CAAC,MAAM,CAAC,CAAC;IACnD,MAAM,kBAAkB,GAAG,oBAAoB,CAAC,WAAW,CAAC,CAAC;IAC7D,MAAM,aAAa,GAAG,oBAAoB,CAAC,MAAM,CAAC,CAAC;IAEnD,IAAI,eAAe,GAAG,YAAY,CAAC,CAAC,CAAC,YAAY,CAAC,OAAO,CAAC,QAAQ,EAAE,EAAE,CAAC,CAAC,CAAC,CAAC,IAAI,CAAC;IAE/E,IAAI,CAAC,eAAe,IAAI,eAAe,CAAC,QAAQ,CAAC,GAAG,CAAC,EAAE,CAAC;QACtD,eAAe,GAAG,eAAe,CAAC;IACpC,CAAC;IACD,MAAM,cAAc,GAAG,KAAK,CAAC,WAAW,CAAC,eAAe,EAAE,KAAK,CAAC,qBAAqB,EAAE,CAAC,CAAC;IAEzF,MAAM,CAAC,aAAa,EAAE,gBAAgB,CAAC,GAAG,QAAQ,CAAC,CAAC,CAAC,CAAC;IAEtD,yGAAyG;IACzG,sGAAsG;IAEtG,sGAAsG;IACtG,MAAM,qBAAqB,GAAG,aAAa,EAAE,KAAK,CAAC,WAAW,EAAE,CAAC,WAAW,EAAE,CAAC;IAE/E,gDAAgD;IAChD,MAAM,WAAW,GAAa,EAAE,CAAC;IAEjC,0EAA0E;IAC1E,MAAM,aAAa,GAAU,EAAE,CAAC;IAEhC,IAAI,qBAAqB,EAAE,CAAC;QAC1B,yCAAyC;QACzC,qBAAqB,CAAC,OAAO,CAAC,CAAC,OAAO,EAAE,KAAK,EAAE,EAAE;YAC/C,MAAM,gBAAgB,GAAG,OAAO,CAAC,WAAW,EAAE,CAAC,cAAc,EAAE,CAAC;YAChE,wCAAwC;YACxC,IAAI,EAAE,KAAK,EAAE,cAAc,EAAE,GAAG,gBAAgB,CAAC;YACjD,8GAA8G;YAC9G,IAAI,CAAC,KAAK,EAAE,CAAC;gBACX,cAAc,CAAC,OAAO,CAAC,aAAa,CAAC,EAAE;oBACrC,IAAI,aAAa,CAAC,IAAI,KAAK,OAAO,EAAE,CAAC;wBACnC,KAAK,GAAG,aAAa,CAAC,KAAK,CAAC;oBAC9B,CAAC;gBACH,CAAC,CAAC,CAAC;YACL,CAAC;YACD,6FAA6F;YAC7F,IAAI,gBAAgB,CAAC,UAAU,KAAK,SAAS,IAAI,gBAAgB,CAAC,UAAU,KAAK,IAAI,EAAE,CAAC;gBACtF,WAAW,CAAC,IAAI,CAAC,EAAE,IAAI,EAAE,KAAK,EAAE,EAAE,EAAE,KAAK,EAAE,CAAC,CAAC;gBAC7C,aAAa,CAAC,IAAI,CAAC,EAAE,IAAI,EAAE,WAAW,EAAE,MAAM,EAAE,gBAAgB,EAAE,CAAC,CAAC;YACtE,CAAC;QACH,CAAC,CAAC,CAAC;IACL,CAAC;IAED,SAAS,sBAAsB,CAAC,WAAgB;QAC9C,MAAM,OAAO,GAAG,QAAQ,CAAC,WAAW,CAAC,cAAc,CAAC,WAAW,EAAE,EAAE,CAAC,CAAC;QAErE,wDAAwD;QACxD,IAAI,kBAAkB,EAAE,CAAC;YACvB,gBAAgB,CAAC,OAAO,CAAC,CAAC;QAC5B,CAAC;IACH,CAAC;IAED,kFAAkF;IAClF,SAAS,CAAC,GAAG,EAAE;QACb,QAAQ,CAAC,gBAAgB,CAAC,kBAAkB,EAAE,CAAC,KAAU,EAAE,EAAE;YAC3D,sBAAsB,CAAC,KAAK,CAAC,MAAM,CAAC,CAAC;QACvC,CAAC,CAAC,CAAC;QAEH,OAAO,GAAS,EAAE;YAChB,2DAA2D;YAC3D,wEAAwE;YACxE,kBAAkB,GAAG,KAAK,CAAC;YAE3B,QAAQ,CAAC,mBAAmB,CAAC,kBAAkB,EAAE,CAAC,KAAU,EAAE,EAAE;gBAC9D,sBAAsB,CAAC,KAAK,CAAC,MAAM,CAAC,CAAC;YACvC,CAAC,CAAC,CAAC;QACL,CAAC,CAAC;IACJ,CAAC,EAAE,EAAE,CAAC,CAAC;IAEP,SAAS,CAAC,GAAG,EAAE;QACb,IAAI,iBAAiB,EAAE,CAAC;YACtB,KAAK,CAAC,cAAc,EAAE,CAAC,OAAO,CAAE,KAAK,CAAC,SAAS,EAAE,CAAC,YAAY,EAAU,CAAC,sCAAsC,EAAE,IAAI,CAAC,CAAC;QACzH,CAAC;IACH,CAAC,EAAE,CAAC,iBAAiB,CAAC,CAAC,CAAC;IAExB,SAAS,UAAU;QACjB,MAAM,UAAU,GAAG,QAAQ,CAAC,aAAa,EAAE,CAAC;QAC5C,MAAM,eAAe,GAAG,UAAU,CAAC,eAAe,CAAC,IAAI,CAAC,UAAU,CAAC,CAAC;QAEpE,eAAe,CAAC,UAAU,CAAC,EAAE,EAAE,EAAE,GAAG,UAAU,EAAE,aAAa,EAAE,OAAO,EAAE,IAAI,EAAE,SAAS,EAAE,CAAC,CAAC;IAC7F,CAAC;IAED,SAAS,oBAAoB;QAC3B,OAAO,CACL,MAAC,GAAG,eACD,UAAU,IAAI,CACb,KAAC,MAAM,IACL,EAAE,EAAC,MAAM,EACT,OAAO,EAAE,GAAG,EAAE;wBACZ,UAAU,EAAE,CAAC;oBACf,CAAC,YAEA,YAAY,CAAC,MAAM,EAAE,cAAc,CAAC,GAC9B,CACV,EACD,KAAC,mBAAmB,IAClB,WAAW,EAAE,WAAW,EACxB,gBAAgB,EAAE,gBAAgB,EAClC,kBAAkB,EAAE,kBAAkB,EACtC,YAAY,EAAE,YAAY,EAC1B,UAAU,EAAE,UAAU,GACtB,IACE,CACP,CAAC;IACJ,CAAC;IAED,SAAS,oBAAoB;QAC3B,IAAI,CAAC,aAAa,EAAE,CAAC;YACnB,mBAAmB;YACnB,OAAO,CACL,MAAC,KAAK,IAAC,SAAS,mBACd,MAAC,KAAK,IAAC,IAAI,EAAE,EAAE,EAAE,EAAE,CAAC,EAAE,aACpB,cAAK,MAAM,EAAE,IAAI,EAAE,EAAE,EAAC,gBAAgB,YACnC,aAAa,GACV,EACN,MAAC,IAAI,IAAC,SAAS,EAAE,OAAO,CAAC,IAAI,aAC3B,KAAC,UAAU,IACT,SAAS,EAAE,OAAO,CAAC,cAAc,EACjC,KAAK,EACH,KAAC,UAAU,IAAC,OAAO,EAAC,IAAI,EAAC,SAAS,EAAC,KAAK,EAAC,EAAE,EAAC,WAAW,YACpD,KAAK,CAAC,cAAc,EAAE,CAAC,cAAc,CAAC,MAAM,EAAE,EAAE,EAAE,SAAS,CAAC,GAClD,EAEf,SAAS,EACP,KAAC,UAAU,IAAC,OAAO,EAAC,OAAO,EAAC,SAAS,EAAC,KAAK,EAAC,EAAE,EAAC,QAAQ,YACpD,SAAS,GACC,EAEf,MAAM,EACJ,KAAC,MAAM,IAAC,SAAS,EAAE,OAAO,CAAC,eAAe,EAAE,OAAO,EAAC,QAAQ,YAC1D,cAAK,GAAG,EAAE,cAAc,GAAI,GACrB,GAEX,EACD,oBAAoB,EAAE,EACvB,KAAC,OAAO,KAAG,EACV,gBAAgB,EACjB,KAAC,OAAO,KAAG,EACV,WAAW,CAAC,MAAM,GAAG,CAAC,IAAI,KAAC,YAAY,IAAC,SAAS,EAAE,WAAW,GAAI,IAC9D,IACD,EAER,MAAC,KAAK,IAAC,IAAI,EAAE,EAAE,EAAE,EAAE,CAAC,EAAE,aACnB,eAAe,EACf,aAAa,EACb,aAAa,CAAC,MAAM,GAAG,CAAC,IAAI,CAC3B,KAAC,SAAS,IAAC,WAAW,EAAE,WAAW,EAAE,IAAI,EAAE,aAAa,CAAC,aAAa,CAAC,CAAC,MAAM,CAAC,IAAI,EAAE,KAAK,QAAC,kBAAkB,EAAE,kBAAkB,GAAI,CACtI,IACK,EAER,KAAC,KAAK,IAAC,IAAI,EAAE,EAAE,EAAE,EAAE,CAAC,EAAE,YAAG,kBAAkB,GAAS,IAC9C,CACT,CAAC;QACJ,CAAC;QACD,8CAA8C;QAC9C,OAAO,CACL,KAAC,KAAK,IAAC,SAAS,kBACd,KAAC,KAAK,IAAC,IAAI,EAAE,EAAE,EAAE,EAAE,EAAE,EAAE,YAAG,aAAa,GAAS,GAC1C,CACT,CAAC;IACJ,CAAC;IAED,OAAO,oBAAoB,EAAE,CAAC;AAChC,CAAC","sourcesContent":["import { type PropsWithChildren, type ReactElement, useContext, useEffect, useState } from 'react';\nimport { Avatar, Card, CardHeader, Divider, Typography } from '@mui/material';\nimport makeStyles from '@mui/styles/makeStyles';\nimport Box from '@mui/material/Box';\nimport Button from '@mui/material/Button';\nimport Grid2 from '@mui/material/Grid2';\n\nimport { Utils } from '../../helpers/utils';\nimport StoreContext from '../../../bridge/Context/StoreContext';\nimport { getComponentFromMap } from '../../../bridge/helpers/sdk_component_map';\nimport type { PConnProps } from '../../../types/PConnProps';\n\ninterface CaseViewProps extends PConnProps {\n // If any, enter additional props that only exist on this component\n icon: string;\n subheader: string;\n header: string;\n showIconInHeader: boolean;\n caseInfo: any;\n lastUpdateCaseTime: any;\n}\n\nconst useStyles = makeStyles(theme => ({\n root: {\n paddingRight: theme.spacing(1),\n paddingLeft: theme.spacing(1),\n paddingTop: theme.spacing(1),\n paddingBottom: theme.spacing(1),\n marginRight: theme.spacing(1),\n marginLeft: theme.spacing(1),\n marginTop: theme.spacing(1),\n marginBottom: theme.spacing(1)\n },\n caseViewHeader: {\n backgroundColor: theme.palette.info.light,\n color: theme.palette.getContrastText(theme.palette.info.light),\n borderRadius: 'inherit'\n },\n caseViewIconBox: {\n backgroundColor: theme.palette.info.dark,\n width: theme.spacing(8),\n height: theme.spacing(8),\n padding: theme.spacing(1)\n }\n}));\n\nexport default function CaseView(props: PropsWithChildren<CaseViewProps>) {\n // Get emitted components from map (so we can get any override that may exist)\n const CaseViewActionsMenu = getComponentFromMap('CaseViewActionsMenu');\n const VerticalTabs = getComponentFromMap('VerticalTabs');\n const DeferLoad = getComponentFromMap('DeferLoad');\n\n const {\n getPConnect,\n icon = '',\n header,\n subheader,\n children = [],\n caseInfo: { availableActions = [], availableProcesses = [], hasNewAttachments, caseTypeID = '', caseTypeName = '', caseTypeIcon }\n } = props;\n const { lastUpdateCaseTime = getPConnect().getValue('caseInfo.lastUpdateTime') } = props;\n const currentCaseID = props.caseInfo.ID;\n let isComponentMounted = true;\n const { displayOnlyFA } = useContext<any>(StoreContext);\n\n const thePConn = getPConnect();\n\n const classes = useStyles();\n\n const editAction = availableActions.find(action => action.ID === 'pyUpdateCaseDetails');\n\n const localizedVal = PCore.getLocaleUtils().getLocaleValue;\n const localeCategory = 'CaseView';\n const localeKey = thePConn?.getCaseLocaleReference();\n /**\n *\n * @param inName the metadata <em>name</em> that will cause a region to be returned\n */\n function getChildRegionByName(inName: string): any {\n for (const child of children as ReactElement[]) {\n const theMetadataType: string = (child as ReactElement).props.getPConnect().getRawMetadata().type?.toLowerCase();\n const theMetadataName: string = (child as ReactElement).props.getPConnect().getRawMetadata().name?.toLowerCase();\n if (theMetadataType === 'region' && theMetadataName === inName) {\n return child;\n }\n }\n\n return null;\n }\n\n const theSummaryRegion = getChildRegionByName('summary');\n const theStagesRegion = getChildRegionByName('stages');\n const theTodoRegion = getChildRegionByName('todo');\n const theUtilitiesRegion = getChildRegionByName('utilities');\n const theTabsRegion = getChildRegionByName('tabs');\n\n let iconForCaseType = caseTypeIcon ? caseTypeIcon.replace('pi pi-', '') : icon;\n\n if (!iconForCaseType || iconForCaseType.includes('.')) {\n iconForCaseType = 'polaris-solid';\n }\n const caseSvgIconUrl = Utils.getImageSrc(iconForCaseType, Utils.getSDKStaticConentUrl());\n\n const [activeVertTab, setActiveVertTab] = useState(0);\n\n // const tmpLoadData1 = { config: { label: \"Details\", name: \"pyDetailsTabContent\" }, type: \"DeferLoad\" };\n // const tmpLoadData2 = { config: { label: \"Case History\", name: \"CaseHistory\" }, type: \"DeferLoad\" };\n\n // Extract the tabs we need to display from theTabsRegion (one tab per entry in theTabsRegionChildren)\n const theTabsRegionChildren = theTabsRegion?.props.getPConnect().getChildren();\n\n // vertTabInfo is sent to VerticalTabs component\n const vertTabInfo: object[] = [];\n\n // deferLoadInfo is sent to DeferLoad component (currently selected entry)\n const deferLoadInfo: any[] = [];\n\n if (theTabsRegionChildren) {\n // populate vertTabInfo and deferLoadInfo\n theTabsRegionChildren.forEach((tabComp, index) => {\n const theTabCompConfig = tabComp.getPConnect().getConfigProps();\n // eslint-disable-next-line prefer-const\n let { label, inheritedProps } = theTabCompConfig;\n // For some tabs, \"label\" property is not avaialable in theTabCompConfig, so will get them from inheritedProps\n if (!label) {\n inheritedProps.forEach(inheritedProp => {\n if (inheritedProp.prop === 'label') {\n label = inheritedProp.value;\n }\n });\n }\n // We'll display the tabs when either visibility property doesn't exist or is true(if exists)\n if (theTabCompConfig.visibility === undefined || theTabCompConfig.visibility === true) {\n vertTabInfo.push({ name: label, id: index });\n deferLoadInfo.push({ type: 'DeferLoad', config: theTabCompConfig });\n }\n });\n }\n\n function handleVerticalTabClick(eventDetail: any) {\n const theItem = parseInt(eventDetail.additionalData.itemClicked, 10);\n\n // only call useEffectSetter if the component is mounted\n if (isComponentMounted) {\n setActiveVertTab(theItem);\n }\n }\n\n // Add and Remove event listener for VerticalTabClick only at startup and teardown\n useEffect(() => {\n document.addEventListener('VerticalTabClick', (event: any) => {\n handleVerticalTabClick(event.detail);\n });\n\n return (): void => {\n // inform that the component is unmounted so other code can\n // know not to try to call useState setters (to avoid console warnings)\n isComponentMounted = false;\n\n document.removeEventListener('VerticalTabClick', (event: any) => {\n handleVerticalTabClick(event.detail);\n });\n };\n }, []);\n\n useEffect(() => {\n if (hasNewAttachments) {\n PCore.getPubSubUtils().publish((PCore.getEvents().getCaseEvent() as any).CASE_ATTACHMENTS_UPDATED_FROM_CASEVIEW, true);\n }\n }, [hasNewAttachments]);\n\n function _editClick() {\n const actionsAPI = thePConn.getActionsApi();\n const openLocalAction = actionsAPI.openLocalAction.bind(actionsAPI);\n\n openLocalAction(editAction.ID, { ...editAction, containerName: 'modal', type: 'express' });\n }\n\n function getActionButtonsHtml(): any {\n return (\n <Box>\n {editAction && (\n <Button\n id='edit'\n onClick={() => {\n _editClick();\n }}\n >\n {localizedVal('Edit', localeCategory)}\n </Button>\n )}\n <CaseViewActionsMenu\n getPConnect={getPConnect}\n availableActions={availableActions}\n availableProcesses={availableProcesses}\n caseTypeName={caseTypeName}\n caseTypeID={caseTypeID}\n />\n </Box>\n );\n }\n\n function getContainerContents() {\n if (!displayOnlyFA) {\n // show full portal\n return (\n <Grid2 container>\n <Grid2 size={{ xs: 3 }}>\n <div hidden={true} id='current-caseID'>\n {currentCaseID}\n </div>\n <Card className={classes.root}>\n <CardHeader\n className={classes.caseViewHeader}\n title={\n <Typography variant='h6' component='div' id='case-name'>\n {PCore.getLocaleUtils().getLocaleValue(header, '', localeKey)}\n </Typography>\n }\n subheader={\n <Typography variant='body1' component='div' id='caseId'>\n {subheader}\n </Typography>\n }\n avatar={\n <Avatar className={classes.caseViewIconBox} variant='square'>\n <img src={caseSvgIconUrl} />\n </Avatar>\n }\n />\n {getActionButtonsHtml()}\n <Divider />\n {theSummaryRegion}\n <Divider />\n {vertTabInfo.length > 1 && <VerticalTabs tabconfig={vertTabInfo} />}\n </Card>\n </Grid2>\n\n <Grid2 size={{ xs: 6 }}>\n {theStagesRegion}\n {theTodoRegion}\n {deferLoadInfo.length > 0 && (\n <DeferLoad getPConnect={getPConnect} name={deferLoadInfo[activeVertTab].config.name} isTab lastUpdateCaseTime={lastUpdateCaseTime} />\n )}\n </Grid2>\n\n <Grid2 size={{ xs: 3 }}>{theUtilitiesRegion}</Grid2>\n </Grid2>\n );\n }\n // displayOnlyFA - only show the \"todo\" region\n return (\n <Grid2 container>\n <Grid2 size={{ xs: 12 }}>{theTodoRegion}</Grid2>\n </Grid2>\n );\n }\n\n return getContainerContents();\n}\n"]}
@@ -1 +1 @@
1
- {"version":3,"file":"DataReference.d.ts","sourceRoot":"","sources":["../../../../src/components/template/DataReference/DataReference.tsx"],"names":[],"mappings":"AAAA,OAAc,EAAE,KAAK,iBAAiB,EAAmD,MAAM,OAAO,CAAC;AAGvG,OAAO,KAAK,EAAE,UAAU,EAAE,MAAM,2BAA2B,CAAC;AAQ5D,UAAU,kBAAmB,SAAQ,UAAU;IAE7C,KAAK,EAAE,MAAM,CAAC;IACd,SAAS,EAAE,GAAG,CAAC;IACf,WAAW,EAAE,MAAM,CAAC;IACpB,kCAAkC,EAAE,OAAO,CAAC;IAC5C,aAAa,EAAE,MAAM,CAAC;IACtB,aAAa,EAAE,MAAM,CAAC;IACtB,SAAS,EAAE,MAAM,CAAC;IAClB,SAAS,EAAE,MAAM,CAAC;IAClB,UAAU,EAAE,MAAM,EAAE,CAAC;IACrB,SAAS,EAAE,OAAO,CAAC;IACnB,aAAa,EAAE,MAAM,CAAC;IACtB,oBAAoB,EAAE,MAAM,CAAC;IAC7B,mBAAmB,EAAE,OAAO,CAAC;IAC7B,wCAAwC,EAAE,OAAO,CAAC;IAClD,YAAY,EAAE,MAAM,CAAC;IACrB,MAAM,EAAE,GAAG,CAAC;IACZ,aAAa,EAAE,GAAG,CAAC;CACpB;AAID,MAAM,CAAC,OAAO,UAAU,aAAa,CAAC,KAAK,EAAE,iBAAiB,CAAC,kBAAkB,CAAC,2CAkbjF"}
1
+ {"version":3,"file":"DataReference.d.ts","sourceRoot":"","sources":["../../../../src/components/template/DataReference/DataReference.tsx"],"names":[],"mappings":"AAAA,OAAc,EAAE,KAAK,iBAAiB,EAAmD,MAAM,OAAO,CAAC;AAGvG,OAAO,KAAK,EAAE,UAAU,EAAE,MAAM,2BAA2B,CAAC;AAQ5D,UAAU,kBAAmB,SAAQ,UAAU;IAE7C,KAAK,EAAE,MAAM,CAAC;IACd,SAAS,EAAE,GAAG,CAAC;IACf,WAAW,EAAE,MAAM,CAAC;IACpB,kCAAkC,EAAE,OAAO,CAAC;IAC5C,aAAa,EAAE,MAAM,CAAC;IACtB,aAAa,EAAE,MAAM,CAAC;IACtB,SAAS,EAAE,MAAM,CAAC;IAClB,SAAS,EAAE,MAAM,CAAC;IAClB,UAAU,EAAE,MAAM,EAAE,CAAC;IACrB,SAAS,EAAE,OAAO,CAAC;IACnB,aAAa,EAAE,MAAM,CAAC;IACtB,oBAAoB,EAAE,MAAM,CAAC;IAC7B,mBAAmB,EAAE,OAAO,CAAC;IAC7B,wCAAwC,EAAE,OAAO,CAAC;IAClD,YAAY,EAAE,MAAM,CAAC;IACrB,MAAM,EAAE,GAAG,CAAC;IACZ,aAAa,EAAE,GAAG,CAAC;CACpB;AAID,MAAM,CAAC,OAAO,UAAU,aAAa,CAAC,KAAK,EAAE,iBAAiB,CAAC,kBAAkB,CAAC,2CAibjF"}
@@ -38,8 +38,7 @@ export default function DataReference(props) {
38
38
  };
39
39
  let firstChildPConnect;
40
40
  const localizedPlaceholderOption = placeholder => {
41
- const { GENERIC_BUNDLE_KEY } = PCore.getLocaleUtils?.() ?? {};
42
- const localizedDefaultPlaceholder = pConn.getLocalizedValue('select_placeholder_default', 'CosmosFields', GENERIC_BUNDLE_KEY);
41
+ const localizedDefaultPlaceholder = pConn.getLocalizedValue('select_placeholder_default', '', 'CosmosFields');
43
42
  // If we have a placeholder, push that option in the list of items
44
43
  if (placeholder === 'Select...' && localizedDefaultPlaceholder !== 'select_placeholder_default') {
45
44
  return localizedDefaultPlaceholder;
@@ -1 +1 @@
1
- {"version":3,"file":"DataReference.js","sourceRoot":"","sources":["../../../../src/components/template/DataReference/DataReference.tsx"],"names":[],"mappings":"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","sourcesContent":["import React, { type PropsWithChildren, type ReactElement, useEffect, useMemo, useState } from 'react';\n\nimport { getComponentFromMap } from '../../../bridge/helpers/sdk_component_map';\nimport type { PConnProps } from '../../../types/PConnProps';\nimport useIsMount from '../../../hooks/useIsMount';\nimport componentCachePersistUtils from '../AdvancedSearch/SearchGroup/persistUtils';\nimport DataReferenceAdvancedSearchContext from './DataReferenceAdvancedSearchContext';\nimport { Utils } from '../../helpers/utils';\nimport { getFirstChildConfig } from './utils';\n\n// ReferenceProps can't be used until getComponentConfig() is NOT private\ninterface DataReferenceProps extends PConnProps {\n // If any, enter additional props that only exist on this component\n label: string;\n showLabel: any;\n displayMode: string;\n allowAndPersistChangesInReviewMode: boolean;\n referenceType: string;\n selectionMode: string;\n displayAs: string;\n ruleClass: string;\n parameters: string[]; // need to fix\n hideLabel: boolean;\n imagePosition: string;\n showImageDescription: string;\n showPromotedFilters: boolean;\n isCreationOfNewRecordAllowedForReference: boolean;\n contextClass: string;\n inline: any;\n selectionList: any;\n}\n\nconst SELECTION_MODE = { SINGLE: 'single', MULTI: 'multi' };\n\nexport default function DataReference(props: PropsWithChildren<DataReferenceProps>) {\n // Get emitted components from map (so we can get any override that may exist)\n const SingleReferenceReadonly = getComponentFromMap('SingleReferenceReadOnly');\n const MultiReferenceReadonly = getComponentFromMap('MultiReferenceReadOnly');\n const SearchForm = getComponentFromMap('SearchForm');\n const {\n children,\n getPConnect,\n label,\n showLabel,\n displayMode,\n allowAndPersistChangesInReviewMode,\n referenceType,\n selectionMode,\n displayAs,\n ruleClass,\n parameters,\n hideLabel,\n imagePosition,\n showImageDescription,\n showPromotedFilters,\n isCreationOfNewRecordAllowedForReference,\n contextClass,\n inline,\n selectionList\n } = props;\n\n const isMounted = useIsMount();\n let childrenToRender = children as ReactElement[];\n const pConn = getPConnect();\n const [dropDownDataSource, setDropDownDataSource] = useState(null);\n const propsToUse: any = { label, showLabel, ...pConn.getInheritedProps() };\n if (propsToUse.showLabel === false) {\n propsToUse.label = '';\n }\n const rawViewMetadata: any = pConn.getRawMetadata();\n const refFieldMetadata = pConn.getFieldMetadata(rawViewMetadata.config?.authorContext);\n\n const [firstChildMeta] = rawViewMetadata.children;\n const refList = rawViewMetadata.config.referenceList;\n const canBeChangedInReviewMode = allowAndPersistChangesInReviewMode && (displayAs === 'autocomplete' || displayAs === 'dropdown');\n const isDisplayModeEnabled = ['STACKED_LARGE_VAL', 'DISPLAY_ONLY'].includes(displayMode);\n const isDDSourceDeferred =\n (firstChildMeta?.type === 'Dropdown' && selectionMode === SELECTION_MODE.SINGLE && refFieldMetadata?.descriptors) ||\n firstChildMeta.config.deferDatasource;\n const pyID = Utils.getMappedKey('pyID');\n const isInfinity = pyID === 'pyID';\n const { allowImplicitRefresh } = isInfinity\n ? PCore.getFieldDefaultUtils().fieldDefaults.DataReference || {}\n : {\n allowImplicitRefresh: true\n };\n\n let firstChildPConnect;\n\n const localizedPlaceholderOption = placeholder => {\n const { GENERIC_BUNDLE_KEY } = PCore.getLocaleUtils?.() ?? {};\n const localizedDefaultPlaceholder = pConn.getLocalizedValue('select_placeholder_default', 'CosmosFields', GENERIC_BUNDLE_KEY);\n // If we have a placeholder, push that option in the list of items\n if (placeholder === 'Select...' && localizedDefaultPlaceholder !== 'select_placeholder_default') {\n return localizedDefaultPlaceholder;\n }\n return pConn.getLocalizedValue(placeholder);\n };\n\n if (['Dropdown', 'AutoComplete'].includes(firstChildMeta?.type)) {\n firstChildMeta.config.placeholder = localizedPlaceholderOption(firstChildMeta.config.placeholder);\n }\n\n if (['Checkbox', 'RadioButtons'].includes(firstChildMeta?.type) && firstChildMeta.config.variant === 'card') {\n firstChildMeta.config.imagePosition = imagePosition;\n firstChildMeta.config.showImageDescription = showImageDescription;\n }\n\n /* Only for dropdown when it has param use data api to get the data back and add it to datasource */\n useEffect(() => {\n if (rawViewMetadata.config?.parameters && !isDDSourceDeferred && ['Checkbox', 'Dropdown', 'RadioButtons'].includes(firstChildMeta?.type)) {\n const { value, key, text } = firstChildMeta.config.datasource.fields;\n if (firstChildMeta.config.variant !== 'card' || (firstChildMeta.config.variant === 'card' && !isMounted)) {\n (\n PCore.getDataApiUtils().getData(\n refList,\n {\n dataViewParameters: parameters\n } as any,\n ''\n ) as Promise<any>\n )\n .then(res => {\n if (res.data.data !== null) {\n const ddDataSource = firstChildMeta.config.datasource.filterDownloadedFields\n ? res.data.data\n : res.data.data\n .map(listItem => ({\n key: listItem[key.split(' .', 2)[1]],\n text: listItem[text.split(' .', 2)[1]],\n value: listItem[value.split(' .', 2)[1]]\n }))\n .filter(item => item.key);\n // Filtering out undefined entries that will break preview\n setDropDownDataSource(ddDataSource);\n } else {\n const ddDataSource: any = [];\n setDropDownDataSource(ddDataSource);\n }\n })\n .catch(err => {\n console.error(err?.stack);\n return Promise.resolve({\n data: { data: [] }\n });\n });\n }\n }\n }, [firstChildMeta, rawViewMetadata, parameters]);\n\n if (firstChildMeta?.type !== 'Region') {\n firstChildPConnect = getPConnect().getChildren()?.[0].getPConnect;\n /* remove refresh When condition from those old view so that it will not be used for runtime */\n if (firstChildMeta.config?.readOnly) {\n delete firstChildMeta.config.readOnly;\n }\n if (firstChildMeta?.type === 'Dropdown') {\n firstChildMeta.config.datasource.source = rawViewMetadata.config?.parameters\n ? dropDownDataSource\n : '@DATASOURCE '.concat(refList).concat('.pxResults');\n } else if (firstChildMeta?.type === 'AutoComplete') {\n firstChildMeta.config.datasource = refList;\n\n /* Insert the parameters to the component only if present */\n if (rawViewMetadata.config?.parameters) {\n firstChildMeta.config.parameters = parameters;\n }\n }\n // set displayMode conditionally\n if (!canBeChangedInReviewMode) {\n firstChildMeta.config.displayMode = displayMode;\n }\n }\n\n const handleSelection = event => {\n const caseKey = pConn.getCaseInfo().getKey();\n const refreshOptions: any = { autoDetectRefresh: true };\n\n const children: any = pConn.getRawMetadata()?.children;\n if (children?.length > 0 && children[0].config?.value) {\n refreshOptions.propertyName = children[0].config.value;\n refreshOptions.classID = (pConn.getRawMetadata() as any).classID;\n }\n\n // AutoComplete sets value on event.id whereas Dropdown sets it on event.target.value if event.id is unset\n // When value is empty propValue will be undefined here and no value will be set for the reference\n const propValue = event?.id || event?.target?.value;\n const propName =\n firstChildMeta.type === 'SimpleTableSelect' && selectionMode === SELECTION_MODE.MULTI\n ? PCore.getAnnotationUtils().getPropertyName(firstChildMeta.config.selectionList)\n : PCore.getAnnotationUtils().getPropertyName(firstChildMeta.config.value);\n\n const hasAssociatedViewConfigured = rawViewMetadata.children[1].children?.length;\n\n if (pConn.getContextName().includes('modal') || pConn.getContextName().includes('workarea')) {\n if (hasAssociatedViewConfigured || allowImplicitRefresh) {\n const pageReference = pConn.getPageReference();\n let pgRef: any = null;\n if (pageReference.startsWith('objectInfo')) {\n pgRef = pageReference.replace('objectInfo.content', '');\n } else {\n pgRef = pageReference.replace('caseInfo.content', '');\n }\n const viewName = rawViewMetadata.name;\n getPConnect()\n .getActionsApi()\n .refreshCaseView(caseKey, viewName, pgRef, refreshOptions)\n .catch(() => {});\n }\n } else if (propValue && canBeChangedInReviewMode && isDisplayModeEnabled) {\n (PCore.getDataApiUtils().getCaseEditLock(caseKey, '') as Promise<any>).then(caseResponse => {\n const pageTokens = pConn.getPageReference().replace('caseInfo.content', '').split('.');\n let curr = {};\n const commitData = curr;\n\n pageTokens.forEach(el => {\n if (el !== '') {\n curr[el] = {};\n curr = curr[el];\n }\n });\n\n // expecting format like {Customer: {pyID:\"C-100\"}}\n const propArr = propName.split('.');\n propArr.forEach((element, idx) => {\n if (idx + 1 === propArr.length) {\n curr[element] = propValue;\n } else {\n curr[element] = {};\n curr = curr[element];\n }\n });\n\n (\n PCore.getDataApiUtils().updateCaseEditFieldsData(\n caseKey,\n { [caseKey]: commitData },\n caseResponse.headers.etag,\n pConn.getContextName()\n ) as Promise<any>\n ).then(response => {\n PCore.getContainerUtils().updateParentLastUpdateTime(pConn.getContextName(), response.data.data.caseInfo.lastUpdateTime);\n PCore.getContainerUtils().updateRelatedContextEtag(pConn.getContextName(), response.headers.etag);\n });\n });\n }\n };\n\n // Re-create first child with overridden props\n // Memoized child in order to stop unmount and remount of the child component when data reference\n // rerenders without any actual change\n const recreatedFirstChild = useMemo(() => {\n const { type, config } = firstChildMeta;\n if (firstChildMeta?.type === 'Region' && displayAs !== 'advancedSearch') {\n return;\n }\n\n if ((displayAs === 'readonly' || isDisplayModeEnabled) && !canBeChangedInReviewMode && selectionMode === SELECTION_MODE.SINGLE) {\n return (\n <SingleReferenceReadonly\n config={config}\n getPConnect={firstChildPConnect}\n label={propsToUse.label}\n type={type}\n displayAs={displayAs}\n displayMode={displayMode}\n ruleClass={ruleClass}\n referenceType={referenceType}\n hideLabel={hideLabel}\n dataRelationshipContext={rawViewMetadata.config.contextClass && rawViewMetadata.config.name ? rawViewMetadata.config.name : null}\n />\n );\n }\n\n if ((['readonly', 'readonlyMulti', 'map'].includes(displayAs) || isDisplayModeEnabled) && selectionMode === SELECTION_MODE.MULTI) {\n return (\n <MultiReferenceReadonly\n config={{\n ...firstChildMeta.config,\n localeReference: rawViewMetadata.config.localeReference\n }}\n getPConnect={firstChildPConnect}\n displayAs={displayAs}\n label={propsToUse.label}\n hideLabel={hideLabel}\n displayMode={displayMode}\n />\n );\n }\n\n /* Editable variants */\n // Datasource w/ parameters cannot load the dropdown before the parameters\n if (type === 'Dropdown' && dropDownDataSource === null && !isDDSourceDeferred && rawViewMetadata.config?.parameters) {\n return null;\n }\n\n if (firstChildMeta.config?.readOnly) {\n delete firstChildMeta.config.readOnly;\n }\n\n // 2) Set datasource\n if (\n ['Dropdown', 'Checkbox', 'RadioButtons'].includes(firstChildMeta?.type) &&\n !firstChildMeta.config.deferDatasource &&\n firstChildMeta.config.datasource\n ) {\n firstChildMeta.config.datasource.source =\n (firstChildMeta.config.variant === 'card' && dropDownDataSource) ||\n (firstChildMeta.config.variant !== 'card' && rawViewMetadata.config?.parameters)\n ? dropDownDataSource\n : '@DATASOURCE '.concat(refList).concat('.pxResults');\n } else if (firstChildMeta?.type === 'AutoComplete') {\n firstChildMeta.config.datasource = refList;\n\n if (rawViewMetadata.config?.parameters) {\n firstChildMeta.config.parameters = parameters;\n }\n }\n\n // 3) Pass through configs\n if (firstChildMeta.config) {\n firstChildMeta.config.showPromotedFilters = showPromotedFilters;\n if (!canBeChangedInReviewMode) {\n firstChildMeta.config.displayMode = displayMode;\n }\n }\n\n // 4) Define field meta\n let fieldMetaData: any = null;\n if (isDDSourceDeferred && !firstChildMeta.config.deferDatasource) {\n fieldMetaData = {\n datasourceMetadata: refFieldMetadata\n };\n if (rawViewMetadata.config?.parameters) {\n fieldMetaData.datasourceMetadata.datasource.parameters = parameters;\n }\n fieldMetaData.datasourceMetadata.datasource.propertyForDisplayText = firstChildMeta?.config?.datasource?.fields?.text.startsWith('@P')\n ? firstChildMeta?.config?.datasource?.fields?.text?.substring(3)\n : firstChildMeta?.config?.datasource?.fields?.text;\n fieldMetaData.datasourceMetadata.datasource.propertyForValue = firstChildMeta?.config?.datasource?.fields?.value.startsWith('@P')\n ? firstChildMeta?.config?.datasource?.fields?.value?.substring(3)\n : firstChildMeta?.config?.datasource?.fields?.value;\n fieldMetaData.datasourceMetadata.datasource.name = rawViewMetadata.config?.referenceList;\n }\n // @ts-expect-error\n const { disableStartingFieldsForReference = false } = PCore.getEnvironmentInfo().environmentInfoObject?.features?.form || {};\n // @ts-expect-error\n let { isCreateNewReferenceEnabled = false } = PCore.getEnvironmentInfo().environmentInfoObject?.features?.form || {};\n\n if (isCreateNewReferenceEnabled) {\n isCreateNewReferenceEnabled = isCreationOfNewRecordAllowedForReference && PCore.getAccessPrivilege().hasCreateAccess(contextClass);\n }\n\n const startingFields: any = {};\n const createNewRecord = () => {\n if (referenceType === 'Case' || firstChildMeta?.config?.referenceType === 'Case') {\n if (!disableStartingFieldsForReference) {\n startingFields.pyAddCaseContextPage = { pyID: pConn.getCaseInfo().getKey()?.split(' ')?.pop() };\n }\n return pConn.getActionsApi().createWork(contextClass, {\n openCaseViewAfterCreate: false,\n startingFields\n });\n }\n if (referenceType === 'Data' || firstChildMeta?.config?.referenceType === 'Data') {\n return getPConnect().getActionsApi().showDataObjectCreateView(contextClass);\n }\n };\n\n const additionalInfo = refFieldMetadata?.additionalInformation\n ? {\n content: refFieldMetadata.additionalInformation\n }\n : undefined;\n\n const dataReferenceConfigToChild = {\n selectionMode,\n additionalInfo,\n descriptors: selectionMode === SELECTION_MODE.SINGLE ? refFieldMetadata?.descriptors : null,\n datasourceMetadata: fieldMetaData?.datasourceMetadata,\n required: propsToUse.required,\n visibility: propsToUse.visibility,\n disabled: propsToUse.disabled,\n label: propsToUse.label,\n displayAs,\n readOnly: false,\n ...(selectionMode === SELECTION_MODE.SINGLE && {\n referenceType\n }),\n ...(selectionMode === SELECTION_MODE.SINGLE &&\n displayAs === 'advancedSearch' && {\n value: rawViewMetadata.config.value,\n contextPage: rawViewMetadata.config.contextPage\n }),\n ...(selectionMode === SELECTION_MODE.MULTI &&\n displayAs === 'advancedSearch' && {\n selectionList,\n readonlyContextList: rawViewMetadata.config.readonlyContextList\n }),\n dataRelationshipContext: rawViewMetadata.config.contextClass && rawViewMetadata.config.name ? rawViewMetadata.config.name : null,\n hideLabel,\n onRecordChange: handleSelection,\n createNewRecord: isCreateNewReferenceEnabled ? createNewRecord : undefined,\n inline\n };\n\n const searchSelectCacheKey = componentCachePersistUtils.getComponentStateKey(getPConnect, rawViewMetadata.config.name);\n\n const dataReferenceAdvancedSearchContext = {\n dataReferenceConfigToChild,\n isCreateNewReferenceEnabled,\n disableStartingFieldsForReference,\n pyID,\n searchSelectCacheKey\n };\n\n if (displayAs === 'advancedSearch') {\n return (\n <DataReferenceAdvancedSearchContext.Provider value={dataReferenceAdvancedSearchContext}>\n <SearchForm getPConnect={getPConnect} searchSelectCacheKey={searchSelectCacheKey}>\n {children}\n </SearchForm>\n </DataReferenceAdvancedSearchContext.Provider>\n );\n }\n\n return firstChildPConnect().createComponent({\n type,\n config: {\n ...getFirstChildConfig({\n firstChildMeta,\n getPConnect,\n rawViewMetadata,\n contextClass,\n dataReferenceConfigToChild,\n isCreateNewReferenceEnabled,\n disableStartingFieldsForReference,\n pyID\n })\n }\n });\n }, [firstChildMeta.config?.datasource?.source, parameters, dropDownDataSource, propsToUse.required, propsToUse.disabled]);\n\n // Only include the views region for rendering when it has content\n if (firstChildMeta?.type !== 'Region') {\n const viewsRegion = rawViewMetadata.children[1];\n if (viewsRegion?.name === 'Views' && viewsRegion.children.length) {\n viewsRegion.children.map(child => {\n child.config.isEmbeddedInDataReference = true;\n return child;\n });\n childrenToRender = [recreatedFirstChild, ...(children as ReactElement[]).slice(1)];\n } else {\n childrenToRender = [recreatedFirstChild];\n }\n } else if (displayAs === 'advancedSearch') {\n childrenToRender = [recreatedFirstChild];\n }\n\n return childrenToRender.length === 1 ? (\n (childrenToRender[0] ?? null)\n ) : (\n <div>\n {childrenToRender.map((child, index) => (\n <React.Fragment key={index}>{child}</React.Fragment>\n ))}\n </div>\n );\n}\n"]}
1
+ {"version":3,"file":"DataReference.js","sourceRoot":"","sources":["../../../../src/components/template/DataReference/DataReference.tsx"],"names":[],"mappings":"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","sourcesContent":["import React, { type PropsWithChildren, type ReactElement, useEffect, useMemo, useState } from 'react';\n\nimport { getComponentFromMap } from '../../../bridge/helpers/sdk_component_map';\nimport type { PConnProps } from '../../../types/PConnProps';\nimport useIsMount from '../../../hooks/useIsMount';\nimport componentCachePersistUtils from '../AdvancedSearch/SearchGroup/persistUtils';\nimport DataReferenceAdvancedSearchContext from './DataReferenceAdvancedSearchContext';\nimport { Utils } from '../../helpers/utils';\nimport { getFirstChildConfig } from './utils';\n\n// ReferenceProps can't be used until getComponentConfig() is NOT private\ninterface DataReferenceProps extends PConnProps {\n // If any, enter additional props that only exist on this component\n label: string;\n showLabel: any;\n displayMode: string;\n allowAndPersistChangesInReviewMode: boolean;\n referenceType: string;\n selectionMode: string;\n displayAs: string;\n ruleClass: string;\n parameters: string[]; // need to fix\n hideLabel: boolean;\n imagePosition: string;\n showImageDescription: string;\n showPromotedFilters: boolean;\n isCreationOfNewRecordAllowedForReference: boolean;\n contextClass: string;\n inline: any;\n selectionList: any;\n}\n\nconst SELECTION_MODE = { SINGLE: 'single', MULTI: 'multi' };\n\nexport default function DataReference(props: PropsWithChildren<DataReferenceProps>) {\n // Get emitted components from map (so we can get any override that may exist)\n const SingleReferenceReadonly = getComponentFromMap('SingleReferenceReadOnly');\n const MultiReferenceReadonly = getComponentFromMap('MultiReferenceReadOnly');\n const SearchForm = getComponentFromMap('SearchForm');\n const {\n children,\n getPConnect,\n label,\n showLabel,\n displayMode,\n allowAndPersistChangesInReviewMode,\n referenceType,\n selectionMode,\n displayAs,\n ruleClass,\n parameters,\n hideLabel,\n imagePosition,\n showImageDescription,\n showPromotedFilters,\n isCreationOfNewRecordAllowedForReference,\n contextClass,\n inline,\n selectionList\n } = props;\n\n const isMounted = useIsMount();\n let childrenToRender = children as ReactElement[];\n const pConn = getPConnect();\n const [dropDownDataSource, setDropDownDataSource] = useState(null);\n const propsToUse: any = { label, showLabel, ...pConn.getInheritedProps() };\n if (propsToUse.showLabel === false) {\n propsToUse.label = '';\n }\n const rawViewMetadata: any = pConn.getRawMetadata();\n const refFieldMetadata = pConn.getFieldMetadata(rawViewMetadata.config?.authorContext);\n\n const [firstChildMeta] = rawViewMetadata.children;\n const refList = rawViewMetadata.config.referenceList;\n const canBeChangedInReviewMode = allowAndPersistChangesInReviewMode && (displayAs === 'autocomplete' || displayAs === 'dropdown');\n const isDisplayModeEnabled = ['STACKED_LARGE_VAL', 'DISPLAY_ONLY'].includes(displayMode);\n const isDDSourceDeferred =\n (firstChildMeta?.type === 'Dropdown' && selectionMode === SELECTION_MODE.SINGLE && refFieldMetadata?.descriptors) ||\n firstChildMeta.config.deferDatasource;\n const pyID = Utils.getMappedKey('pyID');\n const isInfinity = pyID === 'pyID';\n const { allowImplicitRefresh } = isInfinity\n ? PCore.getFieldDefaultUtils().fieldDefaults.DataReference || {}\n : {\n allowImplicitRefresh: true\n };\n\n let firstChildPConnect;\n\n const localizedPlaceholderOption = placeholder => {\n const localizedDefaultPlaceholder = pConn.getLocalizedValue('select_placeholder_default', '', 'CosmosFields');\n // If we have a placeholder, push that option in the list of items\n if (placeholder === 'Select...' && localizedDefaultPlaceholder !== 'select_placeholder_default') {\n return localizedDefaultPlaceholder;\n }\n return pConn.getLocalizedValue(placeholder);\n };\n\n if (['Dropdown', 'AutoComplete'].includes(firstChildMeta?.type)) {\n firstChildMeta.config.placeholder = localizedPlaceholderOption(firstChildMeta.config.placeholder);\n }\n\n if (['Checkbox', 'RadioButtons'].includes(firstChildMeta?.type) && firstChildMeta.config.variant === 'card') {\n firstChildMeta.config.imagePosition = imagePosition;\n firstChildMeta.config.showImageDescription = showImageDescription;\n }\n\n /* Only for dropdown when it has param use data api to get the data back and add it to datasource */\n useEffect(() => {\n if (rawViewMetadata.config?.parameters && !isDDSourceDeferred && ['Checkbox', 'Dropdown', 'RadioButtons'].includes(firstChildMeta?.type)) {\n const { value, key, text } = firstChildMeta.config.datasource.fields;\n if (firstChildMeta.config.variant !== 'card' || (firstChildMeta.config.variant === 'card' && !isMounted)) {\n (\n PCore.getDataApiUtils().getData(\n refList,\n {\n dataViewParameters: parameters\n } as any,\n ''\n ) as Promise<any>\n )\n .then(res => {\n if (res.data.data !== null) {\n const ddDataSource = firstChildMeta.config.datasource.filterDownloadedFields\n ? res.data.data\n : res.data.data\n .map(listItem => ({\n key: listItem[key.split(' .', 2)[1]],\n text: listItem[text.split(' .', 2)[1]],\n value: listItem[value.split(' .', 2)[1]]\n }))\n .filter(item => item.key);\n // Filtering out undefined entries that will break preview\n setDropDownDataSource(ddDataSource);\n } else {\n const ddDataSource: any = [];\n setDropDownDataSource(ddDataSource);\n }\n })\n .catch(err => {\n console.error(err?.stack);\n return Promise.resolve({\n data: { data: [] }\n });\n });\n }\n }\n }, [firstChildMeta, rawViewMetadata, parameters]);\n\n if (firstChildMeta?.type !== 'Region') {\n firstChildPConnect = getPConnect().getChildren()?.[0].getPConnect;\n /* remove refresh When condition from those old view so that it will not be used for runtime */\n if (firstChildMeta.config?.readOnly) {\n delete firstChildMeta.config.readOnly;\n }\n if (firstChildMeta?.type === 'Dropdown') {\n firstChildMeta.config.datasource.source = rawViewMetadata.config?.parameters\n ? dropDownDataSource\n : '@DATASOURCE '.concat(refList).concat('.pxResults');\n } else if (firstChildMeta?.type === 'AutoComplete') {\n firstChildMeta.config.datasource = refList;\n\n /* Insert the parameters to the component only if present */\n if (rawViewMetadata.config?.parameters) {\n firstChildMeta.config.parameters = parameters;\n }\n }\n // set displayMode conditionally\n if (!canBeChangedInReviewMode) {\n firstChildMeta.config.displayMode = displayMode;\n }\n }\n\n const handleSelection = event => {\n const caseKey = pConn.getCaseInfo().getKey();\n const refreshOptions: any = { autoDetectRefresh: true };\n\n const children: any = pConn.getRawMetadata()?.children;\n if (children?.length > 0 && children[0].config?.value) {\n refreshOptions.propertyName = children[0].config.value;\n refreshOptions.classID = (pConn.getRawMetadata() as any).classID;\n }\n\n // AutoComplete sets value on event.id whereas Dropdown sets it on event.target.value if event.id is unset\n // When value is empty propValue will be undefined here and no value will be set for the reference\n const propValue = event?.id || event?.target?.value;\n const propName =\n firstChildMeta.type === 'SimpleTableSelect' && selectionMode === SELECTION_MODE.MULTI\n ? PCore.getAnnotationUtils().getPropertyName(firstChildMeta.config.selectionList)\n : PCore.getAnnotationUtils().getPropertyName(firstChildMeta.config.value);\n\n const hasAssociatedViewConfigured = rawViewMetadata.children[1].children?.length;\n\n if (pConn.getContextName().includes('modal') || pConn.getContextName().includes('workarea')) {\n if (hasAssociatedViewConfigured || allowImplicitRefresh) {\n const pageReference = pConn.getPageReference();\n let pgRef: any = null;\n if (pageReference.startsWith('objectInfo')) {\n pgRef = pageReference.replace('objectInfo.content', '');\n } else {\n pgRef = pageReference.replace('caseInfo.content', '');\n }\n const viewName = rawViewMetadata.name;\n getPConnect()\n .getActionsApi()\n .refreshCaseView(caseKey, viewName, pgRef, refreshOptions)\n .catch(() => {});\n }\n } else if (propValue && canBeChangedInReviewMode && isDisplayModeEnabled) {\n (PCore.getDataApiUtils().getCaseEditLock(caseKey, '') as Promise<any>).then(caseResponse => {\n const pageTokens = pConn.getPageReference().replace('caseInfo.content', '').split('.');\n let curr = {};\n const commitData = curr;\n\n pageTokens.forEach(el => {\n if (el !== '') {\n curr[el] = {};\n curr = curr[el];\n }\n });\n\n // expecting format like {Customer: {pyID:\"C-100\"}}\n const propArr = propName.split('.');\n propArr.forEach((element, idx) => {\n if (idx + 1 === propArr.length) {\n curr[element] = propValue;\n } else {\n curr[element] = {};\n curr = curr[element];\n }\n });\n\n (\n PCore.getDataApiUtils().updateCaseEditFieldsData(\n caseKey,\n { [caseKey]: commitData },\n caseResponse.headers.etag,\n pConn.getContextName()\n ) as Promise<any>\n ).then(response => {\n PCore.getContainerUtils().updateParentLastUpdateTime(pConn.getContextName(), response.data.data.caseInfo.lastUpdateTime);\n PCore.getContainerUtils().updateRelatedContextEtag(pConn.getContextName(), response.headers.etag);\n });\n });\n }\n };\n\n // Re-create first child with overridden props\n // Memoized child in order to stop unmount and remount of the child component when data reference\n // rerenders without any actual change\n const recreatedFirstChild = useMemo(() => {\n const { type, config } = firstChildMeta;\n if (firstChildMeta?.type === 'Region' && displayAs !== 'advancedSearch') {\n return;\n }\n\n if ((displayAs === 'readonly' || isDisplayModeEnabled) && !canBeChangedInReviewMode && selectionMode === SELECTION_MODE.SINGLE) {\n return (\n <SingleReferenceReadonly\n config={config}\n getPConnect={firstChildPConnect}\n label={propsToUse.label}\n type={type}\n displayAs={displayAs}\n displayMode={displayMode}\n ruleClass={ruleClass}\n referenceType={referenceType}\n hideLabel={hideLabel}\n dataRelationshipContext={rawViewMetadata.config.contextClass && rawViewMetadata.config.name ? rawViewMetadata.config.name : null}\n />\n );\n }\n\n if ((['readonly', 'readonlyMulti', 'map'].includes(displayAs) || isDisplayModeEnabled) && selectionMode === SELECTION_MODE.MULTI) {\n return (\n <MultiReferenceReadonly\n config={{\n ...firstChildMeta.config,\n localeReference: rawViewMetadata.config.localeReference\n }}\n getPConnect={firstChildPConnect}\n displayAs={displayAs}\n label={propsToUse.label}\n hideLabel={hideLabel}\n displayMode={displayMode}\n />\n );\n }\n\n /* Editable variants */\n // Datasource w/ parameters cannot load the dropdown before the parameters\n if (type === 'Dropdown' && dropDownDataSource === null && !isDDSourceDeferred && rawViewMetadata.config?.parameters) {\n return null;\n }\n\n if (firstChildMeta.config?.readOnly) {\n delete firstChildMeta.config.readOnly;\n }\n\n // 2) Set datasource\n if (\n ['Dropdown', 'Checkbox', 'RadioButtons'].includes(firstChildMeta?.type) &&\n !firstChildMeta.config.deferDatasource &&\n firstChildMeta.config.datasource\n ) {\n firstChildMeta.config.datasource.source =\n (firstChildMeta.config.variant === 'card' && dropDownDataSource) ||\n (firstChildMeta.config.variant !== 'card' && rawViewMetadata.config?.parameters)\n ? dropDownDataSource\n : '@DATASOURCE '.concat(refList).concat('.pxResults');\n } else if (firstChildMeta?.type === 'AutoComplete') {\n firstChildMeta.config.datasource = refList;\n\n if (rawViewMetadata.config?.parameters) {\n firstChildMeta.config.parameters = parameters;\n }\n }\n\n // 3) Pass through configs\n if (firstChildMeta.config) {\n firstChildMeta.config.showPromotedFilters = showPromotedFilters;\n if (!canBeChangedInReviewMode) {\n firstChildMeta.config.displayMode = displayMode;\n }\n }\n\n // 4) Define field meta\n let fieldMetaData: any = null;\n if (isDDSourceDeferred && !firstChildMeta.config.deferDatasource) {\n fieldMetaData = {\n datasourceMetadata: refFieldMetadata\n };\n if (rawViewMetadata.config?.parameters) {\n fieldMetaData.datasourceMetadata.datasource.parameters = parameters;\n }\n fieldMetaData.datasourceMetadata.datasource.propertyForDisplayText = firstChildMeta?.config?.datasource?.fields?.text.startsWith('@P')\n ? firstChildMeta?.config?.datasource?.fields?.text?.substring(3)\n : firstChildMeta?.config?.datasource?.fields?.text;\n fieldMetaData.datasourceMetadata.datasource.propertyForValue = firstChildMeta?.config?.datasource?.fields?.value.startsWith('@P')\n ? firstChildMeta?.config?.datasource?.fields?.value?.substring(3)\n : firstChildMeta?.config?.datasource?.fields?.value;\n fieldMetaData.datasourceMetadata.datasource.name = rawViewMetadata.config?.referenceList;\n }\n // @ts-expect-error\n const { disableStartingFieldsForReference = false } = PCore.getEnvironmentInfo().environmentInfoObject?.features?.form || {};\n // @ts-expect-error\n let { isCreateNewReferenceEnabled = false } = PCore.getEnvironmentInfo().environmentInfoObject?.features?.form || {};\n\n if (isCreateNewReferenceEnabled) {\n isCreateNewReferenceEnabled = isCreationOfNewRecordAllowedForReference && PCore.getAccessPrivilege().hasCreateAccess(contextClass);\n }\n\n const startingFields: any = {};\n const createNewRecord = () => {\n if (referenceType === 'Case' || firstChildMeta?.config?.referenceType === 'Case') {\n if (!disableStartingFieldsForReference) {\n startingFields.pyAddCaseContextPage = { pyID: pConn.getCaseInfo().getKey()?.split(' ')?.pop() };\n }\n return pConn.getActionsApi().createWork(contextClass, {\n openCaseViewAfterCreate: false,\n startingFields\n });\n }\n if (referenceType === 'Data' || firstChildMeta?.config?.referenceType === 'Data') {\n return getPConnect().getActionsApi().showDataObjectCreateView(contextClass);\n }\n };\n\n const additionalInfo = refFieldMetadata?.additionalInformation\n ? {\n content: refFieldMetadata.additionalInformation\n }\n : undefined;\n\n const dataReferenceConfigToChild = {\n selectionMode,\n additionalInfo,\n descriptors: selectionMode === SELECTION_MODE.SINGLE ? refFieldMetadata?.descriptors : null,\n datasourceMetadata: fieldMetaData?.datasourceMetadata,\n required: propsToUse.required,\n visibility: propsToUse.visibility,\n disabled: propsToUse.disabled,\n label: propsToUse.label,\n displayAs,\n readOnly: false,\n ...(selectionMode === SELECTION_MODE.SINGLE && {\n referenceType\n }),\n ...(selectionMode === SELECTION_MODE.SINGLE &&\n displayAs === 'advancedSearch' && {\n value: rawViewMetadata.config.value,\n contextPage: rawViewMetadata.config.contextPage\n }),\n ...(selectionMode === SELECTION_MODE.MULTI &&\n displayAs === 'advancedSearch' && {\n selectionList,\n readonlyContextList: rawViewMetadata.config.readonlyContextList\n }),\n dataRelationshipContext: rawViewMetadata.config.contextClass && rawViewMetadata.config.name ? rawViewMetadata.config.name : null,\n hideLabel,\n onRecordChange: handleSelection,\n createNewRecord: isCreateNewReferenceEnabled ? createNewRecord : undefined,\n inline\n };\n\n const searchSelectCacheKey = componentCachePersistUtils.getComponentStateKey(getPConnect, rawViewMetadata.config.name);\n\n const dataReferenceAdvancedSearchContext = {\n dataReferenceConfigToChild,\n isCreateNewReferenceEnabled,\n disableStartingFieldsForReference,\n pyID,\n searchSelectCacheKey\n };\n\n if (displayAs === 'advancedSearch') {\n return (\n <DataReferenceAdvancedSearchContext.Provider value={dataReferenceAdvancedSearchContext}>\n <SearchForm getPConnect={getPConnect} searchSelectCacheKey={searchSelectCacheKey}>\n {children}\n </SearchForm>\n </DataReferenceAdvancedSearchContext.Provider>\n );\n }\n\n return firstChildPConnect().createComponent({\n type,\n config: {\n ...getFirstChildConfig({\n firstChildMeta,\n getPConnect,\n rawViewMetadata,\n contextClass,\n dataReferenceConfigToChild,\n isCreateNewReferenceEnabled,\n disableStartingFieldsForReference,\n pyID\n })\n }\n });\n }, [firstChildMeta.config?.datasource?.source, parameters, dropDownDataSource, propsToUse.required, propsToUse.disabled]);\n\n // Only include the views region for rendering when it has content\n if (firstChildMeta?.type !== 'Region') {\n const viewsRegion = rawViewMetadata.children[1];\n if (viewsRegion?.name === 'Views' && viewsRegion.children.length) {\n viewsRegion.children.map(child => {\n child.config.isEmbeddedInDataReference = true;\n return child;\n });\n childrenToRender = [recreatedFirstChild, ...(children as ReactElement[]).slice(1)];\n } else {\n childrenToRender = [recreatedFirstChild];\n }\n } else if (displayAs === 'advancedSearch') {\n childrenToRender = [recreatedFirstChild];\n }\n\n return childrenToRender.length === 1 ? (\n (childrenToRender[0] ?? null)\n ) : (\n <div>\n {childrenToRender.map((child, index) => (\n <React.Fragment key={index}>{child}</React.Fragment>\n ))}\n </div>\n );\n}\n"]}
@@ -899,6 +899,6 @@ export default function ListView(props) {
899
899
  const value = row[column.id];
900
900
  return (_jsx(TableCell, { className: classes.cell, align: column.align, children: processColumnValue(column, value) }, column.id));
901
901
  })] }, row[rowID]));
902
- }) })] }), (!arRows || arRows.length === 0) && (_jsx("div", { className: 'no-records', children: getGenericFieldsLocalizedValue('CosmosFields.fields.lists', 'No records found.') }))] })), arRows && arRows.length > 0 && (_jsx(TablePagination, { id: 'pagination', rowsPerPageOptions: [10, 25, 100], component: 'div', count: arRows.length, rowsPerPage: rowsPerPage, page: page, onPageChange: handleChangePage, onRowsPerPageChange: handleChangeRowsPerPage }))] })), _jsxs(Menu, { id: 'simple-menu', anchorEl: anchorEl, keepMounted: true, open: Boolean(anchorEl), onClose: _menuClose, children: [_jsxs(MenuItem, { onClick: _filterMenu, children: [_jsx(FilterListIcon, {}), " Filter"] }), _jsxs(MenuItem, { onClick: _groupMenu, children: [_jsx(SubjectIcon, {}), " Group"] })] }), _jsxs(Dialog, { open: open, onClose: _closeDialog, "aria-labelledby": 'form-dialog-title', children: [_jsxs(DialogTitle, { id: 'form-dialog-title', children: ["Filter: ", filterBy] }), _jsx(DialogContent, { children: containsDateOrTime ? (_jsxs(_Fragment, { children: [_jsxs(Select, { variant: 'standard', value: displayDialogDateFilter, onChange: _dialogDateFilter, fullWidth: true, children: [_jsx(MenuItem, { value: 'notequal', children: "is not equal to" }), _jsx(MenuItem, { value: 'after', children: "after" }), _jsx(MenuItem, { value: 'before', children: "before" }), _jsx(MenuItem, { value: 'null', children: "is null" }), _jsx(MenuItem, { value: 'notnull', children: "is not null" })] }), filterType === 'Date' && (_jsx(TextField, { variant: 'standard', autoFocus: true, margin: 'dense', id: 'containsFilter', type: 'date', fullWidth: true, value: displayDialogDateValue, onChange: _dialogDateValue })), filterType === 'DateTime' && (_jsx(TextField, { variant: 'standard', autoFocus: true, margin: 'dense', id: 'containsFilter', type: 'datetime-local', fullWidth: true, value: displayDialogDateValue, onChange: _dialogDateValue })), filterType === 'Time' && (_jsx(TextField, { variant: 'standard', autoFocus: true, margin: 'dense', id: 'containsFilter', type: 'time', fullWidth: true, value: displayDialogDateValue, onChange: _dialogDateValue }))] })) : (_jsxs(_Fragment, { children: [_jsxs(Select, { variant: 'standard', fullWidth: true, onChange: _dialogContainsFilter, value: displayDialogContainsFilter, children: [_jsx(MenuItem, { value: 'contains', children: "Contains" }), _jsx(MenuItem, { value: 'equals', children: "Equals" }), _jsx(MenuItem, { value: 'startswith', children: "Starts with" })] }), _jsx(TextField, { variant: 'standard', autoFocus: true, margin: 'dense', id: 'containsFilter', type: 'text', fullWidth: true, value: displayDialogContainsValue, onChange: _dialogContainsValue })] })) }), _jsxs(DialogActions, { children: [_jsx(Button, { onClick: _closeDialog, color: 'secondary', children: "Cancel" }), _jsx(Button, { onClick: _submitFilter, color: 'primary', children: "Submit" })] })] }), _jsx(Snackbar, { open: showSnackbar, autoHideDuration: 3000, onClose: handleSnackbarClose, message: snackbarMessage, action: _jsx(IconButton, { size: 'small', "aria-label": 'close', color: 'inherit', onClick: handleSnackbarClose, children: _jsx(CloseIcon, { fontSize: 'small' }) }) })] }));
902
+ }) })] }), (!arRows || arRows.length === 0) && (_jsx("div", { className: 'no-records', children: getGenericFieldsLocalizedValue('COSMOSFIELDS.lists', 'No records found.') }))] })), arRows && arRows.length > 0 && (_jsx(TablePagination, { id: 'pagination', rowsPerPageOptions: [10, 25, 100], component: 'div', count: arRows.length, rowsPerPage: rowsPerPage, page: page, onPageChange: handleChangePage, onRowsPerPageChange: handleChangeRowsPerPage }))] })), _jsxs(Menu, { id: 'simple-menu', anchorEl: anchorEl, keepMounted: true, open: Boolean(anchorEl), onClose: _menuClose, children: [_jsxs(MenuItem, { onClick: _filterMenu, children: [_jsx(FilterListIcon, {}), " Filter"] }), _jsxs(MenuItem, { onClick: _groupMenu, children: [_jsx(SubjectIcon, {}), " Group"] })] }), _jsxs(Dialog, { open: open, onClose: _closeDialog, "aria-labelledby": 'form-dialog-title', children: [_jsxs(DialogTitle, { id: 'form-dialog-title', children: ["Filter: ", filterBy] }), _jsx(DialogContent, { children: containsDateOrTime ? (_jsxs(_Fragment, { children: [_jsxs(Select, { variant: 'standard', value: displayDialogDateFilter, onChange: _dialogDateFilter, fullWidth: true, children: [_jsx(MenuItem, { value: 'notequal', children: "is not equal to" }), _jsx(MenuItem, { value: 'after', children: "after" }), _jsx(MenuItem, { value: 'before', children: "before" }), _jsx(MenuItem, { value: 'null', children: "is null" }), _jsx(MenuItem, { value: 'notnull', children: "is not null" })] }), filterType === 'Date' && (_jsx(TextField, { variant: 'standard', autoFocus: true, margin: 'dense', id: 'containsFilter', type: 'date', fullWidth: true, value: displayDialogDateValue, onChange: _dialogDateValue })), filterType === 'DateTime' && (_jsx(TextField, { variant: 'standard', autoFocus: true, margin: 'dense', id: 'containsFilter', type: 'datetime-local', fullWidth: true, value: displayDialogDateValue, onChange: _dialogDateValue })), filterType === 'Time' && (_jsx(TextField, { variant: 'standard', autoFocus: true, margin: 'dense', id: 'containsFilter', type: 'time', fullWidth: true, value: displayDialogDateValue, onChange: _dialogDateValue }))] })) : (_jsxs(_Fragment, { children: [_jsxs(Select, { variant: 'standard', fullWidth: true, onChange: _dialogContainsFilter, value: displayDialogContainsFilter, children: [_jsx(MenuItem, { value: 'contains', children: "Contains" }), _jsx(MenuItem, { value: 'equals', children: "Equals" }), _jsx(MenuItem, { value: 'startswith', children: "Starts with" })] }), _jsx(TextField, { variant: 'standard', autoFocus: true, margin: 'dense', id: 'containsFilter', type: 'text', fullWidth: true, value: displayDialogContainsValue, onChange: _dialogContainsValue })] })) }), _jsxs(DialogActions, { children: [_jsx(Button, { onClick: _closeDialog, color: 'secondary', children: "Cancel" }), _jsx(Button, { onClick: _submitFilter, color: 'primary', children: "Submit" })] })] }), _jsx(Snackbar, { open: showSnackbar, autoHideDuration: 3000, onClose: handleSnackbarClose, message: snackbarMessage, action: _jsx(IconButton, { size: 'small', "aria-label": 'close', color: 'inherit', onClick: handleSnackbarClose, children: _jsx(CloseIcon, { fontSize: 'small' }) }) })] }));
903
903
  }
904
904
  //# sourceMappingURL=ListView.js.map