@po-ui/ng-components 6.11.0 → 6.12.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 (51) hide show
  1. package/esm2020/lib/components/po-button/po-button-base.component.mjs +31 -8
  2. package/esm2020/lib/components/po-button/po-button.component.mjs +4 -4
  3. package/esm2020/lib/components/po-field/index.mjs +2 -1
  4. package/esm2020/lib/components/po-field/po-checkbox/po-checkbox.module.mjs +20 -0
  5. package/esm2020/lib/components/po-field/po-field.module.mjs +15 -13
  6. package/esm2020/lib/components/po-menu/po-menu-base.component.mjs +46 -6
  7. package/esm2020/lib/components/po-menu/po-menu.component.mjs +5 -5
  8. package/esm2020/lib/components/po-table/po-table-base.component.mjs +6 -2
  9. package/esm2020/lib/components/po-table/po-table-column-manager/po-table-column-manager.component.mjs +17 -3
  10. package/esm2020/lib/components/po-table/po-table-detail/po-table-detail.component.mjs +40 -40
  11. package/esm2020/lib/components/po-table/po-table.component.mjs +441 -438
  12. package/esm2020/lib/components/po-table/po-table.module.mjs +12 -4
  13. package/esm2020/lib/services/po-notification/po-notification-base.service.mjs +6 -4
  14. package/esm2020/lib/services/po-notification/po-notification.interface.mjs +1 -1
  15. package/esm2020/lib/services/po-notification/po-notification.module.mjs +6 -4
  16. package/esm2020/lib/services/po-notification/po-notification.service.mjs +3 -2
  17. package/esm2020/lib/services/po-notification/po-toaster/po-toaster.component.mjs +49 -32
  18. package/esm2020/lib/services/po-notification/po-toaster/po-toaster.literals.mjs +15 -0
  19. package/fesm2015/po-ui-ng-components.mjs +968 -840
  20. package/fesm2015/po-ui-ng-components.mjs.map +1 -1
  21. package/fesm2020/po-ui-ng-components.mjs +960 -825
  22. package/fesm2020/po-ui-ng-components.mjs.map +1 -1
  23. package/lib/components/po-button/po-button-base.component.d.ts +16 -6
  24. package/lib/components/po-field/index.d.ts +1 -0
  25. package/lib/components/po-field/po-checkbox/po-checkbox.module.d.ts +9 -0
  26. package/lib/components/po-field/po-field.module.d.ts +54 -54
  27. package/lib/components/po-menu/po-menu-base.component.d.ts +19 -1
  28. package/lib/components/po-table/po-table-base.component.d.ts +2 -0
  29. package/lib/components/po-table/po-table-column-manager/po-table-column-manager.component.d.ts +3 -0
  30. package/lib/components/po-table/po-table.component.d.ts +2 -0
  31. package/lib/components/po-table/po-table.module.d.ts +14 -12
  32. package/lib/services/po-notification/po-notification-base.service.d.ts +4 -2
  33. package/lib/services/po-notification/po-notification.interface.d.ts +5 -1
  34. package/lib/services/po-notification/po-notification.module.d.ts +3 -1
  35. package/lib/services/po-notification/po-toaster/po-toaster.component.d.ts +5 -1
  36. package/lib/services/po-notification/po-toaster/po-toaster.literals.d.ts +14 -0
  37. package/package.json +4 -4
  38. package/po-ui-ng-components-6.12.0.tgz +0 -0
  39. package/schematics/ng-add/index.js +1 -1
  40. package/schematics/ng-add/index.spec.js +5 -5
  41. package/schematics/ng-generate/po-page-default/index.spec.js +12 -12
  42. package/schematics/ng-generate/po-page-detail/index.spec.js +12 -12
  43. package/schematics/ng-generate/po-page-edit/index.spec.js +12 -12
  44. package/schematics/ng-generate/po-page-list/index.spec.js +12 -12
  45. package/schematics/ng-generate/sidemenu/index.spec.js +4 -4
  46. package/schematics/ng-update/v2/index.js +1 -1
  47. package/schematics/ng-update/v3/index.js +1 -1
  48. package/schematics/ng-update/v4/index.js +1 -1
  49. package/schematics/ng-update/v5/index.js +1 -1
  50. package/schematics/ng-update/v6/index.js +1 -1
  51. package/po-ui-ng-components-6.11.0.tgz +0 -0
@@ -2,7 +2,9 @@ import { Component, EventEmitter, Input, Output } from '@angular/core';
2
2
  import { capitalizeFirstLetter, isTypeof } from '../../../utils/util';
3
3
  import * as i0 from "@angular/core";
4
4
  import * as i1 from "@angular/common";
5
- import * as i2 from "../../../pipes/po-time/po-time.pipe";
5
+ import * as i2 from "../../po-field/po-checkbox/po-checkbox.component";
6
+ import * as i3 from "@angular/forms";
7
+ import * as i4 from "../../../pipes/po-time/po-time.pipe";
6
8
  function PoTableDetailComponent_thead_1_th_2_Template(rf, ctx) { if (rf & 1) {
7
9
  i0.ɵɵelement(0, "th", 6);
8
10
  } }
@@ -33,29 +35,27 @@ function PoTableDetailComponent_tr_3_ng_container_1_Template(rf, ctx) { if (rf &
33
35
  const _r12 = i0.ɵɵgetCurrentView();
34
36
  i0.ɵɵelementContainerStart(0);
35
37
  i0.ɵɵelement(1, "td", 12);
36
- i0.ɵɵelementStart(2, "td", 13);
37
- i0.ɵɵelement(3, "input", 14);
38
- i0.ɵɵelementStart(4, "label", 15);
39
- i0.ɵɵlistener("click", function PoTableDetailComponent_tr_3_ng_container_1_Template_label_click_4_listener() { i0.ɵɵrestoreView(_r12); const item_r5 = i0.ɵɵnextContext().$implicit; const ctx_r10 = i0.ɵɵnextContext(); return ctx_r10.onSelectRow(item_r5); });
38
+ i0.ɵɵelementStart(2, "td", 13)(3, "po-checkbox", 14);
39
+ i0.ɵɵlistener("click", function PoTableDetailComponent_tr_3_ng_container_1_Template_po_checkbox_click_3_listener() { i0.ɵɵrestoreView(_r12); const item_r5 = i0.ɵɵnextContext().$implicit; const ctx_r10 = i0.ɵɵnextContext(); return ctx_r10.onSelectRow(item_r5); })("p-change", function PoTableDetailComponent_tr_3_ng_container_1_Template_po_checkbox_p_change_3_listener() { i0.ɵɵrestoreView(_r12); const item_r5 = i0.ɵɵnextContext().$implicit; const ctx_r13 = i0.ɵɵnextContext(); return ctx_r13.onSelectRow(item_r5); })("ngModelChange", function PoTableDetailComponent_tr_3_ng_container_1_Template_po_checkbox_ngModelChange_3_listener($event) { i0.ɵɵrestoreView(_r12); const item_r5 = i0.ɵɵnextContext().$implicit; return item_r5.$selected = $event; });
40
40
  i0.ɵɵelementEnd()();
41
41
  i0.ɵɵelementContainerEnd();
42
42
  } if (rf & 2) {
43
43
  const item_r5 = i0.ɵɵnextContext().$implicit;
44
44
  i0.ɵɵadvance(3);
45
- i0.ɵɵclassProp("po-table-checkbox-checked", item_r5.$selected);
45
+ i0.ɵɵproperty("ngModel", item_r5.$selected);
46
46
  } }
47
47
  function PoTableDetailComponent_tr_3_ng_template_2_Template(rf, ctx) { if (rf & 1) {
48
- i0.ɵɵelement(0, "td", 16);
48
+ i0.ɵɵelement(0, "td", 15);
49
49
  } }
50
50
  function PoTableDetailComponent_tr_3_td_4_strong_1_Template(rf, ctx) { if (rf & 1) {
51
51
  i0.ɵɵelementStart(0, "strong");
52
52
  i0.ɵɵtext(1);
53
53
  i0.ɵɵelementEnd();
54
54
  } if (rf & 2) {
55
- const detail_r14 = i0.ɵɵnextContext().$implicit;
56
- const ctx_r15 = i0.ɵɵnextContext(2);
55
+ const detail_r18 = i0.ɵɵnextContext().$implicit;
56
+ const ctx_r19 = i0.ɵɵnextContext(2);
57
57
  i0.ɵɵadvance(1);
58
- i0.ɵɵtextInterpolate1(" ", ctx_r15.getColumnTitleLabel(detail_r14), ": ");
58
+ i0.ɵɵtextInterpolate1(" ", ctx_r19.getColumnTitleLabel(detail_r18), ": ");
59
59
  } }
