sf-i-events 1.0.57 → 1.0.59
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 +4 -2
- package/sf-i-events.d.ts +1 -0
- package/sf-i-events.d.ts.map +1 -1
- package/sf-i-events.js +285 -14
- package/sf-i-events.js.map +1 -1
- package/src/sf-i-events.ts +311 -18
- package/src/util.ts +58 -1
- package/tsconfig.json +1 -0
- package/util.d.ts +6 -0
- package/util.d.ts.map +1 -1
- package/util.js +55 -1
- package/util.js.map +1 -1
package/package.json
CHANGED
|
@@ -1,7 +1,7 @@
|
|
|
1
1
|
{
|
|
2
2
|
"name": "sf-i-events",
|
|
3
3
|
"private": false,
|
|
4
|
-
"version": "1.0.
|
|
4
|
+
"version": "1.0.59",
|
|
5
5
|
"description": "Superflows Navigation Component",
|
|
6
6
|
"main": "sf-i-events.js",
|
|
7
7
|
"module": "sf-i-events.js",
|
|
@@ -51,12 +51,14 @@
|
|
|
51
51
|
"license": "MIT",
|
|
52
52
|
"repository": "superflows-dev/sf-i-events",
|
|
53
53
|
"dependencies": {
|
|
54
|
+
"chart.js": "^4.3.0",
|
|
54
55
|
"fs": "^0.0.1-security",
|
|
55
56
|
"lit": "^2.2.4",
|
|
57
|
+
"patternomaly": "^1.3.2",
|
|
58
|
+
"sf-i-elastic-text": "^1.0.1",
|
|
56
59
|
"sf-i-form": "^1.0.59",
|
|
57
60
|
"sf-i-select": "^1.0.80",
|
|
58
61
|
"sf-i-sub-select": "^1.0.68",
|
|
59
|
-
"sf-i-elastic-text": "^1.0.1",
|
|
60
62
|
"sf-i-uploader": "^1.0.13",
|
|
61
63
|
"sinon": "^15.0.1"
|
|
62
64
|
},
|
package/sf-i-events.d.ts
CHANGED
|
@@ -139,6 +139,7 @@ export declare class SfIEvents extends LitElement {
|
|
|
139
139
|
renderEventDetail: (event: any, mmddyyyy: any) => void;
|
|
140
140
|
renderCalendar: () => void;
|
|
141
141
|
renderRoleTabs: () => void;
|
|
142
|
+
renderChart: (ctx: any, type: any, data: any) => void;
|
|
142
143
|
getCurrentTab: () => string;
|
|
143
144
|
renderTabs: (selectedTab: string) => void;
|
|
144
145
|
renderMappingTabs: (selectedTab: string) => void;
|
package/sf-i-events.d.ts.map
CHANGED
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"sf-i-events.d.ts","sourceRoot":"","sources":["src/sf-i-events.ts"],"names":[],"mappings":"AAAA;;;;GAIG;AAEH,OAAO,EAAC,UAAU,EAAa,gBAAgB,EAAC,MAAM,KAAK,CAAC;
|
|
1
|
+
{"version":3,"file":"sf-i-events.d.ts","sourceRoot":"","sources":["src/sf-i-events.ts"],"names":[],"mappings":"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"}
|
package/sf-i-events.js
CHANGED
|
@@ -13,6 +13,7 @@ import { LitElement, html, css } from 'lit';
|
|
|
13
13
|
import { customElement, query, queryAssignedElements, property } from 'lit/decorators.js';
|
|
14
14
|
// import {customElement, query, property} from 'lit/decorators.js';
|
|
15
15
|
import Util from './util';
|
|
16
|
+
import { Chart, registerables, Colors } from 'chart.js';
|
|
16
17
|
// import {LitElement, html, css} from 'lit';
|
|
17
18
|
// import {customElement} from 'lit/decorators.js';
|
|
18
19
|
/*
|
|
@@ -270,22 +271,17 @@ let SfIEvents = class SfIEvents extends LitElement {
|
|
|
270
271
|
this.renderStreamEvents = (index, month, year) => {
|
|
271
272
|
const lastDay = this.getLastDayOfMonth(month, year);
|
|
272
273
|
var html = '<div id="stream-event-' + index + '" part="stream-event-list" class="stream-event-list">';
|
|
274
|
+
html += '<div class="mb-20">';
|
|
275
|
+
html += '<canvas id="myChart"></canvas>';
|
|
276
|
+
html += '</div>';
|
|
273
277
|
var total = 0, notStarted = 0, approved = 0, inProgress = 0;
|
|
274
|
-
for (var i = 1; i <= lastDay; i++) {
|
|
275
|
-
const mmdd = ("0" + (month + 1)).slice(-2) + "/" + ("0" + i).slice(-2);
|
|
276
|
-
if (this.events[mmdd] != null) {
|
|
277
|
-
for (var j = 0; j < this.events[mmdd].length; j++) {
|
|
278
|
-
total++;
|
|
279
|
-
}
|
|
280
|
-
}
|
|
281
|
-
}
|
|
282
278
|
html += '<div id="stream-event-summary" part="stream-event-total" class="d-flex">';
|
|
283
|
-
html += '<div part="badge-dashboard" class="mr-10"><span class="muted">Total:</span> <
|
|
284
|
-
html += '<div part="badge-dashboard" class="mr-10"><span class="muted">Approved:</span> <
|
|
285
|
-
html += '<div part="badge-dashboard" class="mr-10"><span class="muted">Not Started:</span> <
|
|
286
|
-
html += '<div part="badge-dashboard" class="mr-10"><span class="muted">In Progress:</span> <
|
|
279
|
+
html += '<div part="badge-dashboard" class="mr-10"><span class="muted">Total:</span> <span id="graph-total">DASHBOARD_TOTAL</span></div>';
|
|
280
|
+
html += '<div part="badge-dashboard" class="mr-10"><span class="muted">Approved:</span> <span id="graph-approved">DASHBOARD_APPROVED</span></div>';
|
|
281
|
+
html += '<div part="badge-dashboard" class="mr-10"><span class="muted">Not Started:</span> <span id="graph-not-started">DASHBOARD_NOT_STARTED</span></div>';
|
|
282
|
+
html += '<div part="badge-dashboard" class="mr-10"><span class="muted">In Progress:</span> <span id="graph-in-progress">DASHBOARD_IN_PROGRESS</span></div>';
|
|
287
283
|
html += '</div>';
|
|
288
|
-
for (i = 1; i <= lastDay; i++) {
|
|
284
|
+
for (var i = 1; i <= lastDay; i++) {
|
|
289
285
|
const mmdd = ("0" + (month + 1)).slice(-2) + "/" + ("0" + i).slice(-2);
|
|
290
286
|
var hide = true;
|
|
291
287
|
if (this.events[mmdd] != null) {
|
|
@@ -312,6 +308,7 @@ let SfIEvents = class SfIEvents extends LitElement {
|
|
|
312
308
|
html += '<div part="stream-event-selected-date">' + ("0" + i).slice(-2) + ' |</div>';
|
|
313
309
|
html += '<div class="stream-event-list-container flex-grow">';
|
|
314
310
|
for (var j = 0; j < this.events[mmdd].length; j++) {
|
|
311
|
+
total++;
|
|
315
312
|
html += '<div class="stream-events-container flex-grow">';
|
|
316
313
|
html += '<table>';
|
|
317
314
|
html += '<thead>';
|
|
@@ -426,6 +423,7 @@ let SfIEvents = class SfIEvents extends LitElement {
|
|
|
426
423
|
html += '</div>';
|
|
427
424
|
inProgress = total - notStarted - approved;
|
|
428
425
|
console.log('progress', total, notStarted, approved);
|
|
426
|
+
html = html.replace("DASHBOARD_TOTAL", total + "");
|
|
429
427
|
html = html.replace("DASHBOARD_NOT_STARTED", notStarted + "");
|
|
430
428
|
html = html.replace("DASHBOARD_APPROVED", approved + "");
|
|
431
429
|
html = html.replace("DASHBOARD_IN_PROGRESS", inProgress + "");
|
|
@@ -433,6 +431,13 @@ let SfIEvents = class SfIEvents extends LitElement {
|
|
|
433
431
|
};
|
|
434
432
|
this.renderUpcomingEvents = (index, startDate, count) => {
|
|
435
433
|
var html = '<div id="stream-event-' + index + '" part="stream-event-list" class="stream-event-list">';
|
|
434
|
+
var total = 0, notStarted = 0, approved = 0, inProgress = 0;
|
|
435
|
+
html += '<div id="stream-event-summary" part="stream-event-total" class="d-flex">';
|
|
436
|
+
html += '<div part="badge-dashboard" class="mr-10"><span class="muted">Total:</span> <strong>DASHBOARD_TOTAL</strong></div>';
|
|
437
|
+
html += '<div part="badge-dashboard" class="mr-10"><span class="muted">Approved:</span> <strong>DASHBOARD_APPROVED</strong></div>';
|
|
438
|
+
html += '<div part="badge-dashboard" class="mr-10"><span class="muted">Not Started:</span> <strong>DASHBOARD_NOT_STARTED</strong></div>';
|
|
439
|
+
html += '<div part="badge-dashboard" class="mr-10"><span class="muted">In Progress:</span> <strong>DASHBOARD_IN_PROGRESS</strong></div>';
|
|
440
|
+
html += '</div>';
|
|
436
441
|
for (var i = 1; i <= count; i++) {
|
|
437
442
|
const mmdd = ("0" + (startDate.getMonth() + 1)).slice(-2) + "/" + ("0" + startDate.getDate()).slice(-2);
|
|
438
443
|
var hide = true;
|
|
@@ -462,6 +467,7 @@ let SfIEvents = class SfIEvents extends LitElement {
|
|
|
462
467
|
html += '<div part="stream-event-selected-date">' + ("0" + startDate.getDate()).slice(-2) + '/' + (startDate.getMonth() + 1) + ' |</div>';
|
|
463
468
|
html += '<div class="stream-event-list-container flex-grow">';
|
|
464
469
|
for (var j = 0; j < this.events[mmdd].length; j++) {
|
|
470
|
+
total++;
|
|
465
471
|
html += '<div class="stream-events-container flex-grow">';
|
|
466
472
|
html += '<table>';
|
|
467
473
|
html += '<thead>';
|
|
@@ -478,6 +484,31 @@ let SfIEvents = class SfIEvents extends LitElement {
|
|
|
478
484
|
// }
|
|
479
485
|
html += '<th part="td-head">';
|
|
480
486
|
html += '</th>';
|
|
487
|
+
if (this.events[mmdd][j].approved != null && (this.events[mmdd][j].approved[mmdd + "/" + new Date().getFullYear()]) != null && (this.events[mmdd][j].approved[mmdd + "/" + new Date().getFullYear()])) {
|
|
488
|
+
approved++;
|
|
489
|
+
html += '<th part="td-head">';
|
|
490
|
+
html += 'Status';
|
|
491
|
+
html += '</th>';
|
|
492
|
+
}
|
|
493
|
+
console.log('listing docs', this.events[mmdd][j].documents);
|
|
494
|
+
if (this.events[mmdd][j].documents != null && this.events[mmdd][j].documents[mmdd + "/" + new Date().getFullYear()] != null && JSON.parse(this.events[mmdd][j].documents[mmdd + "/" + new Date().getFullYear()]).length > 0) {
|
|
495
|
+
html += '<th part="td-head">';
|
|
496
|
+
html += 'Docs';
|
|
497
|
+
html += '</th>';
|
|
498
|
+
}
|
|
499
|
+
else {
|
|
500
|
+
notStarted++;
|
|
501
|
+
}
|
|
502
|
+
if (this.events[mmdd][j].comments != null && this.events[mmdd][j].comments[mmdd + "/" + new Date().getFullYear()] != null && (this.events[mmdd][j].comments[mmdd + "/" + new Date().getFullYear()]).length > 0) {
|
|
503
|
+
html += '<th part="td-head">';
|
|
504
|
+
html += 'Comments';
|
|
505
|
+
html += '</th>';
|
|
506
|
+
}
|
|
507
|
+
if (this.events[mmdd][j].lastupdated != null && this.events[mmdd][j].lastupdated[mmdd + "/" + new Date().getFullYear()] != null && (this.events[mmdd][j].lastupdated[mmdd + "/" + new Date().getFullYear()]).length > 0) {
|
|
508
|
+
html += '<th part="td-head">';
|
|
509
|
+
html += 'Updated';
|
|
510
|
+
html += '</th>';
|
|
511
|
+
}
|
|
481
512
|
// for(var k = 0; k < Object.keys(this.events[mmdd][j]).length; k++) {
|
|
482
513
|
// html += '<th part="td-head">';
|
|
483
514
|
// html += Object.keys(this.events[mmdd][j])[k];
|
|
@@ -508,6 +539,28 @@ let SfIEvents = class SfIEvents extends LitElement {
|
|
|
508
539
|
html += '<td id="td-expand-' + i + '" part="td-body">';
|
|
509
540
|
html += '<button id="button-unmapped-expand-' + mmdd.replace('/', '-') + '-' + j + '" part="button-icon-small" class="material-icons button-expand">open_in_new</button>';
|
|
510
541
|
html += '</td>';
|
|
542
|
+
if (this.events[mmdd][j].approved != null && (this.events[mmdd][j].approved[mmdd + "/" + new Date().getFullYear()]) != null && (this.events[mmdd][j].approved[mmdd + "/" + new Date().getFullYear()])) {
|
|
543
|
+
html += '<td part="td-body">';
|
|
544
|
+
html += '<span class="material-icons color-done">check_circle</span>';
|
|
545
|
+
html += '</td>';
|
|
546
|
+
}
|
|
547
|
+
if (this.events[mmdd][j].documents != null && this.events[mmdd][j].documents[mmdd + "/" + new Date().getFullYear()] != null && JSON.parse(this.events[mmdd][j].documents[mmdd + "/" + new Date().getFullYear()]).length > 0) {
|
|
548
|
+
html += '<td part="td-body">';
|
|
549
|
+
html += '<span class="material-icons muted">description</span>';
|
|
550
|
+
html += JSON.parse(this.events[mmdd][j].documents[mmdd + "/" + new Date().getFullYear()]).length;
|
|
551
|
+
html += '</td>';
|
|
552
|
+
}
|
|
553
|
+
if (this.events[mmdd][j].comments != null && this.events[mmdd][j].comments[mmdd + "/" + new Date().getFullYear()] != null && (this.events[mmdd][j].comments[mmdd + "/" + new Date().getFullYear()]).length > 0) {
|
|
554
|
+
html += '<td part="td-body">';
|
|
555
|
+
html += '<span class="material-icons muted">forum</span>';
|
|
556
|
+
html += (this.events[mmdd][j].comments[mmdd + "/" + new Date().getFullYear()]).length;
|
|
557
|
+
html += '</td>';
|
|
558
|
+
}
|
|
559
|
+
if (this.events[mmdd][j].lastupdated != null && this.events[mmdd][j].lastupdated[mmdd + "/" + new Date().getFullYear()] != null && (this.events[mmdd][j].lastupdated[mmdd + "/" + new Date().getFullYear()]).length > 0) {
|
|
560
|
+
html += '<td part="td-body">';
|
|
561
|
+
html += Util.timeSince(new Date(this.events[mmdd][j].lastupdated[mmdd + "/" + new Date().getFullYear()]).getTime());
|
|
562
|
+
html += '</td>';
|
|
563
|
+
}
|
|
511
564
|
// for(var k = 0; k < Object.keys(this.events[mmdd][j]).length; k++) {
|
|
512
565
|
// html += '<th part="td-body">';
|
|
513
566
|
// if(this.events[mmdd][j][Object.keys(this.events[mmdd][j])[k]].indexOf("[") >= 0) {
|
|
@@ -540,6 +593,12 @@ let SfIEvents = class SfIEvents extends LitElement {
|
|
|
540
593
|
startDate.setDate(startDate.getDate() + 1);
|
|
541
594
|
}
|
|
542
595
|
html += '</div>';
|
|
596
|
+
inProgress = total - notStarted - approved;
|
|
597
|
+
console.log('progress', total, notStarted, approved);
|
|
598
|
+
html = html.replace("DASHBOARD_TOTAL", total + "");
|
|
599
|
+
html = html.replace("DASHBOARD_NOT_STARTED", notStarted + "");
|
|
600
|
+
html = html.replace("DASHBOARD_APPROVED", approved + "");
|
|
601
|
+
html = html.replace("DASHBOARD_IN_PROGRESS", inProgress + "");
|
|
543
602
|
return html;
|
|
544
603
|
};
|
|
545
604
|
this.renderThisEvents = (index, startDate) => {
|
|
@@ -556,6 +615,13 @@ let SfIEvents = class SfIEvents extends LitElement {
|
|
|
556
615
|
firstDate = new Date(startDate.getFullYear(), startDate.getMonth(), startDate.getDate());
|
|
557
616
|
count = this.getLastDayOfMonth(startDate.getFullYear(), startDate.getMonth());
|
|
558
617
|
}
|
|
618
|
+
var total = 0, notStarted = 0, approved = 0, inProgress = 0;
|
|
619
|
+
html += '<div id="stream-event-summary" part="stream-event-total" class="d-flex">';
|
|
620
|
+
html += '<div part="badge-dashboard" class="mr-10"><span class="muted">Total:</span> <strong>DASHBOARD_TOTAL</strong></div>';
|
|
621
|
+
html += '<div part="badge-dashboard" class="mr-10"><span class="muted">Approved:</span> <strong>DASHBOARD_APPROVED</strong></div>';
|
|
622
|
+
html += '<div part="badge-dashboard" class="mr-10"><span class="muted">Not Started:</span> <strong>DASHBOARD_NOT_STARTED</strong></div>';
|
|
623
|
+
html += '<div part="badge-dashboard" class="mr-10"><span class="muted">In Progress:</span> <strong>DASHBOARD_IN_PROGRESS</strong></div>';
|
|
624
|
+
html += '</div>';
|
|
559
625
|
for (var i = 1; i <= count; i++) {
|
|
560
626
|
const mmdd = ("0" + (firstDate.getMonth() + 1)).slice(-2) + "/" + ("0" + firstDate.getDate()).slice(-2);
|
|
561
627
|
var hide = true;
|
|
@@ -585,6 +651,7 @@ let SfIEvents = class SfIEvents extends LitElement {
|
|
|
585
651
|
html += '<div part="stream-event-selected-date">' + ("0" + firstDate.getDate()).slice(-2) + '/' + (firstDate.getMonth() + 1) + ' |</div>';
|
|
586
652
|
html += '<div class="stream-event-list-container flex-grow">';
|
|
587
653
|
for (var j = 0; j < this.events[mmdd].length; j++) {
|
|
654
|
+
total++;
|
|
588
655
|
html += '<div class="stream-events-container flex-grow">';
|
|
589
656
|
html += '<table>';
|
|
590
657
|
html += '<thead>';
|
|
@@ -601,6 +668,31 @@ let SfIEvents = class SfIEvents extends LitElement {
|
|
|
601
668
|
// }
|
|
602
669
|
html += '<th part="td-head">';
|
|
603
670
|
html += '</th>';
|
|
671
|
+
if (this.events[mmdd][j].approved != null && (this.events[mmdd][j].approved[mmdd + "/" + new Date().getFullYear()]) != null && (this.events[mmdd][j].approved[mmdd + "/" + new Date().getFullYear()])) {
|
|
672
|
+
approved++;
|
|
673
|
+
html += '<th part="td-head">';
|
|
674
|
+
html += 'Status';
|
|
675
|
+
html += '</th>';
|
|
676
|
+
}
|
|
677
|
+
console.log('listing docs', this.events[mmdd][j].documents);
|
|
678
|
+
if (this.events[mmdd][j].documents != null && this.events[mmdd][j].documents[mmdd + "/" + new Date().getFullYear()] != null && JSON.parse(this.events[mmdd][j].documents[mmdd + "/" + new Date().getFullYear()]).length > 0) {
|
|
679
|
+
html += '<th part="td-head">';
|
|
680
|
+
html += 'Docs';
|
|
681
|
+
html += '</th>';
|
|
682
|
+
}
|
|
683
|
+
else {
|
|
684
|
+
notStarted++;
|
|
685
|
+
}
|
|
686
|
+
if (this.events[mmdd][j].comments != null && this.events[mmdd][j].comments[mmdd + "/" + new Date().getFullYear()] != null && (this.events[mmdd][j].comments[mmdd + "/" + new Date().getFullYear()]).length > 0) {
|
|
687
|
+
html += '<th part="td-head">';
|
|
688
|
+
html += 'Comments';
|
|
689
|
+
html += '</th>';
|
|
690
|
+
}
|
|
691
|
+
if (this.events[mmdd][j].lastupdated != null && this.events[mmdd][j].lastupdated[mmdd + "/" + new Date().getFullYear()] != null && (this.events[mmdd][j].lastupdated[mmdd + "/" + new Date().getFullYear()]).length > 0) {
|
|
692
|
+
html += '<th part="td-head">';
|
|
693
|
+
html += 'Updated';
|
|
694
|
+
html += '</th>';
|
|
695
|
+
}
|
|
604
696
|
// for(var k = 0; k < Object.keys(this.events[mmdd][j]).length; k++) {
|
|
605
697
|
// html += '<th part="td-head">';
|
|
606
698
|
// html += Object.keys(this.events[mmdd][j])[k];
|
|
@@ -631,6 +723,28 @@ let SfIEvents = class SfIEvents extends LitElement {
|
|
|
631
723
|
html += '<td id="td-expand-' + i + '" part="td-body">';
|
|
632
724
|
html += '<button id="button-unmapped-expand-' + mmdd.replace('/', '-') + '-' + j + '" part="button-icon-small" class="material-icons button-expand">open_in_new</button>';
|
|
633
725
|
html += '</td>';
|
|
726
|
+
if (this.events[mmdd][j].approved != null && (this.events[mmdd][j].approved[mmdd + "/" + new Date().getFullYear()]) != null && (this.events[mmdd][j].approved[mmdd + "/" + new Date().getFullYear()])) {
|
|
727
|
+
html += '<td part="td-body">';
|
|
728
|
+
html += '<span class="material-icons color-done">check_circle</span>';
|
|
729
|
+
html += '</td>';
|
|
730
|
+
}
|
|
731
|
+
if (this.events[mmdd][j].documents != null && this.events[mmdd][j].documents[mmdd + "/" + new Date().getFullYear()] != null && JSON.parse(this.events[mmdd][j].documents[mmdd + "/" + new Date().getFullYear()]).length > 0) {
|
|
732
|
+
html += '<td part="td-body">';
|
|
733
|
+
html += '<span class="material-icons muted">description</span>';
|
|
734
|
+
html += JSON.parse(this.events[mmdd][j].documents[mmdd + "/" + new Date().getFullYear()]).length;
|
|
735
|
+
html += '</td>';
|
|
736
|
+
}
|
|
737
|
+
if (this.events[mmdd][j].comments != null && this.events[mmdd][j].comments[mmdd + "/" + new Date().getFullYear()] != null && (this.events[mmdd][j].comments[mmdd + "/" + new Date().getFullYear()]).length > 0) {
|
|
738
|
+
html += '<td part="td-body">';
|
|
739
|
+
html += '<span class="material-icons muted">forum</span>';
|
|
740
|
+
html += (this.events[mmdd][j].comments[mmdd + "/" + new Date().getFullYear()]).length;
|
|
741
|
+
html += '</td>';
|
|
742
|
+
}
|
|
743
|
+
if (this.events[mmdd][j].lastupdated != null && this.events[mmdd][j].lastupdated[mmdd + "/" + new Date().getFullYear()] != null && (this.events[mmdd][j].lastupdated[mmdd + "/" + new Date().getFullYear()]).length > 0) {
|
|
744
|
+
html += '<td part="td-body">';
|
|
745
|
+
html += Util.timeSince(new Date(this.events[mmdd][j].lastupdated[mmdd + "/" + new Date().getFullYear()]).getTime());
|
|
746
|
+
html += '</td>';
|
|
747
|
+
}
|
|
634
748
|
// for(var k = 0; k < Object.keys(this.events[mmdd][j]).length; k++) {
|
|
635
749
|
// html += '<th part="td-body">';
|
|
636
750
|
// if(this.events[mmdd][j][Object.keys(this.events[mmdd][j])[k]].indexOf("[") >= 0) {
|
|
@@ -663,6 +777,12 @@ let SfIEvents = class SfIEvents extends LitElement {
|
|
|
663
777
|
firstDate.setDate(firstDate.getDate() + 1);
|
|
664
778
|
}
|
|
665
779
|
html += '</div>';
|
|
780
|
+
inProgress = total - notStarted - approved;
|
|
781
|
+
console.log('progress', total, notStarted, approved);
|
|
782
|
+
html = html.replace("DASHBOARD_TOTAL", total + "");
|
|
783
|
+
html = html.replace("DASHBOARD_NOT_STARTED", notStarted + "");
|
|
784
|
+
html = html.replace("DASHBOARD_APPROVED", approved + "");
|
|
785
|
+
html = html.replace("DASHBOARD_IN_PROGRESS", inProgress + "");
|
|
666
786
|
return html;
|
|
667
787
|
};
|
|
668
788
|
this.renderPastEvents = (index, startDate) => {
|
|
@@ -681,6 +801,13 @@ let SfIEvents = class SfIEvents extends LitElement {
|
|
|
681
801
|
console.log('this start date', firstDate);
|
|
682
802
|
console.log('this start date', count);
|
|
683
803
|
}
|
|
804
|
+
var total = 0, notStarted = 0, approved = 0, inProgress = 0;
|
|
805
|
+
html += '<div id="stream-event-summary" part="stream-event-total" class="d-flex">';
|
|
806
|
+
html += '<div part="badge-dashboard" class="mr-10"><span class="muted">Total:</span> <strong>DASHBOARD_TOTAL</strong></div>';
|
|
807
|
+
html += '<div part="badge-dashboard" class="mr-10"><span class="muted">Approved:</span> <strong>DASHBOARD_APPROVED</strong></div>';
|
|
808
|
+
html += '<div part="badge-dashboard" class="mr-10"><span class="muted">Not Started:</span> <strong>DASHBOARD_NOT_STARTED</strong></div>';
|
|
809
|
+
html += '<div part="badge-dashboard" class="mr-10"><span class="muted">In Progress:</span> <strong>DASHBOARD_IN_PROGRESS</strong></div>';
|
|
810
|
+
html += '</div>';
|
|
684
811
|
for (var i = 1; i <= count; i++) {
|
|
685
812
|
const mmdd = ("0" + (firstDate.getMonth() + 1)).slice(-2) + "/" + ("0" + firstDate.getDate()).slice(-2);
|
|
686
813
|
var hide = true;
|
|
@@ -710,6 +837,7 @@ let SfIEvents = class SfIEvents extends LitElement {
|
|
|
710
837
|
html += '<div part="stream-event-selected-date">' + ("0" + firstDate.getDate()).slice(-2) + '/' + (firstDate.getMonth() + 1) + ' |</div>';
|
|
711
838
|
html += '<div class="stream-event-list-container flex-grow">';
|
|
712
839
|
for (var j = 0; j < this.events[mmdd].length; j++) {
|
|
840
|
+
total++;
|
|
713
841
|
html += '<div class="stream-events-container flex-grow">';
|
|
714
842
|
html += '<table>';
|
|
715
843
|
html += '<thead>';
|
|
@@ -726,6 +854,31 @@ let SfIEvents = class SfIEvents extends LitElement {
|
|
|
726
854
|
// }
|
|
727
855
|
html += '<th part="td-head">';
|
|
728
856
|
html += '</th>';
|
|
857
|
+
if (this.events[mmdd][j].approved != null && (this.events[mmdd][j].approved[mmdd + "/" + new Date().getFullYear()]) != null && (this.events[mmdd][j].approved[mmdd + "/" + new Date().getFullYear()])) {
|
|
858
|
+
approved++;
|
|
859
|
+
html += '<th part="td-head">';
|
|
860
|
+
html += 'Status';
|
|
861
|
+
html += '</th>';
|
|
862
|
+
}
|
|
863
|
+
console.log('listing docs', this.events[mmdd][j].documents);
|
|
864
|
+
if (this.events[mmdd][j].documents != null && this.events[mmdd][j].documents[mmdd + "/" + new Date().getFullYear()] != null && JSON.parse(this.events[mmdd][j].documents[mmdd + "/" + new Date().getFullYear()]).length > 0) {
|
|
865
|
+
html += '<th part="td-head">';
|
|
866
|
+
html += 'Docs';
|
|
867
|
+
html += '</th>';
|
|
868
|
+
}
|
|
869
|
+
else {
|
|
870
|
+
notStarted++;
|
|
871
|
+
}
|
|
872
|
+
if (this.events[mmdd][j].comments != null && this.events[mmdd][j].comments[mmdd + "/" + new Date().getFullYear()] != null && (this.events[mmdd][j].comments[mmdd + "/" + new Date().getFullYear()]).length > 0) {
|
|
873
|
+
html += '<th part="td-head">';
|
|
874
|
+
html += 'Comments';
|
|
875
|
+
html += '</th>';
|
|
876
|
+
}
|
|
877
|
+
if (this.events[mmdd][j].lastupdated != null && this.events[mmdd][j].lastupdated[mmdd + "/" + new Date().getFullYear()] != null && (this.events[mmdd][j].lastupdated[mmdd + "/" + new Date().getFullYear()]).length > 0) {
|
|
878
|
+
html += '<th part="td-head">';
|
|
879
|
+
html += 'Updated';
|
|
880
|
+
html += '</th>';
|
|
881
|
+
}
|
|
729
882
|
// for(var k = 0; k < Object.keys(this.events[mmdd][j]).length; k++) {
|
|
730
883
|
// html += '<th part="td-head">';
|
|
731
884
|
// html += Object.keys(this.events[mmdd][j])[k];
|
|
@@ -756,6 +909,28 @@ let SfIEvents = class SfIEvents extends LitElement {
|
|
|
756
909
|
html += '<td id="td-expand-' + i + '" part="td-body">';
|
|
757
910
|
html += '<button id="button-unmapped-expand-' + mmdd.replace('/', '-') + '-' + j + '" part="button-icon-small" class="material-icons button-expand">open_in_new</button>';
|
|
758
911
|
html += '</td>';
|
|
912
|
+
if (this.events[mmdd][j].approved != null && (this.events[mmdd][j].approved[mmdd + "/" + new Date().getFullYear()]) != null && (this.events[mmdd][j].approved[mmdd + "/" + new Date().getFullYear()])) {
|
|
913
|
+
html += '<td part="td-body">';
|
|
914
|
+
html += '<span class="material-icons color-done">check_circle</span>';
|
|
915
|
+
html += '</td>';
|
|
916
|
+
}
|
|
917
|
+
if (this.events[mmdd][j].documents != null && this.events[mmdd][j].documents[mmdd + "/" + new Date().getFullYear()] != null && JSON.parse(this.events[mmdd][j].documents[mmdd + "/" + new Date().getFullYear()]).length > 0) {
|
|
918
|
+
html += '<td part="td-body">';
|
|
919
|
+
html += '<span class="material-icons muted">description</span>';
|
|
920
|
+
html += JSON.parse(this.events[mmdd][j].documents[mmdd + "/" + new Date().getFullYear()]).length;
|
|
921
|
+
html += '</td>';
|
|
922
|
+
}
|
|
923
|
+
if (this.events[mmdd][j].comments != null && this.events[mmdd][j].comments[mmdd + "/" + new Date().getFullYear()] != null && (this.events[mmdd][j].comments[mmdd + "/" + new Date().getFullYear()]).length > 0) {
|
|
924
|
+
html += '<td part="td-body">';
|
|
925
|
+
html += '<span class="material-icons muted">forum</span>';
|
|
926
|
+
html += (this.events[mmdd][j].comments[mmdd + "/" + new Date().getFullYear()]).length;
|
|
927
|
+
html += '</td>';
|
|
928
|
+
}
|
|
929
|
+
if (this.events[mmdd][j].lastupdated != null && this.events[mmdd][j].lastupdated[mmdd + "/" + new Date().getFullYear()] != null && (this.events[mmdd][j].lastupdated[mmdd + "/" + new Date().getFullYear()]).length > 0) {
|
|
930
|
+
html += '<td part="td-body">';
|
|
931
|
+
html += Util.timeSince(new Date(this.events[mmdd][j].lastupdated[mmdd + "/" + new Date().getFullYear()]).getTime());
|
|
932
|
+
html += '</td>';
|
|
933
|
+
}
|
|
759
934
|
// for(var k = 0; k < Object.keys(this.events[mmdd][j]).length; k++) {
|
|
760
935
|
// html += '<th part="td-body">';
|
|
761
936
|
// if(this.events[mmdd][j][Object.keys(this.events[mmdd][j])[k]].indexOf("[") >= 0) {
|
|
@@ -788,10 +963,23 @@ let SfIEvents = class SfIEvents extends LitElement {
|
|
|
788
963
|
firstDate.setDate(firstDate.getDate() + 1);
|
|
789
964
|
}
|
|
790
965
|
html += '</div>';
|
|
966
|
+
inProgress = total - notStarted - approved;
|
|
967
|
+
console.log('progress', total, notStarted, approved);
|
|
968
|
+
html = html.replace("DASHBOARD_TOTAL", total + "");
|
|
969
|
+
html = html.replace("DASHBOARD_NOT_STARTED", notStarted + "");
|
|
970
|
+
html = html.replace("DASHBOARD_APPROVED", approved + "");
|
|
971
|
+
html = html.replace("DASHBOARD_IN_PROGRESS", inProgress + "");
|
|
791
972
|
return html;
|
|
792
973
|
};
|
|
793
974
|
this.renderRangeEvents = (firstDate, count) => {
|
|
794
975
|
var html = '<div id="stream-event-0" part="stream-event-list" class="stream-event-list">';
|
|
976
|
+
var total = 0, notStarted = 0, approved = 0, inProgress = 0;
|
|
977
|
+
html += '<div id="stream-event-summary" part="stream-event-total" class="d-flex">';
|
|
978
|
+
html += '<div part="badge-dashboard" class="mr-10"><span class="muted">Total:</span> <strong>DASHBOARD_TOTAL</strong></div>';
|
|
979
|
+
html += '<div part="badge-dashboard" class="mr-10"><span class="muted">Approved:</span> <strong>DASHBOARD_APPROVED</strong></div>';
|
|
980
|
+
html += '<div part="badge-dashboard" class="mr-10"><span class="muted">Not Started:</span> <strong>DASHBOARD_NOT_STARTED</strong></div>';
|
|
981
|
+
html += '<div part="badge-dashboard" class="mr-10"><span class="muted">In Progress:</span> <strong>DASHBOARD_IN_PROGRESS</strong></div>';
|
|
982
|
+
html += '</div>';
|
|
795
983
|
for (var i = 1; i <= count; i++) {
|
|
796
984
|
const mmdd = ("0" + (firstDate.getMonth() + 1)).slice(-2) + "/" + ("0" + firstDate.getDate()).slice(-2);
|
|
797
985
|
var hide = true;
|
|
@@ -817,6 +1005,7 @@ let SfIEvents = class SfIEvents extends LitElement {
|
|
|
817
1005
|
}
|
|
818
1006
|
}
|
|
819
1007
|
if (this.events[mmdd] != null) {
|
|
1008
|
+
total++;
|
|
820
1009
|
html += '<div part="stream-event-selected" class="d-flex stream-event-selected">';
|
|
821
1010
|
html += '<div part="stream-event-selected-date">' + ("0" + firstDate.getDate()).slice(-2) + '/' + (firstDate.getMonth() + 1) + ' |</div>';
|
|
822
1011
|
html += '<div class="stream-event-list-container flex-grow">';
|
|
@@ -837,6 +1026,31 @@ let SfIEvents = class SfIEvents extends LitElement {
|
|
|
837
1026
|
// }
|
|
838
1027
|
html += '<th part="td-head">';
|
|
839
1028
|
html += '</th>';
|
|
1029
|
+
if (this.events[mmdd][j].approved != null && (this.events[mmdd][j].approved[mmdd + "/" + new Date().getFullYear()]) != null && (this.events[mmdd][j].approved[mmdd + "/" + new Date().getFullYear()])) {
|
|
1030
|
+
approved++;
|
|
1031
|
+
html += '<th part="td-head">';
|
|
1032
|
+
html += 'Status';
|
|
1033
|
+
html += '</th>';
|
|
1034
|
+
}
|
|
1035
|
+
console.log('listing docs', this.events[mmdd][j].documents);
|
|
1036
|
+
if (this.events[mmdd][j].documents != null && this.events[mmdd][j].documents[mmdd + "/" + new Date().getFullYear()] != null && JSON.parse(this.events[mmdd][j].documents[mmdd + "/" + new Date().getFullYear()]).length > 0) {
|
|
1037
|
+
html += '<th part="td-head">';
|
|
1038
|
+
html += 'Docs';
|
|
1039
|
+
html += '</th>';
|
|
1040
|
+
}
|
|
1041
|
+
else {
|
|
1042
|
+
notStarted++;
|
|
1043
|
+
}
|
|
1044
|
+
if (this.events[mmdd][j].comments != null && this.events[mmdd][j].comments[mmdd + "/" + new Date().getFullYear()] != null && (this.events[mmdd][j].comments[mmdd + "/" + new Date().getFullYear()]).length > 0) {
|
|
1045
|
+
html += '<th part="td-head">';
|
|
1046
|
+
html += 'Comments';
|
|
1047
|
+
html += '</th>';
|
|
1048
|
+
}
|
|
1049
|
+
if (this.events[mmdd][j].lastupdated != null && this.events[mmdd][j].lastupdated[mmdd + "/" + new Date().getFullYear()] != null && (this.events[mmdd][j].lastupdated[mmdd + "/" + new Date().getFullYear()]).length > 0) {
|
|
1050
|
+
html += '<th part="td-head">';
|
|
1051
|
+
html += 'Updated';
|
|
1052
|
+
html += '</th>';
|
|
1053
|
+
}
|
|
840
1054
|
// for(var k = 0; k < Object.keys(this.events[mmdd][j]).length; k++) {
|
|
841
1055
|
// html += '<th part="td-head">';
|
|
842
1056
|
// html += Object.keys(this.events[mmdd][j])[k];
|
|
@@ -868,6 +1082,28 @@ let SfIEvents = class SfIEvents extends LitElement {
|
|
|
868
1082
|
html += '<td id="td-expand-' + i + '" part="td-body">';
|
|
869
1083
|
html += '<button id="button-unmapped-expand-' + mmdd.replace('/', '-') + '-' + j + '" part="button-icon-small" class="material-icons button-expand">open_in_new</button>';
|
|
870
1084
|
html += '</td>';
|
|
1085
|
+
if (this.events[mmdd][j].approved != null && (this.events[mmdd][j].approved[mmdd + "/" + new Date().getFullYear()]) != null && (this.events[mmdd][j].approved[mmdd + "/" + new Date().getFullYear()])) {
|
|
1086
|
+
html += '<td part="td-body">';
|
|
1087
|
+
html += '<span class="material-icons color-done">check_circle</span>';
|
|
1088
|
+
html += '</td>';
|
|
1089
|
+
}
|
|
1090
|
+
if (this.events[mmdd][j].documents != null && this.events[mmdd][j].documents[mmdd + "/" + new Date().getFullYear()] != null && JSON.parse(this.events[mmdd][j].documents[mmdd + "/" + new Date().getFullYear()]).length > 0) {
|
|
1091
|
+
html += '<td part="td-body">';
|
|
1092
|
+
html += '<span class="material-icons muted">description</span>';
|
|
1093
|
+
html += JSON.parse(this.events[mmdd][j].documents[mmdd + "/" + new Date().getFullYear()]).length;
|
|
1094
|
+
html += '</td>';
|
|
1095
|
+
}
|
|
1096
|
+
if (this.events[mmdd][j].comments != null && this.events[mmdd][j].comments[mmdd + "/" + new Date().getFullYear()] != null && (this.events[mmdd][j].comments[mmdd + "/" + new Date().getFullYear()]).length > 0) {
|
|
1097
|
+
html += '<td part="td-body">';
|
|
1098
|
+
html += '<span class="material-icons muted">forum</span>';
|
|
1099
|
+
html += (this.events[mmdd][j].comments[mmdd + "/" + new Date().getFullYear()]).length;
|
|
1100
|
+
html += '</td>';
|
|
1101
|
+
}
|
|
1102
|
+
if (this.events[mmdd][j].lastupdated != null && this.events[mmdd][j].lastupdated[mmdd + "/" + new Date().getFullYear()] != null && (this.events[mmdd][j].lastupdated[mmdd + "/" + new Date().getFullYear()]).length > 0) {
|
|
1103
|
+
html += '<td part="td-body">';
|
|
1104
|
+
html += Util.timeSince(new Date(this.events[mmdd][j].lastupdated[mmdd + "/" + new Date().getFullYear()]).getTime());
|
|
1105
|
+
html += '</td>';
|
|
1106
|
+
}
|
|
871
1107
|
// for(var k = 0; k < Object.keys(this.events[mmdd][j]).length; k++) {
|
|
872
1108
|
// html += '<th part="td-body">';
|
|
873
1109
|
// if(this.events[mmdd][j][Object.keys(this.events[mmdd][j])[k]].indexOf("[") >= 0) {
|
|
@@ -900,6 +1136,12 @@ let SfIEvents = class SfIEvents extends LitElement {
|
|
|
900
1136
|
firstDate.setDate(firstDate.getDate() + 1);
|
|
901
1137
|
}
|
|
902
1138
|
html += '</div>';
|
|
1139
|
+
inProgress = total - notStarted - approved;
|
|
1140
|
+
console.log('progress', total, notStarted, approved);
|
|
1141
|
+
html = html.replace("DASHBOARD_TOTAL", total + "");
|
|
1142
|
+
html = html.replace("DASHBOARD_NOT_STARTED", notStarted + "");
|
|
1143
|
+
html = html.replace("DASHBOARD_APPROVED", approved + "");
|
|
1144
|
+
html = html.replace("DASHBOARD_IN_PROGRESS", inProgress + "");
|
|
903
1145
|
this._SfCustomContainer.querySelector('.calendar-right-data').innerHTML = html;
|
|
904
1146
|
const buttonArr = this._SfCustomContainer.querySelectorAll('.button-expand');
|
|
905
1147
|
for (var i = 0; i < buttonArr.length; i++) {
|
|
@@ -1348,7 +1590,27 @@ let SfIEvents = class SfIEvents extends LitElement {
|
|
|
1348
1590
|
this.renderEventDetail(this.events[mmdd][j], mmdd + "/" + ((new Date()).getFullYear() + ""));
|
|
1349
1591
|
});
|
|
1350
1592
|
}
|
|
1351
|
-
|
|
1593
|
+
const ctx = this._SfStreamContainer.querySelector('#myChart');
|
|
1594
|
+
this._SfStreamContainer.querySelector('#myChart').style.maxWidth = '400px';
|
|
1595
|
+
this._SfStreamContainer.querySelector('#myChart').style.maxHeight = '400px';
|
|
1596
|
+
var dataApproved = this._SfStreamContainer.querySelector('#graph-approved').innerHTML;
|
|
1597
|
+
var dataNotStarted = this._SfStreamContainer.querySelector('#graph-not-started').innerHTML;
|
|
1598
|
+
var dataInProgress = this._SfStreamContainer.querySelector('#graph-in-progress').innerHTML;
|
|
1599
|
+
const data = {
|
|
1600
|
+
labels: ['Approved', 'Not Started', 'In Progress'],
|
|
1601
|
+
datasets: [{
|
|
1602
|
+
label: 'Compliances',
|
|
1603
|
+
data: [dataApproved, dataNotStarted, dataInProgress],
|
|
1604
|
+
borderWidth: 1,
|
|
1605
|
+
backgroundColor: [
|
|
1606
|
+
Util.createDiagonalPattern3('#20a39e'),
|
|
1607
|
+
Util.createDiagonalPattern2('#A4A9AD'),
|
|
1608
|
+
Util.createDiagonalPattern1('##FFBA49')
|
|
1609
|
+
]
|
|
1610
|
+
//backgroundColor: ['#20a39e', '#a4a9ad', '#ffba49']
|
|
1611
|
+
}]
|
|
1612
|
+
};
|
|
1613
|
+
this.renderChart(ctx, 'doughnut', data);
|
|
1352
1614
|
};
|
|
1353
1615
|
this.renderEventDetail = (event, mmddyyyy) => {
|
|
1354
1616
|
var _a, _b, _c;
|
|
@@ -1573,6 +1835,12 @@ let SfIEvents = class SfIEvents extends LitElement {
|
|
|
1573
1835
|
}
|
|
1574
1836
|
});
|
|
1575
1837
|
};
|
|
1838
|
+
this.renderChart = (ctx, type, data) => {
|
|
1839
|
+
new Chart(ctx, {
|
|
1840
|
+
type: type,
|
|
1841
|
+
data: data,
|
|
1842
|
+
});
|
|
1843
|
+
};
|
|
1576
1844
|
this.getCurrentTab = () => {
|
|
1577
1845
|
if (this._SfCalendarContainer.style.display == 'flex') {
|
|
1578
1846
|
return this.TAB_YEAR;
|
|
@@ -2569,6 +2837,8 @@ let SfIEvents = class SfIEvents extends LitElement {
|
|
|
2569
2837
|
});
|
|
2570
2838
|
};
|
|
2571
2839
|
this.loadMode = async () => {
|
|
2840
|
+
Chart.register(...registerables);
|
|
2841
|
+
Chart.register(Colors);
|
|
2572
2842
|
if (this.mode == "admin") {
|
|
2573
2843
|
this.showChooseProject();
|
|
2574
2844
|
this.initListenersAdmin();
|
|
@@ -2636,6 +2906,7 @@ let SfIEvents = class SfIEvents extends LitElement {
|
|
|
2636
2906
|
return html `
|
|
2637
2907
|
|
|
2638
2908
|
<link href="https://fonts.googleapis.com/icon?family=Material+Icons" rel="stylesheet">
|
|
2909
|
+
<script src="https://cdn.jsdelivr.net/npm/chart.js"></script>
|
|
2639
2910
|
<div class="SfIEventsC">
|
|
2640
2911
|
|
|
2641
2912
|
<div class="d-flex justify-center">
|