info-library 2.10.87 → 2.14.0

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.
Files changed (176) hide show
  1. package/controls/alert/alert.component.d.ts +3 -0
  2. package/controls/autocomplete/autocomplete.component.d.ts +5 -2
  3. package/controls/big-checkbox/big-checkbox.component.d.ts +3 -0
  4. package/controls/card/card.component.d.ts +3 -0
  5. package/controls/card-menu/card-menu.component.d.ts +3 -0
  6. package/controls/checkbox/checkbox.component.d.ts +3 -0
  7. package/controls/chips/chips.component.d.ts +3 -0
  8. package/controls/date/date.component.d.ts +3 -0
  9. package/controls/date-month/date-month.component.d.ts +3 -0
  10. package/controls/editor/editor.component.d.ts +3 -0
  11. package/controls/grid/grid.component.d.ts +5 -0
  12. package/controls/input/input.component.d.ts +3 -0
  13. package/controls/input-list/input-list.component.d.ts +3 -0
  14. package/controls/list-checkbox/list-checkbox.component.d.ts +3 -0
  15. package/controls/message/message.component.d.ts +3 -0
  16. package/controls/multi-select/multi-select.component.d.ts +3 -0
  17. package/controls/paginator/paginator.component.d.ts +3 -0
  18. package/controls/select/select.component.d.ts +3 -0
  19. package/controls/timeline/timeline.component.d.ts +3 -0
  20. package/directives/mask.directive.d.ts +3 -0
  21. package/directives/unmask.directive.d.ts +3 -0
  22. package/esm2020/controls/alert/alert.component.mjs +74 -0
  23. package/esm2020/controls/autocomplete/autocomplete.component.mjs +258 -0
  24. package/esm2020/controls/big-checkbox/big-checkbox.component.mjs +298 -0
  25. package/esm2020/controls/card/card.component.mjs +77 -0
  26. package/esm2020/controls/card-menu/card-menu.component.mjs +145 -0
  27. package/esm2020/controls/checkbox/checkbox.component.mjs +93 -0
  28. package/esm2020/controls/chips/chips.component.mjs +113 -0
  29. package/esm2020/controls/date/date.component.mjs +141 -0
  30. package/esm2020/controls/date-month/date-month.component.mjs +148 -0
  31. package/esm2020/controls/editor/editor.component.mjs +135 -0
  32. package/esm2020/controls/grid/grid.component.mjs +1800 -0
  33. package/esm2020/controls/input/input.component.mjs +314 -0
  34. package/esm2020/controls/input-list/input-list.component.mjs +258 -0
  35. package/esm2020/controls/list-checkbox/list-checkbox.component.mjs +238 -0
  36. package/esm2020/controls/message/message.component.mjs +50 -0
  37. package/esm2020/controls/multi-select/multi-select.component.mjs +161 -0
  38. package/esm2020/controls/paginator/paginator.component.mjs +178 -0
  39. package/esm2020/controls/select/select.component.mjs +180 -0
  40. package/esm2020/controls/timeline/timeline.component.mjs +117 -0
  41. package/esm2020/directives/mask.directive.mjs +125 -0
  42. package/esm2020/directives/unmask.directive.mjs +28 -0
  43. package/esm2020/enum/dialog-buttons.enum.mjs +9 -0
  44. package/esm2020/enum/index.mjs +4 -0
  45. package/esm2020/enum/modal-action.enum.mjs +12 -0
  46. package/esm2020/enum/page-action.enum.mjs +10 -0
  47. package/esm2020/global-config.mjs +4 -0
  48. package/esm2020/info-library.mjs +5 -0
  49. package/esm2020/info-library.module.mjs +278 -0
  50. package/esm2020/layouts/dialog/dialog.component.mjs +188 -0
  51. package/esm2020/layouts/loading/loading.component.mjs +42 -0
  52. package/esm2020/layouts/main/main.component.mjs +276 -0
  53. package/esm2020/layouts/modal/modal.component.mjs +258 -0
  54. package/esm2020/layouts/pagebar/pagebar.component.mjs +404 -0
  55. package/esm2020/layouts/sidebar/sidebar.component.mjs +395 -0
  56. package/esm2020/layouts/topbar/topbar.component.mjs +863 -0
  57. package/esm2020/layouts/topmenu/topmenu.component.mjs +165 -0
  58. package/esm2020/model/app-config.model.mjs +14 -0
  59. package/esm2020/model/data-access.model.mjs +35 -0
  60. package/esm2020/model/dialog-result.model.mjs +8 -0
  61. package/esm2020/model/dialog.model.mjs +16 -0
  62. package/esm2020/model/form-prop.model.mjs +35 -0
  63. package/esm2020/model/grid-button.model.mjs +21 -0
  64. package/esm2020/model/index.mjs +15 -0
  65. package/esm2020/model/last-search.model.mjs +9 -0
  66. package/esm2020/model/login.model.mjs +9 -0
  67. package/esm2020/model/method-grid-button.model.mjs +9 -0
  68. package/esm2020/model/notification.model.mjs +9 -0
  69. package/esm2020/model/pagebar-buttons.model.mjs +15 -0
  70. package/esm2020/model/permission.model.mjs +3 -0
  71. package/esm2020/model/platform.model.mjs +21 -0
  72. package/esm2020/model/session.model.mjs +8 -0
  73. package/esm2020/pipe/index.mjs +3 -0
  74. package/esm2020/pipe/mask.pipe.mjs +34 -0
  75. package/esm2020/pipe/translate.pipe.mjs +26 -0
  76. package/esm2020/public_api.mjs +36 -0
  77. package/esm2020/service/authentication.service.mjs +358 -0
  78. package/esm2020/service/configuration.service.mjs +59 -0
  79. package/esm2020/service/data.service.mjs +112 -0
  80. package/esm2020/service/index.mjs +6 -0
  81. package/esm2020/service/theme.service.mjs +79 -0
  82. package/esm2020/service/translate.service.mjs +53 -0
  83. package/esm2020/utils/utilities.mjs +142 -0
  84. package/fesm2015/info-library.mjs +9326 -0
  85. package/fesm2015/info-library.mjs.map +1 -0
  86. package/fesm2020/info-library.mjs +8474 -0
  87. package/fesm2020/info-library.mjs.map +1 -0
  88. package/index.d.ts +5 -0
  89. package/info-library.module.d.ts +58 -0
  90. package/layouts/dialog/dialog.component.d.ts +5 -0
  91. package/layouts/loading/loading.component.d.ts +3 -0
  92. package/layouts/main/main.component.d.ts +6 -0
  93. package/layouts/modal/modal.component.d.ts +3 -0
  94. package/layouts/pagebar/pagebar.component.d.ts +5 -0
  95. package/layouts/sidebar/sidebar.component.d.ts +4 -1
  96. package/layouts/topbar/topbar.component.d.ts +4 -1
  97. package/layouts/topmenu/topmenu.component.d.ts +3 -0
  98. package/package.json +28 -13
  99. package/pipe/mask.pipe.d.ts +3 -0
  100. package/pipe/translate.pipe.d.ts +3 -0
  101. package/service/authentication.service.d.ts +5 -0
  102. package/service/configuration.service.d.ts +3 -0
  103. package/service/data.service.d.ts +3 -0
  104. package/service/theme.service.d.ts +3 -0
  105. package/service/translate.service.d.ts +3 -0
  106. package/utils/utilities.d.ts +3 -0
  107. package/bundles/info-library.umd.js +0 -9740
  108. package/bundles/info-library.umd.js.map +0 -1
  109. package/bundles/info-library.umd.min.js +0 -2
  110. package/bundles/info-library.umd.min.js.map +0 -1
  111. package/esm2015/controls/alert/alert.component.js +0 -43
  112. package/esm2015/controls/autocomplete/autocomplete.component.js +0 -386
  113. package/esm2015/controls/big-checkbox/big-checkbox.component.js +0 -282
  114. package/esm2015/controls/card/card.component.js +0 -64
  115. package/esm2015/controls/card-menu/card-menu.component.js +0 -90
  116. package/esm2015/controls/checkbox/checkbox.component.js +0 -130
  117. package/esm2015/controls/chips/chips.component.js +0 -124
  118. package/esm2015/controls/date/date.component.js +0 -167
  119. package/esm2015/controls/date-month/date-month.component.js +0 -181
  120. package/esm2015/controls/editor/editor.component.js +0 -237
  121. package/esm2015/controls/grid/grid.component.js +0 -1391
  122. package/esm2015/controls/input/input.component.js +0 -196
  123. package/esm2015/controls/input-list/input-list.component.js +0 -160
  124. package/esm2015/controls/list-checkbox/list-checkbox.component.js +0 -151
  125. package/esm2015/controls/message/message.component.js +0 -47
  126. package/esm2015/controls/multi-select/multi-select.component.js +0 -213
  127. package/esm2015/controls/paginator/paginator.component.js +0 -151
  128. package/esm2015/controls/select/select.component.js +0 -231
  129. package/esm2015/controls/timeline/timeline.component.js +0 -73
  130. package/esm2015/directives/mask.directive.js +0 -202
  131. package/esm2015/directives/unmask.directive.js +0 -51
  132. package/esm2015/enum/dialog-buttons.enum.js +0 -20
  133. package/esm2015/enum/index.js +0 -9
  134. package/esm2015/enum/modal-action.enum.js +0 -26
  135. package/esm2015/enum/page-action.enum.js +0 -22
  136. package/esm2015/global-config.js +0 -11
  137. package/esm2015/info-library.js +0 -27
  138. package/esm2015/info-library.module.js +0 -174
  139. package/esm2015/layouts/dialog/dialog.component.js +0 -173
  140. package/esm2015/layouts/loading/loading.component.js +0 -42
  141. package/esm2015/layouts/main/main.component.js +0 -312
  142. package/esm2015/layouts/modal/modal.component.js +0 -232
  143. package/esm2015/layouts/pagebar/pagebar.component.js +0 -286
  144. package/esm2015/layouts/sidebar/sidebar.component.js +0 -231
  145. package/esm2015/layouts/topbar/topbar.component.js +0 -413
  146. package/esm2015/layouts/topmenu/topmenu.component.js +0 -181
  147. package/esm2015/model/app-config.model.js +0 -39
  148. package/esm2015/model/data-access.model.js +0 -65
  149. package/esm2015/model/dialog-result.model.js +0 -23
  150. package/esm2015/model/dialog.model.js +0 -47
  151. package/esm2015/model/form-prop.model.js +0 -61
  152. package/esm2015/model/grid-button.model.js +0 -62
  153. package/esm2015/model/index.js +0 -20
  154. package/esm2015/model/last-search.model.js +0 -24
  155. package/esm2015/model/login.model.js +0 -27
  156. package/esm2015/model/method-grid-button.model.js +0 -27
  157. package/esm2015/model/notification.model.js +0 -34
  158. package/esm2015/model/pagebar-buttons.model.js +0 -39
  159. package/esm2015/model/permission.model.js +0 -16
  160. package/esm2015/model/platform.model.js +0 -56
  161. package/esm2015/model/session.model.js +0 -53
  162. package/esm2015/pipe/index.js +0 -8
  163. package/esm2015/pipe/mask.pipe.js +0 -47
  164. package/esm2015/pipe/translate.pipe.js +0 -45
  165. package/esm2015/public_api.js +0 -41
  166. package/esm2015/service/authentication.service.js +0 -732
  167. package/esm2015/service/configuration.service.js +0 -107
  168. package/esm2015/service/data.service.js +0 -292
  169. package/esm2015/service/index.js +0 -11
  170. package/esm2015/service/theme.service.js +0 -133
  171. package/esm2015/service/translate.service.js +0 -105
  172. package/esm2015/utils/utilities.js +0 -256
  173. package/fesm2015/info-library.js +0 -8792
  174. package/fesm2015/info-library.js.map +0 -1
  175. package/info-library.d.ts +0 -21
  176. package/info-library.metadata.json +0 -1
