@mintplayer/ng-bootstrap 13.1.1 → 13.1.6
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/esm2020/index.mjs +2 -1
- package/esm2020/lib/components/card/card/card.component.mjs +1 -2
- package/esm2020/lib/components/carousel/carousel/carousel.component.mjs +17 -8
- package/esm2020/lib/components/carousel/carousel-image/carousel-image.directive.mjs +10 -7
- package/esm2020/lib/components/datatable/datatable/datatable.component.mjs +51 -0
- package/esm2020/lib/components/datatable/datatable-column/datatable-column-metadata.mjs +2 -0
- package/esm2020/lib/components/datatable/datatable-column/datatable-column.directive.mjs +19 -0
- package/esm2020/lib/components/datatable/datatable-settings.mjs +37 -0
- package/esm2020/lib/components/datatable/datatable.module.mjs +40 -0
- package/esm2020/lib/components/datatable/index.mjs +6 -0
- package/esm2020/lib/components/datatable/row-template/row-template.directive.mjs +19 -0
- package/esm2020/lib/components/index.mjs +3 -1
- package/esm2020/lib/components/navbar/navbar/navbar.component.mjs +2 -2
- package/esm2020/lib/components/pagination/pagination/pagination.component.mjs +146 -0
- package/esm2020/lib/components/pagination/pagination.module.mjs +26 -0
- package/esm2020/lib/components/scrollspy/component/scrollspy.component.mjs +48 -0
- package/esm2020/lib/components/scrollspy/directives/scrollspy.directive.mjs +16 -0
- package/esm2020/lib/components/scrollspy/index.mjs +4 -0
- package/esm2020/lib/components/scrollspy/scrollspy.module.mjs +31 -0
- package/esm2020/lib/interfaces/index.mjs +2 -0
- package/esm2020/lib/interfaces/page-with-selection.mjs +2 -0
- package/esm2020/lib/types/page-number.type.mjs +2 -0
- package/fesm2015/mintplayer-ng-bootstrap.mjs +425 -18
- package/fesm2015/mintplayer-ng-bootstrap.mjs.map +1 -1
- package/fesm2020/mintplayer-ng-bootstrap.mjs +423 -18
- package/fesm2020/mintplayer-ng-bootstrap.mjs.map +1 -1
- package/index.d.ts +1 -0
- package/lib/components/carousel/carousel/carousel.component.d.ts +6 -4
- package/lib/components/carousel/carousel-image/carousel-image.directive.d.ts +5 -2
- package/lib/components/datatable/datatable/datatable.component.d.ts +17 -0
- package/lib/components/datatable/datatable-column/datatable-column-metadata.d.ts +4 -0
- package/lib/components/datatable/datatable-column/datatable-column.directive.d.ts +10 -0
- package/lib/components/datatable/datatable-settings.d.ts +15 -0
- package/lib/components/datatable/datatable.module.d.ts +11 -0
- package/lib/components/datatable/index.d.ts +5 -0
- package/lib/components/datatable/row-template/row-template.directive.d.ts +9 -0
- package/lib/components/index.d.ts +2 -0
- package/lib/components/pagination/pagination/pagination.component.d.ts +45 -0
- package/lib/components/pagination/pagination.module.d.ts +8 -0
- package/lib/components/scrollspy/component/scrollspy.component.d.ts +15 -0
- package/lib/components/scrollspy/directives/scrollspy.directive.d.ts +8 -0
- package/lib/components/scrollspy/index.d.ts +3 -0
- package/lib/components/scrollspy/scrollspy.module.d.ts +9 -0
- package/lib/interfaces/index.d.ts +1 -0
- package/lib/interfaces/page-with-selection.d.ts +5 -0
- package/lib/types/page-number.type.d.ts +1 -0
- package/package.json +2 -1
|
@@ -1,10 +1,11 @@
|
|
|
1
1
|
import * as i0 from '@angular/core';
|
|
2
|
-
import { Component, Input, NgModule, Injectable, Pipe, Directive,
|
|
2
|
+
import { Component, Input, NgModule, Injectable, Pipe, Directive, ContentChildren, EventEmitter, Output, ViewChild, Optional, forwardRef, SkipSelf, Host, Inject, TemplateRef, ContentChild, HostListener } from '@angular/core';
|
|
3
3
|
import * as i1 from '@angular/common';
|
|
4
|
-
import { CommonModule } from '@angular/common';
|
|
4
|
+
import { CommonModule, DOCUMENT } from '@angular/common';
|
|
5
5
|
import { SlideUpDownAnimation, FadeInOutAnimation, CarouselSlideAnimation } from '@mintplayer/ng-animations';
|
|
6
|
-
import { Subject, BehaviorSubject } from 'rxjs';
|
|
6
|
+
import { Subject, BehaviorSubject, Observable, combineLatest, takeUntil as takeUntil$1, map as map$1 } from 'rxjs';
|
|
7
7
|
import { map, takeUntil, take } from 'rxjs/operators';
|
|
8
|
+
import '@mintplayer/ng-pagination';
|
|
8
9
|
import { RouterModule } from '@angular/router';
|
|
9
10
|
import * as i1$1 from '@mintplayer/ng-click-outside';
|
|
10
11
|
import { ClickOutsideModule } from '@mintplayer/ng-click-outside';
|
|
@@ -88,7 +89,6 @@ class BsCardComponent {
|
|
|
88
89
|
ngOnInit() {
|
|
89
90
|
}
|
|
90
91
|
ngAfterViewInit() {
|
|
91
|
-
// console.log('header', this.header);
|
|
92
92
|
}
|
|
93
93
|
}
|
|
94
94
|
BsCardComponent.ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "13.1.1", ngImport: i0, type: BsCardComponent, deps: [], target: i0.ɵɵFactoryTarget.Component });
|
|
@@ -407,19 +407,25 @@ i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "13.1.1", ngImpor
|
|
|
407
407
|
}] });
|
|
408
408
|
|
|
409
409
|
class BsCarouselImageDirective {
|
|
410
|
-
constructor() {
|
|
410
|
+
constructor(templateRef) {
|
|
411
|
+
this.templateRef = templateRef;
|
|
412
|
+
this.itemTemplate = this.templateRef;
|
|
413
|
+
}
|
|
411
414
|
}
|
|
412
|
-
BsCarouselImageDirective.ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "13.1.1", ngImport: i0, type: BsCarouselImageDirective, deps: [], target: i0.ɵɵFactoryTarget.Directive });
|
|
413
|
-
BsCarouselImageDirective.ɵdir = i0.ɵɵngDeclareDirective({ minVersion: "12.0.0", version: "13.1.1", type: BsCarouselImageDirective, selector: "
|
|
415
|
+
BsCarouselImageDirective.ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "13.1.1", ngImport: i0, type: BsCarouselImageDirective, deps: [{ token: i0.TemplateRef }], target: i0.ɵɵFactoryTarget.Directive });
|
|
416
|
+
BsCarouselImageDirective.ɵdir = i0.ɵɵngDeclareDirective({ minVersion: "12.0.0", version: "13.1.1", type: BsCarouselImageDirective, selector: "*[bsCarouselImage]", ngImport: i0 });
|
|
414
417
|
i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "13.1.1", ngImport: i0, type: BsCarouselImageDirective, decorators: [{
|
|
415
418
|
type: Directive,
|
|
416
419
|
args: [{
|
|
417
|
-
selector: '
|
|
420
|
+
selector: '*[bsCarouselImage]'
|
|
418
421
|
}]
|
|
419
|
-
}], ctorParameters: function () { return []; } });
|
|
422
|
+
}], ctorParameters: function () { return [{ type: i0.TemplateRef }]; } });
|
|
420
423
|
|
|
421
424
|
class BsCarouselComponent {
|
|
422
425
|
constructor() {
|
|
426
|
+
// @HostBinding('@.disabled')
|
|
427
|
+
// public animationsDisabled = false;
|
|
428
|
+
this.animation = 'slide';
|
|
423
429
|
this.destroyed$ = new Subject();
|
|
424
430
|
this.currentImageCounter$ = new BehaviorSubject(-1);
|
|
425
431
|
this.currentImageIndex$ = this.currentImageCounter$
|
|
@@ -429,7 +435,7 @@ class BsCarouselComponent {
|
|
|
429
435
|
}))
|
|
430
436
|
.pipe(takeUntil(this.destroyed$));
|
|
431
437
|
this.currentImage$ = this.currentImageIndex$
|
|
432
|
-
.pipe(map((index) => this.images.get(index) ?? null))
|
|
438
|
+
.pipe(map((index) => this.images.get(index)?.itemTemplate ?? null))
|
|
433
439
|
.pipe(takeUntil(this.destroyed$));
|
|
434
440
|
}
|
|
435
441
|
ngOnInit() { }
|
|
@@ -459,17 +465,23 @@ class BsCarouselComponent {
|
|
|
459
465
|
});
|
|
460
466
|
}
|
|
461
467
|
setCurrentImage(index) {
|
|
462
|
-
this.currentImageCounter$.
|
|
468
|
+
const currentValue = this.currentImageCounter$.value;
|
|
469
|
+
const l = this.images.length;
|
|
470
|
+
const counterMod = ((currentValue % l) + l) % l;
|
|
471
|
+
const newValue = currentValue - counterMod + index;
|
|
472
|
+
this.currentImageCounter$.next(newValue);
|
|
463
473
|
}
|
|
464
474
|
}
|
|
465
475
|
BsCarouselComponent.ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "13.1.1", ngImport: i0, type: BsCarouselComponent, deps: [], target: i0.ɵɵFactoryTarget.Component });
|
|
466
|
-
BsCarouselComponent.ɵcmp = i0.ɵɵngDeclareComponent({ minVersion: "12.0.0", version: "13.1.1", type: BsCarouselComponent, selector: "bs-carousel", queries: [{ propertyName: "images", predicate: BsCarouselImageDirective
|
|
476
|
+
BsCarouselComponent.ɵcmp = i0.ɵɵngDeclareComponent({ minVersion: "12.0.0", version: "13.1.1", type: BsCarouselComponent, selector: "bs-carousel", inputs: { animation: "animation" }, queries: [{ propertyName: "images", predicate: BsCarouselImageDirective }], ngImport: i0, template: "<div class=\"carousel slide\">\n <div class=\"carousel-indicators\">\n <button *ngFor=\"let image of images; let i = index\" type=\"button\" (click)=\"setCurrentImage(i)\"\n [class.active]=\"(currentImageIndex$ | async) === i\" data-bs-target\n [attr.aria-current]=\"(currentImageIndex$ | async) === i ? true : null\"\n [attr.aria-label]=\"'Slide ' + i\"></button>\n </div>\n\n <div class=\"carousel-inner\" [@carouselSlide]=\"currentImageCounter$ | async\" *ngIf=\"animation === 'slide'\">\n <ng-container *ngFor=\"let image of images; let i = index\">\n <div class=\"carousel-item\" [class.active]=\"true\" *ngIf=\"(currentImageIndex$ | async) === i\">\n <ng-container [ngTemplateOutlet]=\"image.itemTemplate\"></ng-container> \n </div>\n </ng-container>\n </div>\n <div class=\"carousel-inner\" *ngIf=\"animation === 'fade'\">\n <ng-container *ngFor=\"let image of images; let i = index\">\n <div class=\"carousel-item\" [class.active]=\"true\" @fadeInOut *ngIf=\"(currentImageIndex$ | async) === i\">\n <ng-container [ngTemplateOutlet]=\"image.itemTemplate\"></ng-container> \n </div>\n </ng-container>\n </div>\n\n <button class=\"carousel-control-prev\" type=\"button\" (click)=\"previousImage()\">\n <span class=\"carousel-control-prev-icon\" aria-hidden=\"true\"></span>\n <span class=\"visually-hidden\">Previous</span>\n </button>\n <button class=\"carousel-control-next\" type=\"button\" (click)=\"nextImage()\">\n <span class=\"carousel-control-next-icon\" aria-hidden=\"true\"></span>\n <span class=\"visually-hidden\">Next</span>\n </button>\n</div>", styles: [".carousel{min-height:100px}\n"], directives: [{ type: i1.NgForOf, selector: "[ngFor][ngForOf]", inputs: ["ngForOf", "ngForTrackBy", "ngForTemplate"] }, { type: i1.NgIf, selector: "[ngIf]", inputs: ["ngIf", "ngIfThen", "ngIfElse"] }, { type: i1.NgTemplateOutlet, selector: "[ngTemplateOutlet]", inputs: ["ngTemplateOutletContext", "ngTemplateOutlet"] }], pipes: { "async": i1.AsyncPipe }, animations: [FadeInOutAnimation, CarouselSlideAnimation] });
|
|
467
477
|
i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "13.1.1", ngImport: i0, type: BsCarouselComponent, decorators: [{
|
|
468
478
|
type: Component,
|
|
469
|
-
args: [{ selector: 'bs-carousel', animations: [FadeInOutAnimation, CarouselSlideAnimation], template: "<div class=\"carousel slide\">\n <div class=\"carousel-indicators\">\n <button *ngFor=\"let image of images; let i = index\" type=\"button\" (click)=\"setCurrentImage(i)\"
|
|
470
|
-
}], ctorParameters: function () { return []; }, propDecorators: {
|
|
479
|
+
args: [{ selector: 'bs-carousel', animations: [FadeInOutAnimation, CarouselSlideAnimation], template: "<div class=\"carousel slide\">\n <div class=\"carousel-indicators\">\n <button *ngFor=\"let image of images; let i = index\" type=\"button\" (click)=\"setCurrentImage(i)\"\n [class.active]=\"(currentImageIndex$ | async) === i\" data-bs-target\n [attr.aria-current]=\"(currentImageIndex$ | async) === i ? true : null\"\n [attr.aria-label]=\"'Slide ' + i\"></button>\n </div>\n\n <div class=\"carousel-inner\" [@carouselSlide]=\"currentImageCounter$ | async\" *ngIf=\"animation === 'slide'\">\n <ng-container *ngFor=\"let image of images; let i = index\">\n <div class=\"carousel-item\" [class.active]=\"true\" *ngIf=\"(currentImageIndex$ | async) === i\">\n <ng-container [ngTemplateOutlet]=\"image.itemTemplate\"></ng-container> \n </div>\n </ng-container>\n </div>\n <div class=\"carousel-inner\" *ngIf=\"animation === 'fade'\">\n <ng-container *ngFor=\"let image of images; let i = index\">\n <div class=\"carousel-item\" [class.active]=\"true\" @fadeInOut *ngIf=\"(currentImageIndex$ | async) === i\">\n <ng-container [ngTemplateOutlet]=\"image.itemTemplate\"></ng-container> \n </div>\n </ng-container>\n </div>\n\n <button class=\"carousel-control-prev\" type=\"button\" (click)=\"previousImage()\">\n <span class=\"carousel-control-prev-icon\" aria-hidden=\"true\"></span>\n <span class=\"visually-hidden\">Previous</span>\n </button>\n <button class=\"carousel-control-next\" type=\"button\" (click)=\"nextImage()\">\n <span class=\"carousel-control-next-icon\" aria-hidden=\"true\"></span>\n <span class=\"visually-hidden\">Next</span>\n </button>\n</div>", styles: [".carousel{min-height:100px}\n"] }]
|
|
480
|
+
}], ctorParameters: function () { return []; }, propDecorators: { animation: [{
|
|
481
|
+
type: Input
|
|
482
|
+
}], images: [{
|
|
471
483
|
type: ContentChildren,
|
|
472
|
-
args: [BsCarouselImageDirective
|
|
484
|
+
args: [BsCarouselImageDirective]
|
|
473
485
|
}] } });
|
|
474
486
|
|
|
475
487
|
class BsCarouselModule {
|
|
@@ -498,6 +510,316 @@ i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "13.1.1", ngImpor
|
|
|
498
510
|
}]
|
|
499
511
|
}] });
|
|
500
512
|
|
|
513
|
+
class BsDatatableColumnDirective {
|
|
514
|
+
constructor(templateRef) {
|
|
515
|
+
this.bsDatatableColumn = { name: '', sortable: true };
|
|
516
|
+
this.templateRef = templateRef;
|
|
517
|
+
}
|
|
518
|
+
}
|
|
519
|
+
BsDatatableColumnDirective.ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "13.1.1", ngImport: i0, type: BsDatatableColumnDirective, deps: [{ token: i0.TemplateRef }], target: i0.ɵɵFactoryTarget.Directive });
|
|
520
|
+
BsDatatableColumnDirective.ɵdir = i0.ɵɵngDeclareDirective({ minVersion: "12.0.0", version: "13.1.1", type: BsDatatableColumnDirective, selector: "[bsDatatableColumn]", inputs: { bsDatatableColumn: "bsDatatableColumn" }, ngImport: i0 });
|
|
521
|
+
i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "13.1.1", ngImport: i0, type: BsDatatableColumnDirective, decorators: [{
|
|
522
|
+
type: Directive,
|
|
523
|
+
args: [{
|
|
524
|
+
selector: '[bsDatatableColumn]'
|
|
525
|
+
}]
|
|
526
|
+
}], ctorParameters: function () { return [{ type: i0.TemplateRef }]; }, propDecorators: { bsDatatableColumn: [{
|
|
527
|
+
type: Input
|
|
528
|
+
}] } });
|
|
529
|
+
|
|
530
|
+
class DatatableSettings {
|
|
531
|
+
constructor(data) {
|
|
532
|
+
this.sortProperty = '';
|
|
533
|
+
this.sortDirection = 'ascending';
|
|
534
|
+
Object.assign(this, data);
|
|
535
|
+
if (data && data.perPage) {
|
|
536
|
+
this.perPage = data.perPage;
|
|
537
|
+
}
|
|
538
|
+
else {
|
|
539
|
+
// Set default value
|
|
540
|
+
this.perPage = {
|
|
541
|
+
values: [10, 20, 50],
|
|
542
|
+
selected: 20
|
|
543
|
+
};
|
|
544
|
+
}
|
|
545
|
+
if (data && data.page) {
|
|
546
|
+
this.page = data.page;
|
|
547
|
+
}
|
|
548
|
+
else {
|
|
549
|
+
// Set default value
|
|
550
|
+
this.page = {
|
|
551
|
+
values: [1],
|
|
552
|
+
selected: 1
|
|
553
|
+
};
|
|
554
|
+
}
|
|
555
|
+
}
|
|
556
|
+
toPagination() {
|
|
557
|
+
const res = {
|
|
558
|
+
sortProperty: this.sortProperty,
|
|
559
|
+
sortDirection: this.sortDirection,
|
|
560
|
+
perPage: this.perPage.selected,
|
|
561
|
+
page: this.page.selected
|
|
562
|
+
};
|
|
563
|
+
return res;
|
|
564
|
+
}
|
|
565
|
+
}
|
|
566
|
+
|
|
567
|
+
class BsPaginationComponent {
|
|
568
|
+
constructor() {
|
|
569
|
+
/** All page numbers. */
|
|
570
|
+
this.pageNumbers$ = new BehaviorSubject([]);
|
|
571
|
+
/** Selected number. */
|
|
572
|
+
this.selectedPageNumber$ = new BehaviorSubject(1);
|
|
573
|
+
/** Number of boxes. */
|
|
574
|
+
this.numberOfBoxes$ = new BehaviorSubject(0);
|
|
575
|
+
/** Display previous/next arrows. */
|
|
576
|
+
this.showArrows$ = new BehaviorSubject(true);
|
|
577
|
+
/** Indicates if first value is selected. */
|
|
578
|
+
this.isFirstPage$ = new Observable();
|
|
579
|
+
/** Indicates if last value is selected. */
|
|
580
|
+
this.isLastPage$ = new Observable();
|
|
581
|
+
/** The number of boxes (excluding arrows) that's being shown on the pagination component. */
|
|
582
|
+
this.visibleNumberOfNumberBoxes$ = new Observable();
|
|
583
|
+
this._selectedPageNumber = 0;
|
|
584
|
+
this.selectedPageNumberChange = new EventEmitter();
|
|
585
|
+
this._numberOfBoxes = 0;
|
|
586
|
+
this._pageNumbers = [];
|
|
587
|
+
this._showArrows = true;
|
|
588
|
+
this.destroyed$ = new Subject();
|
|
589
|
+
this.visibleNumberOfNumberBoxes$ =
|
|
590
|
+
combineLatest([this.numberOfBoxes$, this.pageNumbers$, this.showArrows$])
|
|
591
|
+
.pipe(takeUntil$1(this.destroyed$))
|
|
592
|
+
.pipe(map$1(([numberOfBoxes, pageNumbers, showArrows]) => {
|
|
593
|
+
if (numberOfBoxes <= 0) {
|
|
594
|
+
return pageNumbers.length;
|
|
595
|
+
}
|
|
596
|
+
else if (!showArrows) {
|
|
597
|
+
return Math.min(numberOfBoxes, pageNumbers.length);
|
|
598
|
+
}
|
|
599
|
+
else if (numberOfBoxes <= 2) {
|
|
600
|
+
return Math.min(1, pageNumbers.length);
|
|
601
|
+
}
|
|
602
|
+
else {
|
|
603
|
+
return Math.min(numberOfBoxes - 2, pageNumbers.length);
|
|
604
|
+
}
|
|
605
|
+
}));
|
|
606
|
+
this.shownPageNumbers$ =
|
|
607
|
+
combineLatest([this.pageNumbers$, this.selectedPageNumber$, this.visibleNumberOfNumberBoxes$])
|
|
608
|
+
.pipe(takeUntil$1(this.destroyed$))
|
|
609
|
+
.pipe(map$1(([pageNumbers, selectedPageNumber, visibleNumberOfNumberBoxes]) => {
|
|
610
|
+
let startIndex = 0;
|
|
611
|
+
const half = Math.round((visibleNumberOfNumberBoxes - 1) / 2);
|
|
612
|
+
if (pageNumbers.indexOf(selectedPageNumber) < half) {
|
|
613
|
+
startIndex = 0;
|
|
614
|
+
}
|
|
615
|
+
else if (pageNumbers.indexOf(selectedPageNumber) >= (pageNumbers.length - half)) {
|
|
616
|
+
startIndex = pageNumbers.length - visibleNumberOfNumberBoxes;
|
|
617
|
+
}
|
|
618
|
+
else {
|
|
619
|
+
startIndex = pageNumbers.indexOf(selectedPageNumber) - half;
|
|
620
|
+
}
|
|
621
|
+
return [...Array(visibleNumberOfNumberBoxes).keys()]
|
|
622
|
+
.map(p => p + startIndex)
|
|
623
|
+
.map(p => ({
|
|
624
|
+
page: pageNumbers[p],
|
|
625
|
+
selected: pageNumbers[p] === selectedPageNumber
|
|
626
|
+
}));
|
|
627
|
+
}));
|
|
628
|
+
this.isFirstPage$ =
|
|
629
|
+
combineLatest([this.pageNumbers$, this.selectedPageNumber$])
|
|
630
|
+
.pipe(takeUntil$1(this.destroyed$))
|
|
631
|
+
.pipe(map$1(([pageNumbers, selectedPageNumber]) => {
|
|
632
|
+
return pageNumbers.indexOf(selectedPageNumber) === 0;
|
|
633
|
+
}));
|
|
634
|
+
this.isLastPage$ =
|
|
635
|
+
combineLatest([this.pageNumbers$, this.selectedPageNumber$])
|
|
636
|
+
.pipe(takeUntil$1(this.destroyed$))
|
|
637
|
+
.pipe(map$1(([pageNumbers, selectedPageNumber]) => {
|
|
638
|
+
return pageNumbers.indexOf(selectedPageNumber) === (pageNumbers.length - 1);
|
|
639
|
+
}));
|
|
640
|
+
this.selectedPageNumber$
|
|
641
|
+
.pipe(takeUntil$1(this.destroyed$))
|
|
642
|
+
.subscribe((selectedPageNumber) => {
|
|
643
|
+
this.selectedPageNumberChange.emit(selectedPageNumber);
|
|
644
|
+
});
|
|
645
|
+
}
|
|
646
|
+
ngOnInit() {
|
|
647
|
+
}
|
|
648
|
+
ngOnDestroy() {
|
|
649
|
+
this.destroyed$.next(true);
|
|
650
|
+
}
|
|
651
|
+
onSelectPage(event, page) {
|
|
652
|
+
this.selectedPageNumber$.next(page);
|
|
653
|
+
return false;
|
|
654
|
+
}
|
|
655
|
+
onPrevious() {
|
|
656
|
+
this.selectedPageNumber$.next(this.selectedPageNumber$.value - 1);
|
|
657
|
+
return false;
|
|
658
|
+
}
|
|
659
|
+
onNext() {
|
|
660
|
+
this.selectedPageNumber$.next(this.selectedPageNumber$.value + 1);
|
|
661
|
+
return false;
|
|
662
|
+
}
|
|
663
|
+
set selectedPageNumber(value) {
|
|
664
|
+
this._selectedPageNumber = value;
|
|
665
|
+
this.selectedPageNumber$.next(value);
|
|
666
|
+
}
|
|
667
|
+
get selectedPageNumber() {
|
|
668
|
+
return this._selectedPageNumber;
|
|
669
|
+
}
|
|
670
|
+
set numberOfBoxes(value) {
|
|
671
|
+
this._numberOfBoxes = value;
|
|
672
|
+
this.numberOfBoxes$.next(value);
|
|
673
|
+
}
|
|
674
|
+
get numberOfBoxes() {
|
|
675
|
+
return this._numberOfBoxes;
|
|
676
|
+
}
|
|
677
|
+
set pageNumbers(value) {
|
|
678
|
+
this._pageNumbers = value;
|
|
679
|
+
this.pageNumbers$.next(value);
|
|
680
|
+
}
|
|
681
|
+
get pageNumbers() {
|
|
682
|
+
return this._pageNumbers;
|
|
683
|
+
}
|
|
684
|
+
set showArrows(value) {
|
|
685
|
+
this._showArrows = value;
|
|
686
|
+
this.showArrows$.next(value);
|
|
687
|
+
}
|
|
688
|
+
get showArrows() {
|
|
689
|
+
return this._showArrows;
|
|
690
|
+
}
|
|
691
|
+
}
|
|
692
|
+
BsPaginationComponent.ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "13.1.1", ngImport: i0, type: BsPaginationComponent, deps: [], target: i0.ɵɵFactoryTarget.Component });
|
|
693
|
+
BsPaginationComponent.ɵcmp = i0.ɵɵngDeclareComponent({ minVersion: "12.0.0", version: "13.1.1", type: BsPaginationComponent, selector: "bs-pagination", inputs: { selectedPageNumber: "selectedPageNumber", numberOfBoxes: "numberOfBoxes", pageNumbers: "pageNumbers", showArrows: "showArrows" }, outputs: { selectedPageNumberChange: "selectedPageNumberChange" }, ngImport: i0, template: "<ul class=\"pagination\">\n <li class=\"page-item\" *ngIf=\"showArrows$ | async\" [class.disabled]=\"isFirstPage$ | async\">\n <a class=\"page-link\" href=\"\" (click)=\"onPrevious()\" 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)\" class=\"page-item\"\n [ngClass]=\"{ 'active': pageNumber.selected }\">\n <a class=\"page-link\" href=\"\" (click)=\"onSelectPage($event, pageNumber.page)\" *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\" [class.disabled]=\"isLastPage$ | async\">\n <a class=\"page-link\" href=\"\" (click)=\"onNext()\" aria-label=\"Next\">\n <span aria-hidden=\"true\">»</span>\n <span class=\"visually-hidden\">Next</span>\n </a>\n </li>\n</ul>", styles: [":host{display:inline-block}\n"], directives: [{ type: i1.NgIf, selector: "[ngIf]", inputs: ["ngIf", "ngIfThen", "ngIfElse"] }, { type: i1.NgForOf, selector: "[ngFor][ngForOf]", inputs: ["ngForOf", "ngForTrackBy", "ngForTemplate"] }, { type: i1.NgClass, selector: "[ngClass]", inputs: ["class", "ngClass"] }], pipes: { "async": i1.AsyncPipe } });
|
|
694
|
+
i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "13.1.1", ngImport: i0, type: BsPaginationComponent, decorators: [{
|
|
695
|
+
type: Component,
|
|
696
|
+
args: [{ selector: 'bs-pagination', template: "<ul class=\"pagination\">\n <li class=\"page-item\" *ngIf=\"showArrows$ | async\" [class.disabled]=\"isFirstPage$ | async\">\n <a class=\"page-link\" href=\"\" (click)=\"onPrevious()\" 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)\" class=\"page-item\"\n [ngClass]=\"{ 'active': pageNumber.selected }\">\n <a class=\"page-link\" href=\"\" (click)=\"onSelectPage($event, pageNumber.page)\" *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\" [class.disabled]=\"isLastPage$ | async\">\n <a class=\"page-link\" href=\"\" (click)=\"onNext()\" aria-label=\"Next\">\n <span aria-hidden=\"true\">»</span>\n <span class=\"visually-hidden\">Next</span>\n </a>\n </li>\n</ul>", styles: [":host{display:inline-block}\n"] }]
|
|
697
|
+
}], ctorParameters: function () { return []; }, propDecorators: { selectedPageNumberChange: [{
|
|
698
|
+
type: Output
|
|
699
|
+
}], selectedPageNumber: [{
|
|
700
|
+
type: Input
|
|
701
|
+
}], numberOfBoxes: [{
|
|
702
|
+
type: Input
|
|
703
|
+
}], pageNumbers: [{
|
|
704
|
+
type: Input
|
|
705
|
+
}], showArrows: [{
|
|
706
|
+
type: Input
|
|
707
|
+
}] } });
|
|
708
|
+
|
|
709
|
+
class BsDatatableComponent {
|
|
710
|
+
constructor() {
|
|
711
|
+
this.columns = [];
|
|
712
|
+
this.onReloadData = new EventEmitter();
|
|
713
|
+
this.settings = new DatatableSettings();
|
|
714
|
+
this.settings.sortProperty = '';
|
|
715
|
+
this.settings.sortDirection = 'ascending';
|
|
716
|
+
this.settings.perPage = { values: [10, 20, 50], selected: 20 };
|
|
717
|
+
this.settings.page = { values: [1], selected: 1 };
|
|
718
|
+
}
|
|
719
|
+
columnHeaderClicked(column) {
|
|
720
|
+
if (column.bsDatatableColumn.sortable) {
|
|
721
|
+
if (this.settings.sortProperty !== column.bsDatatableColumn.name) {
|
|
722
|
+
this.settings.sortProperty = column.bsDatatableColumn.name;
|
|
723
|
+
this.settings.sortDirection = 'ascending';
|
|
724
|
+
}
|
|
725
|
+
else if (this.settings.sortDirection === 'descending') {
|
|
726
|
+
this.settings.sortDirection = 'ascending';
|
|
727
|
+
}
|
|
728
|
+
else {
|
|
729
|
+
this.settings.sortDirection = 'descending';
|
|
730
|
+
}
|
|
731
|
+
this.onReloadData.emit();
|
|
732
|
+
}
|
|
733
|
+
}
|
|
734
|
+
ngOnInit() {
|
|
735
|
+
}
|
|
736
|
+
}
|
|
737
|
+
BsDatatableComponent.ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "13.1.1", ngImport: i0, type: BsDatatableComponent, deps: [], target: i0.ɵɵFactoryTarget.Component });
|
|
738
|
+
BsDatatableComponent.ɵcmp = i0.ɵɵngDeclareComponent({ minVersion: "12.0.0", version: "13.1.1", type: BsDatatableComponent, selector: "bs-datatable", inputs: { settings: "settings", data: "data" }, outputs: { onReloadData: "onReloadData" }, queries: [{ propertyName: "columns", predicate: BsDatatableColumnDirective }], ngImport: i0, template: "<div class=\"table-responsive overflow-y-hidden mb-3\">\n <table class=\"table table-striped table-hover w-100 mb-0\" cellspacing=\"0\" role=\"grid\">\n <thead>\n <tr>\n <th *ngFor=\"let column of columns\" class=\"text-nowrap\"\n [class.sort]=\"column.bsDatatableColumn.sortable\"\n [class.sort-asc]=\"column.bsDatatableColumn.sortable && (settings.sortProperty === column.bsDatatableColumn.name) && (settings.sortDirection === 'ascending')\"\n [class.sort-desc]=\"column.bsDatatableColumn.sortable && (settings.sortProperty === column.bsDatatableColumn.name) && (settings.sortDirection === 'descending')\"\n (click)=\"columnHeaderClicked(column)\">\n <ng-container *ngTemplateOutlet=\"column.templateRef\"></ng-container>\n </th>\n </tr>\n </thead>\n <tbody>\n <ng-container *ngIf=\"!!data && !!rowTemplate\">\n <ng-container *ngFor=\"let item of data.data\">\n <ng-container *ngTemplateOutlet=\"rowTemplate; context: { $implicit: item }\"></ng-container>\n </ng-container>\n </ng-container>\n </tbody>\n </table>\n</div>\n<div class=\"container-fluid\">\n <div class=\"row\">\n <div class=\"col-md-12\">\n <bs-pagination class=\"float-start\" [pageNumbers]=\"settings.perPage.values\"\n [(selectedPageNumber)]=\"settings.perPage.selected\" (selectedPageNumberChange)=\"onReloadData.emit()\"\n [showArrows]=\"false\"></bs-pagination>\n <bs-pagination class=\"float-end\" [pageNumbers]=\"settings.page.values\"\n [(selectedPageNumber)]=\"settings.page.selected\" (selectedPageNumberChange)=\"onReloadData.emit()\"\n [showArrows]=\"true\"></bs-pagination>\n </div>\n </div>\n</div>", styles: ["@charset \"UTF-8\";.overflow-y-hidden{overflow-y:hidden}.table thead th.sort{position:relative;cursor:pointer}.table thead th.sort:before,.table thead th.sort:after{position:absolute;display:block;opacity:.3;bottom:.5em}.table thead th.sort:before{content:\"\\2191\";right:1em}.table thead th.sort:after{content:\"\\2193\";right:.5em}.table thead th.sort.sort-asc:after{opacity:1}.table thead th.sort.sort-desc:before{opacity:1}\n"], components: [{ type: BsPaginationComponent, selector: "bs-pagination", inputs: ["selectedPageNumber", "numberOfBoxes", "pageNumbers", "showArrows"], outputs: ["selectedPageNumberChange"] }], directives: [{ type: i1.NgForOf, selector: "[ngFor][ngForOf]", inputs: ["ngForOf", "ngForTrackBy", "ngForTemplate"] }, { type: i1.NgTemplateOutlet, selector: "[ngTemplateOutlet]", inputs: ["ngTemplateOutletContext", "ngTemplateOutlet"] }, { type: i1.NgIf, selector: "[ngIf]", inputs: ["ngIf", "ngIfThen", "ngIfElse"] }] });
|
|
739
|
+
i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "13.1.1", ngImport: i0, type: BsDatatableComponent, decorators: [{
|
|
740
|
+
type: Component,
|
|
741
|
+
args: [{ selector: 'bs-datatable', template: "<div class=\"table-responsive overflow-y-hidden mb-3\">\n <table class=\"table table-striped table-hover w-100 mb-0\" cellspacing=\"0\" role=\"grid\">\n <thead>\n <tr>\n <th *ngFor=\"let column of columns\" class=\"text-nowrap\"\n [class.sort]=\"column.bsDatatableColumn.sortable\"\n [class.sort-asc]=\"column.bsDatatableColumn.sortable && (settings.sortProperty === column.bsDatatableColumn.name) && (settings.sortDirection === 'ascending')\"\n [class.sort-desc]=\"column.bsDatatableColumn.sortable && (settings.sortProperty === column.bsDatatableColumn.name) && (settings.sortDirection === 'descending')\"\n (click)=\"columnHeaderClicked(column)\">\n <ng-container *ngTemplateOutlet=\"column.templateRef\"></ng-container>\n </th>\n </tr>\n </thead>\n <tbody>\n <ng-container *ngIf=\"!!data && !!rowTemplate\">\n <ng-container *ngFor=\"let item of data.data\">\n <ng-container *ngTemplateOutlet=\"rowTemplate; context: { $implicit: item }\"></ng-container>\n </ng-container>\n </ng-container>\n </tbody>\n </table>\n</div>\n<div class=\"container-fluid\">\n <div class=\"row\">\n <div class=\"col-md-12\">\n <bs-pagination class=\"float-start\" [pageNumbers]=\"settings.perPage.values\"\n [(selectedPageNumber)]=\"settings.perPage.selected\" (selectedPageNumberChange)=\"onReloadData.emit()\"\n [showArrows]=\"false\"></bs-pagination>\n <bs-pagination class=\"float-end\" [pageNumbers]=\"settings.page.values\"\n [(selectedPageNumber)]=\"settings.page.selected\" (selectedPageNumberChange)=\"onReloadData.emit()\"\n [showArrows]=\"true\"></bs-pagination>\n </div>\n </div>\n</div>", styles: ["@charset \"UTF-8\";.overflow-y-hidden{overflow-y:hidden}.table thead th.sort{position:relative;cursor:pointer}.table thead th.sort:before,.table thead th.sort:after{position:absolute;display:block;opacity:.3;bottom:.5em}.table thead th.sort:before{content:\"\\2191\";right:1em}.table thead th.sort:after{content:\"\\2193\";right:.5em}.table thead th.sort.sort-asc:after{opacity:1}.table thead th.sort.sort-desc:before{opacity:1}\n"] }]
|
|
742
|
+
}], ctorParameters: function () { return []; }, propDecorators: { columns: [{
|
|
743
|
+
type: ContentChildren,
|
|
744
|
+
args: [BsDatatableColumnDirective]
|
|
745
|
+
}], settings: [{
|
|
746
|
+
type: Input
|
|
747
|
+
}], data: [{
|
|
748
|
+
type: Input
|
|
749
|
+
}], onReloadData: [{
|
|
750
|
+
type: Output
|
|
751
|
+
}] } });
|
|
752
|
+
|
|
753
|
+
class BsRowTemplateDirective {
|
|
754
|
+
constructor(datatableComponent, templateRef) {
|
|
755
|
+
this.datatableComponent = datatableComponent;
|
|
756
|
+
this.datatableComponent.rowTemplate = templateRef;
|
|
757
|
+
}
|
|
758
|
+
}
|
|
759
|
+
BsRowTemplateDirective.ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "13.1.1", ngImport: i0, type: BsRowTemplateDirective, deps: [{ token: BsDatatableComponent }, { token: i0.TemplateRef }], target: i0.ɵɵFactoryTarget.Directive });
|
|
760
|
+
BsRowTemplateDirective.ɵdir = i0.ɵɵngDeclareDirective({ minVersion: "12.0.0", version: "13.1.1", type: BsRowTemplateDirective, selector: "[rowTemplate]", ngImport: i0 });
|
|
761
|
+
i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "13.1.1", ngImport: i0, type: BsRowTemplateDirective, decorators: [{
|
|
762
|
+
type: Directive,
|
|
763
|
+
args: [{
|
|
764
|
+
selector: '[rowTemplate]'
|
|
765
|
+
}]
|
|
766
|
+
}], ctorParameters: function () { return [{ type: BsDatatableComponent }, { type: i0.TemplateRef }]; } });
|
|
767
|
+
|
|
768
|
+
class BsPaginationModule {
|
|
769
|
+
}
|
|
770
|
+
BsPaginationModule.ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "13.1.1", ngImport: i0, type: BsPaginationModule, deps: [], target: i0.ɵɵFactoryTarget.NgModule });
|
|
771
|
+
BsPaginationModule.ɵmod = i0.ɵɵngDeclareNgModule({ minVersion: "12.0.0", version: "13.1.1", ngImport: i0, type: BsPaginationModule, declarations: [BsPaginationComponent], imports: [CommonModule], exports: [BsPaginationComponent] });
|
|
772
|
+
BsPaginationModule.ɵinj = i0.ɵɵngDeclareInjector({ minVersion: "12.0.0", version: "13.1.1", ngImport: i0, type: BsPaginationModule, imports: [[
|
|
773
|
+
CommonModule
|
|
774
|
+
]] });
|
|
775
|
+
i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "13.1.1", ngImport: i0, type: BsPaginationModule, decorators: [{
|
|
776
|
+
type: NgModule,
|
|
777
|
+
args: [{
|
|
778
|
+
declarations: [
|
|
779
|
+
BsPaginationComponent
|
|
780
|
+
],
|
|
781
|
+
imports: [
|
|
782
|
+
CommonModule
|
|
783
|
+
],
|
|
784
|
+
exports: [
|
|
785
|
+
BsPaginationComponent
|
|
786
|
+
]
|
|
787
|
+
}]
|
|
788
|
+
}] });
|
|
789
|
+
|
|
790
|
+
class BsDatatableModule {
|
|
791
|
+
}
|
|
792
|
+
BsDatatableModule.ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "13.1.1", ngImport: i0, type: BsDatatableModule, deps: [], target: i0.ɵɵFactoryTarget.NgModule });
|
|
793
|
+
BsDatatableModule.ɵmod = i0.ɵɵngDeclareNgModule({ minVersion: "12.0.0", version: "13.1.1", ngImport: i0, type: BsDatatableModule, declarations: [BsDatatableComponent,
|
|
794
|
+
BsRowTemplateDirective,
|
|
795
|
+
BsDatatableColumnDirective], imports: [CommonModule,
|
|
796
|
+
BsPaginationModule], exports: [BsDatatableComponent,
|
|
797
|
+
BsRowTemplateDirective,
|
|
798
|
+
BsDatatableColumnDirective] });
|
|
799
|
+
BsDatatableModule.ɵinj = i0.ɵɵngDeclareInjector({ minVersion: "12.0.0", version: "13.1.1", ngImport: i0, type: BsDatatableModule, imports: [[
|
|
800
|
+
CommonModule,
|
|
801
|
+
BsPaginationModule
|
|
802
|
+
]] });
|
|
803
|
+
i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "13.1.1", ngImport: i0, type: BsDatatableModule, decorators: [{
|
|
804
|
+
type: NgModule,
|
|
805
|
+
args: [{
|
|
806
|
+
declarations: [
|
|
807
|
+
BsDatatableComponent,
|
|
808
|
+
BsRowTemplateDirective,
|
|
809
|
+
BsDatatableColumnDirective
|
|
810
|
+
],
|
|
811
|
+
imports: [
|
|
812
|
+
CommonModule,
|
|
813
|
+
BsPaginationModule
|
|
814
|
+
],
|
|
815
|
+
exports: [
|
|
816
|
+
BsDatatableComponent,
|
|
817
|
+
BsRowTemplateDirective,
|
|
818
|
+
BsDatatableColumnDirective
|
|
819
|
+
]
|
|
820
|
+
}]
|
|
821
|
+
}] });
|
|
822
|
+
|
|
501
823
|
class BsListGroupItemComponent {
|
|
502
824
|
constructor() {
|
|
503
825
|
}
|
|
@@ -558,10 +880,10 @@ class BsNavbarComponent {
|
|
|
558
880
|
}
|
|
559
881
|
}
|
|
560
882
|
BsNavbarComponent.ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "13.1.1", ngImport: i0, type: BsNavbarComponent, deps: [], target: i0.ɵɵFactoryTarget.Component });
|
|
561
|
-
BsNavbarComponent.ɵcmp = i0.ɵɵngDeclareComponent({ minVersion: "12.0.0", version: "13.1.1", type: BsNavbarComponent, selector: "bs-navbar", viewQueries: [{ propertyName: "nav", first: true, predicate: ["nav"], descendants: true }], ngImport: i0, template: "<nav #nav class=\"navbar navbar-expand-md position-fixed navbar-dark bg-dark\">\n <div class=\"container-fluid\">\n <div class=\"d-flex w-100 w-md-auto\">\n <a class=\"navbar-brand mx-auto mx-md-unset\" href=\"#\">Navbar 2</a>\n <button (click)=\"toggleExpanded()\" class=\"navbar-toggler align-self-end\" type=\"button\" data-toggle=\"collapse\">\n <span class=\"navbar-toggler-icon\"></span>\n </button>\n </div>\n <ng-content></ng-content>\n </div>\n</nav>", styles: [":host ::ng-deep+*{padding-top:56px}nav{left:0;top:0;right:0;z-index:
|
|
883
|
+
BsNavbarComponent.ɵcmp = i0.ɵɵngDeclareComponent({ minVersion: "12.0.0", version: "13.1.1", type: BsNavbarComponent, selector: "bs-navbar", viewQueries: [{ propertyName: "nav", first: true, predicate: ["nav"], descendants: true }], ngImport: i0, template: "<nav #nav class=\"navbar navbar-expand-md position-fixed navbar-dark bg-dark\">\n <div class=\"container-fluid\">\n <div class=\"d-flex w-100 w-md-auto\">\n <a class=\"navbar-brand mx-auto mx-md-unset\" href=\"#\">Navbar 2</a>\n <button (click)=\"toggleExpanded()\" class=\"navbar-toggler align-self-end\" type=\"button\" data-toggle=\"collapse\">\n <span class=\"navbar-toggler-icon\"></span>\n </button>\n </div>\n <ng-content></ng-content>\n </div>\n</nav>", styles: [":host ::ng-deep+*{padding-top:56px}nav{left:0;top:0;right:0;z-index:10}@media (min-width: 768px){.mx-md-unset{margin-left:0!important;margin-right:0!important}.w-md-auto{width:auto!important}}\n"] });
|
|
562
884
|
i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "13.1.1", ngImport: i0, type: BsNavbarComponent, decorators: [{
|
|
563
885
|
type: Component,
|
|
564
|
-
args: [{ selector: 'bs-navbar', template: "<nav #nav class=\"navbar navbar-expand-md position-fixed navbar-dark bg-dark\">\n <div class=\"container-fluid\">\n <div class=\"d-flex w-100 w-md-auto\">\n <a class=\"navbar-brand mx-auto mx-md-unset\" href=\"#\">Navbar 2</a>\n <button (click)=\"toggleExpanded()\" class=\"navbar-toggler align-self-end\" type=\"button\" data-toggle=\"collapse\">\n <span class=\"navbar-toggler-icon\"></span>\n </button>\n </div>\n <ng-content></ng-content>\n </div>\n</nav>", styles: [":host ::ng-deep+*{padding-top:56px}nav{left:0;top:0;right:0;z-index:
|
|
886
|
+
args: [{ selector: 'bs-navbar', template: "<nav #nav class=\"navbar navbar-expand-md position-fixed navbar-dark bg-dark\">\n <div class=\"container-fluid\">\n <div class=\"d-flex w-100 w-md-auto\">\n <a class=\"navbar-brand mx-auto mx-md-unset\" href=\"#\">Navbar 2</a>\n <button (click)=\"toggleExpanded()\" class=\"navbar-toggler align-self-end\" type=\"button\" data-toggle=\"collapse\">\n <span class=\"navbar-toggler-icon\"></span>\n </button>\n </div>\n <ng-content></ng-content>\n </div>\n</nav>", styles: [":host ::ng-deep+*{padding-top:56px}nav{left:0;top:0;right:0;z-index:10}@media (min-width: 768px){.mx-md-unset{margin-left:0!important;margin-right:0!important}.w-md-auto{width:auto!important}}\n"] }]
|
|
565
887
|
}], ctorParameters: function () { return []; }, propDecorators: { nav: [{
|
|
566
888
|
type: ViewChild,
|
|
567
889
|
args: ['nav']
|
|
@@ -970,9 +1292,92 @@ i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "13.1.1", ngImpor
|
|
|
970
1292
|
}]
|
|
971
1293
|
}] });
|
|
972
1294
|
|
|
1295
|
+
class BsScrollspyDirective {
|
|
1296
|
+
constructor(element) {
|
|
1297
|
+
this.element = element;
|
|
1298
|
+
}
|
|
1299
|
+
}
|
|
1300
|
+
BsScrollspyDirective.ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "13.1.1", ngImport: i0, type: BsScrollspyDirective, deps: [{ token: i0.ElementRef }], target: i0.ɵɵFactoryTarget.Directive });
|
|
1301
|
+
BsScrollspyDirective.ɵdir = i0.ɵɵngDeclareDirective({ minVersion: "12.0.0", version: "13.1.1", type: BsScrollspyDirective, selector: "[bsScrollspy]", ngImport: i0 });
|
|
1302
|
+
i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "13.1.1", ngImport: i0, type: BsScrollspyDirective, decorators: [{
|
|
1303
|
+
type: Directive,
|
|
1304
|
+
args: [{
|
|
1305
|
+
selector: '[bsScrollspy]'
|
|
1306
|
+
}]
|
|
1307
|
+
}], ctorParameters: function () { return [{ type: i0.ElementRef }]; } });
|
|
1308
|
+
|
|
1309
|
+
class BsScrollspyComponent {
|
|
1310
|
+
constructor(document) {
|
|
1311
|
+
this.activeDirective = null;
|
|
1312
|
+
this.doc = document;
|
|
1313
|
+
}
|
|
1314
|
+
ngOnInit() {
|
|
1315
|
+
}
|
|
1316
|
+
ngAfterViewInit() {
|
|
1317
|
+
this.onWindowScroll();
|
|
1318
|
+
}
|
|
1319
|
+
onWindowScroll() {
|
|
1320
|
+
const dirs = this.directives.filter((d) => d.element.nativeElement.getBoundingClientRect().y <= 0);
|
|
1321
|
+
if (this.directives.length === 0) {
|
|
1322
|
+
this.activeDirective = null;
|
|
1323
|
+
}
|
|
1324
|
+
else if (dirs.length === 0) {
|
|
1325
|
+
this.activeDirective = this.directives.get(0) ?? null;
|
|
1326
|
+
}
|
|
1327
|
+
else {
|
|
1328
|
+
this.activeDirective = dirs[dirs.length - 1];
|
|
1329
|
+
}
|
|
1330
|
+
}
|
|
1331
|
+
scrollToHeader(directive) {
|
|
1332
|
+
const header = directive.element.nativeElement;
|
|
1333
|
+
header.scrollIntoView();
|
|
1334
|
+
}
|
|
1335
|
+
}
|
|
1336
|
+
BsScrollspyComponent.ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "13.1.1", ngImport: i0, type: BsScrollspyComponent, deps: [{ token: DOCUMENT }], target: i0.ɵɵFactoryTarget.Component });
|
|
1337
|
+
BsScrollspyComponent.ɵcmp = i0.ɵɵngDeclareComponent({ minVersion: "12.0.0", version: "13.1.1", type: BsScrollspyComponent, selector: "bs-scrollspy", host: { listeners: { "window:scroll": "onWindowScroll($event)" } }, queries: [{ propertyName: "directives", predicate: BsScrollspyDirective, descendants: true }], ngImport: i0, template: "<div class=\"spy\">\n <ul class=\"text-muted\">\n <li *ngFor=\"let dir of directives\">\n <span class=\"cursor-pointer\" [ngClass]=\"'nav' + dir.element.nativeElement.tagName\" [class.fw-bold]=\"activeDirective?.element === dir.element\" (click)=\"scrollToHeader(dir)\" [title]=\"dir.element.nativeElement.textContent\">\n {{ dir.element.nativeElement.textContent }}\n </span>\n </li>\n </ul>\n</div>\n<div class=\"content\">\n <ng-content></ng-content>\n</div>", styles: [":host{display:block}.spy>ul{list-style-type:none;padding-left:0}.spy>ul>li:hover{color:rgba(var(--bs-dark-rgb),var(--bs-text-opacity))!important}@media (min-width: 768px){:host{display:grid;grid-template-areas:\"content toc\";grid-template-columns:auto 200px;grid-template-rows:auto;grid-gap:inherit;gap:inherit;grid-area:main}.spy{position:sticky;top:5rem;right:0;z-index:2;height:25%;overflow-y:auto;grid-area:toc}.spy>ul{padding-left:2rem}.spy>ul>li{overflow:hidden;text-overflow:ellipsis;white-space:nowrap}}.navH2{margin-left:20px}.navH3{margin-left:40px}.navH4{margin-left:60px}\n"], directives: [{ type: i1.NgForOf, selector: "[ngFor][ngForOf]", inputs: ["ngForOf", "ngForTrackBy", "ngForTemplate"] }, { type: i1.NgClass, selector: "[ngClass]", inputs: ["class", "ngClass"] }] });
|
|
1338
|
+
i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "13.1.1", ngImport: i0, type: BsScrollspyComponent, decorators: [{
|
|
1339
|
+
type: Component,
|
|
1340
|
+
args: [{ selector: 'bs-scrollspy', template: "<div class=\"spy\">\n <ul class=\"text-muted\">\n <li *ngFor=\"let dir of directives\">\n <span class=\"cursor-pointer\" [ngClass]=\"'nav' + dir.element.nativeElement.tagName\" [class.fw-bold]=\"activeDirective?.element === dir.element\" (click)=\"scrollToHeader(dir)\" [title]=\"dir.element.nativeElement.textContent\">\n {{ dir.element.nativeElement.textContent }}\n </span>\n </li>\n </ul>\n</div>\n<div class=\"content\">\n <ng-content></ng-content>\n</div>", styles: [":host{display:block}.spy>ul{list-style-type:none;padding-left:0}.spy>ul>li:hover{color:rgba(var(--bs-dark-rgb),var(--bs-text-opacity))!important}@media (min-width: 768px){:host{display:grid;grid-template-areas:\"content toc\";grid-template-columns:auto 200px;grid-template-rows:auto;grid-gap:inherit;gap:inherit;grid-area:main}.spy{position:sticky;top:5rem;right:0;z-index:2;height:25%;overflow-y:auto;grid-area:toc}.spy>ul{padding-left:2rem}.spy>ul>li{overflow:hidden;text-overflow:ellipsis;white-space:nowrap}}.navH2{margin-left:20px}.navH3{margin-left:40px}.navH4{margin-left:60px}\n"] }]
|
|
1341
|
+
}], ctorParameters: function () { return [{ type: undefined, decorators: [{
|
|
1342
|
+
type: Inject,
|
|
1343
|
+
args: [DOCUMENT]
|
|
1344
|
+
}] }]; }, propDecorators: { directives: [{
|
|
1345
|
+
type: ContentChildren,
|
|
1346
|
+
args: [BsScrollspyDirective, { descendants: true }]
|
|
1347
|
+
}], onWindowScroll: [{
|
|
1348
|
+
type: HostListener,
|
|
1349
|
+
args: ['window:scroll', ['$event']]
|
|
1350
|
+
}] } });
|
|
1351
|
+
|
|
1352
|
+
class BsScrollspyModule {
|
|
1353
|
+
}
|
|
1354
|
+
BsScrollspyModule.ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "13.1.1", ngImport: i0, type: BsScrollspyModule, deps: [], target: i0.ɵɵFactoryTarget.NgModule });
|
|
1355
|
+
BsScrollspyModule.ɵmod = i0.ɵɵngDeclareNgModule({ minVersion: "12.0.0", version: "13.1.1", ngImport: i0, type: BsScrollspyModule, declarations: [BsScrollspyComponent,
|
|
1356
|
+
BsScrollspyDirective], imports: [CommonModule], exports: [BsScrollspyComponent,
|
|
1357
|
+
BsScrollspyDirective] });
|
|
1358
|
+
BsScrollspyModule.ɵinj = i0.ɵɵngDeclareInjector({ minVersion: "12.0.0", version: "13.1.1", ngImport: i0, type: BsScrollspyModule, imports: [[
|
|
1359
|
+
CommonModule
|
|
1360
|
+
]] });
|
|
1361
|
+
i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "13.1.1", ngImport: i0, type: BsScrollspyModule, decorators: [{
|
|
1362
|
+
type: NgModule,
|
|
1363
|
+
args: [{
|
|
1364
|
+
declarations: [
|
|
1365
|
+
BsScrollspyComponent,
|
|
1366
|
+
BsScrollspyDirective
|
|
1367
|
+
],
|
|
1368
|
+
imports: [
|
|
1369
|
+
CommonModule
|
|
1370
|
+
],
|
|
1371
|
+
exports: [
|
|
1372
|
+
BsScrollspyComponent,
|
|
1373
|
+
BsScrollspyDirective
|
|
1374
|
+
]
|
|
1375
|
+
}]
|
|
1376
|
+
}] });
|
|
1377
|
+
|
|
973
1378
|
/**
|
|
974
1379
|
* Generated bundle index. Do not edit.
|
|
975
1380
|
*/
|
|
976
1381
|
|
|
977
|
-
export { BsAccordionComponent, BsAccordionModule, BsAccordionTabComponent, BsAccordionTabHeaderComponent, BsAlertCloseComponent, BsAlertComponent, BsAlertModule, BsCalendarComponent, BsCalendarModule, BsCardComponent, BsCardHeaderComponent, BsCardModule, BsCarouselComponent, BsCarouselImageDirective, BsCarouselModule, BsListGroupComponent, BsListGroupItemComponent, BsListGroupModule, BsNavbarComponent, BsNavbarDropdownComponent, BsNavbarItemComponent, BsNavbarModule, BsNavbarNavComponent, BsTabControlComponent, BsTabControlModule, BsTabPageComponent, Color, DropdownToggleDirective, NavLinkDirective, NavbarContentDirective };
|
|
1382
|
+
export { BsAccordionComponent, BsAccordionModule, BsAccordionTabComponent, BsAccordionTabHeaderComponent, BsAlertCloseComponent, BsAlertComponent, BsAlertModule, BsCalendarComponent, BsCalendarModule, BsCardComponent, BsCardHeaderComponent, BsCardModule, BsCarouselComponent, BsCarouselImageDirective, BsCarouselModule, BsDatatableColumnDirective, BsDatatableComponent, BsDatatableModule, BsListGroupComponent, BsListGroupItemComponent, BsListGroupModule, BsNavbarComponent, BsNavbarDropdownComponent, BsNavbarItemComponent, BsNavbarModule, BsNavbarNavComponent, BsRowTemplateDirective, BsScrollspyComponent, BsScrollspyDirective, BsScrollspyModule, BsTabControlComponent, BsTabControlModule, BsTabPageComponent, Color, DatatableSettings, DropdownToggleDirective, NavLinkDirective, NavbarContentDirective };
|
|
978
1383
|
//# sourceMappingURL=mintplayer-ng-bootstrap.mjs.map
|