bways-report 0.1.0
This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
- package/LICENSE +26 -0
- package/README.md +477 -0
- package/esm2022/bways-report.mjs +5 -0
- package/esm2022/lib/core/errors/index.mjs +2 -0
- package/esm2022/lib/core/errors/reporting-errors.mjs +65 -0
- package/esm2022/lib/core/index.mjs +8 -0
- package/esm2022/lib/core/models/component-event.model.mjs +8 -0
- package/esm2022/lib/core/models/index.mjs +5 -0
- package/esm2022/lib/core/models/report-component.model.mjs +10 -0
- package/esm2022/lib/core/models/report-datasource.model.mjs +9 -0
- package/esm2022/lib/core/models/report-definition.model.mjs +13 -0
- package/esm2022/lib/core/models/report-grid.model.mjs +10 -0
- package/esm2022/lib/core/models/report-layout.model.mjs +9 -0
- package/esm2022/lib/core/models/report-parameter.model.mjs +9 -0
- package/esm2022/lib/core/models/validation.model.mjs +8 -0
- package/esm2022/lib/core/registry/component-category.mjs +8 -0
- package/esm2022/lib/core/registry/component-registry.mjs +90 -0
- package/esm2022/lib/core/registry/index.mjs +2 -0
- package/esm2022/lib/core/registry/property-definition.model.mjs +10 -0
- package/esm2022/lib/core/services/dynamic-form-builder.service.mjs +55 -0
- package/esm2022/lib/core/services/index.mjs +3 -0
- package/esm2022/lib/core/services/report-session-context.service.mjs +314 -0
- package/esm2022/lib/core/tokens/index.mjs +3 -0
- package/esm2022/lib/core/tokens/reporting-config.token.mjs +26 -0
- package/esm2022/lib/core/tokens/session-context.token.mjs +18 -0
- package/esm2022/lib/core/utilities/id-generator.mjs +17 -0
- package/esm2022/lib/core/utilities/index.mjs +3 -0
- package/esm2022/lib/core/utilities/schema-migration.mjs +38 -0
- package/esm2022/lib/core/utils/identifier-humanizer.mjs +88 -0
- package/esm2022/lib/core/validation/index.mjs +2 -0
- package/esm2022/lib/core/validation/validation-factory.mjs +70 -0
- package/esm2022/lib/data-access/adapters/http-lookup.adapter.mjs +107 -0
- package/esm2022/lib/data-access/adapters/http-schema-discovery.adapter.mjs +119 -0
- package/esm2022/lib/data-access/adapters/index.mjs +3 -0
- package/esm2022/lib/data-access/contracts/data-source.contract.mjs +28 -0
- package/esm2022/lib/data-access/contracts/index.mjs +7 -0
- package/esm2022/lib/data-access/contracts/lookup.contract.mjs +6 -0
- package/esm2022/lib/data-access/contracts/master-data.provider.mjs +24 -0
- package/esm2022/lib/data-access/contracts/report-persistence.contract.mjs +25 -0
- package/esm2022/lib/data-access/contracts/schema-discovery.contract.mjs +7 -0
- package/esm2022/lib/data-access/contracts/translation.contract.mjs +9 -0
- package/esm2022/lib/data-access/index.mjs +3 -0
- package/esm2022/lib/features/designer/components/component-palette/component-palette.component.mjs +542 -0
- package/esm2022/lib/features/designer/components/design-canvas/design-canvas.component.mjs +843 -0
- package/esm2022/lib/features/designer/components/property-editor/parameter-binding-editor.component.mjs +556 -0
- package/esm2022/lib/features/designer/components/property-editor/property-editor-datasource.component.mjs +845 -0
- package/esm2022/lib/features/designer/components/property-editor/property-editor-general.component.mjs +185 -0
- package/esm2022/lib/features/designer/components/property-editor/property-editor-grid.component.mjs +452 -0
- package/esm2022/lib/features/designer/components/property-editor/property-editor-layout.component.mjs +350 -0
- package/esm2022/lib/features/designer/components/property-editor/property-editor-report.component.mjs +175 -0
- package/esm2022/lib/features/designer/components/property-editor/property-editor-validation.component.mjs +137 -0
- package/esm2022/lib/features/designer/components/property-editor/property-editor.component.mjs +608 -0
- package/esm2022/lib/features/designer/components/toolbar/designer-toolbar.component.mjs +225 -0
- package/esm2022/lib/features/designer/designer.component.mjs +285 -0
- package/esm2022/lib/features/designer/index.mjs +7 -0
- package/esm2022/lib/features/designer/services/designer-state.service.mjs +310 -0
- package/esm2022/lib/features/designer/services/index.mjs +2 -0
- package/esm2022/lib/features/designer/utilities/canvas-layout.util.mjs +124 -0
- package/esm2022/lib/features/export/index.mjs +2 -0
- package/esm2022/lib/features/export/models/export.models.mjs +2 -0
- package/esm2022/lib/features/export/services/report-export.service.mjs +107 -0
- package/esm2022/lib/features/index.mjs +6 -0
- package/esm2022/lib/features/persistence/index.mjs +2 -0
- package/esm2022/lib/features/persistence/services/index.mjs +4 -0
- package/esm2022/lib/features/persistence/services/report-store.service.mjs +183 -0
- package/esm2022/lib/features/persistence/services/report-versioning.service.mjs +81 -0
- package/esm2022/lib/features/persistence/services/schema-validator.service.mjs +102 -0
- package/esm2022/lib/features/routing/components/routed-report-designer.component.mjs +156 -0
- package/esm2022/lib/features/routing/components/routed-report-runtime.component.mjs +163 -0
- package/esm2022/lib/features/routing/index.mjs +6 -0
- package/esm2022/lib/features/routing/models/report-route.models.mjs +2 -0
- package/esm2022/lib/features/routing/report-routes.mjs +49 -0
- package/esm2022/lib/features/routing/resolvers/report.resolver.mjs +22 -0
- package/esm2022/lib/features/routing/services/report-menu.service.mjs +77 -0
- package/esm2022/lib/features/runtime/dynamic-renderer.component.mjs +222 -0
- package/esm2022/lib/features/runtime/index.mjs +4 -0
- package/esm2022/lib/features/runtime/report-grid-bridge.component.mjs +409 -0
- package/esm2022/lib/features/runtime/report-runtime.component.mjs +147 -0
- package/esm2022/lib/primitives/components/button/rpt-button.component.mjs +88 -0
- package/esm2022/lib/primitives/components/chart-bridge/report-chart-bridge.component.mjs +361 -0
- package/esm2022/lib/primitives/components/checkbox/rpt-checkbox.component.mjs +86 -0
- package/esm2022/lib/primitives/components/date/rpt-date.component.mjs +91 -0
- package/esm2022/lib/primitives/components/dropdown/rpt-dropdown.component.mjs +204 -0
- package/esm2022/lib/primitives/components/icon/rpt-icon.component.mjs +476 -0
- package/esm2022/lib/primitives/components/index.mjs +10 -0
- package/esm2022/lib/primitives/components/input/rpt-input.component.mjs +88 -0
- package/esm2022/lib/primitives/components/kpi-card/rpt-kpi-card.component.mjs +197 -0
- package/esm2022/lib/primitives/components/number/rpt-number.component.mjs +110 -0
- package/esm2022/lib/primitives/index.mjs +3 -0
- package/esm2022/lib/primitives/register-builtins.mjs +328 -0
- package/esm2022/lib/provide-reporting.mjs +92 -0
- package/esm2022/public-api.mjs +9 -0
- package/fesm2022/bways-report.mjs +10360 -0
- package/fesm2022/bways-report.mjs.map +1 -0
- package/index.d.ts +5 -0
- package/lib/core/errors/index.d.ts +1 -0
- package/lib/core/errors/reporting-errors.d.ts +42 -0
- package/lib/core/index.d.ts +7 -0
- package/lib/core/models/component-event.model.d.ts +37 -0
- package/lib/core/models/index.d.ts +11 -0
- package/lib/core/models/report-component.model.d.ts +95 -0
- package/lib/core/models/report-datasource.model.d.ts +39 -0
- package/lib/core/models/report-definition.model.d.ts +100 -0
- package/lib/core/models/report-grid.model.d.ts +73 -0
- package/lib/core/models/report-layout.model.d.ts +43 -0
- package/lib/core/models/report-parameter.model.d.ts +22 -0
- package/lib/core/models/validation.model.d.ts +30 -0
- package/lib/core/registry/component-category.d.ts +16 -0
- package/lib/core/registry/component-registry.d.ts +101 -0
- package/lib/core/registry/index.d.ts +4 -0
- package/lib/core/registry/property-definition.model.d.ts +38 -0
- package/lib/core/services/dynamic-form-builder.service.d.ts +30 -0
- package/lib/core/services/index.d.ts +3 -0
- package/lib/core/services/report-session-context.service.d.ts +87 -0
- package/lib/core/tokens/index.d.ts +4 -0
- package/lib/core/tokens/reporting-config.token.d.ts +42 -0
- package/lib/core/tokens/session-context.token.d.ts +36 -0
- package/lib/core/utilities/id-generator.d.ts +9 -0
- package/lib/core/utilities/index.d.ts +3 -0
- package/lib/core/utilities/schema-migration.d.ts +10 -0
- package/lib/core/utils/identifier-humanizer.d.ts +22 -0
- package/lib/core/validation/index.d.ts +1 -0
- package/lib/core/validation/validation-factory.d.ts +31 -0
- package/lib/data-access/adapters/http-lookup.adapter.d.ts +19 -0
- package/lib/data-access/adapters/http-schema-discovery.adapter.d.ts +20 -0
- package/lib/data-access/adapters/index.d.ts +2 -0
- package/lib/data-access/contracts/data-source.contract.d.ts +37 -0
- package/lib/data-access/contracts/index.d.ts +9 -0
- package/lib/data-access/contracts/lookup.contract.d.ts +32 -0
- package/lib/data-access/contracts/master-data.provider.d.ts +54 -0
- package/lib/data-access/contracts/report-persistence.contract.d.ts +36 -0
- package/lib/data-access/contracts/schema-discovery.contract.d.ts +52 -0
- package/lib/data-access/contracts/translation.contract.d.ts +16 -0
- package/lib/data-access/index.d.ts +2 -0
- package/lib/features/designer/components/component-palette/component-palette.component.d.ts +39 -0
- package/lib/features/designer/components/design-canvas/design-canvas.component.d.ts +42 -0
- package/lib/features/designer/components/property-editor/parameter-binding-editor.component.d.ts +36 -0
- package/lib/features/designer/components/property-editor/property-editor-datasource.component.d.ts +68 -0
- package/lib/features/designer/components/property-editor/property-editor-general.component.d.ts +20 -0
- package/lib/features/designer/components/property-editor/property-editor-grid.component.d.ts +20 -0
- package/lib/features/designer/components/property-editor/property-editor-layout.component.d.ts +18 -0
- package/lib/features/designer/components/property-editor/property-editor-report.component.d.ts +15 -0
- package/lib/features/designer/components/property-editor/property-editor-validation.component.d.ts +12 -0
- package/lib/features/designer/components/property-editor/property-editor.component.d.ts +44 -0
- package/lib/features/designer/components/toolbar/designer-toolbar.component.d.ts +18 -0
- package/lib/features/designer/designer.component.d.ts +36 -0
- package/lib/features/designer/index.d.ts +7 -0
- package/lib/features/designer/services/designer-state.service.d.ts +103 -0
- package/lib/features/designer/services/index.d.ts +2 -0
- package/lib/features/designer/utilities/canvas-layout.util.d.ts +55 -0
- package/lib/features/export/index.d.ts +2 -0
- package/lib/features/export/models/export.models.d.ts +16 -0
- package/lib/features/export/services/report-export.service.d.ts +27 -0
- package/lib/features/index.d.ts +5 -0
- package/lib/features/persistence/index.d.ts +1 -0
- package/lib/features/persistence/services/index.d.ts +5 -0
- package/lib/features/persistence/services/report-store.service.d.ts +53 -0
- package/lib/features/persistence/services/report-versioning.service.d.ts +29 -0
- package/lib/features/persistence/services/schema-validator.service.d.ts +34 -0
- package/lib/features/routing/components/routed-report-designer.component.d.ts +18 -0
- package/lib/features/routing/components/routed-report-runtime.component.d.ts +18 -0
- package/lib/features/routing/index.d.ts +6 -0
- package/lib/features/routing/models/report-route.models.d.ts +41 -0
- package/lib/features/routing/report-routes.d.ts +16 -0
- package/lib/features/routing/resolvers/report.resolver.d.ts +7 -0
- package/lib/features/routing/services/report-menu.service.d.ts +30 -0
- package/lib/features/runtime/dynamic-renderer.component.d.ts +30 -0
- package/lib/features/runtime/index.d.ts +3 -0
- package/lib/features/runtime/report-grid-bridge.component.d.ts +94 -0
- package/lib/features/runtime/report-runtime.component.d.ts +26 -0
- package/lib/primitives/components/button/rpt-button.component.d.ts +19 -0
- package/lib/primitives/components/chart-bridge/report-chart-bridge.component.d.ts +45 -0
- package/lib/primitives/components/checkbox/rpt-checkbox.component.d.ts +14 -0
- package/lib/primitives/components/date/rpt-date.component.d.ts +17 -0
- package/lib/primitives/components/dropdown/rpt-dropdown.component.d.ts +32 -0
- package/lib/primitives/components/icon/rpt-icon.component.d.ts +41 -0
- package/lib/primitives/components/index.d.ts +12 -0
- package/lib/primitives/components/input/rpt-input.component.d.ts +16 -0
- package/lib/primitives/components/kpi-card/rpt-kpi-card.component.d.ts +43 -0
- package/lib/primitives/components/number/rpt-number.component.d.ts +20 -0
- package/lib/primitives/index.d.ts +2 -0
- package/lib/primitives/register-builtins.d.ts +11 -0
- package/lib/provide-reporting.d.ts +75 -0
- package/package.json +55 -0
- package/public-api.d.ts +5 -0
|
@@ -0,0 +1,476 @@
|
|
|
1
|
+
import { ChangeDetectionStrategy, Component, computed, input, } from '@angular/core';
|
|
2
|
+
import { CommonModule } from '@angular/common';
|
|
3
|
+
import * as i0 from "@angular/core";
|
|
4
|
+
/**
|
|
5
|
+
* Enterprise SVG Icon component for BWays-Report.
|
|
6
|
+
* Provides crisp, scalable vector icons without external font dependencies.
|
|
7
|
+
*/
|
|
8
|
+
export class RptIconComponent {
|
|
9
|
+
/** Icon name (e.g. 'search', 'edit', 'save', 'kpi', 'chart-bar', 'trend-up') */
|
|
10
|
+
name = input.required();
|
|
11
|
+
/** Icon dimension in pixels. Defaults to 16. */
|
|
12
|
+
size = input(16);
|
|
13
|
+
/** Stroke/fill color. Defaults to 'currentColor'. */
|
|
14
|
+
color = input('currentColor');
|
|
15
|
+
/** Stroke width for line-based icons. Defaults to 2. */
|
|
16
|
+
strokeWidth = input(2);
|
|
17
|
+
viewBox = computed(() => '0 0 24 24');
|
|
18
|
+
stroke = computed(() => 'currentColor');
|
|
19
|
+
fill = computed(() => 'none');
|
|
20
|
+
iconData = computed(() => {
|
|
21
|
+
const n = this.name()?.toLowerCase().trim() || 'box';
|
|
22
|
+
return ICON_REGISTRY[n] || ICON_REGISTRY['box'] || { paths: [] };
|
|
23
|
+
});
|
|
24
|
+
paths = computed(() => this.iconData().paths || []);
|
|
25
|
+
circles = computed(() => this.iconData().circles || []);
|
|
26
|
+
rects = computed(() => this.iconData().rects || []);
|
|
27
|
+
lines = computed(() => this.iconData().lines || []);
|
|
28
|
+
polylines = computed(() => this.iconData().polylines || []);
|
|
29
|
+
static ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "18.2.14", ngImport: i0, type: RptIconComponent, deps: [], target: i0.ɵɵFactoryTarget.Component });
|
|
30
|
+
static ɵcmp = i0.ɵɵngDeclareComponent({ minVersion: "17.0.0", version: "18.2.14", type: RptIconComponent, isStandalone: true, selector: "rpt-icon", inputs: { name: { classPropertyName: "name", publicName: "name", isSignal: true, isRequired: true, transformFunction: null }, size: { classPropertyName: "size", publicName: "size", isSignal: true, isRequired: false, transformFunction: null }, color: { classPropertyName: "color", publicName: "color", isSignal: true, isRequired: false, transformFunction: null }, strokeWidth: { classPropertyName: "strokeWidth", publicName: "strokeWidth", isSignal: true, isRequired: false, transformFunction: null } }, ngImport: i0, template: `
|
|
31
|
+
<svg
|
|
32
|
+
class="rpt-svg-icon"
|
|
33
|
+
[attr.width]="size()"
|
|
34
|
+
[attr.height]="size()"
|
|
35
|
+
[attr.viewBox]="viewBox()"
|
|
36
|
+
[attr.stroke]="stroke()"
|
|
37
|
+
[attr.fill]="fill()"
|
|
38
|
+
[attr.stroke-width]="strokeWidth()"
|
|
39
|
+
stroke-linecap="round"
|
|
40
|
+
stroke-linejoin="round"
|
|
41
|
+
[style.color]="color()"
|
|
42
|
+
aria-hidden="true"
|
|
43
|
+
>
|
|
44
|
+
@for (d of paths(); track d) {
|
|
45
|
+
<path [attr.d]="d" />
|
|
46
|
+
}
|
|
47
|
+
@for (c of circles(); track c.cx + '-' + c.cy) {
|
|
48
|
+
<circle [attr.cx]="c.cx" [attr.cy]="c.cy" [attr.r]="c.r" />
|
|
49
|
+
}
|
|
50
|
+
@for (r of rects(); track r.x + '-' + r.y) {
|
|
51
|
+
<rect
|
|
52
|
+
[attr.x]="r.x"
|
|
53
|
+
[attr.y]="r.y"
|
|
54
|
+
[attr.width]="r.width"
|
|
55
|
+
[attr.height]="r.height"
|
|
56
|
+
[attr.rx]="r.rx || 0"
|
|
57
|
+
/>
|
|
58
|
+
}
|
|
59
|
+
@for (l of lines(); track l.x1 + '-' + l.y1) {
|
|
60
|
+
<line
|
|
61
|
+
[attr.x1]="l.x1"
|
|
62
|
+
[attr.y1]="l.y1"
|
|
63
|
+
[attr.x2]="l.x2"
|
|
64
|
+
[attr.y2]="l.y2"
|
|
65
|
+
/>
|
|
66
|
+
}
|
|
67
|
+
@for (p of polylines(); track p) {
|
|
68
|
+
<polyline [attr.points]="p" />
|
|
69
|
+
}
|
|
70
|
+
</svg>
|
|
71
|
+
`, isInline: true, styles: [":host{display:inline-flex;align-items:center;justify-content:center;vertical-align:middle;line-height:1}.rpt-svg-icon{display:inline-block;flex-shrink:0;color:inherit}\n"], dependencies: [{ kind: "ngmodule", type: CommonModule }], changeDetection: i0.ChangeDetectionStrategy.OnPush });
|
|
72
|
+
}
|
|
73
|
+
i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "18.2.14", ngImport: i0, type: RptIconComponent, decorators: [{
|
|
74
|
+
type: Component,
|
|
75
|
+
args: [{ selector: 'rpt-icon', standalone: true, imports: [CommonModule], changeDetection: ChangeDetectionStrategy.OnPush, template: `
|
|
76
|
+
<svg
|
|
77
|
+
class="rpt-svg-icon"
|
|
78
|
+
[attr.width]="size()"
|
|
79
|
+
[attr.height]="size()"
|
|
80
|
+
[attr.viewBox]="viewBox()"
|
|
81
|
+
[attr.stroke]="stroke()"
|
|
82
|
+
[attr.fill]="fill()"
|
|
83
|
+
[attr.stroke-width]="strokeWidth()"
|
|
84
|
+
stroke-linecap="round"
|
|
85
|
+
stroke-linejoin="round"
|
|
86
|
+
[style.color]="color()"
|
|
87
|
+
aria-hidden="true"
|
|
88
|
+
>
|
|
89
|
+
@for (d of paths(); track d) {
|
|
90
|
+
<path [attr.d]="d" />
|
|
91
|
+
}
|
|
92
|
+
@for (c of circles(); track c.cx + '-' + c.cy) {
|
|
93
|
+
<circle [attr.cx]="c.cx" [attr.cy]="c.cy" [attr.r]="c.r" />
|
|
94
|
+
}
|
|
95
|
+
@for (r of rects(); track r.x + '-' + r.y) {
|
|
96
|
+
<rect
|
|
97
|
+
[attr.x]="r.x"
|
|
98
|
+
[attr.y]="r.y"
|
|
99
|
+
[attr.width]="r.width"
|
|
100
|
+
[attr.height]="r.height"
|
|
101
|
+
[attr.rx]="r.rx || 0"
|
|
102
|
+
/>
|
|
103
|
+
}
|
|
104
|
+
@for (l of lines(); track l.x1 + '-' + l.y1) {
|
|
105
|
+
<line
|
|
106
|
+
[attr.x1]="l.x1"
|
|
107
|
+
[attr.y1]="l.y1"
|
|
108
|
+
[attr.x2]="l.x2"
|
|
109
|
+
[attr.y2]="l.y2"
|
|
110
|
+
/>
|
|
111
|
+
}
|
|
112
|
+
@for (p of polylines(); track p) {
|
|
113
|
+
<polyline [attr.points]="p" />
|
|
114
|
+
}
|
|
115
|
+
</svg>
|
|
116
|
+
`, styles: [":host{display:inline-flex;align-items:center;justify-content:center;vertical-align:middle;line-height:1}.rpt-svg-icon{display:inline-block;flex-shrink:0;color:inherit}\n"] }]
|
|
117
|
+
}] });
|
|
118
|
+
const ICON_REGISTRY = {
|
|
119
|
+
// Input / Text
|
|
120
|
+
'input': {
|
|
121
|
+
paths: ['M17 3a2.828 2.828 0 1 1 4 4L7.5 20.5 2 22l1.5-5.5L17 3z']
|
|
122
|
+
},
|
|
123
|
+
'text-fields': {
|
|
124
|
+
lines: [
|
|
125
|
+
{ x1: 4, y1: 7, x2: 4, y2: 4 },
|
|
126
|
+
{ x1: 4, y1: 4, x2: 20, y2: 4 },
|
|
127
|
+
{ x1: 20, y1: 4, x2: 20, y2: 7 },
|
|
128
|
+
{ x1: 12, y1: 4, x2: 12, y2: 20 },
|
|
129
|
+
{ x1: 9, y1: 20, x2: 15, y2: 20 }
|
|
130
|
+
]
|
|
131
|
+
},
|
|
132
|
+
'edit': {
|
|
133
|
+
paths: [
|
|
134
|
+
'M11 4H4a2 2 0 0 0-2 2v14a2 2 0 0 0 2 2h14a2 2 0 0 0 2-2v-7',
|
|
135
|
+
'M18.5 2.5a2.121 2.121 0 0 1 3 3L12 15l-4 1 1-4 9.5-9.5z'
|
|
136
|
+
]
|
|
137
|
+
},
|
|
138
|
+
'design': {
|
|
139
|
+
rects: [{ x: 3, y: 3, width: 18, height: 18, rx: 2 }],
|
|
140
|
+
lines: [
|
|
141
|
+
{ x1: 3, y1: 9, x2: 21, y2: 9 },
|
|
142
|
+
{ x1: 9, y1: 21, x2: 9, y2: 9 }
|
|
143
|
+
]
|
|
144
|
+
},
|
|
145
|
+
// Dropdown / Select
|
|
146
|
+
'dropdown': {
|
|
147
|
+
rects: [{ x: 3, y: 3, width: 18, height: 18, rx: 4 }],
|
|
148
|
+
polylines: ['8 10 12 14 16 10']
|
|
149
|
+
},
|
|
150
|
+
'chevron-down': {
|
|
151
|
+
polylines: ['6 9 12 15 18 9']
|
|
152
|
+
},
|
|
153
|
+
'chevron-up': {
|
|
154
|
+
polylines: ['18 15 12 9 6 15']
|
|
155
|
+
},
|
|
156
|
+
// Date / Calendar
|
|
157
|
+
'date': {
|
|
158
|
+
rects: [{ x: 3, y: 4, width: 18, height: 18, rx: 3 }],
|
|
159
|
+
lines: [
|
|
160
|
+
{ x1: 16, y1: 2, x2: 16, y2: 6 },
|
|
161
|
+
{ x1: 8, y1: 2, x2: 8, y2: 6 },
|
|
162
|
+
{ x1: 3, y1: 10, x2: 21, y2: 10 }
|
|
163
|
+
]
|
|
164
|
+
},
|
|
165
|
+
'calendar': {
|
|
166
|
+
rects: [{ x: 3, y: 4, width: 18, height: 18, rx: 3 }],
|
|
167
|
+
lines: [
|
|
168
|
+
{ x1: 16, y1: 2, x2: 16, y2: 6 },
|
|
169
|
+
{ x1: 8, y1: 2, x2: 8, y2: 6 },
|
|
170
|
+
{ x1: 3, y1: 10, x2: 21, y2: 10 }
|
|
171
|
+
]
|
|
172
|
+
},
|
|
173
|
+
'calendar-today': {
|
|
174
|
+
rects: [{ x: 3, y: 4, width: 18, height: 18, rx: 3 }],
|
|
175
|
+
lines: [
|
|
176
|
+
{ x1: 16, y1: 2, x2: 16, y2: 6 },
|
|
177
|
+
{ x1: 8, y1: 2, x2: 8, y2: 6 },
|
|
178
|
+
{ x1: 3, y1: 10, x2: 21, y2: 10 }
|
|
179
|
+
]
|
|
180
|
+
},
|
|
181
|
+
// Number / Hash
|
|
182
|
+
'number': {
|
|
183
|
+
lines: [
|
|
184
|
+
{ x1: 4, y1: 9, x2: 20, y2: 9 },
|
|
185
|
+
{ x1: 4, y1: 15, x2: 20, y2: 15 },
|
|
186
|
+
{ x1: 10, y1: 3, x2: 8, y2: 21 },
|
|
187
|
+
{ x1: 16, y1: 3, x2: 14, y2: 21 }
|
|
188
|
+
]
|
|
189
|
+
},
|
|
190
|
+
// Checkbox
|
|
191
|
+
'checkbox': {
|
|
192
|
+
rects: [{ x: 3, y: 3, width: 18, height: 18, rx: 4 }],
|
|
193
|
+
polylines: ['9 12 11 14 15 10']
|
|
194
|
+
},
|
|
195
|
+
// Button
|
|
196
|
+
'button': {
|
|
197
|
+
rects: [{ x: 3, y: 7, width: 18, height: 10, rx: 4 }],
|
|
198
|
+
lines: [{ x1: 8, y1: 12, x2: 16, y2: 12 }]
|
|
199
|
+
},
|
|
200
|
+
// KPI & Trends
|
|
201
|
+
'kpi': {
|
|
202
|
+
paths: ['M22 12h-4l-3 9L9 3l-3 9H2']
|
|
203
|
+
},
|
|
204
|
+
'monitoring': {
|
|
205
|
+
paths: ['M22 12h-4l-3 9L9 3l-3 9H2']
|
|
206
|
+
},
|
|
207
|
+
'trend-up': {
|
|
208
|
+
polylines: ['23 6 13.5 15.5 8.5 10.5 1 18', '17 6 23 6 23 12']
|
|
209
|
+
},
|
|
210
|
+
'trend-down': {
|
|
211
|
+
polylines: ['23 18 13.5 8.5 8.5 13.5 1 6', '17 18 23 18 23 12']
|
|
212
|
+
},
|
|
213
|
+
// Charts
|
|
214
|
+
'chart': {
|
|
215
|
+
lines: [
|
|
216
|
+
{ x1: 18, y1: 20, x2: 18, y2: 10 },
|
|
217
|
+
{ x1: 12, y1: 20, x2: 12, y2: 4 },
|
|
218
|
+
{ x1: 6, y1: 20, x2: 6, y2: 14 }
|
|
219
|
+
]
|
|
220
|
+
},
|
|
221
|
+
'chart-bar': {
|
|
222
|
+
lines: [
|
|
223
|
+
{ x1: 18, y1: 20, x2: 18, y2: 10 },
|
|
224
|
+
{ x1: 12, y1: 20, x2: 12, y2: 4 },
|
|
225
|
+
{ x1: 6, y1: 20, x2: 6, y2: 14 }
|
|
226
|
+
]
|
|
227
|
+
},
|
|
228
|
+
'bar-chart': {
|
|
229
|
+
lines: [
|
|
230
|
+
{ x1: 18, y1: 20, x2: 18, y2: 10 },
|
|
231
|
+
{ x1: 12, y1: 20, x2: 12, y2: 4 },
|
|
232
|
+
{ x1: 6, y1: 20, x2: 6, y2: 14 }
|
|
233
|
+
]
|
|
234
|
+
},
|
|
235
|
+
'chart-line': {
|
|
236
|
+
polylines: ['22 12 18 12 15 21 9 3 6 12 2 12']
|
|
237
|
+
},
|
|
238
|
+
'chart-donut': {
|
|
239
|
+
circles: [
|
|
240
|
+
{ cx: 12, cy: 12, r: 10 },
|
|
241
|
+
{ cx: 12, cy: 12, r: 4 }
|
|
242
|
+
]
|
|
243
|
+
},
|
|
244
|
+
// Grid / Table / Layout
|
|
245
|
+
'grid': {
|
|
246
|
+
rects: [{ x: 3, y: 3, width: 18, height: 18, rx: 3 }],
|
|
247
|
+
lines: [
|
|
248
|
+
{ x1: 3, y1: 9, x2: 21, y2: 9 },
|
|
249
|
+
{ x1: 3, y1: 15, x2: 21, y2: 15 },
|
|
250
|
+
{ x1: 9, y1: 3, x2: 9, y2: 21 },
|
|
251
|
+
{ x1: 15, y1: 3, x2: 15, y2: 21 }
|
|
252
|
+
]
|
|
253
|
+
},
|
|
254
|
+
'database': {
|
|
255
|
+
paths: [
|
|
256
|
+
'M3 5c0-1.657 4.03-3 9-3s9 1.343 9 3v14c0 1.657-4.03 3-9 3s-9-1.343-9-3V5z',
|
|
257
|
+
'M3 12c0 1.657 4.03 3 9 3s9-1.343 9-3'
|
|
258
|
+
]
|
|
259
|
+
},
|
|
260
|
+
'table': {
|
|
261
|
+
rects: [{ x: 3, y: 3, width: 18, height: 18, rx: 3 }],
|
|
262
|
+
lines: [
|
|
263
|
+
{ x1: 3, y1: 9, x2: 21, y2: 9 },
|
|
264
|
+
{ x1: 9, y1: 9, x2: 9, y2: 21 }
|
|
265
|
+
]
|
|
266
|
+
},
|
|
267
|
+
'layout': {
|
|
268
|
+
rects: [{ x: 3, y: 3, width: 18, height: 18, rx: 3 }],
|
|
269
|
+
lines: [
|
|
270
|
+
{ x1: 3, y1: 9, x2: 21, y2: 9 },
|
|
271
|
+
{ x1: 9, y1: 21, x2: 9, y2: 9 }
|
|
272
|
+
]
|
|
273
|
+
},
|
|
274
|
+
'list': {
|
|
275
|
+
lines: [
|
|
276
|
+
{ x1: 8, y1: 6, x2: 21, y2: 6 },
|
|
277
|
+
{ x1: 8, y1: 12, x2: 21, y2: 12 },
|
|
278
|
+
{ x1: 8, y1: 18, x2: 21, y2: 18 },
|
|
279
|
+
{ x1: 3, y1: 6, x2: 4, y2: 6 },
|
|
280
|
+
{ x1: 3, y1: 12, x2: 4, y2: 12 },
|
|
281
|
+
{ x1: 3, y1: 18, x2: 4, y2: 18 }
|
|
282
|
+
]
|
|
283
|
+
},
|
|
284
|
+
// Selection / Cursor
|
|
285
|
+
'cursor': {
|
|
286
|
+
paths: ['M3 3l7.07 16.97 2.51-7.39 7.39-2.51L3 3z'],
|
|
287
|
+
lines: [{ x1: 13, y1: 13, x2: 19, y2: 19 }]
|
|
288
|
+
},
|
|
289
|
+
'mouse-pointer': {
|
|
290
|
+
paths: ['M3 3l7.07 16.97 2.51-7.39 7.39-2.51L3 3z'],
|
|
291
|
+
lines: [{ x1: 13, y1: 13, x2: 19, y2: 19 }]
|
|
292
|
+
},
|
|
293
|
+
// Alert / Warning
|
|
294
|
+
'warning': {
|
|
295
|
+
paths: ['M10.29 3.86L1.82 18a2 2 0 0 0 1.71 3h16.94a2 2 0 0 0 1.71-3L13.71 3.86a2 2 0 0 0-3.42 0z'],
|
|
296
|
+
lines: [{ x1: 12, y1: 9, x2: 12, y2: 13 }, { x1: 12, y1: 17, x2: 12.01, y2: 17 }]
|
|
297
|
+
},
|
|
298
|
+
'alert-triangle': {
|
|
299
|
+
paths: ['M10.29 3.86L1.82 18a2 2 0 0 0 1.71 3h16.94a2 2 0 0 0 1.71-3L13.71 3.86a2 2 0 0 0-3.42 0z'],
|
|
300
|
+
lines: [{ x1: 12, y1: 9, x2: 12, y2: 13 }, { x1: 12, y1: 17, x2: 12.01, y2: 17 }]
|
|
301
|
+
},
|
|
302
|
+
// Actions
|
|
303
|
+
'undo': {
|
|
304
|
+
paths: ['M3 7v6h6', 'M21 17a9 9 0 0 0-9-9 9 9 0 0 0-6 2.3L3 13']
|
|
305
|
+
},
|
|
306
|
+
'redo': {
|
|
307
|
+
paths: ['M21 7v6h-6', 'M3 17a9 9 0 0 1 9-9 9 9 0 0 1 6 2.3L21 13']
|
|
308
|
+
},
|
|
309
|
+
'save': {
|
|
310
|
+
paths: [
|
|
311
|
+
'M19 21H5a2 2 0 0 1-2-2V5a2 2 0 0 1 2-2h11l5 5v11a2 2 0 0 1-2 2z',
|
|
312
|
+
'M17 21v-8H7v8',
|
|
313
|
+
'M7 3v5h8'
|
|
314
|
+
]
|
|
315
|
+
},
|
|
316
|
+
'download': {
|
|
317
|
+
paths: [
|
|
318
|
+
'M21 15v4a2 2 0 0 1-2 2H5a2 2 0 0 1-2-2v-4',
|
|
319
|
+
'M7 10l5 5 5-5',
|
|
320
|
+
'M12 15V3'
|
|
321
|
+
]
|
|
322
|
+
},
|
|
323
|
+
'export': {
|
|
324
|
+
paths: [
|
|
325
|
+
'M21 15v4a2 2 0 0 1-2 2H5a2 2 0 0 1-2-2v-4',
|
|
326
|
+
'M7 10l5 5 5-5',
|
|
327
|
+
'M12 15V3'
|
|
328
|
+
]
|
|
329
|
+
},
|
|
330
|
+
'search': {
|
|
331
|
+
circles: [{ cx: 11, cy: 11, r: 8 }],
|
|
332
|
+
lines: [{ x1: 21, y1: 21, x2: 16.65, y2: 16.65 }]
|
|
333
|
+
},
|
|
334
|
+
'filter': {
|
|
335
|
+
polylines: ['22 3 2 3 10 12.46 10 19 14 21 14 12.46 22 3']
|
|
336
|
+
},
|
|
337
|
+
'copy': {
|
|
338
|
+
rects: [{ x: 9, y: 9, width: 13, height: 13, rx: 2 }],
|
|
339
|
+
paths: ['M5 15H4a2 2 0 0 1-2-2V4a2 2 0 0 1 2-2h9a2 2 0 0 1 2 2v1']
|
|
340
|
+
},
|
|
341
|
+
'duplicate': {
|
|
342
|
+
rects: [{ x: 9, y: 9, width: 13, height: 13, rx: 2 }],
|
|
343
|
+
paths: ['M5 15H4a2 2 0 0 1-2-2V4a2 2 0 0 1 2-2h9a2 2 0 0 1 2 2v1']
|
|
344
|
+
},
|
|
345
|
+
'trash': {
|
|
346
|
+
paths: [
|
|
347
|
+
'M3 6h18',
|
|
348
|
+
'M19 6v14a2 2 0 0 1-2 2H7a2 2 0 0 1-2-2V6m3 0V4a2 2 0 0 1 2-2h4a2 2 0 0 1 2 2v2',
|
|
349
|
+
'M10 11v6',
|
|
350
|
+
'M14 11v6'
|
|
351
|
+
]
|
|
352
|
+
},
|
|
353
|
+
'delete': {
|
|
354
|
+
paths: [
|
|
355
|
+
'M3 6h18',
|
|
356
|
+
'M19 6v14a2 2 0 0 1-2 2H7a2 2 0 0 1-2-2V6m3 0V4a2 2 0 0 1 2-2h4a2 2 0 0 1 2 2v2'
|
|
357
|
+
]
|
|
358
|
+
},
|
|
359
|
+
'settings': {
|
|
360
|
+
circles: [{ cx: 12, cy: 12, r: 3 }],
|
|
361
|
+
paths: [
|
|
362
|
+
'M19.4 15a1.65 1.65 0 0 0 .33 1.82l.06.06a2 2 0 0 1 0 2.83 2 2 0 0 1-2.83 0l-.06-.06a1.65 1.65 0 0 0-1.82-.33 1.65 1.65 0 0 0-1 1.51V21a2 2 0 0 1-2 2 2 2 0 0 1-2-2v-.09A1.65 1.65 0 0 0 9 19.4a1.65 1.65 0 0 0-1.82.33l-.06.06a2 2 0 0 1-2.83 0 2 2 0 0 1 0-2.83l.06-.06a1.65 1.65 0 0 0 .33-1.82 1.65 1.65 0 0 0-1.51-1H3a2 2 0 0 1-2-2 2 2 0 0 1 2-2h.09A1.65 1.65 0 0 0 4.6 9a1.65 1.65 0 0 0-.33-1.82l-.06-.06a2 2 0 0 1 0-2.83 2 2 0 0 1 2.83 0l.06.06a1.65 1.65 0 0 0 1.82.33H9a1.65 1.65 0 0 0 1-1.51V3a2 2 0 0 1 2-2 2 2 0 0 1 2 2v.09a1.65 1.65 0 0 0 1 1.51 1.65 1.65 0 0 0 1.82-.33l.06-.06a2 2 0 0 1 2.83 0 2 2 0 0 1 0 2.83l-.06.06a1.65 1.65 0 0 0-.33 1.82V9a1.65 1.65 0 0 0 1.51 1H21a2 2 0 0 1 2 2 2 2 0 0 1-2 2h-.09a1.65 1.65 0 0 0-1.51 1z'
|
|
363
|
+
]
|
|
364
|
+
},
|
|
365
|
+
'gear': {
|
|
366
|
+
circles: [{ cx: 12, cy: 12, r: 3 }],
|
|
367
|
+
paths: [
|
|
368
|
+
'M19.4 15a1.65 1.65 0 0 0 .33 1.82l.06.06a2 2 0 0 1 0 2.83 2 2 0 0 1-2.83 0l-.06-.06a1.65 1.65 0 0 0-1.82-.33 1.65 1.65 0 0 0-1 1.51V21a2 2 0 0 1-2 2 2 2 0 0 1-2-2v-.09A1.65 1.65 0 0 0 9 19.4a1.65 1.65 0 0 0-1.82.33l-.06.06a2 2 0 0 1-2.83 0 2 2 0 0 1 0-2.83l.06-.06a1.65 1.65 0 0 0 .33-1.82 1.65 1.65 0 0 0-1.51-1H3a2 2 0 0 1-2-2 2 2 0 0 1 2-2h.09A1.65 1.65 0 0 0 4.6 9a1.65 1.65 0 0 0-.33-1.82l-.06-.06a2 2 0 0 1 0-2.83 2 2 0 0 1 2.83 0l.06.06a1.65 1.65 0 0 0 1.82.33H9a1.65 1.65 0 0 0 1-1.51V3a2 2 0 0 1 2-2 2 2 0 0 1 2 2v.09a1.65 1.65 0 0 0 1 1.51 1.65 1.65 0 0 0 1.82-.33l.06-.06a2 2 0 0 1 2.83 0 2 2 0 0 1 0 2.83l-.06.06a1.65 1.65 0 0 0-.33 1.82V9a1.65 1.65 0 0 0 1.51 1H21a2 2 0 0 1 2 2 2 2 0 0 1-2 2h-.09a1.65 1.65 0 0 0-1.51 1z'
|
|
369
|
+
]
|
|
370
|
+
},
|
|
371
|
+
'eye': {
|
|
372
|
+
paths: ['M1 12s4-8 11-8 11 8 11 8-4 8-11 8-11-8-11-8z'],
|
|
373
|
+
circles: [{ cx: 12, cy: 12, r: 3 }]
|
|
374
|
+
},
|
|
375
|
+
'preview': {
|
|
376
|
+
paths: ['M1 12s4-8 11-8 11 8 11 8-4 8-11 8-11-8-11-8z'],
|
|
377
|
+
circles: [{ cx: 12, cy: 12, r: 3 }]
|
|
378
|
+
},
|
|
379
|
+
'code': {
|
|
380
|
+
polylines: ['16 18 22 12 16 6', '8 6 2 12 8 18']
|
|
381
|
+
},
|
|
382
|
+
'json': {
|
|
383
|
+
polylines: ['16 18 22 12 16 6', '8 6 2 12 8 18']
|
|
384
|
+
},
|
|
385
|
+
// Navigation & Direction
|
|
386
|
+
'arrow-left': {
|
|
387
|
+
lines: [{ x1: 19, y1: 12, x2: 5, y2: 12 }],
|
|
388
|
+
polylines: ['12 19 5 12 12 5']
|
|
389
|
+
},
|
|
390
|
+
'arrow-right': {
|
|
391
|
+
lines: [{ x1: 5, y1: 12, x2: 19, y2: 12 }],
|
|
392
|
+
polylines: ['12 5 19 12 12 19']
|
|
393
|
+
},
|
|
394
|
+
'arrow-up': {
|
|
395
|
+
lines: [{ x1: 12, y1: 19, x2: 12, y2: 5 }],
|
|
396
|
+
polylines: ['5 12 12 5 19 12']
|
|
397
|
+
},
|
|
398
|
+
'arrow-down': {
|
|
399
|
+
lines: [{ x1: 12, y1: 5, x2: 12, y2: 19 }],
|
|
400
|
+
polylines: ['19 12 12 19 5 12']
|
|
401
|
+
},
|
|
402
|
+
'corner-down-right': {
|
|
403
|
+
polylines: ['15 10 20 15 15 20'],
|
|
404
|
+
paths: ['M4 4v7a4 4 0 0 0 4 4h12']
|
|
405
|
+
},
|
|
406
|
+
'new-row': {
|
|
407
|
+
polylines: ['15 10 20 15 15 20'],
|
|
408
|
+
paths: ['M4 4v7a4 4 0 0 0 4 4h12']
|
|
409
|
+
},
|
|
410
|
+
// General Status & Common
|
|
411
|
+
'check': {
|
|
412
|
+
polylines: ['20 6 9 17 4 12']
|
|
413
|
+
},
|
|
414
|
+
'close': {
|
|
415
|
+
lines: [
|
|
416
|
+
{ x1: 18, y1: 6, x2: 6, y2: 18 },
|
|
417
|
+
{ x1: 6, y1: 6, x2: 18, y2: 18 }
|
|
418
|
+
]
|
|
419
|
+
},
|
|
420
|
+
'plus': {
|
|
421
|
+
lines: [
|
|
422
|
+
{ x1: 12, y1: 5, x2: 12, y2: 19 },
|
|
423
|
+
{ x1: 5, y1: 12, x2: 19, y2: 12 }
|
|
424
|
+
]
|
|
425
|
+
},
|
|
426
|
+
'minus': {
|
|
427
|
+
lines: [{ x1: 5, y1: 12, x2: 19, y2: 12 }]
|
|
428
|
+
},
|
|
429
|
+
'dollar': {
|
|
430
|
+
lines: [{ x1: 12, y1: 1, x2: 12, y2: 23 }],
|
|
431
|
+
paths: ['M17 5H9.5a3.5 3.5 0 0 0 0 7h5a3.5 3.5 0 0 1 0 7H6']
|
|
432
|
+
},
|
|
433
|
+
'clock': {
|
|
434
|
+
circles: [{ cx: 12, cy: 12, r: 10 }],
|
|
435
|
+
polylines: ['12 6 12 12 16 14']
|
|
436
|
+
},
|
|
437
|
+
'box': {
|
|
438
|
+
paths: [
|
|
439
|
+
'M21 16V8a2 2 0 0 0-1-1.73l-7-4a2 2 0 0 0-2 0l-7 4A2 2 0 0 0 3 8v8a2 2 0 0 0 1 1.73l7 4a2 2 0 0 0 2 0l7-4A2 2 0 0 0 21 16z',
|
|
440
|
+
'M3.27 6.96L12 12.01l8.73-5.05',
|
|
441
|
+
'M12 22.08V12'
|
|
442
|
+
]
|
|
443
|
+
},
|
|
444
|
+
'lightning': {
|
|
445
|
+
polylines: ['13 2 3 14 12 14 11 22 21 10 12 10 13 2']
|
|
446
|
+
},
|
|
447
|
+
'link': {
|
|
448
|
+
paths: [
|
|
449
|
+
'M10 13a5 5 0 0 0 7.54.54l3-3a5 5 0 0 0-7.07-7.07l-1.72 1.71',
|
|
450
|
+
'M14 11a5 5 0 0 0-7.54-.54l-3 3a5 5 0 0 0 7.07 7.07l1.71-1.71'
|
|
451
|
+
]
|
|
452
|
+
},
|
|
453
|
+
'user': {
|
|
454
|
+
paths: ['M20 21v-2a4 4 0 0 0-4-4H8a4 4 0 0 0-4 4v2'],
|
|
455
|
+
circles: [{ cx: 12, cy: 7, r: 4 }]
|
|
456
|
+
},
|
|
457
|
+
'sliders': {
|
|
458
|
+
lines: [
|
|
459
|
+
{ x1: 4, y1: 21, x2: 4, y2: 14 },
|
|
460
|
+
{ x1: 4, y1: 10, x2: 4, y2: 3 },
|
|
461
|
+
{ x1: 12, y1: 21, x2: 12, y2: 12 },
|
|
462
|
+
{ x1: 12, y1: 8, x2: 12, y2: 3 },
|
|
463
|
+
{ x1: 20, y1: 21, x2: 20, y2: 16 },
|
|
464
|
+
{ x1: 20, y1: 12, x2: 20, y2: 3 },
|
|
465
|
+
{ x1: 1, y1: 14, x2: 7, y2: 14 },
|
|
466
|
+
{ x1: 9, y1: 8, x2: 15, y2: 8 },
|
|
467
|
+
{ x1: 17, y1: 16, x2: 23, y2: 16 }
|
|
468
|
+
]
|
|
469
|
+
},
|
|
470
|
+
'sparkles': {
|
|
471
|
+
paths: [
|
|
472
|
+
'M12 3v3m0 12v3M3 12h3m12 0h3M5.6 5.6l2.1 2.1m8.6 8.6l2.1 2.1M5.6 18.4l2.1-2.1m8.6-8.6l2.1-2.1'
|
|
473
|
+
]
|
|
474
|
+
}
|
|
475
|
+
};
|
|
476
|
+
//# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoicnB0LWljb24uY29tcG9uZW50LmpzIiwic291cmNlUm9vdCI6IiIsInNvdXJjZXMiOlsiLi4vLi4vLi4vLi4vLi4vLi4vLi4vcHJvamVjdHMvYndheXMtcmVwb3J0L3NyYy9saWIvcHJpbWl0aXZlcy9jb21wb25lbnRzL2ljb24vcnB0LWljb24uY29tcG9uZW50LnRzIl0sIm5hbWVzIjpbXSwibWFwcGluZ3MiOiJBQUFBLE9BQU8sRUFDTCx1QkFBdUIsRUFDdkIsU0FBUyxFQUNULFFBQVEsRUFDUixLQUFLLEdBQ04sTUFBTSxlQUFlLENBQUM7QUFDdkIsT0FBTyxFQUFFLFlBQVksRUFBRSxNQUFNLGlCQUFpQixDQUFDOztBQUUvQzs7O0dBR0c7QUFnRUgsTUFBTSxPQUFPLGdCQUFnQjtJQUMzQixnRkFBZ0Y7SUFDdkUsSUFBSSxHQUFHLEtBQUssQ0FBQyxRQUFRLEVBQVUsQ0FBQztJQUV6QyxnREFBZ0Q7SUFDdkMsSUFBSSxHQUFHLEtBQUssQ0FBUyxFQUFFLENBQUMsQ0FBQztJQUVsQyxxREFBcUQ7SUFDNUMsS0FBSyxHQUFHLEtBQUssQ0FBUyxjQUFjLENBQUMsQ0FBQztJQUUvQyx3REFBd0Q7SUFDL0MsV0FBVyxHQUFHLEtBQUssQ0FBUyxDQUFDLENBQUMsQ0FBQztJQUUvQixPQUFPLEdBQUcsUUFBUSxDQUFDLEdBQUcsRUFBRSxDQUFDLFdBQVcsQ0FBQyxDQUFDO0lBQ3RDLE1BQU0sR0FBRyxRQUFRLENBQUMsR0FBRyxFQUFFLENBQUMsY0FBYyxDQUFDLENBQUM7SUFDeEMsSUFBSSxHQUFHLFFBQVEsQ0FBQyxHQUFHLEVBQUUsQ0FBQyxNQUFNLENBQUMsQ0FBQztJQUV0QixRQUFRLEdBQUcsUUFBUSxDQUFDLEdBQUcsRUFBRTtRQUN4QyxNQUFNLENBQUMsR0FBRyxJQUFJLENBQUMsSUFBSSxFQUFFLEVBQUUsV0FBVyxFQUFFLENBQUMsSUFBSSxFQUFFLElBQUksS0FBSyxDQUFDO1FBQ3JELE9BQU8sYUFBYSxDQUFDLENBQUMsQ0FBQyxJQUFJLGFBQWEsQ0FB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QUFFLEVBQUUsRUFBRSxFQUFFLEVBQUUsQ0FBQyxFQUFFLEVBQUUsRUFBRSxFQUFFLEVBQUUsRUFBRSxFQUFFLENBQUMsRUFBRTtZQUNoQyxFQUFFLEVBQUUsRUFBRSxDQUFDLEVBQUUsRUFBRSxFQUFFLENBQUMsRUFBRSxFQUFFLEVBQUUsQ0FBQyxFQUFFLEVBQUUsRUFBRSxDQUFDLEVBQUU7WUFDOUIsRUFBRSxFQUFFLEVBQUUsQ0FBQyxFQUFFLEVBQUUsRUFBRSxFQUFFLEVBQUUsRUFBRSxFQUFFLEVBQUUsRUFBRSxFQUFFLEVBQUUsRUFBRSxFQUFFO1NBQ2xDO0tBQ0Y7SUFDRCxnQkFBZ0IsRUFBRTtRQUNoQixLQUFLLEVBQUUsQ0FBQyxFQUFFLENBQUMsRUFBRSxDQUFDLEVBQUUsQ0FBQyxFQUFFLENBQUMsRUFBRSxLQUFLLEVBQUUsRUFBRSxFQUFFLE1BQU0sRUFBRSxFQUFFLEVBQUUsRUFBRSxFQUFFLENBQUMsRUFBRSxDQUFDO1FBQ3JELEtBQUssRUFBRTtZQUNMLEVBQUUsRUFBRSxFQUFFLEVBQUUsRUFBRSxFQUFFLEVBQUUsQ0FBQyxFQUFFLEVBQUUsRUFBRSxFQUFFLEVBQUUsRUFBRSxFQUFFLENBQUMsRUFBRTtZQUNoQyxFQUFFLEVBQUUsRUFBRSxDQUFDLEVBQUUsRUFBRSxFQUFFLENBQUMsRUFBRSxFQUFFLEVBQUUsQ0FBQyxFQUFFLEVBQUUsRUFBRSxDQUFDLEVBQUU7WUFDOUIsRUFBRSxFQUFFLEVBQUUsQ0FBQyxFQUFFLEVBQUUsRUFBRSxFQUFFLEVBQUUsRUFBRSxFQUFFLEVBQUUsRUFBRSxFQUFFLEVBQUUsRUFBRSxFQUFFO1NBQ2xDO0tBQ0Y7SUFFRCxnQkFBZ0I7SUFDaEIsUUFBUSxFQUFFO1FBQ1IsS0FBSyxFQUFFO1lBQ0wsRUFBRSxFQUFFLEVBQUUsQ0FBQyxFQUFFLEVBQUUsRUFBRSxDQUFDLEVBQUUsRUFBRSxFQUFFLEVBQUUsRUFBRSxFQUFFLEVBQUUsQ0FBQyxFQUFFO1lBQy9CLEVBQUUsRUFBRSxFQUFFLENBQUMsRUFBRSxFQUFFLEVBQUUsRUFBRSxFQUFFLEVB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RTtZQUNoQyxFQUFFLEVBQUUsRUFBRSxDQUFDLEVBQUUsRUFBRSxFQUFFLEVBQUUsRUFBRSxFQUFFLEVBQUUsQ0FBQyxFQUFFLEVBQUUsRUFBRSxDQUFDLEVBQUU7WUFDL0IsRUFBRSxFQUFFLEVBQUUsRUFBRSxFQUFFLEVBQUUsRUFBRSxFQUFFLEVBQUUsRUFBRSxFQUFFLEVBQUUsRUFBRSxFQUFFLEVBQUUsRUFBRSxFQUFFO1lBQ2xDLEVBQUUsRUFBRSxFQUFFLEVBQUUsRUFBRSxFQUFFLEVBQUUsQ0FBQyxFQUFFLEVBQUUsRUFBRSxFQUFFLEVBQUUsRUFBRSxFQUFFLENBQUMsRUFBRTtZQUNoQyxFQUFFLEVBQUUsRUFBRSxFQUFFLEVBQUUsRUFBRSxFQUFFLEVBQUUsRUFBRSxFQUFFLEVBQUUsRUFBRSxFQUFFLEVBQUUsRUFBRSxFQUFFLEVBQUU7WUFDbEMsRUFBRSxFQUFFLEVBQUUsRUFBRSxFQUFFLEVBQUUsRUFBRSxFQUFFLEVBQUUsRUFBRSxFQUFFLEVBQUUsRUFBRSxFQUFFLEVBQUUsQ0FBQyxFQUFFO1lBQ2pDLEVBQUUsRUFBRSxFQUFFLENBQUMsRUFBRSxFQUFFLEVBQUUsRUFBRSxFQUFFLEVBQUUsRUFBRSxDQUFDLEVBQUUsRUFBRSxFQUFFLEVBQUUsRUFBRTtZQUNoQyxFQUFFLEVBQUUsRUFBRSxDQUFDLEVBQUUsRUFBRSxFQUFFLENBQUMsRUFBRSxFQUFFLEVBQUUsRUFBRSxFQUFFLEVBQUUsRUFBRSxDQUFDLEVBQUU7WUFDL0IsRUFBRSxFQUFFLEVBQUUsRUFBRSxFQUFFLEVBQUUsRUFBRSxFQUFFLEVBQUUsRUFBRSxFQUFFLEVBQUUsRUFBRSxFQUFFLEVBQUUsRUFBRSxFQUFFO1NBQ25DO0tBQ0Y7SUFDRCxVQUFVLEVBQUU7UUFDVixLQUFLLEVBQUU7WUFDTCwrRkFBK0Y7U0FDaEc7S0FDRjtDQUNGLENBQUMiLCJzb3VyY2VzQ29udGVudCI6WyJpbXBvcnQge1xuICBDaGFuZ2VEZXRlY3Rpb25TdHJhdGVneSxcbiAgQ29tcG9uZW50LFxuICBjb21wdXRlZCxcbiAgaW5wdXQsXG59IGZyb20gJ0Bhbmd1bGFyL2NvcmUnO1xuaW1wb3J0IHsgQ29tbW9uTW9kdWxlIH0gZnJvbSAnQGFuZ3VsYXIvY29tbW9uJztcblxuLyoqXG4gKiBFbnRlcnByaXNlIFNWRyBJY29uIGNvbXBvbmVudCBmb3IgQldheXMtUmVwb3J0LlxuICogUHJvdmlkZXMgY3Jpc3AsIHNjYWxhYmxlIHZlY3RvciBpY29ucyB3aXRob3V0IGV4dGVybmFsIGZvbnQgZGVwZW5kZW5jaWVzLlxuICovXG5AQ29tcG9uZW50KHtcbiAgc2VsZWN0b3I6ICdycHQtaWNvbicsXG4gIHN0YW5kYWxvbmU6IHRydWUsXG4gIGltcG9ydHM6IFtDb21tb25Nb2R1bGVdLFxuICBjaGFuZ2VEZXRlY3Rpb246IENoYW5nZURldGVjdGlvblN0cmF0ZWd5Lk9uUHVzaCxcbiAgdGVtcGxhdGU6IGBcbiAgICA8c3ZnXG4gICAgICBjbGFzcz1cInJwdC1zdmctaWNvblwiXG4gICAgICBbYXR0ci53aWR0aF09XCJzaXplKClcIlxuICAgICAgW2F0dHIuaGVpZ2h0XT1cInNpemUoKVwiXG4gICAgICBbYXR0ci52aWV3Qm94XT1cInZpZXdCb3goKVwiXG4gICAgICBbYXR0ci5zdHJva2VdPVwic3Ryb2tlKClcIlxuICAgICAgW2F0dHIuZmlsbF09XCJmaWxsKClcIlxuICAgICAgW2F0dHIuc3Ryb2tlLXdpZHRoXT1cInN0cm9rZVdpZHRoKClcIlxuICAgICAgc3Ryb2tlLWxpbmVjYXA9XCJyb3VuZFwiXG4gICAgICBzdHJva2UtbGluZWpvaW49XCJyb3VuZFwiXG4gICAgICBbc3R5bGUuY29sb3JdPVwiY29sb3IoKVwiXG4gICAgICBhcmlhLWhpZGRlbj1cInRydWVcIlxuICAgID5cbiAgICAgIEBmb3IgKGQgb2YgcGF0aHMoKTsgdHJhY2sgZCkge1xuICAgICAgICA8cGF0aCBbYXR0ci5kXT1cImRcIiAvPlxuICAgICAgfVxuICAgICAgQGZvciAoYyBvZiBjaXJjbGVzKCk7IHRyYWNrIGMuY3ggKyAnLScgKyBjLmN5KSB7XG4gICAgICAgIDxjaXJjbGUgW2F0dHIuY3hdPVwiYy5jeFwiIFthdHRyLmN5XT1cImMuY3lcIiBbYXR0ci5yXT1cImMuclwiIC8+XG4gICAgICB9XG4gICAgICBAZm9yIChyIG9mIHJlY3RzKCk7IHRyYWNrIHIueCArICctJyArIHIueSkge1xuICAgICAgICA8cmVjdFxuICAgICAgICAgIFthdHRyLnhdPVwici54XCJcbiAgICAgICAgICBbYXR0ci55XT1cInIueVwiXG4gICAgICAgICAgW2F0dHIud2lkdGhdPVwici53aWR0aFwiXG4gICAgICAgICAgW2F0dHIuaGVpZ2h0XT1cInIuaGVpZ2h0XCJcbiAgICAgICAgICBbYXR0ci5yeF09XCJyLnJ4IHx8IDBcIlxuICAgICAgICAvPlxuICAgICAgfVxuICAgICAgQGZvciAobCBvZiBsaW5lcygpOyB0cmFjayBsLngxICsgJy0nICsgbC55MSkge1xuICAgICAgICA8bGluZVxuICAgICAgICAgIFthdHRyLngxXT1cImwueDFcIlxuICAgICAgICAgIFthdHRyLnkxXT1cImwueTFcIlxuICAgICAgICAgIFthdHRyLngyXT1cImwueDJcIlxuICAgICAgICAgIFthdHRyLnkyXT1cImwueTJcIlxuICAgICAgICAvPlxuICAgICAgfVxuICAgICAgQGZvciAocCBvZiBwb2x5bGluZXMoKTsgdHJhY2sgcCkge1xuICAgICAgICA8cG9seWxpbmUgW2F0dHIucG9pbnRzXT1cInBcIiAvPlxuICAgICAgfVxuICAgIDwvc3ZnPlxuICBgLFxuICBzdHlsZXM6IFtgXG4gICAgOmhvc3Qge1xuICAgICAgZGlzcGxheTogaW5saW5lLWZsZXg7XG4gICAgICBhbGlnbi1pdGVtczogY2VudGVyO1xuICAgICAganVzdGlmeS1jb250ZW50OiBjZW50ZXI7XG4gICAgICB2ZXJ0aWNhbC1hbGlnbjogbWlkZGxlO1xuICAgICAgbGluZS1oZWlnaHQ6IDE7XG4gICAgfVxuXG4gICAgLnJwdC1zdmctaWNvbiB7XG4gICAgICBkaXNwbGF5OiBpbmxpbmUtYmxvY2s7XG4gICAgICBmbGV4LXNocmluazogMDtcbiAgICAgIGNvbG9yOiBpbmhlcml0O1xuICAgIH1cbiAgYF1cbn0pXG5leHBvcnQgY2xhc3MgUnB0SWNvbkNvbXBvbmVudCB7XG4gIC8qKiBJY29uIG5hbWUgKGUuZy4gJ3NlYXJjaCcsICdlZGl0JywgJ3NhdmUnLCAna3BpJywgJ2NoYXJ0LWJhcicsICd0cmVuZC11cCcpICovXG4gIHJlYWRvbmx5IG5hbWUgPSBpbnB1dC5yZXF1aXJlZDxzdHJpbmc+KCk7XG5cbiAgLyoqIEljb24gZGltZW5zaW9uIGluIHBpeGVscy4gRGVmYXVsdHMgdG8gMTYuICovXG4gIHJlYWRvbmx5IHNpemUgPSBpbnB1dDxudW1iZXI+KDE2KTtcblxuICAvKiogU3Ryb2tlL2ZpbGwgY29sb3IuIERlZmF1bHRzIHRvICdjdXJyZW50Q29sb3InLiAqL1xuICByZWFkb25seSBjb2xvciA9IGlucHV0PHN0cmluZz4oJ2N1cnJlbnRDb2xvcicpO1xuXG4gIC8qKiBTdHJva2Ugd2lkdGggZm9yIGxpbmUtYmFzZWQgaWNvbnMuIERlZmF1bHRzIHRvIDIuICovXG4gIHJlYWRvbmx5IHN0cm9rZVdpZHRoID0gaW5wdXQ8bnVtYmVyPigyKTtcblxuICByZWFkb25seSB2aWV3Qm94ID0gY29tcHV0ZWQoKCkgPT4gJzAgMCAyNCAyNCcpO1xuICByZWFkb25seSBzdHJva2UgPSBjb21wdXRlZCgoKSA9PiAnY3VycmVudENvbG9yJyk7XG4gIHJlYWRvbmx5IGZpbGwgPSBjb21wdXRlZCgoKSA9PiAnbm9uZScpO1xuXG4gIHByaXZhdGUgcmVhZG9ubHkgaWNvbkRhdGEgPSBjb21wdXRlZCgoKSA9PiB7XG4gICAgY29uc3QgbiA9IHRoaXMubmFtZSgpPy50b0xvd2VyQ2FzZSgpLnRyaW0oKSB8fCAnYm94JztcbiAgICByZXR1cm4gSUNPTl9SRUdJU1RSWVtuXSB8fCBJQ09OX1JFR0lTVFJZWydib3gnXSB8fCB7IHBhdGhzOiBbXSB9O1xuICB9KTtcblxuICByZWFkb25seSBwYXRocyA9IGNvbXB1dGVkKCgpID0+IHRoaXMuaWNvbkRhdGEoKS5wYXRocyB8fCBbXSk7XG4gIHJlYWRvbmx5IGNpcmNsZXMgPSBjb21wdXRlZCgoKSA9PiB0aGlzLmljb25EYXRhKCkuY2lyY2xlcyB8fCBbXSk7XG4gIHJlYWRvbmx5IHJlY3RzID0gY29tcHV0ZWQoKCkgPT4gdGhpcy5pY29uRGF0YSgpLnJlY3RzIHx8IFtdKTtcbiAgcmVhZG9ubHkgbGluZXMgPSBjb21wdXRlZCgoKSA9PiB0aGlzLmljb25EYXRhKCkubGluZXMgfHwgW10pO1xuICByZWFkb25seSBwb2x5bGluZXMgPSBjb21wdXRlZCgoKSA9PiB0aGlzLmljb25EYXRhKCkucG9seWxpbmVzIHx8IFtdKTtcbn1cblxuaW50ZXJmYWNlIEljb25EZWZpbml0aW9uIHtcbiAgcGF0aHM/OiBzdHJpbmdbXTtcbiAgY2lyY2xlcz86IHsgY3g6IG51bWJlcjsgY3k6IG51bWJlcjsgcjogbnVtYmVyIH1bXTtcbiAgcmVjdHM/OiB7IHg6IG51bWJlcjsgeTogbnVtYmVyOyB3aWR0aDogbnVtYmVyOyBoZWlnaHQ6IG51bWJlcjsgcng/OiBudW1iZXIgfVtdO1xuICBsaW5lcz86IHsgeDE6IG51bWJlcjsgeTE6IG51bWJlcjsgeDI6IG51bWJlcjsgeTI6IG51bWJlciB9W107XG4gIHBvbHlsaW5lcz86IHN0cmluZ1tdO1xufVxuXG5jb25zdCBJQ09OX1JFR0lTVFJZOiBSZWNvcmQ8c3RyaW5nLCBJY29uRGVmaW5pdGlvbj4gPSB7XG4gIC8vIElucHV0IC8gVGV4dFxuICAnaW5wdXQnOiB7XG4gICAgcGF0aHM6IFsnTTE3IDNhMi44MjggMi44MjggMCAxIDEgNCA0TDcuNSAyMC41IDIgMjJsMS41LTUuNUwxNyAzeiddXG4gIH0sXG4gICd0ZXh0LWZpZWxkcyc6IHtcbiAgICBsaW5lczogW1xuICAgICAgeyB4MTogNCwgeTE6IDcsIHgyOiA0LCB5MjogNCB9LFxuICAgICAgeyB4MTogNCwgeTE6IDQsIHgyOiAyMCwgeTI6IDQgfSxcbiAgICAgIHsgeDE6IDIwLCB5MTogNCwgeDI6IDIwLCB5MjogNyB9LFxuICAgICAgeyB4MTogMTIsIHkxOiA0LCB4MjogMTIsIHkyOiAyMCB9LFxuICAgICAgeyB4MTogOSwgeTE6IDIwLCB4MjogMTUsIHkyOiAyMCB9XG4gICAgXVxuICB9LFxuICAnZWRpdCc6IHtcbiAgICBwYXRoczogW1xuICAgICAgJ00xMSA0SDRhMiAyIDAgMCAwLTIgMnYxNGEyIDIgMCAwIDAgMiAyaDE0YTIgMiAwIDAgMCAyLTJ2LTcnLFxuICAgICAgJ00xOC41IDIuNWEyLjEyMSAyLjEyMSAwIDAgMSAzIDNMMTIgMTVsLTQgMSAxLTQgOS41LTkuNXonXG4gICAgXVxuICB9LFxuICAnZGVzaWduJzoge1xuICAgIHJlY3RzOiBbeyB4OiAzLCB5OiAzLCB3aWR0aDogMTgsIGhlaWdodDogMTgsIHJ4OiAyIH1dLFxuICAgIGxpbmVzOiBbXG4gICAgICB7IHgxOiAzLCB5MTogOSwgeDI6IDIxLCB5MjogOSB9LFxuICAgICAgeyB4MTogOSwgeTE6IDIxLCB4MjogOSwgeTI6IDkgfVxuICAgIF1cbiAgfSxcblxuICAvLyBEcm9wZG93biAvIFNlbGVjdFxuICAnZHJvcGRvd24nOiB7XG4gICAgcmVjdHM6IFt7IHg6IDMsIHk6IDMsIHdpZHRoOiAxOCwgaGVpZ2h0OiAxOCwgcng6IDQgfV0sXG4gICAgcG9seWxpbmVzOiBbJzggMTAgMTIgMTQgMTYgMTAnXVxuICB9LFxuICAnY2hldnJvbi1kb3duJzoge1xuICAgIHBvbHlsaW5lczogWyc2IDkgMTIgMTUgMTggOSddXG4gIH0sXG4gICdjaGV2cm9uLXVwJzoge1xuICAgIHBvbHlsaW5lczogWycxOCAxNSAxMiA5IDYgMTUnXVxuICB9LFxuXG4gIC8vIERhdGUgLyBDYWxlbmRhclxuICAnZGF0ZSc6IHtcbiAgICByZWN0czogW3sgeDogMywgeTogNCwgd2lkdGg6IDE4LCBoZWlnaHQ6IDE4LCByeDogMyB9XSxcbiAgICBsaW5lczogW1xuICAgICAgeyB4MTogMTYsIHkxOiAyLCB4MjogMTYsIHkyOiA2IH0sXG4gICAgICB7IHgxOiA4LCB5MTogMiwgeDI6IDgsIHkyOiA2IH0sXG4gICAgICB7IHgxOiAzLCB5MTogMTAsIHgyOiAyMSwgeTI6IDEwIH1cbiAgICBdXG4gIH0sXG4gICdjYWxlbmRhcic6IHtcbiAgICByZWN0czogW3sgeDogMywgeTogNCwgd2lkdGg6IDE4LCBoZWlnaHQ6IDE4LCByeDogMyB9XSxcbiAgICBsaW5lczogW1xuICAgICAgeyB4MTogMTYsIHkxOiAyLCB4MjogMTYsIHkyOiA2IH0sXG4gICAgICB7IHgxOiA4LCB5MTogMiwgeDI6IDgsIHkyOiA2IH0sXG4gICAgICB7IHgxOiAzLCB5MTogMTAsIHgyOiAyMSwgeTI6IDEwIH1cbiAgICBdXG4gIH0sXG4gICdjYWxlbmRhci10b2RheSc6IHtcbiAgICByZWN0czogW3sgeDogMywgeTogNCwgd2lkdGg6IDE4LCBoZWlnaHQ6IDE4LCByeDogMyB9XSxcbiAgICBsaW5lczogW1xuICAgICAgeyB4MTogMTYsIHkxOiAyLCB4MjogMTYsIHkyOiA2IH0sXG4gICAgICB7IHgxOiA4LCB5MTogMiwgeDI6IDgsIHkyOiA2IH0sXG4gICAgICB7IHgxOiAzLCB5MTogMTAsIHgyOiAyMSwgeTI6IDEwIH1cbiAgICBdXG4gIH0sXG5cbiAgLy8gTnVtYmVyIC8gSGFzaFxuICAnbnVtYmVyJzoge1xuICAgIGxpbmVzOiBbXG4gICAgICB7IHgxOiA0LCB5MTogOSwgeDI6IDIwLCB5MjogOSB9LFxuICAgICAgeyB4MTogNCwgeTE6IDE1LCB4MjogMjAsIHkyOiAxNSB9LFxuICAgICAgeyB4MTogMTAsIHkxOiAzLCB4MjogOCwgeTI6IDIxIH0sXG4gICAgICB7IHgxOiAxNiwgeTE6IDMsIHgyOiAxNCwgeTI6IDIxIH1cbiAgICBdXG4gIH0sXG5cbiAgLy8gQ2hlY2tib3hcbiAgJ2NoZWNrYm94Jzoge1xuICAgIHJlY3RzOiBbeyB4OiAzLCB5OiAzLCB3aWR0aDogMTgsIGhlaWdodDogMTgsIHJ4OiA0IH1dLFxuICAgIHBvbHlsaW5lczogWyc5IDEyIDExIDE0IDE1IDEwJ11cbiAgfSxcblxuICAvLyBCdXR0b25cbiAgJ2J1dHRvbic6IHtcbiAgICByZWN0czogW3sgeDogMywgeTogNywgd2lkdGg6IDE4LCBoZWlnaHQ6IDEwLCByeDogNCB9XSxcbiAgICBsaW5lczogW3sgeDE6IDgsIHkxOiAxMiwgeDI6IDE2LCB5MjogMTIgfV1cbiAgfSxcblxuICAvLyBLUEkgJiBUcmVuZHNcbiAgJ2twaSc6IHtcbiAgICBwYXRoczogWydNMjIgMTJoLTRsLTMgOUw5IDNsLTMgOUgyJ11cbiAgfSxcbiAgJ21vbml0b3JpbmcnOiB7XG4gICAgcGF0aHM6IFsnTTIyIDEyaC00bC0zIDlMOSAzbC0zIDlIMiddXG4gIH0sXG4gICd0cmVuZC11cCc6IHtcbiAgICBwb2x5bGluZXM6IFsnMjMgNiAxMy41IDE1LjUgOC41IDEwLjUgMSAxOCcsICcxNyA2IDIzIDYgMjMgMTInXVxuICB9LFxuICAndHJlbmQtZG93bic6IHtcbiAgICBwb2x5bGluZXM6IFsnMjMgMTggMTMuNSA4LjUgOC41IDEzLjUgMSA2JywgJzE3IDE4IDIzIDE4IDIzIDEyJ11cbiAgfSxcblxuICAvLyBDaGFydHNcbiAgJ2NoYXJ0Jzoge1xuICAgIGxpbmVzOiBbXG4gICAgICB7IHgxOiAxOCwgeTE6IDIwLCB4MjogMTgsIHkyOiAxMCB9LFxuICAgICAgeyB4MTogMTIsIHkxOiAyMCwgeDI6IDEyLCB5MjogNCB9LFxuICAgICAgeyB4MTogNiwgeTE6IDIwLCB4MjogNiwgeTI6IDE0IH1cbiAgICBdXG4gIH0sXG4gICdjaGFydC1iYXInOiB7XG4gICAgbGluZXM6IFtcbiAgICAgIHsgeDE6IDE4LCB5MTogMjAsIHgyOiAxOCwgeTI6IDEwIH0sXG4gICAgICB7IHgxOiAxMiwgeTE6IDIwLCB4MjogMTIsIHkyOiA0IH0sXG4gICAgICB7IHgxOiA2LCB5MTogMjAsIHgyOiA2LCB5MjogMTQgfVxuICAgIF1cbiAgfSxcbiAgJ2Jhci1jaGFydCc6IHtcbiAgICBsaW5lczogW1xuICAgICAgeyB4MTogMTgsIHkxOiAyMCwgeDI6IDE4LCB5MjogMTAgfSxcbiAgICAgIHsgeDE6IDEyLCB5MTogMjAsIHgyOiAxMiwgeTI6IDQgfSxcbiAgICAgIHsgeDE6IDYsIHkxOiAyMCwgeDI6IDYsIHkyOiAxNCB9XG4gICAgXVxuICB9LFxuICAnY2hhcnQtbGluZSc6IHtcbiAgICBwb2x5bGluZXM6IFsnMjIgMTIgMTggMTIgMTUgMjEgOSAzIDYgMTIgMiAxMiddXG4gIH0sXG4gICdjaGFydC1kb251dCc6IHtcbiAgICBjaXJjbGVzOiBbXG4gICAgICB7IGN4OiAxMiwgY3k6IDEyLCByOiAxMCB9LFxuICAgICAgeyBjeDogMTIsIGN5OiAxMiwgcjogNCB9XG4gICAgXVxuICB9LFxuXG4gIC8vIEdyaWQgLyBUYWJsZSAvIExheW91dFxuICAnZ3JpZCc6IHtcbiAgICByZWN0czogW3sgeDogMywgeTogMywgd2lkdGg6IDE4LCBoZWlnaHQ6IDE4LCByeDogMyB9XSxcbiAgICBsaW5lczogW1xuICAgICAgeyB4MTogMywgeTE6IDksIHgyOiAyMSwgeTI6IDkgfSxcbiAgICAgIHsgeDE6IDMsIHkxOiAxNSwgeDI6IDIxLCB5MjogMTUgfSxcbiAgICAgIHsgeDE6IDksIHkxOiAzLCB4MjogOSwgeTI6IDIxIH0sXG4gICAgICB7IHgxOiAxNSwgeTE6IDMsIHgyOiAxNSwgeTI6IDIxIH1cbiAgICBdXG4gIH0sXG4gICdkYXRhYmFzZSc6IHtcbiAgICBwYXRoczogW1xuICAgICAgJ00zIDVjMC0xLjY1NyA0LjAzLTMgOS0zczkgMS4zNDMgOSAzdjE0YzAgMS42NTctNC4wMyAzLTkgM3MtOS0xLjM0My05LTNWNXonLFxuICAgICAgJ00zIDEyYzAgMS42NTcgNC4wMyAzIDkgM3M5LTEuMzQzIDktMydcbiAgICBdXG4gIH0sXG4gICd0YWJsZSc6IHtcbiAgICByZWN0czogW3sgeDogMywgeTogMywgd2lkdGg6IDE4LCBoZWlnaHQ6IDE4LCByeDogMyB9XSxcbiAgICBsaW5lczogW1xuICAgICAgeyB4MTogMywgeTE6IDksIHgyOiAyMSwgeTI6IDkgfSxcbiAgICAgIHsgeDE6IDksIHkxOiA5LCB4MjogOSwgeTI6IDIxIH1cbiAgICBdXG4gIH0sXG4gICdsYXlvdXQnOiB7XG4gICAgcmVjdHM6IFt7IHg6IDMsIHk6IDMsIHdpZHRoOiAxOCwgaGVpZ2h0OiAxOCwgcng6IDMgfV0sXG4gICAgbGluZXM6IFtcbiAgICAgIHsgeDE6IDMsIHkxOiA5LCB4MjogMjEsIHkyOiA5IH0sXG4gICAgICB7IHgxOiA5LCB5MTogMjEsIHgyOiA5LCB5MjogOSB9XG4gICAgXVxuICB9LFxuICAnbGlzdCc6IHtcbiAgICBsaW5lczogW1xuICAgICAgeyB4MTogOCwgeTE6IDYsIHgyOiAyMSwgeTI6IDYgfSxcbiAgICAgIHsgeDE6IDgsIHkxOiAxMiwgeDI6IDIxLCB5MjogMTIgfSxcbiAgICAgIHsgeDE6IDgsIHkxOiAxOCwgeDI6IDIxLCB5MjogMTggfSxcbiAgICAgIHsgeDE6IDMsIHkxOiA2LCB4MjogNCwgeTI6IDYgfSxcbiAgICAgIHsgeDE6IDMsIHkxOiAxMiwgeDI6IDQsIHkyOiAxMiB9LFxuICAgICAgeyB4MTogMywgeTE6IDE4LCB4MjogNCwgeTI6IDE4IH1cbiAgICBdXG4gIH0sXG5cbiAgLy8gU2VsZWN0aW9uIC8gQ3Vyc29yXG4gICdjdXJzb3InOiB7XG4gICAgcGF0aHM6IFsnTTMgM2w3LjA3IDE2Ljk3IDIuNTEtNy4zOSA3LjM5LTIuNTFMMyAzeiddLFxuICAgIGxpbmVzOiBbeyB4MTogMTMsIHkxOiAxMywgeDI6IDE5LCB5MjogMTkgfV1cbiAgfSxcbiAgJ21vdXNlLXBvaW50ZXInOiB7XG4gICAgcGF0aHM6IFsnTTMgM2w3LjA3IDE2Ljk3IDIuNTEtNy4zOSA3LjM5LTIuNTFMMyAzeiddLFxuICAgIGxpbmVzOiBbeyB4MTogMTMsIHkxOiAxMywgeDI6IDE5LCB5MjogMTkgfV1cbiAgfSxcblxuICAvLyBBbGVydCAvIFdhcm5pbmdcbiAgJ3dhcm5pbmcnOiB7XG4gICAgcGF0aHM6IFsnTTEwLjI5IDMuODZMMS44MiAxOGEyIDIgMCAwIDAgMS43MSAzaDE2Ljk0YTIgMiAwIDAgMCAxLjcxLTNMMTMuNzEgMy44NmEyIDIgMCAwIDAtMy40MiAweiddLFxuICAgIGxpbmVzOiBbeyB4MTogMTIsIHkxOiA5LCB4MjogMTIsIHkyOiAxMyB9LCB7IHgxOiAxMiwgeTE6IDE3LCB4MjogMTIuMDEsIHkyOiAxNyB9XVxuICB9LFxuICAnYWxlcnQtdHJpYW5nbGUnOiB7XG4gICAgcGF0aHM6IFsnTTEwLjI5IDMuODZMMS44MiAxOGEyIDIgMCAwIDAgMS43MSAzaDE2Ljk0YTIgMiAwIDAgMCAxLjcxLTNMMTMuNzEgMy44NmEyIDIgMCAwIDAtMy40MiAweiddLFxuICAgIGxpbmVzOiBbeyB4MTogMTIsIHkxOiA5LCB4MjogMTIsIHkyOiAxMyB9LCB7IHgxOiAxMiwgeTE6IDE3LCB4MjogMTIuMDEsIHkyOiAxNyB9XVxuICB9LFxuXG4gIC8vIEFjdGlvbnNcbiAgJ3VuZG8nOiB7XG4gICAgcGF0aHM6IFsnTTMgN3Y2aDYnLCAnTTIxIDE3YTkgOSAwIDAgMC05LTkgOSA5IDAgMCAwLTYgMi4zTDMgMTMnXVxuICB9LFxuICAncmVkbyc6IHtcbiAgICBwYXRoczogWydNMjEgN3Y2aC02JywgJ00zIDE3YTkgOSAwIDAgMSA5LTkgOSA5IDAgMCAxIDYgMi4zTDIxIDEzJ11cbiAgfSxcbiAgJ3NhdmUnOiB7XG4gICAgcGF0aHM6IFtcbiAgICAgICdNMTkgMjFINWEyIDIgMCAwIDEtMi0yVjVhMiAyIDAgMCAxIDItMmgxMWw1IDV2MTFhMiAyIDAgMCAxLTIgMnonLFxuICAgICAgJ00xNyAyMXYtOEg3djgnLFxuICAgICAgJ003IDN2NWg4J1xuICAgIF1cbiAgfSxcbiAgJ2Rvd25sb2FkJzoge1xuICAgIHBhdGhzOiBbXG4gICAgICAnTTIxIDE1djRhMiAyIDAgMCAxLTIgMkg1YTIgMiAwIDAgMS0yLTJ2LTQnLFxuICAgICAgJ003IDEwbDUgNSA1LTUnLFxuICAgICAgJ00xMiAxNVYzJ1xuICAgIF1cbiAgfSxcbiAgJ2V4cG9ydCc6IHtcbiAgICBwYXRoczogW1xuICAgICAgJ00yMSAxNXY0YTIgMiAwIDAgMS0yIDJINWEyIDIgMCAwIDEtMi0ydi00JyxcbiAgICAgICdNNyAxMGw1IDUgNS01JyxcbiAgICAgICdNMTIgMTVWMydcbiAgICBdXG4gIH0sXG4gICdzZWFyY2gnOiB7XG4gICAgY2lyY2xlczogW3sgY3g6IDExLCBjeTogMTEsIHI6IDggfV0sXG4gICAgbGluZXM6IFt7IHgxOiAyMSwgeTE6IDIxLCB4MjogMTYuNjUsIHkyOiAxNi42NSB9XVxuICB9LFxuICAnZmlsdGVyJzoge1xuICAgIHBvbHlsaW5lczogWycyMiAzIDIgMyAxMCAxMi40NiAxMCAxOSAxNCAyMSAxNCAxMi40NiAyMiAzJ11cbiAgfSxcbiAgJ2NvcHknOiB7XG4gICAgcmVjdHM6IFt7IHg6IDksIHk6IDksIHdpZHRoOiAxMywgaGVpZ2h0OiAxMywgcng6IDIgfV0sXG4gICAgcGF0aHM6IFsnTTUgMTVINGEyIDIgMCAwIDEtMi0yVjRhMiAyIDAgMCAxIDItMmg5YTIgMiAwIDAgMSAyIDJ2MSddXG4gIH0sXG4gICdkdXBsaWNhdGUnOiB7XG4gICAgcmVjdHM6IFt7IHg6IDksIHk6IDksIHdpZHRoOiAxMywgaGVpZ2h0OiAxMywgcng6IDIgfV0sXG4gICAgcGF0aHM6IFsnTTUgMTVINGEyIDIgMCAwIDEtMi0yVjRhMiAyIDAgMCAxIDItMmg5YTIgMiAwIDAgMSAyIDJ2MSddXG4gIH0sXG4gICd0cmFzaCc6IHtcbiAgICBwYXRoczogW1xuICAgICAgJ00zIDZoMTgnLFxuICAgICAgJ00xOSA2djE0YTIgMiAwIDAgMS0yIDJIN2EyIDIgMCAwIDEtMi0yVjZtMyAwVjRhMiAyIDAgMCAxIDItMmg0YTIgMiAwIDAgMSAyIDJ2MicsXG4gICAgICAnTTEwIDExdjYnLFxuICAgICAgJ00xNCAxMXY2J1xuICAgIF1cbiAgfSxcbiAgJ2RlbGV0ZSc6IHtcbiAgICBwYXRoczogW1xuICAgICAgJ00zIDZoMTgnLFxuICAgICAgJ00xOSA2djE0YTIgMiAwIDAgMS0yIDJIN2EyIDIgMCAwIDEtMi0yVjZtMyAwVjRhMiAyIDAgMCAxIDItMmg0YTIgMiAwIDAgMSAyIDJ2MidcbiAgICBdXG4gIH0sXG4gICdzZXR0aW5ncyc6IHtcbiAgICBjaXJjbGVzOiBbeyBjeDogMTIsIGN5OiAxMiwgcjogMyB9XSxcbiAgICBwYXRoczogW1xuICAgICAgJ00xOS40IDE1YTEuNjUgMS42NSAwIDAgMCAuMzMgMS44MmwuMDYuMDZhMiAyIDAgMCAxIDAgMi44MyAyIDIgMCAwIDEtMi44MyAwbC0uMDYtLjA2YTEuNjUgMS42NSAwIDAgMC0xLjgyLS4zMyAxLjY1IDEuNjUgMCAwIDAtMSAxLjUxVjIxYTIgMiAwIDAgMS0yIDIgMiAyIDAgMCAxLTItMnYtLjA5QTEuNjUgMS42NSAwIDAgMCA5IDE5LjRhMS42NSAxLjY1IDAgMCAwLTEuODIuMzNsLS4wNi4wNmEyIDIgMCAwIDEtMi44MyAwIDIgMiAwIDAgMSAwLTIuODNsLjA2LS4wNmExLjY1IDEuNjUgMCAwIDAgLjMzLTEuODIgMS42NSAxLjY1IDAgMCAwLTEuNTEtMUgzYTIgMiAwIDAgMS0yLTIgMiAyIDAgMCAxIDItMmguMDlBMS42NSAxLjY1IDAgMCAwIDQuNiA5YTEuNjUgMS42NSAwIDAgMC0uMzMtMS44MmwtLjA2LS4wNmEyIDIgMCAwIDEgMC0yLjgzIDIgMiAwIDAgMSAyLjgzIDBsLjA2LjA2YTEuNjUgMS42NSAwIDAgMCAxLjgyLjMzSDlhMS42NSAxLjY1IDAgMCAwIDEtMS41MVYzYTIgMiAwIDAgMSAyLTIgMiAyIDAgMCAxIDIgMnYuMDlhMS42NSAxLjY1IDAgMCAwIDEgMS41MSAxLjY1IDEuNjUgMCAwIDAgMS44Mi0uMzNsLjA2LS4wNmEyIDIgMCAwIDEgMi44MyAwIDIgMiAwIDAgMSAwIDIuODNsLS4wNi4wNmExLjY1IDEuNjUgMCAwIDAtLjMzIDEuODJWOWExLjY1IDEuNjUgMCAwIDAgMS41MSAxSDIxYTIgMiAwIDAgMSAyIDIgMiAyIDAgMCAxLTIgMmgtLjA5YTEuNjUgMS42NSAwIDAgMC0xLjUxIDF6J1xuICAgIF1cbiAgfSxcbiAgJ2dlYXInOiB7XG4gICAgY2lyY2xlczogW3sgY3g6IDEyLCBjeTogMTIsIHI6IDMgfV0sXG4gICAgcGF0aHM6IFtcbiAgICAgICdNMTkuNCAxNWExLjY1IDEuNjUgMCAwIDAgLjMzIDEuODJsLjA2LjA2YTIgMiAwIDAgMSAwIDIuODMgMiAyIDAgMCAxLTIuODMgMGwtLjA2LS4wNmExLjY1IDEuNjUgMCAwIDAtMS44Mi0uMzMgMS42NSAxLjY1IDAgMCAwLTEgMS41MVYyMWEyIDIgMCAwIDEtMiAyIDIgMiAwIDAgMS0yLTJ2LS4wOUExLjY1IDEuNjUgMCAwIDAgOSAxOS40YTEuNjUgMS42NSAwIDAgMC0xLjgyLjMzbC0uMDYuMDZhMiAyIDAgMCAxLTIuODMgMCAyIDIgMCAwIDEgMC0yLjgzbC4wNi0uMDZhMS42NSAxLjY1IDAgMCAwIC4zMy0xLjgyIDEuNjUgMS42NSAwIDAgMC0xLjUxLTFIM2EyIDIgMCAwIDEtMi0yIDIgMiAwIDAgMSAyLTJoLjA5QTEuNjUgMS42NSAwIDAgMCA0LjYgOWExLjY1IDEuNjUgMCAwIDAtLjMzLTEuODJsLS4wNi0uMDZhMiAyIDAgMCAxIDAtMi44MyAyIDIgMCAwIDEgMi44MyAwbC4wNi4wNmExLjY1IDEuNjUgMCAwIDAgMS44Mi4zM0g5YTEuNjUgMS42NSAwIDAgMCAxLTEuNTFWM2EyIDIgMCAwIDEgMi0yIDIgMiAwIDAgMSAyIDJ2LjA5YTEuNjUgMS42NSAwIDAgMCAxIDEuNTEgMS42NSAxLjY1IDAgMCAwIDEuODItLjMzbC4wNi0uMDZhMiAyIDAgMCAxIDIuODMgMCAyIDIgMCAwIDEgMCAyLjgzbC0uMDYuMDZhMS42NSAxLjY1IDAgMCAwLS4zMyAxLjgyVjlhMS42NSAxLjY1IDAgMCAwIDEuNTEgMUgyMWEyIDIgMCAwIDEgMiAyIDIgMiAwIDAgMS0yIDJoLS4wOWExLjY1IDEuNjUgMCAwIDAtMS41MSAxeidcbiAgICBdXG4gIH0sXG4gICdleWUnOiB7XG4gICAgcGF0aHM6IFsnTTEgMTJzNC04IDExLTggMTEgOCAxMSA4LTQgOC0xMSA4LTExLTgtMTEtOHonXSxcbiAgICBjaXJjbGVzOiBbeyBjeDogMTIsIGN5OiAxMiwgcjogMyB9XVxuICB9LFxuICAncHJldmlldyc6IHtcbiAgICBwYXRoczogWydNMSAxMnM0LTggMTEtOCAxMSA4IDExIDgtNCA4LTExIDgtMTEtOC0xMS04eiddLFxuICAgIGNpcmNsZXM6IFt7IGN4OiAxMiwgY3k6IDEyLCByOiAzIH1dXG4gIH0sXG4gICdjb2RlJzoge1xuICAgIHBvbHlsaW5lczogWycxNiAxOCAyMiAxMiAxNiA2JywgJzggNiAyIDEyIDggMTgnXVxuICB9LFxuICAnanNvbic6IHtcbiAgICBwb2x5bGluZXM6IFsnMTYgMTggMjIgMTIgMTYgNicsICc4IDYgMiAxMiA4IDE4J11cbiAgfSxcblxuICAvLyBOYXZpZ2F0aW9uICYgRGlyZWN0aW9uXG4gICdhcnJvdy1sZWZ0Jzoge1xuICAgIGxpbmVzOiBbeyB4MTogMTksIHkxOiAxMiwgeDI6IDUsIHkyOiAxMiB9XSxcbiAgICBwb2x5bGluZXM6IFsnMTIgMTkgNSAxMiAxMiA1J11cbiAgfSxcbiAgJ2Fycm93LXJpZ2h0Jzoge1xuICAgIGxpbmVzOiBbeyB4MTogNSwgeTE6IDEyLCB4MjogMTksIHkyOiAxMiB9XSxcbiAgICBwb2x5bGluZXM6IFsnMTIgNSAxOSAxMiAxMiAxOSddXG4gIH0sXG4gICdhcnJvdy11cCc6IHtcbiAgICBsaW5lczogW3sgeDE6IDEyLCB5MTogMTksIHgyOiAxMiwgeTI6IDUgfV0sXG4gICAgcG9seWxpbmVzOiBbJzUgMTIgMTIgNSAxOSAxMiddXG4gIH0sXG4gICdhcnJvdy1kb3duJzoge1xuICAgIGxpbmVzOiBbeyB4MTogMTIsIHkxOiA1LCB4MjogMTIsIHkyOiAxOSB9XSxcbiAgICBwb2x5bGluZXM6IFsnMTkgMTIgMTIgMTkgNSAxMiddXG4gIH0sXG4gICdjb3JuZXItZG93bi1yaWdodCc6IHtcbiAgICBwb2x5bGluZXM6IFsnMTUgMTAgMjAgMTUgMTUgMjAnXSxcbiAgICBwYXRoczogWydNNCA0djdhNCA0IDAgMCAwIDQgNGgxMiddXG4gIH0sXG4gICduZXctcm93Jzoge1xuICAgIHBvbHlsaW5lczogWycxNSAxMCAyMCAxNSAxNSAyMCddLFxuICAgIHBhdGhzOiBbJ000IDR2N2E0IDQgMCAwIDAgNCA0aDEyJ11cbiAgfSxcblxuICAvLyBHZW5lcmFsIFN0YXR1cyAmIENvbW1vblxuICAnY2hlY2snOiB7XG4gICAgcG9seWxpbmVzOiBbJzIwIDYgOSAxNyA0IDEyJ11cbiAgfSxcbiAgJ2Nsb3NlJzoge1xuICAgIGxpbmVzOiBbXG4gICAgICB7IHgxOiAxOCwgeTE6IDYsIHgyOiA2LCB5MjogMTggfSxcbiAgICAgIHsgeDE6IDYsIHkxOiA2LCB4MjogMTgsIHkyOiAxOCB9XG4gICAgXVxuICB9LFxuICAncGx1cyc6IHtcbiAgICBsaW5lczogW1xuICAgICAgeyB4MTogMTIsIHkxOiA1LCB4MjogMTIsIHkyOiAxOSB9LFxuICAgICAgeyB4MTogNSwgeTE6IDEyLCB4MjogMTksIHkyOiAxMiB9XG4gICAgXVxuICB9LFxuICAnbWludXMnOiB7XG4gICAgbGluZXM6IFt7IHgxOiA1LCB5MTogMTIsIHgyOiAxOSwgeTI6IDEyIH1dXG4gIH0sXG4gICdkb2xsYXInOiB7XG4gICAgbGluZXM6IFt7IHgxOiAxMiwgeTE6IDEsIHgyOiAxMiwgeTI6IDIzIH1dLFxuICAgIHBhdGhzOiBbJ00xNyA1SDkuNWEzLjUgMy41IDAgMCAwIDAgN2g1YTMuNSAzLjUgMCAwIDEgMCA3SDYnXVxuICB9LFxuICAnY2xvY2snOiB7XG4gICAgY2lyY2xlczogW3sgY3g6IDEyLCBjeTogMTIsIHI6IDEwIH1dLFxuICAgIHBvbHlsaW5lczogWycxMiA2IDEyIDEyIDE2IDE0J11cbiAgfSxcbiAgJ2JveCc6IHtcbiAgICBwYXRoczogW1xuICAgICAgJ00yMSAxNlY4YTIgMiAwIDAgMC0xLTEuNzNsLTctNGEyIDIgMCAwIDAtMiAwbC03IDRBMiAyIDAgMCAwIDMgOHY4YTIgMiAwIDAgMCAxIDEuNzNsNyA0YTIgMiAwIDAgMCAyIDBsNy00QTIgMiAwIDAgMCAyMSAxNnonLFxuICAgICAgJ00zLjI3IDYuOTZMMTIgMTIuMDFsOC43My01LjA1JyxcbiAgICAgICdNMTIgMjIuMDhWMTInXG4gICAgXVxuICB9LFxuICAnbGlnaHRuaW5nJzoge1xuICAgIHBvbHlsaW5lczogWycxMyAyIDMgMTQgMTIgMTQgMTEgMjIgMjEgMTAgMTIgMTAgMTMgMiddXG4gIH0sXG4gICdsaW5rJzoge1xuICAgIHBhdGhzOiBbXG4gICAgICAnTTEwIDEzYTUgNSAwIDAgMCA3LjU0LjU0bDMtM2E1IDUgMCAwIDAtNy4wNy03LjA3bC0xLjcyIDEuNzEnLFxuICAgICAgJ00xNCAxMWE1IDUgMCAwIDAtNy41NC0uNTRsLTMgM2E1IDUgMCAwIDAgNy4wNyA3LjA3bDEuNzEtMS43MSdcbiAgICBdXG4gIH0sXG4gICd1c2VyJzoge1xuICAgIHBhdGhzOiBbJ00yMCAyMXYtMmE0IDQgMCAwIDAtNC00SDhhNCA0IDAgMCAwLTQgNHYyJ10sXG4gICAgY2lyY2xlczogW3sgY3g6IDEyLCBjeTogNywgcjogNCB9XVxuICB9LFxuICAnc2xpZGVycyc6IHtcbiAgICBsaW5lczogW1xuICAgICAgeyB4MTogNCwgeTE6IDIxLCB4MjogNCwgeTI6IDE0IH0sXG4gICAgICB7IHgxOiA0LCB5MTogMTAsIHgyOiA0LCB5MjogMyB9LFxuICAgICAgeyB4MTogMTIsIHkxOiAyMSwgeDI6IDEyLCB5MjogMTIgfSxcbiAgICAgIHsgeDE6IDEyLCB5MTogOCwgeDI6IDEyLCB5MjogMyB9LFxuICAgICAgeyB4MTogMjAsIHkxOiAyMSwgeDI6IDIwLCB5MjogMTYgfSxcbiAgICAgIHsgeDE6IDIwLCB5MTogMTIsIHgyOiAyMCwgeTI6IDMgfSxcbiAgICAgIHsgeDE6IDEsIHkxOiAxNCwgeDI6IDcsIHkyOiAxNCB9LFxuICAgICAgeyB4MTogOSwgeTE6IDgsIHgyOiAxNSwgeTI6IDggfSxcbiAgICAgIHsgeDE6IDE3LCB5MTogMTYsIHgyOiAyMywgeTI6IDE2IH1cbiAgICBdXG4gIH0sXG4gICdzcGFya2xlcyc6IHtcbiAgICBwYXRoczogW1xuICAgICAgJ00xMiAzdjNtMCAxMnYzTTMgMTJoM20xMiAwaDNNNS42IDUuNmwyLjEgMi4xbTguNiA4LjZsMi4xIDIuMU01LjYgMTguNGwyLjEtMi4xbTguNi04LjZsMi4xLTIuMSdcbiAgICBdXG4gIH1cbn07XG4iXX0=
|
|
@@ -0,0 +1,10 @@
|
|
|
1
|
+
export { RptInputComponent } from './input/rpt-input.component';
|
|
2
|
+
export { RptDropdownComponent } from './dropdown/rpt-dropdown.component';
|
|
3
|
+
export { RptDateComponent } from './date/rpt-date.component';
|
|
4
|
+
export { RptNumberComponent } from './number/rpt-number.component';
|
|
5
|
+
export { RptCheckboxComponent } from './checkbox/rpt-checkbox.component';
|
|
6
|
+
export { RptButtonComponent } from './button/rpt-button.component';
|
|
7
|
+
export { RptKpiCardComponent } from './kpi-card/rpt-kpi-card.component';
|
|
8
|
+
export { ReportChartBridgeComponent } from './chart-bridge/report-chart-bridge.component';
|
|
9
|
+
export { RptIconComponent } from './icon/rpt-icon.component';
|
|
10
|
+
//# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoiaW5kZXguanMiLCJzb3VyY2VSb290IjoiIiwic291cmNlcyI6WyIuLi8uLi8uLi8uLi8uLi8uLi9wcm9qZWN0cy9id2F5cy1yZXBvcnQvc3JjL2xpYi9wcmltaXRpdmVzL2NvbXBvbmVudHMvaW5kZXgudHMiXSwibmFtZXMiOltdLCJtYXBwaW5ncyI6IkFBQUEsT0FBTyxFQUFFLGlCQUFpQixFQUFFLE1BQU0sNkJBQTZCLENBQUM7QUFDaEUsT0FBTyxFQUFFLG9CQUFvQixFQUFFLE1BQU0sbUNBQW1DLENBQUM7QUFFekUsT0FBTyxFQUFFLGdCQUFnQixFQUFFLE1BQU0sMkJBQTJCLENBQUM7QUFDN0QsT0FBTyxFQUFFLGtCQUFrQixFQUFFLE1BQU0sK0JBQStCLENBQUM7QUFDbkUsT0FBTyxFQUFFLG9CQUFvQixFQUFFLE1BQU0sbUNBQW1DLENBQUM7QUFDekUsT0FBTyxFQUFFLGtCQUFrQixFQUFFLE1BQU0sK0JBQStCLENBQUM7QUFDbkUsT0FBTyxFQUFFLG1CQUFtQixFQUFFLE1BQU0sbUNBQW1DLENBQUM7QUFFeEUsT0FBTyxFQUFFLDBCQUEwQixFQUFFLE1BQU0sOENBQThDLENBQUM7QUFFMUYsT0FBTyxFQUFFLGdCQUFnQixFQUFFLE1BQU0sMkJBQTJCLENBQUMiLCJzb3VyY2VzQ29udGVudCI6WyJleHBvcnQgeyBScHRJbnB1dENvbXBvbmVudCB9IGZyb20gJy4vaW5wdXQvcnB0LWlucHV0LmNvbXBvbmVudCc7XG5leHBvcnQgeyBScHREcm9wZG93bkNvbXBvbmVudCB9IGZyb20gJy4vZHJvcGRvd24vcnB0LWRyb3Bkb3duLmNvbXBvbmVudCc7XG5leHBvcnQgdHlwZSB7IERyb3Bkb3duT3B0aW9uIH0gZnJvbSAnLi9kcm9wZG93bi9ycHQtZHJvcGRvd24uY29tcG9uZW50JztcbmV4cG9ydCB7IFJwdERhdGVDb21wb25lbnQgfSBmcm9tICcuL2RhdGUvcnB0LWRhdGUuY29tcG9uZW50JztcbmV4cG9ydCB7IFJwdE51bWJlckNvbXBvbmVudCB9IGZyb20gJy4vbnVtYmVyL3JwdC1udW1iZXIuY29tcG9uZW50JztcbmV4cG9ydCB7IFJwdENoZWNrYm94Q29tcG9uZW50IH0gZnJvbSAnLi9jaGVja2JveC9ycHQtY2hlY2tib3guY29tcG9uZW50JztcbmV4cG9ydCB7IFJwdEJ1dHRvbkNvbXBvbmVudCB9IGZyb20gJy4vYnV0dG9uL3JwdC1idXR0b24uY29tcG9uZW50JztcbmV4cG9ydCB7IFJwdEtwaUNhcmRDb21wb25lbnQgfSBmcm9tICcuL2twaS1jYXJkL3JwdC1rcGktY2FyZC5jb21wb25lbnQnO1xuZXhwb3J0IHR5cGUgeyBLcGlUaGVtZSwgVHJlbmREaXJlY3Rpb24gfSBmcm9tICcuL2twaS1jYXJkL3JwdC1rcGktY2FyZC5jb21wb25lbnQnO1xuZXhwb3J0IHsgUmVwb3J0Q2hhcnRCcmlkZ2VDb21wb25lbnQgfSBmcm9tICcuL2NoYXJ0LWJyaWRnZS9yZXBvcnQtY2hhcnQtYnJpZGdlLmNvbXBvbmVudCc7XG5leHBvcnQgdHlwZSB7IENoYXJ0RGF0YUl0ZW0sIENoYXJ0VHlwZSB9IGZyb20gJy4vY2hhcnQtYnJpZGdlL3JlcG9ydC1jaGFydC1icmlkZ2UuY29tcG9uZW50JztcbmV4cG9ydCB7IFJwdEljb25Db21wb25lbnQgfSBmcm9tICcuL2ljb24vcnB0LWljb24uY29tcG9uZW50JztcblxuXG4iXX0=
|