@acorex/platform 18.0.8 → 18.0.9

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 (43) hide show
  1. package/esm2022/widgets/lib/editors/contact-widget/contact-widget-column.component.mjs +19 -0
  2. package/esm2022/widgets/lib/editors/contact-widget/contact-widget-designer.component.mjs +19 -0
  3. package/esm2022/widgets/lib/editors/contact-widget/contact-widget-edit.component.mjs +267 -0
  4. package/esm2022/widgets/lib/editors/contact-widget/contact-widget-filter.component.mjs +20 -0
  5. package/esm2022/widgets/lib/editors/contact-widget/contact-widget-print.component.mjs +19 -0
  6. package/esm2022/widgets/lib/editors/contact-widget/contact-widget-view.component.mjs +20 -0
  7. package/esm2022/widgets/lib/editors/contact-widget/contact-widget.config.mjs +24 -0
  8. package/esm2022/widgets/lib/editors/contact-widget/index.mjs +8 -0
  9. package/esm2022/widgets/lib/editors/contact-widget/popup-component.mjs +78 -0
  10. package/esm2022/widgets/lib/editors/large-text-widget/index.mjs +8 -0
  11. package/esm2022/widgets/lib/editors/large-text-widget/large-text-widget-column.component.mjs +23 -0
  12. package/esm2022/widgets/lib/editors/large-text-widget/large-text-widget-designer.component.mjs +19 -0
  13. package/esm2022/widgets/lib/editors/large-text-widget/large-text-widget-edit.component.mjs +47 -0
  14. package/esm2022/widgets/lib/editors/large-text-widget/large-text-widget-filter.component.mjs +20 -0
  15. package/esm2022/widgets/lib/editors/large-text-widget/large-text-widget-print.component.mjs +19 -0
  16. package/esm2022/widgets/lib/editors/large-text-widget/large-text-widget-view.component.mjs +31 -0
  17. package/esm2022/widgets/lib/editors/large-text-widget/large-text-widget.config.mjs +24 -0
  18. package/esm2022/widgets/lib/editors/link-widget/link-widget-edit.component.mjs +114 -114
  19. package/esm2022/widgets/lib/editors/link-widget/link-widget-view.component.mjs +3 -3
  20. package/esm2022/widgets/lib/editors/rich-text-widget/rich-text-widget-column.component.mjs +10 -6
  21. package/esm2022/widgets/lib/widgets.module.mjs +7 -1
  22. package/fesm2022/acorex-platform-widgets.mjs +784 -155
  23. package/fesm2022/acorex-platform-widgets.mjs.map +1 -1
  24. package/package.json +7 -7
  25. package/widgets/lib/editors/contact-widget/contact-widget-column.component.d.ts +6 -0
  26. package/widgets/lib/editors/contact-widget/contact-widget-designer.component.d.ts +6 -0
  27. package/widgets/lib/editors/contact-widget/contact-widget-edit.component.d.ts +36 -0
  28. package/widgets/lib/editors/contact-widget/contact-widget-filter.component.d.ts +6 -0
  29. package/widgets/lib/editors/contact-widget/contact-widget-print.component.d.ts +6 -0
  30. package/widgets/lib/editors/contact-widget/contact-widget-view.component.d.ts +6 -0
  31. package/widgets/lib/editors/contact-widget/contact-widget.config.d.ts +2 -0
  32. package/widgets/lib/editors/contact-widget/index.d.ts +7 -0
  33. package/widgets/lib/editors/contact-widget/popup-component.d.ts +10 -0
  34. package/widgets/lib/editors/large-text-widget/index.d.ts +7 -0
  35. package/widgets/lib/editors/large-text-widget/large-text-widget-column.component.d.ts +6 -0
  36. package/widgets/lib/editors/large-text-widget/large-text-widget-designer.component.d.ts +6 -0
  37. package/widgets/lib/editors/large-text-widget/large-text-widget-edit.component.d.ts +10 -0
  38. package/widgets/lib/editors/large-text-widget/large-text-widget-filter.component.d.ts +6 -0
  39. package/widgets/lib/editors/large-text-widget/large-text-widget-print.component.d.ts +6 -0
  40. package/widgets/lib/editors/large-text-widget/large-text-widget-view.component.d.ts +6 -0
  41. package/widgets/lib/editors/large-text-widget/large-text-widget.config.d.ts +2 -0
  42. package/widgets/lib/editors/link-widget/link-widget-edit.component.d.ts +1 -8
  43. package/widgets/lib/editors/rich-text-widget/rich-text-widget-column.component.d.ts +2 -2
@@ -53,17 +53,6 @@ export class AXPLinkWidgetEditComponent extends AXPWidgetBase {
53
53
  else
54
54
  return e.value;
55
55
  };
56
- this.validateFn = async (val) => {
57
- const urlRegex = /^([a-zA-Z0-9.-]+\.[a-zA-Z]{2,})(\/[a-zA-Z0-9._~:/?#\[\]@!$&'()*+,;=-]*)?$/;
58
- const isValid = urlRegex.test(val);
59
- const translatedMessage = await this.translateService.translateAsync('validation.messages.url');
60
- return {
61
- rule: 'callback',
62
- result: isValid,
63
- message: translatedMessage,
64
- value: val,
65
- };
66
- };
67
56
  }
68
57
  ngOnInit() {
69
58
  super.ngOnInit();
@@ -79,11 +68,10 @@ export class AXPLinkWidgetEditComponent extends AXPWidgetBase {
79
68
  const value = this.getValue();
80
69
  if (Array.isArray(value)) {
81
70
  return value.map((item) => {
82
- typeof item === 'object'
71
+ return typeof item === 'object'
83
72
  ? {
84
73
  value: item.value ?? '-',
85
74
  title: item.title,
86
- protocol: item.protocol ?? 'https',
87
75
  label: this.hasLabel ? item.label || 'primary' : undefined,
88
76
  icon: item.icon,
89
77
  }
@@ -91,12 +79,13 @@ export class AXPLinkWidgetEditComponent extends AXPWidgetBase {
91
79
  value: item,
92
80
  title: '',
93
81
  icon: '',
94
- protocol: 'https',
95
82
  label: this.hasLabel ? 'Primary' : undefined,
96
83
  };
97
84
  });
98
85
  }
99
- return typeof value === 'object' ? [value] : [{ value: value || '' }];
86
+ else {
87
+ return typeof value === 'object' ? [value] : [{ value: value || '' }];
88
+ }
100
89
  }
101
90
  handleValueChange(e, selectedIndex) {
102
91
  const { name, value, isUserInteraction } = e;
@@ -118,39 +107,80 @@ export class AXPLinkWidgetEditComponent extends AXPWidgetBase {
118
107
  // }
119
108
  // }
120
109
  addItem() {
121
- const newValues = [...this.internalValue(), ''];
110
+ const newValues = [
111
+ ...this.internalValue(),
112
+ {
113
+ value: '',
114
+ title: '',
115
+ label: 'primary',
116
+ icon: '',
117
+ },
118
+ ];
122
119
  this.setValue(newValues);
123
120
  }
124
121
  deleteItem(deletedIndex) {
125
122
  const newValues = this.internalValue().filter((_, index) => index != deletedIndex);
126
123
  this.setValue(newValues);
127
124
  }
128
- generateClasses(elementName) {
129
- switch (elementName) {
130
- case 'url':
131
- if (this.hasTitle || this.hasLabel) {
132
- //already has ax-col-start-1 ax-col-end-13
133
- return ['lg:ax-col-end-7'];
134
- }
135
- else {
136
- return ['lg:ax-col-end-13'];
137
- }
138
- case 'title':
139
- if (this.hasLabel) {
140
- return ['ax-col-start-1 ax-col-end-7 lg:ax-col-start-7 lg:ax-col-end-10'];
141
- }
142
- else {
143
- return ['ax-col-start-1 ax-col-end-13 lg:ax-col-start-7 lg:ax-col-end-13'];
144
- }
145
- case 'label':
146
- if (this.hasTitle) {
147
- return ['ax-col-start-7 ax-col-end-13 lg:ax-col-start-10 lg:ax-col-end-13'];
148
- }
149
- else {
150
- return ['ax-col-start-1 ax-col-end-13 lg:ax-col-start-7 lg:ax-col-end-13'];
151
- }
152
- default:
153
- return [''];
125
+ generateClasses(elementName, type = 'single') {
126
+ if (type === 'multiple') {
127
+ switch (elementName) {
128
+ case 'url':
129
+ if (this.hasTitle || this.hasLabel) {
130
+ //already has ax-col-start-1 ax-col-end-13
131
+ return ['lg:ax-col-end-7'];
132
+ }
133
+ else {
134
+ return ['lg:ax-col-end-12'];
135
+ }
136
+ case 'title':
137
+ if (this.hasLabel) {
138
+ return ['ax-col-start-1 ax-col-end-7 lg:ax-col-start-7 lg:ax-col-end-10'];
139
+ }
140
+ else {
141
+ return ['ax-col-start-1 ax-col-end-11 lg:ax-col-start-7 lg:ax-col-end-12'];
142
+ }
143
+ case 'label':
144
+ if (this.hasTitle) {
145
+ return ['ax-col-start-7 ax-col-end-11 lg:ax-col-start-10 lg:ax-col-end-12'];
146
+ }
147
+ else {
148
+ return ['ax-col-start-1 ax-col-end-11 lg:ax-col-start-7 lg:ax-col-end-12'];
149
+ }
150
+ default:
151
+ return [''];
152
+ }
153
+ }
154
+ else if (type === 'single') {
155
+ switch (elementName) {
156
+ case 'url':
157
+ if (this.hasTitle || this.hasLabel) {
158
+ //already has ax-col-start-1 ax-col-end-13
159
+ return ['lg:ax-col-end-7'];
160
+ }
161
+ else {
162
+ return ['lg:ax-col-end-13'];
163
+ }
164
+ case 'title':
165
+ if (this.hasLabel) {
166
+ return ['ax-col-start-1 ax-col-end-7 lg:ax-col-start-7 lg:ax-col-end-10'];
167
+ }
168
+ else {
169
+ return ['ax-col-start-1 ax-col-end-13 lg:ax-col-start-7 lg:ax-col-end-13'];
170
+ }
171
+ case 'label':
172
+ if (this.hasTitle) {
173
+ return ['ax-col-start-7 ax-col-end-13 lg:ax-col-start-10 lg:ax-col-end-13'];
174
+ }
175
+ else {
176
+ return ['ax-col-start-1 ax-col-end-13 lg:ax-col-start-7 lg:ax-col-end-13'];
177
+ }
178
+ default:
179
+ return [''];
180
+ }
181
+ }
182
+ else {
183
+ return [''];
154
184
  }
155
185
  }
156
186
  static { this.ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "18.0.2", ngImport: i0, type: AXPLinkWidgetEditComponent, deps: null, target: i0.ɵɵFactoryTarget.Component }); }
@@ -162,41 +192,39 @@ export class AXPLinkWidgetEditComponent extends AXPWidgetBase {
162
192
  (onValueChanged)="handleValueChange($event, $index)"
163
193
  type="text"
164
194
  placeholder="Enter Link"
165
- class="ax-col-start-1 ax-col-end-13 lg:ax-col-end-7"
166
- [class.lg:!ax-col-end-12]="!hasLabel"
195
+ class="ax-col-start-1 ax-col-end-13"
196
+ [ngClass]="generateClasses('url', 'multiple')"
167
197
  >
168
- <ax-prefix>
169
- <ax-select-box
170
- [dataSource]="linkTypes"
171
- [ngModel]="item.label"
172
- (onValueChanged)="handleValueChange($event, $index)"
173
- [look]="'fill'"
174
- placeholder="Choose..."
175
- >
176
- </ax-select-box>
177
- </ax-prefix>
178
198
  @for (validation of validationRules; track $index) {
179
199
  <ax-validation-rule [rule]="validation.rule" [message]="validation.options?.message" [options]="validation.options"></ax-validation-rule>
180
200
  }
181
201
  <ax-validation-rule message="field can't be empty" rule="required"> </ax-validation-rule>
182
- <ax-validation-rule message="field can't be empty" rule="callback" [options]="{ validate: validateFn }"> </ax-validation-rule>
183
202
  </ax-text-box>
184
- @if(hasLabel){
203
+ @if(hasTitle){
204
+ <ax-text-box
205
+ [ngModel]="item.title"
206
+ (onValueChanged)="handleValueChange($event, $index)"
207
+ placeholder="Choose Title..."
208
+ name="title"
209
+ [ngClass]="generateClasses('title', 'multiple')"
210
+ >
211
+ </ax-text-box>
212
+ } @if(hasLabel){
185
213
  <ax-select-box
186
214
  [dataSource]="labelTypes"
187
215
  [ngModel]="item.label"
188
216
  (onValueChanged)="handleValueChange($event, $index)"
189
217
  placeholder="Choose Label..."
190
- class="ax-col-start-1 ax-col-end-11 lg:ax-col-start-7 lg:ax-col-end-13"
218
+ name="label"
219
+ [ngClass]="generateClasses('label', 'multiple')"
191
220
  >
192
- <ax-clear-button></ax-clear-button>
193
221
  </ax-select-box>
194
- }
222
+ }}
195
223
  <ax-button
196
224
  look="twotone"
197
225
  color="danger"
198
226
  (onClick)="deleteItem($index)"
199
- class="ax-col-start-11 ax-col-end-13 lg:ax-col-start-12 lg:ax-col-end-13 ax-justify-self-end"
227
+ class="ax-col-start-12 ax-col-end-13 lg:ax-col-start-12 lg:ax-col-end-13 ax-justify-self-end !ax-h-full"
200
228
  >
201
229
  <ax-icon icon="fa-regular fa-xmark"></ax-icon>
202
230
  </ax-button>
@@ -211,9 +239,9 @@ export class AXPLinkWidgetEditComponent extends AXPWidgetBase {
211
239
  <ax-icon class="fa-solid fa-add"></ax-icon>
212
240
  </ax-prefix>
213
241
  </ax-button>
214
- } } @else{
242
+ } @else{
215
243
  <ax-text-box
216
- [ngClass]="generateClasses('url')"
244
+ [ngClass]="generateClasses('url', 'single')"
217
245
  [ngModel]="internalValue()[0].value"
218
246
  (onValueChanged)="handleValueChange($event, 0)"
219
247
  type="text"
@@ -221,27 +249,14 @@ export class AXPLinkWidgetEditComponent extends AXPWidgetBase {
221
249
  placeholder="Link"
222
250
  class="ax-col-start-1 ax-col-end-13"
223
251
  >
224
- <ax-prefix
225
- ><ax-select-box
226
- [dataSource]="linkTypes"
227
- [look]="'fill'"
228
- name="protocol"
229
- placeholder="Protocol"
230
- [ngModel]="internalValue()[0].protocol"
231
- (onValueChanged)="handleValueChange($event, 0)"
232
- >
233
- <!-- <ax-validation-rule message="field can't be empty" rule="required"> </ax-validation-rule> -->
234
- <ax-clear-button></ax-clear-button> </ax-select-box
235
- ></ax-prefix>
236
252
  @for (validation of validationRules; track $index) {
237
253
  <ax-validation-rule [rule]="validation.rule" [message]="validation.options?.message" [options]="validation.options"></ax-validation-rule>
238
254
  }
239
255
  <ax-validation-rule message="field can't be empty" rule="required"> </ax-validation-rule>
240
- <ax-validation-rule message="field can't be empty" rule="callback" [options]="{ validate: validateFn }"> </ax-validation-rule>
241
256
  </ax-text-box>
242
257
  @if(hasTitle){
243
258
  <ax-text-box
244
- [ngClass]="generateClasses('title')"
259
+ [ngClass]="generateClasses('title', 'single')"
245
260
  [ngModel]="internalValue()[0].title"
246
261
  (onValueChanged)="handleValueChange($event, 0)"
247
262
  type="text"
@@ -251,7 +266,7 @@ export class AXPLinkWidgetEditComponent extends AXPWidgetBase {
251
266
  </ax-text-box>
252
267
  } @if(hasLabel){
253
268
  <ax-select-box
254
- [ngClass]="generateClasses('label')"
269
+ [ngClass]="generateClasses('label', 'single')"
255
270
  [dataSource]="labelTypes"
256
271
  [ngModel]="internalValue()[0].label"
257
272
  (onValueChanged)="handleValueChange($event, 0)"
@@ -260,7 +275,7 @@ export class AXPLinkWidgetEditComponent extends AXPWidgetBase {
260
275
  >
261
276
  </ax-select-box>
262
277
  } }
263
- </div>`, isInline: true, dependencies: [{ kind: "ngmodule", type: CommonModule }, { kind: "directive", type: i1.NgClass, selector: "[ngClass]", inputs: ["class", "ngClass"] }, { kind: "ngmodule", type: FormsModule }, { kind: "directive", type: i2.NgControlStatus, selector: "[formControlName],[ngModel],[formControl]" }, { kind: "directive", type: i2.NgModel, selector: "[ngModel]:not([formControlName]):not([formControl])", inputs: ["name", "disabled", "ngModel", "ngModelOptions"], outputs: ["ngModelChange"], exportAs: ["ngModel"] }, { kind: "ngmodule", type: AXSelectBoxModule }, { kind: "component", type: i3.AXSelectBoxComponent, selector: "ax-select-box", inputs: ["disabled", "readonly", "tabIndex", "placeholder", "minValue", "maxValue", "value", "state", "name", "id", "type", "look", "multiple", "valueField", "textField", "textTemplate", "dataSource", "caption", "itemTemplate", "selectedTemplate", "emptyTemplate", "loadingTemplate", "dropdownWidth"], outputs: ["valueChange", "stateChange", "onValueChanged", "onBlur", "onFocus", "readonlyChange", "disabledChange", "onOpened", "onClosed"] }, { kind: "ngmodule", type: AXFormModule }, { kind: "directive", type: i4.AXValidationRuleDirective, selector: "ax-validation-rule", inputs: ["rule", "options", "message"] }, { kind: "ngmodule", type: AXButtonModule }, { kind: "component", type: i5.AXButtonComponent, selector: "ax-button", inputs: ["disabled", "size", "tabIndex", "color", "look", "text", "toggleable", "selected", "type", "loadingText"], outputs: ["onBlur", "onFocus", "onClick", "selectedChange", "toggleableChange", "lookChange", "colorChange", "disabledChange", "loadingTextChange"] }, { kind: "ngmodule", type: AXDecoratorModule }, { kind: "component", type: i6.AXDecoratorIconComponent, selector: "ax-icon", inputs: ["icon"] }, { kind: "component", type: i6.AXDecoratorClearButtonComponent, selector: "ax-clear-button", inputs: ["icon"] }, { kind: "component", type: i6.AXDecoratorGenericComponent, selector: "ax-footer, ax-header, ax-content, ax-divider, ax-form-hint, ax-prefix, ax-suffix, ax-text, ax-title, ax-sub-title, ax-placeholder, ax-overlay" }, { kind: "ngmodule", type: AXTextBoxModule }, { kind: "component", type: i7.AXTextBoxComponent, selector: "ax-text-box", inputs: ["disabled", "tabIndex", "readonly", "value", "state", "name", "id", "placeholder", "maxLength", "allowNull", "type", "autoComplete", "look", "mask-options", "class"], outputs: ["onBlur", "onFocus", "valueChange", "stateChange", "onValueChanged", "readonlyChange", "disabledChange", "onKeyDown", "onKeyUp", "onKeyPress"] }, { kind: "ngmodule", type: AXValidationModule }], changeDetection: i0.ChangeDetectionStrategy.OnPush }); }
278
+ </div>`, isInline: true, dependencies: [{ kind: "ngmodule", type: CommonModule }, { kind: "directive", type: i1.NgClass, selector: "[ngClass]", inputs: ["class", "ngClass"] }, { kind: "ngmodule", type: FormsModule }, { kind: "directive", type: i2.NgControlStatus, selector: "[formControlName],[ngModel],[formControl]" }, { kind: "directive", type: i2.NgModel, selector: "[ngModel]:not([formControlName]):not([formControl])", inputs: ["name", "disabled", "ngModel", "ngModelOptions"], outputs: ["ngModelChange"], exportAs: ["ngModel"] }, { kind: "ngmodule", type: AXSelectBoxModule }, { kind: "component", type: i3.AXSelectBoxComponent, selector: "ax-select-box", inputs: ["disabled", "readonly", "tabIndex", "placeholder", "minValue", "maxValue", "value", "state", "name", "id", "type", "look", "multiple", "valueField", "textField", "textTemplate", "dataSource", "caption", "itemTemplate", "selectedTemplate", "emptyTemplate", "loadingTemplate", "dropdownWidth"], outputs: ["valueChange", "stateChange", "onValueChanged", "onBlur", "onFocus", "readonlyChange", "disabledChange", "onOpened", "onClosed"] }, { kind: "ngmodule", type: AXFormModule }, { kind: "directive", type: i4.AXValidationRuleDirective, selector: "ax-validation-rule", inputs: ["rule", "options", "message"] }, { kind: "ngmodule", type: AXButtonModule }, { kind: "component", type: i5.AXButtonComponent, selector: "ax-button", inputs: ["disabled", "size", "tabIndex", "color", "look", "text", "toggleable", "selected", "type", "loadingText"], outputs: ["onBlur", "onFocus", "onClick", "selectedChange", "toggleableChange", "lookChange", "colorChange", "disabledChange", "loadingTextChange"] }, { kind: "ngmodule", type: AXDecoratorModule }, { kind: "component", type: i6.AXDecoratorIconComponent, selector: "ax-icon", inputs: ["icon"] }, { kind: "component", type: i6.AXDecoratorGenericComponent, selector: "ax-footer, ax-header, ax-content, ax-divider, ax-form-hint, ax-prefix, ax-suffix, ax-text, ax-title, ax-sub-title, ax-placeholder, ax-overlay" }, { kind: "ngmodule", type: AXTextBoxModule }, { kind: "component", type: i7.AXTextBoxComponent, selector: "ax-text-box", inputs: ["disabled", "tabIndex", "readonly", "value", "state", "name", "id", "placeholder", "maxLength", "allowNull", "type", "autoComplete", "look", "mask-options", "class"], outputs: ["onBlur", "onFocus", "valueChange", "stateChange", "onValueChanged", "readonlyChange", "disabledChange", "onKeyDown", "onKeyUp", "onKeyPress"] }, { kind: "ngmodule", type: AXValidationModule }], changeDetection: i0.ChangeDetectionStrategy.OnPush }); }
264
279
  }
265
280
  i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "18.0.2", ngImport: i0, type: AXPLinkWidgetEditComponent, decorators: [{
266
281
  type: Component,
@@ -273,41 +288,39 @@ i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "18.0.2", ngImpor
273
288
  (onValueChanged)="handleValueChange($event, $index)"
274
289
  type="text"
275
290
  placeholder="Enter Link"
276
- class="ax-col-start-1 ax-col-end-13 lg:ax-col-end-7"
277
- [class.lg:!ax-col-end-12]="!hasLabel"
291
+ class="ax-col-start-1 ax-col-end-13"
292
+ [ngClass]="generateClasses('url', 'multiple')"
278
293
  >
279
- <ax-prefix>
280
- <ax-select-box
281
- [dataSource]="linkTypes"
282
- [ngModel]="item.label"
283
- (onValueChanged)="handleValueChange($event, $index)"
284
- [look]="'fill'"
285
- placeholder="Choose..."
286
- >
287
- </ax-select-box>
288
- </ax-prefix>
289
294
  @for (validation of validationRules; track $index) {
290
295
  <ax-validation-rule [rule]="validation.rule" [message]="validation.options?.message" [options]="validation.options"></ax-validation-rule>
291
296
  }
292
297
  <ax-validation-rule message="field can't be empty" rule="required"> </ax-validation-rule>
293
- <ax-validation-rule message="field can't be empty" rule="callback" [options]="{ validate: validateFn }"> </ax-validation-rule>
294
298
  </ax-text-box>
295
- @if(hasLabel){
299
+ @if(hasTitle){
300
+ <ax-text-box
301
+ [ngModel]="item.title"
302
+ (onValueChanged)="handleValueChange($event, $index)"
303
+ placeholder="Choose Title..."
304
+ name="title"
305
+ [ngClass]="generateClasses('title', 'multiple')"
306
+ >
307
+ </ax-text-box>
308
+ } @if(hasLabel){
296
309
  <ax-select-box
297
310
  [dataSource]="labelTypes"
298
311
  [ngModel]="item.label"
299
312
  (onValueChanged)="handleValueChange($event, $index)"
300
313
  placeholder="Choose Label..."
301
- class="ax-col-start-1 ax-col-end-11 lg:ax-col-start-7 lg:ax-col-end-13"
314
+ name="label"
315
+ [ngClass]="generateClasses('label', 'multiple')"
302
316
  >
303
- <ax-clear-button></ax-clear-button>
304
317
  </ax-select-box>
305
- }
318
+ }}
306
319
  <ax-button
307
320
  look="twotone"
308
321
  color="danger"
309
322
  (onClick)="deleteItem($index)"
310
- class="ax-col-start-11 ax-col-end-13 lg:ax-col-start-12 lg:ax-col-end-13 ax-justify-self-end"
323
+ class="ax-col-start-12 ax-col-end-13 lg:ax-col-start-12 lg:ax-col-end-13 ax-justify-self-end !ax-h-full"
311
324
  >
312
325
  <ax-icon icon="fa-regular fa-xmark"></ax-icon>
313
326
  </ax-button>
@@ -322,9 +335,9 @@ i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "18.0.2", ngImpor
322
335
  <ax-icon class="fa-solid fa-add"></ax-icon>
323
336
  </ax-prefix>
324
337
  </ax-button>
325
- } } @else{
338
+ } @else{
326
339
  <ax-text-box
327
- [ngClass]="generateClasses('url')"
340
+ [ngClass]="generateClasses('url', 'single')"
328
341
  [ngModel]="internalValue()[0].value"
329
342
  (onValueChanged)="handleValueChange($event, 0)"
330
343
  type="text"
@@ -332,27 +345,14 @@ i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "18.0.2", ngImpor
332
345
  placeholder="Link"
333
346
  class="ax-col-start-1 ax-col-end-13"
334
347
  >
335
- <ax-prefix
336
- ><ax-select-box
337
- [dataSource]="linkTypes"
338
- [look]="'fill'"
339
- name="protocol"
340
- placeholder="Protocol"
341
- [ngModel]="internalValue()[0].protocol"
342
- (onValueChanged)="handleValueChange($event, 0)"
343
- >
344
- <!-- <ax-validation-rule message="field can't be empty" rule="required"> </ax-validation-rule> -->
345
- <ax-clear-button></ax-clear-button> </ax-select-box
346
- ></ax-prefix>
347
348
  @for (validation of validationRules; track $index) {
348
349
  <ax-validation-rule [rule]="validation.rule" [message]="validation.options?.message" [options]="validation.options"></ax-validation-rule>
349
350
  }
350
351
  <ax-validation-rule message="field can't be empty" rule="required"> </ax-validation-rule>
351
- <ax-validation-rule message="field can't be empty" rule="callback" [options]="{ validate: validateFn }"> </ax-validation-rule>
352
352
  </ax-text-box>
353
353
  @if(hasTitle){
354
354
  <ax-text-box
355
- [ngClass]="generateClasses('title')"
355
+ [ngClass]="generateClasses('title', 'single')"
356
356
  [ngModel]="internalValue()[0].title"
357
357
  (onValueChanged)="handleValueChange($event, 0)"
358
358
  type="text"
@@ -362,7 +362,7 @@ i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "18.0.2", ngImpor
362
362
  </ax-text-box>
363
363
  } @if(hasLabel){
364
364
  <ax-select-box
365
- [ngClass]="generateClasses('label')"
365
+ [ngClass]="generateClasses('label', 'single')"
366
366
  [dataSource]="labelTypes"
367
367
  [ngModel]="internalValue()[0].label"
368
368
  (onValueChanged)="handleValueChange($event, 0)"
@@ -388,4 +388,4 @@ i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "18.0.2", ngImpor
388
388
  inputs: [],
389
389
  }]
390
390
  }] });
