@pega/react-sdk-components 24.2.10 → 24.2.11
This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
- package/lib/components/designSystemExtension/FieldValueList/FieldValueList.js +2 -2
- package/lib/components/designSystemExtension/FieldValueList/FieldValueList.js.map +1 -1
- package/lib/components/field/CancelAlert/CancelAlert.d.ts.map +1 -1
- package/lib/components/field/CancelAlert/CancelAlert.js +1 -4
- package/lib/components/field/CancelAlert/CancelAlert.js.map +1 -1
- package/lib/components/field/Currency/Currency.d.ts.map +1 -1
- package/lib/components/field/Currency/Currency.js +7 -6
- package/lib/components/field/Currency/Currency.js.map +1 -1
- package/lib/components/field/Date/Date.d.ts.map +1 -1
- package/lib/components/field/Date/Date.js +4 -1
- package/lib/components/field/Date/Date.js.map +1 -1
- package/lib/components/field/DateTime/DateTime.d.ts.map +1 -1
- package/lib/components/field/DateTime/DateTime.js +11 -4
- package/lib/components/field/DateTime/DateTime.js.map +1 -1
- package/lib/components/field/Decimal/Decimal.d.ts.map +1 -1
- package/lib/components/field/Decimal/Decimal.js +6 -3
- package/lib/components/field/Decimal/Decimal.js.map +1 -1
- package/lib/components/field/Dropdown/Dropdown.d.ts.map +1 -1
- package/lib/components/field/Dropdown/Dropdown.js +16 -10
- package/lib/components/field/Dropdown/Dropdown.js.map +1 -1
- package/lib/components/field/Percentage/Percentage.d.ts.map +1 -1
- package/lib/components/field/Percentage/Percentage.js +5 -2
- package/lib/components/field/Percentage/Percentage.js.map +1 -1
- package/lib/components/field/RadioButtons/RadioButtons.d.ts.map +1 -1
- package/lib/components/field/RadioButtons/RadioButtons.js +3 -9
- package/lib/components/field/RadioButtons/RadioButtons.js.map +1 -1
- package/lib/components/field/ScalarList/ScalarList.d.ts.map +1 -1
- package/lib/components/field/ScalarList/ScalarList.js +3 -3
- package/lib/components/field/ScalarList/ScalarList.js.map +1 -1
- package/lib/components/field/Time/Time.js +1 -1
- package/lib/components/field/Time/Time.js.map +1 -1
- package/lib/components/field/UserReference/UserReference.d.ts.map +1 -1
- package/lib/components/field/UserReference/UserReference.js +1 -3
- package/lib/components/field/UserReference/UserReference.js.map +1 -1
- package/lib/components/helpers/common-utils.d.ts +7 -0
- package/lib/components/helpers/common-utils.d.ts.map +1 -1
- package/lib/components/helpers/common-utils.js +21 -1
- package/lib/components/helpers/common-utils.js.map +1 -1
- package/lib/components/helpers/formatters/Currency.d.ts.map +1 -1
- package/lib/components/helpers/formatters/Currency.js +12 -15
- package/lib/components/helpers/formatters/Currency.js.map +1 -1
- package/lib/components/helpers/formatters/common.d.ts +2 -2
- package/lib/components/helpers/formatters/common.d.ts.map +1 -1
- package/lib/components/helpers/formatters/common.js +2 -1
- package/lib/components/helpers/formatters/common.js.map +1 -1
- package/lib/components/helpers/formatters/index.d.ts.map +1 -1
- package/lib/components/helpers/formatters/index.js +2 -3
- package/lib/components/helpers/formatters/index.js.map +1 -1
- package/lib/components/helpers/simpleTableHelpers.d.ts +1 -1
- package/lib/components/infra/Assignment/Assignment.d.ts.map +1 -1
- package/lib/components/infra/Assignment/Assignment.js +3 -8
- package/lib/components/infra/Assignment/Assignment.js.map +1 -1
- package/lib/components/infra/Containers/FlowContainer/FlowContainer.d.ts.map +1 -1
- package/lib/components/infra/Containers/FlowContainer/FlowContainer.js +4 -15
- package/lib/components/infra/Containers/FlowContainer/FlowContainer.js.map +1 -1
- package/lib/components/infra/Containers/FlowContainer/helpers.d.ts.map +1 -1
- package/lib/components/infra/Containers/FlowContainer/helpers.js +1 -5
- package/lib/components/infra/Containers/FlowContainer/helpers.js.map +1 -1
- package/lib/components/infra/Containers/ModalViewContainer/ListViewActionButtons/ListViewActionButtons.d.ts.map +1 -1
- package/lib/components/infra/Containers/ModalViewContainer/ListViewActionButtons/ListViewActionButtons.js +3 -1
- package/lib/components/infra/Containers/ModalViewContainer/ListViewActionButtons/ListViewActionButtons.js.map +1 -1
- package/lib/components/infra/Containers/SimpleView/helper.js +1 -1
- package/lib/components/infra/Containers/SimpleView/helper.js.map +1 -1
- package/lib/components/infra/Containers/container-helpers.d.ts +2 -0
- package/lib/components/infra/Containers/container-helpers.d.ts.map +1 -0
- package/lib/components/infra/Containers/{helpers.js → container-helpers.js} +1 -1
- package/lib/components/infra/Containers/container-helpers.js.map +1 -0
- package/lib/components/infra/DashboardFilter/DashboardFilter.d.ts.map +1 -1
- package/lib/components/infra/DashboardFilter/DashboardFilter.js +2 -3
- package/lib/components/infra/DashboardFilter/DashboardFilter.js.map +1 -1
- package/lib/components/infra/DashboardFilter/filterUtils.d.ts.map +1 -1
- package/lib/components/infra/DashboardFilter/filterUtils.js +1 -3
- package/lib/components/infra/DashboardFilter/filterUtils.js.map +1 -1
- package/lib/components/infra/DeferLoad/DeferLoad.d.ts +1 -0
- package/lib/components/infra/DeferLoad/DeferLoad.d.ts.map +1 -1
- package/lib/components/infra/DeferLoad/DeferLoad.js +4 -5
- package/lib/components/infra/DeferLoad/DeferLoad.js.map +1 -1
- package/lib/components/infra/MultiStep/MultiStep.d.ts.map +1 -1
- package/lib/components/infra/MultiStep/MultiStep.js +1 -5
- package/lib/components/infra/MultiStep/MultiStep.js.map +1 -1
- package/lib/components/infra/RootContainer/RootContainer.js +1 -1
- package/lib/components/infra/RootContainer/RootContainer.js.map +1 -1
- package/lib/components/template/AppShell/AppShell.js +6 -6
- package/lib/components/template/AppShell/AppShell.js.map +1 -1
- package/lib/components/template/CaseView/CaseView.d.ts +1 -0
- package/lib/components/template/CaseView/CaseView.d.ts.map +1 -1
- package/lib/components/template/CaseView/CaseView.js +2 -2
- package/lib/components/template/CaseView/CaseView.js.map +1 -1
- package/lib/components/template/Confirmation/Confirmation.js +1 -1
- package/lib/components/template/Confirmation/Confirmation.js.map +1 -1
- package/lib/components/template/Details/DynamicTabs/DynamicTabs.d.ts.map +1 -1
- package/lib/components/template/Details/DynamicTabs/DynamicTabs.js +0 -1
- package/lib/components/template/Details/DynamicTabs/DynamicTabs.js.map +1 -1
- package/lib/components/template/FieldGroupTemplate/FieldGroupTemplate.d.ts.map +1 -1
- package/lib/components/template/FieldGroupTemplate/FieldGroupTemplate.js +0 -2
- package/lib/components/template/FieldGroupTemplate/FieldGroupTemplate.js.map +1 -1
- package/lib/components/template/ListView/ListView.d.ts.map +1 -1
- package/lib/components/template/ListView/ListView.js +2 -4
- package/lib/components/template/ListView/ListView.js.map +1 -1
- package/lib/components/template/ListView/utils.d.ts.map +1 -1
- package/lib/components/template/ListView/utils.js +0 -1
- package/lib/components/template/ListView/utils.js.map +1 -1
- package/lib/components/template/PromotedFilters/PromotedFilters.d.ts.map +1 -1
- package/lib/components/template/PromotedFilters/PromotedFilters.js +0 -1
- package/lib/components/template/PromotedFilters/PromotedFilters.js.map +1 -1
- package/lib/components/template/SimpleTable/SimpleTable/SimpleTable.d.ts.map +1 -1
- package/lib/components/template/SimpleTable/SimpleTable/SimpleTable.js +0 -2
- package/lib/components/template/SimpleTable/SimpleTable/SimpleTable.js.map +1 -1
- package/lib/components/template/SimpleTable/SimpleTableManual/SimpleTableManual.d.ts +2 -0
- package/lib/components/template/SimpleTable/SimpleTableManual/SimpleTableManual.d.ts.map +1 -1
- package/lib/components/template/SimpleTable/SimpleTableManual/SimpleTableManual.js +36 -21
- package/lib/components/template/SimpleTable/SimpleTableManual/SimpleTableManual.js.map +1 -1
- package/lib/components/template/SimpleTable/SimpleTableSelect/SimpleTableSelect.d.ts.map +1 -1
- package/lib/components/template/SimpleTable/SimpleTableSelect/SimpleTableSelect.js +2 -4
- package/lib/components/template/SimpleTable/SimpleTableSelect/SimpleTableSelect.js.map +1 -1
- package/lib/components/widget/Attachment/Attachment.css +1 -0
- package/lib/components/widget/Attachment/Attachment.d.ts.map +1 -1
- package/lib/components/widget/Attachment/Attachment.js +2 -7
- package/lib/components/widget/Attachment/Attachment.js.map +1 -1
- package/lib/components/widget/FileUtility/FileUtility/FileUtility.js +1 -1
- package/lib/components/widget/FileUtility/FileUtility/FileUtility.js.map +1 -1
- package/lib/components/widget/QuickCreate/QuickCreate.d.ts.map +1 -1
- package/lib/components/widget/QuickCreate/QuickCreate.js +0 -1
- package/lib/components/widget/QuickCreate/QuickCreate.js.map +1 -1
- package/lib/components/widget/SummaryItem/SummaryItem.js +1 -1
- package/lib/components/widget/SummaryItem/SummaryItem.js.map +1 -1
- package/lib/components/widget/ToDo/ToDo.js +1 -1
- package/lib/components/widget/ToDo/ToDo.js.map +1 -1
- package/package.json +1 -1
- package/lib/components/infra/Containers/helpers.d.ts +0 -2
- package/lib/components/infra/Containers/helpers.d.ts.map +0 -1
- package/lib/components/infra/Containers/helpers.js.map +0 -1
|
@@ -39,7 +39,6 @@ export const createFilterComponent = (getPConnect, filterMeta, index) => {
|
|
|
39
39
|
}
|
|
40
40
|
let propInfo = PCore.getMetadataUtils().getPropertyMetadata(cleanedName, filterMeta.config.ruleClass);
|
|
41
41
|
if (!propInfo) {
|
|
42
|
-
// @ts-ignore - PCore.getMetadataUtils().getPropertyMetadata - An argument for 'currentClassID' was not provided.
|
|
43
42
|
propInfo = PCore.getMetadataUtils().getPropertyMetadata(cleanedName);
|
|
44
43
|
}
|
|
45
44
|
const { type: propertyType } = propInfo || { type: 'Text' };
|
|
@@ -65,8 +64,7 @@ export const createFilterComponent = (getPConnect, filterMeta, index) => {
|
|
|
65
64
|
export const buildFilterComponents = (getPConnect, allFilters) => {
|
|
66
65
|
const filterComponents = allFilters.children.map((filter, index) => createFilterComponent(getPConnect, filter, index));
|
|
67
66
|
if (filterComponents && filterComponents.length > 0) {
|
|
68
|
-
filterComponents.push(_jsx(Grid, { children: _jsx(Link, { style: { cursor: 'pointer' }, onClick: () => {
|
|
69
|
-
// @ts-ignore - second parameter “payload” for publish method should be optional
|
|
67
|
+
filterComponents.push(_jsx(Grid, { style: { display: 'flex', alignItems: 'center' }, children: _jsx(Link, { style: { cursor: 'pointer' }, onClick: () => {
|
|
70
68
|
PCore.getPubSubUtils().publish(PCore.getConstants().PUB_SUB_EVENTS.EVENT_DASHBOARD_FILTER_CLEAR_ALL);
|
|
71
69
|
}, underline: 'hover', children: "Clear All" }) }));
|
|
72
70
|
}
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"filterUtils.js","sourceRoot":"","sources":["../../../../src/components/infra/DashboardFilter/filterUtils.tsx"],"names":[],"mappings":"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","sourcesContent":["/* eslint-disable prefer-template */\n/** This file contains various utility methods to generate filter components, regionLayout data, filter expressions, etc. */\n\nimport { Grid, Link } from '@mui/material';\n\nimport DashboardFilter from './DashboardFilter';\n\nexport const createFilter = (value, fieldId, comparator = 'EQ') => {\n return {\n condition: {\n lhs: {\n field: fieldId\n },\n comparator,\n rhs: {\n value\n }\n }\n };\n};\n\nexport const combineFilters = (filterList, existingFilters) => {\n if (filterList && filterList.length) {\n // Need to combine them\n if (existingFilters) {\n return { AND: [existingFilters, ...filterList] };\n }\n\n // No existing, just return the one(s) from the list\n if (filterList.length > 1) {\n return { AND: [...filterList] };\n }\n\n return filterList[0];\n }\n\n // No filter list,\n return existingFilters;\n};\n\nexport const createFilterComponent = (getPConnect, filterMeta, index) => {\n const name = filterMeta.config.value.substring(4);\n let cleanedName = name;\n if (name.indexOf('.') !== -1) {\n cleanedName = name.substring(name.indexOf('.') + 1);\n }\n let propInfo: any = PCore.getMetadataUtils().getPropertyMetadata(cleanedName, filterMeta.config.ruleClass);\n if (!propInfo) {\n // @ts-ignore - PCore.getMetadataUtils().getPropertyMetadata - An argument for 'currentClassID' was not provided.\n propInfo = PCore.getMetadataUtils().getPropertyMetadata(cleanedName);\n }\n const { type: propertyType } = propInfo || { type: 'Text' };\n const isNumber = propertyType && (propertyType === 'Decimal' || propertyType === 'Integer');\n filterMeta.isNumber = isNumber;\n const { filterType, datasource } = filterMeta.config;\n const type = filterType || filterMeta.type;\n const filterProp = `.pyDashboardFilter${index}`;\n if (type === 'DateTime') {\n return <DashboardFilter key={name} getPConnect={getPConnect} name={name} filterProp={filterProp} metadata={filterMeta} type={filterMeta.type} />;\n }\n if (datasource && datasource.fields) {\n datasource.fields.key = datasource.fields.value;\n }\n if (filterMeta.config.listType === 'associated' && propInfo && propInfo.datasource) {\n filterMeta.config.datasource = propInfo.datasource.records;\n }\n filterMeta.config.value = `@P ${filterProp}`;\n filterMeta.type = filterMeta.config.displayAs || type;\n filterMeta.config.placeholder = 'ALL';\n return (\n <DashboardFilter key={name} getPConnect={getPConnect} name={name} filterProp={filterProp} metadata={filterMeta} type={filterMeta.type}>\n {getPConnect().createComponent(filterMeta, '', '', {})}\n </DashboardFilter>\n );\n};\n\nexport const buildFilterComponents = (getPConnect, allFilters) => {\n const filterComponents = allFilters.children.map((filter, index) => createFilterComponent(getPConnect, filter, index));\n if (filterComponents && filterComponents.length > 0) {\n filterComponents.push(\n <Grid>\n <Link\n style={{ cursor: 'pointer' }}\n onClick={() => {\n // @ts-ignore - second parameter “payload” for publish method should be optional\n PCore.getPubSubUtils().publish(PCore.getConstants().PUB_SUB_EVENTS.EVENT_DASHBOARD_FILTER_CLEAR_ALL);\n }}\n underline='hover'\n >\n Clear All\n </Link>\n </Grid>\n );\n }\n return filterComponents;\n};\n\nexport const convertDateToGMT = value => {\n const { valueAsISOString: date } = value;\n return date ? date.substring(0, date.indexOf('T')) : date;\n};\n\nexport const getFilterExpression = (filterValue, name, metadata) => {\n if (filterValue === '') {\n return null;\n }\n let comparator = 'EQ';\n if (metadata.type === 'TextInput' && !metadata.isNumber) {\n comparator = 'CONTAINS';\n }\n\n if (metadata.config.filterType && metadata.config.filterType === 'RelativeDates') {\n const fieldSource = metadata.config.datasource.filter(source => source.key === filterValue)[0];\n const relativeDateExpression = JSON.parse(fieldSource.json);\n // eslint-disable-next-line @typescript-eslint/no-unused-vars\n const fields = [\n {\n name: relativeDateExpression.condition.lhs.field,\n type: 'DATE_TIME'\n }\n ];\n return '';\n }\n\n return createFilter(filterValue, name, comparator);\n};\n\n/**\n * Returns ConfigurableLayout mapped content. With pre-populated default layout configs.\n * @returns {object[]} ConfigurableLayout content.\n */\nexport function getLayoutDataFromRegion(regionData) {\n const defaultLayoutConfig = {\n width: 'full',\n fillAvailable: true,\n minWidth: [300, 'px']\n };\n\n return regionData.props\n ?.getPConnect()\n ?.getChildren()\n ?.map((item, index) => {\n const itemPConnect = item?.getPConnect();\n\n return {\n id: itemPConnect?.getComponentName() ? `${itemPConnect.getComponentName()}--${index}` : `item--${index}`,\n content: itemPConnect?.getComponent(),\n layoutConfig: {\n ...defaultLayoutConfig,\n ...itemPConnect?.getConfigProps().layoutConfig\n }\n };\n });\n}\n\nexport const getFormattedDate = date => {\n if (!date) {\n return date;\n }\n return `${date.getFullYear()}-${('0' + (date.getMonth() + 1)).slice(-2)}-${('0' + date.getDate()).slice(-2)}`;\n};\n"]}
|
|
1
|
+
{"version":3,"file":"filterUtils.js","sourceRoot":"","sources":["../../../../src/components/infra/DashboardFilter/filterUtils.tsx"],"names":[],"mappings":"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","sourcesContent":["/* eslint-disable prefer-template */\n/** This file contains various utility methods to generate filter components, regionLayout data, filter expressions, etc. */\n\nimport { Grid, Link } from '@mui/material';\n\nimport DashboardFilter from './DashboardFilter';\n\nexport const createFilter = (value, fieldId, comparator = 'EQ') => {\n return {\n condition: {\n lhs: {\n field: fieldId\n },\n comparator,\n rhs: {\n value\n }\n }\n };\n};\n\nexport const combineFilters = (filterList, existingFilters) => {\n if (filterList && filterList.length) {\n // Need to combine them\n if (existingFilters) {\n return { AND: [existingFilters, ...filterList] };\n }\n\n // No existing, just return the one(s) from the list\n if (filterList.length > 1) {\n return { AND: [...filterList] };\n }\n\n return filterList[0];\n }\n\n // No filter list,\n return existingFilters;\n};\n\nexport const createFilterComponent = (getPConnect, filterMeta, index) => {\n const name = filterMeta.config.value.substring(4);\n let cleanedName = name;\n if (name.indexOf('.') !== -1) {\n cleanedName = name.substring(name.indexOf('.') + 1);\n }\n let propInfo: any = PCore.getMetadataUtils().getPropertyMetadata(cleanedName, filterMeta.config.ruleClass);\n if (!propInfo) {\n propInfo = PCore.getMetadataUtils().getPropertyMetadata(cleanedName);\n }\n const { type: propertyType } = propInfo || { type: 'Text' };\n const isNumber = propertyType && (propertyType === 'Decimal' || propertyType === 'Integer');\n filterMeta.isNumber = isNumber;\n const { filterType, datasource } = filterMeta.config;\n const type = filterType || filterMeta.type;\n const filterProp = `.pyDashboardFilter${index}`;\n if (type === 'DateTime') {\n return <DashboardFilter key={name} getPConnect={getPConnect} name={name} filterProp={filterProp} metadata={filterMeta} type={filterMeta.type} />;\n }\n if (datasource && datasource.fields) {\n datasource.fields.key = datasource.fields.value;\n }\n if (filterMeta.config.listType === 'associated' && propInfo && propInfo.datasource) {\n filterMeta.config.datasource = propInfo.datasource.records;\n }\n filterMeta.config.value = `@P ${filterProp}`;\n filterMeta.type = filterMeta.config.displayAs || type;\n filterMeta.config.placeholder = 'ALL';\n return (\n <DashboardFilter key={name} getPConnect={getPConnect} name={name} filterProp={filterProp} metadata={filterMeta} type={filterMeta.type}>\n {getPConnect().createComponent(filterMeta, '', '', {})}\n </DashboardFilter>\n );\n};\n\nexport const buildFilterComponents = (getPConnect, allFilters) => {\n const filterComponents = allFilters.children.map((filter, index) => createFilterComponent(getPConnect, filter, index));\n if (filterComponents && filterComponents.length > 0) {\n filterComponents.push(\n <Grid style={{ display: 'flex', alignItems: 'center' }}>\n <Link\n style={{ cursor: 'pointer' }}\n onClick={() => {\n PCore.getPubSubUtils().publish(PCore.getConstants().PUB_SUB_EVENTS.EVENT_DASHBOARD_FILTER_CLEAR_ALL);\n }}\n underline='hover'\n >\n Clear All\n </Link>\n </Grid>\n );\n }\n return filterComponents;\n};\n\nexport const convertDateToGMT = value => {\n const { valueAsISOString: date } = value;\n return date ? date.substring(0, date.indexOf('T')) : date;\n};\n\nexport const getFilterExpression = (filterValue, name, metadata) => {\n if (filterValue === '') {\n return null;\n }\n let comparator = 'EQ';\n if (metadata.type === 'TextInput' && !metadata.isNumber) {\n comparator = 'CONTAINS';\n }\n\n if (metadata.config.filterType && metadata.config.filterType === 'RelativeDates') {\n const fieldSource = metadata.config.datasource.filter(source => source.key === filterValue)[0];\n const relativeDateExpression = JSON.parse(fieldSource.json);\n // eslint-disable-next-line @typescript-eslint/no-unused-vars\n const fields = [\n {\n name: relativeDateExpression.condition.lhs.field,\n type: 'DATE_TIME'\n }\n ];\n return '';\n }\n\n return createFilter(filterValue, name, comparator);\n};\n\n/**\n * Returns ConfigurableLayout mapped content. With pre-populated default layout configs.\n * @returns {object[]} ConfigurableLayout content.\n */\nexport function getLayoutDataFromRegion(regionData) {\n const defaultLayoutConfig = {\n width: 'full',\n fillAvailable: true,\n minWidth: [300, 'px']\n };\n\n return regionData.props\n ?.getPConnect()\n ?.getChildren()\n ?.map((item, index) => {\n const itemPConnect = item?.getPConnect();\n\n return {\n id: itemPConnect?.getComponentName() ? `${itemPConnect.getComponentName()}--${index}` : `item--${index}`,\n content: itemPConnect?.getComponent(),\n layoutConfig: {\n ...defaultLayoutConfig,\n ...itemPConnect?.getConfigProps().layoutConfig\n }\n };\n });\n}\n\nexport const getFormattedDate = date => {\n if (!date) {\n return date;\n }\n return `${date.getFullYear()}-${('0' + (date.getMonth() + 1)).slice(-2)}-${('0' + date.getDate()).slice(-2)}`;\n};\n"]}
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"DeferLoad.d.ts","sourceRoot":"","sources":["../../../../src/components/infra/DeferLoad/DeferLoad.tsx"],"names":[],"mappings":"AAMA,OAAO,EAAE,UAAU,EAAE,MAAM,2BAA2B,CAAC;AAEvD,UAAU,cAAe,SAAQ,UAAU;IAEzC,IAAI,EAAE,MAAM,CAAC;IACb,gBAAgB,CAAC,EAAE,OAAO,CAAC;IAC3B,KAAK,EAAE,OAAO,CAAC;IACf,WAAW,EAAE,MAAM,CAAC;
|
|
1
|
+
{"version":3,"file":"DeferLoad.d.ts","sourceRoot":"","sources":["../../../../src/components/infra/DeferLoad/DeferLoad.tsx"],"names":[],"mappings":"AAMA,OAAO,EAAE,UAAU,EAAE,MAAM,2BAA2B,CAAC;AAEvD,UAAU,cAAe,SAAQ,UAAU;IAEzC,IAAI,EAAE,MAAM,CAAC;IACb,gBAAgB,CAAC,EAAE,OAAO,CAAC;IAC3B,KAAK,EAAE,OAAO,CAAC;IACf,WAAW,EAAE,MAAM,CAAC;IACpB,kBAAkB,EAAE,GAAG,CAAC;CACzB;AAqBD,MAAM,CAAC,OAAO,UAAU,SAAS,CAAC,KAAK,EAAE,cAAc,OAqItD"}
|
|
@@ -21,7 +21,7 @@ const useStyles = makeStyles(theme => ({
|
|
|
21
21
|
}
|
|
22
22
|
}));
|
|
23
23
|
export default function DeferLoad(props) {
|
|
24
|
-
const { getPConnect, name, deferLoadId, isTab } = props;
|
|
24
|
+
const { getPConnect, name, deferLoadId, isTab, lastUpdateCaseTime } = props;
|
|
25
25
|
const [content, setContent] = useState(null);
|
|
26
26
|
const [isLoading, setLoading] = useState(true);
|
|
27
27
|
const [currentLoadedAssignment, setCurrentLoadedAssignment] = useState('');
|
|
@@ -49,8 +49,8 @@ export default function DeferLoad(props) {
|
|
|
49
49
|
const getViewOptions = () => ({
|
|
50
50
|
viewContext: resourceType,
|
|
51
51
|
pageClass: loadViewCaseID ? '' : pConnect.getDataObject('').pyPortal.classID,
|
|
52
|
-
container: isContainerPreview ? 'preview' :
|
|
53
|
-
containerName: isContainerPreview ? 'preview' :
|
|
52
|
+
container: isContainerPreview ? 'preview' : undefined,
|
|
53
|
+
containerName: isContainerPreview ? 'preview' : undefined,
|
|
54
54
|
updateData: isContainerPreview
|
|
55
55
|
});
|
|
56
56
|
const onResponse = data => {
|
|
@@ -83,7 +83,6 @@ export default function DeferLoad(props) {
|
|
|
83
83
|
getPConnect()
|
|
84
84
|
.getActionsApi()
|
|
85
85
|
.showData(name, dataContext, dataContextParameters, {
|
|
86
|
-
// @ts-ignore - Type 'boolean' is not assignable to type 'string'
|
|
87
86
|
skipSemanticUrl: true,
|
|
88
87
|
// @ts-ignore
|
|
89
88
|
isDeferLoaded: true
|
|
@@ -118,7 +117,7 @@ export default function DeferLoad(props) {
|
|
|
118
117
|
console.log(`deferload: ${error}`);
|
|
119
118
|
});
|
|
120
119
|
}
|
|
121
|
-
}, [name, getPConnect, currentLoadedAssignment]);
|
|
120
|
+
}, [name, getPConnect, currentLoadedAssignment, lastUpdateCaseTime]);
|
|
122
121
|
/* TODO Cosmos need to handle for now added a wrapper div with pos relative */
|
|
123
122
|
let deferLoadContent;
|
|
124
123
|
if (isLoading) {
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"DeferLoad.js","sourceRoot":"","sources":["../../../../src/components/infra/DeferLoad/DeferLoad.tsx"],"names":[],"mappings":"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","sourcesContent":["import { useState, useEffect, createElement } from 'react';\nimport { Box, Card, CircularProgress } from '@mui/material';\nimport makeStyles from '@mui/styles/makeStyles';\n\nimport createPConnectComponent from '../../../bridge/react_pconnect';\n\nimport { PConnProps } from '../../../types/PConnProps';\n\ninterface DeferLoadProps extends PConnProps {\n // If any, enter additional props that only exist on this component\n name: string;\n isChildDeferLoad?: boolean;\n isTab: boolean;\n deferLoadId: string;\n}\n\n//\n// WARNING: It is not expected that this file should be modified. It is part of infrastructure code that works with\n// Redux and creation/update of Redux containers and PConnect. Modifying this code could have undesireable results and\n// is totally at your own risk.\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}));\n\nexport default function DeferLoad(props: DeferLoadProps) {\n const { getPConnect, name, deferLoadId, isTab } = props;\n const [content, setContent] = useState<any>(null);\n const [isLoading, setLoading] = useState(true);\n const [currentLoadedAssignment, setCurrentLoadedAssignment] = useState('');\n\n const classes = useStyles();\n\n const pConnect = getPConnect();\n const constants = PCore.getConstants();\n\n const theRequestedAssignment = pConnect.getValue(PCore.getConstants().CASE_INFO.ASSIGNMENT_LABEL, ''); // 2nd arg empty string until typedef allows optional\n if (theRequestedAssignment !== currentLoadedAssignment) {\n // console.log(`DeferLoad: currentLoadedAssignment about to change from ${currentLoadedAssignment} to ${theRequestedAssignment}`);\n setCurrentLoadedAssignment(theRequestedAssignment);\n }\n\n const { CASE, PAGE, DATA } = constants.RESOURCE_TYPES;\n const loadViewCaseID = pConnect.getValue(constants.PZINSKEY, '') || pConnect.getValue(constants.CASE_INFO.CASE_INFO_ID, ''); // 2nd arg empty string until typedef allows optional\n let containerName;\n let containerItemData;\n const targetName = pConnect.getTarget();\n if (targetName) {\n containerName = PCore.getContainerUtils().getActiveContainerItemName(targetName);\n\n containerItemData = PCore.getContainerUtils().getContainerItemData(targetName, containerName);\n }\n\n const { resourceType = CASE } = containerItemData || {\n resourceType: loadViewCaseID ? CASE : PAGE\n };\n const isContainerPreview = /preview_[0-9]*/g.test(pConnect.getContextName());\n\n const getViewOptions = () => ({\n viewContext: resourceType,\n pageClass: loadViewCaseID ? '' : (pConnect.getDataObject('') as any).pyPortal.classID, // 2nd arg empty string until typedef allows optional\n container: isContainerPreview ? 'preview' : null,\n containerName: isContainerPreview ? 'preview' : null,\n updateData: isContainerPreview\n });\n\n const onResponse = data => {\n setLoading(false);\n if (deferLoadId) {\n PCore.getDeferLoadManager().start(\n name,\n getPConnect().getCaseInfo().getKey(),\n getPConnect().getPageReference().replace('caseInfo.content', ''),\n getPConnect().getContextName(),\n deferLoadId\n );\n }\n\n if (data && !(data.type && data.type === 'error')) {\n const config = {\n meta: data,\n options: {\n context: pConnect.getContextName(),\n pageReference: pConnect.getPageReference()\n }\n };\n const configObject = PCore.createPConnect(config);\n configObject.getPConnect().setInheritedProp('displayMode', 'DISPLAY_ONLY');\n setContent(createElement(createPConnectComponent(), configObject));\n if (deferLoadId) {\n PCore.getDeferLoadManager().stop(deferLoadId, getPConnect().getContextName());\n }\n }\n };\n\n useEffect(() => {\n if (resourceType === DATA) {\n // Rendering defer loaded tabs in data context\n if (containerName) {\n const dataContext = PCore.getStoreValue('.dataContext', 'dataInfo', containerName);\n const dataContextParameters = PCore.getStoreValue('.dataContextParameters', 'dataInfo', containerName);\n\n getPConnect()\n .getActionsApi()\n .showData(name, dataContext, dataContextParameters, {\n // @ts-ignore - Type 'boolean' is not assignable to type 'string'\n skipSemanticUrl: true,\n // @ts-ignore\n isDeferLoaded: true\n })\n .then(data => {\n onResponse(data);\n });\n } else {\n // eslint-disable-next-line no-console\n console.error('Cannot load the defer loaded view without container information');\n }\n } else if (resourceType === PAGE) {\n // Rendering defer loaded tabs in case/ page context\n getPConnect()\n .getActionsApi()\n .loadView(encodeURI(loadViewCaseID), name, getViewOptions())\n .then(data => {\n onResponse(data);\n });\n } else {\n getPConnect()\n .getActionsApi()\n .refreshCaseView(encodeURI(loadViewCaseID), name, '') // 3rd arg empty string until typedef allows optional\n .then((data: any) => {\n onResponse(data.root);\n })\n .catch(error => {\n // eslint-disable-next-line no-console\n console.log(`deferload: ${error}`);\n });\n }\n }, [name, getPConnect, currentLoadedAssignment]);\n /* TODO Cosmos need to handle for now added a wrapper div with pos relative */\n let deferLoadContent;\n if (isLoading) {\n deferLoadContent = (\n <div style={{ position: 'relative', height: '100px' }}>\n <Box textAlign='center'>\n <CircularProgress />\n </Box>\n </div>\n );\n } else {\n deferLoadContent = !isTab ? (\n <div className={classes.root}>{content}</div>\n ) : (\n <Card id='DeferLoad' className={classes.root}>\n <>{content}</>\n </Card>\n );\n }\n\n return deferLoadContent;\n}\n"]}
|
|
1
|
+
{"version":3,"file":"DeferLoad.js","sourceRoot":"","sources":["../../../../src/components/infra/DeferLoad/DeferLoad.tsx"],"names":[],"mappings":"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","sourcesContent":["import { useState, useEffect, createElement } from 'react';\nimport { Box, Card, CircularProgress } from '@mui/material';\nimport makeStyles from '@mui/styles/makeStyles';\n\nimport createPConnectComponent from '../../../bridge/react_pconnect';\n\nimport { PConnProps } from '../../../types/PConnProps';\n\ninterface DeferLoadProps extends PConnProps {\n // If any, enter additional props that only exist on this component\n name: string;\n isChildDeferLoad?: boolean;\n isTab: boolean;\n deferLoadId: string;\n lastUpdateCaseTime: any;\n}\n\n//\n// WARNING: It is not expected that this file should be modified. It is part of infrastructure code that works with\n// Redux and creation/update of Redux containers and PConnect. Modifying this code could have undesireable results and\n// is totally at your own risk.\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}));\n\nexport default function DeferLoad(props: DeferLoadProps) {\n const { getPConnect, name, deferLoadId, isTab, lastUpdateCaseTime } = props;\n const [content, setContent] = useState<any>(null);\n const [isLoading, setLoading] = useState(true);\n const [currentLoadedAssignment, setCurrentLoadedAssignment] = useState('');\n\n const classes = useStyles();\n\n const pConnect = getPConnect();\n const constants = PCore.getConstants();\n\n const theRequestedAssignment = pConnect.getValue(PCore.getConstants().CASE_INFO.ASSIGNMENT_LABEL, ''); // 2nd arg empty string until typedef allows optional\n if (theRequestedAssignment !== currentLoadedAssignment) {\n // console.log(`DeferLoad: currentLoadedAssignment about to change from ${currentLoadedAssignment} to ${theRequestedAssignment}`);\n setCurrentLoadedAssignment(theRequestedAssignment);\n }\n\n const { CASE, PAGE, DATA } = constants.RESOURCE_TYPES;\n const loadViewCaseID = pConnect.getValue(constants.PZINSKEY, '') || pConnect.getValue(constants.CASE_INFO.CASE_INFO_ID, ''); // 2nd arg empty string until typedef allows optional\n let containerName;\n let containerItemData;\n const targetName = pConnect.getTarget();\n if (targetName) {\n containerName = PCore.getContainerUtils().getActiveContainerItemName(targetName);\n\n containerItemData = PCore.getContainerUtils().getContainerItemData(targetName, containerName);\n }\n\n const { resourceType = CASE } = containerItemData || {\n resourceType: loadViewCaseID ? CASE : PAGE\n };\n const isContainerPreview = /preview_[0-9]*/g.test(pConnect.getContextName());\n\n const getViewOptions = () => ({\n viewContext: resourceType,\n pageClass: loadViewCaseID ? '' : (pConnect.getDataObject('') as any).pyPortal.classID, // 2nd arg empty string until typedef allows optional\n container: isContainerPreview ? 'preview' : undefined,\n containerName: isContainerPreview ? 'preview' : undefined,\n updateData: isContainerPreview\n });\n\n const onResponse = data => {\n setLoading(false);\n if (deferLoadId) {\n PCore.getDeferLoadManager().start(\n name,\n getPConnect().getCaseInfo().getKey(),\n getPConnect().getPageReference().replace('caseInfo.content', ''),\n getPConnect().getContextName(),\n deferLoadId\n );\n }\n\n if (data && !(data.type && data.type === 'error')) {\n const config = {\n meta: data,\n options: {\n context: pConnect.getContextName(),\n pageReference: pConnect.getPageReference()\n }\n };\n const configObject = PCore.createPConnect(config);\n configObject.getPConnect().setInheritedProp('displayMode', 'DISPLAY_ONLY');\n setContent(createElement(createPConnectComponent(), configObject));\n if (deferLoadId) {\n PCore.getDeferLoadManager().stop(deferLoadId, getPConnect().getContextName());\n }\n }\n };\n\n useEffect(() => {\n if (resourceType === DATA) {\n // Rendering defer loaded tabs in data context\n if (containerName) {\n const dataContext = PCore.getStoreValue('.dataContext', 'dataInfo', containerName);\n const dataContextParameters = PCore.getStoreValue('.dataContextParameters', 'dataInfo', containerName);\n\n getPConnect()\n .getActionsApi()\n .showData(name, dataContext, dataContextParameters, {\n skipSemanticUrl: true,\n // @ts-ignore\n isDeferLoaded: true\n })\n .then(data => {\n onResponse(data);\n });\n } else {\n // eslint-disable-next-line no-console\n console.error('Cannot load the defer loaded view without container information');\n }\n } else if (resourceType === PAGE) {\n // Rendering defer loaded tabs in case/ page context\n getPConnect()\n .getActionsApi()\n .loadView(encodeURI(loadViewCaseID), name, getViewOptions())\n .then(data => {\n onResponse(data);\n });\n } else {\n getPConnect()\n .getActionsApi()\n .refreshCaseView(encodeURI(loadViewCaseID), name, '') // 3rd arg empty string until typedef allows optional\n .then((data: any) => {\n onResponse(data.root);\n })\n .catch(error => {\n // eslint-disable-next-line no-console\n console.log(`deferload: ${error}`);\n });\n }\n }, [name, getPConnect, currentLoadedAssignment, lastUpdateCaseTime]);\n /* TODO Cosmos need to handle for now added a wrapper div with pos relative */\n let deferLoadContent;\n if (isLoading) {\n deferLoadContent = (\n <div style={{ position: 'relative', height: '100px' }}>\n <Box textAlign='center'>\n <CircularProgress />\n </Box>\n </div>\n );\n } else {\n deferLoadContent = !isTab ? (\n <div className={classes.root}>{content}</div>\n ) : (\n <Card id='DeferLoad' className={classes.root}>\n <>{content}</>\n </Card>\n );\n }\n\n return deferLoadContent;\n}\n"]}
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"MultiStep.d.ts","sourceRoot":"","sources":["../../../../src/components/infra/MultiStep/MultiStep.tsx"],"names":[],"mappings":"AAAA,OAAc,EAAE,iBAAiB,EAAE,MAAM,OAAO,CAAC;AAGjD,OAAO,EAAE,UAAU,EAAE,MAAM,2BAA2B,CAAC;AAEvD,OAAO,iBAAiB,CAAC;AAEzB,UAAU,cAAe,SAAQ,UAAU;IAEzC,OAAO,EAAE,MAAM,CAAC;IAChB,aAAa,EAAE,GAAG,EAAE,CAAC;IACrB,aAAa,EAAE,GAAG,CAAC;IACnB,WAAW,EAAE,OAAO,CAAC;IACrB,iBAAiB,EAAE,GAAG,CAAC;CACxB;AAED,MAAM,CAAC,OAAO,UAAU,SAAS,CAAC,KAAK,EAAE,iBAAiB,CAAC,cAAc,CAAC,
|
|
1
|
+
{"version":3,"file":"MultiStep.d.ts","sourceRoot":"","sources":["../../../../src/components/infra/MultiStep/MultiStep.tsx"],"names":[],"mappings":"AAAA,OAAc,EAAE,iBAAiB,EAAE,MAAM,OAAO,CAAC;AAGjD,OAAO,EAAE,UAAU,EAAE,MAAM,2BAA2B,CAAC;AAEvD,OAAO,iBAAiB,CAAC;AAEzB,UAAU,cAAe,SAAQ,UAAU;IAEzC,OAAO,EAAE,MAAM,CAAC;IAChB,aAAa,EAAE,GAAG,EAAE,CAAC;IACrB,aAAa,EAAE,GAAG,CAAC;IACnB,WAAW,EAAE,OAAO,CAAC;IACrB,iBAAiB,EAAE,GAAG,CAAC;CACxB;AAED,MAAM,CAAC,OAAO,UAAU,SAAS,CAAC,KAAK,EAAE,iBAAiB,CAAC,cAAc,CAAC,2CA+KzE"}
|
|
@@ -45,11 +45,7 @@ export default function MultiStep(props) {
|
|
|
45
45
|
return 'psdk-horizontal-step-label';
|
|
46
46
|
}
|
|
47
47
|
function _showHLine(index) {
|
|
48
|
-
|
|
49
|
-
if (index < arNavigationSteps.length - 1) {
|
|
50
|
-
return true;
|
|
51
|
-
}
|
|
52
|
-
return false;
|
|
48
|
+
return index < arNavigationSteps.length - 1;
|
|
53
49
|
}
|
|
54
50
|
function buttonPress(sAction, sButtonType) {
|
|
55
51
|
onButtonPress(sAction, sButtonType);
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"MultiStep.js","sourceRoot":"","sources":["../../../../src/components/infra/MultiStep/MultiStep.tsx"],"names":[],"mappings":"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","sourcesContent":["import React, { PropsWithChildren } from 'react';\n\nimport { getComponentFromMap } from '../../../bridge/helpers/sdk_component_map';\nimport { PConnProps } from '../../../types/PConnProps';\n\nimport './MultiStep.css';\n\ninterface MultiStepProps extends PConnProps {\n // If any, enter additional props that only exist on this component\n itemKey: string;\n actionButtons: any[];\n onButtonPress: any;\n bIsVertical: boolean;\n arNavigationSteps: any;\n}\n\nexport default function MultiStep(props: PropsWithChildren<MultiStepProps>) {\n // Get emitted components from map (so we can get any override that may exist)\n const AssignmentCard = getComponentFromMap('AssignmentCard');\n\n const { getPConnect, children, itemKey = '', actionButtons, onButtonPress } = props;\n const { bIsVertical, arNavigationSteps } = props;\n\n let currentStep = arNavigationSteps.find(({ visited_status: vs }) => vs === 'current');\n if (!currentStep) {\n const lastActiveStepIndex = arNavigationSteps.findLastIndex(({ visited_status: vs }) => vs === 'success');\n currentStep = arNavigationSteps[lastActiveStepIndex >= 0 ? lastActiveStepIndex : 0];\n }\n\n // const svgCurrent = Utils.getImageSrc(\"circle-solid\", Utils.getSDKStaticConentUrl());\n // const svgNotCurrent = Utils.getImageSrc(\"circle-solid\", Utils.getSDKStaticConentUrl());\n\n function _getVIconClass(status): string {\n if (status === 'current') {\n return 'psdk-vertical-step-icon-selected';\n }\n\n return 'psdk-vertical-step-icon';\n }\n\n function _getVLabelClass(status): string {\n if (status === 'current') {\n return 'psdk-vertical-step-label-selected';\n }\n\n return 'psdk-vertical-step-label';\n }\n\n function _getVBodyClass(index: number): string {\n if (index < arNavigationSteps.length - 1) {\n return 'psdk-vertical-step-body psdk-vertical-step-line';\n }\n\n return 'psdk-vertical-step-body';\n }\n\n function _getHIconClass(step): string {\n if (step.ID === currentStep?.ID) {\n return 'psdk-horizontal-step-icon-selected';\n }\n\n return 'psdk-horizontal-step-icon';\n }\n\n function _getHLabelClass(step): string {\n if (step.ID === currentStep?.ID) {\n return 'psdk-horizontal-step-label-selected';\n }\n\n return 'psdk-horizontal-step-label';\n }\n\n function _showHLine(index: number): boolean {\n // eslint-disable-next-line sonarjs/prefer-single-boolean-return\n if (index < arNavigationSteps.length - 1) {\n return true;\n }\n\n return false;\n }\n\n function buttonPress(sAction: string, sButtonType: string) {\n onButtonPress(sAction, sButtonType);\n }\n\n return (\n <div>\n {bIsVertical ? (\n <div className='psdk-vertical-stepper'>\n {arNavigationSteps.map((mainStep, index) => {\n return (\n <React.Fragment key={mainStep.actionID}>\n <div className='psdk-vertical-step'>\n <div className='psdk-vertical-step-header'>\n <div className={_getVIconClass(mainStep.visited_status)}>\n <div className='psdk-vertical-step-icon-content'>\n <span>{index + 1}</span>\n </div>\n </div>\n <div className={_getVLabelClass(mainStep.visited_status)}>{mainStep.name}</div>\n </div>\n <div className={_getVBodyClass(index)}>\n {mainStep?.steps && (\n <ul\n style={{\n paddingInlineStart: '0rem',\n marginLeft: '-7px'\n }}\n >\n {mainStep.steps.forEach(subStep => {\n <li className='psdk-sub-step-list'>\n <div style={{ display: 'inline-flex' }}>\n {subStep.visited_status === 'current' && <img className='psdk-current-svg-icon' src='{svgCurrent}' />}\n {subStep.visited_status !== 'current' && <img className='psdk-not-current-svg-icon' src='{svgNotCurrent}' />}\n {subStep.visited_status === 'current' && <label className='psdk-sub-step-current'>{subStep.name}</label>}\n {subStep.visited_status !== 'current' && <label className='psdk-sub-step-not-current'>{subStep.name}</label>}\n </div>\n {subStep.visited_status === 'current' && (\n <div>\n <AssignmentCard getPConnect={getPConnect} itemKey={itemKey} actionButtons={actionButtons} onButtonPress={buttonPress}>\n {children}\n </AssignmentCard>\n </div>\n )}\n </li>;\n })}\n </ul>\n )}\n {!mainStep?.steps && mainStep.visited_status === 'current' && (\n <AssignmentCard getPConnect={getPConnect} itemKey={itemKey} actionButtons={actionButtons} onButtonPress={buttonPress}>\n {children}\n </AssignmentCard>\n )}\n </div>\n </div>\n </React.Fragment>\n );\n })}\n </div>\n ) : (\n <div className='psdk-horizontal-stepper'>\n <div className='psdk-horizontal-stepper-header-container'>\n {arNavigationSteps.map((mainStep, index) => {\n return (\n <React.Fragment key={mainStep.actionID}>\n <div className='psdk-horizontal-step-header'>\n <div className={_getHIconClass(mainStep)}>\n <div className='psdk-horizontal-step-icon-content'>\n <span>{index + 1}</span>\n </div>\n </div>\n <div className={_getHLabelClass(mainStep)}>\n <div className='psdk-horizontal-step-text-label' id='selected-label'>\n {mainStep.name}\n </div>\n </div>\n </div>\n {_showHLine(index) && <div className='psdk-horizontal-step-line' />}\n </React.Fragment>\n );\n })}\n </div>\n {arNavigationSteps.map(mainStep => {\n return (\n <React.Fragment key={mainStep.actionID}>\n {mainStep.steps && (\n <ul style={{ paddingInlineStart: '0rem', marginLeft: '35px' }}>\n {mainStep.steps.map(subStep => (\n <li className='psdk-sub-step-list'>\n <div style={{ display: 'inline-flex' }}>\n {subStep.visited_status === 'current' && <img className='psdk-current-svg-icon' src='{svgCurrent}' />}\n {subStep.visited_status !== 'current' && <img className='psdk-not-current-svg-icon' src='{svgNotCurrent}' />}\n {subStep.visited_status === 'current' && <label className='psdk-sub-step-current'>{subStep.name}</label>}\n {subStep.visited_status !== 'current' && <label className='psdk-sub-step-not-current'>{subStep.name}</label>}\n </div>\n {subStep.visited_status === 'current' && (\n <AssignmentCard getPConnect={getPConnect} itemKey={itemKey} actionButtons={actionButtons} onButtonPress={buttonPress}>\n {children}\n </AssignmentCard>\n )}\n </li>\n ))}\n </ul>\n )}\n {!mainStep?.steps && mainStep.ID === currentStep?.ID && (\n <AssignmentCard getPConnect={getPConnect} itemKey={itemKey} actionButtons={actionButtons} onButtonPress={buttonPress}>\n {children}\n </AssignmentCard>\n )}\n </React.Fragment>\n );\n })}\n </div>\n )}\n </div>\n );\n}\n"]}
|
|
1
|
+
{"version":3,"file":"MultiStep.js","sourceRoot":"","sources":["../../../../src/components/infra/MultiStep/MultiStep.tsx"],"names":[],"mappings":"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","sourcesContent":["import React, { PropsWithChildren } from 'react';\n\nimport { getComponentFromMap } from '../../../bridge/helpers/sdk_component_map';\nimport { PConnProps } from '../../../types/PConnProps';\n\nimport './MultiStep.css';\n\ninterface MultiStepProps extends PConnProps {\n // If any, enter additional props that only exist on this component\n itemKey: string;\n actionButtons: any[];\n onButtonPress: any;\n bIsVertical: boolean;\n arNavigationSteps: any;\n}\n\nexport default function MultiStep(props: PropsWithChildren<MultiStepProps>) {\n // Get emitted components from map (so we can get any override that may exist)\n const AssignmentCard = getComponentFromMap('AssignmentCard');\n\n const { getPConnect, children, itemKey = '', actionButtons, onButtonPress } = props;\n const { bIsVertical, arNavigationSteps } = props;\n\n let currentStep = arNavigationSteps.find(({ visited_status: vs }) => vs === 'current');\n if (!currentStep) {\n const lastActiveStepIndex = arNavigationSteps.findLastIndex(({ visited_status: vs }) => vs === 'success');\n currentStep = arNavigationSteps[lastActiveStepIndex >= 0 ? lastActiveStepIndex : 0];\n }\n\n // const svgCurrent = Utils.getImageSrc(\"circle-solid\", Utils.getSDKStaticConentUrl());\n // const svgNotCurrent = Utils.getImageSrc(\"circle-solid\", Utils.getSDKStaticConentUrl());\n\n function _getVIconClass(status): string {\n if (status === 'current') {\n return 'psdk-vertical-step-icon-selected';\n }\n\n return 'psdk-vertical-step-icon';\n }\n\n function _getVLabelClass(status): string {\n if (status === 'current') {\n return 'psdk-vertical-step-label-selected';\n }\n\n return 'psdk-vertical-step-label';\n }\n\n function _getVBodyClass(index: number): string {\n if (index < arNavigationSteps.length - 1) {\n return 'psdk-vertical-step-body psdk-vertical-step-line';\n }\n\n return 'psdk-vertical-step-body';\n }\n\n function _getHIconClass(step): string {\n if (step.ID === currentStep?.ID) {\n return 'psdk-horizontal-step-icon-selected';\n }\n\n return 'psdk-horizontal-step-icon';\n }\n\n function _getHLabelClass(step): string {\n if (step.ID === currentStep?.ID) {\n return 'psdk-horizontal-step-label-selected';\n }\n\n return 'psdk-horizontal-step-label';\n }\n\n function _showHLine(index: number): boolean {\n return index < arNavigationSteps.length - 1;\n }\n\n function buttonPress(sAction: string, sButtonType: string) {\n onButtonPress(sAction, sButtonType);\n }\n\n return (\n <div>\n {bIsVertical ? (\n <div className='psdk-vertical-stepper'>\n {arNavigationSteps.map((mainStep, index) => {\n return (\n <React.Fragment key={mainStep.actionID}>\n <div className='psdk-vertical-step'>\n <div className='psdk-vertical-step-header'>\n <div className={_getVIconClass(mainStep.visited_status)}>\n <div className='psdk-vertical-step-icon-content'>\n <span>{index + 1}</span>\n </div>\n </div>\n <div className={_getVLabelClass(mainStep.visited_status)}>{mainStep.name}</div>\n </div>\n <div className={_getVBodyClass(index)}>\n {mainStep?.steps && (\n <ul\n style={{\n paddingInlineStart: '0rem',\n marginLeft: '-7px'\n }}\n >\n {mainStep.steps.forEach(subStep => {\n <li className='psdk-sub-step-list'>\n <div style={{ display: 'inline-flex' }}>\n {subStep.visited_status === 'current' && <img className='psdk-current-svg-icon' src='{svgCurrent}' />}\n {subStep.visited_status !== 'current' && <img className='psdk-not-current-svg-icon' src='{svgNotCurrent}' />}\n {subStep.visited_status === 'current' && <label className='psdk-sub-step-current'>{subStep.name}</label>}\n {subStep.visited_status !== 'current' && <label className='psdk-sub-step-not-current'>{subStep.name}</label>}\n </div>\n {subStep.visited_status === 'current' && (\n <div>\n <AssignmentCard getPConnect={getPConnect} itemKey={itemKey} actionButtons={actionButtons} onButtonPress={buttonPress}>\n {children}\n </AssignmentCard>\n </div>\n )}\n </li>;\n })}\n </ul>\n )}\n {!mainStep?.steps && mainStep.visited_status === 'current' && (\n <AssignmentCard getPConnect={getPConnect} itemKey={itemKey} actionButtons={actionButtons} onButtonPress={buttonPress}>\n {children}\n </AssignmentCard>\n )}\n </div>\n </div>\n </React.Fragment>\n );\n })}\n </div>\n ) : (\n <div className='psdk-horizontal-stepper'>\n <div className='psdk-horizontal-stepper-header-container'>\n {arNavigationSteps.map((mainStep, index) => {\n return (\n <React.Fragment key={mainStep.actionID}>\n <div className='psdk-horizontal-step-header'>\n <div className={_getHIconClass(mainStep)}>\n <div className='psdk-horizontal-step-icon-content'>\n <span>{index + 1}</span>\n </div>\n </div>\n <div className={_getHLabelClass(mainStep)}>\n <div className='psdk-horizontal-step-text-label' id='selected-label'>\n {mainStep.name}\n </div>\n </div>\n </div>\n {_showHLine(index) && <div className='psdk-horizontal-step-line' />}\n </React.Fragment>\n );\n })}\n </div>\n {arNavigationSteps.map(mainStep => {\n return (\n <React.Fragment key={mainStep.actionID}>\n {mainStep.steps && (\n <ul style={{ paddingInlineStart: '0rem', marginLeft: '35px' }}>\n {mainStep.steps.map(subStep => (\n <li className='psdk-sub-step-list'>\n <div style={{ display: 'inline-flex' }}>\n {subStep.visited_status === 'current' && <img className='psdk-current-svg-icon' src='{svgCurrent}' />}\n {subStep.visited_status !== 'current' && <img className='psdk-not-current-svg-icon' src='{svgNotCurrent}' />}\n {subStep.visited_status === 'current' && <label className='psdk-sub-step-current'>{subStep.name}</label>}\n {subStep.visited_status !== 'current' && <label className='psdk-sub-step-not-current'>{subStep.name}</label>}\n </div>\n {subStep.visited_status === 'current' && (\n <AssignmentCard getPConnect={getPConnect} itemKey={itemKey} actionButtons={actionButtons} onButtonPress={buttonPress}>\n {children}\n </AssignmentCard>\n )}\n </li>\n ))}\n </ul>\n )}\n {!mainStep?.steps && mainStep.ID === currentStep?.ID && (\n <AssignmentCard getPConnect={getPConnect} itemKey={itemKey} actionButtons={actionButtons} onButtonPress={buttonPress}>\n {children}\n </AssignmentCard>\n )}\n </React.Fragment>\n );\n })}\n </div>\n )}\n </div>\n );\n}\n"]}
|
|
@@ -132,7 +132,7 @@ export default function RootContainer(props) {
|
|
|
132
132
|
context: items[0].context
|
|
133
133
|
}
|
|
134
134
|
};
|
|
135
|
-
if (!PCore.isDeepEqual(currentRootConfig, prevRootConfig)) {
|
|
135
|
+
if (prevRootConfig === null || !PCore.isDeepEqual(currentRootConfig, prevRootConfig)) {
|
|
136
136
|
rootView.current = createElement(createPConnectComponent(), PCore.createPConnect(currentRootConfig));
|
|
137
137
|
}
|
|
138
138
|
// debugging/investigation help
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"RootContainer.js","sourceRoot":"","sources":["../../../../src/components/infra/RootContainer/RootContainer.tsx"],"names":[],"mappings":"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","sourcesContent":["import { Children, createElement, PropsWithChildren, useContext, useEffect, useMemo, useRef, useState } from 'react';\nimport { Box, CircularProgress } from '@mui/material';\n\nimport createPConnectComponent from '../../../bridge/react_pconnect';\nimport StoreContext from '../../../bridge/Context/StoreContext';\nimport { LazyMap as LazyComponentMap } from '../../../components_map';\nimport { isEmptyObject } from '../../helpers/common-utils';\nimport { PConnProps } from '../../../types/PConnProps';\n\ninterface RootContainerProps extends PConnProps {\n // If any, enter additional props that only exist on this component\n renderingMode?: string;\n routingInfo: { type: string; accessedOrder: any[]; items: any };\n skeleton: any;\n httpMessages: any[];\n}\n\n//\n// WARNING: It is not expected that this file should be modified. It is part of infrastructure code that works with\n// Redux and creation/update of Redux containers and PConnect. Modifying this code could have undesireable results and\n// is totally at your own risk.\n//\n\nconst renderingModes = ['portal', 'view'];\n\nfunction usePrevious(value) {\n const ref = useRef(null);\n useEffect(() => {\n ref.current = value;\n });\n return ref.current;\n}\n\nfunction getItemView(routingInfo, renderingMode) {\n const viewConfigs: any = [];\n if (routingInfo && renderingModes.includes(renderingMode)) {\n const { accessedOrder, items }: { accessedOrder: any; items: any } = routingInfo;\n if (accessedOrder && items) {\n const key = accessedOrder[accessedOrder.length - 1];\n if (items[key] && items[key].view && !isEmptyObject(items[key].view)) {\n viewConfigs.push(items[key]);\n }\n }\n }\n return viewConfigs;\n}\n\nexport default function RootContainer(props: PropsWithChildren<RootContainerProps>) {\n const { getPConnect, renderingMode = '', children, skeleton, httpMessages = [], routingInfo } = props;\n\n const { displayOnlyFA } = useContext<any>(StoreContext);\n\n const pConn = getPConnect();\n\n const options = { context: 'app' };\n const rootView = useRef(null);\n\n const [componentName, setComponentName] = useState('');\n\n useEffect(() => {\n // debugging/investigation help\n // console.log(`componentName change: ${componentName} triggering a re-render`);\n }, [componentName]);\n\n // debugging/investigation help\n // console.log(`RootContainer props.routingInfo: ${JSON.stringify(routingInfo)}`);\n\n let hasBanner = false;\n let banners: any = null;\n const localizedVal = PCore.getLocaleUtils().getLocaleValue;\n const localeCategory = 'Messages';\n\n const messages = httpMessages ? httpMessages.map(msg => localizedVal(msg.message, localeCategory)) : httpMessages;\n\n hasBanner = messages && messages.length > 0;\n banners = hasBanner && <div>{localizedVal(`RootContainer: trying to emit Banner with ${messages}`, localeCategory)}</div>;\n\n const MemoizedModalViewContainer = useMemo(() => {\n return createElement(\n createPConnectComponent(),\n PCore.createPConnect({\n meta: {\n type: 'ModalViewContainer',\n config: {\n name: 'modal'\n }\n },\n options\n })\n );\n }, []);\n\n // eslint-disable-next-line @typescript-eslint/no-unused-vars\n const MemoizedPreviewViewContainer = useMemo(() => {\n return createElement(\n createPConnectComponent(),\n PCore.createPConnect({\n meta: {\n type: 'PreviewViewContainer',\n config: {\n name: 'preview'\n }\n },\n options\n })\n );\n }, []);\n\n //\n function getNoPortalContent() {\n let noPortalContent: any;\n\n switch (componentName) {\n case 'View':\n noPortalContent = <div>{localizedVal('getNoPortalContent: RootContainer wants to render View in noPortal mode', localeCategory)}</div>;\n break;\n\n case 'ViewContainer': {\n const configProps = pConn.getConfigProps();\n const viewContConfig = {\n meta: {\n type: 'ViewContainer',\n config: configProps\n },\n options\n };\n const theViewCont: any = PCore.createPConnect(viewContConfig);\n // Add in displayOnlyFA if prop is on RootContainer\n if (displayOnlyFA) {\n theViewCont.displayOnlyFA = true;\n }\n\n const theViewContainerAsReact = createElement(createPConnectComponent(), theViewCont);\n\n noPortalContent = theViewContainerAsReact;\n break;\n }\n\n default:\n noPortalContent = (\n <div>{localizedVal('getNoPortalContent: RootContainer wants to render NO componentName in noPortal mode', localeCategory)}</div>\n );\n break;\n }\n\n return noPortalContent;\n }\n\n let rootViewConfig: any = null;\n\n useEffect(() => {\n const { containers } = PCore.getStore().getState();\n const items = Object.keys(containers).filter(item => item.includes('root'));\n (PCore.getContainerUtils().getContainerAPI() as any).addContainerItems(items);\n }, [routingInfo]);\n\n const items: any = getItemView(routingInfo, renderingMode);\n\n if (items.length > 0) {\n rootViewConfig = {\n meta: items[0].view,\n options: {\n context: items[0].context\n }\n };\n }\n const prevRootConfig = usePrevious(rootViewConfig);\n\n if (renderingModes.includes(renderingMode) && messages && routingInfo && routingInfo?.accessedOrder.length === 0) {\n return <div id='root-container'>{banners}</div>;\n }\n\n if (items.length > 0) {\n const itemView = items[0].view;\n const currentRootConfig = {\n meta: itemView,\n options: {\n context: items[0].context\n }\n };\n\n if (!PCore.isDeepEqual(currentRootConfig, prevRootConfig)) {\n rootView.current = createElement(createPConnectComponent(), PCore.createPConnect(currentRootConfig)) as any;\n }\n\n // debugging/investigation help\n // console.log(`rootView.props.getPConnect().getComponentName(): ${rootView.props.getPConnect().getComponentName()}`);\n\n return (\n <div id='ModalManager'>\n {rootView.current}\n {MemoizedModalViewContainer}\n <div id='MemoizedPreviewViewContainer' />\n <div id='ReAuthMessageModal' />\n </div>\n );\n }\n if (renderingMode === 'noPortal') {\n // eslint-disable-next-line no-console\n console.log(`${localizedVal('RootContainer rendering in noPortal mode', localeCategory)}`);\n\n const theChildren = pConn.getChildren() as any[];\n if (theChildren && theChildren.length === 1) {\n const localPConn = theChildren[0].getPConnect();\n const localCompName = localPConn.getComponentName();\n if (componentName !== localCompName) {\n setComponentName(localCompName);\n }\n }\n\n return getNoPortalContent();\n }\n if (children && Children.count(children) > 0) {\n return (\n <>\n <div>{localizedVal('RootContainer: Has children. Trying to show ModalManager with children, etc.', localeCategory)}</div>\n {children}\n {MemoizedModalViewContainer}\n </>\n );\n }\n if (skeleton) {\n // eslint-disable-next-line @typescript-eslint/no-unused-vars\n const LoadingComponent = LazyComponentMap[skeleton];\n\n return (\n <div id='root-container'>\n {/* <div>RootContainer: Trying to show skeleton</div> */}\n <Box textAlign='center'>\n <CircularProgress />\n </Box>\n </div>\n );\n }\n return (\n <div id='root-container'>\n <div>{localizedVal('RootContainer: Should be ModalManager, etc.', localeCategory)}</div>\n </div>\n );\n}\n"]}
|
|
1
|
+
{"version":3,"file":"RootContainer.js","sourceRoot":"","sources":["../../../../src/components/infra/RootContainer/RootContainer.tsx"],"names":[],"mappings":"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","sourcesContent":["import { Children, createElement, PropsWithChildren, useContext, useEffect, useMemo, useRef, useState } from 'react';\nimport { Box, CircularProgress } from '@mui/material';\n\nimport createPConnectComponent from '../../../bridge/react_pconnect';\nimport StoreContext from '../../../bridge/Context/StoreContext';\nimport { LazyMap as LazyComponentMap } from '../../../components_map';\nimport { isEmptyObject } from '../../helpers/common-utils';\nimport { PConnProps } from '../../../types/PConnProps';\n\ninterface RootContainerProps extends PConnProps {\n // If any, enter additional props that only exist on this component\n renderingMode?: string;\n routingInfo: { type: string; accessedOrder: any[]; items: any };\n skeleton: any;\n httpMessages: any[];\n}\n\n//\n// WARNING: It is not expected that this file should be modified. It is part of infrastructure code that works with\n// Redux and creation/update of Redux containers and PConnect. Modifying this code could have undesireable results and\n// is totally at your own risk.\n//\n\nconst renderingModes = ['portal', 'view'];\n\nfunction usePrevious(value) {\n const ref = useRef(null);\n useEffect(() => {\n ref.current = value;\n });\n return ref.current;\n}\n\nfunction getItemView(routingInfo, renderingMode) {\n const viewConfigs: any = [];\n if (routingInfo && renderingModes.includes(renderingMode)) {\n const { accessedOrder, items }: { accessedOrder: any; items: any } = routingInfo;\n if (accessedOrder && items) {\n const key = accessedOrder[accessedOrder.length - 1];\n if (items[key] && items[key].view && !isEmptyObject(items[key].view)) {\n viewConfigs.push(items[key]);\n }\n }\n }\n return viewConfigs;\n}\n\nexport default function RootContainer(props: PropsWithChildren<RootContainerProps>) {\n const { getPConnect, renderingMode = '', children, skeleton, httpMessages = [], routingInfo } = props;\n\n const { displayOnlyFA } = useContext<any>(StoreContext);\n\n const pConn = getPConnect();\n\n const options = { context: 'app' };\n const rootView = useRef(null);\n\n const [componentName, setComponentName] = useState('');\n\n useEffect(() => {\n // debugging/investigation help\n // console.log(`componentName change: ${componentName} triggering a re-render`);\n }, [componentName]);\n\n // debugging/investigation help\n // console.log(`RootContainer props.routingInfo: ${JSON.stringify(routingInfo)}`);\n\n let hasBanner = false;\n let banners: any = null;\n const localizedVal = PCore.getLocaleUtils().getLocaleValue;\n const localeCategory = 'Messages';\n\n const messages = httpMessages ? httpMessages.map(msg => localizedVal(msg.message, localeCategory)) : httpMessages;\n\n hasBanner = messages && messages.length > 0;\n banners = hasBanner && <div>{localizedVal(`RootContainer: trying to emit Banner with ${messages}`, localeCategory)}</div>;\n\n const MemoizedModalViewContainer = useMemo(() => {\n return createElement(\n createPConnectComponent(),\n PCore.createPConnect({\n meta: {\n type: 'ModalViewContainer',\n config: {\n name: 'modal'\n }\n },\n options\n })\n );\n }, []);\n\n // eslint-disable-next-line @typescript-eslint/no-unused-vars\n const MemoizedPreviewViewContainer = useMemo(() => {\n return createElement(\n createPConnectComponent(),\n PCore.createPConnect({\n meta: {\n type: 'PreviewViewContainer',\n config: {\n name: 'preview'\n }\n },\n options\n })\n );\n }, []);\n\n //\n function getNoPortalContent() {\n let noPortalContent: any;\n\n switch (componentName) {\n case 'View':\n noPortalContent = <div>{localizedVal('getNoPortalContent: RootContainer wants to render View in noPortal mode', localeCategory)}</div>;\n break;\n\n case 'ViewContainer': {\n const configProps = pConn.getConfigProps();\n const viewContConfig = {\n meta: {\n type: 'ViewContainer',\n config: configProps\n },\n options\n };\n const theViewCont: any = PCore.createPConnect(viewContConfig);\n // Add in displayOnlyFA if prop is on RootContainer\n if (displayOnlyFA) {\n theViewCont.displayOnlyFA = true;\n }\n\n const theViewContainerAsReact = createElement(createPConnectComponent(), theViewCont);\n\n noPortalContent = theViewContainerAsReact;\n break;\n }\n\n default:\n noPortalContent = (\n <div>{localizedVal('getNoPortalContent: RootContainer wants to render NO componentName in noPortal mode', localeCategory)}</div>\n );\n break;\n }\n\n return noPortalContent;\n }\n\n let rootViewConfig: any = null;\n\n useEffect(() => {\n const { containers } = PCore.getStore().getState();\n const items = Object.keys(containers).filter(item => item.includes('root'));\n (PCore.getContainerUtils().getContainerAPI() as any).addContainerItems(items);\n }, [routingInfo]);\n\n const items: any = getItemView(routingInfo, renderingMode);\n\n if (items.length > 0) {\n rootViewConfig = {\n meta: items[0].view,\n options: {\n context: items[0].context\n }\n };\n }\n const prevRootConfig = usePrevious(rootViewConfig);\n\n if (renderingModes.includes(renderingMode) && messages && routingInfo && routingInfo?.accessedOrder.length === 0) {\n return <div id='root-container'>{banners}</div>;\n }\n\n if (items.length > 0) {\n const itemView = items[0].view;\n const currentRootConfig = {\n meta: itemView,\n options: {\n context: items[0].context\n }\n };\n\n if (prevRootConfig === null || !PCore.isDeepEqual(currentRootConfig, prevRootConfig)) {\n rootView.current = createElement(createPConnectComponent(), PCore.createPConnect(currentRootConfig)) as any;\n }\n\n // debugging/investigation help\n // console.log(`rootView.props.getPConnect().getComponentName(): ${rootView.props.getPConnect().getComponentName()}`);\n\n return (\n <div id='ModalManager'>\n {rootView.current}\n {MemoizedModalViewContainer}\n <div id='MemoizedPreviewViewContainer' />\n <div id='ReAuthMessageModal' />\n </div>\n );\n }\n if (renderingMode === 'noPortal') {\n // eslint-disable-next-line no-console\n console.log(`${localizedVal('RootContainer rendering in noPortal mode', localeCategory)}`);\n\n const theChildren = pConn.getChildren() as any[];\n if (theChildren && theChildren.length === 1) {\n const localPConn = theChildren[0].getPConnect();\n const localCompName = localPConn.getComponentName();\n if (componentName !== localCompName) {\n setComponentName(localCompName);\n }\n }\n\n return getNoPortalContent();\n }\n if (children && Children.count(children) > 0) {\n return (\n <>\n <div>{localizedVal('RootContainer: Has children. Trying to show ModalManager with children, etc.', localeCategory)}</div>\n {children}\n {MemoizedModalViewContainer}\n </>\n );\n }\n if (skeleton) {\n // eslint-disable-next-line @typescript-eslint/no-unused-vars\n const LoadingComponent = LazyComponentMap[skeleton];\n\n return (\n <div id='root-container'>\n {/* <div>RootContainer: Trying to show skeleton</div> */}\n <Box textAlign='center'>\n <CircularProgress />\n </Box>\n </div>\n );\n }\n return (\n <div id='root-container'>\n <div>{localizedVal('RootContainer: Should be ModalManager, etc.', localeCategory)}</div>\n </div>\n );\n}\n"]}
|
|
@@ -36,7 +36,7 @@ export default function AppShell(props) {
|
|
|
36
36
|
const pConn = getPConnect();
|
|
37
37
|
const envInfo = PCore.getEnvironmentInfo();
|
|
38
38
|
const imageKey = envInfo.getOperatorImageInsKey();
|
|
39
|
-
const userName = envInfo.getOperatorName();
|
|
39
|
+
const userName = envInfo.getOperatorName() || '';
|
|
40
40
|
const currentUserInitials = Utils.getInitials(userName);
|
|
41
41
|
const appNameToDisplay = showAppName ? envInfo.getApplicationLabel() : '';
|
|
42
42
|
const portalClass = pConn.getValue('.classID', ''); // 2nd arg empty string until typedef marked correctly
|
|
@@ -57,7 +57,7 @@ export default function AppShell(props) {
|
|
|
57
57
|
banners = hasBanner && (_jsx("div", { style: { display: 'flex', flexDirection: 'column', padding: '1em 0' }, children: _jsx(AlertBanner, { id: 'AppShell', variant: 'urgent', messages: messages }) }));
|
|
58
58
|
// Initial setting of appName and mapChildren
|
|
59
59
|
useEffect(() => {
|
|
60
|
-
setAppName(PCore.getEnvironmentInfo().getApplicationName());
|
|
60
|
+
setAppName(PCore.getEnvironmentInfo().getApplicationName() || '');
|
|
61
61
|
const tempMap = pConn.getChildren()?.map((child, index) => {
|
|
62
62
|
const theChildComp = child.getPConnect().getComponentName();
|
|
63
63
|
const theKey = `.${index}`;
|
|
@@ -74,7 +74,7 @@ export default function AppShell(props) {
|
|
|
74
74
|
.getPageDataAsync(caseTypesAvailableToCreateDP, pConn.getContextName(), {
|
|
75
75
|
PortalName: portalID
|
|
76
76
|
})
|
|
77
|
-
.then(response => {
|
|
77
|
+
.then((response) => {
|
|
78
78
|
if (response?.pyCaseTypesAvailableToCreate) {
|
|
79
79
|
pConn.replaceState('.pyCaseTypesAvailableToCreate', response.pyCaseTypesAvailableToCreate, {
|
|
80
80
|
skipDirtyValidation: true
|
|
@@ -151,9 +151,9 @@ export default function AppShell(props) {
|
|
|
151
151
|
// console.log(`--> ${mapChildCompNames.map((name) => {return name;})}`);
|
|
152
152
|
}
|
|
153
153
|
if (portalTemplate === 'wss') {
|
|
154
|
-
return (_jsxs("div", { id: 'AppShell', children: [_jsx(WssNavBar, { portalName: portalName, imageSrc: iconURL, fullImageSrc: fullIconURL, appName: localizedVal(appNameToDisplay, '', `${portalClass}!PORTAL!${envPortalName}`.toUpperCase()), appInfo: {
|
|
154
|
+
return (_jsxs("div", { id: 'AppShell', children: [_jsx(WssNavBar, { portalName: portalName, imageSrc: iconURL, fullImageSrc: fullIconURL, appName: localizedVal(appNameToDisplay || '', '', `${portalClass}!PORTAL!${envPortalName}`.toUpperCase()), appInfo: {
|
|
155
155
|
imageSrc: iconURL,
|
|
156
|
-
appName: localizedVal(appNameToDisplay, '', `${portalClass}!PORTAL!${envPortalName}`.toUpperCase()),
|
|
156
|
+
appName: localizedVal(appNameToDisplay || '', '', `${portalClass}!PORTAL!${envPortalName}`.toUpperCase()),
|
|
157
157
|
onClick: links[0] && /* links[0].onClick ? */ links[0].onClick /* : undefined */
|
|
158
158
|
}, navLinks: links.filter((link, index) => {
|
|
159
159
|
return index !== 0;
|
|
@@ -161,6 +161,6 @@ export default function AppShell(props) {
|
|
|
161
161
|
}
|
|
162
162
|
return (
|
|
163
163
|
// eslint-disable-next-line react/jsx-no-constructed-context-values
|
|
164
|
-
_jsx(NavContext.Provider, { value: { open, setOpen }, children: _jsxs("div", { id: 'AppShell', className: classes.root, children: [_jsx(NavBar, { getPConnect: getPConnect, pConn: getPConnect(), appName: localizedVal(appNameToDisplay, '', `${portalClass}!PORTAL!${envPortalName}`.toUpperCase()), pages: pages, caseTypes: caseTypes }), _jsxs("div", { className: classes.content, children: [banners, children] })] }) }));
|
|
164
|
+
_jsx(NavContext.Provider, { value: { open, setOpen }, children: _jsxs("div", { id: 'AppShell', className: classes.root, children: [_jsx(NavBar, { getPConnect: getPConnect, pConn: getPConnect(), appName: localizedVal(appNameToDisplay || '', '', `${portalClass}!PORTAL!${envPortalName}`.toUpperCase()), pages: pages, caseTypes: caseTypes }), _jsxs("div", { className: classes.content, children: [banners, children] })] }) }));
|
|
165
165
|
}
|
|
166
166
|
//# sourceMappingURL=AppShell.js.map
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"AppShell.js","sourceRoot":"","sources":["../../../../src/components/template/AppShell/AppShell.tsx"],"names":[],"mappings":"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","sourcesContent":["import { 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 { 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 display: 'flex'\n },\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 | 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-ignore\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 => {\n if (response?.pyCaseTypesAvailableToCreate) {\n pConn.replaceState('.pyCaseTypesAvailableToCreate', response.pyCaseTypesAvailableToCreate, {\n skipDirtyValidation: true\n });\n }\n });\n }\n }, []);\n\n const [iconURL, setIconURL] = useState('');\n const [fullIconURL, setFullIconURL] = useState('');\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 .getSvcImage(portalLogo)\n .then(blob => window.URL.createObjectURL(blob))\n .then(data => {\n setIconURL(data);\n setFullIconURL(data);\n })\n .catch(() => {\n // eslint-disable-next-line no-console\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 .getSvcImage(imageKey)\n .then(blob => window.URL.createObjectURL(blob))\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'>\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 // eslint-disable-next-line react/jsx-no-constructed-context-values\n <NavContext.Provider value={{ open, setOpen }}>\n <div id='AppShell' className={classes.root}>\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 { 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 { 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 display: 'flex'\n },\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 | 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-ignore\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('');\n const [fullIconURL, setFullIconURL] = useState('');\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 .getSvcImage(portalLogo)\n .then(blob => window.URL.createObjectURL(blob))\n .then(data => {\n setIconURL(data);\n setFullIconURL(data);\n })\n .catch(() => {\n // eslint-disable-next-line no-console\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 .getSvcImage(imageKey)\n .then(blob => window.URL.createObjectURL(blob))\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'>\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 // eslint-disable-next-line react/jsx-no-constructed-context-values\n <NavContext.Provider value={{ open, setOpen }}>\n <div id='AppShell' className={classes.root}>\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"]}
|
|
@@ -6,6 +6,7 @@ interface CaseViewProps extends PConnProps {
|
|
|
6
6
|
header: string;
|
|
7
7
|
showIconInHeader: boolean;
|
|
8
8
|
caseInfo: any;
|
|
9
|
+
lastUpdateCaseTime: any;
|
|
9
10
|
}
|
|
10
11
|
export default function CaseView(props: PropsWithChildren<CaseViewProps>): import("react/jsx-runtime").JSX.Element;
|
|
11
12
|
export {};
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"CaseView.d.ts","sourceRoot":"","sources":["../../../../src/components/template/CaseView/CaseView.tsx"],"names":[],"mappings":"AAEA,OAAO,EAAE,iBAAiB,EAAiD,MAAM,OAAO,CAAC;AAUzF,OAAO,EAAE,UAAU,EAAE,MAAM,2BAA2B,CAAC;AAEvD,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;
|
|
1
|
+
{"version":3,"file":"CaseView.d.ts","sourceRoot":"","sources":["../../../../src/components/template/CaseView/CaseView.tsx"],"names":[],"mappings":"AAEA,OAAO,EAAE,iBAAiB,EAAiD,MAAM,OAAO,CAAC;AAUzF,OAAO,EAAE,UAAU,EAAE,MAAM,2BAA2B,CAAC;AAEvD,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;AA6BD,MAAM,CAAC,OAAO,UAAU,QAAQ,CAAC,KAAK,EAAE,iBAAiB,CAAC,aAAa,CAAC,2CAwNvE"}
|
|
@@ -43,6 +43,7 @@ export default function CaseView(props) {
|
|
|
43
43
|
const { getPConnect, icon = '', header, subheader, children = [],
|
|
44
44
|
// eslint-disable-next-line @typescript-eslint/no-unused-vars
|
|
45
45
|
showIconInHeader = true, caseInfo: { availableActions = [], availableProcesses = [], hasNewAttachments, caseTypeID = '', caseTypeName = '' } } = props;
|
|
46
|
+
const { lastUpdateCaseTime = getPConnect().getValue('caseInfo.lastUpdateTime') } = props;
|
|
46
47
|
const currentCaseID = props.caseInfo.ID;
|
|
47
48
|
let isComponentMounted = true;
|
|
48
49
|
const { displayOnlyFA } = useContext(StoreContext);
|
|
@@ -125,7 +126,6 @@ export default function CaseView(props) {
|
|
|
125
126
|
}, []);
|
|
126
127
|
useEffect(() => {
|
|
127
128
|
if (hasNewAttachments) {
|
|
128
|
-
// @ts-ignore - Argument of type 'boolean' is not assignable to parameter of type 'object'
|
|
129
129
|
PCore.getPubSubUtils().publish(PCore.getEvents().getCaseEvent().CASE_ATTACHMENTS_UPDATED_FROM_CASEVIEW, true);
|
|
130
130
|
}
|
|
131
131
|
}, [hasNewAttachments]);
|
|
@@ -142,7 +142,7 @@ export default function CaseView(props) {
|
|
|
142
142
|
function getContainerContents() {
|
|
143
143
|
if (!displayOnlyFA) {
|
|
144
144
|
// show full portal
|
|
145
|
-
return (_jsxs(Grid, { container: true, children: [_jsxs(Grid, { item: true, 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: svgCase, className: classes.caseViewIconImage }) }) }), getActionButtonsHtml(), _jsx(Divider, {}), theSummaryRegion, _jsx(Divider, {}), vertTabInfo.length > 1 && _jsx(VerticalTabs, { tabconfig: vertTabInfo })] })] }), _jsxs(Grid, { item: true, xs: 6, children: [theStagesRegion, theTodoRegion, deferLoadInfo.length > 0 && _jsx(DeferLoad, { getPConnect: getPConnect, name: deferLoadInfo[activeVertTab].config.name, isTab: true })] }), _jsx(Grid, { item: true, xs: 3, children: theUtilitiesRegion })] }));
|
|
145
|
+
return (_jsxs(Grid, { container: true, children: [_jsxs(Grid, { item: true, 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: svgCase, className: classes.caseViewIconImage }) }) }), getActionButtonsHtml(), _jsx(Divider, {}), theSummaryRegion, _jsx(Divider, {}), vertTabInfo.length > 1 && _jsx(VerticalTabs, { tabconfig: vertTabInfo })] })] }), _jsxs(Grid, { item: true, xs: 6, children: [theStagesRegion, theTodoRegion, deferLoadInfo.length > 0 && (_jsx(DeferLoad, { getPConnect: getPConnect, name: deferLoadInfo[activeVertTab].config.name, isTab: true, lastUpdateCaseTime: lastUpdateCaseTime }))] }), _jsx(Grid, { item: true, xs: 3, children: theUtilitiesRegion })] }));
|
|
146
146
|
}
|
|
147
147
|
// displayOnlyFA - only show the "todo" region
|
|
148
148
|
return (_jsx(Grid, { container: true, children: _jsx(Grid, { item: true, xs: 12, children: theTodoRegion }) }));
|