gamma-app-controller 2.0.20 → 2.0.22
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/esm2020/lib/application-controller/support-components/single-card/single-card.component.mjs +34 -24
- package/esm2020/lib/shared/advanced-component/gamm-single-number-card/gamm-single-number-card.component.mjs +4 -3
- package/esm2020/lib/shared/advanced-component/gamma-geo-chart/gamma-geo-chart.component.mjs +4 -3
- package/fesm2015/gamma-app-controller.mjs +110 -99
- package/fesm2015/gamma-app-controller.mjs.map +1 -1
- package/fesm2020/gamma-app-controller.mjs +108 -98
- package/fesm2020/gamma-app-controller.mjs.map +1 -1
- package/lib/application-controller/support-components/single-card/single-card.component.d.ts +5 -2
- package/lib/shared/advanced-component/gamm-single-number-card/gamm-single-number-card.component.d.ts +1 -0
- package/lib/shared/advanced-component/gamma-geo-chart/gamma-geo-chart.component.d.ts +1 -0
- package/package.json +1 -1
|
@@ -3645,6 +3645,7 @@ class GammaGeoChartComponent {
|
|
|
3645
3645
|
};
|
|
3646
3646
|
}
|
|
3647
3647
|
else if (this.mapTYpe == "choroplethMap") {
|
|
3648
|
+
this.chartConfig = value.kpiConfig.dataConfig;
|
|
3648
3649
|
let chartConfig = value.kpiConfig.dataConfig;
|
|
3649
3650
|
if (chartConfig.isDataAggregation) {
|
|
3650
3651
|
const aggreationData = this.getGroupDataForChart(value.kpiConfig.dataSource, chartConfig['dataAggregationConfig']['dataAggregateColumes'], chartConfig['dataAggregationConfig']['aggregateFields']);
|
|
@@ -4256,10 +4257,10 @@ class GammaGeoChartComponent {
|
|
|
4256
4257
|
}
|
|
4257
4258
|
}
|
|
4258
4259
|
GammaGeoChartComponent.ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "14.3.0", ngImport: i0, type: GammaGeoChartComponent, deps: [{ token: CommonService }], target: i0.ɵɵFactoryTarget.Component });
|
|
4259
|
-
GammaGeoChartComponent.ɵcmp = i0.ɵɵngDeclareComponent({ minVersion: "14.0.0", version: "14.3.0", type: GammaGeoChartComponent, selector: "app-gamma-geo-chart", inputs: { rightClickEnable: "rightClickEnable", chartDataSource: "chartDataSource" }, outputs: { getTableConfigOutPut: "getTableConfigOutPut", oRowClick: "oRowClick", onrightClickContextSelection: "onrightClickContextSelection" }, viewQueries: [{ propertyName: "googlMap", first: true, predicate: ["googlMap"], descendants: true }], ngImport: i0, template: "<div class=\"mx-2 bg-gray-800\">\n
|
|
4260
|
+
GammaGeoChartComponent.ɵcmp = i0.ɵɵngDeclareComponent({ minVersion: "14.0.0", version: "14.3.0", type: GammaGeoChartComponent, selector: "app-gamma-geo-chart", inputs: { rightClickEnable: "rightClickEnable", chartDataSource: "chartDataSource" }, outputs: { getTableConfigOutPut: "getTableConfigOutPut", oRowClick: "oRowClick", onrightClickContextSelection: "onrightClickContextSelection" }, viewQueries: [{ propertyName: "googlMap", first: true, predicate: ["googlMap"], descendants: true }], ngImport: i0, template: "<div class=\"mx-2 bg-gray-800\">\n <div class=\"relative w-full\">\n\n\n <div class=\"absolute left-4 bottom-6 pointer-events-none floting-side-bar\" *ngIf=\"!isLoader\">\n <div class=\"flex items-center h-80 px-4 py-3 rounded-xl shadow-lg backdrop-blur-md bg-black/60\">\n <div class=\"w-4 h-full rounded-full shadow-xl\"\n [style.background]=\"'linear-gradient(to bottom,' + chartConfig.colorOne + ',' + chartConfig.colorTwo + ')'\">\n </div>\n </div>\n </div>\n\n\n \n\n <!-- <div class=\"absolute top-[200px] left-4 bottom-6 z-40 flex items-center\">\n <div class=\"flex items-center space-x-2\">\n <div class=\"w-4 h-full rounded-full shadow-lg\"\n [style.background]=\"'linear-gradient(to right,' + chartConfig.colorOne + ',' + chartConfig.colorTwo + ')'\"></div>\n <div class=\"flex flex-col justify-between h-full text-xs text-white\">\n <span>High</span>\n <span>Low</span>\n </div>\n </div>\n </div> -->\n\n\n <div id=\"regions_div\" #googlMap style=\"width: 100%\"></div>\n <div id=\"googlemap\" style=\"width: 100%;\" [style.height]=\"chartHeight\"></div>\n <div *ngIf=\"isLoader\" class=\"absolute inset-0 z-50 flex items-center justify-center bg-black/40 backdrop-blur-sm\">\n <div class=\"geo-chart-loader\"></div>\n </div>\n <div class=\"mx-2 pb-2\">\n <div class=\" mx-auto w-full mt-3\" *ngIf=\"isRangeSliderVisible\">\n <div class=\"flex items-center justify-between mb-2\">\n <button class=\"text-white px-3 py-2 rounded bg-gray-800 hover:bg-gray-700\" (click)=\"togglePlay()\">\n <i class=\"fa\" [ngClass]=\"isPlaying ? 'fa-pause' : 'fa-play'\"></i>\n </button>\n <div class=\"flex space-x-2 text-sm font-semibold\">\n <ng-container *ngFor=\"let year of allSelectedRangeSliderValues; let i = index\">\n <span class=\"cursor-pointer select-none px-2 py-1 rounded-md transition\" [ngClass]=\"{\n 'bg-black text-white shadow': year === selectedRangeSliderValue,\n 'text-gray-300 hover:text-white': year !== selectedRangeSliderValue\n }\" (click)=\"setYearByIndex(i)\">\n {{ year }}\n </span>\n </ng-container>\n </div>\n <button class=\"text-white px-3 py-2 rounded bg-gray-800 hover:bg-gray-700\" (click)=\"restart()\">\n <i class=\"fa fa-refresh\"></i>\n </button>\n </div>\n <input type=\"range\" class=\"w-full h-2 rounded-lg appearance-none cursor-pointer\n bg-gradient-to-r from-green-400 via-yellow-400 to-red-500\" [min]=\"0\"\n [max]=\"allSelectedRangeSliderValues.length - 1\" [value]=\"choroplethMapCurrentIndex\"\n (input)=\"onYearChange($event)\" />\n </div>\n </div>\n </div>\n</div>", styles: [".geo-chart-loader{width:64px;height:64px;border:6px solid rgba(255,255,255,.2);border-top-color:#4ade80;border-radius:50%;animation:spin 1s linear infinite}@keyframes spin{to{transform:rotate(360deg)}}.floting-side-bar{top:60px;z-index:999999}\n"], dependencies: [{ kind: "directive", type: i4$2.NgClass, selector: "[ngClass]", inputs: ["class", "ngClass"] }, { kind: "directive", type: i4$2.NgForOf, selector: "[ngFor][ngForOf]", inputs: ["ngForOf", "ngForTrackBy", "ngForTemplate"] }, { kind: "directive", type: i4$2.NgIf, selector: "[ngIf]", inputs: ["ngIf", "ngIfThen", "ngIfElse"] }] });
|
|
4260
4261
|
i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "14.3.0", ngImport: i0, type: GammaGeoChartComponent, decorators: [{
|
|
4261
4262
|
type: Component,
|
|
4262
|
-
args: [{ selector: "app-gamma-geo-chart", template: "<div class=\"mx-2 bg-gray-800\">\n
|
|
4263
|
+
args: [{ selector: "app-gamma-geo-chart", template: "<div class=\"mx-2 bg-gray-800\">\n <div class=\"relative w-full\">\n\n\n <div class=\"absolute left-4 bottom-6 pointer-events-none floting-side-bar\" *ngIf=\"!isLoader\">\n <div class=\"flex items-center h-80 px-4 py-3 rounded-xl shadow-lg backdrop-blur-md bg-black/60\">\n <div class=\"w-4 h-full rounded-full shadow-xl\"\n [style.background]=\"'linear-gradient(to bottom,' + chartConfig.colorOne + ',' + chartConfig.colorTwo + ')'\">\n </div>\n </div>\n </div>\n\n\n \n\n <!-- <div class=\"absolute top-[200px] left-4 bottom-6 z-40 flex items-center\">\n <div class=\"flex items-center space-x-2\">\n <div class=\"w-4 h-full rounded-full shadow-lg\"\n [style.background]=\"'linear-gradient(to right,' + chartConfig.colorOne + ',' + chartConfig.colorTwo + ')'\"></div>\n <div class=\"flex flex-col justify-between h-full text-xs text-white\">\n <span>High</span>\n <span>Low</span>\n </div>\n </div>\n </div> -->\n\n\n <div id=\"regions_div\" #googlMap style=\"width: 100%\"></div>\n <div id=\"googlemap\" style=\"width: 100%;\" [style.height]=\"chartHeight\"></div>\n <div *ngIf=\"isLoader\" class=\"absolute inset-0 z-50 flex items-center justify-center bg-black/40 backdrop-blur-sm\">\n <div class=\"geo-chart-loader\"></div>\n </div>\n <div class=\"mx-2 pb-2\">\n <div class=\" mx-auto w-full mt-3\" *ngIf=\"isRangeSliderVisible\">\n <div class=\"flex items-center justify-between mb-2\">\n <button class=\"text-white px-3 py-2 rounded bg-gray-800 hover:bg-gray-700\" (click)=\"togglePlay()\">\n <i class=\"fa\" [ngClass]=\"isPlaying ? 'fa-pause' : 'fa-play'\"></i>\n </button>\n <div class=\"flex space-x-2 text-sm font-semibold\">\n <ng-container *ngFor=\"let year of allSelectedRangeSliderValues; let i = index\">\n <span class=\"cursor-pointer select-none px-2 py-1 rounded-md transition\" [ngClass]=\"{\n 'bg-black text-white shadow': year === selectedRangeSliderValue,\n 'text-gray-300 hover:text-white': year !== selectedRangeSliderValue\n }\" (click)=\"setYearByIndex(i)\">\n {{ year }}\n </span>\n </ng-container>\n </div>\n <button class=\"text-white px-3 py-2 rounded bg-gray-800 hover:bg-gray-700\" (click)=\"restart()\">\n <i class=\"fa fa-refresh\"></i>\n </button>\n </div>\n <input type=\"range\" class=\"w-full h-2 rounded-lg appearance-none cursor-pointer\n bg-gradient-to-r from-green-400 via-yellow-400 to-red-500\" [min]=\"0\"\n [max]=\"allSelectedRangeSliderValues.length - 1\" [value]=\"choroplethMapCurrentIndex\"\n (input)=\"onYearChange($event)\" />\n </div>\n </div>\n </div>\n</div>", styles: [".geo-chart-loader{width:64px;height:64px;border:6px solid rgba(255,255,255,.2);border-top-color:#4ade80;border-radius:50%;animation:spin 1s linear infinite}@keyframes spin{to{transform:rotate(360deg)}}.floting-side-bar{top:60px;z-index:999999}\n"] }]
|
|
4263
4264
|
}], ctorParameters: function () { return [{ type: CommonService }]; }, propDecorators: { googlMap: [{
|
|
4264
4265
|
type: ViewChild,
|
|
4265
4266
|
args: ["googlMap"]
|
|
@@ -7534,6 +7535,82 @@ i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "14.3.0", ngImpor
|
|
|
7534
7535
|
args: ['datasetmodal']
|
|
7535
7536
|
}] } });
|
|
7536
7537
|
|
|
7538
|
+
class GammSingleNumberCardComponent {
|
|
7539
|
+
constructor(commonService, toastr) {
|
|
7540
|
+
this.commonService = commonService;
|
|
7541
|
+
this.toastr = toastr;
|
|
7542
|
+
this.isLoader = true;
|
|
7543
|
+
this.colors = [
|
|
7544
|
+
"text-green-500",
|
|
7545
|
+
"text-orange-500",
|
|
7546
|
+
"text-blue-500",
|
|
7547
|
+
"text-purple-500",
|
|
7548
|
+
"text-yellow-500"
|
|
7549
|
+
];
|
|
7550
|
+
}
|
|
7551
|
+
set chartDataSource(value) {
|
|
7552
|
+
var _a, _b, _c, _d, _e, _f, _g, _h, _j, _k, _l, _m, _o;
|
|
7553
|
+
this.objectdataSource = value;
|
|
7554
|
+
if (!this.objectdataSource || this.objectdataSource.length === 0) {
|
|
7555
|
+
this.isChartvisible = false;
|
|
7556
|
+
return;
|
|
7557
|
+
}
|
|
7558
|
+
else {
|
|
7559
|
+
this.isLoader = true;
|
|
7560
|
+
this.selectedColumn = ((_d = (_c = (_b = (_a = value.kpiConfig) === null || _a === void 0 ? void 0 : _a.dataConfig) === null || _b === void 0 ? void 0 : _b.columns) === null || _c === void 0 ? void 0 : _c[0]) === null || _d === void 0 ? void 0 : _d.dataField) || "";
|
|
7561
|
+
this.selectedCaption = ((_h = (_g = (_f = (_e = value.kpiConfig) === null || _e === void 0 ? void 0 : _e.dataConfig) === null || _f === void 0 ? void 0 : _f.columns) === null || _g === void 0 ? void 0 : _g[0]) === null || _h === void 0 ? void 0 : _h.caption) || "";
|
|
7562
|
+
this.sortBy = (_k = (_j = value.kpiConfig) === null || _j === void 0 ? void 0 : _j.dataConfig) === null || _k === void 0 ? void 0 : _k.sortBy;
|
|
7563
|
+
this.tableDataConfig = (_l = value.kpiConfig) === null || _l === void 0 ? void 0 : _l.dataConfig;
|
|
7564
|
+
if ((_m = value.kpiConfig.dataSource) === null || _m === void 0 ? void 0 : _m.length) {
|
|
7565
|
+
this.page_config = value;
|
|
7566
|
+
let sortedData = value.kpiConfig.dataSource;
|
|
7567
|
+
if ((_o = this.sortBy) === null || _o === void 0 ? void 0 : _o.length) {
|
|
7568
|
+
let sortKey = this.sortBy[0];
|
|
7569
|
+
sortedData = sortedData.sort((a, b) => moment$1(b[sortKey], "YYYY-MM-DD").diff(moment$1(a[sortKey], "YYYY-MM-DD")));
|
|
7570
|
+
}
|
|
7571
|
+
if (value.kpiConfig.formate === "daily") {
|
|
7572
|
+
this.currentDateData = sortedData.length ? this.commonService.abbreviateNumber(sortedData[0][this.selectedColumn] || 0) : "0";
|
|
7573
|
+
}
|
|
7574
|
+
else if (value.kpiConfig.formate === "monthly") {
|
|
7575
|
+
let total = sortedData.reduce((sum, item) => {
|
|
7576
|
+
let value = Number(item[this.selectedColumn]) || 0;
|
|
7577
|
+
return sum + value;
|
|
7578
|
+
}, 0);
|
|
7579
|
+
this.currentDateData = this.commonService.abbreviateNumber(total);
|
|
7580
|
+
}
|
|
7581
|
+
this.isLoader = false;
|
|
7582
|
+
}
|
|
7583
|
+
}
|
|
7584
|
+
}
|
|
7585
|
+
getDynamicValue(data) {
|
|
7586
|
+
if (!this.selectedColumn || !data.hasOwnProperty(this.selectedColumn)) {
|
|
7587
|
+
return null;
|
|
7588
|
+
}
|
|
7589
|
+
let value = data[this.selectedColumn];
|
|
7590
|
+
const numericValue = Number(value);
|
|
7591
|
+
if (!isNaN(numericValue)) {
|
|
7592
|
+
return this.commonService.abbreviateNumber(numericValue);
|
|
7593
|
+
}
|
|
7594
|
+
return value;
|
|
7595
|
+
}
|
|
7596
|
+
ngOnInit() {
|
|
7597
|
+
this.randomColorClass = this.getRandomColor();
|
|
7598
|
+
}
|
|
7599
|
+
getRandomColor() {
|
|
7600
|
+
const randomIndex = Math.floor(Math.random() * this.colors.length);
|
|
7601
|
+
return this.colors[randomIndex];
|
|
7602
|
+
}
|
|
7603
|
+
}
|
|
7604
|
+
GammSingleNumberCardComponent.ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "14.3.0", ngImport: i0, type: GammSingleNumberCardComponent, deps: [{ token: CommonService }, { token: i4$1.ToastrService }], target: i0.ɵɵFactoryTarget.Component });
|
|
7605
|
+
GammSingleNumberCardComponent.ɵcmp = i0.ɵɵngDeclareComponent({ minVersion: "14.0.0", version: "14.3.0", type: GammSingleNumberCardComponent, selector: "app-gamm-single-number-card", inputs: { chartDataSource: "chartDataSource" }, ngImport: i0, template: "<div class=\"flex items-center p-4 bg-gray-200 dark:bg-gray-800 mx-2\n text-gray-900 dark:text-gray-100 rounded shadow-xs\" *ngIf=\"tableDataConfig.isIcon\">\n <ng-container *ngIf=\"isLoader\">\n <app-loader></app-loader>\n </ng-container>\n <div class=\"py-3 px-4 mr-4 rounded-full\" [style.color]=\"tableDataConfig.iconColor\"\n [style.backgroundColor]=\"tableDataConfig.iconBackgroundColor\">\n <i [class]=\"tableDataConfig.iconName\"></i>\n\n </div>\n <div>\n <p class=\"mb-2 text-sm font-medium text-gray-600 dark:text-gray-200\">\n {{tableDataConfig.iconText}}\n </p>\n <p class=\"font-semibold\" [style.color]=\"tableDataConfig.color\"\n [style.font-size.px]=\"tableDataConfig.size || 16\">\n {{ currentDateData }}\n </p>\n </div>\n</div>\n\n<div class=\"flex flex-row justify-center items-start \n bg-gray-200 dark:bg-gray-800 \n text-gray-900 dark:text-gray-100 \n p-4 mx-2 text-center transition-colors duration-300 border border-r\" *ngIf=\"!tableDataConfig.isIcon\">\n <ng-container *ngIf=\"isLoader\">\n <app-loader></app-loader>\n </ng-container>\n <ng-container *ngIf=\"!isLoader\">\n <div class=\"flex flex-col justify-center items-center\">\n <div class=\"font-bold p-2 text-gray-600 dark:text-gray-200\" [style.font-size.px]=\"14\">\n {{ selectedCaption }}\n </div>\n\n <div class=\"font-bold p-2\" [style.color]=\"tableDataConfig.color\"\n [style.font-size.px]=\"tableDataConfig.size || 16\">\n {{ currentDateData }}\n </div>\n </div>\n </ng-container>\n\n</div>", dependencies: [{ kind: "directive", type: i4$2.NgIf, selector: "[ngIf]", inputs: ["ngIf", "ngIfThen", "ngIfElse"] }, { kind: "component", type: LoaderComponent, selector: "app-loader" }] });
|
|
7606
|
+
i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "14.3.0", ngImport: i0, type: GammSingleNumberCardComponent, decorators: [{
|
|
7607
|
+
type: Component,
|
|
7608
|
+
args: [{ selector: 'app-gamm-single-number-card', template: "<div class=\"flex items-center p-4 bg-gray-200 dark:bg-gray-800 mx-2\n text-gray-900 dark:text-gray-100 rounded shadow-xs\" *ngIf=\"tableDataConfig.isIcon\">\n <ng-container *ngIf=\"isLoader\">\n <app-loader></app-loader>\n </ng-container>\n <div class=\"py-3 px-4 mr-4 rounded-full\" [style.color]=\"tableDataConfig.iconColor\"\n [style.backgroundColor]=\"tableDataConfig.iconBackgroundColor\">\n <i [class]=\"tableDataConfig.iconName\"></i>\n\n </div>\n <div>\n <p class=\"mb-2 text-sm font-medium text-gray-600 dark:text-gray-200\">\n {{tableDataConfig.iconText}}\n </p>\n <p class=\"font-semibold\" [style.color]=\"tableDataConfig.color\"\n [style.font-size.px]=\"tableDataConfig.size || 16\">\n {{ currentDateData }}\n </p>\n </div>\n</div>\n\n<div class=\"flex flex-row justify-center items-start \n bg-gray-200 dark:bg-gray-800 \n text-gray-900 dark:text-gray-100 \n p-4 mx-2 text-center transition-colors duration-300 border border-r\" *ngIf=\"!tableDataConfig.isIcon\">\n <ng-container *ngIf=\"isLoader\">\n <app-loader></app-loader>\n </ng-container>\n <ng-container *ngIf=\"!isLoader\">\n <div class=\"flex flex-col justify-center items-center\">\n <div class=\"font-bold p-2 text-gray-600 dark:text-gray-200\" [style.font-size.px]=\"14\">\n {{ selectedCaption }}\n </div>\n\n <div class=\"font-bold p-2\" [style.color]=\"tableDataConfig.color\"\n [style.font-size.px]=\"tableDataConfig.size || 16\">\n {{ currentDateData }}\n </div>\n </div>\n </ng-container>\n\n</div>" }]
|
|
7609
|
+
}], ctorParameters: function () { return [{ type: CommonService }, { type: i4$1.ToastrService }]; }, propDecorators: { chartDataSource: [{
|
|
7610
|
+
type: Input,
|
|
7611
|
+
args: ['chartDataSource']
|
|
7612
|
+
}] } });
|
|
7613
|
+
|
|
7537
7614
|
class SingleCardComponent {
|
|
7538
7615
|
constructor(commonService, cdr, service, taostr) {
|
|
7539
7616
|
this.commonService = commonService;
|
|
@@ -7543,7 +7620,7 @@ class SingleCardComponent {
|
|
|
7543
7620
|
this.dataSourseForTable = [];
|
|
7544
7621
|
this.allConfiguredViews = [];
|
|
7545
7622
|
this.optionalDrilDownDataSource = [];
|
|
7546
|
-
this.
|
|
7623
|
+
this.cardMainComponentObject = {
|
|
7547
7624
|
"kpiConfig": {
|
|
7548
7625
|
"serviceId": "",
|
|
7549
7626
|
"api": "/kpi/trends/network/get-metric-data",
|
|
@@ -7554,7 +7631,7 @@ class SingleCardComponent {
|
|
|
7554
7631
|
"dataConfig": {}
|
|
7555
7632
|
},
|
|
7556
7633
|
};
|
|
7557
|
-
this.
|
|
7634
|
+
this.cardDataConfig = {
|
|
7558
7635
|
"color": "",
|
|
7559
7636
|
"size": "",
|
|
7560
7637
|
"isIcon": false,
|
|
@@ -7567,10 +7644,12 @@ class SingleCardComponent {
|
|
|
7567
7644
|
};
|
|
7568
7645
|
this.enrichNameList = ["abbreviateNumber", "getColorCodeSpan", "ThousandSeparator", "ThousandSeparatorWithTwoDecimals", "formatBytesv2"];
|
|
7569
7646
|
this.isLoader = true;
|
|
7647
|
+
this.userOptionContainer = [];
|
|
7570
7648
|
this.activeTab = 'basic';
|
|
7571
7649
|
this.getSingleCardConfigOutPut = new EventEmitter();
|
|
7572
7650
|
}
|
|
7573
7651
|
set chartconfigData(value) {
|
|
7652
|
+
var _a;
|
|
7574
7653
|
if (value === undefined || value.length === 0) {
|
|
7575
7654
|
return;
|
|
7576
7655
|
}
|
|
@@ -7580,10 +7659,14 @@ class SingleCardComponent {
|
|
|
7580
7659
|
this.dataSourseForTable = value.data.slice(0, 10);
|
|
7581
7660
|
this.selectedViewConfigs = value;
|
|
7582
7661
|
this.selectedTableViewType = value.selectedViewType;
|
|
7662
|
+
this.previewData = value.data;
|
|
7663
|
+
this.userOptionContainer = ((_a = value.selectedWidgetConfig) === null || _a === void 0 ? void 0 : _a.permissions) ? value.selectedWidgetConfig.permissions : [];
|
|
7583
7664
|
if (value.selectedWidgetConfig) {
|
|
7584
|
-
this.
|
|
7585
|
-
this.
|
|
7586
|
-
this.
|
|
7665
|
+
this.cardMainComponentObject['kpiConfig'] = value.selectedWidgetConfig;
|
|
7666
|
+
this.cardDataConfig = value.selectedWidgetConfig.dataConfig;
|
|
7667
|
+
this.cardDataSourceModel = this.cardMainComponentObject;
|
|
7668
|
+
this.cardDataSourceModel.kpiConfig['dataSource'] = this.previewData;
|
|
7669
|
+
this.cardDataConfig.columns = (value.selectedWidgetConfig.dataConfig.columns) ? value.selectedWidgetConfig.dataConfig.columns : [];
|
|
7587
7670
|
if (value.selectedWidgetConfig.viewProperties) {
|
|
7588
7671
|
this.viewProperties = value.selectedWidgetConfig.viewProperties;
|
|
7589
7672
|
this.viewProperties = {
|
|
@@ -7638,7 +7721,7 @@ class SingleCardComponent {
|
|
|
7638
7721
|
this.cdr.detectChanges();
|
|
7639
7722
|
}
|
|
7640
7723
|
else {
|
|
7641
|
-
this.
|
|
7724
|
+
this.cardDataConfig.columns = value.columnData;
|
|
7642
7725
|
this.viewProperties = {
|
|
7643
7726
|
enableClickEvent: false,
|
|
7644
7727
|
enableRightClickEvent: true,
|
|
@@ -7647,8 +7730,8 @@ class SingleCardComponent {
|
|
|
7647
7730
|
eventType: ""
|
|
7648
7731
|
}
|
|
7649
7732
|
};
|
|
7650
|
-
if (!this.
|
|
7651
|
-
this.
|
|
7733
|
+
if (!this.cardDataConfig.columns) {
|
|
7734
|
+
this.cardDataConfig.columns = [];
|
|
7652
7735
|
this.configColume.forEach(element => {
|
|
7653
7736
|
let obj = {
|
|
7654
7737
|
"visible": true,
|
|
@@ -7656,10 +7739,12 @@ class SingleCardComponent {
|
|
|
7656
7739
|
"caption": this.commonService.convertString(element),
|
|
7657
7740
|
"enrichName": "",
|
|
7658
7741
|
};
|
|
7659
|
-
this.
|
|
7742
|
+
this.cardDataConfig.columns.push(obj);
|
|
7660
7743
|
});
|
|
7661
7744
|
console.log(this.configColume);
|
|
7662
7745
|
}
|
|
7746
|
+
this.cardDataSourceModel = this.cardMainComponentObject;
|
|
7747
|
+
this.cardDataSourceModel.kpiConfig['dataSource'] = this.previewData;
|
|
7663
7748
|
this.cdr.detectChanges();
|
|
7664
7749
|
}
|
|
7665
7750
|
}
|
|
@@ -7694,23 +7779,23 @@ class SingleCardComponent {
|
|
|
7694
7779
|
if (this.selectedTableViewType === 'groupTable') {
|
|
7695
7780
|
obj['group'] = '';
|
|
7696
7781
|
}
|
|
7697
|
-
this.
|
|
7782
|
+
this.cardDataConfig.columns.push(obj);
|
|
7698
7783
|
}
|
|
7699
7784
|
deleteColumns(i) {
|
|
7700
|
-
this.
|
|
7785
|
+
this.cardDataConfig.columns.splice(i, 1);
|
|
7701
7786
|
}
|
|
7702
7787
|
getEnrichClassName(e, item) {
|
|
7703
7788
|
item.enrichName = e.value;
|
|
7704
7789
|
}
|
|
7705
7790
|
moveItemForColumns(index, direction) {
|
|
7706
|
-
if (index < 0 || index >= this.
|
|
7791
|
+
if (index < 0 || index >= this.cardDataConfig.columns.length)
|
|
7707
7792
|
return;
|
|
7708
7793
|
const newPosition = direction === 'up' ? index - 1 : index + 1;
|
|
7709
|
-
if (newPosition < 0 || newPosition >= this.
|
|
7794
|
+
if (newPosition < 0 || newPosition >= this.cardDataConfig.columns.length)
|
|
7710
7795
|
return;
|
|
7711
|
-
const itemToMove = this.
|
|
7712
|
-
this.
|
|
7713
|
-
this.
|
|
7796
|
+
const itemToMove = this.cardDataConfig.columns[index];
|
|
7797
|
+
this.cardDataConfig.columns.splice(index, 1);
|
|
7798
|
+
this.cardDataConfig.columns.splice(newPosition, 0, itemToMove);
|
|
7714
7799
|
}
|
|
7715
7800
|
getObjectKeys(obj) {
|
|
7716
7801
|
return Object.keys(obj);
|
|
@@ -7755,9 +7840,10 @@ class SingleCardComponent {
|
|
|
7755
7840
|
if (this.viewProperties.clickEventOptions.eventType == 'optionalDrillDown') {
|
|
7756
7841
|
this.viewProperties['clickEventOptions']['associatedViews'] = this.optionalDrilDownDataSource;
|
|
7757
7842
|
}
|
|
7758
|
-
this.
|
|
7759
|
-
this.
|
|
7760
|
-
this.
|
|
7843
|
+
this.cardMainComponentObject.kpiConfig['viewProperties'] = this.viewProperties;
|
|
7844
|
+
this.cardMainComponentObject.kpiConfig.dataConfig = JSON.parse(JSON.stringify(this.cardDataConfig));
|
|
7845
|
+
this.cardMainComponentObject['permissions'] = this.userOptionContainer;
|
|
7846
|
+
this.getSingleCardConfigOutPut.emit(this.cardMainComponentObject);
|
|
7761
7847
|
}
|
|
7762
7848
|
deleteAssociatedParams(index) {
|
|
7763
7849
|
this.optionalDrilDownDataSource.splice(index, 1);
|
|
@@ -7772,7 +7858,7 @@ class SingleCardComponent {
|
|
|
7772
7858
|
if (e.event) {
|
|
7773
7859
|
this.optionalDrilDownDataSource = [];
|
|
7774
7860
|
if (this.viewProperties.clickEventOptions.eventType == 'drilldown') {
|
|
7775
|
-
this.
|
|
7861
|
+
this.cardMainComponentObject.kpiConfig['viewProperties']['associatedViews'] = [];
|
|
7776
7862
|
}
|
|
7777
7863
|
}
|
|
7778
7864
|
}
|
|
@@ -7788,10 +7874,10 @@ class SingleCardComponent {
|
|
|
7788
7874
|
}
|
|
7789
7875
|
}
|
|
7790
7876
|
SingleCardComponent.ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "14.3.0", ngImport: i0, type: SingleCardComponent, deps: [{ token: CommonService }, { token: i0.ChangeDetectorRef }, { token: ApplicationContentService }, { token: i4$1.ToastrService }], target: i0.ɵɵFactoryTarget.Component });
|
|
7791
|
-
SingleCardComponent.ɵcmp = i0.ɵɵngDeclareComponent({ minVersion: "14.0.0", version: "14.3.0", type: SingleCardComponent, selector: "lib-single-card", inputs: { chartconfigData: ["datasetmodal", "chartconfigData"] }, outputs: { getSingleCardConfigOutPut: "getSingleCardConfigOutPut" }, ngImport: i0, template: "<div class=\"m-2\"></div>\n<div class=\"w-full m-2 border-r\">\n <ng-container *ngIf=\"!isJsonPreview\">\n <pre><code>{{jsaonDatasource | json}}</code></pre>\n </ng-container>\n\n\n <ng-container *ngIf=\"isJsonPreview\">\n\n <div class=\"flex items-center p-4 bg-gray-200 dark:bg-gray-800 mx-2\n text-gray-900 dark:text-gray-100 rounded shadow-xs\" *ngIf=\"tableDataConfig.isIcon\">\n <div class=\"py-3 px-4 mr-4 rounded-full\" [style.color]=\"tableDataConfig.iconColor\"\n [style.backgroundColor]=\"tableDataConfig.iconBackgroundColor\" >\n <i [class]=\"tableDataConfig.iconName\"></i>\n\n </div>\n <div>\n <p class=\"mb-2 text-sm font-medium text-gray-600 dark:text-gray-200\">\n {{tableDataConfig.iconText}}\n </p>\n <p class=\"font-semibold\" [style.color]=\"tableDataConfig.color\"\n [style.font-size.px]=\"tableDataConfig.size || 16\">\n {{jsaonDatasource[tableDataConfig.columns[0].dataField]}}\n </p>\n </div>\n </div>\n\n <div class=\"flex flex-row justify-center items-start \n bg-gray-200 dark:bg-gray-800 \n text-gray-900 dark:text-gray-100 \n p-4 mx-2 text-center transition-colors duration-300 border border-r\" *ngIf=\"!tableDataConfig.isIcon\">\n <ng-container *ngIf=\"!isLoader\">\n <div class=\"flex justify-center items-center font-bold p-2\"\n [style.color]=\"tableDataConfig.color\" [style.font-size.px]=\"tableDataConfig.size || 16\">\n {{jsaonDatasource[tableDataConfig.columns[0].dataField]}}\n </div>\n </ng-container>\n </div>\n </ng-container>\n</div>\n<div class=\"w-full mx-2 border-r\">\n <div class=\"mb-4 border-b border-gray-200 dark:border-gray-700\">\n <ul class=\"flex flex-wrap -mb-px text-sm font-medium text-center\" role=\"tablist\">\n <li class=\"me-2\" role=\"presentation\">\n <button class=\"inline-block p-4 border-b-2 rounded-t-lg\" [ngClass]=\"{\n 'text-purple-600 border-purple-600 dark:text-purple-500 dark:border-purple-500': activeTab === 'basic',\n 'text-gray-500 dark:text-gray-400 border-transparent': activeTab !== 'basic'\n }\" (click)=\"setActiveTab('basic')\" type=\"button\" role=\"tab\">\n Basic\n </button>\n </li>\n <li class=\"me-2\" role=\"presentation\">\n <button class=\"inline-block p-4 border-b-2 rounded-t-lg\" [ngClass]=\"{\n 'text-purple-600 border-purple-600 dark:text-purple-500 dark:border-purple-500': activeTab === 'columns',\n 'text-gray-500 dark:text-gray-400 border-transparent': activeTab !== 'columns'\n }\" (click)=\"setActiveTab('columns')\" type=\"button\" role=\"tab\">\n Columns\n </button>\n </li>\n <li class=\"me-2\" role=\"presentation\">\n <button class=\"inline-block p-4 border-b-2 rounded-t-lg\" [ngClass]=\"{\n 'text-purple-600 border-purple-600 dark:text-purple-500 dark:border-purple-500': activeTab === 'properties',\n 'text-gray-500 dark:text-gray-400 border-transparent': activeTab !== 'properties'\n }\" (click)=\"setActiveTab('properties')\" type=\"button\" role=\"tab\">\n Properties\n </button>\n </li>\n\n </ul>\n </div>\n\n <div id=\"default-styled-tab-content\">\n <div *ngIf=\"activeTab === 'basic'\">\n <div class=\"flex flex-row \">\n\n <div class=\"px-1 mb-1 w-full\">\n <div class=\"text-md mb-2\"> Key To Pass </div>\n <dx-tag-box [items]=\"configColume\"\n [(ngModel)]=\"table_columns_config.kpiConfig.keyToPass\"></dx-tag-box>\n </div>\n <div class=\"px-1 mb-1 w-full\">\n <div class=\"text-md mb-2\"> Display Formate </div>\n <dx-select-box [items]=\"['daily','hourly','monthly']\"\n [(ngModel)]=\"table_columns_config.kpiConfig.formate\"></dx-select-box>\n </div>\n\n <div class=\"px-1 mb-1 w-full\">\n <div class=\"text-md mb-2\"> Sort By </div>\n <dx-tag-box [items]=\"configColume\" [(ngModel)]=\"tableDataConfig.sortBy\"></dx-tag-box>\n </div>\n\n </div>\n <div class=\"flex flex-row mt-2\">\n <div class=\"px-1 mb-2 w-full\">\n <div class=\"text-md mb-2\">Color</div>\n <dx-color-box [(ngModel)]=\"tableDataConfig.color\"></dx-color-box>\n\n </div>\n <div class=\"px-1 mb-1 w-full\">\n <div class=\"text-md mb-2\">Font Size</div>\n <dx-number-box placeholder=\"Enter size\" [(ngModel)]=\"tableDataConfig.size\"></dx-number-box>\n\n </div>\n\n <div class=\"px-1 mb-1 w-full\">\n <div class=\"text-md mt-8\"> </div>\n <dx-check-box text=\"Enable Icon\" [(ngModel)]=\"tableDataConfig.isIcon\"></dx-check-box>\n </div>\n </div>\n <div class=\"flex flex-row mt-2\" *ngIf=\"tableDataConfig.isIcon\">\n <div class=\"px-1 mb-1 w-full\">\n <div class=\"text-md mb-2\">Icon Name </div>\n <dx-text-box placeholder=\"Enter fontawsome Icon\"\n [(ngModel)]=\"tableDataConfig.iconName\"></dx-text-box>\n </div>\n <div class=\"px-1 mb-2 w-full\">\n <div class=\"text-md mb-2\">Icon Color</div>\n <dx-color-box [(ngModel)]=\"tableDataConfig.iconColor\"></dx-color-box>\n\n </div>\n <div class=\"px-1 mb-2 w-full\">\n <div class=\"text-md mb-2\">Icon Background Color</div>\n <dx-color-box [(ngModel)]=\"tableDataConfig.iconBackgroundColor\"></dx-color-box>\n\n </div>\n <div class=\"px-1 mb-1 w-full\">\n <div class=\"text-md mb-2\">Content</div>\n <dx-text-box placeholder=\"Enter Supporting Content\"\n [(ngModel)]=\"tableDataConfig.iconText\"></dx-text-box>\n </div>\n\n </div>\n\n </div>\n <div *ngIf=\"activeTab === 'columns'\">\n <div class=\"h-full overflow-x-auto\">\n <div class=\"flex flex-col flex-auto min-w-0\">\n\n <div class=\"pt-2 border-x border-b \">\n <div class=\"my-2 border-b flex flex-row\"\n *ngFor=\"let item of tableDataConfig.columns; let i = index;\">\n <div class=\"px-1 mb-2 mt-6 w-full\">\n <dx-check-box [(ngModel)]=\"item.visible\" text=\"Visiblity\"></dx-check-box>\n </div>\n\n <div class=\"px-1 mb-2 w-full\">\n <div class=\"text-md mb-2\"> Value Field</div>\n <dx-select-box [searchEnabled]=\"true\" [items]=\"configColume\"\n [(ngModel)]=\"item.dataField\"></dx-select-box>\n </div>\n <div class=\"px-1 mb-2 w-full\">\n <div class=\"text-md mb-2\"> Caption</div>\n <dx-text-box [(ngModel)]=\"item.caption\"></dx-text-box>\n </div>\n <div class=\"px-2 mb-2 w-full\">\n <div class=\"text-md mb-2\"> UI Function</div>\n <dx-select-box [items]=\"enrichNameList\" [(ngModel)]=\"item.enrichName\"\n [searchEnabled]=\"true\"></dx-select-box>\n </div>\n <div class=\"text-center mt-8 w-full\">\n <button *ngIf=\"i !== 0\" class=\"{{commonService.btn_light_sm}} cursor-pointer mx-1\"\n (click)=\"moveItemForColumns(i, 'up')\">\n <i class=\"fa fa-arrow-up\" aria-hidden=\"true\"></i>\n </button>\n\n <button *ngIf=\"i !== tableDataConfig.columns.length - 1\"\n class=\"{{commonService.btn_light_sm}} cursor-pointer mx-1\"\n (click)=\"moveItemForColumns(i, 'down')\">\n <i class=\"fa fa-arrow-down\" aria-hidden=\"true\"></i>\n </button>\n <button class=\"{{commonService.btn_danger_sm}} cursor-pointer\"\n (click)=\"deleteColumns(i)\"><i class=\"fa fa-trash-o\" aria-hidden=\"true\"></i>\n </button>\n </div>\n\n </div>\n </div>\n </div>\n <div class=\"flex flex-row justify-end my-2\">\n <button class=\"{{commonService.btn_primary_sm}} cursor-pointer\" (click)=\"addColumns()\">Add\n Columns</button>\n </div>\n </div>\n </div>\n <div *ngIf=\"activeTab === 'properties'\">\n <div class=\"h-full overflow-x-auto\">\n <app-loader *ngIf=\"isLoader\"></app-loader>\n <ng-container *ngIf=\"!isLoader\">\n <div class=\"flex flex-row justify-between border-b py-3\">\n <div class=\"mx-2\">\n <dx-check-box [value]=\"viewProperties.enableClickEvent\"\n [(ngModel)]=\"viewProperties.enableClickEvent\" text=\"Enable Click Event\"></dx-check-box>\n </div>\n <div class=\"mx-2\">\n <dx-check-box [value]=\"viewProperties.enableRightClickEvent\"\n [(ngModel)]=\"viewProperties.enableRightClickEvent\"\n text=\"Enable Right Click\"></dx-check-box>\n </div>\n </div>\n <div class=\"w-full p-2\" *ngIf=\"viewProperties.enableClickEvent\">\n\n <div class=\"flex flex-col flex-auto min-w-0 my-2\">\n <div class=\"text-sm py-1 font-extrabold border-b bg-gray-700 text-white px-2\"> Event\n Type\n Option\n </div>\n <div class=\"w-full p-3 border-x border-b \">\n <div class=\"flex flex-row\">\n <div class=\"w-full\">\n <div class=\"text-md mb-2\"> Event Type</div>\n </div>\n <div class=\"w-full\">\n <dx-select-box [items]=\"['drilldown','sameViewDrilldown','optionalDrillDown']\"\n (onValueChanged)=\"getSelectedEventType($event)\"\n [(ngModel)]=\"viewProperties.clickEventOptions.eventType\"></dx-select-box>\n </div>\n </div>\n <ng-container *ngIf=\"viewProperties.clickEventOptions.eventType == 'drilldown'\">\n <div class=\"flex flex-row justify-between mt-3\">\n <div class=\"w-full\">\n <div class=\"text-md mb-2\"> Associated Views</div>\n <dx-tag-box [items]=\"allConfiguredViews\"\n [(ngModel)]=\"viewProperties.clickEventOptions.associatedViews\"\n valueExpr=\"viewId\" displayExpr=\"viewName\" [showSelectionControls]=\"true\"\n [searchEnabled]=\"true\"></dx-tag-box>\n </div>\n </div>\n </ng-container>\n <ng-container *ngIf=\"viewProperties.clickEventOptions.eventType == 'sameViewDrilldown'\">\n <div class=\"flex flex-row justify-between mt-3\">\n <div class=\"w-full\">\n <div class=\"text-md mb-2\"> Associated Views</div>\n <dx-tag-box [items]=\"allConfiguredViews\"\n [(ngModel)]=\"viewProperties.clickEventOptions.associatedViews\"\n valueExpr=\"viewId\" displayExpr=\"viewName\" [showSelectionControls]=\"true\"\n [searchEnabled]=\"true\"></dx-tag-box>\n </div>\n </div>\n </ng-container>\n <ng-container *ngIf=\"viewProperties.clickEventOptions.eventType == 'optionalDrillDown'\">\n <div class=\"flex flex-row justify-between mt-3\">\n <div class=\"w-full\">\n <ng-container\n *ngFor=\"let item of optionalDrilDownDataSource;let i = index;\">\n\n <div class=\"flex flex-row justify-between\">\n <div class=\"mx-2 w-1/2\">\n <div class=\"text-md mb-2\"> Associated Views</div>\n <dx-tag-box [items]=\"allConfiguredViews\"\n [(ngModel)]=\"item.viewId\" valueExpr=\"viewId\"\n displayExpr=\"viewName\" [showSelectionControls]=\"true\"\n [maxDisplayedTags]=\"2\" [searchEnabled]=\"true\"></dx-tag-box>\n\n </div>\n <div class=\"mx-2 w-1/2\">\n <div class=\"text-md mb-2\"> Associated Params</div>\n <dx-text-box [(ngModel)]=\"item.filterCondition\"></dx-text-box>\n </div>\n <div class=\"mx-2\">\n <button\n class=\"{{commonService.btn_danger_sm}} cursor-pointer mt-8\"\n (click)=\"deleteAssociatedParams(i)\"><i class=\"fa fa-trash-o\"\n aria-hidden=\"true\"></i>\n </button>\n </div>\n </div>\n </ng-container>\n <div class=\"flex flex-row justify-end mt-4\">\n <button class=\"{{commonService.btn_primary_sm}} cursor-pointer\"\n (click)=\"addAssociatedParams()\">Add\n Params</button>\n </div>\n </div>\n </div>\n </ng-container>\n <button class=\"{{commonService.btn_light_md}} cursor-pointer mt-4\"\n (click)=\"resetViewProprstise()\">Reset All Event</button>\n </div>\n </div>\n\n </div>\n </ng-container>\n </div>\n </div>\n\n </div>\n</div>\n\n\n<div class=\"flex flex-row border-t pl-3\">\n <div class=\"flex justify-start mx-1\">\n <button class=\"{{commonService.btn_warning_md}} cursor-pointer mt-2\" (click)=\"isJsonPreview = true\">\n Preview</button>\n <button class=\"{{commonService.btn_primary_md}} cursor-pointer mt-2\" (click)=\"isJsonPreview = false\">Data\n Preview</button>\n </div>\n <div class=\"flex justify-end mx-1 flex-grow\">\n <button class=\"{{commonService.btn_success_md}} cursor-pointer mt-2\" (click)=\"getSaveConfig()\">Submit</button>\n </div>\n</div>", styles: [""], dependencies: [{ kind: "directive", type: i4$2.NgClass, selector: "[ngClass]", inputs: ["class", "ngClass"] }, { kind: "directive", type: i4$2.NgForOf, selector: "[ngFor][ngForOf]", inputs: ["ngForOf", "ngForTrackBy", "ngForTemplate"] }, { kind: "directive", type: i4$2.NgIf, selector: "[ngIf]", inputs: ["ngIf", "ngIfThen", "ngIfElse"] }, { kind: "component", type: i5$1.DxCheckBoxComponent, selector: "dx-check-box", inputs: ["accessKey", "activeStateEnabled", "disabled", "elementAttr", "focusStateEnabled", "height", "hint", "hoverStateEnabled", "iconSize", "isValid", "name", "readOnly", "rtlEnabled", "tabIndex", "text", "validationError", "validationErrors", "validationMessageMode", "validationStatus", "value", "visible", "width"], outputs: ["onContentReady", "onDisposing", "onInitialized", "onOptionChanged", "onValueChanged", "accessKeyChange", "activeStateEnabledChange", "disabledChange", "elementAttrChange", "focusStateEnabledChange", "heightChange", "hintChange", "hoverStateEnabledChange", "iconSizeChange", "isValidChange", "nameChange", "readOnlyChange", "rtlEnabledChange", "tabIndexChange", "textChange", "validationErrorChange", "validationErrorsChange", "validationMessageModeChange", "validationStatusChange", "valueChange", "visibleChange", "widthChange", "onBlur"] }, { kind: "component", type: i6$2.DxColorBoxComponent, selector: "dx-color-box", inputs: ["acceptCustomValue", "accessKey", "activeStateEnabled", "applyButtonText", "applyValueMode", "buttons", "cancelButtonText", "deferRendering", "disabled", "dropDownButtonTemplate", "dropDownOptions", "editAlphaChannel", "elementAttr", "fieldTemplate", "focusStateEnabled", "height", "hint", "hoverStateEnabled", "inputAttr", "isValid", "keyStep", "label", "labelMode", "name", "opened", "openOnFieldClick", "placeholder", "readOnly", "rtlEnabled", "showClearButton", "showDropDownButton", "stylingMode", "tabIndex", "text", "validationError", "validationErrors", "validationMessageMode", "validationStatus", "value", "visible", "width"], outputs: ["onChange", "onClosed", "onCopy", "onCut", "onDisposing", "onEnterKey", "onFocusIn", "onFocusOut", "onInitialized", "onInput", "onKeyDown", "onKeyUp", "onOpened", "onOptionChanged", "onPaste", "onValueChanged", "acceptCustomValueChange", "accessKeyChange", "activeStateEnabledChange", "applyButtonTextChange", "applyValueModeChange", "buttonsChange", "cancelButtonTextChange", "deferRenderingChange", "disabledChange", "dropDownButtonTemplateChange", "dropDownOptionsChange", "editAlphaChannelChange", "elementAttrChange", "fieldTemplateChange", "focusStateEnabledChange", "heightChange", "hintChange", "hoverStateEnabledChange", "inputAttrChange", "isValidChange", "keyStepChange", "labelChange", "labelModeChange", "nameChange", "openedChange", "openOnFieldClickChange", "placeholderChange", "readOnlyChange", "rtlEnabledChange", "showClearButtonChange", "showDropDownButtonChange", "stylingModeChange", "tabIndexChange", "textChange", "validationErrorChange", "validationErrorsChange", "validationMessageModeChange", "validationStatusChange", "valueChange", "visibleChange", "widthChange", "onBlur"] }, { kind: "component", type: i7$1.DxNumberBoxComponent, selector: "dx-number-box", inputs: ["accessKey", "activeStateEnabled", "buttons", "disabled", "elementAttr", "focusStateEnabled", "format", "height", "hint", "hoverStateEnabled", "inputAttr", "invalidValueMessage", "isValid", "label", "labelMode", "max", "min", "mode", "name", "placeholder", "readOnly", "rtlEnabled", "showClearButton", "showSpinButtons", "step", "stylingMode", "tabIndex", "text", "useLargeSpinButtons", "validationError", "validationErrors", "validationMessageMode", "validationStatus", "value", "valueChangeEvent", "visible", "width"], outputs: ["onChange", "onContentReady", "onCopy", "onCut", "onDisposing", "onEnterKey", "onFocusIn", "onFocusOut", "onInitialized", "onInput", "onKeyDown", "onKeyUp", "onOptionChanged", "onPaste", "onValueChanged", "accessKeyChange", "activeStateEnabledChange", "buttonsChange", "disabledChange", "elementAttrChange", "focusStateEnabledChange", "formatChange", "heightChange", "hintChange", "hoverStateEnabledChange", "inputAttrChange", "invalidValueMessageChange", "isValidChange", "labelChange", "labelModeChange", "maxChange", "minChange", "modeChange", "nameChange", "placeholderChange", "readOnlyChange", "rtlEnabledChange", "showClearButtonChange", "showSpinButtonsChange", "stepChange", "stylingModeChange", "tabIndexChange", "textChange", "useLargeSpinButtonsChange", "validationErrorChange", "validationErrorsChange", "validationMessageModeChange", "validationStatusChange", "valueChange", "valueChangeEventChange", "visibleChange", "widthChange", "onBlur"] }, { kind: "component", type: i6$1.DxSelectBoxComponent, selector: "dx-select-box", inputs: ["acceptCustomValue", "accessKey", "activeStateEnabled", "buttons", "dataSource", "deferRendering", "disabled", "displayExpr", "displayValue", "dropDownButtonTemplate", "dropDownOptions", "elementAttr", "fieldTemplate", "focusStateEnabled", "grouped", "groupTemplate", "height", "hint", "hoverStateEnabled", "inputAttr", "isValid", "items", "itemTemplate", "label", "labelMode", "maxLength", "minSearchLength", "name", "noDataText", "opened", "openOnFieldClick", "placeholder", "readOnly", "rtlEnabled", "searchEnabled", "searchExpr", "searchMode", "searchTimeout", "selectedItem", "showClearButton", "showDataBeforeSearch", "showDropDownButton", "showSelectionControls", "spellcheck", "stylingMode", "tabIndex", "text", "useItemTextAsTitle", "validationError", "validationErrors", "validationMessageMode", "validationStatus", "value", "valueChangeEvent", "valueExpr", "visible", "width", "wrapItemText"], outputs: ["onChange", "onClosed", "onContentReady", "onCopy", "onCustomItemCreating", "onCut", "onDisposing", "onEnterKey", "onFocusIn", "onFocusOut", "onInitialized", "onInput", "onItemClick", "onKeyDown", "onKeyUp", "onOpened", "onOptionChanged", "onPaste", "onSelectionChanged", "onValueChanged", "acceptCustomValueChange", "accessKeyChange", "activeStateEnabledChange", "buttonsChange", "dataSourceChange", "deferRenderingChange", "disabledChange", "displayExprChange", "displayValueChange", "dropDownButtonTemplateChange", "dropDownOptionsChange", "elementAttrChange", "fieldTemplateChange", "focusStateEnabledChange", "groupedChange", "groupTemplateChange", "heightChange", "hintChange", "hoverStateEnabledChange", "inputAttrChange", "isValidChange", "itemsChange", "itemTemplateChange", "labelChange", "labelModeChange", "maxLengthChange", "minSearchLengthChange", "nameChange", "noDataTextChange", "openedChange", "openOnFieldClickChange", "placeholderChange", "readOnlyChange", "rtlEnabledChange", "searchEnabledChange", "searchExprChange", "searchModeChange", "searchTimeoutChange", "selectedItemChange", "showClearButtonChange", "showDataBeforeSearchChange", "showDropDownButtonChange", "showSelectionControlsChange", "spellcheckChange", "stylingModeChange", "tabIndexChange", "textChange", "useItemTextAsTitleChange", "validationErrorChange", "validationErrorsChange", "validationMessageModeChange", "validationStatusChange", "valueChange", "valueChangeEventChange", "valueExprChange", "visibleChange", "widthChange", "wrapItemTextChange", "onBlur"] }, { kind: "component", type: i9$2.DxTagBoxComponent, selector: "dx-tag-box", inputs: ["acceptCustomValue", "accessKey", "activeStateEnabled", "applyValueMode", "buttons", "dataSource", "deferRendering", "disabled", "displayExpr", "dropDownButtonTemplate", "dropDownOptions", "elementAttr", "fieldTemplate", "focusStateEnabled", "grouped", "groupTemplate", "height", "hideSelectedItems", "hint", "hoverStateEnabled", "inputAttr", "isValid", "items", "itemTemplate", "label", "labelMode", "maxDisplayedTags", "maxFilterQueryLength", "maxLength", "minSearchLength", "multiline", "name", "noDataText", "opened", "openOnFieldClick", "placeholder", "readOnly", "rtlEnabled", "searchEnabled", "searchExpr", "searchMode", "searchTimeout", "selectAllMode", "selectAllText", "selectedItems", "showClearButton", "showDataBeforeSearch", "showDropDownButton", "showMultiTagOnly", "showSelectionControls", "stylingMode", "tabIndex", "tagTemplate", "text", "useItemTextAsTitle", "validationError", "validationErrors", "validationMessageMode", "validationStatus", "value", "valueExpr", "visible", "width", "wrapItemText"], outputs: ["onChange", "onClosed", "onContentReady", "onCustomItemCreating", "onDisposing", "onEnterKey", "onFocusIn", "onFocusOut", "onInitialized", "onInput", "onItemClick", "onKeyDown", "onKeyUp", "onMultiTagPreparing", "onOpened", "onOptionChanged", "onSelectAllValueChanged", "onSelectionChanged", "onValueChanged", "acceptCustomValueChange", "accessKeyChange", "activeStateEnabledChange", "applyValueModeChange", "buttonsChange", "dataSourceChange", "deferRenderingChange", "disabledChange", "displayExprChange", "dropDownButtonTemplateChange", "dropDownOptionsChange", "elementAttrChange", "fieldTemplateChange", "focusStateEnabledChange", "groupedChange", "groupTemplateChange", "heightChange", "hideSelectedItemsChange", "hintChange", "hoverStateEnabledChange", "inputAttrChange", "isValidChange", "itemsChange", "itemTemplateChange", "labelChange", "labelModeChange", "maxDisplayedTagsChange", "maxFilterQueryLengthChange", "maxLengthChange", "minSearchLengthChange", "multilineChange", "nameChange", "noDataTextChange", "openedChange", "openOnFieldClickChange", "placeholderChange", "readOnlyChange", "rtlEnabledChange", "searchEnabledChange", "searchExprChange", "searchModeChange", "searchTimeoutChange", "selectAllModeChange", "selectAllTextChange", "selectedItemsChange", "showClearButtonChange", "showDataBeforeSearchChange", "showDropDownButtonChange", "showMultiTagOnlyChange", "showSelectionControlsChange", "stylingModeChange", "tabIndexChange", "tagTemplateChange", "textChange", "useItemTextAsTitleChange", "validationErrorChange", "validationErrorsChange", "validationMessageModeChange", "validationStatusChange", "valueChange", "valueExprChange", "visibleChange", "widthChange", "wrapItemTextChange", "onBlur"] }, { kind: "component", type: i7.DxTextBoxComponent, selector: "dx-text-box", inputs: ["accessKey", "activeStateEnabled", "buttons", "disabled", "elementAttr", "focusStateEnabled", "height", "hint", "hoverStateEnabled", "inputAttr", "isValid", "label", "labelMode", "mask", "maskChar", "maskInvalidMessage", "maskRules", "maxLength", "mode", "name", "placeholder", "readOnly", "rtlEnabled", "showClearButton", "showMaskMode", "spellcheck", "stylingMode", "tabIndex", "text", "useMaskedValue", "validationError", "validationErrors", "validationMessageMode", "validationStatus", "value", "valueChangeEvent", "visible", "width"], outputs: ["onChange", "onContentReady", "onCopy", "onCut", "onDisposing", "onEnterKey", "onFocusIn", "onFocusOut", "onInitialized", "onInput", "onKeyDown", "onKeyUp", "onOptionChanged", "onPaste", "onValueChanged", "accessKeyChange", "activeStateEnabledChange", "buttonsChange", "disabledChange", "elementAttrChange", "focusStateEnabledChange", "heightChange", "hintChange", "hoverStateEnabledChange", "inputAttrChange", "isValidChange", "labelChange", "labelModeChange", "maskChange", "maskCharChange", "maskInvalidMessageChange", "maskRulesChange", "maxLengthChange", "modeChange", "nameChange", "placeholderChange", "readOnlyChange", "rtlEnabledChange", "showClearButtonChange", "showMaskModeChange", "spellcheckChange", "stylingModeChange", "tabIndexChange", "textChange", "useMaskedValueChange", "validationErrorChange", "validationErrorsChange", "validationMessageModeChange", "validationStatusChange", "valueChange", "valueChangeEventChange", "visibleChange", "widthChange", "onBlur"] }, { kind: "directive", type: i8.NgControlStatus, selector: "[formControlName],[ngModel],[formControl]" }, { kind: "directive", type: i8.NgModel, selector: "[ngModel]:not([formControlName]):not([formControl])", inputs: ["name", "disabled", "ngModel", "ngModelOptions"], outputs: ["ngModelChange"], exportAs: ["ngModel"] }, { kind: "component", type: LoaderComponent, selector: "app-loader" }, { kind: "pipe", type: i4$2.JsonPipe, name: "json" }] });
|
|
7877
|
+
SingleCardComponent.ɵcmp = i0.ɵɵngDeclareComponent({ minVersion: "14.0.0", version: "14.3.0", type: SingleCardComponent, selector: "lib-single-card", inputs: { chartconfigData: ["datasetmodal", "chartconfigData"] }, outputs: { getSingleCardConfigOutPut: "getSingleCardConfigOutPut" }, ngImport: i0, template: "<div class=\"m-2\"></div>\n<div class=\"w-full m-2 border-r\">\n <ng-container *ngIf=\"!isJsonPreview\">\n <pre><code>{{jsaonDatasource | json}}</code></pre>\n </ng-container>\n\n\n <ng-container *ngIf=\"isJsonPreview\">\n\n <!-- <div class=\"flex items-center p-4 bg-gray-200 dark:bg-gray-800 mx-2\n text-gray-900 dark:text-gray-100 rounded shadow-xs\" *ngIf=\"cardDataConfig.isIcon\">\n <div class=\"py-3 px-4 mr-4 rounded-full\" [style.color]=\"cardDataConfig.iconColor\"\n [style.backgroundColor]=\"cardDataConfig.iconBackgroundColor\">\n <i [class]=\"cardDataConfig.iconName\"></i>\n\n </div>\n <div>\n <p class=\"mb-2 text-sm font-medium text-gray-600 dark:text-gray-200\">\n {{cardDataConfig.iconText}}\n </p>\n <p class=\"font-semibold\" [style.color]=\"cardDataConfig.color\"\n [style.font-size.px]=\"cardDataConfig.size || 16\">\n {{jsaonDatasource[cardDataConfig.columns[0].dataField]}}\n </p>\n </div>\n </div>\n\n <div class=\"flex flex-row justify-center items-start \n bg-gray-200 dark:bg-gray-800 \n text-gray-900 dark:text-gray-100 \n p-4 mx-2 text-center transition-colors duration-300 border border-r\" *ngIf=\"!cardDataConfig.isIcon\">\n <ng-container *ngIf=\"!isLoader\">\n <div class=\"flex justify-center items-center font-bold p-2\" [style.color]=\"cardDataConfig.color\"\n [style.font-size.px]=\"cardDataConfig.size || 16\">\n {{jsaonDatasource[cardDataConfig.columns[0].dataField]}}\n </div>\n </ng-container>\n </div> -->\n <app-gamm-single-number-card [chartDataSource]=\"cardDataSourceModel\"></app-gamm-single-number-card>\n </ng-container>\n</div>\n<div class=\"w-full mx-2 border-r\">\n <div class=\"mb-4 border-b border-gray-200 dark:border-gray-700\">\n <ul class=\"flex flex-wrap -mb-px text-sm font-medium text-center\" role=\"tablist\">\n <li class=\"me-2\" role=\"presentation\">\n <button class=\"inline-block p-4 border-b-2 rounded-t-lg\" [ngClass]=\"{\n 'text-purple-600 border-purple-600 dark:text-purple-500 dark:border-purple-500': activeTab === 'basic',\n 'text-gray-500 dark:text-gray-400 border-transparent': activeTab !== 'basic'\n }\" (click)=\"setActiveTab('basic')\" type=\"button\" role=\"tab\">\n Basic\n </button>\n </li>\n <li class=\"me-2\" role=\"presentation\">\n <button class=\"inline-block p-4 border-b-2 rounded-t-lg\" [ngClass]=\"{\n 'text-purple-600 border-purple-600 dark:text-purple-500 dark:border-purple-500': activeTab === 'columns',\n 'text-gray-500 dark:text-gray-400 border-transparent': activeTab !== 'columns'\n }\" (click)=\"setActiveTab('columns')\" type=\"button\" role=\"tab\">\n Columns\n </button>\n </li>\n <li class=\"me-2\" role=\"presentation\">\n <button class=\"inline-block p-4 border-b-2 rounded-t-lg\" [ngClass]=\"{\n 'text-purple-600 border-purple-600 dark:text-purple-500 dark:border-purple-500': activeTab === 'properties',\n 'text-gray-500 dark:text-gray-400 border-transparent': activeTab !== 'properties'\n }\" (click)=\"setActiveTab('properties')\" type=\"button\" role=\"tab\">\n Properties\n </button>\n </li>\n <li class=\"me-2\" role=\"presentation\">\n <button class=\"inline-block p-4 border-b-2 rounded-t-lg\" [ngClass]=\"{\n 'text-purple-600 border-purple-600 dark:text-purple-500 dark:border-purple-500': activeTab === 'permission',\n 'text-gray-500 dark:text-gray-400 border-transparent': activeTab !== 'permission'\n }\" (click)=\"setActiveTab('permission')\" type=\"button\" role=\"tab\">\n Manage Permissions\n </button>\n </li>\n\n </ul>\n </div>\n\n <div id=\"default-styled-tab-content\">\n <div *ngIf=\"activeTab === 'basic'\">\n <div class=\"flex flex-row \">\n\n <div class=\"px-1 mb-1 w-full\">\n <div class=\"text-md mb-2\"> Key To Pass </div>\n <dx-tag-box [items]=\"configColume\"\n [(ngModel)]=\"cardMainComponentObject.kpiConfig.keyToPass\"></dx-tag-box>\n </div>\n <div class=\"px-1 mb-1 w-full\">\n <div class=\"text-md mb-2\"> Display Formate </div>\n <dx-select-box [items]=\"['daily','hourly','monthly']\"\n [(ngModel)]=\"cardMainComponentObject.kpiConfig.formate\"></dx-select-box>\n </div>\n\n <div class=\"px-1 mb-1 w-full\">\n <div class=\"text-md mb-2\"> Sort By </div>\n <dx-tag-box [items]=\"configColume\" [(ngModel)]=\"cardDataConfig.sortBy\"></dx-tag-box>\n </div>\n\n </div>\n <div class=\"flex flex-row mt-2\">\n <div class=\"px-1 mb-2 w-full\">\n <div class=\"text-md mb-2\">Color</div>\n <dx-color-box [(ngModel)]=\"cardDataConfig.color\"></dx-color-box>\n\n </div>\n <div class=\"px-1 mb-1 w-full\">\n <div class=\"text-md mb-2\">Font Size</div>\n <dx-number-box placeholder=\"Enter size\" [(ngModel)]=\"cardDataConfig.size\"></dx-number-box>\n\n </div>\n\n <div class=\"px-1 mb-1 w-full\">\n <div class=\"text-md mt-8\"> </div>\n <dx-check-box text=\"Enable Icon\" [(ngModel)]=\"cardDataConfig.isIcon\"></dx-check-box>\n </div>\n </div>\n <div class=\"flex flex-row mt-2\" *ngIf=\"cardDataConfig.isIcon\">\n <div class=\"px-1 mb-1 w-full\">\n <div class=\"text-md mb-2\">Icon Name </div>\n <dx-text-box placeholder=\"Enter fontawsome Icon\"\n [(ngModel)]=\"cardDataConfig.iconName\"></dx-text-box>\n </div>\n <div class=\"px-1 mb-2 w-full\">\n <div class=\"text-md mb-2\">Icon Color</div>\n <dx-color-box [(ngModel)]=\"cardDataConfig.iconColor\"></dx-color-box>\n\n </div>\n <div class=\"px-1 mb-2 w-full\">\n <div class=\"text-md mb-2\">Icon Background Color</div>\n <dx-color-box [(ngModel)]=\"cardDataConfig.iconBackgroundColor\"></dx-color-box>\n\n </div>\n <div class=\"px-1 mb-1 w-full\">\n <div class=\"text-md mb-2\">Content</div>\n <dx-text-box placeholder=\"Enter Supporting Content\"\n [(ngModel)]=\"cardDataConfig.iconText\"></dx-text-box>\n </div>\n\n </div>\n\n </div>\n <div *ngIf=\"activeTab === 'columns'\">\n <div class=\"h-full overflow-x-auto\">\n <div class=\"flex flex-col flex-auto min-w-0\">\n\n <div class=\"pt-2 border-x border-b \">\n <div class=\"my-2 border-b flex flex-row\"\n *ngFor=\"let item of cardDataConfig.columns; let i = index;\">\n <div class=\"px-1 mb-2 mt-6 w-full\">\n <dx-check-box [(ngModel)]=\"item.visible\" text=\"Visiblity\"></dx-check-box>\n </div>\n\n <div class=\"px-1 mb-2 w-full\">\n <div class=\"text-md mb-2\"> Value Field</div>\n <dx-select-box [searchEnabled]=\"true\" [items]=\"configColume\"\n [(ngModel)]=\"item.dataField\"></dx-select-box>\n </div>\n <div class=\"px-1 mb-2 w-full\">\n <div class=\"text-md mb-2\"> Caption</div>\n <dx-text-box [(ngModel)]=\"item.caption\"></dx-text-box>\n </div>\n <div class=\"px-2 mb-2 w-full\">\n <div class=\"text-md mb-2\"> UI Function</div>\n <dx-select-box [items]=\"enrichNameList\" [(ngModel)]=\"item.enrichName\"\n [searchEnabled]=\"true\"></dx-select-box>\n </div>\n <div class=\"text-center mt-8 w-full\">\n <button *ngIf=\"i !== 0\" class=\"{{commonService.btn_light_sm}} cursor-pointer mx-1\"\n (click)=\"moveItemForColumns(i, 'up')\">\n <i class=\"fa fa-arrow-up\" aria-hidden=\"true\"></i>\n </button>\n\n <button *ngIf=\"i !== cardDataConfig.columns.length - 1\"\n class=\"{{commonService.btn_light_sm}} cursor-pointer mx-1\"\n (click)=\"moveItemForColumns(i, 'down')\">\n <i class=\"fa fa-arrow-down\" aria-hidden=\"true\"></i>\n </button>\n <button class=\"{{commonService.btn_danger_sm}} cursor-pointer\"\n (click)=\"deleteColumns(i)\"><i class=\"fa fa-trash-o\" aria-hidden=\"true\"></i>\n </button>\n </div>\n\n </div>\n </div>\n </div>\n <div class=\"flex flex-row justify-end my-2\">\n <button class=\"{{commonService.btn_primary_sm}} cursor-pointer\" (click)=\"addColumns()\">Add\n Columns</button>\n </div>\n </div>\n </div>\n <div *ngIf=\"activeTab === 'properties'\">\n <div class=\"h-full overflow-x-auto\">\n <app-loader *ngIf=\"isLoader\"></app-loader>\n <ng-container *ngIf=\"!isLoader\">\n <div class=\"flex flex-row justify-between border-b py-3\">\n <div class=\"mx-2\">\n <dx-check-box [value]=\"viewProperties.enableClickEvent\"\n [(ngModel)]=\"viewProperties.enableClickEvent\" text=\"Enable Click Event\"></dx-check-box>\n </div>\n <div class=\"mx-2\">\n <dx-check-box [value]=\"viewProperties.enableRightClickEvent\"\n [(ngModel)]=\"viewProperties.enableRightClickEvent\"\n text=\"Enable Right Click\"></dx-check-box>\n </div>\n </div>\n <div class=\"w-full p-2\" *ngIf=\"viewProperties.enableClickEvent\">\n\n <div class=\"flex flex-col flex-auto min-w-0 my-2\">\n <div class=\"text-sm py-1 font-extrabold border-b bg-gray-700 text-white px-2\"> Event\n Type\n Option\n </div>\n <div class=\"w-full p-3 border-x border-b \">\n <div class=\"flex flex-row\">\n <div class=\"w-full\">\n <div class=\"text-md mb-2\"> Event Type</div>\n </div>\n <div class=\"w-full\">\n <dx-select-box [items]=\"['drilldown','sameViewDrilldown','optionalDrillDown']\"\n (onValueChanged)=\"getSelectedEventType($event)\"\n [(ngModel)]=\"viewProperties.clickEventOptions.eventType\"></dx-select-box>\n </div>\n </div>\n <ng-container *ngIf=\"viewProperties.clickEventOptions.eventType == 'drilldown'\">\n <div class=\"flex flex-row justify-between mt-3\">\n <div class=\"w-full\">\n <div class=\"text-md mb-2\"> Associated Views</div>\n <dx-tag-box [items]=\"allConfiguredViews\"\n [(ngModel)]=\"viewProperties.clickEventOptions.associatedViews\"\n valueExpr=\"viewId\" displayExpr=\"viewName\" [showSelectionControls]=\"true\"\n [searchEnabled]=\"true\"></dx-tag-box>\n </div>\n </div>\n </ng-container>\n <ng-container *ngIf=\"viewProperties.clickEventOptions.eventType == 'sameViewDrilldown'\">\n <div class=\"flex flex-row justify-between mt-3\">\n <div class=\"w-full\">\n <div class=\"text-md mb-2\"> Associated Views</div>\n <dx-tag-box [items]=\"allConfiguredViews\"\n [(ngModel)]=\"viewProperties.clickEventOptions.associatedViews\"\n valueExpr=\"viewId\" displayExpr=\"viewName\" [showSelectionControls]=\"true\"\n [searchEnabled]=\"true\"></dx-tag-box>\n </div>\n </div>\n </ng-container>\n <ng-container *ngIf=\"viewProperties.clickEventOptions.eventType == 'optionalDrillDown'\">\n <div class=\"flex flex-row justify-between mt-3\">\n <div class=\"w-full\">\n <ng-container\n *ngFor=\"let item of optionalDrilDownDataSource;let i = index;\">\n\n <div class=\"flex flex-row justify-between\">\n <div class=\"mx-2 w-1/2\">\n <div class=\"text-md mb-2\"> Associated Views</div>\n <dx-tag-box [items]=\"allConfiguredViews\"\n [(ngModel)]=\"item.viewId\" valueExpr=\"viewId\"\n displayExpr=\"viewName\" [showSelectionControls]=\"true\"\n [maxDisplayedTags]=\"2\" [searchEnabled]=\"true\"></dx-tag-box>\n\n </div>\n <div class=\"mx-2 w-1/2\">\n <div class=\"text-md mb-2\"> Associated Params</div>\n <dx-text-box [(ngModel)]=\"item.filterCondition\"></dx-text-box>\n </div>\n <div class=\"mx-2\">\n <button\n class=\"{{commonService.btn_danger_sm}} cursor-pointer mt-8\"\n (click)=\"deleteAssociatedParams(i)\"><i class=\"fa fa-trash-o\"\n aria-hidden=\"true\"></i>\n </button>\n </div>\n </div>\n </ng-container>\n <div class=\"flex flex-row justify-end mt-4\">\n <button class=\"{{commonService.btn_primary_sm}} cursor-pointer\"\n (click)=\"addAssociatedParams()\">Add\n Params</button>\n </div>\n </div>\n </div>\n </ng-container>\n <button class=\"{{commonService.btn_light_md}} cursor-pointer mt-4\"\n (click)=\"resetViewProprstise()\">Reset All Event</button>\n </div>\n </div>\n\n </div>\n </ng-container>\n </div>\n </div>\n\n <div *ngIf=\"activeTab === 'permission'\">\n <div class=\"h-full overflow-x-auto\">\n <app-user-access [(userOptionContainer)]=\"userOptionContainer\">\n </app-user-access>\n </div>\n </div>\n </div>\n</div>\n\n\n<div class=\"flex flex-row border-t pl-3\">\n <div class=\"flex justify-start mx-1\">\n <button class=\"{{commonService.btn_warning_md}} cursor-pointer mt-2\" (click)=\"isJsonPreview = true\">\n Preview</button>\n <button class=\"{{commonService.btn_primary_md}} cursor-pointer mt-2\" (click)=\"isJsonPreview = false\">Data\n Preview</button>\n </div>\n <div class=\"flex justify-end mx-1 flex-grow\">\n <button class=\"{{commonService.btn_success_md}} cursor-pointer mt-2\" (click)=\"getSaveConfig()\">Submit</button>\n </div>\n</div>", styles: [""], dependencies: [{ kind: "directive", type: i4$2.NgClass, selector: "[ngClass]", inputs: ["class", "ngClass"] }, { kind: "directive", type: i4$2.NgForOf, selector: "[ngFor][ngForOf]", inputs: ["ngForOf", "ngForTrackBy", "ngForTemplate"] }, { kind: "directive", type: i4$2.NgIf, selector: "[ngIf]", inputs: ["ngIf", "ngIfThen", "ngIfElse"] }, { kind: "component", type: i5$1.DxCheckBoxComponent, selector: "dx-check-box", inputs: ["accessKey", "activeStateEnabled", "disabled", "elementAttr", "focusStateEnabled", "height", "hint", "hoverStateEnabled", "iconSize", "isValid", "name", "readOnly", "rtlEnabled", "tabIndex", "text", "validationError", "validationErrors", "validationMessageMode", "validationStatus", "value", "visible", "width"], outputs: ["onContentReady", "onDisposing", "onInitialized", "onOptionChanged", "onValueChanged", "accessKeyChange", "activeStateEnabledChange", "disabledChange", "elementAttrChange", "focusStateEnabledChange", "heightChange", "hintChange", "hoverStateEnabledChange", "iconSizeChange", "isValidChange", "nameChange", "readOnlyChange", "rtlEnabledChange", "tabIndexChange", "textChange", "validationErrorChange", "validationErrorsChange", "validationMessageModeChange", "validationStatusChange", "valueChange", "visibleChange", "widthChange", "onBlur"] }, { kind: "component", type: i6$2.DxColorBoxComponent, selector: "dx-color-box", inputs: ["acceptCustomValue", "accessKey", "activeStateEnabled", "applyButtonText", "applyValueMode", "buttons", "cancelButtonText", "deferRendering", "disabled", "dropDownButtonTemplate", "dropDownOptions", "editAlphaChannel", "elementAttr", "fieldTemplate", "focusStateEnabled", "height", "hint", "hoverStateEnabled", "inputAttr", "isValid", "keyStep", "label", "labelMode", "name", "opened", "openOnFieldClick", "placeholder", "readOnly", "rtlEnabled", "showClearButton", "showDropDownButton", "stylingMode", "tabIndex", "text", "validationError", "validationErrors", "validationMessageMode", "validationStatus", "value", "visible", "width"], outputs: ["onChange", "onClosed", "onCopy", "onCut", "onDisposing", "onEnterKey", "onFocusIn", "onFocusOut", "onInitialized", "onInput", "onKeyDown", "onKeyUp", "onOpened", "onOptionChanged", "onPaste", "onValueChanged", "acceptCustomValueChange", "accessKeyChange", "activeStateEnabledChange", "applyButtonTextChange", "applyValueModeChange", "buttonsChange", "cancelButtonTextChange", "deferRenderingChange", "disabledChange", "dropDownButtonTemplateChange", "dropDownOptionsChange", "editAlphaChannelChange", "elementAttrChange", "fieldTemplateChange", "focusStateEnabledChange", "heightChange", "hintChange", "hoverStateEnabledChange", "inputAttrChange", "isValidChange", "keyStepChange", "labelChange", "labelModeChange", "nameChange", "openedChange", "openOnFieldClickChange", "placeholderChange", "readOnlyChange", "rtlEnabledChange", "showClearButtonChange", "showDropDownButtonChange", "stylingModeChange", "tabIndexChange", "textChange", "validationErrorChange", "validationErrorsChange", "validationMessageModeChange", "validationStatusChange", "valueChange", "visibleChange", "widthChange", "onBlur"] }, { kind: "component", type: i7$1.DxNumberBoxComponent, selector: "dx-number-box", inputs: ["accessKey", "activeStateEnabled", "buttons", "disabled", "elementAttr", "focusStateEnabled", "format", "height", "hint", "hoverStateEnabled", "inputAttr", "invalidValueMessage", "isValid", "label", "labelMode", "max", "min", "mode", "name", "placeholder", "readOnly", "rtlEnabled", "showClearButton", "showSpinButtons", "step", "stylingMode", "tabIndex", "text", "useLargeSpinButtons", "validationError", "validationErrors", "validationMessageMode", "validationStatus", "value", "valueChangeEvent", "visible", "width"], outputs: ["onChange", "onContentReady", "onCopy", "onCut", "onDisposing", "onEnterKey", "onFocusIn", "onFocusOut", "onInitialized", "onInput", "onKeyDown", "onKeyUp", "onOptionChanged", "onPaste", "onValueChanged", "accessKeyChange", "activeStateEnabledChange", "buttonsChange", "disabledChange", "elementAttrChange", "focusStateEnabledChange", "formatChange", "heightChange", "hintChange", "hoverStateEnabledChange", "inputAttrChange", "invalidValueMessageChange", "isValidChange", "labelChange", "labelModeChange", "maxChange", "minChange", "modeChange", "nameChange", "placeholderChange", "readOnlyChange", "rtlEnabledChange", "showClearButtonChange", "showSpinButtonsChange", "stepChange", "stylingModeChange", "tabIndexChange", "textChange", "useLargeSpinButtonsChange", "validationErrorChange", "validationErrorsChange", "validationMessageModeChange", "validationStatusChange", "valueChange", "valueChangeEventChange", "visibleChange", "widthChange", "onBlur"] }, { kind: "component", type: i6$1.DxSelectBoxComponent, selector: "dx-select-box", inputs: ["acceptCustomValue", "accessKey", "activeStateEnabled", "buttons", "dataSource", "deferRendering", "disabled", "displayExpr", "displayValue", "dropDownButtonTemplate", "dropDownOptions", "elementAttr", "fieldTemplate", "focusStateEnabled", "grouped", "groupTemplate", "height", "hint", "hoverStateEnabled", "inputAttr", "isValid", "items", "itemTemplate", "label", "labelMode", "maxLength", "minSearchLength", "name", "noDataText", "opened", "openOnFieldClick", "placeholder", "readOnly", "rtlEnabled", "searchEnabled", "searchExpr", "searchMode", "searchTimeout", "selectedItem", "showClearButton", "showDataBeforeSearch", "showDropDownButton", "showSelectionControls", "spellcheck", "stylingMode", "tabIndex", "text", "useItemTextAsTitle", "validationError", "validationErrors", "validationMessageMode", "validationStatus", "value", "valueChangeEvent", "valueExpr", "visible", "width", "wrapItemText"], outputs: ["onChange", "onClosed", "onContentReady", "onCopy", "onCustomItemCreating", "onCut", "onDisposing", "onEnterKey", "onFocusIn", "onFocusOut", "onInitialized", "onInput", "onItemClick", "onKeyDown", "onKeyUp", "onOpened", "onOptionChanged", "onPaste", "onSelectionChanged", "onValueChanged", "acceptCustomValueChange", "accessKeyChange", "activeStateEnabledChange", "buttonsChange", "dataSourceChange", "deferRenderingChange", "disabledChange", "displayExprChange", "displayValueChange", "dropDownButtonTemplateChange", "dropDownOptionsChange", "elementAttrChange", "fieldTemplateChange", "focusStateEnabledChange", "groupedChange", "groupTemplateChange", "heightChange", "hintChange", "hoverStateEnabledChange", "inputAttrChange", "isValidChange", "itemsChange", "itemTemplateChange", "labelChange", "labelModeChange", "maxLengthChange", "minSearchLengthChange", "nameChange", "noDataTextChange", "openedChange", "openOnFieldClickChange", "placeholderChange", "readOnlyChange", "rtlEnabledChange", "searchEnabledChange", "searchExprChange", "searchModeChange", "searchTimeoutChange", "selectedItemChange", "showClearButtonChange", "showDataBeforeSearchChange", "showDropDownButtonChange", "showSelectionControlsChange", "spellcheckChange", "stylingModeChange", "tabIndexChange", "textChange", "useItemTextAsTitleChange", "validationErrorChange", "validationErrorsChange", "validationMessageModeChange", "validationStatusChange", "valueChange", "valueChangeEventChange", "valueExprChange", "visibleChange", "widthChange", "wrapItemTextChange", "onBlur"] }, { kind: "component", type: i9$2.DxTagBoxComponent, selector: "dx-tag-box", inputs: ["acceptCustomValue", "accessKey", "activeStateEnabled", "applyValueMode", "buttons", "dataSource", "deferRendering", "disabled", "displayExpr", "dropDownButtonTemplate", "dropDownOptions", "elementAttr", "fieldTemplate", "focusStateEnabled", "grouped", "groupTemplate", "height", "hideSelectedItems", "hint", "hoverStateEnabled", "inputAttr", "isValid", "items", "itemTemplate", "label", "labelMode", "maxDisplayedTags", "maxFilterQueryLength", "maxLength", "minSearchLength", "multiline", "name", "noDataText", "opened", "openOnFieldClick", "placeholder", "readOnly", "rtlEnabled", "searchEnabled", "searchExpr", "searchMode", "searchTimeout", "selectAllMode", "selectAllText", "selectedItems", "showClearButton", "showDataBeforeSearch", "showDropDownButton", "showMultiTagOnly", "showSelectionControls", "stylingMode", "tabIndex", "tagTemplate", "text", "useItemTextAsTitle", "validationError", "validationErrors", "validationMessageMode", "validationStatus", "value", "valueExpr", "visible", "width", "wrapItemText"], outputs: ["onChange", "onClosed", "onContentReady", "onCustomItemCreating", "onDisposing", "onEnterKey", "onFocusIn", "onFocusOut", "onInitialized", "onInput", "onItemClick", "onKeyDown", "onKeyUp", "onMultiTagPreparing", "onOpened", "onOptionChanged", "onSelectAllValueChanged", "onSelectionChanged", "onValueChanged", "acceptCustomValueChange", "accessKeyChange", "activeStateEnabledChange", "applyValueModeChange", "buttonsChange", "dataSourceChange", "deferRenderingChange", "disabledChange", "displayExprChange", "dropDownButtonTemplateChange", "dropDownOptionsChange", "elementAttrChange", "fieldTemplateChange", "focusStateEnabledChange", "groupedChange", "groupTemplateChange", "heightChange", "hideSelectedItemsChange", "hintChange", "hoverStateEnabledChange", "inputAttrChange", "isValidChange", "itemsChange", "itemTemplateChange", "labelChange", "labelModeChange", "maxDisplayedTagsChange", "maxFilterQueryLengthChange", "maxLengthChange", "minSearchLengthChange", "multilineChange", "nameChange", "noDataTextChange", "openedChange", "openOnFieldClickChange", "placeholderChange", "readOnlyChange", "rtlEnabledChange", "searchEnabledChange", "searchExprChange", "searchModeChange", "searchTimeoutChange", "selectAllModeChange", "selectAllTextChange", "selectedItemsChange", "showClearButtonChange", "showDataBeforeSearchChange", "showDropDownButtonChange", "showMultiTagOnlyChange", "showSelectionControlsChange", "stylingModeChange", "tabIndexChange", "tagTemplateChange", "textChange", "useItemTextAsTitleChange", "validationErrorChange", "validationErrorsChange", "validationMessageModeChange", "validationStatusChange", "valueChange", "valueExprChange", "visibleChange", "widthChange", "wrapItemTextChange", "onBlur"] }, { kind: "component", type: i7.DxTextBoxComponent, selector: "dx-text-box", inputs: ["accessKey", "activeStateEnabled", "buttons", "disabled", "elementAttr", "focusStateEnabled", "height", "hint", "hoverStateEnabled", "inputAttr", "isValid", "label", "labelMode", "mask", "maskChar", "maskInvalidMessage", "maskRules", "maxLength", "mode", "name", "placeholder", "readOnly", "rtlEnabled", "showClearButton", "showMaskMode", "spellcheck", "stylingMode", "tabIndex", "text", "useMaskedValue", "validationError", "validationErrors", "validationMessageMode", "validationStatus", "value", "valueChangeEvent", "visible", "width"], outputs: ["onChange", "onContentReady", "onCopy", "onCut", "onDisposing", "onEnterKey", "onFocusIn", "onFocusOut", "onInitialized", "onInput", "onKeyDown", "onKeyUp", "onOptionChanged", "onPaste", "onValueChanged", "accessKeyChange", "activeStateEnabledChange", "buttonsChange", "disabledChange", "elementAttrChange", "focusStateEnabledChange", "heightChange", "hintChange", "hoverStateEnabledChange", "inputAttrChange", "isValidChange", "labelChange", "labelModeChange", "maskChange", "maskCharChange", "maskInvalidMessageChange", "maskRulesChange", "maxLengthChange", "modeChange", "nameChange", "placeholderChange", "readOnlyChange", "rtlEnabledChange", "showClearButtonChange", "showMaskModeChange", "spellcheckChange", "stylingModeChange", "tabIndexChange", "textChange", "useMaskedValueChange", "validationErrorChange", "validationErrorsChange", "validationMessageModeChange", "validationStatusChange", "valueChange", "valueChangeEventChange", "visibleChange", "widthChange", "onBlur"] }, { kind: "directive", type: i8.NgControlStatus, selector: "[formControlName],[ngModel],[formControl]" }, { kind: "directive", type: i8.NgModel, selector: "[ngModel]:not([formControlName]):not([formControl])", inputs: ["name", "disabled", "ngModel", "ngModelOptions"], outputs: ["ngModelChange"], exportAs: ["ngModel"] }, { kind: "component", type: UserAccessComponent, selector: "app-user-access", inputs: ["userOptionContainer"], outputs: ["userOptionContainerChange"] }, { kind: "component", type: LoaderComponent, selector: "app-loader" }, { kind: "component", type: GammSingleNumberCardComponent, selector: "app-gamm-single-number-card", inputs: ["chartDataSource"] }, { kind: "pipe", type: i4$2.JsonPipe, name: "json" }] });
|
|
7792
7878
|
i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "14.3.0", ngImport: i0, type: SingleCardComponent, decorators: [{
|
|
7793
7879
|
type: Component,
|
|
7794
|
-
args: [{ selector: 'lib-single-card', template: "<div class=\"m-2\"></div>\n<div class=\"w-full m-2 border-r\">\n <ng-container *ngIf=\"!isJsonPreview\">\n <pre><code>{{jsaonDatasource | json}}</code></pre>\n </ng-container>\n\n\n <ng-container *ngIf=\"isJsonPreview\">\n\n <div class=\"flex items-center p-4 bg-gray-200 dark:bg-gray-800 mx-2\n text-gray-900 dark:text-gray-100 rounded shadow-xs\" *ngIf=\"tableDataConfig.isIcon\">\n <div class=\"py-3 px-4 mr-4 rounded-full\" [style.color]=\"tableDataConfig.iconColor\"\n [style.backgroundColor]=\"tableDataConfig.iconBackgroundColor\" >\n <i [class]=\"tableDataConfig.iconName\"></i>\n\n </div>\n <div>\n <p class=\"mb-2 text-sm font-medium text-gray-600 dark:text-gray-200\">\n {{tableDataConfig.iconText}}\n </p>\n <p class=\"font-semibold\" [style.color]=\"tableDataConfig.color\"\n [style.font-size.px]=\"tableDataConfig.size || 16\">\n {{jsaonDatasource[tableDataConfig.columns[0].dataField]}}\n </p>\n </div>\n </div>\n\n <div class=\"flex flex-row justify-center items-start \n bg-gray-200 dark:bg-gray-800 \n text-gray-900 dark:text-gray-100 \n p-4 mx-2 text-center transition-colors duration-300 border border-r\" *ngIf=\"!tableDataConfig.isIcon\">\n <ng-container *ngIf=\"!isLoader\">\n <div class=\"flex justify-center items-center font-bold p-2\"\n [style.color]=\"tableDataConfig.color\" [style.font-size.px]=\"tableDataConfig.size || 16\">\n {{jsaonDatasource[tableDataConfig.columns[0].dataField]}}\n </div>\n </ng-container>\n </div>\n </ng-container>\n</div>\n<div class=\"w-full mx-2 border-r\">\n <div class=\"mb-4 border-b border-gray-200 dark:border-gray-700\">\n <ul class=\"flex flex-wrap -mb-px text-sm font-medium text-center\" role=\"tablist\">\n <li class=\"me-2\" role=\"presentation\">\n <button class=\"inline-block p-4 border-b-2 rounded-t-lg\" [ngClass]=\"{\n 'text-purple-600 border-purple-600 dark:text-purple-500 dark:border-purple-500': activeTab === 'basic',\n 'text-gray-500 dark:text-gray-400 border-transparent': activeTab !== 'basic'\n }\" (click)=\"setActiveTab('basic')\" type=\"button\" role=\"tab\">\n Basic\n </button>\n </li>\n <li class=\"me-2\" role=\"presentation\">\n <button class=\"inline-block p-4 border-b-2 rounded-t-lg\" [ngClass]=\"{\n 'text-purple-600 border-purple-600 dark:text-purple-500 dark:border-purple-500': activeTab === 'columns',\n 'text-gray-500 dark:text-gray-400 border-transparent': activeTab !== 'columns'\n }\" (click)=\"setActiveTab('columns')\" type=\"button\" role=\"tab\">\n Columns\n </button>\n </li>\n <li class=\"me-2\" role=\"presentation\">\n <button class=\"inline-block p-4 border-b-2 rounded-t-lg\" [ngClass]=\"{\n 'text-purple-600 border-purple-600 dark:text-purple-500 dark:border-purple-500': activeTab === 'properties',\n 'text-gray-500 dark:text-gray-400 border-transparent': activeTab !== 'properties'\n }\" (click)=\"setActiveTab('properties')\" type=\"button\" role=\"tab\">\n Properties\n </button>\n </li>\n\n </ul>\n </div>\n\n <div id=\"default-styled-tab-content\">\n <div *ngIf=\"activeTab === 'basic'\">\n <div class=\"flex flex-row \">\n\n <div class=\"px-1 mb-1 w-full\">\n <div class=\"text-md mb-2\"> Key To Pass </div>\n <dx-tag-box [items]=\"configColume\"\n [(ngModel)]=\"table_columns_config.kpiConfig.keyToPass\"></dx-tag-box>\n </div>\n <div class=\"px-1 mb-1 w-full\">\n <div class=\"text-md mb-2\"> Display Formate </div>\n <dx-select-box [items]=\"['daily','hourly','monthly']\"\n [(ngModel)]=\"table_columns_config.kpiConfig.formate\"></dx-select-box>\n </div>\n\n <div class=\"px-1 mb-1 w-full\">\n <div class=\"text-md mb-2\"> Sort By </div>\n <dx-tag-box [items]=\"configColume\" [(ngModel)]=\"tableDataConfig.sortBy\"></dx-tag-box>\n </div>\n\n </div>\n <div class=\"flex flex-row mt-2\">\n <div class=\"px-1 mb-2 w-full\">\n <div class=\"text-md mb-2\">Color</div>\n <dx-color-box [(ngModel)]=\"tableDataConfig.color\"></dx-color-box>\n\n </div>\n <div class=\"px-1 mb-1 w-full\">\n <div class=\"text-md mb-2\">Font Size</div>\n <dx-number-box placeholder=\"Enter size\" [(ngModel)]=\"tableDataConfig.size\"></dx-number-box>\n\n </div>\n\n <div class=\"px-1 mb-1 w-full\">\n <div class=\"text-md mt-8\"> </div>\n <dx-check-box text=\"Enable Icon\" [(ngModel)]=\"tableDataConfig.isIcon\"></dx-check-box>\n </div>\n </div>\n <div class=\"flex flex-row mt-2\" *ngIf=\"tableDataConfig.isIcon\">\n <div class=\"px-1 mb-1 w-full\">\n <div class=\"text-md mb-2\">Icon Name </div>\n <dx-text-box placeholder=\"Enter fontawsome Icon\"\n [(ngModel)]=\"tableDataConfig.iconName\"></dx-text-box>\n </div>\n <div class=\"px-1 mb-2 w-full\">\n <div class=\"text-md mb-2\">Icon Color</div>\n <dx-color-box [(ngModel)]=\"tableDataConfig.iconColor\"></dx-color-box>\n\n </div>\n <div class=\"px-1 mb-2 w-full\">\n <div class=\"text-md mb-2\">Icon Background Color</div>\n <dx-color-box [(ngModel)]=\"tableDataConfig.iconBackgroundColor\"></dx-color-box>\n\n </div>\n <div class=\"px-1 mb-1 w-full\">\n <div class=\"text-md mb-2\">Content</div>\n <dx-text-box placeholder=\"Enter Supporting Content\"\n [(ngModel)]=\"tableDataConfig.iconText\"></dx-text-box>\n </div>\n\n </div>\n\n </div>\n <div *ngIf=\"activeTab === 'columns'\">\n <div class=\"h-full overflow-x-auto\">\n <div class=\"flex flex-col flex-auto min-w-0\">\n\n <div class=\"pt-2 border-x border-b \">\n <div class=\"my-2 border-b flex flex-row\"\n *ngFor=\"let item of tableDataConfig.columns; let i = index;\">\n <div class=\"px-1 mb-2 mt-6 w-full\">\n <dx-check-box [(ngModel)]=\"item.visible\" text=\"Visiblity\"></dx-check-box>\n </div>\n\n <div class=\"px-1 mb-2 w-full\">\n <div class=\"text-md mb-2\"> Value Field</div>\n <dx-select-box [searchEnabled]=\"true\" [items]=\"configColume\"\n [(ngModel)]=\"item.dataField\"></dx-select-box>\n </div>\n <div class=\"px-1 mb-2 w-full\">\n <div class=\"text-md mb-2\"> Caption</div>\n <dx-text-box [(ngModel)]=\"item.caption\"></dx-text-box>\n </div>\n <div class=\"px-2 mb-2 w-full\">\n <div class=\"text-md mb-2\"> UI Function</div>\n <dx-select-box [items]=\"enrichNameList\" [(ngModel)]=\"item.enrichName\"\n [searchEnabled]=\"true\"></dx-select-box>\n </div>\n <div class=\"text-center mt-8 w-full\">\n <button *ngIf=\"i !== 0\" class=\"{{commonService.btn_light_sm}} cursor-pointer mx-1\"\n (click)=\"moveItemForColumns(i, 'up')\">\n <i class=\"fa fa-arrow-up\" aria-hidden=\"true\"></i>\n </button>\n\n <button *ngIf=\"i !== tableDataConfig.columns.length - 1\"\n class=\"{{commonService.btn_light_sm}} cursor-pointer mx-1\"\n (click)=\"moveItemForColumns(i, 'down')\">\n <i class=\"fa fa-arrow-down\" aria-hidden=\"true\"></i>\n </button>\n <button class=\"{{commonService.btn_danger_sm}} cursor-pointer\"\n (click)=\"deleteColumns(i)\"><i class=\"fa fa-trash-o\" aria-hidden=\"true\"></i>\n </button>\n </div>\n\n </div>\n </div>\n </div>\n <div class=\"flex flex-row justify-end my-2\">\n <button class=\"{{commonService.btn_primary_sm}} cursor-pointer\" (click)=\"addColumns()\">Add\n Columns</button>\n </div>\n </div>\n </div>\n <div *ngIf=\"activeTab === 'properties'\">\n <div class=\"h-full overflow-x-auto\">\n <app-loader *ngIf=\"isLoader\"></app-loader>\n <ng-container *ngIf=\"!isLoader\">\n <div class=\"flex flex-row justify-between border-b py-3\">\n <div class=\"mx-2\">\n <dx-check-box [value]=\"viewProperties.enableClickEvent\"\n [(ngModel)]=\"viewProperties.enableClickEvent\" text=\"Enable Click Event\"></dx-check-box>\n </div>\n <div class=\"mx-2\">\n <dx-check-box [value]=\"viewProperties.enableRightClickEvent\"\n [(ngModel)]=\"viewProperties.enableRightClickEvent\"\n text=\"Enable Right Click\"></dx-check-box>\n </div>\n </div>\n <div class=\"w-full p-2\" *ngIf=\"viewProperties.enableClickEvent\">\n\n <div class=\"flex flex-col flex-auto min-w-0 my-2\">\n <div class=\"text-sm py-1 font-extrabold border-b bg-gray-700 text-white px-2\"> Event\n Type\n Option\n </div>\n <div class=\"w-full p-3 border-x border-b \">\n <div class=\"flex flex-row\">\n <div class=\"w-full\">\n <div class=\"text-md mb-2\"> Event Type</div>\n </div>\n <div class=\"w-full\">\n <dx-select-box [items]=\"['drilldown','sameViewDrilldown','optionalDrillDown']\"\n (onValueChanged)=\"getSelectedEventType($event)\"\n [(ngModel)]=\"viewProperties.clickEventOptions.eventType\"></dx-select-box>\n </div>\n </div>\n <ng-container *ngIf=\"viewProperties.clickEventOptions.eventType == 'drilldown'\">\n <div class=\"flex flex-row justify-between mt-3\">\n <div class=\"w-full\">\n <div class=\"text-md mb-2\"> Associated Views</div>\n <dx-tag-box [items]=\"allConfiguredViews\"\n [(ngModel)]=\"viewProperties.clickEventOptions.associatedViews\"\n valueExpr=\"viewId\" displayExpr=\"viewName\" [showSelectionControls]=\"true\"\n [searchEnabled]=\"true\"></dx-tag-box>\n </div>\n </div>\n </ng-container>\n <ng-container *ngIf=\"viewProperties.clickEventOptions.eventType == 'sameViewDrilldown'\">\n <div class=\"flex flex-row justify-between mt-3\">\n <div class=\"w-full\">\n <div class=\"text-md mb-2\"> Associated Views</div>\n <dx-tag-box [items]=\"allConfiguredViews\"\n [(ngModel)]=\"viewProperties.clickEventOptions.associatedViews\"\n valueExpr=\"viewId\" displayExpr=\"viewName\" [showSelectionControls]=\"true\"\n [searchEnabled]=\"true\"></dx-tag-box>\n </div>\n </div>\n </ng-container>\n <ng-container *ngIf=\"viewProperties.clickEventOptions.eventType == 'optionalDrillDown'\">\n <div class=\"flex flex-row justify-between mt-3\">\n <div class=\"w-full\">\n <ng-container\n *ngFor=\"let item of optionalDrilDownDataSource;let i = index;\">\n\n <div class=\"flex flex-row justify-between\">\n <div class=\"mx-2 w-1/2\">\n <div class=\"text-md mb-2\"> Associated Views</div>\n <dx-tag-box [items]=\"allConfiguredViews\"\n [(ngModel)]=\"item.viewId\" valueExpr=\"viewId\"\n displayExpr=\"viewName\" [showSelectionControls]=\"true\"\n [maxDisplayedTags]=\"2\" [searchEnabled]=\"true\"></dx-tag-box>\n\n </div>\n <div class=\"mx-2 w-1/2\">\n <div class=\"text-md mb-2\"> Associated Params</div>\n <dx-text-box [(ngModel)]=\"item.filterCondition\"></dx-text-box>\n </div>\n <div class=\"mx-2\">\n <button\n class=\"{{commonService.btn_danger_sm}} cursor-pointer mt-8\"\n (click)=\"deleteAssociatedParams(i)\"><i class=\"fa fa-trash-o\"\n aria-hidden=\"true\"></i>\n </button>\n </div>\n </div>\n </ng-container>\n <div class=\"flex flex-row justify-end mt-4\">\n <button class=\"{{commonService.btn_primary_sm}} cursor-pointer\"\n (click)=\"addAssociatedParams()\">Add\n Params</button>\n </div>\n </div>\n </div>\n </ng-container>\n <button class=\"{{commonService.btn_light_md}} cursor-pointer mt-4\"\n (click)=\"resetViewProprstise()\">Reset All Event</button>\n </div>\n </div>\n\n </div>\n </ng-container>\n </div>\n </div>\n\n </div>\n</div>\n\n\n<div class=\"flex flex-row border-t pl-3\">\n <div class=\"flex justify-start mx-1\">\n <button class=\"{{commonService.btn_warning_md}} cursor-pointer mt-2\" (click)=\"isJsonPreview = true\">\n Preview</button>\n <button class=\"{{commonService.btn_primary_md}} cursor-pointer mt-2\" (click)=\"isJsonPreview = false\">Data\n Preview</button>\n </div>\n <div class=\"flex justify-end mx-1 flex-grow\">\n <button class=\"{{commonService.btn_success_md}} cursor-pointer mt-2\" (click)=\"getSaveConfig()\">Submit</button>\n </div>\n</div>" }]
|
|
7880
|
+
args: [{ selector: 'lib-single-card', template: "<div class=\"m-2\"></div>\n<div class=\"w-full m-2 border-r\">\n <ng-container *ngIf=\"!isJsonPreview\">\n <pre><code>{{jsaonDatasource | json}}</code></pre>\n </ng-container>\n\n\n <ng-container *ngIf=\"isJsonPreview\">\n\n <!-- <div class=\"flex items-center p-4 bg-gray-200 dark:bg-gray-800 mx-2\n text-gray-900 dark:text-gray-100 rounded shadow-xs\" *ngIf=\"cardDataConfig.isIcon\">\n <div class=\"py-3 px-4 mr-4 rounded-full\" [style.color]=\"cardDataConfig.iconColor\"\n [style.backgroundColor]=\"cardDataConfig.iconBackgroundColor\">\n <i [class]=\"cardDataConfig.iconName\"></i>\n\n </div>\n <div>\n <p class=\"mb-2 text-sm font-medium text-gray-600 dark:text-gray-200\">\n {{cardDataConfig.iconText}}\n </p>\n <p class=\"font-semibold\" [style.color]=\"cardDataConfig.color\"\n [style.font-size.px]=\"cardDataConfig.size || 16\">\n {{jsaonDatasource[cardDataConfig.columns[0].dataField]}}\n </p>\n </div>\n </div>\n\n <div class=\"flex flex-row justify-center items-start \n bg-gray-200 dark:bg-gray-800 \n text-gray-900 dark:text-gray-100 \n p-4 mx-2 text-center transition-colors duration-300 border border-r\" *ngIf=\"!cardDataConfig.isIcon\">\n <ng-container *ngIf=\"!isLoader\">\n <div class=\"flex justify-center items-center font-bold p-2\" [style.color]=\"cardDataConfig.color\"\n [style.font-size.px]=\"cardDataConfig.size || 16\">\n {{jsaonDatasource[cardDataConfig.columns[0].dataField]}}\n </div>\n </ng-container>\n </div> -->\n <app-gamm-single-number-card [chartDataSource]=\"cardDataSourceModel\"></app-gamm-single-number-card>\n </ng-container>\n</div>\n<div class=\"w-full mx-2 border-r\">\n <div class=\"mb-4 border-b border-gray-200 dark:border-gray-700\">\n <ul class=\"flex flex-wrap -mb-px text-sm font-medium text-center\" role=\"tablist\">\n <li class=\"me-2\" role=\"presentation\">\n <button class=\"inline-block p-4 border-b-2 rounded-t-lg\" [ngClass]=\"{\n 'text-purple-600 border-purple-600 dark:text-purple-500 dark:border-purple-500': activeTab === 'basic',\n 'text-gray-500 dark:text-gray-400 border-transparent': activeTab !== 'basic'\n }\" (click)=\"setActiveTab('basic')\" type=\"button\" role=\"tab\">\n Basic\n </button>\n </li>\n <li class=\"me-2\" role=\"presentation\">\n <button class=\"inline-block p-4 border-b-2 rounded-t-lg\" [ngClass]=\"{\n 'text-purple-600 border-purple-600 dark:text-purple-500 dark:border-purple-500': activeTab === 'columns',\n 'text-gray-500 dark:text-gray-400 border-transparent': activeTab !== 'columns'\n }\" (click)=\"setActiveTab('columns')\" type=\"button\" role=\"tab\">\n Columns\n </button>\n </li>\n <li class=\"me-2\" role=\"presentation\">\n <button class=\"inline-block p-4 border-b-2 rounded-t-lg\" [ngClass]=\"{\n 'text-purple-600 border-purple-600 dark:text-purple-500 dark:border-purple-500': activeTab === 'properties',\n 'text-gray-500 dark:text-gray-400 border-transparent': activeTab !== 'properties'\n }\" (click)=\"setActiveTab('properties')\" type=\"button\" role=\"tab\">\n Properties\n </button>\n </li>\n <li class=\"me-2\" role=\"presentation\">\n <button class=\"inline-block p-4 border-b-2 rounded-t-lg\" [ngClass]=\"{\n 'text-purple-600 border-purple-600 dark:text-purple-500 dark:border-purple-500': activeTab === 'permission',\n 'text-gray-500 dark:text-gray-400 border-transparent': activeTab !== 'permission'\n }\" (click)=\"setActiveTab('permission')\" type=\"button\" role=\"tab\">\n Manage Permissions\n </button>\n </li>\n\n </ul>\n </div>\n\n <div id=\"default-styled-tab-content\">\n <div *ngIf=\"activeTab === 'basic'\">\n <div class=\"flex flex-row \">\n\n <div class=\"px-1 mb-1 w-full\">\n <div class=\"text-md mb-2\"> Key To Pass </div>\n <dx-tag-box [items]=\"configColume\"\n [(ngModel)]=\"cardMainComponentObject.kpiConfig.keyToPass\"></dx-tag-box>\n </div>\n <div class=\"px-1 mb-1 w-full\">\n <div class=\"text-md mb-2\"> Display Formate </div>\n <dx-select-box [items]=\"['daily','hourly','monthly']\"\n [(ngModel)]=\"cardMainComponentObject.kpiConfig.formate\"></dx-select-box>\n </div>\n\n <div class=\"px-1 mb-1 w-full\">\n <div class=\"text-md mb-2\"> Sort By </div>\n <dx-tag-box [items]=\"configColume\" [(ngModel)]=\"cardDataConfig.sortBy\"></dx-tag-box>\n </div>\n\n </div>\n <div class=\"flex flex-row mt-2\">\n <div class=\"px-1 mb-2 w-full\">\n <div class=\"text-md mb-2\">Color</div>\n <dx-color-box [(ngModel)]=\"cardDataConfig.color\"></dx-color-box>\n\n </div>\n <div class=\"px-1 mb-1 w-full\">\n <div class=\"text-md mb-2\">Font Size</div>\n <dx-number-box placeholder=\"Enter size\" [(ngModel)]=\"cardDataConfig.size\"></dx-number-box>\n\n </div>\n\n <div class=\"px-1 mb-1 w-full\">\n <div class=\"text-md mt-8\"> </div>\n <dx-check-box text=\"Enable Icon\" [(ngModel)]=\"cardDataConfig.isIcon\"></dx-check-box>\n </div>\n </div>\n <div class=\"flex flex-row mt-2\" *ngIf=\"cardDataConfig.isIcon\">\n <div class=\"px-1 mb-1 w-full\">\n <div class=\"text-md mb-2\">Icon Name </div>\n <dx-text-box placeholder=\"Enter fontawsome Icon\"\n [(ngModel)]=\"cardDataConfig.iconName\"></dx-text-box>\n </div>\n <div class=\"px-1 mb-2 w-full\">\n <div class=\"text-md mb-2\">Icon Color</div>\n <dx-color-box [(ngModel)]=\"cardDataConfig.iconColor\"></dx-color-box>\n\n </div>\n <div class=\"px-1 mb-2 w-full\">\n <div class=\"text-md mb-2\">Icon Background Color</div>\n <dx-color-box [(ngModel)]=\"cardDataConfig.iconBackgroundColor\"></dx-color-box>\n\n </div>\n <div class=\"px-1 mb-1 w-full\">\n <div class=\"text-md mb-2\">Content</div>\n <dx-text-box placeholder=\"Enter Supporting Content\"\n [(ngModel)]=\"cardDataConfig.iconText\"></dx-text-box>\n </div>\n\n </div>\n\n </div>\n <div *ngIf=\"activeTab === 'columns'\">\n <div class=\"h-full overflow-x-auto\">\n <div class=\"flex flex-col flex-auto min-w-0\">\n\n <div class=\"pt-2 border-x border-b \">\n <div class=\"my-2 border-b flex flex-row\"\n *ngFor=\"let item of cardDataConfig.columns; let i = index;\">\n <div class=\"px-1 mb-2 mt-6 w-full\">\n <dx-check-box [(ngModel)]=\"item.visible\" text=\"Visiblity\"></dx-check-box>\n </div>\n\n <div class=\"px-1 mb-2 w-full\">\n <div class=\"text-md mb-2\"> Value Field</div>\n <dx-select-box [searchEnabled]=\"true\" [items]=\"configColume\"\n [(ngModel)]=\"item.dataField\"></dx-select-box>\n </div>\n <div class=\"px-1 mb-2 w-full\">\n <div class=\"text-md mb-2\"> Caption</div>\n <dx-text-box [(ngModel)]=\"item.caption\"></dx-text-box>\n </div>\n <div class=\"px-2 mb-2 w-full\">\n <div class=\"text-md mb-2\"> UI Function</div>\n <dx-select-box [items]=\"enrichNameList\" [(ngModel)]=\"item.enrichName\"\n [searchEnabled]=\"true\"></dx-select-box>\n </div>\n <div class=\"text-center mt-8 w-full\">\n <button *ngIf=\"i !== 0\" class=\"{{commonService.btn_light_sm}} cursor-pointer mx-1\"\n (click)=\"moveItemForColumns(i, 'up')\">\n <i class=\"fa fa-arrow-up\" aria-hidden=\"true\"></i>\n </button>\n\n <button *ngIf=\"i !== cardDataConfig.columns.length - 1\"\n class=\"{{commonService.btn_light_sm}} cursor-pointer mx-1\"\n (click)=\"moveItemForColumns(i, 'down')\">\n <i class=\"fa fa-arrow-down\" aria-hidden=\"true\"></i>\n </button>\n <button class=\"{{commonService.btn_danger_sm}} cursor-pointer\"\n (click)=\"deleteColumns(i)\"><i class=\"fa fa-trash-o\" aria-hidden=\"true\"></i>\n </button>\n </div>\n\n </div>\n </div>\n </div>\n <div class=\"flex flex-row justify-end my-2\">\n <button class=\"{{commonService.btn_primary_sm}} cursor-pointer\" (click)=\"addColumns()\">Add\n Columns</button>\n </div>\n </div>\n </div>\n <div *ngIf=\"activeTab === 'properties'\">\n <div class=\"h-full overflow-x-auto\">\n <app-loader *ngIf=\"isLoader\"></app-loader>\n <ng-container *ngIf=\"!isLoader\">\n <div class=\"flex flex-row justify-between border-b py-3\">\n <div class=\"mx-2\">\n <dx-check-box [value]=\"viewProperties.enableClickEvent\"\n [(ngModel)]=\"viewProperties.enableClickEvent\" text=\"Enable Click Event\"></dx-check-box>\n </div>\n <div class=\"mx-2\">\n <dx-check-box [value]=\"viewProperties.enableRightClickEvent\"\n [(ngModel)]=\"viewProperties.enableRightClickEvent\"\n text=\"Enable Right Click\"></dx-check-box>\n </div>\n </div>\n <div class=\"w-full p-2\" *ngIf=\"viewProperties.enableClickEvent\">\n\n <div class=\"flex flex-col flex-auto min-w-0 my-2\">\n <div class=\"text-sm py-1 font-extrabold border-b bg-gray-700 text-white px-2\"> Event\n Type\n Option\n </div>\n <div class=\"w-full p-3 border-x border-b \">\n <div class=\"flex flex-row\">\n <div class=\"w-full\">\n <div class=\"text-md mb-2\"> Event Type</div>\n </div>\n <div class=\"w-full\">\n <dx-select-box [items]=\"['drilldown','sameViewDrilldown','optionalDrillDown']\"\n (onValueChanged)=\"getSelectedEventType($event)\"\n [(ngModel)]=\"viewProperties.clickEventOptions.eventType\"></dx-select-box>\n </div>\n </div>\n <ng-container *ngIf=\"viewProperties.clickEventOptions.eventType == 'drilldown'\">\n <div class=\"flex flex-row justify-between mt-3\">\n <div class=\"w-full\">\n <div class=\"text-md mb-2\"> Associated Views</div>\n <dx-tag-box [items]=\"allConfiguredViews\"\n [(ngModel)]=\"viewProperties.clickEventOptions.associatedViews\"\n valueExpr=\"viewId\" displayExpr=\"viewName\" [showSelectionControls]=\"true\"\n [searchEnabled]=\"true\"></dx-tag-box>\n </div>\n </div>\n </ng-container>\n <ng-container *ngIf=\"viewProperties.clickEventOptions.eventType == 'sameViewDrilldown'\">\n <div class=\"flex flex-row justify-between mt-3\">\n <div class=\"w-full\">\n <div class=\"text-md mb-2\"> Associated Views</div>\n <dx-tag-box [items]=\"allConfiguredViews\"\n [(ngModel)]=\"viewProperties.clickEventOptions.associatedViews\"\n valueExpr=\"viewId\" displayExpr=\"viewName\" [showSelectionControls]=\"true\"\n [searchEnabled]=\"true\"></dx-tag-box>\n </div>\n </div>\n </ng-container>\n <ng-container *ngIf=\"viewProperties.clickEventOptions.eventType == 'optionalDrillDown'\">\n <div class=\"flex flex-row justify-between mt-3\">\n <div class=\"w-full\">\n <ng-container\n *ngFor=\"let item of optionalDrilDownDataSource;let i = index;\">\n\n <div class=\"flex flex-row justify-between\">\n <div class=\"mx-2 w-1/2\">\n <div class=\"text-md mb-2\"> Associated Views</div>\n <dx-tag-box [items]=\"allConfiguredViews\"\n [(ngModel)]=\"item.viewId\" valueExpr=\"viewId\"\n displayExpr=\"viewName\" [showSelectionControls]=\"true\"\n [maxDisplayedTags]=\"2\" [searchEnabled]=\"true\"></dx-tag-box>\n\n </div>\n <div class=\"mx-2 w-1/2\">\n <div class=\"text-md mb-2\"> Associated Params</div>\n <dx-text-box [(ngModel)]=\"item.filterCondition\"></dx-text-box>\n </div>\n <div class=\"mx-2\">\n <button\n class=\"{{commonService.btn_danger_sm}} cursor-pointer mt-8\"\n (click)=\"deleteAssociatedParams(i)\"><i class=\"fa fa-trash-o\"\n aria-hidden=\"true\"></i>\n </button>\n </div>\n </div>\n </ng-container>\n <div class=\"flex flex-row justify-end mt-4\">\n <button class=\"{{commonService.btn_primary_sm}} cursor-pointer\"\n (click)=\"addAssociatedParams()\">Add\n Params</button>\n </div>\n </div>\n </div>\n </ng-container>\n <button class=\"{{commonService.btn_light_md}} cursor-pointer mt-4\"\n (click)=\"resetViewProprstise()\">Reset All Event</button>\n </div>\n </div>\n\n </div>\n </ng-container>\n </div>\n </div>\n\n <div *ngIf=\"activeTab === 'permission'\">\n <div class=\"h-full overflow-x-auto\">\n <app-user-access [(userOptionContainer)]=\"userOptionContainer\">\n </app-user-access>\n </div>\n </div>\n </div>\n</div>\n\n\n<div class=\"flex flex-row border-t pl-3\">\n <div class=\"flex justify-start mx-1\">\n <button class=\"{{commonService.btn_warning_md}} cursor-pointer mt-2\" (click)=\"isJsonPreview = true\">\n Preview</button>\n <button class=\"{{commonService.btn_primary_md}} cursor-pointer mt-2\" (click)=\"isJsonPreview = false\">Data\n Preview</button>\n </div>\n <div class=\"flex justify-end mx-1 flex-grow\">\n <button class=\"{{commonService.btn_success_md}} cursor-pointer mt-2\" (click)=\"getSaveConfig()\">Submit</button>\n </div>\n</div>" }]
|
|
7795
7881
|
}], ctorParameters: function () { return [{ type: CommonService }, { type: i0.ChangeDetectorRef }, { type: ApplicationContentService }, { type: i4$1.ToastrService }]; }, propDecorators: { getSingleCardConfigOutPut: [{
|
|
7796
7882
|
type: Output
|
|
7797
7883
|
}], chartconfigData: [{
|
|
@@ -9404,81 +9490,6 @@ i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "14.3.0", ngImpor
|
|
|
9404
9490
|
args: ['chartDataSource']
|
|
9405
9491
|
}] } });
|
|
9406
9492
|
|
|
9407
|
-
class GammSingleNumberCardComponent {
|
|
9408
|
-
constructor(commonService, toastr) {
|
|
9409
|
-
this.commonService = commonService;
|
|
9410
|
-
this.toastr = toastr;
|
|
9411
|
-
this.isLoader = true;
|
|
9412
|
-
this.colors = [
|
|
9413
|
-
"text-green-500",
|
|
9414
|
-
"text-orange-500",
|
|
9415
|
-
"text-blue-500",
|
|
9416
|
-
"text-purple-500",
|
|
9417
|
-
"text-yellow-500"
|
|
9418
|
-
];
|
|
9419
|
-
}
|
|
9420
|
-
set chartDataSource(value) {
|
|
9421
|
-
var _a, _b, _c, _d, _e, _f, _g, _h, _j;
|
|
9422
|
-
this.objectdataSource = value;
|
|
9423
|
-
if (!this.objectdataSource || this.objectdataSource.length === 0) {
|
|
9424
|
-
this.isChartvisible = false;
|
|
9425
|
-
return;
|
|
9426
|
-
}
|
|
9427
|
-
else {
|
|
9428
|
-
this.isLoader = true;
|
|
9429
|
-
this.selectedColumn = ((_d = (_c = (_b = (_a = value.kpiConfig) === null || _a === void 0 ? void 0 : _a.dataConfig) === null || _b === void 0 ? void 0 : _b.columns) === null || _c === void 0 ? void 0 : _c[0]) === null || _d === void 0 ? void 0 : _d.dataField) || "";
|
|
9430
|
-
this.sortBy = (_f = (_e = value.kpiConfig) === null || _e === void 0 ? void 0 : _e.dataConfig) === null || _f === void 0 ? void 0 : _f.sortBy;
|
|
9431
|
-
this.tableDataConfig = (_g = value.kpiConfig) === null || _g === void 0 ? void 0 : _g.dataConfig;
|
|
9432
|
-
if ((_h = value.kpiConfig.dataSource) === null || _h === void 0 ? void 0 : _h.length) {
|
|
9433
|
-
this.page_config = value;
|
|
9434
|
-
let sortedData = value.kpiConfig.dataSource;
|
|
9435
|
-
if ((_j = this.sortBy) === null || _j === void 0 ? void 0 : _j.length) {
|
|
9436
|
-
let sortKey = this.sortBy[0];
|
|
9437
|
-
sortedData = sortedData.sort((a, b) => moment$1(b[sortKey], "YYYY-MM-DD").diff(moment$1(a[sortKey], "YYYY-MM-DD")));
|
|
9438
|
-
}
|
|
9439
|
-
if (value.kpiConfig.formate === "daily") {
|
|
9440
|
-
this.currentDateData = sortedData.length ? this.commonService.abbreviateNumber(sortedData[0][this.selectedColumn] || 0) : "0";
|
|
9441
|
-
}
|
|
9442
|
-
else if (value.kpiConfig.formate === "monthly") {
|
|
9443
|
-
let total = sortedData.reduce((sum, item) => {
|
|
9444
|
-
let value = Number(item[this.selectedColumn]) || 0;
|
|
9445
|
-
return sum + value;
|
|
9446
|
-
}, 0);
|
|
9447
|
-
this.currentDateData = this.commonService.abbreviateNumber(total);
|
|
9448
|
-
}
|
|
9449
|
-
this.isLoader = false;
|
|
9450
|
-
}
|
|
9451
|
-
}
|
|
9452
|
-
}
|
|
9453
|
-
getDynamicValue(data) {
|
|
9454
|
-
if (!this.selectedColumn || !data.hasOwnProperty(this.selectedColumn)) {
|
|
9455
|
-
return null;
|
|
9456
|
-
}
|
|
9457
|
-
let value = data[this.selectedColumn];
|
|
9458
|
-
const numericValue = Number(value);
|
|
9459
|
-
if (!isNaN(numericValue)) {
|
|
9460
|
-
return this.commonService.abbreviateNumber(numericValue);
|
|
9461
|
-
}
|
|
9462
|
-
return value;
|
|
9463
|
-
}
|
|
9464
|
-
ngOnInit() {
|
|
9465
|
-
this.randomColorClass = this.getRandomColor();
|
|
9466
|
-
}
|
|
9467
|
-
getRandomColor() {
|
|
9468
|
-
const randomIndex = Math.floor(Math.random() * this.colors.length);
|
|
9469
|
-
return this.colors[randomIndex];
|
|
9470
|
-
}
|
|
9471
|
-
}
|
|
9472
|
-
GammSingleNumberCardComponent.ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "14.3.0", ngImport: i0, type: GammSingleNumberCardComponent, deps: [{ token: CommonService }, { token: i4$1.ToastrService }], target: i0.ɵɵFactoryTarget.Component });
|
|
9473
|
-
GammSingleNumberCardComponent.ɵcmp = i0.ɵɵngDeclareComponent({ minVersion: "14.0.0", version: "14.3.0", type: GammSingleNumberCardComponent, selector: "app-gamm-single-number-card", inputs: { chartDataSource: "chartDataSource" }, ngImport: i0, template: "\n\n\n<div class=\"flex items-center p-4 bg-gray-200 dark:bg-gray-800 mx-2\n text-gray-900 dark:text-gray-100 rounded shadow-xs\" *ngIf=\"tableDataConfig.isIcon\">\n <ng-container *ngIf=\"isLoader\">\n <app-loader></app-loader>\n </ng-container>\n <div class=\"py-3 px-4 mr-4 rounded-full\" [style.color]=\"tableDataConfig.iconColor\"\n [style.backgroundColor]=\"tableDataConfig.iconBackgroundColor\">\n <i [class]=\"tableDataConfig.iconName\"></i>\n\n </div>\n <div>\n <p class=\"mb-2 text-sm font-medium text-gray-600 dark:text-gray-200\">\n {{tableDataConfig.iconText}}\n </p>\n <p class=\"font-semibold\" [style.color]=\"tableDataConfig.color\"\n [style.font-size.px]=\"tableDataConfig.size || 16\">\n {{ currentDateData }}\n </p>\n </div>\n</div>\n\n<div class=\"flex flex-row justify-center items-start \n bg-gray-200 dark:bg-gray-800 \n text-gray-900 dark:text-gray-100 \n p-4 mx-2 text-center transition-colors duration-300 border border-r\" *ngIf=\"!tableDataConfig.isIcon\">\n <ng-container *ngIf=\"isLoader\">\n <app-loader></app-loader>\n </ng-container>\n <ng-container *ngIf=\"!isLoader\">\n <div class=\"flex justify-center items-center font-bold p-2\" [style.color]=\"tableDataConfig.color\"\n [style.font-size.px]=\"tableDataConfig.size || 16\">\n {{ currentDateData }}\n </div>\n </ng-container>\n</div>", dependencies: [{ kind: "directive", type: i4$2.NgIf, selector: "[ngIf]", inputs: ["ngIf", "ngIfThen", "ngIfElse"] }, { kind: "component", type: LoaderComponent, selector: "app-loader" }] });
|
|
9474
|
-
i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "14.3.0", ngImport: i0, type: GammSingleNumberCardComponent, decorators: [{
|
|
9475
|
-
type: Component,
|
|
9476
|
-
args: [{ selector: 'app-gamm-single-number-card', template: "\n\n\n<div class=\"flex items-center p-4 bg-gray-200 dark:bg-gray-800 mx-2\n text-gray-900 dark:text-gray-100 rounded shadow-xs\" *ngIf=\"tableDataConfig.isIcon\">\n <ng-container *ngIf=\"isLoader\">\n <app-loader></app-loader>\n </ng-container>\n <div class=\"py-3 px-4 mr-4 rounded-full\" [style.color]=\"tableDataConfig.iconColor\"\n [style.backgroundColor]=\"tableDataConfig.iconBackgroundColor\">\n <i [class]=\"tableDataConfig.iconName\"></i>\n\n </div>\n <div>\n <p class=\"mb-2 text-sm font-medium text-gray-600 dark:text-gray-200\">\n {{tableDataConfig.iconText}}\n </p>\n <p class=\"font-semibold\" [style.color]=\"tableDataConfig.color\"\n [style.font-size.px]=\"tableDataConfig.size || 16\">\n {{ currentDateData }}\n </p>\n </div>\n</div>\n\n<div class=\"flex flex-row justify-center items-start \n bg-gray-200 dark:bg-gray-800 \n text-gray-900 dark:text-gray-100 \n p-4 mx-2 text-center transition-colors duration-300 border border-r\" *ngIf=\"!tableDataConfig.isIcon\">\n <ng-container *ngIf=\"isLoader\">\n <app-loader></app-loader>\n </ng-container>\n <ng-container *ngIf=\"!isLoader\">\n <div class=\"flex justify-center items-center font-bold p-2\" [style.color]=\"tableDataConfig.color\"\n [style.font-size.px]=\"tableDataConfig.size || 16\">\n {{ currentDateData }}\n </div>\n </ng-container>\n</div>" }]
|
|
9477
|
-
}], ctorParameters: function () { return [{ type: CommonService }, { type: i4$1.ToastrService }]; }, propDecorators: { chartDataSource: [{
|
|
9478
|
-
type: Input,
|
|
9479
|
-
args: ['chartDataSource']
|
|
9480
|
-
}] } });
|
|
9481
|
-
|
|
9482
9493
|
class GammaAdvanceOperatorTableComponent {
|
|
9483
9494
|
constructor(commonService) {
|
|
9484
9495
|
this.commonService = commonService;
|