@mintplayer/ng-bootstrap 16.11.4 → 16.13.0
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/calendar/src/calendar.component.d.ts +2 -3
- package/calendar/src/calendar.module.d.ts +5 -3
- package/carousel/src/carousel/carousel.component.d.ts +0 -1
- package/carousel/src/carousel.module.d.ts +3 -2
- package/datepicker/src/datepicker.component.d.ts +2 -1
- package/esm2022/calendar/src/calendar.component.mjs +9 -12
- package/esm2022/calendar/src/calendar.module.mjs +11 -3
- package/esm2022/carousel/src/carousel/carousel.component.mjs +5 -7
- package/esm2022/carousel/src/carousel.module.mjs +5 -1
- package/esm2022/datepicker/src/datepicker.component.mjs +5 -3
- package/esm2022/file-upload/src/component/file-upload.component.mjs +7 -9
- package/esm2022/file-upload/src/file-upload.module.mjs +5 -1
- package/esm2022/pagination/src/component/pagination/pagination.component.mjs +4 -6
- package/esm2022/pagination/src/pagination.module.mjs +8 -4
- package/esm2022/track-by/index.mjs +3 -0
- package/esm2022/track-by/mintplayer-ng-bootstrap-track-by.mjs +5 -0
- package/esm2022/track-by/src/track-by.directive.mjs +28 -0
- package/esm2022/track-by/src/track-by.module.mjs +18 -0
- package/fesm2022/mintplayer-ng-bootstrap-calendar.mjs +20 -15
- package/fesm2022/mintplayer-ng-bootstrap-calendar.mjs.map +1 -1
- package/fesm2022/mintplayer-ng-bootstrap-carousel.mjs +8 -6
- package/fesm2022/mintplayer-ng-bootstrap-carousel.mjs.map +1 -1
- package/fesm2022/mintplayer-ng-bootstrap-datepicker.mjs +4 -2
- package/fesm2022/mintplayer-ng-bootstrap-datepicker.mjs.map +1 -1
- package/fesm2022/mintplayer-ng-bootstrap-file-upload.mjs +9 -7
- package/fesm2022/mintplayer-ng-bootstrap-file-upload.mjs.map +1 -1
- package/fesm2022/mintplayer-ng-bootstrap-pagination.mjs +10 -8
- package/fesm2022/mintplayer-ng-bootstrap-pagination.mjs.map +1 -1
- package/fesm2022/mintplayer-ng-bootstrap-track-by.mjs +49 -0
- package/fesm2022/mintplayer-ng-bootstrap-track-by.mjs.map +1 -0
- package/file-upload/src/component/file-upload.component.d.ts +0 -1
- package/file-upload/src/file-upload.module.d.ts +5 -4
- package/package.json +7 -1
- package/pagination/src/component/pagination/pagination.component.d.ts +0 -1
- package/pagination/src/pagination.module.d.ts +2 -1
- package/track-by/index.d.ts +2 -0
- package/track-by/src/track-by.directive.d.ts +11 -0
- package/track-by/src/track-by.module.d.ts +8 -0
|
@@ -2,6 +2,8 @@ import * as i0 from '@angular/core';
|
|
|
2
2
|
import { EventEmitter, Component, Output, Input, NgModule } from '@angular/core';
|
|
3
3
|
import * as i1 from '@angular/common';
|
|
4
4
|
import { CommonModule } from '@angular/common';
|
|
5
|
+
import * as i2 from '@mintplayer/ng-bootstrap/track-by';
|
|
6
|
+
import { BsTrackByModule } from '@mintplayer/ng-bootstrap/track-by';
|
|
5
7
|
import { takeUntilDestroyed } from '@angular/core/rxjs-interop';
|
|
6
8
|
import { BehaviorSubject, combineLatest, map } from 'rxjs';
|
|
7
9
|
|
|
@@ -168,15 +170,12 @@ class BsPaginationComponent {
|
|
|
168
170
|
}
|
|
169
171
|
return false;
|
|
170
172
|
}
|
|
171
|
-
trackByPageNumber(index, page) {
|
|
172
|
-
return page;
|
|
173
|
-
}
|
|
174
173
|
static { this.ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "16.1.2", ngImport: i0, type: BsPaginationComponent, deps: [], target: i0.ɵɵFactoryTarget.Component }); }
|
|
175
|
-
static { this.ɵcmp = i0.ɵɵngDeclareComponent({ minVersion: "14.0.0", version: "16.1.2", type: BsPaginationComponent, selector: "bs-pagination", inputs: { selectedPageNumber: "selectedPageNumber", numberOfBoxes: "numberOfBoxes", pageNumbers: "pageNumbers", showArrows: "showArrows", size: "size" }, outputs: { selectedPageNumberChange: "selectedPageNumberChange" }, ngImport: i0, template: "<ul class=\"pagination\">\n <li class=\"page-item\" *ngIf=\"showArrows$ | async\">\n <a class=\"page-link\" href=\"\" (click)=\"onPrevious()\" [class.disabled]=\"isFirstPage$ | async\" aria-label=\"Previous\">\n <span aria-hidden=\"true\">«</span>\n <span class=\"visually-hidden\">Previous</span>\n </a>\n </li>\n <li *ngFor=\"let pageNumber of (shownPageNumbers$ | async);
|
|
174
|
+
static { this.ɵcmp = i0.ɵɵngDeclareComponent({ minVersion: "14.0.0", version: "16.1.2", type: BsPaginationComponent, selector: "bs-pagination", inputs: { selectedPageNumber: "selectedPageNumber", numberOfBoxes: "numberOfBoxes", pageNumbers: "pageNumbers", showArrows: "showArrows", size: "size" }, outputs: { selectedPageNumberChange: "selectedPageNumberChange" }, ngImport: i0, template: "<ul class=\"pagination\">\n <li class=\"page-item\" *ngIf=\"showArrows$ | async\">\n <a class=\"page-link\" href=\"\" (click)=\"onPrevious()\" [class.disabled]=\"isFirstPage$ | async\" aria-label=\"Previous\">\n <span aria-hidden=\"true\">«</span>\n <span class=\"visually-hidden\">Previous</span>\n </a>\n </li>\n <li *ngFor=\"let pageNumber of (shownPageNumbers$ | async); bsTrackBy: 'page'\" class=\"page-item\">\n <a class=\"page-link\" href=\"\" (click)=\"onSelectPage($event, pageNumber.page)\"\n [ngClass]=\"{ 'active': pageNumber.selected }\" *ngIf=\"pageNumber.page != '...'\">\n {{ pageNumber.page }}\n <span class=\"visually-hidden\" *ngIf=\"pageNumber.selected\">(current)</span>\n </a>\n </li>\n <li class=\"page-item\" *ngIf=\"showArrows$ | async\">\n <a class=\"page-link\" href=\"\" (click)=\"onNext()\" [class.disabled]=\"isLastPage$ | async\" aria-label=\"Next\">\n <span aria-hidden=\"true\">»</span>\n <span class=\"visually-hidden\">Next</span>\n </a>\n </li>\n</ul>", styles: [":host ::ng-deep .pagination{--bs-pagination-padding-x: .75rem;--bs-pagination-padding-y: .375rem;--bs-pagination-font-size: 1rem;--bs-pagination-color: var(--bs-link-color);--bs-pagination-bg: var(--bs-body-bg);--bs-pagination-border-width: var(--bs-border-width);--bs-pagination-border-color: var(--bs-border-color);--bs-pagination-border-radius: var(--bs-border-radius);--bs-pagination-hover-color: var(--bs-link-hover-color);--bs-pagination-hover-bg: var(--bs-tertiary-bg);--bs-pagination-hover-border-color: var(--bs-border-color);--bs-pagination-focus-color: var(--bs-link-hover-color);--bs-pagination-focus-bg: var(--bs-secondary-bg);--bs-pagination-focus-box-shadow: 0 0 0 .25rem rgba(13, 110, 253, .25);--bs-pagination-active-color: #fff;--bs-pagination-active-bg: #0d6efd;--bs-pagination-active-border-color: #0d6efd;--bs-pagination-disabled-color: var(--bs-secondary-color);--bs-pagination-disabled-bg: var(--bs-secondary-bg);--bs-pagination-disabled-border-color: var(--bs-border-color);display:flex;padding-left:0;list-style:none}:host ::ng-deep .page-link{position:relative;display:block;padding:var(--bs-pagination-padding-y) var(--bs-pagination-padding-x);font-size:var(--bs-pagination-font-size);color:var(--bs-pagination-color);text-decoration:none;background-color:var(--bs-pagination-bg);border:var(--bs-pagination-border-width) solid var(--bs-pagination-border-color);transition:color .15s ease-in-out,background-color .15s ease-in-out,border-color .15s ease-in-out,box-shadow .15s ease-in-out}@media (prefers-reduced-motion: reduce){:host ::ng-deep .page-link{transition:none}}:host ::ng-deep .page-link:hover{z-index:2;color:var(--bs-pagination-hover-color);background-color:var(--bs-pagination-hover-bg);border-color:var(--bs-pagination-hover-border-color)}:host ::ng-deep .page-link:focus{z-index:3;color:var(--bs-pagination-focus-color);background-color:var(--bs-pagination-focus-bg);outline:0;box-shadow:var(--bs-pagination-focus-box-shadow)}:host ::ng-deep .page-link.active,.active>:host ::ng-deep .page-link{z-index:3;color:var(--bs-pagination-active-color);background-color:var(--bs-pagination-active-bg);border-color:var(--bs-pagination-active-border-color)}:host ::ng-deep .page-link.disabled,.disabled>:host ::ng-deep .page-link{color:var(--bs-pagination-disabled-color);pointer-events:none;background-color:var(--bs-pagination-disabled-bg);border-color:var(--bs-pagination-disabled-border-color)}:host ::ng-deep .page-item:not(:first-child) .page-link{margin-left:calc(var(--bs-border-width) * -1)}:host ::ng-deep .page-item:first-child .page-link{border-top-left-radius:var(--bs-pagination-border-radius);border-bottom-left-radius:var(--bs-pagination-border-radius)}:host ::ng-deep .page-item:last-child .page-link{border-top-right-radius:var(--bs-pagination-border-radius);border-bottom-right-radius:var(--bs-pagination-border-radius)}:host ::ng-deep .pagination-lg{--bs-pagination-padding-x: 1.5rem;--bs-pagination-padding-y: .75rem;--bs-pagination-font-size: 1.25rem;--bs-pagination-border-radius: var(--bs-border-radius-lg)}:host ::ng-deep .pagination-sm{--bs-pagination-padding-x: .5rem;--bs-pagination-padding-y: .25rem;--bs-pagination-font-size: .875rem;--bs-pagination-border-radius: var(--bs-border-radius-sm)}:host{display:inline-block}\n"], dependencies: [{ kind: "directive", type: i1.NgClass, selector: "[ngClass]", inputs: ["class", "ngClass"] }, { kind: "directive", type: i1.NgForOf, selector: "[ngFor][ngForOf]", inputs: ["ngForOf", "ngForTrackBy", "ngForTemplate"] }, { kind: "directive", type: i1.NgIf, selector: "[ngIf]", inputs: ["ngIf", "ngIfThen", "ngIfElse"] }, { kind: "directive", type: i2.BsTrackByDirective, selector: "[ngForBsTrackBy]", inputs: ["ngForOf", "ngForBsTrackBy"] }, { kind: "pipe", type: i1.AsyncPipe, name: "async" }] }); }
|
|
176
175
|
}
|
|
177
176
|
i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "16.1.2", ngImport: i0, type: BsPaginationComponent, decorators: [{
|
|
178
177
|
type: Component,
|
|
179
|
-
args: [{ selector: 'bs-pagination', template: "<ul class=\"pagination\">\n <li class=\"page-item\" *ngIf=\"showArrows$ | async\">\n <a class=\"page-link\" href=\"\" (click)=\"onPrevious()\" [class.disabled]=\"isFirstPage$ | async\" aria-label=\"Previous\">\n <span aria-hidden=\"true\">«</span>\n <span class=\"visually-hidden\">Previous</span>\n </a>\n </li>\n <li *ngFor=\"let pageNumber of (shownPageNumbers$ | async);
|
|
178
|
+
args: [{ selector: 'bs-pagination', template: "<ul class=\"pagination\">\n <li class=\"page-item\" *ngIf=\"showArrows$ | async\">\n <a class=\"page-link\" href=\"\" (click)=\"onPrevious()\" [class.disabled]=\"isFirstPage$ | async\" aria-label=\"Previous\">\n <span aria-hidden=\"true\">«</span>\n <span class=\"visually-hidden\">Previous</span>\n </a>\n </li>\n <li *ngFor=\"let pageNumber of (shownPageNumbers$ | async); bsTrackBy: 'page'\" class=\"page-item\">\n <a class=\"page-link\" href=\"\" (click)=\"onSelectPage($event, pageNumber.page)\"\n [ngClass]=\"{ 'active': pageNumber.selected }\" *ngIf=\"pageNumber.page != '...'\">\n {{ pageNumber.page }}\n <span class=\"visually-hidden\" *ngIf=\"pageNumber.selected\">(current)</span>\n </a>\n </li>\n <li class=\"page-item\" *ngIf=\"showArrows$ | async\">\n <a class=\"page-link\" href=\"\" (click)=\"onNext()\" [class.disabled]=\"isLastPage$ | async\" aria-label=\"Next\">\n <span aria-hidden=\"true\">»</span>\n <span class=\"visually-hidden\">Next</span>\n </a>\n </li>\n</ul>", styles: [":host ::ng-deep .pagination{--bs-pagination-padding-x: .75rem;--bs-pagination-padding-y: .375rem;--bs-pagination-font-size: 1rem;--bs-pagination-color: var(--bs-link-color);--bs-pagination-bg: var(--bs-body-bg);--bs-pagination-border-width: var(--bs-border-width);--bs-pagination-border-color: var(--bs-border-color);--bs-pagination-border-radius: var(--bs-border-radius);--bs-pagination-hover-color: var(--bs-link-hover-color);--bs-pagination-hover-bg: var(--bs-tertiary-bg);--bs-pagination-hover-border-color: var(--bs-border-color);--bs-pagination-focus-color: var(--bs-link-hover-color);--bs-pagination-focus-bg: var(--bs-secondary-bg);--bs-pagination-focus-box-shadow: 0 0 0 .25rem rgba(13, 110, 253, .25);--bs-pagination-active-color: #fff;--bs-pagination-active-bg: #0d6efd;--bs-pagination-active-border-color: #0d6efd;--bs-pagination-disabled-color: var(--bs-secondary-color);--bs-pagination-disabled-bg: var(--bs-secondary-bg);--bs-pagination-disabled-border-color: var(--bs-border-color);display:flex;padding-left:0;list-style:none}:host ::ng-deep .page-link{position:relative;display:block;padding:var(--bs-pagination-padding-y) var(--bs-pagination-padding-x);font-size:var(--bs-pagination-font-size);color:var(--bs-pagination-color);text-decoration:none;background-color:var(--bs-pagination-bg);border:var(--bs-pagination-border-width) solid var(--bs-pagination-border-color);transition:color .15s ease-in-out,background-color .15s ease-in-out,border-color .15s ease-in-out,box-shadow .15s ease-in-out}@media (prefers-reduced-motion: reduce){:host ::ng-deep .page-link{transition:none}}:host ::ng-deep .page-link:hover{z-index:2;color:var(--bs-pagination-hover-color);background-color:var(--bs-pagination-hover-bg);border-color:var(--bs-pagination-hover-border-color)}:host ::ng-deep .page-link:focus{z-index:3;color:var(--bs-pagination-focus-color);background-color:var(--bs-pagination-focus-bg);outline:0;box-shadow:var(--bs-pagination-focus-box-shadow)}:host ::ng-deep .page-link.active,.active>:host ::ng-deep .page-link{z-index:3;color:var(--bs-pagination-active-color);background-color:var(--bs-pagination-active-bg);border-color:var(--bs-pagination-active-border-color)}:host ::ng-deep .page-link.disabled,.disabled>:host ::ng-deep .page-link{color:var(--bs-pagination-disabled-color);pointer-events:none;background-color:var(--bs-pagination-disabled-bg);border-color:var(--bs-pagination-disabled-border-color)}:host ::ng-deep .page-item:not(:first-child) .page-link{margin-left:calc(var(--bs-border-width) * -1)}:host ::ng-deep .page-item:first-child .page-link{border-top-left-radius:var(--bs-pagination-border-radius);border-bottom-left-radius:var(--bs-pagination-border-radius)}:host ::ng-deep .page-item:last-child .page-link{border-top-right-radius:var(--bs-pagination-border-radius);border-bottom-right-radius:var(--bs-pagination-border-radius)}:host ::ng-deep .pagination-lg{--bs-pagination-padding-x: 1.5rem;--bs-pagination-padding-y: .75rem;--bs-pagination-font-size: 1.25rem;--bs-pagination-border-radius: var(--bs-border-radius-lg)}:host ::ng-deep .pagination-sm{--bs-pagination-padding-x: .5rem;--bs-pagination-padding-y: .25rem;--bs-pagination-font-size: .875rem;--bs-pagination-border-radius: var(--bs-border-radius-sm)}:host{display:inline-block}\n"] }]
|
|
180
179
|
}], ctorParameters: function () { return []; }, propDecorators: { selectedPageNumberChange: [{
|
|
181
180
|
type: Output
|
|
182
181
|
}], selectedPageNumber: [{
|
|
@@ -193,8 +192,10 @@ i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "16.1.2", ngImpor
|
|
|
193
192
|
|
|
194
193
|
class BsPaginationModule {
|
|
195
194
|
static { this.ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "16.1.2", ngImport: i0, type: BsPaginationModule, deps: [], target: i0.ɵɵFactoryTarget.NgModule }); }
|
|
196
|
-
static { this.ɵmod = i0.ɵɵngDeclareNgModule({ minVersion: "14.0.0", version: "16.1.2", ngImport: i0, type: BsPaginationModule, declarations: [BsPaginationComponent], imports: [CommonModule
|
|
197
|
-
|
|
195
|
+
static { this.ɵmod = i0.ɵɵngDeclareNgModule({ minVersion: "14.0.0", version: "16.1.2", ngImport: i0, type: BsPaginationModule, declarations: [BsPaginationComponent], imports: [CommonModule,
|
|
196
|
+
BsTrackByModule], exports: [BsPaginationComponent] }); }
|
|
197
|
+
static { this.ɵinj = i0.ɵɵngDeclareInjector({ minVersion: "12.0.0", version: "16.1.2", ngImport: i0, type: BsPaginationModule, imports: [CommonModule,
|
|
198
|
+
BsTrackByModule] }); }
|
|
198
199
|
}
|
|
199
200
|
i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "16.1.2", ngImport: i0, type: BsPaginationModule, decorators: [{
|
|
200
201
|
type: NgModule,
|
|
@@ -203,7 +204,8 @@ i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "16.1.2", ngImpor
|
|
|
203
204
|
BsPaginationComponent
|
|
204
205
|
],
|
|
205
206
|
imports: [
|
|
206
|
-
CommonModule
|
|
207
|
+
CommonModule,
|
|
208
|
+
BsTrackByModule
|
|
207
209
|
],
|
|
208
210
|
exports: [
|
|
209
211
|
BsPaginationComponent
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"mintplayer-ng-bootstrap-pagination.mjs","sources":["../../../../libs/mintplayer-ng-bootstrap/pagination/src/component/pagination/pagination.component.ts","../../../../libs/mintplayer-ng-bootstrap/pagination/src/component/pagination/pagination.component.html","../../../../libs/mintplayer-ng-bootstrap/pagination/src/pagination.module.ts","../../../../libs/mintplayer-ng-bootstrap/pagination/mintplayer-ng-bootstrap-pagination.ts"],"sourcesContent":["import { Component, EventEmitter, Input, Output } from '@angular/core';\nimport { takeUntilDestroyed } from '@angular/core/rxjs-interop';\nimport { Size } from '@mintplayer/ng-bootstrap';\nimport { BehaviorSubject, combineLatest, map, Observable } from 'rxjs';\nimport { PageWithSelection } from '../../interfaces/page-with-selection';\n\n@Component({\n selector: 'bs-pagination',\n templateUrl: './pagination.component.html',\n styleUrls: ['./pagination.component.scss'],\n})\nexport class BsPaginationComponent {\n constructor() {\n this.visibleNumberOfNumberBoxes$ = combineLatest([\n this.numberOfBoxes$,\n this.pageNumbers$,\n this.showArrows$,\n ])\n .pipe(takeUntilDestroyed())\n .pipe(\n map(([numberOfBoxes, pageNumbers, showArrows]) => {\n if (numberOfBoxes <= 0) {\n return pageNumbers.length;\n } else if (!showArrows) {\n return Math.min(numberOfBoxes, pageNumbers.length);\n } else if (numberOfBoxes <= 2) {\n return Math.min(1, pageNumbers.length);\n } else {\n return Math.min(numberOfBoxes - 2, pageNumbers.length);\n }\n })\n );\n\n this.isLeftOverflow$ = combineLatest([this.pageNumbers$, this.selectedPageNumber$, this.visibleNumberOfNumberBoxes$])\n .pipe(map(([pageNumbers, selectedPageNumber, visibleNumberOfNumberBoxes]) => {\n const index = pageNumbers.indexOf(selectedPageNumber);\n const middle = Math.floor(visibleNumberOfNumberBoxes / 2);\n return index > middle;\n }));\n\n this.isRightOverflow$ = combineLatest([this.pageNumbers$, this.selectedPageNumber$, this.visibleNumberOfNumberBoxes$])\n .pipe(map(([pageNumbers, selectedPageNumber, visibleNumberOfNumberBoxes]) => {\n const index = pageNumbers.indexOf(selectedPageNumber);\n const middle = Math.floor(visibleNumberOfNumberBoxes / 2);\n return (pageNumbers.length - index) < middle;\n }));\n\n this.shownPageNumbers$ = combineLatest([\n this.pageNumbers$,\n this.selectedPageNumber$,\n this.visibleNumberOfNumberBoxes$,\n this.isLeftOverflow$,\n this.isRightOverflow$\n ])\n .pipe(takeUntilDestroyed())\n .pipe(\n map(([pageNumbers, selectedPageNumber, visibleNumberOfNumberBoxes, isLeftOverflow, isRightOverflow]) => {\n // const boxesToRemove = pageNumbers.length - visibleNumberOfNumberBoxes\n // + (isLeftOverflow ? 1 : 0)\n // + (isRightOverflow ? 1 : 0);\n\n // let result: number[] = [];\n // result.push(pageNumbers[0]);\n\n // // ...\n\n // result.push(pageNumbers[pageNumbers.length - 1]);\n\n let startIndex = 0;\n const half = Math.round((visibleNumberOfNumberBoxes - 1) / 2);\n if (pageNumbers.indexOf(selectedPageNumber) < half) {\n startIndex = 0;\n } else if (\n pageNumbers.indexOf(selectedPageNumber) >=\n pageNumbers.length - half\n ) {\n startIndex = pageNumbers.length - visibleNumberOfNumberBoxes;\n } else {\n startIndex = pageNumbers.indexOf(selectedPageNumber) - half;\n }\n\n return [...Array(visibleNumberOfNumberBoxes).keys()]\n .map((p) => p + startIndex)\n .map((p) =><PageWithSelection>{\n page: pageNumbers[p],\n selected: pageNumbers[p] === selectedPageNumber,\n });\n })\n );\n\n this.isFirstPage$ = combineLatest([\n this.pageNumbers$,\n this.selectedPageNumber$,\n ])\n .pipe(takeUntilDestroyed())\n .pipe(map(([pageNumbers, selectedPageNumber]) => pageNumbers.indexOf(selectedPageNumber) === 0));\n\n this.isLastPage$ = combineLatest([\n this.pageNumbers$,\n this.selectedPageNumber$,\n ])\n .pipe(takeUntilDestroyed())\n .pipe(map(([pageNumbers, selectedPageNumber]) => pageNumbers.indexOf(selectedPageNumber) === pageNumbers.length - 1));\n\n this.selectedPageNumber$.pipe(takeUntilDestroyed())\n .subscribe(selectedPageNumber => this.selectedPageNumberChange.emit(selectedPageNumber));\n }\n\n /** All page numbers. */\n pageNumbers$ = new BehaviorSubject<number[]>([]);\n /** Page numbers to be displayed to the user. */\n shownPageNumbers$: Observable<PageWithSelection[]>;\n /** Selected number. */\n selectedPageNumber$ = new BehaviorSubject<number>(1);\n /** Number of boxes. */\n numberOfBoxes$ = new BehaviorSubject<number>(0);\n /** Display previous/next arrows. */\n showArrows$ = new BehaviorSubject<boolean>(true);\n /** Page number size. */\n size$ = new BehaviorSubject<Size>('medium');\n\n /** Indicates if first value is selected. */\n isFirstPage$: Observable<boolean>;\n /** Indicates if last value is selected. */\n isLastPage$: Observable<boolean>;\n /** The number of boxes (excluding arrows) that's being shown on the pagination component. */\n visibleNumberOfNumberBoxes$: Observable<number>;\n /** Indicates whether there are too many numbers to the left-hand side of the current page. */\n isLeftOverflow$: Observable<boolean>;\n /** Indicates whether there are too many numbers to the right-hand side of the current page. */\n isRightOverflow$: Observable<boolean>;\n\n //#region SelectedPageNumber\n @Output() public selectedPageNumberChange = new EventEmitter<number>();\n @Input() set selectedPageNumber(value: number) {\n this.selectedPageNumber$.next(value);\n }\n get selectedPageNumber() {\n return this.selectedPageNumber$.value;\n }\n //#endregion\n\n //#region NumberOfBoxes\n @Input() set numberOfBoxes(value: number) {\n this.numberOfBoxes$.next(value);\n }\n get numberOfBoxes() {\n return this.numberOfBoxes$.value;\n }\n //#endregion\n\n //#region PageNumbers\n @Input() set pageNumbers(value: number[]) {\n this.pageNumbers$.next(value);\n }\n get pageNumbers() {\n return this.pageNumbers$.value;\n }\n //#endregion\n\n //#region ShowArrows\n @Input() set showArrows(value: boolean) {\n this.showArrows$.next(value);\n }\n get showArrows() {\n return this.showArrows$.value;\n }\n //#endregion\n\n //#region Size\n @Input() set size(value: Size) {\n this.size$.next(value);\n }\n get size() {\n return this.size$.value;\n }\n //#endregion\n\n onSelectPage(event: MouseEvent, page: number) {\n this.selectedPageNumber$.next(page);\n return false;\n }\n\n onPrevious() {\n const index = this.pageNumbers.indexOf(this.selectedPageNumber);\n if (index > 0) {\n const newValue = this.pageNumbers[index - 1];\n this.selectedPageNumber$.next(newValue);\n } else {\n this.selectedPageNumber$.next(this.pageNumbers[0]);\n }\n return false;\n }\n\n onNext() {\n const index = this.pageNumbers.indexOf(this.selectedPageNumber);\n if (index < 0) {\n this.selectedPageNumber$.next(this.pageNumbers[this.pageNumbers.length - 1]);\n } else if (index < this.pageNumbers.length - 1) {\n this.selectedPageNumber$.next(this.pageNumbers[index + 1]);\n } else {\n this.selectedPageNumber$.next(this.pageNumbers[this.pageNumbers.length - 1]);\n }\n return false;\n }\n\n trackByPageNumber(index: number, page: PageWithSelection) {\n return page;\n }\n}\n","<ul class=\"pagination\">\n <li class=\"page-item\" *ngIf=\"showArrows$ | async\">\n <a class=\"page-link\" href=\"\" (click)=\"onPrevious()\" [class.disabled]=\"isFirstPage$ | async\" aria-label=\"Previous\">\n <span aria-hidden=\"true\">«</span>\n <span class=\"visually-hidden\">Previous</span>\n </a>\n </li>\n <li *ngFor=\"let pageNumber of (shownPageNumbers$ | async); trackBy: trackByPageNumber\" class=\"page-item\">\n <a class=\"page-link\" href=\"\" (click)=\"onSelectPage($event, pageNumber.page)\"\n [ngClass]=\"{ 'active': pageNumber.selected }\" *ngIf=\"pageNumber.page != '...'\">\n {{ pageNumber.page }}\n <span class=\"visually-hidden\" *ngIf=\"pageNumber.selected\">(current)</span>\n </a>\n </li>\n <li class=\"page-item\" *ngIf=\"showArrows$ | async\">\n <a class=\"page-link\" href=\"\" (click)=\"onNext()\" [class.disabled]=\"isLastPage$ | async\" aria-label=\"Next\">\n <span aria-hidden=\"true\">»</span>\n <span class=\"visually-hidden\">Next</span>\n </a>\n </li>\n</ul>","import { NgModule } from '@angular/core';\nimport { CommonModule } from '@angular/common';\nimport { BsPaginationComponent } from './component/pagination/pagination.component';\n\n\n\n@NgModule({\n declarations: [\n BsPaginationComponent\n ],\n imports: [\n CommonModule\n ],\n exports: [\n BsPaginationComponent\n ]\n})\nexport class BsPaginationModule { }\n","/**\n * Generated bundle index. Do not edit.\n */\n\nexport * from './index';\n"],"names":[],"mappings":"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"}
|
|
1
|
+
{"version":3,"file":"mintplayer-ng-bootstrap-pagination.mjs","sources":["../../../../libs/mintplayer-ng-bootstrap/pagination/src/component/pagination/pagination.component.ts","../../../../libs/mintplayer-ng-bootstrap/pagination/src/component/pagination/pagination.component.html","../../../../libs/mintplayer-ng-bootstrap/pagination/src/pagination.module.ts","../../../../libs/mintplayer-ng-bootstrap/pagination/mintplayer-ng-bootstrap-pagination.ts"],"sourcesContent":["import { Component, EventEmitter, Input, Output } from '@angular/core';\nimport { takeUntilDestroyed } from '@angular/core/rxjs-interop';\nimport { Size } from '@mintplayer/ng-bootstrap';\nimport { BehaviorSubject, combineLatest, map, Observable } from 'rxjs';\nimport { PageWithSelection } from '../../interfaces/page-with-selection';\n\n@Component({\n selector: 'bs-pagination',\n templateUrl: './pagination.component.html',\n styleUrls: ['./pagination.component.scss'],\n})\nexport class BsPaginationComponent {\n constructor() {\n this.visibleNumberOfNumberBoxes$ = combineLatest([\n this.numberOfBoxes$,\n this.pageNumbers$,\n this.showArrows$,\n ])\n .pipe(takeUntilDestroyed())\n .pipe(\n map(([numberOfBoxes, pageNumbers, showArrows]) => {\n if (numberOfBoxes <= 0) {\n return pageNumbers.length;\n } else if (!showArrows) {\n return Math.min(numberOfBoxes, pageNumbers.length);\n } else if (numberOfBoxes <= 2) {\n return Math.min(1, pageNumbers.length);\n } else {\n return Math.min(numberOfBoxes - 2, pageNumbers.length);\n }\n })\n );\n\n this.isLeftOverflow$ = combineLatest([this.pageNumbers$, this.selectedPageNumber$, this.visibleNumberOfNumberBoxes$])\n .pipe(map(([pageNumbers, selectedPageNumber, visibleNumberOfNumberBoxes]) => {\n const index = pageNumbers.indexOf(selectedPageNumber);\n const middle = Math.floor(visibleNumberOfNumberBoxes / 2);\n return index > middle;\n }));\n\n this.isRightOverflow$ = combineLatest([this.pageNumbers$, this.selectedPageNumber$, this.visibleNumberOfNumberBoxes$])\n .pipe(map(([pageNumbers, selectedPageNumber, visibleNumberOfNumberBoxes]) => {\n const index = pageNumbers.indexOf(selectedPageNumber);\n const middle = Math.floor(visibleNumberOfNumberBoxes / 2);\n return (pageNumbers.length - index) < middle;\n }));\n\n this.shownPageNumbers$ = combineLatest([\n this.pageNumbers$,\n this.selectedPageNumber$,\n this.visibleNumberOfNumberBoxes$,\n this.isLeftOverflow$,\n this.isRightOverflow$\n ])\n .pipe(takeUntilDestroyed())\n .pipe(\n map(([pageNumbers, selectedPageNumber, visibleNumberOfNumberBoxes, isLeftOverflow, isRightOverflow]) => {\n // const boxesToRemove = pageNumbers.length - visibleNumberOfNumberBoxes\n // + (isLeftOverflow ? 1 : 0)\n // + (isRightOverflow ? 1 : 0);\n\n // let result: number[] = [];\n // result.push(pageNumbers[0]);\n\n // // ...\n\n // result.push(pageNumbers[pageNumbers.length - 1]);\n\n let startIndex = 0;\n const half = Math.round((visibleNumberOfNumberBoxes - 1) / 2);\n if (pageNumbers.indexOf(selectedPageNumber) < half) {\n startIndex = 0;\n } else if (\n pageNumbers.indexOf(selectedPageNumber) >=\n pageNumbers.length - half\n ) {\n startIndex = pageNumbers.length - visibleNumberOfNumberBoxes;\n } else {\n startIndex = pageNumbers.indexOf(selectedPageNumber) - half;\n }\n\n return [...Array(visibleNumberOfNumberBoxes).keys()]\n .map((p) => p + startIndex)\n .map((p) =><PageWithSelection>{\n page: pageNumbers[p],\n selected: pageNumbers[p] === selectedPageNumber,\n });\n })\n );\n\n this.isFirstPage$ = combineLatest([\n this.pageNumbers$,\n this.selectedPageNumber$,\n ])\n .pipe(takeUntilDestroyed())\n .pipe(map(([pageNumbers, selectedPageNumber]) => pageNumbers.indexOf(selectedPageNumber) === 0));\n\n this.isLastPage$ = combineLatest([\n this.pageNumbers$,\n this.selectedPageNumber$,\n ])\n .pipe(takeUntilDestroyed())\n .pipe(map(([pageNumbers, selectedPageNumber]) => pageNumbers.indexOf(selectedPageNumber) === pageNumbers.length - 1));\n\n this.selectedPageNumber$.pipe(takeUntilDestroyed())\n .subscribe(selectedPageNumber => this.selectedPageNumberChange.emit(selectedPageNumber));\n }\n\n /** All page numbers. */\n pageNumbers$ = new BehaviorSubject<number[]>([]);\n /** Page numbers to be displayed to the user. */\n shownPageNumbers$: Observable<PageWithSelection[]>;\n /** Selected number. */\n selectedPageNumber$ = new BehaviorSubject<number>(1);\n /** Number of boxes. */\n numberOfBoxes$ = new BehaviorSubject<number>(0);\n /** Display previous/next arrows. */\n showArrows$ = new BehaviorSubject<boolean>(true);\n /** Page number size. */\n size$ = new BehaviorSubject<Size>('medium');\n\n /** Indicates if first value is selected. */\n isFirstPage$: Observable<boolean>;\n /** Indicates if last value is selected. */\n isLastPage$: Observable<boolean>;\n /** The number of boxes (excluding arrows) that's being shown on the pagination component. */\n visibleNumberOfNumberBoxes$: Observable<number>;\n /** Indicates whether there are too many numbers to the left-hand side of the current page. */\n isLeftOverflow$: Observable<boolean>;\n /** Indicates whether there are too many numbers to the right-hand side of the current page. */\n isRightOverflow$: Observable<boolean>;\n\n //#region SelectedPageNumber\n @Output() public selectedPageNumberChange = new EventEmitter<number>();\n @Input() set selectedPageNumber(value: number) {\n this.selectedPageNumber$.next(value);\n }\n get selectedPageNumber() {\n return this.selectedPageNumber$.value;\n }\n //#endregion\n\n //#region NumberOfBoxes\n @Input() set numberOfBoxes(value: number) {\n this.numberOfBoxes$.next(value);\n }\n get numberOfBoxes() {\n return this.numberOfBoxes$.value;\n }\n //#endregion\n\n //#region PageNumbers\n @Input() set pageNumbers(value: number[]) {\n this.pageNumbers$.next(value);\n }\n get pageNumbers() {\n return this.pageNumbers$.value;\n }\n //#endregion\n\n //#region ShowArrows\n @Input() set showArrows(value: boolean) {\n this.showArrows$.next(value);\n }\n get showArrows() {\n return this.showArrows$.value;\n }\n //#endregion\n\n //#region Size\n @Input() set size(value: Size) {\n this.size$.next(value);\n }\n get size() {\n return this.size$.value;\n }\n //#endregion\n\n onSelectPage(event: MouseEvent, page: number) {\n this.selectedPageNumber$.next(page);\n return false;\n }\n\n onPrevious() {\n const index = this.pageNumbers.indexOf(this.selectedPageNumber);\n if (index > 0) {\n const newValue = this.pageNumbers[index - 1];\n this.selectedPageNumber$.next(newValue);\n } else {\n this.selectedPageNumber$.next(this.pageNumbers[0]);\n }\n return false;\n }\n\n onNext() {\n const index = this.pageNumbers.indexOf(this.selectedPageNumber);\n if (index < 0) {\n this.selectedPageNumber$.next(this.pageNumbers[this.pageNumbers.length - 1]);\n } else if (index < this.pageNumbers.length - 1) {\n this.selectedPageNumber$.next(this.pageNumbers[index + 1]);\n } else {\n this.selectedPageNumber$.next(this.pageNumbers[this.pageNumbers.length - 1]);\n }\n return false;\n }\n}\n","<ul class=\"pagination\">\n <li class=\"page-item\" *ngIf=\"showArrows$ | async\">\n <a class=\"page-link\" href=\"\" (click)=\"onPrevious()\" [class.disabled]=\"isFirstPage$ | async\" aria-label=\"Previous\">\n <span aria-hidden=\"true\">«</span>\n <span class=\"visually-hidden\">Previous</span>\n </a>\n </li>\n <li *ngFor=\"let pageNumber of (shownPageNumbers$ | async); bsTrackBy: 'page'\" class=\"page-item\">\n <a class=\"page-link\" href=\"\" (click)=\"onSelectPage($event, pageNumber.page)\"\n [ngClass]=\"{ 'active': pageNumber.selected }\" *ngIf=\"pageNumber.page != '...'\">\n {{ pageNumber.page }}\n <span class=\"visually-hidden\" *ngIf=\"pageNumber.selected\">(current)</span>\n </a>\n </li>\n <li class=\"page-item\" *ngIf=\"showArrows$ | async\">\n <a class=\"page-link\" href=\"\" (click)=\"onNext()\" [class.disabled]=\"isLastPage$ | async\" aria-label=\"Next\">\n <span aria-hidden=\"true\">»</span>\n <span class=\"visually-hidden\">Next</span>\n </a>\n </li>\n</ul>","import { NgModule } from '@angular/core';\nimport { CommonModule } from '@angular/common';\nimport { BsTrackByModule } from '@mintplayer/ng-bootstrap/track-by';\nimport { BsPaginationComponent } from './component/pagination/pagination.component';\n\n\n\n@NgModule({\n declarations: [\n BsPaginationComponent\n ],\n imports: [\n CommonModule,\n BsTrackByModule\n ],\n exports: [\n BsPaginationComponent\n ]\n})\nexport class BsPaginationModule { }\n","/**\n * Generated bundle index. Do not edit.\n */\n\nexport * from './index';\n"],"names":[],"mappings":"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"}
|
|
@@ -0,0 +1,49 @@
|
|
|
1
|
+
import * as i1 from '@angular/common';
|
|
2
|
+
import { CommonModule } from '@angular/common';
|
|
3
|
+
import * as i0 from '@angular/core';
|
|
4
|
+
import { Directive, Self, Input, NgModule } from '@angular/core';
|
|
5
|
+
|
|
6
|
+
class BsTrackByDirective {
|
|
7
|
+
constructor(ngFor) {
|
|
8
|
+
this.ngFor = ngFor;
|
|
9
|
+
}
|
|
10
|
+
set bsTrackBy(ngForTrackBy) {
|
|
11
|
+
this.ngFor.ngForTrackBy = (index, item) => item[ngForTrackBy];
|
|
12
|
+
}
|
|
13
|
+
static { this.ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "16.1.2", ngImport: i0, type: BsTrackByDirective, deps: [{ token: i1.NgForOf, self: true }], target: i0.ɵɵFactoryTarget.Directive }); }
|
|
14
|
+
static { this.ɵdir = i0.ɵɵngDeclareDirective({ minVersion: "14.0.0", version: "16.1.2", type: BsTrackByDirective, selector: "[ngForBsTrackBy]", inputs: { ngForOf: "ngForOf", bsTrackBy: ["ngForBsTrackBy", "bsTrackBy"] }, ngImport: i0 }); }
|
|
15
|
+
}
|
|
16
|
+
i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "16.1.2", ngImport: i0, type: BsTrackByDirective, decorators: [{
|
|
17
|
+
type: Directive,
|
|
18
|
+
args: [{
|
|
19
|
+
selector: '[ngForBsTrackBy]',
|
|
20
|
+
}]
|
|
21
|
+
}], ctorParameters: function () { return [{ type: i1.NgForOf, decorators: [{
|
|
22
|
+
type: Self
|
|
23
|
+
}] }]; }, propDecorators: { ngForOf: [{
|
|
24
|
+
type: Input
|
|
25
|
+
}], bsTrackBy: [{
|
|
26
|
+
type: Input,
|
|
27
|
+
args: ['ngForBsTrackBy']
|
|
28
|
+
}] } });
|
|
29
|
+
|
|
30
|
+
class BsTrackByModule {
|
|
31
|
+
static { this.ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "16.1.2", ngImport: i0, type: BsTrackByModule, deps: [], target: i0.ɵɵFactoryTarget.NgModule }); }
|
|
32
|
+
static { this.ɵmod = i0.ɵɵngDeclareNgModule({ minVersion: "14.0.0", version: "16.1.2", ngImport: i0, type: BsTrackByModule, declarations: [BsTrackByDirective], imports: [CommonModule], exports: [BsTrackByDirective] }); }
|
|
33
|
+
static { this.ɵinj = i0.ɵɵngDeclareInjector({ minVersion: "12.0.0", version: "16.1.2", ngImport: i0, type: BsTrackByModule, imports: [CommonModule] }); }
|
|
34
|
+
}
|
|
35
|
+
i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "16.1.2", ngImport: i0, type: BsTrackByModule, decorators: [{
|
|
36
|
+
type: NgModule,
|
|
37
|
+
args: [{
|
|
38
|
+
declarations: [BsTrackByDirective],
|
|
39
|
+
imports: [CommonModule],
|
|
40
|
+
exports: [BsTrackByDirective],
|
|
41
|
+
}]
|
|
42
|
+
}] });
|
|
43
|
+
|
|
44
|
+
/**
|
|
45
|
+
* Generated bundle index. Do not edit.
|
|
46
|
+
*/
|
|
47
|
+
|
|
48
|
+
export { BsTrackByDirective, BsTrackByModule };
|
|
49
|
+
//# sourceMappingURL=mintplayer-ng-bootstrap-track-by.mjs.map
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"mintplayer-ng-bootstrap-track-by.mjs","sources":["../../../../libs/mintplayer-ng-bootstrap/track-by/src/track-by.directive.ts","../../../../libs/mintplayer-ng-bootstrap/track-by/src/track-by.module.ts","../../../../libs/mintplayer-ng-bootstrap/track-by/mintplayer-ng-bootstrap-track-by.ts"],"sourcesContent":["import { NgForOf } from '@angular/common';\nimport { Directive, Input, NgIterable, Self } from '@angular/core';\n\n@Directive({\n selector: '[ngForBsTrackBy]',\n})\nexport class BsTrackByDirective<T> {\n constructor(@Self() private ngFor: NgForOf<T>) {}\n\n @Input() ngForOf!: NgIterable<T> | null;\n\n @Input('ngForBsTrackBy') set bsTrackBy(ngForTrackBy: keyof T) {\n this.ngFor.ngForTrackBy = (index: number, item: T) => item[ngForTrackBy];\n }\n}\n\n","import { NgModule } from '@angular/core';\nimport { CommonModule } from '@angular/common';\nimport { BsTrackByDirective } from './track-by.directive';\n\n@NgModule({\n declarations: [BsTrackByDirective],\n imports: [CommonModule],\n exports: [BsTrackByDirective],\n})\nexport class BsTrackByModule {}\n","/**\n * Generated bundle index. Do not edit.\n */\n\nexport * from './index';\n"],"names":[],"mappings":";;;;;MAMa,kBAAkB,CAAA;AAC7B,IAAA,WAAA,CAA4B,KAAiB,EAAA;QAAjB,IAAK,CAAA,KAAA,GAAL,KAAK,CAAY;KAAI;IAIjD,IAA6B,SAAS,CAAC,YAAqB,EAAA;AAC1D,QAAA,IAAI,CAAC,KAAK,CAAC,YAAY,GAAG,CAAC,KAAa,EAAE,IAAO,KAAK,IAAI,CAAC,YAAY,CAAC,CAAC;KAC1E;8GAPU,kBAAkB,EAAA,IAAA,EAAA,CAAA,EAAA,KAAA,EAAA,EAAA,CAAA,OAAA,EAAA,IAAA,EAAA,IAAA,EAAA,CAAA,EAAA,MAAA,EAAA,EAAA,CAAA,eAAA,CAAA,SAAA,EAAA,CAAA,CAAA,EAAA;kGAAlB,kBAAkB,EAAA,QAAA,EAAA,kBAAA,EAAA,MAAA,EAAA,EAAA,OAAA,EAAA,SAAA,EAAA,SAAA,EAAA,CAAA,gBAAA,EAAA,WAAA,CAAA,EAAA,EAAA,QAAA,EAAA,EAAA,EAAA,CAAA,CAAA,EAAA;;2FAAlB,kBAAkB,EAAA,UAAA,EAAA,CAAA;kBAH9B,SAAS;AAAC,YAAA,IAAA,EAAA,CAAA;AACT,oBAAA,QAAQ,EAAE,kBAAkB;AAC7B,iBAAA,CAAA;;0BAEc,IAAI;4CAER,OAAO,EAAA,CAAA;sBAAf,KAAK;gBAEuB,SAAS,EAAA,CAAA;sBAArC,KAAK;uBAAC,gBAAgB,CAAA;;;MCFZ,eAAe,CAAA;8GAAf,eAAe,EAAA,IAAA,EAAA,EAAA,EAAA,MAAA,EAAA,EAAA,CAAA,eAAA,CAAA,QAAA,EAAA,CAAA,CAAA,EAAA;AAAf,IAAA,SAAA,IAAA,CAAA,IAAA,GAAA,EAAA,CAAA,mBAAA,CAAA,EAAA,UAAA,EAAA,QAAA,EAAA,OAAA,EAAA,QAAA,EAAA,QAAA,EAAA,EAAA,EAAA,IAAA,EAAA,eAAe,EAJX,YAAA,EAAA,CAAA,kBAAkB,CACvB,EAAA,OAAA,EAAA,CAAA,YAAY,aACZ,kBAAkB,CAAA,EAAA,CAAA,CAAA,EAAA;AAEjB,IAAA,SAAA,IAAA,CAAA,IAAA,GAAA,EAAA,CAAA,mBAAA,CAAA,EAAA,UAAA,EAAA,QAAA,EAAA,OAAA,EAAA,QAAA,EAAA,QAAA,EAAA,EAAA,EAAA,IAAA,EAAA,eAAe,YAHhB,YAAY,CAAA,EAAA,CAAA,CAAA,EAAA;;2FAGX,eAAe,EAAA,UAAA,EAAA,CAAA;kBAL3B,QAAQ;AAAC,YAAA,IAAA,EAAA,CAAA;oBACR,YAAY,EAAE,CAAC,kBAAkB,CAAC;oBAClC,OAAO,EAAE,CAAC,YAAY,CAAC;oBACvB,OAAO,EAAE,CAAC,kBAAkB,CAAC;AAC9B,iBAAA,CAAA;;;ACRD;;AAEG;;;;"}
|
|
@@ -16,7 +16,6 @@ export declare class BsFileUploadComponent {
|
|
|
16
16
|
onDragLeave(event: DragEvent): void;
|
|
17
17
|
onDrop(event: DragEvent): void;
|
|
18
18
|
private processDroppedFiles;
|
|
19
|
-
trackByFile(index: number, file: FileUpload): number;
|
|
20
19
|
static ɵfac: i0.ɵɵFactoryDeclaration<BsFileUploadComponent, never>;
|
|
21
20
|
static ɵcmp: i0.ɵɵComponentDeclaration<BsFileUploadComponent, "bs-file-upload", never, { "dropFilesCaption": { "alias": "dropFilesCaption"; "required": false; }; "browseFilesCaption": { "alias": "browseFilesCaption"; "required": false; }; "placeholder": { "alias": "placeholder"; "required": false; }; "files": { "alias": "files"; "required": false; }; }, { "filesDropped": "filesDropped"; }, never, never, false, never>;
|
|
22
21
|
}
|
|
@@ -4,11 +4,12 @@ import * as i2 from "./directive/file-upload-template.directive";
|
|
|
4
4
|
import * as i3 from "./pipes/format-bytes/format-bytes.pipe";
|
|
5
5
|
import * as i4 from "@angular/common";
|
|
6
6
|
import * as i5 from "@mintplayer/ng-bootstrap/for";
|
|
7
|
-
import * as i6 from "@mintplayer/ng-bootstrap/
|
|
8
|
-
import * as i7 from "@mintplayer/ng-bootstrap/
|
|
9
|
-
import * as i8 from "@mintplayer/ng-bootstrap/
|
|
7
|
+
import * as i6 from "@mintplayer/ng-bootstrap/track-by";
|
|
8
|
+
import * as i7 from "@mintplayer/ng-bootstrap/progress-bar";
|
|
9
|
+
import * as i8 from "@mintplayer/ng-bootstrap/list-group";
|
|
10
|
+
import * as i9 from "@mintplayer/ng-bootstrap/button-type";
|
|
10
11
|
export declare class BsFileUploadModule {
|
|
11
12
|
static ɵfac: i0.ɵɵFactoryDeclaration<BsFileUploadModule, never>;
|
|
12
|
-
static ɵmod: i0.ɵɵNgModuleDeclaration<BsFileUploadModule, [typeof i1.BsFileUploadComponent, typeof i2.BsFileUploadTemplateDirective, typeof i3.BsFormatBytesPipe], [typeof i4.CommonModule, typeof i5.BsForModule, typeof i6.
|
|
13
|
+
static ɵmod: i0.ɵɵNgModuleDeclaration<BsFileUploadModule, [typeof i1.BsFileUploadComponent, typeof i2.BsFileUploadTemplateDirective, typeof i3.BsFormatBytesPipe], [typeof i4.CommonModule, typeof i5.BsForModule, typeof i6.BsTrackByModule, typeof i7.BsProgressBarModule, typeof i8.BsListGroupModule, typeof i9.BsButtonTypeModule], [typeof i1.BsFileUploadComponent, typeof i2.BsFileUploadTemplateDirective, typeof i3.BsFormatBytesPipe]>;
|
|
13
14
|
static ɵinj: i0.ɵɵInjectorDeclaration<BsFileUploadModule>;
|
|
14
15
|
}
|
package/package.json
CHANGED
|
@@ -1,7 +1,7 @@
|
|
|
1
1
|
{
|
|
2
2
|
"name": "@mintplayer/ng-bootstrap",
|
|
3
3
|
"private": false,
|
|
4
|
-
"version": "16.
|
|
4
|
+
"version": "16.13.0",
|
|
5
5
|
"repository": {
|
|
6
6
|
"type": "git",
|
|
7
7
|
"url": "https://github.com/MintPlayer/mintplayer-ng-bootstrap",
|
|
@@ -456,6 +456,12 @@
|
|
|
456
456
|
"esm": "./esm2022/tooltip/mintplayer-ng-bootstrap-tooltip.mjs",
|
|
457
457
|
"default": "./fesm2022/mintplayer-ng-bootstrap-tooltip.mjs"
|
|
458
458
|
},
|
|
459
|
+
"./track-by": {
|
|
460
|
+
"types": "./track-by/index.d.ts",
|
|
461
|
+
"esm2022": "./esm2022/track-by/mintplayer-ng-bootstrap-track-by.mjs",
|
|
462
|
+
"esm": "./esm2022/track-by/mintplayer-ng-bootstrap-track-by.mjs",
|
|
463
|
+
"default": "./fesm2022/mintplayer-ng-bootstrap-track-by.mjs"
|
|
464
|
+
},
|
|
459
465
|
"./treeview": {
|
|
460
466
|
"types": "./treeview/index.d.ts",
|
|
461
467
|
"esm2022": "./esm2022/treeview/mintplayer-ng-bootstrap-treeview.mjs",
|
|
@@ -41,7 +41,6 @@ export declare class BsPaginationComponent {
|
|
|
41
41
|
onSelectPage(event: MouseEvent, page: number): boolean;
|
|
42
42
|
onPrevious(): boolean;
|
|
43
43
|
onNext(): boolean;
|
|
44
|
-
trackByPageNumber(index: number, page: PageWithSelection): PageWithSelection;
|
|
45
44
|
static ɵfac: i0.ɵɵFactoryDeclaration<BsPaginationComponent, never>;
|
|
46
45
|
static ɵcmp: i0.ɵɵComponentDeclaration<BsPaginationComponent, "bs-pagination", never, { "selectedPageNumber": { "alias": "selectedPageNumber"; "required": false; }; "numberOfBoxes": { "alias": "numberOfBoxes"; "required": false; }; "pageNumbers": { "alias": "pageNumbers"; "required": false; }; "showArrows": { "alias": "showArrows"; "required": false; }; "size": { "alias": "size"; "required": false; }; }, { "selectedPageNumberChange": "selectedPageNumberChange"; }, never, never, false, never>;
|
|
47
46
|
}
|
|
@@ -1,8 +1,9 @@
|
|
|
1
1
|
import * as i0 from "@angular/core";
|
|
2
2
|
import * as i1 from "./component/pagination/pagination.component";
|
|
3
3
|
import * as i2 from "@angular/common";
|
|
4
|
+
import * as i3 from "@mintplayer/ng-bootstrap/track-by";
|
|
4
5
|
export declare class BsPaginationModule {
|
|
5
6
|
static ɵfac: i0.ɵɵFactoryDeclaration<BsPaginationModule, never>;
|
|
6
|
-
static ɵmod: i0.ɵɵNgModuleDeclaration<BsPaginationModule, [typeof i1.BsPaginationComponent], [typeof i2.CommonModule], [typeof i1.BsPaginationComponent]>;
|
|
7
|
+
static ɵmod: i0.ɵɵNgModuleDeclaration<BsPaginationModule, [typeof i1.BsPaginationComponent], [typeof i2.CommonModule, typeof i3.BsTrackByModule], [typeof i1.BsPaginationComponent]>;
|
|
7
8
|
static ɵinj: i0.ɵɵInjectorDeclaration<BsPaginationModule>;
|
|
8
9
|
}
|
|
@@ -0,0 +1,11 @@
|
|
|
1
|
+
import { NgForOf } from '@angular/common';
|
|
2
|
+
import { NgIterable } from '@angular/core';
|
|
3
|
+
import * as i0 from "@angular/core";
|
|
4
|
+
export declare class BsTrackByDirective<T> {
|
|
5
|
+
private ngFor;
|
|
6
|
+
constructor(ngFor: NgForOf<T>);
|
|
7
|
+
ngForOf: NgIterable<T> | null;
|
|
8
|
+
set bsTrackBy(ngForTrackBy: keyof T);
|
|
9
|
+
static ɵfac: i0.ɵɵFactoryDeclaration<BsTrackByDirective<any>, [{ self: true; }]>;
|
|
10
|
+
static ɵdir: i0.ɵɵDirectiveDeclaration<BsTrackByDirective<any>, "[ngForBsTrackBy]", never, { "ngForOf": { "alias": "ngForOf"; "required": false; }; "bsTrackBy": { "alias": "ngForBsTrackBy"; "required": false; }; }, {}, never, never, false, never>;
|
|
11
|
+
}
|
|
@@ -0,0 +1,8 @@
|
|
|
1
|
+
import * as i0 from "@angular/core";
|
|
2
|
+
import * as i1 from "./track-by.directive";
|
|
3
|
+
import * as i2 from "@angular/common";
|
|
4
|
+
export declare class BsTrackByModule {
|
|
5
|
+
static ɵfac: i0.ɵɵFactoryDeclaration<BsTrackByModule, never>;
|
|
6
|
+
static ɵmod: i0.ɵɵNgModuleDeclaration<BsTrackByModule, [typeof i1.BsTrackByDirective], [typeof i2.CommonModule], [typeof i1.BsTrackByDirective]>;
|
|
7
|
+
static ɵinj: i0.ɵɵInjectorDeclaration<BsTrackByModule>;
|
|
8
|
+
}
|