@apipass/containers 1.0.107 → 1.0.109
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/apipass-infinite-scroll/apipass-infinite-scroll.component.d.ts +55 -0
- package/containers.module.d.ts +16 -13
- package/esm2022/apipass-infinite-scroll/apipass-infinite-scroll.component.mjs +189 -0
- package/esm2022/containers.module.mjs +21 -8
- package/esm2022/public-api.mjs +2 -1
- package/fesm2022/apipass-containers.mjs +206 -9
- package/fesm2022/apipass-containers.mjs.map +1 -1
- package/package.json +6 -4
- package/public-api.d.ts +1 -0
|
@@ -0,0 +1,55 @@
|
|
|
1
|
+
import { EventEmitter, OnDestroy, OnInit, TemplateRef } from '@angular/core';
|
|
2
|
+
import * as i0 from "@angular/core";
|
|
3
|
+
export interface NextPageEvent {
|
|
4
|
+
currentPage: number;
|
|
5
|
+
nextPage: number;
|
|
6
|
+
}
|
|
7
|
+
export interface PreviousPageEvent {
|
|
8
|
+
currentPage: number;
|
|
9
|
+
previousPage: number;
|
|
10
|
+
}
|
|
11
|
+
export interface RefreshItemsEvent {
|
|
12
|
+
continueOnTheSamePage?: boolean;
|
|
13
|
+
}
|
|
14
|
+
export declare class ApipassInfiniteScrollComponent implements OnInit, OnDestroy {
|
|
15
|
+
private subscriptions;
|
|
16
|
+
private readonly _currentId;
|
|
17
|
+
get getCurrentId(): string;
|
|
18
|
+
private _items;
|
|
19
|
+
private _currentPage;
|
|
20
|
+
set currentPage(page: number);
|
|
21
|
+
get currentPage(): number;
|
|
22
|
+
set items(items: any[]);
|
|
23
|
+
get items(): any[];
|
|
24
|
+
pageSize: number;
|
|
25
|
+
loading: boolean;
|
|
26
|
+
filter: Record<string, any>;
|
|
27
|
+
nextPageFn: (params: any) => Promise<any[]>;
|
|
28
|
+
previousPageFn: (params: any) => Promise<any[]>;
|
|
29
|
+
refreshItems: EventEmitter<RefreshItemsEvent>;
|
|
30
|
+
showEmptyList: boolean;
|
|
31
|
+
emptyListMessage: string;
|
|
32
|
+
infiniteScrollDownDistance: number;
|
|
33
|
+
infiniteScrollUpDistance: number;
|
|
34
|
+
infiniteScrollThrottle: number;
|
|
35
|
+
maxHeight: string;
|
|
36
|
+
minHeight: string;
|
|
37
|
+
onNextPage: EventEmitter<NextPageEvent>;
|
|
38
|
+
onPreviousPage: EventEmitter<PreviousPageEvent>;
|
|
39
|
+
loadingChange: EventEmitter<boolean>;
|
|
40
|
+
currentPageChange: EventEmitter<number>;
|
|
41
|
+
itemsTemplate: TemplateRef<any>;
|
|
42
|
+
private isFirstScrollToTop;
|
|
43
|
+
protected loadingNextPage: boolean;
|
|
44
|
+
protected loadingPreviousPage: boolean;
|
|
45
|
+
constructor();
|
|
46
|
+
ngOnInit(): void;
|
|
47
|
+
ngOnDestroy(): void;
|
|
48
|
+
loadingPages(): boolean;
|
|
49
|
+
showListLoader(): boolean;
|
|
50
|
+
protected nextPage(): Promise<void>;
|
|
51
|
+
protected previousPage(): Promise<void>;
|
|
52
|
+
private scrollToLastElementBeforePreviousPage;
|
|
53
|
+
static ɵfac: i0.ɵɵFactoryDeclaration<ApipassInfiniteScrollComponent, never>;
|
|
54
|
+
static ɵcmp: i0.ɵɵComponentDeclaration<ApipassInfiniteScrollComponent, "apipass-infinite-scroll-component", never, { "currentPage": { "alias": "currentPage"; "required": false; }; "items": { "alias": "items"; "required": false; }; "pageSize": { "alias": "pageSize"; "required": false; }; "loading": { "alias": "loading"; "required": false; }; "filter": { "alias": "filter"; "required": false; }; "nextPageFn": { "alias": "nextPageFn"; "required": false; }; "previousPageFn": { "alias": "previousPageFn"; "required": false; }; "refreshItems": { "alias": "refreshItems"; "required": false; }; "showEmptyList": { "alias": "showEmptyList"; "required": false; }; "emptyListMessage": { "alias": "emptyListMessage"; "required": false; }; "infiniteScrollDownDistance": { "alias": "infiniteScrollDownDistance"; "required": false; }; "infiniteScrollUpDistance": { "alias": "infiniteScrollUpDistance"; "required": false; }; "infiniteScrollThrottle": { "alias": "infiniteScrollThrottle"; "required": false; }; "maxHeight": { "alias": "maxHeight"; "required": false; }; "minHeight": { "alias": "minHeight"; "required": false; }; }, { "onNextPage": "onNextPage"; "onPreviousPage": "onPreviousPage"; "loadingChange": "loadingChange"; "currentPageChange": "currentPageChange"; }, ["itemsTemplate"], never, false, never>;
|
|
55
|
+
}
|
package/containers.module.d.ts
CHANGED
|
@@ -5,20 +5,23 @@ import * as i3 from "./breadcrumb/breadcrumb.component";
|
|
|
5
5
|
import * as i4 from "./configuration-page-title/configuration-page-title.component";
|
|
6
6
|
import * as i5 from "./duration/duration-timeline/duration-timeline.component";
|
|
7
7
|
import * as i6 from "./duration/duration-progressbar/duration-progressbar.component";
|
|
8
|
-
import * as i7 from "
|
|
9
|
-
import * as i8 from "@angular/
|
|
10
|
-
import * as i9 from "@angular/
|
|
11
|
-
import * as i10 from "@
|
|
12
|
-
import * as i11 from "@apipass/
|
|
13
|
-
import * as i12 from "
|
|
14
|
-
import * as i13 from "
|
|
15
|
-
import * as i14 from "@angular/material/
|
|
16
|
-
import * as i15 from "@angular/material/
|
|
17
|
-
import * as i16 from "@angular/material/
|
|
18
|
-
import * as i17 from "@
|
|
19
|
-
import * as i18 from "@
|
|
8
|
+
import * as i7 from "./apipass-infinite-scroll/apipass-infinite-scroll.component";
|
|
9
|
+
import * as i8 from "@angular/common";
|
|
10
|
+
import * as i9 from "@angular/router";
|
|
11
|
+
import * as i10 from "@angular/forms";
|
|
12
|
+
import * as i11 from "@apipass/icons";
|
|
13
|
+
import * as i12 from "@apipass/buttons";
|
|
14
|
+
import * as i13 from "ngx-scrollbar";
|
|
15
|
+
import * as i14 from "@angular/material/form-field";
|
|
16
|
+
import * as i15 from "@angular/material/icon";
|
|
17
|
+
import * as i16 from "@angular/material/input";
|
|
18
|
+
import * as i17 from "@angular/material/toolbar";
|
|
19
|
+
import * as i18 from "@apipass/pipes";
|
|
20
|
+
import * as i19 from "@angular/material/tooltip";
|
|
21
|
+
import * as i20 from "ngx-infinite-scroll";
|
|
22
|
+
import * as i21 from "@apipass/loaders";
|
|
20
23
|
export declare class ContainersModule {
|
|
21
24
|
static ɵfac: i0.ɵɵFactoryDeclaration<ContainersModule, never>;
|
|
22
|
-
static ɵmod: i0.ɵɵNgModuleDeclaration<ContainersModule, [typeof i1.CentralizedContainerComponent, typeof i2.ConfigurationPageComponent, typeof i3.BreadcrumbComponent, typeof i4.ConfigurationPageTitleComponent, typeof i5.DurationTimelineComponent, typeof i6.DurationProgressbarComponent], [typeof
|
|
25
|
+
static ɵmod: i0.ɵɵNgModuleDeclaration<ContainersModule, [typeof i1.CentralizedContainerComponent, typeof i2.ConfigurationPageComponent, typeof i3.BreadcrumbComponent, typeof i4.ConfigurationPageTitleComponent, typeof i5.DurationTimelineComponent, typeof i6.DurationProgressbarComponent, typeof i7.ApipassInfiniteScrollComponent], [typeof i8.CommonModule, typeof i9.RouterModule, typeof i10.FormsModule, typeof i10.ReactiveFormsModule, typeof i11.IconsModule, typeof i12.ButtonsModule, typeof i13.NgScrollbarModule, typeof i14.MatFormFieldModule, typeof i15.MatIconModule, typeof i16.MatInputModule, typeof i17.MatToolbarModule, typeof i18.PipeModule, typeof i19.MatTooltipModule, typeof i20.InfiniteScrollModule, typeof i21.LoadersModule], [typeof i1.CentralizedContainerComponent, typeof i2.ConfigurationPageComponent, typeof i3.BreadcrumbComponent, typeof i4.ConfigurationPageTitleComponent, typeof i5.DurationTimelineComponent, typeof i6.DurationProgressbarComponent, typeof i7.ApipassInfiniteScrollComponent]>;
|
|
23
26
|
static ɵinj: i0.ɵɵInjectorDeclaration<ContainersModule>;
|
|
24
27
|
}
|
|
@@ -0,0 +1,189 @@
|
|
|
1
|
+
import { Component, ContentChild, EventEmitter, Input, Output, TemplateRef } from '@angular/core';
|
|
2
|
+
import * as i0 from "@angular/core";
|
|
3
|
+
import * as i1 from "@angular/common";
|
|
4
|
+
import * as i2 from "ngx-infinite-scroll";
|
|
5
|
+
import * as i3 from "@apipass/loaders";
|
|
6
|
+
class ApipassInfiniteScrollComponent {
|
|
7
|
+
subscriptions = [];
|
|
8
|
+
_currentId;
|
|
9
|
+
get getCurrentId() {
|
|
10
|
+
return this._currentId;
|
|
11
|
+
}
|
|
12
|
+
_items = [];
|
|
13
|
+
_currentPage = 1;
|
|
14
|
+
set currentPage(page) {
|
|
15
|
+
this._currentPage = page;
|
|
16
|
+
}
|
|
17
|
+
get currentPage() {
|
|
18
|
+
return this._currentPage;
|
|
19
|
+
}
|
|
20
|
+
set items(items) {
|
|
21
|
+
this._items = items;
|
|
22
|
+
}
|
|
23
|
+
get items() {
|
|
24
|
+
return this._items;
|
|
25
|
+
}
|
|
26
|
+
pageSize = 50;
|
|
27
|
+
loading;
|
|
28
|
+
filter = {};
|
|
29
|
+
nextPageFn;
|
|
30
|
+
previousPageFn;
|
|
31
|
+
refreshItems = new EventEmitter();
|
|
32
|
+
showEmptyList;
|
|
33
|
+
emptyListMessage = 'No Records Found...';
|
|
34
|
+
infiniteScrollDownDistance = 2;
|
|
35
|
+
infiniteScrollUpDistance = 0.5;
|
|
36
|
+
infiniteScrollThrottle = 150;
|
|
37
|
+
maxHeight = '100vh';
|
|
38
|
+
minHeight = '50px';
|
|
39
|
+
onNextPage = new EventEmitter();
|
|
40
|
+
onPreviousPage = new EventEmitter();
|
|
41
|
+
loadingChange = new EventEmitter();
|
|
42
|
+
currentPageChange = new EventEmitter();
|
|
43
|
+
itemsTemplate;
|
|
44
|
+
isFirstScrollToTop;
|
|
45
|
+
loadingNextPage;
|
|
46
|
+
loadingPreviousPage;
|
|
47
|
+
constructor() {
|
|
48
|
+
this._currentId = Math.random().toString(36).substring(2);
|
|
49
|
+
}
|
|
50
|
+
ngOnInit() {
|
|
51
|
+
this.subscriptions.push(this.refreshItems.subscribe(($event) => {
|
|
52
|
+
if (!$event?.continueOnTheSamePage) {
|
|
53
|
+
this._currentPage = 0;
|
|
54
|
+
this.currentPageChange.emit(this._currentPage);
|
|
55
|
+
}
|
|
56
|
+
}));
|
|
57
|
+
}
|
|
58
|
+
ngOnDestroy() {
|
|
59
|
+
this.subscriptions?.forEach(subscription => {
|
|
60
|
+
subscription.unsubscribe();
|
|
61
|
+
});
|
|
62
|
+
this.subscriptions = [];
|
|
63
|
+
}
|
|
64
|
+
loadingPages() {
|
|
65
|
+
return this.loadingNextPage || this.loadingPreviousPage;
|
|
66
|
+
}
|
|
67
|
+
showListLoader() {
|
|
68
|
+
return this.loading;
|
|
69
|
+
}
|
|
70
|
+
async nextPage() {
|
|
71
|
+
if (this.loadingPages()) {
|
|
72
|
+
return;
|
|
73
|
+
}
|
|
74
|
+
try {
|
|
75
|
+
this.loadingNextPage = true;
|
|
76
|
+
this.isFirstScrollToTop = true;
|
|
77
|
+
this.onNextPage.emit({
|
|
78
|
+
currentPage: this.currentPage,
|
|
79
|
+
nextPage: this.currentPage + 1
|
|
80
|
+
});
|
|
81
|
+
this.currentPage++;
|
|
82
|
+
const nextItems = await this.nextPageFn({
|
|
83
|
+
...this.filter,
|
|
84
|
+
page: this.currentPage,
|
|
85
|
+
pageSize: this.pageSize
|
|
86
|
+
});
|
|
87
|
+
if (nextItems?.length === 0) {
|
|
88
|
+
this.currentPage--;
|
|
89
|
+
return;
|
|
90
|
+
}
|
|
91
|
+
this.currentPageChange.emit(this._currentPage);
|
|
92
|
+
const needRemoveLastPageSizeItems = this.currentPage > 2;
|
|
93
|
+
this._items = needRemoveLastPageSizeItems ? this._items?.slice(this.pageSize).concat(nextItems) : this._items.concat(nextItems);
|
|
94
|
+
}
|
|
95
|
+
finally {
|
|
96
|
+
this.loadingNextPage = false;
|
|
97
|
+
}
|
|
98
|
+
}
|
|
99
|
+
async previousPage() {
|
|
100
|
+
if (this.loadingPages()) {
|
|
101
|
+
return;
|
|
102
|
+
}
|
|
103
|
+
try {
|
|
104
|
+
this.loadingPreviousPage = true;
|
|
105
|
+
this.currentPage = this.isFirstScrollToTop ? this.currentPage - 2 : this.currentPage - 1;
|
|
106
|
+
const needScrollToLastElementBeforePreviousPage = this.currentPage > 0;
|
|
107
|
+
this.currentPage = this.currentPage > 0 ? this.currentPage : 1;
|
|
108
|
+
const previousItems = await this.previousPageFn({
|
|
109
|
+
...this.filter,
|
|
110
|
+
page: this.currentPage,
|
|
111
|
+
pageSize: this.pageSize
|
|
112
|
+
});
|
|
113
|
+
if (previousItems?.length === 0) {
|
|
114
|
+
return;
|
|
115
|
+
}
|
|
116
|
+
this.currentPageChange.emit(this._currentPage);
|
|
117
|
+
if (needScrollToLastElementBeforePreviousPage) {
|
|
118
|
+
const currentItems = this.items?.slice(0, this.pageSize);
|
|
119
|
+
this.items = previousItems.concat(currentItems);
|
|
120
|
+
this.scrollToLastElementBeforePreviousPage();
|
|
121
|
+
}
|
|
122
|
+
else {
|
|
123
|
+
this.items = previousItems;
|
|
124
|
+
}
|
|
125
|
+
}
|
|
126
|
+
finally {
|
|
127
|
+
this.isFirstScrollToTop = false;
|
|
128
|
+
this.loadingPreviousPage = false;
|
|
129
|
+
}
|
|
130
|
+
}
|
|
131
|
+
scrollToLastElementBeforePreviousPage() {
|
|
132
|
+
setTimeout(() => {
|
|
133
|
+
const scrollElement = document.getElementById(`apipass-infinite-scroll-list-${this.getCurrentId}`);
|
|
134
|
+
const executionId = document.getElementById(`apipass-infinite-scroll-item-${this.getCurrentId}-${this.pageSize}`);
|
|
135
|
+
if (scrollElement && executionId) {
|
|
136
|
+
scrollElement.scrollTo({ top: executionId.offsetTop + executionId.clientHeight });
|
|
137
|
+
}
|
|
138
|
+
});
|
|
139
|
+
}
|
|
140
|
+
static ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "16.0.2", ngImport: i0, type: ApipassInfiniteScrollComponent, deps: [], target: i0.ɵɵFactoryTarget.Component });
|
|
141
|
+
static ɵcmp = i0.ɵɵngDeclareComponent({ minVersion: "14.0.0", version: "16.0.2", type: ApipassInfiniteScrollComponent, selector: "apipass-infinite-scroll-component", inputs: { currentPage: "currentPage", items: "items", pageSize: "pageSize", loading: "loading", filter: "filter", nextPageFn: "nextPageFn", previousPageFn: "previousPageFn", refreshItems: "refreshItems", showEmptyList: "showEmptyList", emptyListMessage: "emptyListMessage", infiniteScrollDownDistance: "infiniteScrollDownDistance", infiniteScrollUpDistance: "infiniteScrollUpDistance", infiniteScrollThrottle: "infiniteScrollThrottle", maxHeight: "maxHeight", minHeight: "minHeight" }, outputs: { onNextPage: "onNextPage", onPreviousPage: "onPreviousPage", loadingChange: "loadingChange", currentPageChange: "currentPageChange" }, queries: [{ propertyName: "itemsTemplate", first: true, predicate: TemplateRef, descendants: true }], ngImport: i0, template: "<div class=\"apipass-infinite-scroll-component\">\n <div class=\"apipass-infinite-scroll-list\"\n *ngIf=\"items?.length > 0\"\n [id]=\"'apipass-infinite-scroll-list-' + getCurrentId\"\n [style.max-height]=\"maxHeight\"\n [style.min-height]=\"minHeight\"\n infiniteScroll\n [infiniteScrollDistance]=\"infiniteScrollDownDistance\"\n [infiniteScrollUpDistance]=\"infiniteScrollUpDistance\"\n [infiniteScrollThrottle]=\"infiniteScrollThrottle\"\n [infiniteScrollDisabled]=\"loadingPages()\"\n (scrolled)=\"nextPage()\"\n (scrolledUp)=\"previousPage()\"\n [scrollWindow]=\"false\">\n <overlay-loader-component class=\"loader-top\" *ngIf=\"loadingPreviousPage\"></overlay-loader-component>\n <div class=\"apipass-infinite-scroll-item\"\n *ngFor=\"let item of items; let index = index\"\n [id]=\"'apipass-infinite-scroll-item-' + getCurrentId + '-' + (index + 1)\">\n <ng-container *ngTemplateOutlet=\"itemsTemplate; context: { $implicit: item }\"></ng-container>\n </div>\n <div class=\"loader-bottom-content\" *ngIf=\"loadingNextPage\">\n <overlay-loader-component class=\"loader-bottom\"></overlay-loader-component>\n </div>\n </div>\n <div class=\"apipass-infinite-scroll-list-no-rows\" *ngIf=\"this.showEmptyList && !showListLoader() && items?.length === 0\">\n {{emptyListMessage}}\n </div>\n</div>\n", styles: [".apipass-infinite-scroll-component .apipass-infinite-scroll-list{box-sizing:border-box;position:relative;max-height:calc(100vh - 450px);min-height:100px;overflow-y:auto;overflow-x:hidden;scrollbar-width:thin;scrollbar-color:transparent transparent;overscroll-behavior:contain}.apipass-infinite-scroll-component .apipass-infinite-scroll-list::-webkit-scrollbar{width:4px;position:absolute;inset:0}.apipass-infinite-scroll-component .apipass-infinite-scroll-list::-webkit-scrollbar-thumb{background:#CBCBCB;border-radius:2px}.apipass-infinite-scroll-component .apipass-infinite-scroll-list::-webkit-scrollbar-thumb:hover{background:rgba(0,0,0,.7)}.apipass-infinite-scroll-component .apipass-infinite-scroll-list .loader-bottom-content{position:sticky}.apipass-infinite-scroll-component .apipass-infinite-scroll-list overlay-loader-component{display:flex;justify-content:center;align-items:center;position:absolute;background:rgba(255,255,255,.7607843137);z-index:999;width:100%}.apipass-infinite-scroll-component .apipass-infinite-scroll-list overlay-loader-component.loader-top{top:0;box-shadow:0 5px 10px 2px #ffffffc2}.apipass-infinite-scroll-component .apipass-infinite-scroll-list overlay-loader-component.loader-bottom{bottom:0;box-shadow:0 -5px 10px 2px #ffffffc2}.apipass-infinite-scroll-component .apipass-infinite-scroll-list overlay-loader-component ::ng-deep mat-spinner{width:25px!important;height:50px;--mdc-circular-progress-size: 50px;--mdc-circular-progress-active-indicator-width: 50px}.apipass-infinite-scroll-component .apipass-infinite-scroll-list-no-rows{width:100%;height:40px;display:flex;justify-content:center;align-items:center;margin-top:10px;border-radius:5px;border:1px solid #CCC;background:#EEE;color:var(--color-fonts-tertiary)!important}\n"], dependencies: [{ kind: "directive", type: i1.NgForOf, selector: "[ngFor][ngForOf]", inputs: ["ngForOf", "ngForTrackBy", "ngForTemplate"] }, { kind: "directive", type: i1.NgIf, selector: "[ngIf]", inputs: ["ngIf", "ngIfThen", "ngIfElse"] }, { kind: "directive", type: i1.NgTemplateOutlet, selector: "[ngTemplateOutlet]", inputs: ["ngTemplateOutletContext", "ngTemplateOutlet", "ngTemplateOutletInjector"] }, { kind: "directive", type: i2.InfiniteScrollDirective, selector: "[infiniteScroll], [infinite-scroll], [data-infinite-scroll]", inputs: ["infiniteScrollDistance", "infiniteScrollUpDistance", "infiniteScrollThrottle", "infiniteScrollDisabled", "infiniteScrollContainer", "scrollWindow", "immediateCheck", "horizontal", "alwaysCallback", "fromRoot"], outputs: ["scrolled", "scrolledUp"] }, { kind: "component", type: i3.OverlayLoaderComponent, selector: "overlay-loader-component" }] });
|
|
142
|
+
}
|
|
143
|
+
export { ApipassInfiniteScrollComponent };
|
|
144
|
+
i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "16.0.2", ngImport: i0, type: ApipassInfiniteScrollComponent, decorators: [{
|
|
145
|
+
type: Component,
|
|
146
|
+
args: [{ selector: 'apipass-infinite-scroll-component', template: "<div class=\"apipass-infinite-scroll-component\">\n <div class=\"apipass-infinite-scroll-list\"\n *ngIf=\"items?.length > 0\"\n [id]=\"'apipass-infinite-scroll-list-' + getCurrentId\"\n [style.max-height]=\"maxHeight\"\n [style.min-height]=\"minHeight\"\n infiniteScroll\n [infiniteScrollDistance]=\"infiniteScrollDownDistance\"\n [infiniteScrollUpDistance]=\"infiniteScrollUpDistance\"\n [infiniteScrollThrottle]=\"infiniteScrollThrottle\"\n [infiniteScrollDisabled]=\"loadingPages()\"\n (scrolled)=\"nextPage()\"\n (scrolledUp)=\"previousPage()\"\n [scrollWindow]=\"false\">\n <overlay-loader-component class=\"loader-top\" *ngIf=\"loadingPreviousPage\"></overlay-loader-component>\n <div class=\"apipass-infinite-scroll-item\"\n *ngFor=\"let item of items; let index = index\"\n [id]=\"'apipass-infinite-scroll-item-' + getCurrentId + '-' + (index + 1)\">\n <ng-container *ngTemplateOutlet=\"itemsTemplate; context: { $implicit: item }\"></ng-container>\n </div>\n <div class=\"loader-bottom-content\" *ngIf=\"loadingNextPage\">\n <overlay-loader-component class=\"loader-bottom\"></overlay-loader-component>\n </div>\n </div>\n <div class=\"apipass-infinite-scroll-list-no-rows\" *ngIf=\"this.showEmptyList && !showListLoader() && items?.length === 0\">\n {{emptyListMessage}}\n </div>\n</div>\n", styles: [".apipass-infinite-scroll-component .apipass-infinite-scroll-list{box-sizing:border-box;position:relative;max-height:calc(100vh - 450px);min-height:100px;overflow-y:auto;overflow-x:hidden;scrollbar-width:thin;scrollbar-color:transparent transparent;overscroll-behavior:contain}.apipass-infinite-scroll-component .apipass-infinite-scroll-list::-webkit-scrollbar{width:4px;position:absolute;inset:0}.apipass-infinite-scroll-component .apipass-infinite-scroll-list::-webkit-scrollbar-thumb{background:#CBCBCB;border-radius:2px}.apipass-infinite-scroll-component .apipass-infinite-scroll-list::-webkit-scrollbar-thumb:hover{background:rgba(0,0,0,.7)}.apipass-infinite-scroll-component .apipass-infinite-scroll-list .loader-bottom-content{position:sticky}.apipass-infinite-scroll-component .apipass-infinite-scroll-list overlay-loader-component{display:flex;justify-content:center;align-items:center;position:absolute;background:rgba(255,255,255,.7607843137);z-index:999;width:100%}.apipass-infinite-scroll-component .apipass-infinite-scroll-list overlay-loader-component.loader-top{top:0;box-shadow:0 5px 10px 2px #ffffffc2}.apipass-infinite-scroll-component .apipass-infinite-scroll-list overlay-loader-component.loader-bottom{bottom:0;box-shadow:0 -5px 10px 2px #ffffffc2}.apipass-infinite-scroll-component .apipass-infinite-scroll-list overlay-loader-component ::ng-deep mat-spinner{width:25px!important;height:50px;--mdc-circular-progress-size: 50px;--mdc-circular-progress-active-indicator-width: 50px}.apipass-infinite-scroll-component .apipass-infinite-scroll-list-no-rows{width:100%;height:40px;display:flex;justify-content:center;align-items:center;margin-top:10px;border-radius:5px;border:1px solid #CCC;background:#EEE;color:var(--color-fonts-tertiary)!important}\n"] }]
|
|
147
|
+
}], ctorParameters: function () { return []; }, propDecorators: { currentPage: [{
|
|
148
|
+
type: Input
|
|
149
|
+
}], items: [{
|
|
150
|
+
type: Input
|
|
151
|
+
}], pageSize: [{
|
|
152
|
+
type: Input
|
|
153
|
+
}], loading: [{
|
|
154
|
+
type: Input
|
|
155
|
+
}], filter: [{
|
|
156
|
+
type: Input
|
|
157
|
+
}], nextPageFn: [{
|
|
158
|
+
type: Input
|
|
159
|
+
}], previousPageFn: [{
|
|
160
|
+
type: Input
|
|
161
|
+
}], refreshItems: [{
|
|
162
|
+
type: Input
|
|
163
|
+
}], showEmptyList: [{
|
|
164
|
+
type: Input
|
|
165
|
+
}], emptyListMessage: [{
|
|
166
|
+
type: Input
|
|
167
|
+
}], infiniteScrollDownDistance: [{
|
|
168
|
+
type: Input
|
|
169
|
+
}], infiniteScrollUpDistance: [{
|
|
170
|
+
type: Input
|
|
171
|
+
}], infiniteScrollThrottle: [{
|
|
172
|
+
type: Input
|
|
173
|
+
}], maxHeight: [{
|
|
174
|
+
type: Input
|
|
175
|
+
}], minHeight: [{
|
|
176
|
+
type: Input
|
|
177
|
+
}], onNextPage: [{
|
|
178
|
+
type: Output
|
|
179
|
+
}], onPreviousPage: [{
|
|
180
|
+
type: Output
|
|
181
|
+
}], loadingChange: [{
|
|
182
|
+
type: Output
|
|
183
|
+
}], currentPageChange: [{
|
|
184
|
+
type: Output
|
|
185
|
+
}], itemsTemplate: [{
|
|
186
|
+
type: ContentChild,
|
|
187
|
+
args: [TemplateRef]
|
|
188
|
+
}] } });
|
|
189
|
+
//# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoiYXBpcGFzcy1pbmZpbml0ZS1zY3JvbGwuY29tcG9uZW50LmpzIiwic291cmNlUm9vdCI6IiIsInNvdXJjZXMiOlsiLi4vLi4vLi4vLi4vcHJvamVjdHMvY29udGFpbmVycy9zcmMvYXBpcGFzcy1pbmZpbml0ZS1zY3JvbGwvYXBpcGFzcy1pbmZpbml0ZS1zY3JvbGwuY29tcG9uZW50LnRzIiwiLi4vLi4vLi4vLi4vcHJvamVjdHMvY29udGFpbmVycy9zcmMvYXBpcGFzcy1pbmZpbml0ZS1zY3JvbGwvYXBpcGFzcy1pbmZpbml0ZS1zY3JvbGwuY29tcG9uZW50Lmh0bWwiXSwibmFtZXMiOltdLCJtYXBwaW5ncyI6IkFBQUEsT0FBTyxFQUFFLFNBQVMsRUFBRSxZQUFZLEVBQUUsWUFBWSxFQUFFLEtBQUssRUFBcUIsTUFBTSxFQUFFLFdBQVcsRUFBRSxNQUFNLGVBQWUsQ0FBQzs7Ozs7QUFpQnJILE1BS2EsOEJBQThCO0lBRWpDLGFBQWEsR0FBbUIsRUFBRSxDQUFBO0lBQ3pCLFVBQVUsQ0FBUTtJQUVuQyxJQUFJLFlBQVk7UUFDZCxPQUFPLElBQUksQ0FBQyxVQUFVLENBQUE7SUFDeEIsQ0FBQztJQUVPLE1BQU0sR0FBVSxFQUFFLENBQUE7SUFDbEIsWUFBWSxHQUFXLENBQUMsQ0FBQTtJQUVoQyxJQUNJLFdBQVcsQ0FBQyxJQUFZO1FBQzFCLElBQUksQ0FBQyxZQUFZLEdBQUcsSUFBSSxDQUFBO0lBQzFCLENBQUM7SUFFRCxJQUFJLFdBQVc7UUFDYixPQUFPLElBQUksQ0FBQyxZQUFZLENBQUE7SUFDMUIsQ0FBQztJQUVELElBQ0ksS0FBSyxDQUFDLEtBQVk7UUFDcEIsSUFBSSxDQUFDLE1BQU0sR0FBRyxLQUFLLENBQUE7SUFDckIsQ0FBQztJQUVELElBQUksS0FBSztRQUNQLE9BQU8sSUFBSSxDQUFDLE1BQU0sQ0FBQTtJQUNwQixDQUFDO0lBR00sUUFBUSxHQUFXLEVBQUUsQ0FBQTtJQUdyQixPQUFPLENBQVM7SUFHaEIsTUFBTSxHQUF3QixFQUFFLENBQUE7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QkFEZCxLQUFLO2dCQVVGLEtBQUs7c0JBRFIsS0FBSztnQkFVQyxRQUFRO3NCQURkLEtBQUs7Z0JBSUMsT0FBTztzQkFEYixLQUFLO2dCQUlDLE1BQU07c0JBRFosS0FBSztnQkFJQyxVQUFVO3NCQURoQixLQUFLO2dCQUlDLGNBQWM7c0JBRHBCLEtBQUs7Z0JBSUMsWUFBWTtzQkFEbEIsS0FBSztnQkFJQyxhQUFhO3NCQURuQixLQUFLO2dCQUlDLGdCQUFnQjtzQkFEdEIsS0FBSztnQkFJQywwQkFBMEI7c0JBRGhDLEtBQUs7Z0JBSUMsd0JBQXdCO3NCQUQ5QixLQUFLO2dCQUlDLHNCQUFzQjtzQkFENUIsS0FBSztnQkFJQyxTQUFTO3NCQURmLEtBQUs7Z0JBSUMsU0FBUztzQkFEZixLQUFLO2dCQUlDLFVBQVU7c0JBRGhCLE1BQU07Z0JBSUEsY0FBYztzQkFEcEIsTUFBTTtnQkFJQSxhQUFhO3NCQURuQixNQUFNO2dCQUlBLGlCQUFpQjtzQkFEdkIsTUFBTTtnQkFHb0IsYUFBYTtzQkFBdkMsWUFBWTt1QkFBQyxXQUFXIiwic291cmNlc0NvbnRlbnQiOlsiaW1wb3J0IHsgQ29tcG9uZW50LCBDb250ZW50Q2hpbGQsIEV2ZW50RW1pdHRlciwgSW5wdXQsIE9uRGVzdHJveSwgT25Jbml0LCBPdXRwdXQsIFRlbXBsYXRlUmVmIH0gZnJvbSAnQGFuZ3VsYXIvY29yZSc7XG5pbXBvcnQgeyBTdWJzY3JpcHRpb24gfSBmcm9tICdyeGpzJztcblxuZXhwb3J0IGludGVyZmFjZSBOZXh0UGFnZUV2ZW50IHtcbiAgY3VycmVudFBhZ2U6IG51bWJlclxuICBuZXh0UGFnZTogbnVtYmVyXG59XG5cbmV4cG9ydCBpbnRlcmZhY2UgUHJldmlvdXNQYWdlRXZlbnQge1xuICBjdXJyZW50UGFnZTogbnVtYmVyXG4gIHByZXZpb3VzUGFnZTogbnVtYmVyXG59XG5cbmV4cG9ydCBpbnRlcmZhY2UgUmVmcmVzaEl0ZW1zRXZlbnQge1xuICBjb250aW51ZU9uVGhlU2FtZVBhZ2U/OiBib29sZWFuXG59XG5cbkBDb21wb25lbnQoe1xuICBzZWxlY3RvcjogJ2FwaXBhc3MtaW5maW5pdGUtc2Nyb2xsLWNvbXBvbmVudCcsXG4gIHRlbXBsYXRlVXJsOiAnYXBpcGFzcy1pbmZpbml0ZS1zY3JvbGwuY29tcG9uZW50Lmh0bWwnLFxuICBzdHlsZVVybHM6IFsnYXBpcGFzcy1pbmZpbml0ZS1zY3JvbGwuY29tcG9uZW50LnNjc3MnXVxufSlcbmV4cG9ydCBjbGFzcyBBcGlwYXNzSW5maW5pdGVTY3JvbGxDb21wb25lbnQgaW1wbGVtZW50cyBPbkluaXQsIE9uRGVzdHJveSB7XG5cbiAgcHJpdmF0ZSBzdWJzY3JpcHRpb25zOiBTdWJzY3JpcHRpb25bXSA9IFtdXG4gIHByaXZhdGUgcmVhZG9ubHkgX2N1cnJlbnRJZDogc3RyaW5nXG5cbiAgZ2V0IGdldEN1cnJlbnRJZCgpOiBzdHJpbmcge1xuICAgIHJldHVybiB0aGlzLl9jdXJyZW50SWRcbiAgfVxuXG4gIHByaXZhdGUgX2l0ZW1zOiBhbnlbXSA9IFtdXG4gIHByaXZhdGUgX2N1cnJlbnRQYWdlOiBudW1iZXIgPSAxXG5cbiAgQElucHV0KClcbiAgc2V0IGN1cnJlbnRQYWdlKHBhZ2U6IG51bWJlcikge1xuICAgIHRoaXMuX2N1cnJlbnRQYWdlID0gcGFnZVxuICB9XG5cbiAgZ2V0IGN1cnJlbnRQYWdlKCk6IG51bWJlciB7XG4gICAgcmV0dXJuIHRoaXMuX2N1cnJlbnRQYWdlXG4gIH1cblxuICBASW5wdXQoKVxuICBzZXQgaXRlbXMoaXRlbXM6IGFueVtdKSB7XG4gICAgdGhpcy5faXRlbXMgPSBpdGVtc1xuICB9XG5cbiAgZ2V0IGl0ZW1zKCk6IGFueVtdIHtcbiAgICByZXR1cm4gdGhpcy5faXRlbXNcbiAgfVxuXG4gIEBJbnB1dCgpXG4gIHB1YmxpYyBwYWdlU2l6ZTogbnVtYmVyID0gNTBcblxuICBASW5wdXQoKVxuICBwdWJsaWMgbG9hZGluZzogYm9vbGVhblxuXG4gIEBJbnB1dCgpXG4gIHB1YmxpYyBmaWx0ZXI6IFJlY29yZDxzdHJpbmcsIGFueT4gPSB7fVxuXG4gIEBJbnB1dCgpXG4gIHB1YmxpYyBuZXh0UGFnZUZuOiAocGFyYW1zOiBhbnkpID0+IFByb21pc2U8YW55W10+XG5cbiAgQElucHV0KClcbiAgcHVibGljIHByZXZpb3VzUGFnZUZuOiAocGFyYW1zOiBhbnkpID0+IFByb21pc2U8YW55W10+XG5cbiAgQElucHV0KClcbiAgcHVibGljIHJlZnJlc2hJdGVtczogRXZlbnRFbWl0dGVyPFJlZnJlc2hJdGVtc0V2ZW50PiA9IG5ldyBFdmVudEVtaXR0ZXI8UmVmcmVzaEl0ZW1zRXZlbnQ+KClcblxuICBASW5wdXQoKVxuICBwdWJsaWMgc2hvd0VtcHR5TGlzdDogYm9vbGVhblxuXG4gIEBJbnB1dCgpXG4gIHB1YmxpYyBlbXB0eUxpc3RNZXNzYWdlOiBzdHJpbmcgPSAnTm8gUmVjb3JkcyBGb3VuZC4uLidcblxuICBASW5wdXQoKVxuICBwdWJsaWMgaW5maW5pdGVTY3JvbGxEb3duRGlzdGFuY2U6IG51bWJlciA9IDJcblxuICBASW5wdXQoKVxuICBwdWJsaWMgaW5maW5pdGVTY3JvbGxVcERpc3RhbmNlOiBudW1iZXIgPSAwLjVcblxuICBASW5wdXQoKVxuICBwdWJsaWMgaW5maW5pdGVTY3JvbGxUaHJvdHRsZTogbnVtYmVyID0gMTUwXG5cbiAgQElucHV0KClcbiAgcHVibGljIG1heEhlaWdodDogc3RyaW5nID0gJzEwMHZoJ1xuXG4gIEBJbnB1dCgpXG4gIHB1YmxpYyBtaW5IZWlnaHQ6IHN0cmluZyA9ICc1MHB4J1xuXG4gIEBPdXRwdXQoKVxuICBwdWJsaWMgb25OZXh0UGFnZTogRXZlbnRFbWl0dGVyPE5leHRQYWdlRXZlbnQ+ID0gbmV3IEV2ZW50RW1pdHRlcjxOZXh0UGFnZUV2ZW50PigpXG5cbiAgQE91dHB1dCgpXG4gIHB1YmxpYyBvblByZXZpb3VzUGFnZTogRXZlbnRFbWl0dGVyPFByZXZpb3VzUGFnZUV2ZW50PiA9IG5ldyBFdmVudEVtaXR0ZXI8UHJldmlvdXNQYWdlRXZlbnQ+KClcblxuICBAT3V0cHV0KClcbiAgcHVibGljIGxvYWRpbmdDaGFuZ2U6IEV2ZW50RW1pdHRlcjxib29sZWFuPiA9IG5ldyBFdmVudEVtaXR0ZXI8Ym9vbGVhbj4oKVxuXG4gIEBPdXRwdXQoKVxuICBwdWJsaWMgY3VycmVudFBhZ2VDaGFuZ2U6IEV2ZW50RW1pdHRlcjxudW1iZXI+ID0gbmV3IEV2ZW50RW1pdHRlcjxudW1iZXI+KClcblxuICBAQ29udGVudENoaWxkKFRlbXBsYXRlUmVmKSBpdGVtc1RlbXBsYXRlOiBUZW1wbGF0ZVJlZjxhbnk+O1xuXG4gIHByaXZhdGUgaXNGaXJzdFNjcm9sbFRvVG9wOiBib29sZWFuXG4gIHByb3RlY3RlZCBsb2FkaW5nTmV4dFBhZ2U6IGJvb2xlYW5cbiAgcHJvdGVjdGVkIGxvYWRpbmdQcmV2aW91c1BhZ2U6IGJvb2xlYW5cblxuICBjb25zdHJ1Y3RvcigpIHtcbiAgICB0aGlzLl9jdXJyZW50SWQgPSBNYXRoLnJhbmRvbSgpLnRvU3RyaW5nKDM2KS5zdWJzdHJpbmcoMilcbiAgfVxuXG4gIHB1YmxpYyBuZ09uSW5pdCgpOiB2b2lkIHtcbiAgICB0aGlzLnN1YnNjcmlwdGlvbnMucHVzaCh0aGlzLnJlZnJlc2hJdGVtcy5zdWJzY3JpYmUoKCRldmVudCkgPT4ge1xuICAgICAgaWYgKCEkZXZlbnQ/LmNvbnRpbnVlT25UaGVTYW1lUGFnZSkge1xuICAgICAgICB0aGlzLl9jdXJyZW50UGFnZSA9IDBcbiAgICAgICAgdGhpcy5jdXJyZW50UGFnZUNoYW5nZS5lbWl0KHRoaXMuX2N1cnJlbnRQYWdlKVxuICAgICAgfVxuICAgIH0pKVxuICB9XG5cbiAgcHVibGljIG5nT25EZXN0cm95KCk6IHZvaWQge1xuICAgIHRoaXMuc3Vic2NyaXB0aW9ucz8uZm9yRWFjaChzdWJzY3JpcHRpb24gPT4ge1xuICAgICAgc3Vic2NyaXB0aW9uLnVuc3Vic2NyaWJlKClcbiAgICB9KVxuICAgIHRoaXMuc3Vic2NyaXB0aW9ucyA9IFtdXG4gIH1cblxuICBwdWJsaWMgbG9hZGluZ1BhZ2VzKCk6IGJvb2xlYW4ge1xuICAgIHJldHVybiB0aGlzLmxvYWRpbmdOZXh0UGFnZSB8fCB0aGlzLmxvYWRpbmdQcmV2aW91c1BhZ2VcbiAgfVxuXG4gIHB1YmxpYyBzaG93TGlzdExvYWRlcigpOiBib29sZWFuIHtcbiAgICByZXR1cm4gdGhpcy5sb2FkaW5nXG4gIH1cblxuICBwcm90ZWN0ZWQgYXN5bmMgbmV4dFBhZ2UoKTogUHJvbWlzZTx2b2lkPiB7XG4gICAgaWYgKHRoaXMubG9hZGluZ1BhZ2VzKCkpIHtcbiAgICAgIHJldHVyblxuICAgIH1cbiAgICB0cnkge1xuICAgICAgdGhpcy5sb2FkaW5nTmV4dFBhZ2UgPSB0cnVlXG4gICAgICB0aGlzLmlzRmlyc3RTY3JvbGxUb1RvcCA9IHRydWVcbiAgICAgIHRoaXMub25OZXh0UGFnZS5lbWl0KHtcbiAgICAgICAgY3VycmVudFBhZ2U6IHRoaXMuY3VycmVudFBhZ2UsXG4gICAgICAgIG5leHRQYWdlOiB0aGlzLmN1cnJlbnRQYWdlICsgMVxuICAgICAgfSlcbiAgICAgIHRoaXMuY3VycmVudFBhZ2UrK1xuICAgICAgY29uc3QgbmV4dEl0ZW1zID0gYXdhaXQgdGhpcy5uZXh0UGFnZUZuKHtcbiAgICAgICAgLi4udGhpcy5maWx0ZXIsXG4gICAgICAgIHBhZ2U6IHRoaXMuY3VycmVudFBhZ2UsXG4gICAgICAgIHBhZ2VTaXplOiB0aGlzLnBhZ2VTaXplXG4gICAgICB9KVxuICAgICAgaWYgKG5leHRJdGVtcz8ubGVuZ3RoID09PSAwKSB7XG4gICAgICAgIHRoaXMuY3VycmVudFBhZ2UtLVxuICAgICAgICByZXR1cm5cbiAgICAgIH1cbiAgICAgIHRoaXMuY3VycmVudFBhZ2VDaGFuZ2UuZW1pdCh0aGlzLl9jdXJyZW50UGFnZSlcbiAgICAgIGNvbnN0IG5lZWRSZW1vdmVMYXN0UGFnZVNpemVJdGVtcyA9IHRoaXMuY3VycmVudFBhZ2UgPiAyO1xuICAgICAgdGhpcy5faXRlbXMgPSBuZWVkUmVtb3ZlTGFzdFBhZ2VTaXplSXRlbXMgPyB0aGlzLl9pdGVtcz8uc2xpY2UodGhpcy5wYWdlU2l6ZSkuY29uY2F0KG5leHRJdGVtcykgOiB0aGlzLl9pdGVtcy5jb25jYXQobmV4dEl0ZW1zKVxuICAgIH0gZmluYWxseSB7XG4gICAgICB0aGlzLmxvYWRpbmdOZXh0UGFnZSA9IGZhbHNlO1xuICAgIH1cbiAgfVxuXG4gIHByb3RlY3RlZCBhc3luYyBwcmV2aW91c1BhZ2UoKTogUHJvbWlzZTx2b2lkPiB7XG4gICAgaWYgKHRoaXMubG9hZGluZ1BhZ2VzKCkpIHtcbiAgICAgIHJldHVyblxuICAgIH1cbiAgICB0cnkge1xuICAgICAgdGhpcy5sb2FkaW5nUHJldmlvdXNQYWdlID0gdHJ1ZVxuICAgICAgdGhpcy5jdXJyZW50UGFnZSA9IHRoaXMuaXNGaXJzdFNjcm9sbFRvVG9wID8gdGhpcy5jdXJyZW50UGFnZSAtIDIgOiB0aGlzLmN1cnJlbnRQYWdlIC0gMVxuICAgICAgY29uc3QgbmVlZFNjcm9sbFRvTGFzdEVsZW1lbnRCZWZvcmVQcmV2aW91c1BhZ2UgPSB0aGlzLmN1cnJlbnRQYWdlID4gMFxuICAgICAgdGhpcy5jdXJyZW50UGFnZSA9IHRoaXMuY3VycmVudFBhZ2UgPiAwID8gdGhpcy5jdXJyZW50UGFnZSA6IDFcbiAgICAgIGNvbnN0IHByZXZpb3VzSXRlbXMgPSBhd2FpdCB0aGlzLnByZXZpb3VzUGFnZUZuKHtcbiAgICAgICAgLi4udGhpcy5maWx0ZXIsXG4gICAgICAgIHBhZ2U6IHRoaXMuY3VycmVudFBhZ2UsXG4gICAgICAgIHBhZ2VTaXplOiB0aGlzLnBhZ2VTaXplXG4gICAgICB9KVxuICAgICAgaWYgKHByZXZpb3VzSXRlbXM/Lmxlbmd0aCA9PT0gMCkge1xuICAgICAgICByZXR1cm5cbiAgICAgIH1cbiAgICAgIHRoaXMuY3VycmVudFBhZ2VDaGFuZ2UuZW1pdCh0aGlzLl9jdXJyZW50UGFnZSlcbiAgICAgIGlmIChuZWVkU2Nyb2xsVG9MYXN0RWxlbWVudEJlZm9yZVByZXZpb3VzUGFnZSkge1xuICAgICAgICBjb25zdCBjdXJyZW50SXRlbXMgPSB0aGlzLml0ZW1zPy5zbGljZSgwLCB0aGlzLnBhZ2VTaXplKTtcbiAgICAgICAgdGhpcy5pdGVtcyA9IHByZXZpb3VzSXRlbXMuY29uY2F0KGN1cnJlbnRJdGVtcylcbiAgICAgICAgdGhpcy5zY3JvbGxUb0xhc3RFbGVtZW50QmVmb3JlUHJldmlvdXNQYWdlKCk7XG4gICAgICB9IGVsc2Uge1xuICAgICAgICB0aGlzLml0ZW1zID0gcHJldmlvdXNJdGVtc1xuICAgICAgfVxuICAgIH0gZmluYWxseSB7XG4gICAgICB0aGlzLmlzRmlyc3RTY3JvbGxUb1RvcCA9IGZhbHNlXG4gICAgICB0aGlzLmxvYWRpbmdQcmV2aW91c1BhZ2UgPSBmYWxzZVxuICAgIH1cbiAgfVxuXG4gIHByaXZhdGUgc2Nyb2xsVG9MYXN0RWxlbWVudEJlZm9yZVByZXZpb3VzUGFnZSgpOiB2b2lkIHtcbiAgICBzZXRUaW1lb3V0KCgpID0+IHtcbiAgICAgIGNvbnN0IHNjcm9sbEVsZW1lbnQgPSBkb2N1bWVudC5nZXRFbGVtZW50QnlJZChgYXBpcGFzcy1pbmZpbml0ZS1zY3JvbGwtbGlzdC0ke3RoaXMuZ2V0Q3VycmVudElkfWApO1xuICAgICAgY29uc3QgZXhlY3V0aW9uSWQgPSBkb2N1bWVudC5nZXRFbGVtZW50QnlJZChgYXBpcGFzcy1pbmZpbml0ZS1zY3JvbGwtaXRlbS0ke3RoaXMuZ2V0Q3VycmVudElkfS0ke3RoaXMucGFnZVNpemV9YClcbiAgICAgIGlmIChzY3JvbGxFbGVtZW50ICYmIGV4ZWN1dGlvbklkKSB7XG4gICAgICAgIHNjcm9sbEVsZW1lbnQuc2Nyb2xsVG8oeyB0b3A6IGV4ZWN1dGlvbklkLm9mZnNldFRvcCArIGV4ZWN1dGlvbklkLmNsaWVudEhlaWdodCB9KVxuICAgICAgfVxuICAgIH0pXG4gIH1cblxufVxuIiwiPGRpdiBjbGFzcz1cImFwaXBhc3MtaW5maW5pdGUtc2Nyb2xsLWNvbXBvbmVudFwiPlxuICA8ZGl2IGNsYXNzPVwiYXBpcGFzcy1pbmZpbml0ZS1zY3JvbGwtbGlzdFwiXG4gICAgICAgKm5nSWY9XCJpdGVtcz8ubGVuZ3RoID4gMFwiXG4gICAgICAgW2lkXT1cIidhcGlwYXNzLWluZmluaXRlLXNjcm9sbC1saXN0LScgKyBnZXRDdXJyZW50SWRcIlxuICAgICAgIFtzdHlsZS5tYXgtaGVpZ2h0XT1cIm1heEhlaWdodFwiXG4gICAgICAgW3N0eWxlLm1pbi1oZWlnaHRdPVwibWluSGVpZ2h0XCJcbiAgICAgICBpbmZpbml0ZVNjcm9sbFxuICAgICAgIFtpbmZpbml0ZVNjcm9sbERpc3RhbmNlXT1cImluZmluaXRlU2Nyb2xsRG93bkRpc3RhbmNlXCJcbiAgICAgICBbaW5maW5pdGVTY3JvbGxVcERpc3RhbmNlXT1cImluZmluaXRlU2Nyb2xsVXBEaXN0YW5jZVwiXG4gICAgICAgW2luZmluaXRlU2Nyb2xsVGhyb3R0bGVdPVwiaW5maW5pdGVTY3JvbGxUaHJvdHRsZVwiXG4gICAgICAgW2luZmluaXRlU2Nyb2xsRGlzYWJsZWRdPVwibG9hZGluZ1BhZ2VzKClcIlxuICAgICAgIChzY3JvbGxlZCk9XCJuZXh0UGFnZSgpXCJcbiAgICAgICAoc2Nyb2xsZWRVcCk9XCJwcmV2aW91c1BhZ2UoKVwiXG4gICAgICAgW3Njcm9sbFdpbmRvd109XCJmYWxzZVwiPlxuICAgIDxvdmVybGF5LWxvYWRlci1jb21wb25lbnQgY2xhc3M9XCJsb2FkZXItdG9wXCIgKm5nSWY9XCJsb2FkaW5nUHJldmlvdXNQYWdlXCI+PC9vdmVybGF5LWxvYWRlci1jb21wb25lbnQ+XG4gICAgPGRpdiBjbGFzcz1cImFwaXBhc3MtaW5maW5pdGUtc2Nyb2xsLWl0ZW1cIlxuICAgICAgICAgKm5nRm9yPVwibGV0IGl0ZW0gb2YgaXRlbXM7IGxldCBpbmRleCA9IGluZGV4XCJcbiAgICAgICAgIFtpZF09XCInYXBpcGFzcy1pbmZpbml0ZS1zY3JvbGwtaXRlbS0nICsgZ2V0Q3VycmVudElkICsgJy0nICsgKGluZGV4ICsgMSlcIj5cbiAgICAgIDxuZy1jb250YWluZXIgKm5nVGVtcGxhdGVPdXRsZXQ9XCJpdGVtc1RlbXBsYXRlOyBjb250ZXh0OiB7ICRpbXBsaWNpdDogaXRlbSB9XCI+PC9uZy1jb250YWluZXI+XG4gICAgPC9kaXY+XG4gICAgPGRpdiBjbGFzcz1cImxvYWRlci1ib3R0b20tY29udGVudFwiICpuZ0lmPVwibG9hZGluZ05leHRQYWdlXCI+XG4gICAgICA8b3ZlcmxheS1sb2FkZXItY29tcG9uZW50IGNsYXNzPVwibG9hZGVyLWJvdHRvbVwiPjwvb3ZlcmxheS1sb2FkZXItY29tcG9uZW50PlxuICAgIDwvZGl2PlxuICA8L2Rpdj5cbiAgPGRpdiBjbGFzcz1cImFwaXBhc3MtaW5maW5pdGUtc2Nyb2xsLWxpc3Qtbm8tcm93c1wiICpuZ0lmPVwidGhpcy5zaG93RW1wdHlMaXN0ICYmICFzaG93TGlzdExvYWRlcigpICYmIGl0ZW1zPy5sZW5ndGggPT09IDBcIj5cbiAgICB7e2VtcHR5TGlzdE1lc3NhZ2V9fVxuICA8L2Rpdj5cbjwvZGl2PlxuIl19
|
|
@@ -12,11 +12,14 @@ import { MatInputModule } from '@angular/material/input';
|
|
|
12
12
|
import { IconsModule } from '@apipass/icons';
|
|
13
13
|
import { ButtonsModule } from '@apipass/buttons';
|
|
14
14
|
import { PipeModule } from '@apipass/pipes';
|
|
15
|
+
import { LoadersModule } from '@apipass/loaders';
|
|
15
16
|
import { MatToolbarModule } from '@angular/material/toolbar';
|
|
16
17
|
import { ConfigurationPageTitleComponent } from './configuration-page-title/configuration-page-title.component';
|
|
17
18
|
import { DurationTimelineComponent } from './duration/duration-timeline/duration-timeline.component';
|
|
18
19
|
import { MatTooltipModule } from '@angular/material/tooltip';
|
|
19
20
|
import { DurationProgressbarComponent } from './duration/duration-progressbar/duration-progressbar.component';
|
|
21
|
+
import { ApipassInfiniteScrollComponent } from './apipass-infinite-scroll/apipass-infinite-scroll.component';
|
|
22
|
+
import { InfiniteScrollModule } from 'ngx-infinite-scroll';
|
|
20
23
|
import * as i0 from "@angular/core";
|
|
21
24
|
class ContainersModule {
|
|
22
25
|
static ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "16.0.2", ngImport: i0, type: ContainersModule, deps: [], target: i0.ɵɵFactoryTarget.NgModule });
|
|
@@ -25,7 +28,8 @@ class ContainersModule {
|
|
|
25
28
|
BreadcrumbComponent,
|
|
26
29
|
ConfigurationPageTitleComponent,
|
|
27
30
|
DurationTimelineComponent,
|
|
28
|
-
DurationProgressbarComponent
|
|
31
|
+
DurationProgressbarComponent,
|
|
32
|
+
ApipassInfiniteScrollComponent], imports: [CommonModule,
|
|
29
33
|
RouterModule,
|
|
30
34
|
FormsModule,
|
|
31
35
|
ReactiveFormsModule,
|
|
@@ -37,12 +41,15 @@ class ContainersModule {
|
|
|
37
41
|
MatInputModule,
|
|
38
42
|
MatToolbarModule,
|
|
39
43
|
PipeModule,
|
|
40
|
-
MatTooltipModule
|
|
44
|
+
MatTooltipModule,
|
|
45
|
+
InfiniteScrollModule,
|
|
46
|
+
LoadersModule], exports: [CentralizedContainerComponent,
|
|
41
47
|
ConfigurationPageComponent,
|
|
42
48
|
BreadcrumbComponent,
|
|
43
49
|
ConfigurationPageTitleComponent,
|
|
44
50
|
DurationTimelineComponent,
|
|
45
|
-
DurationProgressbarComponent
|
|
51
|
+
DurationProgressbarComponent,
|
|
52
|
+
ApipassInfiniteScrollComponent] });
|
|
46
53
|
static ɵinj = i0.ɵɵngDeclareInjector({ minVersion: "12.0.0", version: "16.0.2", ngImport: i0, type: ContainersModule, imports: [CommonModule,
|
|
47
54
|
RouterModule,
|
|
48
55
|
FormsModule,
|
|
@@ -55,7 +62,9 @@ class ContainersModule {
|
|
|
55
62
|
MatInputModule,
|
|
56
63
|
MatToolbarModule,
|
|
57
64
|
PipeModule,
|
|
58
|
-
MatTooltipModule
|
|
65
|
+
MatTooltipModule,
|
|
66
|
+
InfiniteScrollModule,
|
|
67
|
+
LoadersModule] });
|
|
59
68
|
}
|
|
60
69
|
export { ContainersModule };
|
|
61
70
|
i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "16.0.2", ngImport: i0, type: ContainersModule, decorators: [{
|
|
@@ -74,7 +83,9 @@ i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "16.0.2", ngImpor
|
|
|
74
83
|
MatInputModule,
|
|
75
84
|
MatToolbarModule,
|
|
76
85
|
PipeModule,
|
|
77
|
-
MatTooltipModule
|
|
86
|
+
MatTooltipModule,
|
|
87
|
+
InfiniteScrollModule,
|
|
88
|
+
LoadersModule
|
|
78
89
|
],
|
|
79
90
|
declarations: [
|
|
80
91
|
CentralizedContainerComponent,
|
|
@@ -82,7 +93,8 @@ i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "16.0.2", ngImpor
|
|
|
82
93
|
BreadcrumbComponent,
|
|
83
94
|
ConfigurationPageTitleComponent,
|
|
84
95
|
DurationTimelineComponent,
|
|
85
|
-
DurationProgressbarComponent
|
|
96
|
+
DurationProgressbarComponent,
|
|
97
|
+
ApipassInfiniteScrollComponent
|
|
86
98
|
],
|
|
87
99
|
exports: [
|
|
88
100
|
CentralizedContainerComponent,
|
|
@@ -90,9 +102,10 @@ i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "16.0.2", ngImpor
|
|
|
90
102
|
BreadcrumbComponent,
|
|
91
103
|
ConfigurationPageTitleComponent,
|
|
92
104
|
DurationTimelineComponent,
|
|
93
|
-
DurationProgressbarComponent
|
|
105
|
+
DurationProgressbarComponent,
|
|
106
|
+
ApipassInfiniteScrollComponent
|
|
94
107
|
],
|
|
95
108
|
providers: []
|
|
96
109
|
}]
|
|
97
110
|
}] });
|
|
98
|
-
//# sourceMappingURL=data:application/json;base64,
|
|
111
|
+
//# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoiY29udGFpbmVycy5tb2R1bGUuanMiLCJzb3VyY2VSb290IjoiIiwic291cmNlcyI6WyIuLi8uLi8uLi9wcm9qZWN0cy9jb250YWluZXJzL3NyYy9jb250YWluZXJzLm1vZHVsZS50cyJdLCJuYW1lcyI6W10sIm1hcHBpbmdzIjoiQUFBQSxPQUFPLEVBQUUsUUFBUSxFQUFFLE1BQU0sZUFBZSxDQUFBO0FBQ3hDLE9BQU8sRUFBRSxZQUFZLEVBQUUsTUFBTSxpQkFBaUIsQ0FBQTtBQUM5QyxPQUFPLEVBQUUsWUFBWSxFQUFFLE1BQU0saUJBQWlCLENBQUE7QUFDOUMsT0FBTyxFQUFFLFdBQVcsRUFBRSxtQkFBbUIsRUFBRSxNQUFNLGdCQUFnQixDQUFBO0FBQ2pFLE9BQU8sRUFBRSw2QkFBNkIsRUFBRSxNQUFNLHlEQUF5RCxDQUFBO0FBQ3ZHLE9BQU8sRUFBRSwwQkFBMEIsRUFBRSxNQUFNLDJEQUEyRCxDQUFBO0FBQ3RHLE9BQU8sRUFBRSxtQkFBbUIsRUFBRSxNQUFNLG1DQUFtQyxDQUFBO0FBQ3ZFLE9BQU8sRUFBRSxpQkFBaUIsRUFBRSxNQUFNLGVBQWUsQ0FBQTtBQUNqRCxPQUFPLEVBQUUsa0JBQWtCLEVBQUUsTUFBTSw4QkFBOEIsQ0FBQTtBQUNqRSxPQUFPLEVBQUUsYUFBYSxFQUFFLE1BQU0sd0JBQXdCLENBQUE7QUFDdEQsT0FBTyxFQUFFLGNBQWMsRUFBRSxNQUFNLHlCQUF5QixDQUFBO0FBQ3hELE9BQU8sRUFBRSxXQUFXLEVBQUUsTUFBTSxnQkFBZ0IsQ0FBQTtBQUM1QyxPQUFPLEVBQUUsYUFBYSxFQUFFLE1BQU0sa0JBQWtCLENBQUE7QUFDaEQsT0FBTyxFQUFFLFVBQVUsRUFBRSxNQUFNLGdCQUFnQixDQUFBO0FBQzNDLE9BQU8sRUFBRSxhQUFhLEVBQUUsTUFBTSxrQkFBa0IsQ0FBQTtBQUNoRCxPQUFPLEVBQUUsZ0JBQWdCLEVBQUUsTUFBTSwyQkFBMkIsQ0FBQTtBQUM1RCxPQUFPLEVBQUUsK0JBQStCLEVBQUUsTUFBTSwrREFBK0QsQ0FBQTtBQUMvRyxPQUFPLEVBQUUseUJBQXlCLEVBQUUsTUFBTSwwREFBMEQsQ0FBQztBQUNyRyxPQUFPLEVBQUUsZ0JBQWdCLEVBQUUsTUFBTSwyQkFBMkIsQ0FBQztBQUM3RCxPQUFPLEVBQUUsNEJBQTRCLEVBQUUsTUFBTSxnRUFBZ0UsQ0FBQztBQUM5RyxPQUFPLEVBQUUsOEJBQThCLEVBQUUsTUFBTSw2REFBNkQsQ0FBQztBQUM3RyxPQUFPLEVBQUUsb0JBQW9CLEVBQUUsTUFBTSxxQkFBcUIsQ0FBQzs7QUFDM0QsTUFzQ2EsZ0JBQWdCO3VHQUFoQixnQkFBZ0I7d0dBQWhCLGdCQUFnQixpQkFuQnpCLDZCQUE2QjtZQUM3QiwwQkFBMEI7WUFDMUIsbUJBQW1CO1lBQ25CLCtCQUErQjtZQUMvQix5QkFBeUI7WUFDekIsNEJBQTRCO1lBQzVCLDhCQUE4QixhQXZCOUIsWUFBWTtZQUNaLFlBQVk7WUFDWixXQUFXO1lBQ1gsbUJBQW1CO1lBQ25CLFdBQVc7WUFDWCxhQUFhO1lBQ2IsaUJBQWlCO1lBQ2pCLGtCQUFrQjtZQUNsQixhQUFhO1lBQ2IsY0FBYztZQUNkLGdCQUFnQjtZQUNoQixVQUFVO1lBQ1YsZ0JBQWdCO1lBQ2hCLG9CQUFvQjtZQUNwQixhQUFhLGFBWWIsNkJBQTZCO1lBQzdCLDBCQUEwQjtZQUMxQixtQkFBbUI7WUFDbkIsK0JBQStCO1lBQy9CLHlCQUF5QjtZQUN6Qiw0QkFBNEI7WUFDNUIsOEJBQThCO3dHQUlyQixnQkFBZ0IsWUFwQ3pCLFlBQVk7WUFDWixZQUFZO1lBQ1osV0FBVztZQUNYLG1CQUFtQjtZQUNuQixXQUFXO1lBQ1gsYUFBYTtZQUNiLGlCQUFpQjtZQUNqQixrQkFBa0I7WUFDbEIsYUFBYTtZQUNiLGNBQWM7WUFDZCxnQkFBZ0I7WUFDaEIsVUFBVTtZQUNWLGdCQUFnQjtZQUNoQixvQkFBb0I7WUFDcEIsYUFBYTs7U0FzQkosZ0JBQWdCOzJGQUFoQixnQkFBZ0I7a0JBdEM1QixRQUFRO21CQUFDO29CQUNSLE9BQU8sRUFBRTt3QkFDUCxZQUFZO3dCQUNaLFlBQVk7d0JBQ1osV0FBVzt3QkFDWCxtQkFBbUI7d0JBQ25CLFdBQVc7d0JBQ1gsYUFBYTt3QkFDYixpQkFBaUI7d0JBQ2pCLGtCQUFrQjt3QkFDbEIsYUFBYTt3QkFDYixjQUFjO3dCQUNkLGdCQUFnQjt3QkFDaEIsVUFBVTt3QkFDVixnQkFBZ0I7d0JBQ2hCLG9CQUFvQjt3QkFDcEIsYUFBYTtxQkFDZDtvQkFDRCxZQUFZLEVBQUU7d0JBQ1osNkJBQTZCO3dCQUM3QiwwQkFBMEI7d0JBQzFCLG1CQUFtQjt3QkFDbkIsK0JBQStCO3dCQUMvQix5QkFBeUI7d0JBQ3pCLDRCQUE0Qjt3QkFDNUIsOEJBQThCO3FCQUMvQjtvQkFDRCxPQUFPLEVBQUU7d0JBQ1AsNkJBQTZCO3dCQUM3QiwwQkFBMEI7d0JBQzFCLG1CQUFtQjt3QkFDbkIsK0JBQStCO3dCQUMvQix5QkFBeUI7d0JBQ3pCLDRCQUE0Qjt3QkFDNUIsOEJBQThCO3FCQUMvQjtvQkFDRCxTQUFTLEVBQUUsRUFBRTtpQkFDZCIsInNvdXJjZXNDb250ZW50IjpbImltcG9ydCB7IE5nTW9kdWxlIH0gZnJvbSAnQGFuZ3VsYXIvY29yZSdcbmltcG9ydCB7IENvbW1vbk1vZHVsZSB9IGZyb20gJ0Bhbmd1bGFyL2NvbW1vbidcbmltcG9ydCB7IFJvdXRlck1vZHVsZSB9IGZyb20gJ0Bhbmd1bGFyL3JvdXRlcidcbmltcG9ydCB7IEZvcm1zTW9kdWxlLCBSZWFjdGl2ZUZvcm1zTW9kdWxlIH0gZnJvbSAnQGFuZ3VsYXIvZm9ybXMnXG5pbXBvcnQgeyBDZW50cmFsaXplZENvbnRhaW5lckNvbXBvbmVudCB9IGZyb20gJy4vY2VudHJhbGl6ZWQtY29udGFpbmVyL2NlbnRyYWxpemVkLWNvbnRhaW5lci5jb21wb25lbnQnXG5pbXBvcnQgeyBDb25maWd1cmF0aW9uUGFnZUNvbXBvbmVudCB9IGZyb20gJy4vY29uZmlndXJhdGlvbi1wYWdlLWNvbnRlbnQvY29uZmlndXJhdGlvbi1wYWdlLmNvbXBvbmVudCdcbmltcG9ydCB7IEJyZWFkY3J1bWJDb21wb25lbnQgfSBmcm9tICcuL2JyZWFkY3J1bWIvYnJlYWRjcnVtYi5jb21wb25lbnQnXG5pbXBvcnQgeyBOZ1Njcm9sbGJhck1vZHVsZSB9IGZyb20gJ25neC1zY3JvbGxiYXInXG5pbXBvcnQgeyBNYXRGb3JtRmllbGRNb2R1bGUgfSBmcm9tICdAYW5ndWxhci9tYXRlcmlhbC9mb3JtLWZpZWxkJ1xuaW1wb3J0IHsgTWF0SWNvbk1vZHVsZSB9IGZyb20gJ0Bhbmd1bGFyL21hdGVyaWFsL2ljb24nXG5pbXBvcnQgeyBNYXRJbnB1dE1vZHVsZSB9IGZyb20gJ0Bhbmd1bGFyL21hdGVyaWFsL2lucHV0J1xuaW1wb3J0IHsgSWNvbnNNb2R1bGUgfSBmcm9tICdAYXBpcGFzcy9pY29ucydcbmltcG9ydCB7IEJ1dHRvbnNNb2R1bGUgfSBmcm9tICdAYXBpcGFzcy9idXR0b25zJ1xuaW1wb3J0IHsgUGlwZU1vZHVsZSB9IGZyb20gJ0BhcGlwYXNzL3BpcGVzJ1xuaW1wb3J0IHsgTG9hZGVyc01vZHVsZSB9IGZyb20gJ0BhcGlwYXNzL2xvYWRlcnMnXG5pbXBvcnQgeyBNYXRUb29sYmFyTW9kdWxlIH0gZnJvbSAnQGFuZ3VsYXIvbWF0ZXJpYWwvdG9vbGJhcidcbmltcG9ydCB7IENvbmZpZ3VyYXRpb25QYWdlVGl0bGVDb21wb25lbnQgfSBmcm9tICcuL2NvbmZpZ3VyYXRpb24tcGFnZS10aXRsZS9jb25maWd1cmF0aW9uLXBhZ2UtdGl0bGUuY29tcG9uZW50J1xuaW1wb3J0IHsgRHVyYXRpb25UaW1lbGluZUNvbXBvbmVudCB9IGZyb20gJy4vZHVyYXRpb24vZHVyYXRpb24tdGltZWxpbmUvZHVyYXRpb24tdGltZWxpbmUuY29tcG9uZW50JztcbmltcG9ydCB7IE1hdFRvb2x0aXBNb2R1bGUgfSBmcm9tICdAYW5ndWxhci9tYXRlcmlhbC90b29sdGlwJztcbmltcG9ydCB7IER1cmF0aW9uUHJvZ3Jlc3NiYXJDb21wb25lbnQgfSBmcm9tICcuL2R1cmF0aW9uL2R1cmF0aW9uLXByb2dyZXNzYmFyL2R1cmF0aW9uLXByb2dyZXNzYmFyLmNvbXBvbmVudCc7XG5pbXBvcnQgeyBBcGlwYXNzSW5maW5pdGVTY3JvbGxDb21wb25lbnQgfSBmcm9tICcuL2FwaXBhc3MtaW5maW5pdGUtc2Nyb2xsL2FwaXBhc3MtaW5maW5pdGUtc2Nyb2xsLmNvbXBvbmVudCc7XG5pbXBvcnQgeyBJbmZpbml0ZVNjcm9sbE1vZHVsZSB9IGZyb20gJ25neC1pbmZpbml0ZS1zY3JvbGwnO1xuQE5nTW9kdWxlKHtcbiAgaW1wb3J0czogW1xuICAgIENvbW1vbk1vZHVsZSxcbiAgICBSb3V0ZXJNb2R1bGUsXG4gICAgRm9ybXNNb2R1bGUsXG4gICAgUmVhY3RpdmVGb3Jtc01vZHVsZSxcbiAgICBJY29uc01vZHVsZSxcbiAgICBCdXR0b25zTW9kdWxlLFxuICAgIE5nU2Nyb2xsYmFyTW9kdWxlLFxuICAgIE1hdEZvcm1GaWVsZE1vZHVsZSxcbiAgICBNYXRJY29uTW9kdWxlLFxuICAgIE1hdElucHV0TW9kdWxlLFxuICAgIE1hdFRvb2xiYXJNb2R1bGUsXG4gICAgUGlwZU1vZHVsZSxcbiAgICBNYXRUb29sdGlwTW9kdWxlLFxuICAgIEluZmluaXRlU2Nyb2xsTW9kdWxlLFxuICAgIExvYWRlcnNNb2R1bGVcbiAgXSxcbiAgZGVjbGFyYXRpb25zOiBbXG4gICAgQ2VudHJhbGl6ZWRDb250YWluZXJDb21wb25lbnQsXG4gICAgQ29uZmlndXJhdGlvblBhZ2VDb21wb25lbnQsXG4gICAgQnJlYWRjcnVtYkNvbXBvbmVudCxcbiAgICBDb25maWd1cmF0aW9uUGFnZVRpdGxlQ29tcG9uZW50LFxuICAgIER1cmF0aW9uVGltZWxpbmVDb21wb25lbnQsXG4gICAgRHVyYXRpb25Qcm9ncmVzc2JhckNvbXBvbmVudCxcbiAgICBBcGlwYXNzSW5maW5pdGVTY3JvbGxDb21wb25lbnRcbiAgXSxcbiAgZXhwb3J0czogW1xuICAgIENlbnRyYWxpemVkQ29udGFpbmVyQ29tcG9uZW50LFxuICAgIENvbmZpZ3VyYXRpb25QYWdlQ29tcG9uZW50LFxuICAgIEJyZWFkY3J1bWJDb21wb25lbnQsXG4gICAgQ29uZmlndXJhdGlvblBhZ2VUaXRsZUNvbXBvbmVudCxcbiAgICBEdXJhdGlvblRpbWVsaW5lQ29tcG9uZW50LFxuICAgIER1cmF0aW9uUHJvZ3Jlc3NiYXJDb21wb25lbnQsXG4gICAgQXBpcGFzc0luZmluaXRlU2Nyb2xsQ29tcG9uZW50XG4gIF0sXG4gIHByb3ZpZGVyczogW11cbn0pXG5leHBvcnQgY2xhc3MgQ29udGFpbmVyc01vZHVsZSB7fVxuIl19
|
package/esm2022/public-api.mjs
CHANGED
|
@@ -5,4 +5,5 @@ export * from './configuration-page-title/configuration-page-title.component';
|
|
|
5
5
|
export * from './breadcrumb/breadcrumb.component';
|
|
6
6
|
export * from 'ngx-scrollbar';
|
|
7
7
|
export * from './duration/public-api';
|
|
8
|
-
|
|
8
|
+
export * from './apipass-infinite-scroll/apipass-infinite-scroll.component';
|
|
9
|
+
//# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoicHVibGljLWFwaS5qcyIsInNvdXJjZVJvb3QiOiIiLCJzb3VyY2VzIjpbIi4uLy4uLy4uL3Byb2plY3RzL2NvbnRhaW5lcnMvc3JjL3B1YmxpYy1hcGkudHMiXSwibmFtZXMiOltdLCJtYXBwaW5ncyI6IkFBQUEsY0FBYyxxQkFBcUIsQ0FBQTtBQUNuQyxjQUFjLHlEQUF5RCxDQUFBO0FBQ3ZFLGNBQWMsMkRBQTJELENBQUE7QUFDekUsY0FBYywrREFBK0QsQ0FBQTtBQUM3RSxjQUFjLG1DQUFtQyxDQUFBO0FBQ2pELGNBQWMsZUFBZSxDQUFBO0FBQzdCLGNBQWMsdUJBQXVCLENBQUE7QUFDckMsY0FBYyw2REFBNkQsQ0FBQSIsInNvdXJjZXNDb250ZW50IjpbImV4cG9ydCAqIGZyb20gJy4vY29udGFpbmVycy5tb2R1bGUnXG5leHBvcnQgKiBmcm9tICcuL2NlbnRyYWxpemVkLWNvbnRhaW5lci9jZW50cmFsaXplZC1jb250YWluZXIuY29tcG9uZW50J1xuZXhwb3J0ICogZnJvbSAnLi9jb25maWd1cmF0aW9uLXBhZ2UtY29udGVudC9jb25maWd1cmF0aW9uLXBhZ2UuY29tcG9uZW50J1xuZXhwb3J0ICogZnJvbSAnLi9jb25maWd1cmF0aW9uLXBhZ2UtdGl0bGUvY29uZmlndXJhdGlvbi1wYWdlLXRpdGxlLmNvbXBvbmVudCdcbmV4cG9ydCAqIGZyb20gJy4vYnJlYWRjcnVtYi9icmVhZGNydW1iLmNvbXBvbmVudCdcbmV4cG9ydCAqIGZyb20gJ25neC1zY3JvbGxiYXInXG5leHBvcnQgKiBmcm9tICcuL2R1cmF0aW9uL3B1YmxpYy1hcGknXG5leHBvcnQgKiBmcm9tICcuL2FwaXBhc3MtaW5maW5pdGUtc2Nyb2xsL2FwaXBhc3MtaW5maW5pdGUtc2Nyb2xsLmNvbXBvbmVudCdcbiJdfQ==
|
|
@@ -1,5 +1,5 @@
|
|
|
1
1
|
import * as i0 from '@angular/core';
|
|
2
|
-
import { EventEmitter, Component, Input, Output, ViewChild, NgModule } from '@angular/core';
|
|
2
|
+
import { EventEmitter, Component, Input, Output, ViewChild, TemplateRef, ContentChild, NgModule } from '@angular/core';
|
|
3
3
|
import * as i1 from '@angular/common';
|
|
4
4
|
import { CommonModule } from '@angular/common';
|
|
5
5
|
import { RouterModule } from '@angular/router';
|
|
@@ -24,9 +24,13 @@ import * as i3$2 from '@apipass/buttons';
|
|
|
24
24
|
import { ButtonsModule } from '@apipass/buttons';
|
|
25
25
|
import * as i1$1 from '@apipass/pipes';
|
|
26
26
|
import { PipeModule } from '@apipass/pipes';
|
|
27
|
+
import * as i3$3 from '@apipass/loaders';
|
|
28
|
+
import { LoadersModule } from '@apipass/loaders';
|
|
27
29
|
import moment from 'moment-timezone';
|
|
28
30
|
import * as i2$2 from '@angular/material/tooltip';
|
|
29
31
|
import { MatTooltipModule } from '@angular/material/tooltip';
|
|
32
|
+
import * as i2$3 from 'ngx-infinite-scroll';
|
|
33
|
+
import { InfiniteScrollModule } from 'ngx-infinite-scroll';
|
|
30
34
|
|
|
31
35
|
class CentralizedContainerComponent {
|
|
32
36
|
searchTerm = '';
|
|
@@ -371,6 +375,189 @@ i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "16.0.2", ngImpor
|
|
|
371
375
|
type: Input
|
|
372
376
|
}] } });
|
|
373
377
|
|
|
378
|
+
class ApipassInfiniteScrollComponent {
|
|
379
|
+
subscriptions = [];
|
|
380
|
+
_currentId;
|
|
381
|
+
get getCurrentId() {
|
|
382
|
+
return this._currentId;
|
|
383
|
+
}
|
|
384
|
+
_items = [];
|
|
385
|
+
_currentPage = 1;
|
|
386
|
+
set currentPage(page) {
|
|
387
|
+
this._currentPage = page;
|
|
388
|
+
}
|
|
389
|
+
get currentPage() {
|
|
390
|
+
return this._currentPage;
|
|
391
|
+
}
|
|
392
|
+
set items(items) {
|
|
393
|
+
this._items = items;
|
|
394
|
+
}
|
|
395
|
+
get items() {
|
|
396
|
+
return this._items;
|
|
397
|
+
}
|
|
398
|
+
pageSize = 50;
|
|
399
|
+
loading;
|
|
400
|
+
filter = {};
|
|
401
|
+
nextPageFn;
|
|
402
|
+
previousPageFn;
|
|
403
|
+
refreshItems = new EventEmitter();
|
|
404
|
+
showEmptyList;
|
|
405
|
+
emptyListMessage = 'No Records Found...';
|
|
406
|
+
infiniteScrollDownDistance = 2;
|
|
407
|
+
infiniteScrollUpDistance = 0.5;
|
|
408
|
+
infiniteScrollThrottle = 150;
|
|
409
|
+
maxHeight = '100vh';
|
|
410
|
+
minHeight = '50px';
|
|
411
|
+
onNextPage = new EventEmitter();
|
|
412
|
+
onPreviousPage = new EventEmitter();
|
|
413
|
+
loadingChange = new EventEmitter();
|
|
414
|
+
currentPageChange = new EventEmitter();
|
|
415
|
+
itemsTemplate;
|
|
416
|
+
isFirstScrollToTop;
|
|
417
|
+
loadingNextPage;
|
|
418
|
+
loadingPreviousPage;
|
|
419
|
+
constructor() {
|
|
420
|
+
this._currentId = Math.random().toString(36).substring(2);
|
|
421
|
+
}
|
|
422
|
+
ngOnInit() {
|
|
423
|
+
this.subscriptions.push(this.refreshItems.subscribe(($event) => {
|
|
424
|
+
if (!$event?.continueOnTheSamePage) {
|
|
425
|
+
this._currentPage = 0;
|
|
426
|
+
this.currentPageChange.emit(this._currentPage);
|
|
427
|
+
}
|
|
428
|
+
}));
|
|
429
|
+
}
|
|
430
|
+
ngOnDestroy() {
|
|
431
|
+
this.subscriptions?.forEach(subscription => {
|
|
432
|
+
subscription.unsubscribe();
|
|
433
|
+
});
|
|
434
|
+
this.subscriptions = [];
|
|
435
|
+
}
|
|
436
|
+
loadingPages() {
|
|
437
|
+
return this.loadingNextPage || this.loadingPreviousPage;
|
|
438
|
+
}
|
|
439
|
+
showListLoader() {
|
|
440
|
+
return this.loading;
|
|
441
|
+
}
|
|
442
|
+
async nextPage() {
|
|
443
|
+
if (this.loadingPages()) {
|
|
444
|
+
return;
|
|
445
|
+
}
|
|
446
|
+
try {
|
|
447
|
+
this.loadingNextPage = true;
|
|
448
|
+
this.isFirstScrollToTop = true;
|
|
449
|
+
this.onNextPage.emit({
|
|
450
|
+
currentPage: this.currentPage,
|
|
451
|
+
nextPage: this.currentPage + 1
|
|
452
|
+
});
|
|
453
|
+
this.currentPage++;
|
|
454
|
+
const nextItems = await this.nextPageFn({
|
|
455
|
+
...this.filter,
|
|
456
|
+
page: this.currentPage,
|
|
457
|
+
pageSize: this.pageSize
|
|
458
|
+
});
|
|
459
|
+
if (nextItems?.length === 0) {
|
|
460
|
+
this.currentPage--;
|
|
461
|
+
return;
|
|
462
|
+
}
|
|
463
|
+
this.currentPageChange.emit(this._currentPage);
|
|
464
|
+
const needRemoveLastPageSizeItems = this.currentPage > 2;
|
|
465
|
+
this._items = needRemoveLastPageSizeItems ? this._items?.slice(this.pageSize).concat(nextItems) : this._items.concat(nextItems);
|
|
466
|
+
}
|
|
467
|
+
finally {
|
|
468
|
+
this.loadingNextPage = false;
|
|
469
|
+
}
|
|
470
|
+
}
|
|
471
|
+
async previousPage() {
|
|
472
|
+
if (this.loadingPages()) {
|
|
473
|
+
return;
|
|
474
|
+
}
|
|
475
|
+
try {
|
|
476
|
+
this.loadingPreviousPage = true;
|
|
477
|
+
this.currentPage = this.isFirstScrollToTop ? this.currentPage - 2 : this.currentPage - 1;
|
|
478
|
+
const needScrollToLastElementBeforePreviousPage = this.currentPage > 0;
|
|
479
|
+
this.currentPage = this.currentPage > 0 ? this.currentPage : 1;
|
|
480
|
+
const previousItems = await this.previousPageFn({
|
|
481
|
+
...this.filter,
|
|
482
|
+
page: this.currentPage,
|
|
483
|
+
pageSize: this.pageSize
|
|
484
|
+
});
|
|
485
|
+
if (previousItems?.length === 0) {
|
|
486
|
+
return;
|
|
487
|
+
}
|
|
488
|
+
this.currentPageChange.emit(this._currentPage);
|
|
489
|
+
if (needScrollToLastElementBeforePreviousPage) {
|
|
490
|
+
const currentItems = this.items?.slice(0, this.pageSize);
|
|
491
|
+
this.items = previousItems.concat(currentItems);
|
|
492
|
+
this.scrollToLastElementBeforePreviousPage();
|
|
493
|
+
}
|
|
494
|
+
else {
|
|
495
|
+
this.items = previousItems;
|
|
496
|
+
}
|
|
497
|
+
}
|
|
498
|
+
finally {
|
|
499
|
+
this.isFirstScrollToTop = false;
|
|
500
|
+
this.loadingPreviousPage = false;
|
|
501
|
+
}
|
|
502
|
+
}
|
|
503
|
+
scrollToLastElementBeforePreviousPage() {
|
|
504
|
+
setTimeout(() => {
|
|
505
|
+
const scrollElement = document.getElementById(`apipass-infinite-scroll-list-${this.getCurrentId}`);
|
|
506
|
+
const executionId = document.getElementById(`apipass-infinite-scroll-item-${this.getCurrentId}-${this.pageSize}`);
|
|
507
|
+
if (scrollElement && executionId) {
|
|
508
|
+
scrollElement.scrollTo({ top: executionId.offsetTop + executionId.clientHeight });
|
|
509
|
+
}
|
|
510
|
+
});
|
|
511
|
+
}
|
|
512
|
+
static ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "16.0.2", ngImport: i0, type: ApipassInfiniteScrollComponent, deps: [], target: i0.ɵɵFactoryTarget.Component });
|
|
513
|
+
static ɵcmp = i0.ɵɵngDeclareComponent({ minVersion: "14.0.0", version: "16.0.2", type: ApipassInfiniteScrollComponent, selector: "apipass-infinite-scroll-component", inputs: { currentPage: "currentPage", items: "items", pageSize: "pageSize", loading: "loading", filter: "filter", nextPageFn: "nextPageFn", previousPageFn: "previousPageFn", refreshItems: "refreshItems", showEmptyList: "showEmptyList", emptyListMessage: "emptyListMessage", infiniteScrollDownDistance: "infiniteScrollDownDistance", infiniteScrollUpDistance: "infiniteScrollUpDistance", infiniteScrollThrottle: "infiniteScrollThrottle", maxHeight: "maxHeight", minHeight: "minHeight" }, outputs: { onNextPage: "onNextPage", onPreviousPage: "onPreviousPage", loadingChange: "loadingChange", currentPageChange: "currentPageChange" }, queries: [{ propertyName: "itemsTemplate", first: true, predicate: TemplateRef, descendants: true }], ngImport: i0, template: "<div class=\"apipass-infinite-scroll-component\">\n <div class=\"apipass-infinite-scroll-list\"\n *ngIf=\"items?.length > 0\"\n [id]=\"'apipass-infinite-scroll-list-' + getCurrentId\"\n [style.max-height]=\"maxHeight\"\n [style.min-height]=\"minHeight\"\n infiniteScroll\n [infiniteScrollDistance]=\"infiniteScrollDownDistance\"\n [infiniteScrollUpDistance]=\"infiniteScrollUpDistance\"\n [infiniteScrollThrottle]=\"infiniteScrollThrottle\"\n [infiniteScrollDisabled]=\"loadingPages()\"\n (scrolled)=\"nextPage()\"\n (scrolledUp)=\"previousPage()\"\n [scrollWindow]=\"false\">\n <overlay-loader-component class=\"loader-top\" *ngIf=\"loadingPreviousPage\"></overlay-loader-component>\n <div class=\"apipass-infinite-scroll-item\"\n *ngFor=\"let item of items; let index = index\"\n [id]=\"'apipass-infinite-scroll-item-' + getCurrentId + '-' + (index + 1)\">\n <ng-container *ngTemplateOutlet=\"itemsTemplate; context: { $implicit: item }\"></ng-container>\n </div>\n <div class=\"loader-bottom-content\" *ngIf=\"loadingNextPage\">\n <overlay-loader-component class=\"loader-bottom\"></overlay-loader-component>\n </div>\n </div>\n <div class=\"apipass-infinite-scroll-list-no-rows\" *ngIf=\"this.showEmptyList && !showListLoader() && items?.length === 0\">\n {{emptyListMessage}}\n </div>\n</div>\n", styles: [".apipass-infinite-scroll-component .apipass-infinite-scroll-list{box-sizing:border-box;position:relative;max-height:calc(100vh - 450px);min-height:100px;overflow-y:auto;overflow-x:hidden;scrollbar-width:thin;scrollbar-color:transparent transparent;overscroll-behavior:contain}.apipass-infinite-scroll-component .apipass-infinite-scroll-list::-webkit-scrollbar{width:4px;position:absolute;inset:0}.apipass-infinite-scroll-component .apipass-infinite-scroll-list::-webkit-scrollbar-thumb{background:#CBCBCB;border-radius:2px}.apipass-infinite-scroll-component .apipass-infinite-scroll-list::-webkit-scrollbar-thumb:hover{background:rgba(0,0,0,.7)}.apipass-infinite-scroll-component .apipass-infinite-scroll-list .loader-bottom-content{position:sticky}.apipass-infinite-scroll-component .apipass-infinite-scroll-list overlay-loader-component{display:flex;justify-content:center;align-items:center;position:absolute;background:rgba(255,255,255,.7607843137);z-index:999;width:100%}.apipass-infinite-scroll-component .apipass-infinite-scroll-list overlay-loader-component.loader-top{top:0;box-shadow:0 5px 10px 2px #ffffffc2}.apipass-infinite-scroll-component .apipass-infinite-scroll-list overlay-loader-component.loader-bottom{bottom:0;box-shadow:0 -5px 10px 2px #ffffffc2}.apipass-infinite-scroll-component .apipass-infinite-scroll-list overlay-loader-component ::ng-deep mat-spinner{width:25px!important;height:50px;--mdc-circular-progress-size: 50px;--mdc-circular-progress-active-indicator-width: 50px}.apipass-infinite-scroll-component .apipass-infinite-scroll-list-no-rows{width:100%;height:40px;display:flex;justify-content:center;align-items:center;margin-top:10px;border-radius:5px;border:1px solid #CCC;background:#EEE;color:var(--color-fonts-tertiary)!important}\n"], dependencies: [{ kind: "directive", type: i1.NgForOf, selector: "[ngFor][ngForOf]", inputs: ["ngForOf", "ngForTrackBy", "ngForTemplate"] }, { kind: "directive", type: i1.NgIf, selector: "[ngIf]", inputs: ["ngIf", "ngIfThen", "ngIfElse"] }, { kind: "directive", type: i1.NgTemplateOutlet, selector: "[ngTemplateOutlet]", inputs: ["ngTemplateOutletContext", "ngTemplateOutlet", "ngTemplateOutletInjector"] }, { kind: "directive", type: i2$3.InfiniteScrollDirective, selector: "[infiniteScroll], [infinite-scroll], [data-infinite-scroll]", inputs: ["infiniteScrollDistance", "infiniteScrollUpDistance", "infiniteScrollThrottle", "infiniteScrollDisabled", "infiniteScrollContainer", "scrollWindow", "immediateCheck", "horizontal", "alwaysCallback", "fromRoot"], outputs: ["scrolled", "scrolledUp"] }, { kind: "component", type: i3$3.OverlayLoaderComponent, selector: "overlay-loader-component" }] });
|
|
514
|
+
}
|
|
515
|
+
i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "16.0.2", ngImport: i0, type: ApipassInfiniteScrollComponent, decorators: [{
|
|
516
|
+
type: Component,
|
|
517
|
+
args: [{ selector: 'apipass-infinite-scroll-component', template: "<div class=\"apipass-infinite-scroll-component\">\n <div class=\"apipass-infinite-scroll-list\"\n *ngIf=\"items?.length > 0\"\n [id]=\"'apipass-infinite-scroll-list-' + getCurrentId\"\n [style.max-height]=\"maxHeight\"\n [style.min-height]=\"minHeight\"\n infiniteScroll\n [infiniteScrollDistance]=\"infiniteScrollDownDistance\"\n [infiniteScrollUpDistance]=\"infiniteScrollUpDistance\"\n [infiniteScrollThrottle]=\"infiniteScrollThrottle\"\n [infiniteScrollDisabled]=\"loadingPages()\"\n (scrolled)=\"nextPage()\"\n (scrolledUp)=\"previousPage()\"\n [scrollWindow]=\"false\">\n <overlay-loader-component class=\"loader-top\" *ngIf=\"loadingPreviousPage\"></overlay-loader-component>\n <div class=\"apipass-infinite-scroll-item\"\n *ngFor=\"let item of items; let index = index\"\n [id]=\"'apipass-infinite-scroll-item-' + getCurrentId + '-' + (index + 1)\">\n <ng-container *ngTemplateOutlet=\"itemsTemplate; context: { $implicit: item }\"></ng-container>\n </div>\n <div class=\"loader-bottom-content\" *ngIf=\"loadingNextPage\">\n <overlay-loader-component class=\"loader-bottom\"></overlay-loader-component>\n </div>\n </div>\n <div class=\"apipass-infinite-scroll-list-no-rows\" *ngIf=\"this.showEmptyList && !showListLoader() && items?.length === 0\">\n {{emptyListMessage}}\n </div>\n</div>\n", styles: [".apipass-infinite-scroll-component .apipass-infinite-scroll-list{box-sizing:border-box;position:relative;max-height:calc(100vh - 450px);min-height:100px;overflow-y:auto;overflow-x:hidden;scrollbar-width:thin;scrollbar-color:transparent transparent;overscroll-behavior:contain}.apipass-infinite-scroll-component .apipass-infinite-scroll-list::-webkit-scrollbar{width:4px;position:absolute;inset:0}.apipass-infinite-scroll-component .apipass-infinite-scroll-list::-webkit-scrollbar-thumb{background:#CBCBCB;border-radius:2px}.apipass-infinite-scroll-component .apipass-infinite-scroll-list::-webkit-scrollbar-thumb:hover{background:rgba(0,0,0,.7)}.apipass-infinite-scroll-component .apipass-infinite-scroll-list .loader-bottom-content{position:sticky}.apipass-infinite-scroll-component .apipass-infinite-scroll-list overlay-loader-component{display:flex;justify-content:center;align-items:center;position:absolute;background:rgba(255,255,255,.7607843137);z-index:999;width:100%}.apipass-infinite-scroll-component .apipass-infinite-scroll-list overlay-loader-component.loader-top{top:0;box-shadow:0 5px 10px 2px #ffffffc2}.apipass-infinite-scroll-component .apipass-infinite-scroll-list overlay-loader-component.loader-bottom{bottom:0;box-shadow:0 -5px 10px 2px #ffffffc2}.apipass-infinite-scroll-component .apipass-infinite-scroll-list overlay-loader-component ::ng-deep mat-spinner{width:25px!important;height:50px;--mdc-circular-progress-size: 50px;--mdc-circular-progress-active-indicator-width: 50px}.apipass-infinite-scroll-component .apipass-infinite-scroll-list-no-rows{width:100%;height:40px;display:flex;justify-content:center;align-items:center;margin-top:10px;border-radius:5px;border:1px solid #CCC;background:#EEE;color:var(--color-fonts-tertiary)!important}\n"] }]
|
|
518
|
+
}], ctorParameters: function () { return []; }, propDecorators: { currentPage: [{
|
|
519
|
+
type: Input
|
|
520
|
+
}], items: [{
|
|
521
|
+
type: Input
|
|
522
|
+
}], pageSize: [{
|
|
523
|
+
type: Input
|
|
524
|
+
}], loading: [{
|
|
525
|
+
type: Input
|
|
526
|
+
}], filter: [{
|
|
527
|
+
type: Input
|
|
528
|
+
}], nextPageFn: [{
|
|
529
|
+
type: Input
|
|
530
|
+
}], previousPageFn: [{
|
|
531
|
+
type: Input
|
|
532
|
+
}], refreshItems: [{
|
|
533
|
+
type: Input
|
|
534
|
+
}], showEmptyList: [{
|
|
535
|
+
type: Input
|
|
536
|
+
}], emptyListMessage: [{
|
|
537
|
+
type: Input
|
|
538
|
+
}], infiniteScrollDownDistance: [{
|
|
539
|
+
type: Input
|
|
540
|
+
}], infiniteScrollUpDistance: [{
|
|
541
|
+
type: Input
|
|
542
|
+
}], infiniteScrollThrottle: [{
|
|
543
|
+
type: Input
|
|
544
|
+
}], maxHeight: [{
|
|
545
|
+
type: Input
|
|
546
|
+
}], minHeight: [{
|
|
547
|
+
type: Input
|
|
548
|
+
}], onNextPage: [{
|
|
549
|
+
type: Output
|
|
550
|
+
}], onPreviousPage: [{
|
|
551
|
+
type: Output
|
|
552
|
+
}], loadingChange: [{
|
|
553
|
+
type: Output
|
|
554
|
+
}], currentPageChange: [{
|
|
555
|
+
type: Output
|
|
556
|
+
}], itemsTemplate: [{
|
|
557
|
+
type: ContentChild,
|
|
558
|
+
args: [TemplateRef]
|
|
559
|
+
}] } });
|
|
560
|
+
|
|
374
561
|
class ContainersModule {
|
|
375
562
|
static ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "16.0.2", ngImport: i0, type: ContainersModule, deps: [], target: i0.ɵɵFactoryTarget.NgModule });
|
|
376
563
|
static ɵmod = i0.ɵɵngDeclareNgModule({ minVersion: "14.0.0", version: "16.0.2", ngImport: i0, type: ContainersModule, declarations: [CentralizedContainerComponent,
|
|
@@ -378,7 +565,8 @@ class ContainersModule {
|
|
|
378
565
|
BreadcrumbComponent,
|
|
379
566
|
ConfigurationPageTitleComponent,
|
|
380
567
|
DurationTimelineComponent,
|
|
381
|
-
DurationProgressbarComponent
|
|
568
|
+
DurationProgressbarComponent,
|
|
569
|
+
ApipassInfiniteScrollComponent], imports: [CommonModule,
|
|
382
570
|
RouterModule,
|
|
383
571
|
FormsModule,
|
|
384
572
|
ReactiveFormsModule,
|
|
@@ -390,12 +578,15 @@ class ContainersModule {
|
|
|
390
578
|
MatInputModule,
|
|
391
579
|
MatToolbarModule,
|
|
392
580
|
PipeModule,
|
|
393
|
-
MatTooltipModule
|
|
581
|
+
MatTooltipModule,
|
|
582
|
+
InfiniteScrollModule,
|
|
583
|
+
LoadersModule], exports: [CentralizedContainerComponent,
|
|
394
584
|
ConfigurationPageComponent,
|
|
395
585
|
BreadcrumbComponent,
|
|
396
586
|
ConfigurationPageTitleComponent,
|
|
397
587
|
DurationTimelineComponent,
|
|
398
|
-
DurationProgressbarComponent
|
|
588
|
+
DurationProgressbarComponent,
|
|
589
|
+
ApipassInfiniteScrollComponent] });
|
|
399
590
|
static ɵinj = i0.ɵɵngDeclareInjector({ minVersion: "12.0.0", version: "16.0.2", ngImport: i0, type: ContainersModule, imports: [CommonModule,
|
|
400
591
|
RouterModule,
|
|
401
592
|
FormsModule,
|
|
@@ -408,7 +599,9 @@ class ContainersModule {
|
|
|
408
599
|
MatInputModule,
|
|
409
600
|
MatToolbarModule,
|
|
410
601
|
PipeModule,
|
|
411
|
-
MatTooltipModule
|
|
602
|
+
MatTooltipModule,
|
|
603
|
+
InfiniteScrollModule,
|
|
604
|
+
LoadersModule] });
|
|
412
605
|
}
|
|
413
606
|
i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "16.0.2", ngImport: i0, type: ContainersModule, decorators: [{
|
|
414
607
|
type: NgModule,
|
|
@@ -426,7 +619,9 @@ i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "16.0.2", ngImpor
|
|
|
426
619
|
MatInputModule,
|
|
427
620
|
MatToolbarModule,
|
|
428
621
|
PipeModule,
|
|
429
|
-
MatTooltipModule
|
|
622
|
+
MatTooltipModule,
|
|
623
|
+
InfiniteScrollModule,
|
|
624
|
+
LoadersModule
|
|
430
625
|
],
|
|
431
626
|
declarations: [
|
|
432
627
|
CentralizedContainerComponent,
|
|
@@ -434,7 +629,8 @@ i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "16.0.2", ngImpor
|
|
|
434
629
|
BreadcrumbComponent,
|
|
435
630
|
ConfigurationPageTitleComponent,
|
|
436
631
|
DurationTimelineComponent,
|
|
437
|
-
DurationProgressbarComponent
|
|
632
|
+
DurationProgressbarComponent,
|
|
633
|
+
ApipassInfiniteScrollComponent
|
|
438
634
|
],
|
|
439
635
|
exports: [
|
|
440
636
|
CentralizedContainerComponent,
|
|
@@ -442,7 +638,8 @@ i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "16.0.2", ngImpor
|
|
|
442
638
|
BreadcrumbComponent,
|
|
443
639
|
ConfigurationPageTitleComponent,
|
|
444
640
|
DurationTimelineComponent,
|
|
445
|
-
DurationProgressbarComponent
|
|
641
|
+
DurationProgressbarComponent,
|
|
642
|
+
ApipassInfiniteScrollComponent
|
|
446
643
|
],
|
|
447
644
|
providers: []
|
|
448
645
|
}]
|
|
@@ -452,5 +649,5 @@ i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "16.0.2", ngImpor
|
|
|
452
649
|
* Generated bundle index. Do not edit.
|
|
453
650
|
*/
|
|
454
651
|
|
|
455
|
-
export { BreadcrumbComponent, CentralizedContainerComponent, ConfigurationPageComponent, ConfigurationPageTitleComponent, ContainersModule, DurationProgressbarComponent, DurationTimelineComponent };
|
|
652
|
+
export { ApipassInfiniteScrollComponent, BreadcrumbComponent, CentralizedContainerComponent, ConfigurationPageComponent, ConfigurationPageTitleComponent, ContainersModule, DurationProgressbarComponent, DurationTimelineComponent };
|
|
456
653
|
//# sourceMappingURL=apipass-containers.mjs.map
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"apipass-containers.mjs","sources":["../../../projects/containers/src/centralized-container/centralized-container.component.ts","../../../projects/containers/src/centralized-container/centralized-container.component.html","../../../projects/containers/src/configuration-page-content/configuration-page.component.ts","../../../projects/containers/src/configuration-page-content/configuration-page.component.html","../../../projects/containers/src/breadcrumb/breadcrumb.component.ts","../../../projects/containers/src/breadcrumb/breadcrumb.component.html","../../../projects/containers/src/configuration-page-title/configuration-page-title.component.ts","../../../projects/containers/src/configuration-page-title/configuration-page-title.component.html","../../../projects/containers/src/duration/duration-timeline/duration-timeline.component.ts","../../../projects/containers/src/duration/duration-timeline/duration-timeline.component.html","../../../projects/containers/src/duration/duration-progressbar/duration-progressbar.component.ts","../../../projects/containers/src/duration/duration-progressbar/duration-progressbar.component.html","../../../projects/containers/src/containers.module.ts","../../../projects/containers/src/apipass-containers.ts"],"sourcesContent":["import { Component, EventEmitter, Input, Output, ViewChild } from '@angular/core'\nimport { NgScrollbar } from 'ngx-scrollbar'\n\n@Component({\n selector: 'centralized-container',\n templateUrl: 'centralized-container.component.html',\n styleUrls: ['centralized-container.component.scss']\n})\nexport class CentralizedContainerComponent {\n\n public searchTerm = ''\n\n @Input() public searchLabel: string\n @Input() public hasSearch = true\n @Input() public ignoreZoom = false\n\n @Output()\n public searchChanged = new EventEmitter<string>()\n\n @ViewChild(NgScrollbar, { static: true })\n public scrollbarRef: NgScrollbar | undefined\n\n public searchTermChanged (): void {\n this.searchChanged.emit(this.searchTerm)\n }\n\n}\n","<div class=\"centralized-container\" [ngClass]=\"{'centralized-container-zoom': !ignoreZoom}\">\n <ng-scrollbar [visibility]=\"'hover'\">\n <div class=\"list-content\">\n <div class=\"list-search\" *ngIf=\"hasSearch\">\n <mat-form-field>\n <mat-label *ngIf=\"searchLabel\">{{searchLabel}}</mat-label>\n <input matInput type=\"search\" [(ngModel)]=\"searchTerm\" (ngModelChange)=\"searchTermChanged()\" />\n <mat-icon class=\"search-icon\" matSuffix>search</mat-icon>\n </mat-form-field>\n </div>\n <ng-content></ng-content>\n </div>\n </ng-scrollbar>\n</div>\n","import { Component, EventEmitter, Input, Output, ViewChild } from '@angular/core'\nimport { NgScrollbar } from 'ngx-scrollbar'\nimport { Subject } from 'rxjs'\nimport { debounceTime, distinctUntilChanged } from 'rxjs/operators'\n\n@Component({\n selector: 'configuration-page-container',\n templateUrl: 'configuration-page.component.html',\n styleUrls: ['configuration-page.component.scss']\n})\nexport class ConfigurationPageComponent {\n\n public searchTerm = ''\n\n @Input() public verticalSeparate = false\n @Input() public footerPaginator = false\n @Input() public hasSearch = true\n @Input() public searchDebounceTime = 1000\n @Input() public searchLabel = ''\n\n txtQueryChanged: Subject<string> = new Subject<string>()\n\n @Output() public searchChanged = new EventEmitter<string>()\n @Output() public searchClick = new EventEmitter<string>()\n\n @ViewChild(NgScrollbar, { static: true })\n public scrollbarRef: NgScrollbar | undefined\n\n constructor () {\n this.txtQueryChanged.pipe(\n debounceTime(this.searchDebounceTime),\n distinctUntilChanged()).subscribe(model => { this.searchChanged.next(model) }\n )\n }\n\n public searchTermChanged (): void {\n this.txtQueryChanged.next(this.searchTerm)\n }\n\n public searchIconClick (): void {\n this.searchClick.next(this.searchTerm)\n }\n\n}\n","<div class=\"configuration-page-container\" [ngClass]=\"{'footer-paginator': footerPaginator}\">\n <ng-scrollbar [visibility]=\"'hover'\">\n <div class=\"list-content\">\n <div class=\"list-search\" *ngIf=\"hasSearch\">\n <mat-form-field class=\"apipass-search-input-text search-input-item small-text\"\n [ngClass]=\"{'label-input': searchLabel}\"\n appearance=\"outline\">\n <mat-label *ngIf=\"searchLabel\">{{searchLabel}}</mat-label>\n <input matInput type=\"search\" class=\"search-input\"\n [(ngModel)]=\"searchTerm\"\n (ngModelChange)=\"searchTermChanged()\"\n />\n <mat-icon class=\"search-icon\" matSuffix (click)=\"searchIconClick()\">search</mat-icon>\n </mat-form-field>\n </div>\n\n <div class=\"container-content\" [ngClass]=\"{'vertical-separate': verticalSeparate}\">\n <ng-content></ng-content>\n </div>\n </div>\n </ng-scrollbar>\n</div>\n","import { Component, EventEmitter, Input, Output } from '@angular/core'\n\n@Component({\n selector: 'breadcrumb-component',\n templateUrl: 'breadcrumb.component.html',\n styleUrls: ['breadcrumb.component.scss']\n})\nexport class BreadcrumbComponent {\n\n @Input() public icon = 'keyboard_arrow_right'\n @Input() public items: any = []\n @Input() public labelProperty = 'label'\n @Output() itemClick = new EventEmitter<{ index: number, item: any }>()\n\n public eventClick (index: number, item: any): any {\n this.items.splice(index + 1, this.items.length - 1)\n this.itemClick.emit({ index, item })\n }\n\n}\n","<mat-toolbar *ngIf=\"items.length > 0\" color=\"primary\">\n <span *ngFor=\"let header of items; let indx = index, let last = last\">\n <a mat-button\n [ngClass]=\"!last ? 'text-link' : 'default-cursor'\"\n (click)=\"!last ? eventClick(indx, header) : undefined\">{{header[labelProperty]}}\n <mat-icon [ngClass]=\"{'hidden-icon': last}\">{{icon}}</mat-icon>\n </a>\n </span>\n</mat-toolbar>\n","import { Component, EventEmitter, Input, Output } from '@angular/core';\n\n@Component({\n selector: 'configuration-page-title',\n templateUrl: 'configuration-page-title.component.html',\n styleUrls: ['configuration-page-title.component.scss']\n})\nexport class ConfigurationPageTitleComponent {\n\n @Input() public icon: string;\n @Input() public isMaterialIcon = false;\n @Input() public materialOutline = false;\n\n @Input() public title: string;\n @Input() public buttonText: string;\n @Input() public buttonIcon: string;\n\n @Output() public onNewButtonClick = new EventEmitter<boolean>();\n\n public newButtonClick(): void {\n this.onNewButtonClick.emit(true);\n }\n\n}\n","<div class=\"configuration-title\">\n\n <div class=\"text\">\n <icon *ngIf=\"icon\"\n [ngClass]=\"{'title-icon-material': isMaterialIcon}\"\n [isMaterialIcon]=\"isMaterialIcon\"\n [materialOutline]=\"materialOutline\"\n [type]=\"'configuration-icon'\"\n [name]=\"icon\">\n </icon>\n {{title}}\n </div>\n\n <div class=\"button\" *ngIf=\"buttonText\">\n <secondary-button\n [btnClass]=\"'font-black'\"\n [icon]=\"buttonIcon\"\n [label]=\"buttonText\"\n (onClick)=\"newButtonClick()\">\n </secondary-button>\n </div>\n\n</div>\n","import { Component, Input, OnInit } from '@angular/core';\nimport moment from 'moment-timezone';\n\n@Component({\n selector: 'duration-timeline-component',\n templateUrl: 'duration-timeline.component.html',\n styleUrls: ['duration-timeline.component.scss']\n})\nexport class DurationTimelineComponent implements OnInit {\n\n public timeLineParts: number[] = [];\n public running: boolean\n\n private _startDate: Date;\n private _endDate: Date;\n private _durationParts: number = 0\n\n /*\n * If this option is true, depending on the total duration time and numbers of the duration parts, numbers can be repeated on timeline.\n */\n @Input()\n public onlyLargestUnit: boolean\n\n @Input()\n public runningLabel: string = '---'\n\n @Input()\n public runningTooltip: string = 'Running'\n\n @Input()\n public timezone: string = 'America/Sao_Paulo';\n\n @Input()\n set startDate(date: Date | string) {\n this._startDate = this.stringToDate(date);\n this.initialize().then()\n }\n\n get startDate(): Date {\n return this._startDate;\n }\n\n @Input()\n set endDate(date: Date | string) {\n this._endDate = this.stringToDate(date);\n this.initialize().then()\n }\n\n get endDate(): Date {\n return this._endDate;\n }\n\n @Input()\n public set durationParts(parts: number) {\n this._durationParts = parts;\n this.initialize().then()\n }\n\n get durationParts(): number {\n return this._durationParts;\n }\n\n async ngOnInit(): Promise<void> {\n await this.initialize();\n }\n\n public async initialize(): Promise<void> {\n this.running = false;\n if (!this.startDate || !this.durationParts) {\n return\n }\n if (!this.endDate) {\n this.running = true;\n }\n\n const durationTime = this.getTotalDuration(this.endDate || moment().tz(this.timezone).toDate());\n if (durationTime <= 0) {\n return\n }\n this.timeLineParts = [];\n const timeAggregation = durationTime / this.durationParts;\n for (let i = 0; i < this.durationParts; i++) {\n this.timeLineParts.push(timeAggregation * (i + 1));\n }\n }\n\n public getTotalDuration(endDate: Date): number {\n return moment(this.endDate).tz(this.timezone).diff(moment(this.startDate).tz(this.timezone), 'milliseconds')\n }\n\n public stringToDate(date: Date | string): Date {\n if (!date) {\n return null;\n }\n return moment(date).tz(this.timezone).toDate()\n }\n\n getDurationWidth(): string {\n return `${100 / this._durationParts}%`\n }\n\n}\n","<div class=\"duration-timeline-component\" *ngIf=\"timeLineParts?.length > 0\">\n <div class=\"duration-timeline\">\n <div class=\"duration-item\"\n [style.width]=\"getDurationWidth()\"\n [ngClass]=\"{ 'duration-item-first' : first, 'duration-item-last' : last }\"\n *ngFor=\"let duration of timeLineParts; let first = first; let last = last\">\n <span class=\"duration-label\" [matTooltip]=\"duration | durationTime: { onlyLargestUnit }\" *ngIf=\"!running || !last\">\n {{duration | durationTime: { onlyLargestUnit } }}\n </span>\n <span class=\"duration-label\" [matTooltip]=\"runningTooltip\" *ngIf=\"running && last\">\n {{runningLabel}}\n </span>\n </div>\n </div>\n</div>\n","import { Component, Input, OnInit } from '@angular/core';\nimport { DurationPipe } from '@apipass/pipes'\nimport moment from 'moment-timezone';\n\n@Component({\n selector: 'duration-progressbar-component',\n templateUrl: 'duration-progressbar.component.html',\n styleUrls: ['duration-progressbar.component.scss']\n})\nexport class DurationProgressbarComponent implements OnInit {\n\n public running: boolean\n\n private _startDate: Date;\n private _endDate: Date;\n private _startPartDate: Date;\n private _endPartDate: Date;\n\n @Input()\n public barHeight: number = 20\n\n @Input()\n public progressHeight: number = 18\n\n @Input()\n public runningTooltip: string = 'Running'\n\n @Input()\n public progressTooltipConjunction = 'of'\n\n @Input()\n public timezone: string = 'America/Sao_Paulo';\n\n public totalDurationTime: number;\n public partDurationTime: number;\n\n public startPercentage: number;\n public progressWidth: number\n public progressPercentValue: number\n\n constructor(private readonly durationPipe: DurationPipe) {\n }\n\n @Input()\n set startPartDate(date: Date | string) {\n this._startPartDate = this.stringToDate(date);\n this.initialize().then()\n }\n\n get startPartDate(): Date {\n return this._startPartDate;\n }\n\n @Input()\n set endPartDate(date: Date | string) {\n this._endPartDate = this.stringToDate(date);\n this.initialize().then()\n }\n\n get endPartDate(): Date {\n return this._endPartDate;\n }\n\n @Input()\n set startDate(date: Date | string) {\n this._startDate = this.stringToDate(date);\n this.initialize().then()\n }\n\n get startDate(): Date {\n return this._startDate;\n }\n\n @Input()\n set endDate(date: Date | string) {\n this._endDate = this.stringToDate(date);\n this.initialize().then()\n }\n\n get endDate(): Date {\n return this._endDate;\n }\n\n async ngOnInit(): Promise<void> {\n await this.initialize();\n }\n\n public async initialize(): Promise<void> {\n this.running = false;\n if (!this.startDate || !this.startPartDate) {\n return\n }\n if (!this.endPartDate) {\n this.running = true;\n }\n\n const startPartGapTime = this.getTotalDuration(this.startDate, this.startPartDate);\n this.totalDurationTime = this.getTotalDuration(this.startDate, this.endDate || moment().tz(this.timezone).toDate());\n this.partDurationTime = this.getTotalDuration(this.startPartDate, this.endPartDate || moment().tz(this.timezone).toDate());\n\n this.startPercentage = (100 * startPartGapTime) / this.totalDurationTime\n this.progressWidth = (100 * this.partDurationTime) / this.totalDurationTime\n this.progressPercentValue = this.progressWidth\n\n if (this.progressWidth > 100) {\n this.progressWidth = 100\n } else if (this.progressWidth < 1) {\n this.progressWidth = 1\n }\n\n if (this.startPercentage + this.progressWidth > 100) {\n this.startPercentage = 100 - this.progressWidth\n }\n\n if (this.startPercentage > 99) {\n this.startPercentage = 99\n } else if (this.startPercentage < 0) {\n this.startPercentage = 0\n }\n }\n\n public getTotalDuration(startDate: Date, endDate: Date): number {\n return moment(endDate).tz(this.timezone).diff(moment(startDate).tz(this.timezone), 'milliseconds')\n }\n\n public stringToDate(date: Date | string): Date {\n if (!date) {\n return null;\n }\n return moment(date).tz(this.timezone).toDate();\n }\n\n public getTooltipText(): string {\n if (this.running) {\n return `${this.runningTooltip} (${this.durationPipe.transform(this.partDurationTime)})`\n }\n return `${this.durationPipe.transform(this.partDurationTime)} (${this.progressPercentValue.toFixed(1)}%) ${this.progressTooltipConjunction} ${this.durationPipe.transform(this.totalDurationTime)}`\n }\n\n}\n","<div class=\"duration-progressbar-component\" [ngClass]=\"{'duration-progressbar-component-running': running}\" [style.height.px]=\"barHeight\">\n <div class=\"duration-current-progress\"\n [ngClass]=\"{'duration-current-progress-running': running}\"\n [matTooltip]=\"getTooltipText()\"\n [style.margin-left.%]=\"startPercentage\"\n [style.width.%]=\"progressWidth\"\n [style.height.px]=\"progressHeight\">\n </div>\n <div class=\"duration-value\"\n [matTooltip]=\"getTooltipText()\"\n [style.margin-left.%]=\"startPercentage\"\n [style.width.%]=\"progressWidth\"\n [style.height.px]=\"progressHeight\">\n <span class=\"duration-text\" [style.height.px]=\"progressHeight\" [ngClass]=\"{'duration-text-running': running}\">\n {{partDurationTime | durationTime}} ({{progressPercentValue.toFixed(0)}}%)\n </span>\n </div>\n</div>\n","import { NgModule } from '@angular/core'\nimport { CommonModule } from '@angular/common'\nimport { RouterModule } from '@angular/router'\nimport { FormsModule, ReactiveFormsModule } from '@angular/forms'\nimport { CentralizedContainerComponent } from './centralized-container/centralized-container.component'\nimport { ConfigurationPageComponent } from './configuration-page-content/configuration-page.component'\nimport { BreadcrumbComponent } from './breadcrumb/breadcrumb.component'\nimport { NgScrollbarModule } from 'ngx-scrollbar'\nimport { MatFormFieldModule } from '@angular/material/form-field'\nimport { MatIconModule } from '@angular/material/icon'\nimport { MatInputModule } from '@angular/material/input'\nimport { IconsModule } from '@apipass/icons'\nimport { ButtonsModule } from '@apipass/buttons'\nimport { PipeModule } from '@apipass/pipes'\nimport { MatToolbarModule } from '@angular/material/toolbar'\nimport { ConfigurationPageTitleComponent } from './configuration-page-title/configuration-page-title.component'\nimport { DurationTimelineComponent } from './duration/duration-timeline/duration-timeline.component';\nimport { MatTooltipModule } from '@angular/material/tooltip';\nimport { DurationProgressbarComponent } from './duration/duration-progressbar/duration-progressbar.component';\n@NgModule({\n imports: [\n CommonModule,\n RouterModule,\n FormsModule,\n ReactiveFormsModule,\n IconsModule,\n ButtonsModule,\n NgScrollbarModule,\n MatFormFieldModule,\n MatIconModule,\n MatInputModule,\n MatToolbarModule,\n PipeModule,\n MatTooltipModule\n ],\n declarations: [\n CentralizedContainerComponent,\n ConfigurationPageComponent,\n BreadcrumbComponent,\n ConfigurationPageTitleComponent,\n DurationTimelineComponent,\n DurationProgressbarComponent\n ],\n exports: [\n CentralizedContainerComponent,\n ConfigurationPageComponent,\n BreadcrumbComponent,\n ConfigurationPageTitleComponent,\n DurationTimelineComponent,\n DurationProgressbarComponent\n ],\n providers: []\n})\nexport class ContainersModule {}\n","/**\n * Generated bundle index. Do not edit.\n */\n\nexport * from './public-api';\n"],"names":["i2","i3","i1"],"mappings":"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"}
|
|
1
|
+
{"version":3,"file":"apipass-containers.mjs","sources":["../../../projects/containers/src/centralized-container/centralized-container.component.ts","../../../projects/containers/src/centralized-container/centralized-container.component.html","../../../projects/containers/src/configuration-page-content/configuration-page.component.ts","../../../projects/containers/src/configuration-page-content/configuration-page.component.html","../../../projects/containers/src/breadcrumb/breadcrumb.component.ts","../../../projects/containers/src/breadcrumb/breadcrumb.component.html","../../../projects/containers/src/configuration-page-title/configuration-page-title.component.ts","../../../projects/containers/src/configuration-page-title/configuration-page-title.component.html","../../../projects/containers/src/duration/duration-timeline/duration-timeline.component.ts","../../../projects/containers/src/duration/duration-timeline/duration-timeline.component.html","../../../projects/containers/src/duration/duration-progressbar/duration-progressbar.component.ts","../../../projects/containers/src/duration/duration-progressbar/duration-progressbar.component.html","../../../projects/containers/src/apipass-infinite-scroll/apipass-infinite-scroll.component.ts","../../../projects/containers/src/apipass-infinite-scroll/apipass-infinite-scroll.component.html","../../../projects/containers/src/containers.module.ts","../../../projects/containers/src/apipass-containers.ts"],"sourcesContent":["import { Component, EventEmitter, Input, Output, ViewChild } from '@angular/core'\nimport { NgScrollbar } from 'ngx-scrollbar'\n\n@Component({\n selector: 'centralized-container',\n templateUrl: 'centralized-container.component.html',\n styleUrls: ['centralized-container.component.scss']\n})\nexport class CentralizedContainerComponent {\n\n public searchTerm = ''\n\n @Input() public searchLabel: string\n @Input() public hasSearch = true\n @Input() public ignoreZoom = false\n\n @Output()\n public searchChanged = new EventEmitter<string>()\n\n @ViewChild(NgScrollbar, { static: true })\n public scrollbarRef: NgScrollbar | undefined\n\n public searchTermChanged (): void {\n this.searchChanged.emit(this.searchTerm)\n }\n\n}\n","<div class=\"centralized-container\" [ngClass]=\"{'centralized-container-zoom': !ignoreZoom}\">\n <ng-scrollbar [visibility]=\"'hover'\">\n <div class=\"list-content\">\n <div class=\"list-search\" *ngIf=\"hasSearch\">\n <mat-form-field>\n <mat-label *ngIf=\"searchLabel\">{{searchLabel}}</mat-label>\n <input matInput type=\"search\" [(ngModel)]=\"searchTerm\" (ngModelChange)=\"searchTermChanged()\" />\n <mat-icon class=\"search-icon\" matSuffix>search</mat-icon>\n </mat-form-field>\n </div>\n <ng-content></ng-content>\n </div>\n </ng-scrollbar>\n</div>\n","import { Component, EventEmitter, Input, Output, ViewChild } from '@angular/core'\nimport { NgScrollbar } from 'ngx-scrollbar'\nimport { Subject } from 'rxjs'\nimport { debounceTime, distinctUntilChanged } from 'rxjs/operators'\n\n@Component({\n selector: 'configuration-page-container',\n templateUrl: 'configuration-page.component.html',\n styleUrls: ['configuration-page.component.scss']\n})\nexport class ConfigurationPageComponent {\n\n public searchTerm = ''\n\n @Input() public verticalSeparate = false\n @Input() public footerPaginator = false\n @Input() public hasSearch = true\n @Input() public searchDebounceTime = 1000\n @Input() public searchLabel = ''\n\n txtQueryChanged: Subject<string> = new Subject<string>()\n\n @Output() public searchChanged = new EventEmitter<string>()\n @Output() public searchClick = new EventEmitter<string>()\n\n @ViewChild(NgScrollbar, { static: true })\n public scrollbarRef: NgScrollbar | undefined\n\n constructor () {\n this.txtQueryChanged.pipe(\n debounceTime(this.searchDebounceTime),\n distinctUntilChanged()).subscribe(model => { this.searchChanged.next(model) }\n )\n }\n\n public searchTermChanged (): void {\n this.txtQueryChanged.next(this.searchTerm)\n }\n\n public searchIconClick (): void {\n this.searchClick.next(this.searchTerm)\n }\n\n}\n","<div class=\"configuration-page-container\" [ngClass]=\"{'footer-paginator': footerPaginator}\">\n <ng-scrollbar [visibility]=\"'hover'\">\n <div class=\"list-content\">\n <div class=\"list-search\" *ngIf=\"hasSearch\">\n <mat-form-field class=\"apipass-search-input-text search-input-item small-text\"\n [ngClass]=\"{'label-input': searchLabel}\"\n appearance=\"outline\">\n <mat-label *ngIf=\"searchLabel\">{{searchLabel}}</mat-label>\n <input matInput type=\"search\" class=\"search-input\"\n [(ngModel)]=\"searchTerm\"\n (ngModelChange)=\"searchTermChanged()\"\n />\n <mat-icon class=\"search-icon\" matSuffix (click)=\"searchIconClick()\">search</mat-icon>\n </mat-form-field>\n </div>\n\n <div class=\"container-content\" [ngClass]=\"{'vertical-separate': verticalSeparate}\">\n <ng-content></ng-content>\n </div>\n </div>\n </ng-scrollbar>\n</div>\n","import { Component, EventEmitter, Input, Output } from '@angular/core'\n\n@Component({\n selector: 'breadcrumb-component',\n templateUrl: 'breadcrumb.component.html',\n styleUrls: ['breadcrumb.component.scss']\n})\nexport class BreadcrumbComponent {\n\n @Input() public icon = 'keyboard_arrow_right'\n @Input() public items: any = []\n @Input() public labelProperty = 'label'\n @Output() itemClick = new EventEmitter<{ index: number, item: any }>()\n\n public eventClick (index: number, item: any): any {\n this.items.splice(index + 1, this.items.length - 1)\n this.itemClick.emit({ index, item })\n }\n\n}\n","<mat-toolbar *ngIf=\"items.length > 0\" color=\"primary\">\n <span *ngFor=\"let header of items; let indx = index, let last = last\">\n <a mat-button\n [ngClass]=\"!last ? 'text-link' : 'default-cursor'\"\n (click)=\"!last ? eventClick(indx, header) : undefined\">{{header[labelProperty]}}\n <mat-icon [ngClass]=\"{'hidden-icon': last}\">{{icon}}</mat-icon>\n </a>\n </span>\n</mat-toolbar>\n","import { Component, EventEmitter, Input, Output } from '@angular/core';\n\n@Component({\n selector: 'configuration-page-title',\n templateUrl: 'configuration-page-title.component.html',\n styleUrls: ['configuration-page-title.component.scss']\n})\nexport class ConfigurationPageTitleComponent {\n\n @Input() public icon: string;\n @Input() public isMaterialIcon = false;\n @Input() public materialOutline = false;\n\n @Input() public title: string;\n @Input() public buttonText: string;\n @Input() public buttonIcon: string;\n\n @Output() public onNewButtonClick = new EventEmitter<boolean>();\n\n public newButtonClick(): void {\n this.onNewButtonClick.emit(true);\n }\n\n}\n","<div class=\"configuration-title\">\n\n <div class=\"text\">\n <icon *ngIf=\"icon\"\n [ngClass]=\"{'title-icon-material': isMaterialIcon}\"\n [isMaterialIcon]=\"isMaterialIcon\"\n [materialOutline]=\"materialOutline\"\n [type]=\"'configuration-icon'\"\n [name]=\"icon\">\n </icon>\n {{title}}\n </div>\n\n <div class=\"button\" *ngIf=\"buttonText\">\n <secondary-button\n [btnClass]=\"'font-black'\"\n [icon]=\"buttonIcon\"\n [label]=\"buttonText\"\n (onClick)=\"newButtonClick()\">\n </secondary-button>\n </div>\n\n</div>\n","import { Component, Input, OnInit } from '@angular/core';\nimport moment from 'moment-timezone';\n\n@Component({\n selector: 'duration-timeline-component',\n templateUrl: 'duration-timeline.component.html',\n styleUrls: ['duration-timeline.component.scss']\n})\nexport class DurationTimelineComponent implements OnInit {\n\n public timeLineParts: number[] = [];\n public running: boolean\n\n private _startDate: Date;\n private _endDate: Date;\n private _durationParts: number = 0\n\n /*\n * If this option is true, depending on the total duration time and numbers of the duration parts, numbers can be repeated on timeline.\n */\n @Input()\n public onlyLargestUnit: boolean\n\n @Input()\n public runningLabel: string = '---'\n\n @Input()\n public runningTooltip: string = 'Running'\n\n @Input()\n public timezone: string = 'America/Sao_Paulo';\n\n @Input()\n set startDate(date: Date | string) {\n this._startDate = this.stringToDate(date);\n this.initialize().then()\n }\n\n get startDate(): Date {\n return this._startDate;\n }\n\n @Input()\n set endDate(date: Date | string) {\n this._endDate = this.stringToDate(date);\n this.initialize().then()\n }\n\n get endDate(): Date {\n return this._endDate;\n }\n\n @Input()\n public set durationParts(parts: number) {\n this._durationParts = parts;\n this.initialize().then()\n }\n\n get durationParts(): number {\n return this._durationParts;\n }\n\n async ngOnInit(): Promise<void> {\n await this.initialize();\n }\n\n public async initialize(): Promise<void> {\n this.running = false;\n if (!this.startDate || !this.durationParts) {\n return\n }\n if (!this.endDate) {\n this.running = true;\n }\n\n const durationTime = this.getTotalDuration(this.endDate || moment().tz(this.timezone).toDate());\n if (durationTime <= 0) {\n return\n }\n this.timeLineParts = [];\n const timeAggregation = durationTime / this.durationParts;\n for (let i = 0; i < this.durationParts; i++) {\n this.timeLineParts.push(timeAggregation * (i + 1));\n }\n }\n\n public getTotalDuration(endDate: Date): number {\n return moment(this.endDate).tz(this.timezone).diff(moment(this.startDate).tz(this.timezone), 'milliseconds')\n }\n\n public stringToDate(date: Date | string): Date {\n if (!date) {\n return null;\n }\n return moment(date).tz(this.timezone).toDate()\n }\n\n getDurationWidth(): string {\n return `${100 / this._durationParts}%`\n }\n\n}\n","<div class=\"duration-timeline-component\" *ngIf=\"timeLineParts?.length > 0\">\n <div class=\"duration-timeline\">\n <div class=\"duration-item\"\n [style.width]=\"getDurationWidth()\"\n [ngClass]=\"{ 'duration-item-first' : first, 'duration-item-last' : last }\"\n *ngFor=\"let duration of timeLineParts; let first = first; let last = last\">\n <span class=\"duration-label\" [matTooltip]=\"duration | durationTime: { onlyLargestUnit }\" *ngIf=\"!running || !last\">\n {{duration | durationTime: { onlyLargestUnit } }}\n </span>\n <span class=\"duration-label\" [matTooltip]=\"runningTooltip\" *ngIf=\"running && last\">\n {{runningLabel}}\n </span>\n </div>\n </div>\n</div>\n","import { Component, Input, OnInit } from '@angular/core';\nimport { DurationPipe } from '@apipass/pipes'\nimport moment from 'moment-timezone';\n\n@Component({\n selector: 'duration-progressbar-component',\n templateUrl: 'duration-progressbar.component.html',\n styleUrls: ['duration-progressbar.component.scss']\n})\nexport class DurationProgressbarComponent implements OnInit {\n\n public running: boolean\n\n private _startDate: Date;\n private _endDate: Date;\n private _startPartDate: Date;\n private _endPartDate: Date;\n\n @Input()\n public barHeight: number = 20\n\n @Input()\n public progressHeight: number = 18\n\n @Input()\n public runningTooltip: string = 'Running'\n\n @Input()\n public progressTooltipConjunction = 'of'\n\n @Input()\n public timezone: string = 'America/Sao_Paulo';\n\n public totalDurationTime: number;\n public partDurationTime: number;\n\n public startPercentage: number;\n public progressWidth: number\n public progressPercentValue: number\n\n constructor(private readonly durationPipe: DurationPipe) {\n }\n\n @Input()\n set startPartDate(date: Date | string) {\n this._startPartDate = this.stringToDate(date);\n this.initialize().then()\n }\n\n get startPartDate(): Date {\n return this._startPartDate;\n }\n\n @Input()\n set endPartDate(date: Date | string) {\n this._endPartDate = this.stringToDate(date);\n this.initialize().then()\n }\n\n get endPartDate(): Date {\n return this._endPartDate;\n }\n\n @Input()\n set startDate(date: Date | string) {\n this._startDate = this.stringToDate(date);\n this.initialize().then()\n }\n\n get startDate(): Date {\n return this._startDate;\n }\n\n @Input()\n set endDate(date: Date | string) {\n this._endDate = this.stringToDate(date);\n this.initialize().then()\n }\n\n get endDate(): Date {\n return this._endDate;\n }\n\n async ngOnInit(): Promise<void> {\n await this.initialize();\n }\n\n public async initialize(): Promise<void> {\n this.running = false;\n if (!this.startDate || !this.startPartDate) {\n return\n }\n if (!this.endPartDate) {\n this.running = true;\n }\n\n const startPartGapTime = this.getTotalDuration(this.startDate, this.startPartDate);\n this.totalDurationTime = this.getTotalDuration(this.startDate, this.endDate || moment().tz(this.timezone).toDate());\n this.partDurationTime = this.getTotalDuration(this.startPartDate, this.endPartDate || moment().tz(this.timezone).toDate());\n\n this.startPercentage = (100 * startPartGapTime) / this.totalDurationTime\n this.progressWidth = (100 * this.partDurationTime) / this.totalDurationTime\n this.progressPercentValue = this.progressWidth\n\n if (this.progressWidth > 100) {\n this.progressWidth = 100\n } else if (this.progressWidth < 1) {\n this.progressWidth = 1\n }\n\n if (this.startPercentage + this.progressWidth > 100) {\n this.startPercentage = 100 - this.progressWidth\n }\n\n if (this.startPercentage > 99) {\n this.startPercentage = 99\n } else if (this.startPercentage < 0) {\n this.startPercentage = 0\n }\n }\n\n public getTotalDuration(startDate: Date, endDate: Date): number {\n return moment(endDate).tz(this.timezone).diff(moment(startDate).tz(this.timezone), 'milliseconds')\n }\n\n public stringToDate(date: Date | string): Date {\n if (!date) {\n return null;\n }\n return moment(date).tz(this.timezone).toDate();\n }\n\n public getTooltipText(): string {\n if (this.running) {\n return `${this.runningTooltip} (${this.durationPipe.transform(this.partDurationTime)})`\n }\n return `${this.durationPipe.transform(this.partDurationTime)} (${this.progressPercentValue.toFixed(1)}%) ${this.progressTooltipConjunction} ${this.durationPipe.transform(this.totalDurationTime)}`\n }\n\n}\n","<div class=\"duration-progressbar-component\" [ngClass]=\"{'duration-progressbar-component-running': running}\" [style.height.px]=\"barHeight\">\n <div class=\"duration-current-progress\"\n [ngClass]=\"{'duration-current-progress-running': running}\"\n [matTooltip]=\"getTooltipText()\"\n [style.margin-left.%]=\"startPercentage\"\n [style.width.%]=\"progressWidth\"\n [style.height.px]=\"progressHeight\">\n </div>\n <div class=\"duration-value\"\n [matTooltip]=\"getTooltipText()\"\n [style.margin-left.%]=\"startPercentage\"\n [style.width.%]=\"progressWidth\"\n [style.height.px]=\"progressHeight\">\n <span class=\"duration-text\" [style.height.px]=\"progressHeight\" [ngClass]=\"{'duration-text-running': running}\">\n {{partDurationTime | durationTime}} ({{progressPercentValue.toFixed(0)}}%)\n </span>\n </div>\n</div>\n","import { Component, ContentChild, EventEmitter, Input, OnDestroy, OnInit, Output, TemplateRef } from '@angular/core';\nimport { Subscription } from 'rxjs';\n\nexport interface NextPageEvent {\n currentPage: number\n nextPage: number\n}\n\nexport interface PreviousPageEvent {\n currentPage: number\n previousPage: number\n}\n\nexport interface RefreshItemsEvent {\n continueOnTheSamePage?: boolean\n}\n\n@Component({\n selector: 'apipass-infinite-scroll-component',\n templateUrl: 'apipass-infinite-scroll.component.html',\n styleUrls: ['apipass-infinite-scroll.component.scss']\n})\nexport class ApipassInfiniteScrollComponent implements OnInit, OnDestroy {\n\n private subscriptions: Subscription[] = []\n private readonly _currentId: string\n\n get getCurrentId(): string {\n return this._currentId\n }\n\n private _items: any[] = []\n private _currentPage: number = 1\n\n @Input()\n set currentPage(page: number) {\n this._currentPage = page\n }\n\n get currentPage(): number {\n return this._currentPage\n }\n\n @Input()\n set items(items: any[]) {\n this._items = items\n }\n\n get items(): any[] {\n return this._items\n }\n\n @Input()\n public pageSize: number = 50\n\n @Input()\n public loading: boolean\n\n @Input()\n public filter: Record<string, any> = {}\n\n @Input()\n public nextPageFn: (params: any) => Promise<any[]>\n\n @Input()\n public previousPageFn: (params: any) => Promise<any[]>\n\n @Input()\n public refreshItems: EventEmitter<RefreshItemsEvent> = new EventEmitter<RefreshItemsEvent>()\n\n @Input()\n public showEmptyList: boolean\n\n @Input()\n public emptyListMessage: string = 'No Records Found...'\n\n @Input()\n public infiniteScrollDownDistance: number = 2\n\n @Input()\n public infiniteScrollUpDistance: number = 0.5\n\n @Input()\n public infiniteScrollThrottle: number = 150\n\n @Input()\n public maxHeight: string = '100vh'\n\n @Input()\n public minHeight: string = '50px'\n\n @Output()\n public onNextPage: EventEmitter<NextPageEvent> = new EventEmitter<NextPageEvent>()\n\n @Output()\n public onPreviousPage: EventEmitter<PreviousPageEvent> = new EventEmitter<PreviousPageEvent>()\n\n @Output()\n public loadingChange: EventEmitter<boolean> = new EventEmitter<boolean>()\n\n @Output()\n public currentPageChange: EventEmitter<number> = new EventEmitter<number>()\n\n @ContentChild(TemplateRef) itemsTemplate: TemplateRef<any>;\n\n private isFirstScrollToTop: boolean\n protected loadingNextPage: boolean\n protected loadingPreviousPage: boolean\n\n constructor() {\n this._currentId = Math.random().toString(36).substring(2)\n }\n\n public ngOnInit(): void {\n this.subscriptions.push(this.refreshItems.subscribe(($event) => {\n if (!$event?.continueOnTheSamePage) {\n this._currentPage = 0\n this.currentPageChange.emit(this._currentPage)\n }\n }))\n }\n\n public ngOnDestroy(): void {\n this.subscriptions?.forEach(subscription => {\n subscription.unsubscribe()\n })\n this.subscriptions = []\n }\n\n public loadingPages(): boolean {\n return this.loadingNextPage || this.loadingPreviousPage\n }\n\n public showListLoader(): boolean {\n return this.loading\n }\n\n protected async nextPage(): Promise<void> {\n if (this.loadingPages()) {\n return\n }\n try {\n this.loadingNextPage = true\n this.isFirstScrollToTop = true\n this.onNextPage.emit({\n currentPage: this.currentPage,\n nextPage: this.currentPage + 1\n })\n this.currentPage++\n const nextItems = await this.nextPageFn({\n ...this.filter,\n page: this.currentPage,\n pageSize: this.pageSize\n })\n if (nextItems?.length === 0) {\n this.currentPage--\n return\n }\n this.currentPageChange.emit(this._currentPage)\n const needRemoveLastPageSizeItems = this.currentPage > 2;\n this._items = needRemoveLastPageSizeItems ? this._items?.slice(this.pageSize).concat(nextItems) : this._items.concat(nextItems)\n } finally {\n this.loadingNextPage = false;\n }\n }\n\n protected async previousPage(): Promise<void> {\n if (this.loadingPages()) {\n return\n }\n try {\n this.loadingPreviousPage = true\n this.currentPage = this.isFirstScrollToTop ? this.currentPage - 2 : this.currentPage - 1\n const needScrollToLastElementBeforePreviousPage = this.currentPage > 0\n this.currentPage = this.currentPage > 0 ? this.currentPage : 1\n const previousItems = await this.previousPageFn({\n ...this.filter,\n page: this.currentPage,\n pageSize: this.pageSize\n })\n if (previousItems?.length === 0) {\n return\n }\n this.currentPageChange.emit(this._currentPage)\n if (needScrollToLastElementBeforePreviousPage) {\n const currentItems = this.items?.slice(0, this.pageSize);\n this.items = previousItems.concat(currentItems)\n this.scrollToLastElementBeforePreviousPage();\n } else {\n this.items = previousItems\n }\n } finally {\n this.isFirstScrollToTop = false\n this.loadingPreviousPage = false\n }\n }\n\n private scrollToLastElementBeforePreviousPage(): void {\n setTimeout(() => {\n const scrollElement = document.getElementById(`apipass-infinite-scroll-list-${this.getCurrentId}`);\n const executionId = document.getElementById(`apipass-infinite-scroll-item-${this.getCurrentId}-${this.pageSize}`)\n if (scrollElement && executionId) {\n scrollElement.scrollTo({ top: executionId.offsetTop + executionId.clientHeight })\n }\n })\n }\n\n}\n","<div class=\"apipass-infinite-scroll-component\">\n <div class=\"apipass-infinite-scroll-list\"\n *ngIf=\"items?.length > 0\"\n [id]=\"'apipass-infinite-scroll-list-' + getCurrentId\"\n [style.max-height]=\"maxHeight\"\n [style.min-height]=\"minHeight\"\n infiniteScroll\n [infiniteScrollDistance]=\"infiniteScrollDownDistance\"\n [infiniteScrollUpDistance]=\"infiniteScrollUpDistance\"\n [infiniteScrollThrottle]=\"infiniteScrollThrottle\"\n [infiniteScrollDisabled]=\"loadingPages()\"\n (scrolled)=\"nextPage()\"\n (scrolledUp)=\"previousPage()\"\n [scrollWindow]=\"false\">\n <overlay-loader-component class=\"loader-top\" *ngIf=\"loadingPreviousPage\"></overlay-loader-component>\n <div class=\"apipass-infinite-scroll-item\"\n *ngFor=\"let item of items; let index = index\"\n [id]=\"'apipass-infinite-scroll-item-' + getCurrentId + '-' + (index + 1)\">\n <ng-container *ngTemplateOutlet=\"itemsTemplate; context: { $implicit: item }\"></ng-container>\n </div>\n <div class=\"loader-bottom-content\" *ngIf=\"loadingNextPage\">\n <overlay-loader-component class=\"loader-bottom\"></overlay-loader-component>\n </div>\n </div>\n <div class=\"apipass-infinite-scroll-list-no-rows\" *ngIf=\"this.showEmptyList && !showListLoader() && items?.length === 0\">\n {{emptyListMessage}}\n </div>\n</div>\n","import { NgModule } from '@angular/core'\nimport { CommonModule } from '@angular/common'\nimport { RouterModule } from '@angular/router'\nimport { FormsModule, ReactiveFormsModule } from '@angular/forms'\nimport { CentralizedContainerComponent } from './centralized-container/centralized-container.component'\nimport { ConfigurationPageComponent } from './configuration-page-content/configuration-page.component'\nimport { BreadcrumbComponent } from './breadcrumb/breadcrumb.component'\nimport { NgScrollbarModule } from 'ngx-scrollbar'\nimport { MatFormFieldModule } from '@angular/material/form-field'\nimport { MatIconModule } from '@angular/material/icon'\nimport { MatInputModule } from '@angular/material/input'\nimport { IconsModule } from '@apipass/icons'\nimport { ButtonsModule } from '@apipass/buttons'\nimport { PipeModule } from '@apipass/pipes'\nimport { LoadersModule } from '@apipass/loaders'\nimport { MatToolbarModule } from '@angular/material/toolbar'\nimport { ConfigurationPageTitleComponent } from './configuration-page-title/configuration-page-title.component'\nimport { DurationTimelineComponent } from './duration/duration-timeline/duration-timeline.component';\nimport { MatTooltipModule } from '@angular/material/tooltip';\nimport { DurationProgressbarComponent } from './duration/duration-progressbar/duration-progressbar.component';\nimport { ApipassInfiniteScrollComponent } from './apipass-infinite-scroll/apipass-infinite-scroll.component';\nimport { InfiniteScrollModule } from 'ngx-infinite-scroll';\n@NgModule({\n imports: [\n CommonModule,\n RouterModule,\n FormsModule,\n ReactiveFormsModule,\n IconsModule,\n ButtonsModule,\n NgScrollbarModule,\n MatFormFieldModule,\n MatIconModule,\n MatInputModule,\n MatToolbarModule,\n PipeModule,\n MatTooltipModule,\n InfiniteScrollModule,\n LoadersModule\n ],\n declarations: [\n CentralizedContainerComponent,\n ConfigurationPageComponent,\n BreadcrumbComponent,\n ConfigurationPageTitleComponent,\n DurationTimelineComponent,\n DurationProgressbarComponent,\n ApipassInfiniteScrollComponent\n ],\n exports: [\n CentralizedContainerComponent,\n ConfigurationPageComponent,\n BreadcrumbComponent,\n ConfigurationPageTitleComponent,\n DurationTimelineComponent,\n DurationProgressbarComponent,\n ApipassInfiniteScrollComponent\n ],\n providers: []\n})\nexport class ContainersModule {}\n","/**\n * Generated bundle index. Do not edit.\n */\n\nexport * from './public-api';\n"],"names":["i2","i3","i1"],"mappings":"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"}
|
package/package.json
CHANGED
|
@@ -1,6 +1,6 @@
|
|
|
1
1
|
{
|
|
2
2
|
"name": "@apipass/containers",
|
|
3
|
-
"version": "1.0.
|
|
3
|
+
"version": "1.0.109",
|
|
4
4
|
"peerDependencies": {
|
|
5
5
|
"@angular/animations": "16.0.2",
|
|
6
6
|
"@angular/cdk": "16.0.1",
|
|
@@ -8,12 +8,14 @@
|
|
|
8
8
|
"@angular/core": "16.0.2",
|
|
9
9
|
"@angular/forms": "16.0.2",
|
|
10
10
|
"@angular/material": "16.0.1",
|
|
11
|
-
"@apipass/
|
|
12
|
-
"@apipass/
|
|
13
|
-
"@apipass/
|
|
11
|
+
"@apipass/loaders": "~1.0.107",
|
|
12
|
+
"@apipass/icons": "~1.0.107",
|
|
13
|
+
"@apipass/buttons": "~1.0.107",
|
|
14
|
+
"@apipass/pipes": "~1.0.107"
|
|
14
15
|
},
|
|
15
16
|
"dependencies": {
|
|
16
17
|
"ngx-scrollbar": "11.0.0",
|
|
18
|
+
"ngx-infinite-scroll": "^16.0.0",
|
|
17
19
|
"@ngx-translate/core": "15.0.0",
|
|
18
20
|
"moment": "^2.29.1",
|
|
19
21
|
"moment-timezone": "^0.5.43",
|
package/public-api.d.ts
CHANGED
|
@@ -5,3 +5,4 @@ export * from './configuration-page-title/configuration-page-title.component';
|
|
|
5
5
|
export * from './breadcrumb/breadcrumb.component';
|
|
6
6
|
export * from 'ngx-scrollbar';
|
|
7
7
|
export * from './duration/public-api';
|
|
8
|
+
export * from './apipass-infinite-scroll/apipass-infinite-scroll.component';
|