kivio 1.1.0 → 1.1.2
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/esm2022/lib/components/kv-main-table/kv-main-table.component.mjs +3 -3
- package/esm2022/lib/components/kv-side-menu/kv-side-menu.component.mjs +3 -3
- package/esm2022/lib/injection-tokens/auth-config.mjs +3 -0
- package/esm2022/lib/services/auth-interceptor.service.mjs +6 -2
- package/esm2022/lib/services/auth.service.mjs +77 -44
- package/esm2022/lib/services/navigation.service.mjs +4 -1
- package/esm2022/public-api.mjs +3 -1
- package/fesm2022/kivio.mjs +91 -50
- package/fesm2022/kivio.mjs.map +1 -1
- package/lib/injection-tokens/auth-config.d.ts +2 -0
- package/lib/services/auth.service.d.ts +15 -6
- package/lib/services/navigation.service.d.ts +1 -0
- package/package.json +1 -1
- package/public-api.d.ts +1 -0
- package/src/styles/abstract/_variables.scss +4 -0
- package/src/styles/components/_table.scss +39 -0
|
@@ -35,11 +35,11 @@ export class KvMainTableComponent {
|
|
|
35
35
|
this.onNameClicked.emit(data);
|
|
36
36
|
}
|
|
37
37
|
static { this.ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "17.3.12", ngImport: i0, type: KvMainTableComponent, deps: [], target: i0.ɵɵFactoryTarget.Component }); }
|
|
38
|
-
static { this.ɵcmp = i0.ɵɵngDeclareComponent({ minVersion: "14.0.0", version: "17.3.12", type: KvMainTableComponent, isStandalone: true, selector: "lib-kv-main-table", inputs: { columns: "columns", data: "data", extraData: "extraData", showPaginator: "showPaginator" }, outputs: { onNameClicked: "onNameClicked" }, ngImport: i0, template: "<div class=\"search-container\">\r\n\r\n <div class=\"search-section\">\r\n <input type=\"text\" placeholder=\"Buscar...\" [(ngModel)]=\"searchText\" />\r\n </div>\r\n</div>\r\n\r\n<table>\r\n <thead>\r\n <tr>\r\n <th *ngFor=\"let column of columns\">{{ column.label }}</th>\r\n </tr>\r\n </thead>\r\n <tbody>\r\n <tr *ngFor=\"let item of filteredData\">\r\n <td *ngFor=\"let column of columns\">\r\n <div class=\"state\" [ngClass]=\"item[column.key]\">\r\n <ng-container *ngIf=\"column.key === 'name'\">\r\n <a class=\"a-link\" (click)=\"emitData(item)\">{{ item[column.key] }}</a>\r\n </ng-container>\r\n <ng-container *ngIf=\"column.key === 'images'\">\r\n <div class=\"image-container\">\r\n <div *ngFor=\"let image of item[column.key]?.slice(0, 3)\">\r\n <img [src]=\"image\" alt=\"Imagen\">\r\n </div>\r\n <div *ngIf=\"item[column.key]?.length > 3\" class=\"extra-images\">\r\n +{{ item[column.key].length - 3 }}\r\n </div>\r\n </div>\r\n </ng-container>\r\n <ng-container *ngIf=\"column.key === 'expire_at'\"> \r\n {{ item[column.key] | date: 'dd/MM/yyyy' }}\r\n </ng-container>\r\n <ng-container *ngIf=\"column.key !== 'expire_at' && column.key !== 'point_of_sale_id' && column.key !== 'name' && column.key !== 'pos_id' && column.key !== 'images'\">\r\n {{ item[column.key] }}\r\n </ng-container>\r\n <ng-container *ngIf=\"column.key === 'point_of_sale_id' || column.key === 'pos_id'\">\r\n {{ getPosName(item[column.key]) }}\r\n </ng-container>\r\n </div>\r\n </td>\r\n </tr>\r\n </tbody>\r\n</table>\r\n\r\n<ng-container *ngIf=\"showPaginator\">\r\n <table class=\"table-pagination\">\r\n <tbody>\r\n <tr>\r\n <div class=\"pagination\">\r\n <div class=\"button-section\">\r\n <button (click)=\"changePage(-1)\" [disabled]=\"currentPage === 1\">Previous</button>\r\n <button (click)=\"changePage(1)\" [disabled]=\"currentPage === totalPages()\">Next</button>\r\n </div>\r\n <div class=\"current-section\">\r\n <span>Page {{ currentPage }} of {{ totalPages() }}</span>\r\n </div>\r\n </div>\r\n </tr>\r\n </tbody>\r\n </table>\r\n</ng-container>\r\n\r\n", styles: ["input,textarea{padding:10px;width:-webkit-fill-available;border:1px solid #ccc;border-radius:5px;font-size:16px;font-family:Roboto,sans-serif!important;color:#101828;background-color:#fff}input::placeholder,textarea::placeholder{color:#475467}input:focus,textarea:focus{border-color:#007bff;box-shadow:0 0 8px #007bff80;background-color:#fff}input.error,textarea.error{border-color:#fcd9d9;box-shadow:0 0 8px #fcd9d980}.input-group{margin-bottom:15px}.input-group label{font-size:14px;margin-bottom:5px;color:#555}.input-group .error-message{color:red}.input-cost{display:flex;gap:10px}table{width:100%;border-collapse:collapse;text-align:left;border:1px solid #ccc;border-radius:4px}thead{background-color:#fff;color:#101828}tbody{color:#475467}th,td{padding:10px;font-size:14px;border-bottom:1px solid #ccc}tbody tr:hover{background-color:#fff}.state.Active{background-color:#12b76a26;color:#036338!important;font-weight:700;width:min-content;padding:8px;border-radius:4px;white-space:nowrap}.state.Active a{color:#036338!important}.state.Waiting{background-color:#f8e0d1;color:#b53701!important;font-weight:700;width:min-content;padding:8px;border-radius:4px;white-space:nowrap}.state.Waiting a{color:#b53701!important}.state.Created{background-color:#f8e0d1;color:#b53701!important;font-weight:700;width:min-content;padding:8px;border-radius:4px}.state.Created a{color:#b53701!important}.state.Offered{background-color:#12b76a26;color:#036338!important;font-weight:700;width:min-content;padding:8px;border-radius:4px;white-space:nowrap}.state.Offered a{color:#036338!important}.state.Closed{background-color:#fcd9d9;color:#581d1d;font-weight:700;width:min-content;padding:8px;border-radius:4px}.state.Closed a{color:#581d1d!important}.pagination{display:flex;justify-content:space-between;margin-top:10px}.pagination button{padding:5px 10px;border:1px solid #ccc;background-color:#fff;cursor:pointer}.pagination button:disabled{color:#555;cursor:not-allowed}.search-container{margin-bottom:10px;display:flex;justify-content:flex-end;width:100%}.search-container .search-section input{width:min-content!important}.pagination{display:flex;justify-content:space-between;align-items:center;gap:10px;margin:14px;color:#101828}.pagination button{padding:6px 12px;border:none;color:#101828;cursor:pointer;border-radius:4px;margin-right:6px}.pagination button:disabled{background-color:#ededed;cursor:not-allowed}.table-pagination{border-top:0!important}.a-link{text-decoration:none}.a-link:hover{cursor:pointer;text-decoration:underline}.a-link2{text-decoration:underline}.a-link2:hover{cursor:pointer;text-decoration:underline}.column-direction{display:flex;flex-direction:row;gap:1rem;padding:2rem;width:100%}.main-text{font-size:30px;color:#101828}.secondary-text{font-size:16px;color:#475467}.sidebar-title{font-size:24px;color:#101828;font-weight:700;margin-bottom:20px}.description-section{margin-top:30px}.description-section .description-title{color:#101828}.description-section .description-body{color:#475467}.list-container{width:100%;border:1px solid #ccc;border-radius:12px;margin-top:22px}.list-container .list-section{margin:1rem;color:#101828}.list-container .list-section .list{margin-top:12px;color:#475467}.required{color:#b90000;font-weight:700}table{width:100%;table-layout:fixed}th{text-align:flex-start;padding:10px}.image-container{display:flex;align-items:center}.image-container img{width:40px;height:40px;border:2px solid #ccc;border-radius:50%;margin-left:-10px}.extra-images{width:40px;height:40px;border-radius:50%;border:2px solid #ccc;margin-left:-10px;background-color:#0052cc;color:#fff;font-size:15px;display:flex;align-items:center;justify-content:center}\n"], dependencies: [{ kind: "ngmodule", type: CommonModule }, { kind: "directive", type: i1.NgClass, selector: "[ngClass]", inputs: ["class", "ngClass"] }, { kind: "directive", type: i1.NgForOf, selector: "[ngFor][ngForOf]", inputs: ["ngForOf", "ngForTrackBy", "ngForTemplate"] }, { kind: "directive", type: i1.NgIf, selector: "[ngIf]", inputs: ["ngIf", "ngIfThen", "ngIfElse"] }, { kind: "pipe", type: i1.DatePipe, name: "date" }, { kind: "ngmodule", type: FormsModule }, { kind: "directive", type: i2.DefaultValueAccessor, selector: "input:not([type=checkbox])[formControlName],textarea[formControlName],input:not([type=checkbox])[formControl],textarea[formControl],input:not([type=checkbox])[ngModel],textarea[ngModel],[ngDefaultControl]" }, { kind: "directive", type: i2.NgControlStatus, selector: "[formControlName],[ngModel],[formControl]" }, { kind: "directive", type: i2.NgModel, selector: "[ngModel]:not([formControlName]):not([formControl])", inputs: ["name", "disabled", "ngModel", "ngModelOptions"], outputs: ["ngModelChange"], exportAs: ["ngModel"] }] }); }
|
|
38
|
+
static { this.ɵcmp = i0.ɵɵngDeclareComponent({ minVersion: "14.0.0", version: "17.3.12", type: KvMainTableComponent, isStandalone: true, selector: "lib-kv-main-table", inputs: { columns: "columns", data: "data", extraData: "extraData", showPaginator: "showPaginator" }, outputs: { onNameClicked: "onNameClicked" }, ngImport: i0, template: "<div class=\"search-container\">\r\n\r\n <div class=\"search-section\">\r\n <input type=\"text\" placeholder=\"Buscar...\" [(ngModel)]=\"searchText\" />\r\n </div>\r\n</div>\r\n\r\n<table>\r\n <thead>\r\n <tr>\r\n <th *ngFor=\"let column of columns\">{{ column.label }}</th>\r\n </tr>\r\n </thead>\r\n <tbody>\r\n <tr *ngFor=\"let item of filteredData\">\r\n <td *ngFor=\"let column of columns\">\r\n <div class=\"state\" [ngClass]=\"item[column.key]\">\r\n <ng-container *ngIf=\"column.key === 'name'\">\r\n <a class=\"a-link\" (click)=\"emitData(item)\">{{ item[column.key] }}</a>\r\n </ng-container>\r\n <ng-container *ngIf=\"column.key === 'images'\">\r\n <div class=\"image-container\">\r\n <div *ngFor=\"let image of item[column.key]?.slice(0, 3)\">\r\n <img [src]=\"image\" alt=\"Imagen\">\r\n </div>\r\n <div *ngIf=\"item[column.key]?.length > 3\" class=\"extra-images\">\r\n +{{ item[column.key].length - 3 }}\r\n </div>\r\n </div>\r\n </ng-container>\r\n <ng-container *ngIf=\"column.key === 'expire_at'\"> \r\n {{ item[column.key] | date: 'dd/MM/yyyy' }}\r\n </ng-container>\r\n <ng-container *ngIf=\"column.key !== 'expire_at' && column.key !== 'point_of_sale_id' && column.key !== 'name' && column.key !== 'pos_id' && column.key !== 'images'\">\r\n {{ item[column.key] }}\r\n </ng-container>\r\n <ng-container *ngIf=\"column.key === 'point_of_sale_id' || column.key === 'pos_id'\">\r\n {{ getPosName(item[column.key]) }}\r\n </ng-container>\r\n </div>\r\n </td>\r\n </tr>\r\n </tbody>\r\n</table>\r\n\r\n<ng-container *ngIf=\"showPaginator\">\r\n <table class=\"table-pagination\">\r\n <tbody>\r\n <tr>\r\n <div class=\"pagination\">\r\n <div class=\"button-section\">\r\n <button (click)=\"changePage(-1)\" [disabled]=\"currentPage === 1\">Previous</button>\r\n <button (click)=\"changePage(1)\" [disabled]=\"currentPage === totalPages()\">Next</button>\r\n </div>\r\n <div class=\"current-section\">\r\n <span>Page {{ currentPage }} of {{ totalPages() }}</span>\r\n </div>\r\n </div>\r\n </tr>\r\n </tbody>\r\n </table>\r\n</ng-container>\r\n\r\n", styles: ["input,textarea{padding:10px;width:-webkit-fill-available;border:1px solid #ccc;border-radius:5px;font-size:16px;font-family:Roboto,sans-serif!important;color:#101828;background-color:#fff}input::placeholder,textarea::placeholder{color:#475467}input:focus,textarea:focus{border-color:#007bff;box-shadow:0 0 8px #007bff80;background-color:#fff}input.error,textarea.error{border-color:#fcd9d9;box-shadow:0 0 8px #fcd9d980}.input-group{margin-bottom:15px}.input-group label{font-size:14px;margin-bottom:5px;color:#555}.input-group .error-message{color:red}.input-cost{display:flex;gap:10px}table{width:100%;border-collapse:collapse;text-align:left;border:1px solid #ccc;border-radius:4px}thead{background-color:#fff;color:#101828}tbody{color:#475467}th,td{padding:10px;font-size:14px;border-bottom:1px solid #ccc}tbody tr:hover{background-color:#fff}.state.Active{background-color:#12b76a26;color:#036338!important;font-weight:700;width:min-content;padding:8px;border-radius:4px;white-space:nowrap}.state.Active a{color:#036338!important}.state.Waiting{background-color:#f8e0d1;color:#b53701!important;font-weight:700;width:min-content;padding:8px;border-radius:4px;white-space:nowrap}.state.Waiting a{color:#b53701!important}.state.Created{background-color:#f8e0d1;color:#b53701!important;font-weight:700;width:min-content;padding:8px;border-radius:4px}.state.Created a{color:#b53701!important}.state.Offered{background-color:#12b76a26;color:#036338!important;font-weight:700;width:min-content;padding:8px;border-radius:4px;white-space:nowrap}.state.Offered a{color:#036338!important}.state.Closed{background-color:#fcd9d9;color:#581d1d;font-weight:700;width:min-content;padding:8px;border-radius:4px}.state.Closed a{color:#581d1d!important}.state.Approved{background-color:#d1e7dd;color:#0f5132;font-weight:700;width:min-content;padding:8px;border-radius:4px}.state.Approved a{color:#0f5132!important}.state.Rejected{background-color:#f8d7da;color:#842029;font-weight:700;width:min-content;padding:8px;border-radius:4px}.state.Rejected a{color:#842029!important}.state.Pending{background-color:#f8e0d1;color:#b53701;font-weight:700;width:min-content;padding:8px;border-radius:4px}.state.Pending a{color:#b53701!important}.pagination{display:flex;justify-content:space-between;margin-top:10px}.pagination button{padding:5px 10px;border:1px solid #ccc;background-color:#fff;cursor:pointer}.pagination button:disabled{color:#555;cursor:not-allowed}.search-container{margin-bottom:10px;display:flex;justify-content:flex-end;width:100%}.search-container .search-section input{width:min-content!important}.pagination{display:flex;justify-content:space-between;align-items:center;gap:10px;margin:14px;color:#101828}.pagination button{padding:6px 12px;border:none;color:#101828;cursor:pointer;border-radius:4px;margin-right:6px}.pagination button:disabled{background-color:#ededed;cursor:not-allowed}.table-pagination{border-top:0!important}.a-link{text-decoration:none}.a-link:hover{cursor:pointer;text-decoration:underline}.a-link2{text-decoration:underline}.a-link2:hover{cursor:pointer;text-decoration:underline}.column-direction{display:flex;flex-direction:row;gap:1rem;padding:2rem;width:100%}.main-text{font-size:30px;color:#101828}.secondary-text{font-size:16px;color:#475467}.sidebar-title{font-size:24px;color:#101828;font-weight:700;margin-bottom:20px}.description-section{margin-top:30px}.description-section .description-title{color:#101828}.description-section .description-body{color:#475467}.list-container{width:100%;border:1px solid #ccc;border-radius:12px;margin-top:22px}.list-container .list-section{margin:1rem;color:#101828}.list-container .list-section .list{margin-top:12px;color:#475467}.required{color:#b90000;font-weight:700}table{width:100%;table-layout:fixed}th{text-align:flex-start;padding:10px}.image-container{display:flex;align-items:center}.image-container img{width:40px;height:40px;border:2px solid #ccc;border-radius:50%;margin-left:-10px}.extra-images{width:40px;height:40px;border-radius:50%;border:2px solid #ccc;margin-left:-10px;background-color:#0052cc;color:#fff;font-size:15px;display:flex;align-items:center;justify-content:center}\n"], dependencies: [{ kind: "ngmodule", type: CommonModule }, { kind: "directive", type: i1.NgClass, selector: "[ngClass]", inputs: ["class", "ngClass"] }, { kind: "directive", type: i1.NgForOf, selector: "[ngFor][ngForOf]", inputs: ["ngForOf", "ngForTrackBy", "ngForTemplate"] }, { kind: "directive", type: i1.NgIf, selector: "[ngIf]", inputs: ["ngIf", "ngIfThen", "ngIfElse"] }, { kind: "pipe", type: i1.DatePipe, name: "date" }, { kind: "ngmodule", type: FormsModule }, { kind: "directive", type: i2.DefaultValueAccessor, selector: "input:not([type=checkbox])[formControlName],textarea[formControlName],input:not([type=checkbox])[formControl],textarea[formControl],input:not([type=checkbox])[ngModel],textarea[ngModel],[ngDefaultControl]" }, { kind: "directive", type: i2.NgControlStatus, selector: "[formControlName],[ngModel],[formControl]" }, { kind: "directive", type: i2.NgModel, selector: "[ngModel]:not([formControlName]):not([formControl])", inputs: ["name", "disabled", "ngModel", "ngModelOptions"], outputs: ["ngModelChange"], exportAs: ["ngModel"] }] }); }
|
|
39
39
|
}
|
|
40
40
|
i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "17.3.12", ngImport: i0, type: KvMainTableComponent, decorators: [{
|
|
41
41
|
type: Component,
|
|
42
|
-
args: [{ selector: 'lib-kv-main-table', standalone: true, imports: [CommonModule, FormsModule], template: "<div class=\"search-container\">\r\n\r\n <div class=\"search-section\">\r\n <input type=\"text\" placeholder=\"Buscar...\" [(ngModel)]=\"searchText\" />\r\n </div>\r\n</div>\r\n\r\n<table>\r\n <thead>\r\n <tr>\r\n <th *ngFor=\"let column of columns\">{{ column.label }}</th>\r\n </tr>\r\n </thead>\r\n <tbody>\r\n <tr *ngFor=\"let item of filteredData\">\r\n <td *ngFor=\"let column of columns\">\r\n <div class=\"state\" [ngClass]=\"item[column.key]\">\r\n <ng-container *ngIf=\"column.key === 'name'\">\r\n <a class=\"a-link\" (click)=\"emitData(item)\">{{ item[column.key] }}</a>\r\n </ng-container>\r\n <ng-container *ngIf=\"column.key === 'images'\">\r\n <div class=\"image-container\">\r\n <div *ngFor=\"let image of item[column.key]?.slice(0, 3)\">\r\n <img [src]=\"image\" alt=\"Imagen\">\r\n </div>\r\n <div *ngIf=\"item[column.key]?.length > 3\" class=\"extra-images\">\r\n +{{ item[column.key].length - 3 }}\r\n </div>\r\n </div>\r\n </ng-container>\r\n <ng-container *ngIf=\"column.key === 'expire_at'\"> \r\n {{ item[column.key] | date: 'dd/MM/yyyy' }}\r\n </ng-container>\r\n <ng-container *ngIf=\"column.key !== 'expire_at' && column.key !== 'point_of_sale_id' && column.key !== 'name' && column.key !== 'pos_id' && column.key !== 'images'\">\r\n {{ item[column.key] }}\r\n </ng-container>\r\n <ng-container *ngIf=\"column.key === 'point_of_sale_id' || column.key === 'pos_id'\">\r\n {{ getPosName(item[column.key]) }}\r\n </ng-container>\r\n </div>\r\n </td>\r\n </tr>\r\n </tbody>\r\n</table>\r\n\r\n<ng-container *ngIf=\"showPaginator\">\r\n <table class=\"table-pagination\">\r\n <tbody>\r\n <tr>\r\n <div class=\"pagination\">\r\n <div class=\"button-section\">\r\n <button (click)=\"changePage(-1)\" [disabled]=\"currentPage === 1\">Previous</button>\r\n <button (click)=\"changePage(1)\" [disabled]=\"currentPage === totalPages()\">Next</button>\r\n </div>\r\n <div class=\"current-section\">\r\n <span>Page {{ currentPage }} of {{ totalPages() }}</span>\r\n </div>\r\n </div>\r\n </tr>\r\n </tbody>\r\n </table>\r\n</ng-container>\r\n\r\n", styles: ["input,textarea{padding:10px;width:-webkit-fill-available;border:1px solid #ccc;border-radius:5px;font-size:16px;font-family:Roboto,sans-serif!important;color:#101828;background-color:#fff}input::placeholder,textarea::placeholder{color:#475467}input:focus,textarea:focus{border-color:#007bff;box-shadow:0 0 8px #007bff80;background-color:#fff}input.error,textarea.error{border-color:#fcd9d9;box-shadow:0 0 8px #fcd9d980}.input-group{margin-bottom:15px}.input-group label{font-size:14px;margin-bottom:5px;color:#555}.input-group .error-message{color:red}.input-cost{display:flex;gap:10px}table{width:100%;border-collapse:collapse;text-align:left;border:1px solid #ccc;border-radius:4px}thead{background-color:#fff;color:#101828}tbody{color:#475467}th,td{padding:10px;font-size:14px;border-bottom:1px solid #ccc}tbody tr:hover{background-color:#fff}.state.Active{background-color:#12b76a26;color:#036338!important;font-weight:700;width:min-content;padding:8px;border-radius:4px;white-space:nowrap}.state.Active a{color:#036338!important}.state.Waiting{background-color:#f8e0d1;color:#b53701!important;font-weight:700;width:min-content;padding:8px;border-radius:4px;white-space:nowrap}.state.Waiting a{color:#b53701!important}.state.Created{background-color:#f8e0d1;color:#b53701!important;font-weight:700;width:min-content;padding:8px;border-radius:4px}.state.Created a{color:#b53701!important}.state.Offered{background-color:#12b76a26;color:#036338!important;font-weight:700;width:min-content;padding:8px;border-radius:4px;white-space:nowrap}.state.Offered a{color:#036338!important}.state.Closed{background-color:#fcd9d9;color:#581d1d;font-weight:700;width:min-content;padding:8px;border-radius:4px}.state.Closed a{color:#581d1d!important}.pagination{display:flex;justify-content:space-between;margin-top:10px}.pagination button{padding:5px 10px;border:1px solid #ccc;background-color:#fff;cursor:pointer}.pagination button:disabled{color:#555;cursor:not-allowed}.search-container{margin-bottom:10px;display:flex;justify-content:flex-end;width:100%}.search-container .search-section input{width:min-content!important}.pagination{display:flex;justify-content:space-between;align-items:center;gap:10px;margin:14px;color:#101828}.pagination button{padding:6px 12px;border:none;color:#101828;cursor:pointer;border-radius:4px;margin-right:6px}.pagination button:disabled{background-color:#ededed;cursor:not-allowed}.table-pagination{border-top:0!important}.a-link{text-decoration:none}.a-link:hover{cursor:pointer;text-decoration:underline}.a-link2{text-decoration:underline}.a-link2:hover{cursor:pointer;text-decoration:underline}.column-direction{display:flex;flex-direction:row;gap:1rem;padding:2rem;width:100%}.main-text{font-size:30px;color:#101828}.secondary-text{font-size:16px;color:#475467}.sidebar-title{font-size:24px;color:#101828;font-weight:700;margin-bottom:20px}.description-section{margin-top:30px}.description-section .description-title{color:#101828}.description-section .description-body{color:#475467}.list-container{width:100%;border:1px solid #ccc;border-radius:12px;margin-top:22px}.list-container .list-section{margin:1rem;color:#101828}.list-container .list-section .list{margin-top:12px;color:#475467}.required{color:#b90000;font-weight:700}table{width:100%;table-layout:fixed}th{text-align:flex-start;padding:10px}.image-container{display:flex;align-items:center}.image-container img{width:40px;height:40px;border:2px solid #ccc;border-radius:50%;margin-left:-10px}.extra-images{width:40px;height:40px;border-radius:50%;border:2px solid #ccc;margin-left:-10px;background-color:#0052cc;color:#fff;font-size:15px;display:flex;align-items:center;justify-content:center}\n"] }]
|
|
42
|
+
args: [{ selector: 'lib-kv-main-table', standalone: true, imports: [CommonModule, FormsModule], template: "<div class=\"search-container\">\r\n\r\n <div class=\"search-section\">\r\n <input type=\"text\" placeholder=\"Buscar...\" [(ngModel)]=\"searchText\" />\r\n </div>\r\n</div>\r\n\r\n<table>\r\n <thead>\r\n <tr>\r\n <th *ngFor=\"let column of columns\">{{ column.label }}</th>\r\n </tr>\r\n </thead>\r\n <tbody>\r\n <tr *ngFor=\"let item of filteredData\">\r\n <td *ngFor=\"let column of columns\">\r\n <div class=\"state\" [ngClass]=\"item[column.key]\">\r\n <ng-container *ngIf=\"column.key === 'name'\">\r\n <a class=\"a-link\" (click)=\"emitData(item)\">{{ item[column.key] }}</a>\r\n </ng-container>\r\n <ng-container *ngIf=\"column.key === 'images'\">\r\n <div class=\"image-container\">\r\n <div *ngFor=\"let image of item[column.key]?.slice(0, 3)\">\r\n <img [src]=\"image\" alt=\"Imagen\">\r\n </div>\r\n <div *ngIf=\"item[column.key]?.length > 3\" class=\"extra-images\">\r\n +{{ item[column.key].length - 3 }}\r\n </div>\r\n </div>\r\n </ng-container>\r\n <ng-container *ngIf=\"column.key === 'expire_at'\"> \r\n {{ item[column.key] | date: 'dd/MM/yyyy' }}\r\n </ng-container>\r\n <ng-container *ngIf=\"column.key !== 'expire_at' && column.key !== 'point_of_sale_id' && column.key !== 'name' && column.key !== 'pos_id' && column.key !== 'images'\">\r\n {{ item[column.key] }}\r\n </ng-container>\r\n <ng-container *ngIf=\"column.key === 'point_of_sale_id' || column.key === 'pos_id'\">\r\n {{ getPosName(item[column.key]) }}\r\n </ng-container>\r\n </div>\r\n </td>\r\n </tr>\r\n </tbody>\r\n</table>\r\n\r\n<ng-container *ngIf=\"showPaginator\">\r\n <table class=\"table-pagination\">\r\n <tbody>\r\n <tr>\r\n <div class=\"pagination\">\r\n <div class=\"button-section\">\r\n <button (click)=\"changePage(-1)\" [disabled]=\"currentPage === 1\">Previous</button>\r\n <button (click)=\"changePage(1)\" [disabled]=\"currentPage === totalPages()\">Next</button>\r\n </div>\r\n <div class=\"current-section\">\r\n <span>Page {{ currentPage }} of {{ totalPages() }}</span>\r\n </div>\r\n </div>\r\n </tr>\r\n </tbody>\r\n </table>\r\n</ng-container>\r\n\r\n", styles: ["input,textarea{padding:10px;width:-webkit-fill-available;border:1px solid #ccc;border-radius:5px;font-size:16px;font-family:Roboto,sans-serif!important;color:#101828;background-color:#fff}input::placeholder,textarea::placeholder{color:#475467}input:focus,textarea:focus{border-color:#007bff;box-shadow:0 0 8px #007bff80;background-color:#fff}input.error,textarea.error{border-color:#fcd9d9;box-shadow:0 0 8px #fcd9d980}.input-group{margin-bottom:15px}.input-group label{font-size:14px;margin-bottom:5px;color:#555}.input-group .error-message{color:red}.input-cost{display:flex;gap:10px}table{width:100%;border-collapse:collapse;text-align:left;border:1px solid #ccc;border-radius:4px}thead{background-color:#fff;color:#101828}tbody{color:#475467}th,td{padding:10px;font-size:14px;border-bottom:1px solid #ccc}tbody tr:hover{background-color:#fff}.state.Active{background-color:#12b76a26;color:#036338!important;font-weight:700;width:min-content;padding:8px;border-radius:4px;white-space:nowrap}.state.Active a{color:#036338!important}.state.Waiting{background-color:#f8e0d1;color:#b53701!important;font-weight:700;width:min-content;padding:8px;border-radius:4px;white-space:nowrap}.state.Waiting a{color:#b53701!important}.state.Created{background-color:#f8e0d1;color:#b53701!important;font-weight:700;width:min-content;padding:8px;border-radius:4px}.state.Created a{color:#b53701!important}.state.Offered{background-color:#12b76a26;color:#036338!important;font-weight:700;width:min-content;padding:8px;border-radius:4px;white-space:nowrap}.state.Offered a{color:#036338!important}.state.Closed{background-color:#fcd9d9;color:#581d1d;font-weight:700;width:min-content;padding:8px;border-radius:4px}.state.Closed a{color:#581d1d!important}.state.Approved{background-color:#d1e7dd;color:#0f5132;font-weight:700;width:min-content;padding:8px;border-radius:4px}.state.Approved a{color:#0f5132!important}.state.Rejected{background-color:#f8d7da;color:#842029;font-weight:700;width:min-content;padding:8px;border-radius:4px}.state.Rejected a{color:#842029!important}.state.Pending{background-color:#f8e0d1;color:#b53701;font-weight:700;width:min-content;padding:8px;border-radius:4px}.state.Pending a{color:#b53701!important}.pagination{display:flex;justify-content:space-between;margin-top:10px}.pagination button{padding:5px 10px;border:1px solid #ccc;background-color:#fff;cursor:pointer}.pagination button:disabled{color:#555;cursor:not-allowed}.search-container{margin-bottom:10px;display:flex;justify-content:flex-end;width:100%}.search-container .search-section input{width:min-content!important}.pagination{display:flex;justify-content:space-between;align-items:center;gap:10px;margin:14px;color:#101828}.pagination button{padding:6px 12px;border:none;color:#101828;cursor:pointer;border-radius:4px;margin-right:6px}.pagination button:disabled{background-color:#ededed;cursor:not-allowed}.table-pagination{border-top:0!important}.a-link{text-decoration:none}.a-link:hover{cursor:pointer;text-decoration:underline}.a-link2{text-decoration:underline}.a-link2:hover{cursor:pointer;text-decoration:underline}.column-direction{display:flex;flex-direction:row;gap:1rem;padding:2rem;width:100%}.main-text{font-size:30px;color:#101828}.secondary-text{font-size:16px;color:#475467}.sidebar-title{font-size:24px;color:#101828;font-weight:700;margin-bottom:20px}.description-section{margin-top:30px}.description-section .description-title{color:#101828}.description-section .description-body{color:#475467}.list-container{width:100%;border:1px solid #ccc;border-radius:12px;margin-top:22px}.list-container .list-section{margin:1rem;color:#101828}.list-container .list-section .list{margin-top:12px;color:#475467}.required{color:#b90000;font-weight:700}table{width:100%;table-layout:fixed}th{text-align:flex-start;padding:10px}.image-container{display:flex;align-items:center}.image-container img{width:40px;height:40px;border:2px solid #ccc;border-radius:50%;margin-left:-10px}.extra-images{width:40px;height:40px;border-radius:50%;border:2px solid #ccc;margin-left:-10px;background-color:#0052cc;color:#fff;font-size:15px;display:flex;align-items:center;justify-content:center}\n"] }]
|
|
43
43
|
}], propDecorators: { columns: [{
|
|
44
44
|
type: Input
|
|
45
45
|
}], data: [{
|
|
@@ -51,4 +51,4 @@ i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "17.3.12", ngImpo
|
|
|
51
51
|
}], onNameClicked: [{
|
|
52
52
|
type: Output
|
|
53
53
|
}] } });
|
|
54
|
-
//# sourceMappingURL=data:application/json;base64,
|
|
54
|
+
//# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoia3YtbWFpbi10YWJsZS5jb21wb25lbnQuanMiLCJzb3VyY2VSb290IjoiIiwic291cmNlcyI6WyIuLi8uLi8uLi8uLi8uLi8uLi9wcm9qZWN0cy9raXZpby9zcmMvbGliL2NvbXBvbmVudHMva3YtbWFpbi10YWJsZS9rdi1tYWluLXRhYmxlLmNvbXBvbmVudC50cyIsIi4uLy4uLy4uLy4uLy4uLy4uL3Byb2plY3RzL2tpdmlvL3NyYy9saWIvY29tcG9uZW50cy9rdi1tYWluLXRhYmxlL2t2LW1haW4tdGFibGUuY29tcG9uZW50Lmh0bWwiXSwibmFtZXMiOltdLCJtYXBwaW5ncyI6IkFBQUEsT0FBTyxFQUFFLFlBQVksRUFBRSxNQUFNLGlCQUFpQixDQUFDO0FBQy9DLE9BQU8sRUFBRSxTQUFTLEVBQUUsWUFBWSxFQUFFLEtBQUssRUFBRSxNQUFNLEVBQUUsTUFBTSxlQUFlLENBQUM7QUFDdkUsT0FBTyxFQUFFLFdBQVcsRUFBRSxNQUFNLGdCQUFnQixDQUFDOzs7O0FBUzdDLE1BQU0sT0FBTyxvQkFBb0I7SUFQakM7UUFTVyxZQUFPLEdBQXFDLEVBQUUsQ0FBQztRQUMvQyxTQUFJLEdBQVUsRUFBRSxDQUFDO1FBRWpCLGtCQUFhLEdBQVksSUFBSSxDQUFDO1FBQzdCLGtCQUFhLEdBQXNCLElBQUksWUFBWSxFQUFPLENBQUM7UUFFckUsZUFBVSxHQUFXLEVBQUUsQ0FBQztRQUN4QixnQkFBVyxHQUFXLENBQUMsQ0FBQztRQUN4QixhQUFRLEdBQVcsQ0FBQyxDQUFDO0tBcUN0QjtJQW5DQyxJQUFJLFlBQVk7UUFDZCxPQUFPLElBQUksQ0FBQyxJQUFJO2FBQ2IsTUFBTSxDQUFDLENBQUMsSUFBSSxFQUFFLEVBQUUsQ0FDZixJQUFJLENBQUMsT0FBTyxDQUFDLElBQUksQ0FBQyxDQUFDLEdBQUcsRUFBRSxFQUFFLENBQ3hCLElBQUksQ0FBQyxHQUFHLENBQUMsR0FBRyxDQUFDLEVBQUUsUUFBUSxFQUFFLENBQUMsV0FBVyxFQUFFLENBQUMsUUFBUSxDQUFDLElBQUksQ0FBQyxVQUFVLENBQUMsV0FBVyxFQUFFLENBQUMsQ0FDaEYsQ0FDRjthQUNBLEtBQUssQ0FBQyxDQUFDLElBQUksQ0FBQyxXQUFXLEdBQUcsQ0FBQyxDQUFDLEdBQUcsSUFBSSxDQUFDLFFBQVEsRUFBRSxJQUFJLENBQUMsV0FBVyxHQUFHLElBQUksQ0FBQyxRQUFRLENBQUMsQ0FBQztJQUNyRixDQUFDO0lBRUQsVUFBVTtRQUNSLE9BQU8sSUFBSSxDQUFDLElBQUksQ0FDZCxJQUFJLENBQUMsSUFBSSxDQUFDLE1BQU0sQ0FBQyxDQUFDLElBQUksRUFBRSxFQUFFLENBQ3hCLElBQUksQ0FBQyxPQUFPLENBQUMsSUFBSSxDQUFDLENBQUMsR0FBRyxFQUFFLEVBQUUsQ0FDeEIsSUFBSSxDQUFDLEdBQUcsQ0FBQyxHQUFHLENBQUMsRUFBRSxRQUFRLEVBQUUsQ0FBQyxXQUFXLEVBQUUsQ0FBQyxRQUFRLENBQUMsSUFBSSxDQUFDLFVBQVUsQ0FBQyxXQUFXLEVBQUUsQ0FBQyxDQUNoRixDQUNGLENBQUMsTUFBTSxHQUFHLElBQUksQ0FBQyxRQUFRLENBQ3pCLENBQUM7SUFDSixDQUFDO0lBRUQsVUFBVSxDQUFDLFNBQWlCO1FBQzFCLE1BQU0sT0FBTyxHQUFHLElBQUksQ0FBQyxXQUFXLEdBQUcsU0FBUyxDQUFDO1FBQzdDLElBQUksT0FBTyxHQUFHLENBQUMsSUFBSSxPQUFPLElBQUksSUFBSSxDQUFDLFVBQVUsRUFBRSxFQUFFO1lBQy9DLElBQUksQ0FBQyxXQUFXLEdBQUcsT0FBTyxDQUFDO1NBQzVCO0lBQ0gsQ0FBQztJQUVNLFVBQVUsQ0FBRSxLQUFjO1FBQy9CLE9BQU8sSUFBSSxDQUFDLFNBQVMsQ0FBQyxJQUFJLENBQUUsR0FBRyxDQUFDLEVBQUUsQ0FBQyxHQUFHLENBQUMsZ0JBQWdCLEtBQUssS0FBSyxDQUFDLEVBQUUsSUFBSSxJQUFJLEVBQUUsQ0FBQztJQUNqRixDQUFDO0lBRU0sUUFBUSxDQUFDLElBQVM7UUFDdkIsSUFBSSxDQUFDLGFBQWEsQ0FBQyxJQUFJLENBQUMsSUFBSSxDQUFDLENBQUM7SUFDaEMsQ0FBQzsrR0E3Q1Usb0JBQW9CO21HQUFwQixvQkFBb0IsZ09DWGpDLHUxRkErREEsb29JRHhEWSxZQUFZLGdaQUFFLFdBQVc7OzRGQUl4QixvQkFBb0I7a0JBUGhDLFNBQVM7K0JBQ0UsbUJBQW1CLGNBQ2pCLElBQUksV0FDUCxDQUFDLFlBQVksRUFBRSxXQUFXLENBQUM7OEJBTTNCLE9BQU87c0JBQWYsS0FBSztnQkFDRyxJQUFJO3NCQUFaLEtBQUs7Z0JBQ0csU0FBUztzQkFBakIsS0FBSztnQkFDRyxhQUFhO3NCQUFyQixLQUFLO2dCQUNJLGFBQWE7c0JBQXRCLE1BQU0iLCJzb3VyY2VzQ29udGVudCI6WyJpbXBvcnQgeyBDb21tb25Nb2R1bGUgfSBmcm9tICdAYW5ndWxhci9jb21tb24nO1xyXG5pbXBvcnQgeyBDb21wb25lbnQsIEV2ZW50RW1pdHRlciwgSW5wdXQsIE91dHB1dCB9IGZyb20gJ0Bhbmd1bGFyL2NvcmUnO1xyXG5pbXBvcnQgeyBGb3Jtc01vZHVsZSB9IGZyb20gJ0Bhbmd1bGFyL2Zvcm1zJztcclxuXHJcbkBDb21wb25lbnQoe1xyXG4gIHNlbGVjdG9yOiAnbGliLWt2LW1haW4tdGFibGUnLFxyXG4gIHN0YW5kYWxvbmU6IHRydWUsXHJcbiAgaW1wb3J0czogW0NvbW1vbk1vZHVsZSwgRm9ybXNNb2R1bGVdLFxyXG4gIHRlbXBsYXRlVXJsOiAnLi9rdi1tYWluLXRhYmxlLmNvbXBvbmVudC5odG1sJyxcclxuICBzdHlsZVVybDogJy4va3YtbWFpbi10YWJsZS5jb21wb25lbnQuc2NzcydcclxufSlcclxuZXhwb3J0IGNsYXNzIEt2TWFpblRhYmxlQ29tcG9uZW50IHtcclxuXHJcbiAgQElucHV0KCkgY29sdW1uczogeyBrZXk6IHN0cmluZzsgbGFiZWw6IHN0cmluZyB9W10gPSBbXTtcclxuICBASW5wdXQoKSBkYXRhOiBhbnlbXSA9IFtdO1xyXG4gIEBJbnB1dCgpIGV4dHJhRGF0YSE6IGFueVtdO1xyXG4gIEBJbnB1dCgpIHNob3dQYWdpbmF0b3I6IGJvb2xlYW4gPSB0cnVlO1xyXG4gIEBPdXRwdXQoKSBvbk5hbWVDbGlja2VkOiBFdmVudEVtaXR0ZXI8YW55PiA9IG5ldyBFdmVudEVtaXR0ZXI8YW55PigpO1xyXG5cclxuICBzZWFyY2hUZXh0OiBzdHJpbmcgPSAnJztcclxuICBjdXJyZW50UGFnZTogbnVtYmVyID0gMTtcclxuICBwYWdlU2l6ZTogbnVtYmVyID0gNTtcclxuXHJcbiAgZ2V0IGZpbHRlcmVkRGF0YSgpIHtcclxuICAgIHJldHVybiB0aGlzLmRhdGFcclxuICAgICAgLmZpbHRlcigoaXRlbSkgPT5cclxuICAgICAgICB0aGlzLmNvbHVtbnMuc29tZSgoY29sKSA9PlxyXG4gICAgICAgICAgaXRlbVtjb2wua2V5XT8udG9TdHJpbmcoKS50b0xvd2VyQ2FzZSgpLmluY2x1ZGVzKHRoaXMuc2VhcmNoVGV4dC50b0xvd2VyQ2FzZSgpKVxyXG4gICAgICAgIClcclxuICAgICAgKVxyXG4gICAgICAuc2xpY2UoKHRoaXMuY3VycmVudFBhZ2UgLSAxKSAqIHRoaXMucGFnZVNpemUsIHRoaXMuY3VycmVudFBhZ2UgKiB0aGlzLnBhZ2VTaXplKTtcclxuICB9XHJcblxyXG4gIHRvdGFsUGFnZXMoKTogbnVtYmVyIHtcclxuICAgIHJldHVybiBNYXRoLmNlaWwoXHJcbiAgICAgIHRoaXMuZGF0YS5maWx0ZXIoKGl0ZW0pID0+XHJcbiAgICAgICAgdGhpcy5jb2x1bW5zLnNvbWUoKGNvbCkgPT5cclxuICAgICAgICAgIGl0ZW1bY29sLmtleV0/LnRvU3RyaW5nKCkudG9Mb3dlckNhc2UoKS5pbmNsdWRlcyh0aGlzLnNlYXJjaFRleHQudG9Mb3dlckNhc2UoKSlcclxuICAgICAgICApXHJcbiAgICAgICkubGVuZ3RoIC8gdGhpcy5wYWdlU2l6ZVxyXG4gICAgKTtcclxuICB9XHJcblxyXG4gIGNoYW5nZVBhZ2UoZGlyZWN0aW9uOiBudW1iZXIpIHtcclxuICAgIGNvbnN0IG5ld1BhZ2UgPSB0aGlzLmN1cnJlbnRQYWdlICsgZGlyZWN0aW9uO1xyXG4gICAgaWYgKG5ld1BhZ2UgPiAwICYmIG5ld1BhZ2UgPD0gdGhpcy50b3RhbFBhZ2VzKCkpIHtcclxuICAgICAgdGhpcy5jdXJyZW50UGFnZSA9IG5ld1BhZ2U7XHJcbiAgICB9XHJcbiAgfVxyXG5cclxuICBwdWJsaWMgZ2V0UG9zTmFtZSggcG9zSWQgOiBzdHJpbmcpOiBzdHJpbmd7XHJcbiAgICByZXR1cm4gdGhpcy5leHRyYURhdGEuZmluZCggcG9zID0+IHBvcy5wb2ludF9vZl9zYWxlX2lkID09PSBwb3NJZCk/Lm5hbWUgfHwgXCJcIjtcclxuICB9XHJcblxyXG4gIHB1YmxpYyBlbWl0RGF0YShkYXRhOiBhbnkpe1xyXG4gICAgdGhpcy5vbk5hbWVDbGlja2VkLmVtaXQoZGF0YSk7XHJcbiAgfVxyXG5cclxufVxyXG4iLCI8ZGl2IGNsYXNzPVwic2VhcmNoLWNvbnRhaW5lclwiPlxyXG5cclxuICAgIDxkaXYgY2xhc3M9XCJzZWFyY2gtc2VjdGlvblwiPlxyXG4gICAgICAgIDxpbnB1dCB0eXBlPVwidGV4dFwiIHBsYWNlaG9sZGVyPVwiQnVzY2FyLi4uXCIgWyhuZ01vZGVsKV09XCJzZWFyY2hUZXh0XCIgLz5cclxuICAgIDwvZGl2PlxyXG48L2Rpdj5cclxuXHJcbjx0YWJsZT5cclxuICAgIDx0aGVhZD5cclxuICAgICAgICA8dHI+XHJcbiAgICAgICAgICAgIDx0aCAqbmdGb3I9XCJsZXQgY29sdW1uIG9mIGNvbHVtbnNcIj57eyBjb2x1bW4ubGFiZWwgfX08L3RoPlxyXG4gICAgICAgIDwvdHI+XHJcbiAgICA8L3RoZWFkPlxyXG4gICAgPHRib2R5PlxyXG4gICAgICAgIDx0ciAqbmdGb3I9XCJsZXQgaXRlbSBvZiBmaWx0ZXJlZERhdGFcIj5cclxuICAgICAgICAgICAgPHRkICpuZ0Zvcj1cImxldCBjb2x1bW4gb2YgY29sdW1uc1wiPlxyXG4gICAgICAgICAgICAgICAgPGRpdiBjbGFzcz1cInN0YXRlXCIgW25nQ2xhc3NdPVwiaXRlbVtjb2x1bW4ua2V5XVwiPlxyXG4gICAgICAgICAgICAgICAgICAgIDxuZy1jb250YWluZXIgKm5nSWY9XCJjb2x1bW4ua2V5ID09PSAnbmFtZSdcIj5cclxuICAgICAgICAgICAgICAgICAgICAgICAgPGEgY2xhc3M9XCJhLWxpbmtcIiAoY2xpY2spPVwiZW1pdERhdGEoaXRlbSlcIj57eyBpdGVtW2NvbHVtbi5rZXldIH19PC9hPlxyXG4gICAgICAgICAgICAgICAgICAgIDwvbmctY29udGFpbmVyPlxyXG4gICAgICAgICAgICAgICAgICAgIDxuZy1jb250YWluZXIgKm5nSWY9XCJjb2x1bW4ua2V5ID09PSAnaW1hZ2VzJ1wiPlxyXG4gICAgICAgICAgICAgICAgICAgICAgICA8ZGl2IGNsYXNzPVwiaW1hZ2UtY29udGFpbmVyXCI+XHJcbiAgICAgICAgICAgICAgICAgICAgICAgICAgPGRpdiAqbmdGb3I9XCJsZXQgaW1hZ2Ugb2YgaXRlbVtjb2x1bW4ua2V5XT8uc2xpY2UoMCwgMylcIj5cclxuICAgICAgICAgICAgICAgICAgICAgICAgICAgIDxpbWcgW3NyY109XCJpbWFnZVwiIGFsdD1cIkltYWdlblwiPlxyXG4gICAgICAgICAgICAgICAgICAgICAgICAgIDwvZGl2PlxyXG4gICAgICAgICAgICAgICAgICAgICAgICAgIDxkaXYgKm5nSWY9XCJpdGVtW2NvbHVtbi5rZXldPy5sZW5ndGggPiAzXCIgY2xhc3M9XCJleHRyYS1pbWFnZXNcIj5cclxuICAgICAgICAgICAgICAgICAgICAgICAgICAgICt7eyBpdGVtW2NvbHVtbi5rZXldLmxlbmd0aCAtIDMgfX1cclxuICAgICAgICAgICAgICAgICAgICAgICAgICA8L2Rpdj5cclxuICAgICAgICAgICAgICAgICAgICAgICAgPC9kaXY+XHJcbiAgICAgICAgICAgICAgICAgICAgICA8L25nLWNvbnRhaW5lcj5cclxuICAgICAgICAgICAgICAgICAgICAgIDxuZy1jb250YWluZXIgKm5nSWY9XCJjb2x1bW4ua2V5ID09PSAnZXhwaXJlX2F0J1wiPiAgICAgICAgICAgICAgICAgICAgICBcclxuICAgICAgICAgICAgICAgICAgICAgICAge3sgaXRlbVtjb2x1bW4ua2V5XSB8IGRhdGU6ICdkZC9NTS95eXl5JyB9fVxyXG4gICAgICAgICAgICAgICAgICAgIDwvbmctY29udGFpbmVyPlxyXG4gICAgICAgICAgICAgICAgICAgIDxuZy1jb250YWluZXIgKm5nSWY9XCJjb2x1bW4ua2V5ICE9PSAnZXhwaXJlX2F0JyAmJiBjb2x1bW4ua2V5ICE9PSAncG9pbnRfb2Zfc2FsZV9pZCcgJiYgY29sdW1uLmtleSAhPT0gJ25hbWUnICYmIGNvbHVtbi5rZXkgIT09ICdwb3NfaWQnICYmIGNvbHVtbi5rZXkgIT09ICdpbWFnZXMnXCI+XHJcbiAgICAgICAgICAgICAgICAgICAgICAgIHt7IGl0ZW1bY29sdW1uLmtleV0gfX1cclxuICAgICAgICAgICAgICAgICAgICA8L25nLWNvbnRhaW5lcj5cclxuICAgICAgICAgICAgICAgICAgICA8bmctY29udGFpbmVyICpuZ0lmPVwiY29sdW1uLmtleSA9PT0gJ3BvaW50X29mX3NhbGVfaWQnIHx8IGNvbHVtbi5rZXkgPT09ICdwb3NfaWQnXCI+XHJcbiAgICAgICAgICAgICAgICAgICAgICAgIHt7IGdldFBvc05hbWUoaXRlbVtjb2x1bW4ua2V5XSkgfX1cclxuICAgICAgICAgICAgICAgICAgICA8L25nLWNvbnRhaW5lcj5cclxuICAgICAgICAgICAgICAgIDwvZGl2PlxyXG4gICAgICAgICAgICA8L3RkPlxyXG4gICAgICAgIDwvdHI+XHJcbiAgICA8L3Rib2R5PlxyXG48L3RhYmxlPlxyXG5cclxuPG5nLWNvbnRhaW5lciAqbmdJZj1cInNob3dQYWdpbmF0b3JcIj5cclxuICAgIDx0YWJsZSBjbGFzcz1cInRhYmxlLXBhZ2luYXRpb25cIj5cclxuICAgICAgICA8dGJvZHk+XHJcbiAgICAgICAgICAgIDx0cj5cclxuICAgICAgICAgICAgICAgIDxkaXYgY2xhc3M9XCJwYWdpbmF0aW9uXCI+XHJcbiAgICAgICAgICAgICAgICAgICAgPGRpdiBjbGFzcz1cImJ1dHRvbi1zZWN0aW9uXCI+XHJcbiAgICAgICAgICAgICAgICAgICAgICAgIDxidXR0b24gKGNsaWNrKT1cImNoYW5nZVBhZ2UoLTEpXCIgW2Rpc2FibGVkXT1cImN1cnJlbnRQYWdlID09PSAxXCI+UHJldmlvdXM8L2J1dHRvbj5cclxuICAgICAgICAgICAgICAgICAgICAgICAgPGJ1dHRvbiAoY2xpY2spPVwiY2hhbmdlUGFnZSgxKVwiIFtkaXNhYmxlZF09XCJjdXJyZW50UGFnZSA9PT0gdG90YWxQYWdlcygpXCI+TmV4dDwvYnV0dG9uPlxyXG4gICAgICAgICAgICAgICAgICAgIDwvZGl2PlxyXG4gICAgICAgICAgICAgICAgICAgIDxkaXYgY2xhc3M9XCJjdXJyZW50LXNlY3Rpb25cIj5cclxuICAgICAgICAgICAgICAgICAgICAgICAgPHNwYW4+UGFnZSB7eyBjdXJyZW50UGFnZSB9fSBvZiB7eyB0b3RhbFBhZ2VzKCkgfX08L3NwYW4+XHJcbiAgICAgICAgICAgICAgICAgICAgPC9kaXY+XHJcbiAgICAgICAgICAgICAgICA8L2Rpdj5cclxuICAgICAgICAgICAgPC90cj5cclxuICAgICAgICA8L3Rib2R5PlxyXG4gICAgPC90YWJsZT5cclxuPC9uZy1jb250YWluZXI+XHJcblxyXG4iXX0=
|
|
@@ -25,11 +25,11 @@ export class KvSideMenuComponent {
|
|
|
25
25
|
this.onSaveChanges.emit();
|
|
26
26
|
}
|
|
27
27
|
static { this.ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "17.3.12", ngImport: i0, type: KvSideMenuComponent, deps: [], target: i0.ɵɵFactoryTarget.Component }); }
|
|
28
|
-
static { this.ɵcmp = i0.ɵɵngDeclareComponent({ minVersion: "14.0.0", version: "17.3.12", type: KvSideMenuComponent, isStandalone: true, selector: "lib-kv-side-menu", inputs: { breadcrumb: "breadcrumb" }, outputs: { onEdit: "onEdit", onClose: "onClose", onDelete: "onDelete", onSaveChanges: "onSaveChanges" }, ngImport: i0, template: "<div class=\"right-menu\">\r\n <div class=\"header\">\r\n <ng-container *ngIf=\"!isEditMode\">\r\n <span>{{ breadcrumb }}</span>\r\n <div>\r\n <button class=\"section-button\" (click)=\"handleDeleteButtonClicked()\"><i class=\"icon material-icons\">delete</i></button>\r\n <button class=\"edit-button section-button\" (click)=\"handleEditButtonClicked()\"><i class=\"icon material-icons\">edit</i></button>\r\n <button class=\"close-button section-button\" (click)=\"handleCloseButtonClicked()\"><i class=\"icon material-icons\">close</i></button>\r\n </div>\r\n </ng-container>\r\n <ng-container *ngIf=\"isEditMode\">\r\n <button class=\"edit-button section-button\" (click)=\"handleEditButtonClicked()\"><i class=\"icon material-icons\">arrow_back</i></button>\r\n <div>\r\n <button class=\"button--primary-min\" (click)=\"handleSaveChangesButtonClicked()\">Save changes</button>\r\n </div>\r\n </ng-container>\r\n \r\n </div>\r\n <div class=\"body\">\r\n <ng-content></ng-content>\r\n </div>\r\n</div>", styles: ["@import\"https://fonts.googleapis.com/icon?family=Material+Icons\";.icon{display:inline-block;width:24px;height:24px;background-size:contain;background-repeat:no-repeat}.table-button--primary{width:100%;padding:10px;background-color:#0052cc;color:#fcfcfd;border:none;border-radius:5px;font-size:16px;cursor:pointer}.table-button--primary:hover{background-color:#00438a}.table-button--primary:disabled{background-color:#ededed;cursor:not-allowed}.button--primary{width:100%;padding:10px;background-color:#0052cc;color:#fcfcfd;border:none;border-radius:5px;font-size:16px;cursor:pointer}.button--primary:hover{background-color:#00438a}.button--primary:disabled{background-color:#ededed;cursor:not-allowed}.button--minimalist{height:min-content;padding:5px;background-color:#ebebeb;color:#475467;border:none;border-radius:5px;font-size:16px;cursor:pointer}.button--minimalist:disabled{background-color:#ededed;cursor:not-allowed}.button--primary-min{height:min-content;padding:8px 20px;border:none;border-radius:4px;cursor:pointer;background:#0052cc;color:#fcfcfd}.button--primary-min:hover{background:#00438a}.button--primary-min:disabled{background-color:#ededed;cursor:not-allowed}.button--cancel{height:min-content;padding:8px 20px;border:none;border-radius:4px;cursor:pointer;color:#475467;background-color:#fff;border:1px solid #ededed}.button--cancel:disabled{background-color:#ededed;cursor:not-allowed}.button--create{height:min-content;align-self:center;padding:10px;background-color:#0052cc;color:#fcfcfd;border:none;border-radius:5px;font-size:16px;cursor:pointer}.button--create:hover{background-color:#00438a}.button--create:disabled{background-color:#ededed;cursor:not-allowed}.button--sidenav{background-color:#fff;color:#475467;padding:8px;font-weight:700;border:none;display:flex;border-radius:4px;cursor:pointer;gap:10px;margin-top:10px;width:100%;align-items:center}.button--sidenav:hover{background-color:#f2f4f7;color:#101828}.button--sidenav:disabled{background-color:#ededed;cursor:not-allowed}.button--warn{background-color:#b90000;color:#f2f4f7;padding:8px 20px;border:none;border-radius:4px;cursor:pointer;height:min-content}.button--warn:hover{background-color:red}.button--warn:disabled{background-color:#ededed;cursor:not-allowed}.button-container{display:flex;justify-content:flex-end;gap:8px}.button-container:disabled{background-color:#ededed;cursor:not-allowed}.right-menu{height:100vh;background-color:#fff;position:fixed;top:0;right:0;box-shadow:-2px 0 5px #0000001a;max-width:450px;min-width:440px}.right-menu .header{display:flex;justify-content:space-between;align-items:center;padding:10px 20px}.right-menu .header span{color:#475467}.right-menu .header .section-button{background-color:transparent;border:none;cursor:pointer;font-size:18px;color:#475467}.right-menu .header .section-button:hover{color:#101828}.right-menu .header .save-button{padding:0}.right-menu .body{padding:1.5rem}.right-menu .body table,.right-menu .body table th{border:none!important}.description-section .description-title{color:#475467}.description-section .description-body{color:#101828}\n"], dependencies: [{ kind: "ngmodule", type: CommonModule }, { kind: "directive", type: i1.NgIf, selector: "[ngIf]", inputs: ["ngIf", "ngIfThen", "ngIfElse"] }] }); }
|
|
28
|
+
static { this.ɵcmp = i0.ɵɵngDeclareComponent({ minVersion: "14.0.0", version: "17.3.12", type: KvSideMenuComponent, isStandalone: true, selector: "lib-kv-side-menu", inputs: { breadcrumb: "breadcrumb" }, outputs: { onEdit: "onEdit", onClose: "onClose", onDelete: "onDelete", onSaveChanges: "onSaveChanges" }, ngImport: i0, template: "<div class=\"right-menu\">\r\n <div class=\"header\">\r\n <ng-container *ngIf=\"!isEditMode\">\r\n <span>{{ breadcrumb }}</span>\r\n <div>\r\n <button class=\"delete-button section-button\" (click)=\"handleDeleteButtonClicked()\"><i class=\"icon material-icons\">delete</i></button>\r\n <button class=\"edit-button section-button\" (click)=\"handleEditButtonClicked()\"><i class=\"icon material-icons\">edit</i></button>\r\n <button class=\"close-button section-button\" (click)=\"handleCloseButtonClicked()\"><i class=\"icon material-icons\">close</i></button>\r\n </div>\r\n </ng-container>\r\n <ng-container *ngIf=\"isEditMode\">\r\n <button class=\"edit-button section-button\" (click)=\"handleEditButtonClicked()\"><i class=\"icon material-icons\">arrow_back</i></button>\r\n <div>\r\n <button class=\"button--primary-min\" (click)=\"handleSaveChangesButtonClicked()\">Save changes</button>\r\n </div>\r\n </ng-container>\r\n \r\n </div>\r\n <div class=\"body\">\r\n <ng-content></ng-content>\r\n </div>\r\n</div>", styles: ["@import\"https://fonts.googleapis.com/icon?family=Material+Icons\";.icon{display:inline-block;width:24px;height:24px;background-size:contain;background-repeat:no-repeat}.table-button--primary{width:100%;padding:10px;background-color:#0052cc;color:#fcfcfd;border:none;border-radius:5px;font-size:16px;cursor:pointer}.table-button--primary:hover{background-color:#00438a}.table-button--primary:disabled{background-color:#ededed;cursor:not-allowed}.button--primary{width:100%;padding:10px;background-color:#0052cc;color:#fcfcfd;border:none;border-radius:5px;font-size:16px;cursor:pointer}.button--primary:hover{background-color:#00438a}.button--primary:disabled{background-color:#ededed;cursor:not-allowed}.button--minimalist{height:min-content;padding:5px;background-color:#ebebeb;color:#475467;border:none;border-radius:5px;font-size:16px;cursor:pointer}.button--minimalist:disabled{background-color:#ededed;cursor:not-allowed}.button--primary-min{height:min-content;padding:8px 20px;border:none;border-radius:4px;cursor:pointer;background:#0052cc;color:#fcfcfd}.button--primary-min:hover{background:#00438a}.button--primary-min:disabled{background-color:#ededed;cursor:not-allowed}.button--cancel{height:min-content;padding:8px 20px;border:none;border-radius:4px;cursor:pointer;color:#475467;background-color:#fff;border:1px solid #ededed}.button--cancel:disabled{background-color:#ededed;cursor:not-allowed}.button--create{height:min-content;align-self:center;padding:10px;background-color:#0052cc;color:#fcfcfd;border:none;border-radius:5px;font-size:16px;cursor:pointer}.button--create:hover{background-color:#00438a}.button--create:disabled{background-color:#ededed;cursor:not-allowed}.button--sidenav{background-color:#fff;color:#475467;padding:8px;font-weight:700;border:none;display:flex;border-radius:4px;cursor:pointer;gap:10px;margin-top:10px;width:100%;align-items:center}.button--sidenav:hover{background-color:#f2f4f7;color:#101828}.button--sidenav:disabled{background-color:#ededed;cursor:not-allowed}.button--warn{background-color:#b90000;color:#f2f4f7;padding:8px 20px;border:none;border-radius:4px;cursor:pointer;height:min-content}.button--warn:hover{background-color:red}.button--warn:disabled{background-color:#ededed;cursor:not-allowed}.button-container{display:flex;justify-content:flex-end;gap:8px}.button-container:disabled{background-color:#ededed;cursor:not-allowed}.right-menu{height:100vh;background-color:#fff;position:fixed;top:0;right:0;box-shadow:-2px 0 5px #0000001a;max-width:450px;min-width:440px}.right-menu .header{display:flex;justify-content:space-between;align-items:center;padding:10px 20px}.right-menu .header span{color:#475467}.right-menu .header .section-button{background-color:transparent;border:none;cursor:pointer;font-size:18px;color:#475467}.right-menu .header .section-button:hover{color:#101828}.right-menu .header .save-button{padding:0}.right-menu .body{padding:1.5rem}.right-menu .body table,.right-menu .body table th{border:none!important}.description-section .description-title{color:#475467}.description-section .description-body{color:#101828}\n"], dependencies: [{ kind: "ngmodule", type: CommonModule }, { kind: "directive", type: i1.NgIf, selector: "[ngIf]", inputs: ["ngIf", "ngIfThen", "ngIfElse"] }] }); }
|
|
29
29
|
}
|
|
30
30
|
i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "17.3.12", ngImport: i0, type: KvSideMenuComponent, decorators: [{
|
|
31
31
|
type: Component,
|
|
32
|
-
args: [{ selector: 'lib-kv-side-menu', standalone: true, imports: [CommonModule], template: "<div class=\"right-menu\">\r\n <div class=\"header\">\r\n <ng-container *ngIf=\"!isEditMode\">\r\n <span>{{ breadcrumb }}</span>\r\n <div>\r\n <button class=\"section-button\" (click)=\"handleDeleteButtonClicked()\"><i class=\"icon material-icons\">delete</i></button>\r\n <button class=\"edit-button section-button\" (click)=\"handleEditButtonClicked()\"><i class=\"icon material-icons\">edit</i></button>\r\n <button class=\"close-button section-button\" (click)=\"handleCloseButtonClicked()\"><i class=\"icon material-icons\">close</i></button>\r\n </div>\r\n </ng-container>\r\n <ng-container *ngIf=\"isEditMode\">\r\n <button class=\"edit-button section-button\" (click)=\"handleEditButtonClicked()\"><i class=\"icon material-icons\">arrow_back</i></button>\r\n <div>\r\n <button class=\"button--primary-min\" (click)=\"handleSaveChangesButtonClicked()\">Save changes</button>\r\n </div>\r\n </ng-container>\r\n \r\n </div>\r\n <div class=\"body\">\r\n <ng-content></ng-content>\r\n </div>\r\n</div>", styles: ["@import\"https://fonts.googleapis.com/icon?family=Material+Icons\";.icon{display:inline-block;width:24px;height:24px;background-size:contain;background-repeat:no-repeat}.table-button--primary{width:100%;padding:10px;background-color:#0052cc;color:#fcfcfd;border:none;border-radius:5px;font-size:16px;cursor:pointer}.table-button--primary:hover{background-color:#00438a}.table-button--primary:disabled{background-color:#ededed;cursor:not-allowed}.button--primary{width:100%;padding:10px;background-color:#0052cc;color:#fcfcfd;border:none;border-radius:5px;font-size:16px;cursor:pointer}.button--primary:hover{background-color:#00438a}.button--primary:disabled{background-color:#ededed;cursor:not-allowed}.button--minimalist{height:min-content;padding:5px;background-color:#ebebeb;color:#475467;border:none;border-radius:5px;font-size:16px;cursor:pointer}.button--minimalist:disabled{background-color:#ededed;cursor:not-allowed}.button--primary-min{height:min-content;padding:8px 20px;border:none;border-radius:4px;cursor:pointer;background:#0052cc;color:#fcfcfd}.button--primary-min:hover{background:#00438a}.button--primary-min:disabled{background-color:#ededed;cursor:not-allowed}.button--cancel{height:min-content;padding:8px 20px;border:none;border-radius:4px;cursor:pointer;color:#475467;background-color:#fff;border:1px solid #ededed}.button--cancel:disabled{background-color:#ededed;cursor:not-allowed}.button--create{height:min-content;align-self:center;padding:10px;background-color:#0052cc;color:#fcfcfd;border:none;border-radius:5px;font-size:16px;cursor:pointer}.button--create:hover{background-color:#00438a}.button--create:disabled{background-color:#ededed;cursor:not-allowed}.button--sidenav{background-color:#fff;color:#475467;padding:8px;font-weight:700;border:none;display:flex;border-radius:4px;cursor:pointer;gap:10px;margin-top:10px;width:100%;align-items:center}.button--sidenav:hover{background-color:#f2f4f7;color:#101828}.button--sidenav:disabled{background-color:#ededed;cursor:not-allowed}.button--warn{background-color:#b90000;color:#f2f4f7;padding:8px 20px;border:none;border-radius:4px;cursor:pointer;height:min-content}.button--warn:hover{background-color:red}.button--warn:disabled{background-color:#ededed;cursor:not-allowed}.button-container{display:flex;justify-content:flex-end;gap:8px}.button-container:disabled{background-color:#ededed;cursor:not-allowed}.right-menu{height:100vh;background-color:#fff;position:fixed;top:0;right:0;box-shadow:-2px 0 5px #0000001a;max-width:450px;min-width:440px}.right-menu .header{display:flex;justify-content:space-between;align-items:center;padding:10px 20px}.right-menu .header span{color:#475467}.right-menu .header .section-button{background-color:transparent;border:none;cursor:pointer;font-size:18px;color:#475467}.right-menu .header .section-button:hover{color:#101828}.right-menu .header .save-button{padding:0}.right-menu .body{padding:1.5rem}.right-menu .body table,.right-menu .body table th{border:none!important}.description-section .description-title{color:#475467}.description-section .description-body{color:#101828}\n"] }]
|
|
32
|
+
args: [{ selector: 'lib-kv-side-menu', standalone: true, imports: [CommonModule], template: "<div class=\"right-menu\">\r\n <div class=\"header\">\r\n <ng-container *ngIf=\"!isEditMode\">\r\n <span>{{ breadcrumb }}</span>\r\n <div>\r\n <button class=\"delete-button section-button\" (click)=\"handleDeleteButtonClicked()\"><i class=\"icon material-icons\">delete</i></button>\r\n <button class=\"edit-button section-button\" (click)=\"handleEditButtonClicked()\"><i class=\"icon material-icons\">edit</i></button>\r\n <button class=\"close-button section-button\" (click)=\"handleCloseButtonClicked()\"><i class=\"icon material-icons\">close</i></button>\r\n </div>\r\n </ng-container>\r\n <ng-container *ngIf=\"isEditMode\">\r\n <button class=\"edit-button section-button\" (click)=\"handleEditButtonClicked()\"><i class=\"icon material-icons\">arrow_back</i></button>\r\n <div>\r\n <button class=\"button--primary-min\" (click)=\"handleSaveChangesButtonClicked()\">Save changes</button>\r\n </div>\r\n </ng-container>\r\n \r\n </div>\r\n <div class=\"body\">\r\n <ng-content></ng-content>\r\n </div>\r\n</div>", styles: ["@import\"https://fonts.googleapis.com/icon?family=Material+Icons\";.icon{display:inline-block;width:24px;height:24px;background-size:contain;background-repeat:no-repeat}.table-button--primary{width:100%;padding:10px;background-color:#0052cc;color:#fcfcfd;border:none;border-radius:5px;font-size:16px;cursor:pointer}.table-button--primary:hover{background-color:#00438a}.table-button--primary:disabled{background-color:#ededed;cursor:not-allowed}.button--primary{width:100%;padding:10px;background-color:#0052cc;color:#fcfcfd;border:none;border-radius:5px;font-size:16px;cursor:pointer}.button--primary:hover{background-color:#00438a}.button--primary:disabled{background-color:#ededed;cursor:not-allowed}.button--minimalist{height:min-content;padding:5px;background-color:#ebebeb;color:#475467;border:none;border-radius:5px;font-size:16px;cursor:pointer}.button--minimalist:disabled{background-color:#ededed;cursor:not-allowed}.button--primary-min{height:min-content;padding:8px 20px;border:none;border-radius:4px;cursor:pointer;background:#0052cc;color:#fcfcfd}.button--primary-min:hover{background:#00438a}.button--primary-min:disabled{background-color:#ededed;cursor:not-allowed}.button--cancel{height:min-content;padding:8px 20px;border:none;border-radius:4px;cursor:pointer;color:#475467;background-color:#fff;border:1px solid #ededed}.button--cancel:disabled{background-color:#ededed;cursor:not-allowed}.button--create{height:min-content;align-self:center;padding:10px;background-color:#0052cc;color:#fcfcfd;border:none;border-radius:5px;font-size:16px;cursor:pointer}.button--create:hover{background-color:#00438a}.button--create:disabled{background-color:#ededed;cursor:not-allowed}.button--sidenav{background-color:#fff;color:#475467;padding:8px;font-weight:700;border:none;display:flex;border-radius:4px;cursor:pointer;gap:10px;margin-top:10px;width:100%;align-items:center}.button--sidenav:hover{background-color:#f2f4f7;color:#101828}.button--sidenav:disabled{background-color:#ededed;cursor:not-allowed}.button--warn{background-color:#b90000;color:#f2f4f7;padding:8px 20px;border:none;border-radius:4px;cursor:pointer;height:min-content}.button--warn:hover{background-color:red}.button--warn:disabled{background-color:#ededed;cursor:not-allowed}.button-container{display:flex;justify-content:flex-end;gap:8px}.button-container:disabled{background-color:#ededed;cursor:not-allowed}.right-menu{height:100vh;background-color:#fff;position:fixed;top:0;right:0;box-shadow:-2px 0 5px #0000001a;max-width:450px;min-width:440px}.right-menu .header{display:flex;justify-content:space-between;align-items:center;padding:10px 20px}.right-menu .header span{color:#475467}.right-menu .header .section-button{background-color:transparent;border:none;cursor:pointer;font-size:18px;color:#475467}.right-menu .header .section-button:hover{color:#101828}.right-menu .header .save-button{padding:0}.right-menu .body{padding:1.5rem}.right-menu .body table,.right-menu .body table th{border:none!important}.description-section .description-title{color:#475467}.description-section .description-body{color:#101828}\n"] }]
|
|
33
33
|
}], propDecorators: { breadcrumb: [{
|
|
34
34
|
type: Input
|
|
35
35
|
}], onEdit: [{
|
|
@@ -41,4 +41,4 @@ i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "17.3.12", ngImpo
|
|
|
41
41
|
}], onSaveChanges: [{
|
|
42
42
|
type: Output
|
|
43
43
|
}] } });
|
|
44
|
-
//# sourceMappingURL=data:application/json;base64,
|
|
44
|
+
//# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoia3Ytc2lkZS1tZW51LmNvbXBvbmVudC5qcyIsInNvdXJjZVJvb3QiOiIiLCJzb3VyY2VzIjpbIi4uLy4uLy4uLy4uLy4uLy4uL3Byb2plY3RzL2tpdmlvL3NyYy9saWIvY29tcG9uZW50cy9rdi1zaWRlLW1lbnUva3Ytc2lkZS1tZW51LmNvbXBvbmVudC50cyIsIi4uLy4uLy4uLy4uLy4uLy4uL3Byb2plY3RzL2tpdmlvL3NyYy9saWIvY29tcG9uZW50cy9rdi1zaWRlLW1lbnUva3Ytc2lkZS1tZW51LmNvbXBvbmVudC5odG1sIl0sIm5hbWVzIjpbXSwibWFwcGluZ3MiOiJBQUFBLE9BQU8sRUFBRSxZQUFZLEVBQUUsTUFBTSxpQkFBaUIsQ0FBQztBQUMvQyxPQUFPLEVBQUUsU0FBUyxFQUFFLFlBQVksRUFBRSxLQUFLLEVBQUUsTUFBTSxFQUFFLE1BQU0sZUFBZSxDQUFDOzs7QUFTdkUsTUFBTSxPQUFPLG1CQUFtQjtJQVBoQztRQVFXLGVBQVUsR0FBVyxFQUFFLENBQUM7UUFDdkIsV0FBTSxHQUEwQixJQUFJLFlBQVksRUFBVyxDQUFDO1FBQzVELFlBQU8sR0FBdUIsSUFBSSxZQUFZLEVBQVEsQ0FBQztRQUN2RCxhQUFRLEdBQXVCLElBQUksWUFBWSxFQUFRLENBQUM7UUFDeEQsa0JBQWEsR0FBdUIsSUFBSSxZQUFZLEVBQVEsQ0FBQztRQUVoRSxlQUFVLEdBQVksS0FBSyxDQUFDO0tBa0JwQztJQWhCUSx1QkFBdUI7UUFDNUIsSUFBSSxDQUFDLFVBQVUsR0FBRyxDQUFDLElBQUksQ0FBQyxVQUFVLENBQUM7UUFDbkMsSUFBSSxDQUFDLE1BQU0sQ0FBQyxJQUFJLENBQUMsSUFBSSxDQUFDLFVBQVUsQ0FBQyxDQUFDO0lBQ3BDLENBQUM7SUFFTSx3QkFBd0I7UUFDN0IsSUFBSSxDQUFDLE9BQU8sQ0FBQyxJQUFJLEVBQUUsQ0FBQztJQUN0QixDQUFDO0lBRU0seUJBQXlCO1FBQzlCLElBQUksQ0FBQyxRQUFRLENBQUMsSUFBSSxFQUFFLENBQUM7SUFDdkIsQ0FBQztJQUVNLDhCQUE4QjtRQUNuQyxJQUFJLENBQUMsYUFBYSxDQUFDLElBQUksRUFBRSxDQUFDO0lBQzVCLENBQUM7K0dBeEJVLG1CQUFtQjttR0FBbkIsbUJBQW1CLDJOQ1ZoQyxnckNBcUJNLDJsR0RmTSxZQUFZOzs0RkFJWCxtQkFBbUI7a0JBUC9CLFNBQVM7K0JBQ0Usa0JBQWtCLGNBQ2hCLElBQUksV0FDUCxDQUFDLFlBQVksQ0FBQzs4QkFLZCxVQUFVO3NCQUFsQixLQUFLO2dCQUNJLE1BQU07c0JBQWYsTUFBTTtnQkFDRyxPQUFPO3NCQUFoQixNQUFNO2dCQUNHLFFBQVE7c0JBQWpCLE1BQU07Z0JBQ0csYUFBYTtzQkFBdEIsTUFBTSIsInNvdXJjZXNDb250ZW50IjpbImltcG9ydCB7IENvbW1vbk1vZHVsZSB9IGZyb20gJ0Bhbmd1bGFyL2NvbW1vbic7XHJcbmltcG9ydCB7IENvbXBvbmVudCwgRXZlbnRFbWl0dGVyLCBJbnB1dCwgT3V0cHV0IH0gZnJvbSAnQGFuZ3VsYXIvY29yZSc7XHJcblxyXG5AQ29tcG9uZW50KHtcclxuICBzZWxlY3RvcjogJ2xpYi1rdi1zaWRlLW1lbnUnLFxyXG4gIHN0YW5kYWxvbmU6IHRydWUsXHJcbiAgaW1wb3J0czogW0NvbW1vbk1vZHVsZV0sXHJcbiAgdGVtcGxhdGVVcmw6ICcuL2t2LXNpZGUtbWVudS5jb21wb25lbnQuaHRtbCcsXHJcbiAgc3R5bGVVcmw6ICcuL2t2LXNpZGUtbWVudS5jb21wb25lbnQuc2NzcydcclxufSlcclxuZXhwb3J0IGNsYXNzIEt2U2lkZU1lbnVDb21wb25lbnQge1xyXG4gIEBJbnB1dCgpIGJyZWFkY3J1bWI6IHN0cmluZyA9ICcnO1xyXG4gIEBPdXRwdXQoKSBvbkVkaXQ6IEV2ZW50RW1pdHRlcjxib29sZWFuPiA9IG5ldyBFdmVudEVtaXR0ZXI8Ym9vbGVhbj4oKTtcclxuICBAT3V0cHV0KCkgb25DbG9zZTogRXZlbnRFbWl0dGVyPHZvaWQ+ID0gbmV3IEV2ZW50RW1pdHRlcjx2b2lkPigpO1xyXG4gIEBPdXRwdXQoKSBvbkRlbGV0ZTogRXZlbnRFbWl0dGVyPHZvaWQ+ID0gbmV3IEV2ZW50RW1pdHRlcjx2b2lkPigpO1xyXG4gIEBPdXRwdXQoKSBvblNhdmVDaGFuZ2VzOiBFdmVudEVtaXR0ZXI8dm9pZD4gPSBuZXcgRXZlbnRFbWl0dGVyPHZvaWQ+KCk7XHJcblxyXG4gIHB1YmxpYyBpc0VkaXRNb2RlOiBib29sZWFuID0gZmFsc2U7XHJcblxyXG4gIHB1YmxpYyBoYW5kbGVFZGl0QnV0dG9uQ2xpY2tlZCgpOiB2b2lkIHtcclxuICAgIHRoaXMuaXNFZGl0TW9kZSA9ICF0aGlzLmlzRWRpdE1vZGU7XHJcbiAgICB0aGlzLm9uRWRpdC5lbWl0KHRoaXMuaXNFZGl0TW9kZSk7XHJcbiAgfVxyXG5cclxuICBwdWJsaWMgaGFuZGxlQ2xvc2VCdXR0b25DbGlja2VkKCk6IHZvaWQge1xyXG4gICAgdGhpcy5vbkNsb3NlLmVtaXQoKTtcclxuICB9XHJcblxyXG4gIHB1YmxpYyBoYW5kbGVEZWxldGVCdXR0b25DbGlja2VkKCk6IHZvaWQge1xyXG4gICAgdGhpcy5vbkRlbGV0ZS5lbWl0KCk7XHJcbiAgfVxyXG5cclxuICBwdWJsaWMgaGFuZGxlU2F2ZUNoYW5nZXNCdXR0b25DbGlja2VkKCk6IHZvaWQge1xyXG4gICAgdGhpcy5vblNhdmVDaGFuZ2VzLmVtaXQoKTtcclxuICB9XHJcbn1cclxuIiwiPGRpdiBjbGFzcz1cInJpZ2h0LW1lbnVcIj5cclxuICAgIDxkaXYgY2xhc3M9XCJoZWFkZXJcIj5cclxuICAgICAgICA8bmctY29udGFpbmVyICpuZ0lmPVwiIWlzRWRpdE1vZGVcIj5cclxuICAgICAgICAgICAgPHNwYW4+e3sgYnJlYWRjcnVtYiB9fTwvc3Bhbj5cclxuICAgICAgICAgICAgPGRpdj5cclxuICAgICAgICAgICAgICAgIDxidXR0b24gY2xhc3M9XCJkZWxldGUtYnV0dG9uIHNlY3Rpb24tYnV0dG9uXCIgKGNsaWNrKT1cImhhbmRsZURlbGV0ZUJ1dHRvbkNsaWNrZWQoKVwiPjxpIGNsYXNzPVwiaWNvbiBtYXRlcmlhbC1pY29uc1wiPmRlbGV0ZTwvaT48L2J1dHRvbj5cclxuICAgICAgICAgICAgICAgIDxidXR0b24gY2xhc3M9XCJlZGl0LWJ1dHRvbiBzZWN0aW9uLWJ1dHRvblwiIChjbGljayk9XCJoYW5kbGVFZGl0QnV0dG9uQ2xpY2tlZCgpXCI+PGkgY2xhc3M9XCJpY29uIG1hdGVyaWFsLWljb25zXCI+ZWRpdDwvaT48L2J1dHRvbj5cclxuICAgICAgICAgICAgICAgIDxidXR0b24gY2xhc3M9XCJjbG9zZS1idXR0b24gc2VjdGlvbi1idXR0b25cIiAoY2xpY2spPVwiaGFuZGxlQ2xvc2VCdXR0b25DbGlja2VkKClcIj48aSBjbGFzcz1cImljb24gbWF0ZXJpYWwtaWNvbnNcIj5jbG9zZTwvaT48L2J1dHRvbj5cclxuICAgICAgICAgICAgPC9kaXY+XHJcbiAgICAgICAgPC9uZy1jb250YWluZXI+XHJcbiAgICAgICAgPG5nLWNvbnRhaW5lciAqbmdJZj1cImlzRWRpdE1vZGVcIj5cclxuICAgICAgICAgICAgPGJ1dHRvbiBjbGFzcz1cImVkaXQtYnV0dG9uIHNlY3Rpb24tYnV0dG9uXCIgKGNsaWNrKT1cImhhbmRsZUVkaXRCdXR0b25DbGlja2VkKClcIj48aSBjbGFzcz1cImljb24gbWF0ZXJpYWwtaWNvbnNcIj5hcnJvd19iYWNrPC9pPjwvYnV0dG9uPlxyXG4gICAgICAgICAgICA8ZGl2PlxyXG4gICAgICAgICAgICAgICAgPGJ1dHRvbiBjbGFzcz1cImJ1dHRvbi0tcHJpbWFyeS1taW5cIiAoY2xpY2spPVwiaGFuZGxlU2F2ZUNoYW5nZXNCdXR0b25DbGlja2VkKClcIj5TYXZlIGNoYW5nZXM8L2J1dHRvbj5cclxuICAgICAgICAgICAgPC9kaXY+XHJcbiAgICAgICAgPC9uZy1jb250YWluZXI+XHJcbiAgICAgICAgXHJcbiAgICA8L2Rpdj5cclxuICAgIDxkaXYgY2xhc3M9XCJib2R5XCI+XHJcbiAgICAgICAgPG5nLWNvbnRlbnQ+PC9uZy1jb250ZW50PlxyXG4gICAgPC9kaXY+XHJcbjwvZGl2PiJdfQ==
|
|
@@ -0,0 +1,3 @@
|
|
|
1
|
+
import { InjectionToken } from '@angular/core';
|
|
2
|
+
export const API_KEY = new InjectionToken('API_KEY');
|
|
3
|
+
//# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoiYXV0aC1jb25maWcuanMiLCJzb3VyY2VSb290IjoiIiwic291cmNlcyI6WyIuLi8uLi8uLi8uLi8uLi9wcm9qZWN0cy9raXZpby9zcmMvbGliL2luamVjdGlvbi10b2tlbnMvYXV0aC1jb25maWcudHMiXSwibmFtZXMiOltdLCJtYXBwaW5ncyI6IkFBQUEsT0FBTyxFQUFFLGNBQWMsRUFBRSxNQUFNLGVBQWUsQ0FBQztBQUUvQyxNQUFNLENBQUMsTUFBTSxPQUFPLEdBQUcsSUFBSSxjQUFjLENBQVMsU0FBUyxDQUFDLENBQUMiLCJzb3VyY2VzQ29udGVudCI6WyJpbXBvcnQgeyBJbmplY3Rpb25Ub2tlbiB9IGZyb20gJ0Bhbmd1bGFyL2NvcmUnO1xyXG5cclxuZXhwb3J0IGNvbnN0IEFQSV9LRVkgPSBuZXcgSW5qZWN0aW9uVG9rZW48c3RyaW5nPignQVBJX0tFWScpOyJdfQ==
|
|
@@ -1,12 +1,16 @@
|
|
|
1
1
|
import { inject, Injectable } from '@angular/core';
|
|
2
2
|
import { CookieService } from "ngx-cookie-service";
|
|
3
|
+
import { API_KEY } from '../injection-tokens/auth-config';
|
|
3
4
|
import * as i0 from "@angular/core";
|
|
4
5
|
export class AuthInterceptor {
|
|
5
6
|
intercept(request, next) {
|
|
6
7
|
const cookieService = inject(CookieService);
|
|
8
|
+
const apiKey = inject(API_KEY);
|
|
7
9
|
const token = cookieService.get('jwt');
|
|
8
10
|
const modifiedReq = request.clone({
|
|
9
|
-
headers: request.headers
|
|
11
|
+
headers: request.headers
|
|
12
|
+
.set('Access_token', token)
|
|
13
|
+
.set('Api_Key', apiKey)
|
|
10
14
|
});
|
|
11
15
|
return next.handle(modifiedReq);
|
|
12
16
|
}
|
|
@@ -16,4 +20,4 @@ export class AuthInterceptor {
|
|
|
16
20
|
i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "17.3.12", ngImport: i0, type: AuthInterceptor, decorators: [{
|
|
17
21
|
type: Injectable
|
|
18
22
|
}] });
|
|
19
|
-
//# sourceMappingURL=data:application/json;base64,
|
|
23
|
+
//# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoiYXV0aC1pbnRlcmNlcHRvci5zZXJ2aWNlLmpzIiwic291cmNlUm9vdCI6IiIsInNvdXJjZXMiOlsiLi4vLi4vLi4vLi4vLi4vcHJvamVjdHMva2l2aW8vc3JjL2xpYi9zZXJ2aWNlcy9hdXRoLWludGVyY2VwdG9yLnNlcnZpY2UudHMiXSwibmFtZXMiOltdLCJtYXBwaW5ncyI6IkFBQUEsT0FBTyxFQUFFLE1BQU0sRUFBRSxVQUFVLEVBQUUsTUFBTSxlQUFlLENBQUM7QUFRbkQsT0FBTyxFQUFFLGFBQWEsRUFBRSxNQUFNLG9CQUFvQixDQUFDO0FBQ25ELE9BQU8sRUFBRSxPQUFPLEVBQUUsTUFBTSxpQ0FBaUMsQ0FBQzs7QUFHMUQsTUFBTSxPQUFPLGVBQWU7SUFDeEIsU0FBUyxDQUNMLE9BQTZCLEVBQzdCLElBQWlCO1FBRWpCLE1BQU0sYUFBYSxHQUFHLE1BQU0sQ0FBQyxhQUFhLENBQUMsQ0FBQztRQUM1QyxNQUFNLE1BQU0sR0FBRyxNQUFNLENBQUMsT0FBTyxDQUFDLENBQUM7UUFDL0IsTUFBTSxLQUFLLEdBQUcsYUFBYSxDQUFDLEdBQUcsQ0FBQyxLQUFLLENBQUMsQ0FBQztRQUN2QyxNQUFNLFdBQVcsR0FBRyxPQUFPLENBQUMsS0FBSyxDQUFDO1lBQzlCLE9BQU8sRUFBRSxPQUFPLENBQUMsT0FBTztpQkFDbkIsR0FBRyxDQUFDLGNBQWMsRUFBRSxLQUFLLENBQUM7aUJBQzFCLEdBQUcsQ0FBQyxTQUFTLEVBQUUsTUFBTSxDQUFDO1NBQzlCLENBQUMsQ0FBQztRQUNILE9BQU8sSUFBSSxDQUFDLE1BQU0sQ0FBQyxXQUFXLENBQUMsQ0FBQztJQUNwQyxDQUFDOytHQWRRLGVBQWU7bUhBQWYsZUFBZTs7NEZBQWYsZUFBZTtrQkFEM0IsVUFBVSIsInNvdXJjZXNDb250ZW50IjpbImltcG9ydCB7IGluamVjdCwgSW5qZWN0YWJsZSB9IGZyb20gJ0Bhbmd1bGFyL2NvcmUnO1xyXG5pbXBvcnQge1xyXG4gICAgSHR0cFJlcXVlc3QsXHJcbiAgICBIdHRwSGFuZGxlcixcclxuICAgIEh0dHBFdmVudCxcclxuICAgIEh0dHBJbnRlcmNlcHRvclxyXG59IGZyb20gJ0Bhbmd1bGFyL2NvbW1vbi9odHRwJztcclxuaW1wb3J0IHsgT2JzZXJ2YWJsZSB9IGZyb20gJ3J4anMnO1xyXG5pbXBvcnQgeyBDb29raWVTZXJ2aWNlIH0gZnJvbSBcIm5neC1jb29raWUtc2VydmljZVwiO1xyXG5pbXBvcnQgeyBBUElfS0VZIH0gZnJvbSAnLi4vaW5qZWN0aW9uLXRva2Vucy9hdXRoLWNvbmZpZyc7XHJcblxyXG5ASW5qZWN0YWJsZSgpXHJcbmV4cG9ydCBjbGFzcyBBdXRoSW50ZXJjZXB0b3IgaW1wbGVtZW50cyBIdHRwSW50ZXJjZXB0b3Ige1xyXG4gICAgaW50ZXJjZXB0KFxyXG4gICAgICAgIHJlcXVlc3Q6IEh0dHBSZXF1ZXN0PHVua25vd24+LFxyXG4gICAgICAgIG5leHQ6IEh0dHBIYW5kbGVyXHJcbiAgICApOiBPYnNlcnZhYmxlPEh0dHBFdmVudDx1bmtub3duPj4ge1xyXG4gICAgICAgIGNvbnN0IGNvb2tpZVNlcnZpY2UgPSBpbmplY3QoQ29va2llU2VydmljZSk7XHJcbiAgICAgICAgY29uc3QgYXBpS2V5ID0gaW5qZWN0KEFQSV9LRVkpO1xyXG4gICAgICAgIGNvbnN0IHRva2VuID0gY29va2llU2VydmljZS5nZXQoJ2p3dCcpO1xyXG4gICAgICAgIGNvbnN0IG1vZGlmaWVkUmVxID0gcmVxdWVzdC5jbG9uZSh7XHJcbiAgICAgICAgICAgIGhlYWRlcnM6IHJlcXVlc3QuaGVhZGVyc1xyXG4gICAgICAgICAgICAgICAgLnNldCgnQWNjZXNzX3Rva2VuJywgdG9rZW4pXHJcbiAgICAgICAgICAgICAgICAuc2V0KCdBcGlfS2V5JywgYXBpS2V5KSBcclxuICAgICAgICB9KTtcclxuICAgICAgICByZXR1cm4gbmV4dC5oYW5kbGUobW9kaWZpZWRSZXEpO1xyXG4gICAgfVxyXG59XHJcbiJdfQ==
|
|
@@ -1,67 +1,97 @@
|
|
|
1
1
|
import { Injectable } from "@angular/core";
|
|
2
|
-
import {
|
|
3
|
-
import {
|
|
2
|
+
import { BehaviorSubject, firstValueFrom } from "rxjs";
|
|
3
|
+
import { HttpHeaders } from '@angular/common/http';
|
|
4
4
|
import * as i0 from "@angular/core";
|
|
5
5
|
import * as i1 from "ngx-cookie-service";
|
|
6
|
+
import * as i2 from "@angular/common/http";
|
|
6
7
|
export class AuthService {
|
|
7
|
-
constructor(cookieService) {
|
|
8
|
+
constructor(cookieService, http) {
|
|
8
9
|
this.cookieService = cookieService;
|
|
9
|
-
this.
|
|
10
|
-
this.supabaseKey = 'eyJhbGciOiJIUzI1NiIsInR5cCI6IkpXVCJ9.eyJpc3MiOiJzdXBhYmFzZSIsInJlZiI6ImR6b3hsbXhvdGV4amdseXdqb2hvIiwicm9sZSI6ImFub24iLCJpYXQiOjE3MzM4MzM5MDYsImV4cCI6MjA0OTQwOTkwNn0.7uTbQYpmjVkM0fZhmj-v5UnjN6IP-u0jmLd5Z4p5D1s';
|
|
10
|
+
this.http = http;
|
|
11
11
|
this.sessionSubject = new BehaviorSubject(null);
|
|
12
|
-
this.
|
|
13
|
-
this.
|
|
14
|
-
|
|
15
|
-
|
|
16
|
-
|
|
17
|
-
|
|
18
|
-
|
|
19
|
-
|
|
20
|
-
}
|
|
12
|
+
this.apiUrl = 'http://localhost:9090/v1';
|
|
13
|
+
this.apiKey = '';
|
|
14
|
+
this.getSession().catch(() => null);
|
|
15
|
+
}
|
|
16
|
+
getHeaders() {
|
|
17
|
+
return new HttpHeaders({
|
|
18
|
+
'Content-Type': 'application/json',
|
|
19
|
+
'Api_Key': this.apiKey
|
|
21
20
|
});
|
|
22
21
|
}
|
|
22
|
+
configureApi(apiUrl, apiKey) {
|
|
23
|
+
if (apiUrl)
|
|
24
|
+
this.apiUrl = apiUrl;
|
|
25
|
+
if (apiKey)
|
|
26
|
+
this.apiKey = apiKey;
|
|
27
|
+
}
|
|
28
|
+
getCurrentSession() {
|
|
29
|
+
return this.sessionSubject.getValue();
|
|
30
|
+
}
|
|
23
31
|
signIn(email, password) {
|
|
24
|
-
return this.
|
|
32
|
+
return firstValueFrom(this.http.post(`${this.apiUrl}/supabase-auth`, { email, password }, { headers: this.getHeaders() })).then((response) => {
|
|
33
|
+
if (response) {
|
|
34
|
+
this.sessionSubject.next(response);
|
|
35
|
+
localStorage.setItem('refresh_token', response.refresh_token || '');
|
|
36
|
+
if (this.isValidLoginResponse(response)) {
|
|
37
|
+
this.handleSuccessfulRefresh(response);
|
|
38
|
+
this.startRefreshTimer(response);
|
|
39
|
+
}
|
|
40
|
+
}
|
|
41
|
+
return response;
|
|
42
|
+
});
|
|
25
43
|
}
|
|
26
44
|
signOut() {
|
|
27
|
-
return this.supabase.
|
|
28
|
-
if (error) {
|
|
29
|
-
throw error;
|
|
30
|
-
}
|
|
45
|
+
return firstValueFrom(this.http.post(`${this.apiUrl}/supabase-signout`, {}, { headers: this.getHeaders() })).then((response) => {
|
|
31
46
|
this.sessionSubject.next(null);
|
|
32
47
|
this.cookieService.deleteAll();
|
|
33
48
|
localStorage.removeItem('refresh_token');
|
|
49
|
+
return response;
|
|
50
|
+
}).catch(error => {
|
|
51
|
+
console.error('Error signing out:', error);
|
|
52
|
+
this.sessionSubject.next(null);
|
|
53
|
+
this.cookieService.deleteAll();
|
|
54
|
+
localStorage.removeItem('refresh_token');
|
|
55
|
+
throw error;
|
|
34
56
|
});
|
|
35
57
|
}
|
|
36
58
|
sendResetPasswordEmail(email) {
|
|
37
|
-
return this.supabase.
|
|
38
|
-
}
|
|
39
|
-
setSupabaseSession(accessToken, refreshToken) {
|
|
40
|
-
return this.supabase.auth.setSession({ access_token: accessToken, refresh_token: refreshToken });
|
|
59
|
+
return firstValueFrom(this.http.post(`${this.apiUrl}/supabase-reset-password`, { email }, { headers: this.getHeaders() }));
|
|
41
60
|
}
|
|
42
61
|
setNewPassword(newPassword) {
|
|
43
|
-
return this.
|
|
62
|
+
return firstValueFrom(this.http.post(`${this.apiUrl}/supabase-set-password`, { password: newPassword }, { headers: this.getHeaders() }));
|
|
44
63
|
}
|
|
45
64
|
getSession() {
|
|
46
|
-
|
|
65
|
+
const refreshToken = localStorage.getItem('refresh_token');
|
|
66
|
+
if (!refreshToken) {
|
|
67
|
+
return Promise.resolve({ data: { session: null } });
|
|
68
|
+
}
|
|
69
|
+
return firstValueFrom(this.http.post(`${this.apiUrl}/supabase-session`, { refresh_token: refreshToken }, { headers: this.getHeaders() })).then((response) => {
|
|
70
|
+
if (response?.data?.session) {
|
|
71
|
+
this.sessionSubject.next(response.data.session);
|
|
72
|
+
if (this.isValidLoginResponse(response.data)) {
|
|
73
|
+
this.handleSuccessfulRefresh(response.data);
|
|
74
|
+
this.startRefreshTimer(response.data.session);
|
|
75
|
+
}
|
|
76
|
+
}
|
|
77
|
+
return response;
|
|
78
|
+
});
|
|
47
79
|
}
|
|
48
80
|
refreshSession() {
|
|
49
|
-
|
|
50
|
-
|
|
51
|
-
|
|
52
|
-
|
|
53
|
-
|
|
54
|
-
if (data
|
|
55
|
-
this.sessionSubject.next(data.session);
|
|
56
|
-
localStorage.setItem('refresh_token', data.session.refresh_token || '');
|
|
57
|
-
if (this.isValidLoginResponse(data)) {
|
|
58
|
-
this.handleSuccessfulRefresh(data);
|
|
59
|
-
this.
|
|
60
|
-
this.startRefreshTimer(session);
|
|
61
|
-
});
|
|
81
|
+
const refreshToken = localStorage.getItem('refresh_token');
|
|
82
|
+
if (!refreshToken) {
|
|
83
|
+
return Promise.resolve({ data: { session: null } });
|
|
84
|
+
}
|
|
85
|
+
return firstValueFrom(this.http.post(`${this.apiUrl}/supabase-refresh`, { refresh_token: refreshToken }, { headers: this.getHeaders() })).then((response) => {
|
|
86
|
+
if (response?.data?.session) {
|
|
87
|
+
this.sessionSubject.next(response.data.session);
|
|
88
|
+
localStorage.setItem('refresh_token', response.data.session.refresh_token || '');
|
|
89
|
+
if (this.isValidLoginResponse(response.data)) {
|
|
90
|
+
this.handleSuccessfulRefresh(response.data);
|
|
91
|
+
this.startRefreshTimer(response.data.session);
|
|
62
92
|
}
|
|
63
93
|
}
|
|
64
|
-
return
|
|
94
|
+
return response;
|
|
65
95
|
});
|
|
66
96
|
}
|
|
67
97
|
startRefreshTimer(session) {
|
|
@@ -70,16 +100,19 @@ export class AuthService {
|
|
|
70
100
|
this.refreshSession().catch(console.error);
|
|
71
101
|
}, (expiresIn - 60) * 1000);
|
|
72
102
|
}
|
|
103
|
+
getSessionObservable() {
|
|
104
|
+
return this.sessionSubject.asObservable();
|
|
105
|
+
}
|
|
73
106
|
isValidLoginResponse(data) {
|
|
74
|
-
return !!(data?.
|
|
107
|
+
return !!(data?.access_token &&
|
|
75
108
|
data?.user?.app_metadata?.role);
|
|
76
109
|
}
|
|
77
110
|
handleSuccessfulRefresh(data) {
|
|
78
|
-
const token = data.
|
|
111
|
+
const token = data.access_token;
|
|
79
112
|
this.cookieService.delete('jwt');
|
|
80
113
|
this.cookieService.set('jwt', token);
|
|
81
114
|
}
|
|
82
|
-
static { this.ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "17.3.12", ngImport: i0, type: AuthService, deps: [{ token: i1.CookieService }], target: i0.ɵɵFactoryTarget.Injectable }); }
|
|
115
|
+
static { this.ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "17.3.12", ngImport: i0, type: AuthService, deps: [{ token: i1.CookieService }, { token: i2.HttpClient }], target: i0.ɵɵFactoryTarget.Injectable }); }
|
|
83
116
|
static { this.ɵprov = i0.ɵɵngDeclareInjectable({ minVersion: "12.0.0", version: "17.3.12", ngImport: i0, type: AuthService, providedIn: 'root' }); }
|
|
84
117
|
}
|
|
85
118
|
i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "17.3.12", ngImport: i0, type: AuthService, decorators: [{
|
|
@@ -87,5 +120,5 @@ i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "17.3.12", ngImpo
|
|
|
87
120
|
args: [{
|
|
88
121
|
providedIn: 'root'
|
|
89
122
|
}]
|
|
90
|
-
}], ctorParameters: () => [{ type: i1.CookieService }] });
|
|
91
|
-
//# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoiYXV0aC5zZXJ2aWNlLmpzIiwic291cmNlUm9vdCI6IiIsInNvdXJjZXMiOlsiLi4vLi4vLi4vLi4vLi4vcHJvamVjdHMva2l2aW8vc3JjL2xpYi9zZXJ2aWNlcy9hdXRoLnNlcnZpY2UudHMiXSwibmFtZXMiOltdLCJtYXBwaW5ncyI6IkFBQUEsT0FBTyxFQUFFLFVBQVUsRUFBRSxNQUFNLGVBQWUsQ0FBQztBQUMzQyxPQUFPLEVBQUUsWUFBWSxFQUEyQixNQUFNLHVCQUF1QixDQUFDO0FBRTlFLE9BQU8sRUFBRSxlQUFlLEVBQUUsTUFBTSxNQUFNLENBQUM7OztBQUt2QyxNQUFNLE9BQU8sV0FBVztJQVF0QixZQUE2QixhQUE0QjtRQUE1QixrQkFBYSxHQUFiLGFBQWEsQ0FBZTtRQU5qRCxnQkFBVyxHQUFHLDBDQUEwQyxDQUFDO1FBQ3pELGdCQUFXLEdBQUcsa05BQWtOLENBQUM7UUFFak8sbUJBQWMsR0FBRyxJQUFJLGVBQWUsQ0FBaUIsSUFBSSxDQUFDLENBQUM7UUFJakUsSUFBSSxDQUFDLFFBQVEsR0FBRyxZQUFZLENBQUMsSUFBSSxDQUFDLFdBQVcsRUFBRSxJQUFJLENBQUMsV0FBVyxDQUFDLENBQUM7UUFDakUsSUFBSSxDQUFDLFFBQVEsQ0FBQyxJQUFJLENBQUMsaUJBQWlCLENBQUMsQ0FBQyxLQUFLLEVBQUUsT0FBTyxFQUFFLEVBQUU7WUFDdEQsSUFBSSxDQUFDLGNBQWMsQ0FBQyxJQUFJLENBQUMsT0FBTyxDQUFDLENBQUM7WUFDbEMsSUFBSSxPQUFPLEVBQUU7Z0JBQ1gsWUFBWSxDQUFDLE9BQU8sQ0FBQyxlQUFlLEVBQUUsT0FBTyxDQUFDLGFBQWEsSUFBSSxFQUFFLENBQUMsQ0FBQzthQUNwRTtpQkFBTTtnQkFDTCxZQUFZLENBQUMsVUFBVSxDQUFDLGVBQWUsQ0FBQyxDQUFDO2FBQzFDO1FBQ0gsQ0FBQyxDQUFDLENBQUM7SUFDTCxDQUFDO0lBRU0sTUFBTSxDQUFDLEtBQWEsRUFBRSxRQUFnQjtRQUMzQyxPQUFPLElBQUksQ0FBQyxRQUFR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SSxFQUFFLFlBQVksRUFBRSxJQUFJLENBQy9CLENBQUM7SUFDSixDQUFDO0lBRU8sdUJBQXVCLENBQUMsSUFBUztRQUN2QyxNQUFNLEtBQUssR0FBRyxJQUFLLENBQUMsT0FBUSxDQUFDLFlBQVksQ0FBQztRQUMxQyxJQUFJLENBQUMsYUFBYSxDQUFDLE1BQU0sQ0FBQyxLQUFLLENBQUMsQ0FBQztRQUNqQyxJQUFJLENBQUMsYUFBYSxDQUFDLEdBQUcsQ0FBQyxLQUFLLEVBQUUsS0FBSyxDQUFDLENBQUM7SUFDdkMsQ0FBQzsrR0F6RlUsV0FBVzttSEFBWCxXQUFXLGNBRlYsTUFBTTs7NEZBRVAsV0FBVztrQkFIdkIsVUFBVTttQkFBQztvQkFDVixVQUFVLEVBQUUsTUFBTTtpQkFDbkIiLCJzb3VyY2VzQ29udGVudCI6WyJpbXBvcnQgeyBJbmplY3RhYmxlIH0gZnJvbSBcIkBhbmd1bGFyL2NvcmVcIjtcclxuaW1wb3J0IHsgY3JlYXRlQ2xpZW50LCBTZXNzaW9uLCBTdXBhYmFzZUNsaWVudCB9IGZyb20gXCJAc3VwYWJhc2Uvc3VwYWJhc2UtanNcIjtcclxuaW1wb3J0IHsgQ29va2llU2VydmljZSB9IGZyb20gXCJuZ3gtY29va2llLXNlcnZpY2VcIjtcclxuaW1wb3J0IHsgQmVoYXZpb3JTdWJqZWN0IH0gZnJvbSBcInJ4anNcIjtcclxuXHJcbkBJbmplY3RhYmxlKHtcclxuICBwcm92aWRlZEluOiAncm9vdCdcclxufSlcclxuZXhwb3J0IGNsYXNzIEF1dGhTZXJ2aWNlIHtcclxuXHJcbiAgcHJpdmF0ZSBzdXBhYmFzZVVybCA9ICdodHRwczovL2R6b3hsbXhvdGV4amdseXdqb2hvLnN1cGFiYXNlLmNvJztcclxuICBwcml2YXRlIHN1cGFiYXNlS2V5ID0gJ2V5SmhiR2NpT2lKSVV6STFOaUlzSW5SNWNDSTZJa3BYVkNKOS5leUpwYzNNaU9pSnpkWEJoWW1GelpTSXNJbkpsWmlJNkltUjZiM2hzYlhodmRHVjRhbWRzZVhkcWIyaHZJaXdpY205c1pTSTZJbUZ1YjI0aUxDSnBZWFFpT2pFM016TTRNek01TURZc0ltVjRjQ0k2TWpBME9UUXdPVGt3Tm4wLjd1VGJRWXBtalZrTTBmWmhtai12NVVuak42SVAtdTBqbUxkNVo0cDVEMXMnO1xyXG4gIHByaXZhdGUgc3VwYWJhc2U6IFN1cGFiYXNlQ2xpZW50O1xyXG4gIHByaXZhdGUgc2Vzc2lvblN1YmplY3QgPSBuZXcgQmVoYXZpb3JTdWJqZWN0PFNlc3Npb24gfCBudWxsPihudWxsKTtcclxuICBwcm90ZWN0ZWQgcmVmcmVzaFRpbWVvdXQ6IGFueTtcclxuXHJcbiAgY29uc3RydWN0b3IocHJpdmF0ZSByZWFkb25seSBjb29raWVTZXJ2aWNlOiBDb29raWVTZXJ2aWNlKSB7XHJcbiAgICB0aGlzLnN1cGFiYXNlID0gY3JlYXRlQ2xpZW50KHRoaXMuc3VwYWJhc2VVcmwsIHRoaXMuc3VwYWJhc2VLZXkpO1xyXG4gICAgdGhpcy5zdXBhYmFzZS5hdXRoLm9uQXV0aFN0YXRlQ2hhbmdlKChldmVudCwgc2Vzc2lvbikgPT4ge1xyXG4gICAgICB0aGlzLnNlc3Npb25TdWJqZWN0Lm5leHQoc2Vzc2lvbik7XHJcbiAgICAgIGlmIChzZXNzaW9uKSB7XHJcbiAgICAgICAgbG9jYWxTdG9yYWdlLnNldEl0ZW0oJ3JlZnJlc2hfdG9rZW4nLCBzZXNzaW9uLnJlZnJlc2hfdG9rZW4gfHwgJycpO1xyXG4gICAgICB9IGVsc2Uge1xyXG4gICAgICAgIGxvY2FsU3RvcmFnZS5yZW1vdmVJdGVtKCdyZWZyZXNoX3Rva2VuJyk7XHJcbiAgICAgIH1cclxuICAgIH0pO1xyXG4gIH1cclxuXHJcbiAgcHVibGljIHNpZ25JbihlbWFpbDogc3RyaW5nLCBwYXNzd29yZDogc3RyaW5nKTogUHJvbWlzZTxhbnk+IHtcclxuICAgIHJldHVybiB0aGlzLnN1cGFiYXNlLmF1dGguc2lnbkluV2l0aFBhc3N3b3JkKHsgZW1haWwsIHBhc3N3b3JkIH0pO1xyXG4gIH1cclxuXHJcbiAgcHVibGljIHNpZ25PdXQoKTogUHJvbWlzZTxhbnk+IHtcclxuICAgIHJldHVybiB0aGlzLnN1cGFiYXNlLmF1dGguc2lnbk91dCgpLnRoZW4oKHsgZXJyb3IgfSkgPT4ge1xyXG4gICAgICBpZiAoZXJyb3IpIHtcclxuICAgICAgICB0aHJvdyBlcnJvcjtcclxuICAgICAgfVxyXG4gICAgICB0aGlzLnNlc3Npb25TdWJqZWN0Lm5leHQobnVsbCk7XHJcbiAgICAgIHRoaXMuY29va2llU2VydmljZS5kZWxldGVBbGwoKTtcclxuICAgICAgbG9jYWxTdG9yYWdlLnJlbW92ZUl0ZW0oJ3JlZnJlc2hfdG9rZW4nKTtcclxuICAgIH0pO1xyXG4gIH1cclxuXHJcbiAgcHVibGljIHNlbmRSZXNldFBhc3N3b3JkRW1haWwoZW1haWw6IHN0cmluZyk6IFByb21pc2U8YW55PiB7XHJcbiAgICByZXR1cm4gdGhpcy5zdXBhYmFzZS5hdXRoLnJlc2V0UGFzc3dvcmRGb3JFbWFpbChlbWFpbCk7XHJcbiAgfVxyXG5cclxuICBwdWJsaWMgc2V0U3VwYWJhc2VTZXNzaW9uKGFjY2Vzc1Rva2VuOiBzdHJpbmcsIHJlZnJlc2hUb2tlbjogc3RyaW5nKTogUHJvbWlzZTxhbnk+IHtcclxuICAgIHJldHVybiB0aGlzLnN1cGFiYXNlLmF1dGguc2V0U2Vzc2lvbih7IGFjY2Vzc190b2tlbjogYWNjZXNzVG9rZW4sIHJlZnJlc2hfdG9rZW46IHJlZnJlc2hUb2tlbiB9KTtcclxuICB9XHJcblxyXG4gIHB1YmxpYyBzZXROZXdQYXNzd29yZChuZXdQYXNzd29yZDogc3RyaW5nKTogUHJvbWlzZTxhbnk+IHtcclxuICAgIHJldHVybiB0aGlzLnN1cGFiYXNlLmF1dGgudXBkYXRlVXNlcih7IHBhc3N3b3JkOiBuZXdQYXNzd29yZCB9KTtcclxuICB9XHJcblxyXG4gIHB1YmxpYyBnZXRTZXNzaW9uKCk6IFByb21pc2U8YW55PiB7XHJcbiAgICByZXR1cm4gdGhpcy5zdXBhYmFzZS5hdXRoLmdldFNlc3Npb24oKTtcclxuICB9XHJcblxyXG4gIHB1YmxpYyByZWZyZXNoU2Vzc2lvbigpOiBQcm9taXNlPGFueT4ge1xyXG4gICAgcmV0dXJuIHRoaXMuc3VwYWJhc2UuYXV0aC5yZWZyZXNoU2Vzc2lvbigpXHJcbiAgICAgIC50aGVuKCh7IGRhdGEsIGVycm9yIH0pID0+IHtcclxuICAgICAgICBpZiAoZXJyb3IpIHtcclxuICAgICAgICAgIHRocm93IGVycm9yO1xyXG4gICAgICAgIH1cclxuICAgICAgICBpZiAoZGF0YS5zZXNzaW9uKSB7XHJcbiAgICAgICAgICB0aGlzLnNlc3Npb25TdWJqZWN0Lm5leHQoZGF0YS5zZXNzaW9uKTtcclxuICAgICAgICAgIGxvY2FsU3RvcmFnZS5zZXRJdGVtKCdyZWZyZXNoX3Rva2VuJywgZGF0YS5zZXNzaW9uLnJlZnJlc2hfdG9rZW4gfHwgJycpO1xyXG4gICAgICAgICAgaWYgKHRoaXMuaXNWYWxpZExvZ2luUmVzcG9uc2UoZGF0YSkpIHtcclxuICAgICAgICAgICAgdGhpcy5oYW5kbGVTdWNjZXNzZnVsUmVmcmVzaChkYXRhKTtcclxuICAgICAgICAgICAgdGhpcy5nZXRTZXNzaW9uKCkudGhlbihzZXNzaW9uID0+IHtcclxuICAgICAgICAgICAgICB0aGlzLnN0YXJ0UmVmcmVzaFRpbWVyKHNlc3Npb24pO1xyXG4gICAgICAgICAgICB9KTtcclxuICAgICAgICAgIH1cclxuICAgICAgICB9XHJcbiAgICAgICAgcmV0dXJuIGRhdGE7XHJcbiAgICAgIH0pO1xyXG4gIH1cclxuXHJcbiAgcHVibGljIHN0YXJ0UmVmcmVzaFRpbWVyKHNlc3Npb246IFNlc3Npb24pIHtcclxuICAgIGNvbnN0IGV4cGlyZXNJbiA9IHNlc3Npb24uZXhwaXJlc19pbiB8fCAzMjAwO1xyXG4gICAgdGhpcy5yZWZyZXNoVGltZW91dCA9IHNldFRpbWVvdXQoKCkgPT4ge1xyXG4gICAgICB0aGlzLnJlZnJlc2hTZXNzaW9uKCkuY2F0Y2goY29uc29sZS5lcnJvcik7XHJcbiAgICB9LCAoZXhwaXJlc0luIC0gNjApICogMTAwMCk7XHJcbiAgfVxyXG5cclxuICBwcml2YXRlIGlzVmFsaWRMb2dpblJlc3BvbnNlKGRhdGE6IGFueSk6IGJvb2xlYW4ge1xyXG4gICAgcmV0dXJuICEhKFxyXG4gICAgICBkYXRhPy5zZXNzaW9uPy5hY2Nlc3NfdG9rZW4gJiZcclxuICAgICAgZGF0YT8udXNlcj8uYXBwX21ldGFkYXRhPy5yb2xlXHJcbiAgICApO1xyXG4gIH1cclxuXHJcbiAgcHJpdmF0ZSBoYW5kbGVTdWNjZXNzZnVsUmVmcmVzaChkYXRhOiBhbnkpOiB2b2lkIHtcclxuICAgIGNvbnN0IHRva2VuID0gZGF0YSEuc2Vzc2lvbiEuYWNjZXNzX3Rva2VuO1xyXG4gICAgdGhpcy5jb29raWVTZXJ2aWNlLmRlbGV0ZSgnand0Jyk7XHJcbiAgICB0aGlzLmNvb2tpZVNlcnZpY2Uuc2V0KCdqd3QnLCB0b2tlbik7XHJcbiAgfVxyXG5cclxufVxyXG4iXX0=
|
|
123
|
+
}], ctorParameters: () => [{ type: i1.CookieService }, { type: i2.HttpClient }] });
|
|
124
|
+
//# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoiYXV0aC5zZXJ2aWNlLmpzIiwic291cmNlUm9vdCI6IiIsInNvdXJjZXMiOlsiLi4vLi4vLi4vLi4vLi4vcHJvamVjdHMva2l2aW8vc3JjL2xpYi9zZXJ2aWNlcy9hdXRoLnNlcnZpY2UudHMiXSwibmFtZXMiOltdLCJtYXBwaW5ncyI6IkFBQUEsT0FBTyxFQUFFLFVBQVUsRUFBRSxNQUFNLGVBQWUsQ0FBQztBQUUzQyxPQUFPLEVBQUUsZUFBZSxFQUFFLGNBQWMsRUFBRSxNQUFNLE1BQU0sQ0FBQztBQUN2RCxPQUFPLEVBQWMsV0FBVyxFQUFFLE1BQU0sc0JBQXNCLENBQUM7Ozs7QUFZL0QsTUFBTSxPQUFPLFdBQVc7SUFPdEIsWUFDbUIsYUFBNEIsRUFDNUIsSUFBZ0I7UUFEaEIsa0JBQWEsR0FBYixhQUFhLENBQWU7UUFDNUIsU0FBSSxHQUFKLElBQUksQ0FBWTtRQVAzQixtQkFBYyxHQUFHLElBQUksZUFBZSxDQUFpQixJQUFJLENBQUMsQ0FBQztRQUUzRCxXQUFNLEdBQUcsMEJBQTBCLENBQUM7UUFDcEMsV0FBTSxHQUFHLEVBQUUsQ0FBQztRQU1sQixJQUFJLENBQUMsVUFBVSxFQUFFLENBQUMsS0FBSyxDQUFDLEdBQUcsRUFBRSxDQUFDLElBQUksQ0FBQyxDQUFDO0lBQ3RDLENBQUM7SUFFTyxVQUFVO1FBQ2hCLE9BQU8sSUFBSSxXQUFXLENBQUM7WUFDckIsY0FBYyxFQUFFLGtCQUFrQjtZQUNsQyxTQUFTLEVBQUUsSUFBSSxDQUFDLE1BQU07U0FDdkIsQ0FBQyxDQUFDO0lBQ0wsQ0FBQztJQUVNLFlBQVksQ0FBQyxNQUFjLEVBQUUsTUFBZTtRQUNqRCxJQUFJLE1BQU07WUFBRSxJQUFJLENBQUMsTUFBTSxHQUFHLE1BQU0sQ0FBQztRQUNqQyxJQUFJLE1BQU07WUFBRSxJQUFJLENBQUMsTUFBTSxHQUFHLE1BQU0sQ0FBQztJQUNuQyxDQUFDO0lBRU0saUJBQWlCO1FBQ3RCLE9BQU8sSUFBSSxDQUFDLGNBQWMsQ0FBQyxRQUFRLEVBQUUsQ0FBQztJQUN4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Q0FBQztJQUNKLENBQUM7SUFFTyx1QkFBdUIsQ0FBQyxJQUFTO1FBQ3ZDLE1BQU0sS0FBSyxHQUFHLElBQUssQ0FBQyxZQUFZLENBQUM7UUFDakMsSUFBSSxDQUFDLGFBQWEsQ0FBQyxNQUFNLENBQUMsS0FBSyxDQUFDLENBQUM7UUFDakMsSUFBSSxDQUFDLGFBQWEsQ0FBQyxHQUFHLENBQUMsS0FBSyxFQUFFLEtBQUssQ0FBQyxDQUFDO0lBQ3ZDLENBQUM7K0dBMUlVLFdBQVc7bUhBQVgsV0FBVyxjQUZWLE1BQU07OzRGQUVQLFdBQVc7a0JBSHZCLFVBQVU7bUJBQUM7b0JBQ1YsVUFBVSxFQUFFLE1BQU07aUJBQ25CIiwic291cmNlc0NvbnRlbnQiOlsiaW1wb3J0IHsgSW5qZWN0YWJsZSB9IGZyb20gXCJAYW5ndWxhci9jb3JlXCI7XHJcbmltcG9ydCB7IENvb2tpZVNlcnZpY2UgfSBmcm9tIFwibmd4LWNvb2tpZS1zZXJ2aWNlXCI7XHJcbmltcG9ydCB7IEJlaGF2aW9yU3ViamVjdCwgZmlyc3RWYWx1ZUZyb20gfSBmcm9tIFwicnhqc1wiO1xyXG5pbXBvcnQgeyBIdHRwQ2xpZW50LCBIdHRwSGVhZGVycyB9IGZyb20gJ0Bhbmd1bGFyL2NvbW1vbi9odHRwJztcclxuXHJcbmV4cG9ydCBpbnRlcmZhY2UgU2Vzc2lvbiB7XHJcbiAgYWNjZXNzX3Rva2VuOiBzdHJpbmc7XHJcbiAgcmVmcmVzaF90b2tlbjogc3RyaW5nO1xyXG4gIGV4cGlyZXNfaW4/OiBudW1iZXI7XHJcbiAgdXNlcj86IGFueTtcclxufVxyXG5cclxuQEluamVjdGFibGUoe1xyXG4gIHByb3ZpZGVkSW46ICdyb290J1xyXG59KVxyXG5leHBvcnQgY2xhc3MgQXV0aFNlcnZpY2Uge1xyXG5cclxuICBwcml2YXRlIHNlc3Npb25TdWJqZWN0ID0gbmV3IEJlaGF2aW9yU3ViamVjdDxTZXNzaW9uIHwgbnVsbD4obnVsbCk7XHJcbiAgcHJvdGVjdGVkIHJlZnJlc2hUaW1lb3V0OiBhbnk7XHJcbiAgcHJpdmF0ZSBhcGlVcmwgPSAnaHR0cDovL2xvY2FsaG9zdDo5MDkwL3YxJztcclxuICBwcml2YXRlIGFwaUtleSA9ICcnO1xyXG5cclxuICBjb25zdHJ1Y3RvcihcclxuICAgIHByaXZhdGUgcmVhZG9ubHkgY29va2llU2VydmljZTogQ29va2llU2VydmljZSxcclxuICAgIHByaXZhdGUgcmVhZG9ubHkgaHR0cDogSHR0cENsaWVudFxyXG4gICkge1xyXG4gICAgdGhpcy5nZXRTZXNzaW9uKCkuY2F0Y2goKCkgPT4gbnVsbCk7XHJcbiAgfVxyXG5cclxuICBwcml2YXRlIGdldEhlYWRlcnMoKTogSHR0cEhlYWRlcnMge1xyXG4gICAgcmV0dXJuIG5ldyBIdHRwSGVhZGVycyh7XHJcbiAgICAgICdDb250ZW50LVR5cGUnOiAnYXBwbGljYXRpb24vanNvbicsXHJcbiAgICAgICdBcGlfS2V5JzogdGhpcy5hcGlLZXlcclxuICAgIH0pO1xyXG4gIH1cclxuXHJcbiAgcHVibGljIGNvbmZpZ3VyZUFwaShhcGlVcmw6IHN0cmluZywgYXBpS2V5Pzogc3RyaW5nKTogdm9pZCB7XHJcbiAgICBpZiAoYXBpVXJsKSB0aGlzLmFwaVVybCA9IGFwaVVybDtcclxuICAgIGlmIChhcGlLZXkpIHRoaXMuYXBpS2V5ID0gYXBpS2V5O1xyXG4gIH1cclxuXHJcbiAgcHVibGljIGdldEN1cnJlbnRTZXNzaW9uKCk6IFNlc3Npb24gfCBudWxsIHtcclxuICAgIHJldHVybiB0aGlzLnNlc3Npb25TdWJqZWN0LmdldFZhbHVlKCk7XHJcbiAgfVxyXG5cclxuICBwdWJsaWMgc2lnbkluKGVtYWlsOiBzdHJpbmcsIHBhc3N3b3JkOiBzdHJpbmcpOiBQcm9taXNlPGFueT4ge1xyXG4gICAgcmV0dXJuIGZpcnN0VmFsdWVGcm9tKFxyXG4gICAgICB0aGlzLmh0dHAucG9zdChgJHt0aGlzLmFwaVVybH0vc3VwYWJhc2UtYXV0aGAsIHsgZW1haWwsIHBhc3N3b3JkIH0sIHsgaGVhZGVyczogdGhpcy5nZXRIZWFkZXJzKCkgfSlcclxuICAgICkudGhlbigocmVzcG9uc2U6IGFueSkgPT4ge1xyXG4gICAgICBpZiAocmVzcG9uc2UpIHtcclxuICAgICAgICB0aGlzLnNlc3Npb25TdWJqZWN0Lm5leHQocmVzcG9uc2UpO1xyXG4gICAgICAgIGxvY2FsU3RvcmFnZS5zZXRJdGVtKCdyZWZyZXNoX3Rva2VuJywgcmVzcG9uc2UucmVmcmVzaF90b2tlbiB8fCAnJyk7XHJcbiAgICAgICAgaWYgKHRoaXMuaXNWYWxpZExvZ2luUmVzcG9uc2UocmVzcG9uc2UpKSB7XHJcbiAgICAgICAgICB0aGlzLmhhbmRsZVN1Y2Nlc3NmdWxSZWZyZXNoKHJlc3BvbnNlKTtcclxuICAgICAgICAgIHRoaXMuc3RhcnRSZWZyZXNoVGltZXIocmVzcG9uc2UpO1xyXG4gICAgICAgIH1cclxuICAgICAgfVxyXG4gICAgICByZXR1cm4gcmVzcG9uc2U7XHJcbiAgICB9KTtcclxuICB9XHJcblxyXG4gIHB1YmxpYyBzaWduT3V0KCk6IFByb21pc2U8YW55PiB7XHJcbiAgICByZXR1cm4gZmlyc3RWYWx1ZUZyb20oXHJcbiAgICAgIHRoaXMuaHR0cC5wb3N0KGAke3RoaXMuYXBpVXJsfS9zdXBhYmFzZS1zaWdub3V0YCwge30sIHsgaGVhZGVyczogdGhpcy5nZXRIZWFkZXJzKCkgfSlcclxuICAgICkudGhlbigocmVzcG9uc2U6IGFueSkgPT4ge1xyXG4gICAgICB0aGlzLnNlc3Npb25TdWJqZWN0Lm5leHQobnVsbCk7XHJcbiAgICAgIHRoaXMuY29va2llU2VydmljZS5kZWxldGVBbGwoKTtcclxuICAgICAgbG9jYWxTdG9yYWdlLnJlbW92ZUl0ZW0oJ3JlZnJlc2hfdG9rZW4nKTtcclxuICAgICAgcmV0dXJuIHJlc3BvbnNlO1xyXG4gICAgfSkuY2F0Y2goZXJyb3IgPT4ge1xyXG4gICAgICBjb25zb2xlLmVycm9yKCdFcnJvciBzaWduaW5nIG91dDonLCBlcnJvcik7XHJcbiAgICAgIHRoaXMuc2Vzc2lvblN1YmplY3QubmV4dChudWxsKTtcclxuICAgICAgdGhpcy5jb29raWVTZXJ2aWNlLmRlbGV0ZUFsbCgpO1xyXG4gICAgICBsb2NhbFN0b3JhZ2UucmVtb3ZlSXRlbSgncmVmcmVzaF90b2tlbicpO1xyXG4gICAgICB0aHJvdyBlcnJvcjtcclxuICAgIH0pO1xyXG4gIH1cclxuXHJcbiAgcHVibGljIHNlbmRSZXNldFBhc3N3b3JkRW1haWwoZW1haWw6IHN0cmluZyk6IFByb21pc2U8YW55PiB7XHJcbiAgICByZXR1cm4gZmlyc3RWYWx1ZUZyb20oXHJcbiAgICAgIHRoaXMuaHR0cC5wb3N0KGAke3RoaXMuYXBpVXJsfS9zdXBhYmFzZS1yZXNldC1wYXNzd29yZGAsIHsgZW1haWwgfSwgeyBoZWFkZXJzOiB0aGlzLmdldEhlYWRlcnMoKSB9KVxyXG4gICAgKTtcclxuICB9XHJcblxyXG4gIHB1YmxpYyBzZXROZXdQYXNzd29yZChuZXdQYXNzd29yZDogc3RyaW5nKTogUHJvbWlzZTxhbnk+IHtcclxuICAgIHJldHVybiBmaXJzdFZhbHVlRnJvbShcclxuICAgICAgdGhpcy5odHRwLnBvc3QoYCR7dGhpcy5hcGlVcmx9L3N1cGFiYXNlLXNldC1wYXNzd29yZGAsIHsgcGFzc3dvcmQ6IG5ld1Bhc3N3b3JkIH0sIHsgaGVhZGVyczogdGhpcy5nZXRIZWFkZXJzKCkgfSlcclxuICAgICk7XHJcbiAgfVxyXG5cclxuICBwdWJsaWMgZ2V0U2Vzc2lvbigpOiBQcm9taXNlPGFueT4ge1xyXG4gICAgY29uc3QgcmVmcmVzaFRva2VuID0gbG9jYWxTdG9yYWdlLmdldEl0ZW0oJ3JlZnJlc2hfdG9rZW4nKTtcclxuICAgIGlmICghcmVmcmVzaFRva2VuKSB7XHJcbiAgICAgIHJldHVybiBQcm9taXNlLnJlc29sdmUoeyBkYXRhOiB7IHNlc3Npb246IG51bGwgfSB9KTtcclxuICAgIH1cclxuICAgIFxyXG4gICAgcmV0dXJuIGZpcnN0VmFsdWVGcm9tKFxyXG4gICAgICB0aGlzLmh0dHAucG9zdChgJHt0aGlzLmFwaVVybH0vc3VwYWJhc2Utc2Vzc2lvbmAsIHsgcmVmcmVzaF90b2tlbjogcmVmcmVzaFRva2VuIH0sIHsgaGVhZGVyczogdGhpcy5nZXRIZWFkZXJzKCkgfSlcclxuICAgICkudGhlbigocmVzcG9uc2U6IGFueSkgPT4ge1xyXG4gICAgICBpZiAocmVzcG9uc2U/LmRhdGE/LnNlc3Npb24pIHtcclxuICAgICAgICB0aGlzLnNlc3Npb25TdWJqZWN0Lm5leHQocmVzcG9uc2UuZGF0YS5zZXNzaW9uKTtcclxuICAgICAgICBpZiAodGhpcy5pc1ZhbGlkTG9naW5SZXNwb25zZShyZXNwb25zZS5kYXRhKSkge1xyXG4gICAgICAgICAgdGhpcy5oYW5kbGVTdWNjZXNzZnVsUmVmcmVzaChyZXNwb25zZS5kYXRhKTtcclxuICAgICAgICAgIHRoaXMuc3RhcnRSZWZyZXNoVGltZXIocmVzcG9uc2UuZGF0YS5zZXNzaW9uKTtcclxuICAgICAgICB9XHJcbiAgICAgIH1cclxuICAgICAgcmV0dXJuIHJlc3BvbnNlO1xyXG4gICAgfSk7XHJcbiAgfVxyXG5cclxuICBwdWJsaWMgcmVmcmVzaFNlc3Npb24oKTogUHJvbWlzZTxhbnk+IHtcclxuICAgIGNvbnN0IHJlZnJlc2hUb2tlbiA9IGxvY2FsU3RvcmFnZS5nZXRJdGVtKCdyZWZyZXNoX3Rva2VuJyk7XHJcbiAgICBpZiAoIXJlZnJlc2hUb2tlbikge1xyXG4gICAgICByZXR1cm4gUHJvbWlzZS5yZXNvbHZlKHsgZGF0YTogeyBzZXNzaW9uOiBudWxsIH0gfSk7XHJcbiAgICB9XHJcbiAgICBcclxuICAgIHJldHVybiBmaXJzdFZhbHVlRnJvbShcclxuICAgICAgdGhpcy5odHRwLnBvc3QoYCR7dGhpcy5hcGlVcmx9L3N1cGFiYXNlLXJlZnJlc2hgLCB7IHJlZnJlc2hfdG9rZW46IHJlZnJlc2hUb2tlbiB9LCB7IGhlYWRlcnM6IHRoaXMuZ2V0SGVhZGVycygpIH0pXHJcbiAgICApLnRoZW4oKHJlc3BvbnNlOiBhbnkpID0+IHtcclxuICAgICAgaWYgKHJlc3BvbnNlPy5kYXRhPy5zZXNzaW9uKSB7XHJcbiAgICAgICAgdGhpcy5zZXNzaW9uU3ViamVjdC5uZXh0KHJlc3BvbnNlLmRhdGEuc2Vzc2lvbik7XHJcbiAgICAgICAgbG9jYWxTdG9yYWdlLnNldEl0ZW0oJ3JlZnJlc2hfdG9rZW4nLCByZXNwb25zZS5kYXRhLnNlc3Npb24ucmVmcmVzaF90b2tlbiB8fCAnJyk7XHJcbiAgICAgICAgaWYgKHRoaXMuaXNWYWxpZExvZ2luUmVzcG9uc2UocmVzcG9uc2UuZGF0YSkpIHtcclxuICAgICAgICAgIHRoaXMuaGFuZGxlU3VjY2Vzc2Z1bFJlZnJlc2gocmVzcG9uc2UuZGF0YSk7XHJcbiAgICAgICAgICB0aGlzLnN0YXJ0UmVmcmVzaFRpbWVyKHJlc3BvbnNlLmRhdGEuc2Vzc2lvbik7XHJcbiAgICAgICAgfVxyXG4gICAgICB9XHJcbiAgICAgIHJldHVybiByZXNwb25zZTtcclxuICAgIH0pO1xyXG4gIH1cclxuXHJcbiAgcHVibGljIHN0YXJ0UmVmcmVzaFRpbWVyKHNlc3Npb246IFNlc3Npb24pIHtcclxuICAgIGNvbnN0IGV4cGlyZXNJbiA9IHNlc3Npb24uZXhwaXJlc19pbiB8fCAzMjAwO1xyXG4gICAgdGhpcy5yZWZyZXNoVGltZW91dCA9IHNldFRpbWVvdXQoKCkgPT4ge1xyXG4gICAgICB0aGlzLnJlZnJlc2hTZXNzaW9uKCkuY2F0Y2goY29uc29sZS5lcnJvcik7XHJcbiAgICB9LCAoZXhwaXJlc0luIC0gNjApICogMTAwMCk7XHJcbiAgfVxyXG5cclxuICBwdWJsaWMgZ2V0U2Vzc2lvbk9ic2VydmFibGUoKSB7XHJcbiAgICByZXR1cm4gdGhpcy5zZXNzaW9uU3ViamVjdC5hc09ic2VydmFibGUoKTtcclxuICB9XHJcblxyXG4gIHByaXZhdGUgaXNWYWxpZExvZ2luUmVzcG9uc2UoZGF0YTogYW55KTogYm9vbGVhbiB7XHJcbiAgICByZXR1cm4gISEoXHJcbiAgICAgIGRhdGE/LmFjY2Vzc190b2tlbiAmJlxyXG4gICAgICBkYXRhPy51c2VyPy5hcHBfbWV0YWRhdGE/LnJvbGVcclxuICAgICk7XHJcbiAgfVxyXG5cclxuICBwcml2YXRlIGhhbmRsZVN1Y2Nlc3NmdWxSZWZyZXNoKGRhdGE6IGFueSk6IHZvaWQge1xyXG4gICAgY29uc3QgdG9rZW4gPSBkYXRhIS5hY2Nlc3NfdG9rZW47XHJcbiAgICB0aGlzLmNvb2tpZVNlcnZpY2UuZGVsZXRlKCdqd3QnKTtcclxuICAgIHRoaXMuY29va2llU2VydmljZS5zZXQoJ2p3dCcsIHRva2VuKTtcclxuICB9XHJcbn1cclxuIl19
|
|
@@ -47,6 +47,9 @@ export class NavigationService {
|
|
|
47
47
|
navigateToPayment(price) {
|
|
48
48
|
return this.router.navigate(['/auctions/payment']);
|
|
49
49
|
}
|
|
50
|
+
navigateToBillingRecords() {
|
|
51
|
+
return this.router.navigate(['/dashboard/billing-record']);
|
|
52
|
+
}
|
|
50
53
|
navigateToIntegrations() {
|
|
51
54
|
return this.router.navigate(['/dashboard/integrations']);
|
|
52
55
|
}
|
|
@@ -59,4 +62,4 @@ i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "17.3.12", ngImpo
|
|
|
59
62
|
providedIn: 'root'
|
|
60
63
|
}]
|
|
61
64
|
}], ctorParameters: () => [{ type: i1.Router }] });
|
|
62
|
-
//# sourceMappingURL=data:application/json;base64,
|
|
65
|
+
//# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoibmF2aWdhdGlvbi5zZXJ2aWNlLmpzIiwic291cmNlUm9vdCI6IiIsInNvdXJjZXMiOlsiLi4vLi4vLi4vLi4vLi4vcHJvamVjdHMva2l2aW8vc3JjL2xpYi9zZXJ2aWNlcy9uYXZpZ2F0aW9uLnNlcnZpY2UudHMiXSwibmFtZXMiOltdLCJtYXBwaW5ncyI6IkFBQUEsT0FBTyxFQUFFLFVBQVUsRUFBRSxNQUFNLGVBQWUsQ0FBQzs7O0FBTTNDLE1BQU0sT0FBTyxpQkFBaUI7SUFDMUIsWUFBb0IsTUFBYztRQUFkLFdBQU0sR0FBTixNQUFNLENBQVE7SUFBSSxDQUFDO0lBRXZDLGVBQWU7UUFDWCxPQUFPLElBQUksQ0FBQyxNQUFNLENBQUMsUUFBUSxDQUFDLENBQUMsUUFBUSxDQUFDLENBQUMsQ0FBQztJQUM1QyxDQUFDO0lBRUQsZ0JBQWdCO1FBQ1osT0FBTyxJQUFJLENBQUMsTUFBTSxDQUFDLFFBQVEsQ0FBQyxDQUFDLG1CQUFtQixDQUFDLENBQUMsQ0FBQztJQUN2RCxDQUFDO0lBRUQsdUJBQXVCLENBQUMsRUFBVTtRQUM5QixPQUFPLElBQUksQ0FBQyxNQUFNLENBQUMsUUFBUSxDQUFDLENBQUMsMkJBQTJCLENBQUMsRUFBRTtZQUN2RCxXQUFXLEVBQUUsRUFBRSxPQUFPLEVBQUUsRUFBRSxFQUFFO1NBQy9CLENBQUMsQ0FBQztJQUNQLENBQUM7SUFFRCx1QkFBdUI7UUFDbkIsT0FBTyxJQUFJLENBQUMsTUFBTSxDQUFDLFFBQVEsQ0FBQyxDQUFDLHVCQUF1QixDQUFDLENBQUMsQ0FBQztJQUMzRCxDQUFDO0lBRUQsNEJBQTRCLENBQUMsRUFBVTtRQUNuQyxPQUFPLElBQUksQ0FBQyxNQUFNLENBQUMsUUFBUSxDQUFDLENBQUMsa0NBQWtDLENBQUMsRUFBRTtZQUM5RCxXQUFXLEVBQUUsRUFBRSxhQUFhLEVBQUUsRUFBRSxFQUFFO1NBQ3JDLENBQUMsQ0FBQztJQUNQLENBQUM7SUFFRCxxQkFBcUI7UUFDakIsT0FBTyxJQUFJLENBQUMsTUFBTSxDQUFDLFFBQVEsQ0FBQyxDQUFDLDBCQUEwQixDQUFDLENBQUMsQ0FBQztJQUM5RCxDQUFDO0lBRUQsZUFBZTtRQUNYLE9BQU8sSUFBSSxDQUFDLE1BQU0sQ0FBQyxRQUFRLENBQUMsQ0FBQyxrQkFBa0IsQ0FBQyxDQUFDLENBQUM7SUFDdEQsQ0FBQztJQUVELHNCQUFzQixDQUFDLEVBQVUsRUFBRSxLQUFhO1FBQzVDLE9BQU8sSUFBSSxDQUFDLE1BQU0sQ0FBQyxRQUFRLENBQUMsQ0FBQywwQkFBMEIsQ0FBQyxFQUFFO1lBQ3RELFdBQVcsRUFBRSxFQUFFLE1BQU0sRUFBRSxFQUFFLEVBQUUsYUFBYSxFQUFFLEtBQUssRUFBQztTQUNuRCxDQUFDLENBQUM7SUFDUCxDQUFDO0lBRUQsZUFBZTtRQUNYLE9BQU8sSUFBSSxDQUFDLE1BQU0sQ0FBQyxRQUFRLENBQUMsQ0FBQyxrQkFBa0IsQ0FBQyxDQUFDLENBQUM7SUFDdEQsQ0FBQztJQUVELHNCQUFzQjtRQUNsQixPQUFPLElBQUksQ0FBQyxNQUFNLENBQUMsUUFBUSxDQUFDLENBQUMsMEJBQTBCLENBQUMsQ0FBQyxDQUFDO0lBQzlELENBQUM7SUFFRCxtQkFBbUI7UUFDZixPQUFPLElBQUksQ0FBQyxNQUFNLENBQUMsUUFBUSxDQUFDLENBQUMsdUJBQXVCLENBQUMsQ0FBQyxDQUFDO0lBQzNELENBQUM7SUFFRCxpQkFBaUIsQ0FBQyxLQUFhO1FBQzNCLE9BQU8sSUFBSSxDQUFDLE1BQU0sQ0FBQyxRQUFRLENBQUMsQ0FBQyxtQkFBbUIsQ0FBQyxDQUFDLENBQUM7SUFDdkQsQ0FBQztJQUVELHdCQUF3QjtRQUNwQixPQUFPLElBQUksQ0FBQyxNQUFNLENBQUMsUUFBUSxDQUFDLENBQUMsMkJBQTJCLENBQUMsQ0FBQyxDQUFDO0lBQy9ELENBQUM7SUFFRCxzQkFBc0I7UUFDbEIsT0FBTyxJQUFJLENBQUMsTUFBTSxDQUFDLFFBQVEsQ0FBQyxDQUFDLHlCQUF5QixDQUFDLENBQUMsQ0FBQztJQUM3RCxDQUFDOytHQS9EUSxpQkFBaUI7bUhBQWpCLGlCQUFpQixjQUZkLE1BQU07OzRGQUVULGlCQUFpQjtrQkFIN0IsVUFBVTttQkFBQztvQkFDUixVQUFVLEVBQUUsTUFBTTtpQkFDckIiLCJzb3VyY2VzQ29udGVudCI6WyJpbXBvcnQgeyBJbmplY3RhYmxlIH0gZnJvbSBcIkBhbmd1bGFyL2NvcmVcIjtcclxuaW1wb3J0IHsgUm91dGVyIH0gZnJvbSBcIkBhbmd1bGFyL3JvdXRlclwiO1xyXG5cclxuQEluamVjdGFibGUoe1xyXG4gICAgcHJvdmlkZWRJbjogJ3Jvb3QnXHJcbn0pXHJcbmV4cG9ydCBjbGFzcyBOYXZpZ2F0aW9uU2VydmljZSB7XHJcbiAgICBjb25zdHJ1Y3Rvcihwcml2YXRlIHJvdXRlcjogUm91dGVyKSB7IH1cclxuXHJcbiAgICBuYXZpZ2F0ZVRvTG9naW4oKTogUHJvbWlzZTxib29sZWFuPiB7XHJcbiAgICAgICAgcmV0dXJuIHRoaXMucm91dGVyLm5hdmlnYXRlKFsnL2xvZ2luJ10pO1xyXG4gICAgfVxyXG5cclxuICAgIG5hdmlnYXRlVG9PZmZlcnMoKTogUHJvbWlzZTxib29sZWFuPiB7XHJcbiAgICAgICAgcmV0dXJuIHRoaXMucm91dGVyLm5hdmlnYXRlKFsnL2Rhc2hib2FyZC9vZmZlcnMnXSk7XHJcbiAgICB9XHJcblxyXG4gICAgbmF2aWdhdGVUb09mZmVyc0RldGFpbHMoaWQ6IHN0cmluZyk6IFByb21pc2U8Ym9vbGVhbj4ge1xyXG4gICAgICAgIHJldHVybiB0aGlzLnJvdXRlci5uYXZpZ2F0ZShbJy9kYXNoYm9hcmQvb2ZmZXJzLWRldGFpbHMnXSwge1xyXG4gICAgICAgICAgICBxdWVyeVBhcmFtczogeyBvZmZlcklkOiBpZCB9XHJcbiAgICAgICAgfSk7XHJcbiAgICB9XHJcblxyXG4gICAgbmF2aWdhdGVUb1Jlc2V0UGFzc3dvcmQoKTogUHJvbWlzZTxib29sZWFuPiB7XHJcbiAgICAgICAgcmV0dXJuIHRoaXMucm91dGVyLm5hdmlnYXRlKFsnL2xvZ2luL3Jlc2V0LXBhc3N3b3JkJ10pO1xyXG4gICAgfVxyXG5cclxuICAgIG5hdmlnYXRlVG9Qb2ludE9mU2FsZURldGFpbHMoaWQ6IHN0cmluZyk6IFByb21pc2U8Ym9vbGVhbj4ge1xyXG4gICAgICAgIHJldHVybiB0aGlzLnJvdXRlci5uYXZpZ2F0ZShbJy9kYXNoYm9hcmQvcG9pbnQtb2Ytc2FsZS1kZXRhaWxzJ10sIHtcclxuICAgICAgICAgICAgcXVlcnlQYXJhbXM6IHsgcG9pbnRPZlNhbGVJZDogaWQgfVxyXG4gICAgICAgIH0pO1xyXG4gICAgfVxyXG5cclxuICAgIG5hdmlnYXRlVG9Qb2ludE9mU2FsZSgpOiBQcm9taXNlPGJvb2xlYW4+IHtcclxuICAgICAgICByZXR1cm4gdGhpcy5yb3V0ZXIubmF2aWdhdGUoWycvZGFzaGJvYXJkL3BvaW50LW9mLXNhbGUnXSk7XHJcbiAgICB9XHJcblxyXG4gICAgbmF2aWdhdGVUb0l0ZW1zKCk6IFByb21pc2U8Ym9vbGVhbj4ge1xyXG4gICAgICAgIHJldHVybiB0aGlzLnJvdXRlci5uYXZpZ2F0ZShbJy9kYXNoYm9hcmQvaXRlbXMnXSk7XHJcbiAgICB9XHJcblxyXG4gICAgbmF2aWdhdGVUb0l0ZW1zRGV0YWlscyhpZDogc3RyaW5nLCBwb3NJZDogc3RyaW5nKTogUHJvbWlzZTxib29sZWFuPiB7XHJcbiAgICAgICAgcmV0dXJuIHRoaXMucm91dGVyLm5hdmlnYXRlKFsnL2Rhc2hib2FyZC9pdGVtcy1kZXRhaWxzJ10sIHtcclxuICAgICAgICAgICAgcXVlcnlQYXJhbXM6IHsgaXRlbUlkOiBpZCwgcG9pbnRPZlNhbGVJZDogcG9zSWR9XHJcbiAgICAgICAgfSk7XHJcbiAgICB9XHJcblxyXG4gICAgbmF2aWdhdGVUb1J1bGVzKCk6IFByb21pc2U8Ym9vbGVhbj4ge1xyXG4gICAgICAgIHJldHVybiB0aGlzLnJvdXRlci5uYXZpZ2F0ZShbJy9kYXNoYm9hcmQvcnVsZXMnXSk7XHJcbiAgICB9XHJcblxyXG4gICAgbmF2aWdhdGVUb1J1bGVzTWFuYWdlcigpOiBQcm9taXNlPGJvb2xlYW4+IHtcclxuICAgICAgICByZXR1cm4gdGhpcy5yb3V0ZXIubmF2aWdhdGUoWycvZGFzaGJvYXJkL3J1bGVzLW1hbmFnZXInXSk7XHJcbiAgICB9XHJcblxyXG4gICAgbmF2aWdhdGVUb09mZmVyRmxvdygpOiBQcm9taXNlPGJvb2xlYW4+IHtcclxuICAgICAgICByZXR1cm4gdGhpcy5yb3V0ZXIubmF2aWdhdGUoWycvZGFzaGJvYXJkL29mZmVyLWZsb3cnXSk7XHJcbiAgICB9XHJcblxyXG4gICAgbmF2aWdhdGVUb1BheW1lbnQocHJpY2U6IG51bWJlcik6IFByb21pc2U8Ym9vbGVhbj4ge1xyXG4gICAgICAgIHJldHVybiB0aGlzLnJvdXRlci5uYXZpZ2F0ZShbJy9hdWN0aW9ucy9wYXltZW50J10pO1xyXG4gICAgfVxyXG5cclxuICAgIG5hdmlnYXRlVG9CaWxsaW5nUmVjb3JkcygpOiBQcm9taXNlPGJvb2xlYW4+IHtcclxuICAgICAgICByZXR1cm4gdGhpcy5yb3V0ZXIubmF2aWdhdGUoWycvZGFzaGJvYXJkL2JpbGxpbmctcmVjb3JkJ10pO1xyXG4gICAgfVxyXG5cclxuICAgIG5hdmlnYXRlVG9JbnRlZ3JhdGlvbnMoKTogUHJvbWlzZTxib29sZWFuPiB7XHJcbiAgICAgICAgcmV0dXJuIHRoaXMucm91dGVyLm5hdmlnYXRlKFsnL2Rhc2hib2FyZC9pbnRlZ3JhdGlvbnMnXSk7XHJcbiAgICB9XHJcbn0iXX0=
|
package/esm2022/public-api.mjs
CHANGED
|
@@ -26,4 +26,6 @@ export * from './lib/helpers/auth.helper';
|
|
|
26
26
|
export * from './lib/validators/password-missmatch.validator';
|
|
27
27
|
//Enums
|
|
28
28
|
export * from './lib/enums/action-type.enum';
|
|
29
|
-
|
|
29
|
+
// Injection Tokens
|
|
30
|
+
export * from './lib/injection-tokens/auth-config';
|
|
31
|
+
//# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoicHVibGljLWFwaS5qcyIsInNvdXJjZVJvb3QiOiIiLCJzb3VyY2VzIjpbIi4uLy4uLy4uL3Byb2plY3RzL2tpdmlvL3NyYy9wdWJsaWMtYXBpLnRzIl0sIm5hbWVzIjpbXSwibWFwcGluZ3MiOiJBQUFBOztHQUVHO0FBRUgsWUFBWTtBQUNaLGNBQWMsOENBQThDLENBQUM7QUFDN0QsY0FBYyxvREFBb0QsQ0FBQztBQUNuRSxjQUFjLGtFQUFrRSxDQUFBO0FBQ2hGLGNBQWMsa0RBQWtELENBQUM7QUFDakUsY0FBYyw0Q0FBNEMsQ0FBQztBQUMzRCxjQUFjLHNEQUFzRCxDQUFDO0FBQ3JFLGNBQWMsOENBQThDLENBQUM7QUFDN0QsY0FBYyxzREFBc0QsQ0FBQTtBQUNwRSxjQUFjLHdEQUF3RCxDQUFBO0FBRXRFLFVBQVU7QUFDVixjQUFjLHNDQUFzQyxDQUFDO0FBQ3JELGNBQWMsbUNBQW1DLENBQUM7QUFDbEQsY0FBYyxxQ0FBcUMsQ0FBQztBQUNwRCxjQUFjLGdDQUFnQyxDQUFDO0FBQy9DLGNBQWMseUNBQXlDLENBQUM7QUFDeEQsY0FBYyw2QkFBNkIsQ0FBQztBQUU1QyxTQUFTO0FBQ1QsY0FBYyxvQ0FBb0MsQ0FBQztBQUVuRCxTQUFTO0FBQ1QsY0FBYywyQkFBMkIsQ0FBQTtBQUV6QyxZQUFZO0FBQ1osY0FBYywrQ0FBK0MsQ0FBQTtBQUU3RCxPQUFPO0FBQ1AsY0FBYyw4QkFBOEIsQ0FBQTtBQUU1QyxtQkFBbUI7QUFDbkIsY0FBYyxvQ0FBb0MsQ0FBQyIsInNvdXJjZXNDb250ZW50IjpbIi8qXHJcbiAqIFB1YmxpYyBBUEkgU3VyZmFjZSBvZiBraXZpb1xyXG4gKi9cclxuXHJcbi8vQ29tcG9uZW50c1xyXG5leHBvcnQgKiBmcm9tICcuL2xpYi9jb21wb25lbnRzL2t2LXBvcHVwL2t2LXBvcHVwLmNvbXBvbmVudCc7XHJcbmV4cG9ydCAqIGZyb20gJy4vbGliL2NvbXBvbmVudHMvZGF0ZS1waWNrZXIvZGF0ZS1waWNrZXIuY29tcG9uZW50JztcclxuZXhwb3J0ICogZnJvbSAnLi9saWIvY29tcG9uZW50cy9yZXNvdXJjZS1ub3QtZm91bmQvcmVzb3VyY2Utbm90LWZvdW5kLmNvbXBvbmVudCdcclxuZXhwb3J0ICogZnJvbSAnLi9saWIvY29tcG9uZW50cy9rdi1zdGVwcGVyL2t2LXN0ZXBwZXIuY29tcG9uZW50JztcclxuZXhwb3J0ICogZnJvbSAnLi9saWIvY29tcG9uZW50cy9rdi1zdGVwL2t2LXN0ZXAuY29tcG9uZW50JztcclxuZXhwb3J0ICogZnJvbSAnLi9saWIvY29tcG9uZW50cy9rdi1hY2NvcmRpb24va3YtYWNjb3JkaW9uLmNvbXBvbmVudCc7XHJcbmV4cG9ydCAqIGZyb20gJy4vbGliL2NvbXBvbmVudHMva3YtYWxlcnQva3YtYWxlcnQuY29tcG9uZW50JztcclxuZXhwb3J0ICogZnJvbSAnLi9saWIvY29tcG9uZW50cy9rdi1zaWRlLW1lbnUva3Ytc2lkZS1tZW51LmNvbXBvbmVudCdcclxuZXhwb3J0ICogZnJvbSAnLi9saWIvY29tcG9uZW50cy9rdi1tYWluLXRhYmxlL2t2LW1haW4tdGFibGUuY29tcG9uZW50J1xyXG5cclxuLy9TZXJ2aWNlc1xyXG5leHBvcnQgKiBmcm9tICcuL2xpYi9mYWN0b3JpZXMvZm9ybS1mYWN0b3J5LnNlcnZpY2UnO1xyXG5leHBvcnQgKiBmcm9tICcuL2xpYi9zZXJ2aWNlcy9uYXZpZ2F0aW9uLnNlcnZpY2UnO1xyXG5leHBvcnQgKiBmcm9tICcuL2xpYi9zZXJ2aWNlcy9ub3RpZmljYXRpb24uc2VydmljZSc7XHJcbmV4cG9ydCAqIGZyb20gJy4vbGliL3NlcnZpY2VzL3Nlc3Npb24uc2VydmljZSc7XHJcbmV4cG9ydCAqIGZyb20gJy4vbGliL3NlcnZpY2VzL2F1dGgtaW50ZXJjZXB0b3Iuc2VydmljZSc7XHJcbmV4cG9ydCAqIGZyb20gJy4vbGliL3NlcnZpY2VzL2F1dGguc2VydmljZSc7XHJcblxyXG4vL0NvbmZpZ3NcclxuZXhwb3J0ICogZnJvbSAnLi9saWIvaW50ZXJmYWNlcy9mb3JtLWZpZWxkLmNvbmZpZyc7XHJcblxyXG4vL0hlbHBlcnNcclxuZXhwb3J0ICogZnJvbSAnLi9saWIvaGVscGVycy9hdXRoLmhlbHBlcidcclxuXHJcbi8vVmFsaWRhdG9yc1xyXG5leHBvcnQgKiBmcm9tICcuL2xpYi92YWxpZGF0b3JzL3Bhc3N3b3JkLW1pc3NtYXRjaC52YWxpZGF0b3InXHJcblxyXG4vL0VudW1zXHJcbmV4cG9ydCAqIGZyb20gJy4vbGliL2VudW1zL2FjdGlvbi10eXBlLmVudW0nXHJcblxyXG4vLyBJbmplY3Rpb24gVG9rZW5zXHJcbmV4cG9ydCAqIGZyb20gJy4vbGliL2luamVjdGlvbi10b2tlbnMvYXV0aC1jb25maWcnOyJdfQ==
|