pdm-ui-kit 0.1.29 → 0.1.31

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.
@@ -45,9 +45,17 @@ export class PdmButtonGroupComponent {
45
45
  '[&>pdm-select:first-child>select]:!rounded-l-md',
46
46
  '[&>pdm-select:last-child>select]:!rounded-r-md',
47
47
  '[&>pdm-select>select]:shadow-none',
48
+ '[&>pdm-select>div>button]:!rounded-none',
49
+ '[&>pdm-select:first-child>div>button]:!rounded-l-md',
50
+ '[&>pdm-select:last-child>div>button]:!rounded-r-md',
51
+ '[&>pdm-select:not(:first-child)>div>button]:!rounded-l-none',
52
+ '[&>pdm-select:not(:last-child)>div>button]:!rounded-r-none',
53
+ '[&>pdm-select:not(:first-child)>div>button]:!border-l-0',
54
+ '[&>pdm-select>div>button]:shadow-none',
48
55
  '[&>pdm-button>button]:!rounded-none',
49
56
  '[&>pdm-button:first-child>button]:!rounded-l-md',
50
57
  '[&>pdm-button:last-child>button]:!rounded-r-md',
58
+ '[&>pdm-button:not(:first-child)>button]:!border-l-0',
51
59
  '[&>pdm-input>div>input]:!rounded-none',
52
60
  '[&>pdm-input:first-child>div>input]:!rounded-l-md',
53
61
  '[&>pdm-input:last-child>div>input]:!rounded-r-md',
@@ -65,10 +73,12 @@ export class PdmButtonGroupComponent {
65
73
  '[&>pdm-tooltip>span>pdm-button>button]:!rounded-none',
66
74
  '[&>pdm-tooltip:first-child>span>pdm-button>button]:!rounded-l-md',
67
75
  '[&>pdm-tooltip:last-child>span>pdm-button>button]:!rounded-r-md',
76
+ '[&>pdm-tooltip:not(:first-child)>span>pdm-button>button]:!border-l-0',
68
77
  '[&>pdm-tooltip>span>pdm-button>button]:shadow-none',
69
78
  '[&>pdm-tooltip>span>button]:!rounded-none',
70
79
  '[&>pdm-tooltip:first-child>span>button]:!rounded-l-md',
71
80
  '[&>pdm-tooltip:last-child>span>button]:!rounded-r-md',
81
+ '[&>pdm-tooltip:not(:first-child)>span>button]:!border-l-0',
72
82
  '[&>pdm-tooltip>span>button]:shadow-none',
73
83
  '[&>pdm-tooltip>span>pdm-input>div>input]:!rounded-none',
74
84
  '[&>pdm-tooltip:first-child>span>pdm-input>div>input]:!rounded-l-md',
@@ -85,6 +95,13 @@ export class PdmButtonGroupComponent {
85
95
  '[&>pdm-tooltip:first-child>span>pdm-select>select]:!rounded-l-md',
86
96
  '[&>pdm-tooltip:last-child>span>pdm-select>select]:!rounded-r-md',
87
97
  '[&>pdm-tooltip>span>pdm-select>select]:shadow-none',
98
+ '[&>pdm-tooltip>span>pdm-select>div>button]:!rounded-none',
99
+ '[&>pdm-tooltip:first-child>span>pdm-select>div>button]:!rounded-l-md',
100
+ '[&>pdm-tooltip:last-child>span>pdm-select>div>button]:!rounded-r-md',
101
+ '[&>pdm-tooltip:not(:first-child)>span>pdm-select>div>button]:!rounded-l-none',
102
+ '[&>pdm-tooltip:not(:last-child)>span>pdm-select>div>button]:!rounded-r-none',
103
+ '[&>pdm-tooltip:not(:first-child)>span>pdm-select>div>button]:!border-l-0',
104
+ '[&>pdm-tooltip>span>pdm-select>div>button]:shadow-none',
88
105
  '[&>pdm-tooltip>span>select]:!rounded-none',
89
106
  '[&>pdm-tooltip:first-child>span>select]:!rounded-l-md',
90
107
  '[&>pdm-tooltip:last-child>span>select]:!rounded-r-md',
@@ -113,9 +130,17 @@ export class PdmButtonGroupComponent {
113
130
  '[&>pdm-select:first-child>select]:!rounded-t-md',
114
131
  '[&>pdm-select:last-child>select]:!rounded-b-md',
115
132
  '[&>pdm-select>select]:shadow-none',
133
+ '[&>pdm-select>div>button]:!rounded-none',
134
+ '[&>pdm-select:first-child>div>button]:!rounded-t-md',
135
+ '[&>pdm-select:last-child>div>button]:!rounded-b-md',
136
+ '[&>pdm-select:not(:first-child)>div>button]:!rounded-t-none',
137
+ '[&>pdm-select:not(:last-child)>div>button]:!rounded-b-none',
138
+ '[&>pdm-select:not(:first-child)>div>button]:!border-t-0',
139
+ '[&>pdm-select>div>button]:shadow-none',
116
140
  '[&>pdm-input>div>input]:bg-background',
117
141
  '[&>pdm-input>div>input]:shadow-none',
118
142
  '[&>pdm-button>button]:shadow-none',
143
+ '[&>pdm-button:not(:first-child)>button]:!border-t-0',
119
144
  '[&>pdm-tooltip>span>*]:rounded-none',
120
145
  '[&>pdm-tooltip:first-child>span>*]:rounded-t-md',
121
146
  '[&>pdm-tooltip:last-child>span>*]:rounded-b-md',
@@ -123,10 +148,12 @@ export class PdmButtonGroupComponent {
123
148
  '[&>pdm-tooltip>span>pdm-button>button]:!rounded-none',
124
149
  '[&>pdm-tooltip:first-child>span>pdm-button>button]:!rounded-t-md',
125
150
  '[&>pdm-tooltip:last-child>span>pdm-button>button]:!rounded-b-md',
151
+ '[&>pdm-tooltip:not(:first-child)>span>pdm-button>button]:!border-t-0',
126
152
  '[&>pdm-tooltip>span>pdm-button>button]:shadow-none',
127
153
  '[&>pdm-tooltip>span>button]:!rounded-none',
128
154
  '[&>pdm-tooltip:first-child>span>button]:!rounded-t-md',
129
155
  '[&>pdm-tooltip:last-child>span>button]:!rounded-b-md',
156
+ '[&>pdm-tooltip:not(:first-child)>span>button]:!border-t-0',
130
157
  '[&>pdm-tooltip>span>button]:shadow-none',
131
158
  '[&>pdm-tooltip>span>pdm-input>div>input]:!rounded-none',
132
159
  '[&>pdm-tooltip:first-child>span>pdm-input>div>input]:!rounded-t-md',
@@ -143,6 +170,13 @@ export class PdmButtonGroupComponent {
143
170
  '[&>pdm-tooltip:first-child>span>pdm-select>select]:!rounded-t-md',
144
171
  '[&>pdm-tooltip:last-child>span>pdm-select>select]:!rounded-b-md',
145
172
  '[&>pdm-tooltip>span>pdm-select>select]:shadow-none',
173
+ '[&>pdm-tooltip>span>pdm-select>div>button]:!rounded-none',
174
+ '[&>pdm-tooltip:first-child>span>pdm-select>div>button]:!rounded-t-md',
175
+ '[&>pdm-tooltip:last-child>span>pdm-select>div>button]:!rounded-b-md',
176
+ '[&>pdm-tooltip:not(:first-child)>span>pdm-select>div>button]:!rounded-t-none',
177
+ '[&>pdm-tooltip:not(:last-child)>span>pdm-select>div>button]:!rounded-b-none',
178
+ '[&>pdm-tooltip:not(:first-child)>span>pdm-select>div>button]:!border-t-0',
179
+ '[&>pdm-tooltip>span>pdm-select>div>button]:shadow-none',
146
180
  '[&>pdm-tooltip>span>select]:!rounded-none',
147
181
  '[&>pdm-tooltip:first-child>span>select]:!rounded-t-md',
148
182
  '[&>pdm-tooltip:last-child>span>select]:!rounded-b-md',
@@ -180,4 +214,4 @@ i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "14.3.0", ngImpor
180
214
  }], className: [{
181
215
  type: Input
182
216
  }] } });
183
- //# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoiYnV0dG9uLWdyb3VwLmNvbXBvbmVudC5qcyIsInNvdXJjZVJvb3QiOiIiLCJzb3VyY2VzIjpbIi4uLy4uLy4uLy4uLy4uLy4uL3NyYy9saWIvY29tcG9uZW50cy9idXR0b24tZ3JvdXAvYnV0dG9uLWdyb3VwLmNvbXBvbmVudC50cyIsIi4uLy4uLy4uLy4uLy4uLy4uL3NyYy9saWIvY29tcG9uZW50cy9idXR0b24tZ3JvdXAvYnV0dG9uLWdyb3VwLmNvbXBvbmVudC5odG1sIl0sIm5hbWVzIjpbXSwibWFwcGluZ3MiOiJBQUFBLE9BQU8sRUFBRSx1QkFBdUIsRUFBRSxTQUFTLEVBQUUsS0FBSyxFQUFFLE1BQU0sZUFBZSxDQUFDOzs7QUFVMUUsTUFBTSxPQUFPLHVCQUF1QjtJQUxwQztRQU1XLFlBQU8sR0FBMEIsU0FBUyxDQUFDO1FBRzNDLGNBQVMsR0FBRyxJQUFJLENBQUM7UUFDakIsY0FBUyxHQUFHLEVBQUUsQ0FBQztLQWtLekI7SUFoS0MsSUFBSSxXQUFXO1FBQ2IsTUFBTSxvQkFBb0IsR0FBRyxJQUFJLENBQUMsV0FBVyxJQUFJLElBQUksQ0FBQyxTQUFTLElBQUksWUFBWSxDQUFDO1FBQ2hGLE1BQU0sVUFBVSxHQUFHLElBQUksQ0FBQyxPQUFPLEtBQUssYUFBYSxJQUFJLG9CQUFvQixLQUFLLFVBQVUsQ0FBQztRQUN6RixNQUFNLE9BQU8sR0FBRyxJQUFJLENBQUMsT0FBTyxLQUFLLE9BQU8sQ0FBQztRQUN6QyxNQUFNLFVBQVUsR0FBRyxDQUFDLElBQUksQ0FBQyxTQUFTLElBQUksSUFBSSxDQUFDLE9BQU8sS0FBSyxTQUFTLENBQUM7UUFDakUsTUFBTSxXQUFXLEdBQUcsSUFBSSxDQUFDLE9BQU8sS0FBSyxXQUFXLENBQUM7UUFFakQsTUFBTSxlQUFlLEdBQUcsVUFBVSxJQUFJLENBQUMsT0FBTztZQUM1QyxDQUFDLENBQUMsVUFBVTtnQkFDVixDQUFDLENBQUM7b0JBQ0Usb0JBQW9CO29CQUNwQixnQ0FBZ0M7b0JBQ2hDLCtCQUErQjtvQkFDL0Isb0NBQW9DO29CQUNwQyxnQ0FBZ0M7aUJBQ2pDLENBQUMsSUFBSSxDQUFDLEdBQUcsQ0FBQztnQkFDYixDQUFDLENBQUM7b0JBQ0Usb0JBQW9CO29CQUNwQixnQ0FBZ0M7b0JBQ2hDLCtCQUErQjtvQkFDL0Isb0NBQW9DO29CQUNwQyxnQ0FBZ0M7aUJBQ2pDLENBQUMsSUFBSSxDQUFDLEdBQUcsQ0FBQztZQUNmLENBQUMsQ0FBQyxFQUFFLENBQUM7UUFFUCxNQUFNLHNCQUFzQixHQUFHLE9BQU8sSUFBSSxDQUFDLFVBQVUsSUFBSSxDQUFDLElBQUksQ0FBQyxTQUFTO1lBQ3RFLENBQUMsQ0FBQztnQkFDRSxvQkFBb0I7Z0JBQ3BCLGdDQUFnQztnQkFDaEMsK0JBQStCO2dCQUMvQixnQ0FBZ0M7Z0JBQ2hDLG9DQUFvQztnQkFDcEMscUJBQXFCO2dCQUNyQiwyQkFBMkI7Z0JBQzNCLHNCQUFzQjtnQkFDdEIsMEJBQTBCO2dCQUMxQixxQ0FBcUM7Z0JBQ3JDLGlEQUFpRDtnQkFDakQsZ0RBQWdEO2dCQUNoRCxtQ0FBbUM7Z0JBQ25DLHFDQUFxQztnQkFDckMsaURBQWlEO2dCQUNqRCxnREFBZ0Q7Z0JBQ2hELHVDQUF1QztnQkFDdkMsbURBQW1EO2dCQUNuRCxrREFBa0Q7Z0JBQ2xELHVDQUF1QztnQkFDdkMsbURBQW1EO2dCQUNuRCxrREFBa0Q7Z0JBQ2xELHVDQUF1QztnQkFDdkMscUNBQXFDO2dCQUNyQyxzQ0FBc0M7Z0JBQ3RDLG1DQUFtQztnQkFDbkMscUNBQXFDO2dCQUNyQyxpREFBaUQ7Z0JBQ2pELGdEQUFnRDtnQkFDaEQscURBQXFEO2dCQUNyRCxzREFBc0Q7Z0JBQ3RELGtFQUFrRTtnQkFDbEUsaUVBQWlFO2dCQUNqRSxvREFBb0Q7Z0JBQ3BELDJDQUEyQztnQkFDM0MsdURBQXVEO2dCQUN2RCxzREFBc0Q7Z0JBQ3RELHlDQUF5QztnQkFDekMsd0RBQXdEO2dCQUN4RCxvRUFBb0U7Z0JBQ3BFLG1FQUFtRTtnQkFDbkUsc0RBQXNEO2dCQUN0RCwwQ0FBMEM7Z0JBQzFDLHNEQUFzRDtnQkFDdEQscURBQXFEO2dCQUNyRCx3Q0FBd0M7Z0JBQ3hDLHdEQUF3RDtnQkFDeEQsb0VBQW9FO2dCQUNwRSxtRUFBbUU7Z0JBQ25FLHNEQUFzRDtnQkFDdEQsa0VBQWtFO2dCQUNsRSxpRUFBaUU7Z0JBQ2pFLG9EQUFvRDtnQkFDcEQsMkNBQTJDO2dCQUMzQyx1REFBdUQ7Z0JBQ3ZELHNEQUFzRDtnQkFDdEQseUNBQXlDO2FBQzFDLENBQUMsSUFBSSxDQUFDLEdBQUcsQ0FBQztZQUNiLENBQUMsQ0FBQyxFQUFFLENBQUM7UUFFUCxNQUFNLG9CQUFvQixHQUFHLE9BQU8sSUFBSSxVQUFVLElBQUksQ0FBQyxJQUFJLENBQUMsU0FBUztZQUNuRSxDQUFDLENBQUM7Z0JBQ0Usb0JBQW9CO2dCQUNwQixnQ0FBZ0M7Z0JBQ2hDLCtCQUErQjtnQkFDL0IsZ0NBQWdDO2dCQUNoQyxvQ0FBb0M7Z0JBQ3BDLHFCQUFxQjtnQkFDckIsMkJBQTJCO2dCQUMzQixxQ0FBcUM7Z0JBQ3JDLGlEQUFpRDtnQkFDakQsZ0RBQWdEO2dCQUNoRCx1Q0FBdUM7Z0JBQ3ZDLG1EQUFtRDtnQkFDbkQsa0RBQWtEO2dCQUNsRCx1Q0FBdUM7Z0JBQ3ZDLG1EQUFtRDtnQkFDbkQsa0RBQWtEO2dCQUNsRCxxQ0FBcUM7Z0JBQ3JDLGlEQUFpRDtnQkFDakQsZ0RBQWdEO2dCQUNoRCxtQ0FBbUM7Z0JBQ25DLHVDQUF1QztnQkFDdkMscUNBQXFDO2dCQUNyQyxtQ0FBbUM7Z0JBQ25DLHFDQUFxQztnQkFDckMsaURBQWlEO2dCQUNqRCxnREFBZ0Q7Z0JBQ2hELHFEQUFxRDtnQkFDckQsc0RBQXNEO2dCQUN0RCxrRUFBa0U7Z0JBQ2xFLGlFQUFpRTtnQkFDakUsb0RBQW9EO2dCQUNwRCwyQ0FBMkM7Z0JBQzNDLHVEQUF1RDtnQkFDdkQsc0RBQXNEO2dCQUN0RCx5Q0FBeUM7Z0JBQ3pDLHdEQUF3RDtnQkFDeEQsb0VBQW9FO2dCQUNwRSxtRUFBbUU7Z0JBQ25FLHNEQUFzRDtnQkFDdEQsMENBQTBDO2dCQUMxQyxzREFBc0Q7Z0JBQ3RELHFEQUFxRDtnQkFDckQsd0NBQXdDO2dCQUN4Qyx3REFBd0Q7Z0JBQ3hELG9FQUFvRTtnQkFDcEUsbUVBQW1FO2dCQUNuRSxzREFBc0Q7Z0JBQ3RELGtFQUFrRTtnQkFDbEUsaUVBQWlFO2dCQUNqRSxvREFBb0Q7Z0JBQ3BELDJDQUEyQztnQkFDM0MsdURBQXVEO2dCQUN2RCxzREFBc0Q7Z0JBQ3RELHlDQUF5QzthQUMxQyxDQUFDLElBQUksQ0FBQyxHQUFHLENBQUM7WUFDYixDQUFDLENBQUMsRUFBRSxDQUFDO1FBRVAsT0FBTztZQUNMLG1CQUFtQjtZQUNuQixVQUFVLENBQUMsQ0FBQyxDQUFDLHdCQUF3QixDQUFDLENBQUMsQ0FBQyxjQUFjO1lBQ3RELElBQUksQ0FBQyxPQUFPLEtBQUssU0FBUyxJQUFJLElBQUksQ0FBQyxTQUFTLENBQUMsQ0FBQyxDQUFDLE9BQU8sQ0FBQyxDQUFDLENBQUMsT0FBTztZQUNoRSxPQUFPLENBQUMsQ0FBQyxDQUFDLCtDQUErQyxDQUFDLENBQUMsQ0FBQyxFQUFFO1lBQzlELGVBQWU7WUFDZixzQkFBc0I7WUFDdEIsb0JBQW9CO1lBQ3BCLFdBQVc7Z0JBQ1QsQ0FBQyxDQUFDLHdFQUF3RTtnQkFDMUUsQ0FBQyxDQUFDLEVBQUU7WUFDTixJQUFJLENBQUMsU0FBUztTQUNmLENBQUM7SUFDSixDQUFDOztvSEF0S1UsdUJBQXVCO3dHQUF2Qix1QkFBdUIsNExDVnBDLDhPQU9BOzJGREdhLHVCQUF1QjtrQkFMbkMsU0FBUzsrQkFDRSxrQkFBa0IsbUJBRVgsdUJBQXVCLENBQUMsTUFBTTs4QkFHdEMsT0FBTztzQkFBZixLQUFLO2dCQUNHLFdBQVc7c0JBQW5CLEtBQUs7Z0JBQ0csU0FBUztzQkFBakIsS0FBSztnQkFDRyxTQUFTO3NCQUFqQixLQUFLO2dCQUNHLFNBQVM7c0JBQWpCLEtBQUsiLCJzb3VyY2VzQ29udGVudCI6WyJpbXBvcnQgeyBDaGFuZ2VEZXRlY3Rpb25TdHJhdGVneSwgQ29tcG9uZW50LCBJbnB1dCB9IGZyb20gJ0Bhbmd1bGFyL2NvcmUnO1xuXG5leHBvcnQgdHlwZSBQZG1CdXR0b25Hcm91cFZhcmlhbnQgPSAnZGVmYXVsdCcgfCAnZ3JvdXAnIHwgJ29yaWVudGF0aW9uJyB8ICdzZXBhcmF0b3InO1xuZXhwb3J0IHR5cGUgUGRtQnV0dG9uR3JvdXBPcmllbnRhdGlvbiA9ICdob3Jpem9udGFsJyB8ICd2ZXJ0aWNhbCc7XG5cbkBDb21wb25lbnQoe1xuICBzZWxlY3RvcjogJ3BkbS1idXR0b24tZ3JvdXAnLFxuICB0ZW1wbGF0ZVVybDogJy4vYnV0dG9uLWdyb3VwLmNvbXBvbmVudC5odG1sJyxcbiAgY2hhbmdlRGV0ZWN0aW9uOiBDaGFuZ2VEZXRlY3Rpb25TdHJhdGVneS5PblB1c2hcbn0pXG5leHBvcnQgY2xhc3MgUGRtQnV0dG9uR3JvdXBDb21wb25lbnQge1xuICBASW5wdXQoKSB2YXJpYW50OiBQZG1CdXR0b25Hcm91cFZhcmlhbnQgPSAnZGVmYXVsdCc7XG4gIEBJbnB1dCgpIG9yaWVudGF0aW9uPzogUGRtQnV0dG9uR3JvdXBPcmllbnRhdGlvbjtcbiAgQElucHV0KCkgZGlyZWN0aW9uPzogUGRtQnV0dG9uR3JvdXBPcmllbnRhdGlvbjtcbiAgQElucHV0KCkgc2VwYXJhdGVkID0gdHJ1ZTtcbiAgQElucHV0KCkgY2xhc3NOYW1lID0gJyc7XG5cbiAgZ2V0IHJvb3RDbGFzc2VzKCk6IHN0cmluZ1tdIHtcbiAgICBjb25zdCBlZmZlY3RpdmVPcmllbnRhdGlvbiA9IHRoaXMub3JpZW50YXRpb24gPz8gdGhpcy5kaXJlY3Rpb24gPz8gJ2hvcml6b250YWwnO1xuICAgIGNvbnN0IGlzVmVydGljYWwgPSB0aGlzLnZhcmlhbnQgPT09ICdvcmllbnRhdGlvbicgfHwgZWZmZWN0aXZlT3JpZW50YXRpb24gPT09ICd2ZXJ0aWNhbCc7XG4gICAgY29uc3QgaXNHcm91cCA9IHRoaXMudmFyaWFudCA9PT0gJ2dyb3VwJztcbiAgICBjb25zdCBpc0F0dGFjaGVkID0gIXRoaXMuc2VwYXJhdGVkICYmIHRoaXMudmFyaWFudCAhPT0gJ2RlZmF1bHQnO1xuICAgIGNvbnN0IGlzU2VwYXJhdG9yID0gdGhpcy52YXJpYW50ID09PSAnc2VwYXJhdG9yJztcblxuICAgIGNvbnN0IGF0dGFjaGVkQ2xhc3NlcyA9IGlzQXR0YWNoZWQgJiYgIWlzR3JvdXBcbiAgICAgID8gaXNWZXJ0aWNhbFxuICAgICAgICA/IFtcbiAgICAgICAgICAgICdbJj4qXTpyb3VuZGVkLW5vbmUnLFxuICAgICAgICAgICAgJ1smPio6Zmlyc3QtY2hpbGRdOnJvdW5kZWQtdC1tZCcsXG4gICAgICAgICAgICAnWyY+KjpsYXN0LWNoaWxkXTpyb3VuZGVkLWItbWQnLFxuICAgICAgICAgICAgJ1smPio6bm90KDpmaXJzdC1jaGlsZCldOmJvcmRlci10LTAnLFxuICAgICAgICAgICAgJ1smPio6bm90KDpmaXJzdC1jaGlsZCldOi1tdC1weCdcbiAgICAgICAgICBdLmpvaW4oJyAnKVxuICAgICAgICA6IFtcbiAgICAgICAgICAgICdbJj4qXTpyb3VuZGVkLW5vbmUnLFxuICAgICAgICAgICAgJ1smPio6Zmlyc3QtY2hpbGRdOnJvdW5kZWQtbC1tZCcsXG4gICAgICAgICAgICAnWyY+KjpsYXN0LWNoaWxkXTpyb3VuZGVkLXItbWQnLFxuICAgICAgICAgICAgJ1smPio6bm90KDpmaXJzdC1jaGlsZCldOmJvcmRlci1sLTAnLFxuICAgICAgICAgICAgJ1smPio6bm90KDpmaXJzdC1jaGlsZCldOi1tbC1weCdcbiAgICAgICAgICBdLmpvaW4oJyAnKVxuICAgICAgOiAnJztcblxuICAgIGNvbnN0IGdyb3VwSG9yaXpvbnRhbENsYXNzZXMgPSBpc0dyb3VwICYmICFpc1ZlcnRpY2FsICYmICF0aGlzLnNlcGFyYXRlZFxuICAgICAgPyBbXG4gICAgICAgICAgJ1smPipdOnJvdW5kZWQtbm9uZScsXG4gICAgICAgICAgJ1smPio6Zmlyc3QtY2hpbGRdOnJvdW5kZWQtbC1tZCcsXG4gICAgICAgICAgJ1smPio6bGFzdC1jaGlsZF06cm91bmRlZC1yLW1kJyxcbiAgICAgICAgICAnWyY+Kjpub3QoOmZpcnN0LWNoaWxkKV06LW1sLXB4JyxcbiAgICAgICAgICAnWyY+Kjpub3QoOmZpcnN0LWNoaWxkKV06Ym9yZGVyLWwtMCcsXG4gICAgICAgICAgJ1smPnBkbS1idXR0b25dOmZsZXgnLFxuICAgICAgICAgICdbJj5wZG0tYnV0dG9uPmJ1dHRvbl06aC05JyxcbiAgICAgICAgICAnWyY+cGRtLWlucHV0XTpmbGV4LTEnLFxuICAgICAgICAgICdbJj5wZG0taW5wdXQ+ZGl2XTp3LWZ1bGwnLFxuICAgICAgICAgICdbJj5wZG0tc2VsZWN0PnNlbGVjdF06IXJvdW5kZWQtbm9uZScsXG4gICAgICAgICAgJ1smPnBkbS1zZWxlY3Q6Zmlyc3QtY2hpbGQ+c2VsZWN0XTohcm91bmRlZC1sLW1kJyxcbiAgICAgICAgICAnWyY+cGRtLXNlbGVjdDpsYXN0LWNoaWxkPnNlbGVjdF06IXJvdW5kZWQtci1tZCcsXG4gICAgICAgICAgJ1smPnBkbS1zZWxlY3Q+c2VsZWN0XTpzaGFkb3ctbm9uZScsXG4gICAgICAgICAgJ1smPnBkbS1idXR0b24+YnV0dG9uXTohcm91bmRlZC1ub25lJyxcbiAgICAgICAgICAnWyY+cGRtLWJ1dHRvbjpmaXJzdC1jaGlsZD5idXR0b25dOiFyb3VuZGVkLWwtbWQnLFxuICAgICAgICAgICdbJj5wZG0tYnV0dG9uOmxhc3QtY2hpbGQ+YnV0dG9uXTohcm91bmRlZC1yLW1kJyxcbiAgICAgICAgICAnWyY+cGRtLWlucHV0PmRpdj5pbnB1dF06IXJvdW5kZWQtbm9uZScsXG4gICAgICAgICAgJ1smPnBkbS1pbnB1dDpmaXJzdC1jaGlsZD5kaXY+aW5wdXRdOiFyb3VuZGVkLWwtbWQnLFxuICAgICAgICAgICdbJj5wZG0taW5wdXQ6bGFzdC1jaGlsZD5kaXY+aW5wdXRdOiFyb3VuZGVkLXItbWQnLFxuICAgICAgICAgICdbJj5wZG0taW5wdXQtZ3JvdXA+ZGl2XTohcm91bmRlZC1ub25lJyxcbiAgICAgICAgICAnWyY+cGRtLWlucHV0LWdyb3VwOmZpcnN0LWNoaWxkPmRpdl06IXJvdW5kZWQtbC1tZCcsXG4gICAgICAgICAgJ1smPnBkbS1pbnB1dC1ncm91cDpsYXN0LWNoaWxkPmRpdl06IXJvdW5kZWQtci1tZCcsXG4gICAgICAgICAgJ1smPnBkbS1pbnB1dD5kaXY+aW5wdXRdOmJnLWJhY2tncm91bmQnLFxuICAgICAgICAgICdbJj5wZG0taW5wdXQ+ZGl2PmlucHV0XTpzaGFkb3ctbm9uZScsXG4gICAgICAgICAgJ1smPnBkbS1idXR0b24+YnV0dG9uXTpyb3VuZGVkLWwtbm9uZScsXG4gICAgICAgICAgJ1smPnBkbS1idXR0b24+YnV0dG9uXTpzaGFkb3ctbm9uZScsXG4gICAgICAgICAgJ1smPnBkbS10b29sdGlwPnNwYW4+Kl06cm91bmRlZC1ub25lJyxcbiAgICAgICAgICAnWyY+cGRtLXRvb2x0aXA6Zmlyc3QtY2hpbGQ+c3Bhbj4qXTpyb3VuZGVkLWwtbWQnLFxuICAgICAgICAgICdbJj5wZG0tdG9vbHRpcDpsYXN0LWNoaWxkPnNwYW4+Kl06cm91bmRlZC1yLW1kJyxcbiAgICAgICAgICAnWyY+cGRtLXRvb2x0aXA6bm90KDpmaXJzdC1jaGlsZCk+c3Bhbj4qXTpib3JkZXItbC0wJyxcbiAgICAgICAgICAnWyY+cGRtLXRvb2x0aXA+c3Bhbj5wZG0tYnV0dG9uPmJ1dHRvbl06IXJvdW5kZWQtbm9uZScsXG4gICAgICAgICAgJ1smPnBkbS10b29sdGlwOmZpcnN0LWNoaWxkPnNwYW4+cGRtLWJ1dHRvbj5idXR0b25dOiFyb3VuZGVkLWwtbWQnLFxuICAgICAgICAgICdbJj5wZG0tdG9vbHRpcDpsYXN0LWNoaWxkPnNwYW4+cGRtLWJ1dHRvbj5idXR0b25dOiFyb3VuZGVkLXItbWQnLFxuICAgICAgICAgICdbJj5wZG0tdG9vbHRpcD5zcGFuPnBkbS1idXR0b24+YnV0dG9uXTpzaGFkb3ctbm9uZScsXG4gICAgICAgICAgJ1smPnBkbS10b29sdGlwPnNwYW4+YnV0dG9uXTohcm91bmRlZC1ub25lJyxcbiAgICAgICAgICAnWyY+cGRtLXRvb2x0aXA6Zmlyc3QtY2hpbGQ+c3Bhbj5idXR0b25dOiFyb3VuZGVkLWwtbWQnLFxuICAgICAgICAgICdbJj5wZG0tdG9vbHRpcDpsYXN0LWNoaWxkPnNwYW4+YnV0dG9uXTohcm91bmRlZC1yLW1kJyxcbiAgICAgICAgICAnWyY+cGRtLXRvb2x0aXA+c3Bhbj5idXR0b25dOnNoYWRvdy1ub25lJyxcbiAgICAgICAgICAnWyY+cGRtLXRvb2x0aXA+c3Bhbj5wZG0taW5wdXQ+ZGl2PmlucHV0XTohcm91bmRlZC1ub25lJyxcbiAgICAgICAgICAnWyY+cGRtLXRvb2x0aXA6Zmlyc3QtY2hpbGQ+c3Bhbj5wZG0taW5wdXQ+ZGl2PmlucHV0XTohcm91bmRlZC1sLW1kJyxcbiAgICAgICAgICAnWyY+cGRtLXRvb2x0aXA6bGFzdC1jaGlsZD5zcGFuPnBkbS1pbnB1dD5kaXY+aW5wdXRdOiFyb3VuZGVkLXItbWQnLFxuICAgICAgICAgICdbJj5wZG0tdG9vbHRpcD5zcGFuPnBkbS1pbnB1dD5kaXY+aW5wdXRdOnNoYWRvdy1ub25lJyxcbiAgICAgICAgICAnWyY+cGRtLXRvb2x0aXA+c3Bhbj5pbnB1dF06IXJvdW5kZWQtbm9uZScsXG4gICAgICAgICAgJ1smPnBkbS10b29sdGlwOmZpcnN0LWNoaWxkPnNwYW4+aW5wdXRdOiFyb3VuZGVkLWwtbWQnLFxuICAgICAgICAgICdbJj5wZG0tdG9vbHRpcDpsYXN0LWNoaWxkPnNwYW4+aW5wdXRdOiFyb3VuZGVkLXItbWQnLFxuICAgICAgICAgICdbJj5wZG0tdG9vbHRpcD5zcGFuPmlucHV0XTpzaGFkb3ctbm9uZScsXG4gICAgICAgICAgJ1smPnBkbS10b29sdGlwPnNwYW4+cGRtLWlucHV0LWdyb3VwPmRpdl06IXJvdW5kZWQtbm9uZScsXG4gICAgICAgICAgJ1smPnBkbS10b29sdGlwOmZpcnN0LWNoaWxkPnNwYW4+cGRtLWlucHV0LWdyb3VwPmRpdl06IXJvdW5kZWQtbC1tZCcsXG4gICAgICAgICAgJ1smPnBkbS10b29sdGlwOmxhc3QtY2hpbGQ+c3Bhbj5wZG0taW5wdXQtZ3JvdXA+ZGl2XTohcm91bmRlZC1yLW1kJyxcbiAgICAgICAgICAnWyY+cGRtLXRvb2x0aXA+c3Bhbj5wZG0tc2VsZWN0PnNlbGVjdF06IXJvdW5kZWQtbm9uZScsXG4gICAgICAgICAgJ1smPnBkbS10b29sdGlwOmZpcnN0LWNoaWxkPnNwYW4+cGRtLXNlbGVjdD5zZWxlY3RdOiFyb3VuZGVkLWwtbWQnLFxuICAgICAgICAgICdbJj5wZG0tdG9vbHRpcDpsYXN0LWNoaWxkPnNwYW4+cGRtLXNlbGVjdD5zZWxlY3RdOiFyb3VuZGVkLXItbWQnLFxuICAgICAgICAgICdbJj5wZG0tdG9vbHRpcD5zcGFuPnBkbS1zZWxlY3Q+c2VsZWN0XTpzaGFkb3ctbm9uZScsXG4gICAgICAgICAgJ1smPnBkbS10b29sdGlwPnNwYW4+c2VsZWN0XTohcm91bmRlZC1ub25lJyxcbiAgICAgICAgICAnWyY+cGRtLXRvb2x0aXA6Zmlyc3QtY2hpbGQ+c3Bhbj5zZWxlY3RdOiFyb3VuZGVkLWwtbWQnLFxuICAgICAgICAgICdbJj5wZG0tdG9vbHRpcDpsYXN0LWNoaWxkPnNwYW4+c2VsZWN0XTohcm91bmRlZC1yLW1kJyxcbiAgICAgICAgICAnWyY+cGRtLXRvb2x0aXA+c3Bhbj5zZWxlY3RdOnNoYWRvdy1ub25lJ1xuICAgICAgICBdLmpvaW4oJyAnKVxuICAgICAgOiAnJztcblxuICAgIGNvbnN0IGdyb3VwVmVydGljYWxDbGFzc2VzID0gaXNHcm91cCAmJiBpc1ZlcnRpY2FsICYmICF0aGlzLnNlcGFyYXRlZFxuICAgICAgPyBbXG4gICAgICAgICAgJ1smPipdOnJvdW5kZWQtbm9uZScsXG4gICAgICAgICAgJ1smPio6Zmlyc3QtY2hpbGRdOnJvdW5kZWQtdC1tZCcsXG4gICAgICAgICAgJ1smPio6bGFzdC1jaGlsZF06cm91bmRlZC1iLW1kJyxcbiAgICAgICAgICAnWyY+Kjpub3QoOmZpcnN0LWNoaWxkKV06LW10LXB4JyxcbiAgICAgICAgICAnWyY+Kjpub3QoOmZpcnN0LWNoaWxkKV06Ym9yZGVyLXQtMCcsXG4gICAgICAgICAgJ1smPnBkbS1idXR0b25dOmZsZXgnLFxuICAgICAgICAgICdbJj5wZG0tYnV0dG9uPmJ1dHRvbl06aC05JyxcbiAgICAgICAgICAnWyY+cGRtLWJ1dHRvbj5idXR0b25dOiFyb3VuZGVkLW5vbmUnLFxuICAgICAgICAgICdbJj5wZG0tYnV0dG9uOmZpcnN0LWNoaWxkPmJ1dHRvbl06IXJvdW5kZWQtdC1tZCcsXG4gICAgICAgICAgJ1smPnBkbS1idXR0b246bGFzdC1jaGlsZD5idXR0b25dOiFyb3VuZGVkLWItbWQnLFxuICAgICAgICAgICdbJj5wZG0taW5wdXQ+ZGl2PmlucHV0XTohcm91bmRlZC1ub25lJyxcbiAgICAgICAgICAnWyY+cGRtLWlucHV0OmZpcnN0LWNoaWxkPmRpdj5pbnB1dF06IXJvdW5kZWQtdC1tZCcsXG4gICAgICAgICAgJ1smPnBkbS1pbnB1dDpsYXN0LWNoaWxkPmRpdj5pbnB1dF06IXJvdW5kZWQtYi1tZCcsXG4gICAgICAgICAgJ1smPnBkbS1pbnB1dC1ncm91cD5kaXZdOiFyb3VuZGVkLW5vbmUnLFxuICAgICAgICAgICdbJj5wZG0taW5wdXQtZ3JvdXA6Zmlyc3QtY2hpbGQ+ZGl2XTohcm91bmRlZC10LW1kJyxcbiAgICAgICAgICAnWyY+cGRtLWlucHV0LWdyb3VwOmxhc3QtY2hpbGQ+ZGl2XTohcm91bmRlZC1iLW1kJyxcbiAgICAgICAgICAnWyY+cGRtLXNlbGVjdD5zZWxlY3RdOiFyb3VuZGVkLW5vbmUnLFxuICAgICAgICAgICdbJj5wZG0tc2VsZWN0OmZpcnN0LWNoaWxkPnNlbGVjdF06IXJvdW5kZWQtdC1tZCcsXG4gICAgICAgICAgJ1smPnBkbS1zZWxlY3Q6bGFzdC1jaGlsZD5zZWxlY3RdOiFyb3VuZGVkLWItbWQnLFxuICAgICAgICAgICdbJj5wZG0tc2VsZWN0PnNlbGVjdF06c2hhZG93LW5vbmUnLFxuICAgICAgICAgICdbJj5wZG0taW5wdXQ+ZGl2PmlucHV0XTpiZy1iYWNrZ3JvdW5kJyxcbiAgICAgICAgICAnWyY+cGRtLWlucHV0PmRpdj5pbnB1dF06c2hhZG93LW5vbmUnLFxuICAgICAgICAgICdbJj5wZG0tYnV0dG9uPmJ1dHRvbl06c2hhZG93LW5vbmUnLFxuICAgICAgICAgICdbJj5wZG0tdG9vbHRpcD5zcGFuPipdOnJvdW5kZWQtbm9uZScsXG4gICAgICAgICAgJ1smPnBkbS10b29sdGlwOmZpcnN0LWNoaWxkPnNwYW4+Kl06cm91bmRlZC10LW1kJyxcbiAgICAgICAgICAnWyY+cGRtLXRvb2x0aXA6bGFzdC1jaGlsZD5zcGFuPipdOnJvdW5kZWQtYi1tZCcsXG4gICAgICAgICAgJ1smPnBkbS10b29sdGlwOm5vdCg6Zmlyc3QtY2hpbGQpPnNwYW4+Kl06Ym9yZGVyLXQtMCcsXG4gICAgICAgICAgJ1smPnBkbS10b29sdGlwPnNwYW4+cGRtLWJ1dHRvbj5idXR0b25dOiFyb3VuZGVkLW5vbmUnLFxuICAgICAgICAgICdbJj5wZG0tdG9vbHRpcDpmaXJzdC1jaGlsZD5zcGFuPnBkbS1idXR0b24+YnV0dG9uXTohcm91bmRlZC10LW1kJyxcbiAgICAgICAgICAnWyY+cGRtLXRvb2x0aXA6bGFzdC1jaGlsZD5zcGFuPnBkbS1idXR0b24+YnV0dG9uXTohcm91bmRlZC1iLW1kJyxcbiAgICAgICAgICAnWyY+cGRtLXRvb2x0aXA+c3Bhbj5wZG0tYnV0dG9uPmJ1dHRvbl06c2hhZG93LW5vbmUnLFxuICAgICAgICAgICdbJj5wZG0tdG9vbHRpcD5zcGFuPmJ1dHRvbl06IXJvdW5kZWQtbm9uZScsXG4gICAgICAgICAgJ1smPnBkbS10b29sdGlwOmZpcnN0LWNoaWxkPnNwYW4+YnV0dG9uXTohcm91bmRlZC10LW1kJyxcbiAgICAgICAgICAnWyY+cGRtLXRvb2x0aXA6bGFzdC1jaGlsZD5zcGFuPmJ1dHRvbl06IXJvdW5kZWQtYi1tZCcsXG4gICAgICAgICAgJ1smPnBkbS10b29sdGlwPnNwYW4+YnV0dG9uXTpzaGFkb3ctbm9uZScsXG4gICAgICAgICAgJ1smPnBkbS10b29sdGlwPnNwYW4+cGRtLWlucHV0PmRpdj5pbnB1dF06IXJvdW5kZWQtbm9uZScsXG4gICAgICAgICAgJ1smPnBkbS10b29sdGlwOmZpcnN0LWNoaWxkPnNwYW4+cGRtLWlucHV0PmRpdj5pbnB1dF06IXJvdW5kZWQtdC1tZCcsXG4gICAgICAgICAgJ1smPnBkbS10b29sdGlwOmxhc3QtY2hpbGQ+c3Bhbj5wZG0taW5wdXQ+ZGl2PmlucHV0XTohcm91bmRlZC1iLW1kJyxcbiAgICAgICAgICAnWyY+cGRtLXRvb2x0aXA+c3Bhbj5wZG0taW5wdXQ+ZGl2PmlucHV0XTpzaGFkb3ctbm9uZScsXG4gICAgICAgICAgJ1smPnBkbS10b29sdGlwPnNwYW4+aW5wdXRdOiFyb3VuZGVkLW5vbmUnLFxuICAgICAgICAgICdbJj5wZG0tdG9vbHRpcDpmaXJzdC1jaGlsZD5zcGFuPmlucHV0XTohcm91bmRlZC10LW1kJyxcbiAgICAgICAgICAnWyY+cGRtLXRvb2x0aXA6bGFzdC1jaGlsZD5zcGFuPmlucHV0XTohcm91bmRlZC1iLW1kJyxcbiAgICAgICAgICAnWyY+cGRtLXRvb2x0aXA+c3Bhbj5pbnB1dF06c2hhZG93LW5vbmUnLFxuICAgICAgICAgICdbJj5wZG0tdG9vbHRpcD5zcGFuPnBkbS1pbnB1dC1ncm91cD5kaXZdOiFyb3VuZGVkLW5vbmUnLFxuICAgICAgICAgICdbJj5wZG0tdG9vbHRpcDpmaXJzdC1jaGlsZD5zcGFuPnBkbS1pbnB1dC1ncm91cD5kaXZdOiFyb3VuZGVkLXQtbWQnLFxuICAgICAgICAgICdbJj5wZG0tdG9vbHRpcDpsYXN0LWNoaWxkPnNwYW4+cGRtLWlucHV0LWdyb3VwPmRpdl06IXJvdW5kZWQtYi1tZCcsXG4gICAgICAgICAgJ1smPnBkbS10b29sdGlwPnNwYW4+cGRtLXNlbGVjdD5zZWxlY3RdOiFyb3VuZGVkLW5vbmUnLFxuICAgICAgICAgICdbJj5wZG0tdG9vbHRpcDpmaXJzdC1jaGlsZD5zcGFuPnBkbS1zZWxlY3Q+c2VsZWN0XTohcm91bmRlZC10LW1kJyxcbiAgICAgICAgICAnWyY+cGRtLXRvb2x0aXA6bGFzdC1jaGlsZD5zcGFuPnBkbS1zZWxlY3Q+c2VsZWN0XTohcm91bmRlZC1iLW1kJyxcbiAgICAgICAgICAnWyY+cGRtLXRvb2x0aXA+c3Bhbj5wZG0tc2VsZWN0PnNlbGVjdF06c2hhZG93LW5vbmUnLFxuICAgICAgICAgICdbJj5wZG0tdG9vbHRpcD5zcGFuPnNlbGVjdF06IXJvdW5kZWQtbm9uZScsXG4gICAgICAgICAgJ1smPnBkbS10b29sdGlwOmZpcnN0LWNoaWxkPnNwYW4+c2VsZWN0XTohcm91bmRlZC10LW1kJyxcbiAgICAgICAgICAnWyY+cGRtLXRvb2x0aXA6bGFzdC1jaGlsZD5zcGFuPnNlbGVjdF06IXJvdW5kZWQtYi1tZCcsXG4gICAgICAgICAgJ1smPnBkbS10b29sdGlwPnNwYW4+c2VsZWN0XTpzaGFkb3ctbm9uZSdcbiAgICAgICAgXS5qb2luKCcgJylcbiAgICAgIDogJyc7XG5cbiAgICByZXR1cm4gW1xuICAgICAgJ2lubGluZS1mbGV4IHctZml0JyxcbiAgICAgIGlzVmVydGljYWwgPyAnZmxleC1jb2wgaXRlbXMtc3RyZXRjaCcgOiAnaXRlbXMtY2VudGVyJyxcbiAgICAgIHRoaXMudmFyaWFudCA9PT0gJ2RlZmF1bHQnIHx8IHRoaXMuc2VwYXJhdGVkID8gJ2dhcC0yJyA6ICdnYXAtMCcsXG4gICAgICBpc0dyb3VwID8gJyo6Zm9jdXMtdmlzaWJsZTpyZWxhdGl2ZSAqOmZvY3VzLXZpc2libGU6ei0xMCcgOiAnJyxcbiAgICAgIGF0dGFjaGVkQ2xhc3NlcyxcbiAgICAgIGdyb3VwSG9yaXpvbnRhbENsYXNzZXMsXG4gICAgICBncm91cFZlcnRpY2FsQ2xhc3NlcyxcbiAgICAgIGlzU2VwYXJhdG9yXG4gICAgICAgID8gJ292ZXJmbG93LWhpZGRlbiByb3VuZGVkLW1kIGJvcmRlciBib3JkZXItYm9yZGVyIGJnLXNlY29uZGFyeSBzaGFkb3ctc20nXG4gICAgICAgIDogJycsXG4gICAgICB0aGlzLmNsYXNzTmFtZVxuICAgIF07XG4gIH1cbn1cbiIsIjxkaXZcbiAgcm9sZT1cImdyb3VwXCJcbiAgW2F0dHIuYXJpYS1vcmllbnRhdGlvbl09XCJ2YXJpYW50ID09PSAnb3JpZW50YXRpb24nIHx8IG9yaWVudGF0aW9uID09PSAndmVydGljYWwnIHx8IGRpcmVjdGlvbiA9PT0gJ3ZlcnRpY2FsJyA/ICd2ZXJ0aWNhbCcgOiAnaG9yaXpvbnRhbCdcIlxuICBbbmdDbGFzc109XCJyb290Q2xhc3Nlc1wiXG4+XG4gIDxuZy1jb250ZW50PjwvbmctY29udGVudD5cbjwvZGl2PlxuIl19
217
+ //# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoiYnV0dG9uLWdyb3VwLmNvbXBvbmVudC5qcyIsInNvdXJjZVJvb3QiOiIiLCJzb3VyY2VzIjpbIi4uLy4uLy4uLy4uLy4uLy4uL3NyYy9saWIvY29tcG9uZW50cy9idXR0b24tZ3JvdXAvYnV0dG9uLWdyb3VwLmNvbXBvbmVudC50cyIsIi4uLy4uLy4uLy4uLy4uLy4uL3NyYy9saWIvY29tcG9uZW50cy9idXR0b24tZ3JvdXAvYnV0dG9uLWdyb3VwLmNvbXBvbmVudC5odG1sIl0sIm5hbWVzIjpbXSwibWFwcGluZ3MiOiJBQUFBLE9BQU8sRUFBRSx1QkFBdUIsRUFBRSxTQUFTLEVBQUUsS0FBSyxFQUFFLE1BQU0sZUFBZSxDQUFDOzs7QUFVMUUsTUFBTSxPQUFPLHVCQUF1QjtJQUxwQztRQU1XLFlBQU8sR0FBMEIsU0FBUyxDQUFDO1FBRzNDLGNBQVMsR0FBRyxJQUFJLENBQUM7UUFDakIsY0FBUyxHQUFHLEVBQUUsQ0FBQztLQW9NekI7SUFsTUMsSUFBSSxXQUFXO1FBQ2IsTUFBTSxvQkFBb0IsR0FBRyxJQUFJLENBQUMsV0FBVyxJQUFJLElBQUksQ0FBQyxTQUFTLElBQUksWUFBWSxDQUFDO1FBQ2hGLE1BQU0sVUFBVSxHQUFHLElBQUksQ0FBQyxPQUFPLEtBQUssYUFBYSxJQUFJLG9CQUFvQixLQUFLLFVBQVUsQ0FBQztRQUN6RixNQUFNLE9BQU8sR0FBRyxJQUFJLENBQUMsT0FBTyxLQUFLLE9BQU8sQ0FBQztRQUN6QyxNQUFNLFVBQVUsR0FBRyxDQUFDLElBQUksQ0FBQyxTQUFTLElBQUksSUFBSSxDQUFDLE9BQU8sS0FBSyxTQUFTLENBQUM7UUFDakUsTUFBTSxXQUFXLEdBQUcsSUFBSSxDQUFDLE9BQU8sS0FBSyxXQUFXLENBQUM7UUFFakQsTUFBTSxlQUFlLEdBQUcsVUFBVSxJQUFJLENBQUMsT0FBTztZQUM1QyxDQUFDLENBQUMsVUFBVTtnQkFDVixDQUFDLENBQUM7b0JBQ0Usb0JBQW9CO29CQUNwQixnQ0FBZ0M7b0JBQ2hDLCtCQUErQjtvQkFDL0Is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Q0FBQyxDQUFDLEVBQUU7WUFDOUQsZUFBZTtZQUNmLHNCQUFzQjtZQUN0QixvQkFBb0I7WUFDcEIsV0FBVztnQkFDVCxDQUFDLENBQUMsd0VBQXdFO2dCQUMxRSxDQUFDLENBQUMsRUFBRTtZQUNOLElBQUksQ0FBQyxTQUFTO1NBQ2YsQ0FBQztJQUNKLENBQUM7O29IQXhNVSx1QkFBdUI7d0dBQXZCLHVCQUF1Qiw0TENWcEMsOE9BT0E7MkZER2EsdUJBQXVCO2tCQUxuQyxTQUFTOytCQUNFLGtCQUFrQixtQkFFWCx1QkFBdUIsQ0FBQyxNQUFNOzhCQUd0QyxPQUFPO3NCQUFmLEtBQUs7Z0JBQ0csV0FBVztzQkFBbkIsS0FBSztnQkFDRyxTQUFTO3NCQUFqQixLQUFLO2dCQUNHLFNBQVM7c0JBQWpCLEtBQUs7Z0JBQ0csU0FBUztzQkFBakIsS0FBSyIsInNvdXJjZXNDb250ZW50IjpbImltcG9ydCB7IENoYW5nZURldGVjdGlvblN0cmF0ZWd5LCBDb21wb25lbnQsIElucHV0IH0gZnJvbSAnQGFuZ3VsYXIvY29yZSc7XG5cbmV4cG9ydCB0eXBlIFBkbUJ1dHRvbkdyb3VwVmFyaWFudCA9ICdkZWZhdWx0JyB8ICdncm91cCcgfCAnb3JpZW50YXRpb24nIHwgJ3NlcGFyYXRvcic7XG5leHBvcnQgdHlwZSBQZG1CdXR0b25Hcm91cE9yaWVudGF0aW9uID0gJ2hvcml6b250YWwnIHwgJ3ZlcnRpY2FsJztcblxuQENvbXBvbmVudCh7XG4gIHNlbGVjdG9yOiAncGRtLWJ1dHRvbi1ncm91cCcsXG4gIHRlbXBsYXRlVXJsOiAnLi9idXR0b24tZ3JvdXAuY29tcG9uZW50Lmh0bWwnLFxuICBjaGFuZ2VEZXRlY3Rpb246IENoYW5nZURldGVjdGlvblN0cmF0ZWd5Lk9uUHVzaFxufSlcbmV4cG9ydCBjbGFzcyBQZG1CdXR0b25Hcm91cENvbXBvbmVudCB7XG4gIEBJbnB1dCgpIHZhcmlhbnQ6IFBkbUJ1dHRvbkdyb3VwVmFyaWFudCA9ICdkZWZhdWx0JztcbiAgQElucHV0KCkgb3JpZW50YXRpb24/OiBQZG1CdXR0b25Hcm91cE9yaWVudGF0aW9uO1xuICBASW5wdXQoKSBkaXJlY3Rpb24/OiBQZG1CdXR0b25Hcm91cE9yaWVudGF0aW9uO1xuICBASW5wdXQoKSBzZXBhcmF0ZWQgPSB0cnVlO1xuICBASW5wdXQoKSBjbGFzc05hbWUgPSAnJztcblxuICBnZXQgcm9vdENsYXNzZXMoKTogc3RyaW5nW10ge1xuICAgIGNvbnN0IGVmZmVjdGl2ZU9yaWVudGF0aW9uID0gdGhpcy5vcmllbnRhdGlvbiA/PyB0aGlzLmRpcmVjdGlvbiA/PyAnaG9yaXpvbnRhbCc7XG4gICAgY29uc3QgaXNWZXJ0aWNhbCA9IHRoaXMudmFyaWFudCA9PT0gJ29yaWVudGF0aW9uJyB8fCBlZmZlY3RpdmVPcmllbnRhdGlvbiA9PT0gJ3ZlcnRpY2FsJztcbiAgICBjb25zdCBpc0dyb3VwID0gdGhpcy52YXJpYW50ID09PSAnZ3JvdXAnO1xuICAgIGNvbnN0IGlzQXR0YWNoZWQgPSAhdGhpcy5zZXBhcmF0ZWQgJiYgdGhpcy52YXJpYW50ICE9PSAnZGVmYXVsdCc7XG4gICAgY29uc3QgaXNTZXBhcmF0b3IgPSB0aGlzLnZhcmlhbnQgPT09ICdzZXBhcmF0b3InO1xuXG4gICAgY29uc3QgYXR0YWNoZWRDbGFzc2VzID0gaXNBdHRhY2hlZCAmJiAhaXNHcm91cFxuICAgICAgPyBpc1ZlcnRpY2FsXG4gICAgICAgID8gW1xuICAgICAgICAgICAgJ1smPipdOnJvdW5kZWQtbm9uZScsXG4gICAgICAgICAgICAnWyY+KjpmaXJzdC1jaGlsZF06cm91bmRlZC10LW1kJyxcbiAgICAgICAgICAgICdbJj4qOmxhc3QtY2hpbGRdOnJvdW5kZWQtYi1tZCcsXG4gICAgICAgICAgICAnWyY+Kjpub3QoOmZpcnN0LWNoaWxkKV06Ym9yZGVyLXQtMCcsXG4gICAgICAgICAgICAnWyY+Kjpub3QoOmZpcnN0LWNoaWxkKV06LW10LXB4J1xuICAgICAgICAgIF0uam9pbignICcpXG4gICAgICAgIDogW1xuICAgICAgICAgICAgJ1smPipdOnJvdW5kZWQtbm9uZScsXG4gICAgICAgICAgICAnWyY+KjpmaXJzdC1jaGlsZF06cm91bmRlZC1sLW1kJyxcbiAgICAgICAgICAgICdbJj4qOmxhc3QtY2hpbGRdOnJvdW5kZWQtci1tZCcsXG4gICAgICAgICAgICAnWyY+Kjpub3QoOmZpcnN0LWNoaWxkKV06Ym9yZGVyLWwtMCcsXG4gICAgICAgICAgICAnWyY+Kjpub3QoOmZpcnN0LWNoaWxkKV06LW1sLXB4J1xuICAgICAgICAgIF0uam9pbignICcpXG4gICAgICA6ICcnO1xuXG4gICAgY29uc3QgZ3JvdXBIb3Jpem9udGFsQ2xhc3NlcyA9IGlzR3JvdXAgJiYgIWlzVmVydGljYWwgJiYgIXRoaXMuc2VwYXJhdGVkXG4gICAgICA/IFtcbiAgICAgICAgICAnWyY+Kl06cm91bmRlZC1ub25lJyxcbiAgICAgICAgICAnWyY+KjpmaXJzdC1jaGlsZF06cm91bmRlZC1sLW1kJyxcbiAgICAgICAgICAnWyY+KjpsYXN0LWNoaWxkXTpyb3VuZGVkLXItbWQnLFxuICAgICAgICAgICdbJj4qOm5vdCg6Zmlyc3QtY2hpbGQpXTotbWwtcHgnLFxuICAgICAgICAgICdbJj4qOm5vdCg6Zmlyc3QtY2hpbGQpXTpib3JkZXItbC0wJyxcbiAgICAgICAgICAnWyY+cGRtLWJ1dHRvbl06ZmxleCcsXG4gICAgICAgICAgJ1smPnBkbS1idXR0b24+YnV0dG9uXTpoLTknLFxuICAgICAgICAgICdbJj5wZG0taW5wdXRdOmZsZXgtMScsXG4gICAgICAgICAgJ1smPnBkbS1pbnB1dD5kaXZdOnctZnVsbCcsXG4gICAgICAgICAgJ1smPnBkbS1zZWxlY3Q+c2VsZWN0XTohcm91bmRlZC1ub25lJyxcbiAgICAgICAgICAnWyY+cGRtLXNlbGVjdDpmaXJzdC1jaGlsZD5zZWxlY3RdOiFyb3VuZGVkLWwtbWQnLFxuICAgICAgICAgICdbJj5wZG0tc2VsZWN0Omxhc3QtY2hpbGQ+c2VsZWN0XTohcm91bmRlZC1yLW1kJyxcbiAgICAgICAgICAnWyY+cGRtLXNlbGVjdD5zZWxlY3RdOnNoYWRvdy1ub25lJyxcbiAgICAgICAgICAnWyY+cGRtLXNlbGVjdD5kaXY+YnV0dG9uXTohcm91bmRlZC1ub25lJyxcbiAgICAgICAgICAnWyY+cGRtLXNlbGVjdDpmaXJzdC1jaGlsZD5kaXY+YnV0dG9uXTohcm91bmRlZC1sLW1kJyxcbiAgICAgICAgICAnWyY+cGRtLXNlbGVjdDpsYXN0LWNoaWxkPmRpdj5idXR0b25dOiFyb3VuZGVkLXItbWQnLFxuICAgICAgICAgICdbJj5wZG0tc2VsZWN0Om5vdCg6Zmlyc3QtY2hpbGQpPmRpdj5idXR0b25dOiFyb3VuZGVkLWwtbm9uZScsXG4gICAgICAgICAgJ1smPnBkbS1zZWxlY3Q6bm90KDpsYXN0LWNoaWxkKT5kaXY+YnV0dG9uXTohcm91bmRlZC1yLW5vbmUnLFxuICAgICAgICAgICdbJj5wZG0tc2VsZWN0Om5vdCg6Zmlyc3QtY2hpbGQpPmRpdj5idXR0b25dOiFib3JkZXItbC0wJyxcbiAgICAgICAgICAnWyY+cGRtLXNlbGVjdD5kaXY+YnV0dG9uXTpzaGFkb3ctbm9uZScsXG4gICAgICAgICAgJ1smPnBkbS1idXR0b24+YnV0dG9uXTohcm91bmRlZC1ub25lJyxcbiAgICAgICAgICAnWyY+cGRtLWJ1dHRvbjpmaXJzdC1jaGlsZD5idXR0b25dOiFyb3VuZGVkLWwtbWQnLFxuICAgICAgICAgICdbJj5wZG0tYnV0dG9uOmxhc3QtY2hpbGQ+YnV0dG9uXTohcm91bmRlZC1yLW1kJyxcbiAgICAgICAgICAnWyY+cGRtLWJ1dHRvbjpub3QoOmZpcnN0LWNoaWxkKT5idXR0b25dOiFib3JkZXItbC0wJyxcbiAgICAgICAgICAnWyY+cGRtLWlucHV0PmRpdj5pbnB1dF06IXJvdW5kZWQtbm9uZScsXG4gICAgICAgICAgJ1smPnBkbS1pbnB1dDpmaXJzdC1jaGlsZD5kaXY+aW5wdXRdOiFyb3VuZGVkLWwtbWQnLFxuICAgICAgICAgICdbJj5wZG0taW5wdXQ6bGFzdC1jaGlsZD5kaXY+aW5wdXRdOiFyb3VuZGVkLXItbWQnLFxuICAgICAgICAgICdbJj5wZG0taW5wdXQtZ3JvdXA+ZGl2XTohcm91bmRlZC1ub25lJyxcbiAgICAgICAgICAnWyY+cGRtLWlucHV0LWdyb3VwOmZpcnN0LWNoaWxkPmRpdl06IXJvdW5kZWQtbC1tZCcsXG4gICAgICAgICAgJ1smPnBkbS1pbnB1dC1ncm91cDpsYXN0LWNoaWxkPmRpdl06IXJvdW5kZWQtci1tZCcsXG4gICAgICAgICAgJ1smPnBkbS1pbnB1dD5kaXY+aW5wdXRdOmJnLWJhY2tncm91bmQnLFxuICAgICAgICAgICdbJj5wZG0taW5wdXQ+ZGl2PmlucHV0XTpzaGFkb3ctbm9uZScsXG4gICAgICAgICAgJ1smPnBkbS1idXR0b24+YnV0dG9uXTpyb3VuZGVkLWwtbm9uZScsXG4gICAgICAgICAgJ1smPnBkbS1idXR0b24+YnV0dG9uXTpzaGFkb3ctbm9uZScsXG4gICAgICAgICAgJ1smPnBkbS10b29sdGlwPnNwYW4+Kl06cm91bmRlZC1ub25lJyxcbiAgICAgICAgICAnWyY+cGRtLXRvb2x0aXA6Zmlyc3QtY2hpbGQ+c3Bhbj4qXTpyb3VuZGVkLWwtbWQnLFxuICAgICAgICAgICdbJj5wZG0tdG9vbHRpcDpsYXN0LWNoaWxkPnNwYW4+Kl06cm91bmRlZC1yLW1kJyxcbiAgICAgICAgICAnWyY+cGRtLXRvb2x0aXA6bm90KDpmaXJzdC1jaGlsZCk+c3Bhbj4qXTpib3JkZXItbC0wJyxcbiAgICAgICAgICAnWyY+cGRtLXRvb2x0aXA+c3Bhbj5wZG0tYnV0dG9uPmJ1dHRvbl06IXJvdW5kZWQtbm9uZScsXG4gICAgICAgICAgJ1smPnBkbS10b29sdGlwOmZpcnN0LWNoaWxkPnNwYW4+cGRtLWJ1dHRvbj5idXR0b25dOiFyb3VuZGVkLWwtbWQnLFxuICAgICAgICAgICdbJj5wZG0tdG9vbHRpcDpsYXN0LWNoaWxkPnNwYW4+cGRtLWJ1dHRvbj5idXR0b25dOiFyb3VuZGVkLXItbWQnLFxuICAgICAgICAgICdbJj5wZG0tdG9vbHRpcDpub3QoOmZpcnN0LWNoaWxkKT5zcGFuPnBkbS1idXR0b24+YnV0dG9uXTohYm9yZGVyLWwtMCcsXG4gICAgICAgICAgJ1smPnBkbS10b29sdGlwPnNwYW4+cGRtLWJ1dHRvbj5idXR0b25dOnNoYWRvdy1ub25lJyxcbiAgICAgICAgICAnWyY+cGRtLXRvb2x0aXA+c3Bhbj5idXR0b25dOiFyb3VuZGVkLW5vbmUnLFxuICAgICAgICAgICdbJj5wZG0tdG9vbHRpcDpmaXJzdC1jaGlsZD5zcGFuPmJ1dHRvbl06IXJvdW5kZWQtbC1tZCcsXG4gICAgICAgICAgJ1smPnBkbS10b29sdGlwOmxhc3QtY2hpbGQ+c3Bhbj5idXR0b25dOiFyb3VuZGVkLXItbWQnLFxuICAgICAgICAgICdbJj5wZG0tdG9vbHRpcDpub3QoOmZpcnN0LWNoaWxkKT5zcGFuPmJ1dHRvbl06IWJvcmRlci1sLTAnLFxuICAgICAgICAgICdbJj5wZG0tdG9vbHRpcD5zcGFuPmJ1dHRvbl06c2hhZG93LW5vbmUnLFxuICAgICAgICAgICdbJj5wZG0tdG9vbHRpcD5zcGFuPnBkbS1pbnB1dD5kaXY+aW5wdXRdOiFyb3VuZGVkLW5vbmUnLFxuICAgICAgICAgICdbJj5wZG0tdG9vbHRpcDpmaXJzdC1jaGlsZD5zcGFuPnBkbS1pbnB1dD5kaXY+aW5wdXRdOiFyb3VuZGVkLWwtbWQnLFxuICAgICAgICAgICdbJj5wZG0tdG9vbHRpcDpsYXN0LWNoaWxkPnNwYW4+cGRtLWlucHV0PmRpdj5pbnB1dF06IXJvdW5kZWQtci1tZCcsXG4gICAgICAgICAgJ1smPnBkbS10b29sdGlwPnNwYW4+cGRtLWlucHV0PmRpdj5pbnB1dF06c2hhZG93LW5vbmUnLFxuICAgICAgICAgICdbJj5wZG0tdG9vbHRpcD5zcGFuPmlucHV0XTohcm91bmRlZC1ub25lJyxcbiAgICAgICAgICAnWyY+cGRtLXRvb2x0aXA6Zmlyc3QtY2hpbGQ+c3Bhbj5pbnB1dF06IXJvdW5kZWQtbC1tZCcsXG4gICAgICAgICAgJ1smPnBkbS10b29sdGlwOmxhc3QtY2hpbGQ+c3Bhbj5pbnB1dF06IXJvdW5kZWQtci1tZCcsXG4gICAgICAgICAgJ1smPnBkbS10b29sdGlwPnNwYW4+aW5wdXRdOnNoYWRvdy1ub25lJyxcbiAgICAgICAgICAnWyY+cGRtLXRvb2x0aXA+c3Bhbj5wZG0taW5wdXQtZ3JvdXA+ZGl2XTohcm91bmRlZC1ub25lJyxcbiAgICAgICAgICAnWyY+cGRtLXRvb2x0aXA6Zmlyc3QtY2hpbGQ+c3Bhbj5wZG0taW5wdXQtZ3JvdXA+ZGl2XTohcm91bmRlZC1sLW1kJyxcbiAgICAgICAgICAnWyY+cGRtLXRvb2x0aXA6bGFzdC1jaGlsZD5zcGFuPnBkbS1pbnB1dC1ncm91cD5kaXZdOiFyb3VuZGVkLXItbWQnLFxuICAgICAgICAgICdbJj5wZG0tdG9vbHRpcD5zcGFuPnBkbS1zZWxlY3Q+c2VsZWN0XTohcm91bmRlZC1ub25lJyxcbiAgICAgICAgICAnWyY+cGRtLXRvb2x0aXA6Zmlyc3QtY2hpbGQ+c3Bhbj5wZG0tc2VsZWN0PnNlbGVjdF06IXJvdW5kZWQtbC1tZCcsXG4gICAgICAgICAgJ1smPnBkbS10b29sdGlwOmxhc3QtY2hpbGQ+c3Bhbj5wZG0tc2VsZWN0PnNlbGVjdF06IXJvdW5kZWQtci1tZCcsXG4gICAgICAgICAgJ1smPnBkbS10b29sdGlwPnNwYW4+cGRtLXNlbGVjdD5zZWxlY3RdOnNoYWRvdy1ub25lJyxcbiAgICAgICAgICAnWyY+cGRtLXRvb2x0aXA+c3Bhbj5wZG0tc2VsZWN0PmRpdj5idXR0b25dOiFyb3VuZGVkLW5vbmUnLFxuICAgICAgICAgICdbJj5wZG0tdG9vbHRpcDpmaXJzdC1jaGlsZD5zcGFuPnBkbS1zZWxlY3Q+ZGl2PmJ1dHRvbl06IXJvdW5kZWQtbC1tZCcsXG4gICAgICAgICAgJ1smPnBkbS10b29sdGlwOmxhc3QtY2hpbGQ+c3Bhbj5wZG0tc2VsZWN0PmRpdj5idXR0b25dOiFyb3VuZGVkLXItbWQnLFxuICAgICAgICAgICdbJj5wZG0tdG9vbHRpcDpub3QoOmZpcnN0LWNoaWxkKT5zcGFuPnBkbS1zZWxlY3Q+ZGl2PmJ1dHRvbl06IXJvdW5kZWQtbC1ub25lJyxcbiAgICAgICAgICAnWyY+cGRtLXRvb2x0aXA6bm90KDpsYXN0LWNoaWxkKT5zcGFuPnBkbS1zZWxlY3Q+ZGl2PmJ1dHRvbl06IXJvdW5kZWQtci1ub25lJyxcbiAgICAgICAgICAnWyY+cGRtLXRvb2x0aXA6bm90KDpmaXJzdC1jaGlsZCk+c3Bhbj5wZG0tc2VsZWN0PmRpdj5idXR0b25dOiFib3JkZXItbC0wJyxcbiAgICAgICAgICAnWyY+cGRtLXRvb2x0aXA+c3Bhbj5wZG0tc2VsZWN0PmRpdj5idXR0b25dOnNoYWRvdy1ub25lJyxcbiAgICAgICAgICAnWyY+cGRtLXRvb2x0aXA+c3Bhbj5zZWxlY3RdOiFyb3VuZGVkLW5vbmUnLFxuICAgICAgICAgICdbJj5wZG0tdG9vbHRpcDpmaXJzdC1jaGlsZD5zcGFuPnNlbGVjdF06IXJvdW5kZWQtbC1tZCcsXG4gICAgICAgICAgJ1smPnBkbS10b29sdGlwOmxhc3QtY2hpbGQ+c3Bhbj5zZWxlY3RdOiFyb3VuZGVkLXItbWQnLFxuICAgICAgICAgICdbJj5wZG0tdG9vbHRpcD5zcGFuPnNlbGVjdF06c2hhZG93LW5vbmUnXG4gICAgICAgIF0uam9pbignICcpXG4gICAgICA6ICcnO1xuXG4gICAgY29uc3QgZ3JvdXBWZXJ0aWNhbENsYXNzZXMgPSBpc0dyb3VwICYmIGlzVmVydGljYWwgJiYgIXRoaXMuc2VwYXJhdGVkXG4gICAgICA/IFtcbiAgICAgICAgICAnWyY+Kl06cm91bmRlZC1ub25lJyxcbiAgICAgICAgICAnWyY+KjpmaXJzdC1jaGlsZF06cm91bmRlZC10LW1kJyxcbiAgICAgICAgICAnWyY+KjpsYXN0LWNoaWxkXTpyb3VuZGVkLWItbWQnLFxuICAgICAgICAgICdbJj4qOm5vdCg6Zmlyc3QtY2hpbGQpXTotbXQtcHgnLFxuICAgICAgICAgICdbJj4qOm5vdCg6Zmlyc3QtY2hpbGQpXTpib3JkZXItdC0wJyxcbiAgICAgICAgICAnWyY+cGRtLWJ1dHRvbl06ZmxleCcsXG4gICAgICAgICAgJ1smPnBkbS1idXR0b24+YnV0dG9uXTpoLTknLFxuICAgICAgICAgICdbJj5wZG0tYnV0dG9uPmJ1dHRvbl06IXJvdW5kZWQtbm9uZScsXG4gICAgICAgICAgJ1smPnBkbS1idXR0b246Zmlyc3QtY2hpbGQ+YnV0dG9uXTohcm91bmRlZC10LW1kJyxcbiAgICAgICAgICAnWyY+cGRtLWJ1dHRvbjpsYXN0LWNoaWxkPmJ1dHRvbl06IXJvdW5kZWQtYi1tZCcsXG4gICAgICAgICAgJ1smPnBkbS1pbnB1dD5kaXY+aW5wdXRdOiFyb3VuZGVkLW5vbmUnLFxuICAgICAgICAgICdbJj5wZG0taW5wdXQ6Zmlyc3QtY2hpbGQ+ZGl2PmlucHV0XTohcm91bmRlZC10LW1kJyxcbiAgICAgICAgICAnWyY+cGRtLWlucHV0Omxhc3QtY2hpbGQ+ZGl2PmlucHV0XTohcm91bmRlZC1iLW1kJyxcbiAgICAgICAgICAnWyY+cGRtLWlucHV0LWdyb3VwPmRpdl06IXJvdW5kZWQtbm9uZScsXG4gICAgICAgICAgJ1smPnBkbS1pbnB1dC1ncm91cDpmaXJzdC1jaGlsZD5kaXZdOiFyb3VuZGVkLXQtbWQnLFxuICAgICAgICAgICdbJj5wZG0taW5wdXQtZ3JvdXA6bGFzdC1jaGlsZD5kaXZdOiFyb3VuZGVkLWItbWQnLFxuICAgICAgICAgICdbJj5wZG0tc2VsZWN0PnNlbGVjdF06IXJvdW5kZWQtbm9uZScsXG4gICAgICAgICAgJ1smPnBkbS1zZWxlY3Q6Zmlyc3QtY2hpbGQ+c2VsZWN0XTohcm91bmRlZC10LW1kJyxcbiAgICAgICAgICAnWyY+cGRtLXNlbGVjdDpsYXN0LWNoaWxkPnNlbGVjdF06IXJvdW5kZWQtYi1tZCcsXG4gICAgICAgICAgJ1smPnBkbS1zZWxlY3Q+c2VsZWN0XTpzaGFkb3ctbm9uZScsXG4gICAgICAgICAgJ1smPnBkbS1zZWxlY3Q+ZGl2PmJ1dHRvbl06IXJvdW5kZWQtbm9uZScsXG4gICAgICAgICAgJ1smPnBkbS1zZWxlY3Q6Zmlyc3QtY2hpbGQ+ZGl2PmJ1dHRvbl06IXJvdW5kZWQtdC1tZCcsXG4gICAgICAgICAgJ1smPnBkbS1zZWxlY3Q6bGFzdC1jaGlsZD5kaXY+YnV0dG9uXTohcm91bmRlZC1iLW1kJyxcbiAgICAgICAgICAnWyY+cGRtLXNlbGVjdDpub3QoOmZpcnN0LWNoaWxkKT5kaXY+YnV0dG9uXTohcm91bmRlZC10LW5vbmUnLFxuICAgICAgICAgICdbJj5wZG0tc2VsZWN0Om5vdCg6bGFzdC1jaGlsZCk+ZGl2PmJ1dHRvbl06IXJvdW5kZWQtYi1ub25lJyxcbiAgICAgICAgICAnWyY+cGRtLXNlbGVjdDpub3QoOmZpcnN0LWNoaWxkKT5kaXY+YnV0dG9uXTohYm9yZGVyLXQtMCcsXG4gICAgICAgICAgJ1smPnBkbS1zZWxlY3Q+ZGl2PmJ1dHRvbl06c2hhZG93LW5vbmUnLFxuICAgICAgICAgICdbJj5wZG0taW5wdXQ+ZGl2PmlucHV0XTpiZy1iYWNrZ3JvdW5kJyxcbiAgICAgICAgICAnWyY+cGRtLWlucHV0PmRpdj5pbnB1dF06c2hhZG93LW5vbmUnLFxuICAgICAgICAgICdbJj5wZG0tYnV0dG9uPmJ1dHRvbl06c2hhZG93LW5vbmUnLFxuICAgICAgICAgICdbJj5wZG0tYnV0dG9uOm5vdCg6Zmlyc3QtY2hpbGQpPmJ1dHRvbl06IWJvcmRlci10LTAnLFxuICAgICAgICAgICdbJj5wZG0tdG9vbHRpcD5zcGFuPipdOnJvdW5kZWQtbm9uZScsXG4gICAgICAgICAgJ1smPnBkbS10b29sdGlwOmZpcnN0LWNoaWxkPnNwYW4+Kl06cm91bmRlZC10LW1kJyxcbiAgICAgICAgICAnWyY+cGRtLXRvb2x0aXA6bGFzdC1jaGlsZD5zcGFuPipdOnJvdW5kZWQtYi1tZCcsXG4gICAgICAgICAgJ1smPnBkbS10b29sdGlwOm5vdCg6Zmlyc3QtY2hpbGQpPnNwYW4+Kl06Ym9yZGVyLXQtMCcsXG4gICAgICAgICAgJ1smPnBkbS10b29sdGlwPnNwYW4+cGRtLWJ1dHRvbj5idXR0b25dOiFyb3VuZGVkLW5vbmUnLFxuICAgICAgICAgICdbJj5wZG0tdG9vbHRpcDpmaXJzdC1jaGlsZD5zcGFuPnBkbS1idXR0b24+YnV0dG9uXTohcm91bmRlZC10LW1kJyxcbiAgICAgICAgICAnWyY+cGRtLXRvb2x0aXA6bGFzdC1jaGlsZD5zcGFuPnBkbS1idXR0b24+YnV0dG9uXTohcm91bmRlZC1iLW1kJyxcbiAgICAgICAgICAnWyY+cGRtLXRvb2x0aXA6bm90KDpmaXJzdC1jaGlsZCk+c3Bhbj5wZG0tYnV0dG9uPmJ1dHRvbl06IWJvcmRlci10LTAnLFxuICAgICAgICAgICdbJj5wZG0tdG9vbHRpcD5zcGFuPnBkbS1idXR0b24+YnV0dG9uXTpzaGFkb3ctbm9uZScsXG4gICAgICAgICAgJ1smPnBkbS10b29sdGlwPnNwYW4+YnV0dG9uXTohcm91bmRlZC1ub25lJyxcbiAgICAgICAgICAnWyY+cGRtLXRvb2x0aXA6Zmlyc3QtY2hpbGQ+c3Bhbj5idXR0b25dOiFyb3VuZGVkLXQtbWQnLFxuICAgICAgICAgICdbJj5wZG0tdG9vbHRpcDpsYXN0LWNoaWxkPnNwYW4+YnV0dG9uXTohcm91bmRlZC1iLW1kJyxcbiAgICAgICAgICAnWyY+cGRtLXRvb2x0aXA6bm90KDpmaXJzdC1jaGlsZCk+c3Bhbj5idXR0b25dOiFib3JkZXItdC0wJyxcbiAgICAgICAgICAnWyY+cGRtLXRvb2x0aXA+c3Bhbj5idXR0b25dOnNoYWRvdy1ub25lJyxcbiAgICAgICAgICAnWyY+cGRtLXRvb2x0aXA+c3Bhbj5wZG0taW5wdXQ+ZGl2PmlucHV0XTohcm91bmRlZC1ub25lJyxcbiAgICAgICAgICAnWyY+cGRtLXRvb2x0aXA6Zmlyc3QtY2hpbGQ+c3Bhbj5wZG0taW5wdXQ+ZGl2PmlucHV0XTohcm91bmRlZC10LW1kJyxcbiAgICAgICAgICAnWyY+cGRtLXRvb2x0aXA6bGFzdC1jaGlsZD5zcGFuPnBkbS1pbnB1dD5kaXY+aW5wdXRdOiFyb3VuZGVkLWItbWQnLFxuICAgICAgICAgICdbJj5wZG0tdG9vbHRpcD5zcGFuPnBkbS1pbnB1dD5kaXY+aW5wdXRdOnNoYWRvdy1ub25lJyxcbiAgICAgICAgICAnWyY+cGRtLXRvb2x0aXA+c3Bhbj5pbnB1dF06IXJvdW5kZWQtbm9uZScsXG4gICAgICAgICAgJ1smPnBkbS10b29sdGlwOmZpcnN0LWNoaWxkPnNwYW4+aW5wdXRdOiFyb3VuZGVkLXQtbWQnLFxuICAgICAgICAgICdbJj5wZG0tdG9vbHRpcDpsYXN0LWNoaWxkPnNwYW4+aW5wdXRdOiFyb3VuZGVkLWItbWQnLFxuICAgICAgICAgICdbJj5wZG0tdG9vbHRpcD5zcGFuPmlucHV0XTpzaGFkb3ctbm9uZScsXG4gICAgICAgICAgJ1smPnBkbS10b29sdGlwPnNwYW4+cGRtLWlucHV0LWdyb3VwPmRpdl06IXJvdW5kZWQtbm9uZScsXG4gICAgICAgICAgJ1smPnBkbS10b29sdGlwOmZpcnN0LWNoaWxkPnNwYW4+cGRtLWlucHV0LWdyb3VwPmRpdl06IXJvdW5kZWQtdC1tZCcsXG4gICAgICAgICAgJ1smPnBkbS10b29sdGlwOmxhc3QtY2hpbGQ+c3Bhbj5wZG0taW5wdXQtZ3JvdXA+ZGl2XTohcm91bmRlZC1iLW1kJyxcbiAgICAgICAgICAnWyY+cGRtLXRvb2x0aXA+c3Bhbj5wZG0tc2VsZWN0PnNlbGVjdF06IXJvdW5kZWQtbm9uZScsXG4gICAgICAgICAgJ1smPnBkbS10b29sdGlwOmZpcnN0LWNoaWxkPnNwYW4+cGRtLXNlbGVjdD5zZWxlY3RdOiFyb3VuZGVkLXQtbWQnLFxuICAgICAgICAgICdbJj5wZG0tdG9vbHRpcDpsYXN0LWNoaWxkPnNwYW4+cGRtLXNlbGVjdD5zZWxlY3RdOiFyb3VuZGVkLWItbWQnLFxuICAgICAgICAgICdbJj5wZG0tdG9vbHRpcD5zcGFuPnBkbS1zZWxlY3Q+c2VsZWN0XTpzaGFkb3ctbm9uZScsXG4gICAgICAgICAgJ1smPnBkbS10b29sdGlwPnNwYW4+cGRtLXNlbGVjdD5kaXY+YnV0dG9uXTohcm91bmRlZC1ub25lJyxcbiAgICAgICAgICAnWyY+cGRtLXRvb2x0aXA6Zmlyc3QtY2hpbGQ+c3Bhbj5wZG0tc2VsZWN0PmRpdj5idXR0b25dOiFyb3VuZGVkLXQtbWQnLFxuICAgICAgICAgICdbJj5wZG0tdG9vbHRpcDpsYXN0LWNoaWxkPnNwYW4+cGRtLXNlbGVjdD5kaXY+YnV0dG9uXTohcm91bmRlZC1iLW1kJyxcbiAgICAgICAgICAnWyY+cGRtLXRvb2x0aXA6bm90KDpmaXJzdC1jaGlsZCk+c3Bhbj5wZG0tc2VsZWN0PmRpdj5idXR0b25dOiFyb3VuZGVkLXQtbm9uZScsXG4gICAgICAgICAgJ1smPnBkbS10b29sdGlwOm5vdCg6bGFzdC1jaGlsZCk+c3Bhbj5wZG0tc2VsZWN0PmRpdj5idXR0b25dOiFyb3VuZGVkLWItbm9uZScsXG4gICAgICAgICAgJ1smPnBkbS10b29sdGlwOm5vdCg6Zmlyc3QtY2hpbGQpPnNwYW4+cGRtLXNlbGVjdD5kaXY+YnV0dG9uXTohYm9yZGVyLXQtMCcsXG4gICAgICAgICAgJ1smPnBkbS10b29sdGlwPnNwYW4+cGRtLXNlbGVjdD5kaXY+YnV0dG9uXTpzaGFkb3ctbm9uZScsXG4gICAgICAgICAgJ1smPnBkbS10b29sdGlwPnNwYW4+c2VsZWN0XTohcm91bmRlZC1ub25lJyxcbiAgICAgICAgICAnWyY+cGRtLXRvb2x0aXA6Zmlyc3QtY2hpbGQ+c3Bhbj5zZWxlY3RdOiFyb3VuZGVkLXQtbWQnLFxuICAgICAgICAgICdbJj5wZG0tdG9vbHRpcDpsYXN0LWNoaWxkPnNwYW4+c2VsZWN0XTohcm91bmRlZC1iLW1kJyxcbiAgICAgICAgICAnWyY+cGRtLXRvb2x0aXA+c3Bhbj5zZWxlY3RdOnNoYWRvdy1ub25lJ1xuICAgICAgICBdLmpvaW4oJyAnKVxuICAgICAgOiAnJztcblxuICAgIHJldHVybiBbXG4gICAgICAnaW5saW5lLWZsZXggdy1maXQnLFxuICAgICAgaXNWZXJ0aWNhbCA/ICdmbGV4LWNvbCBpdGVtcy1zdHJldGNoJyA6ICdpdGVtcy1jZW50ZXInLFxuICAgICAgdGhpcy52YXJpYW50ID09PSAnZGVmYXVsdCcgfHwgdGhpcy5zZXBhcmF0ZWQgPyAnZ2FwLTInIDogJ2dhcC0wJyxcbiAgICAgIGlzR3JvdXAgPyAnKjpmb2N1cy12aXNpYmxlOnJlbGF0aXZlICo6Zm9jdXMtdmlzaWJsZTp6LTEwJyA6ICcnLFxuICAgICAgYXR0YWNoZWRDbGFzc2VzLFxuICAgICAgZ3JvdXBIb3Jpem9udGFsQ2xhc3NlcyxcbiAgICAgIGdyb3VwVmVydGljYWxDbGFzc2VzLFxuICAgICAgaXNTZXBhcmF0b3JcbiAgICAgICAgPyAnb3ZlcmZsb3ctaGlkZGVuIHJvdW5kZWQtbWQgYm9yZGVyIGJvcmRlci1ib3JkZXIgYmctc2Vjb25kYXJ5IHNoYWRvdy1zbSdcbiAgICAgICAgOiAnJyxcbiAgICAgIHRoaXMuY2xhc3NOYW1lXG4gICAgXTtcbiAgfVxufVxuIiwiPGRpdlxuICByb2xlPVwiZ3JvdXBcIlxuICBbYXR0ci5hcmlhLW9yaWVudGF0aW9uXT1cInZhcmlhbnQgPT09ICdvcmllbnRhdGlvbicgfHwgb3JpZW50YXRpb24gPT09ICd2ZXJ0aWNhbCcgfHwgZGlyZWN0aW9uID09PSAndmVydGljYWwnID8gJ3ZlcnRpY2FsJyA6ICdob3Jpem9udGFsJ1wiXG4gIFtuZ0NsYXNzXT1cInJvb3RDbGFzc2VzXCJcbj5cbiAgPG5nLWNvbnRlbnQ+PC9uZy1jb250ZW50PlxuPC9kaXY+XG4iXX0=
@@ -2,24 +2,34 @@ import { ChangeDetectionStrategy, Component, EventEmitter, Input, Output } from
2
2
  import * as i0 from "@angular/core";
3
3
  import * as i1 from "@angular/common";
4
4
  import * as i2 from "../icon/icon.component";
5
+ import * as i3 from "../select/select.component";
5
6
  export class PdmPaginationComponent {
6
7
  constructor() {
7
8
  this.page = 1;
8
9
  this.pageCount = 1;
9
- this.maxVisible = 5;
10
+ this.maxVisible = 4;
10
11
  this.className = '';
12
+ this.rowsPerPageLabel = 'Rows per page';
13
+ this.rowsPerPage = 10;
14
+ this.rowsPerPageOptions = [10, 20, 30, 50];
11
15
  this.pageChange = new EventEmitter();
16
+ this.rowsPerPageChange = new EventEmitter();
17
+ }
18
+ get rowsPerPageSelectOptions() {
19
+ return this.rowsPerPageOptions.map((value) => ({
20
+ label: String(value),
21
+ value: String(value)
22
+ }));
23
+ }
24
+ get rowsPerPageValue() {
25
+ return String(this.rowsPerPage);
12
26
  }
13
27
  get visiblePages() {
14
28
  const total = Math.max(1, this.pageCount);
15
- const visible = Math.max(1, this.maxVisible);
16
- const half = Math.floor(visible / 2);
17
- let start = Math.max(1, this.page - half);
18
- let end = Math.min(total, start + visible - 1);
19
- if (end - start + 1 < visible) {
20
- start = Math.max(1, end - visible + 1);
29
+ if (total <= Math.max(1, this.maxVisible)) {
30
+ return Array.from({ length: total }, (_, i) => i + 1);
21
31
  }
22
- return Array.from({ length: end - start + 1 }, (_, i) => start + i);
32
+ return [1, 2, 'ellipsis', total];
23
33
  }
24
34
  setPage(next) {
25
35
  if (next < 1 || next > this.pageCount || next === this.page) {
@@ -27,12 +37,19 @@ export class PdmPaginationComponent {
27
37
  }
28
38
  this.pageChange.emit(next);
29
39
  }
40
+ onRowsPerPageChangeValue(value) {
41
+ const next = Number(value);
42
+ if (!Number.isFinite(next) || next <= 0 || next === this.rowsPerPage) {
43
+ return;
44
+ }
45
+ this.rowsPerPageChange.emit(next);
46
+ }
30
47
  }
31
48
  PdmPaginationComponent.ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "14.3.0", ngImport: i0, type: PdmPaginationComponent, deps: [], target: i0.ɵɵFactoryTarget.Component });
32
- PdmPaginationComponent.ɵcmp = i0.ɵɵngDeclareComponent({ minVersion: "14.0.0", version: "14.3.0", type: PdmPaginationComponent, selector: "pdm-pagination", inputs: { page: "page", pageCount: "pageCount", maxVisible: "maxVisible", className: "className" }, outputs: { pageChange: "pageChange" }, ngImport: i0, template: "<nav aria-label=\"Pagination\" [ngClass]=\"['mx-auto flex w-full justify-center', className]\">\n <ul class=\"flex items-center gap-1\">\n <li>\n <button type=\"button\" class=\"inline-flex h-9 items-center justify-center gap-1 rounded-md px-2 text-sm text-foreground hover:bg-accent disabled:opacity-50 ring-offset-background focus-visible:outline-none focus-visible:ring-2 focus-visible:ring-ring focus-visible:ring-offset-2\" [disabled]=\"page <= 1\" (click)=\"setPage(page - 1)\">\n <pdm-icon name=\"chevron-left\" [size]=\"14\"></pdm-icon>\n Previous\n </button>\n </li>\n <li *ngFor=\"let pageNumber of visiblePages\">\n <button\n type=\"button\"\n [ngClass]=\"[\n 'inline-flex h-9 min-w-9 items-center justify-center rounded-md px-2 text-sm ring-offset-background focus-visible:outline-none focus-visible:ring-2 focus-visible:ring-ring focus-visible:ring-offset-2',\n pageNumber === page\n ? 'border border-border bg-muted text-foreground shadow-sm'\n : 'text-foreground hover:bg-accent hover:text-accent-foreground'\n ]\"\n (click)=\"setPage(pageNumber)\"\n >\n {{ pageNumber }}\n </button>\n </li>\n <li>\n <button type=\"button\" class=\"inline-flex h-9 items-center justify-center gap-1 rounded-md px-2 text-sm text-foreground hover:bg-accent disabled:opacity-50 ring-offset-background focus-visible:outline-none focus-visible:ring-2 focus-visible:ring-ring focus-visible:ring-offset-2\" [disabled]=\"page >= pageCount\" (click)=\"setPage(page + 1)\">\n Next\n <pdm-icon name=\"chevron-right\" [size]=\"14\"></pdm-icon>\n </button>\n </li>\n </ul>\n</nav>\n", dependencies: [{ kind: "directive", type: i1.NgClass, selector: "[ngClass]", inputs: ["class", "ngClass"] }, { kind: "directive", type: i1.NgForOf, selector: "[ngFor][ngForOf]", inputs: ["ngForOf", "ngForTrackBy", "ngForTemplate"] }, { kind: "component", type: i2.PdmIconComponent, selector: "pdm-icon", inputs: ["name", "library", "assetUrl", "size", "strokeWidth", "className", "ariaLabel", "decorative"] }], changeDetection: i0.ChangeDetectionStrategy.OnPush });
49
+ PdmPaginationComponent.ɵcmp = i0.ɵɵngDeclareComponent({ minVersion: "14.0.0", version: "14.3.0", type: PdmPaginationComponent, selector: "pdm-pagination", inputs: { page: "page", pageCount: "pageCount", maxVisible: "maxVisible", className: "className", rowsPerPageLabel: "rowsPerPageLabel", rowsPerPage: "rowsPerPage", rowsPerPageOptions: "rowsPerPageOptions" }, outputs: { pageChange: "pageChange", rowsPerPageChange: "rowsPerPageChange" }, ngImport: i0, template: "<nav\n aria-label=\"Pagination\"\n [ngClass]=\"[\n 'mx-auto flex w-full flex-wrap items-center justify-center gap-4',\n className,\n ]\"\n>\n <div class=\"flex items-center gap-3\" *ngIf=\"rowsPerPageOptions.length > 0\">\n <span class=\"text-sm font-medium text-foreground\">{{\n rowsPerPageLabel\n }}</span>\n <pdm-select\n [value]=\"rowsPerPageValue\"\n [options]=\"rowsPerPageSelectOptions\"\n [placeholder]=\"rowsPerPageValue\"\n className=\"w-[120px]\"\n (valueChange)=\"onRowsPerPageChangeValue($event)\"\n ></pdm-select>\n </div>\n\n <ul class=\"flex items-center gap-1\">\n <li>\n <button\n type=\"button\"\n class=\"inline-flex h-9 items-center justify-center gap-1 rounded-md px-2 text-sm text-foreground hover:bg-accent disabled:opacity-50 ring-offset-background focus-visible:outline-none focus-visible:ring-2 focus-visible:ring-ring focus-visible:ring-offset-2\"\n [disabled]=\"page <= 1\"\n (click)=\"setPage(page - 1)\"\n >\n <pdm-icon name=\"chevron-left\" [size]=\"14\"></pdm-icon>\n Previous\n </button>\n </li>\n <li *ngFor=\"let pageNumber of visiblePages\">\n <ng-container *ngIf=\"pageNumber === 'ellipsis'; else pageButton\">\n <span\n class=\"inline-flex h-9 min-w-9 items-center justify-center px-2 text-sm text-muted-foreground\"\n >...</span\n >\n </ng-container>\n <ng-template #pageButton>\n <button\n type=\"button\"\n [ngClass]=\"[\n 'inline-flex h-9 min-w-9 items-center justify-center rounded-md px-2 text-sm ring-offset-background focus-visible:outline-none focus-visible:ring-2 focus-visible:ring-ring focus-visible:ring-offset-2',\n pageNumber === page\n ? 'border border-border bg-muted text-foreground shadow-sm'\n : 'text-foreground hover:bg-accent hover:text-accent-foreground',\n ]\"\n (click)=\"setPage(+pageNumber)\"\n >\n {{ pageNumber }}\n </button>\n </ng-template>\n </li>\n <li>\n <button\n type=\"button\"\n class=\"inline-flex h-9 items-center justify-center gap-1 rounded-md px-2 text-sm text-foreground hover:bg-accent disabled:opacity-50 ring-offset-background focus-visible:outline-none focus-visible:ring-2 focus-visible:ring-ring focus-visible:ring-offset-2\"\n [disabled]=\"page >= pageCount\"\n (click)=\"setPage(page + 1)\"\n >\n Next\n <pdm-icon name=\"chevron-right\" [size]=\"14\"></pdm-icon>\n </button>\n </li>\n </ul>\n</nav>\n", dependencies: [{ kind: "directive", type: i1.NgClass, selector: "[ngClass]", inputs: ["class", "ngClass"] }, { kind: "directive", type: i1.NgForOf, selector: "[ngFor][ngForOf]", inputs: ["ngForOf", "ngForTrackBy", "ngForTemplate"] }, { kind: "directive", type: i1.NgIf, selector: "[ngIf]", inputs: ["ngIf", "ngIfThen", "ngIfElse"] }, { kind: "component", type: i2.PdmIconComponent, selector: "pdm-icon", inputs: ["name", "library", "assetUrl", "size", "strokeWidth", "className", "ariaLabel", "decorative"] }, { kind: "component", type: i3.PdmSelectComponent, selector: "pdm-select", inputs: ["id", "value", "options", "disabled", "invalid", "className", "placeholder"], outputs: ["valueChange"] }], changeDetection: i0.ChangeDetectionStrategy.OnPush });
33
50
  i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "14.3.0", ngImport: i0, type: PdmPaginationComponent, decorators: [{
34
51
  type: Component,
35
- args: [{ selector: 'pdm-pagination', changeDetection: ChangeDetectionStrategy.OnPush, template: "<nav aria-label=\"Pagination\" [ngClass]=\"['mx-auto flex w-full justify-center', className]\">\n <ul class=\"flex items-center gap-1\">\n <li>\n <button type=\"button\" class=\"inline-flex h-9 items-center justify-center gap-1 rounded-md px-2 text-sm text-foreground hover:bg-accent disabled:opacity-50 ring-offset-background focus-visible:outline-none focus-visible:ring-2 focus-visible:ring-ring focus-visible:ring-offset-2\" [disabled]=\"page <= 1\" (click)=\"setPage(page - 1)\">\n <pdm-icon name=\"chevron-left\" [size]=\"14\"></pdm-icon>\n Previous\n </button>\n </li>\n <li *ngFor=\"let pageNumber of visiblePages\">\n <button\n type=\"button\"\n [ngClass]=\"[\n 'inline-flex h-9 min-w-9 items-center justify-center rounded-md px-2 text-sm ring-offset-background focus-visible:outline-none focus-visible:ring-2 focus-visible:ring-ring focus-visible:ring-offset-2',\n pageNumber === page\n ? 'border border-border bg-muted text-foreground shadow-sm'\n : 'text-foreground hover:bg-accent hover:text-accent-foreground'\n ]\"\n (click)=\"setPage(pageNumber)\"\n >\n {{ pageNumber }}\n </button>\n </li>\n <li>\n <button type=\"button\" class=\"inline-flex h-9 items-center justify-center gap-1 rounded-md px-2 text-sm text-foreground hover:bg-accent disabled:opacity-50 ring-offset-background focus-visible:outline-none focus-visible:ring-2 focus-visible:ring-ring focus-visible:ring-offset-2\" [disabled]=\"page >= pageCount\" (click)=\"setPage(page + 1)\">\n Next\n <pdm-icon name=\"chevron-right\" [size]=\"14\"></pdm-icon>\n </button>\n </li>\n </ul>\n</nav>\n" }]
52
+ args: [{ selector: 'pdm-pagination', changeDetection: ChangeDetectionStrategy.OnPush, template: "<nav\n aria-label=\"Pagination\"\n [ngClass]=\"[\n 'mx-auto flex w-full flex-wrap items-center justify-center gap-4',\n className,\n ]\"\n>\n <div class=\"flex items-center gap-3\" *ngIf=\"rowsPerPageOptions.length > 0\">\n <span class=\"text-sm font-medium text-foreground\">{{\n rowsPerPageLabel\n }}</span>\n <pdm-select\n [value]=\"rowsPerPageValue\"\n [options]=\"rowsPerPageSelectOptions\"\n [placeholder]=\"rowsPerPageValue\"\n className=\"w-[120px]\"\n (valueChange)=\"onRowsPerPageChangeValue($event)\"\n ></pdm-select>\n </div>\n\n <ul class=\"flex items-center gap-1\">\n <li>\n <button\n type=\"button\"\n class=\"inline-flex h-9 items-center justify-center gap-1 rounded-md px-2 text-sm text-foreground hover:bg-accent disabled:opacity-50 ring-offset-background focus-visible:outline-none focus-visible:ring-2 focus-visible:ring-ring focus-visible:ring-offset-2\"\n [disabled]=\"page <= 1\"\n (click)=\"setPage(page - 1)\"\n >\n <pdm-icon name=\"chevron-left\" [size]=\"14\"></pdm-icon>\n Previous\n </button>\n </li>\n <li *ngFor=\"let pageNumber of visiblePages\">\n <ng-container *ngIf=\"pageNumber === 'ellipsis'; else pageButton\">\n <span\n class=\"inline-flex h-9 min-w-9 items-center justify-center px-2 text-sm text-muted-foreground\"\n >...</span\n >\n </ng-container>\n <ng-template #pageButton>\n <button\n type=\"button\"\n [ngClass]=\"[\n 'inline-flex h-9 min-w-9 items-center justify-center rounded-md px-2 text-sm ring-offset-background focus-visible:outline-none focus-visible:ring-2 focus-visible:ring-ring focus-visible:ring-offset-2',\n pageNumber === page\n ? 'border border-border bg-muted text-foreground shadow-sm'\n : 'text-foreground hover:bg-accent hover:text-accent-foreground',\n ]\"\n (click)=\"setPage(+pageNumber)\"\n >\n {{ pageNumber }}\n </button>\n </ng-template>\n </li>\n <li>\n <button\n type=\"button\"\n class=\"inline-flex h-9 items-center justify-center gap-1 rounded-md px-2 text-sm text-foreground hover:bg-accent disabled:opacity-50 ring-offset-background focus-visible:outline-none focus-visible:ring-2 focus-visible:ring-ring focus-visible:ring-offset-2\"\n [disabled]=\"page >= pageCount\"\n (click)=\"setPage(page + 1)\"\n >\n Next\n <pdm-icon name=\"chevron-right\" [size]=\"14\"></pdm-icon>\n </button>\n </li>\n </ul>\n</nav>\n" }]
36
53
  }], propDecorators: { page: [{
37
54
  type: Input
38
55
  }], pageCount: [{
@@ -41,7 +58,15 @@ i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "14.3.0", ngImpor
41
58
  type: Input
42
59
  }], className: [{
43
60
  type: Input
61
+ }], rowsPerPageLabel: [{
62
+ type: Input
63
+ }], rowsPerPage: [{
64
+ type: Input
65
+ }], rowsPerPageOptions: [{
66
+ type: Input
44
67
  }], pageChange: [{
45
68
  type: Output
69
+ }], rowsPerPageChange: [{
70
+ type: Output
46
71
  }] } });
