@pega/react-sdk-components 0.23.5 → 0.23.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.
- package/lib/components/designSystemExtensions/CaseSummaryFields/CaseSummaryFields.js +1 -1
- package/lib/components/designSystemExtensions/CaseSummaryFields/CaseSummaryFields.js.map +1 -1
- package/lib/components/helpers/formatters/index.d.ts +1 -1
- package/lib/components/helpers/formatters/index.js +1 -1
- package/lib/components/helpers/formatters/index.js.map +1 -1
- package/lib/components/infra/ToDo/ToDo.d.ts.map +1 -1
- package/lib/components/infra/ToDo/ToDo.js +7 -4
- package/lib/components/infra/ToDo/ToDo.js.map +1 -1
- package/lib/components/templates/ListView/ListView.js +1 -1
- package/lib/components/templates/ListView/ListView.js.map +1 -1
- package/lib/components/templates/NarrowWide/NarrowWidePage/NarrowWidePage.js +1 -1
- package/lib/components/templates/NarrowWide/NarrowWidePage/NarrowWidePage.js.map +1 -1
- package/lib/components/templates/OneColumn/OneColumnPage/OneColumnPage.js +1 -1
- package/lib/components/templates/OneColumn/OneColumnPage/OneColumnPage.js.map +1 -1
- package/lib/components/templates/SimpleTable/SimpleTableManual/SimpleTableManual.js +1 -1
- package/lib/components/templates/SimpleTable/SimpleTableManual/SimpleTableManual.js.map +1 -1
- package/lib/components/templates/SimpleTable/{helpers.d.ts → simpleTableHelpers.d.ts} +1 -1
- package/lib/components/templates/SimpleTable/simpleTableHelpers.d.ts.map +1 -0
- package/lib/components/templates/SimpleTable/{helpers.js → simpleTableHelpers.js} +1 -1
- package/lib/components/templates/SimpleTable/simpleTableHelpers.js.map +1 -0
- package/lib/components/templates/TwoColumn/TwoColumnPage/TwoColumnPage.d.ts.map +1 -1
- package/lib/components/templates/TwoColumn/TwoColumnPage/TwoColumnPage.js +1 -2
- package/lib/components/templates/TwoColumn/TwoColumnPage/TwoColumnPage.js.map +1 -1
- package/lib/components/templates/WideNarrow/WideNarrowPage/WideNarrowPage.js +1 -1
- package/lib/components/templates/WideNarrow/WideNarrowPage/WideNarrowPage.js.map +1 -1
- package/lib/sdk-pega-component-map.d.ts +6 -2
- package/lib/sdk-pega-component-map.js +9 -5
- package/lib/sdk-pega-component-map.js.map +1 -1
- package/package.json +1 -1
- package/lib/components/templates/SimpleTable/helpers.d.ts.map +0 -1
- package/lib/components/templates/SimpleTable/helpers.js.map +0 -1
|
@@ -3,7 +3,7 @@ import PropTypes from "prop-types";
|
|
|
3
3
|
import isDeepEqual from 'fast-deep-equal/react';
|
|
4
4
|
import Grid from '@material-ui/core/Grid';
|
|
5
5
|
import TextField from '@material-ui/core/TextField';
|
|
6
|
-
import Operator from '../Operator
|
|
6
|
+
import Operator from '../Operator';
|
|
7
7
|
import './CaseSummaryFields.css';
|
|
8
8
|
import { format } from '../../helpers/formatters';
|
|
9
9
|
export default function CaseSummaryFields(props) {
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"CaseSummaryFields.js","sourceRoot":"","sources":["../../../../src/components/designSystemExtensions/CaseSummaryFields/CaseSummaryFields.tsx"],"names":[],"mappings":"AAAA,OAAO,KAAK,EAAE,EAAE,QAAQ,EAAE,SAAS,EAAE,MAAM,OAAO,CAAC;AACnD,OAAO,SAAS,MAAM,YAAY,CAAC;AACnC,OAAO,WAAW,MAAM,uBAAuB,CAAC;AAEhD,OAAO,IAAI,MAAM,wBAAwB,CAAC;AAC1C,OAAO,SAAS,MAAM,6BAA6B,CAAC;AACpD,OAAO,QAAQ,MAAM,
|
|
1
|
+
{"version":3,"file":"CaseSummaryFields.js","sourceRoot":"","sources":["../../../../src/components/designSystemExtensions/CaseSummaryFields/CaseSummaryFields.tsx"],"names":[],"mappings":"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","sourcesContent":["import React, { useState, useEffect } from \"react\";\nimport PropTypes from \"prop-types\";\nimport isDeepEqual from 'fast-deep-equal/react';\n\nimport Grid from '@material-ui/core/Grid';\nimport TextField from '@material-ui/core/TextField';\nimport Operator from '../Operator';\n\nimport './CaseSummaryFields.css';\n\nimport { format } from '../../helpers/formatters';\n\nexport default function CaseSummaryFields(props) {\n const { status, showStatus, theFields } = props;\n\n const [theFieldsToRender, setFieldsToRender] = useState([]);\n const [theFieldsAsGridItems, setFieldsAsGridItems] = useState<Array<any>>([]);\n\n\n function getFieldValue(field: any): any {\n const fieldTypeLower = field.type.toLowerCase();\n\n if (field.config.value === null || field.config.value === \"\") {\n // Special handling for missing value\n // eslint-disable-next-line sonarjs/no-small-switch\n switch(fieldTypeLower) {\n case \"caseoperator\" :\n return <Operator caseOpConfig={field.config} />;\n break;\n\n default:\n return <TextField\n value=\"---\"\n label={field.config.label}\n InputProps={{\n readOnly: true\n }} />;\n }\n }\n\n switch(fieldTypeLower) {\n case \"textinput\" :\n return <TextField\n value={field.config.value}\n label={field.config.label}\n InputProps={{\n readOnly: true\n }} />;\n\n case \"status\" :\n return <TextField\n className=\"psdk-csf-status-style\"\n value={field.config.value}\n label={field.config.label}\n InputProps={{\n readOnly: true\n }} />;\n\n case \"phone\":\n {\n const displayPhone = (field.config.value !== \"\") ? field.config.value : \"---\";\n return <a href={`tel:${displayPhone}`}>\n <TextField\n value={field.config.value}\n label={field.config.label}\n InputProps={{\n readOnly: true,\n inputProps: {style: {cursor: 'pointer'}}\n }}\n />\n </a>;\n }\n\n case \"email\":\n {\n const displayEmail = format(field.config.value, field.type);\n return <a href={`mailto:${displayEmail}`}>\n <TextField\n value={field.config.value}\n label={field.config.label}\n InputProps={{\n readOnly: true,\n inputProps: {style: {cursor: 'pointer'}}\n }}\n />\n </a>;\n\n }\n\n case \"date\":\n return <TextField\n value={format(field.config.value, field.type)}\n label={field.config.label}\n InputProps={{\n readOnly: true\n }} />;\n\n case \"caseoperator\":\n return <Operator caseOpConfig={field.config} />;\n break;\n\n default:\n return (\n <span>{field.type.toLowerCase()} {field.config.value}</span>\n );\n\n }\n\n }\n\n\n // Whenever theFieldsToRender changes, update theFieldsAsGridItems that's used during render\n useEffect(() => {\n const arGridItems = theFieldsToRender.map((field: any) => {\n return ( <Grid item xs={6} key={field.config.label}>{getFieldValue(field)}</Grid> );\n });\n setFieldsAsGridItems(arGridItems);\n },\n [theFieldsToRender]);\n\n\n const theFieldsModifiable = theFields;\n\n // Special Case: if showStatus is true, splice the status value to be 2nd in theFields\n // if it's not already there\n if (showStatus && theFields?.[1].type !== \"status\") {\n const oStatus = { type: \"status\", config: { value: status, label: \"Status\" }};\n\n const count = theFieldsModifiable.length;\n if (count < 2) {\n theFieldsModifiable.push(oStatus);\n }\n else {\n theFieldsModifiable.splice(1, 0, oStatus);\n }\n }\n\n // At this point, we know what fields we want to render...\n // So, update our state if it's changed\n if (!isDeepEqual(theFieldsToRender, theFieldsModifiable)) {\n setFieldsToRender(theFieldsModifiable);\n }\n\n\n return <React.Fragment>\n <Grid container className=\"psdk-case-summary-fields\">\n {theFieldsAsGridItems}\n </Grid>\n </React.Fragment>;\n}\n\nCaseSummaryFields.propTypes = {\n status: PropTypes.string,\n showStatus: PropTypes.bool,\n theFields: PropTypes.arrayOf(PropTypes.object)\n};\n"]}
|
|
@@ -48,7 +48,7 @@ function parseDateInISO(value) {
|
|
|
48
48
|
}
|
|
49
49
|
return value ? getDateObject(value).toISOString() : value;
|
|
50
50
|
}
|
|
51
|
-
export function format(value, type, options) {
|
|
51
|
+
export function format(value, type, options = {}) {
|
|
52
52
|
let formattedValue;
|
|
53
53
|
switch (type?.toLowerCase()) {
|
|
54
54
|
case "currency": {
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"index.js","sourceRoot":"","sources":["../../../../src/components/helpers/formatters/index.js"],"names":[],"mappings":"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
|
|
1
|
+
{"version":3,"file":"index.js","sourceRoot":"","sources":["../../../../src/components/helpers/formatters/index.js"],"names":[],"mappings":"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","sourcesContent":["import Boolean from \"./Boolean\";\nimport Currency from \"./Currency\";\nimport DateFormatter from \"./Date\";\nimport { getCurrentTimezone, getLocale } from \"./common\";\n\nexport default {\n ...Boolean,\n ...Currency,\n ...DateFormatter\n};\n\nfunction getDateObject(text) {\n // TODO - cleanup formatters util functions as DX APIs are returning values per ISO std now.\n const timeStamp = text.replace(/-/g, \"\");\n const isDateTime = timeStamp.indexOf(\"GMT\") !== -1;\n const year = parseInt(timeStamp.substr(0, 4), 10);\n const month = parseInt(timeStamp.substr(4, 2), 10) - 1;\n const day = parseInt(timeStamp.substr(6, 2), 10);\n\n const date = new Date();\n\n date.setDate(day);\n date.setMonth(month);\n date.setFullYear(year);\n\n if (isDateTime) {\n const hours = parseInt(timeStamp.substr(9, 2), 10);\n const minutes = parseInt(timeStamp.substr(11, 2), 10);\n const seconds = parseInt(timeStamp.substr(13, 2), 10);\n const ms = parseInt(timeStamp.substr(16, 3), 10);\n date.setHours(hours);\n date.setMinutes(minutes);\n date.setSeconds(seconds);\n date.setMilliseconds(ms);\n }\n\n return date;\n}\n\nfunction isIsoDate(str) {\n if (!/\\d{4}-\\d{2}-\\d{2}T\\d{2}:\\d{2}:\\d{2}.\\d{3}Z/.test(str)) return false;\n const d = new Date(str);\n return d.toISOString() === str;\n}\n\nfunction parseDateInISO(value) {\n const isMilliSeconds = new RegExp(\"^[0-9]+$\").exec(value);\n if (isMilliSeconds) {\n const date = new Date(parseInt(value, 10));\n return date.toISOString();\n }\n\n if (isIsoDate(value)) {\n const date = new Date(value);\n return date.toISOString();\n }\n\n return value ? getDateObject(value).toISOString() : value;\n}\n\nexport function format(value, type, options = {}) {\n let formattedValue;\n\n switch (type?.toLowerCase()) {\n case \"currency\": {\n const defaultOptions = {\n locale: getLocale(),\n position: \"before\",\n decPlaces: 2\n };\n const params = { ...defaultOptions, ...options };\n formattedValue = Currency.Currency(value, params);\n break;\n }\n\n case \"decimal\": {\n const defaultOptions = { locale: getLocale(), decPlaces: 2 };\n const params = { ...defaultOptions, ...options };\n formattedValue = Currency.Decimal(value, params);\n break;\n }\n\n case \"integer\": {\n const defaultOptions = { locale: getLocale() };\n const params = { ...defaultOptions, ...options };\n formattedValue = Currency.Integer(value, params);\n break;\n }\n\n case \"date\": {\n const defaultOptions = {\n format: \"MMM DD, YYYY\",\n timezone: getCurrentTimezone()\n };\n const params = { ...defaultOptions, ...options };\n formattedValue = DateFormatter.Date(parseDateInISO(value), params);\n break;\n }\n\n case \"datetime\": {\n const defaultOptions = {\n format: \"MMM DD, YYYY h:mm A\",\n timezone: getCurrentTimezone()\n };\n const params = { ...defaultOptions, ...options };\n formattedValue = DateFormatter.Date(parseDateInISO(value), params);\n break;\n }\n\n case \"boolean\":\n case \"checkbox\": {\n formattedValue = Boolean.TrueFalse(value, { allowEmpty: false });\n break;\n }\n\n default:\n formattedValue = value;\n }\n return formattedValue;\n}\n"]}
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"ToDo.d.ts","sourceRoot":"","sources":["../../../../src/components/infra/ToDo/ToDo.tsx"],"names":[],"mappings":";AACA,OAAO,SAAS,MAAM,YAAY,CAAC;AAyBnC,OAAO,YAAY,CAAC;
|
|
1
|
+
{"version":3,"file":"ToDo.d.ts","sourceRoot":"","sources":["../../../../src/components/infra/ToDo/ToDo.tsx"],"names":[],"mappings":";AACA,OAAO,SAAS,MAAM,YAAY,CAAC;AAyBnC,OAAO,YAAY,CAAC;AAqCpB,iBAAwB,IAAI,CAAC,KAAK,KAAA,eA2LjC;kBA3LuB,IAAI;;;;;;;;;;;;;;;;;;;;;;;eAAJ,IAAI"}
|
|
@@ -10,6 +10,9 @@ import { makeStyles } from '@material-ui/core/styles';
|
|
|
10
10
|
import { useTheme } from '@material-ui/core/styles';
|
|
11
11
|
import useMediaQuery from '@material-ui/core/useMediaQuery';
|
|
12
12
|
import './ToDo.css';
|
|
13
|
+
const isChildCase = (assignment) => {
|
|
14
|
+
return assignment.isChild;
|
|
15
|
+
};
|
|
13
16
|
function topThreeAssignments(assignmentsSource) {
|
|
14
17
|
return Array.isArray(assignmentsSource) ? assignmentsSource.slice(0, 3) : [];
|
|
15
18
|
}
|
|
@@ -65,7 +68,7 @@ export default function ToDo(props) {
|
|
|
65
68
|
return [];
|
|
66
69
|
}
|
|
67
70
|
}
|
|
68
|
-
const
|
|
71
|
+
const getAssignmentId = assignment => {
|
|
69
72
|
return type === CONSTS.TODO ? assignment.ID : assignment.id;
|
|
70
73
|
};
|
|
71
74
|
const getPriority = assignment => {
|
|
@@ -96,7 +99,7 @@ export default function ToDo(props) {
|
|
|
96
99
|
setAssignments(topThreeAssignments(assignmentsSource));
|
|
97
100
|
}
|
|
98
101
|
function clickGo(assignment) {
|
|
99
|
-
const
|
|
102
|
+
const id = getAssignmentId(assignment);
|
|
100
103
|
let { classname = '' } = assignment;
|
|
101
104
|
const sTarget = thePConn.getContainerName();
|
|
102
105
|
const sTargetContainerName = sTarget;
|
|
@@ -108,7 +111,7 @@ export default function ToDo(props) {
|
|
|
108
111
|
options['isActionFromToDoList'] = true;
|
|
109
112
|
options['target'] = '';
|
|
110
113
|
options['context'] = null;
|
|
111
|
-
options['isChild'] =
|
|
114
|
+
options['isChild'] = isChildCase(assignment);
|
|
112
115
|
}
|
|
113
116
|
else {
|
|
114
117
|
options['isActionFromToDoList'] = false;
|
|
@@ -147,7 +150,7 @@ export default function ToDo(props) {
|
|
|
147
150
|
headerText,
|
|
148
151
|
"\u00A0\u00A0\u00A0")), avatar: React.createElement(Avatar, { className: classes.avatar }, currentUserInitials) })),
|
|
149
152
|
React.createElement(CardContent, null,
|
|
150
|
-
React.createElement(List, null, assignments.map(assignment => (React.createElement(ListItem, { key:
|
|
153
|
+
React.createElement(List, null, assignments.map(assignment => (React.createElement(ListItem, { key: getAssignmentId(assignment), dense: true, divider: true, onClick: () => clickGo(assignment) },
|
|
151
154
|
React.createElement(ListItemText, { primary: getAssignmentName(assignment), secondary: getListItemComponent(assignment) }),
|
|
152
155
|
React.createElement(ListItemSecondaryAction, null,
|
|
153
156
|
React.createElement(IconButton, { onClick: () => clickGo(assignment) },
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"ToDo.js","sourceRoot":"","sources":["../../../../src/components/infra/ToDo/ToDo.tsx"],"names":[],"mappings":"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","sourcesContent":["import React, { useState } from 'react';\nimport PropTypes from 'prop-types';\nimport { Utils } from '../../helpers/utils';\nimport {\n Box,\n Button,\n Card,\n CardContent,\n CardHeader,\n Avatar,\n Typography,\n Badge,\n List,\n ListItem,\n ListItemText,\n ListItemSecondaryAction\n} from '@material-ui/core';\nimport Snackbar from '@material-ui/core/Snackbar';\nimport IconButton from '@material-ui/core/IconButton';\nimport CloseIcon from '@material-ui/icons/Close';\n\nimport ArrowForwardIosOutlinedIcon from '@material-ui/icons/ArrowForwardIosOutlined';\nimport { makeStyles } from '@material-ui/core/styles';\nimport { useTheme } from '@material-ui/core/styles';\nimport useMediaQuery from '@material-ui/core/useMediaQuery';\n\nimport './ToDo.css';\n\ndeclare const PCore: any;\n\nfunction topThreeAssignments(assignmentsSource: Array<any>): Array<any> {\n return Array.isArray(assignmentsSource) ? assignmentsSource.slice(0, 3) : [];\n}\n\nfunction getID(assignment: any) {\n if (assignment.value) {\n const refKey = assignment.value;\n return refKey.substring(refKey.lastIndexOf(' ') + 1);\n } else {\n const refKey = assignment.ID;\n const arKeys = refKey.split('!')[0].split(' ');\n return arKeys[2];\n }\n}\n\nconst useStyles = makeStyles(theme => ({\n root: {\n marginTop: theme.spacing(1),\n marginBottom: theme.spacing(1),\n paddingBottom: theme.spacing(1),\n borderLeft: '6px solid',\n borderLeftColor: theme.palette.primary.light\n },\n avatar: {\n backgroundColor: theme.palette.primary.light,\n color: theme.palette.getContrastText(theme.palette.primary.light)\n }\n}));\n\nexport default function ToDo(props) {\n const { datasource, getPConnect, headerText, showTodoList, myWorkList, type } = props;\n\n const CONSTS = PCore.getConstants();\n\n const bLogging = true;\n let assignmentCount = 0;\n const currentUser = PCore.getEnvironmentInfo().getOperatorName();\n const currentUserInitials = Utils.getInitials(currentUser);\n const assignmentsSource = datasource?.source || myWorkList?.source;\n\n const [bShowMore, setBShowMore] = useState(true);\n const [showSnackbar, setShowSnackbar] = useState(false);\n const [snackbarMessage, setSnackbarMessage]: any = useState('');\n // eslint-disable-next-line @typescript-eslint/no-use-before-define\n const [assignments, setAssignments] = useState<Array<any>>(initAssignments());\n\n const thePConn = getPConnect();\n const classes = useStyles();\n const theme = useTheme();\n const isDesktop = useMediaQuery(theme.breakpoints.up('md'));\n // const { setOpen } = useNavBar();\n\n function initAssignments(): Array<any> {\n if (assignmentsSource) {\n assignmentCount = assignmentsSource.length;\n return topThreeAssignments(assignmentsSource);\n } else {\n // turn off todolist\n return [];\n }\n }\n\n const getAssignmentkey = assignment => {\n return type === CONSTS.TODO ? assignment.ID : assignment.id;\n };\n\n const getPriority = assignment => {\n return type === CONSTS.TODO ? assignment.urgency : assignment.priority;\n };\n\n const getAssignmentName = assignment => {\n return type === CONSTS.TODO ? assignment.name : assignment.stepName;\n };\n\n function showToast(message: string) {\n const theMessage = `Assignment: ${message}`;\n // eslint-disable-next-line no-console\n console.error(theMessage);\n setSnackbarMessage(message);\n setShowSnackbar(true);\n }\n\n function handleSnackbarClose(event: React.SyntheticEvent | React.MouseEvent, reason?: string) {\n if (reason === 'clickaway') {\n return;\n }\n setShowSnackbar(false);\n }\n\n function _showMore() {\n setBShowMore(false);\n setAssignments(assignmentsSource);\n }\n\n function _showLess() {\n setBShowMore(true);\n setAssignments(topThreeAssignments(assignmentsSource));\n }\n\n function clickGo(assignment) {\n const { id } = assignment;\n let { classname = '' } = assignment;\n const sTarget = thePConn.getContainerName();\n const sTargetContainerName = sTarget;\n\n const options = { containerName: sTargetContainerName };\n\n if (classname === null || classname === '') {\n classname = thePConn.getCaseInfo().getClassName();\n }\n\n if (sTarget === 'workarea') {\n options['isActionFromToDoList'] = true;\n options['target'] = '';\n options['context'] = null;\n options['isChild'] = undefined;\n } else {\n options['isActionFromToDoList'] = false;\n options['target'] = sTarget;\n }\n\n thePConn\n .getActionsApi()\n .openAssignment(id, classname, options)\n .then(() => {\n if (bLogging) {\n // eslint-disable-next-line no-console\n console.log(`openAssignment completed`);\n }\n })\n .catch(() => {\n showToast(`Submit failed!`);\n });\n }\n\n const getListItemComponent = assignment => {\n if (isDesktop) {\n return (\n <>\n Task in\n <Button size='small' color='primary'>{`${assignment.name} ${getID(assignment)}`}</Button>\n {` \\u2022 `}\n <span className='psdk-todo-assignment-status'>{assignment.status}</span>\n {` \\u2022 Urgency ${getPriority(assignment)}`}\n </>\n );\n }\n return (\n <>\n <Button size='small' color='primary'>{`${assignment.name} ${getID(assignment)}`}</Button>\n {` \\u2022 Urgency ${getPriority(assignment)}`}\n </>\n );\n };\n\n return (\n <React.Fragment>\n <Card className={classes.root}>\n {showTodoList && (\n <CardHeader\n title={\n <Badge badgeContent={assignmentCount} color='primary'>\n <Typography variant='h6'>{headerText} </Typography>\n </Badge>\n }\n avatar={<Avatar className={classes.avatar}>{currentUserInitials}</Avatar>}\n ></CardHeader>\n )}\n <CardContent>\n <List>\n {assignments.map(assignment => (\n <ListItem\n key={getAssignmentkey(assignment)}\n dense\n divider\n onClick={() => clickGo(assignment)}\n >\n <ListItemText\n primary={getAssignmentName(assignment)}\n secondary={getListItemComponent(assignment)}\n />\n <ListItemSecondaryAction>\n <IconButton onClick={() => clickGo(assignment)}>\n <ArrowForwardIosOutlinedIcon />\n </IconButton>\n </ListItemSecondaryAction>\n </ListItem>\n ))}\n </List>\n </CardContent>\n {assignmentCount > 3 && (\n <Box display='flex' justifyContent='center'>\n {bShowMore ? (\n <Button color='primary' onClick={_showMore}>\n Show more\n </Button>\n ) : (\n <Button onClick={_showLess}>Show less</Button>\n )}\n </Box>\n )}\n </Card>\n\n <Snackbar\n open={showSnackbar}\n autoHideDuration={3000}\n onClose={handleSnackbarClose}\n message={snackbarMessage}\n action={\n <IconButton size='small' aria-label='close' color='inherit' onClick={handleSnackbarClose}>\n <CloseIcon fontSize='small' />\n </IconButton>\n }\n />\n </React.Fragment>\n );\n}\n\nToDo.propTypes = {\n datasource: PropTypes.instanceOf(Object),\n myWorkList: PropTypes.instanceOf(Object),\n // eslint-disable-next-line react/no-unused-prop-types\n caseInfoID: PropTypes.string,\n // buildName: PropTypes.string,\n getPConnect: PropTypes.func.isRequired,\n headerText: PropTypes.string,\n // eslint-disable-next-line react/no-unused-prop-types\n itemKey: PropTypes.string,\n showTodoList: PropTypes.bool,\n // target: PropTypes.string,\n type: PropTypes.string,\n // pageMessages: PropTypes.arrayOf(PropTypes.any),\n // eslint-disable-next-line react/no-unused-prop-types\n context: PropTypes.string\n // hideActionButtons: PropTypes.bool\n};\n\nToDo.defaultProps = {\n caseInfoID: '',\n datasource: [],\n myWorkList: {},\n // buildName: \"\",\n headerText: 'To do',\n itemKey: '',\n showTodoList: true,\n // target: \"\",\n type: 'worklist',\n // pageMessages: null,\n context: ''\n // hideActionButtons: false\n};\n"]}
|
|
1
|
+
{"version":3,"file":"ToDo.js","sourceRoot":"","sources":["../../../../src/components/infra/ToDo/ToDo.tsx"],"names":[],"mappings":"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","sourcesContent":["import React, { useState } from 'react';\nimport PropTypes from 'prop-types';\nimport { Utils } from '../../helpers/utils';\nimport {\n Box,\n Button,\n Card,\n CardContent,\n CardHeader,\n Avatar,\n Typography,\n Badge,\n List,\n ListItem,\n ListItemText,\n ListItemSecondaryAction\n} from '@material-ui/core';\nimport Snackbar from '@material-ui/core/Snackbar';\nimport IconButton from '@material-ui/core/IconButton';\nimport CloseIcon from '@material-ui/icons/Close';\n\nimport ArrowForwardIosOutlinedIcon from '@material-ui/icons/ArrowForwardIosOutlined';\nimport { makeStyles } from '@material-ui/core/styles';\nimport { useTheme } from '@material-ui/core/styles';\nimport useMediaQuery from '@material-ui/core/useMediaQuery';\n\nimport './ToDo.css';\n\ndeclare const PCore: any;\n\nconst isChildCase = (assignment) => {\n return assignment.isChild;\n};\n\nfunction topThreeAssignments(assignmentsSource: Array<any>): Array<any> {\n return Array.isArray(assignmentsSource) ? assignmentsSource.slice(0, 3) : [];\n}\n\nfunction getID(assignment: any) {\n if (assignment.value) {\n const refKey = assignment.value;\n return refKey.substring(refKey.lastIndexOf(' ') + 1);\n } else {\n const refKey = assignment.ID;\n const arKeys = refKey.split('!')[0].split(' ');\n return arKeys[2];\n }\n}\n\nconst useStyles = makeStyles(theme => ({\n root: {\n marginTop: theme.spacing(1),\n marginBottom: theme.spacing(1),\n paddingBottom: theme.spacing(1),\n borderLeft: '6px solid',\n borderLeftColor: theme.palette.primary.light\n },\n avatar: {\n backgroundColor: theme.palette.primary.light,\n color: theme.palette.getContrastText(theme.palette.primary.light)\n }\n}));\n\nexport default function ToDo(props) {\n const { datasource, getPConnect, headerText, showTodoList, myWorkList, type } = props;\n\n const CONSTS = PCore.getConstants();\n\n const bLogging = true;\n let assignmentCount = 0;\n const currentUser = PCore.getEnvironmentInfo().getOperatorName();\n const currentUserInitials = Utils.getInitials(currentUser);\n const assignmentsSource = datasource?.source || myWorkList?.source;\n\n const [bShowMore, setBShowMore] = useState(true);\n const [showSnackbar, setShowSnackbar] = useState(false);\n const [snackbarMessage, setSnackbarMessage]: any = useState('');\n // eslint-disable-next-line @typescript-eslint/no-use-before-define\n const [assignments, setAssignments] = useState<Array<any>>(initAssignments());\n\n const thePConn = getPConnect();\n const classes = useStyles();\n const theme = useTheme();\n const isDesktop = useMediaQuery(theme.breakpoints.up('md'));\n // const { setOpen } = useNavBar();\n\n function initAssignments(): Array<any> {\n if (assignmentsSource) {\n assignmentCount = assignmentsSource.length;\n return topThreeAssignments(assignmentsSource);\n } else {\n // turn off todolist\n return [];\n }\n }\n\n const getAssignmentId = assignment => {\n return type === CONSTS.TODO ? assignment.ID : assignment.id;\n };\n\n const getPriority = assignment => {\n return type === CONSTS.TODO ? assignment.urgency : assignment.priority;\n };\n\n const getAssignmentName = assignment => {\n return type === CONSTS.TODO ? assignment.name : assignment.stepName;\n };\n\n function showToast(message: string) {\n const theMessage = `Assignment: ${message}`;\n // eslint-disable-next-line no-console\n console.error(theMessage);\n setSnackbarMessage(message);\n setShowSnackbar(true);\n }\n\n function handleSnackbarClose(event: React.SyntheticEvent | React.MouseEvent, reason?: string) {\n if (reason === 'clickaway') {\n return;\n }\n setShowSnackbar(false);\n }\n\n function _showMore() {\n setBShowMore(false);\n setAssignments(assignmentsSource);\n }\n\n function _showLess() {\n setBShowMore(true);\n setAssignments(topThreeAssignments(assignmentsSource));\n }\n\n function clickGo(assignment) {\n const id = getAssignmentId(assignment);\n let { classname = '' } = assignment;\n const sTarget = thePConn.getContainerName();\n const sTargetContainerName = sTarget;\n\n const options = { containerName: sTargetContainerName };\n\n if (classname === null || classname === '') {\n classname = thePConn.getCaseInfo().getClassName();\n }\n\n if (sTarget === 'workarea') {\n options['isActionFromToDoList'] = true;\n options['target'] = '';\n options['context'] = null;\n options['isChild'] = isChildCase(assignment);\n } else {\n options['isActionFromToDoList'] = false;\n options['target'] = sTarget;\n }\n\n thePConn\n .getActionsApi()\n .openAssignment(id, classname, options)\n .then(() => {\n if (bLogging) {\n // eslint-disable-next-line no-console\n console.log(`openAssignment completed`);\n }\n })\n .catch(() => {\n showToast(`Submit failed!`);\n });\n }\n\n const getListItemComponent = assignment => {\n if (isDesktop) {\n return (\n <>\n Task in\n <Button size='small' color='primary'>{`${assignment.name} ${getID(assignment)}`}</Button>\n {` \\u2022 `}\n <span className='psdk-todo-assignment-status'>{assignment.status}</span>\n {` \\u2022 Urgency ${getPriority(assignment)}`}\n </>\n );\n }\n return (\n <>\n <Button size='small' color='primary'>{`${assignment.name} ${getID(assignment)}`}</Button>\n {` \\u2022 Urgency ${getPriority(assignment)}`}\n </>\n );\n };\n\n return (\n <React.Fragment>\n <Card className={classes.root}>\n {showTodoList && (\n <CardHeader\n title={\n <Badge badgeContent={assignmentCount} color='primary'>\n <Typography variant='h6'>{headerText} </Typography>\n </Badge>\n }\n avatar={<Avatar className={classes.avatar}>{currentUserInitials}</Avatar>}\n ></CardHeader>\n )}\n <CardContent>\n <List>\n {assignments.map(assignment => (\n <ListItem\n key={getAssignmentId(assignment)}\n dense\n divider\n onClick={() => clickGo(assignment)}\n >\n <ListItemText\n primary={getAssignmentName(assignment)}\n secondary={getListItemComponent(assignment)}\n />\n <ListItemSecondaryAction>\n <IconButton onClick={() => clickGo(assignment)}>\n <ArrowForwardIosOutlinedIcon />\n </IconButton>\n </ListItemSecondaryAction>\n </ListItem>\n ))}\n </List>\n </CardContent>\n {assignmentCount > 3 && (\n <Box display='flex' justifyContent='center'>\n {bShowMore ? (\n <Button color='primary' onClick={_showMore}>\n Show more\n </Button>\n ) : (\n <Button onClick={_showLess}>Show less</Button>\n )}\n </Box>\n )}\n </Card>\n\n <Snackbar\n open={showSnackbar}\n autoHideDuration={3000}\n onClose={handleSnackbarClose}\n message={snackbarMessage}\n action={\n <IconButton size='small' aria-label='close' color='inherit' onClick={handleSnackbarClose}>\n <CloseIcon fontSize='small' />\n </IconButton>\n }\n />\n </React.Fragment>\n );\n}\n\nToDo.propTypes = {\n datasource: PropTypes.instanceOf(Object),\n myWorkList: PropTypes.instanceOf(Object),\n // eslint-disable-next-line react/no-unused-prop-types\n caseInfoID: PropTypes.string,\n // buildName: PropTypes.string,\n getPConnect: PropTypes.func.isRequired,\n headerText: PropTypes.string,\n // eslint-disable-next-line react/no-unused-prop-types\n itemKey: PropTypes.string,\n showTodoList: PropTypes.bool,\n // target: PropTypes.string,\n type: PropTypes.string,\n // pageMessages: PropTypes.arrayOf(PropTypes.any),\n // eslint-disable-next-line react/no-unused-prop-types\n context: PropTypes.string\n // hideActionButtons: PropTypes.bool\n};\n\nToDo.defaultProps = {\n caseInfoID: '',\n datasource: [],\n myWorkList: {},\n // buildName: \"\",\n headerText: 'To do',\n itemKey: '',\n showTodoList: true,\n // target: \"\",\n type: 'worklist',\n // pageMessages: null,\n context: ''\n // hideActionButtons: false\n};\n"]}
|
|
@@ -35,7 +35,7 @@ import IconButton from '@material-ui/core/IconButton';
|
|
|
35
35
|
import CloseIcon from '@material-ui/icons/Close';
|
|
36
36
|
import { Radio } from '@material-ui/core';
|
|
37
37
|
import Checkbox from '@material-ui/core/Checkbox';
|
|
38
|
-
import { filterData } from '../../templates/SimpleTable/
|
|
38
|
+
import { filterData } from '../../templates/SimpleTable/simpleTableHelpers';
|
|
39
39
|
import './ListView.css';
|
|
40
40
|
const SELECTION_MODE = { SINGLE: 'single', MULTI: 'multi' };
|
|
41
41
|
let myRows;
|