@mintplayer/ng-bootstrap 16.17.1 → 16.18.1

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.
Files changed (28) hide show
  1. package/button-type/src/button-type/button-type.directive.d.ts +1 -1
  2. package/esm2022/button-type/src/button-type/button-type.directive.mjs +3 -3
  3. package/esm2022/datepicker/src/datepicker.component.mjs +1 -1
  4. package/esm2022/has-property/index.mjs +2 -0
  5. package/esm2022/has-property/mintplayer-ng-bootstrap-has-property.mjs +5 -0
  6. package/esm2022/has-property/src/has-property.module.mjs +18 -0
  7. package/esm2022/has-property/src/has-property.pipe.mjs +16 -0
  8. package/esm2022/has-property/src/index.mjs +3 -0
  9. package/esm2022/multiselect/src/component/multiselect.component.mjs +1 -1
  10. package/esm2022/searchbox/src/searchbox/searchbox.component.mjs +1 -1
  11. package/esm2022/timepicker/src/timepicker.component.mjs +1 -1
  12. package/fesm2022/mintplayer-ng-bootstrap-button-type.mjs +2 -2
  13. package/fesm2022/mintplayer-ng-bootstrap-button-type.mjs.map +1 -1
  14. package/fesm2022/mintplayer-ng-bootstrap-datepicker.mjs +1 -1
  15. package/fesm2022/mintplayer-ng-bootstrap-datepicker.mjs.map +1 -1
  16. package/fesm2022/mintplayer-ng-bootstrap-has-property.mjs +38 -0
  17. package/fesm2022/mintplayer-ng-bootstrap-has-property.mjs.map +1 -0
  18. package/fesm2022/mintplayer-ng-bootstrap-multiselect.mjs +1 -1
  19. package/fesm2022/mintplayer-ng-bootstrap-multiselect.mjs.map +1 -1
  20. package/fesm2022/mintplayer-ng-bootstrap-searchbox.mjs +1 -1
  21. package/fesm2022/mintplayer-ng-bootstrap-searchbox.mjs.map +1 -1
  22. package/fesm2022/mintplayer-ng-bootstrap-timepicker.mjs +1 -1
  23. package/fesm2022/mintplayer-ng-bootstrap-timepicker.mjs.map +1 -1
  24. package/has-property/index.d.ts +1 -0
  25. package/has-property/src/has-property.module.d.ts +8 -0
  26. package/has-property/src/has-property.pipe.d.ts +7 -0
  27. package/has-property/src/index.d.ts +2 -0
  28. package/package.json +7 -1
@@ -5,5 +5,5 @@ export declare class BsButtonTypeDirective {
5
5
  buttonClass: string;
6
6
  set color(value: Color);
7
7
  static ɵfac: i0.ɵɵFactoryDeclaration<BsButtonTypeDirective, never>;
8
- static ɵdir: i0.ɵɵDirectiveDeclaration<BsButtonTypeDirective, "button[color],input[type=\"button\"][color],input[type=\"submit\"][color]", never, { "color": { "alias": "color"; "required": false; }; }, {}, never, never, false, never>;
8
+ static ɵdir: i0.ɵɵDirectiveDeclaration<BsButtonTypeDirective, "button[color],input[type=\"button\"][color],input[type=\"submit\"][color],a[color]", never, { "color": { "alias": "color"; "required": false; }; }, {}, never, never, false, never>;
9
9
  }
@@ -11,12 +11,12 @@ export class BsButtonTypeDirective {
11
11
  this.buttonClass = `btn-${name}`;
12
12
  }
13
13
  static { this.ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "16.2.6", ngImport: i0, type: BsButtonTypeDirective, deps: [], target: i0.ɵɵFactoryTarget.Directive }); }
14
- static { this.ɵdir = i0.ɵɵngDeclareDirective({ minVersion: "14.0.0", version: "16.2.6", type: BsButtonTypeDirective, selector: "button[color],input[type=\"button\"][color],input[type=\"submit\"][color]", inputs: { color: "color" }, host: { properties: { "class.btn": "this.btnClass", "class": "this.buttonClass" } }, ngImport: i0 }); }
14
+ static { this.ɵdir = i0.ɵɵngDeclareDirective({ minVersion: "14.0.0", version: "16.2.6", type: BsButtonTypeDirective, selector: "button[color],input[type=\"button\"][color],input[type=\"submit\"][color],a[color]", inputs: { color: "color" }, host: { properties: { "class.btn": "this.btnClass", "class": "this.buttonClass" } }, ngImport: i0 }); }
15
15
  }
16
16
  i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "16.2.6", ngImport: i0, type: BsButtonTypeDirective, decorators: [{
17
17
  type: Directive,
18
18
  args: [{
19
- selector: 'button[color],input[type="button"][color],input[type="submit"][color]'
19
+ selector: 'button[color],input[type="button"][color],input[type="submit"][color],a[color]'
20
20
  }]
21
21
  }], propDecorators: { btnClass: [{
22
22
  type: HostBinding,
@@ -27,4 +27,4 @@ i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "16.2.6", ngImpor
27
27
  }], color: [{
28
28
  type: Input
29
29
  }] } });
30
- //# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoiYnV0dG9uLXR5cGUuZGlyZWN0aXZlLmpzIiwic291cmNlUm9vdCI6IiIsInNvdXJjZXMiOlsiLi4vLi4vLi4vLi4vLi4vLi4vLi4vbGlicy9taW50cGxheWVyLW5nLWJvb3RzdHJhcC9idXR0b24tdHlwZS9zcmMvYnV0dG9uLXR5cGUvYnV0dG9uLXR5cGUuZGlyZWN0aXZlLnRzIl0sIm5hbWVzIjpbXSwibWFwcGluZ3MiOiJBQUFBLE9BQU8sRUFBRSxTQUFTLEVBQUUsS0FBSyxFQUFFLFdBQVcsRUFBRSxNQUFNLGVBQWUsQ0FBQztBQUM5RCxPQUFPLEVBQUUsS0FBSyxFQUFFLE1BQU0sMEJBQTBCLENBQUM7O0FBS2pELE1BQU0sT0FBTyxxQkFBcUI7SUFIbEM7UUFJNEIsYUFBUSxHQUFHLElBQUksQ0FBQztRQUNwQixnQkFBVyxHQUFHLGlCQUFpQixDQUFDO0tBS3ZEO0lBSkMsSUFBb0IsS0FBSyxDQUFDLEtBQVk7UUFDcEMsTUFBTSxJQUFJLEdBQUcsS0FBSyxDQUFDLEtBQUssQ0FBQyxDQUFDO1FBQzFCLElBQUksQ0FBQyxXQUFXLEdBQUcsT0FBTyxJQUFJLEVBQUUsQ0FBQztJQUNuQyxDQUFDOzhHQU5VLHFCQUFxQjtrR0FBckIscUJBQXFCOzsyRkFBckIscUJBQXFCO2tCQUhqQyxTQUFTO21CQUFDO29CQUNULFFBQVEsRUFBRSx1RUFBdUU7aUJBQ2xGOzhCQUUyQixRQUFRO3NCQUFqQyxXQUFXO3VCQUFDLFdBQVc7Z0JBQ0YsV0FBVztzQkFBaEMsV0FBVzt1QkFBQyxPQUFPO2dCQUNBLEtBQUs7c0JBQXhCLEtBQUsiLCJzb3VyY2VzQ29udGVudCI6WyJpbXBvcnQgeyBEaXJlY3RpdmUsIElucHV0LCBIb3N0QmluZGluZyB9IGZyb20gJ0Bhbmd1bGFyL2NvcmUnO1xuaW1wb3J0IHsgQ29sb3IgfSBmcm9tICdAbWludHBsYXllci9uZy1ib290c3RyYXAnO1xuXG5ARGlyZWN0aXZlKHtcbiAgc2VsZWN0b3I6ICdidXR0b25bY29sb3JdLGlucHV0W3R5cGU9XCJidXR0b25cIl1bY29sb3JdLGlucHV0W3R5cGU9XCJzdWJtaXRcIl1bY29sb3JdJ1xufSlcbmV4cG9ydCBjbGFzcyBCc0J1dHRvblR5cGVEaXJlY3RpdmUge1xuICBASG9zdEJpbmRpbmcoJ2NsYXNzLmJ0bicpIGJ0bkNsYXNzID0gdHJ1ZTtcbiAgQEhvc3RCaW5kaW5nKCdjbGFzcycpIGJ1dHRvbkNsYXNzID0gJ2J0bi10cmFuc3BhcmVudCc7XG4gIEBJbnB1dCgpIHB1YmxpYyBzZXQgY29sb3IodmFsdWU6IENvbG9yKSB7XG4gICAgY29uc3QgbmFtZSA9IENvbG9yW3ZhbHVlXTtcbiAgICB0aGlzLmJ1dHRvbkNsYXNzID0gYGJ0bi0ke25hbWV9YDtcbiAgfVxufVxuIl19
30
+ //# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoiYnV0dG9uLXR5cGUuZGlyZWN0aXZlLmpzIiwic291cmNlUm9vdCI6IiIsInNvdXJjZXMiOlsiLi4vLi4vLi4vLi4vLi4vLi4vLi4vbGlicy9taW50cGxheWVyLW5nLWJvb3RzdHJhcC9idXR0b24tdHlwZS9zcmMvYnV0dG9uLXR5cGUvYnV0dG9uLXR5cGUuZGlyZWN0aXZlLnRzIl0sIm5hbWVzIjpbXSwibWFwcGluZ3MiOiJBQUFBLE9BQU8sRUFBRSxTQUFTLEVBQUUsS0FBSyxFQUFFLFdBQVcsRUFBRSxNQUFNLGVBQWUsQ0FBQztBQUM5RCxPQUFPLEVBQUUsS0FBSyxFQUFFLE1BQU0sMEJBQTBCLENBQUM7O0FBS2pELE1BQU0sT0FBTyxxQkFBcUI7SUFIbEM7UUFJNEIsYUFBUSxHQUFHLElBQUksQ0FBQztRQUNwQixnQkFBVyxHQUFHLGlCQUFpQixDQUFDO0tBS3ZEO0lBSkMsSUFBb0IsS0FBSyxDQUFDLEtBQVk7UUFDcEMsTUFBTSxJQUFJLEdBQUcsS0FBSyxDQUFDLEtBQUssQ0FBQyxDQUFDO1FBQzFCLElBQUksQ0FBQyxXQUFXLEdBQUcsT0FBTyxJQUFJLEVBQUUsQ0FBQztJQUNuQyxDQUFDOzhHQU5VLHFCQUFxQjtrR0FBckIscUJBQXFCOzsyRkFBckIscUJBQXFCO2tCQUhqQyxTQUFTO21CQUFDO29CQUNULFFBQVEsRUFBRSxnRkFBZ0Y7aUJBQzNGOzhCQUUyQixRQUFRO3NCQUFqQyxXQUFXO3VCQUFDLFdBQVc7Z0JBQ0YsV0FBVztzQkFBaEMsV0FBVzt1QkFBQyxPQUFPO2dCQUNBLEtBQUs7c0JBQXhCLEtBQUsiLCJzb3VyY2VzQ29udGVudCI6WyJpbXBvcnQgeyBEaXJlY3RpdmUsIElucHV0LCBIb3N0QmluZGluZyB9IGZyb20gJ0Bhbmd1bGFyL2NvcmUnO1xuaW1wb3J0IHsgQ29sb3IgfSBmcm9tICdAbWludHBsYXllci9uZy1ib290c3RyYXAnO1xuXG5ARGlyZWN0aXZlKHtcbiAgc2VsZWN0b3I6ICdidXR0b25bY29sb3JdLGlucHV0W3R5cGU9XCJidXR0b25cIl1bY29sb3JdLGlucHV0W3R5cGU9XCJzdWJtaXRcIl1bY29sb3JdLGFbY29sb3JdJ1xufSlcbmV4cG9ydCBjbGFzcyBCc0J1dHRvblR5cGVEaXJlY3RpdmUge1xuICBASG9zdEJpbmRpbmcoJ2NsYXNzLmJ0bicpIGJ0bkNsYXNzID0gdHJ1ZTtcbiAgQEhvc3RCaW5kaW5nKCdjbGFzcycpIGJ1dHRvbkNsYXNzID0gJ2J0bi10cmFuc3BhcmVudCc7XG4gIEBJbnB1dCgpIHB1YmxpYyBzZXQgY29sb3IodmFsdWU6IENvbG9yKSB7XG4gICAgY29uc3QgbmFtZSA9IENvbG9yW3ZhbHVlXTtcbiAgICB0aGlzLmJ1dHRvbkNsYXNzID0gYGJ0bi0ke25hbWV9YDtcbiAgfVxufVxuIl19
@@ -32,7 +32,7 @@ export class BsDatepickerComponent {
32
32
  this.currentMonthChange.emit(value);
33
33
  }
34
34
  static { this.ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "16.2.6", ngImport: i0, type: BsDatepickerComponent, deps: [], target: i0.ɵɵFactoryTarget.Component }); }
35
- static { this.ɵcmp = i0.ɵɵngDeclareComponent({ minVersion: "14.0.0", version: "16.2.6", type: BsDatepickerComponent, selector: "bs-datepicker", inputs: { selectedDate: "selectedDate", currentMonth: "currentMonth", disableDateFn: "disableDateFn" }, outputs: { selectedDateChange: "selectedDateChange", currentMonthChange: "currentMonthChange" }, ngImport: i0, template: "<!-- <bs-dropdown [hasBackdrop]=\"true\" [closeOnClickOutside]=\"true\"></bs-dropdown> -->\n<div bsDropdown [hasBackdrop]=\"true\" [closeOnClickOutside]=\"true\">\n <button bsDropdownToggle [color]=\"colors.primary\">{{ selectedDate | date }}</button>\n <bs-has-overlay></bs-has-overlay>\n <div *bsDropdownMenu>\n <bs-calendar [(selectedDate)]=\"selectedDate\" [(currentMonth)]=\"currentMonth\" [disableDateFn]=\"disableDateFn\"></bs-calendar>\n </div>\n</div>", styles: [""], dependencies: [{ kind: "component", type: i1.BsCalendarComponent, selector: "bs-calendar", inputs: ["currentMonth", "selectedDate", "disableDateFn"], outputs: ["currentMonthChange", "selectedDateChange"] }, { kind: "directive", type: i2.BsDropdownDirective, selector: "[bsDropdown]", inputs: ["hasBackdrop", "sameWidth", "closeOnClickOutside", "sameDropdownWidth", "isOpen"], outputs: ["isOpenChange"] }, { kind: "directive", type: i2.BsDropdownToggleDirective, selector: "[bsDropdownToggle]" }, { kind: "directive", type: i2.BsDropdownMenuDirective, selector: "[bsDropdownMenu]" }, { kind: "component", type: i3.BsHasOverlayComponent, selector: "bs-has-overlay" }, { kind: "directive", type: i4.BsButtonTypeDirective, selector: "button[color],input[type=\"button\"][color],input[type=\"submit\"][color]", inputs: ["color"] }, { kind: "pipe", type: i5.DatePipe, name: "date" }] }); }
35
+ static { this.ɵcmp = i0.ɵɵngDeclareComponent({ minVersion: "14.0.0", version: "16.2.6", type: BsDatepickerComponent, selector: "bs-datepicker", inputs: { selectedDate: "selectedDate", currentMonth: "currentMonth", disableDateFn: "disableDateFn" }, outputs: { selectedDateChange: "selectedDateChange", currentMonthChange: "currentMonthChange" }, ngImport: i0, template: "<!-- <bs-dropdown [hasBackdrop]=\"true\" [closeOnClickOutside]=\"true\"></bs-dropdown> -->\n<div bsDropdown [hasBackdrop]=\"true\" [closeOnClickOutside]=\"true\">\n <button bsDropdownToggle [color]=\"colors.primary\">{{ selectedDate | date }}</button>\n <bs-has-overlay></bs-has-overlay>\n <div *bsDropdownMenu>\n <bs-calendar [(selectedDate)]=\"selectedDate\" [(currentMonth)]=\"currentMonth\" [disableDateFn]=\"disableDateFn\"></bs-calendar>\n </div>\n</div>", styles: [""], dependencies: [{ kind: "component", type: i1.BsCalendarComponent, selector: "bs-calendar", inputs: ["currentMonth", "selectedDate", "disableDateFn"], outputs: ["currentMonthChange", "selectedDateChange"] }, { kind: "directive", type: i2.BsDropdownDirective, selector: "[bsDropdown]", inputs: ["hasBackdrop", "sameWidth", "closeOnClickOutside", "sameDropdownWidth", "isOpen"], outputs: ["isOpenChange"] }, { kind: "directive", type: i2.BsDropdownToggleDirective, selector: "[bsDropdownToggle]" }, { kind: "directive", type: i2.BsDropdownMenuDirective, selector: "[bsDropdownMenu]" }, { kind: "component", type: i3.BsHasOverlayComponent, selector: "bs-has-overlay" }, { kind: "directive", type: i4.BsButtonTypeDirective, selector: "button[color],input[type=\"button\"][color],input[type=\"submit\"][color],a[color]", inputs: ["color"] }, { kind: "pipe", type: i5.DatePipe, name: "date" }] }); }
36
36
  }
