@mintplayer/ng-bootstrap 13.3.6 → 13.3.7

This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
Files changed (78) hide show
  1. package/_bootstrap.scss +1 -0
  2. package/esm2020/lib/components/calendar/calendar.component.mjs +4 -4
  3. package/esm2020/lib/components/index.mjs +2 -1
  4. package/esm2020/lib/components/offcanvas/components/index.mjs +4 -0
  5. package/esm2020/lib/components/offcanvas/components/offcanvas/offcanvas.component.mjs +62 -0
  6. package/esm2020/lib/components/offcanvas/components/offcanvas-body/offcanvas-body.component.mjs +14 -0
  7. package/esm2020/lib/components/offcanvas/components/offcanvas-header/offcanvas-header.component.mjs +14 -0
  8. package/esm2020/lib/components/offcanvas/directives/index.mjs +2 -0
  9. package/esm2020/lib/components/offcanvas/directives/offcanvas-close/offcanvas-close.directive.mjs +27 -0
  10. package/esm2020/lib/components/offcanvas/index.mjs +7 -0
  11. package/esm2020/lib/components/offcanvas/interfaces/index.mjs +2 -0
  12. package/esm2020/lib/components/offcanvas/interfaces/offcanvas-animation-meta.mjs +2 -0
  13. package/esm2020/lib/components/offcanvas/offcanvas.module.mjs +45 -0
  14. package/esm2020/lib/components/offcanvas/providers/offcanvas-content.provider.mjs +3 -0
  15. package/esm2020/lib/components/offcanvas/services/index.mjs +2 -0
  16. package/esm2020/lib/components/offcanvas/services/offcanvas/offcanvas.service.mjs +72 -0
  17. package/esm2020/lib/components/offcanvas/types/index.mjs +2 -0
  18. package/esm2020/lib/components/offcanvas/types/position.mjs +2 -0
  19. package/esm2020/lib/components/scheduler/components/index.mjs +2 -1
  20. package/esm2020/lib/components/scheduler/components/resource-group-presenter/resource-group-presenter.component.mjs +84 -0
  21. package/esm2020/lib/components/scheduler/components/scheduler/scheduler.component.mjs +197 -72
  22. package/esm2020/lib/components/scheduler/constants/available-scales.mjs +12 -0
  23. package/esm2020/lib/components/scheduler/constants/index.mjs +2 -0
  24. package/esm2020/lib/components/scheduler/enums/index.mjs +2 -0
  25. package/esm2020/lib/components/scheduler/enums/scheduler-mode.mjs +6 -0
  26. package/esm2020/lib/components/scheduler/index.mjs +4 -1
  27. package/esm2020/lib/components/scheduler/interfaces/index.mjs +6 -0
  28. package/esm2020/lib/components/scheduler/interfaces/resource-group.mjs +2 -0
  29. package/esm2020/lib/components/scheduler/interfaces/resource-or-group.mjs +2 -0
  30. package/esm2020/lib/components/scheduler/interfaces/resource.mjs +2 -0
  31. package/esm2020/lib/components/scheduler/interfaces/scheduler-schale.mjs +2 -0
  32. package/esm2020/lib/components/scheduler/interfaces/scheduler-stamp-with-slots.mjs +2 -0
  33. package/esm2020/lib/components/scheduler/interfaces/timeline-options.mjs +2 -0
  34. package/esm2020/lib/components/scheduler/interfaces/week-options.mjs +2 -0
  35. package/esm2020/lib/components/scheduler/scheduler.module.mjs +9 -4
  36. package/esm2020/lib/components/snackbar/service/snackbar.service.mjs +6 -7
  37. package/esm2020/lib/components/snackbar/snackbar.module.mjs +2 -9
  38. package/fesm2015/mintplayer-ng-bootstrap.mjs +512 -87
  39. package/fesm2015/mintplayer-ng-bootstrap.mjs.map +1 -1
  40. package/fesm2020/mintplayer-ng-bootstrap.mjs +510 -87
  41. package/fesm2020/mintplayer-ng-bootstrap.mjs.map +1 -1
  42. package/lib/components/calendar/calendar.component.d.ts +1 -1
  43. package/lib/components/index.d.ts +1 -0
  44. package/lib/components/offcanvas/components/index.d.ts +3 -0
  45. package/lib/components/offcanvas/components/offcanvas/offcanvas.component.d.ts +20 -0
  46. package/lib/components/offcanvas/components/offcanvas-body/offcanvas-body.component.d.ts +8 -0
  47. package/lib/components/offcanvas/components/offcanvas-header/offcanvas-header.component.d.ts +8 -0
  48. package/lib/components/offcanvas/directives/index.d.ts +1 -0
  49. package/lib/components/offcanvas/directives/offcanvas-close/offcanvas-close.directive.d.ts +11 -0
  50. package/lib/components/offcanvas/index.d.ts +6 -0
  51. package/lib/components/offcanvas/interfaces/index.d.ts +1 -0
  52. package/lib/components/offcanvas/interfaces/offcanvas-animation-meta.d.ts +7 -0
  53. package/lib/components/offcanvas/offcanvas.module.d.ts +12 -0
  54. package/lib/components/offcanvas/providers/offcanvas-content.provider.d.ts +2 -0
  55. package/lib/components/offcanvas/services/index.d.ts +1 -0
  56. package/lib/components/offcanvas/services/offcanvas/offcanvas.service.d.ts +13 -0
  57. package/lib/components/offcanvas/types/index.d.ts +1 -0
  58. package/lib/components/offcanvas/types/position.d.ts +1 -0
  59. package/lib/components/scheduler/components/index.d.ts +1 -0
  60. package/lib/components/scheduler/components/resource-group-presenter/resource-group-presenter.component.d.ts +26 -0
  61. package/lib/components/scheduler/components/scheduler/scheduler.component.d.ts +32 -11
  62. package/lib/components/scheduler/constants/available-scales.d.ts +2 -0
  63. package/lib/components/scheduler/constants/index.d.ts +1 -0
  64. package/lib/components/scheduler/enums/index.d.ts +1 -0
  65. package/lib/components/scheduler/enums/scheduler-mode.d.ts +4 -0
  66. package/lib/components/scheduler/index.d.ts +3 -0
  67. package/lib/components/scheduler/interfaces/index.d.ts +5 -0
  68. package/lib/components/scheduler/interfaces/resource-group.d.ts +5 -0
  69. package/lib/components/scheduler/interfaces/resource-or-group.d.ts +6 -0
  70. package/lib/components/scheduler/interfaces/resource.d.ts +5 -0
  71. package/lib/components/scheduler/interfaces/scheduler-schale.d.ts +5 -0
  72. package/lib/components/scheduler/interfaces/scheduler-stamp-with-slots.d.ts +6 -0
  73. package/lib/components/scheduler/interfaces/timeline-options.d.ts +3 -0
  74. package/lib/components/scheduler/interfaces/week-options.d.ts +3 -0
  75. package/lib/components/scheduler/scheduler.module.d.ts +3 -2
  76. package/lib/components/snackbar/service/snackbar.service.d.ts +2 -3
  77. package/package.json +1 -1
  78. package/src/styles/utilities/overflow.scss +10 -0
package/_bootstrap.scss CHANGED
@@ -8,6 +8,7 @@
8
8
  @import "~bootstrap/scss/bootstrap-utilities.scss";
9
9
  @import './src/styles/utilities/cursor.scss';
10
10
  @import './src/styles/utilities/white-space.scss';
11
+ @import './src/styles/utilities/overflow.scss';
11
12
 
12
13
  // Finally import the bootstrap
13
14
  @import "~bootstrap/scss/bootstrap.scss";
@@ -20,7 +20,7 @@ export class BsCalendarComponent {
20
20
  this.weeks$ = this.currentMonth$
21
21
  .pipe(map((month) => this.calendarMonthService.getWeeks(month)))
22
22
  .pipe(takeUntil(this.destroyed$));
23
- this.daysOfWeek$ = this.weeks$
23
+ this.shownDays$ = this.weeks$
24
24
  .pipe(filter((weeks) => weeks.length > 1))
25
25
  .pipe(map((weeks) => weeks[1].days))
26
26
  .pipe(map((days) => {
@@ -89,10 +89,10 @@ export class BsCalendarComponent {
89
89
  }
90
90
  }
91
91
  BsCalendarComponent.ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "13.2.0", ngImport: i0, type: BsCalendarComponent, deps: [{ token: i1.BsCalendarMonthService }], target: i0.ɵɵFactoryTarget.Component });
92
- BsCalendarComponent.ɵcmp = i0.ɵɵngDeclareComponent({ minVersion: "12.0.0", version: "13.2.0", type: BsCalendarComponent, selector: "bs-calendar", inputs: { currentMonth: "currentMonth", selectedDate: "selectedDate" }, outputs: { currentMonthChange: "currentMonthChange", selectedDateChange: "selectedDateChange" }, ngImport: i0, template: "<table class=\"table w-auto mb-0\">\n <tr>\n <td>\n <button class=\"btn btn-default\" (click)=\"previousMonth()\">\n <i class=\"bi bi-chevron-left fw-bolder\"></i>\n </button>\n </td>\n <td colspan=\"6\" class=\"fw-bolder\">\n {{ currentMonth$ | async | monthName | ucFirst }}\n {{ (currentMonth$ | async)?.getFullYear() }}\n </td>\n <td>\n <button class=\"btn btn-default border-bottom-0\" (click)=\"nextMonth()\">\n <i class=\"bi bi-chevron-right fw-bolder\"></i>\n </button>\n </td>\n </tr>\n <tr>\n <th></th>\n <th *ngFor=\"let dayOfWeek of daysOfWeek$ | async\" [title]=\"dayOfWeek.long\">\n {{ dayOfWeek.short }}\n </th>\n </tr>\n <tr *ngFor=\"let week of (weeks$ | async)\">\n <th>\n {{ week.number }}\n </th>\n <td [class.selected]=\"day === null ? false : isSameDate(selectedDate$ | async, day.date)\" *ngFor=\"let day of week.days\" (click)=\"goto(day)\">\n <span *ngIf=\"day !== null\" [class.text-muted]=\"!day.isInMonth\">{{ day.dayOfMonth }}</span>\n </td>\n </tr>\n</table>", styles: [".text-muted{color:#9ea7af!important}table{border-collapse:collapse;border:1px solid rgba(0,0,0,.125);background:#fff}table td,table th{width:40px;height:40px;text-align:center}table td span,table th span{cursor:pointer;white-space:nowrap}table td.selected{background-color:#0d6efd;color:#fff}table th{background-color:#f8f9fa}table tr{border-top:none}table tr:first-child>td{border-bottom:1px solid rgba(0,0,0,.125)}table tr:nth-of-type(2)>th:not(:nth-of-type(1)){border-bottom:1px solid rgba(0,0,0,.125)}table tr:not(:nth-of-type(2))>th:nth-of-type(1){border-right:1px solid rgba(0,0,0,.125)}\n"], directives: [{ type: i2.NgForOf, selector: "[ngFor][ngForOf]", inputs: ["ngForOf", "ngForTrackBy", "ngForTemplate"] }, { type: i2.NgIf, selector: "[ngIf]", inputs: ["ngIf", "ngIfThen", "ngIfElse"] }], pipes: { "ucFirst": i3.UcFirstPipe, "monthName": i4.MonthNamePipe, "async": i2.AsyncPipe } });
92
+ BsCalendarComponent.ɵcmp = i0.ɵɵngDeclareComponent({ minVersion: "12.0.0", version: "13.2.0", type: BsCalendarComponent, selector: "bs-calendar", inputs: { currentMonth: "currentMonth", selectedDate: "selectedDate" }, outputs: { currentMonthChange: "currentMonthChange", selectedDateChange: "selectedDateChange" }, ngImport: i0, template: "<table class=\"table w-auto mb-0\">\n <tr>\n <td>\n <button class=\"btn btn-default\" (click)=\"previousMonth()\">\n <i class=\"bi bi-chevron-left fw-bolder\"></i>\n </button>\n </td>\n <td colspan=\"6\" class=\"fw-bolder\">\n {{ currentMonth$ | async | monthName | ucFirst }}\n {{ (currentMonth$ | async)?.getFullYear() }}\n </td>\n <td>\n <button class=\"btn btn-default border-bottom-0\" (click)=\"nextMonth()\">\n <i class=\"bi bi-chevron-right fw-bolder\"></i>\n </button>\n </td>\n </tr>\n <tr>\n <th></th>\n <th *ngFor=\"let dayOfWeek of shownDays$ | async\" [title]=\"dayOfWeek.long\">\n {{ dayOfWeek.short }}\n </th>\n </tr>\n <tr *ngFor=\"let week of (weeks$ | async)\">\n <th>\n {{ week.number }}\n </th>\n <td [class.selected]=\"day === null ? false : isSameDate(selectedDate$ | async, day.date)\" *ngFor=\"let day of week.days\" (click)=\"goto(day)\">\n <span *ngIf=\"day !== null\" [class.text-muted]=\"!day.isInMonth\">{{ day.dayOfMonth }}</span>\n </td>\n </tr>\n</table>", styles: [".text-muted{color:#9ea7af!important}table{border-collapse:collapse;border:1px solid rgba(0,0,0,.125);background:#fff}table td,table th{width:40px;height:40px;text-align:center}table td span,table th span{cursor:pointer;white-space:nowrap}table td.selected{background-color:#0d6efd;color:#fff}table th{background-color:#f8f9fa}table tr{border-top:none}table tr:first-child>td{border-bottom:1px solid rgba(0,0,0,.125)}table tr:nth-of-type(2)>th:not(:nth-of-type(1)){border-bottom:1px solid rgba(0,0,0,.125)}table tr:not(:nth-of-type(2))>th:nth-of-type(1){border-right:1px solid rgba(0,0,0,.125)}\n"], directives: [{ type: i2.NgForOf, selector: "[ngFor][ngForOf]", inputs: ["ngForOf", "ngForTrackBy", "ngForTemplate"] }, { type: i2.NgIf, selector: "[ngIf]", inputs: ["ngIf", "ngIfThen", "ngIfElse"] }], pipes: { "ucFirst": i3.UcFirstPipe, "monthName": i4.MonthNamePipe, "async": i2.AsyncPipe } });
93
93
  i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "13.2.0", ngImport: i0, type: BsCalendarComponent, decorators: [{
94
94
  type: Component,
95
- args: [{ selector: 'bs-calendar', template: "<table class=\"table w-auto mb-0\">\n <tr>\n <td>\n <button class=\"btn btn-default\" (click)=\"previousMonth()\">\n <i class=\"bi bi-chevron-left fw-bolder\"></i>\n </button>\n </td>\n <td colspan=\"6\" class=\"fw-bolder\">\n {{ currentMonth$ | async | monthName | ucFirst }}\n {{ (currentMonth$ | async)?.getFullYear() }}\n </td>\n <td>\n <button class=\"btn btn-default border-bottom-0\" (click)=\"nextMonth()\">\n <i class=\"bi bi-chevron-right fw-bolder\"></i>\n </button>\n </td>\n </tr>\n <tr>\n <th></th>\n <th *ngFor=\"let dayOfWeek of daysOfWeek$ | async\" [title]=\"dayOfWeek.long\">\n {{ dayOfWeek.short }}\n </th>\n </tr>\n <tr *ngFor=\"let week of (weeks$ | async)\">\n <th>\n {{ week.number }}\n </th>\n <td [class.selected]=\"day === null ? false : isSameDate(selectedDate$ | async, day.date)\" *ngFor=\"let day of week.days\" (click)=\"goto(day)\">\n <span *ngIf=\"day !== null\" [class.text-muted]=\"!day.isInMonth\">{{ day.dayOfMonth }}</span>\n </td>\n </tr>\n</table>", styles: [".text-muted{color:#9ea7af!important}table{border-collapse:collapse;border:1px solid rgba(0,0,0,.125);background:#fff}table td,table th{width:40px;height:40px;text-align:center}table td span,table th span{cursor:pointer;white-space:nowrap}table td.selected{background-color:#0d6efd;color:#fff}table th{background-color:#f8f9fa}table tr{border-top:none}table tr:first-child>td{border-bottom:1px solid rgba(0,0,0,.125)}table tr:nth-of-type(2)>th:not(:nth-of-type(1)){border-bottom:1px solid rgba(0,0,0,.125)}table tr:not(:nth-of-type(2))>th:nth-of-type(1){border-right:1px solid rgba(0,0,0,.125)}\n"] }]
95
+ args: [{ selector: 'bs-calendar', template: "<table class=\"table w-auto mb-0\">\n <tr>\n <td>\n <button class=\"btn btn-default\" (click)=\"previousMonth()\">\n <i class=\"bi bi-chevron-left fw-bolder\"></i>\n </button>\n </td>\n <td colspan=\"6\" class=\"fw-bolder\">\n {{ currentMonth$ | async | monthName | ucFirst }}\n {{ (currentMonth$ | async)?.getFullYear() }}\n </td>\n <td>\n <button class=\"btn btn-default border-bottom-0\" (click)=\"nextMonth()\">\n <i class=\"bi bi-chevron-right fw-bolder\"></i>\n </button>\n </td>\n </tr>\n <tr>\n <th></th>\n <th *ngFor=\"let dayOfWeek of shownDays$ | async\" [title]=\"dayOfWeek.long\">\n {{ dayOfWeek.short }}\n </th>\n </tr>\n <tr *ngFor=\"let week of (weeks$ | async)\">\n <th>\n {{ week.number }}\n </th>\n <td [class.selected]=\"day === null ? false : isSameDate(selectedDate$ | async, day.date)\" *ngFor=\"let day of week.days\" (click)=\"goto(day)\">\n <span *ngIf=\"day !== null\" [class.text-muted]=\"!day.isInMonth\">{{ day.dayOfMonth }}</span>\n </td>\n </tr>\n</table>", styles: [".text-muted{color:#9ea7af!important}table{border-collapse:collapse;border:1px solid rgba(0,0,0,.125);background:#fff}table td,table th{width:40px;height:40px;text-align:center}table td span,table th span{cursor:pointer;white-space:nowrap}table td.selected{background-color:#0d6efd;color:#fff}table th{background-color:#f8f9fa}table tr{border-top:none}table tr:first-child>td{border-bottom:1px solid rgba(0,0,0,.125)}table tr:nth-of-type(2)>th:not(:nth-of-type(1)){border-bottom:1px solid rgba(0,0,0,.125)}table tr:not(:nth-of-type(2))>th:nth-of-type(1){border-right:1px solid rgba(0,0,0,.125)}\n"] }]
96
96
  }], ctorParameters: function () { return [{ type: i1.BsCalendarMonthService }]; }, propDecorators: { currentMonthChange: [{
97
97
  type: Output
98
98
  }], currentMonth: [{
@@ -102,4 +102,4 @@ i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "13.2.0", ngImpor
102
102
  }], selectedDate: [{
103
103
  type: Input
104
104
  }] } });
