@mintplayer/ng-bootstrap 13.1.4 → 13.1.9
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 +3 -1
- package/esm2020/lib/components/accordion/accordion-tab/accordion-tab.component.mjs +4 -3
- package/esm2020/lib/components/accordion/accordion-tab-header/accordion-tab-header.component.mjs +7 -3
- package/esm2020/lib/components/alert/alert/alert.component.mjs +4 -4
- 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 +22 -8
- package/esm2020/lib/components/context-menu/context-menu.directive.mjs +57 -0
- package/esm2020/lib/components/context-menu/context-menu.module.mjs +26 -0
- package/esm2020/lib/components/context-menu/index.mjs +3 -0
- 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 +51 -0
- package/esm2020/lib/components/dropdown/dropdown-menu/dropdown-menu.directive.mjs +91 -0
- package/esm2020/lib/components/dropdown/dropdown-toggle/dropdown-toggle.directive.mjs +28 -0
- package/esm2020/lib/components/dropdown/dropdown.module.mjs +44 -0
- package/esm2020/lib/components/dropdown/index.mjs +5 -0
- package/esm2020/lib/components/index.mjs +16 -4
- package/esm2020/lib/components/multiselect/index.mjs +3 -0
- package/esm2020/lib/components/multiselect/multiselect.component.mjs +36 -0
- package/esm2020/lib/components/multiselect/multiselect.module.mjs +34 -0
- package/esm2020/lib/components/navbar/nav-link/nav-link.directive.mjs +1 -1
- package/esm2020/lib/components/navbar/navbar-nav/navbar-nav.component.mjs +4 -3
- package/esm2020/lib/components/pagination/index.mjs +3 -0
- 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/progress-bar/index.mjs +4 -0
- package/esm2020/lib/components/progress-bar/progress/progress.component.mjs +27 -0
- package/esm2020/lib/components/progress-bar/progress-bar/progress-bar.component.mjs +121 -0
- package/esm2020/lib/components/progress-bar/progress-bar.module.mjs +31 -0
- package/esm2020/lib/components/scrollspy/component/scrollspy.component.mjs +28 -12
- package/esm2020/lib/components/select2/component/select2.component.mjs +96 -0
- package/esm2020/lib/components/select2/directive/item-template.directive.mjs +20 -0
- package/esm2020/lib/components/select2/index.mjs +4 -0
- package/esm2020/lib/components/select2/select2.module.mjs +43 -0
- package/esm2020/lib/components/snackbar/component/snackbar.component.mjs +35 -0
- package/esm2020/lib/components/snackbar/directives/index.mjs +2 -0
- package/esm2020/lib/components/snackbar/directives/snackbar-close/snackbar-close.directive.mjs +27 -0
- package/esm2020/lib/components/snackbar/index.mjs +6 -0
- package/esm2020/lib/components/snackbar/interfaces/index.mjs +2 -0
- package/esm2020/lib/components/snackbar/interfaces/snackbar-animation-meta.mjs +2 -0
- package/esm2020/lib/components/snackbar/providers/snackbar-content.provider.mjs +3 -0
- package/esm2020/lib/components/snackbar/service/snackbar.service.mjs +50 -0
- package/esm2020/lib/components/snackbar/snackbar.module.mjs +38 -0
- package/esm2020/lib/components/toggle-button/index.mjs +3 -0
- package/esm2020/lib/components/toggle-button/toggle-button.component.mjs +42 -0
- package/esm2020/lib/components/toggle-button/toggle-button.module.mjs +26 -0
- package/esm2020/lib/components/tooltip/component/tooltip.component.mjs +25 -0
- package/esm2020/lib/components/tooltip/directive/tooltip.directive.mjs +104 -0
- package/esm2020/lib/components/tooltip/index.mjs +4 -0
- package/esm2020/lib/components/tooltip/providers/tooltip-content.provider.mjs +3 -0
- package/esm2020/lib/components/tooltip/tooltip.module.mjs +29 -0
- package/esm2020/lib/components/typeahead/index.mjs +3 -0
- package/esm2020/lib/components/typeahead/typeahead.component.mjs +90 -0
- package/esm2020/lib/components/typeahead/typeahead.module.mjs +38 -0
- package/esm2020/lib/enums/index.mjs +2 -1
- package/esm2020/lib/enums/position.enum.mjs +8 -0
- package/esm2020/lib/interfaces/index.mjs +2 -0
- package/esm2020/lib/interfaces/page-with-selection.mjs +2 -0
- package/esm2020/lib/pipes/font-color/font-color.module.mjs +26 -0
- package/esm2020/lib/pipes/font-color/font-color.pipe.mjs +26 -0
- package/esm2020/lib/pipes/font-color/index.mjs +3 -0
- package/esm2020/lib/pipes/in-list/in-list.module.mjs +26 -0
- package/esm2020/lib/pipes/in-list/in-list.pipe.mjs +16 -0
- package/esm2020/lib/pipes/index.mjs +2 -0
- package/esm2020/lib/pipes/month-name/month-name.pipe.mjs +7 -2
- package/esm2020/lib/services/calendar-month/calendar-month.service.mjs +12 -14
- package/esm2020/lib/services/scroll-offset/scroll-offset.service.mjs +31 -0
- package/esm2020/lib/types/page-number.type.mjs +2 -0
- package/fesm2015/mintplayer-ng-bootstrap.mjs +1912 -277
- package/fesm2015/mintplayer-ng-bootstrap.mjs.map +1 -1
- package/fesm2020/mintplayer-ng-bootstrap.mjs +1897 -275
- package/fesm2020/mintplayer-ng-bootstrap.mjs.map +1 -1
- package/index.d.ts +2 -0
- package/lib/components/accordion/accordion-tab-header/accordion-tab-header.component.d.ts +1 -0
- package/lib/components/calendar/calendar.component.d.ts +21 -13
- package/lib/components/carousel/carousel/carousel.component.d.ts +4 -1
- package/lib/components/context-menu/context-menu.directive.d.ts +16 -0
- package/lib/components/context-menu/context-menu.module.d.ts +8 -0
- package/lib/components/context-menu/index.d.ts +2 -0
- 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 +20 -0
- package/lib/components/dropdown/dropdown-menu/dropdown-menu.directive.d.ts +20 -0
- package/lib/components/dropdown/dropdown-toggle/dropdown-toggle.directive.d.ts +11 -0
- package/lib/components/dropdown/dropdown.module.d.ts +12 -0
- package/lib/components/dropdown/index.d.ts +4 -0
- package/lib/components/index.d.ts +15 -3
- package/lib/components/multiselect/index.d.ts +2 -0
- package/lib/components/multiselect/multiselect.component.d.ts +12 -0
- package/lib/components/multiselect/multiselect.module.d.ts +10 -0
- package/lib/components/pagination/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/progress-bar/index.d.ts +3 -0
- package/lib/components/progress-bar/progress/progress.component.d.ts +8 -0
- package/lib/components/progress-bar/progress-bar/progress-bar.component.d.ts +31 -0
- package/lib/components/progress-bar/progress-bar.module.d.ts +9 -0
- package/lib/components/scrollspy/component/scrollspy.component.d.ts +6 -4
- package/lib/components/select2/component/select2.component.d.ts +30 -0
- package/lib/components/select2/directive/item-template.directive.d.ts +9 -0
- package/lib/components/select2/index.d.ts +3 -0
- package/lib/components/select2/select2.module.d.ts +12 -0
- package/lib/components/snackbar/component/snackbar.component.d.ts +16 -0
- package/lib/components/snackbar/directives/index.d.ts +1 -0
- package/lib/components/snackbar/directives/snackbar-close/snackbar-close.directive.d.ts +11 -0
- package/lib/components/snackbar/index.d.ts +5 -0
- package/lib/components/snackbar/interfaces/index.d.ts +1 -0
- package/lib/components/snackbar/interfaces/snackbar-animation-meta.d.ts +7 -0
- package/lib/components/snackbar/providers/snackbar-content.provider.d.ts +2 -0
- package/lib/components/snackbar/service/snackbar.service.d.ts +14 -0
- package/lib/components/snackbar/snackbar.module.d.ts +9 -0
- package/lib/components/toggle-button/index.d.ts +2 -0
- package/lib/components/toggle-button/toggle-button.component.d.ts +15 -0
- package/lib/components/toggle-button/toggle-button.module.d.ts +8 -0
- package/lib/components/tooltip/component/tooltip.component.d.ts +11 -0
- package/lib/components/tooltip/directive/tooltip.directive.d.ts +19 -0
- package/lib/components/tooltip/index.d.ts +2 -0
- package/lib/components/tooltip/providers/tooltip-content.provider.d.ts +2 -0
- package/lib/components/tooltip/tooltip.module.d.ts +9 -0
- package/lib/components/typeahead/index.d.ts +2 -0
- package/lib/components/typeahead/typeahead.component.d.ts +29 -0
- package/lib/components/typeahead/typeahead.module.d.ts +11 -0
- package/lib/enums/index.d.ts +1 -0
- package/lib/enums/position.enum.d.ts +6 -0
- package/lib/interfaces/index.d.ts +1 -0
- package/lib/interfaces/page-with-selection.d.ts +5 -0
- package/lib/pipes/font-color/font-color.module.d.ts +8 -0
- package/lib/pipes/font-color/font-color.pipe.d.ts +7 -0
- package/lib/pipes/font-color/index.d.ts +2 -0
- package/lib/pipes/in-list/in-list.module.d.ts +8 -0
- package/lib/pipes/in-list/in-list.pipe.d.ts +7 -0
- package/lib/pipes/index.d.ts +1 -0
- package/lib/pipes/month-name/month-name.pipe.d.ts +1 -1
- package/lib/services/calendar-month/calendar-month.service.d.ts +0 -1
- package/lib/services/scroll-offset/scroll-offset.service.d.ts +9 -0
- package/lib/types/page-number.type.d.ts +1 -0
- package/package.json +6 -2
|
@@ -1,14 +1,120 @@
|
|
|
1
1
|
import * as i0 from '@angular/core';
|
|
2
|
-
import { Component,
|
|
2
|
+
import { Component, ContentChildren, NgModule, Input, Injectable, Pipe, EventEmitter, Output, Directive, HostBinding, Host, SkipSelf, HostListener, forwardRef, PLATFORM_ID, Inject, ContentChild, TemplateRef, ViewChild, Optional, ViewChildren, InjectionToken, Injector } from '@angular/core';
|
|
3
3
|
import * as i1 from '@angular/common';
|
|
4
4
|
import { CommonModule, DOCUMENT } from '@angular/common';
|
|
5
|
-
import { SlideUpDownAnimation, FadeInOutAnimation, CarouselSlideAnimation } from '@mintplayer/ng-animations';
|
|
6
|
-
import { Subject, BehaviorSubject } from 'rxjs';
|
|
7
|
-
import { map, takeUntil, take } from 'rxjs/operators';
|
|
8
|
-
import { RouterModule } from '@angular/router';
|
|
9
|
-
import * as i1$1 from '@mintplayer/ng-click-outside';
|
|
10
|
-
import { ClickOutsideModule } from '@mintplayer/ng-click-outside';
|
|
11
5
|
import { BrowserAnimationsModule } from '@angular/platform-browser/animations';
|
|
6
|
+
import { SlideUpDownAnimation, FadeInOutAnimation, CarouselSlideAnimation, ColorTransitionAnimation } from '@mintplayer/ng-animations';
|
|
7
|
+
import { Subject, BehaviorSubject, map, takeUntil, filter, take, Observable, combineLatest } from 'rxjs';
|
|
8
|
+
import { map as map$1, takeUntil as takeUntil$1, take as take$1 } from 'rxjs/operators';
|
|
9
|
+
import * as i1$1 from '@angular/cdk/overlay';
|
|
10
|
+
import { OverlayModule } from '@angular/cdk/overlay';
|
|
11
|
+
import { TemplatePortal, ComponentPortal } from '@angular/cdk/portal';
|
|
12
|
+
import '@mintplayer/ng-pagination';
|
|
13
|
+
import * as i1$2 from '@mintplayer/ng-click-outside';
|
|
14
|
+
import { ClickOutsideDirective, ClickOutsideModule } from '@mintplayer/ng-click-outside';
|
|
15
|
+
import { FocusOnLoadModule } from '@mintplayer/ng-focus-on-load';
|
|
16
|
+
import { RouterModule, ROUTER_CONFIGURATION } from '@angular/router';
|
|
17
|
+
import * as i3 from '@angular/forms';
|
|
18
|
+
import { FormsModule } from '@angular/forms';
|
|
19
|
+
|
|
20
|
+
class BsAccordionTabComponent {
|
|
21
|
+
constructor(accordion) {
|
|
22
|
+
this.accordion = accordion;
|
|
23
|
+
}
|
|
24
|
+
ngOnInit() {
|
|
25
|
+
}
|
|
26
|
+
headerClicked(event) {
|
|
27
|
+
if (this.accordion.activeTab === this) {
|
|
28
|
+
this.accordion.activeTab = null;
|
|
29
|
+
}
|
|
30
|
+
else {
|
|
31
|
+
this.accordion.activeTab = this;
|
|
32
|
+
}
|
|
33
|
+
}
|
|
34
|
+
}
|
|
35
|
+
BsAccordionTabComponent.ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "13.1.1", ngImport: i0, type: BsAccordionTabComponent, deps: [{ token: BsAccordionComponent }], target: i0.ɵɵFactoryTarget.Component });
|
|
36
|
+
BsAccordionTabComponent.ɵcmp = i0.ɵɵngDeclareComponent({ minVersion: "12.0.0", version: "13.1.1", type: BsAccordionTabComponent, selector: "bs-accordion-tab", ngImport: i0, template: "<div class=\"card\">\n <ng-content select=\"bs-accordion-tab-header\"></ng-content>\n <div class=\"card-block overflow-hidden\" [@slideUpDown] *ngIf=\"accordion.activeTab === this\">\n <ng-content></ng-content>\n </div>\n</div>", styles: [".card,.card-header,.card-block{border-radius:0}.card{margin-bottom:-1px}\n"], directives: [{ type: i1.NgIf, selector: "[ngIf]", inputs: ["ngIf", "ngIfThen", "ngIfElse"] }], animations: [SlideUpDownAnimation] });
|
|
37
|
+
i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "13.1.1", ngImport: i0, type: BsAccordionTabComponent, decorators: [{
|
|
38
|
+
type: Component,
|
|
39
|
+
args: [{ selector: 'bs-accordion-tab', animations: [SlideUpDownAnimation], template: "<div class=\"card\">\n <ng-content select=\"bs-accordion-tab-header\"></ng-content>\n <div class=\"card-block overflow-hidden\" [@slideUpDown] *ngIf=\"accordion.activeTab === this\">\n <ng-content></ng-content>\n </div>\n</div>", styles: [".card,.card-header,.card-block{border-radius:0}.card{margin-bottom:-1px}\n"] }]
|
|
40
|
+
}], ctorParameters: function () { return [{ type: BsAccordionComponent }]; } });
|
|
41
|
+
|
|
42
|
+
class BsAccordionComponent {
|
|
43
|
+
constructor() {
|
|
44
|
+
this.activeTab = null;
|
|
45
|
+
}
|
|
46
|
+
ngOnInit() {
|
|
47
|
+
}
|
|
48
|
+
}
|
|
49
|
+
BsAccordionComponent.ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "13.1.1", ngImport: i0, type: BsAccordionComponent, deps: [], target: i0.ɵɵFactoryTarget.Component });
|
|
50
|
+
BsAccordionComponent.ɵcmp = i0.ɵɵngDeclareComponent({ minVersion: "12.0.0", version: "13.1.1", type: BsAccordionComponent, selector: "bs-accordion", queries: [{ propertyName: "tabPages", predicate: BsAccordionTabComponent }], ngImport: i0, template: "<ng-content></ng-content>", styles: [""] });
|
|
51
|
+
i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "13.1.1", ngImport: i0, type: BsAccordionComponent, decorators: [{
|
|
52
|
+
type: Component,
|
|
53
|
+
args: [{ selector: 'bs-accordion', template: "<ng-content></ng-content>", styles: [""] }]
|
|
54
|
+
}], ctorParameters: function () { return []; }, propDecorators: { tabPages: [{
|
|
55
|
+
type: ContentChildren,
|
|
56
|
+
args: [BsAccordionTabComponent]
|
|
57
|
+
}] } });
|
|
58
|
+
|
|
59
|
+
class BsAccordionTabHeaderComponent {
|
|
60
|
+
constructor(accordionTab, accordion) {
|
|
61
|
+
this.accordionTab = accordionTab;
|
|
62
|
+
this.accordion = accordion;
|
|
63
|
+
}
|
|
64
|
+
ngOnInit() {
|
|
65
|
+
}
|
|
66
|
+
headerClicked(event) {
|
|
67
|
+
event.preventDefault();
|
|
68
|
+
if (this.accordion.activeTab === this.accordionTab) {
|
|
69
|
+
this.accordion.activeTab = null;
|
|
70
|
+
}
|
|
71
|
+
else {
|
|
72
|
+
this.accordion.activeTab = this.accordionTab;
|
|
73
|
+
}
|
|
74
|
+
}
|
|
75
|
+
foo(event) {
|
|
76
|
+
event.preventDefault();
|
|
77
|
+
}
|
|
78
|
+
}
|
|
79
|
+
BsAccordionTabHeaderComponent.ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "13.1.1", ngImport: i0, type: BsAccordionTabHeaderComponent, deps: [{ token: BsAccordionTabComponent }, { token: BsAccordionComponent }], target: i0.ɵɵFactoryTarget.Component });
|
|
80
|
+
BsAccordionTabHeaderComponent.ɵcmp = i0.ɵɵngDeclareComponent({ minVersion: "12.0.0", version: "13.1.1", type: BsAccordionTabHeaderComponent, selector: "bs-accordion-tab-header", ngImport: i0, template: "<div class=\"card-header cursor-pointer\" (click)=\"headerClicked($event)\" (contextmenu)=\"foo($event)\">\n <ng-content></ng-content>\n</div>", styles: [""] });
|
|
81
|
+
i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "13.1.1", ngImport: i0, type: BsAccordionTabHeaderComponent, decorators: [{
|
|
82
|
+
type: Component,
|
|
83
|
+
args: [{ selector: 'bs-accordion-tab-header', template: "<div class=\"card-header cursor-pointer\" (click)=\"headerClicked($event)\" (contextmenu)=\"foo($event)\">\n <ng-content></ng-content>\n</div>", styles: [""] }]
|
|
84
|
+
}], ctorParameters: function () { return [{ type: BsAccordionTabComponent }, { type: BsAccordionComponent }]; } });
|
|
85
|
+
|
|
86
|
+
class BsAccordionModule {
|
|
87
|
+
}
|
|
88
|
+
BsAccordionModule.ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "13.1.1", ngImport: i0, type: BsAccordionModule, deps: [], target: i0.ɵɵFactoryTarget.NgModule });
|
|
89
|
+
BsAccordionModule.ɵmod = i0.ɵɵngDeclareNgModule({ minVersion: "12.0.0", version: "13.1.1", ngImport: i0, type: BsAccordionModule, declarations: [BsAccordionComponent,
|
|
90
|
+
BsAccordionTabComponent,
|
|
91
|
+
BsAccordionTabHeaderComponent], imports: [CommonModule,
|
|
92
|
+
BrowserAnimationsModule], exports: [BsAccordionComponent,
|
|
93
|
+
BsAccordionTabComponent,
|
|
94
|
+
BsAccordionTabHeaderComponent] });
|
|
95
|
+
BsAccordionModule.ɵinj = i0.ɵɵngDeclareInjector({ minVersion: "12.0.0", version: "13.1.1", ngImport: i0, type: BsAccordionModule, imports: [[
|
|
96
|
+
CommonModule,
|
|
97
|
+
BrowserAnimationsModule
|
|
98
|
+
]] });
|
|
99
|
+
i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "13.1.1", ngImport: i0, type: BsAccordionModule, decorators: [{
|
|
100
|
+
type: NgModule,
|
|
101
|
+
args: [{
|
|
102
|
+
declarations: [
|
|
103
|
+
BsAccordionComponent,
|
|
104
|
+
BsAccordionTabComponent,
|
|
105
|
+
BsAccordionTabHeaderComponent
|
|
106
|
+
],
|
|
107
|
+
imports: [
|
|
108
|
+
CommonModule,
|
|
109
|
+
BrowserAnimationsModule
|
|
110
|
+
],
|
|
111
|
+
exports: [
|
|
112
|
+
BsAccordionComponent,
|
|
113
|
+
BsAccordionTabComponent,
|
|
114
|
+
BsAccordionTabHeaderComponent
|
|
115
|
+
]
|
|
116
|
+
}]
|
|
117
|
+
}] });
|
|
12
118
|
|
|
13
119
|
var Color;
|
|
14
120
|
(function (Color) {
|
|
@@ -25,6 +131,14 @@ var Color;
|
|
|
25
131
|
Color[Color["transparent"] = 10] = "transparent";
|
|
26
132
|
})(Color || (Color = {}));
|
|
27
133
|
|
|
134
|
+
var Position;
|
|
135
|
+
(function (Position) {
|
|
136
|
+
Position[Position["top"] = 0] = "top";
|
|
137
|
+
Position[Position["left"] = 1] = "left";
|
|
138
|
+
Position[Position["bottom"] = 2] = "bottom";
|
|
139
|
+
Position[Position["right"] = 3] = "right";
|
|
140
|
+
})(Position || (Position = {}));
|
|
141
|
+
|
|
28
142
|
class BsAlertComponent {
|
|
29
143
|
constructor() {
|
|
30
144
|
this.type = Color.primary;
|
|
@@ -35,10 +149,10 @@ class BsAlertComponent {
|
|
|
35
149
|
}
|
|
36
150
|
}
|
|
37
151
|
BsAlertComponent.ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "13.1.1", ngImport: i0, type: BsAlertComponent, deps: [], target: i0.ɵɵFactoryTarget.Component });
|
|
38
|
-
BsAlertComponent.ɵcmp = i0.ɵɵngDeclareComponent({ minVersion: "12.0.0", version: "13.1.1", type: BsAlertComponent, selector: "bs-alert", inputs: { type: "type" }, ngImport: i0, template: "<div class=\"mb-3 overflow-hidden\" *ngIf=\"isVisible\" [@fadeInOut]>\n <div class=\"alert mb-0\" [ngClass]=\"'alert-' + colors[type]\">\n <ng-content></ng-content>\n </div>\n</div>", styles: ["::ng-deep .alert .btn{bottom:0;display:inline-flex;align-items:center}\n"], directives: [{ type: i1.NgIf, selector: "[ngIf]", inputs: ["ngIf", "ngIfThen", "ngIfElse"] }, { type: i1.NgClass, selector: "[ngClass]", inputs: ["class", "ngClass"] }], animations: [
|
|
152
|
+
BsAlertComponent.ɵcmp = i0.ɵɵngDeclareComponent({ minVersion: "12.0.0", version: "13.1.1", type: BsAlertComponent, selector: "bs-alert", inputs: { type: "type" }, ngImport: i0, template: "<div class=\"mb-3 overflow-hidden\" *ngIf=\"isVisible\" [@fadeInOut]>\n <div class=\"alert mb-0\" [ngClass]=\"'alert-' + colors[type]\">\n <ng-content></ng-content>\n </div>\n</div>", styles: ["::ng-deep .alert .btn{bottom:0;display:inline-flex;align-items:center}\n"], directives: [{ type: i1.NgIf, selector: "[ngIf]", inputs: ["ngIf", "ngIfThen", "ngIfElse"] }, { type: i1.NgClass, selector: "[ngClass]", inputs: ["class", "ngClass"] }], animations: [FadeInOutAnimation] });
|
|
39
153
|
i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "13.1.1", ngImport: i0, type: BsAlertComponent, decorators: [{
|
|
40
154
|
type: Component,
|
|
41
|
-
args: [{ selector: 'bs-alert', animations: [
|
|
155
|
+
args: [{ selector: 'bs-alert', animations: [FadeInOutAnimation], template: "<div class=\"mb-3 overflow-hidden\" *ngIf=\"isVisible\" [@fadeInOut]>\n <div class=\"alert mb-0\" [ngClass]=\"'alert-' + colors[type]\">\n <ng-content></ng-content>\n </div>\n</div>", styles: ["::ng-deep .alert .btn{bottom:0;display:inline-flex;align-items:center}\n"] }]
|
|
42
156
|
}], ctorParameters: function () { return []; }, propDecorators: { type: [{
|
|
43
157
|
type: Input
|
|
44
158
|
}] } });
|
|
@@ -82,64 +196,11 @@ i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "13.1.1", ngImpor
|
|
|
82
196
|
}]
|
|
83
197
|
}] });
|
|
84
198
|
|
|
85
|
-
class BsCardComponent {
|
|
86
|
-
constructor() {
|
|
87
|
-
}
|
|
88
|
-
ngOnInit() {
|
|
89
|
-
}
|
|
90
|
-
ngAfterViewInit() {
|
|
91
|
-
// console.log('header', this.header);
|
|
92
|
-
}
|
|
93
|
-
}
|
|
94
|
-
BsCardComponent.ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "13.1.1", ngImport: i0, type: BsCardComponent, deps: [], target: i0.ɵɵFactoryTarget.Component });
|
|
95
|
-
BsCardComponent.ɵcmp = i0.ɵɵngDeclareComponent({ minVersion: "12.0.0", version: "13.1.1", type: BsCardComponent, selector: "bs-card", ngImport: i0, template: "<div class=\"card\" style=\"width: 18rem;\">\n <ng-content select=\"bs-card-header\"></ng-content>\n <div class=\"card-block\">\n <ng-content></ng-content>\n </div>\n</div>", styles: [".card-block{margin:-1px}\n"] });
|
|
96
|
-
i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "13.1.1", ngImport: i0, type: BsCardComponent, decorators: [{
|
|
97
|
-
type: Component,
|
|
98
|
-
args: [{ selector: 'bs-card', template: "<div class=\"card\" style=\"width: 18rem;\">\n <ng-content select=\"bs-card-header\"></ng-content>\n <div class=\"card-block\">\n <ng-content></ng-content>\n </div>\n</div>", styles: [".card-block{margin:-1px}\n"] }]
|
|
99
|
-
}], ctorParameters: function () { return []; } });
|
|
100
|
-
|
|
101
|
-
class BsCardHeaderComponent {
|
|
102
|
-
constructor() {
|
|
103
|
-
}
|
|
104
|
-
ngOnInit() {
|
|
105
|
-
}
|
|
106
|
-
}
|
|
107
|
-
BsCardHeaderComponent.ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "13.1.1", ngImport: i0, type: BsCardHeaderComponent, deps: [], target: i0.ɵɵFactoryTarget.Component });
|
|
108
|
-
BsCardHeaderComponent.ɵcmp = i0.ɵɵngDeclareComponent({ minVersion: "12.0.0", version: "13.1.1", type: BsCardHeaderComponent, selector: "bs-card-header", ngImport: i0, template: "<div class=\"card-header\">\n <ng-content></ng-content>\n</div>", styles: [""] });
|
|
109
|
-
i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "13.1.1", ngImport: i0, type: BsCardHeaderComponent, decorators: [{
|
|
110
|
-
type: Component,
|
|
111
|
-
args: [{ selector: 'bs-card-header', template: "<div class=\"card-header\">\n <ng-content></ng-content>\n</div>", styles: [""] }]
|
|
112
|
-
}], ctorParameters: function () { return []; } });
|
|
113
|
-
|
|
114
|
-
class BsCardModule {
|
|
115
|
-
}
|
|
116
|
-
BsCardModule.ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "13.1.1", ngImport: i0, type: BsCardModule, deps: [], target: i0.ɵɵFactoryTarget.NgModule });
|
|
117
|
-
BsCardModule.ɵmod = i0.ɵɵngDeclareNgModule({ minVersion: "12.0.0", version: "13.1.1", ngImport: i0, type: BsCardModule, declarations: [BsCardComponent,
|
|
118
|
-
BsCardHeaderComponent], imports: [CommonModule], exports: [BsCardComponent,
|
|
119
|
-
BsCardHeaderComponent] });
|
|
120
|
-
BsCardModule.ɵinj = i0.ɵɵngDeclareInjector({ minVersion: "12.0.0", version: "13.1.1", ngImport: i0, type: BsCardModule, imports: [[CommonModule]] });
|
|
121
|
-
i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "13.1.1", ngImport: i0, type: BsCardModule, decorators: [{
|
|
122
|
-
type: NgModule,
|
|
123
|
-
args: [{
|
|
124
|
-
imports: [CommonModule],
|
|
125
|
-
declarations: [
|
|
126
|
-
BsCardComponent,
|
|
127
|
-
BsCardHeaderComponent
|
|
128
|
-
],
|
|
129
|
-
exports: [
|
|
130
|
-
BsCardComponent,
|
|
131
|
-
BsCardHeaderComponent
|
|
132
|
-
]
|
|
133
|
-
}]
|
|
134
|
-
}] });
|
|
135
|
-
|
|
136
199
|
class BsCalendarMonthService {
|
|
137
|
-
constructor() {
|
|
138
|
-
}
|
|
139
200
|
getWeeks(month) {
|
|
140
|
-
|
|
141
|
-
|
|
142
|
-
|
|
201
|
+
const firstAndLast = this.getFirstAndLastDayOfMonth(month);
|
|
202
|
+
const days = this.dateDiff(firstAndLast.first, firstAndLast.last) + 1;
|
|
203
|
+
const allDays = [
|
|
143
204
|
...this.generateList(this.dayOfWeekMondayBased(firstAndLast.first)).map(d => null),
|
|
144
205
|
...this.generateList(days).map(d => {
|
|
145
206
|
return {
|
|
@@ -149,8 +210,8 @@ class BsCalendarMonthService {
|
|
|
149
210
|
}),
|
|
150
211
|
...this.generateList(6 - this.dayOfWeekMondayBased(firstAndLast.last)).map(d => null),
|
|
151
212
|
];
|
|
152
|
-
|
|
153
|
-
|
|
213
|
+
const weeks = this.chunk(allDays, 7);
|
|
214
|
+
const weeksMapped = weeks.map((w, i) => {
|
|
154
215
|
return {
|
|
155
216
|
number: this.weekOfYear(new Date(month.getFullYear(), month.getMonth(), w.find(d => d !== null)?.dayOfMonth)),
|
|
156
217
|
week: w
|
|
@@ -162,7 +223,7 @@ class BsCalendarMonthService {
|
|
|
162
223
|
return [...Array(count).keys()];
|
|
163
224
|
}
|
|
164
225
|
dayOfWeekMondayBased(date) {
|
|
165
|
-
|
|
226
|
+
const d = date.getDay() - 1;
|
|
166
227
|
if (d < 0) {
|
|
167
228
|
return 6;
|
|
168
229
|
}
|
|
@@ -171,10 +232,10 @@ class BsCalendarMonthService {
|
|
|
171
232
|
}
|
|
172
233
|
}
|
|
173
234
|
weekOfYear(date) {
|
|
174
|
-
|
|
235
|
+
const dateClone = new Date(Date.UTC(date.getFullYear(), date.getMonth(), date.getDate()));
|
|
175
236
|
dateClone.setUTCDate(dateClone.getUTCDate() + 4 - (dateClone.getUTCDay() || 7));
|
|
176
|
-
|
|
177
|
-
|
|
237
|
+
const yearStart = new Date(Date.UTC(dateClone.getUTCFullYear(), 0, 1));
|
|
238
|
+
const utcDiff = this.toUTC(dateClone) - this.toUTC(yearStart);
|
|
178
239
|
return Math.ceil((utcDiff / (1000 * 60 * 60 * 24) + 1) / 7);
|
|
179
240
|
}
|
|
180
241
|
getFirstAndLastDayOfMonth(date) {
|
|
@@ -197,7 +258,7 @@ class BsCalendarMonthService {
|
|
|
197
258
|
return Date.UTC(date.getFullYear(), date.getMonth(), date.getDate());
|
|
198
259
|
}
|
|
199
260
|
chunk(items, size) {
|
|
200
|
-
|
|
261
|
+
const result = [];
|
|
201
262
|
for (let i = 0; i < items.length; i += size) {
|
|
202
263
|
result.push(items.slice(i, i + size));
|
|
203
264
|
}
|
|
@@ -211,7 +272,7 @@ i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "13.1.1", ngImpor
|
|
|
211
272
|
args: [{
|
|
212
273
|
providedIn: 'root'
|
|
213
274
|
}]
|
|
214
|
-
}]
|
|
275
|
+
}] });
|
|
215
276
|
|
|
216
277
|
class UcFirstPipe {
|
|
217
278
|
transform(value, ...args) {
|
|
@@ -229,7 +290,12 @@ i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "13.1.1", ngImpor
|
|
|
229
290
|
|
|
230
291
|
class MonthNamePipe {
|
|
231
292
|
transform(date, ...args) {
|
|
232
|
-
|
|
293
|
+
if (date) {
|
|
294
|
+
return date.toLocaleString("default", { month: 'long' });
|
|
295
|
+
}
|
|
296
|
+
else {
|
|
297
|
+
return '';
|
|
298
|
+
}
|
|
233
299
|
}
|
|
234
300
|
}
|
|
235
301
|
MonthNamePipe.ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "13.1.1", ngImport: i0, type: MonthNamePipe, deps: [], target: i0.ɵɵFactoryTarget.Pipe });
|
|
@@ -242,58 +308,100 @@ i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "13.1.1", ngImpor
|
|
|
242
308
|
}] });
|
|
243
309
|
|
|
244
310
|
class BsCalendarComponent {
|
|
245
|
-
constructor(calendarMonthService) {
|
|
311
|
+
constructor(calendarMonthService, ref) {
|
|
246
312
|
this.calendarMonthService = calendarMonthService;
|
|
247
|
-
this.
|
|
313
|
+
this.ref = ref;
|
|
314
|
+
this.destroyed$ = new Subject();
|
|
315
|
+
//#region CurrentMonth
|
|
316
|
+
this.currentMonth$ = new BehaviorSubject(new Date());
|
|
317
|
+
this.currentMonthChange = new EventEmitter();
|
|
318
|
+
//#endregion
|
|
248
319
|
//#region SelectedDate
|
|
249
|
-
this.selectedDate = new Date();
|
|
320
|
+
this.selectedDate$ = new BehaviorSubject(new Date());
|
|
321
|
+
this.selectedDateChange = new EventEmitter();
|
|
250
322
|
//#endregion
|
|
251
|
-
|
|
252
|
-
this.
|
|
323
|
+
this.daysOfWeek = ['Mo', 'Tu', 'We', 'Th', 'Fr', 'Sa', 'Su'];
|
|
324
|
+
this.weeks$ = this.currentMonth$
|
|
325
|
+
.pipe(map((month) => this.calendarMonthService.getWeeks(month)))
|
|
326
|
+
.pipe(takeUntil(this.destroyed$));
|
|
327
|
+
this.daysOfWeek$ = this.weeks$
|
|
328
|
+
.pipe(filter((weeks) => weeks.length > 1))
|
|
329
|
+
.pipe(map((weeks) => weeks[1].week))
|
|
330
|
+
.pipe(map((week) => {
|
|
331
|
+
const firstDay = week[0];
|
|
332
|
+
if (firstDay) {
|
|
333
|
+
return week.map((d) => {
|
|
334
|
+
const date = new Date(firstDay.date.getFullYear(), firstDay.date.getMonth(), d?.dayOfMonth);
|
|
335
|
+
return date.toLocaleString('default', { weekday: 'short' });
|
|
336
|
+
});
|
|
337
|
+
}
|
|
338
|
+
else {
|
|
339
|
+
return [];
|
|
340
|
+
}
|
|
341
|
+
}));
|
|
342
|
+
this.selectedDate$.pipe(takeUntil(this.destroyed$)).subscribe((date) => {
|
|
343
|
+
this.selectedDateChange.emit(date);
|
|
344
|
+
});
|
|
345
|
+
this.currentMonth$.pipe(takeUntil(this.destroyed$)).subscribe((month) => {
|
|
346
|
+
this.currentMonthChange.emit(month);
|
|
347
|
+
});
|
|
253
348
|
}
|
|
254
|
-
|
|
255
|
-
this.
|
|
349
|
+
get currentMonth() {
|
|
350
|
+
return this.currentMonth$.value;
|
|
256
351
|
}
|
|
257
|
-
|
|
258
|
-
|
|
352
|
+
set currentMonth(value) {
|
|
353
|
+
this.currentMonth$.next(value);
|
|
259
354
|
}
|
|
260
|
-
|
|
261
|
-
this.
|
|
262
|
-
this.weeks = this.calendarMonthService.getWeeks(this.month);
|
|
355
|
+
get selectedDate() {
|
|
356
|
+
return this.selectedDate$.value;
|
|
263
357
|
}
|
|
264
|
-
|
|
265
|
-
|
|
358
|
+
set selectedDate(value) {
|
|
359
|
+
this.selectedDate$.next(value);
|
|
266
360
|
}
|
|
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
|
-
}
|
|
361
|
+
ngOnDestroy() {
|
|
362
|
+
this.destroyed$.next(true);
|
|
275
363
|
}
|
|
276
|
-
//#endregion
|
|
277
364
|
previousMonth() {
|
|
278
|
-
this.
|
|
365
|
+
this.currentMonth$.pipe(take(1)).subscribe((month) => {
|
|
366
|
+
this.currentMonth$.next(new Date(month.getFullYear(), month.getMonth() - 1, 1));
|
|
367
|
+
});
|
|
279
368
|
return false;
|
|
280
369
|
}
|
|
281
370
|
nextMonth() {
|
|
282
|
-
this.
|
|
371
|
+
this.currentMonth$.pipe(take(1)).subscribe((month) => {
|
|
372
|
+
this.currentMonth$.next(new Date(month.getFullYear(), month.getMonth() + 1, 1));
|
|
373
|
+
});
|
|
283
374
|
return false;
|
|
284
375
|
}
|
|
285
376
|
isSameDate(date1, date2) {
|
|
286
|
-
|
|
287
|
-
|
|
288
|
-
|
|
377
|
+
if (date1 === null && date2 === null)
|
|
378
|
+
return true;
|
|
379
|
+
if (date1 === null || date2 === null)
|
|
380
|
+
return false;
|
|
381
|
+
return (date1.getFullYear() === date2.getFullYear() &&
|
|
382
|
+
date1.getMonth() === date2.getMonth() &&
|
|
383
|
+
date1.getDate() === date2.getDate());
|
|
384
|
+
}
|
|
385
|
+
goto(day) {
|
|
386
|
+
if (day) {
|
|
387
|
+
this.selectedDate$.next(day.date);
|
|
388
|
+
}
|
|
289
389
|
}
|
|
290
390
|
}
|
|
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 {{
|
|
391
|
+
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 });
|
|
392
|
+
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
393
|
i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "13.1.1", ngImport: i0, type: BsCalendarComponent, decorators: [{
|
|
294
394
|
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 }]; }
|
|
395
|
+
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"] }]
|
|
396
|
+
}], ctorParameters: function () { return [{ type: BsCalendarMonthService }, { type: i0.ChangeDetectorRef }]; }, propDecorators: { currentMonthChange: [{
|
|
397
|
+
type: Output
|
|
398
|
+
}], currentMonth: [{
|
|
399
|
+
type: Input
|
|
400
|
+
}], selectedDateChange: [{
|
|
401
|
+
type: Output
|
|
402
|
+
}], selectedDate: [{
|
|
403
|
+
type: Input
|
|
404
|
+
}] } });
|
|
297
405
|
|
|
298
406
|
class BsMonthNamePipeModule {
|
|
299
407
|
}
|
|
@@ -406,6 +514,56 @@ i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "13.1.1", ngImpor
|
|
|
406
514
|
}]
|
|
407
515
|
}] });
|
|
408
516
|
|
|
517
|
+
class BsCardComponent {
|
|
518
|
+
constructor() {
|
|
519
|
+
}
|
|
520
|
+
ngOnInit() {
|
|
521
|
+
}
|
|
522
|
+
ngAfterViewInit() {
|
|
523
|
+
}
|
|
524
|
+
}
|
|
525
|
+
BsCardComponent.ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "13.1.1", ngImport: i0, type: BsCardComponent, deps: [], target: i0.ɵɵFactoryTarget.Component });
|
|
526
|
+
BsCardComponent.ɵcmp = i0.ɵɵngDeclareComponent({ minVersion: "12.0.0", version: "13.1.1", type: BsCardComponent, selector: "bs-card", ngImport: i0, template: "<div class=\"card\" style=\"width: 18rem;\">\n <ng-content select=\"bs-card-header\"></ng-content>\n <div class=\"card-block\">\n <ng-content></ng-content>\n </div>\n</div>", styles: [".card-block{margin:-1px}\n"] });
|
|
527
|
+
i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "13.1.1", ngImport: i0, type: BsCardComponent, decorators: [{
|
|
528
|
+
type: Component,
|
|
529
|
+
args: [{ selector: 'bs-card', template: "<div class=\"card\" style=\"width: 18rem;\">\n <ng-content select=\"bs-card-header\"></ng-content>\n <div class=\"card-block\">\n <ng-content></ng-content>\n </div>\n</div>", styles: [".card-block{margin:-1px}\n"] }]
|
|
530
|
+
}], ctorParameters: function () { return []; } });
|
|
531
|
+
|
|
532
|
+
class BsCardHeaderComponent {
|
|
533
|
+
constructor() {
|
|
534
|
+
}
|
|
535
|
+
ngOnInit() {
|
|
536
|
+
}
|
|
537
|
+
}
|
|
538
|
+
BsCardHeaderComponent.ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "13.1.1", ngImport: i0, type: BsCardHeaderComponent, deps: [], target: i0.ɵɵFactoryTarget.Component });
|
|
539
|
+
BsCardHeaderComponent.ɵcmp = i0.ɵɵngDeclareComponent({ minVersion: "12.0.0", version: "13.1.1", type: BsCardHeaderComponent, selector: "bs-card-header", ngImport: i0, template: "<div class=\"card-header\">\n <ng-content></ng-content>\n</div>", styles: [""] });
|
|
540
|
+
i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "13.1.1", ngImport: i0, type: BsCardHeaderComponent, decorators: [{
|
|
541
|
+
type: Component,
|
|
542
|
+
args: [{ selector: 'bs-card-header', template: "<div class=\"card-header\">\n <ng-content></ng-content>\n</div>", styles: [""] }]
|
|
543
|
+
}], ctorParameters: function () { return []; } });
|
|
544
|
+
|
|
545
|
+
class BsCardModule {
|
|
546
|
+
}
|
|
547
|
+
BsCardModule.ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "13.1.1", ngImport: i0, type: BsCardModule, deps: [], target: i0.ɵɵFactoryTarget.NgModule });
|
|
548
|
+
BsCardModule.ɵmod = i0.ɵɵngDeclareNgModule({ minVersion: "12.0.0", version: "13.1.1", ngImport: i0, type: BsCardModule, declarations: [BsCardComponent,
|
|
549
|
+
BsCardHeaderComponent], imports: [CommonModule], exports: [BsCardComponent,
|
|
550
|
+
BsCardHeaderComponent] });
|
|
551
|
+
BsCardModule.ɵinj = i0.ɵɵngDeclareInjector({ minVersion: "12.0.0", version: "13.1.1", ngImport: i0, type: BsCardModule, imports: [[CommonModule]] });
|
|
552
|
+
i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "13.1.1", ngImport: i0, type: BsCardModule, decorators: [{
|
|
553
|
+
type: NgModule,
|
|
554
|
+
args: [{
|
|
555
|
+
imports: [CommonModule],
|
|
556
|
+
declarations: [
|
|
557
|
+
BsCardComponent,
|
|
558
|
+
BsCardHeaderComponent
|
|
559
|
+
],
|
|
560
|
+
exports: [
|
|
561
|
+
BsCardComponent,
|
|
562
|
+
BsCardHeaderComponent
|
|
563
|
+
]
|
|
564
|
+
}]
|
|
565
|
+
}] });
|
|
566
|
+
|
|
409
567
|
class BsCarouselImageDirective {
|
|
410
568
|
constructor(templateRef) {
|
|
411
569
|
this.templateRef = templateRef;
|
|
@@ -423,20 +581,21 @@ i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "13.1.1", ngImpor
|
|
|
423
581
|
|
|
424
582
|
class BsCarouselComponent {
|
|
425
583
|
constructor() {
|
|
426
|
-
|
|
427
|
-
|
|
428
|
-
this.
|
|
584
|
+
this.animationsDisabled = false;
|
|
585
|
+
//#region Animation
|
|
586
|
+
this._animation = 'slide';
|
|
587
|
+
//#endregion
|
|
429
588
|
this.destroyed$ = new Subject();
|
|
430
589
|
this.currentImageCounter$ = new BehaviorSubject(-1);
|
|
431
590
|
this.currentImageIndex$ = this.currentImageCounter$
|
|
432
|
-
.pipe(map((counter) => {
|
|
591
|
+
.pipe(map$1((counter) => {
|
|
433
592
|
const l = this.images.length;
|
|
434
593
|
return ((counter % l) + l) % l;
|
|
435
594
|
}))
|
|
436
|
-
.pipe(takeUntil(this.destroyed$));
|
|
595
|
+
.pipe(takeUntil$1(this.destroyed$));
|
|
437
596
|
this.currentImage$ = this.currentImageIndex$
|
|
438
|
-
.pipe(map((index) => this.images.get(index)?.itemTemplate ?? null))
|
|
439
|
-
.pipe(takeUntil(this.destroyed$));
|
|
597
|
+
.pipe(map$1((index) => this.images.get(index)?.itemTemplate ?? null))
|
|
598
|
+
.pipe(takeUntil$1(this.destroyed$));
|
|
440
599
|
}
|
|
441
600
|
ngOnInit() { }
|
|
442
601
|
ngOnDestroy() {
|
|
@@ -450,16 +609,26 @@ class BsCarouselComponent {
|
|
|
450
609
|
this.currentImageCounter$.next(-1);
|
|
451
610
|
}
|
|
452
611
|
}
|
|
612
|
+
set animation(value) {
|
|
613
|
+
this.animationsDisabled = true;
|
|
614
|
+
this._animation = value;
|
|
615
|
+
setTimeout(() => {
|
|
616
|
+
this.animationsDisabled = false;
|
|
617
|
+
}, 20);
|
|
618
|
+
}
|
|
619
|
+
get animation() {
|
|
620
|
+
return this._animation;
|
|
621
|
+
}
|
|
453
622
|
previousImage() {
|
|
454
623
|
this.currentImageCounter$
|
|
455
|
-
.pipe(take(1))
|
|
624
|
+
.pipe(take$1(1))
|
|
456
625
|
.subscribe((currentImageCounter) => {
|
|
457
626
|
this.currentImageCounter$.next(currentImageCounter - 1);
|
|
458
627
|
});
|
|
459
628
|
}
|
|
460
629
|
nextImage() {
|
|
461
630
|
this.currentImageCounter$
|
|
462
|
-
.pipe(take(1))
|
|
631
|
+
.pipe(take$1(1))
|
|
463
632
|
.subscribe((currentImageCounter) => {
|
|
464
633
|
this.currentImageCounter$.next(currentImageCounter + 1);
|
|
465
634
|
});
|
|
@@ -473,11 +642,14 @@ class BsCarouselComponent {
|
|
|
473
642
|
}
|
|
474
643
|
}
|
|
475
644
|
BsCarouselComponent.ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "13.1.1", ngImport: i0, type: BsCarouselComponent, deps: [], target: i0.ɵɵFactoryTarget.Component });
|
|
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\"\n [attr.aria-current]=\"(currentImageIndex$ | async) === i ? true : null\"\n [attr.aria-label]=\"'Slide ' + i\"></button>\n </div>\n\n
|
|
645
|
+
BsCarouselComponent.ɵcmp = i0.ɵɵngDeclareComponent({ minVersion: "12.0.0", version: "13.1.1", type: BsCarouselComponent, selector: "bs-carousel", inputs: { animation: "animation" }, host: { properties: { "@.disabled": "this.animationsDisabled" } }, 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] });
|
|
477
646
|
i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "13.1.1", ngImport: i0, type: BsCarouselComponent, decorators: [{
|
|
478
647
|
type: Component,
|
|
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\"\n [attr.aria-current]=\"(currentImageIndex$ | async) === i ? true : null\"\n [attr.aria-label]=\"'Slide ' + i\"></button>\n </div>\n\n
|
|
480
|
-
}], ctorParameters: function () { return []; }, propDecorators: {
|
|
648
|
+
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"] }]
|
|
649
|
+
}], ctorParameters: function () { return []; }, propDecorators: { animationsDisabled: [{
|
|
650
|
+
type: HostBinding,
|
|
651
|
+
args: ['@.disabled']
|
|
652
|
+
}], animation: [{
|
|
481
653
|
type: Input
|
|
482
654
|
}], images: [{
|
|
483
655
|
type: ContentChildren,
|
|
@@ -510,26 +682,639 @@ i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "13.1.1", ngImpor
|
|
|
510
682
|
}]
|
|
511
683
|
}] });
|
|
512
684
|
|
|
513
|
-
class
|
|
514
|
-
constructor() {
|
|
685
|
+
class BsContextMenuDirective {
|
|
686
|
+
constructor(overlay, templateRef, viewContainerRef, element) {
|
|
687
|
+
this.overlay = overlay;
|
|
688
|
+
this.templateRef = templateRef;
|
|
689
|
+
this.viewContainerRef = viewContainerRef;
|
|
690
|
+
this.element = element;
|
|
691
|
+
this.overlayRef = null;
|
|
692
|
+
this.templatePortal = null;
|
|
693
|
+
this.element.nativeElement.oncontextmenu = (ev) => {
|
|
694
|
+
ev.preventDefault();
|
|
695
|
+
this.checkAndCloseExisting(ev);
|
|
696
|
+
this.overlayRef = this.overlay.create({
|
|
697
|
+
scrollStrategy: this.overlay.scrollStrategies.noop(),
|
|
698
|
+
positionStrategy: this.overlay.position()
|
|
699
|
+
.global()
|
|
700
|
+
.left(ev.x + 'px')
|
|
701
|
+
.bottom((window.innerHeight - ev.y) + 'px')
|
|
702
|
+
.top(ev.y + 'px')
|
|
703
|
+
});
|
|
704
|
+
this.templatePortal = new TemplatePortal(this.templateRef, this.viewContainerRef);
|
|
705
|
+
this.overlayRef.attach(this.templatePortal);
|
|
706
|
+
};
|
|
515
707
|
}
|
|
516
|
-
|
|
708
|
+
clickAnywhere(ev) {
|
|
709
|
+
this.checkAndCloseExisting(ev);
|
|
710
|
+
}
|
|
711
|
+
checkAndCloseExisting(ev) {
|
|
712
|
+
if (this.overlayRef) {
|
|
713
|
+
if (!this.overlayRef.overlayElement.contains(ev.target)) {
|
|
714
|
+
this.overlayRef.detach();
|
|
715
|
+
this.overlayRef.dispose();
|
|
716
|
+
this.overlayRef = null;
|
|
717
|
+
}
|
|
718
|
+
}
|
|
517
719
|
}
|
|
518
720
|
}
|
|
519
|
-
|
|
520
|
-
|
|
521
|
-
i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "13.1.1", ngImport: i0, type:
|
|
522
|
-
type:
|
|
523
|
-
args: [{
|
|
524
|
-
|
|
721
|
+
BsContextMenuDirective.ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "13.1.1", ngImport: i0, type: BsContextMenuDirective, deps: [{ token: i1$1.Overlay }, { token: i0.TemplateRef }, { token: i0.ViewContainerRef }, { token: i0.ElementRef, host: true, skipSelf: true }], target: i0.ɵɵFactoryTarget.Directive });
|
|
722
|
+
BsContextMenuDirective.ɵdir = i0.ɵɵngDeclareDirective({ minVersion: "12.0.0", version: "13.1.1", type: BsContextMenuDirective, selector: "[bsContextMenu]", host: { listeners: { "document:click": "clickAnywhere($event)" } }, ngImport: i0 });
|
|
723
|
+
i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "13.1.1", ngImport: i0, type: BsContextMenuDirective, decorators: [{
|
|
724
|
+
type: Directive,
|
|
725
|
+
args: [{
|
|
726
|
+
selector: '[bsContextMenu]'
|
|
727
|
+
}]
|
|
728
|
+
}], ctorParameters: function () { return [{ type: i1$1.Overlay }, { type: i0.TemplateRef }, { type: i0.ViewContainerRef }, { type: i0.ElementRef, decorators: [{
|
|
729
|
+
type: Host
|
|
730
|
+
}, {
|
|
731
|
+
type: SkipSelf
|
|
732
|
+
}] }]; }, propDecorators: { clickAnywhere: [{
|
|
733
|
+
type: HostListener,
|
|
734
|
+
args: ['document:click', ['$event']]
|
|
735
|
+
}] } });
|
|
525
736
|
|
|
526
|
-
class
|
|
527
|
-
constructor() {
|
|
528
|
-
}
|
|
529
|
-
ngOnInit() {
|
|
530
|
-
}
|
|
737
|
+
class BsContextMenuModule {
|
|
531
738
|
}
|
|
532
|
-
|
|
739
|
+
BsContextMenuModule.ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "13.1.1", ngImport: i0, type: BsContextMenuModule, deps: [], target: i0.ɵɵFactoryTarget.NgModule });
|
|
740
|
+
BsContextMenuModule.ɵmod = i0.ɵɵngDeclareNgModule({ minVersion: "12.0.0", version: "13.1.1", ngImport: i0, type: BsContextMenuModule, declarations: [BsContextMenuDirective], imports: [CommonModule], exports: [BsContextMenuDirective] });
|
|
741
|
+
BsContextMenuModule.ɵinj = i0.ɵɵngDeclareInjector({ minVersion: "12.0.0", version: "13.1.1", ngImport: i0, type: BsContextMenuModule, imports: [[
|
|
742
|
+
CommonModule
|
|
743
|
+
]] });
|
|
744
|
+
i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "13.1.1", ngImport: i0, type: BsContextMenuModule, decorators: [{
|
|
745
|
+
type: NgModule,
|
|
746
|
+
args: [{
|
|
747
|
+
declarations: [
|
|
748
|
+
BsContextMenuDirective
|
|
749
|
+
],
|
|
750
|
+
imports: [
|
|
751
|
+
CommonModule
|
|
752
|
+
],
|
|
753
|
+
exports: [
|
|
754
|
+
BsContextMenuDirective
|
|
755
|
+
]
|
|
756
|
+
}]
|
|
757
|
+
}] });
|
|
758
|
+
|
|
759
|
+
class BsDatatableColumnDirective {
|
|
760
|
+
constructor(templateRef) {
|
|
761
|
+
this.bsDatatableColumn = { name: '', sortable: true };
|
|
762
|
+
this.templateRef = templateRef;
|
|
763
|
+
}
|
|
764
|
+
}
|
|
765
|
+
BsDatatableColumnDirective.ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "13.1.1", ngImport: i0, type: BsDatatableColumnDirective, deps: [{ token: i0.TemplateRef }], target: i0.ɵɵFactoryTarget.Directive });
|
|
766
|
+
BsDatatableColumnDirective.ɵdir = i0.ɵɵngDeclareDirective({ minVersion: "12.0.0", version: "13.1.1", type: BsDatatableColumnDirective, selector: "[bsDatatableColumn]", inputs: { bsDatatableColumn: "bsDatatableColumn" }, ngImport: i0 });
|
|
767
|
+
i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "13.1.1", ngImport: i0, type: BsDatatableColumnDirective, decorators: [{
|
|
768
|
+
type: Directive,
|
|
769
|
+
args: [{
|
|
770
|
+
selector: '[bsDatatableColumn]'
|
|
771
|
+
}]
|
|
772
|
+
}], ctorParameters: function () { return [{ type: i0.TemplateRef }]; }, propDecorators: { bsDatatableColumn: [{
|
|
773
|
+
type: Input
|
|
774
|
+
}] } });
|
|
775
|
+
|
|
776
|
+
class DatatableSettings {
|
|
777
|
+
constructor(data) {
|
|
778
|
+
this.sortProperty = '';
|
|
779
|
+
this.sortDirection = 'ascending';
|
|
780
|
+
Object.assign(this, data);
|
|
781
|
+
if (data && data.perPage) {
|
|
782
|
+
this.perPage = data.perPage;
|
|
783
|
+
}
|
|
784
|
+
else {
|
|
785
|
+
// Set default value
|
|
786
|
+
this.perPage = {
|
|
787
|
+
values: [10, 20, 50],
|
|
788
|
+
selected: 20
|
|
789
|
+
};
|
|
790
|
+
}
|
|
791
|
+
if (data && data.page) {
|
|
792
|
+
this.page = data.page;
|
|
793
|
+
}
|
|
794
|
+
else {
|
|
795
|
+
// Set default value
|
|
796
|
+
this.page = {
|
|
797
|
+
values: [1],
|
|
798
|
+
selected: 1
|
|
799
|
+
};
|
|
800
|
+
}
|
|
801
|
+
}
|
|
802
|
+
toPagination() {
|
|
803
|
+
const res = {
|
|
804
|
+
sortProperty: this.sortProperty,
|
|
805
|
+
sortDirection: this.sortDirection,
|
|
806
|
+
perPage: this.perPage.selected,
|
|
807
|
+
page: this.page.selected
|
|
808
|
+
};
|
|
809
|
+
return res;
|
|
810
|
+
}
|
|
811
|
+
}
|
|
812
|
+
|
|
813
|
+
class BsPaginationComponent {
|
|
814
|
+
constructor() {
|
|
815
|
+
/** All page numbers. */
|
|
816
|
+
this.pageNumbers$ = new BehaviorSubject([]);
|
|
817
|
+
/** Selected number. */
|
|
818
|
+
this.selectedPageNumber$ = new BehaviorSubject(1);
|
|
819
|
+
/** Number of boxes. */
|
|
820
|
+
this.numberOfBoxes$ = new BehaviorSubject(0);
|
|
821
|
+
/** Display previous/next arrows. */
|
|
822
|
+
this.showArrows$ = new BehaviorSubject(true);
|
|
823
|
+
/** Indicates if first value is selected. */
|
|
824
|
+
this.isFirstPage$ = new Observable();
|
|
825
|
+
/** Indicates if last value is selected. */
|
|
826
|
+
this.isLastPage$ = new Observable();
|
|
827
|
+
/** The number of boxes (excluding arrows) that's being shown on the pagination component. */
|
|
828
|
+
this.visibleNumberOfNumberBoxes$ = new Observable();
|
|
829
|
+
this._selectedPageNumber = 0;
|
|
830
|
+
this.selectedPageNumberChange = new EventEmitter();
|
|
831
|
+
this._numberOfBoxes = 0;
|
|
832
|
+
this._pageNumbers = [];
|
|
833
|
+
this._showArrows = true;
|
|
834
|
+
this.destroyed$ = new Subject();
|
|
835
|
+
this.visibleNumberOfNumberBoxes$ =
|
|
836
|
+
combineLatest([this.numberOfBoxes$, this.pageNumbers$, this.showArrows$])
|
|
837
|
+
.pipe(takeUntil(this.destroyed$))
|
|
838
|
+
.pipe(map(([numberOfBoxes, pageNumbers, showArrows]) => {
|
|
839
|
+
if (numberOfBoxes <= 0) {
|
|
840
|
+
return pageNumbers.length;
|
|
841
|
+
}
|
|
842
|
+
else if (!showArrows) {
|
|
843
|
+
return Math.min(numberOfBoxes, pageNumbers.length);
|
|
844
|
+
}
|
|
845
|
+
else if (numberOfBoxes <= 2) {
|
|
846
|
+
return Math.min(1, pageNumbers.length);
|
|
847
|
+
}
|
|
848
|
+
else {
|
|
849
|
+
return Math.min(numberOfBoxes - 2, pageNumbers.length);
|
|
850
|
+
}
|
|
851
|
+
}));
|
|
852
|
+
this.shownPageNumbers$ =
|
|
853
|
+
combineLatest([this.pageNumbers$, this.selectedPageNumber$, this.visibleNumberOfNumberBoxes$])
|
|
854
|
+
.pipe(takeUntil(this.destroyed$))
|
|
855
|
+
.pipe(map(([pageNumbers, selectedPageNumber, visibleNumberOfNumberBoxes]) => {
|
|
856
|
+
let startIndex = 0;
|
|
857
|
+
const half = Math.round((visibleNumberOfNumberBoxes - 1) / 2);
|
|
858
|
+
if (pageNumbers.indexOf(selectedPageNumber) < half) {
|
|
859
|
+
startIndex = 0;
|
|
860
|
+
}
|
|
861
|
+
else if (pageNumbers.indexOf(selectedPageNumber) >= (pageNumbers.length - half)) {
|
|
862
|
+
startIndex = pageNumbers.length - visibleNumberOfNumberBoxes;
|
|
863
|
+
}
|
|
864
|
+
else {
|
|
865
|
+
startIndex = pageNumbers.indexOf(selectedPageNumber) - half;
|
|
866
|
+
}
|
|
867
|
+
return [...Array(visibleNumberOfNumberBoxes).keys()]
|
|
868
|
+
.map(p => p + startIndex)
|
|
869
|
+
.map(p => ({
|
|
870
|
+
page: pageNumbers[p],
|
|
871
|
+
selected: pageNumbers[p] === selectedPageNumber
|
|
872
|
+
}));
|
|
873
|
+
}));
|
|
874
|
+
this.isFirstPage$ =
|
|
875
|
+
combineLatest([this.pageNumbers$, this.selectedPageNumber$])
|
|
876
|
+
.pipe(takeUntil(this.destroyed$))
|
|
877
|
+
.pipe(map(([pageNumbers, selectedPageNumber]) => {
|
|
878
|
+
return pageNumbers.indexOf(selectedPageNumber) === 0;
|
|
879
|
+
}));
|
|
880
|
+
this.isLastPage$ =
|
|
881
|
+
combineLatest([this.pageNumbers$, this.selectedPageNumber$])
|
|
882
|
+
.pipe(takeUntil(this.destroyed$))
|
|
883
|
+
.pipe(map(([pageNumbers, selectedPageNumber]) => {
|
|
884
|
+
return pageNumbers.indexOf(selectedPageNumber) === (pageNumbers.length - 1);
|
|
885
|
+
}));
|
|
886
|
+
this.selectedPageNumber$
|
|
887
|
+
.pipe(takeUntil(this.destroyed$))
|
|
888
|
+
.subscribe((selectedPageNumber) => {
|
|
889
|
+
this.selectedPageNumberChange.emit(selectedPageNumber);
|
|
890
|
+
});
|
|
891
|
+
}
|
|
892
|
+
ngOnInit() {
|
|
893
|
+
}
|
|
894
|
+
ngOnDestroy() {
|
|
895
|
+
this.destroyed$.next(true);
|
|
896
|
+
}
|
|
897
|
+
onSelectPage(event, page) {
|
|
898
|
+
this.selectedPageNumber$.next(page);
|
|
899
|
+
return false;
|
|
900
|
+
}
|
|
901
|
+
onPrevious() {
|
|
902
|
+
this.selectedPageNumber$.next(this.selectedPageNumber$.value - 1);
|
|
903
|
+
return false;
|
|
904
|
+
}
|
|
905
|
+
onNext() {
|
|
906
|
+
this.selectedPageNumber$.next(this.selectedPageNumber$.value + 1);
|
|
907
|
+
return false;
|
|
908
|
+
}
|
|
909
|
+
set selectedPageNumber(value) {
|
|
910
|
+
this._selectedPageNumber = value;
|
|
911
|
+
this.selectedPageNumber$.next(value);
|
|
912
|
+
}
|
|
913
|
+
get selectedPageNumber() {
|
|
914
|
+
return this._selectedPageNumber;
|
|
915
|
+
}
|
|
916
|
+
set numberOfBoxes(value) {
|
|
917
|
+
this._numberOfBoxes = value;
|
|
918
|
+
this.numberOfBoxes$.next(value);
|
|
919
|
+
}
|
|
920
|
+
get numberOfBoxes() {
|
|
921
|
+
return this._numberOfBoxes;
|
|
922
|
+
}
|
|
923
|
+
set pageNumbers(value) {
|
|
924
|
+
this._pageNumbers = value;
|
|
925
|
+
this.pageNumbers$.next(value);
|
|
926
|
+
}
|
|
927
|
+
get pageNumbers() {
|
|
928
|
+
return this._pageNumbers;
|
|
929
|
+
}
|
|
930
|
+
set showArrows(value) {
|
|
931
|
+
this._showArrows = value;
|
|
932
|
+
this.showArrows$.next(value);
|
|
933
|
+
}
|
|
934
|
+
get showArrows() {
|
|
935
|
+
return this._showArrows;
|
|
936
|
+
}
|
|
937
|
+
}
|
|
938
|
+
BsPaginationComponent.ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "13.1.1", ngImport: i0, type: BsPaginationComponent, deps: [], target: i0.ɵɵFactoryTarget.Component });
|
|
939
|
+
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 } });
|
|
940
|
+
i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "13.1.1", ngImport: i0, type: BsPaginationComponent, decorators: [{
|
|
941
|
+
type: Component,
|
|
942
|
+
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"] }]
|
|
943
|
+
}], ctorParameters: function () { return []; }, propDecorators: { selectedPageNumberChange: [{
|
|
944
|
+
type: Output
|
|
945
|
+
}], selectedPageNumber: [{
|
|
946
|
+
type: Input
|
|
947
|
+
}], numberOfBoxes: [{
|
|
948
|
+
type: Input
|
|
949
|
+
}], pageNumbers: [{
|
|
950
|
+
type: Input
|
|
951
|
+
}], showArrows: [{
|
|
952
|
+
type: Input
|
|
953
|
+
}] } });
|
|
954
|
+
|
|
955
|
+
class BsDatatableComponent {
|
|
956
|
+
constructor() {
|
|
957
|
+
this.columns = [];
|
|
958
|
+
this.onReloadData = new EventEmitter();
|
|
959
|
+
this.settings = new DatatableSettings();
|
|
960
|
+
this.settings.sortProperty = '';
|
|
961
|
+
this.settings.sortDirection = 'ascending';
|
|
962
|
+
this.settings.perPage = { values: [10, 20, 50], selected: 20 };
|
|
963
|
+
this.settings.page = { values: [1], selected: 1 };
|
|
964
|
+
}
|
|
965
|
+
columnHeaderClicked(column) {
|
|
966
|
+
if (column.bsDatatableColumn.sortable) {
|
|
967
|
+
if (this.settings.sortProperty !== column.bsDatatableColumn.name) {
|
|
968
|
+
this.settings.sortProperty = column.bsDatatableColumn.name;
|
|
969
|
+
this.settings.sortDirection = 'ascending';
|
|
970
|
+
}
|
|
971
|
+
else if (this.settings.sortDirection === 'descending') {
|
|
972
|
+
this.settings.sortDirection = 'ascending';
|
|
973
|
+
}
|
|
974
|
+
else {
|
|
975
|
+
this.settings.sortDirection = 'descending';
|
|
976
|
+
}
|
|
977
|
+
this.onReloadData.emit();
|
|
978
|
+
}
|
|
979
|
+
}
|
|
980
|
+
ngOnInit() {
|
|
981
|
+
}
|
|
982
|
+
}
|
|
983
|
+
BsDatatableComponent.ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "13.1.1", ngImport: i0, type: BsDatatableComponent, deps: [], target: i0.ɵɵFactoryTarget.Component });
|
|
984
|
+
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"] }] });
|
|
985
|
+
i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "13.1.1", ngImport: i0, type: BsDatatableComponent, decorators: [{
|
|
986
|
+
type: Component,
|
|
987
|
+
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"] }]
|
|
988
|
+
}], ctorParameters: function () { return []; }, propDecorators: { columns: [{
|
|
989
|
+
type: ContentChildren,
|
|
990
|
+
args: [BsDatatableColumnDirective]
|
|
991
|
+
}], settings: [{
|
|
992
|
+
type: Input
|
|
993
|
+
}], data: [{
|
|
994
|
+
type: Input
|
|
995
|
+
}], onReloadData: [{
|
|
996
|
+
type: Output
|
|
997
|
+
}] } });
|
|
998
|
+
|
|
999
|
+
class BsRowTemplateDirective {
|
|
1000
|
+
constructor(datatableComponent, templateRef) {
|
|
1001
|
+
this.datatableComponent = datatableComponent;
|
|
1002
|
+
this.datatableComponent.rowTemplate = templateRef;
|
|
1003
|
+
}
|
|
1004
|
+
}
|
|
1005
|
+
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 });
|
|
1006
|
+
BsRowTemplateDirective.ɵdir = i0.ɵɵngDeclareDirective({ minVersion: "12.0.0", version: "13.1.1", type: BsRowTemplateDirective, selector: "[rowTemplate]", ngImport: i0 });
|
|
1007
|
+
i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "13.1.1", ngImport: i0, type: BsRowTemplateDirective, decorators: [{
|
|
1008
|
+
type: Directive,
|
|
1009
|
+
args: [{
|
|
1010
|
+
selector: '[rowTemplate]'
|
|
1011
|
+
}]
|
|
1012
|
+
}], ctorParameters: function () { return [{ type: BsDatatableComponent }, { type: i0.TemplateRef }]; } });
|
|
1013
|
+
|
|
1014
|
+
class BsPaginationModule {
|
|
1015
|
+
}
|
|
1016
|
+
BsPaginationModule.ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "13.1.1", ngImport: i0, type: BsPaginationModule, deps: [], target: i0.ɵɵFactoryTarget.NgModule });
|
|
1017
|
+
BsPaginationModule.ɵmod = i0.ɵɵngDeclareNgModule({ minVersion: "12.0.0", version: "13.1.1", ngImport: i0, type: BsPaginationModule, declarations: [BsPaginationComponent], imports: [CommonModule], exports: [BsPaginationComponent] });
|
|
1018
|
+
BsPaginationModule.ɵinj = i0.ɵɵngDeclareInjector({ minVersion: "12.0.0", version: "13.1.1", ngImport: i0, type: BsPaginationModule, imports: [[
|
|
1019
|
+
CommonModule
|
|
1020
|
+
]] });
|
|
1021
|
+
i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "13.1.1", ngImport: i0, type: BsPaginationModule, decorators: [{
|
|
1022
|
+
type: NgModule,
|
|
1023
|
+
args: [{
|
|
1024
|
+
declarations: [
|
|
1025
|
+
BsPaginationComponent
|
|
1026
|
+
],
|
|
1027
|
+
imports: [
|
|
1028
|
+
CommonModule
|
|
1029
|
+
],
|
|
1030
|
+
exports: [
|
|
1031
|
+
BsPaginationComponent
|
|
1032
|
+
]
|
|
1033
|
+
}]
|
|
1034
|
+
}] });
|
|
1035
|
+
|
|
1036
|
+
class BsDatatableModule {
|
|
1037
|
+
}
|
|
1038
|
+
BsDatatableModule.ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "13.1.1", ngImport: i0, type: BsDatatableModule, deps: [], target: i0.ɵɵFactoryTarget.NgModule });
|
|
1039
|
+
BsDatatableModule.ɵmod = i0.ɵɵngDeclareNgModule({ minVersion: "12.0.0", version: "13.1.1", ngImport: i0, type: BsDatatableModule, declarations: [BsDatatableComponent,
|
|
1040
|
+
BsRowTemplateDirective,
|
|
1041
|
+
BsDatatableColumnDirective], imports: [CommonModule,
|
|
1042
|
+
BsPaginationModule], exports: [BsDatatableComponent,
|
|
1043
|
+
BsRowTemplateDirective,
|
|
1044
|
+
BsDatatableColumnDirective] });
|
|
1045
|
+
BsDatatableModule.ɵinj = i0.ɵɵngDeclareInjector({ minVersion: "12.0.0", version: "13.1.1", ngImport: i0, type: BsDatatableModule, imports: [[
|
|
1046
|
+
CommonModule,
|
|
1047
|
+
BsPaginationModule
|
|
1048
|
+
]] });
|
|
1049
|
+
i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "13.1.1", ngImport: i0, type: BsDatatableModule, decorators: [{
|
|
1050
|
+
type: NgModule,
|
|
1051
|
+
args: [{
|
|
1052
|
+
declarations: [
|
|
1053
|
+
BsDatatableComponent,
|
|
1054
|
+
BsRowTemplateDirective,
|
|
1055
|
+
BsDatatableColumnDirective
|
|
1056
|
+
],
|
|
1057
|
+
imports: [
|
|
1058
|
+
CommonModule,
|
|
1059
|
+
BsPaginationModule
|
|
1060
|
+
],
|
|
1061
|
+
exports: [
|
|
1062
|
+
BsDatatableComponent,
|
|
1063
|
+
BsRowTemplateDirective,
|
|
1064
|
+
BsDatatableColumnDirective
|
|
1065
|
+
]
|
|
1066
|
+
}]
|
|
1067
|
+
}] });
|
|
1068
|
+
|
|
1069
|
+
class BsDropdownMenuDirective extends ClickOutsideDirective {
|
|
1070
|
+
constructor(dropdown, document, viewContainerRef, templateRef, overlay, elementRef, zone, platformId) {
|
|
1071
|
+
super(elementRef, zone, platformId);
|
|
1072
|
+
this.dropdown = dropdown;
|
|
1073
|
+
this.viewContainerRef = viewContainerRef;
|
|
1074
|
+
this.templateRef = templateRef;
|
|
1075
|
+
this.overlay = overlay;
|
|
1076
|
+
this.wait = false;
|
|
1077
|
+
this.destroyed$ = new Subject();
|
|
1078
|
+
this.overlayRef = null;
|
|
1079
|
+
this.templatePortal = null;
|
|
1080
|
+
this.document = document;
|
|
1081
|
+
this.dropdown.isOpen$
|
|
1082
|
+
.pipe(takeUntil(this.destroyed$))
|
|
1083
|
+
.subscribe((isOpen) => {
|
|
1084
|
+
if (isOpen) {
|
|
1085
|
+
this.wait = true;
|
|
1086
|
+
setTimeout(() => this.wait = false, 100);
|
|
1087
|
+
this.overlayRef = this.overlay.create({
|
|
1088
|
+
hasBackdrop: this.dropdown.hasBackdrop,
|
|
1089
|
+
scrollStrategy: this.overlay.scrollStrategies.reposition(),
|
|
1090
|
+
positionStrategy: this.overlay.position()
|
|
1091
|
+
.flexibleConnectedTo(!this.dropdown.toggle ? dropdown.elementRef : this.dropdown.toggle.toggleButton)
|
|
1092
|
+
.withPositions([
|
|
1093
|
+
{ originX: "start", originY: "bottom", overlayX: "start", overlayY: "top", offsetY: 0 },
|
|
1094
|
+
{ originX: "start", originY: "top", overlayX: "start", overlayY: "bottom", offsetY: 0 },
|
|
1095
|
+
]),
|
|
1096
|
+
});
|
|
1097
|
+
if (this.dropdown.hasBackdrop && this.dropdown.closeOnClickOutside) {
|
|
1098
|
+
this.overlayRef.backdropClick().subscribe(() => {
|
|
1099
|
+
this.dropdown.isOpen = false;
|
|
1100
|
+
});
|
|
1101
|
+
}
|
|
1102
|
+
this.templatePortal = new TemplatePortal(this.templateRef, this.viewContainerRef);
|
|
1103
|
+
this.overlayRef.attach(this.templatePortal);
|
|
1104
|
+
}
|
|
1105
|
+
else {
|
|
1106
|
+
if (this.overlayRef) {
|
|
1107
|
+
this.overlayRef.detach();
|
|
1108
|
+
this.overlayRef.dispose();
|
|
1109
|
+
this.overlayRef = null;
|
|
1110
|
+
}
|
|
1111
|
+
}
|
|
1112
|
+
});
|
|
1113
|
+
}
|
|
1114
|
+
clickedOutside(ev) {
|
|
1115
|
+
if (!this.wait) {
|
|
1116
|
+
if (!this.overlayRef?.overlayElement.contains(ev.target)) {
|
|
1117
|
+
this.dropdown.isOpen$.pipe(take(1)).subscribe((isOpen) => {
|
|
1118
|
+
if (isOpen && !this.dropdown.hasBackdrop && this.dropdown.closeOnClickOutside) {
|
|
1119
|
+
this.dropdown.isOpen = false;
|
|
1120
|
+
}
|
|
1121
|
+
});
|
|
1122
|
+
}
|
|
1123
|
+
}
|
|
1124
|
+
}
|
|
1125
|
+
}
|
|
1126
|
+
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$1.Overlay }, { token: i0.ElementRef }, { token: i0.NgZone }, { token: PLATFORM_ID }], target: i0.ɵɵFactoryTarget.Directive });
|
|
1127
|
+
BsDropdownMenuDirective.ɵdir = i0.ɵɵngDeclareDirective({ minVersion: "12.0.0", version: "13.1.1", type: BsDropdownMenuDirective, selector: "[bsDropdownMenu]", host: { listeners: { "clickOutside": "clickedOutside($event)" }, properties: { "class.show": "dropdown.isOpen" } }, usesInheritance: true, ngImport: i0 });
|
|
1128
|
+
i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "13.1.1", ngImport: i0, type: BsDropdownMenuDirective, decorators: [{
|
|
1129
|
+
type: Directive,
|
|
1130
|
+
args: [{
|
|
1131
|
+
selector: '[bsDropdownMenu]',
|
|
1132
|
+
host: {
|
|
1133
|
+
'[class.show]': 'dropdown.isOpen',
|
|
1134
|
+
},
|
|
1135
|
+
}]
|
|
1136
|
+
}], ctorParameters: function () { return [{ type: BsDropdownDirective, decorators: [{
|
|
1137
|
+
type: Inject,
|
|
1138
|
+
args: [forwardRef(() => BsDropdownDirective)]
|
|
1139
|
+
}] }, { type: undefined, decorators: [{
|
|
1140
|
+
type: Inject,
|
|
1141
|
+
args: [DOCUMENT]
|
|
1142
|
+
}] }, { type: i0.ViewContainerRef }, { type: i0.TemplateRef }, { type: i1$1.Overlay }, { type: i0.ElementRef }, { type: i0.NgZone }, { type: Object, decorators: [{
|
|
1143
|
+
type: Inject,
|
|
1144
|
+
args: [PLATFORM_ID]
|
|
1145
|
+
}] }]; }, propDecorators: { clickedOutside: [{
|
|
1146
|
+
type: HostListener,
|
|
1147
|
+
args: ['clickOutside', ['$event']]
|
|
1148
|
+
}] } });
|
|
1149
|
+
|
|
1150
|
+
class BsDropdownToggleDirective {
|
|
1151
|
+
constructor(dropdown, toggleButton) {
|
|
1152
|
+
this.dropdown = dropdown;
|
|
1153
|
+
this.toggleButton = toggleButton;
|
|
1154
|
+
}
|
|
1155
|
+
onClick() {
|
|
1156
|
+
this.dropdown.isOpen$.pipe(take(1)).subscribe((isOpen) => {
|
|
1157
|
+
this.dropdown.isOpen$.next(!isOpen);
|
|
1158
|
+
});
|
|
1159
|
+
}
|
|
1160
|
+
}
|
|
1161
|
+
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 });
|
|
1162
|
+
BsDropdownToggleDirective.ɵdir = i0.ɵɵngDeclareDirective({ minVersion: "12.0.0", version: "13.1.1", type: BsDropdownToggleDirective, selector: "[bsDropdownToggle]", host: { listeners: { "click": "onClick()" } }, ngImport: i0 });
|
|
1163
|
+
i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "13.1.1", ngImport: i0, type: BsDropdownToggleDirective, decorators: [{
|
|
1164
|
+
type: Directive,
|
|
1165
|
+
args: [{
|
|
1166
|
+
selector: '[bsDropdownToggle]'
|
|
1167
|
+
}]
|
|
1168
|
+
}], ctorParameters: function () { return [{ type: BsDropdownDirective }, { type: i0.ElementRef }]; }, propDecorators: { onClick: [{
|
|
1169
|
+
type: HostListener,
|
|
1170
|
+
args: ['click']
|
|
1171
|
+
}] } });
|
|
1172
|
+
|
|
1173
|
+
class BsDropdownDirective {
|
|
1174
|
+
constructor(elementRef) {
|
|
1175
|
+
this.isOpen$ = new BehaviorSubject(false);
|
|
1176
|
+
this.toggle = null;
|
|
1177
|
+
this.hasBackdrop = false;
|
|
1178
|
+
this.sameWidth = false;
|
|
1179
|
+
this.closeOnClickOutside = false;
|
|
1180
|
+
this.isOpenChange = new EventEmitter();
|
|
1181
|
+
this.elementRef = elementRef;
|
|
1182
|
+
}
|
|
1183
|
+
//#region IsOpen
|
|
1184
|
+
get isOpen() {
|
|
1185
|
+
return this.isOpen$.value;
|
|
1186
|
+
}
|
|
1187
|
+
set isOpen(value) {
|
|
1188
|
+
if (this.isOpen$.value !== value) {
|
|
1189
|
+
this.isOpen$.next(value);
|
|
1190
|
+
this.isOpenChange.emit(value);
|
|
1191
|
+
}
|
|
1192
|
+
}
|
|
1193
|
+
}
|
|
1194
|
+
BsDropdownDirective.ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "13.1.1", ngImport: i0, type: BsDropdownDirective, deps: [{ token: i0.ElementRef }], target: i0.ɵɵFactoryTarget.Directive });
|
|
1195
|
+
BsDropdownDirective.ɵdir = i0.ɵɵngDeclareDirective({ minVersion: "12.0.0", version: "13.1.1", type: BsDropdownDirective, selector: "[bsDropdown]", inputs: { hasBackdrop: "hasBackdrop", sameWidth: "sameWidth", closeOnClickOutside: "closeOnClickOutside", isOpen: "isOpen" }, outputs: { isOpenChange: "isOpenChange" }, queries: [{ propertyName: "menu", first: true, predicate: BsDropdownMenuDirective, descendants: true }, { propertyName: "toggle", first: true, predicate: BsDropdownToggleDirective, descendants: true }], ngImport: i0 });
|
|
1196
|
+
i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "13.1.1", ngImport: i0, type: BsDropdownDirective, decorators: [{
|
|
1197
|
+
type: Directive,
|
|
1198
|
+
args: [{
|
|
1199
|
+
selector: '[bsDropdown]'
|
|
1200
|
+
}]
|
|
1201
|
+
}], ctorParameters: function () { return [{ type: i0.ElementRef }]; }, propDecorators: { menu: [{
|
|
1202
|
+
type: ContentChild,
|
|
1203
|
+
args: [BsDropdownMenuDirective, { static: false }]
|
|
1204
|
+
}], toggle: [{
|
|
1205
|
+
type: ContentChild,
|
|
1206
|
+
args: [BsDropdownToggleDirective, { static: false }]
|
|
1207
|
+
}], hasBackdrop: [{
|
|
1208
|
+
type: Input
|
|
1209
|
+
}], sameWidth: [{
|
|
1210
|
+
type: Input
|
|
1211
|
+
}], closeOnClickOutside: [{
|
|
1212
|
+
type: Input
|
|
1213
|
+
}], isOpenChange: [{
|
|
1214
|
+
type: Output
|
|
1215
|
+
}], isOpen: [{
|
|
1216
|
+
type: Input
|
|
1217
|
+
}] } });
|
|
1218
|
+
|
|
1219
|
+
class BsDatepickerComponent {
|
|
1220
|
+
constructor() {
|
|
1221
|
+
this.selectedDate = new Date();
|
|
1222
|
+
this.currentMonth = new Date();
|
|
1223
|
+
}
|
|
1224
|
+
ngOnInit() {
|
|
1225
|
+
}
|
|
1226
|
+
}
|
|
1227
|
+
BsDatepickerComponent.ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "13.1.1", ngImport: i0, type: BsDatepickerComponent, deps: [], target: i0.ɵɵFactoryTarget.Component });
|
|
1228
|
+
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", "sameWidth", "closeOnClickOutside", "isOpen"], outputs: ["isOpenChange"] }, { type: BsDropdownToggleDirective, selector: "[bsDropdownToggle]" }, { type: BsDropdownMenuDirective, selector: "[bsDropdownMenu]" }], pipes: { "date": i1.DatePipe } });
|
|
1229
|
+
i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "13.1.1", ngImport: i0, type: BsDatepickerComponent, decorators: [{
|
|
1230
|
+
type: Component,
|
|
1231
|
+
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: [""] }]
|
|
1232
|
+
}], ctorParameters: function () { return []; } });
|
|
1233
|
+
|
|
1234
|
+
class BsDropdownModule {
|
|
1235
|
+
}
|
|
1236
|
+
BsDropdownModule.ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "13.1.1", ngImport: i0, type: BsDropdownModule, deps: [], target: i0.ɵɵFactoryTarget.NgModule });
|
|
1237
|
+
BsDropdownModule.ɵmod = i0.ɵɵngDeclareNgModule({ minVersion: "12.0.0", version: "13.1.1", ngImport: i0, type: BsDropdownModule, declarations: [BsDropdownDirective,
|
|
1238
|
+
BsDropdownToggleDirective,
|
|
1239
|
+
BsDropdownMenuDirective], imports: [CommonModule,
|
|
1240
|
+
OverlayModule,
|
|
1241
|
+
ClickOutsideModule], exports: [BsDropdownDirective,
|
|
1242
|
+
BsDropdownToggleDirective,
|
|
1243
|
+
BsDropdownMenuDirective] });
|
|
1244
|
+
BsDropdownModule.ɵinj = i0.ɵɵngDeclareInjector({ minVersion: "12.0.0", version: "13.1.1", ngImport: i0, type: BsDropdownModule, imports: [[
|
|
1245
|
+
CommonModule,
|
|
1246
|
+
OverlayModule,
|
|
1247
|
+
ClickOutsideModule
|
|
1248
|
+
]] });
|
|
1249
|
+
i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "13.1.1", ngImport: i0, type: BsDropdownModule, decorators: [{
|
|
1250
|
+
type: NgModule,
|
|
1251
|
+
args: [{
|
|
1252
|
+
declarations: [
|
|
1253
|
+
BsDropdownDirective,
|
|
1254
|
+
BsDropdownToggleDirective,
|
|
1255
|
+
BsDropdownMenuDirective
|
|
1256
|
+
],
|
|
1257
|
+
imports: [
|
|
1258
|
+
CommonModule,
|
|
1259
|
+
OverlayModule,
|
|
1260
|
+
ClickOutsideModule
|
|
1261
|
+
],
|
|
1262
|
+
exports: [
|
|
1263
|
+
BsDropdownDirective,
|
|
1264
|
+
BsDropdownToggleDirective,
|
|
1265
|
+
BsDropdownMenuDirective
|
|
1266
|
+
]
|
|
1267
|
+
}]
|
|
1268
|
+
}] });
|
|
1269
|
+
|
|
1270
|
+
class BsDatepickerModule {
|
|
1271
|
+
}
|
|
1272
|
+
BsDatepickerModule.ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "13.1.1", ngImport: i0, type: BsDatepickerModule, deps: [], target: i0.ɵɵFactoryTarget.NgModule });
|
|
1273
|
+
BsDatepickerModule.ɵmod = i0.ɵɵngDeclareNgModule({ minVersion: "12.0.0", version: "13.1.1", ngImport: i0, type: BsDatepickerModule, declarations: [BsDatepickerComponent], imports: [CommonModule,
|
|
1274
|
+
BsCalendarModule,
|
|
1275
|
+
BsDropdownModule], exports: [BsDatepickerComponent] });
|
|
1276
|
+
BsDatepickerModule.ɵinj = i0.ɵɵngDeclareInjector({ minVersion: "12.0.0", version: "13.1.1", ngImport: i0, type: BsDatepickerModule, imports: [[
|
|
1277
|
+
CommonModule,
|
|
1278
|
+
BsCalendarModule,
|
|
1279
|
+
BsDropdownModule
|
|
1280
|
+
]] });
|
|
1281
|
+
i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "13.1.1", ngImport: i0, type: BsDatepickerModule, decorators: [{
|
|
1282
|
+
type: NgModule,
|
|
1283
|
+
args: [{
|
|
1284
|
+
declarations: [
|
|
1285
|
+
BsDatepickerComponent
|
|
1286
|
+
],
|
|
1287
|
+
imports: [
|
|
1288
|
+
CommonModule,
|
|
1289
|
+
BsCalendarModule,
|
|
1290
|
+
BsDropdownModule
|
|
1291
|
+
],
|
|
1292
|
+
exports: [
|
|
1293
|
+
BsDatepickerComponent
|
|
1294
|
+
]
|
|
1295
|
+
}]
|
|
1296
|
+
}] });
|
|
1297
|
+
|
|
1298
|
+
class BsListGroupItemComponent {
|
|
1299
|
+
constructor() {
|
|
1300
|
+
}
|
|
1301
|
+
ngOnInit() {
|
|
1302
|
+
}
|
|
1303
|
+
}
|
|
1304
|
+
BsListGroupItemComponent.ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "13.1.1", ngImport: i0, type: BsListGroupItemComponent, deps: [], target: i0.ɵɵFactoryTarget.Component });
|
|
1305
|
+
BsListGroupItemComponent.ɵcmp = i0.ɵɵngDeclareComponent({ minVersion: "12.0.0", version: "13.1.1", type: BsListGroupItemComponent, selector: "bs-list-group-item", ngImport: i0, template: "<li class=\"list-group-item\">\n <ng-content></ng-content>\n</li>", styles: [".list-group-item{margin-bottom:-1px}\n"] });
|
|
1306
|
+
i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "13.1.1", ngImport: i0, type: BsListGroupItemComponent, decorators: [{
|
|
1307
|
+
type: Component,
|
|
1308
|
+
args: [{ selector: 'bs-list-group-item', template: "<li class=\"list-group-item\">\n <ng-content></ng-content>\n</li>", styles: [".list-group-item{margin-bottom:-1px}\n"] }]
|
|
1309
|
+
}], ctorParameters: function () { return []; } });
|
|
1310
|
+
|
|
1311
|
+
class BsListGroupComponent {
|
|
1312
|
+
constructor() {
|
|
1313
|
+
}
|
|
1314
|
+
ngOnInit() {
|
|
1315
|
+
}
|
|
1316
|
+
}
|
|
1317
|
+
BsListGroupComponent.ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "13.1.1", ngImport: i0, type: BsListGroupComponent, deps: [], target: i0.ɵɵFactoryTarget.Component });
|
|
533
1318
|
BsListGroupComponent.ɵcmp = i0.ɵɵngDeclareComponent({ minVersion: "12.0.0", version: "13.1.1", type: BsListGroupComponent, selector: "bs-list-group", queries: [{ propertyName: "items", predicate: BsListGroupItemComponent }], ngImport: i0, template: "<ul class=\"list-group mt-0\">\n <ng-content></ng-content>\n</ul>", styles: [""] });
|
|
534
1319
|
i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "13.1.1", ngImport: i0, type: BsListGroupComponent, decorators: [{
|
|
535
1320
|
type: Component,
|
|
@@ -561,6 +1346,64 @@ i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "13.1.1", ngImpor
|
|
|
561
1346
|
}]
|
|
562
1347
|
}] });
|
|
563
1348
|
|
|
1349
|
+
class BsMultiselectComponent {
|
|
1350
|
+
constructor() {
|
|
1351
|
+
this.items = [];
|
|
1352
|
+
this.selectedItems = [];
|
|
1353
|
+
}
|
|
1354
|
+
itemChange(item, event) {
|
|
1355
|
+
if (!!event.target.checked) {
|
|
1356
|
+
this.selectedItems.push(item);
|
|
1357
|
+
}
|
|
1358
|
+
else {
|
|
1359
|
+
this.selectedItems.splice(this.selectedItems.findIndex((i) => i === item), 1);
|
|
1360
|
+
}
|
|
1361
|
+
}
|
|
1362
|
+
ngOnInit() {
|
|
1363
|
+
}
|
|
1364
|
+
}
|
|
1365
|
+
BsMultiselectComponent.ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "13.1.1", ngImport: i0, type: BsMultiselectComponent, deps: [], target: i0.ɵɵFactoryTarget.Component });
|
|
1366
|
+
BsMultiselectComponent.ɵcmp = i0.ɵɵngDeclareComponent({ minVersion: "12.0.0", version: "13.1.1", type: BsMultiselectComponent, selector: "bs-multiselect", inputs: { items: "items", selectedItems: "selectedItems" }, queries: [{ propertyName: "template", first: true, predicate: TemplateRef, descendants: true }], 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 mw-250px p-3 border rounded shadow\">\n <ng-container *ngTemplateOutlet=\"template\"></ng-container>\n <hr class=\"my-2\">\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: [".mw-250px{min-width:250px}\n"], directives: [{ type: BsDropdownDirective, selector: "[bsDropdown]", inputs: ["hasBackdrop", "sameWidth", "closeOnClickOutside", "isOpen"], outputs: ["isOpenChange"] }, { type: BsDropdownToggleDirective, selector: "[bsDropdownToggle]" }, { type: BsDropdownMenuDirective, selector: "[bsDropdownMenu]" }, { type: i1.NgTemplateOutlet, selector: "[ngTemplateOutlet]", inputs: ["ngTemplateOutletContext", "ngTemplateOutlet"] }, { type: i1.NgForOf, selector: "[ngFor][ngForOf]", inputs: ["ngForOf", "ngForTrackBy", "ngForTemplate"] }] });
|
|
1367
|
+
i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "13.1.1", ngImport: i0, type: BsMultiselectComponent, decorators: [{
|
|
1368
|
+
type: Component,
|
|
1369
|
+
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 mw-250px p-3 border rounded shadow\">\n <ng-container *ngTemplateOutlet=\"template\"></ng-container>\n <hr class=\"my-2\">\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: [".mw-250px{min-width:250px}\n"] }]
|
|
1370
|
+
}], ctorParameters: function () { return []; }, propDecorators: { template: [{
|
|
1371
|
+
type: ContentChild,
|
|
1372
|
+
args: [TemplateRef]
|
|
1373
|
+
}], items: [{
|
|
1374
|
+
type: Input
|
|
1375
|
+
}], selectedItems: [{
|
|
1376
|
+
type: Input
|
|
1377
|
+
}] } });
|
|
1378
|
+
|
|
1379
|
+
class BsMultiselectModule {
|
|
1380
|
+
}
|
|
1381
|
+
BsMultiselectModule.ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "13.1.1", ngImport: i0, type: BsMultiselectModule, deps: [], target: i0.ɵɵFactoryTarget.NgModule });
|
|
1382
|
+
BsMultiselectModule.ɵmod = i0.ɵɵngDeclareNgModule({ minVersion: "12.0.0", version: "13.1.1", ngImport: i0, type: BsMultiselectModule, declarations: [BsMultiselectComponent], imports: [CommonModule,
|
|
1383
|
+
BsDropdownModule,
|
|
1384
|
+
FocusOnLoadModule], exports: [BsMultiselectComponent] });
|
|
1385
|
+
BsMultiselectModule.ɵinj = i0.ɵɵngDeclareInjector({ minVersion: "12.0.0", version: "13.1.1", ngImport: i0, type: BsMultiselectModule, imports: [[
|
|
1386
|
+
CommonModule,
|
|
1387
|
+
BsDropdownModule,
|
|
1388
|
+
FocusOnLoadModule,
|
|
1389
|
+
]] });
|
|
1390
|
+
i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "13.1.1", ngImport: i0, type: BsMultiselectModule, decorators: [{
|
|
1391
|
+
type: NgModule,
|
|
1392
|
+
args: [{
|
|
1393
|
+
declarations: [
|
|
1394
|
+
BsMultiselectComponent
|
|
1395
|
+
],
|
|
1396
|
+
imports: [
|
|
1397
|
+
CommonModule,
|
|
1398
|
+
BsDropdownModule,
|
|
1399
|
+
FocusOnLoadModule,
|
|
1400
|
+
],
|
|
1401
|
+
exports: [
|
|
1402
|
+
BsMultiselectComponent
|
|
1403
|
+
]
|
|
1404
|
+
}]
|
|
1405
|
+
}] });
|
|
1406
|
+
|
|
564
1407
|
class BsNavbarComponent {
|
|
565
1408
|
constructor() {
|
|
566
1409
|
this.isExpanded = false;
|
|
@@ -595,10 +1438,10 @@ class BsNavbarNavComponent {
|
|
|
595
1438
|
}
|
|
596
1439
|
}
|
|
597
1440
|
BsNavbarNavComponent.ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "13.1.1", ngImport: i0, type: BsNavbarNavComponent, deps: [{ token: BsNavbarComponent }], target: i0.ɵɵFactoryTarget.Component });
|
|
598
|
-
BsNavbarNavComponent.ɵcmp = i0.ɵɵngDeclareComponent({ minVersion: "12.0.0", version: "13.1.1", type: BsNavbarNavComponent, selector: "bs-navbar-nav", inputs: { collapse: "collapse" }, ngImport: i0, template: "<div class=\"navbar-collapse collapse w-100 show\"
|
|
1441
|
+
BsNavbarNavComponent.ɵcmp = i0.ɵɵngDeclareComponent({ minVersion: "12.0.0", version: "13.1.1", type: BsNavbarNavComponent, selector: "bs-navbar-nav", inputs: { collapse: "collapse" }, ngImport: i0, template: "<div class=\"navbar-collapse collapse w-100 show\" *ngIf=\"bsNavbar.isExpanded\" [@slideUpDown]>\n <ul class=\"navbar-nav mr-auto\">\n <ng-content></ng-content>\n </ul>\n</div>", styles: [":host{margin-right:auto}@media screen and (max-width: 767px){:host{width:100%!important}.navbar-collapse.collapse{overflow:hidden}}\n"], directives: [{ type: i1.NgIf, selector: "[ngIf]", inputs: ["ngIf", "ngIfThen", "ngIfElse"] }], animations: [SlideUpDownAnimation] });
|
|
599
1442
|
i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "13.1.1", ngImport: i0, type: BsNavbarNavComponent, decorators: [{
|
|
600
1443
|
type: Component,
|
|
601
|
-
args: [{ selector: 'bs-navbar-nav', animations: [SlideUpDownAnimation], template: "<div class=\"navbar-collapse collapse w-100 show\"
|
|
1444
|
+
args: [{ selector: 'bs-navbar-nav', animations: [SlideUpDownAnimation], template: "<div class=\"navbar-collapse collapse w-100 show\" *ngIf=\"bsNavbar.isExpanded\" [@slideUpDown]>\n <ul class=\"navbar-nav mr-auto\">\n <ng-content></ng-content>\n </ul>\n</div>", styles: [":host{margin-right:auto}@media screen and (max-width: 767px){:host{width:100%!important}.navbar-collapse.collapse{overflow:hidden}}\n"] }]
|
|
602
1445
|
}], ctorParameters: function () { return [{ type: BsNavbarComponent }]; }, propDecorators: { collapse: [{
|
|
603
1446
|
type: Input
|
|
604
1447
|
}] } });
|
|
@@ -659,7 +1502,7 @@ class BsNavbarDropdownComponent {
|
|
|
659
1502
|
}
|
|
660
1503
|
}
|
|
661
1504
|
BsNavbarDropdownComponent.ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "13.1.1", ngImport: i0, type: BsNavbarDropdownComponent, deps: [{ token: BsNavbarDropdownComponent, host: true, optional: true, skipSelf: true }, { token: forwardRef(() => BsNavbarItemComponent), host: true }], target: i0.ɵɵFactoryTarget.Component });
|
|
662
|
-
BsNavbarDropdownComponent.ɵcmp = i0.ɵɵngDeclareComponent({ minVersion: "12.0.0", version: "13.1.1", type: BsNavbarDropdownComponent, selector: "bs-navbar-dropdown", queries: [{ propertyName: "childDropdowns", predicate: i0.forwardRef(function () { return BsNavbarDropdownComponent; }), descendants: true }], ngImport: i0, template: "<ul class=\"dropdown-menu\" [class.show]=\"isVisible\" [class.submenu]=\"!!parentDropdown\" (clickOutside)=\"isVisible = false\" [exclude]=\"elementsToExclude\" aria-labelledby=\"navbarDropdown\">\n <ng-content></ng-content>\n</ul>", styles: ["@media (max-width: 767px){.submenu{margin-left:.5rem;margin-right:.5rem}}@media (min-width: 768px){.submenu{position:absolute;left:100%;top:-1px}}\n"], directives: [{ type: i1$
|
|
1505
|
+
BsNavbarDropdownComponent.ɵcmp = i0.ɵɵngDeclareComponent({ minVersion: "12.0.0", version: "13.1.1", type: BsNavbarDropdownComponent, selector: "bs-navbar-dropdown", queries: [{ propertyName: "childDropdowns", predicate: i0.forwardRef(function () { return BsNavbarDropdownComponent; }), descendants: true }], ngImport: i0, template: "<ul class=\"dropdown-menu\" [class.show]=\"isVisible\" [class.submenu]=\"!!parentDropdown\" (clickOutside)=\"isVisible = false\" [exclude]=\"elementsToExclude\" aria-labelledby=\"navbarDropdown\">\n <ng-content></ng-content>\n</ul>", styles: ["@media (max-width: 767px){.submenu{margin-left:.5rem;margin-right:.5rem}}@media (min-width: 768px){.submenu{position:absolute;left:100%;top:-1px}}\n"], directives: [{ type: i1$2.ClickOutsideDirective, selector: "[clickOutside]", inputs: ["clickOutsideEnabled", "attachOutsideOnClick", "delayClickOutsideInit", "emitOnBlur", "exclude", "excludeBeforeClick", "clickOutsideEvents"], outputs: ["clickOutside"] }] });
|
|
663
1506
|
i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "13.1.1", ngImport: i0, type: BsNavbarDropdownComponent, decorators: [{
|
|
664
1507
|
type: Component,
|
|
665
1508
|
args: [{ selector: 'bs-navbar-dropdown', template: "<ul class=\"dropdown-menu\" [class.show]=\"isVisible\" [class.submenu]=\"!!parentDropdown\" (clickOutside)=\"isVisible = false\" [exclude]=\"elementsToExclude\" aria-labelledby=\"navbarDropdown\">\n <ng-content></ng-content>\n</ul>", styles: ["@media (max-width: 767px){.submenu{margin-left:.5rem;margin-right:.5rem}}@media (min-width: 768px){.submenu{position:absolute;left:100%;top:-1px}}\n"] }]
|
|
@@ -786,129 +1629,630 @@ BsNavbarModule.ɵmod = i0.ɵɵngDeclareNgModule({ minVersion: "12.0.0", version:
|
|
|
786
1629
|
NavbarContentDirective] });
|
|
787
1630
|
BsNavbarModule.ɵinj = i0.ɵɵngDeclareInjector({ minVersion: "12.0.0", version: "13.1.1", ngImport: i0, type: BsNavbarModule, imports: [[
|
|
788
1631
|
CommonModule,
|
|
789
|
-
RouterModule,
|
|
790
|
-
ClickOutsideModule
|
|
1632
|
+
RouterModule,
|
|
1633
|
+
ClickOutsideModule
|
|
1634
|
+
]] });
|
|
1635
|
+
i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "13.1.1", ngImport: i0, type: BsNavbarModule, decorators: [{
|
|
1636
|
+
type: NgModule,
|
|
1637
|
+
args: [{
|
|
1638
|
+
declarations: [
|
|
1639
|
+
BsNavbarComponent,
|
|
1640
|
+
BsNavbarNavComponent,
|
|
1641
|
+
BsNavbarDropdownComponent,
|
|
1642
|
+
BsNavbarItemComponent,
|
|
1643
|
+
DropdownToggleDirective,
|
|
1644
|
+
NavLinkDirective,
|
|
1645
|
+
NavbarContentDirective
|
|
1646
|
+
],
|
|
1647
|
+
imports: [
|
|
1648
|
+
CommonModule,
|
|
1649
|
+
RouterModule,
|
|
1650
|
+
ClickOutsideModule
|
|
1651
|
+
],
|
|
1652
|
+
exports: [
|
|
1653
|
+
BsNavbarComponent,
|
|
1654
|
+
BsNavbarNavComponent,
|
|
1655
|
+
BsNavbarDropdownComponent,
|
|
1656
|
+
BsNavbarItemComponent,
|
|
1657
|
+
DropdownToggleDirective,
|
|
1658
|
+
NavLinkDirective,
|
|
1659
|
+
NavbarContentDirective
|
|
1660
|
+
]
|
|
1661
|
+
}]
|
|
1662
|
+
}] });
|
|
1663
|
+
|
|
1664
|
+
class BsProgressComponent {
|
|
1665
|
+
constructor() {
|
|
1666
|
+
this.progressClass = true;
|
|
1667
|
+
this.height = null;
|
|
1668
|
+
this.isIndeterminate = false;
|
|
1669
|
+
}
|
|
1670
|
+
}
|
|
1671
|
+
BsProgressComponent.ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "13.1.1", ngImport: i0, type: BsProgressComponent, deps: [], target: i0.ɵɵFactoryTarget.Component });
|
|
1672
|
+
BsProgressComponent.ɵcmp = i0.ɵɵngDeclareComponent({ minVersion: "12.0.0", version: "13.1.1", type: BsProgressComponent, selector: "bs-progress", inputs: { height: "height", isIndeterminate: "isIndeterminate" }, host: { properties: { "class.progress": "this.progressClass", "style.height.px": "this.height" } }, ngImport: i0, template: "<ng-content *ngIf=\"!isIndeterminate\"></ng-content>\n<div *ngIf=\"isIndeterminate\" class=\"progress-bar progress-bar-infinite\" role=\"progressbar\" aria-valuenow=\"infinite\"></div>", styles: ["@keyframes progress-infinite{0%{width:10%;margin-left:0%}25%{width:70%;margin-left:15%}50%{width:10%;margin-left:90%}75%{width:70%;margin-left:15%}to{width:10%;margin-left:0%}}.progress-bar-infinite{animation:progress-infinite 1.5s infinite}\n"], directives: [{ type: i1.NgIf, selector: "[ngIf]", inputs: ["ngIf", "ngIfThen", "ngIfElse"] }] });
|
|
1673
|
+
i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "13.1.1", ngImport: i0, type: BsProgressComponent, decorators: [{
|
|
1674
|
+
type: Component,
|
|
1675
|
+
args: [{ selector: 'bs-progress', template: "<ng-content *ngIf=\"!isIndeterminate\"></ng-content>\n<div *ngIf=\"isIndeterminate\" class=\"progress-bar progress-bar-infinite\" role=\"progressbar\" aria-valuenow=\"infinite\"></div>", styles: ["@keyframes progress-infinite{0%{width:10%;margin-left:0%}25%{width:70%;margin-left:15%}50%{width:10%;margin-left:90%}75%{width:70%;margin-left:15%}to{width:10%;margin-left:0%}}.progress-bar-infinite{animation:progress-infinite 1.5s infinite}\n"] }]
|
|
1676
|
+
}], propDecorators: { progressClass: [{
|
|
1677
|
+
type: HostBinding,
|
|
1678
|
+
args: ['class.progress']
|
|
1679
|
+
}], height: [{
|
|
1680
|
+
type: Input
|
|
1681
|
+
}, {
|
|
1682
|
+
type: HostBinding,
|
|
1683
|
+
args: ['style.height.px']
|
|
1684
|
+
}], isIndeterminate: [{
|
|
1685
|
+
type: Input
|
|
1686
|
+
}] } });
|
|
1687
|
+
|
|
1688
|
+
class BsProgressBarComponent {
|
|
1689
|
+
constructor() {
|
|
1690
|
+
this.destroyed$ = new Subject();
|
|
1691
|
+
this.minimum$ = new BehaviorSubject(0);
|
|
1692
|
+
this.maximum$ = new BehaviorSubject(100);
|
|
1693
|
+
this.value$ = new BehaviorSubject(50);
|
|
1694
|
+
this.color$ = new BehaviorSubject(Color.primary);
|
|
1695
|
+
this.striped = false;
|
|
1696
|
+
this.animated = false;
|
|
1697
|
+
this.progressBar = true;
|
|
1698
|
+
this.colorClass = 'bg-primary';
|
|
1699
|
+
this.widthStyle = '0';
|
|
1700
|
+
this.role = 'progressbar';
|
|
1701
|
+
this.valueNow = 50;
|
|
1702
|
+
this.valueMin = 0;
|
|
1703
|
+
this.valueMax = 100;
|
|
1704
|
+
this.percentage$ = combineLatest([this.minimum$, this.maximum$, this.value$])
|
|
1705
|
+
.pipe(map(([minimum, maximum, value]) => {
|
|
1706
|
+
return (value - minimum) / (maximum - minimum) * 100;
|
|
1707
|
+
}));
|
|
1708
|
+
this.width$ = this.percentage$
|
|
1709
|
+
.pipe(map((width) => {
|
|
1710
|
+
return String(width) + '%';
|
|
1711
|
+
}));
|
|
1712
|
+
this.colorClass$ = this.color$
|
|
1713
|
+
.pipe(map((color) => {
|
|
1714
|
+
const name = Color[color];
|
|
1715
|
+
return `bg-${name}`;
|
|
1716
|
+
}));
|
|
1717
|
+
this.colorClass$
|
|
1718
|
+
.pipe(takeUntil(this.destroyed$))
|
|
1719
|
+
.subscribe((color) => {
|
|
1720
|
+
this.colorClass = color;
|
|
1721
|
+
});
|
|
1722
|
+
this.width$
|
|
1723
|
+
.pipe(takeUntil(this.destroyed$))
|
|
1724
|
+
.subscribe((width) => {
|
|
1725
|
+
this.widthStyle = width;
|
|
1726
|
+
});
|
|
1727
|
+
this.value$
|
|
1728
|
+
.pipe(takeUntil(this.destroyed$))
|
|
1729
|
+
.subscribe((value) => {
|
|
1730
|
+
this.valueNow = value;
|
|
1731
|
+
});
|
|
1732
|
+
this.minimum$
|
|
1733
|
+
.pipe(takeUntil(this.destroyed$))
|
|
1734
|
+
.subscribe((value) => {
|
|
1735
|
+
this.valueMin = value;
|
|
1736
|
+
});
|
|
1737
|
+
this.maximum$
|
|
1738
|
+
.pipe(takeUntil(this.destroyed$))
|
|
1739
|
+
.subscribe((value) => {
|
|
1740
|
+
this.valueMax = value;
|
|
1741
|
+
});
|
|
1742
|
+
}
|
|
1743
|
+
set minimum(value) {
|
|
1744
|
+
this.minimum$.next(value);
|
|
1745
|
+
}
|
|
1746
|
+
set maximum(value) {
|
|
1747
|
+
this.maximum$.next(value);
|
|
1748
|
+
}
|
|
1749
|
+
set value(value) {
|
|
1750
|
+
this.value$.next(value);
|
|
1751
|
+
}
|
|
1752
|
+
set color(value) {
|
|
1753
|
+
this.color$.next(value);
|
|
1754
|
+
}
|
|
1755
|
+
ngOnDestroy() {
|
|
1756
|
+
this.destroyed$.next(true);
|
|
1757
|
+
}
|
|
1758
|
+
}
|
|
1759
|
+
BsProgressBarComponent.ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "13.1.1", ngImport: i0, type: BsProgressBarComponent, deps: [], target: i0.ɵɵFactoryTarget.Component });
|
|
1760
|
+
BsProgressBarComponent.ɵcmp = i0.ɵɵngDeclareComponent({ minVersion: "12.0.0", version: "13.1.1", type: BsProgressBarComponent, selector: "bs-progress-bar", inputs: { minimum: "minimum", maximum: "maximum", value: "value", color: "color", striped: "striped", animated: "animated" }, host: { properties: { "class.progress-bar-striped": "this.striped", "class.progress-bar-animated": "this.animated", "class.progress-bar": "this.progressBar", "class": "this.colorClass", "style.width": "this.widthStyle", "attr.role": "this.role", "attr.aria-valuenow": "this.valueNow", "attr.aria-valuemin": "this.valueMin", "attr.aria-valuemax": "this.valueMax" } }, ngImport: i0, template: "", styles: [""] });
|
|
1761
|
+
i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "13.1.1", ngImport: i0, type: BsProgressBarComponent, decorators: [{
|
|
1762
|
+
type: Component,
|
|
1763
|
+
args: [{ selector: 'bs-progress-bar', template: "", styles: [""] }]
|
|
1764
|
+
}], ctorParameters: function () { return []; }, propDecorators: { minimum: [{
|
|
1765
|
+
type: Input
|
|
1766
|
+
}], maximum: [{
|
|
1767
|
+
type: Input
|
|
1768
|
+
}], value: [{
|
|
1769
|
+
type: Input
|
|
1770
|
+
}], color: [{
|
|
1771
|
+
type: Input
|
|
1772
|
+
}], striped: [{
|
|
1773
|
+
type: Input
|
|
1774
|
+
}, {
|
|
1775
|
+
type: HostBinding,
|
|
1776
|
+
args: ['class.progress-bar-striped']
|
|
1777
|
+
}], animated: [{
|
|
1778
|
+
type: Input
|
|
1779
|
+
}, {
|
|
1780
|
+
type: HostBinding,
|
|
1781
|
+
args: ['class.progress-bar-animated']
|
|
1782
|
+
}], progressBar: [{
|
|
1783
|
+
type: HostBinding,
|
|
1784
|
+
args: ['class.progress-bar']
|
|
1785
|
+
}], colorClass: [{
|
|
1786
|
+
type: HostBinding,
|
|
1787
|
+
args: ['class']
|
|
1788
|
+
}], widthStyle: [{
|
|
1789
|
+
type: HostBinding,
|
|
1790
|
+
args: ['style.width']
|
|
1791
|
+
}], role: [{
|
|
1792
|
+
type: HostBinding,
|
|
1793
|
+
args: ['attr.role']
|
|
1794
|
+
}], valueNow: [{
|
|
1795
|
+
type: HostBinding,
|
|
1796
|
+
args: ['attr.aria-valuenow']
|
|
1797
|
+
}], valueMin: [{
|
|
1798
|
+
type: HostBinding,
|
|
1799
|
+
args: ['attr.aria-valuemin']
|
|
1800
|
+
}], valueMax: [{
|
|
1801
|
+
type: HostBinding,
|
|
1802
|
+
args: ['attr.aria-valuemax']
|
|
1803
|
+
}] } });
|
|
1804
|
+
|
|
1805
|
+
class BsProgressBarModule {
|
|
1806
|
+
}
|
|
1807
|
+
BsProgressBarModule.ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "13.1.1", ngImport: i0, type: BsProgressBarModule, deps: [], target: i0.ɵɵFactoryTarget.NgModule });
|
|
1808
|
+
BsProgressBarModule.ɵmod = i0.ɵɵngDeclareNgModule({ minVersion: "12.0.0", version: "13.1.1", ngImport: i0, type: BsProgressBarModule, declarations: [BsProgressBarComponent,
|
|
1809
|
+
BsProgressComponent], imports: [CommonModule], exports: [BsProgressBarComponent,
|
|
1810
|
+
BsProgressComponent] });
|
|
1811
|
+
BsProgressBarModule.ɵinj = i0.ɵɵngDeclareInjector({ minVersion: "12.0.0", version: "13.1.1", ngImport: i0, type: BsProgressBarModule, imports: [[
|
|
1812
|
+
CommonModule
|
|
1813
|
+
]] });
|
|
1814
|
+
i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "13.1.1", ngImport: i0, type: BsProgressBarModule, decorators: [{
|
|
1815
|
+
type: NgModule,
|
|
1816
|
+
args: [{
|
|
1817
|
+
declarations: [
|
|
1818
|
+
BsProgressBarComponent,
|
|
1819
|
+
BsProgressComponent
|
|
1820
|
+
],
|
|
1821
|
+
imports: [
|
|
1822
|
+
CommonModule
|
|
1823
|
+
],
|
|
1824
|
+
exports: [
|
|
1825
|
+
BsProgressBarComponent,
|
|
1826
|
+
BsProgressComponent
|
|
1827
|
+
]
|
|
1828
|
+
}]
|
|
1829
|
+
}] });
|
|
1830
|
+
|
|
1831
|
+
class BsScrollOffsetService {
|
|
1832
|
+
constructor(routerConfig) {
|
|
1833
|
+
this.routerConfig = routerConfig;
|
|
1834
|
+
}
|
|
1835
|
+
getScrollOffset() {
|
|
1836
|
+
if (!this.routerConfig.scrollOffset) {
|
|
1837
|
+
return [0, 0];
|
|
1838
|
+
}
|
|
1839
|
+
else if (Array.isArray(this.routerConfig.scrollOffset)) {
|
|
1840
|
+
return this.routerConfig.scrollOffset;
|
|
1841
|
+
}
|
|
1842
|
+
else {
|
|
1843
|
+
return this.routerConfig.scrollOffset();
|
|
1844
|
+
}
|
|
1845
|
+
}
|
|
1846
|
+
}
|
|
1847
|
+
BsScrollOffsetService.ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "13.1.1", ngImport: i0, type: BsScrollOffsetService, deps: [{ token: ROUTER_CONFIGURATION }], target: i0.ɵɵFactoryTarget.Injectable });
|
|
1848
|
+
BsScrollOffsetService.ɵprov = i0.ɵɵngDeclareInjectable({ minVersion: "12.0.0", version: "13.1.1", ngImport: i0, type: BsScrollOffsetService, providedIn: 'root' });
|
|
1849
|
+
i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "13.1.1", ngImport: i0, type: BsScrollOffsetService, decorators: [{
|
|
1850
|
+
type: Injectable,
|
|
1851
|
+
args: [{
|
|
1852
|
+
providedIn: 'root'
|
|
1853
|
+
}]
|
|
1854
|
+
}], ctorParameters: function () { return [{ type: undefined, decorators: [{
|
|
1855
|
+
type: Inject,
|
|
1856
|
+
args: [ROUTER_CONFIGURATION]
|
|
1857
|
+
}] }]; } });
|
|
1858
|
+
|
|
1859
|
+
class BsScrollspyDirective {
|
|
1860
|
+
constructor(element) {
|
|
1861
|
+
this.element = element;
|
|
1862
|
+
}
|
|
1863
|
+
}
|
|
1864
|
+
BsScrollspyDirective.ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "13.1.1", ngImport: i0, type: BsScrollspyDirective, deps: [{ token: i0.ElementRef }], target: i0.ɵɵFactoryTarget.Directive });
|
|
1865
|
+
BsScrollspyDirective.ɵdir = i0.ɵɵngDeclareDirective({ minVersion: "12.0.0", version: "13.1.1", type: BsScrollspyDirective, selector: "[bsScrollspy]", ngImport: i0 });
|
|
1866
|
+
i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "13.1.1", ngImport: i0, type: BsScrollspyDirective, decorators: [{
|
|
1867
|
+
type: Directive,
|
|
1868
|
+
args: [{
|
|
1869
|
+
selector: '[bsScrollspy]'
|
|
1870
|
+
}]
|
|
1871
|
+
}], ctorParameters: function () { return [{ type: i0.ElementRef }]; } });
|
|
1872
|
+
|
|
1873
|
+
class BsScrollspyComponent {
|
|
1874
|
+
constructor(scrollOffsetService, document) {
|
|
1875
|
+
this.scrollOffsetService = scrollOffsetService;
|
|
1876
|
+
this.activeDirective = null;
|
|
1877
|
+
this.doc = document;
|
|
1878
|
+
}
|
|
1879
|
+
ngAfterViewInit() {
|
|
1880
|
+
this.onWindowScroll();
|
|
1881
|
+
}
|
|
1882
|
+
onWindowScroll() {
|
|
1883
|
+
const offsetY = this.scrollOffsetService.getScrollOffset()[1];
|
|
1884
|
+
const dirs = this.directives.filter((d) => d.element.nativeElement.getBoundingClientRect().y < offsetY);
|
|
1885
|
+
if (this.directives.length === 0) {
|
|
1886
|
+
this.activeDirective = null;
|
|
1887
|
+
}
|
|
1888
|
+
else if (dirs.length === 0) {
|
|
1889
|
+
this.activeDirective = this.directives.get(0) ?? null;
|
|
1890
|
+
}
|
|
1891
|
+
else {
|
|
1892
|
+
this.activeDirective = dirs[dirs.length - 1];
|
|
1893
|
+
}
|
|
1894
|
+
if (window && (window.innerWidth >= 768)) {
|
|
1895
|
+
if (this.activeDirective) {
|
|
1896
|
+
const index = this.directives.toArray().findIndex((v, i) => v === this.activeDirective);
|
|
1897
|
+
const anchor = this.anchors.get(index);
|
|
1898
|
+
if (anchor && anchor.nativeElement.parentElement) {
|
|
1899
|
+
anchor.nativeElement.scrollIntoView({ block: 'nearest', inline: 'nearest' });
|
|
1900
|
+
}
|
|
1901
|
+
}
|
|
1902
|
+
}
|
|
1903
|
+
}
|
|
1904
|
+
scrollToHeader(directive) {
|
|
1905
|
+
const header = directive.element.nativeElement;
|
|
1906
|
+
const offsetY = this.scrollOffsetService.getScrollOffset()[1];
|
|
1907
|
+
const y = header.getBoundingClientRect().top + window.scrollY - offsetY + 1;
|
|
1908
|
+
window.scrollTo({ top: y, behavior: 'smooth' });
|
|
1909
|
+
}
|
|
1910
|
+
}
|
|
1911
|
+
BsScrollspyComponent.ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "13.1.1", ngImport: i0, type: BsScrollspyComponent, deps: [{ token: BsScrollOffsetService }, { token: DOCUMENT }], target: i0.ɵɵFactoryTarget.Component });
|
|
1912
|
+
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 }], viewQueries: [{ propertyName: "anchors", predicate: ["anchor"], descendants: true }], ngImport: i0, template: "<div class=\"spy\">\n <ul class=\"text-muted\">\n <li *ngFor=\"let dir of directives; let i = index\">\n <span [attr.data-index]=\"i\" class=\"cursor-pointer\" [ngClass]=\"'nav' + dir.element.nativeElement.tagName\" [class.fw-bold]=\"activeDirective?.element === dir.element\" (click)=\"scrollToHeader(dir)\" [title]=\"dir.element.nativeElement.textContent\" #anchor>\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:calc(100vh - 7rem);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"] }] });
|
|
1913
|
+
i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "13.1.1", ngImport: i0, type: BsScrollspyComponent, decorators: [{
|
|
1914
|
+
type: Component,
|
|
1915
|
+
args: [{ selector: 'bs-scrollspy', template: "<div class=\"spy\">\n <ul class=\"text-muted\">\n <li *ngFor=\"let dir of directives; let i = index\">\n <span [attr.data-index]=\"i\" class=\"cursor-pointer\" [ngClass]=\"'nav' + dir.element.nativeElement.tagName\" [class.fw-bold]=\"activeDirective?.element === dir.element\" (click)=\"scrollToHeader(dir)\" [title]=\"dir.element.nativeElement.textContent\" #anchor>\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:calc(100vh - 7rem);overflow-y:auto;grid-area:toc}.spy>ul{padding-left:2rem}}.navH2{margin-left:20px}.navH3{margin-left:40px}.navH4{margin-left:60px}\n"] }]
|
|
1916
|
+
}], ctorParameters: function () { return [{ type: BsScrollOffsetService }, { type: undefined, decorators: [{
|
|
1917
|
+
type: Inject,
|
|
1918
|
+
args: [DOCUMENT]
|
|
1919
|
+
}] }]; }, propDecorators: { directives: [{
|
|
1920
|
+
type: ContentChildren,
|
|
1921
|
+
args: [BsScrollspyDirective, { descendants: true }]
|
|
1922
|
+
}], anchors: [{
|
|
1923
|
+
type: ViewChildren,
|
|
1924
|
+
args: ['anchor']
|
|
1925
|
+
}], onWindowScroll: [{
|
|
1926
|
+
type: HostListener,
|
|
1927
|
+
args: ['window:scroll', ['$event']]
|
|
1928
|
+
}] } });
|
|
1929
|
+
|
|
1930
|
+
class BsScrollspyModule {
|
|
1931
|
+
}
|
|
1932
|
+
BsScrollspyModule.ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "13.1.1", ngImport: i0, type: BsScrollspyModule, deps: [], target: i0.ɵɵFactoryTarget.NgModule });
|
|
1933
|
+
BsScrollspyModule.ɵmod = i0.ɵɵngDeclareNgModule({ minVersion: "12.0.0", version: "13.1.1", ngImport: i0, type: BsScrollspyModule, declarations: [BsScrollspyComponent,
|
|
1934
|
+
BsScrollspyDirective], imports: [CommonModule], exports: [BsScrollspyComponent,
|
|
1935
|
+
BsScrollspyDirective] });
|
|
1936
|
+
BsScrollspyModule.ɵinj = i0.ɵɵngDeclareInjector({ minVersion: "12.0.0", version: "13.1.1", ngImport: i0, type: BsScrollspyModule, imports: [[
|
|
1937
|
+
CommonModule
|
|
1938
|
+
]] });
|
|
1939
|
+
i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "13.1.1", ngImport: i0, type: BsScrollspyModule, decorators: [{
|
|
1940
|
+
type: NgModule,
|
|
1941
|
+
args: [{
|
|
1942
|
+
declarations: [
|
|
1943
|
+
BsScrollspyComponent,
|
|
1944
|
+
BsScrollspyDirective
|
|
1945
|
+
],
|
|
1946
|
+
imports: [
|
|
1947
|
+
CommonModule
|
|
1948
|
+
],
|
|
1949
|
+
exports: [
|
|
1950
|
+
BsScrollspyComponent,
|
|
1951
|
+
BsScrollspyDirective
|
|
1952
|
+
]
|
|
1953
|
+
}]
|
|
1954
|
+
}] });
|
|
1955
|
+
|
|
1956
|
+
class BsInListPipe {
|
|
1957
|
+
transform(items, parameter) {
|
|
1958
|
+
return items.some(item => item.id === parameter);
|
|
1959
|
+
}
|
|
1960
|
+
}
|
|
1961
|
+
BsInListPipe.ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "13.1.1", ngImport: i0, type: BsInListPipe, deps: [], target: i0.ɵɵFactoryTarget.Pipe });
|
|
1962
|
+
BsInListPipe.ɵpipe = i0.ɵɵngDeclarePipe({ minVersion: "12.0.0", version: "13.1.1", ngImport: i0, type: BsInListPipe, name: "inList" });
|
|
1963
|
+
i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "13.1.1", ngImport: i0, type: BsInListPipe, decorators: [{
|
|
1964
|
+
type: Pipe,
|
|
1965
|
+
args: [{
|
|
1966
|
+
name: 'inList'
|
|
1967
|
+
}]
|
|
1968
|
+
}] });
|
|
1969
|
+
|
|
1970
|
+
class BsSelect2Component {
|
|
1971
|
+
constructor() {
|
|
1972
|
+
this.isOpen = false;
|
|
1973
|
+
this.suggestions$ = new BehaviorSubject([]);
|
|
1974
|
+
this.isLoading$ = new BehaviorSubject(false);
|
|
1975
|
+
this.hostWidth$ = new BehaviorSubject(200);
|
|
1976
|
+
this.searchterm = '';
|
|
1977
|
+
this.suggestions = [];
|
|
1978
|
+
this.provideSuggestions = new EventEmitter();
|
|
1979
|
+
this.selectedItems = [];
|
|
1980
|
+
this.isFocused = false;
|
|
1981
|
+
this.charWidth = 10;
|
|
1982
|
+
this.searchWidth = 20;
|
|
1983
|
+
}
|
|
1984
|
+
ngAfterViewInit() {
|
|
1985
|
+
this.onResize();
|
|
1986
|
+
}
|
|
1987
|
+
onProvideSuggestions(value) {
|
|
1988
|
+
this.searchWidth = this.charWidth * (this.searchterm.length + 2);
|
|
1989
|
+
if (value === '') {
|
|
1990
|
+
this.isOpen = false;
|
|
1991
|
+
this.suggestions$.next([]);
|
|
1992
|
+
}
|
|
1993
|
+
else {
|
|
1994
|
+
this.isLoading$.next(true);
|
|
1995
|
+
this.isOpen = true;
|
|
1996
|
+
this.provideSuggestions.emit(value);
|
|
1997
|
+
}
|
|
1998
|
+
}
|
|
1999
|
+
onSuggestionClicked(suggestion) {
|
|
2000
|
+
this.searchterm = '';
|
|
2001
|
+
this.isOpen = false;
|
|
2002
|
+
const existing = this.selectedItems.find((value, index) => value.id === suggestion.id);
|
|
2003
|
+
if (existing === undefined) {
|
|
2004
|
+
this.selectedItems.push(suggestion);
|
|
2005
|
+
}
|
|
2006
|
+
else {
|
|
2007
|
+
this.selectedItems.splice(this.selectedItems.indexOf(existing), 1);
|
|
2008
|
+
}
|
|
2009
|
+
this.searchBox.nativeElement.focus();
|
|
2010
|
+
}
|
|
2011
|
+
onRemoveItem(item, event) {
|
|
2012
|
+
event.stopPropagation();
|
|
2013
|
+
this.selectedItems.splice(this.selectedItems.indexOf(item), 1);
|
|
2014
|
+
this.focus();
|
|
2015
|
+
}
|
|
2016
|
+
ngOnInit() {
|
|
2017
|
+
}
|
|
2018
|
+
onResize() {
|
|
2019
|
+
this.hostWidth$.next(this.itemsBox.nativeElement.offsetWidth);
|
|
2020
|
+
}
|
|
2021
|
+
focus() {
|
|
2022
|
+
this.searchBox.nativeElement.focus();
|
|
2023
|
+
}
|
|
2024
|
+
}
|
|
2025
|
+
BsSelect2Component.ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "13.1.1", ngImport: i0, type: BsSelect2Component, deps: [], target: i0.ɵɵFactoryTarget.Component });
|
|
2026
|
+
BsSelect2Component.ɵcmp = i0.ɵɵngDeclareComponent({ minVersion: "12.0.0", version: "13.1.1", type: BsSelect2Component, selector: "bs-select2", inputs: { searchterm: "searchterm", suggestions: "suggestions", selectedItems: "selectedItems" }, outputs: { provideSuggestions: "provideSuggestions" }, host: { listeners: { "window:resize": "onResize()", "click": "focus()" }, properties: { "class.focus": "this.isFocused" } }, viewQueries: [{ propertyName: "searchBox", first: true, predicate: ["searchBox"], descendants: true }, { propertyName: "itemsBox", first: true, predicate: ["itemsBox"], descendants: true }, { propertyName: "defaultItemTemplate", first: true, predicate: ["defaultItemTemplate"], descendants: true, static: true }], ngImport: i0, template: "<div bsDropdown [(isOpen)]=\"isOpen\" [hasBackdrop]=\"false\" [closeOnClickOutside]=\"true\" #itemsBox class=\"items-box\">\n <ng-container *ngFor=\"let item of selectedItems\">\n <ng-container *ngTemplateOutlet=\"itemTemplate ?? defaultItemTemplate; context: { item: item, select2: this }\"></ng-container>\n </ng-container>\n\n <input type=\"text\" autocomplete=\"off\"\n [(ngModel)]=\"searchterm\"\n (ngModelChange)=\"onProvideSuggestions($event)\"\n (focus)=\"isFocused=true\"\n (blur)=\"isFocused=false\"\n [style.width.px]=\"searchWidth\"\n #searchBox />\n <div *bsDropdownMenu>\n <ul class=\"dropdown-menu d-block position-static p-0\" [style.width.px]=\"hostWidth$ | async\">\n <li *ngFor=\"let suggestion of suggestions\" (click)=\"onSuggestionClicked(suggestion)\" [class.selected]=\"selectedItems | inList:suggestion.id\">{{ suggestion.text }}</li>\n </ul>\n </div>\n</div>\n\n<ng-template #defaultItemTemplate let-item=\"item\" let-select2=\"select2\">\n <span class=\"select2-item\">\n <span (click)=\"select2.onRemoveItem(item,$event)\">\u00D7</span>\n {{ item.text }}\n </span>\n</ng-template>\n", styles: [".items-box{display:block;position:relative;width:100%;min-height:38px;padding:0 5px 3px;cursor:text;border:1px solid #ccc}.items-box .select2-item{display:inline-block;background-color:#e4e4e4;color:#1a1a1a;border:1px solid #aaa;border-radius:4px;margin-top:5px;margin-right:5px;padding:0 5px;cursor:default;user-select:none;-webkit-user-select:none}.items-box .select2-item>span{cursor:pointer;color:#999}.items-box .select2-item>span:hover{color:#333}.items-box input{border:none;outline:0;margin:5px 0 2px;background:none}:host{display:block;transition:border-color .15s ease-in-out,box-shadow .15s ease-in-out}:host.focus{color:#495057;background-color:#fff;border-color:#80bdff!important;outline:0;box-shadow:0 0 0 .2rem #007bff40}ul{max-height:200px;overflow-y:auto}ul>li{padding:10px;cursor:pointer}ul>li.selected{background:#ddd}ul>li:hover{color:#fff;background-color:#5897fb}\n"], directives: [{ type: BsDropdownDirective, selector: "[bsDropdown]", inputs: ["hasBackdrop", "sameWidth", "closeOnClickOutside", "isOpen"], outputs: ["isOpenChange"] }, { type: i1.NgForOf, selector: "[ngFor][ngForOf]", inputs: ["ngForOf", "ngForTrackBy", "ngForTemplate"] }, { type: i1.NgTemplateOutlet, selector: "[ngTemplateOutlet]", inputs: ["ngTemplateOutletContext", "ngTemplateOutlet"] }, { type: i3.DefaultValueAccessor, selector: "input:not([type=checkbox])[formControlName],textarea[formControlName],input:not([type=checkbox])[formControl],textarea[formControl],input:not([type=checkbox])[ngModel],textarea[ngModel],[ngDefaultControl]" }, { type: i3.NgControlStatus, selector: "[formControlName],[ngModel],[formControl]" }, { type: i3.NgModel, selector: "[ngModel]:not([formControlName]):not([formControl])", inputs: ["name", "disabled", "ngModel", "ngModelOptions"], outputs: ["ngModelChange"], exportAs: ["ngModel"] }, { type: BsDropdownMenuDirective, selector: "[bsDropdownMenu]" }], pipes: { "async": i1.AsyncPipe, "inList": BsInListPipe } });
|
|
2027
|
+
i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "13.1.1", ngImport: i0, type: BsSelect2Component, decorators: [{
|
|
2028
|
+
type: Component,
|
|
2029
|
+
args: [{ selector: 'bs-select2', template: "<div bsDropdown [(isOpen)]=\"isOpen\" [hasBackdrop]=\"false\" [closeOnClickOutside]=\"true\" #itemsBox class=\"items-box\">\n <ng-container *ngFor=\"let item of selectedItems\">\n <ng-container *ngTemplateOutlet=\"itemTemplate ?? defaultItemTemplate; context: { item: item, select2: this }\"></ng-container>\n </ng-container>\n\n <input type=\"text\" autocomplete=\"off\"\n [(ngModel)]=\"searchterm\"\n (ngModelChange)=\"onProvideSuggestions($event)\"\n (focus)=\"isFocused=true\"\n (blur)=\"isFocused=false\"\n [style.width.px]=\"searchWidth\"\n #searchBox />\n <div *bsDropdownMenu>\n <ul class=\"dropdown-menu d-block position-static p-0\" [style.width.px]=\"hostWidth$ | async\">\n <li *ngFor=\"let suggestion of suggestions\" (click)=\"onSuggestionClicked(suggestion)\" [class.selected]=\"selectedItems | inList:suggestion.id\">{{ suggestion.text }}</li>\n </ul>\n </div>\n</div>\n\n<ng-template #defaultItemTemplate let-item=\"item\" let-select2=\"select2\">\n <span class=\"select2-item\">\n <span (click)=\"select2.onRemoveItem(item,$event)\">\u00D7</span>\n {{ item.text }}\n </span>\n</ng-template>\n", styles: [".items-box{display:block;position:relative;width:100%;min-height:38px;padding:0 5px 3px;cursor:text;border:1px solid #ccc}.items-box .select2-item{display:inline-block;background-color:#e4e4e4;color:#1a1a1a;border:1px solid #aaa;border-radius:4px;margin-top:5px;margin-right:5px;padding:0 5px;cursor:default;user-select:none;-webkit-user-select:none}.items-box .select2-item>span{cursor:pointer;color:#999}.items-box .select2-item>span:hover{color:#333}.items-box input{border:none;outline:0;margin:5px 0 2px;background:none}:host{display:block;transition:border-color .15s ease-in-out,box-shadow .15s ease-in-out}:host.focus{color:#495057;background-color:#fff;border-color:#80bdff!important;outline:0;box-shadow:0 0 0 .2rem #007bff40}ul{max-height:200px;overflow-y:auto}ul>li{padding:10px;cursor:pointer}ul>li.selected{background:#ddd}ul>li:hover{color:#fff;background-color:#5897fb}\n"] }]
|
|
2030
|
+
}], ctorParameters: function () { return []; }, propDecorators: { searchBox: [{
|
|
2031
|
+
type: ViewChild,
|
|
2032
|
+
args: ['searchBox']
|
|
2033
|
+
}], itemsBox: [{
|
|
2034
|
+
type: ViewChild,
|
|
2035
|
+
args: ['itemsBox']
|
|
2036
|
+
}], searchterm: [{
|
|
2037
|
+
type: Input
|
|
2038
|
+
}], suggestions: [{
|
|
2039
|
+
type: Input
|
|
2040
|
+
}], provideSuggestions: [{
|
|
2041
|
+
type: Output
|
|
2042
|
+
}], selectedItems: [{
|
|
2043
|
+
type: Input
|
|
2044
|
+
}], isFocused: [{
|
|
2045
|
+
type: HostBinding,
|
|
2046
|
+
args: ['class.focus']
|
|
2047
|
+
}], onResize: [{
|
|
2048
|
+
type: HostListener,
|
|
2049
|
+
args: ['window:resize']
|
|
2050
|
+
}], focus: [{
|
|
2051
|
+
type: HostListener,
|
|
2052
|
+
args: ['click']
|
|
2053
|
+
}], defaultItemTemplate: [{
|
|
2054
|
+
type: ViewChild,
|
|
2055
|
+
args: ['defaultItemTemplate', { static: true }]
|
|
2056
|
+
}] } });
|
|
2057
|
+
|
|
2058
|
+
class BsItemTemplateDirective {
|
|
2059
|
+
constructor(select2component, templateRef) {
|
|
2060
|
+
this.select2component = select2component;
|
|
2061
|
+
console.log('template', templateRef);
|
|
2062
|
+
this.select2component.itemTemplate = templateRef;
|
|
2063
|
+
}
|
|
2064
|
+
}
|
|
2065
|
+
BsItemTemplateDirective.ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "13.1.1", ngImport: i0, type: BsItemTemplateDirective, deps: [{ token: BsSelect2Component }, { token: i0.TemplateRef }], target: i0.ɵɵFactoryTarget.Directive });
|
|
2066
|
+
BsItemTemplateDirective.ɵdir = i0.ɵɵngDeclareDirective({ minVersion: "12.0.0", version: "13.1.1", type: BsItemTemplateDirective, selector: "[bsItemTemplate]", ngImport: i0 });
|
|
2067
|
+
i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "13.1.1", ngImport: i0, type: BsItemTemplateDirective, decorators: [{
|
|
2068
|
+
type: Directive,
|
|
2069
|
+
args: [{
|
|
2070
|
+
selector: '[bsItemTemplate]'
|
|
2071
|
+
}]
|
|
2072
|
+
}], ctorParameters: function () { return [{ type: BsSelect2Component }, { type: i0.TemplateRef }]; } });
|
|
2073
|
+
|
|
2074
|
+
class BsInListModule {
|
|
2075
|
+
}
|
|
2076
|
+
BsInListModule.ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "13.1.1", ngImport: i0, type: BsInListModule, deps: [], target: i0.ɵɵFactoryTarget.NgModule });
|
|
2077
|
+
BsInListModule.ɵmod = i0.ɵɵngDeclareNgModule({ minVersion: "12.0.0", version: "13.1.1", ngImport: i0, type: BsInListModule, declarations: [BsInListPipe], imports: [CommonModule], exports: [BsInListPipe] });
|
|
2078
|
+
BsInListModule.ɵinj = i0.ɵɵngDeclareInjector({ minVersion: "12.0.0", version: "13.1.1", ngImport: i0, type: BsInListModule, imports: [[
|
|
2079
|
+
CommonModule
|
|
2080
|
+
]] });
|
|
2081
|
+
i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "13.1.1", ngImport: i0, type: BsInListModule, decorators: [{
|
|
2082
|
+
type: NgModule,
|
|
2083
|
+
args: [{
|
|
2084
|
+
declarations: [
|
|
2085
|
+
BsInListPipe
|
|
2086
|
+
],
|
|
2087
|
+
imports: [
|
|
2088
|
+
CommonModule
|
|
2089
|
+
],
|
|
2090
|
+
exports: [
|
|
2091
|
+
BsInListPipe
|
|
2092
|
+
]
|
|
2093
|
+
}]
|
|
2094
|
+
}] });
|
|
2095
|
+
|
|
2096
|
+
class BsSelect2Module {
|
|
2097
|
+
}
|
|
2098
|
+
BsSelect2Module.ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "13.1.1", ngImport: i0, type: BsSelect2Module, deps: [], target: i0.ɵɵFactoryTarget.NgModule });
|
|
2099
|
+
BsSelect2Module.ɵmod = i0.ɵɵngDeclareNgModule({ minVersion: "12.0.0", version: "13.1.1", ngImport: i0, type: BsSelect2Module, declarations: [BsSelect2Component,
|
|
2100
|
+
BsItemTemplateDirective], imports: [CommonModule,
|
|
2101
|
+
FormsModule,
|
|
2102
|
+
BsDropdownModule,
|
|
2103
|
+
BsInListModule], exports: [BsSelect2Component,
|
|
2104
|
+
BsItemTemplateDirective] });
|
|
2105
|
+
BsSelect2Module.ɵinj = i0.ɵɵngDeclareInjector({ minVersion: "12.0.0", version: "13.1.1", ngImport: i0, type: BsSelect2Module, imports: [[
|
|
2106
|
+
CommonModule,
|
|
2107
|
+
FormsModule,
|
|
2108
|
+
BsDropdownModule,
|
|
2109
|
+
BsInListModule
|
|
791
2110
|
]] });
|
|
792
|
-
i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "13.1.1", ngImport: i0, type:
|
|
2111
|
+
i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "13.1.1", ngImport: i0, type: BsSelect2Module, decorators: [{
|
|
793
2112
|
type: NgModule,
|
|
794
2113
|
args: [{
|
|
795
2114
|
declarations: [
|
|
796
|
-
|
|
797
|
-
|
|
798
|
-
BsNavbarDropdownComponent,
|
|
799
|
-
BsNavbarItemComponent,
|
|
800
|
-
DropdownToggleDirective,
|
|
801
|
-
NavLinkDirective,
|
|
802
|
-
NavbarContentDirective
|
|
2115
|
+
BsSelect2Component,
|
|
2116
|
+
BsItemTemplateDirective
|
|
803
2117
|
],
|
|
804
2118
|
imports: [
|
|
805
2119
|
CommonModule,
|
|
806
|
-
|
|
807
|
-
|
|
2120
|
+
FormsModule,
|
|
2121
|
+
BsDropdownModule,
|
|
2122
|
+
BsInListModule
|
|
808
2123
|
],
|
|
809
2124
|
exports: [
|
|
810
|
-
|
|
811
|
-
|
|
812
|
-
BsNavbarDropdownComponent,
|
|
813
|
-
BsNavbarItemComponent,
|
|
814
|
-
DropdownToggleDirective,
|
|
815
|
-
NavLinkDirective,
|
|
816
|
-
NavbarContentDirective
|
|
2125
|
+
BsSelect2Component,
|
|
2126
|
+
BsItemTemplateDirective
|
|
817
2127
|
]
|
|
818
2128
|
}]
|
|
819
2129
|
}] });
|
|
820
2130
|
|
|
821
|
-
|
|
822
|
-
|
|
823
|
-
|
|
824
|
-
|
|
825
|
-
|
|
826
|
-
|
|
827
|
-
|
|
828
|
-
|
|
829
|
-
|
|
830
|
-
|
|
831
|
-
|
|
832
|
-
|
|
833
|
-
|
|
2131
|
+
const SNACKBAR_CONTENT = new InjectionToken('SnackbarContent');
|
|
2132
|
+
|
|
2133
|
+
class BsSnackbarComponent {
|
|
2134
|
+
constructor(content) {
|
|
2135
|
+
this.displayBlock = true;
|
|
2136
|
+
this.width100 = true;
|
|
2137
|
+
this.instance = null;
|
|
2138
|
+
//#region Monitor @slideUpDown hooks
|
|
2139
|
+
this.animationState = '';
|
|
2140
|
+
this.animationStateChanged = new EventEmitter();
|
|
2141
|
+
this.content = content;
|
|
2142
|
+
}
|
|
2143
|
+
onAnimationChanged(event) {
|
|
2144
|
+
this.animationStateChanged.emit(event);
|
|
834
2145
|
}
|
|
835
2146
|
}
|
|
836
|
-
|
|
837
|
-
|
|
838
|
-
i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "13.1.1", ngImport: i0, type:
|
|
2147
|
+
BsSnackbarComponent.ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "13.1.1", ngImport: i0, type: BsSnackbarComponent, deps: [{ token: SNACKBAR_CONTENT }], target: i0.ɵɵFactoryTarget.Component });
|
|
2148
|
+
BsSnackbarComponent.ɵcmp = i0.ɵɵngDeclareComponent({ minVersion: "12.0.0", version: "13.1.1", type: BsSnackbarComponent, selector: "bs-snackbar", host: { properties: { "class.d-block": "this.displayBlock", "class.w-100": "this.width100" } }, ngImport: i0, template: "<div [@slideUpDown]=\"animationState\"\n (@slideUpDown.start)=\"onAnimationChanged($event)\"\n (@slideUpDown.done)=\"onAnimationChanged($event)\">\n\n <ng-container *ngTemplateOutlet=\"content; context: { $implicit: this }\" ></ng-container>\n</div>", styles: [":host{background:#232323;color:rgba(var(--bs-light-rgb))}\n"], directives: [{ type: i1.NgTemplateOutlet, selector: "[ngTemplateOutlet]", inputs: ["ngTemplateOutletContext", "ngTemplateOutlet"] }], animations: [SlideUpDownAnimation] });
|
|
2149
|
+
i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "13.1.1", ngImport: i0, type: BsSnackbarComponent, decorators: [{
|
|
839
2150
|
type: Component,
|
|
840
|
-
args: [{ selector: 'bs-
|
|
841
|
-
}], ctorParameters: function () { return [{ type:
|
|
2151
|
+
args: [{ selector: 'bs-snackbar', animations: [SlideUpDownAnimation], template: "<div [@slideUpDown]=\"animationState\"\n (@slideUpDown.start)=\"onAnimationChanged($event)\"\n (@slideUpDown.done)=\"onAnimationChanged($event)\">\n\n <ng-container *ngTemplateOutlet=\"content; context: { $implicit: this }\" ></ng-container>\n</div>", styles: [":host{background:#232323;color:rgba(var(--bs-light-rgb))}\n"] }]
|
|
2152
|
+
}], ctorParameters: function () { return [{ type: i0.TemplateRef, decorators: [{
|
|
2153
|
+
type: Inject,
|
|
2154
|
+
args: [SNACKBAR_CONTENT]
|
|
2155
|
+
}] }]; }, propDecorators: { displayBlock: [{
|
|
2156
|
+
type: HostBinding,
|
|
2157
|
+
args: ['class.d-block']
|
|
2158
|
+
}], width100: [{
|
|
2159
|
+
type: HostBinding,
|
|
2160
|
+
args: ['class.w-100']
|
|
2161
|
+
}] } });
|
|
842
2162
|
|
|
843
|
-
class
|
|
844
|
-
constructor() {
|
|
845
|
-
this.
|
|
2163
|
+
class BsSnackbarService {
|
|
2164
|
+
constructor(overlay, parentInjector, componentFactoryResolver) {
|
|
2165
|
+
this.overlay = overlay;
|
|
2166
|
+
this.parentInjector = parentInjector;
|
|
2167
|
+
this.componentFactoryResolver = componentFactoryResolver;
|
|
2168
|
+
}
|
|
2169
|
+
show(template) {
|
|
2170
|
+
const injector = Injector.create({
|
|
2171
|
+
providers: [{ provide: SNACKBAR_CONTENT, useValue: template }],
|
|
2172
|
+
parent: this.parentInjector
|
|
2173
|
+
});
|
|
2174
|
+
const portal = new ComponentPortal(BsSnackbarComponent, null, injector, this.componentFactoryResolver);
|
|
2175
|
+
const overlayRef = this.overlay.create({
|
|
2176
|
+
scrollStrategy: this.overlay.scrollStrategies.reposition(),
|
|
2177
|
+
positionStrategy: this.overlay.position()
|
|
2178
|
+
.global().centerHorizontally().bottom('0'),
|
|
2179
|
+
width: '100%'
|
|
2180
|
+
});
|
|
2181
|
+
const componentInstance = overlayRef.attach(portal);
|
|
2182
|
+
// componentInstance.
|
|
2183
|
+
componentInstance.instance['instance'] = {
|
|
2184
|
+
component: componentInstance,
|
|
2185
|
+
overlay: overlayRef
|
|
2186
|
+
};
|
|
2187
|
+
return componentInstance.instance;
|
|
846
2188
|
}
|
|
847
|
-
|
|
2189
|
+
hide(snackbar) {
|
|
2190
|
+
snackbar.animationStateChanged.pipe(filter(ev => ev.phaseName === 'done' && ev.toState === 'void'), take(1)).subscribe(() => {
|
|
2191
|
+
snackbar['instance']?.overlay.dispose();
|
|
2192
|
+
});
|
|
2193
|
+
snackbar.animationState = 'void';
|
|
848
2194
|
}
|
|
849
2195
|
}
|
|
850
|
-
|
|
851
|
-
|
|
852
|
-
i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "13.1.1", ngImport: i0, type:
|
|
853
|
-
type:
|
|
854
|
-
args: [{
|
|
855
|
-
|
|
856
|
-
|
|
857
|
-
|
|
858
|
-
}] } });
|
|
2196
|
+
BsSnackbarService.ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "13.1.1", ngImport: i0, type: BsSnackbarService, deps: [{ token: i1$1.Overlay }, { token: i0.Injector }, { token: i0.ComponentFactoryResolver }], target: i0.ɵɵFactoryTarget.Injectable });
|
|
2197
|
+
BsSnackbarService.ɵprov = i0.ɵɵngDeclareInjectable({ minVersion: "12.0.0", version: "13.1.1", ngImport: i0, type: BsSnackbarService, providedIn: 'root' });
|
|
2198
|
+
i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "13.1.1", ngImport: i0, type: BsSnackbarService, decorators: [{
|
|
2199
|
+
type: Injectable,
|
|
2200
|
+
args: [{
|
|
2201
|
+
providedIn: 'root'
|
|
2202
|
+
}]
|
|
2203
|
+
}], ctorParameters: function () { return [{ type: i1$1.Overlay }, { type: i0.Injector }, { type: i0.ComponentFactoryResolver }]; } });
|
|
859
2204
|
|
|
860
|
-
class
|
|
861
|
-
constructor(
|
|
862
|
-
this.
|
|
863
|
-
this.accordion = accordion;
|
|
864
|
-
}
|
|
865
|
-
ngOnInit() {
|
|
2205
|
+
class BsSnackbarCloseDirective {
|
|
2206
|
+
constructor(snackbarService) {
|
|
2207
|
+
this.snackbarService = snackbarService;
|
|
866
2208
|
}
|
|
867
|
-
|
|
868
|
-
|
|
869
|
-
this.accordion.activeTab = null;
|
|
870
|
-
}
|
|
871
|
-
else {
|
|
872
|
-
this.accordion.activeTab = this.accordionTab;
|
|
873
|
-
}
|
|
2209
|
+
onClick() {
|
|
2210
|
+
this.snackbarService.hide(this.bsSnackbarClose);
|
|
874
2211
|
}
|
|
875
2212
|
}
|
|
876
|
-
|
|
877
|
-
|
|
878
|
-
i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "13.1.1", ngImport: i0, type:
|
|
879
|
-
type:
|
|
880
|
-
args: [{
|
|
881
|
-
|
|
2213
|
+
BsSnackbarCloseDirective.ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "13.1.1", ngImport: i0, type: BsSnackbarCloseDirective, deps: [{ token: BsSnackbarService }], target: i0.ɵɵFactoryTarget.Directive });
|
|
2214
|
+
BsSnackbarCloseDirective.ɵdir = i0.ɵɵngDeclareDirective({ minVersion: "12.0.0", version: "13.1.1", type: BsSnackbarCloseDirective, selector: "[bsSnackbarClose]", inputs: { bsSnackbarClose: "bsSnackbarClose" }, host: { listeners: { "click": "onClick()" } }, ngImport: i0 });
|
|
2215
|
+
i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "13.1.1", ngImport: i0, type: BsSnackbarCloseDirective, decorators: [{
|
|
2216
|
+
type: Directive,
|
|
2217
|
+
args: [{
|
|
2218
|
+
selector: '[bsSnackbarClose]'
|
|
2219
|
+
}]
|
|
2220
|
+
}], ctorParameters: function () { return [{ type: BsSnackbarService }]; }, propDecorators: { bsSnackbarClose: [{
|
|
2221
|
+
type: Input
|
|
2222
|
+
}], onClick: [{
|
|
2223
|
+
type: HostListener,
|
|
2224
|
+
args: ['click']
|
|
2225
|
+
}] } });
|
|
882
2226
|
|
|
883
|
-
class
|
|
2227
|
+
class BsSnackbarModule {
|
|
884
2228
|
}
|
|
885
|
-
|
|
886
|
-
|
|
887
|
-
|
|
888
|
-
|
|
889
|
-
|
|
890
|
-
|
|
891
|
-
|
|
892
|
-
|
|
893
|
-
CommonModule
|
|
894
|
-
BrowserAnimationsModule
|
|
2229
|
+
BsSnackbarModule.ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "13.1.1", ngImport: i0, type: BsSnackbarModule, deps: [], target: i0.ɵɵFactoryTarget.NgModule });
|
|
2230
|
+
BsSnackbarModule.ɵmod = i0.ɵɵngDeclareNgModule({ minVersion: "12.0.0", version: "13.1.1", ngImport: i0, type: BsSnackbarModule, declarations: [BsSnackbarComponent,
|
|
2231
|
+
BsSnackbarCloseDirective], imports: [CommonModule], exports: [BsSnackbarComponent,
|
|
2232
|
+
BsSnackbarCloseDirective] });
|
|
2233
|
+
BsSnackbarModule.ɵinj = i0.ɵɵngDeclareInjector({ minVersion: "12.0.0", version: "13.1.1", ngImport: i0, type: BsSnackbarModule, providers: [
|
|
2234
|
+
// { provide: BsSnackbarComponent, useExisting: forwardRef(() => BsSnackbarComponent) }
|
|
2235
|
+
// { provide: BsSnackbarComponent, useClass: BsSnackbarComponent }
|
|
2236
|
+
], imports: [[
|
|
2237
|
+
CommonModule
|
|
895
2238
|
]] });
|
|
896
|
-
i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "13.1.1", ngImport: i0, type:
|
|
2239
|
+
i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "13.1.1", ngImport: i0, type: BsSnackbarModule, decorators: [{
|
|
897
2240
|
type: NgModule,
|
|
898
2241
|
args: [{
|
|
899
2242
|
declarations: [
|
|
900
|
-
|
|
901
|
-
|
|
902
|
-
BsAccordionTabHeaderComponent
|
|
2243
|
+
BsSnackbarComponent,
|
|
2244
|
+
BsSnackbarCloseDirective
|
|
903
2245
|
],
|
|
904
2246
|
imports: [
|
|
905
|
-
CommonModule
|
|
906
|
-
BrowserAnimationsModule
|
|
2247
|
+
CommonModule
|
|
907
2248
|
],
|
|
908
2249
|
exports: [
|
|
909
|
-
|
|
910
|
-
|
|
911
|
-
|
|
2250
|
+
BsSnackbarComponent,
|
|
2251
|
+
BsSnackbarCloseDirective
|
|
2252
|
+
],
|
|
2253
|
+
providers: [
|
|
2254
|
+
// { provide: BsSnackbarComponent, useExisting: forwardRef(() => BsSnackbarComponent) }
|
|
2255
|
+
// { provide: BsSnackbarComponent, useClass: BsSnackbarComponent }
|
|
912
2256
|
]
|
|
913
2257
|
}]
|
|
914
2258
|
}] });
|
|
@@ -982,85 +2326,363 @@ i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "13.1.1", ngImpor
|
|
|
982
2326
|
}]
|
|
983
2327
|
}] });
|
|
984
2328
|
|
|
985
|
-
class
|
|
986
|
-
constructor(
|
|
987
|
-
this.
|
|
2329
|
+
class BsToggleButtonComponent {
|
|
2330
|
+
constructor() {
|
|
2331
|
+
this.disableAnimations = true;
|
|
2332
|
+
//#region isToggled
|
|
2333
|
+
this._isToggled = false;
|
|
2334
|
+
this.isToggledChange = new EventEmitter();
|
|
2335
|
+
//#endregion
|
|
2336
|
+
this.offColor = '#CCCCCC';
|
|
2337
|
+
this.onColor = '#2196F3';
|
|
2338
|
+
this.round = true;
|
|
2339
|
+
}
|
|
2340
|
+
ngAfterViewInit() {
|
|
2341
|
+
this.disableAnimations = false;
|
|
2342
|
+
}
|
|
2343
|
+
get isToggled() {
|
|
2344
|
+
return this._isToggled;
|
|
2345
|
+
}
|
|
2346
|
+
set isToggled(value) {
|
|
2347
|
+
this._isToggled = value;
|
|
2348
|
+
this.isToggledChange.emit(this._isToggled);
|
|
988
2349
|
}
|
|
989
2350
|
}
|
|
990
|
-
|
|
991
|
-
|
|
992
|
-
i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "13.1.1", ngImport: i0, type:
|
|
993
|
-
type:
|
|
2351
|
+
BsToggleButtonComponent.ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "13.1.1", ngImport: i0, type: BsToggleButtonComponent, deps: [], target: i0.ɵɵFactoryTarget.Component });
|
|
2352
|
+
BsToggleButtonComponent.ɵcmp = i0.ɵɵngDeclareComponent({ minVersion: "12.0.0", version: "13.1.1", type: BsToggleButtonComponent, selector: "bs-toggle-button", inputs: { isToggled: "isToggled", offColor: "offColor", onColor: "onColor", round: "round" }, outputs: { isToggledChange: "isToggledChange" }, ngImport: i0, template: "<label (click)=\"isToggled = !isToggled\" class=\"switch\" [class.checked]=\"isToggled\">\n <span class=\"slider\" [class.round]=\"round\" [@colorTransition]=\"{ value: isToggled ? 'color2' : 'color1', params: { color1: offColor, color2: onColor, 'duration': '.4s' } }\"></span>\n</label>", styles: [".switch{position:relative;display:inline-block;width:30px;height:17px}.switch>.slider{position:absolute;cursor:pointer;top:0;left:0;right:0;bottom:0;transition:transform .4s}.switch>.slider.round{border-radius:8.5px}.switch>.slider.round:before{border-radius:50%}.switch>.slider:before{position:absolute;content:\"\";height:13px;width:13px;left:2px;top:0;bottom:0;margin:auto 0;background-color:#fff;transition:transform .4s}.switch.checked .slider:before{transform:translate(13px)}\n"], animations: [ColorTransitionAnimation] });
|
|
2353
|
+
i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "13.1.1", ngImport: i0, type: BsToggleButtonComponent, decorators: [{
|
|
2354
|
+
type: Component,
|
|
2355
|
+
args: [{ selector: 'bs-toggle-button', animations: [ColorTransitionAnimation], template: "<label (click)=\"isToggled = !isToggled\" class=\"switch\" [class.checked]=\"isToggled\">\n <span class=\"slider\" [class.round]=\"round\" [@colorTransition]=\"{ value: isToggled ? 'color2' : 'color1', params: { color1: offColor, color2: onColor, 'duration': '.4s' } }\"></span>\n</label>", styles: [".switch{position:relative;display:inline-block;width:30px;height:17px}.switch>.slider{position:absolute;cursor:pointer;top:0;left:0;right:0;bottom:0;transition:transform .4s}.switch>.slider.round{border-radius:8.5px}.switch>.slider.round:before{border-radius:50%}.switch>.slider:before{position:absolute;content:\"\";height:13px;width:13px;left:2px;top:0;bottom:0;margin:auto 0;background-color:#fff;transition:transform .4s}.switch.checked .slider:before{transform:translate(13px)}\n"] }]
|
|
2356
|
+
}], propDecorators: { isToggledChange: [{
|
|
2357
|
+
type: Output
|
|
2358
|
+
}], isToggled: [{
|
|
2359
|
+
type: Input
|
|
2360
|
+
}], offColor: [{
|
|
2361
|
+
type: Input
|
|
2362
|
+
}], onColor: [{
|
|
2363
|
+
type: Input
|
|
2364
|
+
}], round: [{
|
|
2365
|
+
type: Input
|
|
2366
|
+
}] } });
|
|
2367
|
+
|
|
2368
|
+
class BsToggleButtonModule {
|
|
2369
|
+
}
|
|
2370
|
+
BsToggleButtonModule.ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "13.1.1", ngImport: i0, type: BsToggleButtonModule, deps: [], target: i0.ɵɵFactoryTarget.NgModule });
|
|
2371
|
+
BsToggleButtonModule.ɵmod = i0.ɵɵngDeclareNgModule({ minVersion: "12.0.0", version: "13.1.1", ngImport: i0, type: BsToggleButtonModule, declarations: [BsToggleButtonComponent], imports: [CommonModule], exports: [BsToggleButtonComponent] });
|
|
2372
|
+
BsToggleButtonModule.ɵinj = i0.ɵɵngDeclareInjector({ minVersion: "12.0.0", version: "13.1.1", ngImport: i0, type: BsToggleButtonModule, imports: [[
|
|
2373
|
+
CommonModule
|
|
2374
|
+
]] });
|
|
2375
|
+
i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "13.1.1", ngImport: i0, type: BsToggleButtonModule, decorators: [{
|
|
2376
|
+
type: NgModule,
|
|
994
2377
|
args: [{
|
|
995
|
-
|
|
2378
|
+
declarations: [
|
|
2379
|
+
BsToggleButtonComponent
|
|
2380
|
+
],
|
|
2381
|
+
imports: [
|
|
2382
|
+
CommonModule
|
|
2383
|
+
],
|
|
2384
|
+
exports: [
|
|
2385
|
+
BsToggleButtonComponent
|
|
2386
|
+
]
|
|
996
2387
|
}]
|
|
997
|
-
}]
|
|
2388
|
+
}] });
|
|
998
2389
|
|
|
999
|
-
|
|
1000
|
-
|
|
1001
|
-
|
|
1002
|
-
|
|
2390
|
+
const TOOLTIP_CONTENT = new InjectionToken('TooltipContent');
|
|
2391
|
+
|
|
2392
|
+
class BsTooltipComponent {
|
|
2393
|
+
constructor(content) {
|
|
2394
|
+
this.positions = Position;
|
|
2395
|
+
this.position = Position.bottom;
|
|
2396
|
+
this.template = content;
|
|
1003
2397
|
}
|
|
1004
|
-
|
|
2398
|
+
}
|
|
2399
|
+
BsTooltipComponent.ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "13.1.1", ngImport: i0, type: BsTooltipComponent, deps: [{ token: TOOLTIP_CONTENT }], target: i0.ɵɵFactoryTarget.Component });
|
|
2400
|
+
BsTooltipComponent.ɵcmp = i0.ɵɵngDeclareComponent({ minVersion: "12.0.0", version: "13.1.1", type: BsTooltipComponent, selector: "bs-tooltip", inputs: { position: "position" }, ngImport: i0, template: "<div [@fadeInOut] class=\"tooltip position-relative show\"\n [class.bs-tooltip-bottom]=\"position === positions.bottom\"\n [class.bs-tooltip-top]=\"position === positions.top\"\n [class.bs-tooltip-start]=\"position === positions.left\"\n [class.bs-tooltip-end]=\"position === positions.right\">\n <div class=\"tooltip-arrow\"></div>\n <div class=\"tooltip-inner\">\n <ng-container *ngTemplateOutlet=\"template\"></ng-container>\n </div>\n</div>\n", styles: [".tooltip.bs-tooltip-bottom .tooltip-arrow,.tooltip.bs-tooltip-top .tooltip-arrow{left:50%;transform:translate(-50%)}.tooltip.bs-tooltip-start .tooltip-arrow,.tooltip.bs-tooltip-end .tooltip-arrow{top:50%;transform:translateY(-50%)}\n"], directives: [{ type: i1.NgTemplateOutlet, selector: "[ngTemplateOutlet]", inputs: ["ngTemplateOutletContext", "ngTemplateOutlet"] }], animations: [FadeInOutAnimation] });
|
|
2401
|
+
i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "13.1.1", ngImport: i0, type: BsTooltipComponent, decorators: [{
|
|
2402
|
+
type: Component,
|
|
2403
|
+
args: [{ selector: 'bs-tooltip', animations: [FadeInOutAnimation], template: "<div [@fadeInOut] class=\"tooltip position-relative show\"\n [class.bs-tooltip-bottom]=\"position === positions.bottom\"\n [class.bs-tooltip-top]=\"position === positions.top\"\n [class.bs-tooltip-start]=\"position === positions.left\"\n [class.bs-tooltip-end]=\"position === positions.right\">\n <div class=\"tooltip-arrow\"></div>\n <div class=\"tooltip-inner\">\n <ng-container *ngTemplateOutlet=\"template\"></ng-container>\n </div>\n</div>\n", styles: [".tooltip.bs-tooltip-bottom .tooltip-arrow,.tooltip.bs-tooltip-top .tooltip-arrow{left:50%;transform:translate(-50%)}.tooltip.bs-tooltip-start .tooltip-arrow,.tooltip.bs-tooltip-end .tooltip-arrow{top:50%;transform:translateY(-50%)}\n"] }]
|
|
2404
|
+
}], ctorParameters: function () { return [{ type: i0.TemplateRef, decorators: [{
|
|
2405
|
+
type: Inject,
|
|
2406
|
+
args: [TOOLTIP_CONTENT]
|
|
2407
|
+
}] }]; }, propDecorators: { position: [{
|
|
2408
|
+
type: Input
|
|
2409
|
+
}] } });
|
|
2410
|
+
|
|
2411
|
+
class BsTooltipDirective {
|
|
2412
|
+
constructor(overlay, templateRef, componentFactoryResolver, parentInjector, parent) {
|
|
2413
|
+
this.overlay = overlay;
|
|
2414
|
+
this.templateRef = templateRef;
|
|
2415
|
+
this.parentInjector = parentInjector;
|
|
2416
|
+
this.parent = parent;
|
|
2417
|
+
this.bsTooltip = Position.bottom;
|
|
2418
|
+
this.overlayRef = null;
|
|
2419
|
+
this.injector = Injector.create({
|
|
2420
|
+
providers: [{ provide: TOOLTIP_CONTENT, useValue: this.templateRef }],
|
|
2421
|
+
parent: this.parentInjector
|
|
2422
|
+
});
|
|
2423
|
+
this.portal = new ComponentPortal(BsTooltipComponent, null, this.injector, componentFactoryResolver);
|
|
2424
|
+
parent.nativeElement.onmouseenter = () => {
|
|
2425
|
+
this.showTooltip();
|
|
2426
|
+
};
|
|
2427
|
+
parent.nativeElement.onmouseleave = () => {
|
|
2428
|
+
this.hideTooltip();
|
|
2429
|
+
};
|
|
2430
|
+
}
|
|
2431
|
+
showTooltip() {
|
|
2432
|
+
const positions = [];
|
|
2433
|
+
switch (this.bsTooltip) {
|
|
2434
|
+
case Position.bottom:
|
|
2435
|
+
{
|
|
2436
|
+
positions.push({
|
|
2437
|
+
originX: "center",
|
|
2438
|
+
originY: "bottom",
|
|
2439
|
+
overlayX: "center",
|
|
2440
|
+
overlayY: "top"
|
|
2441
|
+
});
|
|
2442
|
+
}
|
|
2443
|
+
break;
|
|
2444
|
+
case Position.top:
|
|
2445
|
+
{
|
|
2446
|
+
positions.push({
|
|
2447
|
+
originX: "center",
|
|
2448
|
+
originY: "top",
|
|
2449
|
+
overlayX: "center",
|
|
2450
|
+
overlayY: "bottom"
|
|
2451
|
+
});
|
|
2452
|
+
}
|
|
2453
|
+
break;
|
|
2454
|
+
case Position.left:
|
|
2455
|
+
{
|
|
2456
|
+
positions.push({
|
|
2457
|
+
originX: "start",
|
|
2458
|
+
originY: "center",
|
|
2459
|
+
overlayX: "end",
|
|
2460
|
+
overlayY: "center",
|
|
2461
|
+
});
|
|
2462
|
+
}
|
|
2463
|
+
break;
|
|
2464
|
+
case Position.right:
|
|
2465
|
+
{
|
|
2466
|
+
positions.push({
|
|
2467
|
+
originX: "end",
|
|
2468
|
+
originY: "center",
|
|
2469
|
+
overlayX: "start",
|
|
2470
|
+
overlayY: "center"
|
|
2471
|
+
});
|
|
2472
|
+
}
|
|
2473
|
+
break;
|
|
2474
|
+
}
|
|
2475
|
+
this.overlayRef = this.overlay.create({
|
|
2476
|
+
scrollStrategy: this.overlay.scrollStrategies.reposition(),
|
|
2477
|
+
positionStrategy: this.overlay.position()
|
|
2478
|
+
.flexibleConnectedTo(this.parent)
|
|
2479
|
+
.withPositions(positions),
|
|
2480
|
+
});
|
|
2481
|
+
const component = this.overlayRef.attach(this.portal);
|
|
2482
|
+
component.instance.position = this.bsTooltip;
|
|
2483
|
+
}
|
|
2484
|
+
hideTooltip() {
|
|
2485
|
+
if (this.overlayRef) {
|
|
2486
|
+
this.overlayRef.detach();
|
|
2487
|
+
this.overlayRef.dispose();
|
|
2488
|
+
this.overlayRef = null;
|
|
2489
|
+
}
|
|
2490
|
+
}
|
|
2491
|
+
}
|
|
2492
|
+
BsTooltipDirective.ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "13.1.1", ngImport: i0, type: BsTooltipDirective, deps: [{ token: i1$1.Overlay }, { token: i0.TemplateRef }, { token: i0.ComponentFactoryResolver }, { token: i0.Injector }, { token: i0.ElementRef, host: true, skipSelf: true }], target: i0.ɵɵFactoryTarget.Directive });
|
|
2493
|
+
BsTooltipDirective.ɵdir = i0.ɵɵngDeclareDirective({ minVersion: "12.0.0", version: "13.1.1", type: BsTooltipDirective, selector: "*[bsTooltip]", inputs: { bsTooltip: "bsTooltip" }, ngImport: i0 });
|
|
2494
|
+
i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "13.1.1", ngImport: i0, type: BsTooltipDirective, decorators: [{
|
|
2495
|
+
type: Directive,
|
|
2496
|
+
args: [{
|
|
2497
|
+
selector: '*[bsTooltip]'
|
|
2498
|
+
}]
|
|
2499
|
+
}], ctorParameters: function () { return [{ type: i1$1.Overlay }, { type: i0.TemplateRef }, { type: i0.ComponentFactoryResolver }, { type: i0.Injector }, { type: i0.ElementRef, decorators: [{
|
|
2500
|
+
type: Host
|
|
2501
|
+
}, {
|
|
2502
|
+
type: SkipSelf
|
|
2503
|
+
}] }]; }, propDecorators: { bsTooltip: [{
|
|
2504
|
+
type: Input
|
|
2505
|
+
}] } });
|
|
2506
|
+
|
|
2507
|
+
class BsTooltipModule {
|
|
2508
|
+
}
|
|
2509
|
+
BsTooltipModule.ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "13.1.1", ngImport: i0, type: BsTooltipModule, deps: [], target: i0.ɵɵFactoryTarget.NgModule });
|
|
2510
|
+
BsTooltipModule.ɵmod = i0.ɵɵngDeclareNgModule({ minVersion: "12.0.0", version: "13.1.1", ngImport: i0, type: BsTooltipModule, declarations: [BsTooltipDirective,
|
|
2511
|
+
BsTooltipComponent], imports: [CommonModule], exports: [BsTooltipDirective] });
|
|
2512
|
+
BsTooltipModule.ɵinj = i0.ɵɵngDeclareInjector({ minVersion: "12.0.0", version: "13.1.1", ngImport: i0, type: BsTooltipModule, imports: [[
|
|
2513
|
+
CommonModule
|
|
2514
|
+
]] });
|
|
2515
|
+
i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "13.1.1", ngImport: i0, type: BsTooltipModule, decorators: [{
|
|
2516
|
+
type: NgModule,
|
|
2517
|
+
args: [{
|
|
2518
|
+
declarations: [
|
|
2519
|
+
BsTooltipDirective,
|
|
2520
|
+
BsTooltipComponent
|
|
2521
|
+
],
|
|
2522
|
+
imports: [
|
|
2523
|
+
CommonModule
|
|
2524
|
+
],
|
|
2525
|
+
exports: [
|
|
2526
|
+
BsTooltipDirective
|
|
2527
|
+
]
|
|
2528
|
+
}]
|
|
2529
|
+
}] });
|
|
2530
|
+
|
|
2531
|
+
class BsTypeaheadComponent {
|
|
2532
|
+
constructor() {
|
|
2533
|
+
this.isOpen = false;
|
|
2534
|
+
this.suggestions$ = new BehaviorSubject([]);
|
|
2535
|
+
this.isLoading$ = new BehaviorSubject(false);
|
|
2536
|
+
this.hostWidth$ = new BehaviorSubject(200);
|
|
2537
|
+
this.destroyed$ = new Subject();
|
|
2538
|
+
this.searchterm = '';
|
|
2539
|
+
this.isLoadingText = 'Loading...';
|
|
2540
|
+
this.noSuggestionsText = 'No suggestions found';
|
|
2541
|
+
this.provideSuggestions = new EventEmitter();
|
|
2542
|
+
this.suggestionSelected = new EventEmitter();
|
|
2543
|
+
this.searchtermChange = new EventEmitter();
|
|
2544
|
+
this.submitted = new EventEmitter();
|
|
2545
|
+
this.showNoSuggestions$ = this.suggestions$
|
|
2546
|
+
.pipe(map(suggestions => suggestions.length === 0));
|
|
1005
2547
|
}
|
|
1006
2548
|
ngAfterViewInit() {
|
|
1007
|
-
this.
|
|
2549
|
+
this.onResize();
|
|
1008
2550
|
}
|
|
1009
|
-
|
|
1010
|
-
|
|
1011
|
-
if (
|
|
1012
|
-
this.
|
|
1013
|
-
|
|
1014
|
-
else if (dirs.length === 0) {
|
|
1015
|
-
this.activeDirective = this.directives.get(0) ?? null;
|
|
2551
|
+
onProvideSuggestions(value) {
|
|
2552
|
+
this.searchtermChange.emit(value);
|
|
2553
|
+
if (value === '') {
|
|
2554
|
+
this.isOpen = false;
|
|
2555
|
+
this.suggestions$.next([]);
|
|
1016
2556
|
}
|
|
1017
2557
|
else {
|
|
1018
|
-
this.
|
|
2558
|
+
this.isLoading$.next(true);
|
|
2559
|
+
this.isOpen = true;
|
|
2560
|
+
this.provideSuggestions.emit(value);
|
|
1019
2561
|
}
|
|
1020
2562
|
}
|
|
1021
|
-
|
|
1022
|
-
|
|
1023
|
-
|
|
2563
|
+
set suggestions(value) {
|
|
2564
|
+
this.isLoading$.next(false);
|
|
2565
|
+
this.suggestions$.next(value);
|
|
2566
|
+
}
|
|
2567
|
+
suggestionClicked(suggestion) {
|
|
2568
|
+
this.searchterm = suggestion.text;
|
|
2569
|
+
this.searchtermChange.emit(this.searchterm);
|
|
2570
|
+
this.isOpen = false;
|
|
2571
|
+
this.suggestionSelected.emit(suggestion);
|
|
2572
|
+
}
|
|
2573
|
+
onSubmit() {
|
|
2574
|
+
this.isOpen = false;
|
|
2575
|
+
this.submitted.emit(this.searchterm);
|
|
2576
|
+
}
|
|
2577
|
+
focus() {
|
|
2578
|
+
this.textbox.nativeElement.focus();
|
|
2579
|
+
}
|
|
2580
|
+
onResize() {
|
|
2581
|
+
this.hostWidth$.next(this.textbox.nativeElement.offsetWidth);
|
|
1024
2582
|
}
|
|
1025
2583
|
}
|
|
1026
|
-
|
|
1027
|
-
|
|
1028
|
-
i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "13.1.1", ngImport: i0, type:
|
|
2584
|
+
BsTypeaheadComponent.ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "13.1.1", ngImport: i0, type: BsTypeaheadComponent, deps: [], target: i0.ɵɵFactoryTarget.Component });
|
|
2585
|
+
BsTypeaheadComponent.ɵcmp = i0.ɵɵngDeclareComponent({ minVersion: "12.0.0", version: "13.1.1", type: BsTypeaheadComponent, selector: "bs-typeahead", inputs: { searchterm: "searchterm", isLoadingText: "isLoadingText", noSuggestionsText: "noSuggestionsText", suggestions: "suggestions" }, outputs: { provideSuggestions: "provideSuggestions", suggestionSelected: "suggestionSelected", searchtermChange: "searchtermChange", submitted: "submitted" }, host: { listeners: { "window:resize": "onResize()" } }, viewQueries: [{ propertyName: "textbox", first: true, predicate: ["textbox"], descendants: true }], ngImport: i0, template: "<div bsDropdown [(isOpen)]=\"isOpen\" [hasBackdrop]=\"false\" [closeOnClickOutside]=\"true\">\n <input type=\"text\" class=\"form-control\" #textbox [(ngModel)]=\"searchterm\" (ngModelChange)=\"onProvideSuggestions($event)\" (keyup.enter)=\"onSubmit()\" />\n <div *bsDropdownMenu>\n <ul class=\"dropdown-menu d-block position-static\" [style.width.px]=\"hostWidth$ | async\">\n <bs-progress *ngIf=\"isLoading$ | async\" [height]=\"2\" [isIndeterminate]=\"true\"></bs-progress>\n <li *ngIf=\"isLoading$ | async\">\n <a class=\"dropdown-item disabled\">{{ isLoadingText }}</a>\n </li>\n <ng-container *ngIf=\"(isLoading$ | async) === false\">\n <li *ngIf=\"showNoSuggestions$ | async\">\n <a class=\"dropdown-item disabled\">{{ noSuggestionsText }}</a>\n </li>\n <li *ngFor=\"let suggestion of (suggestions$ | async)\" (click)=\"suggestionClicked(suggestion)\">\n <a class=\"dropdown-item cursor-pointer\">{{ suggestion.text }}</a>\n </li>\n </ng-container>\n </ul>\n </div>\n</div>", styles: ["bs-progress{margin-top:-8px;margin-bottom:6px}\n"], components: [{ type: BsProgressComponent, selector: "bs-progress", inputs: ["height", "isIndeterminate"] }], directives: [{ type: BsDropdownDirective, selector: "[bsDropdown]", inputs: ["hasBackdrop", "sameWidth", "closeOnClickOutside", "isOpen"], outputs: ["isOpenChange"] }, { type: i3.DefaultValueAccessor, selector: "input:not([type=checkbox])[formControlName],textarea[formControlName],input:not([type=checkbox])[formControl],textarea[formControl],input:not([type=checkbox])[ngModel],textarea[ngModel],[ngDefaultControl]" }, { type: i3.NgControlStatus, selector: "[formControlName],[ngModel],[formControl]" }, { type: i3.NgModel, selector: "[ngModel]:not([formControlName]):not([formControl])", inputs: ["name", "disabled", "ngModel", "ngModelOptions"], outputs: ["ngModelChange"], exportAs: ["ngModel"] }, { type: BsDropdownMenuDirective, selector: "[bsDropdownMenu]" }, { type: i1.NgIf, selector: "[ngIf]", inputs: ["ngIf", "ngIfThen", "ngIfElse"] }, { type: i1.NgForOf, selector: "[ngFor][ngForOf]", inputs: ["ngForOf", "ngForTrackBy", "ngForTemplate"] }], pipes: { "async": i1.AsyncPipe } });
|
|
2586
|
+
i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "13.1.1", ngImport: i0, type: BsTypeaheadComponent, decorators: [{
|
|
1029
2587
|
type: Component,
|
|
1030
|
-
args: [{ selector: 'bs-
|
|
1031
|
-
}], ctorParameters: function () { return [
|
|
1032
|
-
|
|
1033
|
-
|
|
1034
|
-
|
|
1035
|
-
type:
|
|
1036
|
-
|
|
1037
|
-
|
|
2588
|
+
args: [{ selector: 'bs-typeahead', template: "<div bsDropdown [(isOpen)]=\"isOpen\" [hasBackdrop]=\"false\" [closeOnClickOutside]=\"true\">\n <input type=\"text\" class=\"form-control\" #textbox [(ngModel)]=\"searchterm\" (ngModelChange)=\"onProvideSuggestions($event)\" (keyup.enter)=\"onSubmit()\" />\n <div *bsDropdownMenu>\n <ul class=\"dropdown-menu d-block position-static\" [style.width.px]=\"hostWidth$ | async\">\n <bs-progress *ngIf=\"isLoading$ | async\" [height]=\"2\" [isIndeterminate]=\"true\"></bs-progress>\n <li *ngIf=\"isLoading$ | async\">\n <a class=\"dropdown-item disabled\">{{ isLoadingText }}</a>\n </li>\n <ng-container *ngIf=\"(isLoading$ | async) === false\">\n <li *ngIf=\"showNoSuggestions$ | async\">\n <a class=\"dropdown-item disabled\">{{ noSuggestionsText }}</a>\n </li>\n <li *ngFor=\"let suggestion of (suggestions$ | async)\" (click)=\"suggestionClicked(suggestion)\">\n <a class=\"dropdown-item cursor-pointer\">{{ suggestion.text }}</a>\n </li>\n </ng-container>\n </ul>\n </div>\n</div>", styles: ["bs-progress{margin-top:-8px;margin-bottom:6px}\n"] }]
|
|
2589
|
+
}], ctorParameters: function () { return []; }, propDecorators: { textbox: [{
|
|
2590
|
+
type: ViewChild,
|
|
2591
|
+
args: ['textbox']
|
|
2592
|
+
}], searchterm: [{
|
|
2593
|
+
type: Input
|
|
2594
|
+
}], isLoadingText: [{
|
|
2595
|
+
type: Input
|
|
2596
|
+
}], noSuggestionsText: [{
|
|
2597
|
+
type: Input
|
|
2598
|
+
}], provideSuggestions: [{
|
|
2599
|
+
type: Output
|
|
2600
|
+
}], suggestionSelected: [{
|
|
2601
|
+
type: Output
|
|
2602
|
+
}], searchtermChange: [{
|
|
2603
|
+
type: Output
|
|
2604
|
+
}], submitted: [{
|
|
2605
|
+
type: Output
|
|
2606
|
+
}], suggestions: [{
|
|
2607
|
+
type: Input
|
|
2608
|
+
}], onResize: [{
|
|
1038
2609
|
type: HostListener,
|
|
1039
|
-
args: ['window:
|
|
2610
|
+
args: ['window:resize']
|
|
1040
2611
|
}] } });
|
|
1041
2612
|
|
|
1042
|
-
class
|
|
2613
|
+
class BsTypeaheadModule {
|
|
1043
2614
|
}
|
|
1044
|
-
|
|
1045
|
-
|
|
1046
|
-
|
|
1047
|
-
|
|
1048
|
-
|
|
2615
|
+
BsTypeaheadModule.ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "13.1.1", ngImport: i0, type: BsTypeaheadModule, deps: [], target: i0.ɵɵFactoryTarget.NgModule });
|
|
2616
|
+
BsTypeaheadModule.ɵmod = i0.ɵɵngDeclareNgModule({ minVersion: "12.0.0", version: "13.1.1", ngImport: i0, type: BsTypeaheadModule, declarations: [BsTypeaheadComponent], imports: [CommonModule,
|
|
2617
|
+
FormsModule,
|
|
2618
|
+
BsDropdownModule,
|
|
2619
|
+
BsProgressBarModule], exports: [BsTypeaheadComponent] });
|
|
2620
|
+
BsTypeaheadModule.ɵinj = i0.ɵɵngDeclareInjector({ minVersion: "12.0.0", version: "13.1.1", ngImport: i0, type: BsTypeaheadModule, imports: [[
|
|
2621
|
+
CommonModule,
|
|
2622
|
+
FormsModule,
|
|
2623
|
+
BsDropdownModule,
|
|
2624
|
+
BsProgressBarModule
|
|
2625
|
+
]] });
|
|
2626
|
+
i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "13.1.1", ngImport: i0, type: BsTypeaheadModule, decorators: [{
|
|
2627
|
+
type: NgModule,
|
|
2628
|
+
args: [{
|
|
2629
|
+
declarations: [
|
|
2630
|
+
BsTypeaheadComponent
|
|
2631
|
+
],
|
|
2632
|
+
imports: [
|
|
2633
|
+
CommonModule,
|
|
2634
|
+
FormsModule,
|
|
2635
|
+
BsDropdownModule,
|
|
2636
|
+
BsProgressBarModule
|
|
2637
|
+
],
|
|
2638
|
+
exports: [
|
|
2639
|
+
BsTypeaheadComponent
|
|
2640
|
+
]
|
|
2641
|
+
}]
|
|
2642
|
+
}] });
|
|
2643
|
+
|
|
2644
|
+
class BsFontColorPipe {
|
|
2645
|
+
transform(color_hex) {
|
|
2646
|
+
if (color_hex === undefined || color_hex === null || color_hex.length < 7 || typeof (color_hex) !== 'string') {
|
|
2647
|
+
return '#FFFFFF';
|
|
2648
|
+
}
|
|
2649
|
+
const R_HEX = color_hex.substr(1, 2);
|
|
2650
|
+
const G_HEX = color_hex.substr(3, 2);
|
|
2651
|
+
const B_HEX = color_hex.substr(5, 2);
|
|
2652
|
+
const R_DEC = parseInt(R_HEX, 16);
|
|
2653
|
+
const G_DEC = parseInt(G_HEX, 16);
|
|
2654
|
+
const B_DEC = parseInt(B_HEX, 16);
|
|
2655
|
+
const CONTRAST_HEX = R_DEC * 0.299 + G_DEC * 0.587 + B_DEC * 0.114 > 186 ? '#000000' : '#FFFFFF';
|
|
2656
|
+
return CONTRAST_HEX;
|
|
2657
|
+
}
|
|
2658
|
+
}
|
|
2659
|
+
BsFontColorPipe.ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "13.1.1", ngImport: i0, type: BsFontColorPipe, deps: [], target: i0.ɵɵFactoryTarget.Pipe });
|
|
2660
|
+
BsFontColorPipe.ɵpipe = i0.ɵɵngDeclarePipe({ minVersion: "12.0.0", version: "13.1.1", ngImport: i0, type: BsFontColorPipe, name: "bsFontColor" });
|
|
2661
|
+
i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "13.1.1", ngImport: i0, type: BsFontColorPipe, decorators: [{
|
|
2662
|
+
type: Pipe,
|
|
2663
|
+
args: [{
|
|
2664
|
+
name: 'bsFontColor'
|
|
2665
|
+
}]
|
|
2666
|
+
}] });
|
|
2667
|
+
|
|
2668
|
+
class BsFontColorPipeModule {
|
|
2669
|
+
}
|
|
2670
|
+
BsFontColorPipeModule.ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "13.1.1", ngImport: i0, type: BsFontColorPipeModule, deps: [], target: i0.ɵɵFactoryTarget.NgModule });
|
|
2671
|
+
BsFontColorPipeModule.ɵmod = i0.ɵɵngDeclareNgModule({ minVersion: "12.0.0", version: "13.1.1", ngImport: i0, type: BsFontColorPipeModule, declarations: [BsFontColorPipe], imports: [CommonModule], exports: [BsFontColorPipe] });
|
|
2672
|
+
BsFontColorPipeModule.ɵinj = i0.ɵɵngDeclareInjector({ minVersion: "12.0.0", version: "13.1.1", ngImport: i0, type: BsFontColorPipeModule, imports: [[
|
|
1049
2673
|
CommonModule
|
|
1050
2674
|
]] });
|
|
1051
|
-
i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "13.1.1", ngImport: i0, type:
|
|
2675
|
+
i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "13.1.1", ngImport: i0, type: BsFontColorPipeModule, decorators: [{
|
|
1052
2676
|
type: NgModule,
|
|
1053
2677
|
args: [{
|
|
1054
2678
|
declarations: [
|
|
1055
|
-
|
|
1056
|
-
BsScrollspyDirective
|
|
2679
|
+
BsFontColorPipe
|
|
1057
2680
|
],
|
|
1058
2681
|
imports: [
|
|
1059
2682
|
CommonModule
|
|
1060
2683
|
],
|
|
1061
2684
|
exports: [
|
|
1062
|
-
|
|
1063
|
-
BsScrollspyDirective
|
|
2685
|
+
BsFontColorPipe
|
|
1064
2686
|
]
|
|
1065
2687
|
}]
|
|
1066
2688
|
}] });
|
|
@@ -1069,5 +2691,5 @@ i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "13.1.1", ngImpor
|
|
|
1069
2691
|
* Generated bundle index. Do not edit.
|
|
1070
2692
|
*/
|
|
1071
2693
|
|
|
1072
|
-
export { BsAccordionComponent, BsAccordionModule, BsAccordionTabComponent, BsAccordionTabHeaderComponent, BsAlertCloseComponent, BsAlertComponent, BsAlertModule, BsCalendarComponent, BsCalendarModule, BsCardComponent, BsCardHeaderComponent, BsCardModule, BsCarouselComponent, BsCarouselImageDirective, BsCarouselModule, BsListGroupComponent, BsListGroupItemComponent, BsListGroupModule, BsNavbarComponent, BsNavbarDropdownComponent, BsNavbarItemComponent, BsNavbarModule, BsNavbarNavComponent, BsScrollspyComponent, BsScrollspyDirective, BsScrollspyModule, BsTabControlComponent, BsTabControlModule, BsTabPageComponent, Color, DropdownToggleDirective, NavLinkDirective, NavbarContentDirective };
|
|
2694
|
+
export { BsAccordionComponent, BsAccordionModule, BsAccordionTabComponent, BsAccordionTabHeaderComponent, BsAlertCloseComponent, BsAlertComponent, BsAlertModule, BsCalendarComponent, BsCalendarModule, BsCardComponent, BsCardHeaderComponent, BsCardModule, BsCarouselComponent, BsCarouselImageDirective, BsCarouselModule, BsContextMenuDirective, BsContextMenuModule, BsDatatableColumnDirective, BsDatatableComponent, BsDatatableModule, BsDatepickerComponent, BsDatepickerModule, BsDropdownDirective, BsDropdownMenuDirective, BsDropdownModule, BsDropdownToggleDirective, BsFontColorPipe, BsFontColorPipeModule, BsItemTemplateDirective, BsListGroupComponent, BsListGroupItemComponent, BsListGroupModule, BsMultiselectComponent, BsMultiselectModule, BsNavbarComponent, BsNavbarDropdownComponent, BsNavbarItemComponent, BsNavbarModule, BsNavbarNavComponent, BsPaginationComponent, BsPaginationModule, BsProgressBarComponent, BsProgressBarModule, BsProgressComponent, BsRowTemplateDirective, BsScrollspyComponent, BsScrollspyDirective, BsScrollspyModule, BsSelect2Component, BsSelect2Module, BsSnackbarCloseDirective, BsSnackbarComponent, BsSnackbarModule, BsSnackbarService, BsTabControlComponent, BsTabControlModule, BsTabPageComponent, BsToggleButtonComponent, BsToggleButtonModule, BsTooltipDirective, BsTooltipModule, BsTypeaheadComponent, BsTypeaheadModule, Color, DatatableSettings, DropdownToggleDirective, NavLinkDirective, NavbarContentDirective, Position };
|
|
1073
2695
|
//# sourceMappingURL=mintplayer-ng-bootstrap.mjs.map
|