@mintplayer/ng-bootstrap 13.1.2 → 13.1.7
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/calendar/calendar.component.mjs +77 -34
- package/esm2020/lib/components/card/card/card.component.mjs +1 -2
- package/esm2020/lib/components/carousel/carousel/carousel.component.mjs +11 -7
- 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/datepicker/datepicker.component.mjs +22 -0
- package/esm2020/lib/components/datepicker/datepicker.module.mjs +34 -0
- package/esm2020/lib/components/datepicker/index.mjs +3 -0
- package/esm2020/lib/components/dropdown/dropdown/dropdown.directive.mjs +31 -0
- package/esm2020/lib/components/dropdown/dropdown-menu/dropdown-menu.directive.mjs +64 -0
- package/esm2020/lib/components/dropdown/dropdown-toggle/dropdown-toggle.directive.mjs +29 -0
- package/esm2020/lib/components/dropdown/dropdown.module.mjs +40 -0
- package/esm2020/lib/components/dropdown/index.mjs +5 -0
- package/esm2020/lib/components/index.mjs +6 -1
- package/esm2020/lib/components/multiselect/index.mjs +3 -0
- package/esm2020/lib/components/multiselect/multiselect.component.mjs +33 -0
- package/esm2020/lib/components/multiselect/multiselect.module.mjs +30 -0
- package/esm2020/lib/components/navbar/nav-link/nav-link.directive.mjs +1 -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/pipes/month-name/month-name.pipe.mjs +7 -2
- package/esm2020/lib/types/page-number.type.mjs +2 -0
- package/fesm2015/mintplayer-ng-bootstrap.mjs +743 -56
- package/fesm2015/mintplayer-ng-bootstrap.mjs.map +1 -1
- package/fesm2020/mintplayer-ng-bootstrap.mjs +739 -56
- package/fesm2020/mintplayer-ng-bootstrap.mjs.map +1 -1
- package/index.d.ts +1 -0
- package/lib/components/calendar/calendar.component.d.ts +21 -13
- package/lib/components/carousel/carousel/carousel.component.d.ts +4 -3
- 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/datepicker/datepicker.component.d.ts +10 -0
- package/lib/components/datepicker/datepicker.module.d.ts +10 -0
- package/lib/components/datepicker/index.d.ts +2 -0
- package/lib/components/dropdown/dropdown/dropdown.directive.d.ts +13 -0
- package/lib/components/dropdown/dropdown-menu/dropdown-menu.directive.d.ts +17 -0
- package/lib/components/dropdown/dropdown-toggle/dropdown-toggle.directive.d.ts +11 -0
- package/lib/components/dropdown/dropdown.module.d.ts +11 -0
- package/lib/components/dropdown/index.d.ts +4 -0
- package/lib/components/index.d.ts +5 -0
- package/lib/components/multiselect/index.d.ts +2 -0
- package/lib/components/multiselect/multiselect.component.d.ts +11 -0
- package/lib/components/multiselect/multiselect.module.d.ts +9 -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/pipes/month-name/month-name.pipe.d.ts +1 -1
- package/lib/types/page-number.type.d.ts +1 -0
- package/package.json +3 -1
|
@@ -1,14 +1,18 @@
|
|
|
1
1
|
import * as i0 from '@angular/core';
|
|
2
|
-
import { Component, Input, NgModule, Injectable, Pipe,
|
|
2
|
+
import { Component, Input, NgModule, Injectable, Pipe, EventEmitter, Output, Directive, ContentChildren, 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';
|
|
7
|
-
import { map, takeUntil, take } from 'rxjs/operators';
|
|
6
|
+
import { Subject, BehaviorSubject, map, takeUntil, filter, take, Observable, combineLatest } from 'rxjs';
|
|
7
|
+
import { map as map$1, takeUntil as takeUntil$1, take as take$1 } 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';
|
|
11
12
|
import { BrowserAnimationsModule } from '@angular/platform-browser/animations';
|
|
13
|
+
import * as i1$2 from '@angular/cdk/overlay';
|
|
14
|
+
import { OverlayModule } from '@angular/cdk/overlay';
|
|
15
|
+
import { TemplatePortal } from '@angular/cdk/portal';
|
|
12
16
|
|
|
13
17
|
var Color;
|
|
14
18
|
(function (Color) {
|
|
@@ -88,7 +92,6 @@ class BsCardComponent {
|
|
|
88
92
|
ngOnInit() {
|
|
89
93
|
}
|
|
90
94
|
ngAfterViewInit() {
|
|
91
|
-
// console.log('header', this.header);
|
|
92
95
|
}
|
|
93
96
|
}
|
|
94
97
|
BsCardComponent.ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "13.1.1", ngImport: i0, type: BsCardComponent, deps: [], target: i0.ɵɵFactoryTarget.Component });
|
|
@@ -229,7 +232,12 @@ i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "13.1.1", ngImpor
|
|
|
229
232
|
|
|
230
233
|
class MonthNamePipe {
|
|
231
234
|
transform(date, ...args) {
|
|
232
|
-
|
|
235
|
+
if (date) {
|
|
236
|
+
return date.toLocaleString("default", { month: 'long' });
|
|
237
|
+
}
|
|
238
|
+
else {
|
|
239
|
+
return '';
|
|
240
|
+
}
|
|
233
241
|
}
|
|
234
242
|
}
|
|
235
243
|
MonthNamePipe.ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "13.1.1", ngImport: i0, type: MonthNamePipe, deps: [], target: i0.ɵɵFactoryTarget.Pipe });
|
|
@@ -242,58 +250,100 @@ i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "13.1.1", ngImpor
|
|
|
242
250
|
}] });
|
|
243
251
|
|
|
244
252
|
class BsCalendarComponent {
|
|
245
|
-
constructor(calendarMonthService) {
|
|
253
|
+
constructor(calendarMonthService, ref) {
|
|
246
254
|
this.calendarMonthService = calendarMonthService;
|
|
247
|
-
this.
|
|
255
|
+
this.ref = ref;
|
|
256
|
+
this.destroyed$ = new Subject();
|
|
257
|
+
//#region CurrentMonth
|
|
258
|
+
this.currentMonth$ = new BehaviorSubject(new Date());
|
|
259
|
+
this.currentMonthChange = new EventEmitter();
|
|
260
|
+
//#endregion
|
|
248
261
|
//#region SelectedDate
|
|
249
|
-
this.selectedDate = new Date();
|
|
262
|
+
this.selectedDate$ = new BehaviorSubject(new Date());
|
|
263
|
+
this.selectedDateChange = new EventEmitter();
|
|
250
264
|
//#endregion
|
|
251
|
-
|
|
252
|
-
this.
|
|
265
|
+
this.daysOfWeek = ['Mo', 'Tu', 'We', 'Th', 'Fr', 'Sa', 'Su'];
|
|
266
|
+
this.weeks$ = this.currentMonth$
|
|
267
|
+
.pipe(map((month) => this.calendarMonthService.getWeeks(month)))
|
|
268
|
+
.pipe(takeUntil(this.destroyed$));
|
|
269
|
+
this.daysOfWeek$ = this.weeks$
|
|
270
|
+
.pipe(filter((weeks) => weeks.length > 1))
|
|
271
|
+
.pipe(map((weeks) => weeks[1].week))
|
|
272
|
+
.pipe(map((week) => {
|
|
273
|
+
const firstDay = week[0];
|
|
274
|
+
if (firstDay) {
|
|
275
|
+
return week.map((d) => {
|
|
276
|
+
const date = new Date(firstDay.date.getFullYear(), firstDay.date.getMonth(), d?.dayOfMonth);
|
|
277
|
+
return date.toLocaleString('default', { weekday: 'short' });
|
|
278
|
+
});
|
|
279
|
+
}
|
|
280
|
+
else {
|
|
281
|
+
return [];
|
|
282
|
+
}
|
|
283
|
+
}));
|
|
284
|
+
this.selectedDate$.pipe(takeUntil(this.destroyed$)).subscribe((date) => {
|
|
285
|
+
this.selectedDateChange.emit(date);
|
|
286
|
+
});
|
|
287
|
+
this.currentMonth$.pipe(takeUntil(this.destroyed$)).subscribe((month) => {
|
|
288
|
+
this.currentMonthChange.emit(month);
|
|
289
|
+
});
|
|
253
290
|
}
|
|
254
|
-
|
|
255
|
-
this.
|
|
291
|
+
get currentMonth() {
|
|
292
|
+
return this.currentMonth$.value;
|
|
256
293
|
}
|
|
257
|
-
|
|
258
|
-
|
|
294
|
+
set currentMonth(value) {
|
|
295
|
+
this.currentMonth$.next(value);
|
|
259
296
|
}
|
|
260
|
-
|
|
261
|
-
this.
|
|
262
|
-
this.weeks = this.calendarMonthService.getWeeks(this.month);
|
|
297
|
+
get selectedDate() {
|
|
298
|
+
return this.selectedDate$.value;
|
|
263
299
|
}
|
|
264
|
-
|
|
265
|
-
|
|
300
|
+
set selectedDate(value) {
|
|
301
|
+
this.selectedDate$.next(value);
|
|
266
302
|
}
|
|
267
|
-
|
|
268
|
-
this.
|
|
269
|
-
if (this._weeks.length > 1) {
|
|
270
|
-
this.daysOfWeek = this._weeks[1].week.map(d => {
|
|
271
|
-
let date = new Date(this.month.getFullYear(), this.month.getMonth(), d?.dayOfMonth);
|
|
272
|
-
return date.toLocaleString("default", { weekday: 'short' });
|
|
273
|
-
});
|
|
274
|
-
}
|
|
303
|
+
ngOnDestroy() {
|
|
304
|
+
this.destroyed$.next(true);
|
|
275
305
|
}
|
|
276
|
-
//#endregion
|
|
277
306
|
previousMonth() {
|
|
278
|
-
this.
|
|
307
|
+
this.currentMonth$.pipe(take(1)).subscribe((month) => {
|
|
308
|
+
this.currentMonth$.next(new Date(month.getFullYear(), month.getMonth() - 1, 1));
|
|
309
|
+
});
|
|
279
310
|
return false;
|
|
280
311
|
}
|
|
281
312
|
nextMonth() {
|
|
282
|
-
this.
|
|
313
|
+
this.currentMonth$.pipe(take(1)).subscribe((month) => {
|
|
314
|
+
this.currentMonth$.next(new Date(month.getFullYear(), month.getMonth() + 1, 1));
|
|
315
|
+
});
|
|
283
316
|
return false;
|
|
284
317
|
}
|
|
285
318
|
isSameDate(date1, date2) {
|
|
286
|
-
|
|
287
|
-
|
|
288
|
-
|
|
319
|
+
if (date1 === null && date2 === null)
|
|
320
|
+
return true;
|
|
321
|
+
if (date1 === null || date2 === null)
|
|
322
|
+
return false;
|
|
323
|
+
return (date1.getFullYear() === date2.getFullYear() &&
|
|
324
|
+
date1.getMonth() === date2.getMonth() &&
|
|
325
|
+
date1.getDate() === date2.getDate());
|
|
326
|
+
}
|
|
327
|
+
goto(day) {
|
|
328
|
+
if (day) {
|
|
329
|
+
this.selectedDate$.next(day.date);
|
|
330
|
+
}
|
|
289
331
|
}
|
|
290
332
|
}
|
|
291
|
-
BsCalendarComponent.ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "13.1.1", ngImport: i0, type: BsCalendarComponent, deps: [{ token: BsCalendarMonthService }], target: i0.ɵɵFactoryTarget.Component });
|
|
292
|
-
BsCalendarComponent.ɵcmp = i0.ɵɵngDeclareComponent({ minVersion: "12.0.0", version: "13.1.1", type: BsCalendarComponent, selector: "bs-calendar", ngImport: i0, template: "<table class=\"table w-auto\">\n <tr>\n <td>\n <button class=\"btn btn-default\" (click)=\"previousMonth()\">\n <i class=\"bi bi-chevron-left fw-bolder\"></i>\n </button>\n </td>\n <td colspan=\"6\" class=\"fw-bolder\">\n {{
|
|
333
|
+
BsCalendarComponent.ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "13.1.1", ngImport: i0, type: BsCalendarComponent, deps: [{ token: BsCalendarMonthService }, { token: i0.ChangeDetectorRef }], target: i0.ɵɵFactoryTarget.Component });
|
|
334
|
+
BsCalendarComponent.ɵcmp = i0.ɵɵngDeclareComponent({ minVersion: "12.0.0", version: "13.1.1", type: BsCalendarComponent, selector: "bs-calendar", inputs: { currentMonth: "currentMonth", selectedDate: "selectedDate" }, outputs: { currentMonthChange: "currentMonthChange", selectedDateChange: "selectedDateChange" }, ngImport: i0, template: "<table class=\"table w-auto mb-0\">\n <tr>\n <td>\n <button class=\"btn btn-default\" (click)=\"previousMonth()\">\n <i class=\"bi bi-chevron-left fw-bolder\"></i>\n </button>\n </td>\n <td colspan=\"6\" class=\"fw-bolder\">\n {{ currentMonth$ | async | monthName | ucFirst }}\n {{ (currentMonth$ | async)?.getFullYear() }}\n </td>\n <td>\n <button class=\"btn btn-default border-bottom-0\" (click)=\"nextMonth()\">\n <i class=\"bi bi-chevron-right fw-bolder\"></i>\n </button>\n </td>\n </tr>\n <tr>\n <th></th>\n <th *ngFor=\"let dayOfWeek of daysOfWeek\">\n {{ dayOfWeek }}\n </th>\n </tr>\n <tr *ngFor=\"let week of (weeks$ | async)\">\n <th>\n {{ week.number }}\n </th>\n <td [class.selected]=\"day === null ? false : isSameDate(selectedDate$ | async, day.date)\" *ngFor=\"let day of week.week\" (click)=\"goto(day)\">\n <span *ngIf=\"day !== null\">{{ day.dayOfMonth }}</span>\n </td>\n </tr>\n</table>", styles: ["table{border-collapse:collapse;border:1px solid rgba(0,0,0,.125);background:#fff}table td,table th{width:40px;height:40px;text-align:center}table td span,table th span{cursor:pointer;white-space:nowrap}table td.selected{background-color:#0d6efd;color:#fff}table th{background-color:#f8f9fa}table tr{border-top:none}table tr:first-child>td{border-bottom:1px solid rgba(0,0,0,.125)}table tr:nth-of-type(2)>th:not(:nth-of-type(1)){border-bottom:1px solid rgba(0,0,0,.125)}table tr:not(:nth-of-type(2))>th:nth-of-type(1){border-right:1px solid rgba(0,0,0,.125)}\n"], directives: [{ type: i1.NgForOf, selector: "[ngFor][ngForOf]", inputs: ["ngForOf", "ngForTrackBy", "ngForTemplate"] }, { type: i1.NgIf, selector: "[ngIf]", inputs: ["ngIf", "ngIfThen", "ngIfElse"] }], pipes: { "ucFirst": UcFirstPipe, "monthName": MonthNamePipe, "async": i1.AsyncPipe } });
|
|
293
335
|
i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "13.1.1", ngImport: i0, type: BsCalendarComponent, decorators: [{
|
|
294
336
|
type: Component,
|
|
295
|
-
args: [{ selector: 'bs-calendar', template: "<table class=\"table w-auto\">\n <tr>\n <td>\n <button class=\"btn btn-default\" (click)=\"previousMonth()\">\n <i class=\"bi bi-chevron-left fw-bolder\"></i>\n </button>\n </td>\n <td colspan=\"6\" class=\"fw-bolder\">\n {{
|
|
296
|
-
}], ctorParameters: function () { return [{ type: BsCalendarMonthService }]; }
|
|
337
|
+
args: [{ selector: 'bs-calendar', template: "<table class=\"table w-auto mb-0\">\n <tr>\n <td>\n <button class=\"btn btn-default\" (click)=\"previousMonth()\">\n <i class=\"bi bi-chevron-left fw-bolder\"></i>\n </button>\n </td>\n <td colspan=\"6\" class=\"fw-bolder\">\n {{ currentMonth$ | async | monthName | ucFirst }}\n {{ (currentMonth$ | async)?.getFullYear() }}\n </td>\n <td>\n <button class=\"btn btn-default border-bottom-0\" (click)=\"nextMonth()\">\n <i class=\"bi bi-chevron-right fw-bolder\"></i>\n </button>\n </td>\n </tr>\n <tr>\n <th></th>\n <th *ngFor=\"let dayOfWeek of daysOfWeek\">\n {{ dayOfWeek }}\n </th>\n </tr>\n <tr *ngFor=\"let week of (weeks$ | async)\">\n <th>\n {{ week.number }}\n </th>\n <td [class.selected]=\"day === null ? false : isSameDate(selectedDate$ | async, day.date)\" *ngFor=\"let day of week.week\" (click)=\"goto(day)\">\n <span *ngIf=\"day !== null\">{{ day.dayOfMonth }}</span>\n </td>\n </tr>\n</table>", styles: ["table{border-collapse:collapse;border:1px solid rgba(0,0,0,.125);background:#fff}table td,table th{width:40px;height:40px;text-align:center}table td span,table th span{cursor:pointer;white-space:nowrap}table td.selected{background-color:#0d6efd;color:#fff}table th{background-color:#f8f9fa}table tr{border-top:none}table tr:first-child>td{border-bottom:1px solid rgba(0,0,0,.125)}table tr:nth-of-type(2)>th:not(:nth-of-type(1)){border-bottom:1px solid rgba(0,0,0,.125)}table tr:not(:nth-of-type(2))>th:nth-of-type(1){border-right:1px solid rgba(0,0,0,.125)}\n"] }]
|
|
338
|
+
}], ctorParameters: function () { return [{ type: BsCalendarMonthService }, { type: i0.ChangeDetectorRef }]; }, propDecorators: { currentMonthChange: [{
|
|
339
|
+
type: Output
|
|
340
|
+
}], currentMonth: [{
|
|
341
|
+
type: Input
|
|
342
|
+
}], selectedDateChange: [{
|
|
343
|
+
type: Output
|
|
344
|
+
}], selectedDate: [{
|
|
345
|
+
type: Input
|
|
346
|
+
}] } });
|
|
297
347
|
|
|
298
348
|
class BsMonthNamePipeModule {
|
|
299
349
|
}
|
|
@@ -407,16 +457,19 @@ i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "13.1.1", ngImpor
|
|
|
407
457
|
}] });
|
|
408
458
|
|
|
409
459
|
class BsCarouselImageDirective {
|
|
410
|
-
constructor() {
|
|
460
|
+
constructor(templateRef) {
|
|
461
|
+
this.templateRef = templateRef;
|
|
462
|
+
this.itemTemplate = this.templateRef;
|
|
463
|
+
}
|
|
411
464
|
}
|
|
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: "
|
|
465
|
+
BsCarouselImageDirective.ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "13.1.1", ngImport: i0, type: BsCarouselImageDirective, deps: [{ token: i0.TemplateRef }], target: i0.ɵɵFactoryTarget.Directive });
|
|
466
|
+
BsCarouselImageDirective.ɵdir = i0.ɵɵngDeclareDirective({ minVersion: "12.0.0", version: "13.1.1", type: BsCarouselImageDirective, selector: "*[bsCarouselImage]", ngImport: i0 });
|
|
414
467
|
i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "13.1.1", ngImport: i0, type: BsCarouselImageDirective, decorators: [{
|
|
415
468
|
type: Directive,
|
|
416
469
|
args: [{
|
|
417
|
-
selector: '
|
|
470
|
+
selector: '*[bsCarouselImage]'
|
|
418
471
|
}]
|
|
419
|
-
}], ctorParameters: function () { return []; } });
|
|
472
|
+
}], ctorParameters: function () { return [{ type: i0.TemplateRef }]; } });
|
|
420
473
|
|
|
421
474
|
class BsCarouselComponent {
|
|
422
475
|
constructor() {
|
|
@@ -426,14 +479,14 @@ class BsCarouselComponent {
|
|
|
426
479
|
this.destroyed$ = new Subject();
|
|
427
480
|
this.currentImageCounter$ = new BehaviorSubject(-1);
|
|
428
481
|
this.currentImageIndex$ = this.currentImageCounter$
|
|
429
|
-
.pipe(map((counter) => {
|
|
482
|
+
.pipe(map$1((counter) => {
|
|
430
483
|
const l = this.images.length;
|
|
431
484
|
return ((counter % l) + l) % l;
|
|
432
485
|
}))
|
|
433
|
-
.pipe(takeUntil(this.destroyed$));
|
|
486
|
+
.pipe(takeUntil$1(this.destroyed$));
|
|
434
487
|
this.currentImage$ = this.currentImageIndex$
|
|
435
|
-
.pipe(map((index) => this.images.get(index) ?? null))
|
|
436
|
-
.pipe(takeUntil(this.destroyed$));
|
|
488
|
+
.pipe(map$1((index) => this.images.get(index)?.itemTemplate ?? null))
|
|
489
|
+
.pipe(takeUntil$1(this.destroyed$));
|
|
437
490
|
}
|
|
438
491
|
ngOnInit() { }
|
|
439
492
|
ngOnDestroy() {
|
|
@@ -449,32 +502,36 @@ class BsCarouselComponent {
|
|
|
449
502
|
}
|
|
450
503
|
previousImage() {
|
|
451
504
|
this.currentImageCounter$
|
|
452
|
-
.pipe(take(1))
|
|
505
|
+
.pipe(take$1(1))
|
|
453
506
|
.subscribe((currentImageCounter) => {
|
|
454
507
|
this.currentImageCounter$.next(currentImageCounter - 1);
|
|
455
508
|
});
|
|
456
509
|
}
|
|
457
510
|
nextImage() {
|
|
458
511
|
this.currentImageCounter$
|
|
459
|
-
.pipe(take(1))
|
|
512
|
+
.pipe(take$1(1))
|
|
460
513
|
.subscribe((currentImageCounter) => {
|
|
461
514
|
this.currentImageCounter$.next(currentImageCounter + 1);
|
|
462
515
|
});
|
|
463
516
|
}
|
|
464
517
|
setCurrentImage(index) {
|
|
465
|
-
this.currentImageCounter$.
|
|
518
|
+
const currentValue = this.currentImageCounter$.value;
|
|
519
|
+
const l = this.images.length;
|
|
520
|
+
const counterMod = ((currentValue % l) + l) % l;
|
|
521
|
+
const newValue = currentValue - counterMod + index;
|
|
522
|
+
this.currentImageCounter$.next(newValue);
|
|
466
523
|
}
|
|
467
524
|
}
|
|
468
525
|
BsCarouselComponent.ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "13.1.1", ngImport: i0, type: BsCarouselComponent, deps: [], target: i0.ɵɵFactoryTarget.Component });
|
|
469
|
-
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
|
|
526
|
+
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] });
|
|
470
527
|
i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "13.1.1", ngImport: i0, type: BsCarouselComponent, decorators: [{
|
|
471
528
|
type: Component,
|
|
472
|
-
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)\"
|
|
529
|
+
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"] }]
|
|
473
530
|
}], ctorParameters: function () { return []; }, propDecorators: { animation: [{
|
|
474
531
|
type: Input
|
|
475
532
|
}], images: [{
|
|
476
533
|
type: ContentChildren,
|
|
477
|
-
args: [BsCarouselImageDirective
|
|
534
|
+
args: [BsCarouselImageDirective]
|
|
478
535
|
}] } });
|
|
479
536
|
|
|
480
537
|
class BsCarouselModule {
|
|
@@ -503,6 +560,316 @@ i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "13.1.1", ngImpor
|
|
|
503
560
|
}]
|
|
504
561
|
}] });
|
|
505
562
|
|
|
563
|
+
class BsDatatableColumnDirective {
|
|
564
|
+
constructor(templateRef) {
|
|
565
|
+
this.bsDatatableColumn = { name: '', sortable: true };
|
|
566
|
+
this.templateRef = templateRef;
|
|
567
|
+
}
|
|
568
|
+
}
|
|
569
|
+
BsDatatableColumnDirective.ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "13.1.1", ngImport: i0, type: BsDatatableColumnDirective, deps: [{ token: i0.TemplateRef }], target: i0.ɵɵFactoryTarget.Directive });
|
|
570
|
+
BsDatatableColumnDirective.ɵdir = i0.ɵɵngDeclareDirective({ minVersion: "12.0.0", version: "13.1.1", type: BsDatatableColumnDirective, selector: "[bsDatatableColumn]", inputs: { bsDatatableColumn: "bsDatatableColumn" }, ngImport: i0 });
|
|
571
|
+
i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "13.1.1", ngImport: i0, type: BsDatatableColumnDirective, decorators: [{
|
|
572
|
+
type: Directive,
|
|
573
|
+
args: [{
|
|
574
|
+
selector: '[bsDatatableColumn]'
|
|
575
|
+
}]
|
|
576
|
+
}], ctorParameters: function () { return [{ type: i0.TemplateRef }]; }, propDecorators: { bsDatatableColumn: [{
|
|
577
|
+
type: Input
|
|
578
|
+
}] } });
|
|
579
|
+
|
|
580
|
+
class DatatableSettings {
|
|
581
|
+
constructor(data) {
|
|
582
|
+
this.sortProperty = '';
|
|
583
|
+
this.sortDirection = 'ascending';
|
|
584
|
+
Object.assign(this, data);
|
|
585
|
+
if (data && data.perPage) {
|
|
586
|
+
this.perPage = data.perPage;
|
|
587
|
+
}
|
|
588
|
+
else {
|
|
589
|
+
// Set default value
|
|
590
|
+
this.perPage = {
|
|
591
|
+
values: [10, 20, 50],
|
|
592
|
+
selected: 20
|
|
593
|
+
};
|
|
594
|
+
}
|
|
595
|
+
if (data && data.page) {
|
|
596
|
+
this.page = data.page;
|
|
597
|
+
}
|
|
598
|
+
else {
|
|
599
|
+
// Set default value
|
|
600
|
+
this.page = {
|
|
601
|
+
values: [1],
|
|
602
|
+
selected: 1
|
|
603
|
+
};
|
|
604
|
+
}
|
|
605
|
+
}
|
|
606
|
+
toPagination() {
|
|
607
|
+
const res = {
|
|
608
|
+
sortProperty: this.sortProperty,
|
|
609
|
+
sortDirection: this.sortDirection,
|
|
610
|
+
perPage: this.perPage.selected,
|
|
611
|
+
page: this.page.selected
|
|
612
|
+
};
|
|
613
|
+
return res;
|
|
614
|
+
}
|
|
615
|
+
}
|
|
616
|
+
|
|
617
|
+
class BsPaginationComponent {
|
|
618
|
+
constructor() {
|
|
619
|
+
/** All page numbers. */
|
|
620
|
+
this.pageNumbers$ = new BehaviorSubject([]);
|
|
621
|
+
/** Selected number. */
|
|
622
|
+
this.selectedPageNumber$ = new BehaviorSubject(1);
|
|
623
|
+
/** Number of boxes. */
|
|
624
|
+
this.numberOfBoxes$ = new BehaviorSubject(0);
|
|
625
|
+
/** Display previous/next arrows. */
|
|
626
|
+
this.showArrows$ = new BehaviorSubject(true);
|
|
627
|
+
/** Indicates if first value is selected. */
|
|
628
|
+
this.isFirstPage$ = new Observable();
|
|
629
|
+
/** Indicates if last value is selected. */
|
|
630
|
+
this.isLastPage$ = new Observable();
|
|
631
|
+
/** The number of boxes (excluding arrows) that's being shown on the pagination component. */
|
|
632
|
+
this.visibleNumberOfNumberBoxes$ = new Observable();
|
|
633
|
+
this._selectedPageNumber = 0;
|
|
634
|
+
this.selectedPageNumberChange = new EventEmitter();
|
|
635
|
+
this._numberOfBoxes = 0;
|
|
636
|
+
this._pageNumbers = [];
|
|
637
|
+
this._showArrows = true;
|
|
638
|
+
this.destroyed$ = new Subject();
|
|
639
|
+
this.visibleNumberOfNumberBoxes$ =
|
|
640
|
+
combineLatest([this.numberOfBoxes$, this.pageNumbers$, this.showArrows$])
|
|
641
|
+
.pipe(takeUntil(this.destroyed$))
|
|
642
|
+
.pipe(map(([numberOfBoxes, pageNumbers, showArrows]) => {
|
|
643
|
+
if (numberOfBoxes <= 0) {
|
|
644
|
+
return pageNumbers.length;
|
|
645
|
+
}
|
|
646
|
+
else if (!showArrows) {
|
|
647
|
+
return Math.min(numberOfBoxes, pageNumbers.length);
|
|
648
|
+
}
|
|
649
|
+
else if (numberOfBoxes <= 2) {
|
|
650
|
+
return Math.min(1, pageNumbers.length);
|
|
651
|
+
}
|
|
652
|
+
else {
|
|
653
|
+
return Math.min(numberOfBoxes - 2, pageNumbers.length);
|
|
654
|
+
}
|
|
655
|
+
}));
|
|
656
|
+
this.shownPageNumbers$ =
|
|
657
|
+
combineLatest([this.pageNumbers$, this.selectedPageNumber$, this.visibleNumberOfNumberBoxes$])
|
|
658
|
+
.pipe(takeUntil(this.destroyed$))
|
|
659
|
+
.pipe(map(([pageNumbers, selectedPageNumber, visibleNumberOfNumberBoxes]) => {
|
|
660
|
+
let startIndex = 0;
|
|
661
|
+
const half = Math.round((visibleNumberOfNumberBoxes - 1) / 2);
|
|
662
|
+
if (pageNumbers.indexOf(selectedPageNumber) < half) {
|
|
663
|
+
startIndex = 0;
|
|
664
|
+
}
|
|
665
|
+
else if (pageNumbers.indexOf(selectedPageNumber) >= (pageNumbers.length - half)) {
|
|
666
|
+
startIndex = pageNumbers.length - visibleNumberOfNumberBoxes;
|
|
667
|
+
}
|
|
668
|
+
else {
|
|
669
|
+
startIndex = pageNumbers.indexOf(selectedPageNumber) - half;
|
|
670
|
+
}
|
|
671
|
+
return [...Array(visibleNumberOfNumberBoxes).keys()]
|
|
672
|
+
.map(p => p + startIndex)
|
|
673
|
+
.map(p => ({
|
|
674
|
+
page: pageNumbers[p],
|
|
675
|
+
selected: pageNumbers[p] === selectedPageNumber
|
|
676
|
+
}));
|
|
677
|
+
}));
|
|
678
|
+
this.isFirstPage$ =
|
|
679
|
+
combineLatest([this.pageNumbers$, this.selectedPageNumber$])
|
|
680
|
+
.pipe(takeUntil(this.destroyed$))
|
|
681
|
+
.pipe(map(([pageNumbers, selectedPageNumber]) => {
|
|
682
|
+
return pageNumbers.indexOf(selectedPageNumber) === 0;
|
|
683
|
+
}));
|
|
684
|
+
this.isLastPage$ =
|
|
685
|
+
combineLatest([this.pageNumbers$, this.selectedPageNumber$])
|
|
686
|
+
.pipe(takeUntil(this.destroyed$))
|
|
687
|
+
.pipe(map(([pageNumbers, selectedPageNumber]) => {
|
|
688
|
+
return pageNumbers.indexOf(selectedPageNumber) === (pageNumbers.length - 1);
|
|
689
|
+
}));
|
|
690
|
+
this.selectedPageNumber$
|
|
691
|
+
.pipe(takeUntil(this.destroyed$))
|
|
692
|
+
.subscribe((selectedPageNumber) => {
|
|
693
|
+
this.selectedPageNumberChange.emit(selectedPageNumber);
|
|
694
|
+
});
|
|
695
|
+
}
|
|
696
|
+
ngOnInit() {
|
|
697
|
+
}
|
|
698
|
+
ngOnDestroy() {
|
|
699
|
+
this.destroyed$.next(true);
|
|
700
|
+
}
|
|
701
|
+
onSelectPage(event, page) {
|
|
702
|
+
this.selectedPageNumber$.next(page);
|
|
703
|
+
return false;
|
|
704
|
+
}
|
|
705
|
+
onPrevious() {
|
|
706
|
+
this.selectedPageNumber$.next(this.selectedPageNumber$.value - 1);
|
|
707
|
+
return false;
|
|
708
|
+
}
|
|
709
|
+
onNext() {
|
|
710
|
+
this.selectedPageNumber$.next(this.selectedPageNumber$.value + 1);
|
|
711
|
+
return false;
|
|
712
|
+
}
|
|
713
|
+
set selectedPageNumber(value) {
|
|
714
|
+
this._selectedPageNumber = value;
|
|
715
|
+
this.selectedPageNumber$.next(value);
|
|
716
|
+
}
|
|
717
|
+
get selectedPageNumber() {
|
|
718
|
+
return this._selectedPageNumber;
|
|
719
|
+
}
|
|
720
|
+
set numberOfBoxes(value) {
|
|
721
|
+
this._numberOfBoxes = value;
|
|
722
|
+
this.numberOfBoxes$.next(value);
|
|
723
|
+
}
|
|
724
|
+
get numberOfBoxes() {
|
|
725
|
+
return this._numberOfBoxes;
|
|
726
|
+
}
|
|
727
|
+
set pageNumbers(value) {
|
|
728
|
+
this._pageNumbers = value;
|
|
729
|
+
this.pageNumbers$.next(value);
|
|
730
|
+
}
|
|
731
|
+
get pageNumbers() {
|
|
732
|
+
return this._pageNumbers;
|
|
733
|
+
}
|
|
734
|
+
set showArrows(value) {
|
|
735
|
+
this._showArrows = value;
|
|
736
|
+
this.showArrows$.next(value);
|
|
737
|
+
}
|
|
738
|
+
get showArrows() {
|
|
739
|
+
return this._showArrows;
|
|
740
|
+
}
|
|
741
|
+
}
|
|
742
|
+
BsPaginationComponent.ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "13.1.1", ngImport: i0, type: BsPaginationComponent, deps: [], target: i0.ɵɵFactoryTarget.Component });
|
|
743
|
+
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 } });
|
|
744
|
+
i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "13.1.1", ngImport: i0, type: BsPaginationComponent, decorators: [{
|
|
745
|
+
type: Component,
|
|
746
|
+
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"] }]
|
|
747
|
+
}], ctorParameters: function () { return []; }, propDecorators: { selectedPageNumberChange: [{
|
|
748
|
+
type: Output
|
|
749
|
+
}], selectedPageNumber: [{
|
|
750
|
+
type: Input
|
|
751
|
+
}], numberOfBoxes: [{
|
|
752
|
+
type: Input
|
|
753
|
+
}], pageNumbers: [{
|
|
754
|
+
type: Input
|
|
755
|
+
}], showArrows: [{
|
|
756
|
+
type: Input
|
|
757
|
+
}] } });
|
|
758
|
+
|
|
759
|
+
class BsDatatableComponent {
|
|
760
|
+
constructor() {
|
|
761
|
+
this.columns = [];
|
|
762
|
+
this.onReloadData = new EventEmitter();
|
|
763
|
+
this.settings = new DatatableSettings();
|
|
764
|
+
this.settings.sortProperty = '';
|
|
765
|
+
this.settings.sortDirection = 'ascending';
|
|
766
|
+
this.settings.perPage = { values: [10, 20, 50], selected: 20 };
|
|
767
|
+
this.settings.page = { values: [1], selected: 1 };
|
|
768
|
+
}
|
|
769
|
+
columnHeaderClicked(column) {
|
|
770
|
+
if (column.bsDatatableColumn.sortable) {
|
|
771
|
+
if (this.settings.sortProperty !== column.bsDatatableColumn.name) {
|
|
772
|
+
this.settings.sortProperty = column.bsDatatableColumn.name;
|
|
773
|
+
this.settings.sortDirection = 'ascending';
|
|
774
|
+
}
|
|
775
|
+
else if (this.settings.sortDirection === 'descending') {
|
|
776
|
+
this.settings.sortDirection = 'ascending';
|
|
777
|
+
}
|
|
778
|
+
else {
|
|
779
|
+
this.settings.sortDirection = 'descending';
|
|
780
|
+
}
|
|
781
|
+
this.onReloadData.emit();
|
|
782
|
+
}
|
|
783
|
+
}
|
|
784
|
+
ngOnInit() {
|
|
785
|
+
}
|
|
786
|
+
}
|
|
787
|
+
BsDatatableComponent.ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "13.1.1", ngImport: i0, type: BsDatatableComponent, deps: [], target: i0.ɵɵFactoryTarget.Component });
|
|
788
|
+
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"] }] });
|
|
789
|
+
i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "13.1.1", ngImport: i0, type: BsDatatableComponent, decorators: [{
|
|
790
|
+
type: Component,
|
|
791
|
+
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"] }]
|
|
792
|
+
}], ctorParameters: function () { return []; }, propDecorators: { columns: [{
|
|
793
|
+
type: ContentChildren,
|
|
794
|
+
args: [BsDatatableColumnDirective]
|
|
795
|
+
}], settings: [{
|
|
796
|
+
type: Input
|
|
797
|
+
}], data: [{
|
|
798
|
+
type: Input
|
|
799
|
+
}], onReloadData: [{
|
|
800
|
+
type: Output
|
|
801
|
+
}] } });
|
|
802
|
+
|
|
803
|
+
class BsRowTemplateDirective {
|
|
804
|
+
constructor(datatableComponent, templateRef) {
|
|
805
|
+
this.datatableComponent = datatableComponent;
|
|
806
|
+
this.datatableComponent.rowTemplate = templateRef;
|
|
807
|
+
}
|
|
808
|
+
}
|
|
809
|
+
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 });
|
|
810
|
+
BsRowTemplateDirective.ɵdir = i0.ɵɵngDeclareDirective({ minVersion: "12.0.0", version: "13.1.1", type: BsRowTemplateDirective, selector: "[rowTemplate]", ngImport: i0 });
|
|
811
|
+
i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "13.1.1", ngImport: i0, type: BsRowTemplateDirective, decorators: [{
|
|
812
|
+
type: Directive,
|
|
813
|
+
args: [{
|
|
814
|
+
selector: '[rowTemplate]'
|
|
815
|
+
}]
|
|
816
|
+
}], ctorParameters: function () { return [{ type: BsDatatableComponent }, { type: i0.TemplateRef }]; } });
|
|
817
|
+
|
|
818
|
+
class BsPaginationModule {
|
|
819
|
+
}
|
|
820
|
+
BsPaginationModule.ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "13.1.1", ngImport: i0, type: BsPaginationModule, deps: [], target: i0.ɵɵFactoryTarget.NgModule });
|
|
821
|
+
BsPaginationModule.ɵmod = i0.ɵɵngDeclareNgModule({ minVersion: "12.0.0", version: "13.1.1", ngImport: i0, type: BsPaginationModule, declarations: [BsPaginationComponent], imports: [CommonModule], exports: [BsPaginationComponent] });
|
|
822
|
+
BsPaginationModule.ɵinj = i0.ɵɵngDeclareInjector({ minVersion: "12.0.0", version: "13.1.1", ngImport: i0, type: BsPaginationModule, imports: [[
|
|
823
|
+
CommonModule
|
|
824
|
+
]] });
|
|
825
|
+
i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "13.1.1", ngImport: i0, type: BsPaginationModule, decorators: [{
|
|
826
|
+
type: NgModule,
|
|
827
|
+
args: [{
|
|
828
|
+
declarations: [
|
|
829
|
+
BsPaginationComponent
|
|
830
|
+
],
|
|
831
|
+
imports: [
|
|
832
|
+
CommonModule
|
|
833
|
+
],
|
|
834
|
+
exports: [
|
|
835
|
+
BsPaginationComponent
|
|
836
|
+
]
|
|
837
|
+
}]
|
|
838
|
+
}] });
|
|
839
|
+
|
|
840
|
+
class BsDatatableModule {
|
|
841
|
+
}
|
|
842
|
+
BsDatatableModule.ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "13.1.1", ngImport: i0, type: BsDatatableModule, deps: [], target: i0.ɵɵFactoryTarget.NgModule });
|
|
843
|
+
BsDatatableModule.ɵmod = i0.ɵɵngDeclareNgModule({ minVersion: "12.0.0", version: "13.1.1", ngImport: i0, type: BsDatatableModule, declarations: [BsDatatableComponent,
|
|
844
|
+
BsRowTemplateDirective,
|
|
845
|
+
BsDatatableColumnDirective], imports: [CommonModule,
|
|
846
|
+
BsPaginationModule], exports: [BsDatatableComponent,
|
|
847
|
+
BsRowTemplateDirective,
|
|
848
|
+
BsDatatableColumnDirective] });
|
|
849
|
+
BsDatatableModule.ɵinj = i0.ɵɵngDeclareInjector({ minVersion: "12.0.0", version: "13.1.1", ngImport: i0, type: BsDatatableModule, imports: [[
|
|
850
|
+
CommonModule,
|
|
851
|
+
BsPaginationModule
|
|
852
|
+
]] });
|
|
853
|
+
i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "13.1.1", ngImport: i0, type: BsDatatableModule, decorators: [{
|
|
854
|
+
type: NgModule,
|
|
855
|
+
args: [{
|
|
856
|
+
declarations: [
|
|
857
|
+
BsDatatableComponent,
|
|
858
|
+
BsRowTemplateDirective,
|
|
859
|
+
BsDatatableColumnDirective
|
|
860
|
+
],
|
|
861
|
+
imports: [
|
|
862
|
+
CommonModule,
|
|
863
|
+
BsPaginationModule
|
|
864
|
+
],
|
|
865
|
+
exports: [
|
|
866
|
+
BsDatatableComponent,
|
|
867
|
+
BsRowTemplateDirective,
|
|
868
|
+
BsDatatableColumnDirective
|
|
869
|
+
]
|
|
870
|
+
}]
|
|
871
|
+
}] });
|
|
872
|
+
|
|
506
873
|
class BsListGroupItemComponent {
|
|
507
874
|
constructor() {
|
|
508
875
|
}
|
|
@@ -563,10 +930,10 @@ class BsNavbarComponent {
|
|
|
563
930
|
}
|
|
564
931
|
}
|
|
565
932
|
BsNavbarComponent.ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "13.1.1", ngImport: i0, type: BsNavbarComponent, deps: [], target: i0.ɵɵFactoryTarget.Component });
|
|
566
|
-
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:
|
|
933
|
+
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"] });
|
|
567
934
|
i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "13.1.1", ngImport: i0, type: BsNavbarComponent, decorators: [{
|
|
568
935
|
type: Component,
|
|
569
|
-
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:
|
|
936
|
+
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"] }]
|
|
570
937
|
}], ctorParameters: function () { return []; }, propDecorators: { nav: [{
|
|
571
938
|
type: ViewChild,
|
|
572
939
|
args: ['nav']
|
|
@@ -975,9 +1342,325 @@ i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "13.1.1", ngImpor
|
|
|
975
1342
|
}]
|
|
976
1343
|
}] });
|
|
977
1344
|
|
|
1345
|
+
class BsScrollspyDirective {
|
|
1346
|
+
constructor(element) {
|
|
1347
|
+
this.element = element;
|
|
1348
|
+
}
|
|
1349
|
+
}
|
|
1350
|
+
BsScrollspyDirective.ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "13.1.1", ngImport: i0, type: BsScrollspyDirective, deps: [{ token: i0.ElementRef }], target: i0.ɵɵFactoryTarget.Directive });
|
|
1351
|
+
BsScrollspyDirective.ɵdir = i0.ɵɵngDeclareDirective({ minVersion: "12.0.0", version: "13.1.1", type: BsScrollspyDirective, selector: "[bsScrollspy]", ngImport: i0 });
|
|
1352
|
+
i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "13.1.1", ngImport: i0, type: BsScrollspyDirective, decorators: [{
|
|
1353
|
+
type: Directive,
|
|
1354
|
+
args: [{
|
|
1355
|
+
selector: '[bsScrollspy]'
|
|
1356
|
+
}]
|
|
1357
|
+
}], ctorParameters: function () { return [{ type: i0.ElementRef }]; } });
|
|
1358
|
+
|
|
1359
|
+
class BsScrollspyComponent {
|
|
1360
|
+
constructor(document) {
|
|
1361
|
+
this.activeDirective = null;
|
|
1362
|
+
this.doc = document;
|
|
1363
|
+
}
|
|
1364
|
+
ngOnInit() {
|
|
1365
|
+
}
|
|
1366
|
+
ngAfterViewInit() {
|
|
1367
|
+
this.onWindowScroll();
|
|
1368
|
+
}
|
|
1369
|
+
onWindowScroll() {
|
|
1370
|
+
const dirs = this.directives.filter((d) => d.element.nativeElement.getBoundingClientRect().y <= 0);
|
|
1371
|
+
if (this.directives.length === 0) {
|
|
1372
|
+
this.activeDirective = null;
|
|
1373
|
+
}
|
|
1374
|
+
else if (dirs.length === 0) {
|
|
1375
|
+
this.activeDirective = this.directives.get(0) ?? null;
|
|
1376
|
+
}
|
|
1377
|
+
else {
|
|
1378
|
+
this.activeDirective = dirs[dirs.length - 1];
|
|
1379
|
+
}
|
|
1380
|
+
}
|
|
1381
|
+
scrollToHeader(directive) {
|
|
1382
|
+
const header = directive.element.nativeElement;
|
|
1383
|
+
header.scrollIntoView();
|
|
1384
|
+
}
|
|
1385
|
+
}
|
|
1386
|
+
BsScrollspyComponent.ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "13.1.1", ngImport: i0, type: BsScrollspyComponent, deps: [{ token: DOCUMENT }], target: i0.ɵɵFactoryTarget.Component });
|
|
1387
|
+
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}.spy>ul>li{overflow:hidden;text-overflow:ellipsis;white-space:nowrap}@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}}.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"] }] });
|
|
1388
|
+
i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "13.1.1", ngImport: i0, type: BsScrollspyComponent, decorators: [{
|
|
1389
|
+
type: Component,
|
|
1390
|
+
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}.spy>ul>li{overflow:hidden;text-overflow:ellipsis;white-space:nowrap}@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}}.navH2{margin-left:20px}.navH3{margin-left:40px}.navH4{margin-left:60px}\n"] }]
|
|
1391
|
+
}], ctorParameters: function () { return [{ type: undefined, decorators: [{
|
|
1392
|
+
type: Inject,
|
|
1393
|
+
args: [DOCUMENT]
|
|
1394
|
+
}] }]; }, propDecorators: { directives: [{
|
|
1395
|
+
type: ContentChildren,
|
|
1396
|
+
args: [BsScrollspyDirective, { descendants: true }]
|
|
1397
|
+
}], onWindowScroll: [{
|
|
1398
|
+
type: HostListener,
|
|
1399
|
+
args: ['window:scroll', ['$event']]
|
|
1400
|
+
}] } });
|
|
1401
|
+
|
|
1402
|
+
class BsScrollspyModule {
|
|
1403
|
+
}
|
|
1404
|
+
BsScrollspyModule.ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "13.1.1", ngImport: i0, type: BsScrollspyModule, deps: [], target: i0.ɵɵFactoryTarget.NgModule });
|
|
1405
|
+
BsScrollspyModule.ɵmod = i0.ɵɵngDeclareNgModule({ minVersion: "12.0.0", version: "13.1.1", ngImport: i0, type: BsScrollspyModule, declarations: [BsScrollspyComponent,
|
|
1406
|
+
BsScrollspyDirective], imports: [CommonModule], exports: [BsScrollspyComponent,
|
|
1407
|
+
BsScrollspyDirective] });
|
|
1408
|
+
BsScrollspyModule.ɵinj = i0.ɵɵngDeclareInjector({ minVersion: "12.0.0", version: "13.1.1", ngImport: i0, type: BsScrollspyModule, imports: [[
|
|
1409
|
+
CommonModule
|
|
1410
|
+
]] });
|
|
1411
|
+
i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "13.1.1", ngImport: i0, type: BsScrollspyModule, decorators: [{
|
|
1412
|
+
type: NgModule,
|
|
1413
|
+
args: [{
|
|
1414
|
+
declarations: [
|
|
1415
|
+
BsScrollspyComponent,
|
|
1416
|
+
BsScrollspyDirective
|
|
1417
|
+
],
|
|
1418
|
+
imports: [
|
|
1419
|
+
CommonModule
|
|
1420
|
+
],
|
|
1421
|
+
exports: [
|
|
1422
|
+
BsScrollspyComponent,
|
|
1423
|
+
BsScrollspyDirective
|
|
1424
|
+
]
|
|
1425
|
+
}]
|
|
1426
|
+
}] });
|
|
1427
|
+
|
|
1428
|
+
class BsDropdownMenuDirective {
|
|
1429
|
+
constructor(dropdown, document, viewContainerRef, templateRef, overlay) {
|
|
1430
|
+
this.dropdown = dropdown;
|
|
1431
|
+
this.viewContainerRef = viewContainerRef;
|
|
1432
|
+
this.templateRef = templateRef;
|
|
1433
|
+
this.overlay = overlay;
|
|
1434
|
+
this.destroyed$ = new Subject();
|
|
1435
|
+
this.overlayRef = null;
|
|
1436
|
+
this.templatePortal = null;
|
|
1437
|
+
this.document = document;
|
|
1438
|
+
this.dropdown.isOpen$
|
|
1439
|
+
.pipe(takeUntil(this.destroyed$))
|
|
1440
|
+
.subscribe((isOpen) => {
|
|
1441
|
+
if (isOpen) {
|
|
1442
|
+
this.overlayRef = this.overlay.create({
|
|
1443
|
+
hasBackdrop: this.dropdown.hasBackdrop,
|
|
1444
|
+
scrollStrategy: this.overlay.scrollStrategies.reposition(),
|
|
1445
|
+
positionStrategy: this.overlay.position()
|
|
1446
|
+
.flexibleConnectedTo(this.dropdown.toggle.toggleButton)
|
|
1447
|
+
.withPositions([
|
|
1448
|
+
{ originX: "start", "originY": "bottom", overlayX: "start", overlayY: "top", offsetY: 0 },
|
|
1449
|
+
{ originX: "start", "originY": "top", overlayX: "start", overlayY: "bottom", offsetY: 0 },
|
|
1450
|
+
]),
|
|
1451
|
+
});
|
|
1452
|
+
this.overlayRef.backdropClick().subscribe(() => this.dropdown.isOpen$.next(false));
|
|
1453
|
+
this.templatePortal = new TemplatePortal(this.templateRef, this.viewContainerRef);
|
|
1454
|
+
this.overlayRef.attach(this.templatePortal);
|
|
1455
|
+
}
|
|
1456
|
+
else {
|
|
1457
|
+
if (this.overlayRef) {
|
|
1458
|
+
this.overlayRef.detach();
|
|
1459
|
+
this.overlayRef.dispose();
|
|
1460
|
+
}
|
|
1461
|
+
}
|
|
1462
|
+
});
|
|
1463
|
+
}
|
|
1464
|
+
}
|
|
1465
|
+
BsDropdownMenuDirective.ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "13.1.1", ngImport: i0, type: BsDropdownMenuDirective, deps: [{ token: forwardRef(() => BsDropdownDirective) }, { token: DOCUMENT }, { token: i0.ViewContainerRef }, { token: i0.TemplateRef }, { token: i1$2.Overlay }], target: i0.ɵɵFactoryTarget.Directive });
|
|
1466
|
+
BsDropdownMenuDirective.ɵdir = i0.ɵɵngDeclareDirective({ minVersion: "12.0.0", version: "13.1.1", type: BsDropdownMenuDirective, selector: "[bsDropdownMenu]", host: { properties: { "class.show": "dropdown.isOpen" } }, ngImport: i0 });
|
|
1467
|
+
i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "13.1.1", ngImport: i0, type: BsDropdownMenuDirective, decorators: [{
|
|
1468
|
+
type: Directive,
|
|
1469
|
+
args: [{
|
|
1470
|
+
selector: '[bsDropdownMenu]',
|
|
1471
|
+
host: {
|
|
1472
|
+
'[class.show]': 'dropdown.isOpen',
|
|
1473
|
+
},
|
|
1474
|
+
}]
|
|
1475
|
+
}], ctorParameters: function () { return [{ type: BsDropdownDirective, decorators: [{
|
|
1476
|
+
type: Inject,
|
|
1477
|
+
args: [forwardRef(() => BsDropdownDirective)]
|
|
1478
|
+
}] }, { type: undefined, decorators: [{
|
|
1479
|
+
type: Inject,
|
|
1480
|
+
args: [DOCUMENT]
|
|
1481
|
+
}] }, { type: i0.ViewContainerRef }, { type: i0.TemplateRef }, { type: i1$2.Overlay }]; } });
|
|
1482
|
+
|
|
1483
|
+
class BsDropdownToggleDirective {
|
|
1484
|
+
constructor(dropdown, toggleButton) {
|
|
1485
|
+
this.dropdown = dropdown;
|
|
1486
|
+
this.toggleButton = toggleButton;
|
|
1487
|
+
}
|
|
1488
|
+
onClick() {
|
|
1489
|
+
console.log('clicked');
|
|
1490
|
+
this.dropdown.isOpen$.pipe(take(1)).subscribe((isOpen) => {
|
|
1491
|
+
this.dropdown.isOpen$.next(!isOpen);
|
|
1492
|
+
});
|
|
1493
|
+
}
|
|
1494
|
+
}
|
|
1495
|
+
BsDropdownToggleDirective.ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "13.1.1", ngImport: i0, type: BsDropdownToggleDirective, deps: [{ token: BsDropdownDirective }, { token: i0.ElementRef }], target: i0.ɵɵFactoryTarget.Directive });
|
|
1496
|
+
BsDropdownToggleDirective.ɵdir = i0.ɵɵngDeclareDirective({ minVersion: "12.0.0", version: "13.1.1", type: BsDropdownToggleDirective, selector: "[bsDropdownToggle]", host: { listeners: { "click": "onClick()" } }, ngImport: i0 });
|
|
1497
|
+
i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "13.1.1", ngImport: i0, type: BsDropdownToggleDirective, decorators: [{
|
|
1498
|
+
type: Directive,
|
|
1499
|
+
args: [{
|
|
1500
|
+
selector: '[bsDropdownToggle]'
|
|
1501
|
+
}]
|
|
1502
|
+
}], ctorParameters: function () { return [{ type: BsDropdownDirective }, { type: i0.ElementRef }]; }, propDecorators: { onClick: [{
|
|
1503
|
+
type: HostListener,
|
|
1504
|
+
args: ['click']
|
|
1505
|
+
}] } });
|
|
1506
|
+
|
|
1507
|
+
class BsDropdownDirective {
|
|
1508
|
+
constructor() {
|
|
1509
|
+
this.isOpen$ = new BehaviorSubject(false);
|
|
1510
|
+
this.hasBackdrop = false;
|
|
1511
|
+
this.closeOnClickOutside = false;
|
|
1512
|
+
}
|
|
1513
|
+
}
|
|
1514
|
+
BsDropdownDirective.ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "13.1.1", ngImport: i0, type: BsDropdownDirective, deps: [], target: i0.ɵɵFactoryTarget.Directive });
|
|
1515
|
+
BsDropdownDirective.ɵdir = i0.ɵɵngDeclareDirective({ minVersion: "12.0.0", version: "13.1.1", type: BsDropdownDirective, selector: "[bsDropdown]", inputs: { hasBackdrop: "hasBackdrop", closeOnClickOutside: "closeOnClickOutside" }, queries: [{ propertyName: "menu", first: true, predicate: BsDropdownMenuDirective, descendants: true }, { propertyName: "toggle", first: true, predicate: BsDropdownToggleDirective, descendants: true }], ngImport: i0 });
|
|
1516
|
+
i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "13.1.1", ngImport: i0, type: BsDropdownDirective, decorators: [{
|
|
1517
|
+
type: Directive,
|
|
1518
|
+
args: [{
|
|
1519
|
+
selector: '[bsDropdown]'
|
|
1520
|
+
}]
|
|
1521
|
+
}], propDecorators: { menu: [{
|
|
1522
|
+
type: ContentChild,
|
|
1523
|
+
args: [BsDropdownMenuDirective, { static: false }]
|
|
1524
|
+
}], toggle: [{
|
|
1525
|
+
type: ContentChild,
|
|
1526
|
+
args: [BsDropdownToggleDirective, { static: false }]
|
|
1527
|
+
}], hasBackdrop: [{
|
|
1528
|
+
type: Input
|
|
1529
|
+
}], closeOnClickOutside: [{
|
|
1530
|
+
type: Input
|
|
1531
|
+
}] } });
|
|
1532
|
+
|
|
1533
|
+
class BsDropdownModule {
|
|
1534
|
+
}
|
|
1535
|
+
BsDropdownModule.ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "13.1.1", ngImport: i0, type: BsDropdownModule, deps: [], target: i0.ɵɵFactoryTarget.NgModule });
|
|
1536
|
+
BsDropdownModule.ɵmod = i0.ɵɵngDeclareNgModule({ minVersion: "12.0.0", version: "13.1.1", ngImport: i0, type: BsDropdownModule, declarations: [BsDropdownDirective,
|
|
1537
|
+
BsDropdownToggleDirective,
|
|
1538
|
+
BsDropdownMenuDirective], imports: [CommonModule,
|
|
1539
|
+
OverlayModule], exports: [BsDropdownDirective,
|
|
1540
|
+
BsDropdownToggleDirective,
|
|
1541
|
+
BsDropdownMenuDirective] });
|
|
1542
|
+
BsDropdownModule.ɵinj = i0.ɵɵngDeclareInjector({ minVersion: "12.0.0", version: "13.1.1", ngImport: i0, type: BsDropdownModule, imports: [[
|
|
1543
|
+
CommonModule,
|
|
1544
|
+
OverlayModule
|
|
1545
|
+
]] });
|
|
1546
|
+
i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "13.1.1", ngImport: i0, type: BsDropdownModule, decorators: [{
|
|
1547
|
+
type: NgModule,
|
|
1548
|
+
args: [{
|
|
1549
|
+
declarations: [
|
|
1550
|
+
BsDropdownDirective,
|
|
1551
|
+
BsDropdownToggleDirective,
|
|
1552
|
+
BsDropdownMenuDirective
|
|
1553
|
+
],
|
|
1554
|
+
imports: [
|
|
1555
|
+
CommonModule,
|
|
1556
|
+
OverlayModule
|
|
1557
|
+
],
|
|
1558
|
+
exports: [
|
|
1559
|
+
BsDropdownDirective,
|
|
1560
|
+
BsDropdownToggleDirective,
|
|
1561
|
+
BsDropdownMenuDirective
|
|
1562
|
+
]
|
|
1563
|
+
}]
|
|
1564
|
+
}] });
|
|
1565
|
+
|
|
1566
|
+
class BsDatepickerComponent {
|
|
1567
|
+
constructor() {
|
|
1568
|
+
this.selectedDate = new Date();
|
|
1569
|
+
this.currentMonth = new Date();
|
|
1570
|
+
}
|
|
1571
|
+
ngOnInit() {
|
|
1572
|
+
}
|
|
1573
|
+
}
|
|
1574
|
+
BsDatepickerComponent.ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "13.1.1", ngImport: i0, type: BsDatepickerComponent, deps: [], target: i0.ɵɵFactoryTarget.Component });
|
|
1575
|
+
BsDatepickerComponent.ɵcmp = i0.ɵɵngDeclareComponent({ minVersion: "12.0.0", version: "13.1.1", type: BsDatepickerComponent, selector: "bs-datepicker", ngImport: i0, template: "<div bsDropdown [hasBackdrop]=\"true\" [closeOnClickOutside]=\"true\">\n <button bsDropdownToggle class=\"btn btn-primary\">{{ selectedDate | date }}</button>\n <div *bsDropdownMenu>\n <bs-calendar [(selectedDate)]=\"selectedDate\" [(currentMonth)]=\"currentMonth\"></bs-calendar>\n </div>\n</div>", styles: [""], components: [{ type: BsCalendarComponent, selector: "bs-calendar", inputs: ["currentMonth", "selectedDate"], outputs: ["currentMonthChange", "selectedDateChange"] }], directives: [{ type: BsDropdownDirective, selector: "[bsDropdown]", inputs: ["hasBackdrop", "closeOnClickOutside"] }, { type: BsDropdownToggleDirective, selector: "[bsDropdownToggle]" }, { type: BsDropdownMenuDirective, selector: "[bsDropdownMenu]" }], pipes: { "date": i1.DatePipe } });
|
|
1576
|
+
i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "13.1.1", ngImport: i0, type: BsDatepickerComponent, decorators: [{
|
|
1577
|
+
type: Component,
|
|
1578
|
+
args: [{ selector: 'bs-datepicker', template: "<div bsDropdown [hasBackdrop]=\"true\" [closeOnClickOutside]=\"true\">\n <button bsDropdownToggle class=\"btn btn-primary\">{{ selectedDate | date }}</button>\n <div *bsDropdownMenu>\n <bs-calendar [(selectedDate)]=\"selectedDate\" [(currentMonth)]=\"currentMonth\"></bs-calendar>\n </div>\n</div>", styles: [""] }]
|
|
1579
|
+
}], ctorParameters: function () { return []; } });
|
|
1580
|
+
|
|
1581
|
+
class BsDatepickerModule {
|
|
1582
|
+
}
|
|
1583
|
+
BsDatepickerModule.ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "13.1.1", ngImport: i0, type: BsDatepickerModule, deps: [], target: i0.ɵɵFactoryTarget.NgModule });
|
|
1584
|
+
BsDatepickerModule.ɵmod = i0.ɵɵngDeclareNgModule({ minVersion: "12.0.0", version: "13.1.1", ngImport: i0, type: BsDatepickerModule, declarations: [BsDatepickerComponent], imports: [CommonModule,
|
|
1585
|
+
BsCalendarModule,
|
|
1586
|
+
BsDropdownModule], exports: [BsDatepickerComponent] });
|
|
1587
|
+
BsDatepickerModule.ɵinj = i0.ɵɵngDeclareInjector({ minVersion: "12.0.0", version: "13.1.1", ngImport: i0, type: BsDatepickerModule, imports: [[
|
|
1588
|
+
CommonModule,
|
|
1589
|
+
BsCalendarModule,
|
|
1590
|
+
BsDropdownModule
|
|
1591
|
+
]] });
|
|
1592
|
+
i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "13.1.1", ngImport: i0, type: BsDatepickerModule, decorators: [{
|
|
1593
|
+
type: NgModule,
|
|
1594
|
+
args: [{
|
|
1595
|
+
declarations: [
|
|
1596
|
+
BsDatepickerComponent
|
|
1597
|
+
],
|
|
1598
|
+
imports: [
|
|
1599
|
+
CommonModule,
|
|
1600
|
+
BsCalendarModule,
|
|
1601
|
+
BsDropdownModule
|
|
1602
|
+
],
|
|
1603
|
+
exports: [
|
|
1604
|
+
BsDatepickerComponent
|
|
1605
|
+
]
|
|
1606
|
+
}]
|
|
1607
|
+
}] });
|
|
1608
|
+
|
|
1609
|
+
class BsMultiselectComponent {
|
|
1610
|
+
constructor() {
|
|
1611
|
+
this.items = [];
|
|
1612
|
+
this.selectedItems = [];
|
|
1613
|
+
}
|
|
1614
|
+
itemChange(item, event) {
|
|
1615
|
+
if (!!event.target.checked) {
|
|
1616
|
+
this.selectedItems.push(item);
|
|
1617
|
+
}
|
|
1618
|
+
else {
|
|
1619
|
+
this.selectedItems.splice(this.selectedItems.findIndex((i) => i === item), 1);
|
|
1620
|
+
}
|
|
1621
|
+
}
|
|
1622
|
+
ngOnInit() {
|
|
1623
|
+
}
|
|
1624
|
+
}
|
|
1625
|
+
BsMultiselectComponent.ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "13.1.1", ngImport: i0, type: BsMultiselectComponent, deps: [], target: i0.ɵɵFactoryTarget.Component });
|
|
1626
|
+
BsMultiselectComponent.ɵcmp = i0.ɵɵngDeclareComponent({ minVersion: "12.0.0", version: "13.1.1", type: BsMultiselectComponent, selector: "bs-multiselect", inputs: { items: "items", selectedItems: "selectedItems" }, ngImport: i0, template: "<div bsDropdown [hasBackdrop]=\"true\" [closeOnClickOutside]=\"true\">\n <button bsDropdownToggle class=\"btn btn-primary\">{{ selectedItems.length }} selected</button>\n <div *bsDropdownMenu class=\"bg-white p-3 border shadow\">\n <label *ngFor=\"let item of items\" class=\"form-check\">\n <input type=\"checkbox\" [checked]=\"selectedItems.indexOf(item) > -1\" (change)=\"itemChange(item, $event)\" class=\"form-check-input\">\n <span class=\"form-check-label\">{{ item }}</span>\n </label>\n </div>\n</div>", styles: [""], directives: [{ type: BsDropdownDirective, selector: "[bsDropdown]", inputs: ["hasBackdrop", "closeOnClickOutside"] }, { type: BsDropdownToggleDirective, selector: "[bsDropdownToggle]" }, { type: BsDropdownMenuDirective, selector: "[bsDropdownMenu]" }, { type: i1.NgForOf, selector: "[ngFor][ngForOf]", inputs: ["ngForOf", "ngForTrackBy", "ngForTemplate"] }] });
|
|
1627
|
+
i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "13.1.1", ngImport: i0, type: BsMultiselectComponent, decorators: [{
|
|
1628
|
+
type: Component,
|
|
1629
|
+
args: [{ selector: 'bs-multiselect', template: "<div bsDropdown [hasBackdrop]=\"true\" [closeOnClickOutside]=\"true\">\n <button bsDropdownToggle class=\"btn btn-primary\">{{ selectedItems.length }} selected</button>\n <div *bsDropdownMenu class=\"bg-white p-3 border shadow\">\n <label *ngFor=\"let item of items\" class=\"form-check\">\n <input type=\"checkbox\" [checked]=\"selectedItems.indexOf(item) > -1\" (change)=\"itemChange(item, $event)\" class=\"form-check-input\">\n <span class=\"form-check-label\">{{ item }}</span>\n </label>\n </div>\n</div>", styles: [""] }]
|
|
1630
|
+
}], ctorParameters: function () { return []; }, propDecorators: { items: [{
|
|
1631
|
+
type: Input
|
|
1632
|
+
}], selectedItems: [{
|
|
1633
|
+
type: Input
|
|
1634
|
+
}] } });
|
|
1635
|
+
|
|
1636
|
+
class BsMultiselectModule {
|
|
1637
|
+
}
|
|
1638
|
+
BsMultiselectModule.ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "13.1.1", ngImport: i0, type: BsMultiselectModule, deps: [], target: i0.ɵɵFactoryTarget.NgModule });
|
|
1639
|
+
BsMultiselectModule.ɵmod = i0.ɵɵngDeclareNgModule({ minVersion: "12.0.0", version: "13.1.1", ngImport: i0, type: BsMultiselectModule, declarations: [BsMultiselectComponent], imports: [CommonModule,
|
|
1640
|
+
BsDropdownModule], exports: [BsMultiselectComponent] });
|
|
1641
|
+
BsMultiselectModule.ɵinj = i0.ɵɵngDeclareInjector({ minVersion: "12.0.0", version: "13.1.1", ngImport: i0, type: BsMultiselectModule, imports: [[
|
|
1642
|
+
CommonModule,
|
|
1643
|
+
BsDropdownModule
|
|
1644
|
+
]] });
|
|
1645
|
+
i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "13.1.1", ngImport: i0, type: BsMultiselectModule, decorators: [{
|
|
1646
|
+
type: NgModule,
|
|
1647
|
+
args: [{
|
|
1648
|
+
declarations: [
|
|
1649
|
+
BsMultiselectComponent
|
|
1650
|
+
],
|
|
1651
|
+
imports: [
|
|
1652
|
+
CommonModule,
|
|
1653
|
+
BsDropdownModule
|
|
1654
|
+
],
|
|
1655
|
+
exports: [
|
|
1656
|
+
BsMultiselectComponent
|
|
1657
|
+
]
|
|
1658
|
+
}]
|
|
1659
|
+
}] });
|
|
1660
|
+
|
|
978
1661
|
/**
|
|
979
1662
|
* Generated bundle index. Do not edit.
|
|
980
1663
|
*/
|
|
981
1664
|
|
|
982
|
-
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 };
|
|
1665
|
+
export { BsAccordionComponent, BsAccordionModule, BsAccordionTabComponent, BsAccordionTabHeaderComponent, BsAlertCloseComponent, BsAlertComponent, BsAlertModule, BsCalendarComponent, BsCalendarModule, BsCardComponent, BsCardHeaderComponent, BsCardModule, BsCarouselComponent, BsCarouselImageDirective, BsCarouselModule, BsDatatableColumnDirective, BsDatatableComponent, BsDatatableModule, BsDatepickerComponent, BsDatepickerModule, BsDropdownDirective, BsDropdownMenuDirective, BsDropdownModule, BsDropdownToggleDirective, BsListGroupComponent, BsListGroupItemComponent, BsListGroupModule, BsMultiselectComponent, BsMultiselectModule, BsNavbarComponent, BsNavbarDropdownComponent, BsNavbarItemComponent, BsNavbarModule, BsNavbarNavComponent, BsRowTemplateDirective, BsScrollspyComponent, BsScrollspyDirective, BsScrollspyModule, BsTabControlComponent, BsTabControlModule, BsTabPageComponent, Color, DatatableSettings, DropdownToggleDirective, NavLinkDirective, NavbarContentDirective };
|
|
983
1666
|
//# sourceMappingURL=mintplayer-ng-bootstrap.mjs.map
|