ng-miam 3.3.2 → 3.4.3
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 +1844 -1111
- package/bundles/ng-miam.umd.js.map +1 -1
- package/bundles/ng-miam.umd.min.js +2 -2
- package/bundles/ng-miam.umd.min.js.map +1 -1
- package/esm2015/lib/_components/abstracts/abstract-recipe-card.component.js +1 -1
- package/esm2015/lib/_components/icon/icon.component.js +23 -6
- package/esm2015/lib/_components/recipe-filters/recipe-filters.component.js +94 -40
- package/esm2015/lib/_components/text-input/text-input.component.js +6 -4
- package/esm2015/lib/_models/article.js +43 -0
- package/esm2015/lib/_models/basket.js +2 -2
- package/esm2015/lib/_models/index.js +4 -1
- package/esm2015/lib/_models/ingredient.js +11 -7
- package/esm2015/lib/_models/package.js +14 -3
- package/esm2015/lib/_models/recipe.js +6 -2
- package/esm2015/lib/_models/user.js +10 -1
- package/esm2015/lib/_services/analytics.service.js +3 -3
- package/esm2015/lib/_services/articles.service.js +21 -0
- package/esm2015/lib/_services/baskets.service.js +2 -2
- package/esm2015/lib/_services/context.service.js +19 -1
- package/esm2015/lib/_services/groceries-lists.service.js +2 -2
- package/esm2015/lib/_services/index.js +3 -1
- package/esm2015/lib/_services/ingredients.service.js +2 -2
- package/esm2015/lib/_services/interceptor.service.js +2 -3
- package/esm2015/lib/_services/package.service.js +32 -9
- package/esm2015/lib/_services/recipe-events.service.js +2 -2
- package/esm2015/lib/_services/recipe-likes.service.js +6 -2
- package/esm2015/lib/_services/recipe-share.service.js +2 -2
- package/esm2015/lib/_services/recipes.service.js +2 -2
- package/esm2015/lib/_services/suppliers.service.js +2 -2
- package/esm2015/lib/_services/toastr.service.js +52 -0
- package/esm2015/lib/_services/user.service.js +64 -21
- package/esm2015/lib/_types/icon.enum.js +2 -1
- package/esm2015/lib/_web-components/catalog-article-card/catalog-article-card.component.js +71 -0
- package/esm2015/lib/_web-components/catalog-category/catalog-category.component.js +134 -92
- package/esm2015/lib/_web-components/catalog-header/catalog-header.component.js +51 -34
- package/esm2015/lib/_web-components/catalog-list/catalog-list.component.js +106 -61
- package/esm2015/lib/_web-components/catalog-recipe-card/catalog-recipe-card.component.js +65 -52
- package/esm2015/lib/_web-components/favorite-page/favorite-page.component.js +8 -6
- package/esm2015/lib/_web-components/index.js +2 -1
- package/esm2015/lib/_web-components/personal-recipes/personal-recipes.component.js +7 -5
- package/esm2015/lib/_web-components/recipe-card/recipe-card.component.js +73 -58
- package/esm2015/lib/_web-components/recipe-catalog/recipe-catalog.component.js +152 -92
- package/esm2015/lib/_web-components/recipe-details/recipe-details.component.js +355 -278
- package/esm2015/lib/_web-components/suggestion-card/suggestion-card.component.js +3 -6
- package/esm2015/lib/_web-components/web-components.module.js +17 -9
- package/esm2015/lib/environments/environment.js +6 -0
- package/esm2015/lib/ng-miam.module.js +4 -4
- package/fesm2015/ng-miam.js +1755 -1140
- package/fesm2015/ng-miam.js.map +1 -1
- package/lib/_components/abstracts/abstract-recipe-card.component.d.ts +1 -1
- package/lib/_components/recipe-filters/recipe-filters.component.d.ts +14 -4
- package/lib/_components/text-input/text-input.component.d.ts +2 -1
- package/lib/_models/article.d.ts +23 -0
- package/lib/_models/basket.d.ts +1 -2
- package/lib/_models/index.d.ts +3 -0
- package/lib/_models/ingredient.d.ts +2 -0
- package/lib/_models/package.d.ts +10 -3
- package/lib/_models/recipe.d.ts +2 -0
- package/lib/_models/user.d.ts +16 -1
- package/lib/_services/articles.service.d.ts +10 -0
- package/lib/_services/context.service.d.ts +14 -6
- package/lib/_services/index.d.ts +2 -0
- package/lib/_services/package.service.d.ts +6 -1
- package/lib/_services/toastr.service.d.ts +10 -0
- package/lib/_services/user.service.d.ts +12 -6
- package/lib/_types/icon.enum.d.ts +2 -1
- package/lib/_web-components/catalog-article-card/catalog-article-card.component.d.ts +8 -0
- package/lib/_web-components/catalog-category/catalog-category.component.d.ts +12 -7
- package/lib/_web-components/catalog-header/catalog-header.component.d.ts +5 -2
- package/lib/_web-components/catalog-list/catalog-list.component.d.ts +13 -6
- package/lib/_web-components/catalog-recipe-card/catalog-recipe-card.component.d.ts +1 -0
- package/lib/_web-components/favorite-page/favorite-page.component.d.ts +0 -1
- package/lib/_web-components/index.d.ts +1 -0
- package/lib/_web-components/personal-recipes/personal-recipes.component.d.ts +0 -1
- package/lib/_web-components/recipe-card/recipe-card.component.d.ts +1 -0
- package/lib/_web-components/recipe-catalog/recipe-catalog.component.d.ts +13 -4
- package/lib/_web-components/recipe-details/recipe-details.component.d.ts +19 -6
- package/lib/_web-components/suggestion-card/suggestion-card.component.d.ts +0 -1
- package/lib/_web-components/web-components.module.d.ts +13 -11
- package/lib/environments/environment.d.ts +5 -0
- package/miam-style.css +1 -1
- package/package.json +1 -1
- package/esm2015/lib/environment.js +0 -18
- package/lib/environment.d.ts +0 -5
|
@@ -1,4 +1,4 @@
|
|
|
1
|
-
import { Component, ViewEncapsulation, ChangeDetectionStrategy, Input, ChangeDetectorRef, Output, EventEmitter,
|
|
1
|
+
import { Component, ViewEncapsulation, ChangeDetectionStrategy, Input, ChangeDetectorRef, Output, EventEmitter, ViewChild, ElementRef } from '@angular/core';
|
|
2
2
|
import { Recipe } from '../../_models/recipe';
|
|
3
3
|
import { Icon } from '../../_types/icon.enum';
|
|
4
4
|
import { ContextService, GroceriesListsService, PointOfSalesService, RecipeEventsService, UserService } from '../../_services';
|
|
@@ -12,479 +12,514 @@ import * as i2 from "../../_services";
|
|
|
12
12
|
import * as i3 from "@angular/common";
|
|
13
13
|
import * as i4 from "../../_components/icon/icon.component";
|
|
14
14
|
import * as i5 from "../../_components/recipe-pricing/recipe-pricing.component";
|
|
15
|
-
import * as i6 from "
|
|
16
|
-
import * as i7 from "../../_components/
|
|
17
|
-
import * as i8 from "../../_components/
|
|
18
|
-
import * as i9 from "
|
|
19
|
-
import * as i10 from "
|
|
20
|
-
import * as i11 from "../../_utils/pipes/
|
|
21
|
-
|
|
22
|
-
|
|
15
|
+
import * as i6 from "@angular/youtube-player";
|
|
16
|
+
import * as i7 from "../../_components/like-button/like-button.component";
|
|
17
|
+
import * as i8 from "../../_components/addon-link/addon-link.component";
|
|
18
|
+
import * as i9 from "../../_components/counter-input/counter-input.component";
|
|
19
|
+
import * as i10 from "../recipe-addon/recipe-addon.component";
|
|
20
|
+
import * as i11 from "../../_utils/pipes/capitalize-first-letter/capitalize-first-letter.pipe";
|
|
21
|
+
import * as i12 from "../../_utils/pipes/readable-float-number/readable-float-number.pipe";
|
|
22
|
+
const _c0 = ["topContainerImg"];
|
|
23
|
+
const _c1 = ["mainContainer"];
|
|
24
|
+
function RecipeDetailsComponent_div_0_img_6_Template(rf, ctx) { if (rf & 1) {
|
|
25
|
+
i0.ɵɵelement(0, "img", 40);
|
|
26
|
+
} if (rf & 2) {
|
|
27
|
+
const ctx_r5 = i0.ɵɵnextContext(2);
|
|
28
|
+
i0.ɵɵproperty("src", ctx_r5.recipe == null ? null : ctx_r5.recipe.attributes["media-url"], i0.ɵɵsanitizeUrl);
|
|
29
|
+
} }
|
|
30
|
+
function RecipeDetailsComponent_div_0_div_7_Template(rf, ctx) { if (rf & 1) {
|
|
31
|
+
i0.ɵɵelement(0, "div", 41);
|
|
32
|
+
} }
|
|
33
|
+
function RecipeDetailsComponent_div_0_youtube_player_8_Template(rf, ctx) { if (rf & 1) {
|
|
34
|
+
i0.ɵɵelement(0, "youtube-player", 42);
|
|
35
|
+
} if (rf & 2) {
|
|
36
|
+
const ctx_r7 = i0.ɵɵnextContext(2);
|
|
37
|
+
i0.ɵɵproperty("videoId", ctx_r7.recipe.videoId)("width", ctx_r7.playerWidth)("height", ctx_r7.playerHeight);
|
|
38
|
+
} }
|
|
39
|
+
function RecipeDetailsComponent_div_0_div_9_Template(rf, ctx) { if (rf & 1) {
|
|
40
|
+
i0.ɵɵelementStart(0, "div", 43);
|
|
23
41
|
i0.ɵɵtext(1, "D\u00E9j\u00E0 ajout\u00E9e");
|
|
24
42
|
i0.ɵɵelementEnd();
|
|
25
43
|
} }
|
|
26
|
-
function
|
|
27
|
-
i0.ɵɵelement(0, "ng-miam-like-button",
|
|
44
|
+
function RecipeDetailsComponent_div_0_ng_miam_like_button_12_Template(rf, ctx) { if (rf & 1) {
|
|
45
|
+
i0.ɵɵelement(0, "ng-miam-like-button", 44);
|
|
28
46
|
} if (rf & 2) {
|
|
29
|
-
const
|
|
30
|
-
i0.ɵɵproperty("recipe",
|
|
47
|
+
const ctx_r9 = i0.ɵɵnextContext(2);
|
|
48
|
+
i0.ɵɵproperty("recipe", ctx_r9.recipe)("width", 26)("height", 26);
|
|
31
49
|
} }
|
|
32
|
-
function
|
|
33
|
-
i0.ɵɵelement(0, "img",
|
|
50
|
+
function RecipeDetailsComponent_div_0_img_16_Template(rf, ctx) { if (rf & 1) {
|
|
51
|
+
i0.ɵɵelement(0, "img", 45);
|
|
34
52
|
} if (rf & 2) {
|
|
35
|
-
const
|
|
36
|
-
i0.ɵɵpropertyInterpolate("src",
|
|
53
|
+
const ctx_r10 = i0.ɵɵnextContext(2);
|
|
54
|
+
i0.ɵɵpropertyInterpolate("src", ctx_r10.recipe.filigraneLogoUrl, i0.ɵɵsanitizeUrl);
|
|
37
55
|
} }
|
|
38
|
-
function
|
|
39
|
-
i0.ɵɵelementStart(0, "div",
|
|
56
|
+
function RecipeDetailsComponent_div_0_div_23_Template(rf, ctx) { if (rf & 1) {
|
|
57
|
+
i0.ɵɵelementStart(0, "div", 46);
|
|
40
58
|
i0.ɵɵelementStart(1, "span");
|
|
41
59
|
i0.ɵɵtext(2, "Pr\u00E9paration");
|
|
42
60
|
i0.ɵɵelementEnd();
|
|
43
|
-
i0.ɵɵelementStart(3, "div",
|
|
44
|
-
i0.ɵɵelement(4, "ng-miam-icon",
|
|
61
|
+
i0.ɵɵelementStart(3, "div", 47);
|
|
62
|
+
i0.ɵɵelement(4, "ng-miam-icon", 48);
|
|
45
63
|
i0.ɵɵelementStart(5, "span");
|
|
46
64
|
i0.ɵɵtext(6);
|
|
47
65
|
i0.ɵɵelementEnd();
|
|
48
66
|
i0.ɵɵelementEnd();
|
|
49
67
|
i0.ɵɵelementEnd();
|
|
50
68
|
} if (rf & 2) {
|
|
51
|
-
const
|
|
69
|
+
const ctx_r11 = i0.ɵɵnextContext(2);
|
|
52
70
|
i0.ɵɵadvance(4);
|
|
53
|
-
i0.ɵɵproperty("width", 24)("height", 24)("iconName",
|
|
71
|
+
i0.ɵɵproperty("width", 24)("height", 24)("iconName", ctx_r11.icon.Preparation);
|
|
54
72
|
i0.ɵɵadvance(2);
|
|
55
|
-
i0.ɵɵtextInterpolate(
|
|
73
|
+
i0.ɵɵtextInterpolate(ctx_r11.recipe == null ? null : ctx_r11.recipe.preparationTime);
|
|
56
74
|
} }
|
|
57
|
-
function
|
|
58
|
-
i0.ɵɵelementStart(0, "div",
|
|
75
|
+
function RecipeDetailsComponent_div_0_div_24_Template(rf, ctx) { if (rf & 1) {
|
|
76
|
+
i0.ɵɵelementStart(0, "div", 46);
|
|
59
77
|
i0.ɵɵelementStart(1, "span");
|
|
60
78
|
i0.ɵɵtext(2, "Cuisson");
|
|
61
79
|
i0.ɵɵelementEnd();
|
|
62
|
-
i0.ɵɵelementStart(3, "div",
|
|
63
|
-
i0.ɵɵelement(4, "ng-miam-icon",
|
|
80
|
+
i0.ɵɵelementStart(3, "div", 47);
|
|
81
|
+
i0.ɵɵelement(4, "ng-miam-icon", 48);
|
|
64
82
|
i0.ɵɵelementStart(5, "span");
|
|
65
83
|
i0.ɵɵtext(6);
|
|
66
84
|
i0.ɵɵelementEnd();
|
|
67
85
|
i0.ɵɵelementEnd();
|
|
68
86
|
i0.ɵɵelementEnd();
|
|
69
87
|
} if (rf & 2) {
|
|
70
|
-
const
|
|
88
|
+
const ctx_r12 = i0.ɵɵnextContext(2);
|
|
71
89
|
i0.ɵɵadvance(4);
|
|
72
|
-
i0.ɵɵproperty("width", 24)("height", 24)("iconName",
|
|
90
|
+
i0.ɵɵproperty("width", 24)("height", 24)("iconName", ctx_r12.icon.Hot);
|
|
73
91
|
i0.ɵɵadvance(2);
|
|
74
|
-
i0.ɵɵtextInterpolate(
|
|
92
|
+
i0.ɵɵtextInterpolate(ctx_r12.recipe == null ? null : ctx_r12.recipe.cookingTime);
|
|
75
93
|
} }
|
|
76
|
-
function
|
|
77
|
-
i0.ɵɵelementStart(0, "div",
|
|
94
|
+
function RecipeDetailsComponent_div_0_div_25_Template(rf, ctx) { if (rf & 1) {
|
|
95
|
+
i0.ɵɵelementStart(0, "div", 46);
|
|
78
96
|
i0.ɵɵelementStart(1, "span");
|
|
79
97
|
i0.ɵɵtext(2, "Repos");
|
|
80
98
|
i0.ɵɵelementEnd();
|
|
81
|
-
i0.ɵɵelementStart(3, "div",
|
|
82
|
-
i0.ɵɵelement(4, "ng-miam-icon",
|
|
99
|
+
i0.ɵɵelementStart(3, "div", 47);
|
|
100
|
+
i0.ɵɵelement(4, "ng-miam-icon", 48);
|
|
83
101
|
i0.ɵɵelementStart(5, "span");
|
|
84
102
|
i0.ɵɵtext(6);
|
|
85
103
|
i0.ɵɵelementEnd();
|
|
86
104
|
i0.ɵɵelementEnd();
|
|
87
105
|
i0.ɵɵelementEnd();
|
|
88
106
|
} if (rf & 2) {
|
|
89
|
-
const
|
|
107
|
+
const ctx_r13 = i0.ɵɵnextContext(2);
|
|
90
108
|
i0.ɵɵadvance(4);
|
|
91
|
-
i0.ɵɵproperty("width", 24)("height", 24)("iconName",
|
|
109
|
+
i0.ɵɵproperty("width", 24)("height", 24)("iconName", ctx_r13.icon.Wait);
|
|
92
110
|
i0.ɵɵadvance(2);
|
|
93
|
-
i0.ɵɵtextInterpolate(
|
|
111
|
+
i0.ɵɵtextInterpolate(ctx_r13.recipe == null ? null : ctx_r13.recipe.restingTime);
|
|
94
112
|
} }
|
|
95
|
-
function
|
|
113
|
+
function RecipeDetailsComponent_div_0_ng_container_35_Template(rf, ctx) { if (rf & 1) {
|
|
96
114
|
i0.ɵɵelementContainerStart(0);
|
|
97
|
-
i0.ɵɵelement(1, "ng-miam-icon",
|
|
115
|
+
i0.ɵɵelement(1, "ng-miam-icon", 49);
|
|
98
116
|
i0.ɵɵelementContainerEnd();
|
|
99
117
|
} if (rf & 2) {
|
|
100
|
-
const
|
|
118
|
+
const ctx_r14 = i0.ɵɵnextContext(2);
|
|
101
119
|
i0.ɵɵadvance(1);
|
|
102
|
-
i0.ɵɵproperty("width", 56)("height", 16)("iconName",
|
|
120
|
+
i0.ɵɵproperty("width", 56)("height", 16)("iconName", ctx_r14.icon.DifficultyLow);
|
|
103
121
|
} }
|
|
104
|
-
function
|
|
122
|
+
function RecipeDetailsComponent_div_0_ng_container_36_Template(rf, ctx) { if (rf & 1) {
|
|
105
123
|
i0.ɵɵelementContainerStart(0);
|
|
106
|
-
i0.ɵɵelement(1, "ng-miam-icon",
|
|
124
|
+
i0.ɵɵelement(1, "ng-miam-icon", 49);
|
|
107
125
|
i0.ɵɵelementContainerEnd();
|
|
108
126
|
} if (rf & 2) {
|
|
109
|
-
const
|
|
127
|
+
const ctx_r15 = i0.ɵɵnextContext(2);
|
|
110
128
|
i0.ɵɵadvance(1);
|
|
111
|
-
i0.ɵɵproperty("width", 56)("height", 16)("iconName",
|
|
129
|
+
i0.ɵɵproperty("width", 56)("height", 16)("iconName", ctx_r15.icon.DifficultyMedium);
|
|
112
130
|
} }
|
|
113
|
-
function
|
|
131
|
+
function RecipeDetailsComponent_div_0_ng_container_37_Template(rf, ctx) { if (rf & 1) {
|
|
114
132
|
i0.ɵɵelementContainerStart(0);
|
|
115
|
-
i0.ɵɵelement(1, "ng-miam-icon",
|
|
133
|
+
i0.ɵɵelement(1, "ng-miam-icon", 49);
|
|
116
134
|
i0.ɵɵelementContainerEnd();
|
|
117
135
|
} if (rf & 2) {
|
|
118
|
-
const
|
|
136
|
+
const ctx_r16 = i0.ɵɵnextContext(2);
|
|
119
137
|
i0.ɵɵadvance(1);
|
|
120
|
-
i0.ɵɵproperty("width", 56)("height", 16)("iconName",
|
|
138
|
+
i0.ɵɵproperty("width", 56)("height", 16)("iconName", ctx_r16.icon.DifficultyHight);
|
|
121
139
|
} }
|
|
122
|
-
function
|
|
140
|
+
function RecipeDetailsComponent_div_0_ng_container_38_Template(rf, ctx) { if (rf & 1) {
|
|
123
141
|
i0.ɵɵelementContainer(0);
|
|
124
142
|
} }
|
|
125
|
-
function
|
|
126
|
-
const
|
|
127
|
-
i0.ɵɵelementStart(0, "button",
|
|
128
|
-
i0.ɵɵlistener("click", function
|
|
143
|
+
function RecipeDetailsComponent_div_0_button_51_Template(rf, ctx) { if (rf & 1) {
|
|
144
|
+
const _r25 = i0.ɵɵgetCurrentView();
|
|
145
|
+
i0.ɵɵelementStart(0, "button", 50);
|
|
146
|
+
i0.ɵɵlistener("click", function RecipeDetailsComponent_div_0_button_51_Template_button_click_0_listener() { i0.ɵɵrestoreView(_r25); const ctx_r24 = i0.ɵɵnextContext(2); return ctx_r24.addRecipe(); });
|
|
129
147
|
i0.ɵɵelementStart(1, "span");
|
|
130
148
|
i0.ɵɵtext(2);
|
|
131
149
|
i0.ɵɵpipe(3, "async");
|
|
132
150
|
i0.ɵɵelementEnd();
|
|
133
|
-
i0.ɵɵelement(4, "ng-miam-icon",
|
|
151
|
+
i0.ɵɵelement(4, "ng-miam-icon", 51);
|
|
134
152
|
i0.ɵɵpipe(5, "async");
|
|
135
153
|
i0.ɵɵelementEnd();
|
|
136
154
|
} if (rf & 2) {
|
|
137
|
-
const
|
|
155
|
+
const ctx_r18 = i0.ɵɵnextContext(2);
|
|
138
156
|
var tmp_0_0 = null;
|
|
139
157
|
var tmp_3_0 = null;
|
|
140
158
|
i0.ɵɵadvance(2);
|
|
141
|
-
i0.ɵɵtextInterpolate1(" ", ((tmp_0_0 = i0.ɵɵpipeBind1(3, 4,
|
|
159
|
+
i0.ɵɵtextInterpolate1(" ", ((tmp_0_0 = i0.ɵɵpipeBind1(3, 4, ctx_r18.groceriesListsService.list$)) == null ? null : tmp_0_0.hasRecipe(ctx_r18.recipe == null ? null : ctx_r18.recipe.id)) ? "Voir le d\u00E9tail" : "S\u00E9lectionner ce repas", " ");
|
|
142
160
|
i0.ɵɵadvance(2);
|
|
143
|
-
i0.ɵɵproperty("width", 24)("height", 24)("iconName", ((tmp_3_0 = i0.ɵɵpipeBind1(5, 6,
|
|
161
|
+
i0.ɵɵproperty("width", 24)("height", 24)("iconName", ((tmp_3_0 = i0.ɵɵpipeBind1(5, 6, ctx_r18.groceriesListsService.list$)) == null ? null : tmp_3_0.hasRecipe(ctx_r18.recipe == null ? null : ctx_r18.recipe.id)) ? ctx_r18.icon.CheckList : ctx_r18.icon.Cart);
|
|
144
162
|
} }
|
|
145
|
-
function
|
|
146
|
-
const
|
|
147
|
-
i0.ɵɵelementStart(0, "ng-miam-addon-link",
|
|
148
|
-
i0.ɵɵlistener("showAddon", function
|
|
163
|
+
function RecipeDetailsComponent_div_0_ng_miam_addon_link_54_Template(rf, ctx) { if (rf & 1) {
|
|
164
|
+
const _r27 = i0.ɵɵgetCurrentView();
|
|
165
|
+
i0.ɵɵelementStart(0, "ng-miam-addon-link", 52);
|
|
166
|
+
i0.ɵɵlistener("showAddon", function RecipeDetailsComponent_div_0_ng_miam_addon_link_54_Template_ng_miam_addon_link_showAddon_0_listener() { i0.ɵɵrestoreView(_r27); const ctx_r26 = i0.ɵɵnextContext(2); return ctx_r26.toggleAddon(); });
|
|
149
167
|
i0.ɵɵelementEnd();
|
|
150
168
|
} if (rf & 2) {
|
|
151
|
-
const
|
|
152
|
-
i0.ɵɵproperty("recipe",
|
|
169
|
+
const ctx_r19 = i0.ɵɵnextContext(2);
|
|
170
|
+
i0.ɵɵproperty("recipe", ctx_r19.recipe);
|
|
153
171
|
} }
|
|
154
|
-
|
|
155
|
-
|
|
156
|
-
i0.ɵɵ
|
|
157
|
-
i0.ɵɵelementStart(1, "div");
|
|
158
|
-
i0.ɵɵtext(2);
|
|
159
|
-
i0.ɵɵpipe(3, "capitalizeFirstLetter");
|
|
172
|
+
function RecipeDetailsComponent_div_0_div_55_div_12_div_1_Template(rf, ctx) { if (rf & 1) {
|
|
173
|
+
i0.ɵɵelementStart(0, "div");
|
|
174
|
+
i0.ɵɵelement(1, "img", 68);
|
|
160
175
|
i0.ɵɵelementEnd();
|
|
161
|
-
|
|
162
|
-
i0.ɵɵ
|
|
163
|
-
i0.ɵɵ
|
|
176
|
+
} if (rf & 2) {
|
|
177
|
+
const ingredient_r30 = i0.ɵɵnextContext().$implicit;
|
|
178
|
+
const ctx_r32 = i0.ɵɵnextContext(3);
|
|
179
|
+
i0.ɵɵadvance(1);
|
|
180
|
+
i0.ɵɵproperty("src", ctx_r32.ingredientPicture(ingredient_r30), i0.ɵɵsanitizeUrl);
|
|
181
|
+
} }
|
|
182
|
+
const _c2 = function (a0) { return { "checked": a0 }; };
|
|
183
|
+
function RecipeDetailsComponent_div_0_div_55_div_12_Template(rf, ctx) { if (rf & 1) {
|
|
184
|
+
i0.ɵɵelementStart(0, "div", 66);
|
|
185
|
+
i0.ɵɵtemplate(1, RecipeDetailsComponent_div_0_div_55_div_12_div_1_Template, 2, 1, "div", 67);
|
|
186
|
+
i0.ɵɵelementStart(2, "div");
|
|
187
|
+
i0.ɵɵtext(3);
|
|
188
|
+
i0.ɵɵpipe(4, "capitalizeFirstLetter");
|
|
189
|
+
i0.ɵɵelementEnd();
|
|
190
|
+
i0.ɵɵelementStart(5, "div", 60);
|
|
191
|
+
i0.ɵɵtext(6);
|
|
192
|
+
i0.ɵɵpipe(7, "readableFloatNumber");
|
|
164
193
|
i0.ɵɵelementEnd();
|
|
165
194
|
i0.ɵɵelementEnd();
|
|
166
195
|
} if (rf & 2) {
|
|
167
|
-
const
|
|
168
|
-
const
|
|
169
|
-
const
|
|
170
|
-
i0.ɵɵproperty("ngClass", i0.ɵɵpureFunction1(
|
|
196
|
+
const ingredient_r30 = ctx.$implicit;
|
|
197
|
+
const i_r31 = ctx.index;
|
|
198
|
+
const ctx_r28 = i0.ɵɵnextContext(3);
|
|
199
|
+
i0.ɵɵproperty("ngClass", i0.ɵɵpureFunction1(9, _c2, ctx_r28.ingredientsChecked[i_r31]));
|
|
200
|
+
i0.ɵɵadvance(1);
|
|
201
|
+
i0.ɵɵproperty("ngIf", ctx_r28.ingredientsPictures);
|
|
171
202
|
i0.ɵɵadvance(2);
|
|
172
|
-
i0.ɵɵtextInterpolate1(" ", i0.ɵɵpipeBind1(
|
|
203
|
+
i0.ɵɵtextInterpolate1(" ", i0.ɵɵpipeBind1(4, 4, ingredient_r30.name), "");
|
|
173
204
|
i0.ɵɵadvance(3);
|
|
174
|
-
i0.ɵɵtextInterpolate1(" ", i0.ɵɵpipeBind2(
|
|
205
|
+
i0.ɵɵtextInterpolate1(" ", i0.ɵɵpipeBind2(7, 6, ingredient_r30.qty, ingredient_r30.unit), "");
|
|
175
206
|
} }
|
|
176
|
-
function
|
|
177
|
-
i0.ɵɵelement(0, "ng-miam-icon",
|
|
207
|
+
function RecipeDetailsComponent_div_0_div_55_div_17_ng_miam_icon_6_Template(rf, ctx) { if (rf & 1) {
|
|
208
|
+
i0.ɵɵelement(0, "ng-miam-icon", 73);
|
|
178
209
|
} if (rf & 2) {
|
|
179
|
-
const
|
|
180
|
-
i0.ɵɵproperty("height", 16)("width", 16)("iconName",
|
|
210
|
+
const ctx_r36 = i0.ɵɵnextContext(4);
|
|
211
|
+
i0.ɵɵproperty("height", 16)("width", 16)("iconName", ctx_r36.icon.CheckCircleFill);
|
|
181
212
|
} }
|
|
182
|
-
function
|
|
183
|
-
const
|
|
184
|
-
i0.ɵɵelementStart(0, "div",
|
|
185
|
-
i0.ɵɵlistener("click", function
|
|
186
|
-
i0.ɵɵelementStart(1, "div",
|
|
213
|
+
function RecipeDetailsComponent_div_0_div_55_div_17_Template(rf, ctx) { if (rf & 1) {
|
|
214
|
+
const _r38 = i0.ɵɵgetCurrentView();
|
|
215
|
+
i0.ɵɵelementStart(0, "div", 69);
|
|
216
|
+
i0.ɵɵlistener("click", function RecipeDetailsComponent_div_0_div_55_div_17_Template_div_click_0_listener() { i0.ɵɵrestoreView(_r38); const i_r35 = ctx.index; const ctx_r37 = i0.ɵɵnextContext(3); return ctx_r37.changeActiveStep(i_r35); });
|
|
217
|
+
i0.ɵɵelementStart(1, "div", 70);
|
|
187
218
|
i0.ɵɵelementStart(2, "strong");
|
|
188
219
|
i0.ɵɵtext(3);
|
|
189
220
|
i0.ɵɵelementEnd();
|
|
190
221
|
i0.ɵɵelementEnd();
|
|
191
|
-
i0.ɵɵelementStart(4, "div",
|
|
222
|
+
i0.ɵɵelementStart(4, "div", 71);
|
|
192
223
|
i0.ɵɵtext(5);
|
|
193
224
|
i0.ɵɵelementEnd();
|
|
194
|
-
i0.ɵɵtemplate(6,
|
|
225
|
+
i0.ɵɵtemplate(6, RecipeDetailsComponent_div_0_div_55_div_17_ng_miam_icon_6_Template, 1, 3, "ng-miam-icon", 72);
|
|
195
226
|
i0.ɵɵelementEnd();
|
|
196
227
|
} if (rf & 2) {
|
|
197
|
-
const
|
|
198
|
-
const
|
|
199
|
-
const
|
|
200
|
-
i0.ɵɵclassProp("active",
|
|
228
|
+
const step_r34 = ctx.$implicit;
|
|
229
|
+
const i_r35 = ctx.index;
|
|
230
|
+
const ctx_r29 = i0.ɵɵnextContext(3);
|
|
231
|
+
i0.ɵɵclassProp("active", i_r35 === ctx_r29.activeStep)("miam-recipe-details__panel__done", i_r35 < ctx_r29.activeStep);
|
|
201
232
|
i0.ɵɵadvance(3);
|
|
202
|
-
i0.ɵɵtextInterpolate(
|
|
233
|
+
i0.ɵɵtextInterpolate(i_r35 + 1);
|
|
203
234
|
i0.ɵɵadvance(2);
|
|
204
|
-
i0.ɵɵtextInterpolate(
|
|
235
|
+
i0.ɵɵtextInterpolate(step_r34 == null ? null : step_r34.attributes == null ? null : step_r34.attributes.description);
|
|
205
236
|
i0.ɵɵadvance(1);
|
|
206
|
-
i0.ɵɵproperty("ngIf",
|
|
237
|
+
i0.ɵɵproperty("ngIf", i_r35 <= ctx_r29.activeStep);
|
|
207
238
|
} }
|
|
208
|
-
function
|
|
209
|
-
const
|
|
210
|
-
i0.ɵɵelementStart(0, "div",
|
|
211
|
-
i0.ɵɵelementStart(1, "div",
|
|
212
|
-
i0.ɵɵelementStart(2, "div",
|
|
239
|
+
function RecipeDetailsComponent_div_0_div_55_Template(rf, ctx) { if (rf & 1) {
|
|
240
|
+
const _r40 = i0.ɵɵgetCurrentView();
|
|
241
|
+
i0.ɵɵelementStart(0, "div", 53);
|
|
242
|
+
i0.ɵɵelementStart(1, "div", 54);
|
|
243
|
+
i0.ɵɵelementStart(2, "div", 55);
|
|
213
244
|
i0.ɵɵtext(3, " Ingr\u00E9dients ");
|
|
214
245
|
i0.ɵɵelementEnd();
|
|
215
|
-
i0.ɵɵelementStart(4, "div",
|
|
216
|
-
i0.ɵɵelementStart(5, "div",
|
|
217
|
-
i0.ɵɵelementStart(6, "ng-miam-counter-input",
|
|
218
|
-
i0.ɵɵlistener("counterChange", function
|
|
246
|
+
i0.ɵɵelementStart(4, "div", 56);
|
|
247
|
+
i0.ɵɵelementStart(5, "div", 57);
|
|
248
|
+
i0.ɵɵelementStart(6, "ng-miam-counter-input", 58);
|
|
249
|
+
i0.ɵɵlistener("counterChange", function RecipeDetailsComponent_div_0_div_55_Template_ng_miam_counter_input_counterChange_6_listener($event) { i0.ɵɵrestoreView(_r40); const ctx_r39 = i0.ɵɵnextContext(2); return ctx_r39.updateGuests($event); });
|
|
219
250
|
i0.ɵɵelementEnd();
|
|
220
|
-
i0.ɵɵelementStart(7, "span",
|
|
251
|
+
i0.ɵɵelementStart(7, "span", 59);
|
|
221
252
|
i0.ɵɵtext(8);
|
|
222
253
|
i0.ɵɵelementEnd();
|
|
223
254
|
i0.ɵɵelementEnd();
|
|
224
|
-
i0.ɵɵelementStart(9, "span",
|
|
255
|
+
i0.ɵɵelementStart(9, "span", 60);
|
|
225
256
|
i0.ɵɵtext(10, "Quantit\u00E9");
|
|
226
257
|
i0.ɵɵelementEnd();
|
|
227
258
|
i0.ɵɵelementEnd();
|
|
228
|
-
i0.ɵɵelementStart(11, "div",
|
|
229
|
-
i0.ɵɵtemplate(12,
|
|
259
|
+
i0.ɵɵelementStart(11, "div", 61);
|
|
260
|
+
i0.ɵɵtemplate(12, RecipeDetailsComponent_div_0_div_55_div_12_Template, 8, 11, "div", 62);
|
|
230
261
|
i0.ɵɵelementEnd();
|
|
231
262
|
i0.ɵɵelementEnd();
|
|
232
|
-
i0.ɵɵelementStart(13, "div",
|
|
233
|
-
i0.ɵɵelementStart(14, "div",
|
|
263
|
+
i0.ɵɵelementStart(13, "div", 63);
|
|
264
|
+
i0.ɵɵelementStart(14, "div", 55);
|
|
234
265
|
i0.ɵɵtext(15, " Pr\u00E9paration ");
|
|
235
266
|
i0.ɵɵelementEnd();
|
|
236
|
-
i0.ɵɵelementStart(16, "div",
|
|
237
|
-
i0.ɵɵtemplate(17,
|
|
267
|
+
i0.ɵɵelementStart(16, "div", 64);
|
|
268
|
+
i0.ɵɵtemplate(17, RecipeDetailsComponent_div_0_div_55_div_17_Template, 7, 7, "div", 65);
|
|
238
269
|
i0.ɵɵelementEnd();
|
|
239
270
|
i0.ɵɵelementEnd();
|
|
240
271
|
i0.ɵɵelementEnd();
|
|
241
272
|
} if (rf & 2) {
|
|
242
|
-
const
|
|
273
|
+
const ctx_r20 = i0.ɵɵnextContext(2);
|
|
243
274
|
i0.ɵɵadvance(6);
|
|
244
|
-
i0.ɵɵproperty("counter", (
|
|
275
|
+
i0.ɵɵproperty("counter", (ctx_r20.recipe == null ? null : ctx_r20.recipe.modifiedGuests) || ctx_r20.recipe.guests);
|
|
245
276
|
i0.ɵɵadvance(2);
|
|
246
|
-
i0.ɵɵtextInterpolate1("Pour ",
|
|
277
|
+
i0.ɵɵtextInterpolate1("Pour ", ctx_r20.recipe == null ? null : ctx_r20.recipe.modifiedGuests, " personnes");
|
|
247
278
|
i0.ɵɵadvance(4);
|
|
248
|
-
i0.ɵɵproperty("ngForOf",
|
|
279
|
+
i0.ɵɵproperty("ngForOf", ctx_r20.recipe == null ? null : ctx_r20.recipe.modifiedIngredients);
|
|
249
280
|
i0.ɵɵadvance(5);
|
|
250
|
-
i0.ɵɵproperty("ngForOf",
|
|
281
|
+
i0.ɵɵproperty("ngForOf", ctx_r20.steps);
|
|
251
282
|
} }
|
|
252
|
-
function
|
|
253
|
-
i0.ɵɵelementStart(0, "div",
|
|
283
|
+
function RecipeDetailsComponent_div_0_ng_template_56_ng_container_7_div_9_Template(rf, ctx) { if (rf & 1) {
|
|
284
|
+
i0.ɵɵelementStart(0, "div", 66);
|
|
254
285
|
i0.ɵɵelementStart(1, "div");
|
|
255
286
|
i0.ɵɵtext(2);
|
|
256
287
|
i0.ɵɵpipe(3, "capitalizeFirstLetter");
|
|
257
288
|
i0.ɵɵelementEnd();
|
|
258
|
-
i0.ɵɵelementStart(4, "div",
|
|
289
|
+
i0.ɵɵelementStart(4, "div", 60);
|
|
259
290
|
i0.ɵɵtext(5);
|
|
260
291
|
i0.ɵɵpipe(6, "readableFloatNumber");
|
|
261
292
|
i0.ɵɵelementEnd();
|
|
262
293
|
i0.ɵɵelementEnd();
|
|
263
294
|
} if (rf & 2) {
|
|
264
|
-
const
|
|
265
|
-
const
|
|
266
|
-
const
|
|
267
|
-
i0.ɵɵproperty("ngClass", i0.ɵɵpureFunction1(8,
|
|
295
|
+
const ingredient_r46 = ctx.$implicit;
|
|
296
|
+
const i_r47 = ctx.index;
|
|
297
|
+
const ctx_r45 = i0.ɵɵnextContext(4);
|
|
298
|
+
i0.ɵɵproperty("ngClass", i0.ɵɵpureFunction1(8, _c2, ctx_r45.ingredientsChecked[i_r47]));
|
|
268
299
|
i0.ɵɵadvance(2);
|
|
269
|
-
i0.ɵɵtextInterpolate1(" ", i0.ɵɵpipeBind1(3, 3,
|
|
300
|
+
i0.ɵɵtextInterpolate1(" ", i0.ɵɵpipeBind1(3, 3, ingredient_r46.name), "");
|
|
270
301
|
i0.ɵɵadvance(3);
|
|
271
|
-
i0.ɵɵtextInterpolate1(" ", i0.ɵɵpipeBind2(6, 5,
|
|
302
|
+
i0.ɵɵtextInterpolate1(" ", i0.ɵɵpipeBind2(6, 5, ingredient_r46.qty, ingredient_r46.unit), "");
|
|
272
303
|
} }
|
|
273
|
-
function
|
|
274
|
-
const
|
|
304
|
+
function RecipeDetailsComponent_div_0_ng_template_56_ng_container_7_Template(rf, ctx) { if (rf & 1) {
|
|
305
|
+
const _r49 = i0.ɵɵgetCurrentView();
|
|
275
306
|
i0.ɵɵelementContainerStart(0);
|
|
276
|
-
i0.ɵɵelementStart(1, "div",
|
|
277
|
-
i0.ɵɵelementStart(2, "div",
|
|
278
|
-
i0.ɵɵelementStart(3, "ng-miam-counter-input",
|
|
279
|
-
i0.ɵɵlistener("counterChange", function
|
|
307
|
+
i0.ɵɵelementStart(1, "div", 56);
|
|
308
|
+
i0.ɵɵelementStart(2, "div", 57);
|
|
309
|
+
i0.ɵɵelementStart(3, "ng-miam-counter-input", 58);
|
|
310
|
+
i0.ɵɵlistener("counterChange", function RecipeDetailsComponent_div_0_ng_template_56_ng_container_7_Template_ng_miam_counter_input_counterChange_3_listener($event) { i0.ɵɵrestoreView(_r49); const ctx_r48 = i0.ɵɵnextContext(3); return ctx_r48.updateGuests($event); });
|
|
280
311
|
i0.ɵɵelementEnd();
|
|
281
|
-
i0.ɵɵelementStart(4, "span",
|
|
312
|
+
i0.ɵɵelementStart(4, "span", 59);
|
|
282
313
|
i0.ɵɵtext(5);
|
|
283
314
|
i0.ɵɵelementEnd();
|
|
284
315
|
i0.ɵɵelementEnd();
|
|
285
|
-
i0.ɵɵelementStart(6, "span",
|
|
316
|
+
i0.ɵɵelementStart(6, "span", 60);
|
|
286
317
|
i0.ɵɵtext(7, "Quantit\u00E9");
|
|
287
318
|
i0.ɵɵelementEnd();
|
|
288
319
|
i0.ɵɵelementEnd();
|
|
289
|
-
i0.ɵɵelementStart(8, "div",
|
|
290
|
-
i0.ɵɵtemplate(9,
|
|
320
|
+
i0.ɵɵelementStart(8, "div", 61);
|
|
321
|
+
i0.ɵɵtemplate(9, RecipeDetailsComponent_div_0_ng_template_56_ng_container_7_div_9_Template, 7, 10, "div", 62);
|
|
291
322
|
i0.ɵɵelementEnd();
|
|
292
323
|
i0.ɵɵelementContainerEnd();
|
|
293
324
|
} if (rf & 2) {
|
|
294
|
-
const
|
|
325
|
+
const ctx_r42 = i0.ɵɵnextContext(3);
|
|
295
326
|
i0.ɵɵadvance(3);
|
|
296
|
-
i0.ɵɵproperty("counter",
|
|
327
|
+
i0.ɵɵproperty("counter", ctx_r42.recipe == null ? null : ctx_r42.recipe.modifiedGuests);
|
|
297
328
|
i0.ɵɵadvance(2);
|
|
298
|
-
i0.ɵɵtextInterpolate1("Pour ",
|
|
329
|
+
i0.ɵɵtextInterpolate1("Pour ", ctx_r42.recipe == null ? null : ctx_r42.recipe.modifiedGuests, " personnes");
|
|
299
330
|
i0.ɵɵadvance(4);
|
|
300
|
-
i0.ɵɵproperty("ngForOf",
|
|
331
|
+
i0.ɵɵproperty("ngForOf", ctx_r42.recipe == null ? null : ctx_r42.recipe.modifiedIngredients);
|
|
301
332
|
} }
|
|
302
|
-
function
|
|
303
|
-
i0.ɵɵelement(0, "ng-miam-icon",
|
|
333
|
+
function RecipeDetailsComponent_div_0_ng_template_56_ng_template_8_div_1_ng_miam_icon_6_Template(rf, ctx) { if (rf & 1) {
|
|
334
|
+
i0.ɵɵelement(0, "ng-miam-icon", 73);
|
|
304
335
|
} if (rf & 2) {
|
|
305
|
-
const
|
|
306
|
-
i0.ɵɵproperty("height", 16)("width", 16)("iconName",
|
|
336
|
+
const ctx_r53 = i0.ɵɵnextContext(5);
|
|
337
|
+
i0.ɵɵproperty("height", 16)("width", 16)("iconName", ctx_r53.icon.CheckCircleFill);
|
|
307
338
|
} }
|
|
308
|
-
function
|
|
309
|
-
const
|
|
310
|
-
i0.ɵɵelementStart(0, "div",
|
|
311
|
-
i0.ɵɵlistener("click", function
|
|
312
|
-
i0.ɵɵelementStart(1, "div",
|
|
339
|
+
function RecipeDetailsComponent_div_0_ng_template_56_ng_template_8_div_1_Template(rf, ctx) { if (rf & 1) {
|
|
340
|
+
const _r55 = i0.ɵɵgetCurrentView();
|
|
341
|
+
i0.ɵɵelementStart(0, "div", 69);
|
|
342
|
+
i0.ɵɵlistener("click", function RecipeDetailsComponent_div_0_ng_template_56_ng_template_8_div_1_Template_div_click_0_listener() { i0.ɵɵrestoreView(_r55); const i_r52 = ctx.index; const ctx_r54 = i0.ɵɵnextContext(4); return ctx_r54.changeActiveStep(i_r52); });
|
|
343
|
+
i0.ɵɵelementStart(1, "div", 70);
|
|
313
344
|
i0.ɵɵelementStart(2, "strong");
|
|
314
345
|
i0.ɵɵtext(3);
|
|
315
346
|
i0.ɵɵelementEnd();
|
|
316
347
|
i0.ɵɵelementEnd();
|
|
317
|
-
i0.ɵɵelementStart(4, "div",
|
|
348
|
+
i0.ɵɵelementStart(4, "div", 71);
|
|
318
349
|
i0.ɵɵtext(5);
|
|
319
350
|
i0.ɵɵelementEnd();
|
|
320
|
-
i0.ɵɵtemplate(6,
|
|
351
|
+
i0.ɵɵtemplate(6, RecipeDetailsComponent_div_0_ng_template_56_ng_template_8_div_1_ng_miam_icon_6_Template, 1, 3, "ng-miam-icon", 72);
|
|
321
352
|
i0.ɵɵelementEnd();
|
|
322
353
|
} if (rf & 2) {
|
|
323
|
-
const
|
|
324
|
-
const
|
|
325
|
-
const
|
|
326
|
-
i0.ɵɵclassProp("active",
|
|
354
|
+
const step_r51 = ctx.$implicit;
|
|
355
|
+
const i_r52 = ctx.index;
|
|
356
|
+
const ctx_r50 = i0.ɵɵnextContext(4);
|
|
357
|
+
i0.ɵɵclassProp("active", i_r52 === ctx_r50.activeStep)("miam-recipe-details__panel__done", i_r52 < ctx_r50.activeStep);
|
|
327
358
|
i0.ɵɵadvance(3);
|
|
328
|
-
i0.ɵɵtextInterpolate(
|
|
359
|
+
i0.ɵɵtextInterpolate(i_r52 + 1);
|
|
329
360
|
i0.ɵɵadvance(2);
|
|
330
|
-
i0.ɵɵtextInterpolate(
|
|
361
|
+
i0.ɵɵtextInterpolate(step_r51 == null ? null : step_r51.attributes == null ? null : step_r51.attributes.description);
|
|
331
362
|
i0.ɵɵadvance(1);
|
|
332
|
-
i0.ɵɵproperty("ngIf",
|
|
363
|
+
i0.ɵɵproperty("ngIf", i_r52 <= ctx_r50.activeStep);
|
|
333
364
|
} }
|
|
334
|
-
function
|
|
335
|
-
i0.ɵɵelementStart(0, "div",
|
|
336
|
-
i0.ɵɵtemplate(1,
|
|
365
|
+
function RecipeDetailsComponent_div_0_ng_template_56_ng_template_8_Template(rf, ctx) { if (rf & 1) {
|
|
366
|
+
i0.ɵɵelementStart(0, "div", 64);
|
|
367
|
+
i0.ɵɵtemplate(1, RecipeDetailsComponent_div_0_ng_template_56_ng_template_8_div_1_Template, 7, 7, "div", 65);
|
|
337
368
|
i0.ɵɵelementEnd();
|
|
338
369
|
} if (rf & 2) {
|
|
339
|
-
const
|
|
370
|
+
const ctx_r44 = i0.ɵɵnextContext(3);
|
|
340
371
|
i0.ɵɵadvance(1);
|
|
341
|
-
i0.ɵɵproperty("ngForOf",
|
|
372
|
+
i0.ɵɵproperty("ngForOf", ctx_r44.steps);
|
|
342
373
|
} }
|
|
343
|
-
const
|
|
344
|
-
function
|
|
345
|
-
const
|
|
346
|
-
i0.ɵɵelementStart(0, "div",
|
|
347
|
-
i0.ɵɵelementStart(2, "div",
|
|
348
|
-
i0.ɵɵelementStart(3, "button",
|
|
349
|
-
i0.ɵɵlistener("click", function
|
|
374
|
+
const _c3 = function (a0) { return { "active": a0 }; };
|
|
375
|
+
function RecipeDetailsComponent_div_0_ng_template_56_Template(rf, ctx) { if (rf & 1) {
|
|
376
|
+
const _r57 = i0.ɵɵgetCurrentView();
|
|
377
|
+
i0.ɵɵelementStart(0, "div", 74, 75);
|
|
378
|
+
i0.ɵɵelementStart(2, "div", 76);
|
|
379
|
+
i0.ɵɵelementStart(3, "button", 77);
|
|
380
|
+
i0.ɵɵlistener("click", function RecipeDetailsComponent_div_0_ng_template_56_Template_button_click_3_listener() { i0.ɵɵrestoreView(_r57); const _r41 = i0.ɵɵreference(1); const ctx_r56 = i0.ɵɵnextContext(2); ctx_r56.toggleShowIngredient(true); return _r41.scrollIntoView(); });
|
|
350
381
|
i0.ɵɵtext(4, "Ingredients");
|
|
351
382
|
i0.ɵɵelementEnd();
|
|
352
|
-
i0.ɵɵelementStart(5, "button",
|
|
353
|
-
i0.ɵɵlistener("click", function
|
|
383
|
+
i0.ɵɵelementStart(5, "button", 77);
|
|
384
|
+
i0.ɵɵlistener("click", function RecipeDetailsComponent_div_0_ng_template_56_Template_button_click_5_listener() { i0.ɵɵrestoreView(_r57); const _r41 = i0.ɵɵreference(1); const ctx_r58 = i0.ɵɵnextContext(2); ctx_r58.toggleShowIngredient(false); return _r41.scrollIntoView(); });
|
|
354
385
|
i0.ɵɵtext(6, "Pr\u00E9paration");
|
|
355
386
|
i0.ɵɵelementEnd();
|
|
356
387
|
i0.ɵɵelementEnd();
|
|
357
|
-
i0.ɵɵtemplate(7,
|
|
358
|
-
i0.ɵɵtemplate(8,
|
|
388
|
+
i0.ɵɵtemplate(7, RecipeDetailsComponent_div_0_ng_template_56_ng_container_7_Template, 10, 3, "ng-container", 78);
|
|
389
|
+
i0.ɵɵtemplate(8, RecipeDetailsComponent_div_0_ng_template_56_ng_template_8_Template, 2, 1, "ng-template", null, 79, i0.ɵɵtemplateRefExtractor);
|
|
359
390
|
i0.ɵɵelementEnd();
|
|
360
391
|
} if (rf & 2) {
|
|
361
|
-
const
|
|
362
|
-
const
|
|
392
|
+
const _r43 = i0.ɵɵreference(9);
|
|
393
|
+
const ctx_r22 = i0.ɵɵnextContext(2);
|
|
363
394
|
i0.ɵɵadvance(3);
|
|
364
|
-
i0.ɵɵproperty("ngClass", i0.ɵɵpureFunction1(4,
|
|
395
|
+
i0.ɵɵproperty("ngClass", i0.ɵɵpureFunction1(4, _c3, ctx_r22.showIngredient));
|
|
365
396
|
i0.ɵɵadvance(2);
|
|
366
|
-
i0.ɵɵproperty("ngClass", i0.ɵɵpureFunction1(6,
|
|
397
|
+
i0.ɵɵproperty("ngClass", i0.ɵɵpureFunction1(6, _c3, !ctx_r22.showIngredient));
|
|
367
398
|
i0.ɵɵadvance(2);
|
|
368
|
-
i0.ɵɵproperty("ngIf",
|
|
399
|
+
i0.ɵɵproperty("ngIf", ctx_r22.showIngredient)("ngIfElse", _r43);
|
|
369
400
|
} }
|
|
370
|
-
function
|
|
371
|
-
const
|
|
372
|
-
i0.ɵɵelementStart(0, "button",
|
|
373
|
-
i0.ɵɵlistener("click", function
|
|
401
|
+
function RecipeDetailsComponent_div_0_button_62_Template(rf, ctx) { if (rf & 1) {
|
|
402
|
+
const _r60 = i0.ɵɵgetCurrentView();
|
|
403
|
+
i0.ɵɵelementStart(0, "button", 50);
|
|
404
|
+
i0.ɵɵlistener("click", function RecipeDetailsComponent_div_0_button_62_Template_button_click_0_listener() { i0.ɵɵrestoreView(_r60); const ctx_r59 = i0.ɵɵnextContext(2); return ctx_r59.addRecipe(); });
|
|
374
405
|
i0.ɵɵelementStart(1, "span");
|
|
375
406
|
i0.ɵɵtext(2);
|
|
376
407
|
i0.ɵɵpipe(3, "async");
|
|
377
408
|
i0.ɵɵelementEnd();
|
|
378
|
-
i0.ɵɵelement(4, "ng-miam-icon",
|
|
409
|
+
i0.ɵɵelement(4, "ng-miam-icon", 51);
|
|
379
410
|
i0.ɵɵpipe(5, "async");
|
|
380
411
|
i0.ɵɵelementEnd();
|
|
381
412
|
} if (rf & 2) {
|
|
382
|
-
const
|
|
413
|
+
const ctx_r23 = i0.ɵɵnextContext(2);
|
|
383
414
|
var tmp_0_0 = null;
|
|
384
415
|
var tmp_3_0 = null;
|
|
385
416
|
i0.ɵɵadvance(2);
|
|
386
|
-
i0.ɵɵtextInterpolate1(" ", ((tmp_0_0 = i0.ɵɵpipeBind1(3, 4,
|
|
417
|
+
i0.ɵɵtextInterpolate1(" ", ((tmp_0_0 = i0.ɵɵpipeBind1(3, 4, ctx_r23.groceriesListsService.list$)) == null ? null : tmp_0_0.hasRecipe(ctx_r23.recipe == null ? null : ctx_r23.recipe.id)) ? "Voir le d\u00E9tail" : "S\u00E9lectionner ce repas", " ");
|
|
387
418
|
i0.ɵɵadvance(2);
|
|
388
|
-
i0.ɵɵproperty("width", 24)("height", 24)("iconName", ((tmp_3_0 = i0.ɵɵpipeBind1(5, 6,
|
|
419
|
+
i0.ɵɵproperty("width", 24)("height", 24)("iconName", ((tmp_3_0 = i0.ɵɵpipeBind1(5, 6, ctx_r23.groceriesListsService.list$)) == null ? null : tmp_3_0.hasRecipe(ctx_r23.recipe == null ? null : ctx_r23.recipe.id)) ? ctx_r23.icon.CheckList : ctx_r23.icon.Cart);
|
|
389
420
|
} }
|
|
390
421
|
function RecipeDetailsComponent_div_0_Template(rf, ctx) { if (rf & 1) {
|
|
391
|
-
const
|
|
392
|
-
i0.ɵɵelementStart(0, "div", 2);
|
|
393
|
-
i0.ɵɵlistener("scroll", function RecipeDetailsComponent_div_0_Template_div_scroll_0_listener($event) { i0.ɵɵrestoreView(_r55); const ctx_r54 = i0.ɵɵnextContext(); return ctx_r54.onScroll($event); });
|
|
394
|
-
i0.ɵɵelementStart(1, "div", 3);
|
|
422
|
+
const _r62 = i0.ɵɵgetCurrentView();
|
|
423
|
+
i0.ɵɵelementStart(0, "div", 2, 3);
|
|
395
424
|
i0.ɵɵelementStart(2, "div", 4);
|
|
396
425
|
i0.ɵɵelementStart(3, "div", 5);
|
|
397
|
-
i0.ɵɵ
|
|
398
|
-
i0.ɵɵ
|
|
399
|
-
i0.ɵɵtemplate(
|
|
400
|
-
i0.ɵɵ
|
|
401
|
-
i0.ɵɵ
|
|
402
|
-
i0.ɵɵtemplate(9, RecipeDetailsComponent_div_0_ng_miam_like_button_9_Template, 1, 3, "ng-miam-like-button", 10);
|
|
426
|
+
i0.ɵɵelementStart(4, "div", 6, 7);
|
|
427
|
+
i0.ɵɵtemplate(6, RecipeDetailsComponent_div_0_img_6_Template, 1, 1, "img", 8);
|
|
428
|
+
i0.ɵɵtemplate(7, RecipeDetailsComponent_div_0_div_7_Template, 1, 0, "div", 9);
|
|
429
|
+
i0.ɵɵtemplate(8, RecipeDetailsComponent_div_0_youtube_player_8_Template, 1, 3, "youtube-player", 10);
|
|
430
|
+
i0.ɵɵtemplate(9, RecipeDetailsComponent_div_0_div_9_Template, 2, 0, "div", 11);
|
|
403
431
|
i0.ɵɵpipe(10, "async");
|
|
404
|
-
i0.ɵɵ
|
|
405
|
-
i0.ɵɵ
|
|
432
|
+
i0.ɵɵelementStart(11, "div", 12);
|
|
433
|
+
i0.ɵɵtemplate(12, RecipeDetailsComponent_div_0_ng_miam_like_button_12_Template, 1, 3, "ng-miam-like-button", 13);
|
|
434
|
+
i0.ɵɵpipe(13, "async");
|
|
435
|
+
i0.ɵɵelement(14, "ng-miam-icon", 14);
|
|
436
|
+
i0.ɵɵelement(15, "ng-miam-icon", 14);
|
|
406
437
|
i0.ɵɵelementEnd();
|
|
407
|
-
i0.ɵɵtemplate(
|
|
438
|
+
i0.ɵɵtemplate(16, RecipeDetailsComponent_div_0_img_16_Template, 1, 1, "img", 15);
|
|
408
439
|
i0.ɵɵelementEnd();
|
|
409
|
-
i0.ɵɵelementStart(
|
|
410
|
-
i0.ɵɵelementStart(
|
|
411
|
-
i0.ɵɵelement(
|
|
412
|
-
i0.ɵɵelementStart(
|
|
413
|
-
i0.ɵɵtext(
|
|
440
|
+
i0.ɵɵelementStart(17, "div", 16);
|
|
441
|
+
i0.ɵɵelementStart(18, "div", 17);
|
|
442
|
+
i0.ɵɵelement(19, "ng-miam-icon", 18);
|
|
443
|
+
i0.ɵɵelementStart(20, "span");
|
|
444
|
+
i0.ɵɵtext(21);
|
|
414
445
|
i0.ɵɵelementEnd();
|
|
415
446
|
i0.ɵɵelementEnd();
|
|
416
|
-
i0.ɵɵelementStart(
|
|
417
|
-
i0.ɵɵtemplate(
|
|
418
|
-
i0.ɵɵtemplate(
|
|
419
|
-
i0.ɵɵtemplate(
|
|
447
|
+
i0.ɵɵelementStart(22, "div", 19);
|
|
448
|
+
i0.ɵɵtemplate(23, RecipeDetailsComponent_div_0_div_23_Template, 7, 4, "div", 20);
|
|
449
|
+
i0.ɵɵtemplate(24, RecipeDetailsComponent_div_0_div_24_Template, 7, 4, "div", 20);
|
|
450
|
+
i0.ɵɵtemplate(25, RecipeDetailsComponent_div_0_div_25_Template, 7, 4, "div", 20);
|
|
420
451
|
i0.ɵɵelementEnd();
|
|
421
452
|
i0.ɵɵelementEnd();
|
|
422
453
|
i0.ɵɵelementEnd();
|
|
423
|
-
i0.ɵɵelementStart(
|
|
424
|
-
i0.ɵɵelementStart(
|
|
425
|
-
i0.ɵɵelementStart(
|
|
426
|
-
i0.ɵɵtext(26);
|
|
427
|
-
i0.ɵɵpipe(27, "titlecase");
|
|
428
|
-
i0.ɵɵelementEnd();
|
|
429
|
-
i0.ɵɵelementStart(28, "span", 21);
|
|
454
|
+
i0.ɵɵelementStart(26, "div", 21);
|
|
455
|
+
i0.ɵɵelementStart(27, "div", 22);
|
|
456
|
+
i0.ɵɵelementStart(28, "span", 23);
|
|
430
457
|
i0.ɵɵtext(29);
|
|
458
|
+
i0.ɵɵpipe(30, "titlecase");
|
|
459
|
+
i0.ɵɵelementEnd();
|
|
460
|
+
i0.ɵɵelementStart(31, "span", 24);
|
|
461
|
+
i0.ɵɵtext(32);
|
|
431
462
|
i0.ɵɵelementEnd();
|
|
432
|
-
i0.ɵɵelementStart(
|
|
433
|
-
i0.ɵɵelementContainerStart(
|
|
434
|
-
i0.ɵɵtemplate(
|
|
435
|
-
i0.ɵɵtemplate(
|
|
436
|
-
i0.ɵɵtemplate(
|
|
437
|
-
i0.ɵɵtemplate(
|
|
463
|
+
i0.ɵɵelementStart(33, "div", 25);
|
|
464
|
+
i0.ɵɵelementContainerStart(34, 26);
|
|
465
|
+
i0.ɵɵtemplate(35, RecipeDetailsComponent_div_0_ng_container_35_Template, 2, 3, "ng-container", 27);
|
|
466
|
+
i0.ɵɵtemplate(36, RecipeDetailsComponent_div_0_ng_container_36_Template, 2, 3, "ng-container", 27);
|
|
467
|
+
i0.ɵɵtemplate(37, RecipeDetailsComponent_div_0_ng_container_37_Template, 2, 3, "ng-container", 27);
|
|
468
|
+
i0.ɵɵtemplate(38, RecipeDetailsComponent_div_0_ng_container_38_Template, 1, 0, "ng-container", 28);
|
|
438
469
|
i0.ɵɵelementContainerEnd();
|
|
439
|
-
i0.ɵɵelementStart(
|
|
440
|
-
i0.ɵɵtext(
|
|
441
|
-
i0.ɵɵpipe(
|
|
470
|
+
i0.ɵɵelementStart(39, "span");
|
|
471
|
+
i0.ɵɵtext(40);
|
|
472
|
+
i0.ɵɵpipe(41, "titlecase");
|
|
442
473
|
i0.ɵɵelementEnd();
|
|
443
474
|
i0.ɵɵelementEnd();
|
|
444
|
-
i0.ɵɵelementStart(
|
|
445
|
-
i0.ɵɵtext(
|
|
446
|
-
i0.ɵɵelementStart(
|
|
447
|
-
i0.ɵɵlistener("click", function
|
|
448
|
-
i0.ɵɵelement(
|
|
449
|
-
i0.ɵɵelementStart(
|
|
450
|
-
i0.ɵɵtext(
|
|
475
|
+
i0.ɵɵelementStart(42, "div", 29);
|
|
476
|
+
i0.ɵɵtext(43);
|
|
477
|
+
i0.ɵɵelementStart(44, "div", 30);
|
|
478
|
+
i0.ɵɵlistener("click", function RecipeDetailsComponent_div_0_Template_div_click_44_listener() { i0.ɵɵrestoreView(_r62); const ctx_r61 = i0.ɵɵnextContext(); return ctx_r61.print(); });
|
|
479
|
+
i0.ɵɵelement(45, "ng-miam-icon", 14);
|
|
480
|
+
i0.ɵɵelementStart(46, "span");
|
|
481
|
+
i0.ɵɵtext(47, " Imprimer la recette ");
|
|
451
482
|
i0.ɵɵelementEnd();
|
|
452
483
|
i0.ɵɵelementEnd();
|
|
453
484
|
i0.ɵɵelementEnd();
|
|
454
485
|
i0.ɵɵelementEnd();
|
|
455
|
-
i0.ɵɵelementStart(
|
|
456
|
-
i0.ɵɵelementStart(
|
|
457
|
-
i0.ɵɵelement(
|
|
486
|
+
i0.ɵɵelementStart(48, "div", 31);
|
|
487
|
+
i0.ɵɵelementStart(49, "div", 32);
|
|
488
|
+
i0.ɵɵelement(50, "ng-miam-recipe-pricing", 33);
|
|
458
489
|
i0.ɵɵelementEnd();
|
|
459
|
-
i0.ɵɵtemplate(
|
|
490
|
+
i0.ɵɵtemplate(51, RecipeDetailsComponent_div_0_button_51_Template, 6, 8, "button", 34);
|
|
460
491
|
i0.ɵɵelementEnd();
|
|
461
492
|
i0.ɵɵelementEnd();
|
|
462
493
|
i0.ɵɵelementEnd();
|
|
463
|
-
i0.ɵɵelement(
|
|
464
|
-
i0.ɵɵelementStart(
|
|
465
|
-
i0.ɵɵtemplate(
|
|
494
|
+
i0.ɵɵelement(52, "div", 35);
|
|
495
|
+
i0.ɵɵelementStart(53, "div");
|
|
496
|
+
i0.ɵɵtemplate(54, RecipeDetailsComponent_div_0_ng_miam_addon_link_54_Template, 1, 1, "ng-miam-addon-link", 36);
|
|
466
497
|
i0.ɵɵelementEnd();
|
|
467
|
-
i0.ɵɵtemplate(
|
|
468
|
-
i0.ɵɵtemplate(
|
|
469
|
-
i0.ɵɵelementStart(
|
|
470
|
-
i0.ɵɵelementStart(
|
|
471
|
-
i0.ɵɵelementStart(
|
|
472
|
-
i0.ɵɵelement(
|
|
498
|
+
i0.ɵɵtemplate(55, RecipeDetailsComponent_div_0_div_55_Template, 18, 4, "div", 37);
|
|
499
|
+
i0.ɵɵtemplate(56, RecipeDetailsComponent_div_0_ng_template_56_Template, 10, 8, "ng-template", null, 38, i0.ɵɵtemplateRefExtractor);
|
|
500
|
+
i0.ɵɵelementStart(58, "div", 39);
|
|
501
|
+
i0.ɵɵelementStart(59, "div", 31);
|
|
502
|
+
i0.ɵɵelementStart(60, "div", 32);
|
|
503
|
+
i0.ɵɵelement(61, "ng-miam-recipe-pricing", 33);
|
|
473
504
|
i0.ɵɵelementEnd();
|
|
474
|
-
i0.ɵɵtemplate(
|
|
505
|
+
i0.ɵɵtemplate(62, RecipeDetailsComponent_div_0_button_62_Template, 6, 8, "button", 34);
|
|
475
506
|
i0.ɵɵelementEnd();
|
|
476
507
|
i0.ɵɵelementEnd();
|
|
477
508
|
i0.ɵɵelementEnd();
|
|
478
509
|
} if (rf & 2) {
|
|
479
|
-
const
|
|
510
|
+
const _r21 = i0.ɵɵreference(57);
|
|
480
511
|
const ctx_r0 = i0.ɵɵnextContext();
|
|
481
|
-
var
|
|
482
|
-
i0.ɵɵadvance(
|
|
483
|
-
i0.ɵɵproperty("
|
|
484
|
-
i0.ɵɵadvance(
|
|
485
|
-
i0.ɵɵproperty("ngIf",
|
|
512
|
+
var tmp_3_0 = null;
|
|
513
|
+
i0.ɵɵadvance(6);
|
|
514
|
+
i0.ɵɵproperty("ngIf", !ctx_r0.showVideo);
|
|
515
|
+
i0.ɵɵadvance(1);
|
|
516
|
+
i0.ɵɵproperty("ngIf", !ctx_r0.showVideo);
|
|
517
|
+
i0.ɵɵadvance(1);
|
|
518
|
+
i0.ɵɵproperty("ngIf", ctx_r0.showVideo && ctx_r0.playerWidth);
|
|
519
|
+
i0.ɵɵadvance(1);
|
|
520
|
+
i0.ɵɵproperty("ngIf", (tmp_3_0 = i0.ɵɵpipeBind1(10, 39, ctx_r0.groceriesListsService.list$)) == null ? null : tmp_3_0.hasRecipe(ctx_r0.recipe == null ? null : ctx_r0.recipe.id));
|
|
486
521
|
i0.ɵɵadvance(3);
|
|
487
|
-
i0.ɵɵproperty("ngIf", i0.ɵɵpipeBind1(
|
|
522
|
+
i0.ɵɵproperty("ngIf", i0.ɵɵpipeBind1(13, 41, ctx_r0.userService.isLogged$));
|
|
488
523
|
i0.ɵɵadvance(2);
|
|
489
524
|
i0.ɵɵproperty("width", 26)("height", 26)("iconName", ctx_r0.icon.Calendar);
|
|
490
525
|
i0.ɵɵadvance(1);
|
|
@@ -502,7 +537,7 @@ function RecipeDetailsComponent_div_0_Template(rf, ctx) { if (rf & 1) {
|
|
|
502
537
|
i0.ɵɵadvance(1);
|
|
503
538
|
i0.ɵɵproperty("ngIf", (ctx_r0.recipe == null ? null : ctx_r0.recipe.restingTime) !== "-");
|
|
504
539
|
i0.ɵɵadvance(4);
|
|
505
|
-
i0.ɵɵtextInterpolate(i0.ɵɵpipeBind1(
|
|
540
|
+
i0.ɵɵtextInterpolate(i0.ɵɵpipeBind1(30, 43, ctx_r0.recipe == null ? null : ctx_r0.recipe.recipeType == null ? null : ctx_r0.recipe.recipeType.attributes == null ? null : ctx_r0.recipe.recipeType.attributes.name));
|
|
506
541
|
i0.ɵɵadvance(3);
|
|
507
542
|
i0.ɵɵtextInterpolate(ctx_r0.recipe == null ? null : ctx_r0.recipe.attributes["title"]);
|
|
508
543
|
i0.ɵɵadvance(2);
|
|
@@ -514,7 +549,7 @@ function RecipeDetailsComponent_div_0_Template(rf, ctx) { if (rf & 1) {
|
|
|
514
549
|
i0.ɵɵadvance(1);
|
|
515
550
|
i0.ɵɵproperty("ngSwitchCase", "difficile");
|
|
516
551
|
i0.ɵɵadvance(3);
|
|
517
|
-
i0.ɵɵtextInterpolate(i0.ɵɵpipeBind1(
|
|
552
|
+
i0.ɵɵtextInterpolate(i0.ɵɵpipeBind1(41, 45, ctx_r0.recipe == null ? null : ctx_r0.recipe.difficultyLabel));
|
|
518
553
|
i0.ɵɵadvance(3);
|
|
519
554
|
i0.ɵɵtextInterpolate1(" ", ctx_r0.recipe == null ? null : ctx_r0.recipe.attributes["description"], " ");
|
|
520
555
|
i0.ɵɵadvance(2);
|
|
@@ -526,16 +561,16 @@ function RecipeDetailsComponent_div_0_Template(rf, ctx) { if (rf & 1) {
|
|
|
526
561
|
i0.ɵɵadvance(3);
|
|
527
562
|
i0.ɵɵproperty("ngIf", (ctx_r0.recipe == null ? null : ctx_r0.recipe.sponsors == null ? null : ctx_r0.recipe.sponsors.length) > 0 || ctx_r0.recipe.informationalSentence);
|
|
528
563
|
i0.ɵɵadvance(1);
|
|
529
|
-
i0.ɵɵproperty("ngIf", !ctx_r0.isMobile)("ngIfElse",
|
|
564
|
+
i0.ɵɵproperty("ngIf", !ctx_r0.isMobile)("ngIfElse", _r21);
|
|
530
565
|
i0.ɵɵadvance(6);
|
|
531
566
|
i0.ɵɵproperty("recipe", ctx_r0.recipe)("serves", ctx_r0.recipe == null ? null : ctx_r0.recipe.modifiedGuests);
|
|
532
567
|
i0.ɵɵadvance(1);
|
|
533
568
|
i0.ɵɵproperty("ngIf", ctx_r0.previewAllowed);
|
|
534
569
|
} }
|
|
535
570
|
function RecipeDetailsComponent_ng_template_1_Template(rf, ctx) { if (rf & 1) {
|
|
536
|
-
const
|
|
537
|
-
i0.ɵɵelementStart(0, "ng-miam-recipe-addon",
|
|
538
|
-
i0.ɵɵlistener("hideAddon", function RecipeDetailsComponent_ng_template_1_Template_ng_miam_recipe_addon_hideAddon_0_listener() { i0.ɵɵrestoreView(
|
|
571
|
+
const _r64 = i0.ɵɵgetCurrentView();
|
|
572
|
+
i0.ɵɵelementStart(0, "ng-miam-recipe-addon", 80);
|
|
573
|
+
i0.ɵɵlistener("hideAddon", function RecipeDetailsComponent_ng_template_1_Template_ng_miam_recipe_addon_hideAddon_0_listener() { i0.ɵɵrestoreView(_r64); const ctx_r63 = i0.ɵɵnextContext(); return ctx_r63.toggleAddon(); });
|
|
539
574
|
i0.ɵɵelementEnd();
|
|
540
575
|
} if (rf & 2) {
|
|
541
576
|
const ctx_r2 = i0.ɵɵnextContext();
|
|
@@ -550,8 +585,8 @@ export class RecipeDetailsComponent {
|
|
|
550
585
|
this.posService = posService;
|
|
551
586
|
this.recipeEventsService = recipeEventsService;
|
|
552
587
|
this.contextService = contextService;
|
|
553
|
-
this.forceIngredientsStepstoggle = false;
|
|
554
588
|
this.previewAllowed = true;
|
|
589
|
+
this.ingredientsPictures = false;
|
|
555
590
|
this.recipeAdded = new EventEmitter();
|
|
556
591
|
this.recipeChanged = new EventEmitter();
|
|
557
592
|
this.recipeError = new EventEmitter();
|
|
@@ -564,22 +599,51 @@ export class RecipeDetailsComponent {
|
|
|
564
599
|
this.ingredientsChecked = {};
|
|
565
600
|
this.showIngredient = true;
|
|
566
601
|
this.closeIconhidden = new BehaviorSubject(false);
|
|
602
|
+
this.scrollListenerInitialised = false;
|
|
567
603
|
this.subscriptions = [];
|
|
568
604
|
this.isMobile = this.mediaMatcher.matchMedia('(max-width: 1023px)').matches;
|
|
569
605
|
}
|
|
570
|
-
onScroll($event) {
|
|
571
|
-
if ($event.srcElement.scrollTop > 300 !== this.closeIconhidden.value) {
|
|
572
|
-
this.closeIconhidden.next($event.srcElement.scrollTop > 300);
|
|
573
|
-
}
|
|
574
|
-
}
|
|
575
606
|
ngOnChanges() {
|
|
576
|
-
|
|
607
|
+
var _a;
|
|
608
|
+
// if forceIngredientsStepstoggle, use isMobile to toggle ingredients & steps in mobile mode, else
|
|
609
|
+
// Use the value of forceIngredientsStepstoggle to force it to mobile (true) or desktop (false)
|
|
610
|
+
if (this.forceIngredientsStepstoggle !== undefined) {
|
|
611
|
+
this.isMobile = this.forceIngredientsStepstoggle;
|
|
612
|
+
}
|
|
613
|
+
this.showVideo = false; // force reload video player
|
|
614
|
+
this.cdr.detectChanges();
|
|
615
|
+
this.showVideo = this.contextService.videoRecipesEnabled && ((_a = this.recipe) === null || _a === void 0 ? void 0 : _a.videoId);
|
|
577
616
|
if (this.recipe) {
|
|
578
617
|
this.steps = this.recipe.steps;
|
|
579
618
|
this.activeStep = 0;
|
|
580
619
|
this.cdr.detectChanges();
|
|
581
620
|
}
|
|
582
621
|
}
|
|
622
|
+
ngAfterViewChecked() {
|
|
623
|
+
var _a, _b;
|
|
624
|
+
this.playerWidth = Math.min(640, (_b = (_a = this.topContainerImg) === null || _a === void 0 ? void 0 : _a.nativeElement) === null || _b === void 0 ? void 0 : _b.offsetWidth);
|
|
625
|
+
this.playerHeight = this.playerWidth * 390 / 640;
|
|
626
|
+
if (!this.scrollListenerInitialised) {
|
|
627
|
+
this.initScrollListener();
|
|
628
|
+
}
|
|
629
|
+
}
|
|
630
|
+
/**
|
|
631
|
+
* Init the listener on scroll so the modal can hide the close icon
|
|
632
|
+
*/
|
|
633
|
+
initScrollListener() {
|
|
634
|
+
if (this.mainContainer) {
|
|
635
|
+
const intersectionObserver = new IntersectionObserver(([entry]) => {
|
|
636
|
+
if (this.mainContainer.nativeElement.scrollTop > 300 !== this.closeIconhidden.value) {
|
|
637
|
+
this.closeIconhidden.next(this.mainContainer.nativeElement.scrollTop > 300);
|
|
638
|
+
}
|
|
639
|
+
}, {
|
|
640
|
+
threshold: [0, 0.33, 0.66, 1],
|
|
641
|
+
root: this.mainContainer.nativeElement
|
|
642
|
+
});
|
|
643
|
+
intersectionObserver.observe(this.topContainerImg.nativeElement);
|
|
644
|
+
this.scrollListenerInitialised = true;
|
|
645
|
+
}
|
|
646
|
+
}
|
|
583
647
|
changeActiveStep(index) {
|
|
584
648
|
this.activeStep = index;
|
|
585
649
|
this.cdr.detectChanges();
|
|
@@ -633,17 +697,25 @@ export class RecipeDetailsComponent {
|
|
|
633
697
|
this.showIngredient = isShowed;
|
|
634
698
|
this.cdr.detectChanges();
|
|
635
699
|
}
|
|
700
|
+
ingredientPicture(ingredient) {
|
|
701
|
+
return ingredient.picture || this.contextService.defaultIngredientPicture;
|
|
702
|
+
}
|
|
636
703
|
}
|
|
637
704
|
RecipeDetailsComponent.ɵfac = function RecipeDetailsComponent_Factory(t) { return new (t || RecipeDetailsComponent)(i0.ɵɵdirectiveInject(i0.ChangeDetectorRef), i0.ɵɵdirectiveInject(i1.MediaMatcher), i0.ɵɵdirectiveInject(i2.GroceriesListsService), i0.ɵɵdirectiveInject(i2.UserService), i0.ɵɵdirectiveInject(i2.PointOfSalesService), i0.ɵɵdirectiveInject(i2.RecipeEventsService), i0.ɵɵdirectiveInject(i2.ContextService)); };
|
|
638
|
-
RecipeDetailsComponent.ɵcmp = i0.ɵɵdefineComponent({ type: RecipeDetailsComponent, selectors: [["ng-miam-recipe-details"]],
|
|
639
|
-
i0.ɵɵ
|
|
640
|
-
|
|
641
|
-
|
|
705
|
+
RecipeDetailsComponent.ɵcmp = i0.ɵɵdefineComponent({ type: RecipeDetailsComponent, selectors: [["ng-miam-recipe-details"]], viewQuery: function RecipeDetailsComponent_Query(rf, ctx) { if (rf & 1) {
|
|
706
|
+
i0.ɵɵviewQuery(_c0, true);
|
|
707
|
+
i0.ɵɵviewQuery(_c1, true);
|
|
708
|
+
} if (rf & 2) {
|
|
709
|
+
var _t;
|
|
710
|
+
i0.ɵɵqueryRefresh(_t = i0.ɵɵloadQuery()) && (ctx.topContainerImg = _t.first);
|
|
711
|
+
i0.ɵɵqueryRefresh(_t = i0.ɵɵloadQuery()) && (ctx.mainContainer = _t.first);
|
|
712
|
+
} }, inputs: { recipe: "recipe", forceIngredientsStepstoggle: "forceIngredientsStepstoggle", previewAllowed: "previewAllowed", ingredientsPictures: "ingredientsPictures" }, outputs: { recipeAdded: "recipeAdded", recipeChanged: "recipeChanged", recipeError: "recipeError" }, features: [i0.ɵɵNgOnChangesFeature], decls: 3, vars: 2, consts: [["class", "miam-recipe-details", 4, "ngIf", "ngIfElse"], ["addon", ""], [1, "miam-recipe-details"], ["mainContainer", ""], [1, "miam-recipe-details__top__container"], [1, "miam-recipe-details__top__left"], [1, "miam-recipe-details__top__container__img"], ["topContainerImg", ""], [3, "src", 4, "ngIf"], ["class", "miam-recipe-details__picture__gradient", 4, "ngIf"], [3, "videoId", "width", "height", 4, "ngIf"], ["class", "miam-recipe-details__picture__tag", 4, "ngIf"], [1, "miam-recipe-details__img__actions"], ["class", "miam-recipe-details__actions__icon miam-noPadding", 3, "recipe", "width", "height", 4, "ngIf"], ["primaryColor", "var(--m-color-primary)", 1, "miam-recipe-details__actions__icon", 3, "width", "height", "iconName"], ["class", "miam-recipe-details__picture__sponsor", 3, "src", 4, "ngIf"], [1, "miam-recipe-details__top__container__info"], [1, "miam-recipe-details__info__metrics", "miam-recipe-details__info__metrics__total"], ["primaryColor", "var(--m-color-primary)", 3, "width", "height", "iconName"], [1, "miam-recipe-details__info__times"], ["class", "miam-recipe-details__info__metrics", 4, "ngIf"], [1, "miam-recipe-details__top__container__infos"], [1, "miam-recipe-details__top__container__infos__top"], [1, "miam-recipe-details__infos__type"], [1, "miam-recipe-details__infos__title"], [1, "miam-recipe-details__infos__difficulty"], [3, "ngSwitch"], [4, "ngSwitchCase"], [4, "ngSwitchDefault"], [1, "miam-recipe-details__infos__description"], [1, "miam-recipe-details__description__action", 3, "click"], [1, "miam-recipe-details__infos__price__wrapper"], [1, "miam-recipe-details__infos__price"], [3, "recipe", "serves"], ["class", "miam-recipe-details__infos__action m-button-fab-primary", 3, "click", 4, "ngIf"], [1, "miam-recipe-details__mid__container"], [3, "recipe", "showAddon", 4, "ngIf"], ["class", "miam-recipe-details__bottom__container", 4, "ngIf", "ngIfElse"], ["mobileContainer", ""], [1, "miam-recipe-details__bottom__container__action"], [3, "src"], [1, "miam-recipe-details__picture__gradient"], [3, "videoId", "width", "height"], [1, "miam-recipe-details__picture__tag"], [1, "miam-recipe-details__actions__icon", "miam-noPadding", 3, "recipe", "width", "height"], [1, "miam-recipe-details__picture__sponsor", 3, "src"], [1, "miam-recipe-details__info__metrics"], [1, "miam-recipe-details__metrics__row"], ["primaryColor", "var(--m-color-slate)", 3, "width", "height", "iconName"], [3, "width", "height", "iconName"], [1, "miam-recipe-details__infos__action", "m-button-fab-primary", 3, "click"], ["primaryColor", "#fff", 3, "width", "height", "iconName"], [3, "recipe", "showAddon"], [1, "miam-recipe-details__bottom__container"], [1, "miam-recipe-details__bottom__container__ingredients"], [1, "miam-recipe-details__bottom__container__header"], [1, "miam-recipe-details__ingredients__row"], [1, "miam-recipe-details__ingredients__counter"], [3, "counter", "counterChange"], [1, "miam-recipe-details__ingredients__counter__print"], [1, "miam-recipe-details__ingredients__row__qty"], [1, "miam-recipe-details__ingredients__list"], ["class", "miam-recipe-details__ingredients__row", 3, "ngClass", 4, "ngFor", "ngForOf"], [1, "miam-recipe-details__bottom__container__steps"], [1, "miam-recipe-details__steps__list"], ["class", "miam-recipe-details__steps__list__panel", 3, "active", "miam-recipe-details__panel__done", "click", 4, "ngFor", "ngForOf"], [1, "miam-recipe-details__ingredients__row", 3, "ngClass"], [4, "ngIf"], [1, "miam-recipe-details__ingredients__row__picture", 3, "src"], [1, "miam-recipe-details__steps__list__panel", 3, "click"], [1, "miam-recipe-details__panel__idx"], [1, "miam-recipe-details__panel__text"], ["class", "miam-recipe-details__panel__checkIcon", "primaryColor", "var(--m-color-secondary)", 3, "height", "width", "iconName", 4, "ngIf"], ["primaryColor", "var(--m-color-secondary)", 1, "miam-recipe-details__panel__checkIcon", 3, "height", "width", "iconName"], [1, "miam-recipe-details__mobile__container"], ["mobileContainerTop", ""], [1, "miam-recipe-details__mobile__header"], [1, "m-button-secondary", 3, "ngClass", "click"], [4, "ngIf", "ngIfElse"], ["stepsContainer", ""], [3, "recipe", "hideAddon"]], template: function RecipeDetailsComponent_Template(rf, ctx) { if (rf & 1) {
|
|
713
|
+
i0.ɵɵtemplate(0, RecipeDetailsComponent_div_0_Template, 63, 47, "div", 0);
|
|
642
714
|
i0.ɵɵtemplate(1, RecipeDetailsComponent_ng_template_1_Template, 1, 1, "ng-template", null, 1, i0.ɵɵtemplateRefExtractor);
|
|
643
715
|
} if (rf & 2) {
|
|
644
716
|
const _r1 = i0.ɵɵreference(2);
|
|
645
717
|
i0.ɵɵproperty("ngIf", ctx.showDetail)("ngIfElse", _r1);
|
|
646
|
-
} }, directives: [i3.NgIf, i4.IconComponent, i3.NgSwitch, i3.NgSwitchCase, i3.NgSwitchDefault, i5.RecipePricingComponent, i6.LikeButtonComponent, i7.AddonLinkComponent, i8.CounterInputComponent, i3.NgForOf, i3.NgClass, i9.RecipeAddonComponent], pipes: [i3.AsyncPipe, i3.TitleCasePipe, i10.CapitalizeFirstLetterPipe, i11.ReadableFloatNumberPipe], styles: [".miam-recipe-details{border-radius:var(--m-border-radius);display:inline-flex;flex-direction:row;flex-wrap:wrap;height:calc(80vh - 80px);margin:40px 8px;min-width:calc(100% - 32px);padding:0 16px}.miam-recipe-details::-webkit-scrollbar-button{height:20px}.miam-recipe-details::-webkit-scrollbar-track{background:var(--m-color-grey)}.miam-recipe-details::-webkit-scrollbar{cursor:-webkit-grab;height:7px;width:5px}.miam-recipe-details::-webkit-scrollbar-thumb{background:var(--m-color-primary);border-radius:5px}.miam-recipe-details .miam-recipe-details__top__container{display:flex;justify-content:space-evenly}.miam-recipe-details .miam-recipe-details__top__container .miam-recipe-details__top__container__img{border-radius:var(--m-border-radius);height:400px;overflow:hidden;position:relative;width:370px}.miam-recipe-details .miam-recipe-details__top__container .miam-recipe-details__top__container__img img{-o-object-fit:cover;-webkit-print-color-adjust:exact;display:block;height:100%;object-fit:cover;transform:translateX(-25%)}.miam-recipe-details .miam-recipe-details__top__container .miam-recipe-details__top__container__img .miam-recipe-details__picture__gradient{background:linear-gradient(180deg,transparent 57.92%,rgba(0,0,0,.75) 100%,rgba(0,0,0,.75) 0);border-top-left-radius:var(--m-border-radius);border-top-right-radius:var(--m-border-radius);display:block;height:100%;position:absolute;top:0;width:100%}@media print{.miam-recipe-details .miam-recipe-details__top__container .miam-recipe-details__top__container__img .miam-recipe-details__picture__gradient{display:none}}.miam-recipe-details .miam-recipe-details__top__container .miam-recipe-details__top__container__img .miam-recipe-details__picture__tag{background-color:var(--m-color-primary-light);border-radius:5px;bottom:16px;color:var(--m-color-primary);font-weight:500;left:16px;padding:8px;position:absolute;text-transform:uppercase}@media print{.miam-recipe-details .miam-recipe-details__top__container .miam-recipe-details__top__container__img .miam-recipe-details__picture__tag{display:none}}.miam-recipe-details .miam-recipe-details__top__container .miam-recipe-details__top__container__img .miam-recipe-details__img__actions{display:flex;flex-direction:column;justify-content:space-evenly;position:absolute;right:16px;top:16px;z-index:var(--m-z-index-position-absolute-hight)}@media print{.miam-recipe-details .miam-recipe-details__top__container .miam-recipe-details__top__container__img .miam-recipe-details__img__actions{display:none}}.miam-recipe-details .miam-recipe-details__top__container .miam-recipe-details__top__container__img .miam-recipe-details__img__actions .miam-recipe-details__actions__icon{-o-object-fit:contain;background-color:#fff;border-radius:var(--m-border-radius-circle);box-shadow:var(--m-shadow-small);margin:0 0 16px;object-fit:contain;padding:8px;width:-webkit-max-content;width:-moz-max-content;width:max-content}.miam-recipe-details .miam-recipe-details__top__container .miam-recipe-details__top__container__img .miam-recipe-details__img__actions .miam-recipe-details__actions__icon.miam-noPadding{padding:0}.miam-recipe-details .miam-recipe-details__top__container .miam-recipe-details__top__container__img .miam-recipe-details__picture__sponsor{-o-object-fit:contain;bottom:16px;height:auto;max-height:72px;max-width:96px;object-fit:contain;position:absolute;right:16px;transform:none;width:auto}.miam-recipe-details .miam-recipe-details__top__container .miam-recipe-details__top__container__infos{display:flex;flex:1 1;flex-direction:column;justify-content:space-between;margin-left:40px;padding:16px;position:relative}@media (max-width:1022px){.miam-recipe-details .miam-recipe-details__top__container .miam-recipe-details__top__container__infos .miam-recipe-details__infos__price__wrapper{display:none}}.miam-recipe-details .miam-recipe-details__top__container .miam-recipe-details__top__container__infos .miam-recipe-details__top__container__infos__top{display:flex;flex-direction:column;position:relative}.miam-recipe-details .miam-recipe-details__top__container .miam-recipe-details__top__container__infos .miam-recipe-details__top__container__infos__top .miam-recipe-details__infos__type{color:var(--m-color-black);font-size:14px;line-height:1.14;padding-bottom:16px;text-align:left}.miam-recipe-details .miam-recipe-details__top__container .miam-recipe-details__top__container__infos .miam-recipe-details__top__container__infos__top .miam-recipe-details__infos__title{color:var(--m-color-secondary);font-size:32px;font-weight:700;line-height:1.1;text-align:left}.miam-recipe-details .miam-recipe-details__top__container .miam-recipe-details__top__container__infos .miam-recipe-details__top__container__infos__top .miam-recipe-details__infos__difficulty{display:flex;padding:16px 0}.miam-recipe-details .miam-recipe-details__top__container .miam-recipe-details__top__container__infos .miam-recipe-details__top__container__infos__top .miam-recipe-details__infos__difficulty ng-miam-icon{margin-right:8px}.miam-recipe-details .miam-recipe-details__top__container .miam-recipe-details__top__container__infos .miam-recipe-details__top__container__infos__top .miam-recipe-details__infos__metrics{align-items:center;display:flex;flex-direction:column}.miam-recipe-details .miam-recipe-details__top__container .miam-recipe-details__top__container__infos .miam-recipe-details__top__container__infos__top .miam-recipe-details__infos__metrics span{color:var(--m-color-black);font-size:14px;margin-left:12px}.miam-recipe-details .miam-recipe-details__top__container .miam-recipe-details__top__container__infos .miam-recipe-details__top__container__infos__top .miam-recipe-details__infos__metrics .miam-recipe-details__metrics__row{display:flex}.miam-recipe-details .miam-recipe-details__top__container .miam-recipe-details__top__container__infos .miam-recipe-details__top__container__infos__top .miam-recipe-details__infos__description{color:var(--m-color-grey-text-dark);display:flex;flex:1;flex-direction:column;font-size:17px;line-height:1.62;margin-bottom:24px;overflow-y:auto;text-align:left;word-break:break-word}.miam-recipe-details .miam-recipe-details__top__container .miam-recipe-details__top__container__infos .miam-recipe-details__top__container__infos__top .miam-recipe-details__infos__description .miam-recipe-details__description__action{align-items:center;display:flex;margin-top:16px}@media print{.miam-recipe-details .miam-recipe-details__top__container .miam-recipe-details__top__container__infos .miam-recipe-details__top__container__infos__top .miam-recipe-details__infos__description .miam-recipe-details__description__action{display:none}}.miam-recipe-details .miam-recipe-details__top__container .miam-recipe-details__top__container__infos .miam-recipe-details__top__container__infos__top .miam-recipe-details__infos__description .miam-recipe-details__description__action>*{cursor:pointer}.miam-recipe-details .miam-recipe-details__top__container .miam-recipe-details__top__container__infos .miam-recipe-details__top__container__infos__top .miam-recipe-details__infos__description .miam-recipe-details__description__action>:hover{color:var(--m-color-primary);text-decoration:underline}.miam-recipe-details .miam-recipe-details__top__container .miam-recipe-details__top__container__infos .miam-recipe-details__top__container__infos__top .miam-recipe-details__infos__description .miam-recipe-details__description__action ng-miam-icon{margin-right:10px}.miam-recipe-details .miam-recipe-details__infos__price__wrapper{align-items:flex-end;display:flex;flex-direction:column;height:100%;justify-content:flex-start;max-height:225px;padding-left:16px;position:relative}.miam-recipe-details .miam-recipe-details__infos__price__wrapper .miam-recipe-details__infos__price{margin-bottom:4px;padding:4px}.miam-recipe-details .miam-recipe-details__infos__price__wrapper .miam-recipe-details__infos__price .miam-recipe-pricing__wrapper{color:var(--m-color-primary);flex-direction:row}@media (max-width:1022px){.miam-recipe-details .miam-recipe-details__infos__price__wrapper .miam-recipe-details__infos__price .miam-recipe-pricing__wrapper{display:flex;flex-direction:column}}@media print{.miam-recipe-details .miam-recipe-details__infos__price__wrapper .miam-recipe-details__infos__price .miam-recipe-pricing__wrapper{display:none}}.miam-recipe-details .miam-recipe-details__infos__price__wrapper .miam-recipe-details__infos__price .miam-recipe-pricing__wrapper .miam-recipe-pricing__wrapper__price{font-size:20px}.miam-recipe-details .miam-recipe-details__infos__price__wrapper .miam-recipe-details__infos__price .miam-recipe-pricing__wrapper .miam-recipe-pricing__wrapper__subline{font-size:14px;margin-left:12px}.miam-recipe-details .miam-recipe-details__infos__price__wrapper .miam-recipe-details__infos__action{border-radius:20px;color:var(--m-color-white);font-size:16px;padding:8px 20px}@media print{.miam-recipe-details .miam-recipe-details__infos__price__wrapper .miam-recipe-details__infos__action{display:none}}@media (min-width:1022px){.miam-recipe-details .miam-recipe-details__infos__price__wrapper .miam-recipe-details__infos__action:hover{color:var(--m-color-primary)}}.miam-recipe-details .miam-recipe-details__infos__price__wrapper .miam-recipe-details__infos__action ng-miam-icon{margin-left:16px}.miam-recipe-details .miam-recipe-details__top__container__info{align-items:center;display:flex;flex-direction:column;gap:24px;justify-content:center;padding:16px 0;width:370px}.miam-recipe-details .miam-recipe-details__top__container__info .miam-recipe-details__info__metrics{align-items:center;display:flex;justify-content:center}.miam-recipe-details .miam-recipe-details__top__container__info .miam-recipe-details__info__metrics span{color:var(--m-color-primary);font-size:19px;font-weight:700;margin-left:12px}.miam-recipe-details .miam-recipe-details__top__container__info .miam-recipe-details__info__times{align-items:center;display:flex;justify-content:space-evenly}.miam-recipe-details .miam-recipe-details__top__container__info .miam-recipe-details__info__times .miam-recipe-details__info__metrics{flex-direction:column;margin-right:24px}.miam-recipe-details .miam-recipe-details__top__container__info .miam-recipe-details__info__times .miam-recipe-details__info__metrics span{color:var(--m-color-black);font-size:13px;font-weight:400;line-height:16px;margin-left:4px}.miam-recipe-details .miam-recipe-details__top__container__info .miam-recipe-details__info__times .miam-recipe-details__info__metrics .miam-recipe-details__metrics__row{align-items:center;display:flex}.miam-recipe-details .miam-recipe-details__top__container__info .miam-recipe-details__info__times .miam-recipe-details__info__metrics .miam-recipe-details__metrics__row span{font-size:19px}.miam-recipe-details .miam-recipe-details__top__container__info .miam-recipe-details__info__times .miam-recipe-details__info__metrics{align-items:center;display:flex;justify-content:center;z-index:0}.miam-recipe-details .miam-recipe-details__top__container__info .miam-recipe-details__info__times .miam-recipe-details__info__metrics ng-miam-icon{display:flex;justify-content:center;margin-right:4px;min-height:32px}.miam-recipe-details .miam-recipe-details__top__container__info .miam-recipe-details__info__times .miam-recipe-details__info__metrics span{font-size:15px}.miam-recipe-details .miam-recipe-details__mid__container{border-bottom:1px dashed var(--m-color-primary);display:flex;padding-bottom:16px;width:100%}.miam-recipe-details .miam-recipe-details__bottom__container{display:flex;width:100%}.miam-recipe-details .miam-recipe-details__bottom__container .miam-recipe-details__bottom__container__header{border-bottom:1px solid var(--m-color-grey-text);color:var(--m-color-primary);display:block;font-size:20px;font-size:17px;font-weight:700;margin:24px 0;padding:16px 0 8px;position:relative}.miam-recipe-details .miam-recipe-details__bottom__container .miam-recipe-details__ingredients__counter{align-items:center;display:flex}.miam-recipe-details .miam-recipe-details__bottom__container .miam-recipe-details__ingredients__counter ng-miam-counter-input .miam-counter-input__icon{margin-right:16px}.miam-recipe-details .miam-recipe-details__bottom__container .miam-recipe-details__ingredients__counter .miam-recipe-details__ingredients__counter__print{display:none}@media print{.miam-recipe-details .miam-recipe-details__bottom__container .miam-recipe-details__ingredients__counter ng-miam-counter-input{display:none}.miam-recipe-details .miam-recipe-details__bottom__container .miam-recipe-details__ingredients__counter .miam-recipe-details__ingredients__counter__print{display:block}}.miam-recipe-details .miam-recipe-details__bottom__container .miam-recipe-details__ingredients__list{flex:1 1;overflow-y:auto;padding-bottom:40px}.miam-recipe-details .miam-recipe-details__bottom__container .miam-recipe-details__ingredients__list::-webkit-scrollbar-track{background:var(--m-color-grey)}.miam-recipe-details .miam-recipe-details__bottom__container .miam-recipe-details__ingredients__list::-webkit-scrollbar{cursor:-webkit-grab;height:7px;width:5px}.miam-recipe-details .miam-recipe-details__bottom__container .miam-recipe-details__ingredients__list::-webkit-scrollbar-thumb{background:var(--m-color-primary);border-radius:5px}.miam-recipe-details .miam-recipe-details__bottom__container .miam-recipe-details__ingredients__row{color:var(--m-color-black);display:flex;font-size:14px;font-weight:700;height:40px;justify-content:space-between;padding-bottom:16px}.miam-recipe-details .miam-recipe-details__bottom__container .miam-recipe-details__ingredients__row .miam-recipe-details__ingredients__row__qty{color:var(--m-color-grey-text-dark);font-size:14px;font-weight:500;padding-right:10px}.miam-recipe-details .miam-recipe-details__bottom__container .miam-recipe-details__bottom__container__ingredients{display:flex;flex:1;flex-direction:column;padding:0 40px 0 0}.miam-recipe-details .miam-recipe-details__bottom__container .miam-recipe-details__bottom__container__steps{display:flex;flex:1;flex-direction:column}.miam-recipe-details .miam-recipe-details__bottom__container .miam-recipe-details__bottom__container__steps .miam-recipe-details__steps__list{flex:1 1;overflow-y:auto;padding-bottom:40px}.miam-recipe-details .miam-recipe-details__bottom__container .miam-recipe-details__bottom__container__steps .miam-recipe-details__steps__list::-webkit-scrollbar-track{background:var(--m-color-grey)}.miam-recipe-details .miam-recipe-details__bottom__container .miam-recipe-details__bottom__container__steps .miam-recipe-details__steps__list::-webkit-scrollbar{cursor:-webkit-grab;height:7px;width:5px}.miam-recipe-details .miam-recipe-details__bottom__container .miam-recipe-details__bottom__container__steps .miam-recipe-details__steps__list::-webkit-scrollbar-thumb{background:var(--m-color-primary);border-radius:5px}.miam-recipe-details .miam-recipe-details__bottom__container .miam-recipe-details__bottom__container__steps .miam-recipe-details__steps__list .miam-recipe-details__steps__list__panel{-webkit-tap-highlight-color:transparent;align-items:center;background-color:var(--m-color-primary-text);border-radius:var(--m-border-radius);cursor:pointer;display:flex;flex-direction:row;margin:0 16px 8px 0;text-align:left;transition:var(--m-default-transition)}.miam-recipe-details .miam-recipe-details__bottom__container .miam-recipe-details__bottom__container__steps .miam-recipe-details__steps__list .miam-recipe-details__steps__list__panel .miam-recipe-details__panel__idx{color:var(--m-color-secondary);flex:0 0 auto;font-size:20px;margin-right:20px}.miam-recipe-details .miam-recipe-details__bottom__container .miam-recipe-details__bottom__container__steps .miam-recipe-details__steps__list .miam-recipe-details__steps__list__panel .miam-recipe-details__panel__text{font-size:14px;word-break:break-word}.miam-recipe-details .miam-recipe-details__bottom__container .miam-recipe-details__bottom__container__steps .miam-recipe-details__steps__list .miam-recipe-details__steps__list__panel .miam-recipe-details__panel__checkIcon{flex:0 0 auto}.miam-recipe-details .miam-recipe-details__bottom__container .miam-recipe-details__bottom__container__steps .miam-recipe-details__steps__list .miam-recipe-details__steps__list__panel.miam-recipe-details__panel__done{background-color:var(--m-color-secondary-light)}.miam-recipe-details .miam-recipe-details__bottom__container .miam-recipe-details__bottom__container__steps .miam-recipe-details__steps__list .miam-recipe-details__steps__list__panel div{flex:1;margin:10px}@media print{.miam-recipe-details{height:unset}}@media (max-width:1022px){.miam-recipe-details{height:80vh;margin:0;min-width:100vw;overflow-y:auto;padding:0 0 80px}.miam-recipe-details .miam-recipe-details__infos__price__wrapper{align-items:center;background-color:var(--m-color-white);bottom:0;flex-direction:row;height:unset;justify-content:space-between;left:0;padding:4px 16px;position:fixed;right:0}.miam-recipe-details .miam-recipe-details__infos__price__wrapper .miam-recipe-pricing__wrapper{flex-direction:column}.miam-recipe-details .miam-recipe-details__infos__price__wrapper .miam-recipe-pricing__wrapper .miam-recipe-pricing__wrapper__subline{font-size:10px;margin-left:0}.miam-recipe-details .miam-recipe-details__infos__price__wrapper .miam-recipe-details__infos__action{padding:8px 10px}.miam-recipe-details .miam-recipe-details__top__container{flex-wrap:wrap}.miam-recipe-details .miam-recipe-details__top__container div .miam-recipe-details__top__left{position:-webkit-sticky;position:sticky;top:0;z-index:3}.miam-recipe-details .miam-recipe-details__top__container .miam-recipe-details__info__times{position:-webkit-sticky;position:sticky;top:0;z-index:1}.miam-recipe-details .miam-recipe-details__top__container .miam-recipe-details__top__container__img{height:220px;position:-webkit-sticky;position:sticky;top:-5vh;width:100vw;z-index:3}.miam-recipe-details .miam-recipe-details__top__container .miam-recipe-details__top__container__img img{height:unset;transform:none;width:100%}.miam-recipe-details .miam-recipe-details__top__container .miam-recipe-details__top__container__img .miam-recipe-details__picture__tag{bottom:unset;left:16px;top:16px}.miam-recipe-details .miam-recipe-details__top__container .miam-recipe-details__top__container__img .miam-recipe-details__img__actions{bottom:0;flex-direction:unset;left:8px;right:unset;top:unset}.miam-recipe-details .miam-recipe-details__top__container .miam-recipe-details__top__container__img .miam-recipe-details__img__actions .miam-recipe-details__actions__icon{-webkit-backdrop-filter:blur(10px);backdrop-filter:blur(10px);background:rgba(0,0,0,.65);background-color:unset;box-shadow:none;margin:0 4px 8px}.miam-recipe-details .miam-recipe-details__top__container .miam-recipe-details__top__container__infos{flex:unset;margin-left:unset;padding:0 16px;width:100vw;z-index:0}.miam-recipe-details .miam-recipe-details__top__container .miam-recipe-details__top__container__infos .miam-recipe-details__top__container__infos__top .miam-recipe-details__infos__type{display:none}.miam-recipe-details .miam-recipe-details__top__container .miam-recipe-details__top__container__infos .miam-recipe-details__top__container__infos__top .miam-recipe-details__infos__title{font-size:24px}.miam-recipe-details .miam-recipe-details__top__container .miam-recipe-details__top__container__infos .miam-recipe-details__top__container__infos__top .miam-recipe-details__infos__description{margin-bottom:16px}.miam-recipe-details .miam-recipe-details__top__container .miam-recipe-details__top__container__infos .miam-recipe-details__top__container__infos__top .miam-recipe-details__infos__description .miam-recipe-details__description__action{display:none}.miam-recipe-details .miam-recipe-details__top__container .miam-recipe-details__top__container__info{background-color:var(--m-color-white);width:unset;z-index:1}.miam-recipe-details .miam-recipe-details__mobile__container{display:flex;flex-direction:column;min-height:80vh;padding-bottom:50px;position:relative;width:100vw}.miam-recipe-details .miam-recipe-details__mobile__container .miam-recipe-details__mobile__header{background-color:var(--m-color-white);border-radius:32px 32px 0 0;display:flex;justify-content:space-evenly;padding:16px 0;position:-webkit-sticky;position:sticky;top:0;z-index:1}.miam-recipe-details .miam-recipe-details__mobile__container .miam-recipe-details__mobile__header button{margin-right:0}.miam-recipe-details .miam-recipe-details__mobile__container .miam-recipe-details__mobile__header button.active{background-color:var(--m-color-primary);color:var(--m-color-white)}.miam-recipe-details .miam-recipe-details__mobile__container .miam-recipe-details__ingredients__row{align-items:center;color:var(--m-color-black);display:flex;font-size:14px;font-weight:700;justify-content:space-between;padding-bottom:16px;padding-right:16px}.miam-recipe-details .miam-recipe-details__mobile__container .miam-recipe-details__ingredients__row div{width:100%}.miam-recipe-details .miam-recipe-details__mobile__container .miam-recipe-details__ingredients__row .miam-recipe-details__ingredients__row__qty{color:var(--m-color-grey-text-dark);font-size:14px;font-weight:500;margin-right:16px;padding-right:10px;text-align:end}.miam-recipe-details .miam-recipe-details__mobile__container .miam-recipe-details__ingredients__counter{display:flex;justify-content:space-between;padding:16px}.miam-recipe-details .miam-recipe-details__mobile__container .miam-recipe-details__ingredients__counter .miam-recipe-details__ingredients__counter__print{display:none}.miam-recipe-details .miam-recipe-details__mobile__container .miam-recipe-details__ingredients__list{display:flex;flex-direction:column}.miam-recipe-details .miam-recipe-details__mobile__container .miam-recipe-details__ingredients__list .miam-recipe-details__ingredients__row{display:flex;font-size:16px;justify-content:space-between;padding:0 16px 16px}.miam-recipe-details .miam-recipe-details__mobile__container .miam-recipe-details__steps__list .miam-recipe-details__steps__list__panel{-webkit-tap-highlight-color:transparent;align-items:center;align-items:flex-start;background-color:transparent;border-radius:var(--m-border-radius);cursor:pointer;display:flex;flex-direction:row;margin:0 8px 32px;padding:0;position:relative;text-align:left;transition:var(--m-default-transition)}.miam-recipe-details .miam-recipe-details__mobile__container .miam-recipe-details__steps__list .miam-recipe-details__steps__list__panel:not(:last-child):before{background-color:var(--m-color-grey);content:\"\";height:50%;left:29px;position:absolute;top:60px;width:1px}.miam-recipe-details .miam-recipe-details__mobile__container .miam-recipe-details__steps__list .miam-recipe-details__steps__list__panel.miam-recipe-details__panel__done{background-color:var(--miam-color-primary-light)}.miam-recipe-details .miam-recipe-details__mobile__container .miam-recipe-details__steps__list .miam-recipe-details__steps__list__panel .miam-recipe-details__panel__idx{align-items:center;background-color:var(--m-color-primary);border-radius:40px;color:#fff;display:flex;flex:0 0 auto;font-size:17px;font-weight:700;height:40px;justify-content:center;margin-right:20px;width:40px}.miam-recipe-details .miam-recipe-details__mobile__container .miam-recipe-details__steps__list .miam-recipe-details__steps__list__panel .miam-recipe-details__panel__text{font-size:14px}.miam-recipe-details .miam-recipe-details__mobile__container .miam-recipe-details__steps__list .miam-recipe-details__steps__list__panel .miam-recipe-details__panel__checkIcon{flex:0 0 auto}.miam-recipe-details .miam-recipe-details__mobile__container .miam-recipe-details__steps__list .miam-recipe-details__steps__list__panel div{flex:1;margin:10px}.miam-recipe-details .miam-recipe-details__bottom__container__action{background:var(--m-color-white);bottom:0;left:0;padding:0 16px;position:fixed;right:0;width:100vw;z-index:4}}"], encapsulation: 2, changeDetection: 0 });
|
|
718
|
+
} }, directives: [i3.NgIf, i4.IconComponent, i3.NgSwitch, i3.NgSwitchCase, i3.NgSwitchDefault, i5.RecipePricingComponent, i6.YouTubePlayer, i7.LikeButtonComponent, i8.AddonLinkComponent, i9.CounterInputComponent, i3.NgForOf, i3.NgClass, i10.RecipeAddonComponent], pipes: [i3.AsyncPipe, i3.TitleCasePipe, i11.CapitalizeFirstLetterPipe, i12.ReadableFloatNumberPipe], styles: [".miam-recipe-details{border-radius:var(--m-border-radius);display:inline-flex;flex-direction:row;flex-wrap:wrap;height:calc(80vh - 80px);margin:40px 8px;min-width:calc(100% - 32px);padding:0 16px}.miam-recipe-details::-webkit-scrollbar-button{height:20px}.miam-recipe-details::-webkit-scrollbar-track{background:var(--m-color-grey)}.miam-recipe-details::-webkit-scrollbar{cursor:-webkit-grab;height:7px;width:5px}.miam-recipe-details::-webkit-scrollbar-thumb{background:var(--m-color-primary);border-radius:5px}.miam-recipe-details .miam-recipe-details__top__container{display:flex;justify-content:space-evenly}.miam-recipe-details .miam-recipe-details__top__container .miam-recipe-details__top__container__img{align-items:center;border-radius:var(--m-border-radius);display:flex;height:400px;overflow:hidden;position:relative;width:370px}.miam-recipe-details .miam-recipe-details__top__container .miam-recipe-details__top__container__img img{-o-object-fit:cover;-webkit-print-color-adjust:exact;display:block;height:100%;object-fit:cover;transform:translateX(-25%)}.miam-recipe-details .miam-recipe-details__top__container .miam-recipe-details__top__container__img .miam-recipe-details__picture__gradient{background:linear-gradient(180deg,transparent 57.92%,rgba(0,0,0,.75) 100%,rgba(0,0,0,.75) 0);border-top-left-radius:var(--m-border-radius);border-top-right-radius:var(--m-border-radius);display:block;height:100%;position:absolute;top:0;width:100%}@media print{.miam-recipe-details .miam-recipe-details__top__container .miam-recipe-details__top__container__img .miam-recipe-details__picture__gradient{display:none}}.miam-recipe-details .miam-recipe-details__top__container .miam-recipe-details__top__container__img .miam-recipe-details__picture__tag{background-color:var(--m-color-primary-light);border-radius:5px;bottom:16px;color:var(--m-color-primary);font-weight:500;left:16px;padding:8px;position:absolute;text-transform:uppercase}@media print{.miam-recipe-details .miam-recipe-details__top__container .miam-recipe-details__top__container__img .miam-recipe-details__picture__tag{display:none}}.miam-recipe-details .miam-recipe-details__top__container .miam-recipe-details__top__container__img .miam-recipe-details__img__actions{display:flex;flex-direction:column;justify-content:space-evenly;position:absolute;right:16px;top:16px;z-index:var(--m-z-index-position-absolute-hight)}@media print{.miam-recipe-details .miam-recipe-details__top__container .miam-recipe-details__top__container__img .miam-recipe-details__img__actions{display:none}}.miam-recipe-details .miam-recipe-details__top__container .miam-recipe-details__top__container__img .miam-recipe-details__img__actions .miam-recipe-details__actions__icon{-o-object-fit:contain;background-color:#fff;border-radius:var(--m-border-radius-circle);box-shadow:var(--m-shadow-small);margin:0 0 16px;object-fit:contain;padding:8px;width:-webkit-max-content;width:-moz-max-content;width:max-content}.miam-recipe-details .miam-recipe-details__top__container .miam-recipe-details__top__container__img .miam-recipe-details__img__actions .miam-recipe-details__actions__icon.miam-noPadding{padding:0}.miam-recipe-details .miam-recipe-details__top__container .miam-recipe-details__top__container__img .miam-recipe-details__picture__sponsor{-o-object-fit:contain;bottom:16px;height:auto;max-height:72px;max-width:96px;object-fit:contain;position:absolute;right:16px;transform:none;width:auto}.miam-recipe-details .miam-recipe-details__top__container .miam-recipe-details__top__container__infos{display:flex;flex:1 1;flex-direction:column;justify-content:space-between;margin-left:40px;padding:16px;position:relative}@media (max-width:1022px){.miam-recipe-details .miam-recipe-details__top__container .miam-recipe-details__top__container__infos .miam-recipe-details__infos__price__wrapper{display:none}}.miam-recipe-details .miam-recipe-details__top__container .miam-recipe-details__top__container__infos .miam-recipe-details__top__container__infos__top{display:flex;flex-direction:column;position:relative}.miam-recipe-details .miam-recipe-details__top__container .miam-recipe-details__top__container__infos .miam-recipe-details__top__container__infos__top .miam-recipe-details__infos__type{color:var(--m-color-black);font-size:14px;line-height:1.14;padding-bottom:16px;text-align:left}.miam-recipe-details .miam-recipe-details__top__container .miam-recipe-details__top__container__infos .miam-recipe-details__top__container__infos__top .miam-recipe-details__infos__title{color:var(--m-color-secondary);font-size:32px;font-weight:700;line-height:1.1;text-align:left}.miam-recipe-details .miam-recipe-details__top__container .miam-recipe-details__top__container__infos .miam-recipe-details__top__container__infos__top .miam-recipe-details__infos__difficulty{display:flex;padding:16px 0}.miam-recipe-details .miam-recipe-details__top__container .miam-recipe-details__top__container__infos .miam-recipe-details__top__container__infos__top .miam-recipe-details__infos__difficulty ng-miam-icon{margin-right:8px}.miam-recipe-details .miam-recipe-details__top__container .miam-recipe-details__top__container__infos .miam-recipe-details__top__container__infos__top .miam-recipe-details__infos__metrics{align-items:center;display:flex;flex-direction:column}.miam-recipe-details .miam-recipe-details__top__container .miam-recipe-details__top__container__infos .miam-recipe-details__top__container__infos__top .miam-recipe-details__infos__metrics span{color:var(--m-color-black);font-size:14px;margin-left:12px}.miam-recipe-details .miam-recipe-details__top__container .miam-recipe-details__top__container__infos .miam-recipe-details__top__container__infos__top .miam-recipe-details__infos__metrics .miam-recipe-details__metrics__row{display:flex}.miam-recipe-details .miam-recipe-details__top__container .miam-recipe-details__top__container__infos .miam-recipe-details__top__container__infos__top .miam-recipe-details__infos__description{color:var(--m-color-grey-text-dark);display:flex;flex:1;flex-direction:column;font-size:17px;line-height:1.62;margin-bottom:24px;overflow-y:auto;text-align:left;word-break:break-word}.miam-recipe-details .miam-recipe-details__top__container .miam-recipe-details__top__container__infos .miam-recipe-details__top__container__infos__top .miam-recipe-details__infos__description .miam-recipe-details__description__action{align-items:center;display:flex;margin-top:16px}@media print{.miam-recipe-details .miam-recipe-details__top__container .miam-recipe-details__top__container__infos .miam-recipe-details__top__container__infos__top .miam-recipe-details__infos__description .miam-recipe-details__description__action{display:none}}.miam-recipe-details .miam-recipe-details__top__container .miam-recipe-details__top__container__infos .miam-recipe-details__top__container__infos__top .miam-recipe-details__infos__description .miam-recipe-details__description__action>*{cursor:pointer}.miam-recipe-details .miam-recipe-details__top__container .miam-recipe-details__top__container__infos .miam-recipe-details__top__container__infos__top .miam-recipe-details__infos__description .miam-recipe-details__description__action>:hover{color:var(--m-color-primary);text-decoration:underline}.miam-recipe-details .miam-recipe-details__top__container .miam-recipe-details__top__container__infos .miam-recipe-details__top__container__infos__top .miam-recipe-details__infos__description .miam-recipe-details__description__action ng-miam-icon{margin-right:10px}.miam-recipe-details .miam-recipe-details__infos__price__wrapper{align-items:flex-end;display:flex;flex-direction:column;height:100%;justify-content:flex-start;max-height:225px;padding-left:16px;position:relative}.miam-recipe-details .miam-recipe-details__infos__price__wrapper .miam-recipe-details__infos__price{margin-bottom:4px;padding:4px}.miam-recipe-details .miam-recipe-details__infos__price__wrapper .miam-recipe-details__infos__price .miam-recipe-pricing__wrapper{color:var(--m-color-primary);flex-direction:row}@media (max-width:1022px){.miam-recipe-details .miam-recipe-details__infos__price__wrapper .miam-recipe-details__infos__price .miam-recipe-pricing__wrapper{display:flex;flex-direction:column}}@media print{.miam-recipe-details .miam-recipe-details__infos__price__wrapper .miam-recipe-details__infos__price .miam-recipe-pricing__wrapper{display:none}}.miam-recipe-details .miam-recipe-details__infos__price__wrapper .miam-recipe-details__infos__price .miam-recipe-pricing__wrapper .miam-recipe-pricing__wrapper__price{font-size:20px}.miam-recipe-details .miam-recipe-details__infos__price__wrapper .miam-recipe-details__infos__price .miam-recipe-pricing__wrapper .miam-recipe-pricing__wrapper__subline{font-size:14px;margin-left:12px}.miam-recipe-details .miam-recipe-details__infos__price__wrapper .miam-recipe-details__infos__action{border-radius:20px;color:var(--m-color-white);font-size:16px;padding:8px 20px}@media print{.miam-recipe-details .miam-recipe-details__infos__price__wrapper .miam-recipe-details__infos__action{display:none}}@media (min-width:1022px){.miam-recipe-details .miam-recipe-details__infos__price__wrapper .miam-recipe-details__infos__action:hover{color:var(--m-color-primary)}}.miam-recipe-details .miam-recipe-details__infos__price__wrapper .miam-recipe-details__infos__action ng-miam-icon{margin-left:16px}.miam-recipe-details .miam-recipe-details__top__container__info{align-items:center;display:flex;flex-direction:column;gap:24px;justify-content:center;padding:16px 0;width:370px}.miam-recipe-details .miam-recipe-details__top__container__info .miam-recipe-details__info__metrics{align-items:center;display:flex;justify-content:center}.miam-recipe-details .miam-recipe-details__top__container__info .miam-recipe-details__info__metrics span{color:var(--m-color-primary);font-size:19px;font-weight:700;margin-left:12px}.miam-recipe-details .miam-recipe-details__top__container__info .miam-recipe-details__info__times{align-items:center;display:flex;justify-content:space-evenly}.miam-recipe-details .miam-recipe-details__top__container__info .miam-recipe-details__info__times .miam-recipe-details__info__metrics{flex-direction:column;margin-right:24px}.miam-recipe-details .miam-recipe-details__top__container__info .miam-recipe-details__info__times .miam-recipe-details__info__metrics span{color:var(--m-color-black);font-size:13px;font-weight:400;line-height:16px;margin-left:4px}.miam-recipe-details .miam-recipe-details__top__container__info .miam-recipe-details__info__times .miam-recipe-details__info__metrics .miam-recipe-details__metrics__row{align-items:center;display:flex}.miam-recipe-details .miam-recipe-details__top__container__info .miam-recipe-details__info__times .miam-recipe-details__info__metrics .miam-recipe-details__metrics__row span{font-size:19px}.miam-recipe-details .miam-recipe-details__top__container__info .miam-recipe-details__info__times .miam-recipe-details__info__metrics{align-items:center;display:flex;justify-content:center;z-index:0}.miam-recipe-details .miam-recipe-details__top__container__info .miam-recipe-details__info__times .miam-recipe-details__info__metrics ng-miam-icon{display:flex;justify-content:center;margin-right:4px;min-height:32px}.miam-recipe-details .miam-recipe-details__top__container__info .miam-recipe-details__info__times .miam-recipe-details__info__metrics span{font-size:15px}.miam-recipe-details .miam-recipe-details__mid__container{border-bottom:1px dashed var(--m-color-primary);display:flex;padding-bottom:16px;width:100%}.miam-recipe-details .miam-recipe-details__bottom__container{display:flex;width:100%}.miam-recipe-details .miam-recipe-details__bottom__container .miam-recipe-details__bottom__container__header{border-bottom:1px solid var(--m-color-grey-text);color:var(--m-color-primary);display:block;font-size:20px;font-size:17px;font-weight:700;margin:24px 0;padding:16px 0 8px;position:relative}.miam-recipe-details .miam-recipe-details__bottom__container .miam-recipe-details__ingredients__counter{align-items:center;display:flex}.miam-recipe-details .miam-recipe-details__bottom__container .miam-recipe-details__ingredients__counter ng-miam-counter-input .miam-counter-input__icon{margin-right:16px}.miam-recipe-details .miam-recipe-details__bottom__container .miam-recipe-details__ingredients__counter .miam-recipe-details__ingredients__counter__print{display:none}@media print{.miam-recipe-details .miam-recipe-details__bottom__container .miam-recipe-details__ingredients__counter ng-miam-counter-input{display:none}.miam-recipe-details .miam-recipe-details__bottom__container .miam-recipe-details__ingredients__counter .miam-recipe-details__ingredients__counter__print{display:block}}.miam-recipe-details .miam-recipe-details__bottom__container .miam-recipe-details__ingredients__list{flex:1 1;overflow-y:auto;padding-bottom:40px}.miam-recipe-details .miam-recipe-details__bottom__container .miam-recipe-details__ingredients__list::-webkit-scrollbar-track{background:var(--m-color-grey)}.miam-recipe-details .miam-recipe-details__bottom__container .miam-recipe-details__ingredients__list::-webkit-scrollbar{cursor:-webkit-grab;height:7px;width:5px}.miam-recipe-details .miam-recipe-details__bottom__container .miam-recipe-details__ingredients__list::-webkit-scrollbar-thumb{background:var(--m-color-primary);border-radius:5px}.miam-recipe-details .miam-recipe-details__bottom__container .miam-recipe-details__ingredients__row{color:var(--m-color-black);display:flex;font-size:14px;font-weight:700;height:40px;justify-content:space-between;padding-bottom:16px}.miam-recipe-details .miam-recipe-details__bottom__container .miam-recipe-details__ingredients__row .miam-recipe-details__ingredients__row__qty{color:var(--m-color-grey-text-dark);font-size:14px;font-weight:500;padding-right:10px}.miam-recipe-details .miam-recipe-details__bottom__container .miam-recipe-details__bottom__container__ingredients{display:flex;flex:1;flex-direction:column;padding:0 40px 0 0}.miam-recipe-details .miam-recipe-details__bottom__container .miam-recipe-details__bottom__container__steps{display:flex;flex:1;flex-direction:column}.miam-recipe-details .miam-recipe-details__bottom__container .miam-recipe-details__bottom__container__steps .miam-recipe-details__steps__list{flex:1 1;overflow-y:auto;padding-bottom:40px}.miam-recipe-details .miam-recipe-details__bottom__container .miam-recipe-details__bottom__container__steps .miam-recipe-details__steps__list::-webkit-scrollbar-track{background:var(--m-color-grey)}.miam-recipe-details .miam-recipe-details__bottom__container .miam-recipe-details__bottom__container__steps .miam-recipe-details__steps__list::-webkit-scrollbar{cursor:-webkit-grab;height:7px;width:5px}.miam-recipe-details .miam-recipe-details__bottom__container .miam-recipe-details__bottom__container__steps .miam-recipe-details__steps__list::-webkit-scrollbar-thumb{background:var(--m-color-primary);border-radius:5px}.miam-recipe-details .miam-recipe-details__bottom__container .miam-recipe-details__bottom__container__steps .miam-recipe-details__steps__list .miam-recipe-details__steps__list__panel{-webkit-tap-highlight-color:transparent;align-items:center;background-color:var(--m-color-primary-text);border-radius:var(--m-border-radius);cursor:pointer;display:flex;flex-direction:row;margin:0 16px 8px 0;text-align:left;transition:var(--m-default-transition)}.miam-recipe-details .miam-recipe-details__bottom__container .miam-recipe-details__bottom__container__steps .miam-recipe-details__steps__list .miam-recipe-details__steps__list__panel .miam-recipe-details__panel__idx{color:var(--m-color-secondary);flex:0 0 auto;font-size:20px;margin-right:20px}.miam-recipe-details .miam-recipe-details__bottom__container .miam-recipe-details__bottom__container__steps .miam-recipe-details__steps__list .miam-recipe-details__steps__list__panel .miam-recipe-details__panel__text{font-size:14px;word-break:break-word}.miam-recipe-details .miam-recipe-details__bottom__container .miam-recipe-details__bottom__container__steps .miam-recipe-details__steps__list .miam-recipe-details__steps__list__panel .miam-recipe-details__panel__checkIcon{flex:0 0 auto}.miam-recipe-details .miam-recipe-details__bottom__container .miam-recipe-details__bottom__container__steps .miam-recipe-details__steps__list .miam-recipe-details__steps__list__panel.miam-recipe-details__panel__done{background-color:var(--m-color-secondary-light)}.miam-recipe-details .miam-recipe-details__bottom__container .miam-recipe-details__bottom__container__steps .miam-recipe-details__steps__list .miam-recipe-details__steps__list__panel div{flex:1;margin:10px}.miam-recipe-details .miam-recipe-details__bottom__container__action{width:100%}@media print{.miam-recipe-details{height:unset}}@media (max-width:1022px){.miam-recipe-details{height:80vh;margin:0;min-width:100vw;overflow-y:auto;padding:0 0 80px}.miam-recipe-details .miam-recipe-details__infos__price__wrapper{align-items:center;background-color:var(--m-color-white);bottom:0;flex-direction:row;height:unset;justify-content:space-between;left:0;padding:4px 16px;position:fixed;right:0}.miam-recipe-details .miam-recipe-details__infos__price__wrapper .miam-recipe-pricing__wrapper{flex-direction:column}.miam-recipe-details .miam-recipe-details__infos__price__wrapper .miam-recipe-pricing__wrapper .miam-recipe-pricing__wrapper__subline{font-size:10px;margin-left:0}.miam-recipe-details .miam-recipe-details__infos__price__wrapper .miam-recipe-details__infos__action{padding:8px 10px}.miam-recipe-details .miam-recipe-details__top__container{flex-wrap:wrap}.miam-recipe-details .miam-recipe-details__top__container div .miam-recipe-details__top__left{position:-webkit-sticky;position:sticky;top:0;z-index:3}.miam-recipe-details .miam-recipe-details__top__container .miam-recipe-details__info__times{position:-webkit-sticky;position:sticky;top:0;z-index:1}.miam-recipe-details .miam-recipe-details__top__container .miam-recipe-details__top__container__img{height:220px;position:-webkit-sticky;position:sticky;top:-5vh;width:100vw;z-index:3}.miam-recipe-details .miam-recipe-details__top__container .miam-recipe-details__top__container__img img{height:unset;transform:none;width:100%}.miam-recipe-details .miam-recipe-details__top__container .miam-recipe-details__top__container__img .miam-recipe-details__picture__tag{bottom:unset;left:16px;top:16px}.miam-recipe-details .miam-recipe-details__top__container .miam-recipe-details__top__container__img .miam-recipe-details__img__actions{bottom:0;flex-direction:unset;left:8px;right:unset;top:unset}.miam-recipe-details .miam-recipe-details__top__container .miam-recipe-details__top__container__img .miam-recipe-details__img__actions .miam-recipe-details__actions__icon{-webkit-backdrop-filter:blur(10px);backdrop-filter:blur(10px);background:rgba(0,0,0,.65);background-color:unset;box-shadow:none;margin:0 4px 8px}.miam-recipe-details .miam-recipe-details__top__container .miam-recipe-details__top__container__infos{flex:unset;margin-left:unset;padding:0 16px;width:100vw;z-index:0}.miam-recipe-details .miam-recipe-details__top__container .miam-recipe-details__top__container__infos .miam-recipe-details__top__container__infos__top .miam-recipe-details__infos__type{display:none}.miam-recipe-details .miam-recipe-details__top__container .miam-recipe-details__top__container__infos .miam-recipe-details__top__container__infos__top .miam-recipe-details__infos__title{font-size:24px}.miam-recipe-details .miam-recipe-details__top__container .miam-recipe-details__top__container__infos .miam-recipe-details__top__container__infos__top .miam-recipe-details__infos__description{margin-bottom:16px}.miam-recipe-details .miam-recipe-details__top__container .miam-recipe-details__top__container__infos .miam-recipe-details__top__container__infos__top .miam-recipe-details__infos__description .miam-recipe-details__description__action{display:none}.miam-recipe-details .miam-recipe-details__top__container .miam-recipe-details__top__container__info{background-color:var(--m-color-white);width:unset;z-index:1}.miam-recipe-details .miam-recipe-details__mobile__container{display:flex;flex-direction:column;min-height:80vh;padding-bottom:50px;position:relative;width:100vw}.miam-recipe-details .miam-recipe-details__mobile__container .miam-recipe-details__mobile__header{background-color:var(--m-color-white);border-radius:32px 32px 0 0;display:flex;justify-content:space-evenly;padding:16px 0;position:-webkit-sticky;position:sticky;top:0;z-index:1}.miam-recipe-details .miam-recipe-details__mobile__container .miam-recipe-details__mobile__header button{margin-right:0}.miam-recipe-details .miam-recipe-details__mobile__container .miam-recipe-details__mobile__header button.active{background-color:var(--m-color-primary);color:var(--m-color-white)}.miam-recipe-details .miam-recipe-details__mobile__container .miam-recipe-details__ingredients__row{align-items:center;color:var(--m-color-black);display:flex;font-size:14px;font-weight:700;justify-content:space-between;padding-bottom:16px;padding-right:16px}.miam-recipe-details .miam-recipe-details__mobile__container .miam-recipe-details__ingredients__row div{width:100%}.miam-recipe-details .miam-recipe-details__mobile__container .miam-recipe-details__ingredients__row .miam-recipe-details__ingredients__row__qty{color:var(--m-color-grey-text-dark);font-size:14px;font-weight:500;margin-right:16px;padding-right:10px;text-align:end}.miam-recipe-details .miam-recipe-details__mobile__container .miam-recipe-details__ingredients__counter{display:flex;justify-content:space-between;padding:16px}.miam-recipe-details .miam-recipe-details__mobile__container .miam-recipe-details__ingredients__counter .miam-recipe-details__ingredients__counter__print{display:none}.miam-recipe-details .miam-recipe-details__mobile__container .miam-recipe-details__ingredients__list{display:flex;flex-direction:column}.miam-recipe-details .miam-recipe-details__mobile__container .miam-recipe-details__ingredients__list .miam-recipe-details__ingredients__row{display:flex;font-size:16px;justify-content:space-between;padding:0 16px 16px}.miam-recipe-details .miam-recipe-details__mobile__container .miam-recipe-details__steps__list .miam-recipe-details__steps__list__panel{-webkit-tap-highlight-color:transparent;align-items:center;align-items:flex-start;background-color:transparent;border-radius:var(--m-border-radius);cursor:pointer;display:flex;flex-direction:row;margin:0 8px 32px;padding:0;position:relative;text-align:left;transition:var(--m-default-transition)}.miam-recipe-details .miam-recipe-details__mobile__container .miam-recipe-details__steps__list .miam-recipe-details__steps__list__panel:not(:last-child):before{background-color:var(--m-color-grey);content:\"\";height:50%;left:29px;position:absolute;top:60px;width:1px}.miam-recipe-details .miam-recipe-details__mobile__container .miam-recipe-details__steps__list .miam-recipe-details__steps__list__panel.miam-recipe-details__panel__done{background-color:var(--miam-color-primary-light)}.miam-recipe-details .miam-recipe-details__mobile__container .miam-recipe-details__steps__list .miam-recipe-details__steps__list__panel .miam-recipe-details__panel__idx{align-items:center;background-color:var(--m-color-primary);border-radius:40px;color:#fff;display:flex;flex:0 0 auto;font-size:17px;font-weight:700;height:40px;justify-content:center;margin-right:20px;width:40px}.miam-recipe-details .miam-recipe-details__mobile__container .miam-recipe-details__steps__list .miam-recipe-details__steps__list__panel .miam-recipe-details__panel__text{font-size:14px}.miam-recipe-details .miam-recipe-details__mobile__container .miam-recipe-details__steps__list .miam-recipe-details__steps__list__panel .miam-recipe-details__panel__checkIcon{flex:0 0 auto}.miam-recipe-details .miam-recipe-details__mobile__container .miam-recipe-details__steps__list .miam-recipe-details__steps__list__panel div{flex:1;margin:10px}.miam-recipe-details .miam-recipe-details__bottom__container__action{background:var(--m-color-white);bottom:0;left:0;padding:0 16px;position:fixed;right:0;width:100vw;z-index:4}}"], encapsulation: 2, changeDetection: 0 });
|
|
647
719
|
/*@__PURE__*/ (function () { i0.ɵsetClassMetadata(RecipeDetailsComponent, [{
|
|
648
720
|
type: Component,
|
|
649
721
|
args: [{
|
|
@@ -659,14 +731,19 @@ RecipeDetailsComponent.ɵcmp = i0.ɵɵdefineComponent({ type: RecipeDetailsCompo
|
|
|
659
731
|
type: Input
|
|
660
732
|
}], previewAllowed: [{
|
|
661
733
|
type: Input
|
|
734
|
+
}], ingredientsPictures: [{
|
|
735
|
+
type: Input
|
|
662
736
|
}], recipeAdded: [{
|
|
663
737
|
type: Output
|
|
664
738
|
}], recipeChanged: [{
|
|
665
739
|
type: Output
|
|
666
740
|
}], recipeError: [{
|
|
667
741
|
type: Output
|
|
668
|
-
}],
|
|
669
|
-
type:
|
|
670
|
-
args: ['
|
|
742
|
+
}], topContainerImg: [{
|
|
743
|
+
type: ViewChild,
|
|
744
|
+
args: ['topContainerImg']
|
|
745
|
+
}], mainContainer: [{
|
|
746
|
+
type: ViewChild,
|
|
747
|
+
args: ['mainContainer']
|
|
671
748
|
}] }); })();
|
|
672
|
-
//# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoicmVjaXBlLWRldGFpbHMuY29tcG9uZW50LmpzIiwic291cmNlUm9vdCI6Ii9idWlsZHMvbWlhbS9uZy1taWFtLXNkay9wcm9qZWN0cy9uZy1taWFtL3NyYy8iLCJzb3VyY2VzIjpbImxpYi9fd2ViLWNvbXBvbmVudHMvcmVjaXBlLWRldGFpbHMvcmVjaXBlLWRldGFpbHMuY29tcG9uZW50LnRzIiwibGliL193ZWItY29tcG9uZW50cy9yZWNpcGUtZGV0YWlscy9yZWNpcGUtZGV0YWlscy5jb21wb25lbnQuaHRtbCJdLCJuYW1lcyI6W10sIm1hcHBpbmdzIjoiQUFBQSxPQUFPLEVBQUUsU0FBUyxFQUFFLGlCQUFpQixFQUFFLHVCQUF1QixFQUFFLEtBQUssRUFBRSxpQkFBaUIsRUFBRSxNQUFNLEVBQUUsWUFBWSxFQUFhLFlBQVksRUFBQyxNQUFNLGVBQWUsQ0FBQztBQUM5SixPQUFPLEVBQUUsTUFBTSxFQUFFLE1BQU0sc0JBQXNCLENBQUM7QUFDOUMsT0FBTyxFQUFFLElBQUksRUFBRSxNQUFNLHdCQUF3QixDQUFDO0FBQzlDLE9BQU8sRUFBRSxjQUFjLEVBQUUscUJBQXFCLEVBQUUsbUJBQW1CLEVBQUUsbUJBQW1CLEVBQUUsV0FBVyxFQUFFLE1BQU0saUJBQWlCLENBQUM7QUFDL0gsT0FBTyxFQUFFLGVBQWUsRUFBRSxRQUFRLEVBQWdCLE1BQU0sTUFBTSxDQUFDO0FBQy9ELE9BQU8sRUFBRSxvQkFBb0IsRUFBRSxNQUFNLGNBQWMsQ0FBQztBQUNwRCxPQUFPLEVBQUUsSUFBSSxFQUFFLE1BQU0sZ0JBQWdCLENBQUM7QUFDdEMsT0FBTyxFQUFFLFlBQVksRUFBRSxNQUFNLHFCQUFxQixDQUFDOzs7Ozs7Ozs7Ozs7OztJQ0QzQywrQkFDNEM7SUFBQSwyQ0FBWTtJQUFBLGlCQUFNOzs7SUFFNUQsMENBRXNCOzs7SUFEc0Msc0NBQWlCLGFBQUEsY0FBQTs7O0lBTy9FLDBCQUNGOzs7SUFEcUYsaUZBQWlDOzs7SUFRbEgsK0JBQ0U7SUFBQSw0QkFBTTtJQUFBLGdD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OFBBRVUsTUFBTTtrQkFBZCxLQUFLO1lBQ0csMkJBQTJCO2tCQUFuQyxLQUFLO1lBQ0csY0FBYztrQkFBdEIsS0FBSztZQUNJLFdBQVc7a0JBQXBCLE1BQU07WUFDRyxhQUFhO2tCQUF0QixNQUFNO1lBQ0csV0FBVztrQkFBcEIsTUFBTTtZQTBCUCxRQUFRO2tCQURQLFlBQVk7bUJBQUMsUUFBUSxFQUFFLENBQUMsUUFBUSxDQUFDIiwic291cmNlc0NvbnRlbnQiOlsiaW1wb3J0IHsgQ29tcG9uZW50LCBWaWV3RW5jYXBzdWxhdGlvbiwgQ2hhbmdlRGV0ZWN0aW9uU3RyYXRlZ3ksIElucHV0LCBDaGFuZ2VEZXRlY3RvclJlZiwgT3V0cHV0LCBFdmVudEVtaXR0ZXIsIE9uQ2hhbmdlcywgSG9zdExpc3RlbmVyfSBmcm9tICdAYW5ndWxhci9jb3JlJztcbmltcG9ydCB7IFJlY2lwZSB9IGZyb20gJy4uLy4uL19tb2RlbHMvcmVjaXBlJztcbmltcG9ydCB7IEljb24gfSBmcm9tICcuLi8uLi9fdHlwZXMvaWNvbi5lbnVtJztcbmltcG9ydCB7IENvbnRleHRTZXJ2aWNlLCBHcm9jZXJpZXNMaXN0c1NlcnZpY2UsIFBvaW50T2ZTYWxlc1NlcnZpY2UsIFJlY2lwZUV2ZW50c1NlcnZpY2UsIFVzZXJTZXJ2aWNlIH0gZnJvbSAnLi4vLi4vX3NlcnZpY2VzJztcbmltcG9ydCB7IEJlaGF2aW9yU3ViamVjdCwgZm9ya0pvaW4sIFN1YnNjcmlwdGlvbiB9IGZyb20gJ3J4anMnO1xuaW1wb3J0IHsgc3RvcEV2ZW50UHJvcGFnYXRpb24gfSBmcm9tICcuLi8uLi9fdXRpbHMnO1xuaW1wb3J0IHsgdGFrZSB9IGZyb20gJ3J4anMvb3BlcmF0b3JzJztcbmltcG9ydCB7IE1lZGlhTWF0Y2hlciB9IGZyb20gJ0Bhbmd1bGFyL2Nkay9sYXlvdXQnO1xuXG5AQ29tcG9uZW50KHtcbiAgc2VsZWN0b3I6ICduZy1taWFtLXJlY2lwZS1kZXRhaWxzJyxcbiAgdGVtcGxhdGVVcmw6ICcuL3JlY2lwZS1kZXRhaWxzLmNvbXBvbmVudC5odG1sJyxcbiAgc3R5bGVVcmxzOiBbJy4vcmVjaXBlLWRldGFpbHMuY29tcG9uZW50LnNjc3MnXSxcbiAgZW5jYXBzdWxhdGlvbjogVmlld0VuY2Fwc3VsYXRpb24uTm9uZSxcbiAgY2hhbmdlRGV0ZWN0aW9uOiBDaGFuZ2VEZXRlY3Rpb25TdHJhdGVneS5PblB1c2hcbn0pXG5leHBvcnQgY2xhc3MgUmVjaXBlRGV0YWlsc0NvbXBvbmVudCBpbXBsZW1lbnRzIE9uQ2hhbmdlcyB7XG4gIEBJbnB1dCgpIHJlY2lwZTogUmVjaXBlO1xuICBASW5wdXQoKSBmb3JjZUluZ3JlZGllbnRzU3RlcHN0b2dnbGUgPSBmYWxzZTtcbiAgQElucHV0KCkgcHJldmlld0FsbG93ZWQgPSB0cnVlO1xuICBAT3V0cHV0KCkgcmVjaXBlQWRkZWQ6IEV2ZW50RW1pdHRlcjx2b2lkPiA9IG5ldyBFdmVudEVtaXR0ZXIoKTtcbiAgQE91dHB1dCgpIHJlY2lwZUNoYW5nZWQ6IEV2ZW50RW1pdHRlcjx2b2lkPiA9IG5ldyBFdmVudEVtaXR0ZXIoKTtcbiAgQE91dHB1dCgpIHJlY2lwZUVycm9yOiBFdmVudEVtaXR0ZXI8dm9pZD4gPSBuZXcgRXZlbnRFbWl0dGVyKCk7XG5cbiAgcHVibGljIGlzTW9iaWxlID0gZmFsc2U7XG4gIHB1YmxpYyB0YWIgPSAwO1xuICBwdWJsaWMgc2hvd0RldGFpbCA9IHRydWU7XG4gIHB1YmxpYyBzdGVwczogYW55W10gPSBbXTtcbiAgcHVibGljIGFjdGl2ZVN0ZXAgPSAwO1xuICBwdWJsaWMgaWNvbiA9IEljb247XG4gIHB1YmxpYyBpbmdyZWRpZW50c0NoZWNrZWQgPSB7fTtcbiAgcHVibGljIHNob3dJbmdyZWRpZW50ID0gdHJ1ZTtcbiAgcHVibGljIGNsb3NlSWNvbmhpZGRlbiA9IG5ldyBCZWhhdmlvclN1YmplY3QoZmFsc2UpO1xuICBwcm90ZWN0ZWQgc3Vic2NyaXB0aW9uczogU3Vic2NyaXB0aW9uW107XG5cbiAgY29uc3RydWN0b3IoXG4gICAgcHVibGljIGNkcjogQ2hhbmdlRGV0ZWN0b3JSZWYsXG4gICAgcHJpdmF0ZSBtZWRpYU1hdGNoZXI6IE1lZGlhTWF0Y2hlcixcbiAgICBwdWJsaWMgZ3JvY2VyaWVzTGlzdHNTZXJ2aWNlOiBHcm9jZXJpZXNMaXN0c1NlcnZpY2UsXG4gICAgcHVibGljIHVzZXJTZXJ2aWNlOiBVc2VyU2VydmljZSxcbiAgICBwcm90ZWN0ZWQgcG9zU2VydmljZTogUG9pbnRPZlNhbGVzU2VydmljZSxcbiAgICBwcml2YXRlIHJlY2lwZUV2ZW50c1NlcnZpY2U6IFJlY2lwZUV2ZW50c1NlcnZpY2UsXG4gICAgcHJpdmF0ZSBjb250ZXh0U2VydmljZTogQ29udGV4dFNlcnZpY2UpIHtcbiAgICB0aGlzLnN1YnNjcmlwdGlvbnMgPSBbXTtcbiAgICB0aGlzLmlzTW9iaWxlID0gdGhpcy5tZWRpYU1hdGNoZXIubWF0Y2hNZWRpYSgnKG1heC13aWR0aDogMTAyM3B4KScpLm1hdGNoZXM7XG4gIH1cblxuICBASG9zdExpc3RlbmVyKCdzY3JvbGwnLCBbJyRldmVudCddKVxuICBvblNjcm9sbCgkZXZlbnQpIHtcbiAgICBpZiAoJGV2ZW50LnNyY0VsZW1lbnQuc2Nyb2xsVG9wID4gMzAwICE9PSB0aGlzLmNsb3NlSWNvbmhpZGRlbi52YWx1ZSkge1xuICAgICAgdGhpcy5jbG9zZUljb25oaWRkZW4ubmV4dCgkZXZlbnQuc3JjRWxlbWVudC5zY3JvbGxUb3AgPiAzMDApIDtcbiAgICB9XG4gIH1cblxuICBuZ09uQ2hhbmdlcygpOiB2b2lkIHtcbiAgICB0aGlzLmlzTW9iaWxlID0gdGhpcy5mb3JjZUluZ3JlZGllbnRzU3RlcHN0b2dnbGUgPyB0cnVlIDogdGhpcy5pc01vYmlsZTtcbiAgICBpZiAodGhpcy5yZWNpcGUpIHtcbiAgICAgIHRoaXMuc3RlcHMgPSB0aGlzLnJlY2lwZS5zdGVwcztcbiAgICAgIHRoaXMuYWN0aXZlU3RlcCA9IDA7XG4gICAgICB0aGlzLmNkci5kZXRlY3RDaGFuZ2VzKCk7XG4gICAgfVxuICB9XG5cbiAgY2hhbmdlQWN0aXZlU3RlcChpbmRleDogbnVtYmVyKSB7XG4gICAgdGhpcy5hY3RpdmVTdGVwID0gaW5kZXg7XG4gICAgdGhpcy5jZHIuZGV0ZWN0Q2hhbmdlcygpO1xuICB9XG5cbiAgYWRkUmVjaXBlKCk6IHZvaWQge1xuICAgIGZvcmtKb2luKFtcbiAgICAgIHRoaXMudXNlclNlcnZpY2UuaXNMb2dnZWQkLmFzT2JzZXJ2YWJsZSgpLnBpcGUodGFrZSgxKSksXG4gICAgICB0aGlzLnBvc1NlcnZpY2UuaXNQb3NWYWxpZCgpLnBpcGUodGFrZSgxKSlcbiAgICBdKS5zdWJzY3JpYmUocmVzID0+IHtcbiAgICAgIGNvbnN0IGlzSG9va09rID0gdGhpcy5jb250ZXh0U2VydmljZS5ob29rQ2FsbGJhY2socmVzWzBdLCByZXNbMV0pO1xuICAgICAgaWYgKGlzSG9va09rKSB7XG4gICAgICAgIHRoaXMuYWRkUmVjaXBlQWN0aW9uT0soKTtcbiAgICAgIH0gZWxzZSB7XG4gICAgICAgIHRoaXMuYWRkUmVjaXBlQWN0aW9uS08oKTtcbiAgICAgIH1cbiAgICB9KTtcbiAgfVxuXG4gIGFkZFJlY2lwZUFjdGlvbk9LKCk6IHZvaWQge1xuICAgIGlmICghdGhpcy5ncm9jZXJpZXNMaXN0c1NlcnZpY2UubGlzdCQudmFsdWUuaGFzUmVjaXBlKHRoaXMucmVjaXBlLmlkKSl7XG4gICAgICB0aGlzLnJlY2lwZUV2ZW50c1NlcnZpY2Uuc2VuZEV2ZW50KHRoaXMucmVjaXBlLCB0aGlzLnJlY2lwZUV2ZW50c1NlcnZpY2UuQUNUSU9OX0FEREVEKVxuICAgIH1cbiAgICB0aGlzLmdyb2Nlcmllc0xpc3RzU2VydmljZS5hcHBlbmRSZWNpcGVUb0xpc3QodGhpcy5yZWNpcGUuaWQsIHRoaXMucmVjaXBlLm1vZGlmaWVkR3Vlc3RzKTtcbiAgICB0aGlzLnJlY2lwZUFkZGVkLmVtaXQoKTtcbiAgfVxuXG4gIGFkZFJlY2lwZUFjdGlvbktPKCk6IHZvaWQge1xuICAgIHNlc3Npb25TdG9yYWdlLnNldEl0ZW0oJ19taWFtL2NhY2hlZC1yZWNpcGUnLCBKU09OLnN0cmluZ2lmeSh0aGlzLnJlY2lwZSkpO1xuICAgIHRoaXMucmVjaXBlRXJyb3IuZW1pdCgpO1xuICB9XG5cbiAgdXBkYXRlR3Vlc3RzKGd1ZXN0cykge1xuICAgIHRoaXMucmVjaXBlLm1vZGlmaWVkR3Vlc3RzID0gZ3Vlc3RzO1xuICAgIHRoaXMucmVjaXBlQ2hhbmdlZC5lbWl0KCk7XG4gICAgdGhpcy5jZHIuZGV0ZWN0Q2hhbmdlcygpO1xuICB9XG5cbiAgcHJpbnQoKSB7XG4gICAgd2luZG93LnByaW50KCk7XG4gIH1cblxuICBvcGVuQ2FsZW5kYXIoZXZlbnQ6IEV2ZW50KSB7XG4gICAgc3RvcEV2ZW50UHJvcGFnYXRpb24oZXZlbnQpO1xuICAgIC8vIFRPRE8gaW1wbGVtZW50XG4gIH1cblxuICBzaGFyZVJlY2lwZShldmVudDogRXZlbnQpIHtcbiAgICBzdG9wRXZlbnRQcm9wYWdhdGlvbihldmVudCk7XG4gICAgLy8gVE9ETyBpbXBsZW1lbnRcbiAgfVxuXG4gIHRvZ2dsZUFkZG9uKCl7XG4gICAgdGhpcy5zaG93RGV0YWlsID0gICF0aGlzLnNob3dEZXRhaWw7XG4gICAgdGhpcy5jZHIuZGV0ZWN0Q2hhbmdlcygpO1xuICB9XG5cbiAgdG9nZ2xlU2hvd0luZ3JlZGllbnQoaXNTaG93ZWQ6IGJvb2xlYW4pe1xuICAgIHRoaXMuc2hvd0luZ3JlZGllbnQgPSBpc1Nob3dlZDtcbiAgICB0aGlzLmNkci5kZXRlY3RDaGFuZ2VzKCk7XG4gIH1cbn1cbiIsIjxkaXYgKm5nSWY9XCJzaG93RGV0YWlsIGVsc2UgYWRkb25cIiBjbGFzcz1cIm1pYW0tcmVjaXBlLWRldGFpbHNcIiAgKHNjcm9sbCk9XCJvblNjcm9sbCgkZXZlbnQpXCI+XG4gIDxkaXYgY2xhc3M9XCJtaWFtLXJlY2lwZS1kZXRhaWxzX190b3BfX2NvbnRhaW5lclwiPlxuICAgIDxkaXYgY2xhc3M9XCJtaWFtLXJlY2lwZS1kZXRhaWxzX190b3BfX2xlZnRcIj5cbiAgICAgIDxkaXYgY2xhc3M9XCJtaWFtLXJlY2lwZS1kZXRhaWxzX190b3BfX2NvbnRhaW5lcl9faW1nXCI+XG4gICAgICAgIDxpbWcgW3NyY109XCJyZWNpcGU/LmF0dHJpYnV0ZXNbJ21lZGlhLXVybCddXCI+XG4gICAgICAgIDxkaXYgY2xhc3M9XCJtaWFtLXJlY2lwZS1kZXRhaWxzX19waWN0dXJlX19ncmFkaWVudFwiPjwvZGl2PlxuICAgICAgICA8ZGl2ICpuZ0lmPVwiKGdyb2Nlcmllc0xpc3RzU2VydmljZS5saXN0JCB8IGFzeW5jKT8uaGFzUmVjaXBlKHJlY2lwZT8uaWQpXCJcbiAgICAgICAgICBjbGFzcz1cIm1pYW0tcmVjaXBlLWRldGFpbHNfX3BpY3R1cmVfX3RhZ1wiPkTDqWrDoCBham91dMOpZTwvZGl2PlxuICAgICAgICA8ZGl2IGNsYXNzPVwibWlhbS1yZWNpcGUtZGV0YWlsc19faW1nX19hY3Rpb25zXCI+XG4gICAgICAgICAgPG5nLW1pYW0tbGlrZS1idXR0b24gKm5nSWY9XCJ1c2VyU2VydmljZS5pc0xvZ2dlZCQgfCBhc3luY1wiXG4gICAgICAgICAgICBjbGFzcz1cIm1pYW0tcmVjaXBlLWRldGFpbHNfX2FjdGlvbnNfX2ljb24gbWlhbS1ub1BhZGRpbmdcIiBbcmVjaXBlXT0ncmVjaXBlJyBbd2lkdGhdPVwiMjZcIiBbaGVpZ2h0XT1cIjI2XCI+XG4gICAgICAgICAgPC9uZy1taWFtLWxpa2UtYnV0dG9uPlxuICAgICAgICAgIDxuZy1taWFtLWljb24gY2xhc3M9XCJtaWFtLXJlY2lwZS1kZXRhaWxzX19hY3Rpb25zX19pY29uXCIgW3dpZHRoXT1cIjI2XCIgW2hlaWdodF09XCIyNlwiIFtpY29uTmFtZV09XCJpY29uLkNhbGVuZGFyXCJcbiAgICAgICAgICAgIHByaW1hcnlDb2xvcj0ndmFyKC0tbS1jb2xvci1wcmltYXJ5KSc+PC9uZy1taWFtLWljb24+XG4gICAgICAgICAgPG5nLW1pYW0taWNvbiBjbGFzcz1cIm1pYW0tcmVjaXBlLWRldGFpbHNfX2FjdGlvbnNfX2ljb25cIiBbd2lkdGhdPVwiMjZcIiBbaGVpZ2h0XT1cIjI2XCIgW2ljb25OYW1lXT1cImljb24uU2hhcmVcIlxuICAgICAgICAgICAgcHJpbWFyeUNvbG9yPSd2YXIoLS1tLWNvbG9yLXByaW1hcnkpJz48L25nLW1pYW0taWNvbj5cbiAgICAgICAgPC9kaXY+XG4gICAgICAgIDxpbWcgKm5nSWY9XCJyZWNpcGUuZmlsaWdyYW5lTG9nb1VybFwiIGNsYXNzPVwibWlhbS1yZWNpcGUtZGV0YWlsc19fcGljdHVyZV9fc3BvbnNvclwiIHNyYz1cInt7cmVjaXBlLmZpbGlncmFuZUxvZ29Vcmx9fVwiPlxuICAgICAgPC9kaXY+XG4gICAgICA8ZGl2IGNsYXNzPVwibWlhbS1yZWNpcGUtZGV0YWlsc19fdG9wX19jb250YWluZXJfX2luZm9cIj5cbiAgICAgICAgPGRpdiBjbGFzcz1cIm1pYW0tcmVjaXBlLWRldGFpbHNfX2luZm9fX21ldHJpY3MgbWlhbS1yZWNpcGUtZGV0YWlsc19faW5mb19fbWV0cmljc19fdG90YWxcIj5cbiAgICAgICAgICA8bmctbWlhbS1pY29uICBwcmltYXJ5Q29sb3I9J3ZhcigtLW0tY29sb3ItcHJpbWFyeSknIFt3aWR0aF09XCIzMlwiIFtoZWlnaHRdPVwiMzJcIiBbaWNvbk5hbWVdPVwiaWNvbi5UaW1lXCI+PC9uZy1taWFtLWljb24+XG4gICAgICAgICAgPHNwYW4+VGVtcHMgdG90YWwgOiB7eyByZWNpcGU/LnRvdGFsVGltZSB9fTwvc3Bhbj5cbiAgICAgICAgPC9kaXY+XG4gICAgICAgIDxkaXYgY2xhc3M9XCJtaWFtLXJlY2lwZS1kZXRhaWxzX19pbmZvX190aW1lc1wiPlxuICAgICAgICAgIDxkaXYgKm5nSWY9XCJyZWNpcGU/LnByZXBhcmF0aW9uVGltZSAhPT0gJy0nXCIgY2xhc3M9XCJtaWFtLXJlY2lwZS1kZXRhaWxzX19pbmZvX19tZXRyaWNzXCI+XG4gICAgICAgICAgICA8c3Bhbj5QcsOpcGFyYXRpb248L3NwYW4+XG4gICAgICAgICAgICA8ZGl2IGNsYXNzPVwibWlhbS1yZWNpcGUtZGV0YWlsc19fbWV0cmljc19fcm93XCI+XG4gICAgICAgICAgICAgIDxuZy1taWFtLWljb24gW3dpZHRoXT1cIjI0XCIgW2hlaWdodF09XCIyNFwiIHByaW1hcnlDb2xvcj0ndmFyKC0tbS1jb2xvci1zbGF0ZSknIFtpY29uTmFtZV09XCJpY29uLlByZXBhcmF0aW9uXCI+PC9uZy1taWFtLWljb24+XG4gICAgICAgICAgICAgIDxzcGFuPnt7IHJlY2lwZT8ucHJlcGFyYXRpb25UaW1lIH19PC9zcGFuPlxuICAgICAgICAgICAgPC9kaXY+XG4gICAgICAgICAgPC9kaXY+XG4gICAgICAgICAgPGRpdiAqbmdJZj1cInJlY2lwZT8uY29va2luZ1RpbWUgIT09ICctJ1wiIGNsYXNzPVwibWlhbS1yZWNpcGUtZGV0YWlsc19faW5mb19fbWV0cmljc1wiPlxuICAgICAgICAgICAgPHNwYW4+Q3Vpc3Nvbjwvc3Bhbj5cbiAgICAgICAgICAgIDxkaXYgY2xhc3M9XCJtaWFtLXJlY2lwZS1kZXRhaWxzX19tZXRyaWNzX19yb3dcIj5cbiAgICAgICAgICAgICAgPG5nLW1pYW0taWNvbiBbd2lkdGhdPVwiMjRcIiBbaGVpZ2h0XT1cIjI0XCIgIHByaW1hcnlDb2xvcj0ndmFyKC0tbS1jb2xvci1zbGF0ZSknIFtpY29uTmFtZV09XCJpY29uLkhvdFwiPjwvbmctbWlhbS1pY29uPlxuICAgICAgICAgICAgICA8c3Bhbj57eyByZWNpcGU/LmNvb2tpbmdUaW1lIH19PC9zcGFuPlxuICAgICAgICAgICAgPC9kaXY+XG4gICAgICAgICAgPC9kaXY+XG4gICAgICAgICAgPGRpdiAqbmdJZj1cInJlY2lwZT8ucmVzdGluZ1RpbWUgIT09ICctJ1wiIGNsYXNzPVwibWlhbS1yZWNpcGUtZGV0YWlsc19faW5mb19fbWV0cmljc1wiPlxuICAgICAgICAgICAgPHNwYW4+UmVwb3M8L3NwYW4+XG4gICAgICAgICAgICA8ZGl2IGNsYXNzPVwibWlhbS1yZWNpcGUtZGV0YWlsc19fbWV0cmljc19fcm93XCI+XG4gICAgICAgICAgICAgIDxuZy1taWFtLWljb24gW3dpZHRoXT1cIjI0XCIgW2hlaWdodF09XCIyNFwiICBwcmltYXJ5Q29sb3I9J3ZhcigtLW0tY29sb3Itc2xhdGUpJyBbaWNvbk5hbWVdPVwiaWNvbi5XYWl0XCI+PC9uZy1taWFtLWljb24+XG4gICAgICAgICAgICAgIDxzcGFuPnt7IHJlY2lwZT8ucmVzdGluZ1RpbWUgfX08L3NwYW4+XG4gICAgICAgICAgICA8L2Rpdj5cbiAgICAgICAgICA8L2Rpdj5cbiAgICAgICAgPC9kaXY+XG4gICAgICA8L2Rpdj5cbiAgICA8L2Rpdj5cbiAgICA8ZGl2IGNsYXNzPVwibWlhbS1yZWNpcGUtZGV0YWlsc19fdG9wX19jb250YWluZXJfX2luZm9zXCI+XG4gICAgICA8ZGl2IGNsYXNzPVwibWlhbS1yZWNpcGUtZGV0YWlsc19fdG9wX19jb250YWluZXJfX2luZm9zX190b3BcIj5cbiAgICAgICAgPHNwYW4gY2xhc3M9XCJtaWFtLXJlY2lwZS1kZXRhaWxzX19pbmZvc19fdHlwZVwiPnt7cmVjaXBlPy5yZWNpcGVUeXBlPy5hdHRyaWJ1dGVzPy5uYW1lIHwgdGl0bGVjYXNlIH19PC9zcGFuPlxuICAgICAgICA8c3BhbiBjbGFzcz1cIm1pYW0tcmVjaXBlLWRldGFpbHNfX2luZm9zX190aXRsZVwiPnt7cmVjaXBlPy5hdHRyaWJ1dGVzWyd0aXRsZSddfX08L3NwYW4+XG4gICAgICAgIDxkaXYgY2xhc3M9XCJtaWFtLXJlY2lwZS1kZXRhaWxzX19pbmZvc19fZGlmZmljdWx0eVwiPlxuICAgICAgICAgIDxuZy1jb250YWluZXIgW25nU3dpdGNoXT1cInJlY2lwZT8uZGlmZmljdWx0eUxhYmVsXCI+XG4gICAgICAgICAgICA8bmctY29udGFpbmVyICpuZ1N3aXRjaENhc2U9XCInZmFjaWxlJ1wiPlxuICAgICAgICAgICAgICA8bmctbWlhbS1pY29uIFt3aWR0aF09XCI1NlwiIFtoZWlnaHRdPVwiMTZcIiBbaWNvbk5hbWVdPVwiaWNvbi5EaWZmaWN1bHR5TG93XCI+PC9uZy1taWFtLWljb24+XG4gICAgICAgICAgICA8L25nLWNvbnRhaW5lcj5cbiAgICAgICAgICAgIDxuZy1jb250YWluZXIgKm5nU3dpdGNoQ2FzZT1cIidtb3llbidcIj5cbiAgICAgICAgICAgICAgPG5nLW1pYW0taWNvbiBbd2lkdGhdPVwiNTZcIiBbaGVpZ2h0XT1cIjE2XCIgW2ljb25OYW1lXT1cImljb24uRGlmZmljdWx0eU1lZGl1bVwiPjwvbmctbWlhbS1pY29uPlxuICAgICAgICAgICAgPC9uZy1jb250YWluZXI+XG4gICAgICAgICAgICA8bmctY29udGFpbmVyICpuZ1N3aXRjaENhc2U9XCInZGlmZmljaWxlJ1wiPlxuICAgICAgICAgICAgICA8bmctbWlhbS1pY29uIFt3aWR0aF09XCI1NlwiIFtoZWlnaHRdPVwiMTZcIiBbaWNvbk5hbWVdPVwiaWNvbi5EaWZmaWN1bHR5SGlnaHRcIj48L25nLW1pYW0taWNvbj5cbiAgICAgICAgICAgIDwvbmctY29udGFpbmVyPlxuICAgICAgICAgICAgPG5nLWNvbnRhaW5lciAqbmdTd2l0Y2hEZWZhdWx0PjwvbmctY29udGFpbmVyPlxuICAgICAgICAgIDwvbmctY29udGFpbmVyPlxuICAgICAgICAgIDxzcGFuPnt7cmVjaXBlPy5kaWZmaWN1bHR5TGFiZWwgfCB0aXRsZWNhc2UgfX08L3NwYW4+XG4gICAgICAgIDwvZGl2PlxuICAgICAgICA8ZGl2IGNsYXNzPVwibWlhbS1yZWNpcGUtZGV0YWlsc19faW5mb3NfX2Rlc2NyaXB0aW9uXCI+XG4gICAgICAgICAge3sgcmVjaXBlPy5hdHRyaWJ1dGVzWydkZXNjcmlwdGlvbiddIH19XG4gICAgICAgICAgPGRpdiBjbGFzcz1cIm1pYW0tcmVjaXBlLWRldGFpbHNfX2Rlc2NyaXB0aW9uX19hY3Rpb25cIiAoY2xpY2spPVwicHJpbnQoKVwiPlxuICAgICAgICAgICAgPG5nLW1pYW0taWNvbiBjbGFzcz1cIm1pYW0tcmVjaXBlLWRldGFpbHNfX2FjdGlvbnNfX2ljb25cIiBbd2lkdGhdPVwiMjBcIiBbaGVpZ2h0XT1cIjIwXCJcbiAgICAgICAgICAgICAgcHJpbWFyeUNvbG9yPSd2YXIoLS1tLWNvbG9yLXByaW1hcnkpJyBbaWNvbk5hbWVdPVwiaWNvbi5QcmludFwiPlxuICAgICAgICAgICAgPC9uZy1taWFtLWljb24+IDxzcGFuPiBJbXByaW1lciBsYSByZWNldHRlIDwvc3Bhbj5cbiAgICAgICAgICA8L2Rpdj5cbiAgICAgICAgPC9kaXY+XG4gICAgICA8L2Rpdj5cbiAgICAgIDxkaXYgY2xhc3M9XCJtaWFtLXJlY2lwZS1kZXRhaWxzX19pbmZvc19fcHJpY2VfX3dyYXBwZXJcIj5cbiAgICAgICAgPGRpdiBjbGFzcz1cIm1pYW0tcmVjaXBlLWRldGFpbHNfX2luZm9zX19wcmljZVwiPlxuICAgICAgICAgIDxuZy1taWFtLXJlY2lwZS1wcmljaW5nIFtyZWNpcGVdPVwicmVjaXBlXCIgW3NlcnZlc109XCJyZWNpcGU/Lm1vZGlmaWVkR3Vlc3RzXCI+PC9uZy1taWFtLXJlY2lwZS1wcmljaW5nPlxuICAgICAgICA8L2Rpdj5cbiAgICAgICAgPGJ1dHRvbiAqbmdJZj1cInByZXZpZXdBbGxvd2VkXCIgIGNsYXNzPVwibWlhbS1yZWNpcGUtZGV0YWlsc19faW5mb3NfX2FjdGlvbiBtLWJ1dHRvbi1mYWItcHJpbWFyeVwiIChjbGljayk9XCJhZGRSZWNpcGUoKVwiPlxuICAgICAgICAgIDxzcGFuPlxuICAgICAgICAgICAge3soZ3JvY2VyaWVzTGlzdHNTZXJ2aWNlLmxpc3QkIHwgYXN5bmMpPy5oYXNSZWNpcGUocmVjaXBlPy5pZCkgPyAnVm9pciBsZSBkw6l0YWlsJyA6ICdTw6lsZWN0aW9ubmVyIGNlIHJlcGFzJ319XG4gICAgICAgICAgPC9zcGFuPlxuICAgICAgICAgIDxuZy1taWFtLWljb24gW3dpZHRoXT1cIjI0XCIgW2hlaWdodF09XCIyNFwiIHByaW1hcnlDb2xvcj0nI2ZmZidcbiAgICAgICAgICAgIFtpY29uTmFtZV09XCIoZ3JvY2VyaWVzTGlzdHNTZXJ2aWNlLmxpc3QkIHwgYXN5bmMpPy5oYXNSZWNpcGUocmVjaXBlPy5pZCkgPyBpY29uLkNoZWNrTGlzdCA6IGljb24uQ2FydFwiPlxuICAgICAgICAgIDwvbmctbWlhbS1pY29uPlxuICAgICAgICA8L2J1dHRvbj5cbiAgICAgIDwvZGl2PlxuICAgIDwvZGl2PlxuICA8L2Rpdj5cbiAgPGRpdiBjbGFzcz1cIm1pYW0tcmVjaXBlLWRldGFpbHNfX21pZF9fY29udGFpbmVyXCI+XG4gIDwvZGl2PlxuICA8ZGl2PlxuICAgIDxuZy1taWFtLWFkZG9uLWxpbmsgKm5nSWY9XCJyZWNpcGU/LnNwb25zb3JzPy5sZW5ndGggPiAwIHx8IHJlY2lwZS5pbmZvcm1hdGlvbmFsU2VudGVuY2VcIlxuICAgICAgW3JlY2lwZV09J3JlY2lwZScgKHNob3dBZGRvbik9J3RvZ2dsZUFkZG9uKCknPjwvbmctbWlhbS1hZGRvbi1saW5rPlxuICA8L2Rpdj5cbiAgPGRpdiAqbmdJZj1cIiFpc01vYmlsZSBlbHNlIG1vYmlsZUNvbnRhaW5lclwiIGNsYXNzPVwibWlhbS1yZWNpcGUtZGV0YWlsc19fYm90dG9tX19jb250YWluZXJcIj5cbiAgICA8ZGl2IGNsYXNzPVwibWlhbS1yZWNpcGUtZGV0YWlsc19fYm90dG9tX19jb250YWluZXJfX2luZ3JlZGllbnRzXCI+XG4gICAgICA8ZGl2IGNsYXNzPVwibWlhbS1yZWNpcGUtZGV0YWlsc19fYm90dG9tX19jb250YWluZXJfX2hlYWRlclwiPlxuICAgICAgICBJbmdyw6lkaWVudHNcbiAgICAgIDwvZGl2PlxuICAgICAgPGRpdiBjbGFzcz1cIm1pYW0tcmVjaXBlLWRldGFpbHNfX2luZ3JlZGllbnRzX19yb3dcIj5cbiAgICAgICAgPGRpdiBjbGFzcz1cIm1pYW0tcmVjaXBlLWRldGFpbHNfX2luZ3JlZGllbnRzX19jb3VudGVyXCI+XG4gICAgICAgICAgPG5nLW1pYW0tY291bnRlci1pbnB1dCBbY291bnRlcl09XCJyZWNpcGU/Lm1vZGlmaWVkR3Vlc3RzIHx8IHJlY2lwZS5ndWVzdHNcIiAoY291bnRlckNoYW5nZSk9XCJ1cGRhdGVHdWVzdHMoJGV2ZW50KVwiPlxuICAgICAgICAgIDwvbmctbWlhbS1jb3VudGVyLWlucHV0PlxuICAgICAgICAgIDxzcGFuIGNsYXNzPVwibWlhbS1yZWNpcGUtZGV0YWlsc19faW5ncmVkaWVudHNfX2NvdW50ZXJfX3ByaW50XCI+UG91ciB7e3JlY2lwZT8ubW9kaWZpZWRHdWVzdHN9fVxuICAgICAgICAgICAgcGVyc29ubmVzPC9zcGFuPlxuICAgICAgICA8L2Rpdj5cbiAgICAgICAgPHNwYW4gY2xhc3M9XCJtaWFtLXJlY2lwZS1kZXRhaWxzX19pbmdyZWRpZW50c19fcm93X19xdHlcIj5RdWFudGl0w6k8L3NwYW4+XG4gICAgICA8L2Rpdj5cbiAgICAgIDxkaXYgY2xhc3M9XCJtaWFtLXJlY2lwZS1kZXRhaWxzX19pbmdyZWRpZW50c19fbGlzdFwiPlxuICAgICAgICA8ZGl2IGNsYXNzPVwibWlhbS1yZWNpcGUtZGV0YWlsc19faW5ncmVkaWVudHNfX3Jvd1wiIFtuZ0NsYXNzXT1cInsnY2hlY2tlZCc6IGluZ3JlZGllbnRzQ2hlY2tlZFtpXX1cIlxuICAgICAgICAgICpuZ0Zvcj1cImxldCBpbmdyZWRpZW50IG9mIHJlY2lwZT8ubW9kaWZpZWRJbmdyZWRpZW50cywgbGV0IGkgPSBpbmRleCBcIj5cbiAgICAgICAgICA8ZGl2PiB7eyBpbmdyZWRpZW50Lm5hbWUgfCBjYXBpdGFsaXplRmlyc3RMZXR0ZXJ9fTwvZGl2PlxuICAgICAgICAgIDxkaXYgY2xhc3M9XCJtaWFtLXJlY2lwZS1kZXRhaWxzX19pbmdyZWRpZW50c19fcm93X19xdHlcIj4ge3sgaW5ncmVkaWVudC5xdHkgfCByZWFkYWJsZUZsb2F0TnVtYmVyIDpcbiAgICAgICAgICAgIGluZ3JlZGllbnQudW5pdCB9fTwvZGl2PlxuICAgICAgICA8L2Rpdj5cbiAgICAgIDwvZGl2PlxuICAgIDwvZGl2PlxuICAgIDxkaXYgY2xhc3M9XCJtaWFtLXJlY2lwZS1kZXRhaWxzX19ib3R0b21fX2NvbnRhaW5lcl9fc3RlcHNcIj5cbiAgICAgIDxkaXYgY2xhc3M9XCJtaWFtLXJlY2lwZS1kZXRhaWxzX19ib3R0b21fX2NvbnRhaW5lcl9faGVhZGVyXCI+XG4gICAgICAgIFByw6lwYXJhdGlvblxuICAgICAgPC9kaXY+XG4gICAgICA8ZGl2IGNsYXNzPVwibWlhbS1yZWNpcGUtZGV0YWlsc19fc3RlcHNfX2xpc3RcIj5cbiAgICAgICAgPGRpdiBjbGFzcz1cIm1pYW0tcmVjaXBlLWRldGFpbHNfX3N0ZXBzX19saXN0X19wYW5lbFwiICpuZ0Zvcj1cImxldCBzdGVwIG9mIHN0ZXBzOyBsZXQgaSA9IGluZGV4O1wiXG4gICAgICAgICAgKGNsaWNrKT1cImNoYW5nZUFjdGl2ZVN0ZXAoaSlcIiBbY2xhc3MuYWN0aXZlXT1cImkgPT09IGFjdGl2ZVN0ZXBcIlxuICAgICAgICAgIFtjbGFzcy5taWFtLXJlY2lwZS1kZXRhaWxzX19wYW5lbF9fZG9uZV09XCJpIDwgYWN0aXZlU3RlcFwiPlxuICAgICAgICAgIDxkaXYgY2xhc3M9XCJtaWFtLXJlY2lwZS1kZXRhaWxzX19wYW5lbF9faWR4XCI+PHN0cm9uZz57eyBpIH19PC9zdHJvbmc+PC9kaXY+XG4gICAgICAgICAgPGRpdiBjbGFzcz1cIm1pYW0tcmVjaXBlLWRldGFpbHNfX3BhbmVsX190ZXh0XCI+e3tzdGVwPy5hdHRyaWJ1dGVzPy5kZXNjcmlwdGlvbn19PC9kaXY+XG4gICAgICAgICAgPG5nLW1pYW0taWNvbiBjbGFzcz1cIm1pYW0tcmVjaXBlLWRldGFpbHNfX3BhbmVsX19jaGVja0ljb25cIiAqbmdJZj1cImkgPD0gYWN0aXZlU3RlcFwiIFtoZWlnaHRdPScxNicgW3dpZHRoXT0nMTYnXG4gICAgICAgICAgICBbaWNvbk5hbWVdPSdpY29uLkNoZWNrQ2lyY2xlRmlsbCcgcHJpbWFyeUNvbG9yPVwidmFyKC0tbS1jb2xvci1zZWNvbmRhcnkpXCI+PC9uZy1taWFtLWljb24+XG4gICAgICAgIDwvZGl2PlxuICAgICAgPC9kaXY+XG4gICAgPC9kaXY+XG4gIDwvZGl2PlxuICA8bmctdGVtcGxhdGUgI21vYmlsZUNvbnRhaW5lciA+XG4gICAgPGRpdiAjbW9iaWxlQ29udGFpbmVyVG9wIGNsYXNzPVwibWlhbS1yZWNpcGUtZGV0YWlsc19fbW9iaWxlX19jb250YWluZXJcIj5cbiAgICAgIDxkaXYgIGNsYXNzPVwibWlhbS1yZWNpcGUtZGV0YWlsc19fbW9iaWxlX19oZWFkZXJcIj5cbiAgICAgICAgPGJ1dHRvbiBjbGFzcz1cIm0tYnV0dG9uLXNlY29uZGFyeVwiIFtuZ0NsYXNzXT1cInsnYWN0aXZlJyA6IHNob3dJbmdyZWRpZW50fVwiIChjbGljayk9XCJ0b2dnbGVTaG93SW5ncmVkaWVudCh0cnVlKTsgbW9iaWxlQ29udGFpbmVyVG9wLnNjcm9sbEludG9WaWV3KClcIj5JbmdyZWRpZW50czwvYnV0dG9uPlxuICAgICAgICA8YnV0dG9uIGNsYXNzPVwibS1idXR0b24tc2Vjb25kYXJ5XCIgW25nQ2xhc3NdPVwieydhY3RpdmUnIDogIXNob3dJbmdyZWRpZW50fVwiIChjbGljayk9XCJ0b2dnbGVTaG93SW5ncmVkaWVudChmYWxzZSk7IG1vYmlsZUNvbnRhaW5lclRvcC5zY3JvbGxJbnRvVmlldygpXCI+UHLDqXBhcmF0aW9uPC9idXR0b24+XG4gICAgICAgIDwvZGl2PlxuICAgICAgICAgIDxuZy1jb250YWluZXIgICpuZ0lmPVwic2hvd0luZ3JlZGllbnQgZWxzZSBzdGVwc0NvbnRhaW5lclwiPlxuICAgICAgICAgIDxkaXYgY2xhc3M9XCJtaWFtLXJlY2lwZS1kZXRhaWxzX19pbmdyZWRpZW50c19fcm93XCI+XG4gICAgICAgICAgICA8ZGl2IGNsYXNzPVwibWlhbS1yZWNpcGUtZGV0YWlsc19faW5ncmVkaWVudHNfX2NvdW50ZXJcIj5cbiAgICAgICAgICAgICAgPG5nLW1pYW0tY291bnRlci1pbnB1dCBbY291bnRlcl09XCJyZWNpcGU/Lm1vZGlmaWVkR3Vlc3RzXCIgKGNvdW50ZXJDaGFuZ2UpPVwidXBkYXRlR3Vlc3RzKCRldmVudClcIj5cbiAgICAgICAgICAgICAgPC9uZy1taWFtLWNvdW50ZXItaW5wdXQ+XG4gICAgICAgICAgICAgIDxzcGFuIGNsYXNzPVwibWlhbS1yZWNpcGUtZGV0YWlsc19faW5ncmVkaWVudHNfX2NvdW50ZXJfX3ByaW50XCI+UG91ciB7e3JlY2lwZT8ubW9kaWZpZWRHdWVzdHN9fVxuICAgICAgICAgICAgICAgIHBlcnNvbm5lczwvc3Bhbj5cbiAgICAgICAgICAgIDwvZGl2PlxuICAgICAgICAgICAgPHNwYW4gY2xhc3M9XCJtaWFtLXJlY2lwZS1kZXRhaWxzX19pbmdyZWRpZW50c19fcm93X19xdHlcIj5RdWFudGl0w6k8L3NwYW4+XG4gICAgICAgICAgPC9kaXY+XG4gICAgICAgICAgPGRpdiBjbGFzcz1cIm1pYW0tcmVjaXBlLWRldGFpbHNfX2luZ3JlZGllbnRzX19saXN0XCI+XG4gICAgICAgICAgICA8ZGl2IGNsYXNzPVwibWlhbS1yZWNpcGUtZGV0YWlsc19faW5ncmVkaWVudHNfX3Jvd1wiIFtuZ0NsYXNzXT1cInsnY2hlY2tlZCc6IGluZ3JlZGllbnRzQ2hlY2tlZFtpXX1cIlxuICAgICAgICAgICAgICAqbmdGb3I9XCJsZXQgaW5ncmVkaWVudCBvZiByZWNpcGU/Lm1vZGlmaWVkSW5ncmVkaWVudHMsIGxldCBpID0gaW5kZXggXCI+XG4gICAgICAgICAgICAgIDxkaXY+IHt7IGluZ3JlZGllbnQubmFtZSB8IGNhcGl0YWxpemVGaXJzdExldHRlcn19PC9kaXY+XG4gICAgICAgICAgICAgIDxkaXYgY2xhc3M9XCJtaWFtLXJlY2lwZS1kZXRhaWxzX19pbmdyZWRpZW50c19fcm93X19xdHlcIj4ge3sgaW5ncmVkaWVudC5xdHkgfCByZWFkYWJsZUZsb2F0TnVtYmVyIDpcbiAgICAgICAgICAgICAgICBpbmdyZWRpZW50LnVuaXQgfX08L2Rpdj5cbiAgICAgICAgICAgIDwvZGl2PlxuICAgICAgICAgIDwvZGl2PlxuICAgICAgICA8L25nLWNvbnRhaW5lcj5cbiAgICAgICAgIDxuZy10ZW1wbGF0ZSAjc3RlcHNDb250YWluZXI+XG4gICAgICAgICAgICA8ZGl2IGNsYXNzPVwibWlhbS1yZWNpcGUtZGV0YWlsc19fc3RlcHNfX2xpc3RcIj5cbiAgICAgICAgICAgICAgPGRpdiBjbGFzcz1cIm1pYW0tcmVjaXBlLWRldGFpbHNfX3N0ZXBzX19saXN0X19wYW5lbFwiICpuZ0Zvcj1cImxldCBzdGVwIG9mIHN0ZXBzOyBsZXQgaSA9IGluZGV4O1wiXG4gICAgICAgICAgICAgICAgKGNsaWNrKT1cImNoYW5nZUFjdGl2ZVN0ZXAoaSlcIiBbY2xhc3MuYWN0aXZlXT1cImkgPT09IGFjdGl2ZVN0ZXBcIlxuICAgICAgICAgICAgICAgIFtjbGFzcy5taWFtLXJlY2lwZS1kZXRhaWxzX19wYW5lbF9fZG9uZV09XCJpIDwgYWN0aXZlU3RlcFwiPlxuICAgICAgICAgICAgICAgIDxkaXYgY2xhc3M9XCJtaWFtLXJlY2lwZS1kZXRhaWxzX19wYW5lbF9faWR4XCI+PHN0cm9uZz57eyBpIH19PC9zdHJvbmc+PC9kaXY+XG4gICAgICAgICAgICAgICAgPGRpdiBjbGFzcz1cIm1pYW0tcmVjaXBlLWRldGFpbHNfX3BhbmVsX190ZXh0XCI+e3tzdGVwPy5hdHRyaWJ1dGVzPy5kZXNjcmlwdGlvbn19PC9kaXY+XG4gICAgICAgICAgICAgICAgPG5nLW1pYW0taWNvbiBjbGFzcz1cIm1pYW0tcmVjaXBlLWRldGFpbHNfX3BhbmVsX19jaGVja0ljb25cIiAqbmdJZj1cImkgPD0gYWN0aXZlU3RlcFwiIFtoZWlnaHRdPScxNicgW3dpZHRoXT0nMTYnXG4gICAgICAgICAgICAgICAgICBbaWNvbk5hbWVdPSdpY29uLkNoZWNrQ2lyY2xlRmlsbCcgcHJpbWFyeUNvbG9yPVwidmFyKC0tbS1jb2xvci1zZWNvbmRhcnkpXCI+PC9uZy1taWFtLWljb24+XG4gICAgICAgICAgICAgIDwvZGl2PlxuICAgICAgICAgICAgPC9kaXY+XG4gICAgICAgICAgPC9uZy10ZW1wbGF0ZT5cbiAgICAgICAgPC9kaXY+XG4gIDwvbmctdGVtcGxhdGU+XG4gIDxkaXYgY2xhc3M9XCJtaWFtLXJlY2lwZS1kZXRhaWxzX19ib3R0b21fX2NvbnRhaW5lcl9fYWN0aW9uXCI+XG4gICAgPGRpdiBjbGFzcz1cIm1pYW0tcmVjaXBlLWRldGFpbHNfX2luZm9zX19wcmljZV9fd3JhcHBlclwiPlxuICAgICAgPGRpdiBjbGFzcz1cIm1pYW0tcmVjaXBlLWRldGFpbHNfX2luZm9zX19wcmljZVwiPlxuICAgICAgICA8bmctbWlhbS1yZWNpcGUtcHJpY2luZyBbcmVjaXBlXT1cInJlY2lwZVwiIFtzZXJ2ZXNdPVwicmVjaXBlPy5tb2RpZmllZEd1ZXN0c1wiPjwvbmctbWlhbS1yZWNpcGUtcHJpY2luZz5cbiAgICAgIDwvZGl2PlxuICAgICAgPGJ1dHRvbiAqbmdJZj1cInByZXZpZXdBbGxvd2VkXCIgIGNsYXNzPVwibWlhbS1yZWNpcGUtZGV0YWlsc19faW5mb3NfX2FjdGlvbiBtLWJ1dHRvbi1mYWItcHJpbWFyeVwiIChjbGljayk9XCJhZGRSZWNpcGUoKVwiPlxuICAgICAgICA8c3Bhbj5cbiAgICAgICAgICB7eyhncm9jZXJpZXNMaXN0c1NlcnZpY2UubGlzdCQgfCBhc3luYyk/Lmhhc1JlY2lwZShyZWNpcGU/LmlkKSA/ICdWb2lyIGxlIGTDqXRhaWwnIDogJ1PDqWxlY3Rpb25uZXIgY2UgcmVwYXMnfX1cbiAgICAgICAgPC9zcGFuPlxuICAgICAgICA8bmctbWlhbS1pY29uIFt3aWR0aF09XCIyNFwiIFtoZWlnaHRdPVwiMjRcIiBwcmltYXJ5Q29sb3I9JyNmZmYnXG4gICAgICAgICAgW2ljb25OYW1lXT1cIihncm9jZXJpZXNMaXN0c1NlcnZpY2UubGlzdCQgfCBhc3luYyk/Lmhhc1JlY2lwZShyZWNpcGU/LmlkKSA/IGljb24uQ2hlY2tMaXN0ICA6aWNvbi5DYXJ0XCI+XG4gICAgICAgIDwvbmctbWlhbS1pY29uPlxuICAgICAgPC9idXR0b24+XG4gICAgPC9kaXY+XG4gIDwvZGl2PlxuPC9kaXY+XG48bmctdGVtcGxhdGUgI2FkZG9uPlxuICA8bmctbWlhbS1yZWNpcGUtYWRkb24gW3JlY2lwZV09J3JlY2lwZScgKGhpZGVBZGRvbik9XCJ0b2dnbGVBZGRvbigpXCI+PC9uZy1taWFtLXJlY2lwZS1hZGRvbj5cbjwvbmctdGVtcGxhdGU+Il19
|
|
749
|
+
//# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoicmVjaXBlLWRldGFpbHMuY29tcG9uZW50LmpzIiwic291cmNlUm9vdCI6Ii9idWlsZHMvbWlhbS9uZy1taWFtLXNkay9wcm9qZWN0cy9uZy1taWFtL3NyYy8iLCJzb3VyY2VzIjpbImxpYi9fd2ViLWNvbXBvbmVudHMvcmVjaXBlLWRldGFpbHMvcmVjaXBlLWRldGFpbHMuY29tcG9uZW50LnRzIiwibGliL193ZWItY29tcG9uZW50cy9yZWNpcGUtZGV0YWlscy9yZWNpcGUtZGV0YWlscy5jb21wb25lbnQuaHRtbCJdLCJuYW1lcyI6W10sIm1hcHBpbmdzIjoiQUFBQSxPQUFPLEVBQ0wsU0FBUyxFQUNULGlCQUFpQixFQUNqQix1QkFBdUIsRUFDdkIsS0FBSyxFQUNMLGlCQUFpQixFQUNqQixNQUFNLEVBQ04sWUFBWSxFQUdaLFNBQVMsRUFDVCxVQUFVLEVBQ1gsTUFBTSxlQUFlLENBQUM7QUFDdkIsT0FBTyxFQUFFLE1BQU0sRUFBRSxNQUFNLHNCQUFzQixDQUFDO0FBQzlDLE9BQU8sRUFBRSxJQUFJLEVBQUUsTUFBTSx3QkFBd0IsQ0FBQztBQUM5QyxPQUFPLEVBQUUsY0FBYyxFQUFFLHFCQUFxQixFQUFFLG1CQUFtQixFQUFFLG1CQUFtQixFQUFFLFdBQVcsRUFBRSxNQUFNLGlCQUFpQixDQUFDO0FBQy9ILE9BQU8sRUFBRSxlQUFlLEVBQUUsUUFBUSxFQUFnQixNQUFNLE1BQU0sQ0FBQztBQUMvRCxPQUFPLEVBQUUsb0JBQW9CLEVBQUUsTUFBTSxjQUFjLENBQUM7QUFDcEQsT0FBTyxFQUFFLElBQUksRUFBRSxNQUFNLGdCQUFnQixDQUFDO0FBQ3RDLE9BQU8sRUFBRSxZQUFZLEVBQUUsTUFBTSxxQkFBcUIsQ0FBQzs7Ozs7Ozs7Ozs7Ozs7Ozs7SUNmM0MsMEJBQ0E7OztJQUR3Qiw0R0FBdUM7OztJQUMvRCwwQkFBNkU7OztJQUM3RSxxQ0FLa0I7OztJQUhoQiwrQ0FBMEIsNkJBQUEsK0JBQUE7OztJQUs1QiwrQkFDNEM7SUFBQSwyQ0FBWTtJQUFBLGlCQUFN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LElBQUksQ0FBQyxjQUFjLENBQUMsd0JBQXdCLENBQUM7SUFDNUUsQ0FBQzs7NEZBbEpVLHNCQUFzQjsyREFBdEIsc0JBQXNCOzs7Ozs7OztRQzdCbkMseUVBQ0U7UUF5TUYsd0hBQ0U7OztRQTNNRyxxQ0FBNkIsaUJBQUE7O2tERDZCckIsc0JBQXNCO2NBUGxDLFNBQVM7ZUFBQztnQkFDVCxRQUFRLEVBQUUsd0JBQXdCO2dCQUNsQyxXQUFXLEVBQUUsaUNBQWlDO2dCQUM5QyxTQUFTLEVBQUUsQ0FBQyxpQ0FBaUMsQ0FBQztnQkFDOUMsYUFBYSxFQUFFLGlCQUFpQixDQUFDLElBQUk7Z0JBQ3JDLGVBQWUsRUFBRSx1QkFBdUIsQ0FBQyxNQUFNO2FBQ2hEOzhQQUVVLE1BQU07a0JBQWQsS0FBSztZQUNHLDJCQUEyQjtrQkFBbkMsS0FBSztZQUNHLGNBQWM7a0JBQXRCLEtBQUs7WUFDRyxtQkFBbUI7a0JBQTNCLEtBQUs7WUFDSSxXQUFXO2tCQUFwQixNQUFNO1lBQ0csYUFBYTtrQkFBdEIsTUFBTTtZQUNHLFdBQVc7a0JBQXBCLE1BQU07WUFFdUIsZUFBZTtrQkFBNUMsU0FBUzttQkFBQyxpQkFBaUI7WUFDQSxhQUFhO2tCQUF4QyxTQUFTO21CQUFDLGVBQWUiLCJzb3VyY2VzQ29udGVudCI6WyJpbXBvcnQge1xuICBDb21wb25lbnQsXG4gIFZpZXdFbmNhcHN1bGF0aW9uLFxuICBDaGFuZ2VEZXRlY3Rpb25TdHJhdGVneSxcbiAgSW5wdXQsXG4gIENoYW5nZURldGVjdG9yUmVmLFxuICBPdXRwdXQsXG4gIEV2ZW50RW1pdHRlcixcbiAgT25DaGFuZ2VzLFxuICBBZnRlclZpZXdDaGVja2VkLFxuICBWaWV3Q2hpbGQsXG4gIEVsZW1lbnRSZWZcbn0gZnJvbSAnQGFuZ3VsYXIvY29yZSc7XG5pbXBvcnQgeyBSZWNpcGUgfSBmcm9tICcuLi8uLi9fbW9kZWxzL3JlY2lwZSc7XG5pbXBvcnQgeyBJY29uIH0gZnJvbSAnLi4vLi4vX3R5cGVzL2ljb24uZW51bSc7XG5pbXBvcnQgeyBDb250ZXh0U2VydmljZSwgR3JvY2VyaWVzTGlzdHNTZXJ2aWNlLCBQb2ludE9mU2FsZXNTZXJ2aWNlLCBSZWNpcGVFdmVudHNTZXJ2aWNlLCBVc2VyU2VydmljZSB9IGZyb20gJy4uLy4uL19zZXJ2aWNlcyc7XG5pbXBvcnQgeyBCZWhhdmlvclN1YmplY3QsIGZvcmtKb2luLCBTdWJzY3JpcHRpb24gfSBmcm9tICdyeGpzJztcbmltcG9ydCB7IHN0b3BFdmVudFByb3BhZ2F0aW9uIH0gZnJvbSAnLi4vLi4vX3V0aWxzJztcbmltcG9ydCB7IHRha2UgfSBmcm9tICdyeGpzL29wZXJhdG9ycyc7XG5pbXBvcnQgeyBNZWRpYU1hdGNoZXIgfSBmcm9tICdAYW5ndWxhci9jZGsvbGF5b3V0JztcbmltcG9ydCB7IEluZ3JlZGllbnQgfSBmcm9tICcuLi8uLi9fbW9kZWxzJztcblxuQENvbXBvbmVudCh7XG4gIHNlbGVjdG9yOiAnbmctbWlhbS1yZWNpcGUtZGV0YWlscycsXG4gIHRlbXBsYXRlVXJsOiAnLi9yZWNpcGUtZGV0YWlscy5jb21wb25lbnQuaHRtbCcsXG4gIHN0eWxlVXJsczogWycuL3JlY2lwZS1kZXRhaWxzLmNvbXBvbmVudC5zY3NzJ10sXG4gIGVuY2Fwc3VsYXRpb246IFZpZXdFbmNhcHN1bGF0aW9uLk5vbmUsXG4gIGNoYW5nZURldGVjdGlvbjogQ2hhbmdlRGV0ZWN0aW9uU3RyYXRlZ3kuT25QdXNoXG59KVxuZXhwb3J0IGNsYXNzIFJlY2lwZURldGFpbHNDb21wb25lbnQgaW1wbGVtZW50cyBPbkNoYW5nZXMsIEFmdGVyVmlld0NoZWNrZWQge1xuICBASW5wdXQoKSByZWNpcGU6IFJlY2lwZTtcbiAgQElucHV0KCkgZm9yY2VJbmdyZWRpZW50c1N0ZXBzdG9nZ2xlO1xuICBASW5wdXQoKSBwcmV2aWV3QWxsb3dlZCA9IHRydWU7XG4gIEBJbnB1dCgpIGluZ3JlZGllbnRzUGljdHVyZXMgPSBmYWxzZTtcbiAgQE91dHB1dCgpIHJlY2lwZUFkZGVkOiBFdmVudEVtaXR0ZXI8dm9pZD4gPSBuZXcgRXZlbnRFbWl0dGVyKCk7XG4gIEBPdXRwdXQoKSByZWNpcGVDaGFuZ2VkOiBFdmVudEVtaXR0ZXI8dm9pZD4gPSBuZXcgRXZlbnRFbWl0dGVyKCk7XG4gIEBPdXRwdXQoKSByZWNpcGVFcnJvcjogRXZlbnRFbWl0dGVyPHZvaWQ+ID0gbmV3IEV2ZW50RW1pdHRlcigpO1xuXG4gIEBWaWV3Q2hpbGQoJ3RvcENvbnRhaW5lckltZycpIHRvcENvbnRhaW5lckltZzogRWxlbWVudFJlZjtcbiAgQFZpZXdDaGlsZCgnbWFpbkNvbnRhaW5lcicpIG1haW5Db250YWluZXI6IEVsZW1lbnRSZWY7XG5cbiAgaXNNb2JpbGUgPSBmYWxzZTtcbiAgdGFiID0gMDtcbiAgc2hvd0RldGFpbCA9IHRydWU7XG4gIHN0ZXBzOiBhbnlbXSA9IFtdO1xuICBhY3RpdmVTdGVwID0gMDtcbiAgaWNvbiA9IEljb247XG4gIGluZ3JlZGllbnRzQ2hlY2tlZCA9IHt9O1xuICBzaG93SW5ncmVkaWVudCA9IHRydWU7XG4gIGNsb3NlSWNvbmhpZGRlbiA9IG5ldyBCZWhhdmlvclN1YmplY3QoZmFsc2UpO1xuICBwbGF5ZXJXaWR0aDtcbiAgcGxheWVySGVpZ2h0O1xuICBzaG93VmlkZW87XG4gIHNjcm9sbExpc3RlbmVySW5pdGlhbGlzZWQgPSBmYWxzZTtcbiAgcHJvdGVjdGVkIHN1YnNjcmlwdGlvbnM6IFN1YnNjcmlwdGlvbltdO1xuXG4gIGNvbnN0cnVjdG9yKFxuICAgIHB1YmxpYyBjZHI6IENoYW5nZURldGVjdG9yUmVmLFxuICAgIHByaXZhdGUgbWVkaWFNYXRjaGVyOiBNZWRpYU1hdGNoZXIsXG4gICAgcHVibGljIGdyb2Nlcmllc0xpc3RzU2VydmljZTogR3JvY2VyaWVzTGlzdHNTZXJ2aWNlLFxuICAgIHB1YmxpYyB1c2VyU2VydmljZTogVXNlclNlcnZpY2UsXG4gICAgcHJvdGVjdGVkIHBvc1NlcnZpY2U6IFBvaW50T2ZTYWxlc1NlcnZpY2UsXG4gICAgcHJpdmF0ZSByZWNpcGVFdmVudHNTZXJ2aWNlOiBSZWNpcGVFdmVudHNTZXJ2aWNlLFxuICAgIHB1YmxpYyBjb250ZXh0U2VydmljZTogQ29udGV4dFNlcnZpY2UpIHtcbiAgICB0aGlzLnN1YnNjcmlwdGlvbnMgPSBbXTtcbiAgICB0aGlzLmlzTW9iaWxlID0gdGhpcy5tZWRpYU1hdGNoZXIubWF0Y2hNZWRpYSgnKG1heC13aWR0aDogMTAyM3B4KScpLm1hdGNoZXM7XG4gIH1cblxuICBuZ09uQ2hhbmdlcygpOiB2b2lkIHtcbiAgICAvLyBpZiBmb3JjZUluZ3JlZGllbnRzU3RlcHN0b2dnbGUsIHVzZSBpc01vYmlsZSB0byB0b2dnbGUgaW5ncmVkaWVudHMgJiBzdGVwcyBpbiBtb2JpbGUgbW9kZSwgZWxzZVxuICAgIC8vIFVzZSB0aGUgdmFsdWUgb2YgZm9yY2VJbmdyZWRpZW50c1N0ZXBzdG9nZ2xlIHRvIGZvcmNlIGl0IHRvIG1vYmlsZSAodHJ1ZSkgb3IgZGVza3RvcCAoZmFsc2UpXG4gICAgaWYgKHRoaXMuZm9yY2VJbmdyZWRpZW50c1N0ZXBzdG9nZ2xlICE9PSB1bmRlZmluZWQpIHtcbiAgICAgIHRoaXMuaXNNb2JpbGUgPSB0aGlzLmZvcmNlSW5ncmVkaWVudHNTdGVwc3RvZ2dsZTtcbiAgICB9XG4gICAgdGhpcy5zaG93VmlkZW8gPSBmYWxzZTsgLy8gZm9yY2UgcmVsb2FkIHZpZGVvIHBsYXllclxuICAgIHRoaXMuY2RyLmRldGVjdENoYW5nZXMoKTtcbiAgICB0aGlzLnNob3dWaWRlbyA9IHRoaXMuY29udGV4dFNlcnZpY2UudmlkZW9SZWNpcGVzRW5hYmxlZCAmJiB0aGlzLnJlY2lwZT8udmlkZW9JZDtcbiAgICBpZiAodGhpcy5yZWNpcGUpIHtcbiAgICAgIHRoaXMuc3RlcHMgPSB0aGlzLnJlY2lwZS5zdGVwcztcbiAgICAgIHRoaXMuYWN0aXZlU3RlcCA9IDA7XG4gICAgICB0aGlzLmNkci5kZXRlY3RDaGFuZ2VzKCk7XG4gICAgfVxuICB9XG5cbiAgbmdBZnRlclZpZXdDaGVja2VkKCkge1xuICAgIHRoaXMucGxheWVyV2lkdGggPSBNYXRoLm1pbig2NDAsIHRoaXMudG9wQ29udGFpbmVySW1nPy5uYXRpdmVFbGVtZW50Py5vZmZzZXRXaWR0aCk7XG4gICAgdGhpcy5wbGF5ZXJIZWlnaHQgPSB0aGlzLnBsYXllcldpZHRoICogMzkwIC8gNjQwO1xuICAgIGlmICghdGhpcy5zY3JvbGxMaXN0ZW5lckluaXRpYWxpc2VkKSB7XG4gICAgICB0aGlzLmluaXRTY3JvbGxMaXN0ZW5lcigpO1xuICAgIH1cbiAgfVxuXG4gIC8qKlxuICAgKiBJbml0IHRoZSBsaXN0ZW5lciBvbiBzY3JvbGwgc28gdGhlIG1vZGFsIGNhbiBoaWRlIHRoZSBjbG9zZSBpY29uXG4gICAqL1xuICBpbml0U2Nyb2xsTGlzdGVuZXIoKSB7XG4gICAgaWYgKHRoaXMubWFpbkNvbnRhaW5lcikge1xuICAgICAgY29uc3QgaW50ZXJzZWN0aW9uT2JzZXJ2ZXIgPSBuZXcgSW50ZXJzZWN0aW9uT2JzZXJ2ZXIoKFtlbnRyeV0pID0+IHtcbiAgICAgICAgaWYgKHRoaXMubWFpbkNvbnRhaW5lci5uYXRpdmVFbGVtZW50LnNjcm9sbFRvcCA+IDMwMCAhPT0gdGhpcy5jbG9zZUljb25oaWRkZW4udmFsdWUpIHtcbiAgICAgICAgICB0aGlzLmNsb3NlSWNvbmhpZGRlbi5uZXh0KHRoaXMubWFpbkNvbnRhaW5lci5uYXRpdmVFbGVtZW50LnNjcm9sbFRvcCA+IDMwMCkgO1xuICAgICAgICB9XG4gICAgICB9LFxuICAgICAge1xuICAgICAgICB0aHJlc2hvbGQ6IFswLCAwLjMzLCAwLjY2LCAxXSxcbiAgICAgICAgcm9vdDogdGhpcy5tYWluQ29udGFpbmVyLm5hdGl2ZUVsZW1lbnRcbiAgICAgIH0pO1xuICAgICAgaW50ZXJzZWN0aW9uT2JzZXJ2ZXIub2JzZXJ2ZSh0aGlzLnRvcENvbnRhaW5lckltZy5uYXRpdmVFbGVtZW50KTtcbiAgICAgIHRoaXMuc2Nyb2xsTGlzdGVuZXJJbml0aWFsaXNlZCA9IHRydWU7XG4gICAgfVxuICB9XG5cbiAgY2hhbmdlQWN0aXZlU3RlcChpbmRleDogbnVtYmVyKSB7XG4gICAgdGhpcy5hY3RpdmVTdGVwID0gaW5kZXg7XG4gICAgdGhpcy5jZHIuZGV0ZWN0Q2hhbmdlcygpO1xuICB9XG5cbiAgYWRkUmVjaXBlKCk6IHZvaWQge1xuICAgIGZvcmtKb2luKFtcbiAgICAgIHRoaXMudXNlclNlcnZpY2UuaXNMb2dnZWQkLmFzT2JzZXJ2YWJsZSgpLnBpcGUodGFrZSgxKSksXG4gICAgICB0aGlzLnBvc1NlcnZpY2UuaXNQb3NWYWxpZCgpLnBpcGUodGFrZSgxKSlcbiAgICBdKS5zdWJzY3JpYmUocmVzID0+IHtcbiAgICAgIGNvbnN0IGlzSG9va09rID0gdGhpcy5jb250ZXh0U2VydmljZS5ob29rQ2FsbGJhY2socmVzWzBdLCByZXNbMV0pO1xuICAgICAgaWYgKGlzSG9va09rKSB7XG4gICAgICAgIHRoaXMuYWRkUmVjaXBlQWN0aW9uT0soKTtcbiAgICAgIH0gZWxzZSB7XG4gICAgICAgIHRoaXMuYWRkUmVjaXBlQWN0aW9uS08oKTtcbiAgICAgIH1cbiAgICB9KTtcbiAgfVxuXG4gIGFkZFJlY2lwZUFjdGlvbk9LKCk6IHZvaWQge1xuICAgIGlmICghdGhpcy5ncm9jZXJpZXNMaXN0c1NlcnZpY2UubGlzdCQudmFsdWUuaGFzUmVjaXBlKHRoaXMucmVjaXBlLmlkKSl7XG4gICAgICB0aGlzLnJlY2lwZUV2ZW50c1NlcnZpY2Uuc2VuZEV2ZW50KHRoaXMucmVjaXBlLCB0aGlzLnJlY2lwZUV2ZW50c1NlcnZpY2UuQUNUSU9OX0FEREVEKVxuICAgIH1cbiAgICB0aGlzLmdyb2Nlcmllc0xpc3RzU2VydmljZS5hcHBlbmRSZWNpcGVUb0xpc3QodGhpcy5yZWNpcGUuaWQsIHRoaXMucmVjaXBlLm1vZGlmaWVkR3Vlc3RzKTtcbiAgICB0aGlzLnJlY2lwZUFkZGVkLmVtaXQoKTtcbiAgfVxuXG4gIGFkZFJlY2lwZUFjdGlvbktPKCk6IHZvaWQge1xuICAgIHNlc3Npb25TdG9yYWdlLnNldEl0ZW0oJ19taWFtL2NhY2hlZC1yZWNpcGUnLCBKU09OLnN0cmluZ2lmeSh0aGlzLnJlY2lwZSkpO1xuICAgIHRoaXMucmVjaXBlRXJyb3IuZW1pdCgpO1xuICB9XG5cbiAgdXBkYXRlR3Vlc3RzKGd1ZXN0cykge1xuICAgIHRoaXMucmVjaXBlLm1vZGlmaWVkR3Vlc3RzID0gZ3Vlc3RzO1xuICAgIHRoaXMucmVjaXBlQ2hhbmdlZC5lbWl0KCk7XG4gICAgdGhpcy5jZHIuZGV0ZWN0Q2hhbmdlcygpO1xuICB9XG5cbiAgcHJpbnQoKSB7XG4gICAgd2luZG93LnByaW50KCk7XG4gIH1cblxuICBvcGVuQ2FsZW5kYXIoZXZlbnQ6IEV2ZW50KSB7XG4gICAgc3RvcEV2ZW50UHJvcGFnYXRpb24oZXZlbnQpO1xuICAgIC8vIFRPRE8gaW1wbGVtZW50XG4gIH1cblxuICBzaGFyZVJlY2lwZShldmVudDogRXZlbnQpIHtcbiAgICBzdG9wRXZlbnRQcm9wYWdhdGlvbihldmVudCk7XG4gICAgLy8gVE9ETyBpbXBsZW1lbnRcbiAgfVxuXG4gIHRvZ2dsZUFkZG9uKCl7XG4gICAgdGhpcy5zaG93RGV0YWlsID0gICF0aGlzLnNob3dEZXRhaWw7XG4gICAgdGhpcy5jZHIuZGV0ZWN0Q2hhbmdlcygpO1xuICB9XG5cbiAgdG9nZ2xlU2hvd0luZ3JlZGllbnQoaXNTaG93ZWQ6IGJvb2xlYW4pe1xuICAgIHRoaXMuc2hvd0luZ3JlZGllbnQgPSBpc1Nob3dlZDtcbiAgICB0aGlzLmNkci5kZXRlY3RDaGFuZ2VzKCk7XG4gIH1cblxuICBpbmdyZWRpZW50UGljdHVyZShpbmdyZWRpZW50OiBJbmdyZWRpZW50KTogc3RyaW5nIHtcbiAgICByZXR1cm4gaW5ncmVkaWVudC5waWN0dXJlIHx8IHRoaXMuY29udGV4dFNlcnZpY2UuZGVmYXVsdEluZ3JlZGllbnRQaWN0dXJlO1xuICB9XG59XG4iLCI8ZGl2ICpuZ0lmPVwic2hvd0RldGFpbCBlbHNlIGFkZG9uXCIgY2xhc3M9XCJtaWFtLXJlY2lwZS1kZXRhaWxzXCIgI21haW5Db250YWluZXIgPlxuICA8ZGl2IGNsYXNzPVwibWlhbS1yZWNpcGUtZGV0YWlsc19fdG9wX19jb250YWluZXJcIj5cbiAgICA8ZGl2IGNsYXNzPVwibWlhbS1yZWNpcGUtZGV0YWlsc19fdG9wX19sZWZ0XCI+XG4gICAgICA8ZGl2ICN0b3BDb250YWluZXJJbWcgY2xhc3M9XCJtaWFtLXJlY2lwZS1kZXRhaWxzX190b3BfX2NvbnRhaW5lcl9faW1nXCI+XG4gICAgICAgIDxpbWcgKm5nSWY9XCIhc2hvd1ZpZGVvXCIgW3NyY109XCJyZWNpcGU/LmF0dHJpYnV0ZXNbJ21lZGlhLXVybCddXCI+XG4gICAgICAgIDxkaXYgKm5nSWY9XCIhc2hvd1ZpZGVvXCIgY2xhc3M9XCJtaWFtLXJlY2lwZS1kZXRhaWxzX19waWN0dXJlX19ncmFkaWVudFwiPjwvZGl2PlxuICAgICAgICA8eW91dHViZS1wbGF5ZXJcbiAgICAgICAgICAqbmdJZj1cInNob3dWaWRlbyAmJiBwbGF5ZXJXaWR0aFwiXG4gICAgICAgICAgW3ZpZGVvSWRdPVwicmVjaXBlLnZpZGVvSWRcIlxuICAgICAgICAgIFt3aWR0aF09XCJwbGF5ZXJXaWR0aFwiXG4gICAgICAgICAgW2hlaWdodF09XCJwbGF5ZXJIZWlnaHRcIlxuICAgICAgICA+PC95b3V0dWJlLXBsYXllcj5cblxuICAgICAgICA8ZGl2ICpuZ0lmPVwiKGdyb2Nlcmllc0xpc3RzU2VydmljZS5saXN0JCB8IGFzeW5jKT8uaGFzUmVjaXBlKHJlY2lwZT8uaWQpXCJcbiAgICAgICAgICBjbGFzcz1cIm1pYW0tcmVjaXBlLWRldGFpbHNfX3BpY3R1cmVfX3RhZ1wiPkTDqWrDoCBham91dMOpZTwvZGl2PlxuICAgICAgICA8ZGl2IGNsYXNzPVwibWlhbS1yZWNpcGUtZGV0YWlsc19faW1nX19hY3Rpb25zXCI+XG4gICAgICAgICAgPG5nLW1pYW0tbGlrZS1idXR0b24gKm5nSWY9XCJ1c2VyU2VydmljZS5pc0xvZ2dlZCQgfCBhc3luY1wiXG4gICAgICAgICAgICBjbGFzcz1cIm1pYW0tcmVjaXBlLWRldGFpbHNfX2FjdGlvbnNfX2ljb24gbWlhbS1ub1BhZGRpbmdcIiBbcmVjaXBlXT0ncmVjaXBlJyBbd2lkdGhdPVwiMjZcIiBbaGVpZ2h0XT1cIjI2XCI+XG4gICAgICAgICAgPC9uZy1taWFtLWxpa2UtYnV0dG9uPlxuICAgICAgICAgIDxuZy1taWFtLWljb24gY2xhc3M9XCJtaWFtLXJlY2lwZS1kZXRhaWxzX19hY3Rpb25zX19pY29uXCIgW3dpZHRoXT1cIjI2XCIgW2hlaWdodF09XCIyNlwiIFtpY29uTmFtZV09XCJpY29uLkNhbGVuZGFyXCJcbiAgICAgICAgICAgIHByaW1hcnlDb2xvcj0ndmFyKC0tbS1jb2xvci1wcmltYXJ5KSc+PC9uZy1taWFtLWljb24+XG4gICAgICAgICAgPG5nLW1pYW0taWNvbiBjbGFzcz1cIm1pYW0tcmVjaXBlLWRldGFpbHNfX2FjdGlvbnNfX2ljb25cIiBbd2lkdGhdPVwiMjZcIiBbaGVpZ2h0XT1cIjI2XCIgW2ljb25OYW1lXT1cImljb24uU2hhcmVcIlxuICAgICAgICAgICAgcHJpbWFyeUNvbG9yPSd2YXIoLS1tLWNvbG9yLXByaW1hcnkpJz48L25nLW1pYW0taWNvbj5cbiAgICAgICAgPC9kaXY+XG4gICAgICAgIDxpbWcgKm5nSWY9XCJyZWNpcGUuZmlsaWdyYW5lTG9nb1VybFwiIGNsYXNzPVwibWlhbS1yZWNpcGUtZGV0YWlsc19fcGljdHVyZV9fc3BvbnNvclwiIHNyYz1cInt7cmVjaXBlLmZpbGlncmFuZUxvZ29Vcmx9fVwiPlxuICAgICAgPC9kaXY+XG4gICAgICA8ZGl2IGNsYXNzPVwibWlhbS1yZWNpcGUtZGV0YWlsc19fdG9wX19jb250YWluZXJfX2luZm9cIj5cbiAgICAgICAgPGRpdiBjbGFzcz1cIm1pYW0tcmVjaXBlLWRldGFpbHNfX2luZm9fX21ldHJpY3MgbWlhbS1yZWNpcGUtZGV0YWlsc19faW5mb19fbWV0cmljc19fdG90YWxcIj5cbiAgICAgICAgICA8bmctbWlhbS1pY29uICBwcmltYXJ5Q29sb3I9J3ZhcigtLW0tY29sb3ItcHJpbWFyeSknIFt3aWR0aF09XCIzMlwiIFtoZWlnaHRdPVwiMzJcIiBbaWNvbk5hbWVdPVwiaWNvbi5UaW1lXCI+PC9uZy1taWFtLWljb24+XG4gICAgICAgICAgPHNwYW4+VGVtcHMgdG90YWwgOiB7eyByZWNpcGU/LnRvdGFsVGltZSB9fTwvc3Bhbj5cbiAgICAgICAgPC9kaXY+XG4gICAgICAgIDxkaXYgY2xhc3M9XCJtaWFtLXJlY2lwZS1kZXRhaWxzX19pbmZvX190aW1lc1wiPlxuICAgICAgICAgIDxkaXYgKm5nSWY9XCJyZWNpcGU/LnByZXBhcmF0aW9uVGltZSAhPT0gJy0nXCIgY2xhc3M9XCJtaWFtLXJlY2lwZS1kZXRhaWxzX19pbmZvX19tZXRyaWNzXCI+XG4gICAgICAgICAgICA8c3Bhbj5QcsOpcGFyYXRpb248L3NwYW4+XG4gICAgICAgICAgICA8ZGl2IGNsYXNzPVwibWlhbS1yZWNpcGUtZGV0YWlsc19fbWV0cmljc19fcm93XCI+XG4gICAgICAgICAgICAgIDxuZy1taWFtLWljb24gW3dpZHRoXT1cIjI0XCIgW2hlaWdodF09XCIyNFwiIHByaW1hcnlDb2xvcj0ndmFyKC0tbS1jb2xvci1zbGF0ZSknIFtpY29uTmFtZV09XCJpY29uLlByZXBhcmF0aW9uXCI+PC9uZy1taWFtLWljb24+XG4gICAgICAgICAgICAgIDxzcGFuPnt7IHJlY2lwZT8ucHJlcGFyYXRpb25UaW1lIH19PC9zcGFuPlxuICAgICAgICAgICAgPC9kaXY+XG4gICAgICAgICAgPC9kaXY+XG4gICAgICAgICAgPGRpdiAqbmdJZj1cInJlY2lwZT8uY29va2luZ1RpbWUgIT09ICctJ1wiIGNsYXNzPVwibWlhbS1yZWNpcGUtZGV0YWlsc19faW5mb19fbWV0cmljc1wiPlxuICAgICAgICAgICAgPHNwYW4+Q3Vpc3Nvbjwvc3Bhbj5cbiAgICAgICAgICAgIDxkaXYgY2xhc3M9XCJtaWFtLXJlY2lwZS1kZXRhaWxzX19tZXRyaWNzX19yb3dcIj5cbiAgICAgICAgICAgICAgPG5nLW1pYW0taWNvbiBbd2lkdGhdPVwiMjRcIiBbaGVpZ2h0XT1cIjI0XCIgIHByaW1hcnlDb2xvcj0ndmFyKC0tbS1jb2xvci1zbGF0ZSknIFtpY29uTmFtZV09XCJpY29uLkhvdFwiPjwvbmctbWlhbS1pY29uPlxuICAgICAgICAgICAgICA8c3Bhbj57eyByZWNpcGU/LmNvb2tpbmdUaW1lIH19PC9zcGFuPlxuICAgICAgICAgICAgPC9kaXY+XG4gICAgICAgICAgPC9kaXY+XG4gICAgICAgICAgPGRpdiAqbmdJZj1cInJlY2lwZT8ucmVzdGluZ1RpbWUgIT09ICctJ1wiIGNsYXNzPVwibWlhbS1yZWNpcGUtZGV0YWlsc19faW5mb19fbWV0cmljc1wiPlxuICAgICAgICAgICAgPHNwYW4+UmVwb3M8L3NwYW4+XG4gICAgICAgICAgICA8ZGl2IGNsYXNzPVwibWlhbS1yZWNpcGUtZGV0YWlsc19fbWV0cmljc19fcm93XCI+XG4gICAgICAgICAgICAgIDxuZy1taWFtLWljb24gW3dpZHRoXT1cIjI0XCIgW2hlaWdodF09XCIyNFwiICBwcmltYXJ5Q29sb3I9J3ZhcigtLW0tY29sb3Itc2xhdGUpJyBbaWNvbk5hbWVdPVwiaWNvbi5XYWl0XCI+PC9uZy1taWFtLWljb24+XG4gICAgICAgICAgICAgIDxzcGFuPnt7IHJlY2lwZT8ucmVzdGluZ1RpbWUgfX08L3NwYW4+XG4gICAgICAgICAgICA8L2Rpdj5cbiAgICAgICAgICA8L2Rpdj5cbiAgICAgICAgPC9kaXY+XG4gICAgICA8L2Rpdj5cbiAgICA8L2Rpdj5cbiAgICA8ZGl2IGNsYXNzPVwibWlhbS1yZWNpcGUtZGV0YWlsc19fdG9wX19jb250YWluZXJfX2luZm9zXCI+XG4gICAgICA8ZGl2IGNsYXNzPVwibWlhbS1yZWNpcGUtZGV0YWlsc19fdG9wX19jb250YWluZXJfX2luZm9zX190b3BcIj5cbiAgICAgICAgPHNwYW4gY2xhc3M9XCJtaWFtLXJlY2lwZS1kZXRhaWxzX19pbmZvc19fdHlwZVwiPnt7cmVjaXBlPy5yZWNpcGVUeXBlPy5hdHRyaWJ1dGVzPy5uYW1lIHwgdGl0bGVjYXNlIH19PC9zcGFuPlxuICAgICAgICA8c3BhbiBjbGFzcz1cIm1pYW0tcmVjaXBlLWRldGFpbHNfX2luZm9zX190aXRsZVwiPnt7cmVjaXBlPy5hdHRyaWJ1dGVzWyd0aXRsZSddfX08L3NwYW4+XG4gICAgICAgIDxkaXYgY2xhc3M9XCJtaWFtLXJlY2lwZS1kZXRhaWxzX19pbmZvc19fZGlmZmljdWx0eVwiPlxuICAgICAgICAgIDxuZy1jb250YWluZXIgW25nU3dpdGNoXT1cInJlY2lwZT8uZGlmZmljdWx0eUxhYmVsXCI+XG4gICAgICAgICAgICA8bmctY29udGFpbmVyICpuZ1N3aXRjaENhc2U9XCInZmFjaWxlJ1wiPlxuICAgICAgICAgICAgICA8bmctbWlhbS1pY29uIFt3aWR0aF09XCI1NlwiIFtoZWlnaHRdPVwiMTZcIiBbaWNvbk5hbWVdPVwiaWNvbi5EaWZmaWN1bHR5TG93XCI+PC9uZy1taWFtLWljb24+XG4gICAgICAgICAgICA8L25nLWNvbnRhaW5lcj5cbiAgICAgICAgICAgIDxuZy1jb250YWluZXIgKm5nU3dpdGNoQ2FzZT1cIidtb3llbidcIj5cbiAgICAgICAgICAgICAgPG5nLW1pYW0taWNvbiBbd2lkdGhdPVwiNTZcIiBbaGVpZ2h0XT1cIjE2XCIgW2ljb25OYW1lXT1cImljb24uRGlmZmljdWx0eU1lZGl1bVwiPjwvbmctbWlhbS1pY29uPlxuICAgICAgICAgICAgPC9uZy1jb250YWluZXI+XG4gICAgICAgICAgICA8bmctY29udGFpbmVyICpuZ1N3aXRjaENhc2U9XCInZGlmZmljaWxlJ1wiPlxuICAgICAgICAgICAgICA8bmctbWlhbS1pY29uIFt3aWR0aF09XCI1NlwiIFtoZWlnaHRdPVwiMTZcIiBbaWNvbk5hbWVdPVwiaWNvbi5EaWZmaWN1bHR5SGlnaHRcIj48L25nLW1pYW0taWNvbj5cbiAgICAgICAgICAgIDwvbmctY29udGFpbmVyPlxuICAgICAgICAgICAgPG5nLWNvbnRhaW5lciAqbmdTd2l0Y2hEZWZhdWx0PjwvbmctY29udGFpbmVyPlxuICAgICAgICAgIDwvbmctY29udGFpbmVyPlxuICAgICAgICAgIDxzcGFuPnt7cmVjaXBlPy5kaWZmaWN1bHR5TGFiZWwgfCB0aXRsZWNhc2UgfX08L3NwYW4+XG4gICAgICAgIDwvZGl2PlxuICAgICAgICA8ZGl2IGNsYXNzPVwibWlhbS1yZWNpcGUtZGV0YWlsc19faW5mb3NfX2Rlc2NyaXB0aW9uXCI+XG4gICAgICAgICAge3sgcmVjaXBlPy5hdHRyaWJ1dGVzWydkZXNjcmlwdGlvbiddIH19XG4gICAgICAgICAgPGRpdiBjbGFzcz1cIm1pYW0tcmVjaXBlLWRldGFpbHNfX2Rlc2NyaXB0aW9uX19hY3Rpb25cIiAoY2xpY2spPVwicHJpbnQoKVwiPlxuICAgICAgICAgICAgPG5nLW1pYW0taWNvbiBjbGFzcz1cIm1pYW0tcmVjaXBlLWRldGFpbHNfX2FjdGlvbnNfX2ljb25cIiBbd2lkdGhdPVwiMjBcIiBbaGVpZ2h0XT1cIjIwXCJcbiAgICAgICAgICAgICAgcHJpbWFyeUNvbG9yPSd2YXIoLS1tLWNvbG9yLXByaW1hcnkpJyBbaWNvbk5hbWVdPVwiaWNvbi5QcmludFwiPlxuICAgICAgICAgICAgPC9uZy1taWFtLWljb24+IDxzcGFuPiBJbXByaW1lciBsYSByZWNldHRlIDwvc3Bhbj5cbiAgICAgICAgICA8L2Rpdj5cbiAgICAgICAgPC9kaXY+XG4gICAgICA8L2Rpdj5cbiAgICAgIDxkaXYgY2xhc3M9XCJtaWFtLXJlY2lwZS1kZXRhaWxzX19pbmZvc19fcHJpY2VfX3dyYXBwZXJcIj5cbiAgICAgICAgPGRpdiBjbGFzcz1cIm1pYW0tcmVjaXBlLWRldGFpbHNfX2luZm9zX19wcmljZVwiPlxuICAgICAgICAgIDxuZy1taWFtLXJlY2lwZS1wcmljaW5nIFtyZWNpcGVdPVwicmVjaXBlXCIgW3NlcnZlc109XCJyZWNpcGU/Lm1vZGlmaWVkR3Vlc3RzXCI+PC9uZy1taWFtLXJlY2lwZS1wcmljaW5nPlxuICAgICAgICA8L2Rpdj5cbiAgICAgICAgPGJ1dHRvbiAqbmdJZj1cInByZXZpZXdBbGxvd2VkXCIgIGNsYXNzPVwibWlhbS1yZWNpcGUtZGV0YWlsc19faW5mb3NfX2FjdGlvbiBtLWJ1dHRvbi1mYWItcHJpbWFyeVwiIChjbGljayk9XCJhZGRSZWNpcGUoKVwiPlxuICAgICAgICAgIDxzcGFuPlxuICAgICAgICAgICAge3soZ3JvY2VyaWVzTGlzdHNTZXJ2aWNlLmxpc3QkIHwgYXN5bmMpPy5oYXNSZWNpcGUocmVjaXBlPy5pZCkgPyAnVm9pciBsZSBkw6l0YWlsJyA6ICdTw6lsZWN0aW9ubmVyIGNlIHJlcGFzJ319XG4gICAgICAgICAgPC9zcGFuPlxuICAgICAgICAgIDxuZy1taWFtLWljb24gW3dpZHRoXT1cIjI0XCIgW2hlaWdodF09XCIyNFwiIHByaW1hcnlDb2xvcj0nI2ZmZidcbiAgICAgICAgICAgIFtpY29uTmFtZV09XCIoZ3JvY2VyaWVzTGlzdHNTZXJ2aWNlLmxpc3QkIHwgYXN5bmMpPy5oYXNSZWNpcGUocmVjaXBlPy5pZCkgPyBpY29uLkNoZWNrTGlzdCA6IGljb24uQ2FydFwiPlxuICAgICAgICAgIDwvbmctbWlhbS1pY29uPlxuICAgICAgICA8L2J1dHRvbj5cbiAgICAgIDwvZGl2PlxuICAgIDwvZGl2PlxuICA8L2Rpdj5cbiAgPGRpdiBjbGFzcz1cIm1pYW0tcmVjaXBlLWRldGFpbHNfX21pZF9fY29udGFpbmVyXCI+XG4gIDwvZGl2PlxuICA8ZGl2PlxuICAgIDxuZy1taWFtLWFkZG9uLWxpbmsgKm5nSWY9XCJyZWNpcGU/LnNwb25zb3JzPy5sZW5ndGggPiAwIHx8IHJlY2lwZS5pbmZvcm1hdGlvbmFsU2VudGVuY2VcIlxuICAgICAgW3JlY2lwZV09J3JlY2lwZScgKHNob3dBZGRvbik9J3RvZ2dsZUFkZG9uKCknPjwvbmctbWlhbS1hZGRvbi1saW5rPlxuICA8L2Rpdj5cbiAgPGRpdiAqbmdJZj1cIiFpc01vYmlsZSBlbHNlIG1vYmlsZUNvbnRhaW5lclwiIGNsYXNzPVwibWlhbS1yZWNpcGUtZGV0YWlsc19fYm90dG9tX19jb250YWluZXJcIj5cbiAgICA8ZGl2IGNsYXNzPVwibWlhbS1yZWNpcGUtZGV0YWlsc19fYm90dG9tX19jb250YWluZXJfX2luZ3JlZGllbnRzXCI+XG4gICAgICA8ZGl2IGNsYXNzPVwibWlhbS1yZWNpcGUtZGV0YWlsc19fYm90dG9tX19jb250YWluZXJfX2hlYWRlclwiPlxuICAgICAgICBJbmdyw6lkaWVudHNcbiAgICAgIDwvZGl2PlxuICAgICAgPGRpdiBjbGFzcz1cIm1pYW0tcmVjaXBlLWRldGFpbHNfX2luZ3JlZGllbnRzX19yb3dcIj5cbiAgICAgICAgPGRpdiBjbGFzcz1cIm1pYW0tcmVjaXBlLWRldGFpbHNfX2luZ3JlZGllbnRzX19jb3VudGVyXCI+XG4gICAgICAgICAgPG5nLW1pYW0tY291bnRlci1pbnB1dCBbY291bnRlcl09XCJyZWNpcGU/Lm1vZGlmaWVkR3Vlc3RzIHx8IHJlY2lwZS5ndWVzdHNcIiAoY291bnRlckNoYW5nZSk9XCJ1cGRhdGVHdWVzdHMoJGV2ZW50KVwiPlxuICAgICAgICAgIDwvbmctbWlhbS1jb3VudGVyLWlucHV0PlxuICAgICAgICAgIDxzcGFuIGNsYXNzPVwibWlhbS1yZWNpcGUtZGV0YWlsc19faW5ncmVkaWVudHNfX2NvdW50ZXJfX3ByaW50XCI+UG91ciB7e3JlY2lwZT8ubW9kaWZpZWRHdWVzdHN9fVxuICAgICAgICAgICAgcGVyc29ubmVzPC9zcGFuPlxuICAgICAgICA8L2Rpdj5cbiAgICAgICAgPHNwYW4gY2xhc3M9XCJtaWFtLXJlY2lwZS1kZXRhaWxzX19pbmdyZWRpZW50c19fcm93X19xdHlcIj5RdWFudGl0w6k8L3NwYW4+XG4gICAgICA8L2Rpdj5cbiAgICAgIDxkaXYgY2xhc3M9XCJtaWFtLXJlY2lwZS1kZXRhaWxzX19pbmdyZWRpZW50c19fbGlzdFwiPlxuICAgICAgICA8ZGl2IGNsYXNzPVwibWlhbS1yZWNpcGUtZGV0YWlsc19faW5ncmVkaWVudHNfX3Jvd1wiIFtuZ0NsYXNzXT1cInsnY2hlY2tlZCc6IGluZ3JlZGllbnRzQ2hlY2tlZFtpXX1cIlxuICAgICAgICAgICpuZ0Zvcj1cImxldCBpbmdyZWRpZW50IG9mIHJlY2lwZT8ubW9kaWZpZWRJbmdyZWRpZW50cywgbGV0IGkgPSBpbmRleCBcIj5cbiAgICAgICAgICA8ZGl2ICpuZ0lmPVwiaW5ncmVkaWVudHNQaWN0dXJlc1wiPlxuICAgICAgICAgICAgPGltZyBjbGFzcz1cIm1pYW0tcmVjaXBlLWRldGFpbHNfX2luZ3JlZGllbnRzX19yb3dfX3BpY3R1cmVcIiBbc3JjXT1cImluZ3JlZGllbnRQaWN0dXJlKGluZ3JlZGllbnQpXCI+XG4gICAgICAgICAgPC9kaXY+XG4gICAgICAgICAgPGRpdj4ge3sgaW5ncmVkaWVudC5uYW1lIHwgY2FwaXRhbGl6ZUZpcnN0TGV0dGVyfX08L2Rpdj5cbiAgICAgICAgICA8ZGl2IGNsYXNzPVwibWlhbS1yZWNpcGUtZGV0YWlsc19faW5ncmVkaWVudHNfX3Jvd19fcXR5XCI+IHt7IGluZ3JlZGllbnQucXR5IHwgcmVhZGFibGVGbG9hdE51bWJlciA6XG4gICAgICAgICAgICBpbmdyZWRpZW50LnVuaXQgfX08L2Rpdj5cbiAgICAgICAgPC9kaXY+XG4gICAgICA8L2Rpdj5cbiAgICA8L2Rpdj5cbiAgICA8ZGl2IGNsYXNzPVwibWlhbS1yZWNpcGUtZGV0YWlsc19fYm90dG9tX19jb250YWluZXJfX3N0ZXBzXCI+XG4gICAgICA8ZGl2IGNsYXNzPVwibWlhbS1yZWNpcGUtZGV0YWlsc19fYm90dG9tX19jb250YWluZXJfX2hlYWRlclwiPlxuICAgICAgICBQcsOpcGFyYXRpb25cbiAgICAgIDwvZGl2PlxuICAgICAgPGRpdiBjbGFzcz1cIm1pYW0tcmVjaXBlLWRldGFpbHNfX3N0ZXBzX19saXN0XCI+XG4gICAgICAgIDxkaXYgY2xhc3M9XCJtaWFtLXJlY2lwZS1kZXRhaWxzX19zdGVwc19fbGlzdF9fcGFuZWxcIiAqbmdGb3I9XCJsZXQgc3RlcCBvZiBzdGVwczsgbGV0IGkgPSBpbmRleDtcIlxuICAgICAgICAgIChjbGljayk9XCJjaGFuZ2VBY3RpdmVTdGVwKGkpXCIgW2NsYXNzLmFjdGl2ZV09XCJpID09PSBhY3RpdmVTdGVwXCJcbiAgICAgICAgICBbY2xhc3MubWlhbS1yZWNpcGUtZGV0YWlsc19fcGFuZWxfX2RvbmVdPVwiaSA8IGFjdGl2ZVN0ZXBcIj5cbiAgICAgICAgICA8ZGl2IGNsYXNzPVwibWlhbS1yZWNpcGUtZGV0YWlsc19fcGFuZWxfX2lkeFwiPjxzdHJvbmc+e3sgaSArIDEgfX08L3N0cm9uZz48L2Rpdj5cbiAgICAgICAgICA8ZGl2IGNsYXNzPVwibWlhbS1yZWNpcGUtZGV0YWlsc19fcGFuZWxfX3RleHRcIj57e3N0ZXA/LmF0dHJpYnV0ZXM/LmRlc2NyaXB0aW9ufX08L2Rpdj5cbiAgICAgICAgICA8bmctbWlhbS1pY29uIGNsYXNzPVwibWlhbS1yZWNpcGUtZGV0YWlsc19fcGFuZWxfX2NoZWNrSWNvblwiICpuZ0lmPVwiaSA8PSBhY3RpdmVTdGVwXCIgW2hlaWdodF09JzE2JyBbd2lkdGhdPScxNidcbiAgICAgICAgICAgIFtpY29uTmFtZV09J2ljb24uQ2hlY2tDaXJjbGVGaWxsJyBwcmltYXJ5Q29sb3I9XCJ2YXIoLS1tLWNvbG9yLXNlY29uZGFyeSlcIj48L25nLW1pYW0taWNvbj5cbiAgICAgICAgPC9kaXY+XG4gICAgICA8L2Rpdj5cbiAgICA8L2Rpdj5cbiAgPC9kaXY+XG4gIDxuZy10ZW1wbGF0ZSAjbW9iaWxlQ29udGFpbmVyID5cbiAgICA8ZGl2ICNtb2JpbGVDb250YWluZXJUb3AgY2xhc3M9XCJtaWFtLXJlY2lwZS1kZXRhaWxzX19tb2JpbGVfX2NvbnRhaW5lclwiPlxuICAgICAgPGRpdiAgY2xhc3M9XCJtaWFtLXJlY2lwZS1kZXRhaWxzX19tb2JpbGVfX2hlYWRlclwiPlxuICAgICAgICA8YnV0dG9uIGNsYXNzPVwibS1idXR0b24tc2Vjb25kYXJ5XCIgW25nQ2xhc3NdPVwieydhY3RpdmUnIDogc2hvd0luZ3JlZGllbnR9XCIgKGNsaWNrKT1cInRvZ2dsZVNob3dJbmdyZWRpZW50KHRydWUpOyBtb2JpbGVDb250YWluZXJUb3Auc2Nyb2xsSW50b1ZpZXcoKVwiPkluZ3JlZGllbnRzPC9idXR0b24+XG4gICAgICAgIDxidXR0b24gY2xhc3M9XCJtLWJ1dHRvbi1zZWNvbmRhcnlcIiBbbmdDbGFzc109XCJ7J2FjdGl2ZScgOiAhc2hvd0luZ3JlZGllbnR9XCIgKGNsaWNrKT1cInRvZ2dsZVNob3dJbmdyZWRpZW50KGZhbHNlKTsgbW9iaWxlQ29udGFpbmVyVG9wLnNjcm9sbEludG9WaWV3KClcIj5QcsOpcGFyYXRpb248L2J1dHRvbj5cbiAgICAgICAgPC9kaXY+XG4gICAgICAgICAgPG5nLWNvbnRhaW5lciAgKm5nSWY9XCJzaG93SW5ncmVkaWVudCBlbHNlIHN0ZXBzQ29udGFpbmVyXCI+XG4gICAgICAgICAgPGRpdiBjbGFzcz1cIm1pYW0tcmVjaXBlLWRldGFpbHNfX2luZ3JlZGllbnRzX19yb3dcIj5cbiAgICAgICAgICAgIDxkaXYgY2xhc3M9XCJtaWFtLXJlY2lwZS1kZXRhaWxzX19pbmdyZWRpZW50c19fY291bnRlclwiPlxuICAgICAgICAgICAgICA8bmctbWlhbS1jb3VudGVyLWlucHV0IFtjb3VudGVyXT1cInJlY2lwZT8ubW9kaWZpZWRHdWVzdHNcIiAoY291bnRlckNoYW5nZSk9XCJ1cGRhdGVHdWVzdHMoJGV2ZW50KVwiPlxuICAgICAgICAgICAgICA8L25nLW1pYW0tY291bnRlci1pbnB1dD5cbiAgICAgICAgICAgICAgPHNwYW4gY2xhc3M9XCJtaWFtLXJlY2lwZS1kZXRhaWxzX19pbmdyZWRpZW50c19fY291bnRlcl9fcHJpbnRcIj5Qb3VyIHt7cmVjaXBlPy5tb2RpZmllZEd1ZXN0c319XG4gICAgICAgICAgICAgICAgcGVyc29ubmVzPC9zcGFuPlxuICAgICAgICAgICAgPC9kaXY+XG4gICAgICAgICAgICA8c3BhbiBjbGFzcz1cIm1pYW0tcmVjaXBlLWRldGFpbHNfX2luZ3JlZGllbnRzX19yb3dfX3F0eVwiPlF1YW50aXTDqTwvc3Bhbj5cbiAgICAgICAgICA8L2Rpdj5cbiAgICAgICAgICA8ZGl2IGNsYXNzPVwibWlhbS1yZWNpcGUtZGV0YWlsc19faW5ncmVkaWVudHNfX2xpc3RcIj5cbiAgICAgICAgICAgIDxkaXYgY2xhc3M9XCJtaWFtLXJlY2lwZS1kZXRhaWxzX19pbmdyZWRpZW50c19fcm93XCIgW25nQ2xhc3NdPVwieydjaGVja2VkJzogaW5ncmVkaWVudHNDaGVja2VkW2ldfVwiXG4gICAgICAgICAgICAgICpuZ0Zvcj1cImxldCBpbmdyZWRpZW50IG9mIHJlY2lwZT8ubW9kaWZpZWRJbmdyZWRpZW50cywgbGV0IGkgPSBpbmRleCBcIj5cbiAgICAgICAgICAgICAgPGRpdj4ge3sgaW5ncmVkaWVudC5uYW1lIHwgY2FwaXRhbGl6ZUZpcnN0TGV0dGVyfX08L2Rpdj5cbiAgICAgICAgICAgICAgPGRpdiBjbGFzcz1cIm1pYW0tcmVjaXBlLWRldGFpbHNfX2luZ3JlZGllbnRzX19yb3dfX3F0eVwiPiB7eyBpbmdyZWRpZW50LnF0eSB8IHJlYWRhYmxlRmxvYXROdW1iZXIgOlxuICAgICAgICAgICAgICAgIGluZ3JlZGllbnQudW5pdCB9fTwvZGl2PlxuICAgICAgICAgICAgPC9kaXY+XG4gICAgICAgICAgPC9kaXY+XG4gICAgICAgIDwvbmctY29udGFpbmVyPlxuICAgICAgICAgPG5nLXRlbXBsYXRlICNzdGVwc0NvbnRhaW5lcj5cbiAgICAgICAgICAgIDxkaXYgY2xhc3M9XCJtaWFtLXJlY2lwZS1kZXRhaWxzX19zdGVwc19fbGlzdFwiPlxuICAgICAgICAgICAgICA8ZGl2IGNsYXNzPVwibWlhbS1yZWNpcGUtZGV0YWlsc19fc3RlcHNfX2xpc3RfX3BhbmVsXCIgKm5nRm9yPVwibGV0IHN0ZXAgb2Ygc3RlcHM7IGxldCBpID0gaW5kZXg7XCJcbiAgICAgICAgICAgICAgICAoY2xpY2spPVwiY2hhbmdlQWN0aXZlU3RlcChpKVwiIFtjbGFzcy5hY3RpdmVdPVwiaSA9PT0gYWN0aXZlU3RlcFwiXG4gICAgICAgICAgICAgICAgW2NsYXNzLm1pYW0tcmVjaXBlLWRldGFpbHNfX3BhbmVsX19kb25lXT1cImkgPCBhY3RpdmVTdGVwXCI+XG4gICAgICAgICAgICAgICAgPGRpdiBjbGFzcz1cIm1pYW0tcmVjaXBlLWRldGFpbHNfX3BhbmVsX19pZHhcIj48c3Ryb25nPnt7IGkgKyAxIH19PC9zdHJvbmc+PC9kaXY+XG4gICAgICAgICAgICAgICAgPGRpdiBjbGFzcz1cIm1pYW0tcmVjaXBlLWRldGFpbHNfX3BhbmVsX190ZXh0XCI+e3tzdGVwPy5hdHRyaWJ1dGVzPy5kZXNjcmlwdGlvbn19PC9kaXY+XG4gICAgICAgICAgICAgICAgPG5nLW1pYW0taWNvbiBjbGFzcz1cIm1pYW0tcmVjaXBlLWRldGFpbHNfX3BhbmVsX19jaGVja0ljb25cIiAqbmdJZj1cImkgPD0gYWN0aXZlU3RlcFwiIFtoZWlnaHRdPScxNicgW3dpZHRoXT0nMTYnXG4gICAgICAgICAgICAgICAgICBbaWNvbk5hbWVdPSdpY29uLkNoZWNrQ2lyY2xlRmlsbCcgcHJpbWFyeUNvbG9yPVwidmFyKC0tbS1jb2xvci1zZWNvbmRhcnkpXCI+PC9uZy1taWFtLWljb24+XG4gICAgICAgICAgICAgIDwvZGl2PlxuICAgICAgICAgICAgPC9kaXY+XG4gICAgICAgICAgPC9uZy10ZW1wbGF0ZT5cbiAgICAgICAgPC9kaXY+XG4gIDwvbmctdGVtcGxhdGU+XG4gIDxkaXYgY2xhc3M9XCJtaWFtLXJlY2lwZS1kZXRhaWxzX19ib3R0b21fX2NvbnRhaW5lcl9fYWN0aW9uXCI+XG4gICAgPGRpdiBjbGFzcz1cIm1pYW0tcmVjaXBlLWRldGFpbHNfX2luZm9zX19wcmljZV9fd3JhcHBlclwiPlxuICAgICAgPGRpdiBjbGFzcz1cIm1pYW0tcmVjaXBlLWRldGFpbHNfX2luZm9zX19wcmljZVwiPlxuICAgICAgICA8bmctbWlhbS1yZWNpcGUtcHJpY2luZyBbcmVjaXBlXT1cInJlY2lwZVwiIFtzZXJ2ZXNdPVwicmVjaXBlPy5tb2RpZmllZEd1ZXN0c1wiPjwvbmctbWlhbS1yZWNpcGUtcHJpY2luZz5cbiAgICAgIDwvZGl2PlxuICAgICAgPGJ1dHRvbiAqbmdJZj1cInByZXZpZXdBbGxvd2VkXCIgIGNsYXNzPVwibWlhbS1yZWNpcGUtZGV0YWlsc19faW5mb3NfX2FjdGlvbiBtLWJ1dHRvbi1mYWItcHJpbWFyeVwiIChjbGljayk9XCJhZGRSZWNpcGUoKVwiPlxuICAgICAgICA8c3Bhbj5cbiAgICAgICAgICB7eyhncm9jZXJpZXNMaXN0c1NlcnZpY2UubGlzdCQgfCBhc3luYyk/Lmhhc1JlY2lwZShyZWNpcGU/LmlkKSA/ICdWb2lyIGxlIGTDqXRhaWwnIDogJ1PDqWxlY3Rpb25uZXIgY2UgcmVwYXMnfX1cbiAgICAgICAgPC9zcGFuPlxuICAgICAgICA8bmctbWlhbS1pY29uIFt3aWR0aF09XCIyNFwiIFtoZWlnaHRdPVwiMjRcIiBwcmltYXJ5Q29sb3I9JyNmZmYnXG4gICAgICAgICAgW2ljb25OYW1lXT1cIihncm9jZXJpZXNMaXN0c1NlcnZpY2UubGlzdCQgfCBhc3luYyk/Lmhhc1JlY2lwZShyZWNpcGU/LmlkKSA/IGljb24uQ2hlY2tMaXN0ICA6aWNvbi5DYXJ0XCI+XG4gICAgICAgIDwvbmctbWlhbS1pY29uPlxuICAgICAgPC9idXR0b24+XG4gICAgPC9kaXY+XG4gIDwvZGl2PlxuPC9kaXY+XG48bmctdGVtcGxhdGUgI2FkZG9uPlxuICA8bmctbWlhbS1yZWNpcGUtYWRkb24gW3JlY2lwZV09J3JlY2lwZScgKGhpZGVBZGRvbik9XCJ0b2dnbGVBZGRvbigpXCI+PC9uZy1taWFtLXJlY2lwZS1hZGRvbj5cbjwvbmctdGVtcGxhdGU+Il19
|