37
37
  i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "16.2.6", ngImport: i0, type: BsDatepickerComponent, decorators: [{
38
38
  type: Component,
@@ -0,0 +1,2 @@
1
+ export * from './src';
2
+ //# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoiaW5kZXguanMiLCJzb3VyY2VSb290IjoiIiwic291cmNlcyI6WyIuLi8uLi8uLi8uLi8uLi9saWJzL21pbnRwbGF5ZXItbmctYm9vdHN0cmFwL2hhcy1wcm9wZXJ0eS9pbmRleC50cyJdLCJuYW1lcyI6W10sIm1hcHBpbmdzIjoiQUFBQSxjQUFjLE9BQU8sQ0FBQyIsInNvdXJjZXNDb250ZW50IjpbImV4cG9ydCAqIGZyb20gJy4vc3JjJzsiXX0=
@@ -0,0 +1,5 @@
1
+ /**
2
+ * Generated bundle index. Do not edit.
3
+ */
4
+ export * from './index';
5
+ //# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoibWludHBsYXllci1uZy1ib290c3RyYXAtaGFzLXByb3BlcnR5LmpzIiwic291cmNlUm9vdCI6IiIsInNvdXJjZXMiOlsiLi4vLi4vLi4vLi4vLi4vbGlicy9taW50cGxheWVyLW5nLWJvb3RzdHJhcC9oYXMtcHJvcGVydHkvbWludHBsYXllci1uZy1ib290c3RyYXAtaGFzLXByb3BlcnR5LnRzIl0sIm5hbWVzIjpbXSwibWFwcGluZ3MiOiJBQUFBOztHQUVHO0FBRUgsY0FBYyxTQUFTLENBQUMiLCJzb3VyY2VzQ29udGVudCI6WyIvKipcbiAqIEdlbmVyYXRlZCBidW5kbGUgaW5kZXguIERvIG5vdCBlZGl0LlxuICovXG5cbmV4cG9ydCAqIGZyb20gJy4vaW5kZXgnO1xuIl19
@@ -0,0 +1,18 @@
1
+ import { NgModule } from '@angular/core';
2
+ import { CommonModule } from '@angular/common';
3
+ import { HasPropertyPipe } from './has-property.pipe';
4
+ import * as i0 from "@angular/core";
5
+ export class BsHasPropertyModule {
6
+ static { this.ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "16.2.6", ngImport: i0, type: BsHasPropertyModule, deps: [], target: i0.ɵɵFactoryTarget.NgModule }); }
7
+ static { this.ɵmod = i0.ɵɵngDeclareNgModule({ minVersion: "14.0.0", version: "16.2.6", ngImport: i0, type: BsHasPropertyModule, declarations: [HasPropertyPipe], imports: [CommonModule], exports: [HasPropertyPipe] }); }
8
+ static { this.ɵinj = i0.ɵɵngDeclareInjector({ minVersion: "12.0.0", version: "16.2.6", ngImport: i0, type: BsHasPropertyModule, imports: [CommonModule] }); }
9
+ }
10
+ i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "16.2.6", ngImport: i0, type: BsHasPropertyModule, decorators: [{
11
+ type: NgModule,
12
+ args: [{
13
+ declarations: [HasPropertyPipe],
14
+ imports: [CommonModule],
15
+ exports: [HasPropertyPipe],
16
+ }]
17
+ }] });
18
+ //# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoiaGFzLXByb3BlcnR5Lm1vZHVsZS5qcyIsInNvdXJjZVJvb3QiOiIiLCJzb3VyY2VzIjpbIi4uLy4uLy4uLy4uLy4uLy4uL2xpYnMvbWludHBsYXllci1uZy1ib290c3RyYXAvaGFzLXByb3BlcnR5L3NyYy9oYXMtcHJvcGVydHkubW9kdWxlLnRzIl0sIm5hbWVzIjpbXSwibWFwcGluZ3MiOiJBQUFBLE9BQU8sRUFBRSxRQUFRLEVBQUUsTUFBTSxlQUFlLENBQUM7QUFDekMsT0FBTyxFQUFFLFlBQVksRUFBRSxNQUFNLGlCQUFpQixDQUFDO0FBQy9DLE9BQU8sRUFBRSxlQUFlLEVBQUUsTUFBTSxxQkFBcUIsQ0FBQzs7QUFPdEQsTUFBTSxPQUFPLG1CQUFtQjs4R0FBbkIsbUJBQW1COytHQUFuQixtQkFBbUIsaUJBSmYsZUFBZSxhQUNwQixZQUFZLGFBQ1osZUFBZTsrR0FFZCxtQkFBbUIsWUFIcEIsWUFBWTs7MkZBR1gsbUJBQW1CO2tCQUwvQixRQUFRO21CQUFDO29CQUNSLFlBQVksRUFBRSxDQUFDLGVBQWUsQ0FBQztvQkFDL0IsT0FBTyxFQUFFLENBQUMsWUFBWSxDQUFDO29CQUN2QixPQUFPLEVBQUUsQ0FBQyxlQUFlLENBQUM7aUJBQzNCIiwic291cmNlc0NvbnRlbnQiOlsiaW1wb3J0IHsgTmdNb2R1bGUgfSBmcm9tICdAYW5ndWxhci9jb3JlJztcbmltcG9ydCB7IENvbW1vbk1vZHVsZSB9IGZyb20gJ0Bhbmd1bGFyL2NvbW1vbic7XG5pbXBvcnQgeyBIYXNQcm9wZXJ0eVBpcGUgfSBmcm9tICcuL2hhcy1wcm9wZXJ0eS5waXBlJztcblxuQE5nTW9kdWxlKHtcbiAgZGVjbGFyYXRpb25zOiBbSGFzUHJvcGVydHlQaXBlXSxcbiAgaW1wb3J0czogW0NvbW1vbk1vZHVsZV0sXG4gIGV4cG9ydHM6IFtIYXNQcm9wZXJ0eVBpcGVdLFxufSlcbmV4cG9ydCBjbGFzcyBCc0hhc1Byb3BlcnR5TW9kdWxlIHt9XG4iXX0=
@@ -0,0 +1,16 @@
1
+ import { Pipe } from '@angular/core';
2
+ import * as i0 from "@angular/core";
3
+ export class HasPropertyPipe {
4
+ transform(value, propName) {
5
+ return propName in value;
6
+ }
7
+ static { this.ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "16.2.6", ngImport: i0, type: HasPropertyPipe, deps: [], target: i0.ɵɵFactoryTarget.Pipe }); }
8
+ static { this.ɵpipe = i0.ɵɵngDeclarePipe({ minVersion: "14.0.0", version: "16.2.6", ngImport: i0, type: HasPropertyPipe, name: "bsHasProperty" }); }
9
+ }
10
+ i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "16.2.6", ngImport: i0, type: HasPropertyPipe, decorators: [{
11
+ type: Pipe,
12
+ args: [{
13
+ name: 'bsHasProperty',
14
+ }]
15
+ }] });
16
+ //# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoiaGFzLXByb3BlcnR5LnBpcGUuanMiLCJzb3VyY2VSb290IjoiIiwic291cmNlcyI6WyIuLi8uLi8uLi8uLi8uLi8uLi9saWJzL21pbnRwbGF5ZXItbmctYm9vdHN0cmFwL2hhcy1wcm9wZXJ0eS9zcmMvaGFzLXByb3BlcnR5LnBpcGUudHMiXSwibmFtZXMiOltdLCJtYXBwaW5ncyI6IkFBQUEsT0FBTyxFQUFFLElBQUksRUFBaUIsTUFBTSxlQUFlLENBQUM7O0FBS3BELE1BQU0sT0FBTyxlQUFlO0lBQzFCLFNBQVMsQ0FBQyxLQUFhLEVBQUUsUUFBZ0I7UUFDdkMsT0FBTyxRQUFRLElBQUksS0FBSyxDQUFDO0lBQzNCLENBQUM7OEdBSFUsZUFBZTs0R0FBZixlQUFlOzsyRkFBZixlQUFlO2tCQUgzQixJQUFJO21CQUFDO29CQUNKLElBQUksRUFBRSxlQUFlO2lCQUN0QiIsInNvdXJjZXNDb250ZW50IjpbImltcG9ydCB7IFBpcGUsIFBpcGVUcmFuc2Zvcm0gfSBmcm9tICdAYW5ndWxhci9jb3JlJztcblxuQFBpcGUoe1xuICBuYW1lOiAnYnNIYXNQcm9wZXJ0eScsXG59KVxuZXhwb3J0IGNsYXNzIEhhc1Byb3BlcnR5UGlwZSBpbXBsZW1lbnRzIFBpcGVUcmFuc2Zvcm0ge1xuICB0cmFuc2Zvcm0odmFsdWU6IE9iamVjdCwgcHJvcE5hbWU6IHN0cmluZykge1xuICAgIHJldHVybiBwcm9wTmFtZSBpbiB2YWx1ZTtcbiAgfVxufVxuIl19
@@ -0,0 +1,3 @@
1
+ export * from './has-property.module';
2
+ export * from './has-property.pipe';
3
+ //# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoiaW5kZXguanMiLCJzb3VyY2VSb290IjoiIiwic291cmNlcyI6WyIuLi8uLi8uLi8uLi8uLi8uLi9saWJzL21pbnRwbGF5ZXItbmctYm9vdHN0cmFwL2hhcy1wcm9wZXJ0eS9zcmMvaW5kZXgudHMiXSwibmFtZXMiOltdLCJtYXBwaW5ncyI6IkFBQUEsY0FBYyx1QkFBdUIsQ0FBQztBQUN0QyxjQUFjLHFCQUFxQixDQUFDIiwic291cmNlc0NvbnRlbnQiOlsiZXhwb3J0ICogZnJvbSAnLi9oYXMtcHJvcGVydHkubW9kdWxlJztcbmV4cG9ydCAqIGZyb20gJy4vaGFzLXByb3BlcnR5LnBpcGUnOyJdfQ==
@@ -27,7 +27,7 @@ export class BsMultiselectComponent {
27
27
  return item;
28
28
  }
29
29
  static { this.ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "16.2.6", ngImport: i0, type: BsMultiselectComponent, deps: [], target: i0.ɵɵFactoryTarget.Component }); }
30
- static { this.ɵcmp = i0.ɵɵngDeclareComponent({ minVersion: "14.0.0", version: "16.2.6", type: BsMultiselectComponent, selector: "bs-multiselect", inputs: { items: "items", selectedItems: "selectedItems", itemsTrackBy: "itemsTrackBy" }, viewQueries: [{ propertyName: "defaultButtonTemplate", first: true, predicate: ["defaultButtonTemplate"], descendants: true }], ngImport: i0, template: "<bs-has-overlay></bs-has-overlay>\n<div bsDropdown [hasBackdrop]=\"true\" [closeOnClickOutside]=\"true\">\n <button bsDropdownToggle [color]=\"colors.primary\">\n <ng-container *ngTemplateOutlet=\"buttonTemplate ?? defaultButtonTemplate; context: { $implicit: selectedItems.length }\"></ng-container>\n </button>\n <div *bsDropdownMenu class=\"bg-white mw-250px p-3 border rounded shadow\">\n <ng-container *ngTemplateOutlet=\"headerTemplate\"></ng-container>\n <hr class=\"my-2\" *ngIf=\"headerTemplate\">\n <bs-toggle-button *ngFor=\"let item of items; trackBy: itemsTrackBy ?? defaultTrackBy\" [ngModel]=\"selectedItems.indexOf(item) > -1\" (ngModelChange)=\"itemChange(item, $event)\" class=\"d-block\">{{ item }}</bs-toggle-button>\n <hr class=\"my-2\" *ngIf=\"footerTemplate\">\n <ng-container *ngTemplateOutlet=\"footerTemplate\"></ng-container>\n </div>\n</div>\n<ng-template #defaultButtonTemplate let-count>\n {{ count }} selected\n</ng-template>", styles: [".mw-250px{min-width:250px}\n"], dependencies: [{ kind: "directive", type: i1.NgForOf, selector: "[ngFor][ngForOf]", inputs: ["ngForOf", "ngForTrackBy", "ngForTemplate"] }, { kind: "directive", type: i1.NgIf, selector: "[ngIf]", inputs: ["ngIf", "ngIfThen", "ngIfElse"] }, { kind: "directive", type: i1.NgTemplateOutlet, selector: "[ngTemplateOutlet]", inputs: ["ngTemplateOutletContext", "ngTemplateOutlet", "ngTemplateOutletInjector"] }, { kind: "directive", type: i2.NgControlStatus, selector: "[formControlName],[ngModel],[formControl]" }, { kind: "directive", type: i2.NgModel, selector: "[ngModel]:not([formControlName]):not([formControl])", inputs: ["name", "disabled", "ngModel", "ngModelOptions"], outputs: ["ngModelChange"], exportAs: ["ngModel"] }, { kind: "directive", type: i3.BsDropdownDirective, selector: "[bsDropdown]", inputs: ["hasBackdrop", "sameWidth", "closeOnClickOutside", "sameDropdownWidth", "isOpen"], outputs: ["isOpenChange"] }, { kind: "directive", type: i3.BsDropdownToggleDirective, selector: "[bsDropdownToggle]" }, { kind: "directive", type: i3.BsDropdownMenuDirective, selector: "[bsDropdownMenu]" }, { kind: "component", type: i4.BsHasOverlayComponent, selector: "bs-has-overlay" }, { kind: "component", type: i5.BsToggleButtonComponent, selector: "bs-toggle-button", inputs: ["type", "isToggled", "name", "value", "group"], outputs: ["isToggledChange"] }, { kind: "directive", type: i5.BsToggleButtonValueAccessor, selector: "bs-toggle-button" }, { kind: "directive", type: i6.BsButtonTypeDirective, selector: "button[color],input[type=\"button\"][color],input[type=\"submit\"][color]", inputs: ["color"] }] }); }
30
+ static { this.ɵcmp = i0.ɵɵngDeclareComponent({ minVersion: "14.0.0", version: "16.2.6", type: BsMultiselectComponent, selector: "bs-multiselect", inputs: { items: "items", selectedItems: "selectedItems", itemsTrackBy: "itemsTrackBy" }, viewQueries: [{ propertyName: "defaultButtonTemplate", first: true, predicate: ["defaultButtonTemplate"], descendants: true }], ngImport: i0, template: "<bs-has-overlay></bs-has-overlay>\n<div bsDropdown [hasBackdrop]=\"true\" [closeOnClickOutside]=\"true\">\n <button bsDropdownToggle [color]=\"colors.primary\">\n <ng-container *ngTemplateOutlet=\"buttonTemplate ?? defaultButtonTemplate; context: { $implicit: selectedItems.length }\"></ng-container>\n </button>\n <div *bsDropdownMenu class=\"bg-white mw-250px p-3 border rounded shadow\">\n <ng-container *ngTemplateOutlet=\"headerTemplate\"></ng-container>\n <hr class=\"my-2\" *ngIf=\"headerTemplate\">\n <bs-toggle-button *ngFor=\"let item of items; trackBy: itemsTrackBy ?? defaultTrackBy\" [ngModel]=\"selectedItems.indexOf(item) > -1\" (ngModelChange)=\"itemChange(item, $event)\" class=\"d-block\">{{ item }}</bs-toggle-button>\n <hr class=\"my-2\" *ngIf=\"footerTemplate\">\n <ng-container *ngTemplateOutlet=\"footerTemplate\"></ng-container>\n </div>\n</div>\n<ng-template #defaultButtonTemplate let-count>\n {{ count }} selected\n</ng-template>", styles: [".mw-250px{min-width:250px}\n"], dependencies: [{ kind: "directive", type: i1.NgForOf, selector: "[ngFor][ngForOf]", inputs: ["ngForOf", "ngForTrackBy", "ngForTemplate"] }, { kind: "directive", type: i1.NgIf, selector: "[ngIf]", inputs: ["ngIf", "ngIfThen", "ngIfElse"] }, { kind: "directive", type: i1.NgTemplateOutlet, selector: "[ngTemplateOutlet]", inputs: ["ngTemplateOutletContext", "ngTemplateOutlet", "ngTemplateOutletInjector"] }, { kind: "directive", type: i2.NgControlStatus, selector: "[formControlName],[ngModel],[formControl]" }, { kind: "directive", type: i2.NgModel, selector: "[ngModel]:not([formControlName]):not([formControl])", inputs: ["name", "disabled", "ngModel", "ngModelOptions"], outputs: ["ngModelChange"], exportAs: ["ngModel"] }, { kind: "directive", type: i3.BsDropdownDirective, selector: "[bsDropdown]", inputs: ["hasBackdrop", "sameWidth", "closeOnClickOutside", "sameDropdownWidth", "isOpen"], outputs: ["isOpenChange"] }, { kind: "directive", type: i3.BsDropdownToggleDirective, selector: "[bsDropdownToggle]" }, { kind: "directive", type: i3.BsDropdownMenuDirective, selector: "[bsDropdownMenu]" }, { kind: "component", type: i4.BsHasOverlayComponent, selector: "bs-has-overlay" }, { kind: "component", type: i5.BsToggleButtonComponent, selector: "bs-toggle-button", inputs: ["type", "isToggled", "name", "value", "group"], outputs: ["isToggledChange"] }, { kind: "directive", type: i5.BsToggleButtonValueAccessor, selector: "bs-toggle-button" }, { kind: "directive", type: i6.BsButtonTypeDirective, selector: "button[color],input[type=\"button\"][color],input[type=\"submit\"][color],a[color]", inputs: ["color"] }] }); }
31
31
  }
32
32
  i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "16.2.6", ngImport: i0, type: BsMultiselectComponent, decorators: [{
33
33
  type: Component,
@@ -82,7 +82,7 @@ export class BsSearchboxComponent {
82
82
  this.searchterm = '';
83
83
  }
84
84
  static { this.ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "16.2.6", ngImport: i0, type: BsSearchboxComponent, deps: [{ token: i1.BsFormComponent, optional: true }], target: i0.ɵɵFactoryTarget.Component }); }
85
- static { this.ɵcmp = i0.ɵɵngDeclareComponent({ minVersion: "14.0.0", version: "16.2.6", type: BsSearchboxComponent, selector: "bs-searchbox", inputs: { isOpen: "isOpen", suggestions: "suggestions", selectedItem: "selectedItem", searchterm: "searchterm" }, outputs: { selectedItemChange: "selectedItemChange", provideSuggestions: "provideSuggestions" }, viewQueries: [{ propertyName: "textbox", first: true, predicate: ["textbox"], descendants: true }], ngImport: i0, template: "<bs-has-overlay></bs-has-overlay>\n<div bsDropdown [(isOpen)]=\"isOpen\" [hasBackdrop]=\"false\" [sameDropdownWidth]=\"true\">\n <button [color]=\"colors.primary\" class=\"d-flex w-100\" bsDropdownToggle>\n <div class=\"flex-grow-1\">\n <ng-content *ngIf=\"!selectedItem\"></ng-content>\n <ng-container *ngIf=\"selectedItem && suggestionTemplate\">\n <ng-container *ngTemplateOutlet=\"suggestionTemplate; context: { $implicit: selectedItem, searchbox: this }\"></ng-container>\n </ng-container>\n </div>\n <bs-icon [icon]=\"isOpen ? 'caret-up-fill' : 'caret-down-fill'\" class=\"float-end\"></bs-icon>\n </button>\n <bs-dropdown-menu *bsDropdownMenu>\n <ng-container *bsLet=\"(isBusy$ | async) as isBusy\">\n <bs-progress [isIndeterminate]=\"true\" class=\"prog\" *ngIf=\"isBusy\">\n <bs-progress-bar></bs-progress-bar>\n </bs-progress>\n <div class=\"w-100 px-2 mb-2\">\n <input type=\"text\" #textbox autofocus class=\"form-control d-block\" [ngModel]=\"searchterm$ | async\" (ngModelChange)=\"onSearchtermChange($event)\">\n </div>\n \n <bs-dropdown-item [disabled]=\"true\" *ngIf=\"searchterm === ''\">\n <ng-container *ngTemplateOutlet=\"enterSearchtermTemplate ?? defaultEnterSearchtermTemplate; context: { }\"></ng-container>\n </bs-dropdown-item>\n <div *ngIf=\"searchterm !== ''\" class=\"overflow-y-auto\" [style.max-height.px]=\"200\">\n <bs-dropdown-item *ngFor=\"let suggestion of suggestions\" (click)=\"onSuggestionClicked(suggestion)\" [isSelected]=\"selectedItem?.id === suggestion.id\" [disabled]=\"isBusy ?? true\">\n <ng-container *ngIf=\"suggestionTemplate\">\n <ng-container *ngTemplateOutlet=\"suggestionTemplate; context: { $implicit: suggestion, searchbox: this }\"></ng-container>\n </ng-container>\n </bs-dropdown-item>\n <bs-dropdown-item *ngIf=\"suggestions.length === 0\" [disabled]=\"true\">\n <ng-container *ngTemplateOutlet=\"noResultsTemplate ?? defaultNoResultsTemplate; context: { }\"></ng-container>\n </bs-dropdown-item>\n </div>\n </ng-container>\n </bs-dropdown-menu>\n</div>\n\n<ng-template #defaultEnterSearchtermTemplate>\n Enter a search term\n</ng-template>\n<ng-template #defaultNoResultsTemplate>\n No results\n</ng-template>", styles: [".prog{height:.3rem;margin-top:-.5rem;margin-bottom:.2rem}\n"], dependencies: [{ kind: "directive", type: i2.NgForOf, selector: "[ngFor][ngForOf]", inputs: ["ngForOf", "ngForTrackBy", "ngForTemplate"] }, { kind: "directive", type: i2.NgIf, selector: "[ngIf]", inputs: ["ngIf", "ngIfThen", "ngIfElse"] }, { kind: "directive", type: i2.NgTemplateOutlet, selector: "[ngTemplateOutlet]", inputs: ["ngTemplateOutletContext", "ngTemplateOutlet", "ngTemplateOutletInjector"] }, { kind: "directive", 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]" }, { kind: "directive", type: i3.NgControlStatus, selector: "[formControlName],[ngModel],[formControl]" }, { kind: "directive", type: i3.NgModel, selector: "[ngModel]:not([formControlName]):not([formControl])", inputs: ["name", "disabled", "ngModel", "ngModelOptions"], outputs: ["ngModelChange"], exportAs: ["ngModel"] }, { kind: "directive", type: i4.FocusOnLoadDirective, selector: "*[autofocus]", inputs: ["autofocus"] }, { kind: "directive", type: i5.BsLetDirective, selector: "[bsLet]", inputs: ["bsLet"] }, { kind: "component", type: i6.BsIconComponent, selector: "bs-icon", inputs: ["icon"] }, { kind: "directive", type: i7.BsDropdownDirective, selector: "[bsDropdown]", inputs: ["hasBackdrop", "sameWidth", "closeOnClickOutside", "sameDropdownWidth", "isOpen"], outputs: ["isOpenChange"] }, { kind: "directive", type: i7.BsDropdownToggleDirective, selector: "[bsDropdownToggle]" }, { kind: "directive", type: i7.BsDropdownMenuDirective, selector: "[bsDropdownMenu]" }, { kind: "component", type: i8.BsHasOverlayComponent, selector: "bs-has-overlay" }, { kind: "component", type: i9.BsDropdownMenuComponent, selector: "bs-dropdown-menu", inputs: ["maxHeight"] }, { kind: "component", type: i9.BsDropdownItemComponent, selector: "bs-dropdown-item", inputs: ["isSelected", "disabled"] }, { kind: "directive", type: i10.BsButtonTypeDirective, selector: "button[color],input[type=\"button\"][color],input[type=\"submit\"][color]", inputs: ["color"] }, { kind: "component", type: i11.BsProgressBarComponent, selector: "bs-progress-bar", inputs: ["minimum", "maximum", "value", "color", "striped", "animated"] }, { kind: "component", type: i11.BsProgressComponent, selector: "bs-progress", inputs: ["height", "isIndeterminate"] }, { kind: "pipe", type: i2.AsyncPipe, name: "async" }] }); }
85
+ static { this.ɵcmp = i0.ɵɵngDeclareComponent({ minVersion: "14.0.0", version: "16.2.6", type: BsSearchboxComponent, selector: "bs-searchbox", inputs: { isOpen: "isOpen", suggestions: "suggestions", selectedItem: "selectedItem", searchterm: "searchterm" }, outputs: { selectedItemChange: "selectedItemChange", provideSuggestions: "provideSuggestions" }, viewQueries: [{ propertyName: "textbox", first: true, predicate: ["textbox"], descendants: true }], ngImport: i0, template: "<bs-has-overlay></bs-has-overlay>\n<div bsDropdown [(isOpen)]=\"isOpen\" [hasBackdrop]=\"false\" [sameDropdownWidth]=\"true\">\n <button [color]=\"colors.primary\" class=\"d-flex w-100\" bsDropdownToggle>\n <div class=\"flex-grow-1\">\n <ng-content *ngIf=\"!selectedItem\"></ng-content>\n <ng-container *ngIf=\"selectedItem && suggestionTemplate\">\n <ng-container *ngTemplateOutlet=\"suggestionTemplate; context: { $implicit: selectedItem, searchbox: this }\"></ng-container>\n </ng-container>\n </div>\n <bs-icon [icon]=\"isOpen ? 'caret-up-fill' : 'caret-down-fill'\" class=\"float-end\"></bs-icon>\n </button>\n <bs-dropdown-menu *bsDropdownMenu>\n <ng-container *bsLet=\"(isBusy$ | async) as isBusy\">\n <bs-progress [isIndeterminate]=\"true\" class=\"prog\" *ngIf=\"isBusy\">\n <bs-progress-bar></bs-progress-bar>\n </bs-progress>\n <div class=\"w-100 px-2 mb-2\">\n <input type=\"text\" #textbox autofocus class=\"form-control d-block\" [ngModel]=\"searchterm$ | async\" (ngModelChange)=\"onSearchtermChange($event)\">\n </div>\n \n <bs-dropdown-item [disabled]=\"true\" *ngIf=\"searchterm === ''\">\n <ng-container *ngTemplateOutlet=\"enterSearchtermTemplate ?? defaultEnterSearchtermTemplate; context: { }\"></ng-container>\n </bs-dropdown-item>\n <div *ngIf=\"searchterm !== ''\" class=\"overflow-y-auto\" [style.max-height.px]=\"200\">\n <bs-dropdown-item *ngFor=\"let suggestion of suggestions\" (click)=\"onSuggestionClicked(suggestion)\" [isSelected]=\"selectedItem?.id === suggestion.id\" [disabled]=\"isBusy ?? true\">\n <ng-container *ngIf=\"suggestionTemplate\">\n <ng-container *ngTemplateOutlet=\"suggestionTemplate; context: { $implicit: suggestion, searchbox: this }\"></ng-container>\n </ng-container>\n </bs-dropdown-item>\n <bs-dropdown-item *ngIf=\"suggestions.length === 0\" [disabled]=\"true\">\n <ng-container *ngTemplateOutlet=\"noResultsTemplate ?? defaultNoResultsTemplate; context: { }\"></ng-container>\n </bs-dropdown-item>\n </div>\n </ng-container>\n </bs-dropdown-menu>\n</div>\n\n<ng-template #defaultEnterSearchtermTemplate>\n Enter a search term\n</ng-template>\n<ng-template #defaultNoResultsTemplate>\n No results\n</ng-template>", styles: [".prog{height:.3rem;margin-top:-.5rem;margin-bottom:.2rem}\n"], dependencies: [{ kind: "directive", type: i2.NgForOf, selector: "[ngFor][ngForOf]", inputs: ["ngForOf", "ngForTrackBy", "ngForTemplate"] }, { kind: "directive", type: i2.NgIf, selector: "[ngIf]", inputs: ["ngIf", "ngIfThen", "ngIfElse"] }, { kind: "directive", type: i2.NgTemplateOutlet, selector: "[ngTemplateOutlet]", inputs: ["ngTemplateOutletContext", "ngTemplateOutlet", "ngTemplateOutletInjector"] }, { kind: "directive", 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]" }, { kind: "directive", type: i3.NgControlStatus, selector: "[formControlName],[ngModel],[formControl]" }, { kind: "directive", type: i3.NgModel, selector: "[ngModel]:not([formControlName]):not([formControl])", inputs: ["name", "disabled", "ngModel", "ngModelOptions"], outputs: ["ngModelChange"], exportAs: ["ngModel"] }, { kind: "directive", type: i4.FocusOnLoadDirective, selector: "*[autofocus]", inputs: ["autofocus"] }, { kind: "directive", type: i5.BsLetDirective, selector: "[bsLet]", inputs: ["bsLet"] }, { kind: "component", type: i6.BsIconComponent, selector: "bs-icon", inputs: ["icon"] }, { kind: "directive", type: i7.BsDropdownDirective, selector: "[bsDropdown]", inputs: ["hasBackdrop", "sameWidth", "closeOnClickOutside", "sameDropdownWidth", "isOpen"], outputs: ["isOpenChange"] }, { kind: "directive", type: i7.BsDropdownToggleDirective, selector: "[bsDropdownToggle]" }, { kind: "directive", type: i7.BsDropdownMenuDirective, selector: "[bsDropdownMenu]" }, { kind: "component", type: i8.BsHasOverlayComponent, selector: "bs-has-overlay" }, { kind: "component", type: i9.BsDropdownMenuComponent, selector: "bs-dropdown-menu", inputs: ["maxHeight"] }, { kind: "component", type: i9.BsDropdownItemComponent, selector: "bs-dropdown-item", inputs: ["isSelected", "disabled"] }, { kind: "directive", type: i10.BsButtonTypeDirective, selector: "button[color],input[type=\"button\"][color],input[type=\"submit\"][color],a[color]", inputs: ["color"] }, { kind: "component", type: i11.BsProgressBarComponent, selector: "bs-progress-bar", inputs: ["minimum", "maximum", "value", "color", "striped", "animated"] }, { kind: "component", type: i11.BsProgressComponent, selector: "bs-progress", inputs: ["height", "isIndeterminate"] }, { kind: "pipe", type: i2.AsyncPipe, name: "async" }] }); }
86
86
  }