@@ -1,282 +0,0 @@
1
- /**
2
- * @fileoverview added by tsickle
3
- * Generated from: controls/big-checkbox/big-checkbox.component.ts
4
- * @suppress {checkTypes,constantProperty,extraRequire,missingOverride,missingRequire,missingReturn,unusedPrivateMembers,uselessCode} checked by tsc
5
- */
6
- import { Component, Input } from "@angular/core";
7
- import { InfoDataService } from "../../service/data.service";
8
- export class InfoBigCheckboxComponent {
9
- /**
10
- * @param {?} _dataService
11
- */
12
- constructor(_dataService) {
13
- this._dataService = _dataService;
14
- this.readonly = false;
15
- this.preload = true;
16
- this.enabledcheckall = true;
17
- this.labelselectall = 'Todos';
18
- this.labelsearch = 'Buscar';
19
- this.minchar = 0;
20
- this.max = 20;
21
- this.submessage = '';
22
- this.value = '';
23
- this.api = null;
24
- this.method = null;
25
- this.model = [];
26
- this.data = [];
27
- this.aux = null;
28
- this._params = null;
29
- this._paramsmodel = null;
30
- this.loading = false;
31
- this.name = '';
32
- }
33
- /**
34
- * @return {?}
35
- */
36
- get params() {
37
- return this._params;
38
- }
39
- /**
40
- * @param {?} value
41
- * @return {?}
42
- */
43
- set params(value) {
44
- this._params = value;
45
- this.getData();
46
- }
47
- /**
48
- * @return {?}
49
- */
50
- get paramsmodel() {
51
- return this._paramsmodel;
52
- }
53
- /**
54
- * @param {?} value
55
- * @return {?}
56
- */
57
- set paramsmodel(value) {
58
- this._paramsmodel = value;
59
- this.getData();
60
- }
61
- /**
62
- * @return {?}
63
- */
64
- ngOnInit() {
65
- this.submessage = 'Serão exibidos somente os ' + this.max + ' primeiros itens encontrados';
66
- this.name = 'input-search-' + Math.floor(Math.random() * 1000).toString();
67
- this.getData();
68
- }
69
- /**
70
- * @return {?}
71
- */
72
- getData() {
73
- if (this.preload) {
74
- if (this.params == null && this.paramsmodel != null)
75
- this.loadByParamModel(this.paramsmodel);
76
- else
77
- this.load(this.params);
78
- }
79
- }
80
- /**
81
- * @param {?=} param
82
- * @return {?}
83
- */
84
- load(param = null) {
85
- if (this.api == null)
86
- return;
87
- this.loading = true;
88
- this.data = [];
89
- if (this.model == null)
90
- this.model = [];
91
- this._dataService
92
- .get(this.api, this.method, param).subscribe((/**
93
- * @param {?} r
94
- * @return {?}
95
- */
96
- r => {
97
- if (r.success)
98
- this.data = r.data;
99
- this.loading = false;
100
- }));
101
- }
102
- /**
103
- * @param {?=} paramModel
104
- * @return {?}
105
- */
106
- loadByParamModel(paramModel = null) {
107
- if (this.api == null)
108
- return;
109
- this.loading = true;
110
- this.data = [];
111
- if (this.model == null)
112
- this.model = [];
113
- this._dataService.post(this.api, paramModel, this.method).subscribe((/**
114
- * @param {?} r
115
- * @return {?}
116
- */
117
- r => {
118
- if (r.success)
119
- this.data = r.data;
120
- this.loading = false;
121
- }));
122
- }
123
- /**
124
- * @return {?}
125
- */
126
- getModel() {
127
- if (this.model == null || this.model.length == 0)
128
- return [];
129
- return this.model.filter((/**
130
- * @param {?} m
131
- * @return {?}
132
- */
133
- m => this.aux == null || m.Aux == this.aux));
134
- }
135
- /**
136
- * @return {?}
137
- */
138
- getFilteredData() {
139
- if (this.data.length == 0 || this.value.length < this.minchar)
140
- return [];
141
- return this.data.filter((/**
142
- * @param {?} d
143
- * @return {?}
144
- */
145
- d => (this.aux == null || this.aux == d.Aux) &&
146
- this.model.filter((/**
147
- * @param {?} m
148
- * @return {?}
149
- */
150
- m => m.Id == d.Id)).length == 0 &&
151
- d.Nome.toLowerCase().indexOf(this.value.toLowerCase()) > -1)).slice(0, this.max);
152
- }
153
- /**
154
- * @return {?}
155
- */
156
- existData() {
157
- return (this.data != null &&
158
- this.data.length > 0 &&
159
- this.data.filter((/**
160
- * @param {?} d
161
- * @return {?}
162
- */
163
- d => this.aux == null || this.aux == d.Aux)).length > 0);
164
- }
165
- /**
166
- * @param {?} item
167
- * @return {?}
168
- */
169
- add(item) {
170
- if (this.model == null)
171
- this.model = [];
172
- this.model.push({
173
- Id: item.Id,
174
- Nome: item.Nome,
175
- Aux: (this.aux == null ? item.Aux : this.aux),
176
- Descricao: item.Descricao == null ? item.Nome : item.Descricao,
177
- Selecionado: true
178
- });
179
- }
180
- /**
181
- * @return {?}
182
- */
183
- selectAll() {
184
- /** @type {?} */
185
- let removeItems = new Array();
186
- if (this.aux != null) {
187
- for (var i = 0; i < this.model.length; i++) {
188
- if (this.model[i].Aux == this.aux)
189
- removeItems.push(i);
190
- }
191
- }
192
- removeItems.forEach((/**
193
- * @param {?} index
194
- * @return {?}
195
- */
196
- index => {
197
- this.model.splice(index, 1);
198
- }));
199
- }
200
- }
201
- InfoBigCheckboxComponent.decorators = [
202
- { type: Component, args: [{
203
- selector: 'info-big-checkbox',
204
- template: "<mat-selection-list class=\"col-md-12 mb-3\">\r\n <mat-list-option class=\"silver\" (click)=\"selectAll()\" [selected]=\"getModel().length == 0\" [disabled]=\"readonly\" *ngIf=\"enabledcheckall\">\r\n <label>{{ labelselectall | translate }}</label>\r\n </mat-list-option>\r\n\r\n <mat-list-option *ngFor=\"let item of getModel(); let i = index\" [ngClass]=\"{ 'silver': i % 2 == 1 }\" [selected]=\"item.Selecionado\" (click)=\"item.Selecionado = !item.Selecionado\" [disabled]=\"readonly\">\r\n <div *ngIf=\"item.Descricao == null\" [innerHTML]=\"item.Nome\"></div>\r\n <div *ngIf=\"item.Descricao != null\" [innerHTML]=\"item.Descricao\"></div>\r\n </mat-list-option>\r\n</mat-selection-list>\r\n \r\n<ng-container *ngIf=\"existData()\" >\r\n <mat-form-field class=\"col-md-12 mb-4 input-search\">\r\n <input matInput placeholder=\"{{ message | translate}}\" [name]=\"name\" autocomplete=\"false\" [(ngModel)]=\"value\" autocomplete=\"off\" >\r\n <mat-icon matSuffix >search</mat-icon>\r\n <mat-hint class=\"mt-2\">{{ submessage | translate}}</mat-hint>\r\n </mat-form-field>\r\n \r\n <mat-list class=\"col-md-12\" >\r\n <mat-list-item *ngFor=\"let item of getFilteredData(); let i = index\" [ngClass]=\"{ 'silver': i % 2 == 0 }\" (click)=\"add(item)\">\r\n <div *ngIf=\"item.Descricao == null\" [innerHTML]=\"item.Nome\"></div>\r\n <div *ngIf=\"item.Descricao != null\" [innerHTML]=\"item.Descricao\"></div>\r\n <mat-icon>add_circle_outline</mat-icon>\r\n </mat-list-item>\r\n </mat-list>\r\n</ng-container>\r\n\r\n<div class=\"col-md-12 none-data\" *ngIf=\"!existData()\" >\r\n <mat-icon>info_outline</mat-icon> {{ 'NenhumItemEncontrado' | translate }}\r\n</div>",
205
- styles: [":host mat-list-option{cursor:pointer;font-family:Open Sans,sans-serif;font-size:14px;padding:0!important}:host mat-list-option label{padding-left:5px}:host mat-list-item{cursor:pointer;font-size:14px;height:38px;padding:0 10px 0 20px}:host mat-list-item:hover{background:rgba(0,0,0,.04)}:host mat-list-item mat-icon{position:absolute;right:3px;top:8px}:host mat-list-item.silver,:host mat-list-option.silver{background:#f5f5f5}:host mat-list-item:hover,:host mat-list-option:hover{background:#eee}:host mat-list-item-content{padding-left:0!important}:host .none-data{background:#f5f5f5;color:#666;font-size:14px;padding:5px 0;text-align:center}:host .none-data mat-icon{font-size:18px;left:5px;margin-right:5px;top:4px}"]
206
- }] }
207
- ];
208
- /** @nocollapse */
209
- InfoBigCheckboxComponent.ctorParameters = () => [
210
- { type: InfoDataService }
211
- ];
212
- InfoBigCheckboxComponent.propDecorators = {
213
- readonly: [{ type: Input }],
214
- preload: [{ type: Input }],
215
- enabledcheckall: [{ type: Input }],
216
- labelselectall: [{ type: Input }],
217
- labelsearch: [{ type: Input }],
218
- minchar: [{ type: Input }],
219
- max: [{ type: Input }],
220
- message: [{ type: Input }],
221
- submessage: [{ type: Input }],
222
- value: [{ type: Input }],
223
- api: [{ type: Input }],
224
- method: [{ type: Input }],
225
- model: [{ type: Input }],
226
- data: [{ type: Input }],
227
- aux: [{ type: Input }],
228
- params: [{ type: Input }],
229
- paramsmodel: [{ type: Input }]
230
- };
231
- if (false) {
232
- /** @type {?} */
233
- InfoBigCheckboxComponent.prototype.readonly;
234
- /** @type {?} */
235
- InfoBigCheckboxComponent.prototype.preload;
236
- /** @type {?} */
237
- InfoBigCheckboxComponent.prototype.enabledcheckall;
238
- /** @type {?} */
239
- InfoBigCheckboxComponent.prototype.labelselectall;
240
- /** @type {?} */
241
- InfoBigCheckboxComponent.prototype.labelsearch;
242
- /** @type {?} */
243
- InfoBigCheckboxComponent.prototype.minchar;
244
- /** @type {?} */
245
- InfoBigCheckboxComponent.prototype.max;
246
- /** @type {?} */
247
- InfoBigCheckboxComponent.prototype.message;
248
- /** @type {?} */
249
- InfoBigCheckboxComponent.prototype.submessage;
250
- /** @type {?} */
251
- InfoBigCheckboxComponent.prototype.value;
252
- /** @type {?} */
253
- InfoBigCheckboxComponent.prototype.api;
254
- /** @type {?} */
255
- InfoBigCheckboxComponent.prototype.method;
256
- /** @type {?} */
257
- InfoBigCheckboxComponent.prototype.model;
258
- /** @type {?} */
259
- InfoBigCheckboxComponent.prototype.data;
260
- /** @type {?} */
261
- InfoBigCheckboxComponent.prototype.aux;
262
- /**
263
- * @type {?}
264
- * @private
265
- */
266
- InfoBigCheckboxComponent.prototype._params;
267
- /**
268
- * @type {?}
269
- * @private
270
- */
271
- InfoBigCheckboxComponent.prototype._paramsmodel;
272
- /** @type {?} */
273
- InfoBigCheckboxComponent.prototype.loading;
274
- /** @type {?} */
275
- InfoBigCheckboxComponent.prototype.name;
276
- /**
277
- * @type {?}
278
- * @private
279
- */
280
- InfoBigCheckboxComponent.prototype._dataService;
281
- }
282
- //# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoiYmlnLWNoZWNrYm94LmNvbXBvbmVudC5qcyIsInNvdXJjZVJvb3QiOiJGOi9kZXYvSW5mbyBVdGlsaXRpZXMvSW5mbyBMaWJyYXJ5IC0gQW5ndWxhci9wcm9qZWN0cy9pbmZvLWxpYnJhcnkvc3JjLyIsInNvdXJjZXMiOlsiY29udHJvbHMvYmlnLWNoZWNrYm94L2JpZy1jaGVja2JveC5jb21wb25lbnQudHMiXSwibmFtZXMiOltdLCJtYXBwaW5ncyI6Ijs7Ozs7QUFBQSxPQUFPLEVBQUUsU0FBUyxFQUFFLEtBQUssRUFBVSxNQUFNLGVBQWUsQ0FBQztBQUN6RCxPQUFPLEVBQUUsZUFBZSxFQUFFLE1BQU0sNEJBQTRCLENBQUM7QUFPN0QsTUFBTSxPQUFPLHdCQUF3Qjs7OztJQTZDakMsWUFBb0IsWUFBNkI7UUFBN0IsaUJBQVksR0FBWixZQUFZLENBQWlCO1FBM0N4QyxhQUFRLEdBQVksS0FBSyxDQUFDO1FBQzFCLFlBQU8sR0FBWSxJQUFJLENBQUM7UUFDeEIsb0JBQWUsR0FBWSxJQUFJLENBQUM7UUFDaEMsbUJBQWMsR0FBVyxPQUFPLENBQUM7UUFDakMsZ0JBQVcsR0FBVyxRQUFRLENBQUM7UUFDL0IsWUFBTyxHQUFXLENBQUMsQ0FBQztRQUNwQixRQUFHLEdBQVcsRUFBRSxDQUFDO1FBRWpCLGVBQVUsR0FBVyxFQUFFLENBQUM7UUFFeEIsVUFBSyxHQUFXLEVBQUUsQ0FBQztRQUNuQixRQUFHLEdBQVEsSUFBSSxDQUFDO1FBQ2hCLFdBQU0sR0FBVyxJQUFJLENBQUM7UUFFdEIsVUFBSyxHQUFRLEVBQUUsQ0FBQztRQUNoQixTQUFJLEdBQVUsRUFBRSxDQUFDO1FBQ2pCLFFBQUcsR0FBVyxJQUFJLENBQUM7UUFFcEIsWUFBTyxHQUFRLElBQUksQ0FBQztRQVdwQixpQkFBWSxHQUFRLElBQUksQ0FBQztRQVdqQyxZQUFPLEdBQVksS0FBSyxDQUFDO1FBQ3pCLFNBQUksR0FBVyxFQUFFLENBQUM7SUFFbUMsQ0FBQzs7OztJQXhCdEQsSUFDSSxNQUFNO1FBQ04sT0FBTyxJQUFJLENBQUMsT0FBTyxDQUFDO0lBQ3hCLENBQUM7Ozs7O0lBRUQsSUFBSSxNQUFNLENBQUMsS0FBSztRQUNaLElBQUksQ0FBQyxPQUFPLEdBQUcsS0FBSyxDQUFDO1FBQ3JCLElBQUksQ0FBQyxPQUFPLEVBQUUsQ0FBQztJQUNuQixDQUFDOzs7O0lBR0QsSUFDSSxXQUFXO1FBQ1gsT0FBTyxJQUFJLENBQUMsWUFBWSxDQUFDO0lBQzdCLENBQUM7Ozs7O0lBRUQsSUFBSSxXQUFXLENBQUMsS0FBSztRQUNqQixJQUFJLENBQUMsWUFBWSxHQUFHLEtBQUssQ0FBQztRQUMxQixJQUFJLENBQUMsT0FBTyxFQUFFLENBQUM7SUFDbkIsQ0FBQzs7OztJQU9ELFFBQVE7UUFDSixJQUFJLENBQUMsVUFBVSxHQUFHLDRCQUE0QixHQUFHLElBQUksQ0FBQyxHQUFHLEdBQUcsOEJBQThCLENBQUM7UUFDM0YsSUFBSSxDQUFDLElBQUksR0FBRyxlQUFlLEdBQUcsSUFBSSxDQUFDLEtBQUssQ0FBQyxJQUFJLENBQUMsTUFBTSxFQUFFLEdBQUcsSUFBSSxDQUFDLENBQUMsUUFBUSxFQUFFLENBQUM7UUFDMUUsSUFBSSxDQUFDLE9BQU8sRUFBRSxDQUFDO0lBQ25CLENBQUM7Ozs7SUFFRCxPQUFPO1FBQ0gsSUFBSSxJQUFJLENBQUMsT0FBTyxFQUFFO1lBQ2QsSUFBSSxJQUFJLENBQUMsTUFBTSxJQUFJLElBQUksSUFBSSxJQUFJLENBQUMsV0FBVyxJQUFJLElBQUk7Z0JBQy9DLElBQUksQ0FBQyxnQkFBZ0IsQ0FBQyxJQUFJLENBQUMsV0FBVyxDQUFDLENBQUM7O2dCQUV2QyxJQUFJLENBQUMsSUFBSSxDQUFDLElBQUksQ0FBQyxNQUFNLENBQUMsQ0FBQztTQUMvQjtJQUNMLENBQUM7Ozs7O0lBRUQsSUFBSSxDQUFDLFFBQWEsSUFBSTtRQUVsQixJQUFJLElBQUksQ0FBQyxHQUFHLElBQUksSUFBSTtZQUNoQixPQUFPO1FBRVgsSUFBSSxDQUFDLE9BQU8sR0FBRyxJQUFJLENBQUM7UUFDcEIsSUFBSSxDQUFDLElBQUksR0FBRyxFQUFFLENBQUM7UUFFZixJQUFJLElBQUksQ0FBQyxLQUFLLElBQUksSUFBSTtZQUNsQixJQUFJLENBQUMsS0FBSyxHQUFHLEVBQUUsQ0FBQztRQUVwQixJQUFJLENBQUMsWUFBWTthQUNaLEdBQUcsQ0FBQyxJQUFJLENBQUMsR0FBRyxFQUFFLElBQUksQ0FBQyxNQUFNLEVBQUUsS0FBSyxDQUFDLENBQUMsU0FBUzs7OztRQUFDLENBQUMsQ0FBQyxFQUFFO1lBQ2pELElBQUksQ0FBQyxDQUFDLE9BQU87Z0JBQ1QsSUFBSSxDQUFDLElBQUksR0FBRyxDQUFDLENBQUMsSUFBSSxDQUFDO1lBRXZCLElBQUksQ0FBQyxPQUFPLEdBQUcsS0FBSyxDQUFDO1FBQ3pCLENBQUMsRUFBQyxDQUFDO0lBQ1AsQ0FBQzs7Ozs7SUFFRCxnQkFBZ0IsQ0FBQyxhQUFrQixJQUFJO1FBRW5DLElBQUksSUFBSSxDQUFDLEdBQUcsSUFBSSxJQUFJO1lBQ2hCLE9BQU87UUFFWCxJQUFJLENBQUMsT0FBTyxHQUFHLElBQUksQ0FBQztRQUNwQixJQUFJLENBQUMsSUFBSSxHQUFHLEVBQUUsQ0FBQztRQUVmLElBQUksSUFBSSxDQUFDLEtBQUssSUFBSSxJQUFJO1lBQ2xCLElBQUksQ0FBQyxLQUFLLEdBQUcsRUFBRSxDQUFDO1FBRXBCLElBQUksQ0FBQyxZQUFZLENBQUMsSUFBSSxDQUFDLElBQUksQ0FBQyxHQUFHLEVBQUUsVUFBVSxFQUFFLElBQUksQ0FBQyxNQUFNLENBQUMsQ0FBQyxTQUFTOzs7O1FBQUMsQ0FBQyxDQUFDLEVBQUU7WUFDcEUsSUFBSSxDQUFDLENBQUMsT0FBTztnQkFDVCxJQUFJLENBQUMsSUFBSSxHQUFHLENBQUMsQ0FBQyxJQUFJLENBQUM7WUFFdkIsSUFBSSxDQUFDLE9BQU8sR0FBRyxLQUFLLENBQUM7UUFDekIsQ0FBQyxFQUFDLENBQUM7SUFDUCxDQUFDOzs7O0lBRUQsUUFBUTtRQUVKLElBQUksSUFBSSxDQUFDLEtBQUssSUFBSSxJQUFJLElBQUksSUFBSSxDQUFDLEtBQUssQ0FBQyxNQUFNLElBQUksQ0FBQztZQUM1QyxPQUFPLEVBQUUsQ0FBQztRQUVkLE9BQU8sSUFBSSxDQUFDLEtBQUssQ0FBQyxNQUFNOzs7O1FBQUMsQ0FBQyxDQUFDLEVBQUUsQ0FBQyxJQUFJLENBQUMsR0FBRyxJQUFJLElBQUksSUFBSSxDQUFDLENBQUMsR0FBRyxJQUFJLElBQUksQ0FBQyxHQUFHLEVBQUMsQ0FBQztJQUN6RSxDQUFDOzs7O0lBRUQsZUFBZTtRQUVYLElBQUksSUFBSSxDQUFDLElBQUksQ0FBQyxNQUFNLElBQUksQ0FBQyxJQUFJLElBQUksQ0FBQyxLQUFLLENBQUMsTUFBTSxHQUFHLElBQUksQ0FBQyxPQUFPO1lBQ3pELE9BQU8sRUFBRSxDQUFDO1FBRWQsT0FBTyxJQUFJLENBQUMsSUFBSSxDQUFDLE1BQU07Ozs7UUFBQyxDQUFDLENBQUMsRUFBRSxDQUN4QixDQUFDLElBQUksQ0FBQyxHQUFHLElBQUksSUFBSSxJQUFJLElBQUksQ0FBQyxHQUFHLElBQUksQ0FBQyxDQUFDLEdBQUcsQ0FBQztZQUN2QyxJQUFJLENBQUMsS0FBSyxDQUFDLE1BQU07Ozs7WUFBQyxDQUFDLENBQUMsRUFBRSxDQUFDLENBQUMsQ0FBQyxFQUFFLElBQUksQ0FBQyxDQUFDLEVBQUUsRUFBQyxDQUFDLE1BQU0sSUFBSSxDQUFDO1lBQ2hELENBQUMsQ0FBQyxJQUFJLENBQUMsV0FBVyxFQUFFLENBQUMsT0FBTyxDQUFDLElBQUksQ0FBQyxLQUFLLENBQUMsV0FBVyxFQUFFLENBQUMsR0FBRyxDQUFDLENBQUMsRUFFOUQsQ0FBQyxLQUFLLENBQUMsQ0FBQyxFQUFFLElBQUksQ0FBQyxHQUFHLENBQUMsQ0FBQztJQUN6QixDQUFDOzs7O0lBRUQsU0FBUztRQUNMLE9BQU8sQ0FBQyxJQUFJLENBQUMsSUFBSSxJQUFJLElBQUk7WUFDakIsSUFBSSxDQUFDLElBQUksQ0FBQyxNQUFNLEdBQUcsQ0FBQztZQUNwQixJQUFJLENBQUMsSUFBSSxDQUFDLE1BQU07Ozs7WUFBQyxDQUFDLENBQUMsRUFBRSxDQUFDLElBQUksQ0FBQyxHQUFHLElBQUksSUFBSSxJQUFJLElBQUksQ0FBQyxHQUFHLElBQUksQ0FBQyxDQUFDLEdBQUcsRUFBQyxDQUFDLE1BQU0sR0FBRyxDQUFDLENBQUMsQ0FBQztJQUNyRixDQUFDOzs7OztJQUVELEdBQUcsQ0FBQyxJQUFTO1FBRVQsSUFBSSxJQUFJLENBQUMsS0FBSyxJQUFJLElBQUk7WUFDbEIsSUFBSSxDQUFDLEtBQUssR0FBRyxFQUFFLENBQUM7UUFFcEIsSUFBSSxDQUFDLEtBQUssQ0FBQyxJQUFJLENBQUM7WUFDWixFQUFFLEVBQUUsSUFBSSxDQUFDLEVBQUU7WUFDWCxJQUFJLEVBQUUsSUFBSSxDQUFDLElBQUk7WUFDZixHQUFHLEVBQUUsQ0FBQyxJQUFJLENBQUMsR0FBRyxJQUFJLElBQUksQ0FBQyxDQUFDLENBQUMsSUFBSSxDQUFDLEdBQUcsQ0FBQyxDQUFDLENBQUMsSUFBSSxDQUFDLEdBQUcsQ0FBQztZQUM3QyxTQUFTLEVBQUUsSUFBSSxDQUFDLFNBQVMsSUFBSSxJQUFJLENBQUMsQ0FBQyxDQUFDLElBQUksQ0FBQyxJQUFJLENBQUMsQ0FBQyxDQUFDLElBQUksQ0FBQyxTQUFTO1lBQzlELFdBQVcsRUFBRSxJQUFJO1NBQ3BCLENBQUMsQ0FBQztJQUNQLENBQUM7Ozs7SUFFRCxTQUFTOztZQUVELFdBQVcsR0FBRyxJQUFJLEtBQUssRUFBRTtRQUU3QixJQUFJLElBQUksQ0FBQyxHQUFHLElBQUksSUFBSSxFQUFFO1lBQ2xCLEtBQUssSUFBSSxDQUFDLEdBQUcsQ0FBQyxFQUFFLENBQUMsR0FBRyxJQUFJLENBQUMsS0FBSyxDQUFDLE1BQU0sRUFBRSxDQUFDLEVBQUUsRUFBQztnQkFDdkMsSUFBSSxJQUFJLENBQUMsS0FBSyxDQUFDLENBQUMsQ0FBQyxDQUFDLEdBQUcsSUFBSSxJQUFJLENBQUMsR0FBRztvQkFDN0IsV0FBVyxDQUFDLElBQUksQ0FBQyxDQUFDLENBQUMsQ0FBQzthQUMzQjtTQUNKO1FBRUQsV0FBVyxDQUFDLE9BQU87Ozs7UUFBQyxLQUFLLENBQUMsRUFBRTtZQUN4QixJQUFJLENBQUMsS0FBSyxDQUFDLE1BQU0sQ0FBQyxLQUFLLEVBQUUsQ0FBQyxDQUFDLENBQUM7UUFDaEMsQ0FBQyxFQUFDLENBQUM7SUFDUCxDQUFDOzs7WUFqS0osU0FBUyxTQUFDO2dCQUNQLFFBQVEsRUFBRSxtQkFBbUI7Z0JBQzdCLHV3REFBMEM7O2FBRTdDOzs7O1lBTlEsZUFBZTs7O3VCQVNuQixLQUFLO3NCQUNMLEtBQUs7OEJBQ0wsS0FBSzs2QkFDTCxLQUFLOzBCQUNMLEtBQUs7c0JBQ0wsS0FBSztrQkFDTCxLQUFLO3NCQUNMLEtBQUs7eUJBQ0wsS0FBSztvQkFFTCxLQUFLO2tCQUNMLEtBQUs7cUJBQ0wsS0FBSztvQkFFTCxLQUFLO21CQUNMLEtBQUs7a0JBQ0wsS0FBSztxQkFHTCxLQUFLOzBCQVdMLEtBQUs7Ozs7SUE5Qk4sNENBQW1DOztJQUNuQywyQ0FBaUM7O0lBQ2pDLG1EQUF5Qzs7SUFDekMsa0RBQTBDOztJQUMxQywrQ0FBd0M7O0lBQ3hDLDJDQUE2Qjs7SUFDN0IsdUNBQTBCOztJQUMxQiwyQ0FBeUI7O0lBQ3pCLDhDQUFpQzs7SUFFakMseUNBQTRCOztJQUM1Qix1Q0FBeUI7O0lBQ3pCLDBDQUErQjs7SUFFL0IseUNBQXlCOztJQUN6Qix3Q0FBMEI7O0lBQzFCLHVDQUE0Qjs7Ozs7SUFFNUIsMkNBQTRCOzs7OztJQVc1QixnREFBaUM7O0lBV2pDLDJDQUF5Qjs7SUFDekIsd0NBQWtCOzs7OztJQUVOLGdEQUFxQyIsInNvdXJjZXNDb250ZW50IjpbImltcG9ydCB7IENvbXBvbmVudCwgSW5wdXQsIE9uSW5pdCB9IGZyb20gXCJAYW5ndWxhci9jb3JlXCI7XHJcbmltcG9ydCB7IEluZm9EYXRhU2VydmljZSB9IGZyb20gXCIuLi8uLi9zZXJ2aWNlL2RhdGEuc2VydmljZVwiO1xyXG5cclxuQENvbXBvbmVudCh7XHJcbiAgICBzZWxlY3RvcjogJ2luZm8tYmlnLWNoZWNrYm94JyxcclxuICAgIHRlbXBsYXRlVXJsOiAnYmlnLWNoZWNrYm94LmNvbXBvbmVudC5odG1sJyxcclxuICAgIHN0eWxlVXJsczogWydiaWctY2hlY2tib3guY29tcG9uZW50LnNjc3MnXVxyXG59KVxyXG5leHBvcnQgY2xhc3MgSW5mb0JpZ0NoZWNrYm94Q29tcG9uZW50IGltcGxlbWVudHMgT25Jbml0IHtcclxuXHJcbiAgICBASW5wdXQoKSByZWFkb25seTogYm9vbGVhbiA9IGZhbHNlO1xyXG4gICAgQElucHV0KCkgcHJlbG9hZDogYm9vbGVhbiA9IHRydWU7XHJcbiAgICBASW5wdXQoKSBlbmFibGVkY2hlY2thbGw6IGJvb2xlYW4gPSB0cnVlO1xyXG4gICAgQElucHV0KCkgbGFiZWxzZWxlY3RhbGw6IHN0cmluZyA9ICdUb2Rvcyc7XHJcbiAgICBASW5wdXQoKSBsYWJlbHNlYXJjaDogc3RyaW5nID0gJ0J1c2Nhcic7XHJcbiAgICBASW5wdXQoKSBtaW5jaGFyOiBudW1iZXIgPSAwO1xyXG4gICAgQElucHV0KCkgbWF4OiBudW1iZXIgPSAyMDtcclxuICAgIEBJbnB1dCgpIG1lc3NhZ2U6IHN0cmluZztcclxuICAgIEBJbnB1dCgpIHN1Ym1lc3NhZ2U6IHN0cmluZyA9ICcnO1xyXG5cclxuICAgIEBJbnB1dCgpIHZhbHVlOiBzdHJpbmcgPSAnJztcclxuICAgIEBJbnB1dCgpIGFwaTogYW55ID0gbnVsbDtcclxuICAgIEBJbnB1dCgpIG1ldGhvZDogc3RyaW5nID0gbnVsbDtcclxuXHJcbiAgICBASW5wdXQoKSBtb2RlbDogYW55ID0gW107XHJcbiAgICBASW5wdXQoKSBkYXRhOiBhbnlbXSA9IFtdO1xyXG4gICAgQElucHV0KCkgYXV4OiBzdHJpbmcgPSBudWxsO1xyXG5cclxuICAgIHByaXZhdGUgX3BhcmFtczogYW55ID0gbnVsbDtcclxuICAgIEBJbnB1dCgpXHJcbiAgICBnZXQgcGFyYW1zKCl7XHJcbiAgICAgICAgcmV0dXJuIHRoaXMuX3BhcmFtcztcclxuICAgIH1cclxuXHJcbiAgICBzZXQgcGFyYW1zKHZhbHVlKXtcclxuICAgICAgICB0aGlzLl9wYXJhbXMgPSB2YWx1ZTtcclxuICAgICAgICB0aGlzLmdldERhdGEoKTtcclxuICAgIH1cclxuXHJcbiAgICBwcml2YXRlIF9wYXJhbXNtb2RlbDogYW55ID0gbnVsbDtcclxuICAgIEBJbnB1dCgpXHJcbiAgICBnZXQgcGFyYW1zbW9kZWwoKXtcclxuICAgICAgICByZXR1cm4gdGhpcy5fcGFyYW1zbW9kZWw7XHJcbiAgICB9XHJcblxyXG4gICAgc2V0IHBhcmFtc21vZGVsKHZhbHVlKXtcclxuICAgICAgICB0aGlzLl9wYXJhbXNtb2RlbCA9IHZhbHVlO1xyXG4gICAgICAgIHRoaXMuZ2V0RGF0YSgpO1xyXG4gICAgfVxyXG5cclxuICAgIGxvYWRpbmc6IGJvb2xlYW4gPSBmYWxzZTtcclxuICAgIG5hbWU6IHN0cmluZyA9ICcnO1xyXG5cclxuICAgIGNvbnN0cnVjdG9yKHByaXZhdGUgX2RhdGFTZXJ2aWNlOiBJbmZvRGF0YVNlcnZpY2UpIHsgfVxyXG5cclxuICAgIG5nT25Jbml0KCl7XHJcbiAgICAgICAgdGhpcy5zdWJtZXNzYWdlID0gJ1NlcsOjbyBleGliaWRvcyBzb21lbnRlIG9zICcgKyB0aGlzLm1heCArICcgcHJpbWVpcm9zIGl0ZW5zIGVuY29udHJhZG9zJztcclxuICAgICAgICB0aGlzLm5hbWUgPSAnaW5wdXQtc2VhcmNoLScgKyBNYXRoLmZsb29yKE1hdGgucmFuZG9tKCkgKiAxMDAwKS50b1N0cmluZygpO1xyXG4gICAgICAgIHRoaXMuZ2V0RGF0YSgpO1xyXG4gICAgfVxyXG5cclxuICAgIGdldERhdGEoKSB7XHJcbiAgICAgICAgaWYgKHRoaXMucHJlbG9hZCkge1xyXG4gICAgICAgICAgICBpZiAodGhpcy5wYXJhbXMgPT0gbnVsbCAmJiB0aGlzLnBhcmFtc21vZGVsICE9IG51bGwpXHJcbiAgICAgICAgICAgICAgICB0aGlzLmxvYWRCeVBhcmFtTW9kZWwodGhpcy5wYXJhbXNtb2RlbCk7XHJcblxyXG4gICAgICAgICAgICBlbHNlIHRoaXMubG9hZCh0aGlzLnBhcmFtcyk7XHJcbiAgICAgICAgfVxyXG4gICAgfVxyXG5cclxuICAgIGxvYWQocGFyYW06IGFueSA9IG51bGwpIHtcclxuXHJcbiAgICAgICAgaWYgKHRoaXMuYXBpID09IG51bGwpXHJcbiAgICAgICAgICAgIHJldHVybjtcclxuXHJcbiAgICAgICAgdGhpcy5sb2FkaW5nID0gdHJ1ZTtcclxuICAgICAgICB0aGlzLmRhdGEgPSBbXTtcclxuICAgICAgICBcclxuICAgICAgICBpZiAodGhpcy5tb2RlbCA9PSBudWxsKVxyXG4gICAgICAgICAgICB0aGlzLm1vZGVsID0gW107XHJcblxyXG4gICAgICAgIHRoaXMuX2RhdGFTZXJ2aWNlXHJcbiAgICAgICAgICAgIC5nZXQodGhpcy5hcGksIHRoaXMubWV0aG9kLCBwYXJhbSkuc3Vic2NyaWJlKHIgPT4ge1xyXG4gICAgICAgICAgICBpZiAoci5zdWNjZXNzKVxyXG4gICAgICAgICAgICAgICAgdGhpcy5kYXRhID0gci5kYXRhO1xyXG5cclxuICAgICAgICAgICAgdGhpcy5sb2FkaW5nID0gZmFsc2U7XHJcbiAgICAgICAgfSk7XHJcbiAgICB9XHJcblxyXG4gICAgbG9hZEJ5UGFyYW1Nb2RlbChwYXJhbU1vZGVsOiBhbnkgPSBudWxsKSB7XHJcbiAgICAgICAgXHJcbiAgICAgICAgaWYgKHRoaXMuYXBpID09IG51bGwpXHJcbiAgICAgICAgICAgIHJldHVybjtcclxuXHJcbiAgICAgICAgdGhpcy5sb2FkaW5nID0gdHJ1ZTtcclxuICAgICAgICB0aGlzLmRhdGEgPSBbXTtcclxuICAgICAgICBcclxuICAgICAgICBpZiAodGhpcy5tb2RlbCA9PSBudWxsKVxyXG4gICAgICAgICAgICB0aGlzLm1vZGVsID0gW107XHJcblxyXG4gICAgICAgIHRoaXMuX2RhdGFTZXJ2aWNlLnBvc3QodGhpcy5hcGksIHBhcmFtTW9kZWwsIHRoaXMubWV0aG9kKS5zdWJzY3JpYmUociA9PiB7XHJcbiAgICAgICAgICAgIGlmIChyLnN1Y2Nlc3MpXHJcbiAgICAgICAgICAgICAgICB0aGlzLmRhdGEgPSByLmRhdGE7XHJcbiAgICAgICAgICAgICAgICBcclxuICAgICAgICAgICAgdGhpcy5sb2FkaW5nID0gZmFsc2U7XHJcbiAgICAgICAgfSk7XHJcbiAgICB9XHJcblxyXG4gICAgZ2V0TW9kZWwoKTogYW55W117XHJcblxyXG4gICAgICAgIGlmICh0aGlzLm1vZGVsID09IG51bGwgfHwgdGhpcy5tb2RlbC5sZW5ndGggPT0gMClcclxuICAgICAgICAgICAgcmV0dXJuIFtdO1xyXG5cclxuICAgICAgICByZXR1cm4gdGhpcy5tb2RlbC5maWx0ZXIobSA9PiB0aGlzLmF1eCA9PSBudWxsIHx8IG0uQXV4ID09IHRoaXMuYXV4KTtcclxuICAgIH1cclxuXHJcbiAgICBnZXRGaWx0ZXJlZERhdGEoKTogYW55W117XHJcblxyXG4gICAgICAgIGlmICh0aGlzLmRhdGEubGVuZ3RoID09IDAgfHwgdGhpcy52YWx1ZS5sZW5ndGggPCB0aGlzLm1pbmNoYXIpXHJcbiAgICAgICAgICAgIHJldHVybiBbXTtcclxuXHJcbiAgICAgICAgcmV0dXJuIHRoaXMuZGF0YS5maWx0ZXIoZCA9PiBcclxuICAgICAgICAgICAgKHRoaXMuYXV4ID09IG51bGwgfHwgdGhpcy5hdXggPT0gZC5BdXgpICYmXHJcbiAgICAgICAgICAgIHRoaXMubW9kZWwuZmlsdGVyKG0gPT4gbS5JZCA9PSBkLklkKS5sZW5ndGggPT0gMCAmJiBcclxuICAgICAgICAgICAgZC5Ob21lLnRvTG93ZXJDYXNlKCkuaW5kZXhPZih0aGlzLnZhbHVlLnRvTG93ZXJDYXNlKCkpID4gLTFcclxuXHJcbiAgICAgICAgKS5zbGljZSgwLCB0aGlzLm1heCk7XHJcbiAgICB9XHJcblxyXG4gICAgZXhpc3REYXRhKCk6IGJvb2xlYW57XHJcbiAgICAgICAgcmV0dXJuICh0aGlzLmRhdGEgIT0gbnVsbCAmJiBcclxuICAgICAgICAgICAgICAgIHRoaXMuZGF0YS5sZW5ndGggPiAwICYmIFxyXG4gICAgICAgICAgICAgICAgdGhpcy5kYXRhLmZpbHRlcihkID0+IHRoaXMuYXV4ID09IG51bGwgfHwgdGhpcy5hdXggPT0gZC5BdXgpLmxlbmd0aCA+IDApO1xyXG4gICAgfVxyXG5cclxuICAgIGFkZChpdGVtOiBhbnkpe1xyXG4gICAgICAgIFxyXG4gICAgICAgIGlmICh0aGlzLm1vZGVsID09IG51bGwpXHJcbiAgICAgICAgICAgIHRoaXMubW9kZWwgPSBbXTtcclxuXHJcbiAgICAgICAgdGhpcy5tb2RlbC5wdXNoKHtcclxuICAgICAgICAgICAgSWQ6IGl0ZW0uSWQsXHJcbiAgICAgICAgICAgIE5vbWU6IGl0ZW0uTm9tZSxcclxuICAgICAgICAgICAgQXV4OiAodGhpcy5hdXggPT0gbnVsbCA/IGl0ZW0uQXV4IDogdGhpcy5hdXgpLFxyXG4gICAgICAgICAgICBEZXNjcmljYW86IGl0ZW0uRGVzY3JpY2FvID09IG51bGwgPyBpdGVtLk5vbWUgOiBpdGVtLkRlc2NyaWNhbyxcclxuICAgICAgICAgICAgU2VsZWNpb25hZG86IHRydWVcclxuICAgICAgICB9KTtcclxuICAgIH1cclxuXHJcbiAgICBzZWxlY3RBbGwoKXtcclxuXHJcbiAgICAgICAgbGV0IHJlbW92ZUl0ZW1zID0gbmV3IEFycmF5KCk7XHJcblxyXG4gICAgICAgIGlmICh0aGlzLmF1eCAhPSBudWxsKSB7XHJcbiAgICAgICAgICAgIGZvciAodmFyIGkgPSAwOyBpIDwgdGhpcy5tb2RlbC5sZW5ndGg7IGkrKyl7XHJcbiAgICAgICAgICAgICAgICBpZiAodGhpcy5tb2RlbFtpXS5BdXggPT0gdGhpcy5hdXgpXHJcbiAgICAgICAgICAgICAgICAgICAgcmVtb3ZlSXRlbXMucHVzaChpKTtcclxuICAgICAgICAgICAgfVxyXG4gICAgICAgIH1cclxuXHJcbiAgICAgICAgcmVtb3ZlSXRlbXMuZm9yRWFjaChpbmRleCA9PiB7XHJcbiAgICAgICAgICAgIHRoaXMubW9kZWwuc3BsaWNlKGluZGV4LCAxKTtcclxuICAgICAgICB9KTtcclxuICAgIH1cclxufSJdfQ==
@@ -1,64 +0,0 @@
1
- /**
2
- * @fileoverview added by tsickle
3
- * Generated from: controls/card/card.component.ts
4
- * @suppress {checkTypes,constantProperty,extraRequire,missingOverride,missingRequire,missingReturn,unusedPrivateMembers,uselessCode} checked by tsc
5
- */
6
- import { Component, Input, Output, EventEmitter } from '@angular/core';
7
- import { Router } from '@angular/router';
8
- export class InfoCardComponent {
9
- /**
10
- * @param {?} _router
11
- */
12
- constructor(_router) {
13
- this._router = _router;
14
- this.onclick = new EventEmitter();
15
- }
16
- /**
17
- * @return {?}
18
- */
19
- onCardClick() {
20
- if (this.url == null || this.url == '')
21
- this.onclick.emit();
22
- else
23
- this._router.navigateByUrl(this.url);
24
- }
25
- }
26
- InfoCardComponent.decorators = [
27
- { type: Component, args: [{
28
- selector: 'info-card',
29
- template: "<mat-card (click)=\"onCardClick()\">\r\n <mat-card-content>\r\n <h4>{{ label | translate }}</h4>\r\n <p *ngIf=\"description\" [innerHTML]=\"description | translate\"></p>\r\n <mark *ngIf=\"mark\"><small>{{ mark }}</small></mark>\r\n </mat-card-content>\r\n <mat-card-footer>\r\n <mat-icon>{{icon}}</mat-icon>\r\n </mat-card-footer>\r\n</mat-card>",
30
- styles: [":host mat-card-footer{height:70px;overflow:hidden;position:relative}:host mat-card-footer mat-icon{bottom:36px;color:#aaa;font-size:5.71rem;opacity:.4;position:absolute;right:42px}"]
31
- }] }
32
- ];
33
- /** @nocollapse */
34
- InfoCardComponent.ctorParameters = () => [
35
- { type: Router }
36
- ];
37
- InfoCardComponent.propDecorators = {
38
- label: [{ type: Input }],
39
- description: [{ type: Input }],
40
- mark: [{ type: Input }],
41
- url: [{ type: Input }],
42
- icon: [{ type: Input }],
43
- onclick: [{ type: Output }]
44
- };
45
- if (false) {
46
- /** @type {?} */
47
- InfoCardComponent.prototype.label;
48
- /** @type {?} */
49
- InfoCardComponent.prototype.description;
50
- /** @type {?} */
51
- InfoCardComponent.prototype.mark;
52
- /** @type {?} */
53
- InfoCardComponent.prototype.url;
54
- /** @type {?} */
55
- InfoCardComponent.prototype.icon;
56
- /** @type {?} */
57
- InfoCardComponent.prototype.onclick;
58
- /**
59
- * @type {?}
60
- * @private
61
- */
62
- InfoCardComponent.prototype._router;
63
- }
64
- //# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoiY2FyZC5jb21wb25lbnQuanMiLCJzb3VyY2VSb290IjoiRjovZGV2L0luZm8gVXRpbGl0aWVzL0luZm8gTGlicmFyeSAtIEFuZ3VsYXIvcHJvamVjdHMvaW5mby1saWJyYXJ5L3NyYy8iLCJzb3VyY2VzIjpbImNvbnRyb2xzL2NhcmQvY2FyZC5jb21wb25lbnQudHMiXSwibmFtZXMiOltdLCJtYXBwaW5ncyI6Ijs7Ozs7QUFBQSxPQUFPLEVBQUUsU0FBUyxFQUFFLEtBQUssRUFBRSxNQUFNLEVBQUUsWUFBWSxFQUFFLE1BQU0sZUFBZSxDQUFDO0FBQ3ZFLE9BQU8sRUFBRSxNQUFNLEVBQUUsTUFBTSxpQkFBaUIsQ0FBQztBQVF6QyxNQUFNLE9BQU8saUJBQWlCOzs7O0lBUzFCLFlBQW9CLE9BQWU7UUFBZixZQUFPLEdBQVAsT0FBTyxDQUFRO1FBRnpCLFlBQU8sR0FBRyxJQUFJLFlBQVksRUFBRSxDQUFDO0lBRUEsQ0FBQzs7OztJQUV4QyxXQUFXO1FBQ1AsSUFBSSxJQUFJLENBQUMsR0FBRyxJQUFJLElBQUksSUFBSSxJQUFJLENBQUMsR0FBRyxJQUFJLEVBQUU7WUFDbEMsSUFBSSxDQUFDLE9BQU8sQ0FBQyxJQUFJLEVBQUUsQ0FBQzs7WUFFbkIsSUFBSSxDQUFDLE9BQU8sQ0FBQyxhQUFhLENBQUMsSUFBSSxDQUFDLEdBQUcsQ0FBQyxDQUFDO0lBQzlDLENBQUM7OztZQXRCSixTQUFTLFNBQUM7Z0JBQ1AsUUFBUSxFQUFFLFdBQVc7Z0JBQ3JCLDhZQUFrQzs7YUFFckM7Ozs7WUFOUSxNQUFNOzs7b0JBVVYsS0FBSzswQkFDTCxLQUFLO21CQUNMLEtBQUs7a0JBQ0wsS0FBSzttQkFDTCxLQUFLO3NCQUNMLE1BQU07Ozs7SUFMUCxrQ0FBdUI7O0lBQ3ZCLHdDQUE2Qjs7SUFDN0IsaUNBQXNCOztJQUN0QixnQ0FBcUI7O0lBQ3JCLGlDQUFzQjs7SUFDdEIsb0NBQXVDOzs7OztJQUUzQixvQ0FBdUIiLCJzb3VyY2VzQ29udGVudCI6WyJpbXBvcnQgeyBDb21wb25lbnQsIElucHV0LCBPdXRwdXQsIEV2ZW50RW1pdHRlciB9IGZyb20gJ0Bhbmd1bGFyL2NvcmUnO1xyXG5pbXBvcnQgeyBSb3V0ZXIgfSBmcm9tICdAYW5ndWxhci9yb3V0ZXInO1xyXG5cclxuQENvbXBvbmVudCh7XHJcbiAgICBzZWxlY3RvcjogJ2luZm8tY2FyZCcsXHJcbiAgICB0ZW1wbGF0ZVVybDogJ2NhcmQuY29tcG9uZW50Lmh0bWwnLFxyXG4gICAgc3R5bGVVcmxzOiBbJ2NhcmQuY29tcG9uZW50LnNjc3MnXVxyXG59KVxyXG5cclxuZXhwb3J0IGNsYXNzIEluZm9DYXJkQ29tcG9uZW50IHtcclxuXHJcbiAgICBASW5wdXQoKSBsYWJlbDogc3RyaW5nO1xyXG4gICAgQElucHV0KCkgZGVzY3JpcHRpb246IHN0cmluZztcclxuICAgIEBJbnB1dCgpIG1hcms6IHN0cmluZztcclxuICAgIEBJbnB1dCgpIHVybDogc3RyaW5nO1xyXG4gICAgQElucHV0KCkgaWNvbjogc3RyaW5nO1xyXG4gICAgQE91dHB1dCgpIG9uY2xpY2sgPSBuZXcgRXZlbnRFbWl0dGVyKCk7XHJcblxyXG4gICAgY29uc3RydWN0b3IocHJpdmF0ZSBfcm91dGVyOiBSb3V0ZXIpIHsgfVxyXG5cclxuICAgIG9uQ2FyZENsaWNrKCkge1xyXG4gICAgICAgIGlmICh0aGlzLnVybCA9PSBudWxsIHx8IHRoaXMudXJsID09ICcnKVxyXG4gICAgICAgICAgICB0aGlzLm9uY2xpY2suZW1pdCgpO1xyXG4gICAgICAgIFxyXG4gICAgICAgIGVsc2UgdGhpcy5fcm91dGVyLm5hdmlnYXRlQnlVcmwodGhpcy51cmwpO1xyXG4gICAgfVxyXG59Il19
@@ -1,90 +0,0 @@
1
- /**
2
- * @fileoverview added by tsickle
3
- * Generated from: controls/card-menu/card-menu.component.ts
4
- * @suppress {checkTypes,constantProperty,extraRequire,missingOverride,missingRequire,missingReturn,unusedPrivateMembers,uselessCode} checked by tsc
5
- */
6
- import { Component, Input } from "@angular/core";
7
- /**
8
- * O atributo `menu` recebe uma lista responsável pela criação do menu:
9
- * ```
10
- * [{ title: string, url: string, permission: boolean }]
11
- * ```
12
- */
13
- export class InfoMenuCardComponent {
14
- constructor() {
15
- this.label = null;
16
- this.description = null;
17
- this.icon = null;
18
- this.menu = [];
19
- this.cols = 0;
20
- this.loadinit = true;
21
- this.menuRows = [];
22
- this.col = 12;
23
- this.colClass = 'col-md-';
24
- }
25
- /**
26
- * @return {?}
27
- */
28
- ngOnInit() {
29
- if (this.loadinit)
30
- this.load();
31
- }
32
- /**
33
- * @return {?}
34
- */
35
- load() {
36
- this.menuRows = new Array();
37
- this.menu = this.menu == null ? null : this.menu.filter((/**
38
- * @param {?} i
39
- * @return {?}
40
- */
41
- i => i.permission == true));
42
- if (this.menu == null || this.menu.length == 0 || this.cols == null || this.cols == 0) {
43
- this.menuRows.push(this.menu);
44
- this.colClass += this.col.toString();
45
- return;
46
- }
47
- /** @type {?} */
48
- let numberItensRow = Math.ceil(this.menu.length / this.cols);
49
- for (var i = 0; i < this.cols; i++)
50
- this.menuRows.push(this.menu.slice(i * numberItensRow, (i * numberItensRow) + numberItensRow));
51
- this.col = 12 / this.cols;
52
- this.colClass += this.col.toString();
53
- }
54
- }
55
- InfoMenuCardComponent.decorators = [
56
- { type: Component, args: [{
57
- selector: 'info-card-menu',
58
- template: "<mat-card>\r\n <mat-card-content>\r\n <h6 *ngIf=\"label != null\" [innerHTML]=\"label | translate\" ></h6>\r\n <p *ngIf=\"description != null\">{{ description | translate }}</p>\r\n\r\n <div class=\"row\">\r\n <ng-container *ngFor=\"let row of menuRows\">\r\n <mat-nav-list [ngClass]=\"colClass\">\r\n <ng-container *ngFor=\"let item of row\">\r\n <mat-list-item *ngIf=\"item.permission\" href=\"#\" [routerLink]=\"item.url\" >\r\n <a title=\"no\" title=\"{{ item.title | translate }}\" md-line>{{ item.title | translate }}</a>\r\n </mat-list-item>\r\n </ng-container>\r\n </mat-nav-list>\r\n </ng-container>\r\n </div>\r\n </mat-card-content>\r\n <mat-card-footer *ngIf=\"icon == null\">\r\n <mat-icon>{{icon}}</mat-icon>\r\n </mat-card-footer>\r\n</mat-card>",
59
- styles: [":host h6{font-size:11px;padding-bottom:10px;width:100%}:host .mat-nav-list .mat-list-item{height:40px!important}:host mat-card-footer{height:40px;overflow:hidden;position:relative}:host mat-card-footer mat-icon{bottom:36px;color:#aaa;font-size:5.71rem;opacity:.4;position:absolute;right:0;text-align:right;width:100%}"]
60
- }] }
61
- ];
62
- InfoMenuCardComponent.propDecorators = {
63
- label: [{ type: Input }],
64
- description: [{ type: Input }],
65
- icon: [{ type: Input }],
66
- menu: [{ type: Input }],
67
- cols: [{ type: Input }],
68
- loadinit: [{ type: Input }]
69
- };
70
- if (false) {
71
- /** @type {?} */
72
- InfoMenuCardComponent.prototype.label;
73
- /** @type {?} */
74
- InfoMenuCardComponent.prototype.description;
75
- /** @type {?} */
76
- InfoMenuCardComponent.prototype.icon;
77
- /** @type {?} */
78
- InfoMenuCardComponent.prototype.menu;
79
- /** @type {?} */
80
- InfoMenuCardComponent.prototype.cols;
81
- /** @type {?} */
82
- InfoMenuCardComponent.prototype.loadinit;
83
- /** @type {?} */
84
- InfoMenuCardComponent.prototype.menuRows;
85
- /** @type {?} */
86
- InfoMenuCardComponent.prototype.col;
87
- /** @type {?} */
88
- InfoMenuCardComponent.prototype.colClass;
89
- }
90
- //# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoiY2FyZC1tZW51LmNvbXBvbmVudC5qcyIsInNvdXJjZVJvb3QiOiJGOi9kZXYvSW5mbyBVdGlsaXRpZXMvSW5mbyBMaWJyYXJ5IC0gQW5ndWxhci9wcm9qZWN0cy9pbmZvLWxpYnJhcnkvc3JjLyIsInNvdXJjZXMiOlsiY29udHJvbHMvY2FyZC1tZW51L2NhcmQtbWVudS5jb21wb25lbnQudHMiXSwibmFtZXMiOltdLCJtYXBwaW5ncyI6Ijs7Ozs7QUFBQSxPQUFPLEVBQUUsU0FBUyxFQUFFLEtBQUssRUFBVSxNQUFNLGVBQWUsQ0FBQzs7Ozs7OztBQWF6RCxNQUFNLE9BQU8scUJBQXFCO0lBTGxDO1FBT2EsVUFBSyxHQUFXLElBQUksQ0FBQztRQUNyQixnQkFBVyxHQUFXLElBQUksQ0FBQztRQUMzQixTQUFJLEdBQVcsSUFBSSxDQUFDO1FBQ3BCLFNBQUksR0FBVSxFQUFFLENBQUM7UUFDakIsU0FBSSxHQUFXLENBQUMsQ0FBQztRQUNqQixhQUFRLEdBQVksSUFBSSxDQUFDO1FBRWxDLGFBQVEsR0FBVSxFQUFFLENBQUM7UUFDckIsUUFBRyxHQUFXLEVBQUUsQ0FBQztRQUNqQixhQUFRLEdBQVcsU0FBUyxDQUFDO0lBMEJqQyxDQUFDOzs7O0lBeEJHLFFBQVE7UUFDSixJQUFJLElBQUksQ0FBQyxRQUFRO1lBQ2IsSUFBSSxDQUFDLElBQUksRUFBRSxDQUFDO0lBQ3BCLENBQUM7Ozs7SUFFRCxJQUFJO1FBQ0EsSUFBSSxDQUFDLFFBQVEsR0FBRyxJQUFJLEtBQUssRUFBRSxDQUFDO1FBRTVCLElBQUksQ0FBQyxJQUFJLEdBQUcsSUFBSSxDQUFDLElBQUksSUFBSSxJQUFJLENBQUMsQ0FBQyxDQUFDLElBQUksQ0FBQyxDQUFDLENBQUMsSUFBSSxDQUFDLElBQUksQ0FBQyxNQUFNOzs7O1FBQUMsQ0FBQyxDQUFDLEVBQUUsQ0FBQyxDQUFDLENBQUMsVUFBVSxJQUFJLElBQUksRUFBQyxDQUFDO1FBRW5GLElBQUksSUFBSSxDQUFDLElBQUksSUFBSSxJQUFJLElBQUksSUFBSSxDQUFDLElBQUksQ0FBQyxNQUFNLElBQUksQ0FBQyxJQUFJLElBQUksQ0FBQyxJQUFJLElBQUksSUFBSSxJQUFJLElBQUksQ0FBQyxJQUFJLElBQUksQ0FBQyxFQUFDO1lBQ2xGLElBQUksQ0FBQyxRQUFRLENBQUMsSUFBSSxDQUFDLElBQUksQ0FBQyxJQUFJLENBQUMsQ0FBQztZQUM5QixJQUFJLENBQUMsUUFBUSxJQUFJLElBQUksQ0FBQyxHQUFHLENBQUMsUUFBUSxFQUFFLENBQUM7WUFDckMsT0FBTztTQUNWOztZQUVHLGNBQWMsR0FBRyxJQUFJLENBQUMsSUFBSSxDQUFDLElBQUksQ0FBQyxJQUFJLENBQUMsTUFBTSxHQUFHLElBQUksQ0FBQyxJQUFJLENBQUM7UUFFNUQsS0FBSyxJQUFJLENBQUMsR0FBRyxDQUFDLEVBQUUsQ0FBQyxHQUFHLElBQUksQ0FBQyxJQUFJLEVBQUUsQ0FBQyxFQUFFO1lBQzlCLElBQUksQ0FBQyxRQUFRLENBQUMsSUFBSSxDQUFDLElBQUksQ0FBQyxJQUFJLENBQUMsS0FBSyxDQUFDLENBQUMsR0FBRyxjQUFjLEVBQUUsQ0FBQyxDQUFDLEdBQUcsY0FBYyxDQUFDLEdBQUcsY0FBYyxDQUFDLENBQUMsQ0FBQztRQUVuRyxJQUFJLENBQUMsR0FBRyxHQUFHLEVBQUUsR0FBRyxJQUFJLENBQUMsSUFBSSxDQUFDO1FBQzFCLElBQUksQ0FBQyxRQUFRLElBQUksSUFBSSxDQUFDLEdBQUcsQ0FBQyxRQUFRLEVBQUUsQ0FBQztJQUN6QyxDQUFDOzs7WUF6Q0osU0FBUyxTQUFDO2dCQUNQLFFBQVEsRUFBRSxnQkFBZ0I7Z0JBQzFCLHM5QkFBdUM7O2FBRTFDOzs7b0JBR0ksS0FBSzswQkFDTCxLQUFLO21CQUNMLEtBQUs7bUJBQ0wsS0FBSzttQkFDTCxLQUFLO3VCQUNMLEtBQUs7Ozs7SUFMTixzQ0FBOEI7O0lBQzlCLDRDQUFvQzs7SUFDcEMscUNBQTZCOztJQUM3QixxQ0FBMEI7O0lBQzFCLHFDQUEwQjs7SUFDMUIseUNBQWtDOztJQUVsQyx5Q0FBcUI7O0lBQ3JCLG9DQUFpQjs7SUFDakIseUNBQTZCIiwic291cmNlc0NvbnRlbnQiOlsiaW1wb3J0IHsgQ29tcG9uZW50LCBJbnB1dCwgT25Jbml0IH0gZnJvbSBcIkBhbmd1bGFyL2NvcmVcIjtcclxuXHJcbi8qKlxyXG4gKiBPIGF0cmlidXRvIGBtZW51YCByZWNlYmUgdW1hIGxpc3RhIHJlc3BvbnPDoXZlbCBwZWxhIGNyaWHDp8OjbyBkbyBtZW51OlxyXG4gKiBgYGBcclxuICogW3sgdGl0bGU6IHN0cmluZywgdXJsOiBzdHJpbmcsIHBlcm1pc3Npb246IGJvb2xlYW4gfV1cclxuICogYGBgXHJcbiAqL1xyXG5AQ29tcG9uZW50KHtcclxuICAgIHNlbGVjdG9yOiAnaW5mby1jYXJkLW1lbnUnLFxyXG4gICAgdGVtcGxhdGVVcmw6ICdjYXJkLW1lbnUuY29tcG9uZW50Lmh0bWwnLFxyXG4gICAgc3R5bGVVcmxzOiBbJ2NhcmQtbWVudS5jb21wb25lbnQuc2NzcyddXHJcbn0pXHJcbmV4cG9ydCBjbGFzcyBJbmZvTWVudUNhcmRDb21wb25lbnQgaW1wbGVtZW50cyBPbkluaXQge1xyXG4gICAgXHJcbiAgICBASW5wdXQoKSBsYWJlbDogc3RyaW5nID0gbnVsbDtcclxuICAgIEBJbnB1dCgpIGRlc2NyaXB0aW9uOiBzdHJpbmcgPSBudWxsO1xyXG4gICAgQElucHV0KCkgaWNvbjogc3RyaW5nID0gbnVsbDtcclxuICAgIEBJbnB1dCgpIG1lbnU6IGFueVtdID0gW107XHJcbiAgICBASW5wdXQoKSBjb2xzOiBudW1iZXIgPSAwO1xyXG4gICAgQElucHV0KCkgbG9hZGluaXQ6IGJvb2xlYW4gPSB0cnVlO1xyXG5cclxuICAgIG1lbnVSb3dzOiBhbnlbXSA9IFtdO1xyXG4gICAgY29sOiBudW1iZXIgPSAxMjtcclxuICAgIGNvbENsYXNzOiBzdHJpbmcgPSAnY29sLW1kLSc7XHJcblxyXG4gICAgbmdPbkluaXQoKXtcclxuICAgICAgICBpZiAodGhpcy5sb2FkaW5pdClcclxuICAgICAgICAgICAgdGhpcy5sb2FkKCk7XHJcbiAgICB9XHJcblxyXG4gICAgbG9hZCgpIHtcclxuICAgICAgICB0aGlzLm1lbnVSb3dzID0gbmV3IEFycmF5KCk7XHJcblxyXG4gICAgICAgIHRoaXMubWVudSA9IHRoaXMubWVudSA9PSBudWxsID8gbnVsbCA6IHRoaXMubWVudS5maWx0ZXIoaSA9PiBpLnBlcm1pc3Npb24gPT0gdHJ1ZSk7XHJcblxyXG4gICAgICAgIGlmICh0aGlzLm1lbnUgPT0gbnVsbCB8fCB0aGlzLm1lbnUubGVuZ3RoID09IDAgfHwgdGhpcy5jb2xzID09IG51bGwgfHwgdGhpcy5jb2xzID09IDApe1xyXG4gICAgICAgICAgICB0aGlzLm1lbnVSb3dzLnB1c2godGhpcy5tZW51KTtcclxuICAgICAgICAgICAgdGhpcy5jb2xDbGFzcyArPSB0aGlzLmNvbC50b1N0cmluZygpO1xyXG4gICAgICAgICAgICByZXR1cm47XHJcbiAgICAgICAgfVxyXG5cclxuICAgICAgICBsZXQgbnVtYmVySXRlbnNSb3cgPSBNYXRoLmNlaWwodGhpcy5tZW51Lmxlbmd0aCAvIHRoaXMuY29scyk7XHJcbiAgICAgICAgXHJcbiAgICAgICAgZm9yICh2YXIgaSA9IDA7IGkgPCB0aGlzLmNvbHM7IGkrKylcclxuICAgICAgICAgICAgdGhpcy5tZW51Um93cy5wdXNoKHRoaXMubWVudS5zbGljZShpICogbnVtYmVySXRlbnNSb3csIChpICogbnVtYmVySXRlbnNSb3cpICsgbnVtYmVySXRlbnNSb3cpKTtcclxuXHJcbiAgICAgICAgdGhpcy5jb2wgPSAxMiAvIHRoaXMuY29scztcclxuICAgICAgICB0aGlzLmNvbENsYXNzICs9IHRoaXMuY29sLnRvU3RyaW5nKCk7XHJcbiAgICB9XHJcbn0iXX0=
@@ -1,130 +0,0 @@
1
- /**
2
- * @fileoverview added by tsickle
3
- * Generated from: controls/checkbox/checkbox.component.ts
4
- * @suppress {checkTypes,constantProperty,extraRequire,missingOverride,missingRequire,missingReturn,unusedPrivateMembers,uselessCode} checked by tsc
5
- */
6
- import { Component, Input, forwardRef } from "@angular/core";
7
- import { NG_VALUE_ACCESSOR } from "@angular/forms";
8
- export class InfoCheckboxComponent {
9
- constructor() {
10
- this.placeholder = '';
11
- this.type = null;
12
- this.min = false;
13
- this.value = false;
14
- this.disabled = false;
15
- this.checkboxValue = { true: true, false: false };
16
- this.initialized = false;
17
- }
18
- /**
19
- * @return {?}
20
- */
21
- get checked() {
22
- return this.value;
23
- }
24
- /**
25
- * @param {?} value
26
- * @return {?}
27
- */
28
- set checked(value) {
29
- if (this.initialized) {
30
- this.value = value;
31
- this.onChangeValue();
32
- }
33
- }
34
- /**
35
- * @return {?}
36
- */
37
- ngOnInit() {
38
- if (this.type != null) {
39
- /** @type {?} */
40
- let customType = this.type.split(',');
41
- this.checkboxValue.true = isNaN(Number(customType[0])) ? customType[0] : Number(customType[0]);
42
- this.checkboxValue.false = isNaN(Number(customType[1])) ? customType[1] : Number(customType[1]);
43
- }
44
- this.value = true;
45
- }
46
- /**
47
- * @param {?} modelValue
48
- * @return {?}
49
- */
50
- writeValue(modelValue) {
51
- if (modelValue === undefined || modelValue == null)
52
- this.value = false;
53
- else
54
- this.value = modelValue === this.checkboxValue.true;
55
- this.onChangeValue();
56
- }
57
- /**
58
- * @param {?} fn
59
- * @return {?}
60
- */
61
- registerOnChange(fn) {
62
- this.onChange = fn;
63
- }
64
- /**
65
- * @param {?} fn
66
- * @return {?}
67
- */
68
- registerOnTouched(fn) {
69
- this.initialized = true;
70
- this.onTouched = fn;
71
- }
72
- /**
73
- * @param {?} isDisabled
74
- * @return {?}
75
- */
76
- setDisabledState(isDisabled) {
77
- this.disabled = isDisabled;
78
- }
79
- /**
80
- * @return {?}
81
- */
82
- onChangeValue() {
83
- /** @type {?} */
84
- let result = this.value ? this.checkboxValue.true : this.checkboxValue.false;
85
- if (this.onChange != null)
86
- this.onChange(result);
87
- }
88
- }
89
- InfoCheckboxComponent.decorators = [
90
- { type: Component, args: [{
91
- selector: 'info-checkbox',
92
- template: "<section class=\"info-checkbox-content mat-form-field-margin \" [ngClass]=\"{ 'info-checkbox-min': min }\">\r\n <mat-checkbox [(ngModel)]=\"value\" (change)=\"onChangeValue()\" [disabled]=\"disabled\"><div [innerHtml]=\"placeholder | translate\"></div></mat-checkbox>\r\n</section>",
93
- providers: [{
94
- provide: NG_VALUE_ACCESSOR,
95
- useExisting: forwardRef((/**
96
- * @return {?}
97
- */
98
- () => InfoCheckboxComponent)),
99
- multi: true
100
- }],
101
- styles: ['.info-checkbox-content { padding-top: 20px; } .info-checkbox-min { padding-top: 0 !important; margin: 0 0 13px !important; } ']
102
- }] }
103
- ];
104
- InfoCheckboxComponent.propDecorators = {
105
- placeholder: [{ type: Input }],
106
- type: [{ type: Input }],
107
- min: [{ type: Input }],
108
- checked: [{ type: Input }]
109
- };
110
- if (false) {
111
- /** @type {?} */
112
- InfoCheckboxComponent.prototype.placeholder;
113
- /** @type {?} */
114
- InfoCheckboxComponent.prototype.type;
115
- /** @type {?} */
116
- InfoCheckboxComponent.prototype.min;
117
- /** @type {?} */
118
- InfoCheckboxComponent.prototype.value;
119
- /** @type {?} */
120
- InfoCheckboxComponent.prototype.disabled;
121
- /** @type {?} */
122
- InfoCheckboxComponent.prototype.checkboxValue;
123
- /** @type {?} */
124
- InfoCheckboxComponent.prototype.initialized;
125
- /** @type {?} */
126
- InfoCheckboxComponent.prototype.onChange;
127
- /** @type {?} */
128
- InfoCheckboxComponent.prototype.onTouched;
129
- }
130
- //# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoiY2hlY2tib3guY29tcG9uZW50LmpzIiwic291cmNlUm9vdCI6IkY6L2Rldi9JbmZvIFV0aWxpdGllcy9JbmZvIExpYnJhcnkgLSBBbmd1bGFyL3Byb2plY3RzL2luZm8tbGlicmFyeS9zcmMvIiwic291cmNlcyI6WyJjb250cm9scy9jaGVja2JveC9jaGVja2JveC5jb21wb25lbnQudHMiXSwibmFtZXMiOltdLCJtYXBwaW5ncyI6Ijs7Ozs7QUFBQSxPQUFPLEVBQUUsU0FBUyxFQUFVLEtBQUssRUFBRSxVQUFVLEVBQUUsTUFBTSxlQUFlLENBQUM7QUFDckUsT0FBTyxFQUFFLGlCQUFpQixFQUF3QixNQUFNLGdCQUFnQixDQUFDO0FBWXpFLE1BQU0sT0FBTyxxQkFBcUI7SUFWbEM7UUFZYSxnQkFBVyxHQUFXLEVBQUUsQ0FBQztRQUN6QixTQUFJLEdBQVcsSUFBSSxDQUFDO1FBQ3BCLFFBQUcsR0FBWSxLQUFLLENBQUM7UUFFOUIsVUFBSyxHQUFZLEtBQUssQ0FBQztRQUN2QixhQUFRLEdBQVksS0FBSyxDQUFDO1FBQzFCLGtCQUFhLEdBQThCLEVBQUUsSUFBSSxFQUFFLElBQUksRUFBRSxLQUFLLEVBQUUsS0FBSyxFQUFFLENBQUM7UUFDeEUsZ0JBQVcsR0FBWSxLQUFLLENBQUM7SUF5RGpDLENBQUM7Ozs7SUFwREcsSUFDSSxPQUFPO1FBQ1AsT0FBTyxJQUFJLENBQUMsS0FBSyxDQUFDO0lBQ3RCLENBQUM7Ozs7O0lBRUQsSUFBSSxPQUFPLENBQUMsS0FBSztRQUViLElBQUksSUFBSSxDQUFDLFdBQVcsRUFBQztZQUNqQixJQUFJLENBQUMsS0FBSyxHQUFHLEtBQUssQ0FBQztZQUNuQixJQUFJLENBQUMsYUFBYSxFQUFFLENBQUM7U0FDeEI7SUFDTCxDQUFDOzs7O0lBRUQsUUFBUTtRQUNKLElBQUksSUFBSSxDQUFDLElBQUksSUFBSSxJQUFJLEVBQUU7O2dCQUNmLFVBQVUsR0FBRyxJQUFJLENBQUMsSUFBSSxDQUFDLEtBQUssQ0FBQyxHQUFHLENBQUM7WUFDckMsSUFBSSxDQUFDLGFBQWEsQ0FBQyxJQUFJLEdBQUcsS0FBSyxDQUFDLE1BQU0sQ0FBQyxVQUFVLENBQUMsQ0FBQyxDQUFDLENBQUMsQ0FBQyxDQUFDLENBQUMsQ0FBQyxVQUFVLENBQUMsQ0FBQyxDQUFDLENBQUMsQ0FBQyxDQUFDLE1BQU0sQ0FBQyxVQUFVLENBQUMsQ0FBQyxDQUFDLENBQUMsQ0FBQztZQUMvRixJQUFJLENBQUMsYUFBYSxDQUFDLEtBQUssR0FBRyxLQUFLLENBQUMsTUFBTSxDQUFDLFVBQVUsQ0FBQyxDQUFDLENBQUMsQ0FBQyxDQUFDLENBQUMsQ0FBQyxDQUFDLFVBQVUsQ0FBQyxDQUFDLENBQUMsQ0FBQyxDQUFDLENBQUMsTUFBTSxDQUFDLFVBQVUsQ0FBQyxDQUFDLENBQUMsQ0FBQyxDQUFDO1NBQ25HO1FBRUQsSUFBSSxDQUFDLEtBQUssR0FBRyxJQUFJLENBQUM7SUFDdEIsQ0FBQzs7Ozs7SUFFRCxVQUFVLENBQUMsVUFBZTtRQUV0QixJQUFJLFVBQVUsS0FBSyxTQUFTLElBQUksVUFBVSxJQUFJLElBQUk7WUFDOUMsSUFBSSxDQUFDLEtBQUssR0FBRyxLQUFLLENBQUM7O1lBRWxCLElBQUksQ0FBQyxLQUFLLEdBQUcsVUFBVSxLQUFLLElBQUksQ0FBQyxhQUFhLENBQUMsSUFBSSxDQUFDO1FBRXpELElBQUksQ0FBQyxhQUFhLEVBQUUsQ0FBQztJQUN6QixDQUFDOzs7OztJQUVELGdCQUFnQixDQUFDLEVBQU87UUFDcEIsSUFBSSxDQUFDLFFBQVEsR0FBRyxFQUFFLENBQUM7SUFDdkIsQ0FBQzs7Ozs7SUFFRCxpQkFBaUIsQ0FBQyxFQUFPO1FBQ3JCLElBQUksQ0FBQyxXQUFXLEdBQUcsSUFBSSxDQUFDO1FBQ3hCLElBQUksQ0FBQyxTQUFTLEdBQUcsRUFBRSxDQUFDO0lBQ3hCLENBQUM7Ozs7O0lBRUQsZ0JBQWdCLENBQUUsVUFBbUI7UUFDakMsSUFBSSxDQUFDLFFBQVEsR0FBRyxVQUFVLENBQUM7SUFDL0IsQ0FBQzs7OztJQUVELGFBQWE7O1lBQ0wsTUFBTSxHQUFHLElBQUksQ0FBQyxLQUFLLENBQUMsQ0FBQyxDQUFDLElBQUksQ0FBQyxhQUFhLENBQUMsSUFBSSxDQUFDLENBQUMsQ0FBQyxJQUFJLENBQUMsYUFBYSxDQUFDLEtBQUs7UUFFNUUsSUFBSSxJQUFJLENBQUMsUUFBUSxJQUFJLElBQUk7WUFDckIsSUFBSSxDQUFDLFFBQVEsQ0FBQyxNQUFNLENBQUMsQ0FBQztJQUM5QixDQUFDOzs7WUEzRUosU0FBUyxTQUFDO2dCQUNQLFFBQVEsRUFBRSxlQUFlO2dCQUN6Qix3U0FBc0M7Z0JBRXRDLFNBQVMsRUFBRSxDQUFDO3dCQUNSLE9BQU8sRUFBRSxpQkFBaUI7d0JBQzFCLFdBQVcsRUFBRSxVQUFVOzs7d0JBQUMsR0FBRyxFQUFFLENBQUMscUJBQXFCLEVBQUM7d0JBQ3BELEtBQUssRUFBRSxJQUFJO3FCQUNkLENBQUM7eUJBTE8sK0hBQStIO2FBTTNJOzs7MEJBR0ksS0FBSzttQkFDTCxLQUFLO2tCQUNMLEtBQUs7c0JBVUwsS0FBSzs7OztJQVpOLDRDQUFrQzs7SUFDbEMscUNBQTZCOztJQUM3QixvQ0FBOEI7O0lBRTlCLHNDQUF1Qjs7SUFDdkIseUNBQTBCOztJQUMxQiw4Q0FBd0U7O0lBQ3hFLDRDQUE2Qjs7SUFFN0IseUNBQWM7O0lBQ2QsMENBQWUiLCJzb3VyY2VzQ29udGVudCI6WyJpbXBvcnQgeyBDb21wb25lbnQsIE9uSW5pdCwgSW5wdXQsIGZvcndhcmRSZWYgfSBmcm9tIFwiQGFuZ3VsYXIvY29yZVwiO1xyXG5pbXBvcnQgeyBOR19WQUxVRV9BQ0NFU1NPUiwgQ29udHJvbFZhbHVlQWNjZXNzb3IgfSBmcm9tIFwiQGFuZ3VsYXIvZm9ybXNcIjtcclxuXHJcbkBDb21wb25lbnQoe1xyXG4gICAgc2VsZWN0b3I6ICdpbmZvLWNoZWNrYm94JyxcclxuICAgIHRlbXBsYXRlVXJsOiAnY2hlY2tib3guY29tcG9uZW50Lmh0bWwnLFxyXG4gICAgc3R5bGVzOiBbJy5pbmZvLWNoZWNrYm94LWNvbnRlbnQgeyBwYWRkaW5nLXRvcDogMjBweDsgfSAuaW5mby1jaGVja2JveC1taW4geyBwYWRkaW5nLXRvcDogMCAhaW1wb3J0YW50OyBtYXJnaW46IDAgMCAxM3B4ICFpbXBvcnRhbnQ7IH0gJ10sXHJcbiAgICBwcm92aWRlcnM6IFt7XHJcbiAgICAgICAgcHJvdmlkZTogTkdfVkFMVUVfQUNDRVNTT1IsXHJcbiAgICAgICAgdXNlRXhpc3Rpbmc6IGZvcndhcmRSZWYoKCkgPT4gSW5mb0NoZWNrYm94Q29tcG9uZW50KSxcclxuICAgICAgICBtdWx0aTogdHJ1ZVxyXG4gICAgfV1cclxufSlcclxuZXhwb3J0IGNsYXNzIEluZm9DaGVja2JveENvbXBvbmVudCBpbXBsZW1lbnRzIE9uSW5pdCwgQ29udHJvbFZhbHVlQWNjZXNzb3Ige1xyXG5cclxuICAgIEBJbnB1dCgpIHBsYWNlaG9sZGVyOiBzdHJpbmcgPSAnJztcclxuICAgIEBJbnB1dCgpIHR5cGU6IHN0cmluZyA9IG51bGw7XHJcbiAgICBASW5wdXQoKSBtaW46IGJvb2xlYW4gPSBmYWxzZTtcclxuXHJcbiAgICB2YWx1ZTogYm9vbGVhbiA9IGZhbHNlO1xyXG4gICAgZGlzYWJsZWQ6IGJvb2xlYW4gPSBmYWxzZTtcclxuICAgIGNoZWNrYm94VmFsdWU6IHsgdHJ1ZTogYW55LCBmYWxzZTogYW55IH0gPSB7IHRydWU6IHRydWUsIGZhbHNlOiBmYWxzZSB9O1xyXG4gICAgaW5pdGlhbGl6ZWQ6IGJvb2xlYW4gPSBmYWxzZTtcclxuXHJcbiAgICBvbkNoYW5nZTogYW55O1xyXG4gICAgb25Ub3VjaGVkOiBhbnk7XHJcblxyXG4gICAgQElucHV0KClcclxuICAgIGdldCBjaGVja2VkKCl7XHJcbiAgICAgICAgcmV0dXJuIHRoaXMudmFsdWU7XHJcbiAgICB9XHJcblxyXG4gICAgc2V0IGNoZWNrZWQodmFsdWUpIHtcclxuXHJcbiAgICAgICAgaWYgKHRoaXMuaW5pdGlhbGl6ZWQpe1xyXG4gICAgICAgICAgICB0aGlzLnZhbHVlID0gdmFsdWU7XHJcbiAgICAgICAgICAgIHRoaXMub25DaGFuZ2VWYWx1ZSgpO1xyXG4gICAgICAgIH1cclxuICAgIH1cclxuXHJcbiAgICBuZ09uSW5pdCgpIHtcclxuICAgICAgICBpZiAodGhpcy50eXBlICE9IG51bGwpIHtcclxuICAgICAgICAgICAgbGV0IGN1c3RvbVR5cGUgPSB0aGlzLnR5cGUuc3BsaXQoJywnKTtcclxuICAgICAgICAgICAgdGhpcy5jaGVja2JveFZhbHVlLnRydWUgPSBpc05hTihOdW1iZXIoY3VzdG9tVHlwZVswXSkpID8gY3VzdG9tVHlwZVswXSA6IE51bWJlcihjdXN0b21UeXBlWzBdKTtcclxuICAgICAgICAgICAgdGhpcy5jaGVja2JveFZhbHVlLmZhbHNlID0gaXNOYU4oTnVtYmVyKGN1c3RvbVR5cGVbMV0pKSA/IGN1c3RvbVR5cGVbMV0gOiBOdW1iZXIoY3VzdG9tVHlwZVsxXSk7XHJcbiAgICAgICAgfVxyXG5cclxuICAgICAgICB0aGlzLnZhbHVlID0gdHJ1ZTtcclxuICAgIH1cclxuXHJcbiAgICB3cml0ZVZhbHVlKG1vZGVsVmFsdWU6IGFueSk6IHZvaWQge1xyXG4gICAgICAgIFxyXG4gICAgICAgIGlmIChtb2RlbFZhbHVlID09PSB1bmRlZmluZWQgfHwgbW9kZWxWYWx1ZSA9PSBudWxsKVxyXG4gICAgICAgICAgICB0aGlzLnZhbHVlID0gZmFsc2U7XHJcblxyXG4gICAgICAgIGVsc2UgdGhpcy52YWx1ZSA9IG1vZGVsVmFsdWUgPT09IHRoaXMuY2hlY2tib3hWYWx1ZS50cnVlO1xyXG5cclxuICAgICAgICB0aGlzLm9uQ2hhbmdlVmFsdWUoKTtcclxuICAgIH1cclxuXHJcbiAgICByZWdpc3Rlck9uQ2hhbmdlKGZuOiBhbnkpOiB2b2lkIHtcclxuICAgICAgICB0aGlzLm9uQ2hhbmdlID0gZm47XHJcbiAgICB9XHJcblxyXG4gICAgcmVnaXN0ZXJPblRvdWNoZWQoZm46IGFueSk6IHZvaWQge1xyXG4gICAgICAgIHRoaXMuaW5pdGlhbGl6ZWQgPSB0cnVlO1xyXG4gICAgICAgIHRoaXMub25Ub3VjaGVkID0gZm47XHJcbiAgICB9XHJcblxyXG4gICAgc2V0RGlzYWJsZWRTdGF0ZT8oaXNEaXNhYmxlZDogYm9vbGVhbik6IHZvaWQge1xyXG4gICAgICAgIHRoaXMuZGlzYWJsZWQgPSBpc0Rpc2FibGVkO1xyXG4gICAgfVxyXG5cclxuICAgIG9uQ2hhbmdlVmFsdWUoKSB7XHJcbiAgICAgICAgbGV0IHJlc3VsdCA9IHRoaXMudmFsdWUgPyB0aGlzLmNoZWNrYm94VmFsdWUudHJ1ZSA6IHRoaXMuY2hlY2tib3hWYWx1ZS5mYWxzZTtcclxuXHJcbiAgICAgICAgaWYgKHRoaXMub25DaGFuZ2UgIT0gbnVsbClcclxuICAgICAgICAgICAgdGhpcy5vbkNoYW5nZShyZXN1bHQpO1xyXG4gICAgfVxyXG59Il19