valtech-components 2.0.529 → 2.0.531
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/esm2022/lib/components/molecules/docs-api-table/docs-api-table.component.mjs +218 -0
- package/esm2022/lib/components/molecules/docs-api-table/types.mjs +11 -0
- package/esm2022/lib/components/molecules/docs-code-example/docs-code-example.component.mjs +217 -0
- package/esm2022/lib/components/molecules/docs-code-example/types.mjs +2 -0
- package/esm2022/lib/components/molecules/docs-nav-links/docs-nav-links.component.mjs +133 -0
- package/esm2022/lib/components/molecules/docs-nav-links/types.mjs +2 -0
- package/esm2022/lib/components/organisms/comment-section/comment-section.component.mjs +15 -10
- package/esm2022/lib/components/organisms/docs-sidebar/docs-sidebar.component.mjs +276 -0
- package/esm2022/lib/components/organisms/docs-sidebar/types.mjs +2 -0
- package/esm2022/lib/components/organisms/docs-toc/docs-toc.component.mjs +255 -0
- package/esm2022/lib/components/organisms/docs-toc/types.mjs +2 -0
- package/esm2022/lib/components/organisms/infinite-list/infinite-list.component.mjs +20 -18
- package/esm2022/lib/components/templates/docs-layout/docs-layout.component.mjs +203 -0
- package/esm2022/lib/components/templates/docs-layout/types.mjs +2 -0
- package/esm2022/lib/services/i18n/default-content.mjs +5 -1
- package/esm2022/public-api.mjs +15 -1
- package/fesm2022/valtech-components.mjs +1313 -27
- package/fesm2022/valtech-components.mjs.map +1 -1
- package/lib/components/molecules/docs-api-table/docs-api-table.component.d.ts +41 -0
- package/lib/components/molecules/docs-api-table/types.d.ts +62 -0
- package/lib/components/molecules/docs-code-example/docs-code-example.component.d.ts +35 -0
- package/lib/components/molecules/docs-code-example/types.d.ts +63 -0
- package/lib/components/molecules/docs-nav-links/docs-nav-links.component.d.ts +29 -0
- package/lib/components/molecules/docs-nav-links/types.d.ts +31 -0
- package/lib/components/organisms/comment-section/comment-section.component.d.ts +2 -0
- package/lib/components/organisms/docs-sidebar/docs-sidebar.component.d.ts +51 -0
- package/lib/components/organisms/docs-sidebar/types.d.ts +93 -0
- package/lib/components/organisms/docs-toc/docs-toc.component.d.ts +58 -0
- package/lib/components/organisms/docs-toc/types.d.ts +62 -0
- package/lib/components/organisms/infinite-list/infinite-list.component.d.ts +2 -0
- package/lib/components/templates/docs-layout/docs-layout.component.d.ts +41 -0
- package/lib/components/templates/docs-layout/types.d.ts +39 -0
- package/package.json +1 -1
- package/public-api.d.ts +12 -0
|
@@ -0,0 +1,218 @@
|
|
|
1
|
+
import { CommonModule } from '@angular/common';
|
|
2
|
+
import { Component, Input } from '@angular/core';
|
|
3
|
+
import { API_TABLE_COLUMN_LABELS } from './types';
|
|
4
|
+
import * as i0 from "@angular/core";
|
|
5
|
+
/**
|
|
6
|
+
* val-docs-api-table
|
|
7
|
+
*
|
|
8
|
+
* A table component for documenting component APIs (inputs, outputs, methods).
|
|
9
|
+
*
|
|
10
|
+
* @example Properties table
|
|
11
|
+
* ```html
|
|
12
|
+
* <val-docs-api-table
|
|
13
|
+
* [props]="{
|
|
14
|
+
* title: 'Properties',
|
|
15
|
+
* items: [
|
|
16
|
+
* { name: 'disabled', type: 'boolean', default: 'false', description: 'Disables the button' },
|
|
17
|
+
* { name: 'color', type: 'string', default: 'primary', description: 'Button color variant' }
|
|
18
|
+
* ]
|
|
19
|
+
* }"
|
|
20
|
+
* ></val-docs-api-table>
|
|
21
|
+
* ```
|
|
22
|
+
*
|
|
23
|
+
* @example Events table
|
|
24
|
+
* ```html
|
|
25
|
+
* <val-docs-api-table
|
|
26
|
+
* [props]="{
|
|
27
|
+
* title: 'Events',
|
|
28
|
+
* columns: ['name', 'type', 'description'],
|
|
29
|
+
* items: [
|
|
30
|
+
* { name: 'click', type: 'EventEmitter<MouseEvent>', description: 'Emitted when clicked' }
|
|
31
|
+
* ]
|
|
32
|
+
* }"
|
|
33
|
+
* ></val-docs-api-table>
|
|
34
|
+
* ```
|
|
35
|
+
*/
|
|
36
|
+
export class DocsApiTableComponent {
|
|
37
|
+
constructor() {
|
|
38
|
+
this.props = { items: [] };
|
|
39
|
+
this.columnLabels = API_TABLE_COLUMN_LABELS;
|
|
40
|
+
}
|
|
41
|
+
get displayColumns() {
|
|
42
|
+
return this.props.columns || ['name', 'type', 'default', 'description'];
|
|
43
|
+
}
|
|
44
|
+
getColumnLabel(col) {
|
|
45
|
+
return this.columnLabels[col];
|
|
46
|
+
}
|
|
47
|
+
static { this.ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "18.2.14", ngImport: i0, type: DocsApiTableComponent, deps: [], target: i0.ɵɵFactoryTarget.Component }); }
|
|
48
|
+
static { this.ɵcmp = i0.ɵɵngDeclareComponent({ minVersion: "17.0.0", version: "18.2.14", type: DocsApiTableComponent, isStandalone: true, selector: "val-docs-api-table", inputs: { props: "props" }, ngImport: i0, template: `
|
|
49
|
+
<div
|
|
50
|
+
class="docs-api-table"
|
|
51
|
+
[class]="props.cssClass"
|
|
52
|
+
[class.docs-api-table--bordered]="props.bordered !== false"
|
|
53
|
+
>
|
|
54
|
+
@if (props.title) {
|
|
55
|
+
<h3 class="docs-api-table__title">{{ props.title }}</h3>
|
|
56
|
+
}
|
|
57
|
+
|
|
58
|
+
<div class="docs-api-table__wrapper">
|
|
59
|
+
<table class="docs-api-table__table">
|
|
60
|
+
<thead>
|
|
61
|
+
<tr>
|
|
62
|
+
@for (col of displayColumns; track col) {
|
|
63
|
+
<th
|
|
64
|
+
class="docs-api-table__th"
|
|
65
|
+
[class.docs-api-table__th--name]="col === 'name'"
|
|
66
|
+
[class.docs-api-table__th--type]="col === 'type'"
|
|
67
|
+
[class.docs-api-table__th--default]="col === 'default'"
|
|
68
|
+
[class.docs-api-table__th--description]="col === 'description'"
|
|
69
|
+
>
|
|
70
|
+
{{ getColumnLabel(col) }}
|
|
71
|
+
</th>
|
|
72
|
+
}
|
|
73
|
+
</tr>
|
|
74
|
+
</thead>
|
|
75
|
+
<tbody>
|
|
76
|
+
@for (item of props.items; track item.name) {
|
|
77
|
+
<tr
|
|
78
|
+
class="docs-api-table__row"
|
|
79
|
+
[class.docs-api-table__row--deprecated]="item.deprecated"
|
|
80
|
+
>
|
|
81
|
+
@for (col of displayColumns; track col) {
|
|
82
|
+
<td
|
|
83
|
+
class="docs-api-table__td"
|
|
84
|
+
[class.docs-api-table__td--name]="col === 'name'"
|
|
85
|
+
[class.docs-api-table__td--type]="col === 'type'"
|
|
86
|
+
[class.docs-api-table__td--default]="col === 'default'"
|
|
87
|
+
[class.docs-api-table__td--description]="col === 'description'"
|
|
88
|
+
>
|
|
89
|
+
@switch (col) {
|
|
90
|
+
@case ('name') {
|
|
91
|
+
<code class="docs-api-table__code">{{ item.name }}</code>
|
|
92
|
+
@if (item.required) {
|
|
93
|
+
<span class="docs-api-table__required">*</span>
|
|
94
|
+
}
|
|
95
|
+
@if (item.deprecated) {
|
|
96
|
+
<span class="docs-api-table__badge docs-api-table__badge--deprecated">Deprecated</span>
|
|
97
|
+
}
|
|
98
|
+
}
|
|
99
|
+
@case ('type') {
|
|
100
|
+
<code class="docs-api-table__type">{{ item.type || '-' }}</code>
|
|
101
|
+
}
|
|
102
|
+
@case ('default') {
|
|
103
|
+
<code class="docs-api-table__default">{{ item.default || '-' }}</code>
|
|
104
|
+
}
|
|
105
|
+
@case ('description') {
|
|
106
|
+
<span>{{ item.description || '-' }}</span>
|
|
107
|
+
@if (item.deprecated && item.deprecationNote) {
|
|
108
|
+
<div class="docs-api-table__deprecation-note">
|
|
109
|
+
{{ item.deprecationNote }}
|
|
110
|
+
</div>
|
|
111
|
+
}
|
|
112
|
+
}
|
|
113
|
+
@case ('required') {
|
|
114
|
+
{{ item.required ? 'Yes' : 'No' }}
|
|
115
|
+
}
|
|
116
|
+
}
|
|
117
|
+
</td>
|
|
118
|
+
}
|
|
119
|
+
</tr>
|
|
120
|
+
}
|
|
121
|
+
</tbody>
|
|
122
|
+
</table>
|
|
123
|
+
</div>
|
|
124
|
+
|
|
125
|
+
@if (props.items.length === 0) {
|
|
126
|
+
<p class="docs-api-table__empty">No items to display.</p>
|
|
127
|
+
}
|
|
128
|
+
</div>
|
|
129
|
+
`, isInline: true, styles: [".docs-api-table{margin:1.5rem 0;&__title{font-size:1.125rem;font-weight:600;margin:0 0 1rem;color:var(--ion-text-color, #1a1a1a)}&__wrapper{overflow-x:auto}&__table{width:100%;border-collapse:collapse;font-size:.875rem}&__th{text-align:left;padding:.75rem 1rem;font-weight:600;color:var(--ion-color-medium-shade, #555);background:var(--ion-color-light, #f4f5f8);white-space:nowrap;&--name{width:20%;min-width:140px}&--type{width:20%;min-width:120px}&--default{width:15%;min-width:100px}&--description{width:45%}}&__td{padding:.75rem 1rem;border-bottom:1px solid var(--ion-border-color, #e0e0e0);vertical-align:top;&--name{font-weight:500}}&__row{&--deprecated{opacity:.7;.docs-api-table__code{text-decoration:line-through}}}&__code{font-family:SF Mono,Monaco,Courier New,monospace;font-size:.8125rem;color:var(--ion-color-primary, #3880ff);background:#3880ff1a;padding:.125rem .375rem;border-radius:4px}&__type,&__default{font-family:SF Mono,Monaco,Courier New,monospace;font-size:.75rem;color:var(--ion-color-medium, #666);background:var(--ion-color-light, #f4f5f8);padding:.125rem .375rem;border-radius:4px}&__required{color:var(--ion-color-danger, #eb445a);font-weight:700;margin-left:.25rem}&__badge{display:inline-block;margin-left:.5rem;padding:.125rem .5rem;font-size:.625rem;font-weight:600;text-transform:uppercase;border-radius:10px;&--deprecated{background:var(--ion-color-warning-tint, rgba(255, 196, 9, .2));color:var(--ion-color-warning-shade, #e0ac08)}}&__deprecation-note{margin-top:.5rem;font-size:.75rem;font-style:italic;color:var(--ion-color-warning-shade, #e0ac08)}&__empty{padding:2rem;text-align:center;color:var(--ion-color-medium, #666)}// Bordered variant &--bordered{.docs-api-table__wrapper{border:1px solid var(--ion-border-color, #e0e0e0);border-radius:8px;overflow:hidden}.docs-api-table__th:first-child{border-top-left-radius:8px}.docs-api-table__th:last-child{border-top-right-radius:8px}}}// Dark mode :host-context(.dark),:host-context([color-scheme=\"dark\"]){.docs-api-table{&__title{color:#f4f5f8}&__th{background:#ffffff0d;color:#a0a0a0}&__td{border-color:#3a3a3a}&__type,&__default{background:#ffffff0d}&--bordered .docs-api-table__wrapper{border-color:#3a3a3a}}}\n"], dependencies: [{ kind: "ngmodule", type: CommonModule }] }); }
|
|
130
|
+
}
|
|
131
|
+
i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "18.2.14", ngImport: i0, type: DocsApiTableComponent, decorators: [{
|
|
132
|
+
type: Component,
|
|
133
|
+
args: [{ selector: 'val-docs-api-table', standalone: true, imports: [CommonModule], template: `
|
|
134
|
+
<div
|
|
135
|
+
class="docs-api-table"
|
|
136
|
+
[class]="props.cssClass"
|
|
137
|
+
[class.docs-api-table--bordered]="props.bordered !== false"
|
|
138
|
+
>
|
|
139
|
+
@if (props.title) {
|
|
140
|
+
<h3 class="docs-api-table__title">{{ props.title }}</h3>
|
|
141
|
+
}
|
|
142
|
+
|
|
143
|
+
<div class="docs-api-table__wrapper">
|
|
144
|
+
<table class="docs-api-table__table">
|
|
145
|
+
<thead>
|
|
146
|
+
<tr>
|
|
147
|
+
@for (col of displayColumns; track col) {
|
|
148
|
+
<th
|
|
149
|
+
class="docs-api-table__th"
|
|
150
|
+
[class.docs-api-table__th--name]="col === 'name'"
|
|
151
|
+
[class.docs-api-table__th--type]="col === 'type'"
|
|
152
|
+
[class.docs-api-table__th--default]="col === 'default'"
|
|
153
|
+
[class.docs-api-table__th--description]="col === 'description'"
|
|
154
|
+
>
|
|
155
|
+
{{ getColumnLabel(col) }}
|
|
156
|
+
</th>
|
|
157
|
+
}
|
|
158
|
+
</tr>
|
|
159
|
+
</thead>
|
|
160
|
+
<tbody>
|
|
161
|
+
@for (item of props.items; track item.name) {
|
|
162
|
+
<tr
|
|
163
|
+
class="docs-api-table__row"
|
|
164
|
+
[class.docs-api-table__row--deprecated]="item.deprecated"
|
|
165
|
+
>
|
|
166
|
+
@for (col of displayColumns; track col) {
|
|
167
|
+
<td
|
|
168
|
+
class="docs-api-table__td"
|
|
169
|
+
[class.docs-api-table__td--name]="col === 'name'"
|
|
170
|
+
[class.docs-api-table__td--type]="col === 'type'"
|
|
171
|
+
[class.docs-api-table__td--default]="col === 'default'"
|
|
172
|
+
[class.docs-api-table__td--description]="col === 'description'"
|
|
173
|
+
>
|
|
174
|
+
@switch (col) {
|
|
175
|
+
@case ('name') {
|
|
176
|
+
<code class="docs-api-table__code">{{ item.name }}</code>
|
|
177
|
+
@if (item.required) {
|
|
178
|
+
<span class="docs-api-table__required">*</span>
|
|
179
|
+
}
|
|
180
|
+
@if (item.deprecated) {
|
|
181
|
+
<span class="docs-api-table__badge docs-api-table__badge--deprecated">Deprecated</span>
|
|
182
|
+
}
|
|
183
|
+
}
|
|
184
|
+
@case ('type') {
|
|
185
|
+
<code class="docs-api-table__type">{{ item.type || '-' }}</code>
|
|
186
|
+
}
|
|
187
|
+
@case ('default') {
|
|
188
|
+
<code class="docs-api-table__default">{{ item.default || '-' }}</code>
|
|
189
|
+
}
|
|
190
|
+
@case ('description') {
|
|
191
|
+
<span>{{ item.description || '-' }}</span>
|
|
192
|
+
@if (item.deprecated && item.deprecationNote) {
|
|
193
|
+
<div class="docs-api-table__deprecation-note">
|
|
194
|
+
{{ item.deprecationNote }}
|
|
195
|
+
</div>
|
|
196
|
+
}
|
|
197
|
+
}
|
|
198
|
+
@case ('required') {
|
|
199
|
+
{{ item.required ? 'Yes' : 'No' }}
|
|
200
|
+
}
|
|
201
|
+
}
|
|
202
|
+
</td>
|
|
203
|
+
}
|
|
204
|
+
</tr>
|
|
205
|
+
}
|
|
206
|
+
</tbody>
|
|
207
|
+
</table>
|
|
208
|
+
</div>
|
|
209
|
+
|
|
210
|
+
@if (props.items.length === 0) {
|
|
211
|
+
<p class="docs-api-table__empty">No items to display.</p>
|
|
212
|
+
}
|
|
213
|
+
</div>
|
|
214
|
+
`, styles: [".docs-api-table{margin:1.5rem 0;&__title{font-size:1.125rem;font-weight:600;margin:0 0 1rem;color:var(--ion-text-color, #1a1a1a)}&__wrapper{overflow-x:auto}&__table{width:100%;border-collapse:collapse;font-size:.875rem}&__th{text-align:left;padding:.75rem 1rem;font-weight:600;color:var(--ion-color-medium-shade, #555);background:var(--ion-color-light, #f4f5f8);white-space:nowrap;&--name{width:20%;min-width:140px}&--type{width:20%;min-width:120px}&--default{width:15%;min-width:100px}&--description{width:45%}}&__td{padding:.75rem 1rem;border-bottom:1px solid var(--ion-border-color, #e0e0e0);vertical-align:top;&--name{font-weight:500}}&__row{&--deprecated{opacity:.7;.docs-api-table__code{text-decoration:line-through}}}&__code{font-family:SF Mono,Monaco,Courier New,monospace;font-size:.8125rem;color:var(--ion-color-primary, #3880ff);background:#3880ff1a;padding:.125rem .375rem;border-radius:4px}&__type,&__default{font-family:SF Mono,Monaco,Courier New,monospace;font-size:.75rem;color:var(--ion-color-medium, #666);background:var(--ion-color-light, #f4f5f8);padding:.125rem .375rem;border-radius:4px}&__required{color:var(--ion-color-danger, #eb445a);font-weight:700;margin-left:.25rem}&__badge{display:inline-block;margin-left:.5rem;padding:.125rem .5rem;font-size:.625rem;font-weight:600;text-transform:uppercase;border-radius:10px;&--deprecated{background:var(--ion-color-warning-tint, rgba(255, 196, 9, .2));color:var(--ion-color-warning-shade, #e0ac08)}}&__deprecation-note{margin-top:.5rem;font-size:.75rem;font-style:italic;color:var(--ion-color-warning-shade, #e0ac08)}&__empty{padding:2rem;text-align:center;color:var(--ion-color-medium, #666)}// Bordered variant &--bordered{.docs-api-table__wrapper{border:1px solid var(--ion-border-color, #e0e0e0);border-radius:8px;overflow:hidden}.docs-api-table__th:first-child{border-top-left-radius:8px}.docs-api-table__th:last-child{border-top-right-radius:8px}}}// Dark mode :host-context(.dark),:host-context([color-scheme=\"dark\"]){.docs-api-table{&__title{color:#f4f5f8}&__th{background:#ffffff0d;color:#a0a0a0}&__td{border-color:#3a3a3a}&__type,&__default{background:#ffffff0d}&--bordered .docs-api-table__wrapper{border-color:#3a3a3a}}}\n"] }]
|
|
215
|
+
}], propDecorators: { props: [{
|
|
216
|
+
type: Input
|
|
217
|
+
}] } });
|
|
218
|
+
//# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoiZG9jcy1hcGktdGFibGUuY29tcG9uZW50LmpzIiwic291cmNlUm9vdCI6IiIsInNvdXJjZXMiOlsiLi4vLi4vLi4vLi4vLi4vLi4vLi4vc3JjL2xpYi9jb21wb25lbnRzL21vbGVjdWxlcy9kb2NzLWFwaS10YWJsZS9kb2NzLWFwaS10YWJsZS5jb21wb25lbnQudHMiXSwibmFtZXMiOltdLCJtYXBwaW5ncyI6IkFBQUEsT0FBTyxFQUFFLFlBQVksRUFBRSxNQUFNLGlCQUFpQixDQUFDO0FBQy9DLE9BQU8sRUFBRSxTQUFTLEVBQUUsS0FBSyxFQUFFLE1BQU0sZUFBZSxDQUFDO0FBQ2pELE9BQU8sRUFBb0QsdUJBQXVCLEVBQUUsTUFBTSxTQUFTLENBQUM7O0FBRXBHOzs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7R0E4Qkc7QUFrUEgsTUFBTSxPQUFPLHFCQUFxQjtJQWpQbEM7UUFrUFcsVUFBSyxHQUF5QixFQUFFLEtBQUssRUFBRSxFQUFFLEVBQUUsQ0FBQztRQUU1QyxpQkFBWSxHQUFHLHVCQUF1QixDQUFDO0tBU2pEO0lBUEMsSUFBSSxjQUFjO1FBQ2hCLE9BQU8sSUFBSSxDQUFDLEtBQUssQ0FBQyxPQUFPLElBQUksQ0FBQyxNQUFNLEVBQUUsTUFBTSxFQUFFLFNBQVMsRUFBRSxhQUFhLENBQUMsQ0FBQztJQUMxRSxDQUFDO0lBRUQsY0FBYyxDQUFDLEdBQWtCO1FBQy9CLE9BQU8sSUFBSSxDQUFDLFlBQVksQ0FBQyxHQUFHLENBQUMsQ0FBQztJQUNoQyxDQUFDOytHQVhVLHFCQUFxQjttR0FBckIscUJBQXFCLDBHQTdPdEI7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7OztHQWlGVCxzdUVBbEZTLFlBQVk7OzRGQThPWCxxQkFBcUI7a0JBalBqQyxTQUFTOytCQUNFLG9CQUFvQixjQUNsQixJQUFJLFdBQ1AsQ0FBQyxZQUFZLENBQUMsWUFDYjs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7O0dBaUZUOzhCQTZKUSxLQUFLO3NCQUFiLEtBQUsiLCJzb3VyY2VzQ29udGVudCI6WyJpbXBvcnQgeyBDb21tb25Nb2R1bGUgfSBmcm9tICdAYW5ndWxhci9jb21tb24nO1xuaW1wb3J0IHsgQ29tcG9uZW50LCBJbnB1dCB9IGZyb20gJ0Bhbmd1bGFyL2NvcmUnO1xuaW1wb3J0IHsgRG9jc0FwaVRhYmxlTWV0YWRhdGEsIERvY3NBcGlDb2x1bW4sIERvY3NBcGlJdGVtLCBBUElfVEFCTEVfQ09MVU1OX0xBQkVMUyB9IGZyb20gJy4vdHlwZXMnO1xuXG4vKipcbiAqIHZhbC1kb2NzLWFwaS10YWJsZVxuICpcbiAqIEEgdGFibGUgY29tcG9uZW50IGZvciBkb2N1bWVudGluZyBjb21wb25lbnQgQVBJcyAoaW5wdXRzLCBvdXRwdXRzLCBtZXRob2RzKS5cbiAqXG4gKiBAZXhhbXBsZSBQcm9wZXJ0aWVzIHRhYmxlXG4gKiBgYGBodG1sXG4gKiA8dmFsLWRvY3MtYXBpLXRhYmxlXG4gKiAgIFtwcm9wc109XCJ7XG4gKiAgICAgdGl0bGU6ICdQcm9wZXJ0aWVzJyxcbiAqICAgICBpdGVtczogW1xuICogICAgICAgeyBuYW1lOiAnZGlzYWJsZWQnLCB0eXBlOiAnYm9vbGVhbicsIGRlZmF1bHQ6ICdmYWxzZScsIGRlc2NyaXB0aW9uOiAnRGlzYWJsZXMgdGhlIGJ1dHRvbicgfSxcbiAqICAgICAgIHsgbmFtZTogJ2NvbG9yJywgdHlwZTogJ3N0cmluZycsIGRlZmF1bHQ6ICdwcmltYXJ5JywgZGVzY3JpcHRpb246ICdCdXR0b24gY29sb3IgdmFyaWFudCcgfVxuICogICAgIF1cbiAqICAgfVwiXG4gKiA+PC92YWwtZG9jcy1hcGktdGFibGU+XG4gKiBgYGBcbiAqXG4gKiBAZXhhbXBsZSBFdmVudHMgdGFibGVcbiAqIGBgYGh0bWxcbiAqIDx2YWwtZG9jcy1hcGktdGFibGVcbiAqICAgW3Byb3BzXT1cIntcbiAqICAgICB0aXRsZTogJ0V2ZW50cycsXG4gKiAgICAgY29sdW1uczogWyduYW1lJywgJ3R5cGUnLCAnZGVzY3JpcHRpb24nXSxcbiAqICAgICBpdGVtczogW1xuICogICAgICAgeyBuYW1lOiAnY2xpY2snLCB0eXBlOiAnRXZlbnRFbWl0dGVyPE1vdXNlRXZlbnQ+JywgZGVzY3JpcHRpb246ICdFbWl0dGVkIHdoZW4gY2xpY2tlZCcgfVxuICogICAgIF1cbiAqICAgfVwiXG4gKiA+PC92YWwtZG9jcy1hcGktdGFibGU+XG4gKiBgYGBcbiAqL1xuQENvbXBvbmVudCh7XG4gIHNlbGVjdG9yOiAndmFsLWRvY3MtYXBpLXRhYmxlJyxcbiAgc3RhbmRhbG9uZTogdHJ1ZSxcbiAgaW1wb3J0czogW0NvbW1vbk1vZHVsZV0sXG4gIHRlbXBsYXRlOiBgXG4gICAgPGRpdlxuICAgICAgY2xhc3M9XCJkb2NzLWFwaS10YWJsZVwiXG4gICAgICBbY2xhc3NdPVwicHJvcHMuY3NzQ2xhc3NcIlxuICAgICAgW2NsYXNzLmRvY3MtYXBpLXRhYmxlLS1ib3JkZXJlZF09XCJwcm9wcy5ib3JkZXJlZCAhPT0gZmFsc2VcIlxuICAgID5cbiAgICAgIEBpZiAocHJvcHMudGl0bGUpIHtcbiAgICAgICAgPGgzIGNsYXNzPVwiZG9jcy1hcGktdGFibGVfX3RpdGxlXCI+e3sgcHJvcHMudGl0bGUgfX08L2gzPlxuICAgICAgfVxuXG4gICAgICA8ZGl2IGNsYXNzPVwiZG9jcy1hcGktdGFibGVfX3dyYXBwZXJcIj5cbiAgICAgICAgPHRhYmxlIGNsYXNzPVwiZG9jcy1hcGktdGFibGVfX3RhYmxlXCI+XG4gICAgICAgICAgPHRoZWFkPlxuICAgICAgICAgICAgPHRyPlxuICAgICAgICAgICAgICBAZm9yIChjb2wgb2YgZGlzcGxheUNvbHVtbnM7IHRyYWNrIGNvbCkge1xuICAgICAgICAgICAgICAgIDx0aFxuICAgICAgICAgICAgICAgICAgY2xhc3M9XCJkb2NzLWFwaS10YWJsZV9fdGhcIlxuICAgICAgICAgICAgICAgICAgW2NsYXNzLmRvY3MtYXBpLXRhYmxlX190aC0tbmFtZV09XCJjb2wgPT09ICduYW1lJ1wiXG4gICAgICAgICAgICAgICAgICBbY2xhc3MuZG9jcy1hcGktdGFibGVfX3RoLS10eXBlXT1cImNvbCA9PT0gJ3R5cGUnXCJcbiAgICAgICAgICAgICAgICAgIFtjbGFzcy5kb2NzLWFwaS10YWJsZV9fdGgtLWRlZmF1bHRdPVwiY29sID09PSAnZGVmYXVsdCdcIlxuICAgICAgICAgICAgICAgICAgW2NsYXNzLmRvY3MtYXBpLXRhYmxlX190aC0tZGVzY3JpcHRpb25dPVwiY29sID09PSAnZGVzY3JpcHRpb24nXCJcbiAgICAgICAgICAgICAgICA+XG4gICAgICAgICAgICAgICAgICB7eyBnZXRDb2x1bW5MYWJlbChjb2wpIH19XG4gICAgICAgICAgICAgICAgPC90aD5cbiAgICAgICAgICAgICAgfVxuICAgICAgICAgICAgPC90cj5cbiAgICAgICAgICA8L3RoZWFkPlxuICAgICAgICAgIDx0Ym9keT5cbiAgICAgICAgICAgIEBmb3IgKGl0ZW0gb2YgcHJvcHMuaXRlbXM7IHRyYWNrIGl0ZW0ubmFtZSkge1xuICAgICAgICAgICAgICA8dHJcbiAgICAgICAgICAgICAgICBjbGFzcz1cImRvY3MtYXBpLXRhYmxlX19yb3dcIlxuICAgICAgICAgICAgICAgIFtjbGFzcy5kb2NzLWFwaS10YWJsZV9fcm93LS1kZXByZWNhdGVkXT1cIml0ZW0uZGVwcmVjYXRlZFwiXG4gICAgICAgICAgICAgID5cbiAgICAgICAgICAgICAgICBAZm9yIChjb2wgb2YgZGlzcGxheUNvbHVtbnM7IHRyYWNrIGNvbCkge1xuICAgICAgICAgICAgICAgICAgPHRkXG4gICAgICAgICAgICAgICAgICAgIGNsYXNzPVwiZG9jcy1hcGktdGFibGVfX3RkXCJcbiAgICAgICAgICAgICAgICAgICAgW2NsYXNzLmRvY3MtYXBpLXRhYmxlX190ZC0tbmFtZV09XCJjb2wgPT09ICduYW1lJ1wiXG4gICAgICAgICAgICAgICAgICAgIFtjbGFzcy5kb2NzLWFwaS10YWJsZV9fdGQtLXR5cGVdPVwiY29sID09PSAndHlwZSdcIlxuICAgICAgICAgICAgICAgICAgICBbY2xhc3MuZG9jcy1hcGktdGFibGVfX3RkLS1kZWZhdWx0XT1cImNvbCA9PT0gJ2RlZmF1bHQnXCJcbiAgICAgICAgICAgICAgICAgICAgW2NsYXNzLmRvY3MtYXBpLXRhYmxlX190ZC0tZGVzY3JpcHRpb25dPVwiY29sID09PSAnZGVzY3JpcHRpb24nXCJcbiAgICAgICAgICAgICAgICAgID5cbiAgICAgICAgICAgICAgICAgICAgQHN3aXRjaCAoY29sKSB7XG4gICAgICAgICAgICAgICAgICAgICAgQGNhc2UgKCduYW1lJykge1xuICAgICAgICAgICAgICAgICAgICAgICAgPGNvZGUgY2xhc3M9XCJkb2NzLWFwaS10YWJsZV9fY29kZVwiPnt7IGl0ZW0ubmFtZSB9fTwvY29kZT5cbiAgICAgICAgICAgICAgICAgICAgICAgIEBpZiAoaXRlbS5yZXF1aXJlZCkge1xuICAgICAgICAgICAgICAgICAgICAgICAgICA8c3BhbiBjbGFzcz1cImRvY3MtYXBpLXRhYmxlX19yZXF1aXJlZFwiPio8L3NwYW4+XG4gICAgICAgICAgICAgICAgICAgICAgICB9XG4gICAgICAgICAgICAgICAgICAgICAgICBAaWYgKGl0ZW0uZGVwcmVjYXRlZCkge1xuICAgICAgICAgICAgICAgICAgICAgICAgICA8c3BhbiBjbGFzcz1cImRvY3MtYXBpLXRhYmxlX19iYWRnZSBkb2NzLWFwaS10YWJsZV9fYmFkZ2UtLWRlcHJlY2F0ZWRcIj5EZXByZWNhdGVkPC9zcGFuPlxuICAgICAgICAgICAgICAgICAgICAgICAgfVxuICAgICAgICAgICAgICAgICAgICAgIH1cbiAgICAgICAgICAgICAgICAgICAgICBAY2FzZSAoJ3R5cGUnKSB7XG4gICAgICAgICAgICAgICAgICAgICAgICA8Y29kZSBjbGFzcz1cImRvY3MtYXBpLXRhYmxlX190eXBlXCI+e3sgaXRlbS50eXBlIHx8ICctJyB9fTwvY29kZT5cbiAgICAgICAgICAgICAgICAgICAgICB9XG4gICAgICAgICAgICAgICAgICAgICAgQGNhc2UgKCdkZWZhdWx0Jykge1xuICAgICAgICAgICAgICAgICAgICAgICAgPGNvZGUgY2xhc3M9XCJkb2NzLWFwaS10YWJsZV9fZGVmYXVsdFwiPnt7IGl0ZW0uZGVmYXVsdCB8fCAnLScgfX08L2NvZGU+XG4gICAgICAgICAgICAgICAgICAgICAgfVxuICAgICAgICAgICAgICAgICAgICAgIEBjYXNlICgnZGVzY3JpcHRpb24nKSB7XG4gICAgICAgICAgICAgICAgICAgICAgICA8c3Bhbj57eyBpdGVtLmRlc2NyaXB0aW9uIHx8ICctJyB9fTwvc3Bhbj5cbiAgICAgICAgICAgICAgICAgICAgICAgIEBpZiAoaXRlbS5kZXByZWNhdGVkICYmIGl0ZW0uZGVwcmVjYXRpb25Ob3RlKSB7XG4gICAgICAgICAgICAgICAgICAgICAgICAgIDxkaXYgY2xhc3M9XCJkb2NzLWFwaS10YWJsZV9fZGVwcmVjYXRpb24tbm90ZVwiPlxuICAgICAgICAgICAgICAgICAgICAgICAgICAgIHt7IGl0ZW0uZGVwcmVjYXRpb25Ob3RlIH19XG4gICAgICAgICAgICAgICAgICAgICAgICAgIDwvZGl2PlxuICAgICAgICAgICAgICAgICAgICAgICAgfVxuICAgICAgICAgICAgICAgICAgICAgIH1cbiAgICAgICAgICAgICAgICAgICAgICBAY2FzZSAoJ3JlcXVpcmVkJykge1xuICAgICAgICAgICAgICAgICAgICAgICAge3sgaXRlbS5yZXF1aXJlZCA/ICdZZXMnIDogJ05vJyB9fVxuICAgICAgICAgICAgICAgICAgICAgIH1cbiAgICAgICAgICAgICAgICAgICAgfVxuICAgICAgICAgICAgICAgICAgPC90ZD5cbiAgICAgICAgICAgICAgICB9XG4gICAgICAgICAgICAgIDwvdHI+XG4gICAgICAgICAgICB9XG4gICAgICAgICAgPC90Ym9keT5cbiAgICAgICAgPC90YWJsZT5cbiAgICAgIDwvZGl2PlxuXG4gICAgICBAaWYgKHByb3BzLml0ZW1zLmxlbmd0aCA9PT0gMCkge1xuICAgICAgICA8cCBjbGFzcz1cImRvY3MtYXBpLXRhYmxlX19lbXB0eVwiPk5vIGl0ZW1zIHRvIGRpc3BsYXkuPC9wPlxuICAgICAgfVxuICAgIDwvZGl2PlxuICBgLFxuICBzdHlsZXM6IFtgXG4gICAgLmRvY3MtYXBpLXRhYmxlIHtcbiAgICAgIG1hcmdpbjogMS41cmVtIDA7XG5cbiAgICAgICZfX3RpdGxlIHtcbiAgICAgICAgZm9udC1zaXplOiAxLjEyNXJlbTtcbiAgICAgICAgZm9udC13ZWlnaHQ6IDYwMDtcbiAgICAgICAgbWFyZ2luOiAwIDAgMXJlbSAwO1xuICAgICAgICBjb2xvcjogdmFyKC0taW9uLXRleHQtY29sb3IsICMxYTFhMWEpO1xuICAgICAgfVxuXG4gICAgICAmX193cmFwcGVyIHtcbiAgICAgICAgb3ZlcmZsb3cteDogYXV0bztcbiAgICAgIH1cblxuICAgICAgJl9fdGFibGUge1xuICAgICAgICB3aWR0aDogMTAwJTtcbiAgICAgICAgYm9yZGVyLWNvbGxhcHNlOiBjb2xsYXBzZTtcbiAgICAgICAgZm9udC1zaXplOiAwLjg3NXJlbTtcbiAgICAgIH1cblxuICAgICAgJl9fdGgge1xuICAgICAgICB0ZXh0LWFsaWduOiBsZWZ0O1xuICAgICAgICBwYWRkaW5nOiAwLjc1cmVtIDFyZW07XG4gICAgICAgIGZvbnQtd2VpZ2h0OiA2MDA7XG4gICAgICAgIGNvbG9yOiB2YXIoLS1pb24tY29sb3ItbWVkaXVtLXNoYWRlLCAjNTU1KTtcbiAgICAgICAgYmFja2dyb3VuZDogdmFyKC0taW9uLWNvbG9yLWxpZ2h0LCAjZjRmNWY4KTtcbiAgICAgICAgd2hpdGUtc3BhY2U6IG5vd3JhcDtcblxuICAgICAgICAmLS1uYW1lIHsgd2lkdGg6IDIwJTsgbWluLXdpZHRoOiAxNDBweDsgfVxuICAgICAgICAmLS10eXBlIHsgd2lkdGg6IDIwJTsgbWluLXdpZHRoOiAxMjBweDsgfVxuICAgICAgICAmLS1kZWZhdWx0IHsgd2lkdGg6IDE1JTsgbWluLXdpZHRoOiAxMDBweDsgfVxuICAgICAgICAmLS1kZXNjcmlwdGlvbiB7IHdpZHRoOiA0NSU7IH1cbiAgICAgIH1cblxuICAgICAgJl9fdGQge1xuICAgICAgICBwYWRkaW5nOiAwLjc1cmVtIDFyZW07XG4gICAgICAgIGJvcmRlci1ib3R0b206IDFweCBzb2xpZCB2YXIoLS1pb24tYm9yZGVyLWNvbG9yLCAjZTBlMGUwKTtcbiAgICAgICAgdmVydGljYWwtYWxpZ246IHRvcDtcblxuICAgICAgICAmLS1uYW1lIHtcbiAgICAgICAgICBmb250LXdlaWdodDogNTAwO1xuICAgICAgICB9XG4gICAgICB9XG5cbiAgICAgICZfX3JvdyB7XG4gICAgICAgICYtLWRlcHJlY2F0ZWQge1xuICAgICAgICAgIG9wYWNpdHk6IDAuNztcblxuICAgICAgICAgIC5kb2NzLWFwaS10YWJsZV9fY29kZSB7XG4gICAgICAgICAgICB0ZXh0LWRlY29yYXRpb246IGxpbmUtdGhyb3VnaDtcbiAgICAgICAgICB9XG4gICAgICAgIH1cbiAgICAgIH1cblxuICAgICAgJl9fY29kZSB7XG4gICAgICAgIGZvbnQtZmFtaWx5OiAnU0YgTW9ubycsIE1vbmFjbywgJ0NvdXJpZXIgTmV3JywgbW9ub3NwYWNlO1xuICAgICAgICBmb250LXNpemU6IDAuODEyNXJlbTtcbiAgICAgICAgY29sb3I6IHZhcigtLWlvbi1jb2xvci1wcmltYXJ5LCAjMzg4MGZmKTtcbiAgICAgICAgYmFja2dyb3VuZDogcmdiYSg1NiwgMTI4LCAyNTUsIDAuMSk7XG4gICAgICAgIHBhZGRpbmc6IDAuMTI1cmVtIDAuMzc1cmVtO1xuICAgICAgICBib3JkZXItcmFkaXVzOiA0cHg7XG4gICAgICB9XG5cbiAgICAgICZfX3R5cGUsXG4gICAgICAmX19kZWZhdWx0IHtcbiAgICAgICAgZm9udC1mYW1pbHk6ICdTRiBNb25vJywgTW9uYWNvLCAnQ291cmllciBOZXcnLCBtb25vc3BhY2U7XG4gICAgICAgIGZvbnQtc2l6ZTogMC43NXJlbTtcbiAgICAgICAgY29sb3I6IHZhcigtLWlvbi1jb2xvci1tZWRpdW0sICM2NjYpO1xuICAgICAgICBiYWNrZ3JvdW5kOiB2YXIoLS1pb24tY29sb3ItbGlnaHQsICNmNGY1ZjgpO1xuICAgICAgICBwYWRkaW5nOiAwLjEyNXJlbSAwLjM3NXJlbTtcbiAgICAgICAgYm9yZGVyLXJhZGl1czogNHB4O1xuICAgICAgfVxuXG4gICAgICAmX19yZXF1aXJlZCB7XG4gICAgICAgIGNvbG9yOiB2YXIoLS1pb24tY29sb3ItZGFuZ2VyLCAjZWI0NDVhKTtcbiAgICAgICAgZm9udC13ZWlnaHQ6IGJvbGQ7XG4gICAgICAgIG1hcmdpbi1sZWZ0OiAwLjI1cmVtO1xuICAgICAgfVxuXG4gICAgICAmX19iYWRnZSB7XG4gICAgICAgIGRpc3BsYXk6IGlubGluZS1ibG9jaztcbiAgICAgICAgbWFyZ2luLWxlZnQ6IDAuNXJlbTtcbiAgICAgICAgcGFkZGluZzogMC4xMjVyZW0gMC41cmVtO1xuICAgICAgICBmb250LXNpemU6IDAuNjI1cmVtO1xuICAgICAgICBmb250LXdlaWdodDogNjAwO1xuICAgICAgICB0ZXh0LXRyYW5zZm9ybTogdXBwZXJjYXNlO1xuICAgICAgICBib3JkZXItcmFkaXVzOiAxMHB4O1xuXG4gICAgICAgICYtLWRlcHJlY2F0ZWQge1xuICAgICAgICAgIGJhY2tncm91bmQ6IHZhcigtLWlvbi1jb2xvci13YXJuaW5nLXRpbnQsIHJnYmEoMjU1LCAxOTYsIDksIDAuMikpO1xuICAgICAgICAgIGNvbG9yOiB2YXIoLS1pb24tY29sb3Itd2FybmluZy1zaGFkZSwgI2UwYWMwOCk7XG4gICAgICAgIH1cbiAgICAgIH1cblxuICAgICAgJl9fZGVwcmVjYXRpb24tbm90ZSB7XG4gICAgICAgIG1hcmdpbi10b3A6IDAuNXJlbTtcbiAgICAgICAgZm9udC1zaXplOiAwLjc1cmVtO1xuICAgICAgICBmb250LXN0eWxlOiBpdGFsaWM7XG4gICAgICAgIGNvbG9yOiB2YXIoLS1pb24tY29sb3Itd2FybmluZy1zaGFkZSwgI2UwYWMwOCk7XG4gICAgICB9XG5cbiAgICAgICZfX2VtcHR5IHtcbiAgICAgICAgcGFkZGluZzogMnJlbTtcbiAgICAgICAgdGV4dC1hbGlnbjogY2VudGVyO1xuICAgICAgICBjb2xvcjogdmFyKC0taW9uLWNvbG9yLW1lZGl1bSwgIzY2Nik7XG4gICAgICB9XG5cbiAgICAgIC8vIEJvcmRlcmVkIHZhcmlhbnRcbiAgICAgICYtLWJvcmRlcmVkIHtcbiAgICAgICAgLmRvY3MtYXBpLXRhYmxlX193cmFwcGVyIHtcbiAgICAgICAgICBib3JkZXI6IDFweCBzb2xpZCB2YXIoLS1pb24tYm9yZGVyLWNvbG9yLCAjZTBlMGUwKTtcbiAgICAgICAgICBib3JkZXItcmFkaXVzOiA4cHg7XG4gICAgICAgICAgb3ZlcmZsb3c6IGhpZGRlbjtcbiAgICAgICAgfVxuXG4gICAgICAgIC5kb2NzLWFwaS10YWJsZV9fdGg6Zmlyc3QtY2hpbGQge1xuICAgICAgICAgIGJvcmRlci10b3AtbGVmdC1yYWRpdXM6IDhweDtcbiAgICAgICAgfVxuXG4gICAgICAgIC5kb2NzLWFwaS10YWJsZV9fdGg6bGFzdC1jaGlsZCB7XG4gICAgICAgICAgYm9yZGVyLXRvcC1yaWdodC1yYWRpdXM6IDhweDtcbiAgICAgICAgfVxuICAgICAgfVxuICAgIH1cblxuICAgIC8vIERhcmsgbW9kZVxuICAgIDpob3N0LWNvbnRleHQoLmRhcmspLFxuICAgIDpob3N0LWNvbnRleHQoW2NvbG9yLXNjaGVtZT0nZGFyayddKSB7XG4gICAgICAuZG9jcy1hcGktdGFibGUge1xuICAgICAgICAmX190aXRsZSB7XG4gICAgICAgICAgY29sb3I6ICNmNGY1Zjg7XG4gICAgICAgIH1cblxuICAgICAgICAmX190aCB7XG4gICAgICAgICAgYmFja2dyb3VuZDogcmdiYSgyNTUsIDI1NSwgMjU1LCAwLjA1KTtcbiAgICAgICAgICBjb2xvcjogI2EwYTBhMDtcbiAgICAgICAgfVxuXG4gICAgICAgICZfX3RkIHtcbiAgICAgICAgICBib3JkZXItY29sb3I6ICMzYTNhM2E7XG4gICAgICAgIH1cblxuICAgICAgICAmX190eXBlLFxuICAgICAgICAmX19kZWZhdWx0IHtcbiAgICAgICAgICBiYWNrZ3JvdW5kOiByZ2JhKDI1NSwgMjU1LCAyNTUsIDAuMDUpO1xuICAgICAgICB9XG5cbiAgICAgICAgJi0tYm9yZGVyZWQgLmRvY3MtYXBpLXRhYmxlX193cmFwcGVyIHtcbiAgICAgICAgICBib3JkZXItY29sb3I6ICMzYTNhM2E7XG4gICAgICAgIH1cbiAgICAgIH1cbiAgICB9XG4gIGBdLFxufSlcbmV4cG9ydCBjbGFzcyBEb2NzQXBpVGFibGVDb21wb25lbnQge1xuICBASW5wdXQoKSBwcm9wczogRG9jc0FwaVRhYmxlTWV0YWRhdGEgPSB7IGl0ZW1zOiBbXSB9O1xuXG4gIHJlYWRvbmx5IGNvbHVtbkxhYmVscyA9IEFQSV9UQUJMRV9DT0xVTU5fTEFCRUxTO1xuXG4gIGdldCBkaXNwbGF5Q29sdW1ucygpOiBEb2NzQXBpQ29sdW1uW10ge1xuICAgIHJldHVybiB0aGlzLnByb3BzLmNvbHVtbnMgfHwgWyduYW1lJywgJ3R5cGUnLCAnZGVmYXVsdCcsICdkZXNjcmlwdGlvbiddO1xuICB9XG5cbiAgZ2V0Q29sdW1uTGFiZWwoY29sOiBEb2NzQXBpQ29sdW1uKTogc3RyaW5nIHtcbiAgICByZXR1cm4gdGhpcy5jb2x1bW5MYWJlbHNbY29sXTtcbiAgfVxufVxuIl19
|
|
@@ -0,0 +1,11 @@
|
|
|
1
|
+
/**
|
|
2
|
+
* Column labels configuration.
|
|
3
|
+
*/
|
|
4
|
+
export const API_TABLE_COLUMN_LABELS = {
|
|
5
|
+
name: 'Name',
|
|
6
|
+
type: 'Type',
|
|
7
|
+
default: 'Default',
|
|
8
|
+
description: 'Description',
|
|
9
|
+
required: 'Required',
|
|
10
|
+
};
|
|
11
|
+
//# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoidHlwZXMuanMiLCJzb3VyY2VSb290IjoiIiwic291cmNlcyI6WyIuLi8uLi8uLi8uLi8uLi8uLi8uLi9zcmMvbGliL2NvbXBvbmVudHMvbW9sZWN1bGVzL2RvY3MtYXBpLXRhYmxlL3R5cGVzLnRzIl0sIm5hbWVzIjpbXSwibWFwcGluZ3MiOiJBQXVFQTs7R0FFRztBQUNILE1BQU0sQ0FBQyxNQUFNLHVCQUF1QixHQUFrQztJQUNwRSxJQUFJLEVBQUUsTUFBTTtJQUNaLElBQUksRUFBRSxNQUFNO0lBQ1osT0FBTyxFQUFFLFNBQVM7SUFDbEIsV0FBVyxFQUFFLGFBQWE7SUFDMUIsUUFBUSxFQUFFLFVBQVU7Q0FDckIsQ0FBQyIsInNvdXJjZXNDb250ZW50IjpbIi8qKlxuICogQ29uZmlndXJhdGlvbiBmb3IgdGhlIGRvY3MtYXBpLXRhYmxlIGNvbXBvbmVudC5cbiAqL1xuZXhwb3J0IGludGVyZmFjZSBEb2NzQXBpVGFibGVNZXRhZGF0YSB7XG4gIC8qKlxuICAgKiBUYWJsZSB0aXRsZSAoZS5nLiwgXCJQcm9wZXJ0aWVzXCIsIFwiRXZlbnRzXCIsIFwiTWV0aG9kc1wiKS5cbiAgICovXG4gIHRpdGxlPzogc3RyaW5nO1xuXG4gIC8qKlxuICAgKiBBUEkgaXRlbXMgdG8gZGlzcGxheS5cbiAgICovXG4gIGl0ZW1zOiBEb2NzQXBpSXRlbVtdO1xuXG4gIC8qKlxuICAgKiBDb2x1bW5zIHRvIHNob3cgKHN1YnNldCBvZiBhdmFpbGFibGUgY29sdW1ucykuXG4gICAqIEBkZWZhdWx0IFsnbmFtZScsICd0eXBlJywgJ2RlZmF1bHQnLCAnZGVzY3JpcHRpb24nXVxuICAgKi9cbiAgY29sdW1ucz86IERvY3NBcGlDb2x1bW5bXTtcblxuICAvKipcbiAgICogQ3VzdG9tIENTUyBjbGFzcy5cbiAgICovXG4gIGNzc0NsYXNzPzogc3RyaW5nO1xuXG4gIC8qKlxuICAgKiBTaG93IGJvcmRlciBhcm91bmQgdGhlIHRhYmxlLlxuICAgKiBAZGVmYXVsdCB0cnVlXG4gICAqL1xuICBib3JkZXJlZD86IGJvb2xlYW47XG59XG5cbmV4cG9ydCB0eXBlIERvY3NBcGlDb2x1bW4gPSAnbmFtZScgfCAndHlwZScgfCAnZGVmYXVsdCcgfCAnZGVzY3JpcHRpb24nIHwgJ3JlcXVpcmVkJztcblxuZXhwb3J0IGludGVyZmFjZSBEb2NzQXBpSXRlbSB7XG4gIC8qKlxuICAgKiBQcm9wZXJ0eS9ldmVudC9tZXRob2QgbmFtZS5cbiAgICovXG4gIG5hbWU6IHN0cmluZztcblxuICAvKipcbiAgICogVHlwZVNjcmlwdCB0eXBlIChlLmcuLCBcInN0cmluZ1wiLCBcImJvb2xlYW5cIiwgXCJFdmVudEVtaXR0ZXI8VD5cIikuXG4gICAqL1xuICB0eXBlPzogc3RyaW5nO1xuXG4gIC8qKlxuICAgKiBEZWZhdWx0IHZhbHVlLlxuICAgKi9cbiAgZGVmYXVsdD86IHN0cmluZztcblxuICAvKipcbiAgICogRGVzY3JpcHRpb24gb2YgdGhlIHByb3BlcnR5L2V2ZW50L21ldGhvZC5cbiAgICovXG4gIGRlc2NyaXB0aW9uPzogc3RyaW5nO1xuXG4gIC8qKlxuICAgKiBXaGV0aGVyIGl0J3MgcmVxdWlyZWQuXG4gICAqL1xuICByZXF1aXJlZD86IGJvb2xlYW47XG5cbiAgLyoqXG4gICAqIFdoZXRoZXIgaXQncyBkZXByZWNhdGVkLlxuICAgKi9cbiAgZGVwcmVjYXRlZD86IGJvb2xlYW47XG5cbiAgLyoqXG4gICAqIERlcHJlY2F0aW9uIG1lc3NhZ2Ugb3IgYWx0ZXJuYXRpdmUuXG4gICAqL1xuICBkZXByZWNhdGlvbk5vdGU/OiBzdHJpbmc7XG59XG5cbi8qKlxuICogQ29sdW1uIGxhYmVscyBjb25maWd1cmF0aW9uLlxuICovXG5leHBvcnQgY29uc3QgQVBJX1RBQkxFX0NPTFVNTl9MQUJFTFM6IFJlY29yZDxEb2NzQXBpQ29sdW1uLCBzdHJpbmc+ID0ge1xuICBuYW1lOiAnTmFtZScsXG4gIHR5cGU6ICdUeXBlJyxcbiAgZGVmYXVsdDogJ0RlZmF1bHQnLFxuICBkZXNjcmlwdGlvbjogJ0Rlc2NyaXB0aW9uJyxcbiAgcmVxdWlyZWQ6ICdSZXF1aXJlZCcsXG59O1xuIl19
|
|
@@ -0,0 +1,217 @@
|
|
|
1
|
+
import { CommonModule } from '@angular/common';
|
|
2
|
+
import { Component, Input, signal, ContentChild } from '@angular/core';
|
|
3
|
+
import { IonIcon, IonButton } from '@ionic/angular/standalone';
|
|
4
|
+
import { addIcons } from 'ionicons';
|
|
5
|
+
import { copyOutline, checkmarkOutline, openOutline } from 'ionicons/icons';
|
|
6
|
+
import * as i0 from "@angular/core";
|
|
7
|
+
import * as i1 from "@angular/common";
|
|
8
|
+
addIcons({ copyOutline, checkmarkOutline, openOutline });
|
|
9
|
+
/**
|
|
10
|
+
* val-docs-code-example
|
|
11
|
+
*
|
|
12
|
+
* A code example component with tabs, preview, and copy functionality.
|
|
13
|
+
*
|
|
14
|
+
* @example Basic usage
|
|
15
|
+
* ```html
|
|
16
|
+
* <val-docs-code-example
|
|
17
|
+
* [props]="{
|
|
18
|
+
* title: 'Basic Button',
|
|
19
|
+
* tabs: [
|
|
20
|
+
* { label: 'HTML', language: 'html', code: '<val-button>Click me</val-button>' },
|
|
21
|
+
* { label: 'TypeScript', language: 'typescript', code: 'import { ButtonComponent } from ...' }
|
|
22
|
+
* ]
|
|
23
|
+
* }"
|
|
24
|
+
* >
|
|
25
|
+
* <ng-template #preview>
|
|
26
|
+
* <val-button [props]="{ label: 'Click me' }"></val-button>
|
|
27
|
+
* </ng-template>
|
|
28
|
+
* </val-docs-code-example>
|
|
29
|
+
* ```
|
|
30
|
+
*/
|
|
31
|
+
export class DocsCodeExampleComponent {
|
|
32
|
+
constructor() {
|
|
33
|
+
this.props = { tabs: [] };
|
|
34
|
+
this.activeTab = signal(0);
|
|
35
|
+
this.copied = signal(false);
|
|
36
|
+
}
|
|
37
|
+
currentTab() {
|
|
38
|
+
return this.props.tabs[this.activeTab()] || { label: '', code: '', language: 'text' };
|
|
39
|
+
}
|
|
40
|
+
async copyCode() {
|
|
41
|
+
const code = this.currentTab().code;
|
|
42
|
+
try {
|
|
43
|
+
await navigator.clipboard.writeText(code);
|
|
44
|
+
this.copied.set(true);
|
|
45
|
+
setTimeout(() => this.copied.set(false), 2000);
|
|
46
|
+
}
|
|
47
|
+
catch (err) {
|
|
48
|
+
console.error('Failed to copy code:', err);
|
|
49
|
+
}
|
|
50
|
+
}
|
|
51
|
+
static { this.ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "18.2.14", ngImport: i0, type: DocsCodeExampleComponent, deps: [], target: i0.ɵɵFactoryTarget.Component }); }
|
|
52
|
+
static { this.ɵcmp = i0.ɵɵngDeclareComponent({ minVersion: "17.0.0", version: "18.2.14", type: DocsCodeExampleComponent, isStandalone: true, selector: "val-docs-code-example", inputs: { props: "props" }, queries: [{ propertyName: "previewTpl", first: true, predicate: ["preview"], descendants: true }], ngImport: i0, template: `
|
|
53
|
+
<div class="docs-code-example" [class]="props.cssClass">
|
|
54
|
+
<!-- Header -->
|
|
55
|
+
@if (props.title || props.description || props.externalLink) {
|
|
56
|
+
<div class="docs-code-example__header">
|
|
57
|
+
@if (props.title) {
|
|
58
|
+
<h4 class="docs-code-example__title">{{ props.title }}</h4>
|
|
59
|
+
}
|
|
60
|
+
@if (props.description) {
|
|
61
|
+
<p class="docs-code-example__description">{{ props.description }}</p>
|
|
62
|
+
}
|
|
63
|
+
@if (props.externalLink) {
|
|
64
|
+
<a
|
|
65
|
+
class="docs-code-example__external-link"
|
|
66
|
+
[href]="props.externalLink.url"
|
|
67
|
+
target="_blank"
|
|
68
|
+
rel="noopener noreferrer"
|
|
69
|
+
>
|
|
70
|
+
{{ props.externalLink.label || 'Open in StackBlitz' }}
|
|
71
|
+
<ion-icon name="open-outline"></ion-icon>
|
|
72
|
+
</a>
|
|
73
|
+
}
|
|
74
|
+
</div>
|
|
75
|
+
}
|
|
76
|
+
|
|
77
|
+
<!-- Preview -->
|
|
78
|
+
@if (previewTpl) {
|
|
79
|
+
<div class="docs-code-example__preview">
|
|
80
|
+
<ng-container *ngTemplateOutlet="previewTpl"></ng-container>
|
|
81
|
+
</div>
|
|
82
|
+
}
|
|
83
|
+
|
|
84
|
+
<!-- Tabs -->
|
|
85
|
+
@if (props.tabs?.length) {
|
|
86
|
+
<div class="docs-code-example__tabs">
|
|
87
|
+
<div class="docs-code-example__tab-list" role="tablist">
|
|
88
|
+
@for (tab of props.tabs; track tab.label; let i = $index) {
|
|
89
|
+
<button
|
|
90
|
+
class="docs-code-example__tab"
|
|
91
|
+
[class.docs-code-example__tab--active]="activeTab() === i"
|
|
92
|
+
(click)="activeTab.set(i)"
|
|
93
|
+
role="tab"
|
|
94
|
+
[attr.aria-selected]="activeTab() === i"
|
|
95
|
+
>
|
|
96
|
+
{{ tab.label }}
|
|
97
|
+
</button>
|
|
98
|
+
}
|
|
99
|
+
</div>
|
|
100
|
+
|
|
101
|
+
<!-- Code Panel -->
|
|
102
|
+
<div class="docs-code-example__code-panel">
|
|
103
|
+
<div class="docs-code-example__code-header">
|
|
104
|
+
@if (props.showCopyButton !== false) {
|
|
105
|
+
<ion-button
|
|
106
|
+
fill="clear"
|
|
107
|
+
size="small"
|
|
108
|
+
class="docs-code-example__copy-btn"
|
|
109
|
+
(click)="copyCode()"
|
|
110
|
+
>
|
|
111
|
+
<ion-icon
|
|
112
|
+
slot="icon-only"
|
|
113
|
+
[name]="copied() ? 'checkmark-outline' : 'copy-outline'"
|
|
114
|
+
></ion-icon>
|
|
115
|
+
</ion-button>
|
|
116
|
+
}
|
|
117
|
+
</div>
|
|
118
|
+
<pre
|
|
119
|
+
class="docs-code-example__pre"
|
|
120
|
+
[class.docs-code-example__pre--line-numbers]="props.showLineNumbers"
|
|
121
|
+
><code
|
|
122
|
+
class="docs-code-example__code"
|
|
123
|
+
[class]="'language-' + currentTab().language"
|
|
124
|
+
>{{ currentTab().code }}</code></pre>
|
|
125
|
+
</div>
|
|
126
|
+
</div>
|
|
127
|
+
}
|
|
128
|
+
</div>
|
|
129
|
+
`, isInline: true, styles: [".docs-code-example{margin:1.5rem 0;border:1px solid var(--ion-border-color, #e0e0e0);border-radius:8px;overflow:hidden;&__header{padding:1rem 1.25rem;border-bottom:1px solid var(--ion-border-color, #e0e0e0)}&__title{font-size:1rem;font-weight:600;margin:0 0 .25rem;color:var(--ion-text-color, #1a1a1a)}&__description{font-size:.875rem;color:var(--ion-color-medium, #666);margin:0}&__external-link{display:inline-flex;align-items:center;gap:.25rem;margin-top:.5rem;font-size:.8125rem;color:var(--ion-color-primary, #3880ff);text-decoration:none;&:hover{text-decoration:underline}ion-icon{font-size:.875rem}}&__preview{padding:1.5rem;background:var(--ion-background-color, #fff);border-bottom:1px solid var(--ion-border-color, #e0e0e0)}&__tabs{background:var(--ion-color-light, #f4f5f8)}&__tab-list{display:flex;gap:0;border-bottom:1px solid var(--ion-border-color, #e0e0e0)}&__tab{padding:.75rem 1rem;font-size:.8125rem;font-weight:500;color:var(--ion-color-medium, #666);background:transparent;border:none;cursor:pointer;transition:all .15s ease;border-bottom:2px solid transparent;margin-bottom:-1px;&:hover{color:var(--ion-text-color, #1a1a1a)}&--active{color:var(--ion-color-primary, #3880ff);border-bottom-color:var(--ion-color-primary, #3880ff);background:var(--ion-background-color, #fff)}}&__code-panel{position:relative}&__code-header{position:absolute;top:.5rem;right:.5rem;z-index:1}&__copy-btn{--padding-start: .5rem;--padding-end: .5rem;--color: var(--ion-color-medium);&:hover{--color: var(--ion-color-primary)}}&__pre{margin:0;padding:1rem 1.25rem;overflow-x:auto;background:#1e1e1e;&--line-numbers{padding-left:3rem;counter-reset:line;.docs-code-example__code{counter-increment:line;&:before{content:counter(line);position:absolute;left:1rem;color:#666;font-size:.75rem}}}}&__code{font-family:SF Mono,Monaco,Courier New,monospace;font-size:.8125rem;line-height:1.6;color:#d4d4d4;white-space:pre}}// Dark mode :host-context(.dark),:host-context([color-scheme=\"dark\"]){.docs-code-example{border-color:#3a3a3a;&__header{border-color:#3a3a3a}&__title{color:#f4f5f8}&__preview{border-color:#3a3a3a}&__tabs{background:#0003}&__tab-list{border-color:#3a3a3a}&__tab--active{background:#0000004d}}}\n"], dependencies: [{ kind: "ngmodule", type: CommonModule }, { kind: "directive", type: i1.NgTemplateOutlet, selector: "[ngTemplateOutlet]", inputs: ["ngTemplateOutletContext", "ngTemplateOutlet", "ngTemplateOutletInjector"] }, { kind: "component", type: IonIcon, selector: "ion-icon", inputs: ["color", "flipRtl", "icon", "ios", "lazy", "md", "mode", "name", "sanitize", "size", "src"] }, { kind: "component", type: IonButton, selector: "ion-button", inputs: ["buttonType", "color", "disabled", "download", "expand", "fill", "form", "href", "mode", "rel", "routerAnimation", "routerDirection", "shape", "size", "strong", "target", "type"] }] }); }
|
|
130
|
+
}
|
|
131
|
+
i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "18.2.14", ngImport: i0, type: DocsCodeExampleComponent, decorators: [{
|
|
132
|
+
type: Component,
|
|
133
|
+
args: [{ selector: 'val-docs-code-example', standalone: true, imports: [CommonModule, IonIcon, IonButton], template: `
|
|
134
|
+
<div class="docs-code-example" [class]="props.cssClass">
|
|
135
|
+
<!-- Header -->
|
|
136
|
+
@if (props.title || props.description || props.externalLink) {
|
|
137
|
+
<div class="docs-code-example__header">
|
|
138
|
+
@if (props.title) {
|
|
139
|
+
<h4 class="docs-code-example__title">{{ props.title }}</h4>
|
|
140
|
+
}
|
|
141
|
+
@if (props.description) {
|
|
142
|
+
<p class="docs-code-example__description">{{ props.description }}</p>
|
|
143
|
+
}
|
|
144
|
+
@if (props.externalLink) {
|
|
145
|
+
<a
|
|
146
|
+
class="docs-code-example__external-link"
|
|
147
|
+
[href]="props.externalLink.url"
|
|
148
|
+
target="_blank"
|
|
149
|
+
rel="noopener noreferrer"
|
|
150
|
+
>
|
|
151
|
+
{{ props.externalLink.label || 'Open in StackBlitz' }}
|
|
152
|
+
<ion-icon name="open-outline"></ion-icon>
|
|
153
|
+
</a>
|
|
154
|
+
}
|
|
155
|
+
</div>
|
|
156
|
+
}
|
|
157
|
+
|
|
158
|
+
<!-- Preview -->
|
|
159
|
+
@if (previewTpl) {
|
|
160
|
+
<div class="docs-code-example__preview">
|
|
161
|
+
<ng-container *ngTemplateOutlet="previewTpl"></ng-container>
|
|
162
|
+
</div>
|
|
163
|
+
}
|
|
164
|
+
|
|
165
|
+
<!-- Tabs -->
|
|
166
|
+
@if (props.tabs?.length) {
|
|
167
|
+
<div class="docs-code-example__tabs">
|
|
168
|
+
<div class="docs-code-example__tab-list" role="tablist">
|
|
169
|
+
@for (tab of props.tabs; track tab.label; let i = $index) {
|
|
170
|
+
<button
|
|
171
|
+
class="docs-code-example__tab"
|
|
172
|
+
[class.docs-code-example__tab--active]="activeTab() === i"
|
|
173
|
+
(click)="activeTab.set(i)"
|
|
174
|
+
role="tab"
|
|
175
|
+
[attr.aria-selected]="activeTab() === i"
|
|
176
|
+
>
|
|
177
|
+
{{ tab.label }}
|
|
178
|
+
</button>
|
|
179
|
+
}
|
|
180
|
+
</div>
|
|
181
|
+
|
|
182
|
+
<!-- Code Panel -->
|
|
183
|
+
<div class="docs-code-example__code-panel">
|
|
184
|
+
<div class="docs-code-example__code-header">
|
|
185
|
+
@if (props.showCopyButton !== false) {
|
|
186
|
+
<ion-button
|
|
187
|
+
fill="clear"
|
|
188
|
+
size="small"
|
|
189
|
+
class="docs-code-example__copy-btn"
|
|
190
|
+
(click)="copyCode()"
|
|
191
|
+
>
|
|
192
|
+
<ion-icon
|
|
193
|
+
slot="icon-only"
|
|
194
|
+
[name]="copied() ? 'checkmark-outline' : 'copy-outline'"
|
|
195
|
+
></ion-icon>
|
|
196
|
+
</ion-button>
|
|
197
|
+
}
|
|
198
|
+
</div>
|
|
199
|
+
<pre
|
|
200
|
+
class="docs-code-example__pre"
|
|
201
|
+
[class.docs-code-example__pre--line-numbers]="props.showLineNumbers"
|
|
202
|
+
><code
|
|
203
|
+
class="docs-code-example__code"
|
|
204
|
+
[class]="'language-' + currentTab().language"
|
|
205
|
+
>{{ currentTab().code }}</code></pre>
|
|
206
|
+
</div>
|
|
207
|
+
</div>
|
|
208
|
+
}
|
|
209
|
+
</div>
|
|
210
|
+
`, styles: [".docs-code-example{margin:1.5rem 0;border:1px solid var(--ion-border-color, #e0e0e0);border-radius:8px;overflow:hidden;&__header{padding:1rem 1.25rem;border-bottom:1px solid var(--ion-border-color, #e0e0e0)}&__title{font-size:1rem;font-weight:600;margin:0 0 .25rem;color:var(--ion-text-color, #1a1a1a)}&__description{font-size:.875rem;color:var(--ion-color-medium, #666);margin:0}&__external-link{display:inline-flex;align-items:center;gap:.25rem;margin-top:.5rem;font-size:.8125rem;color:var(--ion-color-primary, #3880ff);text-decoration:none;&:hover{text-decoration:underline}ion-icon{font-size:.875rem}}&__preview{padding:1.5rem;background:var(--ion-background-color, #fff);border-bottom:1px solid var(--ion-border-color, #e0e0e0)}&__tabs{background:var(--ion-color-light, #f4f5f8)}&__tab-list{display:flex;gap:0;border-bottom:1px solid var(--ion-border-color, #e0e0e0)}&__tab{padding:.75rem 1rem;font-size:.8125rem;font-weight:500;color:var(--ion-color-medium, #666);background:transparent;border:none;cursor:pointer;transition:all .15s ease;border-bottom:2px solid transparent;margin-bottom:-1px;&:hover{color:var(--ion-text-color, #1a1a1a)}&--active{color:var(--ion-color-primary, #3880ff);border-bottom-color:var(--ion-color-primary, #3880ff);background:var(--ion-background-color, #fff)}}&__code-panel{position:relative}&__code-header{position:absolute;top:.5rem;right:.5rem;z-index:1}&__copy-btn{--padding-start: .5rem;--padding-end: .5rem;--color: var(--ion-color-medium);&:hover{--color: var(--ion-color-primary)}}&__pre{margin:0;padding:1rem 1.25rem;overflow-x:auto;background:#1e1e1e;&--line-numbers{padding-left:3rem;counter-reset:line;.docs-code-example__code{counter-increment:line;&:before{content:counter(line);position:absolute;left:1rem;color:#666;font-size:.75rem}}}}&__code{font-family:SF Mono,Monaco,Courier New,monospace;font-size:.8125rem;line-height:1.6;color:#d4d4d4;white-space:pre}}// Dark mode :host-context(.dark),:host-context([color-scheme=\"dark\"]){.docs-code-example{border-color:#3a3a3a;&__header{border-color:#3a3a3a}&__title{color:#f4f5f8}&__preview{border-color:#3a3a3a}&__tabs{background:#0003}&__tab-list{border-color:#3a3a3a}&__tab--active{background:#0000004d}}}\n"] }]
|
|
211
|
+
}], propDecorators: { props: [{
|
|
212
|
+
type: Input
|
|
213
|
+
}], previewTpl: [{
|
|
214
|
+
type: ContentChild,
|
|
215
|
+
args: ['preview']
|
|
216
|
+
}] } });
|
|
217
|
+
//# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoiZG9jcy1jb2RlLWV4YW1wbGUuY29tcG9uZW50LmpzIiwic291cmNlUm9vdCI6IiIsInNvdXJjZXMiOlsiLi4vLi4vLi4vLi4vLi4vLi4vLi4vc3JjL2xpYi9jb21wb25lbnRzL21vbGVjdWxlcy9kb2NzLWNvZGUtZXhhbXBsZS9kb2NzLWNvZGUtZXhhbXBsZS5jb21wb25lbnQudHMiXSwibmFtZXMiOltdLCJtYXBwaW5ncyI6IkFBQUEsT0FBTyxFQUFFLFlBQVksRUFBRSxNQUFNLGlCQUFpQixDQUFDO0FBQy9DLE9BQU8sRUFBRSxTQUFTLEVBQUUsS0FBSyxFQUFFLE1BQU0sRUFBZSxZQUFZLEVBQUUsTUFBTSxlQUFlLENBQUM7QUFDcEYsT0FBTyxFQUFFLE9BQU8sRUFBRSxTQUFTLEVBQUUsTUFBTSwyQkFBMkIsQ0FBQztBQUMvRCxPQUFPLEVBQUUsUUFBUSxFQUFFLE1BQU0sVUFBVSxDQUFDO0FBQ3BDLE9BQU8sRUFBRSxXQUFXLEVBQUUsZ0JBQWdCLEVBQUUsV0FBVyxFQUFFLE1BQU0sZ0JBQWdCLENBQUM7OztBQUc1RSxRQUFRLENBQUMsRUFBRSxXQUFXLEVBQUUsZ0JBQWdCLEVBQUUsV0FBVyxFQUFFLENBQUMsQ0FBQztBQUV6RDs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7O0dBcUJHO0FBNFBILE1BQU0sT0FBTyx3QkFBd0I7SUEzUHJDO1FBNFBXLFVBQUssR0FBNEIsRUFBRSxJQUFJLEVBQUUsRUFBRSxFQUFFLENBQUM7UUFJN0MsY0FBUyxHQUFHLE1BQU0sQ0FBQyxDQUFDLENBQUMsQ0FBQztRQUN0QixXQUFNLEdBQUcsTUFBTSxDQUFDLEtBQUssQ0FBQyxDQUFDO0tBZ0JsQztJQWRXLFVBQVU7UUFDbEIsT0FBTyxJQUFJLENBQUMsS0FBSyxDQUFDLElBQUksQ0FBQyxJQUFJLENBQUMsU0FBUyxFQUFFLENBQUMsSUFBSSxFQUFFLEtBQUssRUFBRSxFQUFFLEVBQUUsSUFBSSxFQUFFLEVBQUUsRUFBRSxRQUFRLEVBQUUsTUFBTSxFQUFFLENBQUM7SUFDeEYsQ0FBQztJQUVELEtBQUssQ0FBQyxRQUFRO1FBQ1osTUFBTSxJQUFJLEdBQUcsSUFBSSxDQUFDLFVBQVUsRUFBRSxDQUFDLElBQUksQ0FBQztRQUNwQyxJQUFJLENBQUM7WUFDSCxNQUFNLFNBQVMsQ0FBQyxTQUFTLENBQUMsU0FBUyxDQUFDLElBQUksQ0FBQyxDQUFDO1lBQzFDLElBQUksQ0FBQyxNQUFNLENBQUMsR0FBRyxDQUFDLElBQUksQ0FBQyxDQUFDO1lBQ3RCLFVBQVUsQ0FBQyxHQUFHLEVBQUUsQ0FBQyxJQUFJLENBQUMsTUFBTSxDQUFDLEdBQUcsQ0FBQyxLQUFLLENBQUMsRUFBRSxJQUFJLENBQUMsQ0FBQztRQUNqRCxDQUFDO1FBQUMsT0FBTyxHQUFHLEVBQUUsQ0FBQztZQUNiLE9BQU8sQ0FBQyxLQUFLLENBQUMsc0JBQXNCLEVBQUUsR0FBRyxDQUFDLENBQUM7UUFDN0MsQ0FBQztJQUNILENBQUM7K0dBckJVLHdCQUF3QjttR0FBeEIsd0JBQXdCLGdOQXZQekI7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7O0dBNkVULHl1RUE5RVMsWUFBWSxzTUFBRSxPQUFPLDJKQUFFLFNBQVM7OzRGQXdQL0Isd0JBQXdCO2tCQTNQcEMsU0FBUzsrQkFDRSx1QkFBdUIsY0FDckIsSUFBSSxXQUNQLENBQUMsWUFBWSxFQUFFLE9BQU8sRUFBRSxTQUFTLENBQUMsWUFDakM7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7O0dBNkVUOzhCQTJLUSxLQUFLO3NCQUFiLEtBQUs7Z0JBRW1CLFVBQVU7c0JBQWxDLFlBQVk7dUJBQUMsU0FBUyIsInNvdXJjZXNDb250ZW50IjpbImltcG9ydCB7IENvbW1vbk1vZHVsZSB9IGZyb20gJ0Bhbmd1bGFyL2NvbW1vbic7XG5pbXBvcnQgeyBDb21wb25lbnQsIElucHV0LCBzaWduYWwsIFRlbXBsYXRlUmVmLCBDb250ZW50Q2hpbGQgfSBmcm9tICdAYW5ndWxhci9jb3JlJztcbmltcG9ydCB7IElvbkljb24sIElvbkJ1dHRvbiB9IGZyb20gJ0Bpb25pYy9hbmd1bGFyL3N0YW5kYWxvbmUnO1xuaW1wb3J0IHsgYWRkSWNvbnMgfSBmcm9tICdpb25pY29ucyc7XG5pbXBvcnQgeyBjb3B5T3V0bGluZSwgY2hlY2ttYXJrT3V0bGluZSwgb3Blbk91dGxpbmUgfSBmcm9tICdpb25pY29ucy9pY29ucyc7XG5pbXBvcnQgeyBEb2NzQ29kZUV4YW1wbGVNZXRhZGF0YSwgRG9jc0NvZGVUYWIgfSBmcm9tICcuL3R5cGVzJztcblxuYWRkSWNvbnMoeyBjb3B5T3V0bGluZSwgY2hlY2ttYXJrT3V0bGluZSwgb3Blbk91dGxpbmUgfSk7XG5cbi8qKlxuICogdmFsLWRvY3MtY29kZS1leGFtcGxlXG4gKlxuICogQSBjb2RlIGV4YW1wbGUgY29tcG9uZW50IHdpdGggdGFicywgcHJldmlldywgYW5kIGNvcHkgZnVuY3Rpb25hbGl0eS5cbiAqXG4gKiBAZXhhbXBsZSBCYXNpYyB1c2FnZVxuICogYGBgaHRtbFxuICogPHZhbC1kb2NzLWNvZGUtZXhhbXBsZVxuICogICBbcHJvcHNdPVwie1xuICogICAgIHRpdGxlOiAnQmFzaWMgQnV0dG9uJyxcbiAqICAgICB0YWJzOiBbXG4gKiAgICAgICB7IGxhYmVsOiAnSFRNTCcsIGxhbmd1YWdlOiAnaHRtbCcsIGNvZGU6ICc8dmFsLWJ1dHRvbj5DbGljayBtZTwvdmFsLWJ1dHRvbj4nIH0sXG4gKiAgICAgICB7IGxhYmVsOiAnVHlwZVNjcmlwdCcsIGxhbmd1YWdlOiAndHlwZXNjcmlwdCcsIGNvZGU6ICdpbXBvcnQgeyBCdXR0b25Db21wb25lbnQgfSBmcm9tIC4uLicgfVxuICogICAgIF1cbiAqICAgfVwiXG4gKiA+XG4gKiAgIDxuZy10ZW1wbGF0ZSAjcHJldmlldz5cbiAqICAgICA8dmFsLWJ1dHRvbiBbcHJvcHNdPVwieyBsYWJlbDogJ0NsaWNrIG1lJyB9XCI+PC92YWwtYnV0dG9uPlxuICogICA8L25nLXRlbXBsYXRlPlxuICogPC92YWwtZG9jcy1jb2RlLWV4YW1wbGU+XG4gKiBgYGBcbiAqL1xuQENvbXBvbmVudCh7XG4gIHNlbGVjdG9yOiAndmFsLWRvY3MtY29kZS1leGFtcGxlJyxcbiAgc3RhbmRhbG9uZTogdHJ1ZSxcbiAgaW1wb3J0czogW0NvbW1vbk1vZHVsZSwgSW9uSWNvbiwgSW9uQnV0dG9uXSxcbiAgdGVtcGxhdGU6IGBcbiAgICA8ZGl2IGNsYXNzPVwiZG9jcy1jb2RlLWV4YW1wbGVcIiBbY2xhc3NdPVwicHJvcHMuY3NzQ2xhc3NcIj5cbiAgICAgIDwhLS0gSGVhZGVyIC0tPlxuICAgICAgQGlmIChwcm9wcy50aXRsZSB8fCBwcm9wcy5kZXNjcmlwdGlvbiB8fCBwcm9wcy5leHRlcm5hbExpbmspIHtcbiAgICAgICAgPGRpdiBjbGFzcz1cImRvY3MtY29kZS1leGFtcGxlX19oZWFkZXJcIj5cbiAgICAgICAgICBAaWYgKHByb3BzLnRpdGxlKSB7XG4gICAgICAgICAgICA8aDQgY2xhc3M9XCJkb2NzLWNvZGUtZXhhbXBsZV9fdGl0bGVcIj57eyBwcm9wcy50aXRsZSB9fTwvaDQ+XG4gICAgICAgICAgfVxuICAgICAgICAgIEBpZiAocHJvcHMuZGVzY3JpcHRpb24pIHtcbiAgICAgICAgICAgIDxwIGNsYXNzPVwiZG9jcy1jb2RlLWV4YW1wbGVfX2Rlc2NyaXB0aW9uXCI+e3sgcHJvcHMuZGVzY3JpcHRpb24gfX08L3A+XG4gICAgICAgICAgfVxuICAgICAgICAgIEBpZiAocHJvcHMuZXh0ZXJuYWxMaW5rKSB7XG4gICAgICAgICAgICA8YVxuICAgICAgICAgICAgICBjbGFzcz1cImRvY3MtY29kZS1leGFtcGxlX19leHRlcm5hbC1saW5rXCJcbiAgICAgICAgICAgICAgW2hyZWZdPVwicHJvcHMuZXh0ZXJuYWxMaW5rLnVybFwiXG4gICAgICAgICAgICAgIHRhcmdldD1cIl9ibGFua1wiXG4gICAgICAgICAgICAgIHJlbD1cIm5vb3BlbmVyIG5vcmVmZXJyZXJcIlxuICAgICAgICAgICAgPlxuICAgICAgICAgICAgICB7eyBwcm9wcy5leHRlcm5hbExpbmsubGFiZWwgfHwgJ09wZW4gaW4gU3RhY2tCbGl0eicgfX1cbiAgICAgICAgICAgICAgPGlvbi1pY29uIG5hbWU9XCJvcGVuLW91dGxpbmVcIj48L2lvbi1pY29uPlxuICAgICAgICAgICAgPC9hPlxuICAgICAgICAgIH1cbiAgICAgICAgPC9kaXY+XG4gICAgICB9XG5cbiAgICAgIDwhLS0gUHJldmlldyAtLT5cbiAgICAgIEBpZiAocHJldmlld1RwbCkge1xuICAgICAgICA8ZGl2IGNsYXNzPVwiZG9jcy1jb2RlLWV4YW1wbGVfX3ByZXZpZXdcIj5cbiAgICAgICAgICA8bmctY29udGFpbmVyICpuZ1RlbXBsYXRlT3V0bGV0PVwicHJldmlld1RwbFwiPjwvbmctY29udGFpbmVyPlxuICAgICAgICA8L2Rpdj5cbiAgICAgIH1cblxuICAgICAgPCEtLSBUYWJzIC0tPlxuICAgICAgQGlmIChwcm9wcy50YWJzPy5sZW5ndGgpIHtcbiAgICAgICAgPGRpdiBjbGFzcz1cImRvY3MtY29kZS1leGFtcGxlX190YWJzXCI+XG4gICAgICAgICAgPGRpdiBjbGFzcz1cImRvY3MtY29kZS1leGFtcGxlX190YWItbGlzdFwiIHJvbGU9XCJ0YWJsaXN0XCI+XG4gICAgICAgICAgICBAZm9yICh0YWIgb2YgcHJvcHMudGFiczsgdHJhY2sgdGFiLmxhYmVsOyBsZXQgaSA9ICRpbmRleCkge1xuICAgICAgICAgICAgICA8YnV0dG9uXG4gICAgICAgICAgICAgICAgY2xhc3M9XCJkb2NzLWNvZGUtZXhhbXBsZV9fdGFiXCJcbiAgICAgICAgICAgICAgICBbY2xhc3MuZG9jcy1jb2RlLWV4YW1wbGVfX3RhYi0tYWN0aXZlXT1cImFjdGl2ZVRhYigpID09PSBpXCJcbiAgICAgICAgICAgICAgICAoY2xpY2spPVwiYWN0aXZlVGFiLnNldChpKVwiXG4gICAgICAgICAgICAgICAgcm9sZT1cInRhYlwiXG4gICAgICAgICAgICAgICAgW2F0dHIuYXJpYS1zZWxlY3RlZF09XCJhY3RpdmVUYWIoKSA9PT0gaVwiXG4gICAgICAgICAgICAgID5cbiAgICAgICAgICAgICAgICB7eyB0YWIubGFiZWwgfX1cbiAgICAgICAgICAgICAgPC9idXR0b24+XG4gICAgICAgICAgICB9XG4gICAgICAgICAgPC9kaXY+XG5cbiAgICAgICAgICA8IS0tIENvZGUgUGFuZWwgLS0+XG4gICAgICAgICAgPGRpdiBjbGFzcz1cImRvY3MtY29kZS1leGFtcGxlX19jb2RlLXBhbmVsXCI+XG4gICAgICAgICAgICA8ZGl2IGNsYXNzPVwiZG9jcy1jb2RlLWV4YW1wbGVfX2NvZGUtaGVhZGVyXCI+XG4gICAgICAgICAgICAgIEBpZiAocHJvcHMuc2hvd0NvcHlCdXR0b24gIT09IGZhbHNlKSB7XG4gICAgICAgICAgICAgICAgPGlvbi1idXR0b25cbiAgICAgICAgICAgICAgICAgIGZpbGw9XCJjbGVhclwiXG4gICAgICAgICAgICAgICAgICBzaXplPVwic21hbGxcIlxuICAgICAgICAgICAgICAgICAgY2xhc3M9XCJkb2NzLWNvZGUtZXhhbXBsZV9fY29weS1idG5cIlxuICAgICAgICAgICAgICAgICAgKGNsaWNrKT1cImNvcHlDb2RlKClcIlxuICAgICAgICAgICAgICAgID5cbiAgICAgICAgICAgICAgICAgIDxpb24taWNvblxuICAgICAgICAgICAgICAgICAgICBzbG90PVwiaWNvbi1vbmx5XCJcbiAgICAgICAgICAgICAgICAgICAgW25hbWVdPVwiY29waWVkKCkgPyAnY2hlY2ttYXJrLW91dGxpbmUnIDogJ2NvcHktb3V0bGluZSdcIlxuICAgICAgICAgICAgICAgICAgPjwvaW9uLWljb24+XG4gICAgICAgICAgICAgICAgPC9pb24tYnV0dG9uPlxuICAgICAgICAgICAgICB9XG4gICAgICAgICAgICA8L2Rpdj5cbiAgICAgICAgICAgIDxwcmVcbiAgICAgICAgICAgICAgY2xhc3M9XCJkb2NzLWNvZGUtZXhhbXBsZV9fcHJlXCJcbiAgICAgICAgICAgICAgW2NsYXNzLmRvY3MtY29kZS1leGFtcGxlX19wcmUtLWxpbmUtbnVtYmVyc109XCJwcm9wcy5zaG93TGluZU51bWJlcnNcIlxuICAgICAgICAgICAgPjxjb2RlXG4gICAgICAgICAgICAgIGNsYXNzPVwiZG9jcy1jb2RlLWV4YW1wbGVfX2NvZGVcIlxuICAgICAgICAgICAgICBbY2xhc3NdPVwiJ2xhbmd1YWdlLScgKyBjdXJyZW50VGFiKCkubGFuZ3VhZ2VcIlxuICAgICAgICAgICAgPnt7IGN1cnJlbnRUYWIoKS5jb2RlIH19PC9jb2RlPjwvcHJlPlxuICAgICAgICAgIDwvZGl2PlxuICAgICAgICA8L2Rpdj5cbiAgICAgIH1cbiAgICA8L2Rpdj5cbiAgYCxcbiAgc3R5bGVzOiBbYFxuICAgIC5kb2NzLWNvZGUtZXhhbXBsZSB7XG4gICAgICBtYXJnaW46IDEuNXJlbSAwO1xuICAgICAgYm9yZGVyOiAxcHggc29saWQgdmFyKC0taW9uLWJvcmRlci1jb2xvciwgI2UwZTBlMCk7XG4gICAgICBib3JkZXItcmFkaXVzOiA4cHg7XG4gICAgICBvdmVyZmxvdzogaGlkZGVuO1xuXG4gICAgICAmX19oZWFkZXIge1xuICAgICAgICBwYWRkaW5nOiAxcmVtIDEuMjVyZW07XG4gICAgICAgIGJvcmRlci1ib3R0b206IDFweCBzb2xpZCB2YXIoLS1pb24tYm9yZGVyLWNvbG9yLCAjZTBlMGUwKTtcbiAgICAgIH1cblxuICAgICAgJl9fdGl0bGUge1xuICAgICAgICBmb250LXNpemU6IDFyZW07XG4gICAgICAgIGZvbnQtd2VpZ2h0OiA2MDA7XG4gICAgICAgIG1hcmdpbjogMCAwIDAuMjVyZW0gMDtcbiAgICAgICAgY29sb3I6IHZhcigtLWlvbi10ZXh0LWNvbG9yLCAjMWExYTFhKTtcbiAgICAgIH1cblxuICAgICAgJl9fZGVzY3JpcHRpb24ge1xuICAgICAgICBmb250LXNpemU6IDAuODc1cmVtO1xuICAgICAgICBjb2xvcjogdmFyKC0taW9uLWNvbG9yLW1lZGl1bSwgIzY2Nik7XG4gICAgICAgIG1hcmdpbjogMDtcbiAgICAgIH1cblxuICAgICAgJl9fZXh0ZXJuYWwtbGluayB7XG4gICAgICAgIGRpc3BsYXk6IGlubGluZS1mbGV4O1xuICAgICAgICBhbGlnbi1pdGVtczogY2VudGVyO1xuICAgICAgICBnYXA6IDAuMjVyZW07XG4gICAgICAgIG1hcmdpbi10b3A6IDAuNXJlbTtcbiAgICAgICAgZm9udC1zaXplOiAwLjgxMjVyZW07XG4gICAgICAgIGNvbG9yOiB2YXIoLS1pb24tY29sb3ItcHJpbWFyeSwgIzM4ODBmZik7XG4gICAgICAgIHRleHQtZGVjb3JhdGlvbjogbm9uZTtcblxuICAgICAgICAmOmhvdmVyIHtcbiAgICAgICAgICB0ZXh0LWRlY29yYXRpb246IHVuZGVybGluZTtcbiAgICAgICAgfVxuXG4gICAgICAgIGlvbi1pY29uIHtcbiAgICAgICAgICBmb250LXNpemU6IDAuODc1cmVtO1xuICAgICAgICB9XG4gICAgICB9XG5cbiAgICAgICZfX3ByZXZpZXcge1xuICAgICAgICBwYWRkaW5nOiAxLjVyZW07XG4gICAgICAgIGJhY2tncm91bmQ6IHZhcigtLWlvbi1iYWNrZ3JvdW5kLWNvbG9yLCAjZmZmKTtcbiAgICAgICAgYm9yZGVyLWJvdHRvbTogMXB4IHNvbGlkIHZhcigtLWlvbi1ib3JkZXItY29sb3IsICNlMGUwZTApO1xuICAgICAgfVxuXG4gICAgICAmX190YWJzIHtcbiAgICAgICAgYmFja2dyb3VuZDogdmFyKC0taW9uLWNvbG9yLWxpZ2h0LCAjZjRmNWY4KTtcbiAgICAgIH1cblxuICAgICAgJl9fdGFiLWxpc3Qge1xuICAgICAgICBkaXNwbGF5OiBmbGV4O1xuICAgICAgICBnYXA6IDA7XG4gICAgICAgIGJvcmRlci1ib3R0b206IDFweCBzb2xpZCB2YXIoLS1pb24tYm9yZGVyLWNvbG9yLCAjZTBlMGUwKTtcbiAgICAgIH1cblxuICAgICAgJl9fdGFiIHtcbiAgICAgICAgcGFkZGluZzogMC43NXJlbSAxcmVtO1xuICAgICAgICBmb250LXNpemU6IDAuODEyNXJlbTtcbiAgICAgICAgZm9udC13ZWlnaHQ6IDUwMDtcbiAgICAgICAgY29sb3I6IHZhcigtLWlvbi1jb2xvci1tZWRpdW0sICM2NjYpO1xuICAgICAgICBiYWNrZ3JvdW5kOiB0cmFuc3BhcmVudDtcbiAgICAgICAgYm9yZGVyOiBub25lO1xuICAgICAgICBjdXJzb3I6IHBvaW50ZXI7XG4gICAgICAgIHRyYW5zaXRpb246IGFsbCAwLjE1cyBlYXNlO1xuICAgICAgICBib3JkZXItYm90dG9tOiAycHggc29saWQgdHJhbnNwYXJlbnQ7XG4gICAgICAgIG1hcmdpbi1ib3R0b206IC0xcHg7XG5cbiAgICAgICAgJjpob3ZlciB7XG4gICAgICAgICAgY29sb3I6IHZhcigtLWlvbi10ZXh0LWNvbG9yLCAjMWExYTFhKTtcbiAgICAgICAgfVxuXG4gICAgICAgICYtLWFjdGl2ZSB7XG4gICAgICAgICAgY29sb3I6IHZhcigtLWlvbi1jb2xvci1wcmltYXJ5LCAjMzg4MGZmKTtcbiAgICAgICAgICBib3JkZXItYm90dG9tLWNvbG9yOiB2YXIoLS1pb24tY29sb3ItcHJpbWFyeSwgIzM4ODBmZik7XG4gICAgICAgICAgYmFja2dyb3VuZDogdmFyKC0taW9uLWJhY2tncm91bmQtY29sb3IsICNmZmYpO1xuICAgICAgICB9XG4gICAgICB9XG5cbiAgICAgICZfX2NvZGUtcGFuZWwge1xuICAgICAgICBwb3NpdGlvbjogcmVsYXRpdmU7XG4gICAgICB9XG5cbiAgICAgICZfX2NvZGUtaGVhZGVyIHtcbiAgICAgICAgcG9zaXRpb246IGFic29sdXRlO1xuICAgICAgICB0b3A6IDAuNXJlbTtcbiAgICAgICAgcmlnaHQ6IDAuNXJlbTtcbiAgICAgICAgei1pbmRleDogMTtcbiAgICAgIH1cblxuICAgICAgJl9fY29weS1idG4ge1xuICAgICAgICAtLXBhZGRpbmctc3RhcnQ6IDAuNXJlbTtcbiAgICAgICAgLS1wYWRkaW5nLWVuZDogMC41cmVtO1xuICAgICAgICAtLWNvbG9yOiB2YXIoLS1pb24tY29sb3ItbWVkaXVtKTtcblxuICAgICAgICAmOmhvdmVyIHtcbiAgICAgICAgICAtLWNvbG9yOiB2YXIoLS1pb24tY29sb3ItcHJpbWFyeSk7XG4gICAgICAgIH1cbiAgICAgIH1cblxuICAgICAgJl9fcHJlIHtcbiAgICAgICAgbWFyZ2luOiAwO1xuICAgICAgICBwYWRkaW5nOiAxcmVtIDEuMjVyZW07XG4gICAgICAgIG92ZXJmbG93LXg6IGF1dG87XG4gICAgICAgIGJhY2tncm91bmQ6ICMxZTFlMWU7XG5cbiAgICAgICAgJi0tbGluZS1udW1iZXJzIHtcbiAgICAgICAgICBwYWRkaW5nLWxlZnQ6IDNyZW07XG4gICAgICAgICAgY291bnRlci1yZXNldDogbGluZTtcblxuICAgICAgICAgIC5kb2NzLWNvZGUtZXhhbXBsZV9fY29kZSB7XG4gICAgICAgICAgICBjb3VudGVyLWluY3JlbWVudDogbGluZTtcblxuICAgICAgICAgICAgJjo6YmVmb3JlIHtcbiAgICAgICAgICAgICAgY29udGVudDogY291bnRlcihsaW5lKTtcbiAgICAgICAgICAgICAgcG9zaXRpb246IGFic29sdXRlO1xuICAgICAgICAgICAgICBsZWZ0OiAxcmVtO1xuICAgICAgICAgICAgICBjb2xvcjogIzY2NjtcbiAgICAgICAgICAgICAgZm9udC1zaXplOiAwLjc1cmVtO1xuICAgICAgICAgICAgfVxuICAgICAgICAgIH1cbiAgICAgICAgfVxuICAgICAgfVxuXG4gICAgICAmX19jb2RlIHtcbiAgICAgICAgZm9udC1mYW1pbHk6ICdTRiBNb25vJywgTW9uYWNvLCAnQ291cmllciBOZXcnLCBtb25vc3BhY2U7XG4gICAgICAgIGZvbnQtc2l6ZTogMC44MTI1cmVtO1xuICAgICAgICBsaW5lLWhlaWdodDogMS42O1xuICAgICAgICBjb2xvcjogI2Q0ZDRkNDtcbiAgICAgICAgd2hpdGUtc3BhY2U6IHByZTtcbiAgICAgIH1cbiAgICB9XG5cbiAgICAvLyBEYXJrIG1vZGVcbiAgICA6aG9zdC1jb250ZXh0KC5kYXJrKSxcbiAgICA6aG9zdC1jb250ZXh0KFtjb2xvci1zY2hlbWU9J2RhcmsnXSkge1xuICAgICAgLmRvY3MtY29kZS1leGFtcGxlIHtcbiAgICAgICAgYm9yZGVyLWNvbG9yOiAjM2EzYTNhO1xuXG4gICAgICAgICZfX2hlYWRlciB7XG4gICAgICAgICAgYm9yZGVyLWNvbG9yOiAjM2EzYTNhO1xuICAgICAgICB9XG5cbiAgICAgICAgJl9fdGl0bGUge1xuICAgICAgICAgIGNvbG9yOiAjZjRmNWY4O1xuICAgICAgICB9XG5cbiAgICAgICAgJl9fcHJldmlldyB7XG4gICAgICAgICAgYm9yZGVyLWNvbG9yOiAjM2EzYTNhO1xuICAgICAgICB9XG5cbiAgICAgICAgJl9fdGFicyB7XG4gICAgICAgICAgYmFja2dyb3VuZDogcmdiYSgwLCAwLCAwLCAwLjIpO1xuICAgICAgICB9XG5cbiAgICAgICAgJl9fdGFiLWxpc3Qge1xuICAgICAgICAgIGJvcmRlci1jb2xvcjogIzNhM2EzYTtcbiAgICAgICAgfVxuXG4gICAgICAgICZfX3RhYi0tYWN0aXZlIHtcbiAgICAgICAgICBiYWNrZ3JvdW5kOiByZ2JhKDAsIDAsIDAsIDAuMyk7XG4gICAgICAgIH1cbiAgICAgIH1cbiAgICB9XG4gIGBdLFxufSlcbmV4cG9ydCBjbGFzcyBEb2NzQ29kZUV4YW1wbGVDb21wb25lbnQge1xuICBASW5wdXQoKSBwcm9wczogRG9jc0NvZGVFeGFtcGxlTWV0YWRhdGEgPSB7IHRhYnM6IFtdIH07XG5cbiAgQENvbnRlbnRDaGlsZCgncHJldmlldycpIHByZXZpZXdUcGw/OiBUZW1wbGF0ZVJlZjxhbnk+O1xuXG4gIHByb3RlY3RlZCBhY3RpdmVUYWIgPSBzaWduYWwoMCk7XG4gIHByb3RlY3RlZCBjb3BpZWQgPSBzaWduYWwoZmFsc2UpO1xuXG4gIHByb3RlY3RlZCBjdXJyZW50VGFiKCk6IERvY3NDb2RlVGFiIHtcbiAgICByZXR1cm4gdGhpcy5wcm9wcy50YWJzW3RoaXMuYWN0aXZlVGFiKCldIHx8IHsgbGFiZWw6ICcnLCBjb2RlOiAnJywgbGFuZ3VhZ2U6ICd0ZXh0JyB9O1xuICB9XG5cbiAgYXN5bmMgY29weUNvZGUoKTogUHJvbWlzZTx2b2lkPiB7XG4gICAgY29uc3QgY29kZSA9IHRoaXMuY3VycmVudFRhYigpLmNvZGU7XG4gICAgdHJ5IHtcbiAgICAgIGF3YWl0IG5hdmlnYXRvci5jbGlwYm9hcmQud3JpdGVUZXh0KGNvZGUpO1xuICAgICAgdGhpcy5jb3BpZWQuc2V0KHRydWUpO1xuICAgICAgc2V0VGltZW91dCgoKSA9PiB0aGlzLmNvcGllZC5zZXQoZmFsc2UpLCAyMDAwKTtcbiAgICB9IGNhdGNoIChlcnIpIHtcbiAgICAgIGNvbnNvbGUuZXJyb3IoJ0ZhaWxlZCB0byBjb3B5IGNvZGU6JywgZXJyKTtcbiAgICB9XG4gIH1cbn1cbiJdfQ==
|
|
@@ -0,0 +1,2 @@
|
|
|
1
|
+
export {};
|
|
2
|
+
//# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoidHlwZXMuanMiLCJzb3VyY2VSb290IjoiIiwic291cmNlcyI6WyIuLi8uLi8uLi8uLi8uLi8uLi8uLi9zcmMvbGliL2NvbXBvbmVudHMvbW9sZWN1bGVzL2RvY3MtY29kZS1leGFtcGxlL3R5cGVzLnRzIl0sIm5hbWVzIjpbXSwibWFwcGluZ3MiOiIiLCJzb3VyY2VzQ29udGVudCI6WyJpbXBvcnQgeyBUZW1wbGF0ZVJlZiB9IGZyb20gJ0Bhbmd1bGFyL2NvcmUnO1xuXG4vKipcbiAqIENvbmZpZ3VyYXRpb24gZm9yIHRoZSBkb2NzLWNvZGUtZXhhbXBsZSBjb21wb25lbnQuXG4gKi9cbmV4cG9ydCBpbnRlcmZhY2UgRG9jc0NvZGVFeGFtcGxlTWV0YWRhdGEge1xuICAvKipcbiAgICogRXhhbXBsZSB0aXRsZS5cbiAgICovXG4gIHRpdGxlPzogc3RyaW5nO1xuXG4gIC8qKlxuICAgKiBFeGFtcGxlIGRlc2NyaXB0aW9uLlxuICAgKi9cbiAgZGVzY3JpcHRpb24/OiBzdHJpbmc7XG5cbiAgLyoqXG4gICAqIENvZGUgdGFicyB0byBkaXNwbGF5LlxuICAgKi9cbiAgdGFiczogRG9jc0NvZGVUYWJbXTtcblxuICAvKipcbiAgICogVGVtcGxhdGUgZm9yIGxpdmUgcHJldmlldy5cbiAgICogVXNlIG5nLXRlbXBsYXRlIHdpdGggI3ByZXZpZXcgcmVmZXJlbmNlLlxuICAgKi9cbiAgcHJldmlld1RlbXBsYXRlPzogVGVtcGxhdGVSZWY8YW55PjtcblxuICAvKipcbiAgICogRXh0ZXJuYWwgbGluayAoZS5nLiwgU3RhY2tCbGl0eiwgQ29kZVNhbmRib3gpLlxuICAgKi9cbiAgZXh0ZXJuYWxMaW5rPzoge1xuICAgIHVybDogc3RyaW5nO1xuICAgIGxhYmVsPzogc3RyaW5nO1xuICB9O1xuXG4gIC8qKlxuICAgKiBTaG93IGNvcHkgYnV0dG9uIG9uIGNvZGUgYmxvY2tzLlxuICAgKiBAZGVmYXVsdCB0cnVlXG4gICAqL1xuICBzaG93Q29weUJ1dHRvbj86IGJvb2xlYW47XG5cbiAgLyoqXG4gICAqIFNob3cgbGluZSBudW1iZXJzIGluIGNvZGUuXG4gICAqIEBkZWZhdWx0IGZhbHNlXG4gICAqL1xuICBzaG93TGluZU51bWJlcnM/OiBib29sZWFuO1xuXG4gIC8qKlxuICAgKiBDdXN0b20gQ1NTIGNsYXNzLlxuICAgKi9cbiAgY3NzQ2xhc3M/OiBzdHJpbmc7XG5cbiAgLyoqXG4gICAqIERlZmF1bHQgYWN0aXZlIHRhYiBpbmRleC5cbiAgICogQGRlZmF1bHQgMFxuICAgKi9cbiAgZGVmYXVsdFRhYj86IG51bWJlcjtcbn1cblxuZXhwb3J0IGludGVyZmFjZSBEb2NzQ29kZVRhYiB7XG4gIC8qKlxuICAgKiBUYWIgbGFiZWwgKGUuZy4sIFwiSFRNTFwiLCBcIlR5cGVTY3JpcHRcIiwgXCJTQ1NTXCIpLlxuICAgKi9cbiAgbGFiZWw6IHN0cmluZztcblxuICAvKipcbiAgICogQ29kZSBjb250ZW50LlxuICAgKi9cbiAgY29kZTogc3RyaW5nO1xuXG4gIC8qKlxuICAgKiBMYW5ndWFnZSBmb3Igc3ludGF4IGhpZ2hsaWdodGluZy5cbiAgICovXG4gIGxhbmd1YWdlOiAnaHRtbCcgfCAndHlwZXNjcmlwdCcgfCAnc2NzcycgfCAnY3NzJyB8ICdqc29uJyB8ICdiYXNoJyB8ICd0ZXh0Jztcbn1cbiJdfQ==
|