87
87
  i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "16.2.6", ngImport: i0, type: BsSearchboxComponent, decorators: [{
88
88
  type: Component,
@@ -104,7 +104,7 @@ export class BsTimepickerComponent {
104
104
  return (time1.getHours() === time2.getHours()) && (time1.getMinutes() === time2.getMinutes());
105
105
  }
106
106
  static { this.ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "16.2.6", ngImport: i0, type: BsTimepickerComponent, deps: [{ token: i0.ChangeDetectorRef }, { token: i0.NgZone }, { token: i0.Renderer2 }], target: i0.ɵɵFactoryTarget.Component }); }
107
- static { this.ɵcmp = i0.ɵɵngDeclareComponent({ minVersion: "14.0.0", version: "16.2.6", type: BsTimepickerComponent, selector: "bs-timepicker", inputs: { selectedTime: "selectedTime" }, outputs: { selectedTimeChange: "selectedTimeChange" }, ngImport: i0, template: "<!-- <bs-dropdown [(isOpen)]=\"isOpen\" [sameDropdownWidth]=\"true\"></bs-dropdown> -->\n<div bsDropdown [(isOpen)]=\"isOpen\" [sameDropdownWidth]=\"true\">\n <bs-form>\n <bs-input-group>\n <span class=\"form-control d-flex\" [class.focus]=\"isFocused\">\n <div class=\"flex-grow-1\">\n <input type=\"number\" [min]=\"0\" [max]=\"23\" (input)=\"setNumber($event, 23, minuteBox)\" bsEnhancedPaste [ngModel]=\"hours | number: '2.0'\" (ngModelChange)=\"hours = $event\" (focus)=\"selectAll(hourBox)\" (blur)=\"isFocused = false\" #hourBox class=\"w-100 border-0 bg-transparent text-end no-form-control\">\n </div>\n <span class=\"px-1\">:</span>\n <div class=\"flex-grow-1\">\n <input type=\"number\" [min]=\"0\" [max]=\"59\" (input)=\"setNumber($event, 59, null)\" bsEnhancedPaste [ngModel]=\"minutes | number: '2.0'\" (ngModelChange)=\"minutes = $event\" (focus)=\"selectAll(minuteBox)\" (blur)=\"isFocused = false\" #minuteBox class=\"w-100 border-0 bg-transparent no-form-control\">\n </div>\n </span>\n <button [color]=\"colors.secondary\" (click)=\"isOpen = !isOpen\">\n <bs-icon [icon]=\"'clock'\"></bs-icon>\n </button>\n </bs-input-group>\n </bs-form>\n <bs-has-overlay></bs-has-overlay>\n <bs-dropdown-menu class=\"overflow-auto\" *bsDropdownMenu>\n <bs-dropdown-item [isSelected]=\"timesEqual(selectedTime, timestamp)\" *ngFor=\"let timestamp of presetTimestamps\" (click)=\"setTime(timestamp)\">\n {{ timestamp | date: 'HH:mm' }}\n </bs-dropdown-item>\n </bs-dropdown-menu>\n</div>", styles: [":host{display:inline-block}input::-webkit-outer-spin-button,input::-webkit-inner-spin-button{-webkit-appearance:none;margin:0}input[type=number]{-moz-appearance:textfield;outline:0px!important}.form-control{transition:border-color .15s ease-in-out,box-shadow .15s ease-in-out}.form-control.focus{color:#495057;background-color:#fff;border-color:#80bdff!important;outline:0;box-shadow:0 0 0 .2rem #007bff40}bs-dropdown-menu{max-height:250px}\n"], dependencies: [{ kind: "directive", type: i1.NgForOf, selector: "[ngFor][ngForOf]", inputs: ["ngForOf", "ngForTrackBy", "ngForTemplate"] }, { kind: "directive", type: i2.DefaultValueAccessor, selector: "input:not([type=checkbox])[formControlName],textarea[formControlName],input:not([type=checkbox])[formControl],textarea[formControl],input:not([type=checkbox])[ngModel],textarea[ngModel],[ngDefaultControl]" }, { kind: "directive", type: i2.NumberValueAccessor, selector: "input[type=number][formControlName],input[type=number][formControl],input[type=number][ngModel]" }, { kind: "directive", type: i2.NgControlStatus, selector: "[formControlName],[ngModel],[formControl]" }, { kind: "directive", type: i2.MinValidator, selector: "input[type=number][min][formControlName],input[type=number][min][formControl],input[type=number][min][ngModel]", inputs: ["min"] }, { kind: "directive", type: i2.MaxValidator, selector: "input[type=number][max][formControlName],input[type=number][max][formControl],input[type=number][max][ngModel]", inputs: ["max"] }, { kind: "directive", type: i2.NgModel, selector: "[ngModel]:not([formControlName]):not([formControl])", inputs: ["name", "disabled", "ngModel", "ngModelOptions"], outputs: ["ngModelChange"], exportAs: ["ngModel"] }, { kind: "directive", type: i3.EnhancedPasteDirective, selector: "input[type=\"number\"][bsEnhancedPaste]", outputs: ["numberOverflow"] }, { kind: "component", type: i4.BsFormComponent, selector: "bs-form", inputs: ["action", "method"], outputs: ["submitted"] }, { kind: "component", type: i5.BsIconComponent, selector: "bs-icon", inputs: ["icon"] }, { kind: "directive", type: i6.BsDropdownDirective, selector: "[bsDropdown]", inputs: ["hasBackdrop", "sameWidth", "closeOnClickOutside", "sameDropdownWidth", "isOpen"], outputs: ["isOpenChange"] }, { kind: "directive", type: i6.BsDropdownMenuDirective, selector: "[bsDropdownMenu]" }, { kind: "component", type: i7.BsHasOverlayComponent, selector: "bs-has-overlay" }, { kind: "component", type: i8.BsDropdownMenuComponent, selector: "bs-dropdown-menu", inputs: ["maxHeight"] }, { kind: "component", type: i8.BsDropdownItemComponent, selector: "bs-dropdown-item", inputs: ["isSelected", "disabled"] }, { kind: "component", type: i9.BsInputGroupComponent, selector: "bs-input-group" }, { kind: "directive", type: i10.BsButtonTypeDirective, selector: "button[color],input[type=\"button\"][color],input[type=\"submit\"][color]", inputs: ["color"] }, { kind: "pipe", type: i1.DecimalPipe, name: "number" }, { kind: "pipe", type: i1.DatePipe, name: "date" }] }); }
107
+ static { this.ɵcmp = i0.ɵɵngDeclareComponent({ minVersion: "14.0.0", version: "16.2.6", type: BsTimepickerComponent, selector: "bs-timepicker", inputs: { selectedTime: "selectedTime" }, outputs: { selectedTimeChange: "selectedTimeChange" }, ngImport: i0, template: "<!-- <bs-dropdown [(isOpen)]=\"isOpen\" [sameDropdownWidth]=\"true\"></bs-dropdown> -->\n<div bsDropdown [(isOpen)]=\"isOpen\" [sameDropdownWidth]=\"true\">\n <bs-form>\n <bs-input-group>\n <span class=\"form-control d-flex\" [class.focus]=\"isFocused\">\n <div class=\"flex-grow-1\">\n <input type=\"number\" [min]=\"0\" [max]=\"23\" (input)=\"setNumber($event, 23, minuteBox)\" bsEnhancedPaste [ngModel]=\"hours | number: '2.0'\" (ngModelChange)=\"hours = $event\" (focus)=\"selectAll(hourBox)\" (blur)=\"isFocused = false\" #hourBox class=\"w-100 border-0 bg-transparent text-end no-form-control\">\n </div>\n <span class=\"px-1\">:</span>\n <div class=\"flex-grow-1\">\n <input type=\"number\" [min]=\"0\" [max]=\"59\" (input)=\"setNumber($event, 59, null)\" bsEnhancedPaste [ngModel]=\"minutes | number: '2.0'\" (ngModelChange)=\"minutes = $event\" (focus)=\"selectAll(minuteBox)\" (blur)=\"isFocused = false\" #minuteBox class=\"w-100 border-0 bg-transparent no-form-control\">\n </div>\n </span>\n <button [color]=\"colors.secondary\" (click)=\"isOpen = !isOpen\">\n <bs-icon [icon]=\"'clock'\"></bs-icon>\n </button>\n </bs-input-group>\n </bs-form>\n <bs-has-overlay></bs-has-overlay>\n <bs-dropdown-menu class=\"overflow-auto\" *bsDropdownMenu>\n <bs-dropdown-item [isSelected]=\"timesEqual(selectedTime, timestamp)\" *ngFor=\"let timestamp of presetTimestamps\" (click)=\"setTime(timestamp)\">\n {{ timestamp | date: 'HH:mm' }}\n </bs-dropdown-item>\n </bs-dropdown-menu>\n</div>", styles: [":host{display:inline-block}input::-webkit-outer-spin-button,input::-webkit-inner-spin-button{-webkit-appearance:none;margin:0}input[type=number]{-moz-appearance:textfield;outline:0px!important}.form-control{transition:border-color .15s ease-in-out,box-shadow .15s ease-in-out}.form-control.focus{color:#495057;background-color:#fff;border-color:#80bdff!important;outline:0;box-shadow:0 0 0 .2rem #007bff40}bs-dropdown-menu{max-height:250px}\n"], dependencies: [{ kind: "directive", type: i1.NgForOf, selector: "[ngFor][ngForOf]", inputs: ["ngForOf", "ngForTrackBy", "ngForTemplate"] }, { kind: "directive", type: i2.DefaultValueAccessor, selector: "input:not([type=checkbox])[formControlName],textarea[formControlName],input:not([type=checkbox])[formControl],textarea[formControl],input:not([type=checkbox])[ngModel],textarea[ngModel],[ngDefaultControl]" }, { kind: "directive", type: i2.NumberValueAccessor, selector: "input[type=number][formControlName],input[type=number][formControl],input[type=number][ngModel]" }, { kind: "directive", type: i2.NgControlStatus, selector: "[formControlName],[ngModel],[formControl]" }, { kind: "directive", type: i2.MinValidator, selector: "input[type=number][min][formControlName],input[type=number][min][formControl],input[type=number][min][ngModel]", inputs: ["min"] }, { kind: "directive", type: i2.MaxValidator, selector: "input[type=number][max][formControlName],input[type=number][max][formControl],input[type=number][max][ngModel]", inputs: ["max"] }, { kind: "directive", type: i2.NgModel, selector: "[ngModel]:not([formControlName]):not([formControl])", inputs: ["name", "disabled", "ngModel", "ngModelOptions"], outputs: ["ngModelChange"], exportAs: ["ngModel"] }, { kind: "directive", type: i3.EnhancedPasteDirective, selector: "input[type=\"number\"][bsEnhancedPaste]", outputs: ["numberOverflow"] }, { kind: "component", type: i4.BsFormComponent, selector: "bs-form", inputs: ["action", "method"], outputs: ["submitted"] }, { kind: "component", type: i5.BsIconComponent, selector: "bs-icon", inputs: ["icon"] }, { kind: "directive", type: i6.BsDropdownDirective, selector: "[bsDropdown]", inputs: ["hasBackdrop", "sameWidth", "closeOnClickOutside", "sameDropdownWidth", "isOpen"], outputs: ["isOpenChange"] }, { kind: "directive", type: i6.BsDropdownMenuDirective, selector: "[bsDropdownMenu]" }, { kind: "component", type: i7.BsHasOverlayComponent, selector: "bs-has-overlay" }, { kind: "component", type: i8.BsDropdownMenuComponent, selector: "bs-dropdown-menu", inputs: ["maxHeight"] }, { kind: "component", type: i8.BsDropdownItemComponent, selector: "bs-dropdown-item", inputs: ["isSelected", "disabled"] }, { kind: "component", type: i9.BsInputGroupComponent, selector: "bs-input-group" }, { kind: "directive", type: i10.BsButtonTypeDirective, selector: "button[color],input[type=\"button\"][color],input[type=\"submit\"][color],a[color]", inputs: ["color"] }, { kind: "pipe", type: i1.DecimalPipe, name: "number" }, { kind: "pipe", type: i1.DatePipe, name: "date" }] }); }
108
108
  }
109
109
  i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "16.2.6", ngImport: i0, type: BsTimepickerComponent, decorators: [{
110
110
  type: Component,
@@ -13,12 +13,12 @@ class BsButtonTypeDirective {
13
13
  this.buttonClass = `btn-${name}`;
14
14
  }
15
15
  static { this.ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "16.2.6", ngImport: i0, type: BsButtonTypeDirective, deps: [], target: i0.ɵɵFactoryTarget.Directive }); }
16
- static { this.ɵdir = i0.ɵɵngDeclareDirective({ minVersion: "14.0.0", version: "16.2.6", type: BsButtonTypeDirective, selector: "button[color],input[type=\"button\"][color],input[type=\"submit\"][color]", inputs: { color: "color" }, host: { properties: { "class.btn": "this.btnClass", "class": "this.buttonClass" } }, ngImport: i0 }); }
16
+ static { this.ɵdir = i0.ɵɵngDeclareDirective({ minVersion: "14.0.0", version: "16.2.6", type: BsButtonTypeDirective, selector: "button[color],input[type=\"button\"][color],input[type=\"submit\"][color],a[color]", inputs: { color: "color" }, host: { properties: { "class.btn": "this.btnClass", "class": "this.buttonClass" } }, ngImport: i0 }); }
17
17
  }
