@rafaelaalmeidaa/primordash 0.0.1
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/README.md +24 -0
- package/esm2020/lib/components/card/card.component.mjs +69 -0
- package/esm2020/lib/components/charts/bar-line/bar-line.component.mjs +245 -0
- package/esm2020/lib/components/charts/bubble/bubble.component.mjs +147 -0
- package/esm2020/lib/components/charts/pie/pie.component.mjs +161 -0
- package/esm2020/lib/components/charts/simple-card/simple-card.component.mjs +31 -0
- package/esm2020/lib/components/charts/table/table.component.mjs +26 -0
- package/esm2020/lib/components/dashboard/dashboard.component.mjs +251 -0
- package/esm2020/lib/components/modal-edit/modal-edit.component.mjs +133 -0
- package/esm2020/lib/components/modal-edit-chart/modal-edit-chart.component.mjs +56 -0
- package/esm2020/lib/models/dashboard.model.mjs +46 -0
- package/esm2020/lib/primordash.component.mjs +75 -0
- package/esm2020/lib/primordash.module.mjs +92 -0
- package/esm2020/lib/primordash.service.mjs +14 -0
- package/esm2020/lib/services/generic.mjs +50 -0
- package/esm2020/public-api.mjs +8 -0
- package/esm2020/rafaAlmeida-primordash.mjs +5 -0
- package/esm2020/rafaelaalmeidaa-primordash.mjs +5 -0
- package/fesm2015/rafaAlmeida-primordash.mjs +1374 -0
- package/fesm2015/rafaAlmeida-primordash.mjs.map +1 -0
- package/fesm2015/rafaelaalmeidaa-primordash.mjs +1374 -0
- package/fesm2015/rafaelaalmeidaa-primordash.mjs.map +1 -0
- package/fesm2020/rafaAlmeida-primordash.mjs +1349 -0
- package/fesm2020/rafaAlmeida-primordash.mjs.map +1 -0
- package/fesm2020/rafaelaalmeidaa-primordash.mjs +1349 -0
- package/fesm2020/rafaelaalmeidaa-primordash.mjs.map +1 -0
- package/index.d.ts +5 -0
- package/lib/components/card/card.component.d.ts +21 -0
- package/lib/components/charts/bar-line/bar-line.component.d.ts +32 -0
- package/lib/components/charts/bubble/bubble.component.d.ts +27 -0
- package/lib/components/charts/pie/pie.component.d.ts +28 -0
- package/lib/components/charts/simple-card/simple-card.component.d.ts +15 -0
- package/lib/components/charts/table/table.component.d.ts +13 -0
- package/lib/components/dashboard/dashboard.component.d.ts +58 -0
- package/lib/components/modal-edit/modal-edit.component.d.ts +32 -0
- package/lib/components/modal-edit-chart/modal-edit-chart.component.d.ts +16 -0
- package/lib/models/dashboard.model.d.ts +118 -0
- package/lib/primordash.component.d.ts +16 -0
- package/lib/primordash.module.d.ts +26 -0
- package/lib/primordash.service.d.ts +6 -0
- package/lib/services/generic.d.ts +3 -0
- package/package.json +40 -0
- package/public-api.d.ts +4 -0
- package/src/lib/assets/fonts/google_icons_outlined.ttf +0 -0
- package/src/lib/assets/fonts/google_icons_rounded.ttf +0 -0
- package/src/lib/assets/fonts/google_icons_sharp.ttf +0 -0
- package/src/lib/assets/images/bar.png +0 -0
- package/src/lib/assets/images/doughnut.png +0 -0
- package/src/lib/assets/images/halfDoughnut.png +0 -0
- package/src/lib/assets/images/lineBar.png +0 -0
- package/src/lib/assets/images/multiPie.png +0 -0
- package/src/lib/assets/images/pie.png +0 -0
- package/src/lib/assets/images/polarArea.png +0 -0
- package/src/lib/assets/images/verticalBar.png +0 -0
- package/src/lib/assets/images/verticalStackedBar.png +0 -0
- package/src/lib/assets/style.scss +5 -0
- package/src/lib/assets/styles/_colors.scss +11 -0
- package/src/lib/assets/styles/_fonts.scss +30 -0
- package/src/lib/assets/styles/_modal.scss +36 -0
- package/src/lib/assets/styles/_ng-select.scss +128 -0
|
@@ -0,0 +1,133 @@
|
|
|
1
|
+
import { Component, EventEmitter, Input, Output } from '@angular/core';
|
|
2
|
+
import * as i0 from "@angular/core";
|
|
3
|
+
import * as i1 from "ngx-bootstrap/modal";
|
|
4
|
+
import * as i2 from "@angular/common";
|
|
5
|
+
import * as i3 from "@angular/forms";
|
|
6
|
+
import * as i4 from "@ng-select/ng-select";
|
|
7
|
+
export class ModalEditComponent {
|
|
8
|
+
constructor(modalService) {
|
|
9
|
+
this.modalService = modalService;
|
|
10
|
+
this.rows = [];
|
|
11
|
+
this.rowsType = '';
|
|
12
|
+
this.simpleType = { id: 'simple', label: 'Quantidade' };
|
|
13
|
+
this.types = [];
|
|
14
|
+
this.data = [];
|
|
15
|
+
this.groupType = [];
|
|
16
|
+
this.closeModal = new EventEmitter();
|
|
17
|
+
this.saveData = new EventEmitter();
|
|
18
|
+
}
|
|
19
|
+
ngOnInit() {
|
|
20
|
+
this.types = [this.simpleType, ...this.groupType];
|
|
21
|
+
this.rowsType = 'simple';
|
|
22
|
+
if (this.rows?.length) {
|
|
23
|
+
this.rows = this.rows.map(r => this.buildRowFromFinalValue(r.finalValue));
|
|
24
|
+
}
|
|
25
|
+
else {
|
|
26
|
+
this.addRow();
|
|
27
|
+
}
|
|
28
|
+
}
|
|
29
|
+
addRow() {
|
|
30
|
+
this.rows.push({
|
|
31
|
+
levels: [this.addTodosOption(this.data)],
|
|
32
|
+
selectedPath: [],
|
|
33
|
+
finalValue: [],
|
|
34
|
+
finalFontColor: '',
|
|
35
|
+
finalBackgroudColor: ''
|
|
36
|
+
});
|
|
37
|
+
}
|
|
38
|
+
removeRow(index) {
|
|
39
|
+
this.rows.splice(index, 1);
|
|
40
|
+
}
|
|
41
|
+
cloneRow(index) {
|
|
42
|
+
const original = this.rows[index];
|
|
43
|
+
const cloned = this.buildRowFromFinalValue(original.finalValue);
|
|
44
|
+
cloned.finalFontColor = original.finalFontColor;
|
|
45
|
+
cloned.finalBackgroudColor = original.finalBackgroudColor;
|
|
46
|
+
this.rows.push(cloned);
|
|
47
|
+
}
|
|
48
|
+
onSelect(item, rowIndex, levelIndex) {
|
|
49
|
+
const row = this.rows[rowIndex];
|
|
50
|
+
row.levels = row.levels.slice(0, levelIndex + 1);
|
|
51
|
+
row.selectedPath = row.selectedPath.slice(0, levelIndex);
|
|
52
|
+
row.selectedPath[levelIndex] = item;
|
|
53
|
+
if (item.type === 'group' && item.items?.length) {
|
|
54
|
+
row.levels.push(this.addTodosOption(item.items));
|
|
55
|
+
}
|
|
56
|
+
this.updateFinalValue(row);
|
|
57
|
+
}
|
|
58
|
+
updateFinalValue(row) {
|
|
59
|
+
row.finalValue = row.selectedPath.map(i => String(i.id));
|
|
60
|
+
}
|
|
61
|
+
onFontColorChange(event, rowIndex) {
|
|
62
|
+
const row = this.rows[rowIndex];
|
|
63
|
+
const color = event.target.value;
|
|
64
|
+
row.finalFontColor = color;
|
|
65
|
+
}
|
|
66
|
+
onBackgroundChange(event, rowIndex) {
|
|
67
|
+
var row = this.rows[rowIndex];
|
|
68
|
+
const color = event.target.value;
|
|
69
|
+
row.finalBackgroudColor = color;
|
|
70
|
+
}
|
|
71
|
+
onCloseModal() {
|
|
72
|
+
this.closeModal.emit();
|
|
73
|
+
}
|
|
74
|
+
onSaveData() {
|
|
75
|
+
const newData = this.rows.map(r => ({
|
|
76
|
+
finalValue: r.finalValue,
|
|
77
|
+
finalBackgroudColor: r.finalBackgroudColor,
|
|
78
|
+
finalFontColor: r.finalFontColor,
|
|
79
|
+
}));
|
|
80
|
+
this.saveData.emit({ rowsType: this.rowsType, rows: this.rows });
|
|
81
|
+
}
|
|
82
|
+
isFlatLevel(level) {
|
|
83
|
+
return level.every(item => item.type !== 'group') ?? false;
|
|
84
|
+
}
|
|
85
|
+
buildRowFromFinalValue(finalValue) {
|
|
86
|
+
const row = {
|
|
87
|
+
levels: [this.addTodosOption(this.data)],
|
|
88
|
+
selectedPath: [],
|
|
89
|
+
finalValue,
|
|
90
|
+
finalFontColor: '',
|
|
91
|
+
finalBackgroudColor: ''
|
|
92
|
+
};
|
|
93
|
+
let currentLevel = this.data;
|
|
94
|
+
finalValue.forEach((id, index) => {
|
|
95
|
+
const found = currentLevel.find(item => item.id === id);
|
|
96
|
+
if (!found)
|
|
97
|
+
return;
|
|
98
|
+
row.selectedPath[index] = found;
|
|
99
|
+
if (found.type === 'group' && found.items) {
|
|
100
|
+
currentLevel = found.items;
|
|
101
|
+
row.levels.push(this.addTodosOption(currentLevel));
|
|
102
|
+
}
|
|
103
|
+
});
|
|
104
|
+
return row;
|
|
105
|
+
}
|
|
106
|
+
addTodosOption(items) {
|
|
107
|
+
const isFlat = items?.every(item => item.type !== 'group');
|
|
108
|
+
if (!isFlat)
|
|
109
|
+
return items;
|
|
110
|
+
const alreadyHasTodos = items.some(i => i.id === 'todos');
|
|
111
|
+
if (alreadyHasTodos)
|
|
112
|
+
return items;
|
|
113
|
+
return [
|
|
114
|
+
{ id: 'todos', label: 'Todos', type: 'option' },
|
|
115
|
+
...items
|
|
116
|
+
];
|
|
117
|
+
}
|
|
118
|
+
}
|
|
119
|
+
ModalEditComponent.ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "15.2.10", ngImport: i0, type: ModalEditComponent, deps: [{ token: i1.BsModalService }], target: i0.ɵɵFactoryTarget.Component });
|
|
120
|
+
ModalEditComponent.ɵcmp = i0.ɵɵngDeclareComponent({ minVersion: "14.0.0", version: "15.2.10", type: ModalEditComponent, selector: "lib-modal-edit", inputs: { data: "data", groupType: "groupType" }, outputs: { closeModal: "closeModal", saveData: "saveData" }, ngImport: i0, template: "<header class=\"modal-header\">\r\n <h4 class=\"modal-title pull-left\">Editar fonte dos dados</h4>\r\n <button type=\"button\" class=\"btn-close close pull-right\" aria-label=\"Close\" (click)=\"onCloseModal()\">\r\n <span aria-hidden=\"true\" class=\"visually-hidden\">×</span>\r\n </button>\r\n</header>\r\n<body class=\"modal-body table-form py-2\">\r\n <label>Tipo de Agrupamento dos dados:</label>\r\n <ng-select\r\n class=\" col-12 col-sm-4 mb-1\"\r\n [items]=\"types\"\r\n bindValue=\"id\"\r\n bindLabel=\"label\"\r\n [clearable]=\"false\"\r\n placeholder=\"Selecione...\"\r\n [(ngModel)]=\"rowsType\">\r\n </ng-select>\r\n <article *ngFor=\"let row of rows; let rowIndex = index\" class=\"line mb-2\">\r\n <div class=\"d-flex\">\r\n <ng-container *ngFor=\"let level of row.levels; let levelIndex = index\">\r\n <ng-select class=\"me-1\"\r\n [items]=\"level\"\r\n bindLabel=\"label\"\r\n [clearable]=\"false\"\r\n [placeholder]=\"'Selecione...'\"\r\n [ngModel]=\"row.selectedPath[levelIndex]\"\r\n (change)=\"onSelect($event, rowIndex, levelIndex)\">\r\n </ng-select>\r\n </ng-container>\r\n </div>\r\n <div class=\"d-flex\">\r\n <div class=\"color-div me-2\" [style.background-color]=\"rows[rowIndex].finalBackgroudColor\">\r\n <button class=\"btn font-icon\" [style.color]=\"rows[rowIndex].finalFontColor\"\r\n title=\"Cor do texto\" (click)=\"fontColor.click()\">\r\n format_color_text\r\n </button>\r\n <input #fontColor class=\"hide\" type=\"color\" (change)=\"onFontColorChange($event, rowIndex)\">\r\n <hr class=\"divisor\">\r\n <button class=\"btn font-icon\" [style.color]=\"rows[rowIndex].finalFontColor\"\r\n title=\"Cor de fundo\" (click)=\"backgroundColor.click()\">\r\n colors\r\n </button>\r\n <input #backgroundColor class=\"hide\" type=\"color\" (change)=\"onBackgroundChange($event, rowIndex)\">\r\n </div>\r\n <button class=\"btn btn-basic font-icon me-2\" type=\"button\" (click)=\"cloneRow(rowIndex)\" title=\"Clonar linha\">\r\n copy_all\r\n </button>\r\n <button class=\"btn btn-danger font-icon\" type=\"button\" (click)=\"removeRow(rowIndex)\" title=\"Remover linha\">\r\n delete\r\n </button>\r\n </div>\r\n </article>\r\n <div class=\"d-flex mb-2\">\r\n <button class=\"btn btn-success\" type=\"button\" (click)=\"addRow()\" title=\"Adicionar linha\">+</button>\r\n </div>\r\n <div class=\"d-flex justify-content-end mb-2\">\r\n <button class=\"btn btn-success\" type=\"button\" (click)=\"onSaveData()\" title=\"Salvar\">Salvar</button>\r\n </div>\r\n</body>", styles: [".modal-body{overflow-x:scroll}.modal-body .line{display:flex;justify-content:space-between}.modal-body .ng-select-alternative{min-width:150px}.modal-body .hide{width:0;visibility:hidden}.modal-body .color-div,.modal-body .btn-basic{border:1px solid gray;border-radius:5px}.modal-body .color-div{display:flex}.modal-body .color-div .divisor{height:80%;margin:5% 0;border:1px solid black}\n"], dependencies: [{ kind: "directive", type: i2.NgForOf, selector: "[ngFor][ngForOf]", inputs: ["ngForOf", "ngForTrackBy", "ngForTemplate"] }, { kind: "directive", type: i3.NgControlStatus, selector: "[formControlName],[ngModel],[formControl]" }, { kind: "directive", type: i3.NgModel, selector: "[ngModel]:not([formControlName]):not([formControl])", inputs: ["name", "disabled", "ngModel", "ngModelOptions"], outputs: ["ngModelChange"], exportAs: ["ngModel"] }, { kind: "component", type: i4.NgSelectComponent, selector: "ng-select", inputs: ["bindLabel", "bindValue", "markFirst", "placeholder", "notFoundText", "typeToSearchText", "addTagText", "loadingText", "clearAllText", "appearance", "dropdownPosition", "appendTo", "loading", "closeOnSelect", "hideSelected", "selectOnTab", "openOnEnter", "maxSelectedItems", "groupBy", "groupValue", "bufferAmount", "virtualScroll", "selectableGroup", "selectableGroupAsModel", "searchFn", "trackByFn", "clearOnBackspace", "labelForId", "inputAttrs", "tabIndex", "readonly", "searchWhileComposing", "minTermLength", "editableSearchTerm", "keyDownFn", "typeahead", "multiple", "addTag", "searchable", "clearable", "isOpen", "items", "compareWith", "clearSearchOnAdd"], outputs: ["blur", "focus", "change", "open", "close", "search", "clear", "add", "remove", "scroll", "scrollToEnd"] }] });
|
|
121
|
+
i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "15.2.10", ngImport: i0, type: ModalEditComponent, decorators: [{
|
|
122
|
+
type: Component,
|
|
123
|
+
args: [{ selector: 'lib-modal-edit', template: "<header class=\"modal-header\">\r\n <h4 class=\"modal-title pull-left\">Editar fonte dos dados</h4>\r\n <button type=\"button\" class=\"btn-close close pull-right\" aria-label=\"Close\" (click)=\"onCloseModal()\">\r\n <span aria-hidden=\"true\" class=\"visually-hidden\">×</span>\r\n </button>\r\n</header>\r\n<body class=\"modal-body table-form py-2\">\r\n <label>Tipo de Agrupamento dos dados:</label>\r\n <ng-select\r\n class=\" col-12 col-sm-4 mb-1\"\r\n [items]=\"types\"\r\n bindValue=\"id\"\r\n bindLabel=\"label\"\r\n [clearable]=\"false\"\r\n placeholder=\"Selecione...\"\r\n [(ngModel)]=\"rowsType\">\r\n </ng-select>\r\n <article *ngFor=\"let row of rows; let rowIndex = index\" class=\"line mb-2\">\r\n <div class=\"d-flex\">\r\n <ng-container *ngFor=\"let level of row.levels; let levelIndex = index\">\r\n <ng-select class=\"me-1\"\r\n [items]=\"level\"\r\n bindLabel=\"label\"\r\n [clearable]=\"false\"\r\n [placeholder]=\"'Selecione...'\"\r\n [ngModel]=\"row.selectedPath[levelIndex]\"\r\n (change)=\"onSelect($event, rowIndex, levelIndex)\">\r\n </ng-select>\r\n </ng-container>\r\n </div>\r\n <div class=\"d-flex\">\r\n <div class=\"color-div me-2\" [style.background-color]=\"rows[rowIndex].finalBackgroudColor\">\r\n <button class=\"btn font-icon\" [style.color]=\"rows[rowIndex].finalFontColor\"\r\n title=\"Cor do texto\" (click)=\"fontColor.click()\">\r\n format_color_text\r\n </button>\r\n <input #fontColor class=\"hide\" type=\"color\" (change)=\"onFontColorChange($event, rowIndex)\">\r\n <hr class=\"divisor\">\r\n <button class=\"btn font-icon\" [style.color]=\"rows[rowIndex].finalFontColor\"\r\n title=\"Cor de fundo\" (click)=\"backgroundColor.click()\">\r\n colors\r\n </button>\r\n <input #backgroundColor class=\"hide\" type=\"color\" (change)=\"onBackgroundChange($event, rowIndex)\">\r\n </div>\r\n <button class=\"btn btn-basic font-icon me-2\" type=\"button\" (click)=\"cloneRow(rowIndex)\" title=\"Clonar linha\">\r\n copy_all\r\n </button>\r\n <button class=\"btn btn-danger font-icon\" type=\"button\" (click)=\"removeRow(rowIndex)\" title=\"Remover linha\">\r\n delete\r\n </button>\r\n </div>\r\n </article>\r\n <div class=\"d-flex mb-2\">\r\n <button class=\"btn btn-success\" type=\"button\" (click)=\"addRow()\" title=\"Adicionar linha\">+</button>\r\n </div>\r\n <div class=\"d-flex justify-content-end mb-2\">\r\n <button class=\"btn btn-success\" type=\"button\" (click)=\"onSaveData()\" title=\"Salvar\">Salvar</button>\r\n </div>\r\n</body>", styles: [".modal-body{overflow-x:scroll}.modal-body .line{display:flex;justify-content:space-between}.modal-body .ng-select-alternative{min-width:150px}.modal-body .hide{width:0;visibility:hidden}.modal-body .color-div,.modal-body .btn-basic{border:1px solid gray;border-radius:5px}.modal-body .color-div{display:flex}.modal-body .color-div .divisor{height:80%;margin:5% 0;border:1px solid black}\n"] }]
|
|
124
|
+
}], ctorParameters: function () { return [{ type: i1.BsModalService }]; }, propDecorators: { data: [{
|
|
125
|
+
type: Input
|
|
126
|
+
}], groupType: [{
|
|
127
|
+
type: Input
|
|
128
|
+
}], closeModal: [{
|
|
129
|
+
type: Output
|
|
130
|
+
}], saveData: [{
|
|
131
|
+
type: Output
|
|
132
|
+
}] } });
|
|
133
|
+
//# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoibW9kYWwtZWRpdC5jb21wb25lbnQuanMiLCJzb3VyY2VSb290IjoiIiwic291cmNlcyI6WyIuLi8uLi8uLi8uLi8uLi8uLi9wcm9qZWN0cy9wcmltb3JkYXNoL3NyYy9saWIvY29tcG9uZW50cy9tb2RhbC1lZGl0L21vZGFsLWVkaXQuY29tcG9uZW50LnRzIiwiLi4vLi4vLi4vLi4vLi4vLi4vcHJvamVjdHMvcHJpbW9yZGFzaC9zcmMvbGliL2NvbXBvbmVudHMvbW9kYWwtZWRpdC9tb2RhbC1lZGl0LmNvbXBvbmVudC5odG1sIl0sIm5hbWVzIjpbXSwibWFwcGluZ3MiOiJBQUFBLE9BQU8sRUFBRSxTQUFTLEVBQUUsWUFBWSxFQUFFLEtBQUssRUFBVSxNQUFNLEVBQTBCLE1BQU0sZUFBZSxDQUFDOzs7Ozs7QUFVdkcsTUFBTSxPQUFPLGtCQUFrQjtJQWE3QixZQUNVLFlBQTRCO1FBQTVCLGlCQUFZLEdBQVosWUFBWSxDQUFnQjtRQVh0QyxTQUFJLEdBQWdCLEVBQUUsQ0FBQztRQUN2QixhQUFRLEdBQVcsRUFBRSxDQUFDO1FBQ3RCLGVBQVUsR0FBVyxFQUFDLEVBQUUsRUFBQyxRQUFRLEVBQUUsS0FBSyxFQUFFLFlBQVksRUFBQyxDQUFDO1FBQ3hELFVBQUssR0FBYSxFQUFFLENBQUM7UUFFWixTQUFJLEdBQWdCLEVBQUUsQ0FBQztRQUN2QixjQUFTLEdBQVksRUFBRSxDQUFDO1FBQ3hCLGVBQVUsR0FBdUIsSUFBSSxZQUFZLEVBQVEsQ0FBQztRQUMxRCxhQUFRLEdBQXNCLElBQUksWUFBWSxFQUFlLENBQUM7SUFJbkUsQ0FBQztJQUVMLFFBQVE7UUFDTixJQUFJLENBQUMsS0FBSyxHQUFHLENBQUMsSUFBSSxDQUFDLFVBQVUsRUFBRSxHQUFHLElBQUksQ0FBQyxTQUFTLENBQUMsQ0FBQztRQUNsRCxJQUFJLENBQUMsUUFBUSxHQUFHLFFBQVEsQ0FBQztRQUN6QixJQUFJLElBQUksQ0FBQyxJQUFJLEVBQUUsTUFBTSxFQUFFO1lBQ3JCLElBQUksQ0FBQyxJQUFJ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LFVBQVU7c0JBQW5CLE1BQU07Z0JBQ0csUUFBUTtzQkFBakIsTUFBTSIsInNvdXJjZXNDb250ZW50IjpbImltcG9ydCB7IENvbXBvbmVudCwgRXZlbnRFbWl0dGVyLCBJbnB1dCwgT25Jbml0LCBPdXRwdXQsIFRlbXBsYXRlUmVmLCBWaWV3Q2hpbGQgfSBmcm9tICdAYW5ndWxhci9jb3JlJztcclxuaW1wb3J0IHsgRm9ybUNvbnRyb2wsIEZvcm1Hcm91cCwgVmFsaWRhdG9ycyB9IGZyb20gJ0Bhbmd1bGFyL2Zvcm1zJztcclxuaW1wb3J0IHsgQnNNb2RhbFJlZiwgQnNNb2RhbFNlcnZpY2UgfSBmcm9tICduZ3gtYm9vdHN0cmFwL21vZGFsJztcclxuaW1wb3J0IHsgTW9kYWxJdGVtLCBTZWxlY3QsIFNlbGVjdFJvdyB9IGZyb20gJy4uLy4uL21vZGVscy9kYXNoYm9hcmQubW9kZWwnO1xyXG5cclxuQENvbXBvbmVudCh7XHJcbiAgc2VsZWN0b3I6ICdsaWItbW9kYWwtZWRpdCcsXHJcbiAgdGVtcGxhdGVVcmw6ICcuL21vZGFsLWVkaXQuY29tcG9uZW50Lmh0bWwnLFxyXG4gIHN0eWxlVXJsczogWycuL21vZGFsLWVkaXQuY29tcG9uZW50LnNjc3MnXVxyXG59KVxyXG5leHBvcnQgY2xhc3MgTW9kYWxFZGl0Q29tcG9uZW50IGltcGxlbWVudHMgT25Jbml0IHtcclxuXHJcbiAgbW9kYWxSZWY/OiBCc01vZGFsUmVmO1xyXG4gIHJvd3M6IFNlbGVjdFJvd1tdID0gW107XHJcbiAgcm93c1R5cGU6IHN0cmluZyA9ICcnO1xyXG4gIHNpbXBsZVR5cGU6IFNlbGVjdCA9IHtpZDonc2ltcGxlJywgbGFiZWw6ICdRdWFudGlkYWRlJ307XHJcbiAgdHlwZXM6IFNlbGVjdFtdID0gW107XHJcbiAgXHJcbiAgQElucHV0KCkgZGF0YTogTW9kYWxJdGVtW10gPSBbXTtcclxuICBASW5wdXQoKSBncm91cFR5cGU6U2VsZWN0W10gPSBbXTtcclxuXHRAT3V0cHV0KCkgY2xvc2VNb2RhbDogRXZlbnRFbWl0dGVyPHZvaWQ+ID0gbmV3IEV2ZW50RW1pdHRlcjx2b2lkPigpO1xyXG5cdEBPdXRwdXQoKSBzYXZlRGF0YTogRXZlbnRFbWl0dGVyPGFueT4gPSBuZXcgRXZlbnRFbWl0dGVyPFNlbGVjdFJvd1tdPigpO1xyXG4gIFxyXG4gIGNvbnN0cnVjdG9yKFxyXG4gICAgcHJpdmF0ZSBtb2RhbFNlcnZpY2U6IEJzTW9kYWxTZXJ2aWNlXHJcbiAgKSB7IH1cclxuXHJcbiAgbmdPbkluaXQoKSB7XHJcbiAgICB0aGlzLnR5cGVzID0gW3RoaXMuc2ltcGxlVHlwZSwgLi4udGhpcy5ncm91cFR5cGVdO1xyXG4gICAgdGhpcy5yb3dzVHlwZSA9ICdzaW1wbGUnO1xyXG4gICAgaWYgKHRoaXMucm93cz8ubGVuZ3RoKSB7XHJcbiAgICAgIHRoaXMucm93cyA9IHRoaXMucm93cy5tYXAociA9PlxyXG4gICAgICAgIHRoaXMuYnVpbGRSb3dGcm9tRmluYWxWYWx1ZShyLmZpbmFsVmFsdWUpXHJcbiAgICAgICk7XHJcbiAgICB9IGVsc2Uge1xyXG4gICAgICB0aGlzLmFkZFJvdygpO1xyXG4gICAgfVxyXG4gIH1cclxuXHJcbiAgYWRkUm93KCk6dm9pZCB7XHJcbiAgICB0aGlzLnJvd3MucHVzaCh7XHJcbiAgICAgIGxldmVsczogW3RoaXMuYWRkVG9kb3NPcHRpb24odGhpcy5kYXRhKV0sXHJcbiAgICAgIHNlbGVjdGVkUGF0aDogW10sXHJcbiAgICAgIGZpbmFsVmFsdWU6IFtdLFxyXG4gICAgICBmaW5hbEZvbnRDb2xvcjogJycsXHJcbiAgICAgIGZpbmFsQmFja2dyb3VkQ29sb3I6ICcnXHJcbiAgICB9KTtcclxuICB9XHJcblxyXG4gIHJlbW92ZVJvdyhpbmRleDogbnVtYmVyKTp2b2lkIHtcclxuICAgIHRoaXMucm93cy5zcGxpY2UoaW5kZXgsIDEpO1xyXG4gIH1cclxuXHJcbiAgY2xvbmVSb3coaW5kZXg6IG51bWJlcik6IHZvaWQge1xyXG4gICAgY29uc3Qgb3JpZ2luYWwgPSB0aGlzLnJvd3NbaW5kZXhdO1xyXG5cclxuICAgIGNvbnN0IGNsb25lZCA9IHRoaXMuYnVpbGRSb3dGcm9tRmluYWxWYWx1ZShvcmlnaW5hbC5maW5hbFZhbHVlKTtcclxuXHJcbiAgICBjbG9uZWQuZmluYWxGb250Q29sb3IgPSBvcmlnaW5hbC5maW5hbEZvbnRDb2xvcjtcclxuICAgIGNsb25lZC5maW5hbEJhY2tncm91ZENvbG9yID0gb3JpZ2luYWwuZmluYWxCYWNrZ3JvdWRDb2xvcjtcclxuXHJcbiAgICB0aGlzLnJvd3MucHVzaChjbG9uZWQpO1xyXG4gIH1cclxuXHJcbiAgb25TZWxlY3QoaXRlbTogTW9kYWxJdGVtLCByb3dJbmRleDogbnVtYmVyLCBsZXZlbEluZGV4OiBudW1iZXIpOiB2b2lkIHtcclxuICAgIGNvbnN0IHJvdyA9IHRoaXMucm93c1tyb3dJbmRleF07XHJcblxyXG4gICAgcm93LmxldmVscyA9IHJvdy5sZXZlbHMuc2xpY2UoMCwgbGV2ZWxJbmRleCArIDEpO1xyXG4gICAgcm93LnNlbGVjdGVkUGF0aCA9IHJvdy5zZWxlY3RlZFBhdGguc2xpY2UoMCwgbGV2ZWxJbmRleCk7XHJcblxyXG4gICAgcm93LnNlbGVjdGVkUGF0aFtsZXZlbEluZGV4XSA9IGl0ZW07XHJcblxyXG4gICAgaWYgKGl0ZW0udHlwZSA9PT0gJ2dyb3VwJyAmJiBpdGVtLml0ZW1zPy5sZW5ndGgpIHtcclxuICAgICAgcm93LmxldmVscy5wdXNoKHRoaXMuYWRkVG9kb3NPcHRpb24oaXRlbS5pdGVtcykpO1xyXG4gICAgfVxyXG5cclxuICAgIHRoaXMudXBkYXRlRmluYWxWYWx1ZShyb3cpO1xyXG4gIH1cclxuXHJcbiAgdXBkYXRlRmluYWxWYWx1ZShyb3c6IFNlbGVjdFJvdyk6dm9pZCB7XHJcbiAgICByb3cuZmluYWxWYWx1ZSA9IHJvdy5zZWxlY3RlZFBhdGgubWFwKGkgPT4gU3RyaW5nKGkuaWQpKTtcclxuICB9XHJcbiAgXHJcbiAgb25Gb250Q29sb3JDaGFuZ2UoZXZlbnQ6IEV2ZW50LCByb3dJbmRleDogbnVtYmVyKTp2b2lkIHtcclxuICAgIGNvbnN0IHJvdyA9IHRoaXMucm93c1tyb3dJbmRleF07XHJcbiAgICBjb25zdCBjb2xvciA9IChldmVudC50YXJnZXQgYXMgSFRNTElucHV0RWxlbWVudCkudmFsdWU7XHJcbiAgICByb3cuZmluYWxGb250Q29sb3IgPSBjb2xvcjtcclxuICB9XHJcbiAgXHJcbiAgb25CYWNrZ3JvdW5kQ2hhbmdlKGV2ZW50OiBFdmVudCwgcm93SW5kZXg6IG51bWJlcik6dm9pZCB7XHJcbiAgICB2YXIgcm93ID0gdGhpcy5yb3dzW3Jvd0luZGV4XTtcclxuICAgIGNvbnN0IGNvbG9yID0gKGV2ZW50LnRhcmdldCBhcyBIVE1MSW5wdXRFbGVtZW50KS52YWx1ZTtcclxuICAgIHJvdy5maW5hbEJhY2tncm91ZENvbG9yID0gY29sb3I7XHJcbiAgfVxyXG5cclxuICBvbkNsb3NlTW9kYWwoKTp2b2lke1xyXG4gICAgdGhpcy5jbG9zZU1vZGFsLmVtaXQoKTtcclxuICB9XHJcbiAgXHJcbiAgb25TYXZlRGF0YSgpOnZvaWR7XHJcbiAgICBjb25zdCBuZXdEYXRhID0gdGhpcy5yb3dzLm1hcChyID0+ICh7XHJcbiAgICAgIGZpbmFsVmFsdWU6IHIuZmluYWxWYWx1ZSxcclxuICAgICAgZmluYWxCYWNrZ3JvdWRDb2xvcjogci5maW5hbEJhY2tncm91ZENvbG9yLFxyXG4gICAgICBmaW5hbEZvbnRDb2xvcjogci5maW5hbEZvbnRDb2xvcixcclxuICAgIH0pKTtcclxuICAgIHRoaXMuc2F2ZURhdGEuZW1pdCh7cm93c1R5cGU6IHRoaXMucm93c1R5cGUsIHJvd3M6IHRoaXMucm93c30pO1xyXG4gIH1cclxuXHJcbiAgaXNGbGF0TGV2ZWwobGV2ZWw6TW9kYWxJdGVtW10pOiBib29sZWFuIHtcclxuICAgIHJldHVybiBsZXZlbC5ldmVyeShpdGVtID0+IGl0ZW0udHlwZSAhPT0gJ2dyb3VwJykgPz8gZmFsc2U7XHJcbiAgfVxyXG5cclxuICBidWlsZFJvd0Zyb21GaW5hbFZhbHVlKGZpbmFsVmFsdWU6IHN0cmluZ1tdKTogU2VsZWN0Um93IHtcclxuXHJcbiAgICBjb25zdCByb3c6IFNlbGVjdFJvdyA9IHtcclxuICAgICAgbGV2ZWxzOiBbdGhpcy5hZGRUb2Rvc09wdGlvbih0aGlzLmRhdGEpXSxcclxuICAgICAgc2VsZWN0ZWRQYXRoOiBbXSxcclxuICAgICAgZmluYWxWYWx1ZSxcclxuICAgICAgZmluYWxGb250Q29sb3I6ICcnLFxyXG4gICAgICBmaW5hbEJhY2tncm91ZENvbG9yOiAnJ1xyXG4gICAgfTtcclxuXHJcbiAgICBsZXQgY3VycmVudExldmVsID0gdGhpcy5kYXRhO1xyXG5cclxuICAgIGZpbmFsVmFsdWUuZm9yRWFjaCgoaWQsIGluZGV4KSA9PiB7XHJcbiAgICAgIGNvbnN0IGZvdW5kID0gY3VycmVudExldmVsLmZpbmQoaXRlbSA9PiBpdGVtLmlkID09PSBpZCk7XHJcblxyXG4gICAgICBpZiAoIWZvdW5kKSByZXR1cm47XHJcblxyXG4gICAgICByb3cuc2VsZWN0ZWRQYXRoW2luZGV4XSA9IGZvdW5kO1xyXG5cclxuICAgICAgaWYgKGZvdW5kLnR5cGUgPT09ICdncm91cCcgJiYgZm91bmQuaXRlbXMpIHtcclxuICAgICAgICBjdXJyZW50TGV2ZWwgPSBmb3VuZC5pdGVtcztcclxuICAgICAgICByb3cubGV2ZWxzLnB1c2godGhpcy5hZGRUb2Rvc09wdGlvbihjdXJyZW50TGV2ZWwpKTtcclxuICAgICAgfVxyXG4gICAgfSk7XHJcblxyXG4gICAgcmV0dXJuIHJvdztcclxuICB9XHJcblxyXG4gIGFkZFRvZG9zT3B0aW9uKGl0ZW1zOiBNb2RhbEl0ZW1bXSk6IE1vZGFsSXRlbVtdIHtcclxuICAgIGNvbnN0IGlzRmxhdCA9IGl0ZW1zPy5ldmVyeShpdGVtID0+IGl0ZW0udHlwZSAhPT0gJ2dyb3VwJyk7XHJcblxyXG4gICAgaWYgKCFpc0ZsYXQpIHJldHVybiBpdGVtcztcclxuXHJcbiAgICBjb25zdCBhbHJlYWR5SGFzVG9kb3MgPSBpdGVtcy5zb21lKGkgPT4gaS5pZCA9PT0gJ3RvZG9zJyk7XHJcbiAgICBpZiAoYWxyZWFkeUhhc1RvZG9zKSByZXR1cm4gaXRlbXM7XHJcblxyXG4gICAgcmV0dXJuIFtcclxuICAgICAgeyBpZDogJ3RvZG9zJywgbGFiZWw6ICdUb2RvcycsIHR5cGU6ICdvcHRpb24nIH0sXHJcbiAgICAgIC4uLml0ZW1zXHJcbiAgICBdO1xyXG4gIH1cclxufVxyXG4iLCI8aGVhZGVyIGNsYXNzPVwibW9kYWwtaGVhZGVyXCI+XHJcbiAgPGg0IGNsYXNzPVwibW9kYWwtdGl0bGUgcHVsbC1sZWZ0XCI+RWRpdGFyIGZvbnRlIGRvcyBkYWRvczwvaDQ+XHJcbiAgPGJ1dHRvbiB0eXBlPVwiYnV0dG9uXCIgY2xhc3M9XCJidG4tY2xvc2UgY2xvc2UgcHVsbC1yaWdodFwiIGFyaWEtbGFiZWw9XCJDbG9zZVwiIChjbGljayk9XCJvbkNsb3NlTW9kYWwoKVwiPlxyXG4gICAgPHNwYW4gYXJpYS1oaWRkZW49XCJ0cnVlXCIgY2xhc3M9XCJ2aXN1YWxseS1oaWRkZW5cIj4mdGltZXM7PC9zcGFuPlxyXG4gIDwvYnV0dG9uPlxyXG48L2hlYWRlcj5cclxuPGJvZHkgY2xhc3M9XCJtb2RhbC1ib2R5IHRhYmxlLWZvcm0gcHktMlwiPlxyXG4gIDxsYWJlbD5UaXBvIGRlIEFncnVwYW1lbnRvIGRvcyBkYWRvczo8L2xhYmVsPlxyXG4gIDxuZy1zZWxlY3RcclxuICAgIGNsYXNzPVwiIGNvbC0xMiBjb2wtc20tNCBtYi0xXCJcclxuICAgIFtpdGVtc109XCJ0eXBlc1wiXHJcbiAgICBiaW5kVmFsdWU9XCJpZFwiXHJcbiAgICBiaW5kTGFiZWw9XCJsYWJlbFwiXHJcbiAgICBbY2xlYXJhYmxlXT1cImZhbHNlXCJcclxuICAgIHBsYWNlaG9sZGVyPVwiU2VsZWNpb25lLi4uXCJcclxuICAgIFsobmdNb2RlbCldPVwicm93c1R5cGVcIj5cclxuICA8L25nLXNlbGVjdD5cclxuICA8YXJ0aWNsZSAqbmdGb3I9XCJsZXQgcm93IG9mIHJvd3M7IGxldCByb3dJbmRleCA9IGluZGV4XCIgY2xhc3M9XCJsaW5lIG1iLTJcIj5cclxuICAgIDxkaXYgY2xhc3M9XCJkLWZsZXhcIj5cclxuICAgICAgPG5nLWNvbnRhaW5lciAqbmdGb3I9XCJsZXQgbGV2ZWwgb2Ygcm93LmxldmVsczsgbGV0IGxldmVsSW5kZXggPSBpbmRleFwiPlxyXG4gICAgICAgIDxuZy1zZWxlY3QgY2xhc3M9XCJtZS0xXCJcclxuICAgICAgICAgIFtpdGVtc109XCJsZXZlbFwiXHJcbiAgICAgICAgICBiaW5kTGFiZWw9XCJsYWJlbFwiXHJcbiAgICAgICAgICBbY2xlYXJhYmxlXT1cImZhbHNlXCJcclxuICAgICAgICAgIFtwbGFjZWhvbGRlcl09XCInU2VsZWNpb25lLi4uJ1wiXHJcbiAgICAgICAgICBbbmdNb2RlbF09XCJyb3cuc2VsZWN0ZWRQYXRoW2xldmVsSW5kZXhdXCJcclxuICAgICAgICAgIChjaGFuZ2UpPVwib25TZWxlY3QoJGV2ZW50LCByb3dJbmRleCwgbGV2ZWxJbmRleClcIj5cclxuICAgICAgICA8L25nLXNlbGVjdD5cclxuICAgICAgPC9uZy1jb250YWluZXI+XHJcbiAgICA8L2Rpdj5cclxuICAgIDxkaXYgY2xhc3M9XCJkLWZsZXhcIj5cclxuICAgICAgPGRpdiBjbGFzcz1cImNvbG9yLWRpdiBtZS0yXCIgW3N0eWxlLmJhY2tncm91bmQtY29sb3JdPVwicm93c1tyb3dJbmRleF0uZmluYWxCYWNrZ3JvdWRDb2xvclwiPlxyXG4gICAgICAgIDxidXR0b24gY2xhc3M9XCJidG4gZm9udC1pY29uXCIgW3N0eWxlLmNvbG9yXT1cInJvd3Nbcm93SW5kZXhdLmZpbmFsRm9udENvbG9yXCJcclxuICAgICAgICAgIHRpdGxlPVwiQ29yIGRvIHRleHRvXCIgKGNsaWNrKT1cImZvbnRDb2xvci5jbGljaygpXCI+XHJcbiAgICAgICAgICBmb3JtYXRfY29sb3JfdGV4dFxyXG4gICAgICAgIDwvYnV0dG9uPlxyXG4gICAgICAgIDxpbnB1dCAjZm9udENvbG9yIGNsYXNzPVwiaGlkZVwiIHR5cGU9XCJjb2xvclwiIChjaGFuZ2UpPVwib25Gb250Q29sb3JDaGFuZ2UoJGV2ZW50LCByb3dJbmRleClcIj5cclxuICAgICAgICA8aHIgY2xhc3M9XCJkaXZpc29yXCI+XHJcbiAgICAgICAgPGJ1dHRvbiBjbGFzcz1cImJ0biBmb250LWljb25cIiBbc3R5bGUuY29sb3JdPVwicm93c1tyb3dJbmRleF0uZmluYWxGb250Q29sb3JcIlxyXG4gICAgICAgICAgdGl0bGU9XCJDb3IgZGUgZnVuZG9cIiAoY2xpY2spPVwiYmFja2dyb3VuZENvbG9yLmNsaWNrKClcIj5cclxuICAgICAgICAgIGNvbG9yc1xyXG4gICAgICAgIDwvYnV0dG9uPlxyXG4gICAgICAgIDxpbnB1dCAjYmFja2dyb3VuZENvbG9yIGNsYXNzPVwiaGlkZVwiIHR5cGU9XCJjb2xvclwiIChjaGFuZ2UpPVwib25CYWNrZ3JvdW5kQ2hhbmdlKCRldmVudCwgcm93SW5kZXgpXCI+XHJcbiAgICAgIDwvZGl2PlxyXG4gICAgICA8YnV0dG9uIGNsYXNzPVwiYnRuIGJ0bi1iYXNpYyBmb250LWljb24gbWUtMlwiIHR5cGU9XCJidXR0b25cIiAoY2xpY2spPVwiY2xvbmVSb3cocm93SW5kZXgpXCIgdGl0bGU9XCJDbG9uYXIgbGluaGFcIj5cclxuICAgICAgICBjb3B5X2FsbFxyXG4gICAgICA8L2J1dHRvbj5cclxuICAgICAgPGJ1dHRvbiBjbGFzcz1cImJ0biBidG4tZGFuZ2VyIGZvbnQtaWNvblwiIHR5cGU9XCJidXR0b25cIiAoY2xpY2spPVwicmVtb3ZlUm93KHJvd0luZGV4KVwiIHRpdGxlPVwiUmVtb3ZlciBsaW5oYVwiPlxyXG4gICAgICAgIGRlbGV0ZVxyXG4gICAgICA8L2J1dHRvbj5cclxuICAgIDwvZGl2PlxyXG4gIDwvYXJ0aWNsZT5cclxuICA8ZGl2IGNsYXNzPVwiZC1mbGV4IG1iLTJcIj5cclxuICAgIDxidXR0b24gY2xhc3M9XCJidG4gYnRuLXN1Y2Nlc3NcIiB0eXBlPVwiYnV0dG9uXCIgKGNsaWNrKT1cImFkZFJvdygpXCIgdGl0bGU9XCJBZGljaW9uYXIgbGluaGFcIj4rPC9idXR0b24+XHJcbiAgPC9kaXY+XHJcbiAgPGRpdiBjbGFzcz1cImQtZmxleCBqdXN0aWZ5LWNvbnRlbnQtZW5kIG1iLTJcIj5cclxuICAgIDxidXR0b24gY2xhc3M9XCJidG4gYnRuLXN1Y2Nlc3NcIiB0eXBlPVwiYnV0dG9uXCIgKGNsaWNrKT1cIm9uU2F2ZURhdGEoKVwiIHRpdGxlPVwiU2FsdmFyXCI+U2FsdmFyPC9idXR0b24+XHJcbiAgPC9kaXY+XHJcbjwvYm9keT4iXX0=
|
|
@@ -0,0 +1,56 @@
|
|
|
1
|
+
import { Component, EventEmitter, Input, Output } from '@angular/core';
|
|
2
|
+
import * as i0 from "@angular/core";
|
|
3
|
+
import * as i1 from "@angular/common";
|
|
4
|
+
export class ModalEditChartComponent {
|
|
5
|
+
constructor() {
|
|
6
|
+
this.options = [
|
|
7
|
+
{ id: 'bar', title: 'Barra' },
|
|
8
|
+
{ id: 'stackedBar', title: 'Barra Empilhada' },
|
|
9
|
+
{ id: 'verticalBar', title: 'Barra Vertical' },
|
|
10
|
+
{ id: 'verticalStackedBar', title: 'Barra Vertical Empilhada' },
|
|
11
|
+
{ id: 'verticalProgressBar', title: 'Barra de Progresso Vertical' },
|
|
12
|
+
{ id: 'progressBar', title: 'Barra de Progresso' },
|
|
13
|
+
{ id: 'lineBar', title: 'Linha + Barra' },
|
|
14
|
+
{ id: 'lineBarStacked', title: 'Linha + Barra Empilhada' },
|
|
15
|
+
{ id: 'line', title: 'Linha' },
|
|
16
|
+
{ id: 'radar', title: 'Radar' },
|
|
17
|
+
{ id: 'curveLine', title: 'Linha Curva' },
|
|
18
|
+
{ id: 'pie', title: 'Pizza' },
|
|
19
|
+
{ id: 'multiPie', title: 'Múltiplas Pizzas' },
|
|
20
|
+
{ id: 'doughnut', title: 'Rosca' },
|
|
21
|
+
{ id: 'halfDoughnut', title: 'Meia Rosca' },
|
|
22
|
+
{ id: 'area', title: 'Área' },
|
|
23
|
+
{ id: 'bubble', title: 'Bolhas' },
|
|
24
|
+
{ id: 'polarArea', title: 'Área Polar' },
|
|
25
|
+
{ id: 'simpleCard', title: 'Card Simples' },
|
|
26
|
+
{ id: 'table', title: 'Tabela' },
|
|
27
|
+
{ id: 'html', title: 'HTML Personalizado' },
|
|
28
|
+
];
|
|
29
|
+
this.closeModal = new EventEmitter();
|
|
30
|
+
this.saveData = new EventEmitter();
|
|
31
|
+
}
|
|
32
|
+
ngOnInit() {
|
|
33
|
+
}
|
|
34
|
+
setCurrentOption(option) {
|
|
35
|
+
this.currentOption = option;
|
|
36
|
+
}
|
|
37
|
+
onCloseModal() {
|
|
38
|
+
this.closeModal.emit();
|
|
39
|
+
}
|
|
40
|
+
onSaveData() {
|
|
41
|
+
this.saveData.emit(this.currentOption);
|
|
42
|
+
}
|
|
43
|
+
}
|
|
44
|
+
ModalEditChartComponent.ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "15.2.10", ngImport: i0, type: ModalEditChartComponent, deps: [], target: i0.ɵɵFactoryTarget.Component });
|
|
45
|
+
ModalEditChartComponent.ɵcmp = i0.ɵɵngDeclareComponent({ minVersion: "14.0.0", version: "15.2.10", type: ModalEditChartComponent, selector: "lib-modal-edit-chart", inputs: { currentOption: "currentOption" }, outputs: { closeModal: "closeModal", saveData: "saveData" }, ngImport: i0, template: "<header class=\"modal-header\">\r\n <h4 class=\"modal-title pull-left\">Editar fonte dos dados</h4>\r\n <button type=\"button\" class=\"btn-close close pull-right\" aria-label=\"Close\" (click)=\"onCloseModal()\">\r\n <span aria-hidden=\"true\" class=\"visually-hidden\">×</span>\r\n </button>\r\n</header>\r\n<body class=\"modal-body table-form py-2\">\r\n <section class=\"d-grid\">\r\n <label >Titulo:\r\n <input class=\"form-control\"/>\r\n </label>\r\n <label>\r\n <input type=\"checkbox\"> Mostrar legenda no Gr\u00E1fico\r\n </label>\r\n <label>\r\n <input type=\"checkbox\"> Mostrar simbolo '%' na legenda\r\n </label>\r\n </section>\r\n <hr>\r\n <h3>TIPO:</h3>\r\n <section class=\"row g-0\">\r\n <div class=\"card-chart col-12 col-sm-6 col-md-6 col-lg-4 col-xl-3\" *ngFor=\"let opt of options\">\r\n <b>{{opt.title}}</b>\r\n <img [src]=\"'assets/dashboard/images/' + opt.id +'.png'\" (click)=\"setCurrentOption(opt.id)\">\r\n </div>\r\n </section>\r\n <div class=\"d-flex justify-content-end mb-2\">\r\n <button class=\"btn btn-success\" type=\"button\" (click)=\"onSaveData()\" title=\"Salvar\">Salvar</button>\r\n </div>\r\n</body>", styles: [".card-chart{display:flex;flex-direction:column;border:1px solid gray;border-radius:5px;padding:5px;aspect-ratio:1/1;overflow:hidden}.card-chart img{object-fit:cover;width:100%;margin:auto}\n"], dependencies: [{ kind: "directive", type: i1.NgForOf, selector: "[ngFor][ngForOf]", inputs: ["ngForOf", "ngForTrackBy", "ngForTemplate"] }] });
|
|
46
|
+
i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "15.2.10", ngImport: i0, type: ModalEditChartComponent, decorators: [{
|
|
47
|
+
type: Component,
|
|
48
|
+
args: [{ selector: 'lib-modal-edit-chart', template: "<header class=\"modal-header\">\r\n <h4 class=\"modal-title pull-left\">Editar fonte dos dados</h4>\r\n <button type=\"button\" class=\"btn-close close pull-right\" aria-label=\"Close\" (click)=\"onCloseModal()\">\r\n <span aria-hidden=\"true\" class=\"visually-hidden\">×</span>\r\n </button>\r\n</header>\r\n<body class=\"modal-body table-form py-2\">\r\n <section class=\"d-grid\">\r\n <label >Titulo:\r\n <input class=\"form-control\"/>\r\n </label>\r\n <label>\r\n <input type=\"checkbox\"> Mostrar legenda no Gr\u00E1fico\r\n </label>\r\n <label>\r\n <input type=\"checkbox\"> Mostrar simbolo '%' na legenda\r\n </label>\r\n </section>\r\n <hr>\r\n <h3>TIPO:</h3>\r\n <section class=\"row g-0\">\r\n <div class=\"card-chart col-12 col-sm-6 col-md-6 col-lg-4 col-xl-3\" *ngFor=\"let opt of options\">\r\n <b>{{opt.title}}</b>\r\n <img [src]=\"'assets/dashboard/images/' + opt.id +'.png'\" (click)=\"setCurrentOption(opt.id)\">\r\n </div>\r\n </section>\r\n <div class=\"d-flex justify-content-end mb-2\">\r\n <button class=\"btn btn-success\" type=\"button\" (click)=\"onSaveData()\" title=\"Salvar\">Salvar</button>\r\n </div>\r\n</body>", styles: [".card-chart{display:flex;flex-direction:column;border:1px solid gray;border-radius:5px;padding:5px;aspect-ratio:1/1;overflow:hidden}.card-chart img{object-fit:cover;width:100%;margin:auto}\n"] }]
|
|
49
|
+
}], ctorParameters: function () { return []; }, propDecorators: { currentOption: [{
|
|
50
|
+
type: Input
|
|
51
|
+
}], closeModal: [{
|
|
52
|
+
type: Output
|
|
53
|
+
}], saveData: [{
|
|
54
|
+
type: Output
|
|
55
|
+
}] } });
|
|
56
|
+
//# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoibW9kYWwtZWRpdC1jaGFydC5jb21wb25lbnQuanMiLCJzb3VyY2VSb290IjoiIiwic291cmNlcyI6WyIuLi8uLi8uLi8uLi8uLi8uLi9wcm9qZWN0cy9wcmltb3JkYXNoL3NyYy9saWIvY29tcG9uZW50cy9tb2RhbC1lZGl0LWNoYXJ0L21vZGFsLWVkaXQtY2hhcnQuY29tcG9uZW50LnRzIiwiLi4vLi4vLi4vLi4vLi4vLi4vcHJvamVjdHMvcHJpbW9yZGFzaC9zcmMvbGliL2NvbXBvbmVudHMvbW9kYWwtZWRpdC1jaGFydC9tb2RhbC1lZGl0LWNoYXJ0LmNvbXBvbmVudC5odG1sIl0sIm5hbWVzIjpbXSwibWFwcGluZ3MiOiJBQUFBLE9BQU8sRUFBRSxTQUFTLEVBQUUsWUFBWSxFQUFFLEtBQUssRUFBVSxNQUFNLEVBQUUsTUFBTSxlQUFlLENBQUM7OztBQVEvRSxNQUFNLE9BQU8sdUJBQXVCO0lBOEJsQztRQTVCQSxZQUFPLEdBQWlCO1lBQ3RCLEVBQUUsRUFBRSxFQUFFLEtBQUssRUFBRSxLQUFLLEVBQUUsT0FBTyxFQUFFO1lBQzdCLEVBQUUsRUFBRSxFQUFFLFlBQVksRUFBRSxLQUFLLEVBQUUsaUJBQWlCLEVBQUU7WUFDOUMsRUFBRSxFQUFFLEVBQUUsYUFBYSxFQUFFLEtBQUssRUFBRSxnQkFBZ0IsRUFBRTtZQUM5QyxFQUFFLEVBQUUsRUFBRSxvQkFBb0IsRUFBRSxLQUFLLEVBQUUsMEJBQTBCLEVBQUU7WUFDL0QsRUFBRSxFQUFFLEVBQUUscUJBQXFCLEVBQUUsS0FBSyxFQUFFLDZCQUE2QixFQUFFO1lBQ25FLEVBQUUsRUFBRSxFQUFFLGFBQWEsRUFBRSxLQUFLLEVBQUUsb0JBQW9CLEVBQUU7WUFDbEQsRUFBRSxFQUFFLEVBQUUsU0FBUyxFQUFFLEtBQUssRUFBRSxlQUFlLEVBQUU7WUFDekMsRUFBRSxFQUFFLEVBQUUsZ0JBQWdCLEVBQUUsS0FBSyxFQUFFLHlCQUF5QixFQUFFO1lBQzFELEVBQUUsRUFBRSxFQUFFLE1BQU0sRUFBRSxLQUFLLEVBQUUsT0FBTyxFQUFFO1lBQzlCLEVBQUUsRUFBRSxFQUFFLE9BQU8sRUFBRSxLQUFLLEVBQUUsT0FBTyxFQUFFO1lBQy9CLEVBQUUsRUFBRSxFQUFFLFdBQVcsRUFBRSxLQUFLLEVBQUUsYUFBYSxFQUFFO1lBQ3pDLEVBQUUsRUFBRSxFQUFFLEtBQUssRUFBRSxLQUFLLEVBQUUsT0FBTyxFQUFFO1lBQzdCLEVBQUUsRUFBRSxFQUFFLFVBQVUsRUFBRSxLQUFLLEVBQUUsa0JBQWtCLEVBQUU7WUFDN0MsRUFBRSxFQUFFLEVBQUUsVUFBVSxFQUFFLEtBQUssRUFBRSxPQUFPLEVBQUU7WUFDbEMsRUFBRSxFQUFFLEVBQUUsY0FBYyxFQUFFLEtBQUssRUFBRSxZQUFZLEVBQUU7WUFDM0MsRUFBRSxFQUFFLEVBQUUsTUFBTSxFQUFFLEtBQUssRUFBRSxNQUFNLEVBQUU7WUFDN0IsRUFBRSxFQUFFLEVBQUUsUUFBUSxFQUFFLEtBQUssRUFBRSxRQUFRLEVBQUU7WUFDakMsRUFBRSxFQUFFLEVBQUUsV0FBVyxFQUFFLEtBQUssRUFBRSxZQUFZLEVBQUU7WUFDeEMsRUFBRSxFQUFFLEVBQUUsWUFBWSxFQUFFLEtBQUssRUFBRSxjQUFjLEVBQUU7WUFDM0MsRUFBRSxFQUFFLEVBQUUsT0FBTyxFQUFFLEtBQUssRUFBRSxRQUFRLEVBQUU7WUFDaEMsRUFBRSxFQUFFLEVBQUUsTUFBTSxFQUFFLEtBQUssRUFBRSxvQkFBb0IsRUFBRTtTQUM1QyxDQUFDO1FBR1EsZUFBVSxHQUF1QixJQUFJLFlBQVksRUFBUSxDQUFDO1FBQzFELGFBQVEsR0FBc0IsSUFBSSxZQUFZLEVBQU8sQ0FBQztJQUVoRCxDQUFDO0lBRWpCLFFBQVE7SUFDUixDQUFDO0lBRUQsZ0JBQWdCLENBQUMsTUFBMEI7UUFDekMsSUFBSSxDQUFDLGFBQWEsR0FBRyxNQUFNLENBQUM7SUFDOUIsQ0FBQztJQUVELFlBQVk7UUFDVixJQUFJLENBQUMsVUFBVSxDQUFDLElBQUksRUFBRSxDQUFDO0lBQ3pCLENBQUM7SUFFRCxVQUFVO1FBQ1IsSUFBSSxDQUFDLFFBQVEsQ0FBQyxJQUFJLENBQUMsSUFBSSxDQUFDLGFBQWEsQ0FBQyxDQUFDO0lBQ3pDLENBQUM7O3FIQTdDVSx1QkFBdUI7eUdBQXZCLHVCQUF1QixxS0NScEMsaXNDQTZCTzs0RkRyQk0sdUJBQXVCO2tCQUxuQyxTQUFTOytCQUNFLHNCQUFzQjswRUE4QnZCLGFBQWE7c0JBQXJCLEtBQUs7Z0JBQ0ksVUFBVTtzQkFBbkIsTUFBTTtnQkFDRyxRQUFRO3NCQUFqQixNQUFNIiwic291cmNlc0NvbnRlbnQiOlsiaW1wb3J0IHsgQ29tcG9uZW50LCBFdmVudEVtaXR0ZXIsIElucHV0LCBPbkluaXQsIE91dHB1dCB9IGZyb20gJ0Bhbmd1bGFyL2NvcmUnO1xyXG5pbXBvcnQgeyBDaGFydE9wdGlvbiwgREFTSEJPQVJEX0NIQVJUX1RZUEVTLCBEYXNoYm9hcmRDaGFydFR5cGUgfSBmcm9tICcuLi8uLi9tb2RlbHMvZGFzaGJvYXJkLm1vZGVsJztcclxuXHJcbkBDb21wb25lbnQoe1xyXG4gIHNlbGVjdG9yOiAnbGliLW1vZGFsLWVkaXQtY2hhcnQnLFxyXG4gIHRlbXBsYXRlVXJsOiAnLi9tb2RhbC1lZGl0LWNoYXJ0LmNvbXBvbmVudC5odG1sJyxcclxuICBzdHlsZVVybHM6IFsnLi9tb2RhbC1lZGl0LWNoYXJ0LmNvbXBvbmVudC5zY3NzJ11cclxufSlcclxuZXhwb3J0IGNsYXNzIE1vZGFsRWRpdENoYXJ0Q29tcG9uZW50IGltcGxlbWVudHMgT25Jbml0IHtcclxuXHJcbiAgb3B0aW9uczpDaGFydE9wdGlvbltdID0gW1xyXG4gICAgeyBpZDogJ2JhcicsIHRpdGxlOiAnQmFycmEnIH0sXHJcbiAgICB7IGlkOiAnc3RhY2tlZEJhcicsIHRpdGxlOiAnQmFycmEgRW1waWxoYWRhJyB9LFxyXG4gICAgeyBpZDogJ3ZlcnRpY2FsQmFyJywgdGl0bGU6ICdCYXJyYSBWZXJ0aWNhbCcgfSxcclxuICAgIHsgaWQ6ICd2ZXJ0aWNhbFN0YWNrZWRCYXInLCB0aXRsZTogJ0JhcnJhIFZlcnRpY2FsIEVtcGlsaGFkYScgfSxcclxuICAgIHsgaWQ6ICd2ZXJ0aWNhbFByb2dyZXNzQmFyJywgdGl0bGU6ICdCYXJyYSBkZSBQcm9ncmVzc28gVmVydGljYWwnIH0sXHJcbiAgICB7IGlkOiAncHJvZ3Jlc3NCYXInLCB0aXRsZTogJ0JhcnJhIGRlIFByb2dyZXNzbycgfSxcclxuICAgIHsgaWQ6ICdsaW5lQmFyJywgdGl0bGU6ICdMaW5oYSArIEJhcnJhJyB9LFxyXG4gICAgeyBpZDogJ2xpbmVCYXJTdGFja2VkJywgdGl0bGU6ICdMaW5oYSArIEJhcnJhIEVtcGlsaGFkYScgfSxcclxuICAgIHsgaWQ6ICdsaW5lJywgdGl0bGU6ICdMaW5oYScgfSxcclxuICAgIHsgaWQ6ICdyYWRhcicsIHRpdGxlOiAnUmFkYXInIH0sXHJcbiAgICB7IGlkOiAnY3VydmVMaW5lJywgdGl0bGU6ICdMaW5oYSBDdXJ2YScgfSxcclxuICAgIHsgaWQ6ICdwaWUnLCB0aXRsZTogJ1BpenphJyB9LFxyXG4gICAgeyBpZDogJ211bHRpUGllJywgdGl0bGU6ICdNw7psdGlwbGFzIFBpenphcycgfSxcclxuICAgIHsgaWQ6ICdkb3VnaG51dCcsIHRpdGxlOiAnUm9zY2EnIH0sXHJcbiAgICB7IGlkOiAnaGFsZkRvdWdobnV0JywgdGl0bGU6ICdNZWlhIFJvc2NhJyB9LFxyXG4gICAgeyBpZDogJ2FyZWEnLCB0aXRsZTogJ8OBcmVhJyB9LFxyXG4gICAgeyBpZDogJ2J1YmJsZScsIHRpdGxlOiAnQm9saGFzJyB9LFxyXG4gICAgeyBpZDogJ3BvbGFyQXJlYScsIHRpdGxlOiAnw4FyZWEgUG9sYXInIH0sXHJcbiAgICB7IGlkOiAnc2ltcGxlQ2FyZCcsIHRpdGxlOiAnQ2FyZCBTaW1wbGVzJyB9LFxyXG4gICAgeyBpZDogJ3RhYmxlJywgdGl0bGU6ICdUYWJlbGEnIH0sXHJcbiAgICB7IGlkOiAnaHRtbCcsIHRpdGxlOiAnSFRNTCBQZXJzb25hbGl6YWRvJyB9LFxyXG4gIF07XHJcblxyXG4gIEBJbnB1dCgpIGN1cnJlbnRPcHRpb24hOiBEYXNoYm9hcmRDaGFydFR5cGV8bnVsbDtcclxuICBAT3V0cHV0KCkgY2xvc2VNb2RhbDogRXZlbnRFbWl0dGVyPHZvaWQ+ID0gbmV3IEV2ZW50RW1pdHRlcjx2b2lkPigpO1xyXG4gIEBPdXRwdXQoKSBzYXZlRGF0YTogRXZlbnRFbWl0dGVyPGFueT4gPSBuZXcgRXZlbnRFbWl0dGVyPGFueT4oKTtcclxuXHJcbiAgY29uc3RydWN0b3IoKSB7IH1cclxuXHJcbiAgbmdPbkluaXQoKSB7XHJcbiAgfVxyXG4gIFxyXG4gIHNldEN1cnJlbnRPcHRpb24ob3B0aW9uOiBEYXNoYm9hcmRDaGFydFR5cGUpOnZvaWR7XHJcbiAgICB0aGlzLmN1cnJlbnRPcHRpb24gPSBvcHRpb247XHJcbiAgfVxyXG5cclxuICBvbkNsb3NlTW9kYWwoKTp2b2lke1xyXG4gICAgdGhpcy5jbG9zZU1vZGFsLmVtaXQoKTtcclxuICB9XHJcbiAgXHJcbiAgb25TYXZlRGF0YSgpOnZvaWR7XHJcbiAgICB0aGlzLnNhdmVEYXRhLmVtaXQodGhpcy5jdXJyZW50T3B0aW9uKTtcclxuICB9XHJcblxyXG59XHJcbiIsIjxoZWFkZXIgY2xhc3M9XCJtb2RhbC1oZWFkZXJcIj5cclxuICA8aDQgY2xhc3M9XCJtb2RhbC10aXRsZSBwdWxsLWxlZnRcIj5FZGl0YXIgZm9udGUgZG9zIGRhZG9zPC9oND5cclxuICA8YnV0dG9uIHR5cGU9XCJidXR0b25cIiBjbGFzcz1cImJ0bi1jbG9zZSBjbG9zZSBwdWxsLXJpZ2h0XCIgYXJpYS1sYWJlbD1cIkNsb3NlXCIgKGNsaWNrKT1cIm9uQ2xvc2VNb2RhbCgpXCI+XHJcbiAgICA8c3BhbiBhcmlhLWhpZGRlbj1cInRydWVcIiBjbGFzcz1cInZpc3VhbGx5LWhpZGRlblwiPiZ0aW1lczs8L3NwYW4+XHJcbiAgPC9idXR0b24+XHJcbjwvaGVhZGVyPlxyXG48Ym9keSBjbGFzcz1cIm1vZGFsLWJvZHkgdGFibGUtZm9ybSBweS0yXCI+XHJcbiAgPHNlY3Rpb24gY2xhc3M9XCJkLWdyaWRcIj5cclxuICAgIDxsYWJlbCA+VGl0dWxvOlxyXG4gICAgICA8aW5wdXQgY2xhc3M9XCJmb3JtLWNvbnRyb2xcIi8+XHJcbiAgICA8L2xhYmVsPlxyXG4gICAgPGxhYmVsPlxyXG4gICAgICA8aW5wdXQgdHlwZT1cImNoZWNrYm94XCI+IE1vc3RyYXIgbGVnZW5kYSBubyBHcsOhZmljb1xyXG4gICAgPC9sYWJlbD5cclxuICAgIDxsYWJlbD5cclxuICAgICAgPGlucHV0IHR5cGU9XCJjaGVja2JveFwiPiBNb3N0cmFyIHNpbWJvbG8gJyUnIG5hIGxlZ2VuZGFcclxuICAgIDwvbGFiZWw+XHJcbiAgPC9zZWN0aW9uPlxyXG4gIDxocj5cclxuICA8aDM+VElQTzo8L2gzPlxyXG4gIDxzZWN0aW9uIGNsYXNzPVwicm93IGctMFwiPlxyXG4gICAgPGRpdiBjbGFzcz1cImNhcmQtY2hhcnQgY29sLTEyIGNvbC1zbS02IGNvbC1tZC02IGNvbC1sZy00IGNvbC14bC0zXCIgKm5nRm9yPVwibGV0IG9wdCBvZiBvcHRpb25zXCI+XHJcbiAgICAgIDxiPnt7b3B0LnRpdGxlfX08L2I+XHJcbiAgICAgIDxpbWcgW3NyY109XCInYXNzZXRzL2Rhc2hib2FyZC9pbWFnZXMvJyArIG9wdC5pZCArJy5wbmcnXCIgKGNsaWNrKT1cInNldEN1cnJlbnRPcHRpb24ob3B0LmlkKVwiPlxyXG4gICAgPC9kaXY+XHJcbiAgPC9zZWN0aW9uPlxyXG4gIDxkaXYgY2xhc3M9XCJkLWZsZXgganVzdGlmeS1jb250ZW50LWVuZCBtYi0yXCI+XHJcbiAgICA8YnV0dG9uIGNsYXNzPVwiYnRuIGJ0bi1zdWNjZXNzXCIgdHlwZT1cImJ1dHRvblwiIChjbGljayk9XCJvblNhdmVEYXRhKClcIiB0aXRsZT1cIlNhbHZhclwiPlNhbHZhcjwvYnV0dG9uPlxyXG4gIDwvZGl2PlxyXG48L2JvZHk+Il19
|
|
@@ -0,0 +1,46 @@
|
|
|
1
|
+
export const DASHBOARD_CHART_TYPES = [
|
|
2
|
+
'bar',
|
|
3
|
+
'stackedBar',
|
|
4
|
+
'verticalBar',
|
|
5
|
+
'verticalStackedBar',
|
|
6
|
+
'verticalProgressBar',
|
|
7
|
+
'progressBar',
|
|
8
|
+
'lineBar',
|
|
9
|
+
'lineBarStacked',
|
|
10
|
+
'line',
|
|
11
|
+
'radar',
|
|
12
|
+
'curveLine',
|
|
13
|
+
'pie',
|
|
14
|
+
'multiPie',
|
|
15
|
+
'doughnut',
|
|
16
|
+
'halfDoughnut',
|
|
17
|
+
'area',
|
|
18
|
+
'bubble',
|
|
19
|
+
'polarArea',
|
|
20
|
+
'simpleCard',
|
|
21
|
+
'table',
|
|
22
|
+
'html',
|
|
23
|
+
];
|
|
24
|
+
export const DASHBOARD_BAR_LINE_TYPES = [
|
|
25
|
+
'bar', 'stackedBar', 'verticalBar', 'verticalStackedBar', 'progressBar', 'verticalProgressBar',
|
|
26
|
+
'lineBar', 'lineBarStacked', 'line', 'radar', 'curveLine'
|
|
27
|
+
];
|
|
28
|
+
export const SUPPORTED_CHART_TYPES = [
|
|
29
|
+
'bar',
|
|
30
|
+
'line',
|
|
31
|
+
'radar'
|
|
32
|
+
];
|
|
33
|
+
export const AXIS_ORIENTATION = [
|
|
34
|
+
'x',
|
|
35
|
+
'y',
|
|
36
|
+
];
|
|
37
|
+
export const AXIS_DIMENSION = [
|
|
38
|
+
'x',
|
|
39
|
+
'y',
|
|
40
|
+
'r',
|
|
41
|
+
];
|
|
42
|
+
export const MODAL_TYPES = [
|
|
43
|
+
'group',
|
|
44
|
+
'option'
|
|
45
|
+
];
|
|
46
|
+
//# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoiZGFzaGJvYXJkLm1vZGVsLmpzIiwic291cmNlUm9vdCI6IiIsInNvdXJjZXMiOlsiLi4vLi4vLi4vLi4vLi4vcHJvamVjdHMvcHJpbW9yZGFzaC9zcmMvbGliL21vZGVscy9kYXNoYm9hcmQubW9kZWwudHMiXSwibmFtZXMiOltdLCJtYXBwaW5ncyI6IkFBMEpBLE1BQU0sQ0FBQyxNQUFNLHFCQUFxQixHQUFHO0lBQ25DLEtBQUs7SUFDTCxZQUFZO0lBQ1osYUFBYTtJQUNiLG9CQUFvQjtJQUNwQixxQkFBcUI7SUFDckIsYUFBYTtJQUNiLFNBQVM7SUFDVCxnQkFBZ0I7SUFDaEIsTUFBTTtJQUNOLE9BQU87SUFDUCxXQUFXO0lBQ1gsS0FBSztJQUNMLFVBQVU7SUFDVixVQUFVO0lBQ1YsY0FBYztJQUNkLE1BQU07SUFDTixRQUFRO0lBQ1IsV0FBVztJQUNYLFlBQVk7SUFDWixPQUFPO0lBQ1AsTUFBTTtDQUNFLENBQUM7QUFLWCxNQUFNLENBQUMsTUFBTSx3QkFBd0IsR0FBRTtJQUNyQyxLQUFLLEVBQUUsWUFBWSxFQUFFLGFBQWEsRUFBRSxvQkFBb0IsRUFBQyxhQUFhLEVBQUMscUJBQXFCO0lBQzVGLFNBQVMsRUFBQyxnQkFBZ0IsRUFBRSxNQUFNLEVBQUUsT0FBTyxFQUFFLFdBQVc7Q0FDekQsQ0FBQTtBQUlELE1BQU0sQ0FBQyxNQUFNLHFCQUFxQixHQUFHO0lBQ25DLEtBQUs7SUFDTCxNQUFNO0lBQ04sT0FBTztDQUNDLENBQUM7QUFNWCxNQUFNLENBQUMsTUFBTSxnQkFBZ0IsR0FBRztJQUM5QixHQUFHO0lBQ0gsR0FBRztDQUNLLENBQUM7QUFNWCxNQUFNLENBQUMsTUFBTSxjQUFjLEdBQUc7SUFDNUIsR0FBRztJQUNILEdBQUc7SUFDSCxHQUFHO0NBQ0ssQ0FBQztBQU1YLE1BQU0sQ0FBQyxNQUFNLFdBQVcsR0FBRztJQUN6QixPQUFPO0lBQ1AsUUFBUTtDQUNBLENBQUMiLCJzb3VyY2VzQ29udGVudCI6WyJpbXBvcnQgeyBDaGFydERhdGEsIENoYXJ0T3B0aW9ucywgQ2hhcnRUeXBlIH0gZnJvbSBcImNoYXJ0LmpzXCJcclxuXHJcbmV4cG9ydCBpbnRlcmZhY2UgQ2FyZCB7XHJcblxyXG4gIC8qKiBJZGVudGlmaWNhZG9yIMO6bmljbyBkbyBjYXJkICovXHJcbiAgaWQ/OiBudW1iZXI7XHJcblxyXG4gIC8qKiBUaXBvIGRvIGdyw6FmaWNvIGV4aWJpZG8gbm8gY2FyZCAqL1xyXG4gIHR5cGU/OiBEYXNoYm9hcmRDaGFydFR5cGU7XHJcblxyXG4gIC8qKiBUw610dWxvIGV4aWJpZG8gbm8gdG9wbyBkbyBjYXJkICovXHJcbiAgdGl0bGU/OiBzdHJpbmc7XHJcblxyXG4gIC8qKiBPcmRlbSBkZSBleGliacOnw6NvIG5vIGRhc2hib2FyZCAqL1xyXG4gIG9yZGVyPzogbnVtYmVyO1xyXG5cclxuICAvKiogUXVhbnRpZGFkZSBkZSBjb2x1bmFzIG9jdXBhZGFzIG5vIGdyaWQgKi9cclxuICBjb2xzOiBudW1iZXI7XHJcblxyXG4gIC8qKiBRdWFudGlkYWRlIGRlIGxpbmhhcyBvY3VwYWRhcyBubyBncmlkICovXHJcbiAgcm93cz86IG51bWJlcjtcclxuXHJcbiAgLyoqIENvciBkYSBmb250ZSBkbyBjYXJkICovXHJcbiAgZm9udENvbG9yPzogc3RyaW5nO1xyXG5cclxuICAvKiogQ29yIGRlIGZ1bmRvIGRvIGNhcmQgKi9cclxuICBiYWNrZ3JvdW5kQ29sb3I/OiBzdHJpbmc7XHJcblxyXG4gIC8qKiBMaXN0YSBkZSBtw6l0cmljYXMvY29sdW5hcyBxdWUgc2Vyw6NvIGV4aWJpZGFzICovXHJcbiAga2V5cz86IEl0ZW1bXTtcclxuXHJcbiAgLyoqIERlZmluZSBzZSBvIGdyw6FmaWNvIHNlcsOhIGVtcGlsaGFkbyAqL1xyXG4gIHN0YWNrZWQ/OiBib29sZWFuO1xyXG5cclxuICAvKiogRXhpYmUgdmFsb3JlcyBlbSBwb3JjZW50YWdlbSAqL1xyXG4gIHNob3dQb3JjZW50PzogYm9vbGVhbjtcclxuXHJcbiAgLyoqIEV4aWJlIHLDs3R1bG9zIGRlbnRybyBkbyBncsOhZmljbyAqL1xyXG4gIHNob3dMYWJlbD86IGJvb2xlYW47XHJcblxyXG4gIC8qKiBPcmllbnRhw6fDo28gZG8gZWl4byBwcmluY2lwYWwgKGhvcml6b250YWwgb3UgdmVydGljYWwpICovXHJcbiAgYXhpc09yaWVudGF0aW9uPzogQXhpc09yaWVudGF0aW9uO1xyXG5cclxuICAvKiogQ29uZmlndXJhw6fDo28gcGVyc29uYWxpemFkYSBkbyBlaXhvIFggKi9cclxuICBheGlzWD86IEF4aXM7XHJcblxyXG4gIC8qKiBDb25maWd1cmHDp8OjbyBwZXJzb25hbGl6YWRhIGRvIGVpeG8gWSAqL1xyXG4gIGF4aXNZPzogQXhpcztcclxuXHJcbiAgLyoqIERhZG9zIHF1ZSBhbGltZW50YW0gbyBncsOhZmljbyAqL1xyXG4gIGRhdGE/OiBhbnlbXTtcclxuXHJcbiAgLyoqIENvbnRlw7pkbyBIVE1MIHBlcnNvbmFsaXphZG8gKGNhc28gbsOjbyBzZWphIGdyw6FmaWNvKSAqL1xyXG4gIGlubmVySHRtbD86IGFueTtcclxufVxyXG5cclxuXHJcbmV4cG9ydCBpbnRlcmZhY2UgSXRlbSB7XHJcblxyXG4gIC8qKiBOb21lIGRhIHByb3ByaWVkYWRlIG5vIG9iamV0byBkZSBkYWRvcyAoZXg6ICd0b3RhbFZlbmRhcycpICovXHJcbiAga2V5OiBzdHJpbmc7XHJcblxyXG4gIC8qKiBOb21lIGV4aWJpZG8gbmEgbGVnZW5kYSBkbyBncsOhZmljbyAqL1xyXG4gIGxhYmVsOiBzdHJpbmc7XHJcblxyXG4gIC8qKiBDaGF2ZSB1c2FkYSBwYXJhIGVpeG8gWCAodXNhZG8gZW0gYnViYmxlIGNoYXJ0KSAqL1xyXG4gIGtleVg/OiBzdHJpbmc7XHJcblxyXG4gIC8qKiBDaGF2ZSB1c2FkYSBwYXJhIGVpeG8gWSAodXNhZG8gZW0gYnViYmxlIGNoYXJ0KSovXHJcbiAga2V5WT86IHN0cmluZztcclxuXHJcbiAgLyoqIENoYXZlIHVzYWRhIHBhcmEgcmFpbyAodXNhZG8gZW0gYnViYmxlIGNoYXJ0KSAqL1xyXG4gIGtleVI/OiBzdHJpbmc7XHJcblxyXG4gIC8qKiBDb3IgZGEgc8OpcmllIG5vIGdyw6FmaWNvIChoZXgsIHJnYiwgcmdiYSwgZXRjLikgKi9cclxuICBjb2xvcj86IHN0cmluZztcclxuXHJcbiAgLyoqIElkZW50aWZpY2Fkb3IgZGUgZW1waWxoYW1lbnRvICh1c2FkbyBxdWFuZG8gc3RhY2tlZCA9IHRydWUpICovXHJcbiAgc3RhY2tLZXk/OiBzdHJpbmc7XHJcblxyXG4gIC8qKiBUaXBvIGVzcGVjw61maWNvIGRhIHPDqXJpZSAoZXg6ICdsaW5lJyBkZW50cm8gZGUgdW0gZ3LDoWZpY28gYmFyIG1pc3RvKSAqL1xyXG4gIHR5cGU/OiBTdXBwb3J0ZWRDaGFydFR5cGU7XHJcblxyXG4gIC8qKiBEZWZpbmUgZW0gcXVhbCBlaXhvIGEgc8OpcmllIHNlcsOhIHJlbmRlcml6YWRhIChleDogbGVmdCBvdSByaWdodCkgKi9cclxuICBheGlzVHlwZT86IEF4aXNEaW1lbnNpb247XHJcblxyXG4gIC8qKiBEZWZpbmUgc2UgYSDDoXJlYSBhYmFpeG8gZGEgbGluaGEgc2Vyw6EgcHJlZW5jaGlkYSAobGluZSBjaGFydCkgKi9cclxuICBmaWxsPzogYm9vbGVhbjtcclxufVxyXG5cclxuZXhwb3J0IGludGVyZmFjZSBBeGlzIHtcclxuXHJcbiAgLyoqIE5vbWUgZGEgcHJvcHJpZWRhZGUgdXNhZGEgY29tbyBlaXhvICovXHJcbiAga2V5OiBzdHJpbmc7XHJcblxyXG4gIC8qKiBUw610dWxvIGV4aWJpZG8gbm8gZWl4byAqL1xyXG4gIGxhYmVsOiBzdHJpbmc7XHJcblxyXG4gIC8qKiBDb3IgYXBsaWNhZGEgYW8gZWl4byAodGlja3MgZSBsYWJlbCkgKi9cclxuICBrZXlDb2xvcj86IHN0cmluZztcclxufVxyXG5cclxuZXhwb3J0IGludGVyZmFjZSBPcHRpb24ge1xyXG5cclxuICAvKiogSWRlbnRpZmljYWRvciDDum5pY28gZGEgb3DDp8OjbyAqL1xyXG4gIGlkPzogbnVtYmVyO1xyXG5cclxuICAvKiogVMOtdHVsbyBleGliaWRvIG5vIGNhcmQvb3DDp8OjbyAqL1xyXG4gIHRpdGxlOiBzdHJpbmc7XHJcblxyXG4gIC8qKiBPcmRlbSBkZSBleGliacOnw6NvICovXHJcbiAgb3JkZXI/OiBudW1iZXI7XHJcblxyXG4gIC8qKiBRdWFudGlkYWRlIGRlIGNvbHVuYXMgb2N1cGFkYXMgbm8gZ3JpZCAqL1xyXG4gIGNvbHM6IG51bWJlcjtcclxuXHJcbiAgLyoqIFF1YW50aWRhZGUgZGUgbGluaGFzIG9jdXBhZGFzIG5vIGdyaWQgKi9cclxuICByb3dzOiBudW1iZXI7XHJcbn1cclxuXHJcbmV4cG9ydCBpbnRlcmZhY2UgTW9kYWxJdGVtIHtcclxuICBpZDogc3RyaW5nfG51bWJlcjtcclxuICBsYWJlbDogc3RyaW5nO1xyXG4gIHR5cGU6IE1vZGFsVHlwZXM7XHJcbiAgdmFsdWU/OiBudW1iZXI7XHJcbiAgaXRlbXM/OiBNb2RhbEl0ZW1bXTtcclxufVxyXG5leHBvcnQgaW50ZXJmYWNlIFNlbGVjdFJvdyB7XHJcbiAgbGV2ZWxzOiBNb2RhbEl0ZW1bXVtdO1xyXG4gIHNlbGVjdGVkUGF0aDogTW9kYWxJdGVtW107XHJcbiAgZmluYWxWYWx1ZTogc3RyaW5nW107XHJcbiAgZmluYWxGb250Q29sb3I6IHN0cmluZztcclxuICBmaW5hbEJhY2tncm91ZENvbG9yOiBzdHJpbmc7XHJcbn1cclxuXHJcbmV4cG9ydCBpbnRlcmZhY2UgU2VsZWN0IHtcclxuICBpZDogc3RyaW5nfG51bWJlcjtcclxuICBsYWJlbDogc3RyaW5nO1xyXG59XHJcblxyXG5leHBvcnQgaW50ZXJmYWNlIENoYXJ0T3B0aW9ue1xyXG4gIGlkOkRhc2hib2FyZENoYXJ0VHlwZSxcclxuICB0aXRsZTpzdHJpbmdcclxufVxyXG5leHBvcnQgaW50ZXJmYWNlIENoYXRDb25maWc8VCBleHRlbmRzIENoYXJ0VHlwZSA9IENoYXJ0VHlwZT4ge1xyXG4gIHR5cGU6IFQ7XHJcbiAgZGF0YTogQ2hhcnREYXRhPFQ+O1xyXG4gIG9wdGlvbnM6IENoYXJ0T3B0aW9uczxUPjtcclxufVxyXG5cclxuXHJcbmV4cG9ydCB0eXBlIERhc2hib2FyZENoYXJ0VHlwZSA9XHJcbiAgdHlwZW9mIERBU0hCT0FSRF9DSEFSVF9UWVBFU1tudW1iZXJdO1xyXG5cclxuZXhwb3J0IGNvbnN0IERBU0hCT0FSRF9DSEFSVF9UWVBFUyA9IFtcclxuICAnYmFyJywgXHJcbiAgJ3N0YWNrZWRCYXInLCBcclxuICAndmVydGljYWxCYXInLCBcclxuICAndmVydGljYWxTdGFja2VkQmFyJyxcclxuICAndmVydGljYWxQcm9ncmVzc0JhcicsXHJcbiAgJ3Byb2dyZXNzQmFyJyxcclxuICAnbGluZUJhcicsIFxyXG4gICdsaW5lQmFyU3RhY2tlZCcsXHJcbiAgJ2xpbmUnLCBcclxuICAncmFkYXInLCBcclxuICAnY3VydmVMaW5lJyxcclxuICAncGllJyxcclxuICAnbXVsdGlQaWUnLFxyXG4gICdkb3VnaG51dCcsXHJcbiAgJ2hhbGZEb3VnaG51dCcsXHJcbiAgJ2FyZWEnLFxyXG4gICdidWJibGUnLFxyXG4gICdwb2xhckFyZWEnLFxyXG4gICdzaW1wbGVDYXJkJyxcclxuICAndGFibGUnLFxyXG4gICdodG1sJyxcclxuXSBhcyBjb25zdDtcclxuXHJcbmV4cG9ydCB0eXBlIERhc2hib2FyZEJhckxpbmVUeXBlID1cclxuICB0eXBlb2YgREFTSEJPQVJEX0JBUl9MSU5FX1RZUEVTW251bWJlcl07XHJcbiAgXHJcbmV4cG9ydCBjb25zdCBEQVNIQk9BUkRfQkFSX0xJTkVfVFlQRVMgPVtcclxuICAnYmFyJywgJ3N0YWNrZWRCYXInLCAndmVydGljYWxCYXInLCAndmVydGljYWxTdGFja2VkQmFyJywncHJvZ3Jlc3NCYXInLCd2ZXJ0aWNhbFByb2dyZXNzQmFyJyxcclxuICAnbGluZUJhcicsJ2xpbmVCYXJTdGFja2VkJywgJ2xpbmUnLCAncmFkYXInLCAnY3VydmVMaW5lJ1xyXG5dXHJcbmV4cG9ydCB0eXBlIFN1cHBvcnRlZENoYXJ0VHlwZSA9XHJcbiAgdHlwZW9mIFNVUFBPUlRFRF9DSEFSVF9UWVBFU1tudW1iZXJdO1xyXG5cclxuZXhwb3J0IGNvbnN0IFNVUFBPUlRFRF9DSEFSVF9UWVBFUyA9IFtcclxuICAnYmFyJyxcclxuICAnbGluZScsXHJcbiAgJ3JhZGFyJ1xyXG5dIGFzIGNvbnN0O1xyXG5cclxuXHJcbmV4cG9ydCB0eXBlIEF4aXNPcmllbnRhdGlvbiA9XHJcbiAgdHlwZW9mIEFYSVNfT1JJRU5UQVRJT05bbnVtYmVyXTtcclxuXHJcbmV4cG9ydCBjb25zdCBBWElTX09SSUVOVEFUSU9OID0gW1xyXG4gICd4JyxcclxuICAneScsXHJcbl0gYXMgY29uc3Q7XHJcblxyXG5cclxuZXhwb3J0IHR5cGUgQXhpc0RpbWVuc2lvbiA9XHJcbiAgdHlwZW9mIEFYSVNfRElNRU5TSU9OW251bWJlcl07XHJcblxyXG5leHBvcnQgY29uc3QgQVhJU19ESU1FTlNJT04gPSBbXHJcbiAgJ3gnLFxyXG4gICd5JyxcclxuICAncicsXHJcbl0gYXMgY29uc3Q7XHJcblxyXG5cclxuZXhwb3J0IHR5cGUgTW9kYWxUeXBlcyA9XHJcbiAgdHlwZW9mIE1PREFMX1RZUEVTW251bWJlcl07XHJcblxyXG5leHBvcnQgY29uc3QgTU9EQUxfVFlQRVMgPSBbXHJcbiAgJ2dyb3VwJyxcclxuICAnb3B0aW9uJ1xyXG5dIGFzIGNvbnN0O1xyXG4iXX0=
|
|
@@ -0,0 +1,75 @@
|
|
|
1
|
+
import { Component, Input } from '@angular/core';
|
|
2
|
+
import * as i0 from "@angular/core";
|
|
3
|
+
import * as i1 from "./components/dashboard/dashboard.component";
|
|
4
|
+
export class PrimordashComponent {
|
|
5
|
+
constructor() {
|
|
6
|
+
this.isDark = false;
|
|
7
|
+
this.isResponsive = true;
|
|
8
|
+
this.canEdit = false;
|
|
9
|
+
this.cols = 4;
|
|
10
|
+
this.options = [
|
|
11
|
+
{ title: '1x1', cols: 1, rows: 1 },
|
|
12
|
+
{ title: '2x1', cols: 2, rows: 1 },
|
|
13
|
+
{ title: '3x1', cols: 3, rows: 1 },
|
|
14
|
+
{ title: '1x2', cols: 1, rows: 2 },
|
|
15
|
+
{ title: '2x2', cols: 2, rows: 2 },
|
|
16
|
+
];
|
|
17
|
+
this.cards = [];
|
|
18
|
+
this.groupType = [];
|
|
19
|
+
this.modalData = [];
|
|
20
|
+
this.debug = false;
|
|
21
|
+
}
|
|
22
|
+
}
|
|
23
|
+
PrimordashComponent.ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "15.2.10", ngImport: i0, type: PrimordashComponent, deps: [], target: i0.ɵɵFactoryTarget.Component });
|
|
24
|
+
PrimordashComponent.ɵcmp = i0.ɵɵngDeclareComponent({ minVersion: "14.0.0", version: "15.2.10", type: PrimordashComponent, selector: "lib-primordash", inputs: { isDark: "isDark", isResponsive: "isResponsive", canEdit: "canEdit", cols: "cols", options: "options", cards: "cards", groupType: "groupType", modalData: "modalData", data: "data", debug: "debug" }, ngImport: i0, template: `
|
|
25
|
+
<lib-dashboard
|
|
26
|
+
[isDark]="isDark"
|
|
27
|
+
[isResponsive]="isResponsive"
|
|
28
|
+
[canEdit]="canEdit"
|
|
29
|
+
[cols]="cols"
|
|
30
|
+
[options]="options"
|
|
31
|
+
[cards]="cards"
|
|
32
|
+
[groupType]="groupType"
|
|
33
|
+
[modalData]="modalData"
|
|
34
|
+
[data]="data"
|
|
35
|
+
[debug]="true"
|
|
36
|
+
></lib-dashboard>
|
|
37
|
+
`, isInline: true, dependencies: [{ kind: "component", type: i1.DashboardComponent, selector: "lib-dashboard", inputs: ["isDark", "isResponsive", "canEdit", "cols", "options", "cards", "groupType", "modalData", "data", "debug"] }] });
|
|
38
|
+
i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "15.2.10", ngImport: i0, type: PrimordashComponent, decorators: [{
|
|
39
|
+
type: Component,
|
|
40
|
+
args: [{ selector: 'lib-primordash', template: `
|
|
41
|
+
<lib-dashboard
|
|
42
|
+
[isDark]="isDark"
|
|
43
|
+
[isResponsive]="isResponsive"
|
|
44
|
+
[canEdit]="canEdit"
|
|
45
|
+
[cols]="cols"
|
|
46
|
+
[options]="options"
|
|
47
|
+
[cards]="cards"
|
|
48
|
+
[groupType]="groupType"
|
|
49
|
+
[modalData]="modalData"
|
|
50
|
+
[data]="data"
|
|
51
|
+
[debug]="true"
|
|
52
|
+
></lib-dashboard>
|
|
53
|
+
` }]
|
|
54
|
+
}], propDecorators: { isDark: [{
|
|
55
|
+
type: Input
|
|
56
|
+
}], isResponsive: [{
|
|
57
|
+
type: Input
|
|
58
|
+
}], canEdit: [{
|
|
59
|
+
type: Input
|
|
60
|
+
}], cols: [{
|
|
61
|
+
type: Input
|
|
62
|
+
}], options: [{
|
|
63
|
+
type: Input
|
|
64
|
+
}], cards: [{
|
|
65
|
+
type: Input
|
|
66
|
+
}], groupType: [{
|
|
67
|
+
type: Input
|
|
68
|
+
}], modalData: [{
|
|
69
|
+
type: Input
|
|
70
|
+
}], data: [{
|
|
71
|
+
type: Input
|
|
72
|
+
}], debug: [{
|
|
73
|
+
type: Input
|
|
74
|
+
}] } });
|
|
75
|
+
//# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoicHJpbW9yZGFzaC5jb21wb25lbnQuanMiLCJzb3VyY2VSb290IjoiIiwic291cmNlcyI6WyIuLi8uLi8uLi8uLi9wcm9qZWN0cy9wcmltb3JkYXNoL3NyYy9saWIvcHJpbW9yZGFzaC5jb21wb25lbnQudHMiXSwibmFtZXMiOltdLCJtYXBwaW5ncyI6IkFBQUEsT0FBTyxFQUFFLFNBQVMsRUFBRSxLQUFLLEVBQUUsTUFBTSxlQUFlLENBQUM7OztBQXNCakQsTUFBTSxPQUFPLG1CQUFtQjtJQW5CaEM7UUFxQlksV0FBTSxHQUFXLEtBQUssQ0FBQztRQUN2QixpQkFBWSxHQUFXLElBQUksQ0FBQztRQUM1QixZQUFPLEdBQVksS0FBSyxDQUFDO1FBQ3pCLFNBQUksR0FBVyxDQUFDLENBQUM7UUFDakIsWUFBTyxHQUFZO1lBQzFCLEVBQUUsS0FBSyxFQUFFLEtBQUssRUFBRSxJQUFJLEVBQUUsQ0FBQyxFQUFFLElBQUksRUFBRSxDQUFDLEVBQUU7WUFDbEMsRUFBRSxLQUFLLEVBQUUsS0FBSyxFQUFFLElBQUksRUFBRSxDQUFDLEVBQUUsSUFBSSxFQUFFLENBQUMsRUFBRTtZQUNsQyxFQUFFLEtBQUssRUFBRSxLQUFLLEVBQUUsSUFBSSxFQUFFLENBQUMsRUFBRSxJQUFJLEVBQUUsQ0FBQyxFQUFFO1lBQ2xDLEVBQUUsS0FBSyxFQUFFLEtBQUssRUFBRSxJQUFJLEVBQUUsQ0FBQyxFQUFFLElBQUksRUFBRSxDQUFDLEVBQUU7WUFDbEMsRUFBRSxLQUFLLEVBQUUsS0FBSyxFQUFFLElBQUksRUFBRSxDQUFDLEVBQUUsSUFBSSxFQUFFLENBQUMsRUFBRTtTQUNuQyxDQUFBO1FBQ1EsVUFBSyxHQUFXLEVBQUUsQ0FBQztRQUNuQixjQUFTLEdBQVksRUFBRSxDQUFDO1FBQ3hCLGNBQVMsR0FBZSxFQUFFLENBQUM7UUFFM0IsVUFBSyxHQUFZLEtBQUssQ0FBQztLQUVsQzs7aUhBbkJZLG1CQUFtQjtxR0FBbkIsbUJBQW1CLHNRQWpCcEI7Ozs7Ozs7Ozs7Ozs7R0FhVDs0RkFJVSxtQkFBbUI7a0JBbkIvQixTQUFTOytCQUNFLGdCQUFnQixZQUNoQjs7Ozs7Ozs7Ozs7OztHQWFUOzhCQU1TLE1BQU07c0JBQWQsS0FBSztnQkFDRyxZQUFZO3NCQUFwQixLQUFLO2dCQUNHLE9BQU87c0JBQWYsS0FBSztnQkFDRyxJQUFJO3NCQUFaLEtBQUs7Z0JBQ0csT0FBTztzQkFBZixLQUFLO2dCQU9HLEtBQUs7c0JBQWIsS0FBSztnQkFDRyxTQUFTO3NCQUFqQixLQUFLO2dCQUNHLFNBQVM7c0JBQWpCLEtBQUs7Z0JBQ0csSUFBSTtzQkFBWixLQUFLO2dCQUNHLEtBQUs7c0JBQWIsS0FBSyIsInNvdXJjZXNDb250ZW50IjpbImltcG9ydCB7IENvbXBvbmVudCwgSW5wdXQgfSBmcm9tICdAYW5ndWxhci9jb3JlJztcbmltcG9ydCB7IENhcmQsIE1vZGFsSXRlbSwgT3B0aW9uLCBTZWxlY3QgfSBmcm9tICcuL21vZGVscy9kYXNoYm9hcmQubW9kZWwnO1xuXG5AQ29tcG9uZW50KHtcbiAgc2VsZWN0b3I6ICdsaWItcHJpbW9yZGFzaCcsXG4gIHRlbXBsYXRlOiBgXG4gICAgPGxpYi1kYXNoYm9hcmRcbiAgICAgICAgW2lzRGFya109XCJpc0RhcmtcIlxuICAgICAgICBbaXNSZXNwb25zaXZlXT1cImlzUmVzcG9uc2l2ZVwiXG4gICAgICAgIFtjYW5FZGl0XT1cImNhbkVkaXRcIlxuICAgICAgICBbY29sc109XCJjb2xzXCJcbiAgICAgICAgW29wdGlvbnNdPVwib3B0aW9uc1wiIFxuICAgICAgICBbY2FyZHNdPVwiY2FyZHNcIiBcbiAgICAgICAgW2dyb3VwVHlwZV09XCJncm91cFR5cGVcIiBcbiAgICAgICAgW21vZGFsRGF0YV09XCJtb2RhbERhdGFcIiBcbiAgICAgICAgW2RhdGFdPVwiZGF0YVwiXG4gICAgICAgIFtkZWJ1Z109XCJ0cnVlXCJcbiAgICA+PC9saWItZGFzaGJvYXJkPlxuICBgLFxuICBzdHlsZXM6IFtcbiAgXVxufSlcbmV4cG9ydCBjbGFzcyBQcmltb3JkYXNoQ29tcG9uZW50IHtcbiBcbiAgIEBJbnB1dCgpIGlzRGFyazpib29sZWFuID0gZmFsc2U7XG4gICBASW5wdXQoKSBpc1Jlc3BvbnNpdmU6Ym9vbGVhbiA9IHRydWU7XG4gICBASW5wdXQoKSBjYW5FZGl0OiBib29sZWFuID0gZmFsc2U7XG4gICBASW5wdXQoKSBjb2xzOiBudW1iZXIgPSA0O1xuICAgQElucHV0KCkgb3B0aW9uczpPcHRpb25bXSA9IFtcbiAgICAgeyB0aXRsZTogJzF4MScsIGNvbHM6IDEsIHJvd3M6IDEgfSxcbiAgICAgeyB0aXRsZTogJzJ4MScsIGNvbHM6IDIsIHJvd3M6IDEgfSxcbiAgICAgeyB0aXRsZTogJzN4MScsIGNvbHM6IDMsIHJvd3M6IDEgfSxcbiAgICAgeyB0aXRsZTogJzF4MicsIGNvbHM6IDEsIHJvd3M6IDIgfSxcbiAgICAgeyB0aXRsZTogJzJ4MicsIGNvbHM6IDIsIHJvd3M6IDIgfSxcbiAgIF1cbiAgIEBJbnB1dCgpIGNhcmRzOiBDYXJkW10gPSBbXTtcbiAgIEBJbnB1dCgpIGdyb3VwVHlwZTpTZWxlY3RbXSA9IFtdO1xuICAgQElucHV0KCkgbW9kYWxEYXRhOk1vZGFsSXRlbVtdID0gW107XG4gICBASW5wdXQoKSBkYXRhITphbnk7XG4gICBASW5wdXQoKSBkZWJ1ZzogYm9vbGVhbiA9IGZhbHNlO1xuXG59XG4iXX0=
|
|
@@ -0,0 +1,92 @@
|
|
|
1
|
+
import { NgModule } from '@angular/core';
|
|
2
|
+
import { BrowserModule } from '@angular/platform-browser';
|
|
3
|
+
import { DragDropModule } from '@angular/cdk/drag-drop';
|
|
4
|
+
import { MatGridListModule } from '@angular/material/grid-list';
|
|
5
|
+
import { MatMenuModule } from '@angular/material/menu';
|
|
6
|
+
import { BrowserAnimationsModule } from '@angular/platform-browser/animations';
|
|
7
|
+
import { NgChartsModule } from "ng2-charts";
|
|
8
|
+
import { CardComponent } from './components/card/card.component';
|
|
9
|
+
import { BarLineComponent } from './components/charts/bar-line/bar-line.component';
|
|
10
|
+
import { BubbleComponent } from './components/charts/bubble/bubble.component';
|
|
11
|
+
import { PieComponent } from './components/charts/pie/pie.component';
|
|
12
|
+
import { SimpleCardComponent } from './components/charts/simple-card/simple-card.component';
|
|
13
|
+
import { TableComponent } from './components/charts/table/table.component';
|
|
14
|
+
import { DashboardComponent } from './components/dashboard/dashboard.component';
|
|
15
|
+
import { ModalEditComponent } from './components/modal-edit/modal-edit.component';
|
|
16
|
+
import { FormsModule, ReactiveFormsModule } from '@angular/forms';
|
|
17
|
+
import { ModalModule } from 'ngx-bootstrap/modal';
|
|
18
|
+
import { CommonModule } from '@angular/common';
|
|
19
|
+
import { NgSelectModule } from '@ng-select/ng-select';
|
|
20
|
+
import { PrimordashComponent } from './primordash.component';
|
|
21
|
+
import { ModalEditChartComponent } from './components/modal-edit-chart/modal-edit-chart.component';
|
|
22
|
+
import * as i0 from "@angular/core";
|
|
23
|
+
import * as i1 from "ngx-bootstrap/modal";
|
|
24
|
+
export class PrimordashModule {
|
|
25
|
+
}
|
|
26
|
+
PrimordashModule.ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "15.2.10", ngImport: i0, type: PrimordashModule, deps: [], target: i0.ɵɵFactoryTarget.NgModule });
|
|
27
|
+
PrimordashModule.ɵmod = i0.ɵɵngDeclareNgModule({ minVersion: "14.0.0", version: "15.2.10", ngImport: i0, type: PrimordashModule, declarations: [DashboardComponent,
|
|
28
|
+
CardComponent,
|
|
29
|
+
BarLineComponent,
|
|
30
|
+
BubbleComponent,
|
|
31
|
+
PieComponent,
|
|
32
|
+
SimpleCardComponent,
|
|
33
|
+
TableComponent,
|
|
34
|
+
ModalEditComponent,
|
|
35
|
+
ModalEditChartComponent,
|
|
36
|
+
PrimordashComponent], imports: [BrowserModule,
|
|
37
|
+
DragDropModule,
|
|
38
|
+
BrowserAnimationsModule,
|
|
39
|
+
MatGridListModule,
|
|
40
|
+
MatMenuModule,
|
|
41
|
+
NgChartsModule,
|
|
42
|
+
ReactiveFormsModule,
|
|
43
|
+
FormsModule,
|
|
44
|
+
CommonModule, i1.ModalModule, NgSelectModule], exports: [DashboardComponent,
|
|
45
|
+
PrimordashComponent] });
|
|
46
|
+
PrimordashModule.ɵinj = i0.ɵɵngDeclareInjector({ minVersion: "12.0.0", version: "15.2.10", ngImport: i0, type: PrimordashModule, imports: [BrowserModule,
|
|
47
|
+
DragDropModule,
|
|
48
|
+
BrowserAnimationsModule,
|
|
49
|
+
MatGridListModule,
|
|
50
|
+
MatMenuModule,
|
|
51
|
+
NgChartsModule,
|
|
52
|
+
ReactiveFormsModule,
|
|
53
|
+
FormsModule,
|
|
54
|
+
CommonModule,
|
|
55
|
+
ModalModule.forRoot(),
|
|
56
|
+
NgSelectModule] });
|
|
57
|
+
i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "15.2.10", ngImport: i0, type: PrimordashModule, decorators: [{
|
|
58
|
+
type: NgModule,
|
|
59
|
+
args: [{
|
|
60
|
+
declarations: [
|
|
61
|
+
DashboardComponent,
|
|
62
|
+
CardComponent,
|
|
63
|
+
BarLineComponent,
|
|
64
|
+
BubbleComponent,
|
|
65
|
+
PieComponent,
|
|
66
|
+
SimpleCardComponent,
|
|
67
|
+
TableComponent,
|
|
68
|
+
ModalEditComponent,
|
|
69
|
+
ModalEditChartComponent,
|
|
70
|
+
PrimordashComponent
|
|
71
|
+
],
|
|
72
|
+
imports: [
|
|
73
|
+
BrowserModule,
|
|
74
|
+
DragDropModule,
|
|
75
|
+
BrowserAnimationsModule,
|
|
76
|
+
MatGridListModule,
|
|
77
|
+
MatMenuModule,
|
|
78
|
+
NgChartsModule,
|
|
79
|
+
ReactiveFormsModule,
|
|
80
|
+
FormsModule,
|
|
81
|
+
CommonModule,
|
|
82
|
+
ModalModule.forRoot(),
|
|
83
|
+
NgSelectModule
|
|
84
|
+
],
|
|
85
|
+
exports: [
|
|
86
|
+
DashboardComponent,
|
|
87
|
+
PrimordashComponent
|
|
88
|
+
],
|
|
89
|
+
providers: []
|
|
90
|
+
}]
|
|
91
|
+
}] });
|
|
92
|
+
//# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoicHJpbW9yZGFzaC5tb2R1bGUuanMiLCJzb3VyY2VSb290IjoiIiwic291cmNlcyI6WyIuLi8uLi8uLi8uLi9wcm9qZWN0cy9wcmltb3JkYXNoL3NyYy9saWIvcHJpbW9yZGFzaC5tb2R1bGUudHMiXSwibmFtZXMiOltdLCJtYXBwaW5ncyI6IkFBQUEsT0FBTyxFQUFFLFFBQVEsRUFBRSxNQUFNLGVBQWUsQ0FBQztBQUN6QyxPQUFPLEVBQUUsYUFBYSxFQUFFLE1BQU0sMkJBQTJCLENBQUM7QUFDMUQsT0FBTyxFQUFFLGNBQWMsRUFBRSxNQUFNLHdCQUF3QixDQUFDO0FBQ3hELE9BQU8sRUFBRSxpQkFBaUIsRUFBRSxNQUFNLDZCQUE2QixDQUFDO0FBQ2hFLE9BQU8sRUFBRSxhQUFhLEVBQUUsTUFBTSx3QkFBd0IsQ0FBQztBQUN2RCxPQUFPLEVBQUUsdUJBQXVCLEVBQUUsTUFBTSxzQ0FBc0MsQ0FBQztBQUMvRSxPQUFPLEVBQUUsY0FBYyxFQUFFLE1BQU0sWUFBWSxDQUFDO0FBQzVDLE9BQU8sRUFBRSxhQUFhLEVBQUUsTUFBTSxrQ0FBa0MsQ0FBQztBQUNqRSxPQUFPLEVBQUUsZ0JBQWdCLEVBQUUsTUFBTSxpREFBaUQsQ0FBQztBQUNuRixPQUFPLEVBQUUsZUFBZSxFQUFFLE1BQU0sNkNBQTZDLENBQUM7QUFDOUUsT0FBTyxFQUFFLFlBQVksRUFBRSxNQUFNLHVDQUF1QyxDQUFDO0FBQ3JFLE9BQU8sRUFBRSxtQkFBbUIsRUFBRSxNQUFNLHVEQUF1RCxDQUFDO0FBQzVGLE9BQU8sRUFBRSxjQUFjLEVBQUUsTUFBTSwyQ0FBMkMsQ0FBQztBQUMzRSxPQUFPLEVBQUUsa0JBQWtCLEVBQUUsTUFBTSw0Q0FBNEMsQ0FBQztBQUNoRixPQUFPLEVBQUUsa0JBQWtCLEVBQUUsTUFBTSw4Q0FBOEMsQ0FBQztBQUNsRixPQUFPLEVBQUUsV0FBVyxFQUFFLG1CQUFtQixFQUFFLE1BQU0sZ0JBQWdCLENBQUM7QUFDbEUsT0FBTyxFQUFFLFdBQVcsRUFBRSxNQUFNLHFCQUFxQixDQUFDO0FBQ2xELE9BQU8sRUFBRSxZQUFZLEVBQUUsTUFBTSxpQkFBaUIsQ0FBQztBQUMvQyxPQUFPLEVBQUUsY0FBYyxFQUFFLE1BQU0sc0JBQXNCLENBQUM7QUFDdEQsT0FBTyxFQUFFLG1CQUFtQixFQUFFLE1BQU0sd0JBQXdCLENBQUM7QUFDN0QsT0FBTyxFQUFFLHVCQUF1QixFQUFFLE1BQU0sMERBQTBELENBQUM7OztBQW9DbkcsTUFBTSxPQUFPLGdCQUFnQjs7OEdBQWhCLGdCQUFnQjsrR0FBaEIsZ0JBQWdCLGlCQWhDekIsa0JBQWtCO1FBQ2xCLGFBQWE7UUFDYixnQkFBZ0I7UUFDaEIsZUFBZTtRQUNmLFlBQVk7UUFDWixtQkFBbUI7UUFDbkIsY0FBYztRQUNkLGtCQUFrQjtRQUNsQix1QkFBdUI7UUFDdkIsbUJBQW1CLGFBR25CLGFBQWE7UUFDYixjQUFjO1FBQ2QsdUJBQXVCO1FBQ3ZCLGlCQUFpQjtRQUNqQixhQUFhO1FBQ2IsY0FBYztRQUNkLG1CQUFtQjtRQUNuQixXQUFXO1FBQ1gsWUFBWSxrQkFFWixjQUFjLGFBR2Qsa0JBQWtCO1FBQ2xCLG1CQUFtQjsrR0FNVixnQkFBZ0IsWUFwQnpCLGFBQWE7UUFDYixjQUFjO1FBQ2QsdUJBQXVCO1FBQ3ZCLGlCQUFpQjtRQUNqQixhQUFhO1FBQ2IsY0FBYztRQUNkLG1CQUFtQjtRQUNuQixXQUFXO1FBQ1gsWUFBWTtRQUNaLFdBQVcsQ0FBQyxPQUFPLEVBQUU7UUFDckIsY0FBYzs0RkFVTCxnQkFBZ0I7a0JBbEM1QixRQUFRO21CQUFDO29CQUNSLFlBQVksRUFBRTt3QkFDWixrQkFBa0I7d0JBQ2xCLGFBQWE7d0JBQ2IsZ0JBQWdCO3dCQUNoQixlQUFlO3dCQUNmLFlBQVk7d0JBQ1osbUJBQW1CO3dCQUNuQixjQUFjO3dCQUNkLGtCQUFrQjt3QkFDbEIsdUJBQXVCO3dCQUN2QixtQkFBbUI7cUJBQ3BCO29CQUNELE9BQU8sRUFBRTt3QkFDUCxhQUFhO3dCQUNiLGNBQWM7d0JBQ2QsdUJBQXVCO3dCQUN2QixpQkFBaUI7d0JBQ2pCLGFBQWE7d0JBQ2IsY0FBYzt3QkFDZCxtQkFBbUI7d0JBQ25CLFdBQVc7d0JBQ1gsWUFBWTt3QkFDWixXQUFXLENBQUMsT0FBTyxFQUFFO3dCQUNyQixjQUFjO3FCQUNqQjtvQkFDQyxPQUFPLEVBQUM7d0JBQ04sa0JBQWtCO3dCQUNsQixtQkFBbUI7cUJBQ3BCO29CQUNELFNBQVMsRUFBRSxFQUNWO2lCQUNGIiwic291cmNlc0NvbnRlbnQiOlsiaW1wb3J0IHsgTmdNb2R1bGUgfSBmcm9tICdAYW5ndWxhci9jb3JlJztcclxuaW1wb3J0IHsgQnJvd3Nlck1vZHVsZSB9IGZyb20gJ0Bhbmd1bGFyL3BsYXRmb3JtLWJyb3dzZXInO1xyXG5pbXBvcnQgeyBEcmFnRHJvcE1vZHVsZSB9IGZyb20gJ0Bhbmd1bGFyL2Nkay9kcmFnLWRyb3AnO1xyXG5pbXBvcnQgeyBNYXRHcmlkTGlzdE1vZHVsZSB9IGZyb20gJ0Bhbmd1bGFyL21hdGVyaWFsL2dyaWQtbGlzdCc7XHJcbmltcG9ydCB7IE1hdE1lbnVNb2R1bGUgfSBmcm9tICdAYW5ndWxhci9tYXRlcmlhbC9tZW51JztcclxuaW1wb3J0IHsgQnJvd3NlckFuaW1hdGlvbnNNb2R1bGUgfSBmcm9tICdAYW5ndWxhci9wbGF0Zm9ybS1icm93c2VyL2FuaW1hdGlvbnMnO1xyXG5pbXBvcnQgeyBOZ0NoYXJ0c01vZHVsZSB9IGZyb20gXCJuZzItY2hhcnRzXCI7XHJcbmltcG9ydCB7IENhcmRDb21wb25lbnQgfSBmcm9tICcuL2NvbXBvbmVudHMvY2FyZC9jYXJkLmNvbXBvbmVudCc7XHJcbmltcG9ydCB7IEJhckxpbmVDb21wb25lbnQgfSBmcm9tICcuL2NvbXBvbmVudHMvY2hhcnRzL2Jhci1saW5lL2Jhci1saW5lLmNvbXBvbmVudCc7XHJcbmltcG9ydCB7IEJ1YmJsZUNvbXBvbmVudCB9IGZyb20gJy4vY29tcG9uZW50cy9jaGFydHMvYnViYmxlL2J1YmJsZS5jb21wb25lbnQnO1xyXG5pbXBvcnQgeyBQaWVDb21wb25lbnQgfSBmcm9tICcuL2NvbXBvbmVudHMvY2hhcnRzL3BpZS9waWUuY29tcG9uZW50JztcclxuaW1wb3J0IHsgU2ltcGxlQ2FyZENvbXBvbmVudCB9IGZyb20gJy4vY29tcG9uZW50cy9jaGFydHMvc2ltcGxlLWNhcmQvc2ltcGxlLWNhcmQuY29tcG9uZW50JztcclxuaW1wb3J0IHsgVGFibGVDb21wb25lbnQgfSBmcm9tICcuL2NvbXBvbmVudHMvY2hhcnRzL3RhYmxlL3RhYmxlLmNvbXBvbmVudCc7XHJcbmltcG9ydCB7IERhc2hib2FyZENvbXBvbmVudCB9IGZyb20gJy4vY29tcG9uZW50cy9kYXNoYm9hcmQvZGFzaGJvYXJkLmNvbXBvbmVudCc7XHJcbmltcG9ydCB7IE1vZGFsRWRpdENvbXBvbmVudCB9IGZyb20gJy4vY29tcG9uZW50cy9tb2RhbC1lZGl0L21vZGFsLWVkaXQuY29tcG9uZW50JztcclxuaW1wb3J0IHsgRm9ybXNNb2R1bGUsIFJlYWN0aXZlRm9ybXNNb2R1bGUgfSBmcm9tICdAYW5ndWxhci9mb3Jtcyc7XHJcbmltcG9ydCB7IE1vZGFsTW9kdWxlIH0gZnJvbSAnbmd4LWJvb3RzdHJhcC9tb2RhbCc7XHJcbmltcG9ydCB7IENvbW1vbk1vZHVsZSB9IGZyb20gJ0Bhbmd1bGFyL2NvbW1vbic7XHJcbmltcG9ydCB7IE5nU2VsZWN0TW9kdWxlIH0gZnJvbSAnQG5nLXNlbGVjdC9uZy1zZWxlY3QnO1xyXG5pbXBvcnQgeyBQcmltb3JkYXNoQ29tcG9uZW50IH0gZnJvbSAnLi9wcmltb3JkYXNoLmNvbXBvbmVudCc7XHJcbmltcG9ydCB7IE1vZGFsRWRpdENoYXJ0Q29tcG9uZW50IH0gZnJvbSAnLi9jb21wb25lbnRzL21vZGFsLWVkaXQtY2hhcnQvbW9kYWwtZWRpdC1jaGFydC5jb21wb25lbnQnO1xyXG5cclxuQE5nTW9kdWxlKHtcclxuICBkZWNsYXJhdGlvbnM6IFtcclxuICAgIERhc2hib2FyZENvbXBvbmVudCxcclxuICAgIENhcmRDb21wb25lbnQsXHJcbiAgICBCYXJMaW5lQ29tcG9uZW50LFxyXG4gICAgQnViYmxlQ29tcG9uZW50LFxyXG4gICAgUGllQ29tcG9uZW50LFxyXG4gICAgU2ltcGxlQ2FyZENvbXBvbmVudCxcclxuICAgIFRhYmxlQ29tcG9uZW50LFxyXG4gICAgTW9kYWxFZGl0Q29tcG9uZW50LFxyXG4gICAgTW9kYWxFZGl0Q2hhcnRDb21wb25lbnQsXHJcbiAgICBQcmltb3JkYXNoQ29tcG9uZW50XHJcbiAgXSxcclxuICBpbXBvcnRzOiBbXHJcbiAgICBCcm93c2VyTW9kdWxlLFxyXG4gICAgRHJhZ0Ryb3BNb2R1bGUsXHJcbiAgICBCcm93c2VyQW5pbWF0aW9uc01vZHVsZSxcclxuICAgIE1hdEdyaWRMaXN0TW9kdWxlLFxyXG4gICAgTWF0TWVudU1vZHVsZSxcclxuICAgIE5nQ2hhcnRzTW9kdWxlLFxyXG4gICAgUmVhY3RpdmVGb3Jtc01vZHVsZSxcclxuICAgIEZvcm1zTW9kdWxlLFxyXG4gICAgQ29tbW9uTW9kdWxlLFxyXG4gICAgTW9kYWxNb2R1bGUuZm9yUm9vdCgpLFxyXG4gICAgTmdTZWxlY3RNb2R1bGVcclxuXSxcclxuICBleHBvcnRzOltcclxuICAgIERhc2hib2FyZENvbXBvbmVudCxcclxuICAgIFByaW1vcmRhc2hDb21wb25lbnRcclxuICBdLFxyXG4gIHByb3ZpZGVyczogW1xyXG4gIF1cclxufSlcclxuXHJcbmV4cG9ydCBjbGFzcyBQcmltb3JkYXNoTW9kdWxlIHsgfVxyXG4iXX0=
|
|
@@ -0,0 +1,14 @@
|
|
|
1
|
+
import { Injectable } from '@angular/core';
|
|
2
|
+
import * as i0 from "@angular/core";
|
|
3
|
+
export class PrimordashService {
|
|
4
|
+
constructor() { }
|
|
5
|
+
}
|
|
6
|
+
PrimordashService.ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "15.2.10", ngImport: i0, type: PrimordashService, deps: [], target: i0.ɵɵFactoryTarget.Injectable });
|
|
7
|
+
PrimordashService.ɵprov = i0.ɵɵngDeclareInjectable({ minVersion: "12.0.0", version: "15.2.10", ngImport: i0, type: PrimordashService, providedIn: 'root' });
|
|
8
|
+
i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "15.2.10", ngImport: i0, type: PrimordashService, decorators: [{
|
|
9
|
+
type: Injectable,
|
|
10
|
+
args: [{
|
|
11
|
+
providedIn: 'root'
|
|
12
|
+
}]
|
|
13
|
+
}], ctorParameters: function () { return []; } });
|
|
14
|
+
//# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoicHJpbW9yZGFzaC5zZXJ2aWNlLmpzIiwic291cmNlUm9vdCI6IiIsInNvdXJjZXMiOlsiLi4vLi4vLi4vLi4vcHJvamVjdHMvcHJpbW9yZGFzaC9zcmMvbGliL3ByaW1vcmRhc2guc2VydmljZS50cyJdLCJuYW1lcyI6W10sIm1hcHBpbmdzIjoiQUFBQSxPQUFPLEVBQUUsVUFBVSxFQUFFLE1BQU0sZUFBZSxDQUFDOztBQUszQyxNQUFNLE9BQU8saUJBQWlCO0lBRTVCLGdCQUFnQixDQUFDOzsrR0FGTixpQkFBaUI7bUhBQWpCLGlCQUFpQixjQUZoQixNQUFNOzRGQUVQLGlCQUFpQjtrQkFIN0IsVUFBVTttQkFBQztvQkFDVixVQUFVLEVBQUUsTUFBTTtpQkFDbkIiLCJzb3VyY2VzQ29udGVudCI6WyJpbXBvcnQgeyBJbmplY3RhYmxlIH0gZnJvbSAnQGFuZ3VsYXIvY29yZSc7XG5cbkBJbmplY3RhYmxlKHtcbiAgcHJvdmlkZWRJbjogJ3Jvb3QnXG59KVxuZXhwb3J0IGNsYXNzIFByaW1vcmRhc2hTZXJ2aWNlIHtcblxuICBjb25zdHJ1Y3RvcigpIHsgfVxufVxuIl19
|
|
@@ -0,0 +1,50 @@
|
|
|
1
|
+
export function randomColor() {
|
|
2
|
+
const r = Math.floor(Math.random() * 255);
|
|
3
|
+
const g = Math.floor(Math.random() * 255);
|
|
4
|
+
const b = Math.floor(Math.random() * 255);
|
|
5
|
+
return `rgba(${r}, ${g}, ${b}, 0.6)`;
|
|
6
|
+
}
|
|
7
|
+
export function getOpacityColors(listColors, index) {
|
|
8
|
+
const opacity = Math.max(0.1, 1 - index * 0.30);
|
|
9
|
+
return listColors.map(color => replaceAlpha(color, opacity));
|
|
10
|
+
}
|
|
11
|
+
function replaceAlpha(rgba, newAlpha) {
|
|
12
|
+
const match = rgba.match(/rgba?\(\s*(\d+)[,\s]+(\d+)[,\s]+(\d+)(?:[,\s]+([\d.]+))?\s*\)/);
|
|
13
|
+
if (!match)
|
|
14
|
+
return rgba;
|
|
15
|
+
const r = match[1];
|
|
16
|
+
const g = match[2];
|
|
17
|
+
const b = match[3];
|
|
18
|
+
return `rgba(${r}, ${g}, ${b}, ${newAlpha})`;
|
|
19
|
+
}
|
|
20
|
+
export function getContrastColor(color) {
|
|
21
|
+
const rgb = getRGB(color);
|
|
22
|
+
if (!rgb)
|
|
23
|
+
return '#000';
|
|
24
|
+
const { r, g, b } = rgb;
|
|
25
|
+
const luminance = (0.299 * r + 0.587 * g + 0.114 * b);
|
|
26
|
+
return luminance > 186 ? '#000' : '#fff';
|
|
27
|
+
}
|
|
28
|
+
function getRGB(color) {
|
|
29
|
+
if (color.startsWith('#')) {
|
|
30
|
+
const hex = color.replace('#', '');
|
|
31
|
+
const bigint = parseInt(hex.length === 3
|
|
32
|
+
? hex.split('').map(c => c + c).join('')
|
|
33
|
+
: hex, 16);
|
|
34
|
+
return {
|
|
35
|
+
r: (bigint >> 16) & 255,
|
|
36
|
+
g: (bigint >> 8) & 255,
|
|
37
|
+
b: bigint & 255
|
|
38
|
+
};
|
|
39
|
+
}
|
|
40
|
+
const match = color.match(/\d+/g);
|
|
41
|
+
if (match) {
|
|
42
|
+
return {
|
|
43
|
+
r: Number(match[0]),
|
|
44
|
+
g: Number(match[1]),
|
|
45
|
+
b: Number(match[2])
|
|
46
|
+
};
|
|
47
|
+
}
|
|
48
|
+
return null;
|
|
49
|
+
}
|
|
50
|
+
//# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoiZ2VuZXJpYy5qcyIsInNvdXJjZVJvb3QiOiIiLCJzb3VyY2VzIjpbIi4uLy4uLy4uLy4uLy4uL3Byb2plY3RzL3ByaW1vcmRhc2gvc3JjL2xpYi9zZXJ2aWNlcy9nZW5lcmljLnRzIl0sIm5hbWVzIjpbXSwibWFwcGluZ3MiOiJBQUFBLE1BQU0sVUFBVSxXQUFXO0lBQ3ZCLE1BQU0sQ0FBQyxHQUFHLElBQUksQ0FBQyxLQUFLLENBQUMsSUFBSSxDQUFDLE1BQU0sRUFBRSxHQUFHLEdBQUcsQ0FBQyxDQUFDO0lBQzFDLE1BQU0sQ0FBQyxHQUFHLElBQUksQ0FBQyxLQUFLLENBQUMsSUFBSSxDQUFDLE1BQU0sRUFBRSxHQUFHLEdBQUcsQ0FBQyxDQUFDO0lBQzFDLE1BQU0sQ0FBQyxHQUFHLElBQUksQ0FBQyxLQUFLLENBQUMsSUFBSSxDQUFDLE1BQU0sRUFBRSxHQUFHLEdBQUcsQ0FBQyxDQUFDO0lBRTFDLE9BQU8sUUFBUSxDQUFDLEtBQUssQ0FBQyxLQUFLLENBQUMsUUFBUSxDQUFDO0FBQ3pDLENBQUM7QUFDRCxNQUFNLFVBQVUsZ0JBQWdCLENBQUMsVUFBbUIsRUFBRSxLQUFZO0lBQzlELE1BQU0sT0FBTyxHQUFHLElBQUksQ0FBQyxHQUFHLENBQUMsR0FBRyxFQUFFLENBQUMsR0FBRyxLQUFLLEdBQUcsSUFBSSxDQUFDLENBQUM7SUFDaEQsT0FBTyxVQUFVLENBQUMsR0FBRyxDQUFDLEtBQUssQ0FBQyxFQUFFLENBQUMsWUFBWSxDQUFDLEtBQUssRUFBRSxPQUFPLENBQUMsQ0FBQyxDQUFDO0FBQ2pFLENBQUM7QUFFRCxTQUFTLFlBQVksQ0FBQyxJQUFZLEVBQUUsUUFBZ0I7SUFDbEQsTUFBTSxLQUFLLEdBQUcsSUFBSSxDQUFDLEtBQUssQ0FDdEIsK0RBQStELENBQ2hFLENBQUM7SUFFRixJQUFJLENBQUMsS0FBSztRQUFFLE9BQU8sSUFBSSxDQUFDO0lBRXhCLE1BQU0sQ0FBQyxHQUFHLEtBQUssQ0FBQyxDQUFDLENBQUMsQ0FBQztJQUNuQixNQUFNLENBQUMsR0FBRyxLQUFLLENBQUMsQ0FBQyxDQUFDLENBQUM7SUFDbkIsTUFBTSxDQUFDLEdBQUcsS0FBSyxDQUFDLENBQUMsQ0FBQyxDQUFDO0lBRW5CLE9BQU8sUUFBUSxDQUFDLEtBQUssQ0FBQyxLQUFLLENBQUMsS0FBSyxRQUFRLEdBQUcsQ0FBQztBQUMvQyxDQUFDO0FBRUQsTUFBTSxVQUFVLGdCQUFnQixDQUFDLEtBQWE7SUFDNUMsTUFBTSxHQUFHLEdBQUcsTUFBTSxDQUFDLEtBQUssQ0FBQyxDQUFDO0lBRTFCLElBQUksQ0FBQyxHQUFHO1FBQUUsT0FBTyxNQUFNLENBQUM7SUFFeEIsTUFBTSxFQUFFLENBQUMsRUFBRSxDQUFDLEVBQUUsQ0FBQyxFQUFFLEdBQUcsR0FBRyxDQUFDO0lBRXhCLE1BQU0sU0FBUyxHQUFHLENBQUMsS0FBSyxHQUFHLENBQUMsR0FBRyxLQUFLLEdBQUcsQ0FBQyxHQUFHLEtBQUssR0FBRyxDQUFDLENBQUMsQ0FBQztJQUV0RCxPQUFPLFNBQVMsR0FBRyxHQUFHLENBQUMsQ0FBQyxDQUFDLE1BQU0sQ0FBQyxDQUFDLENBQUMsTUFBTSxDQUFDO0FBQzNDLENBQUM7QUFFRCxTQUFTLE1BQU0sQ0FBQyxLQUFhO0lBQzNCLElBQUksS0FBSyxDQUFDLFVBQVUsQ0FBQyxHQUFHLENBQUMsRUFBRTtRQUN6QixNQUFNLEdBQUcsR0FBRyxLQUFLLENBQUMsT0FBTyxDQUFDLEdBQUcsRUFBRSxFQUFFLENBQUMsQ0FBQztRQUNuQyxNQUFNLE1BQU0sR0FBRyxRQUFRLENBQUMsR0FBRyxDQUFDLE1BQU0sS0FBSyxDQUFDO1lBQ3RDLENBQUMsQ0FBQyxHQUFHLENBQUMsS0FBSyxDQUFDLEVBQUUsQ0FBQyxDQUFDLEdBQUcsQ0FBQyxDQUFDLENBQUMsRUFBRSxDQUFDLENBQUMsR0FBRyxDQUFDLENBQUMsQ0FBQyxJQUFJLENBQUMsRUFBRSxDQUFDO1lBQ3hDLENBQUMsQ0FBQyxHQUFHLEVBQUUsRUFBRSxDQUFDLENBQUM7UUFFYixPQUFPO1lBQ0wsQ0FBQyxFQUFFLENBQUMsTUFBTSxJQUFJLEVBQUUsQ0FBQyxHQUFHLEdBQUc7WUFDdkIsQ0FBQyxFQUFFLENBQUMsTUFBTSxJQUFJLENBQUMsQ0FBQyxHQUFHLEdBQUc7WUFDdEIsQ0FBQyxFQUFFLE1BQU0sR0FBRyxHQUFHO1NBQ2hCLENBQUM7S0FDSDtJQUVELE1BQU0sS0FBSyxHQUFHLEtBQUssQ0FBQyxLQUFLLENBQUMsTUFBTSxDQUFDLENBQUM7SUFDbEMsSUFBSSxLQUFLLEVBQUU7UUFDVCxPQUFPO1lBQ0wsQ0FBQyxFQUFFLE1BQU0sQ0FBQyxLQUFLLENBQUMsQ0FBQyxDQUFDLENBQUM7WUFDbkIsQ0FBQyxFQUFFLE1BQU0sQ0FBQyxLQUFLLENBQUMsQ0FBQyxDQUFDLENBQUM7WUFDbkIsQ0FBQyxFQUFFLE1BQU0sQ0FBQyxLQUFLLENBQUMsQ0FBQyxDQUFDLENBQUM7U0FDcEIsQ0FBQztLQUNIO0lBRUQsT0FBTyxJQUFJLENBQUM7QUFDZCxDQUFDIiwic291cmNlc0NvbnRlbnQiOlsiZXhwb3J0IGZ1bmN0aW9uIHJhbmRvbUNvbG9yKCk6IHN0cmluZyB7XHJcbiAgICBjb25zdCByID0gTWF0aC5mbG9vcihNYXRoLnJhbmRvbSgpICogMjU1KTtcclxuICAgIGNvbnN0IGcgPSBNYXRoLmZsb29yKE1hdGgucmFuZG9tKCkgKiAyNTUpO1xyXG4gICAgY29uc3QgYiA9IE1hdGguZmxvb3IoTWF0aC5yYW5kb20oKSAqIDI1NSk7XHJcblxyXG4gICAgcmV0dXJuIGByZ2JhKCR7cn0sICR7Z30sICR7Yn0sIDAuNilgO1xyXG59XHJcbmV4cG9ydCBmdW5jdGlvbiBnZXRPcGFjaXR5Q29sb3JzKGxpc3RDb2xvcnM6c3RyaW5nW10sIGluZGV4Om51bWJlciApOiBzdHJpbmdbXSB7XHJcbiAgICBjb25zdCBvcGFjaXR5ID0gTWF0aC5tYXgoMC4xLCAxIC0gaW5kZXggKiAwLjMwKTtcclxuICAgIHJldHVybiBsaXN0Q29sb3JzLm1hcChjb2xvciA9PiByZXBsYWNlQWxwaGEoY29sb3IsIG9wYWNpdHkpKTtcclxufVxyXG5cclxuZnVuY3Rpb24gcmVwbGFjZUFscGhhKHJnYmE6IHN0cmluZywgbmV3QWxwaGE6IG51bWJlcik6IHN0cmluZyB7XHJcbiAgY29uc3QgbWF0Y2ggPSByZ2JhLm1hdGNoKFxyXG4gICAgL3JnYmE/XFwoXFxzKihcXGQrKVssXFxzXSsoXFxkKylbLFxcc10rKFxcZCspKD86WyxcXHNdKyhbXFxkLl0rKSk/XFxzKlxcKS9cclxuICApO1xyXG5cclxuICBpZiAoIW1hdGNoKSByZXR1cm4gcmdiYTsgXHJcblxyXG4gIGNvbnN0IHIgPSBtYXRjaFsxXTtcclxuICBjb25zdCBnID0gbWF0Y2hbMl07XHJcbiAgY29uc3QgYiA9IG1hdGNoWzNdO1xyXG5cclxuICByZXR1cm4gYHJnYmEoJHtyfSwgJHtnfSwgJHtifSwgJHtuZXdBbHBoYX0pYDtcclxufVxyXG5cclxuZXhwb3J0IGZ1bmN0aW9uIGdldENvbnRyYXN0Q29sb3IoY29sb3I6IHN0cmluZyk6IHN0cmluZyB7XHJcbiAgY29uc3QgcmdiID0gZ2V0UkdCKGNvbG9yKTtcclxuXHJcbiAgaWYgKCFyZ2IpIHJldHVybiAnIzAwMCc7XHJcblxyXG4gIGNvbnN0IHsgciwgZywgYiB9ID0gcmdiO1xyXG5cclxuICBjb25zdCBsdW1pbmFuY2UgPSAoMC4yOTkgKiByICsgMC41ODcgKiBnICsgMC4xMTQgKiBiKTtcclxuXHJcbiAgcmV0dXJuIGx1bWluYW5jZSA+IDE4NiA/ICcjMDAwJyA6ICcjZmZmJztcclxufVxyXG5cclxuZnVuY3Rpb24gZ2V0UkdCKGNvbG9yOiBzdHJpbmcpOiB7IHI6IG51bWJlcjsgZzogbnVtYmVyOyBiOiBudW1iZXIgfSB8IG51bGwge1xyXG4gIGlmIChjb2xvci5zdGFydHNXaXRoKCcjJykpIHtcclxuICAgIGNvbnN0IGhleCA9IGNvbG9yLnJlcGxhY2UoJyMnLCAnJyk7XHJcbiAgICBjb25zdCBiaWdpbnQgPSBwYXJzZUludChoZXgubGVuZ3RoID09PSAzXHJcbiAgICAgID8gaGV4LnNwbGl0KCcnKS5tYXAoYyA9PiBjICsgYykuam9pbignJylcclxuICAgICAgOiBoZXgsIDE2KTtcclxuXHJcbiAgICByZXR1cm4ge1xyXG4gICAgICByOiAoYmlnaW50ID4+IDE2KSAmIDI1NSxcclxuICAgICAgZzogKGJpZ2ludCA+PiA4KSAmIDI1NSxcclxuICAgICAgYjogYmlnaW50ICYgMjU1XHJcbiAgICB9O1xyXG4gIH1cclxuXHJcbiAgY29uc3QgbWF0Y2ggPSBjb2xvci5tYXRjaCgvXFxkKy9nKTtcclxuICBpZiAobWF0Y2gpIHtcclxuICAgIHJldHVybiB7XHJcbiAgICAgIHI6IE51bWJlcihtYXRjaFswXSksXHJcbiAgICAgIGc6IE51bWJlcihtYXRjaFsxXSksXHJcbiAgICAgIGI6IE51bWJlcihtYXRjaFsyXSlcclxuICAgIH07XHJcbiAgfVxyXG5cclxuICByZXR1cm4gbnVsbDtcclxufSJdfQ==
|
|
@@ -0,0 +1,8 @@
|
|
|
1
|
+
/*
|
|
2
|
+
* Public API Surface of primordash
|
|
3
|
+
*/
|
|
4
|
+
export * from './lib/primordash.service';
|
|
5
|
+
export * from './lib/primordash.component';
|
|
6
|
+
export * from './lib/primordash.module';
|
|
7
|
+
export * from './lib/components/dashboard/dashboard.component';
|
|
8
|
+
//# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoicHVibGljLWFwaS5qcyIsInNvdXJjZVJvb3QiOiIiLCJzb3VyY2VzIjpbIi4uLy4uLy4uL3Byb2plY3RzL3ByaW1vcmRhc2gvc3JjL3B1YmxpYy1hcGkudHMiXSwibmFtZXMiOltdLCJtYXBwaW5ncyI6IkFBQUE7O0dBRUc7QUFFSCxjQUFjLDBCQUEwQixDQUFDO0FBQ3pDLGNBQWMsNEJBQTRCLENBQUM7QUFDM0MsY0FBYyx5QkFBeUIsQ0FBQztBQUN4QyxjQUFjLGdEQUFnRCxDQUFDIiwic291cmNlc0NvbnRlbnQiOlsiLypcbiAqIFB1YmxpYyBBUEkgU3VyZmFjZSBvZiBwcmltb3JkYXNoXG4gKi9cblxuZXhwb3J0ICogZnJvbSAnLi9saWIvcHJpbW9yZGFzaC5zZXJ2aWNlJztcbmV4cG9ydCAqIGZyb20gJy4vbGliL3ByaW1vcmRhc2guY29tcG9uZW50JztcbmV4cG9ydCAqIGZyb20gJy4vbGliL3ByaW1vcmRhc2gubW9kdWxlJztcbmV4cG9ydCAqIGZyb20gJy4vbGliL2NvbXBvbmVudHMvZGFzaGJvYXJkL2Rhc2hib2FyZC5jb21wb25lbnQnO1xuIl19
|
|
@@ -0,0 +1,5 @@
|
|
|
1
|
+
/**
|
|
2
|
+
* Generated bundle index. Do not edit.
|
|
3
|
+
*/
|
|
4
|
+
export * from './public-api';
|
|
5
|
+
//# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoicmFmYUFsbWVpZGEtcHJpbW9yZGFzaC5qcyIsInNvdXJjZVJvb3QiOiIiLCJzb3VyY2VzIjpbIi4uLy4uLy4uL3Byb2plY3RzL3ByaW1vcmRhc2gvc3JjL3JhZmFBbG1laWRhLXByaW1vcmRhc2gudHMiXSwibmFtZXMiOltdLCJtYXBwaW5ncyI6IkFBQUE7O0dBRUc7QUFFSCxjQUFjLGNBQWMsQ0FBQyIsInNvdXJjZXNDb250ZW50IjpbIi8qKlxuICogR2VuZXJhdGVkIGJ1bmRsZSBpbmRleC4gRG8gbm90IGVkaXQuXG4gKi9cblxuZXhwb3J0ICogZnJvbSAnLi9wdWJsaWMtYXBpJztcbiJdfQ==
|
|
@@ -0,0 +1,5 @@
|
|
|
1
|
+
/**
|
|
2
|
+
* Generated bundle index. Do not edit.
|
|
3
|
+
*/
|
|
4
|
+
export * from './public-api';
|
|
5
|
+
//# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoicmFmYWVsYWFsbWVpZGFhLXByaW1vcmRhc2guanMiLCJzb3VyY2VSb290IjoiIiwic291cmNlcyI6WyIuLi8uLi8uLi9wcm9qZWN0cy9wcmltb3JkYXNoL3NyYy9yYWZhZWxhYWxtZWlkYWEtcHJpbW9yZGFzaC50cyJdLCJuYW1lcyI6W10sIm1hcHBpbmdzIjoiQUFBQTs7R0FFRztBQUVILGNBQWMsY0FBYyxDQUFDIiwic291cmNlc0NvbnRlbnQiOlsiLyoqXG4gKiBHZW5lcmF0ZWQgYnVuZGxlIGluZGV4LiBEbyBub3QgZWRpdC5cbiAqL1xuXG5leHBvcnQgKiBmcm9tICcuL3B1YmxpYy1hcGknO1xuIl19
|