105
- //# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoiY2FsZW5kYXIuY29tcG9uZW50LmpzIiwic291cmNlUm9vdCI6IiIsInNvdXJjZXMiOlsiLi4vLi4vLi4vLi4vLi4vLi4vLi4vbGlicy9taW50cGxheWVyLW5nLWJvb3RzdHJhcC9zcmMvbGliL2NvbXBvbmVudHMvY2FsZW5kYXIvY2FsZW5kYXIuY29tcG9uZW50LnRzIiwiLi4vLi4vLi4vLi4vLi4vLi4vLi4vbGlicy9taW50cGxheWVyLW5nLWJvb3RzdHJhcC9zcmMvbGliL2NvbXBvbmVudHMvY2FsZW5kYXIvY2FsZW5kYXIuY29tcG9uZW50Lmh0bWwiXSwibmFtZXMiOltdLCJtYXBwaW5ncyI6IkFBQUEsT0FBTyxFQUFFLFNBQVMsRUFBRSxZQUFZLEVBQUUsS0FBSyxFQUFhLE1BQU0sRUFBRSxNQUFNLGVBQWUsQ0FBQztBQUNsRixPQUFPLEVBQUUsZUFBZSxFQUFFLE1BQU0sRUFBRSxHQUFHLEVBQWMsT0FBTyxFQUFFLElBQUksRUFBRSxTQUFTLEVBQUUsTUFBTSxNQUFNLENBQUM7QUFJMUYsT0FBTyxFQUFFLHNCQUFzQixFQUFFLE1BQU0sc0RBQXNELENBQUM7Ozs7OztBQU85RixNQUFNLE9BQU8sbUJBQW1CO0lBQzlCLFlBQW9CLG9CQUE0QztRQUE1Qyx5QkFBb0IsR0FBcEIsb0JBQW9CLENBQXdCO1FBbUN4RCxlQUFVLEdBQUcsSUFBSSxPQUFPLEVBQUUsQ0FBQztRQUluQyxzQkFBc0I7UUFDdEIsa0JBQWEsR0FBRyxJQUFJLGVBQWUsQ0FBTyxJQUFJLElBQUksRUFBRSxDQUFDLENBQUM7UUFDckMsdUJBQWtCLEdBQUcsSUFBSSxZQUFZLEVBQVEsQ0FBQztRQU8vRCxZQUFZO1FBQ1osc0JBQXNCO1FBQ3RCLGtCQUFhLEdBQUcsSUFBSSxlQUFlLENBQU8sSUFBSSxJQUFJLEVBQUUsQ0FBQyxDQUFDO1FBQ3JDLHVCQUFrQixHQUFHLElBQUksWUFBWSxFQUFRLENBQUM7UUFsRDdELElBQUksQ0FBQyxNQUFNLEdBQUcsSUFBSSxDQUFDLGFBQWE7YUFDN0IsSUFB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QyxDQUFDO1NBQ25DO0lBQ0gsQ0FBQzs7Z0hBcEdVLG1CQUFtQjtvR0FBbkIsbUJBQW1CLDROQ1poQyw0c0NBK0JROzJGRG5CSyxtQkFBbUI7a0JBTC9CLFNBQVM7K0JBQ0UsYUFBYTs2R0E4Q04sa0JBQWtCO3NCQUFsQyxNQUFNO2dCQUlNLFlBQVk7c0JBQXhCLEtBQUs7Z0JBTVcsa0JBQWtCO3NCQUFsQyxNQUFNO2dCQUlNLFlBQVk7c0JBQXhCLEtBQUsiLCJzb3VyY2VzQ29udGVudCI6WyJpbXBvcnQgeyBDb21wb25lbnQsIEV2ZW50RW1pdHRlciwgSW5wdXQsIE9uRGVzdHJveSwgT3V0cHV0IH0gZnJvbSAnQGFuZ3VsYXIvY29yZSc7XG5pbXBvcnQgeyBCZWhhdmlvclN1YmplY3QsIGZpbHRlciwgbWFwLCBPYnNlcnZhYmxlLCBTdWJqZWN0LCB0YWtlLCB0YWtlVW50aWwgfSBmcm9tICdyeGpzJztcbmltcG9ydCB7IERhdGVEYXlPZk1vbnRoIH0gZnJvbSAnLi4vLi4vaW50ZXJmYWNlcy9kYXRlLWRheS1vZi1tb250aCc7XG5pbXBvcnQgeyBXZWVrIH0gZnJvbSAnLi4vLi4vaW50ZXJmYWNlcy93ZWVrJztcbmltcG9ydCB7IFdlZWtEYXkgfSBmcm9tICcuLi8uLi9pbnRlcmZhY2VzL3dlZWtkYXknO1xuaW1wb3J0IHsgQnNDYWxlbmRhck1vbnRoU2VydmljZSB9IGZyb20gJy4uLy4uL3NlcnZpY2VzL2NhbGVuZGFyLW1vbnRoL2NhbGVuZGFyLW1vbnRoLnNlcnZpY2UnO1xuXG5AQ29tcG9uZW50KHtcbiAgc2VsZWN0b3I6ICdicy1jYWxlbmRhcicsXG4gIHRlbXBsYXRlVXJsOiAnLi9jYWxlbmRhci5jb21wb25lbnQuaHRtbCcsXG4gIHN0eWxlVXJsczogWycuL2NhbGVuZGFyLmNvbXBvbmVudC5zY3NzJ10sXG59KVxuZXhwb3J0IGNsYXNzIEJzQ2FsZW5kYXJDb21wb25lbnQgaW1wbGVtZW50cyBPbkRlc3Ryb3kge1xuICBjb25zdHJ1Y3Rvcihwcml2YXRlIGNhbGVuZGFyTW9udGhTZXJ2aWNlOiBCc0NhbGVuZGFyTW9udGhTZXJ2aWNlKSB7XG4gICAgdGhpcy53ZWVrcyQgPSB0aGlzLmN1cnJlbnRNb250aCRcbiAgICAgIC5waXBlKG1hcCgobW9udGgpID0+IHRoaXMuY2FsZW5kYXJNb250aFNlcnZpY2UuZ2V0V2Vla3MobW9udGgpKSlcbiAgICAgIC5waXBlKHRha2VVbnRpbCh0aGlzLmRlc3Ryb3llZCQpKTtcbiAgICB0aGlzLmRheXNPZldlZWskID0gdGhpcy53ZWVrcyRcbiAgICAgIC5waXBlKGZpbHRlcigod2Vla3MpID0+IHdlZWtzLmxlbmd0aCA+IDEpKVxuICAgICAgLnBpcGUobWFwKCh3ZWVrcykgPT4gd2Vla3NbMV0uZGF5cykpXG4gICAgICAucGlwZShcbiAgICAgICAgbWFwKChkYXlzKSA9PiB7XG4gICAgICAgICAgY29uc3QgZmlyc3REYXkgPSBkYXlzWzBdO1xuICAgICAgICAgIGlmIChmaXJzdERheSkge1xuICAgICAgICAgICAgcmV0dXJuIGRheXMubWFwKChkKSA9PiB7XG4gICAgICAgICAgICAgIGNvbnN0IGRhdGUgPSBuZXcgRGF0ZShcbiAgICAgICAgICAgICAgICBmaXJzdERheS5kYXRlLmdldEZ1bGxZZWFyKCksXG4gICAgICAgICAgICAgICAgZmlyc3REYXkuZGF0ZS5nZXRNb250aCgpLFxuICAgICAgICAgICAgICAgIGQ/LmRheU9mTW9udGhcbiAgICAgICAgICAgICAgKTtcbiAgICAgICAgICAgICAgcmV0dXJuIDxXZWVrRGF5PntcbiAgICAgICAgICAgICAgICBzaG9ydDogZGF0ZS50b0xvY2FsZVN0cmluZygnZGVmYXVsdCcsIHsgd2Vla2RheTogJ3Nob3J0JyB9KSxcbiAgICAgICAgICAgICAgICBsb25nOiBkYXRlLnRvTG9jYWxlU3RyaW5nKCdkZWZhdWx0JywgeyB3ZWVrZGF5OiAnbG9uZycgfSlcbiAgICAgICAgICAgICAgfTtcbiAgICAgICAgICAgIH0pO1xuICAgICAgICAgIH0gZWxzZSB7XG4gICAgICAgICAgICByZXR1cm4gW107XG4gICAgICAgICAgfVxuICAgICAgICB9KVxuICAgICAgKTtcbiAgICB0aGlzLnNlbGVjdGVkRGF0ZSQucGlwZSh0YWtlVW50aWwodGhpcy5kZXN0cm95ZWQkKSkuc3Vic2NyaWJlKChkYXRlKSA9PiB7XG4gICAgICB0aGlzLnNlbGVjdGVkRGF0ZUNoYW5nZS5lbWl0KGRhdGUpO1xuICAgIH0pO1xuICAgIHRoaXMuY3VycmVudE1vbnRoJC5waXBlKHRha2VVbnRpbCh0aGlzLmRlc3Ryb3llZCQpKS5zdWJzY3JpYmUoKG1vbnRoKSA9PiB7XG4gICAgICB0aGlzLmN1cnJlbnRNb250aENoYW5nZS5lbWl0KG1vbnRoKTtcbiAgICB9KTtcbiAgfVxuXG4gIHByaXZhdGUgZGVzdHJveWVkJCA9IG5ldyBTdWJqZWN0KCk7XG4gIHdlZWtzJDogT2JzZXJ2YWJsZTxXZWVrW10+O1xuICBkYXlzT2ZXZWVrJDogT2JzZXJ2YWJsZTxXZWVrRGF5W10+O1xuXG4gIC8vI3JlZ2lvbiBDdXJyZW50TW9udGhcbiAgY3VycmVudE1vbnRoJCA9IG5ldyBCZWhhdmlvclN1YmplY3Q8RGF0ZT4obmV3IERhdGUoKSk7XG4gIEBPdXRwdXQoKSBwdWJsaWMgY3VycmVudE1vbnRoQ2hhbmdlID0gbmV3IEV2ZW50RW1pdHRlcjxEYXRlPigpO1xuICBnZXQgY3VycmVudE1vbnRoKCkge1xuICAgIHJldHVybiB0aGlzLmN1cnJlbnRNb250aCQudmFsdWU7XG4gIH1cbiAgQElucHV0KCkgc2V0IGN1cnJlbnRNb250aCh2YWx1ZTogRGF0ZSkge1xuICAgIHRoaXMuY3VycmVudE1vbnRoJC5uZXh0KHZhbHVlKTtcbiAgfVxuICAvLyNlbmRyZWdpb25cbiAgLy8jcmVnaW9uIFNlbGVjdGVkRGF0ZVxuICBzZWxlY3RlZERhdGUkID0gbmV3IEJlaGF2aW9yU3ViamVjdDxEYXRlPihuZXcgRGF0ZSgpKTtcbiAgQE91dHB1dCgpIHB1YmxpYyBzZWxlY3RlZERhdGVDaGFuZ2UgPSBuZXcgRXZlbnRFbWl0dGVyPERhdGU+KCk7XG4gIGdldCBzZWxlY3RlZERhdGUoKSB7XG4gICAgcmV0dXJuIHRoaXMuc2VsZWN0ZWREYXRlJC52YWx1ZTtcbiAgfVxuICBASW5wdXQoKSBzZXQgc2VsZWN0ZWREYXRlKHZhbHVlOiBEYXRlKSB7XG4gICAgdGhpcy5zZWxlY3RlZERhdGUkLm5leHQodmFsdWUpO1xuICB9XG4gIC8vI2VuZHJlZ2lvblxuXG4gIG5nT25EZXN0cm95KCkge1xuICAgIHRoaXMuZGVzdHJveWVkJC5uZXh0KHRydWUpO1xuICB9XG5cbiAgcHJldmlvdXNNb250aCgpIHtcbiAgICB0aGlzLmN1cnJlbnRNb250aCQucGlwZSh0YWtlKDEpKS5zdWJzY3JpYmUoKG1vbnRoKSA9PiB7XG4gICAgICB0aGlzLmN1cnJlbnRNb250aCQubmV4dChcbiAgICAgICAgbmV3IERhdGUobW9udGguZ2V0RnVsbFllYXIoKSwgbW9udGguZ2V0TW9udGgoKSAtIDEsIDEpXG4gICAgICApO1xuICAgIH0pO1xuXG4gICAgcmV0dXJuIGZhbHNlO1xuICB9XG5cbiAgbmV4dE1vbnRoKCkge1xuICAgIHRoaXMuY3VycmVudE1vbnRoJC5waXBlKHRha2UoMSkpLnN1YnNjcmliZSgobW9udGgpID0+IHtcbiAgICAgIHRoaXMuY3VycmVudE1vbnRoJC5uZXh0KFxuICAgICAgICBuZXcgRGF0ZShtb250aC5nZXRGdWxsWWVhcigpLCBtb250aC5nZXRNb250aCgpICsgMSwgMSlcbiAgICAgICk7XG4gICAgfSk7XG5cbiAgICByZXR1cm4gZmFsc2U7XG4gIH1cblxuICBpc1NhbWVEYXRlKGRhdGUxOiBEYXRlIHwgbnVsbCwgZGF0ZTI6IERhdGUgfCBudWxsKSB7XG4gICAgaWYgKGRhdGUxID09PSBudWxsICYmIGRhdGUyID09PSBudWxsKSByZXR1cm4gdHJ1ZTtcbiAgICBpZiAoZGF0ZTEgPT09IG51bGwgfHwgZGF0ZTIgPT09IG51bGwpIHJldHVybiBmYWxzZTtcblxuICAgIHJldHVybiAoXG4gICAgICBkYXRlMS5nZXRGdWxsWWVhcigpID09PSBkYXRlMi5nZXRGdWxsWWVhcigpICYmXG4gICAgICBkYXRlMS5nZXRNb250aCgpID09PSBkYXRlMi5nZXRNb250aCgpICYmXG4gICAgICBkYXRlMS5nZXREYXRlKCkgPT09IGRhdGUyLmdldERhdGUoKVxuICAgICk7XG4gIH1cblxuICBnb3RvKGRheTogRGF0ZURheU9mTW9udGggfCBudWxsKSB7XG4gICAgaWYgKGRheSkge1xuICAgICAgdGhpcy5zZWxlY3RlZERhdGUkLm5leHQoZGF5LmRhdGUpO1xuICAgIH1cbiAgfVxufVxuIiwiPHRhYmxlIGNsYXNzPVwidGFibGUgdy1hdXRvIG1iLTBcIj5cbiAgICA8dHI+XG4gICAgICAgIDx0ZD5cbiAgICAgICAgICAgIDxidXR0b24gY2xhc3M9XCJidG4gYnRuLWRlZmF1bHRcIiAoY2xpY2spPVwicHJldmlvdXNNb250aCgpXCI+XG4gICAgICAgICAgICAgICAgPGkgY2xhc3M9XCJiaSBiaS1jaGV2cm9uLWxlZnQgZnctYm9sZGVyXCI+PC9pPlxuICAgICAgICAgICAgPC9idXR0b24+XG4gICAgICAgIDwvdGQ+XG4gICAgICAgIDx0ZCBjb2xzcGFuPVwiNlwiIGNsYXNzPVwiZnctYm9sZGVyXCI+XG4gICAgICAgICAgICB7eyBjdXJyZW50TW9udGgkIHwgYXN5bmMgfCBtb250aE5hbWUgfCB1Y0ZpcnN0IH19XG4gICAgICAgICAgICB7eyAoY3VycmVudE1vbnRoJCB8IGFzeW5jKT8uZ2V0RnVsbFllYXIoKSB9fVxuICAgICAgICA8L3RkPlxuICAgICAgICA8dGQ+XG4gICAgICAgICAgICA8YnV0dG9uIGNsYXNzPVwiYnRuIGJ0bi1kZWZhdWx0IGJvcmRlci1ib3R0b20tMFwiIChjbGljayk9XCJuZXh0TW9udGgoKVwiPlxuICAgICAgICAgICAgICAgIDxpIGNsYXNzPVwiYmkgYmktY2hldnJvbi1yaWdodCBmdy1ib2xkZXJcIj48L2k+XG4gICAgICAgICAgICA8L2J1dHRvbj5cbiAgICAgICAgPC90ZD5cbiAgICA8L3RyPlxuICAgIDx0cj5cbiAgICAgICAgPHRoPjwvdGg+XG4gICAgICAgIDx0aCAqbmdGb3I9XCJsZXQgZGF5T2ZXZWVrIG9mIGRheXNPZldlZWskIHwgYXN5bmNcIiBbdGl0bGVdPVwiZGF5T2ZXZWVrLmxvbmdcIj5cbiAgICAgICAgICAgIHt7IGRheU9mV2Vlay5zaG9ydCB9fVxuICAgICAgICA8L3RoPlxuICAgIDwvdHI+XG4gICAgPHRyICpuZ0Zvcj1cImxldCB3ZWVrIG9mICh3ZWVrcyQgfCBhc3luYylcIj5cbiAgICAgICAgPHRoPlxuICAgICAgICAgICAge3sgd2Vlay5udW1iZXIgfX1cbiAgICAgICAgPC90aD5cbiAgICAgICAgPHRkIFtjbGFzcy5zZWxlY3RlZF09XCJkYXkgPT09IG51bGwgPyBmYWxzZSA6IGlzU2FtZURhdGUoc2VsZWN0ZWREYXRlJCB8IGFzeW5jLCBkYXkuZGF0ZSlcIiAqbmdGb3I9XCJsZXQgZGF5IG9mIHdlZWsuZGF5c1wiIChjbGljayk9XCJnb3RvKGRheSlcIj5cbiAgICAgICAgICAgIDxzcGFuICpuZ0lmPVwiZGF5ICE9PSBudWxsXCIgW2NsYXNzLnRleHQtbXV0ZWRdPVwiIWRheS5pc0luTW9udGhcIj57eyBkYXkuZGF5T2ZNb250aCB9fTwvc3Bhbj5cbiAgICAgICAgPC90ZD5cbiAgICA8L3RyPlxuPC90YWJsZT4iXX0=
105
+ //# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoiY2FsZW5kYXIuY29tcG9uZW50LmpzIiwic291cmNlUm9vdCI6IiIsInNvdXJjZXMiOlsiLi4vLi4vLi4vLi4vLi4vLi4vLi4vbGlicy9taW50cGxheWVyLW5nLWJvb3RzdHJhcC9zcmMvbGliL2NvbXBvbmVudHMvY2FsZW5kYXIvY2FsZW5kYXIuY29tcG9uZW50LnRzIiwiLi4vLi4vLi4vLi4vLi4vLi4vLi4vbGlicy9taW50cGxheWVyLW5nLWJvb3RzdHJhcC9zcmMvbGliL2NvbXBvbmVudHMvY2FsZW5kYXIvY2FsZW5kYXIuY29tcG9uZW50Lmh0bWwiXSwibmFtZXMiOltdLCJtYXBwaW5ncyI6IkFBQUEsT0FBTyxFQUFFLFNBQVMsRUFBRSxZQUFZLEVBQUUsS0FBSyxFQUFhLE1BQU0sRUFBRSxNQUFNLGVBQWUsQ0FBQztBQUNsRixPQUFPLEVBQUUsZUFBZSxFQUFFLE1BQU0sRUFBRSxHQUFHLEVBQWMsT0FBTyxFQUFFLElBQUksRUFBRSxTQUFTLEVBQUUsTUFBTSxNQUFNLENBQUM7QUFJMUYsT0FBTyxFQUFFLHNCQUFzQixFQUFFLE1BQU0sc0RBQXNELENBQUM7Ozs7OztBQU85RixNQUFNLE9BQU8sbUJBQW1CO0lBQzlCLFlBQW9CLG9CQUE0QztRQUE1Qyx5QkFBb0IsR0FBcEIsb0JBQW9CLENBQXdCO1FBbUN4RCxlQUFVLEdBQUcsSUFBSSxPQUFPLEVBQUUsQ0FBQztRQUluQyxzQkFBc0I7UUFDdEIsa0JBQWEsR0FBRyxJQUFJLGVBQWUsQ0FBTyxJQUFJLElBQUksRUFBRSxDQUFDLENBQUM7UUFDckMsdUJBQWtCLEdBQUcsSUFBSSxZQUFZLEVBQVEsQ0FBQztRQU8vRCxZQUFZO1FBQ1osc0JBQXNCO1FBQ3RCLGtCQUFhLEdBQUcsSUFBSSxlQUFlLENBQU8sSUFBSSxJQUFJLEVBQUUsQ0FBQyxDQUFDO1FBQ3JDLHVCQUFrQixHQUFHLElBQUksWUFBWSxFQUFRLENBQUM7UUFsRDdELElBQUksQ0FBQyxNQUFNLEdBQUcsSUFBSSxDQUFDLGFBQWE7YUFDN0IsSUFBSSxDQUFDLEdBQUcsQ0FBQyxDQUFDLEtBQUssRUFBRSxFQUFFLENBQUMsSUFBSSxDQUFDLG9CQUFvQixDQUFDLFFBQVEsQ0FBQyxLQUFLLENBQUMsQ0FBQyxDQUFDO2FBQy9ELElBQUksQ0FBQyxTQUFTLENBQUMsSUFBSSxDQUFDLFVBQVUsQ0FBQyxDQUFDLENBQUM7UUFDcEMsSUFBSSxDQUFDLFVBQVUsR0FBRyxJQUFJLENBQUMsTUFBTTthQUMxQixJQUFJLENBQUMsTUFBTSxDQUFDLENBQUMsS0FBSyxFQUFFLEVBQUUsQ0FBQyxLQUFLLENBQUMsTUFBTSxHQUFHLENBQUMsQ0FBQyxDQUFDO2FBQ3pDLElBQUksQ0FBQyxHQUFHLENBQUMsQ0FBQyxLQUFLLEVBQUUsRUFBRSxDQUFDLEtBQUssQ0FBQyxDQUFDLENBQUMsQ0FBQyxJQUFJLENBQUMsQ0FBQzthQUNuQyxJQUFJLENBQ0gsR0FBRyxDQUFDLENBQUMsSUFBSSxFQUFFLEVBQUU7WUFDWCxNQUFNLFFBQVEsR0FBRyxJQUFJLENBQUMsQ0FBQyxDQUFDLENBQUM7WUFDekIsSUFBSSxRQUFRLEVBQUU7Z0JBQ1osT0FBTyxJQUFJLENBQUMsR0FBRyxDQUFDLENBQUMsQ0FBQyxFQUFFLEVBQUU7b0JBQ3BCLE1BQU0sSUFBSSxHQUFHLElBQUksSUFBSSxDQUNuQixRQUFRLENBQUMsSUFBSSxDQUFDLFdBQVcsRUFBRSxFQUMzQixRQUFRLENBQUMsSUFBSSxDQUFDLFFBQVEsRUFBRSxFQUN4QixDQUFDLEVBQUUsVUFBVSxDQUNkLENBQUM7b0JBQ0YsT0FBZ0I7d0JBQ2QsS0FBSyxFQUFFLElBQUksQ0FBQyxjQUFjLENBQUMsU0FBUyxFQUFFLEVBQUUsT0FBTyxFQUFFLE9BQU8sRUFBRSxDQUFDO3dCQUMzRCxJQUFJLEVBQUUsSUFBSSxDQUFDLGNBQWMsQ0FBQyxTQUFTLEVBQUUsRUFBRSxPQUFPLEVBQUUsTUFBTSxFQUFFLENBQUM7cUJBQzFELENBQUM7Z0JBQ0osQ0FBQyxDQUFDLENBQUM7YUFDSjtpQkFBTTtnQkFDTCxPQUFPLEVBQUUsQ0FBQzthQUNYO1FBQ0gsQ0FBQyxDQUFDLENBQ0gsQ0FBQztRQUNKLElBQUksQ0FBQyxhQUFhLENBQUMsSUFBSSxDQUFDLFNBQVMsQ0FBQyxJQUFJLENBQUMsVUFBVSxDQUFDLENBQUMsQ0FBQyxTQUFTLENBQUMsQ0FBQyxJQUFJLEVBQUUsRUFBRTtZQUNyRSxJQUFJLENBQUMsa0JBQWtCLENBQUMsSUFBSSxDQUFDLElBQUksQ0FBQyxDQUFDO1FBQ3JDLENBQUMsQ0FBQyxDQUFDO1FBQ0gsSUFBSSxDQUFDLGFBQWEsQ0FBQyxJQUFJLENBQUMsU0FBUyxDQUFDLElBQUksQ0FBQyxVQUFVLENBQUMsQ0FBQyxDQUFDLFNBQVMsQ0FBQyxDQUFDLEtBQUssRUFBRSxFQUFFO1lBQ3RFLElBQUksQ0FBQyxrQkFBa0IsQ0FBQyxJQUFJLENBQUMsS0FBSyxDQUFDLENBQUM7UUFDdEMsQ0FBQyxDQUFDLENBQUM7SUFDTCxDQUFDO0lBU0QsSUFBSSxZQUFZO1FBQ2QsT0FBTyxJQUFJLENBQUMsYUFBYSxDQUFDLEtBQUssQ0FBQztJQUNsQyxDQUFDO0lBQ0QsSUFBYSxZQUFZLENBQUMsS0FBVztRQUNuQyxJQUFJLENBQUMsYUFBYSxDQUFDLElBQUksQ0FBQyxLQUFLLENBQUMsQ0FBQztJQUNqQyxDQUFDO0lBS0QsSUFBSSxZQUFZO1FBQ2QsT0FBTyxJQUFJLENBQUMsYUFBYSxDQUFDLEtBQUssQ0FBQztJQUNsQyxDQUFDO0lBQ0QsSUFBYSxZQUFZLENBQUMsS0FBVztRQUNuQyxJQUFJLENBQUMsYUFBYSxDQUFDLElBQUksQ0FBQyxLQUFLLENBQUMsQ0FBQztJQUNqQyxDQUFDO0lBQ0QsWUFBWTtJQUVaLFdBQVc7UUFDVCxJQUFJLENBQUMsVUFBVSxDQUFDLElBQUksQ0FBQyxJQUFJLENBQUMsQ0FBQztJQUM3QixDQUFDO0lBRUQsYUFBYTtRQUNYLElBQUksQ0FBQyxhQUFhLENBQUMsSUFBSSxDQUFDLElBQUksQ0FBQyxDQUFDLENBQUMsQ0FBQyxDQUFDLFNBQVMsQ0FBQyxDQUFDLEtBQUssRUFBRSxFQUFFO1lBQ25ELElBQUksQ0FBQyxhQUFhLENBQUMsSUFBSSxDQUNyQixJQUFJLElBQUksQ0FBQyxLQUFLLENBQUMsV0FBVyxFQUFFLEVBQUUsS0FBSyxDQUFDLFFBQVEsRUFBRSxHQUFHLENBQUMsRUFBRSxDQUFDLENBQUMsQ0FDdkQsQ0FBQztRQUNKLENBQUMsQ0FBQyxDQUFDO1FBRUgsT0FBTyxLQUFLLENBQUM7SUFDZixDQUFDO0lBRUQsU0FBUztRQUNQLElBQUksQ0FBQyxhQUFhLENBQUMsSUFBSSxDQUFDLElBQUksQ0FBQyxDQUFDLENBQUMsQ0FBQyxDQUFDLFNBQVMsQ0FBQyxDQUFDLEtBQUssRUFBRSxFQUFFO1lBQ25ELElBQUksQ0FBQyxhQUFhLENBQUMsSUFBSSxDQUNyQixJQUFJLElBQUksQ0FBQyxLQUFLLENBQUMsV0FBVyxFQUFFLEVBQUUsS0FBSyxDQUFDLFFBQVEsRUFBRSxHQUFHLENBQUMsRUFBRSxDQUFDLENBQUMsQ0FDdkQsQ0FBQztRQUNKLENBQUMsQ0FBQyxDQUFDO1FBRUgsT0FBTyxLQUFLLENBQUM7SUFDZixDQUFDO0lBRUQsVUFBVSxDQUFDLEtBQWtCLEVBQUUsS0FBa0I7UUFDL0MsSUFBSSxLQUFLLEtBQUssSUFBSSxJQUFJLEtBQUssS0FBSyxJQUFJO1lBQUUsT0FBTyxJQUFJLENBQUM7UUFDbEQsSUFBSSxLQUFLLEtBQUssSUFBSSxJQUFJLEtBQUssS0FBSyxJQUFJO1lBQUUsT0FBTyxLQUFLLENBQUM7UUFFbkQsT0FBTyxDQUNMLEtBQUssQ0FBQyxXQUFXLEVBQUUsS0FBSyxLQUFLLENBQUMsV0FBVyxFQUFFO1lBQzNDLEtBQUssQ0FBQyxRQUFRLEVBQUUsS0FBSyxLQUFLLENBQUMsUUFBUSxFQUFFO1lBQ3JDLEtBQUssQ0FBQyxPQUFPLEVBQUUsS0FBSyxLQUFLLENBQUMsT0FBTyxFQUFFLENBQ3BDLENBQUM7SUFDSixDQUFDO0lBRUQsSUFBSSxDQUFDLEdBQTBCO1FBQzdCLElBQUksR0FBRyxFQUFFO1lBQ1AsSUFBSSxDQUFDLGFBQWEsQ0FBQyxJQUFJLENBQUMsR0FBRyxDQUFDLElBQUksQ0FBQyxDQUFDO1NBQ25DO0lBQ0gsQ0FBQzs7Z0hBcEdVLG1CQUFtQjtvR0FBbkIsbUJBQW1CLDROQ1poQywyc0NBK0JROzJGRG5CSyxtQkFBbUI7a0JBTC9CLFNBQVM7K0JBQ0UsYUFBYTs2R0E4Q04sa0JBQWtCO3NCQUFsQyxNQUFNO2dCQUlNLFlBQVk7c0JBQXhCLEtBQUs7Z0JBTVcsa0JBQWtCO3NCQUFsQyxNQUFNO2dCQUlNLFlBQVk7c0JBQXhCLEtBQUsiLCJzb3VyY2VzQ29udGVudCI6WyJpbXBvcnQgeyBDb21wb25lbnQsIEV2ZW50RW1pdHRlciwgSW5wdXQsIE9uRGVzdHJveSwgT3V0cHV0IH0gZnJvbSAnQGFuZ3VsYXIvY29yZSc7XG5pbXBvcnQgeyBCZWhhdmlvclN1YmplY3QsIGZpbHRlciwgbWFwLCBPYnNlcnZhYmxlLCBTdWJqZWN0LCB0YWtlLCB0YWtlVW50aWwgfSBmcm9tICdyeGpzJztcbmltcG9ydCB7IERhdGVEYXlPZk1vbnRoIH0gZnJvbSAnLi4vLi4vaW50ZXJmYWNlcy9kYXRlLWRheS1vZi1tb250aCc7XG5pbXBvcnQgeyBXZWVrIH0gZnJvbSAnLi4vLi4vaW50ZXJmYWNlcy93ZWVrJztcbmltcG9ydCB7IFdlZWtEYXkgfSBmcm9tICcuLi8uLi9pbnRlcmZhY2VzL3dlZWtkYXknO1xuaW1wb3J0IHsgQnNDYWxlbmRhck1vbnRoU2VydmljZSB9IGZyb20gJy4uLy4uL3NlcnZpY2VzL2NhbGVuZGFyLW1vbnRoL2NhbGVuZGFyLW1vbnRoLnNlcnZpY2UnO1xuXG5AQ29tcG9uZW50KHtcbiAgc2VsZWN0b3I6ICdicy1jYWxlbmRhcicsXG4gIHRlbXBsYXRlVXJsOiAnLi9jYWxlbmRhci5jb21wb25lbnQuaHRtbCcsXG4gIHN0eWxlVXJsczogWycuL2NhbGVuZGFyLmNvbXBvbmVudC5zY3NzJ10sXG59KVxuZXhwb3J0IGNsYXNzIEJzQ2FsZW5kYXJDb21wb25lbnQgaW1wbGVtZW50cyBPbkRlc3Ryb3kge1xuICBjb25zdHJ1Y3Rvcihwcml2YXRlIGNhbGVuZGFyTW9udGhTZXJ2aWNlOiBCc0NhbGVuZGFyTW9udGhTZXJ2aWNlKSB7XG4gICAgdGhpcy53ZWVrcyQgPSB0aGlzLmN1cnJlbnRNb250aCRcbiAgICAgIC5waXBlKG1hcCgobW9udGgpID0+IHRoaXMuY2FsZW5kYXJNb250aFNlcnZpY2UuZ2V0V2Vla3MobW9udGgpKSlcbiAgICAgIC5waXBlKHRha2VVbnRpbCh0aGlzLmRlc3Ryb3llZCQpKTtcbiAgICB0aGlzLnNob3duRGF5cyQgPSB0aGlzLndlZWtzJFxuICAgICAgLnBpcGUoZmlsdGVyKCh3ZWVrcykgPT4gd2Vla3MubGVuZ3RoID4gMSkpXG4gICAgICAucGlwZShtYXAoKHdlZWtzKSA9PiB3ZWVrc1sxXS5kYXlzKSlcbiAgICAgIC5waXBlKFxuICAgICAgICBtYXAoKGRheXMpID0+IHtcbiAgICAgICAgICBjb25zdCBmaXJzdERheSA9IGRheXNbMF07XG4gICAgICAgICAgaWYgKGZpcnN0RGF5KSB7XG4gICAgICAgICAgICByZXR1cm4gZGF5cy5tYXAoKGQpID0+IHtcbiAgICAgICAgICAgICAgY29uc3QgZGF0ZSA9IG5ldyBEYXRlKFxuICAgICAgICAgICAgICAgIGZpcnN0RGF5LmRhdGUuZ2V0RnVsbFllYXIoKSxcbiAgICAgICAgICAgICAgICBmaXJzdERheS5kYXRlLmdldE1vbnRoKCksXG4gICAgICAgICAgICAgICAgZD8uZGF5T2ZNb250aFxuICAgICAgICAgICAgICApO1xuICAgICAgICAgICAgICByZXR1cm4gPFdlZWtEYXk+e1xuICAgICAgICAgICAgICAgIHNob3J0OiBkYXRlLnRvTG9jYWxlU3RyaW5nKCdkZWZhdWx0JywgeyB3ZWVrZGF5OiAnc2hvcnQnIH0pLFxuICAgICAgICAgICAgICAgIGxvbmc6IGRhdGUudG9Mb2NhbGVTdHJpbmcoJ2RlZmF1bHQnLCB7IHdlZWtkYXk6ICdsb25nJyB9KVxuICAgICAgICAgICAgICB9O1xuICAgICAgICAgICAgfSk7XG4gICAgICAgICAgfSBlbHNlIHtcbiAgICAgICAgICAgIHJldHVybiBbXTtcbiAgICAgICAgICB9XG4gICAgICAgIH0pXG4gICAgICApO1xuICAgIHRoaXMuc2VsZWN0ZWREYXRlJC5waXBlKHRha2VVbnRpbCh0aGlzLmRlc3Ryb3llZCQpKS5zdWJzY3JpYmUoKGRhdGUpID0+IHtcbiAgICAgIHRoaXMuc2VsZWN0ZWREYXRlQ2hhbmdlLmVtaXQoZGF0ZSk7XG4gICAgfSk7XG4gICAgdGhpcy5jdXJyZW50TW9udGgkLnBpcGUodGFrZVVudGlsKHRoaXMuZGVzdHJveWVkJCkpLnN1YnNjcmliZSgobW9udGgpID0+IHtcbiAgICAgIHRoaXMuY3VycmVudE1vbnRoQ2hhbmdlLmVtaXQobW9udGgpO1xuICAgIH0pO1xuICB9XG5cbiAgcHJpdmF0ZSBkZXN0cm95ZWQkID0gbmV3IFN1YmplY3QoKTtcbiAgd2Vla3MkOiBPYnNlcnZhYmxlPFdlZWtbXT47XG4gIHNob3duRGF5cyQ6IE9ic2VydmFibGU8V2Vla0RheVtdPjtcblxuICAvLyNyZWdpb24gQ3VycmVudE1vbnRoXG4gIGN1cnJlbnRNb250aCQgPSBuZXcgQmVoYXZpb3JTdWJqZWN0PERhdGU+KG5ldyBEYXRlKCkpO1xuICBAT3V0cHV0KCkgcHVibGljIGN1cnJlbnRNb250aENoYW5nZSA9IG5ldyBFdmVudEVtaXR0ZXI8RGF0ZT4oKTtcbiAgZ2V0IGN1cnJlbnRNb250aCgpIHtcbiAgICByZXR1cm4gdGhpcy5jdXJyZW50TW9udGgkLnZhbHVlO1xuICB9XG4gIEBJbnB1dCgpIHNldCBjdXJyZW50TW9udGgodmFsdWU6IERhdGUpIHtcbiAgICB0aGlzLmN1cnJlbnRNb250aCQubmV4dCh2YWx1ZSk7XG4gIH1cbiAgLy8jZW5kcmVnaW9uXG4gIC8vI3JlZ2lvbiBTZWxlY3RlZERhdGVcbiAgc2VsZWN0ZWREYXRlJCA9IG5ldyBCZWhhdmlvclN1YmplY3Q8RGF0ZT4obmV3IERhdGUoKSk7XG4gIEBPdXRwdXQoKSBwdWJsaWMgc2VsZWN0ZWREYXRlQ2hhbmdlID0gbmV3IEV2ZW50RW1pdHRlcjxEYXRlPigpO1xuICBnZXQgc2VsZWN0ZWREYXRlKCkge1xuICAgIHJldHVybiB0aGlzLnNlbGVjdGVkRGF0ZSQudmFsdWU7XG4gIH1cbiAgQElucHV0KCkgc2V0IHNlbGVjdGVkRGF0ZSh2YWx1ZTogRGF0ZSkge1xuICAgIHRoaXMuc2VsZWN0ZWREYXRlJC5uZXh0KHZhbHVlKTtcbiAgfVxuICAvLyNlbmRyZWdpb25cblxuICBuZ09uRGVzdHJveSgpIHtcbiAgICB0aGlzLmRlc3Ryb3llZCQubmV4dCh0cnVlKTtcbiAgfVxuXG4gIHByZXZpb3VzTW9udGgoKSB7XG4gICAgdGhpcy5jdXJyZW50TW9udGgkLnBpcGUodGFrZSgxKSkuc3Vic2NyaWJlKChtb250aCkgPT4ge1xuICAgICAgdGhpcy5jdXJyZW50TW9udGgkLm5leHQoXG4gICAgICAgIG5ldyBEYXRlKG1vbnRoLmdldEZ1bGxZZWFyKCksIG1vbnRoLmdldE1vbnRoKCkgLSAxLCAxKVxuICAgICAgKTtcbiAgICB9KTtcblxuICAgIHJldHVybiBmYWxzZTtcbiAgfVxuXG4gIG5leHRNb250aCgpIHtcbiAgICB0aGlzLmN1cnJlbnRNb250aCQucGlwZSh0YWtlKDEpKS5zdWJzY3JpYmUoKG1vbnRoKSA9PiB7XG4gICAgICB0aGlzLmN1cnJlbnRNb250aCQubmV4dChcbiAgICAgICAgbmV3IERhdGUobW9udGguZ2V0RnVsbFllYXIoKSwgbW9udGguZ2V0TW9udGgoKSArIDEsIDEpXG4gICAgICApO1xuICAgIH0pO1xuXG4gICAgcmV0dXJuIGZhbHNlO1xuICB9XG5cbiAgaXNTYW1lRGF0ZShkYXRlMTogRGF0ZSB8IG51bGwsIGRhdGUyOiBEYXRlIHwgbnVsbCkge1xuICAgIGlmIChkYXRlMSA9PT0gbnVsbCAmJiBkYXRlMiA9PT0gbnVsbCkgcmV0dXJuIHRydWU7XG4gICAgaWYgKGRhdGUxID09PSBudWxsIHx8IGRhdGUyID09PSBudWxsKSByZXR1cm4gZmFsc2U7XG5cbiAgICByZXR1cm4gKFxuICAgICAgZGF0ZTEuZ2V0RnVsbFllYXIoKSA9PT0gZGF0ZTIuZ2V0RnVsbFllYXIoKSAmJlxuICAgICAgZGF0ZTEuZ2V0TW9udGgoKSA9PT0gZGF0ZTIuZ2V0TW9udGgoKSAmJlxuICAgICAgZGF0ZTEuZ2V0RGF0ZSgpID09PSBkYXRlMi5nZXREYXRlKClcbiAgICApO1xuICB9XG5cbiAgZ290byhkYXk6IERhdGVEYXlPZk1vbnRoIHwgbnVsbCkge1xuICAgIGlmIChkYXkpIHtcbiAgICAgIHRoaXMuc2VsZWN0ZWREYXRlJC5uZXh0KGRheS5kYXRlKTtcbiAgICB9XG4gIH1cbn1cbiIsIjx0YWJsZSBjbGFzcz1cInRhYmxlIHctYXV0byBtYi0wXCI+XG4gICAgPHRyPlxuICAgICAgICA8dGQ+XG4gICAgICAgICAgICA8YnV0dG9uIGNsYXNzPVwiYnRuIGJ0bi1kZWZhdWx0XCIgKGNsaWNrKT1cInByZXZpb3VzTW9udGgoKVwiPlxuICAgICAgICAgICAgICAgIDxpIGNsYXNzPVwiYmkgYmktY2hldnJvbi1sZWZ0IGZ3LWJvbGRlclwiPjwvaT5cbiAgICAgICAgICAgIDwvYnV0dG9uPlxuICAgICAgICA8L3RkPlxuICAgICAgICA8dGQgY29sc3Bhbj1cIjZcIiBjbGFzcz1cImZ3LWJvbGRlclwiPlxuICAgICAgICAgICAge3sgY3VycmVudE1vbnRoJCB8IGFzeW5jIHwgbW9udGhOYW1lIHwgdWNGaXJzdCB9fVxuICAgICAgICAgICAge3sgKGN1cnJlbnRNb250aCQgfCBhc3luYyk/LmdldEZ1bGxZZWFyKCkgfX1cbiAgICAgICAgPC90ZD5cbiAgICAgICAgPHRkPlxuICAgICAgICAgICAgPGJ1dHRvbiBjbGFzcz1cImJ0biBidG4tZGVmYXVsdCBib3JkZXItYm90dG9tLTBcIiAoY2xpY2spPVwibmV4dE1vbnRoKClcIj5cbiAgICAgICAgICAgICAgICA8aSBjbGFzcz1cImJpIGJpLWNoZXZyb24tcmlnaHQgZnctYm9sZGVyXCI+PC9pPlxuICAgICAgICAgICAgPC9idXR0b24+XG4gICAgICAgIDwvdGQ+XG4gICAgPC90cj5cbiAgICA8dHI+XG4gICAgICAgIDx0aD48L3RoPlxuICAgICAgICA8dGggKm5nRm9yPVwibGV0IGRheU9mV2VlayBvZiBzaG93bkRheXMkIHwgYXN5bmNcIiBbdGl0bGVdPVwiZGF5T2ZXZWVrLmxvbmdcIj5cbiAgICAgICAgICAgIHt7IGRheU9mV2Vlay5zaG9ydCB9fVxuICAgICAgICA8L3RoPlxuICAgIDwvdHI+XG4gICAgPHRyICpuZ0Zvcj1cImxldCB3ZWVrIG9mICh3ZWVrcyQgfCBhc3luYylcIj5cbiAgICAgICAgPHRoPlxuICAgICAgICAgICAge3sgd2Vlay5udW1iZXIgfX1cbiAgICAgICAgPC90aD5cbiAgICAgICAgPHRkIFtjbGFzcy5zZWxlY3RlZF09XCJkYXkgPT09IG51bGwgPyBmYWxzZSA6IGlzU2FtZURhdGUoc2VsZWN0ZWREYXRlJCB8IGFzeW5jLCBkYXkuZGF0ZSlcIiAqbmdGb3I9XCJsZXQgZGF5IG9mIHdlZWsuZGF5c1wiIChjbGljayk9XCJnb3RvKGRheSlcIj5cbiAgICAgICAgICAgIDxzcGFuICpuZ0lmPVwiZGF5ICE9PSBudWxsXCIgW2NsYXNzLnRleHQtbXV0ZWRdPVwiIWRheS5pc0luTW9udGhcIj57eyBkYXkuZGF5T2ZNb250aCB9fTwvc3Bhbj5cbiAgICAgICAgPC90ZD5cbiAgICA8L3RyPlxuPC90YWJsZT4iXX0=
@@ -16,6 +16,7 @@ export * from './list-group';
16
16
  export * from './modal';
