@pega/react-sdk-components 0.23.24 → 0.23.26
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/bridge/react_pconnect.d.ts +2 -1
- package/lib/bridge/react_pconnect.d.ts.map +1 -1
- package/lib/bridge/react_pconnect.js +117 -108
- package/lib/bridge/react_pconnect.js.map +1 -1
- package/lib/components/designSystemExtension/Banner/Banner.css +4 -0
- package/lib/components/designSystemExtension/Banner/Banner.d.ts.map +1 -1
- package/lib/components/designSystemExtension/Banner/Banner.js +9 -5
- package/lib/components/designSystemExtension/Banner/Banner.js.map +1 -1
- package/lib/components/designSystemExtension/WssQuickCreate/WssQuickCreate.css +6 -2
- package/lib/components/designSystemExtension/WssQuickCreate/WssQuickCreate.js +1 -1
- package/lib/components/designSystemExtension/WssQuickCreate/WssQuickCreate.js.map +1 -1
- package/lib/components/infra/View/View.d.ts +1 -1
- package/lib/components/infra/View/View.d.ts.map +1 -1
- package/lib/components/infra/View/View.js +9 -5
- package/lib/components/infra/View/View.js.map +1 -1
- package/lib/components/template/FieldGroupTemplate/FieldGroupTemplate.d.ts.map +1 -1
- package/lib/components/template/FieldGroupTemplate/FieldGroupTemplate.js +4 -1
- package/lib/components/template/FieldGroupTemplate/FieldGroupTemplate.js.map +1 -1
- package/lib/components/template/WssNavBar/WssNavBar.d.ts.map +1 -1
- package/lib/components/template/WssNavBar/WssNavBar.js +6 -4
- package/lib/components/template/WssNavBar/WssNavBar.js.map +1 -1
- package/package.json +1 -1
|
@@ -1,3 +1,4 @@
|
|
|
1
|
+
export function setVisibilityForList(c11nEnv: any, visibility: any): void;
|
|
1
2
|
export default createPConnectComponent;
|
|
2
3
|
/**
|
|
3
4
|
*
|
|
@@ -5,5 +6,5 @@ export default createPConnectComponent;
|
|
|
5
6
|
* @returns {React.Components<Props, State>}
|
|
6
7
|
|
|
7
8
|
*/
|
|
8
|
-
declare function createPConnectComponent(
|
|
9
|
+
declare function createPConnectComponent(): React.Components<Props, State>;
|
|
9
10
|
//# sourceMappingURL=react_pconnect.d.ts.map
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"react_pconnect.d.ts","sourceRoot":"","sources":["../../src/bridge/react_pconnect.jsx"],"names":[],"mappings":"
|
|
1
|
+
{"version":3,"file":"react_pconnect.d.ts","sourceRoot":"","sources":["../../src/bridge/react_pconnect.jsx"],"names":[],"mappings":"AAoCO,0EAUN;;AAqID;;;;;GAKG;AACH,2EA4JC"}
|
|
@@ -1,49 +1,72 @@
|
|
|
1
|
-
|
|
2
|
-
|
|
3
|
-
import PropTypes from
|
|
4
|
-
import { connect, shallowEqual } from
|
|
1
|
+
/* eslint-disable max-classes-per-file */
|
|
2
|
+
import React, { Component, createElement } from 'react';
|
|
3
|
+
import PropTypes from 'prop-types';
|
|
4
|
+
import { connect, shallowEqual } from 'react-redux';
|
|
5
5
|
import ComponentMap, { LazyMap as LazyComponentMap } from '../components_map'; // was '../../../../../src/components_map';
|
|
6
|
-
import StoreContext from
|
|
6
|
+
import StoreContext from './Context/StoreContext';
|
|
7
7
|
// const pathToComponents = "../../../../../src/components"; /* When bridge was local, it was "../components" */
|
|
8
8
|
// For now, NOT doing lazy loading - needs some work on the loader to work with TypeScript
|
|
9
9
|
// As we add components, we'll need to import them here and add to the switch statement
|
|
10
10
|
// below in getComponent!
|
|
11
11
|
import ErrorBoundary from '../components/infra/ErrorBoundary';
|
|
12
|
-
import { SdkComponentMap } from
|
|
12
|
+
import { SdkComponentMap } from './helpers/sdk_component_map';
|
|
13
|
+
const isClassIDCompare = (key, prev) => {
|
|
14
|
+
return !(key === 'classID' && !prev[key]);
|
|
15
|
+
};
|
|
16
|
+
const routingInfoCompare = (next, prev) => {
|
|
17
|
+
return ('routingInfo' in next &&
|
|
18
|
+
(!shallowEqual(next.routingInfo, prev.routingInfo) ||
|
|
19
|
+
// eslint-disable-next-line no-undef
|
|
20
|
+
!PCore.isDeepEqual(next.routingInfo, prev.routingInfo)));
|
|
21
|
+
};
|
|
22
|
+
/** Generate unique id for elements */
|
|
23
|
+
const createUID = () => {
|
|
24
|
+
return `_${Math.random().toString(36).slice(2, 11)}`;
|
|
25
|
+
};
|
|
26
|
+
export const setVisibilityForList = (c11nEnv, visibility) => {
|
|
27
|
+
const { selectionMode, selectionList, renderMode, referenceList } = c11nEnv.getComponentConfig();
|
|
28
|
+
// usecase:multiselect, fieldgroup, editable table
|
|
29
|
+
if (
|
|
30
|
+
// eslint-disable-next-line no-undef
|
|
31
|
+
(selectionMode === PCore.getConstants().LIST_SELECTION_MODE.MULTI && selectionList) ||
|
|
32
|
+
(renderMode === 'Editable' && referenceList)) {
|
|
33
|
+
c11nEnv.getListActions().setVisibility(visibility);
|
|
34
|
+
}
|
|
35
|
+
};
|
|
36
|
+
function withVisibility(WrappedComponent) {
|
|
37
|
+
// eslint-disable-next-line react/prefer-stateless-function
|
|
38
|
+
return class extends Component {
|
|
39
|
+
render() {
|
|
40
|
+
const { visibility } = this.props;
|
|
41
|
+
if (visibility === false) {
|
|
42
|
+
return null;
|
|
43
|
+
}
|
|
44
|
+
return React.createElement(WrappedComponent, { ...this.props });
|
|
45
|
+
}
|
|
46
|
+
};
|
|
47
|
+
}
|
|
13
48
|
const connectRedux = (component, c11nEnv) => {
|
|
14
|
-
// console.log(`in connectRedux: ${component.name}`);
|
|
15
49
|
return connect((state, ownProps) => {
|
|
16
50
|
let addProps = {};
|
|
17
51
|
const obj = {};
|
|
18
|
-
//
|
|
19
|
-
|
|
20
|
-
|
|
21
|
-
|
|
22
|
-
|
|
23
|
-
|
|
24
|
-
|
|
52
|
+
// Need to use ownProps pconnect since c11nEnv is stale and prior to re-render
|
|
53
|
+
if (!ownProps.getPConnect) {
|
|
54
|
+
// eslint-disable-next-line no-console
|
|
55
|
+
console.error('connectRedux ownProps are not defined');
|
|
56
|
+
}
|
|
57
|
+
else {
|
|
58
|
+
c11nEnv = ownProps.getPConnect();
|
|
59
|
+
}
|
|
60
|
+
if (typeof component.additionalProps === 'object') {
|
|
25
61
|
addProps = c11nEnv.resolveConfigProps(component.additionalProps);
|
|
26
62
|
}
|
|
27
|
-
else if (typeof component.additionalProps ===
|
|
63
|
+
else if (typeof component.additionalProps === 'function') {
|
|
28
64
|
addProps = c11nEnv.resolveConfigProps(component.additionalProps(state, ownProps.getPConnect));
|
|
29
65
|
}
|
|
30
|
-
// const obj = c11nEnv.getConfigProps();
|
|
31
66
|
c11nEnv.getConfigProps(obj);
|
|
32
|
-
// console.log(`connectRedux: connect callback: ${c11nEnv.getComponentName()}`);
|
|
33
|
-
// debugging/investigation help
|
|
34
|
-
// if (obj.routingInfo) {
|
|
35
|
-
// console.log( `${theCompName}: BEFORE populateAdditionalProps: obj.routingInfo: ${JSON.stringify(obj.routingInfo)}`);
|
|
36
|
-
// }
|
|
37
67
|
// populate additional props which are component specific and not present in configurations
|
|
38
68
|
// This block can be removed once all these props will be added as part of configs
|
|
39
69
|
c11nEnv.populateAdditionalProps(obj);
|
|
40
|
-
// debugging/investigation help
|
|
41
|
-
// if (obj.routingInfo) {
|
|
42
|
-
// console.log( `${theCompName}: AFTER populateAdditionalProps: obj.routingInfo: ${JSON.stringify(obj.routingInfo)}`);
|
|
43
|
-
// // if (theCompName === "ViewContainer") {
|
|
44
|
-
// // debugger;
|
|
45
|
-
// // }
|
|
46
|
-
// }
|
|
47
70
|
return {
|
|
48
71
|
...obj,
|
|
49
72
|
...addProps
|
|
@@ -53,19 +76,15 @@ const connectRedux = (component, c11nEnv) => {
|
|
|
53
76
|
areStatePropsEqual: (next, prev) => {
|
|
54
77
|
const allStateProps = c11nEnv.getStateProps();
|
|
55
78
|
for (const key in allStateProps) {
|
|
56
|
-
|
|
57
|
-
|
|
79
|
+
if ((isClassIDCompare(key, prev) && !shallowEqual(next[key], prev[key])) ||
|
|
80
|
+
// eslint-disable-next-line no-undef
|
|
81
|
+
(next.routingInfo && !PCore.isDeepEqual(next.routingInfo, prev.routingInfo))) {
|
|
58
82
|
return false;
|
|
59
83
|
}
|
|
60
84
|
}
|
|
61
|
-
/* TODO For some rawConfig we are not getting routingInfo under allStateProps */
|
|
62
|
-
// eslint-disable-next-line no-undef
|
|
63
|
-
if ('routingInfo' in next && (!shallowEqual(next.routingInfo, prev.routingInfo) || !PCore.isDeepEqual(next.routingInfo, prev.routingInfo))) {
|
|
64
|
-
return false;
|
|
65
|
-
}
|
|
66
85
|
// For CaseSummary (when status === ".pyStatusWork"), we need to compare changes in
|
|
67
86
|
// primaryFields and secondary Fields
|
|
68
|
-
if (allStateProps.status ===
|
|
87
|
+
if (allStateProps.status === '.pyStatusWork') {
|
|
69
88
|
for (const key in prev) {
|
|
70
89
|
// eslint-disable-next-line no-undef
|
|
71
90
|
if (!PCore.isDeepEqual(next[key], prev[key])) {
|
|
@@ -73,11 +92,12 @@ const connectRedux = (component, c11nEnv) => {
|
|
|
73
92
|
}
|
|
74
93
|
}
|
|
75
94
|
}
|
|
76
|
-
|
|
95
|
+
/* TODO For some rawConfig we are not getting routingInfo under allStateProps */
|
|
96
|
+
return !routingInfoCompare(next, prev);
|
|
77
97
|
}
|
|
78
98
|
})(component);
|
|
79
99
|
};
|
|
80
|
-
const getComponent =
|
|
100
|
+
const getComponent = c11nEnv => {
|
|
81
101
|
// PCore is defined in pxBootstrapShell - eventually will be exported in place of constellationCore
|
|
82
102
|
// eslint-disable-next-line no-undef
|
|
83
103
|
const ComponentsRegistry = PCore.getComponentsRegistry();
|
|
@@ -85,7 +105,7 @@ const getComponent = (c11nEnv, declarative) => {
|
|
|
85
105
|
const componentObj = ComponentsRegistry.getComponent(type);
|
|
86
106
|
const componentType = (componentObj && componentObj.component) || type;
|
|
87
107
|
// JEA - modifying logic before bailing to RootContainer logic to work around async loading problem
|
|
88
|
-
let component = LazyComponentMap[componentType] /* || window[componentType]
|
|
108
|
+
let component = LazyComponentMap[componentType]; /* || window[componentType] */
|
|
89
109
|
// NOTE: Until we get lazy loading working, maintain this for each component we add
|
|
90
110
|
if (component === undefined) {
|
|
91
111
|
if (SdkComponentMap) {
|
|
@@ -121,18 +141,10 @@ const getComponent = (c11nEnv, declarative) => {
|
|
|
121
141
|
console.log(`getComponent doesn't have an entry for component ${component}`);
|
|
122
142
|
component = ErrorBoundary;
|
|
123
143
|
}
|
|
124
|
-
// Declarative components already connected to redux so return without connect.
|
|
125
|
-
if (declarative) {
|
|
126
|
-
return component;
|
|
127
|
-
}
|
|
128
144
|
if (c11nEnv.isConditionExist()) {
|
|
129
|
-
|
|
130
|
-
component = connectRedux(createPConnectComponent(true), c11nEnv);
|
|
131
|
-
}
|
|
132
|
-
else {
|
|
133
|
-
component = connectRedux(component, c11nEnv);
|
|
145
|
+
return connectRedux(withVisibility(component), c11nEnv);
|
|
134
146
|
}
|
|
135
|
-
return component;
|
|
147
|
+
return connectRedux(component, c11nEnv);
|
|
136
148
|
};
|
|
137
149
|
/**
|
|
138
150
|
*
|
|
@@ -140,7 +152,7 @@ const getComponent = (c11nEnv, declarative) => {
|
|
|
140
152
|
* @returns {React.Components<Props, State>}
|
|
141
153
|
|
|
142
154
|
*/
|
|
143
|
-
const createPConnectComponent = (
|
|
155
|
+
const createPConnectComponent = () => {
|
|
144
156
|
/**
|
|
145
157
|
* JEA - add Type info via JSdoc syntax...
|
|
146
158
|
* @extends {React.Components<Props, State>}
|
|
@@ -154,19 +166,16 @@ const createPConnectComponent = (declarative = false) => {
|
|
|
154
166
|
class PConnect extends Component {
|
|
155
167
|
constructor(props) {
|
|
156
168
|
super(props);
|
|
157
|
-
|
|
158
|
-
this.
|
|
159
|
-
|
|
160
|
-
|
|
161
|
-
this.
|
|
169
|
+
const { getPConnect } = this.props;
|
|
170
|
+
this.state = {
|
|
171
|
+
hasError: false
|
|
172
|
+
};
|
|
173
|
+
this.eventHandler = this.eventHandler.bind(this);
|
|
174
|
+
this.changeHandler = this.changeHandler.bind(this);
|
|
175
|
+
this.c11nEnv = getPConnect();
|
|
176
|
+
this.Control = getComponent(this.c11nEnv);
|
|
162
177
|
this.actionsAPI = this.c11nEnv.getActionsApi();
|
|
163
|
-
|
|
164
|
-
if (theDisplayName === undefined) {
|
|
165
|
-
// In some case (ex: RadioButtons), displayName isn't defined. So,
|
|
166
|
-
// When this happens, use getComponentName() instead
|
|
167
|
-
theDisplayName = this.c11nEnv.getComponentName();
|
|
168
|
-
}
|
|
169
|
-
// console.log( `PConnect constructor: ${theDisplayName}`);
|
|
178
|
+
this.processActions(this.c11nEnv);
|
|
170
179
|
}
|
|
171
180
|
static getDerivedStateFromError(error) {
|
|
172
181
|
// Update state so the next render will show the fallback UI.
|
|
@@ -177,6 +186,7 @@ const createPConnectComponent = (declarative = false) => {
|
|
|
177
186
|
}
|
|
178
187
|
componentDidMount() {
|
|
179
188
|
this.c11nEnv.addFormField();
|
|
189
|
+
setVisibilityForList(this.c11nEnv, true);
|
|
180
190
|
}
|
|
181
191
|
componentDidCatch(error, info) {
|
|
182
192
|
// eslint-disable-next-line no-console
|
|
@@ -185,6 +195,7 @@ const createPConnectComponent = (declarative = false) => {
|
|
|
185
195
|
componentWillUnmount() {
|
|
186
196
|
if (this.c11nEnv.removeFormField) {
|
|
187
197
|
this.c11nEnv.removeFormField();
|
|
198
|
+
setVisibilityForList(this.c11nEnv, false);
|
|
188
199
|
}
|
|
189
200
|
}
|
|
190
201
|
/*
|
|
@@ -193,8 +204,8 @@ const createPConnectComponent = (declarative = false) => {
|
|
|
193
204
|
*/
|
|
194
205
|
processActions() {
|
|
195
206
|
if (this.c11nEnv.isEditable()) {
|
|
196
|
-
this.c11nEnv.setAction(
|
|
197
|
-
this.c11nEnv.setAction(
|
|
207
|
+
this.c11nEnv.setAction('onChange', this.changeHandler);
|
|
208
|
+
this.c11nEnv.setAction('onBlur', this.eventHandler);
|
|
198
209
|
}
|
|
199
210
|
}
|
|
200
211
|
// Using separate handle for change as in case of dropdown, native click is mapped to react change
|
|
@@ -206,34 +217,30 @@ const createPConnectComponent = (declarative = false) => {
|
|
|
206
217
|
this.actionsAPI.eventHandler(this.c11nEnv, event);
|
|
207
218
|
// getActionProcessor().eventHandler(this.c11nEnv, event);
|
|
208
219
|
}
|
|
209
|
-
|
|
210
|
-
this.
|
|
220
|
+
createChildren() {
|
|
221
|
+
const { getPConnect } = this.props;
|
|
222
|
+
if (getPConnect().hasChildren() && getPConnect().getChildren()) {
|
|
223
|
+
return getPConnect()
|
|
224
|
+
.getChildren()
|
|
225
|
+
.map(childProps => React.createElement(PConnect, { ...childProps }));
|
|
226
|
+
}
|
|
227
|
+
return null;
|
|
211
228
|
}
|
|
212
|
-
|
|
213
|
-
* this.props.__internal is to have info like propertiesMap, isExpressionExist, isWhenExist
|
|
214
|
-
* which would be used to call redux connect for re-render purpose on state change
|
|
215
|
-
*/
|
|
216
|
-
initialize() {
|
|
229
|
+
getKey() {
|
|
217
230
|
const { getPConnect } = this.props;
|
|
218
|
-
|
|
219
|
-
|
|
220
|
-
|
|
221
|
-
|
|
222
|
-
|
|
223
|
-
|
|
224
|
-
|
|
225
|
-
if (this.c11nEnv.hasChildren()) {
|
|
226
|
-
const children = this.c11nEnv.getChildren() || [];
|
|
227
|
-
children.forEach((child) => this.addChildren(child));
|
|
228
|
-
this.configProps.children = Children.toArray(this.configProps.children);
|
|
231
|
+
const viewName = getPConnect().getConfigProps().name || getPConnect().getCurrentView();
|
|
232
|
+
let key = !viewName
|
|
233
|
+
? createUID()
|
|
234
|
+
: `${viewName}!${getPConnect().getCurrentClassID() || createUID()}`;
|
|
235
|
+
// In the case of pyDetails the key must be unigue for each instance
|
|
236
|
+
if (viewName && viewName.toUpperCase() === 'PYDETAILS') {
|
|
237
|
+
key += `!${getPConnect().getCaseInfo().getID()}`;
|
|
229
238
|
}
|
|
239
|
+
return key.toUpperCase();
|
|
230
240
|
}
|
|
231
241
|
render() {
|
|
232
242
|
const { hasError } = this.state;
|
|
233
|
-
const { getPConnect,
|
|
234
|
-
if (visibility === false) {
|
|
235
|
-
return null;
|
|
236
|
-
}
|
|
243
|
+
const { getPConnect, additionalProps, ...otherProps } = this.props;
|
|
237
244
|
if (hasError) {
|
|
238
245
|
// You can render any custom fallback UI
|
|
239
246
|
// console.log(`react_pconnect error: used to return: <ErrorBoundary getPConnect={() => this.c11nEnv} isInternalError />`);
|
|
@@ -244,13 +251,16 @@ const createPConnectComponent = (declarative = false) => {
|
|
|
244
251
|
const finalProps = {
|
|
245
252
|
...props,
|
|
246
253
|
getPConnect,
|
|
247
|
-
...this.configProps,
|
|
248
254
|
...actions,
|
|
249
255
|
additionalProps,
|
|
250
256
|
...otherProps
|
|
251
257
|
};
|
|
258
|
+
// If the new component is a reference node then mark with a unique key
|
|
259
|
+
if (['reference', 'View'].includes(getPConnect().getComponentName()) && !finalProps.key) {
|
|
260
|
+
finalProps.key = this.getKey();
|
|
261
|
+
}
|
|
252
262
|
// console.log(`react_pconnect: used to return: <this.Control {...finalProps} />`);
|
|
253
|
-
return React.createElement(this.Control, { ...finalProps });
|
|
263
|
+
return React.createElement(this.Control, { ...finalProps }, this.createChildren());
|
|
254
264
|
}
|
|
255
265
|
}
|
|
256
266
|
// eslint-disable-next-line react/static-property-placement
|
|
@@ -259,7 +269,6 @@ const createPConnectComponent = (declarative = false) => {
|
|
|
259
269
|
// meta: PropTypes.object.isRequired,
|
|
260
270
|
// configObject: PropTypes.object.isRequired,
|
|
261
271
|
getPConnect: PropTypes.func.isRequired,
|
|
262
|
-
visibility: PropTypes.bool /* .isRequired */,
|
|
263
272
|
additionalProps: PropTypes.shape({
|
|
264
273
|
noLabel: PropTypes.bool,
|
|
265
274
|
readOnly: PropTypes.bool
|
|
@@ -269,55 +278,55 @@ const createPConnectComponent = (declarative = false) => {
|
|
|
269
278
|
// eslint-disable-next-line react/static-property-placement
|
|
270
279
|
PConnect.defaultProps = {
|
|
271
280
|
additionalProps: {},
|
|
272
|
-
validatemessage:
|
|
281
|
+
validatemessage: ''
|
|
273
282
|
};
|
|
274
283
|
return PConnect;
|
|
275
284
|
};
|
|
276
285
|
// Move these into SdkConstellationReady so PCore is available
|
|
277
|
-
document.addEventListener(
|
|
286
|
+
document.addEventListener('SdkConstellationReady', () => {
|
|
278
287
|
// eslint-disable-next-line no-undef
|
|
279
288
|
PCore.registerComponentCreator((c11nEnv, additionalProps = {}) => {
|
|
280
289
|
const PConnectComp = createPConnectComponent();
|
|
281
|
-
return
|
|
282
|
-
|
|
283
|
-
|
|
284
|
-
|
|
285
|
-
|
|
286
|
-
|
|
290
|
+
return createElement(PConnectComp, {
|
|
291
|
+
...c11nEnv,
|
|
292
|
+
...c11nEnv.getPConnect().getConfigProps(),
|
|
293
|
+
...c11nEnv.getPConnect().getActions(),
|
|
294
|
+
...{ additionalProps }
|
|
295
|
+
});
|
|
287
296
|
});
|
|
288
297
|
// eslint-disable-next-line no-undef
|
|
289
|
-
PCore.getAssetLoader().register(
|
|
298
|
+
PCore.getAssetLoader().register('component-loader', async (componentNames = []) => {
|
|
290
299
|
const promises = [];
|
|
291
|
-
componentNames.forEach(
|
|
300
|
+
componentNames.forEach(comp => {
|
|
292
301
|
if (/^[A-Z]/.test(comp) && !LazyComponentMap[comp]) {
|
|
293
302
|
if (!ComponentMap[comp]) {
|
|
294
303
|
// eslint-disable-next-line no-undef
|
|
295
304
|
const srcUrl = `${PCore.getAssetLoader().getConstellationServiceUrl()}/v860/${PCore.getAssetLoader().getAppAlias()}/component/${comp}.js`;
|
|
296
305
|
// eslint-disable-next-line no-undef
|
|
297
|
-
promises.push(PCore.getAssetLoader().getLoader()(srcUrl,
|
|
306
|
+
promises.push(PCore.getAssetLoader().getLoader()(srcUrl, 'script'));
|
|
298
307
|
}
|
|
299
308
|
else {
|
|
300
309
|
if (ComponentMap[comp].modules && ComponentMap[comp].modules.length) {
|
|
301
|
-
ComponentMap[comp].modules.forEach(
|
|
310
|
+
ComponentMap[comp].modules.forEach(module => {
|
|
302
311
|
LazyComponentMap[comp] = module;
|
|
303
312
|
});
|
|
304
313
|
}
|
|
305
314
|
if (ComponentMap[comp].scripts && ComponentMap[comp].scripts.length) {
|
|
306
|
-
ComponentMap[comp].scripts.forEach(
|
|
315
|
+
ComponentMap[comp].scripts.forEach(script => {
|
|
307
316
|
promises.push(
|
|
308
317
|
// eslint-disable-next-line no-undef
|
|
309
|
-
PCore.getAssetLoader().getLoader()(script,
|
|
318
|
+
PCore.getAssetLoader().getLoader()(script, 'script'));
|
|
310
319
|
});
|
|
311
320
|
}
|
|
312
321
|
}
|
|
313
322
|
}
|
|
314
323
|
});
|
|
315
324
|
/* Promise.all rejects or accepts all or none. This causes entire component loader to fail
|
|
316
|
-
|
|
317
|
-
|
|
318
|
-
|
|
319
|
-
|
|
320
|
-
|
|
325
|
+
in case there is a single failure.
|
|
326
|
+
Using allSettled to allow Promise to be resolved even if there are failed components
|
|
327
|
+
Note : This is a liberty taken at component loader and unwise to be used at
|
|
328
|
+
asset loader which will still use Promise.all
|
|
329
|
+
*/
|
|
321
330
|
await Promise.allSettled(promises);
|
|
322
331
|
});
|
|
323
332
|
});
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"react_pconnect.js","sourceRoot":"","sources":["../../src/bridge/react_pconnect.jsx"],"names":[],"mappings":"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","sourcesContent":["import React, { Children, Component, createElement } from \"react\";\n// import { render, unmountComponentAtNode } from \"react-dom\";\nimport PropTypes from \"prop-types\";\nimport { connect, shallowEqual } from \"react-redux\";\n\nimport ComponentMap, { LazyMap as LazyComponentMap } from '../components_map'; // was '../../../../../src/components_map';\nimport StoreContext from \"./Context/StoreContext\";\n\n// const pathToComponents = \"../../../../../src/components\"; /* When bridge was local, it was \"../components\" */\n\n// For now, NOT doing lazy loading - needs some work on the loader to work with TypeScript\n// As we add components, we'll need to import them here and add to the switch statement\n// below in getComponent!\n\nimport ErrorBoundary from '../components/infra/ErrorBoundary';\n\nimport { SdkComponentMap } from \"./helpers/sdk_component_map\";\n\nconst connectRedux = (component, c11nEnv) => {\n\n // console.log(`in connectRedux: ${component.name}`);\n\n return connect(\n (state, ownProps) => {\n let addProps = {};\n const obj = {};\n\n\n // JA - testing\n // const theCompName = c11nEnv.getComponentName();\n // console.log(`in connect mapStateToProps callback for: ${theCompName}`);\n // if ( theCompName === \"ViewContainer\" || theCompName === \"View\") {\n // debugger;\n // }\n\n if (typeof component.additionalProps === \"object\") {\n addProps = c11nEnv.resolveConfigProps(component.additionalProps);\n } else if (typeof component.additionalProps === \"function\") {\n addProps = c11nEnv.resolveConfigProps(\n component.additionalProps(state, ownProps.getPConnect)\n );\n }\n\n // const obj = c11nEnv.getConfigProps();\n c11nEnv.getConfigProps(obj);\n\n // console.log(`connectRedux: connect callback: ${c11nEnv.getComponentName()}`);\n\n // debugging/investigation help\n // if (obj.routingInfo) {\n // console.log( `${theCompName}: BEFORE populateAdditionalProps: obj.routingInfo: ${JSON.stringify(obj.routingInfo)}`);\n // }\n\n // populate additional props which are component specific and not present in configurations\n // This block can be removed once all these props will be added as part of configs\n c11nEnv.populateAdditionalProps(obj);\n\n // debugging/investigation help\n // if (obj.routingInfo) {\n // console.log( `${theCompName}: AFTER populateAdditionalProps: obj.routingInfo: ${JSON.stringify(obj.routingInfo)}`);\n // // if (theCompName === \"ViewContainer\") {\n // // debugger;\n // // }\n // }\n\n return {\n ...obj,\n ...addProps\n };\n },\n null,\n null,\n {\n context: StoreContext,\n areStatePropsEqual: (next,prev) => {\n const allStateProps = c11nEnv.getStateProps();\n for(const key in allStateProps){\n // eslint-disable-next-line no-undef\n if(!shallowEqual(next[key], prev[key]) || (next.routingInfo && !PCore.isDeepEqual(next.routingInfo, prev.routingInfo))){\n return false;\n }\n }\n /* TODO For some rawConfig we are not getting routingInfo under allStateProps */\n // eslint-disable-next-line no-undef\n if('routingInfo' in next && (!shallowEqual(next.routingInfo, prev.routingInfo) || !PCore.isDeepEqual(next.routingInfo, prev.routingInfo))){\n return false;\n }\n\n // For CaseSummary (when status === \".pyStatusWork\"), we need to compare changes in\n // primaryFields and secondary Fields\n if (allStateProps.status === \".pyStatusWork\") {\n for(const key in prev){\n // eslint-disable-next-line no-undef\n if (!PCore.isDeepEqual(next[key], prev[key])) {\n return false;\n }\n }\n }\n\n return true;\n }\n }\n )(component);\n};\n\n\nconst getComponent = (c11nEnv, declarative) => {\n // PCore is defined in pxBootstrapShell - eventually will be exported in place of constellationCore\n // eslint-disable-next-line no-undef\n const ComponentsRegistry = PCore.getComponentsRegistry();\n const type = c11nEnv.getComponentName();\n\n const componentObj = ComponentsRegistry.getComponent(type);\n const componentType = (componentObj && componentObj.component) || type;\n\n // JEA - modifying logic before bailing to RootContainer logic to work around async loading problem\n let component =\n LazyComponentMap[componentType] /* || window[componentType] */;\n\n // NOTE: Until we get lazy loading working, maintain this for each component we add\n if (component === undefined) {\n if (SdkComponentMap) {\n // This is the node_modules version of react_pconnect!\n const theLocalComponent = SdkComponentMap.getLocalComponentMap()[componentType];\n if ( theLocalComponent !== undefined) {\n // eslint-disable-next-line no-console\n console.log(`react_pconnect getComponent found ${componentType}: Local`);\n component = theLocalComponent\n } else {\n const thePegaProvidedComponent = SdkComponentMap.getPegaProvidedComponentMap()[componentType];\n if ( thePegaProvidedComponent !== undefined) {\n // console.log(`react_pconnect getComponent found ${componentType}: Pega-provided`);\n component = thePegaProvidedComponent;\n } else {\n // eslint-disable-next-line no-console\n console.error(`react_pconnect: getComponent doesn't have an entry for type ${type}`);\n component = ErrorBoundary;\n }\n }\n } else {\n // We no longer handle the \"old\" switch statement that was here in the original packaging.\n // All components seen here need to be in the SdkComponentMap\n // eslint-disable-next-line no-console\n console.error(`SdkComponentMap not defined! Unable to process component: ${componentType}`);\n \n }\n } else {\n // eslint-disable-next-line no-console\n console.log( `getComponent doesn't have an entry for component ${component}`);\n component = ErrorBoundary;\n }\n\n // Declarative components already connected to redux so return without connect.\n if (declarative) {\n return component;\n }\n\n if (c11nEnv.isConditionExist()) {\n // eslint-disable-next-line @typescript-eslint/no-use-before-define\n component = connectRedux(createPConnectComponent(true), c11nEnv);\n } else {\n component = connectRedux(component, c11nEnv);\n }\n return component;\n};\n\n/**\n * \n * @param {*} declarative \n * @returns {React.Components<Props, State>}\n\n */\nconst createPConnectComponent = (declarative=false) => {\n /**\n * JEA - add Type info via JSdoc syntax...\n * @extends {React.Components<Props, State>}\n * createPConnectComponent - Class to create/initialize a PConnect (c11nEnv) object\n * to pre-process meta data of each componnet.\n * - Wraps each child in a component with PConnect\n * - Process all actions and make them avaiable in props\n * - Filters all properties in metadata and keeps them\n * __internal for re-render process through connect\n */\n class PConnect extends Component {\n constructor(props) {\n super(props);\n this.children = [];\n this.c11nEnv = this.props.getPConnect();\n this.initialize();\n this.state = { hasError: false };\n this.Control = getComponent(this.c11nEnv, declarative);\n this.actionsAPI = this.c11nEnv.getActionsApi();\n\n let theDisplayName = this.Control.displayName;\n if (theDisplayName === undefined) {\n // In some case (ex: RadioButtons), displayName isn't defined. So,\n // When this happens, use getComponentName() instead\n theDisplayName = this.c11nEnv.getComponentName();\n }\n\n // console.log( `PConnect constructor: ${theDisplayName}`);\n }\n\n static getDerivedStateFromError(error) {\n // Update state so the next render will show the fallback UI.\n return {\n hasError: true,\n error\n };\n }\n\n componentDidMount() {\n this.c11nEnv.addFormField();\n }\n\n componentDidCatch(error, info) {\n // eslint-disable-next-line no-console\n console.error(\n `Error while Rendering the component ${this.componentName} : `,\n error,\n info.componentStack\n );\n }\n\n componentWillUnmount() {\n if (this.c11nEnv.removeFormField) {\n this.c11nEnv.removeFormField();\n }\n }\n\n /*\n * processActions to see all actions in meta and adds event in props.\n * Attaches common handler (eventHandler) for all actions.\n */\n processActions() {\n if (this.c11nEnv.isEditable()) {\n this.c11nEnv.setAction(\"onChange\", this.changeHandler);\n this.c11nEnv.setAction(\"onBlur\", this.eventHandler);\n }\n }\n\n // Using separate handle for change as in case of dropdown, native click is mapped to react change\n changeHandler(event) {\n this.actionsAPI.changeHandler(this.c11nEnv, event);\n // getActionProcessor().changeHandler(this.c11nEnv, event);\n }\n\n eventHandler(event) {\n this.actionsAPI.eventHandler(this.c11nEnv, event);\n // getActionProcessor().eventHandler(this.c11nEnv, event);\n }\n\n addChildren(child) {\n this.configProps.children.push(createElement(createPConnectComponent(), child));\n }\n\n /* This should be called only once per component instance\n * this.props.__internal is to have info like propertiesMap, isExpressionExist, isWhenExist\n * which would be used to call redux connect for re-render purpose on state change\n */\n initialize() {\n const { getPConnect } = this.props;\n this.c11nEnv = getPConnect();\n this.configProps = {};\n this.eventHandler = this.eventHandler.bind(this);\n this.changeHandler = this.changeHandler.bind(this);\n this.processActions(this.c11nEnv);\n this.propsToChild = {};\n\n this.configProps.children = [];\n\n if (this.c11nEnv.hasChildren()) {\n const children = this.c11nEnv.getChildren() || [];\n children.forEach((child) => this.addChildren(child));\n this.configProps.children = Children.toArray(\n this.configProps.children\n );\n }\n }\n\n render() {\n const { hasError } = this.state;\n const {\n getPConnect,\n visibility,\n additionalProps,\n ...otherProps\n } = this.props;\n\n if (visibility === false) {\n return null;\n }\n if (hasError) {\n // You can render any custom fallback UI\n // console.log(`react_pconnect error: used to return: <ErrorBoundary getPConnect={() => this.c11nEnv} isInternalError />`);\n return <ErrorBoundary getPConnect={() => this.c11nEnv} isInternalError />;\n }\n\n const props = this.c11nEnv.getConfigProps();\n const actions = this.c11nEnv.getActions();\n const finalProps = {\n ...props,\n getPConnect,\n ...this.configProps,\n ...actions,\n additionalProps,\n ...otherProps\n };\n\n // console.log(`react_pconnect: used to return: <this.Control {...finalProps} />`);\n\n return <this.Control {...finalProps} />;\n }\n }\n\n // eslint-disable-next-line react/static-property-placement\n PConnect.propTypes = {\n // __internal: PropTypes.object.isRequired,\n // meta: PropTypes.object.isRequired,\n // configObject: PropTypes.object.isRequired,\n getPConnect: PropTypes.func.isRequired,\n visibility: PropTypes.bool/* .isRequired */,\n additionalProps: PropTypes.shape({\n noLabel: PropTypes.bool,\n readOnly: PropTypes.bool\n }),\n validatemessage: PropTypes.string\n };\n\n // eslint-disable-next-line react/static-property-placement\n PConnect.defaultProps = {\n additionalProps: {},\n validatemessage: \"\"\n };\n\n return PConnect;\n};\n\n\n// Move these into SdkConstellationReady so PCore is available\ndocument.addEventListener(\"SdkConstellationReady\", () => {\n\n // eslint-disable-next-line no-undef\n PCore.registerComponentCreator((c11nEnv, additionalProps = {}) => {\n const PConnectComp = createPConnectComponent();\n return (\n <PConnectComp {\n ...{\n ...c11nEnv,\n ...c11nEnv.getPConnect().getConfigProps(),\n ...c11nEnv.getPConnect().getActions(),\n additionalProps\n }}\n />\n );\n });\n\n // eslint-disable-next-line no-undef\n PCore.getAssetLoader().register(\n \"component-loader\",\n async (componentNames = []) => {\n const promises = [];\n componentNames.forEach((comp) => {\n if (/^[A-Z]/.test(comp) && !LazyComponentMap[comp]) {\n if (!ComponentMap[comp]) {\n // eslint-disable-next-line no-undef\n const srcUrl = `${PCore.getAssetLoader().getConstellationServiceUrl()}/v860/${PCore.getAssetLoader().getAppAlias()}/component/${comp}.js`;\n // eslint-disable-next-line no-undef\n promises.push(PCore.getAssetLoader().getLoader()(srcUrl, \"script\"));\n } else {\n if (ComponentMap[comp].modules && ComponentMap[comp].modules.length) {\n ComponentMap[comp].modules.forEach((module) => {\n LazyComponentMap[comp] = module;\n });\n }\n if (ComponentMap[comp].scripts && ComponentMap[comp].scripts.length) {\n ComponentMap[comp].scripts.forEach((script) => {\n promises.push(\n // eslint-disable-next-line no-undef\n PCore.getAssetLoader().getLoader()(script, \"script\")\n );\n });\n }\n }\n }\n });\n /* Promise.all rejects or accepts all or none. This causes entire component loader to fail\n in case there is a single failure.\n Using allSettled to allow Promise to be resolved even if there are failed components\n Note : This is a liberty taken at component loader and unwise to be used at\n asset loader which will still use Promise.all\n */\n await Promise.allSettled(promises);\n }\n );\n});\n\nexport default createPConnectComponent;\n\n\n/* These APIs need to be exposed for authoring bridge\nWill be removed when pxbootstrap and constellation_bridge is cleaned up\nto use single bootstrap file from constellation */\n// window.authoringUtils = {\n// createElement,\n// render,\n// unmountComponentAtNode,\n// LazyComponentMap\n// };\n"]}
|
|
1
|
+
{"version":3,"file":"react_pconnect.js","sourceRoot":"","sources":["../../src/bridge/react_pconnect.jsx"],"names":[],"mappings":"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","sourcesContent":["/* eslint-disable max-classes-per-file */\nimport React, { Component, createElement } from 'react';\nimport PropTypes from 'prop-types';\nimport { connect, shallowEqual } from 'react-redux';\n\nimport ComponentMap, { LazyMap as LazyComponentMap } from '../components_map'; // was '../../../../../src/components_map';\nimport StoreContext from './Context/StoreContext';\n\n// const pathToComponents = \"../../../../../src/components\"; /* When bridge was local, it was \"../components\" */\n\n// For now, NOT doing lazy loading - needs some work on the loader to work with TypeScript\n// As we add components, we'll need to import them here and add to the switch statement\n// below in getComponent!\n\nimport ErrorBoundary from '../components/infra/ErrorBoundary';\n\nimport { SdkComponentMap } from './helpers/sdk_component_map';\n\nconst isClassIDCompare = (key, prev) => {\n return !(key === 'classID' && !prev[key]);\n};\n\nconst routingInfoCompare = (next, prev) => {\n return (\n 'routingInfo' in next &&\n (!shallowEqual(next.routingInfo, prev.routingInfo) ||\n // eslint-disable-next-line no-undef\n !PCore.isDeepEqual(next.routingInfo, prev.routingInfo))\n );\n};\n\n/** Generate unique id for elements */\nconst createUID = () => {\n return `_${Math.random().toString(36).slice(2, 11)}`;\n};\n\nexport const setVisibilityForList = (c11nEnv, visibility) => {\n const { selectionMode, selectionList, renderMode, referenceList } = c11nEnv.getComponentConfig();\n // usecase:multiselect, fieldgroup, editable table\n if (\n // eslint-disable-next-line no-undef\n (selectionMode === PCore.getConstants().LIST_SELECTION_MODE.MULTI && selectionList) ||\n (renderMode === 'Editable' && referenceList)\n ) {\n c11nEnv.getListActions().setVisibility(visibility);\n }\n};\n\nfunction withVisibility(WrappedComponent) {\n // eslint-disable-next-line react/prefer-stateless-function\n return class extends Component {\n render() {\n const { visibility } = this.props;\n\n if (visibility === false) {\n return null;\n }\n return <WrappedComponent {...this.props} />;\n }\n };\n}\n\nconst connectRedux = (component, c11nEnv) => {\n return connect(\n (state, ownProps) => {\n let addProps = {};\n const obj = {};\n // Need to use ownProps pconnect since c11nEnv is stale and prior to re-render\n if (!ownProps.getPConnect) {\n // eslint-disable-next-line no-console\n console.error('connectRedux ownProps are not defined');\n } else {\n c11nEnv = ownProps.getPConnect();\n }\n\n if (typeof component.additionalProps === 'object') {\n addProps = c11nEnv.resolveConfigProps(component.additionalProps);\n } else if (typeof component.additionalProps === 'function') {\n addProps = c11nEnv.resolveConfigProps(\n component.additionalProps(state, ownProps.getPConnect)\n );\n }\n\n c11nEnv.getConfigProps(obj);\n\n // populate additional props which are component specific and not present in configurations\n // This block can be removed once all these props will be added as part of configs\n c11nEnv.populateAdditionalProps(obj);\n\n return {\n ...obj,\n ...addProps\n };\n },\n null,\n null,\n {\n context: StoreContext,\n areStatePropsEqual: (next, prev) => {\n const allStateProps = c11nEnv.getStateProps();\n for (const key in allStateProps) {\n if (\n (isClassIDCompare(key, prev) && !shallowEqual(next[key], prev[key])) ||\n // eslint-disable-next-line no-undef\n (next.routingInfo && !PCore.isDeepEqual(next.routingInfo, prev.routingInfo))\n ) {\n return false;\n }\n }\n\n // For CaseSummary (when status === \".pyStatusWork\"), we need to compare changes in\n // primaryFields and secondary Fields\n if (allStateProps.status === '.pyStatusWork') {\n for (const key in prev) {\n // eslint-disable-next-line no-undef\n if (!PCore.isDeepEqual(next[key], prev[key])) {\n return false;\n }\n }\n }\n /* TODO For some rawConfig we are not getting routingInfo under allStateProps */\n return !routingInfoCompare(next, prev);\n }\n }\n )(component);\n};\n\nconst getComponent = c11nEnv => {\n // PCore is defined in pxBootstrapShell - eventually will be exported in place of constellationCore\n // eslint-disable-next-line no-undef\n const ComponentsRegistry = PCore.getComponentsRegistry();\n const type = c11nEnv.getComponentName();\n\n const componentObj = ComponentsRegistry.getComponent(type);\n const componentType = (componentObj && componentObj.component) || type;\n\n // JEA - modifying logic before bailing to RootContainer logic to work around async loading problem\n let component = LazyComponentMap[componentType]; /* || window[componentType] */\n\n // NOTE: Until we get lazy loading working, maintain this for each component we add\n if (component === undefined) {\n if (SdkComponentMap) {\n // This is the node_modules version of react_pconnect!\n const theLocalComponent = SdkComponentMap.getLocalComponentMap()[componentType];\n if (theLocalComponent !== undefined) {\n // eslint-disable-next-line no-console\n console.log(`react_pconnect getComponent found ${componentType}: Local`);\n component = theLocalComponent;\n } else {\n const thePegaProvidedComponent =\n SdkComponentMap.getPegaProvidedComponentMap()[componentType];\n if (thePegaProvidedComponent !== undefined) {\n // console.log(`react_pconnect getComponent found ${componentType}: Pega-provided`);\n component = thePegaProvidedComponent;\n } else {\n // eslint-disable-next-line no-console\n console.error(`react_pconnect: getComponent doesn't have an entry for type ${type}`);\n component = ErrorBoundary;\n }\n }\n } else {\n // We no longer handle the \"old\" switch statement that was here in the original packaging.\n // All components seen here need to be in the SdkComponentMap\n // eslint-disable-next-line no-console\n console.error(`SdkComponentMap not defined! Unable to process component: ${componentType}`);\n }\n } else {\n // eslint-disable-next-line no-console\n console.log(`getComponent doesn't have an entry for component ${component}`);\n component = ErrorBoundary;\n }\n\n if (c11nEnv.isConditionExist()) {\n return connectRedux(withVisibility(component), c11nEnv);\n }\n\n return connectRedux(component, c11nEnv);\n};\n\n/**\n *\n * @param {*} declarative\n * @returns {React.Components<Props, State>}\n\n */\nconst createPConnectComponent = () => {\n /**\n * JEA - add Type info via JSdoc syntax...\n * @extends {React.Components<Props, State>}\n * createPConnectComponent - Class to create/initialize a PConnect (c11nEnv) object\n * to pre-process meta data of each componnet.\n * - Wraps each child in a component with PConnect\n * - Process all actions and make them avaiable in props\n * - Filters all properties in metadata and keeps them\n * __internal for re-render process through connect\n */\n class PConnect extends Component {\n constructor(props) {\n super(props);\n const { getPConnect } = this.props;\n this.state = {\n hasError: false\n };\n\n this.eventHandler = this.eventHandler.bind(this);\n this.changeHandler = this.changeHandler.bind(this);\n\n this.c11nEnv = getPConnect();\n this.Control = getComponent(this.c11nEnv);\n this.actionsAPI = this.c11nEnv.getActionsApi();\n\n this.processActions(this.c11nEnv);\n }\n\n static getDerivedStateFromError(error) {\n // Update state so the next render will show the fallback UI.\n return {\n hasError: true,\n error\n };\n }\n\n componentDidMount() {\n this.c11nEnv.addFormField();\n setVisibilityForList(this.c11nEnv, true);\n }\n\n componentDidCatch(error, info) {\n // eslint-disable-next-line no-console\n console.error(\n `Error while Rendering the component ${this.componentName} : `,\n error,\n info.componentStack\n );\n }\n\n componentWillUnmount() {\n if (this.c11nEnv.removeFormField) {\n this.c11nEnv.removeFormField();\n setVisibilityForList(this.c11nEnv, false);\n }\n }\n\n /*\n * processActions to see all actions in meta and adds event in props.\n * Attaches common handler (eventHandler) for all actions.\n */\n processActions() {\n if (this.c11nEnv.isEditable()) {\n this.c11nEnv.setAction('onChange', this.changeHandler);\n this.c11nEnv.setAction('onBlur', this.eventHandler);\n }\n }\n\n // Using separate handle for change as in case of dropdown, native click is mapped to react change\n changeHandler(event) {\n this.actionsAPI.changeHandler(this.c11nEnv, event);\n // getActionProcessor().changeHandler(this.c11nEnv, event);\n }\n\n eventHandler(event) {\n this.actionsAPI.eventHandler(this.c11nEnv, event);\n // getActionProcessor().eventHandler(this.c11nEnv, event);\n }\n\n createChildren() {\n const { getPConnect } = this.props;\n if (getPConnect().hasChildren() && getPConnect().getChildren()) {\n return getPConnect()\n .getChildren()\n .map(childProps => <PConnect {...childProps} />);\n }\n return null;\n }\n\n getKey() {\n const { getPConnect } = this.props;\n const viewName = getPConnect().getConfigProps().name || getPConnect().getCurrentView();\n let key = !viewName\n ? createUID()\n : `${viewName}!${getPConnect().getCurrentClassID() || createUID()}`;\n\n // In the case of pyDetails the key must be unigue for each instance\n if (viewName && viewName.toUpperCase() === 'PYDETAILS') {\n key += `!${getPConnect().getCaseInfo().getID()}`;\n }\n\n return key.toUpperCase();\n }\n\n render() {\n const { hasError } = this.state;\n const { getPConnect, additionalProps, ...otherProps } = this.props;\n\n if (hasError) {\n // You can render any custom fallback UI\n // console.log(`react_pconnect error: used to return: <ErrorBoundary getPConnect={() => this.c11nEnv} isInternalError />`);\n return <ErrorBoundary getPConnect={() => this.c11nEnv} isInternalError />;\n }\n\n const props = this.c11nEnv.getConfigProps();\n const actions = this.c11nEnv.getActions();\n const finalProps = {\n ...props,\n getPConnect,\n ...actions,\n additionalProps,\n ...otherProps\n };\n\n // If the new component is a reference node then mark with a unique key\n if (['reference', 'View'].includes(getPConnect().getComponentName()) && !finalProps.key) {\n finalProps.key = this.getKey();\n }\n\n // console.log(`react_pconnect: used to return: <this.Control {...finalProps} />`);\n\n return <this.Control {...finalProps}>{this.createChildren()}</this.Control>;\n }\n }\n\n // eslint-disable-next-line react/static-property-placement\n PConnect.propTypes = {\n // __internal: PropTypes.object.isRequired,\n // meta: PropTypes.object.isRequired,\n // configObject: PropTypes.object.isRequired,\n getPConnect: PropTypes.func.isRequired,\n additionalProps: PropTypes.shape({\n noLabel: PropTypes.bool,\n readOnly: PropTypes.bool\n }),\n validatemessage: PropTypes.string\n };\n\n // eslint-disable-next-line react/static-property-placement\n PConnect.defaultProps = {\n additionalProps: {},\n validatemessage: ''\n };\n\n return PConnect;\n};\n\n// Move these into SdkConstellationReady so PCore is available\ndocument.addEventListener('SdkConstellationReady', () => {\n // eslint-disable-next-line no-undef\n PCore.registerComponentCreator((c11nEnv, additionalProps = {}) => {\n const PConnectComp = createPConnectComponent();\n return createElement(PConnectComp, {\n ...c11nEnv,\n ...c11nEnv.getPConnect().getConfigProps(),\n ...c11nEnv.getPConnect().getActions(),\n ...{ additionalProps }\n });\n });\n\n // eslint-disable-next-line no-undef\n PCore.getAssetLoader().register('component-loader', async (componentNames = []) => {\n const promises = [];\n componentNames.forEach(comp => {\n if (/^[A-Z]/.test(comp) && !LazyComponentMap[comp]) {\n if (!ComponentMap[comp]) {\n // eslint-disable-next-line no-undef\n const srcUrl = `${PCore.getAssetLoader().getConstellationServiceUrl()}/v860/${PCore.getAssetLoader().getAppAlias()}/component/${comp}.js`;\n // eslint-disable-next-line no-undef\n promises.push(PCore.getAssetLoader().getLoader()(srcUrl, 'script'));\n } else {\n if (ComponentMap[comp].modules && ComponentMap[comp].modules.length) {\n ComponentMap[comp].modules.forEach(module => {\n LazyComponentMap[comp] = module;\n });\n }\n if (ComponentMap[comp].scripts && ComponentMap[comp].scripts.length) {\n ComponentMap[comp].scripts.forEach(script => {\n promises.push(\n // eslint-disable-next-line no-undef\n PCore.getAssetLoader().getLoader()(script, 'script')\n );\n });\n }\n }\n }\n });\n /* Promise.all rejects or accepts all or none. This causes entire component loader to fail\n in case there is a single failure.\n Using allSettled to allow Promise to be resolved even if there are failed components\n Note : This is a liberty taken at component loader and unwise to be used at\n asset loader which will still use Promise.all\n */\n await Promise.allSettled(promises);\n });\n});\n\nexport default createPConnectComponent;\n\n/* These APIs need to be exposed for authoring bridge\nWill be removed when pxbootstrap and constellation_bridge is cleaned up\nto use single bootstrap file from constellation */\n// window.authoringUtils = {\n// createElement,\n// render,\n// unmountComponentAtNode,\n// LazyComponentMap\n// };\n"]}
|
|
@@ -1 +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,
|
|
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,eA+BnC"}
|
|
@@ -2,17 +2,21 @@ import React from 'react';
|
|
|
2
2
|
import Grid from '@material-ui/core/Grid';
|
|
3
3
|
import './Banner.css';
|
|
4
4
|
export default function Banner(props) {
|
|
5
|
-
const { a, b, banner } = props;
|
|
5
|
+
const { a, b, banner, variant } = props;
|
|
6
6
|
const { title, message, backgroundImage } = banner;
|
|
7
|
+
const variantMap = {
|
|
8
|
+
'two-column': [6, 6],
|
|
9
|
+
'narrow-wide': [4, 8],
|
|
10
|
+
'wide-narrow': [8, 4]
|
|
11
|
+
};
|
|
7
12
|
return (React.createElement("div", { style: { marginBottom: '2rem' } },
|
|
8
13
|
React.createElement("div", { className: 'background-image-style', style: { backgroundImage: `url(${backgroundImage})` } },
|
|
9
14
|
React.createElement("div", { className: 'background-style content' },
|
|
10
15
|
React.createElement("div", null,
|
|
11
16
|
React.createElement("h1", { className: 'title' }, title),
|
|
12
17
|
React.createElement("p", { className: 'message' }, message)))),
|
|
13
|
-
React.createElement(
|
|
14
|
-
React.createElement(Grid, {
|
|
15
|
-
|
|
16
|
-
React.createElement(Grid, { item: true, xs: 4, style: { padding: '1em' } }, b)))));
|
|
18
|
+
React.createElement(Grid, { container: true, item: true, xs: 12, className: 'banner-layout', spacing: 1 },
|
|
19
|
+
React.createElement(Grid, { item: true, xs: variantMap[variant][0], style: { padding: '1em' } }, a),
|
|
20
|
+
React.createElement(Grid, { item: true, xs: variantMap[variant][1], style: { padding: '1em' } }, b))));
|
|
17
21
|
}
|
|
18
22
|
//# sourceMappingURL=Banner.js.map
|
|
@@ -1 +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;
|
|
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,OAAO,EAAC,GAAG,KAAK,CAAC;IACvC,MAAM,EAAE,KAAK,EAAE,OAAO,EAAE,eAAe,EAAE,GAAG,MAAM,CAAC;IACnD,MAAM,UAAU,GAAG;QACjB,YAAY,EAAE,CAAC,CAAC,EAAE,CAAC,CAAC;QACpB,aAAa,EAAE,CAAC,CAAC,EAAE,CAAC,CAAC;QACrB,aAAa,EAAE,CAAC,CAAC,EAAE,CAAC,CAAC;KACtB,CAAC;IACF,OAAO,CACL,6BAAK,KAAK,EAAE,EAAE,YAAY,EAAE,MAAM,EAAE;QAClC,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,oBAAC,IAAI,IAAC,SAAS,QAAC,IAAI,QAAC,EAAE,EAAE,EAAE,EAAE,SAAS,EAAC,eAAe,EAAC,OAAO,EAAE,CAAC;YAC/D,oBAAC,IAAI,IAAC,IAAI,QAAC,EAAE,EAAE,UAAU,CAAC,OAAO,CAAC,CAAC,CAAC,CAAC,EAAE,KAAK,EAAE,EAAE,OAAO,EAAE,KAAK,EAAE,IAC7D,CAAC,CACG;YACP,oBAAC,IAAI,IAAC,IAAI,QAAC,EAAE,EAAE,UAAU,CAAC,OAAO,CAAC,CAAC,CAAC,CAAC,EAAE,KAAK,EAAE,EAAE,OAAO,EAAE,KAAK,EAAE,IAC7D,CAAC,CACG,CACF,CACH,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, variant} = props;\n const { title, message, backgroundImage } = banner;\n const variantMap = {\n 'two-column': [6, 6],\n 'narrow-wide': [4, 8],\n 'wide-narrow': [8, 4]\n };\n return (\n <div style={{ marginBottom: '2rem' }}>\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 <Grid container item xs={12} className='banner-layout' spacing={1}>\n <Grid item xs={variantMap[variant][0]} style={{ padding: '1em' }}>\n {a}\n </Grid>\n <Grid item xs={variantMap[variant][1]} style={{ padding: '1em' }}>\n {b}\n </Grid>\n </Grid>\n </div>\n );\n}\n"]}
|
|
@@ -1,7 +1,7 @@
|
|
|
1
1
|
.quick-link-ul-list {
|
|
2
2
|
list-style: none;
|
|
3
3
|
padding: 0;
|
|
4
|
-
grid-template-columns: repeat(
|
|
4
|
+
grid-template-columns: repeat(auto-fill, minmax(min(40ch, 100%), 1fr));
|
|
5
5
|
display: grid;
|
|
6
6
|
gap: calc(1rem);
|
|
7
7
|
}
|
|
@@ -33,4 +33,8 @@
|
|
|
33
33
|
display: flex;
|
|
34
34
|
align-items: center;
|
|
35
35
|
gap: 0.5rem;
|
|
36
|
-
|
|
36
|
+
}
|
|
37
|
+
|
|
38
|
+
.quick-link-heading {
|
|
39
|
+
margin-top: 8px;
|
|
40
|
+
}
|
|
@@ -4,7 +4,7 @@ import './WssQuickCreate.css';
|
|
|
4
4
|
export default function WssQuickCreate(props) {
|
|
5
5
|
const { heading, actions } = props;
|
|
6
6
|
return (React.createElement("div", null,
|
|
7
|
-
React.createElement("h1",
|
|
7
|
+
React.createElement("h1", { className: 'quick-link-heading' }, heading),
|
|
8
8
|
React.createElement("ul", { className: 'quick-link-ul-list' }, actions &&
|
|
9
9
|
actions.map(element => {
|
|
10
10
|
return (React.createElement("li", { className: 'quick-link-list', key: element.label },
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"WssQuickCreate.js","sourceRoot":"","sources":["../../../../src/components/designSystemExtension/WssQuickCreate/WssQuickCreate.tsx"],"names":[],"mappings":"AAAA,OAAO,KAAK,MAAM,OAAO,CAAC;AAC1B,OAAO,EAAE,MAAM,EAAE,MAAM,mBAAmB,CAAC;AAC3C,OAAO,sBAAsB,CAAC;AAE9B,MAAM,CAAC,OAAO,UAAU,cAAc,CAAC,KAAK;IAC1C,MAAM,EAAE,OAAO,EAAE,OAAO,EAAE,GAAG,KAAK,CAAC;IAEnC,OAAO,CACL;QACE,
|
|
1
|
+
{"version":3,"file":"WssQuickCreate.js","sourceRoot":"","sources":["../../../../src/components/designSystemExtension/WssQuickCreate/WssQuickCreate.tsx"],"names":[],"mappings":"AAAA,OAAO,KAAK,MAAM,OAAO,CAAC;AAC1B,OAAO,EAAE,MAAM,EAAE,MAAM,mBAAmB,CAAC;AAC3C,OAAO,sBAAsB,CAAC;AAE9B,MAAM,CAAC,OAAO,UAAU,cAAc,CAAC,KAAK;IAC1C,MAAM,EAAE,OAAO,EAAE,OAAO,EAAE,GAAG,KAAK,CAAC;IAEnC,OAAO,CACL;QACE,4BAAI,SAAS,EAAC,oBAAoB,IAAE,OAAO,CAAM;QACjD,4BAAI,SAAS,EAAC,oBAAoB,IAC/B,OAAO;YACN,OAAO,CAAC,GAAG,CAAC,OAAO,CAAC,EAAE;gBACpB,OAAO,CACP,4BAAI,SAAS,EAAC,iBAAiB,EAAC,GAAG,EAAE,OAAO,CAAC,KAAK;oBAChD,oBAAC,MAAM,IAAC,SAAS,EAAC,mBAAmB,EAAC,OAAO,EAAE,OAAO,CAAC,OAAO;wBAC5D,8BAAM,SAAS,EAAC,wBAAwB;4BACrC,OAAO,CAAC,IAAI,IAAI,6BAAK,SAAS,EAAC,iBAAiB,EAAC,GAAG,EAAE,OAAO,CAAC,IAAI,GAAG;4BACtE,kCAAO,OAAO,CAAC,KAAK,CAAQ,CACvB,CACA,CACN,CACJ,CAAC;YACJ,CAAC,CAAC,CACD,CACD,CACP,CAAC;AACJ,CAAC","sourcesContent":["import React from 'react';\nimport { Button } from '@material-ui/core';\nimport './WssQuickCreate.css';\n\nexport default function WssQuickCreate(props) {\n const { heading, actions } = props;\n\n return (\n <div>\n <h1 className='quick-link-heading'>{heading}</h1>\n <ul className='quick-link-ul-list'>\n {actions &&\n actions.map(element => {\n return (\n <li className='quick-link-list' key={element.label}>\n <Button className='quick-link-button' onClick={element.onClick}>\n <span className='quick-link-button-span'>\n {element.icon && <img className='quick-link-icon' src={element.icon}/>}\n <span>{element.label}</span>\n </span>\n </Button>\n </li>\n );\n })}\n </ul>\n </div>\n );\n}\n"]}
|
|
@@ -1,7 +1,7 @@
|
|
|
1
1
|
/// <reference types="react" />
|
|
2
2
|
import PropTypes from 'prop-types';
|
|
3
3
|
import './View.css';
|
|
4
|
-
declare function View(props: any): JSX.Element;
|
|
4
|
+
declare function View(props: any): "" | JSX.Element | null;
|
|
5
5
|
declare namespace View {
|
|
6
6
|
var defaultProps: {
|
|
7
7
|
label: undefined;
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"View.d.ts","sourceRoot":"","sources":["../../../../src/components/infra/View/View.tsx"],"names":[],"mappings":";AACA,OAAO,SAAS,MAAM,YAAY,CAAC;AAWnC,OAAO,YAAY,CAAC;AAmBpB,iBAAwB,IAAI,CAAC,KAAK,KAAA,
|
|
1
|
+
{"version":3,"file":"View.d.ts","sourceRoot":"","sources":["../../../../src/components/infra/View/View.tsx"],"names":[],"mappings":";AACA,OAAO,SAAS,MAAM,YAAY,CAAC;AAWnC,OAAO,YAAY,CAAC;AAmBpB,iBAAwB,IAAI,CAAC,KAAK,KAAA,2BA4GjC;kBA5GuB,IAAI;;;;;;;;;;;;;;;;;eAAJ,IAAI"}
|
|
@@ -24,7 +24,7 @@ const NO_HEADER_TEMPLATES = [
|
|
|
24
24
|
'Confirmation'
|
|
25
25
|
];
|
|
26
26
|
export default function View(props) {
|
|
27
|
-
const { children, template, getPConnect, mode } = props;
|
|
27
|
+
const { children, template, getPConnect, mode, visibility, name: pageName } = props;
|
|
28
28
|
let { label, showLabel = false } = props;
|
|
29
29
|
// Get the inherited props from the parent to determine label settings. For 8.6, this is only for embedded data form views
|
|
30
30
|
// Putting this logic here instead of copy/paste in every Form template index.js
|
|
@@ -35,6 +35,12 @@ export default function View(props) {
|
|
|
35
35
|
if (isEmbeddedDataView && showLabel === undefined) {
|
|
36
36
|
showLabel = true;
|
|
37
37
|
}
|
|
38
|
+
const key = `${getPConnect().getContextName()}_${getPConnect().getPageReference()}_${pageName}`;
|
|
39
|
+
// As long as the template is defined in the dependencies of the view
|
|
40
|
+
// it will be loaded, otherwise fall back to single column
|
|
41
|
+
if (visibility === false) {
|
|
42
|
+
return '';
|
|
43
|
+
}
|
|
38
44
|
// As long as the template is defined in the dependencies of the view
|
|
39
45
|
// it will be loaded, otherwise fall back to single column
|
|
40
46
|
// JA - React SDK not using LazyComponentMap yet
|
|
@@ -76,7 +82,7 @@ export default function View(props) {
|
|
|
76
82
|
// for debugging/investigation
|
|
77
83
|
// console.log(`View rendering template: ${template}`);
|
|
78
84
|
// spreading because all props should go to the template
|
|
79
|
-
let RenderedTemplate = React.createElement(ViewTemplate, { ...props }, children);
|
|
85
|
+
let RenderedTemplate = React.createElement(ViewTemplate, { key: key, ...props }, children);
|
|
80
86
|
if (FORMTEMPLATES.includes(template) && showLabel) {
|
|
81
87
|
// Original:
|
|
82
88
|
// RenderedTemplate = (
|
|
@@ -97,9 +103,7 @@ export default function View(props) {
|
|
|
97
103
|
if (children) {
|
|
98
104
|
return React.createElement(React.Fragment, null, children);
|
|
99
105
|
}
|
|
100
|
-
|
|
101
|
-
return React.createElement("div", { id: 'View' }, "View has no children.");
|
|
102
|
-
}
|
|
106
|
+
return null;
|
|
103
107
|
}
|
|
104
108
|
View.defaultProps = {
|
|
105
109
|
label: undefined,
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"View.js","sourceRoot":"","sources":["../../../../src/components/infra/View/View.tsx"],"names":[],"mappings":"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","sourcesContent":["import React from 'react';\nimport PropTypes from 'prop-types';\n// import { FieldGroup } from \"@pega/cosmos-react-core\";\n// import { LazyMap as LazyComponentMap } from \"../../components_map\";\n\nimport { SdkComponentMap } from '../../../bridge/helpers/sdk_component_map';\nimport ErrorBoundary from '../ErrorBoundary';\n\nimport { getAllFields } from '../../helpers/template-utils';\n\n// Need to import any templates that we might render\n\nimport './View.css';\n//\n// WARNING: It is not expected that this file should be modified. It is part of infrastructure code that works with\n// Redux and creation/update of Redux containers and PConnect. Modifying this code could have undesireable results and\n// is totally at your own risk.\n//\n\nconst FORMTEMPLATES = ['OneColumn', 'TwoColumn', 'DefaultForm', 'WideNarrow', 'NarrowWide'];\nconst NO_HEADER_TEMPLATES = [\n 'SubTabs',\n 'SimpleTable',\n 'Details',\n 'DetailsTwoColumn',\n 'DetailsThreeColumn',\n 'NarrowWideDetails',\n 'WideNarrowDetails',\n 'Confirmation'\n];\n\nexport default function View(props) {\n const { children, template, getPConnect, mode } = props;\n let { label, showLabel = false } = props;\n\n // Get the inherited props from the parent to determine label settings. For 8.6, this is only for embedded data form views\n // Putting this logic here instead of copy/paste in every Form template index.js\n\n const inheritedProps = getPConnect().getInheritedProps();\n label = inheritedProps.label || label;\n showLabel = inheritedProps.showLabel || showLabel;\n\n const isEmbeddedDataView = mode === 'editable'; // would be better to check the reference child for `context` attribute if possible\n if (isEmbeddedDataView && showLabel === undefined) {\n showLabel = true;\n }\n\n // As long as the template is defined in the dependencies of the view\n // it will be loaded, otherwise fall back to single column\n // JA - React SDK not using LazyComponentMap yet\n if (template /* && LazyComponentMap[template] */) {\n // const ViewTemplate = LazyComponentMap[template];\n let ViewTemplate: any;\n\n if (SdkComponentMap) {\n // This is the node_modules version of react_pconnect!\n const theLocalComponent = SdkComponentMap.getLocalComponentMap()[template];\n if (theLocalComponent !== undefined) {\n // eslint-disable-next-line no-console\n console.log(`View component found ${template}: Local`);\n ViewTemplate = theLocalComponent;\n } else {\n const thePegaProvidedComponent = SdkComponentMap.getPegaProvidedComponentMap()[template];\n if (thePegaProvidedComponent !== undefined) {\n // console.log(`View component found ${template}: Pega-provided`);\n ViewTemplate = thePegaProvidedComponent;\n } else {\n // eslint-disable-next-line no-console\n console.error(`View component can't find template type ${template}`);\n ViewTemplate = ErrorBoundary;\n }\n }\n\n if (template === 'ListView') {\n // special case for ListView - add in a prop\n const bInForm = true;\n props = { ...props, bInForm };\n }\n } else {\n // eslint-disable-next-line no-console\n console.warn(`View: SdkComponentMap expected but not found.`);\n\n // eslint-disable-next-line no-console\n console.error(`View: Trying to render an unknown template: ${template}`);\n }\n\n // for debugging/investigation\n // console.log(`View rendering template: ${template}`);\n\n // spreading because all props should go to the template\n let RenderedTemplate = <ViewTemplate {...props}>{children}</ViewTemplate>;\n\n if (FORMTEMPLATES.includes(template) && showLabel) {\n // Original:\n // RenderedTemplate = (\n // <FieldGroup name={label} style={{ marginBlockStart: \"1rem\" }}>\n // {RenderedTemplate}\n // </FieldGroup>\n // );\n RenderedTemplate = (\n <div\n data-name='RenderedTemplate'\n data-template-type={template}\n /* name */ id='label'\n style={{ marginBlockStart: '1rem' }}\n className='grid-column'\n >\n {RenderedTemplate}\n </div>\n );\n }\n\n return (\n <div className='grid-column'>\n {showLabel && !NO_HEADER_TEMPLATES.includes(template) && (\n <div className='template-title-container'>\n <span>{label}</span>\n </div>\n )}\n {RenderedTemplate}\n </div>\n );\n }\n\n // debugging/investigation help\n // console.log(`View about to render React.Fragment for children: ${children}`);\n\n if (children) {\n return <>{children}</>;\n } else {\n return <div id='View'>View has no children.</div>;\n }\n}\n\nView.defaultProps = {\n label: undefined,\n showLabel: undefined,\n mode: undefined\n};\n\nView.propTypes = {\n children: PropTypes.oneOfType([\n PropTypes.arrayOf(PropTypes.node),\n PropTypes.array\n ]) /* array might be empty */,\n template: PropTypes.string /* .isRequired */,\n getPConnect: PropTypes.func.isRequired,\n label: PropTypes.string,\n showLabel: PropTypes.bool,\n mode: PropTypes.string,\n title: PropTypes.string\n};\n\n// Adapted from Constellation DX Component to add in additional props for some templates\nView.additionalProps = (state, getPConnect) => {\n const thePConn = getPConnect();\n const { template } = thePConn.getConfigProps();\n\n let propObj = {};\n let allFields = {};\n\n switch (template) {\n case 'CaseSummary':\n allFields = getAllFields(thePConn);\n // eslint-disable-next-line no-case-declarations\n const unresFields = {\n primaryFields: allFields[0],\n secondaryFields: allFields[1]\n };\n propObj = thePConn.resolveConfigProps(unresFields);\n break;\n\n case 'Details':\n allFields = getAllFields(thePConn);\n propObj = { fields: allFields[0] };\n break;\n\n default:\n break;\n }\n\n return propObj;\n};\n"]}
|
|
1
|
+
{"version":3,"file":"View.js","sourceRoot":"","sources":["../../../../src/components/infra/View/View.tsx"],"names":[],"mappings":"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","sourcesContent":["import React from 'react';\nimport PropTypes from 'prop-types';\n// import { FieldGroup } from \"@pega/cosmos-react-core\";\n// import { LazyMap as LazyComponentMap } from \"../../components_map\";\n\nimport { SdkComponentMap } from '../../../bridge/helpers/sdk_component_map';\nimport ErrorBoundary from '../ErrorBoundary';\n\nimport { getAllFields } from '../../helpers/template-utils';\n\n// Need to import any templates that we might render\n\nimport './View.css';\n//\n// WARNING: It is not expected that this file should be modified. It is part of infrastructure code that works with\n// Redux and creation/update of Redux containers and PConnect. Modifying this code could have undesireable results and\n// is totally at your own risk.\n//\n\nconst FORMTEMPLATES = ['OneColumn', 'TwoColumn', 'DefaultForm', 'WideNarrow', 'NarrowWide'];\nconst NO_HEADER_TEMPLATES = [\n 'SubTabs',\n 'SimpleTable',\n 'Details',\n 'DetailsTwoColumn',\n 'DetailsThreeColumn',\n 'NarrowWideDetails',\n 'WideNarrowDetails',\n 'Confirmation'\n];\n\nexport default function View(props) {\n const { children, template, getPConnect, mode, visibility, name: pageName } = props;\n let { label, showLabel = false } = props;\n\n // Get the inherited props from the parent to determine label settings. For 8.6, this is only for embedded data form views\n // Putting this logic here instead of copy/paste in every Form template index.js\n\n const inheritedProps = getPConnect().getInheritedProps();\n label = inheritedProps.label || label;\n showLabel = inheritedProps.showLabel || showLabel;\n\n const isEmbeddedDataView = mode === 'editable'; // would be better to check the reference child for `context` attribute if possible\n if (isEmbeddedDataView && showLabel === undefined) {\n showLabel = true;\n }\n\n const key = `${getPConnect().getContextName()}_${getPConnect().getPageReference()}_${pageName}`;\n // As long as the template is defined in the dependencies of the view\n // it will be loaded, otherwise fall back to single column\n if (visibility === false) {\n return '';\n }\n\n // As long as the template is defined in the dependencies of the view\n // it will be loaded, otherwise fall back to single column\n // JA - React SDK not using LazyComponentMap yet\n if (template /* && LazyComponentMap[template] */) {\n // const ViewTemplate = LazyComponentMap[template];\n let ViewTemplate: any;\n\n if (SdkComponentMap) {\n // This is the node_modules version of react_pconnect!\n const theLocalComponent = SdkComponentMap.getLocalComponentMap()[template];\n if (theLocalComponent !== undefined) {\n // eslint-disable-next-line no-console\n console.log(`View component found ${template}: Local`);\n ViewTemplate = theLocalComponent;\n } else {\n const thePegaProvidedComponent = SdkComponentMap.getPegaProvidedComponentMap()[template];\n if (thePegaProvidedComponent !== undefined) {\n // console.log(`View component found ${template}: Pega-provided`);\n ViewTemplate = thePegaProvidedComponent;\n } else {\n // eslint-disable-next-line no-console\n console.error(`View component can't find template type ${template}`);\n ViewTemplate = ErrorBoundary;\n }\n }\n\n if (template === 'ListView') {\n // special case for ListView - add in a prop\n const bInForm = true;\n props = { ...props, bInForm };\n }\n } else {\n // eslint-disable-next-line no-console\n console.warn(`View: SdkComponentMap expected but not found.`);\n\n // eslint-disable-next-line no-console\n console.error(`View: Trying to render an unknown template: ${template}`);\n }\n\n // for debugging/investigation\n // console.log(`View rendering template: ${template}`);\n\n // spreading because all props should go to the template\n let RenderedTemplate = <ViewTemplate key={key} {...props}>{children}</ViewTemplate>;\n\n if (FORMTEMPLATES.includes(template) && showLabel) {\n // Original:\n // RenderedTemplate = (\n // <FieldGroup name={label} style={{ marginBlockStart: \"1rem\" }}>\n // {RenderedTemplate}\n // </FieldGroup>\n // );\n RenderedTemplate = (\n <div\n data-name='RenderedTemplate'\n data-template-type={template}\n /* name */ id='label'\n style={{ marginBlockStart: '1rem' }}\n className='grid-column'\n >\n {RenderedTemplate}\n </div>\n );\n }\n\n return (\n <div className='grid-column'>\n {showLabel && !NO_HEADER_TEMPLATES.includes(template) && (\n <div className='template-title-container'>\n <span>{label}</span>\n </div>\n )}\n {RenderedTemplate}\n </div>\n );\n }\n\n // debugging/investigation help\n // console.log(`View about to render React.Fragment for children: ${children}`);\n\n if (children) {\n return <>{children}</>;\n }\n\n return null;\n}\n\nView.defaultProps = {\n label: undefined,\n showLabel: undefined,\n mode: undefined\n};\n\nView.propTypes = {\n children: PropTypes.oneOfType([\n PropTypes.arrayOf(PropTypes.node),\n PropTypes.array\n ]) /* array might be empty */,\n template: PropTypes.string /* .isRequired */,\n getPConnect: PropTypes.func.isRequired,\n label: PropTypes.string,\n showLabel: PropTypes.bool,\n mode: PropTypes.string,\n title: PropTypes.string\n};\n\n// Adapted from Constellation DX Component to add in additional props for some templates\nView.additionalProps = (state, getPConnect) => {\n const thePConn = getPConnect();\n const { template } = thePConn.getConfigProps();\n\n let propObj = {};\n let allFields = {};\n\n switch (template) {\n case 'CaseSummary':\n allFields = getAllFields(thePConn);\n // eslint-disable-next-line no-case-declarations\n const unresFields = {\n primaryFields: allFields[0],\n secondaryFields: allFields[1]\n };\n propObj = thePConn.resolveConfigProps(unresFields);\n break;\n\n case 'Details':\n allFields = getAllFields(thePConn);\n propObj = { fields: allFields[0] };\n break;\n\n default:\n break;\n }\n\n return propObj;\n};\n"]}
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"FieldGroupTemplate.d.ts","sourceRoot":"","sources":["../../../../src/components/template/FieldGroupTemplate/FieldGroupTemplate.tsx"],"names":[],"mappings":";AAEA,OAAO,SAAS,MAAM,YAAY,CAAC;AAQnC,iBAAwB,kBAAkB,CAAC,KAAK,KAAA,
|
|
1
|
+
{"version":3,"file":"FieldGroupTemplate.d.ts","sourceRoot":"","sources":["../../../../src/components/template/FieldGroupTemplate/FieldGroupTemplate.tsx"],"names":[],"mappings":";AAEA,OAAO,SAAS,MAAM,YAAY,CAAC;AAQnC,iBAAwB,kBAAkB,CAAC,KAAK,KAAA,eAqF/C;kBArFuB,kBAAkB;;;;;;;;;;;;;;;;;eAAlB,kBAAkB"}
|
|
@@ -54,7 +54,10 @@ export default function FieldGroupTemplate(props) {
|
|
|
54
54
|
}
|
|
55
55
|
pConn.setInheritedProp('displayMode', 'LABELS_LEFT');
|
|
56
56
|
const memoisedReadOnlyList = useMemo(() => {
|
|
57
|
-
return referenceList.map((item, index) =>
|
|
57
|
+
return referenceList.map((item, index) => {
|
|
58
|
+
const key = item[heading] || `field-group-row-${index}`;
|
|
59
|
+
return (React.createElement(FieldGroup, { key: key, name: fieldHeader === 'propertyRef' ? getDynamicHeaderProp(item, index) : `${HEADING} ${index + 1}` }, buildView(pConn, index, lookForChildInConfig)));
|
|
60
|
+
});
|
|
58
61
|
}, []);
|
|
59
62
|
return React.createElement("div", null, memoisedReadOnlyList);
|
|
60
63
|
}
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"FieldGroupTemplate.js","sourceRoot":"","sources":["../../../../src/components/template/FieldGroupTemplate/FieldGroupTemplate.tsx"],"names":[],"mappings":"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
|
|
1
|
+
{"version":3,"file":"FieldGroupTemplate.js","sourceRoot":"","sources":["../../../../src/components/template/FieldGroupTemplate/FieldGroupTemplate.tsx"],"names":[],"mappings":"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","sourcesContent":["/* eslint-disable react-hooks/rules-of-hooks */\nimport React, { useMemo } from 'react';\nimport PropTypes from 'prop-types';\n\nimport FieldGroup from '../../designSystemExtension/FieldGroup';\nimport FieldGroupList from '../../designSystemExtension/FieldGroupList';\nimport { getReferenceList, buildView } from '../../helpers/field-group-utils';\n\ndeclare const PCore: any;\n\nexport default function FieldGroupTemplate(props) {\n const {\n referenceList,\n renderMode,\n contextClass,\n getPConnect,\n lookForChildInConfig,\n heading,\n displayMode,\n fieldHeader,\n allowTableEdit: allowAddEdit\n } = props;\n const pConn = getPConnect();\n const resolvedList = getReferenceList(pConn);\n pConn.setReferenceList(resolvedList);\n const pageReference = `${pConn.getPageReference()}${resolvedList}`;\n const isReadonlyMode = renderMode === 'ReadOnly' || displayMode === 'LABELS_LEFT';\n const HEADING = heading ?? 'Row';\n\n const getDynamicHeaderProp = (item, index) => {\n if (fieldHeader === 'propertyRef' && heading && item[heading.substring(1)]) {\n return item[heading.substring(1)];\n }\n return `Row ${index + 1}`;\n };\n\n const addRecord = () => {\n if (PCore.getPCoreVersion()?.includes('8.7')) {\n pConn.getListActions().insert({ classID: contextClass }, referenceList.length, pageReference);\n } else {\n pConn.getListActions().insert({ classID: contextClass }, referenceList.length);\n }\n };\n\n if (!isReadonlyMode) {\n const addFieldGroupItem = () => {\n addRecord();\n };\n const deleteFieldGroupItem = index => {\n if (PCore.getPCoreVersion()?.includes('8.7')) {\n pConn.getListActions().deleteEntry(index, pageReference);\n } else {\n pConn.getListActions().deleteEntry(index);\n }\n };\n if (referenceList.length === 0 && allowAddEdit !== false) {\n addFieldGroupItem();\n }\n\n const MemoisedChildren = useMemo(() => {\n return referenceList.map((item, index) => ({\n id: index,\n name:\n fieldHeader === 'propertyRef'\n ? getDynamicHeaderProp(item, index)\n : `${HEADING} ${index + 1}`,\n children: buildView(pConn, index, lookForChildInConfig)\n }));\n }, [referenceList?.length]);\n\n return (\n <FieldGroupList\n items={MemoisedChildren}\n onAdd={allowAddEdit !== false ? addFieldGroupItem : undefined}\n onDelete={allowAddEdit !== false ? deleteFieldGroupItem : undefined}\n />\n );\n }\n\n pConn.setInheritedProp('displayMode', 'LABELS_LEFT');\n const memoisedReadOnlyList = useMemo(() => {\n return referenceList.map((item, index) => {\n const key = item[heading] || `field-group-row-${index}`;\n return (\n <FieldGroup\n key={key}\n name={fieldHeader === 'propertyRef' ? getDynamicHeaderProp(item, index) : `${HEADING} ${index + 1}`}\n >\n {buildView(pConn, index, lookForChildInConfig)}\n </FieldGroup>\n );\n });\n }, []);\n\n return <div>{memoisedReadOnlyList}</div>;\n}\n\nFieldGroupTemplate.defaultProps = {\n referenceList: [],\n heading: undefined,\n contextClass: null,\n displayMode: undefined\n};\n\nFieldGroupTemplate.propTypes = {\n referenceList: PropTypes.arrayOf(Object),\n contextClass: PropTypes.string,\n getPConnect: PropTypes.func.isRequired,\n renderMode: PropTypes.string.isRequired,\n heading: PropTypes.string,\n lookForChildInConfig: PropTypes.bool,\n displayMode: PropTypes.string\n};\n"]}
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"WssNavBar.d.ts","sourceRoot":"","sources":["../../../../src/components/template/WssNavBar/WssNavBar.tsx"],"names":[],"mappings":";AAWA,OAAO,iBAAiB,CAAC;AAuBzB,MAAM,CAAC,OAAO,UAAU,SAAS,CAAC,KAAK,KAAA,
|
|
1
|
+
{"version":3,"file":"WssNavBar.d.ts","sourceRoot":"","sources":["../../../../src/components/template/WssNavBar/WssNavBar.tsx"],"names":[],"mappings":";AAWA,OAAO,iBAAiB,CAAC;AAuBzB,MAAM,CAAC,OAAO,UAAU,SAAS,CAAC,KAAK,KAAA,eA+GtC"}
|
|
@@ -32,7 +32,7 @@ const useStyles = makeStyles(theme => ({
|
|
|
32
32
|
}));
|
|
33
33
|
export default function WssNavBar(props) {
|
|
34
34
|
const { appInfo, navLinks, operator, navDisplayOptions } = props;
|
|
35
|
-
const { alignment } = navDisplayOptions;
|
|
35
|
+
const { alignment, position } = navDisplayOptions;
|
|
36
36
|
const classes = useStyles();
|
|
37
37
|
const [anchorElNav, setAnchorElNav] = useState(null);
|
|
38
38
|
const [anchorElUser, setAnchorElUser] = useState(null);
|
|
@@ -48,10 +48,11 @@ export default function WssNavBar(props) {
|
|
|
48
48
|
const handleCloseUserMenu = () => {
|
|
49
49
|
setAnchorElUser(null);
|
|
50
50
|
};
|
|
51
|
+
const navLinksContent = (React.createElement(Box, { sx: { flexGrow: 1, display: { xs: 'none', md: 'flex' } }, style: { justifyContent: alignment } }, navLinks.map(link => (React.createElement(Button, { className: 'link-style', key: link.text, onClick: link.onClick }, link.text)))));
|
|
51
52
|
return (React.createElement("div", { id: 'NavBar', className: 'nav-bar' },
|
|
52
53
|
React.createElement(AppBar, { position: 'static', color: 'primary' },
|
|
53
54
|
React.createElement(Container, { maxWidth: 'xl' },
|
|
54
|
-
React.createElement(Toolbar, { disableGutters: true },
|
|
55
|
+
React.createElement(Toolbar, { disableGutters: true, style: { justifyContent: 'space-between' } },
|
|
55
56
|
React.createElement(Button, { style: { textTransform: 'capitalize' }, onClick: appInfo.onClick },
|
|
56
57
|
React.createElement("img", { src: appInfo.imageSrc, className: classes.appListLogo }),
|
|
57
58
|
React.createElement("span", { className: classes.appName }, appInfo.appName)),
|
|
@@ -66,7 +67,7 @@ export default function WssNavBar(props) {
|
|
|
66
67
|
horizontal: 'left'
|
|
67
68
|
}, open: Boolean(anchorElNav), onClose: handleCloseNavMenu }, navLinks.map(link => (React.createElement(MenuItem, { key: link.text, onClick: link.onClick },
|
|
68
69
|
React.createElement(Typography, null, link.text)))))),
|
|
69
|
-
|
|
70
|
+
position === 'inline' && React.createElement(React.Fragment, null, navLinksContent),
|
|
70
71
|
React.createElement(Box, { sx: { flexGrow: 0 } },
|
|
71
72
|
React.createElement(IconButton, { onClick: handleOpenUserMenu },
|
|
72
73
|
React.createElement(Avatar, null, operator.currentUserInitials)),
|
|
@@ -78,6 +79,7 @@ export default function WssNavBar(props) {
|
|
|
78
79
|
horizontal: 'right'
|
|
79
80
|
}, open: Boolean(anchorElUser), onClose: handleCloseUserMenu },
|
|
80
81
|
React.createElement(MenuItem, { onClick: logout },
|
|
81
|
-
React.createElement(Typography, null, "Logout")))))
|
|
82
|
+
React.createElement(Typography, null, "Logout"))))),
|
|
83
|
+
position === 'below' && React.createElement(React.Fragment, null, navLinksContent)))));
|
|
82
84
|
}
|
|
83
85
|
//# sourceMappingURL=WssNavBar.js.map
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"WssNavBar.js","sourceRoot":"","sources":["../../../../src/components/template/WssNavBar/WssNavBar.tsx"],"names":[],"mappings":"AAAA,OAAO,KAAK,EAAE,EAAE,QAAQ,EAAE,MAAM,OAAO,CAAC;AACxC,OAAO,EAAE,UAAU,EAAE,MAAM,0BAA0B,CAAC;AACtD,OAAO,MAAM,MAAM,0BAA0B,CAAC;AAC9C,OAAO,GAAG,MAAM,uBAAuB,CAAC;AACxC,OAAO,OAAO,MAAM,2BAA2B,CAAC;AAChD,OAAO,SAAS,MAAM,6BAA6B,CAAC;AACpD,OAAO,EAAE,UAAU,EAAE,IAAI,EAAE,QAAQ,EAAE,UAAU,EAAE,MAAM,mBAAmB,CAAC;AAC3E,OAAO,EAAE,MAAM,EAAE,MAAM,mBAAmB,CAAC;AAC3C,OAAO,MAAM,MAAM,0BAA0B,CAAC;AAC9C,OAAO,QAAQ,MAAM,yBAAyB,CAAC;AAC/C,OAAO,EAAE,MAAM,EAAE,MAAM,2BAA2B,CAAC;AACnD,OAAO,iBAAiB,CAAC;AAEzB,MAAM,SAAS,GAAG,UAAU,CAAC,KAAK,CAAC,EAAE,CAAC,CAAC;IACrC,IAAI,EAAE;QACJ,OAAO,EAAE,MAAM;KAChB;IACD,OAAO,EAAE;QACP,QAAQ,EAAE,CAAC;QACX,MAAM,EAAE,OAAO;QACf,UAAU,EAAE,KAAK,CAAC,OAAO,CAAC,CAAC,CAAC;QAC5B,WAAW,EAAE,KAAK,CAAC,OAAO,CAAC,CAAC,CAAC;KAC9B;IACD,WAAW,EAAE;QACX,KAAK,EAAE,QAAQ;KAChB;IACD,OAAO,EAAE;QACP,KAAK,EAAE,OAAO;QACd,UAAU,EAAE,KAAK,CAAC,OAAO,CAAC,CAAC,CAAC;QAC5B,WAAW,EAAE,KAAK,CAAC,OAAO,CAAC,CAAC,CAAC;QAC7B,QAAQ,EAAE,QAAQ;KACnB;CACF,CAAC,CAAC,CAAC;AAEJ,MAAM,CAAC,OAAO,UAAU,SAAS,CAAC,KAAK;IACrC,MAAM,EAAE,OAAO,EAAE,QAAQ,EAAE,QAAQ,EAAE,iBAAiB,EAAE,GAAG,KAAK,CAAC;IACjE,MAAM,EAAE,SAAS,EAAE,GAAG,iBAAiB,CAAC;
|
|
1
|
+
{"version":3,"file":"WssNavBar.js","sourceRoot":"","sources":["../../../../src/components/template/WssNavBar/WssNavBar.tsx"],"names":[],"mappings":"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","sourcesContent":["import React, { useState } from 'react';\nimport { makeStyles } from '@material-ui/core/styles';\nimport AppBar from '@material-ui/core/AppBar';\nimport Box from '@material-ui/core/Box';\nimport Toolbar from '@material-ui/core/Toolbar';\nimport Container from '@material-ui/core/Container';\nimport { IconButton, Menu, MenuItem, Typography } from '@material-ui/core';\nimport { Button } from '@material-ui/core';\nimport Avatar from '@material-ui/core/Avatar';\nimport MenuIcon from '@material-ui/icons/Menu';\nimport { logout } from '../../helpers/authManager';\nimport './WssNavBar.css';\n\nconst useStyles = makeStyles(theme => ({\n root: {\n display: 'flex'\n },\n content: {\n flexGrow: 1,\n height: '100vh',\n marginLeft: theme.spacing(2),\n marginRight: theme.spacing(2)\n },\n appListLogo: {\n width: '3.6rem'\n },\n appName: {\n color: 'white',\n marginLeft: theme.spacing(2),\n marginRight: theme.spacing(4),\n fontSize: '1.5rem'\n }\n}));\n\nexport default function WssNavBar(props) {\n const { appInfo, navLinks, operator, navDisplayOptions } = props;\n const { alignment, position } = navDisplayOptions;\n const classes = useStyles();\n\n const [anchorElNav, setAnchorElNav] = useState<null | HTMLElement>(null);\n const [anchorElUser, setAnchorElUser] = useState<null | HTMLElement>(null);\n\n const handleOpenNavMenu = (event: React.MouseEvent<HTMLElement>) => {\n setAnchorElNav(event.currentTarget);\n };\n const handleOpenUserMenu = (event: React.MouseEvent<HTMLElement>) => {\n setAnchorElUser(event.currentTarget);\n };\n\n const handleCloseNavMenu = () => {\n setAnchorElNav(null);\n };\n\n const handleCloseUserMenu = () => {\n setAnchorElUser(null);\n };\n\n const navLinksContent = (\n <Box\n sx={{ flexGrow: 1, display: { xs: 'none', md: 'flex' } }}\n style={{ justifyContent: alignment }}\n >\n {navLinks.map(link => (\n <Button className='link-style' key={link.text} onClick={link.onClick}>\n {link.text}\n </Button>\n ))}\n </Box>\n );\n\n return (\n <div id='NavBar' className='nav-bar'>\n <AppBar position='static' color='primary'>\n <Container maxWidth='xl'>\n <Toolbar disableGutters style={{ justifyContent: 'space-between' }}>\n <Button style={{ textTransform: 'capitalize' }} onClick={appInfo.onClick}>\n <img src={appInfo.imageSrc} className={classes.appListLogo} />\n <span className={classes.appName}>{appInfo.appName}</span>\n </Button>\n <Box sx={{ flexGrow: 1, display: { xs: 'flex', md: 'none' } }}>\n <IconButton\n size='small'\n aria-label='account of current user'\n aria-controls='menu-appbar'\n aria-haspopup='true'\n onClick={handleOpenNavMenu}\n color='inherit'\n >\n <MenuIcon />\n </IconButton>\n <Menu\n id='menu-appbar'\n anchorEl={anchorElNav}\n anchorOrigin={{\n vertical: 'bottom',\n horizontal: 'left'\n }}\n keepMounted\n transformOrigin={{\n vertical: 'top',\n horizontal: 'left'\n }}\n open={Boolean(anchorElNav)}\n onClose={handleCloseNavMenu}\n >\n {navLinks.map(link => (\n <MenuItem key={link.text} onClick={link.onClick}>\n <Typography>{link.text}</Typography>\n </MenuItem>\n ))}\n </Menu>\n </Box>\n\n {position === 'inline' && <>{navLinksContent}</>}\n\n <Box sx={{ flexGrow: 0 }}>\n <IconButton onClick={handleOpenUserMenu}>\n <Avatar>{operator.currentUserInitials}</Avatar>\n </IconButton>\n <Menu\n id='menu-appbar'\n anchorEl={anchorElUser}\n anchorOrigin={{\n vertical: 'top',\n horizontal: 'right'\n }}\n keepMounted\n transformOrigin={{\n vertical: 'top',\n horizontal: 'right'\n }}\n open={Boolean(anchorElUser)}\n onClose={handleCloseUserMenu}\n >\n <MenuItem onClick={logout}>\n <Typography>Logout</Typography>\n </MenuItem>\n </Menu>\n </Box>\n </Toolbar>\n {position === 'below' && <>{navLinksContent}</>}\n </Container>\n </AppBar>\n </div>\n );\n}\n"]}
|
package/package.json
CHANGED