ng-miam 3.6.2 → 3.7.2
This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
- package/bundles/ng-miam.umd.js +209 -126
- package/bundles/ng-miam.umd.js.map +1 -1
- package/bundles/ng-miam.umd.min.js +1 -1
- package/bundles/ng-miam.umd.min.js.map +1 -1
- package/esm2015/lib/_components/list-input/list-input.component.js +90 -27
- package/esm2015/lib/_services/ingredients.service.js +3 -3
- package/esm2015/lib/_services/user.service.js +14 -11
- package/esm2015/lib/_web-components/recipe-form/recipe-form.component.js +3 -2
- package/esm2015/lib/_web-components/recipe-stepper/recipe-stepper.component.js +9 -6
- package/fesm2015/ng-miam.js +196 -126
- package/fesm2015/ng-miam.js.map +1 -1
- package/lib/_components/list-input/list-input.component.d.ts +6 -1
- package/lib/_services/user.service.d.ts +2 -1
- package/lib/_web-components/recipe-stepper/recipe-stepper.component.d.ts +5 -1
- package/package.json +1 -1
|
@@ -72,31 +72,70 @@ function ListInputComponent_ul_4_ng_container_1_Template(rf, ctx) { if (rf & 1)
|
|
|
72
72
|
i0.ɵɵadvance(1);
|
|
73
73
|
i0.ɵɵproperty("ngForOf", ctx_r4.list.controls)("ngForTrackBy", ctx_r4.trackByIndex);
|
|
74
74
|
} }
|
|
75
|
-
function
|
|
75
|
+
const _c0 = function (a0) { return { clickable: a0 }; };
|
|
76
|
+
function ListInputComponent_ul_4_ng_template_2_li_0_label_12_img_1_Template(rf, ctx) { if (rf & 1) {
|
|
77
|
+
i0.ɵɵelement(0, "img", 39);
|
|
78
|
+
} if (rf & 2) {
|
|
79
|
+
const row_r18 = i0.ɵɵnextContext(2).$implicit;
|
|
80
|
+
const ctx_r24 = i0.ɵɵnextContext(3);
|
|
81
|
+
i0.ɵɵproperty("ngClass", i0.ɵɵpureFunction1(2, _c0, ctx_r24.ingredientsPictures.editable))("src", row_r18.controls.attributes.controls["picture-url"].value, i0.ɵɵsanitizeUrl);
|
|
82
|
+
} }
|
|
83
|
+
function ListInputComponent_ul_4_ng_template_2_li_0_label_12_ng_miam_icon_2_Template(rf, ctx) { if (rf & 1) {
|
|
84
|
+
i0.ɵɵelement(0, "ng-miam-icon", 40);
|
|
85
|
+
} if (rf & 2) {
|
|
86
|
+
const ctx_r25 = i0.ɵɵnextContext(5);
|
|
87
|
+
i0.ɵɵproperty("iconName", ctx_r25.icon.Picture);
|
|
88
|
+
} }
|
|
89
|
+
function ListInputComponent_ul_4_ng_template_2_li_0_label_12_Template(rf, ctx) { if (rf & 1) {
|
|
90
|
+
i0.ɵɵelementStart(0, "label", 36);
|
|
91
|
+
i0.ɵɵtemplate(1, ListInputComponent_ul_4_ng_template_2_li_0_label_12_img_1_Template, 1, 4, "img", 37);
|
|
92
|
+
i0.ɵɵtemplate(2, ListInputComponent_ul_4_ng_template_2_li_0_label_12_ng_miam_icon_2_Template, 1, 1, "ng-miam-icon", 38);
|
|
93
|
+
i0.ɵɵelementEnd();
|
|
94
|
+
} if (rf & 2) {
|
|
95
|
+
const ctx_r27 = i0.ɵɵnextContext();
|
|
96
|
+
const i_r19 = ctx_r27.index;
|
|
97
|
+
const row_r18 = ctx_r27.$implicit;
|
|
98
|
+
const ctx_r20 = i0.ɵɵnextContext(3);
|
|
99
|
+
i0.ɵɵpropertyInterpolate1("for", "ing-picture-", i_r19, "");
|
|
100
|
+
i0.ɵɵadvance(1);
|
|
101
|
+
i0.ɵɵproperty("ngIf", row_r18.controls.attributes.controls["picture-url"] == null ? null : row_r18.controls.attributes.controls["picture-url"].value);
|
|
102
|
+
i0.ɵɵadvance(1);
|
|
103
|
+
i0.ɵɵproperty("ngIf", !(row_r18.controls.attributes.controls["picture-url"] == null ? null : row_r18.controls.attributes.controls["picture-url"].value) && ctx_r20.ingredientsPictures.editable);
|
|
104
|
+
} }
|
|
105
|
+
function ListInputComponent_ul_4_ng_template_2_li_0_input_13_Template(rf, ctx) { if (rf & 1) {
|
|
106
|
+
const _r29 = i0.ɵɵgetCurrentView();
|
|
107
|
+
i0.ɵɵelementStart(0, "input", 41);
|
|
108
|
+
i0.ɵɵlistener("change", function ListInputComponent_ul_4_ng_template_2_li_0_input_13_Template_input_change_0_listener($event) { i0.ɵɵrestoreView(_r29); const row_r18 = i0.ɵɵnextContext().$implicit; const ctx_r28 = i0.ɵɵnextContext(3); return ctx_r28.uploadIngredientPicture($event.target.files, row_r18.controls.attributes.controls["picture-url"]); });
|
|
109
|
+
i0.ɵɵelementEnd();
|
|
110
|
+
} if (rf & 2) {
|
|
111
|
+
const i_r19 = i0.ɵɵnextContext().index;
|
|
112
|
+
i0.ɵɵpropertyInterpolate1("id", "ing-picture-", i_r19, "");
|
|
113
|
+
} }
|
|
114
|
+
function ListInputComponent_ul_4_ng_template_2_li_0_div_15_Template(rf, ctx) { if (rf & 1) {
|
|
76
115
|
i0.ɵɵelement(0, "div", 23);
|
|
77
116
|
} }
|
|
78
|
-
function
|
|
117
|
+
function ListInputComponent_ul_4_ng_template_2_li_0_div_16_Template(rf, ctx) { if (rf & 1) {
|
|
79
118
|
i0.ɵɵelementStart(0, "div", 24);
|
|
80
|
-
i0.ɵɵelement(1, "ng-miam-icon",
|
|
81
|
-
i0.ɵɵelementStart(2, "span",
|
|
119
|
+
i0.ɵɵelement(1, "ng-miam-icon", 42);
|
|
120
|
+
i0.ɵɵelementStart(2, "span", 43);
|
|
82
121
|
i0.ɵɵtext(3);
|
|
83
122
|
i0.ɵɵpipe(4, "capitalizeFirstLetter");
|
|
84
123
|
i0.ɵɵelementEnd();
|
|
85
|
-
i0.ɵɵelementStart(5, "span",
|
|
124
|
+
i0.ɵɵelementStart(5, "span", 43);
|
|
86
125
|
i0.ɵɵtext(6);
|
|
87
126
|
i0.ɵɵelementEnd();
|
|
88
|
-
i0.ɵɵelementStart(7, "span",
|
|
127
|
+
i0.ɵɵelementStart(7, "span", 43);
|
|
89
128
|
i0.ɵɵtext(8);
|
|
90
129
|
i0.ɵɵelementEnd();
|
|
91
130
|
i0.ɵɵelementEnd();
|
|
92
131
|
} if (rf & 2) {
|
|
93
132
|
const row_r18 = i0.ɵɵnextContext().$implicit;
|
|
94
|
-
const
|
|
133
|
+
const ctx_r23 = i0.ɵɵnextContext(3);
|
|
95
134
|
var tmp_1_0 = null;
|
|
96
135
|
var tmp_2_0 = null;
|
|
97
136
|
var tmp_3_0 = null;
|
|
98
137
|
i0.ɵɵadvance(1);
|
|
99
|
-
i0.ɵɵproperty("iconName",
|
|
138
|
+
i0.ɵɵproperty("iconName", ctx_r23.icon.Grip);
|
|
100
139
|
i0.ɵɵadvance(2);
|
|
101
140
|
i0.ɵɵtextInterpolate(i0.ɵɵpipeBind1(4, 4, row_r18 == null ? null : (tmp_1_0 = row_r18.get("attributes")) == null ? null : tmp_1_0.get("name").value));
|
|
102
141
|
i0.ɵɵadvance(3);
|
|
@@ -105,7 +144,7 @@ function ListInputComponent_ul_4_ng_template_2_li_0_div_13_Template(rf, ctx) { i
|
|
|
105
144
|
i0.ɵɵtextInterpolate(row_r18 == null ? null : (tmp_3_0 = row_r18.get("attributes")) == null ? null : tmp_3_0.get("unit").value);
|
|
106
145
|
} }
|
|
107
146
|
function ListInputComponent_ul_4_ng_template_2_li_0_Template(rf, ctx) { if (rf & 1) {
|
|
108
|
-
const
|
|
147
|
+
const _r34 = i0.ɵɵgetCurrentView();
|
|
109
148
|
i0.ɵɵelementStart(0, "li", 14);
|
|
110
149
|
i0.ɵɵelementStart(1, "div", 27);
|
|
111
150
|
i0.ɵɵelementStart(2, "div", 28);
|
|
@@ -116,17 +155,21 @@ function ListInputComponent_ul_4_ng_template_2_li_0_Template(rf, ctx) { if (rf &
|
|
|
116
155
|
i0.ɵɵpipe(6, "async");
|
|
117
156
|
i0.ɵɵpipe(7, "capitalizeFirstLetter");
|
|
118
157
|
i0.ɵɵelementStart(8, "input", 31);
|
|
119
|
-
i0.ɵɵlistener("ngModelChange", function ListInputComponent_ul_4_ng_template_2_li_0_Template_input_ngModelChange_8_listener($event) { i0.ɵɵrestoreView(
|
|
158
|
+
i0.ɵɵlistener("ngModelChange", function ListInputComponent_ul_4_ng_template_2_li_0_Template_input_ngModelChange_8_listener($event) { i0.ɵɵrestoreView(_r34); const i_r19 = ctx.index; const ctx_r33 = i0.ɵɵnextContext(3); return ctx_r33.updateQuantityValue($event, i_r19); });
|
|
120
159
|
i0.ɵɵelementEnd();
|
|
121
160
|
i0.ɵɵelement(9, "input", 32);
|
|
122
161
|
i0.ɵɵpipe(10, "async");
|
|
123
162
|
i0.ɵɵelementEnd();
|
|
124
163
|
i0.ɵɵelementEnd();
|
|
125
|
-
i0.ɵɵelementStart(11, "
|
|
126
|
-
i0.ɵɵ
|
|
164
|
+
i0.ɵɵelementStart(11, "div", 33);
|
|
165
|
+
i0.ɵɵtemplate(12, ListInputComponent_ul_4_ng_template_2_li_0_label_12_Template, 3, 3, "label", 34);
|
|
166
|
+
i0.ɵɵtemplate(13, ListInputComponent_ul_4_ng_template_2_li_0_input_13_Template, 1, 1, "input", 35);
|
|
167
|
+
i0.ɵɵelementStart(14, "ng-miam-icon", 20);
|
|
168
|
+
i0.ɵɵlistener("click", function ListInputComponent_ul_4_ng_template_2_li_0_Template_ng_miam_icon_click_14_listener() { i0.ɵɵrestoreView(_r34); const i_r19 = ctx.index; const ctx_r35 = i0.ɵɵnextContext(3); return ctx_r35.delete(i_r19); });
|
|
169
|
+
i0.ɵɵelementEnd();
|
|
170
|
+
i0.ɵɵtemplate(15, ListInputComponent_ul_4_ng_template_2_li_0_div_15_Template, 1, 0, "div", 21);
|
|
171
|
+
i0.ɵɵtemplate(16, ListInputComponent_ul_4_ng_template_2_li_0_div_16_Template, 9, 6, "div", 22);
|
|
127
172
|
i0.ɵɵelementEnd();
|
|
128
|
-
i0.ɵɵtemplate(12, ListInputComponent_ul_4_ng_template_2_li_0_div_12_Template, 1, 0, "div", 21);
|
|
129
|
-
i0.ɵɵtemplate(13, ListInputComponent_ul_4_ng_template_2_li_0_div_13_Template, 9, 6, "div", 22);
|
|
130
173
|
i0.ɵɵelementEnd();
|
|
131
174
|
} if (rf & 2) {
|
|
132
175
|
const row_r18 = ctx.$implicit;
|
|
@@ -137,24 +180,28 @@ function ListInputComponent_ul_4_ng_template_2_li_0_Template(rf, ctx) { if (rf &
|
|
|
137
180
|
i0.ɵɵadvance(2);
|
|
138
181
|
i0.ɵɵproperty("iconName", ctx_r17.icon.Grip);
|
|
139
182
|
i0.ɵɵadvance(2);
|
|
140
|
-
i0.ɵɵproperty("ngClass", i0.ɵɵpipeBind1(6,
|
|
183
|
+
i0.ɵɵproperty("ngClass", i0.ɵɵpipeBind1(6, 12, ctx_r17.isIngredientReviewed(row_r18["controls"]["attributes"]["controls"]["name"].value)) ? "alert-success" : "alert-danger")("ngModel", i0.ɵɵpipeBind1(7, 14, row_r18["controls"]["attributes"]["controls"]["name"].value))("formControl", row_r18["controls"]["attributes"]["controls"]["name"]);
|
|
141
184
|
i0.ɵɵadvance(3);
|
|
142
185
|
i0.ɵɵproperty("ngModel", row_r18["controls"]["attributes"]["controls"]["quantity"].value)("formControl", row_r18["controls"]["attributes"]["controls"]["quantity"]);
|
|
143
186
|
i0.ɵɵadvance(1);
|
|
144
|
-
i0.ɵɵproperty("ngClass", i0.ɵɵpipeBind1(10,
|
|
145
|
-
i0.ɵɵadvance(
|
|
187
|
+
i0.ɵɵproperty("ngClass", i0.ɵɵpipeBind1(10, 16, ctx_r17.isQuantityReviewed(row_r18["controls"]["attributes"]["controls"]["unit"].value)) ? "alert-success" : "alert-danger")("formControl", row_r18["controls"]["attributes"]["controls"]["unit"]);
|
|
188
|
+
i0.ɵɵadvance(3);
|
|
189
|
+
i0.ɵɵproperty("ngIf", ctx_r17.ingredientsPictures.visible);
|
|
190
|
+
i0.ɵɵadvance(1);
|
|
191
|
+
i0.ɵɵproperty("ngIf", ctx_r17.ingredientsPictures.visible && ctx_r17.ingredientsPictures.editable);
|
|
192
|
+
i0.ɵɵadvance(1);
|
|
146
193
|
i0.ɵɵproperty("iconName", ctx_r17.icon.Trash);
|
|
147
194
|
} }
|
|
148
195
|
function ListInputComponent_ul_4_ng_template_2_Template(rf, ctx) { if (rf & 1) {
|
|
149
|
-
i0.ɵɵtemplate(0, ListInputComponent_ul_4_ng_template_2_li_0_Template,
|
|
196
|
+
i0.ɵɵtemplate(0, ListInputComponent_ul_4_ng_template_2_li_0_Template, 17, 18, "li", 13);
|
|
150
197
|
} if (rf & 2) {
|
|
151
198
|
const ctx_r6 = i0.ɵɵnextContext(2);
|
|
152
199
|
i0.ɵɵproperty("ngForOf", ctx_r6.list.controls)("ngForTrackBy", ctx_r6.trackByIndex);
|
|
153
200
|
} }
|
|
154
201
|
function ListInputComponent_ul_4_Template(rf, ctx) { if (rf & 1) {
|
|
155
|
-
const
|
|
202
|
+
const _r37 = i0.ɵɵgetCurrentView();
|
|
156
203
|
i0.ɵɵelementStart(0, "ul", 10);
|
|
157
|
-
i0.ɵɵlistener("cdkDropListDropped", function ListInputComponent_ul_4_Template_ul_cdkDropListDropped_0_listener($event) { i0.ɵɵrestoreView(
|
|
204
|
+
i0.ɵɵlistener("cdkDropListDropped", function ListInputComponent_ul_4_Template_ul_cdkDropListDropped_0_listener($event) { i0.ɵɵrestoreView(_r37); const ctx_r36 = i0.ɵɵnextContext(); return ctx_r36.drop($event); });
|
|
158
205
|
i0.ɵɵtemplate(1, ListInputComponent_ul_4_ng_container_1_Template, 2, 2, "ng-container", 11);
|
|
159
206
|
i0.ɵɵtemplate(2, ListInputComponent_ul_4_ng_template_2_Template, 1, 2, "ng-template", null, 12, i0.ɵɵtemplateRefExtractor);
|
|
160
207
|
i0.ɵɵelementEnd();
|
|
@@ -165,9 +212,9 @@ function ListInputComponent_ul_4_Template(rf, ctx) { if (rf & 1) {
|
|
|
165
212
|
i0.ɵɵproperty("ngIf", !ctx_r0.ingredientMode)("ngIfElse", _r5);
|
|
166
213
|
} }
|
|
167
214
|
function ListInputComponent_ng_template_5_Template(rf, ctx) { if (rf & 1) {
|
|
168
|
-
i0.ɵɵelementStart(0, "div",
|
|
169
|
-
i0.ɵɵelement(1, "ng-miam-icon",
|
|
170
|
-
i0.ɵɵelementStart(2, "span",
|
|
215
|
+
i0.ɵɵelementStart(0, "div", 44);
|
|
216
|
+
i0.ɵɵelement(1, "ng-miam-icon", 45);
|
|
217
|
+
i0.ɵɵelementStart(2, "span", 46);
|
|
171
218
|
i0.ɵɵtext(3);
|
|
172
219
|
i0.ɵɵelementEnd();
|
|
173
220
|
i0.ɵɵelementEnd();
|
|
@@ -179,7 +226,7 @@ function ListInputComponent_ng_template_5_Template(rf, ctx) { if (rf & 1) {
|
|
|
179
226
|
i0.ɵɵtextInterpolate1("Oups... c\u2019est vide, commencez \u00E0 ajouter des ", ctx_r2.hint, " !");
|
|
180
227
|
} }
|
|
181
228
|
function ListInputComponent_div_13_Template(rf, ctx) { if (rf & 1) {
|
|
182
|
-
i0.ɵɵelementStart(0, "div",
|
|
229
|
+
i0.ɵɵelementStart(0, "div", 47);
|
|
183
230
|
i0.ɵɵtext(1);
|
|
184
231
|
i0.ɵɵelementEnd();
|
|
185
232
|
} if (rf & 2) {
|
|
@@ -194,6 +241,7 @@ export class ListInputComponent {
|
|
|
194
241
|
this.cdr = cdr;
|
|
195
242
|
this.placeholder = '';
|
|
196
243
|
this.list = new FormArray([]);
|
|
244
|
+
this.ingredientsPictures = { visible: false, editable: false };
|
|
197
245
|
this.icon = Icon;
|
|
198
246
|
this.fillListInput = new FormControl('');
|
|
199
247
|
this.deleteId = new EventEmitter();
|
|
@@ -287,9 +335,22 @@ export class ListInputComponent {
|
|
|
287
335
|
trackByIndex(index, el) {
|
|
288
336
|
return el;
|
|
289
337
|
}
|
|
338
|
+
// TODO: size check
|
|
339
|
+
uploadIngredientPicture(files, ingForm) {
|
|
340
|
+
if (!files[0] || !ingForm) {
|
|
341
|
+
return;
|
|
342
|
+
}
|
|
343
|
+
const reader = new FileReader();
|
|
344
|
+
reader.readAsDataURL(files[0]);
|
|
345
|
+
reader.onload = () => {
|
|
346
|
+
ingForm.patchValue(reader.result);
|
|
347
|
+
this.list.markAsDirty();
|
|
348
|
+
this.cdr.detectChanges();
|
|
349
|
+
};
|
|
350
|
+
}
|
|
290
351
|
}
|
|
291
352
|
ListInputComponent.ɵfac = function ListInputComponent_Factory(t) { return new (t || ListInputComponent)(i0.ɵɵdirectiveInject(i1.IngredientsService), i0.ɵɵdirectiveInject(i2.FormBuilder), i0.ɵɵdirectiveInject(i0.ChangeDetectorRef)); };
|
|
292
|
-
ListInputComponent.ɵcmp = i0.ɵɵdefineComponent({ type: ListInputComponent, selectors: [["ng-miam-list-input"]], inputs: { hint: "hint", placeholder: "placeholder", label: "label", instructions: "instructions", ingredientMode: "ingredientMode", list: "list" }, outputs: { deleteId: "deleteId", orderHasChanged: "orderHasChanged" }, decls: 14, vars: 7, consts: [[1, "miam-list-input"], [1, "miam-list-input__list", 3, "formGroup"], [1, "miam-list-input__list__label"], ["class", "miam-list-input__container m-default-card", "cdkDropList", "", 3, "cdkDropListDropped", 4, "ngIf", "ngIfElse"], ["hintPlaceholder", ""], [1, "miam-list-input__actions"], ["matInput", "", "cdkTextareaAutosize", "", "cdkAutosizeMinRows", "4", "cdkAutosizeMaxRows", "4", 1, "m-input", 3, "formControl", "keydown.enter"], [1, "m-button-primary", 3, "mousedown", "mouseup"], [1, "miam-list-input__instructions__direction"], ["class", "miam-list-input__actions__instructions", 4, "ngIf"], ["cdkDropList", "", 1, "miam-list-input__container", "m-default-card", 3, "cdkDropListDropped"], [4, "ngIf", "ngIfElse"], ["ingredientRow", ""], ["cdkDrag", "", 4, "ngFor", "ngForOf", "ngForTrackBy"], ["cdkDrag", ""], [3, "formGroup"], [1, "miam-list-input__container__row", "m-default-card"], ["primaryColor", "var(--m-color-grey05)", "cdkDragHandle", "", 1, "miam-list-input__row__grip", 3, "iconName"], ["cdkTextareaAutosize", "true", "cdkAutosizeMinRows", "1", "cdkAutosizeMaxRows", "50", "formControlName", "description", 1, "m-input", 3, "blur"], ["autosize", "cdkTextareaAutosize"], ["primaryColor", "var(--m-color-grey05)", 1, "miam-list-input__row__trash", 3, "iconName", "click"], ["class", "miam-list-input__row__placeholder", 4, "cdkDragPlaceholder"], ["class", "miam-list-input__row__preview m-default-card", 4, "cdkDragPreview"], [1, "miam-list-input__row__placeholder"], [1, "miam-list-input__row__preview", "m-default-card"], ["primaryColor", "var(--m-color-grey05)", "cdkDragHandle", "", 3, "iconName"], [1, "miam-list-input__preview__text", "m-body-typo"], [1, "miam-list-input__container__row", "m-default-card", 3, "formGroupName"], [1, "miam-list-input__row__left"], [1, "miam-list-input__row__right"], [1, "m-input", 3, "ngClass", "ngModel", "formControl"], ["maxSize", "4", "autoWidthInput", "", 1, "m-input", 3, "ngModel", "formControl", "ngModelChange"], ["maxSize", "8", "autoWidthInput", "", 1, "m-input", 3, "ngClass", "formControl"], ["primaryColor", "var(--m-color-grey-text-dark)", "cdkDragHandle", "", 3, "iconName"], [1, "m-body-typo"], [1, "miam-list-input__placeholder", "miam-list-input__container", "m-default-card"], ["primaryColor", "var(--m-color-grey-text-dark)", 3, "width", "height", "iconName"], [1, "miam-list-input__placeholder__hint", "m-body-typo"], [1, "miam-list-input__actions__instructions"]], template: function ListInputComponent_Template(rf, ctx) { if (rf & 1) {
|
|
353
|
+
ListInputComponent.ɵcmp = i0.ɵɵdefineComponent({ type: ListInputComponent, selectors: [["ng-miam-list-input"]], inputs: { hint: "hint", placeholder: "placeholder", label: "label", instructions: "instructions", ingredientMode: "ingredientMode", list: "list", ingredientsPictures: "ingredientsPictures" }, outputs: { deleteId: "deleteId", orderHasChanged: "orderHasChanged" }, decls: 14, vars: 7, consts: [[1, "miam-list-input"], [1, "miam-list-input__list", 3, "formGroup"], [1, "miam-list-input__list__label"], ["class", "miam-list-input__container m-default-card", "cdkDropList", "", 3, "cdkDropListDropped", 4, "ngIf", "ngIfElse"], ["hintPlaceholder", ""], [1, "miam-list-input__actions"], ["matInput", "", "cdkTextareaAutosize", "", "cdkAutosizeMinRows", "4", "cdkAutosizeMaxRows", "4", 1, "m-input", 3, "formControl", "keydown.enter"], [1, "m-button-primary", 3, "mousedown", "mouseup"], [1, "miam-list-input__instructions__direction"], ["class", "miam-list-input__actions__instructions", 4, "ngIf"], ["cdkDropList", "", 1, "miam-list-input__container", "m-default-card", 3, "cdkDropListDropped"], [4, "ngIf", "ngIfElse"], ["ingredientRow", ""], ["cdkDrag", "", 4, "ngFor", "ngForOf", "ngForTrackBy"], ["cdkDrag", ""], [3, "formGroup"], [1, "miam-list-input__container__row", "m-default-card"], ["primaryColor", "var(--m-color-grey05)", "cdkDragHandle", "", 1, "miam-list-input__row__grip", 3, "iconName"], ["cdkTextareaAutosize", "true", "cdkAutosizeMinRows", "1", "cdkAutosizeMaxRows", "50", "formControlName", "description", 1, "m-input", 3, "blur"], ["autosize", "cdkTextareaAutosize"], ["primaryColor", "var(--m-color-grey05)", 1, "miam-list-input__row__trash", 3, "iconName", "click"], ["class", "miam-list-input__row__placeholder", 4, "cdkDragPlaceholder"], ["class", "miam-list-input__row__preview m-default-card", 4, "cdkDragPreview"], [1, "miam-list-input__row__placeholder"], [1, "miam-list-input__row__preview", "m-default-card"], ["primaryColor", "var(--m-color-grey05)", "cdkDragHandle", "", 3, "iconName"], [1, "miam-list-input__preview__text", "m-body-typo"], [1, "miam-list-input__container__row", "m-default-card", 3, "formGroupName"], [1, "miam-list-input__row__left"], [1, "miam-list-input__row__right"], [1, "m-input", 3, "ngClass", "ngModel", "formControl"], ["maxSize", "4", "autoWidthInput", "", 1, "m-input", 3, "ngModel", "formControl", "ngModelChange"], ["maxSize", "8", "autoWidthInput", "", 1, "m-input", 3, "ngClass", "formControl"], [1, "miam-list-input__row__controls"], [3, "for", 4, "ngIf"], ["type", "file", "accept", "image/jpeg, image/png, image/webp", 3, "id", "change", 4, "ngIf"], [3, "for"], ["class", "miam-list-input__row__picture", 3, "ngClass", "src", 4, "ngIf"], ["class", "miam-list-input__row__trash", "primaryColor", "var(--m-color-grey05)", 3, "iconName", 4, "ngIf"], [1, "miam-list-input__row__picture", 3, "ngClass", "src"], ["primaryColor", "var(--m-color-grey05)", 1, "miam-list-input__row__trash", 3, "iconName"], ["type", "file", "accept", "image/jpeg, image/png, image/webp", 3, "id", "change"], ["primaryColor", "var(--m-color-grey-text-dark)", "cdkDragHandle", "", 3, "iconName"], [1, "m-body-typo"], [1, "miam-list-input__placeholder", "miam-list-input__container", "m-default-card"], ["primaryColor", "var(--m-color-grey-text-dark)", 3, "width", "height", "iconName"], [1, "miam-list-input__placeholder__hint", "m-body-typo"], [1, "miam-list-input__actions__instructions"]], template: function ListInputComponent_Template(rf, ctx) { if (rf & 1) {
|
|
293
354
|
i0.ɵɵelementStart(0, "div", 0);
|
|
294
355
|
i0.ɵɵelementStart(1, "div", 1);
|
|
295
356
|
i0.ɵɵelementStart(2, "div", 2);
|
|
@@ -325,7 +386,7 @@ ListInputComponent.ɵcmp = i0.ɵɵdefineComponent({ type: ListInputComponent, se
|
|
|
325
386
|
i0.ɵɵattribute("placeholder", ctx.placeholder);
|
|
326
387
|
i0.ɵɵadvance(5);
|
|
327
388
|
i0.ɵɵproperty("ngIf", ctx.instructions);
|
|
328
|
-
} }, directives: [i2.NgControlStatusGroup, i2.FormGroupDirective, i3.NgIf, i4.CdkTextareaAutosize, i2.DefaultValueAccessor, i2.NgControlStatus, i2.FormControlDirective, i5.CdkDropList, i3.NgForOf, i5.CdkDrag, i6.IconComponent, i5.CdkDragHandle, i2.FormControlName, i5.CdkDragPlaceholder, i5.CdkDragPreview, i2.FormGroupName, i3.NgClass, i7.AutowidthInputDirective], pipes: [i3.AsyncPipe, i8.CapitalizeFirstLetterPipe], styles: [".miam-list-input[_ngcontent-%COMP%]{padding:8px}.miam-list-input[_ngcontent-%COMP%] .miam-list-input__list[_ngcontent-%COMP%]{margin-top:50px;position:relative}.miam-list-input[_ngcontent-%COMP%] .miam-list-input__list[_ngcontent-%COMP%] .miam-list-input__list__label[_ngcontent-%COMP%]{background-color:var(--m-color-secondary-light);border-radius:8px 8px 0 0;color:var(--m-color-secondary);font-weight:700;left:0;padding:8px 24px;position:absolute;top:-33px;width:200px;z-index:0}.miam-list-input[_ngcontent-%COMP%] .miam-list-input__list[_ngcontent-%COMP%] .miam-list-input__container[_ngcontent-%COMP%]{display:flex;flex-direction:column;height:400px;margin-bottom:32px;overflow-x:hidden;overflow-y:auto;position:inherit;width:560px;z-index:1}@media (max-width:1023px){.miam-list-input[_ngcontent-%COMP%] .miam-list-input__list[_ngcontent-%COMP%] .miam-list-input__container[_ngcontent-%COMP%]{height:55vh;margin-bottom:16px;width:unset}}.miam-list-input[_ngcontent-%COMP%] .miam-list-input__list[_ngcontent-%COMP%] .miam-list-input__container[_ngcontent-%COMP%]::-webkit-scrollbar-button{height:20px}.miam-list-input[_ngcontent-%COMP%] .miam-list-input__list[_ngcontent-%COMP%] .miam-list-input__container[_ngcontent-%COMP%]::-webkit-scrollbar-track{background:var(--m-color-grey)}.miam-list-input[_ngcontent-%COMP%] .miam-list-input__list[_ngcontent-%COMP%] .miam-list-input__container[_ngcontent-%COMP%]::-webkit-scrollbar{cursor:-webkit-grab;height:7px;width:5px}.miam-list-input[_ngcontent-%COMP%] .miam-list-input__list[_ngcontent-%COMP%] .miam-list-input__container[_ngcontent-%COMP%]::-webkit-scrollbar-thumb{background:var(--m-color-primary);border-radius:5px}.miam-list-input[_ngcontent-%COMP%] .miam-list-input__list[_ngcontent-%COMP%] ul[_ngcontent-%COMP%]{display:flex;justify-content:flex-start;row-gap:8px}.miam-list-input[_ngcontent-%COMP%] .miam-list-input__list[_ngcontent-%COMP%] ul[_ngcontent-%COMP%] li[_ngcontent-%COMP%]{-moz-column-gap:8px;align-items:center;column-gap:8px;display:flex;list-style:none}@media (max-width:1023px){.miam-list-input[_ngcontent-%COMP%] .miam-list-input__list[_ngcontent-%COMP%] ul[_ngcontent-%COMP%] li[_ngcontent-%COMP%]{-moz-column-gap:0;column-gap:0}}.miam-list-input[_ngcontent-%COMP%] .miam-list-input__list[_ngcontent-%COMP%] ul[_ngcontent-%COMP%] li[_ngcontent-%COMP%] .miam-list-input__container__row[_ngcontent-%COMP%]{-moz-user-select:none;-webkit-touch-callout:none;-webkit-user-select:none;align-items:center;display:flex;flex:1;flex-direction:row;gap:8px;justify-content:space-between;user-select:none}@media (max-width:1023px){.miam-list-input[_ngcontent-%COMP%] .miam-list-input__list[_ngcontent-%COMP%] ul[_ngcontent-%COMP%] li[_ngcontent-%COMP%] .miam-list-input__container__row[_ngcontent-%COMP%]{margin-right:4px}}.miam-list-input[_ngcontent-%COMP%] .miam-list-input__list[_ngcontent-%COMP%] ul[_ngcontent-%COMP%] li[_ngcontent-%COMP%] .miam-list-input__container__row[_ngcontent-%COMP%] textarea[_ngcontent-%COMP%]{max-width:unset;padding:inherit}.miam-list-input[_ngcontent-%COMP%] .miam-list-input__list[_ngcontent-%COMP%] ul[_ngcontent-%COMP%] li[_ngcontent-%COMP%] .miam-list-input__container__row[_ngcontent-%COMP%] .m-input[_ngcontent-%COMP%]{margin:unset;max-width:unset;min-width:unset}@media (max-width:359px){.miam-list-input[_ngcontent-%COMP%] .miam-list-input__list[_ngcontent-%COMP%] ul[_ngcontent-%COMP%] li[_ngcontent-%COMP%] .miam-list-input__container__row[_ngcontent-%COMP%] .m-input[_ngcontent-%COMP%]{max-width:60vw}}.miam-list-input[_ngcontent-%COMP%] .miam-list-input__list[_ngcontent-%COMP%] ul[_ngcontent-%COMP%] li[_ngcontent-%COMP%] .miam-list-input__container__row[_ngcontent-%COMP%] .miam-list-input__row__left[_ngcontent-%COMP%]{align-items:center;display:flex;flex-direction:row}.miam-list-input[_ngcontent-%COMP%] .miam-list-input__list[_ngcontent-%COMP%] ul[_ngcontent-%COMP%] li[_ngcontent-%COMP%] .miam-list-input__container__row[_ngcontent-%COMP%] .miam-list-input__row__left[_ngcontent-%COMP%] .miam-list-input__row__grip[_ngcontent-%COMP%]{cursor:move}@media (max-width:1023px){.miam-list-input[_ngcontent-%COMP%] .miam-list-input__list[_ngcontent-%COMP%] ul[_ngcontent-%COMP%] li[_ngcontent-%COMP%] .miam-list-input__container__row[_ngcontent-%COMP%] .miam-list-input__row__left[_ngcontent-%COMP%] .miam-list-input__row__grip[_ngcontent-%COMP%]{margin-left:4px}}.miam-list-input[_ngcontent-%COMP%] .miam-list-input__list[_ngcontent-%COMP%] ul[_ngcontent-%COMP%] li[_ngcontent-%COMP%] .miam-list-input__container__row[_ngcontent-%COMP%] .miam-list-input__row__left[_ngcontent-%COMP%] .m-input[_ngcontent-%COMP%]{margin-left:8px;margin-right:8px;width:200px}.miam-list-input[_ngcontent-%COMP%] .miam-list-input__list[_ngcontent-%COMP%] ul[_ngcontent-%COMP%] li[_ngcontent-%COMP%] .miam-list-input__container__row[_ngcontent-%COMP%] .miam-list-input__row__right[_ngcontent-%COMP%]{align-items:center;display:flex;flex-direction:row}.miam-list-input[_ngcontent-%COMP%] .miam-list-input__list[_ngcontent-%COMP%] ul[_ngcontent-%COMP%] li[_ngcontent-%COMP%] .miam-list-input__container__row[_ngcontent-%COMP%] .miam-list-input__row__right[_ngcontent-%COMP%] .m-input[_ngcontent-%COMP%]{margin-right:8px;text-align:right}@media (max-width:1023px){.miam-list-input[_ngcontent-%COMP%] .miam-list-input__list[_ngcontent-%COMP%] ul[_ngcontent-%COMP%] li[_ngcontent-%COMP%] .miam-list-input__container__row[_ngcontent-%COMP%] .miam-list-input__row__right[_ngcontent-%COMP%]{flex-wrap:wrap}.miam-list-input[_ngcontent-%COMP%] .miam-list-input__list[_ngcontent-%COMP%] ul[_ngcontent-%COMP%] li[_ngcontent-%COMP%] .miam-list-input__container__row[_ngcontent-%COMP%] .miam-list-input__row__right[_ngcontent-%COMP%] .m-input[_ngcontent-%COMP%]{flex:1;margin-bottom:8px;margin-right:4px}}@media (max-width:359px){.miam-list-input[_ngcontent-%COMP%] .miam-list-input__list[_ngcontent-%COMP%] ul[_ngcontent-%COMP%] li[_ngcontent-%COMP%] .miam-list-input__container__row[_ngcontent-%COMP%] .miam-list-input__row__right[_ngcontent-%COMP%]{max-width:60vw}.miam-list-input[_ngcontent-%COMP%] .miam-list-input__list[_ngcontent-%COMP%] ul[_ngcontent-%COMP%] li[_ngcontent-%COMP%] .miam-list-input__container__row[_ngcontent-%COMP%] .miam-list-input__row__right[_ngcontent-%COMP%] .m-input[_ngcontent-%COMP%]{max-width:58vw}}.miam-list-input[_ngcontent-%COMP%] .miam-list-input__list[_ngcontent-%COMP%] ul[_ngcontent-%COMP%] li[_ngcontent-%COMP%] .miam-list-input__container__row[_ngcontent-%COMP%] .miam-list-input__row__right[_ngcontent-%COMP%] .alert-success[_ngcontent-%COMP%]{background:var(--m-color-white);border:1px solid var(--m-color-success);border-radius:8px;box-shadow:0 0 4px var(--m-color-success)}.miam-list-input[_ngcontent-%COMP%] .miam-list-input__list[_ngcontent-%COMP%] ul[_ngcontent-%COMP%] li[_ngcontent-%COMP%] .miam-list-input__container__row[_ngcontent-%COMP%] .miam-list-input__row__right[_ngcontent-%COMP%] .alert-danger[_ngcontent-%COMP%]{background:var(--m-color-white);border:1px solid var(--m-color-danger);border-radius:8px;box-shadow:0 0 4px var(--m-color-danger)}.miam-list-input[_ngcontent-%COMP%] .miam-list-input__list[_ngcontent-%COMP%] ul[_ngcontent-%COMP%] li[_ngcontent-%COMP%] .miam-list-input__row__trash[_ngcontent-%COMP%]{-webkit-tap-highlight-color:transparent;cursor:pointer}.miam-list-input[_ngcontent-%COMP%] .miam-list-input__list[_ngcontent-%COMP%] ul[_ngcontent-%COMP%] li[_ngcontent-%COMP%] textarea[_ngcontent-%COMP%]{border-radius:var(--m-border-radius);flex:1;margin:0;max-width:none;outline:none;padding:5px;resize:none}.miam-list-input[_ngcontent-%COMP%] .miam-list-input__list[_ngcontent-%COMP%] ul[_ngcontent-%COMP%] li[_ngcontent-%COMP%] textarea.warnning[_ngcontent-%COMP%]{background-color:var(--m-color-secondary-light);color:var(--m-color-secondary)}.miam-list-input[_ngcontent-%COMP%] .miam-list-input__list[_ngcontent-%COMP%] ul[_ngcontent-%COMP%] li[_ngcontent-%COMP%] textarea.error[_ngcontent-%COMP%]{background-color:var(--m-color-danger);color:var(--m-color-danger-text)}.miam-list-input[_ngcontent-%COMP%] .miam-list-input__list[_ngcontent-%COMP%] ul[_ngcontent-%COMP%] li[_ngcontent-%COMP%] textarea[cdktextareaautosize][_ngcontent-%COMP%]{overflow:hidden}.miam-list-input[_ngcontent-%COMP%] .hint[_ngcontent-%COMP%]{border-radius:var(--m-border-radius);flex:1;font-size:12px;font-weight:600;padding-bottom:10px}.miam-list-input[_ngcontent-%COMP%] .hint.warnning[_ngcontent-%COMP%]{color:var(--m-color-secondary)}.miam-list-input[_ngcontent-%COMP%] .hint.error[_ngcontent-%COMP%]{color:var(--m-color-danger)}.miam-list-input[_ngcontent-%COMP%] .miam-list-input__placeholder[_ngcontent-%COMP%]{align-items:center;justify-content:center}.miam-list-input[_ngcontent-%COMP%] .miam-list-input__placeholder[_ngcontent-%COMP%] .miam-list-input__placeholder__hint[_ngcontent-%COMP%]{color:var(--m-color-secondary);margin-top:40px;opacity:.5;text-align:center}.miam-list-input[_ngcontent-%COMP%] .miam-list-input__actions[_ngcontent-%COMP%]{-moz-column-gap:32px;column-gap:32px;display:flex;justify-content:space-between}@media (max-width:1023px){.miam-list-input[_ngcontent-%COMP%] .miam-list-input__actions[_ngcontent-%COMP%]{flex-direction:column}}.miam-list-input[_ngcontent-%COMP%] .miam-list-input__actions[_ngcontent-%COMP%] textarea[_ngcontent-%COMP%]{flex:1;margin-top:0;outline:none;resize:none}@media (max-width:1023px){.miam-list-input[_ngcontent-%COMP%] .miam-list-input__actions[_ngcontent-%COMP%] textarea[_ngcontent-%COMP%]{width:90vw}}.miam-list-input[_ngcontent-%COMP%] .miam-list-input__actions[_ngcontent-%COMP%] .miam-list-input__actions__instructions[_ngcontent-%COMP%]{background-color:var(--m-color-info);border-radius:8px;color:var(--m-color-info-text);max-width:calc(98vw - 776px);padding:8px;position:absolute;top:315px;white-space:pre-line;width:400px}@media (max-width:1023px){.miam-list-input[_ngcontent-%COMP%] .miam-list-input__actions[_ngcontent-%COMP%] .miam-list-input__actions__instructions[_ngcontent-%COMP%]{margin-top:16px;max-width:unset;position:unset;width:unset}}.miam-list-input[_ngcontent-%COMP%] .miam-list-input__actions[_ngcontent-%COMP%] .miam-list-input__instructions__direction[_ngcontent-%COMP%]{margin-left:4px}@media (max-width:1023px){.miam-list-input[_ngcontent-%COMP%] .miam-list-input__actions[_ngcontent-%COMP%] .miam-list-input__instructions__direction[_ngcontent-%COMP%]{display:none}}.miam-list-input[_ngcontent-%COMP%] .miam-list-input__actions[_ngcontent-%COMP%] button[_ngcontent-%COMP%]{height:-webkit-fit-content;height:-moz-fit-content;height:fit-content}.miam-list-input__row__preview[_ngcontent-%COMP%]{align-items:center;display:flex;width:530px}@media (max-width:1023px){.miam-list-input__row__preview[_ngcontent-%COMP%]{flex-wrap:wrap;width:80vw}}.miam-list-input__row__preview[_ngcontent-%COMP%] .miam-list-input__preview__text[_ngcontent-%COMP%]{padding:5px}.miam-list-input__row__preview[_ngcontent-%COMP%] span[_ngcontent-%COMP%]:first-of-type{flex:1;flex-shrink:1;margin-left:8px}.miam-list-input__row__preview[_ngcontent-%COMP%] span[_ngcontent-%COMP%]:nth-of-type(2n){margin-right:8px}.miam-list-input__row__placeholder[_ngcontent-%COMP%]{-moz-user-select:none;-webkit-touch-callout:none;-webkit-user-select:none;background:var(--m-color-grey07);border-radius:8px;margin-right:24px;min-height:60px;user-select:none}.cdk-drag-animating[_ngcontent-%COMP%], .miam-list-input__row__placeholder[_ngcontent-%COMP%], ul.cdk-drop-list-dragging[_ngcontent-%COMP%] li[_ngcontent-%COMP%]:not(.cdk-drag-placeholder){transition:transform .25s cubic-bezier(0,0,.2,1)}"] });
|
|
389
|
+
} }, directives: [i2.NgControlStatusGroup, i2.FormGroupDirective, i3.NgIf, i4.CdkTextareaAutosize, i2.DefaultValueAccessor, i2.NgControlStatus, i2.FormControlDirective, i5.CdkDropList, i3.NgForOf, i5.CdkDrag, i6.IconComponent, i5.CdkDragHandle, i2.FormControlName, i5.CdkDragPlaceholder, i5.CdkDragPreview, i2.FormGroupName, i3.NgClass, i7.AutowidthInputDirective], pipes: [i3.AsyncPipe, i8.CapitalizeFirstLetterPipe], styles: [".miam-list-input[_ngcontent-%COMP%]{padding:8px}@media (min-width:1024px){.miam-list-input[_ngcontent-%COMP%]{width:calc(100% - 16px)}}.miam-list-input[_ngcontent-%COMP%] .miam-list-input__list[_ngcontent-%COMP%]{margin-top:50px;position:relative}@media (min-width:1024px){.miam-list-input[_ngcontent-%COMP%] .miam-list-input__list[_ngcontent-%COMP%]{width:55%}}.miam-list-input[_ngcontent-%COMP%] .miam-list-input__list[_ngcontent-%COMP%] .miam-list-input__list__label[_ngcontent-%COMP%]{background-color:var(--m-color-secondary-light);border-radius:8px 8px 0 0;color:var(--m-color-secondary);font-weight:700;left:0;padding:8px 24px;position:absolute;top:-33px;width:200px;z-index:0}.miam-list-input[_ngcontent-%COMP%] .miam-list-input__list[_ngcontent-%COMP%] .miam-list-input__container[_ngcontent-%COMP%]{display:flex;flex-direction:column;height:400px;margin-bottom:32px;overflow-x:hidden;overflow-y:auto;position:inherit;z-index:1}@media (max-width:1023px){.miam-list-input[_ngcontent-%COMP%] .miam-list-input__list[_ngcontent-%COMP%] .miam-list-input__container[_ngcontent-%COMP%]{height:55vh;margin-bottom:16px;width:unset}}.miam-list-input[_ngcontent-%COMP%] .miam-list-input__list[_ngcontent-%COMP%] .miam-list-input__container[_ngcontent-%COMP%]::-webkit-scrollbar-button{height:20px}.miam-list-input[_ngcontent-%COMP%] .miam-list-input__list[_ngcontent-%COMP%] .miam-list-input__container[_ngcontent-%COMP%]::-webkit-scrollbar-track{background:var(--m-color-grey)}.miam-list-input[_ngcontent-%COMP%] .miam-list-input__list[_ngcontent-%COMP%] .miam-list-input__container[_ngcontent-%COMP%]::-webkit-scrollbar{cursor:-webkit-grab;height:7px;width:5px}.miam-list-input[_ngcontent-%COMP%] .miam-list-input__list[_ngcontent-%COMP%] .miam-list-input__container[_ngcontent-%COMP%]::-webkit-scrollbar-thumb{background:var(--m-color-primary);border-radius:5px}.miam-list-input[_ngcontent-%COMP%] .miam-list-input__list[_ngcontent-%COMP%] ul[_ngcontent-%COMP%]{display:flex;justify-content:flex-start;row-gap:8px}.miam-list-input[_ngcontent-%COMP%] .miam-list-input__list[_ngcontent-%COMP%] ul[_ngcontent-%COMP%] li[_ngcontent-%COMP%]{-moz-column-gap:16px;align-items:center;column-gap:16px;display:flex;list-style:none}@media (max-width:1023px){.miam-list-input[_ngcontent-%COMP%] .miam-list-input__list[_ngcontent-%COMP%] ul[_ngcontent-%COMP%] li[_ngcontent-%COMP%]{-moz-column-gap:0;column-gap:0}}.miam-list-input[_ngcontent-%COMP%] .miam-list-input__list[_ngcontent-%COMP%] ul[_ngcontent-%COMP%] li[_ngcontent-%COMP%] .miam-list-input__container__row[_ngcontent-%COMP%]{-moz-user-select:none;-webkit-touch-callout:none;-webkit-user-select:none;align-items:center;display:flex;flex:1;flex-direction:row;gap:16px;user-select:none}@media (max-width:1023px){.miam-list-input[_ngcontent-%COMP%] .miam-list-input__list[_ngcontent-%COMP%] ul[_ngcontent-%COMP%] li[_ngcontent-%COMP%] .miam-list-input__container__row[_ngcontent-%COMP%]{margin-right:4px}}.miam-list-input[_ngcontent-%COMP%] .miam-list-input__list[_ngcontent-%COMP%] ul[_ngcontent-%COMP%] li[_ngcontent-%COMP%] .miam-list-input__container__row[_ngcontent-%COMP%] textarea[_ngcontent-%COMP%]{max-width:unset;padding:inherit}.miam-list-input[_ngcontent-%COMP%] .miam-list-input__list[_ngcontent-%COMP%] ul[_ngcontent-%COMP%] li[_ngcontent-%COMP%] .miam-list-input__container__row[_ngcontent-%COMP%] .m-input[_ngcontent-%COMP%]{margin:unset;max-width:unset;min-width:unset}@media (max-width:359px){.miam-list-input[_ngcontent-%COMP%] .miam-list-input__list[_ngcontent-%COMP%] ul[_ngcontent-%COMP%] li[_ngcontent-%COMP%] .miam-list-input__container__row[_ngcontent-%COMP%] .m-input[_ngcontent-%COMP%]{max-width:60vw}}.miam-list-input[_ngcontent-%COMP%] .miam-list-input__list[_ngcontent-%COMP%] ul[_ngcontent-%COMP%] li[_ngcontent-%COMP%] .miam-list-input__container__row[_ngcontent-%COMP%] .miam-list-input__row__left[_ngcontent-%COMP%]{align-items:center;display:flex;flex-direction:row}.miam-list-input[_ngcontent-%COMP%] .miam-list-input__list[_ngcontent-%COMP%] ul[_ngcontent-%COMP%] li[_ngcontent-%COMP%] .miam-list-input__container__row[_ngcontent-%COMP%] .miam-list-input__row__left[_ngcontent-%COMP%] .miam-list-input__row__grip[_ngcontent-%COMP%]{cursor:move}@media (max-width:1023px){.miam-list-input[_ngcontent-%COMP%] .miam-list-input__list[_ngcontent-%COMP%] ul[_ngcontent-%COMP%] li[_ngcontent-%COMP%] .miam-list-input__container__row[_ngcontent-%COMP%] .miam-list-input__row__left[_ngcontent-%COMP%] .miam-list-input__row__grip[_ngcontent-%COMP%]{margin-left:4px}}.miam-list-input[_ngcontent-%COMP%] .miam-list-input__list[_ngcontent-%COMP%] ul[_ngcontent-%COMP%] li[_ngcontent-%COMP%] .miam-list-input__container__row[_ngcontent-%COMP%] .miam-list-input__row__left[_ngcontent-%COMP%] .m-input[_ngcontent-%COMP%]{margin-left:8px;margin-right:8px;width:200px}.miam-list-input[_ngcontent-%COMP%] .miam-list-input__list[_ngcontent-%COMP%] ul[_ngcontent-%COMP%] li[_ngcontent-%COMP%] .miam-list-input__container__row[_ngcontent-%COMP%] .miam-list-input__row__right[_ngcontent-%COMP%]{align-items:center;display:flex;flex:1;flex-direction:row}.miam-list-input[_ngcontent-%COMP%] .miam-list-input__list[_ngcontent-%COMP%] ul[_ngcontent-%COMP%] li[_ngcontent-%COMP%] .miam-list-input__container__row[_ngcontent-%COMP%] .miam-list-input__row__right[_ngcontent-%COMP%] .m-input[_ngcontent-%COMP%]{margin-right:8px;width:80px}.miam-list-input[_ngcontent-%COMP%] .miam-list-input__list[_ngcontent-%COMP%] ul[_ngcontent-%COMP%] li[_ngcontent-%COMP%] .miam-list-input__container__row[_ngcontent-%COMP%] .miam-list-input__row__right[_ngcontent-%COMP%] .m-input[_ngcontent-%COMP%]:first-child{flex:1}.miam-list-input[_ngcontent-%COMP%] .miam-list-input__list[_ngcontent-%COMP%] ul[_ngcontent-%COMP%] li[_ngcontent-%COMP%] .miam-list-input__container__row[_ngcontent-%COMP%] .miam-list-input__row__right[_ngcontent-%COMP%] .m-input[_ngcontent-%COMP%]:last-child{margin-right:0;text-align:right}@media (max-width:1023px){.miam-list-input[_ngcontent-%COMP%] .miam-list-input__list[_ngcontent-%COMP%] ul[_ngcontent-%COMP%] li[_ngcontent-%COMP%] .miam-list-input__container__row[_ngcontent-%COMP%] .miam-list-input__row__right[_ngcontent-%COMP%]{flex-wrap:wrap}.miam-list-input[_ngcontent-%COMP%] .miam-list-input__list[_ngcontent-%COMP%] ul[_ngcontent-%COMP%] li[_ngcontent-%COMP%] .miam-list-input__container__row[_ngcontent-%COMP%] .miam-list-input__row__right[_ngcontent-%COMP%] .m-input[_ngcontent-%COMP%]{flex:1;margin-bottom:8px;margin-right:4px}}@media (max-width:359px){.miam-list-input[_ngcontent-%COMP%] .miam-list-input__list[_ngcontent-%COMP%] ul[_ngcontent-%COMP%] li[_ngcontent-%COMP%] .miam-list-input__container__row[_ngcontent-%COMP%] .miam-list-input__row__right[_ngcontent-%COMP%]{max-width:60vw}.miam-list-input[_ngcontent-%COMP%] .miam-list-input__list[_ngcontent-%COMP%] ul[_ngcontent-%COMP%] li[_ngcontent-%COMP%] .miam-list-input__container__row[_ngcontent-%COMP%] .miam-list-input__row__right[_ngcontent-%COMP%] .m-input[_ngcontent-%COMP%]{max-width:58vw}}.miam-list-input[_ngcontent-%COMP%] .miam-list-input__list[_ngcontent-%COMP%] ul[_ngcontent-%COMP%] li[_ngcontent-%COMP%] .miam-list-input__container__row[_ngcontent-%COMP%] .miam-list-input__row__right[_ngcontent-%COMP%] .alert-success[_ngcontent-%COMP%]{background:var(--m-color-white);border:1px solid var(--m-color-success);border-radius:8px;box-shadow:0 0 4px var(--m-color-success)}.miam-list-input[_ngcontent-%COMP%] .miam-list-input__list[_ngcontent-%COMP%] ul[_ngcontent-%COMP%] li[_ngcontent-%COMP%] .miam-list-input__container__row[_ngcontent-%COMP%] .miam-list-input__row__right[_ngcontent-%COMP%] .alert-danger[_ngcontent-%COMP%]{background:var(--m-color-white);border:1px solid var(--m-color-danger);border-radius:8px;box-shadow:0 0 4px var(--m-color-danger)}.miam-list-input[_ngcontent-%COMP%] .miam-list-input__list[_ngcontent-%COMP%] ul[_ngcontent-%COMP%] li[_ngcontent-%COMP%] .miam-list-input__row__controls[_ngcontent-%COMP%]{align-items:center;display:flex;gap:8px;justify-content:space-between}.miam-list-input[_ngcontent-%COMP%] .miam-list-input__list[_ngcontent-%COMP%] ul[_ngcontent-%COMP%] li[_ngcontent-%COMP%] .miam-list-input__row__controls[_ngcontent-%COMP%] label[_ngcontent-%COMP%]{display:flex;justify-content:center;width:50px}.miam-list-input[_ngcontent-%COMP%] .miam-list-input__list[_ngcontent-%COMP%] ul[_ngcontent-%COMP%] li[_ngcontent-%COMP%] .miam-list-input__row__controls[_ngcontent-%COMP%] label[_ngcontent-%COMP%] .miam-list-input__row__picture[_ngcontent-%COMP%]{-webkit-tap-highlight-color:transparent;width:50px}.miam-list-input[_ngcontent-%COMP%] .miam-list-input__list[_ngcontent-%COMP%] ul[_ngcontent-%COMP%] li[_ngcontent-%COMP%] .miam-list-input__row__controls[_ngcontent-%COMP%] label[_ngcontent-%COMP%] .miam-list-input__row__picture.clickable[_ngcontent-%COMP%]{cursor:pointer}.miam-list-input[_ngcontent-%COMP%] .miam-list-input__list[_ngcontent-%COMP%] ul[_ngcontent-%COMP%] li[_ngcontent-%COMP%] .miam-list-input__row__controls[_ngcontent-%COMP%] input[_ngcontent-%COMP%]{display:none}.miam-list-input[_ngcontent-%COMP%] .miam-list-input__list[_ngcontent-%COMP%] ul[_ngcontent-%COMP%] li[_ngcontent-%COMP%] .miam-list-input__row__controls[_ngcontent-%COMP%] .miam-list-input__row__trash[_ngcontent-%COMP%]{-webkit-tap-highlight-color:transparent;cursor:pointer}.miam-list-input[_ngcontent-%COMP%] .miam-list-input__list[_ngcontent-%COMP%] ul[_ngcontent-%COMP%] li[_ngcontent-%COMP%] textarea[_ngcontent-%COMP%]{border-radius:var(--m-border-radius);flex:1;margin:0;max-width:none;outline:none;padding:5px;resize:none}.miam-list-input[_ngcontent-%COMP%] .miam-list-input__list[_ngcontent-%COMP%] ul[_ngcontent-%COMP%] li[_ngcontent-%COMP%] textarea.warnning[_ngcontent-%COMP%]{background-color:var(--m-color-secondary-light);color:var(--m-color-secondary)}.miam-list-input[_ngcontent-%COMP%] .miam-list-input__list[_ngcontent-%COMP%] ul[_ngcontent-%COMP%] li[_ngcontent-%COMP%] textarea.error[_ngcontent-%COMP%]{background-color:var(--m-color-danger);color:var(--m-color-danger-text)}.miam-list-input[_ngcontent-%COMP%] .miam-list-input__list[_ngcontent-%COMP%] ul[_ngcontent-%COMP%] li[_ngcontent-%COMP%] textarea[cdktextareaautosize][_ngcontent-%COMP%]{overflow:hidden}.miam-list-input[_ngcontent-%COMP%] .hint[_ngcontent-%COMP%]{border-radius:var(--m-border-radius);flex:1;font-size:12px;font-weight:600;padding-bottom:10px}.miam-list-input[_ngcontent-%COMP%] .hint.warnning[_ngcontent-%COMP%]{color:var(--m-color-secondary)}.miam-list-input[_ngcontent-%COMP%] .hint.error[_ngcontent-%COMP%]{color:var(--m-color-danger)}.miam-list-input[_ngcontent-%COMP%] .miam-list-input__placeholder[_ngcontent-%COMP%]{align-items:center;justify-content:center}.miam-list-input[_ngcontent-%COMP%] .miam-list-input__placeholder[_ngcontent-%COMP%] .miam-list-input__placeholder__hint[_ngcontent-%COMP%]{color:var(--m-color-secondary);margin-top:40px;opacity:.5;text-align:center}.miam-list-input[_ngcontent-%COMP%] .miam-list-input__actions[_ngcontent-%COMP%]{-moz-column-gap:32px;column-gap:32px;display:flex;justify-content:space-between}@media (min-width:1024px){.miam-list-input[_ngcontent-%COMP%] .miam-list-input__actions[_ngcontent-%COMP%]{width:calc(45% - 32px)}}@media (max-width:1023px){.miam-list-input[_ngcontent-%COMP%] .miam-list-input__actions[_ngcontent-%COMP%]{flex-direction:column}}.miam-list-input[_ngcontent-%COMP%] .miam-list-input__actions[_ngcontent-%COMP%] textarea[_ngcontent-%COMP%]{flex:1;margin-top:0;outline:none;resize:none}@media (max-width:1023px){.miam-list-input[_ngcontent-%COMP%] .miam-list-input__actions[_ngcontent-%COMP%] textarea[_ngcontent-%COMP%]{width:90vw}}.miam-list-input[_ngcontent-%COMP%] .miam-list-input__actions[_ngcontent-%COMP%] .miam-list-input__actions__instructions[_ngcontent-%COMP%]{background-color:var(--m-color-info);border-radius:8px;color:var(--m-color-info-text);max-width:calc(98vw - 776px);padding:8px;position:absolute;top:315px;white-space:pre-line;width:400px}@media (max-width:1023px){.miam-list-input[_ngcontent-%COMP%] .miam-list-input__actions[_ngcontent-%COMP%] .miam-list-input__actions__instructions[_ngcontent-%COMP%]{margin-top:16px;max-width:unset;position:unset;width:unset}}.miam-list-input[_ngcontent-%COMP%] .miam-list-input__actions[_ngcontent-%COMP%] .miam-list-input__instructions__direction[_ngcontent-%COMP%]{margin-left:4px}@media (max-width:1023px){.miam-list-input[_ngcontent-%COMP%] .miam-list-input__actions[_ngcontent-%COMP%] .miam-list-input__instructions__direction[_ngcontent-%COMP%]{display:none}}.miam-list-input[_ngcontent-%COMP%] .miam-list-input__actions[_ngcontent-%COMP%] button[_ngcontent-%COMP%]{height:-webkit-fit-content;height:-moz-fit-content;height:fit-content}.miam-list-input__row__preview[_ngcontent-%COMP%]{align-items:center;display:flex;width:530px}@media (max-width:1023px){.miam-list-input__row__preview[_ngcontent-%COMP%]{flex-wrap:wrap;width:80vw}}.miam-list-input__row__preview[_ngcontent-%COMP%] .miam-list-input__preview__text[_ngcontent-%COMP%]{padding:5px}.miam-list-input__row__preview[_ngcontent-%COMP%] span[_ngcontent-%COMP%]:first-of-type{flex:1;flex-shrink:1;margin-left:8px}.miam-list-input__row__preview[_ngcontent-%COMP%] span[_ngcontent-%COMP%]:nth-of-type(2n){margin-right:8px}.miam-list-input__row__placeholder[_ngcontent-%COMP%]{-moz-user-select:none;-webkit-touch-callout:none;-webkit-user-select:none;background:var(--m-color-grey07);border-radius:8px;margin-right:24px;min-height:60px;user-select:none}.cdk-drag-animating[_ngcontent-%COMP%], .miam-list-input__row__placeholder[_ngcontent-%COMP%], ul.cdk-drop-list-dragging[_ngcontent-%COMP%] li[_ngcontent-%COMP%]:not(.cdk-drag-placeholder){transition:transform .25s cubic-bezier(0,0,.2,1)}"] });
|
|
329
390
|
/*@__PURE__*/ (function () { i0.ɵsetClassMetadata(ListInputComponent, [{
|
|
330
391
|
type: Component,
|
|
331
392
|
args: [{
|
|
@@ -345,9 +406,11 @@ ListInputComponent.ɵcmp = i0.ɵɵdefineComponent({ type: ListInputComponent, se
|
|
|
345
406
|
type: Input
|
|
346
407
|
}], list: [{
|
|
347
408
|
type: Input
|
|
409
|
+
}], ingredientsPictures: [{
|
|
410
|
+
type: Input
|
|
348
411
|
}], deleteId: [{
|
|
349
412
|
type: Output
|
|
350
413
|
}], orderHasChanged: [{
|
|
351
414
|
type: Output
|
|
352
415
|
}] }); })();
|
|
353
|
-
//# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoibGlzdC1pbnB1dC5jb21wb25lbnQuanMiLCJzb3VyY2VSb290IjoiL2J1aWxkcy9taWFtL25nLW1pYW0tc2RrL3Byb2plY3RzL25nLW1pYW0vc3JjLyIsInNvdXJjZXMiOlsibGliL19jb21wb25lbnRzL2xpc3QtaW5wdXQvbGlzdC1pbnB1dC5jb21wb25lbnQudHMiLCJsaWIvX2NvbXBvbmVudHMvbGlzdC1pbnB1dC9saXN0LWlucHV0LmNvbXBvbmVudC5odG1sIl0sIm5hbWVzIjpbXSwibWFwcGluZ3MiOiJBQUFBLE9BQU8sRUFBRSxpQkFBaUIsRUFBRSxTQUFTLEVBQUUsWUFBWSxFQUFFLEtBQUssRUFBRSxNQUFNLEdBQUUsTUFBTSxlQUFlLENBQUM7QUFDMUYsT0FBTyxFQUFlLGVBQWUsRUFBRSxNQUFNLHdCQUF3QixDQUFDO0FBQ3RFLE9BQU8sRUFBRSxTQUFTLEVBQUUsV0FBVyxFQUFFLFdBQVcsRUFBRSxVQUFVLEVBQUUsTUFBTSxnQkFBZ0IsQ0FBQztBQUNqRixPQUFPLEVBQUUsSUFBSSxFQUFFLE1BQU0sd0JBQXdCLENBQUM7QUFDOUMsT0FBTyxFQUFFLElBQUksRUFBRSxNQUFNLGdCQUFnQixDQUFDO0FBQ3RDLE9BQU8sRUFBRSxrQkFBa0IsRUFBRSxNQUFNLGlCQUFpQixDQUFDOzs7Ozs7Ozs7OztJQ1N2QywwQkFBeUU7OztJQUN6RSwrQkFDRTtJQUFBLG1DQUF1RztJQUN2RyxnQ0FBeUQ7SUFBQSxZQUFvRDtJQUFBLGlCQUFPO0lBQ3RILGlCQUFNOzs7OztJQUYrQyxlQUFzQjtJQUF0Qiw0Q0FBc0I7SUFDaEIsZUFBb0Q7SUFBcEQsb0lBQW9EOzs7O0lBWnJILDhCQUNFO0lBQUEsaUNBQ0U7SUFBQSxpQ0FDRTtJQUFBLCtCQUNBO0lBQUEsbUNBQTJJO0lBQzNJLHdDQUMwRztJQURwQyx1T0FBb0I7SUFDSyxpQkFBVztJQUMxRyxpQkFBTTtJQUNOLHdDQUFrSjtJQUFoRywyT0FBbUI7SUFBOEQsaUJBQWU7SUFDbEosNkZBQW1FO0lBQ25FLDZGQUNF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QyxJQUFJLElBQUM7UUFDRCxpQkFBVztRQUM5RSxpQ0FDRTtRQUQrQixnSUFBa0MsSUFBSSxJQUFDLHNGQUFZLFlBQVEsSUFBcEI7UUFDdEUsMEJBQVE7UUFBQSxnQ0FBdUQ7UUFBQSxtQkFBRTtRQUFBLGlCQUFPO1FBQzFFLGlCQUFTO1FBQ1QscUVBQXlFO1FBQzNFLGlCQUFNO1FBQ1IsaUJBQU07OztRQTNFK0IsZUFBa0I7UUFBbEIsb0NBQWtCO1FBQ1QsZUFBUztRQUFULCtCQUFTO1FBQy9DLGVBQXNEO1FBQXRELHdGQUFzRCxpQkFBQTtRQW1FeEQsZUFBNkI7UUFBN0IsK0NBQTZCO1FBQUMsOENBQWtDO1FBSTdELGVBQW9CO1FBQXBCLHVDQUFvQjs7a0RENURoQixrQkFBa0I7Y0FMOUIsU0FBUztlQUFDO2dCQUNULFFBQVEsRUFBRSxvQkFBb0I7Z0JBQzlCLFdBQVcsRUFBRSw2QkFBNkI7Z0JBQzFDLFNBQVMsRUFBRSxDQUFDLDZCQUE2QixDQUFDO2FBQzNDOytIQUdVLElBQUk7a0JBQVosS0FBSztZQUNHLFdBQVc7a0JBQW5CLEtBQUs7WUFDRyxLQUFLO2tCQUFiLEtBQUs7WUFDRyxZQUFZO2tCQUFwQixLQUFLO1lBQ0csY0FBYztrQkFBdEIsS0FBSztZQUNHLElBQUk7a0JBQVosS0FBSztZQUdJLFFBQVE7a0JBQWpCLE1BQU07WUFDRyxlQUFlO2tCQUF4QixNQUFNIiwic291cmNlc0NvbnRlbnQiOlsiaW1wb3J0IHsgQ2hhbmdlRGV0ZWN0b3JSZWYsIENvbXBvbmVudCwgRXZlbnRFbWl0dGVyLCBJbnB1dCwgT3V0cHV0LH0gZnJvbSAnQGFuZ3VsYXIvY29yZSc7XG5pbXBvcnQgeyBDZGtEcmFnRHJvcCwgbW92ZUl0ZW1JbkFycmF5IH0gZnJvbSAnQGFuZ3VsYXIvY2RrL2RyYWctZHJvcCc7XG5pbXBvcnQgeyBGb3JtQXJyYXksIEZvcm1CdWlsZGVyLCBGb3JtQ29udHJvbCwgVmFsaWRhdG9ycyB9IGZyb20gJ0Bhbmd1bGFyL2Zvcm1zJztcbmltcG9ydCB7IEljb24gfSBmcm9tICcuLi8uLi9fdHlwZXMvaWNvbi5lbnVtJztcbmltcG9ydCB7IHRha2UgfSBmcm9tICdyeGpzL29wZXJhdG9ycyc7XG5pbXBvcnQgeyBJbmdyZWRpZW50c1NlcnZpY2UgfSBmcm9tICcuLi8uLi9fc2VydmljZXMnO1xuaW1wb3J0IHsgSW5ncmVkaWVudCB9IGZyb20gJy4uLy4uL19tb2RlbHMvaW5ncmVkaWVudCc7XG5pbXBvcnQgeyBPYnNlcnZhYmxlIH0gZnJvbSAncnhqcyc7XG5cbkBDb21wb25lbnQoe1xuICBzZWxlY3RvcjogJ25nLW1pYW0tbGlzdC1pbnB1dCcsXG4gIHRlbXBsYXRlVXJsOiAnLi9saXN0LWlucHV0LmNvbXBvbmVudC5odG1sJyxcbiAgc3R5bGVVcmxzOiBbJy4vbGlzdC1pbnB1dC5jb21wb25lbnQuc2NzcyddLFxufSlcbmV4cG9ydCBjbGFzcyBMaXN0SW5wdXRDb21wb25lbnQge1xuXG4gIEBJbnB1dCgpIGhpbnQ6IHN0cmluZztcbiAgQElucHV0KCkgcGxhY2Vob2xkZXIgPSAnJztcbiAgQElucHV0KCkgbGFiZWw6IHN0cmluZztcbiAgQElucHV0KCkgaW5zdHJ1Y3Rpb25zOiBzdHJpbmc7XG4gIEBJbnB1dCgpIGluZ3JlZGllbnRNb2RlOiBib29sZWFuO1xuICBASW5wdXQoKSBsaXN0OiBGb3JtQXJyYXkgPSBuZXcgRm9ybUFycmF5KFtdKTtcblxuXG4gIEBPdXRwdXQoKSBkZWxldGVJZDogRXZlbnRFbWl0dGVyPHN0cmluZz47XG4gIEBPdXRwdXQoKSBvcmRlckhhc0NoYW5nZWQ6IEV2ZW50RW1pdHRlcjx2b2lkPjtcblxuICBwdWJsaWMgaWNvbiA9IEljb247XG4gIHB1YmxpYyBoaWRlRXJyb3JzOiBib29sZWFuO1xuICBwdWJsaWMgZmlsbExpc3RJbnB1dDogRm9ybUNvbnRyb2w7XG4gIHB1YmxpYyBtb3Vzc2VEb3duT25CdXR0b246IGJvb2xlYW47XG4gIHByaXZhdGUgcHJldmlvdXNRdWFudGl0aWVzOiBzdHJpbmdbXTtcblxuICBjb25zdHJ1Y3Rvcihwcml2YXRlIGluZ3JlZGllbnRTZXJ2aWNlOiBJbmdyZWRpZW50c1NlcnZpY2UsIHByaXZhdGUgZmI6IEZvcm1CdWlsZGVyLCBwcml2YXRlIGNkcjogQ2hhbmdlRGV0ZWN0b3JSZWYpIHtcbiAgICB0aGlzLmZpbGxMaXN0SW5wdXQgPSBuZXcgRm9ybUNvbnRyb2woJycpO1xuICAgIHRoaXMuZGVsZXRlSWQgPSBuZXcgRXZlbnRFbWl0dGVyKCk7XG4gICAgdGhpcy5vcmRlckhhc0NoYW5nZWQgID0gbmV3IEV2ZW50RW1pdHRlcigpO1xuICAgIHRoaXMucHJldmlvdXNRdWFudGl0aWVzID0gW107XG4gIH1cblxuICBwdWJsaWMgZGVsZXRlKGluZGV4OiBudW1iZXIpOiB2b2lkIHtcbiAgICBpZiAodGhpcy5saXN0LmNvbnRyb2xzW2luZGV4XVtgY29udHJvbHNgXS5pZD8udmFsdWUpIHtcbiAgICAgIHRoaXMuZGVsZXRlSWQuZW1pdCh0aGlzLmxpc3QuY29udHJvbHNbaW5kZXhdW2Bjb250cm9sc2BdLmlkLnZhbHVlKTtcbiAgICB9XG4gICAgdGhpcy5saXN0LnJlbW92ZUF0KGluZGV4KTtcbiAgICB0aGlzLmxpc3QubWFya0FzRGlydHkoKTtcbiAgICB0aGlzLmNkci5kZXRlY3RDaGFuZ2VzKCk7XG4gIH1cblxuICBwdWJsaWMgc3VibWl0KCk6IHZvaWQge1xuICAgIGNvbnN0IHZhbHVlcyA9IHRoaXMuZmlsbExpc3RJbnB1dC52YWx1ZT8udHJpbUVuZCgpLnNwbGl0KCdcXG4nKTtcblxuICAgIGlmICh2YWx1ZXMgJiYgdmFsdWVzLmxlbmd0aCA+IDApIHtcbiAgICAgIGlmICh0aGlzLmluZ3JlZGllbnRNb2RlKSB7XG4gICAgICAgIHRoaXMuaW5ncmVkaWVudFNlcnZpY2UuZm9ybWF0SW5ncmVkaWVudHModmFsdWVzKS5waXBlKHRha2UoMSkpLnN1YnNjcmliZSgoaW5ncmVkaWVudHM6IEluZ3JlZGllbnRbXSkgPT4ge1xuICAgICAgICAgIGluZ3JlZGllbnRzLmZvckVhY2goaW5nID0+IHtcbiAgICAgICAgICAgIGluZy5hdHRyaWJ1dGVzLnF1YW50aXR5ID0gcGFyc2VGbG9hdChpbmcuYXR0cmlidXRlcy5xdWFudGl0eSkudG9TdHJpbmcoKTtcbiAgICAgICAgICAgIHRoaXMubGlzdC5wdXNoKHRoaXMuZmIuZ3JvdXAoe1xuICAgICAgICAgICAgICBpZDogbmV3IEZvcm1Db250cm9sKGluZy5pZCAhPT0gJy0xJyA/IGluZy5pZCA6IG51bGwpLFxuICAgICAgICAgICAgICBhdHRyaWJ1dGVzOiB0aGlzLmZiLmdyb3VwKHtcbiAgICAgICAgICAgICAgICBxdWFudGl0eTogbmV3IEZvcm1Db250cm9sKGluZy5hdHRyaWJ1dGVzLnF1YW50aXR5LCBWYWxpZGF0b3JzLnJlcXVpcmVkKSxcbiAgICAgICAgICAgICAgICB1bml0OiBuZXcgRm9ybUNvbnRyb2woaW5nLmF0dHJpYnV0ZXMudW5pdCwgVmFsaWRhdG9ycy5yZXF1aXJlZCksXG4gICAgICAgICAgICAgICAgbmFtZTogbmV3IEZvcm1Db250cm9sKGluZy5hdHRyaWJ1dGVzLm5hbWUsIFZhbGlkYXRvcnMucmVxdWlyZWQpXG4gICAgICAgICAgICAgIH0pXG4gICAgICAgICAgICB9KSk7XG4gICAgICAgICAgICB0aGlzLnByZXZpb3VzUXVhbnRpdGllcy5wdXNoKGluZy5hdHRyaWJ1dGVzLnF1YW50aXR5KTtcbiAgICAgICAgICAgIHRoaXMubGlzdC5tYXJrQXNEaXJ0eSgpO1xuICAgICAgICAgIH0pO1xuICAgICAgICB9KTtcbiAgICAgIH0gZWxzZSB7XG4gICAgICAgIHZhbHVlcy5mb3JFYWNoKChlbGVtZW50OiBzdHJpbmcpID0+IHtcbiAgICAgICAgICBpZiAoZWxlbWVudC50cmltKCkpIHtcbiAgICAgICAgICAgIHRoaXMubGlzdC5wdXNoKHRoaXMuZmIuZ3JvdXAoe1xuICAgICAgICAgICAgICBhdHRyaWJ1dGVzOiB0aGlzLmZiLmdyb3VwKHtcbiAgICAgICAgICAgICAgICBkZXNjcmlwdGlvbjogbmV3IEZvcm1Db250cm9sKGVsZW1lbnQpXG4gICAgICAgICAgICAgIH0pXG4gICAgICAgICAgICB9KSk7XG4gICAgICAgICAgfVxuICAgICAgICB9KTtcbiAgICAgIH1cbiAgICAgIHRoaXMubGlzdC5tYXJrQXNEaXJ0eSgpO1xuICAgIH1cblxuICAgIHRoaXMuZmlsbExpc3RJbnB1dC5yZXNldCgpO1xuICAgIHRoaXMubW91c3NlRG93bk9uQnV0dG9uID0gZmFsc2U7XG4gIH1cblxuICBwdWJsaWMgY2hlY2tSb3coaW5kZXg6IG51bWJlcik6IHZvaWQge1xuICAgIGlmICghdGhpcy5saXN0LmNvbnRyb2xzW2luZGV4XS5nZXQoJ2F0dHJpYnV0ZXMnKS5nZXQoJ2Rlc2NyaXB0aW9uJykudmFsdWUgfHwgIXRoaXMubGlzdC5jb250cm9sc1tpbmRleF0uZ2V0KCdhdHRyaWJ1dGVzJykuZ2V0KCdkZXNjcmlwdGlvbicpLnZhbHVlLnRyaW0oKSkge1xuICAgICAgdGhpcy5kZWxldGUoaW5kZXgpO1xuICAgICAgdGhpcy5jZHIuZGV0ZWN0Q2hhbmdlcygpO1xuICAgIH1cbiAgfVxuXG4gIHVwZGF0ZVF1YW50aXR5VmFsdWUoZXZlbnQsIGluZGV4KSB7XG4gICAgaWYgKE51bWJlci5pc05hTigrZXZlbnQpKXtcbiAgICAgIHRoaXMubGlzdC5jb250cm9sc1tpbmRleF1bJ2NvbnRyb2xzJ11bJ2F0dHJpYnV0ZXMnXVsnY29udHJvbHMnXVsncXVhbnRpdHknXS52YWx1ZSA9IHRoaXMucHJldmlvdXNRdWFudGl0aWVzW2luZGV4XTtcbiAgICAgIHRoaXMuY2RyLmRldGVjdENoYW5nZXMoKTsgLy8gTmVjZXNzYXJ5IHRvIHVwZGF0ZSB0aGUgdmlldyB3aXRoIHRoZSBwcmV2aW91cyB2YWx1ZVxuICAgIH1cbiAgICBlbHNlIHtcbiAgICAgIHRoaXMucHJldmlvdXNRdWFudGl0aWVzW2luZGV4XSA9IGV2ZW50OyAvLyBObyB1cGRhdGUgb2YgdGhlIHZpZXcgc28gbm8gY2RyLmRldGVjdENoYW5nZXMoKVxuICAgIH1cbiAgfVxuXG4gIHB1YmxpYyBkcmFnKCkge1xuICAgIHRoaXMuaGlkZUVycm9ycyA9IHRydWU7XG4gICAgdGhpcy5jZHIuZGV0ZWN0Q2hhbmdlcygpO1xuICB9XG5cbiAgcHVibGljIGRyb3AoZXZlbnQ6IENka0RyYWdEcm9wPHN0cmluZ1tdPik6IHZvaWQge1xuICAgIG1vdmVJdGVtSW5BcnJheSh0aGlzLmxpc3QuY29udHJvbHMsIGV2ZW50LnByZXZpb3VzSW5kZXgsIGV2ZW50LmN1cnJlbnRJbmRleCk7XG4gICAgLy8gaWYgeW91IHJlb3JkZXJlZCB0aGUgbGlzdCBiZSBzdXJlIHRoZSBwcmV2aW91cyBxdWFudGl0aWVzIGNoYW5nZXMgYWNjb3JkaW5nbHlcbiAgICBpZiAodGhpcy5pbmdyZWRpZW50TW9kZSkge1xuICAgICAgdGhpcy5wcmV2aW91c1F1YW50aXRpZXMgPSBbXTtcbiAgICAgIHRoaXMubGlzdC5jb250cm9scy5mb3JFYWNoKGkgPT4ge1xuICAgICAgICB0aGlzLnByZXZpb3VzUXVhbnRpdGllcy5wdXNoKGlbJ2NvbnRyb2xzJ11bJ2F0dHJpYnV0ZXMnXVsnY29udHJvbHMnXVsncXVhbnRpdHknXS52YWx1ZSk7XG4gICAgICB9KTtcbiAgICB9XG4gICAgdGhpcy5saXN0Lm1hcmtBc0RpcnR5KCk7XG4gICAgdGhpcy5oaWRlRXJyb3JzID0gZmFsc2U7XG4gICAgdGhpcy5vcmRlckhhc0NoYW5nZWQuZW1pdCgpO1xuICB9XG5cbiAgaXNJbmdyZWRpZW50UmV2aWV3ZWQoaW5ncmVkaWVudE5hbWUpOiBPYnNlcnZhYmxlPGJvb2xlYW4+IHtcbiAgICByZXR1cm4gdGhpcy5pbmdyZWRpZW50U2VydmljZS5pc1Jldmlld2VkTmFtZShpbmdyZWRpZW50TmFtZS50b0xvd2VyQ2FzZSgpKTtcbiAgfVxuXG4gIGlzUXVhbnRpdHlSZXZpZXdlZCh1bml0TmFtZSk6IE9ic2VydmFibGU8Ym9vbGVhbj4ge1xuICAgIHJldHVybiB0aGlzLmluZ3JlZGllbnRTZXJ2aWNlLmlzUmV2aWV3ZWRVbml0KHVuaXROYW1lLnRvTG93ZXJDYXNlKCkpXG4gIH1cblxuICB0cmFja0J5SW5kZXgoaW5kZXg6IG51bWJlciwgZWw6IGFueSk6IHN0cmluZyB7XG4gICAgcmV0dXJuIGVsO1xuICB9XG59XG4iLCI8ZGl2IGNsYXNzPVwibWlhbS1saXN0LWlucHV0XCI+XG4gIDxkaXYgY2xhc3M9XCJtaWFtLWxpc3QtaW5wdXRfX2xpc3RcIiBbZm9ybUdyb3VwXT1cImxpc3RcIj5cbiAgICA8ZGl2IGNsYXNzPVwibWlhbS1saXN0LWlucHV0X19saXN0X19sYWJlbFwiPnt7bGFiZWx9fTwvZGl2PlxuICAgIDx1bCAqbmdJZj0nbGlzdC5jb250cm9scz8ubGVuZ3RoID4gMCBlbHNlIGhpbnRQbGFjZWhvbGRlcicgY2xhc3M9XCJtaWFtLWxpc3QtaW5wdXRfX2NvbnRhaW5lciBtLWRlZmF1bHQtY2FyZFwiIGNka0Ryb3BMaXN0IChjZGtEcm9wTGlzdERyb3BwZWQpPVwiZHJvcCgkZXZlbnQpXCI+XG4gICAgICA8bmctY29udGFpbmVyICpuZ0lmPSchaW5ncmVkaWVudE1vZGUgZWxzZSBpbmdyZWRpZW50Um93Jz5cbiAgICAgICAgPGxpICpuZ0Zvcj1cImxldCByb3cgb2YgbGlzdC5jb250cm9sczsgbGV0IGkgPSBpbmRleDsgdHJhY2tCeTogdHJhY2tCeUluZGV4XCIgIGNka0RyYWc+XG4gICAgICAgICAgPG5nLWNvbnRhaW5lciBbZm9ybUdyb3VwXT1cInJvd1wiPlxuICAgICAgICAgICAgPG5nLWNvbnRhaW5lciBbZm9ybUdyb3VwXT1cInJvdz8uZ2V0KCdhdHRyaWJ1dGVzJylcIj5cbiAgICAgICAgICAgICAgPGRpdiBjbGFzcz1cIm1pYW0tbGlzdC1pbnB1dF9fY29udGFpbmVyX19yb3cgIG0tZGVmYXVsdC1jYXJkXCI+XG4gICAgICAgICAgICAgIDxuZy1taWFtLWljb24gcHJpbWFyeUNvbG9yPVwidmFyKC0tbS1jb2xvci1ncmV5MDUpXCIgY2xhc3M9XCJtaWFtLWxpc3QtaW5wdXRfX3Jvd19fZ3JpcFwiICBbaWNvbk5hbWVdPVwiaWNvbi5HcmlwXCIgY2RrRHJhZ0hhbmRsZT48L25nLW1pYW0taWNvbj5cbiAgICAgICAgICAgICAgPHRleHRhcmVhICBjZGtUZXh0YXJlYUF1dG9zaXplPSd0cnVlJyAjYXV0b3NpemU9XCJjZGtUZXh0YXJlYUF1dG9zaXplXCIgKGJsdXIpPSdjaGVja1JvdyhpKSdcbiAgICAgICAgICAgICAgICBjZGtBdXRvc2l6ZU1pblJvd3M9XCIxXCIgY2RrQXV0b3NpemVNYXhSb3dzPVwiNTBcIiBjbGFzcz1cIm0taW5wdXRcIiBmb3JtQ29udHJvbE5hbWU9J2Rlc2NyaXB0aW9uJz48L3RleHRhcmVhPlxuICAgICAgICAgICAgICA8L2Rpdj5cbiAgICAgICAgICAgICAgPG5nLW1pYW0taWNvbiBjbGFzcz1cIm1pYW0tbGlzdC1pbnB1dF9fcm93X190cmFzaFwiIChjbGljayk9XCJkZWxldGUoaSlcIiBwcmltYXJ5Q29sb3I9XCJ2YXIoLS1tLWNvbG9yLWdyZXkwNSlcIiBbaWNvbk5hbWVdPVwiaWNvbi5UcmFzaFwiPjwvbmctbWlhbS1pY29uPlxuICAgICAgICAgICAgICA8ZGl2IGNsYXNzPVwibWlhbS1saXN0LWlucHV0X19yb3dfX3BsYWNlaG9sZGVyXCIgKmNka0RyYWdQbGFjZWhvbGRlcj48L2Rpdj5cbiAgICAgICAgICAgICAgPGRpdiBjbGFzcz1cIm1pYW0tbGlzdC1pbnB1dF9fcm93X19wcmV2aWV3IG0tZGVmYXVsdC1jYXJkXCIgKmNka0RyYWdQcmV2aWV3PlxuICAgICAgICAgICAgICAgIDxuZy1taWFtLWljb24gcHJpbWFyeUNvbG9yPVwidmFyKC0tbS1jb2xvci1ncmV5MDUpXCIgW2ljb25OYW1lXT1cImljb24uR3JpcFwiIGNka0RyYWdIYW5kbGU+PC9uZy1taWFtLWljb24+XG4gICAgICAgICAgICAgICAgPHNwYW4gY2xhc3M9XCJtaWFtLWxpc3QtaW5wdXRfX3ByZXZpZXdfX3RleHQgbS1ib2R5LXR5cG9cIj57e3Jvdz8uZ2V0KCdhdHRyaWJ1dGVzJyk/LmdldCgnZGVzY3JpcHRpb24nKS52YWx1ZX19PC9zcGFuPlxuICAgICAgICAgICAgICA8L2Rpdj5cbiAgICAgICAgICAgIDwvbmctY29udGFpbmVyPlxuICAgICAgICAgIDwvbmctY29udGFpbmVyPlxuICAgICAgICA8L2xpPlxuICAgICAgPC9uZy1jb250YWluZXI+XG4gICAgICA8bmctdGVtcGxhdGUgI2luZ3JlZGllbnRSb3c+XG4gICAgICAgICAgPGxpICpuZ0Zvcj1cImxldCByb3cgb2YgbGlzdC5jb250cm9sczsgbGV0IGkgPSBpbmRleDsgdHJhY2tCeTogdHJhY2tCeUluZGV4XCIgY2RrRHJhZz5cbiAgICAgICAgICAgIDxkaXYgY2xhc3M9XCJtaWFtLWxpc3QtaW5wdXRfX2NvbnRhaW5lcl9fcm93IG0tZGVmYXVsdC1jYXJkXCIgW2Zvcm1Hcm91cE5hbWVdPVwiaVwiPlxuICAgICAgICAgICAgICA8ZGl2IGNsYXNzPVwibWlhbS1saXN0LWlucHV0X19yb3dfX2xlZnRcIj5cbiAgICAgICAgICAgICAgICA8bmctbWlhbS1pY29uIHByaW1hcnlDb2xvcj1cInZhcigtLW0tY29sb3ItZ3JleTA1KVwiIGNsYXNzPVwibWlhbS1saXN0LWlucHV0X19yb3dfX2dyaXBcIlxuICAgICAgICAgICAgICAgIFtpY29uTmFtZV09XCJpY29uLkdyaXBcIiBjZGtEcmFnSGFuZGxlPjwvbmctbWlhbS1pY29uPlxuICAgICAgICAgICAgICA8L2Rpdj5cbiAgICAgICAgICAgICAgPGRpdiBjbGFzcz1cIm1pYW0tbGlzdC1pbnB1dF9fcm93X19yaWdodFwiPlxuICAgICAgICAgICAgICAgIDxpbnB1dCBjbGFzcz1cIm0taW5wdXRcIlxuICAgICAgICAgICAgICAgIFtuZ0NsYXNzXT1cIihpc0luZ3JlZGllbnRSZXZpZXdlZChyb3dbJ2NvbnRyb2xzJ11bJ2F0dHJpYnV0ZXMnXVsnY29udHJvbHMnXVsnbmFtZSddLnZhbHVlKSB8IGFzeW5jICkgPyAnYWxlcnQtc3VjY2VzcycgOiAnYWxlcnQtZGFuZ2VyJ1wiIFxuICAgICAgICAgICAgICAgIFtuZ01vZGVsXT1cInJvd1snY29udHJvbHMnXVsnYXR0cmlidXRlcyddWydjb250cm9scyddWyduYW1lJ10udmFsdWUgfCBjYXBpdGFsaXplRmlyc3RMZXR0ZXJcIlxuICAgICAgICAgICAgICAgIFtmb3JtQ29udHJvbF09XCJyb3dbJ2NvbnRyb2xzJ11bJ2F0dHJpYnV0ZXMnXVsnY29udHJvbHMnXVsnbmFtZSddXCIvPlxuICAgICAgICAgICAgICAgIDxpbnB1dCBjbGFzcz1cIm0taW5wdXRcIiBbbmdNb2RlbF09XCJyb3dbJ2NvbnRyb2xzJ11bJ2F0dHJpYnV0ZXMnXVsnY29udHJvbHMnXVsncXVhbnRpdHknXS52YWx1ZVwiIChuZ01vZGVsQ2hhbmdlKT1cInVwZGF0ZVF1YW50aXR5VmFsdWUoJGV2ZW50LCBpKVwiXG4gICAgICAgICAgICAgICAgICBbZm9ybUNvbnRyb2xdPVwicm93Wydjb250cm9scyddWydhdHRyaWJ1dGVzJ11bJ2NvbnRyb2xzJ11bJ3F1YW50aXR5J11cIiBtYXhTaXplPTQgIGF1dG9XaWR0aElucHV0IC8+XG4gICAgICAgICAgICAgICAgPGlucHV0IGNsYXNzPVwibS1pbnB1dFwiXG4gICAgICAgICAgICAgICAgW25nQ2xhc3NdPVwiKGlzUXVhbnRpdHlSZXZpZXdlZChyb3dbJ2NvbnRyb2xzJ11bJ2F0dHJpYnV0ZXMnXVsnY29udHJvbHMnXVsndW5pdCddLnZhbHVlKSB8IGFzeW5jICkgPyAnYWxlcnQtc3VjY2VzcycgOiAnYWxlcnQtZGFuZ2VyJ1wiIFxuICAgICAgICAgICAgICAgIFtmb3JtQ29udHJvbF09XCJyb3dbJ2NvbnRyb2xzJ11bJ2F0dHJpYnV0ZXMnXVsnY29udHJvbHMnXVsndW5pdCddXCIgIG1heFNpemU9OCBhdXRvV2lkdGhJbnB1dC8+XG4gICAgICAgICAgICAgIDwvZGl2PlxuICAgICAgICAgICAgPC9kaXY+XG4gICAgICAgICAgICA8bmctbWlhbS1pY29uIGNsYXNzPVwibWlhbS1saXN0LWlucHV0X19yb3dfX3RyYXNoXCIgKGNsaWNrKT1cImRlbGV0ZShpKVwiIHByaW1hcnlDb2xvcj1cInZhcigtLW0tY29sb3ItZ3JleTA1KVwiIFtpY29uTmFtZV09XCJpY29uLlRyYXNoXCI+PC9uZy1taWFtLWljb24+XG4gICAgICAgICAgICAgIDxkaXYgY2xhc3M9XCJtaWFtLWxpc3QtaW5wdXRfX3Jvd19fcGxhY2Vob2xkZXJcIiAqY2RrRHJhZ1BsYWNlaG9sZGVyPjwvZGl2PlxuICAgICAgICAgICAgICA8ZGl2IGNsYXNzPVwibWlhbS1saXN0LWlucHV0X19yb3dfX3ByZXZpZXcgbS1kZWZhdWx0LWNhcmRcIiAqY2RrRHJhZ1ByZXZpZXc+XG4gICAgICAgICAgICAgICAgPG5nLW1pYW0taWNvbiBwcmltYXJ5Q29sb3I9XCJ2YXIoLS1tLWNvbG9yLWdyZXktdGV4dC1kYXJrKVwiIFxuICAgICAgICAgICAgICAgICAgW2ljb25OYW1lXT1cImljb24uR3JpcFwiIGNka0RyYWdIYW5kbGU+PC9uZy1taWFtLWljb24+XG4gICAgICAgICAgICAgICAgPHNwYW4gY2xhc3M9XCJtLWJvZHktdHlwb1wiPnt7cm93Py5nZXQoJ2F0dHJpYnV0ZXMnKT8uZ2V0KCduYW1lJykudmFsdWUgfCBjYXBpdGFsaXplRmlyc3RMZXR0ZXJ9fTwvc3Bhbj5cbiAgICAgICAgICAgICAgICA8c3BhbiBjbGFzcz1cIm0tYm9keS10eXBvXCI+e3tyb3c/LmdldCgnYXR0cmlidXRlcycpPy5nZXQoJ3F1YW50aXR5JykudmFsdWV9fTwvc3Bhbj5cbiAgICAgICAgICAgICAgICA8c3BhbiBjbGFzcz1cIm0tYm9keS10eXBvXCI+e3tyb3c/LmdldCgnYXR0cmlidXRlcycpPy5nZXQoJ3VuaXQnKS52YWx1ZX19PC9zcGFuPlxuICAgICAgICAgICAgPC9kaXY+XG4gICAgICAgICAgICA8IS0tIGluZm9ybWF0aW9uIG1lc3NhZ2UgLS0+XG4gICAgICAgICAgICA8IS0tIDxzcGFuICpuZ0lmPVwicm93Py5nZXQoJ2F0dHJpYnV0ZXMnKVsnaXNOb3RSZXZpZXdlZEluZ3JlZGllbnROYW1lJ10gJiYgIXJvdy5pbnZhbGlkICYmICFoaWRlRXJyb3JzXCJcbiAgICAgICAgICAgICAgY2xhc3M9XCJoaW50IHdhcm5uaW5nXCI+Tm91cyBuZSBjb25uYWlzc29ucyBwYXMgZW5jb3JlIGNldCBpbmdyw6lkaWVudDwvc3Bhbj5cbiAgICAgICAgICAgIDxzcGFuICpuZ0lmPVwicm93LmludmFsaWQgJiYgIWhpZGVFcnJvcnNcIiBjbGFzcz1cImhpbnQgZXJyb3JcIj5MZSBub20gZGUgbCdpbmdyw6lkaWVudCBuZSBwZXV0IHBhcyDDqnRyZVxuICAgICAgICAgICAgICB2aWRlPC9zcGFuPiAtLT5cbiAgICAgICAgICA8L2xpPlxuICAgICAgPC9uZy10ZW1wbGF0ZT5cbiAgICA8L3VsPlxuICA8L2Rpdj5cbiAgPG5nLXRlbXBsYXRlICNoaW50UGxhY2Vob2xkZXI+XG4gICAgPGRpdiBjbGFzcz1cIm1pYW0tbGlzdC1pbnB1dF9fcGxhY2Vob2xkZXIgbWlhbS1saXN0LWlucHV0X19jb250YWluZXIgbS1kZWZhdWx0LWNhcmRcIj5cbiAgICAgIDxuZy1taWFtLWljb24gcHJpbWFyeUNvbG9yPVwidmFyKC0tbS1jb2xvci1ncmV5LXRleHQtZGFyaylcIiBbd2lkdGhdPVwiMTUyXCIgW2hlaWdodF09XCIxNTdcIiBbaWNvbk5hbWVdPVwiaWNvbi5FbXB0eVwiPlxuICAgICAgPC9uZy1taWFtLWljb24+XG4gICAgICA8c3BhbiBjbGFzcz1cIm1pYW0tbGlzdC1pbnB1dF9fcGxhY2Vob2xkZXJfX2hpbnQgbS1ib2R5LXR5cG9cIj5PdXBzLi4uIGPigJllc3QgdmlkZSwgY29tbWVuY2V6IMOgIGFqb3V0ZXIgZGVzIHt7IGhpbnQgfX0gITwvc3Bhbj5cbiAgICA8L2Rpdj5cbiAgPC9uZy10ZW1wbGF0ZT5cbiAgPGRpdiBjbGFzcz1cIm1pYW0tbGlzdC1pbnB1dF9fYWN0aW9uc1wiPlxuICAgIDx0ZXh0YXJlYSBtYXRJbnB1dCBjbGFzcz1cIm0taW5wdXRcIiBjZGtUZXh0YXJlYUF1dG9zaXplICBjZGtBdXRvc2l6ZU1pblJvd3M9XCI0XCJcbiAgICAgIGNka0F1dG9zaXplTWF4Um93cz1cIjRcIiAoa2V5ZG93bi5lbnRlcik9J21vdXNzZURvd25PbkJ1dHRvbiA9IHRydWUnIFxuICAgICAgW2Zvcm1Db250cm9sXT1cImZpbGxMaXN0SW5wdXRcIiBhdHRyLnBsYWNlaG9sZGVyPVwie3twbGFjZWhvbGRlcn19XCI+PC90ZXh0YXJlYT5cbiAgICA8YnV0dG9uIGNsYXNzPVwibS1idXR0b24tcHJpbWFyeVwiIChtb3VzZWRvd24pPSdtb3Vzc2VEb3duT25CdXR0b24gPSB0cnVlJyAobW91c2V1cCk9XCJzdWJtaXQoKVwiPlxuICAgICAgQWpvdXRlciA8c3BhbiBjbGFzcz1cIm1pYW0tbGlzdC1pbnB1dF9faW5zdHJ1Y3Rpb25zX19kaXJlY3Rpb25cIj4+Pjwvc3Bhbj5cbiAgICA8L2J1dHRvbj5cbiAgICA8ZGl2ICpuZ0lmPVwiaW5zdHJ1Y3Rpb25zXCIgY2xhc3M9XCJtaWFtLWxpc3QtaW5wdXRfX2FjdGlvbnNfX2luc3RydWN0aW9uc1wiPnt7aW5zdHJ1Y3Rpb25zfX08L2Rpdj5cbiAgPC9kaXY+XG48L2Rpdj4iXX0=
|
|
416
|
+
//# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoibGlzdC1pbnB1dC5jb21wb25lbnQuanMiLCJzb3VyY2VSb290IjoiL2J1aWxkcy9taWFtL25nLW1pYW0tc2RrL3Byb2plY3RzL25nLW1pYW0vc3JjLyIsInNvdXJjZXMiOlsibGliL19jb21wb25lbnRzL2xpc3QtaW5wdXQvbGlzdC1pbnB1dC5jb21wb25lbnQudHMiLCJsaWIvX2NvbXBvbmVudHMvbGlzdC1pbnB1dC9saXN0LWlucHV0LmNvbXBvbmVudC5odG1sIl0sIm5hbWVzIjpbXSwibWFwcGluZ3MiOiJBQUFBLE9BQU8sRUFBRSxpQkFBaUIsRUFBRSxTQUFTLEVBQUUsWUFBWSxFQUFFLEtBQUssRUFBRSxNQUFNLEdBQUUsTUFBTSxlQUFlLENBQUM7QUFDMUYsT0FBTyxFQUFlLGVBQWUsRUFBRSxNQUFNLHdCQUF3QixDQUFDO0FBQ3RFLE9BQU8sRUFBRSxTQUFTLEVBQUUsV0FBVyxFQUFFLFdBQVcsRUFBRSxVQUFVLEVBQUUsTUFBTSxnQkFBZ0IsQ0FBQztBQUNqRixPQUFPLEVBQUUsSUFBSSxFQUFFLE1BQU0sd0JBQXdCLENBQUM7QUFDOUMsT0FBTyxFQUFFLElBQUksRUFBRSxNQUFNLGdCQUFnQixDQUFDO0FBQ3RDLE9BQU8sRUFBRSxrQkFBa0IsRUFBRSxNQUFNLGlCQUFpQixDQUFDOzs7Ozs7Ozs7OztJQ1N2QywwQkFBeUU7OztJQUN6RSwrQkFDRTtJQUFBLG1DQUF1RztJQUN2RyxnQ0FBeUQ7SUFBQSxZQUFvRDtJQUFBLGlCQUFPO0lBQ3RILGlCQUFNOzs7OztJQUYrQyxlQUFzQjtJQUF0Qiw0Q0FBc0I7SUFDaEIsZUFBb0Q7SUFBcEQsb0lBQW9EOzs7O0lBWnJILDhCQUNFO0lBQUEsaUNBQ0U7SUFBQSxpQ0FDRTtJQUFBLCtCQUNBO0lBQUEsbUNBQTJJO0lBQzNJLHdDQUMwRztJQURwQyx1T0FBb0I7SUFDSyxpQkFBVztJQUMxRyxpQkFBTTtJQUNOLHdDQUFrSjtJQUFoRywyT0FBbUI7SUFBOEQsaUJBQWU7SUFDbEosNkZBQW1FO0lBQ25FLDZGQUNF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QUFBLGdDQUF1RDtRQUFBLG1CQUFFO1FBQUEsaUJBQU87UUFDMUUsaUJBQVM7UUFDVCxxRUFBeUU7UUFDM0UsaUJBQU07UUFDUixpQkFBTTs7O1FBbEcrQixlQUFrQjtRQUFsQixvQ0FBa0I7UUFDVCxlQUFTO1FBQVQsK0JBQVM7UUFDL0MsZUFBc0Q7UUFBdEQsd0ZBQXNELGlCQUFBO1FBMEZ4RCxlQUE2QjtRQUE3QiwrQ0FBNkI7UUFBQyw4Q0FBa0M7UUFJN0QsZUFBb0I7UUFBcEIsdUNBQW9COztrRERuRmhCLGtCQUFrQjtjQUw5QixTQUFTO2VBQUM7Z0JBQ1QsUUFBUSxFQUFFLG9CQUFvQjtnQkFDOUIsV0FBVyxFQUFFLDZCQUE2QjtnQkFDMUMsU0FBUyxFQUFFLENBQUMsNkJBQTZCLENBQUM7YUFDM0M7K0hBR1UsSUFBSTtrQkFBWixLQUFLO1lBQ0csV0FBVztrQkFBbkIsS0FBSztZQUNHLEtBQUs7a0JBQWIsS0FBSztZQUNHLFlBQVk7a0JBQXBCLEtBQUs7WUFDRyxjQUFjO2tCQUF0QixLQUFLO1lBQ0csSUFBSTtrQkFBWixLQUFLO1lBQ0csbUJBQW1CO2tCQUEzQixLQUFLO1lBRUksUUFBUTtrQkFBakIsTUFBTTtZQUNHLGVBQWU7a0JBQXhCLE1BQU0iLCJzb3VyY2VzQ29udGVudCI6WyJpbXBvcnQgeyBDaGFuZ2VEZXRlY3RvclJlZiwgQ29tcG9uZW50LCBFdmVudEVtaXR0ZXIsIElucHV0LCBPdXRwdXQsfSBmcm9tICdAYW5ndWxhci9jb3JlJztcbmltcG9ydCB7IENka0RyYWdEcm9wLCBtb3ZlSXRlbUluQXJyYXkgfSBmcm9tICdAYW5ndWxhci9jZGsvZHJhZy1kcm9wJztcbmltcG9ydCB7IEZvcm1BcnJheSwgRm9ybUJ1aWxkZXIsIEZvcm1Db250cm9sLCBWYWxpZGF0b3JzIH0gZnJvbSAnQGFuZ3VsYXIvZm9ybXMnO1xuaW1wb3J0IHsgSWNvbiB9IGZyb20gJy4uLy4uL190eXBlcy9pY29uLmVudW0nO1xuaW1wb3J0IHsgdGFrZSB9IGZyb20gJ3J4anMvb3BlcmF0b3JzJztcbmltcG9ydCB7IEluZ3JlZGllbnRzU2VydmljZSB9IGZyb20gJy4uLy4uL19zZXJ2aWNlcyc7XG5pbXBvcnQgeyBJbmdyZWRpZW50IH0gZnJvbSAnLi4vLi4vX21vZGVscy9pbmdyZWRpZW50JztcbmltcG9ydCB7IE9ic2VydmFibGUgfSBmcm9tICdyeGpzJztcblxuQENvbXBvbmVudCh7XG4gIHNlbGVjdG9yOiAnbmctbWlhbS1saXN0LWlucHV0JyxcbiAgdGVtcGxhdGVVcmw6ICcuL2xpc3QtaW5wdXQuY29tcG9uZW50Lmh0bWwnLFxuICBzdHlsZVVybHM6IFsnLi9saXN0LWlucHV0LmNvbXBvbmVudC5zY3NzJ10sXG59KVxuZXhwb3J0IGNsYXNzIExpc3RJbnB1dENvbXBvbmVudCB7XG5cbiAgQElucHV0KCkgaGludDogc3RyaW5nO1xuICBASW5wdXQoKSBwbGFjZWhvbGRlciA9ICcnO1xuICBASW5wdXQoKSBsYWJlbDogc3RyaW5nO1xuICBASW5wdXQoKSBpbnN0cnVjdGlvbnM6IHN0cmluZztcbiAgQElucHV0KCkgaW5ncmVkaWVudE1vZGU6IGJvb2xlYW47XG4gIEBJbnB1dCgpIGxpc3Q6IEZvcm1BcnJheSA9IG5ldyBGb3JtQXJyYXkoW10pO1xuICBASW5wdXQoKSBpbmdyZWRpZW50c1BpY3R1cmVzOiB7IHZpc2libGU6IGJvb2xlYW4sIGVkaXRhYmxlOiBib29sZWFuIH0gPSB7IHZpc2libGU6IGZhbHNlLCBlZGl0YWJsZTogZmFsc2UgfTtcblxuICBAT3V0cHV0KCkgZGVsZXRlSWQ6IEV2ZW50RW1pdHRlcjxzdHJpbmc+O1xuICBAT3V0cHV0KCkgb3JkZXJIYXNDaGFuZ2VkOiBFdmVudEVtaXR0ZXI8dm9pZD47XG5cbiAgaWNvbiA9IEljb247XG4gIGhpZGVFcnJvcnM6IGJvb2xlYW47XG4gIGZpbGxMaXN0SW5wdXQ6IEZvcm1Db250cm9sO1xuICBtb3Vzc2VEb3duT25CdXR0b246IGJvb2xlYW47XG4gIHByaXZhdGUgcHJldmlvdXNRdWFudGl0aWVzOiBzdHJpbmdbXTtcblxuICBjb25zdHJ1Y3Rvcihwcml2YXRlIGluZ3JlZGllbnRTZXJ2aWNlOiBJbmdyZWRpZW50c1NlcnZpY2UsIHByaXZhdGUgZmI6IEZvcm1CdWlsZGVyLCBwcml2YXRlIGNkcjogQ2hhbmdlRGV0ZWN0b3JSZWYpIHtcbiAgICB0aGlzLmZpbGxMaXN0SW5wdXQgPSBuZXcgRm9ybUNvbnRyb2woJycpO1xuICAgIHRoaXMuZGVsZXRlSWQgPSBuZXcgRXZlbnRFbWl0dGVyKCk7XG4gICAgdGhpcy5vcmRlckhhc0NoYW5nZWQgID0gbmV3IEV2ZW50RW1pdHRlcigpO1xuICAgIHRoaXMucHJldmlvdXNRdWFudGl0aWVzID0gW107XG4gIH1cblxuICBkZWxldGUoaW5kZXg6IG51bWJlcik6IHZvaWQge1xuICAgIGlmICh0aGlzLmxpc3QuY29udHJvbHNbaW5kZXhdW2Bjb250cm9sc2BdLmlkPy52YWx1ZSkge1xuICAgICAgdGhpcy5kZWxldGVJZC5lbWl0KHRoaXMubGlzdC5jb250cm9sc1tpbmRleF1bYGNvbnRyb2xzYF0uaWQudmFsdWUpO1xuICAgIH1cbiAgICB0aGlzLmxpc3QucmVtb3ZlQXQoaW5kZXgpO1xuICAgIHRoaXMubGlzdC5tYXJrQXNEaXJ0eSgpO1xuICAgIHRoaXMuY2RyLmRldGVjdENoYW5nZXMoKTtcbiAgfVxuXG4gIHN1Ym1pdCgpOiB2b2lkIHtcbiAgICBjb25zdCB2YWx1ZXMgPSB0aGlzLmZpbGxMaXN0SW5wdXQudmFsdWU/LnRyaW1FbmQoKS5zcGxpdCgnXFxuJyk7XG5cbiAgICBpZiAodmFsdWVzICYmIHZhbHVlcy5sZW5ndGggPiAwKSB7XG4gICAgICBpZiAodGhpcy5pbmdyZWRpZW50TW9kZSkge1xuICAgICAgICB0aGlzLmluZ3JlZGllbnRTZXJ2aWNlLmZvcm1hdEluZ3JlZGllbnRzKHZhbHVlcykucGlwZSh0YWtlKDEpKS5zdWJzY3JpYmUoKGluZ3JlZGllbnRzOiBJbmdyZWRpZW50W10pID0+IHtcbiAgICAgICAgICBpbmdyZWRpZW50cy5mb3JFYWNoKGluZyA9PiB7XG4gICAgICAgICAgICBpbmcuYXR0cmlidXRlcy5xdWFudGl0eSA9IHBhcnNlRmxvYXQoaW5nLmF0dHJpYnV0ZXMucXVhbnRpdHkpLnRvU3RyaW5nKCk7XG4gICAgICAgICAgICB0aGlzLmxpc3QucHVzaCh0aGlzLmZiLmdyb3VwKHtcbiAgICAgICAgICAgICAgaWQ6IG5ldyBGb3JtQ29udHJvbChpbmcuaWQgIT09ICctMScgPyBpbmcuaWQgOiBudWxsKSxcbiAgICAgICAgICAgICAgYXR0cmlidXRlczogdGhpcy5mYi5ncm91cCh7XG4gICAgICAgICAgICAgICAgcXVhbnRpdHk6IG5ldyBGb3JtQ29udHJvbChpbmcuYXR0cmlidXRlcy5xdWFudGl0eSwgVmFsaWRhdG9ycy5yZXF1aXJlZCksXG4gICAgICAgICAgICAgICAgdW5pdDogbmV3IEZvcm1Db250cm9sKGluZy5hdHRyaWJ1dGVzLnVuaXQsIFZhbGlkYXRvcnMucmVxdWlyZWQpLFxuICAgICAgICAgICAgICAgIG5hbWU6IG5ldyBGb3JtQ29udHJvbChpbmcuYXR0cmlidXRlcy5uYW1lLCBWYWxpZGF0b3JzLnJlcXVpcmVkKVxuICAgICAgICAgICAgICB9KVxuICAgICAgICAgICAgfSkpO1xuICAgICAgICAgICAgdGhpcy5wcmV2aW91c1F1YW50aXRpZXMucHVzaChpbmcuYXR0cmlidXRlcy5xdWFudGl0eSk7XG4gICAgICAgICAgICB0aGlzLmxpc3QubWFya0FzRGlydHkoKTtcbiAgICAgICAgICB9KTtcbiAgICAgICAgfSk7XG4gICAgICB9IGVsc2Uge1xuICAgICAgICB2YWx1ZXMuZm9yRWFjaCgoZWxlbWVudDogc3RyaW5nKSA9PiB7XG4gICAgICAgICAgaWYgKGVsZW1lbnQudHJpbSgpKSB7XG4gICAgICAgICAgICB0aGlzLmxpc3QucHVzaCh0aGlzLmZiLmdyb3VwKHtcbiAgICAgICAgICAgICAgYXR0cmlidXRlczogdGhpcy5mYi5ncm91cCh7XG4gICAgICAgICAgICAgICAgZGVzY3JpcHRpb246IG5ldyBGb3JtQ29udHJvbChlbGVtZW50KVxuICAgICAgICAgICAgICB9KVxuICAgICAgICAgICAgfSkpO1xuICAgICAgICAgIH1cbiAgICAgICAgfSk7XG4gICAgICB9XG4gICAgICB0aGlzLmxpc3QubWFya0FzRGlydHkoKTtcbiAgICB9XG5cbiAgICB0aGlzLmZpbGxMaXN0SW5wdXQucmVzZXQoKTtcbiAgICB0aGlzLm1vdXNzZURvd25PbkJ1dHRvbiA9IGZhbHNlO1xuICB9XG5cbiAgY2hlY2tSb3coaW5kZXg6IG51bWJlcik6IHZvaWQge1xuICAgIGlmICghdGhpcy5saXN0LmNvbnRyb2xzW2luZGV4XS5nZXQoJ2F0dHJpYnV0ZXMnKS5nZXQoJ2Rlc2NyaXB0aW9uJykudmFsdWUgfHwgIXRoaXMubGlzdC5jb250cm9sc1tpbmRleF0uZ2V0KCdhdHRyaWJ1dGVzJykuZ2V0KCdkZXNjcmlwdGlvbicpLnZhbHVlLnRyaW0oKSkge1xuICAgICAgdGhpcy5kZWxldGUoaW5kZXgpO1xuICAgICAgdGhpcy5jZHIuZGV0ZWN0Q2hhbmdlcygpO1xuICAgIH1cbiAgfVxuXG4gIHVwZGF0ZVF1YW50aXR5VmFsdWUoZXZlbnQsIGluZGV4KSB7XG4gICAgaWYgKE51bWJlci5pc05hTigrZXZlbnQpKXtcbiAgICAgIHRoaXMubGlzdC5jb250cm9sc1tpbmRleF1bJ2NvbnRyb2xzJ11bJ2F0dHJpYnV0ZXMnXVsnY29udHJvbHMnXVsncXVhbnRpdHknXS52YWx1ZSA9IHRoaXMucHJldmlvdXNRdWFudGl0aWVzW2luZGV4XTtcbiAgICAgIHRoaXMuY2RyLmRldGVjdENoYW5nZXMoKTsgLy8gTmVjZXNzYXJ5IHRvIHVwZGF0ZSB0aGUgdmlldyB3aXRoIHRoZSBwcmV2aW91cyB2YWx1ZVxuICAgIH1cbiAgICBlbHNlIHtcbiAgICAgIHRoaXMucHJldmlvdXNRdWFudGl0aWVzW2luZGV4XSA9IGV2ZW50OyAvLyBObyB1cGRhdGUgb2YgdGhlIHZpZXcgc28gbm8gY2RyLmRldGVjdENoYW5nZXMoKVxuICAgIH1cbiAgfVxuXG4gIGRyYWcoKSB7XG4gICAgdGhpcy5oaWRlRXJyb3JzID0gdHJ1ZTtcbiAgICB0aGlzLmNkci5kZXRlY3RDaGFuZ2VzKCk7XG4gIH1cblxuICBkcm9wKGV2ZW50OiBDZGtEcmFnRHJvcDxzdHJpbmdbXT4pOiB2b2lkIHtcbiAgICBtb3ZlSXRlbUluQXJyYXkodGhpcy5saXN0LmNvbnRyb2xzLCBldmVudC5wcmV2aW91c0luZGV4LCBldmVudC5jdXJyZW50SW5kZXgpO1xuICAgIC8vIGlmIHlvdSByZW9yZGVyZWQgdGhlIGxpc3QgYmUgc3VyZSB0aGUgcHJldmlvdXMgcXVhbnRpdGllcyBjaGFuZ2VzIGFjY29yZGluZ2x5XG4gICAgaWYgKHRoaXMuaW5ncmVkaWVudE1vZGUpIHtcbiAgICAgIHRoaXMucHJldmlvdXNRdWFudGl0aWVzID0gW107XG4gICAgICB0aGlzLmxpc3QuY29udHJvbHMuZm9yRWFjaChpID0+IHtcbiAgICAgICAgdGhpcy5wcmV2aW91c1F1YW50aXRpZXMucHVzaChpWydjb250cm9scyddWydhdHRyaWJ1dGVzJ11bJ2NvbnRyb2xzJ11bJ3F1YW50aXR5J10udmFsdWUpO1xuICAgICAgfSk7XG4gICAgfVxuICAgIHRoaXMubGlzdC5tYXJrQXNEaXJ0eSgpO1xuICAgIHRoaXMuaGlkZUVycm9ycyA9IGZhbHNlO1xuICAgIHRoaXMub3JkZXJIYXNDaGFuZ2VkLmVtaXQoKTtcbiAgfVxuXG4gIGlzSW5ncmVkaWVudFJldmlld2VkKGluZ3JlZGllbnROYW1lKTogT2JzZXJ2YWJsZTxib29sZWFuPiB7XG4gICAgcmV0dXJuIHRoaXMuaW5ncmVkaWVudFNlcnZpY2UuaXNSZXZpZXdlZE5hbWUoaW5ncmVkaWVudE5hbWUudG9Mb3dlckNhc2UoKSk7XG4gIH1cblxuICBpc1F1YW50aXR5UmV2aWV3ZWQodW5pdE5hbWUpOiBPYnNlcnZhYmxlPGJvb2xlYW4+IHtcbiAgICByZXR1cm4gdGhpcy5pbmdyZWRpZW50U2VydmljZS5pc1Jldmlld2VkVW5pdCh1bml0TmFtZS50b0xvd2VyQ2FzZSgpKTtcbiAgfVxuXG4gIHRyYWNrQnlJbmRleChpbmRleDogbnVtYmVyLCBlbDogYW55KTogc3RyaW5nIHtcbiAgICByZXR1cm4gZWw7XG4gIH1cblxuICAvLyBUT0RPOiBzaXplIGNoZWNrXG4gIHVwbG9hZEluZ3JlZGllbnRQaWN0dXJlKGZpbGVzLCBpbmdGb3JtKTogdm9pZCB7XG4gICAgaWYgKCFmaWxlc1swXSB8fCAhaW5nRm9ybSkgeyByZXR1cm47IH1cblxuICAgIGNvbnN0IHJlYWRlciA9IG5ldyBGaWxlUmVhZGVyKCk7XG4gICAgcmVhZGVyLnJlYWRBc0RhdGFVUkwoZmlsZXNbMF0pO1xuICAgIHJlYWRlci5vbmxvYWQgPSAoKSA9PiB7XG4gICAgICBpbmdGb3JtLnBhdGNoVmFsdWUocmVhZGVyLnJlc3VsdCk7XG4gICAgICB0aGlzLmxpc3QubWFya0FzRGlydHkoKTtcbiAgICAgIHRoaXMuY2RyLmRldGVjdENoYW5nZXMoKTtcbiAgICB9O1xuICB9XG59XG4iLCI8ZGl2IGNsYXNzPVwibWlhbS1saXN0LWlucHV0XCI+XG4gIDxkaXYgY2xhc3M9XCJtaWFtLWxpc3QtaW5wdXRfX2xpc3RcIiBbZm9ybUdyb3VwXT1cImxpc3RcIj5cbiAgICA8ZGl2IGNsYXNzPVwibWlhbS1saXN0LWlucHV0X19saXN0X19sYWJlbFwiPnt7bGFiZWx9fTwvZGl2PlxuICAgIDx1bCAqbmdJZj0nbGlzdC5jb250cm9scz8ubGVuZ3RoID4gMCBlbHNlIGhpbnRQbGFjZWhvbGRlcicgY2xhc3M9XCJtaWFtLWxpc3QtaW5wdXRfX2NvbnRhaW5lciBtLWRlZmF1bHQtY2FyZFwiIGNka0Ryb3BMaXN0IChjZGtEcm9wTGlzdERyb3BwZWQpPVwiZHJvcCgkZXZlbnQpXCI+XG4gICAgICA8bmctY29udGFpbmVyICpuZ0lmPSchaW5ncmVkaWVudE1vZGUgZWxzZSBpbmdyZWRpZW50Um93Jz5cbiAgICAgICAgPGxpICpuZ0Zvcj1cImxldCByb3cgb2YgbGlzdC5jb250cm9sczsgbGV0IGkgPSBpbmRleDsgdHJhY2tCeTogdHJhY2tCeUluZGV4XCIgIGNka0RyYWc+XG4gICAgICAgICAgPG5nLWNvbnRhaW5lciBbZm9ybUdyb3VwXT1cInJvd1wiPlxuICAgICAgICAgICAgPG5nLWNvbnRhaW5lciBbZm9ybUdyb3VwXT1cInJvdz8uZ2V0KCdhdHRyaWJ1dGVzJylcIj5cbiAgICAgICAgICAgICAgPGRpdiBjbGFzcz1cIm1pYW0tbGlzdC1pbnB1dF9fY29udGFpbmVyX19yb3cgIG0tZGVmYXVsdC1jYXJkXCI+XG4gICAgICAgICAgICAgIDxuZy1taWFtLWljb24gcHJpbWFyeUNvbG9yPVwidmFyKC0tbS1jb2xvci1ncmV5MDUpXCIgY2xhc3M9XCJtaWFtLWxpc3QtaW5wdXRfX3Jvd19fZ3JpcFwiICBbaWNvbk5hbWVdPVwiaWNvbi5HcmlwXCIgY2RrRHJhZ0hhbmRsZT48L25nLW1pYW0taWNvbj5cbiAgICAgICAgICAgICAgPHRleHRhcmVhICBjZGtUZXh0YXJlYUF1dG9zaXplPSd0cnVlJyAjYXV0b3NpemU9XCJjZGtUZXh0YXJlYUF1dG9zaXplXCIgKGJsdXIpPSdjaGVja1JvdyhpKSdcbiAgICAgICAgICAgICAgICBjZGtBdXRvc2l6ZU1pblJvd3M9XCIxXCIgY2RrQXV0b3NpemVNYXhSb3dzPVwiNTBcIiBjbGFzcz1cIm0taW5wdXRcIiBmb3JtQ29udHJvbE5hbWU9J2Rlc2NyaXB0aW9uJz48L3RleHRhcmVhPlxuICAgICAgICAgICAgICA8L2Rpdj5cbiAgICAgICAgICAgICAgPG5nLW1pYW0taWNvbiBjbGFzcz1cIm1pYW0tbGlzdC1pbnB1dF9fcm93X190cmFzaFwiIChjbGljayk9XCJkZWxldGUoaSlcIiBwcmltYXJ5Q29sb3I9XCJ2YXIoLS1tLWNvbG9yLWdyZXkwNSlcIiBbaWNvbk5hbWVdPVwiaWNvbi5UcmFzaFwiPjwvbmctbWlhbS1pY29uPlxuICAgICAgICAgICAgICA8ZGl2IGNsYXNzPVwibWlhbS1saXN0LWlucHV0X19yb3dfX3BsYWNlaG9sZGVyXCIgKmNka0RyYWdQbGFjZWhvbGRlcj48L2Rpdj5cbiAgICAgICAgICAgICAgPGRpdiBjbGFzcz1cIm1pYW0tbGlzdC1pbnB1dF9fcm93X19wcmV2aWV3IG0tZGVmYXVsdC1jYXJkXCIgKmNka0RyYWdQcmV2aWV3PlxuICAgICAgICAgICAgICAgIDxuZy1taWFtLWljb24gcHJpbWFyeUNvbG9yPVwidmFyKC0tbS1jb2xvci1ncmV5MDUpXCIgW2ljb25OYW1lXT1cImljb24uR3JpcFwiIGNka0RyYWdIYW5kbGU+PC9uZy1taWFtLWljb24+XG4gICAgICAgICAgICAgICAgPHNwYW4gY2xhc3M9XCJtaWFtLWxpc3QtaW5wdXRfX3ByZXZpZXdfX3RleHQgbS1ib2R5LXR5cG9cIj57e3Jvdz8uZ2V0KCdhdHRyaWJ1dGVzJyk/LmdldCgnZGVzY3JpcHRpb24nKS52YWx1ZX19PC9zcGFuPlxuICAgICAgICAgICAgICA8L2Rpdj5cbiAgICAgICAgICAgIDwvbmctY29udGFpbmVyPlxuICAgICAgICAgIDwvbmctY29udGFpbmVyPlxuICAgICAgICA8L2xpPlxuICAgICAgPC9uZy1jb250YWluZXI+XG4gICAgICA8bmctdGVtcGxhdGUgI2luZ3JlZGllbnRSb3c+XG4gICAgICAgICAgPGxpICpuZ0Zvcj1cImxldCByb3cgb2YgbGlzdC5jb250cm9sczsgbGV0IGkgPSBpbmRleDsgdHJhY2tCeTogdHJhY2tCeUluZGV4XCIgY2RrRHJhZz5cbiAgICAgICAgICAgIDxkaXYgY2xhc3M9XCJtaWFtLWxpc3QtaW5wdXRfX2NvbnRhaW5lcl9fcm93IG0tZGVmYXVsdC1jYXJkXCIgW2Zvcm1Hcm91cE5hbWVdPVwiaVwiPlxuICAgICAgICAgICAgICA8ZGl2IGNsYXNzPVwibWlhbS1saXN0LWlucHV0X19yb3dfX2xlZnRcIj5cbiAgICAgICAgICAgICAgICA8bmctbWlhbS1pY29uIHByaW1hcnlDb2xvcj1cInZhcigtLW0tY29sb3ItZ3JleTA1KVwiIGNsYXNzPVwibWlhbS1saXN0LWlucHV0X19yb3dfX2dyaXBcIlxuICAgICAgICAgICAgICAgIFtpY29uTmFtZV09XCJpY29uLkdyaXBcIiBjZGtEcmFnSGFuZGxlPjwvbmctbWlhbS1pY29uPlxuICAgICAgICAgICAgICA8L2Rpdj5cbiAgICAgICAgICAgICAgPGRpdiBjbGFzcz1cIm1pYW0tbGlzdC1pbnB1dF9fcm93X19yaWdodFwiPlxuICAgICAgICAgICAgICAgIDxpbnB1dCBjbGFzcz1cIm0taW5wdXRcIlxuICAgICAgICAgICAgICAgIFtuZ0NsYXNzXT1cIihpc0luZ3JlZGllbnRSZXZpZXdlZChyb3dbJ2NvbnRyb2xzJ11bJ2F0dHJpYnV0ZXMnXVsnY29udHJvbHMnXVsnbmFtZSddLnZhbHVlKSB8IGFzeW5jICkgPyAnYWxlcnQtc3VjY2VzcycgOiAnYWxlcnQtZGFuZ2VyJ1wiIFxuICAgICAgICAgICAgICAgIFtuZ01vZGVsXT1cInJvd1snY29udHJvbHMnXVsnYXR0cmlidXRlcyddWydjb250cm9scyddWyduYW1lJ10udmFsdWUgfCBjYXBpdGFsaXplRmlyc3RMZXR0ZXJcIlxuICAgICAgICAgICAgICAgIFtmb3JtQ29udHJvbF09XCJyb3dbJ2NvbnRyb2xzJ11bJ2F0dHJpYnV0ZXMnXVsnY29udHJvbHMnXVsnbmFtZSddXCIvPlxuICAgICAgICAgICAgICAgIDxpbnB1dCBjbGFzcz1cIm0taW5wdXRcIiBbbmdNb2RlbF09XCJyb3dbJ2NvbnRyb2xzJ11bJ2F0dHJpYnV0ZXMnXVsnY29udHJvbHMnXVsncXVhbnRpdHknXS52YWx1ZVwiIChuZ01vZGVsQ2hhbmdlKT1cInVwZGF0ZVF1YW50aXR5VmFsdWUoJGV2ZW50LCBpKVwiXG4gICAgICAgICAgICAgICAgICBbZm9ybUNvbnRyb2xdPVwicm93Wydjb250cm9scyddWydhdHRyaWJ1dGVzJ11bJ2NvbnRyb2xzJ11bJ3F1YW50aXR5J11cIiBtYXhTaXplPTQgIGF1dG9XaWR0aElucHV0IC8+XG4gICAgICAgICAgICAgICAgPGlucHV0IGNsYXNzPVwibS1pbnB1dFwiXG4gICAgICAgICAgICAgICAgW25nQ2xhc3NdPVwiKGlzUXVhbnRpdHlSZXZpZXdlZChyb3dbJ2NvbnRyb2xzJ11bJ2F0dHJpYnV0ZXMnXVsnY29udHJvbHMnXVsndW5pdCddLnZhbHVlKSB8IGFzeW5jICkgPyAnYWxlcnQtc3VjY2VzcycgOiAnYWxlcnQtZGFuZ2VyJ1wiIFxuICAgICAgICAgICAgICAgIFtmb3JtQ29udHJvbF09XCJyb3dbJ2NvbnRyb2xzJ11bJ2F0dHJpYnV0ZXMnXVsnY29udHJvbHMnXVsndW5pdCddXCIgIG1heFNpemU9OCBhdXRvV2lkdGhJbnB1dC8+XG4gICAgICAgICAgICAgIDwvZGl2PlxuICAgICAgICAgICAgPC9kaXY+XG4gICAgICAgICAgICA8ZGl2IGNsYXNzPVwibWlhbS1saXN0LWlucHV0X19yb3dfX2NvbnRyb2xzXCI+XG4gICAgICAgICAgICAgIDxsYWJlbCBmb3I9XCJpbmctcGljdHVyZS17e2l9fVwiICpuZ0lmPVwiaW5ncmVkaWVudHNQaWN0dXJlcy52aXNpYmxlXCI+XG4gICAgICAgICAgICAgICAgPGltZ1xuICAgICAgICAgICAgICAgICAgKm5nSWY9XCJyb3cuY29udHJvbHMuYXR0cmlidXRlcy5jb250cm9sc1sncGljdHVyZS11cmwnXT8udmFsdWVcIlxuICAgICAgICAgICAgICAgICAgW25nQ2xhc3NdPVwieyBjbGlja2FibGU6IGluZ3JlZGllbnRzUGljdHVyZXMuZWRpdGFibGUgfVwiXG4gICAgICAgICAgICAgICAgICBbc3JjXT1cInJvdy5jb250cm9scy5hdHRyaWJ1dGVzLmNvbnRyb2xzWydwaWN0dXJlLXVybCddLnZhbHVlXCJcbiAgICAgICAgICAgICAgICAgIGNsYXNzPVwibWlhbS1saXN0LWlucHV0X19yb3dfX3BpY3R1cmVcIlxuICAgICAgICAgICAgICAgID5cbiAgICAgICAgICAgICAgICA8bmctbWlhbS1pY29uXG4gICAgICAgICAgICAgICAgICAqbmdJZj1cIiFyb3cuY29udHJvbHMuYXR0cmlidXRlcy5jb250cm9sc1sncGljdHVyZS11cmwnXT8udmFsdWUgJiYgaW5ncmVkaWVudHNQaWN0dXJlcy5lZGl0YWJsZVwiXG4gICAgICAgICAgICAgICAgICBbaWNvbk5hbWVdPVwiaWNvbi5QaWN0dXJlXCJcbiAgICAgICAgICAgICAgICAgIGNsYXNzPVwibWlhbS1saXN0LWlucHV0X19yb3dfX3RyYXNoXCJcbiAgICAgICAgICAgICAgICAgIHByaW1hcnlDb2xvcj1cInZhcigtLW0tY29sb3ItZ3JleTA1KVwiXG4gICAgICAgICAgICAgICAgPjwvbmctbWlhbS1pY29uPlxuICAgICAgICAgICAgICA8L2xhYmVsPlxuICAgICAgICAgICAgICA8aW5wdXRcbiAgICAgICAgICAgICAgICAqbmdJZj1cImluZ3JlZGllbnRzUGljdHVyZXMudmlzaWJsZSAmJiBpbmdyZWRpZW50c1BpY3R1cmVzLmVkaXRhYmxlXCJcbiAgICAgICAgICAgICAgICBpZD1cImluZy1waWN0dXJlLXt7aX19XCJcbiAgICAgICAgICAgICAgICB0eXBlPVwiZmlsZVwiXG4gICAgICAgICAgICAgICAgYWNjZXB0PVwiaW1hZ2UvanBlZywgaW1hZ2UvcG5nLCBpbWFnZS93ZWJwXCJcbiAgICAgICAgICAgICAgICAoY2hhbmdlKT1cInVwbG9hZEluZ3JlZGllbnRQaWN0dXJlKCRldmVudC50YXJnZXQuZmlsZXMsIHJvdy5jb250cm9scy5hdHRyaWJ1dGVzLmNvbnRyb2xzWydwaWN0dXJlLXVybCddKVwiXG4gICAgICAgICAgICAgID5cbiAgICAgICAgICAgICAgPG5nLW1pYW0taWNvbiBjbGFzcz1cIm1pYW0tbGlzdC1pbnB1dF9fcm93X190cmFzaFwiIChjbGljayk9XCJkZWxldGUoaSlcIiBwcmltYXJ5Q29sb3I9XCJ2YXIoLS1tLWNvbG9yLWdyZXkwNSlcIiBbaWNvbk5hbWVdPVwiaWNvbi5UcmFzaFwiPjwvbmctbWlhbS1pY29uPlxuICAgICAgICAgICAgICAgIDxkaXYgY2xhc3M9XCJtaWFtLWxpc3QtaW5wdXRfX3Jvd19fcGxhY2Vob2xkZXJcIiAqY2RrRHJhZ1BsYWNlaG9sZGVyPjwvZGl2PlxuICAgICAgICAgICAgICAgIDxkaXYgY2xhc3M9XCJtaWFtLWxpc3QtaW5wdXRfX3Jvd19fcHJldmlldyBtLWRlZmF1bHQtY2FyZFwiICpjZGtEcmFnUHJldmlldz5cbiAgICAgICAgICAgICAgICAgIDxuZy1taWFtLWljb24gcHJpbWFyeUNvbG9yPVwidmFyKC0tbS1jb2xvci1ncmV5LXRleHQtZGFyaylcIiBcbiAgICAgICAgICAgICAgICAgICAgW2ljb25OYW1lXT1cImljb24uR3JpcFwiIGNka0RyYWdIYW5kbGU+PC9uZy1taWFtLWljb24+XG4gICAgICAgICAgICAgICAgICA8c3BhbiBjbGFzcz1cIm0tYm9keS10eXBvXCI+e3tyb3c/LmdldCgnYXR0cmlidXRlcycpPy5nZXQoJ25hbWUnKS52YWx1ZSB8IGNhcGl0YWxpemVGaXJzdExldHRlcn19PC9zcGFuPlxuICAgICAgICAgICAgICAgICAgPHNwYW4gY2xhc3M9XCJtLWJvZHktdHlwb1wiPnt7cm93Py5nZXQoJ2F0dHJpYnV0ZXMnKT8uZ2V0KCdxdWFudGl0eScpLnZhbHVlfX08L3NwYW4+XG4gICAgICAgICAgICAgICAgICA8c3BhbiBjbGFzcz1cIm0tYm9keS10eXBvXCI+e3tyb3c/LmdldCgnYXR0cmlidXRlcycpPy5nZXQoJ3VuaXQnKS52YWx1ZX19PC9zcGFuPlxuICAgICAgICAgICAgICA8L2Rpdj5cbiAgICAgICAgICAgIDwvZGl2PlxuICAgICAgICAgICAgPCEtLSBpbmZvcm1hdGlvbiBtZXNzYWdlIC0tPlxuICAgICAgICAgICAgPCEtLSA8c3BhbiAqbmdJZj1cInJvdz8uZ2V0KCdhdHRyaWJ1dGVzJylbJ2lzTm90UmV2aWV3ZWRJbmdyZWRpZW50TmFtZSddICYmICFyb3cuaW52YWxpZCAmJiAhaGlkZUVycm9yc1wiXG4gICAgICAgICAgICAgIGNsYXNzPVwiaGludCB3YXJubmluZ1wiPk5vdXMgbmUgY29ubmFpc3NvbnMgcGFzIGVuY29yZSBjZXQgaW5ncsOpZGllbnQ8L3NwYW4+XG4gICAgICAgICAgICA8c3BhbiAqbmdJZj1cInJvdy5pbnZhbGlkICYmICFoaWRlRXJyb3JzXCIgY2xhc3M9XCJoaW50IGVycm9yXCI+TGUgbm9tIGRlIGwnaW5ncsOpZGllbnQgbmUgcGV1dCBwYXMgw6p0cmVcbiAgICAgICAgICAgICAgdmlkZTwvc3Bhbj4gLS0+XG4gICAgICAgICAgPC9saT5cbiAgICAgIDwvbmctdGVtcGxhdGU+XG4gICAgPC91bD5cbiAgPC9kaXY+XG4gIDxuZy10ZW1wbGF0ZSAjaGludFBsYWNlaG9sZGVyPlxuICAgIDxkaXYgY2xhc3M9XCJtaWFtLWxpc3QtaW5wdXRfX3BsYWNlaG9sZGVyIG1pYW0tbGlzdC1pbnB1dF9fY29udGFpbmVyIG0tZGVmYXVsdC1jYXJkXCI+XG4gICAgICA8bmctbWlhbS1pY29uIHByaW1hcnlDb2xvcj1cInZhcigtLW0tY29sb3ItZ3JleS10ZXh0LWRhcmspXCIgW3dpZHRoXT1cIjE1MlwiIFtoZWlnaHRdPVwiMTU3XCIgW2ljb25OYW1lXT1cImljb24uRW1wdHlcIj5cbiAgICAgIDwvbmctbWlhbS1pY29uPlxuICAgICAgPHNwYW4gY2xhc3M9XCJtaWFtLWxpc3QtaW5wdXRfX3BsYWNlaG9sZGVyX19oaW50IG0tYm9keS10eXBvXCI+T3Vwcy4uLiBj4oCZZXN0IHZpZGUsIGNvbW1lbmNleiDDoCBham91dGVyIGRlcyB7eyBoaW50IH19ICE8L3NwYW4+XG4gICAgPC9kaXY+XG4gIDwvbmctdGVtcGxhdGU+XG4gIDxkaXYgY2xhc3M9XCJtaWFtLWxpc3QtaW5wdXRfX2FjdGlvbnNcIj5cbiAgICA8dGV4dGFyZWEgbWF0SW5wdXQgY2xhc3M9XCJtLWlucHV0XCIgY2RrVGV4dGFyZWFBdXRvc2l6ZSAgY2RrQXV0b3NpemVNaW5Sb3dzPVwiNFwiXG4gICAgICBjZGtBdXRvc2l6ZU1heFJvd3M9XCI0XCIgKGtleWRvd24uZW50ZXIpPSdtb3Vzc2VEb3duT25CdXR0b24gPSB0cnVlJyBcbiAgICAgIFtmb3JtQ29udHJvbF09XCJmaWxsTGlzdElucHV0XCIgYXR0ci5wbGFjZWhvbGRlcj1cInt7cGxhY2Vob2xkZXJ9fVwiPjwvdGV4dGFyZWE+XG4gICAgPGJ1dHRvbiBjbGFzcz1cIm0tYnV0dG9uLXByaW1hcnlcIiAobW91c2Vkb3duKT0nbW91c3NlRG93bk9uQnV0dG9uID0gdHJ1ZScgKG1vdXNldXApPVwic3VibWl0KClcIj5cbiAgICAgIEFqb3V0ZXIgPHNwYW4gY2xhc3M9XCJtaWFtLWxpc3QtaW5wdXRfX2luc3RydWN0aW9uc19fZGlyZWN0aW9uXCI+Pj48L3NwYW4+XG4gICAgPC9idXR0b24+XG4gICAgPGRpdiAqbmdJZj1cImluc3RydWN0aW9uc1wiIGNsYXNzPVwibWlhbS1saXN0LWlucHV0X19hY3Rpb25zX19pbnN0cnVjdGlvbnNcIj57e2luc3RydWN0aW9uc319PC9kaXY+XG4gIDwvZGl2PlxuPC9kaXY+Il19
|
|
@@ -79,14 +79,14 @@ export class IngredientsService extends Service {
|
|
|
79
79
|
oldIngredientAttribute.unit !== ing.attributes.unit ||
|
|
80
80
|
oldIngredientAttribute.quantity !== ing.attributes.quantity;
|
|
81
81
|
if (hasChange) {
|
|
82
|
-
oldIngredients[oldIndex].attributes = Object.assign(Object.assign({}, oldIngredients[oldIndex].attributes), { name: ing.attributes.name, unit: ing.attributes.unit, quantity: ing.attributes.quantity });
|
|
82
|
+
oldIngredients[oldIndex].attributes = Object.assign(Object.assign({}, oldIngredients[oldIndex].attributes), { name: ing.attributes.name, unit: ing.attributes.unit, quantity: ing.attributes.quantity, 'picture-url': ing.attributes['picture-url'] });
|
|
83
83
|
ingredientsToSave.push(oldIngredients[oldIndex]);
|
|
84
84
|
}
|
|
85
85
|
}
|
|
86
86
|
else {
|
|
87
87
|
const newIng = this.new();
|
|
88
88
|
delete newIng.id;
|
|
89
|
-
newIng.attributes = Object.assign(Object.assign({}, newIng.attributes), { name: ing.attributes.name, unit: ing.attributes.unit, quantity: '' + ing.attributes.quantity });
|
|
89
|
+
newIng.attributes = Object.assign(Object.assign({}, newIng.attributes), { name: ing.attributes.name, unit: ing.attributes.unit, quantity: '' + ing.attributes.quantity, 'picture-url': ing.attributes['picture-url'] });
|
|
90
90
|
newIng.addRelationship(recipe, 'recipe');
|
|
91
91
|
ingredientsToSave.push(newIng);
|
|
92
92
|
}
|
|
@@ -116,4 +116,4 @@ IngredientsService.ɵprov = i0.ɵɵdefineInjectable({ token: IngredientsService,
|
|
|
116
116
|
providedIn: 'root'
|
|
117
117
|
}]
|
|
118
118
|
}], function () { return [{ type: i1.HttpClient }]; }, null); })();
|
|
119
|
-
//# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoiaW5ncmVkaWVudHMuc2VydmljZS5qcyIsInNvdXJjZVJvb3QiOiIvYnVpbGRzL21pYW0vbmctbWlhbS1zZGsvcHJvamVjdHMvbmctbWlhbS9zcmMvIiwic291cmNlcyI6WyJsaWIvX3NlcnZpY2VzL2luZ3JlZGllbnRzLnNlcnZpY2UudHMiXSwibmFtZXMiOltdLCJtYXBwaW5ncyI6IkFBQUEsT0FBTyxFQUFFLFVBQVUsRUFBRSxNQUFNLHNCQUFzQixDQUFDO0FBQ2xELE9BQU8sRUFBRSxVQUFVLEVBQUUsTUFBTSxlQUFlLENBQUM7QUFDM0MsT0FBTyxFQUFvQixPQUFPLEVBQUUsTUFBTSxhQUFhLENBQUM7QUFDeEQsT0FBTyxFQUFtQixRQUFRLEVBQWMsRUFBRSxFQUFFLE1BQU0sTUFBTSxDQUFDO0FBQ2pFLE9BQU8sRUFBYSxTQUFTLEVBQU8sTUFBTSxnQkFBZ0IsQ0FBQztBQUMzRCxPQUFPLEVBQUUsV0FBVyxFQUFFLE1BQU0sNkJBQTZCLENBQUM7QUFDMUQsT0FBTyxFQUFFLFVBQVUsRUFBRSxNQUFNLHVCQUF1QixDQUFDOzs7QUFHbkQsTUFBTSxhQUFhLEdBQUcsR0FBRyxXQUFXLENBQUMsT0FBTyxVQUFVLENBQUM7QUFLdkQsTUFBTSxPQUFPLGtCQUFtQixTQUFRLE9BQW1CO0lBS3pELFlBQW9CLElBQWdCO1FBQ2xDLEtBQUssRUFBRSxDQUFDO1FBRFUsU0FBSSxHQUFKLElBQUksQ0FBWTtRQU83QixhQUFRLEdBQUcsVUFBVSxDQUFDO1FBQ3RCLFNBQUksR0FBRyxhQUFhLENBQUM7UUFOMUIsSUFBSSxDQUFDLFFBQVEsRUFBRSxDQUFDO1FBQ2hCLGdFQUFnRTtRQUNoRSxJQUFJLENBQUMsa0JBQWtCLEVBQUUsQ0FBQztRQUMxQixJQUFJLENBQUMsa0JBQWtCLEVBQUUsQ0FBQTtJQUMzQixDQUFDO0lBSU8sa0JBQWtCO1FBQ3hCLE9BQU8sSUFBSSxDQUFDLElBQUksQ0FBQyxHQUFHLENBQVcsR0FBRyxhQUFhLHdDQUF3QyxDQUFDLENBQUMsU0FBUyxDQUFD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RSxRQUFRLENBQUMsQ0FBQztnQkFDekMsaUJBQWlCLENBQUMsSUFBSSxDQUFDLE1BQU0sQ0FBQyxDQUFDO2FBQ2hDO1FBQ0gsQ0FBQyxDQUFDLENBQUM7UUFDSCxPQUFPLGlCQUFpQixDQUFDO0lBQzNCLENBQUM7SUFFRDs7Ozs7T0FLRztJQUNJLG9CQUFvQixDQUFDLFdBQXlCO1FBQ25ELE9BQU8sUUFBUSxDQUNiLFdBQVcsQ0FBQyxHQUFHLENBQ2IsQ0FBQyxVQUFzQixFQUFFLEVBQUU7WUFDekIsT0FBTyxVQUFVLENBQUMsSUFBSSxFQUE4QyxDQUFDO1FBQ3ZFLENBQUMsQ0FDRixDQUNGLENBQUM7SUFDSixDQUFDO0lBRU0sb0JBQW9CLENBQUMsYUFBdUI7UUFDakQsT0FBTyxRQUFRLENBQ2IsYUFBYSxDQUFDLEdBQUcsQ0FBQyxZQUFZLENBQUMsRUFBRSxDQUFDLElBQUksQ0FBQyxNQUFNLENBQUMsWUFBWSxDQUFDLENBQUMsQ0FDN0QsQ0FBQztJQUNKLENBQUM7O29GQXZIVSxrQkFBa0I7MERBQWxCLGtCQUFrQixXQUFsQixrQkFBa0IsbUJBRmpCLE1BQU07a0RBRVAsa0JBQWtCO2NBSDlCLFVBQVU7ZUFBQztnQkFDVixVQUFVLEVBQUUsTUFBTTthQUNuQiIsInNvdXJjZXNDb250ZW50IjpbImltcG9ydCB7IEh0dHBDbGllbnQgfSBmcm9tICdAYW5ndWxhci9jb21tb24vaHR0cCc7XG5pbXBvcnQgeyBJbmplY3RhYmxlIH0gZnJvbSAnQGFuZ3VsYXIvY29yZSc7XG5pbXBvcnQgeyBEb2N1bWVudFJlc291cmNlLCBTZXJ2aWNlIH0gZnJvbSAnbmd4LWpzb25hcGknO1xuaW1wb3J0IHsgQmVoYXZpb3JTdWJqZWN0LCBmb3JrSm9pbiwgT2JzZXJ2YWJsZSwgb2YgfSBmcm9tICdyeGpzJztcbmltcG9ydCB7IHNraXBXaGlsZSwgc3dpdGNoTWFwLCB0YXAgfSBmcm9tICdyeGpzL29wZXJhdG9ycyc7XG5pbXBvcnQgeyBlbnZpcm9ubWVudCB9IGZyb20gJy4uL2Vudmlyb25tZW50cy9lbnZpcm9ubWVudCc7XG5pbXBvcnQgeyBJbmdyZWRpZW50IH0gZnJvbSAnLi4vX21vZGVscy9pbmdyZWRpZW50JztcbmltcG9ydCB7IFJlY2lwZSB9IGZyb20gJy4uL19tb2RlbHMvcmVjaXBlJztcblxuY29uc3QgTUlBTV9BUElfSE9TVCA9IGAke2Vudmlyb25tZW50Lm1pYW1BUEl9L2FwaS92MS9gO1xuXG5ASW5qZWN0YWJsZSh7XG4gIHByb3ZpZGVkSW46ICdyb290J1xufSlcbmV4cG9ydCBjbGFzcyBJbmdyZWRpZW50c1NlcnZpY2UgZXh0ZW5kcyBTZXJ2aWNlPEluZ3JlZGllbnQ+IHtcblxuICBwcml2YXRlIHJldmlld2VkTmFtZXM6IEFycmF5PHN0cmluZz47XG4gIHByaXZhdGUgcmV2aWV3ZWRVbml0czogQXJyYXk8c3RyaW5nPjtcblxuICBjb25zdHJ1Y3Rvcihwcml2YXRlIGh0dHA6IEh0dHBDbGllbnQpIHtcbiAgICBzdXBlcigpO1xuICAgIHRoaXMucmVnaXN0ZXIoKTtcbiAgICAvLyBpZiB5b3UgYXJlIHVzaW5nIHRoaXMgc2VydmljZSB5b3Ugd2lsbCBuZWVkIHRoaXMsIHByZWZldGNoIGl0XG4gICAgdGhpcy5mZXRjaFJldmlld2VkTmFtZXMoKTtcbiAgICB0aGlzLmZldGNoUmV2aWV3ZWRVbml0cygpXG4gIH1cbiAgcHVibGljIHJlc291cmNlID0gSW5ncmVkaWVudDtcbiAgcHVibGljIHR5cGUgPSAnaW5ncmVkaWVudHMnO1xuXG4gIHByaXZhdGUgZmV0Y2hSZXZpZXdlZE5hbWVzKCkge1xuICAgIHJldHVybiB0aGlzLmh0dHAuZ2V0PHN0cmluZ1tdPihgJHtNSUFNX0FQSV9IT1NUfWluZ3JlZGllbnRzLWRlZmluaXRpb25zL3Jldmlld2VkX25hbWVzYCkuc3Vic2NyaWJlKChyZXZpZXdlZE5hbWVzKSA9PiB7XG4gICAgICB0aGlzLnJldmlld2VkTmFtZXMgPSByZXZpZXdlZE5hbWVzO1xuICAgIH0pXG4gIH1cblxuICBwcml2YXRlIGZldGNoUmV2aWV3ZWRVbml0cygpIHtcbiAgICByZXR1cm4gdGhpcy5odHRwLmdldDxzdHJpbmdbXT4oYCR7TUlBTV9BUElfSE9TVH1xdWFudGl0eS11bml0cy9yZXZpZXdlZF9uYW1lc2ApLnN1YnNjcmliZShyZXZpZXdlZFVuaXRzID0+IHtcbiAgICAgIHRoaXMucmV2aWV3ZWRVbml0cyA9IFsgLi4uIHJldmlld2VkVW5pdHMubWFwKHVuaXRPYmplY3QgPT4gdW5pdE9iamVjdFsnbmFtZSddKV07XG4gICAgfSlcbiAgfVxuXG4gIC8qKlxuICAgKiBDaGVjayBpZiBpbmdyZWRpZW50IGlzIGFscmVhZHkga25vd24gaW4gYmFja2VuZFxuICAgKiBAcGFyYW0gaW5ncmVkaWVudERlZiBleGVtcGxlIDogJ3N0ZWFrJ1xuICAgKi9cbiAgcHVibGljIGlzUmV2aWV3ZWROYW1lKGluZ3JlZGllbnREZWY6IHN0cmluZyk6IE9ic2VydmFibGU8Ym9vbGVhbj4ge1xuICAgIGlmICghdGhpcy5yZXZpZXdlZE5hbWVzKSB7XG4gICAgICAvLyBnZXQgYWxsIGtub3dlZCBpbmdyZWRpZW50IGluIGJhY2tlbmRcbiAgICAgIHJldHVybiB0aGlzLmh0dHAuZ2V0PHN0cmluZ1tdPihgJHtNSUFNX0FQSV9IT1NUfWluZ3JlZGllbnRzLWRlZmluaXRpb25zL3Jldmlld2VkX25hbWVzYCkucGlwZShzd2l0Y2hNYXAocmV2aWV3ZWROYW1lcyA9PiB7XG4gICAgICAgIHRoaXMucmV2aWV3ZWROYW1lcyA9IHJldmlld2VkTmFtZXM7XG4gICAgICAgIC8vIGNoZWNrIGlmIGluZ3JlZGllbnREZWYgaXMgaW4gdGhlIGxpc3RcbiAgICAgICAgcmV0dXJuIG9mKHRoaXMucmV2aWV3ZWROYW1lcy5zb21lKGVsID0+IGVsID09PSBpbmdyZWRpZW50RGVmKSk7XG4gICAgICB9KSk7XG4gICAgfVxuICAgIHJldHVybiBvZih0aGlzLnJldmlld2VkTmFtZXMuc29tZShlbCA9PiBlbCA9PT0gaW5ncmVkaWVudERlZikpO1xuICB9XG5cbiAgLyoqXG4gICAqIENoZWNrIGlmIHVuaXQgaXMgYWxyZWFkeSBrbm93biBpbiBiYWNrZW5kXG4gICAqIEBwYXJhbSB1bml0IGV4ZW1wbGUgOiAnYy4gw6AgYy4nXG4gICAqL1xuICBwdWJsaWMgaXNSZXZpZXdlZFVuaXQodW5pdDogc3RyaW5nKTogT2JzZXJ2YWJsZTxib29sZWFuPiB7XG4gICAgaWYgKCF0aGlzLnJldmlld2VkVW5pdHMpIHtcbiAgICAgIC8vIGdldCBhbGwga25vd2VkIHVuaXRzIGluIGJhY2tlbmRcbiAgICAgIHJldHVybiB0aGlzLmh0dHAuZ2V0PHN0cmluZ1tdPihgJHtNSUFNX0FQSV9IT1NUfXF1YW50aXR5LXVuaXRzL3Jldmlld2VkX25hbWVzYCkucGlwZShzd2l0Y2hNYXAocmV2aWV3ZWRVbml0cyA9PiB7XG4gICAgICAgIHRoaXMucmV2aWV3ZWRVbml0cyA9IFsgLi4uIHJldmlld2VkVW5pdHMubWFwKHVuaXRPYmplY3QgPT4gdW5pdE9iamVjdFsnbmFtZSddKV07XG4gICAgICAgIC8vIGNoZWNrIGlmIHVuaXQgaXMgaW4gdGhlIGxpc3RcbiAgICAgICAgcmV0dXJuIG9mKHRoaXMucmV2aWV3ZWRVbml0cy5zb21lKGVsID0+IGVsID09PSB1bml0KSk7XG4gICAgICB9KSk7XG4gICAgfVxuICAgIHJldHVybiBvZih0aGlzLnJldmlld2VkVW5pdHMuc29tZShlbCA9PiBlbCA9PT0gdW5pdCkpO1xuICB9XG5cbiAgcHVibGljIGZvcm1hdEluZ3JlZGllbnRzKGxpc3RJbmdyZWRpZW50OiBzdHJpbmdbXSk6IE9ic2VydmFibGU8SW5ncmVkaWVudFtdPiB7XG4gICAgcmV0dXJuIGZvcmtKb2luKGxpc3RJbmdyZWRpZW50Lm1hcChlbCA9PiB0aGlzLmdldChgZnJvbV9zP2luZ3JlZGllbnRfc3RyPSR7ZWx9YCkpKTtcbiAgfVxuXG4gIC8qKlxuICAgKiBNZXJnZSBSZWNpcGUgSW5ncmVkaWVudHMgbGlzdCB3aXRoIG91dHB1dCBvZiByZWNpcGUgZm9ybXMgaW5ncmVkaWVudCBsaXN0XG4gICAqIGl0J3MgbGluayB3aXRoIFJlY2lwZUZvcm1Db21wb25lbnRcbiAgICogQHBhcmFtIHJlY2lwZSB0byB1cGRhdGVcbiAgICogQHBhcmFtIGluZ3JlZGllbnRzIGxpc3Qgb2YgaW5ncmVkaWVudHMgXG4gICAqL1xuICBwdWJsaWMgY3JlYXRlT3JVcGRhdGVJbmdyZWRpZW50cyhyZWNpcGU6IFJlY2lwZSwgaW5ncmVkaWVudHM6IEluZ3JlZGllbnRbXSk6IEluZ3JlZGllbnRbXSB7XG5cbiAgICBjb25zdCBvbGRJbmdyZWRpZW50cyA9IFsuLi5yZWNpcGUucmVsYXRpb25zaGlwc1tgaW5ncmVkaWVudHNgXS5kYXRhXTtcbiAgICBjb25zdCBpbmdyZWRpZW50c1RvU2F2ZSA9IFtdO1xuXG4gICAgaW5ncmVkaWVudHMuZm9yRWFjaChpbmcgPT4ge1xuXG4gICAgICBpZiAoaW5nLmlkKSB7XG4gICAgICAgIGNvbnN0IG9sZEluZGV4ID0gb2xkSW5ncmVkaWVudHMuZmluZEluZGV4KGVsID0+IGVsLmlkID09PSBpbmcuaWQpO1xuICAgICAgICBjb25zdCBvbGRJbmdyZWRpZW50QXR0cmlidXRlID0gb2xkSW5ncmVkaWVudHNbb2xkSW5kZXhdLmF0dHJpYnV0ZXM7XG4gICAgICAgIGNvbnN0IGhhc0NoYW5nZSA9ICBvbGRJbmdyZWRpZW50QXR0cmlidXRlLm5hbWUgIT09IGluZy5hdHRyaWJ1dGVzLm5hbWUgfHxcbiAgICAgICAgICAgICAgICAgICAgICAgICAgIG9sZEluZ3JlZGllbnRBdHRyaWJ1dGUudW5pdCAhPT0gaW5nLmF0dHJpYnV0ZXMudW5pdCB8fFxuICAgICAgICAgICAgICAgICAgICAgICAgICAgb2xkSW5ncmVkaWVudEF0dHJpYnV0ZS5xdWFudGl0eSAhPT0gaW5nLmF0dHJpYnV0ZXMucXVhbnRpdHk7XG4gICAgICAgIGlmIChoYXNDaGFuZ2Upe1xuICAgICAgICAgIG9sZEluZ3JlZGllbnRzW29sZEluZGV4XS5hdHRyaWJ1dGVzID0geyAuLi5vbGRJbmdyZWRpZW50c1tvbGRJbmRleF0uYXR0cmlidXRlcyxcbiAgICAgICAgICAgIG5hbWU6IGluZy5hdHRyaWJ1dGVzLm5hbWUsIHVuaXQ6IGluZy5hdHRyaWJ1dGVzLnVuaXQsIHF1YW50aXR5OiBpbmcuYXR0cmlidXRlcy5xdWFudGl0eSB9O1xuICAgICAgICAgICAgaW5ncmVkaWVudHNUb1NhdmUucHVzaChvbGRJbmdyZWRpZW50c1tvbGRJbmRleF0pO1xuICAgICAgICB9XG4gICAgICB9IGVsc2Uge1xuICAgICAgICBjb25zdCBuZXdJbmcgPSB0aGlzLm5ldygpO1xuICAgICAgICBkZWxldGUgbmV3SW5nLmlkO1xuICAgICAgICBuZXdJbmcuYXR0cmlidXRlcyA9IHsgLi4ubmV3SW5nLmF0dHJpYnV0ZXMsXG4gICAgICAgICAgIG5hbWU6IGluZy5hdHRyaWJ1dGVzLm5hbWUsIHVuaXQ6IGluZy5hdHRyaWJ1dGVzLnVuaXQsIHF1YW50aXR5OiAnJyArIGluZy5hdHRyaWJ1dGVzLnF1YW50aXR5IH07XG4gICAgICAgIG5ld0luZy5hZGRSZWxhdGlvbnNoaXAocmVjaXBlLCAncmVjaXBlJyk7XG4gICAgICAgIGluZ3JlZGllbnRzVG9TYXZlLnB1c2gobmV3SW5nKTtcbiAgICAgIH1cbiAgICB9KTtcbiAgICByZXR1cm4gaW5ncmVkaWVudHNUb1NhdmU7XG4gIH1cblxuICAvKipcbiAgICogIENyZWF0ZSBvciB1cGRhdGUgYSBsaXN0IE9mIEluZ3JlZGllbnRcbiAgICogIGl0J2xsIGNyZWF0ZSBpZiBJbmdyZWRpZW50IGlkIGlzIG51bGwgb3RoZXJ3aXNlIHVwZGF0ZSBpdFxuICAgKiAgaXQncyBwZXJmb3JtIGluIHBhcmFsbGVsICwgT2JzZXJ2YWJsZSdsbCBjb21wbGV0IHdoZW4gYWxsIGluZ3JlZGVudHMgaGF2ZSBiZWVuIHVwc2VydGVkXG4gICAqIEBwYXJhbSBpbmdyZWRpZW50cyBhcnJheSBvZiBJbmdyZWRpZW50XG4gICAqL1xuICBwdWJsaWMgdXBzZXJ0SW5ncmVkaWVudExpc3QoaW5ncmVkaWVudHM6IEluZ3JlZGllbnRbXSk6IE9ic2VydmFibGU8RG9jdW1lbnRSZXNvdXJjZTxJbmdyZWRpZW50PltdPiB7XG4gICAgcmV0dXJuIGZvcmtKb2luKFxuICAgICAgaW5ncmVkaWVudHMubWFwKFxuICAgICAgICAoaW5ncmVkaWVudDogSW5ncmVkaWVudCkgPT4ge1xuICAgICAgICAgIHJldHVybiBpbmdyZWRpZW50LnNhdmUoKSBhcyBPYnNlcnZhYmxlPERvY3VtZW50UmVzb3VyY2U8SW5ncmVkaWVudD4+O1xuICAgICAgICB9XG4gICAgICApXG4gICAgKTtcbiAgfVxuXG4gIHB1YmxpYyBkZWxldGVJbmdyZWRpZW50TGlzdChpbmdyZWRpZW50SWRzOiBzdHJpbmdbXSk6IE9ic2VydmFibGU8dm9pZFtdPiB7XG4gICAgcmV0dXJuIGZvcmtKb2luKFxuICAgICAgaW5ncmVkaWVudElkcy5tYXAoaW5ncmVkaWVudElkID0+IHRoaXMuZGVsZXRlKGluZ3JlZGllbnRJZCkpXG4gICAgKTtcbiAgfVxufVxuIl19
|
|
119
|
+
//# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoiaW5ncmVkaWVudHMuc2VydmljZS5qcyIsInNvdXJjZVJvb3QiOiIvYnVpbGRzL21pYW0vbmctbWlhbS1zZGsvcHJvamVjdHMvbmctbWlhbS9zcmMvIiwic291cmNlcyI6WyJsaWIvX3NlcnZpY2VzL2luZ3JlZGllbnRzLnNlcnZpY2UudHMiXSwibmFtZXMiOltdLCJtYXBwaW5ncyI6IkFBQUEsT0FBTyxFQUFFLFVBQVUsRUFBRSxNQUFNLHNCQUFzQixDQUFDO0FBQ2xELE9BQU8sRUFBRSxVQUFVLEVBQUUsTUFBTSxlQUFlLENBQUM7QUFDM0MsT0FBTyxFQUFvQixPQUFPLEVBQUUsTUFBTSxhQUFhLENBQUM7QUFDeEQsT0FBTyxFQUFtQixRQUFRLEVBQWMsRUFBRSxFQUFFLE1BQU0sTUFBTSxDQUFDO0FBQ2pFLE9BQU8sRUFBYSxTQUFTLEVBQU8sTUFBTSxnQkFBZ0IsQ0FBQztBQUMzRCxPQUFPLEVBQUUsV0FBVyxFQUFFLE1BQU0sNkJBQTZCLENBQUM7QUFDMUQsT0FBTyxFQUFFLFVBQVUsRUFBRSxNQUFNLHVCQUF1QixDQUFDOzs7QUFHbkQsTUFBTSxhQUFhLEdBQUcsR0FBRyxXQUFXLENBQUMsT0FBTyxVQUFVLENBQUM7QUFLdkQsTUFBTSxPQUFPLGtCQUFtQixTQUFRLE9BQW1CO0lBS3pELFlBQW9CLElBQWdCO1FBQ2xDLEtBQUssRUFBRSxDQUFDO1FBRFUsU0FBSSxHQUFKLElBQUksQ0FBWTtRQU83QixhQUFRLEdBQUcsVUFBVSxDQUFDO1FBQ3RCLFNBQUksR0FBRyxhQUFhLENBQUM7UUFOMUIsSUFBSSxDQUFDLFFBQVEsRUFBRSxDQUFDO1FBQ2hCLGdFQUFnRTtRQUNoRSxJQUFJLENBQUMsa0JBQWtCLEVBQUUsQ0FBQztRQUMxQixJQUFJLENBQUMsa0JBQWtCLEVBQUUsQ0FBQTtJQUMzQixDQUFDO0lBSU8sa0JBQWtCO1FBQ3hCLE9BQU8sSUFBSSxDQUFDLElBQUksQ0FBQyxHQUFHLENBQVcsR0FBRyxhQUFhLHdDQUF3QyxDQUFDLENBQUMsU0FBUyxDQUFD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LFFBQVEsRUFDdEMsYUFBYSxFQUFFLEdBQUcsQ0FBQyxVQUFVLENBQUMsYUFBYSxDQUFDLEdBQzlDLENBQUM7Z0JBQ0YsTUFBTSxDQUFDLGVBQWUsQ0FBQyxNQUFNLEVBQUUsUUFBUSxDQUFDLENBQUM7Z0JBQ3pDLGlCQUFpQixDQUFDLElBQUksQ0FBQyxNQUFNLENBQUMsQ0FBQzthQUNoQztRQUNILENBQUMsQ0FBQyxDQUFDO1FBQ0gsT0FBTyxpQkFBaUIsQ0FBQztJQUMzQixDQUFDO0lBRUQ7Ozs7O09BS0c7SUFDSSxvQkFBb0IsQ0FBQyxXQUF5QjtRQUNuRCxPQUFPLFFBQVEsQ0FDYixXQUFXLENBQUMsR0FBRyxDQUNiLENBQUMsVUFBc0IsRUFBRSxFQUFFO1lBQ3pCLE9BQU8sVUFBVSxDQUFDLElBQUksRUFBOEMsQ0FBQztRQUN2RSxDQUFDLENBQ0YsQ0FDRixDQUFDO0lBQ0osQ0FBQztJQUVNLG9CQUFvQixDQUFDLGFBQXVCO1FBQ2pELE9BQU8sUUFBUSxDQUNiLGFBQWEsQ0FBQyxHQUFHLENBQUMsWUFBWSxDQUFDLEVBQUUsQ0FBQyxJQUFJLENBQUMsTUFBTSxDQUFDLFlBQVksQ0FBQyxDQUFDLENBQzdELENBQUM7SUFDSixDQUFDOztvRkFqSVUsa0JBQWtCOzBEQUFsQixrQkFBa0IsV0FBbEIsa0JBQWtCLG1CQUZqQixNQUFNO2tEQUVQLGtCQUFrQjtjQUg5QixVQUFVO2VBQUM7Z0JBQ1YsVUFBVSxFQUFFLE1BQU07YUFDbkIiLCJzb3VyY2VzQ29udGVudCI6WyJpbXBvcnQgeyBIdHRwQ2xpZW50IH0gZnJvbSAnQGFuZ3VsYXIvY29tbW9uL2h0dHAnO1xuaW1wb3J0IHsgSW5qZWN0YWJsZSB9IGZyb20gJ0Bhbmd1bGFyL2NvcmUnO1xuaW1wb3J0IHsgRG9jdW1lbnRSZXNvdXJjZSwgU2VydmljZSB9IGZyb20gJ25neC1qc29uYXBpJztcbmltcG9ydCB7IEJlaGF2aW9yU3ViamVjdCwgZm9ya0pvaW4sIE9ic2VydmFibGUsIG9mIH0gZnJvbSAncnhqcyc7XG5pbXBvcnQgeyBza2lwV2hpbGUsIHN3aXRjaE1hcCwgdGFwIH0gZnJvbSAncnhqcy9vcGVyYXRvcnMnO1xuaW1wb3J0IHsgZW52aXJvbm1lbnQgfSBmcm9tICcuLi9lbnZpcm9ubWVudHMvZW52aXJvbm1lbnQnO1xuaW1wb3J0IHsgSW5ncmVkaWVudCB9IGZyb20gJy4uL19tb2RlbHMvaW5ncmVkaWVudCc7XG5pbXBvcnQgeyBSZWNpcGUgfSBmcm9tICcuLi9fbW9kZWxzL3JlY2lwZSc7XG5cbmNvbnN0IE1JQU1fQVBJX0hPU1QgPSBgJHtlbnZpcm9ubWVudC5taWFtQVBJfS9hcGkvdjEvYDtcblxuQEluamVjdGFibGUoe1xuICBwcm92aWRlZEluOiAncm9vdCdcbn0pXG5leHBvcnQgY2xhc3MgSW5ncmVkaWVudHNTZXJ2aWNlIGV4dGVuZHMgU2VydmljZTxJbmdyZWRpZW50PiB7XG5cbiAgcHJpdmF0ZSByZXZpZXdlZE5hbWVzOiBBcnJheTxzdHJpbmc+O1xuICBwcml2YXRlIHJldmlld2VkVW5pdHM6IEFycmF5PHN0cmluZz47XG5cbiAgY29uc3RydWN0b3IocHJpdmF0ZSBodHRwOiBIdHRwQ2xpZW50KSB7XG4gICAgc3VwZXIoKTtcbiAgICB0aGlzLnJlZ2lzdGVyKCk7XG4gICAgLy8gaWYgeW91IGFyZSB1c2luZyB0aGlzIHNlcnZpY2UgeW91IHdpbGwgbmVlZCB0aGlzLCBwcmVmZXRjaCBpdFxuICAgIHRoaXMuZmV0Y2hSZXZpZXdlZE5hbWVzKCk7XG4gICAgdGhpcy5mZXRjaFJldmlld2VkVW5pdHMoKVxuICB9XG4gIHB1YmxpYyByZXNvdXJjZSA9IEluZ3JlZGllbnQ7XG4gIHB1YmxpYyB0eXBlID0gJ2luZ3JlZGllbnRzJztcblxuICBwcml2YXRlIGZldGNoUmV2aWV3ZWROYW1lcygpIHtcbiAgICByZXR1cm4gdGhpcy5odHRwLmdldDxzdHJpbmdbXT4oYCR7TUlBTV9BUElfSE9TVH1pbmdyZWRpZW50cy1kZWZpbml0aW9ucy9yZXZpZXdlZF9uYW1lc2ApLnN1YnNjcmliZSgocmV2aWV3ZWROYW1lcykgPT4ge1xuICAgICAgdGhpcy5yZXZpZXdlZE5hbWVzID0gcmV2aWV3ZWROYW1lcztcbiAgICB9KVxuICB9XG5cbiAgcHJpdmF0ZSBmZXRjaFJldmlld2VkVW5pdHMoKSB7XG4gICAgcmV0dXJuIHRoaXMuaHR0cC5nZXQ8c3RyaW5nW10+KGAke01JQU1fQVBJX0hPU1R9cXVhbnRpdHktdW5pdHMvcmV2aWV3ZWRfbmFtZXNgKS5zdWJzY3JpYmUocmV2aWV3ZWRVbml0cyA9PiB7XG4gICAgICB0aGlzLnJldmlld2VkVW5pdHMgPSBbIC4uLiByZXZpZXdlZFVuaXRzLm1hcCh1bml0T2JqZWN0ID0+IHVuaXRPYmplY3RbJ25hbWUnXSldO1xuICAgIH0pXG4gIH1cblxuICAvKipcbiAgICogQ2hlY2sgaWYgaW5ncmVkaWVudCBpcyBhbHJlYWR5IGtub3duIGluIGJhY2tlbmRcbiAgICogQHBhcmFtIGluZ3JlZGllbnREZWYgZXhlbXBsZSA6ICdzdGVhaydcbiAgICovXG4gIHB1YmxpYyBpc1Jldmlld2VkTmFtZShpbmdyZWRpZW50RGVmOiBzdHJpbmcpOiBPYnNlcnZhYmxlPGJvb2xlYW4+IHtcbiAgICBpZiAoIXRoaXMucmV2aWV3ZWROYW1lcykge1xuICAgICAgLy8gZ2V0IGFsbCBrbm93ZWQgaW5ncmVkaWVudCBpbiBiYWNrZW5kXG4gICAgICByZXR1cm4gdGhpcy5odHRwLmdldDxzdHJpbmdbXT4oYCR7TUlBTV9BUElfSE9TVH1pbmdyZWRpZW50cy1kZWZpbml0aW9ucy9yZXZpZXdlZF9uYW1lc2ApLnBpcGUoc3dpdGNoTWFwKHJldmlld2VkTmFtZXMgPT4ge1xuICAgICAgICB0aGlzLnJldmlld2VkTmFtZXMgPSByZXZpZXdlZE5hbWVzO1xuICAgICAgICAvLyBjaGVjayBpZiBpbmdyZWRpZW50RGVmIGlzIGluIHRoZSBsaXN0XG4gICAgICAgIHJldHVybiBvZih0aGlzLnJldmlld2VkTmFtZXMuc29tZShlbCA9PiBlbCA9PT0gaW5ncmVkaWVudERlZikpO1xuICAgICAgfSkpO1xuICAgIH1cbiAgICByZXR1cm4gb2YodGhpcy5yZXZpZXdlZE5hbWVzLnNvbWUoZWwgPT4gZWwgPT09IGluZ3JlZGllbnREZWYpKTtcbiAgfVxuXG4gIC8qKlxuICAgKiBDaGVjayBpZiB1bml0IGlzIGFscmVhZHkga25vd24gaW4gYmFja2VuZFxuICAgKiBAcGFyYW0gdW5pdCBleGVtcGxlIDogJ2MuIMOgIGMuJ1xuICAgKi9cbiAgcHVibGljIGlzUmV2aWV3ZWRVbml0KHVuaXQ6IHN0cmluZyk6IE9ic2VydmFibGU8Ym9vbGVhbj4ge1xuICAgIGlmICghdGhpcy5yZXZpZXdlZFVuaXRzKSB7XG4gICAgICAvLyBnZXQgYWxsIGtub3dlZCB1bml0cyBpbiBiYWNrZW5kXG4gICAgICByZXR1cm4gdGhpcy5odHRwLmdldDxzdHJpbmdbXT4oYCR7TUlBTV9BUElfSE9TVH1xdWFudGl0eS11bml0cy9yZXZpZXdlZF9uYW1lc2ApLnBpcGUoc3dpdGNoTWFwKHJldmlld2VkVW5pdHMgPT4ge1xuICAgICAgICB0aGlzLnJldmlld2VkVW5pdHMgPSBbIC4uLiByZXZpZXdlZFVuaXRzLm1hcCh1bml0T2JqZWN0ID0+IHVuaXRPYmplY3RbJ25hbWUnXSldO1xuICAgICAgICAvLyBjaGVjayBpZiB1bml0IGlzIGluIHRoZSBsaXN0XG4gICAgICAgIHJldHVybiBvZih0aGlzLnJldmlld2VkVW5pdHMuc29tZShlbCA9PiBlbCA9PT0gdW5pdCkpO1xuICAgICAgfSkpO1xuICAgIH1cbiAgICByZXR1cm4gb2YodGhpcy5yZXZpZXdlZFVuaXRzLnNvbWUoZWwgPT4gZWwgPT09IHVuaXQpKTtcbiAgfVxuXG4gIHB1YmxpYyBmb3JtYXRJbmdyZWRpZW50cyhsaXN0SW5ncmVkaWVudDogc3RyaW5nW10pOiBPYnNlcnZhYmxlPEluZ3JlZGllbnRbXT4ge1xuICAgIHJldHVybiBmb3JrSm9pbihsaXN0SW5ncmVkaWVudC5tYXAoZWwgPT4gdGhpcy5nZXQoYGZyb21fcz9pbmdyZWRpZW50X3N0cj0ke2VsfWApKSk7XG4gIH1cblxuICAvKipcbiAgICogTWVyZ2UgUmVjaXBlIEluZ3JlZGllbnRzIGxpc3Qgd2l0aCBvdXRwdXQgb2YgcmVjaXBlIGZvcm1zIGluZ3JlZGllbnQgbGlzdFxuICAgKiBpdCdzIGxpbmsgd2l0aCBSZWNpcGVGb3JtQ29tcG9uZW50XG4gICAqIEBwYXJhbSByZWNpcGUgdG8gdXBkYXRlXG4gICAqIEBwYXJhbSBpbmdyZWRpZW50cyBsaXN0IG9mIGluZ3JlZGllbnRzIFxuICAgKi9cbiAgcHVibGljIGNyZWF0ZU9yVXBkYXRlSW5ncmVkaWVudHMocmVjaXBlOiBSZWNpcGUsIGluZ3JlZGllbnRzOiBJbmdyZWRpZW50W10pOiBJbmdyZWRpZW50W10ge1xuXG4gICAgY29uc3Qgb2xkSW5ncmVkaWVudHMgPSBbLi4ucmVjaXBlLnJlbGF0aW9uc2hpcHNbYGluZ3JlZGllbnRzYF0uZGF0YV07XG4gICAgY29uc3QgaW5ncmVkaWVudHNUb1NhdmUgPSBbXTtcblxuICAgIGluZ3JlZGllbnRzLmZvckVhY2goaW5nID0+IHtcblxuICAgICAgaWYgKGluZy5pZCkge1xuICAgICAgICBjb25zdCBvbGRJbmRleCA9IG9sZEluZ3JlZGllbnRzLmZpbmRJbmRleChlbCA9PiBlbC5pZCA9PT0gaW5nLmlkKTtcbiAgICAgICAgY29uc3Qgb2xkSW5ncmVkaWVudEF0dHJpYnV0ZSA9IG9sZEluZ3JlZGllbnRzW29sZEluZGV4XS5hdHRyaWJ1dGVzO1xuICAgICAgICBjb25zdCBoYXNDaGFuZ2UgPSAgb2xkSW5ncmVkaWVudEF0dHJpYnV0ZS5uYW1lICE9PSBpbmcuYXR0cmlidXRlcy5uYW1lIHx8XG4gICAgICAgICAgICAgICAgICAgICAgICAgICBvbGRJbmdyZWRpZW50QXR0cmlidXRlLnVuaXQgIT09IGluZy5hdHRyaWJ1dGVzLnVuaXQgfHxcbiAgICAgICAgICAgICAgICAgICAgICAgICAgIG9sZEluZ3JlZGllbnRBdHRyaWJ1dGUucXVhbnRpdHkgIT09IGluZy5hdHRyaWJ1dGVzLnF1YW50aXR5O1xuICAgICAgICBpZiAoaGFzQ2hhbmdlKXtcbiAgICAgICAgICBvbGRJbmdyZWRpZW50c1tvbGRJbmRleF0uYXR0cmlidXRlcyA9IHtcbiAgICAgICAgICAgIC4uLm9sZEluZ3JlZGllbnRzW29sZEluZGV4XS5hdHRyaWJ1dGVzLFxuICAgICAgICAgICAgbmFtZTogaW5nLmF0dHJpYnV0ZXMubmFtZSxcbiAgICAgICAgICAgIHVuaXQ6IGluZy5hdHRyaWJ1dGVzLnVuaXQsXG4gICAgICAgICAgICBxdWFudGl0eTogaW5nLmF0dHJpYnV0ZXMucXVhbnRpdHksXG4gICAgICAgICAgICAncGljdHVyZS11cmwnOiBpbmcuYXR0cmlidXRlc1sncGljdHVyZS11cmwnXVxuICAgICAgICAgIH07XG4gICAgICAgICAgaW5ncmVkaWVudHNUb1NhdmUucHVzaChvbGRJbmdyZWRpZW50c1tvbGRJbmRleF0pO1xuICAgICAgICB9XG4gICAgICB9IGVsc2Uge1xuICAgICAgICBjb25zdCBuZXdJbmcgPSB0aGlzLm5ldygpO1xuICAgICAgICBkZWxldGUgbmV3SW5nLmlkO1xuICAgICAgICBuZXdJbmcuYXR0cmlidXRlcyA9IHtcbiAgICAgICAgICAuLi5uZXdJbmcuYXR0cmlidXRlcyxcbiAgICAgICAgICAgbmFtZTogaW5nLmF0dHJpYnV0ZXMubmFtZSxcbiAgICAgICAgICAgdW5pdDogaW5nLmF0dHJpYnV0ZXMudW5pdCxcbiAgICAgICAgICAgcXVhbnRpdHk6ICcnICsgaW5nLmF0dHJpYnV0ZXMucXVhbnRpdHksXG4gICAgICAgICAgICdwaWN0dXJlLXVybCc6IGluZy5hdHRyaWJ1dGVzWydwaWN0dXJlLXVybCddXG4gICAgICAgIH07XG4gICAgICAgIG5ld0luZy5hZGRSZWxhdGlvbnNoaXAocmVjaXBlLCAncmVjaXBlJyk7XG4gICAgICAgIGluZ3JlZGllbnRzVG9TYXZlLnB1c2gobmV3SW5nKTtcbiAgICAgIH1cbiAgICB9KTtcbiAgICByZXR1cm4gaW5ncmVkaWVudHNUb1NhdmU7XG4gIH1cblxuICAvKipcbiAgICogIENyZWF0ZSBvciB1cGRhdGUgYSBsaXN0IE9mIEluZ3JlZGllbnRcbiAgICogIGl0J2xsIGNyZWF0ZSBpZiBJbmdyZWRpZW50IGlkIGlzIG51bGwgb3RoZXJ3aXNlIHVwZGF0ZSBpdFxuICAgKiAgaXQncyBwZXJmb3JtIGluIHBhcmFsbGVsICwgT2JzZXJ2YWJsZSdsbCBjb21wbGV0IHdoZW4gYWxsIGluZ3JlZGVudHMgaGF2ZSBiZWVuIHVwc2VydGVkXG4gICAqIEBwYXJhbSBpbmdyZWRpZW50cyBhcnJheSBvZiBJbmdyZWRpZW50XG4gICAqL1xuICBwdWJsaWMgdXBzZXJ0SW5ncmVkaWVudExpc3QoaW5ncmVkaWVudHM6IEluZ3JlZGllbnRbXSk6IE9ic2VydmFibGU8RG9jdW1lbnRSZXNvdXJjZTxJbmdyZWRpZW50PltdPiB7XG4gICAgcmV0dXJuIGZvcmtKb2luKFxuICAgICAgaW5ncmVkaWVudHMubWFwKFxuICAgICAgICAoaW5ncmVkaWVudDogSW5ncmVkaWVudCkgPT4ge1xuICAgICAgICAgIHJldHVybiBpbmdyZWRpZW50LnNhdmUoKSBhcyBPYnNlcnZhYmxlPERvY3VtZW50UmVzb3VyY2U8SW5ncmVkaWVudD4+O1xuICAgICAgICB9XG4gICAgICApXG4gICAgKTtcbiAgfVxuXG4gIHB1YmxpYyBkZWxldGVJbmdyZWRpZW50TGlzdChpbmdyZWRpZW50SWRzOiBzdHJpbmdbXSk6IE9ic2VydmFibGU8dm9pZFtdPiB7XG4gICAgcmV0dXJuIGZvcmtKb2luKFxuICAgICAgaW5ncmVkaWVudElkcy5tYXAoaW5ncmVkaWVudElkID0+IHRoaXMuZGVsZXRlKGluZ3JlZGllbnRJZCkpXG4gICAgKTtcbiAgfVxufVxuIl19
|
|
@@ -80,6 +80,19 @@ export class UserService {
|
|
|
80
80
|
var _a;
|
|
81
81
|
return (_a = this.userInfo$.value) === null || _a === void 0 ? void 0 : _a.forbidProfiling;
|
|
82
82
|
}
|
|
83
|
+
getUserSupplier() {
|
|
84
|
+
return this.userInfo$.pipe(skipWhile(userInfo => !userInfo), switchMap((userInfo) => {
|
|
85
|
+
if (!userInfo.supplierId) {
|
|
86
|
+
return of(null);
|
|
87
|
+
}
|
|
88
|
+
else {
|
|
89
|
+
return this.suppliersService.get(userInfo.supplierId);
|
|
90
|
+
}
|
|
91
|
+
}));
|
|
92
|
+
}
|
|
93
|
+
can(permission) {
|
|
94
|
+
return this.userInfo$.pipe(map(info => { var _a, _b; return (_b = (_a = info === null || info === void 0 ? void 0 : info.app_metadata) === null || _a === void 0 ? void 0 : _a.permissions) === null || _b === void 0 ? void 0 : _b.includes(permission); }));
|
|
95
|
+
}
|
|
83
96
|
initProvider() {
|
|
84
97
|
return this.userInfo$.pipe(switchMap((userInfo) => {
|
|
85
98
|
var _a;
|
|
@@ -91,16 +104,6 @@ export class UserService {
|
|
|
91
104
|
var _a, _b;
|
|
92
105
|
this.userRoles$.next(((_b = (_a = this.userInfo$.value) === null || _a === void 0 ? void 0 : _a.app_metadata) === null || _b === void 0 ? void 0 : _b.roles) || []);
|
|
93
106
|
}
|
|
94
|
-
getUserSupplier() {
|
|
95
|
-
return this.userInfo$.pipe(skipWhile(userInfo => !userInfo), switchMap((userInfo) => {
|
|
96
|
-
if (!userInfo.supplierId) {
|
|
97
|
-
return of(null);
|
|
98
|
-
}
|
|
99
|
-
else {
|
|
100
|
-
return this.suppliersService.get(userInfo.supplierId);
|
|
101
|
-
}
|
|
102
|
-
}));
|
|
103
|
-
}
|
|
104
107
|
}
|
|
105
108
|
UserService.ɵfac = function UserService_Factory(t) { return new (t || UserService)(i0.ɵɵinject(i1.HttpClient), i0.ɵɵinject(i2.RecipeProviderService), i0.ɵɵinject(i2.ToastrService), i0.ɵɵinject(i2.SuppliersService)); };
|
|
106
109
|
UserService.ɵprov = i0.ɵɵdefineInjectable({ token: UserService, factory: UserService.ɵfac, providedIn: 'root' });
|
|
@@ -110,4 +113,4 @@ UserService.ɵprov = i0.ɵɵdefineInjectable({ token: UserService, factory: User
|
|
|
110
113
|
providedIn: 'root'
|
|
111
114
|
}]
|
|
112
115
|
}], function () { return [{ type: i1.HttpClient }, { type: i2.RecipeProviderService }, { type: i2.ToastrService }, { type: i2.SuppliersService }]; }, null); })();
|
|
113
|
-
//# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoidXNlci5zZXJ2aWNlLmpzIiwic291cmNlUm9vdCI6Ii9idWlsZHMvbWlhbS9uZy1taWFtLXNkay9wcm9qZWN0cy9uZy1taWFtL3NyYy8iLCJzb3VyY2VzIjpbImxpYi9fc2VydmljZXMvdXNlci5zZXJ2aWNlLnRzIl0sIm5hbWVzIjpbXSwibWFwcGluZ3MiOiJBQUFBLE9BQU8sRUFBRSxVQUFVLEVBQUUsTUFBTSxzQkFBc0IsQ0FBQztBQUNsRCxPQUFPLEVBQUUsVUFBVSxFQUFFLE1BQU0sZUFBZSxDQUFDO0FBQzNDLE9BQU8sRUFBRSxlQUFlLEVBQWMsRUFBRSxFQUFFLE1BQU0sTUFBTSxDQUFDO0FBQ3ZELE9BQU8sRUFBRSxJQUFJLEVBQUUsU0FBUyxFQUFFLFNBQVMsRUFBRSxHQUFHLEVBQUUsR0FBRyxFQUFFLE1BQU0sZ0JBQWdCLENBQUM7QUFDdEUsT0FBTyxFQUFFLFdBQVcsRUFBRSxNQUFNLDZCQUE2QixDQUFDO0FBQzFELE9BQU8sRUFBNEIsSUFBSSxFQUFFLE1BQU0sWUFBWSxDQUFDO0FBQzVELE9BQU8sRUFBRSxnQkFBZ0IsRUFBRSxxQkFBcUIsRUFBRSxhQUFhLEVBQUUsTUFBTSxHQUFHLENBQUM7Ozs7QUFLM0UsTUFBTSxPQUFPLFdBQVc7SUFPdEIsWUFDVSxJQUFnQixFQUNoQix1QkFBOEMsRUFDOUMsTUFBcUIsRUFDckIsZ0JBQWtDO1FBSGxDLFNBQUksR0FBSixJQUFJLENBQVk7UUFDaEIsNEJBQXVCLEdBQXZCLHVCQUF1QixDQUF1QjtRQUM5QyxXQUFNLEdBQU4sTUFBTSxDQUFlO1FBQ3JCLHFCQUFnQixHQUFoQixnQkFBZ0IsQ0FBa0I7UUFWNUMsY0FBUyxHQUFHLElBQUksZUFBZSxDQUFDLEtBQUssQ0FBQyxDQUFDO1FBQ3ZDLDBCQUFxQixHQUFHLElBQUksZUFBZSxDQUFDLEtBQUssQ0FBQyxDQUFDO1FBQzNDLGNBQVMsR0FBRyxJQUFJLGVBQWUsQ0FBTyxTQUFTLENBQUMsQ0FBQztRQVV2RCxJQUFJLENBQUMsVUFBVSxHQUFHLElBQUksZUFBZSxDQUFDLEVBQUUsQ0FBQyxDQUFDO1FBQzFDLElBQUksQ0FBQyxjQUFjLEdBQUcsSUFBSSxlQUFlLENBQUMsU0FBUyxDQUFDLENBQUM7SUFDdkQsQ0FBQztJQUVELElBQUksWUFBWTtRQUNkLE9BQU8sSUFBSSxDQUFDLGNBQWMsQ0FBQyxZQUFZLEVBQUUsQ0FBQyxJQUFJLENBQUMsU0FBUyxDQUFDLFFBQVEsQ0FBQyxFQUFFLENBQUMsUUFBUSxLQUFLLFNBQVMsQ0FBQyxDQUFDLENBQUM7SUFDaEcsQ0FBQztJQUVELElBQUksU0FBUztRQUNYLE9BQU8sSUFBSSxDQUFDLFVBQVUsQ0FBQyxZQUFZLEVBQUUsQ0FBQztJQUN4QyxDQUFDO0lBRUQsSUFBSSxPQUFPO1FBQ1QsT0FBTyxJQUFJLENBQUMsVUFBVSxDQUFDLElBQUksQ0FBQyxTQUFTLENBQUMsQ0FBQyxLQUFlLEVBQUUsRUFBRSxDQUFDLEVBQUUsQ0FBQyxLQUFLLENBQUMsUUFBUSxDQUFDLE9BQU8sQ0FBQyxDQUFDLENBQUMsQ0FBQyxDQUFDO0lBQzNGLENBQUM7SUFFRCx1QkFBdUIsQ0FBQyxRQUF3QjtRQUM5QyxJQUFJLENBQUMsY0FBYyxDQUFDLElBQUksQ0FBQyxRQUFRLENBQUMsQ0FBQztJQUNyQyxDQUFDO0lBRUQsY0FBYyxDQUFDLE1BQWU7UUFDNUIsSUFBSSxDQUFDLFNBQVMsQ0FBQyxJQUFJLENBQUMsTUFBTSxDQUFDLENBQUM7SUFDOUIsQ0FBQztJQUVELFdBQVcsQ0FBQyxlQUFlO1FBQ3pCLE1BQU0sUUFBUSxHQUFHLElBQUksSUFBSSxDQUFDLEVBQUUsZUFBZSxFQUFFLENBQUMsQ0FBQztRQUMvQyxPQUFPLElBQUksQ0FBQyxJQUFJLENBQUMsR0FBRyxDQUFDLEdBQUcsV0FBVyxDQUFDLE9BQU8sWUFBWSxDQUFDLENBQUMsSUFBSSxDQUMzRCxJQUFJLENBQUMsQ0FBQyxDQUFDLEVBQ1AsU0FBUyxDQUFDLE1BQU0sQ0FBQyxFQUFFO1lBQ2pCLElBQUksQ0FBQyxTQUFTLENBQUMsSUFBSSxDQUFDLE1BQU0sQ0FBQyxNQUFNLENBQUMsUUFBUSxFQUFFLE1BQU0sQ0FBQyxDQUFDLENBQUM7WUFDckQsSUFBSSxDQUFDLFNBQVMsRUFBRSxDQUFDO1lBQ2pCLE9BQU8sSUFBSSxDQUFDLFlBQVksRUFBRSxDQUFDO1FBQzdCLENBQUMsQ0FBQyxDQUNILENBQUM7SUFDSixDQUFDO0lBRUQsYUFBYTtRQUNYLElBQUksQ0FBQyxTQUFTLENBQUMsSUFBSSxDQUFDLElBQUksQ0FBQyxDQUFDO1FBQzFCLElBQUksQ0FBQyxVQUFVLENBQUMsSUFBSSxDQUFDLEVBQUUsQ0FBQyxDQUFDO1FBQ3pCLElBQUksQ0FBQyxjQUFjLENBQUMsSUFBSSxDQUFDLElBQUksQ0FBQyxDQUFDO0lBQ2pDLENBQUM7SUFFRCxhQUFhLENBQUMsSUFBSSxFQUFFLEtBQUs7UUFDdkIsT0FBTyxJQUFJLENBQUMsU0FBUyxDQUFDLElBQUksQ0FDeEIsSUFBSSxDQUFDLENBQUMsQ0FBQyxFQUNQLFNBQVMsQ0FBQyxDQUFDLFFBQWMsRUFBRSxFQUFFLENBQUMsRUFBQyxRQUFRLGFBQVIsUUFBUSx1QkFBUixRQUFRLENBQUUsYUFBYSxDQUFBLENBQUMsRUFDdkQsU0FBUyxDQUFDLENBQUMsUUFBYyxFQUFFLEVBQUU7WUFDM0IsSUFBSSxDQUFDLFFBQVEsQ0FBQyxhQUFhLENBQUMsV0FBVyxFQUFFO2dCQUN2QyxRQUFRLENBQUMsYUFBYSxDQUFDLFdBQVcsR0FBRyxFQUFFLENBQUM7YUFDekM7WUFDRCw4REFBOEQ7WUFDOUQsSUFBSSxRQUFRLENBQUMsYUFBYSxDQUFDLFdBQVcsQ0FBQyxJQUFJLENBQUMsS0FBSyxLQUFLLEVBQUU7Z0JBQ3RELE9BQU8sRUFBRSxDQUFDLFFBQVEsQ0FBQyxDQUFDO2FBQ3JCO1lBRUQsd0NBQXdDO1lBQ3hDLFFBQVEsQ0FBQyxhQUFhLENBQUMsV0FBVyxDQUFDLElBQUksQ0FBQyxHQUFHLEtBQUssQ0FBQTtZQUNoRCxPQUFPLElBQUksQ0FBQyxJQUFJLENBQUMsS0FBSyxDQUFDLEdBQUcsV0FBVyxDQUFDLE9BQU8sWUFBWSxFQUFFLEVBQUUsSUFBSSxFQUFFLFFBQVEsRUFBRSxDQUFDLENBQUMsSUFBSSxDQUNqRixHQUFHLENBQUMsR0FBRyxFQUFFLENBQUMsUUFBUSxDQUFDLENBQ3BCLENBQUM7UUFDSixDQUFDLENBQUMsRUFDRixHQUFHLENBQUMsQ0FBQyxRQUFjLEVBQUUsRUFBRTtZQUNyQixNQUFNLEtBQUssR0FBRyxRQUFRLENBQUMsVUFBVSxDQUFDLENBQUMsQ0FBQyxTQUFTLFFBQVEsQ0FBQyxVQUFVLElBQUksQ0FBQyxDQUFDLENBQUMsSUFBSSxDQUFDO1lBQzVFLElBQUksQ0FBQyxNQUFNLENBQUMsSUFBSSxDQUFDLHVDQUF1QyxFQUFFLEtBQUssRUFBRTtnQkFDL0QsV0FBVyxFQUFFLElBQUk7Z0JBQ2pCLFdBQVcsRUFBRSxJQUFJO2dCQUNqQixpQkFBaUIsRUFBRSxZQUFZO2FBQ2hDLENBQUMsQ0FBQztZQUNILElBQUksQ0FBQyxTQUFTLENBQUMsSUFBSSxDQUFDLFFBQVEsQ0FBQyxDQUFDO1FBQ2hDLENBQUMsQ0FBQyxDQUNILENBQUM7SUFDSixDQUFDO0lBRUQsYUFBYSxDQUFDLElBQUk7UUFDaEIsT0FBTyxJQUFJLENBQUMsU0FBUyxDQUFDLElBQUksQ0FDeEIsU0FBUyxDQUFDLENBQUMsUUFBYyxFQUFFLEVBQUUsQ0FBQyxFQUFDLFFBQVEsYUFBUixRQUFRLHVCQUFSLFFBQVEsQ0FBRSxhQUFhLENBQUEsQ0FBQyxFQUN2RCxHQUFHLENBQUMsQ0FBQyxRQUFjLEVBQUUsRUFBRSxDQUFDLFFBQVEsQ0FBQyxhQUFhLENBQUMsV0FBVyxJQUFJLFFBQVEsQ0FBQyxhQUFhLENBQUMsV0FBVyxDQUFDLElBQUksQ0FBQyxLQUFLLElBQUksQ0FBQyxDQUNqSCxDQUFDO0lBQ0osQ0FBQztJQUVELGlCQUFpQixDQUFDLElBQUk7UUFDcEIsT0FBTyxJQUFJLENBQUMsU0FBUyxDQUFDLElBQUksQ0FDeEIsU0FBUyxDQUFDLENBQUMsUUFBYyxFQUFFLEVBQUUsQ0FBQyxFQUFDLFFBQVEsYUFBUixRQUFRLHVCQUFSLFFBQVEsQ0FBRSxhQUFhLENBQUEsQ0FBQyxFQUN2RCxHQUFHLENBQUMsQ0FBQyxRQUFjLEVBQUUsRUFBRSxDQUFDLFFBQVEsQ0FBQyxhQUFhLENBQUMsV0FBVyxJQUFJLFFBQVEsQ0FBQyxhQUFhLENBQUMsV0FBVyxDQUFDLElBQUksQ0FBQyxJQUFJLFNBQVMsQ0FBQyxDQUNySCxDQUFDO0lBQ0osQ0FBQztJQUVELGtCQUFrQjs7UUFDaEIsYUFBTyxJQUFJLENBQUMsU0FBUyxDQUFDLEtBQUssMENBQUUsZUFBZSxDQUFDO0lBQy9DLENBQUM7SUFFTyxZQUFZO1FBQ2xCLE9BQU8sSUFBSSxDQUFDLFNBQVMsQ0FBQyxJQUFJLENBQ3hCLFNBQVMsQ0FBQyxDQUFDLFFBQWMsRUFBRSxFQUFFOztZQUMzQixNQUFNLFdBQVcsR0FBRyxPQUFBLFFBQVEsYUFBUixRQUFRLHVCQUFSLFFBQVEsQ0FBRSxZQUFZLDBDQUFFLGVBQWUsS0FBSSxVQUFVLENBQUM7WUFDMUUsT0FBTyxJQUFJLENBQUMsdUJBQXVCLENBQUMsR0FBRyxDQUFDLFdBQVcsQ0FBQyxDQUFDO1FBQ3ZELENBQUMsQ0FBQyxFQUNGLFNBQVMsQ0FBQyxHQUFHLENBQUMsRUFBRSxDQUFDLEdBQUcsSUFBSSxJQUFJLENBQUMsRUFDN0IsR0FBRyxDQUFDLFFBQVEsQ0FBQyxFQUFFLENBQUMsSUFBSSxDQUFDLGNBQWMsQ0FBQyxJQUFJLENBQUMsUUFBUSxDQUFDLENBQUMsQ0FDcEQsQ0FBQztJQUNKLENBQUM7SUFFTyxTQUFTOztRQUNmLElBQUksQ0FBQyxVQUFVLENBQUMsSUFBSSxDQUFDLGFBQUEsSUFBSSxDQUFDLFNBQVMsQ0FBQyxLQUFLLDBDQUFFLFlBQVksMENBQUUsS0FBSyxLQUFJLEVBQUUsQ0FBQyxDQUFDO0lBQ3hFLENBQUM7SUFFRCxlQUFlO1FBQ2IsT0FBTyxJQUFJLENBQUMsU0FBUyxDQUFDLElBQUksQ0FDeEIsU0FBUyxDQUFDLFFBQVEsQ0FBQyxFQUFFLENBQUMsQ0FBQyxRQUFRLENBQUMsRUFDaEMsU0FBUyxDQUFDLENBQUMsUUFBYyxFQUFFLEVBQUU7WUFDM0IsSUFBSSxDQUFDLFFBQVEsQ0FBQyxVQUFVLEVBQUU7Z0JBQUUsT0FBTyxFQUFFLENBQUMsSUFBSSxDQUFDLENBQUM7YUFBRTtpQkFDekM7Z0JBQ0gsT0FBTyxJQUFJLENBQUMsZ0JBQWdCLENBQUMsR0FBRyxDQUFDLFFBQVEsQ0FBQyxVQUFVLENBQUMsQ0FBQzthQUN2RDtRQUNILENBQUMsQ0FBQyxDQUNILENBQUM7SUFDSixDQUFDOztzRUFqSVUsV0FBVzttREFBWCxXQUFXLFdBQVgsV0FBVyxtQkFGVixNQUFNO2tEQUVQLFdBQVc7Y0FIdkIsVUFBVTtlQUFDO2dCQUNWLFVBQVUsRUFBRSxNQUFNO2FBQ25CIiwic291cmNlc0NvbnRlbnQiOlsiaW1wb3J0IHsgSHR0cENsaWVudCB9IGZyb20gXCJAYW5ndWxhci9jb21tb24vaHR0cFwiO1xuaW1wb3J0IHsgSW5qZWN0YWJsZSB9IGZyb20gXCJAYW5ndWxhci9jb3JlXCI7XG5pbXBvcnQgeyBCZWhhdmlvclN1YmplY3QsIE9ic2VydmFibGUsIG9mIH0gZnJvbSBcInJ4anNcIjtcbmltcG9ydCB7IHRha2UsIHN3aXRjaE1hcCwgc2tpcFdoaWxlLCB0YXAsIG1hcCB9IGZyb20gXCJyeGpzL29wZXJhdG9yc1wiO1xuaW1wb3J0IHsgZW52aXJvbm1lbnQgfSBmcm9tICcuLi9lbnZpcm9ubWVudHMvZW52aXJvbm1lbnQnO1xuaW1wb3J0IHsgUmVjaXBlUHJvdmlkZXIsIFN1cHBsaWVyLCBVc2VyIH0gZnJvbSBcIi4uL19tb2RlbHNcIjtcbmltcG9ydCB7IFN1cHBsaWVyc1NlcnZpY2UsIFJlY2lwZVByb3ZpZGVyU2VydmljZSwgVG9hc3RyU2VydmljZSB9IGZyb20gJy4nO1xuXG5ASW5qZWN0YWJsZSh7XG4gIHByb3ZpZGVkSW46ICdyb290J1xufSlcbmV4cG9ydCBjbGFzcyBVc2VyU2VydmljZSB7XG4gIGlzTG9nZ2VkJCA9IG5ldyBCZWhhdmlvclN1YmplY3QoZmFsc2UpO1xuICBwcmVmZXJlbmNlc0FjdGl2YXRlZCQgPSBuZXcgQmVoYXZpb3JTdWJqZWN0KGZhbHNlKTtcbiAgcHJpdmF0ZSB1c2VySW5mbyQgPSBuZXcgQmVoYXZpb3JTdWJqZWN0PFVzZXI+KHVuZGVmaW5lZCk7XG4gIHByaXZhdGUgdXNlclByb3ZpZGVycyQ6IEJlaGF2aW9yU3ViamVjdDxSZWNpcGVQcm92aWRlcj47XG4gIHByaXZhdGUgdXNlclJvbGVzJDogQmVoYXZpb3JTdWJqZWN0PHN0cmluZ1tdPjtcblxuICBjb25zdHJ1Y3RvcihcbiAgICBwcml2YXRlIGh0dHA6IEh0dHBDbGllbnQsXG4gICAgcHJpdmF0ZSByZWNpcGVzUHJvdmlkZXJzU2VydmljZTogUmVjaXBlUHJvdmlkZXJTZXJ2aWNlLFxuICAgIHByaXZhdGUgdG9hc3RyOiBUb2FzdHJTZXJ2aWNlLFxuICAgIHByaXZhdGUgc3VwcGxpZXJzU2VydmljZTogU3VwcGxpZXJzU2VydmljZVxuICApIHtcbiAgICB0aGlzLnVzZXJSb2xlcyQgPSBuZXcgQmVoYXZpb3JTdWJqZWN0KFtdKTtcbiAgICB0aGlzLnVzZXJQcm92aWRlcnMkID0gbmV3IEJlaGF2aW9yU3ViamVjdCh1bmRlZmluZWQpO1xuICB9XG5cbiAgZ2V0IHVzZXJQcm92aWRlcigpOiBPYnNlcnZhYmxlPFJlY2lwZVByb3ZpZGVyPiB7XG4gICAgcmV0dXJuIHRoaXMudXNlclByb3ZpZGVycyQuYXNPYnNlcnZhYmxlKCkucGlwZShza2lwV2hpbGUocHJvdmlkZXIgPT4gcHJvdmlkZXIgPT09IHVuZGVmaW5lZCkpO1xuICB9XG5cbiAgZ2V0IHVzZXJSb2xlcygpOiBPYnNlcnZhYmxlPHN0cmluZ1tdPiB7XG4gICAgcmV0dXJuIHRoaXMudXNlclJvbGVzJC5hc09ic2VydmFibGUoKTtcbiAgfVxuXG4gIGdldCBpc0FkbWluKCk6IE9ic2VydmFibGU8Ym9vbGVhbj4ge1xuICAgIHJldHVybiB0aGlzLnVzZXJSb2xlcyQucGlwZShzd2l0Y2hNYXAoKHJvbGVzOiBzdHJpbmdbXSkgPT4gb2Yocm9sZXMuaW5jbHVkZXMoJ0FkbWluJykpKSk7XG4gIH1cblxuICBzZXRVc2VyUHJvdmlkZXJNYW51YWxseShwcm92aWRlcjogUmVjaXBlUHJvdmlkZXIpIHtcbiAgICB0aGlzLnVzZXJQcm92aWRlcnMkLm5leHQocHJvdmlkZXIpO1xuICB9XG5cbiAgdG9nZ2xlSXNMb2dnZWQobG9nZ2VkOiBib29sZWFuKSB7XG4gICAgdGhpcy5pc0xvZ2dlZCQubmV4dChsb2dnZWQpO1xuICB9XG5cbiAgc2V0VXNlckluZm8oZm9yYmlkUHJvZmlsaW5nKTogT2JzZXJ2YWJsZTxhbnk+IHtcbiAgICBjb25zdCB1c2VySW5mbyA9IG5ldyBVc2VyKHsgZm9yYmlkUHJvZmlsaW5nIH0pO1xuICAgIHJldHVybiB0aGlzLmh0dHAuZ2V0KGAke2Vudmlyb25tZW50Lm1pYW1BUEl9L3VzZXJfaW5mb2ApLnBpcGUoXG4gICAgICB0YWtlKDEpLFxuICAgICAgc3dpdGNoTWFwKHJlc3VsdCA9PiB7XG4gICAgICAgIHRoaXMudXNlckluZm8kLm5leHQoT2JqZWN0LmFzc2lnbih1c2VySW5mbywgcmVzdWx0KSk7XG4gICAgICAgIHRoaXMuaW5pdFJvbGVzKCk7XG4gICAgICAgIHJldHVybiB0aGlzLmluaXRQcm92aWRlcigpO1xuICAgICAgfSlcbiAgICApO1xuICB9XG5cbiAgcmVzZXRVc2VySW5mbygpIHtcbiAgICB0aGlzLnVzZXJJbmZvJC5uZXh0KG51bGwpO1xuICAgIHRoaXMudXNlclJvbGVzJC5uZXh0KFtdKTtcbiAgICB0aGlzLnVzZXJQcm92aWRlcnMkLm5leHQobnVsbCk7XG4gIH1cblxuICBzZXRQcmVmZXJlbmNlKHByZWYsIHN0YXRlKTogT2JzZXJ2YWJsZTxVc2VyPiB7XG4gICAgcmV0dXJuIHRoaXMudXNlckluZm8kLnBpcGUoXG4gICAgICB0YWtlKDEpLFxuICAgICAgc2tpcFdoaWxlKCh1c2VySW5mbzogVXNlcikgPT4gIXVzZXJJbmZvPy51c2VyX21ldGFkYXRhKSxcbiAgICAgIHN3aXRjaE1hcCgodXNlckluZm86IFVzZXIpID0+IHtcbiAgICAgICAgaWYgKCF1c2VySW5mby51c2VyX21ldGFkYXRhLnByZWZlcmVuY2VzKSB7XG4gICAgICAgICAgdXNlckluZm8udXNlcl9tZXRhZGF0YS5wcmVmZXJlbmNlcyA9IHt9O1xuICAgICAgICB9XG4gICAgICAgIC8vIElmIHRoZSBwcmVmZXJlbmNlIGlzIGFscmVhZHkgc2V0LCB3ZSBzaW1wbHkgcmV0dXJuIHRoZSB1c2VyXG4gICAgICAgIGlmICh1c2VySW5mby51c2VyX21ldGFkYXRhLnByZWZlcmVuY2VzW3ByZWZdID09PSBzdGF0ZSkge1xuICAgICAgICAgIHJldHVybiBvZih1c2VySW5mbyk7XG4gICAgICAgIH1cblxuICAgICAgICAvLyBVcGRhdGUgdGhlIHVzZXIgaW4gYXV0aDAgdmlhIG1pYW0gQVBJXG4gICAgICAgIHVzZXJJbmZvLnVzZXJfbWV0YWRhdGEucHJlZmVyZW5jZXNbcHJlZl0gPSBzdGF0ZVxuICAgICAgICByZXR1cm4gdGhpcy5odHRwLnBhdGNoKGAke2Vudmlyb25tZW50Lm1pYW1BUEl9L3VzZXJfaW5mb2AsIHsgZGF0YTogdXNlckluZm8gfSkucGlwZShcbiAgICAgICAgICBtYXAoKCkgPT4gdXNlckluZm8pXG4gICAgICAgICk7XG4gICAgICB9KSxcbiAgICAgIHRhcCgodXNlckluZm86IFVzZXIpID0+IHtcbiAgICAgICAgY29uc3QgdGl0bGUgPSB1c2VySW5mby5maXJzdF9uYW1lID8gYE1lcmNpICR7dXNlckluZm8uZmlyc3RfbmFtZX0gIWAgOiBudWxsO1xuICAgICAgICB0aGlzLnRvYXN0ci5pbmZvKCdWb3MgcHLDqWbDqXJlbmNlcyBvbnQgw6l0w6kgbWlzZXMgw6Agam91ci4nLCB0aXRsZSwge1xuICAgICAgICAgIGNsb3NlQnV0dG9uOiB0cnVlLFxuICAgICAgICAgIHByb2dyZXNzQmFyOiB0cnVlLFxuICAgICAgICAgIHByb2dyZXNzQW5pbWF0aW9uOiAnZGVjcmVhc2luZydcbiAgICAgICAgfSk7XG4gICAgICAgIHRoaXMudXNlckluZm8kLm5leHQodXNlckluZm8pO1xuICAgICAgfSlcbiAgICApO1xuICB9XG5cbiAgaGFzUHJlZmVyZW5jZShwcmVmKTogT2JzZXJ2YWJsZTxib29sZWFuPiB7XG4gICAgcmV0dXJuIHRoaXMudXNlckluZm8kLnBpcGUoXG4gICAgICBza2lwV2hpbGUoKHVzZXJJbmZvOiBVc2VyKSA9PiAhdXNlckluZm8/LnVzZXJfbWV0YWRhdGEpLFxuICAgICAgbWFwKCh1c2VySW5mbzogVXNlcikgPT4gdXNlckluZm8udXNlcl9tZXRhZGF0YS5wcmVmZXJlbmNlcyAmJiB1c2VySW5mby51c2VyX21ldGFkYXRhLnByZWZlcmVuY2VzW3ByZWZdID09PSB0cnVlKVxuICAgICk7XG4gIH1cblxuICBwcmVmZXJlbmNlRGVmaW5lZChwcmVmKTogT2JzZXJ2YWJsZTxib29sZWFuPiB7XG4gICAgcmV0dXJuIHRoaXMudXNlckluZm8kLnBpcGUoXG4gICAgICBza2lwV2hpbGUoKHVzZXJJbmZvOiBVc2VyKSA9PiAhdXNlckluZm8/LnVzZXJfbWV0YWRhdGEpLFxuICAgICAgbWFwKCh1c2VySW5mbzogVXNlcikgPT4gdXNlckluZm8udXNlcl9tZXRhZGF0YS5wcmVmZXJlbmNlcyAmJiB1c2VySW5mby51c2VyX21ldGFkYXRhLnByZWZlcmVuY2VzW3ByZWZdICE9IHVuZGVmaW5lZClcbiAgICApO1xuICB9XG5cbiAgcHJvZmlsaW5nRm9yYmlkZGVuKCk6IGJvb2xlYW4ge1xuICAgIHJldHVybiB0aGlzLnVzZXJJbmZvJC52YWx1ZT8uZm9yYmlkUHJvZmlsaW5nO1xuICB9XG5cbiAgcHJpdmF0ZSBpbml0UHJvdmlkZXIoKTogT2JzZXJ2YWJsZTxhbnk+IHtcbiAgICByZXR1cm4gdGhpcy51c2VySW5mbyQucGlwZShcbiAgICAgIHN3aXRjaE1hcCgodXNlckluZm86IFVzZXIpID0+IHtcbiAgICAgICAgY29uc3QgcHJvdmlkZXJLZXkgPSB1c2VySW5mbz8uYXBwX21ldGFkYXRhPy5yZWNpcGVfcHJvdmlkZXIgfHwgJ3BlcnNvbmFsJztcbiAgICAgICAgcmV0dXJuIHRoaXMucmVjaXBlc1Byb3ZpZGVyc1NlcnZpY2UuZ2V0KHByb3ZpZGVyS2V5KTtcbiAgICAgIH0pLFxuICAgICAgc2tpcFdoaWxlKHJlcyA9PiByZXMgPT0gbnVsbCksXG4gICAgICB0YXAocHJvdmlkZXIgPT4gdGhpcy51c2VyUHJvdmlkZXJzJC5uZXh0KHByb3ZpZGVyKSlcbiAgICApO1xuICB9XG5cbiAgcHJpdmF0ZSBpbml0Um9sZXMoKTogdm9pZCB7XG4gICAgdGhpcy51c2VyUm9sZXMkLm5leHQodGhpcy51c2VySW5mbyQudmFsdWU/LmFwcF9tZXRhZGF0YT8ucm9sZXMgfHwgW10pO1xuICB9XG5cbiAgZ2V0VXNlclN1cHBsaWVyKCk6IE9ic2VydmFibGU8U3VwcGxpZXI+IHtcbiAgICByZXR1cm4gdGhpcy51c2VySW5mbyQucGlwZShcbiAgICAgIHNraXBXaGlsZSh1c2VySW5mbyA9PiAhdXNlckluZm8pLFxuICAgICAgc3dpdGNoTWFwKCh1c2VySW5mbzogVXNlcikgPT4ge1xuICAgICAgICBpZiAoIXVzZXJJbmZvLnN1cHBsaWVySWQpIHsgcmV0dXJuIG9mKG51bGwpOyB9XG4gICAgICAgIGVsc2Uge1xuICAgICAgICAgIHJldHVybiB0aGlzLnN1cHBsaWVyc1NlcnZpY2UuZ2V0KHVzZXJJbmZvLnN1cHBsaWVySWQpO1xuICAgICAgICB9XG4gICAgICB9KVxuICAgICk7XG4gIH1cbn1cbiJdfQ==
|
|
116
|
+
//# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoidXNlci5zZXJ2aWNlLmpzIiwic291cmNlUm9vdCI6Ii9idWlsZHMvbWlhbS9uZy1taWFtLXNkay9wcm9qZWN0cy9uZy1taWFtL3NyYy8iLCJzb3VyY2VzIjpbImxpYi9fc2VydmljZXMvdXNlci5zZXJ2aWNlLnRzIl0sIm5hbWVzIjpbXSwibWFwcGluZ3MiOiJBQUFBLE9BQU8sRUFBRSxVQUFVLEVBQUUsTUFBTSxzQkFBc0IsQ0FBQztBQUNsRCxPQUFPLEVBQUUsVUFBVSxFQUFFLE1BQU0sZUFBZSxDQUFDO0FBQzNDLE9BQU8sRUFBRSxlQUFlLEVBQWMsRUFBRSxFQUFFLE1BQU0sTUFBTSxDQUFDO0FBQ3ZELE9BQU8sRUFBRSxJQUFJLEVBQUUsU0FBUyxFQUFFLFNBQVMsRUFBRSxHQUFHLEVBQUUsR0FBRyxFQUFFLE1BQU0sZ0JBQWdCLENBQUM7QUFDdEUsT0FBTyxFQUFFLFdBQVcsRUFBRSxNQUFNLDZCQUE2QixDQUFDO0FBQzFELE9BQU8sRUFBNEIsSUFBSSxFQUFFLE1BQU0sWUFBWSxDQUFDO0FBQzVELE9BQU8sRUFBRSxnQkFBZ0IsRUFBRSxxQkFBcUIsRUFBRSxhQUFhLEVBQUUsTUFBTSxHQUFHLENBQUM7Ozs7QUFLM0UsTUFBTSxPQUFPLFdBQVc7SUFPdEIsWUFDVSxJQUFnQixFQUNoQix1QkFBOEMsRUFDOUMsTUFBcUIsRUFDckIsZ0JBQWtDO1FBSGxDLFNBQUksR0FBSixJQUFJLENBQVk7UUFDaEIsNEJBQXVCLEdBQXZCLHVCQUF1QixDQUF1QjtRQUM5QyxXQUFNLEdBQU4sTUFBTSxDQUFlO1FBQ3JCLHFCQUFnQixHQUFoQixnQkFBZ0IsQ0FBa0I7UUFWNUMsY0FBUyxHQUFHLElBQUksZUFBZSxDQUFDLEtBQUssQ0FBQyxDQUFDO1FBQ3ZDLDBCQUFxQixHQUFHLElBQUksZUFBZSxDQUFDLEtBQUssQ0FBQyxDQUFDO1FBQzNDLGNBQVMsR0FBRyxJQUFJLGVBQWUsQ0FBTyxTQUFTLENBQUMsQ0FBQztRQVV2RCxJQUFJLENBQUMsVUFBVSxHQUFHLElBQUks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LGVBQWUsS0FBSSxVQUFVLENBQUM7WUFDMUUsT0FBTyxJQUFJLENBQUMsdUJBQXVCLENBQUMsR0FBRyxDQUFDLFdBQVcsQ0FBQyxDQUFDO1FBQ3ZELENBQUMsQ0FBQyxFQUNGLFNBQVMsQ0FBQyxHQUFHLENBQUMsRUFBRSxDQUFDLEdBQUcsSUFBSSxJQUFJLENBQUMsRUFDN0IsR0FBRyxDQUFDLFFBQVEsQ0FBQyxFQUFFLENBQUMsSUFBSSxDQUFDLGNBQWMsQ0FBQyxJQUFJLENBQUMsUUFBUSxDQUFDLENBQUMsQ0FDcEQsQ0FBQztJQUNKLENBQUM7SUFFTyxTQUFTOztRQUNmLElBQUksQ0FBQyxVQUFVLENBQUMsSUFBSSxDQUFDLGFBQUEsSUFBSSxDQUFDLFNBQVMsQ0FBQyxLQUFLLDBDQUFFLFlBQVksMENBQUUsS0FBSyxLQUFJLEVBQUUsQ0FBQyxDQUFDO0lBQ3hFLENBQUM7O3NFQXZJVSxXQUFXO21EQUFYLFdBQVcsV0FBWCxXQUFXLG1CQUZWLE1BQU07a0RBRVAsV0FBVztjQUh2QixVQUFVO2VBQUM7Z0JBQ1YsVUFBVSxFQUFFLE1BQU07YUFDbkIiLCJzb3VyY2VzQ29udGVudCI6WyJpbXBvcnQgeyBIdHRwQ2xpZW50IH0gZnJvbSBcIkBhbmd1bGFyL2NvbW1vbi9odHRwXCI7XG5pbXBvcnQgeyBJbmplY3RhYmxlIH0gZnJvbSBcIkBhbmd1bGFyL2NvcmVcIjtcbmltcG9ydCB7IEJlaGF2aW9yU3ViamVjdCwgT2JzZXJ2YWJsZSwgb2YgfSBmcm9tIFwicnhqc1wiO1xuaW1wb3J0IHsgdGFrZSwgc3dpdGNoTWFwLCBza2lwV2hpbGUsIHRhcCwgbWFwIH0gZnJvbSBcInJ4anMvb3BlcmF0b3JzXCI7XG5pbXBvcnQgeyBlbnZpcm9ubWVudCB9IGZyb20gJy4uL2Vudmlyb25tZW50cy9lbnZpcm9ubWVudCc7XG5pbXBvcnQgeyBSZWNpcGVQcm92aWRlciwgU3VwcGxpZXIsIFVzZXIgfSBmcm9tIFwiLi4vX21vZGVsc1wiO1xuaW1wb3J0IHsgU3VwcGxpZXJzU2VydmljZSwgUmVjaXBlUHJvdmlkZXJTZXJ2aWNlLCBUb2FzdHJTZXJ2aWNlIH0gZnJvbSAnLic7XG5cbkBJbmplY3RhYmxlKHtcbiAgcHJvdmlkZWRJbjogJ3Jvb3QnXG59KVxuZXhwb3J0IGNsYXNzIFVzZXJTZXJ2aWNlIHtcbiAgaXNMb2dnZWQkID0gbmV3IEJlaGF2aW9yU3ViamVjdChmYWxzZSk7XG4gIHByZWZlcmVuY2VzQWN0aXZhdGVkJCA9IG5ldyBCZWhhdmlvclN1YmplY3QoZmFsc2UpO1xuICBwcml2YXRlIHVzZXJJbmZvJCA9IG5ldyBCZWhhdmlvclN1YmplY3Q8VXNlcj4odW5kZWZpbmVkKTtcbiAgcHJpdmF0ZSB1c2VyUHJvdmlkZXJzJDogQmVoYXZpb3JTdWJqZWN0PFJlY2lwZVByb3ZpZGVyPjtcbiAgcHJpdmF0ZSB1c2VyUm9sZXMkOiBCZWhhdmlvclN1YmplY3Q8c3RyaW5nW10+O1xuXG4gIGNvbnN0cnVjdG9yKFxuICAgIHByaXZhdGUgaHR0cDogSHR0cENsaWVudCxcbiAgICBwcml2YXRlIHJlY2lwZXNQcm92aWRlcnNTZXJ2aWNlOiBSZWNpcGVQcm92aWRlclNlcnZpY2UsXG4gICAgcHJpdmF0ZSB0b2FzdHI6IFRvYXN0clNlcnZpY2UsXG4gICAgcHJpdmF0ZSBzdXBwbGllcnNTZXJ2aWNlOiBTdXBwbGllcnNTZXJ2aWNlXG4gICkge1xuICAgIHRoaXMudXNlclJvbGVzJCA9IG5ldyBCZWhhdmlvclN1YmplY3QoW10pO1xuICAgIHRoaXMudXNlclByb3ZpZGVycyQgPSBuZXcgQmVoYXZpb3JTdWJqZWN0KHVuZGVmaW5lZCk7XG4gIH1cblxuICBnZXQgdXNlclByb3ZpZGVyKCk6IE9ic2VydmFibGU8UmVjaXBlUHJvdmlkZXI+IHtcbiAgICByZXR1cm4gdGhpcy51c2VyUHJvdmlkZXJzJC5hc09ic2VydmFibGUoKS5waXBlKHNraXBXaGlsZShwcm92aWRlciA9PiBwcm92aWRlciA9PT0gdW5kZWZpbmVkKSk7XG4gIH1cblxuICBnZXQgdXNlclJvbGVzKCk6IE9ic2VydmFibGU8c3RyaW5nW10+IHtcbiAgICByZXR1cm4gdGhpcy51c2VyUm9sZXMkLmFzT2JzZXJ2YWJsZSgpO1xuICB9XG5cbiAgZ2V0IGlzQWRtaW4oKTogT2JzZXJ2YWJsZTxib29sZWFuPiB7XG4gICAgcmV0dXJuIHRoaXMudXNlclJvbGVzJC5waXBlKHN3aXRjaE1hcCgocm9sZXM6IHN0cmluZ1tdKSA9PiBvZihyb2xlcy5pbmNsdWRlcygnQWRtaW4nKSkpKTtcbiAgfVxuXG4gIHNldFVzZXJQcm92aWRlck1hbnVhbGx5KHByb3ZpZGVyOiBSZWNpcGVQcm92aWRlcikge1xuICAgIHRoaXMudXNlclByb3ZpZGVycyQubmV4dChwcm92aWRlcik7XG4gIH1cblxuICB0b2dnbGVJc0xvZ2dlZChsb2dnZWQ6IGJvb2xlYW4pIHtcbiAgICB0aGlzLmlzTG9nZ2VkJC5uZXh0KGxvZ2dlZCk7XG4gIH1cblxuICBzZXRVc2VySW5mbyhmb3JiaWRQcm9maWxpbmcpOiBPYnNlcnZhYmxlPGFueT4ge1xuICAgIGNvbnN0IHVzZXJJbmZvID0gbmV3IFVzZXIoeyBmb3JiaWRQcm9maWxpbmcgfSk7XG4gICAgcmV0dXJuIHRoaXMuaHR0cC5nZXQoYCR7ZW52aXJvbm1lbnQubWlhbUFQSX0vdXNlcl9pbmZvYCkucGlwZShcbiAgICAgIHRha2UoMSksXG4gICAgICBzd2l0Y2hNYXAocmVzdWx0ID0+IHtcbiAgICAgICAgdGhpcy51c2VySW5mbyQubmV4dChPYmplY3QuYXNzaWduKHVzZXJJbmZvLCByZXN1bHQpKTtcbiAgICAgICAgdGhpcy5pbml0Um9sZXMoKTtcbiAgICAgICAgcmV0dXJuIHRoaXMuaW5pdFByb3ZpZGVyKCk7XG4gICAgICB9KVxuICAgICk7XG4gIH1cblxuICByZXNldFVzZXJJbmZvKCkge1xuICAgIHRoaXMudXNlckluZm8kLm5leHQobnVsbCk7XG4gICAgdGhpcy51c2VyUm9sZXMkLm5leHQoW10pO1xuICAgIHRoaXMudXNlclByb3ZpZGVycyQubmV4dChudWxsKTtcbiAgfVxuXG4gIHNldFByZWZlcmVuY2UocHJlZiwgc3RhdGUpOiBPYnNlcnZhYmxlPFVzZXI+IHtcbiAgICByZXR1cm4gdGhpcy51c2VySW5mbyQucGlwZShcbiAgICAgIHRha2UoMSksXG4gICAgICBza2lwV2hpbGUoKHVzZXJJbmZvOiBVc2VyKSA9PiAhdXNlckluZm8/LnVzZXJfbWV0YWRhdGEpLFxuICAgICAgc3dpdGNoTWFwKCh1c2VySW5mbzogVXNlcikgPT4ge1xuICAgICAgICBpZiAoIXVzZXJJbmZvLnVzZXJfbWV0YWRhdGEucHJlZmVyZW5jZXMpIHtcbiAgICAgICAgICB1c2VySW5mby51c2VyX21ldGFkYXRhLnByZWZlcmVuY2VzID0ge307XG4gICAgICAgIH1cbiAgICAgICAgLy8gSWYgdGhlIHByZWZlcmVuY2UgaXMgYWxyZWFkeSBzZXQsIHdlIHNpbXBseSByZXR1cm4gdGhlIHVzZXJcbiAgICAgICAgaWYgKHVzZXJJbmZvLnVzZXJfbWV0YWRhdGEucHJlZmVyZW5jZXNbcHJlZl0gPT09IHN0YXRlKSB7XG4gICAgICAgICAgcmV0dXJuIG9mKHVzZXJJbmZvKTtcbiAgICAgICAgfVxuXG4gICAgICAgIC8vIFVwZGF0ZSB0aGUgdXNlciBpbiBhdXRoMCB2aWEgbWlhbSBBUElcbiAgICAgICAgdXNlckluZm8udXNlcl9tZXRhZGF0YS5wcmVmZXJlbmNlc1twcmVmXSA9IHN0YXRlXG4gICAgICAgIHJldHVybiB0aGlzLmh0dHAucGF0Y2goYCR7ZW52aXJvbm1lbnQubWlhbUFQSX0vdXNlcl9pbmZvYCwgeyBkYXRhOiB1c2VySW5mbyB9KS5waXBlKFxuICAgICAgICAgIG1hcCgoKSA9PiB1c2VySW5mbylcbiAgICAgICAgKTtcbiAgICAgIH0pLFxuICAgICAgdGFwKCh1c2VySW5mbzogVXNlcikgPT4ge1xuICAgICAgICBjb25zdCB0aXRsZSA9IHVzZXJJbmZvLmZpcnN0X25hbWUgPyBgTWVyY2kgJHt1c2VySW5mby5maXJzdF9uYW1lfSAhYCA6IG51bGw7XG4gICAgICAgIHRoaXMudG9hc3RyLmluZm8oJ1ZvcyBwcsOpZsOpcmVuY2VzIG9udCDDqXTDqSBtaXNlcyDDoCBqb3VyLicsIHRpdGxlLCB7XG4gICAgICAgICAgY2xvc2VCdXR0b246IHRydWUsXG4gICAgICAgICAgcHJvZ3Jlc3NCYXI6IHRydWUsXG4gICAgICAgICAgcHJvZ3Jlc3NBbmltYXRpb246ICdkZWNyZWFzaW5nJ1xuICAgICAgICB9KTtcbiAgICAgICAgdGhpcy51c2VySW5mbyQubmV4dCh1c2VySW5mbyk7XG4gICAgICB9KVxuICAgICk7XG4gIH1cblxuICBoYXNQcmVmZXJlbmNlKHByZWYpOiBPYnNlcnZhYmxlPGJvb2xlYW4+IHtcbiAgICByZXR1cm4gdGhpcy51c2VySW5mbyQucGlwZShcbiAgICAgIHNraXBXaGlsZSgodXNlckluZm86IFVzZXIpID0+ICF1c2VySW5mbz8udXNlcl9tZXRhZGF0YSksXG4gICAgICBtYXAoKHVzZXJJbmZvOiBVc2VyKSA9PiB1c2VySW5mby51c2VyX21ldGFkYXRhLnByZWZlcmVuY2VzICYmIHVzZXJJbmZvLnVzZXJfbWV0YWRhdGEucHJlZmVyZW5jZXNbcHJlZl0gPT09IHRydWUpXG4gICAgKTtcbiAgfVxuXG4gIHByZWZlcmVuY2VEZWZpbmVkKHByZWYpOiBPYnNlcnZhYmxlPGJvb2xlYW4+IHtcbiAgICByZXR1cm4gdGhpcy51c2VySW5mbyQucGlwZShcbiAgICAgIHNraXBXaGlsZSgodXNlckluZm86IFVzZXIpID0+ICF1c2VySW5mbz8udXNlcl9tZXRhZGF0YSksXG4gICAgICBtYXAoKHVzZXJJbmZvOiBVc2VyKSA9PiB1c2VySW5mby51c2VyX21ldGFkYXRhLnByZWZlcmVuY2VzICYmIHVzZXJJbmZvLnVzZXJfbWV0YWRhdGEucHJlZmVyZW5jZXNbcHJlZl0gIT0gdW5kZWZpbmVkKVxuICAgICk7XG4gIH1cblxuICBwcm9maWxpbmdGb3JiaWRkZW4oKTogYm9vbGVhbiB7XG4gICAgcmV0dXJuIHRoaXMudXNlckluZm8kLnZhbHVlPy5mb3JiaWRQcm9maWxpbmc7XG4gIH1cblxuICBnZXRVc2VyU3VwcGxpZXIoKTogT2JzZXJ2YWJsZTxTdXBwbGllcj4ge1xuICAgIHJldHVybiB0aGlzLnVzZXJJbmZvJC5waXBlKFxuICAgICAgc2tpcFdoaWxlKHVzZXJJbmZvID0+ICF1c2VySW5mbyksXG4gICAgICBzd2l0Y2hNYXAoKHVzZXJJbmZvOiBVc2VyKSA9PiB7XG4gICAgICAgIGlmICghdXNlckluZm8uc3VwcGxpZXJJZCkgeyByZXR1cm4gb2YobnVsbCk7IH1cbiAgICAgICAgZWxzZSB7XG4gICAgICAgICAgcmV0dXJuIHRoaXMuc3VwcGxpZXJzU2VydmljZS5nZXQodXNlckluZm8uc3VwcGxpZXJJZCk7XG4gICAgICAgIH1cbiAgICAgIH0pXG4gICAgKTtcbiAgfVxuXG4gIGNhbihwZXJtaXNzaW9uKTogT2JzZXJ2YWJsZTxib29sZWFuPiB7XG4gICAgcmV0dXJuIHRoaXMudXNlckluZm8kLnBpcGUoXG4gICAgICBtYXAoaW5mbyA9PiBpbmZvPy5hcHBfbWV0YWRhdGE/LnBlcm1pc3Npb25zPy5pbmNsdWRlcyhwZXJtaXNzaW9uKSlcbiAgICApO1xuICB9XG5cbiAgcHJpdmF0ZSBpbml0UHJvdmlkZXIoKTogT2JzZXJ2YWJsZTxhbnk+IHtcbiAgICByZXR1cm4gdGhpcy51c2VySW5mbyQucGlwZShcbiAgICAgIHN3aXRjaE1hcCgodXNlckluZm86IFVzZXIpID0+IHtcbiAgICAgICAgY29uc3QgcHJvdmlkZXJLZXkgPSB1c2VySW5mbz8uYXBwX21ldGFkYXRhPy5yZWNpcGVfcHJvdmlkZXIgfHwgJ3BlcnNvbmFsJztcbiAgICAgICAgcmV0dXJuIHRoaXMucmVjaXBlc1Byb3ZpZGVyc1NlcnZpY2UuZ2V0KHByb3ZpZGVyS2V5KTtcbiAgICAgIH0pLFxuICAgICAgc2tpcFdoaWxlKHJlcyA9PiByZXMgPT0gbnVsbCksXG4gICAgICB0YXAocHJvdmlkZXIgPT4gdGhpcy51c2VyUHJvdmlkZXJzJC5uZXh0KHByb3ZpZGVyKSlcbiAgICApO1xuICB9XG5cbiAgcHJpdmF0ZSBpbml0Um9sZXMoKTogdm9pZCB7XG4gICAgdGhpcy51c2VyUm9sZXMkLm5leHQodGhpcy51c2VySW5mbyQudmFsdWU/LmFwcF9tZXRhZGF0YT8ucm9sZXMgfHwgW10pO1xuICB9XG59XG4iXX0=
|