391
- //# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoibGluay13aWRnZXQtZWRpdC5jb21wb25lbnQuanMiLCJzb3VyY2VSb290IjoiIiwic291cmNlcyI6WyIuLi8uLi8uLi8uLi8uLi8uLi8uLi8uLi9saWJzL3BsYXRmb3JtL3dpZGdldHMvc3JjL2xpYi9lZGl0b3JzL2xpbmstd2lkZ2V0L2xpbmstd2lkZ2V0LWVkaXQuY29tcG9uZW50LnRzIl0sIm5hbWVzIjpbXSwibWFwcGluZ3MiOiJBQUFBLE9BQU8sRUFBRSxjQUFjLEVBQUUsTUFBTSwyQkFBMkIsQ0FBQztBQUMzRCxPQUFPLEVBQUUsWUFBWSxFQUF1QixNQUFNLDJCQUEyQixDQUFDO0FBQzlFLE9BQU8sRUFBRSxpQkFBaUIsRUFBRSxNQUFNLCtCQUErQixDQUFDO0FBQ2xFLE9BQU8sRUFBRSxZQUFZLEVBQUUsTUFBTSx5QkFBeUIsQ0FBQztBQUN2RCxPQUFPLEVBQUUsaUJBQWlCLEVBQUUsTUFBTSwrQkFBK0IsQ0FBQztBQUNsRSxPQUFPLEVBQUUsZUFBZSxFQUFFLE1BQU0sNkJBQTZCLENBQUM7QUFDOUQsT0FBTyxFQUFFLG9CQUFvQixFQUFFLE1BQU0sMEJBQTBCLENBQUM7QUFDaEUsT0FBTyxFQUFFLGtCQUFrQixFQUFFLG1CQUFtQixFQUFFLE1BQU0seUJBQXlCLENBQUM7QUFFbEYsT0FBTyxFQUFFLGFBQWEsRUFBRSxNQUFNLGlDQUFpQyxDQUFDO0FBQ2hFLE9BQU8sRUFBRSxZQUFZLEVBQUUsTUFBTSxpQkFBaUIsQ0FBQztBQUMvQyxPQUFPLEVBQUUsdUJBQXVCLEVBQUUsU0FBUyxFQUFVLFFBQVEsRUFBRSxNQUFNLEVBQUUsTUFBTSxlQUFlLENBQUM7QUFDN0YsT0FBTyxFQUFFLFdBQVcsRUFBRSxNQUFNLGdCQUFnQixDQUFDOzs7Ozs7Ozs7QUE2SDdDLE1BQU0sT0FBTywwQkFBMkIsU0FBUSxhQUFrQjtJQTNIbEU7O1FBNEhZLHNCQUFpQixHQUFHLE1BQU0sQ0FBQyxtQkFBbUIsQ0FBQyxDQUFDO1FBQ2hELHFCQUFnQixHQUFHLE1BQU0sQ0FBQyxv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QUFDO29CQUNULFFBQVEsRUFBRTs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7OztTQTBHSDtvQkFDUCxVQUFVLEVBQUUsSUFBSTtvQkFDaEIsZUFBZSxFQUFFLHVCQUF1QixDQUFDLE1BQU07b0JBQy9DLE9BQU8sRUFBRTt3QkFDUCxZQUFZO3dCQUNaLFdBQVc7d0JBQ1gsaUJBQWlCO3dCQUNqQixZQUFZO3dCQUNaLGNBQWM7d0JBQ2QsaUJBQWlCO3dCQUNqQixpQkFBaUI7d0JBQ2pCLGVBQWU7d0JBQ2Ysa0JBQWtCO3FCQUNuQjtvQkFDRCxNQUFNLEVBQUUsRUFBRTtpQkFDWCIsInNvdXJjZXNDb250ZW50IjpbImltcG9ydCB7IEFYQnV0dG9uTW9kdWxlIH0gZnJvbSAnQGFjb3JleC9jb21wb25lbnRzL2J1dHRvbic7XG5pbXBvcnQgeyBBWERhdGFTb3VyY2UsIEFYVmFsdWVDaGFuZ2VkRXZlbnQgfSBmcm9tICdAYWNvcmV4L2NvbXBvbmVudHMvY29tbW9uJztcbmltcG9ydCB7IEFYRGVjb3JhdG9yTW9kdWxlIH0gZnJvbSAnQGFjb3JleC9jb21wb25lbnRzL2RlY29yYXRvcnMnO1xuaW1wb3J0IHsgQVhGb3JtTW9kdWxlIH0gZnJvbSAnQGFjb3JleC9jb21wb25lbnRzL2Zvcm0nO1xuaW1wb3J0IHsgQVhTZWxlY3RCb3hNb2R1bGUgfSBmcm9tICdAYWNvcmV4L2NvbXBvbmVudHMvc2VsZWN0LWJveCc7XG5pbXBvcnQgeyBBWFRleHRCb3hNb2R1bGUgfSBmcm9tICdAYWNvcmV4L2NvbXBvbmVudHMvdGV4dC1ib3gnO1xuaW1wb3J0IHsgQVhUcmFuc2xhdGlvblNlcnZpY2UgfSBmcm9tICdAYWNvcmV4L2NvcmUvdHJhbnNsYXRpb24nO1xuaW1wb3J0IHsgQVhWYWxpZGF0aW9uTW9kdWxlLCBBWFZhbGlkYXRpb25TZXJ2aWNlIH0gZnJvbSAnQGFjb3JleC9jb3JlL3ZhbGlkYXRpb24nO1xuaW1wb3J0IHsgQVhQVmFsaWRhdGlvblJ1bGVzIH0gZnJvbSAnQGFjb3JleC9wbGF0Zm9ybS9jb21tb24nO1xuaW1wb3J0IHsgQVhQV2lkZ2V0QmFzZSB9IGZyb20gJ0BhY29yZXgvcGxhdGZvcm0vbGF5b3V0L2J1aWxkZXInO1xuaW1wb3J0IHsgQ29tbW9uTW9kdWxlIH0gZnJvbSAnQGFuZ3VsYXIvY29tbW9uJztcbmltcG9ydCB7IENoYW5nZURldGVjdGlvblN0cmF0ZWd5LCBDb21wb25lbnQsIFNpZ25hbCwgY29tcHV0ZWQsIGluamVjdCB9IGZyb20gJ0Bhbmd1bGFyL2NvcmUnO1xuaW1wb3J0IHsgRm9ybXNNb2R1bGUgfSBmcm9tICdAYW5ndWxhci9mb3Jtcyc7XG5cbkBDb21wb25lbnQoe1xuICB0ZW1wbGF0ZTogYDxkaXYgY2xhc3M9XCJheC1ncmlkIGF4LWdyaWQtY29scy0xMiBheC1nYXAtNFwiPlxuICAgIEBpZihtdWx0aXBsZSl7IEBmb3IoaXRlbSBvZiBpbnRlcm5hbFZhbHVlKCk7dHJhY2sgJGluZGV4KSB7IEBpZihpdGVtKXtcbiAgICA8IS0tIFRPRE8gbmVlZCB0byBmaXggbXVsdGlwbGUgLS0+XG4gICAgPGF4LXRleHQtYm94XG4gICAgICBbbmdNb2RlbF09XCJpdGVtLnZhbHVlXCJcbiAgICAgIChvblZhbHVlQ2hhbmdlZCk9XCJoYW5kbGVWYWx1ZUNoYW5nZSgkZXZlbnQsICRpbmRleClcIlxuICAgICAgdHlwZT1cInRleHRcIlxuICAgICAgcGxhY2Vob2xkZXI9XCJFbnRlciBMaW5rXCJcbiAgICAgIGNsYXNzPVwiYXgtY29sLXN0YXJ0LTEgYXgtY29sLWVuZC0xMyBsZzpheC1jb2wtZW5kLTdcIlxuICAgICAgW2NsYXNzLmxnOiFheC1jb2wtZW5kLTEyXT1cIiFoYXNMYWJlbFwiXG4gICAgPlxuICAgICAgPGF4LXByZWZpeD5cbiAgICAgICAgPGF4LXNlbGVjdC1ib3hcbiAgICAgICAgICBbZGF0YVNvdXJjZV09XCJsaW5rVHlwZXNcIlxuICAgICAgICAgIFtuZ01vZGVsXT1cIml0ZW0ubGFiZWxcIlxuICAgICAgICAgIChvblZhbHVlQ2hhbmdlZCk9XCJoYW5kbGVWYWx1ZUNoYW5nZSgkZXZlbnQsICRpbmRleClcIlxuICAgICAgICAgIFtsb29rXT1cIidmaWxsJ1wiXG4gICAgICAgICAgcGxhY2Vob2xkZXI9XCJDaG9vc2UuLi5cIlxuICAgICAgICA+XG4gICAgICAgIDwvYXgtc2VsZWN0LWJveD5cbiAgICAgIDwvYXgtcHJlZml4PlxuICAgICAgQGZvciAodmFsaWRhdGlvbiBvZiB2YWxpZGF0aW9uUnVsZXM7IHRyYWNrICRpbmRleCkge1xuICAgICAgPGF4LXZhbGlkYXRpb24tcnVsZSBbcnVsZV09XCJ2YWxpZGF0aW9uLnJ1bGVcIiBbbWVzc2FnZV09XCJ2YWxpZGF0aW9uLm9wdGlvbnM/Lm1lc3NhZ2VcIiBbb3B0aW9uc109XCJ2YWxpZGF0aW9uLm9wdGlvbnNcIj48L2F4LXZhbGlkYXRpb24tcnVsZT5cbiAgICAgIH1cbiAgICAgIDxheC12YWxpZGF0aW9uLXJ1bGUgbWVzc2FnZT1cImZpZWxkIGNhbid0IGJlIGVtcHR5XCIgcnVsZT1cInJlcXVpcmVkXCI+IDwvYXgtdmFsaWRhdGlvbi1ydWxlPlxuICAgICAgPGF4LXZhbGlkYXRpb24tcnVsZSBtZXNzYWdlPVwiZmllbGQgY2FuJ3QgYmUgZW1wdHlcIiBydWxlPVwiY2FsbGJhY2tcIiBbb3B0aW9uc109XCJ7IHZhbGlkYXRlOiB2YWxpZGF0ZUZuIH1cIj4gPC9heC12YWxpZGF0aW9uLXJ1bGU+XG4gICAgPC9heC10ZXh0LWJveD5cbiAgICBAaWYoaGFzTGFiZWwpe1xuICAgIDxheC1zZWxlY3QtYm94XG4gICAgICBbZGF0YVNvdXJjZV09XCJsYWJlbFR5cGVzXCJcbiAgICAgIFtuZ01vZGVsXT1cIml0ZW0ubGFiZWxcIlxuICAgICAgKG9uVmFsdWVDaGFuZ2VkKT1cImhhbmRsZVZhbHVlQ2hhbmdlKCRldmVudCwgJGluZGV4KVwiXG4gICAgICBwbGFjZWhvbGRlcj1cIkNob29zZSBMYWJlbC4uLlwiXG4gICAgICBjbGFzcz1cImF4LWNvbC1zdGFydC0xIGF4LWNvbC1lbmQtMTEgbGc6YXgtY29sLXN0YXJ0LTcgbGc6YXgtY29sLWVuZC0xM1wiXG4gICAgPlxuICAgICAgPGF4LWNsZWFyLWJ1dHRvbj48L2F4LWNsZWFyLWJ1dHRvbj5cbiAgICA8L2F4LXNlbGVjdC1ib3g+XG4gICAgfVxuICAgIDxheC1idXR0b25cbiAgICAgIGxvb2s9XCJ0d290b25lXCJcbiAgICAgIGNvbG9yPVwiZGFuZ2VyXCJcbiAgICAgIChvbkNsaWNrKT1cImRlbGV0ZUl0ZW0oJGluZGV4KVwiXG4gICAgICBjbGFzcz1cImF4LWNvbC1zdGFydC0xMSBheC1jb2wtZW5kLTEzIGxnOmF4LWNvbC1zdGFydC0xMiBsZzpheC1jb2wtZW5kLTEzIGF4LWp1c3RpZnktc2VsZi1lbmRcIlxuICAgID5cbiAgICAgIDxheC1pY29uIGljb249XCJmYS1yZWd1bGFyIGZhLXhtYXJrXCI+PC9heC1pY29uPlxuICAgIDwvYXgtYnV0dG9uPlxuICAgIH1cbiAgICA8YXgtYnV0dG9uXG4gICAgICBbdGV4dF09XCJpbnRlcm5hbFZhbHVlKCkubGVuZ3RoID09IDAgPyAnQWRkIE5ldycgOiAnQWRkIEFub3RoZXInXCJcbiAgICAgIGxvb2s9XCJ0d290b25lXCJcbiAgICAgIChvbkNsaWNrKT1cImFkZEl0ZW0oKVwiXG4gICAgICBjbGFzcz1cImF4LWNvbC1zdGFydC04IGxnOmF4LWNvbC1zdGFydC0xMCAyeGw6YXgtY29sLXN0YXJ0LTEwIGF4LWNvbC1lbmQtMTNcIlxuICAgID5cbiAgICAgIDxheC1wcmVmaXg+XG4gICAgICAgIDxheC1pY29uIGNsYXNzPVwiZmEtc29saWQgZmEtYWRkXCI+PC9heC1pY29uPlxuICAgICAgPC9heC1wcmVmaXg+XG4gICAgPC9heC1idXR0b24+XG4gICAgfSB9IEBlbHNle1xuICAgIDxheC10ZXh0LWJveFxuICAgICAgW25nQ2xhc3NdPVwiZ2VuZXJhdGVDbGFzc2VzKCd1cmwnKVwiXG4gICAgICBbbmdNb2RlbF09XCJpbnRlcm5hbFZhbHVlKClbMF0udmFsdWVcIlxuICAgICAgKG9uVmFsdWVDaGFuZ2VkKT1cImhhbmRsZVZhbHVlQ2hhbmdlKCRldmVudCwgMClcIlxuICAgICAgdHlwZT1cInRleHRcIlxuICAgICAgbmFtZT1cInZhbHVlXCJcbiAgICAgIHBsYWNlaG9sZGVyPVwiTGlua1wiXG4gICAgICBjbGFzcz1cImF4LWNvbC1zdGFydC0xIGF4LWNvbC1lbmQtMTNcIlxuICAgID5cbiAgICAgIDxheC1wcmVmaXhcbiAgICAgICAgPjxheC1zZWxlY3QtYm94XG4gICAgICAgICAgW2RhdGFTb3VyY2VdPVwibGlua1R5cGVzXCJcbiAgICAgICAgICBbbG9va109XCInZmlsbCdcIlxuICAgICAgICAgIG5hbWU9XCJwcm90b2NvbFwiXG4gICAgICAgICAgcGxhY2Vob2xkZXI9XCJQcm90b2NvbFwiXG4gICAgICAgICAgW25nTW9kZWxdPVwiaW50ZXJuYWxWYWx1ZSgpWzBdLnByb3RvY29sXCJcbiAgICAgICAgICAob25WYWx1ZUNoYW5nZWQpPVwiaGFuZGxlVmFsdWVDaGFuZ2UoJGV2ZW50LCAwKVwiXG4gICAgICAgID5cbiAgICAgICAgICA8IS0tIDxheC12YWxpZGF0aW9uLXJ1bGUgbWVzc2FnZT1cImZpZWxkIGNhbid0IGJlIGVtcHR5XCIgcnVsZT1cInJlcXVpcmVkXCI+IDwvYXgtdmFsaWRhdGlvbi1ydWxlPiAtLT5cbiAgICAgICAgICA8YXgtY2xlYXItYnV0dG9uPjwvYXgtY2xlYXItYnV0dG9uPiA8L2F4LXNlbGVjdC1ib3hcbiAgICAgID48L2F4LXByZWZpeD5cbiAgICAgIEBmb3IgKHZhbGlkYXRpb24gb2YgdmFsaWRhdGlvblJ1bGVzOyB0cmFjayAkaW5kZXgpIHtcbiAgICAgIDxheC12YWxpZGF0aW9uLXJ1bGUgW3J1bGVdPVwidmFsaWRhdGlvbi5ydWxlXCIgW21lc3NhZ2VdPVwidmFsaWRhdGlvbi5vcHRpb25zPy5tZXNzYWdlXCIgW29wdGlvbnNdPVwidmFsaWRhdGlvbi5vcHRpb25zXCI+PC9heC12YWxpZGF0aW9uLXJ1bGU+XG4gICAgICB9XG4gICAgICA8YXgtdmFsaWRhdGlvbi1ydWxlIG1lc3NhZ2U9XCJmaWVsZCBjYW4ndCBiZSBlbXB0eVwiIHJ1bGU9XCJyZXF1aXJlZFwiPiA8L2F4LXZhbGlkYXRpb24tcnVsZT5cbiAgICAgIDxheC12YWxpZGF0aW9uLXJ1bGUgbWVzc2FnZT1cImZpZWxkIGNhbid0IGJlIGVtcHR5XCIgcnVsZT1cImNhbGxiYWNrXCIgW29wdGlvbnNdPVwieyB2YWxpZGF0ZTogdmFsaWRhdGVGbiB9XCI+IDwvYXgtdmFsaWRhdGlvbi1ydWxlPlxuICAgIDwvYXgtdGV4dC1ib3g+XG4gICAgQGlmKGhhc1RpdGxlKXtcbiAgICA8YXgtdGV4dC1ib3hcbiAgICAgIFtuZ0NsYXNzXT1cImdlbmVyYXRlQ2xhc3NlcygndGl0bGUnKVwiXG4gICAgICBbbmdNb2RlbF09XCJpbnRlcm5hbFZhbHVlKClbMF0udGl0bGVcIlxuICAgICAgKG9uVmFsdWVDaGFuZ2VkKT1cImhhbmRsZVZhbHVlQ2hhbmdlKCRldmVudCwgMClcIlxuICAgICAgdHlwZT1cInRleHRcIlxuICAgICAgbmFtZT1cInRpdGxlXCJcbiAgICAgIHBsYWNlaG9sZGVyPVwiVGl0bGVcIlxuICAgID5cbiAgICA8L2F4LXRleHQtYm94PlxuICAgIH0gQGlmKGhhc0xhYmVsKXtcbiAgICA8YXgtc2VsZWN0LWJveFxuICAgICAgW25nQ2xhc3NdPVwiZ2VuZXJhdGVDbGFzc2VzKCdsYWJlbCcpXCJcbiAgICAgIFtkYXRhU291cmNlXT1cImxhYmVsVHlwZXNcIlxuICAgICAgW25nTW9kZWxdPVwiaW50ZXJuYWxWYWx1ZSgpWzBdLmxhYmVsXCJcbiAgICAgIChvblZhbHVlQ2hhbmdlZCk9XCJoYW5kbGVWYWx1ZUNoYW5nZSgkZXZlbnQsIDApXCJcbiAgICAgIG5hbWU9XCJsYWJlbFwiXG4gICAgICBwbGFjZWhvbGRlcj1cIkxhYmVsXCJcbiAgICA+XG4gICAgPC9heC1zZWxlY3QtYm94PlxuICAgIH0gfVxuICA8L2Rpdj5gLFxuICBzdGFuZGFsb25lOiB0cnVlLFxuICBjaGFuZ2VEZXRlY3Rpb246IENoYW5nZURldGVjdGlvblN0cmF0ZWd5Lk9uUHVzaCxcbiAgaW1wb3J0czogW1xuICAgIENvbW1vbk1vZHVsZSxcbiAgICBGb3Jtc01vZHVsZSxcbiAgICBBWFNlbGVjdEJveE1vZHVsZSxcbiAgICBBWEZvcm1Nb2R1bGUsXG4gICAgQVhCdXR0b25Nb2R1bGUsXG4gICAgQVhEZWNvcmF0b3JNb2R1bGUsXG4gICAgQVhTZWxlY3RCb3hNb2R1bGUsXG4gICAgQVhUZXh0Qm94TW9kdWxlLFxuICAgIEFYVmFsaWRhdGlvbk1vZHVsZSxcbiAgXSxcbiAgaW5wdXRzOiBbXSxcbn0pXG5leHBvcnQgY2xhc3MgQVhQTGlua1dpZGdldEVkaXRDb21wb25lbnQgZXh0ZW5kcyBBWFBXaWRnZXRCYXNlPGFueT4ge1xuICBwcm90ZWN0ZWQgdmFsaWRhdGlvblNlcnZpY2UgPSBpbmplY3QoQVhWYWxpZGF0aW9uU2VydmljZSk7XG4gIHByb3RlY3RlZCB0cmFuc2xhdGVTZXJ2aWNlID0gaW5qZWN0KEFYVHJhbnNsYXRpb25TZXJ2aWNlKTtcblxuICBwcm90ZWN0ZWQgbXVsdGlwbGUhOiBib29sZWFuO1xuICBwcm90ZWN0ZWQgdmFsaWRhdGlvbk1lc3NhZ2U/OiBzdHJpbmcgfCBudWxsO1xuXG4gIHByb3RlY3RlZCBkaXNhYmxlZDogYm9vbGVhbiA9IGZhbHNlO1xuICBwcm90ZWN0ZWQgY2xlYXJCdXR0b246IGJvb2xlYW4gPSB0cnVlO1xuICBwcm90ZWN0ZWQgaGFzTGFiZWw6IGJvb2xlYW4gPSB0cnVlO1xuICBwcm90ZWN0ZWQgaGFzVGl0bGU6IGJvb2xlYW4gPSB0cnVlO1xuXG4gIHByb3RlY3RlZCBsYWJlbFR5cGVzOiBzdHJpbmdbXSA9IFsnUHJpbWFyeScsICdTZWNvbmRhcnknXTtcbiAgcHJvdGVjdGVkIGxpbmtUeXBlczogc3RyaW5nW10gPSBbJ2h0dHAnLCAnaHR0cHMnLCAncmVsYXRlZCddO1xuXG4gIHByb3RlY3RlZCBkYXRhU291cmNlID0gbmV3IEFYRGF0YVNvdXJjZTxhbnk+KHtcbiAgICBwYWdlU2l6ZTogMTAsXG4gICAga2V5OiAnaWQnLFxuICAgIGxvYWQ6IChlKSA9PiB7XG4gICAgICByZXR1cm4gbmV3IFByb21pc2UoKHJlc29sdmUpID0+IHtcbiAgICAgICAgc2V0VGltZW91dChcbiAgICAgICAgICAoKSA9PiB7XG4gICAgICAgICAgICBjb25zdCBsaXN0ID0gdGhpcy5saW5rVHlwZXM7XG4gICAgICAgICAgICBjb25zdCByZXN1bHQgPSBlLmZpbHRlciA/IGxpc3QuZmlsdGVyKChpdGVtKSA9PiBpdGVtLmluY2x1ZGVzKGUuZmlsdGVyPy52YWx1ZSBhcyBzdHJpbmcpKSA6IGxpc3Q7XG4gICAgICAgICAgICByZXNvbHZlKHtcbiAgICAgICAgICAgICAgaXRlbXM6IHJlc3VsdC5zbGljZShlLnNraXAsIGUuc2tpcCArIGUudGFrZSksXG4gICAgICAgICAgICAgIHRvdGFsOiByZXN1bHQubGVuZ3RoLFxuICAgICAgICAgICAgfSk7XG4gICAgICAgICAgfSxcbiAgICAgICAgICBlLnNraXAgPT0gMCA/IDEwMCA6IDMwMFxuICAgICAgICApO1xuICAgICAgfSk7XG4gICAgfSxcbiAgfSk7XG5cbiAgcHJvdGVjdGVkIGludGVybmFsVmFsdWU6IFNpZ25hbDx7IHZhbHVlOiBzdHJpbmc7IGxhYmVsPzogc3RyaW5nOyB0aXRsZTogc3RyaW5nOyBpY29uPzogc3RyaW5nOyBwcm90b2NvbDogJ2h0dHAnIHwgJ2h0dHBzJyB8ICdyZWxhdGVkJyB9W10+ID1cbiAgICBjb21wdXRlZCgoKSA9PiB0aGlzLmdldFZhbHVlQXNBcnJheU9mT2JqZWN0cygpKTtcblxuICBvdmVycmlkZSBuZ09uSW5pdCgpOiB2b2lkIHtcbiAgICBzdXBlci5uZ09uSW5pdCgpO1xuICAgIHRoaXMuZ2V0VmFsdWVBc0FycmF5T2ZPYmplY3RzKCk7XG4gIH1cblxuICBwcml2YXRlIF92YWxpZGF0aW9uUnVsZXM6IEFYUFZhbGlkYXRpb25SdWxlcyA9IFtdO1xuICBwdWJsaWMgZ2V0IHZhbGlkYXRpb25SdWxlcygpOiBBWFBWYWxpZGF0aW9uUnVsZXMge1xuICAgIHJldHVybiB0aGlzLl92YWxpZGF0aW9uUnVsZXM7XG4gIH1cbiAgcHVibGljIHNldCB2YWxpZGF0aW9uUnVsZXModjogQVhQVmFsaWRhdGlvblJ1bGVzKSB7XG4gICAgdGhpcy5fdmFsaWRhdGlvblJ1bGVzID0gdjtcbiAgfVxuXG4gIHByaXZhdGUgZ2V0VmFsdWVBc0FycmF5T2ZPYmplY3RzKCk6IGFueVtdIHtcbiAgICBjb25zdCB2YWx1ZSA9IHRoaXMuZ2V0VmFsdWUoKTtcbiAgICBpZiAoQXJyYXkuaXNBcnJheSh2YWx1ZSkpIHtcbiAgICAgIHJldHVybiB2YWx1ZS5tYXAoKGl0ZW0pID0+IHtcbiAgICAgICAgdHlwZW9mIGl0ZW0gPT09ICdvYmplY3QnXG4gICAgICAgICAgPyB7XG4gICAgICAgICAgICAgIHZhbHVlOiBpdGVtLnZhbHVlID8/ICctJyxcbiAgICAgICAgICAgICAgdGl0bGU6IGl0ZW0udGl0bGUsXG4gICAgICAgICAgICAgIHByb3RvY29sOiBpdGVtLnByb3RvY29sID8/ICdodHRwcycsXG4gICAgICAgICAgICAgIGxhYmVsOiB0aGlzLmhhc0xhYmVsID8gaXRlbS5sYWJlbCB8fCAncHJpbWFyeScgOiB1bmRlZmluZWQsXG4gICAgICAgICAgICAgIGljb246IGl0ZW0uaWNvbixcbiAgICAgICAgICAgIH1cbiAgICAgICAgICA6IHtcbiAgICAgICAgICAgICAgdmFsdWU6IGl0ZW0sXG4gICAgICAgICAgICAgIHRpdGxlOiAnJyxcbiAgICAgICAgICAgICAgaWNvbjogJycsXG4gICAgICAgICAgICAgIHByb3RvY29sOiAnaHR0cHMnLFxuICAgICAgICAgICAgICBsYWJlbDogdGhpcy5oYXNMYWJlbCA/ICdQcmltYXJ5JyA6IHVuZGVmaW5lZCxcbiAgICAgICAgICAgIH07XG4gICAgICB9KTtcbiAgICB9XG4gICAgcmV0dXJuIHR5cGVvZiB2YWx1ZSA9PT0gJ29iamVjdCcgPyBbdmFsdWVdIDogW3sgdmFsdWU6IHZhbHVlIHx8ICcnIH1dO1xuICB9XG5cbiAgcHJvdGVjdGVkIGhhbmRsZVZhbHVlQ2hhbmdlKGU6IEFYVmFsdWVDaGFuZ2VkRXZlbnQsIHNlbGVjdGVkSW5kZXg6IG51bWJlcikge1xuICAgIGNvbnN0IHsgbmFtZSwgdmFsdWUsIGlzVXNlckludGVyYWN0aW9uIH0gPSBlO1xuICAgIGlmIChpc1VzZXJJbnRlcmFjdGlvbikge1xuICAgICAgY29uc29sZS5sb2coZSk7XG4gICAgICBjb25zdCBuZXdWYWx1ZXMgPSB0aGlzLmludGVybmFsVmFsdWUoKS5tYXAoKGl0ZW0sIGluZGV4KSA9PlxuICAgICAgICBzZWxlY3RlZEluZGV4ID09PSBpbmRleCA/IChuYW1lID09PSAndmFsdWUnID8gdGhpcy5jb252ZXJ0SXRlbShpdGVtLCBlKSA6IHsgLi4uaXRlbSwgW25hbWUgYXMgc3RyaW5nXTogdmFsdWUgfSkgOiBpdGVtXG4gICAgICApO1xuICAgICAgY29uc29sZS5sb2cobmV3VmFsdWVzKTtcbiAgICAgIGlmICh0aGlzLm11bHRpcGxlKSB0aGlzLnNldFZhbHVlKG5ld1ZhbHVlcyk7XG4gICAgICBlbHNlIHRoaXMuc2V0VmFsdWUobmV3VmFsdWVzWzBdKTtcbiAgICB9XG4gIH1cblxuICBwcm90ZWN0ZWQgY29udmVydEl0ZW0gPSAoaXRlbTogYW55LCBlOiBhbnkpID0+IHtcbiAgICBpZiAodHlwZW9mIGl0ZW0gPT09ICdvYmplY3QnKSByZXR1cm4geyAuLi5pdGVtLCB2YWx1ZTogZS52YWx1ZSB9O1xuICAgIGVsc2UgcmV0dXJuIGUudmFsdWU7XG4gIH07XG5cbiAgLy8gcHJvdGVjdGVkIGhhbmRsZUxhYmVsQ2hhbmdlKGU6IEFYVmFsdWVDaGFuZ2VkRXZlbnQsIHNlbGVjdGVkSW5kZXg6IG51bWJlcikge1xuICAvLyAgIGlmIChlLmlzVXNlckludGVyYWN0aW9uKSB7XG4gIC8vICAgICBjb25zdCBuZXdWYWx1ZXMgPSB0aGlzLmludGVybmFsVmFsdWUoKS5tYXAoKGl0ZW0sIGluZGV4KSA9PiAoc2VsZWN0ZWRJbmRleCA9PT0gaW5kZXggPyB7IC4uLml0ZW0sIGxhYmVsOiBlLnZhbHVlIH0gOiBpdGVtKSk7XG4gIC8vICAgICBpZiAodGhpcy5tdWx0aXBsZSkgdGhpcy5zZXRWYWx1ZShuZXdWYWx1ZXMpO1xuICAvLyAgICAgZWxzZSB0aGlzLnNldFZhbHVlKG5ld1ZhbHVlc1swXSk7XG4gIC8vICAgfVxuICAvLyB9XG5cbiAgcHJvdGVjdGVkIGFkZEl0ZW0oKSB7XG4gICAgY29uc3QgbmV3VmFsdWVzID0gWy4uLnRoaXMuaW50ZXJuYWxWYWx1ZSgpLCAnJ107XG4gICAgdGhpcy5zZXRWYWx1ZShuZXdWYWx1ZXMpO1xuICB9XG4gIHByb3RlY3RlZCBkZWxldGVJdGVtKGRlbGV0ZWRJbmRleDogbnVtYmVyKSB7XG4gICAgY29uc3QgbmV3VmFsdWVzID0gdGhpcy5pbnRlcm5hbFZhbHVlKCkuZmlsdGVyKChfLCBpbmRleCkgPT4gaW5kZXggIT0gZGVsZXRlZEluZGV4KTtcbiAgICB0aGlzLnNldFZhbHVlKG5ld1ZhbHVlcyk7XG4gIH1cbiAgcHJvdGVjdGVkIHZhbGlkYXRlRm4gPSBhc3luYyAodmFsOiBzdHJpbmcpID0+IHtcbiAgICBjb25zdCB1cmxSZWdleCA9IC9eKFthLXpBLVowLTkuLV0rXFwuW2EtekEtWl17Mix9KShcXC9bYS16QS1aMC05Ll9+Oi8/I1xcW1xcXUAhJCYnKCkqKyw7PS1dKik/JC87XG4gICAgY29uc3QgaXNWYWxpZCA9IHVybFJlZ2V4LnRlc3QodmFsKTtcbiAgICBjb25zdCB0cmFuc2xhdGVkTWVzc2FnZSA9IGF3YWl0IHRoaXMudHJhbnNsYXRlU2VydmljZS50cmFuc2xhdGVBc3luYygndmFsaWRhdGlvbi5tZXNzYWdlcy51cmwnKTtcbiAgICByZXR1cm4ge1xuICAgICAgcnVsZTogJ2NhbGxiYWNrJyxcbiAgICAgIHJlc3VsdDogaXNWYWxpZCxcbiAgICAgIG1lc3NhZ2U6IHRyYW5zbGF0ZWRNZXNzYWdlLFxuICAgICAgdmFsdWU6IHZhbCxcbiAgICB9O1xuICB9O1xuICBwcm90ZWN0ZWQgZ2VuZXJhdGVDbGFzc2VzKGVsZW1lbnROYW1lOiAndXJsJyB8ICd0aXRsZScgfCAnbGFiZWwnKTogQXJyYXk8c3RyaW5nPiB7XG4gICAgc3dpdGNoIChlbGVtZW50TmFtZSkge1xuICAgICAgY2FzZSAndXJsJzpcbiAgICAgICAgaWYgKHRoaXMuaGFzVGl0bGUgfHwgdGhpcy5oYXNMYWJlbCkge1xuICAgICAgICAgIC8vYWxyZWFkeSBoYXMgYXgtY29sLXN0YXJ0LTEgYXgtY29sLWVuZC0xM1xuICAgICAgICAgIHJldHVybiBbJ2xnOmF4LWNvbC1lbmQtNyddO1xuICAgICAgICB9IGVsc2Uge1xuICAgICAgICAgIHJldHVybiBbJ2xnOmF4LWNvbC1lbmQtMTMnXTtcbiAgICAgICAgfVxuICAgICAgY2FzZSAndGl0bGUnOlxuICAgICAgICBpZiAodGhpcy5oYXNMYWJlbCkge1xuICAgICAgICAgIHJldHVybiBbJ2F4LWNvbC1zdGFydC0xIGF4LWNvbC1lbmQtNyBsZzpheC1jb2wtc3RhcnQtNyBsZzpheC1jb2wtZW5kLTEwJ107XG4gICAgICAgIH0gZWxzZSB7XG4gICAgICAgICAgcmV0dXJuIFsnYXgtY29sLXN0YXJ0LTEgYXgtY29sLWVuZC0xMyBsZzpheC1jb2wtc3RhcnQtNyBsZzpheC1jb2wtZW5kLTEzJ107XG4gICAgICAgIH1cbiAgICAgIGNhc2UgJ2xhYmVsJzpcbiAgICAgICAgaWYgKHRoaXMuaGFzVGl0bGUpIHtcbiAgICAgICAgICByZXR1cm4gWydheC1jb2wtc3RhcnQtNyBheC1jb2wtZW5kLTEzIGxnOmF4LWNvbC1zdGFydC0xMCBsZzpheC1jb2wtZW5kLTEzJ107XG4gICAgICAgIH0gZWxzZSB7XG4gICAgICAgICAgcmV0dXJuIFsnYXgtY29sLXN0YXJ0LTEgYXgtY29sLWVuZC0xMyBsZzpheC1jb2wtc3RhcnQtNyBsZzpheC1jb2wtZW5kLTEzJ107XG4gICAgICAgIH1cbiAgICAgIGRlZmF1bHQ6XG4gICAgICAgIHJldHVybiBbJyddO1xuICAgIH1cbiAgfVxufVxuIl19
391
+ //# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoibGluay13aWRnZXQtZWRpdC5jb21wb25lbnQuanMiLCJzb3VyY2VSb290IjoiIiwic291cmNlcyI6WyIuLi8uLi8uLi8uLi8uLi8uLi8uLi8uLi9saWJzL3BsYXRmb3JtL3dpZGdldHMvc3JjL2xpYi9lZGl0b3JzL2xpbmstd2lkZ2V0L2xpbmstd2lkZ2V0LWVkaXQuY29tcG9uZW50LnRzIl0sIm5hbWVzIjpbXSwibWFwcGluZ3MiOiJBQUFBLE9BQU8sRUFBRSxjQUFjLEVBQUUsTUFBTSwyQkFBMkIsQ0FBQztBQUMzRCxPQUFPLEVBQUUsWUFBWSxFQUF1QixNQUFNLDJCQUEyQixDQUFDO0FBQzlFLE9BQU8sRUFBRSxpQkFBaUIsRUFBRSxNQUFNLCtCQUErQixDQUFDO0FBQ2xFLE9BQU8sRUFBRSxZQUFZLEVBQUUsTUFBTSx5QkFBeUIsQ0FBQztBQUN2RCxPQUFPLEVBQUUsaUJBQWlCLEVBQUUsTUFBTSwrQkFBK0IsQ0FBQztBQUNsRSxPQUFPLEVBQUUsZUFBZSxFQUFFLE1BQU0sNkJBQTZCLENBQUM7QUFDOUQsT0FBTyxFQUFFLG9CQUFvQixFQUFFLE1BQU0sMEJBQTBCLENBQUM7QUFDaEUsT0FBTyxFQUFFLGtCQUFrQixFQUFFLG1CQUFtQixFQUFFLE1BQU0seUJBQXlCLENBQUM7QUFFbEYsT0FBTyxFQUFFLGFBQWEsRUFBRSxNQUFNLGlDQUFpQyxDQUFDO0FBQ2hFLE9BQU8sRUFBRSxZQUFZLEVBQUUsTUFBTSxpQkFBaUIsQ0FBQztBQUMvQyxPQUFPLEVBQUUsdUJBQXVCLEVBQUUsU0FBUyxFQUFVLFFBQVEsRUFBRSxNQUFNLEVBQUUsTUFBTSxlQUFlLENBQUM7QUFDN0YsT0FBTyxFQUFFLFdBQVcsRUFBRSxNQUFNLGdCQUFnQixDQUFDOzs7Ozs7Ozs7QUE4RzdDLE1BQU0sT0FBTywwQkFBMkIsU0FBUSxhQUFrQjtJQTVHbEU7O1FBNkdZLHNCQUFpQixHQUFHLE1BQU0sQ0FBQyxtQkFBbUIsQ0FBQyxDQUFDO1FBQ2hELHFCQUFnQixHQUFHLE1BQU0sQ0FBQyxv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Qzt5QkFBTSxDQUFDO3dCQUNOLE9BQU8sQ0FBQyxpRUFBaUUsQ0FBQyxDQUFDO29CQUM3RSxDQUFDO2dCQUNIO29CQUNFLE9BQU8sQ0FBQyxFQUFFLENBQUMsQ0FBQztZQUNoQixDQUFDO1FBQ0gsQ0FBQzthQUFNLENBQUM7WUFDTixPQUFPLENBQUMsRUFBRSxDQUFDLENBQUM7UUFDZCxDQUFDO0lBQ0gsQ0FBQzs4R0ExS1UsMEJBQTBCO2tHQUExQiwwQkFBMEIsK0ZBM0czQjs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7OztTQTJGSCwyREFJTCxZQUFZLDRIQUNaLFdBQVcsOFZBQ1gsaUJBQWlCLHlpQkFDakIsWUFBWSxpS0FDWixjQUFjLGlYQUNkLGlCQUFpQix1VkFFakIsZUFBZSxxYkFDZixrQkFBa0I7OzJGQUlULDBCQUEwQjtrQkE1R3RDLFNBQVM7bUJBQUM7b0JBQ1QsUUFBUSxFQUFFOzs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7O1NBMkZIO29CQUNQLFVBQVUsRUFBRSxJQUFJO29CQUNoQixlQUFlLEVBQUUsdUJBQXVCLENBQUMsTUFBTTtvQkFDL0MsT0FBTyxFQUFFO3dCQUNQLFlBQVk7d0JBQ1osV0FBVzt3QkFDWCxpQkFBaUI7d0JBQ2pCLFlBQVk7d0JBQ1osY0FBYzt3QkFDZCxpQkFBaUI7d0JBQ2pCLGlCQUFpQjt3QkFDakIsZUFBZTt3QkFDZixrQkFBa0I7cUJBQ25CO29CQUNELE1BQU0sRUFBRSxFQUFFO2lCQUNYIiwic291cmNlc0NvbnRlbnQiOlsiaW1wb3J0IHsgQVhCdXR0b25Nb2R1bGUgfSBmcm9tICdAYWNvcmV4L2NvbXBvbmVudHMvYnV0dG9uJztcbmltcG9ydCB7IEFYRGF0YVNvdXJjZSwgQVhWYWx1ZUNoYW5nZWRFdmVudCB9IGZyb20gJ0BhY29yZXgvY29tcG9uZW50cy9jb21tb24nO1xuaW1wb3J0IHsgQVhEZWNvcmF0b3JNb2R1bGUgfSBmcm9tICdAYWNvcmV4L2NvbXBvbmVudHMvZGVjb3JhdG9ycyc7XG5pbXBvcnQgeyBBWEZvcm1Nb2R1bGUgfSBmcm9tICdAYWNvcmV4L2NvbXBvbmVudHMvZm9ybSc7XG5pbXBvcnQgeyBBWFNlbGVjdEJveE1vZHVsZSB9IGZyb20gJ0BhY29yZXgvY29tcG9uZW50cy9zZWxlY3QtYm94JztcbmltcG9ydCB7IEFYVGV4dEJveE1vZHVsZSB9IGZyb20gJ0BhY29yZXgvY29tcG9uZW50cy90ZXh0LWJveCc7XG5pbXBvcnQgeyBBWFRyYW5zbGF0aW9uU2VydmljZSB9IGZyb20gJ0BhY29yZXgvY29yZS90cmFuc2xhdGlvbic7XG5pbXBvcnQgeyBBWFZhbGlkYXRpb25Nb2R1bGUsIEFYVmFsaWRhdGlvblNlcnZpY2UgfSBmcm9tICdAYWNvcmV4L2NvcmUvdmFsaWRhdGlvbic7XG5pbXBvcnQgeyBBWFBWYWxpZGF0aW9uUnVsZXMgfSBmcm9tICdAYWNvcmV4L3BsYXRmb3JtL2NvbW1vbic7XG5pbXBvcnQgeyBBWFBXaWRnZXRCYXNlIH0gZnJvbSAnQGFjb3JleC9wbGF0Zm9ybS9sYXlvdXQvYnVpbGRlcic7XG5pbXBvcnQgeyBDb21tb25Nb2R1bGUgfSBmcm9tICdAYW5ndWxhci9jb21tb24nO1xuaW1wb3J0IHsgQ2hhbmdlRGV0ZWN0aW9uU3RyYXRlZ3ksIENvbXBvbmVudCwgU2lnbmFsLCBjb21wdXRlZCwgaW5qZWN0IH0gZnJvbSAnQGFuZ3VsYXIvY29yZSc7XG5pbXBvcnQgeyBGb3Jtc01vZHVsZSB9IGZyb20gJ0Bhbmd1bGFyL2Zvcm1zJztcblxuQENvbXBvbmVudCh7XG4gIHRlbXBsYXRlOiBgPGRpdiBjbGFzcz1cImF4LWdyaWQgYXgtZ3JpZC1jb2xzLTEyIGF4LWdhcC00XCI+XG4gICAgQGlmKG11bHRpcGxlKXsgQGZvcihpdGVtIG9mIGludGVybmFsVmFsdWUoKTt0cmFjayAkaW5kZXgpIHsgQGlmKGl0ZW0pe1xuICAgIDwhLS0gVE9ETyBuZWVkIHRvIGZpeCBtdWx0aXBsZSAtLT5cbiAgICA8YXgtdGV4dC1ib3hcbiAgICAgIFtuZ01vZGVsXT1cIml0ZW0udmFsdWVcIlxuICAgICAgKG9uVmFsdWVDaGFuZ2VkKT1cImhhbmRsZVZhbHVlQ2hhbmdlKCRldmVudCwgJGluZGV4KVwiXG4gICAgICB0eXBlPVwidGV4dFwiXG4gICAgICBwbGFjZWhvbGRlcj1cIkVudGVyIExpbmtcIlxuICAgICAgY2xhc3M9XCJheC1jb2wtc3RhcnQtMSBheC1jb2wtZW5kLTEzXCJcbiAgICAgIFtuZ0NsYXNzXT1cImdlbmVyYXRlQ2xhc3NlcygndXJsJywgJ211bHRpcGxlJylcIlxuICAgID5cbiAgICAgIEBmb3IgKHZhbGlkYXRpb24gb2YgdmFsaWRhdGlvblJ1bGVzOyB0cmFjayAkaW5kZXgpIHtcbiAgICAgIDxheC12YWxpZGF0aW9uLXJ1bGUgW3J1bGVdPVwidmFsaWRhdGlvbi5ydWxlXCIgW21lc3NhZ2VdPVwidmFsaWRhdGlvbi5vcHRpb25zPy5tZXNzYWdlXCIgW29wdGlvbnNdPVwidmFsaWRhdGlvbi5vcHRpb25zXCI+PC9heC12YWxpZGF0aW9uLXJ1bGU+XG4gICAgICB9XG4gICAgICA8YXgtdmFsaWRhdGlvbi1ydWxlIG1lc3NhZ2U9XCJmaWVsZCBjYW4ndCBiZSBlbXB0eVwiIHJ1bGU9XCJyZXF1aXJlZFwiPiA8L2F4LXZhbGlkYXRpb24tcnVsZT5cbiAgICA8L2F4LXRleHQtYm94PlxuICAgIEBpZihoYXNUaXRsZSl7XG4gICAgPGF4LXRleHQtYm94XG4gICAgICBbbmdNb2RlbF09XCJpdGVtLnRpdGxlXCJcbiAgICAgIChvblZhbHVlQ2hhbmdlZCk9XCJoYW5kbGVWYWx1ZUNoYW5nZSgkZXZlbnQsICRpbmRleClcIlxuICAgICAgcGxhY2Vob2xkZXI9XCJDaG9vc2UgVGl0bGUuLi5cIlxuICAgICAgbmFtZT1cInRpdGxlXCJcbiAgICAgIFtuZ0NsYXNzXT1cImdlbmVyYXRlQ2xhc3NlcygndGl0bGUnLCAnbXVsdGlwbGUnKVwiXG4gICAgPlxuICAgIDwvYXgtdGV4dC1ib3g+XG4gICAgfSBAaWYoaGFzTGFiZWwpe1xuICAgIDxheC1zZWxlY3QtYm94XG4gICAgICBbZGF0YVNvdXJjZV09XCJsYWJlbFR5cGVzXCJcbiAgICAgIFtuZ01vZGVsXT1cIml0ZW0ubGFiZWxcIlxuICAgICAgKG9uVmFsdWVDaGFuZ2VkKT1cImhhbmRsZVZhbHVlQ2hhbmdlKCRldmVudCwgJGluZGV4KVwiXG4gICAgICBwbGFjZWhvbGRlcj1cIkNob29zZSBMYWJlbC4uLlwiXG4gICAgICBuYW1lPVwibGFiZWxcIlxuICAgICAgW25nQ2xhc3NdPVwiZ2VuZXJhdGVDbGFzc2VzKCdsYWJlbCcsICdtdWx0aXBsZScpXCJcbiAgICA+XG4gICAgPC9heC1zZWxlY3QtYm94PlxuICAgIH19XG4gICAgPGF4LWJ1dHRvblxuICAgICAgbG9vaz1cInR3b3RvbmVcIlxuICAgICAgY29sb3I9XCJkYW5nZXJcIlxuICAgICAgKG9uQ2xpY2spPVwiZGVsZXRlSXRlbSgkaW5kZXgpXCJcbiAgICAgIGNsYXNzPVwiYXgtY29sLXN0YXJ0LTEyIGF4LWNvbC1lbmQtMTMgbGc6YXgtY29sLXN0YXJ0LTEyIGxnOmF4LWNvbC1lbmQtMTMgYXgtanVzdGlmeS1zZWxmLWVuZCAhYXgtaC1mdWxsXCJcbiAgICA+XG4gICAgICA8YXgtaWNvbiBpY29uPVwiZmEtcmVndWxhciBmYS14bWFya1wiPjwvYXgtaWNvbj5cbiAgICA8L2F4LWJ1dHRvbj5cbiAgICB9XG4gICAgPGF4LWJ1dHRvblxuICAgICAgW3RleHRdPVwiaW50ZXJuYWxWYWx1ZSgpLmxlbmd0aCA9PSAwID8gJ0FkZCBOZXcnIDogJ0FkZCBBbm90aGVyJ1wiXG4gICAgICBsb29rPVwidHdvdG9uZVwiXG4gICAgICAob25DbGljayk9XCJhZGRJdGVtKClcIlxuICAgICAgY2xhc3M9XCJheC1jb2wtc3RhcnQtOCBsZzpheC1jb2wtc3RhcnQtMTAgMnhsOmF4LWNvbC1zdGFydC0xMCBheC1jb2wtZW5kLTEzXCJcbiAgICA+XG4gICAgICA8YXgtcHJlZml4PlxuICAgICAgICA8YXgtaWNvbiBjbGFzcz1cImZhLXNvbGlkIGZhLWFkZFwiPjwvYXgtaWNvbj5cbiAgICAgIDwvYXgtcHJlZml4PlxuICAgIDwvYXgtYnV0dG9uPlxuICAgIH0gQGVsc2V7XG4gICAgPGF4LXRleHQtYm94XG4gICAgICBbbmdDbGFzc109XCJnZW5lcmF0ZUNsYXNzZXMoJ3VybCcsICdzaW5nbGUnKVwiXG4gICAgICBbbmdNb2RlbF09XCJpbnRlcm5hbFZhbHVlKClbMF0udmFsdWVcIlxuICAgICAgKG9uVmFsdWVDaGFuZ2VkKT1cImhhbmRsZVZhbHVlQ2hhbmdlKCRldmVudCwgMClcIlxuICAgICAgdHlwZT1cInRleHRcIlxuICAgICAgbmFtZT1cInZhbHVlXCJcbiAgICAgIHBsYWNlaG9sZGVyPVwiTGlua1wiXG4gICAgICBjbGFzcz1cImF4LWNvbC1zdGFydC0xIGF4LWNvbC1lbmQtMTNcIlxuICAgID5cbiAgICAgIEBmb3IgKHZhbGlkYXRpb24gb2YgdmFsaWRhdGlvblJ1bGVzOyB0cmFjayAkaW5kZXgpIHtcbiAgICAgIDxheC12YWxpZGF0aW9uLXJ1bGUgW3J1bGVdPVwidmFsaWRhdGlvbi5ydWxlXCIgW21lc3NhZ2VdPVwidmFsaWRhdGlvbi5vcHRpb25zPy5tZXNzYWdlXCIgW29wdGlvbnNdPVwidmFsaWRhdGlvbi5vcHRpb25zXCI+PC9heC12YWxpZGF0aW9uLXJ1bGU+XG4gICAgICB9XG4gICAgICA8YXgtdmFsaWRhdGlvbi1ydWxlIG1lc3NhZ2U9XCJmaWVsZCBjYW4ndCBiZSBlbXB0eVwiIHJ1bGU9XCJyZXF1aXJlZFwiPiA8L2F4LXZhbGlkYXRpb24tcnVsZT5cbiAgICA8L2F4LXRleHQtYm94PlxuICAgIEBpZihoYXNUaXRsZSl7XG4gICAgPGF4LXRleHQtYm94XG4gICAgICBbbmdDbGFzc109XCJnZW5lcmF0ZUNsYXNzZXMoJ3RpdGxlJywgJ3NpbmdsZScpXCJcbiAgICAgIFtuZ01vZGVsXT1cImludGVybmFsVmFsdWUoKVswXS50aXRsZVwiXG4gICAgICAob25WYWx1ZUNoYW5nZWQpPVwiaGFuZGxlVmFsdWVDaGFuZ2UoJGV2ZW50LCAwKVwiXG4gICAgICB0eXBlPVwidGV4dFwiXG4gICAgICBuYW1lPVwidGl0bGVcIlxuICAgICAgcGxhY2Vob2xkZXI9XCJUaXRsZVwiXG4gICAgPlxuICAgIDwvYXgtdGV4dC1ib3g+XG4gICAgfSBAaWYoaGFzTGFiZWwpe1xuICAgIDxheC1zZWxlY3QtYm94XG4gICAgICBbbmdDbGFzc109XCJnZW5lcmF0ZUNsYXNzZXMoJ2xhYmVsJywgJ3NpbmdsZScpXCJcbiAgICAgIFtkYXRhU291cmNlXT1cImxhYmVsVHlwZXNcIlxuICAgICAgW25nTW9kZWxdPVwiaW50ZXJuYWxWYWx1ZSgpWzBdLmxhYmVsXCJcbiAgICAgIChvblZhbHVlQ2hhbmdlZCk9XCJoYW5kbGVWYWx1ZUNoYW5nZSgkZXZlbnQsIDApXCJcbiAgICAgIG5hbWU9XCJsYWJlbFwiXG4gICAgICBwbGFjZWhvbGRlcj1cIkxhYmVsXCJcbiAgICA+XG4gICAgPC9heC1zZWxlY3QtYm94PlxuICAgIH0gfVxuICA8L2Rpdj5gLFxuICBzdGFuZGFsb25lOiB0cnVlLFxuICBjaGFuZ2VEZXRlY3Rpb246IENoYW5nZURldGVjdGlvblN0cmF0ZWd5Lk9uUHVzaCxcbiAgaW1wb3J0czogW1xuICAgIENvbW1vbk1vZHVsZSxcbiAgICBGb3Jtc01vZHVsZSxcbiAgICBBWFNlbGVjdEJveE1vZHVsZSxcbiAgICBBWEZvcm1Nb2R1bGUsXG4gICAgQVhCdXR0b25Nb2R1bGUsXG4gICAgQVhEZWNvcmF0b3JNb2R1bGUsXG4gICAgQVhTZWxlY3RCb3hNb2R1bGUsXG4gICAgQVhUZXh0Qm94TW9kdWxlLFxuICAgIEFYVmFsaWRhdGlvbk1vZHVsZSxcbiAgXSxcbiAgaW5wdXRzOiBbXSxcbn0pXG5leHBvcnQgY2xhc3MgQVhQTGlua1dpZGdldEVkaXRDb21wb25lbnQgZXh0ZW5kcyBBWFBXaWRnZXRCYXNlPGFueT4ge1xuICBwcm90ZWN0ZWQgdmFsaWRhdGlvblNlcnZpY2UgPSBpbmplY3QoQVhWYWxpZGF0aW9uU2VydmljZSk7XG4gIHByb3RlY3RlZCB0cmFuc2xhdGVTZXJ2aWNlID0gaW5qZWN0KEFYVHJhbnNsYXRpb25TZXJ2aWNlKTtcblxuICBwcm90ZWN0ZWQgbXVsdGlwbGUhOiBib29sZWFuO1xuICBwcm90ZWN0ZWQgdmFsaWRhdGlvbk1lc3NhZ2U/OiBzdHJpbmcgfCBudWxsO1xuXG4gIHByb3RlY3RlZCBkaXNhYmxlZDogYm9vbGVhbiA9IGZhbHNlO1xuICBwcm90ZWN0ZWQgY2xlYXJCdXR0b246IGJvb2xlYW4gPSB0cnVlO1xuICBwcm90ZWN0ZWQgaGFzTGFiZWw6IGJvb2xlYW4gPSB0cnVlO1xuICBwcm90ZWN0ZWQgaGFzVGl0bGU6IGJvb2xlYW4gPSB0cnVlO1xuXG4gIHByb3RlY3RlZCBsYWJlbFR5cGVzOiBzdHJpbmdbXSA9IFsnUHJpbWFyeScsICdTZWNvbmRhcnknXTtcbiAgcHJvdGVjdGVkIGxpbmtUeXBlczogc3RyaW5nW10gPSBbJ2h0dHAnLCAnaHR0cHMnLCAncmVsYXRlZCddO1xuXG4gIHByb3RlY3RlZCBkYXRhU291cmNlID0gbmV3IEFYRGF0YVNvdXJjZTxhbnk+KHtcbiAgICBwYWdlU2l6ZTogMTAsXG4gICAga2V5OiAnaWQnLFxuICAgIGxvYWQ6IChlKSA9PiB7XG4gICAgICByZXR1cm4gbmV3IFByb21pc2UoKHJlc29sdmUpID0+IHtcbiAgICAgICAgc2V0VGltZW91dChcbiAgICAgICAgICAoKSA9PiB7XG4gICAgICAgICAgICBjb25zdCBsaXN0ID0gdGhpcy5saW5rVHlwZXM7XG4gICAgICAgICAgICBjb25zdCByZXN1bHQgPSBlLmZpbHRlciA/IGxpc3QuZmlsdGVyKChpdGVtKSA9PiBpdGVtLmluY2x1ZGVzKGUuZmlsdGVyPy52YWx1ZSBhcyBzdHJpbmcpKSA6IGxpc3Q7XG4gICAgICAgICAgICByZXNvbHZlKHtcbiAgICAgICAgICAgICAgaXRlbXM6IHJlc3VsdC5zbGljZShlLnNraXAsIGUuc2tpcCArIGUudGFrZSksXG4gICAgICAgICAgICAgIHRvdGFsOiByZXN1bHQubGVuZ3RoLFxuICAgICAgICAgICAgfSk7XG4gICAgICAgICAgfSxcbiAgICAgICAgICBlLnNraXAgPT0gMCA/IDEwMCA6IDMwMFxuICAgICAgICApO1xuICAgICAgfSk7XG4gICAgfSxcbiAgfSk7XG5cbiAgcHJvdGVjdGVkIGludGVybmFsVmFsdWU6IFNpZ25hbDx7IHZhbHVlOiBzdHJpbmc7IGxhYmVsPzogc3RyaW5nOyB0aXRsZTogc3RyaW5nOyBpY29uPzogc3RyaW5nIH1bXT4gPSBjb21wdXRlZCgoKSA9PlxuICAgIHRoaXMuZ2V0VmFsdWVBc0FycmF5T2ZPYmplY3RzKClcbiAgKTtcblxuICBvdmVycmlkZSBuZ09uSW5pdCgpOiB2b2lkIHtcbiAgICBzdXBlci5uZ09uSW5pdCgpO1xuICAgIHRoaXMuZ2V0VmFsdWVBc0FycmF5T2ZPYmplY3RzKCk7XG4gIH1cblxuICBwcml2YXRlIF92YWxpZGF0aW9uUnVsZXM6IEFYUFZhbGlkYXRpb25SdWxlcyA9IFtdO1xuICBwdWJsaWMgZ2V0IHZhbGlkYXRpb25SdWxlcygpOiBBWFBWYWxpZGF0aW9uUnVsZXMge1xuICAgIHJldHVybiB0aGlzLl92YWxpZGF0aW9uUnVsZXM7XG4gIH1cbiAgcHVibGljIHNldCB2YWxpZGF0aW9uUnVsZXModjogQVhQVmFsaWRhdGlvblJ1bGVzKSB7XG4gICAgdGhpcy5fdmFsaWRhdGlvblJ1bGVzID0gdjtcbiAgfVxuXG4gIHByaXZhdGUgZ2V0VmFsdWVBc0FycmF5T2ZPYmplY3RzKCk6IGFueVtdIHtcbiAgICBjb25zdCB2YWx1ZSA9IHRoaXMuZ2V0VmFsdWUoKTtcbiAgICBpZiAoQXJyYXkuaXNBcnJheSh2YWx1ZSkpIHtcbiAgICAgIHJldHVybiB2YWx1ZS5tYXAoKGl0ZW0pID0+IHtcbiAgICAgICAgcmV0dXJuIHR5cGVvZiBpdGVtID09PSAnb2JqZWN0J1xuICAgICAgICAgID8ge1xuICAgICAgICAgICAgICB2YWx1ZTogaXRlbS52YWx1ZSA/PyAnLScsXG4gICAgICAgICAgICAgIHRpdGxlOiBpdGVtLnRpdGxlLFxuICAgICAgICAgICAgICBsYWJlbDogdGhpcy5oYXNMYWJlbCA/IGl0ZW0ubGFiZWwgfHwgJ3ByaW1hcnknIDogdW5kZWZpbmVkLFxuICAgICAgICAgICAgICBpY29uOiBpdGVtLmljb24sXG4gICAgICAgICAgICB9XG4gICAgICAgICAgOiB7XG4gICAgICAgICAgICAgIHZhbHVlOiBpdGVtLFxuICAgICAgICAgICAgICB0aXRsZTogJycsXG4gICAgICAgICAgICAgIGljb246ICcnLFxuICAgICAgICAgICAgICBsYWJlbDogdGhpcy5oYXNMYWJlbCA/ICdQcmltYXJ5JyA6IHVuZGVmaW5lZCxcbiAgICAgICAgICAgIH07XG4gICAgICB9KTtcbiAgICB9IGVsc2Uge1xuICAgICAgcmV0dXJuIHR5cGVvZiB2YWx1ZSA9PT0gJ29iamVjdCcgPyBbdmFsdWVdIDogW3sgdmFsdWU6IHZhbHVlIHx8ICcnIH1dO1xuICAgIH1cbiAgfVxuXG4gIHByb3RlY3RlZCBoYW5kbGVWYWx1ZUNoYW5nZShlOiBBWFZhbHVlQ2hhbmdlZEV2ZW50LCBzZWxlY3RlZEluZGV4OiBudW1iZXIpIHtcbiAgICBjb25zdCB7IG5hbWUsIHZhbHVlLCBpc1VzZXJJbnRlcmFjdGlvbiB9ID0gZTtcbiAgICBpZiAoaXNVc2VySW50ZXJhY3Rpb24pIHtcbiAgICAgIGNvbnNvbGUubG9nKGUpO1xuICAgICAgY29uc3QgbmV3VmFsdWVzID0gdGhpcy5pbnRlcm5hbFZhbHVlKCkubWFwKChpdGVtLCBpbmRleCkgPT5cbiAgICAgICAgc2VsZWN0ZWRJbmRleCA9PT0gaW5kZXggPyAobmFtZSA9PT0gJ3ZhbHVlJyA/IHRoaXMuY29udmVydEl0ZW0oaXRlbSwgZSkgOiB7IC4uLml0ZW0sIFtuYW1lIGFzIHN0cmluZ106IHZhbHVlIH0pIDogaXRlbVxuICAgICAgKTtcbiAgICAgIGNvbnNvbGUubG9nKG5ld1ZhbHVlcyk7XG4gICAgICBpZiAodGhpcy5tdWx0aXBsZSkgdGhpcy5zZXRWYWx1ZShuZXdWYWx1ZXMpO1xuICAgICAgZWxzZSB0aGlzLnNldFZhbHVlKG5ld1ZhbHVlc1swXSk7XG4gICAgfVxuICB9XG5cbiAgcHJvdGVjdGVkIGNvbnZlcnRJdGVtID0gKGl0ZW06IGFueSwgZTogYW55KSA9PiB7XG4gICAgaWYgKHR5cGVvZiBpdGVtID09PSAnb2JqZWN0JykgcmV0dXJuIHsgLi4uaXRlbSwgdmFsdWU6IGUudmFsdWUgfTtcbiAgICBlbHNlIHJldHVybiBlLnZhbHVlO1xuICB9O1xuXG4gIC8vIHByb3RlY3RlZCBoYW5kbGVMYWJlbENoYW5nZShlOiBBWFZhbHVlQ2hhbmdlZEV2ZW50LCBzZWxlY3RlZEluZGV4OiBudW1iZXIpIHtcbiAgLy8gICBpZiAoZS5pc1VzZXJJbnRlcmFjdGlvbikge1xuICAvLyAgICAgY29uc3QgbmV3VmFsdWVzID0gdGhpcy5pbnRlcm5hbFZhbHVlKCkubWFwKChpdGVtLCBpbmRleCkgPT4gKHNlbGVjdGVkSW5kZXggPT09IGluZGV4ID8geyAuLi5pdGVtLCBsYWJlbDogZS52YWx1ZSB9IDogaXRlbSkpO1xuICAvLyAgICAgaWYgKHRoaXMubXVsdGlwbGUpIHRoaXMuc2V0VmFsdWUobmV3VmFsdWVzKTtcbiAgLy8gICAgIGVsc2UgdGhpcy5zZXRWYWx1ZShuZXdWYWx1ZXNbMF0pO1xuICAvLyAgIH1cbiAgLy8gfVxuXG4gIHByb3RlY3RlZCBhZGRJdGVtKCkge1xuICAgIGNvbnN0IG5ld1ZhbHVlcyA9IFtcbiAgICAgIC4uLnRoaXMuaW50ZXJuYWxWYWx1ZSgpLFxuICAgICAge1xuICAgICAgICB2YWx1ZTogJycsXG4gICAgICAgIHRpdGxlOiAnJyxcbiAgICAgICAgbGFiZWw6ICdwcmltYXJ5JyxcbiAgICAgICAgaWNvbjogJycsXG4gICAgICB9LFxuICAgIF07XG4gICAgdGhpcy5zZXRWYWx1ZShuZXdWYWx1ZXMpO1xuICB9XG4gIHByb3RlY3RlZCBkZWxldGVJdGVtKGRlbGV0ZWRJbmRleDogbnVtYmVyKSB7XG4gICAgY29uc3QgbmV3VmFsdWVzID0gdGhpcy5pbnRlcm5hbFZhbHVlKCkuZmlsdGVyKChfLCBpbmRleCkgPT4gaW5kZXggIT0gZGVsZXRlZEluZGV4KTtcbiAgICB0aGlzLnNldFZhbHVlKG5ld1ZhbHVlcyk7XG4gIH1cblxuICBwcm90ZWN0ZWQgZ2VuZXJhdGVDbGFzc2VzKGVsZW1lbnROYW1lOiAndXJsJyB8ICd0aXRsZScgfCAnbGFiZWwnLCB0eXBlOiAnc2luZ2xlJyB8ICdtdWx0aXBsZScgPSAnc2luZ2xlJyk6IEFycmF5PHN0cmluZz4ge1xuICAgIGlmICh0eXBlID09PSAnbXVsdGlwbGUnKSB7XG4gICAgICBzd2l0Y2ggKGVsZW1lbnROYW1lKSB7XG4gICAgICAgIGNhc2UgJ3VybCc6XG4gICAgICAgICAgaWYgKHRoaXMuaGFzVGl0bGUgfHwgdGhpcy5oYXNMYWJlbCkge1xuICAgICAgICAgICAgLy9hbHJlYWR5IGhhcyBheC1jb2wtc3RhcnQtMSBheC1jb2wtZW5kLTEzXG4gICAgICAgICAgICByZXR1cm4gWydsZzpheC1jb2wtZW5kLTcnXTtcbiAgICAgICAgICB9IGVsc2Uge1xuICAgICAgICAgICAgcmV0dXJuIFsnbGc6YXgtY29sLWVuZC0xMiddO1xuICAgICAgICAgIH1cbiAgICAgICAgY2FzZSAndGl0bGUnOlxuICAgICAgICAgIGlmICh0aGlzLmhhc0xhYmVsKSB7XG4gICAgICAgICAgICByZXR1cm4gWydheC1jb2wtc3RhcnQtMSBheC1jb2wtZW5kLTcgbGc6YXgtY29sLXN0YXJ0LTcgbGc6YXgtY29sLWVuZC0xMCddO1xuICAgICAgICAgIH0gZWxzZSB7XG4gICAgICAgICAgICByZXR1cm4gWydheC1jb2wtc3RhcnQtMSBheC1jb2wtZW5kLTExIGxnOmF4LWNvbC1zdGFydC03IGxnOmF4LWNvbC1lbmQtMTInXTtcbiAgICAgICAgICB9XG4gICAgICAgIGNhc2UgJ2xhYmVsJzpcbiAgICAgICAgICBpZiAodGhpcy5oYXNUaXRsZSkge1xuICAgICAgICAgICAgcmV0dXJuIFsnYXgtY29sLXN0YXJ0LTcgYXgtY29sLWVuZC0xMSBsZzpheC1jb2wtc3RhcnQtMTAgbGc6YXgtY29sLWVuZC0xMiddO1xuICAgICAgICAgIH0gZWxzZSB7XG4gICAgICAgICAgICByZXR1cm4gWydheC1jb2wtc3RhcnQtMSBheC1jb2wtZW5kLTExIGxnOmF4LWNvbC1zdGFydC03IGxnOmF4LWNvbC1lbmQtMTInXTtcbiAgICAgICAgICB9XG4gICAgICAgIGRlZmF1bHQ6XG4gICAgICAgICAgcmV0dXJuIFsnJ107XG4gICAgICB9XG4gICAgfSBlbHNlIGlmICh0eXBlID09PSAnc2luZ2xlJykge1xuICAgICAgc3dpdGNoIChlbGVtZW50TmFtZSkge1xuICAgICAgICBjYXNlICd1cmwnOlxuICAgICAgICAgIGlmICh0aGlzLmhhc1RpdGxlIHx8IHRoaXMuaGFzTGFiZWwpIHtcbiAgICAgICAgICAgIC8vYWxyZWFkeSBoYXMgYXgtY29sLXN0YXJ0LTEgYXgtY29sLWVuZC0xM1xuICAgICAgICAgICAgcmV0dXJuIFsnbGc6YXgtY29sLWVuZC03J107XG4gICAgICAgICAgfSBlbHNlIHtcbiAgICAgICAgICAgIHJldHVybiBbJ2xnOmF4LWNvbC1lbmQtMTMnXTtcbiAgICAgICAgICB9XG4gICAgICAgIGNhc2UgJ3RpdGxlJzpcbiAgICAgICAgICBpZiAodGhpcy5oYXNMYWJlbCkge1xuICAgICAgICAgICAgcmV0dXJuIFsnYXgtY29sLXN0YXJ0LTEgYXgtY29sLWVuZC03IGxnOmF4LWNvbC1zdGFydC03IGxnOmF4LWNvbC1lbmQtMTAnXTtcbiAgICAgICAgICB9IGVsc2Uge1xuICAgICAgICAgICAgcmV0dXJuIFsnYXgtY29sLXN0YXJ0LTEgYXgtY29sLWVuZC0xMyBsZzpheC1jb2wtc3RhcnQtNyBsZzpheC1jb2wtZW5kLTEzJ107XG4gICAgICAgICAgfVxuICAgICAgICBjYXNlICdsYWJlbCc6XG4gICAgICAgICAgaWYgKHRoaXMuaGFzVGl0bGUpIHtcbiAgICAgICAgICAgIHJldHVybiBbJ2F4LWNvbC1zdGFydC03IGF4LWNvbC1lbmQtMTMgbGc6YXgtY29sLXN0YXJ0LTEwIGxnOmF4LWNvbC1lbmQtMTMnXTtcbiAgICAgICAgICB9IGVsc2Uge1xuICAgICAgICAgICAgcmV0dXJuIFsnYXgtY29sLXN0YXJ0LTEgYXgtY29sLWVuZC0xMyBsZzpheC1jb2wtc3RhcnQtNyBsZzpheC1jb2wtZW5kLTEzJ107XG4gICAgICAgICAgfVxuICAgICAgICBkZWZhdWx0OlxuICAgICAgICAgIHJldHVybiBbJyddO1xuICAgICAgfVxuICAgIH0gZWxzZSB7XG4gICAgICByZXR1cm4gWycnXTtcbiAgICB9XG4gIH1cbn1cbiJdfQ==
@@ -54,7 +54,7 @@ export class AXPLinkWidgetViewComponent extends AXPWidgetBase {
54
54
  <a
55
55
  [href]="item.value"
56
56
  [target]="'_' + target"
57
- class="group-hover:!ax-text-primary-500"
57
+ class="ax-text-blue-700 group-hover:!ax-text-primary-500 group-hover:ax-underline group-hover:ax-decoration-blue-700"
58
58
  >{{ item.title ?? item.value }}</a
59
59
  >
60
60
  <span
@@ -94,7 +94,7 @@ i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "18.0.2", ngImpor
94
94
  <a
95
95
  [href]="item.value"
96
96
  [target]="'_' + target"
97
- class="group-hover:!ax-text-primary-500"
97
+ class="ax-text-blue-700 group-hover:!ax-text-primary-500 group-hover:ax-underline group-hover:ax-decoration-blue-700"
98
98
  >{{ item.title ?? item.value }}</a
99
99
  >
100
100
  <span
@@ -117,4 +117,4 @@ i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "18.0.2", ngImpor
117
117
  inputs: [],
118
118
  }]