47
- //# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoicGFnaW5hdGlvbi5jb21wb25lbnQuanMiLCJzb3VyY2VSb290IjoiIiwic291cmNlcyI6WyIuLi8uLi8uLi8uLi8uLi8uLi9zcmMvbGliL2NvbXBvbmVudHMvcGFnaW5hdGlvbi9wYWdpbmF0aW9uLmNvbXBvbmVudC50cyIsIi4uLy4uLy4uLy4uLy4uLy4uL3NyYy9saWIvY29tcG9uZW50cy9wYWdpbmF0aW9uL3BhZ2luYXRpb24uY29tcG9uZW50Lmh0bWwiXSwibmFtZXMiOltdLCJtYXBwaW5ncyI6IkFBQUEsT0FBTyxFQUFFLHVCQUF1QixFQUFFLFNBQVMsRUFBRSxZQUFZLEVBQUUsS0FBSyxFQUFFLE1BQU0sRUFBRSxNQUFNLGVBQWUsQ0FBQzs7OztBQU9oRyxNQUFNLE9BQU8sc0JBQXNCO0lBTG5DO1FBTVcsU0FBSSxHQUFHLENBQUMsQ0FBQztRQUNULGNBQVMsR0FBRyxDQUFDLENBQUM7UUFDZCxlQUFVLEdBQUcsQ0FBQyxDQUFDO1FBQ2YsY0FBUyxHQUFHLEVBQUUsQ0FBQztRQUVkLGVBQVUsR0FBRyxJQUFJLFlBQVksRUFBVSxDQUFDO0tBdUJuRDtJQXJCQyxJQUFJLFlBQVk7UUFDZCxNQUFNLEtBQUssR0FBRyxJQUFJLENBQUMsR0FBRyxDQUFDLENBQUMsRUFBRSxJQUFJLENBQUMsU0FBUyxDQUFDLENBQUM7UUFDMUMsTUFBTSxPQUFPLEdBQUcsSUFBSSxDQUFDLEdBQUcsQ0FBQyxDQUFDLEVBQUUsSUFBSSxDQUFDLFVBQVUsQ0FBQyxDQUFDO1FBQzdDLE1BQU0sSUFBSSxHQUFHLElBQUksQ0FBQyxLQUFLLENBQUMsT0FBTyxHQUFHLENBQUMsQ0FBQyxDQUFDO1FBQ3JDLElBQUksS0FBSyxHQUFHLElBQUksQ0FBQyxHQUFHLENBQUMsQ0FBQyxFQUFFLElBQUksQ0FBQyxJQUFJLEdBQUcsSUFBSSxDQUFDLENBQUM7UUFDMUMsSUFBSSxHQUFHLEdBQUcsSUFBSSxDQUFDLEdBQUcsQ0FBQyxLQUFLLEVBQUUsS0FBSyxHQUFHLE9BQU8sR0FBRyxDQUFDLENBQUMsQ0FBQztRQUUvQyxJQUFJLEdBQUcsR0FBRyxLQUFLLEdBQUcsQ0FBQyxHQUFHLE9BQU8sRUFBRTtZQUM3QixLQUFLLEdBQUcsSUFBSSxDQUFDLEdBQUcsQ0FBQyxDQUFDLEVBQUUsR0FBRyxHQUFHLE9BQU8sR0FBRyxDQUFDLENBQUMsQ0FBQztTQUN4QztRQUVELE9BQU8sS0FBSyxDQUFDLElBQUksQ0FBQyxFQUFFLE1BQU0sRUFBRSxHQUFHLEdBQUcsS0FBSyxHQUFHLENBQUMsRUFBRSxFQUFFLENBQUMsQ0FBQyxFQUFFLENBQUMsRUFBRSxFQUFFLENBQUMsS0FBSyxHQUFHLENBQUMsQ0FBQyxDQUFDO0lBQ3RFLENBQUM7SUFFRCxPQUFPLENBQUMsSUFBWTtRQUNsQixJQUFJLElBQUksR0FBRyxDQUFDLElBQUksSUFBSSxHQUFHLElBQUksQ0FBQyxTQUFTLElBQUksSUFBSSxLQUFLLElBQUksQ0FBQyxJQUFJLEVBQUU7WUFDM0QsT0FBTztTQUNSO1FBRUQsSUFBSSxDQUFDLFVBQVUsQ0FBQyxJQUFJLENBQUMsSUFBSSxDQUFDLENBQUM7SUFDN0IsQ0FBQzs7bUhBNUJVLHNCQUFzQjt1R0FBdEIsc0JBQXNCLGlNQ1BuQyxnc0RBOEJBOzJGRHZCYSxzQkFBc0I7a0JBTGxDLFNBQVM7K0JBQ0UsZ0JBQWdCLG1CQUVULHVCQUF1QixDQUFDLE1BQU07OEJBR3RDLElBQUk7c0JBQVosS0FBSztnQkFDRyxTQUFTO3NCQUFqQixLQUFLO2dCQUNHLFVBQVU7c0JBQWxCLEtBQUs7Z0JBQ0csU0FBUztzQkFBakIsS0FBSztnQkFFSSxVQUFVO3NCQUFuQixNQUFNIiwic291cmNlc0NvbnRlbnQiOlsiaW1wb3J0IHsgQ2hhbmdlRGV0ZWN0aW9uU3RyYXRlZ3ksIENvbXBvbmVudCwgRXZlbnRFbWl0dGVyLCBJbnB1dCwgT3V0cHV0IH0gZnJvbSAnQGFuZ3VsYXIvY29yZSc7XG5cbkBDb21wb25lbnQoe1xuICBzZWxlY3RvcjogJ3BkbS1wYWdpbmF0aW9uJyxcbiAgdGVtcGxhdGVVcmw6ICcuL3BhZ2luYXRpb24uY29tcG9uZW50Lmh0bWwnLFxuICBjaGFuZ2VEZXRlY3Rpb246IENoYW5nZURldGVjdGlvblN0cmF0ZWd5Lk9uUHVzaFxufSlcbmV4cG9ydCBjbGFzcyBQZG1QYWdpbmF0aW9uQ29tcG9uZW50IHtcbiAgQElucHV0KCkgcGFnZSA9IDE7XG4gIEBJbnB1dCgpIHBhZ2VDb3VudCA9IDE7XG4gIEBJbnB1dCgpIG1heFZpc2libGUgPSA1O1xuICBASW5wdXQoKSBjbGFzc05hbWUgPSAnJztcblxuICBAT3V0cHV0KCkgcGFnZUNoYW5nZSA9IG5ldyBFdmVudEVtaXR0ZXI8bnVtYmVyPigpO1xuXG4gIGdldCB2aXNpYmxlUGFnZXMoKTogbnVtYmVyW10ge1xuICAgIGNvbnN0IHRvdGFsID0gTWF0aC5tYXgoMSwgdGhpcy5wYWdlQ291bnQpO1xuICAgIGNvbnN0IHZpc2libGUgPSBNYXRoLm1heCgxLCB0aGlzLm1heFZpc2libGUpO1xuICAgIGNvbnN0IGhhbGYgPSBNYXRoLmZsb29yKHZpc2libGUgLyAyKTtcbiAgICBsZXQgc3RhcnQgPSBNYXRoLm1heCgxLCB0aGlzLnBhZ2UgLSBoYWxmKTtcbiAgICBsZXQgZW5kID0gTWF0aC5taW4odG90YWwsIHN0YXJ0ICsgdmlzaWJsZSAtIDEpO1xuXG4gICAgaWYgKGVuZCAtIHN0YXJ0ICsgMSA8IHZpc2libGUpIHtcbiAgICAgIHN0YXJ0ID0gTWF0aC5tYXgoMSwgZW5kIC0gdmlzaWJsZSArIDEpO1xuICAgIH1cblxuICAgIHJldHVybiBBcnJheS5mcm9tKHsgbGVuZ3RoOiBlbmQgLSBzdGFydCArIDEgfSwgKF8sIGkpID0+IHN0YXJ0ICsgaSk7XG4gIH1cblxuICBzZXRQYWdlKG5leHQ6IG51bWJlcik6IHZvaWQge1xuICAgIGlmIChuZXh0IDwgMSB8fCBuZXh0ID4gdGhpcy5wYWdlQ291bnQgfHwgbmV4dCA9PT0gdGhpcy5wYWdlKSB7XG4gICAgICByZXR1cm47XG4gICAgfVxuXG4gICAgdGhpcy5wYWdlQ2hhbmdlLmVtaXQobmV4dCk7XG4gIH1cbn1cbiIsIjxuYXYgYXJpYS1sYWJlbD1cIlBhZ2luYXRpb25cIiBbbmdDbGFzc109XCJbJ214LWF1dG8gZmxleCB3LWZ1bGwganVzdGlmeS1jZW50ZXInLCBjbGFzc05hbWVdXCI+XG4gIDx1bCBjbGFzcz1cImZsZXggaXRlbXMtY2VudGVyIGdhcC0xXCI+XG4gICAgPGxpPlxuICAgICAgPGJ1dHRvbiB0eXBlPVwiYnV0dG9uXCIgY2xhc3M9XCJpbmxpbmUtZmxleCBoLTkgaXRlbXMtY2VudGVyIGp1c3RpZnktY2VudGVyIGdhcC0xIHJvdW5kZWQtbWQgcHgtMiB0ZXh0LXNtIHRleHQtZm9yZWdyb3VuZCBob3ZlcjpiZy1hY2NlbnQgZGlzYWJsZWQ6b3BhY2l0eS01MCByaW5nLW9mZnNldC1iYWNrZ3JvdW5kIGZvY3VzLXZpc2libGU6b3V0bGluZS1ub25lIGZvY3VzLXZpc2libGU6cmluZy0yIGZvY3VzLXZpc2libGU6cmluZy1yaW5nIGZvY3VzLXZpc2libGU6cmluZy1vZmZzZXQtMlwiIFtkaXNhYmxlZF09XCJwYWdlIDw9IDFcIiAoY2xpY2spPVwic2V0UGFnZShwYWdlIC0gMSlcIj5cbiAgICAgICAgPHBkbS1pY29uIG5hbWU9XCJjaGV2cm9uLWxlZnRcIiBbc2l6ZV09XCIxNFwiPjwvcGRtLWljb24+XG4gICAgICAgIFByZXZpb3VzXG4gICAgICA8L2J1dHRvbj5cbiAgICA8L2xpPlxuICAgIDxsaSAqbmdGb3I9XCJsZXQgcGFnZU51bWJlciBvZiB2aXNpYmxlUGFnZXNcIj5cbiAgICAgIDxidXR0b25cbiAgICAgICAgdHlwZT1cImJ1dHRvblwiXG4gICAgICAgIFtuZ0NsYXNzXT1cIltcbiAgICAgICAgICAnaW5saW5lLWZsZXggaC05IG1pbi13LTkgaXRlbXMtY2VudGVyIGp1c3RpZnktY2VudGVyIHJvdW5kZWQtbWQgcHgtMiB0ZXh0LXNtIHJpbmctb2Zmc2V0LWJhY2tncm91bmQgZm9jdXMtdmlzaWJsZTpvdXRsaW5lLW5vbmUgZm9jdXMtdmlzaWJsZTpyaW5nLTIgZm9jdXMtdmlzaWJsZTpyaW5nLXJpbmcgZm9jdXMtdmlzaWJsZTpyaW5nLW9mZnNldC0yJyxcbiAgICAgICAgICBwYWdlTnVtYmVyID09PSBwYWdlXG4gICAgICAgICAgICA/ICdib3JkZXIgYm9yZGVyLWJvcmRlciBiZy1tdXRlZCB0ZXh0LWZvcmVncm91bmQgc2hhZG93LXNtJ1xuICAgICAgICAgICAgOiAndGV4dC1mb3JlZ3JvdW5kIGhvdmVyOmJnLWFjY2VudCBob3Zlcjp0ZXh0LWFjY2VudC1mb3JlZ3JvdW5kJ1xuICAgICAgICBdXCJcbiAgICAgICAgKGNsaWNrKT1cInNldFBhZ2UocGFnZU51bWJlcilcIlxuICAgICAgPlxuICAgICAgICB7eyBwYWdlTnVtYmVyIH19XG4gICAgICA8L2J1dHRvbj5cbiAgICA8L2xpPlxuICAgIDxsaT5cbiAgICAgIDxidXR0b24gdHlwZT1cImJ1dHRvblwiIGNsYXNzPVwiaW5saW5lLWZsZXggaC05IGl0ZW1zLWNlbnRlciBqdXN0aWZ5LWNlbnRlciBnYXAtMSByb3VuZGVkLW1kIHB4LTIgdGV4dC1zbSB0ZXh0LWZvcmVncm91bmQgaG92ZXI6YmctYWNjZW50IGRpc2FibGVkOm9wYWNpdHktNTAgcmluZy1vZmZzZXQtYmFja2dyb3VuZCBmb2N1cy12aXNpYmxlOm91dGxpbmUtbm9uZSBmb2N1cy12aXNpYmxlOnJpbmctMiBmb2N1cy12aXNpYmxlOnJpbmctcmluZyBmb2N1cy12aXNpYmxlOnJpbmctb2Zmc2V0LTJcIiBbZGlzYWJsZWRdPVwicGFnZSA+PSBwYWdlQ291bnRcIiAoY2xpY2spPVwic2V0UGFnZShwYWdlICsgMSlcIj5cbiAgICAgICAgTmV4dFxuICAgICAgICA8cGRtLWljb24gbmFtZT1cImNoZXZyb24tcmlnaHRcIiBbc2l6ZV09XCIxNFwiPjwvcGRtLWljb24+XG4gICAgICA8L2J1dHRvbj5cbiAgICA8L2xpPlxuICA8L3VsPlxuPC9uYXY+XG4iXX0=
72
+ //# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoicGFnaW5hdGlvbi5jb21wb25lbnQuanMiLCJzb3VyY2VSb290IjoiIiwic291cmNlcyI6WyIuLi8uLi8uLi8uLi8uLi8uLi9zcmMvbGliL2NvbXBvbmVudHMvcGFnaW5hdGlvbi9wYWdpbmF0aW9uLmNvbXBvbmVudC50cyIsIi4uLy4uLy4uLy4uLy4uLy4uL3NyYy9saWIvY29tcG9uZW50cy9wYWdpbmF0aW9uL3BhZ2luYXRpb24uY29tcG9uZW50Lmh0bWwiXSwibmFtZXMiOltdLCJtYXBwaW5ncyI6IkFBQUEsT0FBTyxFQUFFLHVCQUF1QixFQUFFLFNBQVMsRUFBRSxZQUFZLEVBQUUsS0FBSyxFQUFFLE1BQU0sRUFBRSxNQUFNLGVBQWUsQ0FBQzs7Ozs7QUFRaEcsTUFBTSxPQUFPLHNCQUFzQjtJQUxuQztRQU1XLFNBQUksR0FBRyxDQUFDLENBQUM7UUFDVCxjQUFTLEdBQUcsQ0FBQyxDQUFDO1FBQ2QsZUFBVSxHQUFHLENBQUMsQ0FBQztRQUNmLGNBQVMsR0FBRyxFQUFFLENBQUM7UUFDZixxQkFBZ0IsR0FBRyxlQUFlLENBQUM7UUFDbkMsZ0JBQVcsR0FBRyxFQUFFLENBQUM7UUFDakIsdUJBQWtCLEdBQWEsQ0FBQyxFQUFFLEVBQUUsRUFBRSxFQUFFLEVBQUUsRUFBRSxFQUFFLENBQUMsQ0FBQztRQUUvQyxlQUFVLEdBQUcsSUFBSSxZQUFZLEVBQVUsQ0FBQztRQUN4QyxzQkFBaUIsR0FBRyxJQUFJLFlBQVksRUFBVSxDQUFDO0tBc0MxRDtJQXBDQyxJQUFJLHdCQUF3QjtRQUMxQixPQUFPLElBQUksQ0FBQyxrQkFBa0IsQ0FBQyxHQUFHLENBQUMsQ0FBQyxLQUFLLEVBQUUsRUFBRSxDQUFDLENBQUM7WUFDN0MsS0FBSyxFQUFFLE1BQU0sQ0FBQyxLQUFLLENBQUM7WUFDcEIsS0FBSyxFQUFFLE1BQU0sQ0FBQyxLQUFLLENBQUM7U0FDckIsQ0FBQyxDQUFDLENBQUM7SUFDTixDQUFDO0lBRUQsSUFBSSxnQkFBZ0I7UUFDbEIsT0FBTyxNQUFNLENBQUMsSUFBSSxDQUFDLFdBQVcsQ0FBQyxDQUFDO0lBQ2xDLENBQUM7SUFFRCxJQUFJLFlBQVk7UUFDZCxNQUFNLEtBQUssR0FBRyxJQUFJLENBQUMsR0FBRyxDQUFDLENBQUMsRUFBRSxJQUFJLENBQUMsU0FBUyxDQUFDLENBQUM7UUFDMUMsSUFBSSxLQUFLLElBQUksSUFBSSxDQUFDLEdBQUcsQ0FBQyxDQUFDLEVBQUUsSUFBSSxDQUFDLFVBQVUsQ0FBQyxFQUFFO1lBQ3pDLE9BQU8sS0FBSyxDQUFDLElBQUksQ0FBQyxFQUFFLE1BQU0sRUFBRSxLQUFLLEVBQUUsRUFBRSxDQUFDLENBQUMsRUFBRSxDQUFDLEVBQUUsRUFBRSxDQUFDLENBQUMsR0FBRyxDQUFDLENBQUMsQ0FBQztTQUN2RDtRQUVELE9BQU8sQ0FBQyxDQUFDLEVBQUUsQ0FBQyxFQUFFLFVBQVUsRUFBRSxLQUFLLENBQUMsQ0FBQztJQUNuQyxDQUFDO0lBRUQsT0FBTyxDQUFDLElBQVk7UUFDbEIsSUFBSSxJQUFJLEdBQUcsQ0FBQyxJQUFJLElBQUksR0FBRyxJQUFJLENBQUMsU0FBUyxJQUFJLElBQUksS0FBSyxJQUFJLENBQUMsSUFBSSxFQUFFO1lBQzNELE9BQU87U0FDUjtRQUVELElBQUksQ0FBQyxVQUFVLENBQUMsSUFBSSxDQUFDLElBQUksQ0FBQyxDQUFDO0lBQzdCLENBQUM7SUFFRCx3QkFBd0IsQ0FBQyxLQUFhO1FBQ3BDLE1BQU0sSUFBSSxHQUFHLE1BQU0sQ0FBQyxLQUFLLENBQUMsQ0FBQztRQUMzQixJQUFJLENBQUMsTUFBTSxDQUFDLFFBQVEsQ0FBQyxJQUFJLENBQUMsSUFBSSxJQUFJLElBQUksQ0FBQyxJQUFJLElBQUksS0FBSyxJQUFJLENBQUMsV0FBVyxFQUFFO1lBQ3BFLE9BQU87U0FDUjtRQUVELElBQUksQ0FBQyxpQkFBaUIsQ0FBQyxJQUFJLENBQUMsSUFBSSxDQUFDLENBQUM7SUFDcEMsQ0FBQzs7bUhBL0NVLHNCQUFzQjt1R0FBdEIsc0JBQXNCLHFWQ1JuQyx3bEZBbUVBOzJGRDNEYSxzQkFBc0I7a0JBTGxDLFNBQVM7K0JBQ0UsZ0JBQWdCLG1CQUVULHVCQUF1QixDQUFDLE1BQU07OEJBR3RDLElBQUk7c0JBQVosS0FBSztnQkFDRyxTQUFTO3NCQUFqQixLQUFLO2dCQUNHLFVBQVU7c0JBQWxCLEtBQUs7Z0JBQ0csU0FBUztzQkFBakIsS0FBSztnQkFDRyxnQkFBZ0I7c0JBQXhCLEtBQUs7Z0JBQ0csV0FBVztzQkFBbkIsS0FBSztnQkFDRyxrQkFBa0I7c0JBQTFCLEtBQUs7Z0JBRUksVUFBVTtzQkFBbkIsTUFBTTtnQkFDRyxpQkFBaUI7c0JBQTFCLE1BQU0iLCJzb3VyY2VzQ29udGVudCI6WyJpbXBvcnQgeyBDaGFuZ2VEZXRlY3Rpb25TdHJhdGVneSwgQ29tcG9uZW50LCBFdmVudEVtaXR0ZXIsIElucHV0LCBPdXRwdXQgfSBmcm9tICdAYW5ndWxhci9jb3JlJztcbmltcG9ydCB0eXBlIHsgUGRtTmF0aXZlU2VsZWN0T3B0aW9uIH0gZnJvbSAnLi4vbmF0aXZlLXNlbGVjdC9uYXRpdmUtc2VsZWN0LmNvbXBvbmVudCc7XG5cbkBDb21wb25lbnQoe1xuICBzZWxlY3RvcjogJ3BkbS1wYWdpbmF0aW9uJyxcbiAgdGVtcGxhdGVVcmw6ICcuL3BhZ2luYXRpb24uY29tcG9uZW50Lmh0bWwnLFxuICBjaGFuZ2VEZXRlY3Rpb246IENoYW5nZURldGVjdGlvblN0cmF0ZWd5Lk9uUHVzaFxufSlcbmV4cG9ydCBjbGFzcyBQZG1QYWdpbmF0aW9uQ29tcG9uZW50IHtcbiAgQElucHV0KCkgcGFnZSA9IDE7XG4gIEBJbnB1dCgpIHBhZ2VDb3VudCA9IDE7XG4gIEBJbnB1dCgpIG1heFZpc2libGUgPSA0O1xuICBASW5wdXQoKSBjbGFzc05hbWUgPSAnJztcbiAgQElucHV0KCkgcm93c1BlclBhZ2VMYWJlbCA9ICdSb3dzIHBlciBwYWdlJztcbiAgQElucHV0KCkgcm93c1BlclBhZ2UgPSAxMDtcbiAgQElucHV0KCkgcm93c1BlclBhZ2VPcHRpb25zOiBudW1iZXJbXSA9IFsxMCwgMjAsIDMwLCA1MF07XG5cbiAgQE91dHB1dCgpIHBhZ2VDaGFuZ2UgPSBuZXcgRXZlbnRFbWl0dGVyPG51bWJlcj4oKTtcbiAgQE91dHB1dCgpIHJvd3NQZXJQYWdlQ2hhbmdlID0gbmV3IEV2ZW50RW1pdHRlcjxudW1iZXI+KCk7XG5cbiAgZ2V0IHJvd3NQZXJQYWdlU2VsZWN0T3B0aW9ucygpOiBQZG1OYXRpdmVTZWxlY3RPcHRpb25bXSB7XG4gICAgcmV0dXJuIHRoaXMucm93c1BlclBhZ2VPcHRpb25zLm1hcCgodmFsdWUpID0+ICh7XG4gICAgICBsYWJlbDogU3RyaW5nKHZhbHVlKSxcbiAgICAgIHZhbHVlOiBTdHJpbmcodmFsdWUpXG4gICAgfSkpO1xuICB9XG5cbiAgZ2V0IHJvd3NQZXJQYWdlVmFsdWUoKTogc3RyaW5nIHtcbiAgICByZXR1cm4gU3RyaW5nKHRoaXMucm93c1BlclBhZ2UpO1xuICB9XG5cbiAgZ2V0IHZpc2libGVQYWdlcygpOiBBcnJheTxudW1iZXIgfCAnZWxsaXBzaXMnPiB7XG4gICAgY29uc3QgdG90YWwgPSBNYXRoLm1heCgxLCB0aGlzLnBhZ2VDb3VudCk7XG4gICAgaWYgKHRvdGFsIDw9IE1hdGgubWF4KDEsIHRoaXMubWF4VmlzaWJsZSkpIHtcbiAgICAgIHJldHVybiBBcnJheS5mcm9tKHsgbGVuZ3RoOiB0b3RhbCB9LCAoXywgaSkgPT4gaSArIDEpO1xuICAgIH1cblxuICAgIHJldHVybiBbMSwgMiwgJ2VsbGlwc2lzJywgdG90YWxdO1xuICB9XG5cbiAgc2V0UGFnZShuZXh0OiBudW1iZXIpOiB2b2lkIHtcbiAgICBpZiAobmV4dCA8IDEgfHwgbmV4dCA+IHRoaXMucGFnZUNvdW50IHx8IG5leHQgPT09IHRoaXMucGFnZSkge1xuICAgICAgcmV0dXJuO1xuICAgIH1cblxuICAgIHRoaXMucGFnZUNoYW5nZS5lbWl0KG5leHQpO1xuICB9XG5cbiAgb25Sb3dzUGVyUGFnZUNoYW5nZVZhbHVlKHZhbHVlOiBzdHJpbmcpOiB2b2lkIHtcbiAgICBjb25zdCBuZXh0ID0gTnVtYmVyKHZhbHVlKTtcbiAgICBpZiAoIU51bWJlci5pc0Zpbml0ZShuZXh0KSB8fCBuZXh0IDw9IDAgfHwgbmV4dCA9PT0gdGhpcy5yb3dzUGVyUGFnZSkge1xuICAgICAgcmV0dXJuO1xuICAgIH1cblxuICAgIHRoaXMucm93c1BlclBhZ2VDaGFuZ2UuZW1pdChuZXh0KTtcbiAgfVxufVxuIiwiPG5hdlxuICBhcmlhLWxhYmVsPVwiUGFnaW5hdGlvblwiXG4gIFtuZ0NsYXNzXT1cIltcbiAgICAnbXgtYXV0byBmbGV4IHctZnVsbCBmbGV4LXdyYXAgaXRlbXMtY2VudGVyIGp1c3RpZnktY2VudGVyIGdhcC00JyxcbiAgICBjbGFzc05hbWUsXG4gIF1cIlxuPlxuICA8ZGl2IGNsYXNzPVwiZmxleCBpdGVtcy1jZW50ZXIgZ2FwLTNcIiAqbmdJZj1cInJvd3NQZXJQYWdlT3B0aW9ucy5sZW5ndGggPiAwXCI+XG4gICAgPHNwYW4gY2xhc3M9XCJ0ZXh0LXNtIGZvbnQtbWVkaXVtIHRleHQtZm9yZWdyb3VuZFwiPnt7XG4gICAgICByb3dzUGVyUGFnZUxhYmVsXG4gICAgfX08L3NwYW4+XG4gICAgPHBkbS1zZWxlY3RcbiAgICAgIFt2YWx1ZV09XCJyb3dzUGVyUGFnZVZhbHVlXCJcbiAgICAgIFtvcHRpb25zXT1cInJvd3NQZXJQYWdlU2VsZWN0T3B0aW9uc1wiXG4gICAgICBbcGxhY2Vob2xkZXJdPVwicm93c1BlclBhZ2VWYWx1ZVwiXG4gICAgICBjbGFzc05hbWU9XCJ3LVsxMjBweF1cIlxuICAgICAgKHZhbHVlQ2hhbmdlKT1cIm9uUm93c1BlclBhZ2VDaGFuZ2VWYWx1ZSgkZXZlbnQpXCJcbiAgICA+PC9wZG0tc2VsZWN0PlxuICA8L2Rpdj5cblxuICA8dWwgY2xhc3M9XCJmbGV4IGl0ZW1zLWNlbnRlciBnYXAtMVwiPlxuICAgIDxsaT5cbiAgICAgIDxidXR0b25cbiAgICAgICAgdHlwZT1cImJ1dHRvblwiXG4gICAgICAgIGNsYXNzPVwiaW5saW5lLWZsZXggaC05IGl0ZW1zLWNlbnRlciBqdXN0aWZ5LWNlbnRlciBnYXAtMSByb3VuZGVkLW1kIHB4LTIgdGV4dC1zbSB0ZXh0LWZvcmVncm91bmQgaG92ZXI6YmctYWNjZW50IGRpc2FibGVkOm9wYWNpdHktNTAgcmluZy1vZmZzZXQtYmFja2dyb3VuZCBmb2N1cy12aXNpYmxlOm91dGxpbmUtbm9uZSBmb2N1cy12aXNpYmxlOnJpbmctMiBmb2N1cy12aXNpYmxlOnJpbmctcmluZyBmb2N1cy12aXNpYmxlOnJpbmctb2Zmc2V0LTJcIlxuICAgICAgICBbZGlzYWJsZWRdPVwicGFnZSA8PSAxXCJcbiAgICAgICAgKGNsaWNrKT1cInNldFBhZ2UocGFnZSAtIDEpXCJcbiAgICAgID5cbiAgICAgICAgPHBkbS1pY29uIG5hbWU9XCJjaGV2cm9uLWxlZnRcIiBbc2l6ZV09XCIxNFwiPjwvcGRtLWljb24+XG4gICAgICAgIFByZXZpb3VzXG4gICAgICA8L2J1dHRvbj5cbiAgICA8L2xpPlxuICAgIDxsaSAqbmdGb3I9XCJsZXQgcGFnZU51bWJlciBvZiB2aXNpYmxlUGFnZXNcIj5cbiAgICAgIDxuZy1jb250YWluZXIgKm5nSWY9XCJwYWdlTnVtYmVyID09PSAnZWxsaXBzaXMnOyBlbHNlIHBhZ2VCdXR0b25cIj5cbiAgICAgICAgPHNwYW5cbiAgICAgICAgICBjbGFzcz1cImlubGluZS1mbGV4IGgtOSBtaW4tdy05IGl0ZW1zLWNlbnRlciBqdXN0aWZ5LWNlbnRlciBweC0yIHRleHQtc20gdGV4dC1tdXRlZC1mb3JlZ3JvdW5kXCJcbiAgICAgICAgICA+Li4uPC9zcGFuXG4gICAgICAgID5cbiAgICAgIDwvbmctY29udGFpbmVyPlxuICAgICAgPG5nLXRlbXBsYXRlICNwYWdlQnV0dG9uPlxuICAgICAgICA8YnV0dG9uXG4gICAgICAgICAgdHlwZT1cImJ1dHRvblwiXG4gICAgICAgICAgW25nQ2xhc3NdPVwiW1xuICAgICAgICAgICAgJ2lubGluZS1mbGV4IGgtOSBtaW4tdy05IGl0ZW1zLWNlbnRlciBqdXN0aWZ5LWNlbnRlciByb3VuZGVkLW1kIHB4LTIgdGV4dC1zbSByaW5nLW9mZnNldC1iYWNrZ3JvdW5kIGZvY3VzLXZpc2libGU6b3V0bGluZS1ub25lIGZvY3VzLXZpc2libGU6cmluZy0yIGZvY3VzLXZpc2libGU6cmluZy1yaW5nIGZvY3VzLXZpc2libGU6cmluZy1vZmZzZXQtMicsXG4gICAgICAgICAgICBwYWdlTnVtYmVyID09PSBwYWdlXG4gICAgICAgICAgICAgID8gJ2JvcmRlciBib3JkZXItYm9yZGVyIGJnLW11dGVkIHRleHQtZm9yZWdyb3VuZCBzaGFkb3ctc20nXG4gICAgICAgICAgICAgIDogJ3RleHQtZm9yZWdyb3VuZCBob3ZlcjpiZy1hY2NlbnQgaG92ZXI6dGV4dC1hY2NlbnQtZm9yZWdyb3VuZCcsXG4gICAgICAgICAgXVwiXG4gICAgICAgICAgKGNsaWNrKT1cInNldFBhZ2UoK3BhZ2VOdW1iZXIpXCJcbiAgICAgICAgPlxuICAgICAgICAgIHt7IHBhZ2VOdW1iZXIgfX1cbiAgICAgICAgPC9idXR0b24+XG4gICAgICA8L25nLXRlbXBsYXRlPlxuICAgIDwvbGk+XG4gICAgPGxpPlxuICAgICAgPGJ1dHRvblxuICAgICAgICB0eXBlPVwiYnV0dG9uXCJcbiAgICAgICAgY2xhc3M9XCJpbmxpbmUtZmxleCBoLTkgaXRlbXMtY2VudGVyIGp1c3RpZnktY2VudGVyIGdhcC0xIHJvdW5kZWQtbWQgcHgtMiB0ZXh0LXNtIHRleHQtZm9yZWdyb3VuZCBob3ZlcjpiZy1hY2NlbnQgZGlzYWJsZWQ6b3BhY2l0eS01MCByaW5nLW9mZnNldC1iYWNrZ3JvdW5kIGZvY3VzLXZpc2libGU6b3V0bGluZS1ub25lIGZvY3VzLXZpc2libGU6cmluZy0yIGZvY3VzLXZpc2libGU6cmluZy1yaW5nIGZvY3VzLXZpc2libGU6cmluZy1vZmZzZXQtMlwiXG4gICAgICAgIFtkaXNhYmxlZF09XCJwYWdlID49IHBhZ2VDb3VudFwiXG4gICAgICAgIChjbGljayk9XCJzZXRQYWdlKHBhZ2UgKyAxKVwiXG4gICAgICA+XG4gICAgICAgIE5leHRcbiAgICAgICAgPHBkbS1pY29uIG5hbWU9XCJjaGV2cm9uLXJpZ2h0XCIgW3NpemVdPVwiMTRcIj48L3BkbS1pY29uPlxuICAgICAgPC9idXR0b24+XG4gICAgPC9saT5cbiAgPC91bD5cbjwvbmF2PlxuIl19
@@ -1,26 +1,57 @@
1
- import { ChangeDetectionStrategy, Component, EventEmitter, Input, Output } from '@angular/core';
1
+ import { ChangeDetectionStrategy, Component, EventEmitter, HostListener, Input, Output } from '@angular/core';
2
2
  import * as i0 from "@angular/core";