18
18
  i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "16.2.6", ngImport: i0, type: BsButtonTypeDirective, decorators: [{
19
19
  type: Directive,
20
20
  args: [{
21
- selector: 'button[color],input[type="button"][color],input[type="submit"][color]'
21
+ selector: 'button[color],input[type="button"][color],input[type="submit"][color],a[color]'
22
22
  }]
23
23
  }], propDecorators: { btnClass: [{
24
24
  type: HostBinding,
@@ -1 +1 @@
1
- {"version":3,"file":"mintplayer-ng-bootstrap-button-type.mjs","sources":["../../../../libs/mintplayer-ng-bootstrap/button-type/src/button-type/button-type.directive.ts","../../../../libs/mintplayer-ng-bootstrap/button-type/src/button-type/button-type.module.ts","../../../../libs/mintplayer-ng-bootstrap/button-type/mintplayer-ng-bootstrap-button-type.ts"],"sourcesContent":["import { Directive, Input, HostBinding } from '@angular/core';\nimport { Color } from '@mintplayer/ng-bootstrap';\n\n@Directive({\n selector: 'button[color],input[type=\"button\"][color],input[type=\"submit\"][color]'\n})\nexport class BsButtonTypeDirective {\n @HostBinding('class.btn') btnClass = true;\n @HostBinding('class') buttonClass = 'btn-transparent';\n @Input() public set color(value: Color) {\n const name = Color[value];\n this.buttonClass = `btn-${name}`;\n }\n}\n","import { NgModule } from '@angular/core';\nimport { CommonModule } from '@angular/common';\nimport { BsButtonTypeDirective } from './button-type.directive';\n\n@NgModule({\n declarations: [\n BsButtonTypeDirective\n ],\n imports: [\n CommonModule\n ],\n exports: [\n BsButtonTypeDirective\n ]\n})\nexport class BsButtonTypeModule { }\n","/**\n * Generated bundle index. Do not edit.\n */\n\nexport * from './index';\n"],"names":[],"mappings":";;;;;MAMa,qBAAqB,CAAA;AAHlC,IAAA,WAAA,GAAA;QAI4B,IAAQ,CAAA,QAAA,GAAG,IAAI,CAAC;QACpB,IAAW,CAAA,WAAA,GAAG,iBAAiB,CAAC;AAKvD,KAAA;IAJC,IAAoB,KAAK,CAAC,KAAY,EAAA;AACpC,QAAA,MAAM,IAAI,GAAG,KAAK,CAAC,KAAK,CAAC,CAAC;AAC1B,QAAA,IAAI,CAAC,WAAW,GAAG,CAAO,IAAA,EAAA,IAAI,EAAE,CAAC;KAClC;8GANU,qBAAqB,EAAA,IAAA,EAAA,EAAA,EAAA,MAAA,EAAA,EAAA,CAAA,eAAA,CAAA,SAAA,EAAA,CAAA,CAAA,EAAA;kGAArB,qBAAqB,EAAA,QAAA,EAAA,2EAAA,EAAA,MAAA,EAAA,EAAA,KAAA,EAAA,OAAA,EAAA,EAAA,IAAA,EAAA,EAAA,UAAA,EAAA,EAAA,WAAA,EAAA,eAAA,EAAA,OAAA,EAAA,kBAAA,EAAA,EAAA,EAAA,QAAA,EAAA,EAAA,EAAA,CAAA,CAAA,EAAA;;2FAArB,qBAAqB,EAAA,UAAA,EAAA,CAAA;kBAHjC,SAAS;AAAC,YAAA,IAAA,EAAA,CAAA;AACT,oBAAA,QAAQ,EAAE,uEAAuE;AAClF,iBAAA,CAAA;8BAE2B,QAAQ,EAAA,CAAA;sBAAjC,WAAW;uBAAC,WAAW,CAAA;gBACF,WAAW,EAAA,CAAA;sBAAhC,WAAW;uBAAC,OAAO,CAAA;gBACA,KAAK,EAAA,CAAA;sBAAxB,KAAK;;;MCMK,kBAAkB,CAAA;8GAAlB,kBAAkB,EAAA,IAAA,EAAA,EAAA,EAAA,MAAA,EAAA,EAAA,CAAA,eAAA,CAAA,QAAA,EAAA,CAAA,CAAA,EAAA;AAAlB,IAAA,SAAA,IAAA,CAAA,IAAA,GAAA,EAAA,CAAA,mBAAA,CAAA,EAAA,UAAA,EAAA,QAAA,EAAA,OAAA,EAAA,QAAA,EAAA,QAAA,EAAA,EAAA,EAAA,IAAA,EAAA,kBAAkB,EAT3B,YAAA,EAAA,CAAA,qBAAqB,CAGrB,EAAA,OAAA,EAAA,CAAA,YAAY,aAGZ,qBAAqB,CAAA,EAAA,CAAA,CAAA,EAAA;AAGZ,IAAA,SAAA,IAAA,CAAA,IAAA,GAAA,EAAA,CAAA,mBAAA,CAAA,EAAA,UAAA,EAAA,QAAA,EAAA,OAAA,EAAA,QAAA,EAAA,QAAA,EAAA,EAAA,EAAA,IAAA,EAAA,kBAAkB,YAN3B,YAAY,CAAA,EAAA,CAAA,CAAA,EAAA;;2FAMH,kBAAkB,EAAA,UAAA,EAAA,CAAA;kBAX9B,QAAQ;AAAC,YAAA,IAAA,EAAA,CAAA;AACR,oBAAA,YAAY,EAAE;wBACZ,qBAAqB;AACtB,qBAAA;AACD,oBAAA,OAAO,EAAE;wBACP,YAAY;AACb,qBAAA;AACD,oBAAA,OAAO,EAAE;wBACP,qBAAqB;AACtB,qBAAA;AACF,iBAAA,CAAA;;;ACdD;;AAEG;;;;"}
1
+ {"version":3,"file":"mintplayer-ng-bootstrap-button-type.mjs","sources":["../../../../libs/mintplayer-ng-bootstrap/button-type/src/button-type/button-type.directive.ts","../../../../libs/mintplayer-ng-bootstrap/button-type/src/button-type/button-type.module.ts","../../../../libs/mintplayer-ng-bootstrap/button-type/mintplayer-ng-bootstrap-button-type.ts"],"sourcesContent":["import { Directive, Input, HostBinding } from '@angular/core';\nimport { Color } from '@mintplayer/ng-bootstrap';\n\n@Directive({\n selector: 'button[color],input[type=\"button\"][color],input[type=\"submit\"][color],a[color]'\n})\nexport class BsButtonTypeDirective {\n @HostBinding('class.btn') btnClass = true;\n @HostBinding('class') buttonClass = 'btn-transparent';\n @Input() public set color(value: Color) {\n const name = Color[value];\n this.buttonClass = `btn-${name}`;\n }\n}\n","import { NgModule } from '@angular/core';\nimport { CommonModule } from '@angular/common';\nimport { BsButtonTypeDirective } from './button-type.directive';\n\n@NgModule({\n declarations: [\n BsButtonTypeDirective\n ],\n imports: [\n CommonModule\n ],\n exports: [\n BsButtonTypeDirective\n ]\n})\nexport class BsButtonTypeModule { }\n","/**\n * Generated bundle index. Do not edit.\n */\n\nexport * from './index';\n"],"names":[],"mappings":";;;;;MAMa,qBAAqB,CAAA;AAHlC,IAAA,WAAA,GAAA;QAI4B,IAAQ,CAAA,QAAA,GAAG,IAAI,CAAC;QACpB,IAAW,CAAA,WAAA,GAAG,iBAAiB,CAAC;AAKvD,KAAA;IAJC,IAAoB,KAAK,CAAC,KAAY,EAAA;AACpC,QAAA,MAAM,IAAI,GAAG,KAAK,CAAC,KAAK,CAAC,CAAC;AAC1B,QAAA,IAAI,CAAC,WAAW,GAAG,CAAO,IAAA,EAAA,IAAI,EAAE,CAAC;KAClC;8GANU,qBAAqB,EAAA,IAAA,EAAA,EAAA,EAAA,MAAA,EAAA,EAAA,CAAA,eAAA,CAAA,SAAA,EAAA,CAAA,CAAA,EAAA;kGAArB,qBAAqB,EAAA,QAAA,EAAA,oFAAA,EAAA,MAAA,EAAA,EAAA,KAAA,EAAA,OAAA,EAAA,EAAA,IAAA,EAAA,EAAA,UAAA,EAAA,EAAA,WAAA,EAAA,eAAA,EAAA,OAAA,EAAA,kBAAA,EAAA,EAAA,EAAA,QAAA,EAAA,EAAA,EAAA,CAAA,CAAA,EAAA;;2FAArB,qBAAqB,EAAA,UAAA,EAAA,CAAA;kBAHjC,SAAS;AAAC,YAAA,IAAA,EAAA,CAAA;AACT,oBAAA,QAAQ,EAAE,gFAAgF;AAC3F,iBAAA,CAAA;8BAE2B,QAAQ,EAAA,CAAA;sBAAjC,WAAW;uBAAC,WAAW,CAAA;gBACF,WAAW,EAAA,CAAA;sBAAhC,WAAW;uBAAC,OAAO,CAAA;gBACA,KAAK,EAAA,CAAA;sBAAxB,KAAK;;;MCMK,kBAAkB,CAAA;8GAAlB,kBAAkB,EAAA,IAAA,EAAA,EAAA,EAAA,MAAA,EAAA,EAAA,CAAA,eAAA,CAAA,QAAA,EAAA,CAAA,CAAA,EAAA;AAAlB,IAAA,SAAA,IAAA,CAAA,IAAA,GAAA,EAAA,CAAA,mBAAA,CAAA,EAAA,UAAA,EAAA,QAAA,EAAA,OAAA,EAAA,QAAA,EAAA,QAAA,EAAA,EAAA,EAAA,IAAA,EAAA,kBAAkB,EAT3B,YAAA,EAAA,CAAA,qBAAqB,CAGrB,EAAA,OAAA,EAAA,CAAA,YAAY,aAGZ,qBAAqB,CAAA,EAAA,CAAA,CAAA,EAAA;AAGZ,IAAA,SAAA,IAAA,CAAA,IAAA,GAAA,EAAA,CAAA,mBAAA,CAAA,EAAA,UAAA,EAAA,QAAA,EAAA,OAAA,EAAA,QAAA,EAAA,QAAA,EAAA,EAAA,EAAA,IAAA,EAAA,kBAAkB,YAN3B,YAAY,CAAA,EAAA,CAAA,CAAA,EAAA;;2FAMH,kBAAkB,EAAA,UAAA,EAAA,CAAA;kBAX9B,QAAQ;AAAC,YAAA,IAAA,EAAA,CAAA;AACR,oBAAA,YAAY,EAAE;wBACZ,qBAAqB;AACtB,qBAAA;AACD,oBAAA,OAAO,EAAE;wBACP,YAAY;AACb,qBAAA;AACD,oBAAA,OAAO,EAAE;wBACP,qBAAqB;AACtB,qBAAA;AACF,iBAAA,CAAA;;;ACdD;;AAEG;;;;"}
@@ -38,7 +38,7 @@ class BsDatepickerComponent {
38
38
  this.currentMonthChange.emit(value);
39
39
  }
40
40
  static { this.ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "16.2.6", ngImport: i0, type: BsDatepickerComponent, deps: [], target: i0.ɵɵFactoryTarget.Component }); }
41
- static { this.ɵcmp = i0.ɵɵngDeclareComponent({ minVersion: "14.0.0", version: "16.2.6", type: BsDatepickerComponent, selector: "bs-datepicker", inputs: { selectedDate: "selectedDate", currentMonth: "currentMonth", disableDateFn: "disableDateFn" }, outputs: { selectedDateChange: "selectedDateChange", currentMonthChange: "currentMonthChange" }, ngImport: i0, template: "<!-- <bs-dropdown [hasBackdrop]=\"true\" [closeOnClickOutside]=\"true\"></bs-dropdown> -->\n<div bsDropdown [hasBackdrop]=\"true\" [closeOnClickOutside]=\"true\">\n <button bsDropdownToggle [color]=\"colors.primary\">{{ selectedDate | date }}</button>\n <bs-has-overlay></bs-has-overlay>\n <div *bsDropdownMenu>\n <bs-calendar [(selectedDate)]=\"selectedDate\" [(currentMonth)]=\"currentMonth\" [disableDateFn]=\"disableDateFn\"></bs-calendar>\n </div>\n</div>", styles: [""], dependencies: [{ kind: "component", type: i1.BsCalendarComponent, selector: "bs-calendar", inputs: ["currentMonth", "selectedDate", "disableDateFn"], outputs: ["currentMonthChange", "selectedDateChange"] }, { kind: "directive", type: i2.BsDropdownDirective, selector: "[bsDropdown]", inputs: ["hasBackdrop", "sameWidth", "closeOnClickOutside", "sameDropdownWidth", "isOpen"], outputs: ["isOpenChange"] }, { kind: "directive", type: i2.BsDropdownToggleDirective, selector: "[bsDropdownToggle]" }, { kind: "directive", type: i2.BsDropdownMenuDirective, selector: "[bsDropdownMenu]" }, { kind: "component", type: i3.BsHasOverlayComponent, selector: "bs-has-overlay" }, { kind: "directive", type: i4.BsButtonTypeDirective, selector: "button[color],input[type=\"button\"][color],input[type=\"submit\"][color]", inputs: ["color"] }, { kind: "pipe", type: i5.DatePipe, name: "date" }] }); }
41
+ static { this.ɵcmp = i0.ɵɵngDeclareComponent({ minVersion: "14.0.0", version: "16.2.6", type: BsDatepickerComponent, selector: "bs-datepicker", inputs: { selectedDate: "selectedDate", currentMonth: "currentMonth", disableDateFn: "disableDateFn" }, outputs: { selectedDateChange: "selectedDateChange", currentMonthChange: "currentMonthChange" }, ngImport: i0, template: "<!-- <bs-dropdown [hasBackdrop]=\"true\" [closeOnClickOutside]=\"true\"></bs-dropdown> -->\n<div bsDropdown [hasBackdrop]=\"true\" [closeOnClickOutside]=\"true\">\n <button bsDropdownToggle [color]=\"colors.primary\">{{ selectedDate | date }}</button>\n <bs-has-overlay></bs-has-overlay>\n <div *bsDropdownMenu>\n <bs-calendar [(selectedDate)]=\"selectedDate\" [(currentMonth)]=\"currentMonth\" [disableDateFn]=\"disableDateFn\"></bs-calendar>\n </div>\n</div>", styles: [""], dependencies: [{ kind: "component", type: i1.BsCalendarComponent, selector: "bs-calendar", inputs: ["currentMonth", "selectedDate", "disableDateFn"], outputs: ["currentMonthChange", "selectedDateChange"] }, { kind: "directive", type: i2.BsDropdownDirective, selector: "[bsDropdown]", inputs: ["hasBackdrop", "sameWidth", "closeOnClickOutside", "sameDropdownWidth", "isOpen"], outputs: ["isOpenChange"] }, { kind: "directive", type: i2.BsDropdownToggleDirective, selector: "[bsDropdownToggle]" }, { kind: "directive", type: i2.BsDropdownMenuDirective, selector: "[bsDropdownMenu]" }, { kind: "component", type: i3.BsHasOverlayComponent, selector: "bs-has-overlay" }, { kind: "directive", type: i4.BsButtonTypeDirective, selector: "button[color],input[type=\"button\"][color],input[type=\"submit\"][color],a[color]", inputs: ["color"] }, { kind: "pipe", type: i5.DatePipe, name: "date" }] }); }
42
42
  }
43
43
  i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "16.2.6", ngImport: i0, type: BsDatepickerComponent, decorators: [{
44
44
  type: Component,
@@ -1 +1 @@
1
- {"version":3,"file":"mintplayer-ng-bootstrap-datepicker.mjs","sources":["../../../../libs/mintplayer-ng-bootstrap/datepicker/src/datepicker.component.ts","../../../../libs/mintplayer-ng-bootstrap/datepicker/src/datepicker.component.html","../../../../libs/mintplayer-ng-bootstrap/datepicker/src/datepicker.module.ts","../../../../libs/mintplayer-ng-bootstrap/datepicker/mintplayer-ng-bootstrap-datepicker.ts"],"sourcesContent":["import { Component, EventEmitter, Input, Output } from '@angular/core';\nimport { Color } from '@mintplayer/ng-bootstrap';\n\n@Component({\n selector: 'bs-datepicker',\n templateUrl: './datepicker.component.html',\n styleUrls: ['./datepicker.component.scss']\n})\nexport class BsDatepickerComponent {\n\n colors = Color;\n\n //#region SelectedDate\n _selectedDate = new Date();\n @Output() public selectedDateChange = new EventEmitter<Date>();\n get selectedDate() {\n return this._selectedDate;\n }\n @Input() set selectedDate(value: Date) {\n this._selectedDate = value;\n this.selectedDateChange.emit(value);\n }\n //#endregion\n\n //#region CurrentMonth\n _currentMonth = new Date();\n @Output() public currentMonthChange = new EventEmitter<Date>();\n get currentMonth() {\n return this._currentMonth;\n }\n @Input() set currentMonth(value: Date) {\n this._currentMonth = value;\n this.currentMonthChange.emit(value);\n }\n //#endregion\n\n @Input() disableDateFn?: (date: Date) => boolean;\n\n}\n","<!-- <bs-dropdown [hasBackdrop]=\"true\" [closeOnClickOutside]=\"true\"></bs-dropdown> -->\n<div bsDropdown [hasBackdrop]=\"true\" [closeOnClickOutside]=\"true\">\n <button bsDropdownToggle [color]=\"colors.primary\">{{ selectedDate | date }}</button>\n <bs-has-overlay></bs-has-overlay>\n <div *bsDropdownMenu>\n <bs-calendar [(selectedDate)]=\"selectedDate\" [(currentMonth)]=\"currentMonth\" [disableDateFn]=\"disableDateFn\"></bs-calendar>\n </div>\n</div>","import { NgModule } from '@angular/core';\nimport { CommonModule } from '@angular/common';\nimport { BsDatepickerComponent } from './datepicker.component';\nimport { BsCalendarModule } from '@mintplayer/ng-bootstrap/calendar';\nimport { BsDropdownModule } from '@mintplayer/ng-bootstrap/dropdown';\nimport { BsButtonTypeModule } from '@mintplayer/ng-bootstrap/button-type';\nimport { BsHasOverlayModule } from '@mintplayer/ng-bootstrap/has-overlay';\n\n\n\n@NgModule({\n declarations: [\n BsDatepickerComponent\n ],\n imports: [\n CommonModule,\n BsCalendarModule,\n BsDropdownModule,\n BsButtonTypeModule,\n BsHasOverlayModule,\n ],\n exports: [\n BsDatepickerComponent\n ]\n})\nexport class BsDatepickerModule { }\n","/**\n * Generated bundle index. Do not edit.\n */\n\nexport * from './index';\n"],"names":[],"mappings":"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"}
1
+ {"version":3,"file":"mintplayer-ng-bootstrap-datepicker.mjs","sources":["../../../../libs/mintplayer-ng-bootstrap/datepicker/src/datepicker.component.ts","../../../../libs/mintplayer-ng-bootstrap/datepicker/src/datepicker.component.html","../../../../libs/mintplayer-ng-bootstrap/datepicker/src/datepicker.module.ts","../../../../libs/mintplayer-ng-bootstrap/datepicker/mintplayer-ng-bootstrap-datepicker.ts"],"sourcesContent":["import { Component, EventEmitter, Input, Output } from '@angular/core';\nimport { Color } from '@mintplayer/ng-bootstrap';\n\n@Component({\n selector: 'bs-datepicker',\n templateUrl: './datepicker.component.html',\n styleUrls: ['./datepicker.component.scss']\n})\nexport class BsDatepickerComponent {\n\n colors = Color;\n\n //#region SelectedDate\n _selectedDate = new Date();\n @Output() public selectedDateChange = new EventEmitter<Date>();\n get selectedDate() {\n return this._selectedDate;\n }\n @Input() set selectedDate(value: Date) {\n this._selectedDate = value;\n this.selectedDateChange.emit(value);\n }\n //#endregion\n\n //#region CurrentMonth\n _currentMonth = new Date();\n @Output() public currentMonthChange = new EventEmitter<Date>();\n get currentMonth() {\n return this._currentMonth;\n }\n @Input() set currentMonth(value: Date) {\n this._currentMonth = value;\n this.currentMonthChange.emit(value);\n }\n //#endregion\n\n @Input() disableDateFn?: (date: Date) => boolean;\n\n}\n","<!-- <bs-dropdown [hasBackdrop]=\"true\" [closeOnClickOutside]=\"true\"></bs-dropdown> -->\n<div bsDropdown [hasBackdrop]=\"true\" [closeOnClickOutside]=\"true\">\n <button bsDropdownToggle [color]=\"colors.primary\">{{ selectedDate | date }}</button>\n <bs-has-overlay></bs-has-overlay>\n <div *bsDropdownMenu>\n <bs-calendar [(selectedDate)]=\"selectedDate\" [(currentMonth)]=\"currentMonth\" [disableDateFn]=\"disableDateFn\"></bs-calendar>\n </div>\n</div>","import { NgModule } from '@angular/core';\nimport { CommonModule } from '@angular/common';\nimport { BsDatepickerComponent } from './datepicker.component';\nimport { BsCalendarModule } from '@mintplayer/ng-bootstrap/calendar';\nimport { BsDropdownModule } from '@mintplayer/ng-bootstrap/dropdown';\nimport { BsButtonTypeModule } from '@mintplayer/ng-bootstrap/button-type';\nimport { BsHasOverlayModule } from '@mintplayer/ng-bootstrap/has-overlay';\n\n\n\n@NgModule({\n declarations: [\n BsDatepickerComponent\n ],\n imports: [\n CommonModule,\n BsCalendarModule,\n BsDropdownModule,\n BsButtonTypeModule,\n BsHasOverlayModule,\n ],\n exports: [\n BsDatepickerComponent\n ]\n})\nexport class BsDatepickerModule { }\n","/**\n * Generated bundle index. Do not edit.\n */\n\nexport * from './index';\n"],"names":[],"mappings":"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"}
@@ -0,0 +1,38 @@
1
+ import * as i0 from '@angular/core';
2
+ import { Pipe, NgModule } from '@angular/core';
3
+ import { CommonModule } from '@angular/common';
4
+
5
+ class HasPropertyPipe {
6
+ transform(value, propName) {
7
+ return propName in value;
8
+ }
9
+ static { this.ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "16.2.6", ngImport: i0, type: HasPropertyPipe, deps: [], target: i0.ɵɵFactoryTarget.Pipe }); }
10
+ static { this.ɵpipe = i0.ɵɵngDeclarePipe({ minVersion: "14.0.0", version: "16.2.6", ngImport: i0, type: HasPropertyPipe, name: "bsHasProperty" }); }
11
+ }
12
+ i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "16.2.6", ngImport: i0, type: HasPropertyPipe, decorators: [{
13
+ type: Pipe,
14
+ args: [{
15
+ name: 'bsHasProperty',
16
+ }]
17
+ }] });
18
+
19
+ class BsHasPropertyModule {
20
+ static { this.ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "16.2.6", ngImport: i0, type: BsHasPropertyModule, deps: [], target: i0.ɵɵFactoryTarget.NgModule }); }
21
+ static { this.ɵmod = i0.ɵɵngDeclareNgModule({ minVersion: "14.0.0", version: "16.2.6", ngImport: i0, type: BsHasPropertyModule, declarations: [HasPropertyPipe], imports: [CommonModule], exports: [HasPropertyPipe] }); }
22
+ static { this.ɵinj = i0.ɵɵngDeclareInjector({ minVersion: "12.0.0", version: "16.2.6", ngImport: i0, type: BsHasPropertyModule, imports: [CommonModule] }); }
23
+ }
24
+ i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "16.2.6", ngImport: i0, type: BsHasPropertyModule, decorators: [{
25
+ type: NgModule,
26
+ args: [{
27
+ declarations: [HasPropertyPipe],
28
+ imports: [CommonModule],
29
+ exports: [HasPropertyPipe],
30
+ }]
31
+ }] });
32
+
33
+ /**
34
+ * Generated bundle index. Do not edit.
35
+ */
36
+
37
+ export { BsHasPropertyModule, HasPropertyPipe };
38
+ //# sourceMappingURL=mintplayer-ng-bootstrap-has-property.mjs.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"mintplayer-ng-bootstrap-has-property.mjs","sources":["../../../../libs/mintplayer-ng-bootstrap/has-property/src/has-property.pipe.ts","../../../../libs/mintplayer-ng-bootstrap/has-property/src/has-property.module.ts","../../../../libs/mintplayer-ng-bootstrap/has-property/mintplayer-ng-bootstrap-has-property.ts"],"sourcesContent":["import { Pipe, PipeTransform } from '@angular/core';\n\n@Pipe({\n name: 'bsHasProperty',\n})\nexport class HasPropertyPipe implements PipeTransform {\n transform(value: Object, propName: string) {\n return propName in value;\n }\n}\n","import { NgModule } from '@angular/core';\nimport { CommonModule } from '@angular/common';\nimport { HasPropertyPipe } from './has-property.pipe';\n\n@NgModule({\n declarations: [HasPropertyPipe],\n imports: [CommonModule],\n exports: [HasPropertyPipe],\n})\nexport class BsHasPropertyModule {}\n","/**\n * Generated bundle index. Do not edit.\n */\n\nexport * from './index';\n"],"names":[],"mappings":";;;;MAKa,eAAe,CAAA;IAC1B,SAAS,CAAC,KAAa,EAAE,QAAgB,EAAA;QACvC,OAAO,QAAQ,IAAI,KAAK,CAAC;KAC1B;8GAHU,eAAe,EAAA,IAAA,EAAA,EAAA,EAAA,MAAA,EAAA,EAAA,CAAA,eAAA,CAAA,IAAA,EAAA,CAAA,CAAA,EAAA;4GAAf,eAAe,EAAA,IAAA,EAAA,eAAA,EAAA,CAAA,CAAA,EAAA;;2FAAf,eAAe,EAAA,UAAA,EAAA,CAAA;kBAH3B,IAAI;AAAC,YAAA,IAAA,EAAA,CAAA;AACJ,oBAAA,IAAI,EAAE,eAAe;AACtB,iBAAA,CAAA;;;MCKY,mBAAmB,CAAA;8GAAnB,mBAAmB,EAAA,IAAA,EAAA,EAAA,EAAA,MAAA,EAAA,EAAA,CAAA,eAAA,CAAA,QAAA,EAAA,CAAA,CAAA,EAAA;AAAnB,IAAA,SAAA,IAAA,CAAA,IAAA,GAAA,EAAA,CAAA,mBAAA,CAAA,EAAA,UAAA,EAAA,QAAA,EAAA,OAAA,EAAA,QAAA,EAAA,QAAA,EAAA,EAAA,EAAA,IAAA,EAAA,mBAAmB,EAJf,YAAA,EAAA,CAAA,eAAe,CACpB,EAAA,OAAA,EAAA,CAAA,YAAY,aACZ,eAAe,CAAA,EAAA,CAAA,CAAA,EAAA;AAEd,IAAA,SAAA,IAAA,CAAA,IAAA,GAAA,EAAA,CAAA,mBAAA,CAAA,EAAA,UAAA,EAAA,QAAA,EAAA,OAAA,EAAA,QAAA,EAAA,QAAA,EAAA,EAAA,EAAA,IAAA,EAAA,mBAAmB,YAHpB,YAAY,CAAA,EAAA,CAAA,CAAA,EAAA;;2FAGX,mBAAmB,EAAA,UAAA,EAAA,CAAA;kBAL/B,QAAQ;AAAC,YAAA,IAAA,EAAA,CAAA;oBACR,YAAY,EAAE,CAAC,eAAe,CAAC;oBAC/B,OAAO,EAAE,CAAC,YAAY,CAAC;oBACvB,OAAO,EAAE,CAAC,eAAe,CAAC;AAC3B,iBAAA,CAAA;;;ACRD;;AAEG;;;;"}
@@ -35,7 +35,7 @@ class BsMultiselectComponent {
35
35
  return item;
36
36
  }