17
17
  export * from './multiselect';
18
18
  export * from './navbar';
19
+ export * from './offcanvas';
19
20
  export * from './pagination';
20
21
  export * from './progress-bar';
21
22
  export * from './rating';
@@ -27,4 +28,4 @@ export * from './timepicker';
27
28
  export * from './toggle-button';
28
29
  export * from './tooltip';
29
30
  export * from './typeahead';
30
- //# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoiaW5kZXguanMiLCJzb3VyY2VSb290IjoiIiwic291cmNlcyI6WyIuLi8uLi8uLi8uLi8uLi8uLi9saWJzL21pbnRwbGF5ZXItbmctYm9vdHN0cmFwL3NyYy9saWIvY29tcG9uZW50cy9pbmRleC50cyJdLCJuYW1lcyI6W10sIm1hcHBpbmdzIjoiQUFBQSxjQUFjLGFBQWEsQ0FBQztBQUM1QixjQUFjLFNBQVMsQ0FBQztBQUN4QixjQUFjLFlBQVksQ0FBQztBQUMzQixjQUFjLFFBQVEsQ0FBQztBQUN2QixjQUFjLFlBQVksQ0FBQztBQUMzQixjQUFjLGdCQUFnQixDQUFDO0FBQy9CLGNBQWMsZ0JBQWdCLENBQUM7QUFDL0IsY0FBYyxRQUFRLENBQUM7QUFDdkIsY0FBYyxhQUFhLENBQUM7QUFDNUIsY0FBYyxjQUFjLENBQUM7QUFDN0IsY0FBYyxZQUFZLENBQUM7QUFDM0IsY0FBYyxlQUFlLENBQUM7QUFDOUIsY0FBYyxPQUFPLENBQUM7QUFDdEIsY0FBYyxhQUFhLENBQUM7QUFDNUIsY0FBYyxjQUFjLENBQUM7QUFDN0IsY0FBYyxTQUFTLENBQUM7QUFDeEIsY0FBYyxlQUFlLENBQUM7QUFDOUIsY0FBYyxVQUFVLENBQUM7QUFDekIsY0FBYyxjQUFjLENBQUM7QUFDN0IsY0FBYyxnQkFBZ0IsQ0FBQztBQUMvQixjQUFjLFVBQVUsQ0FBQztBQUN6QixjQUFjLGFBQWEsQ0FBQztBQUM1QixjQUFjLFdBQVcsQ0FBQztBQUMxQixjQUFjLFlBQVksQ0FBQztBQUMzQixjQUFjLGVBQWUsQ0FBQztBQUM5QixjQUFjLGNBQWMsQ0FBQztBQUM3QixjQUFjLGlCQUFpQixDQUFDO0FBQ2hDLGNBQWMsV0FBVyxDQUFDO0FBQzFCLGNBQWMsYUFBYSxDQUFDIiwic291cmNlc0NvbnRlbnQiOlsiZXhwb3J0ICogZnJvbSAnLi9hY2NvcmRpb24nO1xuZXhwb3J0ICogZnJvbSAnLi9hbGVydCc7XG5leHBvcnQgKiBmcm9tICcuL2NhbGVuZGFyJztcbmV4cG9ydCAqIGZyb20gJy4vY2FyZCc7XG5leHBvcnQgKiBmcm9tICcuL2Nhcm91c2VsJztcbmV4cG9ydCAqIGZyb20gJy4vY29kZS1zbmlwcGV0JztcbmV4cG9ydCAqIGZyb20gJy4vY29udGV4dC1tZW51JztcbmV4cG9ydCAqIGZyb20gJy4vY29weSc7XG5leHBvcnQgKiBmcm9tICcuL2RhdGF0YWJsZSc7XG5leHBvcnQgKiBmcm9tICcuL2RhdGVwaWNrZXInO1xuZXhwb3J0ICogZnJvbSAnLi9kcm9wZG93bic7XG5leHBvcnQgKiBmcm9tICcuL2ZpbGUtdXBsb2FkJztcbmV4cG9ydCAqIGZyb20gJy4vZm9yJztcbmV4cG9ydCAqIGZyb20gJy4vc2NoZWR1bGVyJztcbmV4cG9ydCAqIGZyb20gJy4vbGlzdC1ncm91cCc7XG5leHBvcnQgKiBmcm9tICcuL21vZGFsJztcbmV4cG9ydCAqIGZyb20gJy4vbXVsdGlzZWxlY3QnO1xuZXhwb3J0ICogZnJvbSAnLi9uYXZiYXInO1xuZXhwb3J0ICogZnJvbSAnLi9wYWdpbmF0aW9uJztcbmV4cG9ydCAqIGZyb20gJy4vcHJvZ3Jlc3MtYmFyJztcbmV4cG9ydCAqIGZyb20gJy4vcmF0aW5nJztcbmV4cG9ydCAqIGZyb20gJy4vc2Nyb2xsc3B5JztcbmV4cG9ydCAqIGZyb20gJy4vc2VsZWN0Mic7XG5leHBvcnQgKiBmcm9tICcuL3NuYWNrYmFyJztcbmV4cG9ydCAqIGZyb20gJy4vdGFiLWNvbnRyb2wnO1xuZXhwb3J0ICogZnJvbSAnLi90aW1lcGlja2VyJztcbmV4cG9ydCAqIGZyb20gJy4vdG9nZ2xlLWJ1dHRvbic7XG5leHBvcnQgKiBmcm9tICcuL3Rvb2x0aXAnO1xuZXhwb3J0ICogZnJvbSAnLi90eXBlYWhlYWQnOyJdfQ==
31
+ //# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoiaW5kZXguanMiLCJzb3VyY2VSb290IjoiIiwic291cmNlcyI6WyIuLi8uLi8uLi8uLi8uLi8uLi9saWJzL21pbnRwbGF5ZXItbmctYm9vdHN0cmFwL3NyYy9saWIvY29tcG9uZW50cy9pbmRleC50cyJdLCJuYW1lcyI6W10sIm1hcHBpbmdzIjoiQUFBQSxjQUFjLGFBQWEsQ0FBQztBQUM1QixjQUFjLFNBQVMsQ0FBQztBQUN4QixjQUFjLFlBQVksQ0FBQztBQUMzQixjQUFjLFFBQVEsQ0FBQztBQUN2QixjQUFjLFlBQVksQ0FBQztBQUMzQixjQUFjLGdCQUFnQixDQUFDO0FBQy9CLGNBQWMsZ0JBQWdCLENBQUM7QUFDL0IsY0FBYyxRQUFRLENBQUM7QUFDdkIsY0FBYyxhQUFhLENBQUM7QUFDNUIsY0FBYyxjQUFjLENBQUM7QUFDN0IsY0FBYyxZQUFZLENBQUM7QUFDM0IsY0FBYyxlQUFlLENBQUM7QUFDOUIsY0FBYyxPQUFPLENBQUM7QUFDdEIsY0FBYyxhQUFhLENBQUM7QUFDNUIsY0FBYyxjQUFjLENBQUM7QUFDN0IsY0FBYyxTQUFTLENBQUM7QUFDeEIsY0FBYyxlQUFlLENBQUM7QUFDOUIsY0FBYyxVQUFVLENBQUM7QUFDekIsY0FBYyxhQUFhLENBQUM7QUFDNUIsY0FBYyxjQUFjLENBQUM7QUFDN0IsY0FBYyxnQkFBZ0IsQ0FBQztBQUMvQixjQUFjLFVBQVUsQ0FBQztBQUN6QixjQUFjLGFBQWEsQ0FBQztBQUM1QixjQUFjLFdBQVcsQ0FBQztBQUMxQixjQUFjLFlBQVksQ0FBQztBQUMzQixjQUFjLGVBQWUsQ0FBQztBQUM5QixjQUFjLGNBQWMsQ0FBQztBQUM3QixjQUFjLGlCQUFpQixDQUFDO0FBQ2hDLGNBQWMsV0FBVyxDQUFDO0FBQzFCLGNBQWMsYUFBYSxDQUFDIiwic291cmNlc0NvbnRlbnQiOlsiZXhwb3J0ICogZnJvbSAnLi9hY2NvcmRpb24nO1xuZXhwb3J0ICogZnJvbSAnLi9hbGVydCc7XG5leHBvcnQgKiBmcm9tICcuL2NhbGVuZGFyJztcbmV4cG9ydCAqIGZyb20gJy4vY2FyZCc7XG5leHBvcnQgKiBmcm9tICcuL2Nhcm91c2VsJztcbmV4cG9ydCAqIGZyb20gJy4vY29kZS1zbmlwcGV0JztcbmV4cG9ydCAqIGZyb20gJy4vY29udGV4dC1tZW51JztcbmV4cG9ydCAqIGZyb20gJy4vY29weSc7XG5leHBvcnQgKiBmcm9tICcuL2RhdGF0YWJsZSc7XG5leHBvcnQgKiBmcm9tICcuL2RhdGVwaWNrZXInO1xuZXhwb3J0ICogZnJvbSAnLi9kcm9wZG93bic7XG5leHBvcnQgKiBmcm9tICcuL2ZpbGUtdXBsb2FkJztcbmV4cG9ydCAqIGZyb20gJy4vZm9yJztcbmV4cG9ydCAqIGZyb20gJy4vc2NoZWR1bGVyJztcbmV4cG9ydCAqIGZyb20gJy4vbGlzdC1ncm91cCc7XG5leHBvcnQgKiBmcm9tICcuL21vZGFsJztcbmV4cG9ydCAqIGZyb20gJy4vbXVsdGlzZWxlY3QnO1xuZXhwb3J0ICogZnJvbSAnLi9uYXZiYXInO1xuZXhwb3J0ICogZnJvbSAnLi9vZmZjYW52YXMnO1xuZXhwb3J0ICogZnJvbSAnLi9wYWdpbmF0aW9uJztcbmV4cG9ydCAqIGZyb20gJy4vcHJvZ3Jlc3MtYmFyJztcbmV4cG9ydCAqIGZyb20gJy4vcmF0aW5nJztcbmV4cG9ydCAqIGZyb20gJy4vc2Nyb2xsc3B5JztcbmV4cG9ydCAqIGZyb20gJy4vc2VsZWN0Mic7XG5leHBvcnQgKiBmcm9tICcuL3NuYWNrYmFyJztcbmV4cG9ydCAqIGZyb20gJy4vdGFiLWNvbnRyb2wnO1xuZXhwb3J0ICogZnJvbSAnLi90aW1lcGlja2VyJztcbmV4cG9ydCAqIGZyb20gJy4vdG9nZ2xlLWJ1dHRvbic7XG5leHBvcnQgKiBmcm9tICcuL3Rvb2x0aXAnO1xuZXhwb3J0ICogZnJvbSAnLi90eXBlYWhlYWQnOyJdfQ==
@@ -0,0 +1,4 @@
1
+ export * from './offcanvas/offcanvas.component';
2
+ export * from './offcanvas-body/offcanvas-body.component';
3
+ export * from './offcanvas-header/offcanvas-header.component';
4
+ //# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoiaW5kZXguanMiLCJzb3VyY2VSb290IjoiIiwic291cmNlcyI6WyIuLi8uLi8uLi8uLi8uLi8uLi8uLi8uLi9saWJzL21pbnRwbGF5ZXItbmctYm9vdHN0cmFwL3NyYy9saWIvY29tcG9uZW50cy9vZmZjYW52YXMvY29tcG9uZW50cy9pbmRleC50cyJdLCJuYW1lcyI6W10sIm1hcHBpbmdzIjoiQUFBQSxjQUFjLGlDQUFpQyxDQUFDO0FBQ2hELGNBQWMsMkNBQTJDLENBQUM7QUFDMUQsY0FBYywrQ0FBK0MsQ0FBQyIsInNvdXJjZXNDb250ZW50IjpbImV4cG9ydCAqIGZyb20gJy4vb2ZmY2FudmFzL29mZmNhbnZhcy5jb21wb25lbnQnO1xuZXhwb3J0ICogZnJvbSAnLi9vZmZjYW52YXMtYm9keS9vZmZjYW52YXMtYm9keS5jb21wb25lbnQnO1xuZXhwb3J0ICogZnJvbSAnLi9vZmZjYW52YXMtaGVhZGVyL29mZmNhbnZhcy1oZWFkZXIuY29tcG9uZW50JzsiXX0=
@@ -0,0 +1,62 @@
1
+ import { Component, HostBinding, Inject, Input, TemplateRef } from '@angular/core';
2
+ import { BehaviorSubject, map } from 'rxjs';
3
+ import { OFFCANVAS_CONTENT } from '../../providers/offcanvas-content.provider';
4
+ import * as i0 from "@angular/core";
5
+ import * as i1 from "@angular/common";
6
+ export class BsOffcanvasComponent {
7
+ constructor(content) {
8
+ this.size = null;
9
+ this.displayBlock = true;
10
+ this.instance = null;
11
+ this.show$ = new BehaviorSubject(false);
12
+ this.position$ = new BehaviorSubject('bottom');
13
+ this.content = content;
14
+ this.offcanvasClass$ = this.position$
15
+ .pipe(map((pos) => `offcanvas-${pos}`));
16
+ this.offcanvasHeight100$ = this.position$
17
+ .pipe(map((pos) => {
18
+ switch (this.position) {
19
+ case 'top':
20
+ case 'bottom':
21
+ return false;
22
+ default:
23
+ return true;
24
+ }
25
+ }));
26
+ }
27
+ get width100() {
28
+ switch (this.position) {
29
+ case 'top':
30
+ case 'bottom':
31
+ return true;
32
+ default:
33
+ return false;
34
+ }
35
+ }
36
+ ;
37
+ //#region Position
38
+ set position(value) {
39
+ this.position$.next(value);
40
+ }
41
+ get position() {
42
+ return this.position$.value;
43
+ }
44
+ }
45
+ BsOffcanvasComponent.ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "13.2.0", ngImport: i0, type: BsOffcanvasComponent, deps: [{ token: OFFCANVAS_CONTENT }], target: i0.ɵɵFactoryTarget.Component });
46
+ BsOffcanvasComponent.ɵcmp = i0.ɵɵngDeclareComponent({ minVersion: "12.0.0", version: "13.2.0", type: BsOffcanvasComponent, selector: "bs-offcanvas", inputs: { size: "size" }, host: { properties: { "class.d-block": "this.displayBlock", "class.w-100": "this.width100" } }, ngImport: i0, template: "<div class=\"offcanvas\" [class]=\"offcanvasClass$ | async\"\n [class.show]=\"show$ | async\"\n [class.h-100]=\"offcanvasHeight100$ | async\"\n [style.height.px]=\"size\">\n <ng-container *ngTemplateOutlet=\"content; context: { $implicit: this }\" ></ng-container>\n</div>", styles: [".offcanvas{position:relative;visibility:unset}.offcanvas.offcanvas-bottom,.offcanvas.offcanvas-top{height:auto}\n"], directives: [{ type: i1.NgTemplateOutlet, selector: "[ngTemplateOutlet]", inputs: ["ngTemplateOutletContext", "ngTemplateOutlet"] }], pipes: { "async": i1.AsyncPipe } });
47
+ i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "13.2.0", ngImport: i0, type: BsOffcanvasComponent, decorators: [{
48
+ type: Component,
49
+ args: [{ selector: 'bs-offcanvas', template: "<div class=\"offcanvas\" [class]=\"offcanvasClass$ | async\"\n [class.show]=\"show$ | async\"\n [class.h-100]=\"offcanvasHeight100$ | async\"\n [style.height.px]=\"size\">\n <ng-container *ngTemplateOutlet=\"content; context: { $implicit: this }\" ></ng-container>\n</div>", styles: [".offcanvas{position:relative;visibility:unset}.offcanvas.offcanvas-bottom,.offcanvas.offcanvas-top{height:auto}\n"] }]
50
+ }], ctorParameters: function () { return [{ type: i0.TemplateRef, decorators: [{
51
+ type: Inject,
52
+ args: [OFFCANVAS_CONTENT]
53
+ }] }]; }, propDecorators: { size: [{
54
+ type: Input
55
+ }], displayBlock: [{
56
+ type: HostBinding,
57
+ args: ['class.d-block']
58
+ }], width100: [{
59
+ type: HostBinding,
60
+ args: ['class.w-100']
61
+ }] } });
62
+ //# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoib2ZmY2FudmFzLmNvbXBvbmVudC5qcyIsInNvdXJjZVJvb3QiOiIiLCJzb3VyY2VzIjpbIi4uLy4uLy4uLy4uLy4uLy4uLy4uLy4uLy4uL2xpYnMvbWludHBsYXllci1uZy1ib290c3RyYXAvc3JjL2xpYi9jb21wb25lbnRzL29mZmNhbnZhcy9jb21wb25lbnRzL29mZmNhbnZhcy9vZmZjYW52YXMuY29tcG9uZW50LnRzIiwiLi4vLi4vLi4vLi4vLi4vLi4vLi4vLi4vLi4vbGlicy9taW50cGxheWVyLW5nLWJvb3RzdHJhcC9zcmMvbGliL2NvbXBvbmVudHMvb2ZmY2FudmFzL2NvbXBvbmVudHMvb2ZmY2FudmFzL29mZmNhbnZhcy5jb21wb25lbnQuaHRtbCJdLCJuYW1lcyI6W10sIm1hcHBpbmdzIjoiQUFBQSxPQUFPLEVBQUUsU0FBUyxFQUFFLFdBQVcsRUFBRSxNQUFNLEVBQUUsS0FBSyxFQUFFLFdBQVcsRUFBRSxNQUFNLGVBQWUsQ0FBQztBQUNuRixPQUFPLEVBQUUsZUFBZSxFQUFFLEdBQUcsRUFBYyxNQUFNLE1BQU0sQ0FBQztBQUd4RCxPQUFPLEVBQUUsaUJBQWlCLEVBQUUsTUFBTSw0Q0FBNEMsQ0FBQzs7O0FBTy9FLE1BQU0sT0FBTyxvQkFBb0I7SUFFL0IsWUFBdUMsT0FBeUI7UUFnQmhELFNBQUksR0FBa0IsSUFBSSxDQUFDO1FBQ2IsaUJBQVksR0FBRyxJQUFJLENBQUM7UUFZMUMsYUFBUSxHQUFrQyxJQUFJLENBQUM7UUFFdkQsVUFBSyxHQUFHLElBQUksZUFBZSxDQUFVLEtBQUssQ0FBQyxDQUFDO1FBQzVDLGNBQVMsR0FBRyxJQUFJLGVBQWUsQ0FBb0IsUUFBUSxDQUFDLENBQUM7UUEvQjNELElBQUksQ0FBQyxPQUFPLEdBQUcsT0FBTyxDQUFDO1FBQ3ZCLElBQUksQ0FBQyxlQUFlLEdBQUcsSUFBSSxDQUFDLFNBQVM7YUFDbEMsSUFBSSxDQUFDLEdBQUcsQ0FBQyxDQUFDLEdBQUcsRUFBRSxFQUFFLENBQUMsYUFBYSxHQUFHLEVBQUUsQ0FBQyxDQUFDLENBQUM7UUFDMUMsSUFBSSxDQUFDLG1CQUFtQixHQUFHLElBQUksQ0FBQyxTQUFTO2FBQ3RDLElBQUksQ0FBQyxHQUFHLENBQUMsQ0FBQyxHQUFHLEVBQUUsRUFBRTtZQUNoQixRQUFRLElBQUksQ0FBQyxRQUFRLEVBQUU7Z0JBQ3JCLEtBQUssS0FBSyxDQUFDO2dCQUNYLEtBQUssUUFBUTtvQkFDWCxPQUFPLEtBQUssQ0FBQztnQkFDZjtvQkFDRSxPQUFPLElBQUksQ0FBQzthQUNmO1FBQ0gsQ0FBQyxDQUFDLENBQUMsQ0FBQztJQUNSLENBQUM7SUFJRCxJQUFnQyxRQUFRO1FBQ3RDLFFBQVEsSUFBSSxDQUFDLFFBQVEsRUFBRTtZQUNyQixLQUFLLEtBQUssQ0FBQztZQUNYLEtBQUssUUFBUTtnQkFDWCxPQUFPLElBQUksQ0FBQztZQUNkO2dCQUNFLE9BQU8sS0FBSyxDQUFDO1NBQ2hCO0lBQ0gsQ0FBQztJQUFBLENBQUM7SUFVRixrQkFBa0I7SUFDbEIsSUFBVyxRQUFRLENBQUMsS0FBd0I7UUFDMUMsSUFBSSxDQUFDLFNBQVMsQ0FBQyxJQUFJLENBQUMsS0FBSyxDQUFDLENBQUM7SUFDN0IsQ0FBQztJQUNELElBQVcsUUFBUTtRQUNqQixPQUFPLElBQUksQ0FBQyxTQUFTLENBQUMsS0FBSyxDQUFDO0lBQzlCLENBQUM7O2lIQTVDVSxvQkFBb0Isa0JBRVgsaUJBQWlCO3FHQUYxQixvQkFBb0IsOEtDWGpDLGlTQUtNOzJGRE1PLG9CQUFvQjtrQkFMaEMsU0FBUzsrQkFDRSxjQUFjOzswQkFNWCxNQUFNOzJCQUFDLGlCQUFpQjs0Q0FnQnJCLElBQUk7c0JBQW5CLEtBQUs7Z0JBQ3dCLFlBQVk7c0JBQXpDLFdBQVc7dUJBQUMsZUFBZTtnQkFDSSxRQUFRO3NCQUF2QyxXQUFXO3VCQUFDLGFBQWEiLCJzb3VyY2VzQ29udGVudCI6WyJpbXBvcnQgeyBDb21wb25lbnQsIEhvc3RCaW5kaW5nLCBJbmplY3QsIElucHV0LCBUZW1wbGF0ZVJlZiB9IGZyb20gJ0Bhbmd1bGFyL2NvcmUnO1xuaW1wb3J0IHsgQmVoYXZpb3JTdWJqZWN0LCBtYXAsIE9ic2VydmFibGUgfSBmcm9tICdyeGpzJztcbmltcG9ydCB7IE9mZmNhbnZhc1Bvc2l0aW9uIH0gZnJvbSAnLi4vLi4vdHlwZXMvcG9zaXRpb24nO1xuaW1wb3J0IHsgT2ZmY2FudmFzQW5pbWF0aW9uTWV0YSB9IGZyb20gJy4uLy4uL2ludGVyZmFjZXMnO1xuaW1wb3J0IHsgT0ZGQ0FOVkFTX0NPTlRFTlQgfSBmcm9tICcuLi8uLi9wcm92aWRlcnMvb2ZmY2FudmFzLWNvbnRlbnQucHJvdmlkZXInO1xuXG5AQ29tcG9uZW50KHtcbiAgc2VsZWN0b3I6ICdicy1vZmZjYW52YXMnLFxuICB0ZW1wbGF0ZVVybDogJy4vb2ZmY2FudmFzLmNvbXBvbmVudC5odG1sJyxcbiAgc3R5bGVVcmxzOiBbJy4vb2ZmY2FudmFzLmNvbXBvbmVudC5zY3NzJ10sXG59KVxuZXhwb3J0IGNsYXNzIEJzT2ZmY2FudmFzQ29tcG9uZW50IHtcblxuICBjb25zdHJ1Y3RvcihASW5qZWN0KE9GRkNBTlZBU19DT05URU5UKSBjb250ZW50OiBUZW1wbGF0ZVJlZjxhbnk+KSB7XG4gICAgdGhpcy5jb250ZW50ID0gY29udGVudDtcbiAgICB0aGlzLm9mZmNhbnZhc0NsYXNzJCA9IHRoaXMucG9zaXRpb24kXG4gICAgICAucGlwZShtYXAoKHBvcykgPT4gYG9mZmNhbnZhcy0ke3Bvc31gKSk7XG4gICAgdGhpcy5vZmZjYW52YXNIZWlnaHQxMDAkID0gdGhpcy5wb3NpdGlvbiRcbiAgICAgIC5waXBlKG1hcCgocG9zKSA9PiB7XG4gICAgICAgIHN3aXRjaCAodGhpcy5wb3NpdGlvbikge1xuICAgICAgICAgIGNhc2UgJ3RvcCc6XG4gICAgICAgICAgY2FzZSAnYm90dG9tJzpcbiAgICAgICAgICAgIHJldHVybiBmYWxzZTtcbiAgICAgICAgICBkZWZhdWx0OlxuICAgICAgICAgICAgcmV0dXJuIHRydWU7XG4gICAgICAgIH1cbiAgICAgIH0pKTtcbiAgfVxuXG4gIEBJbnB1dCgpIHB1YmxpYyBzaXplOiBudW1iZXIgfCBudWxsID0gbnVsbDtcbiAgQEhvc3RCaW5kaW5nKCdjbGFzcy5kLWJsb2NrJykgZGlzcGxheUJsb2NrID0gdHJ1ZTtcbiAgQEhvc3RCaW5kaW5nKCdjbGFzcy53LTEwMCcpIGdldCB3aWR0aDEwMCgpIHtcbiAgICBzd2l0Y2ggKHRoaXMucG9zaXRpb24pIHtcbiAgICAgIGNhc2UgJ3RvcCc6XG4gICAgICBjYXNlICdib3R0b20nOlxuICAgICAgICByZXR1cm4gdHJ1ZTtcbiAgICAgIGRlZmF1bHQ6XG4gICAgICAgIHJldHVybiBmYWxzZTtcbiAgICB9XG4gIH07XG4gIFxuICBjb250ZW50OiBUZW1wbGF0ZVJlZjxhbnk+O1xuICBwcml2YXRlIGluc3RhbmNlOiBPZmZjYW52YXNBbmltYXRpb25NZXRhIHwgbnVsbCA9IG51bGw7XG4gIFxuICBzaG93JCA9IG5ldyBCZWhhdmlvclN1YmplY3Q8Ym9vbGVhbj4oZmFsc2UpO1xuICBwb3NpdGlvbiQgPSBuZXcgQmVoYXZpb3JTdWJqZWN0PE9mZmNhbnZhc1Bvc2l0aW9uPignYm90dG9tJyk7XG4gIG9mZmNhbnZhc0NsYXNzJDogT2JzZXJ2YWJsZTxzdHJpbmc+O1xuICBvZmZjYW52YXNIZWlnaHQxMDAkOiBPYnNlcnZhYmxlPGJvb2xlYW4+O1xuXG4gIC8vI3JlZ2lvbiBQb3NpdGlvblxuICBwdWJsaWMgc2V0IHBvc2l0aW9uKHZhbHVlOiBPZmZjYW52YXNQb3NpdGlvbikge1xuICAgIHRoaXMucG9zaXRpb24kLm5leHQodmFsdWUpO1xuICB9XG4gIHB1YmxpYyBnZXQgcG9zaXRpb24oKSB7XG4gICAgcmV0dXJuIHRoaXMucG9zaXRpb24kLnZhbHVlO1xuICB9XG4gIC8vI2VuZHJlZ2lvblxuXG59XG4iLCI8ZGl2IGNsYXNzPVwib2ZmY2FudmFzXCIgW2NsYXNzXT1cIm9mZmNhbnZhc0NsYXNzJCB8IGFzeW5jXCJcbiAgICAgW2NsYXNzLnNob3ddPVwic2hvdyQgfCBhc3luY1wiXG4gICAgIFtjbGFzcy5oLTEwMF09XCJvZmZjYW52YXNIZWlnaHQxMDAkIHwgYXN5bmNcIlxuICAgICBbc3R5bGUuaGVpZ2h0LnB4XT1cInNpemVcIj5cbiAgICA8bmctY29udGFpbmVyICpuZ1RlbXBsYXRlT3V0bGV0PVwiY29udGVudDsgY29udGV4dDogeyAkaW1wbGljaXQ6IHRoaXMgfVwiID48L25nLWNvbnRhaW5lcj5cbjwvZGl2PiJdfQ==
@@ -0,0 +1,14 @@
1
+ import { Component } from '@angular/core';
2
+ import * as i0 from "@angular/core";
3
+ export class BsOffcanvasBodyComponent {
4
+ constructor() { }
5
+ ngOnInit() {
6
+ }
7
+ }
8
+ BsOffcanvasBodyComponent.ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "13.2.0", ngImport: i0, type: BsOffcanvasBodyComponent, deps: [], target: i0.ɵɵFactoryTarget.Component });
9
+ BsOffcanvasBodyComponent.ɵcmp = i0.ɵɵngDeclareComponent({ minVersion: "12.0.0", version: "13.2.0", type: BsOffcanvasBodyComponent, selector: "bs-offcanvas-body", ngImport: i0, template: "<div class=\"offcanvas-body small\">\n <ng-content></ng-content>\n</div>", styles: [""] });
10
+ i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "13.2.0", ngImport: i0, type: BsOffcanvasBodyComponent, decorators: [{
11
+ type: Component,
12
+ args: [{ selector: 'bs-offcanvas-body', template: "<div class=\"offcanvas-body small\">\n <ng-content></ng-content>\n</div>", styles: [""] }]
13
+ }], ctorParameters: function () { return []; } });
14
+ //# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoib2ZmY2FudmFzLWJvZHkuY29tcG9uZW50LmpzIiwic291cmNlUm9vdCI6IiIsInNvdXJjZXMiOlsiLi4vLi4vLi4vLi4vLi4vLi4vLi4vLi4vLi4vbGlicy9taW50cGxheWVyLW5nLWJvb3RzdHJhcC9zcmMvbGliL2NvbXBvbmVudHMvb2ZmY2FudmFzL2NvbXBvbmVudHMvb2ZmY2FudmFzLWJvZHkvb2ZmY2FudmFzLWJvZHkuY29tcG9uZW50LnRzIiwiLi4vLi4vLi4vLi4vLi4vLi4vLi4vLi4vLi4vbGlicy9taW50cGxheWVyLW5nLWJvb3RzdHJhcC9zcmMvbGliL2NvbXBvbmVudHMvb2ZmY2FudmFzL2NvbXBvbmVudHMvb2ZmY2FudmFzLWJvZHkvb2ZmY2FudmFzLWJvZHkuY29tcG9uZW50Lmh0bWwiXSwibmFtZXMiOltdLCJtYXBwaW5ncyI6IkFBQUEsT0FBTyxFQUFFLFNBQVMsRUFBVSxNQUFNLGVBQWUsQ0FBQzs7QUFPbEQsTUFBTSxPQUFPLHdCQUF3QjtJQUVuQyxnQkFBZ0IsQ0FBQztJQUVqQixRQUFRO0lBQ1IsQ0FBQzs7cUhBTFUsd0JBQXdCO3lHQUF4Qix3QkFBd0IseURDUHJDLDZFQUVNOzJGREtPLHdCQUF3QjtrQkFMcEMsU0FBUzsrQkFDRSxtQkFBbUIiLCJzb3VyY2VzQ29udGVudCI6WyJpbXBvcnQgeyBDb21wb25lbnQsIE9uSW5pdCB9IGZyb20gJ0Bhbmd1bGFyL2NvcmUnO1xuXG5AQ29tcG9uZW50KHtcbiAgc2VsZWN0b3I6ICdicy1vZmZjYW52YXMtYm9keScsXG4gIHRlbXBsYXRlVXJsOiAnLi9vZmZjYW52YXMtYm9keS5jb21wb25lbnQuaHRtbCcsXG4gIHN0eWxlVXJsczogWycuL29mZmNhbnZhcy1ib2R5LmNvbXBvbmVudC5zY3NzJ11cbn0pXG5leHBvcnQgY2xhc3MgQnNPZmZjYW52YXNCb2R5Q29tcG9uZW50IGltcGxlbWVudHMgT25Jbml0IHtcblxuICBjb25zdHJ1Y3RvcigpIHsgfVxuXG4gIG5nT25Jbml0KCk6IHZvaWQge1xuICB9XG5cbn1cbiIsIjxkaXYgY2xhc3M9XCJvZmZjYW52YXMtYm9keSBzbWFsbFwiPlxuICAgIDxuZy1jb250ZW50PjwvbmctY29udGVudD5cbjwvZGl2PiJdfQ==
@@ -0,0 +1,14 @@
1
+ import { Component } from '@angular/core';
2
+ import * as i0 from "@angular/core";
3
+ export class BsOffcanvasHeaderComponent {
4
+ constructor() { }
5
+ ngOnInit() {
6
+ }
7
+ }
8
+ BsOffcanvasHeaderComponent.ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "13.2.0", ngImport: i0, type: BsOffcanvasHeaderComponent, deps: [], target: i0.ɵɵFactoryTarget.Component });
9
+ BsOffcanvasHeaderComponent.ɵcmp = i0.ɵɵngDeclareComponent({ minVersion: "12.0.0", version: "13.2.0", type: BsOffcanvasHeaderComponent, selector: "bs-offcanvas-header", ngImport: i0, template: "<div class=\"offcanvas-header\">\n <ng-content></ng-content>\n</div>\n", styles: [""] });
10
+ i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "13.2.0", ngImport: i0, type: BsOffcanvasHeaderComponent, decorators: [{
11
+ type: Component,
12
+ args: [{ selector: 'bs-offcanvas-header', template: "<div class=\"offcanvas-header\">\n <ng-content></ng-content>\n</div>\n", styles: [""] }]
13
+ }], ctorParameters: function () { return []; } });
14
+ //# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoib2ZmY2FudmFzLWhlYWRlci5jb21wb25lbnQuanMiLCJzb3VyY2VSb290IjoiIiwic291cmNlcyI6WyIuLi8uLi8uLi8uLi8uLi8uLi8uLi8uLi8uLi9saWJzL21pbnRwbGF5ZXItbmctYm9vdHN0cmFwL3NyYy9saWIvY29tcG9uZW50cy9vZmZjYW52YXMvY29tcG9uZW50cy9vZmZjYW52YXMtaGVhZGVyL29mZmNhbnZhcy1oZWFkZXIuY29tcG9uZW50LnRzIiwiLi4vLi4vLi4vLi4vLi4vLi4vLi4vLi4vLi4vbGlicy9taW50cGxheWVyLW5nLWJvb3RzdHJhcC9zcmMvbGliL2NvbXBvbmVudHMvb2ZmY2FudmFzL2NvbXBvbmVudHMvb2ZmY2FudmFzLWhlYWRlci9vZmZjYW52YXMtaGVhZGVyLmNvbXBvbmVudC5odG1sIl0sIm5hbWVzIjpbXSwibWFwcGluZ3MiOiJBQUFBLE9BQU8sRUFBRSxTQUFTLEVBQVUsTUFBTSxlQUFlLENBQUM7O0FBT2xELE1BQU0sT0FBTywwQkFBMEI7SUFFckMsZ0JBQWdCLENBQUM7SUFFakIsUUFBUTtJQUNSLENBQUM7O3VIQUxVLDBCQUEwQjsyR0FBMUIsMEJBQTBCLDJEQ1B2QywyRUFHQTsyRkRJYSwwQkFBMEI7a0JBTHRDLFNBQVM7K0JBQ0UscUJBQXFCIiwic291cmNlc0NvbnRlbnQiOlsiaW1wb3J0IHsgQ29tcG9uZW50LCBPbkluaXQgfSBmcm9tICdAYW5ndWxhci9jb3JlJztcblxuQENvbXBvbmVudCh7XG4gIHNlbGVjdG9yOiAnYnMtb2ZmY2FudmFzLWhlYWRlcicsXG4gIHRlbXBsYXRlVXJsOiAnLi9vZmZjYW52YXMtaGVhZGVyLmNvbXBvbmVudC5odG1sJyxcbiAgc3R5bGVVcmxzOiBbJy4vb2ZmY2FudmFzLWhlYWRlci5jb21wb25lbnQuc2NzcyddXG59KVxuZXhwb3J0IGNsYXNzIEJzT2ZmY2FudmFzSGVhZGVyQ29tcG9uZW50IGltcGxlbWVudHMgT25Jbml0IHtcblxuICBjb25zdHJ1Y3RvcigpIHsgfVxuXG4gIG5nT25Jbml0KCk6IHZvaWQge1xuICB9XG5cbn1cbiIsIjxkaXYgY2xhc3M9XCJvZmZjYW52YXMtaGVhZGVyXCI+XG4gICAgPG5nLWNvbnRlbnQ+PC9uZy1jb250ZW50PlxuPC9kaXY+XG4iXX0=
@@ -0,0 +1,2 @@
1
+ export * from './offcanvas-close/offcanvas-close.directive';
2
+ //# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoiaW5kZXguanMiLCJzb3VyY2VSb290IjoiIiwic291cmNlcyI6WyIuLi8uLi8uLi8uLi8uLi8uLi8uLi8uLi9saWJzL21pbnRwbGF5ZXItbmctYm9vdHN0cmFwL3NyYy9saWIvY29tcG9uZW50cy9vZmZjYW52YXMvZGlyZWN0aXZlcy9pbmRleC50cyJdLCJuYW1lcyI6W10sIm1hcHBpbmdzIjoiQUFBQSxjQUFjLDZDQUE2QyxDQUFDIiwic291cmNlc0NvbnRlbnQiOlsiZXhwb3J0ICogZnJvbSAnLi9vZmZjYW52YXMtY2xvc2Uvb2ZmY2FudmFzLWNsb3NlLmRpcmVjdGl2ZSc7XG4iXX0=
@@ -0,0 +1,27 @@
1
+ import { Directive, HostListener, Input } from '@angular/core';
2
+ import { BsOffcanvasComponent } from '../../components/offcanvas/offcanvas.component';
3
+ import { BsOffcanvasService } from '../../services/offcanvas/offcanvas.service';
4
+ import * as i0 from "@angular/core";
5
+ import * as i1 from "../../services/offcanvas/offcanvas.service";
6
+ export class BsOffcanvasCloseDirective {
7
+ constructor(offcanvasService) {
8
+ this.offcanvasService = offcanvasService;
9
+ }
10
+ onClick() {
11
+ this.offcanvasService.hide(this.bsOffcanvasClose);
12
+ }
13
+ }
14
+ BsOffcanvasCloseDirective.ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "13.2.0", ngImport: i0, type: BsOffcanvasCloseDirective, deps: [{ token: i1.BsOffcanvasService }], target: i0.ɵɵFactoryTarget.Directive });
15
+ BsOffcanvasCloseDirective.ɵdir = i0.ɵɵngDeclareDirective({ minVersion: "12.0.0", version: "13.2.0", type: BsOffcanvasCloseDirective, selector: "[bsOffcanvasClose]", inputs: { bsOffcanvasClose: "bsOffcanvasClose" }, host: { listeners: { "click": "onClick()" } }, ngImport: i0 });
16
+ i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "13.2.0", ngImport: i0, type: BsOffcanvasCloseDirective, decorators: [{
17
+ type: Directive,
18
+ args: [{
19
+ selector: '[bsOffcanvasClose]'
20
+ }]
21
+ }], ctorParameters: function () { return [{ type: i1.BsOffcanvasService }]; }, propDecorators: { bsOffcanvasClose: [{
22
+ type: Input
23
+ }], onClick: [{
24
+ type: HostListener,
25
+ args: ['click']
26
+ }] } });
27
+ //# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoib2ZmY2FudmFzLWNsb3NlLmRpcmVjdGl2ZS5qcyIsInNvdXJjZVJvb3QiOiIiLCJzb3VyY2VzIjpbIi4uLy4uLy4uLy4uLy4uLy4uLy4uLy4uLy4uL2xpYnMvbWludHBsYXllci1uZy1ib290c3RyYXAvc3JjL2xpYi9jb21wb25lbnRzL29mZmNhbnZhcy9kaXJlY3RpdmVzL29mZmNhbnZhcy1jbG9zZS9vZmZjYW52YXMtY2xvc2UuZGlyZWN0aXZlLnRzIl0sIm5hbWVzIjpbXSwibWFwcGluZ3MiOiJBQUFBLE9BQU8sRUFBRSxTQUFTLEVBQUUsWUFBWSxFQUFFLEtBQUssRUFBRSxNQUFNLGVBQWUsQ0FBQztBQUMvRCxPQUFPLEVBQUUsb0JBQW9CLEVBQUUsTUFBTSxnREFBZ0QsQ0FBQztBQUN0RixPQUFPLEVBQUUsa0JBQWtCLEVBQUUsTUFBTSw0Q0FBNEMsQ0FBQzs7O0FBS2hGLE1BQU0sT0FBTyx5QkFBeUI7SUFDcEMsWUFBb0IsZ0JBQW9DO1FBQXBDLHFCQUFnQixHQUFoQixnQkFBZ0IsQ0FBb0I7SUFBSSxDQUFDO0lBSXRDLE9BQU87UUFDNUIsSUFBSSxDQUFDLGdCQUFnQixDQUFDLElBQUksQ0FBQyxJQUFJLENBQUMsZ0JBQWdCLENBQUMsQ0FBQztJQUNwRCxDQUFDOztzSEFQVSx5QkFBeUI7MEdBQXpCLHlCQUF5QjsyRkFBekIseUJBQXlCO2tCQUhyQyxTQUFTO21CQUFDO29CQUNULFFBQVEsRUFBRSxvQkFBb0I7aUJBQy9CO3lHQUlpQixnQkFBZ0I7c0JBQS9CLEtBQUs7Z0JBRWlCLE9BQU87c0JBQTdCLFlBQVk7dUJBQUMsT0FBTyIsInNvdXJjZXNDb250ZW50IjpbImltcG9ydCB7IERpcmVjdGl2ZSwgSG9zdExpc3RlbmVyLCBJbnB1dCB9IGZyb20gJ0Bhbmd1bGFyL2NvcmUnO1xuaW1wb3J0IHsgQnNPZmZjYW52YXNDb21wb25lbnQgfSBmcm9tICcuLi8uLi9jb21wb25lbnRzL29mZmNhbnZhcy9vZmZjYW52YXMuY29tcG9uZW50JztcbmltcG9ydCB7IEJzT2ZmY2FudmFzU2VydmljZSB9IGZyb20gJy4uLy4uL3NlcnZpY2VzL29mZmNhbnZhcy9vZmZjYW52YXMuc2VydmljZSc7XG5cbkBEaXJlY3RpdmUoe1xuICBzZWxlY3RvcjogJ1tic09mZmNhbnZhc0Nsb3NlXSdcbn0pXG5leHBvcnQgY2xhc3MgQnNPZmZjYW52YXNDbG9zZURpcmVjdGl2ZSB7XG4gIGNvbnN0cnVjdG9yKHByaXZhdGUgb2ZmY2FudmFzU2VydmljZTogQnNPZmZjYW52YXNTZXJ2aWNlKSB7IH1cblxuICBASW5wdXQoKSBwdWJsaWMgYnNPZmZjYW52YXNDbG9zZSE6IEJzT2ZmY2FudmFzQ29tcG9uZW50O1xuXG4gIEBIb3N0TGlzdGVuZXIoJ2NsaWNrJykgb25DbGljaygpIHtcbiAgICB0aGlzLm9mZmNhbnZhc1NlcnZpY2UuaGlkZSh0aGlzLmJzT2ZmY2FudmFzQ2xvc2UpO1xuICB9XG59XG4iXX0=
@@ -0,0 +1,7 @@
1
+ export * from './services';
2
+ export * from './offcanvas.module';
3
+ export * from './components';
4
+ export * from './interfaces';
5
+ export * from './directives';
6
+ export * from './types';
7
+ //# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoiaW5kZXguanMiLCJzb3VyY2VSb290IjoiIiwic291cmNlcyI6WyIuLi8uLi8uLi8uLi8uLi8uLi8uLi9saWJzL21pbnRwbGF5ZXItbmctYm9vdHN0cmFwL3NyYy9saWIvY29tcG9uZW50cy9vZmZjYW52YXMvaW5kZXgudHMiXSwibmFtZXMiOltdLCJtYXBwaW5ncyI6IkFBQUEsY0FBYyxZQUFZLENBQUM7QUFDM0IsY0FBYyxvQkFBb0IsQ0FBQztBQUNuQyxjQUFjLGNBQWMsQ0FBQztBQUM3QixjQUFjLGNBQWMsQ0FBQztBQUM3QixjQUFjLGNBQWMsQ0FBQztBQUM3QixjQUFjLFNBQVMsQ0FBQyIsInNvdXJjZXNDb250ZW50IjpbImV4cG9ydCAqIGZyb20gJy4vc2VydmljZXMnO1xuZXhwb3J0ICogZnJvbSAnLi9vZmZjYW52YXMubW9kdWxlJztcbmV4cG9ydCAqIGZyb20gJy4vY29tcG9uZW50cyc7XG5leHBvcnQgKiBmcm9tICcuL2ludGVyZmFjZXMnO1xuZXhwb3J0ICogZnJvbSAnLi9kaXJlY3RpdmVzJztcbmV4cG9ydCAqIGZyb20gJy4vdHlwZXMnOyJdfQ==
@@ -0,0 +1,2 @@
1
+ export * from './offcanvas-animation-meta';
2
+ //# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoiaW5kZXguanMiLCJzb3VyY2VSb290IjoiIiwic291cmNlcyI6WyIuLi8uLi8uLi8uLi8uLi8uLi8uLi8uLi9saWJzL21pbnRwbGF5ZXItbmctYm9vdHN0cmFwL3NyYy9saWIvY29tcG9uZW50cy9vZmZjYW52YXMvaW50ZXJmYWNlcy9pbmRleC50cyJdLCJuYW1lcyI6W10sIm1hcHBpbmdzIjoiQUFBQSxjQUFjLDRCQUE0QixDQUFDIiwic291cmNlc0NvbnRlbnQiOlsiZXhwb3J0ICogZnJvbSAnLi9vZmZjYW52YXMtYW5pbWF0aW9uLW1ldGEnO1xuIl19
@@ -0,0 +1,2 @@
1
+ export {};
2
+ //# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoib2ZmY2FudmFzLWFuaW1hdGlvbi1tZXRhLmpzIiwic291cmNlUm9vdCI6IiIsInNvdXJjZXMiOlsiLi4vLi4vLi4vLi4vLi4vLi4vLi4vLi4vbGlicy9taW50cGxheWVyLW5nLWJvb3RzdHJhcC9zcmMvbGliL2NvbXBvbmVudHMvb2ZmY2FudmFzL2ludGVyZmFjZXMvb2ZmY2FudmFzLWFuaW1hdGlvbi1tZXRhLnRzIl0sIm5hbWVzIjpbXSwibWFwcGluZ3MiOiIiLCJzb3VyY2VzQ29udGVudCI6WyJpbXBvcnQgeyBPdmVybGF5UmVmIH0gZnJvbSBcIkBhbmd1bGFyL2Nkay9vdmVybGF5XCI7XG5pbXBvcnQgeyBDb21wb25lbnRSZWYgfSBmcm9tIFwiQGFuZ3VsYXIvY29yZVwiO1xuaW1wb3J0IHsgQnNPZmZjYW52YXNDb21wb25lbnQgfSBmcm9tIFwiLi4vY29tcG9uZW50cy9vZmZjYW52YXMvb2ZmY2FudmFzLmNvbXBvbmVudFwiO1xuXG5leHBvcnQgaW50ZXJmYWNlIE9mZmNhbnZhc0FuaW1hdGlvbk1ldGEge1xuICAgIGNvbXBvbmVudDogQ29tcG9uZW50UmVmPEJzT2ZmY2FudmFzQ29tcG9uZW50PjtcbiAgICBvdmVybGF5OiBPdmVybGF5UmVmO1xufSJdfQ==
@@ -0,0 +1,45 @@
1
+ import { NgModule } from '@angular/core';
2
+ import { CommonModule } from '@angular/common';
3
+ import { OverlayModule } from '@angular/cdk/overlay';
4
+ import { BsOffcanvasHeaderComponent } from './components/offcanvas-header/offcanvas-header.component';
5
+ import { BsOffcanvasBodyComponent } from './components/offcanvas-body/offcanvas-body.component';
6
+ import { BsOffcanvasComponent } from './components/offcanvas/offcanvas.component';
7
+ import { BsOffcanvasCloseDirective } from './directives/offcanvas-close/offcanvas-close.directive';
8
+ import * as i0 from "@angular/core";
9
+ export class BsOffcanvasModule {
10
+ }
11
+ BsOffcanvasModule.ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "13.2.0", ngImport: i0, type: BsOffcanvasModule, deps: [], target: i0.ɵɵFactoryTarget.NgModule });
12
+ BsOffcanvasModule.ɵmod = i0.ɵɵngDeclareNgModule({ minVersion: "12.0.0", version: "13.2.0", ngImport: i0, type: BsOffcanvasModule, declarations: [BsOffcanvasComponent,
13
+ BsOffcanvasHeaderComponent,
14
+ BsOffcanvasBodyComponent,
15
+ BsOffcanvasCloseDirective], imports: [CommonModule,
16
+ OverlayModule], exports: [BsOffcanvasComponent,
17
+ BsOffcanvasHeaderComponent,
18
+ BsOffcanvasBodyComponent,
19
+ BsOffcanvasCloseDirective] });
20
+ BsOffcanvasModule.ɵinj = i0.ɵɵngDeclareInjector({ minVersion: "12.0.0", version: "13.2.0", ngImport: i0, type: BsOffcanvasModule, imports: [[
21
+ CommonModule,
22
+ OverlayModule
23
+ ]] });
24
+ i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "13.2.0", ngImport: i0, type: BsOffcanvasModule, decorators: [{
25
+ type: NgModule,
26
+ args: [{
27
+ declarations: [
28
+ BsOffcanvasComponent,
29
+ BsOffcanvasHeaderComponent,
30
+ BsOffcanvasBodyComponent,
31
+ BsOffcanvasCloseDirective
32
+ ],
33
+ imports: [
34
+ CommonModule,
35
+ OverlayModule
36
+ ],
37
+ exports: [
38
+ BsOffcanvasComponent,
39
+ BsOffcanvasHeaderComponent,
40
+ BsOffcanvasBodyComponent,
41
+ BsOffcanvasCloseDirective
42
+ ]
43
+ }]
44
+ }] });
45
+ //# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoib2ZmY2FudmFzLm1vZHVsZS5qcyIsInNvdXJjZVJvb3QiOiIiLCJzb3VyY2VzIjpbIi4uLy4uLy4uLy4uLy4uLy4uLy4uL2xpYnMvbWludHBsYXllci1uZy1ib290c3RyYXAvc3JjL2xpYi9jb21wb25lbnRzL29mZmNhbnZhcy9vZmZjYW52YXMubW9kdWxlLnRzIl0sIm5hbWVzIjpbXSwibWFwcGluZ3MiOiJBQUFBLE9BQU8sRUFBRSxRQUFRLEVBQUUsTUFBTSxlQUFlLENBQUM7QUFDekMsT0FBTyxFQUFFLFlBQVksRUFBRSxNQUFNLGlCQUFpQixDQUFDO0FBQy9DLE9BQU8sRUFBRSxhQUFhLEVBQUUsTUFBTSxzQkFBc0IsQ0FBQztBQUNyRCxPQUFPLEVBQUUsMEJBQTBCLEVBQUUsTUFBTSwwREFBMEQsQ0FBQztBQUN0RyxPQUFPLEVBQUUsd0JBQXdCLEVBQUUsTUFBTSxzREFBc0QsQ0FBQztBQUNoRyxPQUFPLEVBQUUsb0JBQW9CLEVBQUUsTUFBTSw0Q0FBNEMsQ0FBQztBQUNsRixPQUFPLEVBQUUseUJBQXlCLEVBQUUsTUFBTSx3REFBd0QsQ0FBQzs7QUFzQm5HLE1BQU0sT0FBTyxpQkFBaUI7OzhHQUFqQixpQkFBaUI7K0dBQWpCLGlCQUFpQixpQkFoQjFCLG9CQUFvQjtRQUNwQiwwQkFBMEI7UUFDMUIsd0JBQXdCO1FBQ3hCLHlCQUF5QixhQUd6QixZQUFZO1FBQ1osYUFBYSxhQUdiLG9CQUFvQjtRQUNwQiwwQkFBMEI7UUFDMUIsd0JBQXdCO1FBQ3hCLHlCQUF5QjsrR0FHaEIsaUJBQWlCLFlBWG5CO1lBQ1AsWUFBWTtZQUNaLGFBQWE7U0FDZDsyRkFRVSxpQkFBaUI7a0JBbEI3QixRQUFRO21CQUFDO29CQUNSLFlBQVksRUFBRTt3QkFDWixvQkFBb0I7d0JBQ3BCLDBCQUEwQjt3QkFDMUIsd0JBQXdCO3dCQUN4Qix5QkFBeUI7cUJBQzFCO29CQUNELE9BQU8sRUFBRTt3QkFDUCxZQUFZO3dCQUNaLGFBQWE7cUJBQ2Q7b0JBQ0QsT0FBTyxFQUFFO3dCQUNQLG9CQUFvQjt3QkFDcEIsMEJBQTBCO3dCQUMxQix3QkFBd0I7d0JBQ3hCLHlCQUF5QjtxQkFDMUI7aUJBQ0YiLCJzb3VyY2VzQ29udGVudCI6WyJpbXBvcnQgeyBOZ01vZHVsZSB9IGZyb20gJ0Bhbmd1bGFyL2NvcmUnO1xuaW1wb3J0IHsgQ29tbW9uTW9kdWxlIH0gZnJvbSAnQGFuZ3VsYXIvY29tbW9uJztcbmltcG9ydCB7IE92ZXJsYXlNb2R1bGUgfSBmcm9tICdAYW5ndWxhci9jZGsvb3ZlcmxheSc7XG5pbXBvcnQgeyBCc09mZmNhbnZhc0hlYWRlckNvbXBvbmVudCB9IGZyb20gJy4vY29tcG9uZW50cy9vZmZjYW52YXMtaGVhZGVyL29mZmNhbnZhcy1oZWFkZXIuY29tcG9uZW50JztcbmltcG9ydCB7IEJzT2ZmY2FudmFzQm9keUNvbXBvbmVudCB9IGZyb20gJy4vY29tcG9uZW50cy9vZmZjYW52YXMtYm9keS9vZmZjYW52YXMtYm9keS5jb21wb25lbnQnO1xuaW1wb3J0IHsgQnNPZmZjYW52YXNDb21wb25lbnQgfSBmcm9tICcuL2NvbXBvbmVudHMvb2ZmY2FudmFzL29mZmNhbnZhcy5jb21wb25lbnQnO1xuaW1wb3J0IHsgQnNPZmZjYW52YXNDbG9zZURpcmVjdGl2ZSB9IGZyb20gJy4vZGlyZWN0aXZlcy9vZmZjYW52YXMtY2xvc2Uvb2ZmY2FudmFzLWNsb3NlLmRpcmVjdGl2ZSc7XG5cblxuXG5ATmdNb2R1bGUoe1xuICBkZWNsYXJhdGlvbnM6IFtcbiAgICBCc09mZmNhbnZhc0NvbXBvbmVudCxcbiAgICBCc09mZmNhbnZhc0hlYWRlckNvbXBvbmVudCxcbiAgICBCc09mZmNhbnZhc0JvZHlDb21wb25lbnQsXG4gICAgQnNPZmZjYW52YXNDbG9zZURpcmVjdGl2ZVxuICBdLFxuICBpbXBvcnRzOiBbXG4gICAgQ29tbW9uTW9kdWxlLFxuICAgIE92ZXJsYXlNb2R1bGVcbiAgXSxcbiAgZXhwb3J0czogW1xuICAgIEJzT2ZmY2FudmFzQ29tcG9uZW50LFxuICAgIEJzT2ZmY2FudmFzSGVhZGVyQ29tcG9uZW50LFxuICAgIEJzT2ZmY2FudmFzQm9keUNvbXBvbmVudCxcbiAgICBCc09mZmNhbnZhc0Nsb3NlRGlyZWN0aXZlXG4gIF1cbn0pXG5leHBvcnQgY2xhc3MgQnNPZmZjYW52YXNNb2R1bGUgeyB9XG4iXX0=
@@ -0,0 +1,3 @@
1
+ import { InjectionToken } from "@angular/core";
2
+ export const OFFCANVAS_CONTENT = new InjectionToken('OffcanvasContent');
3
+ //# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoib2ZmY2FudmFzLWNvbnRlbnQucHJvdmlkZXIuanMiLCJzb3VyY2VSb290IjoiIiwic291cmNlcyI6WyIuLi8uLi8uLi8uLi8uLi8uLi8uLi8uLi9saWJzL21pbnRwbGF5ZXItbmctYm9vdHN0cmFwL3NyYy9saWIvY29tcG9uZW50cy9vZmZjYW52YXMvcHJvdmlkZXJzL29mZmNhbnZhcy1jb250ZW50LnByb3ZpZGVyLnRzIl0sIm5hbWVzIjpbXSwibWFwcGluZ3MiOiJBQUFBLE9BQU8sRUFBRSxjQUFjLEVBQWUsTUFBTSxlQUFlLENBQUM7QUFFNUQsTUFBTSxDQUFDLE1BQU0saUJBQWlCLEdBQUcsSUFBSSxjQUFjLENBQW1CLGtCQUFrQixDQUFDLENBQUMiLCJzb3VyY2VzQ29udGVudCI6WyJpbXBvcnQgeyBJbmplY3Rpb25Ub2tlbiwgVGVtcGxhdGVSZWYgfSBmcm9tIFwiQGFuZ3VsYXIvY29yZVwiO1xuXG5leHBvcnQgY29uc3QgT0ZGQ0FOVkFTX0NPTlRFTlQgPSBuZXcgSW5qZWN0aW9uVG9rZW48VGVtcGxhdGVSZWY8YW55Pj4oJ09mZmNhbnZhc0NvbnRlbnQnKTsiXX0=
@@ -0,0 +1,2 @@
1
+ export * from './offcanvas/offcanvas.service';
2
+ //# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoiaW5kZXguanMiLCJzb3VyY2VSb290IjoiIiwic291cmNlcyI6WyIuLi8uLi8uLi8uLi8uLi8uLi8uLi8uLi9saWJzL21pbnRwbGF5ZXItbmctYm9vdHN0cmFwL3NyYy9saWIvY29tcG9uZW50cy9vZmZjYW52YXMvc2VydmljZXMvaW5kZXgudHMiXSwibmFtZXMiOltdLCJtYXBwaW5ncyI6IkFBQUEsY0FBYywrQkFBK0IsQ0FBQyIsInNvdXJjZXNDb250ZW50IjpbImV4cG9ydCAqIGZyb20gJy4vb2ZmY2FudmFzL29mZmNhbnZhcy5zZXJ2aWNlJztcbiJdfQ==
@@ -0,0 +1,72 @@
1
+ import { Overlay } from '@angular/cdk/overlay';
2
+ import { ComponentPortal } from '@angular/cdk/portal';
3
+ import { Injectable, Injector } from '@angular/core';
4
+ import { BsOffcanvasModule } from '../../offcanvas.module';
5
+ import { BsOffcanvasComponent } from '../../components/offcanvas/offcanvas.component';
6
+ import { OFFCANVAS_CONTENT } from '../../providers/offcanvas-content.provider';
7
+ import * as i0 from "@angular/core";
8
+ import * as i1 from "@angular/cdk/overlay";
9
+ export class BsOffcanvasService {
10
+ constructor(overlay, parentInjector) {
11
+ this.overlay = overlay;
12
+ this.parentInjector = parentInjector;
13
+ }
14
+ show(template, position, hasBackdrop = false, backdropClick = null) {
15
+ const injector = Injector.create({
16
+ providers: [{ provide: OFFCANVAS_CONTENT, useValue: template }],
17
+ parent: this.parentInjector
18
+ });
19
+ const portal = new ComponentPortal(BsOffcanvasComponent, null, injector);
20
+ const positioning = this.overlay.position().global();
21
+ const config = {
22
+ scrollStrategy: this.overlay.scrollStrategies.reposition(),
23
+ positionStrategy: positioning,
24
+ hasBackdrop,
25
+ };
26
+ switch (position) {
27
+ case 'bottom':
28
+ positioning.centerHorizontally().bottom('0');
29
+ config.width = '100%';
30
+ break;
31
+ case 'top':
32
+ positioning.centerHorizontally().top('0');
33
+ config.width = '100%';
34
+ break;
35
+ case 'start':
36
+ positioning.centerVertically().left('0');
37
+ config.height = '100%';
38
+ break;
39
+ case 'end':
40
+ positioning.centerVertically().right('0');
41
+ config.height = '100%';
42
+ break;
43
+ default:
44
+ throw 'Invalid value for position';
45
+ }
46
+ const overlayRef = this.overlay.create(config);
47
+ const componentInstance = overlayRef.attach(portal);
48
+ componentInstance.instance.position = position;
49
+ setTimeout(() => componentInstance.instance.show$.next(true));
50
+ componentInstance.instance['instance'] = {
51
+ component: componentInstance,
52
+ overlay: overlayRef
53
+ };
54
+ if (hasBackdrop && backdropClick) {
55
+ overlayRef.backdropClick().subscribe(() => backdropClick(componentInstance.instance));
56
+ }
57
+ return componentInstance.instance;
58
+ }
59
+ hide(offcanvas) {
60
+ offcanvas.show$.next(false);
61
+ setTimeout(() => offcanvas['instance']?.overlay.dispose(), 300);
62
+ }
63
+ }
64
+ BsOffcanvasService.ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "13.2.0", ngImport: i0, type: BsOffcanvasService, deps: [{ token: i1.Overlay }, { token: i0.Injector }], target: i0.ɵɵFactoryTarget.Injectable });
65
+ BsOffcanvasService.ɵprov = i0.ɵɵngDeclareInjectable({ minVersion: "12.0.0", version: "13.2.0", ngImport: i0, type: BsOffcanvasService, providedIn: BsOffcanvasModule });
66
+ i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "13.2.0", ngImport: i0, type: BsOffcanvasService, decorators: [{
67
+ type: Injectable,
68
+ args: [{
69
+ providedIn: BsOffcanvasModule
70
+ }]
71
+ }], ctorParameters: function () { return [{ type: i1.Overlay }, { type: i0.Injector }]; } });
72
+ //# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoib2ZmY2FudmFzLnNlcnZpY2UuanMiLCJzb3VyY2VSb290IjoiIiwic291cmNlcyI6WyIuLi8uLi8uLi8uLi8uLi8uLi8uLi8uLi8uLi9saWJzL21pbnRwbGF5ZXItbmctYm9vdHN0cmFwL3NyYy9saWIvY29tcG9uZW50cy9vZmZjYW52YXMvc2VydmljZXMvb2ZmY2FudmFzL29mZmNhbnZhcy5zZXJ2aWNlLnRzIl0sIm5hbWVzIjpbXSwibWFwcGluZ3MiOiJBQUFBLE9BQU8sRUFBRSxPQUFPLEVBQWlCLE1BQU0sc0JBQXNCLENBQUM7QUFDOUQsT0FBTyxFQUFFLGVBQWUsRUFBRSxNQUFNLHFCQUFxQixDQUFDO0FBQ3RELE9BQU8sRUFBRSxVQUFVLEVBQUUsUUFBUSxFQUFlLE1BQU0sZUFBZSxDQUFDO0FBQ2xFLE9BQU8sRUFBRSxpQkFBaUIsRUFBRSxNQUFNLHdCQUF3QixDQUFDO0FBQzNELE9BQU8sRUFBRSxvQkFBb0IsRUFBRSxNQUFNLGdEQUFnRCxDQUFDO0FBRXRGLE9BQU8sRUFBRSxpQkFBaUIsRUFBRSxNQUFNLDRDQUE0QyxDQUFDOzs7QUFLL0UsTUFBTSxPQUFPLGtCQUFrQjtJQUU3QixZQUNVLE9BQWdCLEVBQ2hCLGNBQXdCO1FBRHhCLFlBQU8sR0FBUCxPQUFPLENBQVM7UUFDaEIsbUJBQWMsR0FBZCxjQUFjLENBQVU7SUFDOUIsQ0FBQztJQUVFLElBQUksQ0FBQyxRQUEwQixFQUFFLFFBQTRDLEVBQUUsV0FBVyxHQUFHLEtBQUssRUFBRSxnQkFBb0UsSUFBSTtRQUNqTCxNQUFNLFFBQVEsR0FBRyxRQUFRLENBQUMsTUFBTSxDQUFDO1lBQy9CLFNBQVMsRUFBRSxDQUFDLEVBQUUsT0FBTyxFQUFFLGlCQUFpQixFQUFFLFFBQVEsRUFBRSxRQUFRLEVBQUUsQ0FBQztZQUMvRCxNQUFNLEVBQUUsSUFBSSxDQUFDLGNBQWM7U0FDNUIsQ0FBQyxDQUFDO1FBQ0gsTUFBTSxNQUFNLEdBQUcsSUFBSSxlQUFlLENBQUMsb0JBQW9CLEVBQUUsSUFBSSxFQUFFLFFBQVEsQ0FBQyxDQUFDO1FBRXpFLE1BQU0sV0FBVyxHQUFHLElBQUksQ0FBQyxPQUFPLENBQUMsUUFBUSxFQUFFLENBQUMsTUFBTSxFQUFFLENBQUM7UUFDckQsTUFBTSxNQUFNLEdBQWtCO1lBQzVCLGNBQWMsRUFBRSxJQUFJLENBQUMsT0FBTyxDQUFDLGdCQUFnQixDQUFDLFVBQVUsRUFBRTtZQUMxRCxnQkFBZ0IsRUFBRSxXQUFXO1lBQzdCLFdBQVc7U0FDWixDQUFDO1FBRUYsUUFBUSxRQUFRLEVBQUU7WUFDaEIsS0FBSyxRQUFRO2dCQUNYLFdBQVcsQ0FBQyxrQkFBa0IsRUFBRSxDQUFDLE1BQU0sQ0FBQyxHQUFHLENBQUMsQ0FBQztnQkFDN0MsTUFBTSxDQUFDLEtBQUssR0FBRyxNQUFNLENBQUM7Z0JBQ3RCLE1BQU07WUFDUixLQUFLLEtBQUs7Z0JBQ1IsV0FBVyxDQUFDLGtCQUFrQixFQUFFLENBQUMsR0FBRyxDQUFDLEdBQUcsQ0FBQyxDQUFDO2dCQUMxQyxNQUFNLENBQUMsS0FBSyxHQUFHLE1BQU0sQ0FBQztnQkFDdEIsTUFBTTtZQUNSLEtBQUssT0FBTztnQkFDVixXQUFXLENBQUMsZ0JBQWdCLEVBQUUsQ0FBQyxJQUFJLENBQUMsR0FBRyxDQUFDLENBQUM7Z0JBQ3pDLE1BQU0sQ0FBQyxNQUFNLEdBQUcsTUFBTSxDQUFDO2dCQUN2QixNQUFNO1lBQ1IsS0FBSyxLQUFLO2dCQUNSLFdBQVcsQ0FBQyxnQkFBZ0IsRUFBRSxDQUFDLEtBQUssQ0FBQyxHQUFHLENBQUMsQ0FBQztnQkFDMUMsTUFBTSxDQUFDLE1BQU0sR0FBRyxNQUFNLENBQUM7Z0JBQ3ZCLE1BQU07WUFFUjtnQkFDRSxNQUFNLDRCQUE0QixDQUFDO1NBQ3RDO1FBRUQsTUFBTSxVQUFVLEdBQUcsSUFBSSxDQUFDLE9BQU8sQ0FBQyxNQUFNLENBQUMsTUFBTSxDQUFDLENBQUM7UUFFL0MsTUFBTSxpQkFBaUIsR0FBRyxVQUFVLENBQUMsTUFBTSxDQUF1QixNQUFNLENBQUMsQ0FBQztRQUMxRSxpQkFBaUIsQ0FBQyxRQUFRLENBQUMsUUFBUSxHQUFHLFFBQVEsQ0FBQztRQUMvQyxVQUFVLENBQUMsR0FBRyxFQUFFLENBQUMsaUJBQWlCLENBQUMsUUFBUSxDQUFDLEtBQUssQ0FBQyxJQUFJLENBQUMsSUFBSSxDQUFDLENBQUMsQ0FBQztRQUU5RCxpQkFBaUIsQ0FBQyxRQUFRLENBQUMsVUFBVSxDQUFDLEdBQTJCO1lBQy9ELFNBQVMsRUFBRSxpQkFBaUI7WUFDNUIsT0FBTyxFQUFFLFVBQVU7U0FDcEIsQ0FBQztRQUVGLElBQUksV0FBVyxJQUFJLGFBQWEsRUFBRTtZQUNoQyxVQUFVLENBQUMsYUFBYSxFQUFFLENBQUMsU0FBUyxDQUFDLEdBQUcsRUFBRSxDQUFDLGFBQWEsQ0FBQyxpQkFBaUIsQ0FBQyxRQUFRLENBQUMsQ0FBQyxDQUFDO1NBQ3ZGO1FBRUQsT0FBTyxpQkFBaUIsQ0FBQyxRQUFRLENBQUM7SUFDcEMsQ0FBQztJQUVNLElBQUksQ0FBQyxTQUErQjtRQUN6QyxTQUFTLENBQUMsS0FBSyxDQUFDLElBQUksQ0FBQyxLQUFLLENBQUMsQ0FBQztRQUM1QixVQUFVLENBQUMsR0FBRyxFQUFFLENBQUMsU0FBUyxDQUFDLFVBQVUsQ0FBQyxFQUFFLE9BQU8sQ0FBQyxPQUFPLEVBQUUsRUFBRSxHQUFHLENBQUMsQ0FBQztJQUNsRSxDQUFDOzsrR0FoRVUsa0JBQWtCO21IQUFsQixrQkFBa0IsY0FGakIsaUJBQWlCOzJGQUVsQixrQkFBa0I7a0JBSDlCLFVBQVU7bUJBQUM7b0JBQ1YsVUFBVSxFQUFFLGlCQUFpQjtpQkFDOUIiLCJzb3VyY2VzQ29udGVudCI6WyJpbXBvcnQgeyBPdmVybGF5LCBPdmVybGF5Q29uZmlnIH0gZnJvbSAnQGFuZ3VsYXIvY2RrL292ZXJsYXknO1xuaW1wb3J0IHsgQ29tcG9uZW50UG9ydGFsIH0gZnJvbSAnQGFuZ3VsYXIvY2RrL3BvcnRhbCc7XG5pbXBvcnQgeyBJbmplY3RhYmxlLCBJbmplY3RvciwgVGVtcGxhdGVSZWYgfSBmcm9tICdAYW5ndWxhci9jb3JlJztcbmltcG9ydCB7IEJzT2ZmY2FudmFzTW9kdWxlIH0gZnJvbSAnLi4vLi4vb2ZmY2FudmFzLm1vZHVsZSc7XG5pbXBvcnQgeyBCc09mZmNhbnZhc0NvbXBvbmVudCB9IGZyb20gJy4uLy4uL2NvbXBvbmVudHMvb2ZmY2FudmFzL29mZmNhbnZhcy5jb21wb25lbnQnO1xuaW1wb3J0IHsgT2ZmY2FudmFzQW5pbWF0aW9uTWV0YSB9IGZyb20gJy4uLy4uL2ludGVyZmFjZXMvb2ZmY2FudmFzLWFuaW1hdGlvbi1tZXRhJztcbmltcG9ydCB7IE9GRkNBTlZBU19DT05URU5UIH0gZnJvbSAnLi4vLi4vcHJvdmlkZXJzL29mZmNhbnZhcy1jb250ZW50LnByb3ZpZGVyJztcblxuQEluamVjdGFibGUoe1xuICBwcm92aWRlZEluOiBCc09mZmNhbnZhc01vZHVsZVxufSlcbmV4cG9ydCBjbGFzcyBCc09mZmNhbnZhc1NlcnZpY2Uge1xuXG4gIGNvbnN0cnVjdG9yKFxuICAgIHByaXZhdGUgb3ZlcmxheTogT3ZlcmxheSxcbiAgICBwcml2YXRlIHBhcmVudEluamVjdG9yOiBJbmplY3RvcixcbiAgKSB7IH1cblxuICBwdWJsaWMgc2hvdyh0ZW1wbGF0ZTogVGVtcGxhdGVSZWY8YW55PiwgcG9zaXRpb246ICd0b3AnIHwgJ2JvdHRvbScgfCAnc3RhcnQnIHwgJ2VuZCcsIGhhc0JhY2tkcm9wID0gZmFsc2UsIGJhY2tkcm9wQ2xpY2s6ICgob2ZmY2FudmFzOiBCc09mZmNhbnZhc0NvbXBvbmVudCkgPT4gdm9pZCkgfCBudWxsID0gbnVsbCkge1xuICAgIGNvbnN0IGluamVjdG9yID0gSW5qZWN0b3IuY3JlYXRlKHtcbiAgICAgIHByb3ZpZGVyczogW3sgcHJvdmlkZTogT0ZGQ0FOVkFTX0NPTlRFTlQsIHVzZVZhbHVlOiB0ZW1wbGF0ZSB9XSxcbiAgICAgIHBhcmVudDogdGhpcy5wYXJlbnRJbmplY3RvclxuICAgIH0pO1xuICAgIGNvbnN0IHBvcnRhbCA9IG5ldyBDb21wb25lbnRQb3J0YWwoQnNPZmZjYW52YXNDb21wb25lbnQsIG51bGwsIGluamVjdG9yKTtcbiAgXG4gICAgY29uc3QgcG9zaXRpb25pbmcgPSB0aGlzLm92ZXJsYXkucG9zaXRpb24oKS5nbG9iYWwoKTtcbiAgICBjb25zdCBjb25maWc6IE92ZXJsYXlDb25maWcgPSB7XG4gICAgICBzY3JvbGxTdHJhdGVneTogdGhpcy5vdmVybGF5LnNjcm9sbFN0cmF0ZWdpZXMucmVwb3NpdGlvbigpLFxuICAgICAgcG9zaXRpb25TdHJhdGVneTogcG9zaXRpb25pbmcsXG4gICAgICBoYXNCYWNrZHJvcCxcbiAgICB9O1xuXG4gICAgc3dpdGNoIChwb3NpdGlvbikge1xuICAgICAgY2FzZSAnYm90dG9tJzpcbiAgICAgICAgcG9zaXRpb25pbmcuY2VudGVySG9yaXpvbnRhbGx5KCkuYm90dG9tKCcwJyk7XG4gICAgICAgIGNvbmZpZy53aWR0aCA9ICcxMDAlJztcbiAgICAgICAgYnJlYWs7XG4gICAgICBjYXNlICd0b3AnOlxuICAgICAgICBwb3NpdGlvbmluZy5jZW50ZXJIb3Jpem9udGFsbHkoKS50b3AoJzAnKTtcbiAgICAgICAgY29uZmlnLndpZHRoID0gJzEwMCUnO1xuICAgICAgICBicmVhaztcbiAgICAgIGNhc2UgJ3N0YXJ0JzpcbiAgICAgICAgcG9zaXRpb25pbmcuY2VudGVyVmVydGljYWxseSgpLmxlZnQoJzAnKTtcbiAgICAgICAgY29uZmlnLmhlaWdodCA9ICcxMDAlJztcbiAgICAgICAgYnJlYWs7XG4gICAgICBjYXNlICdlbmQnOlxuICAgICAgICBwb3NpdGlvbmluZy5jZW50ZXJWZXJ0aWNhbGx5KCkucmlnaHQoJzAnKTtcbiAgICAgICAgY29uZmlnLmhlaWdodCA9ICcxMDAlJztcbiAgICAgICAgYnJlYWs7XG4gICAgICAgICAgXG4gICAgICBkZWZhdWx0OlxuICAgICAgICB0aHJvdyAnSW52YWxpZCB2YWx1ZSBmb3IgcG9zaXRpb24nO1xuICAgIH1cblxuICAgIGNvbnN0IG92ZXJsYXlSZWYgPSB0aGlzLm92ZXJsYXkuY3JlYXRlKGNvbmZpZyk7XG4gIFxuICAgIGNvbnN0IGNvbXBvbmVudEluc3RhbmNlID0gb3ZlcmxheVJlZi5hdHRhY2g8QnNPZmZjYW52YXNDb21wb25lbnQ+KHBvcnRhbCk7XG4gICAgY29tcG9uZW50SW5zdGFuY2UuaW5zdGFuY2UucG9zaXRpb24gPSBwb3NpdGlvbjtcbiAgICBzZXRUaW1lb3V0KCgpID0+IGNvbXBvbmVudEluc3RhbmNlLmluc3RhbmNlLnNob3ckLm5leHQodHJ1ZSkpO1xuICAgIFxuICAgIGNvbXBvbmVudEluc3RhbmNlLmluc3RhbmNlWydpbnN0YW5jZSddID0gPE9mZmNhbnZhc0FuaW1hdGlvbk1ldGE+e1xuICAgICAgY29tcG9uZW50OiBjb21wb25lbnRJbnN0YW5jZSxcbiAgICAgIG92ZXJsYXk6IG92ZXJsYXlSZWZcbiAgICB9O1xuXG4gICAgaWYgKGhhc0JhY2tkcm9wICYmIGJhY2tkcm9wQ2xpY2spIHtcbiAgICAgIG92ZXJsYXlSZWYuYmFja2Ryb3BDbGljaygpLnN1YnNjcmliZSgoKSA9PiBiYWNrZHJvcENsaWNrKGNvbXBvbmVudEluc3RhbmNlLmluc3RhbmNlKSk7XG4gICAgfVxuXG4gICAgcmV0dXJuIGNvbXBvbmVudEluc3RhbmNlLmluc3RhbmNlO1xuICB9XG5cbiAgcHVibGljIGhpZGUob2ZmY2FudmFzOiBCc09mZmNhbnZhc0NvbXBvbmVudCkge1xuICAgIG9mZmNhbnZhcy5zaG93JC5uZXh0KGZhbHNlKTtcbiAgICBzZXRUaW1lb3V0KCgpID0+IG9mZmNhbnZhc1snaW5zdGFuY2UnXT8ub3ZlcmxheS5kaXNwb3NlKCksIDMwMCk7XG4gIH1cblxufVxuIl19
@@ -0,0 +1,2 @@
1
+ export * from './position';
2
+ //# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoiaW5kZXguanMiLCJzb3VyY2VSb290IjoiIiwic291cmNlcyI6WyIuLi8uLi8uLi8uLi8uLi8uLi8uLi8uLi9saWJzL21pbnRwbGF5ZXItbmctYm9vdHN0cmFwL3NyYy9saWIvY29tcG9uZW50cy9vZmZjYW52YXMvdHlwZXMvaW5kZXgudHMiXSwibmFtZXMiOltdLCJtYXBwaW5ncyI6IkFBQUEsY0FBYyxZQUFZLENBQUMiLCJzb3VyY2VzQ29udGVudCI6WyJleHBvcnQgKiBmcm9tICcuL3Bvc2l0aW9uJzsiXX0=
@@ -0,0 +1,2 @@
1
+ export {};
2
+ //# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoicG9zaXRpb24uanMiLCJzb3VyY2VSb290IjoiIiwic291cmNlcyI6WyIuLi8uLi8uLi8uLi8uLi8uLi8uLi8uLi9saWJzL21pbnRwbGF5ZXItbmctYm9vdHN0cmFwL3NyYy9saWIvY29tcG9uZW50cy9vZmZjYW52YXMvdHlwZXMvcG9zaXRpb24udHMiXSwibmFtZXMiOltdLCJtYXBwaW5ncyI6IiIsInNvdXJjZXNDb250ZW50IjpbImV4cG9ydCB0eXBlIE9mZmNhbnZhc1Bvc2l0aW9uID0gJ3RvcCcgfCAnYm90dG9tJyB8ICdzdGFydCcgfCAnZW5kJzsiXX0=
@@ -1,2 +1,3 @@
1
1
  export * from './scheduler/scheduler.component';