3
3
  import * as i1 from "@angular/common";
4
+ import * as i2 from "../icon/icon.component";
4
5
  export class PdmSelectComponent {
5
- constructor() {
6
+ constructor(elementRef) {
7
+ this.elementRef = elementRef;
6
8
  this.id = '';
7
9
  this.value = '';
8
10
  this.options = [];
9
11
  this.disabled = false;
10
12
  this.invalid = false;
11
13
  this.className = '';
14
+ this.placeholder = 'Select an option';
15
+ this.open = false;
12
16
  this.valueChange = new EventEmitter();
13
17
  }
18
+ get selectedOption() {
19
+ return this.options.find((option) => option.value === this.value);
20
+ }
21
+ get selectedLabel() {
22
+ return this.selectedOption?.label || this.placeholder;
23
+ }
24
+ toggle() {
25
+ if (this.disabled)
26
+ return;
27
+ this.open = !this.open;
28
+ }
14
29
  onChange(event) {
15
30
  this.valueChange.emit(event.target.value);
16
31
  }
32
+ selectOption(option) {
33
+ if (option.disabled)
34
+ return;
35
+ this.valueChange.emit(option.value);
36
+ this.open = false;
37
+ }
38
+ onDocumentClick(event) {
39
+ if (!this.open)
40
+ return;
41
+ if (!this.elementRef.nativeElement.contains(event.target)) {
42
+ this.open = false;
43
+ }
44
+ }
45
+ onEscape() {
46
+ this.open = false;
47
+ }
17
48
  }
18
- PdmSelectComponent.ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "14.3.0", ngImport: i0, type: PdmSelectComponent, deps: [], target: i0.ɵɵFactoryTarget.Component });
19
- PdmSelectComponent.ɵcmp = i0.ɵɵngDeclareComponent({ minVersion: "14.0.0", version: "14.3.0", type: PdmSelectComponent, selector: "pdm-select", inputs: { id: "id", value: "value", options: "options", disabled: "disabled", invalid: "invalid", className: "className" }, outputs: { valueChange: "valueChange" }, ngImport: i0, template: "<select\n [id]=\"id\"\n [value]=\"value\"\n [disabled]=\"disabled\"\n [attr.aria-invalid]=\"invalid\"\n [ngClass]=\"[\n 'border-input focus-visible:border-ring focus-visible:ring-2 focus-visible:ring-ring/50 aria-invalid:ring-2 aria-invalid:ring-destructive aria-invalid:border-destructive aria-invalid:placeholder:text-destructive/70 flex h-9 w-full rounded-md border bg-transparent px-3 py-2 text-sm text-foreground shadow-sm outline-none disabled:cursor-not-allowed disabled:opacity-50',\n className\n ]\"\n (change)=\"onChange($event)\"\n>\n <option *ngFor=\"let option of options\" [value]=\"option.value\" [disabled]=\"option.disabled\">{{ option.label }}</option>\n</select>\n", dependencies: [{ kind: "directive", type: i1.NgClass, selector: "[ngClass]", inputs: ["class", "ngClass"] }, { kind: "directive", type: i1.NgForOf, selector: "[ngFor][ngForOf]", inputs: ["ngForOf", "ngForTrackBy", "ngForTemplate"] }], changeDetection: i0.ChangeDetectionStrategy.OnPush });
49
+ PdmSelectComponent.ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "14.3.0", ngImport: i0, type: PdmSelectComponent, deps: [{ token: i0.ElementRef }], target: i0.ɵɵFactoryTarget.Component });
50
+ PdmSelectComponent.ɵcmp = i0.ɵɵngDeclareComponent({ minVersion: "14.0.0", version: "14.3.0", type: PdmSelectComponent, selector: "pdm-select", inputs: { id: "id", value: "value", options: "options", disabled: "disabled", invalid: "invalid", className: "className", placeholder: "placeholder" }, outputs: { valueChange: "valueChange" }, host: { listeners: { "document:click": "onDocumentClick($event)", "document:keydown.escape": "onEscape()" } }, ngImport: i0, template: "<div [ngClass]=\"['relative', className || 'w-full']\">\n <button\n type=\"button\"\n [id]=\"id\"\n [disabled]=\"disabled\"\n [attr.aria-invalid]=\"invalid\"\n [attr.aria-expanded]=\"open\"\n [attr.data-state]=\"open ? 'open' : 'closed'\"\n aria-haspopup=\"listbox\"\n (click)=\"toggle()\"\n [ngClass]=\"[\n 'border-input focus-visible:border-ring focus-visible:ring-2 focus-visible:ring-ring/50 aria-invalid:ring-2 aria-invalid:ring-destructive aria-invalid:border-destructive flex h-9 w-full items-center justify-between rounded-md border bg-background px-3 py-2 text-sm shadow-sm outline-none disabled:cursor-not-allowed disabled:opacity-50',\n ]\"\n >\n <span\n [ngClass]=\"[\n 'min-w-0 flex-1 truncate text-left leading-5',\n selectedOption\n ? 'font-medium text-foreground'\n : 'font-normal text-muted-foreground',\n ]\"\n >\n {{ selectedLabel }}\n </span>\n <pdm-icon\n name=\"chevron-down\"\n [size]=\"16\"\n className=\"shrink-0 text-muted-foreground\"\n ></pdm-icon>\n </button>\n\n <div\n *ngIf=\"open\"\n role=\"listbox\"\n [attr.aria-labelledby]=\"id || null\"\n class=\"absolute left-0 top-[calc(100%+4px)] z-50 max-h-96 w-full overflow-y-auto rounded-md border border-border bg-popover p-1 text-popover-foreground shadow-md\"\n >\n <button\n *ngFor=\"let option of options\"\n type=\"button\"\n role=\"option\"\n [attr.aria-selected]=\"option.value === value\"\n [disabled]=\"option.disabled\"\n (click)=\"selectOption(option)\"\n [ngClass]=\"[\n 'flex w-full items-center justify-between rounded-sm px-2 py-1.5 text-left text-sm outline-none transition-colors',\n option.disabled\n ? 'cursor-not-allowed opacity-50'\n : 'hover:bg-accent hover:text-accent-foreground focus-visible:bg-accent focus-visible:text-accent-foreground',\n option.value === value ? 'bg-accent text-accent-foreground' : '',\n ]\"\n >\n <span class=\"min-w-0 flex-1 truncate leading-5\">{{ option.label }}</span>\n <span\n *ngIf=\"option.value === value\"\n class=\"ml-2 flex shrink-0 items-center justify-end\"\n >\n <pdm-icon\n name=\"check\"\n [size]=\"16\"\n className=\"shrink-0 text-current\"\n ></pdm-icon>\n </span>\n </button>\n </div>\n\n <select\n class=\"sr-only\"\n tabindex=\"-1\"\n aria-hidden=\"true\"\n [value]=\"value\"\n (change)=\"onChange($event)\"\n >\n <option\n *ngFor=\"let option of options\"\n [value]=\"option.value\"\n [disabled]=\"option.disabled\"\n >\n {{ option.label }}\n </option>\n </select>\n</div>\n", dependencies: [{ kind: "directive", type: i1.NgClass, selector: "[ngClass]", inputs: ["class", "ngClass"] }, { kind: "directive", type: i1.NgForOf, selector: "[ngFor][ngForOf]", inputs: ["ngForOf", "ngForTrackBy", "ngForTemplate"] }, { kind: "directive", type: i1.NgIf, selector: "[ngIf]", inputs: ["ngIf", "ngIfThen", "ngIfElse"] }, { kind: "component", type: i2.PdmIconComponent, selector: "pdm-icon", inputs: ["name", "library", "assetUrl", "size", "strokeWidth", "className", "ariaLabel", "decorative"] }], changeDetection: i0.ChangeDetectionStrategy.OnPush });
20
51
  i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "14.3.0", ngImport: i0, type: PdmSelectComponent, decorators: [{
21
52
  type: Component,
22
- args: [{ selector: 'pdm-select', changeDetection: ChangeDetectionStrategy.OnPush, template: "<select\n [id]=\"id\"\n [value]=\"value\"\n [disabled]=\"disabled\"\n [attr.aria-invalid]=\"invalid\"\n [ngClass]=\"[\n 'border-input focus-visible:border-ring focus-visible:ring-2 focus-visible:ring-ring/50 aria-invalid:ring-2 aria-invalid:ring-destructive aria-invalid:border-destructive aria-invalid:placeholder:text-destructive/70 flex h-9 w-full rounded-md border bg-transparent px-3 py-2 text-sm text-foreground shadow-sm outline-none disabled:cursor-not-allowed disabled:opacity-50',\n className\n ]\"\n (change)=\"onChange($event)\"\n>\n <option *ngFor=\"let option of options\" [value]=\"option.value\" [disabled]=\"option.disabled\">{{ option.label }}</option>\n</select>\n" }]
23
- }], propDecorators: { id: [{
53
+ args: [{ selector: 'pdm-select', changeDetection: ChangeDetectionStrategy.OnPush, template: "<div [ngClass]=\"['relative', className || 'w-full']\">\n <button\n type=\"button\"\n [id]=\"id\"\n [disabled]=\"disabled\"\n [attr.aria-invalid]=\"invalid\"\n [attr.aria-expanded]=\"open\"\n [attr.data-state]=\"open ? 'open' : 'closed'\"\n aria-haspopup=\"listbox\"\n (click)=\"toggle()\"\n [ngClass]=\"[\n 'border-input focus-visible:border-ring focus-visible:ring-2 focus-visible:ring-ring/50 aria-invalid:ring-2 aria-invalid:ring-destructive aria-invalid:border-destructive flex h-9 w-full items-center justify-between rounded-md border bg-background px-3 py-2 text-sm shadow-sm outline-none disabled:cursor-not-allowed disabled:opacity-50',\n ]\"\n >\n <span\n [ngClass]=\"[\n 'min-w-0 flex-1 truncate text-left leading-5',\n selectedOption\n ? 'font-medium text-foreground'\n : 'font-normal text-muted-foreground',\n ]\"\n >\n {{ selectedLabel }}\n </span>\n <pdm-icon\n name=\"chevron-down\"\n [size]=\"16\"\n className=\"shrink-0 text-muted-foreground\"\n ></pdm-icon>\n </button>\n\n <div\n *ngIf=\"open\"\n role=\"listbox\"\n [attr.aria-labelledby]=\"id || null\"\n class=\"absolute left-0 top-[calc(100%+4px)] z-50 max-h-96 w-full overflow-y-auto rounded-md border border-border bg-popover p-1 text-popover-foreground shadow-md\"\n >\n <button\n *ngFor=\"let option of options\"\n type=\"button\"\n role=\"option\"\n [attr.aria-selected]=\"option.value === value\"\n [disabled]=\"option.disabled\"\n (click)=\"selectOption(option)\"\n [ngClass]=\"[\n 'flex w-full items-center justify-between rounded-sm px-2 py-1.5 text-left text-sm outline-none transition-colors',\n option.disabled\n ? 'cursor-not-allowed opacity-50'\n : 'hover:bg-accent hover:text-accent-foreground focus-visible:bg-accent focus-visible:text-accent-foreground',\n option.value === value ? 'bg-accent text-accent-foreground' : '',\n ]\"\n >\n <span class=\"min-w-0 flex-1 truncate leading-5\">{{ option.label }}</span>\n <span\n *ngIf=\"option.value === value\"\n class=\"ml-2 flex shrink-0 items-center justify-end\"\n >\n <pdm-icon\n name=\"check\"\n [size]=\"16\"\n className=\"shrink-0 text-current\"\n ></pdm-icon>\n </span>\n </button>\n </div>\n\n <select\n class=\"sr-only\"\n tabindex=\"-1\"\n aria-hidden=\"true\"\n [value]=\"value\"\n (change)=\"onChange($event)\"\n >\n <option\n *ngFor=\"let option of options\"\n [value]=\"option.value\"\n [disabled]=\"option.disabled\"\n >\n {{ option.label }}\n </option>\n </select>\n</div>\n" }]
54
+ }], ctorParameters: function () { return [{ type: i0.ElementRef }]; }, propDecorators: { id: [{
24
55
  type: Input
25
56
  }], value: [{
26
57
  type: Input
@@ -32,7 +63,15 @@ i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "14.3.0", ngImpor
32
63
  type: Input
33
64
  }], className: [{
34
65
  type: Input
66
+ }], placeholder: [{
67
+ type: Input
35
68
  }], valueChange: [{
36
69
  type: Output
70
+ }], onDocumentClick: [{
71
+ type: HostListener,
72
+ args: ['document:click', ['$event']]
73
+ }], onEscape: [{
74
+ type: HostListener,
75
+ args: ['document:keydown.escape']
37
76
  }] } });