60
60
  function PoTableDetailComponent_tr_3_td_4_span_3_Template(rf, ctx) { if (rf & 1) {
61
61
  i0.ɵɵelementStart(0, "span");
@@ -63,10 +63,10 @@ function PoTableDetailComponent_tr_3_td_4_span_3_Template(rf, ctx) { if (rf & 1)
63
63
  i0.ɵɵpipe(2, "currency");
64
64
  i0.ɵɵelementEnd();
65
65
  } if (rf & 2) {
66
- const detail_r14 = i0.ɵɵnextContext().$implicit;
66
+ const detail_r18 = i0.ɵɵnextContext().$implicit;
67
67
  const item_r5 = i0.ɵɵnextContext().$implicit;
68
68
  i0.ɵɵadvance(1);
69
- i0.ɵɵtextInterpolate(i0.ɵɵpipeBind4(2, 1, item_r5[detail_r14.property], detail_r14.format, "symbol", "1.2-2"));
69
+ i0.ɵɵtextInterpolate(i0.ɵɵpipeBind4(2, 1, item_r5[detail_r18.property], detail_r18.format, "symbol", "1.2-2"));
70
70
  } }
71
71
  function PoTableDetailComponent_tr_3_td_4_span_4_Template(rf, ctx) { if (rf & 1) {
72
72
  i0.ɵɵelementStart(0, "span");
@@ -74,10 +74,10 @@ function PoTableDetailComponent_tr_3_td_4_span_4_Template(rf, ctx) { if (rf & 1)
74
74
  i0.ɵɵpipe(2, "date");
75
75
  i0.ɵɵelementEnd();
76
76
  } if (rf & 2) {
77
- const detail_r14 = i0.ɵɵnextContext().$implicit;
77
+ const detail_r18 = i0.ɵɵnextContext().$implicit;
78
78
  const item_r5 = i0.ɵɵnextContext().$implicit;
79
79
  i0.ɵɵadvance(1);
80
- i0.ɵɵtextInterpolate(i0.ɵɵpipeBind2(2, 1, item_r5[detail_r14.property], detail_r14.format || "dd/MM/yyyy"));
80
+ i0.ɵɵtextInterpolate(i0.ɵɵpipeBind2(2, 1, item_r5[detail_r18.property], detail_r18.format || "dd/MM/yyyy"));
81
81
  } }
82
82
  function PoTableDetailComponent_tr_3_td_4_span_5_Template(rf, ctx) { if (rf & 1) {
83
83
  i0.ɵɵelementStart(0, "span");
@@ -85,10 +85,10 @@ function PoTableDetailComponent_tr_3_td_4_span_5_Template(rf, ctx) { if (rf & 1)
85
85
  i0.ɵɵpipe(2, "po_time");
86
86
  i0.ɵɵelementEnd();
87
87
  } if (rf & 2) {
88
- const detail_r14 = i0.ɵɵnextContext().$implicit;
88
+ const detail_r18 = i0.ɵɵnextContext().$implicit;
89
89
  const item_r5 = i0.ɵɵnextContext().$implicit;
90
90
  i0.ɵɵadvance(1);
91
- i0.ɵɵtextInterpolate(i0.ɵɵpipeBind2(2, 1, item_r5[detail_r14.property], detail_r14.format || "HH:mm:ss.ffffff"));
91
+ i0.ɵɵtextInterpolate(i0.ɵɵpipeBind2(2, 1, item_r5[detail_r18.property], detail_r18.format || "HH:mm:ss.ffffff"));
92
92
  } }
93
93
  function PoTableDetailComponent_tr_3_td_4_span_6_Template(rf, ctx) { if (rf & 1) {
94
94
  i0.ɵɵelementStart(0, "span");
@@ -96,53 +96,53 @@ function PoTableDetailComponent_tr_3_td_4_span_6_Template(rf, ctx) { if (rf & 1)
96
96
  i0.ɵɵpipe(2, "date");
97
97
  i0.ɵɵelementEnd();
98
98
  } if (rf & 2) {
99
- const detail_r14 = i0.ɵɵnextContext().$implicit;
99
+ const detail_r18 = i0.ɵɵnextContext().$implicit;
100
100
  const item_r5 = i0.ɵɵnextContext().$implicit;
101
101
  i0.ɵɵadvance(1);
102
- i0.ɵɵtextInterpolate1(" ", i0.ɵɵpipeBind2(2, 1, item_r5[detail_r14.property], detail_r14.format || "dd/MM/yyyy HH:mm:ss"), " ");
102
+ i0.ɵɵtextInterpolate1(" ", i0.ɵɵpipeBind2(2, 1, item_r5[detail_r18.property], detail_r18.format || "dd/MM/yyyy HH:mm:ss"), " ");
103
103
  } }
104
104
  function PoTableDetailComponent_tr_3_td_4_span_7_Template(rf, ctx) { if (rf & 1) {
105
105
  i0.ɵɵelementStart(0, "span");
106
106
  i0.ɵɵtext(1);
107
107
  i0.ɵɵelementEnd();
108
108
  } if (rf & 2) {
109
- const detail_r14 = i0.ɵɵnextContext().$implicit;
109
+ const detail_r18 = i0.ɵɵnextContext().$implicit;
110
110
  const item_r5 = i0.ɵɵnextContext().$implicit;
111
- const ctx_r20 = i0.ɵɵnextContext();
111
+ const ctx_r24 = i0.ɵɵnextContext();
112
112
  i0.ɵɵadvance(1);
113
- i0.ɵɵtextInterpolate(ctx_r20.formatNumberDetail(item_r5[detail_r14.property], detail_r14.format));
113
+ i0.ɵɵtextInterpolate(ctx_r24.formatNumberDetail(item_r5[detail_r18.property], detail_r18.format));
114
114
  } }
115
115
  function PoTableDetailComponent_tr_3_td_4_span_8_Template(rf, ctx) { if (rf & 1) {
116
116
  i0.ɵɵelementStart(0, "span");
117
117
  i0.ɵɵtext(1);
118
118
  i0.ɵɵelementEnd();
119
119
  } if (rf & 2) {
120
- const detail_r14 = i0.ɵɵnextContext().$implicit;
120
+ const detail_r18 = i0.ɵɵnextContext().$implicit;
121
121
  const item_r5 = i0.ɵɵnextContext().$implicit;
122
122
  i0.ɵɵadvance(1);
123
- i0.ɵɵtextInterpolate(item_r5[detail_r14.property]);
123
+ i0.ɵɵtextInterpolate(item_r5[detail_r18.property]);
124
124
  } }
125
125
  function PoTableDetailComponent_tr_3_td_4_Template(rf, ctx) { if (rf & 1) {
126
- const _r36 = i0.ɵɵgetCurrentView();
127
- i0.ɵɵelementStart(0, "td", 17);
128
- i0.ɵɵlistener("click", function PoTableDetailComponent_tr_3_td_4_Template_td_click_0_listener() { i0.ɵɵrestoreView(_r36); const item_r5 = i0.ɵɵnextContext().$implicit; const ctx_r35 = i0.ɵɵnextContext(); return ctx_r35.isSelectable ? ctx_r35.onSelectRow(item_r5) : "javascript:;"; });
126
+ const _r40 = i0.ɵɵgetCurrentView();
127
+ i0.ɵɵelementStart(0, "td", 16);
128
+ i0.ɵɵlistener("click", function PoTableDetailComponent_tr_3_td_4_Template_td_click_0_listener() { i0.ɵɵrestoreView(_r40); const item_r5 = i0.ɵɵnextContext().$implicit; const ctx_r39 = i0.ɵɵnextContext(); return ctx_r39.isSelectable ? ctx_r39.onSelectRow(item_r5) : "javascript:;"; });
129
129
  i0.ɵɵtemplate(1, PoTableDetailComponent_tr_3_td_4_strong_1_Template, 2, 1, "strong", 1);
130
- i0.ɵɵelementContainerStart(2, 18);
131
- i0.ɵɵtemplate(3, PoTableDetailComponent_tr_3_td_4_span_3_Template, 3, 6, "span", 19);
132
- i0.ɵɵtemplate(4, PoTableDetailComponent_tr_3_td_4_span_4_Template, 3, 4, "span", 19);
133
- i0.ɵɵtemplate(5, PoTableDetailComponent_tr_3_td_4_span_5_Template, 3, 4, "span", 19);
134
- i0.ɵɵtemplate(6, PoTableDetailComponent_tr_3_td_4_span_6_Template, 3, 4, "span", 19);
135
- i0.ɵɵtemplate(7, PoTableDetailComponent_tr_3_td_4_span_7_Template, 2, 1, "span", 19);
136
- i0.ɵɵtemplate(8, PoTableDetailComponent_tr_3_td_4_span_8_Template, 2, 1, "span", 20);
130
+ i0.ɵɵelementContainerStart(2, 17);
131
+ i0.ɵɵtemplate(3, PoTableDetailComponent_tr_3_td_4_span_3_Template, 3, 6, "span", 18);
132
+ i0.ɵɵtemplate(4, PoTableDetailComponent_tr_3_td_4_span_4_Template, 3, 4, "span", 18);
133
+ i0.ɵɵtemplate(5, PoTableDetailComponent_tr_3_td_4_span_5_Template, 3, 4, "span", 18);
134
+ i0.ɵɵtemplate(6, PoTableDetailComponent_tr_3_td_4_span_6_Template, 3, 4, "span", 18);
135
+ i0.ɵɵtemplate(7, PoTableDetailComponent_tr_3_td_4_span_7_Template, 2, 1, "span", 18);
136
+ i0.ɵɵtemplate(8, PoTableDetailComponent_tr_3_td_4_span_8_Template, 2, 1, "span", 19);
137
137
  i0.ɵɵelementContainerEnd();
138
138
  i0.ɵɵelementEnd();
139
139
  } if (rf & 2) {
140
- const detail_r14 = ctx.$implicit;
140
+ const detail_r18 = ctx.$implicit;
141
141
  const ctx_r9 = i0.ɵɵnextContext(2);
142
142
  i0.ɵɵadvance(1);
143
143
  i0.ɵɵproperty("ngIf", ctx_r9.typeHeaderInline);
144
144
  i0.ɵɵadvance(1);
145
- i0.ɵɵproperty("ngSwitch", detail_r14.type);
145
+ i0.ɵɵproperty("ngSwitch", detail_r18.type);
146
146
  i0.ɵɵadvance(1);
147
147
  i0.ɵɵproperty("ngSwitchCase", "currency");
148
148
  i0.ɵɵadvance(1);
@@ -156,7 +156,7 @@ function PoTableDetailComponent_tr_3_td_4_Template(rf, ctx) { if (rf & 1) {
156
156
  } }
157
157
  function PoTableDetailComponent_tr_3_Template(rf, ctx) { if (rf & 1) {
158
158
  i0.ɵɵelementStart(0, "tr", 8);
159
- i0.ɵɵtemplate(1, PoTableDetailComponent_tr_3_ng_container_1_Template, 5, 2, "ng-container", 9);
159
+ i0.ɵɵtemplate(1, PoTableDetailComponent_tr_3_ng_container_1_Template, 4, 1, "ng-container", 9);
160
160
  i0.ɵɵtemplate(2, PoTableDetailComponent_tr_3_ng_template_2_Template, 1, 0, "ng-template", null, 10, i0.ɵɵtemplateRefExtractor);
161
161
  i0.ɵɵtemplate(4, PoTableDetailComponent_tr_3_td_4_Template, 9, 7, "td", 11);
162
162
  i0.ɵɵelementEnd();
@@ -239,7 +239,7 @@ export class PoTableDetailComponent {
239
239
  }
240
240
  }
241
241
  PoTableDetailComponent.ɵfac = function PoTableDetailComponent_Factory(t) { return new (t || PoTableDetailComponent)(i0.ɵɵdirectiveInject(i1.DecimalPipe)); };
242
- PoTableDetailComponent.ɵcmp = /*@__PURE__*/ i0.ɵɵdefineComponent({ type: PoTableDetailComponent, selectors: [["po-table-detail"]], inputs: { items: ["p-items", "items"], isSelectable: ["p-selectable", "isSelectable"], detail: ["p-detail", "detail"] }, outputs: { selectRow: "p-select-row" }, decls: 4, vars: 2, consts: [[1, "po-table-master-detail"], [4, "ngIf"], ["class", "po-table-detail-row", 3, "po-table-row-active", 4, "ngFor", "ngForOf"], ["class", "po-table-header po-table-column-selectable", 4, "ngIf"], [1, "po-table-header", "po-table-header-column", "po-table-header-master-detail"], ["class", "po-table-header po-table-header-ellipsis", 4, "ngFor", "ngForOf"], [1, "po-table-header", "po-table-column-selectable"], [1, "po-table-header", "po-table-header-ellipsis"], [1, "po-table-detail-row"], [4, "ngIf", "ngIfElse"], ["masterDetailSpace", ""], ["class", "po-table-column-master-detail po-table-master-detail-label", 3, "click", 4, "ngFor", "ngForOf"], [1, "po-table-column-master-detail-space-checkbox"], [1, "po-table-column", "po-table-column-selectable"], ["type", "checkbox", 1, "po-table-checkbox"], [1, "po-table-checkbox-label", "po-clickable", 3, "click"], [1, "po-table-column-master-detail-space"], [1, "po-table-column-master-detail", "po-table-master-detail-label", 3, "click"], [3, "ngSwitch"], [4, "ngSwitchCase"], [4, "ngSwitchDefault"]], template: function PoTableDetailComponent_Template(rf, ctx) { if (rf & 1) {
242
+ PoTableDetailComponent.ɵcmp = /*@__PURE__*/ i0.ɵɵdefineComponent({ type: PoTableDetailComponent, selectors: [["po-table-detail"]], inputs: { items: ["p-items", "items"], isSelectable: ["p-selectable", "isSelectable"], detail: ["p-detail", "detail"] }, outputs: { selectRow: "p-select-row" }, decls: 4, vars: 2, consts: [[1, "po-table-master-detail"], [4, "ngIf"], ["class", "po-table-detail-row", 3, "po-table-row-active", 4, "ngFor", "ngForOf"], ["class", "po-table-header po-table-column-selectable", 4, "ngIf"], [1, "po-table-header", "po-table-header-column", "po-table-header-master-detail"], ["class", "po-table-header po-table-header-ellipsis", 4, "ngFor", "ngForOf"], [1, "po-table-header", "po-table-column-selectable"], [1, "po-table-header", "po-table-header-ellipsis"], [1, "po-table-detail-row"], [4, "ngIf", "ngIfElse"], ["masterDetailSpace", ""], ["class", "po-table-column-master-detail po-table-master-detail-label", 3, "click", 4, "ngFor", "ngForOf"], [1, "po-table-column-master-detail-space-checkbox"], [1, "po-table-column", "po-table-column-selectable"], ["name", "checkbox", 3, "ngModel", "click", "p-change", "ngModelChange"], [1, "po-table-column-master-detail-space"], [1, "po-table-column-master-detail", "po-table-master-detail-label", 3, "click"], [3, "ngSwitch"], [4, "ngSwitchCase"], [4, "ngSwitchDefault"]], template: function PoTableDetailComponent_Template(rf, ctx) { if (rf & 1) {
243
243
  i0.ɵɵelementStart(0, "table", 0);
244
244
  i0.ɵɵtemplate(1, PoTableDetailComponent_thead_1_Template, 5, 2, "thead", 1);
245
245
  i0.ɵɵelementStart(2, "tbody");
@@ -250,10 +250,10 @@ PoTableDetailComponent.ɵcmp = /*@__PURE__*/ i0.ɵɵdefineComponent({ type: PoTa
250
250
  i0.ɵɵproperty("ngIf", ctx.typeHeaderTop);
251
251
  i0.ɵɵadvance(2);
252
252
  i0.ɵɵproperty("ngForOf", ctx.items);
253
- } }, directives: [i1.NgIf, i1.NgForOf, i1.NgSwitch, i1.NgSwitchCase, i1.NgSwitchDefault], pipes: [i1.CurrencyPipe, i1.DatePipe, i2.PoTimePipe], encapsulation: 2 });
253
+ } }, directives: [i1.NgIf, i1.NgForOf, i2.PoCheckboxComponent, i3.NgControlStatus, i3.NgModel, i1.NgSwitch, i1.NgSwitchCase, i1.NgSwitchDefault], pipes: [i1.CurrencyPipe, i1.DatePipe, i4.PoTimePipe], encapsulation: 2 });
254
254
  (function () { (typeof ngDevMode === "undefined" || ngDevMode) && i0.ɵsetClassMetadata(PoTableDetailComponent, [{
255
255
  type: Component,
256
- args: [{ selector: 'po-table-detail', template: "<table class=\"po-table-master-detail\">\n <thead *ngIf=\"typeHeaderTop\">\n <tr>\n <th class=\"po-table-header po-table-column-selectable\" *ngIf=\"isSelectable\"></th>\n <th class=\"po-table-header po-table-header-column po-table-header-master-detail\"></th>\n <th class=\"po-table-header po-table-header-ellipsis\" *ngFor=\"let detail of detail.columns\">\n {{ getColumnTitleLabel(detail) }}\n </th>\n </tr>\n </thead>\n <tbody>\n <tr\n class=\"po-table-detail-row\"\n [class.po-table-row-active]=\"item.$selected && isSelectable\"\n *ngFor=\"let item of items\"\n >\n <ng-container *ngIf=\"isSelectable; else masterDetailSpace\">\n <td class=\"po-table-column-master-detail-space-checkbox\"></td>\n <td class=\"po-table-column po-table-column-selectable\">\n <input class=\"po-table-checkbox\" type=\"checkbox\" [class.po-table-checkbox-checked]=\"item.$selected\" />\n <label class=\"po-table-checkbox-label po-clickable\" (click)=\"onSelectRow(item)\"> </label>\n </td>\n </ng-container>\n\n <ng-template #masterDetailSpace>\n <td class=\"po-table-column-master-detail-space\"></td>\n </ng-template>\n\n <td\n class=\"po-table-column-master-detail po-table-master-detail-label\"\n (click)=\"isSelectable ? onSelectRow(item) : 'javascript:;'\"\n *ngFor=\"let detail of detailColumns\"\n >\n <strong *ngIf=\"typeHeaderInline\"> {{ getColumnTitleLabel(detail) }}: </strong>\n\n <ng-container [ngSwitch]=\"detail.type\">\n <span *ngSwitchCase=\"'currency'\">{{ item[detail.property] | currency: detail.format:'symbol':'1.2-2' }}</span>\n <span *ngSwitchCase=\"'date'\">{{ item[detail.property] | date: detail.format || 'dd/MM/yyyy' }}</span>\n <span *ngSwitchCase=\"'time'\">{{ item[detail.property] | po_time: detail.format || 'HH:mm:ss.ffffff' }}</span>\n <span *ngSwitchCase=\"'dateTime'\">\n {{ item[detail.property] | date: detail.format || 'dd/MM/yyyy HH:mm:ss' }}\n </span>\n <span *ngSwitchCase=\"'number'\">{{ formatNumberDetail(item[detail.property], detail.format) }}</span>\n <span *ngSwitchDefault>{{ item[detail.property] }}</span>\n </ng-container>\n </td>\n </tr>\n </tbody>\n</table>\n" }]
256
+ args: [{ selector: 'po-table-detail', template: "<table class=\"po-table-master-detail\">\n <thead *ngIf=\"typeHeaderTop\">\n <tr>\n <th class=\"po-table-header po-table-column-selectable\" *ngIf=\"isSelectable\"></th>\n <th class=\"po-table-header po-table-header-column po-table-header-master-detail\"></th>\n <th class=\"po-table-header po-table-header-ellipsis\" *ngFor=\"let detail of detail.columns\">\n {{ getColumnTitleLabel(detail) }}\n </th>\n </tr>\n </thead>\n <tbody>\n <tr\n class=\"po-table-detail-row\"\n [class.po-table-row-active]=\"item.$selected && isSelectable\"\n *ngFor=\"let item of items\"\n >\n <ng-container *ngIf=\"isSelectable; else masterDetailSpace\">\n <td class=\"po-table-column-master-detail-space-checkbox\"></td>\n <td class=\"po-table-column po-table-column-selectable\">\n <po-checkbox\n name=\"checkbox\"\n (click)=\"onSelectRow(item)\"\n (p-change)=\"onSelectRow(item)\"\n [(ngModel)]=\"item.$selected\"\n ></po-checkbox>\n </td>\n </ng-container>\n\n <ng-template #masterDetailSpace>\n <td class=\"po-table-column-master-detail-space\"></td>\n </ng-template>\n\n <td\n class=\"po-table-column-master-detail po-table-master-detail-label\"\n (click)=\"isSelectable ? onSelectRow(item) : 'javascript:;'\"\n *ngFor=\"let detail of detailColumns\"\n >\n <strong *ngIf=\"typeHeaderInline\"> {{ getColumnTitleLabel(detail) }}: </strong>\n\n <ng-container [ngSwitch]=\"detail.type\">\n <span *ngSwitchCase=\"'currency'\">{{ item[detail.property] | currency: detail.format:'symbol':'1.2-2' }}</span>\n <span *ngSwitchCase=\"'date'\">{{ item[detail.property] | date: detail.format || 'dd/MM/yyyy' }}</span>\n <span *ngSwitchCase=\"'time'\">{{ item[detail.property] | po_time: detail.format || 'HH:mm:ss.ffffff' }}</span>\n <span *ngSwitchCase=\"'dateTime'\">\n {{ item[detail.property] | date: detail.format || 'dd/MM/yyyy HH:mm:ss' }}\n </span>\n <span *ngSwitchCase=\"'number'\">{{ formatNumberDetail(item[detail.property], detail.format) }}</span>\n <span *ngSwitchDefault>{{ item[detail.property] }}</span>\n </ng-container>\n </td>\n </tr>\n </tbody>\n</table>\n" }]
257
257
  }], function () { return [{ type: i1.DecimalPipe }]; }, { items: [{
258
258
  type: Input,
259
259
  args: ['p-items']
@@ -267,4 +267,4 @@ PoTableDetailComponent.ɵcmp = /*@__PURE__*/ i0.ɵɵdefineComponent({ type: PoTa
267
267
  type: Input,
268
268
  args: ['p-detail']
269
269
  }] }); })();
270
- //# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoicG8tdGFibGUtZGV0YWlsLmNvbXBvbmVudC5qcyIsInNvdXJjZVJvb3QiOiIiLCJzb3VyY2VzIjpbIi4uLy4uLy4uLy4uLy4uLy4uLy4uL3Byb2plY3RzL3VpL3NyYy9saWIvY29tcG9uZW50cy9wby10YWJsZS9wby10YWJsZS1kZXRhaWwvcG8tdGFibGUtZGV0YWlsLmNvbXBvbmVudC50cyIsIi4uLy4uLy4uLy4uLy4uLy4uLy4uL3Byb2plY3RzL3VpL3NyYy9saWIvY29tcG9uZW50cy9wby10YWJsZS9wby10YWJsZS1kZXRhaWwvcG8tdGFibGUtZGV0YWlsLmNvbXBvbmVudC5odG1sIl0sIm5hbWVzIjpbXSwibWFwcGluZ3MiOiJBQUFBLE9BQU8sRUFBRSxTQUFTLEVBQUUsWUFBWSxFQUFFLEtBQUssRUFBRSxNQUFNLEVBQUUsTUFBTSxlQUFlLENBQUM7QUFHdkUsT0FBTyxFQUFFLHFCQUFxQixFQUFFLFFBQVEsRUFBRSxNQUFNLHFCQUFxQixDQUFDOzs7OztJQ0FoRSx3QkFBaUY7OztJQUVqRiw2QkFBMkY7SUFDekYsWUFDRjtJQUFBLGlCQUFLOzs7O0lBREgsZUFDRjtJQURFLHNFQUNGOzs7SUFOSiw2QkFBNkIsU0FBQTtJQUV6Qiw2RUFBaUY7SUFDakYsd0JBQXNGO0lBQ3RGLDZFQUVLO0lBQ1AsaUJBQUssRUFBQTs7O0lBTHFELGVBQWtCO0lBQWxCLDBDQUFrQjtJQUVGLGVBQWlCO0lBQWpCLCtDQUFpQjs7OztJQVd6Riw2QkFBMkQ7SUFDekQseUJBQThEO0lBQzlELDhCQUF1RDtJQUNyRCw0QkFBc0c7SUFDdEcsaUNBQWdGO0lBQTVCLGdPQUFTLDRCQUFpQixJQUFDO0lBQUUsaUJBQVEsRUFBQTtJQUU3RiwwQkFBZTs7O0lBSHNDLGVBQWtEO0lBQWxELDhEQUFrRDs7O0lBTXJHLHlCQUFxRDs7O0lBUXJELDhCQUFpQztJQUFDLFlBQW1DO0lBQUEsaUJBQVM7Ozs7SUFBNUMsZUFBbUM7SUFBbkMseUVBQW1DOzs7SUFHbkUsNEJBQWlDO0lBQUEsWUFBc0U7O0lBQUEsaUJBQU87Ozs7SUFBN0UsZUFBc0U7SUFBdEUsOEdBQXNFOzs7SUFDdkcsNEJBQTZCO0lBQUEsWUFBaUU7O0lBQUEsaUJBQU87Ozs7SUFBeEUsZUFBaUU7SUFBakUsMkdBQWlFOzs7SUFDOUYsNEJBQTZCO0lBQUEsWUFBeUU7O0lBQUEsaUJBQU87Ozs7SUFBaEYsZUFBeUU7SUFBekUsZ0hBQXlFOzs7SUFDdEcsNEJBQWlDO0lBQy9CLFlBQ0Y7O0lBQUEsaUJBQU87Ozs7SUFETCxlQUNGO0lBREUsK0hBQ0Y7OztJQUNBLDRCQUErQjtJQUFBLFlBQThEO0lBQUEsaUJBQU87Ozs7O0lBQXJFLGVBQThEO0lBQTlELGlHQUE4RDs7O0lBQzdGLDRCQUF1QjtJQUFBLFlBQTJCO0lBQUEsaUJBQU87Ozs7SUFBbEMsZUFBMkI7SUFBM0Isa0RBQTJCOzs7O0lBZnRELDhCQUlDO0lBRkMsME9BQXdCLDRCQUFpQixHQUFHLGNBQWMsSUFBQztJQUczRCx1RkFBOEU7SUFFOUUsaUNBQXVDO0lBQ3JDLG9GQUE4RztJQUM5RyxvRkFBcUc7SUFDckcsb0ZBQTZHO0lBQzdHLG9GQUVPO0lBQ1Asb0ZBQW9HO0lBQ3BHLG9GQUF5RDtJQUMzRCwwQkFBZTtJQUNqQixpQkFBSzs7OztJQVpNLGVBQXNCO0lBQXRCLDhDQUFzQjtJQUVqQixlQUF3QjtJQUF4QiwwQ0FBd0I7SUFDN0IsZUFBd0I7SUFBeEIseUNBQXdCO0lBQ3hCLGVBQW9CO0lBQXBCLHFDQUFvQjtJQUNwQixlQUFvQjtJQUFwQixxQ0FBb0I7SUFDcEIsZUFBd0I7SUFBeEIseUNBQXdCO0lBR3hCLGVBQXNCO0lBQXRCLHVDQUFzQjs7O0lBL0JuQyw2QkFJQztJQUNDLDhGQU1lO0lBRWYsOEhBRWM7SUFFZCwyRUFpQks7SUFDUCxpQkFBSzs7Ozs7SUFqQ0gsK0VBQTREO0lBRzdDLGVBQW9CO0lBQXBCLDBDQUFvQixpQkFBQTtJQWVkLGVBQWdCO0lBQWhCLDhDQUFnQjs7QUR2QjNDOzs7Ozs7R0FNRztBQUtILE1BQU0sT0FBTyxzQkFBc0I7SUFpQ2pDLFlBQW9CLFdBQXdCO1FBQXhCLGdCQUFXLEdBQVgsV0FBVyxDQUFhO1FBM0I1Qzs7V0FFRztRQUNvQixpQkFBWSxHQUFhLEtBQUssQ0FBQztRQUV0RDs7Ozs7O1dBTUc7UUFDcUIsY0FBUyxHQUFzQixJQUFJLFlBQVksRUFBTyxDQUFDO0lBZWhDLENBQUM7SUFYaEQ7O09BRUc7SUFDSCxJQUF1QixNQUFNLENBQUMsS0FBb0I7UUFDaEQsSUFBSSxDQUFDLE9BQU8sR0FBRyxJQUFJLENBQUMseUJBQXlCLENBQUMsS0FBSyxDQUFDLENBQUM7SUFDdkQsQ0FBQztJQUVELElBQUksTUFBTTtRQUNSLE9BQU8sSUFBSSxDQUFDLE9BQU8sQ0FBQztJQUN0QixDQUFDO0lBSUQsSUFBSSxhQUFhO1FBQ2YsT0FBTyxJQUFJLENBQUMsTUFBTSxFQUFFLE9BQU8sSUFBSSxFQUFFLENBQUM7SUFDcEMsQ0FBQztJQUVELElBQUksZ0JBQWdCO1FBQ2xCLE9BQU8sQ0FBQyxJQUFJLENBQUMsTUFBTSxJQUFJLENBQUMsSUFBSSxDQUFDLE1BQU0sQ0FBQyxZQUFZLENBQUMsQ0FBQyxJQUFJLElBQUksQ0FBQyxNQUFNLENBQUMsWUFBWSxDQUFDLEtBQUssUUFBUSxDQUFDO0lBQy9GLENBQUM7SUFFRCxJQUFJLGFBQWE7UUFDZixPQUFPLElBQUksQ0FBQyxNQUFNLElBQUksSUFBSSxDQUFDLE1BQU0sQ0FBQyxZQUFZLENBQUMsS0FBSyxLQUFLLENBQUM7SUFDNUQsQ0FBQztJQUVELGtCQUFrQixDQUFDLEtBQVUsRUFBRSxNQUFjO1FBQzNDLElBQUksQ0FBQyxNQUFNLEVBQUU7WUFDWCxPQUFPLEtBQUssQ0FBQztTQUNkO1FBRUQsT0FBTyxJQUFJLENBQUMsV0FBVyxDQUFDLFNBQVMsQ0FBQyxLQUFLLEVBQUUsTUFBTSxDQUFDLENBQUM7SUFDbkQsQ0FBQztJQUVELG1CQUFtQixDQUFDLE1BQTJCO1FBQzdDLE9BQU8sTUFBTSxDQUFDLEtBQUssSUFBSSxxQkFBcUIsQ0FBQyxNQUFNLENBQUMsUUFBUSxDQUFDLENBQUM7SUFDaEUsQ0FBQztJQUVELFdBQVcsQ0FBQyxJQUFJO1FBQ2QsSUFBSSxDQUFDLFNBQVMsR0FBRyxDQUFDLElBQUksQ0FBQyxTQUFTLENBQUM7UUFDakMsSUFBSSxDQUFDLFNBQVMsQ0FBQyxJQUFJLENBQUMsSUFBSSxDQUFDLENBQUM7SUFDNUIsQ0FBQztJQUVPLHlCQUF5QixDQUFDLEtBQVU7UUFDMUMsSUFBSSxLQUFLLElBQUksUUFBUSxDQUFDLEtBQUssRUFBRSxRQUFRLENBQUMsRUFBRTtZQUN0QyxJQUFJLEtBQUssQ0FBQyxPQUFPLEVBQUU7Z0JBQ2pCLEtBQUssQ0FBQyxPQUFPLENBQUMsT0FBTyxDQUFDLE1BQU0sQ0FBQyxFQUFFLENBQUMsQ0FBQyxNQUFNLENBQUMsUUFBUSxHQUFHLE1BQU0sQ0FBQyxRQUFRLElBQUksTUFBTSxDQUFDLE1BQU0sQ0FBQyxDQUFDLENBQUM7YUFDdkY7WUFFRCxJQUFJLEtBQUssQ0FBQyxPQUFPLENBQUMsS0FBSyxDQUFDLEVBQUU7Z0JBQ3hCLE9BQU8sRUFBRSxPQUFPLEVBQUUsS0FBSyxFQUFFLENBQUM7YUFDM0I7WUFFRCxJQUFJLEtBQUssQ0FBQyxPQUFPLEVBQUU7Z0JBQ2pCLE9BQU8sS0FBSyxDQUFDO2FBQ2Q7U0FDRjtJQUNILENBQUM7OzRGQTlFVSxzQkFBc0I7eUVBQXRCLHNCQUFzQjtRQ25CbkMsZ0NBQXNDO1FBQ3BDLDJFQVFRO1FBQ1IsNkJBQU87UUFDTCxxRUFtQ0s7UUFDUCxpQkFBUSxFQUFBOztRQTlDQSxlQUFtQjtRQUFuQix3Q0FBbUI7UUFhTixlQUFRO1FBQVIsbUNBQVE7O3VGREtsQixzQkFBc0I7Y0FKbEMsU0FBUzsyQkFDRSxpQkFBaUI7OERBT1QsS0FBSztrQkFBdEIsS0FBSzttQkFBQyxTQUFTO1lBS08sWUFBWTtrQkFBbEMsS0FBSzttQkFBQyxjQUFjO1lBU0csU0FBUztrQkFBaEMsTUFBTTttQkFBQyxjQUFjO1lBT0MsTUFBTTtrQkFBNUIsS0FBSzttQkFBQyxVQUFVIiwic291cmNlc0NvbnRlbnQiOlsiaW1wb3J0IHsgQ29tcG9uZW50LCBFdmVudEVtaXR0ZXIsIElucHV0LCBPdXRwdXQgfSBmcm9tICdAYW5ndWxhci9jb3JlJztcbmltcG9ydCB7IERlY2ltYWxQaXBlIH0gZnJvbSAnQGFuZ3VsYXIvY29tbW9uJztcblxuaW1wb3J0IHsgY2FwaXRhbGl6ZUZpcnN0TGV0dGVyLCBpc1R5cGVvZiB9IGZyb20gJy4uLy4uLy4uL3V0aWxzL3V0aWwnO1xuXG5pbXBvcnQgeyBQb1RhYmxlRGV0YWlsIH0gZnJvbSAnLi9wby10YWJsZS1kZXRhaWwuaW50ZXJmYWNlJztcbmltcG9ydCB7IFBvVGFibGVEZXRhaWxDb2x1bW4gfSBmcm9tICcuL3BvLXRhYmxlLWRldGFpbC1jb2x1bW4uaW50ZXJmYWNlJztcblxuLyoqXG4gKiBAZG9jc1ByaXZhdGVcbiAqXG4gKiBAZGVzY3JpcHRpb25cbiAqXG4gKiBDb21wb25lbnRlIHJlc3BvbnPDoXZlbCBwb3IgYXByZXNlbnRhciBvIGRldGFsaGUgZGUgY2FkYSBsaW5oYSBkYSB0YWJlbGEuXG4gKi9cbkBDb21wb25lbnQoe1xuICBzZWxlY3RvcjogJ3BvLXRhYmxlLWRldGFpbCcsXG4gIHRlbXBsYXRlVXJsOiAnLi9wby10YWJsZS1kZXRhaWwuY29tcG9uZW50Lmh0bWwnXG59KVxuZXhwb3J0IGNsYXNzIFBvVGFibGVEZXRhaWxDb21wb25lbnQge1xuICAvKipcbiAgICogTGlzdGEgZGUgaXRlbnMgZG8gX2RldGFpbF8gZGEgdGFiZWxhLlxuICAgKi9cbiAgQElucHV0KCdwLWl0ZW1zJykgaXRlbXM6IEFycmF5PGFueT47XG5cbiAgLyoqXG4gICAqIERlZmluZSBzZSBhIHRhYmVsYSBwb3NzdWkgYSBvcMOnw6NvIGRlIGBzZWxlY3RhYmxlYCBoYWJpbGl0YWRhLlxuICAgKi9cbiAgQElucHV0KCdwLXNlbGVjdGFibGUnKSBpc1NlbGVjdGFibGU/OiBib29sZWFuID0gZmFsc2U7XG5cbiAgLyoqXG4gICAqIEBvcHRpb25hbFxuICAgKlxuICAgKiBAZGVzY3JpcHRpb25cbiAgICpcbiAgICogQcOnw6NvIGV4ZWN1dGFkYSBhbyBzZWxlY2lvbmFyIG91IGRlc21hcmNhciBhIHNlbGXDp8OjbyBkZSB1bWEgbGluaGEgZGUgZGV0YWxoZSBkbyBgcG8tdGFibGVgLlxuICAgKi9cbiAgQE91dHB1dCgncC1zZWxlY3Qtcm93Jykgc2VsZWN0Um93OiBFdmVudEVtaXR0ZXI8YW55PiA9IG5ldyBFdmVudEVtaXR0ZXI8YW55PigpO1xuXG4gIHByaXZhdGUgX2RldGFpbDogUG9UYWJsZURldGFpbDtcblxuICAvKipcbiAgICogQ29uZmlndXJhw6fDo28gZGEgbGluaGEgZGUgZGV0YWxoZXMuXG4gICAqL1xuICBASW5wdXQoJ3AtZGV0YWlsJykgc2V0IGRldGFpbCh2YWx1ZTogUG9UYWJsZURldGFpbCkge1xuICAgIHRoaXMuX2RldGFpbCA9IHRoaXMucmV0dXJuUG9UYWJsZURldGFpbE9iamVjdCh2YWx1ZSk7XG4gIH1cblxuICBnZXQgZGV0YWlsKCkge1xuICAgIHJldHVybiB0aGlzLl9kZXRhaWw7XG4gIH1cblxuICBjb25zdHJ1Y3Rvcihwcml2YXRlIGRlY2ltYWxQaXBlOiBEZWNpbWFsUGlwZSkge31cblxuICBnZXQgZGV0YWlsQ29sdW1ucygpOiBBcnJheTxQb1RhYmxlRGV0YWlsQ29sdW1uPiB7XG4gICAgcmV0dXJuIHRoaXMuZGV0YWlsPy5jb2x1bW5zIHx8IFtdO1xuICB9XG5cbiAgZ2V0IHR5cGVIZWFkZXJJbmxpbmUoKTogYm9vbGVhbiB7XG4gICAgcmV0dXJuICh0aGlzLmRldGFpbCAmJiAhdGhpcy5kZXRhaWxbJ3R5cGVIZWFkZXInXSkgfHwgdGhpcy5kZXRhaWxbJ3R5cGVIZWFkZXInXSA9PT0gJ2lubGluZSc7XG4gIH1cblxuICBnZXQgdHlwZUhlYWRlclRvcCgpOiBib29sZWFuIHtcbiAgICByZXR1cm4gdGhpcy5kZXRhaWwgJiYgdGhpcy5kZXRhaWxbJ3R5cGVIZWFkZXInXSA9PT0gJ3RvcCc7XG4gIH1cblxuICBmb3JtYXROdW1iZXJEZXRhaWwodmFsdWU6IGFueSwgZm9ybWF0OiBzdHJpbmcpIHtcbiAgICBpZiAoIWZvcm1hdCkge1xuICAgICAgcmV0dXJuIHZhbHVlO1xuICAgIH1cblxuICAgIHJldHVybiB0aGlzLmRlY2ltYWxQaXBlLnRyYW5zZm9ybSh2YWx1ZSwgZm9ybWF0KTtcbiAgfVxuXG4gIGdldENvbHVtblRpdGxlTGFiZWwoZGV0YWlsOiBQb1RhYmxlRGV0YWlsQ29sdW1uKSB7XG4gICAgcmV0dXJuIGRldGFpbC5sYWJlbCB8fCBjYXBpdGFsaXplRmlyc3RMZXR0ZXIoZGV0YWlsLnByb3BlcnR5KTtcbiAgfVxuXG4gIG9uU2VsZWN0Um93KGl0ZW0pIHtcbiAgICBpdGVtLiRzZWxlY3RlZCA9ICFpdGVtLiRzZWxlY3RlZDtcbiAgICB0aGlzLnNlbGVjdFJvdy5lbWl0KGl0ZW0pO1xuICB9XG5cbiAgcHJpdmF0ZSByZXR1cm5Qb1RhYmxlRGV0YWlsT2JqZWN0KHZhbHVlOiBhbnkpIHtcbiAgICBpZiAodmFsdWUgJiYgaXNUeXBlb2YodmFsdWUsICdvYmplY3QnKSkge1xuICAgICAgaWYgKHZhbHVlLmNvbHVtbnMpIHtcbiAgICAgICAgdmFsdWUuY29sdW1ucy5mb3JFYWNoKGNvbHVtbiA9PiAoY29sdW1uLnByb3BlcnR5ID0gY29sdW1uLnByb3BlcnR5IHx8IGNvbHVtbi5jb2x1bW4pKTtcbiAgICAgIH1cblxuICAgICAgaWYgKEFycmF5LmlzQXJyYXkodmFsdWUpKSB7XG4gICAgICAgIHJldHVybiB7IGNvbHVtbnM6IHZhbHVlIH07XG4gICAgICB9XG5cbiAgICAgIGlmICh2YWx1ZS5jb2x1bW5zKSB7XG4gICAgICAgIHJldHVybiB2YWx1ZTtcbiAgICAgIH1cbiAgICB9XG4gIH1cbn1cbiIsIjx0YWJsZSBjbGFzcz1cInBvLXRhYmxlLW1hc3Rlci1kZXRhaWxcIj5cbiAgPHRoZWFkICpuZ0lmPVwidHlwZUhlYWRlclRvcFwiPlxuICAgIDx0cj5cbiAgICAgIDx0aCBjbGFzcz1cInBvLXRhYmxlLWhlYWRlciBwby10YWJsZS1jb2x1bW4tc2VsZWN0YWJsZVwiICpuZ0lmPVwiaXNTZWxlY3RhYmxlXCI+PC90aD5cbiAgICAgIDx0aCBjbGFzcz1cInBvLXRhYmxlLWhlYWRlciBwby10YWJsZS1oZWFkZXItY29sdW1uIHBvLXRhYmxlLWhlYWRlci1tYXN0ZXItZGV0YWlsXCI+PC90aD5cbiAgICAgIDx0aCBjbGFzcz1cInBvLXRhYmxlLWhlYWRlciBwby10YWJsZS1oZWFkZXItZWxsaXBzaXNcIiAqbmdGb3I9XCJsZXQgZGV0YWlsIG9mIGRldGFpbC5jb2x1bW5zXCI+XG4gICAgICAgIHt7IGdldENvbHVtblRpdGxlTGFiZWwoZGV0YWlsKSB9fVxuICAgICAgPC90aD5cbiAgICA8L3RyPlxuICA8L3RoZWFkPlxuICA8dGJvZHk+XG4gICAgPHRyXG4gICAgICBjbGFzcz1cInBvLXRhYmxlLWRldGFpbC1yb3dcIlxuICAgICAgW2NsYXNzLnBvLXRhYmxlLXJvdy1hY3RpdmVdPVwiaXRlbS4kc2VsZWN0ZWQgJiYgaXNTZWxlY3RhYmxlXCJcbiAgICAgICpuZ0Zvcj1cImxldCBpdGVtIG9mIGl0ZW1zXCJcbiAgICA+XG4gICAgICA8bmctY29udGFpbmVyICpuZ0lmPVwiaXNTZWxlY3RhYmxlOyBlbHNlIG1hc3RlckRldGFpbFNwYWNlXCI+XG4gICAgICAgIDx0ZCBjbGFzcz1cInBvLXRhYmxlLWNvbHVtbi1tYXN0ZXItZGV0YWlsLXNwYWNlLWNoZWNrYm94XCI+PC90ZD5cbiAgICAgICAgPHRkIGNsYXNzPVwicG8tdGFibGUtY29sdW1uIHBvLXRhYmxlLWNvbHVtbi1zZWxlY3RhYmxlXCI+XG4gICAgICAgICAgPGlucHV0IGNsYXNzPVwicG8tdGFibGUtY2hlY2tib3hcIiB0eXBlPVwiY2hlY2tib3hcIiBbY2xhc3MucG8tdGFibGUtY2hlY2tib3gtY2hlY2tlZF09XCJpdGVtLiRzZWxlY3RlZFwiIC8+XG4gICAgICAgICAgPGxhYmVsIGNsYXNzPVwicG8tdGFibGUtY2hlY2tib3gtbGFiZWwgcG8tY2xpY2thYmxlXCIgKGNsaWNrKT1cIm9uU2VsZWN0Um93KGl0ZW0pXCI+IDwvbGFiZWw+XG4gICAgICAgIDwvdGQ+XG4gICAgICA8L25nLWNvbnRhaW5lcj5cblxuICAgICAgPG5nLXRlbXBsYXRlICNtYXN0ZXJEZXRhaWxTcGFjZT5cbiAgICAgICAgPHRkIGNsYXNzPVwicG8tdGFibGUtY29sdW1uLW1hc3Rlci1kZXRhaWwtc3BhY2VcIj48L3RkPlxuICAgICAgPC9uZy10ZW1wbGF0ZT5cblxuICAgICAgPHRkXG4gICAgICAgIGNsYXNzPVwicG8tdGFibGUtY29sdW1uLW1hc3Rlci1kZXRhaWwgcG8tdGFibGUtbWFzdGVyLWRldGFpbC1sYWJlbFwiXG4gICAgICAgIChjbGljayk9XCJpc1NlbGVjdGFibGUgPyBvblNlbGVjdFJvdyhpdGVtKSA6ICdqYXZhc2NyaXB0OjsnXCJcbiAgICAgICAgKm5nRm9yPVwibGV0IGRldGFpbCBvZiBkZXRhaWxDb2x1bW5zXCJcbiAgICAgID5cbiAgICAgICAgPHN0cm9uZyAqbmdJZj1cInR5cGVIZWFkZXJJbmxpbmVcIj4ge3sgZ2V0Q29sdW1uVGl0bGVMYWJlbChkZXRhaWwpIH19OiA8L3N0cm9uZz5cblxuICAgICAgICA8bmctY29udGFpbmVyIFtuZ1N3aXRjaF09XCJkZXRhaWwudHlwZVwiPlxuICAgICAgICAgIDxzcGFuICpuZ1N3aXRjaENhc2U9XCInY3VycmVuY3knXCI+e3sgaXRlbVtkZXRhaWwucHJvcGVydHldIHwgY3VycmVuY3k6IGRldGFpbC5mb3JtYXQ6J3N5bWJvbCc6JzEuMi0yJyB9fTwvc3Bhbj5cbiAgICAgICAgICA8c3BhbiAqbmdTd2l0Y2hDYXNlPVwiJ2RhdGUnXCI+e3sgaXRlbVtkZXRhaWwucHJvcGVydHldIHwgZGF0ZTogZGV0YWlsLmZvcm1hdCB8fCAnZGQvTU0veXl5eScgfX08L3NwYW4+XG4gICAgICAgICAgPHNwYW4gKm5nU3dpdGNoQ2FzZT1cIid0aW1lJ1wiPnt7IGl0ZW1bZGV0YWlsLnByb3BlcnR5XSB8IHBvX3RpbWU6IGRldGFpbC5mb3JtYXQgfHwgJ0hIOm1tOnNzLmZmZmZmZicgfX08L3NwYW4+XG4gICAgICAgICAgPHNwYW4gKm5nU3dpdGNoQ2FzZT1cIidkYXRlVGltZSdcIj5cbiAgICAgICAgICAgIHt7IGl0ZW1bZGV0YWlsLnByb3BlcnR5XSB8IGRhdGU6IGRldGFpbC5mb3JtYXQgfHwgJ2RkL01NL3l5eXkgSEg6bW06c3MnIH19XG4gICAgICAgICAgPC9zcGFuPlxuICAgICAgICAgIDxzcGFuICpuZ1N3aXRjaENhc2U9XCInbnVtYmVyJ1wiPnt7IGZvcm1hdE51bWJlckRldGFpbChpdGVtW2RldGFpbC5wcm9wZXJ0eV0sIGRldGFpbC5mb3JtYXQpIH19PC9zcGFuPlxuICAgICAgICAgIDxzcGFuICpuZ1N3aXRjaERlZmF1bHQ+e3sgaXRlbVtkZXRhaWwucHJvcGVydHldIH19PC9zcGFuPlxuICAgICAgICA8L25nLWNvbnRhaW5lcj5cbiAgICAgIDwvdGQ+XG4gICAgPC90cj5cbiAgPC90Ym9keT5cbjwvdGFibGU+XG4iXX0=
270
+ //# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoicG8tdGFibGUtZGV0YWlsLmNvbXBvbmVudC5qcyIsInNvdXJjZVJvb3QiOiIiLCJzb3VyY2VzIjpbIi4uLy4uLy4uLy4uLy4uLy4uLy4uL3Byb2plY3RzL3VpL3NyYy9saWIvY29tcG9uZW50cy9wby10YWJsZS9wby10YWJsZS1kZXRhaWwvcG8tdGFibGUtZGV0YWlsLmNvbXBvbmVudC50cyIsIi4uLy4uLy4uLy4uLy4uLy4uLy4uL3Byb2plY3RzL3VpL3NyYy9saWIvY29tcG9uZW50cy9wby10YWJsZS9wby10YWJsZS1kZXRhaWwvcG8tdGFibGUtZGV0YWlsLmNvbXBvbmVudC5odG1sIl0sIm5hbWVzIjpbXSwibWFwcGluZ3MiOiJBQUFBLE9BQU8sRUFBRSxTQUFTLEVBQUUsWUFBWSxFQUFFLEtBQUssRUFBRSxNQUFNLEVBQUUsTUFBTSxlQUFlLENBQUM7QUFHdkUsT0FBTyxFQUFFLHFCQUFxQixFQUFFLFFBQVEsRUFBRSxNQUFNLHFCQUFxQixDQUFDOzs7Ozs7O0lDQWhFLHdCQUFpRjs7O0lBRWpGLDZCQUEyRjtJQUN6RixZQUNGO0lBQUEsaUJBQUs7Ozs7SUFESCxlQUNGO0lBREUsc0VBQ0Y7OztJQU5KLDZCQUE2QixTQUFBO0lBRXpCLDZFQUFpRjtJQUNqRix3QkFBc0Y7SUFDdEYsNkVBRUs7SUFDUCxpQkFBSyxFQUFBOzs7SUFMcUQsZUFBa0I7SUFBbEIsMENBQWtCO0lBRUYsZUFBaUI7SUFBakIsK0NBQWlCOzs7O0lBV3pGLDZCQUEyRDtJQUN6RCx5QkFBOEQ7SUFDOUQsOEJBQXVELHNCQUFBO0lBR25ELHNPQUFTLDRCQUFpQixJQUFDLCtOQUNmLDRCQUFpQixJQURGLHlPQUFBO0lBRzVCLGlCQUFjLEVBQUE7SUFFbkIsMEJBQWU7OztJQUhULGVBQTRCO0lBQTVCLDJDQUE0Qjs7O0lBTWhDLHlCQUFxRDs7O0lBUXJELDhCQUFpQztJQUFDLFlBQW1DO0lBQUEsaUJBQVM7Ozs7SUFBNUMsZUFBbUM7SUFBbkMseUVBQW1DOzs7SUFHbkUsNEJBQWlDO0lBQUEs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dCwgRXZlbnRFbWl0dGVyLCBJbnB1dCwgT3V0cHV0IH0gZnJvbSAnQGFuZ3VsYXIvY29yZSc7XG5pbXBvcnQgeyBEZWNpbWFsUGlwZSB9IGZyb20gJ0Bhbmd1bGFyL2NvbW1vbic7XG5cbmltcG9ydCB7IGNhcGl0YWxpemVGaXJzdExldHRlciwgaXNUeXBlb2YgfSBmcm9tICcuLi8uLi8uLi91dGlscy91dGlsJztcblxuaW1wb3J0IHsgUG9UYWJsZURldGFpbCB9IGZyb20gJy4vcG8tdGFibGUtZGV0YWlsLmludGVyZmFjZSc7XG5pbXBvcnQgeyBQb1RhYmxlRGV0YWlsQ29sdW1uIH0gZnJvbSAnLi9wby10YWJsZS1kZXRhaWwtY29sdW1uLmludGVyZmFjZSc7XG5cbi8qKlxuICogQGRvY3NQcml2YXRlXG4gKlxuICogQGRlc2NyaXB0aW9uXG4gKlxuICogQ29tcG9uZW50ZSByZXNwb25zw6F2ZWwgcG9yIGFwcmVzZW50YXIgbyBkZXRhbGhlIGRlIGNhZGEgbGluaGEgZGEgdGFiZWxhLlxuICovXG5AQ29tcG9uZW50KHtcbiAgc2VsZWN0b3I6ICdwby10YWJsZS1kZXRhaWwnLFxuICB0ZW1wbGF0ZVVybDogJy4vcG8tdGFibGUtZGV0YWlsLmNvbXBvbmVudC5odG1sJ1xufSlcbmV4cG9ydCBjbGFzcyBQb1RhYmxlRGV0YWlsQ29tcG9uZW50IHtcbiAgLyoqXG4gICAqIExpc3RhIGRlIGl0ZW5zIGRvIF9kZXRhaWxfIGRhIHRhYmVsYS5cbiAgICovXG4gIEBJbnB1dCgncC1pdGVtcycpIGl0ZW1zOiBBcnJheTxhbnk+O1xuXG4gIC8qKlxuICAgKiBEZWZpbmUgc2UgYSB0YWJlbGEgcG9zc3VpIGEgb3DDp8OjbyBkZSBgc2VsZWN0YWJsZWAgaGFiaWxpdGFkYS5cbiAgICovXG4gIEBJbnB1dCgncC1zZWxlY3RhYmxlJykgaXNTZWxlY3RhYmxlPzogYm9vbGVhbiA9IGZhbHNlO1xuXG4gIC8qKlxuICAgKiBAb3B0aW9uYWxcbiAgICpcbiAgICogQGRlc2NyaXB0aW9uXG4gICAqXG4gICAqIEHDp8OjbyBleGVjdXRhZGEgYW8gc2VsZWNpb25hciBvdSBkZXNtYXJjYXIgYSBzZWxlw6fDo28gZGUgdW1hIGxpbmhhIGRlIGRldGFsaGUgZG8gYHBvLXRhYmxlYC5cbiAgICovXG4gIEBPdXRwdXQoJ3Atc2VsZWN0LXJvdycpIHNlbGVjdFJvdzogRXZlbnRFbWl0dGVyPGFueT4gPSBuZXcgRXZlbnRFbWl0dGVyPGFueT4oKTtcblxuICBwcml2YXRlIF9kZXRhaWw6IFBvVGFibGVEZXRhaWw7XG5cbiAgLyoqXG4gICAqIENvbmZpZ3VyYcOnw6NvIGRhIGxpbmhhIGRlIGRldGFsaGVzLlxuICAgKi9cbiAgQElucHV0KCdwLWRldGFpbCcpIHNldCBkZXRhaWwodmFsdWU6IFBvVGFibGVEZXRhaWwpIHtcbiAgICB0aGlzLl9kZXRhaWwgPSB0aGlzLnJldHVyblBvVGFibGVEZXRhaWxPYmplY3QodmFsdWUpO1xuICB9XG5cbiAgZ2V0IGRldGFpbCgpIHtcbiAgICByZXR1cm4gdGhpcy5fZGV0YWlsO1xuICB9XG5cbiAgY29uc3RydWN0b3IocHJpdmF0ZSBkZWNpbWFsUGlwZTogRGVjaW1hbFBpcGUpIHt9XG5cbiAgZ2V0IGRldGFpbENvbHVtbnMoKTogQXJyYXk8UG9UYWJsZURldGFpbENvbHVtbj4ge1xuICAgIHJldHVybiB0aGlzLmRldGFpbD8uY29sdW1ucyB8fCBbXTtcbiAgfVxuXG4gIGdldCB0eXBlSGVhZGVySW5saW5lKCk6IGJvb2xlYW4ge1xuICAgIHJldHVybiAodGhpcy5kZXRhaWwgJiYgIXRoaXMuZGV0YWlsWyd0eXBlSGVhZGVyJ10pIHx8IHRoaXMuZGV0YWlsWyd0eXBlSGVhZGVyJ10gPT09ICdpbmxpbmUnO1xuICB9XG5cbiAgZ2V0IHR5cGVIZWFkZXJUb3AoKTogYm9vbGVhbiB7XG4gICAgcmV0dXJuIHRoaXMuZGV0YWlsICYmIHRoaXMuZGV0YWlsWyd0eXBlSGVhZGVyJ10gPT09ICd0b3AnO1xuICB9XG5cbiAgZm9ybWF0TnVtYmVyRGV0YWlsKHZhbHVlOiBhbnksIGZvcm1hdDogc3RyaW5nKSB7XG4gICAgaWYgKCFmb3JtYXQpIHtcbiAgICAgIHJldHVybiB2YWx1ZTtcbiAgICB9XG5cbiAgICByZXR1cm4gdGhpcy5kZWNpbWFsUGlwZS50cmFuc2Zvcm0odmFsdWUsIGZvcm1hdCk7XG4gIH1cblxuICBnZXRDb2x1bW5UaXRsZUxhYmVsKGRldGFpbDogUG9UYWJsZURldGFpbENvbHVtbikge1xuICAgIHJldHVybiBkZXRhaWwubGFiZWwgfHwgY2FwaXRhbGl6ZUZpcnN0TGV0dGVyKGRldGFpbC5wcm9wZXJ0eSk7XG4gIH1cblxuICBvblNlbGVjdFJvdyhpdGVtKSB7XG4gICAgaXRlbS4kc2VsZWN0ZWQgPSAhaXRlbS4kc2VsZWN0ZWQ7XG4gICAgdGhpcy5zZWxlY3RSb3cuZW1pdChpdGVtKTtcbiAgfVxuXG4gIHByaXZhdGUgcmV0dXJuUG9UYWJsZURldGFpbE9iamVjdCh2YWx1ZTogYW55KSB7XG4gICAgaWYgKHZhbHVlICYmIGlzVHlwZW9mKHZhbHVlLCAnb2JqZWN0JykpIHtcbiAgICAgIGlmICh2YWx1ZS5jb2x1bW5zKSB7XG4gICAgICAgIHZhbHVlLmNvbHVtbnMuZm9yRWFjaChjb2x1bW4gPT4gKGNvbHVtbi5wcm9wZXJ0eSA9IGNvbHVtbi5wcm9wZXJ0eSB8fCBjb2x1bW4uY29sdW1uKSk7XG4gICAgICB9XG5cbiAgICAgIGlmIChBcnJheS5pc0FycmF5KHZhbHVlKSkge1xuICAgICAgICByZXR1cm4geyBjb2x1bW5zOiB2YWx1ZSB9O1xuICAgICAgfVxuXG4gICAgICBpZiAodmFsdWUuY29sdW1ucykge1xuICAgICAgICByZXR1cm4gdmFsdWU7XG4gICAgICB9XG4gICAgfVxuICB9XG59XG4iLCI8dGFibGUgY2xhc3M9XCJwby10YWJsZS1tYXN0ZXItZGV0YWlsXCI+XG4gIDx0aGVhZCAqbmdJZj1cInR5cGVIZWFkZXJUb3BcIj5cbiAgICA8dHI+XG4gICAgICA8dGggY2xhc3M9XCJwby10YWJsZS1oZWFkZXIgcG8tdGFibGUtY29sdW1uLXNlbGVjdGFibGVcIiAqbmdJZj1cImlzU2VsZWN0YWJsZVwiPjwvdGg+XG4gICAgICA8dGggY2xhc3M9XCJwby10YWJsZS1oZWFkZXIgcG8tdGFibGUtaGVhZGVyLWNvbHVtbiBwby10YWJsZS1oZWFkZXItbWFzdGVyLWRldGFpbFwiPjwvdGg+XG4gICAgICA8dGggY2xhc3M9XCJwby10YWJsZS1oZWFkZXIgcG8tdGFibGUtaGVhZGVyLWVsbGlwc2lzXCIgKm5nRm9yPVwibGV0IGRldGFpbCBvZiBkZXRhaWwuY29sdW1uc1wiPlxuICAgICAgICB7eyBnZXRDb2x1bW5UaXRsZUxhYmVsKGRldGFpbCkgfX1cbiAgICAgIDwvdGg+XG4gICAgPC90cj5cbiAgPC90aGVhZD5cbiAgPHRib2R5PlxuICAgIDx0clxuICAgICAgY2xhc3M9XCJwby10YWJsZS1kZXRhaWwtcm93XCJcbiAgICAgIFtjbGFzcy5wby10YWJsZS1yb3ctYWN0aXZlXT1cIml0ZW0uJHNlbGVjdGVkICYmIGlzU2VsZWN0YWJsZVwiXG4gICAgICAqbmdGb3I9XCJsZXQgaXRlbSBvZiBpdGVtc1wiXG4gICAgPlxuICAgICAgPG5nLWNvbnRhaW5lciAqbmdJZj1cImlzU2VsZWN0YWJsZTsgZWxzZSBtYXN0ZXJEZXRhaWxTcGFjZVwiPlxuICAgICAgICA8dGQgY2xhc3M9XCJwby10YWJsZS1jb2x1bW4tbWFzdGVyLWRldGFpbC1zcGFjZS1jaGVja2JveFwiPjwvdGQ+XG4gICAgICAgIDx0ZCBjbGFzcz1cInBvLXRhYmxlLWNvbHVtbiBwby10YWJsZS1jb2x1bW4tc2VsZWN0YWJsZVwiPlxuICAgICAgICAgIDxwby1jaGVja2JveFxuICAgICAgICAgICAgbmFtZT1cImNoZWNrYm94XCJcbiAgICAgICAgICAgIChjbGljayk9XCJvblNlbGVjdFJvdyhpdGVtKVwiXG4gICAgICAgICAgICAocC1jaGFuZ2UpPVwib25TZWxlY3RSb3coaXRlbSlcIlxuICAgICAgICAgICAgWyhuZ01vZGVsKV09XCJpdGVtLiRzZWxlY3RlZFwiXG4gICAgICAgICAgPjwvcG8tY2hlY2tib3g+XG4gICAgICAgIDwvdGQ+XG4gICAgICA8L25nLWNvbnRhaW5lcj5cblxuICAgICAgPG5nLXRlbXBsYXRlICNtYXN0ZXJEZXRhaWxTcGFjZT5cbiAgICAgICAgPHRkIGNsYXNzPVwicG8tdGFibGUtY29sdW1uLW1hc3Rlci1kZXRhaWwtc3BhY2VcIj48L3RkPlxuICAgICAgPC9uZy10ZW1wbGF0ZT5cblxuICAgICAgPHRkXG4gICAgICAgIGNsYXNzPVwicG8tdGFibGUtY29sdW1uLW1hc3Rlci1kZXRhaWwgcG8tdGFibGUtbWFzdGVyLWRldGFpbC1sYWJlbFwiXG4gICAgICAgIChjbGljayk9XCJpc1NlbGVjdGFibGUgPyBvblNlbGVjdFJvdyhpdGVtKSA6ICdqYXZhc2NyaXB0OjsnXCJcbiAgICAgICAgKm5nRm9yPVwibGV0IGRldGFpbCBvZiBkZXRhaWxDb2x1bW5zXCJcbiAgICAgID5cbiAgICAgICAgPHN0cm9uZyAqbmdJZj1cInR5cGVIZWFkZXJJbmxpbmVcIj4ge3sgZ2V0Q29sdW1uVGl0bGVMYWJlbChkZXRhaWwpIH19OiA8L3N0cm9uZz5cblxuICAgICAgICA8bmctY29udGFpbmVyIFtuZ1N3aXRjaF09XCJkZXRhaWwudHlwZVwiPlxuICAgICAgICAgIDxzcGFuICpuZ1N3aXRjaENhc2U9XCInY3VycmVuY3knXCI+e3sgaXRlbVtkZXRhaWwucHJvcGVydHldIHwgY3VycmVuY3k6IGRldGFpbC5mb3JtYXQ6J3N5bWJvbCc6JzEuMi0yJyB9fTwvc3Bhbj5cbiAgICAgICAgICA8c3BhbiAqbmdTd2l0Y2hDYXNlPVwiJ2RhdGUnXCI+e3sgaXRlbVtkZXRhaWwucHJvcGVydHldIHwgZGF0ZTogZGV0YWlsLmZvcm1hdCB8fCAnZGQvTU0veXl5eScgfX08L3NwYW4+XG4gICAgICAgICAgPHNwYW4gKm5nU3dpdGNoQ2FzZT1cIid0aW1lJ1wiPnt7IGl0ZW1bZGV0YWlsLnByb3BlcnR5XSB8IHBvX3RpbWU6IGRldGFpbC5mb3JtYXQgfHwgJ0hIOm1tOnNzLmZmZmZmZicgfX08L3NwYW4+XG4gICAgICAgICAgPHNwYW4gKm5nU3dpdGNoQ2FzZT1cIidkYXRlVGltZSdcIj5cbiAgICAgICAgICAgIHt7IGl0ZW1bZGV0YWlsLnByb3BlcnR5XSB8IGRhdGU6IGRldGFpbC5mb3JtYXQgfHwgJ2RkL01NL3l5eXkgSEg6bW06c3MnIH19XG4gICAgICAgICAgPC9zcGFuPlxuICAgICAgICAgIDxzcGFuICpuZ1N3aXRjaENhc2U9XCInbnVtYmVyJ1wiPnt7IGZvcm1hdE51bWJlckRldGFpbChpdGVtW2RldGFpbC5wcm9wZXJ0eV0sIGRldGFpbC5mb3JtYXQpIH19PC9zcGFuPlxuICAgICAgICAgIDxzcGFuICpuZ1N3aXRjaERlZmF1bHQ+e3sgaXRlbVtkZXRhaWwucHJvcGVydHldIH19PC9zcGFuPlxuICAgICAgICA8L25nLWNvbnRhaW5lcj5cbiAgICAgIDwvdGQ+XG4gICAgPC90cj5cbiAgPC90Ym9keT5cbjwvdGFibGU+XG4iXX0=