2
- //# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoiaW5kZXguanMiLCJzb3VyY2VSb290IjoiIiwic291cmNlcyI6WyIuLi8uLi8uLi8uLi8uLi8uLi8uLi8uLi9saWJzL21pbnRwbGF5ZXItbmctYm9vdHN0cmFwL3NyYy9saWIvY29tcG9uZW50cy9zY2hlZHVsZXIvY29tcG9uZW50cy9pbmRleC50cyJdLCJuYW1lcyI6W10sIm1hcHBpbmdzIjoiQUFBQSxjQUFjLGlDQUFpQyxDQUFDIiwic291cmNlc0NvbnRlbnQiOlsiZXhwb3J0ICogZnJvbSAnLi9zY2hlZHVsZXIvc2NoZWR1bGVyLmNvbXBvbmVudCc7Il19
2
+ export * from './resource-group-presenter/resource-group-presenter.component';
3
+ //# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoiaW5kZXguanMiLCJzb3VyY2VSb290IjoiIiwic291cmNlcyI6WyIuLi8uLi8uLi8uLi8uLi8uLi8uLi8uLi9saWJzL21pbnRwbGF5ZXItbmctYm9vdHN0cmFwL3NyYy9saWIvY29tcG9uZW50cy9zY2hlZHVsZXIvY29tcG9uZW50cy9pbmRleC50cyJdLCJuYW1lcyI6W10sIm1hcHBpbmdzIjoiQUFBQSxjQUFjLGlDQUFpQyxDQUFDO0FBQ2hELGNBQWMsK0RBQStELENBQUMiLCJzb3VyY2VzQ29udGVudCI6WyJleHBvcnQgKiBmcm9tICcuL3NjaGVkdWxlci9zY2hlZHVsZXIuY29tcG9uZW50JztcbmV4cG9ydCAqIGZyb20gJy4vcmVzb3VyY2UtZ3JvdXAtcHJlc2VudGVyL3Jlc291cmNlLWdyb3VwLXByZXNlbnRlci5jb21wb25lbnQnOyJdfQ==
@@ -0,0 +1,84 @@
1
+ import { Component, Input } from '@angular/core';
2
+ import { BehaviorSubject, filter, map, Subject, take } from 'rxjs';
3
+ import * as i0 from "@angular/core";
4
+ import * as i1 from "@angular/common";
5
+ export class ResourceGroupPresenterComponent {
6
+ constructor() {
7
+ this.level = 0;
8
+ this.resourceOrGroup$ = new BehaviorSubject(null);
9
+ this.timeSlots$ = new BehaviorSubject([]);
10
+ this.isExpanded$ = new BehaviorSubject(false);
11
+ this.destroyed$ = new Subject();
12
+ this.data$ = this.resourceOrGroup$
13
+ .pipe(map((resourceOrGroup) => {
14
+ if (!resourceOrGroup) {
15
+ return null;
16
+ }
17
+ else if ('children' in resourceOrGroup) {
18
+ return {
19
+ resource: null,
20
+ resourceGroup: resourceOrGroup
21
+ };
22
+ }
23
+ else {
24
+ return {
25
+ resource: resourceOrGroup,
26
+ resourceGroup: null
27
+ };
28
+ }
29
+ }))
30
+ .pipe(filter((resourceOrGroup) => !!resourceOrGroup))
31
+ .pipe(map((resourceOrGroup) => resourceOrGroup));
32
+ this.colSpan$ = this.timeSlots$
33
+ .pipe(map(timeSlots => timeSlots
34
+ .map(timeslot => timeslot.slots.length)
35
+ .reduce((sum, current) => sum + current, 0)));
36
+ }
37
+ //#region resourceOrGroup
38
+ get resourceOrGroup() {
39
+ return this.resourceOrGroup$.value;
40
+ }
41
+ set resourceGroup(value) {
42
+ this.resourceOrGroup$.next(value);
43
+ }
44
+ //#endregion
45
+ //#region timeSlots
46
+ get timeSlots() {
47
+ return this.timeSlots$.value;
48
+ }
49
+ set timeSlots(value) {
50
+ this.timeSlots$.next(value);
51
+ }
52
+ //#endregion
53
+ //#region isExpanded
54
+ get isExpanded() {
55
+ return this.isExpanded$.value;
56
+ }
57
+ set isExpanded(value) {
58
+ this.isExpanded$.next(value);
59
+ }
60
+ //#endregion
61
+ toggleExpanded() {
62
+ this.isExpanded$.pipe(take(1)).subscribe((isExpanded) => {
63
+ this.isExpanded$.next(!isExpanded);
64
+ });
65
+ }
66
+ ngOnDestroy() {
67
+ this.destroyed$.next(true);
68
+ }
69
+ }
70
+ ResourceGroupPresenterComponent.ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "13.2.0", ngImport: i0, type: ResourceGroupPresenterComponent, deps: [], target: i0.ɵɵFactoryTarget.Component });
71
+ ResourceGroupPresenterComponent.ɵcmp = i0.ɵɵngDeclareComponent({ minVersion: "12.0.0", version: "13.2.0", type: ResourceGroupPresenterComponent, selector: "bs-resource-group-presenter", inputs: { level: "level", resourceGroup: "resourceGroup", timeSlots: "timeSlots", isExpanded: "isExpanded" }, ngImport: i0, template: "<ng-container *ngIf=\"(data$ | async) as data\">\n\n <!-- Data is a resource group -->\n <ng-container *ngIf=\"data.resourceGroup\">\n <!-- Header -->\n <tr class=\"p-0 cursor-pointer\" *ngIf=\"(timeSlots$ | async) as timeSlots\" [title]=\"data.resourceGroup.description\">\n <ng-container *ngIf=\"(colSpan$ | async) as colspan\">\n <td class=\"p-2 cursor-pointer\" [colSpan]=\"colspan + 1\" (click)=\"toggleExpanded()\">\n <span class=\"p-2 align-middle position-sticky\">\n <i class=\"bi bi-chevron-down\" [style.padding-left.px]=\"level * 20\" *ngIf=\"isExpanded$ | async\"></i>\n <i class=\"bi bi-chevron-right\" [style.padding-left.px]=\"level * 20\" *ngIf=\"(isExpanded$ | async) === false\"></i>\n {{ data.resourceGroup.description }}\n </span>\n </td>\n </ng-container>\n </tr>\n\n <!-- Subgroups or resources -->\n <ng-container *ngIf=\"isExpanded$ | async\">\n <ng-container *ngIf=\"(timeSlots$ | async) as timeSlots\">\n <ng-container *ngFor=\"let child of data.resourceGroup.children\">\n <bs-resource-group-presenter [resourceGroup]=\"child\" [timeSlots]=\"timeSlots\" [level]=\"level + 1\"></bs-resource-group-presenter>\n </ng-container>\n </ng-container>\n </ng-container>\n </ng-container>\n\n <!-- Data is a resource -->\n <tr *ngIf=\"data.resource\" class=\"p-0 bordered\" [title]=\"data.resource.description\">\n <td class=\"p-0 bg-white\">\n <div class=\"p-2\">{{ data.resource.description }}</div>\n </td>\n <ng-container *ngFor=\"let slots of (timeSlots$ | async)\">\n <td class=\"bg-white border-1\" *ngFor=\"let slot of slots.slots\">\n <!-- {{ slot.start | date: 'dd/MM/yyyy HH:mm:ss' }} -->\n </td>\n </ng-container>\n </tr>\n</ng-container>", styles: [":host{display:contents}tr{border-bottom-width:1px}tr:not(.bordered) td span.position-sticky{left:0;right:0}\n"], components: [{ type: ResourceGroupPresenterComponent, selector: "bs-resource-group-presenter", inputs: ["level", "resourceGroup", "timeSlots", "isExpanded"] }], directives: [{ type: i1.NgIf, selector: "[ngIf]", inputs: ["ngIf", "ngIfThen", "ngIfElse"] }, { type: i1.NgForOf, selector: "[ngFor][ngForOf]", inputs: ["ngForOf", "ngForTrackBy", "ngForTemplate"] }], pipes: { "async": i1.AsyncPipe } });
72
+ i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "13.2.0", ngImport: i0, type: ResourceGroupPresenterComponent, decorators: [{
73
+ type: Component,
74
+ args: [{ selector: 'bs-resource-group-presenter', template: "<ng-container *ngIf=\"(data$ | async) as data\">\n\n <!-- Data is a resource group -->\n <ng-container *ngIf=\"data.resourceGroup\">\n <!-- Header -->\n <tr class=\"p-0 cursor-pointer\" *ngIf=\"(timeSlots$ | async) as timeSlots\" [title]=\"data.resourceGroup.description\">\n <ng-container *ngIf=\"(colSpan$ | async) as colspan\">\n <td class=\"p-2 cursor-pointer\" [colSpan]=\"colspan + 1\" (click)=\"toggleExpanded()\">\n <span class=\"p-2 align-middle position-sticky\">\n <i class=\"bi bi-chevron-down\" [style.padding-left.px]=\"level * 20\" *ngIf=\"isExpanded$ | async\"></i>\n <i class=\"bi bi-chevron-right\" [style.padding-left.px]=\"level * 20\" *ngIf=\"(isExpanded$ | async) === false\"></i>\n {{ data.resourceGroup.description }}\n </span>\n </td>\n </ng-container>\n </tr>\n\n <!-- Subgroups or resources -->\n <ng-container *ngIf=\"isExpanded$ | async\">\n <ng-container *ngIf=\"(timeSlots$ | async) as timeSlots\">\n <ng-container *ngFor=\"let child of data.resourceGroup.children\">\n <bs-resource-group-presenter [resourceGroup]=\"child\" [timeSlots]=\"timeSlots\" [level]=\"level + 1\"></bs-resource-group-presenter>\n </ng-container>\n </ng-container>\n </ng-container>\n </ng-container>\n\n <!-- Data is a resource -->\n <tr *ngIf=\"data.resource\" class=\"p-0 bordered\" [title]=\"data.resource.description\">\n <td class=\"p-0 bg-white\">\n <div class=\"p-2\">{{ data.resource.description }}</div>\n </td>\n <ng-container *ngFor=\"let slots of (timeSlots$ | async)\">\n <td class=\"bg-white border-1\" *ngFor=\"let slot of slots.slots\">\n <!-- {{ slot.start | date: 'dd/MM/yyyy HH:mm:ss' }} -->\n </td>\n </ng-container>\n </tr>\n</ng-container>", styles: [":host{display:contents}tr{border-bottom-width:1px}tr:not(.bordered) td span.position-sticky{left:0;right:0}\n"] }]
75
+ }], ctorParameters: function () { return []; }, propDecorators: { level: [{
76
+ type: Input
77
+ }], resourceGroup: [{
78
+ type: Input
79
+ }], timeSlots: [{
80
+ type: Input
81
+ }], isExpanded: [{
82
+ type: Input
83
+ }] } });
84
+ //# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoicmVzb3VyY2UtZ3JvdXAtcHJlc2VudGVyLmNvbXBvbmVudC5qcyIsInNvdXJjZVJvb3QiOiIiLCJzb3VyY2VzIjpbIi4uLy4uLy4uLy4uLy4uLy4uLy4uLy4uLy4uL2xpYnMvbWludHBsYXllci1uZy1ib290c3RyYXAvc3JjL2xpYi9jb21wb25lbnRzL3NjaGVkdWxlci9jb21wb25lbnRzL3Jlc291cmNlLWdyb3VwLXByZXNlbnRlci9yZXNvdXJjZS1ncm91cC1wcmVzZW50ZXIuY29tcG9uZW50LnRzIiwiLi4vLi4vLi4vLi4vLi4vLi4vLi4vLi4vLi4vbGlicy9taW50cGxheWVyLW5nLWJvb3RzdHJhcC9zcmMvbGliL2NvbXBvbmVudHMvc2NoZWR1bGVyL2NvbXBvbmVudHMvcmVzb3VyY2UtZ3JvdXAtcHJlc2VudGVyL3Jlc291cmNlLWdyb3VwLXByZXNlbnRlci5jb21wb25lbnQuaHRtbCJdLCJuYW1lcyI6W10sIm1hcHBpbmdzIjoiQUFBQSxPQUFPLEVBQUUsU0FBUyxFQUFFLEtBQUssRUFBYSxNQUFNLGVBQWUsQ0FBQztBQUM1RCxPQUFPLEVBQUUsZUFBZSxFQUFFLE1BQU0sRUFBRSxHQUFHLEVBQWMsT0FBTyxFQUFFLElBQUksRUFBYSxNQUFNLE1BQU0sQ0FBQzs7O0FBWTFGLE1BQU0sT0FBTywrQkFBK0I7SUFFMUM7UUEyQlMsVUFBSyxHQUFHLENBQUMsQ0FBQztRQUNuQixxQkFBZ0IsR0FBRyxJQUFJLGVBQWUsQ0FBa0MsSUFBSSxDQUFDLENBQUM7UUFDOUUsZUFBVSxHQUFHLElBQUksZUFBZSxDQUE0QixFQUFFLENBQUMsQ0FBQztRQUNoRSxnQkFBVyxHQUFHLElBQUksZUFBZSxDQUFVLEtBQUssQ0FBQyxDQUFDO1FBR2xELGVBQVUsR0FBRyxJQUFJLE9BQU8sRUFBRSxDQUFDO1FBaEN6QixJQUFJLENBQUMsS0FBSyxHQUFHLElBQUksQ0FBQyxnQkFBZ0I7YUFDL0IsSUFBSSxDQUFDLEdBQUcsQ0FBQyxDQUFDLGVBQWUsRUFBRSxFQUFFO1lBQzVCLElBQUksQ0FBQyxlQUFlLEVBQUU7Z0JBQ3BCLE9BQU8sSUFBSSxDQUFDO2FBQ2I7aUJBQU0sSUFBSSxVQUFVLElBQUksZUFBZSxFQUFFO2dCQUN4QyxPQUF3QjtvQkFDdEIsUUFBUSxFQUFFLElBQUk7b0JBQ2QsYUFBYSxFQUFFLGVBQWU7aUJBQy9CLENBQUM7YUFDSDtpQkFBTTtnQkFDTCxPQUF3QjtvQkFDdEIsUUFBUSxFQUFFLGVBQWU7b0JBQ3pCLGFBQWEsRUFBRSxJQUFJO2lCQUNwQixDQUFDO2FBQ0g7UUFDSCxDQUFDLENBQUMsQ0FBQzthQUNGLElBQUksQ0FBQyxNQUFNLENBQUMsQ0FBQyxlQUFlLEVBQUUsRUFBRSxDQUFDLENBQUMsQ0FBQyxlQUFlLENBQUMsQ0FBQzthQUNwRCxJQUFJLENBQUMsR0FBRyxDQUFDLENBQUMsZUFBZSxFQUFFLEVBQUUsQ0FBa0IsZUFBZSxDQUFDLENBQUMsQ0FBQztRQUVwRSxJQUFJLENBQUMsUUFBUSxHQUFHLElBQUksQ0FBQyxVQUFVO2FBQzVCLElBQUksQ0FBQyxHQUFHLENBQUMsU0FBUyxDQUFDLEVBQUUsQ0FBQyxTQUFTO2FBQzdCLEdBQUcsQ0FBQyxRQUFRLENBQUMsRUFBRSxDQUFDLFFBQVEsQ0FBQyxLQUFLLENBQUMsTUFBTSxDQUFDO2FBQ3RDLE1BQU0sQ0FBQyxDQUFDLEdBQUcsRUFBRSxPQUFPLEVBQUUsRUFBRSxDQUFDLEdBQUcsR0FBRyxPQUFPLEVBQUUsQ0FBQyxDQUFDLENBQzVDLENBQUMsQ0FBQztJQUNQLENBQUM7SUFVRCx5QkFBeUI7SUFDekIsSUFBVyxlQUFlO1FBQ3hCLE9BQU8sSUFBSSxDQUFDLGdCQUFnQixDQUFDLEtBQUssQ0FBQztJQUNyQyxDQUFDO0lBQ0QsSUFBb0IsYUFBYSxDQUFDLEtBQXNDO1FBQ3RFLElBQUksQ0FBQyxnQkFBZ0IsQ0FBQyxJQUFJLENBQUMsS0FBSyxDQUFDLENBQUM7SUFDcEMsQ0FBQztJQUNELFlBQVk7SUFFWixtQkFBbUI7SUFDbkIsSUFBVyxTQUFTO1FBQ2xCLE9BQU8sSUFBSSxDQUFDLFVBQVUsQ0FBQyxLQUFLLENBQUM7SUFDL0IsQ0FBQztJQUNELElBQW9CLFNBQVMsQ0FBQyxLQUFnQztRQUM1RCxJQUFJLENBQUMsVUFBVSxDQUFDLElBQUksQ0FBQyxLQUFLLENBQUMsQ0FBQztJQUM5QixDQUFDO0lBQ0QsWUFBWTtJQUVaLG9CQUFvQjtJQUNwQixJQUFXLFVBQVU7UUFDbkIsT0FBTyxJQUFJLENBQUMsV0FBVyxDQUFDLEtBQUssQ0FBQztJQUNoQyxDQUFDO0lBQ0QsSUFBb0IsVUFBVSxDQUFDLEtBQWM7UUFDM0MsSUFBSSxDQUFDLFdBQVcsQ0FBQyxJQUFJLENBQUMsS0FBSyxDQUFDLENBQUM7SUFDL0IsQ0FBQztJQUNELFlBQVk7SUFFWixjQUFjO1FBQ1osSUFBSSxDQUFDLFdBQVcsQ0FBQyxJQUFJLENBQUMsSUFBSSxDQUFDLENBQUMsQ0FBQyxDQUFDLENBQUMsU0FBUyxDQUFDLENBQUMsVUFBVSxFQUFFLEVBQUU7WUFDdEQsSUFBSSxDQUFDLFdBQVcsQ0FBQyxJQUFJLENBQUMsQ0FBQyxVQUFVLENBQUMsQ0FBQztRQUNyQyxDQUFDLENBQUMsQ0FBQztJQUNMLENBQUM7SUFFRCxXQUFXO1FBQ1QsSUFBSSxDQUFDLFVBQVUsQ0FBQyxJQUFJLENBQUMsSUFBSSxDQUFDLENBQUM7SUFDN0IsQ0FBQzs7NEhBeEVVLCtCQUErQjtnSEFBL0IsK0JBQStCLGlMQ2I1QyxvL0RBc0NlLGtKRHpCRiwrQkFBK0I7MkZBQS9CLCtCQUErQjtrQkFOM0MsU0FBUzsrQkFDRSw2QkFBNkI7MEVBa0M5QixLQUFLO3NCQUFiLEtBQUs7Z0JBWWMsYUFBYTtzQkFBaEMsS0FBSztnQkFTYyxTQUFTO3NCQUE1QixLQUFLO2dCQVNjLFVBQVU7c0JBQTdCLEtBQUsiLCJzb3VyY2VzQ29udGVudCI6WyJpbXBvcnQgeyBDb21wb25lbnQsIElucHV0LCBPbkRlc3Ryb3kgfSBmcm9tICdAYW5ndWxhci9jb3JlJztcbmltcG9ydCB7IEJlaGF2aW9yU3ViamVjdCwgZmlsdGVyLCBtYXAsIE9ic2VydmFibGUsIFN1YmplY3QsIHRha2UsIHRha2VVbnRpbCB9IGZyb20gJ3J4anMnO1xuaW1wb3J0IHsgUmVzb3VyY2UsIFJlc291cmNlR3JvdXAgfSBmcm9tICcuLi8uLi9pbnRlcmZhY2VzJztcbmltcG9ydCB7IFJlc291cmNlT3JHcm91cCB9IGZyb20gJy4uLy4uL2ludGVyZmFjZXMvcmVzb3VyY2Utb3ItZ3JvdXAnO1xuaW1wb3J0IHsgU2NoZWR1bGVyU3RhbXBXaXRoU2xvdHMgfSBmcm9tICcuLi8uLi9pbnRlcmZhY2VzL3NjaGVkdWxlci1zdGFtcC13aXRoLXNsb3RzJztcbmltcG9ydCB7IFRpbWVTbG90IH0gZnJvbSAnLi4vLi4vaW50ZXJmYWNlcy90aW1lLXNsb3QnO1xuXG5AQ29tcG9uZW50KHtcbiAgc2VsZWN0b3I6ICdicy1yZXNvdXJjZS1ncm91cC1wcmVzZW50ZXInLFxuICB0ZW1wbGF0ZVVybDogJy4vcmVzb3VyY2UtZ3JvdXAtcHJlc2VudGVyLmNvbXBvbmVudC5odG1sJyxcbiAgc3R5bGVVcmxzOiBbJy4vcmVzb3VyY2UtZ3JvdXAtcHJlc2VudGVyLmNvbXBvbmVudC5zY3NzJ10sXG4gIFxufSlcbmV4cG9ydCBjbGFzcyBSZXNvdXJjZUdyb3VwUHJlc2VudGVyQ29tcG9uZW50IGltcGxlbWVudHMgT25EZXN0cm95IHtcbiAgXG4gIGNvbnN0cnVjdG9yKCkge1xuICAgIHRoaXMuZGF0YSQgPSB0aGlzLnJlc291cmNlT3JHcm91cCRcbiAgICAgIC5waXBlKG1hcCgocmVzb3VyY2VPckdyb3VwKSA9PiB7XG4gICAgICAgIGlmICghcmVzb3VyY2VPckdyb3VwKSB7XG4gICAgICAgICAgcmV0dXJuIG51bGw7XG4gICAgICAgIH0gZWxzZSBpZiAoJ2NoaWxkcmVuJyBpbiByZXNvdXJjZU9yR3JvdXApIHtcbiAgICAgICAgICByZXR1cm4gPFJlc291cmNlT3JHcm91cD57XG4gICAgICAgICAgICByZXNvdXJjZTogbnVsbCxcbiAgICAgICAgICAgIHJlc291cmNlR3JvdXA6IHJlc291cmNlT3JHcm91cFxuICAgICAgICAgIH07XG4gICAgICAgIH0gZWxzZSB7XG4gICAgICAgICAgcmV0dXJuIDxSZXNvdXJjZU9yR3JvdXA+e1xuICAgICAgICAgICAgcmVzb3VyY2U6IHJlc291cmNlT3JHcm91cCxcbiAgICAgICAgICAgIHJlc291cmNlR3JvdXA6IG51bGxcbiAgICAgICAgICB9O1xuICAgICAgICB9XG4gICAgICB9KSlcbiAgICAgIC5waXBlKGZpbHRlcigocmVzb3VyY2VPckdyb3VwKSA9PiAhIXJlc291cmNlT3JHcm91cCkpXG4gICAgICAucGlwZShtYXAoKHJlc291cmNlT3JHcm91cCkgPT4gPFJlc291cmNlT3JHcm91cD5yZXNvdXJjZU9yR3JvdXApKTtcblxuICAgIHRoaXMuY29sU3BhbiQgPSB0aGlzLnRpbWVTbG90cyRcbiAgICAgIC5waXBlKG1hcCh0aW1lU2xvdHMgPT4gdGltZVNsb3RzXG4gICAgICAgIC5tYXAodGltZXNsb3QgPT4gdGltZXNsb3Quc2xvdHMubGVuZ3RoKVxuICAgICAgICAucmVkdWNlKChzdW0sIGN1cnJlbnQpID0+IHN1bSArIGN1cnJlbnQsIDApXG4gICAgICApKTtcbiAgfVxuXG4gIEBJbnB1dCgpIGxldmVsID0gMDtcbiAgcmVzb3VyY2VPckdyb3VwJCA9IG5ldyBCZWhhdmlvclN1YmplY3Q8UmVzb3VyY2UgfCBSZXNvdXJjZUdyb3VwIHwgbnVsbD4obnVsbCk7XG4gIHRpbWVTbG90cyQgPSBuZXcgQmVoYXZpb3JTdWJqZWN0PFNjaGVkdWxlclN0YW1wV2l0aFNsb3RzW10+KFtdKTtcbiAgaXNFeHBhbmRlZCQgPSBuZXcgQmVoYXZpb3JTdWJqZWN0PGJvb2xlYW4+KGZhbHNlKTtcbiAgZGF0YSQ6IE9ic2VydmFibGU8UmVzb3VyY2VPckdyb3VwPjtcbiAgY29sU3BhbiQ6IE9ic2VydmFibGU8bnVtYmVyPjtcbiAgZGVzdHJveWVkJCA9IG5ldyBTdWJqZWN0KCk7XG5cbiAgLy8jcmVnaW9uIHJlc291cmNlT3JHcm91cFxuICBwdWJsaWMgZ2V0IHJlc291cmNlT3JHcm91cCgpIHtcbiAgICByZXR1cm4gdGhpcy5yZXNvdXJjZU9yR3JvdXAkLnZhbHVlO1xuICB9XG4gIEBJbnB1dCgpIHB1YmxpYyBzZXQgcmVzb3VyY2VHcm91cCh2YWx1ZTogUmVzb3VyY2UgfCBSZXNvdXJjZUdyb3VwIHwgbnVsbCkge1xuICAgIHRoaXMucmVzb3VyY2VPckdyb3VwJC5uZXh0KHZhbHVlKTtcbiAgfVxuICAvLyNlbmRyZWdpb25cblxuICAvLyNyZWdpb24gdGltZVNsb3RzXG4gIHB1YmxpYyBnZXQgdGltZVNsb3RzKCkge1xuICAgIHJldHVybiB0aGlzLnRpbWVTbG90cyQudmFsdWU7XG4gIH1cbiAgQElucHV0KCkgcHVibGljIHNldCB0aW1lU2xvdHModmFsdWU6IFNjaGVkdWxlclN0YW1wV2l0aFNsb3RzW10pIHtcbiAgICB0aGlzLnRpbWVTbG90cyQubmV4dCh2YWx1ZSk7XG4gIH1cbiAgLy8jZW5kcmVnaW9uXG5cbiAgLy8jcmVnaW9uIGlzRXhwYW5kZWRcbiAgcHVibGljIGdldCBpc0V4cGFuZGVkKCkge1xuICAgIHJldHVybiB0aGlzLmlzRXhwYW5kZWQkLnZhbHVlO1xuICB9XG4gIEBJbnB1dCgpIHB1YmxpYyBzZXQgaXNFeHBhbmRlZCh2YWx1ZTogYm9vbGVhbikge1xuICAgIHRoaXMuaXNFeHBhbmRlZCQubmV4dCh2YWx1ZSk7XG4gIH1cbiAgLy8jZW5kcmVnaW9uXG5cbiAgdG9nZ2xlRXhwYW5kZWQoKSB7XG4gICAgdGhpcy5pc0V4cGFuZGVkJC5waXBlKHRha2UoMSkpLnN1YnNjcmliZSgoaXNFeHBhbmRlZCkgPT4ge1xuICAgICAgdGhpcy5pc0V4cGFuZGVkJC5uZXh0KCFpc0V4cGFuZGVkKTtcbiAgICB9KTtcbiAgfVxuXG4gIG5nT25EZXN0cm95KCkge1xuICAgIHRoaXMuZGVzdHJveWVkJC5uZXh0KHRydWUpO1xuICB9XG5cbn1cbiIsIjxuZy1jb250YWluZXIgKm5nSWY9XCIoZGF0YSQgfCBhc3luYykgYXMgZGF0YVwiPlxuXG4gICAgPCEtLSBEYXRhIGlzIGEgcmVzb3VyY2UgZ3JvdXAgLS0+XG4gICAgPG5nLWNvbnRhaW5lciAqbmdJZj1cImRhdGEucmVzb3VyY2VHcm91cFwiPlxuICAgICAgICA8IS0tIEhlYWRlciAtLT5cbiAgICAgICAgPHRyIGNsYXNzPVwicC0wIGN1cnNvci1wb2ludGVyXCIgKm5nSWY9XCIodGltZVNsb3RzJCB8IGFzeW5jKSBhcyB0aW1lU2xvdHNcIiBbdGl0bGVdPVwiZGF0YS5yZXNvdXJjZUdyb3VwLmRlc2NyaXB0aW9uXCI+XG4gICAgICAgICAgICA8bmctY29udGFpbmVyICpuZ0lmPVwiKGNvbFNwYW4kIHwgYXN5bmMpIGFzIGNvbHNwYW5cIj5cbiAgICAgICAgICAgICAgICA8dGQgY2xhc3M9XCJwLTIgY3Vyc29yLXBvaW50ZXJcIiBbY29sU3Bhbl09XCJjb2xzcGFuICsgMVwiIChjbGljayk9XCJ0b2dnbGVFeHBhbmRlZCgpXCI+XG4gICAgICAgICAgICAgICAgICAgIDxzcGFuIGNsYXNzPVwicC0yIGFsaWduLW1pZGRsZSBwb3NpdGlvbi1zdGlja3lcIj5cbiAgICAgICAgICAgICAgICAgICAgICAgIDxpIGNsYXNzPVwiYmkgYmktY2hldnJvbi1kb3duXCIgW3N0eWxlLnBhZGRpbmctbGVmdC5weF09XCJsZXZlbCAqIDIwXCIgKm5nSWY9XCJpc0V4cGFuZGVkJCB8IGFzeW5jXCI+PC9pPlxuICAgICAgICAgICAgICAgICAgICAgICAgPGkgY2xhc3M9XCJiaSBiaS1jaGV2cm9uLXJpZ2h0XCIgW3N0eWxlLnBhZGRpbmctbGVmdC5weF09XCJsZXZlbCAqIDIwXCIgKm5nSWY9XCIoaXNFeHBhbmRlZCQgfCBhc3luYykgPT09IGZhbHNlXCI+PC9pPlxuICAgICAgICAgICAgICAgICAgICAgICAge3sgZGF0YS5yZXNvdXJjZUdyb3VwLmRlc2NyaXB0aW9uIH19XG4gICAgICAgICAgICAgICAgICAgIDwvc3Bhbj5cbiAgICAgICAgICAgICAgICA8L3RkPlxuICAgICAgICAgICAgPC9uZy1jb250YWluZXI+XG4gICAgICAgIDwvdHI+XG5cbiAgICAgICAgPCEtLSBTdWJncm91cHMgb3IgcmVzb3VyY2VzIC0tPlxuICAgICAgICA8bmctY29udGFpbmVyICpuZ0lmPVwiaXNFeHBhbmRlZCQgfCBhc3luY1wiPlxuICAgICAgICAgICAgPG5nLWNvbnRhaW5lciAqbmdJZj1cIih0aW1lU2xvdHMkIHwgYXN5bmMpIGFzIHRpbWVTbG90c1wiPlxuICAgICAgICAgICAgICAgIDxuZy1jb250YWluZXIgKm5nRm9yPVwibGV0IGNoaWxkIG9mIGRhdGEucmVzb3VyY2VHcm91cC5jaGlsZHJlblwiPlxuICAgICAgICAgICAgICAgICAgICA8YnMtcmVzb3VyY2UtZ3JvdXAtcHJlc2VudGVyIFtyZXNvdXJjZUdyb3VwXT1cImNoaWxkXCIgW3RpbWVTbG90c109XCJ0aW1lU2xvdHNcIiBbbGV2ZWxdPVwibGV2ZWwgKyAxXCI+PC9icy1yZXNvdXJjZS1ncm91cC1wcmVzZW50ZXI+XG4gICAgICAgICAgICAgICAgPC9uZy1jb250YWluZXI+XG4gICAgICAgICAgICA8L25nLWNvbnRhaW5lcj5cbiAgICAgICAgPC9uZy1jb250YWluZXI+XG4gICAgPC9uZy1jb250YWluZXI+XG5cbiAgICA8IS0tIERhdGEgaXMgYSByZXNvdXJjZSAtLT5cbiAgICA8dHIgKm5nSWY9XCJkYXRhLnJlc291cmNlXCIgY2xhc3M9XCJwLTAgYm9yZGVyZWRcIiBbdGl0bGVdPVwiZGF0YS5yZXNvdXJjZS5kZXNjcmlwdGlvblwiPlxuICAgICAgICA8dGQgY2xhc3M9XCJwLTAgYmctd2hpdGVcIj5cbiAgICAgICAgICAgIDxkaXYgY2xhc3M9XCJwLTJcIj57eyBkYXRhLnJlc291cmNlLmRlc2NyaXB0aW9uIH19PC9kaXY+XG4gICAgICAgIDwvdGQ+XG4gICAgICAgIDxuZy1jb250YWluZXIgKm5nRm9yPVwibGV0IHNsb3RzIG9mICh0aW1lU2xvdHMkIHwgYXN5bmMpXCI+XG4gICAgICAgICAgICA8dGQgY2xhc3M9XCJiZy13aGl0ZSBib3JkZXItMVwiICpuZ0Zvcj1cImxldCBzbG90IG9mIHNsb3RzLnNsb3RzXCI+XG4gICAgICAgICAgICAgICAgPCEtLSB7eyBzbG90LnN0YXJ0IHwgZGF0ZTogJ2RkL01NL3l5eXkgSEg6bW06c3MnIH19IC0tPlxuICAgICAgICAgICAgPC90ZD5cbiAgICAgICAgPC9uZy1jb250YWluZXI+XG4gICAgPC90cj5cbjwvbmctY29udGFpbmVyPiJdfQ==