38
- //# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoic2VsZWN0LmNvbXBvbmVudC5qcyIsInNvdXJjZVJvb3QiOiIiLCJzb3VyY2VzIjpbIi4uLy4uLy4uLy4uLy4uLy4uL3NyYy9saWIvY29tcG9uZW50cy9zZWxlY3Qvc2VsZWN0LmNvbXBvbmVudC50cyIsIi4uLy4uLy4uLy4uLy4uLy4uL3NyYy9saWIvY29tcG9uZW50cy9zZWxlY3Qvc2VsZWN0LmNvbXBvbmVudC5odG1sIl0sIm5hbWVzIjpbXSwibWFwcGluZ3MiOiJBQUFBLE9BQU8sRUFBRSx1QkFBdUIsRUFBRSxTQUFTLEVBQUUsWUFBWSxFQUFFLEtBQUssRUFBRSxNQUFNLEVBQUUsTUFBTSxlQUFlLENBQUM7OztBQWFoRyxNQUFNLE9BQU8sa0JBQWtCO0lBTC9CO1FBTVcsT0FBRSxHQUFHLEVBQUUsQ0FBQztRQUNSLFVBQUssR0FBRyxFQUFFLENBQUM7UUFDWCxZQUFPLEdBQXNCLEVBQUUsQ0FBQztRQUNoQyxhQUFRLEdBQUcsS0FBSyxDQUFDO1FBQ2pCLFlBQU8sR0FBRyxLQUFLLENBQUM7UUFDaEIsY0FBUyxHQUFHLEVBQUUsQ0FBQztRQUVkLGdCQUFXLEdBQUcsSUFBSSxZQUFZLEVBQVUsQ0FBQztLQUtwRDtJQUhDLFFBQVEsQ0FBQyxLQUFZO1FBQ25CLElBQUksQ0FBQyxXQUFXLENBQUMsSUFBSSxDQUFFLEtBQUssQ0FBQyxNQUE0QixDQUFDLEtBQUssQ0FBQyxDQUFDO0lBQ25FLENBQUM7OytHQVpVLGtCQUFrQjttR0FBbEIsa0JBQWtCLHVOQ2IvQiwyckJBYUE7MkZEQWEsa0JBQWtCO2tCQUw5QixTQUFTOytCQUNFLFlBQVksbUJBRUwsdUJBQXVCLENBQUMsTUFBTTs4QkFHdEMsRUFBRTtzQkFBVixLQUFLO2dCQUNHLEtBQUs7c0JBQWIsS0FBSztnQkFDRyxPQUFPO3NCQUFmLEtBQUs7Z0JBQ0csUUFBUTtzQkFBaEIsS0FBSztnQkFDRyxPQUFPO3NCQUFmLEtBQUs7Z0JBQ0csU0FBUztzQkFBakIsS0FBSztnQkFFSSxXQUFXO3NCQUFwQixNQUFNIiwic291cmNlc0NvbnRlbnQiOlsiaW1wb3J0IHsgQ2hhbmdlRGV0ZWN0aW9uU3RyYXRlZ3ksIENvbXBvbmVudCwgRXZlbnRFbWl0dGVyLCBJbnB1dCwgT3V0cHV0IH0gZnJvbSAnQGFuZ3VsYXIvY29yZSc7XG5cbmV4cG9ydCBpbnRlcmZhY2UgUGRtU2VsZWN0T3B0aW9uIHtcbiAgbGFiZWw6IHN0cmluZztcbiAgdmFsdWU6IHN0cmluZztcbiAgZGlzYWJsZWQ/OiBib29sZWFuO1xufVxuXG5AQ29tcG9uZW50KHtcbiAgc2VsZWN0b3I6ICdwZG0tc2VsZWN0JyxcbiAgdGVtcGxhdGVVcmw6ICcuL3NlbGVjdC5jb21wb25lbnQuaHRtbCcsXG4gIGNoYW5nZURldGVjdGlvbjogQ2hhbmdlRGV0ZWN0aW9uU3RyYXRlZ3kuT25QdXNoXG59KVxuZXhwb3J0IGNsYXNzIFBkbVNlbGVjdENvbXBvbmVudCB7XG4gIEBJbnB1dCgpIGlkID0gJyc7XG4gIEBJbnB1dCgpIHZhbHVlID0gJyc7XG4gIEBJbnB1dCgpIG9wdGlvbnM6IFBkbVNlbGVjdE9wdGlvbltdID0gW107XG4gIEBJbnB1dCgpIGRpc2FibGVkID0gZmFsc2U7XG4gIEBJbnB1dCgpIGludmFsaWQgPSBmYWxzZTtcbiAgQElucHV0KCkgY2xhc3NOYW1lID0gJyc7XG5cbiAgQE91dHB1dCgpIHZhbHVlQ2hhbmdlID0gbmV3IEV2ZW50RW1pdHRlcjxzdHJpbmc+KCk7XG5cbiAgb25DaGFuZ2UoZXZlbnQ6IEV2ZW50KTogdm9pZCB7XG4gICAgdGhpcy52YWx1ZUNoYW5nZS5lbWl0KChldmVudC50YXJnZXQgYXMgSFRNTFNlbGVjdEVsZW1lbnQpLnZhbHVlKTtcbiAgfVxufVxuIiwiPHNlbGVjdFxuICBbaWRdPVwiaWRcIlxuICBbdmFsdWVdPVwidmFsdWVcIlxuICBbZGlzYWJsZWRdPVwiZGlzYWJsZWRcIlxuICBbYXR0ci5hcmlhLWludmFsaWRdPVwiaW52YWxpZFwiXG4gIFtuZ0NsYXNzXT1cIltcbiAgICAnYm9yZGVyLWlucHV0IGZvY3VzLXZpc2libGU6Ym9yZGVyLXJpbmcgZm9jdXMtdmlzaWJsZTpyaW5nLTIgZm9jdXMtdmlzaWJsZTpyaW5nLXJpbmcvNTAgYXJpYS1pbnZhbGlkOnJpbmctMiBhcmlhLWludmFsaWQ6cmluZy1kZXN0cnVjdGl2ZSBhcmlhLWludmFsaWQ6Ym9yZGVyLWRlc3RydWN0aXZlIGFyaWEtaW52YWxpZDpwbGFjZWhvbGRlcjp0ZXh0LWRlc3RydWN0aXZlLzcwIGZsZXggaC05IHctZnVsbCByb3VuZGVkLW1kIGJvcmRlciBiZy10cmFuc3BhcmVudCBweC0zIHB5LTIgdGV4dC1zbSB0ZXh0LWZvcmVncm91bmQgc2hhZG93LXNtIG91dGxpbmUtbm9uZSBkaXNhYmxlZDpjdXJzb3Itbm90LWFsbG93ZWQgZGlzYWJsZWQ6b3BhY2l0eS01MCcsXG4gICAgY2xhc3NOYW1lXG4gIF1cIlxuICAoY2hhbmdlKT1cIm9uQ2hhbmdlKCRldmVudClcIlxuPlxuICA8b3B0aW9uICpuZ0Zvcj1cImxldCBvcHRpb24gb2Ygb3B0aW9uc1wiIFt2YWx1ZV09XCJvcHRpb24udmFsdWVcIiBbZGlzYWJsZWRdPVwib3B0aW9uLmRpc2FibGVkXCI+e3sgb3B0aW9uLmxhYmVsIH19PC9vcHRpb24+XG48L3NlbGVjdD5cbiJdfQ==
77
+ //# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoic2VsZWN0LmNvbXBvbmVudC5qcyIsInNvdXJjZVJvb3QiOiIiLCJzb3VyY2VzIjpbIi4uLy4uLy4uLy4uLy4uLy4uL3NyYy9saWIvY29tcG9uZW50cy9zZWxlY3Qvc2VsZWN0LmNvbXBvbmVudC50cyIsIi4uLy4uLy4uLy4uLy4uLy4uL3NyYy9saWIvY29tcG9uZW50cy9zZWxlY3Qvc2VsZWN0LmNvbXBvbmVudC5odG1sIl0sIm5hbWVzIjpbXSwibWFwcGluZ3MiOiJBQUFBLE9BQU8sRUFBRSx1QkFBdUIsRUFBRSxTQUFTLEVBQWMsWUFBWSxFQUFFLFlBQVksRUFBRSxLQUFLLEVBQUUsTUFBTSxFQUFFLE1BQU0sZUFBZSxDQUFDOzs7O0FBYTFILE1BQU0sT0FBTyxrQkFBa0I7SUFhN0IsWUFBNkIsVUFBbUM7UUFBbkMsZUFBVSxHQUFWLFVBQVUsQ0FBeUI7UUFadkQsT0FBRSxHQUFHLEVBQUUsQ0FBQztRQUNSLFVBQUssR0FBRyxFQUFFLENBQUM7UUFDWCxZQUFPLEdBQXNCLEVBQUUsQ0FBQztRQUNoQyxhQUFRLEdBQUcsS0FBSyxDQUFDO1FBQ2pCLFlBQU8sR0FBRyxLQUFLLENBQUM7UUFDaEIsY0FBUyxHQUFHLEVBQUUsQ0FBQztRQUNmLGdCQUFXLEdBQUcsa0JBQWtCLENBQUM7UUFFMUMsU0FBSSxHQUFHLEtBQUssQ0FBQztRQUVILGdCQUFXLEdBQUcsSUFBSSxZQUFZLEVBQVUsQ0FBQztJQUVnQixDQUFDO0lBRXBFLElBQUksY0FBYztRQUNoQixPQUFPLElBQUksQ0FBQyxPQUFPLENBQUMsSUFBSSxDQUFDLENBQUMsTUFBTSxFQUFFLEVBQUUsQ0FBQyxNQUFNLENBQUMsS0FBSyxLQUFLLElBQUksQ0FBQyxLQUFLLENBQUMsQ0FBQztJQUNwRSxDQUFDO0lBRUQsSUFBSSxhQUFhO1FBQ2YsT0FBTyxJQUFJLENBQUMsY0FBYyxFQUFFLEtBQUssSUFBSSxJQUFJLENBQUMsV0FBVyxDQUFDO0lBQ3hELENBQUM7SUFFRCxNQUFNO1FBQ0osSUFBSSxJQUFJLENBQUMsUUFBUTtZQUFFLE9BQU87UUFDMUIsSUFBSSxDQUFDLElBQUksR0FBRyxDQUFDLElBQUksQ0FBQyxJQUFJLENBQUM7SUFDekIsQ0FBQztJQUVELFFBQVEsQ0FBQyxLQUFZO1FBQ25CLElBQUksQ0FBQyxXQUFXLENBQUMsSUFBSSxDQUFFLEtBQUssQ0FBQyxNQUE0QixDQUFDLEtBQUssQ0FBQyxDQUFDO0lBQ25FLENBQUM7SUFFRCxZQUFZLENBQUMsTUFBdUI7UUFDbEMsSUFBSSxNQUFNLENBQUMsUUFBUTtZQUFFLE9BQU87UUFDNUIsSUFBSSxDQUFDLFdBQVcsQ0FBQyxJQUFJLENBQUMsTUFBTSxDQUFDLEtBQUssQ0FBQyxDQUFDO1FBQ3BDLElBQUksQ0FBQyxJQUFJLEdBQUcsS0FBSyxDQUFDO0lBQ3BCLENBQUM7SUFHRCxlQUFlLENBQUMsS0FBaUI7UUFDL0IsSUFBSSxDQUFDLElBQUksQ0FBQyxJQUFJO1lBQUUsT0FBTztRQUN2QixJQUFJLENBQUMsSUFBSSxDQUFDLFVBQVUsQ0FBQyxhQUFhLENBQUMsUUFBUSxDQUFDLEtBQUssQ0FBQyxNQUFjLENBQUMsRUFBRTtZQUNqRSxJQUFJLENBQUMsSUFBSSxHQUFHLEtBQUssQ0FBQztTQUNuQjtJQUNILENBQUM7SUFHRCxRQUFRO1FBQ04sSUFBSSxDQUFDLElBQUksR0FBRyxLQUFLLENBQUM7SUFDcEIsQ0FBQzs7K0dBakRVLGtCQUFrQjttR0FBbEIsa0JBQWtCLGtXQ2IvQiwrc0ZBa0ZBOzJGRHJFYSxrQkFBa0I7a0JBTDlCLFNBQVM7K0JBQ0UsWUFBWSxtQkFFTCx1QkFBdUIsQ0FBQyxNQUFNO2lHQUd0QyxFQUFFO3NCQUFWLEtBQUs7Z0JBQ0csS0FBSztzQkFBYixLQUFLO2dCQUNHLE9BQU87c0JBQWYsS0FBSztnQkFDRyxRQUFRO3NCQUFoQixLQUFLO2dCQUNHLE9BQU87c0JBQWYsS0FBSztnQkFDRyxTQUFTO3NCQUFqQixLQUFLO2dCQUNHLFdBQVc7c0JBQW5CLEtBQUs7Z0JBSUksV0FBVztzQkFBcEIsTUFBTTtnQkE0QlAsZUFBZTtzQkFEZCxZQUFZO3VCQUFDLGdCQUFnQixFQUFFLENBQUMsUUFBUSxDQUFDO2dCQVMxQyxRQUFRO3NCQURQLFlBQVk7dUJBQUMseUJBQXlCIiwic291cmNlc0NvbnRlbnQiOlsiaW1wb3J0IHsgQ2hhbmdlRGV0ZWN0aW9uU3RyYXRlZ3ksIENvbXBvbmVudCwgRWxlbWVudFJlZiwgRXZlbnRFbWl0dGVyLCBIb3N0TGlzdGVuZXIsIElucHV0LCBPdXRwdXQgfSBmcm9tICdAYW5ndWxhci9jb3JlJztcblxuZXhwb3J0IGludGVyZmFjZSBQZG1TZWxlY3RPcHRpb24ge1xuICBsYWJlbDogc3RyaW5nO1xuICB2YWx1ZTogc3RyaW5nO1xuICBkaXNhYmxlZD86IGJvb2xlYW47XG59XG5cbkBDb21wb25lbnQoe1xuICBzZWxlY3RvcjogJ3BkbS1zZWxlY3QnLFxuICB0ZW1wbGF0ZVVybDogJy4vc2VsZWN0LmNvbXBvbmVudC5odG1sJyxcbiAgY2hhbmdlRGV0ZWN0aW9uOiBDaGFuZ2VEZXRlY3Rpb25TdHJhdGVneS5PblB1c2hcbn0pXG5leHBvcnQgY2xhc3MgUGRtU2VsZWN0Q29tcG9uZW50IHtcbiAgQElucHV0KCkgaWQgPSAnJztcbiAgQElucHV0KCkgdmFsdWUgPSAnJztcbiAgQElucHV0KCkgb3B0aW9uczogUGRtU2VsZWN0T3B0aW9uW10gPSBbXTtcbiAgQElucHV0KCkgZGlzYWJsZWQgPSBmYWxzZTtcbiAgQElucHV0KCkgaW52YWxpZCA9IGZhbHNlO1xuICBASW5wdXQoKSBjbGFzc05hbWUgPSAnJztcbiAgQElucHV0KCkgcGxhY2Vob2xkZXIgPSAnU2VsZWN0IGFuIG9wdGlvbic7XG5cbiAgb3BlbiA9IGZhbHNlO1xuXG4gIEBPdXRwdXQoKSB2YWx1ZUNoYW5nZSA9IG5ldyBFdmVudEVtaXR0ZXI8c3RyaW5nPigpO1xuXG4gIGNvbnN0cnVjdG9yKHByaXZhdGUgcmVhZG9ubHkgZWxlbWVudFJlZjogRWxlbWVudFJlZjxIVE1MRWxlbWVudD4pIHt9XG5cbiAgZ2V0IHNlbGVjdGVkT3B0aW9uKCk6IFBkbVNlbGVjdE9wdGlvbiB8IHVuZGVmaW5lZCB7XG4gICAgcmV0dXJuIHRoaXMub3B0aW9ucy5maW5kKChvcHRpb24pID0+IG9wdGlvbi52YWx1ZSA9PT0gdGhpcy52YWx1ZSk7XG4gIH1cblxuICBnZXQgc2VsZWN0ZWRMYWJlbCgpOiBzdHJpbmcge1xuICAgIHJldHVybiB0aGlzLnNlbGVjdGVkT3B0aW9uPy5sYWJlbCB8fCB0aGlzLnBsYWNlaG9sZGVyO1xuICB9XG5cbiAgdG9nZ2xlKCk6IHZvaWQge1xuICAgIGlmICh0aGlzLmRpc2FibGVkKSByZXR1cm47XG4gICAgdGhpcy5vcGVuID0gIXRoaXMub3BlbjtcbiAgfVxuXG4gIG9uQ2hhbmdlKGV2ZW50OiBFdmVudCk6IHZvaWQge1xuICAgIHRoaXMudmFsdWVDaGFuZ2UuZW1pdCgoZXZlbnQudGFyZ2V0IGFzIEhUTUxTZWxlY3RFbGVtZW50KS52YWx1ZSk7XG4gIH1cblxuICBzZWxlY3RPcHRpb24ob3B0aW9uOiBQZG1TZWxlY3RPcHRpb24pOiB2b2lkIHtcbiAgICBpZiAob3B0aW9uLmRpc2FibGVkKSByZXR1cm47XG4gICAgdGhpcy52YWx1ZUNoYW5nZS5lbWl0KG9wdGlvbi52YWx1ZSk7XG4gICAgdGhpcy5vcGVuID0gZmFsc2U7XG4gIH1cblxuICBASG9zdExpc3RlbmVyKCdkb2N1bWVudDpjbGljaycsIFsnJGV2ZW50J10pXG4gIG9uRG9jdW1lbnRDbGljayhldmVudDogTW91c2VFdmVudCk6IHZvaWQge1xuICAgIGlmICghdGhpcy5vcGVuKSByZXR1cm47XG4gICAgaWYgKCF0aGlzLmVsZW1lbnRSZWYubmF0aXZlRWxlbWVudC5jb250YWlucyhldmVudC50YXJnZXQgYXMgTm9kZSkpIHtcbiAgICAgIHRoaXMub3BlbiA9IGZhbHNlO1xuICAgIH1cbiAgfVxuXG4gIEBIb3N0TGlzdGVuZXIoJ2RvY3VtZW50OmtleWRvd24uZXNjYXBlJylcbiAgb25Fc2NhcGUoKTogdm9pZCB7XG4gICAgdGhpcy5vcGVuID0gZmFsc2U7XG4gIH1cbn1cbiIsIjxkaXYgW25nQ2xhc3NdPVwiWydyZWxhdGl2ZScsIGNsYXNzTmFtZSB8fCAndy1mdWxsJ11cIj5cbiAgPGJ1dHRvblxuICAgIHR5cGU9XCJidXR0b25cIlxuICAgIFtpZF09XCJpZFwiXG4gICAgW2Rpc2FibGVkXT1cImRpc2FibGVkXCJcbiAgICBbYXR0ci5hcmlhLWludmFsaWRdPVwiaW52YWxpZFwiXG4gICAgW2F0dHIuYXJpYS1leHBhbmRlZF09XCJvcGVuXCJcbiAgICBbYXR0ci5kYXRhLXN0YXRlXT1cIm9wZW4gPyAnb3BlbicgOiAnY2xvc2VkJ1wiXG4gICAgYXJpYS1oYXNwb3B1cD1cImxpc3Rib3hcIlxuICAgIChjbGljayk9XCJ0b2dnbGUoKVwiXG4gICAgW25nQ2xhc3NdPVwiW1xuICAgICAgJ2JvcmRlci1pbnB1dCBmb2N1cy12aXNpYmxlOmJvcmRlci1yaW5nIGZvY3VzLXZpc2libGU6cmluZy0yIGZvY3VzLXZpc2libGU6cmluZy1yaW5nLzUwIGFyaWEtaW52YWxpZDpyaW5nLTIgYXJpYS1pbnZhbGlkOnJpbmctZGVzdHJ1Y3RpdmUgYXJpYS1pbnZhbGlkOmJvcmRlci1kZXN0cnVjdGl2ZSBmbGV4IGgtOSB3LWZ1bGwgaXRlbXMtY2VudGVyIGp1c3RpZnktYmV0d2VlbiByb3VuZGVkLW1kIGJvcmRlciBiZy1iYWNrZ3JvdW5kIHB4LTMgcHktMiB0ZXh0LXNtIHNoYWRvdy1zbSBvdXRsaW5lLW5vbmUgZGlzYWJsZWQ6Y3Vyc29yLW5vdC1hbGxvd2VkIGRpc2FibGVkOm9wYWNpdHktNTAnLFxuICAgIF1cIlxuICA+XG4gICAgPHNwYW5cbiAgICAgIFtuZ0NsYXNzXT1cIltcbiAgICAgICAgJ21pbi13LTAgZmxleC0xIHRydW5jYXRlIHRleHQtbGVmdCBsZWFkaW5nLTUnLFxuICAgICAgICBzZWxlY3RlZE9wdGlvblxuICAgICAgICAgID8gJ2ZvbnQtbWVkaXVtIHRleHQtZm9yZWdyb3VuZCdcbiAgICAgICAgICA6ICdmb250LW5vcm1hbCB0ZXh0LW11dGVkLWZvcmVncm91bmQnLFxuICAgICAgXVwiXG4gICAgPlxuICAgICAge3sgc2VsZWN0ZWRMYWJlbCB9fVxuICAgIDwvc3Bhbj5cbiAgICA8cGRtLWljb25cbiAgICAgIG5hbWU9XCJjaGV2cm9uLWRvd25cIlxuICAgICAgW3NpemVdPVwiMTZcIlxuICAgICAgY2xhc3NOYW1lPVwic2hyaW5rLTAgdGV4dC1tdXRlZC1mb3JlZ3JvdW5kXCJcbiAgICA+PC9wZG0taWNvbj5cbiAgPC9idXR0b24+XG5cbiAgPGRpdlxuICAgICpuZ0lmPVwib3BlblwiXG4gICAgcm9sZT1cImxpc3Rib3hcIlxuICAgIFthdHRyLmFyaWEtbGFiZWxsZWRieV09XCJpZCB8fCBudWxsXCJcbiAgICBjbGFzcz1cImFic29sdXRlIGxlZnQtMCB0b3AtW2NhbGMoMTAwJSs0cHgpXSB6LTUwIG1heC1oLTk2IHctZnVsbCBvdmVyZmxvdy15LWF1dG8gcm91bmRlZC1tZCBib3JkZXIgYm9yZGVyLWJvcmRlciBiZy1wb3BvdmVyIHAtMSB0ZXh0LXBvcG92ZXItZm9yZWdyb3VuZCBzaGFkb3ctbWRcIlxuICA+XG4gICAgPGJ1dHRvblxuICAgICAgKm5nRm9yPVwibGV0IG9wdGlvbiBvZiBvcHRpb25zXCJcbiAgICAgIHR5cGU9XCJidXR0b25cIlxuICAgICAgcm9sZT1cIm9wdGlvblwiXG4gICAgICBbYXR0ci5hcmlhLXNlbGVjdGVkXT1cIm9wdGlvbi52YWx1ZSA9PT0gdmFsdWVcIlxuICAgICAgW2Rpc2FibGVkXT1cIm9wdGlvbi5kaXNhYmxlZFwiXG4gICAgICAoY2xpY2spPVwic2VsZWN0T3B0aW9uKG9wdGlvbilcIlxuICAgICAgW25nQ2xhc3NdPVwiW1xuICAgICAgICAnZmxleCB3LWZ1bGwgaXRlbXMtY2VudGVyIGp1c3RpZnktYmV0d2VlbiByb3VuZGVkLXNtIHB4LTIgcHktMS41IHRleHQtbGVmdCB0ZXh0LXNtIG91dGxpbmUtbm9uZSB0cmFuc2l0aW9uLWNvbG9ycycsXG4gICAgICAgIG9wdGlvbi5kaXNhYmxlZFxuICAgICAgICAgID8gJ2N1cnNvci1ub3QtYWxsb3dlZCBvcGFjaXR5LTUwJ1xuICAgICAgICAgIDogJ2hvdmVyOmJnLWFjY2VudCBob3Zlcjp0ZXh0LWFjY2VudC1mb3JlZ3JvdW5kIGZvY3VzLXZpc2libGU6YmctYWNjZW50IGZvY3VzLXZpc2libGU6dGV4dC1hY2NlbnQtZm9yZWdyb3VuZCcsXG4gICAgICAgIG9wdGlvbi52YWx1ZSA9PT0gdmFsdWUgPyAnYmctYWNjZW50IHRleHQtYWNjZW50LWZvcmVncm91bmQnIDogJycsXG4gICAgICBdXCJcbiAgICA+XG4gICAgICA8c3BhbiBjbGFzcz1cIm1pbi13LTAgZmxleC0xIHRydW5jYXRlIGxlYWRpbmctNVwiPnt7IG9wdGlvbi5sYWJlbCB9fTwvc3Bhbj5cbiAgICAgIDxzcGFuXG4gICAgICAgICpuZ0lmPVwib3B0aW9uLnZhbHVlID09PSB2YWx1ZVwiXG4gICAgICAgIGNsYXNzPVwibWwtMiBmbGV4IHNocmluay0wIGl0ZW1zLWNlbnRlciBqdXN0aWZ5LWVuZFwiXG4gICAgICA+XG4gICAgICAgIDxwZG0taWNvblxuICAgICAgICAgIG5hbWU9XCJjaGVja1wiXG4gICAgICAgICAgW3NpemVdPVwiMTZcIlxuICAgICAgICAgIGNsYXNzTmFtZT1cInNocmluay0wIHRleHQtY3VycmVudFwiXG4gICAgICAgID48L3BkbS1pY29uPlxuICAgICAgPC9zcGFuPlxuICAgIDwvYnV0dG9uPlxuICA8L2Rpdj5cblxuICA8c2VsZWN0XG4gICAgY2xhc3M9XCJzci1vbmx5XCJcbiAgICB0YWJpbmRleD1cIi0xXCJcbiAgICBhcmlhLWhpZGRlbj1cInRydWVcIlxuICAgIFt2YWx1ZV09XCJ2YWx1ZVwiXG4gICAgKGNoYW5nZSk9XCJvbkNoYW5nZSgkZXZlbnQpXCJcbiAgPlxuICAgIDxvcHRpb25cbiAgICAgICpuZ0Zvcj1cImxldCBvcHRpb24gb2Ygb3B0aW9uc1wiXG4gICAgICBbdmFsdWVdPVwib3B0aW9uLnZhbHVlXCJcbiAgICAgIFtkaXNhYmxlZF09XCJvcHRpb24uZGlzYWJsZWRcIlxuICAgID5cbiAgICAgIHt7IG9wdGlvbi5sYWJlbCB9fVxuICAgIDwvb3B0aW9uPlxuICA8L3NlbGVjdD5cbjwvZGl2PlxuIl19