sf-i-events 1.0.64 → 1.0.66
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/dev/index.html +4 -2
- package/package.json +1 -1
- package/sf-i-events.d.ts +10 -3
- package/sf-i-events.d.ts.map +1 -1
- package/sf-i-events.js +168 -25
- package/sf-i-events.js.map +1 -1
- package/src/sf-i-events.ts +203 -24
package/dev/index.html
CHANGED
|
@@ -15,7 +15,7 @@
|
|
|
15
15
|
<link href="https://fonts.googleapis.com/css2?family=Source+Sans+Pro:wght@200;300;400;600&display=swap" rel="stylesheet">
|
|
16
16
|
<script type="module">
|
|
17
17
|
import {SfISelect} from 'https://unpkg.com/sf-i-select@1.0.80/sf-i-select.js?module';
|
|
18
|
-
import {SfIForm} from 'https://unpkg.com/sf-i-form@1.0.
|
|
18
|
+
import {SfIForm} from 'https://unpkg.com/sf-i-form@1.0.64/sf-i-form.js?module';
|
|
19
19
|
import {SfISubSelect} from 'https://unpkg.com/sf-i-sub-select@1.0.81/sf-i-sub-select.js?module';
|
|
20
20
|
import {SfIElasticText} from 'https://unpkg.com/sf-i-elastic-text@1.0.7/sf-i-elastic-text.js?module';
|
|
21
21
|
import {SfIUploader} from 'https://unpkg.com/sf-i-uploader@1.0.15/sf-i-uploader.js?module';
|
|
@@ -538,10 +538,12 @@
|
|
|
538
538
|
mode="consumer"
|
|
539
539
|
userProfileId="85c82053-c318-4fea-aecd-f155528fd40b"
|
|
540
540
|
projectId="10daf75f-cb8f-45a5-95b7-ff9f27c4600a"
|
|
541
|
+
apiIdTags="j385cxf2p0"
|
|
542
|
+
projectName="Project 1"
|
|
541
543
|
eventFieldDependencies="[{"type": "foreignkey", "parent": "country", "child": "state"},{"type": "foreignkey", "parent": "category", "child": "subcategory"},{"type": "foreignkey", "parent": "frequency", "child": "subfrequency"}]"
|
|
542
544
|
eventFields="[{"type": "sf-i-select", "apiId": "3z3fiubz8e", "field": "riskarea"},{"type": "sf-i-select", "apiId": "5s7ih5uw4h", "field": "jurisdiction"},{"type": "sf-i-select", "apiId": "oqze24s784", "field": "updatetype"},{"type": "sf-i-select", "apiId": "zu3kh9cq2c", "field": "country"},{"type": "sf-i-select", "apiId": "8ijy7mze67", "field": "specificity"},{"type": "sf-i-select", "apiId": "et1hdzg882", "field": "risk"},{"type": "sf-i-select", "apiId": "lhpn6gh0il", "field": "frequency"},{"type": "sf-i-select", "apiId": "8an2d4j1gc", "field": "category"},{"type": "sf-i-select", "apiId": "vofssiq1t3", "field": "obligationtype"},{"type": "sf-i-sub-select", "apiId": "clnu4kk1ah", "field": "state"},{"type": "sf-i-sub-select", "apiId": "aysa6i6723", "field": "subfrequency"},{"type": "sf-i-sub-select", "apiId": "mdkc0e2bo5", "field": "subcategory"},{"type": "sf-i-form", "apiId": "4wb2x6fkga", "field": "statute", "projectField": "name"}]"
|
|
543
545
|
eventPreviewFields="["obligationtitle"]"
|
|
544
|
-
eventHideFields="["comments","documents","lastupdated","approved"]"
|
|
546
|
+
eventHideFields="["comments","documents","lastupdated","approved","tags"]"
|
|
545
547
|
calendarStartDD="01"
|
|
546
548
|
calendarStartMM="04"
|
|
547
549
|
calendarStartYYYY="2023"
|
package/package.json
CHANGED
package/sf-i-events.d.ts
CHANGED
|
@@ -24,6 +24,9 @@ export declare class SfIEvents extends LitElement {
|
|
|
24
24
|
TAB_CUSTOM: string;
|
|
25
25
|
TAB_REPORTER: string;
|
|
26
26
|
TAB_APPROVER: string;
|
|
27
|
+
COLOR_APPROVED: string;
|
|
28
|
+
COLOR_NOT_STARTED: string;
|
|
29
|
+
COLOR_IN_PROGRESS: string;
|
|
27
30
|
name: string;
|
|
28
31
|
apiId: string;
|
|
29
32
|
apiIdList: string;
|
|
@@ -36,8 +39,10 @@ export declare class SfIEvents extends LitElement {
|
|
|
36
39
|
apiBodyDetail: string;
|
|
37
40
|
userProfileId: string;
|
|
38
41
|
projectId: string;
|
|
42
|
+
projectName: string;
|
|
39
43
|
apiResponseFieldList: string;
|
|
40
44
|
myRole: string;
|
|
45
|
+
chart: any;
|
|
41
46
|
calendarStartDD: string;
|
|
42
47
|
calendarStartMM: string;
|
|
43
48
|
calendarStartYYYY: string;
|
|
@@ -49,6 +54,7 @@ export declare class SfIEvents extends LitElement {
|
|
|
49
54
|
mappings: any;
|
|
50
55
|
monthNames: string[];
|
|
51
56
|
events: any;
|
|
57
|
+
eventsInWindow: any;
|
|
52
58
|
eventHideFields: any;
|
|
53
59
|
getEventHideFields: () => any;
|
|
54
60
|
eventPreviewFields: any;
|
|
@@ -132,6 +138,7 @@ export declare class SfIEvents extends LitElement {
|
|
|
132
138
|
showUnmappedEvents: () => void;
|
|
133
139
|
updateInAllSelections: (param: string, value: any) => void;
|
|
134
140
|
updateMappingStatus: (value: any, clickIndex: number) => void;
|
|
141
|
+
filterEventsInWindow: (tags: Array<string>, ctx: any) => void;
|
|
135
142
|
renderCustom: () => void;
|
|
136
143
|
renderPast: (index?: number) => void;
|
|
137
144
|
renderUpcoming: (index?: number) => void;
|
|
@@ -140,9 +147,9 @@ export declare class SfIEvents extends LitElement {
|
|
|
140
147
|
renderEventDetail: (event: any, mmddyyyy: any) => void;
|
|
141
148
|
renderCalendar: () => void;
|
|
142
149
|
renderRoleTabs: () => void;
|
|
143
|
-
renderChartSettingsFilters: (container: HTMLDivElement) => void;
|
|
150
|
+
renderChartSettingsFilters: (container: HTMLDivElement, ctx: any) => void;
|
|
144
151
|
renderChartSettingsSettings: (container: HTMLDivElement) => void;
|
|
145
|
-
renderChartSettings: (container: HTMLDivElement, selectedTab
|
|
152
|
+
renderChartSettings: (container: HTMLDivElement, selectedTab: number | undefined, ctx: any) => void;
|
|
146
153
|
renderChart: (ctx: any, type: any, data: any) => void;
|
|
147
154
|
getCurrentTab: () => string;
|
|
148
155
|
renderTabs: (selectedTab: string) => void;
|
|
@@ -175,7 +182,7 @@ export declare class SfIEvents extends LitElement {
|
|
|
175
182
|
showChooseProject: () => void;
|
|
176
183
|
showChosenProject: () => void;
|
|
177
184
|
showChosenMapping: () => void;
|
|
178
|
-
truncate: (str: string, n: number, useWordBoundary: boolean) => string;
|
|
185
|
+
truncate: (str: string, n: number, useWordBoundary: boolean, ellipsis?: boolean) => string;
|
|
179
186
|
initListenersAdmin: () => void;
|
|
180
187
|
loadMode: () => Promise<void>;
|
|
181
188
|
constructor();
|
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;AAkB5D;;;;;;;;;;GAUG;AACH,qBACa,SAAU,SAAQ,UAAU;IAEvC,QAAQ,SAAU;IAClB,UAAU,SAAY;IACtB,YAAY,SAAc;IAC1B,QAAQ,SAAU;IAClB,QAAQ,SAAU;IAClB,UAAU,SAAY;IACtB,YAAY,SAAc;IAC1B,YAAY,SAAc;
|
|
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
|
@@ -44,7 +44,11 @@ let SfIEvents = class SfIEvents extends LitElement {
|
|
|
44
44
|
this.TAB_CUSTOM = "custom";
|
|
45
45
|
this.TAB_REPORTER = "reporter";
|
|
46
46
|
this.TAB_APPROVER = "approver";
|
|
47
|
+
this.COLOR_APPROVED = "#20a39e";
|
|
48
|
+
this.COLOR_NOT_STARTED = "#A4A9AD";
|
|
49
|
+
this.COLOR_IN_PROGRESS = "#FFBA49";
|
|
47
50
|
this.myRole = this.TAB_REPORTER;
|
|
51
|
+
this.chart = null;
|
|
48
52
|
this.calendar = [];
|
|
49
53
|
this.mappedValuesDueDates = {};
|
|
50
54
|
this.mappedValuesUsers = {};
|
|
@@ -53,6 +57,7 @@ let SfIEvents = class SfIEvents extends LitElement {
|
|
|
53
57
|
this.mappings = null;
|
|
54
58
|
this.monthNames = ["January", "February", "March", "April", "May", "June", "July", "August", "September", "October", "November", "December"];
|
|
55
59
|
this.events = null;
|
|
60
|
+
this.eventsInWindow = null;
|
|
56
61
|
this.eventHideFields = null;
|
|
57
62
|
this.getEventHideFields = () => {
|
|
58
63
|
return JSON.parse(this.eventHideFields);
|
|
@@ -220,8 +225,32 @@ let SfIEvents = class SfIEvents extends LitElement {
|
|
|
220
225
|
html += '<div>';
|
|
221
226
|
html += (i + 1);
|
|
222
227
|
html += '</div>';
|
|
228
|
+
var approved = 0;
|
|
229
|
+
var inProgress = 0;
|
|
230
|
+
var notStarted = 0;
|
|
231
|
+
var total = 0;
|
|
232
|
+
for (var j = 0; j < this.events[mmdd].length; j++) {
|
|
233
|
+
//console.log('events', i + ',' + j, JSON.parse(this.events[mmdd][j].documents[mmdd + "/" + new Date().getFullYear()]))
|
|
234
|
+
total++;
|
|
235
|
+
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) {
|
|
236
|
+
notStarted++;
|
|
237
|
+
}
|
|
238
|
+
else if (this.events[mmdd][j].approved != null && this.events[mmdd][j].approved[mmdd + "/" + new Date().getFullYear()]) {
|
|
239
|
+
approved++;
|
|
240
|
+
}
|
|
241
|
+
else {
|
|
242
|
+
inProgress++;
|
|
243
|
+
}
|
|
244
|
+
}
|
|
245
|
+
var percApproved = (approved * 100) / total;
|
|
246
|
+
var percInProgress = (inProgress * 100) / total;
|
|
247
|
+
var percNotStarted = (notStarted * 100) / total;
|
|
248
|
+
console.log('percentages', mmdd, percApproved, percInProgress, percNotStarted);
|
|
223
249
|
html += '<div class="d-flex justify-center">';
|
|
224
|
-
html += '<div part="event-date-indicator-primary" class="dot"></div>'
|
|
250
|
+
//html += '<div part="event-date-indicator-primary" class="dot"></div>'
|
|
251
|
+
html += '<div class="dot" style="width: ' + percApproved + '%; background-color: ' + this.COLOR_APPROVED + '"></div>';
|
|
252
|
+
html += '<div class="dot" style="width: ' + percInProgress + '%; background-color: ' + this.COLOR_IN_PROGRESS + '"></div>';
|
|
253
|
+
html += '<div class="dot" style="width: ' + percNotStarted + '%; background-color: ' + this.COLOR_NOT_STARTED + '"></div>';
|
|
225
254
|
html += '</div>';
|
|
226
255
|
html += '</div>';
|
|
227
256
|
}
|
|
@@ -285,6 +314,7 @@ let SfIEvents = class SfIEvents extends LitElement {
|
|
|
285
314
|
html += '<div part="badge-dashboard" class="mr-10"><span class="muted">Not Started:</span> <span id="graph-not-started">DASHBOARD_NOT_STARTED</span></div>';
|
|
286
315
|
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
316
|
html += '</div>';
|
|
317
|
+
this.eventsInWindow = [];
|
|
288
318
|
for (var i = 1; i <= lastDay; i++) {
|
|
289
319
|
const mmdd = ("0" + (month + 1)).slice(-2) + "/" + ("0" + i).slice(-2);
|
|
290
320
|
var hide = true;
|
|
@@ -313,6 +343,8 @@ let SfIEvents = class SfIEvents extends LitElement {
|
|
|
313
343
|
html += '<div class="stream-event-list-container flex-grow">';
|
|
314
344
|
for (var j = 0; j < this.events[mmdd].length; j++) {
|
|
315
345
|
total++;
|
|
346
|
+
this.events[mmdd][j]['mmdd'] = mmdd;
|
|
347
|
+
this.eventsInWindow.push(this.events[mmdd][j]);
|
|
316
348
|
html += '<div class="stream-events-container flex-grow">';
|
|
317
349
|
html += '<table>';
|
|
318
350
|
html += '<thead>';
|
|
@@ -1345,6 +1377,93 @@ let SfIEvents = class SfIEvents extends LitElement {
|
|
|
1345
1377
|
this._SfMappingContainer.querySelector('#row-unmapped-status-' + clickIndex).innerHTML = '<span class="material-icons color-pending">pending</done>';
|
|
1346
1378
|
}
|
|
1347
1379
|
};
|
|
1380
|
+
this.filterEventsInWindow = (tags, ctx) => {
|
|
1381
|
+
const arrData = [];
|
|
1382
|
+
console.log('window', this.eventsInWindow);
|
|
1383
|
+
for (var i = 0; i < tags.length; i++) {
|
|
1384
|
+
var countApproved = 0;
|
|
1385
|
+
var countInProgress = 0;
|
|
1386
|
+
var countNotStarted = 0;
|
|
1387
|
+
for (var j = 0; j < this.eventsInWindow.length; j++) {
|
|
1388
|
+
const event = this.eventsInWindow[j];
|
|
1389
|
+
for (var l = 0; l < event.tags.length; l++) {
|
|
1390
|
+
if ((event.tags[l] + "").toLowerCase().indexOf((tags[i] + "").toLowerCase().split(';')[1]) >= 0) {
|
|
1391
|
+
console.log('found', event.documents[event.mmdd + '/' + new Date().getFullYear()], event.approved[event.mmdd + '/' + new Date().getFullYear()], event.approved[event.mmdd + '/' + new Date().getFullYear()].approved);
|
|
1392
|
+
if (event.documents == null || event.documents[event.mmdd + '/' + new Date().getFullYear()] == null || JSON.parse(event.documents[event.mmdd + '/' + new Date().getFullYear()]) == null) {
|
|
1393
|
+
countNotStarted++;
|
|
1394
|
+
}
|
|
1395
|
+
else if (event.approved != null && event.approved[event.mmdd + '/' + new Date().getFullYear()] != null && !event.approved[event.mmdd + '/' + new Date().getFullYear()]) {
|
|
1396
|
+
countInProgress++;
|
|
1397
|
+
}
|
|
1398
|
+
else if (event.approved != null && event.approved[event.mmdd + '/' + new Date().getFullYear()] != null && event.approved[event.mmdd + '/' + new Date().getFullYear()]) {
|
|
1399
|
+
countApproved++;
|
|
1400
|
+
}
|
|
1401
|
+
}
|
|
1402
|
+
}
|
|
1403
|
+
}
|
|
1404
|
+
const arrItem = [countApproved, countInProgress, countNotStarted];
|
|
1405
|
+
arrData.push(arrItem);
|
|
1406
|
+
}
|
|
1407
|
+
console.log(arrData);
|
|
1408
|
+
const dataSetApproved = [];
|
|
1409
|
+
const dataSetInProgress = [];
|
|
1410
|
+
const dataSetNotStarted = [];
|
|
1411
|
+
for (i = 0; i < arrData.length; i++) {
|
|
1412
|
+
dataSetApproved.push(arrData[i][0]);
|
|
1413
|
+
dataSetInProgress.push(arrData[i][1]);
|
|
1414
|
+
dataSetNotStarted.push(arrData[i][2]);
|
|
1415
|
+
}
|
|
1416
|
+
const tagsCompressed = [];
|
|
1417
|
+
for (i = 0; i < tags.length; i++) {
|
|
1418
|
+
tagsCompressed.push(this.truncate(tags[i].split(';')[0], 20, false, false));
|
|
1419
|
+
}
|
|
1420
|
+
if (this.fill == "solid") {
|
|
1421
|
+
const data = {
|
|
1422
|
+
labels: tagsCompressed,
|
|
1423
|
+
datasets: [
|
|
1424
|
+
{
|
|
1425
|
+
label: 'Approved',
|
|
1426
|
+
data: dataSetApproved,
|
|
1427
|
+
backgroundColor: '#20a39e'
|
|
1428
|
+
},
|
|
1429
|
+
{
|
|
1430
|
+
label: 'In Progress',
|
|
1431
|
+
data: dataSetInProgress,
|
|
1432
|
+
backgroundColor: '#FFBA49'
|
|
1433
|
+
},
|
|
1434
|
+
{
|
|
1435
|
+
label: 'Not Started',
|
|
1436
|
+
data: dataSetNotStarted,
|
|
1437
|
+
backgroundColor: '#A4A9AD'
|
|
1438
|
+
}
|
|
1439
|
+
]
|
|
1440
|
+
};
|
|
1441
|
+
this.renderChart(ctx, 'bar', data);
|
|
1442
|
+
}
|
|
1443
|
+
else {
|
|
1444
|
+
const data = {
|
|
1445
|
+
labels: tagsCompressed,
|
|
1446
|
+
datasets: [
|
|
1447
|
+
{
|
|
1448
|
+
label: 'Approved',
|
|
1449
|
+
data: dataSetApproved,
|
|
1450
|
+
backgroundColor: Util.createDiagonalPattern3('#20a39e')
|
|
1451
|
+
},
|
|
1452
|
+
{
|
|
1453
|
+
label: 'In Progress',
|
|
1454
|
+
data: dataSetInProgress,
|
|
1455
|
+
backgroundColor: Util.createDiagonalPattern1('#FFBA49')
|
|
1456
|
+
},
|
|
1457
|
+
{
|
|
1458
|
+
label: 'Not Started',
|
|
1459
|
+
data: dataSetNotStarted,
|
|
1460
|
+
backgroundColor: Util.createDiagonalPattern2('#A4A9AD')
|
|
1461
|
+
}
|
|
1462
|
+
]
|
|
1463
|
+
};
|
|
1464
|
+
this.renderChart(ctx, 'bar', data);
|
|
1465
|
+
}
|
|
1466
|
+
};
|
|
1348
1467
|
this.renderCustom = () => {
|
|
1349
1468
|
var _a, _b;
|
|
1350
1469
|
var html = '';
|
|
@@ -1608,13 +1727,13 @@ let SfIEvents = class SfIEvents extends LitElement {
|
|
|
1608
1727
|
data: [dataApproved, dataNotStarted, dataInProgress],
|
|
1609
1728
|
borderWidth: 1,
|
|
1610
1729
|
backgroundColor: [
|
|
1611
|
-
Util.createDiagonalPattern3(
|
|
1612
|
-
Util.createDiagonalPattern2(
|
|
1613
|
-
Util.createDiagonalPattern1(
|
|
1730
|
+
Util.createDiagonalPattern3(this.COLOR_APPROVED),
|
|
1731
|
+
Util.createDiagonalPattern2(this.COLOR_NOT_STARTED),
|
|
1732
|
+
Util.createDiagonalPattern1(this.COLOR_IN_PROGRESS)
|
|
1614
1733
|
]
|
|
1615
1734
|
}]
|
|
1616
1735
|
};
|
|
1617
|
-
this.renderChartSettings(this._SfStreamContainer);
|
|
1736
|
+
this.renderChartSettings(this._SfStreamContainer, -1, ctx);
|
|
1618
1737
|
this.renderChart(ctx, 'doughnut', data);
|
|
1619
1738
|
}
|
|
1620
1739
|
if (this.fill == "solid") {
|
|
@@ -1625,13 +1744,13 @@ let SfIEvents = class SfIEvents extends LitElement {
|
|
|
1625
1744
|
data: [dataApproved, dataNotStarted, dataInProgress],
|
|
1626
1745
|
borderWidth: 1,
|
|
1627
1746
|
backgroundColor: [
|
|
1628
|
-
|
|
1629
|
-
|
|
1630
|
-
|
|
1747
|
+
this.COLOR_APPROVED,
|
|
1748
|
+
this.COLOR_NOT_STARTED,
|
|
1749
|
+
this.COLOR_IN_PROGRESS
|
|
1631
1750
|
]
|
|
1632
1751
|
}]
|
|
1633
1752
|
};
|
|
1634
|
-
this.renderChartSettings(this._SfStreamContainer);
|
|
1753
|
+
this.renderChartSettings(this._SfStreamContainer, -1, ctx);
|
|
1635
1754
|
this.renderChart(ctx, 'doughnut', data);
|
|
1636
1755
|
}
|
|
1637
1756
|
};
|
|
@@ -1858,21 +1977,29 @@ let SfIEvents = class SfIEvents extends LitElement {
|
|
|
1858
1977
|
}
|
|
1859
1978
|
});
|
|
1860
1979
|
};
|
|
1861
|
-
this.renderChartSettingsFilters = (container) => {
|
|
1862
|
-
var _a;
|
|
1980
|
+
this.renderChartSettingsFilters = (container, ctx) => {
|
|
1981
|
+
var _a, _b;
|
|
1863
1982
|
console.log(container);
|
|
1864
1983
|
var html = `
|
|
1865
1984
|
|
|
1866
|
-
<div class="m-
|
|
1985
|
+
<div class="m-10" part="input">
|
|
1867
1986
|
<div class="d-flex justify-end">
|
|
1868
1987
|
<button id="chart-control-cancel" part="button-icon"><span class="material-icons">close</span></button>
|
|
1869
1988
|
</div>
|
|
1870
|
-
|
|
1989
|
+
<div class="d-flex justify-end align-end m-20">
|
|
1990
|
+
<sf-i-form id="input-multi-entry-tags" name="Tags" label="Select Tags" apiId="${this.apiIdTags}" mode="multiselect-dropdown" searchPhrase="${this.projectName}" selectProjection="name" mandatory></sf-i-form>
|
|
1991
|
+
<button id="chart-control-plot" part="button" class="ml-20">Plot</button>
|
|
1992
|
+
</div>
|
|
1871
1993
|
</div>
|
|
1872
1994
|
|
|
1873
1995
|
`;
|
|
1874
1996
|
container.innerHTML = html;
|
|
1875
|
-
(_a = container.querySelector('#chart-control-
|
|
1997
|
+
(_a = container.querySelector('#chart-control-plot')) === null || _a === void 0 ? void 0 : _a.addEventListener('click', () => {
|
|
1998
|
+
const query = container.querySelector('#input-multi-entry-tags').selectedValues();
|
|
1999
|
+
//console.log('query', query, this.eventsInWindow);
|
|
2000
|
+
this.filterEventsInWindow(query, ctx);
|
|
2001
|
+
});
|
|
2002
|
+
(_b = container.querySelector('#chart-control-cancel')) === null || _b === void 0 ? void 0 : _b.addEventListener('click', () => {
|
|
1876
2003
|
container.innerHTML = '';
|
|
1877
2004
|
container.dispatchEvent(new CustomEvent('canceled', { bubbles: true }));
|
|
1878
2005
|
});
|
|
@@ -1893,7 +2020,7 @@ let SfIEvents = class SfIEvents extends LitElement {
|
|
|
1893
2020
|
<div class="d-flex justify-end">
|
|
1894
2021
|
<button id="chart-control-cancel" part="button-icon"><span class="material-icons">close</span></button>
|
|
1895
2022
|
</div>
|
|
1896
|
-
<div class="d-flex justify-end">
|
|
2023
|
+
<div class="d-flex justify-end m-20">
|
|
1897
2024
|
<div>
|
|
1898
2025
|
<label part="input-label">Fill</label><br />
|
|
1899
2026
|
<div class="switch-field">
|
|
@@ -1925,7 +2052,7 @@ let SfIEvents = class SfIEvents extends LitElement {
|
|
|
1925
2052
|
}
|
|
1926
2053
|
});
|
|
1927
2054
|
};
|
|
1928
|
-
this.renderChartSettings = (container, selectedTab = -1) => {
|
|
2055
|
+
this.renderChartSettings = (container, selectedTab = -1, ctx) => {
|
|
1929
2056
|
var _a, _b;
|
|
1930
2057
|
var html = '';
|
|
1931
2058
|
html += '<div class="d-flex justify-end align-start">';
|
|
@@ -1944,20 +2071,21 @@ let SfIEvents = class SfIEvents extends LitElement {
|
|
|
1944
2071
|
html += '</div>';
|
|
1945
2072
|
container.querySelector('#chart-settings-controls').innerHTML = html;
|
|
1946
2073
|
(_a = container.querySelector('#chart-settings-controls').querySelector('#chart-control-settings')) === null || _a === void 0 ? void 0 : _a.addEventListener('click', () => {
|
|
1947
|
-
this.renderChartSettings(container, 1);
|
|
2074
|
+
this.renderChartSettings(container, 1, ctx);
|
|
1948
2075
|
});
|
|
1949
2076
|
(_b = container.querySelector('#chart-settings-controls').querySelector('#chart-control-filters')) === null || _b === void 0 ? void 0 : _b.addEventListener('click', () => {
|
|
1950
|
-
this.renderChartSettings(container, 0);
|
|
2077
|
+
this.renderChartSettings(container, 0, ctx);
|
|
1951
2078
|
});
|
|
1952
2079
|
if (selectedTab === 0) {
|
|
1953
|
-
this.renderChartSettingsFilters(container.querySelector('#chart-settings'));
|
|
2080
|
+
this.renderChartSettingsFilters(container.querySelector('#chart-settings'), ctx);
|
|
1954
2081
|
}
|
|
1955
2082
|
if (selectedTab === 1) {
|
|
1956
2083
|
this.renderChartSettingsSettings(container.querySelector('#chart-settings'));
|
|
1957
2084
|
}
|
|
1958
2085
|
container.querySelector('#chart-settings').addEventListener('canceled', () => {
|
|
1959
2086
|
console.log('canceled');
|
|
1960
|
-
this.renderChartSettings(container);
|
|
2087
|
+
this.renderChartSettings(container, -1, ctx);
|
|
2088
|
+
this.renderStream();
|
|
1961
2089
|
});
|
|
1962
2090
|
// (container.querySelector('#chart-settings-controls') as HTMLDivElement).querySelector('#chart-control-settings-cancel')?.addEventListener('click', () => {
|
|
1963
2091
|
// ((container.querySelector('#chart-settings-controls') as HTMLDivElement).querySelector('#chart-control-filters-cancel') as HTMLButtonElement).style.display = 'none';
|
|
@@ -1983,7 +2111,11 @@ let SfIEvents = class SfIEvents extends LitElement {
|
|
|
1983
2111
|
// })
|
|
1984
2112
|
};
|
|
1985
2113
|
this.renderChart = (ctx, type, data) => {
|
|
1986
|
-
|
|
2114
|
+
console.log('rendering chart', type, data);
|
|
2115
|
+
if (this.chart != null) {
|
|
2116
|
+
this.chart.destroy();
|
|
2117
|
+
}
|
|
2118
|
+
this.chart = new Chart(ctx, {
|
|
1987
2119
|
type: type,
|
|
1988
2120
|
data: data,
|
|
1989
2121
|
});
|
|
@@ -2921,14 +3053,14 @@ let SfIEvents = class SfIEvents extends LitElement {
|
|
|
2921
3053
|
elems[index].style.display = 'flex';
|
|
2922
3054
|
}
|
|
2923
3055
|
};
|
|
2924
|
-
this.truncate = (str, n, useWordBoundary) => {
|
|
3056
|
+
this.truncate = (str, n, useWordBoundary, ellipsis = true) => {
|
|
2925
3057
|
if (str.length <= n) {
|
|
2926
3058
|
return str;
|
|
2927
3059
|
}
|
|
2928
3060
|
const subString = str.slice(0, n - 1); // the original check
|
|
2929
3061
|
return (useWordBoundary
|
|
2930
3062
|
? subString.slice(0, subString.lastIndexOf(" "))
|
|
2931
|
-
: subString) + "…";
|
|
3063
|
+
: subString) + (ellipsis ? "…" : "...");
|
|
2932
3064
|
};
|
|
2933
3065
|
this.initListenersAdmin = () => {
|
|
2934
3066
|
var _a, _b, _c, _d, _e, _f, _g;
|
|
@@ -3425,6 +3557,10 @@ SfIEvents.styles = css `
|
|
|
3425
3557
|
margin-top: 20px;
|
|
3426
3558
|
}
|
|
3427
3559
|
|
|
3560
|
+
.ml-20 {
|
|
3561
|
+
margin-left: 20px;
|
|
3562
|
+
}
|
|
3563
|
+
|
|
3428
3564
|
.mr-20 {
|
|
3429
3565
|
margin-right: 20px;
|
|
3430
3566
|
}
|
|
@@ -3577,9 +3713,7 @@ SfIEvents.styles = css `
|
|
|
3577
3713
|
}
|
|
3578
3714
|
|
|
3579
3715
|
.dot {
|
|
3580
|
-
width: 6px;
|
|
3581
3716
|
height: 6px;
|
|
3582
|
-
border-radius: 3px;
|
|
3583
3717
|
}
|
|
3584
3718
|
|
|
3585
3719
|
.title-item {
|
|
@@ -3855,12 +3989,18 @@ __decorate([
|
|
|
3855
3989
|
__decorate([
|
|
3856
3990
|
property()
|
|
3857
3991
|
], SfIEvents.prototype, "projectId", void 0);
|
|
3992
|
+
__decorate([
|
|
3993
|
+
property()
|
|
3994
|
+
], SfIEvents.prototype, "projectName", void 0);
|
|
3858
3995
|
__decorate([
|
|
3859
3996
|
property()
|
|
3860
3997
|
], SfIEvents.prototype, "apiResponseFieldList", void 0);
|
|
3861
3998
|
__decorate([
|
|
3862
3999
|
property()
|
|
3863
4000
|
], SfIEvents.prototype, "myRole", void 0);
|
|
4001
|
+
__decorate([
|
|
4002
|
+
property()
|
|
4003
|
+
], SfIEvents.prototype, "chart", void 0);
|
|
3864
4004
|
__decorate([
|
|
3865
4005
|
property()
|
|
3866
4006
|
], SfIEvents.prototype, "calendarStartDD", void 0);
|
|
@@ -3894,6 +4034,9 @@ __decorate([
|
|
|
3894
4034
|
__decorate([
|
|
3895
4035
|
property()
|
|
3896
4036
|
], SfIEvents.prototype, "events", void 0);
|
|
4037
|
+
__decorate([
|
|
4038
|
+
property()
|
|
4039
|
+
], SfIEvents.prototype, "eventsInWindow", void 0);
|
|
3897
4040
|
__decorate([
|
|
3898
4041
|
property()
|
|
3899
4042
|
], SfIEvents.prototype, "eventHideFields", void 0);
|