@pega/react-sdk-components 0.23.19 → 0.23.21

This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
Files changed (70) hide show
  1. package/lib/components/designSystemExtension/Banner/Banner.css +35 -0
  2. package/lib/components/designSystemExtension/Banner/Banner.d.ts +4 -0
  3. package/lib/components/designSystemExtension/Banner/Banner.d.ts.map +1 -0
  4. package/lib/components/designSystemExtension/Banner/Banner.js +18 -0
  5. package/lib/components/designSystemExtension/Banner/Banner.js.map +1 -0
  6. package/lib/components/designSystemExtension/Banner/index.d.ts +2 -0
  7. package/lib/components/designSystemExtension/Banner/index.d.ts.map +1 -0
  8. package/lib/components/designSystemExtension/Banner/index.js +2 -0
  9. package/lib/components/designSystemExtension/Banner/index.js.map +1 -0
  10. package/lib/components/designSystemExtension/CaseSummaryFields/CaseSummaryFields.d.ts.map +1 -1
  11. package/lib/components/designSystemExtension/CaseSummaryFields/CaseSummaryFields.js +1 -2
  12. package/lib/components/designSystemExtension/CaseSummaryFields/CaseSummaryFields.js.map +1 -1
  13. package/lib/components/field/DateTime/DateTime.d.ts.map +1 -1
  14. package/lib/components/field/DateTime/DateTime.js +6 -7
  15. package/lib/components/field/DateTime/DateTime.js.map +1 -1
  16. package/lib/components/helpers/template-utils.d.ts.map +1 -1
  17. package/lib/components/helpers/template-utils.js +4 -3
  18. package/lib/components/helpers/template-utils.js.map +1 -1
  19. package/lib/components/infra/Assignment/Assignment.d.ts +1 -1
  20. package/lib/components/infra/Assignment/Assignment.d.ts.map +1 -1
  21. package/lib/components/infra/Assignment/Assignment.js +42 -42
  22. package/lib/components/infra/Assignment/Assignment.js.map +1 -1
  23. package/lib/components/infra/Containers/FlowContainer/FlowContainer.d.ts +1 -1
  24. package/lib/components/infra/Containers/FlowContainer/FlowContainer.d.ts.map +1 -1
  25. package/lib/components/infra/Containers/FlowContainer/FlowContainer.js +118 -119
  26. package/lib/components/infra/Containers/FlowContainer/FlowContainer.js.map +1 -1
  27. package/lib/components/infra/View/View.d.ts.map +1 -1
  28. package/lib/components/infra/View/View.js +2 -1
  29. package/lib/components/infra/View/View.js.map +1 -1
  30. package/lib/components/template/AppShell/AppShell.d.ts +1 -1
  31. package/lib/components/template/AppShell/AppShell.d.ts.map +1 -1
  32. package/lib/components/template/AppShell/AppShell.js +108 -14
  33. package/lib/components/template/AppShell/AppShell.js.map +1 -1
  34. package/lib/components/template/BannerPage/BannerPage.d.ts +26 -0
  35. package/lib/components/template/BannerPage/BannerPage.d.ts.map +1 -0
  36. package/lib/components/template/BannerPage/BannerPage.js +41 -0
  37. package/lib/components/template/BannerPage/BannerPage.js.map +1 -0
  38. package/lib/components/template/BannerPage/index.d.ts +2 -0
  39. package/lib/components/template/BannerPage/index.d.ts.map +1 -0
  40. package/lib/components/template/BannerPage/index.js +2 -0
  41. package/lib/components/template/BannerPage/index.js.map +1 -0
  42. package/lib/components/template/Confirmation/Confirmation.d.ts +20 -0
  43. package/lib/components/template/Confirmation/Confirmation.d.ts.map +1 -0
  44. package/lib/components/template/Confirmation/Confirmation.js +61 -0
  45. package/lib/components/template/Confirmation/Confirmation.js.map +1 -0
  46. package/lib/components/template/Confirmation/index.d.ts +2 -0
  47. package/lib/components/template/Confirmation/index.d.ts.map +1 -0
  48. package/lib/components/template/Confirmation/index.js +2 -0
  49. package/lib/components/template/Confirmation/index.js.map +1 -0
  50. package/lib/components/template/WssNavBar/WssNavBar.css +5 -0
  51. package/lib/components/template/WssNavBar/WssNavBar.d.ts +4 -0
  52. package/lib/components/template/WssNavBar/WssNavBar.d.ts.map +1 -0
  53. package/lib/components/template/WssNavBar/WssNavBar.js +83 -0
  54. package/lib/components/template/WssNavBar/WssNavBar.js.map +1 -0
  55. package/lib/components/template/WssNavBar/index.d.ts +2 -0
  56. package/lib/components/template/WssNavBar/index.d.ts.map +1 -0
  57. package/lib/components/template/WssNavBar/index.js +2 -0
  58. package/lib/components/template/WssNavBar/index.js.map +1 -0
  59. package/lib/components/widget/Attachment/Attachment.d.ts.map +1 -1
  60. package/lib/components/widget/Attachment/Attachment.js +4 -4
  61. package/lib/components/widget/Attachment/Attachment.js.map +1 -1
  62. package/lib/components/widget/ToDo/ToDo.css +10 -4
  63. package/lib/components/widget/ToDo/ToDo.d.ts +2 -0
  64. package/lib/components/widget/ToDo/ToDo.d.ts.map +1 -1
  65. package/lib/components/widget/ToDo/ToDo.js +45 -11
  66. package/lib/components/widget/ToDo/ToDo.js.map +1 -1
  67. package/lib/sdk-pega-component-map.d.ts +8 -0
  68. package/lib/sdk-pega-component-map.js +9 -1
  69. package/lib/sdk-pega-component-map.js.map +1 -1
  70. package/package.json +1 -1
