@gipisistemas/ng-core 1.1.3 → 1.1.5

Sign up to get free protection for your applications and to get access to all the features.
Files changed (99) hide show
  1. package/assets/styles/colors.scss +5 -1
  2. package/bundles/gipisistemas-ng-core.umd.js +2098 -1285
  3. package/bundles/gipisistemas-ng-core.umd.js.map +1 -1
  4. package/bundles/gipisistemas-ng-core.umd.min.js +10 -9
  5. package/bundles/gipisistemas-ng-core.umd.min.js.map +1 -1
  6. package/core/gipi-components/models/sort.model.d.ts +3 -3
  7. package/core/utils/array.util.d.ts +2 -2
  8. package/core/utils/object.util.d.ts +3 -5
  9. package/core/utils/string.util.d.ts +4 -0
  10. package/esm2015/core/gipi-components/models/sort.model.js +1 -1
  11. package/esm2015/core/gipi-components/services/abstract-crud.service.js +18 -24
  12. package/esm2015/core/utils/array.util.js +4 -2
  13. package/esm2015/core/utils/object.util.js +5 -9
  14. package/esm2015/core/utils/string.util.js +27 -1
  15. package/esm2015/gipi-components.js +11 -1
  16. package/esm2015/shared/components/input/input.component.js +46 -23
  17. package/esm2015/shared/components/select-entity-paged/shared/select-search/select-search.component.js +2 -2
  18. package/esm2015/shared/components/table/table.component.js +1 -1
  19. package/esm2015/shared/gipi-components/abstract-form/abstract-form.component.js +1 -1
  20. package/esm2015/shared/gipi-components/button/button.component.js +18 -2
  21. package/esm2015/shared/gipi-components/card/card.component.js +113 -0
  22. package/esm2015/shared/gipi-components/datepicker/datepicker/datepicker.component.js +8 -3
  23. package/esm2015/shared/gipi-components/empty-state/empty-state.component.js +30 -0
  24. package/esm2015/shared/gipi-components/input-select-paged/input-search/input-search.component.js +2 -2
  25. package/esm2015/shared/gipi-components/layout-grid/col.directive.js +4 -4
  26. package/esm2015/shared/gipi-components/month-year-picker/month-year-picker.component.js +2 -2
  27. package/esm2015/shared/gipi-components/notification/notification.component.js +8 -3
  28. package/esm2015/shared/gipi-components/popover/shared/popover-trigger.js +4 -4
  29. package/esm2015/shared/gipi-components/sidebar/sidenav/sidenav.component.js +35 -3
  30. package/esm2015/shared/gipi-components/slide-toggle/slide-toggle.component.js +113 -0
  31. package/esm2015/shared/gipi-components/split-button/split-button.component.js +243 -0
  32. package/esm2015/shared/gipi-components/tabs/shared/dynamic-tab.directive.js +18 -0
  33. package/esm2015/shared/gipi-components/tabs/shared/tab.model.js +8 -0
  34. package/esm2015/shared/gipi-components/tabs/tab/tab.component.js +66 -0
  35. package/esm2015/shared/gipi-components/tabs/tab-group/tab-group.component.js +123 -0
  36. package/esm2015/shared/gipi-components/textarea/textarea.component.js +298 -0
  37. package/esm2015/shared/shared.module.js +22 -16
  38. package/esm2015/shared.js +1 -5
  39. package/esm5/core/gipi-components/models/sort.model.js +1 -1
  40. package/esm5/core/gipi-components/services/abstract-crud.service.js +18 -24
  41. package/esm5/core/utils/array.util.js +4 -3
  42. package/esm5/core/utils/object.util.js +5 -9
  43. package/esm5/core/utils/string.util.js +27 -1
  44. package/esm5/gipi-components.js +11 -1
  45. package/esm5/shared/components/input/input.component.js +46 -23
  46. package/esm5/shared/components/select-entity-paged/shared/select-search/select-search.component.js +2 -2
  47. package/esm5/shared/components/table/table.component.js +1 -1
  48. package/esm5/shared/gipi-components/abstract-form/abstract-form.component.js +1 -1
  49. package/esm5/shared/gipi-components/button/button.component.js +22 -2
  50. package/esm5/shared/gipi-components/card/card.component.js +135 -0
  51. package/esm5/shared/gipi-components/datepicker/datepicker/datepicker.component.js +8 -3
  52. package/esm5/shared/gipi-components/empty-state/empty-state.component.js +33 -0
  53. package/esm5/shared/gipi-components/input-select-paged/input-search/input-search.component.js +2 -2
  54. package/esm5/shared/gipi-components/layout-grid/col.directive.js +4 -4
  55. package/esm5/shared/gipi-components/month-year-picker/month-year-picker.component.js +2 -2
  56. package/esm5/shared/gipi-components/notification/notification.component.js +8 -3
  57. package/esm5/shared/gipi-components/popover/shared/popover-trigger.js +4 -4
  58. package/esm5/shared/gipi-components/sidebar/sidenav/sidenav.component.js +35 -3
  59. package/esm5/shared/gipi-components/slide-toggle/slide-toggle.component.js +127 -0
  60. package/esm5/shared/gipi-components/split-button/split-button.component.js +249 -0
  61. package/esm5/shared/gipi-components/tabs/shared/dynamic-tab.directive.js +19 -0
  62. package/esm5/shared/gipi-components/tabs/shared/tab.model.js +10 -0
  63. package/esm5/shared/gipi-components/tabs/tab/tab.component.js +67 -0
  64. package/esm5/shared/gipi-components/tabs/tab-group/tab-group.component.js +131 -0
  65. package/esm5/shared/gipi-components/textarea/textarea.component.js +352 -0
  66. package/esm5/shared/shared.module.js +22 -16
  67. package/esm5/shared.js +1 -5
  68. package/fesm2015/gipisistemas-ng-core.js +1991 -1274
  69. package/fesm2015/gipisistemas-ng-core.js.map +1 -1
  70. package/fesm5/gipisistemas-ng-core.js +2088 -1281
  71. package/fesm5/gipisistemas-ng-core.js.map +1 -1
  72. package/gipi-components.d.ts +9 -0
  73. package/gipisistemas-ng-core.metadata.json +1 -1
  74. package/package.json +1 -2
  75. package/shared/components/input/input.component.d.ts +13 -11
  76. package/shared/components/table/table.component.d.ts +3 -3
  77. package/shared/gipi-components/button/button.component.d.ts +14 -0
  78. package/shared/gipi-components/card/card.component.d.ts +23 -0
  79. package/shared/gipi-components/empty-state/empty-state.component.d.ts +5 -0
  80. package/shared/gipi-components/notification/notification.component.d.ts +1 -0
  81. package/shared/gipi-components/sidebar/sidenav/sidenav.component.d.ts +7 -0
  82. package/shared/gipi-components/slide-toggle/slide-toggle.component.d.ts +27 -0
  83. package/shared/gipi-components/split-button/split-button.component.d.ts +60 -0
  84. package/shared/{directives → gipi-components/tabs/shared}/dynamic-tab.directive.d.ts +1 -1
  85. package/shared/gipi-components/tabs/shared/tab.model.d.ts +12 -0
  86. package/shared/{components → gipi-components/tabs}/tab/tab.component.d.ts +4 -2
  87. package/shared/gipi-components/tabs/tab-group/tab-group.component.d.ts +22 -0
  88. package/shared/gipi-components/textarea/textarea.component.d.ts +68 -0
  89. package/shared.d.ts +0 -4
  90. package/esm2015/shared/components/select-button/select-button.component.js +0 -181
  91. package/esm2015/shared/components/tab/tab.component.js +0 -57
  92. package/esm2015/shared/components/tab-group/tab-group.component.js +0 -117
  93. package/esm2015/shared/directives/dynamic-tab.directive.js +0 -18
  94. package/esm5/shared/components/select-button/select-button.component.js +0 -195
  95. package/esm5/shared/components/tab/tab.component.js +0 -58
  96. package/esm5/shared/components/tab-group/tab-group.component.js +0 -125
  97. package/esm5/shared/directives/dynamic-tab.directive.js +0 -19
  98. package/shared/components/select-button/select-button.component.d.ts +0 -35
  99. package/shared/components/tab-group/tab-group.component.d.ts +0 -22
