@ajf/material 13.0.0-next.9 → 13.0.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 (235) hide show
  1. package/{report-builder/index.d.ts → barcode/barcode_public_index.d.ts} +1 -1
  2. package/barcode/index.d.ts +19 -1
  3. package/barcode/package.json +2 -2
  4. package/calendar/calendar_public_index.d.ts +4 -0
  5. package/calendar/index.d.ts +19 -1
  6. package/calendar/package.json +2 -2
  7. package/checkbox-group/checkbox-group_public_index.d.ts +4 -0
  8. package/checkbox-group/index.d.ts +19 -1
  9. package/checkbox-group/package.json +2 -2
  10. package/esm2020/barcode/barcode-module.mjs +7 -11
  11. package/esm2020/barcode/barcode.mjs +6 -6
  12. package/esm2020/barcode/barcode_public_index.mjs +5 -0
  13. package/esm2020/barcode/index.mjs +20 -2
  14. package/esm2020/calendar/calendar-module.mjs +8 -28
  15. package/esm2020/calendar/calendar.mjs +7 -11
  16. package/esm2020/calendar/calendar_public_index.mjs +5 -0
  17. package/esm2020/calendar/index.mjs +20 -2
  18. package/esm2020/checkbox-group/checkbox-group-item.mjs +6 -6
  19. package/esm2020/checkbox-group/checkbox-group-module.mjs +8 -27
  20. package/esm2020/checkbox-group/checkbox-group_public_index.mjs +5 -0
  21. package/esm2020/checkbox-group/index.mjs +20 -2
  22. package/esm2020/form-builder/branch-line.mjs +5 -5
  23. package/esm2020/form-builder/choices-origin-data-source.mjs +1 -1
  24. package/esm2020/form-builder/choices-origin-editor-dialog.mjs +10 -7
  25. package/esm2020/form-builder/choices-origin-editor.mjs +4 -4
  26. package/esm2020/form-builder/condition-editor-dialog.mjs +4 -4
  27. package/esm2020/form-builder/condition-editor.mjs +12 -11
  28. package/esm2020/form-builder/form-builder-module.mjs +85 -34
  29. package/esm2020/form-builder/form-builder-service.mjs +135 -128
  30. package/esm2020/form-builder/form-builder-utils.mjs +4 -3
  31. package/esm2020/form-builder/form-builder.mjs +33 -29
  32. package/esm2020/form-builder/form-builder_public_index.mjs +5 -0
  33. package/esm2020/form-builder/index.mjs +20 -2
  34. package/esm2020/form-builder/node-entry.mjs +10 -8
  35. package/esm2020/form-builder/node-properties.mjs +320 -315
  36. package/esm2020/form-builder/node-type-entry.mjs +5 -5
  37. package/esm2020/form-builder/string-identifier-dialog.mjs +8 -10
  38. package/esm2020/form-builder/validation-condition-editor-dialog.mjs +4 -4
  39. package/esm2020/form-builder/warning-condition-editor-dialog.mjs +4 -4
  40. package/esm2020/forms/barcode-field.mjs +6 -6
  41. package/esm2020/forms/boolean-field.mjs +6 -6
  42. package/esm2020/forms/date-field.mjs +5 -5
  43. package/esm2020/forms/date-input-field.mjs +6 -6
  44. package/esm2020/forms/empty-field.mjs +6 -6
  45. package/esm2020/forms/field-service.mjs +45 -45
  46. package/esm2020/forms/field-warning-dialog.mjs +4 -4
  47. package/esm2020/forms/field.mjs +5 -5
  48. package/esm2020/forms/form.mjs +5 -5
  49. package/esm2020/forms/forms-module.mjs +119 -43
  50. package/esm2020/forms/forms_public_index.mjs +5 -0
  51. package/esm2020/forms/index.mjs +20 -2
  52. package/esm2020/forms/input-field.mjs +5 -5
  53. package/esm2020/forms/multiple-choice-field.mjs +6 -6
  54. package/esm2020/forms/range-field.mjs +6 -6
  55. package/esm2020/forms/single-choice-field.mjs +6 -6
  56. package/esm2020/forms/table-field.mjs +6 -6
  57. package/esm2020/forms/text-field.mjs +5 -5
  58. package/esm2020/forms/time-field.mjs +6 -6
  59. package/esm2020/forms/video-url-field.mjs +5 -5
  60. package/esm2020/forms/warning-alert-service.mjs +4 -4
  61. package/esm2020/image/image-module.mjs +8 -19
  62. package/esm2020/image/image.mjs +5 -5
  63. package/esm2020/image/image_public_index.mjs +5 -0
  64. package/esm2020/image/index.mjs +20 -2
  65. package/esm2020/monaco-editor/autocomplete-singleton-model.mjs +3 -2
  66. package/esm2020/monaco-editor/editor-options-model.mjs +1 -1
  67. package/esm2020/monaco-editor/index.mjs +20 -2
  68. package/esm2020/monaco-editor/monaco-editor-module.mjs +7 -11
  69. package/esm2020/monaco-editor/monaco-editor.mjs +6 -6
  70. package/esm2020/monaco-editor/monaco-editor_public_index.mjs +5 -0
  71. package/esm2020/node-icon/index.mjs +20 -2
  72. package/esm2020/node-icon/node-icon-module.mjs +8 -19
  73. package/esm2020/node-icon/node-icon.mjs +4 -4
  74. package/esm2020/node-icon/node-icon_public_index.mjs +5 -0
  75. package/esm2020/page-slider/index.mjs +20 -2
  76. package/esm2020/page-slider/page-slider-module.mjs +8 -14
  77. package/esm2020/page-slider/page-slider.mjs +5 -5
  78. package/esm2020/page-slider/page-slider_public_index.mjs +5 -0
  79. package/esm2020/reports/chart-widget.mjs +5 -5
  80. package/esm2020/reports/filter-widget.mjs +71 -0
  81. package/esm2020/reports/formula-widget.mjs +5 -5
  82. package/esm2020/reports/image-container-widget.mjs +5 -5
  83. package/esm2020/reports/image-widget.mjs +5 -5
  84. package/esm2020/reports/index.mjs +20 -2
  85. package/esm2020/reports/map-widget.mjs +5 -5
  86. package/esm2020/reports/page-break-widget.mjs +5 -5
  87. package/esm2020/reports/public-api.mjs +2 -1
  88. package/esm2020/reports/report.mjs +5 -5
  89. package/esm2020/reports/reports-module.mjs +15 -12
  90. package/esm2020/reports/reports_public_index.mjs +5 -0
  91. package/esm2020/reports/table-widget.mjs +6 -6
  92. package/esm2020/reports/text-widget.mjs +5 -5
  93. package/esm2020/reports/widget.mjs +19 -16
  94. package/esm2020/time/index.mjs +20 -2
  95. package/esm2020/time/time-module.mjs +8 -22
  96. package/esm2020/time/time.mjs +6 -6
  97. package/esm2020/time/time_public_index.mjs +5 -0
  98. package/fesm2015/barcode.mjs +32 -14
  99. package/fesm2015/barcode.mjs.map +1 -1
  100. package/fesm2015/calendar.mjs +34 -36
  101. package/fesm2015/calendar.mjs.map +1 -1
  102. package/fesm2015/checkbox-group.mjs +33 -30
  103. package/fesm2015/checkbox-group.mjs.map +1 -1
  104. package/fesm2015/form-builder.mjs +638 -544
  105. package/fesm2015/form-builder.mjs.map +1 -1
  106. package/fesm2015/forms.mjs +235 -137
  107. package/fesm2015/forms.mjs.map +1 -1
  108. package/fesm2015/image.mjs +32 -21
  109. package/fesm2015/image.mjs.map +1 -1
  110. package/fesm2015/monaco-editor.mjs +34 -15
  111. package/fesm2015/monaco-editor.mjs.map +1 -1
  112. package/fesm2015/node-icon.mjs +32 -21
  113. package/fesm2015/node-icon.mjs.map +1 -1
  114. package/fesm2015/page-slider.mjs +32 -16
  115. package/fesm2015/page-slider.mjs.map +1 -1
  116. package/fesm2015/reports.mjs +156 -66
  117. package/fesm2015/reports.mjs.map +1 -1
  118. package/fesm2015/time.mjs +33 -25
  119. package/fesm2015/time.mjs.map +1 -1
  120. package/fesm2020/barcode.mjs +32 -14
  121. package/fesm2020/barcode.mjs.map +1 -1
  122. package/fesm2020/calendar.mjs +34 -36
  123. package/fesm2020/calendar.mjs.map +1 -1
  124. package/fesm2020/checkbox-group.mjs +33 -30
  125. package/fesm2020/checkbox-group.mjs.map +1 -1
  126. package/fesm2020/form-builder.mjs +638 -544
  127. package/fesm2020/form-builder.mjs.map +1 -1
  128. package/fesm2020/forms.mjs +235 -137
  129. package/fesm2020/forms.mjs.map +1 -1
  130. package/fesm2020/image.mjs +32 -21
  131. package/fesm2020/image.mjs.map +1 -1
  132. package/fesm2020/monaco-editor.mjs +34 -15
  133. package/fesm2020/monaco-editor.mjs.map +1 -1
  134. package/fesm2020/node-icon.mjs +32 -21
  135. package/fesm2020/node-icon.mjs.map +1 -1
  136. package/fesm2020/page-slider.mjs +32 -16
  137. package/fesm2020/page-slider.mjs.map +1 -1
  138. package/fesm2020/reports.mjs +156 -66
  139. package/fesm2020/reports.mjs.map +1 -1
  140. package/fesm2020/time.mjs +33 -25
  141. package/fesm2020/time.mjs.map +1 -1
  142. package/form-builder/form-builder_public_index.d.ts +4 -0
  143. package/form-builder/index.d.ts +19 -1
  144. package/form-builder/node-properties.d.ts +1 -0
  145. package/form-builder/package.json +2 -2
  146. package/forms/forms_public_index.d.ts +4 -0
  147. package/forms/index.d.ts +19 -1
  148. package/forms/package.json +2 -2
  149. package/image/image_public_index.d.ts +4 -0
  150. package/image/index.d.ts +19 -1
  151. package/image/package.json +2 -2
  152. package/monaco-editor/index.d.ts +19 -1
  153. package/monaco-editor/monaco-editor_public_index.d.ts +4 -0
  154. package/monaco-editor/package.json +2 -2
  155. package/node-icon/index.d.ts +19 -1
  156. package/node-icon/node-icon_public_index.d.ts +4 -0
  157. package/node-icon/package.json +2 -2
  158. package/package.json +26 -36
  159. package/page-slider/index.d.ts +19 -1
  160. package/page-slider/package.json +2 -2
  161. package/page-slider/page-slider_public_index.d.ts +4 -0
  162. package/reports/filter-widget.d.ts +37 -0
  163. package/reports/index.d.ts +19 -1
  164. package/reports/package.json +2 -2
  165. package/reports/public-api.d.ts +1 -0
  166. package/reports/reports-module.d.ts +21 -19
  167. package/reports/reports_public_index.d.ts +4 -0
  168. package/time/index.d.ts +19 -1
  169. package/time/package.json +2 -2
  170. package/time/time_public_index.d.ts +4 -0
  171. package/esm2020/report-builder/column.mjs +0 -76
  172. package/esm2020/report-builder/condition-editor.mjs +0 -162
  173. package/esm2020/report-builder/content.mjs +0 -256
  174. package/esm2020/report-builder/custom-widget-dialog.mjs +0 -50
  175. package/esm2020/report-builder/custom-widget-toolbar-button.mjs +0 -67
  176. package/esm2020/report-builder/custom-widgets-toolbar.mjs +0 -124
  177. package/esm2020/report-builder/forms-analyzer-dialog.mjs +0 -328
  178. package/esm2020/report-builder/forms-analyzer.mjs +0 -244
  179. package/esm2020/report-builder/image-filter.mjs +0 -38
  180. package/esm2020/report-builder/image-group.mjs +0 -112
  181. package/esm2020/report-builder/index.mjs +0 -5
  182. package/esm2020/report-builder/models.mjs +0 -23
  183. package/esm2020/report-builder/operations.mjs +0 -23
  184. package/esm2020/report-builder/properties.mjs +0 -761
  185. package/esm2020/report-builder/public-api.mjs +0 -26
  186. package/esm2020/report-builder/quill-editor.mjs +0 -307
  187. package/esm2020/report-builder/renderer-widget.mjs +0 -243
  188. package/esm2020/report-builder/report-builder-drag-data.mjs +0 -23
  189. package/esm2020/report-builder/report-builder-module.mjs +0 -155
  190. package/esm2020/report-builder/report-builder-service.mjs +0 -1690
  191. package/esm2020/report-builder/report-builder.mjs +0 -51
  192. package/esm2020/report-builder/theme-color-dialog.mjs +0 -67
  193. package/esm2020/report-builder/theme-color.mjs +0 -196
  194. package/esm2020/report-builder/tokens.mjs +0 -24
  195. package/esm2020/report-builder/toolbar-dialog.mjs +0 -54
  196. package/esm2020/report-builder/toolbar.mjs +0 -91
  197. package/esm2020/report-builder/utils.mjs +0 -48
  198. package/esm2020/report-builder/widget-toolbar-button.mjs +0 -46
  199. package/esm2020/report-builder/widgets-row-buttons.mjs +0 -136
  200. package/esm2020/report-builder/widgets-toolbar.mjs +0 -80
  201. package/fesm2015/report-builder.mjs +0 -5184
  202. package/fesm2015/report-builder.mjs.map +0 -1
  203. package/fesm2020/report-builder.mjs +0 -5182
  204. package/fesm2020/report-builder.mjs.map +0 -1
  205. package/report-builder/_report-builder.scss +0 -0
  206. package/report-builder/column.d.ts +0 -66
  207. package/report-builder/condition-editor.d.ts +0 -70
  208. package/report-builder/content.d.ts +0 -145
  209. package/report-builder/custom-widget-dialog.d.ts +0 -13
  210. package/report-builder/custom-widget-toolbar-button.d.ts +0 -48
  211. package/report-builder/custom-widgets-toolbar.d.ts +0 -74
  212. package/report-builder/forms-analyzer-dialog.d.ts +0 -94
  213. package/report-builder/forms-analyzer.d.ts +0 -105
  214. package/report-builder/image-filter.d.ts +0 -29
  215. package/report-builder/image-group.d.ts +0 -72
  216. package/report-builder/models.d.ts +0 -43
  217. package/report-builder/operations.d.ts +0 -45
  218. package/report-builder/package.json +0 -9
  219. package/report-builder/properties.d.ts +0 -368
  220. package/report-builder/public-api.d.ts +0 -26
  221. package/report-builder/quill-editor.d.ts +0 -116
  222. package/report-builder/renderer-widget.d.ts +0 -83
  223. package/report-builder/report-builder-drag-data.d.ts +0 -32
  224. package/report-builder/report-builder-module.d.ts +0 -52
  225. package/report-builder/report-builder-service.d.ts +0 -725
  226. package/report-builder/report-builder.d.ts +0 -39
  227. package/report-builder/theme-color-dialog.d.ts +0 -45
  228. package/report-builder/theme-color.d.ts +0 -111
  229. package/report-builder/tokens.d.ts +0 -24
  230. package/report-builder/toolbar-dialog.d.ts +0 -12
  231. package/report-builder/toolbar.d.ts +0 -30
  232. package/report-builder/utils.d.ts +0 -29
  233. package/report-builder/widget-toolbar-button.d.ts +0 -31
  234. package/report-builder/widgets-row-buttons.d.ts +0 -60
  235. package/report-builder/widgets-toolbar.d.ts +0 -26
