ng-prime-tools 1.0.31 → 1.0.33
This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
- package/README.md +3 -3
- package/esm2022/lib/enums/form-input-type.enum.mjs +2 -1
- package/esm2022/lib/enums/input-validation.enum.mjs +2 -1
- package/esm2022/lib/models/button.model.mjs +1 -1
- package/esm2022/lib/ng-prime-tools.module.mjs +9 -5
- package/esm2022/lib/pt-advanced-prime-table/pt-advanced-prime-table.component.mjs +109 -95
- package/esm2022/lib/pt-button/pt-button.component.mjs +44 -16
- package/esm2022/lib/pt-confirm-dialog/index.mjs +2 -0
- package/esm2022/lib/pt-confirm-dialog/pt-confirm-dialog.component.mjs +285 -0
- package/esm2022/lib/pt-confirm-dialog/pt-confirm-dialog.module.mjs +21 -0
- package/esm2022/lib/pt-confirm-dialog/public-api.mjs +3 -0
- package/esm2022/lib/pt-dialog/pt-dialog.component.mjs +96 -233
- package/esm2022/lib/pt-dialog/pt-dialog.module.mjs +5 -7
- package/esm2022/lib/pt-form-builder/pt-dynamic-form-field/pt-dynamic-form-field.component.mjs +3 -3
- package/esm2022/lib/pt-form-builder/pt-form-builder.component.mjs +67 -4
- package/esm2022/public-api.mjs +2 -1
- package/fesm2022/ng-prime-tools.mjs +522 -255
- package/fesm2022/ng-prime-tools.mjs.map +1 -1
- package/lib/enums/form-input-type.enum.d.ts +1 -0
- package/lib/enums/form-input-type.enum.d.ts.map +1 -1
- package/lib/enums/input-validation.enum.d.ts +2 -1
- package/lib/enums/input-validation.enum.d.ts.map +1 -1
- package/lib/models/button.model.d.ts +1 -0
- package/lib/models/button.model.d.ts.map +1 -1
- package/lib/ng-prime-tools.module.d.ts +3 -2
- package/lib/ng-prime-tools.module.d.ts.map +1 -1
- package/lib/pt-advanced-prime-table/pt-advanced-prime-table.component.d.ts +43 -13
- package/lib/pt-advanced-prime-table/pt-advanced-prime-table.component.d.ts.map +1 -1
- package/lib/pt-button/pt-button.component.d.ts +7 -1
- package/lib/pt-button/pt-button.component.d.ts.map +1 -1
- package/lib/pt-confirm-dialog/index.d.ts +2 -0
- package/lib/pt-confirm-dialog/index.d.ts.map +1 -0
- package/lib/pt-confirm-dialog/pt-confirm-dialog.component.d.ts +44 -0
- package/lib/pt-confirm-dialog/pt-confirm-dialog.component.d.ts.map +1 -0
- package/lib/pt-confirm-dialog/pt-confirm-dialog.module.d.ts +12 -0
- package/lib/pt-confirm-dialog/pt-confirm-dialog.module.d.ts.map +1 -0
- package/lib/pt-confirm-dialog/public-api.d.ts +3 -0
- package/lib/pt-confirm-dialog/public-api.d.ts.map +1 -0
- package/lib/pt-dialog/pt-dialog.component.d.ts +47 -23
- package/lib/pt-dialog/pt-dialog.component.d.ts.map +1 -1
- package/lib/pt-dialog/pt-dialog.module.d.ts +1 -3
- package/lib/pt-dialog/pt-dialog.module.d.ts.map +1 -1
- package/lib/pt-form-builder/pt-form-builder.component.d.ts +5 -1
- package/lib/pt-form-builder/pt-form-builder.component.d.ts.map +1 -1
- package/lib/pt-metric-panel/pt-metric-panel.component.d.ts +1 -1
- package/package.json +1 -1
- package/public-api.d.ts +1 -0
- package/public-api.d.ts.map +1 -1
|
@@ -1,250 +1,113 @@
|
|
|
1
|
-
import { Component, Input, Output
|
|
2
|
-
import { ConfirmationService, ConfirmEventType, MessageService, } from 'primeng/api';
|
|
3
|
-
import { SeverityEnum } from '../enums';
|
|
1
|
+
import { Component, EventEmitter, Input, Output } from '@angular/core';
|
|
4
2
|
import * as i0 from "@angular/core";
|
|
5
|
-
import * as i1 from "
|
|
6
|
-
import * as i2 from "
|
|
7
|
-
import * as i3 from "primeng/
|
|
8
|
-
// Default Styles for Different Dialog Types
|
|
9
|
-
const DIALOG_STYLES = {
|
|
10
|
-
[SeverityEnum.WARNING]: {
|
|
11
|
-
header: { text: 'Warning', color: '#d98300' },
|
|
12
|
-
content: { text: 'This is a warning message!', color: '#d98300' },
|
|
13
|
-
confirmButtonConfig: { backgroundColor: '#d98300', fontColor: '#fff' },
|
|
14
|
-
cancelButtonConfig: { backgroundColor: '#6c757d', fontColor: '#fff' },
|
|
15
|
-
},
|
|
16
|
-
[SeverityEnum.SUCCESS]: {
|
|
17
|
-
header: { text: 'Success', color: '#28a745' },
|
|
18
|
-
content: { text: 'Operation was successful!', color: '#28a745' },
|
|
19
|
-
confirmButtonConfig: { backgroundColor: '#28a745', fontColor: '#fff' },
|
|
20
|
-
cancelButtonConfig: { backgroundColor: '#6c757d', fontColor: '#fff' },
|
|
21
|
-
},
|
|
22
|
-
[SeverityEnum.DANGER]: {
|
|
23
|
-
header: { text: 'Error', color: '#dc3545' },
|
|
24
|
-
content: { text: 'An error occurred!', color: '#dc3545' },
|
|
25
|
-
confirmButtonConfig: { backgroundColor: '#dc3545', fontColor: '#fff' },
|
|
26
|
-
cancelButtonConfig: { backgroundColor: '#6c757d', fontColor: '#fff' },
|
|
27
|
-
},
|
|
28
|
-
[SeverityEnum.INFO]: {
|
|
29
|
-
header: { text: 'Information', color: '#007bff' },
|
|
30
|
-
content: { text: 'Here is some important information.', color: '#007bff' },
|
|
31
|
-
confirmButtonConfig: { backgroundColor: '#007bff', fontColor: '#fff' },
|
|
32
|
-
cancelButtonConfig: { backgroundColor: '#6c757d', fontColor: '#fff' },
|
|
33
|
-
},
|
|
34
|
-
};
|
|
35
|
-
// Centralized Default Values
|
|
36
|
-
const DEFAULT_DIALOG_CONFIG = {
|
|
37
|
-
header: { text: 'Confirmation' },
|
|
38
|
-
visible: false,
|
|
39
|
-
width: '400px',
|
|
40
|
-
height: 'auto',
|
|
41
|
-
content: 'Do you want to proceed?',
|
|
42
|
-
confirmButtonConfig: {
|
|
43
|
-
label: 'Confirm',
|
|
44
|
-
fontColor: '#fff',
|
|
45
|
-
backgroundColor: '#007bff',
|
|
46
|
-
},
|
|
47
|
-
cancelButtonConfig: {
|
|
48
|
-
label: 'Cancel',
|
|
49
|
-
fontColor: '#fff',
|
|
50
|
-
backgroundColor: '#6c757d',
|
|
51
|
-
},
|
|
52
|
-
dialogStyle: SeverityEnum.INFO,
|
|
53
|
-
};
|
|
3
|
+
import * as i1 from "@angular/common";
|
|
4
|
+
import * as i2 from "primeng/dialog";
|
|
5
|
+
import * as i3 from "primeng/api";
|
|
54
6
|
export class PTDialogComponent {
|
|
55
|
-
constructor(
|
|
56
|
-
|
|
57
|
-
this.
|
|
58
|
-
|
|
59
|
-
this.
|
|
60
|
-
this.
|
|
61
|
-
this.
|
|
62
|
-
this.
|
|
7
|
+
constructor() {
|
|
8
|
+
/** Enable scroll when body exceeds given height/width */
|
|
9
|
+
this.bodyScrollable = true;
|
|
10
|
+
/** Control footer visibility (default: true) */
|
|
11
|
+
this.showFooter = true;
|
|
12
|
+
this.modal = true;
|
|
13
|
+
this.closable = true;
|
|
14
|
+
this.draggable = true;
|
|
15
|
+
this.resizable = true;
|
|
16
|
+
this.maximizable = false;
|
|
17
|
+
this.dismissableMask = false;
|
|
18
|
+
this.closeOnEscape = true;
|
|
19
|
+
this.blockScroll = true;
|
|
20
|
+
this.position = 'center';
|
|
21
|
+
/** internal visible flag used by p-dialog */
|
|
22
|
+
this._visible = false;
|
|
23
|
+
this.visibleChange = new EventEmitter();
|
|
63
24
|
}
|
|
64
|
-
|
|
65
|
-
|
|
66
|
-
if (changes['dialogConfig'].currentValue?.dialogStyle !==
|
|
67
|
-
changes['dialogConfig'].previousValue?.dialogStyle) {
|
|
68
|
-
this.applyDialogStyle();
|
|
69
|
-
}
|
|
70
|
-
if (this.dialogConfig.visible) {
|
|
71
|
-
this.showDialog();
|
|
72
|
-
}
|
|
73
|
-
}
|
|
25
|
+
get visible() {
|
|
26
|
+
return this._visible;
|
|
74
27
|
}
|
|
75
|
-
|
|
76
|
-
|
|
77
|
-
const styleConfig = DIALOG_STYLES[dialogStyle] || {};
|
|
78
|
-
this.dialogConfig = {
|
|
79
|
-
...DEFAULT_DIALOG_CONFIG,
|
|
80
|
-
...styleConfig,
|
|
81
|
-
confirmButtonConfig: {
|
|
82
|
-
...DEFAULT_DIALOG_CONFIG.confirmButtonConfig,
|
|
83
|
-
...styleConfig.confirmButtonConfig,
|
|
84
|
-
},
|
|
85
|
-
cancelButtonConfig: {
|
|
86
|
-
...DEFAULT_DIALOG_CONFIG.cancelButtonConfig,
|
|
87
|
-
...styleConfig.cancelButtonConfig,
|
|
88
|
-
},
|
|
89
|
-
};
|
|
28
|
+
set visible(v) {
|
|
29
|
+
this._visible = v;
|
|
90
30
|
}
|
|
91
|
-
|
|
92
|
-
|
|
93
|
-
|
|
94
|
-
|
|
95
|
-
|
|
96
|
-
|
|
97
|
-
|
|
98
|
-
|
|
99
|
-
|
|
100
|
-
|
|
101
|
-
|
|
102
|
-
this.confirm.emit();
|
|
103
|
-
if (this.dialogConfig.toastOnConfirm) {
|
|
104
|
-
}
|
|
105
|
-
},
|
|
106
|
-
reject: (type) => {
|
|
107
|
-
this.cancel.emit();
|
|
108
|
-
if (type === ConfirmEventType.REJECT &&
|
|
109
|
-
this.dialogConfig.toastOnCancel) {
|
|
110
|
-
}
|
|
111
|
-
},
|
|
112
|
-
});
|
|
113
|
-
// Use renderer to apply dynamic styles
|
|
114
|
-
setTimeout(() => {
|
|
115
|
-
const dialogElement = this.el.nativeElement.querySelector('.p-dialog');
|
|
116
|
-
if (dialogElement) {
|
|
117
|
-
this.renderer.setStyle(dialogElement, 'width', this.dialogConfig.width || '400px');
|
|
118
|
-
this.renderer.setStyle(dialogElement, 'height', this.dialogConfig.height || 'auto');
|
|
119
|
-
}
|
|
120
|
-
}, 0);
|
|
31
|
+
/** Final class applied to p-dialog */
|
|
32
|
+
get dialogStyleClass() {
|
|
33
|
+
return [
|
|
34
|
+
'border-round-3xl',
|
|
35
|
+
'shadow-6',
|
|
36
|
+
'overflow-hidden',
|
|
37
|
+
'pt-dialog-header-blue', // for header/footer colors
|
|
38
|
+
this.styleClass,
|
|
39
|
+
]
|
|
40
|
+
.filter(Boolean)
|
|
41
|
+
.join(' ');
|
|
121
42
|
}
|
|
122
|
-
|
|
123
|
-
|
|
124
|
-
|
|
125
|
-
|
|
126
|
-
|
|
127
|
-
const defaultSeverity = isConfirm ? SeverityEnum.DANGER : SeverityEnum.INFO;
|
|
128
|
-
const severity = buttonConfig?.severity ?? defaultSeverity;
|
|
129
|
-
// ✅ Apply severity-based styles only if no custom background color is set
|
|
130
|
-
if (!buttonConfig?.backgroundColor) {
|
|
131
|
-
switch (severity) {
|
|
132
|
-
case SeverityEnum.WARNING:
|
|
133
|
-
styleClass += ' p-button-warning';
|
|
134
|
-
break;
|
|
135
|
-
case SeverityEnum.DANGER:
|
|
136
|
-
styleClass += ' p-button-danger';
|
|
137
|
-
break;
|
|
138
|
-
case SeverityEnum.SUCCESS:
|
|
139
|
-
styleClass += ' p-button-success';
|
|
140
|
-
break;
|
|
141
|
-
case SeverityEnum.INFO:
|
|
142
|
-
default:
|
|
143
|
-
styleClass += ' p-button-secondary';
|
|
144
|
-
break;
|
|
145
|
-
}
|
|
43
|
+
/** Style applied to the body wrapper */
|
|
44
|
+
get bodyStyle() {
|
|
45
|
+
const style = {};
|
|
46
|
+
if (this.bodyWidth) {
|
|
47
|
+
style['max-width'] = this.bodyWidth;
|
|
146
48
|
}
|
|
147
|
-
|
|
148
|
-
|
|
149
|
-
|
|
150
|
-
|
|
151
|
-
|
|
152
|
-
const styleHeader = DIALOG_STYLES[dialogStyle]?.header;
|
|
153
|
-
return typeof header === 'object' && header !== null && 'text' in header
|
|
154
|
-
? header.text
|
|
155
|
-
: typeof header === 'string'
|
|
156
|
-
? header
|
|
157
|
-
: typeof styleHeader === 'object' &&
|
|
158
|
-
styleHeader !== null &&
|
|
159
|
-
'text' in styleHeader
|
|
160
|
-
? styleHeader.text
|
|
161
|
-
: 'Confirmation'; // ✅ Default value
|
|
162
|
-
}
|
|
163
|
-
getDialogHeaderStyle() {
|
|
164
|
-
const header = this.dialogConfig.header;
|
|
165
|
-
const dialogStyle = this.dialogConfig.dialogStyle ?? SeverityEnum.INFO;
|
|
166
|
-
const styleHeader = DIALOG_STYLES[dialogStyle]?.header;
|
|
167
|
-
return typeof header === 'object' && header !== null
|
|
168
|
-
? {
|
|
169
|
-
color: header.color ||
|
|
170
|
-
(typeof styleHeader === 'object' ? styleHeader?.color : '#333'),
|
|
171
|
-
fontSize: header.fontSize || '25px',
|
|
49
|
+
if (this.bodyHeight) {
|
|
50
|
+
style['max-height'] = this.bodyHeight;
|
|
51
|
+
if (this.bodyScrollable) {
|
|
52
|
+
style['overflow-y'] = 'auto';
|
|
53
|
+
style['overflow-x'] = 'auto';
|
|
172
54
|
}
|
|
173
|
-
|
|
174
|
-
|
|
175
|
-
fontSize: '25px',
|
|
176
|
-
};
|
|
177
|
-
}
|
|
178
|
-
getDialogIconClass() {
|
|
179
|
-
const header = this.dialogConfig.header;
|
|
180
|
-
const dialogStyle = this.dialogConfig.dialogStyle ?? SeverityEnum.INFO; // ✅ Ensure dialogStyle is always defined
|
|
181
|
-
const styleHeader = DIALOG_STYLES[dialogStyle]?.header; // ✅ Store the style header separately
|
|
182
|
-
// ✅ Ensure header.icon exists and is an object before accessing .code
|
|
183
|
-
const icon = typeof header === 'object' && header !== null && 'icon' in header
|
|
184
|
-
? header.icon
|
|
185
|
-
: typeof styleHeader === 'object' && 'icon' in styleHeader
|
|
186
|
-
? styleHeader.icon
|
|
187
|
-
: undefined;
|
|
188
|
-
// ✅ If `icon` is an object, extract `.code`, otherwise return as string or default value
|
|
189
|
-
return typeof icon === 'string'
|
|
190
|
-
? icon
|
|
191
|
-
: icon?.code || 'pi pi-exclamation-circle';
|
|
192
|
-
}
|
|
193
|
-
getDialogIconStyle() {
|
|
194
|
-
const header = this.dialogConfig.header;
|
|
195
|
-
const dialogStyle = this.dialogConfig.dialogStyle ?? SeverityEnum.INFO;
|
|
196
|
-
const styleHeader = DIALOG_STYLES[dialogStyle]?.header;
|
|
197
|
-
const icon = typeof header === 'object' && header !== null && 'icon' in header
|
|
198
|
-
? header.icon
|
|
199
|
-
: undefined;
|
|
200
|
-
return {
|
|
201
|
-
color: icon?.color ||
|
|
202
|
-
(typeof styleHeader === 'object' ? styleHeader?.color : '#f39c12'),
|
|
203
|
-
fontSize: icon?.fontSize || '1.5rem',
|
|
204
|
-
backgroundColor: icon?.backgroundColor || 'transparent',
|
|
205
|
-
borderRadius: icon?.shape === 'circular' ? '50%' : '4px',
|
|
206
|
-
padding: '5px',
|
|
207
|
-
};
|
|
55
|
+
}
|
|
56
|
+
return style;
|
|
208
57
|
}
|
|
209
|
-
|
|
210
|
-
|
|
211
|
-
const dialogStyle = this.dialogConfig.dialogStyle ?? SeverityEnum.INFO;
|
|
212
|
-
const styleContent = DIALOG_STYLES[dialogStyle]?.content;
|
|
213
|
-
return typeof content === 'string'
|
|
214
|
-
? content
|
|
215
|
-
: content?.text ||
|
|
216
|
-
(typeof styleContent === 'object'
|
|
217
|
-
? styleContent?.text
|
|
218
|
-
: 'Are you sure?');
|
|
58
|
+
onShow() {
|
|
59
|
+
this.visibleChange.emit(true);
|
|
219
60
|
}
|
|
220
|
-
|
|
221
|
-
|
|
222
|
-
const dialogStyle = this.dialogConfig.dialogStyle ?? SeverityEnum.INFO;
|
|
223
|
-
const styleContent = DIALOG_STYLES[dialogStyle]?.content;
|
|
224
|
-
return typeof content === 'object' && content !== null
|
|
225
|
-
? {
|
|
226
|
-
color: content.color ||
|
|
227
|
-
(typeof styleContent === 'object' ? styleContent?.color : '#333'),
|
|
228
|
-
fontSize: content.fontSize || '20px',
|
|
229
|
-
textAlign: content.position || 'left',
|
|
230
|
-
}
|
|
231
|
-
: {
|
|
232
|
-
color: typeof styleContent === 'object' ? styleContent?.color : '#333',
|
|
233
|
-
fontSize: '20px',
|
|
234
|
-
textAlign: 'left',
|
|
235
|
-
};
|
|
61
|
+
onHide() {
|
|
62
|
+
this.visibleChange.emit(false);
|
|
236
63
|
}
|
|
237
|
-
static { this.ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "17.3.11", ngImport: i0, type: PTDialogComponent, deps: [
|
|
238
|
-
static { this.ɵcmp = i0.ɵɵngDeclareComponent({ minVersion: "14.0.0", version: "17.3.11", type: PTDialogComponent, selector: "pt-dialog", inputs: {
|
|
64
|
+
static { this.ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "17.3.11", ngImport: i0, type: PTDialogComponent, deps: [], target: i0.ɵɵFactoryTarget.Component }); }
|
|
65
|
+
static { this.ɵcmp = i0.ɵɵngDeclareComponent({ minVersion: "14.0.0", version: "17.3.11", type: PTDialogComponent, selector: "pt-dialog", inputs: { header: "header", style: "style", styleClass: "styleClass", headerIconClass: "headerIconClass", bodyWidth: "bodyWidth", bodyHeight: "bodyHeight", bodyScrollable: "bodyScrollable", showFooter: "showFooter", modal: "modal", closable: "closable", draggable: "draggable", resizable: "resizable", maximizable: "maximizable", dismissableMask: "dismissableMask", closeOnEscape: "closeOnEscape", blockScroll: "blockScroll", breakpoints: "breakpoints", position: "position", contentStyle: "contentStyle", visible: "visible" }, outputs: { visibleChange: "visibleChange" }, ngImport: i0, template: "<p-dialog\n [(visible)]=\"_visible\"\n [header]=\"header\"\n [modal]=\"modal\"\n [style]=\"style\"\n [breakpoints]=\"breakpoints\"\n [closable]=\"closable\"\n [draggable]=\"draggable\"\n [resizable]=\"resizable\"\n [maximizable]=\"maximizable\"\n [dismissableMask]=\"dismissableMask\"\n [closeOnEscape]=\"closeOnEscape\"\n [blockScroll]=\"blockScroll\"\n [position]=\"position\"\n [contentStyle]=\"contentStyle\"\n [styleClass]=\"dialogStyleClass\"\n (onShow)=\"onShow()\"\n (onHide)=\"onHide()\"\n>\n <!-- HEADER -->\n <ng-template pTemplate=\"header\">\n <div\n class=\"flex align-items-center justify-content-between w-full px-4 pt-3 pb-2\"\n >\n <div class=\"flex align-items-center gap-2\">\n <!-- optional icon -->\n <i *ngIf=\"headerIconClass\" [ngClass]=\"headerIconClass\"></i>\n\n <!-- projected custom header -->\n <ng-content select=\"[ptDialogHeader]\"></ng-content>\n\n <!-- fallback header text -->\n <span *ngIf=\"header\" class=\"font-bold text-lg\">\n {{ header }}\n </span>\n </div>\n <!-- close icon from PrimeNG (X) is rendered automatically -->\n </div>\n </ng-template>\n\n <!-- BODY -->\n <div\n class=\"surface-50 px-4 py-4 flex flex-column gap-3\"\n [ngStyle]=\"bodyStyle\"\n >\n <ng-content select=\"[ptDialogContent]\"></ng-content>\n <ng-content></ng-content>\n </div>\n\n <!-- FOOTER (optional) -->\n <ng-template pTemplate=\"footer\" *ngIf=\"showFooter\">\n <div class=\"surface-100 px-4 py-2 flex justify-content-end gap-2\">\n <ng-content select=\"[ptDialogFooter]\"></ng-content>\n </div>\n </ng-template>\n</p-dialog>\n", styles: [":host ::ng-deep .pt-dialog-header-blue .p-dialog-header{background-color:#e0f2ff;border-bottom:0}:host ::ng-deep .pt-dialog-header-blue .p-dialog-footer{background-color:#f5f6f8!important;border-top:0!important}\n"], dependencies: [{ kind: "directive", type: i1.NgClass, selector: "[ngClass]", inputs: ["class", "ngClass"] }, { kind: "directive", type: i1.NgIf, selector: "[ngIf]", inputs: ["ngIf", "ngIfThen", "ngIfElse"] }, { kind: "directive", type: i1.NgStyle, selector: "[ngStyle]", inputs: ["ngStyle"] }, { kind: "component", type: i2.Dialog, selector: "p-dialog", inputs: ["header", "draggable", "resizable", "positionLeft", "positionTop", "contentStyle", "contentStyleClass", "modal", "closeOnEscape", "dismissableMask", "rtl", "closable", "responsive", "appendTo", "breakpoints", "styleClass", "maskStyleClass", "maskStyle", "showHeader", "breakpoint", "blockScroll", "autoZIndex", "baseZIndex", "minX", "minY", "focusOnShow", "maximizable", "keepInViewport", "focusTrap", "transitionOptions", "closeIcon", "closeAriaLabel", "closeTabindex", "minimizeIcon", "maximizeIcon", "visible", "style", "position"], outputs: ["onShow", "onHide", "visibleChange", "onResizeInit", "onResizeEnd", "onDragEnd", "onMaximize"] }, { kind: "directive", type: i3.PrimeTemplate, selector: "[pTemplate]", inputs: ["type", "pTemplate"] }] }); }
|
|
239
66
|
}
|
|
240
67
|
i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "17.3.11", ngImport: i0, type: PTDialogComponent, decorators: [{
|
|
241
68
|
type: Component,
|
|
242
|
-
args: [{ selector: 'pt-dialog',
|
|
243
|
-
}],
|
|
69
|
+
args: [{ selector: 'pt-dialog', template: "<p-dialog\n [(visible)]=\"_visible\"\n [header]=\"header\"\n [modal]=\"modal\"\n [style]=\"style\"\n [breakpoints]=\"breakpoints\"\n [closable]=\"closable\"\n [draggable]=\"draggable\"\n [resizable]=\"resizable\"\n [maximizable]=\"maximizable\"\n [dismissableMask]=\"dismissableMask\"\n [closeOnEscape]=\"closeOnEscape\"\n [blockScroll]=\"blockScroll\"\n [position]=\"position\"\n [contentStyle]=\"contentStyle\"\n [styleClass]=\"dialogStyleClass\"\n (onShow)=\"onShow()\"\n (onHide)=\"onHide()\"\n>\n <!-- HEADER -->\n <ng-template pTemplate=\"header\">\n <div\n class=\"flex align-items-center justify-content-between w-full px-4 pt-3 pb-2\"\n >\n <div class=\"flex align-items-center gap-2\">\n <!-- optional icon -->\n <i *ngIf=\"headerIconClass\" [ngClass]=\"headerIconClass\"></i>\n\n <!-- projected custom header -->\n <ng-content select=\"[ptDialogHeader]\"></ng-content>\n\n <!-- fallback header text -->\n <span *ngIf=\"header\" class=\"font-bold text-lg\">\n {{ header }}\n </span>\n </div>\n <!-- close icon from PrimeNG (X) is rendered automatically -->\n </div>\n </ng-template>\n\n <!-- BODY -->\n <div\n class=\"surface-50 px-4 py-4 flex flex-column gap-3\"\n [ngStyle]=\"bodyStyle\"\n >\n <ng-content select=\"[ptDialogContent]\"></ng-content>\n <ng-content></ng-content>\n </div>\n\n <!-- FOOTER (optional) -->\n <ng-template pTemplate=\"footer\" *ngIf=\"showFooter\">\n <div class=\"surface-100 px-4 py-2 flex justify-content-end gap-2\">\n <ng-content select=\"[ptDialogFooter]\"></ng-content>\n </div>\n </ng-template>\n</p-dialog>\n", styles: [":host ::ng-deep .pt-dialog-header-blue .p-dialog-header{background-color:#e0f2ff;border-bottom:0}:host ::ng-deep .pt-dialog-header-blue .p-dialog-footer{background-color:#f5f6f8!important;border-top:0!important}\n"] }]
|
|
70
|
+
}], propDecorators: { header: [{
|
|
244
71
|
type: Input
|
|
245
|
-
}],
|
|
246
|
-
type:
|
|
247
|
-
}],
|
|
72
|
+
}], style: [{
|
|
73
|
+
type: Input
|
|
74
|
+
}], styleClass: [{
|
|
75
|
+
type: Input
|
|
76
|
+
}], headerIconClass: [{
|
|
77
|
+
type: Input
|
|
78
|
+
}], bodyWidth: [{
|
|
79
|
+
type: Input
|
|
80
|
+
}], bodyHeight: [{
|
|
81
|
+
type: Input
|
|
82
|
+
}], bodyScrollable: [{
|
|
83
|
+
type: Input
|
|
84
|
+
}], showFooter: [{
|
|
85
|
+
type: Input
|
|
86
|
+
}], modal: [{
|
|
87
|
+
type: Input
|
|
88
|
+
}], closable: [{
|
|
89
|
+
type: Input
|
|
90
|
+
}], draggable: [{
|
|
91
|
+
type: Input
|
|
92
|
+
}], resizable: [{
|
|
93
|
+
type: Input
|
|
94
|
+
}], maximizable: [{
|
|
95
|
+
type: Input
|
|
96
|
+
}], dismissableMask: [{
|
|
97
|
+
type: Input
|
|
98
|
+
}], closeOnEscape: [{
|
|
99
|
+
type: Input
|
|
100
|
+
}], blockScroll: [{
|
|
101
|
+
type: Input
|
|
102
|
+
}], breakpoints: [{
|
|
103
|
+
type: Input
|
|
104
|
+
}], position: [{
|
|
105
|
+
type: Input
|
|
106
|
+
}], contentStyle: [{
|
|
107
|
+
type: Input
|
|
108
|
+
}], visible: [{
|
|
109
|
+
type: Input
|
|
110
|
+
}], visibleChange: [{
|
|
248
111
|
type: Output
|
|
249
112
|
}] } });
|
|
250
|
-
//# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoicHQtZGlhbG9nLmNvbXBvbmVudC5qcyIsInNvdXJjZVJvb3QiOiIiLCJzb3VyY2VzIjpbIi4uLy4uLy4uLy4uLy4uL3Byb2plY3RzL25nLXByaW1lLXRvb2xzL3NyYy9saWIvcHQtZGlhbG9nL3B0LWRpYWxvZy5jb21wb25lbnQudHMiLCIuLi8uLi8uLi8uLi8uLi9wcm9qZWN0cy9uZy1wcmltZS10b29scy9zcmMvbGliL3B0LWRpYWxvZy9wdC1kaWFsb2cuY29tcG9uZW50Lmh0bWwiXSwibmFtZXMiOltdLCJtYXBwaW5ncyI6IkFBQUEsT0FBTyxFQUNMLFNBQVMsRUFDVCxLQUFLLEVBQ0wsTUFBTSxFQUNOLFlBQVksR0FLYixNQUFNLGVBQWUsQ0FBQztBQUN2QixPQUFPLEVBQ0wsbUJBQW1CLEVBQ25CLGdCQUFnQixFQUNoQixjQUFjLEdBQ2YsTUFBTSxhQUFhLENBQUM7QUFJckIsT0FBTyxFQUFFLFlBQVksRUFBRSxNQUFNLFVBQVUsQ0FBQzs7Ozs7QUFFeEMsNENBQTRDO0FBQzVDLE1BQU0sYUFBYSxHQUFnRDtJQUNqRSxDQUFDLFlBQVksQ0FBQyxPQUFPLENBQUMsRUFBRTtRQUN0QixNQUFNLEVBQUUsRUFBRSxJQUFJLEVBQUUsU0FBUyxFQUFFLEtBQUssRUFBRSxTQUFTLEVBQUU7UUFDN0MsT0FBTyxFQUFFLEVBQUUsSUFBSSxFQUFFLDRCQUE0QixFQUFFLEtBQUssRUFBRSxTQUFTLEVBQUU7UUFDakUsbUJBQW1CLEVBQUUsRUFBRSxlQUFlLEVBQUUsU0FBUyxFQUFFLFNBQVMsRUFBRSxNQUFNLEVBQUU7UUFDdEUsa0JBQWtCLEVBQUUsRUFBRSxlQUFlLEVBQUUsU0FBUyxFQUFFLFNBQVMsRUFBRSxNQUFNLEVBQUU7S0FDdEU7SUFDRCxDQUFDLFlBQVksQ0FBQyxPQUFPLENBQUMsRUFBRTtRQUN0QixNQUFNLEVBQUUsRUFBRSxJQUFJLEVBQUUsU0FBUyxFQUFFLEtBQUssRUFBRSxTQUFTLEVBQUU7UUFDN0MsT0FBTyxFQUFFLEVBQUUsSUFBSSxFQUFFLDJC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LFlBQVksS0FBSyxRQUFRLENBQUMsQ0FBQyxDQUFDLFlBQVksRUFBRSxLQUFLLENBQUMsQ0FBQyxDQUFDLE1BQU0sQ0FBQztnQkFDbkUsUUFBUSxFQUFFLE9BQU8sQ0FBQyxRQUFRLElBQUksTUFBTTtnQkFDcEMsU0FBUyxFQUFFLE9BQU8sQ0FBQyxRQUFRLElBQUksTUFBTTthQUN0QztZQUNILENBQUMsQ0FBQztnQkFDRSxLQUFLLEVBQ0gsT0FBTyxZQUFZLEtBQUssUUFBUSxDQUFDLENBQUMsQ0FBQyxZQUFZLEVBQUUsS0FBSyxDQUFDLENBQUMsQ0FBQyxNQUFNO2dCQUNqRSxRQUFRLEVBQUUsTUFBTTtnQkFDaEIsU0FBUyxFQUFFLE1BQU07YUFDbEIsQ0FBQztJQUNSLENBQUM7K0dBM09VLGlCQUFpQjttR0FBakIsaUJBQWlCLGlJQUZqQixDQUFDLG1CQUFtQixFQUFFLGNBQWMsQ0FBQywrQ0N4RWxELDR3QkF1QkE7OzRGRG1EYSxpQkFBaUI7a0JBTjdCLFNBQVM7K0JBQ0UsV0FBVyxhQUdWLENBQUMsbUJBQW1CLEVBQUUsY0FBYyxDQUFDO3NLQUd2QyxZQUFZO3NCQUFwQixLQUFLO2dCQUNJLE9BQU87c0JBQWhCLE1BQU07Z0JBQ0csTUFBTTtzQkFBZixNQUFNIiwic291cmNlc0NvbnRlbnQiOlsiaW1wb3J0IHtcbiAgQ29tcG9uZW50LFxuICBJbnB1dCxcbiAgT3V0cHV0LFxuICBFdmVudEVtaXR0ZXIsXG4gIFJlbmRlcmVyMixcbiAgRWxlbWVudFJlZixcbiAgU2ltcGxlQ2hhbmdlcyxcbiAgT25DaGFuZ2VzLFxufSBmcm9tICdAYW5ndWxhci9jb3JlJztcbmltcG9ydCB7XG4gIENvbmZpcm1hdGlvblNlcnZpY2UsXG4gIENvbmZpcm1FdmVudFR5cGUsXG4gIE1lc3NhZ2VTZXJ2aWNlLFxufSBmcm9tICdwcmltZW5nL2FwaSc7XG5pbXBvcnQgeyBEaWFsb2dDb25maWcgfSBmcm9tICcuLi9tb2RlbHMvZGlhbG9nLWNvbmZpZy5tb2RlbCc7XG5pbXBvcnQgeyBCdXR0b25Nb2RlbCB9IGZyb20gJy4uL21vZGVscy9idXR0b24ubW9kZWwnO1xuaW1wb3J0IHsgSWNvblN0eWxlIH0gZnJvbSAnLi4vbW9kZWxzJztcbmltcG9ydCB7IFNldmVyaXR5RW51bSB9IGZyb20gJy4uL2VudW1zJztcblxuLy8gRGVmYXVsdCBTdHlsZXMgZm9yIERpZmZlcmVudCBEaWFsb2cgVHlwZXNcbmNvbnN0IERJQUxPR19TVFlMRVM6IFJlY29yZDxTZXZlcml0eUVudW0sIFBhcnRpYWw8RGlhbG9nQ29uZmlnPj4gPSB7XG4gIFtTZXZlcml0eUVudW0uV0FSTklOR106IHtcbiAgICBoZWFkZXI6IHsgdGV4dDogJ1dhcm5pbmcnLCBjb2xvcjogJyNkOTgzMDAnIH0sXG4gICAgY29udGVudDogeyB0ZXh0OiAnVGhpcyBpcyBhIHdhcm5pbmcgbWVzc2FnZSEnLCBjb2xvcjogJyNkOTgzMDAnIH0sXG4gICAgY29uZmlybUJ1dHRvbkNvbmZpZzogeyBiYWNrZ3JvdW5kQ29sb3I6ICcjZDk4MzAwJywgZm9udENvbG9yOiAnI2ZmZicgfSxcbiAgICBjYW5jZWxCdXR0b25Db25maWc6IHsgYmFja2dyb3VuZENvbG9yOiAnIzZjNzU3ZCcsIGZvbnRDb2xvcjogJyNmZmYnIH0sXG4gIH0sXG4gIFtTZXZlcml0eUVudW0uU1VDQ0VTU106IHtcbiAgICBoZWFkZXI6IHsgdGV4dDogJ1N1Y2Nlc3MnLCBjb2xvcjogJyMyOGE3NDUnIH0sXG4gICAgY29udGVudDogeyB0ZXh0OiAnT3BlcmF0aW9uIHdhcyBzdWNjZXNzZnVsIScsIGNvbG9yOiAnIzI4YTc0NScgfSxcbiAgICBjb25maXJtQnV0dG9uQ29uZmlnOiB7IGJhY2tncm91bmRDb2xvcjogJyMyOGE3NDUnLCBmb250Q29sb3I6ICcjZmZmJyB9LFxuICAgIGNhbmNlbEJ1dHRvbkNvbmZpZzogeyBiYWNrZ3JvdW5kQ29sb3I6ICcjNmM3NTdkJywgZm9udENvbG9yOiAnI2ZmZicgfSxcbiAgfSxcbiAgW1NldmVyaXR5RW51bS5EQU5HRVJdOiB7XG4gICAgaGVhZGVyOiB7IHRleHQ6ICdFcnJvcicsIGNvbG9yOiAnI2RjMzU0NScgfSxcbiAgICBjb250ZW50OiB7IHRleHQ6ICdBbiBlcnJvciBvY2N1cnJlZCEnLCBjb2xvcjogJyNkYzM1NDUnIH0sXG4gICAgY29uZmlybUJ1dHRvbkNvbmZpZzogeyBiYWNrZ3JvdW5kQ29sb3I6ICcjZGMzNTQ1JywgZm9udENvbG9yOiAnI2ZmZicgfSxcbiAgICBjYW5jZWxCdXR0b25Db25maWc6IHsgYmFja2dyb3VuZENvbG9yOiAnIzZjNzU3ZCcsIGZvbnRDb2xvcjogJyNmZmYnIH0sXG4gIH0sXG4gIFtTZXZlcml0eUVudW0uSU5GT106IHtcbiAgICBoZWFkZXI6IHsgdGV4dDogJ0luZm9ybWF0aW9uJywgY29sb3I6ICcjMDA3YmZmJyB9LFxuICAgIGNvbnRlbnQ6IHsgdGV4dDogJ0hlcmUgaXMgc29tZSBpbXBvcnRhbnQgaW5mb3JtYXRpb24uJywgY29sb3I6ICcjMDA3YmZmJyB9LFxuICAgIGNvbmZpcm1CdXR0b25Db25maWc6IHsgYmFja2dyb3VuZENvbG9yOiAnIzAwN2JmZicsIGZvbnRDb2xvcjogJyNmZmYnIH0sXG4gICAgY2FuY2VsQnV0dG9uQ29uZmlnOiB7IGJhY2tncm91bmRDb2xvcjogJyM2Yzc1N2QnLCBmb250Q29sb3I6ICcjZmZmJyB9LFxuICB9LFxufTtcblxuLy8gQ2VudHJhbGl6ZWQgRGVmYXVsdCBWYWx1ZXNcbmNvbnN0IERFRkFVTFRfRElBTE9HX0NPTkZJRzogRGlhbG9nQ29uZmlnID0ge1xuICBoZWFkZXI6IHsgdGV4dDogJ0NvbmZpcm1hdGlvbicgfSxcbiAgdmlzaWJsZTogZmFsc2UsXG4gIHdpZHRoOiAnNDAwcHgnLFxuICBoZWlnaHQ6ICdhdXRvJyxcbiAgY29udGVudDogJ0RvIHlvdSB3YW50IHRvIHByb2NlZWQ/JyxcbiAgY29uZmlybUJ1dHRvbkNvbmZpZzoge1xuICAgIGxhYmVsOiAnQ29uZmlybScsXG4gICAgZm9udENvbG9yOiAnI2ZmZicsXG4gICAgYmFja2dyb3VuZENvbG9yOiAnIzAwN2JmZicsXG4gIH0sXG4gIGNhbmNlbEJ1dHRvbkNvbmZpZzoge1xuICAgIGxhYmVsOiAnQ2FuY2VsJyxcbiAgICBmb250Q29sb3I6ICcjZmZmJyxcbiAgICBiYWNrZ3JvdW5kQ29sb3I6ICcjNmM3NTdkJyxcbiAgfSxcbiAgZGlhbG9nU3R5bGU6IFNldmVyaXR5RW51bS5JTkZPLFxufTtcblxuQENvbXBvbmVudCh7XG4gIHNlbGVjdG9yOiAncHQtZGlhbG9nJyxcbiAgdGVtcGxhdGVVcmw6ICcuL3B0LWRpYWxvZy5jb21wb25lbnQuaHRtbCcsXG4gIHN0eWxlVXJsczogWycuL3B0LWRpYWxvZy5jb21wb25lbnQuY3NzJ10sXG4gIHByb3ZpZGVyczogW0NvbmZpcm1hdGlvblNlcnZpY2UsIE1lc3NhZ2VTZXJ2aWNlXSxcbn0pXG5leHBvcnQgY2xhc3MgUFREaWFsb2dDb21wb25lbnQgaW1wbGVtZW50cyBPbkNoYW5nZXMge1xuICBASW5wdXQoKSBkaWFsb2dDb25maWc6IERpYWxvZ0NvbmZpZyA9IHsgLi4uREVGQVVMVF9ESUFMT0dfQ09ORklHIH07XG4gIEBPdXRwdXQoKSBjb25maXJtOiBFdmVudEVtaXR0ZXI8dm9pZD4gPSBuZXcgRXZlbnRFbWl0dGVyKCk7XG4gIEBPdXRwdXQoKSBjYW5jZWw6IEV2ZW50RW1pdHRlcjx2b2lkPiA9IG5ldyBFdmVudEVtaXR0ZXIoKTtcblxuICBjb25zdHJ1Y3RvcihcbiAgICBwcml2YXRlIGNvbmZpcm1hdGlvblNlcnZpY2U6IENvbmZpcm1hdGlvblNlcnZpY2UsXG4gICAgcHJpdmF0ZSBtZXNzYWdlU2VydmljZTogTWVzc2FnZVNlcnZpY2UsXG4gICAgcHJpdmF0ZSByZW5kZXJlcjogUmVuZGVyZXIyLFxuICAgIHByaXZhdGUgZWw6IEVsZW1lbnRSZWZcbiAgKSB7fVxuXG4gIG5nT25DaGFuZ2VzKGNoYW5nZXM6IFNpbXBsZUNoYW5nZXMpOiB2b2lkIHtcbiAgICBpZiAoY2hhbmdlc1snZGlhbG9nQ29uZmlnJ10pIHtcbiAgICAgIGlmIChcbiAgICAgICAgY2hhbmdlc1snZGlhbG9nQ29uZmlnJ10uY3VycmVudFZhbHVlPy5kaWFsb2dTdHlsZSAhPT1cbiAgICAgICAgY2hhbmdlc1snZGlhbG9nQ29uZmlnJ10ucHJldmlvdXNWYWx1ZT8uZGlhbG9nU3R5bGVcbiAgICAgICkge1xuICAgICAgICB0aGlzLmFwcGx5RGlhbG9nU3R5bGUoKTtcbiAgICAgIH1cblxuICAgICAgaWYgKHRoaXMuZGlhbG9nQ29uZmlnLnZpc2libGUpIHtcbiAgICAgICAgdGhpcy5zaG93RGlhbG9nKCk7XG4gICAgICB9XG4gICAgfVxuICB9XG5cbiAgcHJpdmF0ZSBhcHBseURpYWxvZ1N0eWxlKCk6IHZvaWQge1xuICAgIGNvbnN0IGRpYWxvZ1N0eWxlID0gdGhpcy5kaWFsb2dDb25maWcuZGlhbG9nU3R5bGUgfHwgU2V2ZXJpdHlFbnVtLklORk87XG4gICAgY29uc3Qgc3R5bGVDb25maWcgPSBESUFMT0dfU1RZTEVTW2RpYWxvZ1N0eWxlXSB8fCB7fTtcblxuICAgIHRoaXMuZGlhbG9nQ29uZmlnID0ge1xuICAgICAgLi4uREVGQVVMVF9ESUFMT0dfQ09ORklHLFxuICAgICAgLi4uc3R5bGVDb25maWcsXG4gICAgICBjb25maXJtQnV0dG9uQ29uZmlnOiB7XG4gICAgICAgIC4uLkRFRkFVTFRfRElBTE9HX0NPTkZJRy5jb25maXJtQnV0dG9uQ29uZmlnLFxuICAgICAgICAuLi5zdHlsZUNvbmZpZy5jb25maXJtQnV0dG9uQ29uZmlnLFxuICAgICAgfSxcbiAgICAgIGNhbmNlbEJ1dHRvbkNvbmZpZzoge1xuICAgICAgICAuLi5ERUZBVUxUX0RJQUxPR19DT05GSUcuY2FuY2VsQnV0dG9uQ29uZmlnLFxuICAgICAgICAuLi5zdHlsZUNvbmZpZy5jYW5jZWxCdXR0b25Db25maWcsXG4gICAgICB9LFxuICAgIH07XG4gIH1cblxuICBzaG93RGlhbG9nKCk6IHZvaWQge1xuICAgIHRoaXMuY29uZmlybWF0aW9uU2VydmljZS5jb25maXJtKHtcbiAgICAgIGhlYWRlcjogdGhpcy5nZXREaWFsb2dIZWFkZXJUZXh0KCksXG4gICAgICBtZXNzYWdlOiB0aGlzLmdldERpYWxvZ0NvbnRlbnRUZXh0KCksXG4gICAgICBhY2NlcHRMYWJlbDogdGhpcy5kaWFsb2dDb25maWcuY29uZmlybUJ1dHRvbkNvbmZpZz8ubGFiZWwgfHwgJ0NvbmZpcm0nLFxuICAgICAgcmVqZWN0TGFiZWw6IHRoaXMuZGlhbG9nQ29uZmlnLmNhbmNlbEJ1dHRvbkNvbmZpZz8ubGFiZWwgfHwgJ0NhbmNlbCcsXG4gICAgICBhY2NlcHRCdXR0b25TdHlsZUNsYXNzOiB0aGlzLmdldEJ1dHRvblN0eWxlKFxuICAgICAgICB0aGlzLmRpYWxvZ0NvbmZpZy5jb25maXJtQnV0dG9uQ29uZmlnLFxuICAgICAgICB0cnVlXG4gICAgICApLFxuICAgICAgcmVqZWN0QnV0dG9uU3R5bGVDbGFzczogdGhpcy5nZXRCdXR0b25TdHlsZShcbiAgICAgICAgdGhpcy5kaWFsb2dDb25maWcuY2FuY2VsQnV0dG9uQ29uZmlnLFxuICAgICAgICBmYWxzZVxuICAgICAgKSxcbiAgICAgIGFjY2VwdEljb246IHRoaXMuZGlhbG9nQ29uZmlnLmNvbmZpcm1CdXR0b25Db25maWc/Lmljb24gfHwgJ3BpIHBpLWNoZWNrJyxcbiAgICAgIHJlamVjdEljb246IHRoaXMuZGlhbG9nQ29uZmlnLmNhbmNlbEJ1dHRvbkNvbmZpZz8uaWNvbiB8fCAncGkgcGktdGltZXMnLFxuICAgICAgYWNjZXB0OiAoKSA9PiB7XG4gICAgICAgIHRoaXMuY29uZmlybS5lbWl0KCk7XG4gICAgICAgIGlmICh0aGlzLmRpYWxvZ0NvbmZpZy50b2FzdE9uQ29uZmlybSkge1xuICAgICAgICB9XG4gICAgICB9LFxuICAgICAgcmVqZWN0OiAodHlwZTogQ29uZmlybUV2ZW50VHlwZSkgPT4ge1xuICAgICAgICB0aGlzLmNhbmNlbC5lbWl0KCk7XG4gICAgICAgIGlmIChcbiAgICAgICAgICB0eXBlID09PSBDb25maXJtRXZlbnRUeXBlLlJFSkVDVCAmJlxuICAgICAgICAgIHRoaXMuZGlhbG9nQ29uZmlnLnRvYXN0T25DYW5jZWxcbiAgICAgICAgKSB7XG4gICAgICAgIH1cbiAgICAgIH0sXG4gICAgfSk7XG5cbiAgICAvLyBVc2UgcmVuZGVyZXIgdG8gYXBwbHkgZHluYW1pYyBzdHlsZXNcbiAgICBzZXRUaW1lb3V0KCgpID0+IHtcbiAgICAgIGNvbnN0IGRpYWxvZ0VsZW1lbnQgPSB0aGlzLmVsLm5hdGl2ZUVsZW1lbnQucXVlcnlTZWxlY3RvcignLnAtZGlhbG9nJyk7XG4gICAgICBpZiAoZGlhbG9nRWxlbWVudCkge1xuICAgICAgICB0aGlzLnJlbmRlcmVyLnNldFN0eWxlKFxuICAgICAgICAgIGRpYWxvZ0VsZW1lbnQsXG4gICAgICAgICAgJ3dpZHRoJyxcbiAgICAgICAgICB0aGlzLmRpYWxvZ0NvbmZpZy53aWR0aCB8fCAnNDAwcHgnXG4gICAgICAgICk7XG4gICAgICAgIHRoaXMucmVuZGVyZXIuc2V0U3R5bGUoXG4gICAgICAgICAgZGlhbG9nRWxlbWVudCxcbiAgICAgICAgICAnaGVpZ2h0JyxcbiAgICAgICAgICB0aGlzLmRpYWxvZ0NvbmZpZy5oZWlnaHQgfHwgJ2F1dG8nXG4gICAgICAgICk7XG4gICAgICB9XG4gICAgfSwgMCk7XG4gIH1cblxuICBwcml2YXRlIGdldEJ1dHRvblN0eWxlKFxuICAgIGJ1dHRvbkNvbmZpZz86IEJ1dHRvbk1vZGVsLFxuICAgIGlzQ29uZmlybTogYm9vbGVhbiA9IGZhbHNlXG4gICk6IHN0cmluZyB7XG4gICAgbGV0IHN0eWxlQ2xhc3MgPSBidXR0b25Db25maWc/LnN0eWxlQ2xhc3MgPz8gJ3AtYnV0dG9uLXNtJztcblxuICAgIC8vIOKchSBBcHBseSB3aWR0aCBkeW5hbWljYWxseSBpZiBwcm92aWRlZCwgb3RoZXJ3aXNlIGRlZmF1bHQgdG8gMTAwJVxuICAgIGNvbnN0IGJ1dHRvbldpZHRoID0gYnV0dG9uQ29uZmlnPy53aWR0aCA/PyAnMTAwJSc7XG5cbiAgICAvLyDinIUgU2V0IGRlZmF1bHQgc2V2ZXJpdHk6IFNVQ0NFU1MgZm9yIGNvbmZpcm0sIFNFQ09OREFSWSBmb3IgY2FuY2VsXG4gICAgY29uc3QgZGVmYXVsdFNldmVyaXR5ID0gaXNDb25maXJtID8gU2V2ZXJpdHlFbnVtLkRBTkdFUiA6IFNldmVyaXR5RW51bS5JTkZPO1xuICAgIGNvbnN0IHNldmVyaXR5ID0gYnV0dG9uQ29uZmlnPy5zZXZlcml0eSA/PyBkZWZhdWx0U2V2ZXJpdHk7XG5cbiAgICAvLyDinIUgQXBwbHkgc2V2ZXJpdHktYmFzZWQgc3R5bGVzIG9ubHkgaWYgbm8gY3VzdG9tIGJhY2tncm91bmQgY29sb3IgaXMgc2V0XG4gICAgaWYgKCFidXR0b25Db25maWc/LmJhY2tncm91bmRDb2xvcikge1xuICAgICAgc3dpdGNoIChzZXZlcml0eSkge1xuICAgICAgICBjYXNlIFNldmVyaXR5RW51bS5XQVJOSU5HOlxuICAgICAgICAgIHN0eWxlQ2xhc3MgKz0gJyBwLWJ1dHRvbi13YXJuaW5nJztcbiAgICAgICAgICBicmVhaztcbiAgICAgICAgY2FzZSBTZXZlcml0eUVudW0uREFOR0VSOlxuICAgICAgICAgIHN0eWxlQ2xhc3MgKz0gJyBwLWJ1dHRvbi1kYW5nZXInO1xuICAgICAgICAgIGJyZWFrO1xuICAgICAgICBjYXNlIFNldmVyaXR5RW51bS5TVUNDRVNTOlxuICAgICAgICAgIHN0eWxlQ2xhc3MgKz0gJyBwLWJ1dHRvbi1zdWNjZXNzJztcbiAgICAgICAgICBicmVhaztcbiAgICAgICAgY2FzZSBTZXZlcml0eUVudW0uSU5GTzpcbiAgICAgICAgZGVmYXVsdDpcbiAgICAgICAgICBzdHlsZUNsYXNzICs9ICcgcC1idXR0b24tc2Vjb25kYXJ5JztcbiAgICAgICAgICBicmVhaztcbiAgICAgIH1cbiAgICB9XG5cbiAgICByZXR1cm4gYCR7c3R5bGVDbGFzcy50cmltKCl9IHdpZHRoLSR7YnV0dG9uV2lkdGgucmVwbGFjZSgnJScsICcnKX1gO1xuICB9XG5cbiAgZ2V0RGlhbG9nSGVhZGVyVGV4dCgpOiBzdHJpbmcge1xuICAgIGNvbnN0IGhlYWRlciA9IHRoaXMuZGlhbG9nQ29uZmlnLmhlYWRlcjtcbiAgICBjb25zdCBkaWFsb2dTdHlsZSA9IHRoaXMuZGlhbG9nQ29uZmlnLmRpYWxvZ1N0eWxlID8/IFNldmVyaXR5RW51bS5JTkZPO1xuICAgIGNvbnN0IHN0eWxlSGVhZGVyID0gRElBTE9HX1NUWUxFU1tkaWFsb2dTdHlsZV0/LmhlYWRlcjtcblxuICAgIHJldHVybiB0eXBlb2YgaGVhZGVyID09PSAnb2JqZWN0JyAmJiBoZWFkZXIgIT09IG51bGwgJiYgJ3RleHQnIGluIGhlYWRlclxuICAgICAgPyBoZWFkZXIudGV4dFxuICAgICAgOiB0eXBlb2YgaGVhZGVyID09PSAnc3RyaW5nJ1xuICAgICAgPyBoZWFkZXJcbiAgICAgIDogdHlwZW9mIHN0eWxlSGVhZGVyID09PSAnb2JqZWN0JyAmJlxuICAgICAgICBzdHlsZUhlYWRlciAhPT0gbnVsbCAmJlxuICAgICAgICAndGV4dCcgaW4gc3R5bGVIZWFkZXJcbiAgICAgID8gc3R5bGVIZWFkZXIudGV4dFxuICAgICAgOiAnQ29uZmlybWF0aW9uJzsgLy8g4pyFIERlZmF1bHQgdmFsdWVcbiAgfVxuXG4gIGdldERpYWxvZ0hlYWRlclN0eWxlKCk6IGFueSB7XG4gICAgY29uc3QgaGVhZGVyID0gdGhpcy5kaWFsb2dDb25maWcuaGVhZGVyO1xuICAgIGNvbnN0IGRpYWxvZ1N0eWxlID0gdGhpcy5kaWFsb2dDb25maWcuZGlhbG9nU3R5bGUgPz8gU2V2ZXJpdHlFbnVtLklORk87XG4gICAgY29uc3Qgc3R5bGVIZWFkZXIgPSBESUFMT0dfU1RZTEVTW2RpYWxvZ1N0eWxlXT8uaGVhZGVyO1xuXG4gICAgcmV0dXJuIHR5cGVvZiBoZWFkZXIgPT09ICdvYmplY3QnICYmIGhlYWRlciAhPT0gbnVsbFxuICAgICAgPyB7XG4gICAgICAgICAgY29sb3I6XG4gICAgICAgICAgICBoZWFkZXIuY29sb3IgfHxcbiAgICAgICAgICAgICh0eXBlb2Ygc3R5bGVIZWFkZXIgPT09ICdvYmplY3QnID8gc3R5bGVIZWFkZXI/LmNvbG9yIDogJyMzMzMnKSxcbiAgICAgICAgICBmb250U2l6ZTogaGVhZGVyLmZvbnRTaXplIHx8ICcyNXB4JyxcbiAgICAgICAgfVxuICAgICAgOiB7XG4gICAgICAgICAgY29sb3I6IHR5cGVvZiBzdHlsZUhlYWRlciA9PT0gJ29iamVjdCcgPyBzdHlsZUhlYWRlcj8uY29sb3IgOiAnIzMzMycsXG4gICAgICAgICAgZm9udFNpemU6ICcyNXB4JyxcbiAgICAgICAgfTtcbiAgfVxuXG4gIGdldERpYWxvZ0ljb25DbGFzcygpOiBzdHJpbmcge1xuICAgIGNvbnN0IGhlYWRlciA9IHRoaXMuZGlhbG9nQ29uZmlnLmhlYWRlcjtcbiAgICBjb25zdCBkaWFsb2dTdHlsZSA9IHRoaXMuZGlhbG9nQ29uZmlnLmRpYWxvZ1N0eWxlID8/IFNldmVyaXR5RW51bS5JTkZPOyAvLyDinIUgRW5zdXJlIGRpYWxvZ1N0eWxlIGlzIGFsd2F5cyBkZWZpbmVkXG4gICAgY29uc3Qgc3R5bGVIZWFkZXIgPSBESUFMT0dfU1RZTEVTW2RpYWxvZ1N0eWxlXT8uaGVhZGVyOyAvLyDinIUgU3RvcmUgdGhlIHN0eWxlIGhlYWRlciBzZXBhcmF0ZWx5XG5cbiAgICAvLyDinIUgRW5zdXJlIGhlYWRlci5pY29uIGV4aXN0cyBhbmQgaXMgYW4gb2JqZWN0IGJlZm9yZSBhY2Nlc3NpbmcgLmNvZGVcbiAgICBjb25zdCBpY29uID1cbiAgICAgIHR5cGVvZiBoZWFkZXIgPT09ICdvYmplY3QnICYmIGhlYWRlciAhPT0gbnVsbCAmJiAnaWNvbicgaW4gaGVhZGVyXG4gICAgICAgID8gaGVhZGVyLmljb25cbiAgICAgICAgOiB0eXBlb2Ygc3R5bGVIZWFkZXIgPT09ICdvYmplY3QnICYmICdpY29uJyBpbiBzdHlsZUhlYWRlclxuICAgICAgICA/IHN0eWxlSGVhZGVyLmljb25cbiAgICAgICAgOiB1bmRlZmluZWQ7XG5cbiAgICAvLyDinIUgSWYgYGljb25gIGlzIGFuIG9iamVjdCwgZXh0cmFjdCBgLmNvZGVgLCBvdGhlcndpc2UgcmV0dXJuIGFzIHN0cmluZyBvciBkZWZhdWx0IHZhbHVlXG4gICAgcmV0dXJuIHR5cGVvZiBpY29uID09PSAnc3RyaW5nJ1xuICAgICAgPyBpY29uXG4gICAgICA6IChpY29uIGFzIEljb25TdHlsZSk/LmNvZGUgfHwgJ3BpIHBpLWV4Y2xhbWF0aW9uLWNpcmNsZSc7XG4gIH1cblxuICBnZXREaWFsb2dJY29uU3R5bGUoKTogYW55IHtcbiAgICBjb25zdCBoZWFkZXIgPSB0aGlzLmRpYWxvZ0NvbmZpZy5oZWFkZXI7XG4gICAgY29uc3QgZGlhbG9nU3R5bGUgPSB0aGlzLmRpYWxvZ0NvbmZpZy5kaWFsb2dTdHlsZSA/PyBTZXZlcml0eUVudW0uSU5GTztcbiAgICBjb25zdCBzdHlsZUhlYWRlciA9IERJQUxPR19TVFlMRVNbZGlhbG9nU3R5bGVdPy5oZWFkZXI7XG5cbiAgICBjb25zdCBpY29uOiBJY29uU3R5bGUgfCB1bmRlZmluZWQgPVxuICAgICAgdHlwZW9mIGhlYWRlciA9PT0gJ29iamVjdCcgJiYgaGVhZGVyICE9PSBudWxsICYmICdpY29uJyBpbiBoZWFkZXJcbiAgICAgICAgPyAoaGVhZGVyLmljb24gYXMgSWNvblN0eWxlKVxuICAgICAgICA6IHVuZGVmaW5lZDtcblxuICAgIHJldHVybiB7XG4gICAgICBjb2xvcjpcbiAgICAgICAgaWNvbj8uY29sb3IgfHxcbiAgICAgICAgKHR5cGVvZiBzdHlsZUhlYWRlciA9PT0gJ29iamVjdCcgPyBzdHlsZUhlYWRlcj8uY29sb3IgOiAnI2YzOWMxMicpLFxuICAgICAgZm9udFNpemU6IGljb24/LmZvbnRTaXplIHx8ICcxLjVyZW0nLFxuICAgICAgYmFja2dyb3VuZENvbG9yOiBpY29uPy5iYWNrZ3JvdW5kQ29sb3IgfHwgJ3RyYW5zcGFyZW50JyxcbiAgICAgIGJvcmRlclJhZGl1czogaWNvbj8uc2hhcGUgPT09ICdjaXJjdWxhcicgPyAnNTAlJyA6ICc0cHgnLFxuICAgICAgcGFkZGluZzogJzVweCcsXG4gICAgfTtcbiAgfVxuXG4gIGdldERpYWxvZ0NvbnRlbnRUZXh0KCk6IHN0cmluZyB7XG4gICAgY29uc3QgY29udGVudCA9IHRoaXMuZGlhbG9nQ29uZmlnLmNvbnRlbnQ7XG4gICAgY29uc3QgZGlhbG9nU3R5bGUgPSB0aGlzLmRpYWxvZ0NvbmZpZy5kaWFsb2dTdHlsZSA/PyBTZXZlcml0eUVudW0uSU5GTztcbiAgICBjb25zdCBzdHlsZUNvbnRlbnQgPSBESUFMT0dfU1RZTEVTW2RpYWxvZ1N0eWxlXT8uY29udGVudDtcblxuICAgIHJldHVybiB0eXBlb2YgY29udGVudCA9PT0gJ3N0cmluZydcbiAgICAgID8gY29udGVudFxuICAgICAgOiBjb250ZW50Py50ZXh0IHx8XG4gICAgICAgICAgKHR5cGVvZiBzdHlsZUNvbnRlbnQgPT09ICdvYmplY3QnXG4gICAgICAgICAgICA/IHN0eWxlQ29udGVudD8udGV4dFxuICAgICAgICAgICAgOiAnQXJlIHlvdSBzdXJlPycpO1xuICB9XG5cbiAgZ2V0RGlhbG9nQ29udGVudFN0eWxlKCk6IGFueSB7XG4gICAgY29uc3QgY29udGVudCA9IHRoaXMuZGlhbG9nQ29uZmlnLmNvbnRlbnQ7XG4gICAgY29uc3QgZGlhbG9nU3R5bGUgPSB0aGlzLmRpYWxvZ0NvbmZpZy5kaWFsb2dTdHlsZSA/PyBTZXZlcml0eUVudW0uSU5GTztcbiAgICBjb25zdCBzdHlsZUNvbnRlbnQgPSBESUFMT0dfU1RZTEVTW2RpYWxvZ1N0eWxlXT8uY29udGVudDtcblxuICAgIHJldHVybiB0eXBlb2YgY29udGVudCA9PT0gJ29iamVjdCcgJiYgY29udGVudCAhPT0gbnVsbFxuICAgICAgPyB7XG4gICAgICAgICAgY29sb3I6XG4gICAgICAgICAgICBjb250ZW50LmNvbG9yIHx8XG4gICAgICAgICAgICAodHlwZW9mIHN0eWxlQ29udGVudCA9PT0gJ29iamVjdCcgPyBzdHlsZUNvbnRlbnQ/LmNvbG9yIDogJyMzMzMnKSxcbiAgICAgICAgICBmb250U2l6ZTogY29udGVudC5mb250U2l6ZSB8fCAnMjBweCcsXG4gICAgICAgICAgdGV4dEFsaWduOiBjb250ZW50LnBvc2l0aW9uIHx8ICdsZWZ0JyxcbiAgICAgICAgfVxuICAgICAgOiB7XG4gICAgICAgICAgY29sb3I6XG4gICAgICAgICAgICB0eXBlb2Ygc3R5bGVDb250ZW50ID09PSAnb2JqZWN0JyA/IHN0eWxlQ29udGVudD8uY29sb3IgOiAnIzMzMycsXG4gICAgICAgICAgZm9udFNpemU6ICcyMHB4JyxcbiAgICAgICAgICB0ZXh0QWxpZ246ICdsZWZ0JyxcbiAgICAgICAgfTtcbiAgfVxufVxuIiwiPGRpdiBjbGFzcz1cInB0LWRpYWxvZ1wiPlxuICA8cC1jb25maXJtRGlhbG9nPlxuICAgIDwhLS0gSGVhZGVyIHdpdGggSWNvbiBhbmQgVGl0bGUgYWxpZ25lZCBob3Jpem9udGFsbHkgLS0+XG4gICAgPG5nLXRlbXBsYXRlIHBUZW1wbGF0ZT1cImhlYWRlclwiPlxuICAgICAgPGRpdiBjbGFzcz1cInBvcHVwLWhlYWRlciBib3JkZXJlZC1zZWN0aW9uXCI+XG4gICAgICAgIDxpIFtjbGFzc109XCJnZXREaWFsb2dJY29uQ2xhc3MoKVwiIFtuZ1N0eWxlXT1cImdldERpYWxvZ0ljb25TdHlsZSgpXCI+PC9pPlxuICAgICAgICA8c3BhbiBjbGFzcz1cInBvcHVwLXRpdGxlXCIgW25nU3R5bGVdPVwiZ2V0RGlhbG9nSGVhZGVyU3R5bGUoKVwiPlxuICAgICAgICAgIHt7IGdldERpYWxvZ0hlYWRlclRleHQoKSB9fVxuICAgICAgICA8L3NwYW4+XG4gICAgICA8L2Rpdj5cbiAgICA8L25nLXRlbXBsYXRlPlxuXG4gICAgPCEtLSBNZXNzYWdlIENvbnRlbnQgd2l0aCBEaXZpZGVyIC0tPlxuICAgIDxuZy10ZW1wbGF0ZSBwVGVtcGxhdGU9XCJtZXNzYWdlXCIgbGV0LW1lc3NhZ2U+XG4gICAgICA8ZGl2XG4gICAgICAgIGNsYXNzPVwicG9wdXAtY29udGVudCBib3JkZXJlZC1zZWN0aW9uXCJcbiAgICAgICAgW25nU3R5bGVdPVwiZ2V0RGlhbG9nQ29udGVudFN0eWxlKClcIlxuICAgICAgPlxuICAgICAgICA8cD57eyBnZXREaWFsb2dDb250ZW50VGV4dCgpIH19PC9wPlxuICAgICAgPC9kaXY+XG4gICAgPC9uZy10ZW1wbGF0ZT5cbiAgPC9wLWNvbmZpcm1EaWFsb2c+XG48L2Rpdj5cbiJdfQ==
|
|
113
|
+
//# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoicHQtZGlhbG9nLmNvbXBvbmVudC5qcyIsInNvdXJjZVJvb3QiOiIiLCJzb3VyY2VzIjpbIi4uLy4uLy4uLy4uLy4uL3Byb2plY3RzL25nLXByaW1lLXRvb2xzL3NyYy9saWIvcHQtZGlhbG9nL3B0LWRpYWxvZy5jb21wb25lbnQudHMiLCIuLi8uLi8uLi8uLi8uLi9wcm9qZWN0cy9uZy1wcmltZS10b29scy9zcmMvbGliL3B0LWRpYWxvZy9wdC1kaWFsb2cuY29tcG9uZW50Lmh0bWwiXSwibmFtZXMiOltdLCJtYXBwaW5ncyI6IkFBQUEsT0FBTyxFQUFFLFNBQVMsRUFBRSxZQUFZLEVBQUUsS0FBSyxFQUFFLE1BQU0sRUFBRSxNQUFNLGVBQWUsQ0FBQzs7Ozs7QUFrQnZFLE1BQU0sT0FBTyxpQkFBaUI7SUFMOUI7UUFpQkUseURBQXlEO1FBQ2hELG1CQUFjLEdBQUcsSUFBSSxDQUFDO1FBRS9CLGdEQUFnRDtRQUN2QyxlQUFVLEdBQUcsSUFBSSxDQUFDO1FBRWxCLFVBQUssR0FBRyxJQUFJLENBQUM7UUFDYixhQUFRLEdBQUcsSUFBSSxDQUFDO1FBQ2hCLGNBQVMsR0FBRyxJQUFJLENBQUM7UUFDakIsY0FBUyxHQUFHLElBQUksQ0FBQztRQUNqQixnQkFBVyxHQUFHLEtBQUssQ0FBQztRQUNwQixvQkFBZSxHQUFHLEtBQUssQ0FBQztRQUN4QixrQkFBYSxHQUFHLElBQUksQ0FBQztRQUNyQixnQkFBVyxHQUFHLElBQUksQ0FBQztRQUVuQixhQUFRLEdBQW1CLFFBQVEsQ0FBQztRQUc3Qyw2Q0FBNkM7UUFDN0MsYUFBUSxHQUFHLEtBQUssQ0FBQztRQVVQLGtCQUFhLEdBQUcsSUFBSSxZQUFZLEVBQVcsQ0FBQztLQXlDdkQ7SUFqREMsSUFDSSxPQUFPO1FBQ1QsT0FBTyxJQUFJLENBQUMsUUFBUSxDQUFDO0lBQ3ZCLENBQUM7SUFDRCxJQUFJLE9BQU8sQ0FBQyxDQUFVO1FBQ3BCLElBQUksQ0FBQyxRQUFRLEdBQUcsQ0FBQyxDQUFDO0lBQ3BCLENBQUM7SUFJRCxzQ0FBc0M7SUFDdEMsSUFBSSxnQkFBZ0I7UUFDbEIsT0FBTztZQUNMLGtCQUFrQjtZQUNsQixVQUFVO1lBQ1YsaUJBQWlCO1lBQ2pCLHVCQUF1QixFQUFFLDJCQUEyQjtZQUNwRCxJQUFJLENBQUMsVUFBVTtTQUNoQjthQUNFLE1BQU0sQ0FBQyxPQUFPLENBQUM7YUFDZixJQUFJLENBQUMsR0FBRyxDQUFDLENBQUM7SUFDZixDQUFDO0lBRUQsd0NBQXdDO0lBQ3hDLElBQUksU0FBUztRQUNYLE1BQU0sS0FBSyxHQUEyQixFQUFFLENBQUM7UUFFekMsSUFBSSxJQUFJLENBQUMsU0FBUyxFQUFFLENBQUM7WUFDbkIsS0FBSyxDQUFDLFdBQVcsQ0FBQyxHQUFHLElBQUksQ0FBQyxTQUFTLENBQUM7UUFDdEMsQ0FBQztRQUVELElBQUksSUFBSSxDQUFDLFVBQVUsRUFBRSxDQUFDO1lBQ3BCLEtBQUssQ0FBQyxZQUFZLENBQUMsR0FBRyxJQUFJLENBQUMsVUFBVSxDQUFDO1lBQ3RDLElBQUksSUFBSSxDQUFDLGNBQWMsRUFBRSxDQUFDO2dCQUN4QixLQUFLLENBQUMsWUFBWSxDQUFDLEdBQUcsTUFBTSxDQUFDO2dCQUM3QixLQUFLLENBQUMsWUFBWSxDQUFDLEdBQUcsTUFBTSxDQUFDO1lBQy9CLENBQUM7UUFDSCxDQUFDO1FBRUQsT0FBTyxLQUFLLENBQUM7SUFDZixDQUFDO0lBRUQsTUFBTTtRQUNKLElBQUksQ0FBQyxhQUFhLENBQUMsSUFBSSxDQUFDLElBQUksQ0FBQyxDQUFDO0lBQ2hDLENBQUM7SUFFRCxNQUFNO1FBQ0osSUFBSSxDQUFDLGFBQWEsQ0FBQyxJQUFJLENBQUMsS0FBSyxDQUFDLENBQUM7SUFDakMsQ0FBQzsrR0FqRlUsaUJBQWlCO21HQUFqQixpQkFBaUIsOG1CQ2xCOUIsNnBEQXdEQTs7NEZEdENhLGlCQUFpQjtrQkFMN0IsU0FBUzsrQkFDRSxXQUFXOzhCQUtaLE1BQU07c0JBQWQsS0FBSztnQkFDRyxLQUFLO3NCQUFiLEtBQUs7Z0JBQ0csVUFBVTtzQkFBbEIsS0FBSztnQkFHRyxlQUFlO3NCQUF2QixLQUFLO2dCQUdHLFNBQVM7c0JBQWpCLEtBQUs7Z0JBQ0csVUFBVTtzQkFBbEIsS0FBSztnQkFHRyxjQUFjO3NCQUF0QixLQUFLO2dCQUdHLFVBQVU7c0JBQWxCLEtBQUs7Z0JBRUcsS0FBSztzQkFBYixLQUFLO2dCQUNHLFFBQVE7c0JBQWhCLEtBQUs7Z0JBQ0csU0FBUztzQkFBakIsS0FBSztnQkFDRyxTQUFTO3NCQUFqQixLQUFLO2dCQUNHLFdBQVc7c0JBQW5CLEtBQUs7Z0JBQ0csZUFBZTtzQkFBdkIsS0FBSztnQkFDRyxhQUFhO3NCQUFyQixLQUFLO2dCQUNHLFdBQVc7c0JBQW5CLEtBQUs7Z0JBQ0csV0FBVztzQkFBbkIsS0FBSztnQkFDRyxRQUFRO3NCQUFoQixLQUFLO2dCQUNHLFlBQVk7c0JBQXBCLEtBQUs7Z0JBTUYsT0FBTztzQkFEVixLQUFLO2dCQVFJLGFBQWE7c0JBQXRCLE1BQU0iLCJzb3VyY2VzQ29udGVudCI6WyJpbXBvcnQgeyBDb21wb25lbnQsIEV2ZW50RW1pdHRlciwgSW5wdXQsIE91dHB1dCB9IGZyb20gJ0Bhbmd1bGFyL2NvcmUnO1xuXG50eXBlIERpYWxvZ1Bvc2l0aW9uID1cbiAgfCAncmlnaHQnXG4gIHwgJ2xlZnQnXG4gIHwgJ2NlbnRlcidcbiAgfCAndG9wJ1xuICB8ICdib3R0b20nXG4gIHwgJ3RvcGxlZnQnXG4gIHwgJ3RvcHJpZ2h0J1xuICB8ICdib3R0b21sZWZ0J1xuICB8ICdib3R0b21yaWdodCc7XG5cbkBDb21wb25lbnQoe1xuICBzZWxlY3RvcjogJ3B0LWRpYWxvZycsXG4gIHRlbXBsYXRlVXJsOiAnLi9wdC1kaWFsb2cuY29tcG9uZW50Lmh0bWwnLFxuICBzdHlsZVVybHM6IFsnLi9wdC1kaWFsb2cuY29tcG9uZW50LmNzcyddLFxufSlcbmV4cG9ydCBjbGFzcyBQVERpYWxvZ0NvbXBvbmVudCB7XG4gIEBJbnB1dCgpIGhlYWRlcj86IHN0cmluZztcbiAgQElucHV0KCkgc3R5bGU/OiB7IFtrZXk6IHN0cmluZ106IGFueSB9O1xuICBASW5wdXQoKSBzdHlsZUNsYXNzPzogc3RyaW5nO1xuXG4gIC8qKiBPcHRpb25hbCBpY29uIGluIHRoZSBoZWFkZXIgKGUuZy4gXCJwaSBwaS1pbmZvLWNpcmNsZSB0ZXh0LWJsdWUtNTAwXCIpICovXG4gIEBJbnB1dCgpIGhlYWRlckljb25DbGFzcz86IHN0cmluZztcblxuICAvKiogT3B0aW9uYWwgYm9keSBtYXggd2lkdGggLyBoZWlnaHQgKGUuZy4gXCI1MDBweFwiLCBcIjYwdmhcIikgKi9cbiAgQElucHV0KCkgYm9keVdpZHRoPzogc3RyaW5nO1xuICBASW5wdXQoKSBib2R5SGVpZ2h0Pzogc3RyaW5nO1xuXG4gIC8qKiBFbmFibGUgc2Nyb2xsIHdoZW4gYm9keSBleGNlZWRzIGdpdmVuIGhlaWdodC93aWR0aCAqL1xuICBASW5wdXQoKSBib2R5U2Nyb2xsYWJsZSA9IHRydWU7XG5cbiAgLyoqIENvbnRyb2wgZm9vdGVyIHZpc2liaWxpdHkgKGRlZmF1bHQ6IHRydWUpICovXG4gIEBJbnB1dCgpIHNob3dGb290ZXIgPSB0cnVlO1xuXG4gIEBJbnB1dCgpIG1vZGFsID0gdHJ1ZTtcbiAgQElucHV0KCkgY2xvc2FibGUgPSB0cnVlO1xuICBASW5wdXQoKSBkcmFnZ2FibGUgPSB0cnVlO1xuICBASW5wdXQoKSByZXNpemFibGUgPSB0cnVlO1xuICBASW5wdXQoKSBtYXhpbWl6YWJsZSA9IGZhbHNlO1xuICBASW5wdXQoKSBkaXNtaXNzYWJsZU1hc2sgPSBmYWxzZTtcbiAgQElucHV0KCkgY2xvc2VPbkVzY2FwZSA9IHRydWU7XG4gIEBJbnB1dCgpIGJsb2NrU2Nyb2xsID0gdHJ1ZTtcbiAgQElucHV0KCkgYnJlYWtwb2ludHM/OiB7IFtrZXk6IHN0cmluZ106IHN0cmluZyB9O1xuICBASW5wdXQoKSBwb3NpdGlvbjogRGlhbG9nUG9zaXRpb24gPSAnY2VudGVyJztcbiAgQElucHV0KCkgY29udGVudFN0eWxlPzogeyBba2V5OiBzdHJpbmddOiBhbnkgfTtcblxuICAvKiogaW50ZXJuYWwgdmlzaWJsZSBmbGFnIHVzZWQgYnkgcC1kaWFsb2cgKi9cbiAgX3Zpc2libGUgPSBmYWxzZTtcblxuICBASW5wdXQoKVxuICBnZXQgdmlzaWJsZSgpOiBib29sZWFuIHtcbiAgICByZXR1cm4gdGhpcy5fdmlzaWJsZTtcbiAgfVxuICBzZXQgdmlzaWJsZSh2OiBib29sZWFuKSB7XG4gICAgdGhpcy5fdmlzaWJsZSA9IHY7XG4gIH1cblxuICBAT3V0cHV0KCkgdmlzaWJsZUNoYW5nZSA9IG5ldyBFdmVudEVtaXR0ZXI8Ym9vbGVhbj4oKTtcblxuICAvKiogRmluYWwgY2xhc3MgYXBwbGllZCB0byBwLWRpYWxvZyAqL1xuICBnZXQgZGlhbG9nU3R5bGVDbGFzcygpOiBzdHJpbmcge1xuICAgIHJldHVybiBbXG4gICAgICAnYm9yZGVyLXJvdW5kLTN4bCcsXG4gICAgICAnc2hhZG93LTYnLFxuICAgICAgJ292ZXJmbG93LWhpZGRlbicsXG4gICAgICAncHQtZGlhbG9nLWhlYWRlci1ibHVlJywgLy8gZm9yIGhlYWRlci9mb290ZXIgY29sb3JzXG4gICAgICB0aGlzLnN0eWxlQ2xhc3MsXG4gICAgXVxuICAgICAgLmZpbHRlcihCb29sZWFuKVxuICAgICAgLmpvaW4oJyAnKTtcbiAgfVxuXG4gIC8qKiBTdHlsZSBhcHBsaWVkIHRvIHRoZSBib2R5IHdyYXBwZXIgKi9cbiAgZ2V0IGJvZHlTdHlsZSgpOiB7IFtrZXk6IHN0cmluZ106IGFueSB9IHtcbiAgICBjb25zdCBzdHlsZTogeyBba2V5OiBzdHJpbmddOiBhbnkgfSA9IHt9O1xuXG4gICAgaWYgKHRoaXMuYm9keVdpZHRoKSB7XG4gICAgICBzdHlsZVsnbWF4LXdpZHRoJ10gPSB0aGlzLmJvZHlXaWR0aDtcbiAgICB9XG5cbiAgICBpZiAodGhpcy5ib2R5SGVpZ2h0KSB7XG4gICAgICBzdHlsZVsnbWF4LWhlaWdodCddID0gdGhpcy5ib2R5SGVpZ2h0O1xuICAgICAgaWYgKHRoaXMuYm9keVNjcm9sbGFibGUpIHtcbiAgICAgICAgc3R5bGVbJ292ZXJmbG93LXknXSA9ICdhdXRvJztcbiAgICAgICAgc3R5bGVbJ292ZXJmbG93LXgnXSA9ICdhdXRvJztcbiAgICAgIH1cbiAgICB9XG5cbiAgICByZXR1cm4gc3R5bGU7XG4gIH1cblxuICBvblNob3coKTogdm9pZCB7XG4gICAgdGhpcy52aXNpYmxlQ2hhbmdlLmVtaXQodHJ1ZSk7XG4gIH1cblxuICBvbkhpZGUoKTogdm9pZCB7XG4gICAgdGhpcy52aXNpYmxlQ2hhbmdlLmVtaXQoZmFsc2UpO1xuICB9XG59XG4iLCI8cC1kaWFsb2dcbiAgWyh2aXNpYmxlKV09XCJfdmlzaWJsZVwiXG4gIFtoZWFkZXJdPVwiaGVhZGVyXCJcbiAgW21vZGFsXT1cIm1vZGFsXCJcbiAgW3N0eWxlXT1cInN0eWxlXCJcbiAgW2JyZWFrcG9pbnRzXT1cImJyZWFrcG9pbnRzXCJcbiAgW2Nsb3NhYmxlXT1cImNsb3NhYmxlXCJcbiAgW2RyYWdnYWJsZV09XCJkcmFnZ2FibGVcIlxuICBbcmVzaXphYmxlXT1cInJlc2l6YWJsZVwiXG4gIFttYXhpbWl6YWJsZV09XCJtYXhpbWl6YWJsZVwiXG4gIFtkaXNtaXNzYWJsZU1hc2tdPVwiZGlzbWlzc2FibGVNYXNrXCJcbiAgW2Nsb3NlT25Fc2NhcGVdPVwiY2xvc2VPbkVzY2FwZVwiXG4gIFtibG9ja1Njcm9sbF09XCJibG9ja1Njcm9sbFwiXG4gIFtwb3NpdGlvbl09XCJwb3NpdGlvblwiXG4gIFtjb250ZW50U3R5bGVdPVwiY29udGVudFN0eWxlXCJcbiAgW3N0eWxlQ2xhc3NdPVwiZGlhbG9nU3R5bGVDbGFzc1wiXG4gIChvblNob3cpPVwib25TaG93KClcIlxuICAob25IaWRlKT1cIm9uSGlkZSgpXCJcbj5cbiAgPCEtLSBIRUFERVIgLS0+XG4gIDxuZy10ZW1wbGF0ZSBwVGVtcGxhdGU9XCJoZWFkZXJcIj5cbiAgICA8ZGl2XG4gICAgICBjbGFzcz1cImZsZXggYWxpZ24taXRlbXMtY2VudGVyIGp1c3RpZnktY29udGVudC1iZXR3ZWVuIHctZnVsbCBweC00IHB0LTMgcGItMlwiXG4gICAgPlxuICAgICAgPGRpdiBjbGFzcz1cImZsZXggYWxpZ24taXRlbXMtY2VudGVyIGdhcC0yXCI+XG4gICAgICAgIDwhLS0gb3B0aW9uYWwgaWNvbiAtLT5cbiAgICAgICAgPGkgKm5nSWY9XCJoZWFkZXJJY29uQ2xhc3NcIiBbbmdDbGFzc109XCJoZWFkZXJJY29uQ2xhc3NcIj48L2k+XG5cbiAgICAgICAgPCEtLSBwcm9qZWN0ZWQgY3VzdG9tIGhlYWRlciAtLT5cbiAgICAgICAgPG5nLWNvbnRlbnQgc2VsZWN0PVwiW3B0RGlhbG9nSGVhZGVyXVwiPjwvbmctY29udGVudD5cblxuICAgICAgICA8IS0tIGZhbGxiYWNrIGhlYWRlciB0ZXh0IC0tPlxuICAgICAgICA8c3BhbiAqbmdJZj1cImhlYWRlclwiIGNsYXNzPVwiZm9udC1ib2xkIHRleHQtbGdcIj5cbiAgICAgICAgICB7eyBoZWFkZXIgfX1cbiAgICAgICAgPC9zcGFuPlxuICAgICAgPC9kaXY+XG4gICAgICA8IS0tIGNsb3NlIGljb24gZnJvbSBQcmltZU5HIChYKSBpcyByZW5kZXJlZCBhdXRvbWF0aWNhbGx5IC0tPlxuICAgIDwvZGl2PlxuICA8L25nLXRlbXBsYXRlPlxuXG4gIDwhLS0gQk9EWSAtLT5cbiAgPGRpdlxuICAgIGNsYXNzPVwic3VyZmFjZS01MCBweC00IHB5LTQgZmxleCBmbGV4LWNvbHVtbiBnYXAtM1wiXG4gICAgW25nU3R5bGVdPVwiYm9keVN0eWxlXCJcbiAgPlxuICAgIDxuZy1jb250ZW50IHNlbGVjdD1cIltwdERpYWxvZ0NvbnRlbnRdXCI+PC9uZy1jb250ZW50PlxuICAgIDxuZy1jb250ZW50PjwvbmctY29udGVudD5cbiAgPC9kaXY+XG5cbiAgPCEtLSBGT09URVIgKG9wdGlvbmFsKSAtLT5cbiAgPG5nLXRlbXBsYXRlIHBUZW1wbGF0ZT1cImZvb3RlclwiICpuZ0lmPVwic2hvd0Zvb3RlclwiPlxuICAgIDxkaXYgY2xhc3M9XCJzdXJmYWNlLTEwMCBweC00IHB5LTIgZmxleCBqdXN0aWZ5LWNvbnRlbnQtZW5kIGdhcC0yXCI+XG4gICAgICA8bmctY29udGVudCBzZWxlY3Q9XCJbcHREaWFsb2dGb290ZXJdXCI+PC9uZy1jb250ZW50PlxuICAgIDwvZGl2PlxuICA8L25nLXRlbXBsYXRlPlxuPC9wLWRpYWxvZz5cbiJdfQ==
|
|
@@ -1,21 +1,19 @@
|
|
|
1
1
|
import { NgModule } from '@angular/core';
|
|
2
2
|
import { CommonModule } from '@angular/common';
|
|
3
|
-
import { PTDialogComponent } from './pt-dialog.component';
|
|
4
3
|
import { DialogModule } from 'primeng/dialog';
|
|
5
|
-
import {
|
|
6
|
-
import { ConfirmDialogModule } from 'primeng/confirmdialog';
|
|
4
|
+
import { PTDialogComponent } from './pt-dialog.component';
|
|
7
5
|
import * as i0 from "@angular/core";
|
|
8
6
|
export class PTDialogModule {
|
|
9
7
|
static { this.ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "17.3.11", ngImport: i0, type: PTDialogModule, deps: [], target: i0.ɵɵFactoryTarget.NgModule }); }
|
|
10
|
-
static { this.ɵmod = i0.ɵɵngDeclareNgModule({ minVersion: "14.0.0", version: "17.3.11", ngImport: i0, type: PTDialogModule, declarations: [PTDialogComponent], imports: [CommonModule, DialogModule
|
|
11
|
-
static { this.ɵinj = i0.ɵɵngDeclareInjector({ minVersion: "12.0.0", version: "17.3.11", ngImport: i0, type: PTDialogModule, imports: [CommonModule, DialogModule
|
|
8
|
+
static { this.ɵmod = i0.ɵɵngDeclareNgModule({ minVersion: "14.0.0", version: "17.3.11", ngImport: i0, type: PTDialogModule, declarations: [PTDialogComponent], imports: [CommonModule, DialogModule], exports: [PTDialogComponent] }); }
|
|
9
|
+
static { this.ɵinj = i0.ɵɵngDeclareInjector({ minVersion: "12.0.0", version: "17.3.11", ngImport: i0, type: PTDialogModule, imports: [CommonModule, DialogModule] }); }
|
|
12
10
|
}
|
|
13
11
|
i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "17.3.11", ngImport: i0, type: PTDialogModule, decorators: [{
|
|
14
12
|
type: NgModule,
|
|
15
13
|
args: [{
|
|
16
14
|
declarations: [PTDialogComponent],
|
|
17
|
-
imports: [CommonModule, DialogModule
|
|
15
|
+
imports: [CommonModule, DialogModule],
|
|
18
16
|
exports: [PTDialogComponent],
|
|
19
17
|
}]
|
|
20
18
|
}] });
|
|
21
|
-
//# sourceMappingURL=data:application/json;base64,
|
|
19
|
+
//# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoicHQtZGlhbG9nLm1vZHVsZS5qcyIsInNvdXJjZVJvb3QiOiIiLCJzb3VyY2VzIjpbIi4uLy4uLy4uLy4uLy4uL3Byb2plY3RzL25nLXByaW1lLXRvb2xzL3NyYy9saWIvcHQtZGlhbG9nL3B0LWRpYWxvZy5tb2R1bGUudHMiXSwibmFtZXMiOltdLCJtYXBwaW5ncyI6IkFBQUEsT0FBTyxFQUFFLFFBQVEsRUFBRSxNQUFNLGVBQWUsQ0FBQztBQUN6QyxPQUFPLEVBQUUsWUFBWSxFQUFFLE1BQU0saUJBQWlCLENBQUM7QUFDL0MsT0FBTyxFQUFFLFlBQVksRUFBRSxNQUFNLGdCQUFnQixDQUFDO0FBQzlDLE9BQU8sRUFBRSxpQkFBaUIsRUFBRSxNQUFNLHVCQUF1QixDQUFDOztBQU8xRCxNQUFNLE9BQU8sY0FBYzsrR0FBZCxjQUFjO2dIQUFkLGNBQWMsaUJBSlYsaUJBQWlCLGFBQ3RCLFlBQVksRUFBRSxZQUFZLGFBQzFCLGlCQUFpQjtnSEFFaEIsY0FBYyxZQUhmLFlBQVksRUFBRSxZQUFZOzs0RkFHekIsY0FBYztrQkFMMUIsUUFBUTttQkFBQztvQkFDUixZQUFZLEVBQUUsQ0FBQyxpQkFBaUIsQ0FBQztvQkFDakMsT0FBTyxFQUFFLENBQUMsWUFBWSxFQUFFLFlBQVksQ0FBQztvQkFDckMsT0FBTyxFQUFFLENBQUMsaUJBQWlCLENBQUM7aUJBQzdCIiwic291cmNlc0NvbnRlbnQiOlsiaW1wb3J0IHsgTmdNb2R1bGUgfSBmcm9tICdAYW5ndWxhci9jb3JlJztcbmltcG9ydCB7IENvbW1vbk1vZHVsZSB9IGZyb20gJ0Bhbmd1bGFyL2NvbW1vbic7XG5pbXBvcnQgeyBEaWFsb2dNb2R1bGUgfSBmcm9tICdwcmltZW5nL2RpYWxvZyc7XG5pbXBvcnQgeyBQVERpYWxvZ0NvbXBvbmVudCB9IGZyb20gJy4vcHQtZGlhbG9nLmNvbXBvbmVudCc7XG5cbkBOZ01vZHVsZSh7XG4gIGRlY2xhcmF0aW9uczogW1BURGlhbG9nQ29tcG9uZW50XSxcbiAgaW1wb3J0czogW0NvbW1vbk1vZHVsZSwgRGlhbG9nTW9kdWxlXSxcbiAgZXhwb3J0czogW1BURGlhbG9nQ29tcG9uZW50XSxcbn0pXG5leHBvcnQgY2xhc3MgUFREaWFsb2dNb2R1bGUge31cbiJdfQ==
|
package/esm2022/lib/pt-form-builder/pt-dynamic-form-field/pt-dynamic-form-field.component.mjs
CHANGED
|
@@ -40,11 +40,11 @@ export class PTDynamicFormFieldComponent {
|
|
|
40
40
|
return field;
|
|
41
41
|
}
|
|
42
42
|
static { this.ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "17.3.11", ngImport: i0, type: PTDynamicFormFieldComponent, deps: [], target: i0.ɵɵFactoryTarget.Component }); }
|
|
43
|
-
static { this.ɵcmp = i0.ɵɵngDeclareComponent({ minVersion: "14.0.0", version: "17.3.11", type: PTDynamicFormFieldComponent, selector: "pt-dynamic-form-field", inputs: { field: "field", form: "form", inputWidth: "inputWidth" }, ngImport: i0, template: "<div\n [formGroup]=\"form\"\n class=\"form-field\"\n [ngStyle]=\"{\n width:\n field.type !== FormInputTypeEnum.CHECKBOX &&\n field.type !== FormInputTypeEnum.SWITCH\n ? field.width || inputWidth\n : 'auto'\n }\"\n>\n <ng-container [ngSwitch]=\"field.type\">\n <pt-text-input\n *ngSwitchCase=\"FormInputTypeEnum.TEXT\"\n [formGroup]=\"form\"\n [formField]=\"asTextField(field)\"\n ></pt-text-input>\n <pt-number-input\n *ngSwitchCase=\"FormInputTypeEnum.NUMBER\"\n [formGroup]=\"form\"\n [formField]=\"asNumberField(field)\"\n ></pt-number-input>\n <pt-number-input\n *ngSwitchCase=\"FormInputTypeEnum.AMOUNT\"\n [formGroup]=\"form\"\n [formField]=\"asNumberField(field)\"\n ></pt-number-input>\n <pt-text-area-input\n *ngSwitchCase=\"FormInputTypeEnum.TEXTAREA\"\n [formGroup]=\"form\"\n [formField]=\"asTextAreaField(field)\"\n ></pt-text-area-input>\n <pt-date-input\n *ngSwitchCase=\"FormInputTypeEnum.DATE\"\n [formGroup]=\"form\"\n [formField]=\"asDateField(field)\"\n ></pt-date-input>\n <pt-multi-select\n *ngSwitchCase=\"FormInputTypeEnum.MULTISELECT\"\n [formGroup]=\"form\"\n [formField]=\"asMultiSelectField(field)\"\n ></pt-multi-select>\n <pt-dropdown\n *ngSwitchCase=\"FormInputTypeEnum.SELECT\"\n [formGroup]=\"form\"\n [formField]=\"asSelectField(field)\"\n ></pt-dropdown>\n <pt-check-box-input\n *ngSwitchCase=\"FormInputTypeEnum.CHECKBOX\"\n [formGroup]=\"form\"\n [formField]=\"asCheckboxField(field)\"\n ></pt-check-box-input>\n <pt-switch-input\n *ngSwitchCase=\"FormInputTypeEnum.SWITCH\"\n [formGroup]=\"form\"\n [formField]=\"asSwitchField(field)\"\n ></pt-switch-input>\n </ng-container>\n</div>\n", styles: [".form-field{margin-bottom:1rem}.form-field label{display:block;margin-bottom:.5rem;font-weight:700}\n"], dependencies: [{ kind: "directive", type: i1.NgStyle, selector: "[ngStyle]", inputs: ["ngStyle"] }, { kind: "directive", type: i1.NgSwitch, selector: "[ngSwitch]", inputs: ["ngSwitch"] }, { kind: "directive", type: i1.NgSwitchCase, selector: "[ngSwitchCase]", inputs: ["ngSwitchCase"] }, { kind: "directive", type: i2.NgControlStatusGroup, selector: "[formGroupName],[formArrayName],[ngModelGroup],[formGroup],form:not([ngNoForm]),[ngForm]" }, { kind: "directive", type: i2.FormGroupDirective, selector: "[formGroup]", inputs: ["formGroup"], outputs: ["ngSubmit"], exportAs: ["ngForm"] }, { kind: "component", type: i3.PTCheckBoxInputComponent, selector: "pt-check-box-input", inputs: ["formGroup", "formField"] }, { kind: "component", type: i4.PTDateInputComponent, selector: "pt-date-input", inputs: ["formGroup", "formField"] }, { kind: "component", type: i5.PTNumberInputComponent, selector: "pt-number-input", inputs: ["formGroup", "formField"] }, { kind: "component", type: i6.PTSwitchInputComponent, selector: "pt-switch-input", inputs: ["formGroup", "formField"] }, { kind: "component", type: i7.PTTextAreaInputComponent, selector: "pt-text-area-input", inputs: ["formGroup", "formField"] }, { kind: "component", type: i8.PTTextInputComponent, selector: "pt-text-input", inputs: ["formGroup", "formField"] }, { kind: "component", type: i9.PTDropdownComponent, selector: "pt-dropdown", inputs: ["formGroup", "formField"] }, { kind: "component", type: i10.PTMultiSelectComponent, selector: "pt-multi-select", inputs: ["formGroup", "formField"] }] }); }
|
|
43
|
+
static { this.ɵcmp = i0.ɵɵngDeclareComponent({ minVersion: "14.0.0", version: "17.3.11", type: PTDynamicFormFieldComponent, selector: "pt-dynamic-form-field", inputs: { field: "field", form: "form", inputWidth: "inputWidth" }, ngImport: i0, template: "<div\n [formGroup]=\"form\"\n class=\"form-field\"\n [ngStyle]=\"{\n width:\n field.type !== FormInputTypeEnum.CHECKBOX &&\n field.type !== FormInputTypeEnum.SWITCH\n ? field.width || inputWidth\n : 'auto'\n }\"\n>\n <ng-container [ngSwitch]=\"field.type\">\n <!-- TEXT -->\n <pt-text-input\n *ngSwitchCase=\"FormInputTypeEnum.TEXT\"\n [formGroup]=\"form\"\n [formField]=\"asTextField(field)\"\n ></pt-text-input>\n\n <!-- EMAIL (NEW) -->\n <pt-text-input\n *ngSwitchCase=\"FormInputTypeEnum.EMAIL\"\n [formGroup]=\"form\"\n [formField]=\"asTextField(field)\"\n ></pt-text-input>\n\n <!-- NUMBER -->\n <pt-number-input\n *ngSwitchCase=\"FormInputTypeEnum.NUMBER\"\n [formGroup]=\"form\"\n [formField]=\"asNumberField(field)\"\n ></pt-number-input>\n\n <!-- AMOUNT -->\n <pt-number-input\n *ngSwitchCase=\"FormInputTypeEnum.AMOUNT\"\n [formGroup]=\"form\"\n [formField]=\"asNumberField(field)\"\n ></pt-number-input>\n\n <!-- TEXTAREA -->\n <pt-text-area-input\n *ngSwitchCase=\"FormInputTypeEnum.TEXTAREA\"\n [formGroup]=\"form\"\n [formField]=\"asTextAreaField(field)\"\n ></pt-text-area-input>\n\n <!-- DATE -->\n <pt-date-input\n *ngSwitchCase=\"FormInputTypeEnum.DATE\"\n [formGroup]=\"form\"\n [formField]=\"asDateField(field)\"\n ></pt-date-input>\n\n <!-- MULTISELECT -->\n <pt-multi-select\n *ngSwitchCase=\"FormInputTypeEnum.MULTISELECT\"\n [formGroup]=\"form\"\n [formField]=\"asMultiSelectField(field)\"\n ></pt-multi-select>\n\n <!-- SELECT -->\n <pt-dropdown\n *ngSwitchCase=\"FormInputTypeEnum.SELECT\"\n [formGroup]=\"form\"\n [formField]=\"asSelectField(field)\"\n ></pt-dropdown>\n\n <!-- CHECKBOX -->\n <pt-check-box-input\n *ngSwitchCase=\"FormInputTypeEnum.CHECKBOX\"\n [formGroup]=\"form\"\n [formField]=\"asCheckboxField(field)\"\n ></pt-check-box-input>\n\n <!-- SWITCH -->\n <pt-switch-input\n *ngSwitchCase=\"FormInputTypeEnum.SWITCH\"\n [formGroup]=\"form\"\n [formField]=\"asSwitchField(field)\"\n ></pt-switch-input>\n </ng-container>\n</div>\n", styles: [".form-field{margin-bottom:1rem}.form-field label{display:block;margin-bottom:.5rem;font-weight:700}\n"], dependencies: [{ kind: "directive", type: i1.NgStyle, selector: "[ngStyle]", inputs: ["ngStyle"] }, { kind: "directive", type: i1.NgSwitch, selector: "[ngSwitch]", inputs: ["ngSwitch"] }, { kind: "directive", type: i1.NgSwitchCase, selector: "[ngSwitchCase]", inputs: ["ngSwitchCase"] }, { kind: "directive", type: i2.NgControlStatusGroup, selector: "[formGroupName],[formArrayName],[ngModelGroup],[formGroup],form:not([ngNoForm]),[ngForm]" }, { kind: "directive", type: i2.FormGroupDirective, selector: "[formGroup]", inputs: ["formGroup"], outputs: ["ngSubmit"], exportAs: ["ngForm"] }, { kind: "component", type: i3.PTCheckBoxInputComponent, selector: "pt-check-box-input", inputs: ["formGroup", "formField"] }, { kind: "component", type: i4.PTDateInputComponent, selector: "pt-date-input", inputs: ["formGroup", "formField"] }, { kind: "component", type: i5.PTNumberInputComponent, selector: "pt-number-input", inputs: ["formGroup", "formField"] }, { kind: "component", type: i6.PTSwitchInputComponent, selector: "pt-switch-input", inputs: ["formGroup", "formField"] }, { kind: "component", type: i7.PTTextAreaInputComponent, selector: "pt-text-area-input", inputs: ["formGroup", "formField"] }, { kind: "component", type: i8.PTTextInputComponent, selector: "pt-text-input", inputs: ["formGroup", "formField"] }, { kind: "component", type: i9.PTDropdownComponent, selector: "pt-dropdown", inputs: ["formGroup", "formField"] }, { kind: "component", type: i10.PTMultiSelectComponent, selector: "pt-multi-select", inputs: ["formGroup", "formField"] }] }); }
|
|
44
44
|
}
|
|
45
45
|
i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "17.3.11", ngImport: i0, type: PTDynamicFormFieldComponent, decorators: [{
|
|
46
46
|
type: Component,
|
|
47
|
-
args: [{ selector: 'pt-dynamic-form-field', template: "<div\n [formGroup]=\"form\"\n class=\"form-field\"\n [ngStyle]=\"{\n width:\n field.type !== FormInputTypeEnum.CHECKBOX &&\n field.type !== FormInputTypeEnum.SWITCH\n ? field.width || inputWidth\n : 'auto'\n }\"\n>\n <ng-container [ngSwitch]=\"field.type\">\n <pt-text-input\n *ngSwitchCase=\"FormInputTypeEnum.TEXT\"\n [formGroup]=\"form\"\n [formField]=\"asTextField(field)\"\n ></pt-text-input>\n <pt-number-input\n *ngSwitchCase=\"FormInputTypeEnum.NUMBER\"\n [formGroup]=\"form\"\n [formField]=\"asNumberField(field)\"\n ></pt-number-input>\n <pt-number-input\n *ngSwitchCase=\"FormInputTypeEnum.AMOUNT\"\n [formGroup]=\"form\"\n [formField]=\"asNumberField(field)\"\n ></pt-number-input>\n <pt-text-area-input\n *ngSwitchCase=\"FormInputTypeEnum.TEXTAREA\"\n [formGroup]=\"form\"\n [formField]=\"asTextAreaField(field)\"\n ></pt-text-area-input>\n <pt-date-input\n *ngSwitchCase=\"FormInputTypeEnum.DATE\"\n [formGroup]=\"form\"\n [formField]=\"asDateField(field)\"\n ></pt-date-input>\n <pt-multi-select\n *ngSwitchCase=\"FormInputTypeEnum.MULTISELECT\"\n [formGroup]=\"form\"\n [formField]=\"asMultiSelectField(field)\"\n ></pt-multi-select>\n <pt-dropdown\n *ngSwitchCase=\"FormInputTypeEnum.SELECT\"\n [formGroup]=\"form\"\n [formField]=\"asSelectField(field)\"\n ></pt-dropdown>\n <pt-check-box-input\n *ngSwitchCase=\"FormInputTypeEnum.CHECKBOX\"\n [formGroup]=\"form\"\n [formField]=\"asCheckboxField(field)\"\n ></pt-check-box-input>\n <pt-switch-input\n *ngSwitchCase=\"FormInputTypeEnum.SWITCH\"\n [formGroup]=\"form\"\n [formField]=\"asSwitchField(field)\"\n ></pt-switch-input>\n </ng-container>\n</div>\n", styles: [".form-field{margin-bottom:1rem}.form-field label{display:block;margin-bottom:.5rem;font-weight:700}\n"] }]
|
|
47
|
+
args: [{ selector: 'pt-dynamic-form-field', template: "<div\n [formGroup]=\"form\"\n class=\"form-field\"\n [ngStyle]=\"{\n width:\n field.type !== FormInputTypeEnum.CHECKBOX &&\n field.type !== FormInputTypeEnum.SWITCH\n ? field.width || inputWidth\n : 'auto'\n }\"\n>\n <ng-container [ngSwitch]=\"field.type\">\n <!-- TEXT -->\n <pt-text-input\n *ngSwitchCase=\"FormInputTypeEnum.TEXT\"\n [formGroup]=\"form\"\n [formField]=\"asTextField(field)\"\n ></pt-text-input>\n\n <!-- EMAIL (NEW) -->\n <pt-text-input\n *ngSwitchCase=\"FormInputTypeEnum.EMAIL\"\n [formGroup]=\"form\"\n [formField]=\"asTextField(field)\"\n ></pt-text-input>\n\n <!-- NUMBER -->\n <pt-number-input\n *ngSwitchCase=\"FormInputTypeEnum.NUMBER\"\n [formGroup]=\"form\"\n [formField]=\"asNumberField(field)\"\n ></pt-number-input>\n\n <!-- AMOUNT -->\n <pt-number-input\n *ngSwitchCase=\"FormInputTypeEnum.AMOUNT\"\n [formGroup]=\"form\"\n [formField]=\"asNumberField(field)\"\n ></pt-number-input>\n\n <!-- TEXTAREA -->\n <pt-text-area-input\n *ngSwitchCase=\"FormInputTypeEnum.TEXTAREA\"\n [formGroup]=\"form\"\n [formField]=\"asTextAreaField(field)\"\n ></pt-text-area-input>\n\n <!-- DATE -->\n <pt-date-input\n *ngSwitchCase=\"FormInputTypeEnum.DATE\"\n [formGroup]=\"form\"\n [formField]=\"asDateField(field)\"\n ></pt-date-input>\n\n <!-- MULTISELECT -->\n <pt-multi-select\n *ngSwitchCase=\"FormInputTypeEnum.MULTISELECT\"\n [formGroup]=\"form\"\n [formField]=\"asMultiSelectField(field)\"\n ></pt-multi-select>\n\n <!-- SELECT -->\n <pt-dropdown\n *ngSwitchCase=\"FormInputTypeEnum.SELECT\"\n [formGroup]=\"form\"\n [formField]=\"asSelectField(field)\"\n ></pt-dropdown>\n\n <!-- CHECKBOX -->\n <pt-check-box-input\n *ngSwitchCase=\"FormInputTypeEnum.CHECKBOX\"\n [formGroup]=\"form\"\n [formField]=\"asCheckboxField(field)\"\n ></pt-check-box-input>\n\n <!-- SWITCH -->\n <pt-switch-input\n *ngSwitchCase=\"FormInputTypeEnum.SWITCH\"\n [formGroup]=\"form\"\n [formField]=\"asSwitchField(field)\"\n ></pt-switch-input>\n </ng-container>\n</div>\n", styles: [".form-field{margin-bottom:1rem}.form-field label{display:block;margin-bottom:.5rem;font-weight:700}\n"] }]
|
|
48
48
|
}], propDecorators: { field: [{
|
|
49
49
|
type: Input
|
|
50
50
|
}], form: [{
|
|
@@ -52,4 +52,4 @@ i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "17.3.11", ngImpo
|
|
|
52
52
|
}], inputWidth: [{
|
|
53
53
|
type: Input
|
|
54
54
|
}] } });
|
|
55
|
-
//# sourceMappingURL=data:application/json;base64,
|
|
55
|
+
//# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoicHQtZHluYW1pYy1mb3JtLWZpZWxkLmNvbXBvbmVudC5qcyIsInNvdXJjZVJvb3QiOiIiLCJzb3VyY2VzIjpbIi4uLy4uLy4uLy4uLy4uLy4uL3Byb2plY3RzL25nLXByaW1lLXRvb2xzL3NyYy9saWIvcHQtZm9ybS1idWlsZGVyL3B0LWR5bmFtaWMtZm9ybS1maWVsZC9wdC1keW5hbWljLWZvcm0tZmllbGQuY29tcG9uZW50LnRzIiwiLi4vLi4vLi4vLi4vLi4vLi4vcHJvamVjdHMvbmctcHJpbWUtdG9vbHMvc3JjL2xpYi9wdC1mb3JtLWJ1aWxkZXIvcHQtZHluYW1pYy1mb3JtLWZpZWxkL3B0LWR5bmFtaWMtZm9ybS1maWVsZC5jb21wb25lbnQuaHRtbCJdLCJuYW1lcyI6W10sIm1hcHBpbmdzIjoiQUFBQSxPQUFPLEVBQUUsU0FBUyxFQUFFLEtBQUssRUFBRSxNQUFNLGVBQWUsQ0FBQztBQUdqRCxPQUFPLEVBQUUsaUJBQWlCLEVBQUUsTUFBTSxhQUFhLENBQUM7Ozs7Ozs7Ozs7OztBQWVoRCxNQUFNLE9BQU8sMkJBQTJCO0lBTHhDO1FBVUUsc0JBQWlCLEdBQUcsaUJBQWlCLENBQUM7S0FpQ3ZDO0lBL0JDLFdBQVcsQ0FBQyxLQUFnQjtRQUMxQixPQUFPLEtBQXNCLENBQUM7SUFDaEMsQ0FBQztJQUVELGFBQWEsQ0FBQyxLQUFnQjtRQUM1QixPQUFPLEtBQXdCLENBQUM7SUFDbEMsQ0FBQztJQUVELGVBQWUsQ0FBQyxLQUFnQjtRQUM5QixPQUFPLEtBQTBCLENBQUM7SUFDcEMsQ0FBQztJQUVELFdBQVcsQ0FBQyxLQUFnQjtRQUMxQixPQUFPLEtBQXNCLENBQUM7SUFDaEMsQ0FBQztJQUVELGFBQWEsQ0FBQyxLQUFnQjtRQUM1QixPQUFPLEtBQTBCLENBQUM7SUFDcEMsQ0FBQztJQUVELGtCQUFrQixDQUFDLEtBQWdCO1FBQ2pDLE9BQU8sS0FBNkIsQ0FBQztJQUN2QyxDQUFDO0lBRUQsZUFBZSxDQUFDLEtBQWdCO1FBQzlCLE9BQU8sS0FBMEIsQ0FBQztJQUNwQyxDQUFDO0lBRUQsYUFBYSxDQUFDLEtBQWdCO1FBQzVCLE9BQU8sS0FBd0IsQ0FBQztJQUNsQyxDQUFDOytHQXJDVSwyQkFBMkI7bUdBQTNCLDJCQUEyQixpSUNsQnhDLHVzRUFtRkE7OzRGRGpFYSwyQkFBMkI7a0JBTHZDLFNBQVM7K0JBQ0UsdUJBQXVCOzhCQUt4QixLQUFLO3NCQUFiLEtBQUs7Z0JBQ0csSUFBSTtzQkFBWixLQUFLO2dCQUNHLFVBQVU7c0JBQWxCLEtBQUsiLCJzb3VyY2VzQ29udGVudCI6WyJpbXBvcnQgeyBDb21wb25lbnQsIElucHV0IH0gZnJvbSAnQGFuZ3VsYXIvY29yZSc7XG5pbXBvcnQgeyBGb3JtR3JvdXAgfSBmcm9tICdAYW5ndWxhci9mb3Jtcyc7XG5pbXBvcnQgeyBGb3JtRmllbGQgfSBmcm9tICcuLi8uLi9tb2RlbHMnO1xuaW1wb3J0IHsgRm9ybUlucHV0VHlwZUVudW0gfSBmcm9tICcuLi8uLi9lbnVtcyc7XG5pbXBvcnQgeyBGb3JtVGV4dEZpZWxkIH0gZnJvbSAnLi4vLi4vbW9kZWxzL2Zvcm0tdGV4dC1maWVsZC5tb2RlbCc7XG5pbXBvcnQgeyBGb3JtVGV4dEFyZWFGaWVsZCB9IGZyb20gJy4uLy4uL21vZGVscy9mb3JtLXRleHQtYXJlYS1maWVsZC5tb2RlbCc7XG5pbXBvcnQgeyBGb3JtTXVsdGlTZWxlY3RGaWVsZCB9IGZyb20gJy4uLy4uL21vZGVscy9mb3JtLW11bHRpLXNlbGVjdC5tb2RlbCc7XG5pbXBvcnQgeyBGb3JtRHJvcGRvd25GaWVsZCB9IGZyb20gJy4uLy4uL21vZGVscy9mb3JtLWRyb3AtZG93bi1maWVsZC5tb2RlbCc7XG5pbXBvcnQgeyBGb3JtU3dpdGNoRmllbGQgfSBmcm9tICcuLi8uLi9tb2RlbHMvZm9ybS1zd2l0Y2gtZmllbGQubW9kZWwnO1xuaW1wb3J0IHsgRm9ybU51bWJlckZpZWxkIH0gZnJvbSAnLi4vLi4vbW9kZWxzL2Zvcm0tbnVtYmVyLWZpZWxkLm1vZGVsJztcbmltcG9ydCB7IEZvcm1EYXRlRmllbGQgfSBmcm9tICcuLi8uLi9tb2RlbHMvZm9ybS1kYXRlLWZpZWxkLm1vZGVsJztcbmltcG9ydCB7IEZvcm1DaGVja0JveEZpZWxkIH0gZnJvbSAnLi4vLi4vbW9kZWxzL2Zvcm0tY2hlY2stZmllbGQubW9kZWwnO1xuXG5AQ29tcG9uZW50KHtcbiAgc2VsZWN0b3I6ICdwdC1keW5hbWljLWZvcm0tZmllbGQnLFxuICB0ZW1wbGF0ZVVybDogJy4vcHQtZHluYW1pYy1mb3JtLWZpZWxkLmNvbXBvbmVudC5odG1sJyxcbiAgc3R5bGVVcmxzOiBbJy4vcHQtZHluYW1pYy1mb3JtLWZpZWxkLmNvbXBvbmVudC5jc3MnXSxcbn0pXG5leHBvcnQgY2xhc3MgUFREeW5hbWljRm9ybUZpZWxkQ29tcG9uZW50IHtcbiAgQElucHV0KCkgZmllbGQhOiBGb3JtRmllbGQ7XG4gIEBJbnB1dCgpIGZvcm0hOiBGb3JtR3JvdXA7XG4gIEBJbnB1dCgpIGlucHV0V2lkdGghOiBzdHJpbmc7XG5cbiAgRm9ybUlucHV0VHlwZUVudW0gPSBGb3JtSW5wdXRUeXBlRW51bTtcblxuICBhc1RleHRGaWVsZChmaWVsZDogRm9ybUZpZWxkKTogRm9ybVRleHRGaWVsZCB7XG4gICAgcmV0dXJuIGZpZWxkIGFzIEZvcm1UZXh0RmllbGQ7XG4gIH1cblxuICBhc051bWJlckZpZWxkKGZpZWxkOiBGb3JtRmllbGQpOiBGb3JtTnVtYmVyRmllbGQge1xuICAgIHJldHVybiBmaWVsZCBhcyBGb3JtTnVtYmVyRmllbGQ7XG4gIH1cblxuICBhc1RleHRBcmVhRmllbGQoZmllbGQ6IEZvcm1GaWVsZCk6IEZvcm1UZXh0QXJlYUZpZWxkIHtcbiAgICByZXR1cm4gZmllbGQgYXMgRm9ybVRleHRBcmVhRmllbGQ7XG4gIH1cblxuICBhc0RhdGVGaWVsZChmaWVsZDogRm9ybUZpZWxkKTogRm9ybURhdGVGaWVsZCB7XG4gICAgcmV0dXJuIGZpZWxkIGFzIEZvcm1EYXRlRmllbGQ7XG4gIH1cblxuICBhc1NlbGVjdEZpZWxkKGZpZWxkOiBGb3JtRmllbGQpOiBGb3JtRHJvcGRvd25GaWVsZCB7XG4gICAgcmV0dXJuIGZpZWxkIGFzIEZvcm1Ecm9wZG93bkZpZWxkO1xuICB9XG5cbiAgYXNNdWx0aVNlbGVjdEZpZWxkKGZpZWxkOiBGb3JtRmllbGQpOiBGb3JtTXVsdGlTZWxlY3RGaWVsZCB7XG4gICAgcmV0dXJuIGZpZWxkIGFzIEZvcm1NdWx0aVNlbGVjdEZpZWxkO1xuICB9XG5cbiAgYXNDaGVja2JveEZpZWxkKGZpZWxkOiBGb3JtRmllbGQpOiBGb3JtQ2hlY2tCb3hGaWVsZCB7XG4gICAgcmV0dXJuIGZpZWxkIGFzIEZvcm1DaGVja0JveEZpZWxkO1xuICB9XG5cbiAgYXNTd2l0Y2hGaWVsZChmaWVsZDogRm9ybUZpZWxkKTogRm9ybVN3aXRjaEZpZWxkIHtcbiAgICByZXR1cm4gZmllbGQgYXMgRm9ybVN3aXRjaEZpZWxkO1xuICB9XG59XG4iLCI8ZGl2XG4gIFtmb3JtR3JvdXBdPVwiZm9ybVwiXG4gIGNsYXNzPVwiZm9ybS1maWVsZFwiXG4gIFtuZ1N0eWxlXT1cIntcbiAgICB3aWR0aDpcbiAgICAgIGZpZWxkLnR5cGUgIT09IEZvcm1JbnB1dFR5cGVFbnVtLkNIRUNLQk9YICYmXG4gICAgICBmaWVsZC50eXBlICE9PSBGb3JtSW5wdXRUeXBlRW51bS5TV0lUQ0hcbiAgICAgICAgPyBmaWVsZC53aWR0aCB8fCBpbnB1dFdpZHRoXG4gICAgICAgIDogJ2F1dG8nXG4gIH1cIlxuPlxuICA8bmctY29udGFpbmVyIFtuZ1N3aXRjaF09XCJmaWVsZC50eXBlXCI+XG4gICAgPCEtLSBURVhUIC0tPlxuICAgIDxwdC10ZXh0LWlucHV0XG4gICAgICAqbmdTd2l0Y2hDYXNlPVwiRm9ybUlucHV0VHlwZUVudW0uVEVYVFwiXG4gICAgICBbZm9ybUdyb3VwXT1cImZvcm1cIlxuICAgICAgW2Zvcm1GaWVsZF09XCJhc1RleHRGaWVsZChmaWVsZClcIlxuICAgID48L3B0LXRleHQtaW5wdXQ+XG5cbiAgICA8IS0tIEVNQUlMIChORVcpIC0tPlxuICAgIDxwdC10ZXh0LWlucHV0XG4gICAgICAqbmdTd2l0Y2hDYXNlPVwiRm9ybUlucHV0VHlwZUVudW0uRU1BSUxcIlxuICAgICAgW2Zvcm1Hcm91cF09XCJmb3JtXCJcbiAgICAgIFtmb3JtRmllbGRdPVwiYXNUZXh0RmllbGQoZmllbGQpXCJcbiAgICA+PC9wdC10ZXh0LWlucHV0PlxuXG4gICAgPCEtLSBOVU1CRVIgLS0+XG4gICAgPHB0LW51bWJlci1pbnB1dFxuICAgICAgKm5nU3dpdGNoQ2FzZT1cIkZvcm1JbnB1dFR5cGVFbnVtLk5VTUJFUlwiXG4gICAgICBbZm9ybUdyb3VwXT1cImZvcm1cIlxuICAgICAgW2Zvcm1GaWVsZF09XCJhc051bWJlckZpZWxkKGZpZWxkKVwiXG4gICAgPjwvcHQtbnVtYmVyLWlucHV0PlxuXG4gICAgPCEtLSBBTU9VTlQgLS0+XG4gICAgPHB0LW51bWJlci1pbnB1dFxuICAgICAgKm5nU3dpdGNoQ2FzZT1cIkZvcm1JbnB1dFR5cGVFbnVtLkFNT1VOVFwiXG4gICAgICBbZm9ybUdyb3VwXT1cImZvcm1cIlxuICAgICAgW2Zvcm1GaWVsZF09XCJhc051bWJlckZpZWxkKGZpZWxkKVwiXG4gICAgPjwvcHQtbnVtYmVyLWlucHV0PlxuXG4gICAgPCEtLSBURVhUQVJFQSAtLT5cbiAgICA8cHQtdGV4dC1hcmVhLWlucHV0XG4gICAgICAqbmdTd2l0Y2hDYXNlPVwiRm9ybUlucHV0VHlwZUVudW0uVEVYVEFSRUFcIlxuICAgICAgW2Zvcm1Hcm91cF09XCJmb3JtXCJcbiAgICAgIFtmb3JtRmllbGRdPVwiYXNUZXh0QXJlYUZpZWxkKGZpZWxkKVwiXG4gICAgPjwvcHQtdGV4dC1hcmVhLWlucHV0PlxuXG4gICAgPCEtLSBEQVRFIC0tPlxuICAgIDxwdC1kYXRlLWlucHV0XG4gICAgICAqbmdTd2l0Y2hDYXNlPVwiRm9ybUlucHV0VHlwZUVudW0uREFURVwiXG4gICAgICBbZm9ybUdyb3VwXT1cImZvcm1cIlxuICAgICAgW2Zvcm1GaWVsZF09XCJhc0RhdGVGaWVsZChmaWVsZClcIlxuICAgID48L3B0LWRhdGUtaW5wdXQ+XG5cbiAgICA8IS0tIE1VTFRJU0VMRUNUIC0tPlxuICAgIDxwdC1tdWx0aS1zZWxlY3RcbiAgICAgICpuZ1N3aXRjaENhc2U9XCJGb3JtSW5wdXRUeXBlRW51bS5NVUxUSVNFTEVDVFwiXG4gICAgICBbZm9ybUdyb3VwXT1cImZvcm1cIlxuICAgICAgW2Zvcm1GaWVsZF09XCJhc011bHRpU2VsZWN0RmllbGQoZmllbGQpXCJcbiAgICA+PC9wdC1tdWx0aS1zZWxlY3Q+XG5cbiAgICA8IS0tIFNFTEVDVCAtLT5cbiAgICA8cHQtZHJvcGRvd25cbiAgICAgICpuZ1N3aXRjaENhc2U9XCJGb3JtSW5wdXRUeXBlRW51bS5TRUxFQ1RcIlxuICAgICAgW2Zvcm1Hcm91cF09XCJmb3JtXCJcbiAgICAgIFtmb3JtRmllbGRdPVwiYXNTZWxlY3RGaWVsZChmaWVsZClcIlxuICAgID48L3B0LWRyb3Bkb3duPlxuXG4gICAgPCEtLSBDSEVDS0JPWCAtLT5cbiAgICA8cHQtY2hlY2stYm94LWlucHV0XG4gICAgICAqbmdTd2l0Y2hDYXNlPVwiRm9ybUlucHV0VHlwZUVudW0uQ0hFQ0tCT1hcIlxuICAgICAgW2Zvcm1Hcm91cF09XCJmb3JtXCJcbiAgICAgIFtmb3JtRmllbGRdPVwiYXNDaGVja2JveEZpZWxkKGZpZWxkKVwiXG4gICAgPjwvcHQtY2hlY2stYm94LWlucHV0PlxuXG4gICAgPCEtLSBTV0lUQ0ggLS0+XG4gICAgPHB0LXN3aXRjaC1pbnB1dFxuICAgICAgKm5nU3dpdGNoQ2FzZT1cIkZvcm1JbnB1dFR5cGVFbnVtLlNXSVRDSFwiXG4gICAgICBbZm9ybUdyb3VwXT1cImZvcm1cIlxuICAgICAgW2Zvcm1GaWVsZF09XCJhc1N3aXRjaEZpZWxkKGZpZWxkKVwiXG4gICAgPjwvcHQtc3dpdGNoLWlucHV0PlxuICA8L25nLWNvbnRhaW5lcj5cbjwvZGl2PlxuIl19
|