@thetradeengineorg1/snova-shell-module 1.0.0 → 1.0.2
This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
- package/bundles/thetradeengineorg1-snova-shell-module.umd.js +680 -1159
- package/bundles/thetradeengineorg1-snova-shell-module.umd.js.map +1 -1
- package/esm2015/lib/shell-components/components/admin-layout/admin-layout.component.js +11 -14
- package/esm2015/lib/shell-components/components/header-side/header-side.component.js +180 -511
- package/esm2015/lib/shell-components/components/menu/menu.component.js +33 -234
- package/esm2015/lib/shell-components/components/sidenav/side-bar.component.js +189 -93
- package/fesm2015/thetradeengineorg1-snova-shell-module.js +590 -1015
- package/fesm2015/thetradeengineorg1-snova-shell-module.js.map +1 -1
- package/lib/shell-components/components/sidenav/side-bar.component.d.ts +14 -24
- package/package.json +1 -1
|
@@ -1,126 +1,225 @@
|
|
|
1
|
-
import { Component
|
|
2
|
-
import {
|
|
3
|
-
import {
|
|
4
|
-
import { tap } from
|
|
5
|
-
import * as sharedModuleReducers from
|
|
6
|
-
import { GetAllMenuItemsTriggered } from
|
|
7
|
-
import { MenuCategories } from
|
|
8
|
-
import { LocalStorageProperties } from '../../../globaldependencies/constants/localstorage-properties';
|
|
9
|
-
import * as bootstrap from 'bootstrap';
|
|
1
|
+
import { Component } from "@angular/core";
|
|
2
|
+
import { NavigationEnd } from "@angular/router";
|
|
3
|
+
import { select } from "@ngrx/store";
|
|
4
|
+
import { tap } from "rxjs/operators";
|
|
5
|
+
import * as sharedModuleReducers from "./../../store/reducers/index";
|
|
6
|
+
import { GetAllMenuItemsTriggered } from "../../store/actions/menuitems.actions";
|
|
7
|
+
import { MenuCategories } from "../../constants/menu-categories";
|
|
10
8
|
import * as i0 from "@angular/core";
|
|
11
9
|
import * as i1 from "@ngrx/store";
|
|
12
10
|
import * as i2 from "@angular/router";
|
|
13
|
-
import * as i3 from "
|
|
14
|
-
import * as i4 from "@angular/
|
|
15
|
-
import * as i5 from "@angular/
|
|
16
|
-
import * as i6 from "
|
|
17
|
-
|
|
18
|
-
function
|
|
19
|
-
|
|
11
|
+
import * as i3 from "@angular/common";
|
|
12
|
+
import * as i4 from "@angular/flex-layout/extended";
|
|
13
|
+
import * as i5 from "@angular/material/icon";
|
|
14
|
+
import * as i6 from "../../../globaldependencies/pipes/softlabels.pipes";
|
|
15
|
+
import * as i7 from "@ngx-translate/core";
|
|
16
|
+
function SideBarComponent_div_9_ng_container_3_Template(rf, ctx) { if (rf & 1) {
|
|
17
|
+
i0.ɵɵelementContainerStart(0);
|
|
18
|
+
i0.ɵɵelementStart(1, "mat-icon", 5);
|
|
19
|
+
i0.ɵɵtext(2);
|
|
20
|
+
i0.ɵɵelementEnd();
|
|
21
|
+
i0.ɵɵelementStart(3, "h6", 6);
|
|
22
|
+
i0.ɵɵtext(4);
|
|
23
|
+
i0.ɵɵpipe(5, "softLabelsPipe");
|
|
24
|
+
i0.ɵɵpipe(6, "translate");
|
|
25
|
+
i0.ɵɵelementEnd();
|
|
26
|
+
i0.ɵɵelementContainerEnd();
|
|
27
|
+
} if (rf & 2) {
|
|
28
|
+
const item_r1 = i0.ɵɵnextContext().$implicit;
|
|
29
|
+
const ctx_r3 = i0.ɵɵnextContext();
|
|
30
|
+
i0.ɵɵadvance(2);
|
|
31
|
+
i0.ɵɵtextInterpolate(item_r1.icon);
|
|
32
|
+
i0.ɵɵadvance(2);
|
|
33
|
+
i0.ɵɵtextInterpolate1(" ", item_r1.menu ? i0.ɵɵpipeBind2(5, 2, item_r1.menu, ctx_r3.softLabels) : i0.ɵɵpipeBind1(6, 5, item_r1.name), " ");
|
|
34
|
+
} }
|
|
35
|
+
function SideBarComponent_div_9_ng_container_4_Template(rf, ctx) { if (rf & 1) {
|
|
36
|
+
i0.ɵɵelementContainerStart(0);
|
|
37
|
+
i0.ɵɵelementStart(1, "a", 12);
|
|
38
|
+
i0.ɵɵelementStart(2, "mat-icon", 5);
|
|
39
|
+
i0.ɵɵtext(3);
|
|
40
|
+
i0.ɵɵelementEnd();
|
|
41
|
+
i0.ɵɵelementStart(4, "h6", 6);
|
|
42
|
+
i0.ɵɵtext(5);
|
|
43
|
+
i0.ɵɵpipe(6, "softLabelsPipe");
|
|
44
|
+
i0.ɵɵpipe(7, "translate");
|
|
45
|
+
i0.ɵɵelementEnd();
|
|
46
|
+
i0.ɵɵelementEnd();
|
|
47
|
+
i0.ɵɵelementContainerEnd();
|
|
48
|
+
} if (rf & 2) {
|
|
49
|
+
const item_r1 = i0.ɵɵnextContext().$implicit;
|
|
50
|
+
const ctx_r4 = i0.ɵɵnextContext();
|
|
51
|
+
i0.ɵɵadvance(1);
|
|
52
|
+
i0.ɵɵproperty("href", item_r1.state, i0.ɵɵsanitizeUrl);
|
|
53
|
+
i0.ɵɵadvance(2);
|
|
54
|
+
i0.ɵɵtextInterpolate(item_r1.icon);
|
|
55
|
+
i0.ɵɵadvance(2);
|
|
56
|
+
i0.ɵɵtextInterpolate1(" ", item_r1.menu ? i0.ɵɵpipeBind2(6, 3, item_r1.menu, ctx_r4.softLabels) : i0.ɵɵpipeBind1(7, 6, item_r1.name), " ");
|
|
57
|
+
} }
|
|
58
|
+
function SideBarComponent_div_9_div_5_Template(rf, ctx) { if (rf & 1) {
|
|
59
|
+
const _r12 = i0.ɵɵgetCurrentView();
|
|
60
|
+
i0.ɵɵelementStart(0, "div", 13);
|
|
61
|
+
i0.ɵɵlistener("click", function SideBarComponent_div_9_div_5_Template_div_click_0_listener() { i0.ɵɵrestoreView(_r12); const item_r1 = i0.ɵɵnextContext().$implicit; const ctx_r10 = i0.ɵɵnextContext(); return ctx_r10.toggleDropdown(item_r1); });
|
|
62
|
+
i0.ɵɵelementStart(1, "mat-icon", 5);
|
|
63
|
+
i0.ɵɵtext(2);
|
|
64
|
+
i0.ɵɵelementEnd();
|
|
65
|
+
i0.ɵɵelementStart(3, "h6", 6);
|
|
66
|
+
i0.ɵɵtext(4);
|
|
67
|
+
i0.ɵɵpipe(5, "softLabelsPipe");
|
|
68
|
+
i0.ɵɵpipe(6, "translate");
|
|
69
|
+
i0.ɵɵelementEnd();
|
|
70
|
+
i0.ɵɵelementStart(7, "mat-icon", 14);
|
|
71
|
+
i0.ɵɵtext(8);
|
|
72
|
+
i0.ɵɵelementEnd();
|
|
73
|
+
i0.ɵɵelementEnd();
|
|
74
|
+
} if (rf & 2) {
|
|
75
|
+
const item_r1 = i0.ɵɵnextContext().$implicit;
|
|
76
|
+
const ctx_r5 = i0.ɵɵnextContext();
|
|
77
|
+
i0.ɵɵadvance(2);
|
|
78
|
+
i0.ɵɵtextInterpolate(item_r1.icon);
|
|
79
|
+
i0.ɵɵadvance(2);
|
|
80
|
+
i0.ɵɵtextInterpolate1(" ", item_r1.menu ? i0.ɵɵpipeBind2(5, 3, item_r1.menu, ctx_r5.softLabels) : i0.ɵɵpipeBind1(6, 6, item_r1.name), " ");
|
|
81
|
+
i0.ɵɵadvance(4);
|
|
82
|
+
i0.ɵɵtextInterpolate1(" ", item_r1.open ? "expand_less" : "expand_more", " ");
|
|
83
|
+
} }
|
|
84
|
+
const _c0 = function (a0) { return { background: a0 }; };
|
|
85
|
+
function SideBarComponent_div_9_div_6_span_1_Template(rf, ctx) { if (rf & 1) {
|
|
86
|
+
i0.ɵɵelementStart(0, "span", 17);
|
|
87
|
+
i0.ɵɵtext(1);
|
|
88
|
+
i0.ɵɵelementEnd();
|
|
89
|
+
} if (rf & 2) {
|
|
90
|
+
const badge_r15 = ctx.$implicit;
|
|
91
|
+
i0.ɵɵproperty("ngStyle", i0.ɵɵpureFunction1(2, _c0, badge_r15.color));
|
|
92
|
+
i0.ɵɵadvance(1);
|
|
93
|
+
i0.ɵɵtextInterpolate1(" ", badge_r15.value, " ");
|
|
94
|
+
} }
|
|
95
|
+
function SideBarComponent_div_9_div_6_Template(rf, ctx) { if (rf & 1) {
|
|
96
|
+
i0.ɵɵelementStart(0, "div", 15);
|
|
97
|
+
i0.ɵɵtemplate(1, SideBarComponent_div_9_div_6_span_1_Template, 2, 4, "span", 16);
|
|
98
|
+
i0.ɵɵelementEnd();
|
|
99
|
+
} if (rf & 2) {
|
|
100
|
+
const item_r1 = i0.ɵɵnextContext().$implicit;
|
|
101
|
+
i0.ɵɵadvance(1);
|
|
102
|
+
i0.ɵɵproperty("ngForOf", item_r1.badges);
|
|
103
|
+
} }
|
|
104
|
+
function SideBarComponent_div_9_div_7_div_1_Template(rf, ctx) { if (rf & 1) {
|
|
105
|
+
const _r21 = i0.ɵɵgetCurrentView();
|
|
20
106
|
i0.ɵɵelementStart(0, "div", 2);
|
|
21
|
-
i0.ɵɵelementStart(1, "div",
|
|
22
|
-
i0.ɵɵlistener("
|
|
107
|
+
i0.ɵɵelementStart(1, "div", 19);
|
|
108
|
+
i0.ɵɵlistener("click", function SideBarComponent_div_9_div_7_div_1_Template_div_click_1_listener() { const restoredCtx = i0.ɵɵrestoreView(_r21); const itemLvL2_r18 = restoredCtx.$implicit; const ctx_r20 = i0.ɵɵnextContext(2); const i_r2 = ctx_r20.index; const item_r1 = ctx_r20.$implicit; const ctx_r19 = i0.ɵɵnextContext(); return ctx_r19.selectMenu(i_r2, "/" + item_r1.state + "/" + itemLvL2_r18.state); });
|
|
23
109
|
i0.ɵɵelementStart(2, "div", 4);
|
|
24
110
|
i0.ɵɵelementStart(3, "mat-icon", 5);
|
|
25
111
|
i0.ɵɵtext(4);
|
|
26
112
|
i0.ɵɵelementEnd();
|
|
27
113
|
i0.ɵɵelementStart(5, "h6", 6);
|
|
28
114
|
i0.ɵɵtext(6);
|
|
115
|
+
i0.ɵɵpipe(7, "softLabelsPipe");
|
|
116
|
+
i0.ɵɵpipe(8, "translate");
|
|
117
|
+
i0.ɵɵelementEnd();
|
|
118
|
+
i0.ɵɵelementEnd();
|
|
119
|
+
i0.ɵɵelementEnd();
|
|
120
|
+
i0.ɵɵelementEnd();
|
|
121
|
+
} if (rf & 2) {
|
|
122
|
+
const itemLvL2_r18 = ctx.$implicit;
|
|
123
|
+
const ctx_r17 = i0.ɵɵnextContext(3);
|
|
124
|
+
i0.ɵɵadvance(4);
|
|
125
|
+
i0.ɵɵtextInterpolate(itemLvL2_r18.icon);
|
|
126
|
+
i0.ɵɵadvance(2);
|
|
127
|
+
i0.ɵɵtextInterpolate1(" ", itemLvL2_r18.menu ? i0.ɵɵpipeBind2(7, 2, itemLvL2_r18.menu, ctx_r17.softLabels) : i0.ɵɵpipeBind1(8, 5, itemLvL2_r18.name), " ");
|
|
128
|
+
} }
|
|
129
|
+
function SideBarComponent_div_9_div_7_Template(rf, ctx) { if (rf & 1) {
|
|
130
|
+
i0.ɵɵelementStart(0, "div", 18);
|
|
131
|
+
i0.ɵɵtemplate(1, SideBarComponent_div_9_div_7_div_1_Template, 9, 7, "div", 7);
|
|
29
132
|
i0.ɵɵelementEnd();
|
|
133
|
+
} if (rf & 2) {
|
|
134
|
+
const item_r1 = i0.ɵɵnextContext().$implicit;
|
|
135
|
+
i0.ɵɵadvance(1);
|
|
136
|
+
i0.ɵɵproperty("ngForOf", item_r1.sub);
|
|
137
|
+
} }
|
|
138
|
+
const _c1 = function () { return { "background-color": "#DBEAFE", "border-image": "linear-gradient(135deg,#5de0e6,#004aad) 1", "box-shadow": "0 4px 15px rgba(0,0,0,0.15)" }; };
|
|
139
|
+
function SideBarComponent_div_9_Template(rf, ctx) { if (rf & 1) {
|
|
140
|
+
const _r24 = i0.ɵɵgetCurrentView();
|
|
141
|
+
i0.ɵɵelementStart(0, "div", 2);
|
|
142
|
+
i0.ɵɵelementStart(1, "div", 3);
|
|
143
|
+
i0.ɵɵlistener("mouseenter", function SideBarComponent_div_9_Template_div_mouseenter_1_listener() { const restoredCtx = i0.ɵɵrestoreView(_r24); const i_r2 = restoredCtx.index; const ctx_r23 = i0.ɵɵnextContext(); return ctx_r23.enter(i_r2); })("mouseleave", function SideBarComponent_div_9_Template_div_mouseleave_1_listener() { const restoredCtx = i0.ɵɵrestoreView(_r24); const i_r2 = restoredCtx.index; const ctx_r25 = i0.ɵɵnextContext(); return ctx_r25.leave(i_r2); })("click", function SideBarComponent_div_9_Template_div_click_1_listener() { const restoredCtx = i0.ɵɵrestoreView(_r24); const i_r2 = restoredCtx.index; const item_r1 = restoredCtx.$implicit; const ctx_r26 = i0.ɵɵnextContext(); return ctx_r26.selectMenu(i_r2, item_r1.state); });
|
|
144
|
+
i0.ɵɵelementStart(2, "div", 4);
|
|
145
|
+
i0.ɵɵtemplate(3, SideBarComponent_div_9_ng_container_3_Template, 7, 7, "ng-container", 8);
|
|
146
|
+
i0.ɵɵtemplate(4, SideBarComponent_div_9_ng_container_4_Template, 8, 8, "ng-container", 8);
|
|
147
|
+
i0.ɵɵtemplate(5, SideBarComponent_div_9_div_5_Template, 9, 8, "div", 9);
|
|
148
|
+
i0.ɵɵtemplate(6, SideBarComponent_div_9_div_6_Template, 2, 1, "div", 10);
|
|
30
149
|
i0.ɵɵelementEnd();
|
|
31
150
|
i0.ɵɵelementEnd();
|
|
151
|
+
i0.ɵɵtemplate(7, SideBarComponent_div_9_div_7_Template, 2, 1, "div", 11);
|
|
32
152
|
i0.ɵɵelementEnd();
|
|
33
153
|
} if (rf & 2) {
|
|
34
154
|
const item_r1 = ctx.$implicit;
|
|
35
155
|
const i_r2 = ctx.index;
|
|
36
156
|
const ctx_r0 = i0.ɵɵnextContext();
|
|
37
157
|
i0.ɵɵadvance(1);
|
|
38
|
-
i0.ɵɵproperty("ngStyle",
|
|
39
|
-
i0.ɵɵadvance(3);
|
|
40
|
-
i0.ɵɵtextInterpolate(item_r1.icon);
|
|
158
|
+
i0.ɵɵproperty("ngStyle", (ctx_r0.selectedRowIndex == i_r2 || ctx_r0.showBackGroundColor == i_r2) && i0.ɵɵpureFunction0(6, _c1));
|
|
41
159
|
i0.ɵɵadvance(2);
|
|
42
|
-
i0.ɵɵ
|
|
160
|
+
i0.ɵɵproperty("ngIf", item_r1.type === "link" || item_r1.type === "applicationlink");
|
|
161
|
+
i0.ɵɵadvance(1);
|
|
162
|
+
i0.ɵɵproperty("ngIf", item_r1.type === "extLink");
|
|
163
|
+
i0.ɵɵadvance(1);
|
|
164
|
+
i0.ɵɵproperty("ngIf", item_r1.type === "dropDown");
|
|
165
|
+
i0.ɵɵadvance(1);
|
|
166
|
+
i0.ɵɵproperty("ngIf", item_r1.badges == null ? null : item_r1.badges.length);
|
|
167
|
+
i0.ɵɵadvance(1);
|
|
168
|
+
i0.ɵɵproperty("ngIf", item_r1.open && item_r1.type === "dropDown");
|
|
43
169
|
} }
|
|
44
170
|
export class SideBarComponent {
|
|
45
|
-
constructor(store, router
|
|
171
|
+
constructor(store, router) {
|
|
46
172
|
this.store = store;
|
|
47
173
|
this.router = router;
|
|
48
|
-
this.recentSearchService = recentSearchService;
|
|
49
|
-
this.hasIconMenu = false;
|
|
50
|
-
this.iconMenuTitle = 'Menu';
|
|
51
|
-
this.menuItems = [];
|
|
52
|
-
this.items = [];
|
|
53
|
-
this.selectedRowIndex = null;
|
|
54
174
|
this.showBackGroundColor = null;
|
|
55
175
|
}
|
|
56
176
|
ngOnInit() {
|
|
57
|
-
|
|
58
|
-
this.
|
|
59
|
-
//
|
|
177
|
+
// load soft labels
|
|
178
|
+
this.softLabels = JSON.parse(localStorage.getItem("SoftLabels"));
|
|
179
|
+
// get menu items from store
|
|
180
|
+
this.menuItems$ = this.store.pipe(select(sharedModuleReducers.getCurrentActiveMenuCategoryMenuItems), tap(menuList => this.routerActive(menuList)));
|
|
181
|
+
// trigger menu load
|
|
182
|
+
this.store.dispatch(new GetAllMenuItemsTriggered(MenuCategories.Main));
|
|
183
|
+
// listen to route changes
|
|
60
184
|
this.router.events.subscribe(event => {
|
|
61
185
|
if (event instanceof NavigationEnd) {
|
|
62
|
-
this.
|
|
186
|
+
this.menuItems$.subscribe(list => this.routerActive(list));
|
|
63
187
|
}
|
|
64
188
|
});
|
|
65
189
|
}
|
|
66
|
-
|
|
67
|
-
|
|
68
|
-
|
|
190
|
+
routerActive(menuList) {
|
|
191
|
+
if (menuList && menuList.length > 0) {
|
|
192
|
+
const index = menuList.findIndex(i => this.router.url == "/" + i.state);
|
|
193
|
+
this.selectedRowIndex = index;
|
|
194
|
+
if (this.router.url.includes("/dashboard-management")) {
|
|
195
|
+
this.selectedRowIndex = 99;
|
|
196
|
+
}
|
|
197
|
+
}
|
|
198
|
+
}
|
|
199
|
+
enter(i) {
|
|
200
|
+
this.showBackGroundColor = i;
|
|
69
201
|
}
|
|
70
|
-
|
|
71
|
-
|
|
72
|
-
if (stored)
|
|
73
|
-
this.softLabels = JSON.parse(stored);
|
|
202
|
+
leave(i) {
|
|
203
|
+
this.showBackGroundColor = null;
|
|
74
204
|
}
|
|
75
|
-
|
|
76
|
-
|
|
77
|
-
this.menuItems$ = this.store.pipe(select(sharedModuleReducers.getCurrentActiveMenuCategoryMenuItems), tap(menuList => console.log('NgRx menu:', menuList)));
|
|
78
|
-
this.store.dispatch(new GetAllMenuItemsTriggered(MenuCategories.Main));
|
|
79
|
-
// Fallback: load from localStorage / service
|
|
80
|
-
const storedItems = JSON.parse(localStorage.getItem(LocalStorageProperties.SideBarMenuItems));
|
|
81
|
-
if (storedItems && storedItems.length) {
|
|
82
|
-
this.menuItems = storedItems;
|
|
83
|
-
this.items = this.menuItems.filter(i => i.type !== 'dropDown');
|
|
84
|
-
}
|
|
85
|
-
else {
|
|
86
|
-
this.recentSearchService.searchMenuData(false).subscribe((res) => {
|
|
87
|
-
var _a;
|
|
88
|
-
if (res.success && ((_a = res.data) === null || _a === void 0 ? void 0 : _a.menuItems)) {
|
|
89
|
-
this.menuItems = res.data.menuItems;
|
|
90
|
-
localStorage.setItem(LocalStorageProperties.SideBarMenuItems, JSON.stringify(this.menuItems));
|
|
91
|
-
this.items = this.menuItems.filter(i => i.type !== 'dropDown');
|
|
92
|
-
}
|
|
93
|
-
});
|
|
94
|
-
}
|
|
205
|
+
toggleDropdown(item) {
|
|
206
|
+
item.open = !item.open;
|
|
95
207
|
}
|
|
96
|
-
|
|
97
|
-
|
|
98
|
-
|
|
99
|
-
|
|
100
|
-
|
|
101
|
-
this.selectedRowIndex = 99;
|
|
208
|
+
// ✅ NEW: unified method
|
|
209
|
+
selectMenu(index, link) {
|
|
210
|
+
this.selectedRowIndex = index;
|
|
211
|
+
if (link) {
|
|
212
|
+
this.router.navigate([link]);
|
|
102
213
|
}
|
|
103
214
|
}
|
|
104
|
-
// Hover events
|
|
105
|
-
enter(i) { this.showBackGroundColor = i; }
|
|
106
|
-
leave(i) { this.showBackGroundColor = null; }
|
|
107
|
-
// Click event to set active menu
|
|
108
|
-
selectMenu(i) { this.selectedRowIndex = i; }
|
|
109
|
-
// Navigate and keep active
|
|
110
|
-
openMenu(link) {
|
|
111
|
-
this.router.navigate([link]);
|
|
112
|
-
const index = this.items.findIndex(item => item.state === link);
|
|
113
|
-
if (index >= 0)
|
|
114
|
-
this.selectMenu(index);
|
|
115
|
-
}
|
|
116
215
|
}
|
|
117
|
-
SideBarComponent.ɵfac = function SideBarComponent_Factory(t) { return new (t || SideBarComponent)(i0.ɵɵdirectiveInject(i1.Store), i0.ɵɵdirectiveInject(i2.Router)
|
|
118
|
-
SideBarComponent.ɵcmp = /*@__PURE__*/ i0.ɵɵdefineComponent({ type: SideBarComponent, selectors: [["app-sidebar"]],
|
|
216
|
+
SideBarComponent.ɵfac = function SideBarComponent_Factory(t) { return new (t || SideBarComponent)(i0.ɵɵdirectiveInject(i1.Store), i0.ɵɵdirectiveInject(i2.Router)); };
|
|
217
|
+
SideBarComponent.ɵcmp = /*@__PURE__*/ i0.ɵɵdefineComponent({ type: SideBarComponent, selectors: [["app-sidebar"]], decls: 11, vars: 5, consts: [[1, "d-flex", "flex-column", "justify-content-center", "align-items-center", 2, "width", "100vw", "height", "calc(100vh - 60px)", "background-color", "#F9FAFB", "padding", "30px", "overflow", "auto"], [1, "row", "justify-content-center", "align-items-center", 2, "height", "auto"], [1, "col-6", "col-md-3", "mb-4"], [1, "card", "cursor-pointer", 2, "height", "150px", "border-radius", "12px", "transition", "all 0.3s ease", "background", "#fff", "box-shadow", "0 2px 6px rgba(0,0,0,0.08)", "border", "2px solid transparent", 3, "ngStyle", "mouseenter", "mouseleave", "click"], [1, "card-body", "d-flex", "flex-column", "align-items-center", "justify-content-center"], [2, "font-size", "40px", "margin-bottom", "10px", "width", "48px", "height", "48px", "display", "flex", "align-items", "center", "justify-content", "center", "background", "linear-gradient(135deg,#5de0e6,#004aad)", "-webkit-background-clip", "text", "-webkit-text-fill-color", "transparent", "background-clip", "text", "text-fill-color", "transparent"], [2, "font-size", "14px", "margin", "0", "color", "#111827", "text-align", "center"], ["class", "col-6 col-md-3 mb-4", 4, "ngFor", "ngForOf"], [4, "ngIf"], ["class", "w-100 d-flex flex-column align-items-center cursor-pointer", 3, "click", 4, "ngIf"], ["class", "mt-2", 4, "ngIf"], ["class", "row w-100 mt-2", 4, "ngIf"], ["target", "_blank", 1, "w-100", "d-flex", "flex-column", "align-items-center", 3, "href"], [1, "w-100", "d-flex", "flex-column", "align-items-center", "cursor-pointer", 3, "click"], [2, "font-size", "24px", "margin-top", "5px", "width", "32px", "height", "32px", "background", "linear-gradient(135deg,#5de0e6,#004aad)", "-webkit-background-clip", "text", "-webkit-text-fill-color", "transparent", "background-clip", "text", "text-fill-color", "transparent"], [1, "mt-2"], ["class", "badge rounded-pill", 3, "ngStyle", 4, "ngFor", "ngForOf"], [1, "badge", "rounded-pill", 3, "ngStyle"], [1, "row", "w-100", "mt-2"], [1, "card", "cursor-pointer", 2, "height", "150px", "border-radius", "12px", "transition", "all 0.3s ease", "background", "#fff", "box-shadow", "0 2px 6px rgba(0,0,0,0.08)", "border", "2px solid transparent", 3, "click"]], template: function SideBarComponent_Template(rf, ctx) { if (rf & 1) {
|
|
119
218
|
i0.ɵɵelementStart(0, "div", 0);
|
|
120
219
|
i0.ɵɵelementStart(1, "div", 1);
|
|
121
220
|
i0.ɵɵelementStart(2, "div", 2);
|
|
122
221
|
i0.ɵɵelementStart(3, "div", 3);
|
|
123
|
-
i0.ɵɵlistener("mouseenter", function SideBarComponent_Template_div_mouseenter_3_listener() { return ctx.enter(99); })("mouseleave", function SideBarComponent_Template_div_mouseleave_3_listener() { return ctx.leave(99); })("click", function SideBarComponent_Template_div_click_3_listener() { return ctx.selectMenu(99); });
|
|
222
|
+
i0.ɵɵlistener("mouseenter", function SideBarComponent_Template_div_mouseenter_3_listener() { return ctx.enter(99); })("mouseleave", function SideBarComponent_Template_div_mouseleave_3_listener() { return ctx.leave(99); })("click", function SideBarComponent_Template_div_click_3_listener() { return ctx.selectMenu(99, "/dashboard-management"); });
|
|
124
223
|
i0.ɵɵelementStart(4, "div", 4);
|
|
125
224
|
i0.ɵɵelementStart(5, "mat-icon", 5);
|
|
126
225
|
i0.ɵɵtext(6, "home");
|
|
@@ -131,24 +230,21 @@ SideBarComponent.ɵcmp = /*@__PURE__*/ i0.ɵɵdefineComponent({ type: SideBarCom
|
|
|
131
230
|
i0.ɵɵelementEnd();
|
|
132
231
|
i0.ɵɵelementEnd();
|
|
133
232
|
i0.ɵɵelementEnd();
|
|
134
|
-
i0.ɵɵtemplate(9, SideBarComponent_div_9_Template,
|
|
233
|
+
i0.ɵɵtemplate(9, SideBarComponent_div_9_Template, 8, 7, "div", 7);
|
|
234
|
+
i0.ɵɵpipe(10, "async");
|
|
135
235
|
i0.ɵɵelementEnd();
|
|
136
236
|
i0.ɵɵelementEnd();
|
|
137
237
|
} if (rf & 2) {
|
|
138
238
|
i0.ɵɵadvance(3);
|
|
139
|
-
i0.ɵɵproperty("ngStyle",
|
|
239
|
+
i0.ɵɵproperty("ngStyle", (ctx.selectedRowIndex == 99 || ctx.showBackGroundColor == 99) && i0.ɵɵpureFunction0(4, _c1));
|
|
140
240
|
i0.ɵɵadvance(6);
|
|
141
|
-
i0.ɵɵproperty("ngForOf", ctx.
|
|
142
|
-
} }, directives: [
|
|
241
|
+
i0.ɵɵproperty("ngForOf", i0.ɵɵpipeBind1(10, 2, ctx.menuItems$));
|
|
242
|
+
} }, directives: [i3.NgStyle, i4.DefaultStyleDirective, i5.MatIcon, i3.NgForOf, i3.NgIf], pipes: [i3.AsyncPipe, i6.SoftLabelPipe, i7.TranslatePipe], encapsulation: 2 });
|
|
143
243
|
(function () { (typeof ngDevMode === "undefined" || ngDevMode) && i0.ɵsetClassMetadata(SideBarComponent, [{
|
|
144
244
|
type: Component,
|
|
145
245
|
args: [{
|
|
146
|
-
selector:
|
|
147
|
-
templateUrl:
|
|
246
|
+
selector: "app-sidebar",
|
|
247
|
+
templateUrl: "./side-bar.component.html"
|
|
148
248
|
}]
|
|
149
|
-
}], function () { return [{ type: i1.Store }, { type: i2.Router }
|
|
150
|
-
type: Input
|
|
151
|
-
}], iconMenuTitle: [{
|
|
152
|
-
type: Input
|
|
153
|
-
}] }); })();
|
|
154
|
-
//# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoic2lkZS1iYXIuY29tcG9uZW50LmpzIiwic291cmNlUm9vdCI6IiIsInNvdXJjZXMiOlsiLi4vLi4vLi4vLi4vLi4vLi4vLi4vc2hlbGwtbW9kdWxlLWNvbXBvbmVudHMvc2hlbGwtY29tcG9uZW50cy9zcmMvbGliL3NoZWxsLWNvbXBvbmVudHMvY29tcG9uZW50cy9zaWRlbmF2L3NpZGUtYmFyLmNvbXBvbmVudC50cyIsIi4uLy4uLy4uLy4uLy4uLy4uLy4uL3NoZWxsLW1vZHVsZS1jb21wb25lbnRzL3NoZWxsLWNvbXBvbmVudHMvc3JjL2xpYi9zaGVsbC1jb21wb25lbnRzL2NvbXBvbmVudHMvc2lkZW5hdi9zaWRlLWJhci5jb21wb25lbnQuaHRtbCJdLCJuYW1lcyI6W10sIm1hcHBpbmdzIjoiQUFBQSxPQUFPLEVBQUUsU0FBUyxFQUFFLEtBQUssRUFBaUIsTUFBTSxlQUFlLENBQUM7QUFDaEUsT0FBTyxFQUFTLE1BQU0sRUFBRSxNQUFNLGFBQWEsQ0FBQztBQUM1QyxPQUFPLEVBQVUsYUFBYSxFQUFFLE1BQU0saUJBQWlCLENBQUM7QUFFeEQsT0FBTyxFQUFFLEdBQUcsRUFBRSxNQUFNLGdCQUFnQixDQUFDO0FBQ3JDLE9BQU8sS0FBSyxvQkFBb0IsTUFBTSw0QkFBNEIsQ0FBQztBQUVuRSxPQUFPLEVBQUUsd0JBQXdCLEVBQUUsTUFBTSx1Q0FBdUMsQ0FBQztBQUVqRixPQUFPLEVBQUUsY0FBYyxFQUFFLE1BQU0saUNBQWlDLENBQUM7QUFFakUsT0FBTyxFQUFFLHNCQUFzQixFQUFFLE1BQU0sK0RBQStELENBQUM7QUFFdkcsT0FBTyxLQUFLLFNBQVMsTUFBTSxXQUFXLENBQUM7Ozs7Ozs7Ozs7O0lDVy9CLDhCQUE0RTtJQUN4RSw4QkFPa0M7SUFQSyw4T0FBdUIsaU9BQUEsNE5BQUE7SUFRMUQsOEJBQW9GO0lBQ2hGLG1DQUFxRTtJQUFBLFlBQWU7SUFBQSxpQkFBVztJQUMvRiw2QkFBcUQ7SUFBQSxZQUFlO0lBQUEsaUJBQUs7SUFDN0UsaUJBQU07SUFD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LENBQUMsQ0FBQyxDQUFDO0lBRXBELDJCQUEyQjtJQUMzQixRQUFRLENBQUMsSUFBWTtRQUNqQixJQUFJLENBQUMsTUFBTSxDQUFDLFFBQVEsQ0FBQyxDQUFDLElBQUksQ0FBQyxDQUFDLENBQUM7UUFDN0IsTUFBTSxLQUFLLEdBQUcsSUFBSSxDQUFDLEtBQUssQ0FBQyxTQUFTLENBQUMsSUFBSSxDQUFDLEVBQUUsQ0FBQyxJQUFJLENBQUMsS0FBSyxLQUFLLElBQUksQ0FBQyxDQUFDO1FBQ2hFLElBQUksS0FBSyxJQUFJLENBQUM7WUFBRSxJQUFJLENBQUMsVUFBVSxDQUFDLEtBQUssQ0FBQyxDQUFDO0lBQzNDLENBQUM7O2dGQXBGUSxnQkFBZ0I7bUVBQWhCLGdCQUFnQjtRQ2xCN0IsOEJBQzJHO1FBRXZHLDhCQUFnRjtRQUc1RSw4QkFBaUM7UUFDN0IsOEJBTzJDO1FBUEosb0dBQWMsVUFBTSxFQUFFLENBQUMsSUFBQyx1RkFBZSxVQUFNLEVBQUUsQ0FBQyxJQUF4Qiw2RUFDbEQsZUFBVyxFQUFFLENBQUMsSUFEb0M7UUFRM0QsOEJBQW9GO1FBQ2hGLG1DQUFxRTtRQUFBLG9CQUFJO1FBQUEsaUJBQVc7UUFDcEYsNkJBQXFEO1FBQUEsb0JBQUk7UUFBQSxpQkFBSztRQUNsRSxpQkFBTTtRQUNWLGlCQUFNO1FBQ1YsaUJBQU07UUFHTixpRUFjTTtRQUVWLGlCQUFNO1FBQ1YsaUJBQU07O1FBaENtQyxlQU10QjtRQU5zQiw4V0FNdEI7UUFTdUMsZUFBVTtRQUFWLG1DQUFVOzt1RkRMdkQsZ0JBQWdCO2NBSjVCLFNBQVM7ZUFBQztnQkFDUCxRQUFRLEVBQUUsYUFBYTtnQkFDdkIsV0FBVyxFQUFFLDJCQUEyQjthQUMzQzsrR0FFWSxXQUFXO2tCQUFuQixLQUFLO1lBQ0csYUFBYTtrQkFBckIsS0FBSyIsInNvdXJjZXNDb250ZW50IjpbImltcG9ydCB7IENvbXBvbmVudCwgSW5wdXQsIEFmdGVyVmlld0luaXQgfSBmcm9tICdAYW5ndWxhci9jb3JlJztcclxuaW1wb3J0IHsgU3RvcmUsIHNlbGVjdCB9IGZyb20gJ0BuZ3J4L3N0b3JlJztcclxuaW1wb3J0IHsgUm91dGVyLCBOYXZpZ2F0aW9uRW5kIH0gZnJvbSAnQGFuZ3VsYXIvcm91dGVyJztcclxuaW1wb3J0IHsgT2JzZXJ2YWJsZSB9IGZyb20gJ3J4anMnO1xyXG5pbXBvcnQgeyB0YXAgfSBmcm9tICdyeGpzL29wZXJhdG9ycyc7XHJcbmltcG9ydCAqIGFzIHNoYXJlZE1vZHVsZVJlZHVjZXJzIGZyb20gJy4uLy4uL3N0b3JlL3JlZHVjZXJzL2luZGV4JztcclxuaW1wb3J0IHsgU3RhdGUgfSBmcm9tICcuLi8uLi9zdG9yZS9yZWR1Y2Vycy9pbmRleCc7XHJcbmltcG9ydCB7IEdldEFsbE1lbnVJdGVtc1RyaWdnZXJlZCB9IGZyb20gJy4uLy4uL3N0b3JlL2FjdGlvbnMvbWVudWl0ZW1zLmFjdGlvbnMnO1xyXG5pbXBvcnQgeyBJTWVudUl0ZW0gfSBmcm9tICcuLi8uLi9tb2RlbHMvSU1lbnVJdGVtJztcclxuaW1wb3J0IHsgTWVudUNhdGVnb3JpZXMgfSBmcm9tICcuLi8uLi9jb25zdGFudHMvbWVudS1jYXRlZ29yaWVzJztcclxuaW1wb3J0IHsgUmVjZW50U2VhcmNoU2VydmljZSB9IGZyb20gJy4uLy4uL3NlcnZpY2VzL3JlY2VudFNlYXJjaC5zZXJ2aWNlJztcclxuaW1wb3J0IHsgTG9jYWxTdG9yYWdlUHJvcGVydGllcyB9IGZyb20gJy4uLy4uLy4uL2dsb2JhbGRlcGVuZGVuY2llcy9jb25zdGFudHMvbG9jYWxzdG9yYWdlLXByb3BlcnRpZXMnO1xyXG5pbXBvcnQgeyBTb2Z0TGFiZWxDb25maWd1cmF0aW9uTW9kZWwgfSBmcm9tICcuLi8uLi9tb2RlbHMvc29mdGxhYmVscy1tb2RlbCc7XHJcbmltcG9ydCAqIGFzIGJvb3RzdHJhcCBmcm9tICdib290c3RyYXAnO1xyXG5cclxuQENvbXBvbmVudCh7XHJcbiAgICBzZWxlY3RvcjogJ2FwcC1zaWRlYmFyJyxcclxuICAgIHRlbXBsYXRlVXJsOiAnLi9zaWRlLWJhci5jb21wb25lbnQuaHRtbCdcclxufSlcclxuZXhwb3J0IGNsYXNzIFNpZGVCYXJDb21wb25lbnQgaW1wbGVtZW50cyBBZnRlclZpZXdJbml0IHtcclxuICAgIEBJbnB1dCgpIGhhc0ljb25NZW51OiBib29sZWFuID0gZmFsc2U7XHJcbiAgICBASW5wdXQoKSBpY29uTWVudVRpdGxlOiBzdHJpbmcgPSAnTWVudSc7XHJcblxyXG4gICAgbWVudUl0ZW1zJDogT2JzZXJ2YWJsZTxJTWVudUl0ZW1bXT47XHJcbiAgICBtZW51SXRlbXM6IElNZW51SXRlbVtdID0gW107XHJcbiAgICBpdGVtczogSU1lbnVJdGVtW10gPSBbXTtcclxuICAgIHNvZnRMYWJlbHM6IFNvZnRMYWJlbENvbmZpZ3VyYXRpb25Nb2RlbFtdO1xyXG4gICAgc2VsZWN0ZWRSb3dJbmRleDogbnVtYmVyID0gbnVsbDtcclxuICAgIHNob3dCYWNrR3JvdW5kQ29sb3I6IG51bWJlciA9IG51bGw7XHJcblxyXG4gICAgY29uc3RydWN0b3IoXHJcbiAgICAgICAgcHJpdmF0ZSBzdG9yZTogU3RvcmU8U3RhdGU+LFxyXG4gICAgICAgIHByaXZhdGUgcm91dGVyOiBSb3V0ZXIsXHJcbiAgICAgICAgcHJpdmF0ZSByZWNlbnRTZWFyY2hTZXJ2aWNlOiBSZWNlbnRTZWFyY2hTZXJ2aWNlXHJcbiAgICApIHsgfVxyXG5cclxuICAgIG5nT25Jbml0KCkge1xyXG4gICAgICAgIHRoaXMubG9hZFNvZnRMYWJlbHMoKTtcclxuICAgICAgICB0aGlzLmxvYWRNZW51SXRlbXMoKTtcclxuXHJcbiAgICAgICAgLy8gTGlzdGVuIHRvIHJvdXRlIGNoYW5nZXMgdG8gdXBkYXRlIGFjdGl2ZSBtZW51XHJcbiAgICAgICAgdGhpcy5yb3V0ZXIuZXZlbnRzLnN1YnNjcmliZShldmVudCA9PiB7XHJcbiAgICAgICAgICAgIGlmIChldmVudCBpbnN0YW5jZW9mIE5hdmlnYXRpb25FbmQpIHtcclxuICAgICAgICAgICAgICAgIHRoaXMudXBkYXRlQWN0aXZlUm93KCk7XHJcbiAgICAgICAgICAgIH1cclxuICAgICAgICB9KTtcclxuICAgIH1cclxuXHJcbiAgICBuZ0FmdGVyVmlld0luaXQoKSB7XHJcbiAgICAgICAgY29uc3QgdG9vbHRpcFRyaWdnZXJMaXN0ID0gQXJyYXkuZnJvbShkb2N1bWVudC5xdWVyeVNlbGVjdG9yQWxsKCdbZGF0YS1icy10b2dnbGU9XCJ0b29sdGlwXCJdJykpO1xyXG4gICAgICAgIHRvb2x0aXBUcmlnZ2VyTGlzdC5mb3JFYWNoKGVsID0+IG5ldyBib290c3RyYXAuVG9vbHRpcChlbCkpO1xyXG4gICAgfVxyXG5cclxuICAgIGxvYWRTb2Z0TGFiZWxzKCkge1xyXG4gICAgICAgIGNvbnN0IHN0b3JlZCA9IGxvY2FsU3RvcmFnZS5nZXRJdGVtKCdTb2Z0TGFiZWxzJyk7XHJcbiAgICAgICAgaWYgKHN0b3JlZCkgdGhpcy5zb2Z0TGFiZWxzID0gSlNPTi5wYXJzZShzdG9yZWQpO1xyXG4gICAgfVxyXG5cclxuICAgIGxvYWRNZW51SXRlbXMoKSB7XHJcbiAgICAgICAgLy8gVHJ5IE5nUnggc3RvcmUgZmlyc3RcclxuICAgICAgICB0aGlzLm1lbnVJdGVtcyQgPSB0aGlzLnN0b3JlLnBpcGUoXHJcbiAgICAgICAgICAgIHNlbGVjdChzaGFyZWRNb2R1bGVSZWR1Y2Vycy5nZXRDdXJyZW50QWN0aXZlTWVudUNhdGVnb3J5TWVudUl0ZW1zKSxcclxuICAgICAgICAgICAgdGFwKG1lbnVMaXN0ID0+IGNvbnNvbGUubG9nKCdOZ1J4IG1lbnU6JywgbWVudUxpc3QpKVxyXG4gICAgICAgICk7XHJcblxyXG4gICAgICAgIHRoaXMuc3RvcmUuZGlzcGF0Y2gobmV3IEdldEFsbE1lbnVJdGVtc1RyaWdnZXJlZChNZW51Q2F0ZWdvcmllcy5NYWluKSk7XHJcblxyXG4gICAgICAgIC8vIEZhbGxiYWNrOiBsb2FkIGZyb20gbG9jYWxTdG9yYWdlIC8gc2VydmljZVxyXG4gICAgICAgIGNvbnN0IHN0b3JlZEl0ZW1zID0gSlNPTi5wYXJzZShsb2NhbFN0b3JhZ2UuZ2V0SXRlbShMb2NhbFN0b3JhZ2VQcm9wZXJ0aWVzLlNpZGVCYXJNZW51SXRlbXMpKTtcclxuICAgICAgICBpZiAoc3RvcmVkSXRlbXMgJiYgc3RvcmVkSXRlbXMubGVuZ3RoKSB7XHJcbiAgICAgICAgICAgIHRoaXMubWVudUl0ZW1zID0gc3RvcmVkSXRlbXM7XHJcbiAgICAgICAgICAgIHRoaXMuaXRlbXMgPSB0aGlzLm1lbnVJdGVtcy5maWx0ZXIoaSA9PiBpLnR5cGUgIT09ICdkcm9wRG93bicpO1xyXG4gICAgICAgIH0gZWxzZSB7XHJcbiAgICAgICAgICAgIHRoaXMucmVjZW50U2VhcmNoU2VydmljZS5zZWFyY2hNZW51RGF0YShmYWxzZSkuc3Vic2NyaWJlKChyZXM6IGFueSkgPT4ge1xyXG4gICAgICAgICAgICAgICAgaWYgKHJlcy5zdWNjZXNzICYmIHJlcy5kYXRhPy5tZW51SXRlbXMpIHtcclxuICAgICAgICAgICAgICAgICAgICB0aGlzLm1lbnVJdGVtcyA9IHJlcy5kYXRhLm1lbnVJdGVtcztcclxuICAgICAgICAgICAgICAgICAgICBsb2NhbFN0b3JhZ2Uuc2V0SXRlbShMb2NhbFN0b3JhZ2VQcm9wZXJ0aWVzLlNpZGVCYXJNZW51SXRlbXMsIEpTT04uc3RyaW5naWZ5KHRoaXMubWVudUl0ZW1zKSk7XHJcbiAgICAgICAgICAgICAgICAgICAgdGhpcy5pdGVtcyA9IHRoaXMubWVudUl0ZW1zLmZpbHRlcihpID0+IGkudHlwZSAhPT0gJ2Ryb3BEb3duJyk7XHJcbiAgICAgICAgICAgICAgICB9XHJcbiAgICAgICAgICAgIH0pO1xyXG4gICAgICAgIH1cclxuICAgIH1cclxuXHJcbiAgICB1cGRhdGVBY3RpdmVSb3coKSB7XHJcbiAgICAgICAgaWYgKHRoaXMuaXRlbXMgJiYgdGhpcy5pdGVtcy5sZW5ndGgpIHtcclxuICAgICAgICAgICAgY29uc3QgaW5kZXggPSB0aGlzLml0ZW1zLmZpbmRJbmRleChpID0+IHRoaXMucm91dGVyLnVybCA9PT0gJy8nICsgaS5zdGF0ZSk7XHJcbiAgICAgICAgICAgIHRoaXMuc2VsZWN0ZWRSb3dJbmRleCA9IGluZGV4ID49IDAgPyBpbmRleCA6IG51bGw7XHJcbiAgICAgICAgICAgIGlmICh0aGlzLnJvdXRlci51cmwuaW5jbHVkZXMoJy9kYXNoYm9hcmQtbWFuYWdlbWVudCcpKSB0aGlzLnNlbGVjdGVkUm93SW5kZXggPSA5OTtcclxuICAgICAgICB9XHJcbiAgICB9XHJcblxyXG4gICAgLy8gSG92ZXIgZXZlbnRzXHJcbiAgICBlbnRlcihpOiBudW1iZXIpIHsgdGhpcy5zaG93QmFja0dyb3VuZENvbG9yID0gaTsgfVxyXG4gICAgbGVhdmUoaTogbnVtYmVyKSB7IHRoaXMuc2hvd0JhY2tHcm91bmRDb2xvciA9IG51bGw7IH1cclxuXHJcbiAgICAvLyBDbGljayBldmVudCB0byBzZXQgYWN0aXZlIG1lbnVcclxuICAgIHNlbGVjdE1lbnUoaTogbnVtYmVyKSB7IHRoaXMuc2VsZWN0ZWRSb3dJbmRleCA9IGk7IH1cclxuXHJcbiAgICAvLyBOYXZpZ2F0ZSBhbmQga2VlcCBhY3RpdmVcclxuICAgIG9wZW5NZW51KGxpbms6IHN0cmluZykge1xyXG4gICAgICAgIHRoaXMucm91dGVyLm5hdmlnYXRlKFtsaW5rXSk7XHJcbiAgICAgICAgY29uc3QgaW5kZXggPSB0aGlzLml0ZW1zLmZpbmRJbmRleChpdGVtID0+IGl0ZW0uc3RhdGUgPT09IGxpbmspO1xyXG4gICAgICAgIGlmIChpbmRleCA+PSAwKSB0aGlzLnNlbGVjdE1lbnUoaW5kZXgpO1xyXG4gICAgfVxyXG59XHJcbiIsIjwhLS0gZnVsbC1wYWdlLW1lbnUuY29tcG9uZW50Lmh0bWwgLS0+XHJcbjxkaXYgY2xhc3M9XCJkLWZsZXggZmxleC1jb2x1bW4ganVzdGlmeS1jb250ZW50LWNlbnRlciBhbGlnbi1pdGVtcy1jZW50ZXJcIlxyXG4gICAgc3R5bGU9XCJ3aWR0aDoxMDB2dzsgaGVpZ2h0OmNhbGMoMTAwdmggLSA2MHB4KTsgYmFja2dyb3VuZC1jb2xvcjojRjlGQUZCOyBwYWRkaW5nOjMwcHg7IG92ZXJmbG93OmF1dG87XCI+XHJcblxyXG4gICAgPGRpdiBjbGFzcz1cInJvdyBqdXN0aWZ5LWNvbnRlbnQtY2VudGVyIGFsaWduLWl0ZW1zLWNlbnRlclwiIHN0eWxlPVwiaGVpZ2h0OmF1dG87XCI+XHJcblxyXG4gICAgICAgIDwhLS0gRml4ZWQgSG9tZSBDYXJkIC0tPlxyXG4gICAgICAgIDxkaXYgY2xhc3M9XCJjb2wtNiBjb2wtbWQtMyBtYi00XCI+XHJcbiAgICAgICAgICAgIDxkaXYgY2xhc3M9XCJjYXJkIGgtMTAwIGN1cnNvci1wb2ludGVyXCIgKG1vdXNlZW50ZXIpPVwiZW50ZXIoOTkpXCIgKG1vdXNlbGVhdmUpPVwibGVhdmUoOTkpXCJcclxuICAgICAgICAgICAgICAgIChjbGljayk9XCJzZWxlY3RNZW51KDk5KVwiIFtuZ1N0eWxlXT1cIntcclxuICAgICAgICAgICAgICAgICAgICAnYmFja2dyb3VuZC1jb2xvcic6IChzZWxlY3RlZFJvd0luZGV4ID09IDk5IHx8IHNob3dCYWNrR3JvdW5kQ29sb3IgPT0gOTkpID8gJyNEQkVBRkUnIDogJyNGRkZGRkYnLFxyXG4gICAgICAgICAgICAgICAgICAgICdib3JkZXInOiAoc2VsZWN0ZWRSb3dJbmRleCA9PSA5OSB8fCBzaG93QmFja0dyb3VuZENvbG9yID09IDk5KSA/ICcycHggc29saWQgIzA5NTU1YycgOiAnMXB4IHNvbGlkICNFNUU3RUInLFxyXG4gICAgICAgICAgICAgICAgICAgICdib3gtc2hhZG93JzogKHNlbGVjdGVkUm93SW5kZXggPT0gOTkgfHwgc2hvd0JhY2tHcm91bmRDb2xvciA9PSA5OSkgPyAnMCA0cHggMTVweCByZ2JhKDAsMCwwLDAuMTUpJyA6ICcwIDJweCA2cHggcmdiYSgwLDAsMCwwLjA4KScsXHJcbiAgICAgICAgICAgICAgICAgICAgJ2JvcmRlci1yYWRpdXMnOiAnMTJweCcsXHJcbiAgICAgICAgICAgICAgICAgICAgJ3RyYW5zaXRpb24nOiAnYWxsIDAuM3MgZWFzZSdcclxuICAgICAgICAgICAgICAgICB9XCIgcm91dGVyTGluaz1cIi9kYXNoYm9hcmQtbWFuYWdlbWVudFwiPlxyXG4gICAgICAgICAgICAgICAgPGRpdiBjbGFzcz1cImNhcmQtYm9keSBkLWZsZXggZmxleC1jb2x1bW4gYWxpZ24taXRlbXMtY2VudGVyIGp1c3RpZnktY29udGVudC1jZW50ZXJcIj5cclxuICAgICAgICAgICAgICAgICAgICA8bWF0LWljb24gc3R5bGU9XCJmb250LXNpemU6NDBweDsgY29sb3I6IzA5NTU1YzsgbWFyZ2luLWJvdHRvbToxMHB4O1wiPmhvbWU8L21hdC1pY29uPlxyXG4gICAgICAgICAgICAgICAgICAgIDxoNiBzdHlsZT1cImZvbnQtc2l6ZToxNHB4OyBtYXJnaW46MDsgY29sb3I6IzExMTgyNztcIj5Ib21lPC9oNj5cclxuICAgICAgICAgICAgICAgIDwvZGl2PlxyXG4gICAgICAgICAgICA8L2Rpdj5cclxuICAgICAgICA8L2Rpdj5cclxuXHJcbiAgICAgICAgPCEtLSBEeW5hbWljIENhcmRzIC0tPlxyXG4gICAgICAgIDxkaXYgY2xhc3M9XCJjb2wtNiBjb2wtbWQtMyBtYi00XCIgKm5nRm9yPVwibGV0IGl0ZW0gb2YgaXRlbXM7IGxldCBpID0gaW5kZXg7XCI+XHJcbiAgICAgICAgICAgIDxkaXYgY2xhc3M9XCJjYXJkIGgtMTAwIGN1cnNvci1wb2ludGVyXCIgKG1vdXNlZW50ZXIpPVwiZW50ZXIoaSlcIiAobW91c2VsZWF2ZSk9XCJsZWF2ZShpKVwiXHJcbiAgICAgICAgICAgICAgICAoY2xpY2spPVwic2VsZWN0TWVudShpKVwiIFtuZ1N0eWxlXT1cIntcclxuICAgICAgICAgICAgICAgICAgICAnYmFja2dyb3VuZC1jb2xvcic6IChzZWxlY3RlZFJvd0luZGV4ID09IGkgfHwgc2hvd0JhY2tHcm91bmRDb2xvciA9PSBpKSA/ICcjREJFQUZFJyA6ICcjRkZGRkZGJyxcclxuICAgICAgICAgICAgICAgICAgICAnYm9yZGVyJzogKHNlbGVjdGVkUm93SW5kZXggPT0gaSB8fCBzaG93QmFja0dyb3VuZENvbG9yID09IGkpID8gJzJweCBzb2xpZCAjMDk1NTVjJyA6ICcxcHggc29saWQgI0U1RTdFQicsXHJcbiAgICAgICAgICAgICAgICAgICAgJ2JveC1zaGFkb3cnOiAoc2VsZWN0ZWRSb3dJbmRleCA9PSBpIHx8IHNob3dCYWNrR3JvdW5kQ29sb3IgPT0gaSkgPyAnMCA0cHggMTVweCByZ2JhKDAsMCwwLDAuMTUpJyA6ICcwIDJweCA2cHggcmdiYSgwLDAsMCwwLjA4KScsXHJcbiAgICAgICAgICAgICAgICAgICAgJ2JvcmRlci1yYWRpdXMnOiAnMTJweCcsXHJcbiAgICAgICAgICAgICAgICAgICAgJ3RyYW5zaXRpb24nOiAnYWxsIDAuM3MgZWFzZSdcclxuICAgICAgICAgICAgICAgICB9XCIgW3JvdXRlckxpbmtdPVwiaXRlbS5zdGF0ZVwiPlxyXG4gICAgICAgICAgICAgICAgPGRpdiBjbGFzcz1cImNhcmQtYm9keSBkLWZsZXggZmxleC1jb2x1bW4gYWxpZ24taXRlbXMtY2VudGVyIGp1c3RpZnktY29udGVudC1jZW50ZXJcIj5cclxuICAgICAgICAgICAgICAgICAgICA8bWF0LWljb24gc3R5bGU9XCJmb250LXNpemU6NDBweDsgY29sb3I6IzA5NTU1YzsgbWFyZ2luLWJvdHRvbToxMHB4O1wiPnt7IGl0ZW0uaWNvbiB9fTwvbWF0LWljb24+XHJcbiAgICAgICAgICAgICAgICAgICAgPGg2IHN0eWxlPVwiZm9udC1zaXplOjE0cHg7IG1hcmdpbjowOyBjb2xvcjojMTExODI3O1wiPnt7IGl0ZW0ubWVudSB9fTwvaDY+XHJcbiAgICAgICAgICAgICAgICA8L2Rpdj5cclxuICAgICAgICAgICAgPC9kaXY+XHJcbiAgICAgICAgPC9kaXY+XHJcblxyXG4gICAgPC9kaXY+XHJcbjwvZGl2PiJdfQ==
|
|
249
|
+
}], function () { return [{ type: i1.Store }, { type: i2.Router }]; }, null); })();
|
|
250
|
+
//# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoic2lkZS1iYXIuY29tcG9uZW50LmpzIiwic291cmNlUm9vdCI6IiIsInNvdXJjZXMiOlsiLi4vLi4vLi4vLi4vLi4vLi4vLi4vc2hlbGwtbW9kdWxlLWNvbXBvbmVudHMvc2hlbGwtY29tcG9uZW50cy9zcmMvbGliL3NoZWxsLWNvbXBvbmVudHMvY29tcG9uZW50cy9zaWRlbmF2L3NpZGUtYmFyLmNvbXBvbmVudC50cyIsIi4uLy4uLy4uLy4uLy4uLy4uLy4uL3NoZWxsLW1vZHVsZS1jb21wb25lbnRzL3NoZWxsLWNvbXBvbmVudHMvc3JjL2xpYi9zaGVsbC1jb21wb25lbnRzL2NvbXBvbmVudHMvc2lkZW5hdi9zaWRlLWJhci5jb21wb25lbnQuaHRtbCJdLCJuYW1lcyI6W10sIm1hcHBpbmdzIjoiQUFBQSxPQUFPLEVBQUUsU0FBUyxFQUFFLE1BQU0sZUFBZSxDQUFDO0FBQzFDLE9BQU8sRUFBVSxhQUFhLEVBQUUsTUFBTSxpQkFBaUIsQ0FBQztBQUN4RCxPQUFPLEVBQVMsTUFBTSxFQUFFLE1BQU0sYUFBYSxDQUFDO0FBRTVDLE9BQU8sRUFBRSxHQUFHLEVBQUUsTUFBTSxnQkFBZ0IsQ0FBQztBQUdyQyxPQUFPLEtBQUssb0JBQW9CLE1BQU0sOEJBQThCLENBQUM7QUFDckUsT0FBTyxFQUFFLHdCQUF3QixFQUFFLE1BQU0sdUNBQXVDLENBQUM7QUFFakYsT0FBTyxFQUFFLGNBQWMsRUFBRSxNQUFNLGlDQUFpQyxDQUFDOzs7Ozs7Ozs7O0lDNEI3Qyw2QkFBOEU7SUFDMUUsbUNBSTRDO0lBQUEsWUFBZTtJQUFBLGlCQUFXO0lBQ3RFLDZCQUF3RTtJQUNwRSxZQUNKOzs7SUFBQSxpQkFBSztJQUNULDBCQUFlOzs7O0lBSmlDLGVBQWU7SUFBZixrQ0FBZTtJQUV2RCxlQUNKO0lBREksMElBQ0o7OztJQUlKLDZCQUE4QztJQUMxQyw2QkFBMkY7SUFDdkYsbUNBSTBDO0lBQUEsWUFBZTtJQUFBLGlCQUFXO0lBQ3BFLDZCQUF3RTtJQUNwRSxZQUNKOzs7SUFBQSxpQkFB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QUNqRixVQUFNLEVBQUUsQ0FBQyxJQUR3RSw2RUFDN0QsZUFBVyxFQUFFLEVBQUUsdUJBQXVCLENBQUMsSUFEc0I7UUFNL0YsOEJBQW9GO1FBQ2hGLG1DQUk4QztRQUFBLG9CQUFJO1FBQUEsaUJBQVc7UUFDN0QsNkJBQXdFO1FBQUEsb0JBQUk7UUFBQSxpQkFBSztRQUNyRixpQkFBTTtRQUNWLGlCQUFNO1FBQ1YsaUJBQU07UUFHTixpRUF5Rk07O1FBQ1YsaUJBQU07UUFDVixpQkFBTTs7UUE1R3FGLGVBSS9FO1FBSitFLHFIQUkvRTtRQWE4QyxlQUF5QjtRQUF6QiwrREFBeUI7O3VGRFR0RSxnQkFBZ0I7Y0FKNUIsU0FBUztlQUFDO2dCQUNQLFFBQVEsRUFBRSxhQUFhO2dCQUN2QixXQUFXLEVBQUUsMkJBQTJCO2FBQzNDIiwic291cmNlc0NvbnRlbnQiOlsiaW1wb3J0IHsgQ29tcG9uZW50IH0gZnJvbSBcIkBhbmd1bGFyL2NvcmVcIjtcclxuaW1wb3J0IHsgUm91dGVyLCBOYXZpZ2F0aW9uRW5kIH0gZnJvbSBcIkBhbmd1bGFyL3JvdXRlclwiO1xyXG5pbXBvcnQgeyBTdG9yZSwgc2VsZWN0IH0gZnJvbSBcIkBuZ3J4L3N0b3JlXCI7XHJcbmltcG9ydCB7IE9ic2VydmFibGUgfSBmcm9tIFwicnhqc1wiO1xyXG5pbXBvcnQgeyB0YXAgfSBmcm9tIFwicnhqcy9vcGVyYXRvcnNcIjtcclxuXHJcbmltcG9ydCB7IFN0YXRlIH0gZnJvbSBcIi4vLi4vLi4vc3RvcmUvcmVkdWNlcnMvaW5kZXhcIjtcclxuaW1wb3J0ICogYXMgc2hhcmVkTW9kdWxlUmVkdWNlcnMgZnJvbSBcIi4vLi4vLi4vc3RvcmUvcmVkdWNlcnMvaW5kZXhcIjtcclxuaW1wb3J0IHsgR2V0QWxsTWVudUl0ZW1zVHJpZ2dlcmVkIH0gZnJvbSBcIi4uLy4uL3N0b3JlL2FjdGlvbnMvbWVudWl0ZW1zLmFjdGlvbnNcIjtcclxuaW1wb3J0IHsgSU1lbnVJdGVtIH0gZnJvbSBcIi4uLy4uL21vZGVscy9JTWVudUl0ZW1cIjtcclxuaW1wb3J0IHsgTWVudUNhdGVnb3JpZXMgfSBmcm9tIFwiLi4vLi4vY29uc3RhbnRzL21lbnUtY2F0ZWdvcmllc1wiO1xyXG5pbXBvcnQgeyBTb2Z0TGFiZWxDb25maWd1cmF0aW9uTW9kZWwgfSBmcm9tIFwiLi4vLi4vbW9kZWxzL3NvZnRsYWJlbHMtbW9kZWxcIjtcclxuXHJcbkBDb21wb25lbnQoe1xyXG4gICAgc2VsZWN0b3I6IFwiYXBwLXNpZGViYXJcIixcclxuICAgIHRlbXBsYXRlVXJsOiBcIi4vc2lkZS1iYXIuY29tcG9uZW50Lmh0bWxcIlxyXG59KVxyXG5leHBvcnQgY2xhc3MgU2lkZUJhckNvbXBvbmVudCB7XHJcbiAgICBwdWJsaWMgbWVudUl0ZW1zJDogT2JzZXJ2YWJsZTxJTWVudUl0ZW1bXT47XHJcbiAgICBwdWJsaWMgc2VsZWN0ZWRSb3dJbmRleDogbnVtYmVyO1xyXG4gICAgcHVibGljIHNob3dCYWNrR3JvdW5kQ29sb3I6IG51bWJlciB8IG51bGwgPSBudWxsO1xyXG4gICAgcHVibGljIHNvZnRMYWJlbHM6IFNvZnRMYWJlbENvbmZpZ3VyYXRpb25Nb2RlbFtdO1xyXG5cclxuICAgIGNvbnN0cnVjdG9yKHByaXZhdGUgc3RvcmU6IFN0b3JlPFN0YXRlPiwgcHJpdmF0ZSByb3V0ZXI6IFJvdXRlcikgeyB9XHJcblxyXG4gICAgbmdPbkluaXQoKSB7XHJcbiAgICAgICAgLy8gbG9hZCBzb2Z0IGxhYmVsc1xyXG4gICAgICAgIHRoaXMuc29mdExhYmVscyA9IEpTT04ucGFyc2UobG9jYWxTdG9yYWdlLmdldEl0ZW0oXCJTb2Z0TGFiZWxzXCIpKTtcclxuXHJcbiAgICAgICAgLy8gZ2V0IG1lbnUgaXRlbXMgZnJvbSBzdG9yZVxyXG4gICAgICAgIHRoaXMubWVudUl0ZW1zJCA9IHRoaXMuc3RvcmUucGlwZShcclxuICAgICAgICAgICAgc2VsZWN0KHNoYXJlZE1vZHVsZVJlZHVjZXJzLmdldEN1cnJlbnRBY3RpdmVNZW51Q2F0ZWdvcnlNZW51SXRlbXMpLFxyXG4gICAgICAgICAgICB0YXAobWVudUxpc3QgPT4gdGhpcy5yb3V0ZXJBY3RpdmUobWVudUxpc3QpKVxyXG4gICAgICAgICk7XHJcblxyXG4gICAgICAgIC8vIHRyaWdnZXIgbWVudSBsb2FkXHJcbiAgICAgICAgdGhpcy5zdG9yZS5kaXNwYXRjaChuZXcgR2V0QWxsTWVudUl0ZW1zVHJpZ2dlcmVkKE1lbnVDYXRlZ29yaWVzLk1haW4pKTtcclxuXHJcbiAgICAgICAgLy8gbGlzdGVuIHRvIHJvdXRlIGNoYW5nZXNcclxuICAgICAgICB0aGlzLnJvdXRlci5ldmVudHMuc3Vic2NyaWJlKGV2ZW50ID0+IHtcclxuICAgICAgICAgICAgaWYgKGV2ZW50IGluc3RhbmNlb2YgTmF2aWdhdGlvbkVuZCkge1xyXG4gICAgICAgICAgICAgICAgdGhpcy5tZW51SXRlbXMkLnN1YnNjcmliZShsaXN0ID0+IHRoaXMucm91dGVyQWN0aXZlKGxpc3QpKTtcclxuICAgICAgICAgICAgfVxyXG4gICAgICAgIH0pO1xyXG4gICAgfVxyXG5cclxuICAgIHJvdXRlckFjdGl2ZShtZW51TGlzdDogSU1lbnVJdGVtW10pIHtcclxuICAgICAgICBpZiAobWVudUxpc3QgJiYgbWVudUxpc3QubGVuZ3RoID4gMCkge1xyXG4gICAgICAgICAgICBjb25zdCBpbmRleCA9IG1lbnVMaXN0LmZpbmRJbmRleChpID0+IHRoaXMucm91dGVyLnVybCA9PSBcIi9cIiArIGkuc3RhdGUpO1xyXG4gICAgICAgICAgICB0aGlzLnNlbGVjdGVkUm93SW5kZXggPSBpbmRleDtcclxuICAgICAgICAgICAgaWYgKHRoaXMucm91dGVyLnVybC5pbmNsdWRlcyhcIi9kYXNoYm9hcmQtbWFuYWdlbWVudFwiKSkge1xyXG4gICAgICAgICAgICAgICAgdGhpcy5zZWxlY3RlZFJvd0luZGV4ID0gOTk7XHJcbiAgICAgICAgICAgIH1cclxuICAgICAgICB9XHJcbiAgICB9XHJcblxyXG4gICAgZW50ZXIoaTogbnVtYmVyKSB7XHJcbiAgICAgICAgdGhpcy5zaG93QmFja0dyb3VuZENvbG9yID0gaTtcclxuICAgIH1cclxuXHJcbiAgICBsZWF2ZShpOiBudW1iZXIpIHtcclxuICAgICAgICB0aGlzLnNob3dCYWNrR3JvdW5kQ29sb3IgPSBudWxsO1xyXG4gICAgfVxyXG5cclxuICAgIHRvZ2dsZURyb3Bkb3duKGl0ZW06IGFueSkge1xyXG4gICAgICAgIGl0ZW0ub3BlbiA9ICFpdGVtLm9wZW47XHJcbiAgICB9XHJcblxyXG4gICAgLy8g4pyFIE5FVzogdW5pZmllZCBtZXRob2RcclxuICAgIHNlbGVjdE1lbnUoaW5kZXg6IG51bWJlciwgbGluaz86IHN0cmluZykge1xyXG4gICAgICAgIHRoaXMuc2VsZWN0ZWRSb3dJbmRleCA9IGluZGV4O1xyXG4gICAgICAgIGlmIChsaW5rKSB7XHJcbiAgICAgICAgICAgIHRoaXMucm91dGVyLm5hdmlnYXRlKFtsaW5rXSk7XHJcbiAgICAgICAgfVxyXG4gICAgfVxyXG59XHJcbiIsIjxkaXYgY2xhc3M9XCJkLWZsZXggZmxleC1jb2x1bW4ganVzdGlmeS1jb250ZW50LWNlbnRlciBhbGlnbi1pdGVtcy1jZW50ZXJcIlxyXG4gICAgc3R5bGU9XCJ3aWR0aDoxMDB2dzsgaGVpZ2h0OmNhbGMoMTAwdmggLSA2MHB4KTsgYmFja2dyb3VuZC1jb2xvcjojRjlGQUZCOyBwYWRkaW5nOjMwcHg7IG92ZXJmbG93OmF1dG87XCI+XHJcblxyXG4gICAgPGRpdiBjbGFzcz1cInJvdyBqdXN0aWZ5LWNvbnRlbnQtY2VudGVyIGFsaWduLWl0ZW1zLWNlbnRlclwiIHN0eWxlPVwiaGVpZ2h0OmF1dG87XCI+XHJcblxyXG4gICAgICAgIDwhLS0gRml4ZWQgSG9tZSBDYXJkIC0tPlxyXG4gICAgICAgIDxkaXYgY2xhc3M9XCJjb2wtNiBjb2wtbWQtMyBtYi00XCI+XHJcbiAgICAgICAgICAgIDxkaXYgY2xhc3M9XCJjYXJkIGN1cnNvci1wb2ludGVyXCIgc3R5bGU9XCJoZWlnaHQ6MTUwcHg7IGJvcmRlci1yYWRpdXM6MTJweDsgdHJhbnNpdGlvbjphbGwgMC4zcyBlYXNlOyBiYWNrZ3JvdW5kOiNmZmY7IFxyXG4gICAgICAgICAgICAgICAgIGJveC1zaGFkb3c6MCAycHggNnB4IHJnYmEoMCwwLDAsMC4wOCk7IGJvcmRlcjoycHggc29saWQgdHJhbnNwYXJlbnQ7XCIgKG1vdXNlZW50ZXIpPVwiZW50ZXIoOTkpXCJcclxuICAgICAgICAgICAgICAgIChtb3VzZWxlYXZlKT1cImxlYXZlKDk5KVwiIChjbGljayk9XCJzZWxlY3RNZW51KDk5LCAnL2Rhc2hib2FyZC1tYW5hZ2VtZW50JylcIiBbbmdTdHlsZV09XCIoc2VsZWN0ZWRSb3dJbmRleCA9PSA5OSB8fCBzaG93QmFja0dyb3VuZENvbG9yID09IDk5KSAmJiB7XHJcbiAgICAgICAgICAgICAgJ2JhY2tncm91bmQtY29sb3InOicjREJFQUZFJyxcclxuICAgICAgICAgICAgICAnYm9yZGVyLWltYWdlJzonbGluZWFyLWdyYWRpZW50KDEzNWRlZywjNWRlMGU2LCMwMDRhYWQpIDEnLFxyXG4gICAgICAgICAgICAgICdib3gtc2hhZG93JzonMCA0cHggMTVweCByZ2JhKDAsMCwwLDAuMTUpJ1xyXG4gICAgICAgICAgfVwiPlxyXG4gICAgICAgICAgICAgICAgPGRpdiBjbGFzcz1cImNhcmQtYm9keSBkLWZsZXggZmxleC1jb2x1bW4gYWxpZ24taXRlbXMtY2VudGVyIGp1c3RpZnktY29udGVudC1jZW50ZXJcIj5cclxuICAgICAgICAgICAgICAgICAgICA8bWF0LWljb24gc3R5bGU9XCJmb250LXNpemU6NDBweDsgbWFyZ2luLWJvdHRvbToxMHB4OyB3aWR0aDo0OHB4OyBoZWlnaHQ6NDhweDtcclxuICAgICAgICAgICAgICBkaXNwbGF5OmZsZXg7IGFsaWduLWl0ZW1zOmNlbnRlcjsganVzdGlmeS1jb250ZW50OmNlbnRlcjtcclxuICAgICAgICAgICAgICBiYWNrZ3JvdW5kOmxpbmVhci1ncmFkaWVudCgxMzVkZWcsIzVkZTBlNiwjMDA0YWFkKTtcclxuICAgICAgICAgICAgICAtd2Via2l0LWJhY2tncm91bmQtY2xpcDp0ZXh0OyAtd2Via2l0LXRleHQtZmlsbC1jb2xvcjp0cmFuc3BhcmVudDtcclxuICAgICAgICAgICAgICBiYWNrZ3JvdW5kLWNsaXA6dGV4dDsgdGV4dC1maWxsLWNvbG9yOnRyYW5zcGFyZW50O1wiPmhvbWU8L21hdC1pY29uPlxyXG4gICAgICAgICAgICAgICAgICAgIDxoNiBzdHlsZT1cImZvbnQtc2l6ZToxNHB4OyBtYXJnaW46MDsgY29sb3I6IzExMTgyNzsgdGV4dC1hbGlnbjpjZW50ZXI7XCI+SG9tZTwvaDY+XHJcbiAgICAgICAgICAgICAgICA8L2Rpdj5cclxuICAgICAgICAgICAgPC9kaXY+XHJcbiAgICAgICAgPC9kaXY+XHJcblxyXG4gICAgICAgIDwhLS0gRHluYW1pYyBNZW51IENhcmRzIC0tPlxyXG4gICAgICAgIDxkaXYgY2xhc3M9XCJjb2wtNiBjb2wtbWQtMyBtYi00XCIgKm5nRm9yPVwibGV0IGl0ZW0gb2YgKG1lbnVJdGVtcyQgfCBhc3luYyk7IGxldCBpID0gaW5kZXg7XCI+XHJcbiAgICAgICAgICAgIDxkaXYgY2xhc3M9XCJjYXJkIGN1cnNvci1wb2ludGVyXCIgc3R5bGU9XCJoZWlnaHQ6MTUwcHg7IGJvcmRlci1yYWRpdXM6MTJweDsgdHJhbnNpdGlvbjphbGwgMC4zcyBlYXNlOyBiYWNrZ3JvdW5kOiNmZmY7XHJcbiAgICAgICAgICAgICAgICAgYm94LXNoYWRvdzowIDJweCA2cHggcmdiYSgwLDAsMCwwLjA4KTsgYm9yZGVyOjJweCBzb2xpZCB0cmFuc3BhcmVudDtcIiAobW91c2VlbnRlcik9XCJlbnRlcihpKVwiXHJcbiAgICAgICAgICAgICAgICAobW91c2VsZWF2ZSk9XCJsZWF2ZShpKVwiIChjbGljayk9XCJzZWxlY3RNZW51KGksIGl0ZW0uc3RhdGUpXCIgW25nU3R5bGVdPVwiKHNlbGVjdGVkUm93SW5kZXggPT0gaSB8fCBzaG93QmFja0dyb3VuZENvbG9yID09IGkpICYmIHtcclxuICAgICAgICAgICAgICAnYmFja2dyb3VuZC1jb2xvcic6JyNEQkVBRkUnLFxyXG4gICAgICAgICAgICAgICdib3JkZXItaW1hZ2UnOidsaW5lYXItZ3JhZGllbnQoMTM1ZGVnLCM1ZGUwZTYsIzAwNGFhZCkgMScsXHJcbiAgICAgICAgICAgICAgJ2JveC1zaGFkb3cnOicwIDRweCAxNXB4IHJnYmEoMCwwLDAsMC4xNSknXHJcbiAgICAgICAgICB9XCI+XHJcblxyXG4gICAgICAgICAgICAgICAgPGRpdiBjbGFzcz1cImNhcmQtYm9keSBkLWZsZXggZmxleC1jb2x1bW4gYWxpZ24taXRlbXMtY2VudGVyIGp1c3RpZnktY29udGVudC1jZW50ZXJcIj5cclxuXHJcbiAgICAgICAgICAgICAgICAgICAgPCEtLSBOb3JtYWwgbGluayAvIGFwcGxpY2F0aW9uIGxpbmsgLS0+XHJcbiAgICAgICAgICAgICAgICAgICAgPG5nLWNvbnRhaW5lciAqbmdJZj1cIml0ZW0udHlwZSA9PT0gJ2xpbmsnIHx8IGl0ZW0udHlwZSA9PT0gJ2FwcGxpY2F0aW9ubGluaydcIj5cclxuICAgICAgICAgICAgICAgICAgICAgICAgPG1hdC1pY29uIHN0eWxlPVwiZm9udC1zaXplOjQwcHg7IG1hcmdpbi1ib3R0b206MTBweDsgd2lkdGg6NDhweDsgaGVpZ2h0OjQ4cHg7XHJcbiAgICAgICAgICAgICAgICBkaXNwbGF5OmZsZXg7IGFsaWduLWl0ZW1zOmNlbnRlcjsganVzdGlmeS1jb250ZW50OmNlbnRlcjtcclxuICAgICAgICAgICAgICAgIGJhY2tncm91bmQ6bGluZWFyLWdyYWRpZW50KDEzNWRlZywjNWRlMGU2LCMwMDRhYWQpO1xyXG4gICAgICAgICAgICAgICAgLXdlYmtpdC1iYWNrZ3JvdW5kLWNsaXA6dGV4dDsgLXdlYmtpdC10ZXh0LWZpbGwtY29sb3I6dHJhbnNwYXJlbnQ7XHJcbiAgICAgICAgICAgICAgICBiYWNrZ3JvdW5kLWNsaXA6dGV4dDsgdGV4dC1maWxsLWNvbG9yOnRyYW5zcGFyZW50O1wiPnt7IGl0ZW0uaWNvbiB9fTwvbWF0LWljb24+XHJcbiAgICAgICAgICAgICAgICAgICAgICAgIDxoNiBzdHlsZT1cImZvbnQtc2l6ZToxNHB4OyBtYXJnaW46MDsgY29sb3I6IzExMTgyNzsgdGV4dC1hbGlnbjpjZW50ZXI7XCI+XHJcbiAgICAgICAgICAgICAgICAgICAgICAgICAgICB7eyBpdGVtLm1lbnUgPyAoaXRlbS5tZW51IHwgc29mdExhYmVsc1BpcGUgOiBzb2Z0TGFiZWxzKSA6IChpdGVtLm5hbWUgfCB0cmFuc2xhdGUpIH19XHJcbiAgICAgICAgICAgICAgICAgICAgICAgIDwvaDY+XHJcbiAgICAgICAgICAgICAgICAgICAgPC9uZy1jb250YWluZXI+XHJcblxyXG4gICAgICAgICAgICAgICAgICAgIDwhLS0gRXh0ZXJuYWwgbGluayAtLT5cclxuICAgICAgICAgICAgICAgICAgICA8bmctY29udGFpbmVyICpuZ0lmPVwiaXRlbS50eXBlID09PSAnZXh0TGluaydcIj5cclxuICAgICAgICAgICAgICAgICAgICAgICAgPGEgW2hyZWZdPVwiaXRlbS5zdGF0ZVwiIHRhcmdldD1cIl9ibGFua1wiIGNsYXNzPVwidy0xMDAgZC1mbGV4IGZsZXgtY29sdW1uIGFsaWduLWl0ZW1zLWNlbnRlclwiPlxyXG4gICAgICAgICAgICAgICAgICAgICAgICAgICAgPG1hdC1pY29uIHN0eWxlPVwiZm9udC1zaXplOjQwcHg7IG1hcmdpbi1ib3R0b206MTBweDsgd2lkdGg6NDhweDsgaGVpZ2h0OjQ4cHg7XHJcbiAgICAgICAgICAgICAgICAgIGRpc3BsYXk6ZmxleDsgYWxpZ24taXRlbXM6Y2VudGVyOyBqdXN0aWZ5LWNvbnRlbnQ6Y2VudGVyO1xyXG4gICAgICAgICAgICAgICAgICBiYWNrZ3JvdW5kOmxpbmVhci1ncmFkaWVudCgxMzVkZWcsIzVkZTBlNiwjMDA0YWFkKTtcclxuICAgICAgICAgICAgICAgICAgLXdlYmtpdC1iYWNrZ3JvdW5kLWNsaXA6dGV4dDsgLXdlYmtpdC10ZXh0LWZpbGwtY29sb3I6dHJhbnNwYXJlbnQ7XHJcbiAgICAgICAgICAgICAgICAgIGJhY2tncm91bmQtY2xpcDp0ZXh0OyB0ZXh0LWZpbGwtY29sb3I6dHJhbnNwYXJlbnQ7XCI+e3sgaXRlbS5pY29uIH19PC9tYXQtaWNvbj5cclxuICAgICAgICAgICAgICAgICAgICAgICAgICAgIDxoNiBzdHlsZT1cImZvbnQtc2l6ZToxNHB4OyBtYXJnaW46MDsgY29sb3I6IzExMTgyNzsgdGV4dC1hbGlnbjpjZW50ZXI7XCI+XHJcbiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAge3sgaXRlbS5tZW51ID8gKGl0ZW0ubWVudSB8IHNvZnRMYWJlbHNQaXBlIDogc29mdExhYmVscykgOiAoaXRlbS5uYW1lIHwgdHJhbnNsYXRlKSB9fVxyXG4gICAgICAgICAgICAgICAgICAgICAgICAgICAgPC9oNj5cclxuICAgICAgICAgICAgICAgICAgICAgICAgPC9hPlxyXG4gICAgICAgICAgICAgICAgICAgIDwvbmctY29udGFpbmVyPlxyXG5cclxuICAgICAgICAgICAgICAgICAgICA8IS0tIERyb3Bkb3duIChwYXJlbnQpIC0tPlxyXG4gICAgICAgICAgICAgICAgICAgIDxkaXYgKm5nSWY9XCJpdGVtLnR5cGUgPT09ICdkcm9wRG93bidcIlxyXG4gICAgICAgICAgICAgICAgICAgICAgICBjbGFzcz1cInctMTAwIGQtZmxleCBmbGV4LWNvbHVtbiBhbGlnbi1pdGVtcy1jZW50ZXIgY3Vyc29yLXBvaW50ZXJcIlxyXG4gICAgICAgICAgICAgICAgICAgICAgICAoY2xpY2spPVwidG9nZ2xlRHJvcGRvd24oaXRlbSlcIj5cclxuICAgICAgICAgICAgICAgICAgICAgICAgPG1hdC1pY29uIHN0eWxlPVwiZm9udC1zaXplOjQwcHg7IG1hcmdpbi1ib3R0b206MTBweDsgd2lkdGg6NDhweDsgaGVpZ2h0OjQ4cHg7XHJcbiAgICAgICAgICAgICAgICBkaXNwbGF5OmZsZXg7IGFsaWduLWl0ZW1zOmNlbnRlcjsganVzdGlmeS1jb250ZW50OmNlbnRlcjtcclxuICAgICAgICAgICAgICAgIGJhY2tncm91bmQ6bGluZWFyLWdyYWRpZW50KDEzNWRlZywjNWRlMGU2LCMwMDRhYWQpO1xyXG4gICAgICAgICAgICAgICAgLXdlYmtpdC1iYWNrZ3JvdW5kLWNsaXA6dGV4dDsgLXdlYmtpdC10ZXh0LWZpbGwtY29sb3I6dHJhbnNwYXJlbnQ7XHJcbiAgICAgICAgICAgICAgICBiYWNrZ3JvdW5kLWNsaXA6dGV4dDsgdGV4dC1maWxsLWNvbG9yOnRyYW5zcGFyZW50O1wiPnt7IGl0ZW0uaWNvbiB9fTwvbWF0LWljb24+XHJcbiAgICAgICAgICAgICAgICAgICAgICAgIDxoNiBzdHlsZT1cImZvbnQtc2l6ZToxNHB4OyBtYXJnaW46MDsgY29sb3I6IzExMTgyNzsgdGV4dC1hbGlnbjpjZW50ZXI7XCI+XHJcbiAgICAgICAgICAgICAgICAgICAgICAgICAgICB7eyBpdGVtLm1lbnUgPyAoaXRlbS5tZW51IHwgc29mdExhYmVsc1BpcGUgOiBzb2Z0TGFiZWxzKSA6IChpdGVtLm5hbWUgfCB0cmFuc2xhdGUpIH19XHJcbiAgICAgICAgICAgICAgICAgICAgICAgIDwvaDY+XHJcbiAgICAgICAgICAgICAgICAgICAgICAgIDxtYXQtaWNvbiBzdHlsZT1cImZvbnQtc2l6ZToyNHB4OyBtYXJnaW4tdG9wOjVweDsgd2lkdGg6MzJweDsgaGVpZ2h0OjMycHg7XHJcbiAgICAgICAgICAgICAgICBiYWNrZ3JvdW5kOmxpbmVhci1ncmFkaWVudCgxMzVkZWcsIzVkZTBlNiwjMDA0YWFkKTtcclxuICAgICAgICAgICAgICAgIC13ZWJraXQtYmFja2dyb3VuZC1jbGlwOnRleHQ7IC13ZWJraXQtdGV4dC1maWxsLWNvbG9yOnRyYW5zcGFyZW50O1xyXG4gICAgICAgICAgICAgICAgYmFja2dyb3VuZC1jbGlwOnRleHQ7IHRleHQtZmlsbC1jb2xvcjp0cmFuc3BhcmVudDtcIj5cclxuICAgICAgICAgICAgICAgICAgICAgICAgICAgIHt7IGl0ZW0ub3BlbiA/ICdleHBhbmRfbGVzcycgOiAnZXhwYW5kX21vcmUnIH19XHJcbiAgICAgICAgICAgICAgICAgICAgICAgIDwvbWF0LWljb24+XHJcbiAgICAgICAgICAgICAgICAgICAgPC9kaXY+XHJcblxyXG4gICAgICAgICAgICAgICAgICAgIDwhLS0gQmFkZ2VzIC0tPlxyXG4gICAgICAgICAgICAgICAgICAgIDxkaXYgKm5nSWY9XCJpdGVtLmJhZGdlcz8ubGVuZ3RoXCIgY2xhc3M9XCJtdC0yXCI+XHJcbiAgICAgICAgICAgICAgICAgICAgICAgIDxzcGFuICpuZ0Zvcj1cImxldCBiYWRnZSBvZiBpdGVtLmJhZGdlc1wiIGNsYXNzPVwiYmFkZ2Ugcm91bmRlZC1waWxsXCJcclxuICAgICAgICAgICAgICAgICAgICAgICAgICAgIFtuZ1N0eWxlXT1cInsgYmFja2dyb3VuZDogYmFkZ2UuY29sb3IgfVwiPlxyXG4gICAgICAgICAgICAgICAgICAgICAgICAgICAge3sgYmFkZ2UudmFsdWUgfX1cclxuICAgICAgICAgICAgICAgICAgICAgICAgPC9zcGFuPlxyXG4gICAgICAgICAgICAgICAgICAgIDwvZGl2PlxyXG5cclxuICAgICAgICAgICAgICAgIDwvZGl2PlxyXG4gICAgICAgICAgICA8L2Rpdj5cclxuXHJcbiAgICAgICAgICAgIDwhLS0gRHJvcGRvd24gc3VibWVudSBhcyB1bmlmb3JtIGNhcmRzIC0tPlxyXG4gICAgICAgICAgICA8ZGl2IGNsYXNzPVwicm93IHctMTAwIG10LTJcIiAqbmdJZj1cIml0ZW0ub3BlbiAmJiBpdGVtLnR5cGUgPT09ICdkcm9wRG93bidcIj5cclxuICAgICAgICAgICAgICAgIDxkaXYgY2xhc3M9XCJjb2wtNiBjb2wtbWQtMyBtYi00XCIgKm5nRm9yPVwibGV0IGl0ZW1MdkwyIG9mIGl0ZW0uc3ViXCI+XHJcbiAgICAgICAgICAgICAgICAgICAgPGRpdiBjbGFzcz1cImNhcmQgY3Vyc29yLXBvaW50ZXJcIiBzdHlsZT1cImhlaWdodDoxNTBweDsgYm9yZGVyLXJhZGl1czoxMnB4OyB0cmFuc2l0aW9uOmFsbCAwLjNzIGVhc2U7IGJhY2tncm91bmQ6I2ZmZjtcclxuICAgICAgICAgICAgICAgICAgICAgYm94LXNoYWRvdzowIDJweCA2cHggcmdiYSgwLDAsMCwwLjA4KTsgYm9yZGVyOjJweCBzb2xpZCB0cmFuc3BhcmVudDtcIlxyXG4gICAgICAgICAgICAgICAgICAgICAgICAoY2xpY2spPVwic2VsZWN0TWVudShpLCAnLycgKyBpdGVtLnN0YXRlICsgJy8nICsgaXRlbUx2TDIuc3RhdGUpXCI+XHJcbiAgICAgICAgICAgICAgICAgICAgICAgIDxkaXYgY2xhc3M9XCJjYXJkLWJvZHkgZC1mbGV4IGZsZXgtY29sdW1uIGFsaWduLWl0ZW1zLWNlbnRlciBqdXN0aWZ5LWNvbnRlbnQtY2VudGVyXCI+XHJcbiAgICAgICAgICAgICAgICAgICAgICAgICAgICA8bWF0LWljb24gc3R5bGU9XCJmb250LXNpemU6NDBweDsgbWFyZ2luLWJvdHRvbToxMHB4OyB3aWR0aDo0OHB4OyBoZWlnaHQ6NDhweDtcclxuICAgICAgICAgICAgICAgICAgZGlzcGxheTpmbGV4OyBhbGlnbi1pdGVtczpjZW50ZXI7IGp1c3RpZnktY29udGVudDpjZW50ZXI7XHJcbiAgICAgICAgICAgICAgICAgIGJhY2tncm91bmQ6bGluZWFyLWdyYWRpZW50KDEzNWRlZywjNWRlMGU2LCMwMDRhYWQpO1xyXG4gICAgICAgICAgICAgICAgICAtd2Via2l0LWJhY2tncm91bmQtY2xpcDp0ZXh0OyAtd2Via2l0LXRleHQtZmlsbC1jb2xvcjp0cmFuc3BhcmVudDtcclxuICAgICAgICAgICAgICAgICAgYmFja2dyb3VuZC1jbGlwOnRleHQ7IHRleHQtZmlsbC1jb2xvcjp0cmFuc3BhcmVudDtcIj57eyBpdGVtTHZMMi5pY29uIH19PC9tYXQtaWNvbj5cclxuICAgICAgICAgICAgICAgICAgICAgICAgICAgIDxoNiBzdHlsZT1cImZvbnQtc2l6ZToxNHB4OyBtYXJnaW46MDsgY29sb3I6IzExMTgyNzsgdGV4dC1hbGlnbjpjZW50ZXI7XCI+XHJcbiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAge3sgaXRlbUx2TDIubWVudSA/IChpdGVtTHZMMi5tZW51IHwgc29mdExhYmVsc1BpcGUgOiBzb2Z0TGFiZWxzKSA6IChpdGVtTHZMMi5uYW1lIHxcclxuICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICB0cmFuc2xhdGUpIH19XHJcbiAgICAgICAgICAgICAgICAgICAgICAgICAgICA8L2g2PlxyXG4gICAgICAgICAgICAgICAgICAgICAgICA8L2Rpdj5cclxuICAgICAgICAgICAgICAgICAgICA8L2Rpdj5cclxuICAgICAgICAgICAgICAgIDwvZGl2PlxyXG4gICAgICAgICAgICA8L2Rpdj5cclxuXHJcbiAgICAgICAgPC9kaXY+XHJcbiAgICA8L2Rpdj5cclxuPC9kaXY+Il19
|