37
37
  static { this.ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "16.2.6", ngImport: i0, type: BsMultiselectComponent, deps: [], target: i0.ɵɵFactoryTarget.Component }); }
38
- static { this.ɵcmp = i0.ɵɵngDeclareComponent({ minVersion: "14.0.0", version: "16.2.6", type: BsMultiselectComponent, selector: "bs-multiselect", inputs: { items: "items", selectedItems: "selectedItems", itemsTrackBy: "itemsTrackBy" }, viewQueries: [{ propertyName: "defaultButtonTemplate", first: true, predicate: ["defaultButtonTemplate"], descendants: true }], ngImport: i0, template: "<bs-has-overlay></bs-has-overlay>\n<div bsDropdown [hasBackdrop]=\"true\" [closeOnClickOutside]=\"true\">\n <button bsDropdownToggle [color]=\"colors.primary\">\n <ng-container *ngTemplateOutlet=\"buttonTemplate ?? defaultButtonTemplate; context: { $implicit: selectedItems.length }\"></ng-container>\n </button>\n <div *bsDropdownMenu class=\"bg-white mw-250px p-3 border rounded shadow\">\n <ng-container *ngTemplateOutlet=\"headerTemplate\"></ng-container>\n <hr class=\"my-2\" *ngIf=\"headerTemplate\">\n <bs-toggle-button *ngFor=\"let item of items; trackBy: itemsTrackBy ?? defaultTrackBy\" [ngModel]=\"selectedItems.indexOf(item) > -1\" (ngModelChange)=\"itemChange(item, $event)\" class=\"d-block\">{{ item }}</bs-toggle-button>\n <hr class=\"my-2\" *ngIf=\"footerTemplate\">\n <ng-container *ngTemplateOutlet=\"footerTemplate\"></ng-container>\n </div>\n</div>\n<ng-template #defaultButtonTemplate let-count>\n {{ count }} selected\n</ng-template>", styles: [".mw-250px{min-width:250px}\n"], dependencies: [{ kind: "directive", type: i1.NgForOf, selector: "[ngFor][ngForOf]", inputs: ["ngForOf", "ngForTrackBy", "ngForTemplate"] }, { kind: "directive", type: i1.NgIf, selector: "[ngIf]", inputs: ["ngIf", "ngIfThen", "ngIfElse"] }, { kind: "directive", type: i1.NgTemplateOutlet, selector: "[ngTemplateOutlet]", inputs: ["ngTemplateOutletContext", "ngTemplateOutlet", "ngTemplateOutletInjector"] }, { kind: "directive", type: i2.NgControlStatus, selector: "[formControlName],[ngModel],[formControl]" }, { kind: "directive", type: i2.NgModel, selector: "[ngModel]:not([formControlName]):not([formControl])", inputs: ["name", "disabled", "ngModel", "ngModelOptions"], outputs: ["ngModelChange"], exportAs: ["ngModel"] }, { kind: "directive", type: i3.BsDropdownDirective, selector: "[bsDropdown]", inputs: ["hasBackdrop", "sameWidth", "closeOnClickOutside", "sameDropdownWidth", "isOpen"], outputs: ["isOpenChange"] }, { kind: "directive", type: i3.BsDropdownToggleDirective, selector: "[bsDropdownToggle]" }, { kind: "directive", type: i3.BsDropdownMenuDirective, selector: "[bsDropdownMenu]" }, { kind: "component", type: i4.BsHasOverlayComponent, selector: "bs-has-overlay" }, { kind: "component", type: i5.BsToggleButtonComponent, selector: "bs-toggle-button", inputs: ["type", "isToggled", "name", "value", "group"], outputs: ["isToggledChange"] }, { kind: "directive", type: i5.BsToggleButtonValueAccessor, selector: "bs-toggle-button" }, { kind: "directive", type: i6.BsButtonTypeDirective, selector: "button[color],input[type=\"button\"][color],input[type=\"submit\"][color]", inputs: ["color"] }] }); }
38
+ static { this.ɵcmp = i0.ɵɵngDeclareComponent({ minVersion: "14.0.0", version: "16.2.6", type: BsMultiselectComponent, selector: "bs-multiselect", inputs: { items: "items", selectedItems: "selectedItems", itemsTrackBy: "itemsTrackBy" }, viewQueries: [{ propertyName: "defaultButtonTemplate", first: true, predicate: ["defaultButtonTemplate"], descendants: true }], ngImport: i0, template: "<bs-has-overlay></bs-has-overlay>\n<div bsDropdown [hasBackdrop]=\"true\" [closeOnClickOutside]=\"true\">\n <button bsDropdownToggle [color]=\"colors.primary\">\n <ng-container *ngTemplateOutlet=\"buttonTemplate ?? defaultButtonTemplate; context: { $implicit: selectedItems.length }\"></ng-container>\n </button>\n <div *bsDropdownMenu class=\"bg-white mw-250px p-3 border rounded shadow\">\n <ng-container *ngTemplateOutlet=\"headerTemplate\"></ng-container>\n <hr class=\"my-2\" *ngIf=\"headerTemplate\">\n <bs-toggle-button *ngFor=\"let item of items; trackBy: itemsTrackBy ?? defaultTrackBy\" [ngModel]=\"selectedItems.indexOf(item) > -1\" (ngModelChange)=\"itemChange(item, $event)\" class=\"d-block\">{{ item }}</bs-toggle-button>\n <hr class=\"my-2\" *ngIf=\"footerTemplate\">\n <ng-container *ngTemplateOutlet=\"footerTemplate\"></ng-container>\n </div>\n</div>\n<ng-template #defaultButtonTemplate let-count>\n {{ count }} selected\n</ng-template>", styles: [".mw-250px{min-width:250px}\n"], dependencies: [{ kind: "directive", type: i1.NgForOf, selector: "[ngFor][ngForOf]", inputs: ["ngForOf", "ngForTrackBy", "ngForTemplate"] }, { kind: "directive", type: i1.NgIf, selector: "[ngIf]", inputs: ["ngIf", "ngIfThen", "ngIfElse"] }, { kind: "directive", type: i1.NgTemplateOutlet, selector: "[ngTemplateOutlet]", inputs: ["ngTemplateOutletContext", "ngTemplateOutlet", "ngTemplateOutletInjector"] }, { kind: "directive", type: i2.NgControlStatus, selector: "[formControlName],[ngModel],[formControl]" }, { kind: "directive", type: i2.NgModel, selector: "[ngModel]:not([formControlName]):not([formControl])", inputs: ["name", "disabled", "ngModel", "ngModelOptions"], outputs: ["ngModelChange"], exportAs: ["ngModel"] }, { kind: "directive", type: i3.BsDropdownDirective, selector: "[bsDropdown]", inputs: ["hasBackdrop", "sameWidth", "closeOnClickOutside", "sameDropdownWidth", "isOpen"], outputs: ["isOpenChange"] }, { kind: "directive", type: i3.BsDropdownToggleDirective, selector: "[bsDropdownToggle]" }, { kind: "directive", type: i3.BsDropdownMenuDirective, selector: "[bsDropdownMenu]" }, { kind: "component", type: i4.BsHasOverlayComponent, selector: "bs-has-overlay" }, { kind: "component", type: i5.BsToggleButtonComponent, selector: "bs-toggle-button", inputs: ["type", "isToggled", "name", "value", "group"], outputs: ["isToggledChange"] }, { kind: "directive", type: i5.BsToggleButtonValueAccessor, selector: "bs-toggle-button" }, { kind: "directive", type: i6.BsButtonTypeDirective, selector: "button[color],input[type=\"button\"][color],input[type=\"submit\"][color],a[color]", inputs: ["color"] }] }); }
39
39
  }
40
40
  i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "16.2.6", ngImport: i0, type: BsMultiselectComponent, decorators: [{
41
41
  type: Component,
@@ -1 +1 @@
1
- {"version":3,"file":"mintplayer-ng-bootstrap-multiselect.mjs","sources":["../../../../libs/mintplayer-ng-bootstrap/multiselect/src/component/multiselect.component.ts","../../../../libs/mintplayer-ng-bootstrap/multiselect/src/component/multiselect.component.html","../../../../libs/mintplayer-ng-bootstrap/multiselect/src/directives/header-template/header-template.directive.ts","../../../../libs/mintplayer-ng-bootstrap/multiselect/src/directives/footer-template/footer-template.directive.ts","../../../../libs/mintplayer-ng-bootstrap/multiselect/src/directives/button-template/button-template.directive.ts","../../../../libs/mintplayer-ng-bootstrap/multiselect/src/multiselect.module.ts","../../../../libs/mintplayer-ng-bootstrap/multiselect/mintplayer-ng-bootstrap-multiselect.ts"],"sourcesContent":["import { Component, Input, TemplateRef, TrackByFunction, ViewChild } from '@angular/core';\nimport { Color } from '@mintplayer/ng-bootstrap';\n\n@Component({\n selector: 'bs-multiselect',\n templateUrl: './multiselect.component.html',\n styleUrls: ['./multiselect.component.scss']\n})\nexport class BsMultiselectComponent<T> {\n\n headerTemplate!: TemplateRef<any>;\n footerTemplate!: TemplateRef<any>;\n buttonTemplate!: TemplateRef<any>;\n colors = Color;\n\n\n @Input() public items: T[] = [];\n @Input() public selectedItems: T[] = [];\n @ViewChild('defaultButtonTemplate') defaultButtonTemplate!: TemplateRef<any>;\n @Input() public itemsTrackBy?: TrackByFunction<T>;\n\n // itemChange(item: any, ev: Event) {\n itemChange(item: T, value: boolean | null) {\n // const value = (<any>ev.target).checked;\n if (value) {\n this.selectedItems.push(item);\n } else {\n this.selectedItems.splice(this.selectedItems.findIndex((i) => i === item), 1);\n }\n }\n \n defaultTrackBy(index: number, item: T) {\n return item;\n }\n\n}\n","<bs-has-overlay></bs-has-overlay>\n<div bsDropdown [hasBackdrop]=\"true\" [closeOnClickOutside]=\"true\">\n <button bsDropdownToggle [color]=\"colors.primary\">\n <ng-container *ngTemplateOutlet=\"buttonTemplate ?? defaultButtonTemplate; context: { $implicit: selectedItems.length }\"></ng-container>\n </button>\n <div *bsDropdownMenu class=\"bg-white mw-250px p-3 border rounded shadow\">\n <ng-container *ngTemplateOutlet=\"headerTemplate\"></ng-container>\n <hr class=\"my-2\" *ngIf=\"headerTemplate\">\n <bs-toggle-button *ngFor=\"let item of items; trackBy: itemsTrackBy ?? defaultTrackBy\" [ngModel]=\"selectedItems.indexOf(item) > -1\" (ngModelChange)=\"itemChange(item, $event)\" class=\"d-block\">{{ item }}</bs-toggle-button>\n <hr class=\"my-2\" *ngIf=\"footerTemplate\">\n <ng-container *ngTemplateOutlet=\"footerTemplate\"></ng-container>\n </div>\n</div>\n<ng-template #defaultButtonTemplate let-count>\n {{ count }} selected\n</ng-template>","import { Directive, TemplateRef } from '@angular/core';\nimport { BsMultiselectComponent } from '../../component/multiselect.component';\n\n@Directive({\n selector: '[bsHeaderTemplate]'\n})\nexport class BsHeaderTemplateDirective<T> {\n\n constructor(template: TemplateRef<any>, multiselect: BsMultiselectComponent<T>) {\n multiselect.headerTemplate = template;\n }\n\n}\n","import { Directive, TemplateRef } from '@angular/core';\nimport { BsMultiselectComponent } from '../../component/multiselect.component';\n\n@Directive({\n selector: '[bsFooterTemplate]'\n})\nexport class BsFooterTemplateDirective<T> {\n\n constructor(template: TemplateRef<any>, multiselect: BsMultiselectComponent<T>) {\n multiselect.footerTemplate = template;\n }\n\n}\n","import { Directive, TemplateRef } from '@angular/core';\nimport { BsMultiselectComponent } from '../../component/multiselect.component';\n\n@Directive({\n selector: '[bsButtonTemplate]'\n})\nexport class BsButtonTemplateDirective<T> {\n\n constructor(template: TemplateRef<any>, multiselect: BsMultiselectComponent<T>) {\n multiselect.buttonTemplate = template;\n }\n \n public static ngTemplateContextGuard<TData>(\n dir: BsButtonTemplateDirective<TData>,\n ctx: any\n ): ctx is BsRButtonTemplateContext {\n return true;\n }\n\n}\n\nexport class BsRButtonTemplateContext {\n public $implicit: number = null!;\n}\n","import { NgModule } from '@angular/core';\nimport { FormsModule } from '@angular/forms';\nimport { CommonModule } from '@angular/common';\nimport { FocusOnLoadModule } from '@mintplayer/ng-focus-on-load';\nimport { BsDropdownModule } from '@mintplayer/ng-bootstrap/dropdown';\nimport { BsToggleButtonModule } from '@mintplayer/ng-bootstrap/toggle-button';\nimport { BsHasOverlayModule } from '@mintplayer/ng-bootstrap/has-overlay';\nimport { BsButtonTypeModule } from '@mintplayer/ng-bootstrap/button-type';\nimport { BsMultiselectComponent } from './component/multiselect.component';\nimport { BsHeaderTemplateDirective } from './directives/header-template/header-template.directive';\nimport { BsFooterTemplateDirective } from './directives/footer-template/footer-template.directive';\nimport { BsButtonTemplateDirective } from './directives/button-template/button-template.directive';\n\n@NgModule({\n declarations: [\n BsMultiselectComponent,\n BsHeaderTemplateDirective,\n BsFooterTemplateDirective,\n BsButtonTemplateDirective\n ],\n imports: [\n CommonModule,\n FormsModule,\n BsDropdownModule,\n BsToggleButtonModule,\n BsButtonTypeModule,\n BsHasOverlayModule,\n FocusOnLoadModule,\n ],\n exports: [\n BsMultiselectComponent,\n BsHeaderTemplateDirective,\n BsFooterTemplateDirective,\n BsButtonTemplateDirective\n ]\n})\nexport class BsMultiselectModule { }\n","/**\n * Generated bundle index. Do not edit.\n */\n\nexport * from './index';\n"],"names":["i1.BsMultiselectComponent"],"mappings":"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"}
1
+ {"version":3,"file":"mintplayer-ng-bootstrap-multiselect.mjs","sources":["../../../../libs/mintplayer-ng-bootstrap/multiselect/src/component/multiselect.component.ts","../../../../libs/mintplayer-ng-bootstrap/multiselect/src/component/multiselect.component.html","../../../../libs/mintplayer-ng-bootstrap/multiselect/src/directives/header-template/header-template.directive.ts","../../../../libs/mintplayer-ng-bootstrap/multiselect/src/directives/footer-template/footer-template.directive.ts","../../../../libs/mintplayer-ng-bootstrap/multiselect/src/directives/button-template/button-template.directive.ts","../../../../libs/mintplayer-ng-bootstrap/multiselect/src/multiselect.module.ts","../../../../libs/mintplayer-ng-bootstrap/multiselect/mintplayer-ng-bootstrap-multiselect.ts"],"sourcesContent":["import { Component, Input, TemplateRef, TrackByFunction, ViewChild } from '@angular/core';\nimport { Color } from '@mintplayer/ng-bootstrap';\n\n@Component({\n selector: 'bs-multiselect',\n templateUrl: './multiselect.component.html',\n styleUrls: ['./multiselect.component.scss']\n})\nexport class BsMultiselectComponent<T> {\n\n headerTemplate!: TemplateRef<any>;\n footerTemplate!: TemplateRef<any>;\n buttonTemplate!: TemplateRef<any>;\n colors = Color;\n\n\n @Input() public items: T[] = [];\n @Input() public selectedItems: T[] = [];\n @ViewChild('defaultButtonTemplate') defaultButtonTemplate!: TemplateRef<any>;\n @Input() public itemsTrackBy?: TrackByFunction<T>;\n\n // itemChange(item: any, ev: Event) {\n itemChange(item: T, value: boolean | null) {\n // const value = (<any>ev.target).checked;\n if (value) {\n this.selectedItems.push(item);\n } else {\n this.selectedItems.splice(this.selectedItems.findIndex((i) => i === item), 1);\n }\n }\n \n defaultTrackBy(index: number, item: T) {\n return item;\n }\n\n}\n","<bs-has-overlay></bs-has-overlay>\n<div bsDropdown [hasBackdrop]=\"true\" [closeOnClickOutside]=\"true\">\n <button bsDropdownToggle [color]=\"colors.primary\">\n <ng-container *ngTemplateOutlet=\"buttonTemplate ?? defaultButtonTemplate; context: { $implicit: selectedItems.length }\"></ng-container>\n </button>\n <div *bsDropdownMenu class=\"bg-white mw-250px p-3 border rounded shadow\">\n <ng-container *ngTemplateOutlet=\"headerTemplate\"></ng-container>\n <hr class=\"my-2\" *ngIf=\"headerTemplate\">\n <bs-toggle-button *ngFor=\"let item of items; trackBy: itemsTrackBy ?? defaultTrackBy\" [ngModel]=\"selectedItems.indexOf(item) > -1\" (ngModelChange)=\"itemChange(item, $event)\" class=\"d-block\">{{ item }}</bs-toggle-button>\n <hr class=\"my-2\" *ngIf=\"footerTemplate\">\n <ng-container *ngTemplateOutlet=\"footerTemplate\"></ng-container>\n </div>\n</div>\n<ng-template #defaultButtonTemplate let-count>\n {{ count }} selected\n</ng-template>","import { Directive, TemplateRef } from '@angular/core';\nimport { BsMultiselectComponent } from '../../component/multiselect.component';\n\n@Directive({\n selector: '[bsHeaderTemplate]'\n})\nexport class BsHeaderTemplateDirective<T> {\n\n constructor(template: TemplateRef<any>, multiselect: BsMultiselectComponent<T>) {\n multiselect.headerTemplate = template;\n }\n\n}\n","import { Directive, TemplateRef } from '@angular/core';\nimport { BsMultiselectComponent } from '../../component/multiselect.component';\n\n@Directive({\n selector: '[bsFooterTemplate]'\n})\nexport class BsFooterTemplateDirective<T> {\n\n constructor(template: TemplateRef<any>, multiselect: BsMultiselectComponent<T>) {\n multiselect.footerTemplate = template;\n }\n\n}\n","import { Directive, TemplateRef } from '@angular/core';\nimport { BsMultiselectComponent } from '../../component/multiselect.component';\n\n@Directive({\n selector: '[bsButtonTemplate]'\n})\nexport class BsButtonTemplateDirective<T> {\n\n constructor(template: TemplateRef<any>, multiselect: BsMultiselectComponent<T>) {\n multiselect.buttonTemplate = template;\n }\n \n public static ngTemplateContextGuard<TData>(\n dir: BsButtonTemplateDirective<TData>,\n ctx: any\n ): ctx is BsRButtonTemplateContext {\n return true;\n }\n\n}\n\nexport class BsRButtonTemplateContext {\n public $implicit: number = null!;\n}\n","import { NgModule } from '@angular/core';\nimport { FormsModule } from '@angular/forms';\nimport { CommonModule } from '@angular/common';\nimport { FocusOnLoadModule } from '@mintplayer/ng-focus-on-load';\nimport { BsDropdownModule } from '@mintplayer/ng-bootstrap/dropdown';\nimport { BsToggleButtonModule } from '@mintplayer/ng-bootstrap/toggle-button';\nimport { BsHasOverlayModule } from '@mintplayer/ng-bootstrap/has-overlay';\nimport { BsButtonTypeModule } from '@mintplayer/ng-bootstrap/button-type';\nimport { BsMultiselectComponent } from './component/multiselect.component';\nimport { BsHeaderTemplateDirective } from './directives/header-template/header-template.directive';\nimport { BsFooterTemplateDirective } from './directives/footer-template/footer-template.directive';\nimport { BsButtonTemplateDirective } from './directives/button-template/button-template.directive';\n\n@NgModule({\n declarations: [\n BsMultiselectComponent,\n BsHeaderTemplateDirective,\n BsFooterTemplateDirective,\n BsButtonTemplateDirective\n ],\n imports: [\n CommonModule,\n FormsModule,\n BsDropdownModule,\n BsToggleButtonModule,\n BsButtonTypeModule,\n BsHasOverlayModule,\n FocusOnLoadModule,\n ],\n exports: [\n BsMultiselectComponent,\n BsHeaderTemplateDirective,\n BsFooterTemplateDirective,\n BsButtonTemplateDirective\n ]\n})\nexport class BsMultiselectModule { }\n","/**\n * Generated bundle index. Do not edit.\n */\n\nexport * from './index';\n"],"names":["i1.BsMultiselectComponent"],"mappings":"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"}
@@ -92,7 +92,7 @@ class BsSearchboxComponent {
92
92
  this.searchterm = '';
93
93
  }
94
94
  static { this.ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "16.2.6", ngImport: i0, type: BsSearchboxComponent, deps: [{ token: i1.BsFormComponent, optional: true }], target: i0.ɵɵFactoryTarget.Component }); }
