kwikid-agent-dashboard 0.0.39 → 0.0.41
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/bundles/kwikid-agent-dashboard.umd.js +224 -187
- package/bundles/kwikid-agent-dashboard.umd.js.map +1 -1
- package/esm2015/lib/kwikid-agent-dashboard.component.js +2 -2
- package/esm2015/lib/v1/components/customer-details/customer-details.component.js +30 -28
- package/esm2015/lib/v1/components/customer-list/customer-list.component.js +16 -15
- package/esm2015/lib/v1/components/customer-tile/customer-tile.component.js +26 -24
- package/esm2015/lib/v1/components/customer-tile/status-pill/status-pill.component.js +31 -26
- package/esm2015/lib/v1/components/customer-tile/status-pill/status-pill.constants.js +33 -0
- package/esm2015/lib/v1/kwikid-agent-dashboard.component.js +13 -10
- package/esm2015/lib/v1/services/agent.service.js +3 -11
- package/esm2015/lib/v1/services/google-maps.service.js +20 -14
- package/esm2015/lib/v1/services/open-street-maps.service.js +5 -5
- package/esm2015/lib/v2/kwikid-agent-dashboard.component.js +2 -11
- package/fesm2015/kwikid-agent-dashboard.js +166 -134
- package/fesm2015/kwikid-agent-dashboard.js.map +1 -1
- package/lib/v1/components/customer-details/customer-details.component.d.ts +1 -0
- package/lib/v1/components/customer-tile/customer-tile.component.d.ts +1 -0
- package/lib/v1/components/customer-tile/status-pill/status-pill.component.d.ts +8 -9
- package/lib/v1/components/customer-tile/status-pill/status-pill.constants.d.ts +32 -0
- package/lib/v1/kwikid-agent-dashboard.component.d.ts +3 -2
- package/lib/v1/services/agent.service.d.ts +0 -1
- package/lib/v1/services/google-maps.service.d.ts +1 -1
- package/package.json +3 -3
|
@@ -10,7 +10,7 @@ import { TuiDialogService, TuiRootModule, TuiDialogModule, TuiDropdownModule, Tu
|
|
|
10
10
|
import { trigger, transition, style, animate } from '@angular/animations';
|
|
11
11
|
import * as i8 from '@taiga-ui/addon-preview';
|
|
12
12
|
import { TuiPreviewDialogService, TuiPreviewActionModule, TuiPreviewModule } from '@taiga-ui/addon-preview';
|
|
13
|
-
import { logMethod, checkObjectPathExists, checkObjectKeyExists, convertSnakeCaseToNormalText, isNotEmptyValue, getObjectValueFromPath, isNotEmptyArray,
|
|
13
|
+
import { logMethod, checkObjectPathExists, checkObjectKeyExists, convertSnakeCaseToNormalText, isNotEmptyValue, getObjectValueFromPath, isNotEmptyArray, RuleEngine, getObjectDeepCopy } from 'kwikid-toolkit';
|
|
14
14
|
import * as i1$1 from '@taiga-ui/kit';
|
|
15
15
|
import { TuiItemsWithMoreModule, TuiBadgeModule, TuiAccordionModule, TuiPaginationModule } from '@taiga-ui/kit';
|
|
16
16
|
import * as i7 from '@angular/common';
|
|
@@ -1087,20 +1087,11 @@ class KwikIDAgentDashboardComponentV2 {
|
|
|
1087
1087
|
this.onGetTaskList = new EventEmitter();
|
|
1088
1088
|
this.onClickPerformAction = new EventEmitter();
|
|
1089
1089
|
}
|
|
1090
|
-
ngOnInit() {
|
|
1091
|
-
console.log("Agent Dashboard Config", this.config);
|
|
1092
|
-
console.log("User Config", this.userConfig);
|
|
1093
|
-
console.log("Agent Info", this.agentInfo);
|
|
1094
|
-
console.log("Tasks List", this.taskList);
|
|
1095
|
-
}
|
|
1090
|
+
ngOnInit() { }
|
|
1096
1091
|
ngOnChanges(changes) {
|
|
1097
1092
|
const verifyChange = (key) => {
|
|
1098
1093
|
return changes.hasOwnProperty(key) && !changes[key].firstChange;
|
|
1099
1094
|
};
|
|
1100
|
-
for (const change of Object.entries(changes)) {
|
|
1101
|
-
const key = change[0];
|
|
1102
|
-
const value = change[1].currentValue;
|
|
1103
|
-
}
|
|
1104
1095
|
if (verifyChange("taskList")) {
|
|
1105
1096
|
this.taskList = changes.taskList.currentValue;
|
|
1106
1097
|
}
|
|
@@ -1336,17 +1327,9 @@ class AgentService {
|
|
|
1336
1327
|
toggleMapview() {
|
|
1337
1328
|
this.showMapview = !this.showMapview;
|
|
1338
1329
|
}
|
|
1339
|
-
canStartJourney(status) {
|
|
1340
|
-
var _a, _b;
|
|
1341
|
-
const noneEditableStatus = (_b = (_a = this.config.dashboard) === null || _a === void 0 ? void 0 : _a.cannotStartJourney) !== null && _b !== void 0 ? _b : this.notRequiredStatus;
|
|
1342
|
-
if (noneEditableStatus.includes(status)) {
|
|
1343
|
-
return false;
|
|
1344
|
-
}
|
|
1345
|
-
return true;
|
|
1346
|
-
}
|
|
1347
1330
|
canPlotMarkers(status) {
|
|
1348
|
-
var _a, _b;
|
|
1349
|
-
const nonePlottingSessions = (_b = (_a = this.config
|
|
1331
|
+
var _a, _b, _c;
|
|
1332
|
+
const nonePlottingSessions = (_c = (_b = (_a = this.config) === null || _a === void 0 ? void 0 : _a.extendedFlags) === null || _b === void 0 ? void 0 : _b.dontPlotMarkers) !== null && _c !== void 0 ? _c : [];
|
|
1350
1333
|
if (nonePlottingSessions.includes(status)) {
|
|
1351
1334
|
return false;
|
|
1352
1335
|
}
|
|
@@ -1385,15 +1368,18 @@ class GoogleMapsService {
|
|
|
1385
1368
|
// To Initialize Google Maps
|
|
1386
1369
|
initializeMap() {
|
|
1387
1370
|
return __awaiter(this, void 0, void 0, function* () {
|
|
1388
|
-
this
|
|
1389
|
-
|
|
1390
|
-
|
|
1391
|
-
|
|
1392
|
-
|
|
1393
|
-
|
|
1394
|
-
|
|
1395
|
-
|
|
1396
|
-
|
|
1371
|
+
return new Promise((resolve) => __awaiter(this, void 0, void 0, function* () {
|
|
1372
|
+
this.myPosition = yield this.getPosition();
|
|
1373
|
+
this.map = {
|
|
1374
|
+
zoom: 10,
|
|
1375
|
+
center: this.myPosition,
|
|
1376
|
+
streetViewControl: false,
|
|
1377
|
+
mapTypeControl: false,
|
|
1378
|
+
fullscreenControl: false,
|
|
1379
|
+
zoomControl: false
|
|
1380
|
+
};
|
|
1381
|
+
resolve(true);
|
|
1382
|
+
}));
|
|
1397
1383
|
});
|
|
1398
1384
|
}
|
|
1399
1385
|
// To extract Location from the Task Details
|
|
@@ -1403,17 +1389,17 @@ class GoogleMapsService {
|
|
|
1403
1389
|
var _a, _b, _c, _d, _e, _f, _g, _h, _j, _k, _l, _m;
|
|
1404
1390
|
let encodedAddres;
|
|
1405
1391
|
// If Fetch Address from Multiple Paths
|
|
1406
|
-
if (checkObjectPathExists(this.agentService.config, "
|
|
1392
|
+
if (checkObjectPathExists(this.agentService.config, "extendedFlags.taskLocationPaths")) {
|
|
1407
1393
|
// Get address string from multiple paths
|
|
1408
|
-
const config = this.agentService.config.
|
|
1394
|
+
const config = this.agentService.config.extendedFlags.taskLocationPaths;
|
|
1409
1395
|
const address = addressConcator(task, config);
|
|
1410
1396
|
// Encode the Address in URI
|
|
1411
1397
|
encodedAddres = encodeURI(address);
|
|
1412
1398
|
}
|
|
1413
1399
|
// If Fetch Address from Single Path
|
|
1414
|
-
else if (checkObjectPathExists(this.agentService.config, "
|
|
1400
|
+
else if (checkObjectPathExists(this.agentService.config, "extendedFlags.taskLocationPath")) {
|
|
1415
1401
|
// Get Address from Single Path
|
|
1416
|
-
const config = this.agentService.config.
|
|
1402
|
+
const config = this.agentService.config.extendedFlags.taskLocationPath;
|
|
1417
1403
|
const address = getObjectValueFromPath(task, config);
|
|
1418
1404
|
// Encode the Address in URI
|
|
1419
1405
|
encodedAddres = encodeURI(address);
|
|
@@ -1478,6 +1464,9 @@ class GoogleMapsService {
|
|
|
1478
1464
|
// To Plot Directions for All Tasks
|
|
1479
1465
|
plotDirectionsForAllTasks(tasks) {
|
|
1480
1466
|
return __awaiter(this, void 0, void 0, function* () {
|
|
1467
|
+
if (!this.map || !this.myPosition) {
|
|
1468
|
+
return tasks;
|
|
1469
|
+
}
|
|
1481
1470
|
this.allMarkers = [];
|
|
1482
1471
|
// Create Agent Marker & Plot It.
|
|
1483
1472
|
const myMarker = {
|
|
@@ -1581,17 +1570,17 @@ class OpenStreetMapsService {
|
|
|
1581
1570
|
var _a, _b, _c, _d, _e, _f, _g, _h, _j, _k, _l, _m, _o, _p;
|
|
1582
1571
|
let encodedAddres;
|
|
1583
1572
|
// If Fetch Address from Multiple Paths
|
|
1584
|
-
if (checkObjectPathExists(this.agentService.config, "
|
|
1573
|
+
if (checkObjectPathExists(this.agentService.config, "extendedFlags.taskLocationPaths")) {
|
|
1585
1574
|
// Get address string from multiple paths
|
|
1586
|
-
const config = this.agentService.config.
|
|
1575
|
+
const config = this.agentService.config.extendedFlags.taskLocationPaths;
|
|
1587
1576
|
const address = addressConcator(task, config);
|
|
1588
1577
|
// Encode the Address in URI
|
|
1589
1578
|
encodedAddres = encodeURI(address);
|
|
1590
1579
|
}
|
|
1591
1580
|
// If Fetch Address from Single Path
|
|
1592
|
-
else if (checkObjectPathExists(this.agentService.config, "
|
|
1581
|
+
else if (checkObjectPathExists(this.agentService.config, "extendedFlags.taskLocationPath")) {
|
|
1593
1582
|
// Get Address from Single Path
|
|
1594
|
-
const config = this.agentService.config.
|
|
1583
|
+
const config = this.agentService.config.extendedFlags.taskLocationPath;
|
|
1595
1584
|
const address = getObjectValueFromPath(task, config);
|
|
1596
1585
|
// Encode the Address in URI
|
|
1597
1586
|
encodedAddres = encodeURI(address);
|
|
@@ -1796,44 +1785,77 @@ i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "12.2.17", ngImpo
|
|
|
1796
1785
|
args: ["directionsRender"]
|
|
1797
1786
|
}] } });
|
|
1798
1787
|
|
|
1788
|
+
const STATUS = {
|
|
1789
|
+
kyc_result_rejected: {
|
|
1790
|
+
color: "#eb3434",
|
|
1791
|
+
label: "KYC Result Rejected",
|
|
1792
|
+
background: "#ffd4da",
|
|
1793
|
+
hint: "KYC Result Rejected"
|
|
1794
|
+
},
|
|
1795
|
+
kyc_result_approved: {
|
|
1796
|
+
color: "#01663e",
|
|
1797
|
+
label: "KYC Result Approved",
|
|
1798
|
+
background: "#d7faee",
|
|
1799
|
+
hint: "KYC Result Approved"
|
|
1800
|
+
},
|
|
1801
|
+
kyc_result_partial_update: {
|
|
1802
|
+
color: "#023b57",
|
|
1803
|
+
label: "Partial Update",
|
|
1804
|
+
background: "#b5e0f5",
|
|
1805
|
+
hint: "Partial Update"
|
|
1806
|
+
},
|
|
1807
|
+
waiting: {
|
|
1808
|
+
color: "#000",
|
|
1809
|
+
label: "Waiting",
|
|
1810
|
+
background: "#f5ecb5",
|
|
1811
|
+
hint: "Waiting"
|
|
1812
|
+
}
|
|
1813
|
+
};
|
|
1814
|
+
const DEFAULT_STYLES = {
|
|
1815
|
+
color: "#fff",
|
|
1816
|
+
label: "Waiting",
|
|
1817
|
+
background: "#888",
|
|
1818
|
+
hint: "Waiting"
|
|
1819
|
+
};
|
|
1820
|
+
|
|
1799
1821
|
class StatusPillComponent {
|
|
1800
1822
|
constructor() {
|
|
1801
|
-
this.
|
|
1802
|
-
this.
|
|
1803
|
-
this.statusClass = {};
|
|
1823
|
+
this.styles = {};
|
|
1824
|
+
this.value = "";
|
|
1804
1825
|
}
|
|
1805
1826
|
ngOnInit() {
|
|
1806
|
-
this
|
|
1827
|
+
return __awaiter(this, void 0, void 0, function* () {
|
|
1828
|
+
this.setupStatus();
|
|
1829
|
+
});
|
|
1807
1830
|
}
|
|
1808
1831
|
ngOnChanges(changes) {
|
|
1809
1832
|
const verifyChange = (key) => {
|
|
1810
1833
|
return changes.hasOwnProperty(key) && !changes[key].firstChange;
|
|
1811
1834
|
};
|
|
1835
|
+
if (verifyChange("config")) {
|
|
1836
|
+
this.config = changes.config.currentValue;
|
|
1837
|
+
}
|
|
1812
1838
|
if (verifyChange("status")) {
|
|
1813
1839
|
this.status = changes.status.currentValue;
|
|
1814
|
-
this.
|
|
1840
|
+
this.setupStatus();
|
|
1815
1841
|
}
|
|
1816
1842
|
}
|
|
1817
|
-
|
|
1818
|
-
|
|
1819
|
-
|
|
1843
|
+
setupStatus() {
|
|
1844
|
+
var _a, _b;
|
|
1845
|
+
if (checkObjectPathExists(this.config, "mapping") &&
|
|
1846
|
+
checkObjectKeyExists(this.config.mapping, this.status)) {
|
|
1847
|
+
this.styles = Object.assign(Object.assign({}, DEFAULT_STYLES), this.config.mapping[this.status]);
|
|
1848
|
+
this.value =
|
|
1849
|
+
(_b = (_a = this.config.mapping[this.status]) === null || _a === void 0 ? void 0 : _a.label) !== null && _b !== void 0 ? _b : convertSnakeCaseToNormalText(this.status);
|
|
1850
|
+
}
|
|
1851
|
+
else {
|
|
1852
|
+
this.styles = DEFAULT_STYLES;
|
|
1853
|
+
this.value = convertSnakeCaseToNormalText(this.status);
|
|
1820
1854
|
}
|
|
1821
|
-
this.statusText = this.getStatusLabel(status);
|
|
1822
|
-
this.statusClass = this.getStatusPillClass(status);
|
|
1823
|
-
}
|
|
1824
|
-
getStatusPillClass(status) {
|
|
1825
|
-
const newStatus = status
|
|
1826
|
-
.replace("_", "-")
|
|
1827
|
-
.replace("_", "-")
|
|
1828
|
-
.replace("_", "-");
|
|
1829
|
-
return `status-pill ${newStatus}`;
|
|
1830
|
-
}
|
|
1831
|
-
getStatusLabel(status) {
|
|
1832
|
-
return status.replace("_", " ").replace("_", " ").replace("_", " ");
|
|
1833
1855
|
}
|
|
1834
1856
|
}
|
|
1835
1857
|
/** @nocollapse */ StatusPillComponent.ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "12.2.17", ngImport: i0, type: StatusPillComponent, deps: [], target: i0.ɵɵFactoryTarget.Component });
|
|
1836
|
-
/** @nocollapse */ StatusPillComponent.ɵcmp = i0.ɵɵngDeclareComponent({ minVersion: "12.0.0", version: "12.2.17", type: StatusPillComponent, selector: "status-pill", inputs: { status: "status" }, usesOnChanges: true, ngImport: i0, template: "<div
|
|
1858
|
+
/** @nocollapse */ StatusPillComponent.ɵcmp = i0.ɵɵngDeclareComponent({ minVersion: "12.0.0", version: "12.2.17", type: StatusPillComponent, selector: "status-pill", inputs: { config: "config", status: "status" }, usesOnChanges: true, ngImport: i0, template: "<div\n class=\"task-iem-status-container\"\n [style]=\"styles\"\n>\n {{ value }}\n</div>\n", styles: [".task-iem-status-container{width:-moz-fit-content;width:fit-content;padding:0 .4rem;font-size:.7rem;border-radius:1rem}\n"] });
|
|
1837
1859
|
i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "12.2.17", ngImport: i0, type: StatusPillComponent, decorators: [{
|
|
1838
1860
|
type: Component,
|
|
1839
1861
|
args: [{
|
|
@@ -1841,7 +1863,9 @@ i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "12.2.17", ngImpo
|
|
|
1841
1863
|
templateUrl: "./status-pill.component.html",
|
|
1842
1864
|
styleUrls: ["./status-pill.component.css"]
|
|
1843
1865
|
}]
|
|
1844
|
-
}], propDecorators: {
|
|
1866
|
+
}], ctorParameters: function () { return []; }, propDecorators: { config: [{
|
|
1867
|
+
type: Input
|
|
1868
|
+
}], status: [{
|
|
1845
1869
|
type: Input
|
|
1846
1870
|
}] } });
|
|
1847
1871
|
|
|
@@ -1956,45 +1980,47 @@ class CustomerDetailsComponent {
|
|
|
1956
1980
|
this.parseData();
|
|
1957
1981
|
}
|
|
1958
1982
|
}
|
|
1983
|
+
getValueFromArray(paths) {
|
|
1984
|
+
let data = "";
|
|
1985
|
+
// eslint-disable-next-line array-callback-return
|
|
1986
|
+
paths.map((path) => {
|
|
1987
|
+
const value = getObjectValueFromPath(this.customer, path);
|
|
1988
|
+
data = `${data} ${value}`;
|
|
1989
|
+
});
|
|
1990
|
+
return data;
|
|
1991
|
+
}
|
|
1959
1992
|
parseData() {
|
|
1960
|
-
var _a, _b, _c, _d, _e, _f, _g, _h, _j, _k
|
|
1961
|
-
const identifier = (
|
|
1993
|
+
var _a, _b, _c, _d, _e, _f, _g, _h, _j, _k;
|
|
1994
|
+
const identifier = (_a = this.config.taskUI.details.header.taskId.path) !== null && _a !== void 0 ? _a : "user_id";
|
|
1962
1995
|
this.taskId = getObjectValueFromPath(this.customer, identifier);
|
|
1963
1996
|
let detailsConfig = [];
|
|
1964
|
-
if (checkObjectPathExists(this.config, "
|
|
1965
|
-
isNotEmptyArray(this.config.
|
|
1966
|
-
detailsConfig = this.config.dashboard.viewTaskDetails;
|
|
1967
|
-
const data = [];
|
|
1968
|
-
detailsConfig.map((field) => {
|
|
1969
|
-
const value = getObjectValueFromPath(this.customer, field.value);
|
|
1970
|
-
data.push({ label: field.label, value });
|
|
1971
|
-
return true;
|
|
1972
|
-
});
|
|
1973
|
-
this.labelValuePairData = data;
|
|
1974
|
-
}
|
|
1975
|
-
else if (checkObjectPathExists(this.config, "dashboard.taskUI.details.data") &&
|
|
1976
|
-
isNotEmptyArray(this.config.dashboard.taskUI.details.data)) {
|
|
1977
|
-
detailsConfig = this.config.dashboard.taskUI.details.data;
|
|
1997
|
+
if (checkObjectPathExists(this.config, "taskUI.details.data") &&
|
|
1998
|
+
isNotEmptyArray(this.config.taskUI.details.data)) {
|
|
1978
1999
|
const data = [];
|
|
2000
|
+
detailsConfig = this.config.taskUI.details.data;
|
|
1979
2001
|
detailsConfig.map((field) => {
|
|
1980
|
-
|
|
2002
|
+
let value;
|
|
2003
|
+
if (Array.isArray(field.path)) {
|
|
2004
|
+
value = this.getValueFromArray(field.path);
|
|
2005
|
+
}
|
|
2006
|
+
else {
|
|
2007
|
+
value = getObjectValueFromPath(this.customer, field.path);
|
|
2008
|
+
}
|
|
1981
2009
|
data.push({ label: field.label, value });
|
|
1982
2010
|
return true;
|
|
1983
2011
|
});
|
|
1984
2012
|
this.labelValuePairData = data;
|
|
1985
2013
|
}
|
|
1986
|
-
this.labelValuePairConfig =
|
|
1987
|
-
|
|
1988
|
-
this.title =
|
|
1989
|
-
(_p = (_o = (_m = (_l = (_k = (_j = this.config) === null || _j === void 0 ? void 0 : _j.dashboard) === null || _k === void 0 ? void 0 : _k.taskUI) === null || _l === void 0 ? void 0 : _l.details) === null || _m === void 0 ? void 0 : _m.header) === null || _o === void 0 ? void 0 : _o.title) !== null && _p !== void 0 ? _p : this.title;
|
|
2014
|
+
this.labelValuePairConfig = (_e = (_d = (_c = (_b = this.config) === null || _b === void 0 ? void 0 : _b.taskUI) === null || _c === void 0 ? void 0 : _c.details) === null || _d === void 0 ? void 0 : _d.config) !== null && _e !== void 0 ? _e : {};
|
|
2015
|
+
this.title = (_k = (_j = (_h = (_g = (_f = this.config) === null || _f === void 0 ? void 0 : _f.taskUI) === null || _g === void 0 ? void 0 : _g.details) === null || _h === void 0 ? void 0 : _h.header) === null || _j === void 0 ? void 0 : _j.title) !== null && _k !== void 0 ? _k : this.title;
|
|
1990
2016
|
}
|
|
1991
2017
|
getTaskCreationTime(task) {
|
|
1992
|
-
var _a;
|
|
1993
|
-
if (
|
|
1994
|
-
const time = getObjectValueFromPath(task, this.
|
|
2018
|
+
var _a, _b, _c, _d, _e, _f, _g, _h, _j;
|
|
2019
|
+
if ((_d = (_c = (_b = (_a = this.config) === null || _a === void 0 ? void 0 : _a.taskUI) === null || _b === void 0 ? void 0 : _b.details) === null || _c === void 0 ? void 0 : _c.time) === null || _d === void 0 ? void 0 : _d.path) {
|
|
2020
|
+
const time = getObjectValueFromPath(task, (_h = (_g = (_f = (_e = this.config) === null || _e === void 0 ? void 0 : _e.taskUI) === null || _f === void 0 ? void 0 : _f.details) === null || _g === void 0 ? void 0 : _g.time) === null || _h === void 0 ? void 0 : _h.path);
|
|
1995
2021
|
return this.convertEpochToDate(time);
|
|
1996
2022
|
}
|
|
1997
|
-
return this.convertEpochToDate((
|
|
2023
|
+
return this.convertEpochToDate((_j = task === null || task === void 0 ? void 0 : task.task_creation_time) !== null && _j !== void 0 ? _j : task === null || task === void 0 ? void 0 : task.start_time);
|
|
1998
2024
|
}
|
|
1999
2025
|
convertEpochToDate(epochTime) {
|
|
2000
2026
|
if (typeof epochTime === "string")
|
|
@@ -2017,7 +2043,7 @@ class CustomerDetailsComponent {
|
|
|
2017
2043
|
close() {
|
|
2018
2044
|
var _a, _b;
|
|
2019
2045
|
this.agentService.currentTaskDetails = undefined;
|
|
2020
|
-
if (((_b = (_a = this.
|
|
2046
|
+
if (((_b = (_a = this.config) === null || _a === void 0 ? void 0 : _a.maps) === null || _b === void 0 ? void 0 : _b.mapType) === "google-maps") {
|
|
2021
2047
|
this.googleMapsService.plotDirectionsForSelectedTask(null);
|
|
2022
2048
|
}
|
|
2023
2049
|
else {
|
|
@@ -2032,7 +2058,7 @@ class CustomerDetailsComponent {
|
|
|
2032
2058
|
}
|
|
2033
2059
|
}
|
|
2034
2060
|
/** @nocollapse */ CustomerDetailsComponent.ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "12.2.17", ngImport: i0, type: CustomerDetailsComponent, deps: [{ token: AgentService }, { token: GoogleMapsService }, { token: OpenStreetMapsService }, { token: i0.ChangeDetectorRef }], target: i0.ɵɵFactoryTarget.Component });
|
|
2035
|
-
/** @nocollapse */ CustomerDetailsComponent.ɵcmp = i0.ɵɵngDeclareComponent({ minVersion: "12.0.0", version: "12.2.17", type: CustomerDetailsComponent, selector: "customer-details", inputs: { customer: "customer", config: "config" }, outputs: { nextStep: "nextStep", removeTask: "removeTask", onClickPerformAction: "onClickPerformAction" }, usesOnChanges: true, ngImport: i0, template: "<div class=\"customer-details-wrapper\">\n <div>\n <kwikui-button\n icon=\"tuiIconChevronLeft\"\n label=\"Back\"\n shape=\"rounded\"\n size=\"s\"\n (onClick)=\"close()\"\n ></kwikui-button>\n </div>\n <div class=\"customer-details-heading\">{{ title }}</div>\n <div class=\"customer-details-body\">\n <div class=\"customer-details-user-id\">\n {{ taskId }}\n\n <status-pill\n *ngIf=\"config?.
|
|
2061
|
+
/** @nocollapse */ CustomerDetailsComponent.ɵcmp = i0.ɵɵngDeclareComponent({ minVersion: "12.0.0", version: "12.2.17", type: CustomerDetailsComponent, selector: "customer-details", inputs: { customer: "customer", config: "config" }, outputs: { nextStep: "nextStep", removeTask: "removeTask", onClickPerformAction: "onClickPerformAction" }, usesOnChanges: true, ngImport: i0, template: "<div class=\"customer-details-wrapper\">\n <div>\n <kwikui-button\n icon=\"tuiIconChevronLeft\"\n label=\"Back\"\n shape=\"rounded\"\n size=\"s\"\n (onClick)=\"close()\"\n ></kwikui-button>\n </div>\n <div class=\"customer-details-heading\">{{ title }}</div>\n <div class=\"customer-details-body\">\n <div class=\"customer-details-user-id\">\n {{ taskId }}\n\n <status-pill\n *ngIf=\"config?.utilityFlags?.isShowTaskStatus\"\n [config]=\"config?.taskUI?.details?.header?.taskStatus\"\n [status]=\"\n customer[\n config?.taskUI?.details?.header?.taskStatus?.path ??\n 'session_status'\n ]\n \"\n ></status-pill>\n </div>\n\n <div class=\"customer-details-table\">\n <kwikui-label-value-pair\n [config]=\"labelValuePairConfig\"\n [data]=\"labelValuePairData\"\n ></kwikui-label-value-pair>\n </div>\n\n <div\n class=\"customer-details-actions\"\n *ngIf=\"\n config?.taskUI?.details?.action &&\n config?.taskUI?.details?.action?.length > 0\n \"\n >\n <ng-container *ngFor=\"let action of config?.taskUI?.details?.action\">\n <kwikid-action-button\n [action]=\"action\"\n [config]=\"config\"\n [customer]=\"customer\"\n (onClickPerformAction)=\"handleOnClickPerformAction($event)\"\n ></kwikid-action-button>\n </ng-container>\n </div>\n </div>\n</div>\n", styles: [".customer-details-wrapper{display:flex;flex-direction:column;align-items:stretch;overflow:auto;grid-gap:.5rem;gap:.5rem;padding:1.5rem;height:100%;width:100%}.customer-details-wrapper .customer-details-heading{display:flex;flex-direction:row;justify-content:space-between;align-items:center;padding:1rem 0;font-size:1.5rem;font-weight:600}.customer-details-wrapper .customer-details-body{display:flex;flex-direction:column;font-size:1rem}.customer-details-wrapper .customer-details-body .customer-details-user-id{display:flex;flex-direction:row;grid-gap:.6rem;gap:.6rem;align-items:center;font-size:1.25rem;font-weight:500;padding:.5rem 0}.customer-details-wrapper .customer-details-body .customer-details-table{display:flex;grid-gap:.5rem;gap:.5rem;flex-direction:column}.customer-details-wrapper .customer-details-body .customer-details-table .customer-details-table-data .customer-details-table-detail-name{font-weight:500}.customer-details-wrapper .customer-details-body .customer-details-table .customer-details-table-data .customer-details-table-detail-value{word-wrap:break-word}.customer-details-wrapper .customer-details-body .customer-details-date{padding-top:1rem}.customer-details-wrapper .customer-details-body .customer-details-actions{padding:.5rem 0;display:flex;flex-wrap:wrap;align-items:center;flex-direction:row;justify-content:flex-start;grid-gap:.5rem;gap:.5rem}::-webkit-scrollbar{width:8px;height:8px}::-webkit-scrollbar-track{border-radius:10px}::-webkit-scrollbar-thumb{background:lightgray;border-radius:10px}::-webkit-scrollbar-thumb:hover{background:gray}\n"], components: [{ type: i1.KwikUIButtonComponent, selector: "kwikui-button", inputs: ["appearance", "class", "disabled", "icon", "iconRight", "id", "label", "shape", "showLoader", "size", "styles", "type", "pseudoHover"], outputs: ["onClick"] }, { type: StatusPillComponent, selector: "status-pill", inputs: ["config", "status"] }, { type: i1.KwikUILabelValuePairComponent, selector: "kwikui-label-value-pair", inputs: ["config", "data", "id"] }, { type: ActionButtonComponent, selector: "kwikid-action-button", inputs: ["action", "config", "customer"], outputs: ["onClickPerformAction"] }], directives: [{ type: i7.NgIf, selector: "[ngIf]", inputs: ["ngIf", "ngIfThen", "ngIfElse"] }, { type: i7.NgForOf, selector: "[ngFor][ngForOf]", inputs: ["ngForOf", "ngForTrackBy", "ngForTemplate"] }], changeDetection: i0.ChangeDetectionStrategy.Default });
|
|
2036
2062
|
i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "12.2.17", ngImport: i0, type: CustomerDetailsComponent, decorators: [{
|
|
2037
2063
|
type: Component,
|
|
2038
2064
|
args: [{
|
|
@@ -2053,6 +2079,7 @@ i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "12.2.17", ngImpo
|
|
|
2053
2079
|
type: Output
|
|
2054
2080
|
}] } });
|
|
2055
2081
|
|
|
2082
|
+
/* eslint-disable no-prototype-builtins */
|
|
2056
2083
|
class CustomerTileComponent {
|
|
2057
2084
|
constructor(googleMapsService, openStreetMapsService, agentService, hostElement) {
|
|
2058
2085
|
this.googleMapsService = googleMapsService;
|
|
@@ -2090,37 +2117,38 @@ class CustomerTileComponent {
|
|
|
2090
2117
|
this.parseData();
|
|
2091
2118
|
}
|
|
2092
2119
|
}
|
|
2120
|
+
getValueFromArray(paths) {
|
|
2121
|
+
let data = "";
|
|
2122
|
+
// eslint-disable-next-line array-callback-return
|
|
2123
|
+
paths.map((path) => {
|
|
2124
|
+
const value = getObjectValueFromPath(this.customer, path);
|
|
2125
|
+
data = `${data} ${value}`;
|
|
2126
|
+
});
|
|
2127
|
+
return data;
|
|
2128
|
+
}
|
|
2093
2129
|
parseData() {
|
|
2094
|
-
var _a, _b, _c, _d, _e, _f
|
|
2095
|
-
const identifier = (
|
|
2130
|
+
var _a, _b, _c, _d, _e, _f;
|
|
2131
|
+
const identifier = (_b = (_a = this.config) === null || _a === void 0 ? void 0 : _a.taskIdentifier) !== null && _b !== void 0 ? _b : "user_id";
|
|
2096
2132
|
this.taskId = getObjectValueFromPath(this.customer, identifier);
|
|
2097
2133
|
let detailsConfig = [];
|
|
2098
|
-
if (checkObjectPathExists(this.config, "
|
|
2099
|
-
isNotEmptyArray(this.config.
|
|
2100
|
-
detailsConfig = this.config.dashboard.viewTaskDetails;
|
|
2101
|
-
const data = [];
|
|
2102
|
-
detailsConfig.map((field) => {
|
|
2103
|
-
console.log("vvvvv", field);
|
|
2104
|
-
const value = getObjectValueFromPath(this.customer, field.value);
|
|
2105
|
-
data.push({ label: field.label, value });
|
|
2106
|
-
return true;
|
|
2107
|
-
});
|
|
2108
|
-
this.labelValuePairData = data;
|
|
2109
|
-
}
|
|
2110
|
-
else if (checkObjectPathExists(this.config, "dashboard.taskUI.details.data") &&
|
|
2111
|
-
isNotEmptyArray(this.config.dashboard.taskUI.details.data)) {
|
|
2112
|
-
detailsConfig = this.config.dashboard.taskUI.details.data;
|
|
2134
|
+
if (checkObjectPathExists(this.config, "taskUI.details.data") &&
|
|
2135
|
+
isNotEmptyArray(this.config.taskUI.details.data)) {
|
|
2113
2136
|
const data = [];
|
|
2137
|
+
detailsConfig = this.config.taskUI.details.data;
|
|
2114
2138
|
detailsConfig.map((field) => {
|
|
2115
|
-
|
|
2139
|
+
let value;
|
|
2140
|
+
if (Array.isArray(field.path)) {
|
|
2141
|
+
value = this.getValueFromArray(field.path);
|
|
2142
|
+
}
|
|
2143
|
+
else {
|
|
2144
|
+
value = getObjectValueFromPath(this.customer, field.path);
|
|
2145
|
+
}
|
|
2116
2146
|
data.push({ label: field.label, value });
|
|
2117
2147
|
return true;
|
|
2118
2148
|
});
|
|
2119
2149
|
this.labelValuePairData = data;
|
|
2120
2150
|
}
|
|
2121
|
-
|
|
2122
|
-
this.labelValuePairConfig =
|
|
2123
|
-
(_h = (_g = (_f = (_e = (_d = this.config) === null || _d === void 0 ? void 0 : _d.dashboard) === null || _e === void 0 ? void 0 : _e.taskUI) === null || _f === void 0 ? void 0 : _f.details) === null || _g === void 0 ? void 0 : _g.config) !== null && _h !== void 0 ? _h : {};
|
|
2151
|
+
this.labelValuePairConfig = (_f = (_e = (_d = (_c = this.config) === null || _c === void 0 ? void 0 : _c.taskUI) === null || _d === void 0 ? void 0 : _d.details) === null || _e === void 0 ? void 0 : _e.config) !== null && _f !== void 0 ? _f : {};
|
|
2124
2152
|
}
|
|
2125
2153
|
openDetails() {
|
|
2126
2154
|
var _a, _b, _c, _d;
|
|
@@ -2133,7 +2161,7 @@ class CustomerTileComponent {
|
|
|
2133
2161
|
this.agentService.currentTaskDetails = undefined;
|
|
2134
2162
|
}
|
|
2135
2163
|
if (this.agentService.showMapview) {
|
|
2136
|
-
if (((_d = (_c = this.agentService.config) === null || _c === void 0 ? void 0 : _c.
|
|
2164
|
+
if (((_d = (_c = this.agentService.config) === null || _c === void 0 ? void 0 : _c.maps) === null || _d === void 0 ? void 0 : _d.mapType) === "google-maps") {
|
|
2137
2165
|
this.googleMapsService.plotDirectionsForSelectedTask(this.agentService.currentTaskDetails);
|
|
2138
2166
|
}
|
|
2139
2167
|
else {
|
|
@@ -2155,7 +2183,7 @@ class CustomerTileComponent {
|
|
|
2155
2183
|
}
|
|
2156
2184
|
}
|
|
2157
2185
|
/** @nocollapse */ CustomerTileComponent.ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "12.2.17", ngImport: i0, type: CustomerTileComponent, deps: [{ token: GoogleMapsService }, { token: OpenStreetMapsService }, { token: AgentService }, { token: i0.ElementRef }], target: i0.ɵɵFactoryTarget.Component });
|
|
2158
|
-
/** @nocollapse */ CustomerTileComponent.ɵcmp = i0.ɵɵngDeclareComponent({ minVersion: "12.0.0", version: "12.2.17", type: CustomerTileComponent, selector: "customer-tile", inputs: { customer: "customer", index: "index", config: "config" }, outputs: { onClickPerformAction: "onClickPerformAction", nextStep: "nextStep", removeTask: "removeTask" }, host: { listeners: { "window:resize": "windowResizeWatcher($event)" } }, usesOnChanges: true, ngImport: i0, template: "<div\n [ngClass]=\"\n customer?.session_id == agentService.currentTaskDetails?.session_id\n ? 'customer-tile-wrapper customer-tile-active'\n : 'customer-tile-wrapper'\n \"\n>\n <div class=\"customer-tile-primary-container\">\n <div class=\"customer-tile-primary-container-data\">\n <div class=\"customer-tile-primary-container-userid\">\n {{ taskId }}\n </div>\n <status-pill\n *ngIf=\"config?.
|
|
2186
|
+
/** @nocollapse */ CustomerTileComponent.ɵcmp = i0.ɵɵngDeclareComponent({ minVersion: "12.0.0", version: "12.2.17", type: CustomerTileComponent, selector: "customer-tile", inputs: { customer: "customer", index: "index", config: "config" }, outputs: { onClickPerformAction: "onClickPerformAction", nextStep: "nextStep", removeTask: "removeTask" }, host: { listeners: { "window:resize": "windowResizeWatcher($event)" } }, usesOnChanges: true, ngImport: i0, template: "<div\n [ngClass]=\"\n customer?.session_id == agentService.currentTaskDetails?.session_id\n ? 'customer-tile-wrapper customer-tile-active'\n : 'customer-tile-wrapper'\n \"\n>\n <div class=\"customer-tile-primary-container\">\n <div class=\"customer-tile-primary-container-data\">\n <div class=\"customer-tile-primary-container-userid\">\n {{ taskId }}\n </div>\n <status-pill\n *ngIf=\"config?.utilityFlags?.isShowTaskStatus\"\n [config]=\"config?.taskUI?.header?.taskStatus\"\n [status]=\"\n customer[config?.taskUI?.header?.taskStatus?.path ?? 'session_status']\n \"\n ></status-pill>\n </div>\n <kwikui-button\n *ngIf=\"!agentService.isMobileView && !agentService.showMapview\"\n [icon]=\"\n agentService.currentTaskDetails?.session_id == customer?.session_id\n ? 'tuiIconChevronLeftLarge'\n : 'tuiIconChevronRightLarge'\n \"\n [shape]=\"'rounded'\"\n appearance=\"icon\"\n size=\"s\"\n (onClick)=\"openDetails()\"\n ></kwikui-button>\n <kwikui-button\n *ngIf=\"agentService.isMobileView || agentService.showMapview\"\n [icon]=\"\n agentService.currentTaskDetails?.session_id == customer?.session_id\n ? 'tuiIconChevronUpLarge'\n : 'tuiIconChevronDownLarge'\n \"\n [shape]=\"'rounded'\"\n appearance=\"icon\"\n size=\"s\"\n (onClick)=\"openDetails()\"\n ></kwikui-button>\n </div>\n <div\n *ngIf=\"\n customer?.session_id == agentService.currentTaskDetails?.session_id &&\n (agentService.isMobileView || agentService.showMapview)\n \"\n [ngClass]=\"\n customer?.session_id == agentService.currentTaskDetails?.session_id &&\n (agentService.isMobileView || agentService.showMapview)\n ? 'customer-tile-secondary-container'\n : 'data-collasped'\n \"\n >\n <div class=\"customer-tile-secondary-container-data\">\n <kwikui-label-value-pair\n [config]=\"labelValuePairConfig\"\n [data]=\"labelValuePairData\"\n ></kwikui-label-value-pair>\n <!-- <div\n *ngIf=\"\n agentService.config?.maps?.sho &&\n agentService.config?.isShowDistanceAndTime &&\n openStreetMapsService.getSelectedTaskDistanceAndTime()\n \"\n class=\"customer-tile-secondary-container-custom-details\"\n >\n Distance: {{ openStreetMapsService.getSelectedTaskDistanceAndTime()?.distance }} |\n Time: {{ openStreetMapsService.getSelectedTaskDistanceAndTime()?.time }}\n </div> -->\n </div>\n <div class=\"customer-tile-secondary-container-actions\">\n <ng-container *ngFor=\"let action of config?.taskUI?.details?.action\">\n <kwikid-action-button\n [action]=\"action\"\n [config]=\"config\"\n [customer]=\"customer\"\n (onClickPerformAction)=\"handleOnClickPerformAction($event)\"\n ></kwikid-action-button>\n </ng-container>\n <!-- <div class=\"customer-tile-secondary-container-task-buttons\">\n <kwikui-button\n *ngIf=\"config?.isAllowRemoveTask\"\n [icon]=\"'tuiIconTrash2'\"\n [shape]=\"'rounded'\"\n appearance=\"icon\"\n size=\"s\"\n (onClick)=\"handleOnClickRemoveTask(customer)\"\n ></kwikui-button>\n <kwikui-button\n *ngIf=\"config?.isShowCopyLink\"\n icon=\"tuiIconCopy\"\n [shape]=\"'rounded'\"\n appearance=\"icon\"\n size=\"s\"\n (onClick)=\"\n handleOnClickNext({\n customer: customer,\n stepType: 'SHARE_JOURNEY_LINK'\n })\n \"\n ></kwikui-button>\n </div>\n <div class=\"customer-tile-secondary-container-journey-buttons\">\n <kwikui-button\n *ngIf=\"config?.isShowMaps && customer?.isValidLocation\"\n label=\"Show Directions\"\n appearance=\"flat\"\n size=\"s\"\n styles=\"font-size:0.7rem;\"\n (onClick)=\"goToMaps(customer.googleMapsUrl)\"\n ></kwikui-button>\n <kwikui-button\n *ngIf=\"\n config?.isAllowStartJourney &&\n agentService.canStartJourney(customer.session_status)\n \"\n label=\"Start Journey\"\n appearance=\"primary\"\n size=\"s\"\n styles=\"font-size:0.7rem;\"\n (onClick)=\"\n handleOnClickNext({ customer: customer, stepType: 'START_JOURNEY' })\n \"\n ></kwikui-button>\n </div> -->\n </div>\n </div>\n</div>\n", styles: [".customer-tile-wrapper{display:flex;flex-direction:column;align-content:center;justify-content:center;align-items:stretch;flex:1;overflow:auto;grid-gap:.5rem;gap:.5rem;margin:1rem;padding:1rem .25rem 1rem 1rem;border-radius:1rem;border:.5px solid #ddd}.customer-tile-wrapper .customer-tile-primary-container{display:flex;grid-gap:.5rem;gap:.5rem;flex-direction:row;align-content:center;justify-content:space-between;align-items:center;width:100%;height:100%}.customer-tile-wrapper .customer-tile-primary-container .customer-tile-primary-container-data{padding-left:.2rem;grid-gap:.6rem;gap:.6rem;display:flex;flex-direction:column;flex-wrap:wrap;align-content:stretch;justify-content:flex-start;align-items:flex-start}.customer-tile-wrapper .customer-tile-primary-container .customer-tile-primary-container-data .customer-tile-primary-container-userid{font-weight:500;font-size:1.1rem;line-height:1rem}.customer-tile-wrapper .customer-tile-secondary-container{width:100%;height:100%;display:flex;flex-direction:column;overflow:auto;grid-gap:.5rem;gap:.5rem}.customer-tile-wrapper .customer-tile-secondary-container .customer-tile-secondary-container-data{padding:.4rem .2rem;display:flex;flex-direction:column;font-size:.7rem;grid-gap:.3rem;gap:.3rem}.customer-tile-wrapper .customer-tile-secondary-container .customer-tile-secondary-container-data .customer-tile-secondary-container-custom-details{width:100%;height:100%;line-height:.9rem;word-wrap:break-word}.customer-tile-wrapper .customer-tile-secondary-container .customer-tile-secondary-container-actions{padding:.5rem 0;display:flex;flex-wrap:wrap;align-items:center;flex-direction:row;justify-content:flex-start;grid-gap:.5rem;gap:.5rem}.customer-tile-wrapper .data-collasped{display:none}.customer-tile-active{background-color:#dcedfd}\n"], components: [{ type: StatusPillComponent, selector: "status-pill", inputs: ["config", "status"] }, { type: i1.KwikUIButtonComponent, selector: "kwikui-button", inputs: ["appearance", "class", "disabled", "icon", "iconRight", "id", "label", "shape", "showLoader", "size", "styles", "type", "pseudoHover"], outputs: ["onClick"] }, { type: i1.KwikUILabelValuePairComponent, selector: "kwikui-label-value-pair", inputs: ["config", "data", "id"] }, { type: ActionButtonComponent, selector: "kwikid-action-button", inputs: ["action", "config", "customer"], outputs: ["onClickPerformAction"] }], directives: [{ type: i7.NgClass, selector: "[ngClass]", inputs: ["class", "ngClass"] }, { type: i7.NgIf, selector: "[ngIf]", inputs: ["ngIf", "ngIfThen", "ngIfElse"] }, { type: i7.NgForOf, selector: "[ngFor][ngForOf]", inputs: ["ngForOf", "ngForTrackBy", "ngForTemplate"] }] });
|
|
2159
2187
|
i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "12.2.17", ngImport: i0, type: CustomerTileComponent, decorators: [{
|
|
2160
2188
|
type: Component,
|
|
2161
2189
|
args: [{
|
|
@@ -2275,14 +2303,14 @@ class CustomerListComponent {
|
|
|
2275
2303
|
}
|
|
2276
2304
|
}
|
|
2277
2305
|
handleInitialDateRange() {
|
|
2278
|
-
var _a, _b, _c, _d, _e;
|
|
2279
|
-
const
|
|
2306
|
+
var _a, _b, _c, _d, _e, _f;
|
|
2307
|
+
const searchFilterStartPoint = (_c = (_b = (_a = this.config) === null || _a === void 0 ? void 0 : _a.extendedFlags) === null || _b === void 0 ? void 0 : _b.searchFilterStartPoint) !== null && _c !== void 0 ? _c : {
|
|
2280
2308
|
day: 0,
|
|
2281
2309
|
month: 0,
|
|
2282
2310
|
year: 0
|
|
2283
2311
|
};
|
|
2284
2312
|
const currentDate = new Date();
|
|
2285
|
-
const startDate = new Date((
|
|
2313
|
+
const startDate = new Date((_d = currentDate.getFullYear() - (searchFilterStartPoint === null || searchFilterStartPoint === void 0 ? void 0 : searchFilterStartPoint.year)) !== null && _d !== void 0 ? _d : 0, (_e = currentDate.getMonth() - (searchFilterStartPoint === null || searchFilterStartPoint === void 0 ? void 0 : searchFilterStartPoint.month)) !== null && _e !== void 0 ? _e : 0, (_f = currentDate.getDate() - (searchFilterStartPoint === null || searchFilterStartPoint === void 0 ? void 0 : searchFilterStartPoint.day)) !== null && _f !== void 0 ? _f : 0);
|
|
2286
2314
|
this.fromDate = convertNormalDateToStringFormat(startDate);
|
|
2287
2315
|
this.toDate = convertNormalDateToStringFormat(null);
|
|
2288
2316
|
this.searchDateFormControl = new FormControl({
|
|
@@ -2301,10 +2329,10 @@ class CustomerListComponent {
|
|
|
2301
2329
|
(_c = (_b = (_a = this.config) === null || _a === void 0 ? void 0 : _a.extendedFlags) === null || _b === void 0 ? void 0 : _b.sortFilterKeys) !== null && _c !== void 0 ? _c : this.sortFilterOptions;
|
|
2302
2330
|
}
|
|
2303
2331
|
setUpMaps() {
|
|
2304
|
-
var _a, _b;
|
|
2332
|
+
var _a, _b, _c, _d;
|
|
2305
2333
|
return __awaiter(this, void 0, void 0, function* () {
|
|
2306
|
-
if ((_a = this.config
|
|
2307
|
-
if (((
|
|
2334
|
+
if ((_b = (_a = this.config) === null || _a === void 0 ? void 0 : _a.maps) === null || _b === void 0 ? void 0 : _b.isShowMaps) {
|
|
2335
|
+
if (((_d = (_c = this.config) === null || _c === void 0 ? void 0 : _c.maps) === null || _d === void 0 ? void 0 : _d.mapType) === "open-street") {
|
|
2308
2336
|
yield this.openStreetMapsService.initializeMap();
|
|
2309
2337
|
}
|
|
2310
2338
|
else {
|
|
@@ -2314,9 +2342,9 @@ class CustomerListComponent {
|
|
|
2314
2342
|
});
|
|
2315
2343
|
}
|
|
2316
2344
|
setCustomersList() {
|
|
2317
|
-
var _a;
|
|
2345
|
+
var _a, _b;
|
|
2318
2346
|
return __awaiter(this, void 0, void 0, function* () {
|
|
2319
|
-
if ((_a = this.config
|
|
2347
|
+
if ((_b = (_a = this.config) === null || _a === void 0 ? void 0 : _a.maps) === null || _b === void 0 ? void 0 : _b.isShowMaps) {
|
|
2320
2348
|
this.filteredData = yield this.plotMarkers(this.customers);
|
|
2321
2349
|
}
|
|
2322
2350
|
else {
|
|
@@ -2325,8 +2353,9 @@ class CustomerListComponent {
|
|
|
2325
2353
|
});
|
|
2326
2354
|
}
|
|
2327
2355
|
ngAfterViewInit() {
|
|
2328
|
-
var _a, _b;
|
|
2329
|
-
this.maxLength =
|
|
2356
|
+
var _a, _b, _c;
|
|
2357
|
+
this.maxLength =
|
|
2358
|
+
(_c = (_b = (_a = this.config) === null || _a === void 0 ? void 0 : _a.extendedFlags) === null || _b === void 0 ? void 0 : _b.searchFilterThreshold) !== null && _c !== void 0 ? _c : this.maxLength;
|
|
2330
2359
|
setTimeout(() => __awaiter(this, void 0, void 0, function* () {
|
|
2331
2360
|
yield this.setUpMaps();
|
|
2332
2361
|
yield this.setCustomersList();
|
|
@@ -2341,14 +2370,14 @@ class CustomerListComponent {
|
|
|
2341
2370
|
this.nextStep.emit(e);
|
|
2342
2371
|
}
|
|
2343
2372
|
plotMarkers(customers) {
|
|
2344
|
-
var _a, _b;
|
|
2373
|
+
var _a, _b, _c, _d;
|
|
2345
2374
|
return __awaiter(this, void 0, void 0, function* () {
|
|
2346
|
-
if (!((_a = this.config
|
|
2375
|
+
if (!((_b = (_a = this.config) === null || _a === void 0 ? void 0 : _a.utilityFlags) === null || _b === void 0 ? void 0 : _b.isPlotCompletedTaskMarkers)) {
|
|
2347
2376
|
customers = customers.filter((customer) => {
|
|
2348
2377
|
return this.agentService.canPlotMarkers(customer.session_status);
|
|
2349
2378
|
});
|
|
2350
2379
|
}
|
|
2351
|
-
if (((
|
|
2380
|
+
if (((_d = (_c = this.config) === null || _c === void 0 ? void 0 : _c.maps) === null || _d === void 0 ? void 0 : _d.mapType) === "open-street") {
|
|
2352
2381
|
customers =
|
|
2353
2382
|
yield this.openStreetMapsService.plotDirectionsForAllTasks(customers);
|
|
2354
2383
|
}
|
|
@@ -2401,7 +2430,7 @@ class CustomerListComponent {
|
|
|
2401
2430
|
}
|
|
2402
2431
|
}
|
|
2403
2432
|
/** @nocollapse */ CustomerListComponent.ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "12.2.17", ngImport: i0, type: CustomerListComponent, deps: [{ token: GoogleMapsService }, { token: OpenStreetMapsService }, { token: AgentService }], target: i0.ɵɵFactoryTarget.Component });
|
|
2404
|
-
/** @nocollapse */ CustomerListComponent.ɵcmp = i0.ɵɵngDeclareComponent({ minVersion: "12.0.0", version: "12.2.17", type: CustomerListComponent, selector: "customer-list", inputs: { customers: "customers", config: "config" }, outputs: { nextStep: "nextStep", removeTask: "removeTask", filterTaskList: "filterTaskList", onClickPerformAction: "onClickPerformAction" }, usesOnChanges: true, ngImport: i0, template: "<div class=\"customer-list-wrapper\">\n <div\n class=\"customer-list-filter\"\n [formGroup]=\"formGroup\"\n >\n <div class=\"task-list-search-icons\">\n <kwikui-button\n appearance=\"mono\"\n icon=\"tuiIconSearchLarge\"\n size=\"s\"\n type=\"button\"\n (onClick)=\"handleOnClickSearchType('search-text')\"\n ></kwikui-button>\n <kwikui-button\n appearance=\"mono\"\n icon=\"tuiIconCalendarLarge\"\n size=\"s\"\n type=\"button\"\n (onClick)=\"handleOnClickSearchType('search-date')\"\n ></kwikui-button>\n <kwikui-button\n appearance=\"mono\"\n icon=\"tuiIconFilterLarge\"\n size=\"s\"\n type=\"button\"\n (onClick)=\"handleOnClickSearchType('sort-filter')\"\n ></kwikui-button>\n </div>\n\n <div\n class=\"task-list-search-action\"\n *ngIf=\"activeSearchAction\"\n >\n <kwikui-input-date-range\n *ngIf=\"activeSearchAction == 'search-date'\"\n class=\"task-list-date-box\"\n label=\"Search by Date Range\"\n id=\"dateRange\"\n size=\"m\"\n [max]=\"max\"\n [maxLength]=\"maxLength\"\n formControlName=\"search-date\"\n [formControl]=\"searchDateFormControl\"\n (getKeyValue)=\"handleOnChangeDateRange($event)\"\n ></kwikui-input-date-range>\n\n <kwikui-input\n *ngIf=\"activeSearchAction == 'search-text'\"\n label=\"Search\"\n id=\"search\"\n icon=\"tuiIconSearch\"\n placeholder=\"Search any task from here\"\n size=\"m\"\n [formControl]=\"searchTextFormControl\"\n formControlName=\"search-text\"\n (getKeyValue)=\"handleOnChangeSearchText($event)\"\n ></kwikui-input>\n\n <div\n *ngIf=\"activeSearchAction == 'sort-filter'\"\n class=\"task-list-sort-action\"\n >\n <kwikui-button\n appearance=\"outline\"\n [icon]=\"\n sortInAscendingOrder\n ? 'tuiIconChevronsUpLarge'\n : 'tuiIconChevronsDownLarge'\n \"\n size=\"m\"\n type=\"button\"\n (onClick)=\"handleOnClickChangeSortOrder()\"\n ></kwikui-button>\n <kwikui-input-select\n class=\"task-list-sort-key\"\n formControlName=\"sort-filter\"\n label=\"Sort By Key\"\n size=\"m\"\n [formControl]=\"sortFilterKeyFormControl\"\n [options]=\"sortFilterOptions\"\n [searchable]=\"false\"\n (getKeyValue)=\"handleOnChangeSortFilter($event)\"\n ></kwikui-input-select>\n </div>\n </div>\n </div>\n\n <div class=\"customer-task-list\">\n <cdk-virtual-scroll-viewport\n itemSize=\"1\"\n class=\"customer-task-list-scroll\"\n >\n <div\n *cdkVirtualFor=\"\n let customer of filteredData | filter: searchText;\n index as index\n \"\n >\n <customer-tile\n class=\"example-item\"\n [customer]=\"customer\"\n [config]=\"config\"\n [index]=\"index\"\n (nextStep)=\"handleOnClickNext($event)\"\n (removeTask)=\"handleOnClickRemoveTask($event)\"\n (onClickPerformAction)=\"handleOnClickPerformAction($event)\"\n ></customer-tile>\n </div>\n </cdk-virtual-scroll-viewport>\n </div>\n\n <div\n class=\"customer-list-empty\"\n *ngIf=\"filteredData.length === 0\"\n >\n
|
|
2433
|
+
/** @nocollapse */ CustomerListComponent.ɵcmp = i0.ɵɵngDeclareComponent({ minVersion: "12.0.0", version: "12.2.17", type: CustomerListComponent, selector: "customer-list", inputs: { customers: "customers", config: "config" }, outputs: { nextStep: "nextStep", removeTask: "removeTask", filterTaskList: "filterTaskList", onClickPerformAction: "onClickPerformAction" }, usesOnChanges: true, ngImport: i0, template: "<div class=\"customer-list-wrapper\">\n <div\n class=\"customer-list-filter\"\n [formGroup]=\"formGroup\"\n >\n <div class=\"task-list-search-icons\">\n <kwikui-button\n appearance=\"mono\"\n icon=\"tuiIconSearchLarge\"\n size=\"s\"\n type=\"button\"\n (onClick)=\"handleOnClickSearchType('search-text')\"\n ></kwikui-button>\n <kwikui-button\n appearance=\"mono\"\n icon=\"tuiIconCalendarLarge\"\n size=\"s\"\n type=\"button\"\n (onClick)=\"handleOnClickSearchType('search-date')\"\n ></kwikui-button>\n <kwikui-button\n appearance=\"mono\"\n icon=\"tuiIconFilterLarge\"\n size=\"s\"\n type=\"button\"\n (onClick)=\"handleOnClickSearchType('sort-filter')\"\n ></kwikui-button>\n </div>\n\n <div\n class=\"task-list-search-action\"\n *ngIf=\"activeSearchAction\"\n >\n <kwikui-input-date-range\n *ngIf=\"activeSearchAction == 'search-date'\"\n class=\"task-list-date-box\"\n label=\"Search by Date Range\"\n id=\"dateRange\"\n size=\"m\"\n [max]=\"max\"\n [maxLength]=\"maxLength\"\n formControlName=\"search-date\"\n [formControl]=\"searchDateFormControl\"\n (getKeyValue)=\"handleOnChangeDateRange($event)\"\n ></kwikui-input-date-range>\n\n <kwikui-input\n *ngIf=\"activeSearchAction == 'search-text'\"\n label=\"Search\"\n id=\"search\"\n icon=\"tuiIconSearch\"\n placeholder=\"Search any task from here\"\n size=\"m\"\n [formControl]=\"searchTextFormControl\"\n formControlName=\"search-text\"\n (getKeyValue)=\"handleOnChangeSearchText($event)\"\n ></kwikui-input>\n\n <div\n *ngIf=\"activeSearchAction == 'sort-filter'\"\n class=\"task-list-sort-action\"\n >\n <kwikui-button\n appearance=\"outline\"\n [icon]=\"\n sortInAscendingOrder\n ? 'tuiIconChevronsUpLarge'\n : 'tuiIconChevronsDownLarge'\n \"\n size=\"m\"\n type=\"button\"\n (onClick)=\"handleOnClickChangeSortOrder()\"\n ></kwikui-button>\n <kwikui-input-select\n class=\"task-list-sort-key\"\n formControlName=\"sort-filter\"\n label=\"Sort By Key\"\n size=\"m\"\n [formControl]=\"sortFilterKeyFormControl\"\n [options]=\"sortFilterOptions\"\n [searchable]=\"false\"\n (getKeyValue)=\"handleOnChangeSortFilter($event)\"\n ></kwikui-input-select>\n </div>\n </div>\n </div>\n\n <div class=\"customer-task-list\">\n <cdk-virtual-scroll-viewport\n itemSize=\"1\"\n class=\"customer-task-list-scroll\"\n >\n <div\n *cdkVirtualFor=\"\n let customer of filteredData | filter: searchText;\n index as index\n \"\n >\n <customer-tile\n class=\"example-item\"\n [customer]=\"customer\"\n [config]=\"config\"\n [index]=\"index\"\n (nextStep)=\"handleOnClickNext($event)\"\n (removeTask)=\"handleOnClickRemoveTask($event)\"\n (onClickPerformAction)=\"handleOnClickPerformAction($event)\"\n ></customer-tile>\n </div>\n </cdk-virtual-scroll-viewport>\n </div>\n\n <div\n class=\"customer-list-empty\"\n *ngIf=\"filteredData.length === 0\"\n >\n No Tasks for the given Date.\n </div>\n</div>\n", styles: [".customer-list-wrapper{width:100%;height:100%;display:flex;flex-direction:column}.customer-list-filter{height:-moz-fit-content;height:fit-content;width:100%;display:flex;flex-direction:column;padding:1rem;grid-gap:.8rem;gap:.8rem;border-bottom:.5px solid #ddd}.customer-list-filter .task-list-search-icons{display:flex;justify-content:flex-end;align-items:center;flex-direction:row;grid-gap:.5rem;gap:.5rem}.customer-list-filter .task-list-search-action{margin-top:.5rem}.customer-list-filter .task-list-search-action .task-list-sort-action{display:flex;flex-direction:row;grid-gap:.5rem;gap:.5rem}.customer-list-filter .task-list-search-action .task-list-sort-action .task-list-sort-key{flex:1}.customer-list-empty{height:100%;width:100%;margin-top:.5rem;font-size:1rem;text-align:center}.customer-task-list{height:100%}.customer-task-list-scroll{height:100%;width:100%}.cdk-virtual-scroll-spacer{height:0!important}.example-item{height:50px}::-webkit-scrollbar{width:8px}::-webkit-scrollbar-track{border-radius:10px}::-webkit-scrollbar-thumb{background:lightgray;border-radius:10px}::-webkit-scrollbar-thumb:hover{background:gray}\n"], components: [{ type: i1.KwikUIButtonComponent, selector: "kwikui-button", inputs: ["appearance", "class", "disabled", "icon", "iconRight", "id", "label", "shape", "showLoader", "size", "styles", "type", "pseudoHover"], outputs: ["onClick"] }, { type: i1.KwikUIInputDateRangeComponent, selector: "kwikui-input-date-range", inputs: ["disabled", "focus", "formControl", "formControlName", "hintContent", "icon", "id", "invalid", "label", "max", "maxLength", "min", "minLength", "placeholder", "postfix", "prefix", "properties", "size", "validators"], outputs: ["getKeyValue"] }, { type: i1.KwikUIInputComponent, selector: "kwikui-input", inputs: ["case", "disabled", "focus", "formControl", "formControlName", "hintContent", "icon", "id", "invalid", "label", "placeholder", "postfix", "prefix", "properties", "size", "type", "validators"], outputs: ["getKeyValue"] }, { type: i1.KwikUIInputSelectComponent, selector: "kwikui-input-select", inputs: ["disabled", "focus", "formControl", "formControlName", "hintContent", "icon", "id", "invalid", "label", "options", "placeholder", "properties", "searchable", "size", "validators"], outputs: ["getKeyValue"] }, { type: i5.CdkVirtualScrollViewport, selector: "cdk-virtual-scroll-viewport", inputs: ["orientation", "appendOnly"], outputs: ["scrolledIndexChange"] }, { type: CustomerTileComponent, selector: "customer-tile", inputs: ["customer", "index", "config"], outputs: ["onClickPerformAction", "nextStep", "removeTask"] }], directives: [{ type: i2$1.NgControlStatusGroup, selector: "[formGroupName],[formArrayName],[ngModelGroup],[formGroup],form:not([ngNoForm]),[ngForm]" }, { type: i2$1.FormGroupDirective, selector: "[formGroup]", inputs: ["formGroup"], outputs: ["ngSubmit"], exportAs: ["ngForm"] }, { type: i7.NgIf, selector: "[ngIf]", inputs: ["ngIf", "ngIfThen", "ngIfElse"] }, { type: i2$1.NgControlStatus, selector: "[formControlName],[ngModel],[formControl]" }, { type: i2$1.FormControlName, selector: "[formControlName]", inputs: ["disabled", "formControlName", "ngModel"], outputs: ["ngModelChange"] }, { type: i2$1.FormControlDirective, selector: "[formControl]", inputs: ["disabled", "formControl", "ngModel"], outputs: ["ngModelChange"], exportAs: ["ngForm"] }, { type: i5.CdkFixedSizeVirtualScroll, selector: "cdk-virtual-scroll-viewport[itemSize]", inputs: ["itemSize", "minBufferPx", "maxBufferPx"] }, { type: i5.CdkVirtualForOf, selector: "[cdkVirtualFor][cdkVirtualForOf]", inputs: ["cdkVirtualForOf", "cdkVirtualForTrackBy", "cdkVirtualForTemplate", "cdkVirtualForTemplateCacheSize"] }], pipes: { "filter": Ng2SearchPipe$1 } });
|
|
2405
2434
|
i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "12.2.17", ngImport: i0, type: CustomerListComponent, decorators: [{
|
|
2406
2435
|
type: Component,
|
|
2407
2436
|
args: [{
|
|
@@ -2430,7 +2459,9 @@ class KwikIDAgentDashboardComponentV1 {
|
|
|
2430
2459
|
this.httpClient = httpClient;
|
|
2431
2460
|
this.hostElement = hostElement;
|
|
2432
2461
|
this.dialogService = dialogService;
|
|
2462
|
+
this.agentInfo = {};
|
|
2433
2463
|
this.config = {};
|
|
2464
|
+
this.userConfig = {};
|
|
2434
2465
|
this.taskList = [];
|
|
2435
2466
|
this.nextStep = new EventEmitter();
|
|
2436
2467
|
this.addTask = new EventEmitter();
|
|
@@ -2438,7 +2469,6 @@ class KwikIDAgentDashboardComponentV1 {
|
|
|
2438
2469
|
this.filterTaskList = new EventEmitter();
|
|
2439
2470
|
this.onClickPerformAction = new EventEmitter();
|
|
2440
2471
|
this.loading = true;
|
|
2441
|
-
this.console = console;
|
|
2442
2472
|
this.open = false;
|
|
2443
2473
|
this.allFormsData = {};
|
|
2444
2474
|
this.String = String;
|
|
@@ -2454,15 +2484,13 @@ class KwikIDAgentDashboardComponentV1 {
|
|
|
2454
2484
|
}
|
|
2455
2485
|
}
|
|
2456
2486
|
ngOnInit() {
|
|
2457
|
-
var _a, _b, _c, _d, _e, _f, _g, _h, _j
|
|
2487
|
+
var _a, _b, _c, _d, _e, _f, _g, _h, _j;
|
|
2458
2488
|
return __awaiter(this, void 0, void 0, function* () {
|
|
2459
2489
|
this.agentService.config = this.config;
|
|
2460
|
-
this.agentService.showMapview = (_c = (_b = (_a = this.config) === null || _a === void 0 ? void 0 : _a.
|
|
2461
|
-
this.
|
|
2462
|
-
(
|
|
2463
|
-
|
|
2464
|
-
isNotEmptyValue((_k = (_j = this.config) === null || _j === void 0 ? void 0 : _j.dashboard) === null || _k === void 0 ? void 0 : _k.googleMapsAPIKey)) {
|
|
2465
|
-
this.loadMaps((_m = (_l = this.config) === null || _l === void 0 ? void 0 : _l.dashboard) === null || _m === void 0 ? void 0 : _m.googleMapsAPIKey).subscribe((loaded) => {
|
|
2490
|
+
this.agentService.showMapview = (_c = (_b = (_a = this.config) === null || _a === void 0 ? void 0 : _a.maps) === null || _b === void 0 ? void 0 : _b.isShowMaps) !== null && _c !== void 0 ? _c : false;
|
|
2491
|
+
if (((_e = (_d = this.config) === null || _d === void 0 ? void 0 : _d.maps) === null || _e === void 0 ? void 0 : _e.mapType) === "google-maps" &&
|
|
2492
|
+
isNotEmptyValue((_g = (_f = this.config) === null || _f === void 0 ? void 0 : _f.maps) === null || _g === void 0 ? void 0 : _g.apiKey)) {
|
|
2493
|
+
this.loadMaps((_j = (_h = this.config) === null || _h === void 0 ? void 0 : _h.maps) === null || _j === void 0 ? void 0 : _j.apiKey).subscribe((loaded) => {
|
|
2466
2494
|
this.mapsLoaded = loaded;
|
|
2467
2495
|
if (loaded) {
|
|
2468
2496
|
console.log("Google Maps JavaScript API loaded successfully.");
|
|
@@ -2545,7 +2573,7 @@ class KwikIDAgentDashboardComponentV1 {
|
|
|
2545
2573
|
}
|
|
2546
2574
|
}
|
|
2547
2575
|
/** @nocollapse */ KwikIDAgentDashboardComponentV1.ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "12.2.17", ngImport: i0, type: KwikIDAgentDashboardComponentV1, deps: [{ token: GoogleMapsService }, { token: AgentService }, { token: i3$2.HttpClient }, { token: i0.ElementRef }, { token: TuiDialogService }], target: i0.ɵɵFactoryTarget.Component });
|
|
2548
|
-
/** @nocollapse */ KwikIDAgentDashboardComponentV1.ɵcmp = i0.ɵɵngDeclareComponent({ minVersion: "12.0.0", version: "12.2.17", type: KwikIDAgentDashboardComponentV1, selector: "kwikid-agent-dashboard-v1", inputs: { config: "config", taskList: "taskList" }, outputs: { nextStep: "nextStep", addTask: "addTask", removeTask: "removeTask", filterTaskList: "filterTaskList", onClickPerformAction: "onClickPerformAction" }, host: { listeners: { "window:resize": "windowResizeWatcher($event)" } }, viewQueries: [{ propertyName: "infoWindow", first: true, predicate: MapInfoWindow, descendants: true }, { propertyName: "mapElement", first: true, predicate: ["map"], descendants: true, static: true }], ngImport: i0, template: "<div\n class=\"kwikid-agent-dashboard\"\n *ngIf=\"!loading\"\n>\n <div class=\"wrapper\">\n <header>\n <span (tuiActiveZoneChange)=\"onActiveZone($event)\">\n <kwikui-button\n [icon]=\"'tuiIconMenuLarge'\"\n (onClick)=\"onClick()\"\n appearance=\"mono\"\n size=\"m\"\n [tuiDropdown]=\"dropdownContent\"\n [tuiDropdownManual]=\"open\"\n (tuiObscured)=\"onObscured($event)\"\n ></kwikui-button>\n <ng-template #dropdownContent>\n <div class=\"menu-dropdown\">\n <div class=\"menu-dropdown-header\">\n <!-- <img\n *ngIf=\"\n agentService.config?.clientLogo &&\n agentService.config?.dashboard?.isShowClientLogo\n \"\n [src]=\"agentService.config.clientLogo\"\n class=\"client-logo\"\n />\n <div\n *ngIf=\"\n !agentService.config.clientLogo ||\n !agentService.config?.dashboard?.isShowClientLogo\n \"\n class=\"client-name\"\n >\n <kwikui-button\n [icon]=\"'tuiIconLink'\"\n appearance=\"mono\"\n size=\"m\"\n ></kwikui-button>\n\n {{ agentService.config.clientName }}\n </div> -->\n <div class=\"menu-dropdown-header-agent-name\">\n {{ agentService.config.agentName }}\n </div>\n <div class=\"menu-dropdown-header-agent-id\">\n Agent ID: {{ agentService.config.agentId }}\n </div>\n </div>\n <hr />\n <div\n class=\"menu-dropdown-body\"\n tuiGroup\n [collapsed]=\"true\"\n [rounded]=\"false\"\n [orientation]=\"'vertical'\"\n [size]=\"'m'\"\n >\n <kwikui-button\n *ngIf=\"agentService.config?.dashboard?.isAllowAddTask\"\n appearance=\"mono\"\n class=\"menu-dropdown-buttons\"\n label=\"Refresh\"\n [icon]=\"'tuiIconRefreshCw'\"\n size=\"m\"\n type=\"button\"\n (onClick)=\"refresh()\"\n ></kwikui-button>\n <kwikui-button\n *ngIf=\"this.config.dashboard.isShowMaps\"\n appearance=\"mono\"\n class=\"menu-dropdown-buttons\"\n label=\"{{\n agentService.showMapview ? 'Hide Maps' : 'Show Maps'\n }}\"\n type=\"button\"\n icon=\"{{\n agentService.showMapview ? 'tuiIconEyeOff' : 'tuiIconEye'\n }}\"\n iconRight=\"\"\n [shape]=\"null\"\n size=\"m\"\n styles=\"padding: 0rem !important\"\n (onClick)=\"agentService.toggleMapview()\"\n ></kwikui-button>\n </div>\n <hr />\n <div class=\"menu-dropdown-footer\">\n <kwikui-button\n appearance=\"mono\"\n class=\"menu-dropdown-buttons\"\n label=\"Logout\"\n icon=\"tuiIconLogOut\"\n size=\"m\"\n type=\"button\"\n (onClick)=\"handleOnClickLogout()\"\n ></kwikui-button>\n </div>\n </div>\n </ng-template>\n </span>\n <div class=\"actions\">\n <kwikui-button\n *ngIf=\"agentService.config?.dashboard?.isAllowAddTask\"\n class=\"menu-dropdown-buttons\"\n type=\"button\"\n appearance=\"primary\"\n [label]=\"\n agentService.config?.dashboard?.addTaskButtonLabel ?? 'Add User'\n \"\n icon=\"tuiIconPlus\"\n shape=\"rounded\"\n size=\"s\"\n (onClick)=\"showDialog(template)\"\n ></kwikui-button>\n </div>\n </header>\n\n <div class=\"dashboard-body\">\n <div\n *ngIf=\"mapsLoaded\"\n [class]=\"agentService.showMapview ? 'map' : 'map-hidden'\"\n >\n <google-map\n *ngIf=\"agentService.config?.dashboard?.mapType == 'google-maps'\"\n [options]=\"this.googleMapsService.map\"\n height=\"100%\"\n width=\"100%\"\n >\n <map-marker\n #marker=\"mapMarker\"\n *ngFor=\"\n let markerPosition of this.googleMapsService.allMarkers;\n let index = index\n \"\n [position]=\"markerPosition\"\n [label]=\"{ text: String(index) }\"\n ></map-marker>\n <map-directions-renderer\n *ngIf=\"\n this.googleMapsService.directionsResults$\n | async as directionsResults\n \"\n [directions]=\"directionsResults\"\n [options]=\"this.googleMapsService.directionsRenderOption\"\n ></map-directions-renderer>\n </google-map>\n\n <div\n *ngIf=\"agentService.config?.dashboard?.mapType == 'open-street'\"\n id=\"map\"\n style=\"height: 100%\"\n ></div>\n </div>\n\n <div\n class=\"task-details\"\n *ngIf=\"\n !agentService.isMobileView &&\n agentService.currentTaskDetails != undefined &&\n !agentService.showMapview\n \"\n >\n <customer-details\n [customer]=\"agentService.currentTaskDetails\"\n [config]=\"config\"\n (nextStep)=\"handleOnClickNext($event)\"\n (removeTask)=\"handleOnClickRemoveTask($event)\"\n (onClickPerformAction)=\"handleOnClickPerformAction($event)\"\n ></customer-details>\n </div>\n\n <div\n class=\"no-task-details\"\n *ngIf=\"\n !agentService.isMobileView &&\n agentService.currentTaskDetails == undefined &&\n !agentService.showMapview\n \"\n >\n <img\n src=\"assets/No-Results.jpg\"\n class=\"no-task-img\"\n alt=\"No Task\"\n />\n <div class=\"\">Select a Task to view it's details.</div>\n </div>\n\n <div class=\"customer-list\">\n <customer-list\n [customers]=\"taskList\"\n [config]=\"config\"\n (nextStep)=\"handleOnClickNext($event)\"\n (removeTask)=\"handleOnClickRemoveTask($event)\"\n (filterTaskList)=\"handleOnFilterTaskList($event)\"\n (onClickPerformAction)=\"handleOnClickPerformAction($event)\"\n ></customer-list>\n </div>\n </div>\n </div>\n</div>\n\n<div\n class=\"kwikid-agent-dashboard-loader\"\n *ngIf=\"loading\"\n>\n <span class=\"loader\"></span>\n</div>\n\n<ng-template\n #template\n let-observer\n>\n <div class=\"add-task-header\">\n <h2>{{ agentService?.addTaskForm?.title ?? \"Create User\" }}</h2>\n <kwikui-button\n icon=\"tuiIconX\"\n id=\"\"\n styles=\"\"\n type=\"button\"\n appearance=\"mono\"\n [shape]=\"null\"\n size=\"m\"\n (onClick)=\"observer.complete()\"\n ></kwikui-button>\n </div>\n <kwikid-form-view\n [allFormsData]=\"allFormsData\"\n [formConfig]=\"agentService.addTaskForm\"\n [isMobileView]=\"true\"\n (onClickSaveForm)=\"this.handleOnClickSaveForm($event)\"\n ></kwikid-form-view>\n</ng-template>\n", styles: [".kwikid-agent-dashboard{display:flex;flex-direction:column;justify-content:flex-start;align-items:stretch;align-content:center;width:100%;height:100%;position:relative}.kwikid-agent-dashboard .wrapper{width:100%;height:100%;display:flex;flex-direction:column;align-content:center;justify-content:space-between;align-items:stretch}.kwikid-agent-dashboard .wrapper header{display:flex;flex-direction:row;align-content:center;justify-content:space-between;align-items:center;grid-column-gap:1rem;column-gap:1rem;padding:1rem;max-height:80px;border:1px solid #cdcdcd}.kwikid-agent-dashboard .wrapper header .actions{display:flex;flex-direction:row;align-items:center}.kwikid-agent-dashboard .wrapper header .actions>*{margin-right:.5rem}.kwikid-agent-dashboard .wrapper .dashboard-body{display:flex;flex-direction:column;align-content:center;justify-content:center;align-items:stretch;flex:1;overflow:auto}.kwikid-agent-dashboard .wrapper .dashboard-body .map{width:100%;height:100%;position:relative;overflow:hidden}.kwikid-agent-dashboard .wrapper .dashboard-body .map-hidden{visibility:collapse}.kwikid-agent-dashboard .wrapper .dashboard-body .customer-list{width:100%;height:100%;overflow:hidden}@media screen and (min-width: 600px){.kwikid-agent-dashboard{display:flex;flex-direction:column;justify-content:flex-start;align-items:stretch;align-content:center;width:100%;height:100%}.kwikid-agent-dashboard .wrapper{width:100%;height:100%;display:flex;flex-direction:column;align-content:center;justify-content:space-between;align-items:stretch}.kwikid-agent-dashboard .wrapper header{display:flex;flex-direction:row;align-content:center;justify-content:space-between;align-items:center;grid-column-gap:1rem;column-gap:1rem;padding:.75rem;max-height:80px;border:1px solid #cdcdcd}.kwikid-agent-dashboard .wrapper header .client-name{display:flex;flex-direction:row;align-content:center;justify-content:space-between;align-items:center;font-size:1rem;font-weight:600}.kwikid-agent-dashboard .wrapper .dashboard-body{display:flex;flex-direction:row-reverse;align-content:center;justify-content:flex-end;align-items:stretch;overflow:auto}.kwikid-agent-dashboard .wrapper .dashboard-body .map{width:100%;height:100%;position:relative;overflow:hidden;border:1px solid #cdcdcd;border-radius:.5rem}.kwikid-agent-dashboard .wrapper .dashboard-body .map-hidden{visibility:collapse}.kwikid-agent-dashboard .wrapper .dashboard-body .task-details{width:100%;height:100%;position:relative;overflow:hidden;border:1px solid #cdcdcd}.kwikid-agent-dashboard .wrapper .dashboard-body .no-task-details{width:100%;height:100%;display:flex;flex-direction:column;justify-content:center;align-items:center;grid-gap:.5rem;gap:.5rem;overflow:hidden;color:#555}.kwikid-agent-dashboard .wrapper .dashboard-body .no-task-details .no-task-img{height:100px;width:100px}.kwikid-agent-dashboard .wrapper .dashboard-body .customer-list{min-width:300px;max-width:320px;width:100%;height:100%;overflow:hidden;border:1px solid #cdcdcd}}.menu{position:absolute;transition:\"0.15s linear 0s\"}.kwikid-agent-dashboard-loader{position:absolute;top:0;left:0;width:100%;height:100%;background:rgba(0,0,0,.75);display:flex;flex-direction:row;align-content:center;justify-content:center;align-items:center;z-index:100}.kwikid-agent-dashboard-loader .loader{width:48px;height:48px;border-radius:50%;display:inline-block;position:relative;border:3px solid;border-color:#fff #fff transparent;box-sizing:border-box;animation:rotation 1s linear infinite}.kwikid-agent-dashboard-loader .loader:after{content:\"\";box-sizing:border-box;position:absolute;left:0;right:0;top:0;bottom:0;margin:auto;border:3px solid;border-color:transparent var(--tui-primary) var(--tui-primary);width:24px;height:24px;border-radius:50%;animation:rotationBack .5s linear infinite;transform-origin:center center}@keyframes rotation{0%{transform:rotate(0)}to{transform:rotate(360deg)}}@keyframes rotationBack{0%{transform:rotate(0)}to{transform:rotate(-360deg)}}.kwikid-agent-dashboard-loader .t-loader{display:none!important}.add-task-header{display:flex;flex-direction:row;justify-content:space-between;align-items:center;padding:.5rem 0 1rem 1rem}:host{width:100%;height:100%}::-webkit-scrollbar{width:8px}::-webkit-scrollbar-track{border-radius:10px}::-webkit-scrollbar-thumb{background:lightgray;border-radius:10px}::-webkit-scrollbar-thumb:hover{background:gray}.menu-dropdown{display:flex;flex-direction:column;justify-content:space-between;align-items:stretch;grid-gap:.5rem;gap:.5rem;padding:1rem 1.5rem}.menu-dropdown .menu-dropdown-header{display:flex;flex-direction:column;align-content:flex-start;justify-content:space-between;align-items:flex-start;grid-gap:1rem;gap:1rem}.menu-dropdown .menu-dropdown-header .menu-dropdown-header-agent-name{font-size:1.2rem;margin:0 auto;font-weight:600}.menu-dropdown .menu-dropdown-header .menu-dropdown-header-agent-id{font-size:.8rem;margin:0 auto;font-weight:600}.menu-dropdown .menu-dropdown-buttons ::ng-deep .t-wrapper{padding:0!important}.client-logo{height:40px;width:-moz-fit-content;width:fit-content;margin:0 auto;padding-left:1rem}.client-name{display:flex;flex-direction:row;align-content:center;justify-content:space-between;align-items:center;font-size:1rem;margin:0 auto;font-weight:600}\n"], components: [{ type: i1.KwikUIButtonComponent, selector: "kwikui-button", inputs: ["appearance", "class", "disabled", "icon", "iconRight", "id", "label", "shape", "showLoader", "size", "styles", "type", "pseudoHover"], outputs: ["onClick"] }, { type: i2$2.GoogleMap, selector: "google-map", inputs: ["height", "width", "center", "zoom", "options", "mapTypeId"], outputs: ["authFailure", "boundsChanged", "centerChanged", "mapClick", "mapDblclick", "mapDrag", "mapDragend", "mapDragstart", "headingChanged", "idle", "maptypeidChanged", "mapMousemove", "mapMouseout", "mapMouseover", "projectionChanged", "mapRightclick", "tilesloaded", "tiltChanged", "zoomChanged"], exportAs: ["googleMap"] }, { type: CustomerDetailsComponent, selector: "customer-details", inputs: ["customer", "config"], outputs: ["nextStep", "removeTask", "onClickPerformAction"] }, { type: CustomerListComponent, selector: "customer-list", inputs: ["customers", "config"], outputs: ["nextStep", "removeTask", "filterTaskList", "onClickPerformAction"] }, { type: i3$1.KwikIDFormViewComponent, selector: "kwikid-form-view", inputs: ["allFormsData", "extraData", "apiCallResponse", "buttonClickResponse", "formConfig", "formData", "isMobileView", "popupFormCallback", "userConfig", "stepConfig"], outputs: ["getLogs", "getUnsavedDataState", "onActionShowPopupForm", "onClickApiCall", "onClickViewFile", "onClickFormFieldButton", "onClickGoBack", "onClickSaveForm", "onClickViewForms"] }], directives: [{ type: i7.NgIf, selector: "[ngIf]", inputs: ["ngIf", "ngIfThen", "ngIfElse"] }, { type: i2.TuiActiveZoneDirective, selector: "[tuiActiveZone]:not(ng-container), [tuiActiveZoneChange]:not(ng-container), [tuiActiveZoneParent]:not(ng-container)", inputs: ["tuiActiveZoneParent"], outputs: ["tuiActiveZoneChange"], exportAs: ["tuiActiveZone"] }, { type: i3.TuiDropdownDirective, selector: "[tuiDropdown]:not(ng-container)", inputs: ["tuiDropdown"], exportAs: ["tuiDropdown"] }, { type: i3.TuiDropdownDriverDirective, selector: "[tuiDropdown]" }, { type: i3.TuiDropdownPositionDirective, selector: "[tuiDropdown]" }, { type: i3.TuiDropdownManualDirective, selector: "[tuiDropdown][tuiDropdownManual]", inputs: ["tuiDropdownManual"] }, { type: i3.TuiGroupDirective, selector: "[tuiGroup]:not(ng-container)", inputs: ["orientation", "adaptive", "collapsed", "rounded", "size"] }, { type: i7.NgForOf, selector: "[ngFor][ngForOf]", inputs: ["ngForOf", "ngForTrackBy", "ngForTemplate"] }, { type: i2$2.MapMarker, selector: "map-marker", inputs: ["title", "position", "label", "clickable", "options", "icon", "visible"], outputs: ["animationChanged", "mapClick", "clickableChanged", "cursorChanged", "mapDblclick", "mapDrag", "mapDragend", "draggableChanged", "mapDragstart", "flatChanged", "iconChanged", "mapMousedown", "mapMouseout", "mapMouseover", "mapMouseup", "positionChanged", "mapRightclick", "shapeChanged", "titleChanged", "visibleChanged", "zindexChanged"], exportAs: ["mapMarker"] }, { type: i2$2.MapDirectionsRenderer, selector: "map-directions-renderer", inputs: ["directions", "options"], outputs: ["directionsChanged"], exportAs: ["mapDirectionsRenderer"] }], pipes: { "async": i7.AsyncPipe } });
|
|
2576
|
+
/** @nocollapse */ KwikIDAgentDashboardComponentV1.ɵcmp = i0.ɵɵngDeclareComponent({ minVersion: "12.0.0", version: "12.2.17", type: KwikIDAgentDashboardComponentV1, selector: "kwikid-agent-dashboard-v1", inputs: { agentInfo: "agentInfo", config: "config", userConfig: "userConfig", taskList: "taskList" }, outputs: { nextStep: "nextStep", addTask: "addTask", removeTask: "removeTask", filterTaskList: "filterTaskList", onClickPerformAction: "onClickPerformAction" }, host: { listeners: { "window:resize": "windowResizeWatcher($event)" } }, viewQueries: [{ propertyName: "infoWindow", first: true, predicate: MapInfoWindow, descendants: true }, { propertyName: "mapElement", first: true, predicate: ["map"], descendants: true, static: true }], ngImport: i0, template: "<div\n class=\"kwikid-agent-dashboard\"\n *ngIf=\"!loading\"\n>\n <div class=\"wrapper\">\n <header>\n <span (tuiActiveZoneChange)=\"onActiveZone($event)\">\n <kwikui-button\n [icon]=\"'tuiIconMenuLarge'\"\n (onClick)=\"onClick()\"\n appearance=\"mono\"\n size=\"m\"\n [tuiDropdown]=\"dropdownContent\"\n [tuiDropdownManual]=\"open\"\n (tuiObscured)=\"onObscured($event)\"\n ></kwikui-button>\n <img\n *ngIf=\"\n userConfig?.theme?.clientLogo &&\n config?.utilityFlags?.isShowClientLogo &&\n !config?.utilityFlags?.isAllowAddTask\n \"\n [src]=\"userConfig?.theme.clientLogo\"\n class=\"client-logo\"\n />\n <ng-template #dropdownContent>\n <div class=\"menu-dropdown\">\n <div class=\"menu-dropdown-header\">\n <div class=\"menu-dropdown-header-agent-name\">\n {{ agentInfo.agent_name ?? userConfig?.theme?.clientName }}\n </div>\n <div class=\"menu-dropdown-header-agent-id\">\n Agent ID: {{ agentInfo.agent_id }}\n </div>\n </div>\n <hr />\n <div\n class=\"menu-dropdown-body\"\n tuiGroup\n [collapsed]=\"true\"\n [rounded]=\"false\"\n [orientation]=\"'vertical'\"\n [size]=\"'m'\"\n >\n <kwikui-button\n appearance=\"mono\"\n class=\"menu-dropdown-buttons\"\n label=\"Refresh\"\n [icon]=\"'tuiIconRefreshCw'\"\n size=\"m\"\n type=\"button\"\n (onClick)=\"refresh()\"\n ></kwikui-button>\n <kwikui-button\n *ngIf=\"this.config?.maps?.isShowMaps\"\n appearance=\"mono\"\n class=\"menu-dropdown-buttons\"\n label=\"{{\n agentService.showMapview ? 'Hide Maps' : 'Show Maps'\n }}\"\n type=\"button\"\n icon=\"{{\n agentService.showMapview ? 'tuiIconEyeOff' : 'tuiIconEye'\n }}\"\n iconRight=\"\"\n [shape]=\"null\"\n size=\"m\"\n styles=\"padding: 0rem !important\"\n (onClick)=\"agentService.toggleMapview()\"\n ></kwikui-button>\n </div>\n <hr />\n <div class=\"menu-dropdown-footer\">\n <kwikui-button\n appearance=\"mono\"\n class=\"menu-dropdown-buttons\"\n label=\"Logout\"\n icon=\"tuiIconLogOut\"\n size=\"m\"\n type=\"button\"\n (onClick)=\"handleOnClickLogout()\"\n ></kwikui-button>\n </div>\n </div>\n </ng-template>\n </span>\n <div class=\"actions\">\n <kwikui-button\n *ngIf=\"config?.utilityFlags?.isAllowAddTask\"\n class=\"menu-dropdown-buttons\"\n type=\"button\"\n appearance=\"primary\"\n [label]=\"config?.formsConfig?.addTaskForm?.title ?? 'Add User'\"\n icon=\"tuiIconPlus\"\n shape=\"rounded\"\n size=\"s\"\n (onClick)=\"showDialog(template)\"\n ></kwikui-button>\n </div>\n </header>\n\n <div class=\"dashboard-body\">\n <div\n *ngIf=\"mapsLoaded\"\n [class]=\"agentService.showMapview ? 'map' : 'map-hidden'\"\n >\n <google-map\n *ngIf=\"config?.maps?.mapType == 'google-maps'\"\n [options]=\"this.googleMapsService.map\"\n height=\"100%\"\n width=\"100%\"\n >\n <map-marker\n #marker=\"mapMarker\"\n *ngFor=\"\n let markerPosition of this.googleMapsService.allMarkers;\n let index = index\n \"\n [position]=\"markerPosition\"\n [label]=\"{ text: String(index) }\"\n ></map-marker>\n <map-directions-renderer\n *ngIf=\"\n this.googleMapsService.directionsResults$\n | async as directionsResults\n \"\n [directions]=\"directionsResults\"\n [options]=\"this.googleMapsService.directionsRenderOption\"\n ></map-directions-renderer>\n </google-map>\n\n <div\n *ngIf=\"config?.maps?.mapType == 'open-street'\"\n id=\"map\"\n style=\"height: 100%\"\n ></div>\n </div>\n\n <div\n class=\"task-details\"\n *ngIf=\"\n !agentService.isMobileView &&\n agentService.currentTaskDetails != undefined &&\n !agentService.showMapview\n \"\n >\n <customer-details\n [customer]=\"agentService.currentTaskDetails\"\n [config]=\"config\"\n (nextStep)=\"handleOnClickNext($event)\"\n (removeTask)=\"handleOnClickRemoveTask($event)\"\n (onClickPerformAction)=\"handleOnClickPerformAction($event)\"\n ></customer-details>\n </div>\n\n <div\n class=\"no-task-details\"\n *ngIf=\"\n agentService.currentTaskDetails == undefined &&\n !agentService.isMobileView &&\n !agentService.showMapview\n \"\n >\n <img\n src=\"assets/No-Results.jpg\"\n class=\"no-task-img\"\n alt=\"No Task\"\n />\n <div>Select a Task to view it's details.</div>\n </div>\n\n <div class=\"customer-list\">\n <customer-list\n [customers]=\"taskList\"\n [config]=\"config\"\n (nextStep)=\"handleOnClickNext($event)\"\n (removeTask)=\"handleOnClickRemoveTask($event)\"\n (filterTaskList)=\"handleOnFilterTaskList($event)\"\n (onClickPerformAction)=\"handleOnClickPerformAction($event)\"\n ></customer-list>\n </div>\n </div>\n </div>\n</div>\n\n<div\n class=\"kwikid-agent-dashboard-loader\"\n *ngIf=\"loading\"\n>\n <span class=\"loader\"></span>\n</div>\n\n<ng-template\n #template\n let-observer\n>\n <div class=\"add-task-header\">\n <h2>{{ config?.formsConfig?.addTaskForm?.title ?? \"Create User\" }}</h2>\n <kwikui-button\n icon=\"tuiIconX\"\n id=\"\"\n styles=\"\"\n type=\"button\"\n appearance=\"mono\"\n [shape]=\"null\"\n size=\"m\"\n (onClick)=\"observer.complete()\"\n ></kwikui-button>\n </div>\n <kwikid-form-view\n [allFormsData]=\"allFormsData\"\n [formConfig]=\"config?.formsConfig?.addTaskForm\"\n [isMobileView]=\"true\"\n (onClickSaveForm)=\"this.handleOnClickSaveForm($event)\"\n ></kwikid-form-view>\n</ng-template>\n", styles: [".kwikid-agent-dashboard{display:flex;flex-direction:column;justify-content:flex-start;align-items:stretch;align-content:center;width:100%;height:100%;position:relative}.kwikid-agent-dashboard .wrapper{width:100%;height:100%;display:flex;flex-direction:column;align-content:center;justify-content:space-between;align-items:stretch}.kwikid-agent-dashboard .wrapper header{display:flex;flex-direction:row;align-content:center;justify-content:space-between;align-items:center;grid-column-gap:1rem;column-gap:1rem;padding:1rem;max-height:80px;border:1px solid #cdcdcd}.kwikid-agent-dashboard .wrapper header .actions{display:flex;flex-direction:row;align-items:center}.kwikid-agent-dashboard .wrapper header .actions>*{margin-right:.5rem}.kwikid-agent-dashboard .wrapper .dashboard-body{display:flex;flex-direction:column;align-content:center;justify-content:center;align-items:stretch;flex:1;overflow:auto}.kwikid-agent-dashboard .wrapper .dashboard-body .map{width:100%;height:100%;position:relative;overflow:hidden}.kwikid-agent-dashboard .wrapper .dashboard-body .map-hidden{visibility:collapse}.kwikid-agent-dashboard .wrapper .dashboard-body .customer-list{width:100%;height:100%;overflow:hidden}@media screen and (min-width: 600px){.kwikid-agent-dashboard{display:flex;flex-direction:column;justify-content:flex-start;align-items:stretch;align-content:center;width:100%;height:100%}.kwikid-agent-dashboard .wrapper{width:100%;height:100%;display:flex;flex-direction:column;align-content:center;justify-content:space-between;align-items:stretch}.kwikid-agent-dashboard .wrapper header{display:flex;flex-direction:row;align-content:center;justify-content:space-between;align-items:center;grid-column-gap:1rem;column-gap:1rem;padding:.75rem;max-height:80px;border:1px solid #cdcdcd}.kwikid-agent-dashboard .wrapper header .client-name{display:flex;flex-direction:row;align-content:center;justify-content:space-between;align-items:center;font-size:1rem;font-weight:600}.kwikid-agent-dashboard .wrapper .dashboard-body{display:flex;flex-direction:row-reverse;align-content:center;justify-content:flex-end;align-items:stretch;overflow:auto}.kwikid-agent-dashboard .wrapper .dashboard-body .map{width:100%;height:100%;position:relative;overflow:hidden;border:1px solid #cdcdcd;border-radius:.5rem}.kwikid-agent-dashboard .wrapper .dashboard-body .map-hidden{visibility:collapse}.kwikid-agent-dashboard .wrapper .dashboard-body .task-details{width:100%;height:100%;position:relative;overflow:hidden;border:1px solid #cdcdcd}.kwikid-agent-dashboard .wrapper .dashboard-body .no-task-details{width:100%;height:100%;display:flex;flex-direction:column;justify-content:center;align-items:center;grid-gap:.5rem;gap:.5rem;overflow:hidden;color:#555}.kwikid-agent-dashboard .wrapper .dashboard-body .no-task-details .no-task-img{height:100px;width:100px}.kwikid-agent-dashboard .wrapper .dashboard-body .customer-list{min-width:300px;max-width:320px;width:100%;height:100%;overflow:hidden;border:1px solid #cdcdcd}}.menu{position:absolute;transition:\"0.15s linear 0s\"}.kwikid-agent-dashboard-loader{position:absolute;top:0;left:0;width:100%;height:100%;background:rgba(0,0,0,.75);display:flex;flex-direction:row;align-content:center;justify-content:center;align-items:center;z-index:100}.kwikid-agent-dashboard-loader .loader{width:48px;height:48px;border-radius:50%;display:inline-block;position:relative;border:3px solid;border-color:#fff #fff transparent;box-sizing:border-box;animation:rotation 1s linear infinite}.kwikid-agent-dashboard-loader .loader:after{content:\"\";box-sizing:border-box;position:absolute;left:0;right:0;top:0;bottom:0;margin:auto;border:3px solid;border-color:transparent var(--tui-primary) var(--tui-primary);width:24px;height:24px;border-radius:50%;animation:rotationBack .5s linear infinite;transform-origin:center center}@keyframes rotation{0%{transform:rotate(0)}to{transform:rotate(360deg)}}@keyframes rotationBack{0%{transform:rotate(0)}to{transform:rotate(-360deg)}}.kwikid-agent-dashboard-loader .t-loader{display:none!important}.add-task-header{display:flex;flex-direction:row;justify-content:space-between;align-items:center;padding:.5rem 0 1rem 1rem}:host{width:100%;height:100%}::-webkit-scrollbar{width:8px}::-webkit-scrollbar-track{border-radius:10px}::-webkit-scrollbar-thumb{background:lightgray;border-radius:10px}::-webkit-scrollbar-thumb:hover{background:gray}.menu-dropdown{display:flex;flex-direction:column;justify-content:space-between;align-items:stretch;grid-gap:.5rem;gap:.5rem;padding:1rem 1.5rem}.menu-dropdown .menu-dropdown-header{display:flex;flex-direction:column;align-content:flex-start;justify-content:space-between;align-items:flex-start;grid-gap:1rem;gap:1rem}.menu-dropdown .menu-dropdown-header .menu-dropdown-header-agent-name{font-size:1.2rem;margin:0 auto;font-weight:600}.menu-dropdown .menu-dropdown-header .menu-dropdown-header-agent-id{font-size:.8rem;margin:0 auto;font-weight:600}.menu-dropdown .menu-dropdown-buttons ::ng-deep .t-wrapper{padding:0!important}.client-logo{height:40px;width:-moz-fit-content;width:fit-content;margin:0 auto;padding-left:1rem}.client-name{display:flex;flex-direction:row;align-content:center;justify-content:space-between;align-items:center;font-size:1rem;margin:0 auto;font-weight:600}\n"], components: [{ type: i1.KwikUIButtonComponent, selector: "kwikui-button", inputs: ["appearance", "class", "disabled", "icon", "iconRight", "id", "label", "shape", "showLoader", "size", "styles", "type", "pseudoHover"], outputs: ["onClick"] }, { type: i2$2.GoogleMap, selector: "google-map", inputs: ["height", "width", "center", "zoom", "options", "mapTypeId"], outputs: ["authFailure", "boundsChanged", "centerChanged", "mapClick", "mapDblclick", "mapDrag", "mapDragend", "mapDragstart", "headingChanged", "idle", "maptypeidChanged", "mapMousemove", "mapMouseout", "mapMouseover", "projectionChanged", "mapRightclick", "tilesloaded", "tiltChanged", "zoomChanged"], exportAs: ["googleMap"] }, { type: CustomerDetailsComponent, selector: "customer-details", inputs: ["customer", "config"], outputs: ["nextStep", "removeTask", "onClickPerformAction"] }, { type: CustomerListComponent, selector: "customer-list", inputs: ["customers", "config"], outputs: ["nextStep", "removeTask", "filterTaskList", "onClickPerformAction"] }, { type: i3$1.KwikIDFormViewComponent, selector: "kwikid-form-view", inputs: ["allFormsData", "extraData", "apiCallResponse", "buttonClickResponse", "formConfig", "formData", "isMobileView", "popupFormCallback", "userConfig", "stepConfig"], outputs: ["getLogs", "getUnsavedDataState", "onActionShowPopupForm", "onClickApiCall", "onClickViewFile", "onClickFormFieldButton", "onClickGoBack", "onClickSaveForm", "onClickViewForms"] }], directives: [{ type: i7.NgIf, selector: "[ngIf]", inputs: ["ngIf", "ngIfThen", "ngIfElse"] }, { type: i2.TuiActiveZoneDirective, selector: "[tuiActiveZone]:not(ng-container), [tuiActiveZoneChange]:not(ng-container), [tuiActiveZoneParent]:not(ng-container)", inputs: ["tuiActiveZoneParent"], outputs: ["tuiActiveZoneChange"], exportAs: ["tuiActiveZone"] }, { type: i3.TuiDropdownDirective, selector: "[tuiDropdown]:not(ng-container)", inputs: ["tuiDropdown"], exportAs: ["tuiDropdown"] }, { type: i3.TuiDropdownDriverDirective, selector: "[tuiDropdown]" }, { type: i3.TuiDropdownPositionDirective, selector: "[tuiDropdown]" }, { type: i3.TuiDropdownManualDirective, selector: "[tuiDropdown][tuiDropdownManual]", inputs: ["tuiDropdownManual"] }, { type: i3.TuiGroupDirective, selector: "[tuiGroup]:not(ng-container)", inputs: ["orientation", "adaptive", "collapsed", "rounded", "size"] }, { type: i7.NgForOf, selector: "[ngFor][ngForOf]", inputs: ["ngForOf", "ngForTrackBy", "ngForTemplate"] }, { type: i2$2.MapMarker, selector: "map-marker", inputs: ["title", "position", "label", "clickable", "options", "icon", "visible"], outputs: ["animationChanged", "mapClick", "clickableChanged", "cursorChanged", "mapDblclick", "mapDrag", "mapDragend", "draggableChanged", "mapDragstart", "flatChanged", "iconChanged", "mapMousedown", "mapMouseout", "mapMouseover", "mapMouseup", "positionChanged", "mapRightclick", "shapeChanged", "titleChanged", "visibleChanged", "zindexChanged"], exportAs: ["mapMarker"] }, { type: i2$2.MapDirectionsRenderer, selector: "map-directions-renderer", inputs: ["directions", "options"], outputs: ["directionsChanged"], exportAs: ["mapDirectionsRenderer"] }], pipes: { "async": i7.AsyncPipe } });
|
|
2549
2577
|
i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "12.2.17", ngImport: i0, type: KwikIDAgentDashboardComponentV1, decorators: [{
|
|
2550
2578
|
type: Component,
|
|
2551
2579
|
args: [{
|
|
@@ -2559,8 +2587,12 @@ i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "12.2.17", ngImpo
|
|
|
2559
2587
|
}] }]; }, propDecorators: { windowResizeWatcher: [{
|
|
2560
2588
|
type: HostListener,
|
|
2561
2589
|
args: ["window:resize", ["$event"]]
|
|
2590
|
+
}], agentInfo: [{
|
|
2591
|
+
type: Input
|
|
2562
2592
|
}], config: [{
|
|
2563
2593
|
type: Input
|
|
2594
|
+
}], userConfig: [{
|
|
2595
|
+
type: Input
|
|
2564
2596
|
}], taskList: [{
|
|
2565
2597
|
type: Input
|
|
2566
2598
|
}], nextStep: [{
|
|
@@ -2627,7 +2659,7 @@ class KwikIDAgentDashboardComponent {
|
|
|
2627
2659
|
}
|
|
2628
2660
|
}
|
|
2629
2661
|
/** @nocollapse */ KwikIDAgentDashboardComponent.ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "12.2.17", ngImport: i0, type: KwikIDAgentDashboardComponent, deps: [], target: i0.ɵɵFactoryTarget.Component });
|
|
2630
|
-
/** @nocollapse */ KwikIDAgentDashboardComponent.ɵcmp = i0.ɵɵngDeclareComponent({ minVersion: "12.0.0", version: "12.2.17", type: KwikIDAgentDashboardComponent, selector: "kwikid-agent-dashboard", inputs: { agentInfo: "agentInfo", config: "config", userConfig: "userConfig", taskList: "taskList" }, outputs: { nextStep: "nextStep", addTask: "addTask", removeTask: "removeTask", filterTaskList: "filterTaskList", onGetTaskList: "onGetTaskList", onClickPerformAction: "onClickPerformAction" }, usesOnChanges: true, ngImport: i0, template: "<div *ngIf=\"config?.version === 2\">\n <kwikid-agent-dashboard-v2\n [agentInfo]=\"agentInfo\"\n [config]=\"config\"\n [taskList]=\"taskList\"\n [userConfig]=\"userConfig\"\n (onGetTaskList)=\"handleOnGetTaskList($event)\"\n (onClickPerformAction)=\"handleOnClickPerformAction($event)\"\n ></kwikid-agent-dashboard-v2>\n</div>\n\n<div *ngIf=\"config?.version !== 2\">\n <kwikid-agent-dashboard-v1\n [config]=\"config\"\n [taskList]=\"taskList\"\n (nextStep)=\"handleOnClickNext($event)\"\n (addTask)=\"handleOnClickAddTask($event)\"\n (removeTask)=\"handleOnClickRemoveTask($event)\"\n (filterTaskList)=\"handleOnFilterTaskList($event)\"\n (onClickPerformAction)=\"handleOnClickPerformAction($event)\"\n ></kwikid-agent-dashboard-v1>\n</div>\n", styles: ["div{height:100%}\n"], components: [{ type: KwikIDAgentDashboardComponentV2, selector: "kwikid-agent-dashboard-v2", inputs: ["config", "userConfig", "agentInfo", "taskList"], outputs: ["onGetTaskList", "onClickPerformAction"] }, { type: KwikIDAgentDashboardComponentV1, selector: "kwikid-agent-dashboard-v1", inputs: ["config", "taskList"], outputs: ["nextStep", "addTask", "removeTask", "filterTaskList", "onClickPerformAction"] }], directives: [{ type: i7.NgIf, selector: "[ngIf]", inputs: ["ngIf", "ngIfThen", "ngIfElse"] }] });
|
|
2662
|
+
/** @nocollapse */ KwikIDAgentDashboardComponent.ɵcmp = i0.ɵɵngDeclareComponent({ minVersion: "12.0.0", version: "12.2.17", type: KwikIDAgentDashboardComponent, selector: "kwikid-agent-dashboard", inputs: { agentInfo: "agentInfo", config: "config", userConfig: "userConfig", taskList: "taskList" }, outputs: { nextStep: "nextStep", addTask: "addTask", removeTask: "removeTask", filterTaskList: "filterTaskList", onGetTaskList: "onGetTaskList", onClickPerformAction: "onClickPerformAction" }, usesOnChanges: true, ngImport: i0, template: "<div *ngIf=\"config?.version === 2\">\n <kwikid-agent-dashboard-v2\n [agentInfo]=\"agentInfo\"\n [config]=\"config\"\n [taskList]=\"taskList\"\n [userConfig]=\"userConfig\"\n (onGetTaskList)=\"handleOnGetTaskList($event)\"\n (onClickPerformAction)=\"handleOnClickPerformAction($event)\"\n ></kwikid-agent-dashboard-v2>\n</div>\n\n<div *ngIf=\"config?.version !== 2\">\n <kwikid-agent-dashboard-v1\n [agentInfo]=\"agentInfo\"\n [config]=\"config\"\n [taskList]=\"taskList\"\n [userConfig]=\"userConfig\"\n (nextStep)=\"handleOnClickNext($event)\"\n (addTask)=\"handleOnClickAddTask($event)\"\n (removeTask)=\"handleOnClickRemoveTask($event)\"\n (filterTaskList)=\"handleOnFilterTaskList($event)\"\n (onClickPerformAction)=\"handleOnClickPerformAction($event)\"\n ></kwikid-agent-dashboard-v1>\n</div>\n", styles: ["div{height:100%}\n"], components: [{ type: KwikIDAgentDashboardComponentV2, selector: "kwikid-agent-dashboard-v2", inputs: ["config", "userConfig", "agentInfo", "taskList"], outputs: ["onGetTaskList", "onClickPerformAction"] }, { type: KwikIDAgentDashboardComponentV1, selector: "kwikid-agent-dashboard-v1", inputs: ["agentInfo", "config", "userConfig", "taskList"], outputs: ["nextStep", "addTask", "removeTask", "filterTaskList", "onClickPerformAction"] }], directives: [{ type: i7.NgIf, selector: "[ngIf]", inputs: ["ngIf", "ngIfThen", "ngIfElse"] }] });
|
|
2631
2663
|
i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "12.2.17", ngImport: i0, type: KwikIDAgentDashboardComponent, decorators: [{
|
|
2632
2664
|
type: Component,
|
|
2633
2665
|
args: [{
|