119
119
  }] });
120
- //# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoibGluay13aWRnZXQtdmlldy5jb21wb25lbnQuanMiLCJzb3VyY2VSb290IjoiIiwic291cmNlcyI6WyIuLi8uLi8uLi8uLi8uLi8uLi8uLi8uLi9saWJzL3BsYXRmb3JtL3dpZGdldHMvc3JjL2xpYi9lZGl0b3JzL2xpbmstd2lkZ2V0L2xpbmstd2lkZ2V0LXZpZXcuY29tcG9uZW50LnRzIl0sIm5hbWVzIjpbXSwibWFwcGluZ3MiOiJBQUFBLE9BQU8sRUFBRSxhQUFhLEVBQUUsTUFBTSwwQkFBMEIsQ0FBQztBQUN6RCxPQUFPLEVBQUUsaUJBQWlCLEVBQUUsTUFBTSwrQkFBK0IsQ0FBQztBQUNsRSxPQUFPLEVBQUUsbUJBQW1CLEVBQUUsTUFBTSx5QkFBeUIsQ0FBQztBQUM5RCxPQUFPLEVBQUUsYUFBYSxFQUFFLE1BQU0saUNBQWlDLENBQUM7QUFDaEUsT0FBTyxFQUFFLFlBQVksRUFBRSxNQUFNLGlCQUFpQixDQUFDO0FBQy9DLE9BQU8sRUFBRSx1QkFBdUIsRUFBRSxTQUFTLEVBQUUsUUFBUSxFQUFFLE1BQU0sRUFBRSxNQUFNLGVBQWUsQ0FBQzs7Ozs7QUE0Q3JGLE1BQU0sT0FBTywwQkFBMkIsU0FBUSxhQUFrQjtJQTFDbEU7O1FBMkNZLGNBQVMsR0FBRyxNQUFNLENBQUMsbUJBQW1CLENBQUMsQ0FBQztRQUd4QyxXQUFNLEdBQXFCLE9BQU8sQ0FBQztRQUVuQyxrQkFBYSxHQUFHLFFBQVEsQ0FBQyxHQUFHLEVBQUUsQ0FDdEMsSUFBSSxDQUFDLFFBQVEsRUFBRTtZQUNiLENBQUMsQ0FBQyxLQUFLLENBQUMsT0FBTyxDQUFDLElBQUksQ0FBQyxRQUFRLEVBQUUsQ0FBQztnQkFDOUIsQ0FBQyxDQUFDLElBQUksQ0FBQyxRQUFRLEVBQUUsQ0FBQyxHQUFHLENBQUMsQ0FBQyxJQUFTLEVBQUUsRUFBRSxDQUFDLElBQUksQ0FBQyxXQUFXLENBQUMsSUFBSSxDQUFDLENBQUM7Z0JBQzVELENBQUMsQ0FBQyxDQUFDLElBQUksQ0FBQyxXQUFXLENBQUMsSUFBSSxDQUFDLFFBQVEsRUFBRSxDQUFDLENBQUM7WUFDdkMsQ0FBQyxDQUFDLEVBQUUsQ0FDUCxDQUFDO0tBaUJIO0lBZlMsV0FBVyxDQUFDLElBQVM7UUFDM0IsT0FBTyxPQUFPLElBQUksSUFBSSxRQUFRO1lBQzVCLENBQUMsQ0FBQztnQkFDRSxLQUFLLEVBQUUsSUFBSSxDQUFDLEtBQUssSUFBSSxHQUFHO2dCQUN4QixLQUFLLEVBQUUsSUFBSSxDQUFDLEtBQUs7Z0JBQ2pCLEtBQUssRUFBRSxJQUFJLENBQUMsUUFBUSxDQUFDLENBQUMsQ0FBQyxJQUFJLENBQUMsS0FBSyxJQUFJLFNBQVMsQ0FBQyxDQUFDLENBQUMsU0FBUztnQkFDMUQsSUFBSSxFQUFFLElBQUksQ0FBQyxJQUFJO2FBQ2hCO1lBQ0gsQ0FBQyxDQUFDO2dCQUNFLEtBQUssRUFBRSxJQUFJO2dCQUNYLEtBQUssRUFBRSxFQUFFO2dCQUNULElBQUksRUFBRSxFQUFFO2dCQUNSLEtBQUssRUFBRSxTQUFTO2FBQ2pCLENBQUM7SUFDUixDQUFDOzhHQTVCVSwwQkFBMEI7a0dBQTFCLDBCQUEwQiwrRkF6QzNCOzs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7OztTQW1DSCwyREFHRyxZQUFZLHFNQUFFLGFBQWEseUlBQUUsaUJBQWlCOzsyRkFHN0MsMEJBQTBCO2tCQTFDdEMsU0FBUzttQkFBQztvQkFDVCxRQUFRLEVBQUU7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7O1NBbUNIO29CQUNQLFVBQVUsRUFBRSxJQUFJO29CQUNoQixlQUFlLEVBQUUsdUJBQXVCLENBQUMsTUFBTTtvQkFDL0MsT0FBTyxFQUFFLENBQUMsWUFBWSxFQUFFLGFBQWEsRUFBRSxpQkFBaUIsQ0FBQztvQkFDekQsTUFBTSxFQUFFLEVBQUU7aUJBQ1giLCJzb3VyY2VzQ29udGVudCI6WyJpbXBvcnQgeyBBWEJhZGdlTW9kdWxlIH0gZnJvbSAnQGFjb3JleC9jb21wb25lbnRzL2JhZGdlJztcbmltcG9ydCB7IEFYRGVjb3JhdG9yTW9kdWxlIH0gZnJvbSAnQGFjb3JleC9jb21wb25lbnRzL2RlY29yYXRvcnMnO1xuaW1wb3J0IHsgQVhQQ2xpcEJvYXJkU2VydmljZSB9IGZyb20gJ0BhY29yZXgvcGxhdGZvcm0vY29tbW9uJztcbmltcG9ydCB7IEFYUFdpZGdldEJhc2UgfSBmcm9tICdAYWNvcmV4L3BsYXRmb3JtL2xheW91dC9idWlsZGVyJztcbmltcG9ydCB7IENvbW1vbk1vZHVsZSB9IGZyb20gJ0Bhbmd1bGFyL2NvbW1vbic7XG5pbXBvcnQgeyBDaGFuZ2VEZXRlY3Rpb25TdHJhdGVneSwgQ29tcG9uZW50LCBjb21wdXRlZCwgaW5qZWN0IH0gZnJvbSAnQGFuZ3VsYXIvY29yZSc7XG5cbkBDb21wb25lbnQoe1xuICB0ZW1wbGF0ZTogYDxkaXYgY2xhc3M9XCJheC1ncmlkIGF4LWdyaWQtY29scy0xMiBheC1nYXAtMiBcIj5cbiAgICBAaWYobXVsdGlwbGUpeyBAZm9yKGl0ZW0gb2YgaW50ZXJuYWxWYWx1ZSgpO3RyYWNrIGl0ZW0/LnZhbHVlKSB7XG4gICAgPG5nLXRlbXBsYXRlIFtuZ1RlbXBsYXRlT3V0bGV0XT1cIml0ZW1UZW1wbGF0ZVwiIFtuZ1RlbXBsYXRlT3V0bGV0Q29udGV4dF09XCJ7IGRhdGE6IGl0ZW0gfVwiIF0+PC9uZy10ZW1wbGF0ZT5cbiAgICB9IH0gQGVsc2V7XG4gICAgPG5nLXRlbXBsYXRlIFtuZ1RlbXBsYXRlT3V0bGV0XT1cIml0ZW1UZW1wbGF0ZVwiIFtuZ1RlbXBsYXRlT3V0bGV0Q29udGV4dF09XCJ7IGRhdGE6IGludGVybmFsVmFsdWUoKVswXSB9XCIgXT48L25nLXRlbXBsYXRlPlxuICAgIH1cblxuICAgIDxuZy10ZW1wbGF0ZSAjaXRlbVRlbXBsYXRlIGxldC1pdGVtPVwiZGF0YVwiPlxuICAgICAgQGlmKGl0ZW0pe1xuICAgICAgPGRpdiBjbGFzcz1cImF4LWNvbC1zdGFydC0xIGF4LWNvbC1lbmQtMTAgbGc6YXgtY29sLWVuZC03XCI+XG4gICAgICAgIDxkaXYgY2xhc3M9XCJheC1mbGV4IGF4LWZsZXgtMSBheC1nYXAtMyBheC1pdGVtcy1jZW50ZXIgYXgtdy1tYXggYXgtZ3JvdXBcIj5cbiAgICAgICAgICA8ZGl2IGNsYXNzPVwiYXgtdy02IGF4LWgtNiBheC1mbGV4IGF4LWl0ZW1zLWNlbnRlciBheC1qdXN0aWZ5LWNlbnRlclwiPlxuICAgICAgICAgICAgQGlmKGl0ZW0uaWNvbil7XG4gICAgICAgICAgICA8YXgtaWNvbiBjbGFzcz1cImZhLXNvbGlkIGF4LXRleHQtbmV1dHJhbC00MDBcIiBbY2xhc3NdPVwiaXRlbS5pY29uXCI+IDwvYXgtaWNvbj5cbiAgICAgICAgICAgIH1cbiAgICAgICAgICA8L2Rpdj5cbiAgICAgICAgICA8YVxuICAgICAgICAgICAgW2hyZWZdPVwiaXRlbS52YWx1ZVwiXG4gICAgICAgICAgICBbdGFyZ2V0XT1cIidfJyArIHRhcmdldFwiXG4gICAgICAgICAgICBjbGFzcz1cImdyb3VwLWhvdmVyOiFheC10ZXh0LXByaW1hcnktNTAwXCJcbiAgICAgICAgICAgID57eyBpdGVtLnRpdGxlID8/IGl0ZW0udmFsdWUgfX08L2FcbiAgICAgICAgICA+XG4gICAgICAgICAgPHNwYW5cbiAgICAgICAgICAgIGNsYXNzPVwiYXgtdGV4dC1uZXV0cmFsLTQwMCAgYXgtY3Vyc29yLXBvaW50ZXIgYXgtaW52aXNpYmxlIGdyb3VwLWhvdmVyOmF4LXZpc2libGUgaG92ZXI6IWF4LXRleHQtcHJpbWFyeS01MDBcIlxuICAgICAgICAgICAgKGNsaWNrKT1cImNsaXBib2FyZC5jb3B5KCdFbWFpbCcsIGl0ZW0udmFsdWUpXCJcbiAgICAgICAgICA+XG4gICAgICAgICAgICA8aSBjbGFzcz1cImZhLXNvbGlkIGZhLWNvcHkgXCI+PC9pPlxuICAgICAgICAgIDwvc3Bhbj5cbiAgICAgICAgICBAaWYoaGFzTGFiZWwpe1xuICAgICAgICAgIDxheC1iYWRnZSBjb2xvcj1cInByaW1hcnlcIiBbbG9va109XCIndHdvdG9uZSdcIiBbdGV4dF09XCJpdGVtLmxhYmVsXCI+PC9heC1iYWRnZT5cbiAgICAgICAgICB9XG4gICAgICAgIDwvZGl2PlxuICAgICAgPC9kaXY+XG4gICAgICB9XG4gICAgPC9uZy10ZW1wbGF0ZT5cbiAgPC9kaXY+YCxcbiAgc3RhbmRhbG9uZTogdHJ1ZSxcbiAgY2hhbmdlRGV0ZWN0aW9uOiBDaGFuZ2VEZXRlY3Rpb25TdHJhdGVneS5PblB1c2gsXG4gIGltcG9ydHM6IFtDb21tb25Nb2R1bGUsIEFYQmFkZ2VNb2R1bGUsIEFYRGVjb3JhdG9yTW9kdWxlXSxcbiAgaW5wdXRzOiBbXSxcbn0pXG5leHBvcnQgY2xhc3MgQVhQTGlua1dpZGdldFZpZXdDb21wb25lbnQgZXh0ZW5kcyBBWFBXaWRnZXRCYXNlPGFueT4ge1xuICBwcm90ZWN0ZWQgY2xpcGJvYXJkID0gaW5qZWN0KEFYUENsaXBCb2FyZFNlcnZpY2UpO1xuICBwcm90ZWN0ZWQgbXVsdGlwbGUhOiBib29sZWFuO1xuICBwcm90ZWN0ZWQgaGFzTGFiZWwhOiBib29sZWFuO1xuICBwcm90ZWN0ZWQgdGFyZ2V0OiAnc2VsZicgfCAnYmxhbmsnID0gJ2JsYW5rJztcblxuICBwcm90ZWN0ZWQgaW50ZXJuYWxWYWx1ZSA9IGNvbXB1dGVkKCgpID0+XG4gICAgdGhpcy5nZXRWYWx1ZSgpXG4gICAgICA/IEFycmF5LmlzQXJyYXkodGhpcy5nZXRWYWx1ZSgpKVxuICAgICAgICA/IHRoaXMuZ2V0VmFsdWUoKS5tYXAoKGl0ZW06IGFueSkgPT4gdGhpcy5leHRyYWN0SXRlbShpdGVtKSlcbiAgICAgICAgOiBbdGhpcy5leHRyYWN0SXRlbSh0aGlzLmdldFZhbHVlKCkpXVxuICAgICAgOiBbXVxuICApO1xuXG4gIHByaXZhdGUgZXh0cmFjdEl0ZW0oaXRlbTogYW55KTogYW55IHtcbiAgICByZXR1cm4gdHlwZW9mIGl0ZW0gPT0gJ29iamVjdCdcbiAgICAgID8ge1xuICAgICAgICAgIHZhbHVlOiBpdGVtLnZhbHVlID8/ICctJyxcbiAgICAgICAgICB0aXRsZTogaXRlbS50aXRsZSxcbiAgICAgICAgICBsYWJlbDogdGhpcy5oYXNMYWJlbCA/IGl0ZW0ubGFiZWwgfHwgJ3ByaW1hcnknIDogdW5kZWZpbmVkLFxuICAgICAgICAgIGljb246IGl0ZW0uaWNvbixcbiAgICAgICAgfVxuICAgICAgOiB7XG4gICAgICAgICAgdmFsdWU6IGl0ZW0sXG4gICAgICAgICAgdGl0bGU6ICcnLFxuICAgICAgICAgIGljb246ICcnLFxuICAgICAgICAgIGxhYmVsOiAnUHJpbWFyeScsXG4gICAgICAgIH07XG4gIH1cbn1cbiJdfQ==
120
+ //# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoibGluay13aWRnZXQtdmlldy5jb21wb25lbnQuanMiLCJzb3VyY2VSb290IjoiIiwic291cmNlcyI6WyIuLi8uLi8uLi8uLi8uLi8uLi8uLi8uLi9saWJzL3BsYXRmb3JtL3dpZGdldHMvc3JjL2xpYi9lZGl0b3JzL2xpbmstd2lkZ2V0L2xpbmstd2lkZ2V0LXZpZXcuY29tcG9uZW50LnRzIl0sIm5hbWVzIjpbXSwibWFwcGluZ3MiOiJBQUFBLE9BQU8sRUFBRSxhQUFhLEVBQUUsTUFBTSwwQkFBMEIsQ0FBQztBQUN6RCxPQUFPLEVBQUUsaUJBQWlCLEVBQUUsTUFBTSwrQkFBK0IsQ0FBQztBQUNsRSxPQUFPLEVBQUUsbUJBQW1CLEVBQUUsTUFBTSx5QkFBeUIsQ0FBQztBQUM5RCxPQUFPLEVBQUUsYUFBYSxFQUFFLE1BQU0saUNBQWlDLENBQUM7QUFDaEUsT0FBTyxFQUFFLFlBQVksRUFBRSxNQUFNLGlCQUFpQixDQUFDO0FBQy9DLE9BQU8sRUFBRSx1QkFBdUIsRUFBRSxTQUFTLEVBQUUsUUFBUSxFQUFFLE1BQU0sRUFBRSxNQUFNLGVBQWUsQ0FBQzs7Ozs7QUE0Q3JGLE1BQU0sT0FBTywwQkFBMkIsU0FBUSxhQUFrQjtJQTFDbEU7O1FBMkNZLGNBQVMsR0FBRyxNQUFNLENBQUMsbUJBQW1CLENBQUMsQ0FBQztRQUd4QyxXQUFNLEdBQXFCLE9BQU8sQ0FBQztRQUVuQyxrQkFBYSxHQUFHLFFBQVEsQ0FBQyxHQUFHLEVBQUUsQ0FDdEMsSUFBSSxDQUFDLFFBQVEsRUFBRTtZQUNiLENBQUMsQ0FBQyxLQUFLLENBQUMsT0FBTyxDQUFDLElBQUksQ0FBQyxRQUFRLEVBQUUsQ0FBQztnQkFDOUIsQ0FBQyxDQUFDLElBQUksQ0FBQyxRQUFRLEVBQUUsQ0FBQyxHQUFHLENBQUMsQ0FBQyxJQUFTLEVBQUUsRUFBRSxDQUFDLElBQUksQ0FBQyxXQUFXLENBQUMsSUFBSSxDQUFDLENBQUM7Z0JBQzVELENBQUMsQ0FBQyxDQUFDLElBQUksQ0FBQyxXQUFXLENBQUMsSUFBSSxDQUFDLFFBQVEsRUFBRSxDQUFDLENBQUM7WUFDdkMsQ0FBQyxDQUFDLEVBQUUsQ0FDUCxDQUFDO0tBaUJIO0lBZlMsV0FBVyxDQUFDLElBQVM7UUFDM0IsT0FBTyxPQUFPLElBQUksSUFBSSxRQUFRO1lBQzVCLENBQUMsQ0FBQztnQkFDRSxLQUFLLEVBQUUsSUFBSSxDQUFDLEtBQUssSUFBSSxHQUFHO2dCQUN4QixLQUFLLEVBQUUsSUFBSSxDQUFDLEtBQUs7Z0JBQ2pCLEtBQUssRUFBRSxJQUFJLENBQUMsUUFBUSxDQUFDLENBQUMsQ0FBQyxJQUFJLENBQUMsS0FBSyxJQUFJLFNBQVMsQ0FBQyxDQUFDLENBQUMsU0FBUztnQkFDMUQsSUFBSSxFQUFFLElBQUksQ0FBQyxJQUFJO2FBQ2hCO1lBQ0gsQ0FBQyxDQUFDO2dCQUNFLEtBQUssRUFBRSxJQUFJO2dCQUNYLEtBQUssRUFBRSxFQUFFO2dCQUNULElBQUksRUFBRSxFQUFFO2dCQUNSLEtBQUssRUFBRSxTQUFTO2FBQ2pCLENBQUM7SUFDUixDQUFDOzhHQTVCVSwwQkFBMEI7a0dBQTFCLDBCQUEwQiwrRkF6QzNCOzs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7OztTQW1DSCwyREFHRyxZQUFZLHFNQUFFLGFBQWEseUlBQUUsaUJBQWlCOzsyRkFHN0MsMEJBQTBCO2tCQTFDdEMsU0FBUzttQkFBQztvQkFDVCxRQUFRLEVBQUU7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7O1NBbUNIO29CQUNQLFVBQVUsRUFBRSxJQUFJO29CQUNoQixlQUFlLEVBQUUsdUJBQXVCLENBQUMsTUFBTTtvQkFDL0MsT0FBTyxFQUFFLENBQUMsWUFBWSxFQUFFLGFBQWEsRUFBRSxpQkFBaUIsQ0FBQztvQkFDekQsTUFBTSxFQUFFLEVBQUU7aUJBQ1giLCJzb3VyY2VzQ29udGVudCI6WyJpbXBvcnQgeyBBWEJhZGdlTW9kdWxlIH0gZnJvbSAnQGFjb3JleC9jb21wb25lbnRzL2JhZGdlJztcbmltcG9ydCB7IEFYRGVjb3JhdG9yTW9kdWxlIH0gZnJvbSAnQGFjb3JleC9jb21wb25lbnRzL2RlY29yYXRvcnMnO1xuaW1wb3J0IHsgQVhQQ2xpcEJvYXJkU2VydmljZSB9IGZyb20gJ0BhY29yZXgvcGxhdGZvcm0vY29tbW9uJztcbmltcG9ydCB7IEFYUFdpZGdldEJhc2UgfSBmcm9tICdAYWNvcmV4L3BsYXRmb3JtL2xheW91dC9idWlsZGVyJztcbmltcG9ydCB7IENvbW1vbk1vZHVsZSB9IGZyb20gJ0Bhbmd1bGFyL2NvbW1vbic7XG5pbXBvcnQgeyBDaGFuZ2VEZXRlY3Rpb25TdHJhdGVneSwgQ29tcG9uZW50LCBjb21wdXRlZCwgaW5qZWN0IH0gZnJvbSAnQGFuZ3VsYXIvY29yZSc7XG5cbkBDb21wb25lbnQoe1xuICB0ZW1wbGF0ZTogYDxkaXYgY2xhc3M9XCJheC1ncmlkIGF4LWdyaWQtY29scy0xMiBheC1nYXAtMiBcIj5cbiAgICBAaWYobXVsdGlwbGUpeyBAZm9yKGl0ZW0gb2YgaW50ZXJuYWxWYWx1ZSgpO3RyYWNrIGl0ZW0/LnZhbHVlKSB7XG4gICAgPG5nLXRlbXBsYXRlIFtuZ1RlbXBsYXRlT3V0bGV0XT1cIml0ZW1UZW1wbGF0ZVwiIFtuZ1RlbXBsYXRlT3V0bGV0Q29udGV4dF09XCJ7IGRhdGE6IGl0ZW0gfVwiIF0+PC9uZy10ZW1wbGF0ZT5cbiAgICB9IH0gQGVsc2V7XG4gICAgPG5nLXRlbXBsYXRlIFtuZ1RlbXBsYXRlT3V0bGV0XT1cIml0ZW1UZW1wbGF0ZVwiIFtuZ1RlbXBsYXRlT3V0bGV0Q29udGV4dF09XCJ7IGRhdGE6IGludGVybmFsVmFsdWUoKVswXSB9XCIgXT48L25nLXRlbXBsYXRlPlxuICAgIH1cblxuICAgIDxuZy10ZW1wbGF0ZSAjaXRlbVRlbXBsYXRlIGxldC1pdGVtPVwiZGF0YVwiPlxuICAgICAgQGlmKGl0ZW0pe1xuICAgICAgPGRpdiBjbGFzcz1cImF4LWNvbC1zdGFydC0xIGF4LWNvbC1lbmQtMTAgbGc6YXgtY29sLWVuZC03XCI+XG4gICAgICAgIDxkaXYgY2xhc3M9XCJheC1mbGV4IGF4LWZsZXgtMSBheC1nYXAtMyBheC1pdGVtcy1jZW50ZXIgYXgtdy1tYXggYXgtZ3JvdXBcIj5cbiAgICAgICAgICA8ZGl2IGNsYXNzPVwiYXgtdy02IGF4LWgtNiBheC1mbGV4IGF4LWl0ZW1zLWNlbnRlciBheC1qdXN0aWZ5LWNlbnRlclwiPlxuICAgICAgICAgICAgQGlmKGl0ZW0uaWNvbil7XG4gICAgICAgICAgICA8YXgtaWNvbiBjbGFzcz1cImZhLXNvbGlkIGF4LXRleHQtbmV1dHJhbC00MDBcIiBbY2xhc3NdPVwiaXRlbS5pY29uXCI+IDwvYXgtaWNvbj5cbiAgICAgICAgICAgIH1cbiAgICAgICAgICA8L2Rpdj5cbiAgICAgICAgICA8YVxuICAgICAgICAgICAgW2hyZWZdPVwiaXRlbS52YWx1ZVwiXG4gICAgICAgICAgICBbdGFyZ2V0XT1cIidfJyArIHRhcmdldFwiXG4gICAgICAgICAgICBjbGFzcz1cImF4LXRleHQtYmx1ZS03MDAgZ3JvdXAtaG92ZXI6IWF4LXRleHQtcHJpbWFyeS01MDAgZ3JvdXAtaG92ZXI6YXgtdW5kZXJsaW5lIGdyb3VwLWhvdmVyOmF4LWRlY29yYXRpb24tYmx1ZS03MDBcIlxuICAgICAgICAgICAgPnt7IGl0ZW0udGl0bGUgPz8gaXRlbS52YWx1ZSB9fTwvYVxuICAgICAgICAgID5cbiAgICAgICAgICA8c3BhblxuICAgICAgICAgICAgY2xhc3M9XCJheC10ZXh0LW5ldXRyYWwtNDAwICBheC1jdXJzb3ItcG9pbnRlciBheC1pbnZpc2libGUgZ3JvdXAtaG92ZXI6YXgtdmlzaWJsZSBob3ZlcjohYXgtdGV4dC1wcmltYXJ5LTUwMFwiXG4gICAgICAgICAgICAoY2xpY2spPVwiY2xpcGJvYXJkLmNvcHkoJ0VtYWlsJywgaXRlbS52YWx1ZSlcIlxuICAgICAgICAgID5cbiAgICAgICAgICAgIDxpIGNsYXNzPVwiZmEtc29saWQgZmEtY29weSBcIj48L2k+XG4gICAgICAgICAgPC9zcGFuPlxuICAgICAgICAgIEBpZihoYXNMYWJlbCl7XG4gICAgICAgICAgPGF4LWJhZGdlIGNvbG9yPVwicHJpbWFyeVwiIFtsb29rXT1cIid0d290b25lJ1wiIFt0ZXh0XT1cIml0ZW0ubGFiZWxcIj48L2F4LWJhZGdlPlxuICAgICAgICAgIH1cbiAgICAgICAgPC9kaXY+XG4gICAgICA8L2Rpdj5cbiAgICAgIH1cbiAgICA8L25nLXRlbXBsYXRlPlxuICA8L2Rpdj5gLFxuICBzdGFuZGFsb25lOiB0cnVlLFxuICBjaGFuZ2VEZXRlY3Rpb246IENoYW5nZURldGVjdGlvblN0cmF0ZWd5Lk9uUHVzaCxcbiAgaW1wb3J0czogW0NvbW1vbk1vZHVsZSwgQVhCYWRnZU1vZHVsZSwgQVhEZWNvcmF0b3JNb2R1bGVdLFxuICBpbnB1dHM6IFtdLFxufSlcbmV4cG9ydCBjbGFzcyBBWFBMaW5rV2lkZ2V0Vmlld0NvbXBvbmVudCBleHRlbmRzIEFYUFdpZGdldEJhc2U8YW55PiB7XG4gIHByb3RlY3RlZCBjbGlwYm9hcmQgPSBpbmplY3QoQVhQQ2xpcEJvYXJkU2VydmljZSk7XG4gIHByb3RlY3RlZCBtdWx0aXBsZSE6IGJvb2xlYW47XG4gIHByb3RlY3RlZCBoYXNMYWJlbCE6IGJvb2xlYW47XG4gIHByb3RlY3RlZCB0YXJnZXQ6ICdzZWxmJyB8ICdibGFuaycgPSAnYmxhbmsnO1xuXG4gIHByb3RlY3RlZCBpbnRlcm5hbFZhbHVlID0gY29tcHV0ZWQoKCkgPT5cbiAgICB0aGlzLmdldFZhbHVlKClcbiAgICAgID8gQXJyYXkuaXNBcnJheSh0aGlzLmdldFZhbHVlKCkpXG4gICAgICAgID8gdGhpcy5nZXRWYWx1ZSgpLm1hcCgoaXRlbTogYW55KSA9PiB0aGlzLmV4dHJhY3RJdGVtKGl0ZW0pKVxuICAgICAgICA6IFt0aGlzLmV4dHJhY3RJdGVtKHRoaXMuZ2V0VmFsdWUoKSldXG4gICAgICA6IFtdXG4gICk7XG5cbiAgcHJpdmF0ZSBleHRyYWN0SXRlbShpdGVtOiBhbnkpOiBhbnkge1xuICAgIHJldHVybiB0eXBlb2YgaXRlbSA9PSAnb2JqZWN0J1xuICAgICAgPyB7XG4gICAgICAgICAgdmFsdWU6IGl0ZW0udmFsdWUgPz8gJy0nLFxuICAgICAgICAgIHRpdGxlOiBpdGVtLnRpdGxlLFxuICAgICAgICAgIGxhYmVsOiB0aGlzLmhhc0xhYmVsID8gaXRlbS5sYWJlbCB8fCAncHJpbWFyeScgOiB1bmRlZmluZWQsXG4gICAgICAgICAgaWNvbjogaXRlbS5pY29uLFxuICAgICAgICB9XG4gICAgICA6IHtcbiAgICAgICAgICB2YWx1ZTogaXRlbSxcbiAgICAgICAgICB0aXRsZTogJycsXG4gICAgICAgICAgaWNvbjogJycsXG4gICAgICAgICAgbGFiZWw6ICdQcmltYXJ5JyxcbiAgICAgICAgfTtcbiAgfVxufVxuIl19
@@ -1,19 +1,23 @@
1
- import { AXPWidgetBase } from '@acorex/platform/layout/builder';
1
+ import { AXPColumnWidgetBase } from '@acorex/platform/layout/builder';
2
2
  import { CommonModule } from '@angular/common';