95
- static { this.ɵcmp = i0.ɵɵngDeclareComponent({ minVersion: "14.0.0", version: "16.2.6", type: BsSearchboxComponent, selector: "bs-searchbox", inputs: { isOpen: "isOpen", suggestions: "suggestions", selectedItem: "selectedItem", searchterm: "searchterm" }, outputs: { selectedItemChange: "selectedItemChange", provideSuggestions: "provideSuggestions" }, viewQueries: [{ propertyName: "textbox", first: true, predicate: ["textbox"], descendants: true }], ngImport: i0, template: "<bs-has-overlay></bs-has-overlay>\n<div bsDropdown [(isOpen)]=\"isOpen\" [hasBackdrop]=\"false\" [sameDropdownWidth]=\"true\">\n <button [color]=\"colors.primary\" class=\"d-flex w-100\" bsDropdownToggle>\n <div class=\"flex-grow-1\">\n <ng-content *ngIf=\"!selectedItem\"></ng-content>\n <ng-container *ngIf=\"selectedItem && suggestionTemplate\">\n <ng-container *ngTemplateOutlet=\"suggestionTemplate; context: { $implicit: selectedItem, searchbox: this }\"></ng-container>\n </ng-container>\n </div>\n <bs-icon [icon]=\"isOpen ? 'caret-up-fill' : 'caret-down-fill'\" class=\"float-end\"></bs-icon>\n </button>\n <bs-dropdown-menu *bsDropdownMenu>\n <ng-container *bsLet=\"(isBusy$ | async) as isBusy\">\n <bs-progress [isIndeterminate]=\"true\" class=\"prog\" *ngIf=\"isBusy\">\n <bs-progress-bar></bs-progress-bar>\n </bs-progress>\n <div class=\"w-100 px-2 mb-2\">\n <input type=\"text\" #textbox autofocus class=\"form-control d-block\" [ngModel]=\"searchterm$ | async\" (ngModelChange)=\"onSearchtermChange($event)\">\n </div>\n \n <bs-dropdown-item [disabled]=\"true\" *ngIf=\"searchterm === ''\">\n <ng-container *ngTemplateOutlet=\"enterSearchtermTemplate ?? defaultEnterSearchtermTemplate; context: { }\"></ng-container>\n </bs-dropdown-item>\n <div *ngIf=\"searchterm !== ''\" class=\"overflow-y-auto\" [style.max-height.px]=\"200\">\n <bs-dropdown-item *ngFor=\"let suggestion of suggestions\" (click)=\"onSuggestionClicked(suggestion)\" [isSelected]=\"selectedItem?.id === suggestion.id\" [disabled]=\"isBusy ?? true\">\n <ng-container *ngIf=\"suggestionTemplate\">\n <ng-container *ngTemplateOutlet=\"suggestionTemplate; context: { $implicit: suggestion, searchbox: this }\"></ng-container>\n </ng-container>\n </bs-dropdown-item>\n <bs-dropdown-item *ngIf=\"suggestions.length === 0\" [disabled]=\"true\">\n <ng-container *ngTemplateOutlet=\"noResultsTemplate ?? defaultNoResultsTemplate; context: { }\"></ng-container>\n </bs-dropdown-item>\n </div>\n </ng-container>\n </bs-dropdown-menu>\n</div>\n\n<ng-template #defaultEnterSearchtermTemplate>\n Enter a search term\n</ng-template>\n<ng-template #defaultNoResultsTemplate>\n No results\n</ng-template>", styles: [".prog{height:.3rem;margin-top:-.5rem;margin-bottom:.2rem}\n"], dependencies: [{ kind: "directive", type: i2.NgForOf, selector: "[ngFor][ngForOf]", inputs: ["ngForOf", "ngForTrackBy", "ngForTemplate"] }, { kind: "directive", type: i2.NgIf, selector: "[ngIf]", inputs: ["ngIf", "ngIfThen", "ngIfElse"] }, { kind: "directive", type: i2.NgTemplateOutlet, selector: "[ngTemplateOutlet]", inputs: ["ngTemplateOutletContext", "ngTemplateOutlet", "ngTemplateOutletInjector"] }, { kind: "directive", 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]" }, { kind: "directive", type: i3.NgControlStatus, selector: "[formControlName],[ngModel],[formControl]" }, { kind: "directive", type: i3.NgModel, selector: "[ngModel]:not([formControlName]):not([formControl])", inputs: ["name", "disabled", "ngModel", "ngModelOptions"], outputs: ["ngModelChange"], exportAs: ["ngModel"] }, { kind: "directive", type: i4.FocusOnLoadDirective, selector: "*[autofocus]", inputs: ["autofocus"] }, { kind: "directive", type: i5.BsLetDirective, selector: "[bsLet]", inputs: ["bsLet"] }, { kind: "component", type: i6.BsIconComponent, selector: "bs-icon", inputs: ["icon"] }, { kind: "directive", type: i7.BsDropdownDirective, selector: "[bsDropdown]", inputs: ["hasBackdrop", "sameWidth", "closeOnClickOutside", "sameDropdownWidth", "isOpen"], outputs: ["isOpenChange"] }, { kind: "directive", type: i7.BsDropdownToggleDirective, selector: "[bsDropdownToggle]" }, { kind: "directive", type: i7.BsDropdownMenuDirective, selector: "[bsDropdownMenu]" }, { kind: "component", type: i8.BsHasOverlayComponent, selector: "bs-has-overlay" }, { kind: "component", type: i9.BsDropdownMenuComponent, selector: "bs-dropdown-menu", inputs: ["maxHeight"] }, { kind: "component", type: i9.BsDropdownItemComponent, selector: "bs-dropdown-item", inputs: ["isSelected", "disabled"] }, { kind: "directive", type: i10.BsButtonTypeDirective, selector: "button[color],input[type=\"button\"][color],input[type=\"submit\"][color]", inputs: ["color"] }, { kind: "component", type: i11.BsProgressBarComponent, selector: "bs-progress-bar", inputs: ["minimum", "maximum", "value", "color", "striped", "animated"] }, { kind: "component", type: i11.BsProgressComponent, selector: "bs-progress", inputs: ["height", "isIndeterminate"] }, { kind: "pipe", type: i2.AsyncPipe, name: "async" }] }); }
95
+ static { this.ɵcmp = i0.ɵɵngDeclareComponent({ minVersion: "14.0.0", version: "16.2.6", type: BsSearchboxComponent, selector: "bs-searchbox", inputs: { isOpen: "isOpen", suggestions: "suggestions", selectedItem: "selectedItem", searchterm: "searchterm" }, outputs: { selectedItemChange: "selectedItemChange", provideSuggestions: "provideSuggestions" }, viewQueries: [{ propertyName: "textbox", first: true, predicate: ["textbox"], descendants: true }], ngImport: i0, template: "<bs-has-overlay></bs-has-overlay>\n<div bsDropdown [(isOpen)]=\"isOpen\" [hasBackdrop]=\"false\" [sameDropdownWidth]=\"true\">\n <button [color]=\"colors.primary\" class=\"d-flex w-100\" bsDropdownToggle>\n <div class=\"flex-grow-1\">\n <ng-content *ngIf=\"!selectedItem\"></ng-content>\n <ng-container *ngIf=\"selectedItem && suggestionTemplate\">\n <ng-container *ngTemplateOutlet=\"suggestionTemplate; context: { $implicit: selectedItem, searchbox: this }\"></ng-container>\n </ng-container>\n </div>\n <bs-icon [icon]=\"isOpen ? 'caret-up-fill' : 'caret-down-fill'\" class=\"float-end\"></bs-icon>\n </button>\n <bs-dropdown-menu *bsDropdownMenu>\n <ng-container *bsLet=\"(isBusy$ | async) as isBusy\">\n <bs-progress [isIndeterminate]=\"true\" class=\"prog\" *ngIf=\"isBusy\">\n <bs-progress-bar></bs-progress-bar>\n </bs-progress>\n <div class=\"w-100 px-2 mb-2\">\n <input type=\"text\" #textbox autofocus class=\"form-control d-block\" [ngModel]=\"searchterm$ | async\" (ngModelChange)=\"onSearchtermChange($event)\">\n </div>\n \n <bs-dropdown-item [disabled]=\"true\" *ngIf=\"searchterm === ''\">\n <ng-container *ngTemplateOutlet=\"enterSearchtermTemplate ?? defaultEnterSearchtermTemplate; context: { }\"></ng-container>\n </bs-dropdown-item>\n <div *ngIf=\"searchterm !== ''\" class=\"overflow-y-auto\" [style.max-height.px]=\"200\">\n <bs-dropdown-item *ngFor=\"let suggestion of suggestions\" (click)=\"onSuggestionClicked(suggestion)\" [isSelected]=\"selectedItem?.id === suggestion.id\" [disabled]=\"isBusy ?? true\">\n <ng-container *ngIf=\"suggestionTemplate\">\n <ng-container *ngTemplateOutlet=\"suggestionTemplate; context: { $implicit: suggestion, searchbox: this }\"></ng-container>\n </ng-container>\n </bs-dropdown-item>\n <bs-dropdown-item *ngIf=\"suggestions.length === 0\" [disabled]=\"true\">\n <ng-container *ngTemplateOutlet=\"noResultsTemplate ?? defaultNoResultsTemplate; context: { }\"></ng-container>\n </bs-dropdown-item>\n </div>\n </ng-container>\n </bs-dropdown-menu>\n</div>\n\n<ng-template #defaultEnterSearchtermTemplate>\n Enter a search term\n</ng-template>\n<ng-template #defaultNoResultsTemplate>\n No results\n</ng-template>", styles: [".prog{height:.3rem;margin-top:-.5rem;margin-bottom:.2rem}\n"], dependencies: [{ kind: "directive", type: i2.NgForOf, selector: "[ngFor][ngForOf]", inputs: ["ngForOf", "ngForTrackBy", "ngForTemplate"] }, { kind: "directive", type: i2.NgIf, selector: "[ngIf]", inputs: ["ngIf", "ngIfThen", "ngIfElse"] }, { kind: "directive", type: i2.NgTemplateOutlet, selector: "[ngTemplateOutlet]", inputs: ["ngTemplateOutletContext", "ngTemplateOutlet", "ngTemplateOutletInjector"] }, { kind: "directive", 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]" }, { kind: "directive", type: i3.NgControlStatus, selector: "[formControlName],[ngModel],[formControl]" }, { kind: "directive", type: i3.NgModel, selector: "[ngModel]:not([formControlName]):not([formControl])", inputs: ["name", "disabled", "ngModel", "ngModelOptions"], outputs: ["ngModelChange"], exportAs: ["ngModel"] }, { kind: "directive", type: i4.FocusOnLoadDirective, selector: "*[autofocus]", inputs: ["autofocus"] }, { kind: "directive", type: i5.BsLetDirective, selector: "[bsLet]", inputs: ["bsLet"] }, { kind: "component", type: i6.BsIconComponent, selector: "bs-icon", inputs: ["icon"] }, { kind: "directive", type: i7.BsDropdownDirective, selector: "[bsDropdown]", inputs: ["hasBackdrop", "sameWidth", "closeOnClickOutside", "sameDropdownWidth", "isOpen"], outputs: ["isOpenChange"] }, { kind: "directive", type: i7.BsDropdownToggleDirective, selector: "[bsDropdownToggle]" }, { kind: "directive", type: i7.BsDropdownMenuDirective, selector: "[bsDropdownMenu]" }, { kind: "component", type: i8.BsHasOverlayComponent, selector: "bs-has-overlay" }, { kind: "component", type: i9.BsDropdownMenuComponent, selector: "bs-dropdown-menu", inputs: ["maxHeight"] }, { kind: "component", type: i9.BsDropdownItemComponent, selector: "bs-dropdown-item", inputs: ["isSelected", "disabled"] }, { kind: "directive", type: i10.BsButtonTypeDirective, selector: "button[color],input[type=\"button\"][color],input[type=\"submit\"][color],a[color]", inputs: ["color"] }, { kind: "component", type: i11.BsProgressBarComponent, selector: "bs-progress-bar", inputs: ["minimum", "maximum", "value", "color", "striped", "animated"] }, { kind: "component", type: i11.BsProgressComponent, selector: "bs-progress", inputs: ["height", "isIndeterminate"] }, { kind: "pipe", type: i2.AsyncPipe, name: "async" }] }); }
96
96
  }
