@pega/react-sdk-overrides 0.23.23 → 0.23.24
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/designSystemExtension/Banner/Banner.tsx +1 -1
- package/lib/designSystemExtension/WssQuickCreate/WssQuickCreate.css +36 -0
- package/lib/designSystemExtension/WssQuickCreate/WssQuickCreate.tsx +28 -0
- package/lib/designSystemExtension/WssQuickCreate/index.tsx +1 -0
- package/lib/template/AppShell/AppShell.tsx +0 -1
- package/lib/template/DefaultForm/DefaultForm.css +5 -0
- package/lib/template/DefaultForm/DefaultForm.tsx +23 -19
- package/lib/template/WssNavBar/WssNavBar.css +6 -0
- package/lib/template/WssNavBar/WssNavBar.tsx +1 -1
- package/lib/widget/QuickCreate/QuickCreate.tsx +54 -0
- package/lib/widget/QuickCreate/index.tsx +1 -0
- package/package.json +1 -1
|
@@ -6,7 +6,7 @@ export default function Banner(props) {
|
|
|
6
6
|
const { a, b, banner } = props;
|
|
7
7
|
const { title, message, backgroundImage } = banner;
|
|
8
8
|
return (
|
|
9
|
-
<div>
|
|
9
|
+
<div style={{ marginBottom: '2rem' }}>
|
|
10
10
|
<div
|
|
11
11
|
className='background-image-style'
|
|
12
12
|
style={{ backgroundImage: `url(${backgroundImage})` }}
|
|
@@ -0,0 +1,36 @@
|
|
|
1
|
+
.quick-link-ul-list {
|
|
2
|
+
list-style: none;
|
|
3
|
+
padding: 0;
|
|
4
|
+
grid-template-columns: repeat(3, 1fr);
|
|
5
|
+
display: grid;
|
|
6
|
+
gap: calc(1rem);
|
|
7
|
+
}
|
|
8
|
+
|
|
9
|
+
.quick-link-list {
|
|
10
|
+
background-color: #3f51b5;
|
|
11
|
+
color: white;
|
|
12
|
+
border-radius: 8px;
|
|
13
|
+
}
|
|
14
|
+
|
|
15
|
+
.quick-link-button {
|
|
16
|
+
text-transform: capitalize !important;
|
|
17
|
+
font-size: 16px !important;
|
|
18
|
+
color: white !important;
|
|
19
|
+
padding: calc(0.5rem * 2) !important;
|
|
20
|
+
height: 6rem;
|
|
21
|
+
width: 100%;
|
|
22
|
+
justify-content: start !important;
|
|
23
|
+
}
|
|
24
|
+
|
|
25
|
+
.quick-link-icon {
|
|
26
|
+
width: 1em;
|
|
27
|
+
height: 1em;
|
|
28
|
+
flex-shrink: 0;
|
|
29
|
+
filter: invert(100%);
|
|
30
|
+
}
|
|
31
|
+
|
|
32
|
+
.quick-link-button-span {
|
|
33
|
+
display: flex;
|
|
34
|
+
align-items: center;
|
|
35
|
+
gap: 0.5rem;
|
|
36
|
+
}
|
|
@@ -0,0 +1,28 @@
|
|
|
1
|
+
import React from 'react';
|
|
2
|
+
import { Button } from '@material-ui/core';
|
|
3
|
+
import './WssQuickCreate.css';
|
|
4
|
+
|
|
5
|
+
export default function WssQuickCreate(props) {
|
|
6
|
+
const { heading, actions } = props;
|
|
7
|
+
|
|
8
|
+
return (
|
|
9
|
+
<div>
|
|
10
|
+
<h1>{heading}</h1>
|
|
11
|
+
<ul className='quick-link-ul-list'>
|
|
12
|
+
{actions &&
|
|
13
|
+
actions.map(element => {
|
|
14
|
+
return (
|
|
15
|
+
<li className='quick-link-list' key={element.label}>
|
|
16
|
+
<Button className='quick-link-button' onClick={element.onClick}>
|
|
17
|
+
<span className='quick-link-button-span'>
|
|
18
|
+
{element.icon && <img className='quick-link-icon' src={element.icon}/>}
|
|
19
|
+
<span>{element.label}</span>
|
|
20
|
+
</span>
|
|
21
|
+
</Button>
|
|
22
|
+
</li>
|
|
23
|
+
);
|
|
24
|
+
})}
|
|
25
|
+
</ul>
|
|
26
|
+
</div>
|
|
27
|
+
);
|
|
28
|
+
}
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
export { default } from './WssQuickCreate';
|
|
@@ -1,5 +1,5 @@
|
|
|
1
|
-
import React, { createElement } from
|
|
2
|
-
import PropTypes from
|
|
1
|
+
import React, { createElement } from 'react';
|
|
2
|
+
import PropTypes from 'prop-types';
|
|
3
3
|
|
|
4
4
|
import { getInstructions } from '@pega/react-sdk-components/lib/components/helpers/template-utils';
|
|
5
5
|
import createPConnectComponent from '@pega/react-sdk-components/lib/bridge/react_pconnect';
|
|
@@ -13,19 +13,19 @@ export default function DefaultForm(props) {
|
|
|
13
13
|
|
|
14
14
|
let divClass: string;
|
|
15
15
|
|
|
16
|
-
const numCols = NumCols ||
|
|
16
|
+
const numCols = NumCols || '1';
|
|
17
17
|
switch (numCols) {
|
|
18
|
-
case
|
|
19
|
-
divClass =
|
|
18
|
+
case '1':
|
|
19
|
+
divClass = 'psdk-default-form-one-column';
|
|
20
20
|
break;
|
|
21
|
-
case
|
|
22
|
-
divClass =
|
|
21
|
+
case '2':
|
|
22
|
+
divClass = 'psdk-default-form-two-column';
|
|
23
23
|
break;
|
|
24
|
-
case
|
|
25
|
-
divClass =
|
|
24
|
+
case '3':
|
|
25
|
+
divClass = 'psdk-default-form-three-column';
|
|
26
26
|
break;
|
|
27
|
-
default
|
|
28
|
-
divClass =
|
|
27
|
+
default:
|
|
28
|
+
divClass = 'psdk-default-form-one-column';
|
|
29
29
|
break;
|
|
30
30
|
}
|
|
31
31
|
|
|
@@ -35,15 +35,19 @@ export default function DefaultForm(props) {
|
|
|
35
35
|
// to take the children and create components for them, put in an array and pass as the
|
|
36
36
|
// defaultForm kids
|
|
37
37
|
const arChildren = getPConnect().getChildren()[0].getPConnect().getChildren();
|
|
38
|
-
|
|
39
|
-
|
|
38
|
+
const dfChildren = arChildren.map((kid, idx) =>
|
|
39
|
+
// eslint-disable-next-line react/no-array-index-key
|
|
40
|
+
createElement(createPConnectComponent(), { ...kid, key: idx })
|
|
41
|
+
);
|
|
40
42
|
|
|
41
43
|
return (
|
|
42
|
-
|
|
43
|
-
|
|
44
|
-
|
|
45
|
-
|
|
46
|
-
|
|
44
|
+
<>
|
|
45
|
+
{instructionText && (
|
|
46
|
+
<div className='psdk-default-form-instruction-text'>{instructionText}</div>
|
|
47
|
+
)}
|
|
48
|
+
<div className={divClass}>{dfChildren}</div>
|
|
49
|
+
</>
|
|
50
|
+
);
|
|
47
51
|
}
|
|
48
52
|
|
|
49
53
|
DefaultForm.propTypes = {
|
|
@@ -52,5 +56,5 @@ DefaultForm.propTypes = {
|
|
|
52
56
|
};
|
|
53
57
|
|
|
54
58
|
DefaultForm.defaultProps = {
|
|
55
|
-
NumCols:
|
|
59
|
+
NumCols: '1'
|
|
56
60
|
};
|
|
@@ -0,0 +1,54 @@
|
|
|
1
|
+
import React from "react";
|
|
2
|
+
import WssQuickCreate from '@pega/react-sdk-components/lib/components/designSystemExtension/WssQuickCreate';
|
|
3
|
+
import { Utils } from '@pega/react-sdk-components/lib/components/helpers/utils';
|
|
4
|
+
|
|
5
|
+
declare const PCore: any;
|
|
6
|
+
|
|
7
|
+
export default function QuickCreate(props) {
|
|
8
|
+
const { getPConnect, heading, showCaseIcons, classFilter } = props;
|
|
9
|
+
const pConn = getPConnect();
|
|
10
|
+
const createCase = (className) => {
|
|
11
|
+
pConn
|
|
12
|
+
.getActionsApi()
|
|
13
|
+
.createWork(className, {})
|
|
14
|
+
.catch((error) => {
|
|
15
|
+
// eslint-disable-next-line no-console
|
|
16
|
+
console.log('Error in case creation: ', error?.message)
|
|
17
|
+
});
|
|
18
|
+
};
|
|
19
|
+
|
|
20
|
+
const cases: any = [];
|
|
21
|
+
const envInfo = PCore.getEnvironmentInfo();
|
|
22
|
+
if (
|
|
23
|
+
classFilter &&
|
|
24
|
+
envInfo.environmentInfoObject &&
|
|
25
|
+
envInfo.environmentInfoObject.pyCaseTypeList &&
|
|
26
|
+
envInfo.environmentInfoObject.pyCaseTypeList.length > 0
|
|
27
|
+
) {
|
|
28
|
+
classFilter.forEach((item) => {
|
|
29
|
+
let icon = Utils.getImageSrc('polaris-solid', PCore.getAssetLoader().getStaticServerUrl());
|
|
30
|
+
let label = '';
|
|
31
|
+
envInfo.environmentInfoObject.pyCaseTypeList.forEach((casetype) => {
|
|
32
|
+
if (casetype.pyWorkTypeImplementationClassName === item) {
|
|
33
|
+
icon = casetype.pxIcon && Utils.getImageSrc(casetype?.pxIcon, PCore.getAssetLoader().getStaticServerUrl());
|
|
34
|
+
label = casetype.pyWorkTypeName ?? '';
|
|
35
|
+
}
|
|
36
|
+
});
|
|
37
|
+
if (label !== '') {
|
|
38
|
+
cases.push({
|
|
39
|
+
label,
|
|
40
|
+
onClick: () => {
|
|
41
|
+
createCase(item);
|
|
42
|
+
},
|
|
43
|
+
...(showCaseIcons && { icon })
|
|
44
|
+
});
|
|
45
|
+
}
|
|
46
|
+
});
|
|
47
|
+
}
|
|
48
|
+
|
|
49
|
+
return (
|
|
50
|
+
<div>
|
|
51
|
+
<WssQuickCreate heading={heading} actions={cases}></WssQuickCreate>
|
|
52
|
+
</div>
|
|
53
|
+
);
|
|
54
|
+
}
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
export { default } from './QuickCreate';
|
package/package.json
CHANGED