@pega/react-sdk-components 0.25.7 → 0.25.8

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.
@@ -18,8 +18,8 @@ export default function Assignment(props) {
18
18
  const [arNavigationSteps, setArNavigationSteps] = useState([]);
19
19
  const actionsAPI = thePConn.getActionsApi();
20
20
  const localizedVal = PCore.getLocaleUtils().getLocaleValue;
21
+ const localizationService = thePConn.getLocalizationService();
21
22
  const localeCategory = 'Assignment';
22
- const localeReference = getPConnect()?.getCaseLocaleReference();
23
23
  // store off bound functions to above pointers
24
24
  const finishAssignment = actionsAPI.finishAssignment.bind(actionsAPI);
25
25
  const navigateToStep = actionsAPI.navigateToStep.bind(actionsAPI);
@@ -56,7 +56,7 @@ export default function Assignment(props) {
56
56
  function getStepsInfo(steps, formedSteps = []) {
57
57
  steps.forEach(step => {
58
58
  if (step.name) {
59
- step.name = PCore.getLocaleUtils().getLocaleValue(step.name, undefined, localeReference);
59
+ step.name = localizationService.getLocalizedText(step.name);
60
60
  }
61
61
  if (step.steps) {
62
62
  formedSteps = getStepsInfo(step.steps, formedSteps);
@@ -1 +1 @@
1
- {"version":3,"file":"Assignment.js","sourceRoot":"","sources":["../../../../src/components/infra/Assignment/Assignment.tsx"],"names":[],"mappings":";AAAA,OAAO,KAAK,EAAE,EAA0B,SAAS,EAAE,QAAQ,EAAE,MAAM,OAAO,CAAC;AAC3E,OAAO,QAAQ,MAAM,wBAAwB,CAAC;AAC9C,OAAO,UAAU,MAAM,0BAA0B,CAAC;AAClD,OAAO,SAAS,MAAM,2BAA2B,CAAC;AAElD,OAAO,EAAE,mBAAmB,EAAE,MAAM,2CAA2C,CAAC;AAChF,OAAO,EAAE,kBAAkB,EAAE,cAAc,EAAE,MAAM,gBAAgB,CAAC;AAapE,MAAM,CAAC,OAAO,UAAU,UAAU,CAAC,KAAyC;IAC1E,8EAA8E;IAC9E,MAAM,cAAc,GAAG,mBAAmB,CAAC,gBAAgB,CAAC,CAAC;IAC7D,MAAM,SAAS,GAAG,mBAAmB,CAAC,WAAW,CAAC,CAAC;IAEnD,MAAM,EAAE,WAAW,EAAE,QAAQ,EAAE,OAAO,GAAG,EAAE,EAAE,SAAS,GAAG,KAAK,EAAE,OAAO,GAAG,EAAE,EAAE,GAAG,KAAK,CAAC;IACvF,MAAM,QAAQ,GAAG,WAAW,EAAE,CAAC;IAE/B,MAAM,CAAC,cAAc,EAAE,gBAAgB,CAAC,GAAG,QAAQ,CAAC,KAAK,CAAC,CAAC;IAC3D,MAAM,CAAC,aAAa,EAAE,gBAAgB,CAAC,GAAG,QAAQ,CAAC,EAAE,CAAC,CAAC;IACvD,MAAM,CAAC,WAAW,EAAE,aAAa,CAAC,GAAG,QAAQ,CAAC,KAAK,CAAC,CAAC;IACrD,MAAM,CAAC,qBAAqB,EAAE,wBAAwB,CAAC,GAAG,QAAQ,CAAQ,EAAE,CAAC,CAAC;IAC9E,MAAM,CAAC,iBAAiB,EAAE,oBAAoB,CAAC,GAAG,QAAQ,CAAQ,EAAE,CAAC,CAAC;IAEtE,MAAM,UAAU,GAAG,QAAQ,CAAC,aAAa,EAAE,CAAC;IAC5C,MAAM,YAAY,GAAG,KAAK,CAAC,cAAc,EAAE,CAAC,cAAc,CAAC;IAC3D,MAAM,cAAc,GAAG,YAAY,CAAC;IACpC,MAAM,eAAe,GAAG,WAAW,EAAE,EAAE,sBAAsB,EAAE,CAAC;IAEhE,8CAA8C;IAC9C,MAAM,gBAAgB,GAAG,UAAU,CAAC,gBAAgB,CAAC,IAAI,CAAC,UAAU,CAAC,CAAC;IACtE,MAAM,cAAc,GAAG,UAAU,CAAC,cAAc,CAAC,IAAI,CAAC,UAAU,CAAC,CAAC;IAClE,MAAM,gBAAgB,GAAG,UAAU,CAAC,gBAAgB,CAAC,IAAI,CAAC,UAAU,CAAC,CAAC;IACtE,MAAM,cAAc,GAAG,UAAU,CAAC,cAAc,EAAE,IAAI,CAAC,UAAU,CAAC,CAAC;IACnE,MAAM,2BAA2B,GAAG,UAAU,CAAC,2BAA2B,CAAC,IAAI,CAAC,UAAU,CAAC,CAAC;IAC5F,MAAM,WAAW,GAAG,UAAU,CAAC,WAAW,EAAE,IAAI,CAAC,UAAU,CAAC,CAAC;IAC7D,MAAM,UAAU,GAAG,UAAU,CAAC,UAAU,EAAE,IAAI,CAAC,UAAU,CAAC,CAAC;IAC3D,yDAAyD;IAEzD,MAAM,CAAC,YAAY,EAAE,eAAe,CAAC,GAAG,QAAQ,CAAC,KAAK,CAAC,CAAC;IACxD,MAAM,CAAC,eAAe,EAAE,kBAAkB,CAAC,GAAG,QAAQ,CAAC,EAAE,CAAC,CAAC;IAE3D,SAAS,mBAAmB,CAAC,cAAqB,EAAE,UAAoB,EAAE,KAAa;QACrF,IAAI,KAAK,GAAG,CAAC,CAAC;QACd,cAAc,CAAC,OAAO,CAAC,IAAI,CAAC,EAAE;YAC5B,IAAI,IAAI,CAAC,cAAc,KAAK,SAAS,EAAE,CAAC;gBACtC,UAAU,CAAC,KAAK,CAAC,GAAG,KAAK,CAAC;gBAE1B,SAAS;gBACT,IAAI,CAAC,WAAW,GAAG,EAAE,CAAC;YACxB,CAAC;iBAAM,IAAI,IAAI,CAAC,cAAc,KAAK,SAAS,EAAE,CAAC;gBAC7C,KAAK,IAAI,CAAC,CAAC;gBACX,IAAI,CAAC,WAAW,GAAG,WAAW,CAAC;YACjC,CAAC;iBAAM,CAAC;gBACN,KAAK,IAAI,CAAC,CAAC;gBACX,IAAI,CAAC,WAAW,GAAG,EAAE,CAAC;YACxB,CAAC;YAED,IAAI,IAAI,CAAC,KAAK,EAAE,CAAC;gBACf,UAAU,GAAG,mBAAmB,CAAC,IAAI,CAAC,KAAK,EAAE,UAAU,EAAE,KAAK,GAAG,CAAC,CAAC,CAAC;YACtE,CAAC;QACH,CAAC,CAAC,CAAC;QAEH,OAAO,UAAU,CAAC;IACpB,CAAC;IAED,SAAS,YAAY,CAAC,KAAK,EAAE,cAAmB,EAAE;QAChD,KAAK,CAAC,OAAO,CAAC,IAAI,CAAC,EAAE;YACnB,IAAI,IAAI,CAAC,IAAI,EAAE,CAAC;gBACd,IAAI,CAAC,IAAI,GAAG,KAAK,CAAC,cAAc,EAAE,CAAC,cAAc,CAAC,IAAI,CAAC,IAAI,EAAE,SAAS,EAAE,eAAe,CAAC,CAAC;YAC3F,CAAC;YACD,IAAI,IAAI,CAAC,KAAK,EAAE,CAAC;gBACf,WAAW,GAAG,YAAY,CAAC,IAAI,CAAC,KAAK,EAAE,WAAW,CAAC,CAAC;YACtD,CAAC;iBAAM,CAAC;gBACN,WAAW,CAAC,IAAI,CAAC,IAAI,CAAC,CAAC;YACzB,CAAC;QACH,CAAC,CAAC,CAAC;QACH,OAAO,WAAW,CAAC;IACrB,CAAC;IAED,MAAM,QAAQ,GAAG,MAAM,CAAC,QAAQ,CAAC,IAAI,CAAC,QAAQ,CAAC,UAAU,CAAC,CAAC,CAAC,CAAC,oBAAoB,CAAC,CAAC,CAAC,SAAS,CAAC;IAC9F,cAAc,CAAC,QAAQ,EAAE,QAAQ,CAAC,CAAC;IACnC,kBAAkB,CAAC,YAAY,EAAE,QAAQ,CAAC,CAAC;IAE3C,SAAS,CAAC,GAAG,EAAE;QACb,IAAI,QAAQ,EAAE,CAAC;YACb,MAAM,UAAU,GAAG,KAAK,CAAC,OAAO,CAAC,QAAQ,CAAC,CAAC,CAAC,CAAC,QAAQ,CAAC,CAAC,CAAC,CAAC,CAAC,CAAC,QAAQ,CAAC;YACpE,MAAM,SAAS,GAAG,UAAU,CAAC,KAAK,CAAC,WAAW,EAAE,CAAC;YACjD,MAAM,SAAS,GAAG,SAAS,CAAC,aAAa,EAAE,CAAC;YAC5C,MAAM,KAAK,GAAQ,QAAQ,CAAC,aAAa,CAAC,EAAE,CAAC,CAAC,CAAC,8DAA8D;YAC7G,MAAM,QAAQ,GAAG,KAAK,EAAE,QAAQ,CAAC;YACjC,IAAI,CAAC,SAAS,EAAE,QAAQ,IAAI,SAAS,CAAC,QAAQ,CAAC,WAAW,KAAK,IAAI,IAAI,CAAC,QAAQ,EAAE,CAAC;gBACjF,OAAO;YACT,CAAC;YAED,qBAAqB;YACrB,IAAI,QAAQ,CAAC,aAAa,EAAE,CAAC;gBAC3B,gBAAgB,CAAC,QAAQ,CAAC,aAAa,CAAC,CAAC;YAC3C,CAAC;YAED,0BAA0B;YAC1B,MAAM,UAAU,GAAG,QAAQ,CAAC,UAAU,CAAC;YACvC,IAAI,CAAC,UAAU,EAAE,CAAC;gBAChB,gBAAgB,CAAC,KAAK,CAAC,CAAC;gBACxB,OAAO;YACT,CAAC;YAED,MAAM,kBAAkB,GAAG,UAAU,CAAC,QAAQ,EAAE,WAAW,EAAE,KAAK,UAAU,CAAC;YAC7E,MAAM,aAAa,GAAG,UAAU,CAAC,KAAK,EAAE,MAAM,KAAK,CAAC,CAAC;YACrD,MAAM,oBAAoB,GAAG,kBAAkB,IAAI,aAAa,CAAC;YAEjE,gBAAgB,CAAC,CAAC,oBAAoB,CAAC,CAAC;YAExC,IAAI,oBAAoB,EAAE,CAAC;gBACzB,OAAO;YACT,CAAC;YAED,0BAA0B;YAC1B,MAAM,kBAAkB,GAAG,UAAU,CAAC,QAAQ,EAAE,WAAW,EAAE,KAAK,UAAU,CAAC;YAC7E,aAAa,CAAC,kBAAkB,CAAC,CAAC;YAElC,IAAI,UAAU,CAAC,KAAK,EAAE,CAAC;gBACrB,MAAM,KAAK,GAAG,IAAI,CAAC,KAAK,CAAC,IAAI,CAAC,SAAS,CAAC,UAAU,CAAC,KAAK,CAAC,CAAC,CAAC;gBAC3D,MAAM,WAAW,GAAG,YAAY,CAAC,KAAK,CAAC,CAAC;gBACxC,oBAAoB,CAAC,WAAW,CAAC,CAAC;YACpC,CAAC;YAED,wBAAwB,CAAC,mBAAmB,CAAC,iBAAiB,EAAE,qBAAqB,EAAE,CAAC,CAAC,CAAC,CAAC;QAC7F,CAAC;IACH,CAAC,EAAE,CAAC,QAAQ,CAAC,CAAC,CAAC;IAEf,SAAS,SAAS,CAAC,OAAe;QAChC,MAAM,UAAU,GAAG,eAAe,OAAO,EAAE,CAAC;QAE5C,OAAO,CAAC,KAAK,CAAC,UAAU,CAAC,CAAC;QAC1B,kBAAkB,CAAC,OAAO,CAAC,CAAC;QAC5B,eAAe,CAAC,IAAI,CAAC,CAAC;IACxB,CAAC;IAED,SAAS,mBAAmB,CAAC,KAAwC,EAAE,MAAe;QACpF,IAAI,MAAM,KAAK,WAAW,EAAE,CAAC;YAC3B,OAAO;QACT,CAAC;QACD,eAAe,CAAC,KAAK,CAAC,CAAC;IACzB,CAAC;IAED,SAAS,mBAAmB,CAAC,IAAI;QAC/B,UAAU,CAAC,gBAAgB,CAAC,OAAO,EAAE,KAAK,CAAC,CAAC,IAAI,CAAC,GAAG,EAAE;YACpD,KAAK,CAAC,cAAc,EAAE,CAAC,OAAO,CAAC,KAAK,CAAC,YAAY,EAAE,CAAC,cAAc,CAAC,WAAW,CAAC,kBAAkB,EAAE,IAAI,CAAC,CAAC;QAC3G,CAAC,CAAC,CAAC;IACL,CAAC;IAED,SAAS,WAAW,CAAC,OAAe,EAAE,WAAmB;QACvD,IAAI,WAAW,KAAK,WAAW,EAAE,CAAC;YAChC,QAAQ,OAAO,EAAE,CAAC;gBAChB,KAAK,gBAAgB,CAAC,CAAC,CAAC;oBACtB,MAAM,eAAe,GAAG,cAAc,CAAC,UAAU,EAAE,OAAO,CAAC,CAAC;oBAE5D,eAAe;yBACZ,IAAI,CAAC,GAAG,EAAE,GAAE,CAAC,CAAC;yBACd,KAAK,CAAC,GAAG,EAAE;wBACV,SAAS,CAAC,GAAG,YAAY,CAAC,oBAAoB,EAAE,cAAc,CAAC,EAAE,CAAC,CAAC;oBACrE,CAAC,CAAC,CAAC;oBAEL,MAAM;gBACR,CAAC;gBAED,KAAK,gBAAgB,CAAC,CAAC,CAAC;oBACtB,MAAM,MAAM,GAAG,QAAQ,CAAC,WAAW,EAAE,CAAC,MAAM,EAAE,CAAC;oBAC/C,MAAM,YAAY,GAAG,QAAQ,CAAC,WAAW,EAAE,CAAC,eAAe,EAAE,CAAC;oBAC9D,MAAM,WAAW,GAAG,cAAc,CAAC,OAAO,CAAC,CAAC;oBAE5C,WAAW;yBACR,IAAI,CAAC,GAAG,EAAE;wBACT,MAAM,QAAQ,GAAG,QAAQ,CAAC,WAAW,EAAE,CAAC,OAAO,CAAC,QAAQ,CAAC,KAAK,CAAC,YAAY,EAAE,CAAC,SAAS,CAAC,YAAY,CAAC,CAAC;wBACtG,mBAAmB,CAAC,EAAE,QAAQ,EAAE,MAAM,EAAE,YAAY,EAAE,CAAC,CAAC;oBAC1D,CAAC,CAAC;yBACD,KAAK,CAAC,GAAG,EAAE;wBACV,SAAS,CAAC,GAAG,YAAY,CAAC,aAAa,EAAE,cAAc,CAAC,EAAE,CAAC,CAAC;oBAC9D,CAAC,CAAC,CAAC;oBAEL,MAAM;gBACR,CAAC;gBAED,KAAK,kBAAkB,CAAC,CAAC,CAAC;oBACxB,gCAAgC;oBAChC,MAAM,EAAE,cAAc,EAAE,GAAG,KAAK,CAAC,YAAY,EAAE,CAAC;oBAChD,MAAM,EAAE,OAAO,EAAE,GAAG,KAAK,CAAC,cAAc,EAAE,CAAC;oBAC3C,MAAM,yBAAyB,GAAG,QAAQ,CAAC,WAAW,EAAE,CAAC,yBAAyB,EAAE,CAAC;oBACrF,MAAM,aAAa,GACjB,QAAQ,CAAC,WAAW,EAAE,CAAC,aAAa,EAAE;wBACtC,CAAC,KAAK,CAAC,YAAY,EAAE,CAAC,SAAS,CAAC,eAAe,IAAI,WAAW,EAAE,CAAC,QAAQ,CAAC,KAAK,CAAC,YAAY,EAAE,CAAC,SAAS,CAAC,eAAe,CAAC,CAAC,CAAC;oBAC7H,IAAI,yBAAyB,IAAI,SAAS,IAAI,CAAC,aAAa,EAAE,CAAC;wBAC7D,MAAM,aAAa,GAAG,2BAA2B,CAAC,OAAO,CAAC,CAAC;wBAE3D,aAAa;6BACV,IAAI,CAAC,IAAI,CAAC,EAAE;4BACX,OAAO,CAAC,cAAc,CAAC,YAAY,EAAE,IAAI,CAAC,CAAC;wBAC7C,CAAC,CAAC;6BACD,KAAK,CAAC,GAAG,EAAE;4BACV,SAAS,CAAC,GAAG,YAAY,CAAC,gBAAgB,EAAE,cAAc,CAAC,EAAE,CAAC,CAAC;wBACjE,CAAC,CAAC,CAAC;oBACP,CAAC;yBAAM,CAAC;wBACN,MAAM,aAAa,GAAG,gBAAgB,CAAC,OAAO,EAAE,KAAK,CAAC,CAAC;wBAEvD,aAAa;6BACV,IAAI,CAAC,IAAI,CAAC,EAAE;4BACX,OAAO,CAAC,cAAc,CAAC,YAAY,EAAE,IAAI,CAAC,CAAC;wBAC7C,CAAC,CAAC;6BACD,KAAK,CAAC,GAAG,EAAE;4BACV,SAAS,CAAC,GAAG,YAAY,CAAC,gBAAgB,EAAE,cAAc,CAAC,EAAE,CAAC,CAAC;wBACjE,CAAC,CAAC,CAAC;oBACP,CAAC;oBACD,MAAM;gBACR,CAAC;gBAED,KAAK,YAAY,CAAC,CAAC,CAAC;oBAClB,MAAM,aAAa,GAAG,UAAU,CAAC,OAAO,CAAC,CAAC;oBAE1C,aAAa;yBACV,IAAI,CAAC,GAAG,EAAE,GAAE,CAAC,CAAC;yBACd,KAAK,CAAC,GAAG,EAAE;wBACV,SAAS,CAAC,GAAG,YAAY,CAAC,mBAAmB,EAAE,cAAc,CAAC,EAAE,CAAC,CAAC;oBACpE,CAAC,CAAC,CAAC;oBAEL,MAAM;gBACR,CAAC;gBAED;oBACE,MAAM;YACV,CAAC;QACH,CAAC;aAAM,IAAI,WAAW,KAAK,SAAS,EAAE,CAAC;YACrC,QAAQ,OAAO,EAAE,CAAC;gBAChB,KAAK,kBAAkB,CAAC,CAAC,CAAC;oBACxB,MAAM,aAAa,GAAG,gBAAgB,CAAC,OAAO,CAAC,CAAC;oBAEhD,aAAa;yBACV,IAAI,CAAC,GAAG,EAAE,GAAE,CAAC,CAAC;yBACd,KAAK,CAAC,GAAG,EAAE;wBACV,SAAS,CAAC,GAAG,YAAY,CAAC,gBAAgB,EAAE,cAAc,CAAC,EAAE,CAAC,CAAC;oBACjE,CAAC,CAAC,CAAC;oBAEL,MAAM;gBACR,CAAC;gBAED,KAAK,aAAa,CAAC,CAAC,CAAC;oBACnB,MAAM,cAAc,GAAG,WAAW,CAAC,OAAO,CAAC,CAAC;oBAE5C,cAAc;yBACX,IAAI,CAAC,GAAG,EAAE,GAAE,CAAC,CAAC;yBACd,KAAK,CAAC,GAAG,EAAE;wBACV,SAAS,CAAC,GAAG,YAAY,CAAC,iBAAiB,EAAE,cAAc,CAAC,EAAE,CAAC,CAAC;oBAClE,CAAC,CAAC,CAAC;oBAEL,MAAM;gBACR,CAAC;gBAED;oBACE,MAAM;YACV,CAAC;QACH,CAAC;IACH,CAAC;IAED,SAAS,eAAe,CAAC,iBAAiB;QACxC,4DAA4D;QAC5D,IAAI,CAAC,iBAAiB,EAAE,CAAC;YACvB,OAAO,EAAE,CAAC;QACZ,CAAC;QACD,OAAO,iBAAiB,CAAC,MAAM,CAAC,IAAI,CAAC,EAAE,CAAC,IAAI,CAAC,KAAK,IAAI,IAAI,CAAC,KAAK,KAAK,SAAS,CAAC,CAAC,GAAG,CAAC,IAAI,CAAC,EAAE,CAAC,CAAC,IAAI,CAAC,KAAK,EAAE,IAAI,CAAC,KAAK,EAAE,SAAS,CAAC,CAAC,CAAC,CAAC,CAAC,IAAI,EAAE,CAAC;IAC5I,CAAC;IAED,8EAA8E;IAC9E,MAAM,iBAAiB,GAAG,QAAQ,CAAC,WAAW,EAAE,EAAE,0BAA0B,EAAE,CAAC;IAC/E,MAAM,OAAO,GAAG,QAAQ,CAAC,cAAc,EAAE,CAAC;IAC1C,MAAM,aAAa,GAAG,QAAQ,CAAC,gBAAgB,EAAE,CAAC;IAElD,8BAA8B;IAC9B,KAAK,CAAC,iBAAiB,EAAE,CAAC,oBAAoB,CAAC,OAAO,CAAC,CAAC;IAExD,2BAA2B;IAC3B,MAAM,YAAY,GAAG,eAAe,CAAC,iBAAiB,CAAC,CAAC;IACxD,MAAM,OAAO,GAAG,QAAQ,CAAC,WAAW,EAAE,CAAC,MAAM,EAAE,CAAC;IAChD,MAAM,cAAc,GAAG;QACrB,iBAAiB,EAAE,IAAI;QACvB,qBAAqB,EAAE,KAAK;KAC7B,CAAC;IACF,IAAI,YAAY,CAAC,MAAM,GAAG,CAAC,EAAE,CAAC;QAC5B,YAAY,CAAC,OAAO,CAAC,IAAI,CAAC,EAAE;YAC1B,KAAK,CAAC,iBAAiB,EAAE,CAAC,kBAAkB,CAC1C,aAAa,EACb,QAAQ,CAAC,aAAa,EAAE,CAAC,eAAe,CAAC,IAAI,CAAC,QAAQ,CAAC,aAAa,EAAE,EAAE,OAAO,EAAE,EAAE,EAAE,aAAa,EAAE;gBAClG,GAAG,cAAc;gBACjB,UAAU,EAAE,IAAI,CAAC,CAAC,CAAC;aACpB,CAAC,EACF,GAAG,aAAa,IAAI,IAAI,CAAC,CAAC,CAAC,EAAE,EAC7B,GAAG,OAAO,IAAI,aAAa,EAAE,EAC7B,OAAO,CACR,CAAC;QACJ,CAAC,CAAC,CAAC;IACL,CAAC;IAED,OAAO,CACL,eAAK,EAAE,EAAC,YAAY,aACjB,OAAO,EACP,cAAc,CAAC,CAAC,CAAC,CAChB,8BACE,KAAC,SAAS,IACR,WAAW,EAAE,WAAW,EACxB,OAAO,EAAE,OAAO,EAChB,aAAa,EAAE,aAAa,EAC5B,aAAa,EAAE,WAAW,EAC1B,WAAW,EAAE,WAAW,EACxB,qBAAqB,EAAE,qBAAqB,EAC5C,iBAAiB,EAAE,iBAAiB,YAEnC,QAAQ,GACC,EACZ,KAAC,QAAQ,IACP,IAAI,EAAE,YAAY,EAClB,gBAAgB,EAAE,IAAI,EACtB,OAAO,EAAE,mBAAmB,EAC5B,OAAO,EAAE,eAAe,EACxB,MAAM,EACJ,KAAC,UAAU,IAAC,IAAI,EAAC,OAAO,gBAAY,OAAO,EAAC,KAAK,EAAC,SAAS,EAAC,OAAO,EAAE,mBAAmB,YACtF,KAAC,SAAS,IAAC,QAAQ,EAAC,OAAO,GAAG,GACnB,GAEf,IACD,CACJ,CAAC,CAAC,CAAC,CACF,8BACE,KAAC,cAAc,IAAC,WAAW,EAAE,WAAW,EAAE,OAAO,EAAE,OAAO,EAAE,aAAa,EAAE,aAAa,EAAE,aAAa,EAAE,WAAW,YACjH,QAAQ,GACM,EACjB,KAAC,QAAQ,IACP,IAAI,EAAE,YAAY,EAClB,gBAAgB,EAAE,IAAI,EACtB,OAAO,EAAE,mBAAmB,EAC5B,OAAO,EAAE,eAAe,EACxB,MAAM,EACJ,KAAC,UAAU,IAAC,IAAI,EAAC,OAAO,gBAAY,OAAO,EAAC,KAAK,EAAC,SAAS,EAAC,OAAO,EAAE,mBAAmB,YACtF,KAAC,SAAS,IAAC,QAAQ,EAAC,OAAO,GAAG,GACnB,GAEf,IACD,CACJ,IACG,CACP,CAAC;AACJ,CAAC","sourcesContent":["import React, { type PropsWithChildren, useEffect, useState } from 'react';\nimport Snackbar from '@mui/material/Snackbar';\nimport IconButton from '@mui/material/IconButton';\nimport CloseIcon from '@mui/icons-material/Close';\n\nimport { getComponentFromMap } from '../../../bridge/helpers/sdk_component_map';\nimport { useFocusFirstField, useScrolltoTop } from '../../../hooks';\n\nimport type { PConnProps } from '../../../types/PConnProps';\n\ninterface AssignmentProps extends PConnProps {\n // If any, enter additional props that only exist on this component\n itemKey: string;\n isInModal: boolean;\n banners: any[];\n\n actionButtons: any[];\n}\n\nexport default function Assignment(props: PropsWithChildren<AssignmentProps>) {\n // Get emitted components from map (so we can get any override that may exist)\n const AssignmentCard = getComponentFromMap('AssignmentCard');\n const MultiStep = getComponentFromMap('MultiStep');\n\n const { getPConnect, children, itemKey = '', isInModal = false, banners = [] } = 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<any[]>([]);\n const [arNavigationSteps, setArNavigationSteps] = useState<any[]>([]);\n\n const actionsAPI = thePConn.getActionsApi();\n const localizedVal = PCore.getLocaleUtils().getLocaleValue;\n const localeCategory = 'Assignment';\n const localeReference = getPConnect()?.getCaseLocaleReference();\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 approveCase = actionsAPI.approveCase?.bind(actionsAPI);\n const rejectCase = actionsAPI.rejectCase?.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: any[], arIndicies: number[], depth: number): 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 function getStepsInfo(steps, formedSteps: any = []) {\n steps.forEach(step => {\n if (step.name) {\n step.name = PCore.getLocaleUtils().getLocaleValue(step.name, undefined, localeReference);\n }\n if (step.steps) {\n formedSteps = getStepsInfo(step.steps, formedSteps);\n } else {\n formedSteps.push(step);\n }\n });\n return formedSteps;\n }\n\n const scrollId = window.location.href.includes('embedded') ? '#pega-part-of-page' : '#portal';\n useScrolltoTop(scrollId, children);\n useFocusFirstField('Assignment', children);\n\n useEffect(() => {\n if (children) {\n const firstChild = Array.isArray(children) ? children[0] : children;\n const oWorkItem = firstChild.props.getPConnect();\n const oWorkData = oWorkItem.getDataObject();\n const oData: any = thePConn.getDataObject(''); // 1st arg empty string until typedefs allow it to be optional\n const caseInfo = oData?.caseInfo;\n if (!oWorkData?.caseInfo || oWorkData.caseInfo.assignments === null || !caseInfo) {\n return;\n }\n\n // Set action buttons\n if (caseInfo.actionButtons) {\n setActionButtons(caseInfo.actionButtons);\n }\n\n // Handle navigation setup\n const navigation = caseInfo.navigation;\n if (!navigation) {\n setHasNavigation(false);\n return;\n }\n\n const isStandardTemplate = navigation.template?.toLowerCase() === 'standard';\n const hasSingleStep = navigation.steps?.length === 1;\n const shouldHideNavigation = isStandardTemplate || hasSingleStep;\n\n setHasNavigation(!shouldHideNavigation);\n\n if (shouldHideNavigation) {\n return;\n }\n\n // set vertical navigation\n const isVerticalTemplate = navigation.template?.toLowerCase() === 'vertical';\n setIsVertical(isVerticalTemplate);\n\n if (navigation.steps) {\n const steps = JSON.parse(JSON.stringify(navigation.steps));\n const formedSteps = getStepsInfo(steps);\n setArNavigationSteps(formedSteps);\n }\n\n setArCurrentStepIndicies(findCurrentIndicies(arNavigationSteps, arCurrentStepIndicies, 0));\n }\n }, [children]);\n\n function showToast(message: string) {\n const theMessage = `Assignment: ${message}`;\n\n console.error(theMessage);\n setSnackbarMessage(message);\n setShowSnackbar(true);\n }\n\n function handleSnackbarClose(event: React.SyntheticEvent<any> | Event, reason?: string) {\n if (reason === 'clickaway') {\n return;\n }\n setShowSnackbar(false);\n }\n\n function onSaveActionSuccess(data) {\n actionsAPI.cancelAssignment(itemKey, false).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 if (sButtonType === 'secondary') {\n switch (sAction) {\n case 'navigateToStep': {\n const navigatePromise = navigateToStep('previous', itemKey);\n\n navigatePromise\n .then(() => {})\n .catch(() => {\n showToast(`${localizedVal('Navigation failed!', localeCategory)}`);\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(`${localizedVal('Save failed', localeCategory)}`);\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 && 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(`${localizedVal('Cancel failed!', localeCategory)}`);\n });\n } else {\n const cancelPromise = cancelAssignment(itemKey, false);\n\n cancelPromise\n .then(data => {\n publish(PUB_SUB_EVENTS.EVENT_CANCEL, data);\n })\n .catch(() => {\n showToast(`${localizedVal('Cancel failed!', localeCategory)}`);\n });\n }\n break;\n }\n\n case 'rejectCase': {\n const rejectPromise = rejectCase(itemKey);\n\n rejectPromise\n .then(() => {})\n .catch(() => {\n showToast(`${localizedVal('Rejection failed!', localeCategory)}`);\n });\n\n break;\n }\n\n default:\n break;\n }\n } else if (sButtonType === 'primary') {\n switch (sAction) {\n case 'finishAssignment': {\n const finishPromise = finishAssignment(itemKey);\n\n finishPromise\n .then(() => {})\n .catch(() => {\n showToast(`${localizedVal('Submit failed!', localeCategory)}`);\n });\n\n break;\n }\n\n case 'approveCase': {\n const approvePromise = approveCase(itemKey);\n\n approvePromise\n .then(() => {})\n .catch(() => {\n showToast(`${localizedVal('Approve failed!', localeCategory)}`);\n });\n\n break;\n }\n\n default:\n break;\n }\n }\n }\n\n function getRefreshProps(refreshConditions) {\n // refreshConditions cuurently supports only \"Changes\" event\n if (!refreshConditions) {\n return [];\n }\n return refreshConditions.filter(item => item.event && item.event === 'Changes').map(item => [item.field, item.field?.substring(1)]) || [];\n }\n\n // expected format of refreshConditions : [{field: \".Name\", event: \"Changes\"}]\n const refreshConditions = thePConn.getCaseInfo()?.getActionRefreshConditions();\n const context = thePConn.getContextName();\n const pageReference = thePConn.getPageReference();\n\n // refresh api de-registration\n PCore.getRefreshManager().deRegisterForRefresh(context);\n\n // refresh api registration\n const refreshProps = getRefreshProps(refreshConditions);\n const caseKey = thePConn.getCaseInfo().getKey();\n const refreshOptions = {\n autoDetectRefresh: true,\n preserveClientChanges: false\n };\n if (refreshProps.length > 0) {\n refreshProps.forEach(prop => {\n PCore.getRefreshManager().registerForRefresh(\n 'PROP_CHANGE',\n thePConn.getActionsApi().refreshCaseView.bind(thePConn.getActionsApi(), caseKey, '', pageReference, {\n ...refreshOptions,\n refreshFor: prop[0]\n }),\n `${pageReference}.${prop[1]}`,\n `${context}/${pageReference}`,\n context\n );\n });\n }\n\n return (\n <div id='Assignment'>\n {banners}\n {bHasNavigation ? (\n <>\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 size='small' aria-label='close' color='inherit' onClick={handleSnackbarClose}>\n <CloseIcon fontSize='small' />\n </IconButton>\n }\n />\n </>\n ) : (\n <>\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 </>\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"]}
1
+ {"version":3,"file":"Assignment.js","sourceRoot":"","sources":["../../../../src/components/infra/Assignment/Assignment.tsx"],"names":[],"mappings":"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","sourcesContent":["import React, { type PropsWithChildren, useEffect, useState } from 'react';\nimport Snackbar from '@mui/material/Snackbar';\nimport IconButton from '@mui/material/IconButton';\nimport CloseIcon from '@mui/icons-material/Close';\n\nimport { getComponentFromMap } from '../../../bridge/helpers/sdk_component_map';\nimport { useFocusFirstField, useScrolltoTop } from '../../../hooks';\n\nimport type { PConnProps } from '../../../types/PConnProps';\n\ninterface AssignmentProps extends PConnProps {\n // If any, enter additional props that only exist on this component\n itemKey: string;\n isInModal: boolean;\n banners: any[];\n\n actionButtons: any[];\n}\n\nexport default function Assignment(props: PropsWithChildren<AssignmentProps>) {\n // Get emitted components from map (so we can get any override that may exist)\n const AssignmentCard = getComponentFromMap('AssignmentCard');\n const MultiStep = getComponentFromMap('MultiStep');\n\n const { getPConnect, children, itemKey = '', isInModal = false, banners = [] } = 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<any[]>([]);\n const [arNavigationSteps, setArNavigationSteps] = useState<any[]>([]);\n\n const actionsAPI = thePConn.getActionsApi();\n const localizedVal = PCore.getLocaleUtils().getLocaleValue;\n const localizationService = thePConn.getLocalizationService();\n const localeCategory = 'Assignment';\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 approveCase = actionsAPI.approveCase?.bind(actionsAPI);\n const rejectCase = actionsAPI.rejectCase?.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: any[], arIndicies: number[], depth: number): 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 function getStepsInfo(steps, formedSteps: any = []) {\n steps.forEach(step => {\n if (step.name) {\n step.name = localizationService.getLocalizedText(step.name);\n }\n if (step.steps) {\n formedSteps = getStepsInfo(step.steps, formedSteps);\n } else {\n formedSteps.push(step);\n }\n });\n return formedSteps;\n }\n\n const scrollId = window.location.href.includes('embedded') ? '#pega-part-of-page' : '#portal';\n useScrolltoTop(scrollId, children);\n useFocusFirstField('Assignment', children);\n\n useEffect(() => {\n if (children) {\n const firstChild = Array.isArray(children) ? children[0] : children;\n const oWorkItem = firstChild.props.getPConnect();\n const oWorkData = oWorkItem.getDataObject();\n const oData: any = thePConn.getDataObject(''); // 1st arg empty string until typedefs allow it to be optional\n const caseInfo = oData?.caseInfo;\n if (!oWorkData?.caseInfo || oWorkData.caseInfo.assignments === null || !caseInfo) {\n return;\n }\n\n // Set action buttons\n if (caseInfo.actionButtons) {\n setActionButtons(caseInfo.actionButtons);\n }\n\n // Handle navigation setup\n const navigation = caseInfo.navigation;\n if (!navigation) {\n setHasNavigation(false);\n return;\n }\n\n const isStandardTemplate = navigation.template?.toLowerCase() === 'standard';\n const hasSingleStep = navigation.steps?.length === 1;\n const shouldHideNavigation = isStandardTemplate || hasSingleStep;\n\n setHasNavigation(!shouldHideNavigation);\n\n if (shouldHideNavigation) {\n return;\n }\n\n // set vertical navigation\n const isVerticalTemplate = navigation.template?.toLowerCase() === 'vertical';\n setIsVertical(isVerticalTemplate);\n\n if (navigation.steps) {\n const steps = JSON.parse(JSON.stringify(navigation.steps));\n const formedSteps = getStepsInfo(steps);\n setArNavigationSteps(formedSteps);\n }\n\n setArCurrentStepIndicies(findCurrentIndicies(arNavigationSteps, arCurrentStepIndicies, 0));\n }\n }, [children]);\n\n function showToast(message: string) {\n const theMessage = `Assignment: ${message}`;\n\n console.error(theMessage);\n setSnackbarMessage(message);\n setShowSnackbar(true);\n }\n\n function handleSnackbarClose(event: React.SyntheticEvent<any> | Event, reason?: string) {\n if (reason === 'clickaway') {\n return;\n }\n setShowSnackbar(false);\n }\n\n function onSaveActionSuccess(data) {\n actionsAPI.cancelAssignment(itemKey, false).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 if (sButtonType === 'secondary') {\n switch (sAction) {\n case 'navigateToStep': {\n const navigatePromise = navigateToStep('previous', itemKey);\n\n navigatePromise\n .then(() => {})\n .catch(() => {\n showToast(`${localizedVal('Navigation failed!', localeCategory)}`);\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(`${localizedVal('Save failed', localeCategory)}`);\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 && 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(`${localizedVal('Cancel failed!', localeCategory)}`);\n });\n } else {\n const cancelPromise = cancelAssignment(itemKey, false);\n\n cancelPromise\n .then(data => {\n publish(PUB_SUB_EVENTS.EVENT_CANCEL, data);\n })\n .catch(() => {\n showToast(`${localizedVal('Cancel failed!', localeCategory)}`);\n });\n }\n break;\n }\n\n case 'rejectCase': {\n const rejectPromise = rejectCase(itemKey);\n\n rejectPromise\n .then(() => {})\n .catch(() => {\n showToast(`${localizedVal('Rejection failed!', localeCategory)}`);\n });\n\n break;\n }\n\n default:\n break;\n }\n } else if (sButtonType === 'primary') {\n switch (sAction) {\n case 'finishAssignment': {\n const finishPromise = finishAssignment(itemKey);\n\n finishPromise\n .then(() => {})\n .catch(() => {\n showToast(`${localizedVal('Submit failed!', localeCategory)}`);\n });\n\n break;\n }\n\n case 'approveCase': {\n const approvePromise = approveCase(itemKey);\n\n approvePromise\n .then(() => {})\n .catch(() => {\n showToast(`${localizedVal('Approve failed!', localeCategory)}`);\n });\n\n break;\n }\n\n default:\n break;\n }\n }\n }\n\n function getRefreshProps(refreshConditions) {\n // refreshConditions cuurently supports only \"Changes\" event\n if (!refreshConditions) {\n return [];\n }\n return refreshConditions.filter(item => item.event && item.event === 'Changes').map(item => [item.field, item.field?.substring(1)]) || [];\n }\n\n // expected format of refreshConditions : [{field: \".Name\", event: \"Changes\"}]\n const refreshConditions = thePConn.getCaseInfo()?.getActionRefreshConditions();\n const context = thePConn.getContextName();\n const pageReference = thePConn.getPageReference();\n\n // refresh api de-registration\n PCore.getRefreshManager().deRegisterForRefresh(context);\n\n // refresh api registration\n const refreshProps = getRefreshProps(refreshConditions);\n const caseKey = thePConn.getCaseInfo().getKey();\n const refreshOptions = {\n autoDetectRefresh: true,\n preserveClientChanges: false\n };\n if (refreshProps.length > 0) {\n refreshProps.forEach(prop => {\n PCore.getRefreshManager().registerForRefresh(\n 'PROP_CHANGE',\n thePConn.getActionsApi().refreshCaseView.bind(thePConn.getActionsApi(), caseKey, '', pageReference, {\n ...refreshOptions,\n refreshFor: prop[0]\n }),\n `${pageReference}.${prop[1]}`,\n `${context}/${pageReference}`,\n context\n );\n });\n }\n\n return (\n <div id='Assignment'>\n {banners}\n {bHasNavigation ? (\n <>\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 size='small' aria-label='close' color='inherit' onClick={handleSnackbarClose}>\n <CloseIcon fontSize='small' />\n </IconButton>\n }\n />\n </>\n ) : (\n <>\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 </>\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"]}
@@ -1 +1 @@
1
- {"version":3,"file":"NavBar.d.ts","sourceRoot":"","sources":["../../../../src/components/infra/NavBar/NavBar.tsx"],"names":[],"mappings":"AAsCA,OAAO,KAAK,EAAE,UAAU,EAAE,MAAM,2BAA2B,CAAC;AAE5D,OAAO,cAAc,CAAC;AAEtB,UAAU,WAAY,SAAQ,UAAU;IAGtC,OAAO,CAAC,EAAE,MAAM,CAAC;IACjB,KAAK,CAAC,EAAE,GAAG,EAAE,CAAC;IACd,SAAS,EAAE,GAAG,EAAE,CAAC;IACjB,KAAK,CAAC,EAAE,GAAG,CAAC;CACb;AAkED,MAAM,CAAC,OAAO,UAAU,MAAM,CAAC,KAAK,EAAE,WAAW,2CAuLhD"}
1
+ {"version":3,"file":"NavBar.d.ts","sourceRoot":"","sources":["../../../../src/components/infra/NavBar/NavBar.tsx"],"names":[],"mappings":"AAsCA,OAAO,KAAK,EAAE,UAAU,EAAE,MAAM,2BAA2B,CAAC;AAE5D,OAAO,cAAc,CAAC;AAEtB,UAAU,WAAY,SAAQ,UAAU;IAGtC,OAAO,CAAC,EAAE,MAAM,CAAC;IACjB,KAAK,CAAC,EAAE,GAAG,EAAE,CAAC;IACd,SAAS,EAAE,GAAG,EAAE,CAAC;IACjB,KAAK,CAAC,EAAE,GAAG,CAAC;CACb;AAkED,MAAM,CAAC,OAAO,UAAU,MAAM,CAAC,KAAK,EAAE,WAAW,2CAiMhD"}
@@ -100,8 +100,16 @@ export default function NavBar(props) {
100
100
  const portalLogoImage = Utils.getIconPath(Utils.getSDKStaticConentUrl()).concat('pzpega-logo-mark.svg');
101
101
  const portalOperator = PCore.getEnvironmentInfo().getOperatorName();
102
102
  const portalApp = PCore.getEnvironmentInfo().getApplicationLabel();
103
+ // @ts-ignore
104
+ const localeReference = PCore.getLocaleUtils().getPortalLocaleReference() || pConn.getValue('.pyLocaleReference');
103
105
  useEffect(() => {
104
- setNavPages(JSON.parse(JSON.stringify(pages)));
106
+ const updatedPages = pages.map((page) => {
107
+ const destinationObject = {};
108
+ pConn.resolveConfigProps({ defaultHeading: page.pyDefaultHeading || page.pyLabel, localeReference: page.pyLocalizationReference }, destinationObject);
109
+ const name = localeUtils.getLocaleValue(destinationObject.defaultHeading, '', destinationObject.localeReference || localeReference);
110
+ return { ...page, name };
111
+ });
112
+ setNavPages(updatedPages);
105
113
  }, [pages]);
106
114
  function navPanelButtonClick(oPageData) {
107
115
  const { pyClassName, pyRuleName } = oPageData;
@@ -152,7 +160,7 @@ export default function NavBar(props) {
152
160
  }, [isDesktop]);
153
161
  return (_jsxs(Drawer, { variant: 'permanent', classes: {
154
162
  paper: clsx(classes.drawerPaper, !open && classes.drawerPaperClose)
155
- }, open: open && isDesktop, children: [open ? (_jsx(List, { className: classes.appListItem, children: _jsxs(ListItem, { onClick: handleDrawerOpen, secondaryAction: _jsx(IconButton, { edge: 'end', onClick: handleDrawerOpen, size: 'large', children: _jsx(ChevronLeftIcon, { className: classes.appListIcon }) }), children: [_jsx(ListItemIcon, { children: _jsx("img", { src: portalLogoImage, className: classes.appListLogo }) }), _jsx(ListItemText, { primary: _jsx(Typography, { variant: 'h6', className: classes.applicationLabel, children: portalApp }) })] }) })) : (_jsx("div", { className: classes.appListDiv, onClick: handleDrawerOpen, children: _jsx(ChevronRightIcon, { className: classes.appListIcon, id: 'chevron-right-icon', fontSize: 'large' }) })), _jsx(List, { children: _jsxs(ListItemButton, { onClick: handleCaseItemClick, children: [_jsx(ListItemIcon, { children: bShowCaseTypes && open ? _jsx(ClearOutlinedIcon, { fontSize: 'large' }) : _jsx(AddIcon, { fontSize: 'large' }) }), _jsx(ListItemText, { primary: 'Create' }), bShowCaseTypes ? _jsx(ExpandLess, {}) : _jsx(ExpandMore, {})] }) }), _jsx(Collapse, { in: bShowCaseTypes && open, timeout: 'auto', unmountOnExit: true, className: 'scrollable', children: _jsx(List, { component: 'div', disablePadding: true, children: caseTypes.map(caseType => (_jsxs(ListItemButton, { className: classes.nested, onClick: () => navPanelCreateCaseType(caseType.pyClassName, caseType.pyFlowType), children: [_jsx(ListItemIcon, { children: _jsx(WorkOutlineIcon, { fontSize: 'large' }) }), _jsx(ListItemText, { primary: localeUtils.getLocaleValue(caseType.pyLabel, '', localeUtils.getCaseLocaleReference(caseType.pyClassName)) })] }, caseType.pyLabel))) }) }), _jsx(List, { children: navPages.map(page => (_jsxs(ListItemButton, { onClick: () => navPanelButtonClick(page), children: [_jsx(ListItemIcon, { children: iconMap[page.pxPageViewIcon] }), _jsx(ListItemText, { primary: localeUtils.getLocaleValue(page.pyLabel, '', localeUtils.getCaseLocaleReference(page.pyClassName)) })] }, page.pyLabel))) }), _jsx(Divider, {}), _jsx(List, { className: 'marginTopAuto', children: _jsxs(_Fragment, { children: [_jsxs(ListItem, { onClick: navPanelOperatorButtonClick, secondaryAction: open ? (_jsx(IconButton, { edge: 'end', onClick: navPanelOperatorButtonClick, size: 'large', children: _jsx(ChevronRightIcon, {}) })) : null, children: [_jsx(ListItemIcon, { id: 'person-icon', children: _jsx(PersonOutlineIcon, { fontSize: 'large' }) }), _jsx(ListItemText, { primary: portalOperator })] }), _jsx(Menu, { anchorEl: anchorEl, keepMounted: bShowOperatorButtons, open: bShowOperatorButtons, onClick: navPanelOperatorButtonClick, anchorOrigin: {
163
+ }, open: open && isDesktop, children: [open ? (_jsx(List, { className: classes.appListItem, children: _jsxs(ListItem, { onClick: handleDrawerOpen, secondaryAction: _jsx(IconButton, { edge: 'end', onClick: handleDrawerOpen, size: 'large', children: _jsx(ChevronLeftIcon, { className: classes.appListIcon }) }), children: [_jsx(ListItemIcon, { children: _jsx("img", { src: portalLogoImage, className: classes.appListLogo }) }), _jsx(ListItemText, { primary: _jsx(Typography, { variant: 'h6', className: classes.applicationLabel, children: portalApp }) })] }) })) : (_jsx("div", { className: classes.appListDiv, onClick: handleDrawerOpen, children: _jsx(ChevronRightIcon, { className: classes.appListIcon, id: 'chevron-right-icon', fontSize: 'large' }) })), _jsx(List, { children: _jsxs(ListItemButton, { onClick: handleCaseItemClick, children: [_jsx(ListItemIcon, { children: bShowCaseTypes && open ? _jsx(ClearOutlinedIcon, { fontSize: 'large' }) : _jsx(AddIcon, { fontSize: 'large' }) }), _jsx(ListItemText, { primary: 'Create' }), bShowCaseTypes ? _jsx(ExpandLess, {}) : _jsx(ExpandMore, {})] }) }), _jsx(Collapse, { in: bShowCaseTypes && open, timeout: 'auto', unmountOnExit: true, className: 'scrollable', children: _jsx(List, { component: 'div', disablePadding: true, children: caseTypes.map(caseType => (_jsxs(ListItemButton, { className: classes.nested, onClick: () => navPanelCreateCaseType(caseType.pyClassName, caseType.pyFlowType), children: [_jsx(ListItemIcon, { children: _jsx(WorkOutlineIcon, { fontSize: 'large' }) }), _jsx(ListItemText, { primary: localeUtils.getLocaleValue(caseType.pyLabel, '', localeUtils.getCaseLocaleReference(caseType.pyClassName)) })] }, caseType.pyLabel))) }) }), _jsx(List, { children: navPages.map(page => (_jsxs(ListItemButton, { onClick: () => navPanelButtonClick(page), children: [_jsx(ListItemIcon, { children: iconMap[page.pxPageViewIcon] }), _jsx(ListItemText, { primary: page.name })] }, page.pyLabel))) }), _jsx(Divider, {}), _jsx(List, { className: 'marginTopAuto', children: _jsxs(_Fragment, { children: [_jsxs(ListItem, { onClick: navPanelOperatorButtonClick, secondaryAction: open ? (_jsx(IconButton, { edge: 'end', onClick: navPanelOperatorButtonClick, size: 'large', children: _jsx(ChevronRightIcon, {}) })) : null, children: [_jsx(ListItemIcon, { id: 'person-icon', children: _jsx(PersonOutlineIcon, { fontSize: 'large' }) }), _jsx(ListItemText, { primary: portalOperator })] }), _jsx(Menu, { anchorEl: anchorEl, keepMounted: bShowOperatorButtons, open: bShowOperatorButtons, onClick: navPanelOperatorButtonClick, anchorOrigin: {
156
164
  vertical: 'top',
157
165
  horizontal: 'right'
158
166
  }, transformOrigin: {
@@ -1 +1 @@
1
- {"version":3,"file":"NavBar.js","sourceRoot":"","sources":["../../../../src/components/infra/NavBar/NavBar.tsx"],"names":[],"mappings":"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","sourcesContent":["import { useEffect, useState } from 'react';\nimport { useTheme } from '@mui/material/styles';\nimport makeStyles from '@mui/styles/makeStyles';\nimport clsx from 'clsx';\n\nimport {\n Drawer,\n List,\n ListItem,\n ListItemButton,\n ListItemIcon,\n ListItemText,\n Collapse,\n Divider,\n IconButton,\n Menu,\n MenuItem,\n Typography\n} from '@mui/material';\nimport PersonOutlineIcon from '@mui/icons-material/PersonOutlineOutlined';\nimport ChevronLeftIcon from '@mui/icons-material/ChevronLeft';\nimport ChevronRightIcon from '@mui/icons-material/ChevronRight';\nimport FlagOutlinedIcon from '@mui/icons-material/FlagOutlined';\nimport HomeOutlinedIcon from '@mui/icons-material/HomeOutlined';\nimport TabletAndroidOutlineIcon from '@mui/icons-material/TabletAndroidOutlined';\nimport AirportShuttleOutlinedIcon from '@mui/icons-material/AirportShuttleOutlined';\nimport EditOutlinedIcon from '@mui/icons-material/EditOutlined';\nimport ExpandLess from '@mui/icons-material/ExpandLess';\nimport ExpandMore from '@mui/icons-material/ExpandMore';\nimport AddIcon from '@mui/icons-material/Add';\nimport WorkOutlineIcon from '@mui/icons-material/WorkOutline';\nimport ClearOutlinedIcon from '@mui/icons-material/ClearOutlined';\nimport ArrowBackIcon from '@mui/icons-material/ArrowBack';\nimport useMediaQuery from '@mui/material/useMediaQuery';\nimport { logout } from '@pega/auth/lib/sdk-auth-manager';\n\nimport { useNavBar } from '../../helpers/reactContextHelpers';\nimport { Utils } from '../../helpers/utils';\nimport type { PConnProps } from '../../../types/PConnProps';\n\nimport './NavBar.css';\n\ninterface NavBarProps extends PConnProps {\n // If any, enter additional props that only exist on this component\n\n appName?: string;\n pages?: any[];\n caseTypes: any[];\n pConn?: any;\n}\n\nconst iconMap = {\n 'pi pi-headline': <HomeOutlinedIcon fontSize='large' />,\n 'pi pi-flag-solid': <FlagOutlinedIcon fontSize='large' />,\n 'pi pi-home-solid': <HomeOutlinedIcon fontSize='large' />,\n 'pi pi-tablet': <TabletAndroidOutlineIcon fontSize='large' />,\n 'pi pi-ambulance': <AirportShuttleOutlinedIcon fontSize='large' />,\n 'pi pi-ink-solid': <EditOutlinedIcon fontSize='large' />,\n 'pi pi-columns': <HomeOutlinedIcon fontSize='large' />\n};\n\nconst drawerWidth = 300;\n\nconst useStyles = makeStyles(theme => ({\n drawerPaper: {\n position: 'relative',\n whiteSpace: 'nowrap',\n width: drawerWidth,\n transition: theme.transitions.create('width', {\n easing: theme.transitions.easing.sharp,\n duration: theme.transitions.duration.enteringScreen\n }),\n height: '100vh'\n },\n drawerPaperClose: {\n overflowX: 'hidden',\n transition: theme.transitions.create('width', {\n easing: theme.transitions.easing.sharp,\n duration: theme.transitions.duration.leavingScreen\n }),\n width: theme.spacing(7),\n [theme.breakpoints.up('md')]: {\n width: theme.spacing(9)\n },\n height: '100vh'\n },\n nested: {\n paddingLeft: theme.spacing(4)\n },\n appListItem: {\n backgroundColor: theme.palette.primary.light,\n color: theme.palette.getContrastText(theme.palette.primary.light)\n },\n appListLogo: {\n marginRight: theme.spacing(2),\n width: '3.6rem',\n filter: 'var(--svg-color)'\n },\n appListIcon: {\n color: theme.palette.getContrastText(theme.palette.primary.light)\n },\n appListDiv: {\n backgroundColor: theme.palette.primary.light,\n color: theme.palette.getContrastText(theme.palette.primary.light),\n paddingTop: theme.spacing(2),\n paddingBottom: theme.spacing(2),\n display: 'flex',\n alignItems: 'center',\n justifyContent: 'center'\n },\n applicationLabel: {\n whiteSpace: 'initial'\n }\n}));\n\nexport default function NavBar(props: NavBarProps) {\n const { pConn, pages = [], caseTypes = [] } = props;\n\n const classes = useStyles();\n const theme = useTheme();\n const isDesktop = useMediaQuery(theme.breakpoints.up('md'));\n\n const { open, setOpen } = useNavBar();\n const [navPages, setNavPages] = useState(JSON.parse(JSON.stringify(pages)));\n const [bShowCaseTypes, setBShowCaseTypes] = useState(true);\n const [bShowOperatorButtons, setBShowOperatorButtons] = useState(false);\n const [anchorEl, setAnchorEl] = useState(null);\n const localeUtils = PCore.getLocaleUtils();\n\n const localizedVal = PCore.getLocaleUtils().getLocaleValue;\n const localeCategory = 'AppShell';\n\n const portalLogoImage = Utils.getIconPath(Utils.getSDKStaticConentUrl()).concat('pzpega-logo-mark.svg');\n const portalOperator = PCore.getEnvironmentInfo().getOperatorName();\n const portalApp = PCore.getEnvironmentInfo().getApplicationLabel();\n\n useEffect(() => {\n setNavPages(JSON.parse(JSON.stringify(pages)));\n }, [pages]);\n\n function navPanelButtonClick(oPageData: any) {\n const { pyClassName, pyRuleName } = oPageData;\n\n pConn\n .getActionsApi()\n .showPage(pyRuleName, pyClassName)\n .then(() => {\n console.log(`${localizedVal('showPage completed', localeCategory)}`);\n });\n }\n\n function navPanelCreateCaseType(sCaseType: string, sFlowType: string) {\n setOpen(false);\n const actionInfo = {\n containerName: 'primary',\n flowType: sFlowType || 'pyStartCase'\n };\n\n pConn\n .getActionsApi()\n .createWork(sCaseType, actionInfo)\n .then(() => {\n console.log(`${localizedVal('createWork completed', localeCategory)}`);\n });\n }\n\n // Toggle showing the Operator buttons\n function navPanelOperatorButtonClick(evt) {\n setBShowOperatorButtons(!bShowOperatorButtons);\n if (!bShowOperatorButtons) setAnchorEl(evt.currentTarget);\n else setAnchorEl(null);\n }\n\n const handleDrawerOpen = () => {\n setOpen(!open);\n };\n\n const handleCaseItemClick = () => {\n if (!open) {\n setOpen(true);\n setBShowCaseTypes(true);\n } else setBShowCaseTypes(!bShowCaseTypes);\n };\n\n useEffect(() => {\n if (!isDesktop) setOpen(false);\n else setOpen(true);\n }, [isDesktop]);\n\n return (\n <Drawer\n variant='permanent'\n classes={{\n paper: clsx(classes.drawerPaper, !open && classes.drawerPaperClose)\n }}\n open={open && isDesktop}\n >\n {open ? (\n <List className={classes.appListItem}>\n <ListItem\n onClick={handleDrawerOpen}\n secondaryAction={\n <IconButton edge='end' onClick={handleDrawerOpen} size='large'>\n <ChevronLeftIcon className={classes.appListIcon} />\n </IconButton>\n }\n >\n <ListItemIcon>\n <img src={portalLogoImage} className={classes.appListLogo} />\n </ListItemIcon>\n <ListItemText\n primary={\n <Typography variant='h6' className={classes.applicationLabel}>\n {portalApp}\n </Typography>\n }\n />\n </ListItem>\n </List>\n ) : (\n <div className={classes.appListDiv} onClick={handleDrawerOpen}>\n <ChevronRightIcon className={classes.appListIcon} id='chevron-right-icon' fontSize='large' />\n </div>\n )}\n <List>\n <ListItemButton onClick={handleCaseItemClick}>\n <ListItemIcon>{bShowCaseTypes && open ? <ClearOutlinedIcon fontSize='large' /> : <AddIcon fontSize='large' />}</ListItemIcon>\n <ListItemText primary='Create' />\n {bShowCaseTypes ? <ExpandLess /> : <ExpandMore />}\n </ListItemButton>\n </List>\n <Collapse in={bShowCaseTypes && open} timeout='auto' unmountOnExit className='scrollable'>\n <List component='div' disablePadding>\n {caseTypes.map(caseType => (\n <ListItemButton\n className={classes.nested}\n onClick={() => navPanelCreateCaseType(caseType.pyClassName, caseType.pyFlowType)}\n key={caseType.pyLabel}\n >\n <ListItemIcon>\n <WorkOutlineIcon fontSize='large' />\n </ListItemIcon>\n <ListItemText primary={localeUtils.getLocaleValue(caseType.pyLabel, '', localeUtils.getCaseLocaleReference(caseType.pyClassName))} />\n </ListItemButton>\n ))}\n </List>\n </Collapse>\n <List>\n {navPages.map(page => (\n <ListItemButton onClick={() => navPanelButtonClick(page)} key={page.pyLabel}>\n <ListItemIcon>{iconMap[page.pxPageViewIcon]}</ListItemIcon>\n <ListItemText primary={localeUtils.getLocaleValue(page.pyLabel, '', localeUtils.getCaseLocaleReference(page.pyClassName))} />\n </ListItemButton>\n ))}\n </List>\n <Divider />\n <List className='marginTopAuto'>\n <>\n <ListItem\n onClick={navPanelOperatorButtonClick}\n secondaryAction={\n open ? (\n <IconButton edge='end' onClick={navPanelOperatorButtonClick} size='large'>\n <ChevronRightIcon />\n </IconButton>\n ) : null\n }\n >\n <ListItemIcon id='person-icon'>\n <PersonOutlineIcon fontSize='large' />\n </ListItemIcon>\n <ListItemText primary={portalOperator} />\n </ListItem>\n <Menu\n anchorEl={anchorEl}\n keepMounted={bShowOperatorButtons}\n open={bShowOperatorButtons}\n onClick={navPanelOperatorButtonClick}\n anchorOrigin={{\n vertical: 'top',\n horizontal: 'right'\n }}\n transformOrigin={{\n vertical: 'top',\n horizontal: 'left'\n }}\n >\n <MenuItem onClick={logout}>\n <ListItemIcon>\n <ArrowBackIcon fontSize='large' />\n </ListItemIcon>\n <Typography variant='inherit'>{localizedVal('Log off', localeCategory)}</Typography>\n </MenuItem>\n </Menu>\n </>\n </List>\n </Drawer>\n );\n}\n"]}
1
+ {"version":3,"file":"NavBar.js","sourceRoot":"","sources":["../../../../src/components/infra/NavBar/NavBar.tsx"],"names":[],"mappings":"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","sourcesContent":["import { useEffect, useState } from 'react';\nimport { useTheme } from '@mui/material/styles';\nimport makeStyles from '@mui/styles/makeStyles';\nimport clsx from 'clsx';\n\nimport {\n Drawer,\n List,\n ListItem,\n ListItemButton,\n ListItemIcon,\n ListItemText,\n Collapse,\n Divider,\n IconButton,\n Menu,\n MenuItem,\n Typography\n} from '@mui/material';\nimport PersonOutlineIcon from '@mui/icons-material/PersonOutlineOutlined';\nimport ChevronLeftIcon from '@mui/icons-material/ChevronLeft';\nimport ChevronRightIcon from '@mui/icons-material/ChevronRight';\nimport FlagOutlinedIcon from '@mui/icons-material/FlagOutlined';\nimport HomeOutlinedIcon from '@mui/icons-material/HomeOutlined';\nimport TabletAndroidOutlineIcon from '@mui/icons-material/TabletAndroidOutlined';\nimport AirportShuttleOutlinedIcon from '@mui/icons-material/AirportShuttleOutlined';\nimport EditOutlinedIcon from '@mui/icons-material/EditOutlined';\nimport ExpandLess from '@mui/icons-material/ExpandLess';\nimport ExpandMore from '@mui/icons-material/ExpandMore';\nimport AddIcon from '@mui/icons-material/Add';\nimport WorkOutlineIcon from '@mui/icons-material/WorkOutline';\nimport ClearOutlinedIcon from '@mui/icons-material/ClearOutlined';\nimport ArrowBackIcon from '@mui/icons-material/ArrowBack';\nimport useMediaQuery from '@mui/material/useMediaQuery';\nimport { logout } from '@pega/auth/lib/sdk-auth-manager';\n\nimport { useNavBar } from '../../helpers/reactContextHelpers';\nimport { Utils } from '../../helpers/utils';\nimport type { PConnProps } from '../../../types/PConnProps';\n\nimport './NavBar.css';\n\ninterface NavBarProps extends PConnProps {\n // If any, enter additional props that only exist on this component\n\n appName?: string;\n pages?: any[];\n caseTypes: any[];\n pConn?: any;\n}\n\nconst iconMap = {\n 'pi pi-headline': <HomeOutlinedIcon fontSize='large' />,\n 'pi pi-flag-solid': <FlagOutlinedIcon fontSize='large' />,\n 'pi pi-home-solid': <HomeOutlinedIcon fontSize='large' />,\n 'pi pi-tablet': <TabletAndroidOutlineIcon fontSize='large' />,\n 'pi pi-ambulance': <AirportShuttleOutlinedIcon fontSize='large' />,\n 'pi pi-ink-solid': <EditOutlinedIcon fontSize='large' />,\n 'pi pi-columns': <HomeOutlinedIcon fontSize='large' />\n};\n\nconst drawerWidth = 300;\n\nconst useStyles = makeStyles(theme => ({\n drawerPaper: {\n position: 'relative',\n whiteSpace: 'nowrap',\n width: drawerWidth,\n transition: theme.transitions.create('width', {\n easing: theme.transitions.easing.sharp,\n duration: theme.transitions.duration.enteringScreen\n }),\n height: '100vh'\n },\n drawerPaperClose: {\n overflowX: 'hidden',\n transition: theme.transitions.create('width', {\n easing: theme.transitions.easing.sharp,\n duration: theme.transitions.duration.leavingScreen\n }),\n width: theme.spacing(7),\n [theme.breakpoints.up('md')]: {\n width: theme.spacing(9)\n },\n height: '100vh'\n },\n nested: {\n paddingLeft: theme.spacing(4)\n },\n appListItem: {\n backgroundColor: theme.palette.primary.light,\n color: theme.palette.getContrastText(theme.palette.primary.light)\n },\n appListLogo: {\n marginRight: theme.spacing(2),\n width: '3.6rem',\n filter: 'var(--svg-color)'\n },\n appListIcon: {\n color: theme.palette.getContrastText(theme.palette.primary.light)\n },\n appListDiv: {\n backgroundColor: theme.palette.primary.light,\n color: theme.palette.getContrastText(theme.palette.primary.light),\n paddingTop: theme.spacing(2),\n paddingBottom: theme.spacing(2),\n display: 'flex',\n alignItems: 'center',\n justifyContent: 'center'\n },\n applicationLabel: {\n whiteSpace: 'initial'\n }\n}));\n\nexport default function NavBar(props: NavBarProps) {\n const { pConn, pages = [], caseTypes = [] } = props;\n\n const classes = useStyles();\n const theme = useTheme();\n const isDesktop = useMediaQuery(theme.breakpoints.up('md'));\n\n const { open, setOpen } = useNavBar();\n const [navPages, setNavPages] = useState(JSON.parse(JSON.stringify(pages)));\n const [bShowCaseTypes, setBShowCaseTypes] = useState(true);\n const [bShowOperatorButtons, setBShowOperatorButtons] = useState(false);\n const [anchorEl, setAnchorEl] = useState(null);\n const localeUtils = PCore.getLocaleUtils();\n\n const localizedVal = PCore.getLocaleUtils().getLocaleValue;\n const localeCategory = 'AppShell';\n\n const portalLogoImage = Utils.getIconPath(Utils.getSDKStaticConentUrl()).concat('pzpega-logo-mark.svg');\n const portalOperator = PCore.getEnvironmentInfo().getOperatorName();\n const portalApp = PCore.getEnvironmentInfo().getApplicationLabel();\n // @ts-ignore\n const localeReference = PCore.getLocaleUtils().getPortalLocaleReference() || pConn.getValue('.pyLocaleReference');\n useEffect(() => {\n const updatedPages = pages.map((page: any) => {\n const destinationObject: any = {};\n pConn.resolveConfigProps(\n { defaultHeading: page.pyDefaultHeading || page.pyLabel, localeReference: page.pyLocalizationReference },\n destinationObject\n );\n const name = localeUtils.getLocaleValue(destinationObject.defaultHeading, '', destinationObject.localeReference || localeReference);\n return { ...page, name };\n });\n setNavPages(updatedPages);\n }, [pages]);\n\n function navPanelButtonClick(oPageData: any) {\n const { pyClassName, pyRuleName } = oPageData;\n\n pConn\n .getActionsApi()\n .showPage(pyRuleName, pyClassName)\n .then(() => {\n console.log(`${localizedVal('showPage completed', localeCategory)}`);\n });\n }\n\n function navPanelCreateCaseType(sCaseType: string, sFlowType: string) {\n setOpen(false);\n const actionInfo = {\n containerName: 'primary',\n flowType: sFlowType || 'pyStartCase'\n };\n\n pConn\n .getActionsApi()\n .createWork(sCaseType, actionInfo)\n .then(() => {\n console.log(`${localizedVal('createWork completed', localeCategory)}`);\n });\n }\n\n // Toggle showing the Operator buttons\n function navPanelOperatorButtonClick(evt) {\n setBShowOperatorButtons(!bShowOperatorButtons);\n if (!bShowOperatorButtons) setAnchorEl(evt.currentTarget);\n else setAnchorEl(null);\n }\n\n const handleDrawerOpen = () => {\n setOpen(!open);\n };\n\n const handleCaseItemClick = () => {\n if (!open) {\n setOpen(true);\n setBShowCaseTypes(true);\n } else setBShowCaseTypes(!bShowCaseTypes);\n };\n\n useEffect(() => {\n if (!isDesktop) setOpen(false);\n else setOpen(true);\n }, [isDesktop]);\n\n return (\n <Drawer\n variant='permanent'\n classes={{\n paper: clsx(classes.drawerPaper, !open && classes.drawerPaperClose)\n }}\n open={open && isDesktop}\n >\n {open ? (\n <List className={classes.appListItem}>\n <ListItem\n onClick={handleDrawerOpen}\n secondaryAction={\n <IconButton edge='end' onClick={handleDrawerOpen} size='large'>\n <ChevronLeftIcon className={classes.appListIcon} />\n </IconButton>\n }\n >\n <ListItemIcon>\n <img src={portalLogoImage} className={classes.appListLogo} />\n </ListItemIcon>\n <ListItemText\n primary={\n <Typography variant='h6' className={classes.applicationLabel}>\n {portalApp}\n </Typography>\n }\n />\n </ListItem>\n </List>\n ) : (\n <div className={classes.appListDiv} onClick={handleDrawerOpen}>\n <ChevronRightIcon className={classes.appListIcon} id='chevron-right-icon' fontSize='large' />\n </div>\n )}\n <List>\n <ListItemButton onClick={handleCaseItemClick}>\n <ListItemIcon>{bShowCaseTypes && open ? <ClearOutlinedIcon fontSize='large' /> : <AddIcon fontSize='large' />}</ListItemIcon>\n <ListItemText primary='Create' />\n {bShowCaseTypes ? <ExpandLess /> : <ExpandMore />}\n </ListItemButton>\n </List>\n <Collapse in={bShowCaseTypes && open} timeout='auto' unmountOnExit className='scrollable'>\n <List component='div' disablePadding>\n {caseTypes.map(caseType => (\n <ListItemButton\n className={classes.nested}\n onClick={() => navPanelCreateCaseType(caseType.pyClassName, caseType.pyFlowType)}\n key={caseType.pyLabel}\n >\n <ListItemIcon>\n <WorkOutlineIcon fontSize='large' />\n </ListItemIcon>\n <ListItemText primary={localeUtils.getLocaleValue(caseType.pyLabel, '', localeUtils.getCaseLocaleReference(caseType.pyClassName))} />\n </ListItemButton>\n ))}\n </List>\n </Collapse>\n <List>\n {navPages.map(page => (\n <ListItemButton onClick={() => navPanelButtonClick(page)} key={page.pyLabel}>\n <ListItemIcon>{iconMap[page.pxPageViewIcon]}</ListItemIcon>\n <ListItemText primary={page.name} />\n </ListItemButton>\n ))}\n </List>\n <Divider />\n <List className='marginTopAuto'>\n <>\n <ListItem\n onClick={navPanelOperatorButtonClick}\n secondaryAction={\n open ? (\n <IconButton edge='end' onClick={navPanelOperatorButtonClick} size='large'>\n <ChevronRightIcon />\n </IconButton>\n ) : null\n }\n >\n <ListItemIcon id='person-icon'>\n <PersonOutlineIcon fontSize='large' />\n </ListItemIcon>\n <ListItemText primary={portalOperator} />\n </ListItem>\n <Menu\n anchorEl={anchorEl}\n keepMounted={bShowOperatorButtons}\n open={bShowOperatorButtons}\n onClick={navPanelOperatorButtonClick}\n anchorOrigin={{\n vertical: 'top',\n horizontal: 'right'\n }}\n transformOrigin={{\n vertical: 'top',\n horizontal: 'left'\n }}\n >\n <MenuItem onClick={logout}>\n <ListItemIcon>\n <ArrowBackIcon fontSize='large' />\n </ListItemIcon>\n <Typography variant='inherit'>{localizedVal('Log off', localeCategory)}</Typography>\n </MenuItem>\n </Menu>\n </>\n </List>\n </Drawer>\n );\n}\n"]}
@@ -1 +1 @@
1
- {"version":3,"file":"Stages.d.ts","sourceRoot":"","sources":["../../../../src/components/infra/Stages/Stages.tsx"],"names":[],"mappings":"AAKA,OAAO,KAAK,EAAE,UAAU,EAAE,MAAM,2BAA2B,CAAC;AAE5D,UAAU,WAAY,SAAQ,UAAU;IAEtC,MAAM,EAAE,GAAG,EAAE,CAAC;CACf;AA4CD,MAAM,CAAC,OAAO,UAAU,MAAM,CAAC,KAAK,EAAE,WAAW,2CA+DhD"}
1
+ {"version":3,"file":"Stages.d.ts","sourceRoot":"","sources":["../../../../src/components/infra/Stages/Stages.tsx"],"names":[],"mappings":"AAKA,OAAO,KAAK,EAAE,UAAU,EAAE,MAAM,2BAA2B,CAAC;AAE5D,UAAU,WAAY,SAAQ,UAAU;IAEtC,MAAM,EAAE,GAAG,EAAE,CAAC;CACf;AA4CD,MAAM,CAAC,OAAO,UAAU,MAAM,CAAC,KAAK,EAAE,WAAW,2CA8DhD"}
@@ -46,13 +46,13 @@ export default function Stages(props) {
46
46
  const classes = useStyles();
47
47
  const { getPConnect, stages } = props;
48
48
  const pConn = getPConnect();
49
- const key = getPConnect()?.getCaseLocaleReference();
49
+ const localizationService = pConn.getLocalizationService();
50
50
  const filteredStages = getFilteredStages(stages);
51
51
  const currentStageID = pConn.getValue(PCore.getConstants().CASE_INFO.STAGEID, ''); // 2nd arg empty string until typedef allows optional
52
52
  const stagesObj = filteredStages.map((stage, index, arr) => {
53
53
  const theID = stage.ID || stage.id;
54
54
  return {
55
- name: PCore.getLocaleUtils().getLocaleValue(stage.name, undefined, key),
55
+ name: localizationService.getLocalizedText(stage.name),
56
56
  id: theID,
57
57
  complete: stage.visited_status === 'completed',
58
58
  current: theID === currentStageID,
@@ -1 +1 @@
1
- {"version":3,"file":"Stages.js","sourceRoot":"","sources":["../../../../src/components/infra/Stages/Stages.tsx"],"names":[],"mappings":"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","sourcesContent":["import { Breadcrumbs, Card, Typography } from '@mui/material';\nimport DoubleArrowIcon from '@mui/icons-material/DoubleArrow';\nimport DoneIcon from '@mui/icons-material/Done';\nimport makeStyles from '@mui/styles/makeStyles';\n\nimport type { PConnProps } from '../../../types/PConnProps';\n\ninterface StagesProps extends PConnProps {\n // If any, enter additional props that only exist on this component\n stages: any[];\n}\n\nconst useStyles = makeStyles(theme => ({\n root: {\n paddingRight: theme.spacing(1),\n paddingLeft: theme.spacing(1),\n paddingTop: theme.spacing(1),\n paddingBottom: theme.spacing(1),\n marginRight: theme.spacing(1),\n marginLeft: theme.spacing(1),\n marginTop: theme.spacing(1),\n marginBottom: theme.spacing(1)\n },\n completedStage: {\n color: theme.palette.text.primary\n },\n currentStage: {\n color: theme.palette.info.dark,\n fontWeight: 600\n },\n futureStage: {\n color: theme.palette.text.secondary\n },\n separatorIcon: {\n color: theme.palette.text.disabled\n }\n}));\n\n/**\n * API to filter out the alternate stages which are not in active and return all other stages\n * @param {Array} stages - Stages of a case type\n *\n * @returns {Array} - Returns stages which are non alternate stages and alternate stage which is active.\n */\nfunction getFilteredStages(stages) {\n if (!Array.isArray(stages)) {\n return [];\n }\n\n return stages.filter(stage => stage.type !== 'Alternate' || (stage.type === 'Alternate' && stage.visited_status === 'active'));\n}\n\n/* TODO - this component should be refactored and not exposed as top level DX Component -\n the stages should be created as part of the CaseView */\nexport default function Stages(props: StagesProps) {\n const classes = useStyles();\n\n const { getPConnect, stages } = props;\n const pConn = getPConnect();\n const key = getPConnect()?.getCaseLocaleReference();\n\n const filteredStages = getFilteredStages(stages);\n const currentStageID = pConn.getValue(PCore.getConstants().CASE_INFO.STAGEID, ''); // 2nd arg empty string until typedef allows optional\n const stagesObj = filteredStages.map((stage, index, arr) => {\n const theID = stage.ID || stage.id;\n return {\n name: PCore.getLocaleUtils().getLocaleValue(stage.name, undefined, key),\n id: theID,\n complete: stage.visited_status === 'completed',\n current: theID === currentStageID,\n last: index === arr.length - 1\n };\n });\n\n // debugging/investigation help\n // console.log(`Stages: current: ${currentStageID} stagesObj: ${JSON.stringify(stagesObj)}`);\n\n function getStage(stage, index) {\n // Removing nested ternary for lint\n // const theClass = stage.current ? classes.currentStage : (stage.complete ? classes.completedStage : classes.futureStage);\n let theClass;\n if (stage.current) {\n theClass = classes.currentStage;\n } else if (stage.complete) {\n theClass = classes.completedStage;\n } else {\n theClass = classes.futureStage;\n }\n\n return (\n <span key={index}>\n {stage.complete ? <DoneIcon color='disabled' fontSize='small' /> : null}\n <Typography variant='h5' component='span' display='inline' className={theClass}>\n {stage.name}\n </Typography>\n </span>\n );\n }\n\n function getStages(inStages) {\n return (\n <Breadcrumbs aria-label='stages' separator={<DoubleArrowIcon className={classes.separatorIcon} />}>\n {inStages.map((stage, index) => {\n return getStage(stage, index);\n })}\n </Breadcrumbs>\n );\n }\n\n return (\n <Card id='Stages' className={classes.root}>\n {/* Stages<br />\n currentStageID: {currentStageID}<br />\n {JSON.stringify(stagesObj)}<br /><br /> */}\n {getStages(stagesObj)}\n </Card>\n );\n}\n"]}
1
+ {"version":3,"file":"Stages.js","sourceRoot":"","sources":["../../../../src/components/infra/Stages/Stages.tsx"],"names":[],"mappings":"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","sourcesContent":["import { Breadcrumbs, Card, Typography } from '@mui/material';\nimport DoubleArrowIcon from '@mui/icons-material/DoubleArrow';\nimport DoneIcon from '@mui/icons-material/Done';\nimport makeStyles from '@mui/styles/makeStyles';\n\nimport type { PConnProps } from '../../../types/PConnProps';\n\ninterface StagesProps extends PConnProps {\n // If any, enter additional props that only exist on this component\n stages: any[];\n}\n\nconst useStyles = makeStyles(theme => ({\n root: {\n paddingRight: theme.spacing(1),\n paddingLeft: theme.spacing(1),\n paddingTop: theme.spacing(1),\n paddingBottom: theme.spacing(1),\n marginRight: theme.spacing(1),\n marginLeft: theme.spacing(1),\n marginTop: theme.spacing(1),\n marginBottom: theme.spacing(1)\n },\n completedStage: {\n color: theme.palette.text.primary\n },\n currentStage: {\n color: theme.palette.info.dark,\n fontWeight: 600\n },\n futureStage: {\n color: theme.palette.text.secondary\n },\n separatorIcon: {\n color: theme.palette.text.disabled\n }\n}));\n\n/**\n * API to filter out the alternate stages which are not in active and return all other stages\n * @param {Array} stages - Stages of a case type\n *\n * @returns {Array} - Returns stages which are non alternate stages and alternate stage which is active.\n */\nfunction getFilteredStages(stages) {\n if (!Array.isArray(stages)) {\n return [];\n }\n\n return stages.filter(stage => stage.type !== 'Alternate' || (stage.type === 'Alternate' && stage.visited_status === 'active'));\n}\n\n/* TODO - this component should be refactored and not exposed as top level DX Component -\n the stages should be created as part of the CaseView */\nexport default function Stages(props: StagesProps) {\n const classes = useStyles();\n\n const { getPConnect, stages } = props;\n const pConn = getPConnect();\n const localizationService = pConn.getLocalizationService();\n const filteredStages = getFilteredStages(stages);\n const currentStageID = pConn.getValue(PCore.getConstants().CASE_INFO.STAGEID, ''); // 2nd arg empty string until typedef allows optional\n const stagesObj = filteredStages.map((stage, index, arr) => {\n const theID = stage.ID || stage.id;\n return {\n name: localizationService.getLocalizedText(stage.name),\n id: theID,\n complete: stage.visited_status === 'completed',\n current: theID === currentStageID,\n last: index === arr.length - 1\n };\n });\n\n // debugging/investigation help\n // console.log(`Stages: current: ${currentStageID} stagesObj: ${JSON.stringify(stagesObj)}`);\n\n function getStage(stage, index) {\n // Removing nested ternary for lint\n // const theClass = stage.current ? classes.currentStage : (stage.complete ? classes.completedStage : classes.futureStage);\n let theClass;\n if (stage.current) {\n theClass = classes.currentStage;\n } else if (stage.complete) {\n theClass = classes.completedStage;\n } else {\n theClass = classes.futureStage;\n }\n\n return (\n <span key={index}>\n {stage.complete ? <DoneIcon color='disabled' fontSize='small' /> : null}\n <Typography variant='h5' component='span' display='inline' className={theClass}>\n {stage.name}\n </Typography>\n </span>\n );\n }\n\n function getStages(inStages) {\n return (\n <Breadcrumbs aria-label='stages' separator={<DoubleArrowIcon className={classes.separatorIcon} />}>\n {inStages.map((stage, index) => {\n return getStage(stage, index);\n })}\n </Breadcrumbs>\n );\n }\n\n return (\n <Card id='Stages' className={classes.root}>\n {/* Stages<br />\n currentStageID: {currentStageID}<br />\n {JSON.stringify(stagesObj)}<br /><br /> */}\n {getStages(stagesObj)}\n </Card>\n );\n}\n"]}
@@ -1 +1 @@
1
- {"version":3,"file":"CaseView.d.ts","sourceRoot":"","sources":["../../../../src/components/template/CaseView/CaseView.tsx"],"names":[],"mappings":"AAAA,OAAO,EAAE,KAAK,iBAAiB,EAAsD,MAAM,OAAO,CAAC;AAUnG,OAAO,KAAK,EAAE,UAAU,EAAE,MAAM,2BAA2B,CAAC;AAE5D,UAAU,aAAc,SAAQ,UAAU;IAExC,IAAI,EAAE,MAAM,CAAC;IACb,SAAS,EAAE,MAAM,CAAC;IAClB,MAAM,EAAE,MAAM,CAAC;IACf,gBAAgB,EAAE,OAAO,CAAC;IAC1B,QAAQ,EAAE,GAAG,CAAC;IACd,kBAAkB,EAAE,GAAG,CAAC;CACzB;AA0BD,MAAM,CAAC,OAAO,UAAU,QAAQ,CAAC,KAAK,EAAE,iBAAiB,CAAC,aAAa,CAAC,2CAqNvE"}
1
+ {"version":3,"file":"CaseView.d.ts","sourceRoot":"","sources":["../../../../src/components/template/CaseView/CaseView.tsx"],"names":[],"mappings":"AAAA,OAAO,EAAE,KAAK,iBAAiB,EAAsD,MAAM,OAAO,CAAC;AAUnG,OAAO,KAAK,EAAE,UAAU,EAAE,MAAM,2BAA2B,CAAC;AAE5D,UAAU,aAAc,SAAQ,UAAU;IAExC,IAAI,EAAE,MAAM,CAAC;IACb,SAAS,EAAE,MAAM,CAAC;IAClB,MAAM,EAAE,MAAM,CAAC;IACf,gBAAgB,EAAE,OAAO,CAAC;IAC1B,QAAQ,EAAE,GAAG,CAAC;IACd,kBAAkB,EAAE,GAAG,CAAC;CACzB;AA0BD,MAAM,CAAC,OAAO,UAAU,QAAQ,CAAC,KAAK,EAAE,iBAAiB,CAAC,aAAa,CAAC,2CAsNvE"}
@@ -45,8 +45,8 @@ export default function CaseView(props) {
45
45
  const classes = useStyles();
46
46
  const editAction = availableActions.find(action => action.ID === 'pyUpdateCaseDetails');
47
47
  const localizedVal = PCore.getLocaleUtils().getLocaleValue;
48
+ const localizationService = thePConn.getLocalizationService();
48
49
  const localeCategory = 'CaseView';
49
- const localeKey = thePConn?.getCaseLocaleReference();
50
50
  /**
51
51
  *
52
52
  * @param inName the metadata <em>name</em> that will cause a region to be returned
@@ -140,7 +140,7 @@ export default function CaseView(props) {
140
140
  function getContainerContents() {
141
141
  if (!displayOnlyFA) {
142
142
  // show full portal
143
- return (_jsxs(Grid2, { container: true, children: [_jsxs(Grid2, { size: { xs: 3 }, children: [_jsx("div", { hidden: true, id: 'current-caseID', children: currentCaseID }), _jsxs(Card, { className: classes.root, children: [_jsx(CardHeader, { className: classes.caseViewHeader, title: _jsx(Typography, { variant: 'h6', component: 'div', id: 'case-name', children: PCore.getLocaleUtils().getLocaleValue(header, '', localeKey) }), subheader: _jsx(Typography, { variant: 'body1', component: 'div', id: 'caseId', children: subheader }), avatar: _jsx(Avatar, { className: classes.caseViewIconBox, variant: 'square', children: _jsx("img", { src: caseSvgIconUrl }) }) }), getActionButtonsHtml(), _jsx(Divider, {}), theSummaryRegion, _jsx(Divider, {}), vertTabInfo.length > 1 && _jsx(VerticalTabs, { tabconfig: vertTabInfo })] })] }), _jsxs(Grid2, { size: { xs: 6 }, children: [theStagesRegion, theTodoRegion, deferLoadInfo.length > 0 && (_jsx(DeferLoad, { getPConnect: getPConnect, name: deferLoadInfo[activeVertTab].config.name, isTab: true, lastUpdateCaseTime: lastUpdateCaseTime }))] }), _jsx(Grid2, { size: { xs: 3 }, children: theUtilitiesRegion })] }));
143
+ return (_jsxs(Grid2, { container: true, children: [_jsxs(Grid2, { size: { xs: 3 }, children: [_jsx("div", { hidden: true, id: 'current-caseID', children: currentCaseID }), _jsxs(Card, { className: classes.root, children: [_jsx(CardHeader, { className: classes.caseViewHeader, title: _jsx(Typography, { variant: 'h6', component: 'div', id: 'case-name', children: localizationService.getLocalizedText(header) }), subheader: _jsx(Typography, { variant: 'body1', component: 'div', id: 'caseId', children: subheader }), avatar: _jsx(Avatar, { className: classes.caseViewIconBox, variant: 'square', children: _jsx("img", { src: caseSvgIconUrl }) }) }), getActionButtonsHtml(), _jsx(Divider, {}), theSummaryRegion, _jsx(Divider, {}), vertTabInfo.length > 1 && _jsx(VerticalTabs, { tabconfig: vertTabInfo })] })] }), _jsxs(Grid2, { size: { xs: 6 }, children: [theStagesRegion, theTodoRegion, deferLoadInfo.length > 0 && (_jsx(DeferLoad, { getPConnect: getPConnect, name: deferLoadInfo[activeVertTab].config.name, isTab: true, lastUpdateCaseTime: lastUpdateCaseTime }))] }), _jsx(Grid2, { size: { xs: 3 }, children: theUtilitiesRegion })] }));
144
144
  }
145
145
  // displayOnlyFA - only show the "todo" region
146
146
  return (_jsx(Grid2, { container: true, children: _jsx(Grid2, { size: { xs: 12 }, children: theTodoRegion }) }));
@@ -1 +1 @@
1
- {"version":3,"file":"CaseView.js","sourceRoot":"","sources":["../../../../src/components/template/CaseView/CaseView.tsx"],"names":[],"mappings":"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","sourcesContent":["import { type PropsWithChildren, type ReactElement, useContext, useEffect, useState } from 'react';\nimport { Avatar, Card, CardHeader, Divider, Typography } from '@mui/material';\nimport makeStyles from '@mui/styles/makeStyles';\nimport Box from '@mui/material/Box';\nimport Button from '@mui/material/Button';\nimport Grid2 from '@mui/material/Grid2';\n\nimport { Utils } from '../../helpers/utils';\nimport StoreContext from '../../../bridge/Context/StoreContext';\nimport { getComponentFromMap } from '../../../bridge/helpers/sdk_component_map';\nimport type { PConnProps } from '../../../types/PConnProps';\n\ninterface CaseViewProps extends PConnProps {\n // If any, enter additional props that only exist on this component\n icon: string;\n subheader: string;\n header: string;\n showIconInHeader: boolean;\n caseInfo: any;\n lastUpdateCaseTime: any;\n}\n\nconst useStyles = makeStyles(theme => ({\n root: {\n paddingRight: theme.spacing(1),\n paddingLeft: theme.spacing(1),\n paddingTop: theme.spacing(1),\n paddingBottom: theme.spacing(1),\n marginRight: theme.spacing(1),\n marginLeft: theme.spacing(1),\n marginTop: theme.spacing(1),\n marginBottom: theme.spacing(1)\n },\n caseViewHeader: {\n backgroundColor: theme.palette.info.light,\n color: theme.palette.getContrastText(theme.palette.info.light),\n borderRadius: 'inherit'\n },\n caseViewIconBox: {\n backgroundColor: theme.palette.info.dark,\n width: theme.spacing(8),\n height: theme.spacing(8),\n padding: theme.spacing(1)\n }\n}));\n\nexport default function CaseView(props: PropsWithChildren<CaseViewProps>) {\n // Get emitted components from map (so we can get any override that may exist)\n const CaseViewActionsMenu = getComponentFromMap('CaseViewActionsMenu');\n const VerticalTabs = getComponentFromMap('VerticalTabs');\n const DeferLoad = getComponentFromMap('DeferLoad');\n\n const {\n getPConnect,\n icon = '',\n header,\n subheader,\n children = [],\n caseInfo: { availableActions = [], availableProcesses = [], hasNewAttachments, caseTypeID = '', caseTypeName = '', caseTypeIcon }\n } = props;\n const { lastUpdateCaseTime = getPConnect().getValue('caseInfo.lastUpdateTime') } = props;\n const currentCaseID = props.caseInfo.ID;\n let isComponentMounted = true;\n const { displayOnlyFA } = useContext<any>(StoreContext);\n\n const thePConn = getPConnect();\n\n const classes = useStyles();\n\n const editAction = availableActions.find(action => action.ID === 'pyUpdateCaseDetails');\n\n const localizedVal = PCore.getLocaleUtils().getLocaleValue;\n const localeCategory = 'CaseView';\n const localeKey = thePConn?.getCaseLocaleReference();\n /**\n *\n * @param inName the metadata <em>name</em> that will cause a region to be returned\n */\n function getChildRegionByName(inName: string): any {\n for (const child of children as ReactElement[]) {\n const theMetadataType: string = (child as ReactElement).props.getPConnect().getRawMetadata().type?.toLowerCase();\n const theMetadataName: string = (child as ReactElement).props.getPConnect().getRawMetadata().name?.toLowerCase();\n if (theMetadataType === 'region' && theMetadataName === inName) {\n return child;\n }\n }\n\n return null;\n }\n\n const theSummaryRegion = getChildRegionByName('summary');\n const theStagesRegion = getChildRegionByName('stages');\n const theTodoRegion = getChildRegionByName('todo');\n const theUtilitiesRegion = getChildRegionByName('utilities');\n const theTabsRegion = getChildRegionByName('tabs');\n\n let iconForCaseType = caseTypeIcon ? caseTypeIcon.replace('pi pi-', '') : icon;\n\n if (!iconForCaseType || iconForCaseType.includes('.')) {\n iconForCaseType = 'polaris-solid';\n }\n const caseSvgIconUrl = Utils.getImageSrc(iconForCaseType, Utils.getSDKStaticConentUrl());\n\n const [activeVertTab, setActiveVertTab] = useState(0);\n\n // const tmpLoadData1 = { config: { label: \"Details\", name: \"pyDetailsTabContent\" }, type: \"DeferLoad\" };\n // const tmpLoadData2 = { config: { label: \"Case History\", name: \"CaseHistory\" }, type: \"DeferLoad\" };\n\n // Extract the tabs we need to display from theTabsRegion (one tab per entry in theTabsRegionChildren)\n const theTabsRegionChildren = theTabsRegion?.props.getPConnect().getChildren();\n\n // vertTabInfo is sent to VerticalTabs component\n const vertTabInfo: object[] = [];\n\n // deferLoadInfo is sent to DeferLoad component (currently selected entry)\n const deferLoadInfo: any[] = [];\n\n if (theTabsRegionChildren) {\n // populate vertTabInfo and deferLoadInfo\n theTabsRegionChildren.forEach((tabComp, index) => {\n const theTabCompConfig = tabComp.getPConnect().getConfigProps();\n // eslint-disable-next-line prefer-const\n let { label, inheritedProps } = theTabCompConfig;\n // For some tabs, \"label\" property is not avaialable in theTabCompConfig, so will get them from inheritedProps\n if (!label) {\n inheritedProps.forEach(inheritedProp => {\n if (inheritedProp.prop === 'label') {\n label = inheritedProp.value;\n }\n });\n }\n // We'll display the tabs when either visibility property doesn't exist or is true(if exists)\n if (theTabCompConfig.visibility === undefined || theTabCompConfig.visibility === true) {\n vertTabInfo.push({ name: label, id: index });\n deferLoadInfo.push({ type: 'DeferLoad', config: theTabCompConfig });\n }\n });\n }\n\n function handleVerticalTabClick(eventDetail: any) {\n const theItem = parseInt(eventDetail.additionalData.itemClicked, 10);\n\n // only call useEffectSetter if the component is mounted\n if (isComponentMounted) {\n setActiveVertTab(theItem);\n }\n }\n\n // Add and Remove event listener for VerticalTabClick only at startup and teardown\n useEffect(() => {\n document.addEventListener('VerticalTabClick', (event: any) => {\n handleVerticalTabClick(event.detail);\n });\n\n return (): void => {\n // inform that the component is unmounted so other code can\n // know not to try to call useState setters (to avoid console warnings)\n isComponentMounted = false;\n\n document.removeEventListener('VerticalTabClick', (event: any) => {\n handleVerticalTabClick(event.detail);\n });\n };\n }, []);\n\n useEffect(() => {\n if (hasNewAttachments) {\n PCore.getPubSubUtils().publish((PCore.getEvents().getCaseEvent() as any).CASE_ATTACHMENTS_UPDATED_FROM_CASEVIEW, true);\n }\n }, [hasNewAttachments]);\n\n function _editClick() {\n const actionsAPI = thePConn.getActionsApi();\n const openLocalAction = actionsAPI.openLocalAction.bind(actionsAPI);\n\n openLocalAction(editAction.ID, { ...editAction, containerName: 'modal', type: 'express' });\n }\n\n function getActionButtonsHtml(): any {\n return (\n <Box>\n {editAction && (\n <Button\n id='edit'\n onClick={() => {\n _editClick();\n }}\n >\n {localizedVal('Edit', localeCategory)}\n </Button>\n )}\n <CaseViewActionsMenu\n getPConnect={getPConnect}\n availableActions={availableActions}\n availableProcesses={availableProcesses}\n caseTypeName={caseTypeName}\n caseTypeID={caseTypeID}\n />\n </Box>\n );\n }\n\n function getContainerContents() {\n if (!displayOnlyFA) {\n // show full portal\n return (\n <Grid2 container>\n <Grid2 size={{ xs: 3 }}>\n <div hidden={true} id='current-caseID'>\n {currentCaseID}\n </div>\n <Card className={classes.root}>\n <CardHeader\n className={classes.caseViewHeader}\n title={\n <Typography variant='h6' component='div' id='case-name'>\n {PCore.getLocaleUtils().getLocaleValue(header, '', localeKey)}\n </Typography>\n }\n subheader={\n <Typography variant='body1' component='div' id='caseId'>\n {subheader}\n </Typography>\n }\n avatar={\n <Avatar className={classes.caseViewIconBox} variant='square'>\n <img src={caseSvgIconUrl} />\n </Avatar>\n }\n />\n {getActionButtonsHtml()}\n <Divider />\n {theSummaryRegion}\n <Divider />\n {vertTabInfo.length > 1 && <VerticalTabs tabconfig={vertTabInfo} />}\n </Card>\n </Grid2>\n\n <Grid2 size={{ xs: 6 }}>\n {theStagesRegion}\n {theTodoRegion}\n {deferLoadInfo.length > 0 && (\n <DeferLoad getPConnect={getPConnect} name={deferLoadInfo[activeVertTab].config.name} isTab lastUpdateCaseTime={lastUpdateCaseTime} />\n )}\n </Grid2>\n\n <Grid2 size={{ xs: 3 }}>{theUtilitiesRegion}</Grid2>\n </Grid2>\n );\n }\n // displayOnlyFA - only show the \"todo\" region\n return (\n <Grid2 container>\n <Grid2 size={{ xs: 12 }}>{theTodoRegion}</Grid2>\n </Grid2>\n );\n }\n\n return getContainerContents();\n}\n"]}
1
+ {"version":3,"file":"CaseView.js","sourceRoot":"","sources":["../../../../src/components/template/CaseView/CaseView.tsx"],"names":[],"mappings":"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","sourcesContent":["import { type PropsWithChildren, type ReactElement, useContext, useEffect, useState } from 'react';\nimport { Avatar, Card, CardHeader, Divider, Typography } from '@mui/material';\nimport makeStyles from '@mui/styles/makeStyles';\nimport Box from '@mui/material/Box';\nimport Button from '@mui/material/Button';\nimport Grid2 from '@mui/material/Grid2';\n\nimport { Utils } from '../../helpers/utils';\nimport StoreContext from '../../../bridge/Context/StoreContext';\nimport { getComponentFromMap } from '../../../bridge/helpers/sdk_component_map';\nimport type { PConnProps } from '../../../types/PConnProps';\n\ninterface CaseViewProps extends PConnProps {\n // If any, enter additional props that only exist on this component\n icon: string;\n subheader: string;\n header: string;\n showIconInHeader: boolean;\n caseInfo: any;\n lastUpdateCaseTime: any;\n}\n\nconst useStyles = makeStyles(theme => ({\n root: {\n paddingRight: theme.spacing(1),\n paddingLeft: theme.spacing(1),\n paddingTop: theme.spacing(1),\n paddingBottom: theme.spacing(1),\n marginRight: theme.spacing(1),\n marginLeft: theme.spacing(1),\n marginTop: theme.spacing(1),\n marginBottom: theme.spacing(1)\n },\n caseViewHeader: {\n backgroundColor: theme.palette.info.light,\n color: theme.palette.getContrastText(theme.palette.info.light),\n borderRadius: 'inherit'\n },\n caseViewIconBox: {\n backgroundColor: theme.palette.info.dark,\n width: theme.spacing(8),\n height: theme.spacing(8),\n padding: theme.spacing(1)\n }\n}));\n\nexport default function CaseView(props: PropsWithChildren<CaseViewProps>) {\n // Get emitted components from map (so we can get any override that may exist)\n const CaseViewActionsMenu = getComponentFromMap('CaseViewActionsMenu');\n const VerticalTabs = getComponentFromMap('VerticalTabs');\n const DeferLoad = getComponentFromMap('DeferLoad');\n\n const {\n getPConnect,\n icon = '',\n header,\n subheader,\n children = [],\n caseInfo: { availableActions = [], availableProcesses = [], hasNewAttachments, caseTypeID = '', caseTypeName = '', caseTypeIcon }\n } = props;\n const { lastUpdateCaseTime = getPConnect().getValue('caseInfo.lastUpdateTime') } = props;\n const currentCaseID = props.caseInfo.ID;\n let isComponentMounted = true;\n const { displayOnlyFA } = useContext<any>(StoreContext);\n\n const thePConn = getPConnect();\n\n const classes = useStyles();\n\n const editAction = availableActions.find(action => action.ID === 'pyUpdateCaseDetails');\n\n const localizedVal = PCore.getLocaleUtils().getLocaleValue;\n const localizationService = thePConn.getLocalizationService();\n const localeCategory = 'CaseView';\n\n /**\n *\n * @param inName the metadata <em>name</em> that will cause a region to be returned\n */\n function getChildRegionByName(inName: string): any {\n for (const child of children as ReactElement[]) {\n const theMetadataType: string = (child as ReactElement).props.getPConnect().getRawMetadata().type?.toLowerCase();\n const theMetadataName: string = (child as ReactElement).props.getPConnect().getRawMetadata().name?.toLowerCase();\n if (theMetadataType === 'region' && theMetadataName === inName) {\n return child;\n }\n }\n\n return null;\n }\n\n const theSummaryRegion = getChildRegionByName('summary');\n const theStagesRegion = getChildRegionByName('stages');\n const theTodoRegion = getChildRegionByName('todo');\n const theUtilitiesRegion = getChildRegionByName('utilities');\n const theTabsRegion = getChildRegionByName('tabs');\n\n let iconForCaseType = caseTypeIcon ? caseTypeIcon.replace('pi pi-', '') : icon;\n\n if (!iconForCaseType || iconForCaseType.includes('.')) {\n iconForCaseType = 'polaris-solid';\n }\n const caseSvgIconUrl = Utils.getImageSrc(iconForCaseType, Utils.getSDKStaticConentUrl());\n\n const [activeVertTab, setActiveVertTab] = useState(0);\n\n // const tmpLoadData1 = { config: { label: \"Details\", name: \"pyDetailsTabContent\" }, type: \"DeferLoad\" };\n // const tmpLoadData2 = { config: { label: \"Case History\", name: \"CaseHistory\" }, type: \"DeferLoad\" };\n\n // Extract the tabs we need to display from theTabsRegion (one tab per entry in theTabsRegionChildren)\n const theTabsRegionChildren = theTabsRegion?.props.getPConnect().getChildren();\n\n // vertTabInfo is sent to VerticalTabs component\n const vertTabInfo: object[] = [];\n\n // deferLoadInfo is sent to DeferLoad component (currently selected entry)\n const deferLoadInfo: any[] = [];\n\n if (theTabsRegionChildren) {\n // populate vertTabInfo and deferLoadInfo\n theTabsRegionChildren.forEach((tabComp, index) => {\n const theTabCompConfig = tabComp.getPConnect().getConfigProps();\n // eslint-disable-next-line prefer-const\n let { label, inheritedProps } = theTabCompConfig;\n // For some tabs, \"label\" property is not avaialable in theTabCompConfig, so will get them from inheritedProps\n if (!label) {\n inheritedProps.forEach(inheritedProp => {\n if (inheritedProp.prop === 'label') {\n label = inheritedProp.value;\n }\n });\n }\n // We'll display the tabs when either visibility property doesn't exist or is true(if exists)\n if (theTabCompConfig.visibility === undefined || theTabCompConfig.visibility === true) {\n vertTabInfo.push({ name: label, id: index });\n deferLoadInfo.push({ type: 'DeferLoad', config: theTabCompConfig });\n }\n });\n }\n\n function handleVerticalTabClick(eventDetail: any) {\n const theItem = parseInt(eventDetail.additionalData.itemClicked, 10);\n\n // only call useEffectSetter if the component is mounted\n if (isComponentMounted) {\n setActiveVertTab(theItem);\n }\n }\n\n // Add and Remove event listener for VerticalTabClick only at startup and teardown\n useEffect(() => {\n document.addEventListener('VerticalTabClick', (event: any) => {\n handleVerticalTabClick(event.detail);\n });\n\n return (): void => {\n // inform that the component is unmounted so other code can\n // know not to try to call useState setters (to avoid console warnings)\n isComponentMounted = false;\n\n document.removeEventListener('VerticalTabClick', (event: any) => {\n handleVerticalTabClick(event.detail);\n });\n };\n }, []);\n\n useEffect(() => {\n if (hasNewAttachments) {\n PCore.getPubSubUtils().publish((PCore.getEvents().getCaseEvent() as any).CASE_ATTACHMENTS_UPDATED_FROM_CASEVIEW, true);\n }\n }, [hasNewAttachments]);\n\n function _editClick() {\n const actionsAPI = thePConn.getActionsApi();\n const openLocalAction = actionsAPI.openLocalAction.bind(actionsAPI);\n\n openLocalAction(editAction.ID, { ...editAction, containerName: 'modal', type: 'express' });\n }\n\n function getActionButtonsHtml(): any {\n return (\n <Box>\n {editAction && (\n <Button\n id='edit'\n onClick={() => {\n _editClick();\n }}\n >\n {localizedVal('Edit', localeCategory)}\n </Button>\n )}\n <CaseViewActionsMenu\n getPConnect={getPConnect}\n availableActions={availableActions}\n availableProcesses={availableProcesses}\n caseTypeName={caseTypeName}\n caseTypeID={caseTypeID}\n />\n </Box>\n );\n }\n\n function getContainerContents() {\n if (!displayOnlyFA) {\n // show full portal\n return (\n <Grid2 container>\n <Grid2 size={{ xs: 3 }}>\n <div hidden={true} id='current-caseID'>\n {currentCaseID}\n </div>\n <Card className={classes.root}>\n <CardHeader\n className={classes.caseViewHeader}\n title={\n <Typography variant='h6' component='div' id='case-name'>\n {localizationService.getLocalizedText(header)}\n </Typography>\n }\n subheader={\n <Typography variant='body1' component='div' id='caseId'>\n {subheader}\n </Typography>\n }\n avatar={\n <Avatar className={classes.caseViewIconBox} variant='square'>\n <img src={caseSvgIconUrl} />\n </Avatar>\n }\n />\n {getActionButtonsHtml()}\n <Divider />\n {theSummaryRegion}\n <Divider />\n {vertTabInfo.length > 1 && <VerticalTabs tabconfig={vertTabInfo} />}\n </Card>\n </Grid2>\n\n <Grid2 size={{ xs: 6 }}>\n {theStagesRegion}\n {theTodoRegion}\n {deferLoadInfo.length > 0 && (\n <DeferLoad getPConnect={getPConnect} name={deferLoadInfo[activeVertTab].config.name} isTab lastUpdateCaseTime={lastUpdateCaseTime} />\n )}\n </Grid2>\n\n <Grid2 size={{ xs: 3 }}>{theUtilitiesRegion}</Grid2>\n </Grid2>\n );\n }\n // displayOnlyFA - only show the \"todo\" region\n return (\n <Grid2 container>\n <Grid2 size={{ xs: 12 }}>{theTodoRegion}</Grid2>\n </Grid2>\n );\n }\n\n return getContainerContents();\n}\n"]}
package/package.json CHANGED
@@ -1,6 +1,6 @@
1
1
  {
2
2
  "name": "@pega/react-sdk-components",
3
- "version": "0.25.7",
3
+ "version": "0.25.8",
4
4
  "description": "React SDK Infrastructure: bridge and components",
5
5
  "_filesComment": "During packing, npm ignores everything NOT in the files list",
6
6
  "files": [