97
97
  i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "16.2.6", ngImport: i0, type: BsSearchboxComponent, decorators: [{
98
98
  type: Component,
@@ -1 +1 @@
1
- {"version":3,"file":"mintplayer-ng-bootstrap-searchbox.mjs","sources":["../../../../libs/mintplayer-ng-bootstrap/searchbox/src/searchbox/searchbox.component.ts","../../../../libs/mintplayer-ng-bootstrap/searchbox/src/searchbox/searchbox.component.html","../../../../libs/mintplayer-ng-bootstrap/searchbox/src/directives/enter-search-term.directive.ts","../../../../libs/mintplayer-ng-bootstrap/searchbox/src/directives/suggestion.directive.ts","../../../../libs/mintplayer-ng-bootstrap/searchbox/src/directives/no-results.directive.ts","../../../../libs/mintplayer-ng-bootstrap/searchbox/src/searchbox.module.ts","../../../../libs/mintplayer-ng-bootstrap/searchbox/mintplayer-ng-bootstrap-searchbox.ts"],"sourcesContent":["import { Component, ElementRef, EventEmitter, Input, Optional, Output, TemplateRef, ViewChild } from '@angular/core';\nimport { takeUntilDestroyed } from '@angular/core/rxjs-interop';\nimport { Color } from '@mintplayer/ng-bootstrap';\nimport { BsFormComponent } from '@mintplayer/ng-bootstrap/form';\nimport { HasId } from '@mintplayer/ng-bootstrap/has-id';\nimport { BehaviorSubject, debounceTime } from 'rxjs';\nimport { BsSuggestionTemplateContext } from '../directives';\n\n@Component({\n selector: 'bs-searchbox',\n templateUrl: './searchbox.component.html',\n styleUrls: ['./searchbox.component.scss'],\n})\nexport class BsSearchboxComponent<T extends HasId<U>, U> {\n constructor(@Optional() bsForm: BsFormComponent) {\n if (!bsForm) {\n throw '<bs-searchbox> must be inside a <bs-form>';\n }\n\n this.searchterm$.pipe(debounceTime(200), takeUntilDestroyed()).subscribe((searchterm) => {\n if (searchterm === '') {\n this.suggestions = [];\n } else {\n this.isBusy$.next(true);\n this.provideSuggestions.emit(searchterm);\n }\n });\n }\n\n colors = Color;\n isBusy$ = new BehaviorSubject<boolean>(false);\n @ViewChild('textbox') textbox!: ElementRef<HTMLInputElement>;\n \n //#region isOpen\n private _isOpen = false;\n public get isOpen() {\n return this._isOpen;\n }\n @Input() public set isOpen(value: boolean) {\n const changed = (this._isOpen !== value);\n this._isOpen = value;\n if (changed && value) {\n setTimeout(() => this.textbox.nativeElement.setSelectionRange(0, -1), 20);\n }\n }\n //#endregion\n\n //#region suggestions\n private _suggestions: T[] = [];\n public get suggestions() {\n return this._suggestions;\n }\n @Input() public set suggestions(value: T[]) {\n this._suggestions = value;\n this.isBusy$.next(false);\n }\n //#endregion\n\n //#region selectedItem\n private _selectedItem?: T;\n public get selectedItem() {\n return this._selectedItem;\n }\n @Input() public set selectedItem(value: T | undefined) {\n this._selectedItem = value;\n this.selectedItemChange.emit(value);\n };\n @Output() selectedItemChange = new EventEmitter<T | undefined>();\n //#endregion\n\n //#region searchterm\n searchterm$ = new BehaviorSubject<string>('');\n public get searchterm() {\n return this.searchterm$.value;\n }\n @Input() public set searchterm(value: string) {\n this.searchterm$.next(value);\n }\n //#endregion\n\n suggestionTemplate?: TemplateRef<BsSuggestionTemplateContext<T, U>>;\n enterSearchtermTemplate?: TemplateRef<T>;\n noResultsTemplate?: TemplateRef<T>;\n @Output() provideSuggestions = new EventEmitter<string>();\n\n onSearchtermChange(searchterm: string) {\n this.searchterm$.next(searchterm);\n }\n\n onSuggestionClicked(suggestion: T) {\n this.selectedItem = suggestion;\n this.isOpen = false;\n this.searchterm = '';\n }\n}\n","<bs-has-overlay></bs-has-overlay>\n<div bsDropdown [(isOpen)]=\"isOpen\" [hasBackdrop]=\"false\" [sameDropdownWidth]=\"true\">\n <button [color]=\"colors.primary\" class=\"d-flex w-100\" bsDropdownToggle>\n <div class=\"flex-grow-1\">\n <ng-content *ngIf=\"!selectedItem\"></ng-content>\n <ng-container *ngIf=\"selectedItem && suggestionTemplate\">\n <ng-container *ngTemplateOutlet=\"suggestionTemplate; context: { $implicit: selectedItem, searchbox: this }\"></ng-container>\n </ng-container>\n </div>\n <bs-icon [icon]=\"isOpen ? 'caret-up-fill' : 'caret-down-fill'\" class=\"float-end\"></bs-icon>\n </button>\n <bs-dropdown-menu *bsDropdownMenu>\n <ng-container *bsLet=\"(isBusy$ | async) as isBusy\">\n <bs-progress [isIndeterminate]=\"true\" class=\"prog\" *ngIf=\"isBusy\">\n <bs-progress-bar></bs-progress-bar>\n </bs-progress>\n <div class=\"w-100 px-2 mb-2\">\n <input type=\"text\" #textbox autofocus class=\"form-control d-block\" [ngModel]=\"searchterm$ | async\" (ngModelChange)=\"onSearchtermChange($event)\">\n </div>\n \n <bs-dropdown-item [disabled]=\"true\" *ngIf=\"searchterm === ''\">\n <ng-container *ngTemplateOutlet=\"enterSearchtermTemplate ?? defaultEnterSearchtermTemplate; context: { }\"></ng-container>\n </bs-dropdown-item>\n <div *ngIf=\"searchterm !== ''\" class=\"overflow-y-auto\" [style.max-height.px]=\"200\">\n <bs-dropdown-item *ngFor=\"let suggestion of suggestions\" (click)=\"onSuggestionClicked(suggestion)\" [isSelected]=\"selectedItem?.id === suggestion.id\" [disabled]=\"isBusy ?? true\">\n <ng-container *ngIf=\"suggestionTemplate\">\n <ng-container *ngTemplateOutlet=\"suggestionTemplate; context: { $implicit: suggestion, searchbox: this }\"></ng-container>\n </ng-container>\n </bs-dropdown-item>\n <bs-dropdown-item *ngIf=\"suggestions.length === 0\" [disabled]=\"true\">\n <ng-container *ngTemplateOutlet=\"noResultsTemplate ?? defaultNoResultsTemplate; context: { }\"></ng-container>\n </bs-dropdown-item>\n </div>\n </ng-container>\n </bs-dropdown-menu>\n</div>\n\n<ng-template #defaultEnterSearchtermTemplate>\n Enter a search term\n</ng-template>\n<ng-template #defaultNoResultsTemplate>\n No results\n</ng-template>","import { Directive, TemplateRef } from '@angular/core';\nimport { HasId } from '@mintplayer/ng-bootstrap/has-id';\nimport { BsSearchboxComponent } from '../searchbox/searchbox.component';\n\n@Directive({\n selector: '[bsEnterSearchTermTemplate]',\n})\nexport class BsEnterSearchTermTemplateDirective<T extends HasId<U>, U> {\n constructor(searchbox: BsSearchboxComponent<T, U>, template: TemplateRef<T>) {\n searchbox.enterSearchtermTemplate = template;\n }\n}\n","import { Directive, Input, TemplateRef } from '@angular/core';\nimport { HasId } from '@mintplayer/ng-bootstrap/has-id';\nimport { BsSearchboxComponent } from '../searchbox/searchbox.component';\n\n@Directive({\n selector: '[bsSuggestionTemplate]',\n})\nexport class BsSuggestionTemplateDirective<TData extends HasId<U>, U> {\n constructor(private searchbox: BsSearchboxComponent<TData, U>, template: TemplateRef<BsSuggestionTemplateContext<TData, U>>) {\n searchbox.suggestionTemplate = template;\n }\n \n public static ngTemplateContextGuard<TData extends HasId<U>, U>(\n dir: BsSuggestionTemplateDirective<TData, U>,\n ctx: any\n ): ctx is BsSuggestionTemplateContext<Exclude<TData, false | 0 | '' | null | undefined>, U> {\n return true;\n }\n\n @Input() set bsSuggestionTemplateOf(value: TData[]) {\n this.searchbox.suggestions = value;\n }\n}\n\nexport class BsSuggestionTemplateContext<TData extends HasId<U>, U> {\n public $implicit: TData = null!;\n public searchbox: BsSearchboxComponent<TData, U> = null!;\n}","import { Directive, TemplateRef } from '@angular/core';\nimport { HasId } from '@mintplayer/ng-bootstrap/has-id';\nimport { BsSearchboxComponent } from '../searchbox/searchbox.component';\n\n@Directive({\n selector: '[bsNoResultsTemplate]',\n})\nexport class BsNoResultsTemplateDirective<T extends HasId<U>, U> {\n constructor(searchbox: BsSearchboxComponent<T, U>, template: TemplateRef<T>) {\n searchbox.noResultsTemplate = template;\n }\n}\n","import { NgModule } from '@angular/core';\nimport { FormsModule } from '@angular/forms';\nimport { CommonModule } from '@angular/common';\nimport { BsLetModule } from '@mintplayer/ng-bootstrap/let';\nimport { BsIconModule } from '@mintplayer/ng-bootstrap/icon';\nimport { FocusOnLoadModule } from '@mintplayer/ng-focus-on-load';\nimport { BsDropdownModule } from '@mintplayer/ng-bootstrap/dropdown';\nimport { BsProgressBarModule } from '@mintplayer/ng-bootstrap/progress-bar';\nimport { BsDropdownMenuModule } from '@mintplayer/ng-bootstrap/dropdown-menu';\nimport { BsButtonTypeModule } from '@mintplayer/ng-bootstrap/button-type';\nimport { BsHasOverlayModule } from '@mintplayer/ng-bootstrap/has-overlay';\nimport { BsSearchboxComponent } from './searchbox/searchbox.component';\nimport { BsEnterSearchTermTemplateDirective } from './directives/enter-search-term.directive';\nimport { BsSuggestionTemplateDirective } from './directives/suggestion.directive';\nimport { BsNoResultsTemplateDirective } from './directives/no-results.directive';\n\n@NgModule({\n declarations: [\n BsSearchboxComponent,\n BsEnterSearchTermTemplateDirective,\n BsSuggestionTemplateDirective,\n BsNoResultsTemplateDirective,\n ],\n imports: [\n CommonModule,\n FormsModule,\n FocusOnLoadModule,\n BsLetModule,\n BsIconModule,\n BsDropdownModule,\n BsDropdownMenuModule,\n BsButtonTypeModule,\n BsProgressBarModule,\n BsHasOverlayModule,\n ],\n exports: [\n BsSearchboxComponent,\n BsEnterSearchTermTemplateDirective,\n BsSuggestionTemplateDirective,\n BsNoResultsTemplateDirective,\n ],\n})\nexport class BsSearchboxModule {}\n","/**\n * Generated bundle index. Do not edit.\n */\n\nexport * from './index';\n"],"names":["i1.BsSearchboxComponent"],"mappings":"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"}
1
+ {"version":3,"file":"mintplayer-ng-bootstrap-searchbox.mjs","sources":["../../../../libs/mintplayer-ng-bootstrap/searchbox/src/searchbox/searchbox.component.ts","../../../../libs/mintplayer-ng-bootstrap/searchbox/src/searchbox/searchbox.component.html","../../../../libs/mintplayer-ng-bootstrap/searchbox/src/directives/enter-search-term.directive.ts","../../../../libs/mintplayer-ng-bootstrap/searchbox/src/directives/suggestion.directive.ts","../../../../libs/mintplayer-ng-bootstrap/searchbox/src/directives/no-results.directive.ts","../../../../libs/mintplayer-ng-bootstrap/searchbox/src/searchbox.module.ts","../../../../libs/mintplayer-ng-bootstrap/searchbox/mintplayer-ng-bootstrap-searchbox.ts"],"sourcesContent":["import { Component, ElementRef, EventEmitter, Input, Optional, Output, TemplateRef, ViewChild } from '@angular/core';\nimport { takeUntilDestroyed } from '@angular/core/rxjs-interop';\nimport { Color } from '@mintplayer/ng-bootstrap';\nimport { BsFormComponent } from '@mintplayer/ng-bootstrap/form';\nimport { HasId } from '@mintplayer/ng-bootstrap/has-id';\nimport { BehaviorSubject, debounceTime } from 'rxjs';\nimport { BsSuggestionTemplateContext } from '../directives';\n\n@Component({\n selector: 'bs-searchbox',\n templateUrl: './searchbox.component.html',\n styleUrls: ['./searchbox.component.scss'],\n})\nexport class BsSearchboxComponent<T extends HasId<U>, U> {\n constructor(@Optional() bsForm: BsFormComponent) {\n if (!bsForm) {\n throw '<bs-searchbox> must be inside a <bs-form>';\n }\n\n this.searchterm$.pipe(debounceTime(200), takeUntilDestroyed()).subscribe((searchterm) => {\n if (searchterm === '') {\n this.suggestions = [];\n } else {\n this.isBusy$.next(true);\n this.provideSuggestions.emit(searchterm);\n }\n });\n }\n\n colors = Color;\n isBusy$ = new BehaviorSubject<boolean>(false);\n @ViewChild('textbox') textbox!: ElementRef<HTMLInputElement>;\n \n //#region isOpen\n private _isOpen = false;\n public get isOpen() {\n return this._isOpen;\n }\n @Input() public set isOpen(value: boolean) {\n const changed = (this._isOpen !== value);\n this._isOpen = value;\n if (changed && value) {\n setTimeout(() => this.textbox.nativeElement.setSelectionRange(0, -1), 20);\n }\n }\n //#endregion\n\n //#region suggestions\n private _suggestions: T[] = [];\n public get suggestions() {\n return this._suggestions;\n }\n @Input() public set suggestions(value: T[]) {\n this._suggestions = value;\n this.isBusy$.next(false);\n }\n //#endregion\n\n //#region selectedItem\n private _selectedItem?: T;\n public get selectedItem() {\n return this._selectedItem;\n }\n @Input() public set selectedItem(value: T | undefined) {\n this._selectedItem = value;\n this.selectedItemChange.emit(value);\n };\n @Output() selectedItemChange = new EventEmitter<T | undefined>();\n //#endregion\n\n //#region searchterm\n searchterm$ = new BehaviorSubject<string>('');\n public get searchterm() {\n return this.searchterm$.value;\n }\n @Input() public set searchterm(value: string) {\n this.searchterm$.next(value);\n }\n //#endregion\n\n suggestionTemplate?: TemplateRef<BsSuggestionTemplateContext<T, U>>;\n enterSearchtermTemplate?: TemplateRef<T>;\n noResultsTemplate?: TemplateRef<T>;\n @Output() provideSuggestions = new EventEmitter<string>();\n\n onSearchtermChange(searchterm: string) {\n this.searchterm$.next(searchterm);\n }\n\n onSuggestionClicked(suggestion: T) {\n this.selectedItem = suggestion;\n this.isOpen = false;\n this.searchterm = '';\n }\n}\n","<bs-has-overlay></bs-has-overlay>\n<div bsDropdown [(isOpen)]=\"isOpen\" [hasBackdrop]=\"false\" [sameDropdownWidth]=\"true\">\n <button [color]=\"colors.primary\" class=\"d-flex w-100\" bsDropdownToggle>\n <div class=\"flex-grow-1\">\n <ng-content *ngIf=\"!selectedItem\"></ng-content>\n <ng-container *ngIf=\"selectedItem && suggestionTemplate\">\n <ng-container *ngTemplateOutlet=\"suggestionTemplate; context: { $implicit: selectedItem, searchbox: this }\"></ng-container>\n </ng-container>\n </div>\n <bs-icon [icon]=\"isOpen ? 'caret-up-fill' : 'caret-down-fill'\" class=\"float-end\"></bs-icon>\n </button>\n <bs-dropdown-menu *bsDropdownMenu>\n <ng-container *bsLet=\"(isBusy$ | async) as isBusy\">\n <bs-progress [isIndeterminate]=\"true\" class=\"prog\" *ngIf=\"isBusy\">\n <bs-progress-bar></bs-progress-bar>\n </bs-progress>\n <div class=\"w-100 px-2 mb-2\">\n <input type=\"text\" #textbox autofocus class=\"form-control d-block\" [ngModel]=\"searchterm$ | async\" (ngModelChange)=\"onSearchtermChange($event)\">\n </div>\n \n <bs-dropdown-item [disabled]=\"true\" *ngIf=\"searchterm === ''\">\n <ng-container *ngTemplateOutlet=\"enterSearchtermTemplate ?? defaultEnterSearchtermTemplate; context: { }\"></ng-container>\n </bs-dropdown-item>\n <div *ngIf=\"searchterm !== ''\" class=\"overflow-y-auto\" [style.max-height.px]=\"200\">\n <bs-dropdown-item *ngFor=\"let suggestion of suggestions\" (click)=\"onSuggestionClicked(suggestion)\" [isSelected]=\"selectedItem?.id === suggestion.id\" [disabled]=\"isBusy ?? true\">\n <ng-container *ngIf=\"suggestionTemplate\">\n <ng-container *ngTemplateOutlet=\"suggestionTemplate; context: { $implicit: suggestion, searchbox: this }\"></ng-container>\n </ng-container>\n </bs-dropdown-item>\n <bs-dropdown-item *ngIf=\"suggestions.length === 0\" [disabled]=\"true\">\n <ng-container *ngTemplateOutlet=\"noResultsTemplate ?? defaultNoResultsTemplate; context: { }\"></ng-container>\n </bs-dropdown-item>\n </div>\n </ng-container>\n </bs-dropdown-menu>\n</div>\n\n<ng-template #defaultEnterSearchtermTemplate>\n Enter a search term\n</ng-template>\n<ng-template #defaultNoResultsTemplate>\n No results\n</ng-template>","import { Directive, TemplateRef } from '@angular/core';\nimport { HasId } from '@mintplayer/ng-bootstrap/has-id';\nimport { BsSearchboxComponent } from '../searchbox/searchbox.component';\n\n@Directive({\n selector: '[bsEnterSearchTermTemplate]',\n})\nexport class BsEnterSearchTermTemplateDirective<T extends HasId<U>, U> {\n constructor(searchbox: BsSearchboxComponent<T, U>, template: TemplateRef<T>) {\n searchbox.enterSearchtermTemplate = template;\n }\n}\n","import { Directive, Input, TemplateRef } from '@angular/core';\nimport { HasId } from '@mintplayer/ng-bootstrap/has-id';\nimport { BsSearchboxComponent } from '../searchbox/searchbox.component';\n\n@Directive({\n selector: '[bsSuggestionTemplate]',\n})\nexport class BsSuggestionTemplateDirective<TData extends HasId<U>, U> {\n constructor(private searchbox: BsSearchboxComponent<TData, U>, template: TemplateRef<BsSuggestionTemplateContext<TData, U>>) {\n searchbox.suggestionTemplate = template;\n }\n \n public static ngTemplateContextGuard<TData extends HasId<U>, U>(\n dir: BsSuggestionTemplateDirective<TData, U>,\n ctx: any\n ): ctx is BsSuggestionTemplateContext<Exclude<TData, false | 0 | '' | null | undefined>, U> {\n return true;\n }\n\n @Input() set bsSuggestionTemplateOf(value: TData[]) {\n this.searchbox.suggestions = value;\n }\n}\n\nexport class BsSuggestionTemplateContext<TData extends HasId<U>, U> {\n public $implicit: TData = null!;\n public searchbox: BsSearchboxComponent<TData, U> = null!;\n}","import { Directive, TemplateRef } from '@angular/core';\nimport { HasId } from '@mintplayer/ng-bootstrap/has-id';\nimport { BsSearchboxComponent } from '../searchbox/searchbox.component';\n\n@Directive({\n selector: '[bsNoResultsTemplate]',\n})\nexport class BsNoResultsTemplateDirective<T extends HasId<U>, U> {\n constructor(searchbox: BsSearchboxComponent<T, U>, template: TemplateRef<T>) {\n searchbox.noResultsTemplate = template;\n }\n}\n","import { NgModule } from '@angular/core';\nimport { FormsModule } from '@angular/forms';\nimport { CommonModule } from '@angular/common';\nimport { BsLetModule } from '@mintplayer/ng-bootstrap/let';\nimport { BsIconModule } from '@mintplayer/ng-bootstrap/icon';\nimport { FocusOnLoadModule } from '@mintplayer/ng-focus-on-load';\nimport { BsDropdownModule } from '@mintplayer/ng-bootstrap/dropdown';\nimport { BsProgressBarModule } from '@mintplayer/ng-bootstrap/progress-bar';\nimport { BsDropdownMenuModule } from '@mintplayer/ng-bootstrap/dropdown-menu';\nimport { BsButtonTypeModule } from '@mintplayer/ng-bootstrap/button-type';\nimport { BsHasOverlayModule } from '@mintplayer/ng-bootstrap/has-overlay';\nimport { BsSearchboxComponent } from './searchbox/searchbox.component';\nimport { BsEnterSearchTermTemplateDirective } from './directives/enter-search-term.directive';\nimport { BsSuggestionTemplateDirective } from './directives/suggestion.directive';\nimport { BsNoResultsTemplateDirective } from './directives/no-results.directive';\n\n@NgModule({\n declarations: [\n BsSearchboxComponent,\n BsEnterSearchTermTemplateDirective,\n BsSuggestionTemplateDirective,\n BsNoResultsTemplateDirective,\n ],\n imports: [\n CommonModule,\n FormsModule,\n FocusOnLoadModule,\n BsLetModule,\n BsIconModule,\n BsDropdownModule,\n BsDropdownMenuModule,\n BsButtonTypeModule,\n BsProgressBarModule,\n BsHasOverlayModule,\n ],\n exports: [\n BsSearchboxComponent,\n BsEnterSearchTermTemplateDirective,\n BsSuggestionTemplateDirective,\n BsNoResultsTemplateDirective,\n ],\n})\nexport class BsSearchboxModule {}\n","/**\n * Generated bundle index. Do not edit.\n */\n\nexport * from './index';\n"],"names":["i1.BsSearchboxComponent"],"mappings":"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"}
@@ -115,7 +115,7 @@ class BsTimepickerComponent {
115
115
  return (time1.getHours() === time2.getHours()) && (time1.getMinutes() === time2.getMinutes());
116
116
  }
117
117
  static { this.ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "16.2.6", ngImport: i0, type: BsTimepickerComponent, deps: [{ token: i0.ChangeDetectorRef }, { token: i0.NgZone }, { token: i0.Renderer2 }], target: i0.ɵɵFactoryTarget.Component }); }
118
- static { this.ɵcmp = i0.ɵɵngDeclareComponent({ minVersion: "14.0.0", version: "16.2.6", type: BsTimepickerComponent, selector: "bs-timepicker", inputs: { selectedTime: "selectedTime" }, outputs: { selectedTimeChange: "selectedTimeChange" }, ngImport: i0, template: "<!-- <bs-dropdown [(isOpen)]=\"isOpen\" [sameDropdownWidth]=\"true\"></bs-dropdown> -->\n<div bsDropdown [(isOpen)]=\"isOpen\" [sameDropdownWidth]=\"true\">\n <bs-form>\n <bs-input-group>\n <span class=\"form-control d-flex\" [class.focus]=\"isFocused\">\n <div class=\"flex-grow-1\">\n <input type=\"number\" [min]=\"0\" [max]=\"23\" (input)=\"setNumber($event, 23, minuteBox)\" bsEnhancedPaste [ngModel]=\"hours | number: '2.0'\" (ngModelChange)=\"hours = $event\" (focus)=\"selectAll(hourBox)\" (blur)=\"isFocused = false\" #hourBox class=\"w-100 border-0 bg-transparent text-end no-form-control\">\n </div>\n <span class=\"px-1\">:</span>\n <div class=\"flex-grow-1\">\n <input type=\"number\" [min]=\"0\" [max]=\"59\" (input)=\"setNumber($event, 59, null)\" bsEnhancedPaste [ngModel]=\"minutes | number: '2.0'\" (ngModelChange)=\"minutes = $event\" (focus)=\"selectAll(minuteBox)\" (blur)=\"isFocused = false\" #minuteBox class=\"w-100 border-0 bg-transparent no-form-control\">\n </div>\n </span>\n <button [color]=\"colors.secondary\" (click)=\"isOpen = !isOpen\">\n <bs-icon [icon]=\"'clock'\"></bs-icon>\n </button>\n </bs-input-group>\n </bs-form>\n <bs-has-overlay></bs-has-overlay>\n <bs-dropdown-menu class=\"overflow-auto\" *bsDropdownMenu>\n <bs-dropdown-item [isSelected]=\"timesEqual(selectedTime, timestamp)\" *ngFor=\"let timestamp of presetTimestamps\" (click)=\"setTime(timestamp)\">\n {{ timestamp | date: 'HH:mm' }}\n </bs-dropdown-item>\n </bs-dropdown-menu>\n</div>", styles: [":host{display:inline-block}input::-webkit-outer-spin-button,input::-webkit-inner-spin-button{-webkit-appearance:none;margin:0}input[type=number]{-moz-appearance:textfield;outline:0px!important}.form-control{transition:border-color .15s ease-in-out,box-shadow .15s ease-in-out}.form-control.focus{color:#495057;background-color:#fff;border-color:#80bdff!important;outline:0;box-shadow:0 0 0 .2rem #007bff40}bs-dropdown-menu{max-height:250px}\n"], dependencies: [{ kind: "directive", type: i1.NgForOf, selector: "[ngFor][ngForOf]", inputs: ["ngForOf", "ngForTrackBy", "ngForTemplate"] }, { kind: "directive", type: i2.DefaultValueAccessor, selector: "input:not([type=checkbox])[formControlName],textarea[formControlName],input:not([type=checkbox])[formControl],textarea[formControl],input:not([type=checkbox])[ngModel],textarea[ngModel],[ngDefaultControl]" }, { kind: "directive", type: i2.NumberValueAccessor, selector: "input[type=number][formControlName],input[type=number][formControl],input[type=number][ngModel]" }, { kind: "directive", type: i2.NgControlStatus, selector: "[formControlName],[ngModel],[formControl]" }, { kind: "directive", type: i2.MinValidator, selector: "input[type=number][min][formControlName],input[type=number][min][formControl],input[type=number][min][ngModel]", inputs: ["min"] }, { kind: "directive", type: i2.MaxValidator, selector: "input[type=number][max][formControlName],input[type=number][max][formControl],input[type=number][max][ngModel]", inputs: ["max"] }, { kind: "directive", type: i2.NgModel, selector: "[ngModel]:not([formControlName]):not([formControl])", inputs: ["name", "disabled", "ngModel", "ngModelOptions"], outputs: ["ngModelChange"], exportAs: ["ngModel"] }, { kind: "directive", type: i3.EnhancedPasteDirective, selector: "input[type=\"number\"][bsEnhancedPaste]", outputs: ["numberOverflow"] }, { kind: "component", type: i4.BsFormComponent, selector: "bs-form", inputs: ["action", "method"], outputs: ["submitted"] }, { kind: "component", type: i5.BsIconComponent, selector: "bs-icon", inputs: ["icon"] }, { kind: "directive", type: i6.BsDropdownDirective, selector: "[bsDropdown]", inputs: ["hasBackdrop", "sameWidth", "closeOnClickOutside", "sameDropdownWidth", "isOpen"], outputs: ["isOpenChange"] }, { kind: "directive", type: i6.BsDropdownMenuDirective, selector: "[bsDropdownMenu]" }, { kind: "component", type: i7.BsHasOverlayComponent, selector: "bs-has-overlay" }, { kind: "component", type: i8.BsDropdownMenuComponent, selector: "bs-dropdown-menu", inputs: ["maxHeight"] }, { kind: "component", type: i8.BsDropdownItemComponent, selector: "bs-dropdown-item", inputs: ["isSelected", "disabled"] }, { kind: "component", type: i9.BsInputGroupComponent, selector: "bs-input-group" }, { kind: "directive", type: i10.BsButtonTypeDirective, selector: "button[color],input[type=\"button\"][color],input[type=\"submit\"][color]", inputs: ["color"] }, { kind: "pipe", type: i1.DecimalPipe, name: "number" }, { kind: "pipe", type: i1.DatePipe, name: "date" }] }); }
118
+ static { this.ɵcmp = i0.ɵɵngDeclareComponent({ minVersion: "14.0.0", version: "16.2.6", type: BsTimepickerComponent, selector: "bs-timepicker", inputs: { selectedTime: "selectedTime" }, outputs: { selectedTimeChange: "selectedTimeChange" }, ngImport: i0, template: "<!-- <bs-dropdown [(isOpen)]=\"isOpen\" [sameDropdownWidth]=\"true\"></bs-dropdown> -->\n<div bsDropdown [(isOpen)]=\"isOpen\" [sameDropdownWidth]=\"true\">\n <bs-form>\n <bs-input-group>\n <span class=\"form-control d-flex\" [class.focus]=\"isFocused\">\n <div class=\"flex-grow-1\">\n <input type=\"number\" [min]=\"0\" [max]=\"23\" (input)=\"setNumber($event, 23, minuteBox)\" bsEnhancedPaste [ngModel]=\"hours | number: '2.0'\" (ngModelChange)=\"hours = $event\" (focus)=\"selectAll(hourBox)\" (blur)=\"isFocused = false\" #hourBox class=\"w-100 border-0 bg-transparent text-end no-form-control\">\n </div>\n <span class=\"px-1\">:</span>\n <div class=\"flex-grow-1\">\n <input type=\"number\" [min]=\"0\" [max]=\"59\" (input)=\"setNumber($event, 59, null)\" bsEnhancedPaste [ngModel]=\"minutes | number: '2.0'\" (ngModelChange)=\"minutes = $event\" (focus)=\"selectAll(minuteBox)\" (blur)=\"isFocused = false\" #minuteBox class=\"w-100 border-0 bg-transparent no-form-control\">\n </div>\n </span>\n <button [color]=\"colors.secondary\" (click)=\"isOpen = !isOpen\">\n <bs-icon [icon]=\"'clock'\"></bs-icon>\n </button>\n </bs-input-group>\n </bs-form>\n <bs-has-overlay></bs-has-overlay>\n <bs-dropdown-menu class=\"overflow-auto\" *bsDropdownMenu>\n <bs-dropdown-item [isSelected]=\"timesEqual(selectedTime, timestamp)\" *ngFor=\"let timestamp of presetTimestamps\" (click)=\"setTime(timestamp)\">\n {{ timestamp | date: 'HH:mm' }}\n </bs-dropdown-item>\n </bs-dropdown-menu>\n</div>", styles: [":host{display:inline-block}input::-webkit-outer-spin-button,input::-webkit-inner-spin-button{-webkit-appearance:none;margin:0}input[type=number]{-moz-appearance:textfield;outline:0px!important}.form-control{transition:border-color .15s ease-in-out,box-shadow .15s ease-in-out}.form-control.focus{color:#495057;background-color:#fff;border-color:#80bdff!important;outline:0;box-shadow:0 0 0 .2rem #007bff40}bs-dropdown-menu{max-height:250px}\n"], dependencies: [{ kind: "directive", type: i1.NgForOf, selector: "[ngFor][ngForOf]", inputs: ["ngForOf", "ngForTrackBy", "ngForTemplate"] }, { kind: "directive", type: i2.DefaultValueAccessor, selector: "input:not([type=checkbox])[formControlName],textarea[formControlName],input:not([type=checkbox])[formControl],textarea[formControl],input:not([type=checkbox])[ngModel],textarea[ngModel],[ngDefaultControl]" }, { kind: "directive", type: i2.NumberValueAccessor, selector: "input[type=number][formControlName],input[type=number][formControl],input[type=number][ngModel]" }, { kind: "directive", type: i2.NgControlStatus, selector: "[formControlName],[ngModel],[formControl]" }, { kind: "directive", type: i2.MinValidator, selector: "input[type=number][min][formControlName],input[type=number][min][formControl],input[type=number][min][ngModel]", inputs: ["min"] }, { kind: "directive", type: i2.MaxValidator, selector: "input[type=number][max][formControlName],input[type=number][max][formControl],input[type=number][max][ngModel]", inputs: ["max"] }, { kind: "directive", type: i2.NgModel, selector: "[ngModel]:not([formControlName]):not([formControl])", inputs: ["name", "disabled", "ngModel", "ngModelOptions"], outputs: ["ngModelChange"], exportAs: ["ngModel"] }, { kind: "directive", type: i3.EnhancedPasteDirective, selector: "input[type=\"number\"][bsEnhancedPaste]", outputs: ["numberOverflow"] }, { kind: "component", type: i4.BsFormComponent, selector: "bs-form", inputs: ["action", "method"], outputs: ["submitted"] }, { kind: "component", type: i5.BsIconComponent, selector: "bs-icon", inputs: ["icon"] }, { kind: "directive", type: i6.BsDropdownDirective, selector: "[bsDropdown]", inputs: ["hasBackdrop", "sameWidth", "closeOnClickOutside", "sameDropdownWidth", "isOpen"], outputs: ["isOpenChange"] }, { kind: "directive", type: i6.BsDropdownMenuDirective, selector: "[bsDropdownMenu]" }, { kind: "component", type: i7.BsHasOverlayComponent, selector: "bs-has-overlay" }, { kind: "component", type: i8.BsDropdownMenuComponent, selector: "bs-dropdown-menu", inputs: ["maxHeight"] }, { kind: "component", type: i8.BsDropdownItemComponent, selector: "bs-dropdown-item", inputs: ["isSelected", "disabled"] }, { kind: "component", type: i9.BsInputGroupComponent, selector: "bs-input-group" }, { kind: "directive", type: i10.BsButtonTypeDirective, selector: "button[color],input[type=\"button\"][color],input[type=\"submit\"][color],a[color]", inputs: ["color"] }, { kind: "pipe", type: i1.DecimalPipe, name: "number" }, { kind: "pipe", type: i1.DatePipe, name: "date" }] }); }
119
119
  }
