@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.
- package/assets/styles/colors.scss +5 -1
- package/bundles/gipisistemas-ng-core.umd.js +2098 -1285
- package/bundles/gipisistemas-ng-core.umd.js.map +1 -1
- package/bundles/gipisistemas-ng-core.umd.min.js +10 -9
- package/bundles/gipisistemas-ng-core.umd.min.js.map +1 -1
- package/core/gipi-components/models/sort.model.d.ts +3 -3
- package/core/utils/array.util.d.ts +2 -2
- package/core/utils/object.util.d.ts +3 -5
- package/core/utils/string.util.d.ts +4 -0
- package/esm2015/core/gipi-components/models/sort.model.js +1 -1
- package/esm2015/core/gipi-components/services/abstract-crud.service.js +18 -24
- package/esm2015/core/utils/array.util.js +4 -2
- package/esm2015/core/utils/object.util.js +5 -9
- package/esm2015/core/utils/string.util.js +27 -1
- package/esm2015/gipi-components.js +11 -1
- package/esm2015/shared/components/input/input.component.js +46 -23
- package/esm2015/shared/components/select-entity-paged/shared/select-search/select-search.component.js +2 -2
- package/esm2015/shared/components/table/table.component.js +1 -1
- package/esm2015/shared/gipi-components/abstract-form/abstract-form.component.js +1 -1
- package/esm2015/shared/gipi-components/button/button.component.js +18 -2
- package/esm2015/shared/gipi-components/card/card.component.js +113 -0
- package/esm2015/shared/gipi-components/datepicker/datepicker/datepicker.component.js +8 -3
- package/esm2015/shared/gipi-components/empty-state/empty-state.component.js +30 -0
- package/esm2015/shared/gipi-components/input-select-paged/input-search/input-search.component.js +2 -2
- package/esm2015/shared/gipi-components/layout-grid/col.directive.js +4 -4
- package/esm2015/shared/gipi-components/month-year-picker/month-year-picker.component.js +2 -2
- package/esm2015/shared/gipi-components/notification/notification.component.js +8 -3
- package/esm2015/shared/gipi-components/popover/shared/popover-trigger.js +4 -4
- package/esm2015/shared/gipi-components/sidebar/sidenav/sidenav.component.js +35 -3
- package/esm2015/shared/gipi-components/slide-toggle/slide-toggle.component.js +113 -0
- package/esm2015/shared/gipi-components/split-button/split-button.component.js +243 -0
- package/esm2015/shared/gipi-components/tabs/shared/dynamic-tab.directive.js +18 -0
- package/esm2015/shared/gipi-components/tabs/shared/tab.model.js +8 -0
- package/esm2015/shared/gipi-components/tabs/tab/tab.component.js +66 -0
- package/esm2015/shared/gipi-components/tabs/tab-group/tab-group.component.js +123 -0
- package/esm2015/shared/gipi-components/textarea/textarea.component.js +298 -0
- package/esm2015/shared/shared.module.js +22 -16
- package/esm2015/shared.js +1 -5
- package/esm5/core/gipi-components/models/sort.model.js +1 -1
- package/esm5/core/gipi-components/services/abstract-crud.service.js +18 -24
- package/esm5/core/utils/array.util.js +4 -3
- package/esm5/core/utils/object.util.js +5 -9
- package/esm5/core/utils/string.util.js +27 -1
- package/esm5/gipi-components.js +11 -1
- package/esm5/shared/components/input/input.component.js +46 -23
- package/esm5/shared/components/select-entity-paged/shared/select-search/select-search.component.js +2 -2
- package/esm5/shared/components/table/table.component.js +1 -1
- package/esm5/shared/gipi-components/abstract-form/abstract-form.component.js +1 -1
- package/esm5/shared/gipi-components/button/button.component.js +22 -2
- package/esm5/shared/gipi-components/card/card.component.js +135 -0
- package/esm5/shared/gipi-components/datepicker/datepicker/datepicker.component.js +8 -3
- package/esm5/shared/gipi-components/empty-state/empty-state.component.js +33 -0
- package/esm5/shared/gipi-components/input-select-paged/input-search/input-search.component.js +2 -2
- package/esm5/shared/gipi-components/layout-grid/col.directive.js +4 -4
- package/esm5/shared/gipi-components/month-year-picker/month-year-picker.component.js +2 -2
- package/esm5/shared/gipi-components/notification/notification.component.js +8 -3
- package/esm5/shared/gipi-components/popover/shared/popover-trigger.js +4 -4
- package/esm5/shared/gipi-components/sidebar/sidenav/sidenav.component.js +35 -3
- package/esm5/shared/gipi-components/slide-toggle/slide-toggle.component.js +127 -0
- package/esm5/shared/gipi-components/split-button/split-button.component.js +249 -0
- package/esm5/shared/gipi-components/tabs/shared/dynamic-tab.directive.js +19 -0
- package/esm5/shared/gipi-components/tabs/shared/tab.model.js +10 -0
- package/esm5/shared/gipi-components/tabs/tab/tab.component.js +67 -0
- package/esm5/shared/gipi-components/tabs/tab-group/tab-group.component.js +131 -0
- package/esm5/shared/gipi-components/textarea/textarea.component.js +352 -0
- package/esm5/shared/shared.module.js +22 -16
- package/esm5/shared.js +1 -5
- package/fesm2015/gipisistemas-ng-core.js +1991 -1274
- package/fesm2015/gipisistemas-ng-core.js.map +1 -1
- package/fesm5/gipisistemas-ng-core.js +2088 -1281
- package/fesm5/gipisistemas-ng-core.js.map +1 -1
- package/gipi-components.d.ts +9 -0
- package/gipisistemas-ng-core.metadata.json +1 -1
- package/package.json +1 -2
- package/shared/components/input/input.component.d.ts +13 -11
- package/shared/components/table/table.component.d.ts +3 -3
- package/shared/gipi-components/button/button.component.d.ts +14 -0
- package/shared/gipi-components/card/card.component.d.ts +23 -0
- package/shared/gipi-components/empty-state/empty-state.component.d.ts +5 -0
- package/shared/gipi-components/notification/notification.component.d.ts +1 -0
- package/shared/gipi-components/sidebar/sidenav/sidenav.component.d.ts +7 -0
- package/shared/gipi-components/slide-toggle/slide-toggle.component.d.ts +27 -0
- package/shared/gipi-components/split-button/split-button.component.d.ts +60 -0
- package/shared/{directives → gipi-components/tabs/shared}/dynamic-tab.directive.d.ts +1 -1
- package/shared/gipi-components/tabs/shared/tab.model.d.ts +12 -0
- package/shared/{components → gipi-components/tabs}/tab/tab.component.d.ts +4 -2
- package/shared/gipi-components/tabs/tab-group/tab-group.component.d.ts +22 -0
- package/shared/gipi-components/textarea/textarea.component.d.ts +68 -0
- package/shared.d.ts +0 -4
- package/esm2015/shared/components/select-button/select-button.component.js +0 -181
- package/esm2015/shared/components/tab/tab.component.js +0 -57
- package/esm2015/shared/components/tab-group/tab-group.component.js +0 -117
- package/esm2015/shared/directives/dynamic-tab.directive.js +0 -18
- package/esm5/shared/components/select-button/select-button.component.js +0 -195
- package/esm5/shared/components/tab/tab.component.js +0 -58
- package/esm5/shared/components/tab-group/tab-group.component.js +0 -125
- package/esm5/shared/directives/dynamic-tab.directive.js +0 -19
- package/shared/components/select-button/select-button.component.d.ts +0 -35
- 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,eyJ2ZXJzaW9uIjozLCJmaWxlIjoic3BsaXQtYnV0dG9uLmNvbXBvbmVudC5qcyIsInNvdXJjZVJvb3QiOiJuZzovL0BnaXBpc2lzdGVtYXMvbmctY29yZS8iLCJzb3VyY2VzIjpbInNoYXJlZC9naXBpLWNvbXBvbmVudHMvc3BsaXQtYnV0dG9uL3NwbGl0LWJ1dHRvbi5jb21wb25lbnQudHMiXSwibmFtZXMiOltdLCJtYXBwaW5ncyI6IjtBQUFBLE9BQU8sRUFBRSxPQUFPLEVBQUUsS0FBSyxFQUFFLEtBQUssRUFBRSxVQUFVLEVBQUUsT0FBTyxFQUFFLE1BQU0scUJBQXFCLENBQUM7QUFDakYsT0FBTyxFQUFFLFNBQVMsRUFBRSxVQUFVLEVBQUUsWUFBWSxFQUFFLFVBQVUsRUFBRSxZQUFZLEVBQUUsS0FBSyxFQUFFLE1BQU0sRUFBRSxNQUFNLEVBQUUsU0FBUyxFQUFFLE1BQU0sZUFBZSxDQUFDO0FBQ2hJLE9BQU8sRUFBRSxpQkFBaUIsRUFBRSxNQUFNLGdCQUFnQixDQUFDO0FBQ25ELE9BQU8sRUFBRSxrQkFBa0IsRUFBRSxNQUFNLG1DQUFtQyxDQUFDO0FBQ3ZFLE9BQU8sRUFBRSxVQUFVLEVBQUUsTUFBTSxtQ0FBbUMsQ0FBQztBQVEvRCxJQUFJLFlBQVksR0FBRyxDQUFDLENBQUM7QUE0QnJCO0lBMkNJLGtDQUFtQixVQUFzQjtRQUF0QixlQUFVLEdBQVYsVUFBVSxDQUFZO1FBekNqQyxjQUFTLEdBQVcsWUFBWSxFQUFFLENBQUM7UUFDbkMsVUFBSyxHQUFXLHVCQUFxQixJQUFJLENBQUMsU0FBVyxDQUFDO1FBRXZELGlCQUFZLEdBQUcsK0JBQTZCLElBQUksQ0FBQyxTQUFXLENBQUM7UUFDN0QsY0FBUyxHQUFHLDRCQUEwQixJQUFJLENBQUMsU0FBVyxDQUFDO1FBRXJELHlCQUFvQixHQUFZLElBQUksQ0FBQyxrQkFBa0IsQ0FBQyxjQUFjLENBQUMsQ0FBQztRQUN4RSwyQkFBc0IsR0FBWSxJQUFJLENBQUMsa0JBQWtCLENBQUMsZ0JBQWdCLENBQUMsQ0FBQztRQUM1RSwwQkFBcUIsR0FB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LE1BQU0sQ0FBQyxNQUFNLENBQUM7a0NBQVMsWUFBWTs0REFBc0M7SUF3RzFFO1FBREMsWUFBWSxDQUFDLGVBQWUsRUFBRSxDQUFDLFFBQVEsQ0FBQyxDQUFDOzt5Q0FDMUIsT0FBTzs7NERBS3RCO0lBdEpRLHdCQUF3QjtRQTFCcEMsU0FBUyxDQUFDO1lBQ1AsUUFBUSxFQUFFLHNKQUNrRTtZQUM1RSxRQUFRLEVBQUUsaUJBQWlCO1lBQzNCLDRnRUFBNEM7WUFFNUMsU0FBUyxFQUFFO2dCQUNQO29CQUNJLE9BQU8sRUFBRSxpQkFBaUI7b0JBQzFCLFdBQVcsRUFBRSxVQUFVLENBQUMsY0FBTSxPQUFBLDBCQUF3QixFQUF4QixDQUF3QixDQUFDO29CQUN2RCxLQUFLLEVBQUUsSUFBSTtpQkFDZDthQUNKO1lBQ0QsSUFBSSxFQUFFO2dCQUNGLE9BQU8sRUFBRSxtQkFBbUI7Z0JBQzVCLFdBQVcsRUFBRSxJQUFJO2dCQUNqQixhQUFhLEVBQUUsTUFBTTthQUN4QjtZQUNELFVBQVUsRUFBRTtnQkFDUixPQUFPLENBQUMsaUJBQWlCLEVBQUU7b0JBQ3ZCLEtBQUssQ0FBQyxRQUFRLEVBQUUsS0FBSyxDQUFDLEVBQUUsU0FBUyxFQUFFLGNBQWMsRUFBRSxDQUFDLENBQUM7b0JBQ3JELEtBQUssQ0FBQyxRQUFRLEVBQUUsS0FBSyxDQUFDLEVBQUUsU0FBUyxFQUFFLGlCQUFpQixFQUFFLENBQUMsQ0FBQztvQkFDeEQsVUFBVSxDQUFDLG1CQUFtQixFQUFFLE9BQU8sQ0FBQyxtQ0FBbUMsQ0FBQyxDQUFDO2lCQUNoRixDQUFDO2FBQ0w7O1NBQ0osQ0FBQzt5Q0E0Q2lDLFVBQVU7T0EzQ2hDLHdCQUF3QixDQXdKcEM7SUFBRCwrQkFBQztDQUFBLEFBeEpELElBd0pDO1NBeEpZLHdCQUF3QiIsInNvdXJjZXNDb250ZW50IjpbImltcG9ydCB7IGFuaW1hdGUsIHN0YXRlLCBzdHlsZSwgdHJhbnNpdGlvbiwgdHJpZ2dlciB9IGZyb20gJ0Bhbmd1bGFyL2FuaW1hdGlvbnMnO1xuaW1wb3J0IHsgQ29tcG9uZW50LCBFbGVtZW50UmVmLCBFdmVudEVtaXR0ZXIsIGZvcndhcmRSZWYsIEhvc3RMaXN0ZW5lciwgSW5wdXQsIE9uSW5pdCwgT3V0cHV0LCBWaWV3Q2hpbGQgfSBmcm9tICdAYW5ndWxhci9jb3JlJztcbmltcG9ydCB7IE5HX1ZBTFVFX0FDQ0VTU09SIH0gZnJvbSAnQGFuZ3VsYXIvZm9ybXMnO1xuaW1wb3J0IHsgR0lQSVBvcG92ZXJUcmlnZ2VyIH0gZnJvbSAnLi4vcG9wb3Zlci9zaGFyZWQvcG9wb3Zlci10cmlnZ2VyJztcbmltcG9ydCB7IE9iamVjdFV0aWwgfSBmcm9tICcuLy4uLy4uLy4uL2NvcmUvdXRpbHMvb2JqZWN0LnV0aWwnO1xuXG5leHBvcnQgaW50ZXJmYWNlIFNwbGl0T3B0aW9ucyB7XG4gICAgbGFiZWw6IHN0cmluZztcbiAgICBkaXNhYmxlZDogYm9vbGVhbjtcbiAgICBjbGlja0ZuOiBGdW5jdGlvbjtcbn1cblxubGV0IG5leHRVbmlxdWVJZCA9IDA7XG5cbkBDb21wb25lbnQoe1xuICAgIHNlbGVjdG9yOiBgZ2lwaS1zcGxpdC1idXR0b25bZ2lwaS1wcmltYXJ5XSwgZ2lwaS1zcGxpdC1idXR0b25bZ2lwaS1zZWNvbmRhcnldLFxuICAgICAgICAgICAgICAgZ2lwaS1zcGxpdC1idXR0b25bZ2lwaS10ZXJ0aWFyeV0sIGdpcGktc3BsaXQtYnV0dG9uW2dpcGktYWN0aW9uXWAsXG4gICAgZXhwb3J0QXM6ICdnaXBpU3BsaXRCdXR0b24nLFxuICAgIHRlbXBsYXRlVXJsOiAnLi9zcGxpdC1idXR0b24uY29tcG9uZW50Lmh0bWwnLFxuICAgIHN0eWxlVXJsczogWycuL3NwbGl0LWJ1dHRvbi5jb21wb25lbnQuc2NzcyddLFxuICAgIHByb3ZpZGVyczogW1xuICAgICAgICB7XG4gICAgICAgICAgICBwcm92aWRlOiBOR19WQUxVRV9BQ0NFU1NPUixcbiAgICAgICAgICAgIHVzZUV4aXN0aW5nOiBmb3J3YXJkUmVmKCgpID0+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=
|