cat-qw-lib 2.6.47 → 2.6.49
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/fesm2022/cat-qw-lib.mjs
CHANGED
|
@@ -33,7 +33,7 @@ import * as i7 from 'primeng/messages';
|
|
|
33
33
|
import { MessagesModule } from 'primeng/messages';
|
|
34
34
|
import * as i4$2 from 'primeng/tooltip';
|
|
35
35
|
import { TooltipModule } from 'primeng/tooltip';
|
|
36
|
-
import { tap, map as map$1, catchError, debounceTime as debounceTime$1, distinctUntilChanged as distinctUntilChanged$1, switchMap } from 'rxjs/operators';
|
|
36
|
+
import { tap, map as map$1, catchError, debounceTime as debounceTime$1, distinctUntilChanged as distinctUntilChanged$1, switchMap, finalize } from 'rxjs/operators';
|
|
37
37
|
import * as i1$1 from '@angular/common/http';
|
|
38
38
|
import { HttpClientModule, HttpHeaders } from '@angular/common/http';
|
|
39
39
|
import * as i3$4 from '@angular/router';
|
|
@@ -2650,7 +2650,7 @@ class QueueFilterDropdownService extends BaseService {
|
|
|
2650
2650
|
*/
|
|
2651
2651
|
getUnderwritersList(searchKey = SHARED.EMPTY) {
|
|
2652
2652
|
const url = `${this.apiUrl}${ROUTES.GET_ALL_UNDERWRITER_TEAMLEAD}${SHARED.QUESTION_MARK}searchKey${SHARED.EQUALS}${encodeURIComponent(searchKey)}`;
|
|
2653
|
-
return this.http.get(url, { headers: { 'Authorization': 'Bearer ' + '
|
|
2653
|
+
return this.http.get(url, { headers: { 'Authorization': 'Bearer ' + '1b0ab0db-ac66-46f7-bba2-d87390aa253b' } }).pipe(map$1((response) => {
|
|
2654
2654
|
// Transform API response to match component's expected format
|
|
2655
2655
|
const underwriters = Array.isArray(response) ? response : (response?.data || []);
|
|
2656
2656
|
return underwriters.map((uw) => ({
|
|
@@ -7114,7 +7114,7 @@ class QueueService extends BaseService {
|
|
|
7114
7114
|
}
|
|
7115
7115
|
}
|
|
7116
7116
|
// Use POST method with body containing underwriterIds and unassigned
|
|
7117
|
-
return this.http.post(url, body, { headers: { 'Authorization': 'Bearer ' + '
|
|
7117
|
+
return this.http.post(url, body, { headers: { 'Authorization': 'Bearer ' + '1b0ab0db-ac66-46f7-bba2-d87390aa253b' } }).pipe(tap$1((response) => {
|
|
7118
7118
|
if (useCache) {
|
|
7119
7119
|
this.recordCache.set(cacheKey, { data: response, timestamp: Date.now() });
|
|
7120
7120
|
}
|
|
@@ -7132,7 +7132,7 @@ class QueueService extends BaseService {
|
|
|
7132
7132
|
* @returns {Observable<any>} Observable emitting the fetched queue entities
|
|
7133
7133
|
*/
|
|
7134
7134
|
getAllQueue() {
|
|
7135
|
-
const headers = new HttpHeaders().set('Authorization', 'Bearer
|
|
7135
|
+
const headers = new HttpHeaders().set('Authorization', 'Bearer 1b0ab0db-ac66-46f7-bba2-d87390aa253b');
|
|
7136
7136
|
return this.http.get(this.apiUrl + this._pathName, { headers }).pipe(tap$1((entities) => { this.queueStore.set(entities); }));
|
|
7137
7137
|
}
|
|
7138
7138
|
static ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "19.2.5", ngImport: i0, type: QueueService, deps: [{ token: QueueStore$1 }, { token: i1$1.HttpClient }, { token: AppConfigService }, { token: ListService }], target: i0.ɵɵFactoryTarget.Injectable });
|
|
@@ -8018,7 +8018,8 @@ class QueueContainerComponent extends BaseContainerComponent {
|
|
|
8018
8018
|
selectedQueue;
|
|
8019
8019
|
currentSearchTerm = '';
|
|
8020
8020
|
selectedRows = [];
|
|
8021
|
-
loading
|
|
8021
|
+
/** Only while loading the queue list (sidebar); never tied to record pagination. */
|
|
8022
|
+
queueListLoading = false;
|
|
8022
8023
|
error = null;
|
|
8023
8024
|
filteredQueueData = [];
|
|
8024
8025
|
selectedStatus = 'active';
|
|
@@ -8124,7 +8125,8 @@ class QueueContainerComponent extends BaseContainerComponent {
|
|
|
8124
8125
|
const { page, limit } = this.queueBusinessService.calculatePagination(event);
|
|
8125
8126
|
// Force refresh on explicit paginator navigation so returning to page 1
|
|
8126
8127
|
// (often already cached from initial load) still triggers an API call.
|
|
8127
|
-
|
|
8128
|
+
// Show table skeleton while loading the next page (left nav stays visible).
|
|
8129
|
+
this.getQueueRecordsData(page, limit, true, false);
|
|
8128
8130
|
}
|
|
8129
8131
|
onFilterApplied(record) {
|
|
8130
8132
|
this.queryString = this.queueBusinessService.buildQueryString(record);
|
|
@@ -8200,18 +8202,19 @@ class QueueContainerComponent extends BaseContainerComponent {
|
|
|
8200
8202
|
});
|
|
8201
8203
|
}
|
|
8202
8204
|
getAllQueueList(preferredQueueId) {
|
|
8203
|
-
this.
|
|
8205
|
+
this.queueListLoading = true;
|
|
8204
8206
|
this.error = null;
|
|
8205
8207
|
this.queueService.getAllQueue().subscribe({
|
|
8206
8208
|
next: (res) => {
|
|
8207
8209
|
this.queueList = Array.isArray(res) ? res : (res.data || res);
|
|
8208
8210
|
this.baseStore.setQueueList(this.queueList);
|
|
8209
8211
|
this.filterQueues(preferredQueueId);
|
|
8210
|
-
this.
|
|
8212
|
+
this.queueListLoading = false;
|
|
8211
8213
|
},
|
|
8212
8214
|
error: (err) => {
|
|
8213
8215
|
this.error = ERROR.UNABLE_TO_FETCH_QUEUE_LIST;
|
|
8214
|
-
this.
|
|
8216
|
+
this.queueListLoading = false;
|
|
8217
|
+
this.isShowSkeleton = false;
|
|
8215
8218
|
console.error(ERROR.UNABLE_TO_FETCH_QUEUE_LIST, err);
|
|
8216
8219
|
}
|
|
8217
8220
|
});
|
|
@@ -8232,6 +8235,7 @@ class QueueContainerComponent extends BaseContainerComponent {
|
|
|
8232
8235
|
}
|
|
8233
8236
|
else {
|
|
8234
8237
|
console.warn(ERROR.NO_QUEUE_FOUND_WITH_ID);
|
|
8238
|
+
this.isShowSkeleton = false;
|
|
8235
8239
|
}
|
|
8236
8240
|
}
|
|
8237
8241
|
resetSorting() {
|
|
@@ -8254,32 +8258,49 @@ class QueueContainerComponent extends BaseContainerComponent {
|
|
|
8254
8258
|
this.handleQueueData(this.selectedQueueId);
|
|
8255
8259
|
}
|
|
8256
8260
|
}
|
|
8261
|
+
else {
|
|
8262
|
+
this.selectedQueueId = null;
|
|
8263
|
+
this.selectedQueue = undefined;
|
|
8264
|
+
this.isShowSkeleton = false;
|
|
8265
|
+
}
|
|
8257
8266
|
}
|
|
8258
|
-
getQueueRecordsData(page, limit, forceRefresh = false) {
|
|
8259
|
-
this.isShowSkeleton = true;
|
|
8267
|
+
getQueueRecordsData(page, limit, forceRefresh = false, softTransition = false) {
|
|
8260
8268
|
if (!this.selectedQueue?.apiConfig) {
|
|
8261
|
-
console.
|
|
8269
|
+
console.warn('Queue data or apiConfig not available');
|
|
8270
|
+
this.isShowSkeleton = false;
|
|
8271
|
+
if (!this.table) {
|
|
8272
|
+
this.table = this.tableBuilder.buildSecondaryTable([], undefined, undefined, undefined, {
|
|
8273
|
+
isReferredQueue: this.isReferredQueue(this.selectedQueue)
|
|
8274
|
+
});
|
|
8275
|
+
}
|
|
8276
|
+
this.metaData = {
|
|
8277
|
+
totalItems: 0,
|
|
8278
|
+
currentPage: page || this.currentPage,
|
|
8279
|
+
itemsPerPage: limit || this.currentLimit,
|
|
8280
|
+
totalPages: 0
|
|
8281
|
+
};
|
|
8262
8282
|
return;
|
|
8263
8283
|
}
|
|
8264
8284
|
const targetPage = page || this.currentPage;
|
|
8265
8285
|
const targetLimit = limit || this.currentLimit;
|
|
8266
|
-
|
|
8267
|
-
|
|
8268
|
-
|
|
8269
|
-
|
|
8270
|
-
|
|
8271
|
-
|
|
8272
|
-
|
|
8273
|
-
|
|
8274
|
-
|
|
8275
|
-
|
|
8286
|
+
if (!softTransition) {
|
|
8287
|
+
// Full refresh: skeleton + empty table (new queue, search, filters, sort, initial load).
|
|
8288
|
+
this.isShowSkeleton = true;
|
|
8289
|
+
if (this.table) {
|
|
8290
|
+
this.table = { ...this.table, records: [] };
|
|
8291
|
+
}
|
|
8292
|
+
else {
|
|
8293
|
+
this.table = this.tableBuilder.buildSecondaryTable([], undefined, undefined, undefined, {
|
|
8294
|
+
isReferredQueue: this.isReferredQueue(this.selectedQueue)
|
|
8295
|
+
});
|
|
8296
|
+
}
|
|
8297
|
+
this.metaData = {
|
|
8298
|
+
totalItems: 0,
|
|
8299
|
+
currentPage: targetPage,
|
|
8300
|
+
itemsPerPage: targetLimit,
|
|
8301
|
+
totalPages: 0
|
|
8302
|
+
};
|
|
8276
8303
|
}
|
|
8277
|
-
this.metaData = {
|
|
8278
|
-
totalItems: 0,
|
|
8279
|
-
currentPage: targetPage,
|
|
8280
|
-
itemsPerPage: targetLimit,
|
|
8281
|
-
totalPages: 0
|
|
8282
|
-
};
|
|
8283
8304
|
// Capture snapshot so we can ignore stale responses when user changes queue/search/page before this request completes
|
|
8284
8305
|
const requestSnapshot = {
|
|
8285
8306
|
queueId: this.selectedQueueId,
|
|
@@ -8300,16 +8321,20 @@ class QueueContainerComponent extends BaseContainerComponent {
|
|
|
8300
8321
|
});
|
|
8301
8322
|
filterQueryString = existingParams.toString();
|
|
8302
8323
|
}
|
|
8303
|
-
this.queueService.getPaginatedQueueRecords(this.selectedQueue.apiConfig, this.currentSearchTerm, targetPage, targetLimit, filterQueryString, this.sortBy, this.getSortOrderString(this.sortOrder), !forceRefresh).
|
|
8324
|
+
this.queueService.getPaginatedQueueRecords(this.selectedQueue.apiConfig, this.currentSearchTerm, targetPage, targetLimit, filterQueryString, this.sortBy, this.getSortOrderString(this.sortOrder), !forceRefresh).pipe(finalize(() => {
|
|
8325
|
+
if (this.latestRequestSnapshot === requestSnapshot) {
|
|
8326
|
+
this.isShowSkeleton = false;
|
|
8327
|
+
}
|
|
8328
|
+
})).subscribe({
|
|
8304
8329
|
next: (res) => {
|
|
8305
8330
|
// Ignore response if a newer request was already sent (e.g. user cleared and typed a new search)
|
|
8306
8331
|
if (this.latestRequestSnapshot !== requestSnapshot) {
|
|
8307
8332
|
return;
|
|
8308
8333
|
}
|
|
8309
|
-
const
|
|
8334
|
+
const raw = res?.data ?? res?.paginatedResults ?? res;
|
|
8335
|
+
const apiData = Array.isArray(raw) ? raw : [];
|
|
8310
8336
|
if (apiData && apiData.length > 0) {
|
|
8311
8337
|
this.isShowSkeleton = false;
|
|
8312
|
-
this.loading = false;
|
|
8313
8338
|
this.table = this.tableBuilder.buildSecondaryTable(apiData, undefined, undefined, undefined, {
|
|
8314
8339
|
isReferredQueue: this.isReferredQueue(this.selectedQueue)
|
|
8315
8340
|
});
|
|
@@ -8317,14 +8342,12 @@ class QueueContainerComponent extends BaseContainerComponent {
|
|
|
8317
8342
|
else if (this.table) {
|
|
8318
8343
|
this.table = { ...this.table, records: [] };
|
|
8319
8344
|
this.isShowSkeleton = false;
|
|
8320
|
-
this.loading = false;
|
|
8321
8345
|
}
|
|
8322
8346
|
else {
|
|
8323
8347
|
this.table = this.tableBuilder.buildSecondaryTable([], undefined, undefined, undefined, {
|
|
8324
8348
|
isReferredQueue: this.isReferredQueue(this.selectedQueue)
|
|
8325
8349
|
});
|
|
8326
8350
|
this.isShowSkeleton = false;
|
|
8327
|
-
this.loading = false;
|
|
8328
8351
|
}
|
|
8329
8352
|
this.currentPage = targetPage;
|
|
8330
8353
|
this.currentLimit = targetLimit;
|
|
@@ -8335,23 +8358,24 @@ class QueueContainerComponent extends BaseContainerComponent {
|
|
|
8335
8358
|
if (this.latestRequestSnapshot !== requestSnapshot) {
|
|
8336
8359
|
return;
|
|
8337
8360
|
}
|
|
8338
|
-
this.loading = false;
|
|
8339
8361
|
this.isShowSkeleton = false;
|
|
8340
8362
|
console.error("Error fetching data:", error);
|
|
8341
|
-
if (
|
|
8342
|
-
this.table
|
|
8343
|
-
|
|
8344
|
-
|
|
8345
|
-
|
|
8346
|
-
|
|
8347
|
-
|
|
8363
|
+
if (!softTransition) {
|
|
8364
|
+
if (this.table) {
|
|
8365
|
+
this.table = { ...this.table, records: [] };
|
|
8366
|
+
}
|
|
8367
|
+
else {
|
|
8368
|
+
this.table = this.tableBuilder.buildSecondaryTable([], undefined, undefined, undefined, {
|
|
8369
|
+
isReferredQueue: this.isReferredQueue(this.selectedQueue)
|
|
8370
|
+
});
|
|
8371
|
+
}
|
|
8372
|
+
this.metaData = {
|
|
8373
|
+
totalItems: 0,
|
|
8374
|
+
currentPage: targetPage,
|
|
8375
|
+
itemsPerPage: targetLimit,
|
|
8376
|
+
totalPages: 0
|
|
8377
|
+
};
|
|
8348
8378
|
}
|
|
8349
|
-
this.metaData = {
|
|
8350
|
-
totalItems: 0,
|
|
8351
|
-
currentPage: targetPage,
|
|
8352
|
-
itemsPerPage: targetLimit,
|
|
8353
|
-
totalPages: 0
|
|
8354
|
-
};
|
|
8355
8379
|
}
|
|
8356
8380
|
});
|
|
8357
8381
|
}
|
|
@@ -8411,11 +8435,11 @@ class QueueContainerComponent extends BaseContainerComponent {
|
|
|
8411
8435
|
}
|
|
8412
8436
|
}
|
|
8413
8437
|
static ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "19.2.5", ngImport: i0, type: QueueContainerComponent, deps: [{ token: QueueStore$1 }, { token: QueueService }, { token: BaseStore }, { token: QueueBusinessService }, { token: QueueRecordTableBuilderService }, { token: QueueFilterDropdownService }, { token: BaseQuery }], target: i0.ɵɵFactoryTarget.Component });
|
|
8414
|
-
static ɵcmp = i0.ɵɵngDeclareComponent({ minVersion: "17.0.0", version: "19.2.5", type: QueueContainerComponent, isStandalone: false, selector: "lib-queue-container", inputs: { placeholder: "placeholder", selectedRowsInput: "selectedRowsInput" }, outputs: { assignmentComplete: "assignmentComplete", userAssigned: "userAssigned", selectedRowsData: "selectedRowsData", assignmentDataReady: "assignmentDataReady", rowClick: "rowClick", selectionChange: "selectionChange", isAllRowSelected: "isAllRowSelected", excludedApplicationIds: "excludedApplicationIds" }, viewQueries: [{ propertyName: "filterDropdown", first: true, predicate: ["filterDropdown"], descendants: true }], usesInheritance: true, ngImport: i0, template: "<div class=\"container grid m-0 h-full\">\r\n <div class=\"col-12 xl:col-2 md:col-12 py-0 pl-0 h-full\">\r\n <lib-skeleton *ngIf=\"
|
|
8438
|
+
static ɵcmp = i0.ɵɵngDeclareComponent({ minVersion: "17.0.0", version: "19.2.5", type: QueueContainerComponent, isStandalone: false, selector: "lib-queue-container", inputs: { placeholder: "placeholder", selectedRowsInput: "selectedRowsInput" }, outputs: { assignmentComplete: "assignmentComplete", userAssigned: "userAssigned", selectedRowsData: "selectedRowsData", assignmentDataReady: "assignmentDataReady", rowClick: "rowClick", selectionChange: "selectionChange", isAllRowSelected: "isAllRowSelected", excludedApplicationIds: "excludedApplicationIds" }, viewQueries: [{ propertyName: "filterDropdown", first: true, predicate: ["filterDropdown"], descendants: true }], usesInheritance: true, ngImport: i0, template: "<div class=\"container grid m-0 h-full\">\r\n <div class=\"col-12 xl:col-2 md:col-12 py-0 pl-0 h-full\">\r\n <lib-skeleton *ngIf=\"queueListLoading\" [isAllowCard]=\"true\" [count]=\"5\" [width]=\"'100%'\" [height]=\"'4.5rem'\"></lib-skeleton>\r\n @if(!queueListLoading){\r\n <div class=\"queue-list-container-wrapper p-0\">\r\n <app-queue-list\r\n [queueData]=\"filteredQueueData\"\r\n [selectedQueueId]=\"selectedQueueId\"\r\n [selectedStatus]=\"selectedStatus\"\r\n [userRole]=\"userRole\"\r\n [showQueueDataForm]=\"true\"\r\n (queueSelected)=\"onQueueSelected($event)\"\r\n (statusChanged)=\"onStatusChanged($event)\"\r\n (insertQueueRequested)=\"onInsertQueueRequested()\"\r\n ></app-queue-list>\r\n </div>\r\n }\r\n </div>\r\n <div class=\"col-12 xl:col-10 md:col-12 py-0 pr-0 h-full\">\r\n @if(selectedQueue){\r\n <div class=\"queue-application-container-wrapper h-full\">\r\n <div class=\"grid m-0 justify-content-between align-items-center mb-3\">\r\n <div class=\"col-8 p-0 flex align-items-center\">\r\n <div class=\"col-7 p-0 mr-3\">\r\n <queue-search \r\n [placeholder]=\"placeholder\"\r\n [searchText]=\"searchText\"\r\n (searchInputChanged)=\"onSearchInputChanged($event)\"\r\n (searchRequested)=\"onSearchRequested($event)\"\r\n (searchCleared)=\"onSearchCleared()\">\r\n </queue-search>\r\n </div>\r\n <div>\r\n <lib-queue-filter-dropdown \r\n #filterDropdown\r\n [appliedFilters]=\"appliedFilters\"\r\n (filterApplied)=\"onFilterDropdownApplied($event)\"\r\n (filtersCleared)=\"onFiltersCleared()\">\r\n </lib-queue-filter-dropdown>\r\n </div>\r\n <div *ngIf=\"hasActiveFilters\">\r\n <button \r\n class=\"clear-filters-btn\"\r\n type=\"button\"\r\n (click)=\"onClearAllFilters()\">\r\n Clear <i class=\"pi pi-times ml-2\"></i>\r\n </button>\r\n </div>\r\n </div>\r\n \r\n <div class=\"flex align-items-center gap-3 col-3 py-0 pl-0 justify-content-end\">\r\n <ng-content select=\"[user-dropdown]\"></ng-content>\r\n </div>\r\n </div>\r\n\r\n <div class=\"animation-duration-500 associated-list queue-table-container-wrapper custom-scroll mb-0 p-0\">\r\n \r\n <app-queue-record-table\r\n [table]=\"table\"\r\n [metaData]=\"metaData\"\r\n [selectedRows]=\"selectedRows\"\r\n [resetSort]=\"resetSort\"\r\n [isShowSkeleton]=\"isShowSkeleton\"\r\n [selectedQueue]=\"selectedQueue\"\r\n (selectionChange)=\"onTableSelectionChange($event)\"\r\n (selectedRowsData)=\"onTableSelectionChange($event)\"\r\n (assignmentDataReady)=\"onAssignmentDataReady($event)\"\r\n (rowClick)=\"onTableRowClick($event)\"\r\n (paginationChanged)=\"onPaginationChanged($event)\"\r\n (filterApplied)=\"onFilterApplied($event)\"\r\n (sortApplied)=\"onSortApplied($event)\">\r\n </app-queue-record-table>\r\n </div>\r\n </div>\r\n }\r\n </div>\r\n\r\n </div>", styles: [":host{display:block;height:100%;padding-top:14px}.queue-table-container-wrapper{height:calc(100% - 58px)}.queue-list-container-wrapper{background-color:transparent}.queue-application-container-wrapper{background-color:#fff;border-radius:15px;padding:20px}.clear-filters-btn{background:none;border:1px solid #e5e7eb;color:#64748b;font-size:.85rem;font-weight:500;cursor:pointer;margin-left:.5rem;display:inline-flex;align-items:center;padding:6px 12px;border-radius:8px;transition:all .2s ease}.clear-filters-btn:hover{background:#f8fafc;border-color:#cbd5e1;color:#ef4444}.clear-filters-btn i{font-size:.75rem}\n"], dependencies: [{ kind: "directive", type: i1.NgIf, selector: "[ngIf]", inputs: ["ngIf", "ngIfThen", "ngIfElse"] }, { kind: "component", type: SkeletonComponent, selector: "lib-skeleton", inputs: ["count", "columns", "width", "height", "isAllowCard"] }, { kind: "component", type: QueueSearchComponent, selector: "queue-search", inputs: ["searchText", "placeholder", "debounceTime"], outputs: ["searchInputChanged", "searchRequested", "searchCleared"] }, { kind: "component", type: QueueListComponent, selector: "app-queue-list", inputs: ["queueData", "selectedQueueId", "selectedStatus", "userRole", "showQueueDataForm"], outputs: ["queueSelected", "statusChanged", "insertQueueRequested"] }, { kind: "component", type: QueueRecordTableComponent, selector: "app-queue-record-table", inputs: ["table", "metaData", "loading", "selectedRows", "resetSort", "isShowSkeleton", "selectedQueue"], outputs: ["selectionChange", "selectedRowsData", "assignmentDataReady", "rowClick", "paginationChanged", "filterApplied", "sortApplied"] }, { kind: "component", type: QueueFilterDropdownComponent, selector: "lib-queue-filter-dropdown", inputs: ["appliedFilters"], outputs: ["filterApplied", "filtersCleared"] }] });
|
|
8415
8439
|
}
|
|
8416
8440
|
i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "19.2.5", ngImport: i0, type: QueueContainerComponent, decorators: [{
|
|
8417
8441
|
type: Component,
|
|
8418
|
-
args: [{ selector: 'lib-queue-container', standalone: false, template: "<div class=\"container grid m-0 h-full\">\r\n <div class=\"col-12 xl:col-2 md:col-12 py-0 pl-0 h-full\">\r\n <lib-skeleton *ngIf=\"
|
|
8442
|
+
args: [{ selector: 'lib-queue-container', standalone: false, template: "<div class=\"container grid m-0 h-full\">\r\n <div class=\"col-12 xl:col-2 md:col-12 py-0 pl-0 h-full\">\r\n <lib-skeleton *ngIf=\"queueListLoading\" [isAllowCard]=\"true\" [count]=\"5\" [width]=\"'100%'\" [height]=\"'4.5rem'\"></lib-skeleton>\r\n @if(!queueListLoading){\r\n <div class=\"queue-list-container-wrapper p-0\">\r\n <app-queue-list\r\n [queueData]=\"filteredQueueData\"\r\n [selectedQueueId]=\"selectedQueueId\"\r\n [selectedStatus]=\"selectedStatus\"\r\n [userRole]=\"userRole\"\r\n [showQueueDataForm]=\"true\"\r\n (queueSelected)=\"onQueueSelected($event)\"\r\n (statusChanged)=\"onStatusChanged($event)\"\r\n (insertQueueRequested)=\"onInsertQueueRequested()\"\r\n ></app-queue-list>\r\n </div>\r\n }\r\n </div>\r\n <div class=\"col-12 xl:col-10 md:col-12 py-0 pr-0 h-full\">\r\n @if(selectedQueue){\r\n <div class=\"queue-application-container-wrapper h-full\">\r\n <div class=\"grid m-0 justify-content-between align-items-center mb-3\">\r\n <div class=\"col-8 p-0 flex align-items-center\">\r\n <div class=\"col-7 p-0 mr-3\">\r\n <queue-search \r\n [placeholder]=\"placeholder\"\r\n [searchText]=\"searchText\"\r\n (searchInputChanged)=\"onSearchInputChanged($event)\"\r\n (searchRequested)=\"onSearchRequested($event)\"\r\n (searchCleared)=\"onSearchCleared()\">\r\n </queue-search>\r\n </div>\r\n <div>\r\n <lib-queue-filter-dropdown \r\n #filterDropdown\r\n [appliedFilters]=\"appliedFilters\"\r\n (filterApplied)=\"onFilterDropdownApplied($event)\"\r\n (filtersCleared)=\"onFiltersCleared()\">\r\n </lib-queue-filter-dropdown>\r\n </div>\r\n <div *ngIf=\"hasActiveFilters\">\r\n <button \r\n class=\"clear-filters-btn\"\r\n type=\"button\"\r\n (click)=\"onClearAllFilters()\">\r\n Clear <i class=\"pi pi-times ml-2\"></i>\r\n </button>\r\n </div>\r\n </div>\r\n \r\n <div class=\"flex align-items-center gap-3 col-3 py-0 pl-0 justify-content-end\">\r\n <ng-content select=\"[user-dropdown]\"></ng-content>\r\n </div>\r\n </div>\r\n\r\n <div class=\"animation-duration-500 associated-list queue-table-container-wrapper custom-scroll mb-0 p-0\">\r\n \r\n <app-queue-record-table\r\n [table]=\"table\"\r\n [metaData]=\"metaData\"\r\n [selectedRows]=\"selectedRows\"\r\n [resetSort]=\"resetSort\"\r\n [isShowSkeleton]=\"isShowSkeleton\"\r\n [selectedQueue]=\"selectedQueue\"\r\n (selectionChange)=\"onTableSelectionChange($event)\"\r\n (selectedRowsData)=\"onTableSelectionChange($event)\"\r\n (assignmentDataReady)=\"onAssignmentDataReady($event)\"\r\n (rowClick)=\"onTableRowClick($event)\"\r\n (paginationChanged)=\"onPaginationChanged($event)\"\r\n (filterApplied)=\"onFilterApplied($event)\"\r\n (sortApplied)=\"onSortApplied($event)\">\r\n </app-queue-record-table>\r\n </div>\r\n </div>\r\n }\r\n </div>\r\n\r\n </div>", styles: [":host{display:block;height:100%;padding-top:14px}.queue-table-container-wrapper{height:calc(100% - 58px)}.queue-list-container-wrapper{background-color:transparent}.queue-application-container-wrapper{background-color:#fff;border-radius:15px;padding:20px}.clear-filters-btn{background:none;border:1px solid #e5e7eb;color:#64748b;font-size:.85rem;font-weight:500;cursor:pointer;margin-left:.5rem;display:inline-flex;align-items:center;padding:6px 12px;border-radius:8px;transition:all .2s ease}.clear-filters-btn:hover{background:#f8fafc;border-color:#cbd5e1;color:#ef4444}.clear-filters-btn i{font-size:.75rem}\n"] }]
|
|
8419
8443
|
}], ctorParameters: () => [{ type: QueueStore$1 }, { type: QueueService }, { type: BaseStore }, { type: QueueBusinessService }, { type: QueueRecordTableBuilderService }, { type: QueueFilterDropdownService }, { type: BaseQuery }], propDecorators: { placeholder: [{
|
|
8420
8444
|
type: Input
|
|
8421
8445
|
}], filterDropdown: [{
|