120
120
  i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "16.2.6", ngImport: i0, type: BsTimepickerComponent, decorators: [{
121
121
  type: Component,
@@ -1 +1 @@
1
- {"version":3,"file":"mintplayer-ng-bootstrap-timepicker.mjs","sources":["../../../../libs/mintplayer-ng-bootstrap/timepicker/src/timepicker.component.ts","../../../../libs/mintplayer-ng-bootstrap/timepicker/src/timepicker.component.html","../../../../libs/mintplayer-ng-bootstrap/timepicker/src/timepicker.module.ts","../../../../libs/mintplayer-ng-bootstrap/timepicker/mintplayer-ng-bootstrap-timepicker.ts"],"sourcesContent":["import { ChangeDetectorRef, Component, EventEmitter, Input, NgZone, Output, Renderer2 } from '@angular/core';\nimport { Color } from '@mintplayer/ng-bootstrap';\n\n@Component({\n selector: 'bs-timepicker',\n templateUrl: './timepicker.component.html',\n styleUrls: ['./timepicker.component.scss']\n})\nexport class BsTimepickerComponent {\n\n constructor(private ref: ChangeDetectorRef, private zone: NgZone, private renderer: Renderer2) {\n const today = new Date();\n today.setHours(0); today.setMinutes(0); today.setSeconds(0);\n\n const interval = 900;\n this.presetTimestamps = Array.from(Array(24 * 60 * 60 / interval).keys())\n .map(i => {\n const clone = new Date(today);\n clone.setTime(clone.getTime() + i * interval * 1000);\n return clone;\n });\n }\n\n colors = Color;\n isOpen = false;\n presetTimestamps: Date[] = [];\n isFocused = false;\n\n selectAll(box: HTMLInputElement) {\n box.select();\n // box.setSelectionRange(0, box.value.length);\n this.isFocused = true;\n }\n\n setNumber(event: Event, max: number, nextInput: HTMLInputElement | null) {\n event.preventDefault();\n const input = <HTMLInputElement>event.target;\n const val = parseInt(input.value);\n if (isNaN(val)) {\n input.value = '00';\n } else {\n const result = Math.min(max, Math.abs(val));\n input.value = result.toString().padStart(2, '0');\n\n if (nextInput) {\n // const maxAllowedNumberOfDigits = input.max.length;\n if (result * 10 > parseInt(input.max)) {\n nextInput.focus();\n }\n }\n }\n }\n\n setTime(time: Date) {\n this.selectedTime = time;\n this.isOpen = false;\n }\n\n //#region SelectedTime\n private _selectedTime = new Date();\n @Output() public selectedTimeChange = new EventEmitter<Date>();\n public get selectedTime() {\n return this._selectedTime;\n }\n @Input() public set selectedTime(value: Date) {\n // this.hours = value.getHours();\n // this.minutes = value.getMinutes();\n this._selectedTime = value;\n this.selectedTimeChange.emit(this._selectedTime);\n }\n //#endregion\n\n //#region Hours\n // private _hours = 0;\n get hours() {\n // return this._hours;\n return this.selectedTime.getHours();\n }\n set hours(value: number) {\n // this._hours = value;\n const clone = new Date(this.selectedTime);\n clone.setHours(value);\n this.selectedTime = clone;\n }\n // hours = 0;\n //#endregion\n //#region Minutes\n // private _minutes = 0;\n get minutes() {\n // return this._minutes;\n return this.selectedTime.getMinutes();\n }\n set minutes(value: number) {\n // this._minutes = value;\n // this.selectedTime.setMinutes(value);\n const clone = new Date(this.selectedTime);\n clone.setMinutes(value);\n this.selectedTime = clone;\n }\n //#endregion\n\n timesEqual(time1: Date, time2: Date) {\n return (time1.getHours() === time2.getHours()) && (time1.getMinutes() === time2.getMinutes());\n }\n\n}\n","<!-- <bs-dropdown [(isOpen)]=\"isOpen\" [sameDropdownWidth]=\"true\"></bs-dropdown> -->\n<div bsDropdown [(isOpen)]=\"isOpen\" [sameDropdownWidth]=\"true\">\n <bs-form>\n <bs-input-group>\n <span class=\"form-control d-flex\" [class.focus]=\"isFocused\">\n <div class=\"flex-grow-1\">\n <input type=\"number\" [min]=\"0\" [max]=\"23\" (input)=\"setNumber($event, 23, minuteBox)\" bsEnhancedPaste [ngModel]=\"hours | number: '2.0'\" (ngModelChange)=\"hours = $event\" (focus)=\"selectAll(hourBox)\" (blur)=\"isFocused = false\" #hourBox class=\"w-100 border-0 bg-transparent text-end no-form-control\">\n </div>\n <span class=\"px-1\">:</span>\n <div class=\"flex-grow-1\">\n <input type=\"number\" [min]=\"0\" [max]=\"59\" (input)=\"setNumber($event, 59, null)\" bsEnhancedPaste [ngModel]=\"minutes | number: '2.0'\" (ngModelChange)=\"minutes = $event\" (focus)=\"selectAll(minuteBox)\" (blur)=\"isFocused = false\" #minuteBox class=\"w-100 border-0 bg-transparent no-form-control\">\n </div>\n </span>\n <button [color]=\"colors.secondary\" (click)=\"isOpen = !isOpen\">\n <bs-icon [icon]=\"'clock'\"></bs-icon>\n </button>\n </bs-input-group>\n </bs-form>\n <bs-has-overlay></bs-has-overlay>\n <bs-dropdown-menu class=\"overflow-auto\" *bsDropdownMenu>\n <bs-dropdown-item [isSelected]=\"timesEqual(selectedTime, timestamp)\" *ngFor=\"let timestamp of presetTimestamps\" (click)=\"setTime(timestamp)\">\n {{ timestamp | date: 'HH:mm' }}\n </bs-dropdown-item>\n </bs-dropdown-menu>\n</div>","import { NgModule } from '@angular/core';\nimport { FormsModule } from '@angular/forms';\nimport { CommonModule } from '@angular/common';\nimport { EnhancedPasteModule } from '@mintplayer/ng-bootstrap/enhanced-paste';\nimport { BsFormModule } from '@mintplayer/ng-bootstrap/form';\nimport { BsIconModule } from '@mintplayer/ng-bootstrap/icon';\nimport { BsDropdownModule } from '@mintplayer/ng-bootstrap/dropdown';\nimport { BsButtonTypeModule } from '@mintplayer/ng-bootstrap/button-type';\nimport { BsInputGroupModule } from '@mintplayer/ng-bootstrap/input-group';\nimport { BsDropdownMenuModule } from '@mintplayer/ng-bootstrap/dropdown-menu';\nimport { BsHasOverlayModule } from '@mintplayer/ng-bootstrap/has-overlay';\nimport { BsTimepickerComponent } from './timepicker.component';\n\n@NgModule({\n declarations: [\n BsTimepickerComponent\n ],\n imports: [\n CommonModule,\n FormsModule,\n EnhancedPasteModule,\n BsFormModule,\n BsIconModule,\n BsDropdownModule,\n BsDropdownMenuModule,\n BsInputGroupModule,\n BsButtonTypeModule,\n BsHasOverlayModule,\n ],\n exports: [\n BsTimepickerComponent\n ]\n})\nexport class BsTimepickerModule { }\n","/**\n * Generated bundle index. Do not edit.\n */\n\nexport * from './index';\n"],"names":[],"mappings":"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"}
1
+ {"version":3,"file":"mintplayer-ng-bootstrap-timepicker.mjs","sources":["../../../../libs/mintplayer-ng-bootstrap/timepicker/src/timepicker.component.ts","../../../../libs/mintplayer-ng-bootstrap/timepicker/src/timepicker.component.html","../../../../libs/mintplayer-ng-bootstrap/timepicker/src/timepicker.module.ts","../../../../libs/mintplayer-ng-bootstrap/timepicker/mintplayer-ng-bootstrap-timepicker.ts"],"sourcesContent":["import { ChangeDetectorRef, Component, EventEmitter, Input, NgZone, Output, Renderer2 } from '@angular/core';\nimport { Color } from '@mintplayer/ng-bootstrap';\n\n@Component({\n selector: 'bs-timepicker',\n templateUrl: './timepicker.component.html',\n styleUrls: ['./timepicker.component.scss']\n})\nexport class BsTimepickerComponent {\n\n constructor(private ref: ChangeDetectorRef, private zone: NgZone, private renderer: Renderer2) {\n const today = new Date();\n today.setHours(0); today.setMinutes(0); today.setSeconds(0);\n\n const interval = 900;\n this.presetTimestamps = Array.from(Array(24 * 60 * 60 / interval).keys())\n .map(i => {\n const clone = new Date(today);\n clone.setTime(clone.getTime() + i * interval * 1000);\n return clone;\n });\n }\n\n colors = Color;\n isOpen = false;\n presetTimestamps: Date[] = [];\n isFocused = false;\n\n selectAll(box: HTMLInputElement) {\n box.select();\n // box.setSelectionRange(0, box.value.length);\n this.isFocused = true;\n }\n\n setNumber(event: Event, max: number, nextInput: HTMLInputElement | null) {\n event.preventDefault();\n const input = <HTMLInputElement>event.target;\n const val = parseInt(input.value);\n if (isNaN(val)) {\n input.value = '00';\n } else {\n const result = Math.min(max, Math.abs(val));\n input.value = result.toString().padStart(2, '0');\n\n if (nextInput) {\n // const maxAllowedNumberOfDigits = input.max.length;\n if (result * 10 > parseInt(input.max)) {\n nextInput.focus();\n }\n }\n }\n }\n\n setTime(time: Date) {\n this.selectedTime = time;\n this.isOpen = false;\n }\n\n //#region SelectedTime\n private _selectedTime = new Date();\n @Output() public selectedTimeChange = new EventEmitter<Date>();\n public get selectedTime() {\n return this._selectedTime;\n }\n @Input() public set selectedTime(value: Date) {\n // this.hours = value.getHours();\n // this.minutes = value.getMinutes();\n this._selectedTime = value;\n this.selectedTimeChange.emit(this._selectedTime);\n }\n //#endregion\n\n //#region Hours\n // private _hours = 0;\n get hours() {\n // return this._hours;\n return this.selectedTime.getHours();\n }\n set hours(value: number) {\n // this._hours = value;\n const clone = new Date(this.selectedTime);\n clone.setHours(value);\n this.selectedTime = clone;\n }\n // hours = 0;\n //#endregion\n //#region Minutes\n // private _minutes = 0;\n get minutes() {\n // return this._minutes;\n return this.selectedTime.getMinutes();\n }\n set minutes(value: number) {\n // this._minutes = value;\n // this.selectedTime.setMinutes(value);\n const clone = new Date(this.selectedTime);\n clone.setMinutes(value);\n this.selectedTime = clone;\n }\n //#endregion\n\n timesEqual(time1: Date, time2: Date) {\n return (time1.getHours() === time2.getHours()) && (time1.getMinutes() === time2.getMinutes());\n }\n\n}\n","<!-- <bs-dropdown [(isOpen)]=\"isOpen\" [sameDropdownWidth]=\"true\"></bs-dropdown> -->\n<div bsDropdown [(isOpen)]=\"isOpen\" [sameDropdownWidth]=\"true\">\n <bs-form>\n <bs-input-group>\n <span class=\"form-control d-flex\" [class.focus]=\"isFocused\">\n <div class=\"flex-grow-1\">\n <input type=\"number\" [min]=\"0\" [max]=\"23\" (input)=\"setNumber($event, 23, minuteBox)\" bsEnhancedPaste [ngModel]=\"hours | number: '2.0'\" (ngModelChange)=\"hours = $event\" (focus)=\"selectAll(hourBox)\" (blur)=\"isFocused = false\" #hourBox class=\"w-100 border-0 bg-transparent text-end no-form-control\">\n </div>\n <span class=\"px-1\">:</span>\n <div class=\"flex-grow-1\">\n <input type=\"number\" [min]=\"0\" [max]=\"59\" (input)=\"setNumber($event, 59, null)\" bsEnhancedPaste [ngModel]=\"minutes | number: '2.0'\" (ngModelChange)=\"minutes = $event\" (focus)=\"selectAll(minuteBox)\" (blur)=\"isFocused = false\" #minuteBox class=\"w-100 border-0 bg-transparent no-form-control\">\n </div>\n </span>\n <button [color]=\"colors.secondary\" (click)=\"isOpen = !isOpen\">\n <bs-icon [icon]=\"'clock'\"></bs-icon>\n </button>\n </bs-input-group>\n </bs-form>\n <bs-has-overlay></bs-has-overlay>\n <bs-dropdown-menu class=\"overflow-auto\" *bsDropdownMenu>\n <bs-dropdown-item [isSelected]=\"timesEqual(selectedTime, timestamp)\" *ngFor=\"let timestamp of presetTimestamps\" (click)=\"setTime(timestamp)\">\n {{ timestamp | date: 'HH:mm' }}\n </bs-dropdown-item>\n </bs-dropdown-menu>\n</div>","import { NgModule } from '@angular/core';\nimport { FormsModule } from '@angular/forms';\nimport { CommonModule } from '@angular/common';\nimport { EnhancedPasteModule } from '@mintplayer/ng-bootstrap/enhanced-paste';\nimport { BsFormModule } from '@mintplayer/ng-bootstrap/form';\nimport { BsIconModule } from '@mintplayer/ng-bootstrap/icon';\nimport { BsDropdownModule } from '@mintplayer/ng-bootstrap/dropdown';\nimport { BsButtonTypeModule } from '@mintplayer/ng-bootstrap/button-type';\nimport { BsInputGroupModule } from '@mintplayer/ng-bootstrap/input-group';\nimport { BsDropdownMenuModule } from '@mintplayer/ng-bootstrap/dropdown-menu';\nimport { BsHasOverlayModule } from '@mintplayer/ng-bootstrap/has-overlay';\nimport { BsTimepickerComponent } from './timepicker.component';\n\n@NgModule({\n declarations: [\n BsTimepickerComponent\n ],\n imports: [\n CommonModule,\n FormsModule,\n EnhancedPasteModule,\n BsFormModule,\n BsIconModule,\n BsDropdownModule,\n BsDropdownMenuModule,\n BsInputGroupModule,\n BsButtonTypeModule,\n BsHasOverlayModule,\n ],\n exports: [\n BsTimepickerComponent\n ]\n})\nexport class BsTimepickerModule { }\n","/**\n * Generated bundle index. Do not edit.\n */\n\nexport * from './index';\n"],"names":[],"mappings":"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"}
@@ -0,0 +1 @@
1
+ export * from './src';
@@ -0,0 +1,8 @@
1
+ import * as i0 from "@angular/core";
2
+ import * as i1 from "./has-property.pipe";
3
+ import * as i2 from "@angular/common";
4
+ export declare class BsHasPropertyModule {
5
+ static ɵfac: i0.ɵɵFactoryDeclaration<BsHasPropertyModule, never>;
6
+ static ɵmod: i0.ɵɵNgModuleDeclaration<BsHasPropertyModule, [typeof i1.HasPropertyPipe], [typeof i2.CommonModule], [typeof i1.HasPropertyPipe]>;
7
+ static ɵinj: i0.ɵɵInjectorDeclaration<BsHasPropertyModule>;
8
+ }
@@ -0,0 +1,7 @@
1
+ import { PipeTransform } from '@angular/core';
2
+ import * as i0 from "@angular/core";
3
+ export declare class HasPropertyPipe implements PipeTransform {
4
+ transform(value: Object, propName: string): boolean;
5
+ static ɵfac: i0.ɵɵFactoryDeclaration<HasPropertyPipe, never>;
6
+ static ɵpipe: i0.ɵɵPipeDeclaration<HasPropertyPipe, "bsHasProperty", false>;
7
+ }
@@ -0,0 +1,2 @@
1
+ export * from './has-property.module';
2
+ export * from './has-property.pipe';
package/package.json CHANGED
@@ -1,7 +1,7 @@
1
1
  {
2
2
  "name": "@mintplayer/ng-bootstrap",
3
3
  "private": false,
4
- "version": "16.17.1",
4
+ "version": "16.18.1",
5
5
  "repository": {
6
6
  "type": "git",
7
7
  "url": "https://github.com/MintPlayer/mintplayer-ng-bootstrap",
@@ -216,6 +216,12 @@
216
216
  "esm": "./esm2022/has-overlay/mintplayer-ng-bootstrap-has-overlay.mjs",
217
217
  "default": "./fesm2022/mintplayer-ng-bootstrap-has-overlay.mjs"
218
218
  },
219
+ "./has-property": {
220
+ "types": "./has-property/index.d.ts",
221
+ "esm2022": "./esm2022/has-property/mintplayer-ng-bootstrap-has-property.mjs",
222
+ "esm": "./esm2022/has-property/mintplayer-ng-bootstrap-has-property.mjs",
223
+ "default": "./fesm2022/mintplayer-ng-bootstrap-has-property.mjs"
224
+ },
219
225
  "./icon": {
220
226
  "types": "./icon/index.d.ts",
221
227
  "esm2022": "./esm2022/icon/mintplayer-ng-bootstrap-icon.mjs",