3
3
  import { ChangeDetectionStrategy, Component } from '@angular/core';
4
4
  import * as i0 from "@angular/core";
5
- export class AXPRichTextWidgetColumnComponent extends AXPWidgetBase {
5
+ export class AXPRichTextWidgetColumnComponent extends AXPColumnWidgetBase {
6
6
  static { this.ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "18.0.2", ngImport: i0, type: AXPRichTextWidgetColumnComponent, deps: null, target: i0.ɵɵFactoryTarget.Component }); }
7
- static { this.ɵcmp = i0.ɵɵngDeclareComponent({ minVersion: "14.0.0", version: "18.0.2", type: AXPRichTextWidgetColumnComponent, isStandalone: true, selector: "ng-component", usesInheritance: true, ngImport: i0, template: ``, isInline: true, dependencies: [{ kind: "ngmodule", type: CommonModule }], changeDetection: i0.ChangeDetectionStrategy.OnPush }); }
7
+ static { this.ɵcmp = i0.ɵɵngDeclareComponent({ minVersion: "14.0.0", version: "18.0.2", type: AXPRichTextWidgetColumnComponent, isStandalone: true, selector: "ng-component", usesInheritance: true, ngImport: i0, template: `<span class="ax-truncate">
8
+ {{ rawValue }}
9
+ </span>`, isInline: true, dependencies: [{ kind: "ngmodule", type: CommonModule }], changeDetection: i0.ChangeDetectionStrategy.OnPush }); }
8
10
  }
