sf-i-events 1.0.866 → 1.0.868

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/package.json CHANGED
@@ -1,7 +1,7 @@
1
1
  {
2
2
  "name": "sf-i-events",
3
3
  "private": false,
4
- "version": "1.0.866",
4
+ "version": "1.0.868",
5
5
  "description": "Superflows Navigation Component",
6
6
  "main": "sf-i-events.js",
7
7
  "module": "sf-i-events.js",
package/sf-i-events.js CHANGED
@@ -2515,7 +2515,7 @@ let SfIEvents = class SfIEvents extends LitElement {
2515
2515
  return html;
2516
2516
  };
2517
2517
  this.renderCalendarRowDivItemDivStart = (mmdd, event, itemNumber, partStatus, bgStatus) => {
2518
- var _a, _b;
2518
+ var _a, _b, _c, _f;
2519
2519
  var html = '';
2520
2520
  var remarks = "";
2521
2521
  var occurrenceDate = "";
@@ -2543,10 +2543,64 @@ let SfIEvents = class SfIEvents extends LitElement {
2543
2543
  html += '<div class="stream-events-container flex-grow" part="' + bgStatus + '">';
2544
2544
  html += '<div class="hidden-tags hide">' + JSON.stringify(event['tags']) + '</div>';
2545
2545
  html += '<div class="hidden-title hide"><table><thead><th part="badge-filtered"><i>not filtered</i></th></thead></table></div>';
2546
- html += '<div part="stream-events-event-title" class="stream-events-event-title d-flex align-center pl-5 pb-5">' + '<input id="button-select-' + mmdd.replace('/', '-') + '-' + itemNumber + '-' + (((event.makercheckers != null && (event.makercheckers).length > 0)) ? '1' : '0') + '-' + (((event.docs != null && (event.docs).length > 0)) ? '1' : '0') + '-' + event.entityid.replace(/-/g, '_') + '-' + event.locationid.replace(/-/g, '_') + '-' + event.id.replace(/-/g, '_') + '-' + event.duedate.split('/')[1] + '-' + event.duedate.split('/')[0] + '-' + event.duedate.split('/')[2] + '-' + partStatus.replace(/-/g, '_') + '-' + (((_a = event.module) !== null && _a !== void 0 ? _a : false) ? event.module : 'compliance') + '-' + ((event.isbulk == null || event.isbulk == false) ? "" : "bulk") + (((event.reportformat != null && event.reportformat.length > 0) || (event.isbulk != null && event.isbulk == true) || (event.customreporting != null)) ? "reportformat" : "") + '" class="button-select mr-10 ' + (((event.reportformat != null && event.reportformat.length > 0) || (event.isbulk != null && event.isbulk == true) || (event.customreporting != null)) ? 'hide' : '') + '" type="checkbox"/>' + (event.isbulk != null && event.isbulk == true ? '<div class="lds-dual-ring1 bulk-loader mr-10"></div>' : '') + '<sf-i-elastic-text class="stream-event-title' + (event.isbulk == null || event.isbulk == false ? ' button-event-title' : '') + '" id="stream-event-title-' + mmdd.replace(/\//g, '-') + '-' + itemNumber + '-' + (((_b = event.module) !== null && _b !== void 0 ? _b : false) ? event.module : 'compliance') + '" text="' + event['obligationtitle'] + '" minLength="' + (event.reporters != null ? "100" : "60") + '"></sf-i-elastic-text>' + event.reporters != null ? ('') : ('<div part="stream-event-location" class="stream-event-location ml-5">' + event.locationname.replace(/ *\([^)]*\) */g, "") + '</div><div part="stream-event-risk-' + event.risk[0].toLowerCase().replace(/ /g, '-') + '" class="stream-event-risk ml-5">' + event.risk[0] + '</div>') + (((event.reportformat != null && event.reportformat.length > 0) || (event.customreporting != null)) ? '' : ('<button id="button-list-reporting-' + mmdd.replace('/', '-') + '-' + itemNumber + '" part="button-list-reporting" class="material-icons ml-10 button-list-reporting">edit_note</button>')) + ((event.reporters != null && lastUpdated.length > 0) ? ('&nbsp;&nbsp;<div part="event-last-updated-time" class="d-flex align-center">' + lastUpdated + '</div>') : "") + '</div>';
2546
+ // html += '<div part="stream-events-event-title" class="stream-events-event-title d-flex align-center pl-5 pb-5">' + '<input id="button-select-' + mmdd.replace('/', '-') + '-' + itemNumber + '-' + (((event.makercheckers != null && (event.makercheckers).length > 0)) ? '1' : '0') + '-' + (((event.docs != null && (event.docs).length > 0)) ? '1' : '0') + '-' + event.entityid.replace(/-/g, '_') + '-' + event.locationid.replace(/-/g, '_') + '-' + event.id.replace(/-/g, '_') + '-' + event.duedate.split('/')[1] + '-' + event.duedate.split('/')[0] + '-' + event.duedate.split('/')[2] + '-' + partStatus.replace(/-/g, '_') + '-' + ((event.module ?? false) ? event.module : 'compliance') + '-' + ((event.isbulk == null || event.isbulk == false) ? "" : "bulk") + (((event.reportformat != null && event.reportformat.length > 0) || (event.isbulk != null && event.isbulk == true) || (event.customreporting != null)) ? "reportformat" : "") + '" class="button-select mr-10 ' + (((event.reportformat != null && event.reportformat.length > 0) || (event.isbulk != null && event.isbulk == true) || (event.customreporting != null)) ? 'hide' : '') + '" type="checkbox"/>' + (event.isbulk != null && event.isbulk == true ? '<div class="lds-dual-ring1 bulk-loader mr-10"></div>' : '') + '<sf-i-elastic-text class="stream-event-title' + (event.isbulk == null || event.isbulk == false ? ' button-event-title' : '') + '" id="stream-event-title-' + mmdd.replace(/\//g, '-') + '-' + itemNumber + '-' + ((event.module ?? false) ? event.module : 'compliance') + '" text="' + event['obligationtitle'] + '" minLength="' + (event.reporters != null ? "100" : "60") + '"></sf-i-elastic-text>' + event.reporters != null ? ('') : ('<div part="stream-event-location" class="stream-event-location ml-5">' + event.locationname.replace(/ *\([^)]*\) */g, "") + '</div><div part="stream-event-risk-' + event.risk[0].toLowerCase().replace(/ /g, '-') + '" class="stream-event-risk ml-5">' + event.risk[0] + '</div>') + (((event.reportformat != null && event.reportformat.length > 0) || (event.customreporting != null)) ? '' : ('<button id="button-list-reporting-' + mmdd.replace('/', '-') + '-' + itemNumber + '" part="button-list-reporting" class="material-icons ml-10 button-list-reporting">edit_note</button>')) + ((event.reporters != null && lastUpdated.length > 0) ? ('&nbsp;&nbsp;<div part="event-last-updated-time" class="d-flex align-center">' + lastUpdated + '</div>') : "") + '</div>';
2547
+ const isBulk = event.isbulk === true;
2548
+ const hasReportFormat = ((_a = event.reportformat) === null || _a === void 0 ? void 0 : _a.length) > 0;
2549
+ const hasCustomReporting = event.customreporting != null;
2550
+ const hasMakerCheckers = ((_b = event.makercheckers) === null || _b === void 0 ? void 0 : _b.length) > 0;
2551
+ const hasDocs = ((_c = event.docs) === null || _c === void 0 ? void 0 : _c.length) > 0;
2552
+ const moduleType = (_f = event.module) !== null && _f !== void 0 ? _f : 'compliance';
2553
+ const partStatusSanitized = partStatus.replace(/-/g, '_');
2554
+ const entityIdSanitized = event.entityid.replace(/-/g, '_');
2555
+ const locationIdSanitized = event.locationid.replace(/-/g, '_');
2556
+ const eventIdSanitized = event.id.replace(/-/g, '_');
2557
+ const mmddSanitized = mmdd.replace(/\//g, '-');
2558
+ const dueDateParts = event.duedate.split('/');
2559
+ const showCheckbox = !(hasReportFormat || isBulk || hasCustomReporting);
2560
+ const showReportingButton = !hasReportFormat && !hasCustomReporting && event.reporters == null;
2561
+ const showLocationRisk = event.reporters == null;
2562
+ const showLastUpdated = event.reporters != null && lastUpdated.length > 0;
2563
+ html += `
2564
+ <div part="stream-events-event-title" class="stream-events-event-title d-flex align-center pl-5 pb-5">
2565
+ <input
2566
+ id="button-select-${mmddSanitized}-${itemNumber}-${hasMakerCheckers ? '1' : '0'}-${hasDocs ? '1' : '0'}-${entityIdSanitized}-${locationIdSanitized}-${eventIdSanitized}-${dueDateParts[1]}-${dueDateParts[0]}-${dueDateParts[2]}-${partStatusSanitized}-${moduleType}-${isBulk ? 'bulk' : ''}${(hasReportFormat || isBulk || hasCustomReporting) ? 'reportformat' : ''}"
2567
+ class="button-select mr-10 ${showCheckbox ? '' : 'hide'}"
2568
+ type="checkbox"
2569
+ />
2570
+ ${isBulk ? '<div class="lds-dual-ring1 bulk-loader mr-10"></div>' : ''}
2571
+ <sf-i-elastic-text
2572
+ class="stream-event-title${!isBulk ? ' button-event-title' : ''}"
2573
+ id="stream-event-title-${mmddSanitized}-${itemNumber}-${moduleType}"
2574
+ text="${event.obligationtitle}"
2575
+ minLength="${event.reporters != null ? '100' : '60'}">
2576
+ </sf-i-elastic-text>
2577
+ ${showLocationRisk ? `
2578
+ <div part="stream-event-location" class="stream-event-location ml-5">
2579
+ ${event.locationname.replace(/ *\([^)]*\) */g, "")}
2580
+ </div>
2581
+ <div part="stream-event-risk-${event.risk[0].toLowerCase().replace(/ /g, '-')}" class="stream-event-risk ml-5">
2582
+ ${event.risk[0]}
2583
+ </div>
2584
+ ` : ''}
2585
+ ${showReportingButton ? `
2586
+ <button
2587
+ id="button-list-reporting-${mmddSanitized}-${itemNumber}"
2588
+ part="button-list-reporting"
2589
+ class="material-icons ml-10 button-list-reporting">
2590
+ edit_note
2591
+ </button>
2592
+ ` : ''}
2593
+ ${showLastUpdated ? `
2594
+ &nbsp;&nbsp;<div part="event-last-updated-time" class="d-flex align-center">
2595
+ ${lastUpdated}
2596
+ </div>
2597
+ ` : ''}
2598
+ </div>
2599
+ `;
2547
2600
  if (event.reporters != null && remarks.length > 0) {
2548
2601
  html += '<div part="stream-events-event-subtitle" class="stream-events-event-subtitle">' + remarks + ', occurred on ' + occurrenceDate + '</div>';
2549
2602
  }
2603
+ console.log('returning divstarthtml', html);
2550
2604
  return html;
2551
2605
  };
2552
2606
  this.renderCalendarRowDivItemDivEnd = () => {
@@ -3311,7 +3365,7 @@ let SfIEvents = class SfIEvents extends LitElement {
3311
3365
  html += '<button class="invisible" part="button">Save</button>';
3312
3366
  html += '<button id="button-uploader-submit-approve" class="button-submit" part="button">Save</button>';
3313
3367
  html += '</div>';
3314
- if (this.myRole != this.TAB_FUNCTION_HEAD && docs.length > 0) {
3368
+ if (this.myRole != this.TAB_FUNCTION_HEAD && docs.length > 0 && event.module != 'agreement') {
3315
3369
  html += '<div class="m-20">';
3316
3370
  html += '<label part="input-label">Supporting Documents</label>';
3317
3371
  html += '<slot name="uploader"></slot>';
@@ -3376,10 +3430,8 @@ let SfIEvents = class SfIEvents extends LitElement {
3376
3430
  html += '<label part="input-label">Completion Percentage*</label>';
3377
3431
  html += '<input id="input-reporter-percentage" part="input" type="number" value="' + percentage + '" max="100" min="0" step="1"/><br />';
3378
3432
  html += '<div part="input-reporter-percentage-message" class="input-reporter-percentage-message mb-20">For reporting full non-compliance, choose 0%. For reporting compliance with gaps, choose the appropriate % value.</div><br />';
3379
- }
3380
- // if(docsOptional.length === 0) {
3381
- html += '<label part="input-label">Supporting Documents' + ((docsOptional.length > 0) ? '' : '*') + '</label>';
3382
- if (event.module != 'agreement') {
3433
+ // if(docsOptional.length === 0) {
3434
+ html += '<label part="input-label">Supporting Documents' + ((docsOptional.length > 0) ? '' : '*') + '</label>';
3383
3435
  html += '<slot name="uploader"></slot>';
3384
3436
  if (uploadGuidance == 1) {
3385
3437
  html += '<div id="upload-guidance-button" part="upload-guidance-button" class="d-flex button-icon-small align-center align-self-start mt-10"><span class="material-symbols-outlined">help</span>&nbsp;<span>Get Help</span></div>';
@@ -4213,6 +4265,7 @@ let SfIEvents = class SfIEvents extends LitElement {
4213
4265
  filterButton.innerHTML = (filterList.style.display != 'block' ? 'category' : 'close');
4214
4266
  const filterSubmitButton = filterList.querySelector('#button-submit-features');
4215
4267
  filterSubmitButton.addEventListener('click', () => {
4268
+ Util.setFeatures(this.selectedFeatures);
4216
4269
  this.enableCustom();
4217
4270
  this.renderTabs(this.selectedTab);
4218
4271
  // this.processDateSelection(eventsContainer);
@@ -4893,6 +4946,7 @@ let SfIEvents = class SfIEvents extends LitElement {
4893
4946
  filterButton.innerHTML = (filterList.style.display != 'block' ? 'category' : 'close');
4894
4947
  const filterSubmitButton = filterList.querySelector('#button-submit-features');
4895
4948
  filterSubmitButton.addEventListener('click', () => {
4949
+ Util.setFeatures(this.selectedFeatures);
4896
4950
  this.renderTabs(this.selectedTab);
4897
4951
  this.processDateSelectionViewer(eventsContainer);
4898
4952
  });
@@ -7562,6 +7616,7 @@ let SfIEvents = class SfIEvents extends LitElement {
7562
7616
  filterButton.innerHTML = (filterList.style.display != 'block' ? 'category' : 'close');
7563
7617
  const filterSubmitButton = filterList.querySelector('#button-submit-features');
7564
7618
  filterSubmitButton.addEventListener('click', async () => {
7619
+ Util.setFeatures(this.selectedFeatures);
7565
7620
  const dateResult = this.calculateStartAndEndDateOfStream(index);
7566
7621
  console.log('dateresult', dateResult, index);
7567
7622
  console.log('selectedfeatures', this.selectedFeatures);
@@ -8031,6 +8086,7 @@ let SfIEvents = class SfIEvents extends LitElement {
8031
8086
  filterButton.innerHTML = (filterList.style.display != 'block' ? 'category' : 'close');
8032
8087
  const filterSubmitButton = filterList.querySelector('#button-submit-features');
8033
8088
  filterSubmitButton.addEventListener('click', async () => {
8089
+ Util.setFeatures(this.selectedFeatures);
8034
8090
  const dateResult = this.calculateStartAndEndDateOfStream(index);
8035
8091
  const monthResult = this.calculateMonthFromIndex(index);
8036
8092
  console.log('monthResult', monthResult);
@@ -10024,6 +10080,7 @@ let SfIEvents = class SfIEvents extends LitElement {
10024
10080
  console.log('renewing', reportformatvalues);
10025
10081
  //console.log('fetch calendar url', url);
10026
10082
  let urlBody = { projectid: this.projectId, objectid: listEvent.id, newvalues: reportformatvalues == "" ? null : JSON.parse(reportformatvalues), published: true, terminated: ((_a = JSON.parse(reportformatvalues).terminated) !== null && _a !== void 0 ? _a : false) };
10083
+ // console.log('reopen body', url, urlBody)
10027
10084
  const authorization = btoa(Util.readCookie('email') + ":" + Util.readCookie('accessToken'));
10028
10085
  const xhr = (await this.prepareXhr(urlBody, url, this._SfLoader, authorization, 'Preparing'));
10029
10086
  this._SfLoader.innerHTML = '';
@@ -10145,6 +10202,7 @@ let SfIEvents = class SfIEvents extends LitElement {
10145
10202
  reportingReporting.configjson = reportingSchemaJson;
10146
10203
  if (reportingSchemaValues != "")
10147
10204
  reportingReporting.prepopulateValJson = reportingSchemaValues;
10205
+ reportingReporting.mode = (this.myRole == this.TAB_REPORTER || this.myRole == this.TAB_FUNCTION_HEAD) ? "edit" : "view";
10148
10206
  reportingReporting.editdisable = (this.myRole == this.TAB_REPORTER || this.myRole == this.TAB_FUNCTION_HEAD) ? "false" : "true";
10149
10207
  reportingReporting.flow = "reporting";
10150
10208
  setTimeout(() => {
@@ -10344,7 +10402,7 @@ let SfIEvents = class SfIEvents extends LitElement {
10344
10402
  const approved = this._SfDetailContainer.querySelector('#input-approve-yes').checked;
10345
10403
  if (approved == listEvent.approved) {
10346
10404
  buttonClick.innerHTML = "Save";
10347
- this.setError('Already Approved!');
10405
+ this.setError(approved ? 'Already Approved!' : 'Already Rejected!');
10348
10406
  setTimeout(() => {
10349
10407
  this.clearMessages();
10350
10408
  }, 3000);
@@ -15089,39 +15147,64 @@ let SfIEvents = class SfIEvents extends LitElement {
15089
15147
  html += '<button class="tab-button" id="consumer-tab-viewer" part="' + (this.myRole == this.TAB_VIEWER ? 'calendar-tab-button-selected' : 'calendar-tab-button-not-selected') + '">Viewer</button>';
15090
15148
  this._SfRoleTabContainer.innerHTML = html;
15091
15149
  (_a = this._SfRoleTabContainer.querySelector('#consumer-tab-reporter')) === null || _a === void 0 ? void 0 : _a.addEventListener('click', async () => {
15092
- var _a;
15150
+ var _a, _b;
15093
15151
  this.myRole = this.TAB_REPORTER;
15094
15152
  this.renderRoleTabs();
15095
15153
  // this.proceedToCalendar();
15096
- (_a = this._SfTabContainer.querySelector('#calendar-tab-month')) === null || _a === void 0 ? void 0 : _a.click();
15154
+ if (this.selectedFeatures.indexOf('agreements') >= 0) {
15155
+ (_a = this._SfTabContainer.querySelector('#calendar-tab-custom')) === null || _a === void 0 ? void 0 : _a.click();
15156
+ }
15157
+ else {
15158
+ (_b = this._SfTabContainer.querySelector('#calendar-tab-month')) === null || _b === void 0 ? void 0 : _b.click();
15159
+ }
15097
15160
  });
15098
15161
  (_b = this._SfRoleTabContainer.querySelector('#consumer-tab-approver')) === null || _b === void 0 ? void 0 : _b.addEventListener('click', async () => {
15099
- var _a;
15162
+ var _a, _b;
15100
15163
  this.myRole = this.TAB_APPROVER;
15101
15164
  this.renderRoleTabs();
15102
15165
  // this.proceedToCalendar();
15103
- (_a = this._SfTabContainer.querySelector('#calendar-tab-month')) === null || _a === void 0 ? void 0 : _a.click();
15166
+ if (this.selectedFeatures.indexOf('agreements') >= 0) {
15167
+ (_a = this._SfTabContainer.querySelector('#calendar-tab-custom')) === null || _a === void 0 ? void 0 : _a.click();
15168
+ }
15169
+ else {
15170
+ (_b = this._SfTabContainer.querySelector('#calendar-tab-month')) === null || _b === void 0 ? void 0 : _b.click();
15171
+ }
15104
15172
  });
15105
15173
  (_c = this._SfRoleTabContainer.querySelector('#consumer-tab-functionhead')) === null || _c === void 0 ? void 0 : _c.addEventListener('click', async () => {
15106
- var _a;
15174
+ var _a, _b;
15107
15175
  this.myRole = this.TAB_FUNCTION_HEAD;
15108
15176
  this.renderRoleTabs();
15109
15177
  // this.proceedToCalendar();
15110
- (_a = this._SfTabContainer.querySelector('#calendar-tab-month')) === null || _a === void 0 ? void 0 : _a.click();
15178
+ if (this.selectedFeatures.indexOf('agreements') >= 0) {
15179
+ (_a = this._SfTabContainer.querySelector('#calendar-tab-custom')) === null || _a === void 0 ? void 0 : _a.click();
15180
+ }
15181
+ else {
15182
+ (_b = this._SfTabContainer.querySelector('#calendar-tab-month')) === null || _b === void 0 ? void 0 : _b.click();
15183
+ }
15111
15184
  });
15112
15185
  (_f = this._SfRoleTabContainer.querySelector('#consumer-tab-auditor')) === null || _f === void 0 ? void 0 : _f.addEventListener('click', async () => {
15113
- var _a;
15186
+ var _a, _b;
15114
15187
  this.myRole = this.TAB_AUDITOR;
15115
15188
  this.renderRoleTabs();
15116
15189
  // this.proceedToCalendar();
15117
- (_a = this._SfTabContainer.querySelector('#calendar-tab-month')) === null || _a === void 0 ? void 0 : _a.click();
15190
+ if (this.selectedFeatures.indexOf('agreements') >= 0) {
15191
+ (_a = this._SfTabContainer.querySelector('#calendar-tab-custom')) === null || _a === void 0 ? void 0 : _a.click();
15192
+ }
15193
+ else {
15194
+ (_b = this._SfTabContainer.querySelector('#calendar-tab-month')) === null || _b === void 0 ? void 0 : _b.click();
15195
+ }
15118
15196
  });
15119
15197
  (_g = this._SfRoleTabContainer.querySelector('#consumer-tab-viewer')) === null || _g === void 0 ? void 0 : _g.addEventListener('click', async () => {
15120
- var _a;
15198
+ var _a, _b;
15121
15199
  this.myRole = this.TAB_VIEWER;
15122
15200
  this.renderRoleTabs();
15123
15201
  // this.proceedToCalendar();
15124
- (_a = this._SfTabContainer.querySelector('#calendar-tab-month')) === null || _a === void 0 ? void 0 : _a.click();
15202
+ if (this.selectedFeatures.indexOf('agreements') >= 0) {
15203
+ (_a = this._SfTabContainer.querySelector('#calendar-tab-custom')) === null || _a === void 0 ? void 0 : _a.click();
15204
+ }
15205
+ else {
15206
+ (_b = this._SfTabContainer.querySelector('#calendar-tab-month')) === null || _b === void 0 ? void 0 : _b.click();
15207
+ }
15125
15208
  });
15126
15209
  };
15127
15210
  this.csvmaker = (data) => {
@@ -19507,6 +19590,13 @@ let SfIEvents = class SfIEvents extends LitElement {
19507
19590
  }
19508
19591
  };
19509
19592
  this.renderWithFeatures = async (startDate = "", endDate = "", searchString = "", list = "yes", month = "00", year = this.calendarStartYYYY) => {
19593
+ this.selectedFeatures = Util.getFeatures();
19594
+ for (let feature of this.selectedFeatures) {
19595
+ if (this.getFeatures().indexOf(feature) < 0) {
19596
+ this.selectedFeatures = ['compliances'];
19597
+ break;
19598
+ }
19599
+ }
19510
19600
  this.events = [];
19511
19601
  console.log('rendering and fetching', startDate, endDate, searchString, list, month);
19512
19602
  if (this.selectedFeatures.indexOf('compliances') >= 0) {
@@ -21157,7 +21247,7 @@ let SfIEvents = class SfIEvents extends LitElement {
21157
21247
  }
21158
21248
  };
21159
21249
  this.loadMode = async () => {
21160
- var _a, _b;
21250
+ var _a, _b, _c;
21161
21251
  Chart.register(...registerables);
21162
21252
  //Chart.register(Colors);
21163
21253
  if (this.mode == "rcmnotifications") {
@@ -21211,8 +21301,23 @@ let SfIEvents = class SfIEvents extends LitElement {
21211
21301
  }
21212
21302
  else {
21213
21303
  //console.log('stream received rendering year', this.stream);
21214
- this.renderTabs(this.TAB_STREAM);
21215
- (_b = this._SfTabContainer.querySelector('#calendar-tab-month')) === null || _b === void 0 ? void 0 : _b.click();
21304
+ this.selectedFeatures = Util.getFeatures();
21305
+ for (let feature of this.selectedFeatures) {
21306
+ if (this.getFeatures().indexOf(feature) < 0) {
21307
+ this.selectedFeatures = ['compliances'];
21308
+ break;
21309
+ }
21310
+ }
21311
+ if (this.selectedFeatures.indexOf('agreements') >= 0) {
21312
+ this.renderTabs(this.TAB_CUSTOM);
21313
+ (_b = this._SfTabContainer.querySelector('#calendar-tab-custom')) === null || _b === void 0 ? void 0 : _b.click();
21314
+ }
21315
+ else {
21316
+ this.renderTabs(this.TAB_STREAM);
21317
+ (_c = this._SfTabContainer.querySelector('#calendar-tab-month')) === null || _c === void 0 ? void 0 : _c.click();
21318
+ }
21319
+ // this.renderTabs(this.TAB_STREAM);
21320
+ // ((this._SfTabContainer as HTMLDivElement).querySelector('#calendar-tab-month') as HTMLButtonElement)?.click();
21216
21321
  }
21217
21322
  //await this.fetchUserCalendar_2();
21218
21323
  // if(this.events != null && !this.foundCalendarInLocal()) {
@@ -4737,11 +4737,67 @@ export class SfIEvents extends LitElement {
4737
4737
  html += '<div class="stream-events-container flex-grow" part="' + bgStatus + '">';
4738
4738
  html += '<div class="hidden-tags hide">' + JSON.stringify(event['tags']) + '</div>'
4739
4739
  html += '<div class="hidden-title hide"><table><thead><th part="badge-filtered"><i>not filtered</i></th></thead></table></div>'
4740
- html += '<div part="stream-events-event-title" class="stream-events-event-title d-flex align-center pl-5 pb-5">' + '<input id="button-select-' + mmdd.replace('/', '-') + '-' + itemNumber + '-' + (((event.makercheckers != null && (event.makercheckers).length > 0)) ? '1' : '0') + '-' + (((event.docs != null && (event.docs).length > 0)) ? '1' : '0') + '-' + event.entityid.replace(/-/g, '_') + '-' + event.locationid.replace(/-/g, '_') + '-' + event.id.replace(/-/g, '_') + '-' + event.duedate.split('/')[1] + '-' + event.duedate.split('/')[0] + '-' + event.duedate.split('/')[2] + '-' + partStatus.replace(/-/g, '_') + '-' + ((event.module ?? false) ? event.module : 'compliance') + '-' + ((event.isbulk == null || event.isbulk == false) ? "" : "bulk") + (((event.reportformat != null && event.reportformat.length > 0) || (event.isbulk != null && event.isbulk == true) || (event.customreporting != null)) ? "reportformat" : "") + '" class="button-select mr-10 ' + (((event.reportformat != null && event.reportformat.length > 0) || (event.isbulk != null && event.isbulk == true) || (event.customreporting != null)) ? 'hide' : '') + '" type="checkbox"/>' + (event.isbulk != null && event.isbulk == true ? '<div class="lds-dual-ring1 bulk-loader mr-10"></div>' : '') + '<sf-i-elastic-text class="stream-event-title' + (event.isbulk == null || event.isbulk == false ? ' button-event-title' : '') + '" id="stream-event-title-' + mmdd.replace(/\//g, '-') + '-' + itemNumber + '-' + ((event.module ?? false) ? event.module : 'compliance') + '" text="' + event['obligationtitle'] + '" minLength="' + (event.reporters != null ? "100" : "60") + '"></sf-i-elastic-text>' + event.reporters != null ? ('') : ('<div part="stream-event-location" class="stream-event-location ml-5">' + event.locationname.replace(/ *\([^)]*\) */g, "") + '</div><div part="stream-event-risk-' + event.risk[0].toLowerCase().replace(/ /g, '-') + '" class="stream-event-risk ml-5">' + event.risk[0] + '</div>') + (((event.reportformat != null && event.reportformat.length > 0) || (event.customreporting != null)) ? '' : ('<button id="button-list-reporting-' + mmdd.replace('/', '-') + '-' + itemNumber + '" part="button-list-reporting" class="material-icons ml-10 button-list-reporting">edit_note</button>')) + ((event.reporters != null && lastUpdated.length > 0) ? ('&nbsp;&nbsp;<div part="event-last-updated-time" class="d-flex align-center">' + lastUpdated + '</div>') : "") + '</div>';
4740
+ // html += '<div part="stream-events-event-title" class="stream-events-event-title d-flex align-center pl-5 pb-5">' + '<input id="button-select-' + mmdd.replace('/', '-') + '-' + itemNumber + '-' + (((event.makercheckers != null && (event.makercheckers).length > 0)) ? '1' : '0') + '-' + (((event.docs != null && (event.docs).length > 0)) ? '1' : '0') + '-' + event.entityid.replace(/-/g, '_') + '-' + event.locationid.replace(/-/g, '_') + '-' + event.id.replace(/-/g, '_') + '-' + event.duedate.split('/')[1] + '-' + event.duedate.split('/')[0] + '-' + event.duedate.split('/')[2] + '-' + partStatus.replace(/-/g, '_') + '-' + ((event.module ?? false) ? event.module : 'compliance') + '-' + ((event.isbulk == null || event.isbulk == false) ? "" : "bulk") + (((event.reportformat != null && event.reportformat.length > 0) || (event.isbulk != null && event.isbulk == true) || (event.customreporting != null)) ? "reportformat" : "") + '" class="button-select mr-10 ' + (((event.reportformat != null && event.reportformat.length > 0) || (event.isbulk != null && event.isbulk == true) || (event.customreporting != null)) ? 'hide' : '') + '" type="checkbox"/>' + (event.isbulk != null && event.isbulk == true ? '<div class="lds-dual-ring1 bulk-loader mr-10"></div>' : '') + '<sf-i-elastic-text class="stream-event-title' + (event.isbulk == null || event.isbulk == false ? ' button-event-title' : '') + '" id="stream-event-title-' + mmdd.replace(/\//g, '-') + '-' + itemNumber + '-' + ((event.module ?? false) ? event.module : 'compliance') + '" text="' + event['obligationtitle'] + '" minLength="' + (event.reporters != null ? "100" : "60") + '"></sf-i-elastic-text>' + event.reporters != null ? ('') : ('<div part="stream-event-location" class="stream-event-location ml-5">' + event.locationname.replace(/ *\([^)]*\) */g, "") + '</div><div part="stream-event-risk-' + event.risk[0].toLowerCase().replace(/ /g, '-') + '" class="stream-event-risk ml-5">' + event.risk[0] + '</div>') + (((event.reportformat != null && event.reportformat.length > 0) || (event.customreporting != null)) ? '' : ('<button id="button-list-reporting-' + mmdd.replace('/', '-') + '-' + itemNumber + '" part="button-list-reporting" class="material-icons ml-10 button-list-reporting">edit_note</button>')) + ((event.reporters != null && lastUpdated.length > 0) ? ('&nbsp;&nbsp;<div part="event-last-updated-time" class="d-flex align-center">' + lastUpdated + '</div>') : "") + '</div>';
4741
+
4742
+ const isBulk = event.isbulk === true;
4743
+ const hasReportFormat = event.reportformat?.length > 0;
4744
+ const hasCustomReporting = event.customreporting != null;
4745
+ const hasMakerCheckers = event.makercheckers?.length > 0;
4746
+ const hasDocs = event.docs?.length > 0;
4747
+ const moduleType = event.module ?? 'compliance';
4748
+ const partStatusSanitized = partStatus.replace(/-/g, '_');
4749
+ const entityIdSanitized = event.entityid.replace(/-/g, '_');
4750
+ const locationIdSanitized = event.locationid.replace(/-/g, '_');
4751
+ const eventIdSanitized = event.id.replace(/-/g, '_');
4752
+ const mmddSanitized = mmdd.replace(/\//g, '-');
4753
+ const dueDateParts = event.duedate.split('/');
4754
+ const showCheckbox = !(hasReportFormat || isBulk || hasCustomReporting);
4755
+ const showReportingButton = !hasReportFormat && !hasCustomReporting && event.reporters == null;
4756
+ const showLocationRisk = event.reporters == null;
4757
+ const showLastUpdated = event.reporters != null && lastUpdated.length > 0;
4758
+
4759
+ html += `
4760
+ <div part="stream-events-event-title" class="stream-events-event-title d-flex align-center pl-5 pb-5">
4761
+ <input
4762
+ id="button-select-${mmddSanitized}-${itemNumber}-${hasMakerCheckers ? '1' : '0'}-${hasDocs ? '1' : '0'}-${entityIdSanitized}-${locationIdSanitized}-${eventIdSanitized}-${dueDateParts[1]}-${dueDateParts[0]}-${dueDateParts[2]}-${partStatusSanitized}-${moduleType}-${isBulk ? 'bulk' : ''}${(hasReportFormat || isBulk || hasCustomReporting) ? 'reportformat' : ''}"
4763
+ class="button-select mr-10 ${showCheckbox ? '' : 'hide'}"
4764
+ type="checkbox"
4765
+ />
4766
+ ${isBulk ? '<div class="lds-dual-ring1 bulk-loader mr-10"></div>' : ''}
4767
+ <sf-i-elastic-text
4768
+ class="stream-event-title${!isBulk ? ' button-event-title' : ''}"
4769
+ id="stream-event-title-${mmddSanitized}-${itemNumber}-${moduleType}"
4770
+ text="${event.obligationtitle}"
4771
+ minLength="${event.reporters != null ? '100' : '60'}">
4772
+ </sf-i-elastic-text>
4773
+ ${showLocationRisk ? `
4774
+ <div part="stream-event-location" class="stream-event-location ml-5">
4775
+ ${event.locationname.replace(/ *\([^)]*\) */g, "")}
4776
+ </div>
4777
+ <div part="stream-event-risk-${event.risk[0].toLowerCase().replace(/ /g, '-')}" class="stream-event-risk ml-5">
4778
+ ${event.risk[0]}
4779
+ </div>
4780
+ ` : ''}
4781
+ ${showReportingButton ? `
4782
+ <button
4783
+ id="button-list-reporting-${mmddSanitized}-${itemNumber}"
4784
+ part="button-list-reporting"
4785
+ class="material-icons ml-10 button-list-reporting">
4786
+ edit_note
4787
+ </button>
4788
+ ` : ''}
4789
+ ${showLastUpdated ? `
4790
+ &nbsp;&nbsp;<div part="event-last-updated-time" class="d-flex align-center">
4791
+ ${lastUpdated}
4792
+ </div>
4793
+ ` : ''}
4794
+ </div>
4795
+ `;
4796
+
4741
4797
  if (event.reporters != null && remarks.length > 0) {
4742
4798
  html += '<div part="stream-events-event-subtitle" class="stream-events-event-subtitle">' + remarks + ', occurred on ' + occurrenceDate + '</div>';
4743
4799
  }
4744
-
4800
+ console.log('returning divstarthtml', html);
4745
4801
  return html;
4746
4802
 
4747
4803
  }
@@ -5626,7 +5682,7 @@ export class SfIEvents extends LitElement {
5626
5682
  html += '<button id="button-uploader-submit-approve" class="button-submit" part="button">Save</button>'
5627
5683
  html += '</div>'
5628
5684
 
5629
- if (this.myRole != this.TAB_FUNCTION_HEAD && docs.length > 0) {
5685
+ if (this.myRole != this.TAB_FUNCTION_HEAD && docs.length > 0 && event.module != 'agreement') {
5630
5686
  html += '<div class="m-20">';
5631
5687
  html += '<label part="input-label">Supporting Documents</label>';
5632
5688
  html += '<slot name="uploader"></slot>';
@@ -5704,11 +5760,11 @@ export class SfIEvents extends LitElement {
5704
5760
  html += '<label part="input-label">Completion Percentage*</label>';
5705
5761
  html += '<input id="input-reporter-percentage" part="input" type="number" value="' + percentage + '" max="100" min="0" step="1"/><br />';
5706
5762
  html += '<div part="input-reporter-percentage-message" class="input-reporter-percentage-message mb-20">For reporting full non-compliance, choose 0%. For reporting compliance with gaps, choose the appropriate % value.</div><br />'
5707
- }
5708
- // if(docsOptional.length === 0) {
5709
- html += '<label part="input-label">Supporting Documents' + ((docsOptional.length > 0) ? '' : '*') + '</label>';
5710
5763
 
5711
- if (event.module != 'agreement') {
5764
+ // if(docsOptional.length === 0) {
5765
+ html += '<label part="input-label">Supporting Documents' + ((docsOptional.length > 0) ? '' : '*') + '</label>';
5766
+
5767
+
5712
5768
  html += '<slot name="uploader"></slot>';
5713
5769
  if (uploadGuidance == 1) {
5714
5770
  html += '<div id="upload-guidance-button" part="upload-guidance-button" class="d-flex button-icon-small align-center align-self-start mt-10"><span class="material-symbols-outlined">help</span>&nbsp;<span>Get Help</span></div>'
@@ -6633,6 +6689,7 @@ export class SfIEvents extends LitElement {
6633
6689
  filterButton.innerHTML = (filterList.style.display != 'block' ? 'category' : 'close')
6634
6690
  const filterSubmitButton = filterList.querySelector('#button-submit-features') as HTMLButtonElement
6635
6691
  filterSubmitButton.addEventListener('click', () => {
6692
+ Util.setFeatures(this.selectedFeatures);
6636
6693
  this.enableCustom();
6637
6694
  this.renderTabs(this.selectedTab);
6638
6695
  // this.processDateSelection(eventsContainer);
@@ -7423,6 +7480,7 @@ export class SfIEvents extends LitElement {
7423
7480
  filterButton.innerHTML = (filterList.style.display != 'block' ? 'category' : 'close')
7424
7481
  const filterSubmitButton = filterList.querySelector('#button-submit-features') as HTMLButtonElement
7425
7482
  filterSubmitButton.addEventListener('click', () => {
7483
+ Util.setFeatures(this.selectedFeatures);
7426
7484
  this.renderTabs(this.selectedTab)
7427
7485
  this.processDateSelectionViewer(eventsContainer);
7428
7486
  })
@@ -10648,6 +10706,7 @@ export class SfIEvents extends LitElement {
10648
10706
  filterButton.innerHTML = (filterList.style.display != 'block' ? 'category' : 'close')
10649
10707
  const filterSubmitButton = filterList.querySelector('#button-submit-features') as HTMLButtonElement
10650
10708
  filterSubmitButton.addEventListener('click', async () => {
10709
+ Util.setFeatures(this.selectedFeatures);
10651
10710
  const dateResult = this.calculateStartAndEndDateOfStream(index);
10652
10711
  console.log('dateresult', dateResult, index);
10653
10712
  console.log('selectedfeatures', this.selectedFeatures);
@@ -11219,6 +11278,7 @@ export class SfIEvents extends LitElement {
11219
11278
  filterButton.innerHTML = (filterList.style.display != 'block' ? 'category' : 'close')
11220
11279
  const filterSubmitButton = filterList.querySelector('#button-submit-features') as HTMLButtonElement
11221
11280
  filterSubmitButton.addEventListener('click', async () => {
11281
+ Util.setFeatures(this.selectedFeatures);
11222
11282
  const dateResult = this.calculateStartAndEndDateOfStream(index);
11223
11283
  const monthResult = this.calculateMonthFromIndex(index);
11224
11284
  console.log('monthResult', monthResult);
@@ -13642,7 +13702,7 @@ export class SfIEvents extends LitElement {
13642
13702
  console.log('renewing', reportformatvalues)
13643
13703
  //console.log('fetch calendar url', url);
13644
13704
  let urlBody: any = { projectid: this.projectId, objectid: listEvent.id, newvalues: reportformatvalues == "" ? null : JSON.parse(reportformatvalues), published: true, terminated: (JSON.parse(reportformatvalues).terminated ?? false) };
13645
-
13705
+ // console.log('reopen body', url, urlBody)
13646
13706
  const authorization = btoa(Util.readCookie('email') + ":" + Util.readCookie('accessToken'));
13647
13707
  const xhr: any = (await this.prepareXhr(urlBody, url, this._SfLoader, authorization, 'Preparing')) as any;
13648
13708
  this._SfLoader.innerHTML = '';
@@ -13778,6 +13838,7 @@ export class SfIEvents extends LitElement {
13778
13838
  if (reportingSchemaJson != "" && reportingReporting != null) {
13779
13839
  reportingReporting.configjson = reportingSchemaJson;
13780
13840
  if (reportingSchemaValues != "") reportingReporting.prepopulateValJson = reportingSchemaValues
13841
+ reportingReporting.mode = (this.myRole == this.TAB_REPORTER || this.myRole == this.TAB_FUNCTION_HEAD) ? "edit" : "view"
13781
13842
  reportingReporting.editdisable = (this.myRole == this.TAB_REPORTER || this.myRole == this.TAB_FUNCTION_HEAD) ? "false" : "true"
13782
13843
  reportingReporting.flow = "reporting"
13783
13844
  setTimeout(() => {
@@ -13993,7 +14054,7 @@ export class SfIEvents extends LitElement {
13993
14054
  const approved = ((this._SfDetailContainer as HTMLDivElement).querySelector('#input-approve-yes') as HTMLInputElement).checked;
13994
14055
  if (approved == listEvent.approved) {
13995
14056
  buttonClick.innerHTML = "Save"
13996
- this.setError('Already Approved!');
14057
+ this.setError(approved ? 'Already Approved!' : 'Already Rejected!');
13997
14058
  setTimeout(() => {
13998
14059
  this.clearMessages();
13999
14060
  }, 3000);
@@ -20088,7 +20149,11 @@ export class SfIEvents extends LitElement {
20088
20149
  this.myRole = this.TAB_REPORTER;
20089
20150
  this.renderRoleTabs();
20090
20151
  // this.proceedToCalendar();
20091
- ((this._SfTabContainer as HTMLDivElement).querySelector('#calendar-tab-month') as HTMLButtonElement)?.click();
20152
+ if (this.selectedFeatures.indexOf('agreements') >= 0) {
20153
+ ((this._SfTabContainer as HTMLDivElement).querySelector('#calendar-tab-custom') as HTMLButtonElement)?.click();
20154
+ } else {
20155
+ ((this._SfTabContainer as HTMLDivElement).querySelector('#calendar-tab-month') as HTMLButtonElement)?.click();
20156
+ }
20092
20157
 
20093
20158
  });
20094
20159
 
@@ -20097,7 +20162,11 @@ export class SfIEvents extends LitElement {
20097
20162
  this.myRole = this.TAB_APPROVER;
20098
20163
  this.renderRoleTabs();
20099
20164
  // this.proceedToCalendar();
20100
- ((this._SfTabContainer as HTMLDivElement).querySelector('#calendar-tab-month') as HTMLButtonElement)?.click();
20165
+ if (this.selectedFeatures.indexOf('agreements') >= 0) {
20166
+ ((this._SfTabContainer as HTMLDivElement).querySelector('#calendar-tab-custom') as HTMLButtonElement)?.click();
20167
+ } else {
20168
+ ((this._SfTabContainer as HTMLDivElement).querySelector('#calendar-tab-month') as HTMLButtonElement)?.click();
20169
+ }
20101
20170
 
20102
20171
  });
20103
20172
 
@@ -20106,7 +20175,11 @@ export class SfIEvents extends LitElement {
20106
20175
  this.myRole = this.TAB_FUNCTION_HEAD;
20107
20176
  this.renderRoleTabs();
20108
20177
  // this.proceedToCalendar();
20109
- ((this._SfTabContainer as HTMLDivElement).querySelector('#calendar-tab-month') as HTMLButtonElement)?.click();
20178
+ if (this.selectedFeatures.indexOf('agreements') >= 0) {
20179
+ ((this._SfTabContainer as HTMLDivElement).querySelector('#calendar-tab-custom') as HTMLButtonElement)?.click();
20180
+ } else {
20181
+ ((this._SfTabContainer as HTMLDivElement).querySelector('#calendar-tab-month') as HTMLButtonElement)?.click();
20182
+ }
20110
20183
 
20111
20184
  });
20112
20185
 
@@ -20115,7 +20188,11 @@ export class SfIEvents extends LitElement {
20115
20188
  this.myRole = this.TAB_AUDITOR;
20116
20189
  this.renderRoleTabs();
20117
20190
  // this.proceedToCalendar();
20118
- ((this._SfTabContainer as HTMLDivElement).querySelector('#calendar-tab-month') as HTMLButtonElement)?.click();
20191
+ if (this.selectedFeatures.indexOf('agreements') >= 0) {
20192
+ ((this._SfTabContainer as HTMLDivElement).querySelector('#calendar-tab-custom') as HTMLButtonElement)?.click();
20193
+ } else {
20194
+ ((this._SfTabContainer as HTMLDivElement).querySelector('#calendar-tab-month') as HTMLButtonElement)?.click();
20195
+ }
20119
20196
 
20120
20197
  });
20121
20198
 
@@ -20125,7 +20202,11 @@ export class SfIEvents extends LitElement {
20125
20202
  this.myRole = this.TAB_VIEWER;
20126
20203
  this.renderRoleTabs();
20127
20204
  // this.proceedToCalendar();
20128
- ((this._SfTabContainer as HTMLDivElement).querySelector('#calendar-tab-month') as HTMLButtonElement)?.click();
20205
+ if (this.selectedFeatures.indexOf('agreements') >= 0) {
20206
+ ((this._SfTabContainer as HTMLDivElement).querySelector('#calendar-tab-custom') as HTMLButtonElement)?.click();
20207
+ } else {
20208
+ ((this._SfTabContainer as HTMLDivElement).querySelector('#calendar-tab-month') as HTMLButtonElement)?.click();
20209
+ }
20129
20210
 
20130
20211
  });
20131
20212
 
@@ -25500,6 +25581,13 @@ export class SfIEvents extends LitElement {
25500
25581
  }
25501
25582
 
25502
25583
  renderWithFeatures = async (startDate: string = "", endDate: string = "", searchString: string = "", list: string = "yes", month: string = "00", year: string = this.calendarStartYYYY) => {
25584
+ this.selectedFeatures = Util.getFeatures();
25585
+ for (let feature of this.selectedFeatures) {
25586
+ if (this.getFeatures().indexOf(feature) < 0) {
25587
+ this.selectedFeatures = ['compliances']
25588
+ break;
25589
+ }
25590
+ }
25503
25591
  this.events = []
25504
25592
  console.log('rendering and fetching', startDate, endDate, searchString, list, month)
25505
25593
  if (this.selectedFeatures.indexOf('compliances') >= 0) {
@@ -27492,8 +27580,22 @@ export class SfIEvents extends LitElement {
27492
27580
  ((this._SfTabContainer as HTMLDivElement).querySelector('#calendar-tab-year') as HTMLButtonElement)?.click();
27493
27581
  } else {
27494
27582
  //console.log('stream received rendering year', this.stream);
27495
- this.renderTabs(this.TAB_STREAM);
27496
- ((this._SfTabContainer as HTMLDivElement).querySelector('#calendar-tab-month') as HTMLButtonElement)?.click();
27583
+ this.selectedFeatures = Util.getFeatures();
27584
+ for (let feature of this.selectedFeatures) {
27585
+ if (this.getFeatures().indexOf(feature) < 0) {
27586
+ this.selectedFeatures = ['compliances']
27587
+ break;
27588
+ }
27589
+ }
27590
+ if (this.selectedFeatures.indexOf('agreements') >= 0) {
27591
+ this.renderTabs(this.TAB_CUSTOM);
27592
+ ((this._SfTabContainer as HTMLDivElement).querySelector('#calendar-tab-custom') as HTMLButtonElement)?.click();
27593
+ } else {
27594
+ this.renderTabs(this.TAB_STREAM);
27595
+ ((this._SfTabContainer as HTMLDivElement).querySelector('#calendar-tab-month') as HTMLButtonElement)?.click();
27596
+ }
27597
+ // this.renderTabs(this.TAB_STREAM);
27598
+ // ((this._SfTabContainer as HTMLDivElement).querySelector('#calendar-tab-month') as HTMLButtonElement)?.click();
27497
27599
  }
27498
27600
  //await this.fetchUserCalendar_2();
27499
27601
 
package/src/util.ts CHANGED
@@ -505,8 +505,16 @@ function getUsermap() {
505
505
  return userMapHome;
506
506
  }
507
507
 
508
+ function setFeatures(features:any){
509
+ localStorage.setItem('features', JSON.stringify(features))
510
+ }
511
+ function getFeatures(){
512
+ let features = JSON.parse(localStorage.getItem('features') ?? '["compliances"]')
513
+ return features
514
+ }
515
+
508
516
  const exportFunctions = {
509
- callApiPresignedDelete, callApiPresignedGet, callApiPresigned, jsonObjectToHtml, clearListeners, isInteger, callApi, validateName, readCookie, timeSince, createDiagonalPattern1, createDiagonalPattern2, createDiagonalPattern3, getRandomColor, convertToCSV, parseCsv, titleCase, alphabeticalSort, percentageString, getCurrentFiscal, getDateTimeStrings, getUsermap
517
+ callApiPresignedDelete, callApiPresignedGet, callApiPresigned, jsonObjectToHtml, clearListeners, isInteger, callApi, validateName, readCookie, timeSince, createDiagonalPattern1, createDiagonalPattern2, createDiagonalPattern3, getRandomColor, convertToCSV, parseCsv, titleCase, alphabeticalSort, percentageString, getCurrentFiscal, getDateTimeStrings, getUsermap, setFeatures, getFeatures
510
518
  };
511
519
 
512
520
  export default exportFunctions;
package/util.d.ts CHANGED
@@ -18,6 +18,8 @@ declare function percentageString(val: number, valTotal: number): string;
18
18
  declare function getCurrentFiscal(): number;
19
19
  declare function getDateTimeStrings(unixTimestamp: number): string;
20
20
  declare function getUsermap(): any;
21
+ declare function setFeatures(features: any): void;
22
+ declare function getFeatures(): any;
21
23
  declare const exportFunctions: {
22
24
  callApiPresignedDelete: typeof callApiPresignedDelete;
23
25
  callApiPresignedGet: typeof callApiPresignedGet;
@@ -41,6 +43,8 @@ declare const exportFunctions: {
41
43
  getCurrentFiscal: typeof getCurrentFiscal;
42
44
  getDateTimeStrings: typeof getDateTimeStrings;
43
45
  getUsermap: typeof getUsermap;
46
+ setFeatures: typeof setFeatures;
47
+ getFeatures: typeof getFeatures;
44
48
  };
45
49
  export default exportFunctions;
46
50
  //# sourceMappingURL=util.d.ts.map
package/util.js CHANGED
@@ -424,8 +424,16 @@ function getUsermap() {
424
424
  let userMapHome = JSON.parse(JSON.parse((userinfo.user.usermap.S).replace(/_QUOTES_/g, "\\\"")));
425
425
  return userMapHome;
426
426
  }
427
+ function setFeatures(features) {
428
+ localStorage.setItem('features', JSON.stringify(features));
429
+ }
430
+ function getFeatures() {
431
+ var _a;
432
+ let features = JSON.parse((_a = localStorage.getItem('features')) !== null && _a !== void 0 ? _a : '["compliances"]');
433
+ return features;
434
+ }
427
435
  const exportFunctions = {
428
- callApiPresignedDelete, callApiPresignedGet, callApiPresigned, jsonObjectToHtml, clearListeners, isInteger, callApi, validateName, readCookie, timeSince, createDiagonalPattern1, createDiagonalPattern2, createDiagonalPattern3, getRandomColor, convertToCSV, parseCsv, titleCase, alphabeticalSort, percentageString, getCurrentFiscal, getDateTimeStrings, getUsermap
436
+ callApiPresignedDelete, callApiPresignedGet, callApiPresigned, jsonObjectToHtml, clearListeners, isInteger, callApi, validateName, readCookie, timeSince, createDiagonalPattern1, createDiagonalPattern2, createDiagonalPattern3, getRandomColor, convertToCSV, parseCsv, titleCase, alphabeticalSort, percentageString, getCurrentFiscal, getDateTimeStrings, getUsermap, setFeatures, getFeatures
429
437
  };
430
438
  export default exportFunctions;
431
439
  //# sourceMappingURL=util.js.map