sf-i-events 1.0.953 → 1.0.955

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/sf-i-events.js CHANGED
@@ -1275,6 +1275,11 @@ let SfIEvents = class SfIEvents extends LitElement {
1275
1275
  this.suspenseFlag = false;
1276
1276
  this.tablecols = [];
1277
1277
  this.reportedLocationsVals = [];
1278
+ this.minRiskMitigated = 0;
1279
+ this.minRiskResidual = 0;
1280
+ this.maxRiskMitigated = 0;
1281
+ this.maxRiskResidual = 0;
1282
+ this.finRiskCurrency = "";
1278
1283
  this.isSelectedLegend = (value) => {
1279
1284
  return this.chartSelectedLegend.includes(value);
1280
1285
  };
@@ -2363,6 +2368,49 @@ let SfIEvents = class SfIEvents extends LitElement {
2363
2368
  html += '</div>';
2364
2369
  html += '</div>';
2365
2370
  html += '<div class="chart-container d-flex scroll-x align-center"><div part="chart-item" class="chart-item"><canvas id="myChart"></canvas></div><div part="chart-item" class="chart-item"><canvas id="myChart4" class="gone"></canvas></div><div part="chart-item chart-item-middle" class="chart-item"><canvas id="myChart2" class="gone"></canvas></div><div part="chart-item" class="chart-item"><canvas id="myChart3" class="gone"></canvas></div></div>';
2371
+ html += '<div id="fin-risk-container" class="mt-20 w-100 d-flex align-end">';
2372
+ html += `
2373
+ <!-- Left Label -->
2374
+ <div class="d-flex align-end">
2375
+ <span part="financial-risk-title">Financial Risk</span>
2376
+ <sup part="financial-risk-currency">FIN_RISK_CURRENCY</sup>
2377
+ </div>
2378
+
2379
+ <!-- Lower (Residual / Pending Risk) -->
2380
+ <div class="d-flex align-end" part="financial-risk-section">
2381
+ <div part="financial-risk-limit-label" style="font-weight:700;font-size:15px;color:#000;">Lower</div>
2382
+ <div class="d-flex align-center">
2383
+ <div class="d-flex flex-col align-center">
2384
+ <span style="color:#555;font-weight:500;font-size:13px;">Addressed</span>
2385
+ <span style="font-weight:700;font-size:16px;color:#27ae60;">FIN_RISK_MITIGATED_MIN</span>
2386
+ </div>
2387
+ <div class="d-flex flex-col align-center">
2388
+ <span style="color:#555;font-weight:500;font-size:13px;">Pending</span>
2389
+ <span style="font-weight:700;font-size:16px;color:#a0005a;">FIN_RISK_RESIDUAL_MIN</span>
2390
+ </div>
2391
+ </div>
2392
+ </div>
2393
+
2394
+ <!-- Upper (Mitigated / Addressed Risk) -->
2395
+ <div class="d-flex align-end" part="financial-risk-section">
2396
+ <div part="financial-risk-limit-label" style="font-weight:700;font-size:15px;color:#000;">Upper</div>
2397
+ <div style="display:flex;align-items:center;gap:8px;">
2398
+ <div class="d-flex flex-col align-center">
2399
+ <span style="color:#555;font-weight:500;font-size:13px;">Addressed</span>
2400
+ <span style="font-weight:700;font-size:16px;color:#27ae60;">FIN_RISK_MITIGATED_MAX</span>
2401
+ </div>
2402
+ <div class="d-flex flex-col align-center">
2403
+ <span style="color:#555;font-weight:500;font-size:13px;">Pending</span>
2404
+ <span style="font-weight:700;font-size:16px;color:#a0005a;">FIN_RISK_RESIDUAL_MAX</span>
2405
+ </div>
2406
+ </div>
2407
+ </div>
2408
+ `;
2409
+ // html += '<div part="" class="mb-5">Financial Risk</div>'
2410
+ // html += '<table class="w-100 text-center"><thead><tr><th part="financial-risk-header">Risk Status</th><th part="financial-risk-header" class="financial-risk-header">Minimum Risk</th><th part="financial-risk-header" class="financial-risk-header">Maximum Risk</th></tr></thead><tbody>'
2411
+ // html += '<tr><td>Residual</td><td>FIN_RISK_RESIDUAL_MIN</td><td>FIN_RISK_RESIDUAL_MAX</td></tr>'
2412
+ // html += '<tr><td>Mitigated</td><td>FIN_RISK_MITIGATED_MIN</td><td>FIN_RISK_MITIGATED_MAX</td></tr></tbody></table>'
2413
+ html += '</div>';
2366
2414
  html += '<div id="chart-settings-controls" class="mt-20"></div>';
2367
2415
  html += '<div id="chart-settings"></div>';
2368
2416
  }
@@ -2943,7 +2991,7 @@ let SfIEvents = class SfIEvents extends LitElement {
2943
2991
  };
2944
2992
  //(firstDay, endDay, 1, lastDay, true, 0, (firstDate.getMonth()), period, firstDate,"From " + firstDay.toLocaleDateString('en-IN') + " To " + endDay.toLocaleDateString('en-IN'), showBackgroundButton)
2945
2993
  this.renderEvents = (_firstDay, _endDay, iInit, iLast, showGraph, index, month, period, firstDate = null, parametersTitle, showBackgroundButton, fromDrilldown = false) => {
2946
- var _a, _b, _c, _f, _g, _h, _j, _k, _l, _m, _o, _p, _q, _r, _s, _t, _u, _v, _w, _x, _y, _z, _0, _1, _2, _3, _4, _5, _6, _7, _8, _9, _10, _11, _12, _13, _14, _15, _16, _17, _18, _19, _20, _21, _22, _23, _24, _25, _26, _27, _28, _29, _30, _31, _32, _33, _34, _35, _36, _37, _38, _39, _40, _41, _42, _43, _44, _45;
2994
+ var _a, _b, _c, _f, _g, _h, _j, _k, _l, _m, _o, _p, _q, _r, _s, _t, _u, _v, _w, _x, _y, _z, _0, _1, _2, _3, _4, _5, _6, _7, _8, _9, _10, _11, _12, _13, _14, _15, _16, _17, _18, _19, _20, _21, _22, _23, _24, _25, _26, _27, _28, _29, _30, _31, _32, _33, _34, _35, _36, _37, _38, _39, _40, _41, _42, _43, _44, _45, _46, _47, _48, _49, _50, _51, _52, _53, _54, _55;
2947
2995
  var total = 0, notStarted = 0, approved = 0, pendingApproval = 0, rejected = 0, inTime = 0, pastDueDate = 0, lateExecuted = 0, lateApproved = 0, lateReported = 0, scheduled = 0, partiallyComplied = 0, notComplied = 0, complied = 0, compliedWithGaps = 0, reportedNonCompliance = 0, active = 0, aboutToExpire = 0, expired = 0, terminated = 0;
2948
2996
  var html = '';
2949
2997
  this.selectedItemIds = [];
@@ -2954,6 +3002,11 @@ let SfIEvents = class SfIEvents extends LitElement {
2954
3002
  var slice = 2;
2955
3003
  this.eventsInWindow = [];
2956
3004
  var lastDay = iLast;
3005
+ this.minRiskMitigated = 0;
3006
+ this.minRiskResidual = 0;
3007
+ this.maxRiskMitigated = 0;
3008
+ this.maxRiskResidual = 0;
3009
+ this.finRiskCurrency = "";
2957
3010
  this.clearGraphData();
2958
3011
  console.log('this.clearSelectedGraphParam(); 1', this.graphFilter);
2959
3012
  this.clearSelectedGraphParam();
@@ -2993,6 +3046,16 @@ let SfIEvents = class SfIEvents extends LitElement {
2993
3046
  htmlSummaryCols += '<tr><th class="td-thin">Id</th><th class="td-wide">ObligationTitle</th><th class="td-wide">Status</th><th class="td-wide">Documents</th></tr>';
2994
3047
  }
2995
3048
  }
3049
+ let tempMinRiskMitigatedLocal = 0;
3050
+ let tempMinRiskResidualLocal = 0;
3051
+ let tempMaxRiskMitigatedLocal = 0;
3052
+ let tempMaxRiskResidualLocal = 0;
3053
+ let tempMinRiskMitigatedGlobal = 0;
3054
+ let tempMinRiskResidualGlobal = 0;
3055
+ let tempMaxRiskMitigatedGlobal = 0;
3056
+ let tempMaxRiskResidualGlobal = 0;
3057
+ this.finRiskCurrency = "";
3058
+ let flagGlobal = false;
2996
3059
  for (var i = iInit; i <= iLast; i++) {
2997
3060
  let mmdd = "";
2998
3061
  if (firstDate == null) {
@@ -3041,6 +3104,25 @@ let SfIEvents = class SfIEvents extends LitElement {
3041
3104
  }
3042
3105
  // const tempEvents2 = JSON.parse(JSON.stringify(this.events));
3043
3106
  // //console.log('eventlog2', tempEvents2['06/30'][7].comments, mmdd, j);
3107
+ if (this.finRiskCurrency == "") {
3108
+ this.finRiskCurrency = (_a = this.events[mmdd][j]['localcurrency']) !== null && _a !== void 0 ? _a : "";
3109
+ }
3110
+ if (this.finRiskCurrency != this.events[mmdd][j]['localcurrency'] && this.finRiskCurrency == "") {
3111
+ this.finRiskCurrency = (_b = this.events[mmdd][j]['globalcurrency']) !== null && _b !== void 0 ? _b : "";
3112
+ flagGlobal = true;
3113
+ }
3114
+ if (partStatus == "approved") {
3115
+ tempMinRiskMitigatedLocal = tempMinRiskMitigatedLocal + parseInt((_c = this.events[mmdd][j]['minlocal']) !== null && _c !== void 0 ? _c : "0");
3116
+ tempMaxRiskMitigatedLocal = tempMaxRiskMitigatedLocal + parseInt((_f = this.events[mmdd][j]['maxlocal']) !== null && _f !== void 0 ? _f : "0");
3117
+ tempMinRiskMitigatedGlobal = tempMinRiskMitigatedGlobal + parseInt((_g = this.events[mmdd][j]['minglobal']) !== null && _g !== void 0 ? _g : "0");
3118
+ tempMaxRiskMitigatedGlobal = tempMaxRiskMitigatedGlobal + parseInt((_h = this.events[mmdd][j]['maxglobal']) !== null && _h !== void 0 ? _h : "0");
3119
+ }
3120
+ else {
3121
+ tempMinRiskResidualLocal = tempMinRiskResidualLocal + parseInt((_j = this.events[mmdd][j]['minlocal']) !== null && _j !== void 0 ? _j : "0");
3122
+ tempMaxRiskResidualLocal = tempMaxRiskResidualLocal + parseInt((_k = this.events[mmdd][j]['maxlocal']) !== null && _k !== void 0 ? _k : "0");
3123
+ tempMinRiskResidualGlobal = tempMinRiskResidualGlobal + parseInt((_l = this.events[mmdd][j]['minglobal']) !== null && _l !== void 0 ? _l : "0");
3124
+ tempMaxRiskResidualGlobal = tempMaxRiskResidualGlobal + parseInt((_m = this.events[mmdd][j]['maxglobal']) !== null && _m !== void 0 ? _m : "0");
3125
+ }
3044
3126
  notStarted = notStarted + (partStatus == "not-started" ? 1 : 0);
3045
3127
  pendingApproval = pendingApproval + (partStatus == "pending-approval" ? 1 : 0);
3046
3128
  rejected = rejected + (partStatus == "rejected" ? 1 : 0);
@@ -3079,9 +3161,9 @@ let SfIEvents = class SfIEvents extends LitElement {
3079
3161
  csvValues += ('"' + ((this.events[mmdd][j]["party1"] + "").replace(/"/g, "") + '",'));
3080
3162
  csvValues += ('"' + ((this.events[mmdd][j]["party2"] + "").replace(/"/g, "") + '",'));
3081
3163
  csvValues += ('"' + ((this.events[mmdd][j]["party3"] + "").replace(/"/g, "") + '",'));
3082
- csvValues += ('"' + ((((_b = ((_a = this.events[mmdd][j]["reporters"]) !== null && _a !== void 0 ? _a : [])[0]) !== null && _b !== void 0 ? _b : "").split(';')[0] + "").replace(/"/g, "") + '",'));
3083
- csvValues += ('"' + ((((_f = ((_c = this.events[mmdd][j]["approvers"]) !== null && _c !== void 0 ? _c : [])[0]) !== null && _f !== void 0 ? _f : "").split(';')[0] + "").replace(/"/g, "") + '",'));
3084
- csvValues += ('"' + ((((_h = ((_g = this.events[mmdd][j]["functionheads"]) !== null && _g !== void 0 ? _g : [])[0]) !== null && _h !== void 0 ? _h : "").split(';')[0] + "").replace(/"/g, "") + '",'));
3164
+ csvValues += ('"' + ((((_p = ((_o = this.events[mmdd][j]["reporters"]) !== null && _o !== void 0 ? _o : [])[0]) !== null && _p !== void 0 ? _p : "").split(';')[0] + "").replace(/"/g, "") + '",'));
3165
+ csvValues += ('"' + ((((_r = ((_q = this.events[mmdd][j]["approvers"]) !== null && _q !== void 0 ? _q : [])[0]) !== null && _r !== void 0 ? _r : "").split(';')[0] + "").replace(/"/g, "") + '",'));
3166
+ csvValues += ('"' + ((((_t = ((_s = this.events[mmdd][j]["functionheads"]) !== null && _s !== void 0 ? _s : [])[0]) !== null && _t !== void 0 ? _t : "").split(';')[0] + "").replace(/"/g, "") + '",'));
3085
3167
  csvValues += ('"' + ((this.events[mmdd][j]["duedate"] + "").replace(/"/g, "") + '",'));
3086
3168
  csvValues += ('"' + (this.renderStatusString(partStatus, lateStatus, complianceStatus) + '",'));
3087
3169
  csvValues += ('"' + (this.getGraphParam(this.events[mmdd][j]) + '"\n'));
@@ -3108,19 +3190,19 @@ let SfIEvents = class SfIEvents extends LitElement {
3108
3190
  csvValues += ('"' + ((this.events[mmdd][j]["countryname"] + "").replace(/\((.*?)\)/g, "") + '",'));
3109
3191
  csvValues += ('"' + ((this.events[mmdd][j]["entityname"] + "").replace(/\((.*?)\)/g, "") + '",'));
3110
3192
  csvValues += ('"' + ((this.events[mmdd][j]["locationname"] + "").replace(/\((.*?)\)/g, "") + '",'));
3111
- csvValues += ('"' + ((((_k = ((_j = this.events[mmdd][j]["reporters"]) !== null && _j !== void 0 ? _j : [])[0]) !== null && _k !== void 0 ? _k : "").split(';')[0] + "").replace(/"/g, "") + '",'));
3112
- csvValues += ('"' + ((((_m = ((_l = this.events[mmdd][j]["approvers"]) !== null && _l !== void 0 ? _l : [])[0]) !== null && _m !== void 0 ? _m : "").split(';')[0] + "").replace(/"/g, "") + '",'));
3113
- csvValues += ('"' + ((((_p = ((_o = this.events[mmdd][j]["functionheads"]) !== null && _o !== void 0 ? _o : [])[0]) !== null && _p !== void 0 ? _p : "").split(';')[0] + "").replace(/"/g, "") + '",'));
3114
- csvValues += ('"' + (((_u = (_t = (_s = (_r = (_q = this.events) === null || _q === void 0 ? void 0 : _q[mmdd]) === null || _r === void 0 ? void 0 : _r[j]) === null || _s === void 0 ? void 0 : _s.statute) === null || _t === void 0 ? void 0 : _t.state) !== null && _u !== void 0 ? _u : "") + '",'));
3193
+ csvValues += ('"' + ((((_v = ((_u = this.events[mmdd][j]["reporters"]) !== null && _u !== void 0 ? _u : [])[0]) !== null && _v !== void 0 ? _v : "").split(';')[0] + "").replace(/"/g, "") + '",'));
3194
+ csvValues += ('"' + ((((_x = ((_w = this.events[mmdd][j]["approvers"]) !== null && _w !== void 0 ? _w : [])[0]) !== null && _x !== void 0 ? _x : "").split(';')[0] + "").replace(/"/g, "") + '",'));
3195
+ csvValues += ('"' + ((((_z = ((_y = this.events[mmdd][j]["functionheads"]) !== null && _y !== void 0 ? _y : [])[0]) !== null && _z !== void 0 ? _z : "").split(';')[0] + "").replace(/"/g, "") + '",'));
3196
+ csvValues += ('"' + (((_4 = (_3 = (_2 = (_1 = (_0 = this.events) === null || _0 === void 0 ? void 0 : _0[mmdd]) === null || _1 === void 0 ? void 0 : _1[j]) === null || _2 === void 0 ? void 0 : _2.statute) === null || _3 === void 0 ? void 0 : _3.state) !== null && _4 !== void 0 ? _4 : "") + '",'));
3115
3197
  csvValues += ('"' + (this.events[mmdd][j]["jurisdiction"] + '",'));
3116
- csvValues += ('"' + (((_z = (_y = (_x = (_w = (_v = this.events) === null || _v === void 0 ? void 0 : _v[mmdd]) === null || _w === void 0 ? void 0 : _w[j]) === null || _x === void 0 ? void 0 : _x.complianceobj) === null || _y === void 0 ? void 0 : _y.category) !== null && _z !== void 0 ? _z : "") + '",'));
3198
+ csvValues += ('"' + (((_9 = (_8 = (_7 = (_6 = (_5 = this.events) === null || _5 === void 0 ? void 0 : _5[mmdd]) === null || _6 === void 0 ? void 0 : _6[j]) === null || _7 === void 0 ? void 0 : _7.complianceobj) === null || _8 === void 0 ? void 0 : _8.category) !== null && _9 !== void 0 ? _9 : "") + '",'));
3117
3199
  csvValues += ('"' + (this.events[mmdd][j]["subcategory"] + '",'));
3118
- csvValues += ('"' + (((_4 = (_3 = (_2 = (_1 = (_0 = this.events) === null || _0 === void 0 ? void 0 : _0[mmdd]) === null || _1 === void 0 ? void 0 : _1[j]) === null || _2 === void 0 ? void 0 : _2.statute) === null || _3 === void 0 ? void 0 : _3.name) !== null && _4 !== void 0 ? _4 : "") + '",'));
3200
+ csvValues += ('"' + (((_14 = (_13 = (_12 = (_11 = (_10 = this.events) === null || _10 === void 0 ? void 0 : _10[mmdd]) === null || _11 === void 0 ? void 0 : _11[j]) === null || _12 === void 0 ? void 0 : _12.statute) === null || _13 === void 0 ? void 0 : _13.name) !== null && _14 !== void 0 ? _14 : "") + '",'));
3119
3201
  csvValues += ('"' + ((this.events[mmdd][j]["obligationtype"] + "").replace(/"/g, "") + '",'));
3120
3202
  csvValues += ('"' + ((this.events[mmdd][j]["risk"] + "").replace(/"/g, "") + '",'));
3121
3203
  csvValues += ('"' + ((this.events[mmdd][j]["riskarea"] + "").replace(/"/g, "") + '",'));
3122
3204
  csvValues += ('"' + ((this.events[mmdd][j]["frequency"] + "").replace(/"/g, "") + '",'));
3123
- csvValues += ('"' + ((((_9 = (_8 = (_7 = (_6 = (_5 = this.events) === null || _5 === void 0 ? void 0 : _5[mmdd]) === null || _6 === void 0 ? void 0 : _6[j]) === null || _7 === void 0 ? void 0 : _7.complianceobj) === null || _8 === void 0 ? void 0 : _8.subfrequency) !== null && _9 !== void 0 ? _9 : "") + "").replace(/"/g, "") + '",'));
3205
+ csvValues += ('"' + ((((_19 = (_18 = (_17 = (_16 = (_15 = this.events) === null || _15 === void 0 ? void 0 : _15[mmdd]) === null || _16 === void 0 ? void 0 : _16[j]) === null || _17 === void 0 ? void 0 : _17.complianceobj) === null || _18 === void 0 ? void 0 : _18.subfrequency) !== null && _19 !== void 0 ? _19 : "") + "").replace(/"/g, "") + '",'));
3124
3206
  csvValues += ('"' + ((this.events[mmdd][j]["duedate"] + "").replace(/"/g, "") + '",'));
3125
3207
  csvValues += ('"' + (this.renderStatusString(partStatus, lateStatus, complianceStatus) + '",'));
3126
3208
  csvValues += ('"' + (this.getGraphParam(this.events[mmdd][j]) + '"\n'));
@@ -3131,16 +3213,16 @@ let SfIEvents = class SfIEvents extends LitElement {
3131
3213
  + '<td class="' + (total % 2 === 0 ? 'td-odd' : 'td-even') + ' td-thin">' + (this.events[mmdd][j]["countryname"] + "").replace(/\((.*?)\)/g, "") + '</td>'
3132
3214
  + '<td class="' + (total % 2 === 0 ? 'td-odd' : 'td-even') + ' td-thin">' + (this.events[mmdd][j]["entityname"] + "").replace(/\((.*?)\)/g, "") + '</td>'
3133
3215
  + '<td class="' + (total % 2 === 0 ? 'td-odd' : 'td-even') + ' td-thin">' + (this.events[mmdd][j]["locationname"] + "").replace(/\((.*?)\)/g, "") + '</td>'
3134
- + '<td class="' + (total % 2 === 0 ? 'td-odd' : 'td-even') + ' td-thin">' + ((_14 = (_13 = (_12 = (_11 = (_10 = this.events) === null || _10 === void 0 ? void 0 : _10[mmdd]) === null || _11 === void 0 ? void 0 : _11[j]) === null || _12 === void 0 ? void 0 : _12.statute) === null || _13 === void 0 ? void 0 : _13.state) !== null && _14 !== void 0 ? _14 : "") + '</td>'
3216
+ + '<td class="' + (total % 2 === 0 ? 'td-odd' : 'td-even') + ' td-thin">' + ((_24 = (_23 = (_22 = (_21 = (_20 = this.events) === null || _20 === void 0 ? void 0 : _20[mmdd]) === null || _21 === void 0 ? void 0 : _21[j]) === null || _22 === void 0 ? void 0 : _22.statute) === null || _23 === void 0 ? void 0 : _23.state) !== null && _24 !== void 0 ? _24 : "") + '</td>'
3135
3217
  + '<td class="' + (total % 2 === 0 ? 'td-odd' : 'td-even') + ' td-thin">' + this.events[mmdd][j]["jurisdiction"] + '</td>'
3136
- + '<td class="' + (total % 2 === 0 ? 'td-odd' : 'td-even') + ' td-wide">' + ((_19 = (_18 = (_17 = (_16 = (_15 = this.events) === null || _15 === void 0 ? void 0 : _15[mmdd]) === null || _16 === void 0 ? void 0 : _16[j]) === null || _17 === void 0 ? void 0 : _17.complianceobj) === null || _18 === void 0 ? void 0 : _18.category) !== null && _19 !== void 0 ? _19 : "") + '</td>'
3218
+ + '<td class="' + (total % 2 === 0 ? 'td-odd' : 'td-even') + ' td-wide">' + ((_29 = (_28 = (_27 = (_26 = (_25 = this.events) === null || _25 === void 0 ? void 0 : _25[mmdd]) === null || _26 === void 0 ? void 0 : _26[j]) === null || _27 === void 0 ? void 0 : _27.complianceobj) === null || _28 === void 0 ? void 0 : _28.category) !== null && _29 !== void 0 ? _29 : "") + '</td>'
3137
3219
  + '<td class="' + (total % 2 === 0 ? 'td-odd' : 'td-even') + ' td-wide">' + this.events[mmdd][j]["subcategory"] + '</td>'
3138
- + '<td class="' + (total % 2 === 0 ? 'td-odd' : 'td-even') + ' td-wide">' + ((_24 = (_23 = (_22 = (_21 = (_20 = this.events) === null || _20 === void 0 ? void 0 : _20[mmdd]) === null || _21 === void 0 ? void 0 : _21[j]) === null || _22 === void 0 ? void 0 : _22.statute) === null || _23 === void 0 ? void 0 : _23.name) !== null && _24 !== void 0 ? _24 : "") + '</td>'
3220
+ + '<td class="' + (total % 2 === 0 ? 'td-odd' : 'td-even') + ' td-wide">' + ((_34 = (_33 = (_32 = (_31 = (_30 = this.events) === null || _30 === void 0 ? void 0 : _30[mmdd]) === null || _31 === void 0 ? void 0 : _31[j]) === null || _32 === void 0 ? void 0 : _32.statute) === null || _33 === void 0 ? void 0 : _33.name) !== null && _34 !== void 0 ? _34 : "") + '</td>'
3139
3221
  + '<td class="' + (total % 2 === 0 ? 'td-odd' : 'td-even') + ' td-thin">' + this.events[mmdd][j]["obligationtype"] + '</td>'
3140
3222
  + '<td class="' + (total % 2 === 0 ? 'td-odd' : 'td-even') + ' td-thin">' + this.events[mmdd][j]["risk"] + '</td>'
3141
3223
  + '<td class="' + (total % 2 === 0 ? 'td-odd' : 'td-even') + ' td-wide">' + this.events[mmdd][j]["riskarea"] + '</td>'
3142
3224
  + '<td class="' + (total % 2 === 0 ? 'td-odd' : 'td-even') + ' td-thin">' + this.events[mmdd][j]["frequency"] + '</td>'
3143
- + '<td class="' + (total % 2 === 0 ? 'td-odd' : 'td-even') + ' td-thin">' + (((_29 = (_28 = (_27 = (_26 = (_25 = this.events) === null || _25 === void 0 ? void 0 : _25[mmdd]) === null || _26 === void 0 ? void 0 : _26[j]) === null || _27 === void 0 ? void 0 : _27.complianceobj) === null || _28 === void 0 ? void 0 : _28.subfrequency) !== null && _29 !== void 0 ? _29 : "") + "").replace(/"/g, "") + '</td>'
3225
+ + '<td class="' + (total % 2 === 0 ? 'td-odd' : 'td-even') + ' td-thin">' + (((_39 = (_38 = (_37 = (_36 = (_35 = this.events) === null || _35 === void 0 ? void 0 : _35[mmdd]) === null || _36 === void 0 ? void 0 : _36[j]) === null || _37 === void 0 ? void 0 : _37.complianceobj) === null || _38 === void 0 ? void 0 : _38.subfrequency) !== null && _39 !== void 0 ? _39 : "") + "").replace(/"/g, "") + '</td>'
3144
3226
  + '<td class="' + (total % 2 === 0 ? 'td-odd' : 'td-even') + ' td-thin">' + this.events[mmdd][j]["duedate"] + '</td>'
3145
3227
  + '<td class="' + (total % 2 === 0 ? 'td-odd' : 'td-even') + ' td-wide text-center status-format">' + this.renderStatusString(partStatus, lateStatus, complianceStatus) + '</td>'
3146
3228
  + '<td class="' + (total % 2 === 0 ? 'td-odd' : 'td-even') + ' td-wide status-format">' + this.getGraphParam(this.events[mmdd][j]) + '</td>'
@@ -3154,9 +3236,9 @@ let SfIEvents = class SfIEvents extends LitElement {
3154
3236
  csvValues += ('"' + ((this.events[mmdd][j]["countryname"] + "").replace(/\((.*?)\)/g, "") + '",'));
3155
3237
  csvValues += ('"' + ((this.events[mmdd][j]["entityname"] + "").replace(/\((.*?)\)/g, "") + '",'));
3156
3238
  csvValues += ('"' + ((this.events[mmdd][j]["locationname"] + "").replace(/\((.*?)\)/g, "") + '",'));
3157
- csvValues += ('"' + ((((_31 = ((_30 = this.events[mmdd][j]["reporters"]) !== null && _30 !== void 0 ? _30 : [])[0]) !== null && _31 !== void 0 ? _31 : "").split(';')[0] + "").replace(/"/g, "") + '",'));
3158
- csvValues += ('"' + ((((_33 = ((_32 = this.events[mmdd][j]["approvers"]) !== null && _32 !== void 0 ? _32 : [])[0]) !== null && _33 !== void 0 ? _33 : "").split(';')[0] + "").replace(/"/g, "") + '",'));
3159
- csvValues += ('"' + ((((_35 = ((_34 = this.events[mmdd][j]["functionheads"]) !== null && _34 !== void 0 ? _34 : [])[0]) !== null && _35 !== void 0 ? _35 : "").split(';')[0] + "").replace(/"/g, "") + '",'));
3239
+ csvValues += ('"' + ((((_41 = ((_40 = this.events[mmdd][j]["reporters"]) !== null && _40 !== void 0 ? _40 : [])[0]) !== null && _41 !== void 0 ? _41 : "").split(';')[0] + "").replace(/"/g, "") + '",'));
3240
+ csvValues += ('"' + ((((_43 = ((_42 = this.events[mmdd][j]["approvers"]) !== null && _42 !== void 0 ? _42 : [])[0]) !== null && _43 !== void 0 ? _43 : "").split(';')[0] + "").replace(/"/g, "") + '",'));
3241
+ csvValues += ('"' + ((((_45 = ((_44 = this.events[mmdd][j]["functionheads"]) !== null && _44 !== void 0 ? _44 : [])[0]) !== null && _45 !== void 0 ? _45 : "").split(';')[0] + "").replace(/"/g, "") + '",'));
3160
3242
  csvValues += ('"' + (this.events[mmdd][j]["lastcheckeddate"] + '",'));
3161
3243
  csvValues += ('"' + ((this.events[mmdd][j]["duedate"] + "").replace(/"/g, "") + '",'));
3162
3244
  csvValues += ('"' + ((this.events[mmdd][j]["terminated"] ? "Yes" : "No").replace(/"/g, "") + '",'));
@@ -3182,10 +3264,10 @@ let SfIEvents = class SfIEvents extends LitElement {
3182
3264
  csvValues += ('"' + ((this.events[mmdd][j]["countryname"] + "").replace(/\((.*?)\)/g, "") + '",'));
3183
3265
  csvValues += ('"' + ((this.events[mmdd][j]["entityname"] + "").replace(/\((.*?)\)/g, "") + '",'));
3184
3266
  csvValues += ('"' + ((this.events[mmdd][j]["locationname"] + "").replace(/\((.*?)\)/g, "") + '",'));
3185
- csvValues += ('"' + ((((_37 = ((_36 = this.events[mmdd][j]["functions"]) !== null && _36 !== void 0 ? _36 : [])[0]) !== null && _37 !== void 0 ? _37 : "").split(';')[0] + "").replace(/\((.*?)\)/g, "") + '",'));
3186
- csvValues += ('"' + ((((_39 = ((_38 = this.events[mmdd][j]["reporters"]) !== null && _38 !== void 0 ? _38 : [])[0]) !== null && _39 !== void 0 ? _39 : "").split(';')[0] + "").replace(/"/g, "") + '",'));
3187
- csvValues += ('"' + ((((_41 = ((_40 = this.events[mmdd][j]["approvers"]) !== null && _40 !== void 0 ? _40 : [])[0]) !== null && _41 !== void 0 ? _41 : "").split(';')[0] + "").replace(/"/g, "") + '",'));
3188
- csvValues += ('"' + ((((_43 = ((_42 = this.events[mmdd][j]["functionheads"]) !== null && _42 !== void 0 ? _42 : [])[0]) !== null && _43 !== void 0 ? _43 : "").split(';')[0] + "").replace(/"/g, "") + '",'));
3267
+ csvValues += ('"' + ((((_47 = ((_46 = this.events[mmdd][j]["functions"]) !== null && _46 !== void 0 ? _46 : [])[0]) !== null && _47 !== void 0 ? _47 : "").split(';')[0] + "").replace(/\((.*?)\)/g, "") + '",'));
3268
+ csvValues += ('"' + ((((_49 = ((_48 = this.events[mmdd][j]["reporters"]) !== null && _48 !== void 0 ? _48 : [])[0]) !== null && _49 !== void 0 ? _49 : "").split(';')[0] + "").replace(/"/g, "") + '",'));
3269
+ csvValues += ('"' + ((((_51 = ((_50 = this.events[mmdd][j]["approvers"]) !== null && _50 !== void 0 ? _50 : [])[0]) !== null && _51 !== void 0 ? _51 : "").split(';')[0] + "").replace(/"/g, "") + '",'));
3270
+ csvValues += ('"' + ((((_53 = ((_52 = this.events[mmdd][j]["functionheads"]) !== null && _52 !== void 0 ? _52 : [])[0]) !== null && _53 !== void 0 ? _53 : "").split(';')[0] + "").replace(/"/g, "") + '",'));
3189
3271
  csvValues += ('"' + (this.events[mmdd][j]["state"] + '",'));
3190
3272
  csvValues += ('"' + (this.events[mmdd][j]["jurisdiction"] + '",'));
3191
3273
  csvValues += ('"' + (this.events[mmdd][j]["category"] + '",'));
@@ -3254,7 +3336,7 @@ let SfIEvents = class SfIEvents extends LitElement {
3254
3336
  + '<td class="' + (total % 2 === 0 ? 'td-odd' : 'td-even') + ' td-wide"><sf-i-elastic-text exportparts="highlight,highlight-count" text="' + this.events[mmdd][j]["obligationtitle"] + '" minLength="100" lineSize="4"></sf-i-elastic-text></td>'
3255
3337
  + '<td class="' + (total % 2 === 0 ? 'td-odd' : 'td-even') + ' td-wide"><sf-i-elastic-text exportparts="highlight,highlight-count" text="' + this.renderStatusString(partStatus, lateStatus, complianceStatus) + '" minLength="100" lineSize="4"></sf-i-elastic-text></td>'
3256
3338
  + '<td class="' + (total % 2 === 0 ? 'td-odd' : 'td-even') + ' td-wide">');
3257
- for (let document of (_44 = this.events[mmdd][j].contractdocuments) !== null && _44 !== void 0 ? _44 : []) {
3339
+ for (let document of (_54 = this.events[mmdd][j].contractdocuments) !== null && _54 !== void 0 ? _54 : []) {
3258
3340
  htmlSummaryValues += `<sf-i-uploader class="summary-report-doc" max="10" apiid="1peg5170d3" allowedextensions="[&quot;jpg&quot;,&quot;png&quot;,&quot;pdf&quot;,&quot;xls&quot;,&quot;xlsx&quot;,&quot;doc&quot;,&quot;docx&quot;]" prepopulatedInputArr="${JSON.stringify([{ "key": document.key, "ext": document.ext }]).replace(/"/g, '&quot;')}" projectid="${this.projectId} " extract="no" mode="view" maximize="yes" hidepreview="yes"></sf-i-uploader><br />`;
3259
3341
  }
3260
3342
  htmlSummaryValues += '</td></tr>';
@@ -3264,7 +3346,7 @@ let SfIEvents = class SfIEvents extends LitElement {
3264
3346
  + '<td class="' + (total % 2 === 0 ? 'td-odd' : 'td-even') + ' td-wide"><sf-i-elastic-text exportparts="highlight,highlight-count" text="' + this.events[mmdd][j]["obligationtitle"] + '" minLength="100" lineSize="4"></sf-i-elastic-text></td>'
3265
3347
  + '<td class="' + (total % 2 === 0 ? 'td-odd' : 'td-even') + ' td-wide"><sf-i-elastic-text exportparts="highlight,highlight-count" text="' + this.renderStatusString(partStatus, lateStatus, complianceStatus) + '" minLength="100" lineSize="4"></sf-i-elastic-text></td>'
3266
3348
  + '<td class="' + (total % 2 === 0 ? 'td-odd' : 'td-even') + ' td-wide">');
3267
- for (let document of (_45 = this.events[mmdd][j].licensedocuments) !== null && _45 !== void 0 ? _45 : []) {
3349
+ for (let document of (_55 = this.events[mmdd][j].licensedocuments) !== null && _55 !== void 0 ? _55 : []) {
3268
3350
  htmlSummaryValues += `<sf-i-uploader class="summary-report-doc" max="10" apiid="1peg5170d3" allowedextensions="[&quot;jpg&quot;,&quot;png&quot;,&quot;pdf&quot;,&quot;xls&quot;,&quot;xlsx&quot;,&quot;doc&quot;,&quot;docx&quot;]" prepopulatedInputArr="${JSON.stringify([{ "key": document.key, "ext": document.ext }]).replace(/"/g, '&quot;')}" projectid="${this.projectId} " extract="no" mode="view" maximize="yes" hidepreview="yes"></sf-i-uploader><br />`;
3269
3351
  }
3270
3352
  htmlSummaryValues += '</td></tr>';
@@ -3308,6 +3390,18 @@ let SfIEvents = class SfIEvents extends LitElement {
3308
3390
  }
3309
3391
  }
3310
3392
  html += this.renderCalendarContainerDivEnd();
3393
+ if (flagGlobal) {
3394
+ this.minRiskMitigated = tempMinRiskMitigatedGlobal;
3395
+ this.maxRiskMitigated = tempMaxRiskMitigatedGlobal;
3396
+ this.minRiskResidual = tempMinRiskResidualGlobal;
3397
+ this.maxRiskResidual = tempMaxRiskResidualGlobal;
3398
+ }
3399
+ else {
3400
+ this.minRiskMitigated = tempMinRiskMitigatedLocal;
3401
+ this.maxRiskMitigated = tempMaxRiskMitigatedLocal;
3402
+ this.minRiskResidual = tempMinRiskResidualLocal;
3403
+ this.maxRiskResidual = tempMaxRiskResidualLocal;
3404
+ }
3311
3405
  //console.log('final risk severities', this.riskSeverityData);
3312
3406
  //this.period = firstDay?.getDate() + '/' + (firstDay!.getMonth()+1) + '/' + firstDay?.getFullYear() + " - " + endDay?.getDate() + '/' + (endDay!.getMonth()+1) + '/' + endDay?.getFullYear();
3313
3407
  this.period = period;
@@ -3338,6 +3432,11 @@ let SfIEvents = class SfIEvents extends LitElement {
3338
3432
  html = html.replace("DASHBOARD_ABOUT_TO_EXPIRE", aboutToExpire + "");
3339
3433
  html = html.replace("DASHBOARD_EXPIRED", expired + "");
3340
3434
  html = html.replace("DASHBOARD_TERMINATED", terminated + "");
3435
+ html = html.replace("FIN_RISK_CURRENCY", this.finRiskCurrency);
3436
+ html = html.replace("FIN_RISK_RESIDUAL_MIN", this.formatIndianNumber(this.minRiskResidual));
3437
+ html = html.replace("FIN_RISK_RESIDUAL_MAX", this.formatIndianNumber(this.maxRiskResidual));
3438
+ html = html.replace("FIN_RISK_MITIGATED_MIN", this.formatIndianNumber(this.minRiskMitigated));
3439
+ html = html.replace("FIN_RISK_MITIGATED_MAX", this.formatIndianNumber(this.maxRiskMitigated));
3341
3440
  if (this.selectedFeatures.indexOf("contracts") >= 0) {
3342
3441
  this.csvDataStats = 'Period,Total,Not Started,Approved,Pending Approval,Rejected,Past Due Date,Late Reported,Late Executed,Late Approved,Active,About To Expire,Expired,Terminated\n';
3343
3442
  this.csvDataStats += this.period + "," + total + "," + notStarted + "," + approved + "," + pendingApproval + "," + rejected + "," + pastDueDate + "," + lateReported + "," + lateExecuted + "," + lateApproved + "," + active + "," + aboutToExpire + "," + expired + "," + terminated;
@@ -7508,9 +7607,10 @@ let SfIEvents = class SfIEvents extends LitElement {
7508
7607
  this.loadOnboardingSuspense = async () => {
7509
7608
  this.hideTabContainers();
7510
7609
  this._SfOnboardingSuspenseContainer.style.display = 'flex';
7610
+ const mappedSerializedLocations = await this.fetchMappedSerializedLocations();
7511
7611
  const suspenseList = await this.fetchSuspenseList();
7512
7612
  console.log('suspenseList', suspenseList);
7513
- this.renderOnboardingSuspense(suspenseList);
7613
+ this.renderOnboardingSuspense(mappedSerializedLocations, suspenseList);
7514
7614
  };
7515
7615
  this.calculateStartAndEndDateOfPast = (index = 0) => {
7516
7616
  //console.log('calculating start and end of past');
@@ -17562,7 +17662,292 @@ let SfIEvents = class SfIEvents extends LitElement {
17562
17662
  this.loadOnboardingSignoff();
17563
17663
  });
17564
17664
  };
17565
- this.renderOnboardingSuspense = (_suspenseList) => {
17665
+ this.renderOnboardingSuspense = (sourceArray, suspenseList) => {
17666
+ console.log('sourceList', sourceArray);
17667
+ console.log('suspenseList', suspenseList);
17668
+ let sourceCols = ["shortid", "obligationtitle", "obligationtype"];
17669
+ let uniqCols = ["id", "entityname", "locationname"];
17670
+ let colName = 'suspense';
17671
+ var html = '';
17672
+ html += '<div id="suspense-list-container" class="pb-10 pt-10 w-100">';
17673
+ html += '<div class="d-flex justify-between flex-wrap align-center"> ';
17674
+ var status = '';
17675
+ status = '<span class="color-done material-icons">check_circle</span>';
17676
+ let tagged = 0;
17677
+ var changed = 0;
17678
+ let tempSourceArray = sourceArray;
17679
+ console.log('suspensekey length', tempSourceArray.data.mappings.mappings.length);
17680
+ for (let [itemIndex, item] of tempSourceArray.data.mappings.mappings.entries()) {
17681
+ let suspenseKey = item.entityid + ';' + item.locationid + ';' + item.id;
17682
+ console.log('suspensekey', suspenseKey, item);
17683
+ if (suspenseList[suspenseKey] != null && suspenseList[suspenseKey] != false) {
17684
+ tagged++;
17685
+ }
17686
+ tempSourceArray.data.mappings.mappings[itemIndex].suspense = suspenseList[suspenseKey] != null;
17687
+ if (this.changedOnboardingItemIds.indexOf(suspenseKey) >= 0) {
17688
+ changed++;
17689
+ }
17690
+ }
17691
+ html += ('<div class="left-sticky d-flex justify-between align-center mr-10"><h4 id="mapped-stats-title" part="results-title" class="d-flex align-center m-0">' + status + '&nbsp;&nbsp; ' + tagged + ' in Suspense List out of ' + sourceArray.data.mappings.mappings.length + '</h4></div>');
17692
+ if (changed > 0) {
17693
+ html += ('<div class="left-sticky d-flex justify-between align-center mr-10"><h4 part="results-title" class="d-flex align-center m-0"><span class="color-pending material-icons">pending</span>&nbsp;&nbsp;' + changed + ' Items changed</h4></div>');
17694
+ }
17695
+ html += ('<div class="left-sticky d-flex justify-between align-center mr-10"><h4 id="span-extra-filled" class="m-0" part="results-title"></h4></div>');
17696
+ html += '<div class="d-flex align-center">';
17697
+ // html += '<input part="input" type="text" placeholder="Filter" class="input-filter mr-10" value="'+subfilter+'" />';
17698
+ html += '<div class="mr-10">';
17699
+ html += '<div class="d-flex justify-end"><button part="calendar-tab-icon-not-selected" class="material-icons button-toggle-more">expand_more</button><button part="calendar-tab-icon-selected" class="material-icons button-toggle-more-back hide">expand_less</button></div>';
17700
+ // html += '<div class="d-flex justify-end"><button part="button" class="align-center button-download-backups hide" style="position: absolute; margin-top: 5px;"><span class="material-symbols-outlined mr-10">file_save</span><span>Download Backups</span></button></div>'
17701
+ html += '<div style="position: absolute; margin-top: 5px;">';
17702
+ html += '<button part="button" class="hide d-flex align-center button-download-backups" style="margin-left: -80px"><span class="material-symbols-outlined mr-10">file_save</span><span>Download Backups</span></button><button part="button" class="mt-10 hide d-flex align-center button-export-mapping" style="margin-left: -80px"><span class="material-symbols-outlined mr-10">export_notes</span><span>Export Mapping</span></button><button part="button" class="mt-10 hide d-flex align-center button-export-mapping-csv" style="margin-left: -80px"><span class="material-symbols-outlined mr-10">data_table</span><span>Export CSV</span></button>';
17703
+ // console.log('jobs', jobs);
17704
+ html += ('<input id="fileInput" type="file" style="display:none;" /><button part="button" class="mt-10 hide button-local-load d-flex align-center mr-10" style="margin-left: -80px"><span class="material-symbols-outlined mr-10">upload_file</span><span>Load From Local</span></button><button part="button" class="mt-10 hide button-local-save d-flex align-center mr-10" style="margin-left: -80px"><span class="material-symbols-outlined mr-10">save</span><span>Save Locally</span></button>');
17705
+ html += '</div>';
17706
+ html += '</div>';
17707
+ html += '<button part="button" class="button-apply d-flex align-center mr-10"><span class="material-symbols-outlined mr-10">touch_app</span><span>Apply</span></button>';
17708
+ html += '<button part="button" class="button-save d-flex align-center"><span class="material-symbols-outlined mr-10">save</span><span>Save On Cloud</span></button>';
17709
+ html += '</div>';
17710
+ html += '</div>';
17711
+ html += '<div>';
17712
+ html += '<h4 id="span-filtered" part="results-title"></h4>';
17713
+ html += '<div id="div-subfiltered"></div>';
17714
+ html += '</div>';
17715
+ html += '<br />';
17716
+ html += '<div class="d-flex justify-center align-center w-100 mt-20 scroll-x">';
17717
+ html += '<table id="table-data" class="mt-20" style="height: 200px">';
17718
+ html += '<thead>';
17719
+ // html += '<th part="td-head" class="td-head">'
17720
+ // html += '<div id="select-all"><input class="checkbox checkbox-all" part="input-checkbox" type="checkbox" ' + ((this.disableflagggrcresponse.toLowerCase() == "yes") ? 'disabled' : '') + '/></div>';
17721
+ // html += '</th>'
17722
+ html += '<th part="td-head" class="td-head">';
17723
+ html += colName;
17724
+ html += '</th>';
17725
+ for (let i = 0; i < uniqCols.length; i++) {
17726
+ html += '<th part="td-head" class="td-head">';
17727
+ html += uniqCols[i];
17728
+ html += '</th>';
17729
+ }
17730
+ for (let i = 0; i < sourceCols.length; i++) {
17731
+ html += '<th part="td-head" class="td-head">';
17732
+ html += sourceCols[i];
17733
+ html += '</th>';
17734
+ }
17735
+ html += '</thead>';
17736
+ html += '<tbody>';
17737
+ // console.log('changedIds', this.changedOnboardingItemIds);
17738
+ for (let i = 0; i < sourceArray.data.mappings.mappings.length; i++) {
17739
+ var classBg = "";
17740
+ let item = sourceArray.data.mappings.mappings[i];
17741
+ let suspenseKey = item.entityid + ';' + item.locationid + ';' + item.id;
17742
+ if (i % 2 === 0) {
17743
+ if (this.changedOnboardingItemIds.length > 0) {
17744
+ let changedId = suspenseKey;
17745
+ if (this.changedOnboardingItemIds.indexOf(changedId) >= 0) {
17746
+ classBg = 'td-light-selected';
17747
+ }
17748
+ else {
17749
+ classBg = 'td-light';
17750
+ }
17751
+ }
17752
+ else {
17753
+ classBg = 'td-light';
17754
+ }
17755
+ }
17756
+ else {
17757
+ if (this.changedOnboardingItemIds.length > 0) {
17758
+ let changedId = item.entityid + ';' + item.locationid + ';' + item.id;
17759
+ if (this.changedOnboardingItemIds.indexOf(changedId) >= 0) {
17760
+ classBg = 'td-dark-selected';
17761
+ }
17762
+ else {
17763
+ classBg = 'td-dark';
17764
+ }
17765
+ }
17766
+ else {
17767
+ classBg = 'td-dark';
17768
+ }
17769
+ }
17770
+ html += '<tr class="" id="tablerow-' + i + '">';
17771
+ // html += '<td class="left-sticky td-body ' + classBg + '" ><div class=""><input id="cb-' + i + '" type="checkbox" class="checkbox-row cb-select"/></div></td>';
17772
+ html += '<td class="left-sticky td-body ' + classBg + '" part="td-key">';
17773
+ html += '<div class="">';
17774
+ html += '<input id="suspense-' + i + '" type="checkbox" part="input" class="suspense-input"' + ((suspenseList[suspenseKey] != null && suspenseList[suspenseKey] != false) ? ' checked' : '') + '/>';
17775
+ html += '</div>';
17776
+ html += '</td>';
17777
+ for (var l = 0; l < uniqCols.length; l++) {
17778
+ // console.log('uniqcolval', uniqCols[l], sourceArray.data.mappings.mappings[i], sourceArray.data.mappings.mappings[i][uniqCols[l]]);
17779
+ html += '<td class="td-body ' + classBg + '" part="td-key">';
17780
+ html += '<div class="">';
17781
+ html += '<sf-i-elastic-text exportparts="highlight,highlight-count" text="' + sourceArray.data.mappings.mappings[i][uniqCols[l]].replace(/ *\([^)]*\) */g, "") + '" minLength="20"></sf-i-elastic-text>';
17782
+ html += '</div>';
17783
+ html += '</td>';
17784
+ }
17785
+ for (l = 0; l < sourceCols.length; l++) {
17786
+ for (var j = 0; j < JSON.parse(sourceArray.data.mappings.mappings[0].cols).length; j++) {
17787
+ if (sourceCols[l] == JSON.parse(sourceArray.data.mappings.mappings[0].cols)[j]) {
17788
+ if (sourceArray.data.mappings.mappings[i].data != null) {
17789
+ html += '<td class="td-body ' + classBg + '" part="td-body">';
17790
+ html += '<div class="">';
17791
+ //console.log('isArray', sourceCols[l], Array.isArray(JSON.parse(sourceArray.data.mappings.mappings[i].data)[j]));
17792
+ if (Array.isArray(JSON.parse(sourceArray.data.mappings.mappings[i].data)[j])) {
17793
+ for (var k = 0; k < JSON.parse(sourceArray.data.mappings.mappings[i].data)[j].length; k++) {
17794
+ html += ('<sf-i-elastic-text exportparts="highlight,highlight-count" text="' + JSON.parse(sourceArray.data.mappings.mappings[i].data)[j][k] + '" minLength="100" lineSize="4"></sf-i-elastic-text>');
17795
+ }
17796
+ }
17797
+ else {
17798
+ html += ('<sf-i-elastic-text exportparts="highlight,highlight-count" text="' + JSON.parse(sourceArray.data.mappings.mappings[i].data)[j] + '" minLength="100" lineSize="4"></sf-i-elastic-text>');
17799
+ }
17800
+ html += '</div>';
17801
+ html += '</td>';
17802
+ }
17803
+ }
17804
+ }
17805
+ }
17806
+ html += '</tr>';
17807
+ //console.log('i=', i);
17808
+ }
17809
+ html += '</tbody>';
17810
+ html += '</table>';
17811
+ html += '</div>';
17812
+ html += '</div>';
17813
+ this._SfOnboardingSuspenseContainer.innerHTML = html;
17814
+ const buttonApply = this._SfOnboardingSuspenseContainer.querySelector('.button-apply');
17815
+ buttonApply.addEventListener('click', () => {
17816
+ let inputSuspenseCheckboxes = this._SfOnboardingSuspenseContainer.querySelectorAll('.suspense-input');
17817
+ let tempSuspenseList = {};
17818
+ for (let inputSuspenseCheckbox of inputSuspenseCheckboxes) {
17819
+ let index = inputSuspenseCheckbox.id.split("-")[1];
17820
+ if (inputSuspenseCheckbox.checked) {
17821
+ let item = sourceArray.data.mappings.mappings[index];
17822
+ let suspenseKey = item.entityid + ';' + item.locationid + ';' + item.id;
17823
+ tempSuspenseList[suspenseKey] = true;
17824
+ }
17825
+ }
17826
+ this.renderOnboardingSuspense(sourceArray, tempSuspenseList);
17827
+ });
17828
+ const buttonSave = this._SfOnboardingSuspenseContainer.querySelector('.button-save');
17829
+ buttonSave.addEventListener('click', async () => {
17830
+ console.log('saving suspense', suspenseList, Object.keys(suspenseList).length);
17831
+ let response = await this.uploadMappedSuspense(suspenseList);
17832
+ console.log('suspense save response', response);
17833
+ this.loadOnboardingSuspense();
17834
+ });
17835
+ const buttonToggleMoreBack = this._SfOnboardingSuspenseContainer.querySelector('.button-toggle-more-back');
17836
+ const buttonToggleMore = this._SfOnboardingSuspenseContainer.querySelector('.button-toggle-more');
17837
+ buttonToggleMore.addEventListener('click', async (ev) => {
17838
+ ev.target.classList.add('hide');
17839
+ buttonToggleMoreBack.classList.remove('hide');
17840
+ const buttonExportMappingCSV = this._SfOnboardingSuspenseContainer.querySelector('.button-export-mapping-csv');
17841
+ buttonExportMappingCSV.style.display = 'flex';
17842
+ // const buttonApply = (divElement as HTMLDivElement).querySelector('.button-apply') as HTMLButtonElement;
17843
+ // buttonApply.style.display = 'flex';
17844
+ const buttonLoadLocal = this._SfOnboardingSuspenseContainer.querySelector('.button-local-load');
17845
+ buttonLoadLocal.style.display = 'flex';
17846
+ const buttonSaveLocal = this._SfOnboardingSuspenseContainer.querySelector('.button-local-save');
17847
+ buttonSaveLocal.style.display = 'flex';
17848
+ const buttonSave = this._SfOnboardingSuspenseContainer.querySelector('.button-save');
17849
+ buttonSave.style.display = 'flex';
17850
+ const buttonExportMappingCSVNew = Util.clearListeners(buttonExportMappingCSV);
17851
+ buttonExportMappingCSVNew === null || buttonExportMappingCSVNew === void 0 ? void 0 : buttonExportMappingCSVNew.addEventListener('click', async () => {
17852
+ let csvArray = JSON.parse(JSON.stringify(sourceArray.data.mappings.mappings));
17853
+ for (let [i, obj] of csvArray.entries()) {
17854
+ let tempCsvObj = obj;
17855
+ if (obj['cols'] != null && obj['data'] != null) {
17856
+ let dataArr = JSON.parse(obj['data']);
17857
+ let colsArr = JSON.parse(obj['cols']);
17858
+ for (let [j, colKey] of colsArr.entries()) {
17859
+ tempCsvObj['cols_' + colKey] = dataArr[j];
17860
+ }
17861
+ }
17862
+ csvArray[i] = tempCsvObj;
17863
+ }
17864
+ console.log('csv array', csvArray);
17865
+ let csvData = Util.convertToCSV(csvArray);
17866
+ // let csvData = Util.convertToCSV(taggingArray.data.mappings.mappings);
17867
+ console.log('csvData', csvData);
17868
+ const blob = new Blob([csvData], { type: 'text/csv;charset=utf-8;' });
17869
+ const url = window.URL.createObjectURL(blob);
17870
+ const a = document.createElement('a');
17871
+ a.setAttribute('href', url);
17872
+ a.setAttribute('download', 'mapping_suspense_' + new Date().getTime() + '.csv');
17873
+ a.click();
17874
+ });
17875
+ const buttonLoadLocalNew = Util.clearListeners(buttonLoadLocal);
17876
+ buttonLoadLocalNew === null || buttonLoadLocalNew === void 0 ? void 0 : buttonLoadLocalNew.addEventListener('click', async () => {
17877
+ console.log('load-local');
17878
+ this._SfOnboardingSuspenseContainer.querySelector('#fileInput').click();
17879
+ });
17880
+ const fileInput = this._SfOnboardingSuspenseContainer.querySelector('#fileInput');
17881
+ fileInput.value = '';
17882
+ const fileInputNew = Util.clearListeners(fileInput);
17883
+ fileInputNew.addEventListener('change', (e) => {
17884
+ var frCsv = new FileReader();
17885
+ frCsv.onload = () => {
17886
+ console.log('taggingarray onload called');
17887
+ console.log('csv result', frCsv.result);
17888
+ const tempArr = Util.parseCsv(frCsv.result + "");
17889
+ console.log('csv data', tempArr);
17890
+ let changeCount = 0;
17891
+ let tempSuspenseList = {};
17892
+ for (let obj of tempArr) {
17893
+ let suspenseKey = obj.entityid + ';' + obj.locationid + ';' + obj.id;
17894
+ if ((suspenseList[suspenseKey] == null && obj.suspense == true) || (suspenseList[suspenseKey] != null && obj.suspense == false)) {
17895
+ console.log('adding to suspense change', suspenseKey, suspenseList[suspenseKey], obj.suspense);
17896
+ this.changedOnboardingItemIds.push(suspenseKey);
17897
+ changeCount++;
17898
+ }
17899
+ tempSuspenseList[suspenseKey] = obj.suspense;
17900
+ }
17901
+ this.setSuccessBtn(changeCount + " items changed. Do you wish to apply?", ["No", "Yes"], [
17902
+ () => {
17903
+ this.clearMessages();
17904
+ this.changedOnboardingItemIds = [];
17905
+ buttonToggleMoreBack.click();
17906
+ },
17907
+ () => {
17908
+ this.clearMessages();
17909
+ this.renderOnboardingSuspense(sourceArray, tempSuspenseList);
17910
+ }
17911
+ ]);
17912
+ // let tempObj:any = {"data":{"mappings":{"mappings":tempArr}}}
17913
+ // let tempObj:{data:{mappings:{mappings:any[]}}} = {data:{mappings:{mappings:tempArr}}}
17914
+ };
17915
+ if (e.target.files[0].name.toLowerCase().indexOf("suspense".toLowerCase()) >= 0) {
17916
+ frCsv.readAsText(e.target.files[0]);
17917
+ }
17918
+ });
17919
+ const buttonSaveLocalNew = Util.clearListeners(buttonSaveLocal);
17920
+ buttonSaveLocalNew === null || buttonSaveLocalNew === void 0 ? void 0 : buttonSaveLocalNew.addEventListener('click', async () => {
17921
+ console.log('save-local');
17922
+ const blob = new Blob([JSON.stringify(sourceArray)], { type: 'text/plain' });
17923
+ const url = window.URL.createObjectURL(blob);
17924
+ const a = document.createElement('a');
17925
+ a.setAttribute('href', url);
17926
+ a.setAttribute('download', 'mapping_suspense_' + new Date().toLocaleString() + '.txt');
17927
+ a.click();
17928
+ });
17929
+ });
17930
+ buttonToggleMoreBack.addEventListener('click', async (ev) => {
17931
+ ev.target.classList.add('hide');
17932
+ buttonToggleMore.classList.remove('hide');
17933
+ const buttonDownloadBackups = this._SfOnboardingSuspenseContainer.querySelector('.button-download-backups');
17934
+ buttonDownloadBackups.style.display = 'none';
17935
+ const buttonExportMapping = this._SfOnboardingSuspenseContainer.querySelector('.button-export-mapping');
17936
+ buttonExportMapping.style.display = 'none';
17937
+ const buttonExportMappingCSV = this._SfOnboardingSuspenseContainer.querySelector('.button-export-mapping-csv');
17938
+ buttonExportMappingCSV.style.display = 'none';
17939
+ // const buttonApply = (divElement as HTMLDivElement).querySelector('.button-apply') as HTMLButtonElement;
17940
+ // buttonApply.style.display = 'none';
17941
+ const buttonLoadLocal = this._SfOnboardingSuspenseContainer.querySelector('.button-local-load');
17942
+ buttonLoadLocal.style.display = 'none';
17943
+ const buttonSaveLocal = this._SfOnboardingSuspenseContainer.querySelector('.button-local-save');
17944
+ buttonSaveLocal.style.display = 'none';
17945
+ // const buttonSave = (divElement as HTMLDivElement).querySelector('.button-save') as HTMLButtonElement;
17946
+ // buttonSave.style.display = 'none';
17947
+ });
17948
+ this.changedOnboardingItemIds = [];
17949
+ };
17950
+ this.renderOnboardingSuspenseOld = (_suspenseList) => {
17566
17951
  //console.log('calendarjobs', calendarJobs);
17567
17952
  var _a;
17568
17953
  var html = '';
@@ -21774,6 +22159,33 @@ let SfIEvents = class SfIEvents extends LitElement {
21774
22159
  this.uploadCountriesMapping = async (data) => {
21775
22160
  await this.uploadOnboardingMapping(data, 'countries');
21776
22161
  };
22162
+ this.uploadMappedSuspense = async (data) => {
22163
+ //console.log('uploading..', data);
22164
+ let url = "https://" + this.apiId + "/updatemappedsuspense";
22165
+ const body = {
22166
+ "projectid": this.projectId,
22167
+ "data": JSON.stringify(data),
22168
+ };
22169
+ let authorization = btoa(Util.readCookie('email') + ":" + Util.readCookie('accessToken'));
22170
+ let xhr = (await this.prepareXhr(body, url, this._SfLoader, authorization));
22171
+ this._SfLoader.innerHTML = '';
22172
+ if (xhr.status == 200) {
22173
+ const jsonRespose = JSON.parse(xhr.responseText);
22174
+ console.log('jsonResponse suspense', jsonRespose);
22175
+ return jsonRespose;
22176
+ }
22177
+ else {
22178
+ if (xhr.status == 401) {
22179
+ let changeEvent = new CustomEvent('tokenExpired', { bubbles: true });
22180
+ this.dispatchEvent(changeEvent);
22181
+ }
22182
+ const jsonRespose = JSON.parse(xhr.responseText);
22183
+ this.setError(jsonRespose.error);
22184
+ setTimeout(() => {
22185
+ this.clearMessages();
22186
+ }, 2000);
22187
+ }
22188
+ };
21777
22189
  this.uploadOnboardingMapping = async (data, onboardingstep) => {
21778
22190
  //console.log('uploading..', data);
21779
22191
  let url = "https://" + this.apiId + "/updatemappedonboarding";
@@ -21931,7 +22343,7 @@ let SfIEvents = class SfIEvents extends LitElement {
21931
22343
  }
21932
22344
  };
21933
22345
  this.uploadTriggerMyEvent = async (complianceid, message, countryname, entityname, locationname, statute, subcategory, suspenseVal = {}) => {
21934
- let url = "https://" + this.apiId + "/triggermyevent1";
22346
+ let url = "https://" + this.apiId + "/triggermyevent2";
21935
22347
  const body = {
21936
22348
  "projectid": this.projectId,
21937
22349
  "complianceid": complianceid,
@@ -23377,7 +23789,7 @@ let SfIEvents = class SfIEvents extends LitElement {
23377
23789
  }
23378
23790
  };
23379
23791
  this.fetchSuspenseList = async () => {
23380
- let url = "https://" + this.apiId + "/getsuspenselist";
23792
+ let url = "https://" + this.apiId + "/getsuspenselist1";
23381
23793
  const authorization = btoa(Util.readCookie('email') + ":" + Util.readCookie('accessToken'));
23382
23794
  const year = this.getCurrentYearGeneric();
23383
23795
  const xhr = (await this.prepareXhr({ "projectid": this.projectId, "year": year }, url, this._SfLoader, authorization));
@@ -24407,6 +24819,25 @@ let SfIEvents = class SfIEvents extends LitElement {
24407
24819
  elems[index].style.display = 'flex';
24408
24820
  }
24409
24821
  };
24822
+ this.formatIndianNumber = (num) => {
24823
+ if (num === null || num === undefined || isNaN(num))
24824
+ return '';
24825
+ num = Number(num);
24826
+ if (num >= 10000000) {
24827
+ // 1 Crore = 10,000,000
24828
+ return (num / 10000000).toFixed(num % 10000000 === 0 ? 0 : 2).replace(/\.00$/, '') + ' Cr';
24829
+ }
24830
+ else if (num >= 100000) {
24831
+ // 1 Lakh = 100,000
24832
+ return (num / 100000).toFixed(num % 100000 === 0 ? 0 : 2).replace(/\.00$/, '') + ' Lac';
24833
+ }
24834
+ else if (num >= 1000) {
24835
+ return (num / 1000).toFixed(num % 1000 === 0 ? 0 : 2).replace(/\.00$/, '') + ' K';
24836
+ }
24837
+ else {
24838
+ return num.toString();
24839
+ }
24840
+ };
24410
24841
  this.truncate = (str, n, useWordBoundary, ellipsis = true) => {
24411
24842
  if (str.length <= n) {
24412
24843
  return str;