@@ -0,0 +1,35 @@
1
+ .background-image-style {
2
+ margin-left: -16px;
3
+ margin-right: -16px;
4
+ height: calc(19rem);
5
+ background-size: cover;
6
+ background-position: center center;
7
+ }
8
+
9
+ .background-style {
10
+ background-color: transparent;
11
+ color: rgb(0, 0, 0);
12
+ width: 100%;
13
+ height: 100%;
14
+ text-align: center;
15
+ }
16
+
17
+ .content {
18
+ display: flex;
19
+ flex-direction: column;
20
+ justify-content: center;
21
+ align-items: center;
22
+ gap: calc(0.5rem);
23
+ }
24
+
25
+ .title {
26
+ margin: 0rem;
27
+ font-size: 1.728rem;
28
+ font-weight: 600;
29
+ }
30
+
31
+ .message {
32
+ margin: 0;
33
+ font-size: 1rem;
34
+ font-weight: 400;
35
+ }
@@ -0,0 +1,4 @@
1
+ /// <reference types="react" />
2
+ import './Banner.css';
3
+ export default function Banner(props: any): JSX.Element;
4
+ //# sourceMappingURL=Banner.d.ts.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"Banner.d.ts","sourceRoot":"","sources":["../../../../src/components/designSystemExtension/Banner/Banner.tsx"],"names":[],"mappings":";AAEA,OAAO,cAAc,CAAC;AAEtB,MAAM,CAAC,OAAO,UAAU,MAAM,CAAC,KAAK,KAAA,eA4BnC"}
@@ -0,0 +1,18 @@
1
+ import React from 'react';
2
+ import Grid from '@material-ui/core/Grid';
3
+ import './Banner.css';
4
+ export default function Banner(props) {
5
+ const { a, b, banner } = props;
6
+ const { title, message, backgroundImage } = banner;
7
+ return (React.createElement("div", null,
8
+ React.createElement("div", { className: 'background-image-style', style: { backgroundImage: `url(${backgroundImage})` } },
9
+ React.createElement("div", { className: 'background-style content' },
10
+ React.createElement("div", null,
11
+ React.createElement("h1", { className: 'title' }, title),
12
+ React.createElement("p", { className: 'message' }, message)))),
13
+ React.createElement("div", { style: { padding: '1rem' } },
14
+ React.createElement(Grid, { container: true, item: true, xs: 12, spacing: 1 },
15
+ React.createElement(Grid, { item: true, xs: 8, style: { padding: '1em' } }, a),
16
+ React.createElement(Grid, { item: true, xs: 4, style: { padding: '1em' } }, b)))));
17
+ }
18
+ //# sourceMappingURL=Banner.js.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"Banner.js","sourceRoot":"","sources":["../../../../src/components/designSystemExtension/Banner/Banner.tsx"],"names":[],"mappings":"AAAA,OAAO,KAAK,MAAM,OAAO,CAAC;AAC1B,OAAO,IAAI,MAAM,wBAAwB,CAAC;AAC1C,OAAO,cAAc,CAAC;AAEtB,MAAM,CAAC,OAAO,UAAU,MAAM,CAAC,KAAK;IAClC,MAAM,EAAE,CAAC,EAAE,CAAC,EAAE,MAAM,EAAE,GAAG,KAAK,CAAC;IAC/B,MAAM,EAAE,KAAK,EAAE,OAAO,EAAE,eAAe,EAAE,GAAG,MAAM,CAAC;IACnD,OAAO,CACL;QACE,6BACE,SAAS,EAAC,wBAAwB,EAClC,KAAK,EAAE,EAAE,eAAe,EAAE,OAAO,eAAe,GAAG,EAAE;YAErD,6BAAK,SAAS,EAAC,0BAA0B;gBACvC;oBACE,4BAAI,SAAS,EAAC,OAAO,IAAE,KAAK,CAAM;oBAClC,2BAAG,SAAS,EAAC,SAAS,IAAE,OAAO,CAAK,CAChC,CACF,CACF;QACN,6BAAK,KAAK,EAAE,EAAE,OAAO,EAAE,MAAM,EAAE;YAC7B,oBAAC,IAAI,IAAC,SAAS,QAAC,IAAI,QAAC,EAAE,EAAE,EAAE,EAAE,OAAO,EAAE,CAAC;gBACrC,oBAAC,IAAI,IAAC,IAAI,QAAC,EAAE,EAAE,CAAC,EAAE,KAAK,EAAE,EAAE,OAAO,EAAE,KAAK,EAAE,IACxC,CAAC,CACG;gBACP,oBAAC,IAAI,IAAC,IAAI,QAAC,EAAE,EAAE,CAAC,EAAE,KAAK,EAAE,EAAE,OAAO,EAAE,KAAK,EAAE,IACxC,CAAC,CACG,CACF,CACH,CACF,CACP,CAAC;AACJ,CAAC","sourcesContent":["import React from 'react';\nimport Grid from '@material-ui/core/Grid';\nimport './Banner.css';\n\nexport default function Banner(props) {\n const { a, b, banner } = props;\n const { title, message, backgroundImage } = banner;\n return (\n <div>\n <div\n className='background-image-style'\n style={{ backgroundImage: `url(${backgroundImage})` }}\n >\n <div className='background-style content'>\n <div>\n <h1 className='title'>{title}</h1>\n <p className='message'>{message}</p>\n </div>\n </div>\n </div>\n <div style={{ padding: '1rem' }}>\n <Grid container item xs={12} spacing={1}>\n <Grid item xs={8} style={{ padding: '1em' }}>\n {a}\n </Grid>\n <Grid item xs={4} style={{ padding: '1em' }}>\n {b}\n </Grid>\n </Grid>\n </div>\n </div>\n );\n}\n"]}
@@ -0,0 +1,2 @@
1
+ export { default } from './Banner';
2
+ //# sourceMappingURL=index.d.ts.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"index.d.ts","sourceRoot":"","sources":["../../../../src/components/designSystemExtension/Banner/index.tsx"],"names":[],"mappings":"AAAA,OAAO,EAAE,OAAO,EAAE,MAAM,UAAU,CAAC"}
@@ -0,0 +1,2 @@
1
+ export { default } from './Banner';
2
+ //# sourceMappingURL=index.js.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"index.js","sourceRoot":"","sources":["../../../../src/components/designSystemExtension/Banner/index.tsx"],"names":[],"mappings":"AAAA,OAAO,EAAE,OAAO,EAAE,MAAM,UAAU,CAAC","sourcesContent":["export { default } from './Banner';\n"]}
@@ -1 +1 @@
1
- {"version":3,"file":"CaseSummaryFields.d.ts","sourceRoot":"","sources":["../../../../src/components/designSystemExtension/CaseSummaryFields/CaseSummaryFields.tsx"],"names":[],"mappings":";AACA,OAAO,SAAS,MAAM,YAAY,CAAC;AASnC,OAAO,yBAAyB,CAAC;AAIjC,iBAAwB,iBAAiB,CAAC,KAAK,KAAA,eAuN9C;kBAvNuB,iBAAiB;;;;;;;eAAjB,iBAAiB"}
1
+ {"version":3,"file":"CaseSummaryFields.d.ts","sourceRoot":"","sources":["../../../../src/components/designSystemExtension/CaseSummaryFields/CaseSummaryFields.tsx"],"names":[],"mappings":";AACA,OAAO,SAAS,MAAM,YAAY,CAAC;AASnC,OAAO,yBAAyB,CAAC;AAIjC,iBAAwB,iBAAiB,CAAC,KAAK,KAAA,eAsN9C;kBAtNuB,iBAAiB;;;;;;;eAAjB,iBAAiB"}
@@ -71,8 +71,7 @@ export default function CaseSummaryFields(props) {
71
71
  case 'date':
72
72
  case 'datetime': {
73
73
  const theDateFormatInfo = getDateFormatInfo();
74
- // eslint-disable-next-line no-console
75
- console.log(`theDateFormatInfo: ${theDateFormatInfo}`);
74
+ // console.log(`theDateFormatInfo: ${theDateFormatInfo}`);
76
75
  const theFormat = (fieldTypeLower === 'datetime') ? `${theDateFormatInfo.dateFormatStringLong} hh:mm a` : theDateFormatInfo.dateFormatStringLong;
77
76
  return (React.createElement(TextField, { value: format(field.config.value, field.type, { format: theFormat }), label: field.config.label, InputProps: {
78
77
  readOnly: true,
@@ -1 +1 @@
1
- {"version":3,"file":"CaseSummaryFields.js","sourceRoot":"","sources":["../../../../src/components/designSystemExtension/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';\nimport { getDateFormatInfo } from '../../helpers/date-format-utils';\nimport { getCurrencyOptions } from '../../field/Currency/currency-utils';\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 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 (\n <TextField\n value='---'\n label={field.config.label}\n InputProps={{\n readOnly: true,\n disableUnderline: true\n }}\n />\n );\n }\n }\n\n switch (fieldTypeLower) {\n case 'textinput':\n case 'decimal':\n case 'integer':\n case 'dropdown':\n return (\n <TextField\n value={field.config.value}\n label={field.config.label}\n InputProps={{\n readOnly: true,\n disableUnderline: true\n }}\n />\n );\n\n case 'checkbox': {\n const { caption, label, value, trueLabel, falseLabel } = field.config;\n const fieldLabel = label || caption;\n const fieldValue = value ? trueLabel : falseLabel;\n\n return (\n <TextField\n value={fieldValue}\n label={fieldLabel}\n InputProps={{\n readOnly: true,\n disableUnderline: true\n }}\n />\n );\n }\n\n case 'status':\n return (\n <TextField\n className='psdk-csf-status-style'\n value={field.config.value}\n label={field.config.label}\n InputProps={{\n readOnly: true,\n disableUnderline: true\n }}\n />\n );\n\n case 'phone': {\n const displayPhone = field.config.value !== '' ? field.config.value : '---';\n return (\n <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' }, disableUnderline: true }\n }}\n />\n </a>\n );\n }\n\n case 'email': {\n const displayEmail = format(field.config.value, field.type);\n return (\n <a href={`mailto:${displayEmail}`}>\n <TextField\n value={field.config.value}\n label={field.config.label}\n InputProps={{\n readOnly: true,\n disableUnderline: true,\n inputProps: { style: { cursor: 'pointer' } }\n }}\n />\n </a>\n );\n }\n\n case 'date':\n case 'datetime': {\n const theDateFormatInfo = getDateFormatInfo();\n // eslint-disable-next-line no-console\n console.log(`theDateFormatInfo: ${theDateFormatInfo}`);\n const theFormat = (fieldTypeLower === 'datetime') ? `${theDateFormatInfo.dateFormatStringLong} hh:mm a` : theDateFormatInfo.dateFormatStringLong\n\n return (\n <TextField\n value={format(field.config.value, field.type, { format: theFormat })}\n label={field.config.label}\n InputProps={{\n readOnly: true,\n disableUnderline: true\n }}\n />\n );\n }\n\n case 'currency': {\n const theCurrencyOptions = getCurrencyOptions(field.config?.currencyISOCode);\n return (\n <TextField\n value={format(field.config.value, field.type, theCurrencyOptions)}\n label={field.config.label}\n InputProps={{\n readOnly: true,\n disableUnderline: true\n }}\n />\n );\n\n }\n\n\n case 'boolean':\n case 'userreference':\n return (\n <TextField\n value={format(field.config.value, field.type)}\n label={field.config.label}\n InputProps={{\n readOnly: true,\n disableUnderline: true\n }}\n />\n );\n\n case 'caseoperator':\n return <Operator caseOpConfig={field.config} />;\n\n default:\n return (\n <span>\n {field.type.toLowerCase()} {field.config.value}\n </span>\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 // display the field when either visibility property doesn't exist or is true(if exists)\n if (field.config.visibility === undefined || field.config.visibility === true) {\n return (\n <Grid item xs={6} key={field.config.label}>\n {getFieldValue(field)}\n </Grid>\n );\n }\n\n return null;\n });\n setFieldsAsGridItems(arGridItems);\n }, [theFieldsToRender]);\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 } 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 return (\n <React.Fragment>\n <Grid container className='psdk-case-summary-fields'>\n {theFieldsAsGridItems}\n </Grid>\n </React.Fragment>\n );\n}\n\nCaseSummaryFields.propTypes = {\n status: PropTypes.string,\n showStatus: PropTypes.bool,\n theFields: PropTypes.arrayOf(PropTypes.object)\n};\n"]}
1
+ {"version":3,"file":"CaseSummaryFields.js","sourceRoot":"","sources":["../../../../src/components/designSystemExtension/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';\nimport { getDateFormatInfo } from '../../helpers/date-format-utils';\nimport { getCurrencyOptions } from '../../field/Currency/currency-utils';\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 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 (\n <TextField\n value='---'\n label={field.config.label}\n InputProps={{\n readOnly: true,\n disableUnderline: true\n }}\n />\n );\n }\n }\n\n switch (fieldTypeLower) {\n case 'textinput':\n case 'decimal':\n case 'integer':\n case 'dropdown':\n return (\n <TextField\n value={field.config.value}\n label={field.config.label}\n InputProps={{\n readOnly: true,\n disableUnderline: true\n }}\n />\n );\n\n case 'checkbox': {\n const { caption, label, value, trueLabel, falseLabel } = field.config;\n const fieldLabel = label || caption;\n const fieldValue = value ? trueLabel : falseLabel;\n\n return (\n <TextField\n value={fieldValue}\n label={fieldLabel}\n InputProps={{\n readOnly: true,\n disableUnderline: true\n }}\n />\n );\n }\n\n case 'status':\n return (\n <TextField\n className='psdk-csf-status-style'\n value={field.config.value}\n label={field.config.label}\n InputProps={{\n readOnly: true,\n disableUnderline: true\n }}\n />\n );\n\n case 'phone': {\n const displayPhone = field.config.value !== '' ? field.config.value : '---';\n return (\n <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' }, disableUnderline: true }\n }}\n />\n </a>\n );\n }\n\n case 'email': {\n const displayEmail = format(field.config.value, field.type);\n return (\n <a href={`mailto:${displayEmail}`}>\n <TextField\n value={field.config.value}\n label={field.config.label}\n InputProps={{\n readOnly: true,\n disableUnderline: true,\n inputProps: { style: { cursor: 'pointer' } }\n }}\n />\n </a>\n );\n }\n\n case 'date':\n case 'datetime': {\n const theDateFormatInfo = getDateFormatInfo();\n // console.log(`theDateFormatInfo: ${theDateFormatInfo}`);\n const theFormat = (fieldTypeLower === 'datetime') ? `${theDateFormatInfo.dateFormatStringLong} hh:mm a` : theDateFormatInfo.dateFormatStringLong\n\n return (\n <TextField\n value={format(field.config.value, field.type, { format: theFormat })}\n label={field.config.label}\n InputProps={{\n readOnly: true,\n disableUnderline: true\n }}\n />\n );\n }\n\n case 'currency': {\n const theCurrencyOptions = getCurrencyOptions(field.config?.currencyISOCode);\n return (\n <TextField\n value={format(field.config.value, field.type, theCurrencyOptions)}\n label={field.config.label}\n InputProps={{\n readOnly: true,\n disableUnderline: true\n }}\n />\n );\n\n }\n\n\n case 'boolean':\n case 'userreference':\n return (\n <TextField\n value={format(field.config.value, field.type)}\n label={field.config.label}\n InputProps={{\n readOnly: true,\n disableUnderline: true\n }}\n />\n );\n\n case 'caseoperator':\n return <Operator caseOpConfig={field.config} />;\n\n default:\n return (\n <span>\n {field.type.toLowerCase()} {field.config.value}\n </span>\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 // display the field when either visibility property doesn't exist or is true(if exists)\n if (field.config.visibility === undefined || field.config.visibility === true) {\n return (\n <Grid item xs={6} key={field.config.label}>\n {getFieldValue(field)}\n </Grid>\n );\n }\n\n return null;\n });\n setFieldsAsGridItems(arGridItems);\n }, [theFieldsToRender]);\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 } 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 return (\n <React.Fragment>\n <Grid container className='psdk-case-summary-fields'>\n {theFieldsAsGridItems}\n </Grid>\n </React.Fragment>\n );\n}\n\nCaseSummaryFields.propTypes = {\n status: PropTypes.string,\n showStatus: PropTypes.bool,\n theFields: PropTypes.arrayOf(PropTypes.object)\n};\n"]}
@@ -1 +1 @@
1
- {"version":3,"file":"DateTime.d.ts","sourceRoot":"","sources":["../../../../src/components/field/DateTime/DateTime.tsx"],"names":[],"mappings":";AAQA,MAAM,CAAC,OAAO,UAAU,QAAQ,CAAC,KAAK,KAAA,eAoFrC"}
1
+ {"version":3,"file":"DateTime.d.ts","sourceRoot":"","sources":["../../../../src/components/field/DateTime/DateTime.tsx"],"names":[],"mappings":";AAQA,MAAM,CAAC,OAAO,UAAU,QAAQ,CAAC,KAAK,KAAA,eAmFrC"}
@@ -19,17 +19,16 @@ export default function DateTime(props) {
19
19
  dateFormatInfo.dateFormatStringLC = theDateFormat.dateFormatStringLC;
20
20
  dateFormatInfo.dateFormatMask = theDateFormat.dateFormatMask;
21
21
  if (displayMode === 'LABELS_LEFT') {
22
- const formattedDate = format(props.value, 'datetime', { format: `${dateFormatInfo.dateFormatString} hh:mm a` });
23
- return React.createElement(FieldValueList, { name: hideLabel ? '' : label, value: formattedDate });
22
+ const formattedDateTime = format(props.value, 'datetime', { format: `${dateFormatInfo.dateFormatString} hh:mm a` });
23
+ return React.createElement(FieldValueList, { name: hideLabel ? '' : label, value: formattedDateTime });
24
24
  }
25
25
  if (displayMode === 'STACKED_LARGE_VAL') {
26
- const formattedDate = format(props.value, 'datetime', { format: `${dateFormatInfo.dateFormatString} hh:mm a` });
27
- return React.createElement(FieldValueList, { name: hideLabel ? '' : label, value: formattedDate, variant: 'stacked' });
26
+ const formattedDateTime = format(props.value, 'datetime', { format: `${dateFormatInfo.dateFormatString} hh:mm a` });
27
+ return React.createElement(FieldValueList, { name: hideLabel ? '' : label, value: formattedDateTime, variant: 'stacked' });
28
28
  }
29
29
  if (readOnly) {
30
- const formattedDate = format(props.value, 'datetime');
31
- props.value = formattedDate;
32
- return React.createElement(TextInput, { ...props });
30
+ const formattedDateTime = format(props.value, 'datetime');
31
+ return React.createElement(TextInput, { ...props, value: formattedDateTime });
33
32
  }
34
33
  const handleChange = date => {
35
34
  const changeValue = date && date.isValid() ? date.toISOString() : null;
@@ -1 +1 @@
1
- {"version":3,"file":"DateTime.js","sourceRoot":"","sources":["../../../../src/components/field/DateTime/DateTime.tsx"],"names":[],"mappings":"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","sourcesContent":["import React from 'react';\nimport { KeyboardDateTimePicker } from '@material-ui/pickers';\nimport TextInput from '../TextInput';\nimport handleEvent from '../../helpers/event-utils';\nimport FieldValueList from '../../designSystemExtension/FieldValueList';\nimport { format } from '../../helpers/formatters/';\nimport { dateFormatInfoDefault, getDateFormatInfo} from '../../helpers/date-format-utils';\n\nexport default function DateTime(props) {\n const {\n getPConnect,\n label,\n required,\n disabled,\n value = '',\n validatemessage,\n status,\n onChange,\n readOnly,\n testId,\n helperText,\n displayMode,\n hideLabel\n } = props;\n\n const pConn = getPConnect();\n const actions = pConn.getActionsApi();\n const propName = pConn.getStateProps().value;\n const helperTextToDisplay = validatemessage || helperText;\n\n // Start with default dateFormatInfo\n const dateFormatInfo = dateFormatInfoDefault;\n // and then update, as needed, based on locale, etc.\n const theDateFormat = getDateFormatInfo()\n dateFormatInfo.dateFormatString = theDateFormat.dateFormatString;\n dateFormatInfo.dateFormatStringLC = theDateFormat.dateFormatStringLC;\n dateFormatInfo.dateFormatMask = theDateFormat.dateFormatMask;\n\n\n if (displayMode === 'LABELS_LEFT') {\n const formattedDate = format(props.value, 'datetime', { format: `${dateFormatInfo.dateFormatString} hh:mm a` });\n return <FieldValueList name={hideLabel ? '' : label} value={formattedDate} />;\n }\n\n if (displayMode === 'STACKED_LARGE_VAL') {\n const formattedDate = format(props.value, 'datetime', { format: `${dateFormatInfo.dateFormatString} hh:mm a` });\n return <FieldValueList name={hideLabel ? '' : label} value={formattedDate} variant='stacked' />;\n }\n\n if (readOnly) {\n const formattedDate = format(props.value, 'datetime');\n props.value = formattedDate;\n return <TextInput {...props} />;\n }\n\n const handleChange = date => {\n const changeValue = date && date.isValid() ? date.toISOString() : null;\n onChange({ value: changeValue });\n };\n\n const handleAccept = date => {\n const changeValue = date && date.isValid() ? date.toISOString() : null;\n handleEvent(actions, 'changeNblur', propName, changeValue);\n };\n\n //\n // TODO: Keyboard doesn't work in the minute field, it updates one digit then jump to am/pm field\n // try an older version of the lib or use DateTimePicker\n //\n\n return (\n <KeyboardDateTimePicker\n variant='inline'\n inputVariant='outlined'\n fullWidth\n autoOk\n required={required}\n disabled={disabled}\n placeholder={`${dateFormatInfo.dateFormatStringLC} hh:mm a`}\n format={`${dateFormatInfo.dateFormatString} hh:mm a`}\n mask={`${dateFormatInfo.dateFormatMask} __:__ _m`}\n minutesStep={5}\n error={status === 'error'}\n helperText={helperTextToDisplay}\n size='small'\n label={label}\n value={value || null}\n onChange={handleChange}\n onAccept={handleAccept}\n data-test-id={testId}\n />\n );\n}\n"]}
1
+ {"version":3,"file":"DateTime.js","sourceRoot":"","sources":["../../../../src/components/field/DateTime/DateTime.tsx"],"names":[],"mappings":"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","sourcesContent":["import React from 'react';\nimport { KeyboardDateTimePicker } from '@material-ui/pickers';\nimport TextInput from '../TextInput';\nimport handleEvent from '../../helpers/event-utils';\nimport FieldValueList from '../../designSystemExtension/FieldValueList';\nimport { format } from '../../helpers/formatters/';\nimport { dateFormatInfoDefault, getDateFormatInfo} from '../../helpers/date-format-utils';\n\nexport default function DateTime(props) {\n const {\n getPConnect,\n label,\n required,\n disabled,\n value = '',\n validatemessage,\n status,\n onChange,\n readOnly,\n testId,\n helperText,\n displayMode,\n hideLabel\n } = props;\n\n const pConn = getPConnect();\n const actions = pConn.getActionsApi();\n const propName = pConn.getStateProps().value;\n const helperTextToDisplay = validatemessage || helperText;\n\n // Start with default dateFormatInfo\n const dateFormatInfo = dateFormatInfoDefault;\n // and then update, as needed, based on locale, etc.\n const theDateFormat = getDateFormatInfo()\n dateFormatInfo.dateFormatString = theDateFormat.dateFormatString;\n dateFormatInfo.dateFormatStringLC = theDateFormat.dateFormatStringLC;\n dateFormatInfo.dateFormatMask = theDateFormat.dateFormatMask;\n\n\n if (displayMode === 'LABELS_LEFT') {\n const formattedDateTime = format(props.value, 'datetime', { format: `${dateFormatInfo.dateFormatString} hh:mm a` });\n return <FieldValueList name={hideLabel ? '' : label} value={formattedDateTime} />;\n }\n\n if (displayMode === 'STACKED_LARGE_VAL') {\n const formattedDateTime = format(props.value, 'datetime', { format: `${dateFormatInfo.dateFormatString} hh:mm a` });\n return <FieldValueList name={hideLabel ? '' : label} value={formattedDateTime} variant='stacked' />;\n }\n\n if (readOnly) {\n const formattedDateTime = format(props.value, 'datetime');\n return <TextInput {...props} value={formattedDateTime} />;\n }\n\n const handleChange = date => {\n const changeValue = date && date.isValid() ? date.toISOString() : null;\n onChange({ value: changeValue });\n };\n\n const handleAccept = date => {\n const changeValue = date && date.isValid() ? date.toISOString() : null;\n handleEvent(actions, 'changeNblur', propName, changeValue);\n };\n\n //\n // TODO: Keyboard doesn't work in the minute field, it updates one digit then jump to am/pm field\n // try an older version of the lib or use DateTimePicker\n //\n\n return (\n <KeyboardDateTimePicker\n variant='inline'\n inputVariant='outlined'\n fullWidth\n autoOk\n required={required}\n disabled={disabled}\n placeholder={`${dateFormatInfo.dateFormatStringLC} hh:mm a`}\n format={`${dateFormatInfo.dateFormatString} hh:mm a`}\n mask={`${dateFormatInfo.dateFormatMask} __:__ _m`}\n minutesStep={5}\n error={status === 'error'}\n helperText={helperTextToDisplay}\n size='small'\n label={label}\n value={value || null}\n onChange={handleChange}\n onAccept={handleAccept}\n data-test-id={testId}\n />\n );\n}\n"]}
@@ -1 +1 @@
1
- {"version":3,"file":"template-utils.d.ts","sourceRoot":"","sources":["../../../src/components/helpers/template-utils.ts"],"names":[],"mappings":"AAIA,wBAAgB,YAAY,CAAC,QAAQ,EAAE,GAAG,WAUzC;AAGD,wBAAgB,uBAAuB,CAAC,MAAM,EAAG,GAAG,OAQnD;AAGD;;;GAGG;AACF,wBAAgB,mBAAmB,CAAC,QAAQ,KAAA,WAY5C;AAED;;;;GAIG;AACH,wBAAgB,eAAe,CAAC,QAAQ,KAAA,EAAE,YAAY,SAAa,OA4BlE"}
1
+ {"version":3,"file":"template-utils.d.ts","sourceRoot":"","sources":["../../../src/components/helpers/template-utils.ts"],"names":[],"mappings":"AAIA,wBAAgB,YAAY,CAAC,QAAQ,EAAE,GAAG,WAUzC;AAED,wBAAgB,uBAAuB,CAAC,MAAM,EAAE,GAAG,OAQlD;AAED;;;GAGG;AACH,wBAAgB,mBAAmB,CAAC,QAAQ,KAAA,WAY3C;AAED;;;;GAIG;AACH,wBAAgB,eAAe,CAAC,QAAQ,KAAA,EAAE,YAAY,SAAa,OA8BlE"}
@@ -3,9 +3,9 @@ export function getAllFields(pConnect) {
3
3
  const metadata = pConnect.getRawMetadata();
4
4
  let allFields = [];
5
5
  if (metadata.children && metadata.children.map) {
6
- allFields = metadata.children.map((fields) => {
6
+ allFields = metadata.children.map(fields => {
7
7
  const children = fields.children instanceof Array ? fields.children : [];
8
- return children.map((field) => field.config);
8
+ return children.map(field => field.config);
9
9
  });
10
10
  }
11
11
  return allFields;
@@ -39,7 +39,8 @@ export function getIsAssignmentView(pConnect) {
39
39
  * @param {string} [instructions="casestep"] 'casestep', 'none', or the html content of a Rule-UI-Paragraph rule (processed via core's paragraph annotation handler)
40
40
  */
41
41
  export function getInstructions(pConnect, instructions = 'casestep') {
42
- const caseStepInstructions = pConnect.getValue(PCore.getConstants().CASE_INFO.INSTRUCTIONS);
42
+ const caseStepInstructions = PCore.getConstants().CASE_INFO.INSTRUCTIONS &&
43
+ pConnect.getValue(PCore.getConstants().CASE_INFO.INSTRUCTIONS);
43
44
  // Determine if this view is the current assignment/step view
44
45
  const isCurrentAssignmentView = getIsAssignmentView(pConnect);
45
46
  // Case step instructions
@@ -1 +1 @@
1
- {"version":3,"file":"template-utils.js","sourceRoot":"","sources":["../../../src/components/helpers/template-utils.ts"],"names":[],"mappings":"AAAA,mEAAmE;AAInE,MAAM,UAAU,YAAY,CAAC,QAAa;IACxC,MAAM,QAAQ,GAAG,QAAQ,CAAC,cAAc,EAAE,CAAC;IAC3C,IAAI,SAAS,GAAG,EAAE,CAAC;IACnB,IAAI,QAAQ,CAAC,QAAQ,IAAI,QAAQ,CAAC,QAAQ,CAAC,GAAG,EAAE;QAC9C,SAAS,GAAG,QAAQ,CAAC,QAAQ,CAAC,GAAG,CAAC,CAAC,MAAM,EAAE,EAAE;YAC3C,MAAM,QAAQ,GAAG,MAAM,CAAC,QAAQ,YAAY,KAAK,CAAC,CAAC,CAAC,MAAM,CAAC,QAAQ,CAAC,CAAC,CAAC,EAAE,CAAC;YACzE,OAAO,QAAQ,CAAC,GAAG,CAAC,CAAC,KAAK,EAAE,EAAE,CAAC,KAAK,CAAC,MAAM,CAAC,CAAC;QAC/C,CAAC,CAAC,CAAC;KACJ;IACD,OAAO,SAAS,CAAC;AACnB,CAAC;AAGD,MAAM,UAAU,uBAAuB,CAAC,MAAY;IAClD,OAAO,MAAM;SACV,MAAM,CAAC,CAAC,EAAE,UAAU,EAAE,EAAE,EAAE,CAAC,UAAU,KAAK,KAAK,CAAC;SAChD,GAAG,CAAC,CAAC,EAAE,KAAK,EAAE,KAAK,EAAE,EAAE,EAAE,CAAC,CAAC;QAC1B,EAAE,EAAE,KAAK,CAAC,WAAW,EAAE;QACvB,IAAI,EAAE,KAAK;QACX,KAAK;KACN,CAAC,CAAC,CAAC;AACR,CAAC;AAGD;;;GAGG;AACF,MAAM,UAAU,mBAAmB,CAAC,QAAQ;IAC3C,qGAAqG;IACrG,+FAA+F;IAC/F,MAAM,mBAAmB,GAAG,QAAQ,CAAC,QAAQ,CAAC,KAAK,CAAC,YAAY,EAAE,CAAC,SAAS,CAAC,iBAAiB,CAAC,CAAC;IAChG,MAAM,kBAAkB,GAAG,QAAQ,CAAC,QAAQ,CAAC,KAAK,CAAC,YAAY,EAAE,CAAC,SAAS,CAAC,mBAAmB,CAAC,CAAC;IAEjG,MAAM,gBAAgB,GAAG,GAAG,kBAAkB,IAAI,mBAAmB,EAAE,CAAC;IAExE,oDAAoD;IACpD,MAAM,aAAa,GAAG,GAAG,QAAQ,CAAC,cAAc,EAAE,IAAI,QAAQ,CAAC,iBAAiB,EAAE,EAAE,CAAC;IAErF,OAAO,gBAAgB,KAAK,aAAa,CAAC;AAC5C,CAAC;AAED;;;;GAIG;AACH,MAAM,UAAU,eAAe,CAAC,QAAQ,EAAE,YAAY,GAAG,UAAU;IACjE,MAAM,oBAAoB,GAAG,QAAQ,CAAC,QAAQ,CAAC,KAAK,CAAC,YAAY,EAAE,CAAC,SAAS,CAAC,YAAY,CAAC,CAAC;IAE5F,6DAA6D;IAC7D,MAAM,uBAAuB,GAAG,mBAAmB,CAAC,QAAQ,CAAC,CAAC;IAE9D,yBAAyB;IACzB,IAAI,YAAY,KAAK,UAAU,IAAI,uBAAuB,IAAI,oBAAoB,EAAE,MAAM,EAAE;QAC1F,OAAO,oBAAoB,CAAC;KAC7B;IAED,kBAAkB;IAClB,IAAI,YAAY,KAAK,MAAM,EAAE;QAC3B,OAAO,SAAS,CAAC;KAClB;IAED,kFAAkF;IAClF,IAAI,YAAY,EAAE,UAAU,CAAC,YAAY,CAAC,EAAE;QAC1C,OAAO,SAAS,CAAC;KAClB;IAED,oCAAoC;IACpC,iGAAiG;IACjG,+CAA+C;IAC/C,IAAI,YAAY,KAAK,UAAU,IAAI,YAAY,KAAK,MAAM,EAAE;QAC1D,OAAO,YAAY,CAAC;KACrB;IACD,OAAO,SAAS,CAAC;AACnB,CAAC","sourcesContent":["// This file is adapted from React DX components/template/utils.js\n\ndeclare const PCore: any;\n\nexport function getAllFields(pConnect: any) {\n const metadata = pConnect.getRawMetadata();\n let allFields = [];\n if (metadata.children && metadata.children.map) {\n allFields = metadata.children.map((fields) => {\n const children = fields.children instanceof Array ? fields.children : [];\n return children.map((field) => field.config);\n });\n }\n return allFields;\n}\n\n\nexport function filterForFieldValueList(fields : any) {\n return fields\n .filter(({ visibility }) => visibility !== false)\n .map(({ value, label }) => ({\n id: label.toLowerCase(),\n name: label,\n value\n }));\n}\n\n\n/**\n * Determine if the current view is the view of the case step/assignment.\n * @param {Function} pConnect PConnect object for the component\n */\n export function getIsAssignmentView(pConnect) {\n // Get caseInfo content from the store which contains the view info about the current assignment/step\n // TODO To be replaced with pConnect.getCaseInfo().getCurrentAssignmentView when it's available\n const assignmentViewClass = pConnect.getValue(PCore.getConstants().CASE_INFO.CASE_INFO_CLASSID);\n const assignmentViewName = pConnect.getValue(PCore.getConstants().CASE_INFO.ASSIGNMENTACTION_ID);\n\n const assignmentViewId = `${assignmentViewName}!${assignmentViewClass}`;\n\n // Get the info about the current view from pConnect\n const currentViewId = `${pConnect.getCurrentView()}!${pConnect.getCurrentClassID()}`;\n\n return assignmentViewId === currentViewId;\n}\n\n/**\n * A hook that gets the instructions content for a view.\n * @param {Function} pConnect PConnect object for the component\n * @param {string} [instructions=\"casestep\"] 'casestep', 'none', or the html content of a Rule-UI-Paragraph rule (processed via core's paragraph annotation handler)\n */\nexport function getInstructions(pConnect, instructions = 'casestep') {\n const caseStepInstructions = pConnect.getValue(PCore.getConstants().CASE_INFO.INSTRUCTIONS);\n\n // Determine if this view is the current assignment/step view\n const isCurrentAssignmentView = getIsAssignmentView(pConnect);\n\n // Case step instructions\n if (instructions === 'casestep' && isCurrentAssignmentView && caseStepInstructions?.length) {\n return caseStepInstructions;\n }\n\n // No instructions\n if (instructions === 'none') {\n return undefined;\n }\n\n // If the annotation wasn't processed correctly, don't return any instruction text\n if (instructions?.startsWith('@PARAGRAPH')) {\n return undefined;\n }\n\n // Custom instructions from the view\n // The raw metadata for `instructions` will be something like '@PARAGRAPH .SomeParagraphRule' but\n // it is evaluated by core logic to the content\n if (instructions !== 'casestep' && instructions !== 'none') {\n return instructions;\n }\n return undefined;\n}\n"]}
1
+ {"version":3,"file":"template-utils.js","sourceRoot":"","sources":["../../../src/components/helpers/template-utils.ts"],"names":[],"mappings":"AAAA,mEAAmE;AAInE,MAAM,UAAU,YAAY,CAAC,QAAa;IACxC,MAAM,QAAQ,GAAG,QAAQ,CAAC,cAAc,EAAE,CAAC;IAC3C,IAAI,SAAS,GAAG,EAAE,CAAC;IACnB,IAAI,QAAQ,CAAC,QAAQ,IAAI,QAAQ,CAAC,QAAQ,CAAC,GAAG,EAAE;QAC9C,SAAS,GAAG,QAAQ,CAAC,QAAQ,CAAC,GAAG,CAAC,MAAM,CAAC,EAAE;YACzC,MAAM,QAAQ,GAAG,MAAM,CAAC,QAAQ,YAAY,KAAK,CAAC,CAAC,CAAC,MAAM,CAAC,QAAQ,CAAC,CAAC,CAAC,EAAE,CAAC;YACzE,OAAO,QAAQ,CAAC,GAAG,CAAC,KAAK,CAAC,EAAE,CAAC,KAAK,CAAC,MAAM,CAAC,CAAC;QAC7C,CAAC,CAAC,CAAC;KACJ;IACD,OAAO,SAAS,CAAC;AACnB,CAAC;AAED,MAAM,UAAU,uBAAuB,CAAC,MAAW;IACjD,OAAO,MAAM;SACV,MAAM,CAAC,CAAC,EAAE,UAAU,EAAE,EAAE,EAAE,CAAC,UAAU,KAAK,KAAK,CAAC;SAChD,GAAG,CAAC,CAAC,EAAE,KAAK,EAAE,KAAK,EAAE,EAAE,EAAE,CAAC,CAAC;QAC1B,EAAE,EAAE,KAAK,CAAC,WAAW,EAAE;QACvB,IAAI,EAAE,KAAK;QACX,KAAK;KACN,CAAC,CAAC,CAAC;AACR,CAAC;AAED;;;GAGG;AACH,MAAM,UAAU,mBAAmB,CAAC,QAAQ;IAC1C,qGAAqG;IACrG,+FAA+F;IAC/F,MAAM,mBAAmB,GAAG,QAAQ,CAAC,QAAQ,CAAC,KAAK,CAAC,YAAY,EAAE,CAAC,SAAS,CAAC,iBAAiB,CAAC,CAAC;IAChG,MAAM,kBAAkB,GAAG,QAAQ,CAAC,QAAQ,CAAC,KAAK,CAAC,YAAY,EAAE,CAAC,SAAS,CAAC,mBAAmB,CAAC,CAAC;IAEjG,MAAM,gBAAgB,GAAG,GAAG,kBAAkB,IAAI,mBAAmB,EAAE,CAAC;IAExE,oDAAoD;IACpD,MAAM,aAAa,GAAG,GAAG,QAAQ,CAAC,cAAc,EAAE,IAAI,QAAQ,CAAC,iBAAiB,EAAE,EAAE,CAAC;IAErF,OAAO,gBAAgB,KAAK,aAAa,CAAC;AAC5C,CAAC;AAED;;;;GAIG;AACH,MAAM,UAAU,eAAe,CAAC,QAAQ,EAAE,YAAY,GAAG,UAAU;IACjE,MAAM,oBAAoB,GACxB,KAAK,CAAC,YAAY,EAAE,CAAC,SAAS,CAAC,YAAY;QAC3C,QAAQ,CAAC,QAAQ,CAAC,KAAK,CAAC,YAAY,EAAE,CAAC,SAAS,CAAC,YAAY,CAAC,CAAC;IAEjE,6DAA6D;IAC7D,MAAM,uBAAuB,GAAG,mBAAmB,CAAC,QAAQ,CAAC,CAAC;IAE9D,yBAAyB;IACzB,IAAI,YAAY,KAAK,UAAU,IAAI,uBAAuB,IAAI,oBAAoB,EAAE,MAAM,EAAE;QAC1F,OAAO,oBAAoB,CAAC;KAC7B;IAED,kBAAkB;IAClB,IAAI,YAAY,KAAK,MAAM,EAAE;QAC3B,OAAO,SAAS,CAAC;KAClB;IAED,kFAAkF;IAClF,IAAI,YAAY,EAAE,UAAU,CAAC,YAAY,CAAC,EAAE;QAC1C,OAAO,SAAS,CAAC;KAClB;IAED,oCAAoC;IACpC,iGAAiG;IACjG,+CAA+C;IAC/C,IAAI,YAAY,KAAK,UAAU,IAAI,YAAY,KAAK,MAAM,EAAE;QAC1D,OAAO,YAAY,CAAC;KACrB;IACD,OAAO,SAAS,CAAC;AACnB,CAAC","sourcesContent":["// This file is adapted from React DX components/template/utils.js\n\ndeclare const PCore: any;\n\nexport function getAllFields(pConnect: any) {\n const metadata = pConnect.getRawMetadata();\n let allFields = [];\n if (metadata.children && metadata.children.map) {\n allFields = metadata.children.map(fields => {\n const children = fields.children instanceof Array ? fields.children : [];\n return children.map(field => field.config);\n });\n }\n return allFields;\n}\n\nexport function filterForFieldValueList(fields: any) {\n return fields\n .filter(({ visibility }) => visibility !== false)\n .map(({ value, label }) => ({\n id: label.toLowerCase(),\n name: label,\n value\n }));\n}\n\n/**\n * Determine if the current view is the view of the case step/assignment.\n * @param {Function} pConnect PConnect object for the component\n */\nexport function getIsAssignmentView(pConnect) {\n // Get caseInfo content from the store which contains the view info about the current assignment/step\n // TODO To be replaced with pConnect.getCaseInfo().getCurrentAssignmentView when it's available\n const assignmentViewClass = pConnect.getValue(PCore.getConstants().CASE_INFO.CASE_INFO_CLASSID);\n const assignmentViewName = pConnect.getValue(PCore.getConstants().CASE_INFO.ASSIGNMENTACTION_ID);\n\n const assignmentViewId = `${assignmentViewName}!${assignmentViewClass}`;\n\n // Get the info about the current view from pConnect\n const currentViewId = `${pConnect.getCurrentView()}!${pConnect.getCurrentClassID()}`;\n\n return assignmentViewId === currentViewId;\n}\n\n/**\n * A hook that gets the instructions content for a view.\n * @param {Function} pConnect PConnect object for the component\n * @param {string} [instructions=\"casestep\"] 'casestep', 'none', or the html content of a Rule-UI-Paragraph rule (processed via core's paragraph annotation handler)\n */\nexport function getInstructions(pConnect, instructions = 'casestep') {\n const caseStepInstructions =\n PCore.getConstants().CASE_INFO.INSTRUCTIONS &&\n pConnect.getValue(PCore.getConstants().CASE_INFO.INSTRUCTIONS);\n\n // Determine if this view is the current assignment/step view\n const isCurrentAssignmentView = getIsAssignmentView(pConnect);\n\n // Case step instructions\n if (instructions === 'casestep' && isCurrentAssignmentView && caseStepInstructions?.length) {\n return caseStepInstructions;\n }\n\n // No instructions\n if (instructions === 'none') {\n return undefined;\n }\n\n // If the annotation wasn't processed correctly, don't return any instruction text\n if (instructions?.startsWith('@PARAGRAPH')) {\n return undefined;\n }\n\n // Custom instructions from the view\n // The raw metadata for `instructions` will be something like '@PARAGRAPH .SomeParagraphRule' but\n // it is evaluated by core logic to the content\n if (instructions !== 'casestep' && instructions !== 'none') {\n return instructions;\n }\n return undefined;\n}\n"]}
@@ -1,5 +1,5 @@
1
1
  /// <reference types="react" />
2
- import PropTypes from "prop-types";
2
+ import PropTypes from 'prop-types';
3
3
  declare function Assignment(props: any): JSX.Element;
4
4
  declare namespace Assignment {
5
5
  var propTypes: {
@@ -1 +1 @@
1
- {"version":3,"file":"Assignment.d.ts","sourceRoot":"","sources":["../../../../src/components/infra/Assignment/Assignment.tsx"],"names":[],"mappings":";AACA,OAAO,SAAS,MAAM,YAAY,CAAC;AAUnC,iBAAwB,UAAU,CAAC,KAAK,KAAA,eA2PvC;kBA3PuB,UAAU;;;;;;;;;;;;eAAV,UAAU"}
1
+ {"version":3,"file":"Assignment.d.ts","sourceRoot":"","sources":["../../../../src/components/infra/Assignment/Assignment.tsx"],"names":[],"mappings":";AACA,OAAO,SAAS,MAAM,YAAY,CAAC;AAUnC,iBAAwB,UAAU,CAAC,KAAK,KAAA,eA6QvC;kBA7QuB,UAAU;;;;;;;;;;;;eAAV,UAAU"}
@@ -1,5 +1,5 @@
1
- import React, { useState, useEffect } from "react";
2
- import PropTypes from "prop-types";
1
+ import React, { useState, useEffect } from 'react';
2
+ import PropTypes from 'prop-types';
3
3
  import AssignmentCard from '../AssignmentCard';
4
4
  import MultiStep from '../MultiStep';
5
5
  import Snackbar from '@material-ui/core/Snackbar';
@@ -22,22 +22,22 @@ export default function Assignment(props) {
22
22
  const cancelCreateStageAssignment = actionsAPI.cancelCreateStageAssignment.bind(actionsAPI);
23
23
  // const showPage = actionsAPI.showPage.bind(actionsAPI);
24
24
  const [showSnackbar, setShowSnackbar] = useState(false);
25
- const [snackbarMessage, setSnackbarMessage] = useState("");
25
+ const [snackbarMessage, setSnackbarMessage] = useState('');
26
26
  function findCurrentIndicies(arStepperSteps, arIndicies, depth) {
27
27
  let count = 0;
28
- arStepperSteps.forEach((step) => {
29
- if (step.visited_status === "current") {
28
+ arStepperSteps.forEach(step => {
29
+ if (step.visited_status === 'current') {
30
30
  arIndicies[depth] = count;
31
31
  // add in
32
- step["step_status"] = "";
32
+ step['step_status'] = '';
33
33
  }
34
- else if (step.visited_status === "success") {
34
+ else if (step.visited_status === 'success') {
35
35
  count += 1;
36
- step.step_status = "completed";
36
+ step.step_status = 'completed';
37
37
  }
38
38
  else {
39
39
  count += 1;
40
- step.step_status = "";
40
+ step.step_status = '';
41
41
  }
42
42
  if (step.steps) {
43
43
  arIndicies = findCurrentIndicies(step.steps, arIndicies, depth + 1);
@@ -58,10 +58,12 @@ export default function Assignment(props) {
58
58
  }
59
59
  if (oCaseInfo?.navigation /* was oCaseInfo.navigation != null */) {
60
60
  setHasNavigation(true);
61
- if (oCaseInfo.navigation.template && oCaseInfo.navigation.template.toLowerCase() === "standard") {
61
+ if (oCaseInfo.navigation.template &&
62
+ oCaseInfo.navigation.template.toLowerCase() === 'standard') {
62
63
  setHasNavigation(false);
63
64
  }
64
- else if (oCaseInfo.navigation.template && oCaseInfo.navigation.template.toLowerCase() === "vertical") {
65
+ else if (oCaseInfo.navigation.template &&
66
+ oCaseInfo.navigation.template.toLowerCase() === 'vertical') {
65
67
  setIsVertical(true);
66
68
  }
67
69
  else {
@@ -86,32 +88,32 @@ export default function Assignment(props) {
86
88
  }
87
89
  setShowSnackbar(false);
88
90
  }
89
- ;
90
91
  function onSaveActionSuccess(data) {
91
92
  actionsAPI.cancelAssignment(itemKey).then(() => {
92
93
  PCore.getPubSubUtils().publish(PCore.getConstants().PUB_SUB_EVENTS.CASE_EVENTS.CREATE_STAGE_SAVED, data);
93
94
  });
94
95
  }
95
96
  function buttonPress(sAction, sButtonType) {
96
- if (sButtonType === "secondary") {
97
+ if (sButtonType === 'secondary') {
97
98
  switch (sAction) {
98
- case "navigateToStep": {
99
- const navigatePromise = navigateToStep("previous", itemKey);
99
+ case 'navigateToStep': {
100
+ const navigatePromise = navigateToStep('previous', itemKey);
100
101
  navigatePromise
101
- .then(() => {
102
- })
102
+ .then(() => { })
103
103
  .catch(() => {
104
104
  showToast(`Navigation failed!`);
105
105
  });
106
106
  break;
107
107
  }
108
- case "saveAssignment": {
108
+ case 'saveAssignment': {
109
109
  const caseID = thePConn.getCaseInfo().getKey();
110
110
  const assignmentID = thePConn.getCaseInfo().getAssignmentID();
111
111
  const savePromise = saveAssignment(itemKey);
112
112
  savePromise
113
113
  .then(() => {
114
- const caseType = thePConn.getCaseInfo().c11nEnv.getValue(PCore.getConstants().CASE_INFO.CASE_TYPE_ID);
114
+ const caseType = thePConn
115
+ .getCaseInfo()
116
+ .c11nEnv.getValue(PCore.getConstants().CASE_INFO.CASE_TYPE_ID);
115
117
  onSaveActionSuccess({ caseType, caseID, assignmentID });
116
118
  })
117
119
  .catch(() => {
@@ -119,12 +121,14 @@ export default function Assignment(props) {
119
121
  });
120
122
  break;
121
123
  }
122
- case "cancelAssignment": {
124
+ case 'cancelAssignment': {
123
125
  // check if create stage (modal)
124
126
  const { PUB_SUB_EVENTS } = PCore.getConstants();
125
127
  const { publish } = PCore.getPubSubUtils();
126
128
  const isAssignmentInCreateStage = thePConn.getCaseInfo().isAssignmentInCreateStage();
127
- const isLocalAction = thePConn.getCaseInfo().isLocalAction() || getPConnect().getValue(PCore.getConstants().CASE_INFO.IS_LOCAL_ACTION);
129
+ const isLocalAction = thePConn.getCaseInfo().isLocalAction() ||
130
+ (PCore.getConstants().CASE_INFO.IS_LOCAL_ACTION &&
131
+ getPConnect().getValue(PCore.getConstants().CASE_INFO.IS_LOCAL_ACTION));
128
132
  if (isAssignmentInCreateStage && isInModal && !isLocalAction) {
129
133
  const cancelPromise = cancelCreateStageAssignment(itemKey);
130
134
  cancelPromise
@@ -151,34 +155,30 @@ export default function Assignment(props) {
151
155
  break;
152
156
  }
153
157
  }
154
- else if (sButtonType === "primary") {
158
+ else if (sButtonType === 'primary') {
155
159
  // eslint-disable-next-line sonarjs/no-small-switch
156
160
  switch (sAction) {
157
- case "finishAssignment":
158
- {
159
- const finishPromise = finishAssignment(itemKey);
160
- finishPromise
161
- .then(() => {
162
- })
163
- .catch(() => {
164
- showToast(`Submit failed!`);
165
- });
166
- break;
167
- }
161
+ case 'finishAssignment': {
162
+ const finishPromise = finishAssignment(itemKey);
163
+ finishPromise
164
+ .then(() => { })
165
+ .catch(() => {
166
+ showToast(`Submit failed!`);
167
+ });
168
+ break;
169
+ }
168
170
  default:
169
171
  break;
170
172
  }
171
173
  }
172
174
  }
173
- return (React.createElement("div", { id: "Assignment" }, bHasNavigation ?
174
- React.createElement(React.Fragment, null,
175
- React.createElement(MultiStep, { getPConnect: getPConnect, itemKey: itemKey, actionButtons: actionButtons, onButtonPress: buttonPress, bIsVertical: bIsVertical, arCurrentStepIndicies: arCurrentStepIndicies, arNavigationSteps: arNavigationSteps }, children),
176
- React.createElement(Snackbar, { open: showSnackbar, autoHideDuration: 3000, onClose: handleSnackbarClose, message: snackbarMessage, action: React.createElement(IconButton, { size: "small", "aria-label": "close", color: "inherit", onClick: handleSnackbarClose },
177
- React.createElement(CloseIcon, { fontSize: "small" })) }))
178
- : (React.createElement(React.Fragment, null,
179
- React.createElement(AssignmentCard, { getPConnect: getPConnect, itemKey: itemKey, actionButtons: actionButtons, onButtonPress: buttonPress }, children),
180
- React.createElement(Snackbar, { open: showSnackbar, autoHideDuration: 3000, onClose: handleSnackbarClose, message: snackbarMessage, action: React.createElement(IconButton, { size: "small", "aria-label": "close", color: "inherit", onClick: handleSnackbarClose },
181
- React.createElement(CloseIcon, { fontSize: "small" })) })))));
175
+ return (React.createElement("div", { id: 'Assignment' }, bHasNavigation ? (React.createElement(React.Fragment, null,
176
+ React.createElement(MultiStep, { getPConnect: getPConnect, itemKey: itemKey, actionButtons: actionButtons, onButtonPress: buttonPress, bIsVertical: bIsVertical, arCurrentStepIndicies: arCurrentStepIndicies, arNavigationSteps: arNavigationSteps }, children),
177
+ React.createElement(Snackbar, { open: showSnackbar, autoHideDuration: 3000, onClose: handleSnackbarClose, message: snackbarMessage, action: React.createElement(IconButton, { size: 'small', "aria-label": 'close', color: 'inherit', onClick: handleSnackbarClose },
178
+ React.createElement(CloseIcon, { fontSize: 'small' })) }))) : (React.createElement(React.Fragment, null,
179
+ React.createElement(AssignmentCard, { getPConnect: getPConnect, itemKey: itemKey, actionButtons: actionButtons, onButtonPress: buttonPress }, children),
180
+ React.createElement(Snackbar, { open: showSnackbar, autoHideDuration: 3000, onClose: handleSnackbarClose, message: snackbarMessage, action: React.createElement(IconButton, { size: 'small', "aria-label": 'close', color: 'inherit', onClick: handleSnackbarClose },
181
+ React.createElement(CloseIcon, { fontSize: 'small' })) })))));
182
182
  }
183
183
  // From WC SDK
184
184
  // const aHtml = html`
@@ -1 +1 @@
1
- {"version":3,"file":"Assignment.js","sourceRoot":"","sources":["../../../../src/components/infra/Assignment/Assignment.tsx"],"names":[],"mappings":"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","sourcesContent":["import React, { useState, useEffect } from \"react\";\nimport PropTypes from \"prop-types\";\n\nimport AssignmentCard from '../AssignmentCard';\nimport MultiStep from '../MultiStep';\nimport Snackbar from '@material-ui/core/Snackbar';\nimport IconButton from '@material-ui/core/IconButton';\nimport CloseIcon from '@material-ui/icons/Close';\n\ndeclare const PCore: any;\n\nexport default function Assignment(props) {\n const { getPConnect, children, itemKey, isInModal } = props;\n const thePConn = getPConnect();\n\n const [bHasNavigation, setHasNavigation] = useState(false);\n const [actionButtons, setActionButtons] = useState( {} );\n const [bIsVertical, setIsVertical] = useState(false);\n const [arCurrentStepIndicies, setArCurrentStepIndicies] = useState<Array<any>>([]);\n const [arNavigationSteps, setArNavigationSteps] = useState<Array<any>>([]);\n\n const actionsAPI = thePConn.getActionsApi();\n\n // store off bound functions to above pointers\n const finishAssignment = actionsAPI.finishAssignment.bind(actionsAPI);\n const navigateToStep = actionsAPI.navigateToStep.bind(actionsAPI);\n const cancelAssignment = actionsAPI.cancelAssignment.bind(actionsAPI);\n const saveAssignment = actionsAPI.saveAssignment?.bind(actionsAPI);\n const cancelCreateStageAssignment = actionsAPI.cancelCreateStageAssignment.bind(actionsAPI);\n // const showPage = actionsAPI.showPage.bind(actionsAPI);\n\n const [showSnackbar, setShowSnackbar] = useState(false);\n const [snackbarMessage, setSnackbarMessage] = useState(\"\");\n\n function findCurrentIndicies(arStepperSteps: Array<any>, arIndicies: Array<number>, depth: number) : Array<number> {\n\n let count = 0;\n arStepperSteps.forEach( (step) => {\n if (step.visited_status === \"current\") {\n arIndicies[depth] = count;\n\n // add in\n step[\"step_status\"] = \"\";\n }\n else if (step.visited_status === \"success\") {\n count += 1;\n step.step_status = \"completed\"\n }\n else {\n count += 1;\n step.step_status = \"\";\n }\n\n if (step.steps) {\n arIndicies = findCurrentIndicies(step.steps, arIndicies, depth + 1)\n }\n });\n\n return arIndicies;\n }\n\n\n useEffect( ()=> {\n\n if (children && children.length > 0) {\n\n // debugger;\n\n const oWorkItem = children[0].props.getPConnect();\n const oWorkData = oWorkItem.getDataObject();\n const oData = thePConn.getDataObject();\n\n if (oWorkData?.caseInfo && oWorkData.caseInfo.assignments !== null) {\n const oCaseInfo = oData.caseInfo;\n\n if (oCaseInfo && oCaseInfo.actionButtons) {\n setActionButtons(oCaseInfo.actionButtons);\n }\n\n if ( oCaseInfo?.navigation /* was oCaseInfo.navigation != null */) {\n setHasNavigation(true);\n\n if (oCaseInfo.navigation.template && oCaseInfo.navigation.template.toLowerCase() === \"standard\") {\n setHasNavigation(false);\n }\n else if (oCaseInfo.navigation.template && oCaseInfo.navigation.template.toLowerCase() === \"vertical\") {\n setIsVertical(true);\n }\n else {\n setIsVertical(false);\n }\n\n setArNavigationSteps(JSON.parse(JSON.stringify(oCaseInfo.navigation.steps)));\n setArCurrentStepIndicies(findCurrentIndicies(arNavigationSteps, arCurrentStepIndicies, 0));\n\n }\n }\n\n }\n\n\n }, [children]);\n\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\n function handleSnackbarClose(event: React.SyntheticEvent | React.MouseEvent, reason?: string) {\n if (reason === 'clickaway') {\n return;\n }\n setShowSnackbar(false);\n };\n\n function onSaveActionSuccess(data) {\n actionsAPI.cancelAssignment(itemKey).then(() => {\n PCore.getPubSubUtils().publish(PCore.getConstants().PUB_SUB_EVENTS.CASE_EVENTS.CREATE_STAGE_SAVED, data);\n });\n }\n\n function buttonPress(sAction: string, sButtonType: string) {\n\n if (sButtonType === \"secondary\") {\n\n switch (sAction) {\n case \"navigateToStep\": {\n const navigatePromise = navigateToStep( \"previous\", itemKey );\n\n navigatePromise\n .then(() => {\n })\n .catch(() => {\n showToast( `Navigation failed!`);\n });\n\n break;\n }\n\n case \"saveAssignment\": {\n const caseID = thePConn.getCaseInfo().getKey();\n const assignmentID = thePConn.getCaseInfo().getAssignmentID();\n const savePromise = saveAssignment(itemKey);\n\n savePromise\n .then(() => {\n const caseType = thePConn.getCaseInfo().c11nEnv.getValue(PCore.getConstants().CASE_INFO.CASE_TYPE_ID);\n onSaveActionSuccess({ caseType, caseID, assignmentID });\n })\n .catch(() => {\n showToast('Save failed');\n });\n\n break;\n }\n\n case \"cancelAssignment\": {\n // check if create stage (modal)\n const { PUB_SUB_EVENTS } = PCore.getConstants();\n const { publish } = PCore.getPubSubUtils();\n const isAssignmentInCreateStage = thePConn.getCaseInfo().isAssignmentInCreateStage();\n const isLocalAction = thePConn.getCaseInfo().isLocalAction() || getPConnect().getValue(PCore.getConstants().CASE_INFO.IS_LOCAL_ACTION);\n if (isAssignmentInCreateStage && isInModal && !isLocalAction) {\n const cancelPromise = cancelCreateStageAssignment(itemKey);\n\n cancelPromise\n .then(data => {\n publish(PUB_SUB_EVENTS.EVENT_CANCEL, data);\n })\n .catch(() => {\n showToast(`Cancel failed!`);\n });\n } else {\n const cancelPromise = cancelAssignment(itemKey);\n\n cancelPromise\n .then(data => {\n publish(PUB_SUB_EVENTS.EVENT_CANCEL, data);\n })\n .catch(() => {\n showToast(`Cancel failed!`);\n });\n }\n break;\n }\n\n default:\n break;\n }\n }\n else if (sButtonType === \"primary\") {\n // eslint-disable-next-line sonarjs/no-small-switch\n switch (sAction) {\n case \"finishAssignment\" :\n {\n const finishPromise = finishAssignment(itemKey);\n\n finishPromise\n .then(() => {\n })\n .catch(() => {\n showToast( `Submit failed!`);\n });\n\n break;\n }\n\n default:\n break;\n }\n }\n\n }\n\n\n return (\n <div id=\"Assignment\">\n { bHasNavigation ?\n <React.Fragment>\n <MultiStep getPConnect={getPConnect} itemKey={itemKey} actionButtons={actionButtons} onButtonPress={buttonPress}\n bIsVertical={bIsVertical} arCurrentStepIndicies={arCurrentStepIndicies} arNavigationSteps={arNavigationSteps}>\n {children}\n </MultiStep>\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 <React.Fragment>\n <AssignmentCard getPConnect={getPConnect} itemKey={itemKey} actionButtons={actionButtons} onButtonPress={buttonPress} >\n {children}\n </AssignmentCard>\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 </div>\n )\n}\n\n// From WC SDK\n// const aHtml = html`\n// ${this.bHasNavigation?\n// html`\n// <div class=\"psdk-stepper\">\n// <multi-step-component .pConn=${this.pConn} .arChildren=${this.arChildren} itemKey=${this.itemKey}\n// .arMainButtons=${this.arMainButtons} .arSecondaryButtons=${this.arSecondaryButtons}\n// .bIsVertical=${this.bIsVertical} .arCurrentStepIndicies=${this.arCurrentStepIndicies}\n// .arNavigationSteps=${this.arNavigationSteps}\n// @MultiStepActionButtonClick=\"${this._onActionButtonClick}\">\n// </multi-step-component>\n// <lit-toast></lit-toast>\n// </div>`\n// :\n// html`\n// <div>\n// <assignment-card-component .pConn=${this.pConn} .arChildren=${this.arChildren} itemKey=${this.itemKey}\n// .arMainButtons=${this.arMainButtons} .arSecondaryButtons=${this.arSecondaryButtons}\n// @AssignmentActionButtonClick=\"${this._onActionButtonClick}\">\n// </assignment-card-component>\n// <lit-toast></lit-toast>\n// </div>`}\n// `;\n\n\nAssignment.propTypes = {\n children: PropTypes.node.isRequired,\n getPConnect: PropTypes.func.isRequired,\n itemKey: PropTypes.string,\n isInModal: PropTypes.bool\n // actionButtons: PropTypes.object\n // buildName: PropTypes.string\n};\n\nAssignment.defaultProps = {\n itemKey: null,\n isInModal: false\n // buildName: null\n};\n"]}
1
+ {"version":3,"file":"Assignment.js","sourceRoot":"","sources":["../../../../src/components/infra/Assignment/Assignment.tsx"],"names":[],"mappings":"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","sourcesContent":["import React, { useState, useEffect } from 'react';\nimport PropTypes from 'prop-types';\n\nimport AssignmentCard from '../AssignmentCard';\nimport MultiStep from '../MultiStep';\nimport Snackbar from '@material-ui/core/Snackbar';\nimport IconButton from '@material-ui/core/IconButton';\nimport CloseIcon from '@material-ui/icons/Close';\n\ndeclare const PCore: any;\n\nexport default function Assignment(props) {\n const { getPConnect, children, itemKey, isInModal } = props;\n const thePConn = getPConnect();\n\n const [bHasNavigation, setHasNavigation] = useState(false);\n const [actionButtons, setActionButtons] = useState({});\n const [bIsVertical, setIsVertical] = useState(false);\n const [arCurrentStepIndicies, setArCurrentStepIndicies] = useState<Array<any>>([]);\n const [arNavigationSteps, setArNavigationSteps] = useState<Array<any>>([]);\n\n const actionsAPI = thePConn.getActionsApi();\n\n // store off bound functions to above pointers\n const finishAssignment = actionsAPI.finishAssignment.bind(actionsAPI);\n const navigateToStep = actionsAPI.navigateToStep.bind(actionsAPI);\n const cancelAssignment = actionsAPI.cancelAssignment.bind(actionsAPI);\n const saveAssignment = actionsAPI.saveAssignment?.bind(actionsAPI);\n const cancelCreateStageAssignment = actionsAPI.cancelCreateStageAssignment.bind(actionsAPI);\n // const showPage = actionsAPI.showPage.bind(actionsAPI);\n\n const [showSnackbar, setShowSnackbar] = useState(false);\n const [snackbarMessage, setSnackbarMessage] = useState('');\n\n function findCurrentIndicies(\n arStepperSteps: Array<any>,\n arIndicies: Array<number>,\n depth: number\n ): Array<number> {\n let count = 0;\n arStepperSteps.forEach(step => {\n if (step.visited_status === 'current') {\n arIndicies[depth] = count;\n\n // add in\n step['step_status'] = '';\n } else if (step.visited_status === 'success') {\n count += 1;\n step.step_status = 'completed';\n } else {\n count += 1;\n step.step_status = '';\n }\n\n if (step.steps) {\n arIndicies = findCurrentIndicies(step.steps, arIndicies, depth + 1);\n }\n });\n\n return arIndicies;\n }\n\n useEffect(() => {\n if (children && children.length > 0) {\n // debugger;\n\n const oWorkItem = children[0].props.getPConnect();\n const oWorkData = oWorkItem.getDataObject();\n const oData = thePConn.getDataObject();\n\n if (oWorkData?.caseInfo && oWorkData.caseInfo.assignments !== null) {\n const oCaseInfo = oData.caseInfo;\n\n if (oCaseInfo && oCaseInfo.actionButtons) {\n setActionButtons(oCaseInfo.actionButtons);\n }\n\n if (oCaseInfo?.navigation /* was oCaseInfo.navigation != null */) {\n setHasNavigation(true);\n\n if (\n oCaseInfo.navigation.template &&\n oCaseInfo.navigation.template.toLowerCase() === 'standard'\n ) {\n setHasNavigation(false);\n } else if (\n oCaseInfo.navigation.template &&\n oCaseInfo.navigation.template.toLowerCase() === 'vertical'\n ) {\n setIsVertical(true);\n } else {\n setIsVertical(false);\n }\n\n setArNavigationSteps(JSON.parse(JSON.stringify(oCaseInfo.navigation.steps)));\n setArCurrentStepIndicies(\n findCurrentIndicies(arNavigationSteps, arCurrentStepIndicies, 0)\n );\n }\n }\n }\n }, [children]);\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 onSaveActionSuccess(data) {\n actionsAPI.cancelAssignment(itemKey).then(() => {\n PCore.getPubSubUtils().publish(\n PCore.getConstants().PUB_SUB_EVENTS.CASE_EVENTS.CREATE_STAGE_SAVED,\n data\n );\n });\n }\n\n function buttonPress(sAction: string, sButtonType: string) {\n if (sButtonType === 'secondary') {\n switch (sAction) {\n case 'navigateToStep': {\n const navigatePromise = navigateToStep('previous', itemKey);\n\n navigatePromise\n .then(() => {})\n .catch(() => {\n showToast(`Navigation failed!`);\n });\n\n break;\n }\n\n case 'saveAssignment': {\n const caseID = thePConn.getCaseInfo().getKey();\n const assignmentID = thePConn.getCaseInfo().getAssignmentID();\n const savePromise = saveAssignment(itemKey);\n\n savePromise\n .then(() => {\n const caseType = thePConn\n .getCaseInfo()\n .c11nEnv.getValue(PCore.getConstants().CASE_INFO.CASE_TYPE_ID);\n onSaveActionSuccess({ caseType, caseID, assignmentID });\n })\n .catch(() => {\n showToast('Save failed');\n });\n\n break;\n }\n\n case 'cancelAssignment': {\n // check if create stage (modal)\n const { PUB_SUB_EVENTS } = PCore.getConstants();\n const { publish } = PCore.getPubSubUtils();\n const isAssignmentInCreateStage = thePConn.getCaseInfo().isAssignmentInCreateStage();\n const isLocalAction =\n thePConn.getCaseInfo().isLocalAction() ||\n (PCore.getConstants().CASE_INFO.IS_LOCAL_ACTION &&\n getPConnect().getValue(PCore.getConstants().CASE_INFO.IS_LOCAL_ACTION));\n if (isAssignmentInCreateStage && isInModal && !isLocalAction) {\n const cancelPromise = cancelCreateStageAssignment(itemKey);\n\n cancelPromise\n .then(data => {\n publish(PUB_SUB_EVENTS.EVENT_CANCEL, data);\n })\n .catch(() => {\n showToast(`Cancel failed!`);\n });\n } else {\n const cancelPromise = cancelAssignment(itemKey);\n\n cancelPromise\n .then(data => {\n publish(PUB_SUB_EVENTS.EVENT_CANCEL, data);\n })\n .catch(() => {\n showToast(`Cancel failed!`);\n });\n }\n break;\n }\n\n default:\n break;\n }\n } else if (sButtonType === 'primary') {\n // eslint-disable-next-line sonarjs/no-small-switch\n switch (sAction) {\n case 'finishAssignment': {\n const finishPromise = finishAssignment(itemKey);\n\n finishPromise\n .then(() => {})\n .catch(() => {\n showToast(`Submit failed!`);\n });\n\n break;\n }\n\n default:\n break;\n }\n }\n }\n\n return (\n <div id='Assignment'>\n {bHasNavigation ? (\n <React.Fragment>\n <MultiStep\n getPConnect={getPConnect}\n itemKey={itemKey}\n actionButtons={actionButtons}\n onButtonPress={buttonPress}\n bIsVertical={bIsVertical}\n arCurrentStepIndicies={arCurrentStepIndicies}\n arNavigationSteps={arNavigationSteps}\n >\n {children}\n </MultiStep>\n <Snackbar\n open={showSnackbar}\n autoHideDuration={3000}\n onClose={handleSnackbarClose}\n message={snackbarMessage}\n action={\n <IconButton\n size='small'\n aria-label='close'\n color='inherit'\n onClick={handleSnackbarClose}\n >\n <CloseIcon fontSize='small' />\n </IconButton>\n }\n />\n </React.Fragment>\n ) : (\n <React.Fragment>\n <AssignmentCard\n getPConnect={getPConnect}\n itemKey={itemKey}\n actionButtons={actionButtons}\n onButtonPress={buttonPress}\n >\n {children}\n </AssignmentCard>\n <Snackbar\n open={showSnackbar}\n autoHideDuration={3000}\n onClose={handleSnackbarClose}\n message={snackbarMessage}\n action={\n <IconButton\n size='small'\n aria-label='close'\n color='inherit'\n onClick={handleSnackbarClose}\n >\n <CloseIcon fontSize='small' />\n </IconButton>\n }\n />\n </React.Fragment>\n )}\n </div>\n );\n}\n\n// From WC SDK\n// const aHtml = html`\n// ${this.bHasNavigation?\n// html`\n// <div class=\"psdk-stepper\">\n// <multi-step-component .pConn=${this.pConn} .arChildren=${this.arChildren} itemKey=${this.itemKey}\n// .arMainButtons=${this.arMainButtons} .arSecondaryButtons=${this.arSecondaryButtons}\n// .bIsVertical=${this.bIsVertical} .arCurrentStepIndicies=${this.arCurrentStepIndicies}\n// .arNavigationSteps=${this.arNavigationSteps}\n// @MultiStepActionButtonClick=\"${this._onActionButtonClick}\">\n// </multi-step-component>\n// <lit-toast></lit-toast>\n// </div>`\n// :\n// html`\n// <div>\n// <assignment-card-component .pConn=${this.pConn} .arChildren=${this.arChildren} itemKey=${this.itemKey}\n// .arMainButtons=${this.arMainButtons} .arSecondaryButtons=${this.arSecondaryButtons}\n// @AssignmentActionButtonClick=\"${this._onActionButtonClick}\">\n// </assignment-card-component>\n// <lit-toast></lit-toast>\n// </div>`}\n// `;\n\nAssignment.propTypes = {\n children: PropTypes.node.isRequired,\n getPConnect: PropTypes.func.isRequired,\n itemKey: PropTypes.string,\n isInModal: PropTypes.bool\n // actionButtons: PropTypes.object\n // buildName: PropTypes.string\n};\n\nAssignment.defaultProps = {\n itemKey: null,\n isInModal: false\n // buildName: null\n};\n"]}
@@ -1,5 +1,5 @@
1
1
  /// <reference types="react" />
2
- import PropTypes from "prop-types";
2
+ import PropTypes from 'prop-types';
3
3
  declare function FlowContainer(props: any): JSX.Element;
4
4
  declare namespace FlowContainer {
5
5
  var defaultProps: {
@@ -1 +1 @@
1
- {"version":3,"file":"FlowContainer.d.ts","sourceRoot":"","sources":["../../../../../src/components/infra/Containers/FlowContainer/FlowContainer.tsx"],"names":[],"mappings":";AAGA,OAAO,SAAS,MAAM,YAAY,CAAC;AAgDnC,iBAAwB,aAAa,CAAC,KAAK,KAAA,eAmb1C;kBAnbuB,aAAa;;;;;;;;;;;;;;;;;;eAAb,aAAa"}
1
+ {"version":3,"file":"FlowContainer.d.ts","sourceRoot":"","sources":["../../../../../src/components/infra/Containers/FlowContainer/FlowContainer.tsx"],"names":[],"mappings":";AAGA,OAAO,SAAS,MAAM,YAAY,CAAC;AA6CnC,iBAAwB,aAAa,CAAC,KAAK,KAAA,eAsa1C;kBAtauB,aAAa;;;;;;;;;;;;;;;;;;eAAb,aAAa"}