@@ -0,0 +1,249 @@
1
+ import { __decorate, __metadata } from "tslib";
2
+ import { animate, state, style, transition, trigger } from '@angular/animations';
3
+ import { Component, ElementRef, EventEmitter, forwardRef, HostListener, Input, OnInit, Output, ViewChild } from '@angular/core';
4
+ import { NG_VALUE_ACCESSOR } from '@angular/forms';
5
+ import { GIPIPopoverTrigger } from '../popover/shared/popover-trigger';
6
+ import { ObjectUtil } from './../../../core/utils/object.util';
7
+ var nextUniqueId = 0;
8
+ var GIPISplitButtonComponent = /** @class */ (function () {
9
+ function GIPISplitButtonComponent(elementRef) {
10
+ this.elementRef = elementRef;
11
+ this._uniqueId = nextUniqueId++;
12
+ this._name = "gipi-split-button-" + this._uniqueId;
13
+ this.idBtnDefault = "gipi-split-button-default-" + this._uniqueId;
14
+ this.idBtnMenu = "gipi-split-button-menu-" + this._uniqueId;
15
+ this.isSplitButtonPrimary = this._hasHostAttributes('gipi-primary');
16
+ this.isSplitButtonSecondary = this._hasHostAttributes('gipi-secondary');
17
+ this.isSplitButtonTertiary = this._hasHostAttributes('gipi-tertiary');
18
+ this.isSplitButtonAction = this._hasHostAttributes('gipi-action');
19
+ this.id = this._name;
20
+ this.name = this._name;
21
+ this.type = 'button';
22
+ this.ariaLabel = '';
23
+ this.title = '';
24
+ this.label = '';
25
+ this.disabled = false;
26
+ this.loading = false;
27
+ this.tooltip = '';
28
+ this.splitOptions = [];
29
+ this.onOpenPopover = new EventEmitter();
30
+ this.onClosePopover = new EventEmitter();
31
+ this.onClick = new EventEmitter(true);
32
+ this.onFocus = new EventEmitter(true);
33
+ this.onBlur = new EventEmitter(true);
34
+ }
35
+ GIPISplitButtonComponent_1 = GIPISplitButtonComponent;
36
+ GIPISplitButtonComponent.prototype.ngOnInit = function () { };
37
+ GIPISplitButtonComponent.prototype.ngOnDestroy = function () {
38
+ if (this.popoverTrigger) {
39
+ this.popoverTrigger.destroyPopover();
40
+ }
41
+ };
42
+ GIPISplitButtonComponent.prototype.getHostElement = function () {
43
+ return this.elementRef.nativeElement;
44
+ };
45
+ GIPISplitButtonComponent.prototype._hasHostAttributes = function () {
46
+ var _this = this;
47
+ var attributes = [];
48
+ for (var _i = 0; _i < arguments.length; _i++) {
49
+ attributes[_i] = arguments[_i];
50
+ }
51
+ return attributes.some(function (attribute) { return _this.getHostElement().hasAttribute(attribute); });
52
+ };
53
+ GIPISplitButtonComponent.prototype.btnIdAndName = function () {
54
+ var uniqueId = nextUniqueId++;
55
+ return {
56
+ btnDefault: "gipi-split-button-default-" + uniqueId,
57
+ btnMenu: "gipi-split-button-menu-" + uniqueId,
58
+ };
59
+ };
60
+ GIPISplitButtonComponent.prototype.getInternalButtonClass = function (isBtnDefault) {
61
+ return {
62
+ 'button-default': isBtnDefault,
63
+ 'button-menu': !isBtnDefault,
64
+ 'button-primary': this.isSplitButtonPrimary,
65
+ 'button-secondary': this.isSplitButtonSecondary,
66
+ 'button-tertiary': this.isSplitButtonTertiary,
67
+ 'button-action': this.isSplitButtonAction,
68
+ };
69
+ };
70
+ GIPISplitButtonComponent.prototype.showPopover = function () {
71
+ if (this.disabled || this.loading) {
72
+ return;
73
+ }
74
+ else {
75
+ this.popoverTrigger.openPopover();
76
+ }
77
+ };
78
+ GIPISplitButtonComponent.prototype.closePopover = function () {
79
+ if (this.disabled || this.loading) {
80
+ return;
81
+ }
82
+ else {
83
+ this.popoverTrigger.closePopover();
84
+ }
85
+ };
86
+ GIPISplitButtonComponent.prototype.handleClick = function (event) {
87
+ if (this.disabled || this.loading) {
88
+ return;
89
+ }
90
+ else {
91
+ this.onClick.emit(event);
92
+ this.closePopover();
93
+ event.stopPropagation();
94
+ }
95
+ };
96
+ GIPISplitButtonComponent.prototype.handleFocus = function (event) {
97
+ if (this.disabled || this.loading) {
98
+ return;
99
+ }
100
+ else {
101
+ this.onFocus.emit(event);
102
+ event.stopPropagation();
103
+ }
104
+ };
105
+ GIPISplitButtonComponent.prototype.handleBlur = function (event) {
106
+ if (this.disabled || this.loading) {
107
+ return;
108
+ }
109
+ else {
110
+ this.onBlur.emit(event);
111
+ event.stopPropagation();
112
+ }
113
+ };
114
+ GIPISplitButtonComponent.prototype.handleClickBtnMenu = function (event) {
115
+ if (this.disabled || this.loading) {
116
+ return;
117
+ }
118
+ else {
119
+ if (!ObjectUtil.isNull(this.popoverTrigger)) {
120
+ this.popoverTrigger.togglePopover();
121
+ }
122
+ event.stopPropagation();
123
+ }
124
+ };
125
+ GIPISplitButtonComponent.prototype.handleClickBtnSplitOption = function (option) {
126
+ if (this.disabled || this.loading || !option || option.disabled || !option.clickFn) {
127
+ return;
128
+ }
129
+ else {
130
+ option.clickFn();
131
+ this.closePopover();
132
+ }
133
+ };
134
+ GIPISplitButtonComponent.prototype.onResize = function (event) {
135
+ if (this.popoverTrigger) {
136
+ this.popoverTrigger.closePopover();
137
+ event.stopPropagation();
138
+ }
139
+ };
140
+ var GIPISplitButtonComponent_1;
141
+ GIPISplitButtonComponent.ctorParameters = function () { return [
142
+ { type: ElementRef }
143
+ ]; };
144
+ __decorate([
145
+ ViewChild(GIPIPopoverTrigger, { static: false }),
146
+ __metadata("design:type", GIPIPopoverTrigger)
147
+ ], GIPISplitButtonComponent.prototype, "popoverTrigger", void 0);
148
+ __decorate([
149
+ Input(),
150
+ __metadata("design:type", String)
151
+ ], GIPISplitButtonComponent.prototype, "id", void 0);
152
+ __decorate([
153
+ Input(),
154
+ __metadata("design:type", String)
155
+ ], GIPISplitButtonComponent.prototype, "name", void 0);
156
+ __decorate([
157
+ Input(),
158
+ __metadata("design:type", String)
159
+ ], GIPISplitButtonComponent.prototype, "type", void 0);
160
+ __decorate([
161
+ Input(),
162
+ __metadata("design:type", String)
163
+ ], GIPISplitButtonComponent.prototype, "ariaLabel", void 0);
164
+ __decorate([
165
+ Input(),
166
+ __metadata("design:type", String)
167
+ ], GIPISplitButtonComponent.prototype, "title", void 0);
168
+ __decorate([
169
+ Input(),
170
+ __metadata("design:type", String)
171
+ ], GIPISplitButtonComponent.prototype, "label", void 0);
172
+ __decorate([
173
+ Input(),
174
+ __metadata("design:type", String)
175
+ ], GIPISplitButtonComponent.prototype, "buttonClass", void 0);
176
+ __decorate([
177
+ Input(),
178
+ __metadata("design:type", Boolean)
179
+ ], GIPISplitButtonComponent.prototype, "disabled", void 0);
180
+ __decorate([
181
+ Input(),
182
+ __metadata("design:type", Boolean)
183
+ ], GIPISplitButtonComponent.prototype, "loading", void 0);
184
+ __decorate([
185
+ Input(),
186
+ __metadata("design:type", String)
187
+ ], GIPISplitButtonComponent.prototype, "tooltip", void 0);
188
+ __decorate([
189
+ Input('options'),
190
+ __metadata("design:type", Array)
191
+ ], GIPISplitButtonComponent.prototype, "splitOptions", void 0);
192
+ __decorate([
193
+ Output(),
194
+ __metadata("design:type", EventEmitter)
195
+ ], GIPISplitButtonComponent.prototype, "onOpenPopover", void 0);
196
+ __decorate([
197
+ Output(),
198
+ __metadata("design:type", EventEmitter)
199
+ ], GIPISplitButtonComponent.prototype, "onClosePopover", void 0);
200
+ __decorate([
201
+ Output('click'),
202
+ __metadata("design:type", EventEmitter)
203
+ ], GIPISplitButtonComponent.prototype, "onClick", void 0);
204
+ __decorate([
205
+ Output('focus'),
206
+ __metadata("design:type", EventEmitter)
207
+ ], GIPISplitButtonComponent.prototype, "onFocus", void 0);
208
+ __decorate([
209
+ Output('blur'),
210
+ __metadata("design:type", EventEmitter)
211
+ ], GIPISplitButtonComponent.prototype, "onBlur", void 0);
212
+ __decorate([
213
+ HostListener('window:resize', ['$event']),
214
+ __metadata("design:type", Function),
215
+ __metadata("design:paramtypes", [UIEvent]),
216
+ __metadata("design:returntype", void 0)
217
+ ], GIPISplitButtonComponent.prototype, "onResize", null);
218
+ GIPISplitButtonComponent = GIPISplitButtonComponent_1 = __decorate([
219
+ Component({
220
+ selector: "gipi-split-button[gipi-primary], gipi-split-button[gipi-secondary],\n gipi-split-button[gipi-tertiary], gipi-split-button[gipi-action]",
221
+ exportAs: 'gipiSplitButton',
222
+ template: "<div [matTooltip]=\"tooltip\"\n [class]=\"buttonClass || ''\"\n [class.button-base]=\"true\"\n [class.disabled]=\"disabled || loading\"\n #popoverTrigger=\"popoverTrigger\"\n [popoverTriggerFor]=\"btnPopover\"\n [popoverTriggerOn]=\"'none'\"\n [popoverBackdropCloseOnClick]=\"true\"\n (opened)=\"onOpenPopover.emit()\"\n (closed)=\"onClosePopover.emit()\">\n <button [attr.id]=\"idBtnDefault\"\n [attr.name]=\"idBtnDefault\"\n [attr.type]=\"type\"\n [attr.aria-label]=\"ariaLabel ? ariaLabel : label\"\n [attr.title]=\"title ? title : label\"\n [disabled]=\"disabled || loading\"\n [ngClass]=\"getInternalButtonClass(true)\"\n role=\"button\"\n (click)=\"handleClick($event)\"\n (focus)=\"handleFocus($event)\"\n (blur)=\"handleBlur($event)\">\n {{ label ? label : '' }}\n </button>\n <button [attr.id]=\"idBtnMenu\"\n [attr.name]=\"idBtnMenu\"\n [attr.type]=\"type\"\n [attr.aria-label]=\"ariaLabel ? ariaLabel : label\"\n [attr.title]=\"title ? title : label\"\n [disabled]=\"disabled || loading\"\n [ngClass]=\"getInternalButtonClass(false)\"\n role=\"button\"\n (click)=\"handleClickBtnMenu($event)\">\n <mat-icon [@indicatorRotate]=\"popoverTrigger?.popoverOpen ? 'opened': 'closed'\"> expand_more </mat-icon>\n </button>\n</div>\n\n<gipi-popover #btnPopover=\"gipiPopover\"\n [popoverOverlapTrigger]=\"false\"\n [popoverCloseOnClick]=\"false\"\n [popoverArrowWidth]=\"0\"\n [popoverOffsetY]=\"3\">\n <div class=\"btn-popover-content\">\n <button class=\"btn-split-option\"\n *ngFor=\"let option of splitOptions\"\n [disabled]=\"option?.disabled\"\n (click)=\"handleClickBtnSplitOption(option)\">\n {{ option.label }}\n </button>\n </div>\n</gipi-popover>",
223
+ providers: [
224
+ {
225
+ provide: NG_VALUE_ACCESSOR,
226
+ useExisting: forwardRef(function () { return GIPISplitButtonComponent_1; }),
227
+ multi: true
228
+ }
229
+ ],
230
+ host: {
231
+ 'class': 'gipi-split-button',
232
+ '[attr.id]': 'id',
233
+ '[attr.name]': 'name',
234
+ },
235
+ animations: [
236
+ trigger('indicatorRotate', [
237
+ state('closed', style({ transform: 'rotate(0deg)' })),
238
+ state('opened', style({ transform: 'rotate(-180deg)' })),
239
+ transition('opened <=> closed', animate('225ms cubic-bezier(0.4,0.0,0.2,1)')),
240
+ ])
241
+ ],
242
+ styles: [".button-base{display:flex;flex-direction:row;justify-content:center;border-radius:4px;font-weight:600;font-size:1.4rem;line-height:1.6rem;cursor:pointer;outline:0;white-space:nowrap;text-decoration:none;vertical-align:middle;text-align:center;box-shadow:1px 1px 5px 0 rgba(0,0,0,.1);transition:.2s;width:100%;max-height:4rem;border:1px solid transparent;position:relative;-webkit-user-select:none;-moz-user-select:none;-ms-user-select:none;user-select:none}.button-base.disabled{cursor:not-allowed!important;box-shadow:none}.button-base>button{display:flex;align-items:center;justify-content:center;border:none;outline:0;box-shadow:none;width:100%;height:40px;padding:12px 16px;overflow:hidden;border-radius:inherit;cursor:inherit;font-size:inherit;font-weight:inherit;white-space:nowrap;text-decoration:none;-webkit-user-select:none;-moz-user-select:none;-ms-user-select:none;user-select:none;position:relative}.button-base>button:not(.disabled):active{opacity:.8}.button-base .button-default{border-top-right-radius:0!important;border-bottom-right-radius:0!important}.button-base .button-menu{max-width:-webkit-fit-content;max-width:-moz-fit-content;max-width:fit-content;border-top-left-radius:0!important;border-bottom-left-radius:0!important}.button-primary:not(:disabled),.button-primary:not(:disabled)>mat-icon{background-color:#e0313e;color:#fff;fill:#fff}.button-primary:not(:disabled).button-default,.button-primary:not(:disabled)>mat-icon.button-default{border-right:1px solid #9f232c}.button-primary:not(:disabled) svg,.button-primary:not(:disabled) svg g path,.button-primary:not(:disabled) svg path,.button-primary:not(:disabled)>mat-icon svg,.button-primary:not(:disabled)>mat-icon svg g path,.button-primary:not(:disabled)>mat-icon svg path{color:#fff;fill:#fff}.button-primary:disabled,.button-primary:disabled>mat-icon{background-color:#d1d2d4;color:#9a9da2;fill:#9a9da2}.button-primary:disabled.button-default,.button-primary:disabled>mat-icon.button-default{border-right:1px solid #9a9da2}.button-primary:disabled svg,.button-primary:disabled svg g path,.button-primary:disabled svg path,.button-primary:disabled>mat-icon svg,.button-primary:disabled>mat-icon svg g path,.button-primary:disabled>mat-icon svg path{color:#9a9da2;fill:#9a9da2}.button-primary:not(:disabled):hover,.button-primary:not(:disabled):hover>mat-icon{background-color:#cc2d38;color:#fff;fill:#fff}.button-primary:not(:disabled):hover svg,.button-primary:not(:disabled):hover svg g path,.button-primary:not(:disabled):hover svg path,.button-primary:not(:disabled):hover>mat-icon svg,.button-primary:not(:disabled):hover>mat-icon svg g path,.button-primary:not(:disabled):hover>mat-icon svg path{color:#fff;fill:#fff}.button-secondary{background-color:transparent}.button-secondary:not(:disabled),.button-secondary:not(:disabled)>mat-icon{border-color:#595959;color:#595959;fill:#595959}.button-secondary:not(:disabled).button-default,.button-secondary:not(:disabled)>mat-icon.button-default{border-right:1px solid #595959}.button-secondary:not(:disabled) svg,.button-secondary:not(:disabled) svg g path,.button-secondary:not(:disabled) svg path,.button-secondary:not(:disabled)>mat-icon svg,.button-secondary:not(:disabled)>mat-icon svg g path,.button-secondary:not(:disabled)>mat-icon svg path{color:#595959;fill:#595959}.button-secondary:disabled,.button-secondary:disabled>mat-icon{border-color:#d1d2d4;background-color:#d1d2d4;color:#9a9da2;fill:#9a9da2}.button-secondary:disabled.button-default,.button-secondary:disabled>mat-icon.button-default{border-right:1px solid #9a9da2}.button-secondary:disabled svg,.button-secondary:disabled svg g path,.button-secondary:disabled svg path,.button-secondary:disabled>mat-icon svg,.button-secondary:disabled>mat-icon svg g path,.button-secondary:disabled>mat-icon svg path{color:#9a9da2;fill:#9a9da2}.button-secondary:not(:disabled):hover,.button-secondary:not(:disabled):hover>mat-icon{border-color:#595959;background-color:#e0e1e2;color:#595959;fill:#595959}.button-secondary:not(:disabled):hover svg,.button-secondary:not(:disabled):hover svg g path,.button-secondary:not(:disabled):hover svg path,.button-secondary:not(:disabled):hover>mat-icon svg,.button-secondary:not(:disabled):hover>mat-icon svg g path,.button-secondary:not(:disabled):hover>mat-icon svg path{color:#595959;fill:#595959}.button-tertiary{background-color:#e7ebee;box-shadow:none}.button-tertiary:not(:disabled),.button-tertiary:not(:disabled)>mat-icon{color:#595959;fill:#595959}.button-tertiary:not(:disabled).button-default,.button-tertiary:not(:disabled)>mat-icon.button-default{border-right:1px solid #595959}.button-tertiary:not(:disabled) svg,.button-tertiary:not(:disabled) svg g path,.button-tertiary:not(:disabled) svg path,.button-tertiary:not(:disabled)>mat-icon svg,.button-tertiary:not(:disabled)>mat-icon svg g path,.button-tertiary:not(:disabled)>mat-icon svg path{color:#595959;fill:#595959}.button-tertiary:disabled,.button-tertiary:disabled>mat-icon{background-color:#d1d2d4;color:#9a9da2;fill:#9a9da2}.button-tertiary:disabled.button-default,.button-tertiary:disabled>mat-icon.button-default{border-right:1px solid #9a9da2}.button-tertiary:disabled svg,.button-tertiary:disabled svg g path,.button-tertiary:disabled svg path,.button-tertiary:disabled>mat-icon svg,.button-tertiary:disabled>mat-icon svg g path,.button-tertiary:disabled>mat-icon svg path{color:#9a9da2;fill:#9a9da2}.button-tertiary:not(:disabled):hover,.button-tertiary:not(:disabled):hover>mat-icon{background-color:#e0e1e2;color:#595959;fill:#595959}.button-tertiary:not(:disabled):hover svg,.button-tertiary:not(:disabled):hover svg g path,.button-tertiary:not(:disabled):hover svg path,.button-tertiary:not(:disabled):hover>mat-icon svg,.button-tertiary:not(:disabled):hover>mat-icon svg g path,.button-tertiary:not(:disabled):hover>mat-icon svg path{color:#595959;fill:#595959}.button-action{background-color:transparent;box-shadow:none;display:flex;justify-content:flex-start!important}.button-action:not(:disabled),.button-action:not(:disabled)>mat-icon{color:#262626;fill:#262626}.button-action:not(:disabled).button-default,.button-action:not(:disabled)>mat-icon.button-default{border-right:1px solid #262626}.button-action:not(:disabled) svg,.button-action:not(:disabled) svg g path,.button-action:not(:disabled) svg path,.button-action:not(:disabled)>mat-icon svg,.button-action:not(:disabled)>mat-icon svg g path,.button-action:not(:disabled)>mat-icon svg path{color:#262626;fill:#262626}.button-action:disabled,.button-action:disabled>mat-icon{color:#9a9da2;fill:#9a9da2}.button-action:disabled.button-default,.button-action:disabled>mat-icon.button-default{border-right:1px solid #9a9da2}.button-action:disabled svg,.button-action:disabled svg g path,.button-action:disabled svg path,.button-action:disabled>mat-icon svg,.button-action:disabled>mat-icon svg g path,.button-action:disabled>mat-icon svg path{color:#9a9da2;fill:#9a9da2}.button-action:not(:disabled):hover,.button-action:not(:disabled):hover>mat-icon{background-color:#f5f5f6;color:#262626;fill:#262626}.button-action:not(:disabled):hover svg,.button-action:not(:disabled):hover svg g path,.button-action:not(:disabled):hover svg path,.button-action:not(:disabled):hover>mat-icon svg,.button-action:not(:disabled):hover>mat-icon svg g path,.button-action:not(:disabled):hover>mat-icon svg path{color:#262626;fill:#262626}.disabled,:disabled{pointer-events:none!important}.btn-popover-content{display:flex;flex-direction:column;gap:.8rem;background-color:#fff;border-radius:4px;box-shadow:0 2px 4px -1px rgba(0,0,0,.2),0 4px 5px 0 rgba(0,0,0,.14),0 1px 10px 0 rgba(0,0,0,.12);padding:8px}.btn-split-option{width:100%;padding:.8rem;border-radius:.4rem;border:1px solid transparent;text-align:left;outline:0;background-color:transparent;cursor:pointer}.btn-split-option:not(:disabled){color:#595959}.btn-split-option:disabled{border-color:#d1d2d4;background-color:#d1d2d4;color:#9a9da2;cursor:not-allowed}.btn-split-option:not(:disabled):hover{border-color:#595959;background-color:#e0e1e2;color:#595959}"]
243
+ }),
244
+ __metadata("design:paramtypes", [ElementRef])
245
+ ], GIPISplitButtonComponent);
246
+ return GIPISplitButtonComponent;
247
+ }());
248
+ export { GIPISplitButtonComponent };
249
+ //# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoic3BsaXQtYnV0dG9uLmNvbXBvbmVudC5qcyIsInNvdXJjZVJvb3QiOiJuZzovL0BnaXBpc2lzdGVtYXMvbmctY29yZS8iLCJzb3VyY2VzIjpbInNoYXJlZC9naXBpLWNvbXBvbmVudHMvc3BsaXQtYnV0dG9uL3NwbGl0LWJ1dHRvbi5jb21wb25lbnQudHMiXSwibmFtZXMiOltdLCJtYXBwaW5ncyI6IjtBQUFBLE9BQU8sRUFBRSxPQUFPLEVBQUUsS0FBSyxFQUFFLEtBQUssRUFBRSxVQUFVLEVBQUUsT0FBTyxFQUFFLE1BQU0scUJBQXFCLENBQUM7QUFDakYsT0FBTyxFQUFFLFNBQVMsRUFBRSxVQUFVLEVBQUUsWUFBWSxFQUFFLFVBQVUsRUFBRSxZQUFZLEVBQUUsS0FBSyxFQUFFLE1BQU0sRUFBRSxNQUFNLEVBQUUsU0FBUyxFQUFFLE1BQU0sZUFBZSxDQUFDO0FBQ2hJLE9BQU8sRUFBRSxpQkFBaUIsRUFBRSxNQUFNLGdCQUFnQixDQUFDO0FBQ25ELE9BQU8sRUFBRSxrQkFBa0IsRUFBRSxNQUFNLG1DQUFtQyxDQUFDO0FBQ3ZFLE9BQU8sRUFBRSxVQUFVLEVBQUUsTUFBTSxtQ0FBbUMsQ0FBQztBQVEvRCxJQUFJLFlBQVksR0FBRyxDQUFDLENBQUM7QUE0QnJCO0lBMkNJLGtDQUFtQixVQUFzQjtRQUF0QixlQUFVLEdBQVYsVUFBVSxDQUFZO1FBekNqQyxjQUFTLEdBQVcsWUFBWSxFQUFFLENBQUM7UUFDbkMsVUFBSyxHQUFXLHVCQUFxQixJQUFJLENBQUMsU0FBVyxDQUFDO1FBRXZELGlCQUFZLEdBQUcsK0JBQTZCLElBQUksQ0FBQyxTQUFXLENBQUM7UUFDN0QsY0FBUyxHQUFHLDRCQUEwQixJQUFJLENBQUMsU0FBVyxDQUFDO1FBRXJELHlCQUFvQixHQUFZLElBQUksQ0FBQyxrQkFBa0IsQ0FBQyxjQUFjLENBQUMsQ0FBQztRQUN4RSwyQkFBc0IsR0FBWSxJQUFJLENBQUMsa0JBQWtCLENBQUMsZ0JBQWdCLENBQUMsQ0FBQztRQUM1RSwwQkFBcUIsR0FBWSxJQUFJLENBQUMsa0JBQWtCLENBQUMsZUFBZSxDQUFDLENBQUM7UUFDMUUsd0JBQW1CLEdBQVksSUFBSSxDQUFDLGtCQUFrQixDQUFDLGFBQWEsQ0FBQyxDQUFDO1FBSXRFLE9BQUUsR0FBVyxJQUFJLENBQUMsS0FBSyxDQUFDO1FBRXhCLFNBQUksR0FBVyxJQUFJLENBQUMsS0FBSyxDQUFDO1FBRTFCLFNBQUksR0FBa0MsUUFBUSxDQUFDO1FBRS9DLGNBQVMsR0FBVyxFQUFFLENBQUM7UUFFdkIsVUFBSyxHQUFXLEVBQUUsQ0FBQztRQUVuQixVQUFLLEdBQVcsRUFBRSxDQUFDO1FBSW5CLGFBQVEsR0FBWSxLQUFLLENBQUM7UUFFMUIsWUFBTyxHQUFZLEtBQUssQ0FBQztRQUV6QixZQUFPLEdBQVcsRUFBRSxDQUFDO1FBRVosaUJBQVksR0FBbUIsRUFBRSxDQUFDO1FBRTFDLGtCQUFhLEdBQXVCLElBQUksWUFBWSxFQUFFLENBQUM7UUFDdkQsbUJBQWMsR0FBdUIsSUFBSSxZQUFZLEVBQUUsQ0FBQztRQUNqRCxZQUFPLEdBQTZCLElBQUksWUFBWSxDQUFDLElBQUksQ0FBQyxDQUFDO1FBQzNELFlBQU8sR0FBNkIsSUFBSSxZQUFZLENBQUMsSUFBSSxDQUFDLENBQUM7UUFDNUQsV0FBTSxHQUE2QixJQUFJLFlBQVksQ0FBQyxJQUFJLENBQUMsQ0FBQztJQUU3QixDQUFDO2lDQTNDckMsd0JBQXdCO0lBNkNqQywyQ0FBUSxHQUFSLGNBQW1CLENBQUM7SUFFcEIsOENBQVcsR0FBWDtRQUNJLElBQUksSUFBSSxDQUFDLGNBQWMsRUFBRTtZQUNyQixJQUFJLENBQUMsY0FBYyxDQUFDLGNBQWMsRUFBRSxDQUFDO1NBQ3hDO0lBQ0wsQ0FBQztJQUVELGlEQUFjLEdBQWQ7UUFDSSxPQUFPLElBQUksQ0FBQyxVQUFVLENBQUMsYUFBYSxDQUFDO0lBQ3pDLENBQUM7SUFFTyxxREFBa0IsR0FBMUI7UUFBQSxpQkFFQztRQUYwQixvQkFBdUI7YUFBdkIsVUFBdUIsRUFBdkIscUJBQXVCLEVBQXZCLElBQXVCO1lBQXZCLCtCQUF1Qjs7UUFDOUMsT0FBTyxVQUFVLENBQUMsSUFBSSxDQUFDLFVBQUEsU0FBUyxJQUFJLE9BQUEsS0FBSSxDQUFDLGNBQWMsRUFBRSxDQUFDLFlBQVksQ0FBQyxTQUFTLENBQUMsRUFBN0MsQ0FBNkMsQ0FBQyxDQUFDO0lBQ3ZGLENBQUM7SUFFTSwrQ0FBWSxHQUFuQjtRQUNJLElBQU0sUUFBUSxHQUFXLFlBQVksRUFBRSxDQUFDO1FBQ3hDLE9BQU87WUFDSCxVQUFVLEVBQUUsK0JBQTZCLFFBQVU7WUFDbkQsT0FBTyxFQUFFLDRCQUEwQixRQUFVO1NBQ2hELENBQUE7SUFDTCxDQUFDO0lBRU0seURBQXNCLEdBQTdCLFVBQThCLFlBQXFCO1FBQy9DLE9BQU87WUFDSCxnQkFBZ0IsRUFBRSxZQUFZO1lBQzlCLGFBQWEsRUFBRSxDQUFDLFlBQVk7WUFDNUIsZ0JBQWdCLEVBQUUsSUFBSSxDQUFDLG9CQUFvQjtZQUMzQyxrQkFBa0IsRUFBRSxJQUFJLENBQUMsc0JBQXNCO1lBQy9DLGlCQUFpQixFQUFFLElBQUksQ0FBQyxxQkFBcUI7WUFDN0MsZUFBZSxFQUFFLElBQUksQ0FBQyxtQkFBbUI7U0FDNUMsQ0FBQztJQUNOLENBQUM7SUFFTSw4Q0FBVyxHQUFsQjtRQUNJLElBQUksSUFBSSxDQUFDLFFBQVEsSUFBSSxJQUFJLENBQUMsT0FBTyxFQUFFO1lBQy9CLE9BQU87U0FDVjthQUFNO1lBQ0gsSUFBSSxDQUFDLGNBQWMsQ0FBQyxXQUFXLEVBQUUsQ0FBQztTQUNyQztJQUNMLENBQUM7SUFFTSwrQ0FBWSxHQUFuQjtRQUNJLElBQUksSUFBSSxDQUFDLFFBQVEsSUFBSSxJQUFJLENBQUMsT0FBTyxFQUFFO1lBQy9CLE9BQU87U0FDVjthQUFNO1lBQ0gsSUFBSSxDQUFDLGNBQWMsQ0FBQyxZQUFZLEVBQUUsQ0FBQztTQUN0QztJQUNMLENBQUM7SUFFTSw4Q0FBVyxHQUFsQixVQUFtQixLQUFpQjtRQUNoQyxJQUFJLElBQUksQ0FBQyxRQUFRLElBQUksSUFBSSxDQUFDLE9BQU8sRUFBRTtZQUMvQixPQUFPO1NBQ1Y7YUFBTTtZQUNILElBQUksQ0FBQyxPQUFPLENBQUMsSUFBSSxDQUFDLEtBQUssQ0FBQyxDQUFDO1lBQ3pCLElBQUksQ0FBQyxZQUFZLEVBQUUsQ0FBQztZQUNwQixLQUFLLENBQUMsZUFBZSxFQUFFLENBQUM7U0FDM0I7SUFDTCxDQUFDO0lBRU0sOENBQVcsR0FBbEIsVUFBbUIsS0FBaUI7UUFDaEMsSUFBSSxJQUFJLENBQUMsUUFBUSxJQUFJLElBQUksQ0FBQyxPQUFPLEVBQUU7WUFDL0IsT0FBTztTQUNWO2FBQU07WUFDSCxJQUFJLENBQUMsT0FBTyxDQUFDLElBQUksQ0FBQyxLQUFLLENBQUMsQ0FBQztZQUN6QixLQUFLLENBQUMsZUFBZSxFQUFFLENBQUM7U0FDM0I7SUFDTCxDQUFDO0lBRU0sNkNBQVUsR0FBakIsVUFBa0IsS0FBaUI7UUFDL0IsSUFBSSxJQUFJLENBQUMsUUFBUSxJQUFJLElBQUksQ0FBQyxPQUFPLEVBQUU7WUFDL0IsT0FBTztTQUNWO2FBQU07WUFDSCxJQUFJLENBQUMsTUFBTSxDQUFDLElBQUksQ0FBQyxLQUFLLENBQUMsQ0FBQztZQUN4QixLQUFLLENBQUMsZUFBZSxFQUFFLENBQUM7U0FDM0I7SUFDTCxDQUFDO0lBRU0scURBQWtCLEdBQXpCLFVBQTBCLEtBQWlCO1FBQ3ZDLElBQUksSUFBSSxDQUFDLFFBQVEsSUFBSSxJQUFJLENBQUMsT0FBTyxFQUFFO1lBQy9CLE9BQU87U0FDVjthQUFNO1lBQ0gsSUFBSSxDQUFDLFVBQVUsQ0FBQyxNQUFNLENBQUMsSUFBSSxDQUFDLGNBQWMsQ0FBQyxFQUFFO2dCQUN6QyxJQUFJLENBQUMsY0FBYyxDQUFDLGFBQWEsRUFBRSxDQUFDO2FBQ3ZDO1lBQ0QsS0FBSyxDQUFDLGVBQWUsRUFBRSxDQUFDO1NBQzNCO0lBQ0wsQ0FBQztJQUVNLDREQUF5QixHQUFoQyxVQUFpQyxNQUFvQjtRQUNqRCxJQUFJLElBQUksQ0FBQyxRQUFRLElBQUksSUFBSSxDQUFDLE9BQU8sSUFBSSxDQUFDLE1BQU0sSUFBSSxNQUFNLENBQUMsUUFBUSxJQUFJLENBQUMsTUFBTSxDQUFDLE9BQU8sRUFBRTtZQUNoRixPQUFPO1NBQ1Y7YUFBTTtZQUNILE1BQU0sQ0FBQyxPQUFPLEVBQUUsQ0FBQztZQUNqQixJQUFJLENBQUMsWUFBWSxFQUFFLENBQUM7U0FDdkI7SUFDTCxDQUFDO0lBR0QsMkNBQVEsR0FBUixVQUFTLEtBQWM7UUFDbkIsSUFBSSxJQUFJLENBQUMsY0FBYyxFQUFFO1lBQ3JCLElBQUksQ0FBQyxjQUFjLENBQUMsWUFBWSxFQUFFLENBQUM7WUFDbkMsS0FBSyxDQUFDLGVBQWUsRUFBRSxDQUFDO1NBQzNCO0lBQ0wsQ0FBQzs7O2dCQTNHOEIsVUFBVTs7SUE5QlM7UUFBakQsU0FBUyxDQUFDLGtCQUFrQixFQUFFLEVBQUUsTUFBTSxFQUFFLEtBQUssRUFBRSxDQUFDO2tDQUFpQixrQkFBa0I7b0VBQUM7SUFFNUU7UUFBUixLQUFLLEVBQUU7O3dEQUF5QjtJQUV4QjtRQUFSLEtBQUssRUFBRTs7MERBQTJCO0lBRTFCO1FBQVIsS0FBSyxFQUFFOzswREFBZ0Q7SUFFL0M7UUFBUixLQUFLLEVBQUU7OytEQUF3QjtJQUV2QjtRQUFSLEtBQUssRUFBRTs7MkRBQW9CO0lBRW5CO1FBQVIsS0FBSyxFQUFFOzsyREFBb0I7SUFFbkI7UUFBUixLQUFLLEVBQUU7O2lFQUFxQjtJQUVwQjtRQUFSLEtBQUssRUFBRTs7OERBQTJCO0lBRTFCO1FBQVIsS0FBSyxFQUFFOzs2REFBMEI7SUFFekI7UUFBUixLQUFLLEVBQUU7OzZEQUFzQjtJQUVaO1FBQWpCLEtBQUssQ0FBQyxTQUFTLENBQUM7O2tFQUFtQztJQUUxQztRQUFULE1BQU0sRUFBRTtrQ0FBZ0IsWUFBWTttRUFBNEI7SUFDdkQ7UUFBVCxNQUFNLEVBQUU7a0NBQWlCLFlBQVk7b0VBQTRCO0lBQ2pEO1FBQWhCLE1BQU0sQ0FBQyxPQUFPLENBQUM7a0NBQVUsWUFBWTs2REFBc0M7SUFDM0Q7UUFBaEIsTUFBTSxDQUFDLE9BQU8sQ0FBQztrQ0FBVSxZQUFZOzZEQUFzQztJQUM1RDtRQUFmLE1BQU0sQ0FBQyxNQUFNLENBQUM7a0NBQVMsWUFBWTs0REFBc0M7SUF3RzFFO1FBREMsWUFBWSxDQUFDLGVBQWUsRUFBRSxDQUFDLFFBQVEsQ0FBQyxDQUFDOzt5Q0FDMUIsT0FBTzs7NERBS3RCO0lBdEpRLHdCQUF3QjtRQTFCcEMsU0FBUyxDQUFDO1lBQ1AsUUFBUSxFQUFFLHNKQUNrRTtZQUM1RSxRQUFRLEVBQUUsaUJBQWlCO1lBQzNCLDRnRUFBNEM7WUFFNUMsU0FBUyxFQUFFO2dCQUNQO29CQUNJLE9BQU8sRUFBRSxpQkFBaUI7b0JBQzFCLFdBQVcsRUFBRSxVQUFVLENBQUMsY0FBTSxPQUFBLDBCQUF3QixFQUF4QixDQUF3QixDQUFDO29CQUN2RCxLQUFLLEVBQUUsSUFBSTtpQkFDZDthQUNKO1lBQ0QsSUFBSSxFQUFFO2dCQUNGLE9BQU8sRUFBRSxtQkFBbUI7Z0JBQzVCLFdBQVcsRUFBRSxJQUFJO2dCQUNqQixhQUFhLEVBQUUsTUFBTTthQUN4QjtZQUNELFVBQVUsRUFBRTtnQkFDUixPQUFPLENBQUMsaUJBQWlCLEVBQUU7b0JBQ3ZCLEtBQUssQ0FBQyxRQUFRLEVBQUUsS0FBSyxDQUFDLEVBQUUsU0FBUyxFQUFFLGNBQWMsRUFBRSxDQUFDLENBQUM7b0JBQ3JELEtBQUssQ0FBQyxRQUFRLEVBQUUsS0FBSyxDQUFDLEVBQUUsU0FBUyxFQUFFLGlCQUFpQixFQUFFLENBQUMsQ0FBQztvQkFDeEQsVUFBVSxDQUFDLG1CQUFtQixFQUFFLE9BQU8sQ0FBQyxtQ0FBbUMsQ0FBQyxDQUFDO2lCQUNoRixDQUFDO2FBQ0w7O1NBQ0osQ0FBQzt5Q0E0Q2lDLFVBQVU7T0EzQ2hDLHdCQUF3QixDQXdKcEM7SUFBRCwrQkFBQztDQUFBLEFBeEpELElBd0pDO1NBeEpZLHdCQUF3QiIsInNvdXJjZXNDb250ZW50IjpbImltcG9ydCB7IGFuaW1hdGUsIHN0YXRlLCBzdHlsZSwgdHJhbnNpdGlvbiwgdHJpZ2dlciB9IGZyb20gJ0Bhbmd1bGFyL2FuaW1hdGlvbnMnO1xuaW1wb3J0IHsgQ29tcG9uZW50LCBFbGVtZW50UmVmLCBFdmVudEVtaXR0ZXIsIGZvcndhcmRSZWYsIEhvc3RMaXN0ZW5lciwgSW5wdXQsIE9uSW5pdCwgT3V0cHV0LCBWaWV3Q2hpbGQgfSBmcm9tICdAYW5ndWxhci9jb3JlJztcbmltcG9ydCB7IE5HX1ZBTFVFX0FDQ0VTU09SIH0gZnJvbSAnQGFuZ3VsYXIvZm9ybXMnO1xuaW1wb3J0IHsgR0lQSVBvcG92ZXJUcmlnZ2VyIH0gZnJvbSAnLi4vcG9wb3Zlci9zaGFyZWQvcG9wb3Zlci10cmlnZ2VyJztcbmltcG9ydCB7IE9iamVjdFV0aWwgfSBmcm9tICcuLy4uLy4uLy4uL2NvcmUvdXRpbHMvb2JqZWN0LnV0aWwnO1xuXG5leHBvcnQgaW50ZXJmYWNlIFNwbGl0T3B0aW9ucyB7XG4gICAgbGFiZWw6IHN0cmluZztcbiAgICBkaXNhYmxlZDogYm9vbGVhbjtcbiAgICBjbGlja0ZuOiBGdW5jdGlvbjtcbn1cblxubGV0IG5leHRVbmlxdWVJZCA9IDA7XG5cbkBDb21wb25lbnQoe1xuICAgIHNlbGVjdG9yOiBgZ2lwaS1zcGxpdC1idXR0b25bZ2lwaS1wcmltYXJ5XSwgZ2lwaS1zcGxpdC1idXR0b25bZ2lwaS1zZWNvbmRhcnldLFxuICAgICAgICAgICAgICAgZ2lwaS1zcGxpdC1idXR0b25bZ2lwaS10ZXJ0aWFyeV0sIGdpcGktc3BsaXQtYnV0dG9uW2dpcGktYWN0aW9uXWAsXG4gICAgZXhwb3J0QXM6ICdnaXBpU3BsaXRCdXR0b24nLFxuICAgIHRlbXBsYXRlVXJsOiAnLi9zcGxpdC1idXR0b24uY29tcG9uZW50Lmh0bWwnLFxuICAgIHN0eWxlVXJsczogWycuL3NwbGl0LWJ1dHRvbi5jb21wb25lbnQuc2NzcyddLFxuICAgIHByb3ZpZGVyczogW1xuICAgICAgICB7XG4gICAgICAgICAgICBwcm92aWRlOiBOR19WQUxVRV9BQ0NFU1NPUixcbiAgICAgICAgICAgIHVzZUV4aXN0aW5nOiBmb3J3YXJkUmVmKCgpID0+IEdJUElTcGxpdEJ1dHRvbkNvbXBvbmVudCksXG4gICAgICAgICAgICBtdWx0aTogdHJ1ZVxuICAgICAgICB9XG4gICAgXSxcbiAgICBob3N0OiB7XG4gICAgICAgICdjbGFzcyc6ICdnaXBpLXNwbGl0LWJ1dHRvbicsXG4gICAgICAgICdbYXR0ci5pZF0nOiAnaWQnLFxuICAgICAgICAnW2F0dHIubmFtZV0nOiAnbmFtZScsXG4gICAgfSxcbiAgICBhbmltYXRpb25zOiBbXG4gICAgICAgIHRyaWdnZXIoJ2luZGljYXRvclJvdGF0ZScsIFtcbiAgICAgICAgICAgIHN0YXRlKCdjbG9zZWQnLCBzdHlsZSh7IHRyYW5zZm9ybTogJ3JvdGF0ZSgwZGVnKScgfSkpLFxuICAgICAgICAgICAgc3RhdGUoJ29wZW5lZCcsIHN0eWxlKHsgdHJhbnNmb3JtOiAncm90YXRlKC0xODBkZWcpJyB9KSksXG4gICAgICAgICAgICB0cmFuc2l0aW9uKCdvcGVuZWQgPD0+IGNsb3NlZCcsIGFuaW1hdGUoJzIyNW1zIGN1YmljLWJlemllcigwLjQsMC4wLDAuMiwxKScpKSxcbiAgICAgICAgXSlcbiAgICBdXG59KVxuZXhwb3J0IGNsYXNzIEdJUElTcGxpdEJ1dHRvbkNvbXBvbmVudCBpbXBsZW1lbnRzIE9uSW5pdCB7XG5cbiAgICBwcml2YXRlIF91bmlxdWVJZDogbnVtYmVyID0gbmV4dFVuaXF1ZUlkKys7XG4gICAgcHJpdmF0ZSBfbmFtZTogc3RyaW5nID0gYGdpcGktc3BsaXQtYnV0dG9uLSR7dGhpcy5fdW5pcXVlSWR9YDtcblxuICAgIHB1YmxpYyBpZEJ0bkRlZmF1bHQgPSBgZ2lwaS1zcGxpdC1idXR0b24tZGVmYXVsdC0ke3RoaXMuX3VuaXF1ZUlkfWA7XG4gICAgcHVibGljIGlkQnRuTWVudSA9IGBnaXBpLXNwbGl0LWJ1dHRvbi1tZW51LSR7dGhpcy5fdW5pcXVlSWR9YDtcblxuICAgIHJlYWRvbmx5IGlzU3BsaXRCdXR0b25QcmltYXJ5OiBib29sZWFuID0gdGhpcy5faGFzSG9zdEF0dHJpYnV0ZXMoJ2dpcGktcHJpbWFyeScpO1xuICAgIHJlYWRvbmx5IGlzU3BsaXRCdXR0b25TZWNvbmRhcnk6IGJvb2xlYW4gPSB0aGlzLl9oYXNIb3N0QXR0cmlidXRlcygnZ2lwaS1zZWNvbmRhcnknKTtcbiAgICByZWFkb25seSBpc1NwbGl0QnV0dG9uVGVydGlhcnk6IGJvb2xlYW4gPSB0aGlzLl9oYXNIb3N0QXR0cmlidXRlcygnZ2lwaS10ZXJ0aWFyeScpO1xuICAgIHJlYWRvbmx5IGlzU3BsaXRCdXR0b25BY3Rpb246IGJvb2xlYW4gPSB0aGlzLl9oYXNIb3N0QXR0cmlidXRlcygnZ2lwaS1hY3Rpb24nKTtcblxuICAgIEBWaWV3Q2hpbGQoR0lQSVBvcG92ZXJUcmlnZ2VyLCB7IHN0YXRpYzogZmFsc2UgfSkgcG9wb3ZlclRyaWdnZXI6IEdJUElQb3BvdmVyVHJpZ2dlcjtcblxuICAgIEBJbnB1dCgpIGlkOiBzdHJpbmcgPSB0aGlzLl9uYW1lO1xuXG4gICAgQElucHV0KCkgbmFtZTogc3RyaW5nID0gdGhpcy5fbmFtZTtcblxuICAgIEBJbnB1dCgpIHR5cGU6ICdidXR0b24nIHwgJ3N1Ym1pdCcgfCAncmVzZXQnID0gJ2J1dHRvbic7XG5cbiAgICBASW5wdXQoKSBhcmlhTGFiZWw6IHN0cmluZyA9ICcnO1xuXG4gICAgQElucHV0KCkgdGl0bGU6IHN0cmluZyA9ICcnO1xuXG4gICAgQElucHV0KCkgbGFiZWw6IHN0cmluZyA9ICcnO1xuXG4gICAgQElucHV0KCkgYnV0dG9uQ2xhc3M6IHN0cmluZztcblxuICAgIEBJbnB1dCgpIGRpc2FibGVkOiBib29sZWFuID0gZmFsc2U7XG5cbiAgICBASW5wdXQoKSBsb2FkaW5nOiBib29sZWFuID0gZmFsc2U7XG5cbiAgICBASW5wdXQoKSB0b29sdGlwOiBzdHJpbmcgPSAnJztcblxuICAgIEBJbnB1dCgnb3B0aW9ucycpIHNwbGl0T3B0aW9uczogU3BsaXRPcHRpb25zW10gPSBbXTtcblxuICAgIEBPdXRwdXQoKSBvbk9wZW5Qb3BvdmVyOiBFdmVudEVtaXR0ZXI8dm9pZD4gPSBuZXcgRXZlbnRFbWl0dGVyKCk7XG4gICAgQE91dHB1dCgpIG9uQ2xvc2VQb3BvdmVyOiBFdmVudEVtaXR0ZXI8dm9pZD4gPSBuZXcgRXZlbnRFbWl0dGVyKCk7XG4gICAgQE91dHB1dCgnY2xpY2snKSBvbkNsaWNrOiBFdmVudEVtaXR0ZXI8TW91c2VFdmVudD4gPSBuZXcgRXZlbnRFbWl0dGVyKHRydWUpO1xuICAgIEBPdXRwdXQoJ2ZvY3VzJykgb25Gb2N1czogRXZlbnRFbWl0dGVyPE1vdXNlRXZlbnQ+ID0gbmV3IEV2ZW50RW1pdHRlcih0cnVlKTtcbiAgICBAT3V0cHV0KCdibHVyJykgb25CbHVyOiBFdmVudEVtaXR0ZXI8TW91c2VFdmVudD4gPSBuZXcgRXZlbnRFbWl0dGVyKHRydWUpO1xuXG4gICAgY29uc3RydWN0b3IocHVibGljIGVsZW1lbnRSZWY6IEVsZW1lbnRSZWYpIHsgfVxuXG4gICAgbmdPbkluaXQoKTogdm9pZCB7IH1cblxuICAgIG5nT25EZXN0cm95KCk6IHZvaWQge1xuICAgICAgICBpZiAodGhpcy5wb3BvdmVyVHJpZ2dlcikge1xuICAgICAgICAgICAgdGhpcy5wb3BvdmVyVHJpZ2dlci5kZXN0cm95UG9wb3ZlcigpO1xuICAgICAgICB9XG4gICAgfVxuXG4gICAgZ2V0SG9zdEVsZW1lbnQoKTogYW55IHtcbiAgICAgICAgcmV0dXJuIHRoaXMuZWxlbWVudFJlZi5uYXRpdmVFbGVtZW50O1xuICAgIH1cblxuICAgIHByaXZhdGUgX2hhc0hvc3RBdHRyaWJ1dGVzKC4uLmF0dHJpYnV0ZXM6IHN0cmluZ1tdKTogYm9vbGVhbiB7XG4gICAgICAgIHJldHVybiBhdHRyaWJ1dGVzLnNvbWUoYXR0cmlidXRlID0+IHRoaXMuZ2V0SG9zdEVsZW1lbnQoKS5oYXNBdHRyaWJ1dGUoYXR0cmlidXRlKSk7XG4gICAgfVxuXG4gICAgcHVibGljIGJ0bklkQW5kTmFtZSgpOiB7IGJ0bkRlZmF1bHQ6IHN0cmluZywgYnRuTWVudTogc3RyaW5nIH0ge1xuICAgICAgICBjb25zdCB1bmlxdWVJZDogbnVtYmVyID0gbmV4dFVuaXF1ZUlkKys7XG4gICAgICAgIHJldHVybiB7XG4gICAgICAgICAgICBidG5EZWZhdWx0OiBgZ2lwaS1zcGxpdC1idXR0b24tZGVmYXVsdC0ke3VuaXF1ZUlkfWAsXG4gICAgICAgICAgICBidG5NZW51OiBgZ2lwaS1zcGxpdC1idXR0b24tbWVudS0ke3VuaXF1ZUlkfWAsXG4gICAgICAgIH1cbiAgICB9XG5cbiAgICBwdWJsaWMgZ2V0SW50ZXJuYWxCdXR0b25DbGFzcyhpc0J0bkRlZmF1bHQ6IGJvb2xlYW4pIHtcbiAgICAgICAgcmV0dXJuIHtcbiAgICAgICAgICAgICdidXR0b24tZGVmYXVsdCc6IGlzQnRuRGVmYXVsdCxcbiAgICAgICAgICAgICdidXR0b24tbWVudSc6ICFpc0J0bkRlZmF1bHQsXG4gICAgICAgICAgICAnYnV0dG9uLXByaW1hcnknOiB0aGlzLmlzU3BsaXRCdXR0b25QcmltYXJ5LFxuICAgICAgICAgICAgJ2J1dHRvbi1zZWNvbmRhcnknOiB0aGlzLmlzU3BsaXRCdXR0b25TZWNvbmRhcnksXG4gICAgICAgICAgICAnYnV0dG9uLXRlcnRpYXJ5JzogdGhpcy5pc1NwbGl0QnV0dG9uVGVydGlhcnksXG4gICAgICAgICAgICAnYnV0dG9uLWFjdGlvbic6IHRoaXMuaXNTcGxpdEJ1dHRvbkFjdGlvbixcbiAgICAgICAgfTtcbiAgICB9XG5cbiAgICBwdWJsaWMgc2hvd1BvcG92ZXIoKTogdm9pZCB7XG4gICAgICAgIGlmICh0aGlzLmRpc2FibGVkIHx8IHRoaXMubG9hZGluZykge1xuICAgICAgICAgICAgcmV0dXJuO1xuICAgICAgICB9IGVsc2Uge1xuICAgICAgICAgICAgdGhpcy5wb3BvdmVyVHJpZ2dlci5vcGVuUG9wb3ZlcigpO1xuICAgICAgICB9XG4gICAgfVxuXG4gICAgcHVibGljIGNsb3NlUG9wb3ZlcigpOiB2b2lkIHtcbiAgICAgICAgaWYgKHRoaXMuZGlzYWJsZWQgfHwgdGhpcy5sb2FkaW5nKSB7XG4gICAgICAgICAgICByZXR1cm47XG4gICAgICAgIH0gZWxzZSB7XG4gICAgICAgICAgICB0aGlzLnBvcG92ZXJUcmlnZ2VyLmNsb3NlUG9wb3ZlcigpO1xuICAgICAgICB9XG4gICAgfVxuXG4gICAgcHVibGljIGhhbmRsZUNsaWNrKGV2ZW50OiBNb3VzZUV2ZW50KTogdm9pZCB7XG4gICAgICAgIGlmICh0aGlzLmRpc2FibGVkIHx8IHRoaXMubG9hZGluZykge1xuICAgICAgICAgICAgcmV0dXJuO1xuICAgICAgICB9IGVsc2Uge1xuICAgICAgICAgICAgdGhpcy5vbkNsaWNrLmVtaXQoZXZlbnQpO1xuICAgICAgICAgICAgdGhpcy5jbG9zZVBvcG92ZXIoKTtcbiAgICAgICAgICAgIGV2ZW50LnN0b3BQcm9wYWdhdGlvbigpO1xuICAgICAgICB9XG4gICAgfVxuXG4gICAgcHVibGljIGhhbmRsZUZvY3VzKGV2ZW50OiBNb3VzZUV2ZW50KTogdm9pZCB7XG4gICAgICAgIGlmICh0aGlzLmRpc2FibGVkIHx8IHRoaXMubG9hZGluZykge1xuICAgICAgICAgICAgcmV0dXJuO1xuICAgICAgICB9IGVsc2Uge1xuICAgICAgICAgICAgdGhpcy5vbkZvY3VzLmVtaXQoZXZlbnQpO1xuICAgICAgICAgICAgZXZlbnQuc3RvcFByb3BhZ2F0aW9uKCk7XG4gICAgICAgIH1cbiAgICB9XG5cbiAgICBwdWJsaWMgaGFuZGxlQmx1cihldmVudDogTW91c2VFdmVudCk6IHZvaWQge1xuICAgICAgICBpZiAodGhpcy5kaXNhYmxlZCB8fCB0aGlzLmxvYWRpbmcpIHtcbiAgICAgICAgICAgIHJldHVybjtcbiAgICAgICAgfSBlbHNlIHtcbiAgICAgICAgICAgIHRoaXMub25CbHVyLmVtaXQoZXZlbnQpO1xuICAgICAgICAgICAgZXZlbnQuc3RvcFByb3BhZ2F0aW9uKCk7XG4gICAgICAgIH1cbiAgICB9XG5cbiAgICBwdWJsaWMgaGFuZGxlQ2xpY2tCdG5NZW51KGV2ZW50OiBNb3VzZUV2ZW50KTogdm9pZCB7XG4gICAgICAgIGlmICh0aGlzLmRpc2FibGVkIHx8IHRoaXMubG9hZGluZykge1xuICAgICAgICAgICAgcmV0dXJuO1xuICAgICAgICB9IGVsc2Uge1xuICAgICAgICAgICAgaWYgKCFPYmplY3RVdGlsLmlzTnVsbCh0aGlzLnBvcG92ZXJUcmlnZ2VyKSkge1xuICAgICAgICAgICAgICAgIHRoaXMucG9wb3ZlclRyaWdnZXIudG9nZ2xlUG9wb3ZlcigpO1xuICAgICAgICAgICAgfVxuICAgICAgICAgICAgZXZlbnQuc3RvcFByb3BhZ2F0aW9uKCk7XG4gICAgICAgIH1cbiAgICB9XG5cbiAgICBwdWJsaWMgaGFuZGxlQ2xpY2tCdG5TcGxpdE9wdGlvbihvcHRpb246IFNwbGl0T3B0aW9ucyk6IHZvaWQge1xuICAgICAgICBpZiAodGhpcy5kaXNhYmxlZCB8fCB0aGlzLmxvYWRpbmcgfHwgIW9wdGlvbiB8fCBvcHRpb24uZGlzYWJsZWQgfHwgIW9wdGlvbi5jbGlja0ZuKSB7XG4gICAgICAgICAgICByZXR1cm47XG4gICAgICAgIH0gZWxzZSB7XG4gICAgICAgICAgICBvcHRpb24uY2xpY2tGbigpO1xuICAgICAgICAgICAgdGhpcy5jbG9zZVBvcG92ZXIoKTtcbiAgICAgICAgfVxuICAgIH1cblxuICAgIEBIb3N0TGlzdGVuZXIoJ3dpbmRvdzpyZXNpemUnLCBbJyRldmVudCddKVxuICAgIG9uUmVzaXplKGV2ZW50OiBVSUV2ZW50KTogdm9pZCB7XG4gICAgICAgIGlmICh0aGlzLnBvcG92ZXJUcmlnZ2VyKSB7XG4gICAgICAgICAgICB0aGlzLnBvcG92ZXJUcmlnZ2VyLmNsb3NlUG9wb3ZlcigpO1xuICAgICAgICAgICAgZXZlbnQuc3RvcFByb3BhZ2F0aW9uKCk7XG4gICAgICAgIH1cbiAgICB9XG5cbn1cbiJdfQ==
@@ -0,0 +1,19 @@
1
+ import { __decorate, __metadata } from "tslib";
2
+ import { Directive, ViewContainerRef } from '@angular/core';
3
+ var GIPIDynamicTabDirective = /** @class */ (function () {
4
+ function GIPIDynamicTabDirective(viewContainer) {
5
+ this.viewContainer = viewContainer;
6
+ }
7
+ GIPIDynamicTabDirective.ctorParameters = function () { return [
8
+ { type: ViewContainerRef }
9
+ ]; };
10
+ GIPIDynamicTabDirective = __decorate([
11
+ Directive({
12
+ selector: '[GIPIDynamicTab]'
13
+ }),
14
+ __metadata("design:paramtypes", [ViewContainerRef])
15
+ ], GIPIDynamicTabDirective);
16
+ return GIPIDynamicTabDirective;
17
+ }());
18
+ export { GIPIDynamicTabDirective };
19
+ //# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoiZHluYW1pYy10YWIuZGlyZWN0aXZlLmpzIiwic291cmNlUm9vdCI6Im5nOi8vQGdpcGlzaXN0ZW1hcy9uZy1jb3JlLyIsInNvdXJjZXMiOlsic2hhcmVkL2dpcGktY29tcG9uZW50cy90YWJzL3NoYXJlZC9keW5hbWljLXRhYi5kaXJlY3RpdmUudHMiXSwibmFtZXMiOltdLCJtYXBwaW5ncyI6IjtBQUFBLE9BQU8sRUFBRSxTQUFTLEVBQUUsZ0JBQWdCLEVBQUUsTUFBTSxlQUFlLENBQUM7QUFLNUQ7SUFFSSxpQ0FBbUIsYUFBK0I7UUFBL0Isa0JBQWEsR0FBYixhQUFhLENBQWtCO0lBQUksQ0FBQzs7Z0JBQXJCLGdCQUFnQjs7SUFGekMsdUJBQXVCO1FBSG5DLFNBQVMsQ0FBQztZQUNQLFFBQVEsRUFBRSxrQkFBa0I7U0FDL0IsQ0FBQzt5Q0FHb0MsZ0JBQWdCO09BRnpDLHVCQUF1QixDQUluQztJQUFELDhCQUFDO0NBQUEsQUFKRCxJQUlDO1NBSlksdUJBQXVCIiwic291cmNlc0NvbnRlbnQiOlsiaW1wb3J0IHsgRGlyZWN0aXZlLCBWaWV3Q29udGFpbmVyUmVmIH0gZnJvbSAnQGFuZ3VsYXIvY29yZSc7XG5cbkBEaXJlY3RpdmUoe1xuICAgIHNlbGVjdG9yOiAnW0dJUElEeW5hbWljVGFiXSdcbn0pXG5leHBvcnQgY2xhc3MgR0lQSUR5bmFtaWNUYWJEaXJlY3RpdmUge1xuXG4gICAgY29uc3RydWN0b3IocHVibGljIHZpZXdDb250YWluZXI6IFZpZXdDb250YWluZXJSZWYpIHsgfVxuXG59XG4iXX0=
@@ -0,0 +1,10 @@
1
+ var TabModel = /** @class */ (function () {
2
+ function TabModel() {
3
+ this.active = false;
4
+ this.closeable = false;
5
+ this.disabled = false;
6
+ }
7
+ return TabModel;
8
+ }());
9
+ export { TabModel };
10
+ //# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoidGFiLm1vZGVsLmpzIiwic291cmNlUm9vdCI6Im5nOi8vQGdpcGlzaXN0ZW1hcy9uZy1jb3JlLyIsInNvdXJjZXMiOlsic2hhcmVkL2dpcGktY29tcG9uZW50cy90YWJzL3NoYXJlZC90YWIubW9kZWwudHMiXSwibmFtZXMiOltdLCJtYXBwaW5ncyI6IkFBRUE7SUFBQTtRQUlJLFdBQU0sR0FBRyxLQUFLLENBQUM7UUFJZixjQUFTLEdBQUcsS0FBSyxDQUFDO1FBRWxCLGFBQVEsR0FBRyxLQUFLLENBQUM7SUFVckIsQ0FBQztJQUFELGVBQUM7QUFBRCxDQUFDLEFBcEJELElBb0JDIiwic291cmNlc0NvbnRlbnQiOlsiaW1wb3J0IHsgVGVtcGxhdGVSZWYgfSBmcm9tICdAYW5ndWxhci9jb3JlJztcblxuZXhwb3J0IGNsYXNzIFRhYk1vZGVsIHtcblxuICAgIGxhYmVsOiBzdHJpbmc7XG5cbiAgICBhY3RpdmUgPSBmYWxzZTtcblxuICAgIHRlbXBsYXRlOiBUZW1wbGF0ZVJlZjxhbnk+O1xuXG4gICAgY2xvc2VhYmxlID0gZmFsc2U7XG5cbiAgICBkaXNhYmxlZCA9IGZhbHNlO1xuXG4gICAgZGF0YTogYW55O1xuXG4gICAgaWNvbjogc3RyaW5nO1xuXG4gICAgc3ZnSWNvbjogc3RyaW5nO1xuXG4gICAgYWN0aW9uOiAob2JqOiBhbnkpID0+IHZvaWQ7XG5cbn1cbiJdfQ==
@@ -0,0 +1,67 @@
1
+ import { __decorate, __metadata } from "tslib";
2
+ import { Component, EventEmitter, Input, Output, TemplateRef } from '@angular/core';
3
+ var GIPITabComponent = /** @class */ (function () {
4
+ function GIPITabComponent() {
5
+ this.active = false;
6
+ this.closeable = false;
7
+ this.disabled = false;
8
+ this.selectionChange = new EventEmitter();
9
+ }
10
+ GIPITabComponent.prototype.ngOnInit = function () { };
11
+ __decorate([
12
+ Input(),
13
+ __metadata("design:type", Number)
14
+ ], GIPITabComponent.prototype, "index", void 0);
15
+ __decorate([
16
+ Input(),
17
+ __metadata("design:type", String)
18
+ ], GIPITabComponent.prototype, "label", void 0);
19
+ __decorate([
20
+ Input(),
21
+ __metadata("design:type", Boolean)
22
+ ], GIPITabComponent.prototype, "active", void 0);
23
+ __decorate([
24
+ Input(),
25
+ __metadata("design:type", TemplateRef)
26
+ ], GIPITabComponent.prototype, "template", void 0);
27
+ __decorate([
28
+ Input(),
29
+ __metadata("design:type", Boolean)
30
+ ], GIPITabComponent.prototype, "closeable", void 0);
31
+ __decorate([
32
+ Input(),
33
+ __metadata("design:type", Boolean)
34
+ ], GIPITabComponent.prototype, "disabled", void 0);
35
+ __decorate([
36
+ Input(),
37
+ __metadata("design:type", Object)
38
+ ], GIPITabComponent.prototype, "data", void 0);
39
+ __decorate([
40
+ Input(),
41
+ __metadata("design:type", String)
42
+ ], GIPITabComponent.prototype, "icon", void 0);
43
+ __decorate([
44
+ Input(),
45
+ __metadata("design:type", String)
46
+ ], GIPITabComponent.prototype, "svgIcon", void 0);
47
+ __decorate([
48
+ Output(),
49
+ __metadata("design:type", EventEmitter)
50
+ ], GIPITabComponent.prototype, "selectionChange", void 0);
51
+ GIPITabComponent = __decorate([
52
+ Component({
53
+ selector: 'gipi-tab',
54
+ exportAs: 'gipiTab',
55
+ template: "<ng-container *ngIf=\"active\">\n <ng-content> </ng-content>\n <ng-container *ngIf=\"template\"\n [ngTemplateOutlet]=\"template\"\n [ngTemplateOutletContext]=\"{$implicit: data}\">\n </ng-container>\n</ng-container>",
56
+ host: {
57
+ 'class': 'gipi-tab',
58
+ '[style.display]': '!active ? "none" : "block"',
59
+ },
60
+ styles: [":host{padding:1.6rem}"]
61
+ }),
62
+ __metadata("design:paramtypes", [])
63
+ ], GIPITabComponent);
64
+ return GIPITabComponent;
65
+ }());
66
+ export { GIPITabComponent };
67
+ //# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoidGFiLmNvbXBvbmVudC5qcyIsInNvdXJjZVJvb3QiOiJuZzovL0BnaXBpc2lzdGVtYXMvbmctY29yZS8iLCJzb3VyY2VzIjpbInNoYXJlZC9naXBpLWNvbXBvbmVudHMvdGFicy90YWIvdGFiLmNvbXBvbmVudC50cyJdLCJuYW1lcyI6W10sIm1hcHBpbmdzIjoiO0FBQUEsT0FBTyxFQUFFLFNBQVMsRUFBRSxZQUFZLEVBQUUsS0FBSyxFQUFVLE1BQU0sRUFBRSxXQUFXLEVBQUUsTUFBTSxlQUFlLENBQUM7QUFZNUY7SUF1Qkk7UUFqQlMsV0FBTSxHQUFZLEtBQUssQ0FBQztRQUl4QixjQUFTLEdBQVksS0FBSyxDQUFDO1FBRTNCLGFBQVEsR0FBWSxLQUFLLENBQUM7UUFTekIsb0JBQWUsR0FBc0IsSUFBSSxZQUFZLEVBQUUsQ0FBQztJQUVsRCxDQUFDO0lBRWpCLG1DQUFRLEdBQVIsY0FBbUIsQ0FBQztJQXZCWDtRQUFSLEtBQUssRUFBRTs7bURBQWU7SUFFZDtRQUFSLEtBQUssRUFBRTs7bURBQWU7SUFFZDtRQUFSLEtBQUssRUFBRTs7b0RBQXlCO0lBRXhCO1FBQVIsS0FBSyxFQUFFO2tDQUFXLFdBQVc7c0RBQU07SUFFM0I7UUFBUixLQUFLLEVBQUU7O3VEQUE0QjtJQUUzQjtRQUFSLEtBQUssRUFBRTs7c0RBQTJCO0lBRTFCO1FBQVIsS0FBSyxFQUFFOztrREFBVztJQUVWO1FBQVIsS0FBSyxFQUFFOztrREFBYztJQUNiO1FBQVIsS0FBSyxFQUFFOztxREFBaUI7SUFJZjtRQUFULE1BQU0sRUFBRTtrQ0FBa0IsWUFBWTs2REFBMkI7SUFyQnpELGdCQUFnQjtRQVY1QixTQUFTLENBQUM7WUFDUCxRQUFRLEVBQUUsVUFBVTtZQUNwQixRQUFRLEVBQUUsU0FBUztZQUNuQiw4UUFBbUM7WUFFbkMsSUFBSSxFQUFFO2dCQUNGLE9BQU8sRUFBRSxVQUFVO2dCQUNuQixpQkFBaUIsRUFBRSw0QkFBNEI7YUFDbEQ7O1NBQ0osQ0FBQzs7T0FDVyxnQkFBZ0IsQ0EyQjVCO0lBQUQsdUJBQUM7Q0FBQSxBQTNCRCxJQTJCQztTQTNCWSxnQkFBZ0IiLCJzb3VyY2VzQ29udGVudCI6WyJpbXBvcnQgeyBDb21wb25lbnQsIEV2ZW50RW1pdHRlciwgSW5wdXQsIE9uSW5pdCwgT3V0cHV0LCBUZW1wbGF0ZVJlZiB9IGZyb20gJ0Bhbmd1bGFyL2NvcmUnO1xuXG5AQ29tcG9uZW50KHtcbiAgICBzZWxlY3RvcjogJ2dpcGktdGFiJyxcbiAgICBleHBvcnRBczogJ2dpcGlUYWInLFxuICAgIHRlbXBsYXRlVXJsOiAnLi90YWIuY29tcG9uZW50Lmh0bWwnLFxuICAgIHN0eWxlVXJsczogWycuL3RhYi5jb21wb25lbnQuc2NzcyddLFxuICAgIGhvc3Q6IHtcbiAgICAgICAgJ2NsYXNzJzogJ2dpcGktdGFiJyxcbiAgICAgICAgJ1tzdHlsZS5kaXNwbGF5XSc6ICchYWN0aXZlID8gXCJub25lXCIgOiBcImJsb2NrXCInLFxuICAgIH0sXG59KVxuZXhwb3J0IGNsYXNzIEdJUElUYWJDb21wb25lbnQgaW1wbGVtZW50cyBPbkluaXQge1xuXG4gICAgQElucHV0KCkgaW5kZXg6IG51bWJlcjtcblxuICAgIEBJbnB1dCgpIGxhYmVsOiBzdHJpbmc7XG5cbiAgICBASW5wdXQoKSBhY3RpdmU6IGJvb2xlYW4gPSBmYWxzZTtcblxuICAgIEBJbnB1dCgpIHRlbXBsYXRlOiBUZW1wbGF0ZVJlZjxhbnk+O1xuXG4gICAgQElucHV0KCkgY2xvc2VhYmxlOiBib29sZWFuID0gZmFsc2U7XG5cbiAgICBASW5wdXQoKSBkaXNhYmxlZDogYm9vbGVhbiA9IGZhbHNlO1xuXG4gICAgQElucHV0KCkgZGF0YTogYW55O1xuXG4gICAgQElucHV0KCkgaWNvbjogc3RyaW5nO1xuICAgIEBJbnB1dCgpIHN2Z0ljb246IHN0cmluZztcblxuICAgIGFjdGlvbjogKG9iajogYW55KSA9PiB2b2lkO1xuXG4gICAgQE91dHB1dCgpIHNlbGVjdGlvbkNoYW5nZTogRXZlbnRFbWl0dGVyPGFueT4gPSBuZXcgRXZlbnRFbWl0dGVyKCk7XG5cbiAgICBjb25zdHJ1Y3RvcigpIHsgfVxuXG4gICAgbmdPbkluaXQoKTogdm9pZCB7IH1cblxufVxuIl19
@@ -0,0 +1,131 @@
1
+ import { __decorate, __metadata, __read, __spread } from "tslib";
2
+ import { AfterContentInit, Component, ComponentFactory, ComponentFactoryResolver, ComponentRef, ContentChildren, ElementRef, OnInit, QueryList, TemplateRef, ViewChild, ViewContainerRef } from '@angular/core';
3
+ import { GIPIDynamicTabDirective } from '../shared/dynamic-tab.directive';
4
+ import { TabModel } from '../shared/tab.model';
5
+ import { GIPITabComponent } from '../tab/tab.component';
6
+ var GIPITabGroupComponent = /** @class */ (function () {
7
+ function GIPITabGroupComponent(elementRef, _componentFactoryResolver) {
8
+ this.elementRef = elementRef;
9
+ this._componentFactoryResolver = _componentFactoryResolver;
10
+ this.dynamicTabs = [];
11
+ }
12
+ GIPITabGroupComponent.prototype.ngOnInit = function () { };
13
+ GIPITabGroupComponent.prototype.ngAfterContentInit = function () {
14
+ var activeTabs = this.tabQueryList.filter(function (tab) { return tab.active; });
15
+ if (activeTabs.length === 0 && this.tabQueryList.length > 0) {
16
+ this.selectTab(this.tabQueryList.first);
17
+ }
18
+ };
19
+ GIPITabGroupComponent.prototype.openTab = function (label, template, data, closeable, disabled, action) {
20
+ if (closeable === void 0) { closeable = false; }
21
+ if (disabled === void 0) { disabled = false; }
22
+ var tab = new TabModel();
23
+ tab.label = label;
24
+ tab.template = template;
25
+ tab.data = data;
26
+ tab.closeable = closeable;
27
+ tab.disabled = disabled;
28
+ tab.action = action;
29
+ this._openTabs(Array(tab));
30
+ };
31
+ GIPITabGroupComponent.prototype._openTabs = function (tabList) {
32
+ var _a;
33
+ var _this = this;
34
+ var tabsComponent = tabList.map(function (tab) { return _this._getTabComponent(tab.label, tab.template, tab.data, tab.closeable, tab.disabled, tab.action); });
35
+ (_a = this.dynamicTabs).push.apply(_a, __spread(tabsComponent));
36
+ this.selectTab(this.dynamicTabs[0]);
37
+ };
38
+ GIPITabGroupComponent.prototype._getTabComponent = function (label, template, data, closeable, disabled, action) {
39
+ if (closeable === void 0) { closeable = false; }
40
+ if (disabled === void 0) { disabled = false; }
41
+ var componentFactory = this._componentFactoryResolver.resolveComponentFactory(GIPITabComponent);
42
+ var componentRef = this.dynamicTabPlaceholder.viewContainer.createComponent(componentFactory);
43
+ var instance = componentRef.instance;
44
+ instance.label = label;
45
+ instance.template = template;
46
+ instance.data = data;
47
+ instance.closeable = closeable;
48
+ instance.disabled = disabled;
49
+ instance.action = action;
50
+ return componentRef.instance;
51
+ };
52
+ GIPITabGroupComponent.prototype.selectTab = function (tab) {
53
+ this.tabQueryList.toArray().forEach(function (t) { return (t.active = false); });
54
+ this.dynamicTabs.forEach(function (t) { return (t.active = false); });
55
+ tab.active = true;
56
+ tab.selectionChange.emit();
57
+ if (tab.action) {
58
+ tab.action(tab.data);
59
+ }
60
+ };
61
+ GIPITabGroupComponent.prototype.closeTab = function (tab) {
62
+ var index = this.dynamicTabs.indexOf(tab);
63
+ this.dynamicTabs.splice(index, 1);
64
+ var viewContainerRef = this.dynamicTabPlaceholder.viewContainer;
65
+ viewContainerRef.remove(index);
66
+ if (this.tabQueryList.length > 0) {
67
+ this.selectTab(this.tabQueryList.first);
68
+ }
69
+ };
70
+ GIPITabGroupComponent.prototype.closeActiveTab = function () {
71
+ var activeTabs = this.dynamicTabs.filter(function (tab) { return tab.active; });
72
+ if (activeTabs.length > 0) {
73
+ this.closeTab(activeTabs[0]);
74
+ }
75
+ };
76
+ GIPITabGroupComponent.prototype.closeAllTabs = function () {
77
+ var _this = this;
78
+ var tabs = Object.assign([], this.dynamicTabs);
79
+ if (tabs.length > 0) {
80
+ tabs.forEach(function (tab) { return _this.closeTab(tab); });
81
+ }
82
+ };
83
+ GIPITabGroupComponent.prototype.nextTab = function () {
84
+ var currentTab = this.tabQueryList.toArray().find(function (tab) { return tab.active; });
85
+ var nextTab = this.tabQueryList.toArray()[this.tabQueryList.toArray().indexOf(currentTab) + 1];
86
+ if (nextTab != null) {
87
+ this.tabQueryList.toArray().forEach(function (t) { return (t.active = false); });
88
+ this.dynamicTabs.forEach(function (t) { return (t.active = false); });
89
+ nextTab.active = true;
90
+ nextTab.selectionChange.emit();
91
+ }
92
+ };
93
+ GIPITabGroupComponent.prototype.previousTab = function () {
94
+ var currentTab = this.tabQueryList.toArray().find(function (tab) { return tab.active; });
95
+ var previousTab = this.tabQueryList.toArray()[this.tabQueryList.toArray().indexOf(currentTab) - 1];
96
+ if (previousTab != null) {
97
+ this.tabQueryList.toArray().forEach(function (t) { return (t.active = false); });
98
+ this.dynamicTabs.forEach(function (t) { return (t.active = false); });
99
+ previousTab.active = true;
100
+ previousTab.selectionChange.emit();
101
+ }
102
+ };
103
+ GIPITabGroupComponent.ctorParameters = function () { return [
104
+ { type: ElementRef },
105
+ { type: ComponentFactoryResolver }
106
+ ]; };
107
+ __decorate([
108
+ ContentChildren(GIPITabComponent),
109
+ __metadata("design:type", QueryList)
110
+ ], GIPITabGroupComponent.prototype, "tabQueryList", void 0);
111
+ __decorate([
112
+ ViewChild(GIPIDynamicTabDirective, { static: false }),
113
+ __metadata("design:type", GIPIDynamicTabDirective)
114
+ ], GIPITabGroupComponent.prototype, "dynamicTabPlaceholder", void 0);
115
+ GIPITabGroupComponent = __decorate([
116
+ Component({
117
+ selector: 'gipi-tab-group',
118
+ exportAs: 'gipiTabGroup',
119
+ template: "<nav mat-tab-nav-bar>\n <a mat-tab-link\n *ngFor=\"let tab of tabQueryList\"\n (click)=\"selectTab(tab)\"\n [class.active]=\"tab.active\"\n [disabled]=\"tab.disabled\">\n <mat-icon *ngIf=\"tab.icon || tab.svgIcon\"\n [svgIcon]=\"tab.svgIcon ? tab.svgIcon : ''\">\n {{ !tab.svgIcon && tab.icon ? tab.icon : '' }}\n </mat-icon>\n\n {{ tab.label }}\n </a>\n\n <a mat-tab-link\n *ngFor=\"let tab of dynamicTabs\"\n (click)=\"selectTab(tab)\"\n [class.active]=\"tab.active\"\n [disabled]=\"tab.disabled\">\n <mat-icon *ngIf=\"tab.icon || tab.svgIcon\"\n [svgIcon]=\"tab.svgIcon ? tab.svgIcon : ''\">\n {{ !tab.svgIcon && tab.icon ? tab.icon : '' }}\n </mat-icon>\n\n {{ tab.label }}\n </a>\n</nav>\n\n<ng-content> </ng-content>\n<ng-template dynamicTab\n #container>\n</ng-template>",
120
+ host: {
121
+ 'class': 'gipi-tab-group',
122
+ },
123
+ styles: [":host{display:block;flex:1;width:100%;box-shadow:0 4px 6px -1px rgba(0,0,0,.1),0 2px 4px -2px rgba(0,0,0,.1)}:host ::ng-deep .mat-tab-nav-bar{background:#f5f5f6;border:none;border-radius:.4rem;padding:.4rem;box-shadow:0 1px 3px 0 rgba(0,0,0,.1),0 1px 2px -1px rgba(0,0,0,.1)}:host ::ng-deep .mat-tab-links{display:flex;gap:1rem}:host ::ng-deep .mat-tab-link{height:auto!important;padding:1rem!important;opacity:1!important;border:none!important;border-radius:4px!important;transition:.2s!important;color:#595959!important;gap:1rem}:host ::ng-deep .mat-tab-link>mat-icon{width:2rem!important;height:2rem!important;font-size:2rem!important;color:#595959!important}:host ::ng-deep .mat-tab-link>mat-icon svg,:host ::ng-deep .mat-tab-link>mat-icon svg g path,:host ::ng-deep .mat-tab-link>mat-icon svg path{color:#595959!important;fill:#595959!important}:host ::ng-deep .mat-tab-link:not(.active):hover{background:#e0e1e2!important}:host ::ng-deep .mat-tab-link.active{background:#e0313e!important;color:#fff!important}:host ::ng-deep .mat-tab-link.active>mat-icon{color:#fff!important}:host ::ng-deep .mat-tab-link.active>mat-icon svg,:host ::ng-deep .mat-tab-link.active>mat-icon svg g path,:host ::ng-deep .mat-tab-link.active>mat-icon svg path{color:#fff!important;fill:#fff!important}:host ::ng-deep .mat-tab-link:disabled,:host ::ng-deep .mat-tab-link:disabled>mat-icon{color:#9a9da2!important;fill:#9a9da2!important}:host ::ng-deep .mat-tab-link:disabled svg,:host ::ng-deep .mat-tab-link:disabled svg g path,:host ::ng-deep .mat-tab-link:disabled svg path,:host ::ng-deep .mat-tab-link:disabled>mat-icon svg,:host ::ng-deep .mat-tab-link:disabled>mat-icon svg g path,:host ::ng-deep .mat-tab-link:disabled>mat-icon svg path{color:#9a9da2!important;fill:#9a9da2!important}:host ::ng-deep .mat-ink-bar{display:none!important}"]
124
+ }),
125
+ __metadata("design:paramtypes", [ElementRef,
126
+ ComponentFactoryResolver])
127
+ ], GIPITabGroupComponent);
128
+ return GIPITabGroupComponent;
129
+ }());
130
+ export { GIPITabGroupComponent };
131
+ //# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoidGFiLWdyb3VwLmNvbXBvbmVudC5qcyIsInNvdXJjZVJvb3QiOiJuZzovL0BnaXBpc2lzdGVtYXMvbmctY29yZS8iLCJzb3VyY2VzIjpbInNoYXJlZC9naXBpLWNvbXBvbmVudHMvdGFicy90YWItZ3JvdXAvdGFiLWdyb3VwLmNvbXBvbmVudC50cyJdLCJuYW1lcyI6W10sIm1hcHBpbmdzIjoiO0FBQUEsT0FBTyxFQUFFLGdCQUFnQixFQUFFLFNBQVMsRUFBRSxnQkFBZ0IsRUFBRSx3QkFBd0IsRUFBRSxZQUFZLEVBQUUsZUFBZSxFQUFFLFVBQVUsRUFBRSxNQUFNLEVBQUUsU0FBUyxFQUFFLFdBQVcsRUFBRSxTQUFTLEVBQUUsZ0JBQWdCLEVBQUUsTUFBTSxlQUFlLENBQUM7QUFFaE4sT0FBTyxFQUFFLHVCQUF1QixFQUFFLE1BQU0saUNBQWlDLENBQUM7QUFDMUUsT0FBTyxFQUFFLFFBQVEsRUFBRSxNQUFNLHFCQUFxQixDQUFDO0FBQy9DLE9BQU8sRUFBRSxnQkFBZ0IsRUFBRSxNQUFNLHNCQUFzQixDQUFDO0FBV3hEO0lBT0ksK0JBQ1csVUFBc0IsRUFDckIseUJBQW1EO1FBRHBELGVBQVUsR0FBVixVQUFVLENBQVk7UUFDckIsOEJBQXlCLEdBQXpCLHlCQUF5QixDQUEwQjtRQUp4RCxnQkFBVyxHQUF1QixFQUFFLENBQUM7SUFLeEMsQ0FBQztJQUVMLHdDQUFRLEdBQVIsY0FBbUIsQ0FBQztJQUVwQixrREFBa0IsR0FBbEI7UUFDSSxJQUFNLFVBQVUsR0FBdUIsSUFBSSxDQUFDLFlBQVksQ0FBQyxNQUFNLENBQUMsVUFBQSxHQUFHLElBQUksT0FBQSxHQUFHLENBQUMsTUFBTSxFQUFWLENBQVUsQ0FBQyxDQUFDO1FBQ25GLElBQUksVUFBVSxDQUFDLE1BQU0sS0FBSyxDQUFDLElBQUksSUFBSSxDQUFDLFlBQVksQ0FBQyxNQUFNLEdBQUcsQ0FBQyxFQUFFO1lBQ3pELElBQUksQ0FBQyxTQUFTLENBQUMsSUFBSSxDQUFDLFlBQVksQ0FBQyxLQUFLLENBQUMs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Q29tcG9uZW50RmFjdG9yeSwgQ29tcG9uZW50RmFjdG9yeVJlc29sdmVyLCBDb21wb25lbnRSZWYsIENvbnRlbnRDaGlsZHJlbiwgRWxlbWVudFJlZiwgT25Jbml0LCBRdWVyeUxpc3QsIFRlbXBsYXRlUmVmLCBWaWV3Q2hpbGQsIFZpZXdDb250YWluZXJSZWYgfSBmcm9tICdAYW5ndWxhci9jb3JlJztcblxuaW1wb3J0IHsgR0lQSUR5bmFtaWNUYWJEaXJlY3RpdmUgfSBmcm9tICcuLi9zaGFyZWQvZHluYW1pYy10YWIuZGlyZWN0aXZlJztcbmltcG9ydCB7IFRhYk1vZGVsIH0gZnJvbSAnLi4vc2hhcmVkL3RhYi5tb2RlbCc7XG5pbXBvcnQgeyBHSVBJVGFiQ29tcG9uZW50IH0gZnJvbSAnLi4vdGFiL3RhYi5jb21wb25lbnQnO1xuXG5AQ29tcG9uZW50KHtcbiAgICBzZWxlY3RvcjogJ2dpcGktdGFiLWdyb3VwJyxcbiAgICBleHBvcnRBczogJ2dpcGlUYWJHcm91cCcsXG4gICAgdGVtcGxhdGVVcmw6ICcuL3RhYi1ncm91cC5jb21wb25lbnQuaHRtbCcsXG4gICAgc3R5bGVVcmxzOiBbJy4vdGFiLWdyb3VwLmNvbXBvbmVudC5zY3NzJ10sXG4gICAgaG9zdDoge1xuICAgICAgICAnY2xhc3MnOiAnZ2lwaS10YWItZ3JvdXAnLFxuICAgIH0sXG59KVxuZXhwb3J0IGNsYXNzIEdJUElUYWJHcm91cENvbXBvbmVudCBpbXBsZW1lbnRzIEFmdGVyQ29udGVudEluaXQsIE9uSW5pdCB7XG5cbiAgICBAQ29udGVudENoaWxkcmVuKEdJUElUYWJDb21wb25lbnQpIHRhYlF1ZXJ5TGlzdDogUXVlcnlMaXN0PEdJUElUYWJDb21wb25lbnQ+O1xuICAgIEBWaWV3Q2hpbGQoR0lQSUR5bmFtaWNUYWJEaXJlY3RpdmUsIHsgc3RhdGljOiBmYWxzZSB9KSBkeW5hbWljVGFiUGxhY2Vob2xkZXI6IEdJUElEeW5hbWljVGFiRGlyZWN0aXZlO1xuXG4gICAgcHVibGljIGR5bmFtaWNUYWJzOiBHSVBJVGFiQ29tcG9uZW50W10gPSBbXTtcblxuICAgIGNvbnN0cnVjdG9yKFxuICAgICAgICBwdWJsaWMgZWxlbWVudFJlZjogRWxlbWVudFJlZixcbiAgICAgICAgcHJpdmF0ZSBfY29tcG9uZW50RmFjdG9yeVJlc29sdmVyOiBDb21wb25lbnRGYWN0b3J5UmVzb2x2ZXJcbiAgICApIHsgfVxuXG4gICAgbmdPbkluaXQoKTogdm9pZCB7IH1cblxuICAgIG5nQWZ0ZXJDb250ZW50SW5pdCgpIHtcbiAgICAgICAgY29uc3QgYWN0aXZlVGFiczogR0lQSVRhYkNvbXBvbmVudFtdID0gdGhpcy50YWJRdWVyeUxpc3QuZmlsdGVyKHRhYiA9PiB0YWIuYWN0aXZlKTtcbiAgICAgICAgaWYgKGFjdGl2ZVRhYnMubGVuZ3RoID09PSAwICYmIHRoaXMudGFiUXVlcnlMaXN0Lmxlbmd0aCA+IDApIHtcbiAgICAgICAgICAgIHRoaXMuc2VsZWN0VGFiKHRoaXMudGFiUXVlcnlMaXN0LmZpcnN0KTtcbiAgICAgICAgfVxuICAgIH1cblxuICAgIHB1YmxpYyBvcGVuVGFiKGxhYmVsOiBzdHJpbmcsIHRlbXBsYXRlPzogVGVtcGxhdGVSZWY8YW55PiwgZGF0YT86IGFueSwgY2xvc2VhYmxlOiBib29sZWFuID0gZmFsc2UsIGRpc2FibGVkOiBib29sZWFuID0gZmFsc2UsIGFjdGlvbj86IChvYmo6IGFueSkgPT4gdm9pZCk6IHZvaWQge1xuICAgICAgICBjb25zdCB0YWI6IFRhYk1vZGVsID0gbmV3IFRhYk1vZGVsKCk7XG4gICAgICAgIHRhYi5sYWJlbCA9IGxhYmVsO1xuICAgICAgICB0YWIudGVtcGxhdGUgPSB0ZW1wbGF0ZTtcbiAgICAgICAgdGFiLmRhdGEgPSBkYXRhO1xuICAgICAgICB0YWIuY2xvc2VhYmxlID0gY2xvc2VhYmxlO1xuICAgICAgICB0YWIuZGlzYWJsZWQgPSBkaXNhYmxlZDtcbiAgICAgICAgdGFiLmFjdGlvbiA9IGFjdGlvbjtcbiAgICAgICAgdGhpcy5fb3BlblRhYnMoQXJyYXkodGFiKSk7XG4gICAgfVxuXG4gICAgcHJpdmF0ZSBfb3BlblRhYnModGFiTGlzdDogVGFiTW9kZWxbXSk6IHZvaWQge1xuICAgICAgICBjb25zdCB0YWJzQ29tcG9uZW50OiBHSVBJVGFiQ29tcG9uZW50W10gPSB0YWJMaXN0Lm1hcCh0YWIgPT4gdGhpcy5fZ2V0VGFiQ29tcG9uZW50KHRhYi5sYWJlbCwgdGFiLnRlbXBsYXRlLCB0YWIuZGF0YSwgdGFiLmNsb3NlYWJsZSwgdGFiLmRpc2FibGVkLCB0YWIuYWN0aW9uKSk7XG4gICAgICAgIHRoaXMuZHluYW1pY1RhYnMucHVzaCguLi50YWJzQ29tcG9uZW50KTtcbiAgICAgICAgdGhpcy5zZWxlY3RUYWIodGhpcy5keW5hbWljVGFic1swXSk7XG4gICAgfVxuXG4gICAgcHJpdmF0ZSBfZ2V0VGFiQ29tcG9uZW50KGxhYmVsOiBzdHJpbmcsIHRlbXBsYXRlPzogVGVtcGxhdGVSZWY8YW55PiwgZGF0YT86IGFueSwgY2xvc2VhYmxlOiBib29sZWFuID0gZmFsc2UsIGRpc2FibGVkOiBib29sZWFuID0gZmFsc2UsIGFjdGlvbj86IChvYmo6IGFueSkgPT4gdm9pZCk6IEdJUElUYWJDb21wb25lbnQge1xuICAgICAgICBjb25zdCBjb21wb25lbnRGYWN0b3J5OiBDb21wb25lbnRGYWN0b3J5PEdJUElUYWJDb21wb25lbnQ+ID0gdGhpcy5fY29tcG9uZW50RmFjdG9yeVJlc29sdmVyLnJlc29sdmVDb21wb25lbnRGYWN0b3J5KEdJUElUYWJDb21wb25lbnQpO1xuICAgICAgICBjb25zdCBjb21wb25lbnRSZWY6IENvbXBvbmVudFJlZjxHSVBJVGFiQ29tcG9uZW50PiA9IHRoaXMuZHluYW1pY1RhYlBsYWNlaG9sZGVyLnZpZXdDb250YWluZXIuY3JlYXRlQ29tcG9uZW50KGNvbXBvbmVudEZhY3RvcnkpO1xuXG4gICAgICAgIGNvbnN0IGluc3RhbmNlID0gY29tcG9uZW50UmVmLmluc3RhbmNlO1xuICAgICAgICBpbnN0YW5jZS5sYWJlbCA9IGxhYmVsO1xuICAgICAgICBpbnN0YW5jZS50ZW1wbGF0ZSA9IHRlbXBsYXRlO1xuICAgICAgICBpbnN0YW5jZS5kYXRhID0gZGF0YTtcbiAgICAgICAgaW5zdGFuY2UuY2xvc2VhYmxlID0gY2xvc2VhYmxlO1xuICAgICAgICBpbnN0YW5jZS5kaXNhYmxlZCA9IGRpc2FibGVkO1xuICAgICAgICBpbnN0YW5jZS5hY3Rpb24gPSBhY3Rpb247XG5cbiAgICAgICAgcmV0dXJuIGNvbXBvbmVudFJlZi5pbnN0YW5jZTtcbiAgICB9XG5cbiAgICBwdWJsaWMgc2VsZWN0VGFiKHRhYjogR0lQSVRhYkNvbXBvbmVudCk6IHZvaWQge1xuICAgICAgICB0aGlzLnRhYlF1ZXJ5TGlzdC50b0FycmF5KCkuZm9yRWFjaCh0ID0+ICh0LmFjdGl2ZSA9IGZhbHNlKSk7XG4gICAgICAgIHRoaXMuZHluYW1pY1RhYnMuZm9yRWFjaCh0ID0+ICh0LmFjdGl2ZSA9IGZhbHNlKSk7XG4gICAgICAgIHRhYi5hY3RpdmUgPSB0cnVlO1xuICAgICAgICB0YWIuc2VsZWN0aW9uQ2hhbmdlLmVtaXQoKTtcblxuICAgICAgICBpZiAodGFiLmFjdGlvbikge1xuICAgICAgICAgICAgdGFiLmFjdGlvbih0YWIuZGF0YSk7XG4gICAgICAgIH1cbiAgICB9XG5cbiAgICBwdWJsaWMgY2xvc2VUYWIodGFiOiBHSVBJVGFiQ29tcG9uZW50KTogdm9pZCB7XG4gICAgICAgIGNvbnN0IGluZGV4OiBudW1iZXIgPSB0aGlzLmR5bmFtaWNUYWJzLmluZGV4T2YodGFiKTtcbiAgICAgICAgdGhpcy5keW5hbWljVGFicy5zcGxpY2UoaW5kZXgsIDEpO1xuXG4gICAgICAgIGNvbnN0IHZpZXdDb250YWluZXJSZWY6IFZpZXdDb250YWluZXJSZWYgPSB0aGlzLmR5bmFtaWNUYWJQbGFjZWhvbGRlci52aWV3Q29udGFpbmVyO1xuICAgICAgICB2aWV3Q29udGFpbmVyUmVmLnJlbW92ZShpbmRleCk7XG5cbiAgICAgICAgaWYgKHRoaXMudGFiUXVlcnlMaXN0Lmxlbmd0aCA+IDApIHtcbiAgICAgICAgICAgIHRoaXMuc2VsZWN0VGFiKHRoaXMudGFiUXVlcnlMaXN0LmZpcnN0KTtcbiAgICAgICAgfVxuICAgIH1cblxuICAgIHB1YmxpYyBjbG9zZUFjdGl2ZVRhYigpOiB2b2lkIHtcbiAgICAgICAgY29uc3QgYWN0aXZlVGFicyA9IHRoaXMuZHluYW1pY1RhYnMuZmlsdGVyKHRhYiA9PiB0YWIuYWN0aXZlKTtcbiAgICAgICAgaWYgKGFjdGl2ZVRhYnMubGVuZ3RoID4gMCkge1xuICAgICAgICAgICAgdGhpcy5jbG9zZVRhYihhY3RpdmVUYWJzWzBdKTtcbiAgICAgICAgfVxuICAgIH1cblxuICAgIHB1YmxpYyBjbG9zZUFsbFRhYnMoKTogdm9pZCB7XG4gICAgICAgIGNvbnN0IHRhYnMgPSBPYmplY3QuYXNzaWduKFtdLCB0aGlzLmR5bmFtaWNUYWJzKTtcbiAgICAgICAgaWYgKHRhYnMubGVuZ3RoID4gMCkge1xuICAgICAgICAgICAgdGFicy5mb3JFYWNoKHRhYiA9PiB0aGlzLmNsb3NlVGFiKHRhYikpO1xuICAgICAgICB9XG4gICAgfVxuXG4gICAgcHVibGljIG5leHRUYWIoKTogdm9pZCB7XG4gICAgICAgIGNvbnN0IGN1cnJlbnRUYWI6IEdJUElUYWJDb21wb25lbnQgPSB0aGlzLnRhYlF1ZXJ5TGlzdC50b0FycmF5KCkuZmluZCh0YWIgPT4gdGFiLmFjdGl2ZSk7XG4gICAgICAgIGNvbnN0IG5leHRUYWI6IEdJUElUYWJDb21wb25lbnQgPSB0aGlzLnRhYlF1ZXJ5TGlzdC50b0FycmF5KClbdGhpcy50YWJRdWVyeUxpc3QudG9BcnJheSgpLmluZGV4T2YoY3VycmVudFRhYikgKyAxXTtcbiAgICAgICAgaWYgKG5leHRUYWIgIT0gbnVsbCkge1xuICAgICAgICAgICAgdGhpcy50YWJRdWVyeUxpc3QudG9BcnJheSgpLmZvckVhY2godCA9PiAodC5hY3RpdmUgPSBmYWxzZSkpO1xuICAgICAgICAgICAgdGhpcy5keW5hbWljVGFicy5mb3JFYWNoKHQgPT4gKHQuYWN0aXZlID0gZmFsc2UpKTtcbiAgICAgICAgICAgIG5leHRUYWIuYWN0aXZlID0gdHJ1ZTtcbiAgICAgICAgICAgIG5leHRUYWIuc2VsZWN0aW9uQ2hhbmdlLmVtaXQoKTtcbiAgICAgICAgfVxuICAgIH1cblxuICAgIHB1YmxpYyBwcmV2aW91c1RhYigpOiB2b2lkIHtcbiAgICAgICAgY29uc3QgY3VycmVudFRhYjogR0lQSVRhYkNvbXBvbmVudCA9IHRoaXMudGFiUXVlcnlMaXN0LnRvQXJyYXkoKS5maW5kKHRhYiA9PiB0YWIuYWN0aXZlKTtcbiAgICAgICAgY29uc3QgcHJldmlvdXNUYWI6IEdJUElUYWJDb21wb25lbnQgPSB0aGlzLnRhYlF1ZXJ5TGlzdC50b0FycmF5KClbdGhpcy50YWJRdWVyeUxpc3QudG9BcnJheSgpLmluZGV4T2YoY3VycmVudFRhYikgLSAxXTtcbiAgICAgICAgaWYgKHByZXZpb3VzVGFiICE9IG51bGwpIHtcbiAgICAgICAgICAgIHRoaXMudGFiUXVlcnlMaXN0LnRvQXJyYXkoKS5mb3JFYWNoKHQgPT4gKHQuYWN0aXZlID0gZmFsc2UpKTtcbiAgICAgICAgICAgIHRoaXMuZHluYW1pY1RhYnMuZm9yRWFjaCh0ID0+ICh0LmFjdGl2ZSA9IGZhbHNlKSk7XG4gICAgICAgICAgICBwcmV2aW91c1RhYi5hY3RpdmUgPSB0cnVlO1xuICAgICAgICAgICAgcHJldmlvdXNUYWIuc2VsZWN0aW9uQ2hhbmdlLmVtaXQoKTtcbiAgICAgICAgfVxuICAgIH1cblxufVxuXG4iXX0=