9
11
  i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "18.0.2", ngImport: i0, type: AXPRichTextWidgetColumnComponent, decorators: [{
10
12
  type: Component,
11
13
  args: [{
12
- template: ``,
14
+ template: `<span class="ax-truncate">
15
+ {{ rawValue }}
16
+ </span>`,
13
17
  standalone: true,
14
18
  changeDetection: ChangeDetectionStrategy.OnPush,
15
19
  imports: [CommonModule],
16
- inputs: []
20
+ inputs: [],
17
21
  }]
18
22
  }] });
19
- //# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoicmljaC10ZXh0LXdpZGdldC1jb2x1bW4uY29tcG9uZW50LmpzIiwic291cmNlUm9vdCI6IiIsInNvdXJjZXMiOlsiLi4vLi4vLi4vLi4vLi4vLi4vLi4vLi4vbGlicy9wbGF0Zm9ybS93aWRnZXRzL3NyYy9saWIvZWRpdG9ycy9yaWNoLXRleHQtd2lkZ2V0L3JpY2gtdGV4dC13aWRnZXQtY29sdW1uLmNvbXBvbmVudC50cyJdLCJuYW1lcyI6W10sIm1hcHBpbmdzIjoiQUFBQSxPQUFPLEVBQUUsYUFBYSxFQUFFLE1BQU0saUNBQWlDLENBQUM7QUFDaEUsT0FBTyxFQUFFLFlBQVksRUFBRSxNQUFNLGlCQUFpQixDQUFDO0FBQy9DLE9BQU8sRUFBRSx1QkFBdUIsRUFBRSxTQUFTLEVBQVUsTUFBTSxlQUFlLENBQUM7O0FBUTNFLE1BQU0sT0FBTyxnQ0FBaUMsU0FBUSxhQUFrQjs4R0FBM0QsZ0NBQWdDO2tHQUFoQyxnQ0FBZ0MsK0ZBTmpDLEVBQUUsMkRBR0YsWUFBWTs7MkZBR1gsZ0NBQWdDO2tCQVA1QyxTQUFTO21CQUFDO29CQUNULFFBQVEsRUFBRSxFQUFFO29CQUNaLFVBQVUsRUFBRSxJQUFJO29CQUNoQixlQUFlLEVBQUUsdUJBQXVCLENBQUMsTUFBTTtvQkFDL0MsT0FBTyxFQUFFLENBQUMsWUFBWSxDQUFDO29CQUN2QixNQUFNLEVBQUUsRUFBRTtpQkFDWCIsInNvdXJjZXNDb250ZW50IjpbImltcG9ydCB7IEFYUFdpZGdldEJhc2UgfSBmcm9tICdAYWNvcmV4L3BsYXRmb3JtL2xheW91dC9idWlsZGVyJztcbmltcG9ydCB7IENvbW1vbk1vZHVsZSB9IGZyb20gJ0Bhbmd1bGFyL2NvbW1vbic7XG5pbXBvcnQgeyBDaGFuZ2VEZXRlY3Rpb25TdHJhdGVneSwgQ29tcG9uZW50LCBpbmplY3QgfSBmcm9tICdAYW5ndWxhci9jb3JlJztcbkBDb21wb25lbnQoe1xuICB0ZW1wbGF0ZTogYGAsXG4gIHN0YW5kYWxvbmU6IHRydWUsXG4gIGNoYW5nZURldGVjdGlvbjogQ2hhbmdlRGV0ZWN0aW9uU3RyYXRlZ3kuT25QdXNoLFxuICBpbXBvcnRzOiBbQ29tbW9uTW9kdWxlXSxcbiAgaW5wdXRzOiBbXVxufSlcbmV4cG9ydCBjbGFzcyBBWFBSaWNoVGV4dFdpZGdldENvbHVtbkNvbXBvbmVudCBleHRlbmRzIEFYUFdpZGdldEJhc2U8YW55PiB7IH0iXX0=
23
+ //# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoicmljaC10ZXh0LXdpZGdldC1jb2x1bW4uY29tcG9uZW50LmpzIiwic291cmNlUm9vdCI6IiIsInNvdXJjZXMiOlsiLi4vLi4vLi4vLi4vLi4vLi4vLi4vLi4vbGlicy9wbGF0Zm9ybS93aWRnZXRzL3NyYy9saWIvZWRpdG9ycy9yaWNoLXRleHQtd2lkZ2V0L3JpY2gtdGV4dC13aWRnZXQtY29sdW1uLmNvbXBvbmVudC50cyJdLCJuYW1lcyI6W10sIm1hcHBpbmdzIjoiQUFBQSxPQUFPLEVBQUUsbUJBQW1CLEVBQUUsTUFBTSxpQ0FBaUMsQ0FBQztBQUN0RSxPQUFPLEVBQUUsWUFBWSxFQUFFLE1BQU0saUJBQWlCLENBQUM7QUFDL0MsT0FBTyxFQUFFLHVCQUF1QixFQUFFLFNBQVMsRUFBRSxNQUFNLGVBQWUsQ0FBQzs7QUFVbkUsTUFBTSxPQUFPLGdDQUFpQyxTQUFRLG1CQUF3Qjs4R0FBakUsZ0NBQWdDO2tHQUFoQyxnQ0FBZ0MsK0ZBUmpDOztVQUVGLDJEQUdFLFlBQVk7OzJGQUdYLGdDQUFnQztrQkFUNUMsU0FBUzttQkFBQztvQkFDVCxRQUFRLEVBQUU7O1VBRUY7b0JBQ1IsVUFBVSxFQUFFLElBQUk7b0JBQ2hCLGVBQWUsRUFBRSx1QkFBdUIsQ0FBQyxNQUFNO29CQUMvQyxPQUFPLEVBQUUsQ0FBQyxZQUFZLENBQUM7b0JBQ3ZCLE1BQU0sRUFBRSxFQUFFO2lCQUNYIiwic291cmNlc0NvbnRlbnQiOlsiaW1wb3J0IHsgQVhQQ29sdW1uV2lkZ2V0QmFzZSB9IGZyb20gJ0BhY29yZXgvcGxhdGZvcm0vbGF5b3V0L2J1aWxkZXInO1xuaW1wb3J0IHsgQ29tbW9uTW9kdWxlIH0gZnJvbSAnQGFuZ3VsYXIvY29tbW9uJztcbmltcG9ydCB7IENoYW5nZURldGVjdGlvblN0cmF0ZWd5LCBDb21wb25lbnQgfSBmcm9tICdAYW5ndWxhci9jb3JlJztcbkBDb21wb25lbnQoe1xuICB0ZW1wbGF0ZTogYDxzcGFuIGNsYXNzPVwiYXgtdHJ1bmNhdGVcIj5cbiAgICB7eyByYXdWYWx1ZSB9fVxuICA8L3NwYW4+YCxcbiAgc3RhbmRhbG9uZTogdHJ1ZSxcbiAgY2hhbmdlRGV0ZWN0aW9uOiBDaGFuZ2VEZXRlY3Rpb25TdHJhdGVneS5PblB1c2gsXG4gIGltcG9ydHM6IFtDb21tb25Nb2R1bGVdLFxuICBpbnB1dHM6IFtdLFxufSlcbmV4cG9ydCBjbGFzcyBBWFBSaWNoVGV4dFdpZGdldENvbHVtbkNvbXBvbmVudCBleHRlbmRzIEFYUENvbHVtbldpZGdldEJhc2U8YW55PiB7fVxuIl19