@@ -1,244 +0,0 @@
1
- import { AjfAggregationType, AjfChartType, AjfWidgetType } from '@ajf/core/reports';
2
- import { ChangeDetectionStrategy, Component, ViewEncapsulation } from '@angular/core';
3
- import { MatDialog } from '@angular/material/dialog';
4
- import { Subscription } from 'rxjs';
5
- import { AjfReportBuilderFormsAnalyzerDialog } from './forms-analyzer-dialog';
6
- import { AjfReportBuilderService } from './report-builder-service';
7
- import * as i0 from "@angular/core";
8
- import * as i1 from "./report-builder-service";
9
- import * as i2 from "@angular/material/dialog";
10
- import * as i3 from "@angular/material/tabs";
11
- import * as i4 from "@angular/material/button";
12
- import * as i5 from "@angular/material/grid-list";
13
- import * as i6 from "@angular/common";
14
- import * as i7 from "@ngneat/transloco";
15
- /**
16
- * this component provides the support for connect the form fields with the report
17
- *
18
- * @export
19
- */
20
- export class AjfReportBuilderFormsAnalyzer {
21
- constructor(_service, dialog) {
22
- this._service = _service;
23
- this.dialog = dialog;
24
- this.currentWidget = null;
25
- this.forms = [];
26
- this.choicesOrigins = {};
27
- this.currentMainDataIndex = -1;
28
- this._dataset = [];
29
- this._currentWidgetSub = Subscription.EMPTY;
30
- this._formAnalyzerSub = Subscription.EMPTY;
31
- this._currentWidgetSub = this._service.currentWidget.subscribe(x => {
32
- if (x != null) {
33
- this.currentWidget = x;
34
- // this._dataset = myObj.dataset;
35
- }
36
- else {
37
- this.currentWidget = null;
38
- }
39
- });
40
- this._formAnalyzerSub = this._service.formsVariables.subscribe((x) => {
41
- if (x != null) {
42
- this.formsVariables = x;
43
- }
44
- });
45
- }
46
- setCurrentIndex(index) {
47
- this.currentMainDataIndex = index;
48
- }
49
- isSelected(index) {
50
- if (index === this.currentMainDataIndex) {
51
- return 'primary';
52
- }
53
- else {
54
- return undefined;
55
- }
56
- }
57
- /**
58
- * get the X components label of the chart.
59
- * they are contained in the first row of dataset
60
- *
61
- *
62
- * @memberof AjfReportBuilderFormsAnalyzer
63
- */
64
- getMainData() {
65
- if (this._dataset[0] != null) {
66
- let mainData = [];
67
- for (let i = 0; i < this._dataset[0].length; i++) {
68
- mainData.push(this._dataset[0][i].label || '');
69
- }
70
- return mainData;
71
- }
72
- else {
73
- return [];
74
- }
75
- }
76
- /**
77
- * get the Y components label of the chart.
78
- * they are contained in the first column of dataset
79
- *
80
- *
81
- * @memberof AjfReportBuilderFormsAnalyzer
82
- */
83
- getDataset() {
84
- let dataset = [];
85
- if (this._dataset[0] != null) {
86
- for (let i = 1; i < this._dataset.length; i++) {
87
- dataset.push(this._dataset[i][0].label || '');
88
- }
89
- return dataset;
90
- }
91
- else {
92
- return [];
93
- }
94
- }
95
- /**
96
- * get the related data label of the chart.
97
- * they are contained in the row of the Y component
98
- *
99
- *
100
- * @memberof AjfReportBuilderFormsAnalyzer
101
- */
102
- getRelatedData() {
103
- if (this._dataset[this.currentMainDataIndex + 1] != null) {
104
- let relatedData = [];
105
- for (let i = 1; i < this._dataset[this.currentMainDataIndex + 1].length; i++) {
106
- relatedData.push(this._dataset[this.currentMainDataIndex + 1][i].label || '');
107
- }
108
- return relatedData;
109
- }
110
- else {
111
- return [];
112
- }
113
- }
114
- getTableHeader() {
115
- let mainData = [];
116
- if (this._dataset != null) {
117
- for (let i = 0; i < this._dataset.length; i++) {
118
- if (this._dataset[i][0] != null) {
119
- mainData.push(this._dataset[i][0].label || '');
120
- }
121
- }
122
- }
123
- return mainData;
124
- }
125
- getTableData() {
126
- if (this._dataset[this.currentMainDataIndex] != null) {
127
- let tableData = [];
128
- for (let i = 1; i < this._dataset[this.currentMainDataIndex].length; i++) {
129
- if (this._dataset[this.currentMainDataIndex][i] != null) {
130
- tableData.push(this._dataset[this.currentMainDataIndex][i].label || '');
131
- }
132
- }
133
- return tableData;
134
- }
135
- else {
136
- return [];
137
- }
138
- }
139
- needMainData() {
140
- let myObj = this.currentWidget;
141
- if (myObj.chartType === AjfChartType.Scatter || myObj.chartType === AjfChartType.Bubble) {
142
- return false;
143
- }
144
- else {
145
- return true;
146
- }
147
- }
148
- removeMainData(index) {
149
- this._service.removeMainData(index);
150
- }
151
- removeDataset(index) {
152
- this.currentMainDataIndex = index;
153
- this._service.removeRelatedData(this.currentMainDataIndex, -1);
154
- }
155
- removeTableMainData(index) {
156
- this._service.removeTableMainData(index);
157
- }
158
- removeRelatedData(index) {
159
- this._service.removeRelatedData(this.currentMainDataIndex, index);
160
- }
161
- removeData(mainIndex, index) {
162
- this._service.removeData(mainIndex, index);
163
- }
164
- /**
165
- *
166
- *
167
- *
168
- * @param index
169
- * @param editMode
170
- *
171
- * @memberof AjfReportBuilderFormsAnalyzer
172
- */
173
- openDialog(level, mainIndex, index, editMode) {
174
- this.dialogRef = this.dialog.open(AjfReportBuilderFormsAnalyzerDialog);
175
- if (editMode) {
176
- if (level === 1 && index === -1) {
177
- index = 0;
178
- }
179
- if (level === 1) {
180
- if (this.currentWidget != null && this.currentWidget.widgetType == AjfWidgetType.Chart) {
181
- mainIndex++;
182
- }
183
- index++;
184
- }
185
- this.dialogRef.componentInstance.labelText =
186
- this._dataset[mainIndex] && this._dataset[mainIndex][index].label || '';
187
- /* this.dialogRef.componentInstance.formula =
188
- this._dataset[mainIndex] &&
189
- this._dataset[mainIndex][index].formula.formula || ''; */
190
- this.dialogRef.componentInstance.aggregation =
191
- this._dataset[mainIndex] && this._dataset[mainIndex][index].aggregation.aggregation ||
192
- AjfAggregationType.None;
193
- }
194
- else {
195
- this.dialogRef.componentInstance.labelText = '';
196
- this.dialogRef.componentInstance.formula = '';
197
- this.dialogRef.componentInstance.aggregation = 0;
198
- }
199
- // this.dialogRef.componentInstance.formsVariables = this.formsVariables;
200
- this.dialogRef.componentInstance.currentWidget = this.currentWidget;
201
- this.dialogRef.componentInstance.level = level;
202
- this.dialogRef.componentInstance.mainIndex = mainIndex;
203
- this.dialogRef.componentInstance.index = index;
204
- this.dialogRef.componentInstance.init = false;
205
- }
206
- openDialogAddMainData() {
207
- this.openDialog(0, -1, -1, false);
208
- }
209
- openDialogChartEditMainData() {
210
- this.openDialog(0, 0, this.currentMainDataIndex, true);
211
- }
212
- openDialogTableEditMainData() {
213
- this.openDialog(0, this.currentMainDataIndex, 0, true);
214
- }
215
- openDialogChartAddDataset() {
216
- this.openDialog(1, -1, -1, false);
217
- }
218
- openDialogTableAddDataset() {
219
- this.openDialog(1, this.currentMainDataIndex, -1, false);
220
- }
221
- openDialogChartAddDataOfDataset() {
222
- this.openDialog(1, this.currentMainDataIndex, -1, false);
223
- }
224
- openDialogChartEditDataset() {
225
- this.openDialog(1, this.currentMainDataIndex, -1, true);
226
- }
227
- openDialogTableEditDataset(index) {
228
- this.openDialog(1, this.currentMainDataIndex, index, true);
229
- }
230
- openDialogChartEditDataOfDataset(index) {
231
- this.openDialog(1, this.currentMainDataIndex, index, true);
232
- }
233
- ngOnDestroy() {
234
- this._currentWidgetSub.unsubscribe();
235
- this._formAnalyzerSub.unsubscribe();
236
- }
237
- }
238
- AjfReportBuilderFormsAnalyzer.ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "13.0.0-next.15", ngImport: i0, type: AjfReportBuilderFormsAnalyzer, deps: [{ token: i1.AjfReportBuilderService }, { token: i2.MatDialog }], target: i0.ɵɵFactoryTarget.Component });
239
- AjfReportBuilderFormsAnalyzer.ɵcmp = i0.ɵɵngDeclareComponent({ minVersion: "12.0.0", version: "13.0.0-next.15", type: AjfReportBuilderFormsAnalyzer, selector: "ajf-report-builder-forms-analyzer", ngImport: i0, template: "<ng-template [ngIf]=\"currentWidget != null && formsVariables != null\">\n <ng-template [ngIf]=\"currentWidget.widgetType == 4\">\n <ng-template [ngIf]=\"needMainData()\">\n <mat-tab-group>\n <mat-tab [label]=\"'Main Data' | transloco\">\n <button\n mat-button\n (click)=\"openDialogAddMainData()\"\n style=\"width: 100%\"\n >\n Add Main Data\n </button>\n <mat-grid-list rowHeight=\"50px\" cols=\"3\">\n <ng-template\n ngFor\n let-label\n [ngForOf]=\"getMainData()\"\n let-idx=\"index\"\n >\n <mat-grid-tile> {{ label }} </mat-grid-tile>\n <mat-grid-tile>\n <button\n mat-button\n (click)=\"setCurrentIndex(idx);openDialogChartEditMainData()\"\n >\n {{'Edit'|transloco}}\n </button>\n </mat-grid-tile>\n <mat-grid-tile>\n <button mat-button (click)=\"removeMainData(idx)\">\n {{'Remove'|transloco}}\n </button>\n </mat-grid-tile>\n </ng-template>\n </mat-grid-list>\n <div class=\"ajf-ui ajf-divider\"></div>\n </mat-tab>\n </mat-tab-group>\n </ng-template>\n <mat-tab-group>\n <mat-tab label=\"dataset\">\n <button\n mat-button\n (click)=\"openDialogChartAddDataset()\"\n style=\"width: 100%\"\n >\n {{'add dataset'|transloco}}\n </button>\n <mat-grid-list rowHeight=\"50px\" cols=\"4\">\n <ng-template ngFor let-label [ngForOf]=\"getDataset()\" let-idx=\"index\">\n <mat-grid-tile>\n <button\n mat-button\n [color]=\"isSelected(idx)\"\n (click)=\"setCurrentIndex(idx)\"\n >\n {{ label|transloco }}\n </button>\n </mat-grid-tile>\n <mat-grid-tile>\n <button\n mat-button\n (click)=\"setCurrentIndex(idx);openDialogChartAddDataOfDataset()\"\n style=\"width: 100%\"\n >\n {{'add data'|transloco}}\n </button>\n </mat-grid-tile>\n <mat-grid-tile>\n <button\n mat-button\n (click)=\"setCurrentIndex(idx);openDialogChartEditDataset()\"\n >\n {{'Edit'|transloco}}\n </button>\n </mat-grid-tile>\n <mat-grid-tile>\n <button mat-button (click)=\"removeDataset(idx)\">\n {{'Remove'|transloco}}\n </button>\n </mat-grid-tile>\n </ng-template>\n </mat-grid-list>\n </mat-tab>\n <mat-tab label=\"data\">\n <mat-grid-list rowHeight=\"50px\" cols=\"3\">\n <ng-template\n ngFor\n let-label\n [ngForOf]=\"getRelatedData()\"\n let-idx=\"index\"\n >\n <mat-grid-tile> {{ label|transloco }} </mat-grid-tile>\n <mat-grid-tile>\n <button\n mat-button\n (click)=\"openDialogChartEditDataOfDataset(idx)\"\n >\n {{'Edit'|transloco}}\n </button>\n </mat-grid-tile>\n <mat-grid-tile>\n <button mat-button (click)=\"removeRelatedData(idx)\">\n {{'Remove'|transloco}}\n </button>\n </mat-grid-tile>\n </ng-template>\n </mat-grid-list>\n <div class=\"ajf-ui ajf-divider\"></div>\n </mat-tab>\n </mat-tab-group>\n </ng-template>\n <ng-template [ngIf]=\"currentWidget.widgetType == 5\">\n <ng-template [ngIf]=\"needMainData()\">\n <mat-tab-group>\n <mat-tab [label]=\"'Main Data' | transloco\">\n <button\n mat-button\n (click)=\"openDialogAddMainData()\"\n style=\"width: 100%\"\n >\n {{'Add Main Data'|transloco}}\n </button>\n <mat-grid-list rowHeight=\"50px\" cols=\"4\">\n <ng-template\n ngFor\n let-label\n [ngForOf]=\"getTableHeader()\"\n let-idx=\"index\"\n >\n <mat-grid-tile>\n <button\n mat-button\n [color]=\"isSelected(idx)\"\n (click)=\"setCurrentIndex(idx)\"\n >\n {{ label }}\n </button>\n </mat-grid-tile>\n <mat-grid-tile>\n <button\n mat-button\n (click)=\"setCurrentIndex(idx);openDialogTableAddDataset()\"\n style=\"width: 100%\"\n >\n {{'add data'|transloco}}\n </button>\n </mat-grid-tile>\n <mat-grid-tile>\n <button\n mat-button\n (click)=\"setCurrentIndex(idx);openDialogTableEditMainData()\"\n >\n {{'Edit'|transloco}}\n </button>\n </mat-grid-tile>\n <mat-grid-tile>\n <button mat-button (click)=\"removeTableMainData(idx)\">\n {{'Remove'|transloco}}\n </button>\n </mat-grid-tile>\n </ng-template>\n </mat-grid-list>\n <div class=\"ajf-ui ajf-divider\"></div>\n </mat-tab>\n <mat-tab [label]=\"'data' | transloco\">\n <mat-grid-list rowHeight=\"50px\" cols=\"3\">\n <ng-template\n ngFor\n let-label\n [ngForOf]=\"getTableData()\"\n let-idx=\"index\"\n >\n <mat-grid-tile> {{ label|transloco }} </mat-grid-tile>\n <mat-grid-tile>\n <button mat-button (click)=\"openDialogTableEditDataset(idx)\">\n {{'Edit'|transloco}}\n </button>\n </mat-grid-tile>\n <mat-grid-tile>\n <button\n mat-button\n (click)=\"removeData(currentMainDataIndex, idx + 1)\"\n >\n {{'Remove'|transloco}}\n </button>\n </mat-grid-tile>\n </ng-template>\n </mat-grid-list>\n <div class=\"ajf-ui ajf-divider\"></div>\n </mat-tab>\n </mat-tab-group>\n </ng-template>\n </ng-template>\n</ng-template>\n", styles: ["ajf-report-builder-forms-analyzer{min-height:512px}ajf-report-builder-forms-analyzer .ajf-editor{flex:.75 0 auto;display:flex;flex-direction:row;align-items:stretch}ajf-report-builder-forms-analyzer .ajf-editor monaco-editor{flex:1 0 auto;min-width:512px;min-height:256px}ajf-report-builder-forms-analyzer mat-dialog-container{flex:1 0 auto;min-width:512px;min-height:256px}ajf-report-builder-forms-analyzer .ajf-editor-panel{flex:.25 0 auto;overflow-y:auto}ajf-report-builder-forms-analyzer .mat-list-item-content{position:normal !important;display:block !important;height:350px !important}ajf-report-builder-forms-analyzer mat-tab-group .mat-tab-body-wrapper,ajf-report-builder-forms-analyzer mat-tab-group .mat-list-item-content{position:normal !important;display:block !important;height:350px !important}\n"], components: [{ type: i3.MatTabGroup, selector: "mat-tab-group", inputs: ["color", "disableRipple"], exportAs: ["matTabGroup"] }, { type: i3.MatTab, selector: "mat-tab", inputs: ["disabled", "label", "aria-label", "aria-labelledby"], exportAs: ["matTab"] }, { type: i4.MatButton, selector: "button[mat-button], button[mat-raised-button], button[mat-icon-button], button[mat-fab], button[mat-mini-fab], button[mat-stroked-button], button[mat-flat-button]", inputs: ["disabled", "disableRipple", "color"], exportAs: ["matButton"] }, { type: i5.MatGridList, selector: "mat-grid-list", inputs: ["cols", "gutterSize", "rowHeight"], exportAs: ["matGridList"] }, { type: i5.MatGridTile, selector: "mat-grid-tile", inputs: ["rowspan", "colspan"], exportAs: ["matGridTile"] }], directives: [{ type: i6.NgIf, selector: "[ngIf]", inputs: ["ngIf", "ngIfThen", "ngIfElse"] }, { type: i6.NgForOf, selector: "[ngFor][ngForOf]", inputs: ["ngForOf", "ngForTrackBy", "ngForTemplate"] }], pipes: { "transloco": i7.TranslocoPipe }, changeDetection: i0.ChangeDetectionStrategy.OnPush, encapsulation: i0.ViewEncapsulation.None });
240
- i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "13.0.0-next.15", ngImport: i0, type: AjfReportBuilderFormsAnalyzer, decorators: [{
241
- type: Component,
242
- args: [{ selector: 'ajf-report-builder-forms-analyzer', encapsulation: ViewEncapsulation.None, changeDetection: ChangeDetectionStrategy.OnPush, template: "<ng-template [ngIf]=\"currentWidget != null && formsVariables != null\">\n <ng-template [ngIf]=\"currentWidget.widgetType == 4\">\n <ng-template [ngIf]=\"needMainData()\">\n <mat-tab-group>\n <mat-tab [label]=\"'Main Data' | transloco\">\n <button\n mat-button\n (click)=\"openDialogAddMainData()\"\n style=\"width: 100%\"\n >\n Add Main Data\n </button>\n <mat-grid-list rowHeight=\"50px\" cols=\"3\">\n <ng-template\n ngFor\n let-label\n [ngForOf]=\"getMainData()\"\n let-idx=\"index\"\n >\n <mat-grid-tile> {{ label }} </mat-grid-tile>\n <mat-grid-tile>\n <button\n mat-button\n (click)=\"setCurrentIndex(idx);openDialogChartEditMainData()\"\n >\n {{'Edit'|transloco}}\n </button>\n </mat-grid-tile>\n <mat-grid-tile>\n <button mat-button (click)=\"removeMainData(idx)\">\n {{'Remove'|transloco}}\n </button>\n </mat-grid-tile>\n </ng-template>\n </mat-grid-list>\n <div class=\"ajf-ui ajf-divider\"></div>\n </mat-tab>\n </mat-tab-group>\n </ng-template>\n <mat-tab-group>\n <mat-tab label=\"dataset\">\n <button\n mat-button\n (click)=\"openDialogChartAddDataset()\"\n style=\"width: 100%\"\n >\n {{'add dataset'|transloco}}\n </button>\n <mat-grid-list rowHeight=\"50px\" cols=\"4\">\n <ng-template ngFor let-label [ngForOf]=\"getDataset()\" let-idx=\"index\">\n <mat-grid-tile>\n <button\n mat-button\n [color]=\"isSelected(idx)\"\n (click)=\"setCurrentIndex(idx)\"\n >\n {{ label|transloco }}\n </button>\n </mat-grid-tile>\n <mat-grid-tile>\n <button\n mat-button\n (click)=\"setCurrentIndex(idx);openDialogChartAddDataOfDataset()\"\n style=\"width: 100%\"\n >\n {{'add data'|transloco}}\n </button>\n </mat-grid-tile>\n <mat-grid-tile>\n <button\n mat-button\n (click)=\"setCurrentIndex(idx);openDialogChartEditDataset()\"\n >\n {{'Edit'|transloco}}\n </button>\n </mat-grid-tile>\n <mat-grid-tile>\n <button mat-button (click)=\"removeDataset(idx)\">\n {{'Remove'|transloco}}\n </button>\n </mat-grid-tile>\n </ng-template>\n </mat-grid-list>\n </mat-tab>\n <mat-tab label=\"data\">\n <mat-grid-list rowHeight=\"50px\" cols=\"3\">\n <ng-template\n ngFor\n let-label\n [ngForOf]=\"getRelatedData()\"\n let-idx=\"index\"\n >\n <mat-grid-tile> {{ label|transloco }} </mat-grid-tile>\n <mat-grid-tile>\n <button\n mat-button\n (click)=\"openDialogChartEditDataOfDataset(idx)\"\n >\n {{'Edit'|transloco}}\n </button>\n </mat-grid-tile>\n <mat-grid-tile>\n <button mat-button (click)=\"removeRelatedData(idx)\">\n {{'Remove'|transloco}}\n </button>\n </mat-grid-tile>\n </ng-template>\n </mat-grid-list>\n <div class=\"ajf-ui ajf-divider\"></div>\n </mat-tab>\n </mat-tab-group>\n </ng-template>\n <ng-template [ngIf]=\"currentWidget.widgetType == 5\">\n <ng-template [ngIf]=\"needMainData()\">\n <mat-tab-group>\n <mat-tab [label]=\"'Main Data' | transloco\">\n <button\n mat-button\n (click)=\"openDialogAddMainData()\"\n style=\"width: 100%\"\n >\n {{'Add Main Data'|transloco}}\n </button>\n <mat-grid-list rowHeight=\"50px\" cols=\"4\">\n <ng-template\n ngFor\n let-label\n [ngForOf]=\"getTableHeader()\"\n let-idx=\"index\"\n >\n <mat-grid-tile>\n <button\n mat-button\n [color]=\"isSelected(idx)\"\n (click)=\"setCurrentIndex(idx)\"\n >\n {{ label }}\n </button>\n </mat-grid-tile>\n <mat-grid-tile>\n <button\n mat-button\n (click)=\"setCurrentIndex(idx);openDialogTableAddDataset()\"\n style=\"width: 100%\"\n >\n {{'add data'|transloco}}\n </button>\n </mat-grid-tile>\n <mat-grid-tile>\n <button\n mat-button\n (click)=\"setCurrentIndex(idx);openDialogTableEditMainData()\"\n >\n {{'Edit'|transloco}}\n </button>\n </mat-grid-tile>\n <mat-grid-tile>\n <button mat-button (click)=\"removeTableMainData(idx)\">\n {{'Remove'|transloco}}\n </button>\n </mat-grid-tile>\n </ng-template>\n </mat-grid-list>\n <div class=\"ajf-ui ajf-divider\"></div>\n </mat-tab>\n <mat-tab [label]=\"'data' | transloco\">\n <mat-grid-list rowHeight=\"50px\" cols=\"3\">\n <ng-template\n ngFor\n let-label\n [ngForOf]=\"getTableData()\"\n let-idx=\"index\"\n >\n <mat-grid-tile> {{ label|transloco }} </mat-grid-tile>\n <mat-grid-tile>\n <button mat-button (click)=\"openDialogTableEditDataset(idx)\">\n {{'Edit'|transloco}}\n </button>\n </mat-grid-tile>\n <mat-grid-tile>\n <button\n mat-button\n (click)=\"removeData(currentMainDataIndex, idx + 1)\"\n >\n {{'Remove'|transloco}}\n </button>\n </mat-grid-tile>\n </ng-template>\n </mat-grid-list>\n <div class=\"ajf-ui ajf-divider\"></div>\n </mat-tab>\n </mat-tab-group>\n </ng-template>\n </ng-template>\n</ng-template>\n", styles: ["ajf-report-builder-forms-analyzer{min-height:512px}ajf-report-builder-forms-analyzer .ajf-editor{flex:.75 0 auto;display:flex;flex-direction:row;align-items:stretch}ajf-report-builder-forms-analyzer .ajf-editor monaco-editor{flex:1 0 auto;min-width:512px;min-height:256px}ajf-report-builder-forms-analyzer mat-dialog-container{flex:1 0 auto;min-width:512px;min-height:256px}ajf-report-builder-forms-analyzer .ajf-editor-panel{flex:.25 0 auto;overflow-y:auto}ajf-report-builder-forms-analyzer .mat-list-item-content{position:normal !important;display:block !important;height:350px !important}ajf-report-builder-forms-analyzer mat-tab-group .mat-tab-body-wrapper,ajf-report-builder-forms-analyzer mat-tab-group .mat-list-item-content{position:normal !important;display:block !important;height:350px !important}\n"] }]
243
- }], ctorParameters: function () { return [{ type: i1.AjfReportBuilderService }, { type: i2.MatDialog }]; } });
244
- //# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoiZm9ybXMtYW5hbHl6ZXIuanMiLCJzb3VyY2VSb290IjoiIiwic291cmNlcyI6WyIuLi8uLi8uLi8uLi8uLi8uLi9zcmMvbWF0ZXJpYWwvcmVwb3J0LWJ1aWxkZXIvZm9ybXMtYW5hbHl6ZXIudHMiLCIuLi8uLi8uLi8uLi8uLi8uLi9zcmMvbWF0ZXJpYWwvcmVwb3J0LWJ1aWxkZXIvZm9ybXMtYW5hbHl6ZXIuaHRtbCJdLCJuYW1lcyI6W10sIm1hcHBpbmdzIjoiQUF1QkEsT0FBTyxFQUNMLGtCQUFrQixFQUNsQixZQUFZLEVBS1osYUFBYSxFQUNkLE1BQU0sbUJBQW1CLENBQUM7QUFDM0IsT0FBTyxFQUFDLHVCQUF1QixFQUFFLFNBQVMsRUFBYSxpQkFBaUIsRUFBQyxNQUFNLGVBQWUsQ0FBQztBQUUvRixPQUFPLEVBQUMsU0FBUyxFQUFlLE1BQU0sMEJBQTBCLENBQUM7QUFDakUsT0FBTyxFQUFDLFlBQVksRUFBQyxNQUFNLE1BQU0sQ0FBQztBQUVsQyxPQUFPLEVBQUMsbUNBQW1DLEVBQUMsTUFBTSx5QkFBeUIsQ0FBQztBQUU1RSxPQUFPLEVBQUMsdUJBQXVCLEVBQUMsTUFBTSwwQkFBMEIsQ0FBQzs7Ozs7Ozs7O0FBRWpFOzs7O0dBSUc7QUFRSCxNQUFNLE9BQU8sNkJBQTZCO0lBZXhDLFlBQW9CLFFBQWlDLEVBQVMsTUFBaUI7UUFBM0QsYUFBUSxHQUFSLFFBQVEsQ0FBeUI7UUFBUyxXQUFNLEdBQU4sTUFBTSxDQUFXO1FBZC9FLGtCQUFhLEdBQW1CLElBQUksQ0FBQztRQUVyQyxVQUFLLEdBQWMsRUFBRSxDQUFDO1FBR3RCLG1CQUFjLEdBQVEsRUFBRSxDQUFDO1FBSXpCLHlCQUFvQixHQUFXLENBQUMsQ0FBQyxDQUFDO1FBQzFCLGFBQVEsR0FBbUIsRUFBRSxDQUFDO1FBQzlCLHNCQUFpQixHQUFpQixZQUFZLENBQUMsS0FBSyxDQUFDO1FBQ3JELHFCQUFnQixHQUFpQixZQUFZLENBQUMsS0FBSyxDQUFDO1FBRzFELElBQUksQ0FBQyxpQkFBaUIsR0FB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Q3hCLElBQUksQ0FBQyxVQUFVLENBQUMsQ0FBQyxFQUFFLElBQUksQ0FBQyxvQkFBb0IsRUFBRSxDQUFDLENBQUMsRUFBRSxJQUFJLENBQUMsQ0FBQztJQUMxRCxDQUFDO0lBQ0QsMEJBQTBCLENBQUMsS0FBYTtRQUN0QyxJQUFJLENBQUMsVUFBVSxDQUFDLENBQUMsRUFBRSxJQUFJLENBQUMsb0JBQW9CLEVBQUUsS0FBSyxFQUFFLElBQUksQ0FBQyxDQUFDO0lBQzdELENBQUM7SUFDRCxnQ0FBZ0MsQ0FBQyxLQUFhO1FBQzVDLElBQUksQ0FBQyxVQUFVLENBQUMsQ0FBQyxFQUFFLElBQUksQ0FBQyxvQkFBb0IsRUFBRSxLQUFLLEVBQUUsSUFBSSxDQUFDLENBQUM7SUFDN0QsQ0FBQztJQUVELFdBQVc7UUFDVCxJQUFJLENBQUMsaUJBQWlCLENBQUMsV0FBVyxFQUFFLENBQUM7UUFDckMsSUFBSSxDQUFDLGdCQUFnQixDQUFDLFdBQVcsRUFBRSxDQUFDO0lBQ3RDLENBQUM7O2tJQS9PVSw2QkFBNkI7c0hBQTdCLDZCQUE2Qix5RUNyRDFDLHlqTkFtTUE7bUdEOUlhLDZCQUE2QjtrQkFQekMsU0FBUzsrQkFDRSxtQ0FBbUMsaUJBRzlCLGlCQUFpQixDQUFDLElBQUksbUJBQ3BCLHVCQUF1QixDQUFDLE1BQU0iLCJzb3VyY2VzQ29udGVudCI6WyIvKipcbiAqIEBsaWNlbnNlXG4gKiBDb3B5cmlnaHQgKEMpIEdudWNvb3Agc29jLiBjb29wLlxuICpcbiAqIFRoaXMgZmlsZSBpcyBwYXJ0IG9mIHRoZSBBZHZhbmNlZCBKU09OIGZvcm1zIChhamYpLlxuICpcbiAqIEFkdmFuY2VkIEpTT04gZm9ybXMgKGFqZikgaXMgZnJlZSBzb2Z0d2FyZTogeW91IGNhbiByZWRpc3RyaWJ1dGUgaXQgYW5kL29yXG4gKiBtb2RpZnkgaXQgdW5kZXIgdGhlIHRlcm1zIG9mIHRoZSBHTlUgQWZmZXJvIEdlbmVyYWwgUHVibGljIExpY2Vuc2UgYXNcbiAqIHB1Ymxpc2hlZCBieSB0aGUgRnJlZSBTb2Z0d2FyZSBGb3VuZGF0aW9uLCBlaXRoZXIgdmVyc2lvbiAzIG9mIHRoZSBMaWNlbnNlLFxuICogb3IgKGF0IHlvdXIgb3B0aW9uKSBhbnkgbGF0ZXIgdmVyc2lvbi5cbiAqXG4gKiBBZHZhbmNlZCBKU09OIGZvcm1zIChhamYpIGlzIGRpc3RyaWJ1dGVkIGluIHRoZSBob3BlIHRoYXQgaXQgd2lsbCBiZSB1c2VmdWwsXG4gKiBidXQgV0lUSE9VVCBBTlkgV0FSUkFOVFk7IHdpdGhvdXQgZXZlbiB0aGUgaW1wbGllZCB3YXJyYW50eSBvZlxuICogTUVSQ0hBTlRBQklMSVRZIG9yIEZJVE5FU1MgRk9SIEEgUEFSVElDVUxBUiBQVVJQT1NFLiBTZWUgdGhlIEdOVSBBZmZlcm9cbiAqIEdlbmVyYWwgUHVibGljIExpY2Vuc2UgZm9yIG1vcmUgZGV0YWlscy5cbiAqXG4gKiBZb3Ugc2hvdWxkIGhhdmUgcmVjZWl2ZWQgYSBjb3B5IG9mIHRoZSBHTlUgQWZmZXJvIEdlbmVyYWwgUHVibGljIExpY2Vuc2VcbiAqIGFsb25nIHdpdGggQWR2YW5jZWQgSlNPTiBmb3JtcyAoYWpmKS5cbiAqIElmIG5vdCwgc2VlIGh0dHA6Ly93d3cuZ251Lm9yZy9saWNlbnNlcy8uXG4gKlxuICovXG5cbmltcG9ydCB7QWpmRm9ybX0gZnJvbSAnQGFqZi9jb3JlL2Zvcm1zJztcbmltcG9ydCB7XG4gIEFqZkFnZ3JlZ2F0aW9uVHlwZSxcbiAgQWpmQ2hhcnRUeXBlLFxuICBBamZDaGFydFdpZGdldCxcbiAgQWpmRGF0YXNldCxcbiAgQWpmRGF0YVdpZGdldCxcbiAgQWpmV2lkZ2V0LFxuICBBamZXaWRnZXRUeXBlXG59IGZyb20gJ0BhamYvY29yZS9yZXBvcnRzJztcbmltcG9ydCB7Q2hhbmdlRGV0ZWN0aW9uU3RyYXRlZ3ksIENvbXBvbmVudCwgT25EZXN0cm95LCBWaWV3RW5jYXBzdWxhdGlvbn0gZnJvbSAnQGFuZ3VsYXIvY29yZSc7XG5pbXBvcnQge1RoZW1lUGFsZXR0ZX0gZnJvbSAnQGFuZ3VsYXIvbWF0ZXJpYWwvY29yZSc7XG5pbXBvcnQge01hdERpYWxvZywgTWF0RGlhbG9nUmVmfSBmcm9tICdAYW5ndWxhci9tYXRlcmlhbC9kaWFsb2cnO1xuaW1wb3J0IHtTdWJzY3JpcHRpb259IGZyb20gJ3J4anMnO1xuXG5pbXBvcnQge0FqZlJlcG9ydEJ1aWxkZXJGb3Jtc0FuYWx5emVyRGlhbG9nfSBmcm9tICcuL2Zvcm1zLWFuYWx5emVyLWRpYWxvZyc7XG5pbXBvcnQge0FqZkZvcm1WYXJpYWJsZXN9IGZyb20gJy4vbW9kZWxzJztcbmltcG9ydCB7QWpmUmVwb3J0QnVpbGRlclNlcnZpY2V9IGZyb20gJy4vcmVwb3J0LWJ1aWxkZXItc2VydmljZSc7XG5cbi8qKlxuICogdGhpcyBjb21wb25lbnQgcHJvdmlkZXMgdGhlIHN1cHBvcnQgZm9yIGNvbm5lY3QgdGhlIGZvcm0gZmllbGRzIHdpdGggdGhlIHJlcG9ydFxuICpcbiAqIEBleHBvcnRcbiAqL1xuQENvbXBvbmVudCh7XG4gIHNlbGVjdG9yOiAnYWpmLXJlcG9ydC1idWlsZGVyLWZvcm1zLWFuYWx5emVyJyxcbiAgdGVtcGxhdGVVcmw6ICdmb3Jtcy1hbmFseXplci5odG1sJyxcbiAgc3R5bGVVcmxzOiBbJ2Zvcm1zLWFuYWx5emVyLmNzcyddLFxuICBlbmNhcHN1bGF0aW9uOiBWaWV3RW5jYXBzdWxhdGlvbi5Ob25lLFxuICBjaGFuZ2VEZXRlY3Rpb246IENoYW5nZURldGVjdGlvblN0cmF0ZWd5Lk9uUHVzaFxufSlcbmV4cG9ydCBjbGFzcyBBamZSZXBvcnRCdWlsZGVyRm9ybXNBbmFseXplciBpbXBsZW1lbnRzIE9uRGVzdHJveSB7XG4gIGN1cnJlbnRXaWRnZXQ6IEFqZldpZGdldHxudWxsID0gbnVsbDtcblxuICBmb3JtczogQWpmRm9ybVtdID0gW107XG5cbiAgZm9ybXNWYXJpYWJsZXM6IEFqZkZvcm1WYXJpYWJsZXNbXTtcbiAgY2hvaWNlc09yaWdpbnM6IGFueSA9IHt9O1xuXG4gIGRpYWxvZ1JlZjogTWF0RGlhbG9nUmVmPEFqZlJlcG9ydEJ1aWxkZXJGb3Jtc0FuYWx5emVyRGlhbG9nPjtcblxuICBjdXJyZW50TWFpbkRhdGFJbmRleDogbnVtYmVyID0gLTE7XG4gIHByaXZhdGUgX2RhdGFzZXQ6IEFqZkRhdGFzZXRbXVtdID0gW107XG4gIHByaXZhdGUgX2N1cnJlbnRXaWRnZXRTdWI6IFN1YnNjcmlwdGlvbiA9IFN1YnNjcmlwdGlvbi5FTVBUWTtcbiAgcHJpdmF0ZSBfZm9ybUFuYWx5emVyU3ViOiBTdWJzY3JpcHRpb24gPSBTdWJzY3JpcHRpb24uRU1QVFk7XG5cbiAgY29uc3RydWN0b3IocHJpdmF0ZSBfc2VydmljZTogQWpmUmVwb3J0QnVpbGRlclNlcnZpY2UsIHB1YmxpYyBkaWFsb2c6IE1hdERpYWxvZykge1xuICAgIHRoaXMuX2N1cnJlbnRXaWRnZXRTdWIgPSB0aGlzLl9zZXJ2aWNlLmN1cnJlbnRXaWRnZXQuc3Vic2NyaWJlKHggPT4ge1xuICAgICAgaWYgKHggIT0gbnVsbCkge1xuICAgICAgICB0aGlzLmN1cnJlbnRXaWRnZXQgPSB4O1xuICAgICAgICAvLyB0aGlzLl9kYXRhc2V0ID0gbXlPYmouZGF0YXNldDtcbiAgICAgIH0gZWxzZSB7XG4gICAgICAgIHRoaXMuY3VycmVudFdpZGdldCA9IG51bGw7XG4gICAgICB9XG4gICAgfSk7XG5cblxuICAgIHRoaXMuX2Zvcm1BbmFseXplclN1YiA9IHRoaXMuX3NlcnZpY2UuZm9ybXNWYXJpYWJsZXMuc3Vic2NyaWJlKCh4KSA9PiB7XG4gICAgICBpZiAoeCAhPSBudWxsKSB7XG4gICAgICAgIHRoaXMuZm9ybXNWYXJpYWJsZXMgPSB4O1xuICAgICAgfVxuICAgIH0pO1xuICB9XG5cbiAgc2V0Q3VycmVudEluZGV4KGluZGV4OiBudW1iZXIpIHtcbiAgICB0aGlzLmN1cnJlbnRNYWluRGF0YUluZGV4ID0gaW5kZXg7XG4gIH1cblxuICBpc1NlbGVjdGVkKGluZGV4OiBudW1iZXIpOiBUaGVtZVBhbGV0dGUge1xuICAgIGlmIChpbmRleCA9PT0gdGhpcy5jdXJyZW50TWFpbkRhdGFJbmRleCkge1xuICAgICAgcmV0dXJuICdwcmltYXJ5JztcbiAgICB9IGVsc2Uge1xuICAgICAgcmV0dXJuIHVuZGVmaW5lZDtcbiAgICB9XG4gIH1cblxuICAvKipcbiAgICogIGdldCB0aGUgWCBjb21wb25lbnRzIGxhYmVsIG9mIHRoZSBjaGFydC5cbiAgICogIHRoZXkgYXJlIGNvbnRhaW5lZCBpbiB0aGUgZmlyc3Qgcm93IG9mIGRhdGFzZXRcbiAgICpcbiAgICpcbiAgICogQG1lbWJlcm9mIEFqZlJlcG9ydEJ1aWxkZXJGb3Jtc0FuYWx5emVyXG4gICAqL1xuICBnZXRNYWluRGF0YSgpOiBzdHJpbmdbXSB7XG4gICAgaWYgKHRoaXMuX2RhdGFzZXRbMF0gIT0gbnVsbCkge1xuICAgICAgbGV0IG1haW5EYXRhOiBzdHJpbmdbXSA9IFtdO1xuXG4gICAgICBmb3IgKGxldCBpID0gMDsgaSA8IHRoaXMuX2RhdGFzZXRbMF0ubGVuZ3RoOyBpKyspIHtcbiAgICAgICAgbWFpbkRhdGEucHVzaCh0aGlzLl9kYXRhc2V0WzBdW2ldLmxhYmVsIHx8ICcnKTtcbiAgICAgIH1cbiAgICAgIHJldHVybiBtYWluRGF0YTtcbiAgICB9IGVsc2Uge1xuICAgICAgcmV0dXJuIFtdO1xuICAgIH1cbiAgfVxuXG4gIC8qKlxuICAgKiAgZ2V0IHRoZSBZIGNvbXBvbmVudHMgbGFiZWwgb2YgdGhlIGNoYXJ0LlxuICAgKiAgdGhleSBhcmUgY29udGFpbmVkIGluIHRoZSBmaXJzdCBjb2x1bW4gb2YgZGF0YXNldFxuICAgKlxuICAgKlxuICAgKiBAbWVtYmVyb2YgQWpmUmVwb3J0QnVpbGRlckZvcm1zQW5hbHl6ZXJcbiAgICovXG4gIGdldERhdGFzZXQoKTogc3RyaW5nW10ge1xuICAgIGxldCBkYXRhc2V0OiBzdHJpbmdbXSA9IFtdO1xuICAgIGlmICh0aGlzLl9kYXRhc2V0WzBdICE9IG51bGwpIHtcbiAgICAgIGZvciAobGV0IGkgPSAxOyBpIDwgdGhpcy5fZGF0YXNldC5sZW5ndGg7IGkrKykge1xuICAgICAgICBkYXRhc2V0LnB1c2godGhpcy5fZGF0YXNldFtpXVswXS5sYWJlbCB8fCAnJyk7XG4gICAgICB9XG4gICAgICByZXR1cm4gZGF0YXNldDtcbiAgICB9IGVsc2Uge1xuICAgICAgcmV0dXJuIFtdO1xuICAgIH1cbiAgfVxuXG4gIC8qKlxuICAgKiBnZXQgdGhlIHJlbGF0ZWQgZGF0YSBsYWJlbCBvZiB0aGUgY2hhcnQuXG4gICAqIHRoZXkgYXJlIGNvbnRhaW5lZCBpbiB0aGUgcm93IG9mIHRoZSBZIGNvbXBvbmVudFxuICAgKlxuICAgKlxuICAgKiBAbWVtYmVyb2YgQWpmUmVwb3J0QnVpbGRlckZvcm1zQW5hbHl6ZXJcbiAgICovXG4gIGdldFJlbGF0ZWREYXRhKCk6IHN0cmluZ1tdIHtcbiAgICBpZiAodGhpcy5fZGF0YXNldFt0aGlzLmN1cnJlbnRNYWluRGF0YUluZGV4ICsgMV0gIT0gbnVsbCkge1xuICAgICAgbGV0IHJlbGF0ZWREYXRhOiBzdHJpbmdbXSA9IFtdO1xuXG4gICAgICBmb3IgKGxldCBpID0gMTsgaSA8IHRoaXMuX2RhdGFzZXRbdGhpcy5jdXJyZW50TWFpbkRhdGFJbmRleCArIDFdLmxlbmd0aDsgaSsrKSB7XG4gICAgICAgIHJlbGF0ZWREYXRhLnB1c2godGhpcy5fZGF0YXNldFt0aGlzLmN1cnJlbnRNYWluRGF0YUluZGV4ICsgMV1baV0ubGFiZWwgfHwgJycpO1xuICAgICAgfVxuICAgICAgcmV0dXJuIHJlbGF0ZWREYXRhO1xuICAgIH0gZWxzZSB7XG4gICAgICByZXR1cm4gW107XG4gICAgfVxuICB9XG5cbiAgZ2V0VGFibGVIZWFkZXIoKTogc3RyaW5nW10ge1xuICAgIGxldCBtYWluRGF0YTogc3RyaW5nW10gPSBbXTtcbiAgICBpZiAodGhpcy5fZGF0YXNldCAhPSBudWxsKSB7XG4gICAgICBmb3IgKGxldCBpID0gMDsgaSA8IHRoaXMuX2RhdGFzZXQubGVuZ3RoOyBpKyspIHtcbiAgICAgICAgaWYgKHRoaXMuX2RhdGFzZXRbaV1bMF0gIT0gbnVsbCkge1xuICAgICAgICAgIG1haW5EYXRhLnB1c2godGhpcy5fZGF0YXNldFtpXVswXS5sYWJlbCB8fCAnJyk7XG4gICAgICAgIH1cbiAgICAgIH1cbiAgICB9XG4gICAgcmV0dXJuIG1haW5EYXRhO1xuICB9XG5cbiAgZ2V0VGFibGVEYXRhKCk6IHN0cmluZ1tdIHtcbiAgICBpZiAodGhpcy5fZGF0YXNldFt0aGlzLmN1cnJlbnRNYWluRGF0YUluZGV4XSAhPSBudWxsKSB7XG4gICAgICBsZXQgdGFibGVEYXRhOiBzdHJpbmdbXSA9IFtdO1xuXG4gICAgICBmb3IgKGxldCBpID0gMTsgaSA8IHRoaXMuX2RhdGFzZXRbdGhpcy5jdXJyZW50TWFpbkRhdGFJbmRleF0ubGVuZ3RoOyBpKyspIHtcbiAgICAgICAgaWYgKHRoaXMuX2RhdGFzZXRbdGhpcy5jdXJyZW50TWFpbkRhdGFJbmRleF1baV0gIT0gbnVsbCkge1xuICAgICAgICAgIHRhYmxlRGF0YS5wdXNoKHRoaXMuX2RhdGFzZXRbdGhpcy5jdXJyZW50TWFpbkRhdGFJbmRleF1baV0ubGFiZWwgfHwgJycpO1xuICAgICAgICB9XG4gICAgICB9XG4gICAgICByZXR1cm4gdGFibGVEYXRhO1xuICAgIH0gZWxzZSB7XG4gICAgICByZXR1cm4gW107XG4gICAgfVxuICB9XG5cbiAgbmVlZE1haW5EYXRhKCk6IGJvb2xlYW4ge1xuICAgIGxldCBteU9iaiA9IDxBamZDaGFydFdpZGdldD50aGlzLmN1cnJlbnRXaWRnZXQ7XG4gICAgaWYgKG15T2JqLmNoYXJ0VHlwZSA9PT0gQWpmQ2hhcnRUeXBlLlNjYXR0ZXIgfHwgbXlPYmouY2hhcnRUeXBlID09PSBBamZDaGFydFR5cGUuQnViYmxlKSB7XG4gICAgICByZXR1cm4gZmFsc2U7XG4gICAgfSBlbHNlIHtcbiAgICAgIHJldHVybiB0cnVlO1xuICAgIH1cbiAgfVxuXG4gIHJlbW92ZU1haW5EYXRhKGluZGV4OiBudW1iZXIpIHtcbiAgICB0aGlzLl9zZXJ2aWNlLnJlbW92ZU1haW5EYXRhKGluZGV4KTtcbiAgfVxuXG4gIHJlbW92ZURhdGFzZXQoaW5kZXg6IG51bWJlcikge1xuICAgIHRoaXMuY3VycmVudE1haW5EYXRhSW5kZXggPSBpbmRleDtcbiAgICB0aGlzLl9zZXJ2aWNlLnJlbW92ZVJlbGF0ZWREYXRhKHRoaXMuY3VycmVudE1haW5EYXRhSW5kZXgsIC0xKTtcbiAgfVxuICByZW1vdmVUYWJsZU1haW5EYXRhKGluZGV4OiBudW1iZXIpIHtcbiAgICB0aGlzLl9zZXJ2aWNlLnJlbW92ZVRhYmxlTWFpbkRhdGEoaW5kZXgpO1xuICB9XG5cbiAgcmVtb3ZlUmVsYXRlZERhdGEoaW5kZXg6IG51bWJlcikge1xuICAgIHRoaXMuX3NlcnZpY2UucmVtb3ZlUmVsYXRlZERhdGEodGhpcy5jdXJyZW50TWFpbkRhdGFJbmRleCwgaW5kZXgpO1xuICB9XG5cbiAgcmVtb3ZlRGF0YShtYWluSW5kZXg6IG51bWJlciwgaW5kZXg6IG51bWJlcikge1xuICAgIHRoaXMuX3NlcnZpY2UucmVtb3ZlRGF0YShtYWluSW5kZXgsIGluZGV4KTtcbiAgfVxuXG4gIC8qKlxuICAgKlxuICAgKlxuICAgKlxuICAgKiBAcGFyYW0gaW5kZXhcbiAgICogQHBhcmFtIGVkaXRNb2RlXG4gICAqXG4gICAqIEBtZW1iZXJvZiBBamZSZXBvcnRCdWlsZGVyRm9ybXNBbmFseXplclxuICAgKi9cbiAgb3BlbkRpYWxvZyhsZXZlbDogbnVtYmVyLCBtYWluSW5kZXg6IG51bWJlciwgaW5kZXg6IG51bWJlciwgZWRpdE1vZGU6IGJvb2xlYW4pIHtcbiAgICB0aGlzLmRpYWxvZ1JlZiA9IHRoaXMuZGlhbG9nLm9wZW4oQWpmUmVwb3J0QnVpbGRlckZvcm1zQW5hbHl6ZXJEaWFsb2cpO1xuXG4gICAgaWYgKGVkaXRNb2RlKSB7XG4gICAgICBpZiAobGV2ZWwgPT09IDEgJiYgaW5kZXggPT09IC0xKSB7XG4gICAgICAgIGluZGV4ID0gMDtcbiAgICAgIH1cbiAgICAgIGlmIChsZXZlbCA9PT0gMSkge1xuICAgICAgICBpZiAodGhpcy5jdXJyZW50V2lkZ2V0ICE9IG51bGwgJiYgdGhpcy5jdXJyZW50V2lkZ2V0LndpZGdldFR5cGUgPT0gQWpmV2lkZ2V0VHlwZS5DaGFydCkge1xuICAgICAgICAgIG1haW5JbmRleCsrO1xuICAgICAgICB9XG4gICAgICAgIGluZGV4Kys7XG4gICAgICB9XG5cbiAgICAgIHRoaXMuZGlhbG9nUmVmLmNvbXBvbmVudEluc3RhbmNlLmxhYmVsVGV4dCA9XG4gICAgICAgICAgdGhpcy5fZGF0YXNldFttYWluSW5kZXhdICYmIHRoaXMuX2RhdGFzZXRbbWFpbkluZGV4XVtpbmRleF0ubGFiZWwgfHwgJyc7XG4gICAgICAvKiB0aGlzLmRpYWxvZ1JlZi5jb21wb25lbnRJbnN0YW5jZS5mb3JtdWxhID1cbiAgICAgICAgdGhpcy5fZGF0YXNldFttYWluSW5kZXhdICYmXG4gICAgICAgIHRoaXMuX2RhdGFzZXRbbWFpbkluZGV4XVtpbmRleF0uZm9ybXVsYS5mb3JtdWxhIHx8ICcnOyAqL1xuICAgICAgdGhpcy5kaWFsb2dSZWYuY29tcG9uZW50SW5zdGFuY2UuYWdncmVnYXRpb24gPVxuICAgICAgICAgIHRoaXMuX2RhdGFzZXRbbWFpbkluZGV4XSAmJiB0aGlzLl9kYXRhc2V0W21haW5JbmRleF1baW5kZXhdLmFnZ3JlZ2F0aW9uLmFnZ3JlZ2F0aW9uIHx8XG4gICAgICAgICAgQWpmQWdncmVnYXRpb25UeXBlLk5vbmU7XG4gICAgfSBlbHNlIHtcbiAgICAgIHRoaXMuZGlhbG9nUmVmLmNvbXBvbmVudEluc3RhbmNlLmxhYmVsVGV4dCA9ICcnO1xuICAgICAgdGhpcy5kaWFsb2dSZWYuY29tcG9uZW50SW5zdGFuY2UuZm9ybXVsYSA9ICcnO1xuICAgICAgdGhpcy5kaWFsb2dSZWYuY29tcG9uZW50SW5zdGFuY2UuYWdncmVnYXRpb24gPSAwO1xuICAgIH1cblxuICAgIC8vIHRoaXMuZGlhbG9nUmVmLmNvbXBvbmVudEluc3RhbmNlLmZvcm1zVmFyaWFibGVzID0gdGhpcy5mb3Jtc1ZhcmlhYmxlcztcbiAgICB0aGlzLmRpYWxvZ1JlZi5jb21wb25lbnRJbnN0YW5jZS5jdXJyZW50V2lkZ2V0ID0gPEFqZkRhdGFXaWRnZXQ+dGhpcy5jdXJyZW50V2lkZ2V0O1xuICAgIHRoaXMuZGlhbG9nUmVmLmNvbXBvbmVudEluc3RhbmNlLmxldmVsID0gbGV2ZWw7XG4gICAgdGhpcy5kaWFsb2dSZWYuY29tcG9uZW50SW5zdGFuY2UubWFpbkluZGV4ID0gbWFpbkluZGV4O1xuICAgIHRoaXMuZGlhbG9nUmVmLmNvbXBvbmVudEluc3RhbmNlLmluZGV4ID0gaW5kZXg7XG4gICAgdGhpcy5kaWFsb2dSZWYuY29tcG9uZW50SW5zdGFuY2UuaW5pdCA9IGZhbHNlO1xuICB9XG5cbiAgb3BlbkRpYWxvZ0FkZE1haW5EYXRhKCkge1xuICAgIHRoaXMub3BlbkRpYWxvZygwLCAtMSwgLTEsIGZhbHNlKTtcbiAgfVxuXG4gIG9wZW5EaWFsb2dDaGFydEVkaXRNYWluRGF0YSgpIHtcbiAgICB0aGlzLm9wZW5EaWFsb2coMCwgMCwgdGhpcy5jdXJyZW50TWFpbkRhdGFJbmRleCwgdHJ1ZSk7XG4gIH1cblxuICBvcGVuRGlhbG9nVGFibGVFZGl0TWFpbkRhdGEoKSB7XG4gICAgdGhpcy5vcGVuRGlhbG9nKDAsIHRoaXMuY3VycmVudE1haW5EYXRhSW5kZXgsIDAsIHRydWUpO1xuICB9XG5cbiAgb3BlbkRpYWxvZ0NoYXJ0QWRkRGF0YXNldCgpIHtcbiAgICB0aGlzLm9wZW5EaWFsb2coMSwgLTEsIC0xLCBmYWxzZSk7XG4gIH1cbiAgb3BlbkRpYWxvZ1RhYmxlQWRkRGF0YXNldCgpIHtcbiAgICB0aGlzLm9wZW5EaWFsb2coMSwgdGhpcy5jdXJyZW50TWFpbkRhdGFJbmRleCwgLTEsIGZhbHNlKTtcbiAgfVxuICBvcGVuRGlhbG9nQ2hhcnRBZGREYXRhT2ZEYXRhc2V0KCkge1xuICAgIHRoaXMub3BlbkRpYWxvZygxLCB0aGlzLmN1cnJlbnRNYWluRGF0YUluZGV4LCAtMSwgZmFsc2UpO1xuICB9XG4gIG9wZW5EaWFsb2dDaGFydEVkaXREYXRhc2V0KCkge1xuICAgIHRoaXMub3BlbkRpYWxvZygxLCB0aGlzLmN1cnJlbnRNYWluRGF0YUluZGV4LCAtMSwgdHJ1ZSk7XG4gIH1cbiAgb3BlbkRpYWxvZ1RhYmxlRWRpdERhdGFzZXQoaW5kZXg6IG51bWJlcikge1xuICAgIHRoaXMub3BlbkRpYWxvZygxLCB0aGlzLmN1cnJlbnRNYWluRGF0YUluZGV4LCBpbmRleCwgdHJ1ZSk7XG4gIH1cbiAgb3BlbkRpYWxvZ0NoYXJ0RWRpdERhdGFPZkRhdGFzZXQoaW5kZXg6IG51bWJlcikge1xuICAgIHRoaXMub3BlbkRpYWxvZygxLCB0aGlzLmN1cnJlbnRNYWluRGF0YUluZGV4LCBpbmRleCwgdHJ1ZSk7XG4gIH1cblxuICBuZ09uRGVzdHJveSgpOiB2b2lkIHtcbiAgICB0aGlzLl9jdXJyZW50V2lkZ2V0U3ViLnVuc3Vic2NyaWJlKCk7XG4gICAgdGhpcy5fZm9ybUFuYWx5emVyU3ViLnVuc3Vic2NyaWJlKCk7XG4gIH1cbn1cbiIsIjxuZy10ZW1wbGF0ZSBbbmdJZl09XCJjdXJyZW50V2lkZ2V0ICE9IG51bGwgJiYgZm9ybXNWYXJpYWJsZXMgIT0gbnVsbFwiPlxuICA8bmctdGVtcGxhdGUgW25nSWZdPVwiY3VycmVudFdpZGdldC53aWRnZXRUeXBlID09IDRcIj5cbiAgICA8bmctdGVtcGxhdGUgW25nSWZdPVwibmVlZE1haW5EYXRhKClcIj5cbiAgICAgIDxtYXQtdGFiLWdyb3VwPlxuICAgICAgICA8bWF0LXRhYiBbbGFiZWxdPVwiJ01haW4gRGF0YScgfCB0cmFuc2xvY29cIj5cbiAgICAgICAgICA8YnV0dG9uXG4gICAgICAgICAgICBtYXQtYnV0dG9uXG4gICAgICAgICAgICAoY2xpY2spPVwib3BlbkRpYWxvZ0FkZE1haW5EYXRhKClcIlxuICAgICAgICAgICAgc3R5bGU9XCJ3aWR0aDogMTAwJVwiXG4gICAgICAgICAgPlxuICAgICAgICAgICAgQWRkIE1haW4gRGF0YVxuICAgICAgICAgIDwvYnV0dG9uPlxuICAgICAgICAgIDxtYXQtZ3JpZC1saXN0IHJvd0hlaWdodD1cIjUwcHhcIiBjb2xzPVwiM1wiPlxuICAgICAgICAgICAgPG5nLXRlbXBsYXRlXG4gICAgICAgICAgICAgIG5nRm9yXG4gICAgICAgICAgICAgIGxldC1sYWJlbFxuICAgICAgICAgICAgICBbbmdGb3JPZl09XCJnZXRNYWluRGF0YSgpXCJcbiAgICAgICAgICAgICAgbGV0LWlkeD1cImluZGV4XCJcbiAgICAgICAgICAgID5cbiAgICAgICAgICAgICAgPG1hdC1ncmlkLXRpbGU+IHt7IGxhYmVsIH19IDwvbWF0LWdyaWQtdGlsZT5cbiAgICAgICAgICAgICAgPG1hdC1ncmlkLXRpbGU+XG4gICAgICAgICAgICAgICAgPGJ1dHRvblxuICAgICAgICAgICAgICAgICAgbWF0LWJ1dHRvblxuICAgICAgICAgICAgICAgICAgKGNsaWNrKT1cInNldEN1cnJlbnRJbmRleChpZHgpO29wZW5EaWFsb2dDaGFydEVkaXRNYWluRGF0YSgpXCJcbiAgICAgICAgICAgICAgICA+XG4gICAgICAgICAgICAgICAgICB7eydFZGl0J3x0cmFuc2xvY299fVxuICAgICAgICAgICAgICAgIDwvYnV0dG9uPlxuICAgICAgICAgICAgICA8L21hdC1ncmlkLXRpbGU+XG4gICAgICAgICAgICAgIDxtYXQtZ3JpZC10aWxlPlxuICAgICAgICAgICAgICAgIDxidXR0b24gbWF0LWJ1dHRvbiAoY2xpY2spPVwicmVtb3ZlTWFpbkRhdGEoaWR4KVwiPlxuICAgICAgICAgICAgICAgICAge3snUmVtb3ZlJ3x0cmFuc2xvY299fVxuICAgICAgICAgICAgICAgIDwvYnV0dG9uPlxuICAgICAgICAgICAgICA8L21hdC1ncmlkLXRpbGU+XG4gICAgICAgICAgICA8L25nLXRlbXBsYXRlPlxuICAgICAgICAgIDwvbWF0LWdyaWQtbGlzdD5cbiAgICAgICAgICA8ZGl2IGNsYXNzPVwiYWpmLXVpIGFqZi1kaXZpZGVyXCI+PC9kaXY+XG4gICAgICAgIDwvbWF0LXRhYj5cbiAgICAgIDwvbWF0LXRhYi1ncm91cD5cbiAgICA8L25nLXRlbXBsYXRlPlxuICAgIDxtYXQtdGFiLWdyb3VwPlxuICAgICAgPG1hdC10YWIgbGFiZWw9XCJkYXRhc2V0XCI+XG4gICAgICAgIDxidXR0b25cbiAgICAgICAgICBtYXQtYnV0dG9uXG4gICAgICAgICAgKGNsaWNrKT1cIm9wZW5EaWFsb2dDaGFydEFkZERhdGFzZXQoKVwiXG4gICAgICAgICAgc3R5bGU9XCJ3aWR0aDogMTAwJVwiXG4gICAgICAgID5cbiAgICAgICAgICB7eydhZGQgZGF0YXNldCd8dHJhbnNsb2NvfX1cbiAgICAgICAgPC9idXR0b24+XG4gICAgICAgIDxtYXQtZ3JpZC1saXN0IHJvd0hlaWdodD1cIjUwcHhcIiBjb2xzPVwiNFwiPlxuICAgICAgICAgIDxuZy10ZW1wbGF0ZSBuZ0ZvciBsZXQtbGFiZWwgW25nRm9yT2ZdPVwiZ2V0RGF0YXNldCgpXCIgbGV0LWlkeD1cImluZGV4XCI+XG4gICAgICAgICAgICA8bWF0LWdyaWQtdGlsZT5cbiAgICAgICAgICAgICAgPGJ1dHRvblxuICAgICAgICAgICAgICAgIG1hdC1idXR0b25cbiAgICAgICAgICAgICAgICBbY29sb3JdPVwiaXNTZWxlY3RlZChpZHgpXCJcbiAgICAgICAgICAgICAgICAoY2xpY2spPVwic2V0Q3VycmVudEluZGV4KGlkeClcIlxuICAgICAgICAgICAgICA+XG4gICAgICAgICAgICAgICAge3sgbGFiZWx8dHJhbnNsb2NvIH19XG4gICAgICAgICAgICAgIDwvYnV0dG9uPlxuICAgICAgICAgICAgPC9tYXQtZ3JpZC10aWxlPlxuICAgICAgICAgICAgPG1hdC1ncmlkLXRpbGU+XG4gICAgICAgICAgICAgIDxidXR0b25cbiAgICAgICAgICAgICAgICBtYXQtYnV0dG9uXG4gICAgICAgICAgICAgICAgKGNsaWNrKT1cInNldEN1cnJlbnRJbmRleChpZHgpO29wZW5EaWFsb2dDaGFydEFkZERhdGFPZkRhdGFzZXQoKVwiXG4gICAgICAgICAgICAgICAgc3R5bGU9XCJ3aWR0aDogMTAwJVwiXG4gICAgICAgICAgICAgID5cbiAgICAgICAgICAgICAgICB7eydhZGQgZGF0YSd8dHJhbnNsb2NvfX1cbiAgICAgICAgICAgICAgPC9idXR0b24+XG4gICAgICAgICAgICA8L21hdC1ncmlkLXRpbGU+XG4gICAgICAgICAgICA8bWF0LWdyaWQtdGlsZT5cbiAgICAgICAgICAgICAgPGJ1dHRvblxuICAgICAgICAgICAgICAgIG1hdC1idXR0b25cbiAgICAgICAgICAgICAgICAoY2xpY2spPVwic2V0Q3VycmVudEluZGV4KGlkeCk7b3BlbkRpYWxvZ0NoYXJ0RWRpdERhdGFzZXQoKVwiXG4gICAgICAgICAgICAgID5cbiAgICAgICAgICAgICAgICB7eydFZGl0J3x0cmFuc2xvY299fVxuICAgICAgICAgICAgICA8L2J1dHRvbj5cbiAgICAgICAgICAgIDwvbWF0LWdyaWQtdGlsZT5cbiAgICAgICAgICAgIDxtYXQtZ3JpZC10aWxlPlxuICAgICAgICAgICAgICA8YnV0dG9uIG1hdC1idXR0b24gKGNsaWNrKT1cInJlbW92ZURhdGFzZXQoaWR4KVwiPlxuICAgICAgICAgICAgICAgIHt7J1JlbW92ZSd8dHJhbnNsb2NvfX1cbiAgICAgICAgICAgICAgPC9idXR0b24+XG4gICAgICAgICAgICA8L21hdC1ncmlkLXRpbGU+XG4gICAgICAgICAgPC9uZy10ZW1wbGF0ZT5cbiAgICAgICAgPC9tYXQtZ3JpZC1saXN0PlxuICAgICAgPC9tYXQtdGFiPlxuICAgICAgPG1hdC10YWIgbGFiZWw9XCJkYXRhXCI+XG4gICAgICAgIDxtYXQtZ3JpZC1saXN0IHJvd0hlaWdodD1cIjUwcHhcIiBjb2xzPVwiM1wiPlxuICAgICAgICAgIDxuZy10ZW1wbGF0ZVxuICAgICAgICAgICAgbmdGb3JcbiAgICAgICAgICAgIGxldC1sYWJlbFxuICAgICAgICAgICAgW25nRm9yT2ZdPVwiZ2V0UmVsYXRlZERhdGEoKVwiXG4gICAgICAgICAgICBsZXQtaWR4PVwiaW5kZXhcIlxuICAgICAgICAgID5cbiAgICAgICAgICAgIDxtYXQtZ3JpZC10aWxlPiB7eyBsYWJlbHx0cmFuc2xvY28gfX0gPC9tYXQtZ3JpZC10aWxlPlxuICAgICAgICAgICAgPG1hdC1ncmlkLXRpbGU+XG4gICAgICAgICAgICAgIDxidXR0b25cbiAgICAgICAgICAgICAgICBtYXQtYnV0dG9uXG4gICAgICAgICAgICAgICAgKGNsaWNrKT1cIm9wZW5EaWFsb2dDaGFydEVkaXREYXRhT2ZEYXRhc2V0KGlkeClcIlxuICAgICAgICAgICAgICA+XG4gICAgICAgICAgICAgICAge3snRWRpdCd8dHJhbnNsb2NvfX1cbiAgICAgICAgICAgICAgPC9idXR0b24+XG4gICAgICAgICAgICA8L21hdC1ncmlkLXRpbGU+XG4gICAgICAgICAgICA8bWF0LWdyaWQtdGlsZT5cbiAgICAgICAgICAgICAgPGJ1dHRvbiBtYXQtYnV0dG9uIChjbGljayk9XCJyZW1vdmVSZWxhdGVkRGF0YShpZHgpXCI+XG4gICAgICAgICAgICAgICAge3snUmVtb3ZlJ3x0cmFuc2xvY299fVxuICAgICAgICAgICAgICA8L2J1dHRvbj5cbiAgICAgICAgICAgIDwvbWF0LWdyaWQtdGlsZT5cbiAgICAgICAgICA8L25nLXRlbXBsYXRlPlxuICAgICAgICA8L21hdC1ncmlkLWxpc3Q+XG4gICAgICAgIDxkaXYgY2xhc3M9XCJhamYtdWkgYWpmLWRpdmlkZXJcIj48L2Rpdj5cbiAgICAgIDwvbWF0LXRhYj5cbiAgICA8L21hdC10YWItZ3JvdXA+XG4gIDwvbmctdGVtcGxhdGU+XG4gIDxuZy10ZW1wbGF0ZSBbbmdJZl09XCJjdXJyZW50V2lkZ2V0LndpZGdldFR5cGUgPT0gNVwiPlxuICAgIDxuZy10ZW1wbGF0ZSBbbmdJZl09XCJuZWVkTWFpbkRhdGEoKVwiPlxuICAgICAgPG1hdC10YWItZ3JvdXA+XG4gICAgICAgIDxtYXQtdGFiIFtsYWJlbF09XCInTWFpbiBEYXRhJyB8IHRyYW5zbG9jb1wiPlxuICAgICAgICAgIDxidXR0b25cbiAgICAgICAgICAgIG1hdC1idXR0b25cbiAgICAgICAgICAgIChjbGljayk9XCJvcGVuRGlhbG9nQWRkTWFpbkRhdGEoKVwiXG4gICAgICAgICAgICBzdHlsZT1cIndpZHRoOiAxMDAlXCJcbiAgICAgICAgICA+XG4gICAgICAgICAgICB7eydBZGQgTWFpbiBEYXRhJ3x0cmFuc2xvY299fVxuICAgICAgICAgIDwvYnV0dG9uPlxuICAgICAgICAgIDxtYXQtZ3JpZC1saXN0IHJvd0hlaWdodD1cIjUwcHhcIiBjb2xzPVwiNFwiPlxuICAgICAgICAgICAgPG5nLXRlbXBsYXRlXG4gICAgICAgICAgICAgIG5nRm9yXG4gICAgICAgICAgICAgIGxldC1sYWJlbFxuICAgICAgICAgICAgICBbbmdGb3JPZl09XCJnZXRUYWJsZUhlYWRlcigpXCJcbiAgICAgICAgICAgICAgbGV0LWlkeD1cImluZGV4XCJcbiAgICAgICAgICAgID5cbiAgICAgICAgICAgICAgPG1hdC1ncmlkLXRpbGU+XG4gICAgICAgICAgICAgICAgPGJ1dHRvblxuICAgICAgICAgICAgICAgICAgbWF0LWJ1dHRvblxuICAgICAgICAgICAgICAgICAgW2NvbG9yXT1cImlzU2VsZWN0ZWQoaWR4KVwiXG4gICAgICAgICAgICAgICAgICAoY2xpY2spPVwic2V0Q3VycmVudEluZGV4KGlkeClcIlxuICAgICAgICAgICAgICAgID5cbiAgICAgICAgICAgICAgICAgIHt7IGxhYmVsIH19XG4gICAgICAgICAgICAgICAgPC9idXR0b24+XG4gICAgICAgICAgICAgIDwvbWF0LWdyaWQtdGlsZT5cbiAgICAgICAgICAgICAgPG1hdC1ncmlkLXRpbGU+XG4gICAgICAgICAgICAgICAgPGJ1dHRvblxuICAgICAgICAgICAgICAgICAgbWF0LWJ1dHRvblxuICAgICAgICAgICAgICAgICAgKGNsaWNrKT1cInNldEN1cnJlbnRJbmRleChpZHgpO29wZW5EaWFsb2dUYWJsZUFkZERhdGFzZXQoKVwiXG4gICAgICAgICAgICAgICAgICBzdHlsZT1cIndpZHRoOiAxMDAlXCJcbiAgICAgICAgICAgICAgICA+XG4gICAgICAgICAgICAgICAgICB7eydhZGQgZGF0YSd8dHJhbnNsb2NvfX1cbiAgICAgICAgICAgICAgICA8L2J1dHRvbj5cbiAgICAgICAgICAgICAgPC9tYXQtZ3JpZC10aWxlPlxuICAgICAgICAgICAgICA8bWF0LWdyaWQtdGlsZT5cbiAgICAgICAgICAgICAgICA8YnV0dG9uXG4gICAgICAgICAgICAgICAgICBtYXQtYnV0dG9uXG4gICAgICAgICAgICAgICAgICAoY2xpY2spPVwic2V0Q3VycmVudEluZGV4KGlkeCk7b3BlbkRpYWxvZ1RhYmxlRWRpdE1haW5EYXRhKClcIlxuICAgICAgICAgICAgICAgID5cbiAgICAgICAgICAgICAgICAgIHt7J0VkaXQnfHRyYW5zbG9jb319XG4gICAgICAgICAgICAgICAgPC9idXR0b24+XG4gICAgICAgICAgICAgIDwvbWF0LWdyaWQtdGlsZT5cbiAgICAgICAgICAgICAgPG1hdC1ncmlkLXRpbGU+XG4gICAgICAgICAgICAgICAgPGJ1dHRvbiBtYXQtYnV0dG9uIChjbGljayk9XCJyZW1vdmVUYWJsZU1haW5EYXRhKGlkeClcIj5cbiAgICAgICAgICAgICAgICAgIHt7J1JlbW92ZSd8dHJhbnNsb2NvfX1cbiAgICAgICAgICAgICAgICA8L2J1dHRvbj5cbiAgICAgICAgICAgICAgPC9tYXQtZ3JpZC10aWxlPlxuICAgICAgICAgICAgPC9uZy10ZW1wbGF0ZT5cbiAgICAgICAgICA8L21hdC1ncmlkLWxpc3Q+XG4gICAgICAgICAgPGRpdiBjbGFzcz1cImFqZi11aSBhamYtZGl2aWRlclwiPjwvZGl2PlxuICAgICAgICA8L21hdC10YWI+XG4gICAgICAgIDxtYXQtdGFiIFtsYWJlbF09XCInZGF0YScgfCB0cmFuc2xvY29cIj5cbiAgICAgICAgICA8bWF0LWdyaWQtbGlzdCByb3dIZWlnaHQ9XCI1MHB4XCIgY29scz1cIjNcIj5cbiAgICAgICAgICAgIDxuZy10ZW1wbGF0ZVxuICAgICAgICAgICAgICBuZ0ZvclxuICAgICAgICAgICAgICBsZXQtbGFiZWxcbiAgICAgICAgICAgICAgW25nRm9yT2ZdPVwiZ2V0VGFibGVEYXRhKClcIlxuICAgICAgICAgICAgICBsZXQtaWR4PVwiaW5kZXhcIlxuICAgICAgICAgICAgPlxuICAgICAgICAgICAgICA8bWF0LWdyaWQtdGlsZT4ge3sgbGFiZWx8dHJhbnNsb2NvIH19IDwvbWF0LWdyaWQtdGlsZT5cbiAgICAgICAgICAgICAgPG1hdC1ncmlkLXRpbGU+XG4gICAgICAgICAgICAgICAgPGJ1dHRvbiBtYXQtYnV0dG9uIChjbGljayk9XCJvcGVuRGlhbG9nVGFibGVFZGl0RGF0YXNldChpZHgpXCI+XG4gICAgICAgICAgICAgICAgICB7eydFZGl0J3x0cmFuc2xvY299fVxuICAgICAgICAgICAgICAgIDwvYnV0dG9uPlxuICAgICAgICAgICAgICA8L21hdC1ncmlkLXRpbGU+XG4gICAgICAgICAgICAgIDxtYXQtZ3JpZC10aWxlPlxuICAgICAgICAgICAgICAgIDxidXR0b25cbiAgICAgICAgICAgICAgICAgIG1hdC1idXR0b25cbiAgICAgICAgICAgICAgICAgIChjbGljayk9XCJyZW1vdmVEYXRhKGN1cnJlbnRNYWluRGF0YUluZGV4LCBpZHggKyAxKVwiXG4gICAgICAgICAgICAgICAgPlxuICAgICAgICAgICAgICAgICAge3snUmVtb3ZlJ3x0cmFuc2xvY299fVxuICAgICAgICAgICAgICAgIDwvYnV0dG9uPlxuICAgICAgICAgICAgICA8L21hdC1ncmlkLXRpbGU+XG4gICAgICAgICAgICA8L25nLXRlbXBsYXRlPlxuICAgICAgICAgIDwvbWF0LWdyaWQtbGlzdD5cbiAgICAgICAgICA8ZGl2IGNsYXNzPVwiYWpmLXVpIGFqZi1kaXZpZGVyXCI+PC9kaXY+XG4gICAgICAgIDwvbWF0LXRhYj5cbiAgICAgIDwvbWF0LXRhYi1ncm91cD5cbiAgICA8L25nLXRlbXBsYXRlPlxuICA8L25nLXRlbXBsYXRlPlxuPC9uZy10ZW1wbGF0ZT5cbiJdfQ==
@@ -1,38 +0,0 @@
1
- /**
2
- * @license
3
- * Copyright (C) Gnucoop soc. coop.
4
- *
5
- * This file is part of the Advanced JSON forms (ajf).
6
- *
7
- * Advanced JSON forms (ajf) is free software: you can redistribute it and/or
8
- * modify it under the terms of the GNU Affero General Public License as
9
- * published by the Free Software Foundation, either version 3 of the License,
10
- * or (at your option) any later version.
11
- *
12
- * Advanced JSON forms (ajf) is distributed in the hope that it will be useful,
13
- * but WITHOUT ANY WARRANTY; without even the implied warranty of
14
- * MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the GNU Affero
15
- * General Public License for more details.
16
- *
17
- * You should have received a copy of the GNU Affero General Public License
18
- * along with Advanced JSON forms (ajf).
19
- * If not, see http://www.gnu.org/licenses/.
20
- *
21
- */
22
- import { Injectable, Pipe } from '@angular/core';
23
- import * as i0 from "@angular/core";
24
- export class AjfImageFilterPipe {
25
- transform(items, args) {
26
- return items.filter(item => (args.length === 0) || item.info.toLowerCase().includes(args.toLowerCase()));
27
- }
28
- }
29
- AjfImageFilterPipe.ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "13.0.0-next.15", ngImport: i0, type: AjfImageFilterPipe, deps: [], target: i0.ɵɵFactoryTarget.Pipe });
30
- AjfImageFilterPipe.ɵpipe = i0.ɵɵngDeclarePipe({ minVersion: "12.0.0", version: "13.0.0-next.15", ngImport: i0, type: AjfImageFilterPipe, name: "ajfImageFilter" });
31
- AjfImageFilterPipe.ɵprov = i0.ɵɵngDeclareInjectable({ minVersion: "12.0.0", version: "13.0.0-next.15", ngImport: i0, type: AjfImageFilterPipe });
32
- i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "13.0.0-next.15", ngImport: i0, type: AjfImageFilterPipe, decorators: [{
33
- type: Pipe,
34
- args: [{ name: 'ajfImageFilter' }]
35
- }, {
36
- type: Injectable
37
- }] });
38
- //# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoiaW1hZ2UtZmlsdGVyLmpzIiwic291cmNlUm9vdCI6IiIsInNvdXJjZXMiOlsiLi4vLi4vLi4vLi4vLi4vLi4vc3JjL21hdGVyaWFsL3JlcG9ydC1idWlsZGVyL2ltYWdlLWZpbHRlci50cyJdLCJuYW1lcyI6W10sIm1hcHBpbmdzIjoiQUFBQTs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7R0FvQkc7QUFFSCxPQUFPLEVBQUMsVUFBVSxFQUFFLElBQUksRUFBZ0IsTUFBTSxlQUFlLENBQUM7O0FBSTlELE1BQU0sT0FBTyxrQkFBa0I7SUFDN0IsU0FBUyxDQUFDLEtBQVksRUFBRSxJQUFTO1FBQy9CLE9BQU8sS0FBSyxDQUFDLE1BQU0sQ0FDZixJQUFJLENBQUMsRUFBRSxDQUFDLENBQUMsSUFBSSxDQUFDLE1BQU0sS0FBSyxDQUFDLENBQUMsSUFBSSxJQUFJLENBQUMsSUFBSSxDQUFDLFdBQVcsRUFBRSxDQUFDLFFBQVEsQ0FBQyxJQUFJLENBQUMsV0FBVyxFQUFFLENBQUMsQ0FBQyxDQUFDO0lBQzNGLENBQUM7O3VIQUpVLGtCQUFrQjtxSEFBbEIsa0JBQWtCOzJIQUFsQixrQkFBa0I7bUdBQWxCLGtCQUFrQjtrQkFGOUIsSUFBSTttQkFBQyxFQUFDLElBQUksRUFBRSxnQkFBZ0IsRUFBQzs7a0JBQzdCLFVBQVUiLCJzb3VyY2VzQ29udGVudCI6WyIvKipcbiAqIEBsaWNlbnNlXG4gKiBDb3B5cmlnaHQgKEMpIEdudWNvb3Agc29jLiBjb29wLlxuICpcbiAqIFRoaXMgZmlsZSBpcyBwYXJ0IG9mIHRoZSBBZHZhbmNlZCBKU09OIGZvcm1zIChhamYpLlxuICpcbiAqIEFkdmFuY2VkIEpTT04gZm9ybXMgKGFqZikgaXMgZnJlZSBzb2Z0d2FyZTogeW91IGNhbiByZWRpc3RyaWJ1dGUgaXQgYW5kL29yXG4gKiBtb2RpZnkgaXQgdW5kZXIgdGhlIHRlcm1zIG9mIHRoZSBHTlUgQWZmZXJvIEdlbmVyYWwgUHVibGljIExpY2Vuc2UgYXNcbiAqIHB1Ymxpc2hlZCBieSB0aGUgRnJlZSBTb2Z0d2FyZSBGb3VuZGF0aW9uLCBlaXRoZXIgdmVyc2lvbiAzIG9mIHRoZSBMaWNlbnNlLFxuICogb3IgKGF0IHlvdXIgb3B0aW9uKSBhbnkgbGF0ZXIgdmVyc2lvbi5cbiAqXG4gKiBBZHZhbmNlZCBKU09OIGZvcm1zIChhamYpIGlzIGRpc3RyaWJ1dGVkIGluIHRoZSBob3BlIHRoYXQgaXQgd2lsbCBiZSB1c2VmdWwsXG4gKiBidXQgV0lUSE9VVCBBTlkgV0FSUkFOVFk7IHdpdGhvdXQgZXZlbiB0aGUgaW1wbGllZCB3YXJyYW50eSBvZlxuICogTUVSQ0hBTlRBQklMSVRZIG9yIEZJVE5FU1MgRk9SIEEgUEFSVElDVUxBUiBQVVJQT1NFLiBTZWUgdGhlIEdOVSBBZmZlcm9cbiAqIEdlbmVyYWwgUHVibGljIExpY2Vuc2UgZm9yIG1vcmUgZGV0YWlscy5cbiAqXG4gKiBZb3Ugc2hvdWxkIGhhdmUgcmVjZWl2ZWQgYSBjb3B5IG9mIHRoZSBHTlUgQWZmZXJvIEdlbmVyYWwgUHVibGljIExpY2Vuc2VcbiAqIGFsb25nIHdpdGggQWR2YW5jZWQgSlNPTiBmb3JtcyAoYWpmKS5cbiAqIElmIG5vdCwgc2VlIGh0dHA6Ly93d3cuZ251Lm9yZy9saWNlbnNlcy8uXG4gKlxuICovXG5cbmltcG9ydCB7SW5qZWN0YWJsZSwgUGlwZSwgUGlwZVRyYW5zZm9ybX0gZnJvbSAnQGFuZ3VsYXIvY29yZSc7XG5cbkBQaXBlKHtuYW1lOiAnYWpmSW1hZ2VGaWx0ZXInfSlcbkBJbmplY3RhYmxlKClcbmV4cG9ydCBjbGFzcyBBamZJbWFnZUZpbHRlclBpcGUgaW1wbGVtZW50cyBQaXBlVHJhbnNmb3JtIHtcbiAgdHJhbnNmb3JtKGl0ZW1zOiBhbnlbXSwgYXJnczogYW55KTogYW55IHtcbiAgICByZXR1cm4gaXRlbXMuZmlsdGVyKFxuICAgICAgICBpdGVtID0+IChhcmdzLmxlbmd0aCA9PT0gMCkgfHwgaXRlbS5pbmZvLnRvTG93ZXJDYXNlKCkuaW5jbHVkZXMoYXJncy50b0xvd2VyQ2FzZSgpKSk7XG4gIH1cbn1cbiJdfQ==
@@ -1,112 +0,0 @@
1
- /**
2
- * @license
3
- * Copyright (C) Gnucoop soc. coop.
4
- *
5
- * This file is part of the Advanced JSON forms (ajf).
6
- *
7
- * Advanced JSON forms (ajf) is free software: you can redistribute it and/or
8
- * modify it under the terms of the GNU Affero General Public License as
9
- * published by the Free Software Foundation, either version 3 of the License,
10
- * or (at your option) any later version.
11
- *
12
- * Advanced JSON forms (ajf) is distributed in the hope that it will be useful,
13
- * but WITHOUT ANY WARRANTY; without even the implied warranty of
14
- * MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the GNU Affero
15
- * General Public License for more details.
16
- *
17
- * You should have received a copy of the GNU Affero General Public License
18
- * along with Advanced JSON forms (ajf).
19
- * If not, see http://www.gnu.org/licenses/.
20
- *
21
- */
22
- import { ChangeDetectionStrategy, Component, EventEmitter, Input, Output, ViewEncapsulation } from '@angular/core';
23
- import { AjfReportBuilderService } from './report-builder-service';
24
- import * as i0 from "@angular/core";
25
- import * as i1 from "./report-builder-service";
26
- import * as i2 from "@angular/material/button";
27
- import * as i3 from "@angular/material/card";
28
- import * as i4 from "@angular/material/grid-list";
29
- import * as i5 from "@angular/material/icon";
30
- import * as i6 from "@angular/material/form-field";
31
- import * as i7 from "./forms-analyzer";
32
- import * as i8 from "@angular/common";
33
- import * as i9 from "@angular/material/tooltip";
34
- import * as i10 from "@angular/forms";
35
- import * as i11 from "./image-filter";
36
- /**
37
- * this component handle a group of image object
38
- * there are 2 types of view
39
- * ajf-icon and class
40
- *
41
- * take a json in input
42
- * 'icon': 'false', // if true ajf-icon activated
43
- * 'class': ['flag-icon'], // add class in object style
44
- * 'prefixClass': 'flag-icon-', // prefix of class contained on data set
45
- * 'title': 'flags', title of data set
46
- * 'data': [
47
- * {
48
- * 'class': 'dz', strind added on prefix
49
- * 'info': 'Algeria' info related to object (exploit on toolTip)
50
- * }
51
- * ]
52
- * };
53
- *
54
- * @export
55
- */
56
- export class AjfReportBuilderImageGroup {
57
- constructor(_service) {
58
- this._service = _service;
59
- this._icon = null;
60
- this._classes = '';
61
- this.open = false;
62
- this.valueToSearch = '';
63
- /**
64
- * this event is fired when the user click on formula button on quill editor rool barƒ
65
- *
66
- * @memberof QuillEditorComponent
67
- */
68
- this.formulaClick = new EventEmitter();
69
- }
70
- get icon() {
71
- return this._icon;
72
- }
73
- get classes() {
74
- return this._classes;
75
- }
76
- setIcon(fontSet, fontIcon) {
77
- this._icon = { fontSet, fontIcon };
78
- this._service.setIcon(this._icon);
79
- }
80
- setFlag(value) {
81
- this._classes = value;
82
- this._service.setFlag(value);
83
- }
84
- setSearch(value) {
85
- this.valueToSearch = value.currentTarget.value;
86
- }
87
- emitFormula() {
88
- this.formulaClick.emit();
89
- }
90
- getFlag(value) {
91
- let returnValue = '';
92
- for (let i = 0; i < this.data.class.length; i++) {
93
- returnValue += this.data.class[i] + ' ';
94
- }
95
- returnValue += this.data.prefixClass + value;
96
- return returnValue;
97
- }
98
- toggle() {
99
- this.open = !this.open;
100
- }
101
- }
102
- AjfReportBuilderImageGroup.ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "13.0.0-next.15", ngImport: i0, type: AjfReportBuilderImageGroup, deps: [{ token: i1.AjfReportBuilderService }], target: i0.ɵɵFactoryTarget.Component });
103
- AjfReportBuilderImageGroup.ɵcmp = i0.ɵɵngDeclareComponent({ minVersion: "12.0.0", version: "13.0.0-next.15", type: AjfReportBuilderImageGroup, selector: "ajf-image-group", inputs: { data: "data" }, outputs: { formulaClick: "formulaClick" }, ngImport: i0, template: "<ng-template [ngIf]=\"data != null\">\n <button mat-button (click)=\"toggle()\" style=\"width:100%\">{{data.title}}</button>\n <ng-template [ngIf]=\"open\">\n <button mat-button (click)=\"emitFormula()\">Set formula</button>\n <mat-card *ngIf=\"data.icon === 'true'\">\n <mat-card-header>\n {{data.title}}\n </mat-card-header>\n <mat-card-content>\n <mat-grid-list cols=\"3\" rowHeight=\"100px\">\n <ng-container *ngFor=\"let value of data.data\">\n <mat-grid-tile *ngFor=\"let icon of value.icons\" [colspan]=\"1\" [rowspan]=\"1\">\n <button style=\"height:100%\" (click)=\"setIcon(value.name, icon.name)\" [matTooltip]=\"icon.label\" matTooltipPosition=\"above\" mat-button>\n <mat-icon\n [fontSet]=\"value.name\"\n [fontIcon]=\"icon.name\">\n </mat-icon>\n </button>\n </mat-grid-tile>\n </ng-container>\n </mat-grid-list>\n </mat-card-content>\n </mat-card>\n <mat-card *ngIf=\"data.icon === 'false'\">\n <mat-card-header>\n <mat-card-title>\n {{data.title}}\n </mat-card-title>\n <mat-card-subtitle>\n <mat-form-field>\n <input matInput placeholder=\"{{data.title}} to search\" [(ngModel)]=\"valueToSearch\">\n </mat-form-field>\n </mat-card-subtitle>\n </mat-card-header>\n <mat-card-content>\n <div class=\"ajf-image-group-container\">\n <mat-grid-list cols=\"3\">\n <mat-grid-tile *ngFor=\"let value of data.data | ajfImageFilter: valueToSearch\" [colspan]=\"1\" [rowspan]=\"1\">\n <button style=\"height:100%\" (click)=\"setFlag(getFlag(value.class))\" matTooltip=\"{{value.info}}\" [matTooltipPosition]=\"'above'\" mat-button>\n <span class={{getFlag(value.class)}} style=\"width: 100%;height: 100%;\"></span>\n </button>\n </mat-grid-tile>\n </mat-grid-list>\n </div>\n </mat-card-content>\n </mat-card>\n <ajf-report-builder-forms-analyzer></ajf-report-builder-forms-analyzer>\n </ng-template>\n</ng-template>\n", styles: ["ajf-image-group mat-grid-list{height:300px !important;overflow-y:auto}ajf-image-group .mat-grid-list{height:300px !important}ajf-image-group mat-card>mat-card-content>.ajf-image-group-container{overflow-y:scroll;height:300px}ajf-image-group mat-icon{font-size:30px}\n"], components: [{ type: i2.MatButton, selector: "button[mat-button], button[mat-raised-button], button[mat-icon-button], button[mat-fab], button[mat-mini-fab], button[mat-stroked-button], button[mat-flat-button]", inputs: ["disabled", "disableRipple", "color"], exportAs: ["matButton"] }, { type: i3.MatCard, selector: "mat-card", exportAs: ["matCard"] }, { type: i3.MatCardHeader, selector: "mat-card-header" }, { type: i4.MatGridList, selector: "mat-grid-list", inputs: ["cols", "gutterSize", "rowHeight"], exportAs: ["matGridList"] }, { type: i4.MatGridTile, selector: "mat-grid-tile", inputs: ["rowspan", "colspan"], exportAs: ["matGridTile"] }, { type: i5.MatIcon, selector: "mat-icon", inputs: ["color", "inline", "svgIcon", "fontSet", "fontIcon"], exportAs: ["matIcon"] }, { type: i6.MatFormField, selector: "mat-form-field", inputs: ["color", "appearance", "hideRequiredMarker", "hintLabel", "floatLabel"], exportAs: ["matFormField"] }, { type: i7.AjfReportBuilderFormsAnalyzer, selector: "ajf-report-builder-forms-analyzer" }], directives: [{ type: i8.NgIf, selector: "[ngIf]", inputs: ["ngIf", "ngIfThen", "ngIfElse"] }, { type: i3.MatCardContent, selector: "mat-card-content, [mat-card-content], [matCardContent]" }, { type: i8.NgForOf, selector: "[ngFor][ngForOf]", inputs: ["ngForOf", "ngForTrackBy", "ngForTemplate"] }, { type: i9.MatTooltip, selector: "[matTooltip]", exportAs: ["matTooltip"] }, { type: i3.MatCardTitle, selector: "mat-card-title, [mat-card-title], [matCardTitle]" }, { type: i3.MatCardSubtitle, selector: "mat-card-subtitle, [mat-card-subtitle], [matCardSubtitle]" }, { type: i10.DefaultValueAccessor, selector: "input:not([type=checkbox])[formControlName],textarea[formControlName],input:not([type=checkbox])[formControl],textarea[formControl],input:not([type=checkbox])[ngModel],textarea[ngModel],[ngDefaultControl]" }, { type: i10.NgControlStatus, selector: "[formControlName],[ngModel],[formControl]" }, { type: i10.NgModel, selector: "[ngModel]:not([formControlName]):not([formControl])", inputs: ["name", "disabled", "ngModel", "ngModelOptions"], outputs: ["ngModelChange"], exportAs: ["ngModel"] }], pipes: { "ajfImageFilter": i11.AjfImageFilterPipe }, changeDetection: i0.ChangeDetectionStrategy.OnPush, encapsulation: i0.ViewEncapsulation.None });
104
- i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "13.0.0-next.15", ngImport: i0, type: AjfReportBuilderImageGroup, decorators: [{
105
- type: Component,
106
- args: [{ selector: 'ajf-image-group', encapsulation: ViewEncapsulation.None, changeDetection: ChangeDetectionStrategy.OnPush, template: "<ng-template [ngIf]=\"data != null\">\n <button mat-button (click)=\"toggle()\" style=\"width:100%\">{{data.title}}</button>\n <ng-template [ngIf]=\"open\">\n <button mat-button (click)=\"emitFormula()\">Set formula</button>\n <mat-card *ngIf=\"data.icon === 'true'\">\n <mat-card-header>\n {{data.title}}\n </mat-card-header>\n <mat-card-content>\n <mat-grid-list cols=\"3\" rowHeight=\"100px\">\n <ng-container *ngFor=\"let value of data.data\">\n <mat-grid-tile *ngFor=\"let icon of value.icons\" [colspan]=\"1\" [rowspan]=\"1\">\n <button style=\"height:100%\" (click)=\"setIcon(value.name, icon.name)\" [matTooltip]=\"icon.label\" matTooltipPosition=\"above\" mat-button>\n <mat-icon\n [fontSet]=\"value.name\"\n [fontIcon]=\"icon.name\">\n </mat-icon>\n </button>\n </mat-grid-tile>\n </ng-container>\n </mat-grid-list>\n </mat-card-content>\n </mat-card>\n <mat-card *ngIf=\"data.icon === 'false'\">\n <mat-card-header>\n <mat-card-title>\n {{data.title}}\n </mat-card-title>\n <mat-card-subtitle>\n <mat-form-field>\n <input matInput placeholder=\"{{data.title}} to search\" [(ngModel)]=\"valueToSearch\">\n </mat-form-field>\n </mat-card-subtitle>\n </mat-card-header>\n <mat-card-content>\n <div class=\"ajf-image-group-container\">\n <mat-grid-list cols=\"3\">\n <mat-grid-tile *ngFor=\"let value of data.data | ajfImageFilter: valueToSearch\" [colspan]=\"1\" [rowspan]=\"1\">\n <button style=\"height:100%\" (click)=\"setFlag(getFlag(value.class))\" matTooltip=\"{{value.info}}\" [matTooltipPosition]=\"'above'\" mat-button>\n <span class={{getFlag(value.class)}} style=\"width: 100%;height: 100%;\"></span>\n </button>\n </mat-grid-tile>\n </mat-grid-list>\n </div>\n </mat-card-content>\n </mat-card>\n <ajf-report-builder-forms-analyzer></ajf-report-builder-forms-analyzer>\n </ng-template>\n</ng-template>\n", styles: ["ajf-image-group mat-grid-list{height:300px !important;overflow-y:auto}ajf-image-group .mat-grid-list{height:300px !important}ajf-image-group mat-card>mat-card-content>.ajf-image-group-container{overflow-y:scroll;height:300px}ajf-image-group mat-icon{font-size:30px}\n"] }]
107
- }], ctorParameters: function () { return [{ type: i1.AjfReportBuilderService }]; }, propDecorators: { data: [{
108
- type: Input
109
- }], formulaClick: [{
110
- type: Output
111
- }] } });
112
- //# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoiaW1hZ2UtZ3JvdXAuanMiLCJzb3VyY2VSb290IjoiIiwic291cmNlcyI6WyIuLi8uLi8uLi8uLi8uLi8uLi9zcmMvbWF0ZXJpYWwvcmVwb3J0LWJ1aWxkZXIvaW1hZ2UtZ3JvdXAudHMiLCIuLi8uLi8uLi8uLi8uLi8uLi9zcmMvbWF0ZXJpYWwvcmVwb3J0LWJ1aWxkZXIvaW1hZ2UtZ3JvdXAuaHRtbCJdLCJuYW1lcyI6W10sIm1hcHBpbmdzIjoiQUFBQTs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7R0FvQkc7QUFFSCxPQUFPLEVBQ0wsdUJBQXVCLEVBQ3ZCLFNBQVMsRUFDVCxZQUFZLEVBQ1osS0FBSyxFQUNMLE1BQU0sRUFDTixpQkFBaUIsRUFDbEIsTUFBTSxlQUFlLENBQUM7QUFFdkIsT0FBTyxFQUFDLHVCQUF1QixFQUFDLE1BQU0sMEJBQTBCLENBQUM7Ozs7Ozs7Ozs7Ozs7QUFFakU7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7R0FtQkc7QUFRSCxNQUFNLE9BQU8sMEJBQTBCO0lBdUJyQyxZQUFvQixRQUFpQztRQUFqQyxhQUFRLEdBQVIsUUFBUSxDQUF5QjtRQXRCN0MsVUFBSyxHQUE2QyxJQUFJLENBQUM7UUFDdkQsYUFBUSxHQUFXLEVBQUUsQ0FBQztRQVM5QixTQUFJLEdBQVksS0FBSyxDQUFDO1FBQ3RCLGtCQUFhLEdBQVcsRUFBRSxDQUFDO1FBSTNCOzs7O1dBSUc7UUFDZ0IsaUJBQVksR0FBc0IsSUFBSSxZQUFZLEVBQU8sQ0FBQztJQUVyQixDQUFDO0lBbkJ6RCxJQUFJLElBQUk7UUFDTixPQUFPLElBQUksQ0FBQyxLQUFLLENBQUM7SUFDcEIsQ0FBQztJQUNELElBQUksT0FBTztRQUNULE9BQU8sSUFBSSxDQUFDLFFBQVEsQ0FBQztJQUN2QixDQUFDO0lBaUJELE9BQU8sQ0FBQyxPQUFlLEVBQUUsUUFBZ0I7UUFDdkMsSUFBSSxDQUFDLEtBQUssR0FBRyxFQUFDLE9BQU8sRUFBRSxRQUFRLEVBQUMsQ0FBQztRQUNqQyxJQUFJLENBQUMsUUFBUSxDQUFDLE9BQU8sQ0FBQyxJQUFJLENBQUMsS0FBSyxDQUFDLENBQUM7SUFDcEMsQ0FBQztJQUVELE9BQU8sQ0FBQyxLQUFhO1FBQ25CLElBQUksQ0FBQyxRQUFRLEdBQUcsS0FBSyxDQUFDO1FBQ3RCLElBQUksQ0FBQyxRQUFRLENBQUMsT0FBTyxDQUFDLEtBQUssQ0FBQyxDQUFDO0lBQy9CLENBQUM7SUFFRCxTQUFTLENBQUMsS0FBVTtRQUNsQixJQUFJLENBQUMsYUFBYSxHQUFHLEtBQUssQ0FBQyxhQUFhLENBQUMsS0FBSyxDQUFDO0lBQ2pELENBQUM7SUFFRCxXQUFXO1FBQ1QsSUFBSSxDQUFDLFlBQVksQ0FBQyxJQUFJLEVBQUUsQ0FBQztJQUMzQixDQUFDO0lBRUQsT0FBTyxDQUFDLEtBQWE7UUFDbkIsSUFBSSxXQUFXLEdBQUcsRUFBRSxDQUFDO1FBRXJCLEtBQUssSUFBSSxDQUFDLEdBQUcsQ0FBQyxFQUFFLENBQUMsR0FBRyxJQUFJLENBQUMsSUFBSSxDQUFDLEtBQUssQ0FBQyxNQUFNLEVBQUUsQ0FBQyxFQUFFLEVBQUU7WUFDL0MsV0FBVyxJQUFJLElBQUksQ0FBQyxJQUFJLENBQUMsS0FBSyxDQUFDLENBQUMsQ0FBQyxHQUFHLEdBQUcsQ0FBQztTQUN6QztRQUVELFdBQVcsSUFBSSxJQUFJLENBQUMsSUFBSSxDQUFDLFdBQVcsR0FBRyxLQUFLLENBQUM7UUFDN0MsT0FBTyxXQUFXLENBQUM7SUFDckIsQ0FBQztJQUVELE1BQU07UUFDSixJQUFJLENBQUMsSUFBSSxHQUFHLENBQUMsSUFBSSxDQUFDLElBQUksQ0FBQztJQUN6QixDQUFDOzsrSEF6RFUsMEJBQTBCO21IQUExQiwwQkFBMEIsNEhDNUR2QyxzcEVBaURBO21HRFdhLDBCQUEwQjtrQkFQdEMsU0FBUzsrQkFDRSxpQkFBaUIsaUJBR1osaUJBQWlCLENBQUMsSUFBSSxtQkFDcEIsdUJBQXVCLENBQUMsTUFBTTs4R0FnQnRDLElBQUk7c0JBQVosS0FBSztnQkFPYSxZQUFZO3NCQUE5QixNQUFNIiwic291cmNlc0NvbnRlbnQiOlsiLyoqXG4gKiBAbGljZW5zZVxuICogQ29weXJpZ2h0IChDKSBHbnVjb29wIHNvYy4gY29vcC5cbiAqXG4gKiBUaGlzIGZpbGUgaXMgcGFydCBvZiB0aGUgQWR2YW5jZWQgSlNPTiBmb3JtcyAoYWpmKS5cbiAqXG4gKiBBZHZhbmNlZCBKU09OIGZvcm1zIChhamYpIGlzIGZyZWUgc29mdHdhcmU6IHlvdSBjYW4gcmVkaXN0cmlidXRlIGl0IGFuZC9vclxuICogbW9kaWZ5IGl0IHVuZGVyIHRoZSB0ZXJtcyBvZiB0aGUgR05VIEFmZmVybyBHZW5lcmFsIFB1YmxpYyBMaWNlbnNlIGFzXG4gKiBwdWJsaXNoZWQgYnkgdGhlIEZyZWUgU29mdHdhcmUgRm91bmRhdGlvbiwgZWl0aGVyIHZlcnNpb24gMyBvZiB0aGUgTGljZW5zZSxcbiAqIG9yIChhdCB5b3VyIG9wdGlvbikgYW55IGxhdGVyIHZlcnNpb24uXG4gKlxuICogQWR2YW5jZWQgSlNPTiBmb3JtcyAoYWpmKSBpcyBkaXN0cmlidXRlZCBpbiB0aGUgaG9wZSB0aGF0IGl0IHdpbGwgYmUgdXNlZnVsLFxuICogYnV0IFdJVEhPVVQgQU5ZIFdBUlJBTlRZOyB3aXRob3V0IGV2ZW4gdGhlIGltcGxpZWQgd2FycmFudHkgb2ZcbiAqIE1FUkNIQU5UQUJJTElUWSBvciBGSVRORVNTIEZPUiBBIFBBUlRJQ1VMQVIgUFVSUE9TRS4gU2VlIHRoZSBHTlUgQWZmZXJvXG4gKiBHZW5lcmFsIFB1YmxpYyBMaWNlbnNlIGZvciBtb3JlIGRldGFpbHMuXG4gKlxuICogWW91IHNob3VsZCBoYXZlIHJlY2VpdmVkIGEgY29weSBvZiB0aGUgR05VIEFmZmVybyBHZW5lcmFsIFB1YmxpYyBMaWNlbnNlXG4gKiBhbG9uZyB3aXRoIEFkdmFuY2VkIEpTT04gZm9ybXMgKGFqZikuXG4gKiBJZiBub3QsIHNlZSBodHRwOi8vd3d3LmdudS5vcmcvbGljZW5zZXMvLlxuICpcbiAqL1xuXG5pbXBvcnQge1xuICBDaGFuZ2VEZXRlY3Rpb25TdHJhdGVneSxcbiAgQ29tcG9uZW50LFxuICBFdmVudEVtaXR0ZXIsXG4gIElucHV0LFxuICBPdXRwdXQsXG4gIFZpZXdFbmNhcHN1bGF0aW9uXG59IGZyb20gJ0Bhbmd1bGFyL2NvcmUnO1xuXG5pbXBvcnQge0FqZlJlcG9ydEJ1aWxkZXJTZXJ2aWNlfSBmcm9tICcuL3JlcG9ydC1idWlsZGVyLXNlcnZpY2UnO1xuXG4vKipcbiAqIHRoaXMgY29tcG9uZW50IGhhbmRsZSBhIGdyb3VwIG9mIGltYWdlIG9iamVjdFxuICogdGhlcmUgYXJlIDIgdHlwZXMgb2Ygdmlld1xuICogIGFqZi1pY29uIGFuZCBjbGFzc1xuICpcbiAqIHRha2UgYSBqc29uIGluIGlucHV0XG4gKiAgJ2ljb24nOiAnZmFsc2UnLCAvLyBpZiB0cnVlIGFqZi1pY29uIGFjdGl2YXRlZFxuICogICdjbGFzcyc6IFsnZmxhZy1pY29uJ10sIC8vIGFkZCBjbGFzcyBpbiBvYmplY3Qgc3R5bGVcbiAqICAncHJlZml4Q2xhc3MnOiAnZmxhZy1pY29uLScsIC8vIHByZWZpeCBvZiBjbGFzcyBjb250YWluZWQgb24gZGF0YSBzZXRcbiAqICAndGl0bGUnOiAnZmxhZ3MnLCB0aXRsZSBvZiBkYXRhIHNldFxuICogICdkYXRhJzogW1xuICogICAge1xuICogICAgICAnY2xhc3MnOiAnZHonLCBzdHJpbmQgYWRkZWQgb24gcHJlZml4XG4gKiAgICAgICdpbmZvJzogJ0FsZ2VyaWEnIGluZm8gcmVsYXRlZCB0byBvYmplY3QgKGV4cGxvaXQgb24gdG9vbFRpcClcbiAqICAgIH1cbiAqICBdXG4gKiB9O1xuICpcbiAqIEBleHBvcnRcbiAqL1xuQENvbXBvbmVudCh7XG4gIHNlbGVjdG9yOiAnYWpmLWltYWdlLWdyb3VwJyxcbiAgdGVtcGxhdGVVcmw6ICdpbWFnZS1ncm91cC5odG1sJyxcbiAgc3R5bGVVcmxzOiBbJ2ltYWdlLWdyb3VwLmNzcyddLFxuICBlbmNhcHN1bGF0aW9uOiBWaWV3RW5jYXBzdWxhdGlvbi5Ob25lLFxuICBjaGFuZ2VEZXRlY3Rpb246IENoYW5nZURldGVjdGlvblN0cmF0ZWd5Lk9uUHVzaFxufSlcbmV4cG9ydCBjbGFzcyBBamZSZXBvcnRCdWlsZGVySW1hZ2VHcm91cCB7XG4gIHByaXZhdGUgX2ljb246IHtmb250U2V0OiBzdHJpbmcsIGZvbnRJY29uOiBzdHJpbmd9fG51bGwgPSBudWxsO1xuICBwcml2YXRlIF9jbGFzc2VzOiBzdHJpbmcgPSAnJztcblxuICBnZXQgaWNvbigpOiB7Zm9udFNldDogc3RyaW5nLCBmb250SWNvbjogc3RyaW5nfXxudWxsIHtcbiAgICByZXR1cm4gdGhpcy5faWNvbjtcbiAgfVxuICBnZXQgY2xhc3NlcygpOiBzdHJpbmcge1xuICAgIHJldHVybiB0aGlzLl9jbGFzc2VzO1xuICB9XG5cbiAgb3BlbjogYm9vbGVhbiA9IGZhbHNlO1xuICB2YWx1ZVRvU2VhcmNoOiBzdHJpbmcgPSAnJztcblxuICBASW5wdXQoKSBkYXRhOiBhbnk7XG5cbiAgLyoqXG4gICAqIHRoaXMgZXZlbnQgaXMgZmlyZWQgd2hlbiB0aGUgdXNlciBjbGljayBvbiBmb3JtdWxhIGJ1dHRvbiBvbiBxdWlsbCBlZGl0b3Igcm9vbCBiYXLGklxuICAgKlxuICAgKiBAbWVtYmVyb2YgUXVpbGxFZGl0b3JDb21wb25lbnRcbiAgICovXG4gIEBPdXRwdXQoKSByZWFkb25seSBmb3JtdWxhQ2xpY2s6IEV2ZW50RW1pdHRlcjxhbnk+ID0gbmV3IEV2ZW50RW1pdHRlcjxhbnk+KCk7XG5cbiAgY29uc3RydWN0b3IocHJpdmF0ZSBfc2VydmljZTogQWpmUmVwb3J0QnVpbGRlclNlcnZpY2UpIHt9XG5cblxuICBzZXRJY29uKGZvbnRTZXQ6IHN0cmluZywgZm9udEljb246IHN0cmluZykge1xuICAgIHRoaXMuX2ljb24gPSB7Zm9udFNldCwgZm9udEljb259O1xuICAgIHRoaXMuX3NlcnZpY2Uuc2V0SWNvbih0aGlzLl9pY29uKTtcbiAgfVxuXG4gIHNldEZsYWcodmFsdWU6IHN0cmluZykge1xuICAgIHRoaXMuX2NsYXNzZXMgPSB2YWx1ZTtcbiAgICB0aGlzLl9zZXJ2aWNlLnNldEZsYWcodmFsdWUpO1xuICB9XG5cbiAgc2V0U2VhcmNoKHZhbHVlOiBhbnkpIHtcbiAgICB0aGlzLnZhbHVlVG9TZWFyY2ggPSB2YWx1ZS5jdXJyZW50VGFyZ2V0LnZhbHVlO1xuICB9XG5cbiAgZW1pdEZvcm11bGEoKSB7XG4gICAgdGhpcy5mb3JtdWxhQ2xpY2suZW1pdCgpO1xuICB9XG5cbiAgZ2V0RmxhZyh2YWx1ZTogc3RyaW5nKSB7XG4gICAgbGV0IHJldHVyblZhbHVlID0gJyc7XG5cbiAgICBmb3IgKGxldCBpID0gMDsgaSA8IHRoaXMuZGF0YS5jbGFzcy5sZW5ndGg7IGkrKykge1xuICAgICAgcmV0dXJuVmFsdWUgKz0gdGhpcy5kYXRhLmNsYXNzW2ldICsgJyAnO1xuICAgIH1cblxuICAgIHJldHVyblZhbHVlICs9IHRoaXMuZGF0YS5wcmVmaXhDbGFzcyArIHZhbHVlO1xuICAgIHJldHVybiByZXR1cm5WYWx1ZTtcbiAgfVxuXG4gIHRvZ2dsZSgpIHtcbiAgICB0aGlzLm9wZW4gPSAhdGhpcy5vcGVuO1xuICB9XG59XG4iLCI8bmctdGVtcGxhdGUgW25nSWZdPVwiZGF0YSAhPSBudWxsXCI+XG4gIDxidXR0b24gbWF0LWJ1dHRvbiAoY2xpY2spPVwidG9nZ2xlKClcIiBzdHlsZT1cIndpZHRoOjEwMCVcIj57e2RhdGEudGl0bGV9fTwvYnV0dG9uPlxuICA8bmctdGVtcGxhdGUgW25nSWZdPVwib3BlblwiPlxuICAgIDxidXR0b24gbWF0LWJ1dHRvbiAoY2xpY2spPVwiZW1pdEZvcm11bGEoKVwiPlNldCBmb3JtdWxhPC9idXR0b24+XG4gICAgPG1hdC1jYXJkICpuZ0lmPVwiZGF0YS5pY29uID09PSAndHJ1ZSdcIj5cbiAgICAgIDxtYXQtY2FyZC1oZWFkZXI+XG4gICAgICAgIHt7ZGF0YS50aXRsZX19XG4gICAgICA8L21hdC1jYXJkLWhlYWRlcj5cbiAgICAgIDxtYXQtY2FyZC1jb250ZW50PlxuICAgICAgICA8bWF0LWdyaWQtbGlzdCBjb2xzPVwiM1wiIHJvd0hlaWdodD1cIjEwMHB4XCI+XG4gICAgICAgICAgPG5nLWNvbnRhaW5lciAqbmdGb3I9XCJsZXQgdmFsdWUgb2YgZGF0YS5kYXRhXCI+XG4gICAgICAgICAgICA8bWF0LWdyaWQtdGlsZSAqbmdGb3I9XCJsZXQgaWNvbiBvZiB2YWx1ZS5pY29uc1wiIFtjb2xzcGFuXT1cIjFcIiBbcm93c3Bhbl09XCIxXCI+XG4gICAgICAgICAgICAgIDxidXR0b24gc3R5bGU9XCJoZWlnaHQ6MTAwJVwiIChjbGljayk9XCJzZXRJY29uKHZhbHVlLm5hbWUsIGljb24ubmFtZSlcIiBbbWF0VG9vbHRpcF09XCJpY29uLmxhYmVsXCIgbWF0VG9vbHRpcFBvc2l0aW9uPVwiYWJvdmVcIiBtYXQtYnV0dG9uPlxuICAgICAgICAgICAgICAgIDxtYXQtaWNvblxuICAgICAgICAgICAgICAgICAgW2ZvbnRTZXRdPVwidmFsdWUubmFtZVwiXG4gICAgICAgICAgICAgICAgICBbZm9udEljb25dPVwiaWNvbi5uYW1lXCI+XG4gICAgICAgICAgICAgICAgPC9tYXQtaWNvbj5cbiAgICAgICAgICAgICAgPC9idXR0b24+XG4gICAgICAgICAgICA8L21hdC1ncmlkLXRpbGU+XG4gICAgICAgICAgPC9uZy1jb250YWluZXI+XG4gICAgICAgIDwvbWF0LWdyaWQtbGlzdD5cbiAgICAgIDwvbWF0LWNhcmQtY29udGVudD5cbiAgICA8L21hdC1jYXJkPlxuICAgIDxtYXQtY2FyZCAqbmdJZj1cImRhdGEuaWNvbiA9PT0gJ2ZhbHNlJ1wiPlxuICAgICAgPG1hdC1jYXJkLWhlYWRlcj5cbiAgICAgICAgPG1hdC1jYXJkLXRpdGxlPlxuICAgICAgICAgIHt7ZGF0YS50aXRsZX19XG4gICAgICAgIDwvbWF0LWNhcmQtdGl0bGU+XG4gICAgICAgIDxtYXQtY2FyZC1zdWJ0aXRsZT5cbiAgICAgICAgICA8bWF0LWZvcm0tZmllbGQ+XG4gICAgICAgICAgICA8aW5wdXQgbWF0SW5wdXQgcGxhY2Vob2xkZXI9XCJ7e2RhdGEudGl0bGV9fSB0byBzZWFyY2hcIiBbKG5nTW9kZWwpXT1cInZhbHVlVG9TZWFyY2hcIj5cbiAgICAgICAgICA8L21hdC1mb3JtLWZpZWxkPlxuICAgICAgICA8L21hdC1jYXJkLXN1YnRpdGxlPlxuICAgICAgPC9tYXQtY2FyZC1oZWFkZXI+XG4gICAgICA8bWF0LWNhcmQtY29udGVudD5cbiAgICAgICAgPGRpdiBjbGFzcz1cImFqZi1pbWFnZS1ncm91cC1jb250YWluZXJcIj5cbiAgICAgICAgICA8bWF0LWdyaWQtbGlzdCBjb2xzPVwiM1wiPlxuICAgICAgICAgICAgPG1hdC1ncmlkLXRpbGUgKm5nRm9yPVwibGV0IHZhbHVlIG9mIGRhdGEuZGF0YSB8IGFqZkltYWdlRmlsdGVyOiB2YWx1ZVRvU2VhcmNoXCIgW2NvbHNwYW5dPVwiMVwiIFtyb3dzcGFuXT1cIjFcIj5cbiAgICAgICAgICAgICAgPGJ1dHRvbiBzdHlsZT1cImhlaWdodDoxMDAlXCIgKGNsaWNrKT1cInNldEZsYWcoZ2V0RmxhZyh2YWx1ZS5jbGFzcykpXCIgbWF0VG9vbHRpcD1cInt7dmFsdWUuaW5mb319XCIgW21hdFRvb2x0aXBQb3NpdGlvbl09XCInYWJvdmUnXCIgbWF0LWJ1dHRvbj5cbiAgICAgICAgICAgICAgICA8c3BhbiBjbGFzcz17e2dldEZsYWcodmFsdWUuY2xhc3MpfX0gc3R5bGU9XCJ3aWR0aDogMTAwJTtoZWlnaHQ6IDEwMCU7XCI+PC9zcGFuPlxuICAgICAgICAgICAgICA8L2J1dHRvbj5cbiAgICAgICAgICAgIDwvbWF0LWdyaWQtdGlsZT5cbiAgICAgICAgICA8L21hdC1ncmlkLWxpc3Q+XG4gICAgICAgIDwvZGl2PlxuICAgICAgPC9tYXQtY2FyZC1jb250ZW50PlxuICAgIDwvbWF0LWNhcmQ+XG4gICAgPGFqZi1yZXBvcnQtYnVpbGRlci1mb3Jtcy1hbmFseXplcj48L2FqZi1yZXBvcnQtYnVpbGRlci1mb3Jtcy1hbmFseXplcj5cbiAgPC9uZy10ZW1wbGF0ZT5cbjwvbmctdGVtcGxhdGU+XG4iXX0=
@@ -1,5 +0,0 @@
1
- /**
2
- * Generated bundle index. Do not edit.
3
- */
4
- export * from './public-api';
5
- //# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoiaW5kZXguanMiLCJzb3VyY2VSb290IjoiIiwic291cmNlcyI6WyIuLi8uLi8uLi8uLi8uLi8uLi9zcmMvbWF0ZXJpYWwvcmVwb3J0LWJ1aWxkZXIvaW5kZXgudHMiXSwibmFtZXMiOltdLCJtYXBwaW5ncyI6IkFBQUE7O0dBRUc7QUFFSCxjQUFjLGNBQWMsQ0FBQyIsInNvdXJjZXNDb250ZW50IjpbIi8qKlxuICogR2VuZXJhdGVkIGJ1bmRsZSBpbmRleC4gRG8gbm90IGVkaXQuXG4gKi9cblxuZXhwb3J0ICogZnJvbSAnLi9wdWJsaWMtYXBpJztcbiJdfQ==
@@ -1,23 +0,0 @@
1
- /**
2
- * @license
3
- * Copyright (C) Gnucoop soc. coop.
4
- *
5
- * This file is part of the Advanced JSON forms (ajf).
6
- *
7
- * Advanced JSON forms (ajf) is free software: you can redistribute it and/or
8
- * modify it under the terms of the GNU Affero General Public License as
9
- * published by the Free Software Foundation, either version 3 of the License,
10
- * or (at your option) any later version.
11
- *
12
- * Advanced JSON forms (ajf) is distributed in the hope that it will be useful,
13
- * but WITHOUT ANY WARRANTY; without even the implied warranty of
14
- * MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the GNU Affero
15
- * General Public License for more details.
16
- *
17
- * You should have received a copy of the GNU Affero General Public License
18
- * along with Advanced JSON forms (ajf).
19
- * If not, see http://www.gnu.org/licenses/.
20
- *
21
- */
22
- export {};
23
- //# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoibW9kZWxzLmpzIiwic291cmNlUm9vdCI6IiIsInNvdXJjZXMiOlsiLi4vLi4vLi4vLi4vLi4vLi4vc3JjL21hdGVyaWFsL3JlcG9ydC1idWlsZGVyL21vZGVscy50cyJdLCJuYW1lcyI6W10sIm1hcHBpbmdzIjoiQUFBQTs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7R0FvQkciLCJzb3VyY2VzQ29udGVudCI6WyIvKipcbiAqIEBsaWNlbnNlXG4gKiBDb3B5cmlnaHQgKEMpIEdudWNvb3Agc29jLiBjb29wLlxuICpcbiAqIFRoaXMgZmlsZSBpcyBwYXJ0IG9mIHRoZSBBZHZhbmNlZCBKU09OIGZvcm1zIChhamYpLlxuICpcbiAqIEFkdmFuY2VkIEpTT04gZm9ybXMgKGFqZikgaXMgZnJlZSBzb2Z0d2FyZTogeW91IGNhbiByZWRpc3RyaWJ1dGUgaXQgYW5kL29yXG4gKiBtb2RpZnkgaXQgdW5kZXIgdGhlIHRlcm1zIG9mIHRoZSBHTlUgQWZmZXJvIEdlbmVyYWwgUHVibGljIExpY2Vuc2UgYXNcbiAqIHB1Ymxpc2hlZCBieSB0aGUgRnJlZSBTb2Z0d2FyZSBGb3VuZGF0aW9uLCBlaXRoZXIgdmVyc2lvbiAzIG9mIHRoZSBMaWNlbnNlLFxuICogb3IgKGF0IHlvdXIgb3B0aW9uKSBhbnkgbGF0ZXIgdmVyc2lvbi5cbiAqXG4gKiBBZHZhbmNlZCBKU09OIGZvcm1zIChhamYpIGlzIGRpc3RyaWJ1dGVkIGluIHRoZSBob3BlIHRoYXQgaXQgd2lsbCBiZSB1c2VmdWwsXG4gKiBidXQgV0lUSE9VVCBBTlkgV0FSUkFOVFk7IHdpdGhvdXQgZXZlbiB0aGUgaW1wbGllZCB3YXJyYW50eSBvZlxuICogTUVSQ0hBTlRBQklMSVRZIG9yIEZJVE5FU1MgRk9SIEEgUEFSVElDVUxBUiBQVVJQT1NFLiBTZWUgdGhlIEdOVSBBZmZlcm9cbiAqIEdlbmVyYWwgUHVibGljIExpY2Vuc2UgZm9yIG1vcmUgZGV0YWlscy5cbiAqXG4gKiBZb3Ugc2hvdWxkIGhhdmUgcmVjZWl2ZWQgYSBjb3B5IG9mIHRoZSBHTlUgQWZmZXJvIEdlbmVyYWwgUHVibGljIExpY2Vuc2VcbiAqIGFsb25nIHdpdGggQWR2YW5jZWQgSlNPTiBmb3JtcyAoYWpmKS5cbiAqIElmIG5vdCwgc2VlIGh0dHA6Ly93d3cuZ251Lm9yZy9saWNlbnNlcy8uXG4gKlxuICovXG5cbmltcG9ydCB7QWpmRmllbGRUeXBlLCBBamZOb2RlfSBmcm9tICdAYWpmL2NvcmUvZm9ybXMnO1xuaW1wb3J0IHtBamZTdHlsZXMsIEFqZldpZGdldH0gZnJvbSAnQGFqZi9jb3JlL3JlcG9ydHMnO1xuXG5leHBvcnQgaW50ZXJmYWNlIEFqZldpZGdldHNDb250YWluZXIge1xuICB3aWRnZXRzOiBBamZXaWRnZXRbXTtcbiAgc3R5bGVzOiBBamZTdHlsZXM7XG59XG5cbmV4cG9ydCBpbnRlcmZhY2UgQWpmRm9ybVZhcmlhYmxlcyB7XG4gIG5vZGVzOiBBamZOb2RlW107XG4gIGxhYmVsczogc3RyaW5nW107XG4gIG5hbWVzOiBzdHJpbmdbXTtcbiAgdHlwZXM6IEFqZkZpZWxkVHlwZVtdO1xufVxuXG5leHBvcnQgaW50ZXJmYWNlIEFqZlJlcG9ydEljb24ge1xuICBuYW1lOiBzdHJpbmc7XG4gIGxhYmVsOiBzdHJpbmc7XG59XG5cbmV4cG9ydCBpbnRlcmZhY2UgQWpmUmVwb3J0SWNvbnMge1xuICBbZm9udFNldDogc3RyaW5nXTogQWpmUmVwb3J0SWNvbltdO1xufVxuXG5leHBvcnQgaW50ZXJmYWNlIEFqZlJlcG9ydHNDb25maWcge1xuICBpY29ucz86IEFqZlJlcG9ydEljb25zO1xufVxuIl19
@@ -1,23 +0,0 @@
1
- /**
2
- * @license
3
- * Copyright (C) Gnucoop soc. coop.
4
- *
5
- * This file is part of the Advanced JSON forms (ajf).
6
- *
7
- * Advanced JSON forms (ajf) is free software: you can redistribute it and/or
8
- * modify it under the terms of the GNU Affero General Public License as
9
- * published by the Free Software Foundation, either version 3 of the License,
10
- * or (at your option) any later version.
11
- *
12
- * Advanced JSON forms (ajf) is distributed in the hope that it will be useful,
13
- * but WITHOUT ANY WARRANTY; without even the implied warranty of
14
- * MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the GNU Affero
15
- * General Public License for more details.
16
- *
17
- * You should have received a copy of the GNU Affero General Public License
18
- * along with Advanced JSON forms (ajf).
19
- * If not, see http://www.gnu.org/licenses/.
20
- *
21
- */
22
- export {};
23
- //# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoib3BlcmF0aW9ucy5qcyIsInNvdXJjZVJvb3QiOiIiLCJzb3VyY2VzIjpbIi4uLy4uLy4uLy4uLy4uLy4uL3NyYy9tYXRlcmlhbC9yZXBvcnQtYnVpbGRlci9vcGVyYXRpb25zLnRzIl0sIm5hbWVzIjpbXSwibWFwcGluZ3MiOiJBQUFBOzs7Ozs7Ozs7Ozs7Ozs7Ozs7OztHQW9CRyIsInNvdXJjZXNDb250ZW50IjpbIi8qKlxuICogQGxpY2Vuc2VcbiAqIENvcHlyaWdodCAoQykgR251Y29vcCBzb2MuIGNvb3AuXG4gKlxuICogVGhpcyBmaWxlIGlzIHBhcnQgb2YgdGhlIEFkdmFuY2VkIEpTT04gZm9ybXMgKGFqZikuXG4gKlxuICogQWR2YW5jZWQgSlNPTiBmb3JtcyAoYWpmKSBpcyBmcmVlIHNvZnR3YXJlOiB5b3UgY2FuIHJlZGlzdHJpYnV0ZSBpdCBhbmQvb3JcbiAqIG1vZGlmeSBpdCB1bmRlciB0aGUgdGVybXMgb2YgdGhlIEdOVSBBZmZlcm8gR2VuZXJhbCBQdWJsaWMgTGljZW5zZSBhc1xuICogcHVibGlzaGVkIGJ5IHRoZSBGcmVlIFNvZnR3YXJlIEZvdW5kYXRpb24sIGVpdGhlciB2ZXJzaW9uIDMgb2YgdGhlIExpY2Vuc2UsXG4gKiBvciAoYXQgeW91ciBvcHRpb24pIGFueSBsYXRlciB2ZXJzaW9uLlxuICpcbiAqIEFkdmFuY2VkIEpTT04gZm9ybXMgKGFqZikgaXMgZGlzdHJpYnV0ZWQgaW4gdGhlIGhvcGUgdGhhdCBpdCB3aWxsIGJlIHVzZWZ1bCxcbiAqIGJ1dCBXSVRIT1VUIEFOWSBXQVJSQU5UWTsgd2l0aG91dCBldmVuIHRoZSBpbXBsaWVkIHdhcnJhbnR5IG9mXG4gKiBNRVJDSEFOVEFCSUxJVFkgb3IgRklUTkVTUyBGT1IgQSBQQVJUSUNVTEFSIFBVUlBPU0UuIFNlZSB0aGUgR05VIEFmZmVyb1xuICogR2VuZXJhbCBQdWJsaWMgTGljZW5zZSBmb3IgbW9yZSBkZXRhaWxzLlxuICpcbiAqIFlvdSBzaG91bGQgaGF2ZSByZWNlaXZlZCBhIGNvcHkgb2YgdGhlIEdOVSBBZmZlcm8gR2VuZXJhbCBQdWJsaWMgTGljZW5zZVxuICogYWxvbmcgd2l0aCBBZHZhbmNlZCBKU09OIGZvcm1zIChhamYpLlxuICogSWYgbm90LCBzZWUgaHR0cDovL3d3dy5nbnUub3JnL2xpY2Vuc2VzLy5cbiAqXG4gKi9cblxuaW1wb3J0IHtBamZGb3JtfSBmcm9tICdAYWpmL2NvcmUvZm9ybXMnO1xuaW1wb3J0IHtBamZDdXN0b21XaWRnZXQsIEFqZlN0eWxlcywgQWpmV2lkZ2V0fSBmcm9tICdAYWpmL2NvcmUvcmVwb3J0cyc7XG5pbXBvcnQge0FqZkZvcm1WYXJpYWJsZXMsIEFqZldpZGdldHNDb250YWluZXJ9IGZyb20gJy4vbW9kZWxzJztcblxuZXhwb3J0IGludGVyZmFjZSBBamZXaWRnZXRzT3BlcmF0aW9uIHtcbiAgKHdpZGdldHM6IEFqZldpZGdldHNDb250YWluZXIpOiBBamZXaWRnZXRzQ29udGFpbmVyO1xufVxuXG5leHBvcnQgaW50ZXJmYWNlIEFqZkN1c3RvbVdpZGdldHNPcGVyYXRpb24ge1xuICAod2lkZ2V0czogQWpmQ3VzdG9tV2lkZ2V0W10pOiBBamZDdXN0b21XaWRnZXRbXTtcbn1cblxuZXhwb3J0IGludGVyZmFjZSBBamZTdHlsZXNPcGVyYXRpb24ge1xuICAoc3R5bGVzOiBBamZTdHlsZXMpOiBBamZTdHlsZXM7XG59XG5cbmV4cG9ydCBpbnRlcmZhY2UgQWpmV2lkZ2V0T3BlcmF0aW9uIHtcbiAgKHdpZGdldDogQWpmV2lkZ2V0fG51bGwpOiBBamZXaWRnZXR8bnVsbDtcbn1cblxuZXhwb3J0IGludGVyZmFjZSBBamZDb2xvck9wZXJhdGlvbiB7XG4gIChjb2xvcnM6IHN0cmluZ1tdKTogc3RyaW5nW107XG59XG5cbmV4cG9ydCBpbnRlcmZhY2UgQWpmRm9ybVZhcmlhYmxlc09wZXJhdGlvbiB7XG4gICh2YXJpYWJsZXM6IEFqZkZvcm1WYXJpYWJsZXNbXSk6IEFqZkZvcm1WYXJpYWJsZXNbXTtcbn1cblxuZXhwb3J0IGludGVyZmFjZSBBamZSZXBvcnRGb3Jtc09wZXJhdGlvbiB7XG4gIChmb3JtczogQWpmRm9ybVtdKTogQWpmRm9ybVtdO1xufVxuIl19